@charset "UTF-8";
/*


   Magic 360 v4.6.8 
   Copyright 2017 Magic Toolbox
   Buy a license: https://www.magictoolbox.com/magic360/
   License agreement: https://www.magictoolbox.com/license/


*/
@font-face {
  font-family: 'magic360';
  font-weight: normal;
  font-style: normal;
  src: url("../magic-toolbox-fonts/magic360.eot?#iefix") format("embedded-opentype");
}

@font-face {
  font-family: 'magic360';
  src: url("data:application/octet-stream;base64,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") format("woff"), url("data:application/octet-stream;base64,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") format("truetype");
}

/* Core */
.Magic360,
.Magic360-container {
  border: 1px solid #f3f3f3;
  -webkit-box-sizing: content-box !important;
          box-sizing: content-box !important;
}

.Magic360-container .Magic360,
.Magic360-fullscreen .Magic360 {
  border: 0 !important;
}

.Magic360 {
  padding: 0 !important;
  outline: 0 !important;
  display: inline-block;
  font-size: 0 !important;
  line-height: 100% !important;
  max-width: 100%;
}

.Magic360-container {
  text-align: center !important;
  max-width: 100%;
  position: relative;
  z-index: 1;
}

.Magic360-container .Magic360 {
  display: inline-block !important;
  vertical-align: middle;
  -ms-touch-action: none;
      touch-action: none;
}

.Magic360-container .Magic360.m360-spin-x {
  -ms-touch-action: pan-y;
      touch-action: pan-y;
}

.Magic360-container .Magic360.m360-spin-y {
  -ms-touch-action: pan-x;
      touch-action: pan-x;
}

.Magic360.desktop.zoom-in {
  cursor: pointer;
  cursor: -webkit-zoom-in;
  cursor: zoom-in;
}

.Magic360 img {
  border: 0 !important;
  padding: 0 !important;
  margin: 0 !important;
  height: auto;
}

.Magic360 > img {
  width: 100%;
}

/* Fullscreen icons */
button.m360-icon {
  color: #b4b4b4 !important;
  font: normal 900 30px/1 'magic360' !important;
  cursor: pointer;
  z-index: 1000000 !important;
  background-color: transparent !important;
  border: 1px solid rgba(180, 180, 180, 0) !important;
  border-radius: 0 !important;
  -webkit-box-shadow: none !important;
          box-shadow: none !important;
  position: absolute !important;
  text-transform: none !important;
  text-align: center;
  speak: none;
  width: 44px !important;
  height: 44px !important;
  min-width: 0 !important;
  min-height: 0 !important;
  max-width: none !important;
  max-height: none !important;
  margin: 0 !important;
  padding: 0 !important;
  outline: 0 !important;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
}

button.m360-icon:hover,
.mobile-magic button.m360-icon:active {
  color: #555 !important;
  color: rgba(49, 51, 61, 0.76) !important;
}

button.m360-icon:before {
  display: inline !important;
  position: static !important;
  color: inherit !important;
  font: inherit !important;
  -webkit-font-smoothing: inherit !important;
  -moz-osx-font-smoothing: inherit !important;
}

button.m360-icon.m360-icon-fullscreen-open,
button.m360-icon.m360-icon-fullscreen-close {
  top: 0 !important;
  right: 0 !important;
}

button.m360-icon.m360-icon-fullscreen-close {
  width: 60px !important;
  height: 60px !important;
}

button.m360-icon.m360-icon-fullscreen-open:before {
  content: '\e800';
}

button.m360-icon.m360-icon-fullscreen-close:before {
  content: '\e801';
}

.lt-ie9-magic button.m360-icon {
  border: 0;
  filter: alpha(opacity=75);
}

.lt-ie9-magic button.m360-icon:hover {
  filter: alpha(opacity=100);
}

.Magic360-fullscreen:-webkit-full-screen {
  touch-action: none;
}

.lt-ie7-magic .Magic360-container .Magic360 {
  width: auto !important;
}

.Magic360-fullscreen {
  background: #fff;
  z-index: 2147483640 !important;
}

.Magic360-fullscreen:-webkit-full-screen {
  width: 100% !important;
  height: 100% !important;
  top: 0 !important;
  left: 0 !important;
  -webkit-backface-visibility: hidden !important;
  backface-visibility: hidden !important;
}

.Magic360-fullscreen:-ms-fullscreen {
  width: 100% !important;
  height: 100% !important;
  top: 0 !important;
  left: 0 !important;
}

.Magic360-fullscreen:before {
  content: '';
  display: inline-block;
  height: 100%;
  vertical-align: middle;
}

.Magic360-fullscreen .Magic360 {
  display: inline-block !important;
  vertical-align: middle;
}

.Magic360-message {
  background-color: #FFFFFF;
  background-image: none;
  border: 1px solid #AAAAAA;
  display: block;
  font-size: 10px;
  color: #000;
  overflow: hidden;
  padding: 6px;
  position: absolute;
  text-align: center;
  top: 50%;
  width: 33%;
  left: 33%;
  z-index: 100;
  -webkit-box-shadow: 0 0 10px #000;
          box-shadow: 0 0 10px #000;
  border-collapse: separate;
  border-radius: 15px;
}

.Magic360-fullscreen .Magic360-message {
  font-size: 18px;
  background-color: #31333D;
  background-color: rgba(49, 51, 61, 0.76);
  border-color: #ccc;
  color: #fff;
  top: 15px;
}

/**
 * Hint & Loader
 */
.m360-hint-message,
.m360-loader {
  background: rgba(49, 51, 61, 0.76);
  color: #fff;
  font: normal 14px/1.2em 'Lucida Grande', 'Lucida Sans Unicode', Verdana, 'Helvetica Neue', Arial, Helvetica, sans-serif;
  text-decoration: none;
}

.m360-hint,
.m360-loader {
  direction: ltr;
  text-align: center;
  display: inline-block;
  margin: 0;
  position: absolute;
  z-index: 1000;
  pointer-events: none;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
  -webkit-transition: opacity 0.25s ease;
  transition: opacity 0.25s ease;
}

.m360-hint {
  bottom: 8px;
  left: 0;
  right: 0;
  padding: 0 10%;
  -webkit-transition: opacity 0.25s ease, z-index 0.25s ease;
  transition: opacity 0.25s ease, z-index 0.25s ease;
}

.m360-hint-message {
  display: inline-block;
  border-radius: 2em;
  padding: .3em 1.5em;
  font-size: 14px;
  line-height: 1.5;
}

.m360-hint-message:before {
  content: '';
  background-image: url("data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAHgAAAAqCAYAAAB4Ip8uAAAAGXRFWHRTb2Z0d2FyZQBBZG9iZSBJbWFnZVJlYWR5ccllPAAAA2RpVFh0WE1MOmNvbS5hZG9iZS54bXAAAAAAADw/eHBhY2tldCBiZWdpbj0i77u/IiBpZD0iVzVNME1wQ2VoaUh6cmVTek5UY3prYzlkIj8+IDx4OnhtcG1ldGEgeG1sbnM6eD0iYWRvYmU6bnM6bWV0YS8iIHg6eG1wdGs9IkFkb2JlIFhNUCBDb3JlIDUuMC1jMDYwIDYxLjEzNDc3NywgMjAxMC8wMi8xMi0xNzozMjowMCAgICAgICAgIj4gPHJkZjpSREYgeG1sbnM6cmRmPSJodHRwOi8vd3d3LnczLm9yZy8xOTk5LzAyLzIyLXJkZi1zeW50YXgtbnMjIj4gPHJkZjpEZXNjcmlwdGlvbiByZGY6YWJvdXQ9IiIgeG1sbnM6eG1wTU09Imh0dHA6Ly9ucy5hZG9iZS5jb20veGFwLzEuMC9tbS8iIHhtbG5zOnN0UmVmPSJodHRwOi8vbnMuYWRvYmUuY29tL3hhcC8xLjAvc1R5cGUvUmVzb3VyY2VSZWYjIiB4bWxuczp4bXA9Imh0dHA6Ly9ucy5hZG9iZS5jb20veGFwLzEuMC8iIHhtcE1NOk9yaWdpbmFsRG9jdW1lbnRJRD0ieG1wLmRpZDpGOTA1M0E3QjA4QzdFMzExOTUxQjhCNzcwMDhDQjMwOCIgeG1wTU06RG9jdW1lbnRJRD0ieG1wLmRpZDoxQjhDODMzNkM3MEIxMUUzQkMzNEJCQzI2OUFGMUNCQSIgeG1wTU06SW5zdGFuY2VJRD0ieG1wLmlpZDoxQjhDODMzNUM3MEIxMUUzQkMzNEJCQzI2OUFGMUNCQSIgeG1wOkNyZWF0b3JUb29sPSJBZG9iZSBQaG90b3Nob3AgQ1M1IFdpbmRvd3MiPiA8eG1wTU06RGVyaXZlZEZyb20gc3RSZWY6aW5zdGFuY2VJRD0ieG1wLmlpZDpGQTA1M0E3QjA4QzdFMzExOTUxQjhCNzcwMDhDQjMwOCIgc3RSZWY6ZG9jdW1lbnRJRD0ieG1wLmRpZDpGOTA1M0E3QjA4QzdFMzExOTUxQjhCNzcwMDhDQjMwOCIvPiA8L3JkZjpEZXNjcmlwdGlvbj4gPC9yZGY6UkRGPiA8L3g6eG1wbWV0YT4gPD94cGFja2V0IGVuZD0iciI/Pq6mNcIAAAqiSURBVHja7Fx9aFXnGb/nfn/kfie2SqqpC9ugq/YDnGWF2nasmj8qOP9whemGoxQHlox2KOyv+rEwkO4TJmMQKaTUBqltsOoigRBaWUiNdjFzmdFYjSR3JkZjkpuPe/f8Tp9X3p6ec+8599wbt5v7wsv9ft/nPN/P73nPVbLZrKMyyne4zX5RUZSSEVHuSlYq3pnhm7Oi4xULNq2oWgWrsNcS7xQN77L/KwJW2BO4aHr49RzNeZqZiqDz8k7wTfAOfJulucD8szWcRRKun2bVyZMnH+vr63uxvr4+gtesQEpFjjmFG9i2bVv8+vXrr4yNjb0JHjLvPEUJoQjUZqbBAIEhInDF1NTUsSyP+fn5wba2tqfps6gZIZul4f915uBd+PDhw9+em5vrE7zLZDLTly9ffoU+i9P05uKdqb1tEKkwAfHJycl3INfZ2dleekyD0IWFhau7du16BAqQTxOXoIDBOx94NzMz00m8+oJ42EyGMcBCniRLXgcFYEV4IAJWNbC/v38LEZRqb29/hl5X45EIHgGhd+7c+TO9lyiGJpaZgOHVIlevXt1J1vvPffv2fYNe18AgyEh6wDsS/Cl6L8mKoBQsYBvxwys0cGho6FUWJGJv9ZUrV34i3M2hQ4e+yZpYUDwuQwEL602QcC+cO3eugd0xPF2is7PzOXhD8K+jo+NZ5p1zsQWMDUOwVmggC9fPQgRB1SKupFKpt6CdLHyPVSGXoYDBu6qzZ88+T9b6d4l3Ln5MTk9Pt7EH/At/7llsAasuBsIbHR3dKyVTID6MBAvEiViM+MKCrio3cKUAJoNPsYmJibdv3rz5Biu+Wwp7MSRZzLsv2E379QyjlAJW3TPiRUtLyxp6HmTBOdltn8pqBpUBr+VyN0tIwIJ3vRreCfetViUIb5Kb1jWMUglYdc+bN29GQvBvev4QC87PM06p/+NE4ISc+nNGHVyEulgLvHh5+jRTvO/h7zpLlSNoaEPdu4JDW1wnicLrJNw3eMdWHtPLposlYBlt8XEy8NDx48dfHh8f/4ie17GQ4xwvltFcQRb7CyHge/futXIcDvI6bl5TKZJAZfoCrPERZkyMadOb4nMBzAR4DdP0WWSyahw9PT0vTU1NHee9vZolcR0JVCDgHUpQozhsZm+3SUvwiix49+7diYaGhu+uWbNmq6Ioj1y7du0PyWRypcfjUa+E4sZsY2PjT2tra1tIC7fQ+98jYbfymn5mYFYHksvasNT79O3Zsye6Y8eOp6LR6KpIJPIdp9MZd7vdq/UWACBD3mWcmPkPiolDR44c+aypqWmiSPQZ0rx8+fJvURj7nNfM6GD4GRLspXA47PB6vY/qYNW2sGiZcWp2d/78+Wfr6uo2hkKhTSRA/8jISK/P5wsTEf/q6uo6QgTPBAKBzPr163tB4N69e2HF6dOnT7++adOmDzZu3NiBdcmSD9PvnqbHNqoB/7Z27douZuCMBUbmpI+Uzp9Op7uJtm4IjhSwV/yQ6XNQBvuEeG/lypVPkAKEVq1atePAgQN/3L9//4xN+vLS7vf7aylTHjJoKmCPDBSO+OpwuVy1Bs2cgglwsxuOd3d3fx+JFEqeGzdu/JyTArjjulu3br1/5syZH9Hzh9nFhdg6PVLsCzNkKT6PYQ2shTWxNvaQ6sB8tbIZ+hK8XlRyvVX8G5EnhKT3I/xdNcRYpc+iiwZfYqR8LX19fZsNkiesX4USVCC/9fX1NUy37Rislj/ARylGvA/obHBw8MfMtChfJBKqZaSBZ44dO/YME+nScSOK5D5dUpwMMFMTWBvJBvbCnpqSwbA8y0OfT3LZLim7VzTTKXkCt5SIhazQZ5HJ2CNGvPuYs+OggYCDAIhEDkNhp475ZkvAcoZ3ATUYo1BxCcRwCgyVtPtTtpiABfchGOsWGTf2wF7YE3vnWM8sfYpNlMkSfQUIGGVkO3u2kMG1BiBUIeDm5ubH9L5r9fpwYZHh4eHdnL29x5lvlSajvA+zMYP9BcQHYd1YuwZ7YU/szVbiNCjPctJXxE6PafoKEXAe41DYshNCwK2trU8WKuCvuQckHKoKBQIbyC0lNS5PuDpQ7UqlUrMGBAq359apL4WVqGUN9sBeqv/9cu+cMTgXfZRgOZU8B6CUL4eLJr5fbPqKVfK5Ke66dBTcMkjk1KTncydOnPiQJP8fKi+W7dy588TQ0NAPWaPCrEUqQEDlxV0iIq4T35wbNmyooVnNFhCUwATBPLwXxNrYA3thT+zNp0H0TMssfT4SnJcF6BJCF6OE9JkexLt7VMLpNfRBW3VnZ+eTW7duDYk3KaGdlg4AKHa0R8VJ0eFAC1Bq4A8AUeG4sZzm6rt3735y8ODB5zRZNBgTQfzA78fHxw9xcpJgAYhEJi56n4x0pbirEsuRSZulLyll0nGmLVwq+gpMstrQNdJJsrB2HImdDPMCFaTS9JdMY6F7f6UNGEN8RTovGvhiEHEpqi3bUYj39/f/7ujRow1E7AscJ8CoBJ5LP0kjhnG5ERNtMemzFo7lsXx9YzP0QRjIUtHcAP6Nrg1mqegrsEx6B310nTIJXiQKYWquaZJ7xn67AhZM9LC2JJDBgVnI/IApU4KQvX37NgSdJStGSwsWlDUzqHj/PZczMazJ2aGwHrOtxJz0ZW2MQuizyGRYaHRsbOzXqLXZu7i0UCZwexnL505cQkuDHSxarmFDrL1JFNyk6VsuXrz4W3JvF4ghw6Rtn6fT6ZFcjAMkyPVqXIIrBfbrLQCXNqQPAAIx8DewPHRsMMUJk1LQZ5HJ6ikYCBc0Sm1WrRtPyO1WissP69XMxWg2yHWhly8YTKilQv1no6Oj79LzRxndSsgTMQxaSN/5FRMYY8a5dEAHu50jmb6o1PgwnMWir5BmA8IB4rBBs0E9EIB8ArrHp2ViegBQKdqFwnLCTU1Nj5PlfsZJVlQDA+IY6OuNjY2rpVrV4yhBiaG5GFngHilp8mvpQ03LCFHCJExarHahHwoFr2HQLhR5hurKJcVb1Ia/yDQHOfjLBbtAu8C4ap7BUjX6CwA2ZDzb77B5/thGw7+Hs/4qTcNf8C/IhuNzGJysLAToMF3KYX1KbDq2b9/+ooT7fqVLNTAw8BK5ouZSWS8DF5Ym17DoDE2h48V1bcaxeEPlHfGlc926dT+Q8HJhHAEWrpwxL/rdISqMh1Sfj3cKV3PfegHQM6T4V6MTCUv0yI4KpKDZgI6V4+uH7hI4qcpZ/ds5oNuSH5v1IWtFlifdxQDNi4sEAURyQV92h+1sMFmR3fSlS5e2SaVYEoCKyO758HvIVgZv9/A2inIitIs7LTV4xGs+vN3BxPsclYPvWg8YgXBRwjEIUwNUTSBofKQn500DpRawU2SEojmOglyczAcKxHc7RPK556V86wru6aJybQzom4Bf8cgQ6gO9dUVYcZhvVxmW4T9GavLeQLVEBSysOIRSDZ7OAPf2OB7gzWcybBiFxqFuo8TgT9IxF5+Z2LtEBSzKtTByGSSsADUs4PKm9lZMn501brPKsKFAZcSJxHkzJcgS/o8OLTAj3zy/kK88MgVFFkHADh1YL+uw8DcElT9huc83pdh8K9Z/dBTtPyWW6MiWCtCo/MtOmQ8lW/kjtLIe/xVgAOSDS20/pMFNAAAAAElFTkSuQmCC");
  background-image: -webkit-image-set(url("data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAHgAAAAqCAYAAAB4Ip8uAAAAGXRFWHRTb2Z0d2FyZQBBZG9iZSBJbWFnZVJlYWR5ccllPAAAA2RpVFh0WE1MOmNvbS5hZG9iZS54bXAAAAAAADw/eHBhY2tldCBiZWdpbj0i77u/IiBpZD0iVzVNME1wQ2VoaUh6cmVTek5UY3prYzlkIj8+IDx4OnhtcG1ldGEgeG1sbnM6eD0iYWRvYmU6bnM6bWV0YS8iIHg6eG1wdGs9IkFkb2JlIFhNUCBDb3JlIDUuMC1jMDYwIDYxLjEzNDc3NywgMjAxMC8wMi8xMi0xNzozMjowMCAgICAgICAgIj4gPHJkZjpSREYgeG1sbnM6cmRmPSJodHRwOi8vd3d3LnczLm9yZy8xOTk5LzAyLzIyLXJkZi1zeW50YXgtbnMjIj4gPHJkZjpEZXNjcmlwdGlvbiByZGY6YWJvdXQ9IiIgeG1sbnM6eG1wTU09Imh0dHA6Ly9ucy5hZG9iZS5jb20veGFwLzEuMC9tbS8iIHhtbG5zOnN0UmVmPSJodHRwOi8vbnMuYWRvYmUuY29tL3hhcC8xLjAvc1R5cGUvUmVzb3VyY2VSZWYjIiB4bWxuczp4bXA9Imh0dHA6Ly9ucy5hZG9iZS5jb20veGFwLzEuMC8iIHhtcE1NOk9yaWdpbmFsRG9jdW1lbnRJRD0ieG1wLmRpZDpGOTA1M0E3QjA4QzdFMzExOTUxQjhCNzcwMDhDQjMwOCIgeG1wTU06RG9jdW1lbnRJRD0ieG1wLmRpZDoxQjhDODMzNkM3MEIxMUUzQkMzNEJCQzI2OUFGMUNCQSIgeG1wTU06SW5zdGFuY2VJRD0ieG1wLmlpZDoxQjhDODMzNUM3MEIxMUUzQkMzNEJCQzI2OUFGMUNCQSIgeG1wOkNyZWF0b3JUb29sPSJBZG9iZSBQaG90b3Nob3AgQ1M1IFdpbmRvd3MiPiA8eG1wTU06RGVyaXZlZEZyb20gc3RSZWY6aW5zdGFuY2VJRD0ieG1wLmlpZDpGQTA1M0E3QjA4QzdFMzExOTUxQjhCNzcwMDhDQjMwOCIgc3RSZWY6ZG9jdW1lbnRJRD0ieG1wLmRpZDpGOTA1M0E3QjA4QzdFMzExOTUxQjhCNzcwMDhDQjMwOCIvPiA8L3JkZjpEZXNjcmlwdGlv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") 1x, url("data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAPAAAABUCAYAAAC82LpqAAAAGXRFWHRTb2Z0d2FyZQBBZG9iZSBJbWFnZVJlYWR5ccllPAAAA2RpVFh0WE1MOmNvbS5hZG9iZS54bXAAAAAAADw/eHBhY2tldCBiZWdpbj0i77u/IiBpZD0iVzVNME1wQ2VoaUh6cmVTek5UY3prYzlkIj8+IDx4OnhtcG1ldGEgeG1sbnM6eD0iYWRvYmU6bnM6bWV0YS8iIHg6eG1wdGs9IkFkb2JlIFhNUCBDb3JlIDUuMC1jMDYwIDYxLjEzNDc3NywgMjAxMC8wMi8xMi0xNzozMjowMCAgICAgICAgIj4gPHJkZjpSREYgeG1sbnM6cmRmPSJodHRwOi8vd3d3LnczLm9yZy8xOTk5LzAyLzIyLXJkZi1zeW50YXgtbnMjIj4gPHJkZjpEZXNjcmlwdGlvbiByZGY6YWJvdXQ9IiIgeG1sbnM6eG1wTU09Imh0dHA6Ly9ucy5hZG9iZS5jb20veGFwLzEuMC9tbS8iIHhtbG5zOnN0UmVmPSJodHRwOi8vbnMuYWRvYmUuY29tL3hhcC8xLjAvc1R5cGUvUmVzb3VyY2VSZWYjIiB4bWxuczp4bXA9Imh0dHA6Ly9ucy5hZG9iZS5jb20veGFwLzEuMC8iIHhtcE1NOk9yaWdpbmFsRG9jdW1lbnRJRD0ieG1wLmRpZDpGOTA1M0E3QjA4QzdFMzExOTUxQjhCNzcwMDhDQjMwOCIgeG1wTU06RG9jdW1lbnRJRD0ieG1wLmRpZDoxNTQ2NDdEMUM3MEIxMUUzQjI2QkI2NTZEOUZDMjc2OSIgeG1wTU06SW5zdGFuY2VJRD0ieG1wLmlpZDoxNTQ2NDdEMEM3MEIxMUUzQjI2QkI2NTZEOUZDMjc2OSIgeG1wOkNyZWF0b3JUb29sPSJBZG9iZSBQaG90b3Nob3AgQ1M1IFdpbmRvd3MiPiA8eG1wTU06RGVyaXZlZEZyb20gc3RSZWY6aW5zdGFuY2VJRD0ieG1wLmlpZDpGQTA1M0E3QjA4QzdFMzExOTUxQjhCNzcwMDhDQjMwOCIgc3RSZWY6ZG9jdW1lbnRJRD0ieG1wLmRpZDpGOTA1M0E3QjA4QzdFMzExOTUxQjhCNzcwMDhDQjMwOCIvPiA8L3JkZjpEZXNjcmlwdGlv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") 2x);
  width: 40px;
  height: 42px;
  display: inline-block;
  speak: none;
  text-align: center;
  vertical-align: middle;
  margin-right: 4px;
  -webkit-transition: opacity 0.25s ease;
  transition: opacity 0.25s ease;
}

.m360-spin-x .m360-hint-message:before {
  background-position: -40px;
}

.m360-spin-y .m360-hint-message:before {
  background-position: -80px;
}

.m360-loader {
  border-radius: 100%;
  font-size: 0;
  opacity: 0;
  padding: 0;
  width: 50px;
  height: 50px;
  left: 8px;
  bottom: 8px;
}

.m360-loader:after {
  content: attr(data-progress);
  font-size: 12px;
  line-height: 1;
  display: block;
  position: relative;
  top: 50%;
  -webkit-transform: translateY(-50%);
  transform: translateY(-50%);
}

.m360-loader:before {
  content: '';
  position: absolute;
  top: 0;
  bottom: 0;
  left: 0;
  right: 0;
  width: 44px;
  height: 44px;
  margin: auto;
  text-indent: -9999em;
  border-radius: 50%;
  border: 2px solid white;
  border-top-color: transparent;
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
}

.m360-loader.shown {
  opacity: 1;
  z-index: 1000;
  -webkit-transition: opacity 0s;
  transition: opacity 0s;
}

.m360-loader.shown:before {
  -webkit-animation: spin-loading 2s infinite linear;
  animation: spin-loading 2s infinite linear;
}

@-webkit-keyframes spin-loading {
  0% {
    -webkit-transform: rotate(0deg);
    transform: rotate(0deg);
  }
  100% {
    -webkit-transform: rotate(359deg);
    transform: rotate(359deg);
  }
}

@keyframes spin-loading {
  0% {
    -webkit-transform: rotate(0deg);
    transform: rotate(0deg);
  }
  100% {
    -webkit-transform: rotate(359deg);
    transform: rotate(359deg);
  }
}

.lt-ie10-magic .m360-loader {
  border-radius: 2em;
  font-size: 14px;
  padding: .8em 1.2em;
  width: auto;
  height: auto;
}

.lt-ie10-magic .m360-loader:before {
  display: none;
}

.lt-ie10-magic .m360-loader:after {
  content: "Loading...   " attr(data-progress);
  text-align: center;
}

.lt-ie9-magic .m360-hint-message,
.lt-ie9-magic .m360-loader.shown {
  background: transparent !important;
  filter: progid:DXImageTransform.Microsoft.gradient(GradientType=0,StartColorStr='#7c31333D', EndColorStr='#7c31333D');
}

.lt-ie9-magic .m360-hint-hidden {
  filter: alpha(opacity=0);
}

.lt-ie9-magic .m360-loader {
  filter: alpha(opacity=0);
  right: 0;
  left: 0;
  width: 96px;
  margin: auto;
}

.lt-ie9-magic .Magic360-fullscreen .m360-loader {
  left: 8px;
  right: auto;
}

/* Magnifier */
.Magic360-container .m360-magnifier,
.Magic360-fullscreen .m360-magnifier {
  -webkit-box-shadow: 0 0 10px #ccc;
          box-shadow: 0 0 10px #ccc;
  border-collapse: separate;
  background-color: #fff;
  cursor: none;
  overflow: hidden;
  -webkit-mask-image: -webkit-radial-gradient(circle, white, black);
}

.lt-ie9-magic .m360-magnifier {
  border: 3px ridge #e7e7e7;
}

.lt-ie9-magic .m360-magnifier.m360-magnifier-inner {
  border: none !important;
}

.Magic360-container.desktop .m360-magnifier.m360-magnifier-inner,
.Magic360-fullscreen.desktop .m360-magnifier.m360-magnifier-inner {
  cursor: pointer;
  cursor: -webkit-zoom-out;
  cursor: zoom-out;
  -webkit-box-shadow: none;
          box-shadow: none;
}

.m360-magnifier img {
  position: absolute !important;
  max-width: none !important;
  max-height: none !important;
  min-width: 0 !important;
  min-height: 0 !important;
  border: 0 !important;
  padding: 0 !important;
  margin: 0 !important;
  outline: 0 !important;
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  -webkit-user-select: none;
  -moz-user-select: none;
  -ms-user-select: none;
  user-select: none;
  -webkit-touch-callout: none;
  -webkit-tap-highlight-color: transparent;
}

.m360-magnifier-loader-holder {
  background-color: transparent;
  cursor: default;
  position: absolute;
  top: 0;
  z-index: 1;
  width: 100%;
  height: 100%;
}

.ie9-magic .m360-magnifier-loader-holder,
.lt-ie9-magic .m360-magnifier-loader-holder {
  filter: alpha(opacity=60);
}

.m360-magnifier-loader-holder .m360-loader {
  opacity: 1;
  top: 0;
  bottom: 0;
  left: 0;
  right: 0;
  margin: auto;
  -webkit-transform: scale(0.8);
  transform: scale(0.8);
}

.m360-magnifier-loader-holder .m360-loader:before {
  -webkit-animation: spin-loading 2s infinite linear;
  animation: spin-loading 2s infinite linear;
}

/*


   Magic Scroll v2.0.29 
   Copyright 2017 Magic Toolbox
   Buy a license: https://www.magictoolbox.com/magicscroll/
   License agreement: https://www.magictoolbox.com/license/


*/
.MagicScroll,
.mcs-caption,
.mcs-button,
.mcs-item,
.mcs-item img,
.mcs-item > *,
.mcs-bullet,
.mcs-bullet:before,
.mcs-bullet:after,
.mcs-wrapper,
.mcs-items-container {
  margin: 0;
  padding: 0;
  outline: 0;
  -webkit-box-sizing: border-box;
  box-sizing: border-box;
}

.MagicScroll,
.mcs-item,
.mcs-item a,
.mcs-item img,
.mcs-items-container {
  position: relative;
}

.MagicScroll,
.mcs-item,
.mcs-wrapper,
.mcs-items-container {
  overflow: hidden;
  direction: ltr;
}

.mcs-wrapper,
.mcs-item img {
  line-height: 100%;
}

.MagicScroll {
  z-index: 1;
  cursor: -webkit-grab;
  cursor: -o-grab;
  cursor: -ms-grab;
  cursor: grab;
  -moz-user-select: none;
  -webkit-user-select: none;
  -webkit-touch-callout: none;
  -webkit-tap-highlight-color: transparent;
}

.MagicScroll.MagicScroll-horizontal {
  -moz-touch-action: pan-y;
  -ms-touch-action: pan-y;
  touch-action: pan-y;
}

.MagicScroll.MagicScroll-vertical {
  -moz-touch-action: pan-x;
  -ms-touch-action: pan-x;
  touch-action: pan-x;
}

body.mcs-dragging {
  cursor: move;
  cursor: -webkit-grabbing;
  cursor: -o-grabbing;
  cursor: -ms-grabbing;
  cursor: grabbing;
}

body.mcs-dragging .MagicScroll,
body.mcs-dragging button.mcs-button.mcs-horizontal.mcs-button-arrow {
  cursor: inherit;
}

.mcs-item,
.MagicScroll figure,
.mcs-item .mcs-caption {
  display: inline-block;
}

.mcs-item img {
  display: inline-block !important;
}

.MagicScroll > * {
  display: inline-block;
  max-width: 100%;
}

.MagicScroll > *:first-child {
  visibility: hidden;
}

.MagicScroll > *:nth-child(n+2) {
  display: none;
}

.MagicScroll > a {
  line-height: 100%;
}

.MagicScroll img {
  visibility: hidden;
}

.MagicScroll .mcs-item img {
  visibility: visible;
  float: none !important;
}

.mcs-button,
.mcs-bullets,
.mcs-wrapper {
  position: absolute;
}

.MagicScroll:before,
.MagicScroll figcaption:before {
  content: '';
  display: inline-block;
  vertical-align: top;
  height: 0;
}

.mcs-wrapper {
  top: 0;
  right: 0;
  bottom: 0;
  left: 0;
  vertical-align: top;
  z-index: 100;
}

.mcs-items-container {
  text-align: center;
  overflow: visible;
  width: 100%;
  height: 100%;
}

.mcs-item {
  top: 0;
  left: 0;
  zoom: 1;
  font-size: 9pt !important;
  line-height: 100%;
  max-width: 100%;
}

.mcs-item:after,
.mcs-item > a:after {
  content: '';
  display: inline-block;
  height: 100%;
  vertical-align: middle;
}

.MagicScroll-horizontal .mcs-item {
  height: 100%;
}

.MagicScroll-vertical .mcs-item {
  display: block;
  width: 100%;
}

.mcs-item > a,
.MagicScroll-horizontal .mcs-items-container > * {
  display: inline-block;
}

.mcs-item a,
.mcs-item img {
  border: none;
  max-width: 100%;
  max-height: 100%;
}

.mcs-item a {
  height: 100%;
}

.mcs-item img {
  width: auto;
  height: auto;
  vertical-align: middle;
}

.MagicScroll figure {
  position: relative;
  vertical-align: middle;
  font-size: 0;
  margin: 0;
  max-width: 100%;
  max-height: 100%;
  line-height: normal;
}

.lt-ie9-magic .mcs-item > a > img {
  position: static;
}

.lt-ie9-magic figcaption {
  display: block;
}

.lt-ie10-magic .mcs-item a img {
  border: none;
}

.ie7-magic .mcs-item img,
.ie7-magic .MagicScroll-vertical .mcs-item a {
  display: inline-block;
}

.ie7-magic .MagicScroll-horizontal .mcs-item {
  display: inline;
}

.mcs-button {
  display: block;
}

.MagicScroll .mcs-hidden {
  display: none !important;
  visibility: hidden !important;
}

.ie11-magic .MagicScroll[data-mode="scroll"] .mcs-items-container,
.MagicScroll[data-mode="carousel"] .mcs-items-container,
.MagicScroll[data-mode="cover-flow"] .mcs-items-container {
  -webkit-perspective: 1000px;
  -o-perspective: 1000px;
  perspective: 1000px;
  -webkit-perspective-origin-x: 50%;
  -webkit-perspective-origin-y: 50%;
}

.MagicScroll[data-mode="carousel"] .mcs-item,
.MagicScroll[data-mode="cover-flow"] .mcs-item {
  -webkit-transform-style: preserve-3d;
  transform-style: preserve-3d;
}

.MagicScroll figcaption {
  display: inline-block;
  position: relative;
  left: 0;
  float: left;
  width: 100%;
  line-height: 100%;
  clear: both;
  z-index: 150;
}

.MagicScroll figcaption,
.MagicScroll[data-mode="carousel"] .mcs-item .mcs-caption,
.MagicScroll[data-mode="cover-flow"] .mcs-item .mcs-caption {
  left: 50%;
  -webkit-transform: translateZ(1px) translateX(-50%);
  transform: translateZ(1px) translateX(-50%);
  -webkit-box-sizing: border-box;
  box-sizing: border-box;
}

.lt-ie9-magic .MagicScroll figcaption,
.lt-ie9-magic .MagicScroll figure img {
  float: right;
}

.MagicScroll .mcs-reflection {
  -webkit-transform: translateZ(-1px);
  position: absolute;
  display: inline-block;
  left: 0px;
  z-index: 1;
}

.MagicScroll .mcs-item.mcs-noimg {
  background: url("data:image/png;base64,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") center center no-repeat;
}

/*
 * Caption
 */
.mcs-item .mcs-caption {
  display: inline-block;
  vertical-align: bottom;
  position: absolute;
  z-index: 150;
}

.MagicScroll[data-mode="cover-flow"] .mcs-item figcaption.mcs-caption,
.MagicScroll[data-mode="carousel"] .mcs-item figcaption.mcs-caption {
  top: 100%;
}

.MagicScroll[data-mode="scroll"] .mcs-item figure,
.MagicScroll[data-mode="animation"] .mcs-item figure {
  overflow: hidden;
}

.MagicScroll[data-mode="scroll"] .mcs-item .mcs-caption,
.MagicScroll[data-mode="animation"] .mcs-item .mcs-caption {
  left: 0;
  width: 100%;
  bottom: 0;
  -webkit-transition: -webkit-transform .25s;
  transition: -webkit-transform .25s;
  transition: transform .25s;
  transition: transform .25s, -webkit-transform .25s;
  -webkit-transform: translateY(150%);
  transform: translateY(150%);
}

.MagicScroll[data-mode="scroll"] .mcs-item:hover .mcs-caption,
.MagicScroll[data-mode="animation"] .mcs-item:hover .mcs-caption {
  -webkit-transform: translateY(0%);
  transform: translateY(0%);
}

.lt-ie9-magic .MagicScroll[data-mode="scroll"] .mcs-item .mcs-caption,
.lt-ie9-magic .MagicScroll[data-mode="animation"] .mcs-item .mcs-caption {
  bottom: -150%;
}

.lt-ie9-magic .MagicScroll[data-mode="scroll"] .mcs-item:hover .mcs-caption,
.lt-ie9-magic .MagicScroll[data-mode="animation"] .mcs-item:hover .mcs-caption {
  bottom: 0%;
}

/**
 * Buttons & Arrows
 */
.mcs-button {
  cursor: pointer;
  z-index: 1000;
  background-repeat: no-repeat;
  background-color: transparent;
  border: 0;
  border-radius: 0;
  -webkit-transition: opacity .25s linear;
  transition: opacity .25s linear;
}

.MagicScroll:hover > .mcs-button:hover {
  opacity: 1;
}

.mcs-button-arrow {
  z-index: 120;
}

.MagicScroll-horizontal .mcs-button-arrow {
  width: 40px;
  height: 100%;
  top: 0;
}

.MagicScroll-vertical .mcs-button-arrow {
  width: 100%;
  height: 40px;
  left: 0;
}

.MagicScroll-horizontal .mcs-button-arrow-prev {
  left: 0;
  right: auto;
  top: 0;
  bottom: 0;
}

.MagicScroll-horizontal .mcs-button-arrow-next {
  left: auto;
  right: 0;
  top: 0;
  bottom: 0;
}

.MagicScroll-vertical .mcs-button-arrow-prev {
  top: 0;
  bottom: auto;
  left: 0;
  right: 0;
}

.MagicScroll-vertical .mcs-button-arrow-next {
  top: auto;
  bottom: 0;
  left: 0;
  right: 0;
}

.MagicScroll[data-mode="carousel"] .mcs-item,
.MagicScroll[data-mode="cover-flow"] .mcs-item {
  overflow: visible;
}

/*
 * Bullets
 */
.mcs-bullets {
  text-align: center;
  display: inline-block !important;
  opacity: 0;
  top: 100%;
}

.mcs-bullets.show {
  opacity: 1.0;
  -webkit-transition: opacity .5s;
  transition: opacity .5s;
}

.MagicScroll-horizontal .mcs-bullets {
  width: 100%;
  left: 0;
}

.MagicScroll-vertical .mcs-bullets {
  top: 0;
  left: 100%;
  display: inline-block;
  vertical-align: middle;
}

.mcs-bullet {
  border-radius: 50%;
  margin: 4px;
  cursor: pointer;
  display: inline-block;
  position: relative;
  text-indent: 9999px;
  vertical-align: middle;
  font: 0/0 a;
  color: transparent;
  outline: none;
}

.mcs-bullet.active {
  cursor: default;
}

/**
 * Animation mode
 */
[data-mode="animation"] div[data-action="exit"],
[data-mode="animation"] div[data-action="enter"] {
  -webkit-animation-duration: 0.35s;
  animation-duration: 0.35s;
  -webkit-animation-timing-function: ease-in;
  animation-timing-function: ease-in;
}

[data-mode="animation"] div[data-action="enter"] {
  -webkit-animation-timing-function: cubic-bezier(0.12, 0.37, 0.25, 1);
  animation-timing-function: cubic-bezier(0.12, 0.37, 0.25, 1);
}

[data-mode="animation"] .mcs-item {
  -webkit-animation-duration: 0;
  -webkit-transform: none;
  -webkit-animation-name: none;
          animation-name: none;
  animation-duration: 0;
}

[data-mode="animation"] .mcs-item[data-animation-nth="1"] {
  -webkit-animation-delay: 0.15s;
  animation-delay: 0.15s;
}

[data-mode="animation"] .mcs-item[data-animation-nth="2"] {
  -webkit-animation-delay: 0.2s;
  animation-delay: 0.2s;
}

[data-mode="animation"] .mcs-item[data-animation-nth="3"] {
  -webkit-animation-delay: 0.25s;
  animation-delay: 0.25s;
}

[data-mode="animation"] .mcs-item[data-animation-nth="4"] {
  -webkit-animation-delay: 0.3s;
  animation-delay: 0.3s;
}

[data-mode="animation"] .mcs-item[data-animation-nth="5"] {
  -webkit-animation-delay: 0.35s;
  animation-delay: 0.35s;
}

[data-mode="animation"] .mcs-item[data-animation-nth="6"] {
  -webkit-animation-delay: 0.4s;
  animation-delay: 0.4s;
}

[data-mode="animation"] .mcs-item[data-animation-nth="7"] {
  -webkit-animation-delay: 0.45s;
  animation-delay: 0.45s;
}

[data-mode="animation"] .mcs-item[data-animation-nth="8"] {
  -webkit-animation-delay: 0.5s;
  animation-delay: 0.5s;
}

[data-mode="animation"] .mcs-item[data-animation-nth="9"] {
  -webkit-animation-delay: 0.55s;
  animation-delay: 0.55s;
}

[data-mode="animation"] .mcs-item[data-animation-nth="10"] {
  -webkit-animation-delay: 0.6s;
  animation-delay: 0.6s;
}

.MagicScroll-horizontal[data-mode="animation"] [data-forward] [data-entering],
.MagicScroll-horizontal[data-mode="animation"] [data-forward] [data-exited] {
  -webkit-transform: translateX(100000px);
  transform: translateX(100000px);
}

.MagicScroll-horizontal[data-mode="animation"] [data-backward] [data-entering],
.MagicScroll-horizontal[data-mode="animation"] [data-backward] [data-exited] {
  -webkit-transform: translateX(-100000px);
  transform: translateX(-100000px);
}

.MagicScroll-vertical[data-mode="animation"] [data-forward] [data-entering],
.MagicScroll-vertical[data-mode="animation"] [data-forward] [data-exited] {
  -webkit-transform: translateY(100000px);
  transform: translateY(100000px);
}

.MagicScroll-vertical[data-mode="animation"] [data-backward] [data-entering],
.MagicScroll-vertical[data-mode="animation"] [data-backward] [data-exited] {
  -webkit-transform: translateY(-100000px);
  transform: translateY(-100000px);
}

/**
 * SlideIn animation
 */
[data-mode="animation"] .mcs-item[data-action="exit"],
.mcs-slidein[data-mode="animation"] .mcs-item[data-action="exit"] {
  -webkit-animation-timing-function: ease-in;
  animation-timing-function: ease-in;
  -webkit-animation-duration: 0.3s;
  animation-duration: 0.3s;
}

[data-mode="animation"] .mcs-item[data-action="enter"],
.mcs-slidein[data-mode="animation"] .mcs-item[data-action="enter"] {
  -webkit-animation-timing-function: cubic-bezier(0.12, 0.37, 0.25, 1);
  animation-timing-function: cubic-bezier(0.12, 0.37, 0.25, 1);
  -webkit-animation-duration: 0.35s;
  animation-duration: 0.35s;
}

/* Horizontal Forward */
.MagicScroll-horizontal[data-mode="animation"] [data-forward] .mcs-item[data-action="exit"],
.mcs-slidein.MagicScroll-horizontal[data-mode="animation"] [data-forward] .mcs-item[data-action="exit"] {
  -webkit-animation-name: h-forward-exit-slidein;
  animation-name: h-forward-exit-slidein;
}

.MagicScroll-horizontal[data-mode="animation"] [data-forward] .mcs-item[data-action="enter"],
.mcs-slidein.MagicScroll-horizontal[data-mode="animation"] [data-forward] .mcs-item[data-action="enter"] {
  -webkit-animation-name: h-forward-enter-slidein;
  animation-name: h-forward-enter-slidein;
}

@-webkit-keyframes h-forward-exit-slidein {
  0% {
    opacity: 1;
    -webkit-transform: translateX(0);
    transform: translateX(0);
  }
  100% {
    opacity: 0;
    -webkit-transform: translateX(-600px);
    transform: translateX(-600px);
  }
}

@keyframes h-forward-exit-slidein {
  0% {
    opacity: 1;
    -webkit-transform: translateX(0);
    transform: translateX(0);
  }
  100% {
    opacity: 0;
    -webkit-transform: translateX(-600px);
    transform: translateX(-600px);
  }
}

@-webkit-keyframes h-forward-enter-slidein {
  0% {
    opacity: 0;
    -webkit-transform: translateX(180px);
    transform: translateX(180px);
  }
  100% {
    opacity: 1;
    -webkit-transform: translateX(0px);
    transform: translateX(0px);
  }
}

@keyframes h-forward-enter-slidein {
  0% {
    opacity: 0;
    -webkit-transform: translateX(180px);
    transform: translateX(180px);
  }
  100% {
    opacity: 1;
    -webkit-transform: translateX(0px);
    transform: translateX(0px);
  }
}

/* Horizontal Backward */
.MagicScroll-horizontal[data-mode="animation"] [data-backward] .mcs-item[data-action="exit"],
.mcs-slidein.MagicScroll-horizontal[data-mode="animation"] [data-backward] .mcs-item[data-action="exit"] {
  -webkit-animation-name: h-backward-exit-slidein;
  animation-name: h-backward-exit-slidein;
}

.MagicScroll-horizontal[data-mode="animation"] [data-backward] .mcs-item[data-action="enter"],
.mcs-slidein.MagicScroll-horizontal[data-mode="animation"] [data-backward] .mcs-item[data-action="enter"] {
  -webkit-animation-name: h-backward-enter-slidein;
  animation-name: h-backward-enter-slidein;
}

@-webkit-keyframes h-backward-exit-slidein {
  0% {
    opacity: 1;
    -webkit-transform: translateX(0);
    transform: translateX(0);
  }
  100% {
    opacity: 0;
    -webkit-transform: translateX(600px);
    transform: translateX(600px);
  }
}

@keyframes h-backward-exit-slidein {
  0% {
    opacity: 1;
    -webkit-transform: translateX(0);
    transform: translateX(0);
  }
  100% {
    opacity: 0;
    -webkit-transform: translateX(600px);
    transform: translateX(600px);
  }
}

@-webkit-keyframes h-backward-enter-slidein {
  0% {
    opacity: 0;
    -webkit-transform: translateX(-180px);
    transform: translateX(-180px);
  }
  100% {
    opacity: 1;
    -webkit-transform: translateX(0px);
    transform: translateX(0px);
  }
}

@keyframes h-backward-enter-slidein {
  0% {
    opacity: 0;
    -webkit-transform: translateX(-180px);
    transform: translateX(-180px);
  }
  100% {
    opacity: 1;
    -webkit-transform: translateX(0px);
    transform: translateX(0px);
  }
}

/* Vertical Forward */
.MagicScroll-vertical[data-mode="animation"] [data-forward] .mcs-item[data-action="exit"],
.mcs-slidein.MagicScroll-vertical[data-mode="animation"] [data-forward] .mcs-item[data-action="exit"] {
  -webkit-animation-name: v-forward-exit-slidein;
  animation-name: v-forward-exit-slidein;
}

.MagicScroll-vertical[data-mode="animation"] [data-forward] .mcs-item[data-action="enter"],
.mcs-slidein.MagicScroll-vertical[data-mode="animation"] [data-forward] .mcs-item[data-action="enter"] {
  -webkit-animation-name: v-forward-enter-slidein;
  animation-name: v-forward-enter-slidein;
}

@-webkit-keyframes v-forward-exit-slidein {
  0% {
    opacity: 1;
    -webkit-transform: translateY(0);
    transform: translateY(0);
  }
  100% {
    opacity: 0;
    -webkit-transform: translateY(-600px);
    transform: translateY(-600px);
  }
}

@keyframes v-forward-exit-slidein {
  0% {
    opacity: 1;
    -webkit-transform: translateY(0);
    transform: translateY(0);
  }
  100% {
    opacity: 0;
    -webkit-transform: translateY(-600px);
    transform: translateY(-600px);
  }
}

@-webkit-keyframes v-forward-enter-slidein {
  0% {
    opacity: 0;
    -webkit-transform: translateY(180px);
    transform: translateY(180px);
  }
  100% {
    opacity: 1;
    -webkit-transform: translateY(0px);
    transform: translateY(0px);
  }
}

@keyframes v-forward-enter-slidein {
  0% {
    opacity: 0;
    -webkit-transform: translateY(180px);
    transform: translateY(180px);
  }
  100% {
    opacity: 1;
    -webkit-transform: translateY(0px);
    transform: translateY(0px);
  }
}

/* Vertical Backward */
.MagicScroll-vertical[data-mode="animation"] [data-backward] .mcs-item[data-action="exit"],
.mcs-slidein.MagicScroll-vertical[data-mode="animation"] [data-backward] .mcs-item[data-action="exit"] {
  -webkit-animation-name: v-backward-exit-slidein;
  animation-name: v-backward-exit-slidein;
}

.MagicScroll-vertical[data-mode="animation"] [data-backward] .mcs-item[data-action="enter"],
.mcs-slidein.MagicScroll-vertical[data-mode="animation"] [data-backward] .mcs-item[data-action="enter"] {
  -webkit-animation-name: v-backward-enter-slidein;
  animation-name: v-backward-enter-slidein;
}

@-webkit-keyframes v-backward-exit-slidein {
  0% {
    opacity: 1;
    -webkit-transform: translateY(0);
    transform: translateY(0);
  }
  100% {
    opacity: 0;
    -webkit-transform: translateY(600px);
    transform: translateY(600px);
  }
}

@keyframes v-backward-exit-slidein {
  0% {
    opacity: 1;
    -webkit-transform: translateY(0);
    transform: translateY(0);
  }
  100% {
    opacity: 0;
    -webkit-transform: translateY(600px);
    transform: translateY(600px);
  }
}

@-webkit-keyframes v-backward-enter-slidein {
  0% {
    opacity: 0;
    -webkit-transform: translateY(-180px);
    transform: translateY(-180px);
  }
  100% {
    opacity: 1;
    -webkit-transform: translateY(0px);
    transform: translateY(0px);
  }
}

@keyframes v-backward-enter-slidein {
  0% {
    opacity: 0;
    -webkit-transform: translateY(-180px);
    transform: translateY(-180px);
  }
  100% {
    opacity: 1;
    -webkit-transform: translateY(0px);
    transform: translateY(0px);
  }
}

/**
 * Bounce animation
 */
.mcs-bounce[data-mode="animation"] .mcs-item[data-action="exit"] {
  -webkit-animation-timing-function: cubic-bezier(0.84, 0, 1, 1);
  animation-timing-function: cubic-bezier(0.84, 0, 1, 1);
  -webkit-animation-duration: 0.4s;
  animation-duration: 0.4s;
  /*-webkit-animation-delay: 0s;
            animation-delay: 0s;*/
}

.mcs-bounce[data-mode="animation"] .mcs-item[data-action="enter"] {
  -webkit-animation-timing-function: cubic-bezier(0.12, 0.37, 0.25, 1);
  animation-timing-function: cubic-bezier(0.12, 0.37, 0.25, 1);
  -webkit-animation-duration: 0.4s;
  animation-duration: 0.4s;
}

/* Horizontal Forward */
.mcs-bounce.MagicScroll-horizontal[data-mode="animation"] [data-forward] .mcs-item[data-action="exit"] {
  -webkit-animation-name: h-forward-exit-bounce;
  animation-name: h-forward-exit-bounce;
}

.mcs-bounce.MagicScroll-horizontal[data-mode="animation"] [data-forward] .mcs-item[data-action="enter"] {
  -webkit-animation-name: h-forward-enter-bounce;
  animation-name: h-forward-enter-bounce;
}

@-webkit-keyframes h-forward-exit-bounce {
  0% {
    opacity: 1;
    -webkit-transform: translateX(0);
    transform: translateX(0) translateZ(-1px);
  }
  40% {
    opacity: 0.6;
  }
  100% {
    opacity: 0;
    -webkit-transform: translateX(-2000px);
    transform: translateX(-2000px) translateZ(-1px);
  }
}

@keyframes h-forward-exit-bounce {
  0% {
    opacity: 1;
    -webkit-transform: translateX(0);
    transform: translateX(0) translateZ(-1px);
  }
  40% {
    opacity: 0.6;
  }
  100% {
    opacity: 0;
    -webkit-transform: translateX(-2000px);
    transform: translateX(-2000px) translateZ(-1px);
  }
}

@-webkit-keyframes h-forward-enter-bounce {
  0% {
    opacity: 0;
    -webkit-transform: translateX(3000px);
    transform: translateX(3000px);
  }
  60% {
    opacity: 1;
    -webkit-transform: translateX(-30px);
    transform: translateX(-30px);
  }
  75% {
    -webkit-transform: translateX(10px);
    transform: translateX(10px);
  }
  90% {
    -webkit-transform: translateX(-5px);
    transform: translateX(-5px);
  }
  100% {
    -webkit-transform: translateX(0px);
    transform: translateX(0px);
  }
}

@keyframes h-forward-enter-bounce {
  0% {
    opacity: 0;
    -webkit-transform: translateX(3000px);
    transform: translateX(3000px);
  }
  60% {
    opacity: 1;
    -webkit-transform: translateX(-30px);
    transform: translateX(-30px);
  }
  75% {
    -webkit-transform: translateX(10px);
    transform: translateX(10px);
  }
  90% {
    -webkit-transform: translateX(-5px);
    transform: translateX(-5px);
  }
  100% {
    -webkit-transform: translateX(0px);
    transform: translateX(0px);
  }
}

/* Horizontal Backward */
.mcs-bounce.MagicScroll-horizontal[data-mode="animation"] [data-backward] .mcs-item[data-action="exit"] {
  -webkit-animation-name: h-backward-exit-bounce;
  animation-name: h-backward-exit-bounce;
}

.mcs-bounce.MagicScroll-horizontal[data-mode="animation"] [data-backward] .mcs-item[data-action="enter"] {
  -webkit-animation-name: h-backward-enter-bounce;
  animation-name: h-backward-enter-bounce;
}

@-webkit-keyframes h-backward-exit-bounce {
  0% {
    opacity: 1;
    -webkit-transform: translateX(0);
    transform: translateX(0) translateZ(-1px);
  }
  40% {
    opacity: 0.6;
  }
  100% {
    opacity: 0;
    -webkit-transform: translateX(2000px);
    transform: translateX(2000px) translateZ(-1px);
  }
}

@keyframes h-backward-exit-bounce {
  0% {
    opacity: 1;
    -webkit-transform: translateX(0);
    transform: translateX(0) translateZ(-1px);
  }
  40% {
    opacity: 0.6;
  }
  100% {
    opacity: 0;
    -webkit-transform: translateX(2000px);
    transform: translateX(2000px) translateZ(-1px);
  }
}

@-webkit-keyframes h-backward-enter-bounce {
  0% {
    opacity: 0;
    -webkit-transform: translateX(-3000px);
    transform: translateX(-3000px);
  }
  60% {
    opacity: 1;
    -webkit-transform: translateX(30px);
    transform: translateX(30px);
  }
  75% {
    -webkit-transform: translateX(-10px);
    transform: translateX(-10px);
  }
  90% {
    -webkit-transform: translateX(5px);
    transform: translateX(5px);
  }
  100% {
    -webkit-transform: translateX(0px);
    transform: translateX(0px);
  }
}

@keyframes h-backward-enter-bounce {
  0% {
    opacity: 0;
    -webkit-transform: translateX(-3000px);
    transform: translateX(-3000px);
  }
  60% {
    opacity: 1;
    -webkit-transform: translateX(30px);
    transform: translateX(30px);
  }
  75% {
    -webkit-transform: translateX(-10px);
    transform: translateX(-10px);
  }
  90% {
    -webkit-transform: translateX(5px);
    transform: translateX(5px);
  }
  100% {
    -webkit-transform: translateX(0px);
    transform: translateX(0px);
  }
}

/* Vertical Forward */
.mcs-bounce.MagicScroll-vertical[data-mode="animation"] [data-forward] div[data-action="exit"] {
  -webkit-animation-name: v-forward-exit-bounce;
  animation-name: v-forward-exit-bounce;
}

.mcs-bounce.MagicScroll-vertical[data-mode="animation"] [data-forward] div[data-action="enter"] {
  -webkit-animation-name: v-forward-enter-bounce;
  animation-name: v-forward-enter-bounce;
}

.mcs-bounce.MagicScroll-vertical[data-mode="animation"] [data-forward] [data-entering] {
  -webkit-transform: translateY(100000px);
  transform: translateY(100000px);
}

.mcs-bounce.MagicScroll-vertical[data-mode="animation"] [data-forward] [data-exited] {
  -webkit-transform: translateY(100000px);
  transform: translateY(100000px);
}

@-webkit-keyframes v-forward-exit-bounce {
  0% {
    opacity: 1;
    -webkit-transform: translateY(0);
    transform: translateY(0);
  }
  40% {
    opacity: 0.6;
  }
  100% {
    opacity: 0;
    -webkit-transform: translateY(-2000px);
    transform: translateY(-2000px);
  }
}

@keyframes v-forward-exit-bounce {
  0% {
    opacity: 1;
    -webkit-transform: translateY(0);
    transform: translateY(0);
  }
  40% {
    opacity: 0.6;
  }
  100% {
    opacity: 0;
    -webkit-transform: translateY(-2000px);
    transform: translateY(-2000px);
  }
}

@-webkit-keyframes v-forward-enter-bounce {
  0% {
    opacity: 0;
    -webkit-transform: translateY(3000px);
    transform: translateY(3000px);
  }
  60% {
    opacity: 1;
    -webkit-transform: translateY(-30px);
    transform: translateY(-30px);
  }
  75% {
    -webkit-transform: translateY(10px);
    transform: translateY(10px);
  }
  90% {
    -webkit-transform: translateY(-5px);
    transform: translateY(-5px);
  }
  100% {
    -webkit-transform: translateY(0px);
    transform: translateY(0px);
  }
}

@keyframes v-forward-enter-bounce {
  0% {
    opacity: 0;
    -webkit-transform: translateY(3000px);
    transform: translateY(3000px);
  }
  60% {
    opacity: 1;
    -webkit-transform: translateY(-30px);
    transform: translateY(-30px);
  }
  75% {
    -webkit-transform: translateY(10px);
    transform: translateY(10px);
  }
  90% {
    -webkit-transform: translateY(-5px);
    transform: translateY(-5px);
  }
  100% {
    -webkit-transform: translateY(0px);
    transform: translateY(0px);
  }
}

/* Vertical Backward */
.mcs-bounce.MagicScroll-vertical[data-mode="animation"] [data-backward] div[data-action="exit"] {
  -webkit-animation-name: v-backward-exit-bounce;
  animation-name: v-backward-exit-bounce;
}

.mcs-bounce.MagicScroll-vertical[data-mode="animation"] [data-backward] div[data-action="enter"] {
  -webkit-animation-name: v-backward-enter-bounce;
  animation-name: v-backward-enter-bounce;
}

@-webkit-keyframes v-backward-exit-bounce {
  0% {
    opacity: 1;
    -webkit-transform: translateY(0);
    transform: translateY(0);
  }
  40% {
    opacity: 0.6;
  }
  100% {
    opacity: 0;
    -webkit-transform: translateY(2000px);
    transform: translateY(2000px);
  }
}

@keyframes v-backward-exit-bounce {
  0% {
    opacity: 1;
    -webkit-transform: translateY(0);
    transform: translateY(0);
  }
  40% {
    opacity: 0.6;
  }
  100% {
    opacity: 0;
    -webkit-transform: translateY(2000px);
    transform: translateY(2000px);
  }
}

@-webkit-keyframes v-backward-enter-bounce {
  0% {
    opacity: 0;
    -webkit-transform: translateY(-3000px);
    transform: translateY(-3000px);
  }
  60% {
    opacity: 1;
    -webkit-transform: translateY(30px);
    transform: translateY(30px);
  }
  75% {
    -webkit-transform: translateY(-10px);
    transform: translateY(-10px);
  }
  90% {
    -webkit-transform: translateY(5px);
    transform: translateY(5px);
  }
  100% {
    -webkit-transform: translateY(0px);
    transform: translateY(0px);
  }
}

@keyframes v-backward-enter-bounce {
  0% {
    opacity: 0;
    -webkit-transform: translateY(-3000px);
    transform: translateY(-3000px);
  }
  60% {
    opacity: 1;
    -webkit-transform: translateY(30px);
    transform: translateY(30px);
  }
  75% {
    -webkit-transform: translateY(-10px);
    transform: translateY(-10px);
  }
  90% {
    -webkit-transform: translateY(5px);
    transform: translateY(5px);
  }
  100% {
    -webkit-transform: translateY(0px);
    transform: translateY(0px);
  }
}

/*
 * Arrows
 */
.MagicScroll-horizontal .mcs-button-arrow-prev:before,
.MagicScroll-horizontal .mcs-button-arrow-next:before,
.MagicScroll-vertical .mcs-button-arrow-prev:before,
.MagicScroll-vertical .mcs-button-arrow-next:before {
  content: "";
  top: 50%;
  left: 50%;
  width: 12px;
  height: 12px;
  position: absolute;
  border-width: 3px;
  border-color: rgba(49, 51, 61, 0.6);
  border-style: solid;
  border-right: none;
  border-bottom: none;
  -webkit-transition: border-color .15s linear;
  transition: border-color .15s linear;
}

.MagicScroll-horizontal .mcs-button-arrow-prev:before {
  left: 62%;
  -webkit-transform: translate(-50%, -50%) rotateZ(-45deg);
  transform: translate(-50%, -50%) rotateZ(-45deg);
}

.MagicScroll-horizontal .mcs-button-arrow-next:before {
  left: 40%;
  -webkit-transform: translate(-50%, -50%) rotateZ(135deg);
  transform: translate(-50%, -50%) rotateZ(135deg);
}

.MagicScroll-vertical .mcs-button-arrow-prev:before {
  top: 62%;
  -webkit-transform: translate(-50%, -50%) rotateZ(45deg);
  transform: translate(-50%, -50%) rotateZ(45deg);
}

.MagicScroll-vertical .mcs-button-arrow-next:before {
  top: 40%;
  -webkit-transform: translate(-50%, -50%) rotateZ(-135deg);
  transform: translate(-50%, -50%) rotateZ(-135deg);
}

.mcs-button-arrow.mcs-disabled {
  opacity: 0.01 !important;
}

.MagicScroll > .mcs-button-arrow {
  /*font-size: 20px;*/
  width: 30px;
  height: 30px;
  margin: auto;
  opacity: 0.6;
  -webkit-transition: opacity .15s linear;
  transition: opacity .15s linear;
}

.MagicScroll-horizontal .mcs-button-arrow-prev {
  left: 0;
  right: auto;
  top: 0;
  bottom: 0;
}

.MagicScroll-horizontal .mcs-button-arrow-next {
  left: auto;
  right: 0;
  top: 0;
  bottom: 0;
}

.MagicScroll-vertical .mcs-button-arrow-prev {
  top: 0;
  bottom: auto;
  left: 0;
  right: 0;
}

.MagicScroll-vertical .mcs-button-arrow-next {
  top: auto;
  bottom: 0;
  left: 0;
  right: 0;
}

.MagicScroll:hover > .mcs-button-arrow:hover:not(.mcs-disabled) {
  opacity: 1;
}

.MagicScroll:hover > .mcs-button-arrow:hover:not(.mcs-disabled):before {
  border-color: #31333d;
}

.MagicScroll.MagicScroll-arrows-inside .mcs-button-arrow {
  width: 24px;
  height: 24px;
  border-radius: 3px;
  background: rgba(255, 255, 255, 0.75);
  -webkit-box-shadow: 0 0 1px rgba(153, 153, 153, 0.5);
          box-shadow: 0 0 1px rgba(153, 153, 153, 0.5);
  -webkit-transition: background-color .15s linear;
  transition: background-color .15s linear;
}

.MagicScroll.MagicScroll-arrows-inside .mcs-button-arrow:before {
  width: 8px;
  height: 8px;
}

.MagicScroll-horizontal.MagicScroll-arrows-inside:hover > .mcs-button-arrow:hover:not(.mcs-disabled) {
  background-color: rgba(255, 255, 255, 0.96);
}

.MagicScroll-horizontal.MagicScroll-arrows-inside .mcs-button-arrow-prev {
  left: 5px;
}

.MagicScroll-horizontal.MagicScroll-arrows-inside .mcs-button-arrow-next {
  right: 5px;
}

.MagicScroll-vertical.MagicScroll-arrows-inside .mcs-button-arrow-prev {
  top: 5px;
}

.MagicScroll-vertical.MagicScroll-arrows-inside .mcs-button-arrow-next {
  bottom: 5px;
}

.lt-ie10-magic .MagicScroll.MagicScroll-arrows-inside .mcs-button-arrow {
  border: 1px solid rgba(153, 153, 153, 0.5);
}

.lt-ie9-magic .mcs-button-arrow:before {
  border-color: #83858B;
}

.lt-ie9-magic .MagicScroll:hover > .mcs-button-arrow:hover:before {
  border-color: #31333D;
}

.lt-ie9-magic .MagicScroll.MagicScroll-arrows-inside .mcs-button-arrow:before {
  border-color: #31333D;
}

.lt-ie9-magic .MagicScroll.MagicScroll-arrows-inside .mcs-button-arrow {
  background: #fff;
  border: 1px solid #999;
  filter: alpha(opacity=60);
}

.lt-ie9-magic .MagicScroll.MagicScroll-arrows-inside .mcs-button-arrow:hover {
  filter: alpha(opacity=96);
}

.lt-ie9-magic .mcs-button-arrow.mcs-disabled {
  filter: alpha(opacity=0.01) !important;
}

/*
 * Bullets
 */
.MagicScroll-horizontal .mcs-bullets {
  margin-top: 10px;
}

.MagicScroll-horizontal.MagicScroll-bullets {
  margin-bottom: 35px;
}

.MagicScroll-vertical .mcs-bullets {
  margin-left: 10px;
  top: 50%;
  -webkit-transform: translate(0, -50%);
  transform: translate(0, -50%);
}

.MagicScroll-vertical.MagicScroll-bullets {
  margin-right: 35px;
}

.mcs-bullet {
  width: 10px;
  height: 10px;
  background-color: #83858B;
}

.mcs-bullet:hover {
  background-color: #5a5a5a;
}

.mcs-bullet.active {
  background-color: transparent;
  border: 1px solid #5a5a5a;
}

/* Caption */
.mcs-item .mcs-caption {
  color: white;
  padding: 5px 0;
  font: normal 9pt/1.2em 'Helvetica Neue', Helvetica, 'Lucida Grande', 'Lucida Sans Unicode', Verdana, Arial, sans-serif;
  text-rendering: geometricPrecision;
}

.MagicScroll[data-mode="scroll"] .mcs-item .mcs-caption,
.MagicScroll[data-mode="animation"] .mcs-item .mcs-caption {
  background-color: #31333D;
  background-color: rgba(49, 51, 61, 0.7);
}

.lt-ie9-magic .MagicScroll[data-mode="scroll"] .mcs-item .mcs-caption,
.lt-ie9-magic .MagicScroll[data-mode="animation"] .mcs-item .mcs-caption {
  filter: alpha(opacity=60);
}

/* Carousel & Cover Flow */
.MagicScroll[data-mode="carousel"],
.MagicScroll[data-mode="cover-flow"] {
  background: #4f4f4f;
}

.MagicScroll[data-mode="carousel"] img,
.MagicScroll[data-mode="cover-flow"] img {
  -webkit-box-shadow: 0px 15px 30px -10px #000;
          box-shadow: 0px 15px 30px -10px #000;
}

.MagicScroll[data-mode="carousel"] figcaption,
.MagicScroll[data-mode="cover-flow"] figcaption {
  padding: 4px 0 0;
  font-size: 10pt;
  font-family: 'Lucida Grande', 'Lucida Sans Unicode', 'Helvetica Neue', Arial, Helvetica, sans-serif;
}

/* Misc */
.MagicScroll.mcs-shadows {
  -webkit-box-shadow: 0 1px 6px 1px rgba(0, 0, 0, 0.15);
          box-shadow: 0 1px 6px 1px rgba(0, 0, 0, 0.15);
}

.MagicScroll.mcs-border .mcs-item {
  background: #fff;
  border: 1px solid #efefef;
}

.MagicScroll-horizontal.mcs-border .mcs-item {
  margin: 0 3px;
}

.MagicScroll-vertical.mcs-border .mcs-item {
  margin: 3px 0;
}

/*
 * Loader
 */
.mcs-loader {
  pointer-events: none;
  position: absolute;
  z-index: 1000;
  top: 0px;
  left: 0px;
  right: 0px;
  bottom: 0px;
}

.mcs-loader .mcs-loader-text {
  position: absolute;
  top: 50%;
  left: 50%;
  margin-top: -10px;
  margin-left: -35px;
  width: 70px;
  height: 20px;
}

.mcs-loader-circles {
  position: absolute;
  top: 0;
  bottom: 0;
  left: 0;
  right: 0;
  margin: auto;
  width: 60px;
  height: 60px;
  opacity: 1;
  -webkit-transform: scale(0.6);
  transform: scale(0.6);
}

.mcs-loader-circle {
  position: absolute;
  background-color: #ffffff;
  height: 11px;
  width: 11px;
  border-radius: 50%;
  -webkit-animation-name: MagicCircle;
  -webkit-animation-duration: 0.48s;
  -webkit-animation-iteration-count: infinite;
  -webkit-animation-direction: linear;
  animation-name: MagicCircle;
  animation-duration: 0.48s;
  animation-iteration-count: infinite;
  animation-direction: linear;
}

.mcs-loader-circle_01 {
  left: 0;
  top: 25px;
  -webkit-animation-delay: 0.18s;
  animation-delay: 0.18s;
}

.mcs-loader-circle_02 {
  left: 7px;
  top: 7px;
  -webkit-animation-delay: 0.24s;
  animation-delay: 0.24s;
}

.mcs-loader-circle_03 {
  left: 25px;
  top: 0;
  -webkit-animation-delay: 0.3s;
  animation-delay: 0.3s;
}

.mcs-loader-circle_04 {
  right: 7px;
  top: 7px;
  -webkit-animation-delay: 0.36s;
  animation-delay: 0.36s;
}

.mcs-loader-circle_05 {
  right: 0;
  top: 25px;
  -webkit-animation-delay: 0.42s;
  animation-delay: 0.42s;
}

.mcs-loader-circle_06 {
  right: 7px;
  bottom: 7px;
  -webkit-animation-delay: 0.48s;
  animation-delay: 0.48s;
}

.mcs-loader-circle_07 {
  left: 25px;
  bottom: 0;
  -webkit-animation-delay: 0.54s;
  animation-delay: 0.54s;
}

.mcs-loader-circle_08 {
  left: 7px;
  bottom: 7px;
  -webkit-animation-delay: 0.6s;
  animation-delay: 0.6s;
}

@-webkit-keyframes MagicCircle {
  0% {
    background-color: #000000;
  }
  100% {
    background-color: #ffffff;
  }
}

@keyframes MagicCircle {
  0% {
    background-color: #000000;
  }
  100% {
    background-color: #ffffff;
  }
}

.mcs-item-loader {
  position: absolute;
  top: 0;
  bottom: 0;
  left: 0;
  right: 0;
  margin: auto;
  width: 40px;
  height: 40px;
  background-size: cover;
  background-repeat: no-repeat;
  background: url("data:image/gif;base64,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") no-repeat center center;
}

.MagicScroll.mcs-rounded {
  border: 1px solid #e1e1e1;
  border-radius: 10px;
  overflow: hidden !important;
}

.MagicScroll.mcs-rounded.MagicScroll-arrows-inside {
  overflow: hidden !important;
}

.MagicScroll.mcs-rounded.MagicScroll-arrows-outside {
  overflow: visible !important;
}

.MagicScroll.mcs-rounded .mcs-button-arrow {
  color: rgba(49, 51, 61, 0.6);
  -webkit-transition: color .15s linear, background-color .15s linear;
  transition: color .15s linear, background-color .15s linear;
}

.MagicScroll.mcs-rounded.MagicScroll-horizontal .mcs-button-arrow {
  width: 30px;
  height: 100%;
}

.MagicScroll.mcs-rounded.MagicScroll-vertical .mcs-button-arrow {
  width: 100%;
  height: 30px;
}

.MagicScroll.mcs-rounded.MagicScroll-horizontal .mcs-button-arrow-prev {
  left: 0;
  border-radius: 10px 0 0 10px;
}

.MagicScroll.mcs-rounded.MagicScroll-horizontal .mcs-button-arrow-next {
  right: 0;
  border-radius: 0 10px 10px 0;
}

.MagicScroll.mcs-rounded.MagicScroll-vertical .mcs-button-arrow-prev {
  top: 0;
  border-radius: 10px 10px 0 0;
}

.MagicScroll.mcs-rounded.MagicScroll-vertical .mcs-button-arrow-next {
  bottom: 0;
  border-radius: 0 0 10px 10px;
}

.MagicScroll.mcs-rounded .mcs-button-arrow.mcs-disabled {
  opacity: 1 !important;
  color: rgba(49, 51, 61, 0.1);
  text-shadow: none !important;
}

.MagicScroll.mcs-rounded.MagicScroll-arrows-outside .mcs-button-arrow {
  background: #efefef;
  opacity: 1;
  -webkit-box-shadow: 0 0 1px rgba(153, 153, 153, 0.5);
          box-shadow: 0 0 1px rgba(153, 153, 153, 0.5);
}

.MagicScroll.mcs-rounded.MagicScroll-arrows-inside .mcs-button-arrow:hover:not(.mcs-disabled) {
  background-color: rgba(255, 255, 255, 0.96);
  color: #31333d;
}

.MagicScroll.mcs-rounded.MagicScroll-arrows-inside .mcs-button-arrow {
  background-color: rgba(255, 255, 255, 0.75);
  -webkit-box-shadow: 0 0 1px rgba(153, 153, 153, 0.5);
          box-shadow: 0 0 1px rgba(153, 153, 153, 0.5);
}

.lt-ie10-magic .mcs-rounded.MagicScroll-horizontal.MagicScroll-arrows-inside .mcs-button-arrow-prev {
  border-width: 0 1px 0 0;
}

.lt-ie10-magic .mcs-rounded.MagicScroll-horizontal.MagicScroll-arrows-inside .mcs-button-arrow-next {
  border-width: 0 0 0 1px;
}

.lt-ie10-magic .mcs-rounded.MagicScroll-vertical.MagicScroll-arrows-inside .mcs-button-arrow-prev {
  border-width: 0 0 1px 0;
}

.lt-ie10-magic .mcs-rounded.MagicScroll-vertical.MagicScroll-arrows-inside .mcs-button-arrow-next {
  border-width: 1px 0 0 0;
}

.lt-ie9-magic .mcs-rounded.MagicScroll .mcs-button-arrow {
  color: #83858B;
}

.lt-ie9-magic .mcs-rounded.MagicScroll.MagicScroll-arrows-inside .mcs-button-arrow {
  background: #fff;
  filter: alpha(opacity=75);
}

.lt-ie9-magic .mcs-rounded.MagicScroll.MagicScroll-arrows-inside .mcs-button-arrow:hover {
  filter: alpha(opacity=96);
}

.lt-ie9-magic .MagicScroll.mcs-rounded .mcs-button-arrow.mcs-disabled {
  filter: alpha(opacity=75) !important;
  color: #ccc;
}

/*


   Magic Zoom Plus v5.2.4 
   Copyright 2017 Magic Toolbox
   Buy a license: https://www.magictoolbox.com/magiczoomplus/
   License agreement: https://www.magictoolbox.com/license/


*/
/**
 * Core styles
 */
@font-face {
  font-family: "magictoolbox-thin";
  font-weight: normal;
  font-style: normal;
  src: url("../magic-toolbox-fonts/magictoolbox-thin.eot?#iefix") format("embedded-opentype"), url("data:font/opentype;base64,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");
}

.MagicZoom,
.mz-figure,
.mz-lens,
.mz-zoom-window,
.mz-loading,
.mz-hint,
.mz-expand .mz-expand-stage,
.mz-expand .mz-expand-stage .mz-image-stage,
.mz-expand .mz-image-stage > figure .mz-caption,
.mz-thumb img,
.mz-expand-thumbnails,
.mz-expand-controls,
.mz-button {
  -webkit-box-sizing: border-box;
  box-sizing: border-box;
}

.MagicZoom,
.mz-figure {
  display: inline-block;
  outline: 0 !important;
  font-size: 0 !important;
  line-height: 100% !important;
  direction: ltr !important;
  position: relative;
  z-index: 1;
  margin: 0 auto;
  vertical-align: middle;
  -webkit-user-select: none;
  -moz-user-select: none;
  -ms-user-select: none;
  user-select: none;
  -webkit-touch-callout: none;
  -webkit-tap-highlight-color: transparent;
  -webkit-backface-visibility: hidden;
  backface-visibility: hidden;
}

.MagicZoom {
  -webkit-transform: translate3d(0, 0, 0);
  -ms-touch-action: pan-y;
  touch-action: pan-y;
}

figure.mz-figure {
  overflow: hidden;
  margin: 0 !important;
  -webkit-transform-style: preserve-3d;
  transform-style: preserve-3d;
}

.MagicZoom img,
.mz-figure img {
  border: 0 !important;
  margin: 0 !important;
  outline: 0 !important;
  padding: 0 !important;
}

.MagicZoom > img,
.mz-figure > img {
  width: 100%;
  height: auto;
}

.ie8-magic .MagicZoom > img,
.ie8-magic .mz-figure > img {
  width: 100%;
  max-width: none !important;
}

.mz-figure.mz-no-zoom.mz-no-expand,
.mz-expand .mz-figure.mz-no-zoom {
  cursor: default !important;
}

.mz-figure.mz-active,
.mz-expand {
  -ms-touch-action: none;
  touch-action: none;
}

.mz-lens,
.mz-zoom-window {
  position: absolute !important;
  overflow: hidden !important;
  pointer-events: none !important;
}

.mz-lens img,
.mz-zoom-window img {
  position: absolute !important;
  max-width: none !important;
  max-height: none !important;
}

.mz-lens img {
  -webkit-transition: none !important;
  transition: none !important;
}

.mz-zoom-window {
  z-index: 2000000000;
  -webkit-transform: translate3d(0, 0, 0);
  transform: translate3d(0, 0, 0);
}

.mz-zoom-window.mz-magnifier {
  -webkit-mask-image: -webkit-radial-gradient(circle, white, black);
  -webkit-mask-clip: content;
  cursor: none;
}

.mz-figure.mz-active .mz-zoom-window.mz-magnifier {
  pointer-events: auto !important;
  cursor: inherit !important;
}

.mz-zoom-window.mz-magnifier.mz-expanded {
  z-index: 2147483647;
}

.mz-zoom-window img {
  width: auto;
  height: auto;
  left: -1000%;
  right: -1000%;
  top: -1000%;
  bottom: -1000%;
  margin: auto !important;
  -webkit-transition: none !important;
  transition: none !important;
  -webkit-transform-origin: 50% 50% !important;
  transform-origin: 50% 50% !important;
}

.mz-zoom-window.mz-preview img {
  top: 0 !important;
  bottom: 0 !important;
  left: 0 !important;
  right: 0 !important;
  margin: 0 !important;
  width: 100% !important;
  height: auto !important;
  -webkit-transform: none !important;
  transform: none !important;
}

.lt-ie9-magic .mz-zoom-window img {
  margin: 0 !important;
}

.mz-expand-controls {
  z-index: 2147483647;
}

.mz-fade {
  -webkit-transition: opacity .25s;
  transition: opacity .25s;
}

.mz-hidden {
  opacity: 0;
}

.mz-visible {
  opacity: 1;
}

.mobile-magic .mz-expand .mz-expand-bg {
  -webkit-transform-style: flat !important;
  transform-style: flat !important;
}

.mobile-magic .mz-expand .mz-image-stage > figure .mz-caption {
  display: none !important;
}

.mobile-magic .mz-expand-controls.mz-fade {
  -webkit-transition: none !important;
  transition: none !important;
}

.mobile-magic .mz-expand > .mz-zoom-window {
  top: 0 !important;
  left: 0 !important;
}

.mz-expanded-view-open,
.mz-expanded-view-open body {
  overflow: hidden !important;
}

.mz-expanded-view-open body {
  height: auto !important;
}

/**
 * Main figure
 */
.mz-figure.mz-active {
  background: #fff;
}

.mz-figure.mz-no-zoom,
.mz-figure.mz-click-zoom,
.mz-figure.mz-active {
  cursor: pointer;
  cursor: -webkit-zoom-in;
  cursor: zoom-in;
}

.mz-figure.mz-active.mz-no-expand {
  cursor: crosshair;
}

.mz-figure.mz-active.mz-click-zoom.mz-no-expand {
  cursor: crosshair;
  cursor: -webkit-zoom-out;
  cursor: zoom-out;
}

.mz-figure.mz-active.mz-magnifier-zoom.mz-hover-zoom.mz-no-expand {
  cursor: none;
}

.mz-figure.mz-magnifier-zoom.mz-active {
  overflow: visible !important;
}

.mz-figure.mz-active > img {
  filter: url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg'><filter id='grayscale'><feColorMatrix type='saturate' values='0'/><feComponentTransfer><feFuncA type='linear' slope='0.6'/></feComponentTransfer></filter></svg>#grayscale");
  -webkit-filter: grayscale(80%) opacity(60%);
  filter: grayscale(80%) opacity(60%);
}

.no-cssfilters-magic .mz-figure.mz-active > img {
  opacity: 0.6;
}

.lt-ie10-magic .mz-figure.mz-active > img {
  opacity: 1;
  filter: progid:DXImageTransform.Microsoft.BasicImage(grayScale=1,opacity=0.6);
}

.mz-figure.mz-active.mz-inner-zoom,
.lt-ie11-magic .mz-expand .mz-figure.mz-active.mz-inner-zoom,
.lt-ie11-magic .mz-figure.mz-active.mz-inner-zoom > img {
  opacity: 0;
}

.lt-ie11-magic .mz-figure.mz-active.mz-inner-zoom,
.lt-ie11-magic .mz-figure.mz-active.mz-inner-zoom > .mz-zoom-window {
  opacity: 1;
}

.lt-ie10-magic .mz-expand .mz-figure.mz-active.mz-inner-zoom,
.lt-ie10-magic .mz-figure.mz-active.mz-inner-zoom > img {
  filter: alpha(opacity=0);
}

.ie9-magic .mz-expand .mz-figure.mz-active.mz-inner-zoom {
  background: transparent;
}

/**
 * Zoom lens
 */
.mz-lens {
  border: 1px solid #aaa;
  border-color: rgba(170, 170, 170, 0.7);
  -webkit-box-shadow: 0 0 5px rgba(0, 0, 0, 0.3);
          box-shadow: 0 0 5px rgba(0, 0, 0, 0.3);
  cursor: none;
  z-index: 10;
  opacity: 0;
}

.mz-figure.mz-active .mz-lens {
  opacity: 1;
  -webkit-transition: opacity 0.3s cubic-bezier(0.25, 0.5, 0.5, 0.9) 0.1s;
  transition: opacity 0.3s cubic-bezier(0.25, 0.5, 0.5, 0.9) 0.1s;
}

.mz-figure.mz-active.mz-magnifier-zoom .mz-lens {
  border-radius: 50%;
  opacity: 0;
  cursor: none;
}

/**
 * Zoom window
 */
.mz-zoom-window {
  background: #fff;
  -webkit-box-shadow: 0 0 3px rgba(0, 0, 0, 0.2);
          box-shadow: 0 0 3px rgba(0, 0, 0, 0.2);
}

.mz-zoom-window.mz-magnifier {
  border-radius: 100%;
  border: 0;
  background: rgba(255, 255, 255, 0.3);
}

.mz-zoom-window.mz-magnifier:before {
  content: "";
  display: block;
  position: absolute;
  top: 0;
  bottom: 0;
  left: 0;
  right: 0;
  border-radius: 100%;
  border: 1px solid rgba(170, 170, 170, 0.7);
  -webkit-box-shadow: inset 0 0 20px 1px rgba(0, 0, 0, 0.3);
          box-shadow: inset 0 0 20px 1px rgba(0, 0, 0, 0.3);
  background: transparent;
  z-index: 1;
}

.mz-zoom-window.mz-magnifier.mz-square,
.mz-zoom-window.mz-magnifier.mz-square:before {
  border-radius: 0 !important;
}

.lt-ie9-magic .mz-zoom-window {
  border: 1px solid #e5e5e5;
}

.mz-zoom-window.mz-inner {
  border: none;
  -webkit-box-shadow: none;
          box-shadow: none;
}

/* Caption in zoom window */
.mz-zoom-window .mz-caption {
  background: #777;
  color: #fff;
  font-size: 10pt;
  opacity: 0.8;
  position: absolute;
  top: 0;
  z-index: 150;
  padding: 3px;
  width: 100%;
  line-height: normal !important;
  text-align: center !important;
}

.lt-ie9-magic .mz-zoom-window .mz-caption {
  filter: alpha(opacity=80);
}

.mz-zoom-window.caption-bottom .mz-caption {
  top: auto;
  bottom: 0;
}

.mz-zoom-window.mz-expanded > .mz-caption {
  display: none;
}

/* Zoom window animations */
.mz-zoom-window.mz-deactivating,
.mz-zoom-window.mz-activating {
  -webkit-transition: opacity 0.3s cubic-bezier(0.25, 0.5, 0.5, 0.9), -webkit-transform 0.3s cubic-bezier(0.25, 0.5, 0.5, 0.9);
  transition: opacity 0.3s cubic-bezier(0.25, 0.5, 0.5, 0.9), -webkit-transform 0.3s cubic-bezier(0.25, 0.5, 0.5, 0.9);
  transition: opacity 0.3s cubic-bezier(0.25, 0.5, 0.5, 0.9), transform 0.3s cubic-bezier(0.25, 0.5, 0.5, 0.9);
  transition: opacity 0.3s cubic-bezier(0.25, 0.5, 0.5, 0.9), transform 0.3s cubic-bezier(0.25, 0.5, 0.5, 0.9), -webkit-transform 0.3s cubic-bezier(0.25, 0.5, 0.5, 0.9);
}

.mz-zoom-window.mz-deactivating {
  -webkit-transition-duration: .25s, .25s, .25s;
  transition-duration: .25s, .25s, .25s;
}

.mz-zoom-window.mz-p-right,
.mz-zoom-window.mz-p-left,
.mz-zoom-window.mz-p-top,
.mz-zoom-window.mz-p-bottom {
  opacity: 0;
  z-index: -100;
}

.mz-zoom-window.mz-p-right {
  -webkit-transform: translate3d(-20%, 0, 0);
  transform: translate3d(-20%, 0, 0);
}

.mz-zoom-window.mz-p-left {
  -webkit-transform: translate3d(20%, 0, 0);
  transform: translate3d(20%, 0, 0);
}

.mz-zoom-window.mz-p-top {
  -webkit-transform: translate3d(0, 20%, 0);
  transform: translate3d(0, 20%, 0);
}

.mz-zoom-window.mz-p-bottom {
  -webkit-transform: translate3d(0, -20%, 0);
  transform: translate3d(0, -20%, 0);
}

/* Inner mode animation */
.mz-zoom-window > img {
  -webkit-transform: translate3d(0, 0, 0) scale(1);
  transform: translate3d(0, 0, 0) scale(1);
  -webkit-backface-visibility: hidden;
  backface-visibility: hidden;
}

.mz-zoom-window.mz-p-inner.mz-deactivating > img,
.mz-zoom-window.mz-p-inner.mz-activating > img {
  -webkit-transition: -webkit-transform 0.22s cubic-bezier(0.25, 0.5, 0.5, 0.9) !important;
  transition: -webkit-transform 0.22s cubic-bezier(0.25, 0.5, 0.5, 0.9) !important;
  transition: transform 0.22s cubic-bezier(0.25, 0.5, 0.5, 0.9) !important;
  transition: transform 0.22s cubic-bezier(0.25, 0.5, 0.5, 0.9), -webkit-transform 0.22s cubic-bezier(0.25, 0.5, 0.5, 0.9) !important;
}

/* Magnifier mode animation */
.mz-zoom-window.mz-p-magnifier {
  -webkit-transform: scale(0.1);
  transform: scale(0.1);
}

/* Preview mode animation */
.mz-zoom-window.mz-preview.mz-deactivating,
.mz-zoom-window.mz-preview.mz-activating,
.mz-zoom-window.mz-custom.mz-deactivating,
.mz-zoom-window.mz-custom.mz-activating {
  -webkit-transition: opacity 0.3s cubic-bezier(0.25, 0.5, 0.5, 0.9);
  transition: opacity 0.3s cubic-bezier(0.25, 0.5, 0.5, 0.9);
}

.mz-zoom-window.mz-preview.mz-deactivating,
.mz-zoom-window.mz-custom.mz-deactivating {
  -webkit-transition-duration: .2s;
  transition-duration: .2s;
}

.mz-zoom-window.mz-p-preview,
.mz-zoom-window.mz-p-custom {
  opacity: 0;
}

/**
 * Hint & Loading
 */
.mz-hint,
.mz-loading {
  color: #eee;
  background: rgba(49, 51, 61, 0.7);
  font: normal 12px/1.2em 'Lucida Grande', 'Lucida Sans Unicode', Verdana, 'Helvetica Neue', Arial, Helvetica, sans-serif;
  text-decoration: none;
  text-align: center;
  direction: ltr;
  display: inline-block;
  margin: 0;
  position: absolute;
  z-index: 1000;
  pointer-events: none;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
  -webkit-transition: opacity 0.25s ease;
  transition: opacity 0.25s ease;
}

.mz-hint {
  bottom: 8px;
  left: 0;
  right: 0;
  padding: 0 10%;
  background-color: transparent;
  -webkit-transition: opacity 0.25s ease, z-index 0.25s ease;
  transition: opacity 0.25s ease, z-index 0.25s ease;
}

.mz-hint-message {
  display: inline-block;
  background: rgba(49, 51, 61, 0.7);
  border-radius: 2em;
  padding: .7em 1.1em;
}

.mz-hint-message:before {
  content: '\02295';
  font-family: serif;
  font-size: 1.5em;
  speak: none;
  text-align: center;
  vertical-align: -2px;
  margin-right: 6px;
  -webkit-transition: opacity 0.25s ease;
  transition: opacity 0.25s ease;
}

.mobile-magic .mz-hint-message:before {
  display: none;
}

.mz-hint-hidden {
  opacity: 0;
  z-index: -1;
  -webkit-transition-delay: .6s;
  transition-delay: .6s;
}

/* Hint in the expanded view on mobile */
.mz-expand .mz-hint {
  font-size: 18px;
  line-height: 1.1em;
  top: 50%;
  bottom: auto;
  margin: 0;
  -webkit-transform: translate(0, -50%);
  transform: translate(0, -50%);
}

.mz-expand .mz-hint-message {
  padding: 1.1em;
}

.mz-expand .mz-hint-message:before {
  display: none;
}

.mz-expand .mz-hint-hidden {
  -webkit-transition-delay: 1s;
  transition-delay: 1s;
  opacity: 0;
}

/* Loading indicator */
.mz-loading {
  font-size: 0;
  border-radius: 100%;
  opacity: 0;
  padding: 0;
  width: 36px;
  height: 36px;
  top: 50%;
  left: 50%;
  -webkit-transform: translate(-50%, -50%);
  transform: translate(-50%, -50%);
}

.mz-loading:after {
  content: '';
  position: absolute;
  top: 0;
  bottom: 0;
  left: 0;
  right: 0;
  width: 24px;
  height: 24px;
  margin: auto;
  text-indent: -9999em;
  border-radius: 50%;
  border: 2px solid white;
  border-top-color: transparent;
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
}

.mz-loading.shown {
  opacity: 1;
  z-index: 1;
  -webkit-transition: opacity 0s;
  transition: opacity 0s;
}

.mz-loading.shown:after {
  -webkit-animation: spin-loading .9s infinite linear;
  animation: spin-loading .9s infinite linear;
}

@-webkit-keyframes spin-loading {
  0% {
    -webkit-transform: rotate(0deg);
    transform: rotate(0deg);
  }
  100% {
    -webkit-transform: rotate(360deg);
    transform: rotate(360deg);
  }
}

@keyframes spin-loading {
  0% {
    -webkit-transform: rotate(0deg);
    transform: rotate(0deg);
  }
  100% {
    -webkit-transform: rotate(360deg);
    transform: rotate(360deg);
  }
}

.lt-ie10-magic .mz-loading {
  border-radius: 2em;
  font-size: 12px;
  padding: .7em 1.1em;
  width: auto;
  height: auto;
}

.lt-ie10-magic .mz-loading:after {
  content: 'Loading...';
  text-indent: 0;
  border: none;
  position: relative;
}

.lt-ie9-magic .mz-loading {
  filter: alpha(opacity=0);
  right: 0;
  left: 0;
  width: 126px;
  margin: auto;
}

.lt-ie9-magic .mz-hint-message,
.lt-ie9-magic .mz-loading.shown {
  background: transparent !important;
  filter: progid:DXImageTransform.Microsoft.gradient(GradientType=0,StartColorStr='#7c31333D', EndColorStr='#7c31333D');
}

.lt-ie9-magic .mz-hint-hidden {
  filter: alpha(opacity=0);
}

/**
 * Expanded view
 */
.mz-expand,
.mz-expand .mz-expand-bg,
.mz-expand .mz-expand-bg > img,
.mz-expand .mz-expand-bg > svg,
.mz-expand .mz-expand-stage,
.mz-expand .mz-expand-stage .mz-image-stage {
  position: absolute;
  top: 0;
  bottom: 0;
  left: 0;
  right: 0;
}

.mz-expand .mz-expand-bg,
.mz-expand .mz-expand-bg > img,
.mz-expand .mz-expand-bg > svg {
  width: auto !important;
  height: auto !important;
}

.mz-expand .mz-expand-bg,
.mz-expand .mz-expand-bg > svg {
  min-width: 100% !important;
  min-height: 100% !important;
}

.mz-expand {
  background-color: black;
  text-align: center;
  vertical-align: middle;
  display: block;
  overflow: hidden;
  z-index: 2100000000;
  position: fixed;
  width: auto;
  height: auto;
  -webkit-perspective: 600px;
  perspective: 600px;
  -webkit-transform-style: preserve-3d;
  transform-style: preserve-3d;
  -webkit-backface-visibility: hidden;
  backface-visibility: hidden;
  -ms-overflow-style: none;
}

/* Expanded view background */
.mz-expand .mz-expand-bg {
  display: inline-block;
  vertical-align: middle;
  margin: auto;
  z-index: -100;
  max-width: none !important;
  max-height: none !important;
  -webkit-transform: translate3d(0, 0, 0) scale(10) rotate(0.01deg);
  transform: translate3d(0, 0, 0) scale(10) rotate(0.01deg);
  -webkit-perspective: 600px;
  perspective: 600px;
  background-repeat: no-repeat;
  background-size: cover;
}

.mz-expand .mz-expand-bg > img {
  margin: auto;
  filter: url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg'><filter id='blur'><feGaussianBlur stdDeviation='80' in='SourceGraphic'></feGaussianBlur></filter></svg>#blur");
  -webkit-filter: blur(20px) brightness(60%);
  filter: blur(20px) brightness(60%);
  -webkit-transform: translate3d(0, 0, 0);
  transform: translate3d(0, 0, 0);
  -webkit-backface-visibility: hidden;
  backface-visibility: hidden;
}

.mz-expand .mz-expand-bg > svg {
  margin: auto;
  opacity: .6;
}

[data-magic-ua=edge] .mz-expand .mz-expand-bg,
.lt-ie10-magic .mz-expand .mz-expand-bg {
  display: none !important;
}

.lt-ie9-magic .mz-expand {
  background: #1f1f1f;
}

[data-magic-ua=edge] .mz-expand {
  background-color: rgba(31, 31, 31, 0.96);
}

/** Plain backgrounds: dark-bg, white-bg **/
.mz-expand.plain-bg .mz-expand-bg,
.mz-expand.dark-bg .mz-expand-bg,
.mz-expand.white-bg .mz-expand-bg {
  display: none !important;
}

.mz-expand.dark-bg {
  background-color: #1f1f1f;
  background-color: rgba(31, 31, 31, 0.96);
}

.mz-expand.white-bg {
  background-color: #fff;
}

/* Expanded view stage */
.mz-expand .mz-expand-stage {
  z-index: 2100000000;
  padding: 0;
}

.mz-expand .mz-expand-stage .mz-image-stage {
  z-index: 50;
  left: 120px;
  right: 120px;
  padding: 20px 0 40px 0;
  margin: 0;
  text-align: center;
  vertical-align: middle;
  -webkit-perspective: 600px;
  perspective: 600px;
  -webkit-backface-visibility: hidden;
  backface-visibility: hidden;
}

.mz-expand .mz-expand-stage.with-thumbs .mz-image-stage {
  padding-bottom: 120px;
}

.mz-expand .mz-expand-stage.mz-zoom-in .mz-image-stage {
  padding: 0 !important;
  left: 0;
  right: 0;
}

.mz-expand .mz-image-stage > figure:before,
.mz-expand .mz-image-stage:before {
  content: '';
  display: inline-block;
  vertical-align: middle;
  height: 100%;
  font-size: 0;
  line-height: 100%;
  width: 0;
}

.mz-expand .mz-image-stage > figure {
  width: 100%;
  max-width: 100%;
  max-height: 100%;
  padding: 0;
  margin: 0;
  display: inline-block;
  vertical-align: middle;
  font-size: 0;
  line-height: 100%;
  position: relative;
}

.mz-expand .mz-figure {
  overflow: visible;
  max-width: 100% !important;
}

.mz-expand .mz-figure > img {
  max-width: 100%;
  width: auto;
  height: auto;
}

.mz-expand .mz-zoom-in .mz-image-stage > figure,
.mz-expand .mz-zoom-in .mz-image-stage > figure .mz-figure.mz-activating,
.mz-expand .mz-zoom-in .mz-image-stage > figure .mz-figure.mz-active {
  width: 100%;
  height: 100%;
}

.mz-expand .mz-figure {
  cursor: pointer;
  cursor: -webkit-zoom-in;
  cursor: zoom-in;
}

.mz-expand .mz-figure.mz-active {
  cursor: crosshair;
  cursor: -webkit-zoom-out;
  cursor: zoom-out;
}

/* When inner zoom is always shown */
.mz-expand .mz-expand-stage.mz-zoom-in.mz-always-zoom .mz-image-stage > figure > figure > img {
  z-index: 1;
  position: absolute !important;
  top: -5000px !important;
  bottom: -5000px !important;
  left: -5000px !important;
  right: -5000px !important;
  margin: auto !important;
}

.lt-ie10-magic .mz-zoom-window.mz-expanded img {
  filter: alpha(opacity=100);
}

.lt-ie10-magic .mz-expand .mz-figure.mz-magnifier-zoom {
  overflow: hidden;
  filter: alpha(opacity=100);
}

/* Caption in expanded view */
.mz-expand .mz-caption {
  color: #fff;
  text-shadow: 0px 0px 46px #000;
  padding: 10px 4px;
  font: normal 10pt/1em 'Lucida Grande', 'Lucida Sans Unicode', Verdana, 'Helvetica Neue', Arial, Helvetica, sans-serif;
  text-align: center;
  width: 100%;
  position: absolute;
  left: 0;
  opacity: 0;
}

.mz-expand .mz-caption.mz-show {
  -webkit-transition: opacity 0.15s ease-out;
  transition: opacity 0.15s ease-out;
  opacity: 1;
}

.mz-expand .mz-caption a {
  color: inherit;
  cursor: pointer;
}

.mz-expand.white-bg .mz-caption {
  color: #555;
  text-shadow: none;
}

.lt-ie9-magic .mz-expand .mz-caption {
  top: 100%;
}

.mz-expand .mz-zoom-window {
  -webkit-box-shadow: none;
          box-shadow: none;
  background: transparent;
}

.lt-ie9-magic .mz-expand .mz-zoom-window {
  border: 0;
}

/* Expanded view on mobile */
.mobile-magic .mz-expand-stage .mz-expand-thumbnails,
.mobile-magic .mz-expand-stage .mz-image-stage {
  left: 0px;
  right: 0px;
}

.mobile-magic .mz-expand .mz-expand-stage.with-thumbs {
  bottom: 0px;
}

.mobile-magic .mz-expand-stage .mz-image-stage {
  padding: 0;
}

.mobile-magic .mz-expand .mz-expand-stage.with-thumbs .mz-image-stage {
  padding: 5px 0 60px;
}

.mobile-magic .mz-expand .mz-expand-stage.mz-zoom-in .mz-image-stage {
  padding-top: 0;
}

.mobile-magic .mz-expand .mz-expand-thumbnails {
  padding: 0;
  height: 60px;
}

/**
 * Buttons & Arrows
 */
.mz-expand-controls,
button.mz-button {
  margin: 0 !important;
  padding: 0 !important;
  outline: 0 !important;
}

button.mz-button {
  color: #b4b4b4 !important;
  font: 900 34px/1 'magictoolbox-thin' !important;
  cursor: pointer;
  z-index: 90 !important;
  background-color: transparent !important;
  border: 1px solid rgba(180, 180, 180, 0) !important;
  border-radius: 100% !important;
  -webkit-box-shadow: none !important;
          box-shadow: none !important;
  position: absolute !important;
  text-transform: none !important;
  text-align: center;
  speak: none;
  -webkit-font-smoothing: antialiased;
  width: 60px !important;
  height: 60px !important;
  min-width: 0 !important;
  min-height: 0 !important;
  max-width: none !important;
  max-height: none !important;
}

button.mz-button:before {
  display: inline;
  position: static;
  color: inherit !important;
  font: inherit !important;
  -webkit-font-smoothing: inherit !important;
}

button.mz-button.mz-button-prev,
button.mz-button.mz-button-next {
  margin: auto 10px !important;
  top: 0 !important;
  bottom: 0 !important;
  overflow: hidden !important;
}

button.mz-button.mz-button-prev {
  left: 0 !important;
}

button.mz-button.mz-button-next {
  right: 0 !important;
}

button.mz-button.mz-button-close {
  font-size: 26px !important;
  margin: 10px !important;
  top: 0 !important;
  right: 0 !important;
  z-index: 95 !important;
}

:root:not(.mobile-magic) button.mz-button {
  color: rgba(180, 180, 180, 0.75) !important;
  -webkit-transform: scale(0.85) !important;
  transform: scale(0.85) !important;
  -webkit-transition: color .25s, border-color .25s, -webkit-transform .25s !important;
  transition: color .25s, border-color .25s, -webkit-transform .25s !important;
  transition: color .25s, border-color .25s, transform .25s !important;
  transition: color .25s, border-color .25s, transform .25s, -webkit-transform .25s !important;
}

:root:not(.mobile-magic) button.mz-button:hover {
  color: #b4b4b4 !important;
  border-color: rgba(180, 180, 180, 0.6) !important;
  -webkit-transform: scale(1) !important;
  transform: scale(1) !important;
}

.mobile-magic button.mz-button {
  -webkit-transition: -webkit-transform .1s !important;
  transition: -webkit-transform .1s !important;
  transition: transform .1s !important;
  transition: transform .1s, -webkit-transform .1s !important;
}

.mobile-magic button.mz-button:active {
  border-color: rgba(180, 180, 180, 0.6) !important;
  -webkit-transform: scale(0.95) !important;
  transform: scale(0.95) !important;
}

/*button.mz-button.mz-button-close:before { content: "\a001"; }
button.mz-button.mz-button-prev:before { content: "\a002";  }
button.mz-button.mz-button-next:before { content: "\a003"; }*/
button.mz-button.mz-button-close:before {
  font-family: FontAwesome !important;
  content: "\f00d" !important;
}

button.mz-button.mz-button-prev:before {
  font-family: FontAwesome !important;
  content: "\f104" !important;
}

button.mz-button.mz-button-next:before {
  font-family: FontAwesome !important;
  content: "\f105" !important;
}

@media screen and (max-device-width: 767px) {
  button.mz-button-prev,
  button.mz-button-next {
    display: none !important;
  }
  .mobile-magic .mz-expand button.mz-button {
    width: 44px !important;
    height: 44px !important;
    font-size: 18px !important;
    color: rgba(255, 255, 255, 0.8) !important;
    background-color: rgba(49, 51, 61, 0.3) !important;
    border-color: transparent !important;
  }
}

.lt-ie9-magic button.mz-button {
  border: 0;
  filter: alpha(opacity=75);
}

.lt-ie9-magic button.mz-button:hover {
  filter: alpha(opacity=100);
}

/**
 * Thumbnails
 */
/* Thumbnails on the page */
a[data-zoom-id],
.mz-thumb, .mz-thumb:focus {
  display: inline-block;
  line-height: 0;
  outline: none;
}

a[data-zoom-id] img,
.mz-thumb img {
  border: 0;
  -webkit-box-shadow: 0 0 1px 0px rgba(0, 0, 0, 0.3);
          box-shadow: 0 0 1px 0px rgba(0, 0, 0, 0.3);
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
}

.mz-thumb:hover:not(.mz-thumb-selected) img {
  -webkit-filter: brightness(75%);
  filter: brightness(75%);
}

.mz-thumb-selected img {
  -webkit-filter: brightness(60%);
  filter: brightness(60%);
}

.no-cssfilters-magic .mz-thumb:hover,
.no-cssfilters-magic .mz-thumb.mz-thumb-selected {
  background: #000;
}

.no-cssfilters-magic .mz-thumb:hover:not(.mz-thumb-selected) img {
  opacity: .75;
  filter: alpha(opacity=75);
}

.no-cssfilters-magic .mz-thumb-selected img {
  opacity: .6;
  filter: alpha(opacity=60);
}

.ie9-magic .mz-thumb img {
  -webkit-box-shadow: 0 0 4px 0px rgba(0, 0, 0, 0.3);
          box-shadow: 0 0 4px 0px rgba(0, 0, 0, 0.3);
}

/* Thumbnails in expanded view */
.mz-expand-thumbnails {
  z-index: 50;
  position: absolute;
  bottom: 0;
  left: 65px;
  right: 65px;
  height: 80px;
  padding: 10px 0;
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
}

.mz-expand-thumbnails .magic-thumbs .magic-thumb {
  padding: 10px 2px;
}

.mz-expand-thumbnails .magic-thumb > img {
  cursor: pointer;
  height: 40px;
  -webkit-box-shadow: 0 0 5px 1px rgba(0, 0, 0, 0.3);
          box-shadow: 0 0 5px 1px rgba(0, 0, 0, 0.3);
}

.mz-expand-thumbnails .magic-thumb:not(.magic-thumb-selected) > img:hover {
  -webkit-filter: brightness(70%);
  filter: brightness(70%);
}

.mz-expand-thumbnails .magic-thumb-selected img {
  -webkit-filter: brightness(50%);
  filter: brightness(50%);
}

.mz-expand-thumbnails .magic-thumbs .magic-thumbs-button {
  -webkit-box-shadow: none;
          box-shadow: none;
}

.mz-expand-thumbnails .magic-thumbs .magic-thumbs-button-disabled {
  opacity: 0;
}

.no-cssfilters-magic .mz-expand-thumbnails .magic-thumb:hover:not(.magic-thumb-selected) img {
  opacity: .7;
  filter: alpha(opacity=70);
}

.no-cssfilters-magic .mz-expand-thumbnails .magic-thumb-selected img {
  opacity: .5;
  filter: alpha(opacity=50);
}

/** Hide thumbnails in expanded view with .no-expand-thumbnails class **/
.mz-expand.no-expand-thumbnails .mz-expand-stage.with-thumbs .mz-image-stage {
  padding-bottom: 40px;
}

.mz-expand.no-expand-thumbnails .mz-expand-thumbnails {
  display: none;
}

.mobile-magic .mz-expand.no-expand-thumbnails .mz-expand-stage.with-thumbs .mz-image-stage {
  padding: 0;
}

.magic-thumbs,
.magic-thumbs .magic-thumbs-wrapper,
.magic-thumbs ul,
.magic-thumbs li,
.magic-thumbs li:before,
.magic-thumbs li:after,
.magic-thumbs li img,
.magic-thumbs .magic-thumbs-button {
  margin: 0;
  padding: 0;
  outline: 0;
  -webkit-box-sizing: border-box;
  box-sizing: border-box;
}

.magic-thumbs {
  direction: ltr;
  overflow: visible;
  z-index: 100;
  position: relative;
  left: 0;
  top: 0;
  padding: 0 30px;
  -webkit-user-select: none;
  -moz-user-select: none;
  -ms-user-select: none;
  user-select: none;
  -webkit-touch-callout: none;
  -webkit-tap-highlight-color: transparent;
  -ms-touch-action: none;
  touch-action: none;
}

.magic-thumbs {
  width: 100%;
  height: 100%;
  white-space: nowrap;
}

.magic-thumbs.no-buttons {
  padding: 0 !important;
}

.magic-thumbs-wrapper {
  display: block;
  width: 100%;
  height: 100%;
  position: relative;
  overflow: hidden;
  text-align: center;
}

.magic-thumbs ul {
  list-style: none;
  font-size: 0;
  display: inline-block;
  vertical-align: middle;
  height: 100%;
  position: relative;
  white-space: nowrap;
}

.magic-thumbs.no-buttons ul {
  left: 0 !important;
  padding: 0 !important;
  -webkit-transition: none !important;
  transition: none !important;
  -webkit-transform: none !important;
  transform: none !important;
}

.magic-thumbs ul li {
  margin: 0 4px;
  height: 100%;
  width: auto;
  vertical-align: top;
  line-height: 0;
  display: inline-block;
}

.magic-thumbs ul li:after {
  content: '';
  display: inline-block;
  vertical-align: middle;
  height: 100%;
  width: 0;
}

.magic-thumbs ul li > img {
  width: auto;
  height: auto;
  max-width: none !important;
  max-height: 100% !important;
  vertical-align: middle;
}

.ie8-magic .magic-thumbs ul li > img {
  max-width: none !important;
  max-height: none !important;
}

/* vertical */
.magic-thumbs.magic-thumbs-vertical {
  height: 100%;
}

.magic-thumbs-vertical {
  padding: 30px 0;
}

.magic-thumbs-vertical ul {
  height: auto;
  width: 100%;
  white-space: normal;
}

.magic-thumbs-vertical ul li {
  width: 100%;
  height: auto;
}

.magic-thumbs-vertical ul li {
  margin: 4px 0;
}

.magic-thumbs-vertical ul li > img {
  max-width: 100% !important;
  max-height: none !important;
}

.ie8-magic .magic-thumbs-vertical ul li > img {
  width: 100%;
}

/**
 * Buttons
 */
.magic-thumbs button.magic-thumbs-button {
  color: #b4b4b4 !important;
  font: 900 24px/1 'magictoolbox-thin' !important;
  cursor: pointer;
  z-index: 90 !important;
  background-repeat: no-repeat;
  background-color: transparent !important;
  background-image: none;
  border: 0;
  border-radius: 0;
  -webkit-box-shadow: none !important;
          box-shadow: none !important;
  overflow: hidden;
  position: absolute;
  text-transform: none !important;
  speak: none;
  text-align: center;
  -webkit-font-smoothing: antialiased;
  width: 30px;
  height: 100%;
  top: 0;
  bottom: 0;
  min-width: 0 !important;
  min-height: 0 !important;
  max-width: none !important;
  max-height: none !important;
}

.magic-thumbs button.magic-thumbs-button:before {
  display: inline;
  position: static;
  color: inherit !important;
  font: inherit !important;
  -webkit-font-smoothing: inherit !important;
}

.magic-thumbs .magic-thumbs-button-prev {
  left: 0;
}

.magic-thumbs .magic-thumbs-button-next {
  right: 0;
}

.magic-thumbs .magic-thumbs-button-prev:before {
  content: "\a002";
}

.magic-thumbs .magic-thumbs-button-next:before {
  content: "\a003";
}

:root:not(.mobile-magic) .magic-thumbs button.magic-thumbs-button {
  color: rgba(180, 180, 180, 0.75) !important;
  -webkit-transform: scale(0.85) !important;
  transform: scale(0.85) !important;
  -webkit-transition: color .25s, -webkit-transform .25s !important;
  transition: color .25s, -webkit-transform .25s !important;
  transition: color .25s, transform .25s !important;
  transition: color .25s, transform .25s, -webkit-transform .25s !important;
}

:root:not(.mobile-magic) .magic-thumbs button.magic-thumbs-button:hover {
  color: #b4b4b4 !important;
  -webkit-transform: scale(1) !important;
  transform: scale(1) !important;
}

/* Vertical buttons */
.magic-thumbs-vertical .magic-thumbs-button {
  width: 100%;
  height: 30px;
  left: 0;
  right: 0;
  top: auto;
  bottom: auto;
}

.magic-thumbs-vertical .magic-thumbs-button-prev {
  top: 0;
}

.magic-thumbs-vertical .magic-thumbs-button-next {
  bottom: 0;
}

.magic-thumbs-vertical .magic-thumbs-button-prev:before {
  content: "\a005";
}

.magic-thumbs-vertical .magic-thumbs-button-next:before {
  content: "\a004";
}

.magic-thumbs.no-buttons .magic-thumbs-button {
  display: none !important;
}

.magic-thumbs-button-disabled {
  opacity: 0.2;
  filter: alpha(opacity=20);
}

[v-cloak] {
  display: none;
}

/**
 * Foundation for Sites by ZURB
 * Version 6.4.1
 * foundation.zurb.com
 * Licensed under MIT Open Source
 */
@media print, screen and (min-width: 48em) {
  .reveal, .reveal.tiny, .reveal.small, .reveal.large {
    right: auto;
    left: auto;
    margin: 0 auto;
  }
}

/*! normalize-scss | MIT/GPLv2 License | bit.ly/normalize-scss */
/* Document
       ========================================================================== */
/**
     * 1. Change the default font family in all browsers (opinionated).
     * 2. Correct the line height in all browsers.
     * 3. Prevent adjustments of font size after orientation changes in
     *    IE on Windows Phone and in iOS.
     */
html {
  font-family: sans-serif;
  /* 1 */
  line-height: 1.15;
  /* 2 */
  -ms-text-size-adjust: 100%;
  /* 3 */
  -webkit-text-size-adjust: 100%;
  /* 3 */
}

/* Sections
       ========================================================================== */
/**
     * Remove the margin in all browsers (opinionated).
     */
body {
  margin: 0;
}

/**
     * Add the correct display in IE 9-.
     */
article,
aside,
footer,
header,
nav,
section {
  display: block;
}

/**
     * Correct the font size and margin on `h1` elements within `section` and
     * `article` contexts in Chrome, Firefox, and Safari.
     */
h1 {
  font-size: 2em;
  margin: 0.67em 0;
}

/* Grouping content
       ========================================================================== */
/**
     * Add the correct display in IE 9-.
     */
figcaption,
figure {
  display: block;
}

/**
     * Add the correct margin in IE 8.
     */
figure {
  margin: 1em 40px;
}

/**
     * 1. Add the correct box sizing in Firefox.
     * 2. Show the overflow in Edge and IE.
     */
hr {
  -webkit-box-sizing: content-box;
          box-sizing: content-box;
  /* 1 */
  height: 0;
  /* 1 */
  overflow: visible;
  /* 2 */
}

/**
     * Add the correct display in IE.
     */
main {
  display: block;
}

/**
     * 1. Correct the inheritance and scaling of font size in all browsers.
     * 2. Correct the odd `em` font sizing in all browsers.
     */
pre {
  font-family: monospace, monospace;
  /* 1 */
  font-size: 1em;
  /* 2 */
}

/* Links
       ========================================================================== */
/**
     * 1. Remove the gray background on active links in IE 10.
     * 2. Remove gaps in links underline in iOS 8+ and Safari 8+.
     */
a {
  background-color: transparent;
  /* 1 */
  -webkit-text-decoration-skip: objects;
  /* 2 */
}

/**
     * Remove the outline on focused links when they are also active or hovered
     * in all browsers (opinionated).
     */
a:active,
a:hover {
  outline-width: 0;
}

/* Text-level semantics
       ========================================================================== */
/**
     * 1. Remove the bottom border in Firefox 39-.
     * 2. Add the correct text decoration in Chrome, Edge, IE, Opera, and Safari.
     */
abbr[title] {
  border-bottom: none;
  /* 1 */
  text-decoration: underline;
  /* 2 */
  -webkit-text-decoration: underline dotted;
          text-decoration: underline dotted;
  /* 2 */
}

/**
     * Prevent the duplicate application of `bolder` by the next rule in Safari 6.
     */
b,
strong {
  font-weight: inherit;
}

/**
     * Add the correct font weight in Chrome, Edge, and Safari.
     */
b,
strong {
  font-weight: bolder;
}

/**
     * 1. Correct the inheritance and scaling of font size in all browsers.
     * 2. Correct the odd `em` font sizing in all browsers.
     */
code,
kbd,
samp {
  font-family: monospace, monospace;
  /* 1 */
  font-size: 1em;
  /* 2 */
}

/**
     * Add the correct font style in Android 4.3-.
     */
dfn {
  font-style: italic;
}

/**
     * Add the correct background and color in IE 9-.
     */
mark {
  background-color: #ff0;
  color: #000;
}

/**
     * Add the correct font size in all browsers.
     */
small {
  font-size: 80%;
}

/**
     * Prevent `sub` and `sup` elements from affecting the line height in
     * all browsers.
     */
sub,
sup {
  font-size: 75%;
  line-height: 0;
  position: relative;
  vertical-align: baseline;
}

sub {
  bottom: -0.25em;
}

sup {
  top: -0.5em;
}

/* Embedded content
       ========================================================================== */
/**
     * Add the correct display in IE 9-.
     */
audio,
video {
  display: inline-block;
}

/**
     * Add the correct display in iOS 4-7.
     */
audio:not([controls]) {
  display: none;
  height: 0;
}

/**
     * Remove the border on images inside links in IE 10-.
     */
img {
  border-style: none;
}

/**
     * Hide the overflow in IE.
     */
svg:not(:root) {
  overflow: hidden;
}

/* Forms
       ========================================================================== */
/**
     * 1. Change the font styles in all browsers (opinionated).
     * 2. Remove the margin in Firefox and Safari.
     */
button,
input,
optgroup,
select,
textarea {
  font-family: sans-serif;
  /* 1 */
  font-size: 100%;
  /* 1 */
  line-height: 1.15;
  /* 1 */
  margin: 0;
  /* 2 */
}

/**
     * Show the overflow in IE.
     */
button {
  overflow: visible;
}

/**
     * Remove the inheritance of text transform in Edge, Firefox, and IE.
     * 1. Remove the inheritance of text transform in Firefox.
     */
button,
select {
  /* 1 */
  text-transform: none;
}

/**
     * 1. Prevent a WebKit bug where (2) destroys native `audio` and `video`
     *    controls in Android 4.
     * 2. Correct the inability to style clickable types in iOS and Safari.
     */
button,
html [type="button"],
[type="reset"],
[type="submit"] {
  -webkit-appearance: button;
  /* 2 */
}

button,
[type="button"],
[type="reset"],
[type="submit"] {
  /**
       * Remove the inner border and padding in Firefox.
       */
  /**
       * Restore the focus styles unset by the previous rule.
       */
}

button::-moz-focus-inner,
[type="button"]::-moz-focus-inner,
[type="reset"]::-moz-focus-inner,
[type="submit"]::-moz-focus-inner {
  border-style: none;
  padding: 0;
}

button:-moz-focusring,
[type="button"]:-moz-focusring,
[type="reset"]:-moz-focusring,
[type="submit"]:-moz-focusring {
  outline: 1px dotted ButtonText;
}

/**
     * Show the overflow in Edge.
     */
input {
  overflow: visible;
}

/**
     * 1. Add the correct box sizing in IE 10-.
     * 2. Remove the padding in IE 10-.
     */
[type="checkbox"],
[type="radio"] {
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  /* 1 */
  padding: 0;
  /* 2 */
}

/**
     * Correct the cursor style of increment and decrement buttons in Chrome.
     */
[type="number"]::-webkit-inner-spin-button,
[type="number"]::-webkit-outer-spin-button {
  height: auto;
}

/**
     * 1. Correct the odd appearance in Chrome and Safari.
     * 2. Correct the outline style in Safari.
     */
[type="search"] {
  -webkit-appearance: textfield;
  /* 1 */
  outline-offset: -2px;
  /* 2 */
  /**
       * Remove the inner padding and cancel buttons in Chrome and Safari on macOS.
       */
}

[type="search"]::-webkit-search-cancel-button, [type="search"]::-webkit-search-decoration {
  -webkit-appearance: none;
}

/**
     * 1. Correct the inability to style clickable types in iOS and Safari.
     * 2. Change font properties to `inherit` in Safari.
     */
::-webkit-file-upload-button {
  -webkit-appearance: button;
  /* 1 */
  font: inherit;
  /* 2 */
}

/**
     * Change the border, margin, and padding in all browsers (opinionated).
     */
fieldset {
  border: 1px solid #c0c0c0;
  margin: 0 2px;
  padding: 0.35em 0.625em 0.75em;
}

/**
     * 1. Correct the text wrapping in Edge and IE.
     * 2. Correct the color inheritance from `fieldset` elements in IE.
     * 3. Remove the padding so developers are not caught out when they zero out
     *    `fieldset` elements in all browsers.
     */
legend {
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  /* 1 */
  display: table;
  /* 1 */
  max-width: 100%;
  /* 1 */
  padding: 0;
  /* 3 */
  color: inherit;
  /* 2 */
  white-space: normal;
  /* 1 */
}

/**
     * 1. Add the correct display in IE 9-.
     * 2. Add the correct vertical alignment in Chrome, Firefox, and Opera.
     */
progress {
  display: inline-block;
  /* 1 */
  vertical-align: baseline;
  /* 2 */
}

/**
     * Remove the default vertical scrollbar in IE.
     */
textarea {
  overflow: auto;
}

/* Interactive
       ========================================================================== */
/*
     * Add the correct display in Edge, IE, and Firefox.
     */
details {
  display: block;
}

/*
     * Add the correct display in all browsers.
     */
summary {
  display: list-item;
}

/*
     * Add the correct display in IE 9-.
     */
menu {
  display: block;
}

/* Scripting
       ========================================================================== */
/**
     * Add the correct display in IE 9-.
     */
canvas {
  display: inline-block;
}

/**
     * Add the correct display in IE.
     */
template {
  display: none;
}

/* Hidden
       ========================================================================== */
/**
     * Add the correct display in IE 10-.
     */
[hidden] {
  display: none;
}

.foundation-mq {
  font-family: "small=0em&medium=48em&large=64em&xlarge=75em&xxlarge=90em";
}

html {
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  font-size: 14px;
}

*,
*::before,
*::after {
  -webkit-box-sizing: inherit;
          box-sizing: inherit;
}

body {
  margin: 0;
  padding: 0;
  background: #fff;
  font-family: Helvetica, Arial, sans-serif;
  font-weight: normal;
  line-height: 1.6;
  color: #0a0a0a;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
}

img {
  display: inline-block;
  vertical-align: middle;
  max-width: 100%;
  height: auto;
  -ms-interpolation-mode: bicubic;
}

textarea {
  height: auto;
  min-height: 50px;
  border-radius: 0.18rem;
}

select {
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  width: 100%;
  border-radius: 0.18rem;
}

.map_canvas img,
.map_canvas embed,
.map_canvas object,
.mqa-display img,
.mqa-display embed,
.mqa-display object {
  max-width: none !important;
}

button {
  padding: 0;
  -webkit-appearance: none;
     -moz-appearance: none;
          appearance: none;
  border: 0;
  border-radius: 0.18rem;
  background: transparent;
  line-height: 1;
}

[data-whatinput='mouse'] button {
  outline: 0;
}

pre {
  overflow: auto;
}

button,
input,
optgroup,
select,
textarea {
  font-family: inherit;
}

.is-visible {
  display: block !important;
}

.is-hidden {
  display: none !important;
}

.row {
  max-width: 92.85714rem;
  margin-right: auto;
  margin-left: auto;
}

.row::before, .row::after {
  display: table;
  content: ' ';
}

.row::after {
  clear: both;
}

.row.collapse > .column, .row.collapse > .columns {
  padding-right: 0;
  padding-left: 0;
}

.row .row {
  margin-right: -0.35714rem;
  margin-left: -0.35714rem;
}

@media print, screen and (min-width: 48em) {
  .row .row {
    margin-right: -0.57143rem;
    margin-left: -0.57143rem;
  }
}

@media print, screen and (min-width: 64em) {
  .row .row {
    margin-right: -0.57143rem;
    margin-left: -0.57143rem;
  }
}

@media screen and (min-width: 75em) {
  .row .row {
    margin-right: -0.57143rem;
    margin-left: -0.57143rem;
  }
}

@media screen and (min-width: 90em) {
  .row .row {
    margin-right: -0.57143rem;
    margin-left: -0.57143rem;
  }
}

.row .row.collapse {
  margin-right: 0;
  margin-left: 0;
}

.row.expanded {
  max-width: none;
}

.row.expanded .row {
  margin-right: auto;
  margin-left: auto;
}

.row:not(.expanded) .row {
  max-width: none;
}

.row.gutter-small > .column, .row.gutter-small > .columns {
  padding-right: 0.35714rem;
  padding-left: 0.35714rem;
}

.row.gutter-medium > .column, .row.gutter-medium > .columns {
  padding-right: 0.57143rem;
  padding-left: 0.57143rem;
}

.row.gutter-large > .column, .row.gutter-large > .columns {
  padding-right: 0.57143rem;
  padding-left: 0.57143rem;
}

.column, .columns {
  width: 100%;
  float: left;
  padding-right: 0.35714rem;
  padding-left: 0.35714rem;
}

@media print, screen and (min-width: 48em) {
  .column, .columns {
    padding-right: 0.57143rem;
    padding-left: 0.57143rem;
  }
}

@media print, screen and (min-width: 64em) {
  .column, .columns {
    padding-right: 0.57143rem;
    padding-left: 0.57143rem;
  }
}

.column:last-child:not(:first-child), .columns:last-child:not(:first-child) {
  float: right;
}

.column.end:last-child:last-child, .end.columns:last-child:last-child {
  float: left;
}

.column.row.row, .row.row.columns {
  float: none;
}

.row .column.row.row, .row .row.row.columns {
  margin-right: 0;
  margin-left: 0;
  padding-right: 0;
  padding-left: 0;
}

.small-1 {
  width: 8.33333%;
}

.small-push-1 {
  position: relative;
  left: 8.33333%;
}

.small-pull-1 {
  position: relative;
  left: -8.33333%;
}

.small-offset-0 {
  margin-left: 0%;
}

.small-2 {
  width: 16.66667%;
}

.small-push-2 {
  position: relative;
  left: 16.66667%;
}

.small-pull-2 {
  position: relative;
  left: -16.66667%;
}

.small-offset-1 {
  margin-left: 8.33333%;
}

.small-3 {
  width: 25%;
}

.small-push-3 {
  position: relative;
  left: 25%;
}

.small-pull-3 {
  position: relative;
  left: -25%;
}

.small-offset-2 {
  margin-left: 16.66667%;
}

.small-4 {
  width: 33.33333%;
}

.small-push-4 {
  position: relative;
  left: 33.33333%;
}

.small-pull-4 {
  position: relative;
  left: -33.33333%;
}

.small-offset-3 {
  margin-left: 25%;
}

.small-5 {
  width: 41.66667%;
}

.small-push-5 {
  position: relative;
  left: 41.66667%;
}

.small-pull-5 {
  position: relative;
  left: -41.66667%;
}

.small-offset-4 {
  margin-left: 33.33333%;
}

.small-6 {
  width: 50%;
}

.small-push-6 {
  position: relative;
  left: 50%;
}

.small-pull-6 {
  position: relative;
  left: -50%;
}

.small-offset-5 {
  margin-left: 41.66667%;
}

.small-7 {
  width: 58.33333%;
}

.small-push-7 {
  position: relative;
  left: 58.33333%;
}

.small-pull-7 {
  position: relative;
  left: -58.33333%;
}

.small-offset-6 {
  margin-left: 50%;
}

.small-8 {
  width: 66.66667%;
}

.small-push-8 {
  position: relative;
  left: 66.66667%;
}

.small-pull-8 {
  position: relative;
  left: -66.66667%;
}

.small-offset-7 {
  margin-left: 58.33333%;
}

.small-9 {
  width: 75%;
}

.small-push-9 {
  position: relative;
  left: 75%;
}

.small-pull-9 {
  position: relative;
  left: -75%;
}

.small-offset-8 {
  margin-left: 66.66667%;
}

.small-10 {
  width: 83.33333%;
}

.small-push-10 {
  position: relative;
  left: 83.33333%;
}

.small-pull-10 {
  position: relative;
  left: -83.33333%;
}

.small-offset-9 {
  margin-left: 75%;
}

.small-11 {
  width: 91.66667%;
}

.small-push-11 {
  position: relative;
  left: 91.66667%;
}

.small-pull-11 {
  position: relative;
  left: -91.66667%;
}

.small-offset-10 {
  margin-left: 83.33333%;
}

.small-12 {
  width: 100%;
}

.small-offset-11 {
  margin-left: 91.66667%;
}

.small-up-1 > .column, .small-up-1 > .columns {
  float: left;
  width: 100%;
}

.small-up-1 > .column:nth-of-type(1n), .small-up-1 > .columns:nth-of-type(1n) {
  clear: none;
}

.small-up-1 > .column:nth-of-type(1n+1), .small-up-1 > .columns:nth-of-type(1n+1) {
  clear: both;
}

.small-up-1 > .column:last-child, .small-up-1 > .columns:last-child {
  float: left;
}

.small-up-2 > .column, .small-up-2 > .columns {
  float: left;
  width: 50%;
}

.small-up-2 > .column:nth-of-type(1n), .small-up-2 > .columns:nth-of-type(1n) {
  clear: none;
}

.small-up-2 > .column:nth-of-type(2n+1), .small-up-2 > .columns:nth-of-type(2n+1) {
  clear: both;
}

.small-up-2 > .column:last-child, .small-up-2 > .columns:last-child {
  float: left;
}

.small-up-3 > .column, .small-up-3 > .columns {
  float: left;
  width: 33.33333%;
}

.small-up-3 > .column:nth-of-type(1n), .small-up-3 > .columns:nth-of-type(1n) {
  clear: none;
}

.small-up-3 > .column:nth-of-type(3n+1), .small-up-3 > .columns:nth-of-type(3n+1) {
  clear: both;
}

.small-up-3 > .column:last-child, .small-up-3 > .columns:last-child {
  float: left;
}

.small-up-4 > .column, .small-up-4 > .columns {
  float: left;
  width: 25%;
}

.small-up-4 > .column:nth-of-type(1n), .small-up-4 > .columns:nth-of-type(1n) {
  clear: none;
}

.small-up-4 > .column:nth-of-type(4n+1), .small-up-4 > .columns:nth-of-type(4n+1) {
  clear: both;
}

.small-up-4 > .column:last-child, .small-up-4 > .columns:last-child {
  float: left;
}

.small-up-5 > .column, .small-up-5 > .columns {
  float: left;
  width: 20%;
}

.small-up-5 > .column:nth-of-type(1n), .small-up-5 > .columns:nth-of-type(1n) {
  clear: none;
}

.small-up-5 > .column:nth-of-type(5n+1), .small-up-5 > .columns:nth-of-type(5n+1) {
  clear: both;
}

.small-up-5 > .column:last-child, .small-up-5 > .columns:last-child {
  float: left;
}

.small-up-6 > .column, .small-up-6 > .columns {
  float: left;
  width: 16.66667%;
}

.small-up-6 > .column:nth-of-type(1n), .small-up-6 > .columns:nth-of-type(1n) {
  clear: none;
}

.small-up-6 > .column:nth-of-type(6n+1), .small-up-6 > .columns:nth-of-type(6n+1) {
  clear: both;
}

.small-up-6 > .column:last-child, .small-up-6 > .columns:last-child {
  float: left;
}

.small-up-7 > .column, .small-up-7 > .columns {
  float: left;
  width: 14.28571%;
}

.small-up-7 > .column:nth-of-type(1n), .small-up-7 > .columns:nth-of-type(1n) {
  clear: none;
}

.small-up-7 > .column:nth-of-type(7n+1), .small-up-7 > .columns:nth-of-type(7n+1) {
  clear: both;
}

.small-up-7 > .column:last-child, .small-up-7 > .columns:last-child {
  float: left;
}

.small-up-8 > .column, .small-up-8 > .columns {
  float: left;
  width: 12.5%;
}

.small-up-8 > .column:nth-of-type(1n), .small-up-8 > .columns:nth-of-type(1n) {
  clear: none;
}

.small-up-8 > .column:nth-of-type(8n+1), .small-up-8 > .columns:nth-of-type(8n+1) {
  clear: both;
}

.small-up-8 > .column:last-child, .small-up-8 > .columns:last-child {
  float: left;
}

.small-up-9 > .column, .small-up-9 > .columns {
  float: left;
  width: 11.11111%;
}

.small-up-9 > .column:nth-of-type(1n), .small-up-9 > .columns:nth-of-type(1n) {
  clear: none;
}

.small-up-9 > .column:nth-of-type(9n+1), .small-up-9 > .columns:nth-of-type(9n+1) {
  clear: both;
}

.small-up-9 > .column:last-child, .small-up-9 > .columns:last-child {
  float: left;
}

.small-up-10 > .column, .small-up-10 > .columns {
  float: left;
  width: 10%;
}

.small-up-10 > .column:nth-of-type(1n), .small-up-10 > .columns:nth-of-type(1n) {
  clear: none;
}

.small-up-10 > .column:nth-of-type(10n+1), .small-up-10 > .columns:nth-of-type(10n+1) {
  clear: both;
}

.small-up-10 > .column:last-child, .small-up-10 > .columns:last-child {
  float: left;
}

.small-up-11 > .column, .small-up-11 > .columns {
  float: left;
  width: 9.09091%;
}

.small-up-11 > .column:nth-of-type(1n), .small-up-11 > .columns:nth-of-type(1n) {
  clear: none;
}

.small-up-11 > .column:nth-of-type(11n+1), .small-up-11 > .columns:nth-of-type(11n+1) {
  clear: both;
}

.small-up-11 > .column:last-child, .small-up-11 > .columns:last-child {
  float: left;
}

.small-up-12 > .column, .small-up-12 > .columns {
  float: left;
  width: 8.33333%;
}

.small-up-12 > .column:nth-of-type(1n), .small-up-12 > .columns:nth-of-type(1n) {
  clear: none;
}

.small-up-12 > .column:nth-of-type(12n+1), .small-up-12 > .columns:nth-of-type(12n+1) {
  clear: both;
}

.small-up-12 > .column:last-child, .small-up-12 > .columns:last-child {
  float: left;
}

.small-collapse > .column, .small-collapse > .columns {
  padding-right: 0;
  padding-left: 0;
}

.small-collapse .row {
  margin-right: 0;
  margin-left: 0;
}

.expanded.row .small-collapse.row {
  margin-right: 0;
  margin-left: 0;
}

.small-uncollapse > .column, .small-uncollapse > .columns {
  padding-right: 0.35714rem;
  padding-left: 0.35714rem;
}

.small-centered {
  margin-right: auto;
  margin-left: auto;
}

.small-centered, .small-centered:last-child:not(:first-child) {
  float: none;
  clear: both;
}

.small-uncentered,
.small-push-0,
.small-pull-0 {
  position: static;
  float: left;
  margin-right: 0;
  margin-left: 0;
}

@media print, screen and (min-width: 48em) {
  .medium-1 {
    width: 8.33333%;
  }
  .medium-push-1 {
    position: relative;
    left: 8.33333%;
  }
  .medium-pull-1 {
    position: relative;
    left: -8.33333%;
  }
  .medium-offset-0 {
    margin-left: 0%;
  }
  .medium-2 {
    width: 16.66667%;
  }
  .medium-push-2 {
    position: relative;
    left: 16.66667%;
  }
  .medium-pull-2 {
    position: relative;
    left: -16.66667%;
  }
  .medium-offset-1 {
    margin-left: 8.33333%;
  }
  .medium-3 {
    width: 25%;
  }
  .medium-push-3 {
    position: relative;
    left: 25%;
  }
  .medium-pull-3 {
    position: relative;
    left: -25%;
  }
  .medium-offset-2 {
    margin-left: 16.66667%;
  }
  .medium-4 {
    width: 33.33333%;
  }
  .medium-push-4 {
    position: relative;
    left: 33.33333%;
  }
  .medium-pull-4 {
    position: relative;
    left: -33.33333%;
  }
  .medium-offset-3 {
    margin-left: 25%;
  }
  .medium-5 {
    width: 41.66667%;
  }
  .medium-push-5 {
    position: relative;
    left: 41.66667%;
  }
  .medium-pull-5 {
    position: relative;
    left: -41.66667%;
  }
  .medium-offset-4 {
    margin-left: 33.33333%;
  }
  .medium-6 {
    width: 50%;
  }
  .medium-push-6 {
    position: relative;
    left: 50%;
  }
  .medium-pull-6 {
    position: relative;
    left: -50%;
  }
  .medium-offset-5 {
    margin-left: 41.66667%;
  }
  .medium-7 {
    width: 58.33333%;
  }
  .medium-push-7 {
    position: relative;
    left: 58.33333%;
  }
  .medium-pull-7 {
    position: relative;
    left: -58.33333%;
  }
  .medium-offset-6 {
    margin-left: 50%;
  }
  .medium-8 {
    width: 66.66667%;
  }
  .medium-push-8 {
    position: relative;
    left: 66.66667%;
  }
  .medium-pull-8 {
    position: relative;
    left: -66.66667%;
  }
  .medium-offset-7 {
    margin-left: 58.33333%;
  }
  .medium-9 {
    width: 75%;
  }
  .medium-push-9 {
    position: relative;
    left: 75%;
  }
  .medium-pull-9 {
    position: relative;
    left: -75%;
  }
  .medium-offset-8 {
    margin-left: 66.66667%;
  }
  .medium-10 {
    width: 83.33333%;
  }
  .medium-push-10 {
    position: relative;
    left: 83.33333%;
  }
  .medium-pull-10 {
    position: relative;
    left: -83.33333%;
  }
  .medium-offset-9 {
    margin-left: 75%;
  }
  .medium-11 {
    width: 91.66667%;
  }
  .medium-push-11 {
    position: relative;
    left: 91.66667%;
  }
  .medium-pull-11 {
    position: relative;
    left: -91.66667%;
  }
  .medium-offset-10 {
    margin-left: 83.33333%;
  }
  .medium-12 {
    width: 100%;
  }
  .medium-offset-11 {
    margin-left: 91.66667%;
  }
  .medium-up-1 > .column, .medium-up-1 > .columns {
    float: left;
    width: 100%;
  }
  .medium-up-1 > .column:nth-of-type(1n), .medium-up-1 > .columns:nth-of-type(1n) {
    clear: none;
  }
  .medium-up-1 > .column:nth-of-type(1n+1), .medium-up-1 > .columns:nth-of-type(1n+1) {
    clear: both;
  }
  .medium-up-1 > .column:last-child, .medium-up-1 > .columns:last-child {
    float: left;
  }
  .medium-up-2 > .column, .medium-up-2 > .columns {
    float: left;
    width: 50%;
  }
  .medium-up-2 > .column:nth-of-type(1n), .medium-up-2 > .columns:nth-of-type(1n) {
    clear: none;
  }
  .medium-up-2 > .column:nth-of-type(2n+1), .medium-up-2 > .columns:nth-of-type(2n+1) {
    clear: both;
  }
  .medium-up-2 > .column:last-child, .medium-up-2 > .columns:last-child {
    float: left;
  }
  .medium-up-3 > .column, .medium-up-3 > .columns {
    float: left;
    width: 33.33333%;
  }
  .medium-up-3 > .column:nth-of-type(1n), .medium-up-3 > .columns:nth-of-type(1n) {
    clear: none;
  }
  .medium-up-3 > .column:nth-of-type(3n+1), .medium-up-3 > .columns:nth-of-type(3n+1) {
    clear: both;
  }
  .medium-up-3 > .column:last-child, .medium-up-3 > .columns:last-child {
    float: left;
  }
  .medium-up-4 > .column, .medium-up-4 > .columns {
    float: left;
    width: 25%;
  }
  .medium-up-4 > .column:nth-of-type(1n), .medium-up-4 > .columns:nth-of-type(1n) {
    clear: none;
  }
  .medium-up-4 > .column:nth-of-type(4n+1), .medium-up-4 > .columns:nth-of-type(4n+1) {
    clear: both;
  }
  .medium-up-4 > .column:last-child, .medium-up-4 > .columns:last-child {
    float: left;
  }
  .medium-up-5 > .column, .medium-up-5 > .columns {
    float: left;
    width: 20%;
  }
  .medium-up-5 > .column:nth-of-type(1n), .medium-up-5 > .columns:nth-of-type(1n) {
    clear: none;
  }
  .medium-up-5 > .column:nth-of-type(5n+1), .medium-up-5 > .columns:nth-of-type(5n+1) {
    clear: both;
  }
  .medium-up-5 > .column:last-child, .medium-up-5 > .columns:last-child {
    float: left;
  }
  .medium-up-6 > .column, .medium-up-6 > .columns {
    float: left;
    width: 16.66667%;
  }
  .medium-up-6 > .column:nth-of-type(1n), .medium-up-6 > .columns:nth-of-type(1n) {
    clear: none;
  }
  .medium-up-6 > .column:nth-of-type(6n+1), .medium-up-6 > .columns:nth-of-type(6n+1) {
    clear: both;
  }
  .medium-up-6 > .column:last-child, .medium-up-6 > .columns:last-child {
    float: left;
  }
  .medium-up-7 > .column, .medium-up-7 > .columns {
    float: left;
    width: 14.28571%;
  }
  .medium-up-7 > .column:nth-of-type(1n), .medium-up-7 > .columns:nth-of-type(1n) {
    clear: none;
  }
  .medium-up-7 > .column:nth-of-type(7n+1), .medium-up-7 > .columns:nth-of-type(7n+1) {
    clear: both;
  }
  .medium-up-7 > .column:last-child, .medium-up-7 > .columns:last-child {
    float: left;
  }
  .medium-up-8 > .column, .medium-up-8 > .columns {
    float: left;
    width: 12.5%;
  }
  .medium-up-8 > .column:nth-of-type(1n), .medium-up-8 > .columns:nth-of-type(1n) {
    clear: none;
  }
  .medium-up-8 > .column:nth-of-type(8n+1), .medium-up-8 > .columns:nth-of-type(8n+1) {
    clear: both;
  }
  .medium-up-8 > .column:last-child, .medium-up-8 > .columns:last-child {
    float: left;
  }
  .medium-up-9 > .column, .medium-up-9 > .columns {
    float: left;
    width: 11.11111%;
  }
  .medium-up-9 > .column:nth-of-type(1n), .medium-up-9 > .columns:nth-of-type(1n) {
    clear: none;
  }
  .medium-up-9 > .column:nth-of-type(9n+1), .medium-up-9 > .columns:nth-of-type(9n+1) {
    clear: both;
  }
  .medium-up-9 > .column:last-child, .medium-up-9 > .columns:last-child {
    float: left;
  }
  .medium-up-10 > .column, .medium-up-10 > .columns {
    float: left;
    width: 10%;
  }
  .medium-up-10 > .column:nth-of-type(1n), .medium-up-10 > .columns:nth-of-type(1n) {
    clear: none;
  }
  .medium-up-10 > .column:nth-of-type(10n+1), .medium-up-10 > .columns:nth-of-type(10n+1) {
    clear: both;
  }
  .medium-up-10 > .column:last-child, .medium-up-10 > .columns:last-child {
    float: left;
  }
  .medium-up-11 > .column, .medium-up-11 > .columns {
    float: left;
    width: 9.09091%;
  }
  .medium-up-11 > .column:nth-of-type(1n), .medium-up-11 > .columns:nth-of-type(1n) {
    clear: none;
  }
  .medium-up-11 > .column:nth-of-type(11n+1), .medium-up-11 > .columns:nth-of-type(11n+1) {
    clear: both;
  }
  .medium-up-11 > .column:last-child, .medium-up-11 > .columns:last-child {
    float: left;
  }
  .medium-up-12 > .column, .medium-up-12 > .columns {
    float: left;
    width: 8.33333%;
  }
  .medium-up-12 > .column:nth-of-type(1n), .medium-up-12 > .columns:nth-of-type(1n) {
    clear: none;
  }
  .medium-up-12 > .column:nth-of-type(12n+1), .medium-up-12 > .columns:nth-of-type(12n+1) {
    clear: both;
  }
  .medium-up-12 > .column:last-child, .medium-up-12 > .columns:last-child {
    float: left;
  }
  .medium-collapse > .column, .medium-collapse > .columns {
    padding-right: 0;
    padding-left: 0;
  }
  .medium-collapse .row {
    margin-right: 0;
    margin-left: 0;
  }
  .expanded.row .medium-collapse.row {
    margin-right: 0;
    margin-left: 0;
  }
  .medium-uncollapse > .column, .medium-uncollapse > .columns {
    padding-right: 0.57143rem;
    padding-left: 0.57143rem;
  }
  .medium-centered {
    margin-right: auto;
    margin-left: auto;
  }
  .medium-centered, .medium-centered:last-child:not(:first-child) {
    float: none;
    clear: both;
  }
  .medium-uncentered,
  .medium-push-0,
  .medium-pull-0 {
    position: static;
    float: left;
    margin-right: 0;
    margin-left: 0;
  }
}

@media print, screen and (min-width: 64em) {
  .large-1 {
    width: 8.33333%;
  }
  .large-push-1 {
    position: relative;
    left: 8.33333%;
  }
  .large-pull-1 {
    position: relative;
    left: -8.33333%;
  }
  .large-offset-0 {
    margin-left: 0%;
  }
  .large-2 {
    width: 16.66667%;
  }
  .large-push-2 {
    position: relative;
    left: 16.66667%;
  }
  .large-pull-2 {
    position: relative;
    left: -16.66667%;
  }
  .large-offset-1 {
    margin-left: 8.33333%;
  }
  .large-3 {
    width: 25%;
  }
  .large-push-3 {
    position: relative;
    left: 25%;
  }
  .large-pull-3 {
    position: relative;
    left: -25%;
  }
  .large-offset-2 {
    margin-left: 16.66667%;
  }
  .large-4 {
    width: 33.33333%;
  }
  .large-push-4 {
    position: relative;
    left: 33.33333%;
  }
  .large-pull-4 {
    position: relative;
    left: -33.33333%;
  }
  .large-offset-3 {
    margin-left: 25%;
  }
  .large-5 {
    width: 41.66667%;
  }
  .large-push-5 {
    position: relative;
    left: 41.66667%;
  }
  .large-pull-5 {
    position: relative;
    left: -41.66667%;
  }
  .large-offset-4 {
    margin-left: 33.33333%;
  }
  .large-6 {
    width: 50%;
  }
  .large-push-6 {
    position: relative;
    left: 50%;
  }
  .large-pull-6 {
    position: relative;
    left: -50%;
  }
  .large-offset-5 {
    margin-left: 41.66667%;
  }
  .large-7 {
    width: 58.33333%;
  }
  .large-push-7 {
    position: relative;
    left: 58.33333%;
  }
  .large-pull-7 {
    position: relative;
    left: -58.33333%;
  }
  .large-offset-6 {
    margin-left: 50%;
  }
  .large-8 {
    width: 66.66667%;
  }
  .large-push-8 {
    position: relative;
    left: 66.66667%;
  }
  .large-pull-8 {
    position: relative;
    left: -66.66667%;
  }
  .large-offset-7 {
    margin-left: 58.33333%;
  }
  .large-9 {
    width: 75%;
  }
  .large-push-9 {
    position: relative;
    left: 75%;
  }
  .large-pull-9 {
    position: relative;
    left: -75%;
  }
  .large-offset-8 {
    margin-left: 66.66667%;
  }
  .large-10 {
    width: 83.33333%;
  }
  .large-push-10 {
    position: relative;
    left: 83.33333%;
  }
  .large-pull-10 {
    position: relative;
    left: -83.33333%;
  }
  .large-offset-9 {
    margin-left: 75%;
  }
  .large-11 {
    width: 91.66667%;
  }
  .large-push-11 {
    position: relative;
    left: 91.66667%;
  }
  .large-pull-11 {
    position: relative;
    left: -91.66667%;
  }
  .large-offset-10 {
    margin-left: 83.33333%;
  }
  .large-12 {
    width: 100%;
  }
  .large-offset-11 {
    margin-left: 91.66667%;
  }
  .large-up-1 > .column, .large-up-1 > .columns {
    float: left;
    width: 100%;
  }
  .large-up-1 > .column:nth-of-type(1n), .large-up-1 > .columns:nth-of-type(1n) {
    clear: none;
  }
  .large-up-1 > .column:nth-of-type(1n+1), .large-up-1 > .columns:nth-of-type(1n+1) {
    clear: both;
  }
  .large-up-1 > .column:last-child, .large-up-1 > .columns:last-child {
    float: left;
  }
  .large-up-2 > .column, .large-up-2 > .columns {
    float: left;
    width: 50%;
  }
  .large-up-2 > .column:nth-of-type(1n), .large-up-2 > .columns:nth-of-type(1n) {
    clear: none;
  }
  .large-up-2 > .column:nth-of-type(2n+1), .large-up-2 > .columns:nth-of-type(2n+1) {
    clear: both;
  }
  .large-up-2 > .column:last-child, .large-up-2 > .columns:last-child {
    float: left;
  }
  .large-up-3 > .column, .large-up-3 > .columns {
    float: left;
    width: 33.33333%;
  }
  .large-up-3 > .column:nth-of-type(1n), .large-up-3 > .columns:nth-of-type(1n) {
    clear: none;
  }
  .large-up-3 > .column:nth-of-type(3n+1), .large-up-3 > .columns:nth-of-type(3n+1) {
    clear: both;
  }
  .large-up-3 > .column:last-child, .large-up-3 > .columns:last-child {
    float: left;
  }
  .large-up-4 > .column, .large-up-4 > .columns {
    float: left;
    width: 25%;
  }
  .large-up-4 > .column:nth-of-type(1n), .large-up-4 > .columns:nth-of-type(1n) {
    clear: none;
  }
  .large-up-4 > .column:nth-of-type(4n+1), .large-up-4 > .columns:nth-of-type(4n+1) {
    clear: both;
  }
  .large-up-4 > .column:last-child, .large-up-4 > .columns:last-child {
    float: left;
  }
  .large-up-5 > .column, .large-up-5 > .columns {
    float: left;
    width: 20%;
  }
  .large-up-5 > .column:nth-of-type(1n), .large-up-5 > .columns:nth-of-type(1n) {
    clear: none;
  }
  .large-up-5 > .column:nth-of-type(5n+1), .large-up-5 > .columns:nth-of-type(5n+1) {
    clear: both;
  }
  .large-up-5 > .column:last-child, .large-up-5 > .columns:last-child {
    float: left;
  }
  .large-up-6 > .column, .large-up-6 > .columns {
    float: left;
    width: 16.66667%;
  }
  .large-up-6 > .column:nth-of-type(1n), .large-up-6 > .columns:nth-of-type(1n) {
    clear: none;
  }
  .large-up-6 > .column:nth-of-type(6n+1), .large-up-6 > .columns:nth-of-type(6n+1) {
    clear: both;
  }
  .large-up-6 > .column:last-child, .large-up-6 > .columns:last-child {
    float: left;
  }
  .large-up-7 > .column, .large-up-7 > .columns {
    float: left;
    width: 14.28571%;
  }
  .large-up-7 > .column:nth-of-type(1n), .large-up-7 > .columns:nth-of-type(1n) {
    clear: none;
  }
  .large-up-7 > .column:nth-of-type(7n+1), .large-up-7 > .columns:nth-of-type(7n+1) {
    clear: both;
  }
  .large-up-7 > .column:last-child, .large-up-7 > .columns:last-child {
    float: left;
  }
  .large-up-8 > .column, .large-up-8 > .columns {
    float: left;
    width: 12.5%;
  }
  .large-up-8 > .column:nth-of-type(1n), .large-up-8 > .columns:nth-of-type(1n) {
    clear: none;
  }
  .large-up-8 > .column:nth-of-type(8n+1), .large-up-8 > .columns:nth-of-type(8n+1) {
    clear: both;
  }
  .large-up-8 > .column:last-child, .large-up-8 > .columns:last-child {
    float: left;
  }
  .large-up-9 > .column, .large-up-9 > .columns {
    float: left;
    width: 11.11111%;
  }
  .large-up-9 > .column:nth-of-type(1n), .large-up-9 > .columns:nth-of-type(1n) {
    clear: none;
  }
  .large-up-9 > .column:nth-of-type(9n+1), .large-up-9 > .columns:nth-of-type(9n+1) {
    clear: both;
  }
  .large-up-9 > .column:last-child, .large-up-9 > .columns:last-child {
    float: left;
  }
  .large-up-10 > .column, .large-up-10 > .columns {
    float: left;
    width: 10%;
  }
  .large-up-10 > .column:nth-of-type(1n), .large-up-10 > .columns:nth-of-type(1n) {
    clear: none;
  }
  .large-up-10 > .column:nth-of-type(10n+1), .large-up-10 > .columns:nth-of-type(10n+1) {
    clear: both;
  }
  .large-up-10 > .column:last-child, .large-up-10 > .columns:last-child {
    float: left;
  }
  .large-up-11 > .column, .large-up-11 > .columns {
    float: left;
    width: 9.09091%;
  }
  .large-up-11 > .column:nth-of-type(1n), .large-up-11 > .columns:nth-of-type(1n) {
    clear: none;
  }
  .large-up-11 > .column:nth-of-type(11n+1), .large-up-11 > .columns:nth-of-type(11n+1) {
    clear: both;
  }
  .large-up-11 > .column:last-child, .large-up-11 > .columns:last-child {
    float: left;
  }
  .large-up-12 > .column, .large-up-12 > .columns {
    float: left;
    width: 8.33333%;
  }
  .large-up-12 > .column:nth-of-type(1n), .large-up-12 > .columns:nth-of-type(1n) {
    clear: none;
  }
  .large-up-12 > .column:nth-of-type(12n+1), .large-up-12 > .columns:nth-of-type(12n+1) {
    clear: both;
  }
  .large-up-12 > .column:last-child, .large-up-12 > .columns:last-child {
    float: left;
  }
  .large-collapse > .column, .large-collapse > .columns {
    padding-right: 0;
    padding-left: 0;
  }
  .large-collapse .row {
    margin-right: 0;
    margin-left: 0;
  }
  .expanded.row .large-collapse.row {
    margin-right: 0;
    margin-left: 0;
  }
  .large-uncollapse > .column, .large-uncollapse > .columns {
    padding-right: 0.57143rem;
    padding-left: 0.57143rem;
  }
  .large-centered {
    margin-right: auto;
    margin-left: auto;
  }
  .large-centered, .large-centered:last-child:not(:first-child) {
    float: none;
    clear: both;
  }
  .large-uncentered,
  .large-push-0,
  .large-pull-0 {
    position: static;
    float: left;
    margin-right: 0;
    margin-left: 0;
  }
}

@media screen and (min-width: 75em) {
  .xlarge-1 {
    width: 8.33333%;
  }
  .xlarge-push-1 {
    position: relative;
    left: 8.33333%;
  }
  .xlarge-pull-1 {
    position: relative;
    left: -8.33333%;
  }
  .xlarge-offset-0 {
    margin-left: 0%;
  }
  .xlarge-2 {
    width: 16.66667%;
  }
  .xlarge-push-2 {
    position: relative;
    left: 16.66667%;
  }
  .xlarge-pull-2 {
    position: relative;
    left: -16.66667%;
  }
  .xlarge-offset-1 {
    margin-left: 8.33333%;
  }
  .xlarge-3 {
    width: 25%;
  }
  .xlarge-push-3 {
    position: relative;
    left: 25%;
  }
  .xlarge-pull-3 {
    position: relative;
    left: -25%;
  }
  .xlarge-offset-2 {
    margin-left: 16.66667%;
  }
  .xlarge-4 {
    width: 33.33333%;
  }
  .xlarge-push-4 {
    position: relative;
    left: 33.33333%;
  }
  .xlarge-pull-4 {
    position: relative;
    left: -33.33333%;
  }
  .xlarge-offset-3 {
    margin-left: 25%;
  }
  .xlarge-5 {
    width: 41.66667%;
  }
  .xlarge-push-5 {
    position: relative;
    left: 41.66667%;
  }
  .xlarge-pull-5 {
    position: relative;
    left: -41.66667%;
  }
  .xlarge-offset-4 {
    margin-left: 33.33333%;
  }
  .xlarge-6 {
    width: 50%;
  }
  .xlarge-push-6 {
    position: relative;
    left: 50%;
  }
  .xlarge-pull-6 {
    position: relative;
    left: -50%;
  }
  .xlarge-offset-5 {
    margin-left: 41.66667%;
  }
  .xlarge-7 {
    width: 58.33333%;
  }
  .xlarge-push-7 {
    position: relative;
    left: 58.33333%;
  }
  .xlarge-pull-7 {
    position: relative;
    left: -58.33333%;
  }
  .xlarge-offset-6 {
    margin-left: 50%;
  }
  .xlarge-8 {
    width: 66.66667%;
  }
  .xlarge-push-8 {
    position: relative;
    left: 66.66667%;
  }
  .xlarge-pull-8 {
    position: relative;
    left: -66.66667%;
  }
  .xlarge-offset-7 {
    margin-left: 58.33333%;
  }
  .xlarge-9 {
    width: 75%;
  }
  .xlarge-push-9 {
    position: relative;
    left: 75%;
  }
  .xlarge-pull-9 {
    position: relative;
    left: -75%;
  }
  .xlarge-offset-8 {
    margin-left: 66.66667%;
  }
  .xlarge-10 {
    width: 83.33333%;
  }
  .xlarge-push-10 {
    position: relative;
    left: 83.33333%;
  }
  .xlarge-pull-10 {
    position: relative;
    left: -83.33333%;
  }
  .xlarge-offset-9 {
    margin-left: 75%;
  }
  .xlarge-11 {
    width: 91.66667%;
  }
  .xlarge-push-11 {
    position: relative;
    left: 91.66667%;
  }
  .xlarge-pull-11 {
    position: relative;
    left: -91.66667%;
  }
  .xlarge-offset-10 {
    margin-left: 83.33333%;
  }
  .xlarge-12 {
    width: 100%;
  }
  .xlarge-offset-11 {
    margin-left: 91.66667%;
  }
  .xlarge-up-1 > .column, .xlarge-up-1 > .columns {
    float: left;
    width: 100%;
  }
  .xlarge-up-1 > .column:nth-of-type(1n), .xlarge-up-1 > .columns:nth-of-type(1n) {
    clear: none;
  }
  .xlarge-up-1 > .column:nth-of-type(1n+1), .xlarge-up-1 > .columns:nth-of-type(1n+1) {
    clear: both;
  }
  .xlarge-up-1 > .column:last-child, .xlarge-up-1 > .columns:last-child {
    float: left;
  }
  .xlarge-up-2 > .column, .xlarge-up-2 > .columns {
    float: left;
    width: 50%;
  }
  .xlarge-up-2 > .column:nth-of-type(1n), .xlarge-up-2 > .columns:nth-of-type(1n) {
    clear: none;
  }
  .xlarge-up-2 > .column:nth-of-type(2n+1), .xlarge-up-2 > .columns:nth-of-type(2n+1) {
    clear: both;
  }
  .xlarge-up-2 > .column:last-child, .xlarge-up-2 > .columns:last-child {
    float: left;
  }
  .xlarge-up-3 > .column, .xlarge-up-3 > .columns {
    float: left;
    width: 33.33333%;
  }
  .xlarge-up-3 > .column:nth-of-type(1n), .xlarge-up-3 > .columns:nth-of-type(1n) {
    clear: none;
  }
  .xlarge-up-3 > .column:nth-of-type(3n+1), .xlarge-up-3 > .columns:nth-of-type(3n+1) {
    clear: both;
  }
  .xlarge-up-3 > .column:last-child, .xlarge-up-3 > .columns:last-child {
    float: left;
  }
  .xlarge-up-4 > .column, .xlarge-up-4 > .columns {
    float: left;
    width: 25%;
  }
  .xlarge-up-4 > .column:nth-of-type(1n), .xlarge-up-4 > .columns:nth-of-type(1n) {
    clear: none;
  }
  .xlarge-up-4 > .column:nth-of-type(4n+1), .xlarge-up-4 > .columns:nth-of-type(4n+1) {
    clear: both;
  }
  .xlarge-up-4 > .column:last-child, .xlarge-up-4 > .columns:last-child {
    float: left;
  }
  .xlarge-up-5 > .column, .xlarge-up-5 > .columns {
    float: left;
    width: 20%;
  }
  .xlarge-up-5 > .column:nth-of-type(1n), .xlarge-up-5 > .columns:nth-of-type(1n) {
    clear: none;
  }
  .xlarge-up-5 > .column:nth-of-type(5n+1), .xlarge-up-5 > .columns:nth-of-type(5n+1) {
    clear: both;
  }
  .xlarge-up-5 > .column:last-child, .xlarge-up-5 > .columns:last-child {
    float: left;
  }
  .xlarge-up-6 > .column, .xlarge-up-6 > .columns {
    float: left;
    width: 16.66667%;
  }
  .xlarge-up-6 > .column:nth-of-type(1n), .xlarge-up-6 > .columns:nth-of-type(1n) {
    clear: none;
  }
  .xlarge-up-6 > .column:nth-of-type(6n+1), .xlarge-up-6 > .columns:nth-of-type(6n+1) {
    clear: both;
  }
  .xlarge-up-6 > .column:last-child, .xlarge-up-6 > .columns:last-child {
    float: left;
  }
  .xlarge-up-7 > .column, .xlarge-up-7 > .columns {
    float: left;
    width: 14.28571%;
  }
  .xlarge-up-7 > .column:nth-of-type(1n), .xlarge-up-7 > .columns:nth-of-type(1n) {
    clear: none;
  }
  .xlarge-up-7 > .column:nth-of-type(7n+1), .xlarge-up-7 > .columns:nth-of-type(7n+1) {
    clear: both;
  }
  .xlarge-up-7 > .column:last-child, .xlarge-up-7 > .columns:last-child {
    float: left;
  }
  .xlarge-up-8 > .column, .xlarge-up-8 > .columns {
    float: left;
    width: 12.5%;
  }
  .xlarge-up-8 > .column:nth-of-type(1n), .xlarge-up-8 > .columns:nth-of-type(1n) {
    clear: none;
  }
  .xlarge-up-8 > .column:nth-of-type(8n+1), .xlarge-up-8 > .columns:nth-of-type(8n+1) {
    clear: both;
  }
  .xlarge-up-8 > .column:last-child, .xlarge-up-8 > .columns:last-child {
    float: left;
  }
  .xlarge-up-9 > .column, .xlarge-up-9 > .columns {
    float: left;
    width: 11.11111%;
  }
  .xlarge-up-9 > .column:nth-of-type(1n), .xlarge-up-9 > .columns:nth-of-type(1n) {
    clear: none;
  }
  .xlarge-up-9 > .column:nth-of-type(9n+1), .xlarge-up-9 > .columns:nth-of-type(9n+1) {
    clear: both;
  }
  .xlarge-up-9 > .column:last-child, .xlarge-up-9 > .columns:last-child {
    float: left;
  }
  .xlarge-up-10 > .column, .xlarge-up-10 > .columns {
    float: left;
    width: 10%;
  }
  .xlarge-up-10 > .column:nth-of-type(1n), .xlarge-up-10 > .columns:nth-of-type(1n) {
    clear: none;
  }
  .xlarge-up-10 > .column:nth-of-type(10n+1), .xlarge-up-10 > .columns:nth-of-type(10n+1) {
    clear: both;
  }
  .xlarge-up-10 > .column:last-child, .xlarge-up-10 > .columns:last-child {
    float: left;
  }
  .xlarge-up-11 > .column, .xlarge-up-11 > .columns {
    float: left;
    width: 9.09091%;
  }
  .xlarge-up-11 > .column:nth-of-type(1n), .xlarge-up-11 > .columns:nth-of-type(1n) {
    clear: none;
  }
  .xlarge-up-11 > .column:nth-of-type(11n+1), .xlarge-up-11 > .columns:nth-of-type(11n+1) {
    clear: both;
  }
  .xlarge-up-11 > .column:last-child, .xlarge-up-11 > .columns:last-child {
    float: left;
  }
  .xlarge-up-12 > .column, .xlarge-up-12 > .columns {
    float: left;
    width: 8.33333%;
  }
  .xlarge-up-12 > .column:nth-of-type(1n), .xlarge-up-12 > .columns:nth-of-type(1n) {
    clear: none;
  }
  .xlarge-up-12 > .column:nth-of-type(12n+1), .xlarge-up-12 > .columns:nth-of-type(12n+1) {
    clear: both;
  }
  .xlarge-up-12 > .column:last-child, .xlarge-up-12 > .columns:last-child {
    float: left;
  }
  .xlarge-collapse > .column, .xlarge-collapse > .columns {
    padding-right: 0;
    padding-left: 0;
  }
  .xlarge-collapse .row {
    margin-right: 0;
    margin-left: 0;
  }
  .expanded.row .xlarge-collapse.row {
    margin-right: 0;
    margin-left: 0;
  }
  .xlarge-uncollapse > .column, .xlarge-uncollapse > .columns {
    padding-right: 0.57143rem;
    padding-left: 0.57143rem;
  }
  .xlarge-centered {
    margin-right: auto;
    margin-left: auto;
  }
  .xlarge-centered, .xlarge-centered:last-child:not(:first-child) {
    float: none;
    clear: both;
  }
  .xlarge-uncentered,
  .xlarge-push-0,
  .xlarge-pull-0 {
    position: static;
    float: left;
    margin-right: 0;
    margin-left: 0;
  }
}

@media screen and (min-width: 90em) {
  .xxlarge-1 {
    width: 8.33333%;
  }
  .xxlarge-push-1 {
    position: relative;
    left: 8.33333%;
  }
  .xxlarge-pull-1 {
    position: relative;
    left: -8.33333%;
  }
  .xxlarge-offset-0 {
    margin-left: 0%;
  }
  .xxlarge-2 {
    width: 16.66667%;
  }
  .xxlarge-push-2 {
    position: relative;
    left: 16.66667%;
  }
  .xxlarge-pull-2 {
    position: relative;
    left: -16.66667%;
  }
  .xxlarge-offset-1 {
    margin-left: 8.33333%;
  }
  .xxlarge-3 {
    width: 25%;
  }
  .xxlarge-push-3 {
    position: relative;
    left: 25%;
  }
  .xxlarge-pull-3 {
    position: relative;
    left: -25%;
  }
  .xxlarge-offset-2 {
    margin-left: 16.66667%;
  }
  .xxlarge-4 {
    width: 33.33333%;
  }
  .xxlarge-push-4 {
    position: relative;
    left: 33.33333%;
  }
  .xxlarge-pull-4 {
    position: relative;
    left: -33.33333%;
  }
  .xxlarge-offset-3 {
    margin-left: 25%;
  }
  .xxlarge-5 {
    width: 41.66667%;
  }
  .xxlarge-push-5 {
    position: relative;
    left: 41.66667%;
  }
  .xxlarge-pull-5 {
    position: relative;
    left: -41.66667%;
  }
  .xxlarge-offset-4 {
    margin-left: 33.33333%;
  }
  .xxlarge-6 {
    width: 50%;
  }
  .xxlarge-push-6 {
    position: relative;
    left: 50%;
  }
  .xxlarge-pull-6 {
    position: relative;
    left: -50%;
  }
  .xxlarge-offset-5 {
    margin-left: 41.66667%;
  }
  .xxlarge-7 {
    width: 58.33333%;
  }
  .xxlarge-push-7 {
    position: relative;
    left: 58.33333%;
  }
  .xxlarge-pull-7 {
    position: relative;
    left: -58.33333%;
  }
  .xxlarge-offset-6 {
    margin-left: 50%;
  }
  .xxlarge-8 {
    width: 66.66667%;
  }
  .xxlarge-push-8 {
    position: relative;
    left: 66.66667%;
  }
  .xxlarge-pull-8 {
    position: relative;
    left: -66.66667%;
  }
  .xxlarge-offset-7 {
    margin-left: 58.33333%;
  }
  .xxlarge-9 {
    width: 75%;
  }
  .xxlarge-push-9 {
    position: relative;
    left: 75%;
  }
  .xxlarge-pull-9 {
    position: relative;
    left: -75%;
  }
  .xxlarge-offset-8 {
    margin-left: 66.66667%;
  }
  .xxlarge-10 {
    width: 83.33333%;
  }
  .xxlarge-push-10 {
    position: relative;
    left: 83.33333%;
  }
  .xxlarge-pull-10 {
    position: relative;
    left: -83.33333%;
  }
  .xxlarge-offset-9 {
    margin-left: 75%;
  }
  .xxlarge-11 {
    width: 91.66667%;
  }
  .xxlarge-push-11 {
    position: relative;
    left: 91.66667%;
  }
  .xxlarge-pull-11 {
    position: relative;
    left: -91.66667%;
  }
  .xxlarge-offset-10 {
    margin-left: 83.33333%;
  }
  .xxlarge-12 {
    width: 100%;
  }
  .xxlarge-offset-11 {
    margin-left: 91.66667%;
  }
  .xxlarge-up-1 > .column, .xxlarge-up-1 > .columns {
    float: left;
    width: 100%;
  }
  .xxlarge-up-1 > .column:nth-of-type(1n), .xxlarge-up-1 > .columns:nth-of-type(1n) {
    clear: none;
  }
  .xxlarge-up-1 > .column:nth-of-type(1n+1), .xxlarge-up-1 > .columns:nth-of-type(1n+1) {
    clear: both;
  }
  .xxlarge-up-1 > .column:last-child, .xxlarge-up-1 > .columns:last-child {
    float: left;
  }
  .xxlarge-up-2 > .column, .xxlarge-up-2 > .columns {
    float: left;
    width: 50%;
  }
  .xxlarge-up-2 > .column:nth-of-type(1n), .xxlarge-up-2 > .columns:nth-of-type(1n) {
    clear: none;
  }
  .xxlarge-up-2 > .column:nth-of-type(2n+1), .xxlarge-up-2 > .columns:nth-of-type(2n+1) {
    clear: both;
  }
  .xxlarge-up-2 > .column:last-child, .xxlarge-up-2 > .columns:last-child {
    float: left;
  }
  .xxlarge-up-3 > .column, .xxlarge-up-3 > .columns {
    float: left;
    width: 33.33333%;
  }
  .xxlarge-up-3 > .column:nth-of-type(1n), .xxlarge-up-3 > .columns:nth-of-type(1n) {
    clear: none;
  }
  .xxlarge-up-3 > .column:nth-of-type(3n+1), .xxlarge-up-3 > .columns:nth-of-type(3n+1) {
    clear: both;
  }
  .xxlarge-up-3 > .column:last-child, .xxlarge-up-3 > .columns:last-child {
    float: left;
  }
  .xxlarge-up-4 > .column, .xxlarge-up-4 > .columns {
    float: left;
    width: 25%;
  }
  .xxlarge-up-4 > .column:nth-of-type(1n), .xxlarge-up-4 > .columns:nth-of-type(1n) {
    clear: none;
  }
  .xxlarge-up-4 > .column:nth-of-type(4n+1), .xxlarge-up-4 > .columns:nth-of-type(4n+1) {
    clear: both;
  }
  .xxlarge-up-4 > .column:last-child, .xxlarge-up-4 > .columns:last-child {
    float: left;
  }
  .xxlarge-up-5 > .column, .xxlarge-up-5 > .columns {
    float: left;
    width: 20%;
  }
  .xxlarge-up-5 > .column:nth-of-type(1n), .xxlarge-up-5 > .columns:nth-of-type(1n) {
    clear: none;
  }
  .xxlarge-up-5 > .column:nth-of-type(5n+1), .xxlarge-up-5 > .columns:nth-of-type(5n+1) {
    clear: both;
  }
  .xxlarge-up-5 > .column:last-child, .xxlarge-up-5 > .columns:last-child {
    float: left;
  }
  .xxlarge-up-6 > .column, .xxlarge-up-6 > .columns {
    float: left;
    width: 16.66667%;
  }
  .xxlarge-up-6 > .column:nth-of-type(1n), .xxlarge-up-6 > .columns:nth-of-type(1n) {
    clear: none;
  }
  .xxlarge-up-6 > .column:nth-of-type(6n+1), .xxlarge-up-6 > .columns:nth-of-type(6n+1) {
    clear: both;
  }
  .xxlarge-up-6 > .column:last-child, .xxlarge-up-6 > .columns:last-child {
    float: left;
  }
  .xxlarge-up-7 > .column, .xxlarge-up-7 > .columns {
    float: left;
    width: 14.28571%;
  }
  .xxlarge-up-7 > .column:nth-of-type(1n), .xxlarge-up-7 > .columns:nth-of-type(1n) {
    clear: none;
  }
  .xxlarge-up-7 > .column:nth-of-type(7n+1), .xxlarge-up-7 > .columns:nth-of-type(7n+1) {
    clear: both;
  }
  .xxlarge-up-7 > .column:last-child, .xxlarge-up-7 > .columns:last-child {
    float: left;
  }
  .xxlarge-up-8 > .column, .xxlarge-up-8 > .columns {
    float: left;
    width: 12.5%;
  }
  .xxlarge-up-8 > .column:nth-of-type(1n), .xxlarge-up-8 > .columns:nth-of-type(1n) {
    clear: none;
  }
  .xxlarge-up-8 > .column:nth-of-type(8n+1), .xxlarge-up-8 > .columns:nth-of-type(8n+1) {
    clear: both;
  }
  .xxlarge-up-8 > .column:last-child, .xxlarge-up-8 > .columns:last-child {
    float: left;
  }
  .xxlarge-up-9 > .column, .xxlarge-up-9 > .columns {
    float: left;
    width: 11.11111%;
  }
  .xxlarge-up-9 > .column:nth-of-type(1n), .xxlarge-up-9 > .columns:nth-of-type(1n) {
    clear: none;
  }
  .xxlarge-up-9 > .column:nth-of-type(9n+1), .xxlarge-up-9 > .columns:nth-of-type(9n+1) {
    clear: both;
  }
  .xxlarge-up-9 > .column:last-child, .xxlarge-up-9 > .columns:last-child {
    float: left;
  }
  .xxlarge-up-10 > .column, .xxlarge-up-10 > .columns {
    float: left;
    width: 10%;
  }
  .xxlarge-up-10 > .column:nth-of-type(1n), .xxlarge-up-10 > .columns:nth-of-type(1n) {
    clear: none;
  }
  .xxlarge-up-10 > .column:nth-of-type(10n+1), .xxlarge-up-10 > .columns:nth-of-type(10n+1) {
    clear: both;
  }
  .xxlarge-up-10 > .column:last-child, .xxlarge-up-10 > .columns:last-child {
    float: left;
  }
  .xxlarge-up-11 > .column, .xxlarge-up-11 > .columns {
    float: left;
    width: 9.09091%;
  }
  .xxlarge-up-11 > .column:nth-of-type(1n), .xxlarge-up-11 > .columns:nth-of-type(1n) {
    clear: none;
  }
  .xxlarge-up-11 > .column:nth-of-type(11n+1), .xxlarge-up-11 > .columns:nth-of-type(11n+1) {
    clear: both;
  }
  .xxlarge-up-11 > .column:last-child, .xxlarge-up-11 > .columns:last-child {
    float: left;
  }
  .xxlarge-up-12 > .column, .xxlarge-up-12 > .columns {
    float: left;
    width: 8.33333%;
  }
  .xxlarge-up-12 > .column:nth-of-type(1n), .xxlarge-up-12 > .columns:nth-of-type(1n) {
    clear: none;
  }
  .xxlarge-up-12 > .column:nth-of-type(12n+1), .xxlarge-up-12 > .columns:nth-of-type(12n+1) {
    clear: both;
  }
  .xxlarge-up-12 > .column:last-child, .xxlarge-up-12 > .columns:last-child {
    float: left;
  }
  .xxlarge-collapse > .column, .xxlarge-collapse > .columns {
    padding-right: 0;
    padding-left: 0;
  }
  .xxlarge-collapse .row {
    margin-right: 0;
    margin-left: 0;
  }
  .expanded.row .xxlarge-collapse.row {
    margin-right: 0;
    margin-left: 0;
  }
  .xxlarge-uncollapse > .column, .xxlarge-uncollapse > .columns {
    padding-right: 0.57143rem;
    padding-left: 0.57143rem;
  }
  .xxlarge-centered {
    margin-right: auto;
    margin-left: auto;
  }
  .xxlarge-centered, .xxlarge-centered:last-child:not(:first-child) {
    float: none;
    clear: both;
  }
  .xxlarge-uncentered,
  .xxlarge-push-0,
  .xxlarge-pull-0 {
    position: static;
    float: left;
    margin-right: 0;
    margin-left: 0;
  }
}

.column-block {
  margin-bottom: 0.71429rem;
}

.column-block > :last-child {
  margin-bottom: 0;
}

@media print, screen and (min-width: 48em) {
  .column-block {
    margin-bottom: 1.14286rem;
  }
  .column-block > :last-child {
    margin-bottom: 0;
  }
}

@media print, screen and (min-width: 64em) {
  .column-block {
    margin-bottom: 1.14286rem;
  }
  .column-block > :last-child {
    margin-bottom: 0;
  }
}

div,
dl,
dt,
dd,
ul,
ol,
li,
h1,
h2,
h3,
h4,
h5,
h6,
pre,
form,
p,
blockquote,
th,
td {
  margin: 0;
  padding: 0;
}

p {
  margin-bottom: 1rem;
  font-size: inherit;
  line-height: 1.3;
  text-rendering: optimizeLegibility;
}

em,
i {
  font-style: italic;
  line-height: inherit;
}

strong,
b {
  font-weight: bold;
  line-height: inherit;
}

small {
  font-size: 80%;
  line-height: inherit;
}

h1,
h2,
h3,
h4,
h5,
h6 {
  font-family: Helvetica, Arial, sans-serif;
  font-style: normal;
  font-weight: bold;
  color: inherit;
  text-rendering: optimizeLegibility;
}

h1 small,
h2 small,
h3 small,
h4 small,
h5 small,
h6 small {
  line-height: 0;
  color: #dddddd;
}

h1 {
  font-size: 1.28571rem;
  line-height: 1.3;
  margin-top: 0;
  margin-bottom: 0.5rem;
}

h2 {
  font-size: 1.14286rem;
  line-height: 1.3;
  margin-top: 0;
  margin-bottom: 0.5rem;
}

h3 {
  font-size: 1rem;
  line-height: 1.3;
  margin-top: 0;
  margin-bottom: 0.5rem;
}

h4 {
  font-size: 1rem;
  line-height: 1.3;
  margin-top: 0;
  margin-bottom: 0.5rem;
}

h5 {
  font-size: 1rem;
  line-height: 1.3;
  margin-top: 0;
  margin-bottom: 0.5rem;
}

h6 {
  font-size: 1rem;
  line-height: 1.3;
  margin-top: 0;
  margin-bottom: 0.5rem;
}

@media print, screen and (min-width: 48em) {
  h1 {
    font-size: 1.42857rem;
  }
  h2 {
    font-size: 1.14286rem;
  }
  h3 {
    font-size: 1rem;
  }
  h4 {
    font-size: 1rem;
  }
  h5 {
    font-size: 1rem;
  }
  h6 {
    font-size: 1rem;
  }
}

@media print, screen and (min-width: 64em) {
  h1 {
    font-size: 1.42857rem;
  }
  h2 {
    font-size: 1.14286rem;
  }
  h3 {
    font-size: 1rem;
  }
  h4 {
    font-size: 1rem;
  }
  h5 {
    font-size: 1rem;
  }
  h6 {
    font-size: 1rem;
  }
}

a {
  line-height: inherit;
  color: #1153AD;
  text-decoration: none;
  cursor: pointer;
}

a:hover, a:focus {
  color: #0f4795;
}

a img {
  border: 0;
}

hr {
  clear: both;
  max-width: 92.85714rem;
  height: 0;
  margin: 1.42857rem auto;
  border-top: 0;
  border-right: 0;
  border-bottom: 1px solid #dddddd;
  border-left: 0;
}

ul,
ol,
dl {
  margin-bottom: 1rem;
  list-style-position: outside;
  line-height: 1.3;
}

li {
  font-size: inherit;
}

ul {
  margin-left: 1.25rem;
  list-style-type: disc;
}

ol {
  margin-left: 1.25rem;
}

ul ul, ol ul, ul ol, ol ol {
  margin-left: 1.25rem;
  margin-bottom: 0;
}

dl {
  margin-bottom: 1rem;
}

dl dt {
  margin-bottom: 0.3rem;
  font-weight: bold;
}

blockquote {
  margin: 0 0 1rem;
  padding: 0.64286rem 1.42857rem 0 1.35714rem;
  border-left: 1px solid #dddddd;
}

blockquote, blockquote p {
  line-height: 1.3;
  color: #79796A;
}

cite {
  display: block;
  font-size: 0.92857rem;
  color: #79796A;
}

cite:before {
  content: "— ";
}

abbr, abbr[title] {
  border-bottom: 1px dotted #0a0a0a;
  cursor: help;
  text-decoration: none;
}

figure {
  margin: 0;
}

code {
  padding: 0.14286rem 0.35714rem 0.07143rem;
  border: 1px solid #dddddd;
  background-color: #e8e5e5;
  font-family: Consolas, "Liberation Mono", Courier, monospace;
  font-weight: normal;
  color: #0a0a0a;
}

kbd {
  margin: 0;
  padding: 0.14286rem 0.28571rem 0;
  background-color: #e8e5e5;
  font-family: Consolas, "Liberation Mono", Courier, monospace;
  color: #0a0a0a;
  border-radius: 0.18rem;
}

.subheader {
  margin-top: 0.2rem;
  margin-bottom: 0.5rem;
  font-weight: normal;
  line-height: 1.4;
  color: #79796A;
}

.lead {
  font-size: 17.5px;
  line-height: 1.6;
}

.stat {
  font-size: 2.5rem;
  line-height: 1;
}

p + .stat {
  margin-top: -1rem;
}

ul.no-bullet, ol.no-bullet {
  margin-left: 0;
  list-style: none;
}

.text-left {
  text-align: left;
}

.text-right {
  text-align: right;
}

.text-center {
  text-align: center;
}

.text-justify {
  text-align: justify;
}

@media print, screen and (min-width: 48em) {
  .medium-text-left {
    text-align: left;
  }
  .medium-text-right {
    text-align: right;
  }
  .medium-text-center {
    text-align: center;
  }
  .medium-text-justify {
    text-align: justify;
  }
}

@media print, screen and (min-width: 64em) {
  .large-text-left {
    text-align: left;
  }
  .large-text-right {
    text-align: right;
  }
  .large-text-center {
    text-align: center;
  }
  .large-text-justify {
    text-align: justify;
  }
}

@media screen and (min-width: 75em) {
  .xlarge-text-left {
    text-align: left;
  }
  .xlarge-text-right {
    text-align: right;
  }
  .xlarge-text-center {
    text-align: center;
  }
  .xlarge-text-justify {
    text-align: justify;
  }
}

@media screen and (min-width: 90em) {
  .xxlarge-text-left {
    text-align: left;
  }
  .xxlarge-text-right {
    text-align: right;
  }
  .xxlarge-text-center {
    text-align: center;
  }
  .xxlarge-text-justify {
    text-align: justify;
  }
}

.show-for-print {
  display: none !important;
}

@media print {
  * {
    background: transparent !important;
    -webkit-box-shadow: none !important;
            box-shadow: none !important;
    color: black !important;
    text-shadow: none !important;
  }
  .show-for-print {
    display: block !important;
  }
  .hide-for-print {
    display: none !important;
  }
  table.show-for-print {
    display: table !important;
  }
  thead.show-for-print {
    display: table-header-group !important;
  }
  tbody.show-for-print {
    display: table-row-group !important;
  }
  tr.show-for-print {
    display: table-row !important;
  }
  td.show-for-print {
    display: table-cell !important;
  }
  th.show-for-print {
    display: table-cell !important;
  }
  a,
  a:visited {
    text-decoration: underline;
  }
  a[href]:after {
    content: " (" attr(href) ")";
  }
  .ir a:after,
  a[href^='javascript:']:after,
  a[href^='#']:after {
    content: '';
  }
  abbr[title]:after {
    content: " (" attr(title) ")";
  }
  pre,
  blockquote {
    border: 1px solid #79796A;
    page-break-inside: avoid;
  }
  thead {
    display: table-header-group;
  }
  tr,
  img {
    page-break-inside: avoid;
  }
  img {
    max-width: 100% !important;
  }
  @page {
    margin: 0.5cm;
  }
  p,
  h2,
  h3 {
    orphans: 3;
    widows: 3;
  }
  h2,
  h3 {
    page-break-after: avoid;
  }
  .print-break-inside {
    page-break-inside: auto;
  }
}

.button {
  display: inline-block;
  vertical-align: middle;
  margin: 0 0 1rem 0;
  font-family: inherit;
  padding: 0.6em 0.95em;
  -webkit-appearance: none;
  border: 1px solid transparent;
  border-radius: 0.18rem;
  -webkit-transition: background-color 0.25s ease-out, color 0.25s ease-out;
  transition: background-color 0.25s ease-out, color 0.25s ease-out;
  font-size: 1rem;
  line-height: 1;
  text-align: center;
  cursor: pointer;
  background-color: #1153AD;
  color: #fefefe;
}

[data-whatinput='mouse'] .button {
  outline: 0;
}

.button:hover, .button:focus {
  background-color: #0e4793;
  color: #fefefe;
}

.button.tiny {
  font-size: 0.6rem;
}

.button.small {
  font-size: 0.75rem;
}

.button.large {
  font-size: 1.35rem;
}

.button.expanded {
  display: block;
  width: 100%;
  margin-right: 0;
  margin-left: 0;
}

.button.primary {
  background-color: #1153AD;
  color: #fefefe;
}

.button.primary:hover, .button.primary:focus {
  background-color: #0e428a;
  color: #fefefe;
}

.button.secondary {
  background-color: #767676;
  color: #fefefe;
}

.button.secondary:hover, .button.secondary:focus {
  background-color: #5e5e5e;
  color: #fefefe;
}

.button.success {
  background-color: #3adb76;
  color: #fefefe;
}

.button.success:hover, .button.success:focus {
  background-color: #22bb5b;
  color: #fefefe;
}

.button.warning {
  background-color: #ffae00;
  color: #fefefe;
}

.button.warning:hover, .button.warning:focus {
  background-color: #cc8b00;
  color: #fefefe;
}

.button.alert {
  background-color: #cc4b37;
  color: #fefefe;
}

.button.alert:hover, .button.alert:focus {
  background-color: #a53b2a;
  color: #fefefe;
}

.button.off-black {
  background-color: #313131;
  color: #fefefe;
}

.button.off-black:hover, .button.off-black:focus {
  background-color: #272727;
  color: #fefefe;
}

.button.light-gray {
  background-color: #e8e5e5;
  color: #fefefe;
}

.button.light-gray:hover, .button.light-gray:focus {
  background-color: #bdb4b4;
  color: #fefefe;
}

.button.accent {
  background-color: #F9A519;
  color: #fefefe;
}

.button.accent:hover, .button.accent:focus {
  background-color: #d68806;
  color: #fefefe;
}

.button.green {
  background-color: #2F9F46;
  color: #fefefe;
}

.button.green:hover, .button.green:focus {
  background-color: #267f38;
  color: #fefefe;
}

.button.red {
  background-color: #cc4b37;
  color: #fefefe;
}

.button.red:hover, .button.red:focus {
  background-color: #a53b2a;
  color: #fefefe;
}

.button.disabled, .button[disabled] {
  opacity: 0.25;
  cursor: not-allowed;
}

.button.disabled, .button.disabled:hover, .button.disabled:focus, .button[disabled], .button[disabled]:hover, .button[disabled]:focus {
  background-color: #1153AD;
  color: #fefefe;
}

.button.disabled.primary, .button[disabled].primary {
  opacity: 0.25;
  cursor: not-allowed;
}

.button.disabled.primary, .button.disabled.primary:hover, .button.disabled.primary:focus, .button[disabled].primary, .button[disabled].primary:hover, .button[disabled].primary:focus {
  background-color: #1153AD;
  color: #fefefe;
}

.button.disabled.secondary, .button[disabled].secondary {
  opacity: 0.25;
  cursor: not-allowed;
}

.button.disabled.secondary, .button.disabled.secondary:hover, .button.disabled.secondary:focus, .button[disabled].secondary, .button[disabled].secondary:hover, .button[disabled].secondary:focus {
  background-color: #767676;
  color: #fefefe;
}

.button.disabled.success, .button[disabled].success {
  opacity: 0.25;
  cursor: not-allowed;
}

.button.disabled.success, .button.disabled.success:hover, .button.disabled.success:focus, .button[disabled].success, .button[disabled].success:hover, .button[disabled].success:focus {
  background-color: #3adb76;
  color: #fefefe;
}

.button.disabled.warning, .button[disabled].warning {
  opacity: 0.25;
  cursor: not-allowed;
}

.button.disabled.warning, .button.disabled.warning:hover, .button.disabled.warning:focus, .button[disabled].warning, .button[disabled].warning:hover, .button[disabled].warning:focus {
  background-color: #ffae00;
  color: #fefefe;
}

.button.disabled.alert, .button[disabled].alert {
  opacity: 0.25;
  cursor: not-allowed;
}

.button.disabled.alert, .button.disabled.alert:hover, .button.disabled.alert:focus, .button[disabled].alert, .button[disabled].alert:hover, .button[disabled].alert:focus {
  background-color: #cc4b37;
  color: #fefefe;
}

.button.disabled.off-black, .button[disabled].off-black {
  opacity: 0.25;
  cursor: not-allowed;
}

.button.disabled.off-black, .button.disabled.off-black:hover, .button.disabled.off-black:focus, .button[disabled].off-black, .button[disabled].off-black:hover, .button[disabled].off-black:focus {
  background-color: #313131;
  color: #fefefe;
}

.button.disabled.light-gray, .button[disabled].light-gray {
  opacity: 0.25;
  cursor: not-allowed;
}

.button.disabled.light-gray, .button.disabled.light-gray:hover, .button.disabled.light-gray:focus, .button[disabled].light-gray, .button[disabled].light-gray:hover, .button[disabled].light-gray:focus {
  background-color: #e8e5e5;
  color: #fefefe;
}

.button.disabled.accent, .button[disabled].accent {
  opacity: 0.25;
  cursor: not-allowed;
}

.button.disabled.accent, .button.disabled.accent:hover, .button.disabled.accent:focus, .button[disabled].accent, .button[disabled].accent:hover, .button[disabled].accent:focus {
  background-color: #F9A519;
  color: #fefefe;
}

.button.disabled.green, .button[disabled].green {
  opacity: 0.25;
  cursor: not-allowed;
}

.button.disabled.green, .button.disabled.green:hover, .button.disabled.green:focus, .button[disabled].green, .button[disabled].green:hover, .button[disabled].green:focus {
  background-color: #2F9F46;
  color: #fefefe;
}

.button.disabled.red, .button[disabled].red {
  opacity: 0.25;
  cursor: not-allowed;
}

.button.disabled.red, .button.disabled.red:hover, .button.disabled.red:focus, .button[disabled].red, .button[disabled].red:hover, .button[disabled].red:focus {
  background-color: #cc4b37;
  color: #fefefe;
}

.button.hollow {
  border: 1px solid #1153AD;
  color: #1153AD;
}

.button.hollow, .button.hollow:hover, .button.hollow:focus {
  background-color: transparent;
}

.button.hollow.disabled, .button.hollow.disabled:hover, .button.hollow.disabled:focus, .button.hollow[disabled], .button.hollow[disabled]:hover, .button.hollow[disabled]:focus {
  background-color: transparent;
}

.button.hollow:hover, .button.hollow:focus {
  border-color: #092a57;
  color: #092a57;
}

.button.hollow:hover.disabled, .button.hollow:hover[disabled], .button.hollow:focus.disabled, .button.hollow:focus[disabled] {
  border: 1px solid #1153AD;
  color: #1153AD;
}

.button.hollow.primary {
  border: 1px solid #1153AD;
  color: #1153AD;
}

.button.hollow.primary:hover, .button.hollow.primary:focus {
  border-color: #092a57;
  color: #092a57;
}

.button.hollow.primary:hover.disabled, .button.hollow.primary:hover[disabled], .button.hollow.primary:focus.disabled, .button.hollow.primary:focus[disabled] {
  border: 1px solid #1153AD;
  color: #1153AD;
}

.button.hollow.secondary {
  border: 1px solid #767676;
  color: #767676;
}

.button.hollow.secondary:hover, .button.hollow.secondary:focus {
  border-color: #3b3b3b;
  color: #3b3b3b;
}

.button.hollow.secondary:hover.disabled, .button.hollow.secondary:hover[disabled], .button.hollow.secondary:focus.disabled, .button.hollow.secondary:focus[disabled] {
  border: 1px solid #767676;
  color: #767676;
}

.button.hollow.success {
  border: 1px solid #3adb76;
  color: #3adb76;
}

.button.hollow.success:hover, .button.hollow.success:focus {
  border-color: #157539;
  color: #157539;
}

.button.hollow.success:hover.disabled, .button.hollow.success:hover[disabled], .button.hollow.success:focus.disabled, .button.hollow.success:focus[disabled] {
  border: 1px solid #3adb76;
  color: #3adb76;
}

.button.hollow.warning {
  border: 1px solid #ffae00;
  color: #ffae00;
}

.button.hollow.warning:hover, .button.hollow.warning:focus {
  border-color: #805700;
  color: #805700;
}

.button.hollow.warning:hover.disabled, .button.hollow.warning:hover[disabled], .button.hollow.warning:focus.disabled, .button.hollow.warning:focus[disabled] {
  border: 1px solid #ffae00;
  color: #ffae00;
}

.button.hollow.alert {
  border: 1px solid #cc4b37;
  color: #cc4b37;
}

.button.hollow.alert:hover, .button.hollow.alert:focus {
  border-color: #67251a;
  color: #67251a;
}

.button.hollow.alert:hover.disabled, .button.hollow.alert:hover[disabled], .button.hollow.alert:focus.disabled, .button.hollow.alert:focus[disabled] {
  border: 1px solid #cc4b37;
  color: #cc4b37;
}

.button.hollow.off-black {
  border: 1px solid #313131;
  color: #313131;
}

.button.hollow.off-black:hover, .button.hollow.off-black:focus {
  border-color: #191919;
  color: #191919;
}

.button.hollow.off-black:hover.disabled, .button.hollow.off-black:hover[disabled], .button.hollow.off-black:focus.disabled, .button.hollow.off-black:focus[disabled] {
  border: 1px solid #313131;
  color: #313131;
}

.button.hollow.light-gray {
  border: 1px solid #e8e5e5;
  color: #e8e5e5;
}

.button.hollow.light-gray:hover, .button.hollow.light-gray:focus {
  border-color: #7a6c6c;
  color: #7a6c6c;
}

.button.hollow.light-gray:hover.disabled, .button.hollow.light-gray:hover[disabled], .button.hollow.light-gray:focus.disabled, .button.hollow.light-gray:focus[disabled] {
  border: 1px solid #e8e5e5;
  color: #e8e5e5;
}

.button.hollow.accent {
  border: 1px solid #F9A519;
  color: #F9A519;
}

.button.hollow.accent:hover, .button.hollow.accent:focus {
  border-color: #865503;
  color: #865503;
}

.button.hollow.accent:hover.disabled, .button.hollow.accent:hover[disabled], .button.hollow.accent:focus.disabled, .button.hollow.accent:focus[disabled] {
  border: 1px solid #F9A519;
  color: #F9A519;
}

.button.hollow.green {
  border: 1px solid #2F9F46;
  color: #2F9F46;
}

.button.hollow.green:hover, .button.hollow.green:focus {
  border-color: #185023;
  color: #185023;
}

.button.hollow.green:hover.disabled, .button.hollow.green:hover[disabled], .button.hollow.green:focus.disabled, .button.hollow.green:focus[disabled] {
  border: 1px solid #2F9F46;
  color: #2F9F46;
}

.button.hollow.red {
  border: 1px solid #cc4b37;
  color: #cc4b37;
}

.button.hollow.red:hover, .button.hollow.red:focus {
  border-color: #67251a;
  color: #67251a;
}

.button.hollow.red:hover.disabled, .button.hollow.red:hover[disabled], .button.hollow.red:focus.disabled, .button.hollow.red:focus[disabled] {
  border: 1px solid #cc4b37;
  color: #cc4b37;
}

.button.clear {
  border: 1px solid #1153AD;
  color: #1153AD;
}

.button.clear, .button.clear:hover, .button.clear:focus {
  background-color: transparent;
}

.button.clear.disabled, .button.clear.disabled:hover, .button.clear.disabled:focus, .button.clear[disabled], .button.clear[disabled]:hover, .button.clear[disabled]:focus {
  background-color: transparent;
}

.button.clear:hover, .button.clear:focus {
  border-color: #092a57;
  color: #092a57;
}

.button.clear:hover.disabled, .button.clear:hover[disabled], .button.clear:focus.disabled, .button.clear:focus[disabled] {
  border: 1px solid #1153AD;
  color: #1153AD;
}

.button.clear, .button.clear.disabled, .button.clear[disabled], .button.clear:hover, .button.clear:hover.disabled, .button.clear:hover[disabled], .button.clear:focus, .button.clear:focus.disabled, .button.clear:focus[disabled] {
  border-color: transparent;
}

.button.clear.primary {
  border: 1px solid #1153AD;
  color: #1153AD;
}

.button.clear.primary:hover, .button.clear.primary:focus {
  border-color: #092a57;
  color: #092a57;
}

.button.clear.primary:hover.disabled, .button.clear.primary:hover[disabled], .button.clear.primary:focus.disabled, .button.clear.primary:focus[disabled] {
  border: 1px solid #1153AD;
  color: #1153AD;
}

.button.clear.primary, .button.clear.primary.disabled, .button.clear.primary[disabled], .button.clear.primary:hover, .button.clear.primary:hover.disabled, .button.clear.primary:hover[disabled], .button.clear.primary:focus, .button.clear.primary:focus.disabled, .button.clear.primary:focus[disabled] {
  border-color: transparent;
}

.button.clear.secondary {
  border: 1px solid #767676;
  color: #767676;
}

.button.clear.secondary:hover, .button.clear.secondary:focus {
  border-color: #3b3b3b;
  color: #3b3b3b;
}

.button.clear.secondary:hover.disabled, .button.clear.secondary:hover[disabled], .button.clear.secondary:focus.disabled, .button.clear.secondary:focus[disabled] {
  border: 1px solid #767676;
  color: #767676;
}

.button.clear.secondary, .button.clear.secondary.disabled, .button.clear.secondary[disabled], .button.clear.secondary:hover, .button.clear.secondary:hover.disabled, .button.clear.secondary:hover[disabled], .button.clear.secondary:focus, .button.clear.secondary:focus.disabled, .button.clear.secondary:focus[disabled] {
  border-color: transparent;
}

.button.clear.success {
  border: 1px solid #3adb76;
  color: #3adb76;
}

.button.clear.success:hover, .button.clear.success:focus {
  border-color: #157539;
  color: #157539;
}

.button.clear.success:hover.disabled, .button.clear.success:hover[disabled], .button.clear.success:focus.disabled, .button.clear.success:focus[disabled] {
  border: 1px solid #3adb76;
  color: #3adb76;
}

.button.clear.success, .button.clear.success.disabled, .button.clear.success[disabled], .button.clear.success:hover, .button.clear.success:hover.disabled, .button.clear.success:hover[disabled], .button.clear.success:focus, .button.clear.success:focus.disabled, .button.clear.success:focus[disabled] {
  border-color: transparent;
}

.button.clear.warning {
  border: 1px solid #ffae00;
  color: #ffae00;
}

.button.clear.warning:hover, .button.clear.warning:focus {
  border-color: #805700;
  color: #805700;
}

.button.clear.warning:hover.disabled, .button.clear.warning:hover[disabled], .button.clear.warning:focus.disabled, .button.clear.warning:focus[disabled] {
  border: 1px solid #ffae00;
  color: #ffae00;
}

.button.clear.warning, .button.clear.warning.disabled, .button.clear.warning[disabled], .button.clear.warning:hover, .button.clear.warning:hover.disabled, .button.clear.warning:hover[disabled], .button.clear.warning:focus, .button.clear.warning:focus.disabled, .button.clear.warning:focus[disabled] {
  border-color: transparent;
}

.button.clear.alert {
  border: 1px solid #cc4b37;
  color: #cc4b37;
}

.button.clear.alert:hover, .button.clear.alert:focus {
  border-color: #67251a;
  color: #67251a;
}

.button.clear.alert:hover.disabled, .button.clear.alert:hover[disabled], .button.clear.alert:focus.disabled, .button.clear.alert:focus[disabled] {
  border: 1px solid #cc4b37;
  color: #cc4b37;
}

.button.clear.alert, .button.clear.alert.disabled, .button.clear.alert[disabled], .button.clear.alert:hover, .button.clear.alert:hover.disabled, .button.clear.alert:hover[disabled], .button.clear.alert:focus, .button.clear.alert:focus.disabled, .button.clear.alert:focus[disabled] {
  border-color: transparent;
}

.button.clear.off-black {
  border: 1px solid #313131;
  color: #313131;
}

.button.clear.off-black:hover, .button.clear.off-black:focus {
  border-color: #191919;
  color: #191919;
}

.button.clear.off-black:hover.disabled, .button.clear.off-black:hover[disabled], .button.clear.off-black:focus.disabled, .button.clear.off-black:focus[disabled] {
  border: 1px solid #313131;
  color: #313131;
}

.button.clear.off-black, .button.clear.off-black.disabled, .button.clear.off-black[disabled], .button.clear.off-black:hover, .button.clear.off-black:hover.disabled, .button.clear.off-black:hover[disabled], .button.clear.off-black:focus, .button.clear.off-black:focus.disabled, .button.clear.off-black:focus[disabled] {
  border-color: transparent;
}

.button.clear.light-gray {
  border: 1px solid #e8e5e5;
  color: #e8e5e5;
}

.button.clear.light-gray:hover, .button.clear.light-gray:focus {
  border-color: #7a6c6c;
  color: #7a6c6c;
}

.button.clear.light-gray:hover.disabled, .button.clear.light-gray:hover[disabled], .button.clear.light-gray:focus.disabled, .button.clear.light-gray:focus[disabled] {
  border: 1px solid #e8e5e5;
  color: #e8e5e5;
}

.button.clear.light-gray, .button.clear.light-gray.disabled, .button.clear.light-gray[disabled], .button.clear.light-gray:hover, .button.clear.light-gray:hover.disabled, .button.clear.light-gray:hover[disabled], .button.clear.light-gray:focus, .button.clear.light-gray:focus.disabled, .button.clear.light-gray:focus[disabled] {
  border-color: transparent;
}

.button.clear.accent {
  border: 1px solid #F9A519;
  color: #F9A519;
}

.button.clear.accent:hover, .button.clear.accent:focus {
  border-color: #865503;
  color: #865503;
}

.button.clear.accent:hover.disabled, .button.clear.accent:hover[disabled], .button.clear.accent:focus.disabled, .button.clear.accent:focus[disabled] {
  border: 1px solid #F9A519;
  color: #F9A519;
}

.button.clear.accent, .button.clear.accent.disabled, .button.clear.accent[disabled], .button.clear.accent:hover, .button.clear.accent:hover.disabled, .button.clear.accent:hover[disabled], .button.clear.accent:focus, .button.clear.accent:focus.disabled, .button.clear.accent:focus[disabled] {
  border-color: transparent;
}

.button.clear.green {
  border: 1px solid #2F9F46;
  color: #2F9F46;
}

.button.clear.green:hover, .button.clear.green:focus {
  border-color: #185023;
  color: #185023;
}

.button.clear.green:hover.disabled, .button.clear.green:hover[disabled], .button.clear.green:focus.disabled, .button.clear.green:focus[disabled] {
  border: 1px solid #2F9F46;
  color: #2F9F46;
}

.button.clear.green, .button.clear.green.disabled, .button.clear.green[disabled], .button.clear.green:hover, .button.clear.green:hover.disabled, .button.clear.green:hover[disabled], .button.clear.green:focus, .button.clear.green:focus.disabled, .button.clear.green:focus[disabled] {
  border-color: transparent;
}

.button.clear.red {
  border: 1px solid #cc4b37;
  color: #cc4b37;
}

.button.clear.red:hover, .button.clear.red:focus {
  border-color: #67251a;
  color: #67251a;
}

.button.clear.red:hover.disabled, .button.clear.red:hover[disabled], .button.clear.red:focus.disabled, .button.clear.red:focus[disabled] {
  border: 1px solid #cc4b37;
  color: #cc4b37;
}

.button.clear.red, .button.clear.red.disabled, .button.clear.red[disabled], .button.clear.red:hover, .button.clear.red:hover.disabled, .button.clear.red:hover[disabled], .button.clear.red:focus, .button.clear.red:focus.disabled, .button.clear.red:focus[disabled] {
  border-color: transparent;
}

.button.dropdown::after {
  display: block;
  width: 0;
  height: 0;
  border: inset 0.4em;
  content: '';
  border-bottom-width: 0;
  border-top-style: solid;
  border-color: #fefefe transparent transparent;
  position: relative;
  top: 0.4em;
  display: inline-block;
  float: right;
  margin-left: 0.95em;
}

.button.dropdown.hollow::after {
  border-top-color: #1153AD;
}

.button.dropdown.hollow.primary::after {
  border-top-color: #1153AD;
}

.button.dropdown.hollow.secondary::after {
  border-top-color: #767676;
}

.button.dropdown.hollow.success::after {
  border-top-color: #3adb76;
}

.button.dropdown.hollow.warning::after {
  border-top-color: #ffae00;
}

.button.dropdown.hollow.alert::after {
  border-top-color: #cc4b37;
}

.button.dropdown.hollow.off-black::after {
  border-top-color: #313131;
}

.button.dropdown.hollow.light-gray::after {
  border-top-color: #e8e5e5;
}

.button.dropdown.hollow.accent::after {
  border-top-color: #F9A519;
}

.button.dropdown.hollow.green::after {
  border-top-color: #2F9F46;
}

.button.dropdown.hollow.red::after {
  border-top-color: #cc4b37;
}

.button.arrow-only::after {
  top: -0.1em;
  float: none;
  margin-left: 0;
}

[type='text'], [type='password'], [type='date'], [type='datetime'], [type='datetime-local'], [type='month'], [type='week'], [type='email'], [type='number'], [type='search'], [type='tel'], [type='time'], [type='url'], [type='color'],
textarea {
  display: block;
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  width: 100%;
  height: 2.67143rem;
  margin: 0 0 1.14286rem;
  padding: 0.57143rem;
  border: 1px solid #dddddd;
  border-radius: 0.18rem;
  background-color: #fefefe;
  -webkit-box-shadow: inset 0 1px 2px rgba(10, 10, 10, 0.1);
          box-shadow: inset 0 1px 2px rgba(10, 10, 10, 0.1);
  font-family: inherit;
  font-size: 1rem;
  font-weight: normal;
  line-height: 1.6;
  color: #0a0a0a;
  -webkit-transition: border-color 0.25s ease-in-out, -webkit-box-shadow 0.5s;
  transition: border-color 0.25s ease-in-out, -webkit-box-shadow 0.5s;
  transition: box-shadow 0.5s, border-color 0.25s ease-in-out;
  transition: box-shadow 0.5s, border-color 0.25s ease-in-out, -webkit-box-shadow 0.5s;
  -webkit-appearance: none;
     -moz-appearance: none;
          appearance: none;
}

[type='text']:focus, [type='password']:focus, [type='date']:focus, [type='datetime']:focus, [type='datetime-local']:focus, [type='month']:focus, [type='week']:focus, [type='email']:focus, [type='number']:focus, [type='search']:focus, [type='tel']:focus, [type='time']:focus, [type='url']:focus, [type='color']:focus,
textarea:focus {
  outline: none;
  border: 1px solid #dddddd;
  background-color: #fefefe;
  -webkit-box-shadow: 0 0 5px #dddddd;
          box-shadow: 0 0 5px #dddddd;
  -webkit-transition: border-color 0.25s ease-in-out, -webkit-box-shadow 0.5s;
  transition: border-color 0.25s ease-in-out, -webkit-box-shadow 0.5s;
  transition: box-shadow 0.5s, border-color 0.25s ease-in-out;
  transition: box-shadow 0.5s, border-color 0.25s ease-in-out, -webkit-box-shadow 0.5s;
}

textarea {
  max-width: 100%;
}

textarea[rows] {
  height: auto;
}

input::-webkit-input-placeholder, textarea::-webkit-input-placeholder {
  color: #79796A;
}

input::-moz-placeholder, textarea::-moz-placeholder {
  color: #79796A;
}

input:-ms-input-placeholder, textarea:-ms-input-placeholder {
  color: #79796A;
}

input::-ms-input-placeholder, textarea::-ms-input-placeholder {
  color: #79796A;
}

input::placeholder,
textarea::placeholder {
  color: #79796A;
}

input:disabled, input[readonly],
textarea:disabled,
textarea[readonly] {
  background-color: #e8e5e5;
  cursor: not-allowed;
}

[type='submit'],
[type='button'] {
  -webkit-appearance: none;
     -moz-appearance: none;
          appearance: none;
  border-radius: 0.18rem;
}

input[type='search'] {
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
}

[type='file'],
[type='checkbox'],
[type='radio'] {
  margin: 0 0 1.14286rem;
}

[type='checkbox'] + label,
[type='radio'] + label {
  display: inline-block;
  vertical-align: baseline;
  margin-left: 0.57143rem;
  margin-right: 1.14286rem;
  margin-bottom: 0;
}

[type='checkbox'] + label[for],
[type='radio'] + label[for] {
  cursor: pointer;
}

label > [type='checkbox'],
label > [type='radio'] {
  margin-right: 0.57143rem;
}

[type='file'] {
  width: 100%;
}

label {
  display: block;
  margin: 0;
  font-size: 1rem;
  font-weight: normal;
  line-height: 1.6;
  color: #0a0a0a;
}

label.middle {
  margin: 0 0 1.14286rem;
  padding: 0.64286rem 0;
}

.help-text {
  margin-top: -0.57143rem;
  font-size: 0.92857rem;
  font-style: italic;
  color: #0a0a0a;
}

.input-group {
  display: table;
  width: 100%;
  margin-bottom: 1.14286rem;
}

.input-group > :first-child {
  border-radius: 0.18rem 0 0 0.18rem;
}

.input-group > :last-child > * {
  border-radius: 0 0.18rem 0.18rem 0;
}

.input-group-label, .input-group-field, .input-group-button, .input-group-button a,
.input-group-button input,
.input-group-button button,
.input-group-button label {
  margin: 0;
  white-space: nowrap;
  display: table-cell;
  vertical-align: middle;
}

.input-group-label {
  padding: 0 1rem;
  border: 1px solid #dddddd;
  background: #e8e5e5;
  color: #0a0a0a;
  text-align: center;
  white-space: nowrap;
  width: 1%;
  height: 100%;
}

.input-group-label:first-child {
  border-right: 0;
}

.input-group-label:last-child {
  border-left: 0;
}

.input-group-field {
  border-radius: 0;
  height: 2.71429rem;
}

.input-group-button {
  padding-top: 0;
  padding-bottom: 0;
  text-align: center;
  width: 1%;
  height: 100%;
}

.input-group-button a,
.input-group-button input,
.input-group-button button,
.input-group-button label {
  height: 2.71429rem;
  padding-top: 0;
  padding-bottom: 0;
  font-size: 1rem;
}

.input-group .input-group-button {
  display: table-cell;
}

fieldset {
  margin: 0;
  padding: 0;
  border: 0;
}

legend {
  max-width: 100%;
  margin-bottom: 0.57143rem;
}

.fieldset {
  margin: 1.28571rem 0;
  padding: 1.42857rem;
  border: 1px solid #dddddd;
}

.fieldset legend {
  margin: 0;
  margin-left: -0.21429rem;
  padding: 0 0.21429rem;
}

select {
  height: 2.67143rem;
  margin: 0 0 1.14286rem;
  padding: 0.57143rem;
  -webkit-appearance: none;
     -moz-appearance: none;
          appearance: none;
  border: 1px solid #dddddd;
  border-radius: 0.18rem;
  background-color: #fefefe;
  font-family: inherit;
  font-size: 1rem;
  font-weight: normal;
  line-height: 1.6;
  color: #0a0a0a;
  background-image: url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' version='1.1' width='32' height='24' viewBox='0 0 32 24'><polygon points='0,0 32,0 16,24' style='fill: rgb%28121, 121, 106%29'></polygon></svg>");
  background-origin: content-box;
  background-position: right -1.14286rem center;
  background-repeat: no-repeat;
  background-size: 9px 6px;
  padding-right: 1.71429rem;
  -webkit-transition: border-color 0.25s ease-in-out, -webkit-box-shadow 0.5s;
  transition: border-color 0.25s ease-in-out, -webkit-box-shadow 0.5s;
  transition: box-shadow 0.5s, border-color 0.25s ease-in-out;
  transition: box-shadow 0.5s, border-color 0.25s ease-in-out, -webkit-box-shadow 0.5s;
}

@media screen and (min-width: 0\0) {
  select {
    background-image: url("data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAACAAAAAYCAYAAACbU/80AAAAGXRFWHRTb2Z0d2FyZQBBZG9iZSBJbWFnZVJlYWR5ccllPAAAAIpJREFUeNrEkckNgDAMBBfRkEt0ObRBBdsGXUDgmQfK4XhH2m8czQAAy27R3tsw4Qfe2x8uOO6oYLb6GlOor3GF+swURAOmUJ+RwtEJs9WvTGEYxBXqI1MQAZhCfUQKRzDMVj+TwrAIV6jvSUEkYAr1LSkcyTBb/V+KYfX7xAeusq3sLDtGH3kEGACPWIflNZfhRQAAAABJRU5ErkJggg==");
  }
}

select:focus {
  outline: none;
  border: 1px solid #dddddd;
  background-color: #fefefe;
  -webkit-box-shadow: 0 0 5px #dddddd;
          box-shadow: 0 0 5px #dddddd;
  -webkit-transition: border-color 0.25s ease-in-out, -webkit-box-shadow 0.5s;
  transition: border-color 0.25s ease-in-out, -webkit-box-shadow 0.5s;
  transition: box-shadow 0.5s, border-color 0.25s ease-in-out;
  transition: box-shadow 0.5s, border-color 0.25s ease-in-out, -webkit-box-shadow 0.5s;
}

select:disabled {
  background-color: #e8e5e5;
  cursor: not-allowed;
}

select::-ms-expand {
  display: none;
}

select[multiple] {
  height: auto;
  background-image: none;
}

.is-invalid-input:not(:focus) {
  border-color: #cc4b37;
  background-color: #f9ecea;
}

.is-invalid-input:not(:focus)::-webkit-input-placeholder {
  color: #cc4b37;
}

.is-invalid-input:not(:focus)::-moz-placeholder {
  color: #cc4b37;
}

.is-invalid-input:not(:focus):-ms-input-placeholder {
  color: #cc4b37;
}

.is-invalid-input:not(:focus)::-ms-input-placeholder {
  color: #cc4b37;
}

.is-invalid-input:not(:focus)::placeholder {
  color: #cc4b37;
}

.is-invalid-label {
  color: #cc4b37;
}

.form-error {
  display: none;
  margin-top: -0.57143rem;
  margin-bottom: 1.14286rem;
  font-size: 0.85714rem;
  font-weight: bold;
  color: #cc4b37;
}

.form-error.is-visible {
  display: block;
}

.accordion {
  margin-left: 0;
  background: #fefefe;
  list-style-type: none;
}

.accordion[disabled] .accordion-title {
  cursor: not-allowed;
}

.accordion-item:first-child > :first-child {
  border-radius: 0.18rem 0.18rem 0 0;
}

.accordion-item:last-child > :last-child {
  border-radius: 0 0 0.18rem 0.18rem;
}

.accordion-title {
  position: relative;
  display: block;
  padding: 1.25rem 1rem;
  border: 1px solid #dddddd;
  border-bottom: 0;
  font-size: 0.85714rem;
  line-height: 1;
  color: #1153AD;
}

:last-child:not(.is-active) > .accordion-title {
  border-bottom: 1px solid #dddddd;
  border-radius: 0 0 0.18rem 0.18rem;
}

.accordion-title:hover, .accordion-title:focus {
  background-color: #e8e5e5;
}

.accordion-title::before {
  position: absolute;
  top: 50%;
  right: 1rem;
  margin-top: -0.5rem;
  content: '+';
}

.is-active > .accordion-title::before {
  content: '\2013';
}

.accordion-content {
  display: none;
  padding: 1rem;
  border: 1px solid #dddddd;
  border-bottom: 0;
  background-color: #fefefe;
  color: #0a0a0a;
}

:last-child > .accordion-content:last-child {
  border-bottom: 1px solid #dddddd;
}

.accordion-menu li {
  width: 100%;
}

.accordion-menu a {
  padding: 0.7rem 1rem;
}

.accordion-menu .is-accordion-submenu a {
  padding: 0.7rem 1rem;
}

.accordion-menu .nested.is-accordion-submenu {
  margin-right: 0;
  margin-left: 1rem;
}

.accordion-menu.align-right .nested.is-accordion-submenu {
  margin-right: 1rem;
  margin-left: 0;
}

.accordion-menu .is-accordion-submenu-parent:not(.has-submenu-toggle) > a {
  position: relative;
}

.accordion-menu .is-accordion-submenu-parent:not(.has-submenu-toggle) > a::after {
  display: block;
  width: 0;
  height: 0;
  border: inset 6px;
  content: '';
  border-bottom-width: 0;
  border-top-style: solid;
  border-color: #1153AD transparent transparent;
  position: absolute;
  top: 50%;
  margin-top: -3px;
  right: 1rem;
}

.accordion-menu.align-left .is-accordion-submenu-parent > a::after {
  left: auto;
  right: 1rem;
}

.accordion-menu.align-right .is-accordion-submenu-parent > a::after {
  right: auto;
  left: 1rem;
}

.accordion-menu .is-accordion-submenu-parent[aria-expanded='true'] > a::after {
  -webkit-transform: rotate(180deg);
          transform: rotate(180deg);
  -webkit-transform-origin: 50% 50%;
          transform-origin: 50% 50%;
}

.is-accordion-submenu-parent {
  position: relative;
}

.has-submenu-toggle > a {
  margin-right: 40px;
}

.submenu-toggle {
  position: absolute;
  top: 0;
  right: 0;
  cursor: pointer;
  width: 40px;
  height: 40px;
}

.submenu-toggle::after {
  display: block;
  width: 0;
  height: 0;
  border: inset 6px;
  content: '';
  border-bottom-width: 0;
  border-top-style: solid;
  border-color: #1153AD transparent transparent;
  top: 0;
  bottom: 0;
  margin: auto;
}

.submenu-toggle[aria-expanded='true']::after {
  -webkit-transform: scaleY(-1);
          transform: scaleY(-1);
  -webkit-transform-origin: 50% 50%;
          transform-origin: 50% 50%;
}

.submenu-toggle-text {
  position: absolute !important;
  width: 1px;
  height: 1px;
  padding: 0;
  overflow: hidden;
  clip: rect(0, 0, 0, 0);
  white-space: nowrap;
  -webkit-clip-path: inset(50%);
          clip-path: inset(50%);
  border: 0;
}

.badge {
  display: inline-block;
  min-width: 2.1em;
  padding: 0.3em;
  border-radius: 50%;
  font-size: 0.65rem;
  text-align: center;
  background: #1153AD;
  color: #fefefe;
}

.badge.primary {
  background: #1153AD;
  color: #fefefe;
}

.badge.secondary {
  background: #767676;
  color: #fefefe;
}

.badge.success {
  background: #3adb76;
  color: #0a0a0a;
}

.badge.warning {
  background: #ffae00;
  color: #0a0a0a;
}

.badge.alert {
  background: #cc4b37;
  color: #fefefe;
}

.badge.off-black {
  background: #313131;
  color: #fefefe;
}

.badge.accent {
  background: #F9A519;
  color: #0a0a0a;
}

.badge.green {
  background: #2F9F46;
  color: #0a0a0a;
}

.badge.red {
  background: #cc4b37;
  color: #fefefe;
}

.breadcrumbs {
  margin: 0.5rem 0 0.5rem 0;
  list-style: none;
}

.breadcrumbs::before, .breadcrumbs::after {
  display: table;
  content: ' ';
}

.breadcrumbs::after {
  clear: both;
}

.breadcrumbs li {
  float: left;
  font-size: 0.92857rem;
  color: #0a0a0a;
  cursor: default;
}

.breadcrumbs li:not(:last-child)::after {
  position: relative;
  margin: 0 0.25rem;
  opacity: 1;
  content: "/";
  color: #79796A;
}

.breadcrumbs a {
  color: #313131;
}

.breadcrumbs a:hover {
  text-decoration: underline;
}

.breadcrumbs .disabled {
  color: #dddddd;
  cursor: not-allowed;
}

.button-group {
  margin-bottom: 1rem;
  font-size: 0;
}

.button-group::before, .button-group::after {
  display: table;
  content: ' ';
}

.button-group::after {
  clear: both;
}

.button-group .button {
  margin: 0;
  margin-right: 1px;
  margin-bottom: 1px;
  font-size: 1rem;
}

.button-group .button:last-child {
  margin-right: 0;
}

.button-group.tiny .button {
  font-size: 0.6rem;
}

.button-group.small .button {
  font-size: 0.75rem;
}

.button-group.large .button {
  font-size: 1.35rem;
}

.button-group.expanded {
  margin-right: -1px;
}

.button-group.expanded::before, .button-group.expanded::after {
  display: none;
}

.button-group.expanded .button:first-child:last-child {
  width: 100%;
}

.button-group.expanded .button:first-child:nth-last-child(2), .button-group.expanded .button:first-child:nth-last-child(2):first-child:nth-last-child(2) ~ .button {
  display: inline-block;
  width: calc(50% - 1px);
  margin-right: 1px;
}

.button-group.expanded .button:first-child:nth-last-child(2):last-child, .button-group.expanded .button:first-child:nth-last-child(2):first-child:nth-last-child(2) ~ .button:last-child {
  margin-right: -6px;
}

.button-group.expanded .button:first-child:nth-last-child(3), .button-group.expanded .button:first-child:nth-last-child(3):first-child:nth-last-child(3) ~ .button {
  display: inline-block;
  width: calc(33.33333% - 1px);
  margin-right: 1px;
}

.button-group.expanded .button:first-child:nth-last-child(3):last-child, .button-group.expanded .button:first-child:nth-last-child(3):first-child:nth-last-child(3) ~ .button:last-child {
  margin-right: -6px;
}

.button-group.expanded .button:first-child:nth-last-child(4), .button-group.expanded .button:first-child:nth-last-child(4):first-child:nth-last-child(4) ~ .button {
  display: inline-block;
  width: calc(25% - 1px);
  margin-right: 1px;
}

.button-group.expanded .button:first-child:nth-last-child(4):last-child, .button-group.expanded .button:first-child:nth-last-child(4):first-child:nth-last-child(4) ~ .button:last-child {
  margin-right: -6px;
}

.button-group.expanded .button:first-child:nth-last-child(5), .button-group.expanded .button:first-child:nth-last-child(5):first-child:nth-last-child(5) ~ .button {
  display: inline-block;
  width: calc(20% - 1px);
  margin-right: 1px;
}

.button-group.expanded .button:first-child:nth-last-child(5):last-child, .button-group.expanded .button:first-child:nth-last-child(5):first-child:nth-last-child(5) ~ .button:last-child {
  margin-right: -6px;
}

.button-group.expanded .button:first-child:nth-last-child(6), .button-group.expanded .button:first-child:nth-last-child(6):first-child:nth-last-child(6) ~ .button {
  display: inline-block;
  width: calc(16.66667% - 1px);
  margin-right: 1px;
}

.button-group.expanded .button:first-child:nth-last-child(6):last-child, .button-group.expanded .button:first-child:nth-last-child(6):first-child:nth-last-child(6) ~ .button:last-child {
  margin-right: -6px;
}

.button-group.primary .button {
  background-color: #1153AD;
  color: #fefefe;
}

.button-group.primary .button:hover, .button-group.primary .button:focus {
  background-color: #0e428a;
  color: #fefefe;
}

.button-group.secondary .button {
  background-color: #767676;
  color: #fefefe;
}

.button-group.secondary .button:hover, .button-group.secondary .button:focus {
  background-color: #5e5e5e;
  color: #fefefe;
}

.button-group.success .button {
  background-color: #3adb76;
  color: #fefefe;
}

.button-group.success .button:hover, .button-group.success .button:focus {
  background-color: #22bb5b;
  color: #fefefe;
}

.button-group.warning .button {
  background-color: #ffae00;
  color: #fefefe;
}

.button-group.warning .button:hover, .button-group.warning .button:focus {
  background-color: #cc8b00;
  color: #fefefe;
}

.button-group.alert .button {
  background-color: #cc4b37;
  color: #fefefe;
}

.button-group.alert .button:hover, .button-group.alert .button:focus {
  background-color: #a53b2a;
  color: #fefefe;
}

.button-group.stacked .button, .button-group.stacked-for-small .button, .button-group.stacked-for-medium .button {
  width: 100%;
}

.button-group.stacked .button:last-child, .button-group.stacked-for-small .button:last-child, .button-group.stacked-for-medium .button:last-child {
  margin-bottom: 0;
}

@media print, screen and (min-width: 48em) {
  .button-group.stacked-for-small .button {
    width: auto;
    margin-bottom: 0;
  }
}

@media print, screen and (min-width: 64em) {
  .button-group.stacked-for-medium .button {
    width: auto;
    margin-bottom: 0;
  }
}

@media screen and (max-width: 47.9375em) {
  .button-group.stacked-for-small.expanded {
    display: block;
  }
  .button-group.stacked-for-small.expanded .button {
    display: block;
    margin-right: 0;
  }
}

.callout {
  position: relative;
  margin: 0 0 1rem 0;
  padding: 1rem;
  border: 1px solid rgba(10, 10, 10, 0.25);
  border-radius: 0.18rem;
  background-color: white;
  color: #0a0a0a;
}

.callout > :first-child {
  margin-top: 0;
}

.callout > :last-child {
  margin-bottom: 0;
}

.callout.primary {
  background-color: #d3e4fb;
  color: #0a0a0a;
}

.callout.secondary {
  background-color: #eaeaea;
  color: #0a0a0a;
}

.callout.success {
  background-color: #e1faea;
  color: #0a0a0a;
}

.callout.warning {
  background-color: #fff3d9;
  color: #0a0a0a;
}

.callout.alert {
  background-color: #f7e4e1;
  color: #0a0a0a;
}

.callout.small {
  padding-top: 0.5rem;
  padding-right: 0.5rem;
  padding-bottom: 0.5rem;
  padding-left: 0.5rem;
}

.callout.large {
  padding-top: 3rem;
  padding-right: 3rem;
  padding-bottom: 3rem;
  padding-left: 3rem;
}

.card {
  margin-bottom: 1rem;
  border: 1px solid #dddddd;
  border-radius: 0.18rem;
  background: #fefefe;
  -webkit-box-shadow: none;
          box-shadow: none;
  overflow: hidden;
  color: #0a0a0a;
}

.card > :last-child {
  margin-bottom: 0;
}

.card-divider {
  padding: 1rem;
  background: #e8e5e5;
}

.card-divider > :last-child {
  margin-bottom: 0;
}

.card-section {
  padding: 1rem;
}

.card-section > :last-child {
  margin-bottom: 0;
}

.card-image {
  min-height: 1px;
}

.close-button {
  position: absolute;
  color: #79796A;
  cursor: pointer;
}

[data-whatinput='mouse'] .close-button {
  outline: 0;
}

.close-button:hover, .close-button:focus {
  color: #0a0a0a;
}

.close-button.small {
  right: 0.66rem;
  top: 0.33em;
  font-size: 1.5em;
  line-height: 1;
}

.close-button, .close-button.medium {
  right: 1rem;
  top: 0.5rem;
  font-size: 2em;
  line-height: 1;
}

.menu {
  padding: 0;
  margin: 0;
  list-style: none;
  position: relative;
}

[data-whatinput='mouse'] .menu li {
  outline: 0;
}

.menu a,
.menu .button {
  line-height: 1;
  text-decoration: none;
  white-space: nowrap;
  display: block;
  padding: 0.7rem 1rem;
}

.menu input,
.menu select,
.menu a,
.menu button {
  margin-bottom: 0;
}

.menu input {
  display: inline-block;
}

.menu li, .menu.horizontal li {
  display: inline-block;
}

.menu.vertical li {
  display: block;
}

.menu.expanded {
  display: table;
  width: 100%;
}

.menu.expanded > li {
  display: table-cell;
  vertical-align: middle;
}

.menu.simple li + li {
  margin-left: 1rem;
}

.menu.simple a {
  padding: 0;
}

@media print, screen and (min-width: 48em) {
  .menu.medium-horizontal li {
    display: inline-block;
  }
  .menu.medium-vertical li {
    display: block;
  }
  .menu.medium-expanded {
    display: table;
    width: 100%;
  }
  .menu.medium-expanded > li {
    display: table-cell;
    vertical-align: middle;
  }
  .menu.medium-simple {
    display: table;
    width: 100%;
  }
  .menu.medium-simple > li {
    display: table-cell;
    vertical-align: middle;
  }
}

@media print, screen and (min-width: 64em) {
  .menu.large-horizontal li {
    display: inline-block;
  }
  .menu.large-vertical li {
    display: block;
  }
  .menu.large-expanded {
    display: table;
    width: 100%;
  }
  .menu.large-expanded > li {
    display: table-cell;
    vertical-align: middle;
  }
  .menu.large-simple {
    display: table;
    width: 100%;
  }
  .menu.large-simple > li {
    display: table-cell;
    vertical-align: middle;
  }
}

@media screen and (min-width: 75em) {
  .menu.xlarge-horizontal li {
    display: inline-block;
  }
  .menu.xlarge-vertical li {
    display: block;
  }
  .menu.xlarge-expanded {
    display: table;
    width: 100%;
  }
  .menu.xlarge-expanded > li {
    display: table-cell;
    vertical-align: middle;
  }
  .menu.xlarge-simple {
    display: table;
    width: 100%;
  }
  .menu.xlarge-simple > li {
    display: table-cell;
    vertical-align: middle;
  }
}

@media screen and (min-width: 90em) {
  .menu.xxlarge-horizontal li {
    display: inline-block;
  }
  .menu.xxlarge-vertical li {
    display: block;
  }
  .menu.xxlarge-expanded {
    display: table;
    width: 100%;
  }
  .menu.xxlarge-expanded > li {
    display: table-cell;
    vertical-align: middle;
  }
  .menu.xxlarge-simple {
    display: table;
    width: 100%;
  }
  .menu.xxlarge-simple > li {
    display: table-cell;
    vertical-align: middle;
  }
}

.menu.nested {
  margin-right: 0;
  margin-left: 1rem;
}

.menu.icons img,
.menu.icons i,
.menu.icons svg {
  vertical-align: middle;
}

.menu.icons img + span,
.menu.icons i + span,
.menu.icons svg + span {
  vertical-align: middle;
}

.menu.icon-left li a img,
.menu.icon-left li a i,
.menu.icon-left li a svg {
  margin-right: 0.25rem;
  display: inline-block;
}

.menu.icon-right li a img,
.menu.icon-right li a i,
.menu.icon-right li a svg {
  margin-left: 0.25rem;
  display: inline-block;
}

.menu.icon-top li a {
  text-align: center;
}

.menu.icon-top li a img,
.menu.icon-top li a i,
.menu.icon-top li a svg {
  display: block;
  margin: 0 auto 0.25rem;
}

.menu.icon-bottom li a {
  text-align: center;
}

.menu.icon-bottom li a img,
.menu.icon-bottom li a i,
.menu.icon-bottom li a svg {
  display: block;
  margin: 0.25rem auto 0;
}

.menu .is-active > a {
  background: #1153AD;
  color: #fefefe;
}

.menu .active > a {
  background: #1153AD;
  color: #fefefe;
}

.menu.align-left {
  text-align: left;
}

.menu.align-right {
  text-align: right;
}

.menu.align-right .submenu li {
  text-align: left;
}

.menu.align-right.vertical .submenu li {
  text-align: right;
}

.menu.align-right .nested {
  margin-right: 1rem;
  margin-left: 0;
}

.menu.align-center {
  text-align: center;
}

.menu.align-center .submenu li {
  text-align: left;
}

.menu .menu-text {
  padding: 0.7rem 1rem;
  font-weight: bold;
  line-height: 1;
  color: inherit;
}

.menu-centered > .menu {
  text-align: center;
}

.menu-centered > .menu .submenu li {
  text-align: left;
}

.no-js [data-responsive-menu] ul {
  display: none;
}

.menu-icon {
  position: relative;
  display: inline-block;
  vertical-align: middle;
  width: 20px;
  height: 16px;
  cursor: pointer;
}

.menu-icon::after {
  position: absolute;
  top: 0;
  left: 0;
  display: block;
  width: 100%;
  height: 2px;
  background: #fefefe;
  -webkit-box-shadow: 0 7px 0 #fefefe, 0 14px 0 #fefefe;
          box-shadow: 0 7px 0 #fefefe, 0 14px 0 #fefefe;
  content: '';
}

.menu-icon:hover::after {
  background: #dddddd;
  -webkit-box-shadow: 0 7px 0 #dddddd, 0 14px 0 #dddddd;
          box-shadow: 0 7px 0 #dddddd, 0 14px 0 #dddddd;
}

.menu-icon.dark {
  position: relative;
  display: inline-block;
  vertical-align: middle;
  width: 20px;
  height: 16px;
  cursor: pointer;
}

.menu-icon.dark::after {
  position: absolute;
  top: 0;
  left: 0;
  display: block;
  width: 100%;
  height: 2px;
  background: #0a0a0a;
  -webkit-box-shadow: 0 7px 0 #0a0a0a, 0 14px 0 #0a0a0a;
          box-shadow: 0 7px 0 #0a0a0a, 0 14px 0 #0a0a0a;
  content: '';
}

.menu-icon.dark:hover::after {
  background: #79796A;
  -webkit-box-shadow: 0 7px 0 #79796A, 0 14px 0 #79796A;
          box-shadow: 0 7px 0 #79796A, 0 14px 0 #79796A;
}

.is-drilldown {
  position: relative;
  overflow: hidden;
}

.is-drilldown li {
  display: block;
}

.is-drilldown.animate-height {
  -webkit-transition: height 0.5s;
  transition: height 0.5s;
}

.drilldown a {
  padding: 0.7rem 1rem;
  background: #fefefe;
}

.drilldown .is-drilldown-submenu {
  position: absolute;
  top: 0;
  left: 100%;
  z-index: -1;
  width: 100%;
  background: #fefefe;
  -webkit-transition: -webkit-transform 0.15s linear;
  transition: -webkit-transform 0.15s linear;
  transition: transform 0.15s linear;
  transition: transform 0.15s linear, -webkit-transform 0.15s linear;
}

.drilldown .is-drilldown-submenu.is-active {
  z-index: 1;
  display: block;
  -webkit-transform: translateX(-100%);
          transform: translateX(-100%);
}

.drilldown .is-drilldown-submenu.is-closing {
  -webkit-transform: translateX(100%);
          transform: translateX(100%);
}

.drilldown .is-drilldown-submenu a {
  padding: 0.7rem 1rem;
}

.drilldown .nested.is-drilldown-submenu {
  margin-right: 0;
  margin-left: 0;
}

.drilldown .drilldown-submenu-cover-previous {
  min-height: 100%;
}

.drilldown .is-drilldown-submenu-parent > a {
  position: relative;
}

.drilldown .is-drilldown-submenu-parent > a::after {
  position: absolute;
  top: 50%;
  margin-top: -6px;
  right: 1rem;
  display: block;
  width: 0;
  height: 0;
  border: inset 6px;
  content: '';
  border-right-width: 0;
  border-left-style: solid;
  border-color: transparent transparent transparent #1153AD;
}

.drilldown.align-left .is-drilldown-submenu-parent > a::after {
  left: auto;
  right: 1rem;
  display: block;
  width: 0;
  height: 0;
  border: inset 6px;
  content: '';
  border-right-width: 0;
  border-left-style: solid;
  border-color: transparent transparent transparent #1153AD;
}

.drilldown.align-right .is-drilldown-submenu-parent > a::after {
  right: auto;
  left: 1rem;
  display: block;
  width: 0;
  height: 0;
  border: inset 6px;
  content: '';
  border-left-width: 0;
  border-right-style: solid;
  border-color: transparent #1153AD transparent transparent;
}

.drilldown .js-drilldown-back > a::before {
  display: block;
  width: 0;
  height: 0;
  border: inset 6px;
  content: '';
  border-left-width: 0;
  border-right-style: solid;
  border-color: transparent #1153AD transparent transparent;
  border-left-width: 0;
  display: inline-block;
  vertical-align: middle;
  margin-right: 0.75rem;
  border-left-width: 0;
}

.dropdown-pane {
  position: absolute;
  z-index: 10;
  width: 300px;
  padding: 1rem;
  visibility: hidden;
  display: none;
  border: 1px solid #dddddd;
  border-radius: 0.18rem;
  background-color: #fff;
  font-size: 1rem;
}

.dropdown-pane.is-opening {
  display: block;
}

.dropdown-pane.is-open {
  visibility: visible;
  display: block;
}

.dropdown-pane.tiny {
  width: 100px;
}

.dropdown-pane.small {
  width: 200px;
}

.dropdown-pane.large {
  width: 400px;
}

.dropdown.menu > li.opens-left > .is-dropdown-submenu {
  top: 100%;
  right: 0;
  left: auto;
}

.dropdown.menu > li.opens-right > .is-dropdown-submenu {
  top: 100%;
  right: auto;
  left: 0;
}

.dropdown.menu > li.is-dropdown-submenu-parent > a {
  position: relative;
  padding-right: 1.5rem;
}

.dropdown.menu > li.is-dropdown-submenu-parent > a::after {
  display: block;
  width: 0;
  height: 0;
  border: inset 6px;
  content: '';
  border-bottom-width: 0;
  border-top-style: solid;
  border-color: #1153AD transparent transparent;
  right: 5px;
  margin-top: -3px;
}

.dropdown.menu a {
  padding: 0.7rem 1rem;
}

[data-whatinput='mouse'] .dropdown.menu a {
  outline: 0;
}

.dropdown.menu .is-active > a {
  background: transparent;
  color: #1153AD;
}

.no-js .dropdown.menu ul {
  display: none;
}

.dropdown.menu .nested.is-dropdown-submenu {
  margin-right: 0;
  margin-left: 0;
}

.dropdown.menu.vertical > li .is-dropdown-submenu {
  top: 0;
}

.dropdown.menu.vertical > li.opens-left > .is-dropdown-submenu {
  right: 100%;
  left: auto;
  top: 0;
}

.dropdown.menu.vertical > li.opens-right > .is-dropdown-submenu {
  right: auto;
  left: 100%;
}

.dropdown.menu.vertical > li > a::after {
  right: 14px;
}

.dropdown.menu.vertical > li.opens-left > a::after {
  right: auto;
  left: 5px;
  display: block;
  width: 0;
  height: 0;
  border: inset 6px;
  content: '';
  border-left-width: 0;
  border-right-style: solid;
  border-color: transparent #1153AD transparent transparent;
}

.dropdown.menu.vertical > li.opens-right > a::after {
  display: block;
  width: 0;
  height: 0;
  border: inset 6px;
  content: '';
  border-right-width: 0;
  border-left-style: solid;
  border-color: transparent transparent transparent #1153AD;
}

@media print, screen and (min-width: 48em) {
  .dropdown.menu.medium-horizontal > li.opens-left > .is-dropdown-submenu {
    top: 100%;
    right: 0;
    left: auto;
  }
  .dropdown.menu.medium-horizontal > li.opens-right > .is-dropdown-submenu {
    top: 100%;
    right: auto;
    left: 0;
  }
  .dropdown.menu.medium-horizontal > li.is-dropdown-submenu-parent > a {
    position: relative;
    padding-right: 1.5rem;
  }
  .dropdown.menu.medium-horizontal > li.is-dropdown-submenu-parent > a::after {
    display: block;
    width: 0;
    height: 0;
    border: inset 6px;
    content: '';
    border-bottom-width: 0;
    border-top-style: solid;
    border-color: #1153AD transparent transparent;
    right: 5px;
    margin-top: -3px;
  }
  .dropdown.menu.medium-vertical > li .is-dropdown-submenu {
    top: 0;
  }
  .dropdown.menu.medium-vertical > li.opens-left > .is-dropdown-submenu {
    right: 100%;
    left: auto;
    top: 0;
  }
  .dropdown.menu.medium-vertical > li.opens-right > .is-dropdown-submenu {
    right: auto;
    left: 100%;
  }
  .dropdown.menu.medium-vertical > li > a::after {
    right: 14px;
  }
  .dropdown.menu.medium-vertical > li.opens-left > a::after {
    right: auto;
    left: 5px;
    display: block;
    width: 0;
    height: 0;
    border: inset 6px;
    content: '';
    border-left-width: 0;
    border-right-style: solid;
    border-color: transparent #1153AD transparent transparent;
  }
  .dropdown.menu.medium-vertical > li.opens-right > a::after {
    display: block;
    width: 0;
    height: 0;
    border: inset 6px;
    content: '';
    border-right-width: 0;
    border-left-style: solid;
    border-color: transparent transparent transparent #1153AD;
  }
}

@media print, screen and (min-width: 64em) {
  .dropdown.menu.large-horizontal > li.opens-left > .is-dropdown-submenu {
    top: 100%;
    right: 0;
    left: auto;
  }
  .dropdown.menu.large-horizontal > li.opens-right > .is-dropdown-submenu {
    top: 100%;
    right: auto;
    left: 0;
  }
  .dropdown.menu.large-horizontal > li.is-dropdown-submenu-parent > a {
    position: relative;
    padding-right: 1.5rem;
  }
  .dropdown.menu.large-horizontal > li.is-dropdown-submenu-parent > a::after {
    display: block;
    width: 0;
    height: 0;
    border: inset 6px;
    content: '';
    border-bottom-width: 0;
    border-top-style: solid;
    border-color: #1153AD transparent transparent;
    right: 5px;
    margin-top: -3px;
  }
  .dropdown.menu.large-vertical > li .is-dropdown-submenu {
    top: 0;
  }
  .dropdown.menu.large-vertical > li.opens-left > .is-dropdown-submenu {
    right: 100%;
    left: auto;
    top: 0;
  }
  .dropdown.menu.large-vertical > li.opens-right > .is-dropdown-submenu {
    right: auto;
    left: 100%;
  }
  .dropdown.menu.large-vertical > li > a::after {
    right: 14px;
  }
  .dropdown.menu.large-vertical > li.opens-left > a::after {
    right: auto;
    left: 5px;
    display: block;
    width: 0;
    height: 0;
    border: inset 6px;
    content: '';
    border-left-width: 0;
    border-right-style: solid;
    border-color: transparent #1153AD transparent transparent;
  }
  .dropdown.menu.large-vertical > li.opens-right > a::after {
    display: block;
    width: 0;
    height: 0;
    border: inset 6px;
    content: '';
    border-right-width: 0;
    border-left-style: solid;
    border-color: transparent transparent transparent #1153AD;
  }
}

@media screen and (min-width: 75em) {
  .dropdown.menu.xlarge-horizontal > li.opens-left > .is-dropdown-submenu {
    top: 100%;
    right: 0;
    left: auto;
  }
  .dropdown.menu.xlarge-horizontal > li.opens-right > .is-dropdown-submenu {
    top: 100%;
    right: auto;
    left: 0;
  }
  .dropdown.menu.xlarge-horizontal > li.is-dropdown-submenu-parent > a {
    position: relative;
    padding-right: 1.5rem;
  }
  .dropdown.menu.xlarge-horizontal > li.is-dropdown-submenu-parent > a::after {
    display: block;
    width: 0;
    height: 0;
    border: inset 6px;
    content: '';
    border-bottom-width: 0;
    border-top-style: solid;
    border-color: #1153AD transparent transparent;
    right: 5px;
    margin-top: -3px;
  }
  .dropdown.menu.xlarge-vertical > li .is-dropdown-submenu {
    top: 0;
  }
  .dropdown.menu.xlarge-vertical > li.opens-left > .is-dropdown-submenu {
    right: 100%;
    left: auto;
    top: 0;
  }
  .dropdown.menu.xlarge-vertical > li.opens-right > .is-dropdown-submenu {
    right: auto;
    left: 100%;
  }
  .dropdown.menu.xlarge-vertical > li > a::after {
    right: 14px;
  }
  .dropdown.menu.xlarge-vertical > li.opens-left > a::after {
    right: auto;
    left: 5px;
    display: block;
    width: 0;
    height: 0;
    border: inset 6px;
    content: '';
    border-left-width: 0;
    border-right-style: solid;
    border-color: transparent #1153AD transparent transparent;
  }
  .dropdown.menu.xlarge-vertical > li.opens-right > a::after {
    display: block;
    width: 0;
    height: 0;
    border: inset 6px;
    content: '';
    border-right-width: 0;
    border-left-style: solid;
    border-color: transparent transparent transparent #1153AD;
  }
}

@media screen and (min-width: 90em) {
  .dropdown.menu.xxlarge-horizontal > li.opens-left > .is-dropdown-submenu {
    top: 100%;
    right: 0;
    left: auto;
  }
  .dropdown.menu.xxlarge-horizontal > li.opens-right > .is-dropdown-submenu {
    top: 100%;
    right: auto;
    left: 0;
  }
  .dropdown.menu.xxlarge-horizontal > li.is-dropdown-submenu-parent > a {
    position: relative;
    padding-right: 1.5rem;
  }
  .dropdown.menu.xxlarge-horizontal > li.is-dropdown-submenu-parent > a::after {
    display: block;
    width: 0;
    height: 0;
    border: inset 6px;
    content: '';
    border-bottom-width: 0;
    border-top-style: solid;
    border-color: #1153AD transparent transparent;
    right: 5px;
    margin-top: -3px;
  }
  .dropdown.menu.xxlarge-vertical > li .is-dropdown-submenu {
    top: 0;
  }
  .dropdown.menu.xxlarge-vertical > li.opens-left > .is-dropdown-submenu {
    right: 100%;
    left: auto;
    top: 0;
  }
  .dropdown.menu.xxlarge-vertical > li.opens-right > .is-dropdown-submenu {
    right: auto;
    left: 100%;
  }
  .dropdown.menu.xxlarge-vertical > li > a::after {
    right: 14px;
  }
  .dropdown.menu.xxlarge-vertical > li.opens-left > a::after {
    right: auto;
    left: 5px;
    display: block;
    width: 0;
    height: 0;
    border: inset 6px;
    content: '';
    border-left-width: 0;
    border-right-style: solid;
    border-color: transparent #1153AD transparent transparent;
  }
  .dropdown.menu.xxlarge-vertical > li.opens-right > a::after {
    display: block;
    width: 0;
    height: 0;
    border: inset 6px;
    content: '';
    border-right-width: 0;
    border-left-style: solid;
    border-color: transparent transparent transparent #1153AD;
  }
}

.dropdown.menu.align-right .is-dropdown-submenu.first-sub {
  top: 100%;
  right: 0;
  left: auto;
}

.is-dropdown-menu.vertical {
  width: 100px;
}

.is-dropdown-menu.vertical.align-right {
  float: right;
}

.is-dropdown-submenu-parent {
  position: relative;
}

.is-dropdown-submenu-parent a::after {
  position: absolute;
  top: 50%;
  right: 5px;
  margin-top: -6px;
}

.is-dropdown-submenu-parent.opens-inner > .is-dropdown-submenu {
  top: 100%;
  left: auto;
}

.is-dropdown-submenu-parent.opens-left > .is-dropdown-submenu {
  right: 100%;
  left: auto;
}

.is-dropdown-submenu-parent.opens-right > .is-dropdown-submenu {
  right: auto;
  left: 100%;
}

.is-dropdown-submenu {
  position: absolute;
  top: 0;
  left: 100%;
  z-index: 1;
  display: none;
  min-width: 200px;
  border: 1px solid #dddddd;
  background: #fefefe;
}

.dropdown .is-dropdown-submenu a {
  padding: 0.7rem 1rem;
}

.is-dropdown-submenu .is-dropdown-submenu-parent > a::after {
  right: 14px;
}

.is-dropdown-submenu .is-dropdown-submenu-parent.opens-left > a::after {
  right: auto;
  left: 5px;
  display: block;
  width: 0;
  height: 0;
  border: inset 6px;
  content: '';
  border-left-width: 0;
  border-right-style: solid;
  border-color: transparent #1153AD transparent transparent;
}

.is-dropdown-submenu .is-dropdown-submenu-parent.opens-right > a::after {
  display: block;
  width: 0;
  height: 0;
  border: inset 6px;
  content: '';
  border-right-width: 0;
  border-left-style: solid;
  border-color: transparent transparent transparent #1153AD;
}

.is-dropdown-submenu .is-dropdown-submenu {
  margin-top: -1px;
}

.is-dropdown-submenu > li {
  width: 100%;
}

.is-dropdown-submenu.js-dropdown-active {
  display: block;
}

.responsive-embed,
.flex-video {
  position: relative;
  height: 0;
  margin-bottom: 1.14286rem;
  padding-bottom: 75%;
  overflow: hidden;
}

.responsive-embed iframe,
.responsive-embed object,
.responsive-embed embed,
.responsive-embed video,
.flex-video iframe,
.flex-video object,
.flex-video embed,
.flex-video video {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
}

.responsive-embed.widescreen,
.flex-video.widescreen {
  padding-bottom: 56.25%;
}

.label {
  display: inline-block;
  padding: 0.33333rem 0.5rem;
  border-radius: 0.18rem;
  font-size: 0.8rem;
  line-height: 1;
  white-space: nowrap;
  cursor: default;
  background: #1153AD;
  color: #fefefe;
}

.label.primary {
  background: #1153AD;
  color: #fefefe;
}

.label.secondary {
  background: #767676;
  color: #fefefe;
}

.label.success {
  background: #3adb76;
  color: #0a0a0a;
}

.label.warning {
  background: #ffae00;
  color: #0a0a0a;
}

.label.alert {
  background: #cc4b37;
  color: #fefefe;
}

.media-object {
  display: block;
  margin-bottom: 1rem;
}

.media-object img {
  max-width: none;
}

@media screen and (max-width: 47.9375em) {
  .media-object.stack-for-small .media-object-section {
    padding: 0;
    padding-bottom: 1rem;
    display: block;
  }
  .media-object.stack-for-small .media-object-section img {
    width: 100%;
  }
}

.media-object-section {
  display: table-cell;
  vertical-align: top;
}

.media-object-section:first-child {
  padding-right: 1rem;
}

.media-object-section:last-child:not(:nth-child(2)) {
  padding-left: 1rem;
}

.media-object-section > :last-child {
  margin-bottom: 0;
}

.media-object-section.middle {
  vertical-align: middle;
}

.media-object-section.bottom {
  vertical-align: bottom;
}

.is-off-canvas-open {
  overflow: hidden;
}

.js-off-canvas-overlay {
  position: absolute;
  top: 0;
  left: 0;
  z-index: 11;
  width: 100%;
  height: 100%;
  -webkit-transition: opacity 0.5s ease, visibility 0.5s ease;
  transition: opacity 0.5s ease, visibility 0.5s ease;
  background: rgba(254, 254, 254, 0.25);
  opacity: 0;
  visibility: hidden;
  overflow: hidden;
}

.js-off-canvas-overlay.is-visible {
  opacity: 1;
  visibility: visible;
}

.js-off-canvas-overlay.is-closable {
  cursor: pointer;
}

.js-off-canvas-overlay.is-overlay-absolute {
  position: absolute;
}

.js-off-canvas-overlay.is-overlay-fixed {
  position: fixed;
}

.off-canvas-wrapper {
  position: relative;
  overflow: hidden;
}

.off-canvas {
  position: fixed;
  z-index: 12;
  -webkit-transition: -webkit-transform 0.5s ease;
  transition: -webkit-transform 0.5s ease;
  transition: transform 0.5s ease;
  transition: transform 0.5s ease, -webkit-transform 0.5s ease;
  -webkit-backface-visibility: hidden;
          backface-visibility: hidden;
  background: #e8e5e5;
}

[data-whatinput='mouse'] .off-canvas {
  outline: 0;
}

.off-canvas.is-transition-push {
  z-index: 12;
}

.off-canvas.is-closed {
  visibility: hidden;
}

.off-canvas.is-transition-overlap {
  z-index: 13;
}

.off-canvas.is-transition-overlap.is-open {
  -webkit-box-shadow: 0 0 10px rgba(10, 10, 10, 0.7);
          box-shadow: 0 0 10px rgba(10, 10, 10, 0.7);
}

.off-canvas.is-open {
  -webkit-transform: translate(0, 0);
          transform: translate(0, 0);
}

.off-canvas-absolute {
  position: absolute;
  z-index: 12;
  -webkit-transition: -webkit-transform 0.5s ease;
  transition: -webkit-transform 0.5s ease;
  transition: transform 0.5s ease;
  transition: transform 0.5s ease, -webkit-transform 0.5s ease;
  -webkit-backface-visibility: hidden;
          backface-visibility: hidden;
  background: #e8e5e5;
}

[data-whatinput='mouse'] .off-canvas-absolute {
  outline: 0;
}

.off-canvas-absolute.is-transition-push {
  z-index: 12;
}

.off-canvas-absolute.is-closed {
  visibility: hidden;
}

.off-canvas-absolute.is-transition-overlap {
  z-index: 13;
}

.off-canvas-absolute.is-transition-overlap.is-open {
  -webkit-box-shadow: 0 0 10px rgba(10, 10, 10, 0.7);
          box-shadow: 0 0 10px rgba(10, 10, 10, 0.7);
}

.off-canvas-absolute.is-open {
  -webkit-transform: translate(0, 0);
          transform: translate(0, 0);
}

.position-left {
  top: 0;
  left: 0;
  width: 250px;
  height: 100%;
  -webkit-transform: translateX(-250px);
          transform: translateX(-250px);
  overflow-y: auto;
}

.off-canvas-content .off-canvas.position-left {
  -webkit-transform: translateX(-250px);
          transform: translateX(-250px);
}

.off-canvas-content .off-canvas.position-left.is-transition-overlap.is-open {
  -webkit-transform: translate(0, 0);
          transform: translate(0, 0);
}

.off-canvas-content.is-open-left.has-transition-push {
  -webkit-transform: translateX(250px);
          transform: translateX(250px);
}

.position-left.is-transition-push {
  -webkit-box-shadow: inset -13px 0 20px -13px rgba(10, 10, 10, 0.25);
          box-shadow: inset -13px 0 20px -13px rgba(10, 10, 10, 0.25);
}

.position-right {
  top: 0;
  right: 0;
  width: 250px;
  height: 100%;
  -webkit-transform: translateX(250px);
          transform: translateX(250px);
  overflow-y: auto;
}

.off-canvas-content .off-canvas.position-right {
  -webkit-transform: translateX(250px);
          transform: translateX(250px);
}

.off-canvas-content .off-canvas.position-right.is-transition-overlap.is-open {
  -webkit-transform: translate(0, 0);
          transform: translate(0, 0);
}

.off-canvas-content.is-open-right.has-transition-push {
  -webkit-transform: translateX(-250px);
          transform: translateX(-250px);
}

.position-right.is-transition-push {
  -webkit-box-shadow: inset 13px 0 20px -13px rgba(10, 10, 10, 0.25);
          box-shadow: inset 13px 0 20px -13px rgba(10, 10, 10, 0.25);
}

.position-top {
  top: 0;
  left: 0;
  width: 100%;
  height: 250px;
  -webkit-transform: translateY(-250px);
          transform: translateY(-250px);
  overflow-x: auto;
}

.off-canvas-content .off-canvas.position-top {
  -webkit-transform: translateY(-250px);
          transform: translateY(-250px);
}

.off-canvas-content .off-canvas.position-top.is-transition-overlap.is-open {
  -webkit-transform: translate(0, 0);
          transform: translate(0, 0);
}

.off-canvas-content.is-open-top.has-transition-push {
  -webkit-transform: translateY(250px);
          transform: translateY(250px);
}

.position-top.is-transition-push {
  -webkit-box-shadow: inset 0 -13px 20px -13px rgba(10, 10, 10, 0.25);
          box-shadow: inset 0 -13px 20px -13px rgba(10, 10, 10, 0.25);
}

.position-bottom {
  bottom: 0;
  left: 0;
  width: 100%;
  height: 250px;
  -webkit-transform: translateY(250px);
          transform: translateY(250px);
  overflow-x: auto;
}

.off-canvas-content .off-canvas.position-bottom {
  -webkit-transform: translateY(250px);
          transform: translateY(250px);
}

.off-canvas-content .off-canvas.position-bottom.is-transition-overlap.is-open {
  -webkit-transform: translate(0, 0);
          transform: translate(0, 0);
}

.off-canvas-content.is-open-bottom.has-transition-push {
  -webkit-transform: translateY(-250px);
          transform: translateY(-250px);
}

.position-bottom.is-transition-push {
  -webkit-box-shadow: inset 0 13px 20px -13px rgba(10, 10, 10, 0.25);
          box-shadow: inset 0 13px 20px -13px rgba(10, 10, 10, 0.25);
}

.off-canvas-content {
  -webkit-transform: none;
          transform: none;
  -webkit-transition: -webkit-transform 0.5s ease;
  transition: -webkit-transform 0.5s ease;
  transition: transform 0.5s ease;
  transition: transform 0.5s ease, -webkit-transform 0.5s ease;
  -webkit-backface-visibility: hidden;
          backface-visibility: hidden;
}

.off-canvas-content.has-transition-push {
  -webkit-transform: translate(0, 0);
          transform: translate(0, 0);
}

.off-canvas-content .off-canvas.is-open {
  -webkit-transform: translate(0, 0);
          transform: translate(0, 0);
}

@media print, screen and (min-width: 48em) {
  .position-left.reveal-for-medium {
    -webkit-transform: none;
            transform: none;
    z-index: 12;
    -webkit-transition: none;
    transition: none;
    visibility: visible;
  }
  .position-left.reveal-for-medium .close-button {
    display: none;
  }
  .off-canvas-content .position-left.reveal-for-medium {
    -webkit-transform: none;
            transform: none;
  }
  .off-canvas-content.has-reveal-left {
    margin-left: 250px;
  }
  .position-left.reveal-for-medium ~ .off-canvas-content {
    margin-left: 250px;
  }
  .position-right.reveal-for-medium {
    -webkit-transform: none;
            transform: none;
    z-index: 12;
    -webkit-transition: none;
    transition: none;
    visibility: visible;
  }
  .position-right.reveal-for-medium .close-button {
    display: none;
  }
  .off-canvas-content .position-right.reveal-for-medium {
    -webkit-transform: none;
            transform: none;
  }
  .off-canvas-content.has-reveal-right {
    margin-right: 250px;
  }
  .position-right.reveal-for-medium ~ .off-canvas-content {
    margin-right: 250px;
  }
  .position-top.reveal-for-medium {
    -webkit-transform: none;
            transform: none;
    z-index: 12;
    -webkit-transition: none;
    transition: none;
    visibility: visible;
  }
  .position-top.reveal-for-medium .close-button {
    display: none;
  }
  .off-canvas-content .position-top.reveal-for-medium {
    -webkit-transform: none;
            transform: none;
  }
  .off-canvas-content.has-reveal-top {
    margin-top: 250px;
  }
  .position-top.reveal-for-medium ~ .off-canvas-content {
    margin-top: 250px;
  }
  .position-bottom.reveal-for-medium {
    -webkit-transform: none;
            transform: none;
    z-index: 12;
    -webkit-transition: none;
    transition: none;
    visibility: visible;
  }
  .position-bottom.reveal-for-medium .close-button {
    display: none;
  }
  .off-canvas-content .position-bottom.reveal-for-medium {
    -webkit-transform: none;
            transform: none;
  }
  .off-canvas-content.has-reveal-bottom {
    margin-bottom: 250px;
  }
  .position-bottom.reveal-for-medium ~ .off-canvas-content {
    margin-bottom: 250px;
  }
}

@media print, screen and (min-width: 64em) {
  .position-left.reveal-for-large {
    -webkit-transform: none;
            transform: none;
    z-index: 12;
    -webkit-transition: none;
    transition: none;
    visibility: visible;
  }
  .position-left.reveal-for-large .close-button {
    display: none;
  }
  .off-canvas-content .position-left.reveal-for-large {
    -webkit-transform: none;
            transform: none;
  }
  .off-canvas-content.has-reveal-left {
    margin-left: 250px;
  }
  .position-left.reveal-for-large ~ .off-canvas-content {
    margin-left: 250px;
  }
  .position-right.reveal-for-large {
    -webkit-transform: none;
            transform: none;
    z-index: 12;
    -webkit-transition: none;
    transition: none;
    visibility: visible;
  }
  .position-right.reveal-for-large .close-button {
    display: none;
  }
  .off-canvas-content .position-right.reveal-for-large {
    -webkit-transform: none;
            transform: none;
  }
  .off-canvas-content.has-reveal-right {
    margin-right: 250px;
  }
  .position-right.reveal-for-large ~ .off-canvas-content {
    margin-right: 250px;
  }
  .position-top.reveal-for-large {
    -webkit-transform: none;
            transform: none;
    z-index: 12;
    -webkit-transition: none;
    transition: none;
    visibility: visible;
  }
  .position-top.reveal-for-large .close-button {
    display: none;
  }
  .off-canvas-content .position-top.reveal-for-large {
    -webkit-transform: none;
            transform: none;
  }
  .off-canvas-content.has-reveal-top {
    margin-top: 250px;
  }
  .position-top.reveal-for-large ~ .off-canvas-content {
    margin-top: 250px;
  }
  .position-bottom.reveal-for-large {
    -webkit-transform: none;
            transform: none;
    z-index: 12;
    -webkit-transition: none;
    transition: none;
    visibility: visible;
  }
  .position-bottom.reveal-for-large .close-button {
    display: none;
  }
  .off-canvas-content .position-bottom.reveal-for-large {
    -webkit-transform: none;
            transform: none;
  }
  .off-canvas-content.has-reveal-bottom {
    margin-bottom: 250px;
  }
  .position-bottom.reveal-for-large ~ .off-canvas-content {
    margin-bottom: 250px;
  }
}

@media screen and (min-width: 75em) {
  .position-left.reveal-for-xlarge {
    -webkit-transform: none;
            transform: none;
    z-index: 12;
    -webkit-transition: none;
    transition: none;
    visibility: visible;
  }
  .position-left.reveal-for-xlarge .close-button {
    display: none;
  }
  .off-canvas-content .position-left.reveal-for-xlarge {
    -webkit-transform: none;
            transform: none;
  }
  .off-canvas-content.has-reveal-left {
    margin-left: 250px;
  }
  .position-left.reveal-for-xlarge ~ .off-canvas-content {
    margin-left: 250px;
  }
  .position-right.reveal-for-xlarge {
    -webkit-transform: none;
            transform: none;
    z-index: 12;
    -webkit-transition: none;
    transition: none;
    visibility: visible;
  }
  .position-right.reveal-for-xlarge .close-button {
    display: none;
  }
  .off-canvas-content .position-right.reveal-for-xlarge {
    -webkit-transform: none;
            transform: none;
  }
  .off-canvas-content.has-reveal-right {
    margin-right: 250px;
  }
  .position-right.reveal-for-xlarge ~ .off-canvas-content {
    margin-right: 250px;
  }
  .position-top.reveal-for-xlarge {
    -webkit-transform: none;
            transform: none;
    z-index: 12;
    -webkit-transition: none;
    transition: none;
    visibility: visible;
  }
  .position-top.reveal-for-xlarge .close-button {
    display: none;
  }
  .off-canvas-content .position-top.reveal-for-xlarge {
    -webkit-transform: none;
            transform: none;
  }
  .off-canvas-content.has-reveal-top {
    margin-top: 250px;
  }
  .position-top.reveal-for-xlarge ~ .off-canvas-content {
    margin-top: 250px;
  }
  .position-bottom.reveal-for-xlarge {
    -webkit-transform: none;
            transform: none;
    z-index: 12;
    -webkit-transition: none;
    transition: none;
    visibility: visible;
  }
  .position-bottom.reveal-for-xlarge .close-button {
    display: none;
  }
  .off-canvas-content .position-bottom.reveal-for-xlarge {
    -webkit-transform: none;
            transform: none;
  }
  .off-canvas-content.has-reveal-bottom {
    margin-bottom: 250px;
  }
  .position-bottom.reveal-for-xlarge ~ .off-canvas-content {
    margin-bottom: 250px;
  }
}

@media screen and (min-width: 90em) {
  .position-left.reveal-for-xxlarge {
    -webkit-transform: none;
            transform: none;
    z-index: 12;
    -webkit-transition: none;
    transition: none;
    visibility: visible;
  }
  .position-left.reveal-for-xxlarge .close-button {
    display: none;
  }
  .off-canvas-content .position-left.reveal-for-xxlarge {
    -webkit-transform: none;
            transform: none;
  }
  .off-canvas-content.has-reveal-left {
    margin-left: 250px;
  }
  .position-left.reveal-for-xxlarge ~ .off-canvas-content {
    margin-left: 250px;
  }
  .position-right.reveal-for-xxlarge {
    -webkit-transform: none;
            transform: none;
    z-index: 12;
    -webkit-transition: none;
    transition: none;
    visibility: visible;
  }
  .position-right.reveal-for-xxlarge .close-button {
    display: none;
  }
  .off-canvas-content .position-right.reveal-for-xxlarge {
    -webkit-transform: none;
            transform: none;
  }
  .off-canvas-content.has-reveal-right {
    margin-right: 250px;
  }
  .position-right.reveal-for-xxlarge ~ .off-canvas-content {
    margin-right: 250px;
  }
  .position-top.reveal-for-xxlarge {
    -webkit-transform: none;
            transform: none;
    z-index: 12;
    -webkit-transition: none;
    transition: none;
    visibility: visible;
  }
  .position-top.reveal-for-xxlarge .close-button {
    display: none;
  }
  .off-canvas-content .position-top.reveal-for-xxlarge {
    -webkit-transform: none;
            transform: none;
  }
  .off-canvas-content.has-reveal-top {
    margin-top: 250px;
  }
  .position-top.reveal-for-xxlarge ~ .off-canvas-content {
    margin-top: 250px;
  }
  .position-bottom.reveal-for-xxlarge {
    -webkit-transform: none;
            transform: none;
    z-index: 12;
    -webkit-transition: none;
    transition: none;
    visibility: visible;
  }
  .position-bottom.reveal-for-xxlarge .close-button {
    display: none;
  }
  .off-canvas-content .position-bottom.reveal-for-xxlarge {
    -webkit-transform: none;
            transform: none;
  }
  .off-canvas-content.has-reveal-bottom {
    margin-bottom: 250px;
  }
  .position-bottom.reveal-for-xxlarge ~ .off-canvas-content {
    margin-bottom: 250px;
  }
}

@media print, screen and (min-width: 48em) {
  .off-canvas.in-canvas-for-medium {
    visibility: visible;
    height: auto;
    position: static;
    background: inherit;
    width: inherit;
    overflow: inherit;
    -webkit-transition: inherit;
    transition: inherit;
  }
  .off-canvas.in-canvas-for-medium.position-left, .off-canvas.in-canvas-for-medium.position-right, .off-canvas.in-canvas-for-medium.position-top, .off-canvas.in-canvas-for-medium.position-bottom {
    -webkit-box-shadow: none;
            box-shadow: none;
    -webkit-transform: none;
            transform: none;
  }
  .off-canvas.in-canvas-for-medium .close-button {
    display: none;
  }
}

@media print, screen and (min-width: 64em) {
  .off-canvas.in-canvas-for-large {
    visibility: visible;
    height: auto;
    position: static;
    background: inherit;
    width: inherit;
    overflow: inherit;
    -webkit-transition: inherit;
    transition: inherit;
  }
  .off-canvas.in-canvas-for-large.position-left, .off-canvas.in-canvas-for-large.position-right, .off-canvas.in-canvas-for-large.position-top, .off-canvas.in-canvas-for-large.position-bottom {
    -webkit-box-shadow: none;
            box-shadow: none;
    -webkit-transform: none;
            transform: none;
  }
  .off-canvas.in-canvas-for-large .close-button {
    display: none;
  }
}

@media screen and (min-width: 75em) {
  .off-canvas.in-canvas-for-xlarge {
    visibility: visible;
    height: auto;
    position: static;
    background: inherit;
    width: inherit;
    overflow: inherit;
    -webkit-transition: inherit;
    transition: inherit;
  }
  .off-canvas.in-canvas-for-xlarge.position-left, .off-canvas.in-canvas-for-xlarge.position-right, .off-canvas.in-canvas-for-xlarge.position-top, .off-canvas.in-canvas-for-xlarge.position-bottom {
    -webkit-box-shadow: none;
            box-shadow: none;
    -webkit-transform: none;
            transform: none;
  }
  .off-canvas.in-canvas-for-xlarge .close-button {
    display: none;
  }
}

@media screen and (min-width: 90em) {
  .off-canvas.in-canvas-for-xxlarge {
    visibility: visible;
    height: auto;
    position: static;
    background: inherit;
    width: inherit;
    overflow: inherit;
    -webkit-transition: inherit;
    transition: inherit;
  }
  .off-canvas.in-canvas-for-xxlarge.position-left, .off-canvas.in-canvas-for-xxlarge.position-right, .off-canvas.in-canvas-for-xxlarge.position-top, .off-canvas.in-canvas-for-xxlarge.position-bottom {
    -webkit-box-shadow: none;
            box-shadow: none;
    -webkit-transform: none;
            transform: none;
  }
  .off-canvas.in-canvas-for-xxlarge .close-button {
    display: none;
  }
}

.orbit {
  position: relative;
}

.orbit-container {
  position: relative;
  height: 0;
  margin: 0;
  list-style: none;
  overflow: hidden;
}

.orbit-slide {
  width: 100%;
}

.orbit-slide.no-motionui.is-active {
  top: 0;
  left: 0;
}

.orbit-figure {
  margin: 0;
}

.orbit-image {
  width: 100%;
  max-width: 100%;
  margin: 0;
}

.orbit-caption {
  position: absolute;
  bottom: 0;
  width: 100%;
  margin-bottom: 0;
  padding: 1rem;
  background-color: rgba(10, 10, 10, 0.5);
  color: #fefefe;
}

.orbit-previous, .orbit-next {
  position: absolute;
  top: 50%;
  -webkit-transform: translateY(-50%);
          transform: translateY(-50%);
  z-index: 10;
  padding: 1rem;
  color: #fefefe;
}

[data-whatinput='mouse'] .orbit-previous, [data-whatinput='mouse'] .orbit-next {
  outline: 0;
}

.orbit-previous:hover, .orbit-next:hover, .orbit-previous:active, .orbit-next:active, .orbit-previous:focus, .orbit-next:focus {
  background-color: rgba(10, 10, 10, 0.5);
}

.orbit-previous {
  left: 0;
}

.orbit-next {
  left: auto;
  right: 0;
}

.orbit-bullets {
  position: relative;
  margin-top: 0.8rem;
  margin-bottom: 0.8rem;
  text-align: center;
}

[data-whatinput='mouse'] .orbit-bullets {
  outline: 0;
}

.orbit-bullets button {
  width: 1.2rem;
  height: 1.2rem;
  margin: 0.1rem;
  border-radius: 50%;
  background-color: #dddddd;
}

.orbit-bullets button:hover {
  background-color: #79796A;
}

.orbit-bullets button.is-active {
  background-color: #79796A;
}

.pagination {
  margin-left: 0;
  margin-bottom: 1rem;
}

.pagination::before, .pagination::after {
  display: table;
  content: ' ';
}

.pagination::after {
  clear: both;
}

.pagination li {
  margin-right: 0.07143rem;
  border-radius: 0.18rem;
  font-size: 1rem;
  display: none;
}

.pagination li:last-child, .pagination li:first-child {
  display: inline-block;
}

@media print, screen and (min-width: 48em) {
  .pagination li {
    display: inline-block;
  }
}

.pagination a,
.pagination button {
  display: block;
  padding: 0.21429rem 0.71429rem;
  border-radius: 0.18rem;
  color: #0a0a0a;
}

.pagination a:hover,
.pagination button:hover {
  background: #e8e5e5;
}

.pagination .current {
  padding: 0.21429rem 0.71429rem;
  background: #1153AD;
  color: #fefefe;
  cursor: default;
}

.pagination .disabled {
  padding: 0.21429rem 0.71429rem;
  color: #dddddd;
  cursor: not-allowed;
}

.pagination .disabled:hover {
  background: transparent;
}

.pagination .ellipsis::after {
  padding: 0.21429rem 0.71429rem;
  content: '\2026';
  color: #0a0a0a;
}

.pagination-previous a::before,
.pagination-previous.disabled::before {
  display: inline-block;
  margin-right: 0.5rem;
  content: '\00ab';
}

.pagination-next a::after,
.pagination-next.disabled::after {
  display: inline-block;
  margin-left: 0.5rem;
  content: '\00bb';
}

.progress {
  height: 1rem;
  margin-bottom: 1rem;
  border-radius: 0.18rem;
  background-color: #dddddd;
}

.progress.primary .progress-meter {
  background-color: #1153AD;
}

.progress.secondary .progress-meter {
  background-color: #767676;
}

.progress.success .progress-meter {
  background-color: #3adb76;
}

.progress.warning .progress-meter {
  background-color: #ffae00;
}

.progress.alert .progress-meter {
  background-color: #cc4b37;
}

.progress-meter {
  position: relative;
  display: block;
  width: 0%;
  height: 100%;
  background-color: #1153AD;
  border-radius: 0.18rem;
}

.progress-meter-text {
  position: absolute;
  top: 50%;
  left: 50%;
  -webkit-transform: translate(-50%, -50%);
          transform: translate(-50%, -50%);
  position: absolute;
  margin: 0;
  font-size: 0.75rem;
  font-weight: bold;
  color: #fefefe;
  white-space: nowrap;
  border-radius: 0.18rem;
}

.slider {
  position: relative;
  height: 0.5rem;
  margin-top: 1.25rem;
  margin-bottom: 2.25rem;
  background-color: #e8e5e5;
  cursor: pointer;
  -webkit-user-select: none;
     -moz-user-select: none;
      -ms-user-select: none;
          user-select: none;
  -ms-touch-action: none;
      touch-action: none;
}

.slider-fill {
  position: absolute;
  top: 0;
  left: 0;
  display: inline-block;
  max-width: 100%;
  height: 0.5rem;
  background-color: #dddddd;
  -webkit-transition: all 0.2s ease-in-out;
  transition: all 0.2s ease-in-out;
}

.slider-fill.is-dragging {
  -webkit-transition: all 0s linear;
  transition: all 0s linear;
}

.slider-handle {
  position: absolute;
  top: 50%;
  -webkit-transform: translateY(-50%);
          transform: translateY(-50%);
  left: 0;
  z-index: 1;
  display: inline-block;
  width: 1.4rem;
  height: 1.4rem;
  border-radius: 0.18rem;
  background-color: #1153AD;
  -webkit-transition: all 0.2s ease-in-out;
  transition: all 0.2s ease-in-out;
  -ms-touch-action: manipulation;
      touch-action: manipulation;
}

[data-whatinput='mouse'] .slider-handle {
  outline: 0;
}

.slider-handle:hover {
  background-color: #0e4793;
}

.slider-handle.is-dragging {
  -webkit-transition: all 0s linear;
  transition: all 0s linear;
}

.slider.disabled,
.slider[disabled] {
  opacity: 0.25;
  cursor: not-allowed;
}

.slider.vertical {
  display: inline-block;
  width: 0.5rem;
  height: 12.5rem;
  margin: 0 1.25rem;
  -webkit-transform: scale(1, -1);
          transform: scale(1, -1);
}

.slider.vertical .slider-fill {
  top: 0;
  width: 0.5rem;
  max-height: 100%;
}

.slider.vertical .slider-handle {
  position: absolute;
  top: 0;
  left: 50%;
  width: 1.4rem;
  height: 1.4rem;
  -webkit-transform: translateX(-50%);
          transform: translateX(-50%);
}

.sticky-container {
  position: relative;
}

.sticky {
  position: relative;
  z-index: 0;
  -webkit-transform: translate3d(0, 0, 0);
          transform: translate3d(0, 0, 0);
}

.sticky.is-stuck {
  position: fixed;
  z-index: 5;
  width: 100%;
}

.sticky.is-stuck.is-at-top {
  top: 0;
}

.sticky.is-stuck.is-at-bottom {
  bottom: 0;
}

.sticky.is-anchored {
  position: relative;
  right: auto;
  left: auto;
}

.sticky.is-anchored.is-at-bottom {
  bottom: 0;
}

body.is-reveal-open {
  overflow: hidden;
}

html.is-reveal-open,
html.is-reveal-open body {
  min-height: 100%;
  overflow: hidden;
  position: fixed;
  -webkit-user-select: none;
     -moz-user-select: none;
      -ms-user-select: none;
          user-select: none;
}

.reveal-overlay {
  position: fixed;
  top: 0;
  right: 0;
  bottom: 0;
  left: 0;
  z-index: 1005;
  display: none;
  background-color: rgba(10, 10, 10, 0.45);
  overflow-y: scroll;
}

.reveal {
  z-index: 1006;
  -webkit-backface-visibility: hidden;
          backface-visibility: hidden;
  display: none;
  padding: 1rem;
  border: none;
  border-radius: 3px;
  background-color: #fefefe;
  position: relative;
  top: 100px;
  margin-right: auto;
  margin-left: auto;
  overflow-y: auto;
}

[data-whatinput='mouse'] .reveal {
  outline: 0;
}

@media print, screen and (min-width: 48em) {
  .reveal {
    min-height: 0;
  }
}

.reveal .column, .reveal .columns {
  min-width: 0;
}

.reveal > :last-child {
  margin-bottom: 0;
}

@media print, screen and (min-width: 48em) {
  .reveal {
    width: 600px;
    max-width: 92.85714rem;
  }
}

.reveal.collapse {
  padding: 0;
}

@media print, screen and (min-width: 48em) {
  .reveal.tiny {
    width: 30%;
    max-width: 92.85714rem;
  }
}

@media print, screen and (min-width: 48em) {
  .reveal.small {
    width: 50%;
    max-width: 92.85714rem;
  }
}

@media print, screen and (min-width: 48em) {
  .reveal.large {
    width: 90%;
    max-width: 92.85714rem;
  }
}

.reveal.full {
  top: 0;
  left: 0;
  width: 100%;
  max-width: none;
  height: 100%;
  height: 100vh;
  min-height: 100vh;
  margin-left: 0;
  border: 0;
  border-radius: 0;
}

@media screen and (max-width: 47.9375em) {
  .reveal {
    top: 0;
    left: 0;
    width: 100%;
    max-width: none;
    height: 100%;
    height: 100vh;
    min-height: 100vh;
    margin-left: 0;
    border: 0;
    border-radius: 0;
  }
}

.reveal.without-overlay {
  position: fixed;
}

/*@include foundation-switch;*/
table {
  border-collapse: collapse;
  width: 100%;
  margin-bottom: 1rem;
  border-radius: 0.18rem;
}

thead,
tbody,
tfoot {
  border: 1px solid #f1f1f1;
  background-color: #fefefe;
}

caption {
  padding: 0.42857rem 0.57143rem 0.57143rem;
  font-weight: bold;
}

thead {
  background: #f8f8f8;
  color: #0a0a0a;
}

tfoot {
  background: #f1f1f1;
  color: #0a0a0a;
}

thead tr,
tfoot tr {
  background: transparent;
}

thead th,
thead td,
tfoot th,
tfoot td {
  padding: 0.42857rem 0.57143rem 0.57143rem;
  font-weight: bold;
  text-align: left;
}

tbody th,
tbody td {
  padding: 0.42857rem 0.57143rem 0.57143rem;
}

tbody tr {
  border-bottom: 0;
  border-bottom: 1px solid #f1f1f1;
  background-color: #fefefe;
}

table.striped tbody tr:nth-child(even) {
  border-bottom: 0;
  background-color: #f1f1f1;
}

@media screen and (max-width: 63.9375em) {
  table.stack thead {
    display: none;
  }
  table.stack tfoot {
    display: none;
  }
  table.stack tr,
  table.stack th,
  table.stack td {
    display: block;
  }
  table.stack td {
    border-top: 0;
  }
}

table.scroll {
  display: block;
  width: 100%;
  overflow-x: auto;
}

table.hover thead tr:hover {
  background-color: #f3f3f3;
}

table.hover tfoot tr:hover {
  background-color: #ececec;
}

table.hover tbody tr:hover {
  background-color: #f9f9f9;
}

table.hover.striped tr:nth-of-type(even):hover {
  background-color: #ececec;
}

.table-scroll {
  overflow-x: auto;
}

.table-scroll table {
  width: auto;
}

.tabs {
  margin: 0;
  border: 1px solid #dddddd;
  background: #fefefe;
  list-style-type: none;
}

.tabs::before, .tabs::after {
  display: table;
  content: ' ';
}

.tabs::after {
  clear: both;
}

.tabs.vertical > li {
  display: block;
  float: none;
  width: auto;
}

.tabs.simple > li > a {
  padding: 0;
}

.tabs.simple > li > a:hover {
  background: transparent;
}

.tabs.primary {
  background: #1153AD;
}

.tabs.primary > li > a {
  color: #fefefe;
}

.tabs.primary > li > a:hover, .tabs.primary > li > a:focus {
  background: #125abc;
}

.tabs-title {
  float: left;
}

.tabs-title > a {
  display: block;
  padding: 1.25rem 1.5rem;
  font-size: 0.85714rem;
  line-height: 1;
  color: #1153AD;
}

.tabs-title > a:hover {
  background: #fefefe;
  color: #0f4795;
}

.tabs-title > a:focus, .tabs-title > a[aria-selected='true'] {
  background: #e8e5e5;
  color: #1153AD;
}

.tabs-content {
  border: 1px solid #dddddd;
  border-top: 0;
  background: #fefefe;
  color: #0a0a0a;
  -webkit-transition: all 0.5s ease;
  transition: all 0.5s ease;
}

.tabs-content.vertical {
  border: 1px solid #dddddd;
  border-left: 0;
}

.tabs-panel {
  display: none;
  padding: 1rem;
}

.tabs-panel.is-active {
  display: block;
}

.thumbnail {
  display: inline-block;
  max-width: 100%;
  margin-bottom: 1rem;
  border: solid 4px #fefefe;
  border-radius: 0.18rem;
  -webkit-box-shadow: 0 0 0 1px rgba(10, 10, 10, 0.2);
          box-shadow: 0 0 0 1px rgba(10, 10, 10, 0.2);
  line-height: 0;
}

a.thumbnail {
  -webkit-transition: -webkit-box-shadow 200ms ease-out;
  transition: -webkit-box-shadow 200ms ease-out;
  transition: box-shadow 200ms ease-out;
  transition: box-shadow 200ms ease-out, -webkit-box-shadow 200ms ease-out;
}

a.thumbnail:hover, a.thumbnail:focus {
  -webkit-box-shadow: 0 0 6px 1px rgba(17, 83, 173, 0.5);
          box-shadow: 0 0 6px 1px rgba(17, 83, 173, 0.5);
}

a.thumbnail image {
  -webkit-box-shadow: none;
          box-shadow: none;
}

.title-bar {
  padding: 0.5rem;
  background: #0a0a0a;
  color: #fefefe;
}

.title-bar::before, .title-bar::after {
  display: table;
  content: ' ';
}

.title-bar::after {
  clear: both;
}

.title-bar .menu-icon {
  margin-left: 0.25rem;
  margin-right: 0.25rem;
}

.title-bar-left {
  float: left;
}

.title-bar-right {
  float: right;
  text-align: right;
}

.title-bar-title {
  display: inline-block;
  vertical-align: middle;
  font-weight: bold;
}

.has-tip {
  position: relative;
  display: inline-block;
  border-bottom: dotted 1px #79796A;
  font-weight: bold;
  cursor: help;
}

.tooltip {
  position: absolute;
  top: calc(100% + 0.6495rem);
  z-index: 1200;
  max-width: 10rem;
  padding: 0.75rem;
  border-radius: 0.18rem;
  background-color: #0a0a0a;
  font-size: 80%;
  color: #fefefe;
}

.tooltip::before {
  position: absolute;
}

.tooltip.bottom::before {
  display: block;
  width: 0;
  height: 0;
  border: inset 0.75rem;
  content: '';
  border-top-width: 0;
  border-bottom-style: solid;
  border-color: transparent transparent #0a0a0a;
  bottom: 100%;
}

.tooltip.bottom.align-center::before {
  left: 50%;
  -webkit-transform: translateX(-50%);
          transform: translateX(-50%);
}

.tooltip.top::before {
  display: block;
  width: 0;
  height: 0;
  border: inset 0.75rem;
  content: '';
  border-bottom-width: 0;
  border-top-style: solid;
  border-color: #0a0a0a transparent transparent;
  top: 100%;
  bottom: auto;
}

.tooltip.top.align-center::before {
  left: 50%;
  -webkit-transform: translateX(-50%);
          transform: translateX(-50%);
}

.tooltip.left::before {
  display: block;
  width: 0;
  height: 0;
  border: inset 0.75rem;
  content: '';
  border-right-width: 0;
  border-left-style: solid;
  border-color: transparent transparent transparent #0a0a0a;
  left: 100%;
}

.tooltip.left.align-center::before {
  bottom: auto;
  top: 50%;
  -webkit-transform: translateY(-50%);
          transform: translateY(-50%);
}

.tooltip.right::before {
  display: block;
  width: 0;
  height: 0;
  border: inset 0.75rem;
  content: '';
  border-left-width: 0;
  border-right-style: solid;
  border-color: transparent #0a0a0a transparent transparent;
  right: 100%;
  left: auto;
}

.tooltip.right.align-center::before {
  bottom: auto;
  top: 50%;
  -webkit-transform: translateY(-50%);
          transform: translateY(-50%);
}

.tooltip.align-top::before {
  bottom: auto;
  top: 10%;
}

.tooltip.align-bottom::before {
  bottom: 10%;
  top: auto;
}

.tooltip.align-left::before {
  left: 10%;
  right: auto;
}

.tooltip.align-right::before {
  left: auto;
  right: 10%;
}

.top-bar {
  padding: 0.5rem;
}

.top-bar::before, .top-bar::after {
  display: table;
  content: ' ';
}

.top-bar::after {
  clear: both;
}

.top-bar,
.top-bar ul {
  background-color: #e8e5e5;
}

.top-bar input {
  max-width: 200px;
  margin-right: 1rem;
}

.top-bar .input-group-field {
  width: 100%;
  margin-right: 0;
}

.top-bar input.button {
  width: auto;
}

.top-bar .top-bar-left,
.top-bar .top-bar-right {
  width: 100%;
}

@media print, screen and (min-width: 48em) {
  .top-bar .top-bar-left,
  .top-bar .top-bar-right {
    width: auto;
  }
}

@media screen and (max-width: 63.9375em) {
  .top-bar.stacked-for-medium .top-bar-left,
  .top-bar.stacked-for-medium .top-bar-right {
    width: 100%;
  }
}

@media screen and (max-width: 74.9375em) {
  .top-bar.stacked-for-large .top-bar-left,
  .top-bar.stacked-for-large .top-bar-right {
    width: 100%;
  }
}

@media screen and (max-width: 89.9375em) {
  .top-bar.stacked-for-xlarge .top-bar-left,
  .top-bar.stacked-for-xlarge .top-bar-right {
    width: 100%;
  }
}

.top-bar.stacked-for-xxlarge .top-bar-left,
.top-bar.stacked-for-xxlarge .top-bar-right {
  width: 100%;
}

.top-bar-title {
  display: inline-block;
  float: left;
  padding: 0.5rem 1rem 0.5rem 0;
}

.top-bar-title .menu-icon {
  bottom: 2px;
}

.top-bar-left {
  float: left;
}

.top-bar-right {
  float: right;
}

.hide {
  display: none !important;
}

.invisible {
  visibility: hidden;
}

@media screen and (max-width: 47.9375em) {
  .hide-for-small-only {
    display: none !important;
  }
}

@media screen and (max-width: 0em), screen and (min-width: 48em) {
  .show-for-small-only {
    display: none !important;
  }
}

@media print, screen and (min-width: 48em) {
  .hide-for-medium {
    display: none !important;
  }
}

@media screen and (max-width: 47.9375em) {
  .show-for-medium {
    display: none !important;
  }
}

@media screen and (min-width: 48em) and (max-width: 63.9375em) {
  .hide-for-medium-only {
    display: none !important;
  }
}

@media screen and (max-width: 47.9375em), screen and (min-width: 64em) {
  .show-for-medium-only {
    display: none !important;
  }
}

@media print, screen and (min-width: 64em) {
  .hide-for-large {
    display: none !important;
  }
}

@media screen and (max-width: 63.9375em) {
  .show-for-large {
    display: none !important;
  }
}

@media screen and (min-width: 64em) and (max-width: 74.9375em) {
  .hide-for-large-only {
    display: none !important;
  }
}

@media screen and (max-width: 63.9375em), screen and (min-width: 75em) {
  .show-for-large-only {
    display: none !important;
  }
}

@media screen and (min-width: 75em) {
  .hide-for-xlarge {
    display: none !important;
  }
}

@media screen and (max-width: 74.9375em) {
  .show-for-xlarge {
    display: none !important;
  }
}

@media screen and (min-width: 75em) and (max-width: 89.9375em) {
  .hide-for-xlarge-only {
    display: none !important;
  }
}

@media screen and (max-width: 74.9375em), screen and (min-width: 90em) {
  .show-for-xlarge-only {
    display: none !important;
  }
}

@media screen and (min-width: 90em) {
  .hide-for-xxlarge {
    display: none !important;
  }
}

@media screen and (max-width: 89.9375em) {
  .show-for-xxlarge {
    display: none !important;
  }
}

@media screen and (min-width: 90em) {
  .hide-for-xxlarge-only {
    display: none !important;
  }
}

@media screen and (max-width: 89.9375em) {
  .show-for-xxlarge-only {
    display: none !important;
  }
}

.show-for-sr,
.show-on-focus {
  position: absolute !important;
  width: 1px;
  height: 1px;
  padding: 0;
  overflow: hidden;
  clip: rect(0, 0, 0, 0);
  white-space: nowrap;
  -webkit-clip-path: inset(50%);
          clip-path: inset(50%);
  border: 0;
}

.show-on-focus:active, .show-on-focus:focus {
  position: static !important;
  width: auto;
  height: auto;
  overflow: visible;
  clip: auto;
  white-space: normal;
  -webkit-clip-path: none;
          clip-path: none;
}

.show-for-landscape,
.hide-for-portrait {
  display: block !important;
}

@media screen and (orientation: landscape) {
  .show-for-landscape,
  .hide-for-portrait {
    display: block !important;
  }
}

@media screen and (orientation: portrait) {
  .show-for-landscape,
  .hide-for-portrait {
    display: none !important;
  }
}

.hide-for-landscape,
.show-for-portrait {
  display: none !important;
}

@media screen and (orientation: landscape) {
  .hide-for-landscape,
  .show-for-portrait {
    display: none !important;
  }
}

@media screen and (orientation: portrait) {
  .hide-for-landscape,
  .show-for-portrait {
    display: block !important;
  }
}

.float-left {
  float: left !important;
}

.float-right {
  float: right !important;
}

.float-center {
  display: block;
  margin-right: auto;
  margin-left: auto;
}

.clearfix::before, .clearfix::after {
  display: table;
  content: ' ';
}

.clearfix::after {
  clear: both;
}

.slide-in-down.mui-enter {
  -webkit-transition-duration: 500ms;
          transition-duration: 500ms;
  -webkit-transition-timing-function: linear;
          transition-timing-function: linear;
  -webkit-transform: translateY(-100%);
          transform: translateY(-100%);
  -webkit-transition-property: opacity, -webkit-transform;
  transition-property: opacity, -webkit-transform;
  transition-property: transform, opacity;
  transition-property: transform, opacity, -webkit-transform;
  -webkit-backface-visibility: hidden;
          backface-visibility: hidden;
}

.slide-in-down.mui-enter.mui-enter-active {
  -webkit-transform: translateY(0);
          transform: translateY(0);
}

.slide-in-left.mui-enter {
  -webkit-transition-duration: 500ms;
          transition-duration: 500ms;
  -webkit-transition-timing-function: linear;
          transition-timing-function: linear;
  -webkit-transform: translateX(-100%);
          transform: translateX(-100%);
  -webkit-transition-property: opacity, -webkit-transform;
  transition-property: opacity, -webkit-transform;
  transition-property: transform, opacity;
  transition-property: transform, opacity, -webkit-transform;
  -webkit-backface-visibility: hidden;
          backface-visibility: hidden;
}

.slide-in-left.mui-enter.mui-enter-active {
  -webkit-transform: translateX(0);
          transform: translateX(0);
}

.slide-in-up.mui-enter {
  -webkit-transition-duration: 500ms;
          transition-duration: 500ms;
  -webkit-transition-timing-function: linear;
          transition-timing-function: linear;
  -webkit-transform: translateY(100%);
          transform: translateY(100%);
  -webkit-transition-property: opacity, -webkit-transform;
  transition-property: opacity, -webkit-transform;
  transition-property: transform, opacity;
  transition-property: transform, opacity, -webkit-transform;
  -webkit-backface-visibility: hidden;
          backface-visibility: hidden;
}

.slide-in-up.mui-enter.mui-enter-active {
  -webkit-transform: translateY(0);
          transform: translateY(0);
}

.slide-in-right.mui-enter {
  -webkit-transition-duration: 500ms;
          transition-duration: 500ms;
  -webkit-transition-timing-function: linear;
          transition-timing-function: linear;
  -webkit-transform: translateX(100%);
          transform: translateX(100%);
  -webkit-transition-property: opacity, -webkit-transform;
  transition-property: opacity, -webkit-transform;
  transition-property: transform, opacity;
  transition-property: transform, opacity, -webkit-transform;
  -webkit-backface-visibility: hidden;
          backface-visibility: hidden;
}

.slide-in-right.mui-enter.mui-enter-active {
  -webkit-transform: translateX(0);
          transform: translateX(0);
}

.slide-out-down.mui-leave {
  -webkit-transition-duration: 500ms;
          transition-duration: 500ms;
  -webkit-transition-timing-function: linear;
          transition-timing-function: linear;
  -webkit-transform: translateY(0);
          transform: translateY(0);
  -webkit-transition-property: opacity, -webkit-transform;
  transition-property: opacity, -webkit-transform;
  transition-property: transform, opacity;
  transition-property: transform, opacity, -webkit-transform;
  -webkit-backface-visibility: hidden;
          backface-visibility: hidden;
}

.slide-out-down.mui-leave.mui-leave-active {
  -webkit-transform: translateY(100%);
          transform: translateY(100%);
}

.slide-out-right.mui-leave {
  -webkit-transition-duration: 500ms;
          transition-duration: 500ms;
  -webkit-transition-timing-function: linear;
          transition-timing-function: linear;
  -webkit-transform: translateX(0);
          transform: translateX(0);
  -webkit-transition-property: opacity, -webkit-transform;
  transition-property: opacity, -webkit-transform;
  transition-property: transform, opacity;
  transition-property: transform, opacity, -webkit-transform;
  -webkit-backface-visibility: hidden;
          backface-visibility: hidden;
}

.slide-out-right.mui-leave.mui-leave-active {
  -webkit-transform: translateX(100%);
          transform: translateX(100%);
}

.slide-out-up.mui-leave {
  -webkit-transition-duration: 500ms;
          transition-duration: 500ms;
  -webkit-transition-timing-function: linear;
          transition-timing-function: linear;
  -webkit-transform: translateY(0);
          transform: translateY(0);
  -webkit-transition-property: opacity, -webkit-transform;
  transition-property: opacity, -webkit-transform;
  transition-property: transform, opacity;
  transition-property: transform, opacity, -webkit-transform;
  -webkit-backface-visibility: hidden;
          backface-visibility: hidden;
}

.slide-out-up.mui-leave.mui-leave-active {
  -webkit-transform: translateY(-100%);
          transform: translateY(-100%);
}

.slide-out-left.mui-leave {
  -webkit-transition-duration: 500ms;
          transition-duration: 500ms;
  -webkit-transition-timing-function: linear;
          transition-timing-function: linear;
  -webkit-transform: translateX(0);
          transform: translateX(0);
  -webkit-transition-property: opacity, -webkit-transform;
  transition-property: opacity, -webkit-transform;
  transition-property: transform, opacity;
  transition-property: transform, opacity, -webkit-transform;
  -webkit-backface-visibility: hidden;
          backface-visibility: hidden;
}

.slide-out-left.mui-leave.mui-leave-active {
  -webkit-transform: translateX(-100%);
          transform: translateX(-100%);
}

.fade-in.mui-enter {
  -webkit-transition-duration: 500ms;
          transition-duration: 500ms;
  -webkit-transition-timing-function: linear;
          transition-timing-function: linear;
  opacity: 0;
  -webkit-transition-property: opacity;
  transition-property: opacity;
}

.fade-in.mui-enter.mui-enter-active {
  opacity: 1;
}

.fade-out.mui-leave {
  -webkit-transition-duration: 500ms;
          transition-duration: 500ms;
  -webkit-transition-timing-function: linear;
          transition-timing-function: linear;
  opacity: 1;
  -webkit-transition-property: opacity;
  transition-property: opacity;
}

.fade-out.mui-leave.mui-leave-active {
  opacity: 0;
}

.hinge-in-from-top.mui-enter {
  -webkit-transition-duration: 500ms;
          transition-duration: 500ms;
  -webkit-transition-timing-function: linear;
          transition-timing-function: linear;
  -webkit-transform: perspective(2000px) rotateX(-90deg);
          transform: perspective(2000px) rotateX(-90deg);
  -webkit-transform-origin: top;
          transform-origin: top;
  -webkit-transition-property: opacity, -webkit-transform;
  transition-property: opacity, -webkit-transform;
  transition-property: transform, opacity;
  transition-property: transform, opacity, -webkit-transform;
  opacity: 0;
}

.hinge-in-from-top.mui-enter.mui-enter-active {
  -webkit-transform: perspective(2000px) rotate(0deg);
          transform: perspective(2000px) rotate(0deg);
  opacity: 1;
}

.hinge-in-from-right.mui-enter {
  -webkit-transition-duration: 500ms;
          transition-duration: 500ms;
  -webkit-transition-timing-function: linear;
          transition-timing-function: linear;
  -webkit-transform: perspective(2000px) rotateY(-90deg);
          transform: perspective(2000px) rotateY(-90deg);
  -webkit-transform-origin: right;
          transform-origin: right;
  -webkit-transition-property: opacity, -webkit-transform;
  transition-property: opacity, -webkit-transform;
  transition-property: transform, opacity;
  transition-property: transform, opacity, -webkit-transform;
  opacity: 0;
}

.hinge-in-from-right.mui-enter.mui-enter-active {
  -webkit-transform: perspective(2000px) rotate(0deg);
          transform: perspective(2000px) rotate(0deg);
  opacity: 1;
}

.hinge-in-from-bottom.mui-enter {
  -webkit-transition-duration: 500ms;
          transition-duration: 500ms;
  -webkit-transition-timing-function: linear;
          transition-timing-function: linear;
  -webkit-transform: perspective(2000px) rotateX(90deg);
          transform: perspective(2000px) rotateX(90deg);
  -webkit-transform-origin: bottom;
          transform-origin: bottom;
  -webkit-transition-property: opacity, -webkit-transform;
  transition-property: opacity, -webkit-transform;
  transition-property: transform, opacity;
  transition-property: transform, opacity, -webkit-transform;
  opacity: 0;
}

.hinge-in-from-bottom.mui-enter.mui-enter-active {
  -webkit-transform: perspective(2000px) rotate(0deg);
          transform: perspective(2000px) rotate(0deg);
  opacity: 1;
}

.hinge-in-from-left.mui-enter {
  -webkit-transition-duration: 500ms;
          transition-duration: 500ms;
  -webkit-transition-timing-function: linear;
          transition-timing-function: linear;
  -webkit-transform: perspective(2000px) rotateY(90deg);
          transform: perspective(2000px) rotateY(90deg);
  -webkit-transform-origin: left;
          transform-origin: left;
  -webkit-transition-property: opacity, -webkit-transform;
  transition-property: opacity, -webkit-transform;
  transition-property: transform, opacity;
  transition-property: transform, opacity, -webkit-transform;
  opacity: 0;
}

.hinge-in-from-left.mui-enter.mui-enter-active {
  -webkit-transform: perspective(2000px) rotate(0deg);
          transform: perspective(2000px) rotate(0deg);
  opacity: 1;
}

.hinge-in-from-middle-x.mui-enter {
  -webkit-transition-duration: 500ms;
          transition-duration: 500ms;
  -webkit-transition-timing-function: linear;
          transition-timing-function: linear;
  -webkit-transform: perspective(2000px) rotateX(-90deg);
          transform: perspective(2000px) rotateX(-90deg);
  -webkit-transform-origin: center;
          transform-origin: center;
  -webkit-transition-property: opacity, -webkit-transform;
  transition-property: opacity, -webkit-transform;
  transition-property: transform, opacity;
  transition-property: transform, opacity, -webkit-transform;
  opacity: 0;
}

.hinge-in-from-middle-x.mui-enter.mui-enter-active {
  -webkit-transform: perspective(2000px) rotate(0deg);
          transform: perspective(2000px) rotate(0deg);
  opacity: 1;
}

.hinge-in-from-middle-y.mui-enter {
  -webkit-transition-duration: 500ms;
          transition-duration: 500ms;
  -webkit-transition-timing-function: linear;
          transition-timing-function: linear;
  -webkit-transform: perspective(2000px) rotateY(-90deg);
          transform: perspective(2000px) rotateY(-90deg);
  -webkit-transform-origin: center;
          transform-origin: center;
  -webkit-transition-property: opacity, -webkit-transform;
  transition-property: opacity, -webkit-transform;
  transition-property: transform, opacity;
  transition-property: transform, opacity, -webkit-transform;
  opacity: 0;
}

.hinge-in-from-middle-y.mui-enter.mui-enter-active {
  -webkit-transform: perspective(2000px) rotate(0deg);
          transform: perspective(2000px) rotate(0deg);
  opacity: 1;
}

.hinge-out-from-top.mui-leave {
  -webkit-transition-duration: 500ms;
          transition-duration: 500ms;
  -webkit-transition-timing-function: linear;
          transition-timing-function: linear;
  -webkit-transform: perspective(2000px) rotate(0deg);
          transform: perspective(2000px) rotate(0deg);
  -webkit-transform-origin: top;
          transform-origin: top;
  -webkit-transition-property: opacity, -webkit-transform;
  transition-property: opacity, -webkit-transform;
  transition-property: transform, opacity;
  transition-property: transform, opacity, -webkit-transform;
  opacity: 1;
}

.hinge-out-from-top.mui-leave.mui-leave-active {
  -webkit-transform: perspective(2000px) rotateX(-90deg);
          transform: perspective(2000px) rotateX(-90deg);
  opacity: 0;
}

.hinge-out-from-right.mui-leave {
  -webkit-transition-duration: 500ms;
          transition-duration: 500ms;
  -webkit-transition-timing-function: linear;
          transition-timing-function: linear;
  -webkit-transform: perspective(2000px) rotate(0deg);
          transform: perspective(2000px) rotate(0deg);
  -webkit-transform-origin: right;
          transform-origin: right;
  -webkit-transition-property: opacity, -webkit-transform;
  transition-property: opacity, -webkit-transform;
  transition-property: transform, opacity;
  transition-property: transform, opacity, -webkit-transform;
  opacity: 1;
}

.hinge-out-from-right.mui-leave.mui-leave-active {
  -webkit-transform: perspective(2000px) rotateY(-90deg);
          transform: perspective(2000px) rotateY(-90deg);
  opacity: 0;
}

.hinge-out-from-bottom.mui-leave {
  -webkit-transition-duration: 500ms;
          transition-duration: 500ms;
  -webkit-transition-timing-function: linear;
          transition-timing-function: linear;
  -webkit-transform: perspective(2000px) rotate(0deg);
          transform: perspective(2000px) rotate(0deg);
  -webkit-transform-origin: bottom;
          transform-origin: bottom;
  -webkit-transition-property: opacity, -webkit-transform;
  transition-property: opacity, -webkit-transform;
  transition-property: transform, opacity;
  transition-property: transform, opacity, -webkit-transform;
  opacity: 1;
}

.hinge-out-from-bottom.mui-leave.mui-leave-active {
  -webkit-transform: perspective(2000px) rotateX(90deg);
          transform: perspective(2000px) rotateX(90deg);
  opacity: 0;
}

.hinge-out-from-left.mui-leave {
  -webkit-transition-duration: 500ms;
          transition-duration: 500ms;
  -webkit-transition-timing-function: linear;
          transition-timing-function: linear;
  -webkit-transform: perspective(2000px) rotate(0deg);
          transform: perspective(2000px) rotate(0deg);
  -webkit-transform-origin: left;
          transform-origin: left;
  -webkit-transition-property: opacity, -webkit-transform;
  transition-property: opacity, -webkit-transform;
  transition-property: transform, opacity;
  transition-property: transform, opacity, -webkit-transform;
  opacity: 1;
}

.hinge-out-from-left.mui-leave.mui-leave-active {
  -webkit-transform: perspective(2000px) rotateY(90deg);
          transform: perspective(2000px) rotateY(90deg);
  opacity: 0;
}

.hinge-out-from-middle-x.mui-leave {
  -webkit-transition-duration: 500ms;
          transition-duration: 500ms;
  -webkit-transition-timing-function: linear;
          transition-timing-function: linear;
  -webkit-transform: perspective(2000px) rotate(0deg);
          transform: perspective(2000px) rotate(0deg);
  -webkit-transform-origin: center;
          transform-origin: center;
  -webkit-transition-property: opacity, -webkit-transform;
  transition-property: opacity, -webkit-transform;
  transition-property: transform, opacity;
  transition-property: transform, opacity, -webkit-transform;
  opacity: 1;
}

.hinge-out-from-middle-x.mui-leave.mui-leave-active {
  -webkit-transform: perspective(2000px) rotateX(-90deg);
          transform: perspective(2000px) rotateX(-90deg);
  opacity: 0;
}

.hinge-out-from-middle-y.mui-leave {
  -webkit-transition-duration: 500ms;
          transition-duration: 500ms;
  -webkit-transition-timing-function: linear;
          transition-timing-function: linear;
  -webkit-transform: perspective(2000px) rotate(0deg);
          transform: perspective(2000px) rotate(0deg);
  -webkit-transform-origin: center;
          transform-origin: center;
  -webkit-transition-property: opacity, -webkit-transform;
  transition-property: opacity, -webkit-transform;
  transition-property: transform, opacity;
  transition-property: transform, opacity, -webkit-transform;
  opacity: 1;
}

.hinge-out-from-middle-y.mui-leave.mui-leave-active {
  -webkit-transform: perspective(2000px) rotateY(-90deg);
          transform: perspective(2000px) rotateY(-90deg);
  opacity: 0;
}

.scale-in-up.mui-enter {
  -webkit-transition-duration: 500ms;
          transition-duration: 500ms;
  -webkit-transition-timing-function: linear;
          transition-timing-function: linear;
  -webkit-transform: scale(0.5);
          transform: scale(0.5);
  -webkit-transition-property: opacity, -webkit-transform;
  transition-property: opacity, -webkit-transform;
  transition-property: transform, opacity;
  transition-property: transform, opacity, -webkit-transform;
  opacity: 0;
}

.scale-in-up.mui-enter.mui-enter-active {
  -webkit-transform: scale(1);
          transform: scale(1);
  opacity: 1;
}

.scale-in-down.mui-enter {
  -webkit-transition-duration: 500ms;
          transition-duration: 500ms;
  -webkit-transition-timing-function: linear;
          transition-timing-function: linear;
  -webkit-transform: scale(1.5);
          transform: scale(1.5);
  -webkit-transition-property: opacity, -webkit-transform;
  transition-property: opacity, -webkit-transform;
  transition-property: transform, opacity;
  transition-property: transform, opacity, -webkit-transform;
  opacity: 0;
}

.scale-in-down.mui-enter.mui-enter-active {
  -webkit-transform: scale(1);
          transform: scale(1);
  opacity: 1;
}

.scale-out-up.mui-leave {
  -webkit-transition-duration: 500ms;
          transition-duration: 500ms;
  -webkit-transition-timing-function: linear;
          transition-timing-function: linear;
  -webkit-transform: scale(1);
          transform: scale(1);
  -webkit-transition-property: opacity, -webkit-transform;
  transition-property: opacity, -webkit-transform;
  transition-property: transform, opacity;
  transition-property: transform, opacity, -webkit-transform;
  opacity: 1;
}

.scale-out-up.mui-leave.mui-leave-active {
  -webkit-transform: scale(1.5);
          transform: scale(1.5);
  opacity: 0;
}

.scale-out-down.mui-leave {
  -webkit-transition-duration: 500ms;
          transition-duration: 500ms;
  -webkit-transition-timing-function: linear;
          transition-timing-function: linear;
  -webkit-transform: scale(1);
          transform: scale(1);
  -webkit-transition-property: opacity, -webkit-transform;
  transition-property: opacity, -webkit-transform;
  transition-property: transform, opacity;
  transition-property: transform, opacity, -webkit-transform;
  opacity: 1;
}

.scale-out-down.mui-leave.mui-leave-active {
  -webkit-transform: scale(0.5);
          transform: scale(0.5);
  opacity: 0;
}

.spin-in.mui-enter {
  -webkit-transition-duration: 500ms;
          transition-duration: 500ms;
  -webkit-transition-timing-function: linear;
          transition-timing-function: linear;
  -webkit-transform: rotate(-0.75turn);
          transform: rotate(-0.75turn);
  -webkit-transition-property: opacity, -webkit-transform;
  transition-property: opacity, -webkit-transform;
  transition-property: transform, opacity;
  transition-property: transform, opacity, -webkit-transform;
  opacity: 0;
}

.spin-in.mui-enter.mui-enter-active {
  -webkit-transform: rotate(0);
          transform: rotate(0);
  opacity: 1;
}

.spin-out.mui-leave {
  -webkit-transition-duration: 500ms;
          transition-duration: 500ms;
  -webkit-transition-timing-function: linear;
          transition-timing-function: linear;
  -webkit-transform: rotate(0);
          transform: rotate(0);
  -webkit-transition-property: opacity, -webkit-transform;
  transition-property: opacity, -webkit-transform;
  transition-property: transform, opacity;
  transition-property: transform, opacity, -webkit-transform;
  opacity: 1;
}

.spin-out.mui-leave.mui-leave-active {
  -webkit-transform: rotate(0.75turn);
          transform: rotate(0.75turn);
  opacity: 0;
}

.spin-in-ccw.mui-enter {
  -webkit-transition-duration: 500ms;
          transition-duration: 500ms;
  -webkit-transition-timing-function: linear;
          transition-timing-function: linear;
  -webkit-transform: rotate(0.75turn);
          transform: rotate(0.75turn);
  -webkit-transition-property: opacity, -webkit-transform;
  transition-property: opacity, -webkit-transform;
  transition-property: transform, opacity;
  transition-property: transform, opacity, -webkit-transform;
  opacity: 0;
}

.spin-in-ccw.mui-enter.mui-enter-active {
  -webkit-transform: rotate(0);
          transform: rotate(0);
  opacity: 1;
}

.spin-out-ccw.mui-leave {
  -webkit-transition-duration: 500ms;
          transition-duration: 500ms;
  -webkit-transition-timing-function: linear;
          transition-timing-function: linear;
  -webkit-transform: rotate(0);
          transform: rotate(0);
  -webkit-transition-property: opacity, -webkit-transform;
  transition-property: opacity, -webkit-transform;
  transition-property: transform, opacity;
  transition-property: transform, opacity, -webkit-transform;
  opacity: 1;
}

.spin-out-ccw.mui-leave.mui-leave-active {
  -webkit-transform: rotate(-0.75turn);
          transform: rotate(-0.75turn);
  opacity: 0;
}

.slow {
  -webkit-transition-duration: 750ms !important;
          transition-duration: 750ms !important;
}

.fast {
  -webkit-transition-duration: 250ms !important;
          transition-duration: 250ms !important;
}

.linear {
  -webkit-transition-timing-function: linear !important;
          transition-timing-function: linear !important;
}

.ease {
  -webkit-transition-timing-function: ease !important;
          transition-timing-function: ease !important;
}

.ease-in {
  -webkit-transition-timing-function: ease-in !important;
          transition-timing-function: ease-in !important;
}

.ease-out {
  -webkit-transition-timing-function: ease-out !important;
          transition-timing-function: ease-out !important;
}

.ease-in-out {
  -webkit-transition-timing-function: ease-in-out !important;
          transition-timing-function: ease-in-out !important;
}

.bounce-in {
  -webkit-transition-timing-function: cubic-bezier(0.485, 0.155, 0.24, 1.245) !important;
          transition-timing-function: cubic-bezier(0.485, 0.155, 0.24, 1.245) !important;
}

.bounce-out {
  -webkit-transition-timing-function: cubic-bezier(0.485, 0.155, 0.515, 0.845) !important;
          transition-timing-function: cubic-bezier(0.485, 0.155, 0.515, 0.845) !important;
}

.bounce-in-out {
  -webkit-transition-timing-function: cubic-bezier(0.76, -0.245, 0.24, 1.245) !important;
          transition-timing-function: cubic-bezier(0.76, -0.245, 0.24, 1.245) !important;
}

.short-delay {
  -webkit-transition-delay: 300ms !important;
          transition-delay: 300ms !important;
}

.long-delay {
  -webkit-transition-delay: 700ms !important;
          transition-delay: 700ms !important;
}

.shake {
  -webkit-animation-name: shake-7;
          animation-name: shake-7;
}

@-webkit-keyframes shake-7 {
  0%, 10%, 20%, 30%, 40%, 50%, 60%, 70%, 80%, 90% {
    -webkit-transform: translateX(7%);
            transform: translateX(7%);
  }
  5%, 15%, 25%, 35%, 45%, 55%, 65%, 75%, 85%, 95% {
    -webkit-transform: translateX(-7%);
            transform: translateX(-7%);
  }
}

@keyframes shake-7 {
  0%, 10%, 20%, 30%, 40%, 50%, 60%, 70%, 80%, 90% {
    -webkit-transform: translateX(7%);
            transform: translateX(7%);
  }
  5%, 15%, 25%, 35%, 45%, 55%, 65%, 75%, 85%, 95% {
    -webkit-transform: translateX(-7%);
            transform: translateX(-7%);
  }
}

.spin-cw {
  -webkit-animation-name: spin-cw-1turn;
          animation-name: spin-cw-1turn;
}

@-webkit-keyframes spin-cw-1turn {
  0% {
    -webkit-transform: rotate(-1turn);
            transform: rotate(-1turn);
  }
  100% {
    -webkit-transform: rotate(0);
            transform: rotate(0);
  }
}

@keyframes spin-cw-1turn {
  0% {
    -webkit-transform: rotate(-1turn);
            transform: rotate(-1turn);
  }
  100% {
    -webkit-transform: rotate(0);
            transform: rotate(0);
  }
}

.spin-ccw {
  -webkit-animation-name: spin-cw-1turn;
          animation-name: spin-cw-1turn;
}

@keyframes spin-cw-1turn {
  0% {
    -webkit-transform: rotate(0);
            transform: rotate(0);
  }
  100% {
    -webkit-transform: rotate(1turn);
            transform: rotate(1turn);
  }
}

.wiggle {
  -webkit-animation-name: wiggle-7deg;
          animation-name: wiggle-7deg;
}

@-webkit-keyframes wiggle-7deg {
  40%, 50%, 60% {
    -webkit-transform: rotate(7deg);
            transform: rotate(7deg);
  }
  35%, 45%, 55%, 65% {
    -webkit-transform: rotate(-7deg);
            transform: rotate(-7deg);
  }
  0%, 30%, 70%, 100% {
    -webkit-transform: rotate(0);
            transform: rotate(0);
  }
}

@keyframes wiggle-7deg {
  40%, 50%, 60% {
    -webkit-transform: rotate(7deg);
            transform: rotate(7deg);
  }
  35%, 45%, 55%, 65% {
    -webkit-transform: rotate(-7deg);
            transform: rotate(-7deg);
  }
  0%, 30%, 70%, 100% {
    -webkit-transform: rotate(0);
            transform: rotate(0);
  }
}

.shake,
.spin-cw,
.spin-ccw,
.wiggle {
  -webkit-animation-duration: 500ms;
          animation-duration: 500ms;
}

.infinite {
  -webkit-animation-iteration-count: infinite;
          animation-iteration-count: infinite;
}

.slow {
  -webkit-animation-duration: 750ms !important;
          animation-duration: 750ms !important;
}

.fast {
  -webkit-animation-duration: 250ms !important;
          animation-duration: 250ms !important;
}

.linear {
  -webkit-animation-timing-function: linear !important;
          animation-timing-function: linear !important;
}

.ease {
  -webkit-animation-timing-function: ease !important;
          animation-timing-function: ease !important;
}

.ease-in {
  -webkit-animation-timing-function: ease-in !important;
          animation-timing-function: ease-in !important;
}

.ease-out {
  -webkit-animation-timing-function: ease-out !important;
          animation-timing-function: ease-out !important;
}

.ease-in-out {
  -webkit-animation-timing-function: ease-in-out !important;
          animation-timing-function: ease-in-out !important;
}

.bounce-in {
  -webkit-animation-timing-function: cubic-bezier(0.485, 0.155, 0.24, 1.245) !important;
          animation-timing-function: cubic-bezier(0.485, 0.155, 0.24, 1.245) !important;
}

.bounce-out {
  -webkit-animation-timing-function: cubic-bezier(0.485, 0.155, 0.515, 0.845) !important;
          animation-timing-function: cubic-bezier(0.485, 0.155, 0.515, 0.845) !important;
}

.bounce-in-out {
  -webkit-animation-timing-function: cubic-bezier(0.76, -0.245, 0.24, 1.245) !important;
          animation-timing-function: cubic-bezier(0.76, -0.245, 0.24, 1.245) !important;
}

.short-delay {
  -webkit-animation-delay: 300ms !important;
          animation-delay: 300ms !important;
}

.long-delay {
  -webkit-animation-delay: 700ms !important;
          animation-delay: 700ms !important;
}

/*
@import this file directly into your existing Scss files to use these mixins
*/
.bsiGraphic {
  width: 186px;
  height: 92px;
  display: inline-block;
  background: url("//static.rapidonline.com/css/sprites/4.7.1/sprite.sprite.png") -10px -10px no-repeat;
}

.calibration {
  width: 60px;
  height: 56px;
  display: inline-block;
  background: url("//static.rapidonline.com/css/sprites/4.7.1/sprite.sprite.png") -206px -10px no-repeat;
}

.carticon {
  width: 49px;
  height: 45px;
  display: inline-block;
  background: url("//static.rapidonline.com/css/sprites/4.7.1/sprite.sprite.png") -276px -10px no-repeat;
}

.cartIconSmall {
  width: 34px;
  height: 32px;
  display: inline-block;
  background: url("//static.rapidonline.com/css/sprites/4.7.1/sprite.sprite.png") -335px -10px no-repeat;
}

.Clearance {
  width: 40px;
  height: 55px;
  display: inline-block;
  background: url("//static.rapidonline.com/css/sprites/4.7.1/sprite.sprite.png") -379px -10px no-repeat;
}

.conradFooter {
  width: 200px;
  height: 19px;
  display: inline-block;
  background: url("//static.rapidonline.com/css/sprites/4.7.1/sprite.sprite.png") -429px -10px no-repeat;
}

.educationLogo {
  width: 129px;
  height: 45px;
  display: inline-block;
  background: url("//static.rapidonline.com/css/sprites/4.7.1/sprite.sprite.png") -639px -10px no-repeat;
}

.educationLogoSmall {
  width: 116px;
  height: 40px;
  display: inline-block;
  background: url("//static.rapidonline.com/css/sprites/4.7.1/sprite.sprite.png") -778px -10px no-repeat;
}

.educationLogoSmall {
  width: 116px;
  height: 40px;
  display: inline-block;
  background: url("//static.rapidonline.com/css/sprites/4.7.1/sprite.sprite.png") -778px -10px no-repeat;
}

.facebookIcon {
  width: 36px;
  height: 36px;
  display: inline-block;
  background: url("//static.rapidonline.com/css/sprites/4.7.1/sprite.sprite.png") -904px -10px no-repeat;
}

.icon_euflag {
  width: 108px;
  height: 63px;
  display: inline-block;
  background: url("//static.rapidonline.com/css/sprites/4.7.1/sprite.sprite.png") -950px -10px no-repeat;
}

.icon_module_3D_pdflrg {
  width: 40px;
  height: 47px;
  display: inline-block;
  background: url("//static.rapidonline.com/css/sprites/4.7.1/sprite.sprite.png") -1068px -10px no-repeat;
}

.icon_module_td_pdfsm {
  width: 14px;
  height: 16px;
  display: inline-block;
  background: url("//static.rapidonline.com/css/sprites/4.7.1/sprite.sprite.png") -1118px -10px no-repeat;
}

.icon_module_Technical-Specification_pdflrg {
  width: 40px;
  height: 47px;
  display: inline-block;
  background: url("//static.rapidonline.com/css/sprites/4.7.1/sprite.sprite.png") -1142px -10px no-repeat;
}

.icon_ukflag {
  width: 108px;
  height: 63px;
  display: inline-block;
  background: url("//static.rapidonline.com/css/sprites/4.7.1/sprite.sprite.png") -1192px -10px no-repeat;
}

.icon_usflag {
  width: 108px;
  height: 63px;
  display: inline-block;
  background: url("//static.rapidonline.com/css/sprites/4.7.1/sprite.sprite.png") -1310px -10px no-repeat;
}

.instagramIcon {
  width: 36px;
  height: 36px;
  display: inline-block;
  background: url("//static.rapidonline.com/css/sprites/4.7.1/sprite.sprite.png") -1428px -10px no-repeat;
}

.linkedinIcon {
  width: 36px;
  height: 36px;
  display: inline-block;
  background: url("//static.rapidonline.com/css/sprites/4.7.1/sprite.sprite.png") -1474px -10px no-repeat;
}

.New {
  width: 55px;
  height: 55px;
  display: inline-block;
  background: url("//static.rapidonline.com/css/sprites/4.7.1/sprite.sprite.png") -1520px -10px no-repeat;
}

.paymentIcons {
  width: 259px;
  height: 30px;
  display: inline-block;
  background: url("//static.rapidonline.com/css/sprites/4.7.1/sprite.sprite.png") -1585px -10px no-repeat;
}

.paypallogo {
  width: 145px;
  height: 42px;
  display: inline-block;
  background: url("//static.rapidonline.com/css/sprites/4.7.1/sprite.sprite.png") -1854px -10px no-repeat;
}

.rapidaccount {
  width: 136px;
  height: 32px;
  display: inline-block;
  background: url("//static.rapidonline.com/css/sprites/4.7.1/sprite.sprite.png") -2009px -10px no-repeat;
}

.rapidLogo {
  width: 147px;
  height: 38px;
  display: inline-block;
  background: url("//static.rapidonline.com/css/sprites/4.7.1/sprite.sprite.png") -2155px -10px no-repeat;
}

.rapidLogoSmall {
  width: 116px;
  height: 40px;
  display: inline-block;
  background: url("//static.rapidonline.com/css/sprites/4.7.1/sprite.sprite.png") -2312px -10px no-repeat;
}

.SpecialOffer {
  width: 55px;
  height: 53px;
  display: inline-block;
  background: url("//static.rapidonline.com/css/sprites/4.7.1/sprite.sprite.png") -2438px -10px no-repeat;
}

.twitterIcon {
  width: 36px;
  height: 36px;
  display: inline-block;
  background: url("//static.rapidonline.com/css/sprites/4.7.1/sprite.sprite.png") -2503px -10px no-repeat;
}

.uniLogo {
  width: 129px;
  height: 45px;
  display: inline-block;
  background: url("//static.rapidonline.com/css/sprites/4.7.1/sprite.sprite.png") -2549px -10px no-repeat;
}

.uniLogoSmall {
  width: 116px;
  height: 40px;
  display: inline-block;
  background: url("//static.rapidonline.com/css/sprites/4.7.1/sprite.sprite.png") -2688px -10px no-repeat;
}

.youtubeIcon {
  width: 36px;
  height: 36px;
  display: inline-block;
  background: url("//static.rapidonline.com/css/sprites/4.7.1/sprite.sprite.png") -2814px -10px no-repeat;
}

@media screen and (min-width: 64em) {
  .fixedWidth {
    min-height: 500px;
  }
}

.button.accent, .button.light-gray {
  color: #0a0a0a;
}

/*duplicates of PDF icon*/
/*.icon_module_Manual_pdflrg, .icon_module_REACH-Certificate_pdflrg, .icon_module_Health-and-Safety_pdflrg, .icon_module_Document-Of-Conformity_pdflrg {
	@include sprite($icon-module-technical-specification-pdflrg);  
}*/
.icon_rohsexempt {
  display: inline-block;
  background: green;
  color: #fff;
  font-size: 1em;
  font-weight: bold;
  line-height: 1.4em;
  border-radius: 3em;
  -moz-border-radius: 3em;
  -webkit-border-radius: 3em;
  margin-left: 3px;
  text-align: center;
  min-width: 1.3em;
  min-height: 1.3em;
  vertical-align: middle;
}

.reachalert {
  display: inline-block;
  background: #000080;
  color: yellow;
  font-size: 1em;
  font-weight: bold;
  line-height: 1.2em;
  border-radius: 3em;
  -moz-border-radius: 3em;
  -webkit-border-radius: 3em;
  margin-left: 3px;
  text-align: center;
  min-width: 1.2em;
  min-height: 1.2em;
  vertical-align: middle;
}

@media print {
  a[href]:after {
    content: none !important;
  }
}

.disabledButton {
  cursor: not-allowed;
  background: grey !important;
  color: darkgrey !important;
}

.no-javascript {
  top: 0;
  left: 0;
  right: 0;
  background-color: firebrick;
  color: #fff;
  text-align: center;
  padding: 10px;
  font-weight: bold;
  -webkit-box-shadow: 1px 0 3px #000;
          box-shadow: 1px 0 3px #000;
}

.no-javascript a {
  text-decoration: underline;
  color: #fff;
}

/*Grey Overlay*/
.app_greyOverlay {
  position: fixed;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  z-index: 10004;
  display: none;
}

.showOverlay {
  display: block !important;
  background-color: rgba(192, 192, 192, 0.6);
}

.reveal-overlay {
  z-index: 99999;
}

/*For over 18*/
.stack-outer {
  color: red;
}

.fa-plus18 {
  font-family: 'Helvetica Neue', Helvetica, Arial, sans-serif;
  text-align: center;
  font-size: 80%;
  font-weight: bold;
}

.fa-plus18:before {
  content: "18+";
  color: white;
}

.reveal {
  -webkit-box-shadow: 0 5px 15px rgba(0, 0, 0, 0.5);
          box-shadow: 0 5px 15px rgba(0, 0, 0, 0.5);
  outline: none;
}

.reveal:focus {
  outline: none;
}

@media print, screen and (min-width: 48em) {
  .reveal {
    width: 660px;
    max-width: 92.85714rem;
  }
}

.popupTitle {
  font-size: 18px;
  font-weight: 600;
  margin-top: 0px;
  padding-top: 0px;
  margin-bottom: 16px;
}

.sidePlayer {
  display: none;
}

@media screen and (min-width: 64em) {
  .sidePlayer {
    display: block;
    -webkit-font-smoothing: subpixel-antialiased;
    -webkit-perspective: 1000;
    -webkit-transition: all 150ms ease-in-out;
    transition: all 150ms ease-in-out;
    position: fixed;
    width: 120px;
    right: 10px;
    bottom: 10px;
    z-index: 1500;
  }
  .sidePlayer .controlBar .button {
    margin: 0 0 0.25rem 0;
  }
  .sidePlayer .videoTitleBar {
    padding: 0.35714rem 0.35714rem 0 0.35714rem;
    background: rgba(10, 10, 10, 0.96);
    text-align: center;
  }
  .sidePlayer .videoTitleBar h3 {
    margin-bottom: 0;
    color: #fefefe;
    line-height: 1.1rem;
    font-size: 0.75rem;
  }
  .sidePlayer .responsive-embed {
    border: 0.35714rem solid rgba(10, 10, 10, 0.96);
    -webkit-box-shadow: 0 4px 8px 0 rgba(0, 0, 0, 0.2), 0 6px 20px 0 rgba(0, 0, 0, 0.19);
            box-shadow: 0 4px 8px 0 rgba(0, 0, 0, 0.2), 0 6px 20px 0 rgba(0, 0, 0, 0.19);
  }
  .sidePlayer.expanded {
    top: 50%;
    bottom: auto;
    left: 50%;
    width: 640px;
    -webkit-transform: translate(-50%, -50%);
    transform: translate(-50%, -50%);
    z-index: 10010;
  }
  .sidePlayer.expanded h3 {
    line-height: 1.3rem;
    font-size: 1rem;
  }
}

@media screen and (min-width: 90em) {
  .sidePlayer {
    width: 180px;
  }
  .sidePlayer .videoTitleBar h3 {
    line-height: 1.3rem;
    font-size: 1rem;
  }
  .sidePlayer .responsive-embed {
    border: 0.35714rem solid rgba(10, 10, 10, 0.96);
    -webkit-box-shadow: 0 4px 8px 0 rgba(0, 0, 0, 0.2), 0 6px 20px 0 rgba(0, 0, 0, 0.19);
            box-shadow: 0 4px 8px 0 rgba(0, 0, 0, 0.2), 0 6px 20px 0 rgba(0, 0, 0, 0.19);
  }
}

.ErrorDisplay {
  position: fixed;
  top: 2px;
  z-index: 9999999;
  margin: 0 auto;
  display: none;
  max-width: 1300px;
  left: 0px;
  right: 0px;
  padding: 3px;
  font-weight: bold;
  font-size: 1.14286rem;
}

.ErrorDisplay .callout.success {
  color: #0a0a0a;
  border-top: 10px solid #8dc58d;
}

.ErrorDisplay .callout.alert {
  color: #0a0a0a;
  border-top: 10px solid #e21e1e;
}

.ErrorDisplay .callout.secondary {
  color: #0a0a0a;
  border-top: 10px solid #767676;
}

.green-text {
  color: #008000;
}

.blue-text {
  color: #103cca;
}

.big-red-text {
  color: Red;
  font-size: 16px;
}

.orange-text, .orangeText {
  color: #ffa500;
}

.red-text, .redText {
  color: #b22222 !important;
}

.gray-text {
  color: #79796A;
}

.grey-text {
  color: #79796A;
  font-weight: normal;
}

.pastel-blue-text {
  color: #92acff;
}

.pastel-green-text {
  color: #8df981;
}

.pastel-red-text {
  color: #ff7b7b;
}

.pastel-orange-text {
  color: #ffcd72;
}

@media screen and (max-width: 63.9375em) {
  ul.breadcrumbs {
    border-bottom: 1px solid #e8e5e5;
    padding: 0.21429rem;
  }
  ul.breadcrumbs li {
    display: none;
    float: none;
    padding: 0.21429rem;
    font-size: 1.07143rem;
  }
  ul.breadcrumbs li.breadcrumbStage:hover {
    background: #e8e5e5;
  }
  ul.breadcrumbs li.breadcrumbStage.breadcrumbExpand {
    display: block;
  }
  ul.breadcrumbs li.lastBreadcrumb {
    display: block;
    font-weight: bold;
    padding-bottom: 0.57143rem;
  }
  .breadcrumbExpandLink {
    width: 50px;
    display: inline-block;
    border-left: 1px solid #e8e5e5;
    float: right;
    text-align: center;
    cursor: pointer;
  }
  .breadcrumbExpandLink i {
    color: #79796A;
  }
}

/*@include sprites($spritesheet-sprites);*/
.breadcrumbContainer {
  margin-top: 0.71429rem;
  margin-bottom: 0.71429rem;
}

.breadcrumbContainer a {
  color: #79796A;
  font-size: 1rem;
}

.breadcrumbContainer a:hover {
  color: #0a0a0a;
}

@media screen and (max-width: 63.9375em) {
  .mobileMenu .vertical.menu {
    /*li:last-child a {
            border:0px;
        }*/
  }
  .mobileMenu .vertical.menu a {
    background: none;
    border-bottom: 1px solid #dddddd;
    font-weight: bold;
  }
  .mobileMenu h3 {
    border-bottom: 1px solid #dddddd;
    padding: 10px 5px;
    margin: 0;
    background: #e8e5e5;
  }
}

.mobileMenu .vertical.menu a {
  color: #0a0a0a;
}

.mobileMenu .vertical.menu a:hover {
  text-decoration: underline;
  -webkit-text-decoration-color: black;
          text-decoration-color: black;
}

@media print, screen and (min-width: 64em) {
  .mobileMenu .vertical.menu a {
    padding-left: 0;
    padding-right: 0;
  }
}

@media print, screen and (min-width: 64em) {
  .mobileMenu .column-block {
    min-height: 7.14286rem;
  }
}

/*Gray Section Header*/
h2.sectionHeader, h1.sectionHeader {
  background: #e8e5e5;
  padding: 0.42857rem;
}

h2.sectionHeaderPurchaseTip {
  background-color: darkorange;
  padding: 0.42857rem;
  color: #fff;
  font-size: 1.3em;
  font-weight: normal;
  vertical-align: central;
}

.smallProdImage {
  width: 5.35714rem;
  height: 5.35714rem;
  padding: 0.35714rem;
}

.prices-strikethrough {
  font-size: 0.85714rem;
  color: #79796A;
  text-decoration: line-through;
}

.smallLabel {
  color: #79796A;
  font-size: 0.92857rem;
}

/*Inc VAT Checkbox*/
.checkbox {
  position: relative;
}

.checkbox input[type="checkbox"] {
  top: 0;
  left: 0;
  visibility: hidden;
  position: absolute;
}

.checkbox .custom-checkbox {
  display: inline-block;
  vertical-align: top;
  margin: 0 3px 0 0;
  width: 18px;
  height: 18px;
  border: 1px solid #1583cc;
  position: relative;
}

.checkbox .custom-checkbox {
  background: #1583cc;
  -webkit-box-shadow: inset 0 0 0 12px #fff;
          box-shadow: inset 0 0 0 12px #fff;
  text-align: left;
}

.checkbox .icon-check {
  width: 20px;
  height: 20px;
  background-size: cover;
  position: absolute;
  top: 0px;
  left: 0px;
  -webkit-transform: scale(0);
          transform: scale(0);
  -webkit-transition: all 180ms ease;
  transition: all 180ms ease;
}

.icon-check:before {
  position: absolute;
  content: '\2713';
  width: 12px;
  font-size: 12.66667px;
  text-align: center;
  line-height: 16px;
  color: #fff;
  font-weight: bold;
}

.checkbox input[type="checkbox"]:checked + .custom-checkbox {
  border-color: #2095F0;
  -webkit-box-shadow: none;
          box-shadow: none;
}

.checkbox input[type="checkbox"]:checked + .custom-checkbox .icon-check {
  -webkit-transform: scale(1);
          transform: scale(1);
}

.checkbox .accent {
  border: 1px solid #F9A519;
}

.checkbox input[type="checkbox"]:checked + .accent {
  background: #F9A519;
  border: 1px solid #F9A519;
}

/*search field button group input*/
input.searchInput, input.searchInput:focus {
  border: 0px;
}

/*scroll table large breakpoint fix*/
@media print, screen and (min-width: 64em) {
  .table-scroll table {
    width: 100%;
  }
}

label.fieldHeading, label.smallLabel {
  font-size: 0.85714rem;
  color: #79796A;
}

label.fieldHeading.inline, label.smallLabel.inline {
  display: inline;
}

label.fieldHeading.alt, label.smallLabel.alt {
  color: #0a0a0a;
}

.button.inline {
  margin-bottom: 0px;
  margin-left: 0.35714rem;
  margin-right: 0.35714rem;
}

.button {
  font-weight: bold;
}

.mainImgContainer {
  text-align: center;
  position: relative;
}

@media screen and (max-width: 47.9375em) {
  .mainImgContainer {
    width: 65%;
    margin: 0 auto;
  }
}

.mainImgContainer .badgeOverlay {
  position: absolute;
  left: 5px;
  top: 5px;
  z-index: 5;
}

.mainImgContainer .Magic360-container {
  border: none;
}

.MagicScroll .mcs-item img {
  border: 1px solid #dddddd;
  -webkit-box-shadow: none;
          box-shadow: none;
}

.starOuter {
  color: #79796A;
  padding: 0.35rem 0;
}

.starOuter a {
  color: #79796A;
}

.starOuter a:hover {
  text-decoration: underline;
  -webkit-text-decoration-color: #79796A;
          text-decoration-color: #79796A;
}

.starOuter a.reviewStars {
  text-decoration: none;
}

.starOuter .fa-star {
  color: #fbd923;
}

.pricePerItem {
  text-align: right;
  color: #79796A;
  font-size: 1rem;
  font-weight: bold;
}

.largePriceTable {
  margin-bottom: .25rem;
  margin-top: 0.45rem;
}

.getQuoteLink {
  color: black;
  display: block;
  text-align: center;
  margin-top: 0.6rem;
  margin-bottom: 0.6rem;
}

.getQuoteLink h2 {
  font-size: 1.12em;
}

.skuPromoAppliedLabel {
  font-size: .85714rem;
  color: #79796A;
  text-align: right;
  display: block;
}

.pricePanel {
  padding: 0px 7px 5px 7px;
  background: #f7f6f6;
  border: 3px solid #e8e5e5;
}

.pricePanel .input-group {
  display: table;
  margin-bottom: 0.4rem;
}

.pricePanel #options-vat {
  padding: .5em 0 0;
  text-align: right;
}

.smallPriceTable .priceTable table th, .smallPriceTable .priceTable table td {
  padding: .42857rem .27143rem .57143rem;
  text-align: center;
}

.smallPriceTable .priceTable table td, .smallPriceTable .priceTable table th {
  font-size: 0.92857rem;
  line-height: 1.1rem;
}

.smallPriceTable .input-group {
  margin-bottom: 0.35714rem;
}

.productVariation {
  /*border: 1px solid $dark-gray;*/
  border: 1px solid #e8e5e5;
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  margin-bottom: 20px;
  position: relative;
  /*background:$light-gray;*/
  background: #f7f6f6;
  padding: 10px;
}

.productVariation ul {
  list-style-type: none;
  margin: 0.21429rem;
}

.productVariation p {
  font-size: 14px;
  font-weight: bold;
  margin-left: 0;
  padding-top: 0px;
  margin-top: 0px;
}

.productVariation span {
  border: 1px solid #ccc;
  display: inline-block;
  padding: 5px;
  border-radius: 4px;
  background: white;
  margin: 5px 0;
  cursor: pointer;
}

.productVariation span.selected {
  border: 1px solid #b57e7e;
  cursor: default;
}

.productVariation span.selected:hover {
  background: white;
}

.productVariation span:hover {
  background: #eee;
  border: 1px solid #b57e7e;
}

.app_AttributeVariationProducts ul {
  list-style-type: none;
}

.app_AttributeVariationProducts ul li {
  display: block;
  border-bottom: 0.5px dotted lightgrey;
  padding: 10px;
}

.app_AttributeVariationProducts ul li::after {
  content: "";
  clear: both;
  display: table;
}

.app_AttributeVariationProducts span {
  display: inline-block;
  float: left;
  padding: 5px;
  margin: 5px;
  border: 2px solid lightgrey;
  cursor: pointer;
  border-radius: 5px;
}

.app_AttributeVariationProducts span.selected {
  border: 2px solid indianred;
}

.app_AttributeVariationProducts span.disabled {
  border: 2px solid white;
  text-decoration: line-through;
  color: lightgray;
}

.productWidget {
  list-style-type: none;
  border: 1px solid #e8e5e5;
  margin: auto;
  border-radius: 2px;
}

.productWidget li {
  padding: 5px 5px 0 5px;
  clear: both;
  border-bottom: 1px solid #e8e5e5;
  overflow: hidden;
}

.productWidget li:last-child {
  border-bottom: none;
}

.productWidget li a {
  display: block;
  color: black;
}

.productWidget li p {
  margin-bottom: 0.42857rem;
}

.widgetHeader {
  background: #e8e5e5;
  color: #0a0a0a;
  font-weight: bold;
  font-size: 1.14286rem;
  text-align: center;
  padding: 0.57143rem 0.35714rem 0.64286rem 0.35714rem !important;
}

.widgetProductLeft {
  float: left;
  width: 45%;
  text-align: center;
}

.widgetProductLeft img {
  width: 60%;
}

.widgetProductRight {
  float: left;
  width: 53%;
}

.product-tile-container {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(250px, 1fr));
  grid-gap: 10px;
  -webkit-box-shadow: 0 0 0 1px rgba(10, 10, 10, 0.2);
          box-shadow: 0 0 0 1px rgba(10, 10, 10, 0.2);
}

.product-tile {
  max-width: 250px;
  padding: .5em;
}

.product-tile--details h3 {
  text-overflow: ellipsis;
  white-space: nowrap;
  overflow: hidden;
}

.product-tile--controls {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
}

.product-tile--controls button {
  margin: 0;
}

.product-tile--controls label {
  display: inline-block;
}

.product-tile--controls label input {
  margin: 0;
}

.productItem {
  position: relative;
  border-bottom: 1px solid #e8e5e5;
  margin-bottom: 0.35714rem;
  min-height: 200px;
}

@media screen and (max-width: 63.9375em) {
  .productItem {
    text-align: center;
  }
}

.productItem h3 {
  color: #0a0a0a;
}

.otherControls {
  position: absolute;
  left: 3px;
  bottom: 5px;
  text-align: left;
}

.otherControls label {
  margin-right: 3px;
}

.otherControls span, .otherControls label, .otherControls a {
  display: inline-block;
}

.quickViewLink {
  font-size: 12px;
  border: 1px solid #ccc;
  padding: 8px 5px;
  -webkit-box-shadow: 0 1px 1px rgba(0, 0, 0, 0.25);
          box-shadow: 0 1px 1px rgba(0, 0, 0, 0.25);
  background: white;
  color: #0a0a0a;
}

.quickViewLink:hover {
  background: #F9A519;
  color: #0a0a0a;
}

.smallImgContainer {
  text-align: center;
  margin: 0 auto;
  position: relative;
}

.smallImgContainer img {
  max-width: 140px;
}

.smallBadgeOverlay {
  position: absolute;
  right: 5px;
  bottom: 5px;
}

.smallStockMessage {
  font-weight: bold;
  text-align: left;
  font-size: 1rem;
}

@media screen and (max-width: 47.9375em) {
  .smallStockMessage {
    margin-bottom: 1.14286rem;
  }
}

.quickViewPopupContent {
  max-height: 750px;
  overflow-y: auto;
}

.attributeFilters {
  list-style-type: none;
  border: 1px solid #e8e5e5;
  margin: auto;
  border-radius: 2px;
  z-index: 10006;
  position: relative;
  background: white;
}

.attributeFilters li {
  padding: 5px 5px 0 5px;
  clear: both;
  border-bottom: 1px solid #e8e5e5;
  position: relative;
}

@media screen and (max-width: 47.9375em) {
  .attributeFilters li {
    padding: 10px 5px 0 10px;
  }
}

.attributeFilters li:last-child {
  border-bottom: none;
}

.attributeFilters li a {
  display: block;
  color: black;
  width: 95%;
  overflow: auto;
  padding: 5px 0 5px 10px;
  position: relative;
  text-decoration: none;
}

.attributeFilters li .attributeName {
  display: none;
}

@media print, screen and (min-width: 48em) {
  .attributeFilters li .attributeName {
    display: block;
  }
}

@media print, screen and (min-width: 48em) {
  .attributeFilters li .attributeListHolder {
    width: 20rem;
    top: -50%;
    left: 100%;
    position: absolute;
    background-color: #fff;
    -webkit-box-shadow: 2px 3px 22px -5px rgba(0, 0, 0, 0.58);
            box-shadow: 2px 3px 22px -5px rgba(0, 0, 0, 0.58);
    z-index: 2000000000;
    padding: 0.71429rem;
  }
}

.attributeFilters li .attributeListHolder i {
  display: none;
}

@media print, screen and (min-width: 48em) {
  .attributeFilters li .attributeListHolder i {
    position: absolute;
    top: 7px;
    right: 7px;
    display: block;
  }
}

.attributeFilters li .attributeListHolder i:hover {
  color: firebrick;
  cursor: pointer;
}

.attributeFilters li .attributeListHolder .attributeList {
  list-style: none;
  margin-left: 0px;
}

@media screen and (max-width: 47.9375em) {
  .attributeFilters li .attributeListHolder .attributeList {
    max-height: 28.57143rem;
  }
}

li.search_attributes_redundant_section a {
  pointer-events: none;
  cursor: default;
  color: #e8e5e5;
}

.searchfilterTop {
  padding: 0 0 0.57143rem 0;
}

.searchfilterTop span {
  font-weight: bold;
}

.searchfilterTop div {
  width: 43%;
  margin: 2%;
  display: inline-block;
}

.searchfilterTop select {
  width: 86%;
  margin: 2%;
  padding: 4px;
  border: 1px solid #ccc;
}

.searchfilterMiddle {
  padding: 8px;
  border: 1px solid #ccc;
  overflow-y: auto;
}

@media print, screen and (min-width: 48em) {
  .searchfilterMiddle {
    max-height: 300px;
  }
}

.searchfilterFooter span {
  line-height: 44px;
  display: inline-block;
  padding: 0px;
}

.searchfilterFooter button {
  margin-bottom: 0px;
  margin-top: 10px;
  float: right;
}

.attributeFiltersHeader {
  background: #e8e5e5;
  color: #0a0a0a;
  font-weight: bold;
  font-size: 1.14286rem;
  text-align: center;
  padding: 0.57143rem 0.35714rem 0.64286rem 0.35714rem !important;
}

.appliedFilters {
  overflow-y: auto;
  max-height: 300px;
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
}

.filterSection {
  padding: 5px;
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  overflow: hidden;
}

.filterSectionHeader {
  border-bottom: 1px solid #ccc;
  overflow: hidden;
  line-height: 20px;
  margin-top: 2px;
}

.filterSectionTitle {
  color: #000;
  font-weight: bold;
  float: left;
  margin: 3px;
}

.removeFilterSection {
  cursor: pointer;
  color: #337ab7;
  text-decoration: underline;
  font-size: 12px;
  line-height: 15px;
  float: right;
  margin: 3px;
}

.search_attributes_selected_section a {
  font-weight: 700;
}

.searchTag {
  position: relative;
  display: table;
  border-radius: 4px;
  color: #fff;
  background-color: #F9A519;
  border: 1px solid #F9A519;
  max-width: 176px;
  margin: 4px;
  float: left;
}

.searchTag:hover {
  background-color: #D9534F;
  border: 1px solid #d43f3a;
}

.searchTag span {
  text-align: center;
  display: table-cell;
  vertical-align: middle;
  padding: 4px 8px;
}

.searchTag .removeTag {
  color: #fff;
  background: rgba(0, 0, 0, 0.15);
  cursor: pointer;
  display: table-cell;
  vertical-align: middle;
  padding: 4px 8px;
}

.attributeFilters .checkbox {
  cursor: pointer;
  display: inline-block;
  padding: 0.57143rem 0;
}

/*Range Slider*/
input[type=range].rangeSlider {
  -webkit-appearance: none;
  width: 100%;
  margin: 6.85px 0;
}

input[type=range].rangeSlider:focus {
  outline: none;
}

input[type=range].rangeSlider::-webkit-slider-runnable-track {
  width: 100%;
  height: 4.3px;
  cursor: pointer;
  -webkit-box-shadow: 0px 0px 0px rgba(0, 0, 0, 0), 0px 0px 0px rgba(13, 13, 13, 0);
          box-shadow: 0px 0px 0px rgba(0, 0, 0, 0), 0px 0px 0px rgba(13, 13, 13, 0);
  background: #e8e5e5;
  border-radius: 0px;
  border: 0.2px solid rgba(0, 0, 0, 0);
}

input[type=range].rangeSlider::-webkit-slider-thumb {
  -webkit-box-shadow: 0px 0px 0px rgba(103, 0, 0, 0), 0px 0px 0px rgba(129, 0, 0, 0);
          box-shadow: 0px 0px 0px rgba(103, 0, 0, 0), 0px 0px 0px rgba(129, 0, 0, 0);
  border: 0px solid rgba(0, 0, 0, 0);
  height: 18px;
  width: 12px;
  border-radius: 0px;
  background: #f9a519;
  cursor: pointer;
  -webkit-appearance: none;
  margin-top: -7.05px;
}

input[type=range].rangeSlider:focus::-webkit-slider-runnable-track {
  background: #e8e5e5;
}

input[type=range].rangeSlider::-moz-range-track {
  width: 100%;
  height: 4.3px;
  cursor: pointer;
  box-shadow: 0px 0px 0px rgba(0, 0, 0, 0), 0px 0px 0px rgba(13, 13, 13, 0);
  background: #e8e5e5;
  border-radius: 0px;
  border: 0.2px solid rgba(0, 0, 0, 0);
}

input[type=range].rangeSlider::-moz-range-thumb {
  box-shadow: 0px 0px 0px rgba(103, 0, 0, 0), 0px 0px 0px rgba(129, 0, 0, 0);
  border: 0px solid rgba(0, 0, 0, 0);
  height: 18px;
  width: 12px;
  border-radius: 0px;
  background: #f9a519;
  cursor: pointer;
}

input[type=range].rangeSlider::-ms-track {
  width: 100%;
  height: 4.3px;
  cursor: pointer;
  background: transparent;
  border-color: transparent;
  color: transparent;
}

input[type=range].rangeSlider::-ms-fill-lower {
  background: #e8e5e5;
  border: 0.2px solid rgba(0, 0, 0, 0);
  border-radius: 0px;
  box-shadow: 0px 0px 0px rgba(0, 0, 0, 0), 0px 0px 0px rgba(13, 13, 13, 0);
}

input[type=range].rangeSlider::-ms-fill-upper {
  background: #e8e5e5;
  border: 0.2px solid rgba(0, 0, 0, 0);
  border-radius: 0px;
  box-shadow: 0px 0px 0px rgba(0, 0, 0, 0), 0px 0px 0px rgba(13, 13, 13, 0);
}

input[type=range].rangeSlider::-ms-thumb {
  box-shadow: 0px 0px 0px rgba(103, 0, 0, 0), 0px 0px 0px rgba(129, 0, 0, 0);
  border: 0px solid rgba(0, 0, 0, 0);
  height: 18px;
  width: 12px;
  border-radius: 0px;
  background: #f9a519;
  cursor: pointer;
  height: 4.3px;
}

input[type=range].rangeSlider:focus::-ms-fill-lower {
  background: #e8e5e5;
}

input[type=range].rangeSlider:focus::-ms-fill-upper {
  background: #e8e5e5;
}

.paginationBar {
  background: #e8e5e5;
  margin-bottom: 1.07143rem;
}

.paginationBar input, .paginationBar select {
  margin: 0.35714rem;
}

@media screen and (max-width: 63.9375em) {
  .paginationBar {
    text-align: center;
  }
}

.searchResultsCount {
  display: inline-block;
  padding: 0.57143rem;
}

@media screen and (max-width: 63.9375em) {
  .searchResultsCount {
    text-align: center;
  }
}

.ProductsPagination {
  margin-top: 0.92857rem;
  margin-right: 0.42857rem;
  display: inline-block;
}

@media screen and (max-width: 63.9375em) {
  .ProductsPagination {
    text-align: center;
    margin-bottom: 0.71429rem;
  }
}

@media print, screen and (min-width: 64em) {
  .ProductsPagination {
    float: right;
  }
}

.ProductsPagination a {
  padding: 0.35714rem 0.64286rem;
  margin-left: 0.28571rem;
  color: #4f4f4f;
  cursor: pointer;
  border-radius: 3px;
  background: #d6d3d3;
}

.ProductsPagination a.currentPage {
  background: #313131;
  color: #fefefe;
}

.ProductsPagination a.paging {
  background: #aba6a6;
  color: #fefefe;
}

.ProductsPagination a:hover {
  background: #313131;
  color: #fefefe;
}

.tierWrapper {
  margin-top: 0.71429rem;
  margin-bottom: 0.71429rem;
}

.tierImage {
  text-align: center;
}

.tierImage a {
  display: block;
  text-decoration: none;
  color: #0a0a0a;
}

.tierImage a .tierImageText {
  display: block;
  line-height: 1.25rem;
  margin-top: 0.35714rem;
  font-size: 0.92857rem;
}

.tierImage a i {
  color: #79796A;
  font-size: 0.78571rem;
}

@media screen and (max-width: 47.9375em) {
  .tierImage.searchTierStructureTierItem, .tierImage.popularCategoryItem {
    padding: 0.71429rem;
    margin-bottom: 0px;
    border-bottom: 1px solid #e8e5e5;
    text-align: left;
  }
  .tierImage.searchTierStructureTierItem img, .tierImage.popularCategoryItem img {
    display: none;
  }
  .tierImage.searchTierStructureTierItem .tierImageText, .tierImage.popularCategoryItem .tierImageText {
    display: inline;
  }
}

@media screen and (max-width: 47.9375em) {
  .searchTierStructureTierItem:last-child {
    margin-bottom: 10px;
  }
}

.searchTierBlockList {
  list-style: none;
  margin-top: .5rem;
  /*@include breakpoint(medium) {
        margin-top: rem-calc(-10);
    }*/
  margin-left: 0.57143rem;
}

.searchTierBlockList li {
  cursor: pointer;
}

@media screen and (max-width: 47.9375em) {
  .searchTierBlockList li {
    padding: 0.71429rem 0;
    border-bottom: 1px solid #e8e5e5;
  }
}

.searchTierBlockList li:hover {
  text-decoration: underline;
}

.searchBreadcrumb {
  font-weight: bold;
  color: #0a0a0a;
  display: inline-block;
  margin-bottom: .2rem;
  line-height: 1.3;
}

a.searchBreadcrumb {
  white-space: initial !important;
  color: #0a0a0a;
}

#suggestedBreadcrumb {
  display: -webkit-inline-box;
  display: -ms-inline-flexbox;
  display: inline-flex;
  overflow-x: auto;
  white-space: nowrap;
  max-width: 100% !important;
}

.accordionA {
  cursor: pointer;
  border: none;
  border-radius: 0;
  outline: none;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: horizontal;
  -webkit-box-direction: normal;
      -ms-flex-direction: row;
          flex-direction: row;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
  text-align: left;
  width: 100%;
  padding: .4rem;
  border-bottom: 1px solid #ddd;
}

.panelA {
  background-color: white;
  display: none;
  overflow: hidden;
}

.column.column-block, .column-block.columns {
  position: relative;
}

.accordionA span:after {
  font-family: "Font Awesome 5 Free";
  font-weight: 900;
  content: "\f107";
  font-size: 1.4rem;
  color: #aaa;
}

.active span:after {
  content: "\f106";
}

.toggleCategory {
  display: none;
}

@media print, screen and (min-width: 64em) {
  .imagesTableWrapper {
    width: 36.66667%;
    float: left;
    padding-right: 0;
    padding-left: 0;
    padding-right: 0px !important;
  }
  .imagesTableWrapper:last-child:not(:first-child) {
    float: right;
  }
}

.attributesTableWrapper {
  position: relative;
  overflow-x: auto;
}

@media screen and (max-width: 63.9375em) {
  .attributesTableWrapper {
    display: none;
  }
}

@media print, screen and (min-width: 64em) {
  .attributesTableWrapper {
    width: 63.33333%;
    float: left;
    padding-right: 0;
    padding-left: 0;
  }
  .attributesTableWrapper:last-child:not(:first-child) {
    float: right;
  }
}

.compareQuickView label {
  margin-right: 3px;
}

.compareQuickView span, .compareQuickView label, .compareQuickView a {
  display: inline-block;
}

.searchTableBrandLogo {
  max-width: 65px;
  margin-top: -20px;
}

@media screen and (max-width: 89.9375em) {
  .attributesTableHeader {
    font-size: 0.85714rem;
    line-height: 1rem;
  }
}

.searchResultsRow h3 {
  color: #0a0a0a;
}

@media screen and (max-width: 63.9375em) {
  #t1 {
    min-width: auto !important;
    text-align: center;
  }
  #t1 .compareQuickView {
    text-align: left;
    position: absolute;
    bottom: -4px;
  }
  #t1 .searchResultsProductDetails {
    position: relative;
  }
}

#t2 {
  text-align: center;
}

#t2 tbody td {
  border: 1px solid #f1f1f1;
  border-top: none;
  border-left: none;
}

.floatThead-table thead th {
  text-align: center;
}

.searchTableProductImageContainer {
  position: relative;
}

.basketItemsOuter {
  padding: 0.35714rem;
}

label.basketHeading {
  color: #79796A;
  text-align: left;
}

.basketItem {
  border-bottom: 1px solid #e8e5e5;
  margin-bottom: 0.71429rem;
  padding: 0.35714rem;
}

.basketItem h3 {
  color: #0a0a0a;
}

.basketItem .updateItem {
  cursor: pointer;
}

@media screen and (max-width: 47.9375em) {
  .basketItem {
    text-align: center;
  }
  .basketItem label.middle {
    margin-bottom: 0.35714rem;
  }
}

.basketItem.invalid {
  /*text-align: center;*/
  background-color: #f7e4e1;
}

.basketItem .totalPrice {
  font-weight: bold;
}

.basketItemRemove {
  width: 100%;
  float: left;
  padding-right: 0.35714rem;
  padding-left: 0.35714rem;
}

@media print, screen and (min-width: 48em) {
  .basketItemRemove {
    padding-right: 0.57143rem;
    padding-left: 0.57143rem;
  }
}

@media print, screen and (min-width: 64em) {
  .basketItemRemove {
    padding-right: 0.57143rem;
    padding-left: 0.57143rem;
  }
}

.basketItemRemove:last-child:not(:first-child) {
  float: right;
}

@media print, screen and (min-width: 48em) {
  .basketItemRemove {
    width: 4.16667%;
    float: left;
    padding-right: 0.35714rem;
    padding-left: 0.35714rem;
  }
}

@media print, screen and (min-width: 48em) and (min-width: 48em) {
  .basketItemRemove {
    padding-right: 0.57143rem;
    padding-left: 0.57143rem;
  }
}

@media print, screen and (min-width: 48em) and (min-width: 64em) {
  .basketItemRemove {
    padding-right: 0.57143rem;
    padding-left: 0.57143rem;
  }
}

@media print, screen and (min-width: 48em) {
  .basketItemRemove:last-child:not(:first-child) {
    float: right;
  }
}

.basketItemImg {
  width: 100%;
  float: left;
  padding-right: 0.35714rem;
  padding-left: 0.35714rem;
}

@media print, screen and (min-width: 48em) {
  .basketItemImg {
    padding-right: 0.57143rem;
    padding-left: 0.57143rem;
  }
}

@media print, screen and (min-width: 64em) {
  .basketItemImg {
    padding-right: 0.57143rem;
    padding-left: 0.57143rem;
  }
}

.basketItemImg:last-child:not(:first-child) {
  float: right;
}

@media print, screen and (min-width: 48em) {
  .basketItemImg {
    width: 5.83333%;
    float: left;
    padding-right: 0.35714rem;
    padding-left: 0.35714rem;
  }
}

@media print, screen and (min-width: 48em) and (min-width: 48em) {
  .basketItemImg {
    padding-right: 0.57143rem;
    padding-left: 0.57143rem;
  }
}

@media print, screen and (min-width: 48em) and (min-width: 64em) {
  .basketItemImg {
    padding-right: 0.57143rem;
    padding-left: 0.57143rem;
  }
}

@media print, screen and (min-width: 48em) {
  .basketItemImg:last-child:not(:first-child) {
    float: right;
  }
}

.basketItemDesc {
  width: 100%;
  float: left;
  padding-right: 0.35714rem;
  padding-left: 0.35714rem;
}

@media print, screen and (min-width: 48em) {
  .basketItemDesc {
    padding-right: 0.57143rem;
    padding-left: 0.57143rem;
  }
}

@media print, screen and (min-width: 64em) {
  .basketItemDesc {
    padding-right: 0.57143rem;
    padding-left: 0.57143rem;
  }
}

.basketItemDesc:last-child:not(:first-child) {
  float: right;
}

@media print, screen and (min-width: 48em) {
  .basketItemDesc {
    width: 32.5%;
    float: left;
    padding-right: 0.35714rem;
    padding-left: 0.35714rem;
  }
}

@media print, screen and (min-width: 48em) and (min-width: 48em) {
  .basketItemDesc {
    padding-right: 0.57143rem;
    padding-left: 0.57143rem;
  }
}

@media print, screen and (min-width: 48em) and (min-width: 64em) {
  .basketItemDesc {
    padding-right: 0.57143rem;
    padding-left: 0.57143rem;
  }
}

@media print, screen and (min-width: 48em) {
  .basketItemDesc:last-child:not(:first-child) {
    float: right;
  }
}

.basketItemQty {
  width: 100%;
  float: left;
  padding-right: 0.35714rem;
  padding-left: 0.35714rem;
}

@media print, screen and (min-width: 48em) {
  .basketItemQty {
    padding-right: 0.57143rem;
    padding-left: 0.57143rem;
  }
}

@media print, screen and (min-width: 64em) {
  .basketItemQty {
    padding-right: 0.57143rem;
    padding-left: 0.57143rem;
  }
}

.basketItemQty:last-child:not(:first-child) {
  float: right;
}

@media print, screen and (min-width: 48em) {
  .basketItemQty {
    width: 20.83333%;
    float: left;
    padding-right: 0.35714rem;
    padding-left: 0.35714rem;
  }
}

@media print, screen and (min-width: 48em) and (min-width: 48em) {
  .basketItemQty {
    padding-right: 0.57143rem;
    padding-left: 0.57143rem;
  }
}

@media print, screen and (min-width: 48em) and (min-width: 64em) {
  .basketItemQty {
    padding-right: 0.57143rem;
    padding-left: 0.57143rem;
  }
}

@media print, screen and (min-width: 48em) {
  .basketItemQty:last-child:not(:first-child) {
    float: right;
  }
}

.basketItemStatus {
  width: 100%;
  float: left;
  padding-right: 0.35714rem;
  padding-left: 0.35714rem;
}

@media print, screen and (min-width: 48em) {
  .basketItemStatus {
    padding-right: 0.57143rem;
    padding-left: 0.57143rem;
  }
}

@media print, screen and (min-width: 64em) {
  .basketItemStatus {
    padding-right: 0.57143rem;
    padding-left: 0.57143rem;
  }
}

.basketItemStatus:last-child:not(:first-child) {
  float: right;
}

@media print, screen and (min-width: 48em) {
  .basketItemStatus {
    width: 20%;
    float: left;
    padding-right: 0.35714rem;
    padding-left: 0.35714rem;
  }
}

@media print, screen and (min-width: 48em) and (min-width: 48em) {
  .basketItemStatus {
    padding-right: 0.57143rem;
    padding-left: 0.57143rem;
  }
}

@media print, screen and (min-width: 48em) and (min-width: 64em) {
  .basketItemStatus {
    padding-right: 0.57143rem;
    padding-left: 0.57143rem;
  }
}

@media print, screen and (min-width: 48em) {
  .basketItemStatus:last-child:not(:first-child) {
    float: right;
  }
}

.addressesOption ul {
  max-width: 8.21429rem;
}

.addressesOption ul a {
  color: #0a0a0a;
  font-weight: bold;
  padding: 0.64286rem 0.28571rem;
}

.addressesOption ul li .sub {
  border: 1px solid #e8e5e5;
}

.addressesOption ul li .sub a {
  padding: 15px 8px !important;
  font-weight: normal;
  cursor: pointer;
}

.addressesOption ul li .sub a:hover {
  background: lightgrey;
}

.addressesOption .accordion-menu .is-accordion-submenu-parent:not(.has-submenu-toggle) > a::after {
  border-color: #0a0a0a transparent transparent;
}

.adddressBlock {
  cursor: pointer;
  padding: 0.35714rem 0.57143rem;
}

.adddressBlock:hover {
  background: #f9f9f9;
}

.notificationsPanel {
  position: fixed;
  left: 0;
  bottom: 0;
  z-index: 9999999999999;
  -webkit-box-shadow: 0 3px 6px 0 rgba(0, 0, 0, 0.2);
          box-shadow: 0 3px 6px 0 rgba(0, 0, 0, 0.2);
  min-width: 250px;
}

.notificationsPanel.open {
  top: 30px;
  bottom: 40px;
}

.notificationsPanel .notificationPanelCount {
  background: #F95A61;
  color: white;
  font-weight: normal;
  font-size: 16px;
  padding: 5px;
  border-radius: 5px 5px 0 0;
  text-align: center;
  cursor: pointer;
}

.notificationsPanel .notificationList {
  background: rgba(49, 49, 49, 0.9);
  color: white;
  font-weight: normal;
  overflow-y: auto;
  height: 100%;
  padding: 5px;
}

.notificationsPanel .notificationList .row {
  cursor: pointer;
  border-bottom: 1px solid #fefefe;
}

.notificationsPanel .notificationList .row i {
  font-size: 1.42857rem;
  padding-top: 5px;
  visibility: hidden;
}

.notificationsPanel .notificationList .row i:hover {
  color: #F95A61;
}

.notificationsPanel .notificationList .row:hover {
  background: rgba(49, 49, 49, 0.9);
}

.notificationsPanel .notificationList .row:hover i {
  visibility: visible;
}

.notificationsPanel .notificationList .row .columns {
  padding-top: 0.35714rem;
  padding-bottom: 0.35714rem;
}

.openLabel {
  position: absolute;
  left: -100%;
  width: 40%;
  height: 100%;
  background: #a9a8a4;
  -webkit-transition: 0.4s;
  transition: 0.4s;
  padding: 5px;
  text-align: center;
}

.openLabel h3 {
  padding-top: 1.07143rem;
}

.notificationItem {
  position: relative;
}

.notificationItem:hover .openLabel {
  -webkit-transition: 0.4s;
  transition: 0.4s;
  left: 0;
}

.notificationItem p {
  margin-bottom: 0.35714rem;
}

.notificationItem label {
  text-align: right;
  font-size: 12px;
  color: white;
}

.notificationPanelCount:hover .bounceDown {
  -webkit-animation: bounceDown 2s infinite alternate ease-in-out;
  animation: bounceDown 2s infinite alternate ease-in-out;
}

.notificationPanelCount:hover .bounceUp {
  -webkit-animation: bounceUp 2s infinite alternate ease-in-out;
  animation: bounceUp 2s infinite alternate ease-in-out;
}

.notificationPanelCount .fa-angle-down {
  float: left;
  padding-left: 15px;
  margin-right: -15px;
  font-size: 30px;
  line-height: 23px;
  font-weight: bold;
}

.notificationPanelCount .fa-angle-up {
  float: left;
  padding-left: 15px;
  margin-right: -15px;
  font-size: 30px;
  line-height: 23px;
  font-weight: bold;
}

@-webkit-keyframes bounceDown {
  0%, 20%, 50%, 80%, 100% {
    -webkit-transform: translateY(0);
    transform: translateY(0);
  }
  40% {
    -webkit-transform: translateY(10px);
    transform: translateY(10px);
  }
  60% {
    -webkit-transform: translateY(12px);
    transform: translateY(12px);
  }
}

@keyframes bounceDown {
  0%, 20%, 50%, 80%, 100% {
    -webkit-transform: translateY(0);
    transform: translateY(0);
  }
  40% {
    -webkit-transform: translateY(10px);
    transform: translateY(10px);
  }
  60% {
    -webkit-transform: translateY(12px);
    transform: translateY(12px);
  }
}

@-webkit-keyframes bounceUp {
  0%, 20%, 50%, 80%, 100% {
    -webkit-transform: translateY(0);
    transform: translateY(0);
  }
  40% {
    -webkit-transform: translateY(-10px);
    transform: translateY(-10px);
  }
  60% {
    -webkit-transform: translateY(-12px);
    transform: translateY(-12px);
  }
}

@keyframes bounceUp {
  0%, 20%, 50%, 80%, 100% {
    -webkit-transform: translateY(0);
    transform: translateY(0);
  }
  40% {
    -webkit-transform: translateY(-10px);
    transform: translateY(-10px);
  }
  60% {
    -webkit-transform: translateY(-12px);
    transform: translateY(-12px);
  }
}

/*Move to messages*/
.notificationItemRow {
  padding-top: 0.64286rem;
  padding-bottom: 0.64286rem;
  padding-left: 0.57143rem;
  border-bottom: 1px solid #ECEFF1;
  cursor: pointer;
}

.notificationItemRow:hover {
  background: rgba(49, 49, 49, 0.03);
}

.notificationItemRow h3 {
  margin-bottom: 0;
  padding: 2px 0;
}

.notificationItemRow p {
  margin-bottom: 0;
  padding: 2px 0;
}

.notificationItemRow label {
  margin-bottom: 0;
  padding: 2px 0;
}

.notificationItemRow .unreadNotification {
  border-left: 3px solid #F95A61;
}

@media print, screen and (min-width: 48em) {
  .messageBodyCol {
    padding-left: 0.71429rem;
  }
}

.messageBodyCol .closeBar {
  position: relative;
  height: 32px;
  background: #fbfbfb;
  border-radius: 5px;
  margin-bottom: 15px;
}

.messageBodyCol .closeBar .close-button {
  right: 0.5rem;
  top: 0.25rem;
}

.noWidth {
  width: 0%;
  display: inline;
}

.notVisible {
  opacity: 0;
  visibility: hidden;
}

.transition {
  -webkit-transition: 0.4s;
  transition: 0.4s;
  opacity: 1;
  visibility: visible;
}

h2.unreadCount {
  color: #F95A61;
}

.moreInfo {
  text-align: center;
  margin-top: 25px;
}

.recentOrders label {
  display: inline-block;
}

.recentOrders > .row {
  border-bottom: 1px solid #e8e5e5;
  padding-top: 0.42857rem;
  padding-bottom: 0.42857rem;
  cursor: pointer;
}

.recentOrders > .row:hover {
  background: #e8e5e5;
}

#slider-container {
  background-size: contain;
  position: relative;
}

.slider-img {
  width: 100%;
}

.slider-nav {
  position: absolute;
  top: 40%;
  color: #ffffffcc;
  font-size: 50px;
  cursor: pointer;
  display: none;
}

.siteTypePopUp {
  text-align: center;
}

.siteTypePopUp h2 {
  font-size: 18px;
  line-height: 22px;
  color: #4f4f4f;
  padding-top: 5px;
}

.siteTypePopUp a, .siteTypePopUp p {
  font-size: 16px;
  line-height: 22px;
  color: black;
}

.siteTypePopUp a:hover {
  text-decoration: underline;
  -webkit-text-decoration-color: #063c7c;
          text-decoration-color: #063c7c;
}

.siteTypePopUp ul {
  text-align: left;
}

.cookieMessage p {
  color: #3a3636;
  font-size: 11px;
  margin-top: 20px;
}

.pop-box-hold {
  display: none;
  opacity: 1;
  position: fixed;
  right: 22px;
  top: 22px;
  z-index: 999999999;
  padding: 15px;
  width: 270px;
  border-radius: 3px;
  border-bottom: 1px solid rgba(0, 0, 0, 0.2);
  -webkit-box-shadow: 0 1px 5px rgba(0, 0, 0, 0.15);
          box-shadow: 0 1px 5px rgba(0, 0, 0, 0.15);
  background-color: #fff;
  color: black;
}

.pop-box-hold h2 {
  color: black;
  font-size: 15px;
  margin: 0;
  padding-top: 0px;
  padding-bottom: 5px;
}

.pop-box-hold span, .pop-box-hold a, .pop-box-hold p {
  color: black !important;
}

.cart-detail {
  margin-top: 15px;
  text-align: right;
}

.cart-detail a {
  margin-top: 10px !important;
  margin-bottom: 3px !important;
}

.pop-box-hold .button.green, .pop-box-hold .button.green:hover {
  background: #2F9F46;
  color: white !important;
}

.cart-price {
  font-size: 18px;
}

.red-text, .redText {
  color: #b22222 !important;
}

.currencyFlags {
  width: 100%;
  text-align: center;
}

.currencyFlags button {
  border: 0;
  cursor: pointer;
}

.cookie-policy-wrap {
  position: fixed;
  top: 0;
  right: 0;
  bottom: 0;
  left: 0;
  z-index: 10009;
  background-color: rgba(10, 10, 10, 0.45);
  display: none;
}

.cookie-policy {
  font-size: 16px;
  position: fixed;
  top: 50%;
  left: 50%;
  -webkit-transform: translate(-50%, -50%);
          transform: translate(-50%, -50%);
  z-index: 99999;
  width: 90%;
  background-color: #ffffff;
  padding: 2em;
  border: none;
  -webkit-box-shadow: 0 1px 4px 0 rgba(0, 0, 0, 0.4);
          box-shadow: 0 1px 4px 0 rgba(0, 0, 0, 0.4);
  color: #000000;
  font-weight: normal;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  border-radius: 3px;
}

.cookie-policy [class^="cookie-policy-"] {
  margin-top: 1em;
}

.cookie-policy [class^="cookie-policy-"]:first-child {
  margin-top: 0;
}

@media print, screen and (min-width: 64em) {
  .cookie-policy {
    max-width: 920px;
  }
}

.cookie-policy .cookie-policy--text {
  font-size: 1em;
}

.cookie-policy .cookie-policy--text a {
  font-weight: normal;
  color: #130c00;
  text-decoration: underline;
}

.cookie-policy .cookie-policy--btns {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
}

@media print, screen and (min-width: 48em) {
  .cookie-policy .cookie-policy--btns {
    -webkit-box-orient: horizontal;
    -webkit-box-direction: normal;
        -ms-flex-direction: row;
            flex-direction: row;
  }
}

.cookie-policy .cookie-policy--btns .button {
  margin: .5em .5em 0;
}

@media print, screen and (min-width: 48em) {
  .cookie-policy .cookie-policy--btns .button {
    margin-top: 0;
    margin: 1em 1em;
  }
}

.cookie-policy .cookie-policy--btns .button-outline {
  background-color: white;
  color: black;
  border-color: #d3d3d3;
}

/*Vertical Menu Trigger*/
.verticalMenu-trigger:hover {
  background-color: #0a0a0a;
  color: #fefefe;
}

a.verticalMenu-trigger {
  padding-right: 2.57143rem;
}

a.verticalMenu-trigger, a.verticalMenu-trigger:focus, a.verticalMenu-trigger:hover {
  color: #fefefe;
}

.verticalMenu-trigger::before,
.verticalMenu-trigger::after {
  content: '';
  position: absolute;
  top: 50%;
  margin-top: -1px;
  height: 2px;
  width: 9px;
  background: #ffffff;
  -webkit-backface-visibility: hidden;
  backface-visibility: hidden;
  -webkit-transition: width 0.3s, -webkit-transform 0.3s;
  transition: width 0.3s, -webkit-transform 0.3s;
  transition: width 0.3s, transform 0.3s;
  transition: width 0.3s, transform 0.3s, -webkit-transform 0.3s;
}

.verticalMenu-trigger::before {
  right: 22px;
  -webkit-transform: rotate(45deg);
  transform: rotate(45deg);
}

.verticalMenu-trigger::after {
  right: 17px;
  -webkit-transform: rotate(-45deg);
  transform: rotate(-45deg);
}

.verticalMenu-trigger.dropdown-is-active::before,
.verticalMenu-trigger.dropdown-is-active::after {
  width: 14px;
}

.verticalMenu-trigger.dropdown-is-active::before {
  -webkit-transform: translateX(5px) rotate(-45deg);
  transform: translateX(5px) rotate(-45deg);
}

.verticalMenu-trigger.dropdown-is-active::after {
  -webkit-transform: rotate(45deg);
  -moz-transform: rotate(45deg);
  -ms-transform: rotate(45deg);
  -o-transform: rotate(45deg);
}

.verticalMenu-trigger.dropdown-is-active {
  background: #F9A519;
  color: #0a0a0a;
}

.verticalMenu-trigger {
  display: block;
  position: relative;
  padding: 0 36px 0 20px;
  line-height: 40px;
  background-color: #313131;
  color: #fefefe;
  font-size: 14px;
  border: none;
  font-weight: 700;
  z-index: 20000;
}

.displayBlock {
  display: block !important;
}

.TierMenu {
  display: none;
}

.TierMenu.dropdown-is-active {
  display: block;
  opacity: 1;
  z-index: 9999999;
}

.top-bar,
.top-bar ul {
  background: none;
}

.top-bar {
  padding: .05rem;
}

.title-bar {
  display: block;
  float: none;
  padding: 0.1rem 0.6rem;
  background: none;
}

.title-bar .menu-icon {
  bottom: -0.35714rem;
}

.mainNav .is-drilldown {
  max-width: 1200px !important;
  margin-top: 0.71429rem;
  display: none;
}

.show-drilldown .is-drilldown {
  display: block;
  margin-bottom: 15px;
}

.mainNav .drilldown a {
  background: none;
  border-bottom: 1px solid #79796A;
}

.TierMenu li.tierHeader {
  font-size: 1rem;
  line-height: 20px;
  padding: 5px 10px;
  font-weight: 700;
  background: #0a0a0a;
}

.mainNav .drilldown .is-drilldown-submenu-parent > a::after {
  border-color: transparent transparent transparent #fefefe;
}

.mainNav .drilldown .is-drilldown-submenu {
  background: #313131;
  min-height: 100%;
}

@media screen and (max-width: 63.9375em) {
  .TierMenu-wrapper.expanded .menu li {
    display: block;
  }
  .TierMenu-wrapper .drilldown .js-drilldown-back > a::before {
    border-color: transparent #fefefe transparent transparent;
  }
  .hide-on-cat-open {
    display: none !important;
  }
  .mainNav {
    position: relative;
    width: 100%;
  }
  .mainNav .top-bar-left {
    display: none;
    width: 100%;
    border-top: 1px solid #dddddd;
  }
  .TierMenu-wrapper.expanded {
    position: absolute;
    width: 100%;
    background: #313131;
  }
  .headerWrapper .TierMenu label {
    padding: 8px;
    background: black;
  }
  .tierHeader {
    font-weight: bold;
  }
  .tierThreeMargin {
    padding-left: 1.78571rem;
  }
}

@media screen and (min-width: 64em) {
  .TierMenu {
    position: absolute;
    top: 100%;
    right: auto;
    left: 0;
  }
  .nearBottom > ul {
    top: auto !important;
    bottom: 0px;
    height: auto;
  }
  .relative {
    position: relative;
  }
  .TierMenu.dropdown-is-active {
    background: white;
  }
  .mainNav .vertical.menu.nested {
    background: white;
    -webkit-box-shadow: 0 4px 12px rgba(0, 0, 0, 0.1);
            box-shadow: 0 4px 12px rgba(0, 0, 0, 0.1);
  }
  .mainNav .vertical.menu a {
    color: #0a0a0a !important;
  }
}

@media screen and (max-width: 47.9375em) {
  .no-js .top-bar {
    display: none;
  }
}

@media print, screen and (min-width: 64em) {
  .no-js .title-bar {
    display: none;
  }
}

/*Tier Menu Content*/
@media screen and (min-width: 64em) {
  .title-bar {
    display: none;
  }
  .mainNav .is-drilldown {
    display: none;
  }
  .hide-on-cat-open {
    display: inline-block;
  }
  .TierMenu {
    min-width: 320px;
  }
  .TierMenu li.tierHeader {
    font-size: 1rem;
    line-height: 1.42857rem;
    padding: 0.35714rem 0.71429rem;
    font-weight: 700;
    color: #000;
    background: #f4f4f4;
  }
  .TierMenu > li {
    border-top: 1px solid #ebebeb;
  }
  .TierMenu > li > a {
    line-height: 1.42857rem;
    padding-top: 0.35714rem !important;
    padding-bottom: 0.35714rem !important;
    font-size: 0.85714rem;
  }
  .TierMenu.dropdown.menu.vertical > li.opens-right > a::after {
    border-color: transparent transparent transparent #79796A;
  }
  .TierMenu.dropdown.menu .is-active > a {
    border-left: solid 3px;
    border-color: #0a0a0a;
    padding-left: 0.8rem;
  }
  .TierMenu.dropdown.menu.vertical > li.opens-right > .is-dropdown-submenu {
    width: 515px;
    padding: 5px;
  }
  .mainNav .vertical.menu.nested div a {
    white-space: inherit;
    line-height: 1.3rem;
    font-weight: 400;
    display: block;
    padding-left: 0;
    padding-bottom: 0;
    font-size: 0.85714rem;
  }
  .mainNav .vertical.menu.nested div a.tierThreeMargin {
    padding-left: 0.57143rem;
  }
  .tierOneHeader {
    color: #0a0a0a !important;
    font-size: 1.14286rem;
    font-weight: 700;
    padding-bottom: 5px;
    display: inline-block;
  }
  .headerWrapper .TierMenu label {
    color: #0a0a0a;
  }
  .mainNav .vertical.menu.nested div a.tierHeader, .mainNav .vertical.menu.nested div label {
    font-weight: 700;
    font-size: 1rem;
    line-height: 1.42857rem;
  }
  .tierDocCount {
    color: #79796A;
    font-size: 0.64286rem;
  }
  .mainNav .vertical.menu.nested li {
    display: block;
  }
  .mainNav .vertical.menu.nested div {
    float: left;
    width: 245px;
    height: auto;
    padding: 4px 8px;
    color: #333;
  }
}

.footerContainer {
  background-color: #313131;
}

.footerBottom {
  max-width: 92.85714rem;
  margin-right: auto;
  margin-left: auto;
  text-align: center;
}

.footerBottom::before, .footerBottom::after {
  display: table;
  content: ' ';
}

.footerBottom::after {
  clear: both;
}

@media print, screen and (min-width: 64em) {
  .footerBottom .footer-col {
    text-align: left;
  }
}

.footerContainer a, .footerContainer p, .footerContainer li, .footerContainer label {
  color: #fefefe;
  font-size: 1rem;
}

.footerContainer a:hover {
  text-decoration: underline;
  -webkit-text-decoration-color: #fefefe;
          text-decoration-color: #fefefe;
}

.conradFooter {
  margin: 0 auto;
}

.termsPrivacy {
  width: 100%;
  float: left;
  padding-right: 0.35714rem;
  padding-left: 0.35714rem;
  padding-bottom: 0.35714rem;
  text-align: center;
}

@media print, screen and (min-width: 48em) {
  .termsPrivacy {
    padding-right: 0.57143rem;
    padding-left: 0.57143rem;
  }
}

@media print, screen and (min-width: 64em) {
  .termsPrivacy {
    padding-right: 0.57143rem;
    padding-left: 0.57143rem;
  }
}

.termsPrivacy:last-child:not(:first-child) {
  float: right;
}

.registerNewsletter {
  width: 100%;
  float: left;
  padding-right: 0.35714rem;
  padding-left: 0.35714rem;
}

@media print, screen and (min-width: 48em) {
  .registerNewsletter {
    padding-right: 0.57143rem;
    padding-left: 0.57143rem;
  }
}

@media print, screen and (min-width: 64em) {
  .registerNewsletter {
    padding-right: 0.57143rem;
    padding-left: 0.57143rem;
  }
}

.registerNewsletter:last-child:not(:first-child) {
  float: right;
}

.registerNewsletter button {
  font-weight: bold;
}

.footerBottom .certificate-wrap {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  width: 100%;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
}

@media print, screen and (min-width: 64em) {
  .footerBottom .certificate-wrap {
    -webkit-box-pack: start;
        -ms-flex-pack: start;
            justify-content: flex-start;
  }
}

.footerContainer .bsiGraphic {
  margin: 0 auto;
}

.copyrightContent {
  width: 100%;
  float: left;
  padding-right: 0.35714rem;
  padding-left: 0.35714rem;
  text-align: center;
}

@media print, screen and (min-width: 48em) {
  .copyrightContent {
    padding-right: 0.57143rem;
    padding-left: 0.57143rem;
  }
}

@media print, screen and (min-width: 64em) {
  .copyrightContent {
    padding-right: 0.57143rem;
    padding-left: 0.57143rem;
  }
}

.copyrightContent:last-child:not(:first-child) {
  float: right;
}

.bsiContent {
  width: 50%;
  float: left;
  padding-right: 0.35714rem;
  padding-left: 0.35714rem;
}

@media print, screen and (min-width: 48em) {
  .bsiContent {
    padding-right: 0.57143rem;
    padding-left: 0.57143rem;
  }
}

@media print, screen and (min-width: 64em) {
  .bsiContent {
    padding-right: 0.57143rem;
    padding-left: 0.57143rem;
  }
}

.bsiContent:last-child:not(:first-child) {
  float: right;
}

.bsiContent img {
  max-height: 100px;
  margin-left: 0.25rem;
}

.paymentLogoContent {
  width: 100%;
  float: left;
  padding-right: 0.35714rem;
  padding-left: 0.35714rem;
  margin-top: 0.5rem;
  text-align: center;
}

@media print, screen and (min-width: 48em) {
  .paymentLogoContent {
    padding-right: 0.57143rem;
    padding-left: 0.57143rem;
  }
}

@media print, screen and (min-width: 64em) {
  .paymentLogoContent {
    padding-right: 0.57143rem;
    padding-left: 0.57143rem;
  }
}

.paymentLogoContent:last-child:not(:first-child) {
  float: right;
}

.socialIconContent {
  width: 100%;
  float: left;
  padding-right: 0.35714rem;
  padding-left: 0.35714rem;
  margin-top: 0.5rem;
  text-align: center;
}

@media print, screen and (min-width: 48em) {
  .socialIconContent {
    padding-right: 0.57143rem;
    padding-left: 0.57143rem;
  }
}

@media print, screen and (min-width: 64em) {
  .socialIconContent {
    padding-right: 0.57143rem;
    padding-left: 0.57143rem;
  }
}

.socialIconContent:last-child:not(:first-child) {
  float: right;
}

.trustPilotContent {
  width: 100%;
  float: left;
  padding-right: 0.35714rem;
  padding-left: 0.35714rem;
}

@media print, screen and (min-width: 48em) {
  .trustPilotContent {
    padding-right: 0.57143rem;
    padding-left: 0.57143rem;
  }
}

@media print, screen and (min-width: 64em) {
  .trustPilotContent {
    padding-right: 0.57143rem;
    padding-left: 0.57143rem;
  }
}

.trustPilotContent:last-child:not(:first-child) {
  float: right;
}

.trustPilotContent .trustpilot-widget iframe {
  max-height: 130px;
  width: 80%;
}

.footerContainer .accordion, .footerContainer .accordion-content {
  background: #313131;
  border-left: none;
  border-right: none;
}

.footerContainer .accordion-title::before {
  top: 45%;
  font-weight: bold;
  font-size: 1.3rem;
}

.footerContainer .accordion-title:hover, .accordion-title:focus {
  background-color: #0a0a0a;
}

.footerContainer .accordion-title {
  font-size: 1.14286rem;
  border-left: none;
  border-right: none;
}

.footerContainer .accordion-item:last-child > :last-child {
  border-radius: 0px;
}

:last-child:not(.is-active) > .accordion-title {
  border-radius: 0px;
}

.footerContainer .accordion-content ul {
  margin-left: 0px;
}

.footerContainer .accordion-content ul li {
  list-style: none;
  text-indent: unset;
  line-height: 1.57143rem;
}

.footerContainer .socialIconContainer {
  display: inline-block;
  margin: 0 auto;
}

.footerContainer .socialIconContainer a {
  margin: 0.5rem;
}

@media screen and (min-width: 64em) {
  #footerAccordion > li > a.disabled {
    pointer-events: none;
    cursor: default;
    margin-top: 0.71429rem;
    margin-bottom: 1.07143rem;
    font-weight: bold;
  }
  #footerAccordion > li > a[disabled] {
    pointer-events: none;
    cursor: default;
    margin-top: 0.71429rem;
    margin-bottom: 1.07143rem;
    font-weight: bold;
  }
  :last-child > .accordion-content:last-child {
    border-bottom: none;
  }
  .footerContainer ul.accordion {
    max-width: 92.85714rem;
    margin-right: auto;
    margin-left: auto;
    background: none;
  }
  .footerContainer ul.accordion::before, .footerContainer ul.accordion::after {
    display: table;
    content: ' ';
  }
  .footerContainer ul.accordion::after {
    clear: both;
  }
  #footerAccordion .accordion-content {
    display: block !important;
  }
  .footerContainer .accordion-content {
    display: block;
    padding: 0;
    border: none;
    background-color: rgba(254, 254, 254, 0);
    color: #fefefe;
  }
  .footerContainer li.accordion-item {
    width: 25%;
    float: left;
    padding-right: 0.35714rem;
    padding-left: 0.35714rem;
  }
}

@media screen and (min-width: 64em) and (min-width: 48em) {
  .footerContainer li.accordion-item {
    padding-right: 0.57143rem;
    padding-left: 0.57143rem;
  }
}

@media screen and (min-width: 64em) and (min-width: 64em) {
  .footerContainer li.accordion-item {
    padding-right: 0.57143rem;
    padding-left: 0.57143rem;
  }
}

@media screen and (min-width: 64em) {
  .footerContainer li.accordion-item:last-child:not(:first-child) {
    float: right;
  }
  .footerContainer li.accordion-item:last-child:not(:first-child) {
    float: left;
  }
  .footerContainer > ul > li > a:hover {
    color: #fefefe;
  }
  .footerContainer > ul > li > a:focus {
    color: #fefefe;
  }
  .footerContainer li > a.accordion-title {
    border-bottom: none !important;
  }
  .footerContainer .accordion-title {
    position: initial;
    display: block;
    padding: 0;
    border: none;
    border-bottom: none;
    line-height: normal;
    line-height: initial;
    color: #fefefe;
  }
  .footerContainer .accordion-title:hover {
    background-color: rgba(254, 254, 254, 0);
  }
  .footerContainer .accordion-title:focus {
    background-color: rgba(254, 254, 254, 0);
  }
  .footerContainer .accordion-title::before {
    position: absolute;
    top: 50%;
    right: 1rem;
    margin-top: -0.5rem;
    content: '';
  }
  .registerNewsletter {
    width: 33.33333%;
    float: left;
    padding-right: 0.35714rem;
    padding-left: 0.35714rem;
  }
}

@media screen and (min-width: 64em) and (min-width: 48em) {
  .registerNewsletter {
    padding-right: 0.57143rem;
    padding-left: 0.57143rem;
  }
}

@media screen and (min-width: 64em) and (min-width: 64em) {
  .registerNewsletter {
    padding-right: 0.57143rem;
    padding-left: 0.57143rem;
  }
}

@media screen and (min-width: 64em) {
  .registerNewsletter:last-child:not(:first-child) {
    float: right;
  }
  .termsPrivacy {
    width: 33.33333%;
    float: left;
    padding-right: 0.35714rem;
    padding-left: 0.35714rem;
    text-align: left;
    float: right;
  }
}

@media screen and (min-width: 64em) and (min-width: 48em) {
  .termsPrivacy {
    padding-right: 0.57143rem;
    padding-left: 0.57143rem;
  }
}

@media screen and (min-width: 64em) and (min-width: 64em) {
  .termsPrivacy {
    padding-right: 0.57143rem;
    padding-left: 0.57143rem;
  }
}

@media screen and (min-width: 64em) {
  .termsPrivacy:last-child:not(:first-child) {
    float: right;
  }
  .copyrightContent {
    width: 50%;
    float: left;
    padding-right: 0.35714rem;
    padding-left: 0.35714rem;
    text-align: center;
    text-align: left;
  }
}

@media screen and (min-width: 64em) and (min-width: 48em) {
  .copyrightContent {
    padding-right: 0.57143rem;
    padding-left: 0.57143rem;
  }
}

@media screen and (min-width: 64em) and (min-width: 64em) {
  .copyrightContent {
    padding-right: 0.57143rem;
    padding-left: 0.57143rem;
  }
}

@media screen and (min-width: 64em) {
  .copyrightContent:last-child:not(:first-child) {
    float: right;
  }
  .paymentLogoContent {
    width: 25%;
    float: left;
    padding-right: 0.35714rem;
    padding-left: 0.35714rem;
    margin-top: 0.85714rem;
    /*.paymentIcons {
            float: right;
            margin: 0px;
        }*/
  }
}

@media screen and (min-width: 64em) and (min-width: 48em) {
  .paymentLogoContent {
    padding-right: 0.57143rem;
    padding-left: 0.57143rem;
  }
}

@media screen and (min-width: 64em) and (min-width: 64em) {
  .paymentLogoContent {
    padding-right: 0.57143rem;
    padding-left: 0.57143rem;
  }
}

@media screen and (min-width: 64em) {
  .paymentLogoContent:last-child:not(:first-child) {
    float: right;
  }
  .paymentLogoContent img {
    float: left;
    margin-left: 1.625rem;
  }
  .bsiContent {
    width: 16.66667%;
    float: left;
    padding-right: 0.35714rem;
    padding-left: 0.35714rem;
    margin-right: 6rem;
  }
}

@media screen and (min-width: 64em) and (min-width: 48em) {
  .bsiContent {
    padding-right: 0.57143rem;
    padding-left: 0.57143rem;
  }
}

@media screen and (min-width: 64em) and (min-width: 64em) {
  .bsiContent {
    padding-right: 0.57143rem;
    padding-left: 0.57143rem;
  }
}

@media screen and (min-width: 64em) {
  .bsiContent:last-child:not(:first-child) {
    float: right;
  }
  .trustPilotContent {
    width: 25%;
    float: left;
    padding-right: 0.35714rem;
    padding-left: 0.35714rem;
  }
}

@media screen and (min-width: 64em) and (min-width: 48em) {
  .trustPilotContent {
    padding-right: 0.57143rem;
    padding-left: 0.57143rem;
  }
}

@media screen and (min-width: 64em) and (min-width: 64em) {
  .trustPilotContent {
    padding-right: 0.57143rem;
    padding-left: 0.57143rem;
  }
}

@media screen and (min-width: 64em) {
  .trustPilotContent:last-child:not(:first-child) {
    float: right;
  }
  .socialIconContent {
    width: 25%;
    float: left;
    padding-right: 0.35714rem;
    padding-left: 0.35714rem;
  }
}

@media screen and (min-width: 64em) and (min-width: 48em) {
  .socialIconContent {
    padding-right: 0.57143rem;
    padding-left: 0.57143rem;
  }
}

@media screen and (min-width: 64em) and (min-width: 64em) {
  .socialIconContent {
    padding-right: 0.57143rem;
    padding-left: 0.57143rem;
  }
}

@media screen and (min-width: 64em) {
  .socialIconContent:last-child:not(:first-child) {
    float: right;
  }
  .socialIconContent .socialIconContainer {
    float: left;
  }
}

/*Cart Icon*/
.shoppingCartIcon {
  width: 34px;
  height: 32px;
  display: inline-block;
  background: url("//static.rapidonline.com/css/sprites/4.7.1/sprite.sprite.png") -335px -10px no-repeat;
}

@media print, screen and (min-width: 64em) {
  .shoppingCartIcon {
    width: 49px;
    height: 45px;
    display: inline-block;
    background: url("//static.rapidonline.com/css/sprites/4.7.1/sprite.sprite.png") -276px -10px no-repeat;
  }
}

.shoppingCartIcon {
  position: relative;
  margin-right: 1.07143rem;
}

.shoppingCartIcon .badge {
  position: absolute;
  top: -8px;
  right: -8px;
  font-weight: bold;
  color: #0a0a0a;
  font-size: 0.78571rem;
  min-width: 2.2em;
}

/*End Cart Icon*/
/*Header Layout*/
.topHeaderContent, .mainHeaderContent {
  max-width: 92.85714rem;
  margin-right: auto;
  margin-left: auto;
  max-width: none;
  background: #0a0a0a;
  position: relative;
}

.topHeaderContent::before, .topHeaderContent::after, .mainHeaderContent::before, .mainHeaderContent::after {
  display: table;
  content: ' ';
}

.topHeaderContent::after, .mainHeaderContent::after {
  clear: both;
}

.topHeaderContent, .topHeaderContent a, .topHeaderContent input {
  line-height: 2rem;
  font-size: 1rem;
  margin: 0px;
}

.mainHeaderContent {
  padding-top: 1.28571rem;
}

.mainHeaderContent, .mainHeaderContent a {
  font-size: 1rem;
}

.mainNav, .mainNav a {
  font-size: 1rem;
}

.topHeaderContent .changeSite {
  width: 33.33333%;
  float: left;
  padding-right: 0.35714rem;
  padding-left: 0.35714rem;
}

@media print, screen and (min-width: 48em) {
  .topHeaderContent .changeSite {
    padding-right: 0.57143rem;
    padding-left: 0.57143rem;
  }
}

@media print, screen and (min-width: 64em) {
  .topHeaderContent .changeSite {
    padding-right: 0.57143rem;
    padding-left: 0.57143rem;
  }
}

.topHeaderContent .changeSite:last-child:not(:first-child) {
  float: right;
}

.topHeaderContent .topBasketOptions {
  width: 66.66667%;
  float: left;
  padding-right: 0.35714rem;
  padding-left: 0.35714rem;
}

@media print, screen and (min-width: 48em) {
  .topHeaderContent .topBasketOptions {
    padding-right: 0.57143rem;
    padding-left: 0.57143rem;
  }
}

@media print, screen and (min-width: 64em) {
  .topHeaderContent .topBasketOptions {
    padding-right: 0.57143rem;
    padding-left: 0.57143rem;
  }
}

.topHeaderContent .topBasketOptions:last-child:not(:first-child) {
  float: right;
}

.topHeaderContent .topBasketOptions .access-wrap {
  margin-right: 1em;
  display: inline-block;
}

@media print, screen and (min-width: 48em) {
  .topHeaderContent .topBasketOptions .access-wrap {
    position: relative;
  }
}

.topHeaderContent .topBasketOptions .access-wrap .access-toggle i {
  font-size: 1.2em;
}

.topHeaderContent .topBasketOptions .access-wrap .access-popup {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  position: absolute;
  width: 240px;
  height: 50px;
  background-color: #313131;
  z-index: 1;
  border-radius: 0 0 4px 4px;
  top: 28px;
  right: 50%;
}

@media screen and (max-width: 47.9375em) {
  .topHeaderContent .topBasketOptions .access-wrap .access-popup {
    -webkit-transform: translateX(50%);
            transform: translateX(50%);
  }
}

@media print, screen and (min-width: 48em) {
  .topHeaderContent .topBasketOptions .access-wrap .access-popup {
    right: calc(100% + 1em);
    top: 0;
  }
}

.topHeaderContent .topBasketOptions .access-wrap .access-popup label {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
}

.topHeaderContent .topBasketOptions .access-wrap .access-popup label .custom-checkbox {
  margin-right: .5em;
}

.topHeaderContent .thc_Section:last-child {
  text-align: right;
}

.topHeaderContent .thc_Section span {
  display: inline-block;
  text-decoration: none;
  color: #fefefe;
}

.topHeaderContent .thc_Section span > span {
  margin-left: 1em;
}

.topHeaderContent .thc_Section.right span {
  cursor: pointer;
}

.headerBasketContent {
  float: right;
}

.headerLoginContent {
  float: left;
  margin-right: 0.71429rem;
}

@media screen and (max-width: 63.9375em) {
  .headerLoginContent {
    float: right;
  }
}

.logoSection {
  width: 40%;
  float: left;
  padding-right: 0.35714rem;
  padding-left: 0.35714rem;
}

@media print, screen and (min-width: 48em) {
  .logoSection {
    padding-right: 0.57143rem;
    padding-left: 0.57143rem;
  }
}

@media print, screen and (min-width: 64em) {
  .logoSection {
    padding-right: 0.57143rem;
    padding-left: 0.57143rem;
  }
}

.logoSection:last-child:not(:first-child) {
  float: right;
}

.loginSection {
  width: 60%;
  float: left;
  padding-right: 0.35714rem;
  padding-left: 0.35714rem;
}

@media print, screen and (min-width: 48em) {
  .loginSection {
    padding-right: 0.57143rem;
    padding-left: 0.57143rem;
  }
}

@media print, screen and (min-width: 64em) {
  .loginSection {
    padding-right: 0.57143rem;
    padding-left: 0.57143rem;
  }
}

.loginSection:last-child:not(:first-child) {
  float: right;
}

.searchBarSection {
  width: 100%;
  float: left;
  padding-right: 0.35714rem;
  padding-left: 0.35714rem;
  margin-top: 1.42857rem;
  position: relative;
}

@media print, screen and (min-width: 48em) {
  .searchBarSection {
    padding-right: 0.57143rem;
    padding-left: 0.57143rem;
  }
}

@media print, screen and (min-width: 64em) {
  .searchBarSection {
    padding-right: 0.57143rem;
    padding-left: 0.57143rem;
  }
}

.searchBarSection:last-child:not(:first-child) {
  float: right;
}

.searchBarSection.tempFix {
  z-index: auto !important;
}

@media screen and (min-width: 64em) {
  .mainHeaderContent {
    padding-bottom: 1.28571rem;
  }
  .topHeaderContent .changeSite {
    width: 25%;
    float: left;
    padding-right: 0.35714rem;
    padding-left: 0.35714rem;
  }
}

@media screen and (min-width: 64em) and (min-width: 48em) {
  .topHeaderContent .changeSite {
    padding-right: 0.57143rem;
    padding-left: 0.57143rem;
  }
}

@media screen and (min-width: 64em) and (min-width: 64em) {
  .topHeaderContent .changeSite {
    padding-right: 0.57143rem;
    padding-left: 0.57143rem;
  }
}

@media screen and (min-width: 64em) {
  .topHeaderContent .changeSite:last-child:not(:first-child) {
    float: right;
  }
  .topHeaderContent .contactTop {
    width: 50%;
    float: left;
    padding-right: 0.35714rem;
    padding-left: 0.35714rem;
    text-align: center;
  }
}

@media screen and (min-width: 64em) and (min-width: 48em) {
  .topHeaderContent .contactTop {
    padding-right: 0.57143rem;
    padding-left: 0.57143rem;
  }
}

@media screen and (min-width: 64em) and (min-width: 64em) {
  .topHeaderContent .contactTop {
    padding-right: 0.57143rem;
    padding-left: 0.57143rem;
  }
}

@media screen and (min-width: 64em) {
  .topHeaderContent .contactTop:last-child:not(:first-child) {
    float: right;
  }
  .topHeaderContent .topBasketOptions {
    width: 25%;
    float: left;
    padding-right: 0.35714rem;
    padding-left: 0.35714rem;
  }
}

@media screen and (min-width: 64em) and (min-width: 48em) {
  .topHeaderContent .topBasketOptions {
    padding-right: 0.57143rem;
    padding-left: 0.57143rem;
  }
}

@media screen and (min-width: 64em) and (min-width: 64em) {
  .topHeaderContent .topBasketOptions {
    padding-right: 0.57143rem;
    padding-left: 0.57143rem;
  }
}

@media screen and (min-width: 64em) {
  .topHeaderContent .topBasketOptions:last-child:not(:first-child) {
    float: right;
  }
  .logoSection {
    width: 16.66667%;
    float: left;
    padding-right: 0.35714rem;
    padding-left: 0.35714rem;
  }
}

@media screen and (min-width: 64em) and (min-width: 48em) {
  .logoSection {
    padding-right: 0.57143rem;
    padding-left: 0.57143rem;
  }
}

@media screen and (min-width: 64em) and (min-width: 64em) {
  .logoSection {
    padding-right: 0.57143rem;
    padding-left: 0.57143rem;
  }
}

@media screen and (min-width: 64em) {
  .logoSection:last-child:not(:first-child) {
    float: right;
  }
  .searchBarSection {
    width: 50%;
    float: left;
    padding-right: 0.35714rem;
    padding-left: 0.35714rem;
    position: relative;
    left: -33.33333%;
    margin-top: 0px;
  }
}

@media screen and (min-width: 64em) and (min-width: 48em) {
  .searchBarSection {
    padding-right: 0.57143rem;
    padding-left: 0.57143rem;
  }
}

@media screen and (min-width: 64em) and (min-width: 64em) {
  .searchBarSection {
    padding-right: 0.57143rem;
    padding-left: 0.57143rem;
  }
}

@media screen and (min-width: 64em) {
  .searchBarSection:last-child:not(:first-child) {
    float: right;
  }
  .searchBarSection.tempFix {
    z-index: auto !important;
  }
  .loginSection {
    width: 33.33333%;
    float: left;
    padding-right: 0.35714rem;
    padding-left: 0.35714rem;
    position: relative;
    left: 50%;
  }
}

@media screen and (min-width: 64em) and (min-width: 48em) {
  .loginSection {
    padding-right: 0.57143rem;
    padding-left: 0.57143rem;
  }
}

@media screen and (min-width: 64em) and (min-width: 64em) {
  .loginSection {
    padding-right: 0.57143rem;
    padding-left: 0.57143rem;
  }
}

@media screen and (min-width: 64em) {
  .loginSection:last-child:not(:first-child) {
    float: right;
  }
}

@media screen and (min-width: 75em) {
  .logoSection {
    width: 12.5%;
    float: left;
    padding-right: 0.35714rem;
    padding-left: 0.35714rem;
  }
}

@media screen and (min-width: 75em) and (min-width: 48em) {
  .logoSection {
    padding-right: 0.57143rem;
    padding-left: 0.57143rem;
  }
}

@media screen and (min-width: 75em) and (min-width: 64em) {
  .logoSection {
    padding-right: 0.57143rem;
    padding-left: 0.57143rem;
  }
}

@media screen and (min-width: 75em) {
  .logoSection:last-child:not(:first-child) {
    float: right;
  }
  .searchBarSection {
    width: 58.75%;
    float: left;
    padding-right: 0.35714rem;
    padding-left: 0.35714rem;
    position: relative;
    left: -28.75%;
  }
}

@media screen and (min-width: 75em) and (min-width: 48em) {
  .searchBarSection {
    padding-right: 0.57143rem;
    padding-left: 0.57143rem;
  }
}

@media screen and (min-width: 75em) and (min-width: 64em) {
  .searchBarSection {
    padding-right: 0.57143rem;
    padding-left: 0.57143rem;
  }
}

@media screen and (min-width: 75em) {
  .searchBarSection:last-child:not(:first-child) {
    float: right;
  }
  .loginSection {
    width: 28.5%;
    float: left;
    padding-right: 0.35714rem;
    padding-left: 0.35714rem;
    position: relative;
    left: 58.75%;
  }
}

@media screen and (min-width: 75em) and (min-width: 48em) {
  .loginSection {
    padding-right: 0.57143rem;
    padding-left: 0.57143rem;
  }
}

@media screen and (min-width: 75em) and (min-width: 64em) {
  .loginSection {
    padding-right: 0.57143rem;
    padding-left: 0.57143rem;
  }
}

@media screen and (min-width: 75em) {
  .loginSection:last-child:not(:first-child) {
    float: right;
  }
}

@media screen and (min-width: 90em) {
  .logoSection {
    width: 15.55556%;
    float: left;
    padding-right: 0.35714rem;
    padding-left: 0.35714rem;
  }
}

@media screen and (min-width: 90em) and (min-width: 48em) {
  .logoSection {
    padding-right: 0.57143rem;
    padding-left: 0.57143rem;
  }
}

@media screen and (min-width: 90em) and (min-width: 64em) {
  .logoSection {
    padding-right: 0.57143rem;
    padding-left: 0.57143rem;
  }
}

@media screen and (min-width: 90em) {
  .logoSection:last-child:not(:first-child) {
    float: right;
  }
  .searchBarSection {
    width: 60%;
    float: left;
    padding-right: 0.35714rem;
    padding-left: 0.35714rem;
    position: relative;
    left: -28.33333%;
  }
}

@media screen and (min-width: 90em) and (min-width: 48em) {
  .searchBarSection {
    padding-right: 0.57143rem;
    padding-left: 0.57143rem;
  }
}

@media screen and (min-width: 90em) and (min-width: 64em) {
  .searchBarSection {
    padding-right: 0.57143rem;
    padding-left: 0.57143rem;
  }
}

@media screen and (min-width: 90em) {
  .searchBarSection:last-child:not(:first-child) {
    float: right;
  }
  .loginSection {
    width: 24.44444%;
    float: left;
    padding-right: 0.35714rem;
    padding-left: 0.35714rem;
    position: relative;
    left: 58.33333%;
  }
}

@media screen and (min-width: 90em) and (min-width: 48em) {
  .loginSection {
    padding-right: 0.57143rem;
    padding-left: 0.57143rem;
  }
}

@media screen and (min-width: 90em) and (min-width: 64em) {
  .loginSection {
    padding-right: 0.57143rem;
    padding-left: 0.57143rem;
  }
}

@media screen and (min-width: 90em) {
  .loginSection:last-child:not(:first-child) {
    float: right;
  }
}

.headerWrapper {
  position: relative;
}

.headerWrapper, .headerWrapper a, .headerWrapper label {
  color: #fefefe;
}

.topHeaderContent {
  border-bottom: 1px solid #313131;
}

/*END Header Layout*/
/*SiteType Tabs*/
.siteSelectTabs {
  cursor: pointer;
  -webkit-box-shadow: inset 0 0 10px #000;
  box-shadow: inset 0 0 10px #000;
}

.siteSelectTabs span.activeST {
  background-color: #F9A519;
}

.siteSelectTabs span.activeST a {
  color: #0a0a0a;
  font-weight: bold;
}

.siteSelectTabs span {
  padding: 0 5px;
  display: inline-block;
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
}

@media screen and (max-width: 63.9375em) {
  .siteSelectTabs span:last-child {
    padding-left: 0px;
  }
  .siteSelectTabs span:last-child span {
    padding: 0px;
  }
}

/*END SiteType Tabs*/
.basketHeaderTotal {
  line-height: 2.85714rem;
  float: left;
}

/*My Account/Login Menu*/
@media screen and (max-width: 63.9375em) {
  a.myAccountLink {
    padding-left: 0.28571rem !important;
  }
}

a.myAccountLink:hover, .myAccountLink a:hover {
  text-decoration: underline;
  -webkit-text-decoration-color: white;
          text-decoration-color: white;
}

a.myAccountLink, .myAccountLink a, .dropdown.menu a.myAccountLink {
  font-weight: bold;
  line-height: 2.85714rem;
  font-size: 1.14286rem;
  padding: 0 0.45rem;
}

.dropdown.menu.myAccountMenu > li.is-dropdown-submenu-parent > a::after {
  border-color: #fefefe transparent transparent;
}

.menu.myAccountMenu .is-active > a {
  color: #fefefe;
}

.dropdown.menu.myAccountMenu > li .menu {
  border: 1px solid #dddddd;
  z-index: 99999;
}

.dropdown.menu.myAccountMenu > li .menu a {
  color: #0a0a0a;
}

.dropdown.menu.myAccountMenu > li .menu a:hover {
  background-color: #F9A519;
}

/*END My Account/Login Menu*/
.mainNav {
  background: #313131;
  z-index: 10008;
  position: relative;
}

/*Chat Link*/
span.chatLink, span.chatLink span {
  cursor: pointer;
}

#site-domain-header {
  background-color: #2F9F46;
}

#site-domain-header .sticky {
  width: 100%;
  z-index: 99999999;
}

#site-domain-header .sticky .site-domain {
  width: 90%;
  margin: 0 auto;
  background-color: #2F9F46;
  padding: 5px;
  text-align: center;
  border-radius: 0 0 5px 5px;
  -webkit-transition: -webkit-box-shadow .1s ease-in-out;
  transition: -webkit-box-shadow .1s ease-in-out;
  transition: box-shadow .1s ease-in-out;
  transition: box-shadow .1s ease-in-out, -webkit-box-shadow .1s ease-in-out;
}

#site-domain-header .sticky .site-domain.stick {
  -webkit-box-shadow: 0px 1px 5px 0px rgba(0, 0, 0, 0.4);
          box-shadow: 0px 1px 5px 0px rgba(0, 0, 0, 0.4);
}

@media print, screen and (min-width: 64em) {
  #site-domain-header .sticky .site-domain {
    width: 33.33%;
  }
}

#site-domain-header .sticky h2 {
  color: white;
  font-weight: normal;
  margin: 0;
}

#site-domain-header .sticky h2 a {
  text-decoration: underline;
  color: white;
}

.live-chat-wrap {
  position: fixed;
  bottom: 1.5em;
  right: 1.5em;
  z-index: 1;
  -webkit-transition: all ease-in-out .2s;
  transition: all ease-in-out .2s;
}

.live-chat-wrap:hover {
  -webkit-transform: scale(1.1);
          transform: scale(1.1);
}

.live-chat-wrap .live-chat {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  cursor: pointer;
  border-radius: 2.5em;
}

.live-chat-wrap .live-chat .bubble-text {
  display: none;
}

@media print, screen and (min-width: 48em) {
  .live-chat-wrap .live-chat {
    -webkit-animation: wobble-hor-bottom 8s both 2;
            animation: wobble-hor-bottom 8s both 2;
    -webkit-animation-delay: 8s;
            animation-delay: 8s;
  }
  .live-chat-wrap .live-chat .bubble-text {
    background-color: #d68806;
    border-radius: 2em;
    display: -webkit-inline-box;
    display: -ms-inline-flexbox;
    display: inline-flex;
    -webkit-box-pack: center;
        -ms-flex-pack: center;
            justify-content: center;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
    width: 10em;
    position: relative;
    color: white;
    -webkit-animation: flip-in-ver-right 0.5s cubic-bezier(0.25, 0.46, 0.45, 0.94) both;
            animation: flip-in-ver-right 0.5s cubic-bezier(0.25, 0.46, 0.45, 0.94) both;
    -webkit-animation-delay: 2s;
            animation-delay: 2s;
    -webkit-transform-origin: right;
            transform-origin: right;
  }
  .live-chat-wrap .live-chat .bubble-text:after {
    background-color: #d68806;
    position: absolute;
    top: 0;
    bottom: 0;
    right: -2rem;
    width: 4rem;
    content: '';
    z-index: -1;
  }
}

.live-chat-wrap .live-chat .bubble {
  background: #F9A519;
  border-radius: 2em;
  height: 4em;
  width: 4em;
  display: -webkit-inline-box;
  display: -ms-inline-flexbox;
  display: inline-flex;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  position: relative;
  padding: 1em;
  -webkit-box-shadow: 0 1px 4px 0 rgba(0, 0, 0, 0.4);
          box-shadow: 0 1px 4px 0 rgba(0, 0, 0, 0.4);
  -webkit-animation: heartbeat 4s ease-in-out infinite both;
          animation: heartbeat 4s ease-in-out infinite both;
  -webkit-animation-delay: 2s;
          animation-delay: 2s;
}

.live-chat-wrap .live-chat .bubble i {
  font-size: 2em;
  color: white;
}

@-webkit-keyframes wobble-hor-bottom {
  0%, 20% {
    -webkit-transform: translateX(0%);
            transform: translateX(0%);
    -webkit-transform-origin: 50% 50%;
            transform-origin: 50% 50%;
  }
  3% {
    -webkit-transform: translateX(-15px) rotate(-3deg);
            transform: translateX(-15px) rotate(-3deg);
  }
  6% {
    -webkit-transform: translateX(7px) rotate(3deg);
            transform: translateX(7px) rotate(3deg);
  }
  9% {
    -webkit-transform: translateX(-7px) rotate(-1.8deg);
            transform: translateX(-7px) rotate(-1.8deg);
  }
  12% {
    -webkit-transform: translateX(4px) rotate(1.2deg);
            transform: translateX(4px) rotate(1.2deg);
  }
  15% {
    -webkit-transform: translateX(-3px) rotate(-0.6deg);
            transform: translateX(-3px) rotate(-0.6deg);
  }
  20% {
    -webkit-transform: translateX(0) rotate(0);
            transform: translateX(0) rotate(0);
  }
  100% {
    -webkit-transform: translateX(0) rotate(0);
            transform: translateX(0) rotate(0);
  }
}

@keyframes wobble-hor-bottom {
  0%, 20% {
    -webkit-transform: translateX(0%);
            transform: translateX(0%);
    -webkit-transform-origin: 50% 50%;
            transform-origin: 50% 50%;
  }
  3% {
    -webkit-transform: translateX(-15px) rotate(-3deg);
            transform: translateX(-15px) rotate(-3deg);
  }
  6% {
    -webkit-transform: translateX(7px) rotate(3deg);
            transform: translateX(7px) rotate(3deg);
  }
  9% {
    -webkit-transform: translateX(-7px) rotate(-1.8deg);
            transform: translateX(-7px) rotate(-1.8deg);
  }
  12% {
    -webkit-transform: translateX(4px) rotate(1.2deg);
            transform: translateX(4px) rotate(1.2deg);
  }
  15% {
    -webkit-transform: translateX(-3px) rotate(-0.6deg);
            transform: translateX(-3px) rotate(-0.6deg);
  }
  20% {
    -webkit-transform: translateX(0) rotate(0);
            transform: translateX(0) rotate(0);
  }
  100% {
    -webkit-transform: translateX(0) rotate(0);
            transform: translateX(0) rotate(0);
  }
}

@-webkit-keyframes flip-in-ver-right {
  0% {
    -webkit-transform: rotateY(-80deg);
            transform: rotateY(-80deg);
    opacity: 0;
  }
  100% {
    -webkit-transform: rotateY(0);
            transform: rotateY(0);
    opacity: 1;
  }
}

@keyframes flip-in-ver-right {
  0% {
    -webkit-transform: rotateY(-80deg);
            transform: rotateY(-80deg);
    opacity: 0;
  }
  100% {
    -webkit-transform: rotateY(0);
            transform: rotateY(0);
    opacity: 1;
  }
}

@-webkit-keyframes heartbeat {
  from {
    -webkit-transform: scale(1);
            transform: scale(1);
    -webkit-transform-origin: center center;
            transform-origin: center center;
    -webkit-animation-timing-function: ease-out;
            animation-timing-function: ease-out;
  }
  6% {
    -webkit-transform: scale(1.09);
            transform: scale(1.09);
    -webkit-animation-timing-function: ease-in;
            animation-timing-function: ease-in;
  }
  12% {
    -webkit-transform: scale(1.02);
            transform: scale(1.02);
    -webkit-animation-timing-function: ease-out;
            animation-timing-function: ease-out;
  }
  18% {
    -webkit-transform: scale(1.13);
            transform: scale(1.13);
    -webkit-animation-timing-function: ease-in;
            animation-timing-function: ease-in;
  }
  24% {
    -webkit-transform: scale(1);
            transform: scale(1);
    -webkit-animation-timing-function: ease-out;
            animation-timing-function: ease-out;
  }
  100% {
    -webkit-transform: scale(1);
            transform: scale(1);
  }
}

@keyframes heartbeat {
  from {
    -webkit-transform: scale(1);
            transform: scale(1);
    -webkit-transform-origin: center center;
            transform-origin: center center;
    -webkit-animation-timing-function: ease-out;
            animation-timing-function: ease-out;
  }
  6% {
    -webkit-transform: scale(1.09);
            transform: scale(1.09);
    -webkit-animation-timing-function: ease-in;
            animation-timing-function: ease-in;
  }
  12% {
    -webkit-transform: scale(1.02);
            transform: scale(1.02);
    -webkit-animation-timing-function: ease-out;
            animation-timing-function: ease-out;
  }
  18% {
    -webkit-transform: scale(1.13);
            transform: scale(1.13);
    -webkit-animation-timing-function: ease-in;
            animation-timing-function: ease-in;
  }
  24% {
    -webkit-transform: scale(1);
            transform: scale(1);
    -webkit-animation-timing-function: ease-out;
            animation-timing-function: ease-out;
  }
  100% {
    -webkit-transform: scale(1);
            transform: scale(1);
  }
}

#suggestLayer {
  height: 1px;
  z-index: 99999;
  background: transparent;
  position: absolute;
  margin-top: -10px;
  left: 0;
  right: 0;
  width: 100%;
  float: left;
  padding-right: 0.35714rem;
  padding-left: 0.35714rem;
}

@media print, screen and (min-width: 48em) {
  #suggestLayer {
    padding-right: 0.57143rem;
    padding-left: 0.57143rem;
  }
}

@media print, screen and (min-width: 64em) {
  #suggestLayer {
    padding-right: 0.57143rem;
    padding-left: 0.57143rem;
  }
}

#suggestLayer:last-child:not(:first-child) {
  float: right;
}

ul.suggestLayerBlockText {
  margin: 0.71429rem;
}

ul.suggestLayerBlock, div.suggestLayerBlock {
  list-style: none;
  color: #0a0a0a;
  background-color: #fefefe;
  cursor: pointer;
  border-bottom: 1px solid rgba(0, 0, 0, 0.2);
  -webkit-box-shadow: 0 1px 5px rgba(0, 0, 0, 0.15);
          box-shadow: 0 1px 5px rgba(0, 0, 0, 0.15);
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
}

ul.suggestLayerBlock li, ul.suggestLayerBlockText li {
  list-style: none;
  display: block;
}

li.suggestHeader {
  font-weight: bold;
  border-bottom: 1px solid #dddddd;
  padding: 3px 10px 3px 5px;
}

span.suggestTextQuery {
  display: block;
  padding: 0.35714rem;
  margin: 0.21429rem;
}

li.suggestRow :hover {
  background-color: #dddddd;
}

.highlight {
  background: #E8E5E5;
}

.r_MyAccount_MyAccount_Section {
  height: 150px;
}

.r_MyAccount_MyAccount_Section a {
  display: block;
}

.account-info-box {
  border: dotted 2px #d0cdcd;
  padding: 5px 15px 5px 15px;
  border-radius: 7px;
  background-color: InfoBackground;
  margin-top: 5px;
}

.flex-account-box {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  border: solid 1px #d0cdcd;
  padding: 5px;
  background-color: #f2f0f0;
  color: #494848 !important;
  min-height: 90px;
  padding-top: 10px;
}

.flex-account-box:hover {
  background-color: #313131;
  color: #fff !important;
  text-decoration: none;
  border: solid 1px #d0cdcd;
  cursor: pointer;
}

.flex-account-box-child {
  -webkit-box-flex: 6;
      -ms-flex: 6;
          flex: 6;
  margin-right: 20px;
}

.flex-account-box-description {
  display: block;
  font-size: 90%;
}

@media only screen and (max-width: 600px) {
  .flex-account-box-description {
    display: none;
  }
}

.flex-account-box-inflight {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  border: solid 1px #d0cdcd;
  padding: 5px;
  background-color: #baefd8;
  color: #494848 !important;
}

.flex-account-box-inflight:hover {
  background-color: #313131;
  color: #fff !important;
  text-decoration: none;
  border: solid 1px #d0cdcd;
  cursor: pointer;
}

.grid-container {
  display: grid;
  grid-template-columns: 1fr 1fr;
  grid-gap: 10px;
}

.fa-stack[data-count]:after {
  position: absolute;
  right: 25%;
  top: 5%;
  content: attr(data-count);
  font-size: 35%;
  padding: .99em;
  border-radius: 999px;
  line-height: .99em;
  color: white;
  background: red;
  text-align: center;
  min-width: 3em;
  font-weight: bold;
}

h1.mainHeading {
  border-bottom: 1px solid #dddddd;
  margin-bottom: 0.71429rem;
}

table.expandTable tbody tr.detailRow:nth-child(4n-1) {
  border-bottom: 0;
  background-color: #e8e5e5;
}

.adminTableLink {
  color: #1153AD;
  text-decoration: underline;
  -webkit-text-decoration-color: #1153AD;
          text-decoration-color: #1153AD;
  cursor: pointer;
}

.expandedRow {
  border-bottom: 0;
  /*background-color: $light-gray;*/
}

.hiddenTableContent {
  padding: 0.35714rem;
  padding-top: 0.71429rem;
  border: 1px solid #e3e3e3;
  background: #fefefe;
  -webkit-box-shadow: inset 0 1px 1px rgba(0, 0, 0, 0.05);
  box-shadow: inset 0 1px 1px rgba(0, 0, 0, 0.05);
}

.graph-wrap {
  position: relative;
  padding-bottom: calc(10 / 16 * 100%);
}

.graph-wrap .graph {
  position: absolute;
  width: 100%;
  height: 100%;
  left: 0;
  right: 0;
  top: 0;
  bottom: 0;
}

@-webkit-keyframes chartjs-render-animation {
  from {
    opacity: .99;
  }
  to {
    opacity: 1;
  }
}

@keyframes chartjs-render-animation {
  from {
    opacity: .99;
  }
  to {
    opacity: 1;
  }
}

.chartjs-render-monitor {
  -webkit-animation: chartjs-render-animation 1ms;
          animation: chartjs-render-animation 1ms;
}

.chartjs-size-monitor, .chartjs-size-monitor-expand, .chartjs-size-monitor-shrink {
  position: absolute;
  direction: ltr;
  left: 0;
  top: 0;
  right: 0;
  bottom: 0;
  overflow: hidden;
  pointer-events: none;
  visibility: hidden;
  z-index: -1;
}

.chartjs-size-monitor-expand > div {
  position: absolute;
  width: 1000000px;
  height: 1000000px;
  left: 0;
  top: 0;
}

.chartjs-size-monitor-shrink > div {
  position: absolute;
  width: 200%;
  height: 200%;
  left: 0;
  top: 0;
}

.orderSummaryTable {
  display: table;
}

.orderSummaryTable tr {
  display: table-row !important;
}

.orderSummaryTable td {
  display: table-cell !important;
}

.orderSummaryTable tr > td:nth-of-type(2) {
  background-color: #e8e5e5;
  width: 8.92857rem;
  text-align: center;
}

.orderSummaryTable tr > td:nth-of-type(1) {
  font-weight: bold;
  padding-right: 0.35714rem;
  text-align: right;
  width: 7.85714rem;
}

.totalPriceCol {
  background: #e8e5e5;
}

@media screen and (max-width: 63.9375em) {
  .totalPriceCol {
    display: none !important;
  }
}

tfoot .totalPriceCol {
  font-size: 1.28571rem;
}

.promo-accordion-wrap {
  border-radius: 5px;
  overflow: hidden;
  -webkit-box-shadow: 0px 1px 5px 0px rgba(0, 0, 0, 0.4);
          box-shadow: 0px 1px 5px 0px rgba(0, 0, 0, 0.4);
}

[class|="promo-accordion-item"] {
  padding: 1rem;
  background-color: #e8e5e5;
  color: #313131;
  font-size: 1.3em;
  cursor: pointer;
  -webkit-transition: background-color .1s ease-in-out;
  transition: background-color .1s ease-in-out;
}

[class|="promo-accordion-item"].open, [class|="promo-accordion-item"]:hover {
  background-color: #e1dddd;
}

[class|="promo-accordion-item"]:before {
  content: "\f054";
  font-family: FontAwesome;
  margin-right: 1em;
}

[class|="promo-accordion-item"].open:before {
  content: "\f078";
}

[class|="promo-accordion-item"].disabled {
  color: rgba(49, 49, 49, 0.4);
  cursor: not-allowed;
}

[class|="promo-accordion-item"].disabled:hover {
  background-color: #e8e5e5 !important;
}

[class|="promo-content"] {
  max-height: 100vh;
  -webkit-transition: max-height .5s ease-in-out;
  transition: max-height .5s ease-in-out;
}

[class|="promo-content"].closed {
  max-height: 0;
  -webkit-transition: none;
  transition: none;
  overflow: hidden;
}

[class|="promo-content"] .promo-options {
  padding: 1em;
}

.button-group {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  margin-bottom: 0;
  margin-top: 1rem;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
}

.button-group.save .button {
  margin-left: auto;
}

.button-group .promo-info_persistent {
  margin-left: auto;
  margin-right: 10px;
  padding: 6px 10px;
}

.button-group .button {
  margin-right: 10px;
}

.button-group .button:last-child {
  margin-right: 0;
}

.button-group-left {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  margin-bottom: 10px;
}

.button-group-left .button {
  margin: 0 10px 0 0;
}

.button-group-left .nb {
  margin-right: auto;
}

.button-group-left .nb .promo-info_persistent {
  padding: 5px 10px;
}

.promo-info {
  position: relative;
}

.promo-info.hover .promo-info_box, .promo-info.focus .promo-info_box {
  opacity: 1;
  visibility: visible;
}

.promo-info .promo-info_box {
  display: block;
  border-radius: 3px;
  background-color: #2F9F46;
  color: #fefefe;
  position: absolute;
  right: 0;
  bottom: 100%;
  height: auto;
  padding: 10px;
  font-size: .9rem;
  text-align: left;
  -webkit-transition: ease-in-out .3s all;
  transition: ease-in-out .3s all;
  opacity: 0;
  visibility: hidden;
  -webkit-box-shadow: 0px 1px 5px 0px rgba(0, 0, 0, 0.4);
          box-shadow: 0px 1px 5px 0px rgba(0, 0, 0, 0.4);
  z-index: 1;
  pointer-events: none;
  -webkit-user-select: none;
     -moz-user-select: none;
      -ms-user-select: none;
          user-select: none;
}

.promo-info .promo-info_box:hover {
  cursor: default;
}

.promo-info_persistent {
  font-style: italic;
  display: block;
  border-radius: 3px;
  background-color: #575757;
  color: #fefefe;
  font-size: .9rem;
  padding: 10px;
  -webkit-box-shadow: 0px 1px 5px 0px rgba(0, 0, 0, 0.4);
          box-shadow: 0px 1px 5px 0px rgba(0, 0, 0, 0.4);
  pointer-events: none;
  -webkit-user-select: none;
     -moz-user-select: none;
      -ms-user-select: none;
          user-select: none;
}

.promo-info_persistent.dark {
  background-color: #313131;
}

.switch-toggle {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
}

.switch-toggle .switch {
  display: inline-block;
  margin-left: auto;
  height: 34px;
  position: relative;
  width: 60px;
  cursor: pointer;
}

.switch-toggle .switch.disabled {
  cursor: not-allowed;
}

.switch-toggle .switch.disabled .slider-toggle:before {
  background-color: #e1dddd;
}

.switch-toggle .switch input {
  display: none;
}

.switch-toggle .switch input:checked + .slider-toggle:before {
  -webkit-transform: translateX(26px);
          transform: translateX(26px);
}

.switch-toggle .switch input:checked + .slider-toggle:after {
  content: "%";
  left: calc(26px / 2);
  -webkit-transform: translateX(26px);
          transform: translateX(26px);
}

.switch-toggle .switch .slider-toggle {
  background-color: #e1dddd;
  bottom: 0;
  left: 0;
  position: absolute;
  right: 0;
  top: 0;
  -webkit-transition: .4s;
  transition: .4s;
}

.switch-toggle .switch .slider-toggle.round {
  border-radius: 34px;
}

.switch-toggle .switch .slider-toggle.round:before {
  border-radius: 50%;
}

.switch-toggle .switch .slider-toggle:before {
  background-color: #fff;
  bottom: 4px;
  content: "";
  height: 26px;
  left: 4px;
  position: absolute;
  -webkit-transition: .4s;
  transition: .4s;
  width: 26px;
}

.switch-toggle .switch .slider-toggle:after {
  content: "£";
  position: absolute;
  left: calc(22px / 2);
  top: 5px;
  -webkit-transition: .4s;
  transition: .4s;
}

.skuTop {
  margin-top: 1rem;
  margin-bottom: 1rem;
  position: relative;
}

.prodKeyDetails {
  color: #0a0a0a;
  display: block;
  padding: 0.35714rem 0;
}

.prodKeyDetails a {
  color: #0a0a0a;
}

.prodBrandLogo {
  float: right;
  margin-right: 40%;
}

.orderCode {
  color: #0a0a0a;
}

.orderCode span {
  display: inline-block;
}

.orderCode h2 {
  display: inline-block;
  font-size: 1rem;
}

.orderCode a {
  color: #0a0a0a;
}

.orderCode a:hover {
  text-decoration: underline;
  -webkit-text-decoration-color: #0a0a0a;
          text-decoration-color: #0a0a0a;
}

.complianceList {
  list-style: none;
  margin-left: 0;
  margin-top: 0.35714rem;
  color: #0a0a0a;
}

.complianceList li {
  display: block;
  padding: 0.35714rem 0;
}

.complianceList li a {
  color: #0a0a0a;
}

h1.prodTitle {
  margin-top: 0.65rem;
}

.reportErrorLink {
  display: block;
  text-align: right;
  color: black;
  margin-top: -12px;
  padding-bottom: 4px;
}

@media screen and (max-width: 63.9375em) {
  .reportErrorLink {
    margin-bottom: 0.92857rem;
    text-align: left;
    display: inline-block;
  }
}

.reportErrorLink:hover {
  text-decoration: underline;
  -webkit-text-decoration-color: black;
          text-decoration-color: black;
  color: #0a0a0a;
}

.stockMessage {
  font-weight: bold;
  text-align: left;
  font-size: 1rem;
  line-height: 1.42857rem;
}

.product-moq-text {
  display: block;
  text-align: right;
}

@media screen and (min-width: 40em) {
  .skuStickToBottom {
    position: absolute;
    bottom: 5px;
    width: 97%;
  }
}

.stockNotification {
  text-align: center;
}

.dataSheetItem {
  float: left;
  padding: 5px;
  margin: 10px;
}

.tabs-panel {
  overflow: auto;
}

.skuTabs {
  background: #f7f6f6;
}

.skuTabs .tabs-title {
  border-right: 1px solid #e8e5e5;
}

.skuTabs .tabs-title:last-child {
  border-right: none;
}

.skuTabs .tabs-title:hover {
  background: #e8e5e5;
}

.skuTabs .tabs-title a {
  padding: 1.25rem 0.85rem;
  font-size: 1.1rem;
  color: #0a0a0a;
}

.skuTabs .tabs-title a:hover {
  background: #e8e5e5;
}

.skuTabs .tabs-title.is-active a {
  color: #0a0a0a;
  font-weight: bold;
}

.skuTabs .accordion-title {
  color: #0a0a0a;
  font-size: 1.14286rem;
}

.skuTabs .accordion-title:focus, .skuTabs .footerContainer .accordion-title:hover {
  background-color: #fefefe;
}

.skuTabs .accordion-content {
  overflow: auto;
}

.skuTabs .accordion-item.is-active .accordion-title {
  color: #0a0a0a;
  font-weight: bold;
}

.skuTabs iframe {
  width: 50%;
  margin: 0 auto;
}

@media screen and (max-width: 47.9375em) {
  .skuTabs iframe {
    width: 95%;
  }
}

.viewFullRange {
  font-size: 1.07143rem;
}

.viewFullRange:hover {
  text-decoration: underline;
}

.skuTech th {
  background: #f7f6f6;
  font-weight: normal;
  width: 33%;
}

.product-attributes-table {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  width: 100%;
  margin: 1rem 0;
}

.product-attributes-table tbody {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  width: 100%;
}

.product-attributes-table tbody tr {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  width: 100%;
}

.product-attributes-table tbody tr th {
  width: 40%;
  text-align: left;
  background-color: #e8e5e5;
}

@media screen and (min-width: 64em) {
  .product-attributes-table.stagger-table tbody tr {
    width: 50%;
  }
}

.stockMessage {
  -webkit-box-align: start;
      -ms-flex-align: start;
          align-items: flex-start;
}

.smallStockMessage {
  -webkit-box-align: start;
      -ms-flex-align: start;
          align-items: flex-start;
}

.smallStockMessage .stock-message-info_box {
  /*bottom: 100%;
        top: auto;*/
}

.stockMessage,
.smallStockMessage,
.stock-message-basket {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: end;
      -ms-flex-pack: end;
          justify-content: flex-end;
  position: relative;
}

.stockMessage span,
.smallStockMessage span,
.stock-message-basket span {
  display: block;
}

.stockMessage span:nth-child(2),
.smallStockMessage span:nth-child(2),
.stock-message-basket span:nth-child(2) {
  font-weight: normal;
}

.stockMessage .stock-message-text,
.smallStockMessage .stock-message-text,
.stock-message-basket .stock-message-text {
  text-align: right;
}

.stockMessage .stock-message-text a,
.smallStockMessage .stock-message-text a,
.stock-message-basket .stock-message-text a {
  color: inherit;
  text-decoration: underline;
}

.stockMessage .stock-message-info,
.smallStockMessage .stock-message-info,
.stock-message-basket .stock-message-info {
  color: #79796A;
  width: 19px;
  height: 19px;
  font-size: 18px;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  cursor: pointer;
  display: -webkit-inline-box;
  display: -ms-inline-flexbox;
  display: inline-flex;
  font-weight: 400;
  margin-right: .2em;
  margin-top: .2em;
}

@media print, screen and (min-width: 64em) {
  .stockMessage .stock-message-info,
  .smallStockMessage .stock-message-info,
  .stock-message-basket .stock-message-info {
    position: relative;
  }
}

.stockMessage .stock-message-info_box,
.smallStockMessage .stock-message-info_box,
.stock-message-basket .stock-message-info_box {
  display: block;
  border-radius: 3px;
  background-color: #313131;
  color: #fefefe;
  position: absolute;
  width: 300px;
  height: auto;
  padding: 10px;
  font-size: .65em;
  text-align: left;
  -webkit-transition: ease-in-out .3s all;
  transition: ease-in-out .3s all;
  opacity: 0;
  visibility: hidden;
  -webkit-box-shadow: 0 2px 8px 0px rgba(0, 0, 0, 0.4);
          box-shadow: 0 2px 8px 0px rgba(0, 0, 0, 0.4);
  z-index: 1;
  top: calc(100% + .2em);
  bottom: auto;
  right: 0;
}

@media print, screen and (min-width: 48em) {
  .stockMessage .stock-message-info_box,
  .smallStockMessage .stock-message-info_box,
  .stock-message-basket .stock-message-info_box {
    right: 0;
    top: calc(100% + .2em);
    bottom: auto;
  }
}

@media print, screen and (min-width: 64em) {
  .stockMessage .stock-message-info_box,
  .smallStockMessage .stock-message-info_box,
  .stock-message-basket .stock-message-info_box {
    right: calc(100% + .2em);
    top: 0;
    bottom: auto;
  }
}

.stockMessage .stock-message-info_box.active,
.smallStockMessage .stock-message-info_box.active,
.stock-message-basket .stock-message-info_box.active {
  opacity: 1;
  visibility: visible;
}

.stockMessage .stock-message-info_box:hover,
.smallStockMessage .stock-message-info_box:hover,
.stock-message-basket .stock-message-info_box:hover {
  cursor: default;
}

@media print, screen and (min-width: 64em) {
  .stock-message-search .stock-message-info {
    position: relative;
  }
}

.stock-message-basket {
  -webkit-box-align: start;
      -ms-flex-align: start;
          align-items: flex-start;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
}

@media print, screen and (min-width: 48em) {
  .stock-message-basket {
    -webkit-box-pack: end;
        -ms-flex-pack: end;
            justify-content: flex-end;
  }
}

.stock-message-basket .stock-message-text {
  text-align: left;
  margin-bottom: 2em;
}

@media print, screen and (min-width: 48em) {
  .stock-message-basket .stock-message-text {
    margin-bottom: 0;
  }
}

.stock-message-basket .stock-message-info {
  margin-left: 0;
}

.stock-message-basket .stock-message-info_box {
  top: calc(100% + .2em - 2em);
  bottom: auto;
  left: 0;
  right: auto;
}

@media print, screen and (min-width: 48em) {
  .stock-message-basket .stock-message-info_box {
    top: auto;
    bottom: calc(100% + .2em);
    left: 0;
    right: auto;
    -webkit-transform: translateX(-50%);
            transform: translateX(-50%);
  }
}

@media print, screen and (min-width: 64em) {
  .stock-message-basket .stock-message-info_box {
    -webkit-transform: none;
            transform: none;
  }
}

@media print, screen and (min-width: 64em) {
  .stock-message-merge .stock-message-info_box {
    -webkit-transform: translateX(-50%);
            transform: translateX(-50%);
  }
}

.stock-message-table .stock-message-info {
  margin-right: 0;
  margin-left: .2em;
}

@media print, screen and (min-width: 64em) {
  .stock-message-table .stock-message-info {
    position: relative;
  }
}

.stock-message-table .stock-message-info_box {
  right: 0;
  left: auto;
  top: calc(100% + .2em);
  bottom: auto;
}

@media print, screen and (min-width: 64em) {
  .stock-message-table .stock-message-info_box {
    right: auto;
    left: calc(100% + .2em);
    top: 0;
  }
}

.legacy-stock-message {
  text-align: right;
}

.tierHeading {
  margin-top: 0.35714rem;
}

.tierHeading h1 {
  float: left;
}

.tierNavSection {
  width: 100%;
  float: left;
  padding-right: 0.35714rem;
  padding-left: 0.35714rem;
}

@media print, screen and (min-width: 48em) {
  .tierNavSection {
    padding-right: 0.57143rem;
    padding-left: 0.57143rem;
  }
}

@media print, screen and (min-width: 64em) {
  .tierNavSection {
    padding-right: 0.57143rem;
    padding-left: 0.57143rem;
  }
}

.tierNavSection:last-child:not(:first-child) {
  float: right;
}

.tierMiddleWide {
  width: 100%;
  float: left;
  padding-right: 0.35714rem;
  padding-left: 0.35714rem;
}

@media print, screen and (min-width: 48em) {
  .tierMiddleWide {
    padding-right: 0.57143rem;
    padding-left: 0.57143rem;
  }
}

@media print, screen and (min-width: 64em) {
  .tierMiddleWide {
    padding-right: 0.57143rem;
    padding-left: 0.57143rem;
  }
}

.tierMiddleWide:last-child:not(:first-child) {
  float: right;
}

.tierMiddleMedium {
  width: 100%;
  float: left;
  padding-right: 0.35714rem;
  padding-left: 0.35714rem;
}

@media print, screen and (min-width: 48em) {
  .tierMiddleMedium {
    padding-right: 0.57143rem;
    padding-left: 0.57143rem;
  }
}

@media print, screen and (min-width: 64em) {
  .tierMiddleMedium {
    padding-right: 0.57143rem;
    padding-left: 0.57143rem;
  }
}

.tierMiddleMedium:last-child:not(:first-child) {
  float: right;
}

.tierMiddleSmall {
  width: 100%;
  float: left;
  padding-right: 0.35714rem;
  padding-left: 0.35714rem;
}

@media print, screen and (min-width: 48em) {
  .tierMiddleSmall {
    padding-right: 0.57143rem;
    padding-left: 0.57143rem;
  }
}

@media print, screen and (min-width: 64em) {
  .tierMiddleSmall {
    padding-right: 0.57143rem;
    padding-left: 0.57143rem;
  }
}

.tierMiddleSmall:last-child:not(:first-child) {
  float: right;
}

@media screen and (min-width: 48em) {
  .tierNavSection {
    width: 24%;
    float: left;
    padding-right: 0.35714rem;
    padding-left: 0.35714rem;
    /*&.tierandSide {
            @include grid-col-pos(-9.12);
        }

         &.tiersOnly {
             @include grid-col-pos(-9.12);
        }*/
  }
}

@media screen and (min-width: 48em) and (min-width: 48em) {
  .tierNavSection {
    padding-right: 0.57143rem;
    padding-left: 0.57143rem;
  }
}

@media screen and (min-width: 48em) and (min-width: 64em) {
  .tierNavSection {
    padding-right: 0.57143rem;
    padding-left: 0.57143rem;
  }
}

@media screen and (min-width: 48em) {
  .tierNavSection:last-child:not(:first-child) {
    float: right;
  }
  .tierMiddleWide {
    width: 100%;
    float: left;
    padding-right: 0.35714rem;
    padding-left: 0.35714rem;
  }
}

@media screen and (min-width: 48em) and (min-width: 48em) {
  .tierMiddleWide {
    padding-right: 0.57143rem;
    padding-left: 0.57143rem;
  }
}

@media screen and (min-width: 48em) and (min-width: 64em) {
  .tierMiddleWide {
    padding-right: 0.57143rem;
    padding-left: 0.57143rem;
  }
}

@media screen and (min-width: 48em) {
  .tierMiddleWide:last-child:not(:first-child) {
    float: right;
  }
  .tierMiddleMedium {
    width: 76%;
    float: left;
    padding-right: 0.35714rem;
    padding-left: 0.35714rem;
    /*@include grid-col-pos(2.88);*/
  }
}

@media screen and (min-width: 48em) and (min-width: 48em) {
  .tierMiddleMedium {
    padding-right: 0.57143rem;
    padding-left: 0.57143rem;
  }
}

@media screen and (min-width: 48em) and (min-width: 64em) {
  .tierMiddleMedium {
    padding-right: 0.57143rem;
    padding-left: 0.57143rem;
  }
}

@media screen and (min-width: 48em) {
  .tierMiddleMedium:last-child:not(:first-child) {
    float: right;
  }
  .tierMiddleSmall {
    width: 76%;
    float: left;
    padding-right: 0.35714rem;
    padding-left: 0.35714rem;
    /*@include grid-col-pos(2.88);*/
  }
}

@media screen and (min-width: 48em) and (min-width: 48em) {
  .tierMiddleSmall {
    padding-right: 0.57143rem;
    padding-left: 0.57143rem;
  }
}

@media screen and (min-width: 48em) and (min-width: 64em) {
  .tierMiddleSmall {
    padding-right: 0.57143rem;
    padding-left: 0.57143rem;
  }
}

@media screen and (min-width: 48em) {
  .tierMiddleSmall:last-child:not(:first-child) {
    float: right;
  }
  .tierRightSection {
    display: none;
  }
}

@media screen and (min-width: 64em) {
  .tierNavSection {
    width: 24%;
    float: left;
    padding-right: 0.35714rem;
    padding-left: 0.35714rem;
    /*&.tierandSide {
            @include grid-col-pos(-6.6);
        }

         &.tiersOnly {
             @include grid-col-pos(-9.12);
        }*/
  }
}

@media screen and (min-width: 64em) and (min-width: 48em) {
  .tierNavSection {
    padding-right: 0.57143rem;
    padding-left: 0.57143rem;
  }
}

@media screen and (min-width: 64em) and (min-width: 64em) {
  .tierNavSection {
    padding-right: 0.57143rem;
    padding-left: 0.57143rem;
  }
}

@media screen and (min-width: 64em) {
  .tierNavSection:last-child:not(:first-child) {
    float: right;
  }
  .tierMiddleWide {
    width: 100%;
    float: left;
    padding-right: 0.35714rem;
    padding-left: 0.35714rem;
  }
}

@media screen and (min-width: 64em) and (min-width: 48em) {
  .tierMiddleWide {
    padding-right: 0.57143rem;
    padding-left: 0.57143rem;
  }
}

@media screen and (min-width: 64em) and (min-width: 64em) {
  .tierMiddleWide {
    padding-right: 0.57143rem;
    padding-left: 0.57143rem;
  }
}

@media screen and (min-width: 64em) {
  .tierMiddleWide:last-child:not(:first-child) {
    float: right;
  }
  .tierMiddleMedium {
    width: 76%;
    float: left;
    padding-right: 0.35714rem;
    padding-left: 0.35714rem;
    /*@include grid-col-pos(2.88);*/
  }
}

@media screen and (min-width: 64em) and (min-width: 48em) {
  .tierMiddleMedium {
    padding-right: 0.57143rem;
    padding-left: 0.57143rem;
  }
}

@media screen and (min-width: 64em) and (min-width: 64em) {
  .tierMiddleMedium {
    padding-right: 0.57143rem;
    padding-left: 0.57143rem;
  }
}

@media screen and (min-width: 64em) {
  .tierMiddleMedium:last-child:not(:first-child) {
    float: right;
  }
  .tierMiddleSmall {
    width: 55%;
    float: left;
    padding-right: 0.35714rem;
    padding-left: 0.35714rem;
    /*@include grid-col-pos(2.88);*/
  }
}

@media screen and (min-width: 64em) and (min-width: 48em) {
  .tierMiddleSmall {
    padding-right: 0.57143rem;
    padding-left: 0.57143rem;
  }
}

@media screen and (min-width: 64em) and (min-width: 64em) {
  .tierMiddleSmall {
    padding-right: 0.57143rem;
    padding-left: 0.57143rem;
  }
}

@media screen and (min-width: 64em) {
  .tierMiddleSmall:last-child:not(:first-child) {
    float: right;
  }
  .tierRightSection {
    display: block;
    width: 21%;
    float: left;
    padding-right: 0.35714rem;
    padding-left: 0.35714rem;
  }
}

@media screen and (min-width: 64em) and (min-width: 48em) {
  .tierRightSection {
    padding-right: 0.57143rem;
    padding-left: 0.57143rem;
  }
}

@media screen and (min-width: 64em) and (min-width: 64em) {
  .tierRightSection {
    padding-right: 0.57143rem;
    padding-left: 0.57143rem;
  }
}

@media screen and (min-width: 64em) {
  .tierRightSection:last-child:not(:first-child) {
    float: right;
  }
}

ul.tierpageNav {
  list-style: none;
  margin-left: 0px;
  padding-left: 0.28571rem;
}

ul.tierpageNav li {
  margin: 0.35714rem 0;
  padding: 0.35714rem 0;
  border-bottom: 1px solid #e8e5e5;
}

@media print, screen and (min-width: 48em) {
  ul.tierpageNav li {
    margin: 0;
    padding: 0.3rem 0;
  }
}

ul.tierpageNav li:last-child {
  border-bottom: none;
}

ul.tierpageNav li a {
  color: black;
  font-size: 1.14286rem;
}

@media print, screen and (min-width: 48em) {
  ul.tierpageNav li a {
    font-size: 1.05rem;
  }
}

ul.tierpageNav li a:hover {
  text-decoration: underline;
}

.brandSection {
  text-align: center;
}

.brandSection h2 {
  text-align: left;
}

.brandSection a {
  display: inline-block;
  padding: 0px 20px 5px 20px;
}

.brandSection a img {
  padding-bottom: 2px;
  width: 100px;
  image-rendering: -moz-crisp-edges;
  image-rendering: -o-crisp-edges;
  image-rendering: -webkit-optimize-contrast;
  image-rendering: optimize-contrast;
}

.brandSection a h3 {
  color: #79796A;
  font-weight: normal;
}

.brandSection a:hover h3 {
  color: #0a0a0a;
}

a.topBrandsViewAll {
  padding-top: 0.71429rem;
  text-align: right;
  display: block;
  color: #79796A;
}

a.topBrandsViewAll:hover {
  color: black;
}

.tierAdverts .column img, .tierAdverts .columns img {
  margin-bottom: 0.71429rem;
  image-rendering: -moz-crisp-edges;
  /* Firefox */
  image-rendering: -o-crisp-edges;
  /* Opera */
  image-rendering: -webkit-optimize-contrast;
  /* Webkit (non-standard naming) */
  image-rendering: crisp-edges;
  -ms-interpolation-mode: nearest-neighbor;
  /* IE (non-standard property) */
}

.tierAdverts .column a, .tierAdverts .columns a {
  color: #0a0a0a;
}

.moduleView .moduleBlock {
  text-align: center;
  padding: 0.71429rem;
}

.moduleView .moduleBlock a {
  color: black;
  display: block;
  line-height: 1.28571rem;
}

.moduleView .moduleBlock a img {
  width: 50%;
  padding-bottom: 5px;
  margin: 0 auto;
  display: block;
}

.moduleView .moduleBlock a:hover {
  color: black;
  text-decoration: underline;
}

.moduleView .moduleBlock a:hover img {
  text-decoration: none;
}

.parametricSearchButton {
  position: absolute;
  right: 10px;
}

@media screen and (max-width: 47.9375em) {
  .parametricSearchButton {
    position: relative;
    display: inline-block;
    float: right;
  }
  .parametricSearchButton:after {
    clear: both;
  }
}

.button.hollow.lighterGray {
  border: 1px solid #bdc3c7;
  color: #bdc3c7;
}

.button.lighterGray {
  background-color: #bdc3c7;
  color: #fefefe;
}

.button.lighterGray:focus {
  background-color: #313131;
  color: #fefefe;
}

.button.lighterGray:hover {
  background-color: #313131;
  color: #fefefe;
}

.button.hollow.lighterGray {
  border: 1px solid #bdc3c7;
  color: #bdc3c7;
  background: none;
}

.button.hollow.lighterGray:focus {
  border-color: #313131;
  color: #313131;
}

.button.hollow.lighterGray:hover {
  border-color: #313131;
  color: #313131;
}

.quickTaskFilters {
  list-style: none;
  margin-left: 0;
}

.quickTaskFilters label, .quickTaskFilters a {
  color: #3c3c3c;
  /*font-weight:bold;*/
  text-transform: uppercase;
  font-size: 1.1rem;
}

.quickTaskFilters li {
  font-size: 1.07143rem;
  padding: 0.78571rem 0.14286rem;
  cursor: pointer;
}

.quickTaskFilters li.taskFilterDivider {
  border-bottom: 1px solid #e8e5e5;
  line-height: 0px;
  padding: 0px;
}

.quickTaskFilters li.taskFilterDivider:hover {
  background: none;
}

.quickTaskFilters li select {
  border: none;
}

.quickTaskFilters li select:focus {
  border: none;
  -webkit-box-shadow: none;
          box-shadow: none;
}

.quickTaskFilters li i {
  font-size: 20px !important;
  padding-right: 5px;
}

.quickTaskFilters li span {
  color: #3c3c3c;
  font-size: 0.78571rem;
}

.quickTaskFilters li select {
  margin-top: 0.85714rem;
}

.taskFiltersCol {
  /*@include grid-column;*/
  /*background:#F9FAFE !important;*/
  background: #EFEFF4 !important;
  /*@include breakpoint(large) {
        @include grid-column(2 of 12);
        //to match height of parent - only works as page is 2 columns so right col is floated right.
        height:100%  !important;
        position:absolute !important;
        border-right:1px solid $light-gray;
     }*/
}

@media screen and (max-width: 63.9375em) {
  .taskFiltersCol.off-canvas.in-canvas-for-large {
    z-index: 999999 !important;
    padding: 0.35714rem;
  }
}

@media print, screen and (min-width: 64em) {
  .taskFiltersCol.off-canvas.in-canvas-for-large {
    width: 16.66667%;
    float: left;
    padding-right: 0.35714rem;
    padding-left: 0.35714rem;
    height: 100%  !important;
    position: absolute !important;
    border-right: 1px solid #e8e5e5;
  }
}

@media print, screen and (min-width: 64em) and (min-width: 48em) {
  .taskFiltersCol.off-canvas.in-canvas-for-large {
    padding-right: 0.57143rem;
    padding-left: 0.57143rem;
  }
}

@media print, screen and (min-width: 64em) and (min-width: 64em) {
  .taskFiltersCol.off-canvas.in-canvas-for-large {
    padding-right: 0.57143rem;
    padding-left: 0.57143rem;
  }
}

@media print, screen and (min-width: 64em) {
  .taskFiltersCol.off-canvas.in-canvas-for-large:last-child:not(:first-child) {
    float: right;
  }
}

.taskSwitch {
  padding: 3px 0px;
  display: block;
  text-align: center;
}

.taskSwitch:hover {
  color: #fefefe;
  background: #bdc3c7;
}

.taskPageCont span.label {
  border-radius: 0.71429rem;
  margin: 2.5px 5px 2.5px;
}

.taskPageCont span.label .secondary {
  background: #A1AAB2;
}

.taskRow {
  max-height: 200px;
  overflow: hidden;
  -webkit-transition: max-height 1.2s;
  transition: max-height 1.2s;
}

.taskRow.open {
  max-height: 1450px;
  overflow: visible;
}

.resultsCount {
  margin: 7px 0px;
  display: inline-block;
}

h1.taskPageTitle {
  display: inline-block;
  margin: 0.57143rem 0 0 0;
  color: #3c3c3c;
  font-size: 1.35rem;
}

.taskDetails {
  background: #F9F9F9;
  padding: 0.5rem;
  -webkit-transition: all 0.5s ease-in-out;
  transition: all 0.5s ease-in-out;
}

.taskDetails label {
  font-size: 1.07143rem;
  color: #79796A;
}

.taskDetails label span {
  color: #79796A;
  font-size: 0.78571rem;
}

.show-quickTaskFilters {
  display: block !important;
}

.taskHeaderBar {
  min-height: 3.64286rem;
  background: #fffff2;
  border-bottom: 1px solid #e8e5e5;
  /*box-shadow: 0 1px 3px rgba(0,0,0,0.12), 0 1px 2px rgba(0,0,0,0.24);*/
  padding: 0.42857rem 0;
}

.taskHeaderBar.row.expanded {
  margin-right: -.57143rem;
  margin-left: -.57143rem;
}

.taskHeaderBar .button {
  margin: 0.25rem 0.25rem 0.25rem;
  padding: .55em .75em;
}

.taskPageCont {
  overflow: hidden;
  position: relative;
  margin-bottom: -1.57143rem;
  padding-bottom: 0.71429rem;
  min-height: 35.35714rem;
  /*background:#F5F5F6;*/
  background: #FAFAFA;
}

.tasksContainer {
  /*border:1px solid $light-gray;*/
  margin-top: 0.71429rem;
  max-width: 82.14286rem;
  padding: 0.42857rem;
  background: white;
  -webkit-box-shadow: 0 1px 3px rgba(0, 0, 0, 0.12), 0 1px 2px rgba(0, 0, 0, 0.24);
          box-shadow: 0 1px 3px rgba(0, 0, 0, 0.12), 0 1px 2px rgba(0, 0, 0, 0.24);
}

@media print, screen and (min-width: 48em) {
  .tasksContainer {
    margin-left: 0.78571rem;
    margin-right: 0.78571rem;
  }
}

.taskRow {
  border-bottom: 1px solid #e8e5e5;
}

.taskRow:last-child {
  border-bottom: none;
  padding-bottom: 0;
}

.taskRow:hover {
  background: #e8e5e5;
}

.taskRow .nonEditable {
  margin: 5px;
  cursor: pointer;
}

@media screen and (max-width: 47.9375em) {
  .taskRow .nonEditable span {
    padding-top: 0.21429rem;
    padding-bottom: 0.21429rem;
  }
}

.taskRow .nonEditable .fa-star {
  color: #e81212;
}

.taskRow .nonEditable .hollow-sqaure-notification {
  border: 1px solid #313131;
  color: #313131;
  margin: 0;
  display: inline-block;
  border-radius: .18rem;
  padding: 0 .55em;
  font-weight: bold;
  float: right;
}

@media print, screen and (min-width: 48em) {
  .taskRow .nonEditable {
    line-height: 2.21429rem;
  }
}

.taskRow .nonEditable h2 {
  font-weight: normal;
  padding: 0.5rem 0;
  margin: 0;
  color: #3c3c3c;
}

.taskRow .nonEditable .editBtn {
  display: none;
  min-width: 5rem;
  border: 1px solid #e8e5e5;
  border-radius: 3px;
  background: #fefefe;
}

@media screen and (max-width: 47.9375em) {
  .taskRow .nonEditable .editBtn {
    margin: 0.71429rem auto;
    float: right;
  }
}

.taskRow .nonEditable .editBtn .btnIcon {
  display: inline-block;
  background: #F9A519;
}

.taskRow .nonEditable .editBtn .btnIcon i {
  padding: 0.35714rem;
  font-size: 1.28571rem;
}

.taskRow .nonEditable .editBtn .btnText {
  display: inline-block;
  padding: 0 0.42857rem;
}

.taskRow .nonEditable:hover .editBtn {
  display: inline-block;
  cursor: pointer;
}

.tabsArea .tabs-content {
  background: none;
  border: none;
}

.tabsArea .tabs-content .tabs-panel {
  padding: 0px;
  overflow: visible;
}

.tabsArea .tabs {
  border: none;
  border-bottom: 1px solid #e8e5e5;
  margin-bottom: 0.71429rem;
  background: none;
}

.tabsArea .tabs .tabs-title {
  width: 31%;
  text-align: center;
  padding-bottom: 4px;
  margin-right: 3px;
  background: #f8f9fa;
}

.tabsArea .tabs .tabs-title:hover {
  padding-bottom: 0px;
  border-bottom: 4px solid #e8e5e5;
}

.tabsArea .tabs .tabs-title a {
  padding: 0.57143rem;
}

.tabsArea .tabs .tabs-title a:focus {
  background: none;
}

.tabsArea .tabs .tabs-title a:hover {
  background: none;
}

.tabsArea .tabs .tabs-title a label {
  font-size: 1.14286rem;
  cursor: pointer;
  font-weight: normal;
}

.tabsArea .tabs .tabs-title.is-active {
  padding-bottom: 0px;
  border-bottom: 4px solid #F9A519;
  background: #f5f7f8;
}

.tabsArea .tabs .tabs-title.is-active a label {
  font-weight: bold;
}

.todoContainer, .taskNotesContainer {
  background: #fefefe;
  padding: 0 0.71429rem;
  overflow-y: auto;
  border: 1px solid #e8e5e5;
  border-radius: 4px;
  height: 22.5rem;
  margin-bottom: 0.71429rem;
}

.todoContainer .fa-star {
  color: #e81212;
}

.quill-outer .ql-tooltip, .quill-outer .ql-clipboard {
  z-index: 999999;
}

.quill-outer .quill-editor {
  background: #fefefe;
}

.quill-outer .quill-editor .ql-toolbar.ql-snow, .quill-outer .quill-editor .ql-container.ql-snow {
  border: 1px solid #e8e5e5;
}

.quill-outer button {
  margin: 10px 0px 0px 0px;
}

.quill-outer .ql-container {
  height: 15.71429rem;
}

.todoRow {
  border-bottom: 1px solid #e8e5e5;
  cursor: pointer;
  padding: 0.35714rem 0;
}

.todoRow .label {
  line-height: 1.3rem;
}

.todoRow p {
  margin-bottom: 0.14286rem;
}

.todoRow:hover {
  background: #e8e5e5;
}

.noteRow {
  border-bottom: 1px solid #e8e5e5;
}

.noteRow p {
  margin-bottom: -0.14286rem;
  margin-top: 0.21429rem;
}

.noteRow .noteDate {
  color: #79796A;
  font-size: 0.85714rem;
}

.taskSave {
  float: right;
  margin-bottom: 0.35714rem;
}

/*todo menu transition*/
.panel-slider {
  position: relative;
  max-height: 0;
  -webkit-transition-property: all;
  transition-property: all;
  -webkit-transition-duration: .4s;
          transition-duration: .4s;
  -webkit-transition-timing-function: cubic-bezier(1, 0, 0.5, 0);
          transition-timing-function: cubic-bezier(1, 0, 0.5, 0);
  background: #EFEFF4;
}

.panel-slider.open {
  max-height: 500px;
  margin-top: 8px;
  padding: 0.35714rem;
  border-radius: 0.28571rem;
}

.panel-slider.open .button {
  margin: 0.35714rem 0;
}

.panel-slider.open::before {
  border-right: solid 15px transparent;
  border-left: solid 15px transparent;
  border-bottom: solid 15px #EFEFF4;
  -webkit-transform: translateX(-50%);
          transform: translateX(-50%);
  position: absolute;
  content: '';
  top: -15px;
  left: 50%;
  height: 0;
  width: 0;
}

.todoAttatchments {
  text-align: center;
  padding: 1.07143rem;
  background: #F6F7F8;
}

.todoAttatchments h2, .todoAttatchments h3 {
  color: #6f6f6f;
}

.todoAttatchments i {
  color: #c0c2c3;
}

@media print, screen and (min-width: 64em) {
  .todoAttatchments [type='file'] {
    width: 40%;
  }
}

.todoAttatchments hr {
  margin: 0.35714rem;
}

.bdmFileUploads {
  max-height: 10.35714rem;
  overflow-y: auto;
}

.bdmFileUploads .link {
  margin-bottom: 0.28571rem;
  cursor: pointer;
}

.bdmFileUploads .link:hover {
  background: #d6d8da;
}

.bdmLoading {
  position: fixed;
  z-index: 9999999999;
  height: 2em;
  width: 2em;
  overflow: visible;
  margin: auto;
  top: 0;
  left: 0;
  bottom: 0;
  right: 0;
}

/* Transparent Overlay */
.bdmLoading:before {
  content: '';
  display: block;
  position: fixed;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background-color: rgba(0, 0, 0, 0.3);
}

/* :not(:required) hides these rules from IE9 and below */
.bdmLoading:not(:required) {
  /* hide "bdmLoading..." text */
  font: 0/0 a;
  color: transparent;
  text-shadow: none;
  background-color: transparent;
  border: 0;
}

.bdmLoading:not(:required):after {
  content: '';
  display: block;
  font-size: 10px;
  width: 1em;
  height: 1em;
  margin-top: -0.5em;
  -webkit-animation: spinner 1500ms infinite linear;
  animation: spinner 1500ms infinite linear;
  border-radius: 0.5em;
  -webkit-box-shadow: rgba(0, 0, 0, 0.75) 1.5em 0 0 0, rgba(0, 0, 0, 0.75) 1.1em 1.1em 0 0, rgba(0, 0, 0, 0.75) 0 1.5em 0 0, rgba(0, 0, 0, 0.75) -1.1em 1.1em 0 0, rgba(0, 0, 0, 0.5) -1.5em 0 0 0, rgba(0, 0, 0, 0.5) -1.1em -1.1em 0 0, rgba(0, 0, 0, 0.75) 0 -1.5em 0 0, rgba(0, 0, 0, 0.75) 1.1em -1.1em 0 0;
  box-shadow: rgba(0, 0, 0, 0.75) 1.5em 0 0 0, rgba(0, 0, 0, 0.75) 1.1em 1.1em 0 0, rgba(0, 0, 0, 0.75) 0 1.5em 0 0, rgba(0, 0, 0, 0.75) -1.1em 1.1em 0 0, rgba(0, 0, 0, 0.75) -1.5em 0 0 0, rgba(0, 0, 0, 0.75) -1.1em -1.1em 0 0, rgba(0, 0, 0, 0.75) 0 -1.5em 0 0, rgba(0, 0, 0, 0.75) 1.1em -1.1em 0 0;
}

/* Animation */
@-webkit-keyframes spinner {
  0% {
    -webkit-transform: rotate(0deg);
    transform: rotate(0deg);
  }
  100% {
    -webkit-transform: rotate(360deg);
    transform: rotate(360deg);
  }
}

@keyframes spinner {
  0% {
    -webkit-transform: rotate(0deg);
    transform: rotate(0deg);
  }
  100% {
    -webkit-transform: rotate(360deg);
    transform: rotate(360deg);
  }
}

.bdmSearch .bdmSearchClose {
  display: inline-block;
  padding: 0 0.21429rem;
  float: right;
}

.bdmSearch .bdmSearchClose i {
  color: #EFEFF4;
  cursor: pointer;
}

.bdmSearch .bdmSearchClose i:hover {
  color: #a29e9e;
}

.bdmSearch h2 {
  padding-top: 0.35714rem;
}

.bdmSearch .highlight {
  background: yellow;
}

.bdmSearch .searchResult {
  margin: 0.28571rem 0;
  border-bottom: 1px solid #e8e5e5;
  cursor: pointer;
  padding: 0.42857rem 0.28571rem;
}

.bdmSearch .searchResult p {
  margin: 0px;
}

.bdmSearch .searchResult:hover {
  background: #e4e4e4;
}

@media print, screen and (min-width: 64em) {
  .todoForm {
    max-height: 35.71429rem;
    overflow-y: auto;
  }
  .todoForm thead [class|="todo"] {
    min-height: 85px;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: center;
        -ms-flex-pack: center;
            justify-content: center;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
  }
  .todoForm [class|="todo"] {
    float: left;
    width: 9.09%;
    position: relative;
  }
  .todoForm .todo-comments {
    width: calc(100% - 140px - 32px);
    border-bottom: 0 !important;
  }
  .todoForm .todo-duplicate {
    width: 140px;
  }
  .todoForm .todo-duplicate .button {
    margin: 0;
    width: 100%;
    height: 100%;
  }
  .todoForm .todo-delete {
    width: 32px;
  }
}

.todoForm .cross-contain {
  display: block;
  text-align: left;
  padding: 30% 0;
}

@media print, screen and (min-width: 64em) {
  .todoForm table.quoteDetail thead {
    background-color: #fccc7c;
  }
}

.todoForm table.quoteDetail thead th {
  text-align: center;
}

.todoForm table.quoteDetail thead tr {
  border: solid 1px #bcbcbe;
}

@media print, screen and (min-width: 64em) {
  .todoForm table.quoteDetail tbody td {
    height: 52px;
  }
}

.todoForm table.quoteDetail tbody td input,
.todoForm table.quoteDetail tbody td select {
  margin: 0;
  -webkit-transition: background-color .3s ease-in-out;
  transition: background-color .3s ease-in-out;
}

.todoForm table.quoteDetail tbody td input::placholder,
.todoForm table.quoteDetail tbody td select::placholder {
  color: black;
}

.todoForm table.quoteDetail tbody td .input-expand-wrap {
  position: relative;
}

.todoForm table.quoteDetail tbody td .input-expand-wrap.expanded {
  position: fixed;
  z-index: 2;
  width: 100%;
  max-width: calc(92.85714rem - 10%);
  left: 50%;
  top: 30%;
  -webkit-transform: translateX(-50%);
          transform: translateX(-50%);
}

.todoForm table.quoteDetail tbody td input[type=text],
.todoForm table.quoteDetail tbody td input[type=number] {
  position: relative;
  -webkit-transition: .3s ease-in-out all;
  transition: .3s ease-in-out all;
}

.todoForm table.quoteDetail tbody td input[type=text]:hover + .input-expand-icon,
.todoForm table.quoteDetail tbody td input[type=number]:hover + .input-expand-icon {
  display: block;
}

.todoForm table.quoteDetail tbody td input[type=text] + .input-expand-icon,
.todoForm table.quoteDetail tbody td input[type=number] + .input-expand-icon {
  display: none;
  position: absolute;
  right: 0;
  top: 0;
  z-index: 1;
  font-size: 12px;
}

.todoForm table.quoteDetail tbody td input[type=text] + .input-expand-icon:hover,
.todoForm table.quoteDetail tbody td input[type=number] + .input-expand-icon:hover {
  cursor: pointer;
  display: block;
}

.todoForm table.quoteDetail tbody tr {
  border: solid 1px #bcbcbe;
  position: relative;
}

@media print, screen and (min-width: 64em) {
  .todoForm table.quoteDetail tbody tr {
    background-color: #fccc7c;
  }
}

@media print, screen and (min-width: 64em) {
  .todoForm table.quoteDetail tbody .todo-delete {
    background-color: #fff;
  }
  .todoForm table.quoteDetail tbody .todo-direct {
    padding: 16px 5px;
  }
}

.todoForm .cat-quotes {
  background: #e3e3e4;
}

.todoForm th.cat-quotes,
.todoForm td.cat-quotes {
  border-bottom: solid 1px #bcbcbe;
}

@media print, screen and (min-width: 64em) {
  .todoForm th.cat-quotes,
  .todoForm td.cat-quotes {
    border-right: none;
  }
}

.todoForm th.cat-quotes:nth-child(3),
.todoForm td.cat-quotes:nth-child(3) {
  border-bottom: solid 3px #bcbcbe;
}

@media print, screen and (min-width: 64em) {
  .todoForm th.cat-quotes:nth-child(3),
  .todoForm td.cat-quotes:nth-child(3) {
    border-right: solid 3px #bcbcbe;
    border-bottom: solid 1px #bcbcbe;
  }
}

.todoForm .cat-pro {
  background-color: #fccc7c;
}

.todoForm th.cat-pro,
.todoForm td.cat-pro {
  text-align: center;
  border-bottom: solid 1px #bcbcbe;
}

@media print, screen and (min-width: 64em) {
  .todoForm th.cat-pro,
  .todoForm td.cat-pro {
    border-right: none;
  }
}

.todoForm tr .delete-row {
  text-align: center;
  border-bottom: solid 5px #bcbcbe;
}

@media print, screen and (min-width: 64em) {
  .todoForm tr .delete-row {
    text-align: center;
    border-bottom: 0 !important;
    padding: 15px 5px;
  }
}

.todoForm tr:last-child .delete-row {
  border-bottom: solid 1px #bcbcbe;
}

.todoForm .missing-required {
  background-color: #e19488;
  border-color: #cc4b37;
}

.todoForm .missing-required:focus {
  background-color: #e19488;
  border-color: #cc4b37 !important;
}

.reveal.full {
  top: 0 !important;
}

.reveal.full .row {
  max-width: 100%;
}

.reveal.full .todoForm {
  max-height: 83vh;
}

input[id$="duplicated"] {
  background-color: #8add9b;
}

input[id$="duplicated"]:focus {
  background-color: #8add9b;
}

#expanded-overlay {
  position: absolute;
  left: 0;
  right: 0;
  top: 0;
  bottom: 0;
  z-index: 1;
  background-color: rgba(10, 10, 10, 0.45);
  visibility: hidden;
}

.lines-wrap {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: start;
      -ms-flex-pack: start;
          justify-content: flex-start;
  margin-bottom: 0.5em;
}

.lines-wrap h2 {
  display: inline-block;
}

.lines-wrap button {
  margin: 0 10px 0 auto;
}

.quick-view-popup {
  margin-bottom: 0.5em;
}

.quick-view-popup .quick-view-column {
  margin-bottom: 1.5em;
  /*@include breakpoint(medium) {
            margin-bottom: 0;
        }*/
}

.truncated-string {
  text-overflow: ellipsis;
  white-space: nowrap;
  overflow: hidden;
  display: inline-block;
  width: 100%;
  line-height: 1em;
}

.task-todo-item {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
}

@media print, screen and (min-width: 48em) {
  .task-todo-item {
    -webkit-box-orient: horizontal;
    -webkit-box-direction: normal;
        -ms-flex-direction: row;
            flex-direction: row;
  }
}

.task-todo-item_title,
.task-todo-item_info,
.task-todo-item_group {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  width: 100%;
}

@media print, screen and (min-width: 48em) {
  .task-todo-item_title,
  .task-todo-item_info,
  .task-todo-item_group {
    width: 50%;
  }
}

.task-todo-item_group {
  width: 70%;
}

@media print, screen and (min-width: 48em) {
  .task-todo-item_group {
    width: 60%;
  }
}

.task-todo-item_info {
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  -webkit-box-align: start;
      -ms-flex-align: start;
          align-items: flex-start;
}

.todoRow.task-todo-item {
  -webkit-box-orient: horizontal;
  -webkit-box-direction: normal;
      -ms-flex-direction: row;
          flex-direction: row;
}

.todoRow .task-todo-item_title {
  width: 30%;
}

@media print, screen and (min-width: 48em) {
  .todoRow .task-todo-item_title {
    width: 40%;
  }
}

.todoRow .task-todo-item_info {
  width: 80%;
}

.task-todo-item_duplicate {
  width: 20%;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
}

@media print, screen and (min-width: 48em) {
  .task-todo-item_duplicate {
    width: 10%;
  }
}

@media print, screen and (min-width: 48em) {
  .searchAttributesCol {
    width: 35%;
    float: left;
    padding-right: 0.35714rem;
    padding-left: 0.35714rem;
  }
}

@media print, screen and (min-width: 48em) and (min-width: 48em) {
  .searchAttributesCol {
    padding-right: 0.57143rem;
    padding-left: 0.57143rem;
  }
}

@media print, screen and (min-width: 48em) and (min-width: 64em) {
  .searchAttributesCol {
    padding-right: 0.57143rem;
    padding-left: 0.57143rem;
  }
}

@media print, screen and (min-width: 48em) {
  .searchAttributesCol:last-child:not(:first-child) {
    float: right;
  }
}

@media print, screen and (min-width: 64em) {
  .searchAttributesCol {
    width: 16.66667%;
    float: left;
    padding-right: 0.35714rem;
    padding-left: 0.35714rem;
  }
}

@media print, screen and (min-width: 64em) and (min-width: 48em) {
  .searchAttributesCol {
    padding-right: 0.57143rem;
    padding-left: 0.57143rem;
  }
}

@media print, screen and (min-width: 64em) and (min-width: 64em) {
  .searchAttributesCol {
    padding-right: 0.57143rem;
    padding-left: 0.57143rem;
  }
}

@media print, screen and (min-width: 64em) {
  .searchAttributesCol:last-child:not(:first-child) {
    float: right;
  }
}

@media print, screen and (min-width: 48em) {
  .resultsSection .off-canvas.in-canvas-for-medium {
    width: 35%;
    float: left;
    padding-right: 0.35714rem;
    padding-left: 0.35714rem;
  }
}

@media print, screen and (min-width: 48em) and (min-width: 48em) {
  .resultsSection .off-canvas.in-canvas-for-medium {
    padding-right: 0.57143rem;
    padding-left: 0.57143rem;
  }
}

@media print, screen and (min-width: 48em) and (min-width: 64em) {
  .resultsSection .off-canvas.in-canvas-for-medium {
    padding-right: 0.57143rem;
    padding-left: 0.57143rem;
  }
}

@media print, screen and (min-width: 48em) {
  .resultsSection .off-canvas.in-canvas-for-medium:last-child:not(:first-child) {
    float: right;
  }
}

@media print, screen and (min-width: 64em) {
  .resultsSection .off-canvas.in-canvas-for-medium {
    width: 16.66667%;
    float: left;
    padding-right: 0.35714rem;
    padding-left: 0.35714rem;
  }
}

@media print, screen and (min-width: 64em) and (min-width: 48em) {
  .resultsSection .off-canvas.in-canvas-for-medium {
    padding-right: 0.57143rem;
    padding-left: 0.57143rem;
  }
}

@media print, screen and (min-width: 64em) and (min-width: 64em) {
  .resultsSection .off-canvas.in-canvas-for-medium {
    padding-right: 0.57143rem;
    padding-left: 0.57143rem;
  }
}

@media print, screen and (min-width: 64em) {
  .resultsSection .off-canvas.in-canvas-for-medium:last-child:not(:first-child) {
    float: right;
  }
}

@media screen and (max-width: 47.9375em) {
  .resultsSection .off-canvas.in-canvas-for-medium {
    z-index: 20000000000;
    background: white;
  }
}

@media screen and (max-width: 47.9375em) {
  .searchResultsCol {
    width: 100%;
    float: left;
    padding-right: 0.35714rem;
    padding-left: 0.35714rem;
  }
}

@media screen and (max-width: 47.9375em) and (min-width: 48em) {
  .searchResultsCol {
    padding-right: 0.57143rem;
    padding-left: 0.57143rem;
  }
}

@media screen and (max-width: 47.9375em) and (min-width: 64em) {
  .searchResultsCol {
    padding-right: 0.57143rem;
    padding-left: 0.57143rem;
  }
}

@media screen and (max-width: 47.9375em) {
  .searchResultsCol:last-child:not(:first-child) {
    float: right;
  }
}

@media print, screen and (min-width: 48em) {
  .searchResultsCol {
    width: 65%;
    float: left;
    padding-right: 0.35714rem;
    padding-left: 0.35714rem;
  }
}

@media print, screen and (min-width: 48em) and (min-width: 48em) {
  .searchResultsCol {
    padding-right: 0.57143rem;
    padding-left: 0.57143rem;
  }
}

@media print, screen and (min-width: 48em) and (min-width: 64em) {
  .searchResultsCol {
    padding-right: 0.57143rem;
    padding-left: 0.57143rem;
  }
}

@media print, screen and (min-width: 48em) {
  .searchResultsCol:last-child:not(:first-child) {
    float: right;
  }
}

@media print, screen and (min-width: 64em) {
  .searchResultsCol {
    width: 83.33333%;
    float: left;
    padding-right: 0.35714rem;
    padding-left: 0.35714rem;
  }
}

@media print, screen and (min-width: 64em) and (min-width: 48em) {
  .searchResultsCol {
    padding-right: 0.57143rem;
    padding-left: 0.57143rem;
  }
}

@media print, screen and (min-width: 64em) and (min-width: 64em) {
  .searchResultsCol {
    padding-right: 0.57143rem;
    padding-left: 0.57143rem;
  }
}

@media print, screen and (min-width: 64em) {
  .searchResultsCol:last-child:not(:first-child) {
    float: right;
  }
}

.searchHeading {
  padding-top: 0.71429rem;
}

.searchHeading h1 {
  float: left;
}

table.compareTable td {
  border-left: 1px solid #e8e5e5;
}

table.compareTable tr td:not(:first-child) {
  max-width: 200px;
  min-width: 150px;
  text-align: center;
}

table.compareTable tr td:not(:first-child) a {
  color: #0a0a0a;
}

table.compareTable tr.alignTop {
  vertical-align: top;
}

table.compareTable tr.alignBottom {
  vertical-align: bottom;
}

table.compareTable .getQuoteLink {
  display: none;
}

table.compareTable ul {
  list-style: none;
}

table.compareTable tr td:first-child {
  background: #e8e5e5;
  font-weight: bold;
  max-width: 120px;
  vertical-align: top;
}

table.compareTable tr td table.largePriceTable th {
  text-align: center;
}

table.compareTable tr td table.largePriceTable td {
  min-width: auto;
  max-width: auto;
}

table.compareTable tr td table.largePriceTable tbody tr td:first-child {
  background-color: inherit;
  font-weight: normal;
}

.compareOptions {
  text-align: right;
}

.compareOptions a {
  color: #0a0a0a;
  font-size: 1.14286rem;
}

@media print {
  table.compareTable tr td:first-child {
    display: none;
  }
  table.compareTable tr td {
    width: 120px !important;
    max-width: 120px !important;
    padding: 0.35714rem;
  }
}

.signInLeft {
  background: url("//static.rapidonline.com/img/signin/signin.jpg") no-repeat;
  background-size: cover;
  background-position: top right;
  position: relative;
}

.signInLeft .trustpilot-widget {
  position: absolute !important;
  bottom: 0px;
  left: 0px;
  right: 0px;
  background: rgba(0, 0, 0, 0.5);
  padding: 10px 0;
}

@media screen and (max-width: 47.9375em) {
  .signInLeft .trustpilot-widget {
    display: none;
  }
}

@media print, screen and (min-width: 64em) {
  .signInRight {
    padding-left: 5.71429rem;
    padding-right: 5.71429rem;
  }
}

.signInGrayText {
  color: #79796A;
}

.signInRegisterLink {
  color: #0a0a0a;
  font-size: 1.07143rem;
}

.signInRegisterLink:hover {
  color: inherit;
  text-decoration: underline;
  -webkit-text-decoration-color: #0a0a0a;
          text-decoration-color: #0a0a0a;
}

.registerBenefits {
  background: #313131;
  padding: 1.07143rem;
}

.registerBenefits h3 {
  color: #fefefe;
}

.registerBenefits span {
  color: #fefefe;
  display: block;
}

.registerBenefits span i {
  color: #fefefe;
}

.brandItem {
  text-align: center;
}

@media print, screen and (min-width: 48em) {
  .brandItem {
    margin-bottom: 1.42857rem;
    margin-top: 1.42857rem;
  }
}

.brandItem img {
  margin-bottom: 0.71429rem;
}

.brandItem a {
  color: #79796A;
  display: inline-block;
}

.brandItem a:hover {
  color: #0a0a0a;
}

.brandItem h3 {
  font-weight: normal;
}

.brandsHeading {
  font-size: 1.28rem;
}

ul.brandNav {
  margin-left: 0;
  text-align: center;
  margin: 1.07143rem 0 0.71429rem 0;
}

ul.brandNav::before {
  display: table;
  content: ' ';
}

ul.brandNav::after {
  display: table;
  content: ' ';
}

ul.brandNav li {
  display: inline-block;
  margin-right: .07143rem;
  margin-bottom: 0.71429rem;
  font-size: 1rem;
}

ul.brandNav li a {
  display: block;
  color: #0a0a0a;
  background: #e8e5e5;
  padding: 0.42857rem 1rem;
}

ul.brandNav li a:hover {
  background: #F9A519;
  color: #fefefe;
}

.quoteItem {
  border-bottom: 1px solid #e8e5e5;
  margin-bottom: 0.71429rem;
}

.quoteItem h3 {
  color: #0a0a0a;
}

@media screen and (max-width: 47.9375em) {
  .quoteItem {
    text-align: center;
  }
  .quoteItem label.middle {
    margin-bottom: 0.35714rem;
  }
}

.smallQuoteImgContainer {
  text-align: center;
  margin: 0 auto;
  position: relative;
}

.smallQuoteImgContainer img {
  max-width: 110px;
}

.smallQuoteStockMessage {
  font-weight: bold;
  text-align: right;
  font-size: 1rem;
}

@media screen and (max-width: 47.9375em) {
  .smallQuoteStockMessage {
    margin-bottom: 1.14286rem;
  }
}

ul.quotesServices {
  margin-left: 1.78571rem;
}

ul.quotesServices li {
  padding-top: 0.35714rem;
  padding-bottom: 0.35714rem;
}

.quotesTeamInfo h3 {
  margin-bottom: 15px;
}

@media print, screen and (min-width: 48em) {
  .videoCol .responsive-embed {
    margin-top: 5rem;
  }
}

.basketPage {
  padding-top: 0.71429rem;
}

@media print, screen and (min-width: 48em) {
  .basketOptions {
    padding-top: 2.14286rem;
  }
}

.basketOptions a {
  margin-left: 0.35714rem;
  margin-right: 0.35714rem;
  color: #0a0a0a;
}

.promoCodeLine {
  display: inline-block;
}

.basketAddressOptions {
  position: absolute;
  bottom: 0;
}

.basketAddressOptions a {
  margin-bottom: 0;
}

.basketAddressOptions select {
  margin-bottom: 0;
}

.basketAdressBlock {
  padding-bottom: 50px;
  position: relative;
}

.basketCheckHeading {
  font-size: 1.14286rem;
  font-weight: bold;
}

.paymentOptions .columns {
  padding-bottom: 1.07143rem;
}

.paymentOptions label > [type=radio] {
  margin-bottom: 0;
  margin-top: 10px;
}

.paypallogo.disabled {
  opacity: .5;
  cursor: not-allowed;
}

@media print, screen and (min-width: 48em) {
  .horizontalRelatedProducts .productWidget li {
    float: left;
    width: 20%;
    border: none;
    clear: none;
  }
  .horizontalRelatedProducts .productWidget li.widgetHeader {
    padding: 5px !important;
    text-align: left;
    width: auto;
    float: none;
  }
}

#PaymentButton span {
  display: block;
  font-size: 1.42857rem;
}

@media screen and (max-width: 47.9375em) {
  .pasteArea {
    margin-top: 0.71429rem;
  }
}

.input-group-label.unit-label {
  border: none;
  background: none;
}

/* Customize the label (the container) */
.radio-container {
  display: block;
  position: relative;
  padding-left: 35px;
  margin-bottom: 12px;
  cursor: pointer;
  font-size: 16px;
  -webkit-user-select: none;
  -moz-user-select: none;
  -ms-user-select: none;
  user-select: none;
}

/* Hide the browser's default radio button */
.radio-container input {
  position: absolute;
  opacity: 0;
  cursor: pointer;
  height: 0;
  width: 0;
}

/* Create a custom radio button */
.checkmark {
  position: absolute;
  top: 0;
  left: 0;
  height: 20px;
  width: 20px;
  background-color: #eee;
  border-radius: 25%;
}

/* On mouse-over, add a grey background color */
.radio-container:hover input ~ .checkmark {
  background-color: #ccc;
}

/* When the radio button is checked, add a blue background */
.radio-container input:checked ~ .checkmark {
  background-color: darkorange;
}

/* Create the indicator (the dot/circle - hidden when not checked) */
.checkmark:after {
  content: "";
  position: absolute;
  display: none;
}

/* Show the indicator (dot/circle) when checked */
.radio-container input:checked ~ .checkmark:after {
  display: block;
}

/* Style the indicator (dot/circle) */
.radio-container .checkmark:after {
  top: 6px;
  left: 6px;
  width: 8px;
  height: 8px;
  border-radius: 50%;
  background: white;
}

:-ms-input-placeholder {
  color: #ccc !important;
  font-weight: 400 !important;
}

select {
  -webkit-appearance: none;
}

.fa {
  font-family: FontAwesome !important;
}

/*Logo*/
.rapidLogo {
  width: 116px;
  height: 40px;
  display: inline-block;
  background: url("//static.rapidonline.com/css/sprites/4.7.1/sprite.sprite.png") -2312px -10px no-repeat;
}

@media screen and (min-width: 64em) {
  .rapidLogo {
    width: 147px;
    height: 38px;
    display: inline-block;
    background: url("//static.rapidonline.com/css/sprites/4.7.1/sprite.sprite.png") -2155px -10px no-repeat;
  }
}

/*End Logo*/
.home3Col {
  background: #EEE;
  margin-top: 0.71429rem;
  margin-bottom: 1.42857rem;
}

.home3Col .home3ColSection {
  padding: 1.07143rem 2.14286rem;
  margin: 1.07143rem 0;
  background: #fefefe;
}

.home3Col .home3ColSection.punchout-contact {
  padding-left: 1rem;
  padding-right: 1rem;
}

.home3Col .home3ColSection .punchout_contacts-wrap .punchout_contacts-item {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  margin-top: 1rem;
}

@media print, screen and (min-width: 64em) {
  .home3Col .home3ColSection .punchout_contacts-wrap .punchout_contacts-item {
    -webkit-box-orient: horizontal;
    -webkit-box-direction: normal;
        -ms-flex-direction: row;
            flex-direction: row;
    -webkit-box-align: start;
        -ms-flex-align: start;
            align-items: flex-start;
  }
}

.home3Col .home3ColSection .punchout_contacts-wrap .punchout_contacts-item .punchout_contact-img {
  width: 50%;
}

@media print, screen and (min-width: 64em) {
  .home3Col .home3ColSection .punchout_contacts-wrap .punchout_contacts-item .punchout_contact-img {
    width: 35%;
  }
}

.home3Col .home3ColSection .punchout_contacts-wrap .punchout_contacts-item .punchout_contact-details {
  width: 100%;
  text-align: center;
  margin-top: 1rem;
}

.home3Col .home3ColSection .punchout_contacts-wrap .punchout_contacts-item .punchout_contact-details .grey-text {
  font-weight: bolder;
}

@media print, screen and (min-width: 64em) {
  .home3Col .home3ColSection .punchout_contacts-wrap .punchout_contacts-item .punchout_contact-details {
    text-align: left;
    margin-top: 0;
    margin-left: 1rem;
    width: calc(65% - 1rem);
  }
}

.home3Col ul {
  list-style-type: none;
}

.home3Col ul li {
  font-weight: 700;
  padding: 10px 0;
  margin: 20px 0;
  font-size: 15px;
  line-height: 20px;
  color: #000;
  display: block;
}

.home3Col ul a {
  color: #000;
  font-size: 15px;
  line-height: 20px;
}

ul.rapidBenefits {
  margin-left: 3px;
}

ul.rapidBenefits li:before {
  font-family: FontAwesome;
  margin: 0 3px 0 -2px;
  content: "\f00c";
  color: #063c7c;
}

.blackLargeHeadingH1 {
  margin-top: 0.71429rem;
  background: #313131;
  padding: 1.07143rem;
  border-radius: 4px;
  text-align: center;
  color: #fefefe;
}

.blackLargeHeadingH1 a {
  color: #fefefe;
}

.blackLargeHeadingH1 a:hover {
  text-decoration: underline;
}

.blackLargeHeading {
  color: #000;
  margin: 5px;
  line-height: 24px;
  font-size: 20px;
  font-weight: 700;
  text-align: center;
}

table.quickOrderWidget {
  table-layout: fixed;
}

table.quickOrderWidget tbody, table.quickOrderWidget tfoot, table.quickOrderWidget thead {
  border: none;
  background: none;
}

table.quickOrderWidget tbody tr {
  border-bottom: 0;
}

table.quickOrderWidget tr td:first-child {
  width: 60%;
}

table.quickOrderWidget tr td:first-child input {
  width: 90%;
}

table.quickOrderWidget td {
  padding: 0px;
}

table.quickOrderWidget td input {
  border: 1px solid #ccc;
  padding: 5px;
  font-size: 14px;
  line-height: 16px;
}

@media print, screen and (min-width: 48em) {
  .homeNewsSection {
    border-right: 1px solid #e8e5e5;
  }
}

.homeNewsSection img {
  margin-bottom: 0.71429rem;
  margin-top: 0.35714rem;
  display: block;
}

.sectionHeader {
  margin-top: 1.07143rem;
}

.sectionHeader a {
  color: black;
}

.home2Col img {
  width: 100%;
}

.home-rightAdverts a {
  display: block;
}

.home-rightAdverts a:first-child {
  margin-bottom: 1.42857rem;
}

/*# sourceMappingURL=data:application/json;charset=utf8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIjEuY3NzIiwiLi4vdGhpcmQtcGFydHkvbWFnaWMtdG9vbGJveC9tYWdpYzM2MC5jc3MiLCIuLi90aGlyZC1wYXJ0eS9tYWdpYy10b29sYm94L21hZ2ljc2Nyb2xsLmNzcyIsIi4uL3RoaXJkLXBhcnR5L21hZ2ljLXRvb2xib3gvbWFnaWN6b29tcGx1cy5jc3MiLCJnbG9iYWwvX3NldHRpbmdzLnNjc3MiLCIuLi90aGlyZC1wYXJ0eS9mb3VuZGF0aW9uX2NvbXBvbmVudHMvZm91bmRhdGlvbi1zaXRlcy9zY3NzL2ZvdW5kYXRpb24uc2NzcyIsIi4uL3RoaXJkLXBhcnR5L2ZvdW5kYXRpb25fY29tcG9uZW50cy9mb3VuZGF0aW9uLXNpdGVzL3Njc3MvdXRpbC9fYnJlYWtwb2ludC5zY3NzIiwiLi4vdGhpcmQtcGFydHkvZm91bmRhdGlvbl9jb21wb25lbnRzL2ZvdW5kYXRpb24tc2l0ZXMvc2Nzcy9jb21wb25lbnRzL19yZXZlYWwuc2NzcyIsIi4uL3RoaXJkLXBhcnR5L2ZvdW5kYXRpb25fY29tcG9uZW50cy9mb3VuZGF0aW9uLXNpdGVzL192ZW5kb3Ivbm9ybWFsaXplLXNjc3Mvc2Fzcy9ub3JtYWxpemUvX25vcm1hbGl6ZS1taXhpbi5zY3NzIiwiLi4vdGhpcmQtcGFydHkvZm91bmRhdGlvbl9jb21wb25lbnRzL2ZvdW5kYXRpb24tc2l0ZXMvX3ZlbmRvci9ub3JtYWxpemUtc2Nzcy9zYXNzL25vcm1hbGl6ZS9fdmFyaWFibGVzLnNjc3MiLCIuLi90aGlyZC1wYXJ0eS9mb3VuZGF0aW9uX2NvbXBvbmVudHMvZm91bmRhdGlvbi1zaXRlcy9fdmVuZG9yL25vcm1hbGl6ZS1zY3NzL3Nhc3Mvbm9ybWFsaXplL192ZXJ0aWNhbC1yaHl0aG0uc2NzcyIsIi4uL3RoaXJkLXBhcnR5L2ZvdW5kYXRpb25fY29tcG9uZW50cy9mb3VuZGF0aW9uLXNpdGVzL3Njc3MvX2dsb2JhbC5zY3NzIiwiLi4vdGhpcmQtcGFydHkvZm91bmRhdGlvbl9jb21wb25lbnRzL2ZvdW5kYXRpb24tc2l0ZXMvc2Nzcy91dGlsL19taXhpbnMuc2NzcyIsIi4uL3RoaXJkLXBhcnR5L2ZvdW5kYXRpb25fY29tcG9uZW50cy9mb3VuZGF0aW9uLXNpdGVzL3Njc3MvZ3JpZC9fY2xhc3Nlcy5zY3NzIiwiLi4vdGhpcmQtcGFydHkvZm91bmRhdGlvbl9jb21wb25lbnRzL2ZvdW5kYXRpb24tc2l0ZXMvc2Nzcy9ncmlkL19yb3cuc2NzcyIsIi4uL3RoaXJkLXBhcnR5L2ZvdW5kYXRpb25fY29tcG9uZW50cy9mb3VuZGF0aW9uLXNpdGVzL3Njc3MvdXRpbC9fdW5pdC5zY3NzIiwiLi4vdGhpcmQtcGFydHkvZm91bmRhdGlvbl9jb21wb25lbnRzL2ZvdW5kYXRpb24tc2l0ZXMvc2Nzcy9ncmlkL19ndXR0ZXIuc2NzcyIsIi4uL3RoaXJkLXBhcnR5L2ZvdW5kYXRpb25fY29tcG9uZW50cy9mb3VuZGF0aW9uLXNpdGVzL3Njc3MvZ3JpZC9fc2l6ZS5zY3NzIiwiLi4vdGhpcmQtcGFydHkvZm91bmRhdGlvbl9jb21wb25lbnRzL2ZvdW5kYXRpb24tc2l0ZXMvc2Nzcy9ncmlkL19jb2x1bW4uc2NzcyIsIi4uL3RoaXJkLXBhcnR5L2ZvdW5kYXRpb25fY29tcG9uZW50cy9mb3VuZGF0aW9uLXNpdGVzL3Njc3MvZ3JpZC9fcG9zaXRpb24uc2NzcyIsIi4uL3RoaXJkLXBhcnR5L2ZvdW5kYXRpb25fY29tcG9uZW50cy9mb3VuZGF0aW9uLXNpdGVzL3Njc3MvZ3JpZC9fbGF5b3V0LnNjc3MiLCIuLi90aGlyZC1wYXJ0eS9mb3VuZGF0aW9uX2NvbXBvbmVudHMvZm91bmRhdGlvbi1zaXRlcy9zY3NzL3R5cG9ncmFwaHkvX2Jhc2Uuc2NzcyIsIi4uL3RoaXJkLXBhcnR5L2ZvdW5kYXRpb25fY29tcG9uZW50cy9mb3VuZGF0aW9uLXNpdGVzL3Njc3MvdHlwb2dyYXBoeS9faGVscGVycy5zY3NzIiwiLi4vdGhpcmQtcGFydHkvZm91bmRhdGlvbl9jb21wb25lbnRzL2ZvdW5kYXRpb24tc2l0ZXMvc2Nzcy90eXBvZ3JhcGh5L19hbGlnbm1lbnQuc2NzcyIsIi4uL3RoaXJkLXBhcnR5L2ZvdW5kYXRpb25fY29tcG9uZW50cy9mb3VuZGF0aW9uLXNpdGVzL3Njc3MvdHlwb2dyYXBoeS9fcHJpbnQuc2NzcyIsIi4uL3RoaXJkLXBhcnR5L2ZvdW5kYXRpb25fY29tcG9uZW50cy9mb3VuZGF0aW9uLXNpdGVzL3Njc3MvY29tcG9uZW50cy9fYnV0dG9uLnNjc3MiLCIuLi90aGlyZC1wYXJ0eS9mb3VuZGF0aW9uX2NvbXBvbmVudHMvZm91bmRhdGlvbi1zaXRlcy9zY3NzL2Zvcm1zL190ZXh0LnNjc3MiLCIuLi90aGlyZC1wYXJ0eS9mb3VuZGF0aW9uX2NvbXBvbmVudHMvZm91bmRhdGlvbi1zaXRlcy9zY3NzL2Zvcm1zL19jaGVja2JveC5zY3NzIiwiLi4vdGhpcmQtcGFydHkvZm91bmRhdGlvbl9jb21wb25lbnRzL2ZvdW5kYXRpb24tc2l0ZXMvc2Nzcy9mb3Jtcy9fbGFiZWwuc2NzcyIsIi4uL3RoaXJkLXBhcnR5L2ZvdW5kYXRpb25fY29tcG9uZW50cy9mb3VuZGF0aW9uLXNpdGVzL3Njc3MvZm9ybXMvX2hlbHAtdGV4dC5zY3NzIiwiLi4vdGhpcmQtcGFydHkvZm91bmRhdGlvbl9jb21wb25lbnRzL2ZvdW5kYXRpb24tc2l0ZXMvc2Nzcy9mb3Jtcy9faW5wdXQtZ3JvdXAuc2NzcyIsIi4uL3RoaXJkLXBhcnR5L2ZvdW5kYXRpb25fY29tcG9uZW50cy9mb3VuZGF0aW9uLXNpdGVzL3Njc3MvZm9ybXMvX2ZpZWxkc2V0LnNjc3MiLCIuLi90aGlyZC1wYXJ0eS9mb3VuZGF0aW9uX2NvbXBvbmVudHMvZm91bmRhdGlvbi1zaXRlcy9zY3NzL2Zvcm1zL19zZWxlY3Quc2NzcyIsIi4uL3RoaXJkLXBhcnR5L2ZvdW5kYXRpb25fY29tcG9uZW50cy9mb3VuZGF0aW9uLXNpdGVzL3Njc3MvZm9ybXMvX2Vycm9yLnNjc3MiLCIuLi90aGlyZC1wYXJ0eS9mb3VuZGF0aW9uX2NvbXBvbmVudHMvZm91bmRhdGlvbi1zaXRlcy9zY3NzL2NvbXBvbmVudHMvX2FjY29yZGlvbi5zY3NzIiwiLi4vdGhpcmQtcGFydHkvZm91bmRhdGlvbl9jb21wb25lbnRzL2ZvdW5kYXRpb24tc2l0ZXMvc2Nzcy9jb21wb25lbnRzL19hY2NvcmRpb24tbWVudS5zY3NzIiwiLi4vdGhpcmQtcGFydHkvZm91bmRhdGlvbl9jb21wb25lbnRzL2ZvdW5kYXRpb24tc2l0ZXMvc2Nzcy9jb21wb25lbnRzL19tZW51LnNjc3MiLCIuLi90aGlyZC1wYXJ0eS9mb3VuZGF0aW9uX2NvbXBvbmVudHMvZm91bmRhdGlvbi1zaXRlcy9zY3NzL2NvbXBvbmVudHMvX2JhZGdlLnNjc3MiLCIuLi90aGlyZC1wYXJ0eS9mb3VuZGF0aW9uX2NvbXBvbmVudHMvZm91bmRhdGlvbi1zaXRlcy9zY3NzL2NvbXBvbmVudHMvX2JyZWFkY3J1bWJzLnNjc3MiLCIuLi90aGlyZC1wYXJ0eS9mb3VuZGF0aW9uX2NvbXBvbmVudHMvZm91bmRhdGlvbi1zaXRlcy9zY3NzL2NvbXBvbmVudHMvX2J1dHRvbi1ncm91cC5zY3NzIiwiLi4vdGhpcmQtcGFydHkvZm91bmRhdGlvbl9jb21wb25lbnRzL2ZvdW5kYXRpb24tc2l0ZXMvc2Nzcy9jb21wb25lbnRzL19jYWxsb3V0LnNjc3MiLCIuLi90aGlyZC1wYXJ0eS9mb3VuZGF0aW9uX2NvbXBvbmVudHMvZm91bmRhdGlvbi1zaXRlcy9zY3NzL2NvbXBvbmVudHMvX2NhcmQuc2NzcyIsIi4uL3RoaXJkLXBhcnR5L2ZvdW5kYXRpb25fY29tcG9uZW50cy9mb3VuZGF0aW9uLXNpdGVzL3Njc3MvY29tcG9uZW50cy9fY2xvc2UtYnV0dG9uLnNjc3MiLCIuLi90aGlyZC1wYXJ0eS9mb3VuZGF0aW9uX2NvbXBvbmVudHMvZm91bmRhdGlvbi1zaXRlcy9zY3NzL2NvbXBvbmVudHMvX21lbnUtaWNvbi5zY3NzIiwiLi4vdGhpcmQtcGFydHkvZm91bmRhdGlvbl9jb21wb25lbnRzL2ZvdW5kYXRpb24tc2l0ZXMvc2Nzcy9jb21wb25lbnRzL19kcmlsbGRvd24uc2NzcyIsIi4uL3RoaXJkLXBhcnR5L2ZvdW5kYXRpb25fY29tcG9uZW50cy9mb3VuZGF0aW9uLXNpdGVzL3Njc3MvY29tcG9uZW50cy9fZHJvcGRvd24uc2NzcyIsIi4uL3RoaXJkLXBhcnR5L2ZvdW5kYXRpb25fY29tcG9uZW50cy9mb3VuZGF0aW9uLXNpdGVzL3Njc3MvY29tcG9uZW50cy9fZHJvcGRvd24tbWVudS5zY3NzIiwiLi4vdGhpcmQtcGFydHkvZm91bmRhdGlvbl9jb21wb25lbnRzL2ZvdW5kYXRpb24tc2l0ZXMvc2Nzcy9jb21wb25lbnRzL19yZXNwb25zaXZlLWVtYmVkLnNjc3MiLCIuLi90aGlyZC1wYXJ0eS9mb3VuZGF0aW9uX2NvbXBvbmVudHMvZm91bmRhdGlvbi1zaXRlcy9zY3NzL3V0aWwvX21hdGguc2NzcyIsIi4uL3RoaXJkLXBhcnR5L2ZvdW5kYXRpb25fY29tcG9uZW50cy9mb3VuZGF0aW9uLXNpdGVzL3Njc3MvY29tcG9uZW50cy9fbGFiZWwuc2NzcyIsIi4uL3RoaXJkLXBhcnR5L2ZvdW5kYXRpb25fY29tcG9uZW50cy9mb3VuZGF0aW9uLXNpdGVzL3Njc3MvY29tcG9uZW50cy9fbWVkaWEtb2JqZWN0LnNjc3MiLCIuLi90aGlyZC1wYXJ0eS9mb3VuZGF0aW9uX2NvbXBvbmVudHMvZm91bmRhdGlvbi1zaXRlcy9zY3NzL2NvbXBvbmVudHMvX29mZi1jYW52YXMuc2NzcyIsIi4uL3RoaXJkLXBhcnR5L2ZvdW5kYXRpb25fY29tcG9uZW50cy9mb3VuZGF0aW9uLXNpdGVzL3Njc3MvY29tcG9uZW50cy9fb3JiaXQuc2NzcyIsIi4uL3RoaXJkLXBhcnR5L2ZvdW5kYXRpb25fY29tcG9uZW50cy9mb3VuZGF0aW9uLXNpdGVzL3Njc3MvY29tcG9uZW50cy9fcGFnaW5hdGlvbi5zY3NzIiwiLi4vdGhpcmQtcGFydHkvZm91bmRhdGlvbl9jb21wb25lbnRzL2ZvdW5kYXRpb24tc2l0ZXMvc2Nzcy9jb21wb25lbnRzL19wcm9ncmVzcy1iYXIuc2NzcyIsIi4uL3RoaXJkLXBhcnR5L2ZvdW5kYXRpb25fY29tcG9uZW50cy9mb3VuZGF0aW9uLXNpdGVzL3Njc3MvY29tcG9uZW50cy9fc2xpZGVyLnNjc3MiLCIuLi90aGlyZC1wYXJ0eS9mb3VuZGF0aW9uX2NvbXBvbmVudHMvZm91bmRhdGlvbi1zaXRlcy9zY3NzL2NvbXBvbmVudHMvX3N0aWNreS5zY3NzIiwiZ2xvYmFsL19nbG9iYWwuc2NzcyIsIi4uL3RoaXJkLXBhcnR5L2ZvdW5kYXRpb25fY29tcG9uZW50cy9mb3VuZGF0aW9uLXNpdGVzL3Njc3MvY29tcG9uZW50cy9fdGFibGUuc2NzcyIsIi4uL3RoaXJkLXBhcnR5L2ZvdW5kYXRpb25fY29tcG9uZW50cy9mb3VuZGF0aW9uLXNpdGVzL3Njc3MvdXRpbC9fY29sb3Iuc2NzcyIsIi4uL3RoaXJkLXBhcnR5L2ZvdW5kYXRpb25fY29tcG9uZW50cy9mb3VuZGF0aW9uLXNpdGVzL3Njc3MvY29tcG9uZW50cy9fdGFicy5zY3NzIiwiLi4vdGhpcmQtcGFydHkvZm91bmRhdGlvbl9jb21wb25lbnRzL2ZvdW5kYXRpb24tc2l0ZXMvc2Nzcy9jb21wb25lbnRzL190aHVtYm5haWwuc2NzcyIsIi4uL3RoaXJkLXBhcnR5L2ZvdW5kYXRpb25fY29tcG9uZW50cy9mb3VuZGF0aW9uLXNpdGVzL3Njc3MvY29tcG9uZW50cy9fdGl0bGUtYmFyLnNjc3MiLCIuLi90aGlyZC1wYXJ0eS9mb3VuZGF0aW9uX2NvbXBvbmVudHMvZm91bmRhdGlvbi1zaXRlcy9zY3NzL2NvbXBvbmVudHMvX3Rvb2x0aXAuc2NzcyIsIi4uL3RoaXJkLXBhcnR5L2ZvdW5kYXRpb25fY29tcG9uZW50cy9mb3VuZGF0aW9uLXNpdGVzL3Njc3MvY29tcG9uZW50cy9fdG9wLWJhci5zY3NzIiwiLi4vdGhpcmQtcGFydHkvZm91bmRhdGlvbl9jb21wb25lbnRzL2ZvdW5kYXRpb24tc2l0ZXMvc2Nzcy9jb21wb25lbnRzL192aXNpYmlsaXR5LnNjc3MiLCIuLi90aGlyZC1wYXJ0eS9mb3VuZGF0aW9uX2NvbXBvbmVudHMvZm91bmRhdGlvbi1zaXRlcy9zY3NzL2NvbXBvbmVudHMvX2Zsb2F0LnNjc3MiLCIuLi90aGlyZC1wYXJ0eS9mb3VuZGF0aW9uX2NvbXBvbmVudHMvbW90aW9uLXVpL3NyYy91dGlsL190cmFuc2l0aW9uLnNjc3MiLCIuLi90aGlyZC1wYXJ0eS9mb3VuZGF0aW9uX2NvbXBvbmVudHMvbW90aW9uLXVpL3NyYy9fY2xhc3Nlcy5zY3NzIiwiLi4vdGhpcmQtcGFydHkvZm91bmRhdGlvbl9jb21wb25lbnRzL21vdGlvbi11aS9zcmMvX3NldHRpbmdzLnNjc3MiLCIuLi90aGlyZC1wYXJ0eS9mb3VuZGF0aW9uX2NvbXBvbmVudHMvbW90aW9uLXVpL3NyYy91dGlsL19rZXlmcmFtZS5zY3NzIiwiLi4vdGhpcmQtcGFydHkvZm91bmRhdGlvbl9jb21wb25lbnRzL21vdGlvbi11aS9zcmMvdHJhbnNpdGlvbnMvX3NsaWRlLnNjc3MiLCIuLi90aGlyZC1wYXJ0eS9mb3VuZGF0aW9uX2NvbXBvbmVudHMvbW90aW9uLXVpL3NyYy90cmFuc2l0aW9ucy9fZmFkZS5zY3NzIiwiLi4vdGhpcmQtcGFydHkvZm91bmRhdGlvbl9jb21wb25lbnRzL21vdGlvbi11aS9zcmMvZWZmZWN0cy9faGluZ2Uuc2NzcyIsIi4uL3RoaXJkLXBhcnR5L2ZvdW5kYXRpb25fY29tcG9uZW50cy9tb3Rpb24tdWkvc3JjL3RyYW5zaXRpb25zL19oaW5nZS5zY3NzIiwiLi4vdGhpcmQtcGFydHkvZm91bmRhdGlvbl9jb21wb25lbnRzL21vdGlvbi11aS9zcmMvdHJhbnNpdGlvbnMvX3pvb20uc2NzcyIsIi4uL3RoaXJkLXBhcnR5L2ZvdW5kYXRpb25fY29tcG9uZW50cy9tb3Rpb24tdWkvc3JjL3RyYW5zaXRpb25zL19zcGluLnNjc3MiLCIuLi90aGlyZC1wYXJ0eS9mb3VuZGF0aW9uX2NvbXBvbmVudHMvbW90aW9uLXVpL3NyYy91dGlsL19hbmltYXRpb24uc2NzcyIsIi4uLy4uL3Nwcml0ZXMvc3ByaXRlLnNwcml0ZS5zY3NzIiwiZ2xvYmFsL2Jhc2UvX3Nwcml0ZS5zY3NzIiwiZ2xvYmFsL2Jhc2UvX3N0eWxlRml4ZXMuc2NzcyIsImdsb2JhbC9iYXNlL19vdmVybGF5LnNjc3MiLCJnbG9iYWwvYmFzZS9fcG9wdXAuc2NzcyIsImdsb2JhbC9iYXNlL19vbGRDb2xvckNsYXNzZXMuc2NzcyIsImdsb2JhbC9iYXNlL19icmVhZGNydW1icy5zY3NzIiwiZ2xvYmFsL21vZHVsZS9fYnJlYWRjcnVtYi5zY3NzIiwiZ2xvYmFsL21vZHVsZS9fbWVudXMuc2NzcyIsImdsb2JhbC9tb2R1bGUvX2dsb2JhbEJ1aWxkaW5nQmxvY2tzLnNjc3MiLCJnbG9iYWwvbW9kdWxlL19mb3JtRWxlbWVudHMuc2NzcyIsImdsb2JhbC9tb2R1bGUvX21haW5JbWFnZS5zY3NzIiwiZ2xvYmFsL21vZHVsZS9fcmV2aWV3U3RhcnMuc2NzcyIsImdsb2JhbC9tb2R1bGUvX3ByaWNlVGFibGUuc2NzcyIsImdsb2JhbC9tb2R1bGUvX3F1aWNrQXR0cmlidXRlcy5zY3NzIiwiZ2xvYmFsL21vZHVsZS9fcHJvZHVjdFdpZGdldC5zY3NzIiwiZ2xvYmFsL21vZHVsZS9fcHJvZHVjdC10aWxlLnNjc3MiLCJnbG9iYWwvbW9kdWxlL19wcm9kdWN0Um93cy5zY3NzIiwiZ2xvYmFsL21vZHVsZS9fYXR0cmlidXRlRmlsdGVycy5zY3NzIiwiZ2xvYmFsL21vZHVsZS9fc2VhcmNoUGFnaW5hdGlvbi5zY3NzIiwiZ2xvYmFsL21vZHVsZS9fc2VhcmNoVGllcnMuc2NzcyIsImdsb2JhbC9tb2R1bGUvX3NlYXJjaEF0dHJpYnV0ZXNUYWJsZS5zY3NzIiwiZ2xvYmFsL21vZHVsZS9fYmFza2V0SXRlbXMuc2NzcyIsImdsb2JhbC9tb2R1bGUvX2FkZHJlc3Nlc0Jsb2NrLnNjc3MiLCJnbG9iYWwvbW9kdWxlL19ub3RpZmljYXRpb25zUGFuZWwuc2NzcyIsImdsb2JhbC9tb2R1bGUvX3JlY2VudE9yZGVycy5zY3NzIiwiZ2xvYmFsL21vZHVsZS9fc2xpZGVyLnNjc3MiLCJnbG9iYWwvbGF5b3V0L19jaGFuZ2VTaXRlUG9wdXAuc2NzcyIsImdsb2JhbC9sYXlvdXQvX2FkZGVkVG9CYXNrZXRQb3B1cC5zY3NzIiwiZ2xvYmFsL2xheW91dC9fY3VycmVuY3lQb3B1cC5zY3NzIiwiZ2xvYmFsL2xheW91dC9fY29va2llLXBvbGljeS5zY3NzIiwiZ2xvYmFsL2xheW91dC9fbWFpbk5hdi5zY3NzIiwiZ2xvYmFsL2xheW91dC9fZm9vdGVyTmF2LnNjc3MiLCJnbG9iYWwvbGF5b3V0L19oZWFkZXIuc2NzcyIsImdsb2JhbC9sYXlvdXQvX2xpdmUtY2hhdC5zY3NzIiwiZ2xvYmFsL2xheW91dC9fc2VhcmNoU3VnZ2VzdGlvbnMuc2NzcyIsImdsb2JhbC9sYXlvdXQvX215QWNjb3VudC5zY3NzIiwiZ2xvYmFsL2xheW91dC9fZ2xvYmFsQWRtaW4uc2NzcyIsImdsb2JhbC9sYXlvdXQvX29yZGVycy5zY3NzIiwiZ2xvYmFsL2xheW91dC9fcHJvbW90aW9ucy5zY3NzIiwiZ2xvYmFsL2xheW91dC9fc2t1LnNjc3MiLCJnbG9iYWwvbGF5b3V0L19zdG9jay1tZXNzYWdlLWluZm8uc2NzcyIsImdsb2JhbC9sYXlvdXQvX3RpZXIuc2NzcyIsImdsb2JhbC9sYXlvdXQvX3Rhc2tMaXN0LnNjc3MiLCJnbG9iYWwvbGF5b3V0L19zZWFyY2guc2NzcyIsImdsb2JhbC9sYXlvdXQvX2NvbXBhcmUuc2NzcyIsImdsb2JhbC9sYXlvdXQvX3NpZ25Jbi5zY3NzIiwiZ2xvYmFsL2xheW91dC9fYnJhbmRzLnNjc3MiLCJnbG9iYWwvbGF5b3V0L19xdW90ZVBhZ2Uuc2NzcyIsImdsb2JhbC9sYXlvdXQvX2Jhc2tldC5zY3NzIiwiZ2xvYmFsL2xheW91dC9fY3V0UGFzdGUuc2NzcyIsImdsb2JhbC9sYXlvdXQvX2J1eUFyZWEuc2NzcyIsImdsb2JhbC9sYXlvdXQvX3JldHVybnMtZXJyb3JzLnNjc3MiLCJlbGVjdHJvbmljcy9zdHlsZXNoZWV0cy9faGVhZGVyLnNjc3MiLCJlbGVjdHJvbmljcy9zdHlsZXNoZWV0cy9faG9tZS5zY3NzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLGdCQUFnQjtBQ0FoQjs7Ozs7Ozs7O0NEVUM7QUNBRDtFQUNJLHVCQUF1QjtFQUN2QixtQkFBbUI7RUFDbkIsa0JBQWtCO0VBQ2xCLGtGQUFrRjtBREV0Rjs7QUNDQTtFQUNJLHVCQUF1QjtFQUN2Qiw2MGFBQTYwYTtBREVqMWE7O0FDR0EsU0FBQTtBQUNBOztFQUVJLHlCQUF5QjtFQUN6QiwwQ0FBa0M7VUFBbEMsa0NBQWtDO0FEQXRDOztBQ0dBOztFQUVJLG9CQUFvQjtBREF4Qjs7QUNHQTtFQUNJLHFCQUFxQjtFQUNyQixxQkFBcUI7RUFDckIscUJBQXFCO0VBQ3JCLHVCQUF1QjtFQUN2Qiw0QkFBNEI7RUFDNUIsZUFBZTtBREFuQjs7QUNHQTtFQUNJLDZCQUE2QjtFQUM3QixlQUFlO0VBQ2Ysa0JBQWtCO0VBQ2xCLFVBQVU7QURBZDs7QUNHQTtFQUNJLGdDQUFnQztFQUNoQyxzQkFBc0I7RUFDdEIsc0JBQWtCO01BQWxCLGtCQUFrQjtBREF0Qjs7QUNHQTtFQUNJLHVCQUFtQjtNQUFuQixtQkFBbUI7QURBdkI7O0FDR0E7RUFDSSx1QkFBbUI7TUFBbkIsbUJBQW1CO0FEQXZCOztBQ0dBO0VBQ0ksZUFBZTtFQUNmLHVCQUF1QjtFQUV2QixlQUFlO0FEQW5COztBQ0dBO0VBQ0ksb0JBQW9CO0VBQ3BCLHFCQUFxQjtFQUNyQixvQkFBb0I7RUFDcEIsWUFBWTtBREFoQjs7QUNHQTtFQUNJLFdBQVc7QURBZjs7QUNHQSxxQkFBQTtBQUNBO0VBQ0kseUJBQXlCO0VBQ3pCLDZDQUE2QztFQUM3QyxlQUFlO0VBQ2YsMkJBQTJCO0VBQzNCLHdDQUF3QztFQUN4QyxtREFBbUQ7RUFDbkQsMkJBQTJCO0VBQzNCLG1DQUEyQjtVQUEzQiwyQkFBMkI7RUFDM0IsNkJBQTZCO0VBQzdCLCtCQUErQjtFQUMvQixrQkFBa0I7RUFDbEIsV0FBVztFQUNYLHNCQUFzQjtFQUN0Qix1QkFBdUI7RUFDdkIsdUJBQXVCO0VBQ3ZCLHdCQUF3QjtFQUN4QiwwQkFBMEI7RUFDMUIsMkJBQTJCO0VBQzNCLG9CQUFvQjtFQUNwQixxQkFBcUI7RUFDckIscUJBQXFCO0VBQ3JCLG1DQUFtQztFQUNuQyxrQ0FBa0M7QURBdEM7O0FDR0E7O0VBRUksc0JBQXNCO0VBQ3RCLHdDQUF3QztBREE1Qzs7QUNHQTtFQUNJLDBCQUEwQjtFQUMxQiwyQkFBMkI7RUFDM0IseUJBQXlCO0VBQ3pCLHdCQUF3QjtFQUN4QiwwQ0FBMEM7RUFDMUMsMkNBQTJDO0FEQS9DOztBQ0dBOztFQUVJLGlCQUFpQjtFQUNqQixtQkFBbUI7QURBdkI7O0FDR0E7RUFDSSxzQkFBc0I7RUFDdEIsdUJBQXVCO0FEQTNCOztBQ0dBO0VBQ0ksZ0JBQWdCO0FEQXBCOztBQ0dBO0VBQ0ksZ0JBQWdCO0FEQXBCOztBQ0dBO0VBQ0ksU0FBUztFQUNULHlCQUF5QjtBREE3Qjs7QUNHQTtFQUNJLDBCQUEwQjtBREE5Qjs7QUNJQTtFQUNJLGtCQUFrQjtBRER0Qjs7QUNJQTtFQUNJLHNCQUFzQjtBREQxQjs7QUNJQTtFQUNJLGdCQUFnQjtFQUNoQiw4QkFBOEI7QUREbEM7O0FDVEE7RUFjSSxzQkFBc0I7RUFDdEIsdUJBQXVCO0VBQ3ZCLGlCQUFpQjtFQUNqQixrQkFBa0I7RUFDbEIsOENBQThDO0VBQzlDLHNDQUFzQztBREQxQzs7QUNJQTtFQUNJLHNCQUFzQjtFQUN0Qix1QkFBdUI7RUFDdkIsaUJBQWlCO0VBQ2pCLGtCQUFrQjtBRER0Qjs7QUNJQTtFQUNJLFdBQVc7RUFDWCxxQkFBcUI7RUFDckIsWUFBWTtFQUNaLHNCQUFzQjtBREQxQjs7QUNJQTtFQUNJLGdDQUFnQztFQUNoQyxzQkFBc0I7QUREMUI7O0FDSUE7RUFDSSx5QkFBeUI7RUFDekIsc0JBQXNCO0VBQ3RCLHlCQUF5QjtFQUN6QixjQUFjO0VBQ2QsZUFBZTtFQUNmLFdBQVc7RUFDWCxnQkFBZ0I7RUFDaEIsWUFBWTtFQUNaLGtCQUFrQjtFQUNsQixrQkFBa0I7RUFDbEIsUUFBUTtFQUNSLFVBQVU7RUFDVixTQUFTO0VBQ1QsWUFBWTtFQUNaLGlDQUF5QjtVQUF6Qix5QkFBeUI7RUFDekIseUJBQXlCO0VBQ3pCLG1CQUFtQjtBRER2Qjs7QUNJQTtFQUNJLGVBQWU7RUFDZix5QkFBeUI7RUFDekIsd0NBQXdDO0VBQ3hDLGtCQUFrQjtFQUNsQixXQUFXO0VBQ1gsU0FBUztBRERiOztBQ0tBOztFRERFO0FDSUY7O0VBRUksa0NBQWtDO0VBQ2xDLFdBQVc7RUFDWCx1SEFBdUg7RUFDdkgscUJBQXFCO0FERnpCOztBQ0tBOztFQUVJLGNBQWM7RUFDZCxrQkFBa0I7RUFDbEIscUJBQXFCO0VBQ3JCLFNBQVM7RUFDVCxrQkFBa0I7RUFDbEIsYUFBYTtFQUNiLG9CQUFvQjtFQUNwQixtQ0FBbUM7RUFDbkMsa0NBQWtDO0VBQ2xDLHNDQUFzQztFQUN0Qyw4QkFBOEI7QURGbEM7O0FDS0E7RUFDSSxXQUFXO0VBQ1gsT0FBTztFQUNQLFFBQVE7RUFDUixjQUFjO0VBQ2QsMERBQTBEO0VBQzFELGtEQUFrRDtBREZ0RDs7QUNLQTtFQUNJLHFCQUFxQjtFQUNyQixrQkFBa0I7RUFDbEIsbUJBQW1CO0VBQ25CLGVBQWU7RUFDZixnQkFBZ0I7QURGcEI7O0FDS0E7RUFDSSxXQUFXO0VBQ1gsKzJKQUErMko7RUFDLzJKLG1zZkFBcXNmO0VBQ3JzZixXQUFXO0VBQ1gsWUFBWTtFQUNaLHFCQUFxQjtFQUNyQixXQUFXO0VBQ1gsa0JBQWtCO0VBQ2xCLHNCQUFzQjtFQUN0QixpQkFBaUI7RUFDakIsc0NBQXNDO0VBQ3RDLDhCQUE4QjtBREZsQzs7QUNLQTtFQUNJLDBCQUEwQjtBREY5Qjs7QUNLQTtFQUNJLDBCQUEwQjtBREY5Qjs7QUNLQTtFQUNJLG1CQUFtQjtFQUNuQixZQUFZO0VBQ1osVUFBVTtFQUNWLFVBQVU7RUFDVixXQUFXO0VBQ1gsWUFBWTtFQUNaLFNBQVM7RUFDVCxXQUFXO0FERmY7O0FDS0E7RUFDSSw0QkFBNEI7RUFDNUIsZUFBZTtFQUNmLGNBQWM7RUFDZCxjQUFjO0VBQ2Qsa0JBQWtCO0VBQ2xCLFFBQVE7RUFDUixtQ0FBbUM7RUFDbkMsMkJBQTJCO0FERi9COztBQ0tBO0VBQ0ksV0FBVztFQUNYLGtCQUFrQjtFQUNsQixNQUFNO0VBQ04sU0FBUztFQUNULE9BQU87RUFDUCxRQUFRO0VBQ1IsV0FBVztFQUNYLFlBQVk7RUFDWixZQUFZO0VBQ1osb0JBQW9CO0VBQ3BCLGtCQUFrQjtFQUNsQix1QkFBd0M7RUFDeEMsNkJBQTZCO0VBQzdCLDhCQUFzQjtVQUF0QixzQkFBc0I7QURGMUI7O0FDS0E7RUFDSSxVQUFVO0VBQ1YsYUFBYTtFQUNiLDhCQUE4QjtFQUM5QixzQkFBc0I7QURGMUI7O0FDS0E7RUFDSSxrREFBa0Q7RUFDbEQsMENBQTBDO0FERjlDOztBQ0tBO0VBQ0k7SUFDSSwrQkFBK0I7SUFDL0IsdUJBQXVCO0VERjdCO0VDS0U7SUFDSSxpQ0FBaUM7SUFDakMseUJBQXlCO0VESC9CO0FBQ0Y7O0FDTUE7RUFDSTtJQUNJLCtCQUErQjtJQUMvQix1QkFBdUI7RURIN0I7RUNNRTtJQUNJLGlDQUFpQztJQUNqQyx5QkFBeUI7RURKL0I7QUFDRjs7QUNPQTtFQUNJLGtCQUFrQjtFQUNsQixlQUFlO0VBQ2YsbUJBQW1CO0VBQ25CLFdBQVc7RUFDWCxZQUFZO0FESmhCOztBQ09BO0VBQ0ksYUFBYTtBREpqQjs7QUNPQTtFQUNJLDRDQUE0QztFQUM1QyxrQkFBa0I7QURKdEI7O0FDT0E7O0VBRUksa0NBQWtDO0VBQ2xDLHFIQUFxSDtBREp6SDs7QUNPQTtFQUNJLHdCQUF3QjtBREo1Qjs7QUNPQTtFQUNJLHdCQUF3QjtFQUN4QixRQUFRO0VBQ1IsT0FBTztFQUNQLFdBQVc7RUFDWCxZQUFZO0FESmhCOztBQ09BO0VBQ0ksU0FBUztFQUNULFdBQVc7QURKZjs7QUNRQSxjQUFBO0FBQ0E7O0VBRUksaUNBQXlCO1VBQXpCLHlCQUF5QjtFQUN6Qix5QkFBeUI7RUFDekIsc0JBQXNCO0VBQ3RCLFlBQVk7RUFDWixnQkFBZ0I7RUFDaEIsaUVBQWlFO0FETHJFOztBQ1FBO0VBQ0kseUJBQXlCO0FETDdCOztBQ1FBO0VBQ0ksdUJBQXVCO0FETDNCOztBQ1FBOztFQUVJLGVBQWU7RUFDZix3QkFBd0I7RUFFeEIsZ0JBQWdCO0VBQ2hCLHdCQUFnQjtVQUFoQixnQkFBZ0I7QURMcEI7O0FDUUE7RUFDSSw2QkFBNkI7RUFDN0IsMEJBQTBCO0VBQzFCLDJCQUEyQjtFQUMzQix1QkFBdUI7RUFDdkIsd0JBQXdCO0VBQ3hCLG9CQUFvQjtFQUNwQixxQkFBcUI7RUFDckIsb0JBQW9CO0VBQ3BCLHFCQUFxQjtFQUNyQiw4QkFBc0I7VUFBdEIsc0JBQXNCO0VBQ3RCLHlCQUF5QjtFQUN6QixzQkFBc0I7RUFDdEIscUJBQXFCO0VBQ3JCLGlCQUFpQjtFQUNqQiwyQkFBMkI7RUFDM0Isd0NBQXdDO0FETDVDOztBQ1FBO0VBQ0ksNkJBQTZCO0VBQzdCLGVBQWU7RUFDZixrQkFBa0I7RUFDbEIsTUFBTTtFQUNOLFVBQVU7RUFDVixXQUFXO0VBQ1gsWUFBWTtBRExoQjs7QUNRQTs7RUFFSSx5QkFBeUI7QURMN0I7O0FDUUE7RUFDSSxVQUFVO0VBQ1YsTUFBTTtFQUNOLFNBQVM7RUFDVCxPQUFPO0VBQ1AsUUFBUTtFQUNSLFlBQVk7RUFDWiw2QkFBNkI7RUFDN0IscUJBQXFCO0FETHpCOztBQ1FBO0VBQ0ksa0RBQWtEO0VBQ2xELDBDQUEwQztBREw5Qzs7QUU5ZEE7Ozs7Ozs7OztDRnllQztBRS9kRDs7Ozs7Ozs7Ozs7RUFXSSxTQUFTO0VBQ1QsVUFBVTtFQUNWLFVBQVU7RUFDViw4QkFBOEI7RUFFOUIsc0JBQXNCO0FGaWUxQjs7QUU5ZEE7Ozs7O0VBS0ksa0JBQWtCO0FGaWV0Qjs7QUU5ZEE7Ozs7RUFJSSxnQkFBZ0I7RUFDaEIsY0FBYztBRmllbEI7O0FFOWRBOztFQUVJLGlCQUFpQjtBRmllckI7O0FFOWRBO0VBQ0ksVUFBVTtFQUNWLG9CQUFvQjtFQUNwQixlQUFlO0VBQ2YsZ0JBQWdCO0VBQ2hCLFlBQVk7RUFDWixzQkFBc0I7RUFDdEIseUJBQXlCO0VBQ3pCLDJCQUEyQjtFQUMzQix3Q0FBd0M7QUZpZTVDOztBRTlkQTtFQUNJLHdCQUF3QjtFQUN4Qix1QkFBdUI7RUFDdkIsbUJBQW1CO0FGaWV2Qjs7QUU5ZEE7RUFDSSx3QkFBd0I7RUFDeEIsdUJBQXVCO0VBQ3ZCLG1CQUFtQjtBRmlldkI7O0FFOWRBO0VBQ0ksWUFBWTtFQUNaLHdCQUF3QjtFQUN4QixtQkFBbUI7RUFDbkIsb0JBQW9CO0VBQ3BCLGdCQUFnQjtBRmllcEI7O0FFOWRBOztFQUVJLGVBQWU7QUZpZW5COztBRTlkQTs7O0VBSUkscUJBQXFCO0FGZ2V6Qjs7QUU3ZEE7RUFDSSxnQ0FBZ0M7QUZnZXBDOztBRTdkQTtFQUNJLHFCQUFxQjtFQUNyQixlQUFlO0FGZ2VuQjs7QUU3ZEE7RUFDSSxrQkFBa0I7QUZnZXRCOztBRTdkQTtFQUNJLGFBQWE7QUZnZWpCOztBRTdkQTtFQUNJLGlCQUFpQjtBRmdlckI7O0FFN2RBO0VBQ0ksa0JBQWtCO0FGZ2V0Qjs7QUU3ZEE7RUFDSSxtQkFBbUI7RUFDbkIsc0JBQXNCO0FGZ2UxQjs7QUU3ZEE7OztFQUdJLGtCQUFrQjtBRmdldEI7O0FFN2RBOztFQUVJLFdBQVc7RUFDWCxxQkFBcUI7RUFDckIsbUJBQW1CO0VBQ25CLFNBQVM7QUZnZWI7O0FFN2RBO0VBQ0ksTUFBTTtFQUNOLFFBQVE7RUFDUixTQUFTO0VBQ1QsT0FBTztFQUNQLG1CQUFtQjtFQUNuQixZQUFZO0FGZ2VoQjs7QUU3ZEE7RUFDSSxrQkFBa0I7RUFDbEIsaUJBQWlCO0VBQ2pCLFdBQVc7RUFDWCxZQUFZO0FGZ2VoQjs7QUU3ZEE7RUFDSSxNQUFNO0VBQ04sT0FBTztFQUNQLE9BQU87RUFDUCx5QkFBeUI7RUFDekIsaUJBQWlCO0VBQ2pCLGVBQWU7QUZnZW5COztBRTdkQTs7RUFFSSxXQUFXO0VBQ1gscUJBQXFCO0VBQ3JCLFlBQVk7RUFDWixzQkFBc0I7QUZnZTFCOztBRTdkQTtFQUNJLFlBQVk7QUZnZWhCOztBRTdkQTtFQUNJLGNBQWM7RUFDZCxXQUFXO0FGZ2VmOztBRTdkQTs7RUFFSSxxQkFBcUI7QUZnZXpCOztBRTdkQTs7RUFFSSxZQUFZO0VBQ1osZUFBZTtFQUNmLGdCQUFnQjtBRmdlcEI7O0FFN2RBO0VBQ0ksWUFBWTtBRmdlaEI7O0FFbmtCQTtFQXVHSSxXQUFXO0VBQ1gsWUFBWTtFQUNaLHNCQUFzQjtBRmdlMUI7O0FFN2RBO0VBQ0ksa0JBQWtCO0VBQ2xCLHNCQUFzQjtFQUN0QixZQUFZO0VBQ1osU0FBUztFQUNULGVBQWU7RUFDZixnQkFBZ0I7RUFDaEIsbUJBQW1CO0FGZ2V2Qjs7QUU3ZEE7RUFDSSxnQkFBZ0I7QUZnZXBCOztBRTdkQTtFQUNJLGNBQWM7QUZnZWxCOztBRTdkQTtFQUNJLFlBQVk7QUZnZWhCOztBRTdkQTs7RUFFSSxxQkFBcUI7QUZnZXpCOztBRTdkQTtFQUNJLGVBQWU7QUZnZW5COztBRTdkQTtFQUNJLGNBQWM7QUZnZWxCOztBRTdkQTtFQUNJLHdCQUF3QjtFQUN4Qiw2QkFBNkI7QUZnZWpDOztBRTdkQTs7O0VBR0ksMkJBQTJCO0VBRTNCLHNCQUFzQjtFQUN0QixtQkFBbUI7RUFDbkIsaUNBQWlDO0VBQ2pDLGlDQUFpQztBRmdlckM7O0FFN2RBOztFQUVJLG9DQUFvQztFQUdwQyw0QkFBNEI7QUZnZWhDOztBRTdkQTtFQUNJLHFCQUFxQjtFQUNyQixrQkFBa0I7RUFDbEIsT0FBTztFQUNQLFdBQVc7RUFDWCxXQUFXO0VBQ1gsaUJBQWlCO0VBQ2pCLFdBQVc7RUFDWCxZQUFZO0FGZ2VoQjs7QUU3ZEE7OztFQUdJLFNBQVM7RUFDVCxtREFBbUQ7RUFDbkQsMkNBQTJDO0VBQzNDLDhCQUE4QjtFQUU5QixzQkFBc0I7QUZnZTFCOztBRTVkQTs7RUFFSSxZQUFZO0FGK2RoQjs7QUU1ZEE7RUFDSSxtQ0FBbUM7RUFDbkMsa0JBQWtCO0VBQ2xCLHFCQUFxQjtFQUNyQixTQUFTO0VBQ1QsVUFBVTtBRitkZDs7QUU1ZEE7RUFDSSx5cEVBQXlwRTtBRitkN3BFOztBRTNkQTs7RUYrZEU7QUU1ZEY7RUFDSSxxQkFBcUI7RUFDckIsc0JBQXNCO0VBQ3RCLGtCQUFrQjtFQUNsQixZQUFZO0FGOGRoQjs7QUUzZEE7O0VBRUksU0FBUztBRjhkYjs7QUUzZEE7O0VBRUksZ0JBQWdCO0FGOGRwQjs7QUUzZEE7O0VBRUksT0FBTztFQUNQLFdBQVc7RUFDWCxTQUFTO0VBQ1QsMENBQTBDO0VBQzFDLGtDQUEwQjtFQUExQiwwQkFBMEI7RUFBMUIsa0RBQTBCO0VBQzFCLG1DQUFtQztFQUVuQywyQkFBMkI7QUY4ZC9COztBRTNkQTs7RUFFSSxpQ0FBaUM7RUFFakMseUJBQXlCO0FGOGQ3Qjs7QUUzZEE7O0VBRUksYUFBYTtBRjhkakI7O0FFM2RBOztFQUVJLFVBQVU7QUY4ZGQ7O0FFM2RBOztFRitkRTtBRXJsQkY7RUEwSEksZUFBZTtFQUNmLGFBQWE7RUFDYiw0QkFBNEI7RUFDNUIsNkJBQTZCO0VBQzdCLFNBQVM7RUFDVCxnQkFBZ0I7RUFDaEIsdUNBQXVDO0VBQ3ZDLCtCQUErQjtBRjhkbkM7O0FFM2RBO0VBQ0ksVUFBVTtBRjhkZDs7QUUzZEE7RUFDSSxZQUFZO0FGOGRoQjs7QUUzZEE7RUFDSSxXQUFXO0VBQ1gsWUFBWTtFQUNaLE1BQU07QUY4ZFY7O0FFM2RBO0VBQ0ksV0FBVztFQUNYLFlBQVk7RUFDWixPQUFPO0FGOGRYOztBRTNkQTtFQUNJLE9BQU87RUFDUCxXQUFXO0VBQ1gsTUFBTTtFQUNOLFNBQVM7QUY4ZGI7O0FFM2RBO0VBQ0ksVUFBVTtFQUNWLFFBQVE7RUFDUixNQUFNO0VBQ04sU0FBUztBRjhkYjs7QUUzZEE7RUFDSSxNQUFNO0VBQ04sWUFBWTtFQUNaLE9BQU87RUFDUCxRQUFRO0FGOGRaOztBRTNkQTtFQUNJLFNBQVM7RUFDVCxTQUFTO0VBQ1QsT0FBTztFQUNQLFFBQVE7QUY4ZFo7O0FFM25CQTs7RUFtS0ksaUJBQWlCO0FGNmRyQjs7QUUxZEE7O0VGOGRFO0FFM2RGO0VBQ0ksa0JBQWtCO0VBQ2xCLGdDQUFnQztFQUNoQyxVQUFVO0VBQ1YsU0FBUztBRjZkYjs7QUUxZEE7RUFDSSxZQUFZO0VBR1osK0JBQXVCO0VBQXZCLHVCQUF1QjtBRjZkM0I7O0FFMWRBO0VBQ0ksV0FBVztFQUNYLE9BQU87QUY2ZFg7O0FFMWRBO0VBQ0ksTUFBTTtFQUNOLFVBQVU7RUFDVixxQkFBcUI7RUFDckIsc0JBQXNCO0FGNmQxQjs7QUUxZEE7RUFDSSxrQkFBa0I7RUFDbEIsV0FBVztFQUNYLGVBQWU7RUFDZixxQkFBcUI7RUFDckIsa0JBQWtCO0VBQ2xCLG1CQUFtQjtFQUNuQixzQkFBc0I7RUFDdEIsV0FBVztFQUNYLGtCQUFrQjtFQUNsQixhQUFhO0FGNmRqQjs7QUUxZEE7RUFDSSxlQUFlO0FGNmRuQjs7QUV6ZEE7O0VGNmRFO0FBQ0Y7O0VFemRJLGlDQUFpQztFQUNqQyx5QkFBeUI7RUFDekIsMENBQTBDO0VBQzFDLGtDQUFrQztBRjRkdEM7O0FBRUE7RUUxZEksb0VBQThEO0VBQzlELDREQUFzRDtBRjRkMUQ7O0FBRUE7RUUxZEksNkJBQTZCO0VBQzdCLHVCQUF1QjtFQUN2Qiw0QkFBb0I7VUFBcEIsb0JBQW9CO0VBQ3BCLHFCQUFxQjtBRjRkekI7O0FBRUE7RUUxZEksOEJBQThCO0VBQzlCLHNCQUFzQjtBRjRkMUI7O0FBRUE7RUUxZEksNkJBQTZCO0VBQzdCLHFCQUFxQjtBRjRkekI7O0FBRUE7RUUxZEksOEJBQThCO0VBQzlCLHNCQUFzQjtBRjRkMUI7O0FBRUE7RUUxZEksNkJBQTZCO0VBQzdCLHFCQUFxQjtBRjRkekI7O0FBRUE7RUUxZEksOEJBQThCO0VBQzlCLHNCQUFzQjtBRjRkMUI7O0FBRUE7RUUxZEksNkJBQTZCO0VBQzdCLHFCQUFxQjtBRjRkekI7O0FBRUE7RUUxZEksOEJBQThCO0VBQzlCLHNCQUFzQjtBRjRkMUI7O0FBRUE7RUUxZEksNkJBQTZCO0VBQzdCLHFCQUFxQjtBRjRkekI7O0FBRUE7RUUxZEksOEJBQThCO0VBQzlCLHNCQUFzQjtBRjRkMUI7O0FBRUE7RUUxZEksNkJBQTZCO0VBQzdCLHFCQUFxQjtBRjRkekI7O0FFemRBOztFQUVJLHVDQUF1QztFQUN2QywrQkFBK0I7QUY0ZG5DOztBRXpkQTs7RUFFSSx3Q0FBd0M7RUFDeEMsZ0NBQWdDO0FGNGRwQzs7QUV6ZEE7O0VBRUksdUNBQXVDO0VBQ3ZDLCtCQUErQjtBRjRkbkM7O0FFemRBOztFQUVJLHdDQUF3QztFQUN4QyxnQ0FBZ0M7QUY0ZHBDOztBRTFkQTs7RUY4ZEU7QUFDRjs7RUUxZEksMENBQTBDO0VBQzFDLGtDQUFrQztFQUNsQyxnQ0FBZ0M7RUFDaEMsd0JBQXdCO0FGNmQ1Qjs7QUFFQTs7RUUxZEksb0VBQThEO0VBQzlELDREQUFzRDtFQUN0RCxpQ0FBaUM7RUFDakMseUJBQXlCO0FGNmQ3Qjs7QUUxZEEsdUJBQUE7QUFDQTs7RUFFSSw4Q0FBOEM7RUFDOUMsc0NBQXNDO0FGNmQxQzs7QUUxZEE7O0VBRUksK0NBQStDO0VBQy9DLHVDQUF1QztBRjZkM0M7O0FFMWRBO0VBQ0k7SUFDSSxVQUFVO0lBQ1YsZ0NBQWdDO0lBQ2hDLHdCQUF3QjtFRjZkOUI7RUUxZEU7SUFDSSxVQUFVO0lBQ1YscUNBQXFDO0lBQ3JDLDZCQUE2QjtFRjRkbkM7QUFDRjs7QUV6ZEE7RUFDSTtJQUNJLFVBQVU7SUFDVixnQ0FBZ0M7SUFDaEMsd0JBQXdCO0VGNGQ5QjtFRXpkRTtJQUNJLFVBQVU7SUFDVixxQ0FBcUM7SUFDckMsNkJBQTZCO0VGMmRuQztBQUNGOztBRXhkQTtFQUNJO0lBQ0ksVUFBVTtJQUNWLG9DQUFvQztJQUNwQyw0QkFBNEI7RUYyZGxDO0VFeGRFO0lBQ0ksVUFBVTtJQUNWLGtDQUFrQztJQUNsQywwQkFBMEI7RUYwZGhDO0FBQ0Y7O0FFdmRBO0VBQ0k7SUFDSSxVQUFVO0lBQ1Ysb0NBQW9DO0lBQ3BDLDRCQUE0QjtFRjBkbEM7RUV2ZEU7SUFDSSxVQUFVO0lBQ1Ysa0NBQWtDO0lBQ2xDLDBCQUEwQjtFRnlkaEM7QUFDRjs7QUV0ZEEsd0JBQUE7QUFDQTs7RUFFSSwrQ0FBK0M7RUFDL0MsdUNBQXVDO0FGeWQzQzs7QUV0ZEE7O0VBRUksZ0RBQWdEO0VBQ2hELHdDQUF3QztBRnlkNUM7O0FFdGRBO0VBQ0k7SUFDSSxVQUFVO0lBQ1YsZ0NBQWdDO0lBQ2hDLHdCQUF3QjtFRnlkOUI7RUV0ZEU7SUFDSSxVQUFVO0lBQ1Ysb0NBQW9DO0lBQ3BDLDRCQUE0QjtFRndkbEM7QUFDRjs7QUVyZEE7RUFDSTtJQUNJLFVBQVU7SUFDVixnQ0FBZ0M7SUFDaEMsd0JBQXdCO0VGd2Q5QjtFRXJkRTtJQUNJLFVBQVU7SUFDVixvQ0FBb0M7SUFDcEMsNEJBQTRCO0VGdWRsQztBQUNGOztBRXBkQTtFQUNJO0lBQ0ksVUFBVTtJQUNWLHFDQUFxQztJQUNyQyw2QkFBNkI7RUZ1ZG5DO0VFcGRFO0lBQ0ksVUFBVTtJQUNWLGtDQUFrQztJQUNsQywwQkFBMEI7RUZzZGhDO0FBQ0Y7O0FFbmRBO0VBQ0k7SUFDSSxVQUFVO0lBQ1YscUNBQXFDO0lBQ3JDLDZCQUE2QjtFRnNkbkM7RUVuZEU7SUFDSSxVQUFVO0lBQ1Ysa0NBQWtDO0lBQ2xDLDBCQUEwQjtFRnFkaEM7QUFDRjs7QUVsZEEscUJBQUE7QUFDQTs7RUFFSSw4Q0FBOEM7RUFDOUMsc0NBQXNDO0FGcWQxQzs7QUVsZEE7O0VBRUksK0NBQStDO0VBQy9DLHVDQUF1QztBRnFkM0M7O0FFbGRBO0VBQ0k7SUFDSSxVQUFVO0lBQ1YsZ0NBQWdDO0lBQ2hDLHdCQUF3QjtFRnFkOUI7RUVsZEU7SUFDSSxVQUFVO0lBQ1YscUNBQXFDO0lBQ3JDLDZCQUE2QjtFRm9kbkM7QUFDRjs7QUVqZEE7RUFDSTtJQUNJLFVBQVU7SUFDVixnQ0FBZ0M7SUFDaEMsd0JBQXdCO0VGb2Q5QjtFRWpkRTtJQUNJLFVBQVU7SUFDVixxQ0FBcUM7SUFDckMsNkJBQTZCO0VGbWRuQztBQUNGOztBRWhkQTtFQUNJO0lBQ0ksVUFBVTtJQUNWLG9DQUFvQztJQUNwQyw0QkFBNEI7RUZtZGxDO0VFaGRFO0lBQ0ksVUFBVTtJQUNWLGtDQUFrQztJQUNsQywwQkFBMEI7RUZrZGhDO0FBQ0Y7O0FFL2NBO0VBQ0k7SUFDSSxVQUFVO0lBQ1Ysb0NBQW9DO0lBQ3BDLDRCQUE0QjtFRmtkbEM7RUUvY0U7SUFDSSxVQUFVO0lBQ1Ysa0NBQWtDO0lBQ2xDLDBCQUEwQjtFRmlkaEM7QUFDRjs7QUU5Y0Esc0JBQUE7QUFDQTs7RUFFSSwrQ0FBK0M7RUFDL0MsdUNBQXVDO0FGaWQzQzs7QUU5Y0E7O0VBRUksZ0RBQWdEO0VBQ2hELHdDQUF3QztBRmlkNUM7O0FFOWNBO0VBQ0k7SUFDSSxVQUFVO0lBQ1YsZ0NBQWdDO0lBQ2hDLHdCQUF3QjtFRmlkOUI7RUU5Y0U7SUFDSSxVQUFVO0lBQ1Ysb0NBQW9DO0lBQ3BDLDRCQUE0QjtFRmdkbEM7QUFDRjs7QUU3Y0E7RUFDSTtJQUNJLFVBQVU7SUFDVixnQ0FBZ0M7SUFDaEMsd0JBQXdCO0VGZ2Q5QjtFRTdjRTtJQUNJLFVBQVU7SUFDVixvQ0FBb0M7SUFDcEMsNEJBQTRCO0VGK2NsQztBQUNGOztBRTVjQTtFQUNJO0lBQ0ksVUFBVTtJQUNWLHFDQUFxQztJQUNyQyw2QkFBNkI7RUYrY25DO0VFNWNFO0lBQ0ksVUFBVTtJQUNWLGtDQUFrQztJQUNsQywwQkFBMEI7RUY4Y2hDO0FBQ0Y7O0FFM2NBO0VBQ0k7SUFDSSxVQUFVO0lBQ1YscUNBQXFDO0lBQ3JDLDZCQUE2QjtFRjhjbkM7RUUzY0U7SUFDSSxVQUFVO0lBQ1Ysa0NBQWtDO0lBQ2xDLDBCQUEwQjtFRjZjaEM7QUFDRjs7QUUzY0E7O0VGK2NFO0FFNWNGO0VBQ0ksOERBQTBEO0VBQzFELHNEQUFrRDtFQUNsRCxnQ0FBZ0M7RUFDaEMsd0JBQXdCO0VBQ3hCO2lDRjhjNkI7QUFDakM7O0FFM2NBO0VBQ0ksb0VBQThEO0VBQzlELDREQUFzRDtFQUN0RCxnQ0FBZ0M7RUFDaEMsd0JBQXdCO0FGOGM1Qjs7QUUzY0EsdUJBQUE7QUFDQTtFQUNJLDZDQUE2QztFQUM3QyxxQ0FBcUM7QUY4Y3pDOztBRTNjQTtFQUNJLDhDQUE4QztFQUM5QyxzQ0FBc0M7QUY4YzFDOztBRTNjQTtFQUNJO0lBQ0ksVUFBVTtJQUNWLGdDQUFnQztJQUNoQyx5Q0FBeUM7RUY4Yy9DO0VFM2NFO0lBQ0ksWUFBWTtFRjZjbEI7RUUxY0U7SUFDSSxVQUFVO0lBQ1Ysc0NBQXNDO0lBQ3RDLCtDQUErQztFRjRjckQ7QUFDRjs7QUV6Y0E7RUFDSTtJQUNJLFVBQVU7SUFDVixnQ0FBZ0M7SUFDaEMseUNBQXlDO0VGNGMvQztFRXpjRTtJQUNJLFlBQVk7RUYyY2xCO0VFeGNFO0lBQ0ksVUFBVTtJQUNWLHNDQUFzQztJQUN0QywrQ0FBK0M7RUYwY3JEO0FBQ0Y7O0FFdmNBO0VBQ0k7SUFDSSxVQUFVO0lBQ1YscUNBQXFDO0lBQ3JDLDZCQUE2QjtFRjBjbkM7RUV2Y0U7SUFDSSxVQUFVO0lBQ1Ysb0NBQW9DO0lBQ3BDLDRCQUE0QjtFRnljbEM7RUV0Y0U7SUFDSSxtQ0FBbUM7SUFDbkMsMkJBQTJCO0VGd2NqQztFRXJjRTtJQUNJLG1DQUFtQztJQUNuQywyQkFBMkI7RUZ1Y2pDO0VFcGNFO0lBQ0ksa0NBQWtDO0lBQ2xDLDBCQUEwQjtFRnNjaEM7QUFDRjs7QUVuY0E7RUFDSTtJQUNJLFVBQVU7SUFDVixxQ0FBcUM7SUFDckMsNkJBQTZCO0VGc2NuQztFRW5jRTtJQUNJLFVBQVU7SUFDVixvQ0FBb0M7SUFDcEMsNEJBQTRCO0VGcWNsQztFRWxjRTtJQUNJLG1DQUFtQztJQUNuQywyQkFBMkI7RUZvY2pDO0VFamNFO0lBQ0ksbUNBQW1DO0lBQ25DLDJCQUEyQjtFRm1jakM7RUVoY0U7SUFDSSxrQ0FBa0M7SUFDbEMsMEJBQTBCO0VGa2NoQztBQUNGOztBRS9iQSx3QkFBQTtBQUNBO0VBQ0ksOENBQThDO0VBQzlDLHNDQUFzQztBRmtjMUM7O0FFL2JBO0VBQ0ksK0NBQStDO0VBQy9DLHVDQUF1QztBRmtjM0M7O0FFL2JBO0VBQ0k7SUFDSSxVQUFVO0lBQ1YsZ0NBQWdDO0lBQ2hDLHlDQUF5QztFRmtjL0M7RUUvYkU7SUFDSSxZQUFZO0VGaWNsQjtFRTliRTtJQUNJLFVBQVU7SUFDVixxQ0FBcUM7SUFDckMsOENBQThDO0VGZ2NwRDtBQUNGOztBRTdiQTtFQUNJO0lBQ0ksVUFBVTtJQUNWLGdDQUFnQztJQUNoQyx5Q0FBeUM7RUZnYy9DO0VFN2JFO0lBQ0ksWUFBWTtFRitibEI7RUU1YkU7SUFDSSxVQUFVO0lBQ1YscUNBQXFDO0lBQ3JDLDhDQUE4QztFRjhicEQ7QUFDRjs7QUUzYkE7RUFDSTtJQUNJLFVBQVU7SUFDVixzQ0FBc0M7SUFDdEMsOEJBQThCO0VGOGJwQztFRTNiRTtJQUNJLFVBQVU7SUFDVixtQ0FBbUM7SUFDbkMsMkJBQTJCO0VGNmJqQztFRTFiRTtJQUNJLG9DQUFvQztJQUNwQyw0QkFBNEI7RUY0YmxDO0VFemJFO0lBQ0ksa0NBQWtDO0lBQ2xDLDBCQUEwQjtFRjJiaEM7RUV4YkU7SUFDSSxrQ0FBa0M7SUFDbEMsMEJBQTBCO0VGMGJoQztBQUNGOztBRXZiQTtFQUNJO0lBQ0ksVUFBVTtJQUNWLHNDQUFzQztJQUN0Qyw4QkFBOEI7RUYwYnBDO0VFdmJFO0lBQ0ksVUFBVTtJQUNWLG1DQUFtQztJQUNuQywyQkFBMkI7RUZ5YmpDO0VFdGJFO0lBQ0ksb0NBQW9DO0lBQ3BDLDRCQUE0QjtFRndibEM7RUVyYkU7SUFDSSxrQ0FBa0M7SUFDbEMsMEJBQTBCO0VGdWJoQztFRXBiRTtJQUNJLGtDQUFrQztJQUNsQywwQkFBMEI7RUZzYmhDO0FBQ0Y7O0FFbmJBLHFCQUFBO0FBQ0E7RUFDSSw2Q0FBNkM7RUFDN0MscUNBQXFDO0FGc2J6Qzs7QUVuYkE7RUFDSSw4Q0FBOEM7RUFDOUMsc0NBQXNDO0FGc2IxQzs7QUVuYkE7RUFDSSx1Q0FBdUM7RUFDdkMsK0JBQStCO0FGc2JuQzs7QUVuYkE7RUFDSSx1Q0FBdUM7RUFDdkMsK0JBQStCO0FGc2JuQzs7QUVuYkE7RUFDSTtJQUNJLFVBQVU7SUFDVixnQ0FBZ0M7SUFDaEMsd0JBQXdCO0VGc2I5QjtFRW5iRTtJQUNJLFlBQVk7RUZxYmxCO0VFbGJFO0lBQ0ksVUFBVTtJQUNWLHNDQUFzQztJQUN0Qyw4QkFBOEI7RUZvYnBDO0FBQ0Y7O0FFamJBO0VBQ0k7SUFDSSxVQUFVO0lBQ1YsZ0NBQWdDO0lBQ2hDLHdCQUF3QjtFRm9iOUI7RUVqYkU7SUFDSSxZQUFZO0VGbWJsQjtFRWhiRTtJQUNJLFVBQVU7SUFDVixzQ0FBc0M7SUFDdEMsOEJBQThCO0VGa2JwQztBQUNGOztBRS9hQTtFQUNJO0lBQ0ksVUFBVTtJQUNWLHFDQUFxQztJQUNyQyw2QkFBNkI7RUZrYm5DO0VFL2FFO0lBQ0ksVUFBVTtJQUNWLG9DQUFvQztJQUNwQyw0QkFBNEI7RUZpYmxDO0VFOWFFO0lBQ0ksbUNBQW1DO0lBQ25DLDJCQUEyQjtFRmdiakM7RUU3YUU7SUFDSSxtQ0FBbUM7SUFDbkMsMkJBQTJCO0VGK2FqQztFRTVhRTtJQUNJLGtDQUFrQztJQUNsQywwQkFBMEI7RUY4YWhDO0FBQ0Y7O0FFM2FBO0VBQ0k7SUFDSSxVQUFVO0lBQ1YscUNBQXFDO0lBQ3JDLDZCQUE2QjtFRjhhbkM7RUUzYUU7SUFDSSxVQUFVO0lBQ1Ysb0NBQW9DO0lBQ3BDLDRCQUE0QjtFRjZhbEM7RUUxYUU7SUFDSSxtQ0FBbUM7SUFDbkMsMkJBQTJCO0VGNGFqQztFRXphRTtJQUNJLG1DQUFtQztJQUNuQywyQkFBMkI7RUYyYWpDO0VFeGFFO0lBQ0ksa0NBQWtDO0lBQ2xDLDBCQUEwQjtFRjBhaEM7QUFDRjs7QUV2YUEsc0JBQUE7QUFDQTtFQUNJLDhDQUE4QztFQUM5QyxzQ0FBc0M7QUYwYTFDOztBRXZhQTtFQUNJLCtDQUErQztFQUMvQyx1Q0FBdUM7QUYwYTNDOztBRXZhQTtFQUNJO0lBQ0ksVUFBVTtJQUNWLGdDQUFnQztJQUNoQyx3QkFBd0I7RUYwYTlCO0VFdmFFO0lBQ0ksWUFBWTtFRnlhbEI7RUV0YUU7SUFDSSxVQUFVO0lBQ1YscUNBQXFDO0lBQ3JDLDZCQUE2QjtFRndhbkM7QUFDRjs7QUVyYUE7RUFDSTtJQUNJLFVBQVU7SUFDVixnQ0FBZ0M7SUFDaEMsd0JBQXdCO0VGd2E5QjtFRXJhRTtJQUNJLFlBQVk7RUZ1YWxCO0VFcGFFO0lBQ0ksVUFBVTtJQUNWLHFDQUFxQztJQUNyQyw2QkFBNkI7RUZzYW5DO0FBQ0Y7O0FFbmFBO0VBQ0k7SUFDSSxVQUFVO0lBQ1Ysc0NBQXNDO0lBQ3RDLDhCQUE4QjtFRnNhcEM7RUVuYUU7SUFDSSxVQUFVO0lBQ1YsbUNBQW1DO0lBQ25DLDJCQUEyQjtFRnFhakM7RUVsYUU7SUFDSSxvQ0FBb0M7SUFDcEMsNEJBQTRCO0VGb2FsQztFRWphRTtJQUNJLGtDQUFrQztJQUNsQywwQkFBMEI7RUZtYWhDO0VFaGFFO0lBQ0ksa0NBQWtDO0lBQ2xDLDBCQUEwQjtFRmthaEM7QUFDRjs7QUUvWkE7RUFDSTtJQUNJLFVBQVU7SUFDVixzQ0FBc0M7SUFDdEMsOEJBQThCO0VGa2FwQztFRS9aRTtJQUNJLFVBQVU7SUFDVixtQ0FBbUM7SUFDbkMsMkJBQTJCO0VGaWFqQztFRTlaRTtJQUNJLG9DQUFvQztJQUNwQyw0QkFBNEI7RUZnYWxDO0VFN1pFO0lBQ0ksa0NBQWtDO0lBQ2xDLDBCQUEwQjtFRitaaEM7RUU1WkU7SUFDSSxrQ0FBa0M7SUFDbEMsMEJBQTBCO0VGOFpoQztBQUNGOztBRTVaQTs7RUZnYUU7QUU3WkY7Ozs7RUFJSSxXQUFXO0VBQ1gsUUFBUTtFQUNSLFNBQVM7RUFDVCxXQUFXO0VBQ1gsWUFBWTtFQUNaLGtCQUFrQjtFQUNsQixpQkFBaUI7RUFDakIsbUNBQWdDO0VBQ2hDLG1CQUFtQjtFQUNuQixrQkFBa0I7RUFDbEIsbUJBQW1CO0VBQ25CLDRDQUE0QztFQUM1QyxvQ0FBb0M7QUYrWnhDOztBRTVaQTtFQUNJLFNBQVM7RUFDVCx3REFBd0Q7RUFDeEQsZ0RBQWdEO0FGK1pwRDs7QUU1WkE7RUFDSSxTQUFTO0VBQ1Qsd0RBQXdEO0VBQ3hELGdEQUFnRDtBRitacEQ7O0FFNVpBO0VBQ0ksUUFBUTtFQUNSLHVEQUF1RDtFQUN2RCwrQ0FBK0M7QUYrWm5EOztBRTVaQTtFQUNJLFFBQVE7RUFDUix5REFBeUQ7RUFDekQsaURBQWlEO0FGK1pyRDs7QUU1WkE7RUFDSSx3QkFBd0I7QUYrWjVCOztBRTVaQTtFQUNJLG1CQUFBO0VBQ0EsV0FBVztFQUNYLFlBQVk7RUFDWixZQUFZO0VBQ1osWUFBWTtFQUNaLHVDQUF1QztFQUN2QywrQkFBK0I7QUYrWm5DOztBRS8yQ0E7RUFvOUJJLE9BQU87RUFDUCxXQUFXO0VBQ1gsTUFBTTtFQUNOLFNBQVM7QUYrWmI7O0FFLzJDQTtFQW85QkksVUFBVTtFQUNWLFFBQVE7RUFDUixNQUFNO0VBQ04sU0FBUztBRitaYjs7QUUvMkNBO0VBbzlCSSxNQUFNO0VBQ04sWUFBWTtFQUNaLE9BQU87RUFDUCxRQUFRO0FGK1paOztBRS8yQ0E7RUFvOUJJLFNBQVM7RUFDVCxTQUFTO0VBQ1QsT0FBTztFQUNQLFFBQVE7QUYrWlo7O0FFNVpBO0VBQ0ksVUFBVTtBRitaZDs7QUU1WkE7RUFDSSxxQkFBOEI7QUYrWmxDOztBRTVaQTtFQUNJLFdBQVc7RUFDWCxZQUFZO0VBQ1osa0JBQWtCO0VBQ2xCLHFDQUFvQztFQUNwQyxvREFBMkM7VUFBM0MsNENBQTJDO0VBQzNDLGdEQUFnRDtFQUNoRCx3Q0FBd0M7QUYrWjVDOztBRTVaQTtFQUNJLFVBQVU7RUFDVixXQUFXO0FGK1pmOztBRTVaQTtFQUNJLDJDQUEwQztBRitaOUM7O0FFNVpBO0VBQ0ksU0FBUztBRitaYjs7QUU1WkE7RUFDSSxVQUFVO0FGK1pkOztBRTVaQTtFQUNJLFFBQVE7QUYrWlo7O0FFNVpBO0VBQ0ksV0FBVztBRitaZjs7QUU1WkE7RUFDSSwwQ0FBeUM7QUYrWjdDOztBRTVaQTtFQUNJLHFCQUFxQjtBRitaekI7O0FFNVpBO0VBQ0kscUJBQXFCO0FGK1p6Qjs7QUU1WkE7RUFDSSxxQkFBcUI7QUYrWnpCOztBRTVaQTtFQUNJLGdCQUFnQjtFQUNoQixzQkFBc0I7RUFDdEIseUJBQTJCO0FGK1ovQjs7QUU1WkE7RUFDSSx5QkFBMkI7QUYrWi9COztBRTVaQTtFQUNJLHNDQUF3QztBRitaNUM7O0FFNVpBOztFRmdhRTtBRXI2Q0Y7RUF5Z0NJLGdCQUFnQjtBRitacEI7O0FFNVpBO0VBQ0ksbUJBQW1CO0FGK1p2Qjs7QUV2NkNBO0VBNGdDSSxpQkFBaUI7RUFDakIsUUFBUTtFQUNSLHFDQUFxQztFQUNyQyw2QkFBNkI7QUYrWmpDOztBRTVaQTtFQUNJLGtCQUFrQjtBRitadEI7O0FFMzZDQTtFQWdoQ0ksV0FBVztFQUNYLFlBQVk7RUFDWix5QkFBeUI7QUYrWjdCOztBRTVaQTtFQUNJLHlCQUF5QjtBRitaN0I7O0FFeDZDQTtFQTZnQ0ksNkJBQTZCO0VBQzdCLHlCQUF5QjtBRitaN0I7O0FFM1pBLFlBQUE7QUE5cUNBO0VBZ3JDSSxZQUFZO0VBQ1osY0FBYztFQUNkLHNIQUFzSDtFQUN0SCxrQ0FBa0M7QUY4WnRDOztBRWhrREE7O0VBdXFDSSx5QkFBeUI7RUFDekIsdUNBQW9DO0FGOFp4Qzs7QUVuakRBOztFQTBwQ0kseUJBQXlCO0FGOFo3Qjs7QUUzWkEsMEJBQUE7QUFDQTs7RUFFSSxtQkFBbUI7QUY4WnZCOztBRTNaQTs7RUFFSSw0Q0FBb0M7VUFBcEMsb0NBQW9DO0FGOFp4Qzs7QUUzWkE7O0VBRUksZ0JBQWdCO0VBQ2hCLGVBQWU7RUFDZixtR0FBbUc7QUY4WnZHOztBRTFaQSxTQUFBO0FBQ0E7RUFDSSxxREFBNkM7VUFBN0MsNkNBQTZDO0FGNlpqRDs7QUUxWkE7RUFDSSxnQkFBZ0I7RUFDaEIseUJBQXlCO0FGNlo3Qjs7QUUxWkE7RUFDSSxhQUFhO0FGNlpqQjs7QUUxWkE7RUFDSSxhQUFhO0FGNlpqQjs7QUUzWkE7O0VGK1pFO0FFNVpGO0VBQ0ksb0JBQW9CO0VBQ3BCLGtCQUFrQjtFQUNsQixhQUFhO0VBQ2IsUUFBUTtFQUNSLFNBQVM7RUFDVCxVQUFVO0VBQ1YsV0FBVztBRjhaZjs7QUUzWkE7RUFDSSxrQkFBa0I7RUFDbEIsUUFBUTtFQUNSLFNBQVM7RUFDVCxpQkFBaUI7RUFDakIsa0JBQWtCO0VBQ2xCLFdBQVc7RUFDWCxZQUFZO0FGOFpoQjs7QUUzWkE7RUFDSSxrQkFBa0I7RUFDbEIsTUFBTTtFQUNOLFNBQVM7RUFDVCxPQUFPO0VBQ1AsUUFBUTtFQUNSLFlBQVk7RUFDWixXQUFXO0VBQ1gsWUFBWTtFQUNaLFVBQVU7RUFDViw2QkFBNkI7RUFDN0IscUJBQXFCO0FGOFp6Qjs7QUUzWkE7RUFDSSxrQkFBa0I7RUFDbEIseUJBQXlCO0VBQ3pCLFlBQVk7RUFDWixXQUFXO0VBQ1gsa0JBQWtCO0VBQ2xCLG1DQUFtQztFQUNuQyxpQ0FBaUM7RUFDakMsMkNBQTJDO0VBQzNDLG1DQUFtQztFQUNuQywyQkFBMkI7RUFDM0IseUJBQXlCO0VBQ3pCLG1DQUFtQztFQUNuQywyQkFBMkI7QUY4Wi9COztBRTNaQTtFQUNJLE9BQU87RUFDUCxTQUFTO0VBQ1QsOEJBQThCO0VBQzlCLHNCQUFzQjtBRjhaMUI7O0FFM1pBO0VBQ0ksU0FBUztFQUNULFFBQVE7RUFDUiw4QkFBOEI7RUFDOUIsc0JBQXNCO0FGOFoxQjs7QUUzWkE7RUFDSSxVQUFVO0VBQ1YsTUFBTTtFQUNOLDZCQUE2QjtFQUM3QixxQkFBcUI7QUY4WnpCOztBRTNaQTtFQUNJLFVBQVU7RUFDVixRQUFRO0VBQ1IsOEJBQThCO0VBQzlCLHNCQUFzQjtBRjhaMUI7O0FFM1pBO0VBQ0ksUUFBUTtFQUNSLFNBQVM7RUFDVCw4QkFBOEI7RUFDOUIsc0JBQXNCO0FGOFoxQjs7QUUzWkE7RUFDSSxVQUFVO0VBQ1YsV0FBVztFQUNYLDhCQUE4QjtFQUM5QixzQkFBc0I7QUY4WjFCOztBRTNaQTtFQUNJLFVBQVU7RUFDVixTQUFTO0VBQ1QsOEJBQThCO0VBQzlCLHNCQUFzQjtBRjhaMUI7O0FFM1pBO0VBQ0ksU0FBUztFQUNULFdBQVc7RUFDWCw2QkFBNkI7RUFDN0IscUJBQXFCO0FGOFp6Qjs7QUUzWkE7RUFDSTtJQUNJLHlCQUNKO0VGNlpGO0VFM1pFO0lBQ0kseUJBQ0o7RUY0WkY7QUFDRjs7QUV6WkE7RUFDSTtJQUNJLHlCQUNKO0VGMlpGO0VFelpFO0lBQ0kseUJBQ0o7RUYwWkY7QUFDRjs7QUV4WkE7RUFDSSxrQkFBa0I7RUFDbEIsTUFBTTtFQUNOLFNBQVM7RUFDVCxPQUFPO0VBQ1AsUUFBUTtFQUNSLFlBQVk7RUFDWixXQUFXO0VBQ1gsWUFBWTtFQUNaLHNCQUFzQjtFQUN0Qiw0QkFBNEI7RUFDNUIsNmpRQUE2alE7QUYyWmprUTs7QUV4WkE7RUFDSSx5QkFBeUI7RUFDekIsbUJBQW1CO0VBQ25CLDJCQUEyQjtBRjJaL0I7O0FFeFpBO0VBQ0ksMkJBQTJCO0FGMlovQjs7QUV4WkE7RUFDSSw0QkFBNEI7QUYyWmhDOztBRXhaQTtFQUNJLDRCQUF5QjtFQUN6QixtRUFBbUU7RUFDbkUsMkRBQTJEO0FGMlovRDs7QUV4WkE7RUFDSSxXQUFXO0VBQ1gsWUFBWTtBRjJaaEI7O0FFeFpBO0VBQ0ksV0FBVztFQUNYLFlBQVk7QUYyWmhCOztBRXhaQTtFQUNJLE9BQU87RUFDUCw0QkFBNEI7QUYyWmhDOztBRXhaQTtFQUNJLFFBQVE7RUFDUiw0QkFBNEI7QUYyWmhDOztBRXhaQTtFQUNJLE1BQU07RUFDTiw0QkFBNEI7QUYyWmhDOztBRXhaQTtFQUNJLFNBQVM7RUFDVCw0QkFBNEI7QUYyWmhDOztBRXhaQTtFQUNJLHFCQUFxQjtFQUNyQiw0QkFBd0I7RUFDeEIsNEJBQTRCO0FGMlpoQzs7QUV4WkE7RUFDSSxtQkFBbUI7RUFDbkIsVUFBVTtFQUNWLG9EQUEyQztVQUEzQyw0Q0FBMkM7QUYyWi9DOztBRXhaQTtFQUNJLDJDQUEwQztFQUMxQyxjQUF1QjtBRjJaM0I7O0FFeFpBO0VBQ0ksMkNBQTBDO0VBQzFDLG9EQUEyQztVQUEzQyw0Q0FBMkM7QUYyWi9DOztBRXhaQTtFQUNJLHVCQUF1QjtBRjJaM0I7O0FFeFpBO0VBQ0ksdUJBQXVCO0FGMlozQjs7QUV4WkE7RUFDSSx1QkFBdUI7QUYyWjNCOztBRXhaQTtFQUNJLHVCQUF1QjtBRjJaM0I7O0FFeFpBO0VBQ0ksY0FBYztBRjJabEI7O0FFeFpBO0VBQ0ksZ0JBQWdCO0VBQ2hCLHlCQUEyQjtBRjJaL0I7O0FFeFpBO0VBQ0kseUJBQTJCO0FGMlovQjs7QUV4WkE7RUFDSSxvQ0FBc0M7RUFDdEMsV0FBVztBRjJaZjs7QUd4cUVBOzs7Ozs7Ozs7Q0htckVDO0FHeHFFRDs7RUgycUVFO0FHeHFFRjtFQUNJLGdDQUFnQztFQUNoQyxtQkFBbUI7RUFDbkIsa0JBQWtCO0VBQ2xCLDhrRkFBOGtGO0FIMHFFbGxGOztBR3ZxRUE7Ozs7Ozs7Ozs7Ozs7RUFhSSw4QkFBOEI7RUFDOUIsc0JBQXNCO0FIMHFFMUI7O0FHdnFFQTs7RUFFSSxxQkFBcUI7RUFDckIscUJBQXFCO0VBQ3JCLHVCQUF1QjtFQUN2Qiw0QkFBNEI7RUFDNUIseUJBQXlCO0VBQ3pCLGtCQUFrQjtFQUNsQixVQUFVO0VBQ1YsY0FBYztFQUNkLHNCQUFzQjtFQUN0Qix5QkFBeUI7RUFDekIsc0JBQXNCO0VBQ3RCLHFCQUFxQjtFQUNyQixpQkFBaUI7RUFDakIsMkJBQTJCO0VBQzNCLHdDQUF3QztFQUN4QyxtQ0FBbUM7RUFDbkMsMkJBQTJCO0FIMHFFL0I7O0FHdnFFQTtFQUNJLHVDQUFxQztFQUNyQyx1QkFBdUI7RUFDdkIsbUJBQW1CO0FIMHFFdkI7O0FHdnFFQTtFQUNJLGdCQUFnQjtFQUNoQixvQkFBb0I7RUFDcEIsb0NBQW9DO0VBQ3BDLDRCQUE0QjtBSDBxRWhDOztBR3ZxRUE7O0VBRUksb0JBQW9CO0VBQ3BCLG9CQUFvQjtFQUNwQixxQkFBcUI7RUFDckIscUJBQXFCO0FIMHFFekI7O0FHdnFFQTs7RUFFSSxXQUFXO0VBQ1gsWUFBWTtBSDBxRWhCOztBR3ZxRUE7O0VBRUksV0FBVztFQUNYLDBCQUEwQjtBSDBxRTlCOztBR3ZxRUE7O0VBRUksMEJBQTBCO0FIMHFFOUI7O0FHdnFFQTs7RUFFSSxzQkFBc0I7RUFDdEIsa0JBQWtCO0FIMHFFdEI7O0FHdnFFQTs7RUFFSSw2QkFBNkI7RUFDN0IsMkJBQTJCO0VBQzNCLCtCQUErQjtBSDBxRW5DOztBR3ZxRUE7O0VBRUksNkJBQTZCO0VBQzdCLDBCQUEwQjtFQUMxQiwyQkFBMkI7QUgwcUUvQjs7QUd2cUVBO0VBQ0ksbUNBQW1DO0VBQ25DLDJCQUEyQjtBSDBxRS9COztBR3ZxRUE7RUFDSSxtQkFBbUI7RUFDbkIsdUNBQXFDO0VBQ3JDLCtCQUE2QjtBSDBxRWpDOztBR3ZxRUE7RUFDSSxpRUFBaUU7RUFDakUsMEJBQTBCO0VBQzFCLFlBQVk7QUgwcUVoQjs7QUd2cUVBO0VBQ0ksK0JBQStCO0VBQy9CLDBCQUEwQjtBSDBxRTlCOztBR3ZxRUE7RUFDSSxtQkFBbUI7QUgwcUV2Qjs7QUd2cUVBO0VBQ0ksV0FBVztFQUNYLFlBQVk7RUFDWixZQUFZO0VBQ1osYUFBYTtFQUNiLFdBQVc7RUFDWCxjQUFjO0VBQ2QsdUJBQXVCO0VBQ3ZCLG1DQUFtQztFQUNuQywyQkFBMkI7RUFDM0IsNENBQTRDO0VBRTVDLG9DQUFvQztBSDBxRXhDOztBR3ZxRUE7RUFDSSxpQkFBaUI7RUFDakIsb0JBQW9CO0VBQ3BCLGtCQUFrQjtFQUNsQixtQkFBbUI7RUFDbkIsb0JBQW9CO0VBQ3BCLHNCQUFzQjtFQUN0Qix1QkFBdUI7RUFDdkIsa0NBQWtDO0VBQ2xDLDBCQUEwQjtBSDBxRTlCOztBR3ZxRUE7RUFDSSxvQkFBb0I7QUgwcUV4Qjs7QUd2cUVBO0VBQ0ksbUJBQW1CO0FIMHFFdkI7O0FHdnFFQTtFQUNJLGdDQUFnQztFQUNoQyx3QkFBd0I7QUgwcUU1Qjs7QUd2cUVBO0VBQ0ksVUFBVTtBSDBxRWQ7O0FHdnFFQTtFQUNJLFVBQVU7QUgwcUVkOztBR3ZxRUE7RUFDSSx3Q0FBd0M7RUFDeEMsZ0NBQWdDO0FIMHFFcEM7O0FHdnFFQTtFQUNJLHdCQUF3QjtBSDBxRTVCOztBR3ZxRUE7RUFDSSxtQ0FBMkI7RUFBM0IsMkJBQTJCO0FIMHFFL0I7O0FHdnFFQTtFQUNJLGlCQUFpQjtFQUNqQixrQkFBa0I7QUgwcUV0Qjs7QUd2cUVBOztFQUVJLDJCQUEyQjtBSDBxRS9COztBR3ZxRUE7RUFDSSx1QkFBdUI7QUgwcUUzQjs7QUd0cUVBOztFSDBxRUU7QUd2cUVGO0VBQ0ksZ0JBQWdCO0FIeXFFcEI7O0FHdHFFQTs7O0VBR0ksZUFBZTtFQUNmLHVCQUF1QjtFQUV2QixlQUFlO0FIeXFFbkI7O0FHdHFFQTtFQUNJLGlCQUFpQjtBSHlxRXJCOztBR3RxRUE7RUFDSSxpQkFBaUI7RUFDakIsd0JBQXdCO0VBRXhCLGdCQUFnQjtBSHlxRXBCOztBR3RxRUE7RUFDSSxZQUFZO0FIeXFFaEI7O0FHdHFFQTtFQUNJLDRCQUE0QjtBSHlxRWhDOztBR3RxRUE7RUFDSSx5UEFBcVE7RUFDclEsMkNBQTJDO0VBQzNDLG1DQUFtQztBSHlxRXZDOztBR3RxRUE7RUFDSSxZQUFZO0FIeXFFaEI7O0FHdHFFQTtFQUNJLFVBQVU7RUFDViw2RUFBNkU7QUh5cUVqRjs7QUd0cUVBOzs7RUFHSSxVQUFVO0FIeXFFZDs7QUd0cUVBOztFQUVJLFVBQVU7QUh5cUVkOztBR3RxRUE7O0VBRUksd0JBQXdCO0FIeXFFNUI7O0FHdHFFQTtFQUNJLHVCQUF1QjtBSHlxRTNCOztBR3RxRUE7O0VIMHFFRTtBR3ZxRUY7RUFDSSxzQkFBc0I7RUFDdEIsc0NBQW1DO0VBQ25DLDhDQUFrQztVQUFsQyxzQ0FBa0M7RUFDbEMsWUFBWTtFQUNaLFdBQVc7RUFDWCxVQUFVO0FIeXFFZDs7QUd0cUVBO0VBQ0ksVUFBVTtFQUNWLHVFQUFxRTtFQUNyRSwrREFBNkQ7QUh5cUVqRTs7QUd0cUVBO0VBQ0ksa0JBQWtCO0VBQ2xCLFVBQVU7RUFDVixZQUFZO0FIeXFFaEI7O0FHdHFFQTs7RUgwcUVFO0FHejJFRjtFQW1NSSxnQkFBZ0I7RUFDaEIsOENBQXFDO1VBQXJDLHNDQUFxQztBSHlxRXpDOztBR3YyRUE7RUFrTUksbUJBQW1CO0VBQ25CLFNBQVM7RUFDVCxvQ0FBZ0M7QUh5cUVwQzs7QUd0cUVBO0VBQ0ksV0FBVztFQUNYLGNBQWM7RUFDZCxrQkFBa0I7RUFDbEIsTUFBTTtFQUNOLFNBQVM7RUFDVCxPQUFPO0VBQ1AsUUFBUTtFQUNSLG1CQUFtQjtFQUNuQiwwQ0FBdUM7RUFDdkMseURBQTZDO1VBQTdDLGlEQUE2QztFQUM3Qyx1QkFBdUI7RUFDdkIsVUFBVTtBSHlxRWQ7O0FHdHFFQTs7RUFFSSwyQkFBMkI7QUh5cUUvQjs7QUd0cUVBO0VBQ0kseUJBQXlCO0FIeXFFN0I7O0FHdHFFQTtFQUNJLFlBQVk7RUFDWix3QkFBZ0I7VUFBaEIsZ0JBQWdCO0FIeXFFcEI7O0FHdHFFQSwyQkFBQTtBQUNBO0VBQ0ksZ0JBQWdCO0VBQ2hCLFdBQVc7RUFDWCxlQUFlO0VBQ2YsWUFBWTtFQUNaLGtCQUFrQjtFQUNsQixNQUFNO0VBQ04sWUFBWTtFQUNaLFlBQVk7RUFDWixXQUFXO0VBQ1gsOEJBQThCO0VBQzlCLDZCQUE2QjtBSHlxRWpDOztBR3RxRUE7RUFDSSx5QkFBeUI7QUh5cUU3Qjs7QUd0cUVBO0VBQ0ksU0FBUztFQUNULFNBQVM7QUh5cUViOztBR3RxRUE7RUFDSSxhQUFhO0FIeXFFakI7O0FHdHFFQSwyQkFBQTtBQUNBOztFQUVJLDRIQUE0SDtFQUM1SCxvSEFBNEc7RUFBNUcsNEdBQTRHO0VBQTVHLHNLQUE0RztBSHlxRWhIOztBR3RxRUE7RUFDSSw2Q0FBNkM7RUFDN0MscUNBQXFDO0FIeXFFekM7O0FHdHFFQTs7OztFQUlJLFVBQVU7RUFDVixhQUFhO0FIeXFFakI7O0FHdHFFQTtFQUNJLDBDQUEwQztFQUMxQyxrQ0FBa0M7QUh5cUV0Qzs7QUd0cUVBO0VBQ0kseUNBQXlDO0VBQ3pDLGlDQUFpQztBSHlxRXJDOztBR3RxRUE7RUFDSSx5Q0FBeUM7RUFDekMsaUNBQWlDO0FIeXFFckM7O0FHdHFFQTtFQUNJLDBDQUEwQztFQUMxQyxrQ0FBa0M7QUh5cUV0Qzs7QUd2cUVBLHlCQUFBO0FBQ0E7RUFDSSxnREFBZ0Q7RUFDaEQsd0NBQXdDO0VBQ3hDLG1DQUFtQztFQUNuQywyQkFBMkI7QUgwcUUvQjs7QUd2cUVBOztFQUVJLHdGQUF1RjtFQUN2RixnRkFBdUU7RUFBdkUsd0VBQXVFO0VBQXZFLG1JQUF1RTtBSDBxRTNFOztBR3hxRUEsNkJBQUE7QUFDQTtFQUNJLDZCQUE0QjtFQUM1QixxQkFBb0I7QUgycUV4Qjs7QUd6cUVBLDJCQUFBO0FBQ0E7Ozs7RUFJSSxrRUFBa0U7RUFDbEUsMERBQTBEO0FINHFFOUQ7O0FHenFFQTs7RUFFSSxnQ0FBZ0M7RUFDaEMsd0JBQXdCO0FINHFFNUI7O0FHenFFQTs7RUFFSSxVQUFVO0FINHFFZDs7QUd4cUVBOztFSDRxRUU7QUd6cUVGOztFQUVJLFdBQVc7RUFDWCxpQ0FBOEI7RUFDOUIsdUhBQXVIO0VBQ3ZILHFCQUFxQjtFQUNyQixrQkFBa0I7RUFDbEIsY0FBYztFQUNkLHFCQUFxQjtFQUNyQixTQUFTO0VBQ1Qsa0JBQWtCO0VBQ2xCLGFBQWE7RUFDYixvQkFBb0I7RUFDcEIsbUNBQW1DO0VBQ25DLGtDQUFrQztFQUNsQyxzQ0FBc0M7RUFDdEMsOEJBQThCO0FIMnFFbEM7O0FHeHFFQTtFQUNJLFdBQVc7RUFDWCxPQUFPO0VBQ1AsUUFBUTtFQUNSLGNBQWM7RUFDZCw2QkFBNkI7RUFDN0IsMERBQTBEO0VBQzFELGtEQUFrRDtBSDJxRXREOztBR3hxRUE7RUFDSSxxQkFBcUI7RUFDckIsaUNBQThCO0VBQzlCLGtCQUFrQjtFQUNsQixtQkFBbUI7QUgycUV2Qjs7QUd4cUVBO0VBQ0ksaUJBQWlCO0VBQ2pCLGtCQUFrQjtFQUNsQixnQkFBZ0I7RUFDaEIsV0FBVztFQUNYLGtCQUFrQjtFQUNsQixvQkFBb0I7RUFDcEIsaUJBQWlCO0VBQ2pCLHNDQUFzQztFQUN0Qyw4QkFBOEI7QUgycUVsQzs7QUd4cUVBO0VBQ0ksYUFBYTtBSDJxRWpCOztBR3hxRUE7RUFDSSxVQUFVO0VBQ1YsV0FBVztFQUNYLDZCQUE2QjtFQUM3QixxQkFBcUI7QUgycUV6Qjs7QUd6cUVBLHdDQUFBO0FBQ0E7RUFDSSxlQUFlO0VBQ2Ysa0JBQWtCO0VBQ2xCLFFBQVE7RUFDUixZQUFZO0VBQ1osU0FBUztFQUNULHFDQUFvQztFQUVwQyw2QkFBNEI7QUg0cUVoQzs7QUd6cUVBO0VBQ0ksY0FBYztBSDRxRWxCOztBR3pxRUE7RUFDSSxhQUFhO0FINHFFakI7O0FHenFFQTtFQUNJLDRCQUE0QjtFQUM1QixvQkFBb0I7RUFDcEIsVUFBVTtBSDRxRWQ7O0FHenFFQSxzQkFBQTtBQUNBO0VBQ0ksWUFBWTtFQUNaLG1CQUFtQjtFQUNuQixVQUFVO0VBQ1YsVUFBVTtFQUNWLFdBQVc7RUFDWCxZQUFZO0VBQ1osUUFBUTtFQUNSLFNBQVM7RUFDVCx3Q0FBd0M7RUFFeEMsZ0NBQWdDO0FINHFFcEM7O0FHenFFQTtFQUNJLFdBQVc7RUFDWCxrQkFBa0I7RUFDbEIsTUFBTTtFQUNOLFNBQVM7RUFDVCxPQUFPO0VBQ1AsUUFBUTtFQUNSLFdBQVc7RUFDWCxZQUFZO0VBQ1osWUFBWTtFQUNaLG9CQUFvQjtFQUNwQixrQkFBa0I7RUFDbEIsdUJBQXdDO0VBQ3hDLDZCQUE2QjtFQUM3Qiw4QkFBc0I7VUFBdEIsc0JBQXNCO0FINHFFMUI7O0FHenFFQTtFQUNJLFVBQVU7RUFDVixVQUFVO0VBQ1YsOEJBQThCO0VBQzlCLHNCQUFzQjtBSDRxRTFCOztBR3pxRUE7RUFDSSxtREFBbUQ7RUFDbkQsMkNBQTJDO0FINHFFL0M7O0FHenFFQTtFQUNJO0lBQ0ksK0JBQStCO0lBQy9CLHVCQUF1QjtFSDRxRTdCO0VHenFFRTtJQUNJLGlDQUFpQztJQUNqQyx5QkFBeUI7RUgycUUvQjtBQUNGOztBR3hxRUE7RUFDSTtJQUNJLCtCQUErQjtJQUMvQix1QkFBdUI7RUgycUU3QjtFR3hxRUU7SUFDSSxpQ0FBaUM7SUFDakMseUJBQXlCO0VIMHFFL0I7QUFDRjs7QUd2cUVBO0VBQ0ksa0JBQWtCO0VBQ2xCLGVBQWU7RUFDZixtQkFBbUI7RUFDbkIsV0FBVztFQUNYLFlBQVk7QUgwcUVoQjs7QUd2cUVBO0VBQ0kscUJBQXFCO0VBQ3JCLGNBQWM7RUFDZCxZQUFZO0VBQ1osa0JBQWtCO0FIMHFFdEI7O0FHdnFFQTtFQUNJLHdCQUF3QjtFQUN4QixRQUFRO0VBQ1IsT0FBTztFQUNQLFlBQVk7RUFDWixZQUFZO0FIMHFFaEI7O0FHdnFFQTs7RUFFSSxrQ0FBa0M7RUFDbEMscUhBQXFIO0FIMHFFekg7O0FHdnFFQTtFQUNJLHdCQUF3QjtBSDBxRTVCOztBR3JxRUE7O0VIeXFFRTtBR3RxRUY7Ozs7OztFQU1JLGtCQUFrQjtFQUNsQixNQUFNO0VBQ04sU0FBUztFQUNULE9BQU87RUFDUCxRQUFRO0FId3FFWjs7QUdycUVBOzs7RUFHSSxzQkFBc0I7RUFDdEIsdUJBQXVCO0FId3FFM0I7O0FHcnFFQTs7RUFFSSwwQkFBMEI7RUFDMUIsMkJBQTJCO0FId3FFL0I7O0FHcnFFQTtFQUNJLHVCQUFrQztFQUNsQyxrQkFBa0I7RUFDbEIsc0JBQXNCO0VBQ3RCLGNBQWM7RUFDZCxnQkFBZ0I7RUFDaEIsbUJBQW1CO0VBQ25CLGVBQWU7RUFDZixXQUFXO0VBQ1gsWUFBWTtFQUNaLDBCQUEwQjtFQUMxQixrQkFBa0I7RUFDbEIsb0NBQW9DO0VBQ3BDLDRCQUE0QjtFQUM1QixtQ0FBbUM7RUFDbkMsMkJBQTJCO0VBQzNCLHdCQUF3QjtBSHdxRTVCOztBR3JxRUEsNkJBQUE7QUFDQTtFQUNJLHFCQUFxQjtFQUNyQixzQkFBc0I7RUFDdEIsWUFBWTtFQUNaLGFBQWE7RUFDYiwwQkFBMEI7RUFDMUIsMkJBQTJCO0VBQzNCLGlFQUErRDtFQUUvRCx5REFBdUQ7RUFDdkQsMEJBQTBCO0VBQzFCLGtCQUFrQjtFQUNsQiw0QkFBNEI7RUFDNUIsc0JBQXNCO0FId3FFMUI7O0FHcnFFQTtFQUNJLFlBQVk7RUFDWiwyTEFBbU07RUFDbk0sMENBQTBDO0VBQzFDLGtDQUFrQztFQUNsQyx1Q0FBcUM7RUFDckMsK0JBQTZCO0VBQzdCLG1DQUFtQztFQUNuQywyQkFBMkI7QUh3cUUvQjs7QUdycUVBO0VBQ0ksWUFBWTtFQUNaLFdBQVc7QUh3cUVmOztBQUVBOztFR3JxRUksd0JBQXdCO0FId3FFNUI7O0FHcnFFQTtFQUNJLG1CQUFtQjtBSHdxRXZCOztBQUVBO0VHdHFFSSx3Q0FBdUM7QUh3cUUzQzs7QUdycUVBLDJDQUFBO0FBQ0E7OztFQUdJLHdCQUF3QjtBSHdxRTVCOztBR3JxRUE7RUFDSSx5QkFBeUI7RUFDekIsd0NBQXVDO0FId3FFM0M7O0FHcnFFQTtFQUNJLHNCQUFzQjtBSHdxRTFCOztBR3JxRUEsd0JBQUE7QUFDQTtFQUNJLG1CQUFtQjtFQUNuQixVQUFVO0FId3FFZDs7QUdycUVBO0VBQ0ksV0FBVztFQUNYLFdBQVc7RUFDWCxZQUFZO0VBQ1osc0JBQXNCO0VBQ3RCLFNBQVM7RUFDVCxrQkFBa0I7RUFDbEIsc0JBQXNCO0VBQ3RCLDBCQUEwQjtFQUMxQixrQkFBa0I7RUFDbEIsbUNBQW1DO0VBQ25DLDJCQUEyQjtBSHdxRS9COztBR3JxRUE7RUFDSSxxQkFBcUI7QUh3cUV6Qjs7QUdycUVBO0VBQ0kscUJBQXFCO0VBQ3JCLE9BQU87RUFDUCxRQUFRO0FId3FFWjs7QUdycUVBOztFQUVJLFdBQVc7RUFDWCxxQkFBcUI7RUFDckIsc0JBQXNCO0VBQ3RCLFlBQVk7RUFDWixZQUFZO0VBQ1osaUJBQWlCO0VBQ2pCLFFBQVE7QUh3cUVaOztBR3JxRUE7RUFDSSxXQUFXO0VBQ1gsZUFBZTtFQUNmLGdCQUFnQjtFQUNoQixVQUFVO0VBQ1YsU0FBUztFQUNULHFCQUFxQjtFQUNyQixzQkFBc0I7RUFDdEIsWUFBWTtFQUNaLGlCQUFpQjtFQUNqQixrQkFBa0I7QUh3cUV0Qjs7QUdycUVBO0VBQ0ksaUJBQWlCO0VBQ2pCLDBCQUEwQjtBSHdxRTlCOztBR3JxRUE7RUFDSSxlQUFlO0VBQ2YsV0FBVztFQUNYLFlBQVk7QUh3cUVoQjs7QUdycUVBOzs7RUFHSSxXQUFXO0VBQ1gsWUFBWTtBSHdxRWhCOztBR3ZyRUE7RUFtQkksZUFBZTtFQUNmLHVCQUF1QjtFQUV2QixlQUFlO0FId3FFbkI7O0FHcnFFQTtFQUNJLGlCQUFpQjtFQUNqQix3QkFBd0I7RUFFeEIsZ0JBQWdCO0FId3FFcEI7O0FHdHFFQSxvQ0FBQTtBQUNBO0VBQ0ksVUFBVTtFQUNWLDZCQUE2QjtFQUM3Qix1QkFBdUI7RUFDdkIsMEJBQTBCO0VBQzFCLHdCQUF3QjtFQUN4Qix5QkFBeUI7RUFDekIsdUJBQXVCO0FIeXFFM0I7O0FHdHFFQTtFQUNJLDBCQUEwQjtBSHlxRTlCOztBR3RxRUE7RUFDSSxnQkFBZ0I7RUFDaEIsMEJBQTBCO0FIeXFFOUI7O0FHcnFFQSw2QkFBQTtBQUNBO0VBQ0ksV0FBVztFQUNYLDhCQUE4QjtFQUM5QixpQkFBaUI7RUFDakIscUhBQXFIO0VBQ3JILGtCQUFrQjtFQUNsQixXQUFXO0VBQ1gsa0JBQWtCO0VBQ2xCLE9BQU87RUFDUCxVQUFVO0FId3FFZDs7QUdycUVBO0VBQ0ksMENBQTBDO0VBQzFDLGtDQUFrQztFQUNsQyxVQUFVO0FId3FFZDs7QUdycUVBO0VBQ0ksY0FBYztFQUNkLGVBQWU7QUh3cUVuQjs7QUdycUVBO0VBQ0ksV0FBVztFQUNYLGlCQUFpQjtBSHdxRXJCOztBR3JxRUE7RUFDSSxTQUFTO0FId3FFYjs7QUdycUVBO0VBQ0ksd0JBQWdCO1VBQWhCLGdCQUFnQjtFQUNoQix1QkFBdUI7QUh3cUUzQjs7QUdycUVBO0VBQ0ksU0FBUztBSHdxRWI7O0FHcnFFQSw0QkFBQTtBQUNBOztFQUVJLFNBQVM7RUFDVCxVQUFVO0FId3FFZDs7QUdycUVBO0VBQ0ksV0FBVztBSHdxRWY7O0FHcnFFQTtFQUNJLFVBQVU7QUh3cUVkOztBR3JxRUE7RUFDSSxtQkFBbUI7QUh3cUV2Qjs7QUdycUVBO0VBQ0ksY0FBYztBSHdxRWxCOztBR3JxRUE7RUFDSSxVQUFVO0VBQ1YsWUFBWTtBSHdxRWhCOztBR3BxRUE7O0VId3FFRTtBR3JxRUY7O0VBRUksb0JBQW9CO0VBQ3BCLHFCQUFxQjtFQUNyQixxQkFBcUI7QUh1cUV6Qjs7QUdwcUVBO0VBQ0kseUJBQXlCO0VBQ3pCLCtDQUErQztFQUMvQyxlQUFlO0VBQ2Ysc0JBQXNCO0VBQ3RCLHdDQUF3QztFQUN4QyxtREFBbUQ7RUFDbkQsOEJBQThCO0VBQzlCLG1DQUEyQjtVQUEzQiwyQkFBMkI7RUFDM0IsNkJBQTZCO0VBQzdCLCtCQUErQjtFQUMvQixrQkFBa0I7RUFDbEIsV0FBVztFQUNYLG1DQUFtQztFQUNuQyxzQkFBc0I7RUFDdEIsdUJBQXVCO0VBQ3ZCLHVCQUF1QjtFQUN2Qix3QkFBd0I7RUFDeEIsMEJBQTBCO0VBQzFCLDJCQUEyQjtBSHVxRS9COztBR3BxRUE7RUFDSSxlQUFlO0VBQ2YsZ0JBQWdCO0VBQ2hCLHlCQUF5QjtFQUN6Qix3QkFBd0I7RUFDeEIsMENBQTBDO0FIdXFFOUM7O0FHcHFFQTs7RUFFSSw0QkFBNEI7RUFDNUIsaUJBQWlCO0VBQ2pCLG9CQUFvQjtFQUNwQiwyQkFBMkI7QUh1cUUvQjs7QUdwcUVBO0VBQ0ksa0JBQWtCO0FIdXFFdEI7O0FHcHFFQTtFQUNJLG1CQUFtQjtBSHVxRXZCOztBR3BxRUE7RUFDSSwwQkFBMEI7RUFDMUIsdUJBQXVCO0VBQ3ZCLGlCQUFpQjtFQUNqQixtQkFBbUI7RUFDbkIsc0JBQXNCO0FIdXFFMUI7O0FHcHFFQTtFQUNJLDJDQUEwQztFQUMxQyx5Q0FBd0M7RUFDeEMsaUNBQWdDO0VBQ2hDLG9GQUFvRjtFQUNwRiw0RUFBb0U7RUFBcEUsb0VBQW9FO0VBQXBFLDRGQUFvRTtBSHVxRXhFOztBR3BxRUE7RUFDSSx5QkFBd0M7RUFDeEMsaURBQWdEO0VBQ2hELHNDQUFzQztFQUN0Qyw4QkFBOEI7QUh1cUVsQzs7QUdwcUVBO0VBQ0ksb0RBQW9EO0VBQ3BELDRDQUFvQztFQUFwQyxvQ0FBb0M7RUFBcEMsMkRBQW9DO0FIdXFFeEM7O0FHcHFFQTtFQUNJLGlEQUFnRDtFQUNoRCx5Q0FBd0M7RUFDeEMsaUNBQWdDO0FIdXFFcEM7O0FHcHFFQTs7NkRId3FFNkQ7QUdwcUU3RDtFQUNJLG1DQUFtQztFQUNuQywyQkFBMkI7QUhzcUUvQjs7QUducUVBO0VBQ0ksbUNBQW1DO0VBQ25DLDJCQUEyQjtBSHNxRS9COztBR25xRUE7RUFDSSxtQ0FBbUM7RUFDbkMsMkJBQTJCO0FIc3FFL0I7O0FHbnFFQTtFQUNJOztJQUVJLHdCQUF3QjtFSHNxRTlCO0VHbnFFRTtJQUNJLHNCQUFzQjtJQUN0Qix1QkFBdUI7SUFDdkIsMEJBQTBCO0lBQzFCLDBDQUEwQztJQUMxQyxrREFBK0M7SUFDL0Msb0NBQW9DO0VIcXFFMUM7QUFDRjs7QUdscUVBO0VBQ0ksU0FBUztFQUNULHlCQUF5QjtBSHFxRTdCOztBR2xxRUE7RUFDSSwwQkFBMEI7QUhxcUU5Qjs7QUdqcUVBOztFSHFxRUU7QUdqcUVGLDJCQUFBO0FBQ0E7O0VBRUkscUJBQXFCO0VBQ3JCLGNBQWM7RUFDZCxhQUFhO0FIbXFFakI7O0FHaHFFQTs7RUFFSSxTQUFTO0VBQ1Qsa0RBQXVDO1VBQXZDLDBDQUF1QztFQUN2Qyw4QkFBc0I7VUFBdEIsc0JBQXNCO0FIbXFFMUI7O0FHaHFFQTtFQUNJLCtCQUErQjtFQUMvQix1QkFBdUI7QUhtcUUzQjs7QUdocUVBO0VBQ0ksK0JBQStCO0VBQy9CLHVCQUF1QjtBSG1xRTNCOztBR2hxRUE7O0VBRUksZ0JBQWdCO0FIbXFFcEI7O0FHaHFFQTtFQUNJLFlBQVk7RUFDWix5QkFBeUI7QUhtcUU3Qjs7QUdocUVBO0VBQ0ksV0FBVztFQUNYLHlCQUF5QjtBSG1xRTdCOztBR2hxRUE7RUFDSSxrREFBdUM7VUFBdkMsMENBQXVDO0FIbXFFM0M7O0FHaHFFQSxnQ0FBQTtBQUNBO0VBQ0ksV0FBVztFQUNYLGtCQUFrQjtFQUNsQixTQUFTO0VBQ1QsVUFBVTtFQUNWLFdBQVc7RUFDWCxZQUFZO0VBQ1osZUFBZTtFQUNmLDhCQUFzQjtVQUF0QixzQkFBc0I7QUhtcUUxQjs7QUdocUVBO0VBQ0ksaUJBQWlCO0FIbXFFckI7O0FHaHFFQTtFQUNJLGVBQWU7RUFDZixZQUFZO0VBQ1osa0RBQXVDO1VBQXZDLDBDQUF1QztBSG1xRTNDOztBR2hxRUE7RUFDSSwrQkFBK0I7RUFDL0IsdUJBQXVCO0FIbXFFM0I7O0FHaHFFQTtFQUNJLCtCQUErQjtFQUMvQix1QkFBdUI7QUhtcUUzQjs7QUdocUVBO0VBQ0ksd0JBQWdCO1VBQWhCLGdCQUFnQjtBSG1xRXBCOztBR2hxRUE7RUFDSSxVQUFVO0FIbXFFZDs7QUdocUVBO0VBQ0ksV0FBVztFQUNYLHlCQUF5QjtBSG1xRTdCOztBR2hxRUE7RUFDSSxXQUFXO0VBQ1gseUJBQXlCO0FIbXFFN0I7O0FHaHFFQSx3RUFBQTtBQUNBO0VBQ0ksb0JBQW9CO0FIbXFFeEI7O0FHaHFFQTtFQUNJLGFBQWE7QUhtcUVqQjs7QUdocUVBO0VBQ0ksVUFBVTtBSG1xRWQ7O0FHaHFFQTs7Ozs7Ozs7RUFRSSxTQUFTO0VBQ1QsVUFBVTtFQUNWLFVBQVU7RUFDViw4QkFBOEI7RUFDOUIsc0JBQXNCO0FIbXFFMUI7O0FHaHFFQTtFQUNJLGNBQWM7RUFDZCxpQkFBaUI7RUFDakIsWUFBWTtFQUNaLGtCQUFrQjtFQUNsQixPQUFPO0VBQ1AsTUFBTTtFQUNOLGVBQWU7RUFDZix5QkFBeUI7RUFDekIsc0JBQXNCO0VBQ3RCLHFCQUFxQjtFQUNyQixpQkFBaUI7RUFDakIsMkJBQTJCO0VBQzNCLHdDQUF3QztFQUN4QyxzQkFBc0I7RUFDdEIsa0JBQWtCO0FIbXFFdEI7O0FHbHJFQTtFQW1CSSxXQUFXO0VBQ1gsWUFBWTtFQUNaLG1CQUFtQjtBSG1xRXZCOztBR2hxRUE7RUFDSSxxQkFBcUI7QUhtcUV6Qjs7QUdocUVBO0VBQ0ksY0FBYztFQUNkLFdBQVc7RUFDWCxZQUFZO0VBQ1osa0JBQWtCO0VBQ2xCLGdCQUFnQjtFQUNoQixrQkFBa0I7QUhtcUV0Qjs7QUdocUVBO0VBQ0ksZ0JBQWdCO0VBQ2hCLFlBQVk7RUFDWixxQkFBcUI7RUFDckIsc0JBQXNCO0VBQ3RCLFlBQVk7RUFDWixrQkFBa0I7RUFDbEIsbUJBQW1CO0FIbXFFdkI7O0FHaHFFQTtFQUNJLGtCQUFrQjtFQUNsQixxQkFBcUI7RUFDckIsbUNBQW1DO0VBQ25DLDJCQUEyQjtFQUMzQixrQ0FBa0M7RUFFbEMsMEJBQTBCO0FIbXFFOUI7O0FHL3BFQTtFQUNJLGFBQWE7RUFDYixZQUFZO0VBQ1osV0FBVztFQUNYLG1CQUFtQjtFQUNuQixjQUFjO0VBQ2QscUJBQXFCO0FIa3FFekI7O0FHL3BFQTtFQUNJLFdBQVc7RUFDWCxxQkFBcUI7RUFDckIsc0JBQXNCO0VBQ3RCLFlBQVk7RUFDWixRQUFRO0FIa3FFWjs7QUcvcEVBO0VBQ0ksV0FBVztFQUNYLFlBQVk7RUFDWiwwQkFBMEI7RUFDMUIsMkJBQTJCO0VBQzNCLHNCQUFzQjtBSGtxRTFCOztBRy9wRUE7RUFDSSwwQkFBMEI7RUFDMUIsMkJBQTJCO0FIa3FFL0I7O0FHL3BFQSxhQUFBO0FBQ0E7RUFDSSxZQUFZO0FIa3FFaEI7O0FHL3BFQTtFQUNJLGVBQWU7QUhrcUVuQjs7QUcvcEVBO0VBQ0ksWUFBWTtFQUNaLFdBQVc7RUFDWCxtQkFBbUI7QUhrcUV2Qjs7QUcvcEVBO0VBQ0ksV0FBVztFQUNYLFlBQVk7QUhrcUVoQjs7QUdwcUVBO0VBTUksYUFBYTtBSGtxRWpCOztBRy9wRUE7RUFDSSwwQkFBMEI7RUFDMUIsMkJBQTJCO0FIa3FFL0I7O0FHL3BFQTtFQUNJLFdBQVc7QUhrcUVmOztBRy9wRUE7O0VIbXFFRTtBR2hxRUY7RUFDSSx5QkFBeUI7RUFDekIsK0NBQStDO0VBQy9DLGVBQWU7RUFDZixzQkFBc0I7RUFDdEIsNEJBQTRCO0VBQzVCLHdDQUF3QztFQUN4QyxzQkFBc0I7RUFDdEIsU0FBUztFQUNULGdCQUFnQjtFQUNoQixtQ0FBMkI7VUFBM0IsMkJBQTJCO0VBQzNCLGdCQUFnQjtFQUNoQixrQkFBa0I7RUFDbEIsK0JBQStCO0VBQy9CLFdBQVc7RUFDWCxrQkFBa0I7RUFDbEIsbUNBQW1DO0VBQ25DLFdBQVc7RUFDWCxZQUFZO0VBQ1osTUFBTTtFQUNOLFNBQVM7RUFDVCx1QkFBdUI7RUFDdkIsd0JBQXdCO0VBQ3hCLDBCQUEwQjtFQUMxQiwyQkFBMkI7QUhrcUUvQjs7QUcvcEVBO0VBQ0ksZUFBZTtFQUNmLGdCQUFnQjtFQUNoQix5QkFBeUI7RUFDekIsd0JBQXdCO0VBQ3hCLDBDQUEwQztBSGtxRTlDOztBRy9wRUE7RUFDSSxPQUFPO0FIa3FFWDs7QUcvcEVBO0VBQ0ksUUFBUTtBSGtxRVo7O0FHL3BFQTtFQUNJLGdCQUFnQjtBSGtxRXBCOztBRy9wRUE7RUFDSSxnQkFBZ0I7QUhrcUVwQjs7QUcvcEVBO0VBQ0ksMkNBQTBDO0VBQzFDLHlDQUF3QztFQUN4QyxpQ0FBZ0M7RUFDaEMsaUVBQWlFO0VBQ2pFLHlEQUFpRDtFQUFqRCxpREFBaUQ7RUFBakQseUVBQWlEO0FIa3FFckQ7O0FHL3BFQTtFQUNJLHlCQUF3QztFQUN4QyxzQ0FBc0M7RUFDdEMsOEJBQThCO0FIa3FFbEM7O0FHOXBFQSxxQkFBQTtBQUNBO0VBQ0ksV0FBVztFQUNYLFlBQVk7RUFDWixPQUFPO0VBQ1AsUUFBUTtFQUNSLFNBQVM7RUFDVCxZQUFZO0FIaXFFaEI7O0FHOXBFQTtFQUNJLE1BQU07QUhpcUVWOztBRzlwRUE7RUFDSSxTQUFTO0FIaXFFYjs7QUc5cEVBO0VBQ0ksZ0JBQWdCO0FIaXFFcEI7O0FHOXBFQTtFQUNJLGdCQUFnQjtBSGlxRXBCOztBRzdwRUE7RUFDSSx3QkFBd0I7QUhncUU1Qjs7QUc3cEVBO0VBQ0ksWUFBWTtFQUNaLHlCQUEyQjtBSGdxRS9COztBQUVBO0VJbC9HVyxhQUFhO0FKby9HeEI7O0FLbmpIQTs7Ozs7RUwwakhFO0FNMzVHSTtFQ25ISjtJQUNFLFdBQVc7SUFDWCxVQUFVO0lBQ1YsY0FBYztFUGloSGhCO0FBQ0Y7O0FRcGhIRSxnRUFBQTtBQUdFO21GUnFoSCtFO0FRbGhIL0U7Ozs7O01Sd2hIRTtBUWpoSEY7RUFDRSx1QkMxQ3VCO0VEMENTLE1BQUE7RUFROUIsaUJBQWlCO0VBQUUsTUFBQTtFQUVyQiwwQkFBMEI7RUFBRSxNQUFBO0VBQzVCLDhCQUE4QjtFQUFFLE1BQUE7QVIrZ0h0Qzs7QVExZ0hJO21GUjZnSCtFO0FRMWdIL0U7O01SNmdIRTtBUXpnSEY7RUFDRSxTQUFTO0FSMmdIZjs7QVF4Z0hJOztNUjRnSEU7QVF4Z0hGOzs7Ozs7RUFNRSxjQUFjO0FSMGdIcEI7O0FRdmdISTs7O01SNGdIRTtBUXZnSEY7RUU5RUYsY0FYdUM7RUZvR2pDLGdCQUFnQjtBUmdnSHhCOztBUTE5R0k7bUZSNjlHK0U7QVFyN0cvRTs7TVJ3N0dFO0FRcDdHRjs7RUFFRSxjQUFjO0FSczdHcEI7O0FRbjdHSTs7TVJ1N0dFO0FRbjdHRjtFQUtJLGdCQ3ZMWTtBVHdtSHBCOztBUTc2R0k7OztNUms3R0U7QVE3NkdGO0VBQ0UsK0JBQXVCO1VBQXZCLHVCQUF1QjtFQUFFLE1BQUE7RUFDekIsU0FBUztFQUFFLE1BQUE7RUFDWCxpQkFBaUI7RUFBRSxNQUFBO0FSazdHekI7O0FRLzZHSTs7TVJtN0dFO0FRLzZHRjtFQUNFLGNBQWM7QVJpN0dwQjs7QVFuNkdJOzs7TVJ3NkdFO0FRbjZHRjtFQUNFLGlDQUFpQztFQUFFLE1BQUE7RUFDbkMsY0FBYztFQUFFLE1BQUE7QVJ1Nkd0Qjs7QVFsNkdJO21GUnE2RytFO0FRbDZHL0U7OztNUnM2R0U7QVFqNkdGO0VBQ0UsNkJBQTZCO0VBQUUsTUFBQTtFQUMvQixxQ0FBcUM7RUFBRSxNQUFBO0FScTZHN0M7O0FRbDZHSTs7O01SdTZHRTtBUWw2R0Y7O0VBRUUsZ0JBQWdCO0FSbzZHdEI7O0FRLzVHSTttRlJrNkcrRTtBUS81Ry9FOzs7TVJtNkdFO0FROTVHRjtFQUNFLG1CQUFtQjtFQUFFLE1BQUE7RUFDckIsMEJBQTBCO0VBQUUsTUFBQTtFQUM1Qix5Q0FBaUM7VUFBakMsaUNBQWlDO0VBQUUsTUFBQTtBUm02R3pDOztBUWg2R0k7O01SbzZHRTtBUWg2R0Y7O0VBRUUsb0JBQW9CO0FSazZHMUI7O0FRLzVHSTs7TVJtNkdFO0FReDZHRjs7RUFXRSxtQkFBbUI7QVJpNkd6Qjs7QVE5NUdJOzs7TVJtNkdFO0FROTVHRjs7O0VBR0UsaUNBQWlDO0VBQUUsTUFBQTtFQUNuQyxjQUFjO0VBQUUsTUFBQTtBUms2R3RCOztBUS81R0k7O01SbTZHRTtBUS81R0Y7RUFDRSxrQkFBa0I7QVJpNkd4Qjs7QVE5NUdJOztNUms2R0U7QVE5NUdGO0VBQ0Usc0JBQXNCO0VBQ3RCLFdBQVc7QVJnNkdqQjs7QVE3NUdJOztNUmk2R0U7QVE3NUdGO0VBQ0UsY0FBYztBUis1R3BCOztBUTU1R0k7OztNUmk2R0U7QVE1NUdGOztFQUVFLGNBQWM7RUFDZCxjQUFjO0VBQ2Qsa0JBQWtCO0VBQ2xCLHdCQUF3QjtBUjg1RzlCOztBUTM1R0k7RUFDRSxlQUFlO0FSODVHckI7O0FRMzVHSTtFQUNFLFdBQVc7QVI4NUdqQjs7QVF6NUdJO21GUjQ1RytFO0FRejVHL0U7O01SNDVHRTtBUXg1R0Y7O0VBRUUscUJBQXFCO0FSMDVHM0I7O0FRdjVHSTs7TVIyNUdFO0FRdjVHRjtFQUNFLGFBQWE7RUFDYixTQUFTO0FSeTVHZjs7QVF0NUdJOztNUjA1R0U7QVF0NUdGO0VBQ0Usa0JBQWtCO0FSdzVHeEI7O0FRcjVHSTs7TVJ5NUdFO0FRcjVHRjtFQUNFLGdCQUFnQjtBUnU1R3RCOztBUWw1R0k7bUZScTVHK0U7QVFsNUcvRTs7O01SczVHRTtBUWo1R0Y7Ozs7O0VBS0UsdUJDelp1QjtFRHlaUyxNQUFBO0VBQ2hDLGVBQWU7RUFBRSxNQUFBO0VBS2YsaUJBQWlCO0VBQUUsTUFBQTtFQUVyQixTQUFTO0VBQUUsTUFBQTtBUms1R2pCOztBUS80R0k7O01SbTVHRTtBUS80R0Y7RUFDRSxpQkFBaUI7QVJpNUd2Qjs7QVE5NEdJOzs7TVJtNUdFO0FROTRHRjs7RUFDUyxNQUFBO0VBQ1Asb0JBQW9CO0FSaTVHMUI7O0FROTRHSTs7OztNUm81R0U7QVE5NEdGOzs7O0VBSUUsMEJBQTBCO0VBQUUsTUFBQTtBUmk1R2xDOztBUTk0R0k7Ozs7RUFLRTs7UVJpNUdFO0VReDRHRjs7UVIyNEdFO0FBQ1I7O0FRMTVHSTs7OztFQVVJLGtCQUFrQjtFQUNsQixVQUFVO0FSdTVHbEI7O0FRbDZHSTs7OztFQW1CSSw4QkFBOEI7QVJzNUd0Qzs7QVFsNUdJOztNUnM1R0U7QVFsNUdGO0VBQ0UsaUJBQWlCO0FSbzVHdkI7O0FRajVHSTs7O01SczVHRTtBQUNOOztFUWg1R00sOEJBQXNCO1VBQXRCLHNCQUFzQjtFQUFFLE1BQUE7RUFDeEIsVUFBVTtFQUFFLE1BQUE7QVJxNUdsQjs7QVFsNUdJOztNUnM1R0U7QUFDTjs7RVFqNUdNLFlBQVk7QVJvNUdsQjs7QVFqNUdJOzs7TVJzNUdFO0FBQ047RVFqNUdNLDZCQUE2QjtFQUFFLE1BQUE7RUFDL0Isb0JBQW9CO0VBQUUsTUFBQTtFQUV0Qjs7UVJxNUdFO0FBQ1I7O0FBRUE7RVFsNUdRLHdCQUF3QjtBUm81R2hDOztBUWg1R0k7OztNUnE1R0U7QVFoNUdGO0VBQ0UsMEJBQTBCO0VBQUUsTUFBQTtFQUM1QixhQUFhO0VBQUUsTUFBQTtBUm81R3JCOztBUWo1R0k7O01ScTVHRTtBUWo1R0Y7RUFDRSx5QkFBeUI7RUFDekIsYUFBYTtFQUNiLDhCQUE4QjtBUm01R3BDOztBUWg1R0k7Ozs7O01SdTVHRTtBUWg1R0Y7RUFDRSw4QkFBc0I7VUFBdEIsc0JBQXNCO0VBQUUsTUFBQTtFQUN4QixjQUFjO0VBQUUsTUFBQTtFQUNoQixlQUFlO0VBQUUsTUFBQTtFQUNqQixVQUFVO0VBQUUsTUFBQTtFQUNaLGNBQWM7RUFBRSxNQUFBO0VBQ2hCLG1CQUFtQjtFQUFFLE1BQUE7QVJ3NUczQjs7QVFyNUdJOzs7TVIwNUdFO0FRcjVHRjtFQUNFLHFCQUFxQjtFQUFFLE1BQUE7RUFDdkIsd0JBQXdCO0VBQUUsTUFBQTtBUnk1R2hDOztBUXQ1R0k7O01SMDVHRTtBUXQ1R0Y7RUFDRSxjQUFjO0FSdzVHcEI7O0FRbjVHSTttRlJzNUcrRTtBUW41Ry9FOztNUnM1R0U7QVFsNUdGO0VBQ0UsY0FBYztBUm81R3BCOztBUWo1R0k7O01ScTVHRTtBUWo1R0Y7RUFDRSxrQkFBa0I7QVJtNUd4Qjs7QVFoNUdJOztNUm81R0U7QVFoNUdGO0VBQ0UsY0FBYztBUms1R3BCOztBUXozR0k7bUZSNDNHK0U7QVF6M0cvRTs7TVI0M0dFO0FReDNHRjtFQUNFLHFCQUFxQjtBUjAzRzNCOztBUXYzR0k7O01SMjNHRTtBUXYzR0Y7RUFDRSxhQUFhO0FSeTNHbkI7O0FRcDNHSTttRlJ1M0crRTtBUXAzRy9FOztNUnUzR0U7QUFDTjtFUW4zR00sYUFBYTtBUnEzR25COztBVy80SEU7RUFDRSx3RUFBZ0Q7QVhrNUhwRDs7QVEvOUhJO0VHaUZBLDhCQUFzQjtVQUF0QixzQkFBc0I7RUFDdEIsZVB4RW1CO0FKMDlIdkI7O0FXOTRIRTs7O0VBR0UsMkJBQW1CO1VBQW5CLG1CQUFtQjtBWGk1SHZCOztBUWw5SEk7RUdzRUEsU0FBUztFQUNULFVBQVU7RUFFVixnQlB0RWlCO0VPd0VqQix5Q1BwRU07RU9xRU4sbUJQaEV5QjtFT2lFekIsZ0JQeEZtQjtFT3lGbkIsY1BoRlc7RU9tRlQsbUNBQW1DO0VBQ25DLGtDQUFrQztBWDQ0SHhDOztBUWpxSEk7RUdyT0EscUJBQXFCO0VBQ3JCLHNCQUFzQjtFQUd0QixlQUFlO0VBQ2YsWUFBWTtFQUNaLCtCQUErQjtBWHc0SG5DOztBUTUrR0k7RUd2WkEsWUFBWTtFQUNaLGdCQUFnQjtFQUNoQixzQlB2Rm1CO0FKODlIdkI7O0FXbjRIRTtFQUNFLDhCQUFzQjtVQUF0QixzQkFBc0I7RUFDdEIsV0FBVztFQUNYLHNCUDlGbUI7QUpvK0h2Qjs7QVdqNEhFOzs7Ozs7RUFLSSwwQkFBMEI7QVhxNEhoQzs7QVFwcEhJO0VHek9BLFVBQVU7RUFFVix3QkFBZ0I7S0FBaEIscUJBQWdCO1VBQWhCLGdCQUFnQjtFQUNoQixTQUFTO0VBQ1Qsc0JQcEhtQjtFT3FIbkIsdUJBQXVCO0VBRXZCLGNBQWM7QVgrM0hsQjs7QUFFQTtFWTM0SEksVUFBVTtBWjY0SGQ7O0FRaDJISTtFRzlCQSxjQUFjO0FYazRIbEI7O0FRenJISTs7Ozs7RUdoTUEsb0JBQW9CO0FYaTRIeEI7O0FXNzNIRTtFQUNFLHlCQUF5QjtBWGc0SDdCOztBVzczSEU7RUFDRSx3QkFBd0I7QVhnNEg1Qjs7QWFubElFO0VDc0VBLHNCQ1R1RDtFRDFCckQsa0JBQWtCO0VBQ2xCLGlCQUFpQjtBZHFqSXJCOztBWXg4SEU7RUFFRSxjQUFjO0VBQ2QsWUFBWTtBWjA4SGhCOztBWWw4SEU7RUFDRSxXQUFXO0FacThIZjs7QWFsbUlFO0VHTEUsZ0JEdUVTO0VDdEVULGVEc0VTO0FmcWlJYjs7QWF2bUlFO0VDeURFLHlCQUYrRDtFQUcvRCx3QkFIK0Q7QWRxakluRTs7QU14K0hNO0VPcElKO0lDeURFLHlCQUYrRDtJQUcvRCx3QkFIK0Q7RWQyaklqRTtBQUNGOztBTS8rSE07RU9wSUo7SUN5REUseUJBRitEO0lBRy9ELHdCQUgrRDtFZGtrSWpFO0FBQ0Y7O0FNai9ITTtFT3pJSjtJQ3lERSx5QkFGK0Q7SUFHL0Qsd0JBSCtEO0VkeWtJakU7QUFDRjs7QU14L0hNO0VPeklKO0lDeURFLHlCQUYrRDtJQUcvRCx3QkFIK0Q7RWRnbElqRTtBQUNGOztBYXhvSUU7RUFlTSxlQUFlO0VBQ2YsY0FBYztBYjZuSXRCOztBYTdvSUU7RUNzRUEsZUFIYTtBZDhrSWY7O0FhanBJRTtFQXlCTSxrQkFBa0I7RUFDbEIsaUJBQWlCO0FiNG5JekI7O0FhdHBJRTtFQ3NFQSxlQUhhO0FkdWxJZjs7QWExcElFO0VHTEUseUJBRnFDO0VBR3JDLHdCQUhxQztBaEJzcUl6Qzs7QWEvcElFO0VHTEUseUJBRnFDO0VBR3JDLHdCQUhxQztBaEIycUl6Qzs7QWFwcUlFO0VHTEUseUJBRnFDO0VBR3JDLHdCQUhxQztBaEJnckl6Qzs7QWF6bklFO0VJN0RBLFdDZXFEO0VBK0JyRCxXUHdEeUQ7RUs5RnZELHlCQUZxQztFQUdyQyx3QkFIcUM7QWhCdXJJekM7O0FNNWlJTTtFT3BGSjtJR3JERSx5QkFGcUM7SUFHckMsd0JBSHFDO0VoQjZySXZDO0FBQ0Y7O0FNbmpJTTtFT3BGSjtJR3JERSx5QkFGcUM7SUFHckMsd0JBSHFDO0VoQm9zSXZDO0FBQ0Y7O0FrQnRwSUk7RUFDRSxZUGlEc0Q7QVh3bUk1RDs7QW1CN3FJRTtFQUNFLFdSbUV1RDtBWDZtSTNEOztBYTFvSUU7RUFDRSxXQUFXO0FiNm9JZjs7QWF6b0lFO0VBQ0UsZUFBZTtFQUNmLGNBQWM7RUFDZCxnQkFBZ0I7RUFDaEIsZUFBZTtBYjRvSW5COztBYXRvSU07RUl4RkosZUNlcUQ7QWxCbXRJdkQ7O0FhcG9JUTtFTTdGSixrQkFBa0I7RUFDbEIsY0FIbUQ7QW5Cd3VJdkQ7O0Fhcm9JUTtFTWpHSixrQkFBa0I7RUFDbEIsZUFIbUQ7QW5CNnVJdkQ7O0FhbG9JTTtFTTlFSixlRGhCZ0M7QWxCb3VJbEM7O0FheHBJTTtFSXhGSixnQkNlcUQ7QWxCcXVJdkQ7O0FhdHBJUTtFTTdGSixrQkFBa0I7RUFDbEIsZUFIbUQ7QW5CMHZJdkQ7O0FhdnBJUTtFTWpHSixrQkFBa0I7RUFDbEIsZ0JBSG1EO0FuQit2SXZEOztBYXBwSU07RU05RUoscUJEYnFEO0FsQm12SXZEOztBYTFxSU07RUl4RkosVUNlcUQ7QWxCdXZJdkQ7O0FheHFJUTtFTTdGSixrQkFBa0I7RUFDbEIsU0FIbUQ7QW5CNHdJdkQ7O0FhenFJUTtFTWpHSixrQkFBa0I7RUFDbEIsVUFIbUQ7QW5CaXhJdkQ7O0FhdHFJTTtFTTlFSixzQkRicUQ7QWxCcXdJdkQ7O0FhNXJJTTtFSXhGSixnQkNlcUQ7QWxCeXdJdkQ7O0FhMXJJUTtFTTdGSixrQkFBa0I7RUFDbEIsZUFIbUQ7QW5COHhJdkQ7O0FhM3JJUTtFTWpHSixrQkFBa0I7RUFDbEIsZ0JBSG1EO0FuQm15SXZEOztBYXhySU07RU05RUosZ0JEYnFEO0FsQnV4SXZEOztBYTlzSU07RUl4RkosZ0JDZXFEO0FsQjJ4SXZEOztBYTVzSVE7RU03Rkosa0JBQWtCO0VBQ2xCLGVBSG1EO0FuQmd6SXZEOztBYTdzSVE7RU1qR0osa0JBQWtCO0VBQ2xCLGdCQUhtRDtBbkJxekl2RDs7QWExc0lNO0VNOUVKLHNCRGJxRDtBbEJ5eUl2RDs7QWFodUlNO0VJeEZKLFVDZXFEO0FsQjZ5SXZEOztBYTl0SVE7RU03Rkosa0JBQWtCO0VBQ2xCLFNBSG1EO0FuQmswSXZEOztBYS90SVE7RU1qR0osa0JBQWtCO0VBQ2xCLFVBSG1EO0FuQnUwSXZEOztBYTV0SU07RU05RUosc0JEYnFEO0FsQjJ6SXZEOztBYWx2SU07RUl4RkosZ0JDZXFEO0FsQit6SXZEOztBYWh2SVE7RU03Rkosa0JBQWtCO0VBQ2xCLGVBSG1EO0FuQm8xSXZEOztBYWp2SVE7RU1qR0osa0JBQWtCO0VBQ2xCLGdCQUhtRDtBbkJ5MUl2RDs7QWE5dUlNO0VNOUVKLGdCRGJxRDtBbEI2MEl2RDs7QWFwd0lNO0VJeEZKLGdCQ2VxRDtBbEJpMUl2RDs7QWFsd0lRO0VNN0ZKLGtCQUFrQjtFQUNsQixlQUhtRDtBbkJzMkl2RDs7QWFud0lRO0VNakdKLGtCQUFrQjtFQUNsQixnQkFIbUQ7QW5CMjJJdkQ7O0FhaHdJTTtFTTlFSixzQkRicUQ7QWxCKzFJdkQ7O0FhdHhJTTtFSXhGSixVQ2VxRDtBbEJtMkl2RDs7QWFweElRO0VNN0ZKLGtCQUFrQjtFQUNsQixTQUhtRDtBbkJ3M0l2RDs7QWFyeElRO0VNakdKLGtCQUFrQjtFQUNsQixVQUhtRDtBbkI2M0l2RDs7QWFseElNO0VNOUVKLHNCRGJxRDtBbEJpM0l2RDs7QWF4eUlNO0VJeEZKLGdCQ2VxRDtBbEJxM0l2RDs7QWF0eUlRO0VNN0ZKLGtCQUFrQjtFQUNsQixlQUhtRDtBbkIwNEl2RDs7QWF2eUlRO0VNakdKLGtCQUFrQjtFQUNsQixnQkFIbUQ7QW5CKzRJdkQ7O0FhcHlJTTtFTTlFSixnQkRicUQ7QWxCbTRJdkQ7O0FhMXpJTTtFSXhGSixnQkNlcUQ7QWxCdTRJdkQ7O0FheHpJUTtFTTdGSixrQkFBa0I7RUFDbEIsZUFIbUQ7QW5CNDVJdkQ7O0FhenpJUTtFTWpHSixrQkFBa0I7RUFDbEIsZ0JBSG1EO0FuQmk2SXZEOztBYXR6SU07RU05RUosc0JEYnFEO0FsQnE1SXZEOztBYTUwSU07RUl4RkosV0NlcUQ7QWxCeTVJdkQ7O0FhOXpJTTtFTTlFSixzQkRicUQ7QWxCNjVJdkQ7O0FhM3pJTTtFT3pHRixXVDhGdUQ7RVM3RnZELFdBQXVCO0FwQnc2STNCOztBYWgwSU07RU9qRkEsV0FBVztBcEJxNUlqQjs7QWFwMElNO0VPN0VBLFdBQVc7QXBCcTVJakI7O0FheDBJTTtFT3pFQSxXVDhEcUQ7QVh1MUkzRDs7QWE1MElNO0VPekdGLFdUOEZ1RDtFUzdGdkQsVUFBdUI7QXBCeTdJM0I7O0FhajFJTTtFT2pGQSxXQUFXO0FwQnM2SWpCOztBYXIxSU07RU83RUEsV0FBVztBcEJzNklqQjs7QWF6MUlNO0VPekVBLFdUOERxRDtBWHcySTNEOztBYTcxSU07RU96R0YsV1Q4RnVEO0VTN0Z2RCxnQkFBdUI7QXBCMDhJM0I7O0FhbDJJTTtFT2pGQSxXQUFXO0FwQnU3SWpCOztBYXQySU07RU83RUEsV0FBVztBcEJ1N0lqQjs7QWExMklNO0VPekVBLFdUOERxRDtBWHkzSTNEOztBYTkySU07RU96R0YsV1Q4RnVEO0VTN0Z2RCxVQUF1QjtBcEIyOUkzQjs7QWFuM0lNO0VPakZBLFdBQVc7QXBCdzhJakI7O0FhdjNJTTtFTzdFQSxXQUFXO0FwQnc4SWpCOztBYTMzSU07RU96RUEsV1Q4RHFEO0FYMDRJM0Q7O0FhLzNJTTtFT3pHRixXVDhGdUQ7RVM3RnZELFVBQXVCO0FwQjQrSTNCOztBYXA0SU07RU9qRkEsV0FBVztBcEJ5OUlqQjs7QWF4NElNO0VPN0VBLFdBQVc7QXBCeTlJakI7O0FhNTRJTTtFT3pFQSxXVDhEcUQ7QVgyNUkzRDs7QWFoNUlNO0VPekdGLFdUOEZ1RDtFUzdGdkQsZ0JBQXVCO0FwQjYvSTNCOztBYXI1SU07RU9qRkEsV0FBVztBcEIwK0lqQjs7QWF6NUlNO0VPN0VBLFdBQVc7QXBCMCtJakI7O0FhNzVJTTtFT3pFQSxXVDhEcUQ7QVg0NkkzRDs7QWFqNklNO0VPekdGLFdUOEZ1RDtFUzdGdkQsZ0JBQXVCO0FwQjhnSjNCOztBYXQ2SU07RU9qRkEsV0FBVztBcEIyL0lqQjs7QWExNklNO0VPN0VBLFdBQVc7QXBCMi9JakI7O0FhOTZJTTtFT3pFQSxXVDhEcUQ7QVg2N0kzRDs7QWFsN0lNO0VPekdGLFdUOEZ1RDtFUzdGdkQsWUFBdUI7QXBCK2hKM0I7O0FhdjdJTTtFT2pGQSxXQUFXO0FwQjRnSmpCOztBYTM3SU07RU83RUEsV0FBVztBcEI0Z0pqQjs7QWEvN0lNO0VPekVBLFdUOERxRDtBWDg4STNEOztBYW44SU07RU96R0YsV1Q4RnVEO0VTN0Z2RCxnQkFBdUI7QXBCZ2pKM0I7O0FheDhJTTtFT2pGQSxXQUFXO0FwQjZoSmpCOztBYTU4SU07RU83RUEsV0FBVztBcEI2aEpqQjs7QWFoOUlNO0VPekVBLFdUOERxRDtBWCs5STNEOztBYXA5SU07RU96R0YsV1Q4RnVEO0VTN0Z2RCxVQUF1QjtBcEJpa0ozQjs7QWF6OUlNO0VPakZBLFdBQVc7QXBCOGlKakI7O0FhNzlJTTtFTzdFQSxXQUFXO0FwQjhpSmpCOztBYWorSU07RU96RUEsV1Q4RHFEO0FYZy9JM0Q7O0FhcitJTTtFT3pHRixXVDhGdUQ7RVM3RnZELGVBQXVCO0FwQmtsSjNCOztBYTErSU07RU9qRkEsV0FBVztBcEIrakpqQjs7QWE5K0lNO0VPN0VBLFdBQVc7QXBCK2pKakI7O0FhbC9JTTtFT3pFQSxXVDhEcUQ7QVhpZ0ozRDs7QWF0L0lNO0VPekdGLFdUOEZ1RDtFUzdGdkQsZUFBdUI7QXBCbW1KM0I7O0FhMy9JTTtFT2pGQSxXQUFXO0FwQmdsSmpCOztBYS8vSU07RU83RUEsV0FBVztBcEJnbEpqQjs7QWFuZ0pNO0VPekVBLFdUOERxRDtBWGtoSjNEOztBYWpnSkk7RUcvR0EsZ0JEdUVTO0VDdEVULGVEc0VTO0FmOGlKYjs7QWF0Z0pJO0VBSUksZUFBZTtFQUNmLGNBQWM7QWJzZ0p0Qjs7QWFsZ0pJO0VBQ0UsZUFBZTtFQUNmLGNBQWM7QWJxZ0pwQjs7QWFsZ0pJO0VHN0hBLHlCQUZxQztFQUdyQyx3QkFIcUM7QWhCc29KekM7O0FhbGdKSTtFTWpJQSxrQkFBa0I7RUFDbEIsaUJBQWlCO0FuQnVvSnJCOztBbUI1b0pJO0VBQ0UsV0FBVztFQUNYLFdBQVc7QW5CK29KakI7O0FhdmdKSTs7O0VNNUhGLGdCQUFnQjtFQUNoQixXQUFXO0VBQ1gsZUFBZTtFQUNmLGNBQWM7QW5CeW9KaEI7O0FNOWdKTTtFT3pEQTtJSXhGSixlQ2VxRDtFbEJxcEpyRDtFYXRrSk07SU03Rkosa0JBQWtCO0lBQ2xCLGNBSG1EO0VuQnlxSnJEO0VhdGtKTTtJTWpHSixrQkFBa0I7SUFDbEIsZUFIbUQ7RW5CNnFKckQ7RWFsa0pJO0lNOUVKLGVEaEJnQztFbEJtcUpoQztFYXZsSkk7SUl4RkosZ0JDZXFEO0VsQm1xSnJEO0VhcGxKTTtJTTdGSixrQkFBa0I7SUFDbEIsZUFIbUQ7RW5CdXJKckQ7RWFwbEpNO0lNakdKLGtCQUFrQjtJQUNsQixnQkFIbUQ7RW5CMnJKckQ7RWFobEpJO0lNOUVKLHFCRGJxRDtFbEI4cUpyRDtFYXJtSkk7SUl4RkosVUNlcUQ7RWxCaXJKckQ7RWFsbUpNO0lNN0ZKLGtCQUFrQjtJQUNsQixTQUhtRDtFbkJxc0pyRDtFYWxtSk07SU1qR0osa0JBQWtCO0lBQ2xCLFVBSG1EO0VuQnlzSnJEO0VhOWxKSTtJTTlFSixzQkRicUQ7RWxCNHJKckQ7RWFubkpJO0lJeEZKLGdCQ2VxRDtFbEIrckpyRDtFYWhuSk07SU03Rkosa0JBQWtCO0lBQ2xCLGVBSG1EO0VuQm10SnJEO0VhaG5KTTtJTWpHSixrQkFBa0I7SUFDbEIsZ0JBSG1EO0VuQnV0SnJEO0VhNW1KSTtJTTlFSixnQkRicUQ7RWxCMHNKckQ7RWFqb0pJO0lJeEZKLGdCQ2VxRDtFbEI2c0pyRDtFYTluSk07SU03Rkosa0JBQWtCO0lBQ2xCLGVBSG1EO0VuQml1SnJEO0VhOW5KTTtJTWpHSixrQkFBa0I7SUFDbEIsZ0JBSG1EO0VuQnF1SnJEO0VhMW5KSTtJTTlFSixzQkRicUQ7RWxCd3RKckQ7RWEvb0pJO0lJeEZKLFVDZXFEO0VsQjJ0SnJEO0VhNW9KTTtJTTdGSixrQkFBa0I7SUFDbEIsU0FIbUQ7RW5CK3VKckQ7RWE1b0pNO0lNakdKLGtCQUFrQjtJQUNsQixVQUhtRDtFbkJtdkpyRDtFYXhvSkk7SU05RUosc0JEYnFEO0VsQnN1SnJEO0VhN3BKSTtJSXhGSixnQkNlcUQ7RWxCeXVKckQ7RWExcEpNO0lNN0ZKLGtCQUFrQjtJQUNsQixlQUhtRDtFbkI2dkpyRDtFYTFwSk07SU1qR0osa0JBQWtCO0lBQ2xCLGdCQUhtRDtFbkJpd0pyRDtFYXRwSkk7SU05RUosZ0JEYnFEO0VsQm92SnJEO0VhM3FKSTtJSXhGSixnQkNlcUQ7RWxCdXZKckQ7RWF4cUpNO0lNN0ZKLGtCQUFrQjtJQUNsQixlQUhtRDtFbkIyd0pyRDtFYXhxSk07SU1qR0osa0JBQWtCO0lBQ2xCLGdCQUhtRDtFbkIrd0pyRDtFYXBxSkk7SU05RUosc0JEYnFEO0VsQmt3SnJEO0VhenJKSTtJSXhGSixVQ2VxRDtFbEJxd0pyRDtFYXRySk07SU03Rkosa0JBQWtCO0lBQ2xCLFNBSG1EO0VuQnl4SnJEO0VhdHJKTTtJTWpHSixrQkFBa0I7SUFDbEIsVUFIbUQ7RW5CNnhKckQ7RWFsckpJO0lNOUVKLHNCRGJxRDtFbEJneEpyRDtFYXZzSkk7SUl4RkosZ0JDZXFEO0VsQm14SnJEO0VhcHNKTTtJTTdGSixrQkFBa0I7SUFDbEIsZUFIbUQ7RW5CdXlKckQ7RWFwc0pNO0lNakdKLGtCQUFrQjtJQUNsQixnQkFIbUQ7RW5CMnlKckQ7RWFoc0pJO0lNOUVKLGdCRGJxRDtFbEI4eEpyRDtFYXJ0Skk7SUl4RkosZ0JDZXFEO0VsQml5SnJEO0VhbHRKTTtJTTdGSixrQkFBa0I7SUFDbEIsZUFIbUQ7RW5CcXpKckQ7RWFsdEpNO0lNakdKLGtCQUFrQjtJQUNsQixnQkFIbUQ7RW5CeXpKckQ7RWE5c0pJO0lNOUVKLHNCRGJxRDtFbEI0eUpyRDtFYW51Skk7SUl4RkosV0NlcUQ7RWxCK3lKckQ7RWFwdEpJO0lNOUVKLHNCRGJxRDtFbEJrekpyRDtFYWh0Skk7SU96R0YsV1Q4RnVEO0lTN0Z2RCxXQUF1QjtFcEI0ekp6QjtFYXB0Skk7SU9qRkEsV0FBVztFcEJ3eUpmO0VhdnRKSTtJTzdFQSxXQUFXO0VwQnV5SmY7RWExdEpJO0lPekVBLFdUOERxRDtFWHd1SnpEO0VhN3RKSTtJT3pHRixXVDhGdUQ7SVM3RnZELFVBQXVCO0VwQnkwSnpCO0VhanVKSTtJT2pGQSxXQUFXO0VwQnF6SmY7RWFwdUpJO0lPN0VBLFdBQVc7RXBCb3pKZjtFYXZ1Skk7SU96RUEsV1Q4RHFEO0VYcXZKekQ7RWExdUpJO0lPekdGLFdUOEZ1RDtJUzdGdkQsZ0JBQXVCO0VwQnMxSnpCO0VhOXVKSTtJT2pGQSxXQUFXO0VwQmswSmY7RWFqdkpJO0lPN0VBLFdBQVc7RXBCaTBKZjtFYXB2Skk7SU96RUEsV1Q4RHFEO0VYa3dKekQ7RWF2dkpJO0lPekdGLFdUOEZ1RDtJUzdGdkQsVUFBdUI7RXBCbTJKekI7RWEzdkpJO0lPakZBLFdBQVc7RXBCKzBKZjtFYTl2Skk7SU83RUEsV0FBVztFcEI4MEpmO0VhandKSTtJT3pFQSxXVDhEcUQ7RVgrd0p6RDtFYXB3Skk7SU96R0YsV1Q4RnVEO0lTN0Z2RCxVQUF1QjtFcEJnM0p6QjtFYXh3Skk7SU9qRkEsV0FBVztFcEI0MUpmO0VhM3dKSTtJTzdFQSxXQUFXO0VwQjIxSmY7RWE5d0pJO0lPekVBLFdUOERxRDtFWDR4SnpEO0VhanhKSTtJT3pHRixXVDhGdUQ7SVM3RnZELGdCQUF1QjtFcEI2M0p6QjtFYXJ4Skk7SU9qRkEsV0FBVztFcEJ5MkpmO0VheHhKSTtJTzdFQSxXQUFXO0VwQncySmY7RWEzeEpJO0lPekVBLFdUOERxRDtFWHl5SnpEO0VhOXhKSTtJT3pHRixXVDhGdUQ7SVM3RnZELGdCQUF1QjtFcEIwNEp6QjtFYWx5Skk7SU9qRkEsV0FBVztFcEJzM0pmO0VhcnlKSTtJTzdFQSxXQUFXO0VwQnEzSmY7RWF4eUpJO0lPekVBLFdUOERxRDtFWHN6SnpEO0VhM3lKSTtJT3pHRixXVDhGdUQ7SVM3RnZELFlBQXVCO0VwQnU1SnpCO0VhL3lKSTtJT2pGQSxXQUFXO0VwQm00SmY7RWFsekpJO0lPN0VBLFdBQVc7RXBCazRKZjtFYXJ6Skk7SU96RUEsV1Q4RHFEO0VYbTBKekQ7RWF4ekpJO0lPekdGLFdUOEZ1RDtJUzdGdkQsZ0JBQXVCO0VwQm82SnpCO0VhNXpKSTtJT2pGQSxXQUFXO0VwQmc1SmY7RWEvekpJO0lPN0VBLFdBQVc7RXBCKzRKZjtFYWwwSkk7SU96RUEsV1Q4RHFEO0VYZzFKekQ7RWFyMEpJO0lPekdGLFdUOEZ1RDtJUzdGdkQsVUFBdUI7RXBCaTdKekI7RWF6MEpJO0lPakZBLFdBQVc7RXBCNjVKZjtFYTUwSkk7SU83RUEsV0FBVztFcEI0NUpmO0VhLzBKSTtJT3pFQSxXVDhEcUQ7RVg2MUp6RDtFYWwxSkk7SU96R0YsV1Q4RnVEO0lTN0Z2RCxlQUF1QjtFcEI4N0p6QjtFYXQxSkk7SU9qRkEsV0FBVztFcEIwNkpmO0VhejFKSTtJTzdFQSxXQUFXO0VwQnk2SmY7RWE1MUpJO0lPekVBLFdUOERxRDtFWDAySnpEO0VhLzFKSTtJT3pHRixXVDhGdUQ7SVM3RnZELGVBQXVCO0VwQjI4SnpCO0VhbjJKSTtJT2pGQSxXQUFXO0VwQnU3SmY7RWF0MkpJO0lPN0VBLFdBQVc7RXBCczdKZjtFYXoySkk7SU96RUEsV1Q4RHFEO0VYdTNKekQ7RWF0MkpFO0lHL0dBLGdCRHVFUztJQ3RFVCxlRHNFUztFZms1Slg7RWExMkpFO0lBSUksZUFBZTtJQUNmLGNBQWM7RWJ5MkpwQjtFYXIySkU7SUFDRSxlQUFlO0lBQ2YsY0FBYztFYnUySmxCO0VhcDJKRTtJRzdIQSx5QkFGcUM7SUFHckMsd0JBSHFDO0VoQnUrSnZDO0VhbjJKRTtJTWpJQSxrQkFBa0I7SUFDbEIsaUJBQWlCO0VuQnUrSm5CO0VtQjUrSkU7SUFDRSxXQUFXO0lBQ1gsV0FBVztFbkI4K0pmO0VhdDJKRTs7O0lNNUhGLGdCQUFnQjtJQUNoQixXQUFXO0lBQ1gsZUFBZTtJQUNmLGNBQWM7RW5CdStKZDtBQUNGOztBTTcySk07RU96REE7SUl4RkosZUNlcUQ7RWxCby9KckQ7RWFyNkpNO0lNN0ZKLGtCQUFrQjtJQUNsQixjQUhtRDtFbkJ3Z0tyRDtFYXI2Sk07SU1qR0osa0JBQWtCO0lBQ2xCLGVBSG1EO0VuQjRnS3JEO0VhajZKSTtJTTlFSixlRGhCZ0M7RWxCa2dLaEM7RWF0N0pJO0lJeEZKLGdCQ2VxRDtFbEJrZ0tyRDtFYW43Sk07SU03Rkosa0JBQWtCO0lBQ2xCLGVBSG1EO0VuQnNoS3JEO0VhbjdKTTtJTWpHSixrQkFBa0I7SUFDbEIsZ0JBSG1EO0VuQjBoS3JEO0VhLzZKSTtJTTlFSixxQkRicUQ7RWxCNmdLckQ7RWFwOEpJO0lJeEZKLFVDZXFEO0VsQmdoS3JEO0VhajhKTTtJTTdGSixrQkFBa0I7SUFDbEIsU0FIbUQ7RW5Cb2lLckQ7RWFqOEpNO0lNakdKLGtCQUFrQjtJQUNsQixVQUhtRDtFbkJ3aUtyRDtFYTc3Skk7SU05RUosc0JEYnFEO0VsQjJoS3JEO0VhbDlKSTtJSXhGSixnQkNlcUQ7RWxCOGhLckQ7RWEvOEpNO0lNN0ZKLGtCQUFrQjtJQUNsQixlQUhtRDtFbkJraktyRDtFYS84Sk07SU1qR0osa0JBQWtCO0lBQ2xCLGdCQUhtRDtFbkJzaktyRDtFYTM4Skk7SU05RUosZ0JEYnFEO0VsQnlpS3JEO0VhaCtKSTtJSXhGSixnQkNlcUQ7RWxCNGlLckQ7RWE3OUpNO0lNN0ZKLGtCQUFrQjtJQUNsQixlQUhtRDtFbkJna0tyRDtFYTc5Sk07SU1qR0osa0JBQWtCO0lBQ2xCLGdCQUhtRDtFbkJva0tyRDtFYXo5Skk7SU05RUosc0JEYnFEO0VsQnVqS3JEO0VhOStKSTtJSXhGSixVQ2VxRDtFbEIwaktyRDtFYTMrSk07SU03Rkosa0JBQWtCO0lBQ2xCLFNBSG1EO0VuQjhrS3JEO0VhMytKTTtJTWpHSixrQkFBa0I7SUFDbEIsVUFIbUQ7RW5Ca2xLckQ7RWF2K0pJO0lNOUVKLHNCRGJxRDtFbEJxa0tyRDtFYTUvSkk7SUl4RkosZ0JDZXFEO0VsQndrS3JEO0Vhei9KTTtJTTdGSixrQkFBa0I7SUFDbEIsZUFIbUQ7RW5CNGxLckQ7RWF6L0pNO0lNakdKLGtCQUFrQjtJQUNsQixnQkFIbUQ7RW5CZ21LckQ7RWFyL0pJO0lNOUVKLGdCRGJxRDtFbEJtbEtyRDtFYTFnS0k7SUl4RkosZ0JDZXFEO0VsQnNsS3JEO0VhdmdLTTtJTTdGSixrQkFBa0I7SUFDbEIsZUFIbUQ7RW5CMG1LckQ7RWF2Z0tNO0lNakdKLGtCQUFrQjtJQUNsQixnQkFIbUQ7RW5COG1LckQ7RWFuZ0tJO0lNOUVKLHNCRGJxRDtFbEJpbUtyRDtFYXhoS0k7SUl4RkosVUNlcUQ7RWxCb21LckQ7RWFyaEtNO0lNN0ZKLGtCQUFrQjtJQUNsQixTQUhtRDtFbkJ3bktyRDtFYXJoS007SU1qR0osa0JBQWtCO0lBQ2xCLFVBSG1EO0VuQjRuS3JEO0VhamhLSTtJTTlFSixzQkRicUQ7RWxCK21LckQ7RWF0aUtJO0lJeEZKLGdCQ2VxRDtFbEJrbktyRDtFYW5pS007SU03Rkosa0JBQWtCO0lBQ2xCLGVBSG1EO0VuQnNvS3JEO0VhbmlLTTtJTWpHSixrQkFBa0I7SUFDbEIsZ0JBSG1EO0VuQjBvS3JEO0VhL2hLSTtJTTlFSixnQkRicUQ7RWxCNm5LckQ7RWFwaktJO0lJeEZKLGdCQ2VxRDtFbEJnb0tyRDtFYWpqS007SU03Rkosa0JBQWtCO0lBQ2xCLGVBSG1EO0VuQm9wS3JEO0VhampLTTtJTWpHSixrQkFBa0I7SUFDbEIsZ0JBSG1EO0VuQndwS3JEO0VhN2lLSTtJTTlFSixzQkRicUQ7RWxCMm9LckQ7RWFsa0tJO0lJeEZKLFdDZXFEO0VsQjhvS3JEO0VhbmpLSTtJTTlFSixzQkRicUQ7RWxCaXBLckQ7RWEvaUtJO0lPekdGLFdUOEZ1RDtJUzdGdkQsV0FBdUI7RXBCMnBLekI7RWFuaktJO0lPakZBLFdBQVc7RXBCdW9LZjtFYXRqS0k7SU83RUEsV0FBVztFcEJzb0tmO0VhempLSTtJT3pFQSxXVDhEcUQ7RVh1a0t6RDtFYTVqS0k7SU96R0YsV1Q4RnVEO0lTN0Z2RCxVQUF1QjtFcEJ3cUt6QjtFYWhrS0k7SU9qRkEsV0FBVztFcEJvcEtmO0VhbmtLSTtJTzdFQSxXQUFXO0VwQm1wS2Y7RWF0a0tJO0lPekVBLFdUOERxRDtFWG9sS3pEO0VhemtLSTtJT3pHRixXVDhGdUQ7SVM3RnZELGdCQUF1QjtFcEJxckt6QjtFYTdrS0k7SU9qRkEsV0FBVztFcEJpcUtmO0VhaGxLSTtJTzdFQSxXQUFXO0VwQmdxS2Y7RWFubEtJO0lPekVBLFdUOERxRDtFWGltS3pEO0VhdGxLSTtJT3pHRixXVDhGdUQ7SVM3RnZELFVBQXVCO0VwQmtzS3pCO0VhMWxLSTtJT2pGQSxXQUFXO0VwQjhxS2Y7RWE3bEtJO0lPN0VBLFdBQVc7RXBCNnFLZjtFYWhtS0k7SU96RUEsV1Q4RHFEO0VYOG1LekQ7RWFubUtJO0lPekdGLFdUOEZ1RDtJUzdGdkQsVUFBdUI7RXBCK3NLekI7RWF2bUtJO0lPakZBLFdBQVc7RXBCMnJLZjtFYTFtS0k7SU83RUEsV0FBVztFcEIwcktmO0VhN21LSTtJT3pFQSxXVDhEcUQ7RVgybkt6RDtFYWhuS0k7SU96R0YsV1Q4RnVEO0lTN0Z2RCxnQkFBdUI7RXBCNHRLekI7RWFwbktJO0lPakZBLFdBQVc7RXBCd3NLZjtFYXZuS0k7SU83RUEsV0FBVztFcEJ1c0tmO0VhMW5LSTtJT3pFQSxXVDhEcUQ7RVh3b0t6RDtFYTduS0k7SU96R0YsV1Q4RnVEO0lTN0Z2RCxnQkFBdUI7RXBCeXVLekI7RWFqb0tJO0lPakZBLFdBQVc7RXBCcXRLZjtFYXBvS0k7SU83RUEsV0FBVztFcEJvdEtmO0Vhdm9LSTtJT3pFQSxXVDhEcUQ7RVhxcEt6RDtFYTFvS0k7SU96R0YsV1Q4RnVEO0lTN0Z2RCxZQUF1QjtFcEJzdkt6QjtFYTlvS0k7SU9qRkEsV0FBVztFcEJrdUtmO0VhanBLSTtJTzdFQSxXQUFXO0VwQml1S2Y7RWFwcEtJO0lPekVBLFdUOERxRDtFWGtxS3pEO0VhdnBLSTtJT3pHRixXVDhGdUQ7SVM3RnZELGdCQUF1QjtFcEJtd0t6QjtFYTNwS0k7SU9qRkEsV0FBVztFcEIrdUtmO0VhOXBLSTtJTzdFQSxXQUFXO0VwQjh1S2Y7RWFqcUtJO0lPekVBLFdUOERxRDtFWCtxS3pEO0VhcHFLSTtJT3pHRixXVDhGdUQ7SVM3RnZELFVBQXVCO0VwQmd4S3pCO0VheHFLSTtJT2pGQSxXQUFXO0VwQjR2S2Y7RWEzcUtJO0lPN0VBLFdBQVc7RXBCMnZLZjtFYTlxS0k7SU96RUEsV1Q4RHFEO0VYNHJLekQ7RWFqcktJO0lPekdGLFdUOEZ1RDtJUzdGdkQsZUFBdUI7RXBCNnhLekI7RWFycktJO0lPakZBLFdBQVc7RXBCeXdLZjtFYXhyS0k7SU83RUEsV0FBVztFcEJ3d0tmO0VhM3JLSTtJT3pFQSxXVDhEcUQ7RVh5c0t6RDtFYTlyS0k7SU96R0YsV1Q4RnVEO0lTN0Z2RCxlQUF1QjtFcEIweUt6QjtFYWxzS0k7SU9qRkEsV0FBVztFcEJzeEtmO0VhcnNLSTtJTzdFQSxXQUFXO0VwQnF4S2Y7RWF4c0tJO0lPekVBLFdUOERxRDtFWHN0S3pEO0VhcnNLRTtJRy9HQSxnQkR1RVM7SUN0RVQsZURzRVM7RWZpdktYO0VhenNLRTtJQUlJLGVBQWU7SUFDZixjQUFjO0Vid3NLcEI7RWFwc0tFO0lBQ0UsZUFBZTtJQUNmLGNBQWM7RWJzc0tsQjtFYW5zS0U7SUc3SEEseUJBRnFDO0lBR3JDLHdCQUhxQztFaEJzMEt2QztFYWxzS0U7SU1qSUEsa0JBQWtCO0lBQ2xCLGlCQUFpQjtFbkJzMEtuQjtFbUIzMEtFO0lBQ0UsV0FBVztJQUNYLFdBQVc7RW5CNjBLZjtFYXJzS0U7OztJTTVIRixnQkFBZ0I7SUFDaEIsV0FBVztJQUNYLGVBQWU7SUFDZixjQUFjO0VuQnMwS2Q7QUFDRjs7QU12c0tNO0VPOURBO0lJeEZKLGVDZXFEO0VsQm0xS3JEO0VhcHdLTTtJTTdGSixrQkFBa0I7SUFDbEIsY0FIbUQ7RW5CdTJLckQ7RWFwd0tNO0lNakdKLGtCQUFrQjtJQUNsQixlQUhtRDtFbkIyMktyRDtFYWh3S0k7SU05RUosZURoQmdDO0VsQmkyS2hDO0VhcnhLSTtJSXhGSixnQkNlcUQ7RWxCaTJLckQ7RWFseEtNO0lNN0ZKLGtCQUFrQjtJQUNsQixlQUhtRDtFbkJxM0tyRDtFYWx4S007SU1qR0osa0JBQWtCO0lBQ2xCLGdCQUhtRDtFbkJ5M0tyRDtFYTl3S0k7SU05RUoscUJEYnFEO0VsQjQyS3JEO0VhbnlLSTtJSXhGSixVQ2VxRDtFbEIrMktyRDtFYWh5S007SU03Rkosa0JBQWtCO0lBQ2xCLFNBSG1EO0VuQm00S3JEO0VhaHlLTTtJTWpHSixrQkFBa0I7SUFDbEIsVUFIbUQ7RW5CdTRLckQ7RWE1eEtJO0lNOUVKLHNCRGJxRDtFbEIwM0tyRDtFYWp6S0k7SUl4RkosZ0JDZXFEO0VsQjYzS3JEO0VhOXlLTTtJTTdGSixrQkFBa0I7SUFDbEIsZUFIbUQ7RW5CaTVLckQ7RWE5eUtNO0lNakdKLGtCQUFrQjtJQUNsQixnQkFIbUQ7RW5CcTVLckQ7RWExeUtJO0lNOUVKLGdCRGJxRDtFbEJ3NEtyRDtFYS96S0k7SUl4RkosZ0JDZXFEO0VsQjI0S3JEO0VhNXpLTTtJTTdGSixrQkFBa0I7SUFDbEIsZUFIbUQ7RW5CKzVLckQ7RWE1ektNO0lNakdKLGtCQUFrQjtJQUNsQixnQkFIbUQ7RW5CbTZLckQ7RWF4ektJO0lNOUVKLHNCRGJxRDtFbEJzNUtyRDtFYTcwS0k7SUl4RkosVUNlcUQ7RWxCeTVLckQ7RWExMEtNO0lNN0ZKLGtCQUFrQjtJQUNsQixTQUhtRDtFbkI2NktyRDtFYTEwS007SU1qR0osa0JBQWtCO0lBQ2xCLFVBSG1EO0VuQmk3S3JEO0VhdDBLSTtJTTlFSixzQkRicUQ7RWxCbzZLckQ7RWEzMUtJO0lJeEZKLGdCQ2VxRDtFbEJ1NktyRDtFYXgxS007SU03Rkosa0JBQWtCO0lBQ2xCLGVBSG1EO0VuQjI3S3JEO0VheDFLTTtJTWpHSixrQkFBa0I7SUFDbEIsZ0JBSG1EO0VuQis3S3JEO0VhcDFLSTtJTTlFSixnQkRicUQ7RWxCazdLckQ7RWF6MktJO0lJeEZKLGdCQ2VxRDtFbEJxN0tyRDtFYXQyS007SU03Rkosa0JBQWtCO0lBQ2xCLGVBSG1EO0VuQnk4S3JEO0VhdDJLTTtJTWpHSixrQkFBa0I7SUFDbEIsZ0JBSG1EO0VuQjY4S3JEO0VhbDJLSTtJTTlFSixzQkRicUQ7RWxCZzhLckQ7RWF2M0tJO0lJeEZKLFVDZXFEO0VsQm04S3JEO0VhcDNLTTtJTTdGSixrQkFBa0I7SUFDbEIsU0FIbUQ7RW5CdTlLckQ7RWFwM0tNO0lNakdKLGtCQUFrQjtJQUNsQixVQUhtRDtFbkIyOUtyRDtFYWgzS0k7SU05RUosc0JEYnFEO0VsQjg4S3JEO0VhcjRLSTtJSXhGSixnQkNlcUQ7RWxCaTlLckQ7RWFsNEtNO0lNN0ZKLGtCQUFrQjtJQUNsQixlQUhtRDtFbkJxK0tyRDtFYWw0S007SU1qR0osa0JBQWtCO0lBQ2xCLGdCQUhtRDtFbkJ5K0tyRDtFYTkzS0k7SU05RUosZ0JEYnFEO0VsQjQ5S3JEO0VhbjVLSTtJSXhGSixnQkNlcUQ7RWxCKzlLckQ7RWFoNUtNO0lNN0ZKLGtCQUFrQjtJQUNsQixlQUhtRDtFbkJtL0tyRDtFYWg1S007SU1qR0osa0JBQWtCO0lBQ2xCLGdCQUhtRDtFbkJ1L0tyRDtFYTU0S0k7SU05RUosc0JEYnFEO0VsQjArS3JEO0VhajZLSTtJSXhGSixXQ2VxRDtFbEI2K0tyRDtFYWw1S0k7SU05RUosc0JEYnFEO0VsQmcvS3JEO0VhOTRLSTtJT3pHRixXVDhGdUQ7SVM3RnZELFdBQXVCO0VwQjAvS3pCO0VhbDVLSTtJT2pGQSxXQUFXO0VwQnMrS2Y7RWFyNUtJO0lPN0VBLFdBQVc7RXBCcStLZjtFYXg1S0k7SU96RUEsV1Q4RHFEO0VYczZLekQ7RWEzNUtJO0lPekdGLFdUOEZ1RDtJUzdGdkQsVUFBdUI7RXBCdWdMekI7RWEvNUtJO0lPakZBLFdBQVc7RXBCbS9LZjtFYWw2S0k7SU83RUEsV0FBVztFcEJrL0tmO0VhcjZLSTtJT3pFQSxXVDhEcUQ7RVhtN0t6RDtFYXg2S0k7SU96R0YsV1Q4RnVEO0lTN0Z2RCxnQkFBdUI7RXBCb2hMekI7RWE1NktJO0lPakZBLFdBQVc7RXBCZ2dMZjtFYS82S0k7SU83RUEsV0FBVztFcEIrL0tmO0VhbDdLSTtJT3pFQSxXVDhEcUQ7RVhnOEt6RDtFYXI3S0k7SU96R0YsV1Q4RnVEO0lTN0Z2RCxVQUF1QjtFcEJpaUx6QjtFYXo3S0k7SU9qRkEsV0FBVztFcEI2Z0xmO0VhNTdLSTtJTzdFQSxXQUFXO0VwQjRnTGY7RWEvN0tJO0lPekVBLFdUOERxRDtFWDY4S3pEO0VhbDhLSTtJT3pHRixXVDhGdUQ7SVM3RnZELFVBQXVCO0VwQjhpTHpCO0VhdDhLSTtJT2pGQSxXQUFXO0VwQjBoTGY7RWF6OEtJO0lPN0VBLFdBQVc7RXBCeWhMZjtFYTU4S0k7SU96RUEsV1Q4RHFEO0VYMDlLekQ7RWEvOEtJO0lPekdGLFdUOEZ1RDtJUzdGdkQsZ0JBQXVCO0VwQjJqTHpCO0VhbjlLSTtJT2pGQSxXQUFXO0VwQnVpTGY7RWF0OUtJO0lPN0VBLFdBQVc7RXBCc2lMZjtFYXo5S0k7SU96RUEsV1Q4RHFEO0VYdStLekQ7RWE1OUtJO0lPekdGLFdUOEZ1RDtJUzdGdkQsZ0JBQXVCO0VwQndrTHpCO0VhaCtLSTtJT2pGQSxXQUFXO0VwQm9qTGY7RWFuK0tJO0lPN0VBLFdBQVc7RXBCbWpMZjtFYXQrS0k7SU96RUEsV1Q4RHFEO0VYby9LekQ7RWF6K0tJO0lPekdGLFdUOEZ1RDtJUzdGdkQsWUFBdUI7RXBCcWxMekI7RWE3K0tJO0lPakZBLFdBQVc7RXBCaWtMZjtFYWgvS0k7SU83RUEsV0FBVztFcEJna0xmO0Vhbi9LSTtJT3pFQSxXVDhEcUQ7RVhpZ0x6RDtFYXQvS0k7SU96R0YsV1Q4RnVEO0lTN0Z2RCxnQkFBdUI7RXBCa21MekI7RWExL0tJO0lPakZBLFdBQVc7RXBCOGtMZjtFYTcvS0k7SU83RUEsV0FBVztFcEI2a0xmO0VhaGdMSTtJT3pFQSxXVDhEcUQ7RVg4Z0x6RDtFYW5nTEk7SU96R0YsV1Q4RnVEO0lTN0Z2RCxVQUF1QjtFcEIrbUx6QjtFYXZnTEk7SU9qRkEsV0FBVztFcEIybExmO0VhMWdMSTtJTzdFQSxXQUFXO0VwQjBsTGY7RWE3Z0xJO0lPekVBLFdUOERxRDtFWDJoTHpEO0VhaGhMSTtJT3pHRixXVDhGdUQ7SVM3RnZELGVBQXVCO0VwQjRuTHpCO0VhcGhMSTtJT2pGQSxXQUFXO0VwQndtTGY7RWF2aExJO0lPN0VBLFdBQVc7RXBCdW1MZjtFYTFoTEk7SU96RUEsV1Q4RHFEO0VYd2lMekQ7RWE3aExJO0lPekdGLFdUOEZ1RDtJUzdGdkQsZUFBdUI7RXBCeW9MekI7RWFqaUxJO0lPakZBLFdBQVc7RXBCcW5MZjtFYXBpTEk7SU83RUEsV0FBVztFcEJvbkxmO0VhdmlMSTtJT3pFQSxXVDhEcUQ7RVhxakx6RDtFYXBpTEU7SUcvR0EsZ0JEdUVTO0lDdEVULGVEc0VTO0VmZ2xMWDtFYXhpTEU7SUFJSSxlQUFlO0lBQ2YsY0FBYztFYnVpTHBCO0VhbmlMRTtJQUNFLGVBQWU7SUFDZixjQUFjO0VicWlMbEI7RWFsaUxFO0lHN0hBLHlCQUZxQztJQUdyQyx3QkFIcUM7RWhCcXFMdkM7RWFqaUxFO0lNaklBLGtCQUFrQjtJQUNsQixpQkFBaUI7RW5CcXFMbkI7RW1CMXFMRTtJQUNFLFdBQVc7SUFDWCxXQUFXO0VuQjRxTGY7RWFwaUxFOzs7SU01SEYsZ0JBQWdCO0lBQ2hCLFdBQVc7SUFDWCxlQUFlO0lBQ2YsY0FBYztFbkJxcUxkO0FBQ0Y7O0FNdGlMTTtFTzlEQTtJSXhGSixlQ2VxRDtFbEJrckxyRDtFYW5tTE07SU03Rkosa0JBQWtCO0lBQ2xCLGNBSG1EO0VuQnNzTHJEO0Vhbm1MTTtJTWpHSixrQkFBa0I7SUFDbEIsZUFIbUQ7RW5CMHNMckQ7RWEvbExJO0lNOUVKLGVEaEJnQztFbEJnc0xoQztFYXBuTEk7SUl4RkosZ0JDZXFEO0VsQmdzTHJEO0Vham5MTTtJTTdGSixrQkFBa0I7SUFDbEIsZUFIbUQ7RW5Cb3RMckQ7RWFqbkxNO0lNakdKLGtCQUFrQjtJQUNsQixnQkFIbUQ7RW5Cd3RMckQ7RWE3bUxJO0lNOUVKLHFCRGJxRDtFbEIyc0xyRDtFYWxvTEk7SUl4RkosVUNlcUQ7RWxCOHNMckQ7RWEvbkxNO0lNN0ZKLGtCQUFrQjtJQUNsQixTQUhtRDtFbkJrdUxyRDtFYS9uTE07SU1qR0osa0JBQWtCO0lBQ2xCLFVBSG1EO0VuQnN1THJEO0VhM25MSTtJTTlFSixzQkRicUQ7RWxCeXRMckQ7RWFocExJO0lJeEZKLGdCQ2VxRDtFbEI0dExyRDtFYTdvTE07SU03Rkosa0JBQWtCO0lBQ2xCLGVBSG1EO0VuQmd2THJEO0VhN29MTTtJTWpHSixrQkFBa0I7SUFDbEIsZ0JBSG1EO0VuQm92THJEO0Vhem9MSTtJTTlFSixnQkRicUQ7RWxCdXVMckQ7RWE5cExJO0lJeEZKLGdCQ2VxRDtFbEIwdUxyRDtFYTNwTE07SU03Rkosa0JBQWtCO0lBQ2xCLGVBSG1EO0VuQjh2THJEO0VhM3BMTTtJTWpHSixrQkFBa0I7SUFDbEIsZ0JBSG1EO0VuQmt3THJEO0VhdnBMSTtJTTlFSixzQkRicUQ7RWxCcXZMckQ7RWE1cUxJO0lJeEZKLFVDZXFEO0VsQnd2THJEO0VhenFMTTtJTTdGSixrQkFBa0I7SUFDbEIsU0FIbUQ7RW5CNHdMckQ7RWF6cUxNO0lNakdKLGtCQUFrQjtJQUNsQixVQUhtRDtFbkJneExyRDtFYXJxTEk7SU05RUosc0JEYnFEO0VsQm13THJEO0VhMXJMSTtJSXhGSixnQkNlcUQ7RWxCc3dMckQ7RWF2ckxNO0lNN0ZKLGtCQUFrQjtJQUNsQixlQUhtRDtFbkIweExyRDtFYXZyTE07SU1qR0osa0JBQWtCO0lBQ2xCLGdCQUhtRDtFbkI4eExyRDtFYW5yTEk7SU05RUosZ0JEYnFEO0VsQml4THJEO0VheHNMSTtJSXhGSixnQkNlcUQ7RWxCb3hMckQ7RWFyc0xNO0lNN0ZKLGtCQUFrQjtJQUNsQixlQUhtRDtFbkJ3eUxyRDtFYXJzTE07SU1qR0osa0JBQWtCO0lBQ2xCLGdCQUhtRDtFbkI0eUxyRDtFYWpzTEk7SU05RUosc0JEYnFEO0VsQit4THJEO0VhdHRMSTtJSXhGSixVQ2VxRDtFbEJreUxyRDtFYW50TE07SU03Rkosa0JBQWtCO0lBQ2xCLFNBSG1EO0VuQnN6THJEO0VhbnRMTTtJTWpHSixrQkFBa0I7SUFDbEIsVUFIbUQ7RW5CMHpMckQ7RWEvc0xJO0lNOUVKLHNCRGJxRDtFbEI2eUxyRDtFYXB1TEk7SUl4RkosZ0JDZXFEO0VsQmd6THJEO0VhanVMTTtJTTdGSixrQkFBa0I7SUFDbEIsZUFIbUQ7RW5CbzBMckQ7RWFqdUxNO0lNakdKLGtCQUFrQjtJQUNsQixnQkFIbUQ7RW5CdzBMckQ7RWE3dExJO0lNOUVKLGdCRGJxRDtFbEIyekxyRDtFYWx2TEk7SUl4RkosZ0JDZXFEO0VsQjh6THJEO0VhL3VMTTtJTTdGSixrQkFBa0I7SUFDbEIsZUFIbUQ7RW5CazFMckQ7RWEvdUxNO0lNakdKLGtCQUFrQjtJQUNsQixnQkFIbUQ7RW5CczFMckQ7RWEzdUxJO0lNOUVKLHNCRGJxRDtFbEJ5MExyRDtFYWh3TEk7SUl4RkosV0NlcUQ7RWxCNDBMckQ7RWFqdkxJO0lNOUVKLHNCRGJxRDtFbEIrMExyRDtFYTd1TEk7SU96R0YsV1Q4RnVEO0lTN0Z2RCxXQUF1QjtFcEJ5MUx6QjtFYWp2TEk7SU9qRkEsV0FBVztFcEJxMExmO0VhcHZMSTtJTzdFQSxXQUFXO0VwQm8wTGY7RWF2dkxJO0lPekVBLFdUOERxRDtFWHF3THpEO0VhMXZMSTtJT3pHRixXVDhGdUQ7SVM3RnZELFVBQXVCO0VwQnMyTHpCO0VhOXZMSTtJT2pGQSxXQUFXO0VwQmsxTGY7RWFqd0xJO0lPN0VBLFdBQVc7RXBCaTFMZjtFYXB3TEk7SU96RUEsV1Q4RHFEO0VYa3hMekQ7RWF2d0xJO0lPekdGLFdUOEZ1RDtJUzdGdkQsZ0JBQXVCO0VwQm0zTHpCO0VhM3dMSTtJT2pGQSxXQUFXO0VwQisxTGY7RWE5d0xJO0lPN0VBLFdBQVc7RXBCODFMZjtFYWp4TEk7SU96RUEsV1Q4RHFEO0VYK3hMekQ7RWFweExJO0lPekdGLFdUOEZ1RDtJUzdGdkQsVUFBdUI7RXBCZzRMekI7RWF4eExJO0lPakZBLFdBQVc7RXBCNDJMZjtFYTN4TEk7SU83RUEsV0FBVztFcEIyMkxmO0VhOXhMSTtJT3pFQSxXVDhEcUQ7RVg0eUx6RDtFYWp5TEk7SU96R0YsV1Q4RnVEO0lTN0Z2RCxVQUF1QjtFcEI2NEx6QjtFYXJ5TEk7SU9qRkEsV0FBVztFcEJ5M0xmO0VheHlMSTtJTzdFQSxXQUFXO0VwQnczTGY7RWEzeUxJO0lPekVBLFdUOERxRDtFWHl6THpEO0VhOXlMSTtJT3pHRixXVDhGdUQ7SVM3RnZELGdCQUF1QjtFcEIwNUx6QjtFYWx6TEk7SU9qRkEsV0FBVztFcEJzNExmO0VhcnpMSTtJTzdFQSxXQUFXO0VwQnE0TGY7RWF4ekxJO0lPekVBLFdUOERxRDtFWHMwTHpEO0VhM3pMSTtJT3pHRixXVDhGdUQ7SVM3RnZELGdCQUF1QjtFcEJ1Nkx6QjtFYS96TEk7SU9qRkEsV0FBVztFcEJtNUxmO0VhbDBMSTtJTzdFQSxXQUFXO0VwQms1TGY7RWFyMExJO0lPekVBLFdUOERxRDtFWG0xTHpEO0VheDBMSTtJT3pHRixXVDhGdUQ7SVM3RnZELFlBQXVCO0VwQm83THpCO0VhNTBMSTtJT2pGQSxXQUFXO0VwQmc2TGY7RWEvMExJO0lPN0VBLFdBQVc7RXBCKzVMZjtFYWwxTEk7SU96RUEsV1Q4RHFEO0VYZzJMekQ7RWFyMUxJO0lPekdGLFdUOEZ1RDtJUzdGdkQsZ0JBQXVCO0VwQmk4THpCO0VhejFMSTtJT2pGQSxXQUFXO0VwQjY2TGY7RWE1MUxJO0lPN0VBLFdBQVc7RXBCNDZMZjtFYS8xTEk7SU96RUEsV1Q4RHFEO0VYNjJMekQ7RWFsMkxJO0lPekdGLFdUOEZ1RDtJUzdGdkQsVUFBdUI7RXBCODhMekI7RWF0MkxJO0lPakZBLFdBQVc7RXBCMDdMZjtFYXoyTEk7SU83RUEsV0FBVztFcEJ5N0xmO0VhNTJMSTtJT3pFQSxXVDhEcUQ7RVgwM0x6RDtFYS8yTEk7SU96R0YsV1Q4RnVEO0lTN0Z2RCxlQUF1QjtFcEIyOUx6QjtFYW4zTEk7SU9qRkEsV0FBVztFcEJ1OExmO0VhdDNMSTtJTzdFQSxXQUFXO0VwQnM4TGY7RWF6M0xJO0lPekVBLFdUOERxRDtFWHU0THpEO0VhNTNMSTtJT3pHRixXVDhGdUQ7SVM3RnZELGVBQXVCO0VwQncrTHpCO0VhaDRMSTtJT2pGQSxXQUFXO0VwQm85TGY7RWFuNExJO0lPN0VBLFdBQVc7RXBCbTlMZjtFYXQ0TEk7SU96RUEsV1Q4RHFEO0VYbzVMekQ7RWFuNExFO0lHL0dBLGdCRHVFUztJQ3RFVCxlRHNFUztFZis2TFg7RWF2NExFO0lBSUksZUFBZTtJQUNmLGNBQWM7RWJzNExwQjtFYWw0TEU7SUFDRSxlQUFlO0lBQ2YsY0FBYztFYm80TGxCO0VhajRMRTtJRzdIQSx5QkFGcUM7SUFHckMsd0JBSHFDO0VoQm9nTXZDO0VhaDRMRTtJTWpJQSxrQkFBa0I7SUFDbEIsaUJBQWlCO0VuQm9nTW5CO0VtQnpnTUU7SUFDRSxXQUFXO0lBQ1gsV0FBVztFbkIyZ01mO0VhbjRMRTs7O0lNNUhGLGdCQUFnQjtJQUNoQixXQUFXO0lBQ1gsZUFBZTtJQUNmLGNBQWM7RW5Cb2dNZDtBQUNGOztBYXA0TEU7RUcxRkUseUJEYXFEO0FmcTlMekQ7O0FnQmgrTEk7RUFDRSxnQkFBZ0I7QWhCbStMdEI7O0FNbDVMTTtFT01KO0lHMUZFLHlCRGFxRDtFZjg5THZEO0VnQnorTEU7SUFDRSxnQkFBZ0I7RWhCMitMcEI7QUFDRjs7QU0zNUxNO0VPTUo7SUcxRkUseUJEYXFEO0VmdStMdkQ7RWdCbC9MRTtJQUNFLGdCQUFnQjtFaEJvL0xwQjtBQUNGOztBcUJwMExFOzs7Ozs7Ozs7Ozs7Ozs7Ozs7O0VBbUJFLFNBQVM7RUFDVCxVQUFVO0FyQnUwTGQ7O0FxQm4wTEU7RUFDRSxtQmpCeEgwQjtFaUIwSDFCLGtCQUFrQjtFQUNsQixnQmpCNUhzQjtFaUI2SHRCLGtDakIzSHlDO0FKZzhMN0M7O0FxQmowTEU7O0VBRUUsa0JBQWtCO0VBQ2xCLG9CQUFvQjtBckJvMEx4Qjs7QXFCaDBMRTs7RUFFRSxpQmpCMU1xQjtFaUIyTXJCLG9CQUFvQjtBckJtMEx4Qjs7QVFseExJO0VhNUNBLGNqQmxKaUI7RWlCbUpqQixvQkFBb0I7QXJCazBMeEI7O0FxQjl6TEU7Ozs7OztFQU1FLHlDakJqT007RWlCa09OLGtCakJqTXNCO0VpQmtNdEIsaUJqQjdOcUI7RWlCOE5yQixjakI5TGtCO0VpQitMbEIsa0NqQmxLc0M7QUptK0wxQzs7QXFCMzBMRTs7Ozs7O0VBYUksY0FBYztFQUNkLGNqQnRQZTtBSjZqTXJCOztBUWppTUk7RWF1T1EscUJOdlA2QztFTW1RN0MsZ0JqQjNOVztFaUJtT1gsYUFBYTtFQU9iLHFCakJ6T2lCO0FKK2dNN0I7O0FxQnIwTFE7RUFJSSxxQk52UDZDO0VNbVE3QyxnQmpCM05XO0VpQm1PWCxhQUFhO0VBT2IscUJqQnpPaUI7QUpzaE03Qjs7QXFCNTBMUTtFQUlJLGVOdlA2QztFTW1RN0MsZ0JqQjNOVztFaUJtT1gsYUFBYTtFQU9iLHFCakJ6T2lCO0FKNmhNN0I7O0FxQm4xTFE7RUFJSSxlTnZQNkM7RU1tUTdDLGdCakIzTlc7RWlCbU9YLGFBQWE7RUFPYixxQmpCek9pQjtBSm9pTTdCOztBcUIxMUxRO0VBSUksZU52UDZDO0VNbVE3QyxnQmpCM05XO0VpQm1PWCxhQUFhO0VBT2IscUJqQnpPaUI7QUoyaU03Qjs7QXFCajJMUTtFQUlJLGVOdlA2QztFTW1RN0MsZ0JqQjNOVztFaUJtT1gsYUFBYTtFQU9iLHFCakJ6T2lCO0FKa2pNN0I7O0FNcGhNTTtFRXZERjtJYXVPUSxxQk52UDZDO0VmZ21NdkQ7RXFCNzJMTTtJQUlJLHFCTnZQNkM7RWZtbU12RDtFcUJoM0xNO0lBSUksZU52UDZDO0Vmc21NdkQ7RXFCbjNMTTtJQUlJLGVOdlA2QztFZnltTXZEO0VxQnQzTE07SUFJSSxlTnZQNkM7RWY0bU12RDtFcUJ6M0xNO0lBSUksZU52UDZDO0VmK21NdkQ7QUFDRjs7QU16aU1NO0VFdkRGO0lhdU9RLHFCTnZQNkM7RWZxbk12RDtFcUJsNExNO0lBSUkscUJOdlA2QztFZnduTXZEO0VxQnI0TE07SUFJSSxlTnZQNkM7RWYybk12RDtFcUJ4NExNO0lBSUksZU52UDZDO0VmOG5NdkQ7RXFCMzRMTTtJQUlJLGVOdlA2QztFZmlvTXZEO0VxQjk0TE07SUFJSSxlTnZQNkM7RWZvb012RDtBQUNGOztBUXA5TEk7RWEwR0Esb0JBQW9CO0VBQ3BCLGNqQjVTbUM7RWlCNlNuQyxxQmpCM015QjtFaUI2TXpCLGVBQWU7QXJCNjJMbkI7O0FxQmwzTEU7RUFTSSxjakJsTjJEO0FKK2pNakU7O0FxQnQzTEU7RUFnQkksU0FBUztBckIwMkxmOztBUWhoTUk7RWE0S0EsV0FBVztFQUVYLHNCTmxUcUQ7RU1tVHJELFNBQVM7RUFDVCx1QmpCOU55QjtFaUJnT3pCLGFBQWE7RUFDYixlQUFlO0VBQ2YsZ0NqQnBVaUI7RWlCcVVqQixjQUFjO0FyQnMyTGxCOztBcUJsMkxFOzs7RUFHRSxtQmpCeFAwQjtFaUJ5UDFCLDRCakJ2T3lCO0VpQndPekIsZ0JqQjNQc0I7QUpnbU0xQjs7QXFCajJMRTtFQUNFLGtCQUFrQjtBckJvMkx0Qjs7QXFCaDJMRTtFQUNFLG9CakJqUHNCO0VpQmtQdEIscUJqQnBQa0I7QUp1bE10Qjs7QXFCLzFMRTtFQUNFLG9CakJ2UHNCO0FKeWxNMUI7O0FxQjkxTEU7RUFFSSxvQmpCNVAyQjtFaUI2UDNCLGdCQUFnQjtBckJnMkx0Qjs7QXFCMzFMRTtFQUNFLG1CakJsUXlCO0FKZ21NN0I7O0FxQi8xTEU7RUFJSSxxQmpCblE4QjtFaUJvUTlCLGlCakI1Vm1CO0FKMnJNekI7O0FxQjExTEU7RUFDRSxnQmpCalMwQjtFaUJrUzFCLDJDTjFXcUQ7RU0yV3JELDhCakJ2WGlCO0FKb3RNckI7O0FxQmgyTEU7RUFNSSxnQmpCdlNvQjtFaUJ3U3BCLGNqQnpYYTtBSnV0TW5COztBcUJ6MUxFO0VBQ0UsY0FBYztFQUNkLHFCTnRYcUQ7RU11WHJELGNqQmpZZTtBSjZ0TW5COztBcUIvMUxFO0VBTUksYWpCclJnQjtBSmtuTXRCOztBcUJ4MUxFO0VBQ0UsaUNqQnhZVztFaUJ5WVgsWUFBWTtFQUNaLHFCQUFxQjtBckIyMUx6Qjs7QVF2bU1JO0VhaVJBLFNBQVM7QXJCMDFMYjs7QXFCdDFMRTtFQUNFLHlDTjVZcUQ7RU04WXJELHlCakIxWmlCO0VpQjJaakIseUJqQjdaZ0I7RWlCK1poQiw0RGpCM1dLO0VpQjRXTCxtQmpCNVl5QjtFaUI2WXpCLGNqQjNaVztBSmt2TWY7O0FxQm4xTEU7RUFDRSxTQUFTO0VBQ1QsZ0NOcFpTO0VNc1pULHlCakJ6YWdCO0VpQjJhaEIsNERqQnZYSztFaUJ3WEwsY2pCdGFXO0VpQnlhVCxzQmpCelppQjtBSjJ1TXZCOztBc0I1eE1FO0VBQ0Usa0JsQjJKeUI7RWtCMUp6QixxQmxCMko0QjtFa0J6SjVCLG1CbEIyQ3lCO0VrQjFDekIsZ0JsQm9Kc0I7RWtCbkp0QixjbEJ5QmU7QUpxd01uQjs7QXNCMXhNRTtFQUNFLGlCbEI0SXFDO0VrQjNJckMsZ0JsQjRJaUI7QUppcE1yQjs7QXNCenhNRTtFQUNFLGlCbEI2SW1CO0VrQjVJbkIsY0FBYztBdEI0eE1sQjs7QXNCMXhNSTtFQUNFLGlCQUFpQjtBdEI2eE12Qjs7QXNCenhNRTtFQUdJLGNBQWdDO0VBQ2hDLGdCQUFnQjtBdEIweE10Qjs7QXVCeDFNVTtFQUNFLGdCQVJlO0F2Qm0yTTNCOztBdUI1MU1VO0VBQ0UsaUJBUnNCO0F2QnUyTWxDOztBdUJoMk1VO0VBQ0Usa0JBUjhCO0F2QjIyTTFDOztBdUJwMk1VO0VBQ0UsbUJBUnVDO0F2QisyTW5EOztBTXZ0TU07RWlCdEpJO0lBQ0UsZ0JBSGU7RXZCbzNNekI7RXVCbDNNUTtJQUNFLGlCQUhzQjtFdkJ1M01oQztFdUJyM01RO0lBQ0Usa0JBSDhCO0V2QjAzTXhDO0V1QngzTVE7SUFDRSxtQkFIdUM7RXZCNjNNakQ7QUFDRjs7QU10dU1NO0VpQnRKSTtJQUNFLGdCQUhlO0V2Qm00TXpCO0V1Qmo0TVE7SUFDRSxpQkFIc0I7RXZCczRNaEM7RXVCcDRNUTtJQUNFLGtCQUg4QjtFdkJ5NE14QztFdUJ2NE1RO0lBQ0UsbUJBSHVDO0V2QjQ0TWpEO0FBQ0Y7O0FNaHZNTTtFaUIzSkk7SUFDRSxnQkFIZTtFdkJrNU16QjtFdUJoNU1RO0lBQ0UsaUJBSHNCO0V2QnE1TWhDO0V1Qm41TVE7SUFDRSxrQkFIOEI7RXZCdzVNeEM7RXVCdDVNUTtJQUNFLG1CQUh1QztFdkIyNU1qRDtBQUNGOztBTS92TU07RWlCM0pJO0lBQ0UsZ0JBSGU7RXZCaTZNekI7RXVCLzVNUTtJQUNFLGlCQUhzQjtFdkJvNk1oQztFdUJsNk1RO0lBQ0Usa0JBSDhCO0V2QnU2TXhDO0V1QnI2TVE7SUFDRSxtQkFIdUM7RXZCMDZNakQ7QUFDRjs7QXdCcjZNRTtFQUFrQix3QkFBd0I7QXhCeTZNNUM7O0F3QnY2TUU7RUFDRTtJQUVJLGtDQUFrQztJQUdwQyxtQ0FBMkI7WUFBM0IsMkJBQTJCO0lBRTNCLHVCQUF1QjtJQUN2Qiw0QkFBNEI7RXhCczZNaEM7RXdCajdNQTtJQWNvQix5QkFBeUI7RXhCczZNN0M7RXdCcjZNRTtJQUFrQix3QkFBd0I7RXhCdzZNNUM7RXdCdDZNRTtJQUF1Qix5QkFBeUI7RXhCeTZNbEQ7RXdCeDZNRTtJQUF1QixzQ0FBc0M7RXhCMjZNL0Q7RXdCMTZNRTtJQUF1QixtQ0FBbUM7RXhCNjZNNUQ7RXdCNTZNRTtJQUFvQiw2QkFBNkI7RXhCKzZNbkQ7RXdCOTZNRTtJQUFvQiw4QkFBOEI7RXhCaTdNcEQ7RXdCaDdNRTtJQUFvQiw4QkFBOEI7RXhCbTdNcEQ7RXdCaDdNRTs7SUFDWSwwQkFBMEI7RXhCbTdNeEM7RXdCajdNSTtJQUFnQiw0QkFBNEI7RXhCbzdNaEQ7RXdCaDdNRTs7O0lBRXFCLFdBQVc7RXhCbTdNbEM7RXdCaDdNRTtJQUFvQiw2QkFBNkI7RXhCbTdNbkQ7RXdCaDdNRTs7SUFFRSx5QnBCdUJhO0lvQnRCYix3QkFBd0I7RXhCazdNNUI7RXdCOTZNRTtJQUFRLDJCQUEyQjtFeEJpN01yQztFd0IvNk1FOztJQUNNLHdCQUF3QjtFeEJrN01oQztFUWxtTUU7SWdCOVVNLDBCQUEwQjtFeEJtN01sQztFd0JqN01FO0lBQVEsYUFBYTtFeEJvN012QjtFd0JsN01FOzs7SUFHRSxVQUFVO0lBQ1YsU0FBUztFeEJvN01iO0V3Qmg3TUU7O0lBQ0ssdUJBQXVCO0V4Qm03TTlCO0V3Qmg3TUU7SUFDRSx1QkFBdUI7RXhCazdNM0I7QUFDRjs7QXlCaHdNRTtFQWhMQSxxQkFBcUI7RUFDckIsc0JBQXNCO0VBQ3RCLGtCckIyTGtDO0VxQjFMbEMsb0JyQndMMEI7RXFCOUt4QixxQnJCK0t5QjtFcUI1SzNCLHdCQUF3QjtFQUN4Qiw2QkFBNkI7RUFDN0Isc0JyQlBxQjtFcUJRckIseUVyQmlNa0I7RXFCak1sQixpRXJCaU1rQjtFcUIvTGxCLGVyQmdMMEQ7RXFCL0sxRCxjQUFjO0VBQ2Qsa0JBQWtCO0VBQ2xCLGVBQWU7RUFxQ2YseUJyQjFFcUM7RXFCMkVyQyxjckIvRGE7QUptOE1mOztBQUVBO0VZNTBNSSxVQUFVO0FaODBNZDs7QXlCdDRNRTtFQUNFLHlCckIrSHVFO0VxQjlIdkUsY3JCbkVXO0FKNDhNZjs7QXlCM3hNRTtFQU1NLGlCckJlcUI7QUowd003Qjs7QXlCL3hNRTtFQU1NLGtCckJlcUM7QUo4d003Qzs7QXlCbnlNRTtFQU1NLGtCckJlb0U7QUpreE01RTs7QXlCdnlNRTtFQWpKRSxjQUFjO0VBQ2QsV0FBVztFQUNYLGVBQWU7RUFDZixjQUFjO0F6QjQ3TWxCOztBeUI5eU1FO0VBbkhBLHlCckIxRXFDO0VxQjJFckMsY3JCL0RhO0FKbytNZjs7QXlCbjZNRTtFQUNFLHlCQVBvRjtFQVFwRixjckJuRVc7QUp5K01mOztBeUJ4ek1FO0VBbkhBLHlCckIxRXlEO0VxQjJFekQsY3JCL0RhO0FKOCtNZjs7QXlCNzZNRTtFQUNFLHlCQVBvRjtFQVFwRixjckJuRVc7QUptL01mOztBeUJsME1FO0VBbkhBLHlCckIxRTJFO0VxQjJFM0UsY3JCL0RhO0FKdy9NZjs7QXlCdjdNRTtFQUNFLHlCQVBvRjtFQVFwRixjckJuRVc7QUo2L01mOztBeUI1ME1FO0VBbkhBLHlCckIxRTZGO0VxQjJFN0YsY3JCL0RhO0FKa2dOZjs7QXlCajhNRTtFQUNFLHlCQVBvRjtFQVFwRixjckJuRVc7QUp1Z05mOztBeUJ0MU1FO0VBbkhBLHlCckIxRTZHO0VxQjJFN0csY3JCL0RhO0FKNGdOZjs7QXlCMzhNRTtFQUNFLHlCQVBvRjtFQVFwRixjckJuRVc7QUppaE5mOztBeUJoMk1FO0VBbkhBLHlCckJuRWlCO0VxQm9FakIsY3JCL0RhO0FKc2hOZjs7QXlCcjlNRTtFQUNFLHlCQVBvRjtFQVFwRixjckJuRVc7QUoyaE5mOztBeUIxMk1FO0VBbkhBLHlCckJ4RWtCO0VxQnlFbEIsY3JCL0RhO0FKZ2lOZjs7QXlCLzlNRTtFQUNFLHlCQVBvRjtFQVFwRixjckJuRVc7QUpxaU5mOztBeUJwM01FO0VBbkhBLHlCckJqRWM7RXFCa0VkLGNyQi9EYTtBSjBpTmY7O0F5QnorTUU7RUFDRSx5QkFQb0Y7RUFRcEYsY3JCbkVXO0FKK2lOZjs7QXlCOTNNRTtFQW5IQSx5QnJCaEVhO0VxQmlFYixjckIvRGE7QUpvak5mOztBeUJuL01FO0VBQ0UseUJBUG9GO0VBUXBGLGNyQm5FVztBSnlqTmY7O0F5Qng0TUU7RUFuSEEseUJyQi9EVztFcUJnRVgsY3JCL0RhO0FKOGpOZjs7QXlCNy9NRTtFQUNFLHlCQVBvRjtFQVFwRixjckJuRVc7QUpta05mOztBeUJsNU1FO0VBMURBLGFyQjBGNEI7RXFCekY1QixtQkFBbUI7QXpCZzlNckI7O0F5Qjk4TUU7RUFDRSx5QnJCdkltQztFcUJ3SW5DLGNyQjVIVztBSjZrTmY7O0F5QjU1TUU7RUExREEsYXJCMEY0QjtFcUJ6RjVCLG1CQUFtQjtBekIwOU1yQjs7QXlCeDlNRTtFQUNFLHlCckJ2SW1DO0VxQndJbkMsY3JCNUhXO0FKdWxOZjs7QXlCdDZNRTtFQTFEQSxhckIwRjRCO0VxQnpGNUIsbUJBQW1CO0F6Qm8rTXJCOztBeUJsK01FO0VBQ0UseUJyQnZJdUQ7RXFCd0l2RCxjckI1SFc7QUppbU5mOztBeUJoN01FO0VBMURBLGFyQjBGNEI7RXFCekY1QixtQkFBbUI7QXpCOCtNckI7O0F5QjUrTUU7RUFDRSx5QnJCdkl5RTtFcUJ3SXpFLGNyQjVIVztBSjJtTmY7O0F5QjE3TUU7RUExREEsYXJCMEY0QjtFcUJ6RjVCLG1CQUFtQjtBekJ3L01yQjs7QXlCdC9NRTtFQUNFLHlCckJ2STJGO0VxQndJM0YsY3JCNUhXO0FKcW5OZjs7QXlCcDhNRTtFQTFEQSxhckIwRjRCO0VxQnpGNUIsbUJBQW1CO0F6QmtnTnJCOztBeUJoZ05FO0VBQ0UseUJyQnZJMkc7RXFCd0kzRyxjckI1SFc7QUorbk5mOztBeUI5OE1FO0VBMURBLGFyQjBGNEI7RXFCekY1QixtQkFBbUI7QXpCNGdOckI7O0F5QjFnTkU7RUFDRSx5QnJCaEllO0VxQmlJZixjckI1SFc7QUp5b05mOztBeUJ4OU1FO0VBMURBLGFyQjBGNEI7RXFCekY1QixtQkFBbUI7QXpCc2hOckI7O0F5QnBoTkU7RUFDRSx5QnJCcklnQjtFcUJzSWhCLGNyQjVIVztBSm1wTmY7O0F5QmwrTUU7RUExREEsYXJCMEY0QjtFcUJ6RjVCLG1CQUFtQjtBekJnaU5yQjs7QXlCOWhORTtFQUNFLHlCckI5SFk7RXFCK0haLGNyQjVIVztBSjZwTmY7O0F5QjUrTUU7RUExREEsYXJCMEY0QjtFcUJ6RjVCLG1CQUFtQjtBekIwaU5yQjs7QXlCeGlORTtFQUNFLHlCckI3SFc7RXFCOEhYLGNyQjVIVztBSnVxTmY7O0F5QnQvTUU7RUExREEsYXJCMEY0QjtFcUJ6RjVCLG1CQUFtQjtBekJvak5yQjs7QXlCbGpORTtFQUNFLHlCckI1SFM7RXFCNkhULGNyQjVIVztBSmlyTmY7O0F5QmhnTkU7RUFuRkEseUJyQjFHcUM7RXFCMkdyQyxjckIzR3FDO0FKa3NOdkM7O0F5QjdtTkU7RUFFRSw2QkFBNkI7QXpCK21OakM7O0F5QjFtTkk7RUFFRSw2QkFBNkI7QXpCNG1ObkM7O0F5QjdsTkU7RUFDRSxxQkFONkQ7RUFPN0QsY0FQNkQ7QXpCdW1OakU7O0F5Qi9sTkk7RUFFRSx5QnJCbEhpQztFcUJtSGpDLGNyQm5IaUM7QUpvdE52Qzs7QXlCdmhORTtFQW5GQSx5QnJCMUdxQztFcUIyR3JDLGNyQjNHcUM7QUp5dE52Qzs7QXlCNW1ORTtFQUNFLHFCQU42RDtFQU83RCxjQVA2RDtBekJzbk5qRTs7QXlCOW1OSTtFQUVFLHlCckJsSGlDO0VxQm1IakMsY3JCbkhpQztBSm11TnZDOztBeUJ0aU5FO0VBbkZBLHlCckIxR3lEO0VxQjJHekQsY3JCM0d5RDtBSnd1TjNEOztBeUIzbk5FO0VBQ0UscUJBTjZEO0VBTzdELGNBUDZEO0F6QnFvTmpFOztBeUI3bk5JO0VBRUUseUJyQmxIcUQ7RXFCbUhyRCxjckJuSHFEO0FKa3ZOM0Q7O0F5QnJqTkU7RUFuRkEseUJyQjFHMkU7RXFCMkczRSxjckIzRzJFO0FKdXZON0U7O0F5QjFvTkU7RUFDRSxxQkFONkQ7RUFPN0QsY0FQNkQ7QXpCb3BOakU7O0F5QjVvTkk7RUFFRSx5QnJCbEh1RTtFcUJtSHZFLGNyQm5IdUU7QUppd043RTs7QXlCcGtORTtFQW5GQSx5QnJCMUc2RjtFcUIyRzdGLGNyQjNHNkY7QUpzd04vRjs7QXlCenBORTtFQUNFLHFCQU42RDtFQU83RCxjQVA2RDtBekJtcU5qRTs7QXlCM3BOSTtFQUVFLHlCckJsSHlGO0VxQm1IekYsY3JCbkh5RjtBSmd4Ti9GOztBeUJubE5FO0VBbkZBLHlCckIxRzZHO0VxQjJHN0csY3JCM0c2RztBSnF4Ti9HOztBeUJ4cU5FO0VBQ0UscUJBTjZEO0VBTzdELGNBUDZEO0F6QmtyTmpFOztBeUIxcU5JO0VBRUUseUJyQmxIeUc7RXFCbUh6RyxjckJuSHlHO0FKK3hOL0c7O0F5QmxtTkU7RUFuRkEseUJyQm5HaUI7RXFCb0dqQixjckJwR2lCO0FKNnhObkI7O0F5QnZyTkU7RUFDRSxxQkFONkQ7RUFPN0QsY0FQNkQ7QXpCaXNOakU7O0F5QnpyTkk7RUFFRSx5QnJCM0dhO0VxQjRHYixjckI1R2E7QUp1eU5uQjs7QXlCam5ORTtFQW5GQSx5QnJCeEdrQjtFcUJ5R2xCLGNyQnpHa0I7QUppek5wQjs7QXlCdHNORTtFQUNFLHFCQU42RDtFQU83RCxjQVA2RDtBekJndE5qRTs7QXlCeHNOSTtFQUVFLHlCckJoSGM7RXFCaUhkLGNyQmpIYztBSjJ6TnBCOztBeUJob05FO0VBbkZBLHlCckJqR2M7RXFCa0dkLGNyQmxHYztBSnl6TmhCOztBeUJydE5FO0VBQ0UscUJBTjZEO0VBTzdELGNBUDZEO0F6Qit0TmpFOztBeUJ2dE5JO0VBRUUseUJyQnpHVTtFcUIwR1YsY3JCMUdVO0FKbTBOaEI7O0F5Qi9vTkU7RUFuRkEseUJyQmhHYTtFcUJpR2IsY3JCakdhO0FKdTBOZjs7QXlCcHVORTtFQUNFLHFCQU42RDtFQU83RCxjQVA2RDtBekI4dU5qRTs7QXlCdHVOSTtFQUVFLHlCckJ4R1M7RXFCeUdULGNyQnpHUztBSmkxTmY7O0F5QjlwTkU7RUFuRkEseUJyQi9GVztFcUJnR1gsY3JCaEdXO0FKcTFOYjs7QXlCbnZORTtFQUNFLHFCQU42RDtFQU83RCxjQVA2RDtBekI2dk5qRTs7QXlCcnZOSTtFQUVFLHlCckJ2R087RXFCd0dQLGNyQnhHTztBSisxTmI7O0F5QjdxTkU7RUFuRkEseUJyQjFHcUM7RXFCMkdyQyxjckIzR3FDO0FKKzJOdkM7O0F5QjF4TkU7RUFFRSw2QkFBNkI7QXpCNHhOakM7O0F5QnZ4Tkk7RUFFRSw2QkFBNkI7QXpCeXhObkM7O0F5QjF3TkU7RUFDRSxxQkFONkQ7RUFPN0QsY0FQNkQ7QXpCb3hOakU7O0F5QjV3Tkk7RUFFRSx5QnJCbEhpQztFcUJtSGpDLGNyQm5IaUM7QUppNE52Qzs7QXlCcHNORTtFQWdFVSx5QkFBeUI7QXpCd29OckM7O0F5QnhzTkU7RUFuRkEseUJyQjFHcUM7RXFCMkdyQyxjckIzR3FDO0FKMDROdkM7O0F5Qjd4TkU7RUFDRSxxQkFONkQ7RUFPN0QsY0FQNkQ7QXpCdXlOakU7O0F5Qi94Tkk7RUFFRSx5QnJCbEhpQztFcUJtSGpDLGNyQm5IaUM7QUpvNU52Qzs7QXlCdnRORTtFQTZFYyx5QkFBeUI7QXpCOG9OekM7O0F5QjN0TkU7RUFuRkEseUJyQjFHeUQ7RXFCMkd6RCxjckIzR3lEO0FKNjVOM0Q7O0F5Qmh6TkU7RUFDRSxxQkFONkQ7RUFPN0QsY0FQNkQ7QXpCMHpOakU7O0F5Qmx6Tkk7RUFFRSx5QnJCbEhxRDtFcUJtSHJELGNyQm5IcUQ7QUp1Nk4zRDs7QXlCMXVORTtFQTZFYyx5QkFBeUI7QXpCaXFOekM7O0F5Qjl1TkU7RUFuRkEseUJyQjFHMkU7RXFCMkczRSxjckIzRzJFO0FKZzdON0U7O0F5Qm4wTkU7RUFDRSxxQkFONkQ7RUFPN0QsY0FQNkQ7QXpCNjBOakU7O0F5QnIwTkk7RUFFRSx5QnJCbEh1RTtFcUJtSHZFLGNyQm5IdUU7QUowN043RTs7QXlCN3ZORTtFQTZFYyx5QkFBeUI7QXpCb3JOekM7O0F5Qmp3TkU7RUFuRkEseUJyQjFHNkY7RXFCMkc3RixjckIzRzZGO0FKbThOL0Y7O0F5QnQxTkU7RUFDRSxxQkFONkQ7RUFPN0QsY0FQNkQ7QXpCZzJOakU7O0F5QngxTkk7RUFFRSx5QnJCbEh5RjtFcUJtSHpGLGNyQm5IeUY7QUo2OE4vRjs7QXlCaHhORTtFQTZFYyx5QkFBeUI7QXpCdXNOekM7O0F5QnB4TkU7RUFuRkEseUJyQjFHNkc7RXFCMkc3RyxjckIzRzZHO0FKczlOL0c7O0F5QnoyTkU7RUFDRSxxQkFONkQ7RUFPN0QsY0FQNkQ7QXpCbTNOakU7O0F5QjMyTkk7RUFFRSx5QnJCbEh5RztFcUJtSHpHLGNyQm5IeUc7QUpnK04vRzs7QXlCbnlORTtFQTZFYyx5QkFBeUI7QXpCMHROekM7O0F5QnZ5TkU7RUFuRkEseUJyQm5HaUI7RXFCb0dqQixjckJwR2lCO0FKaytObkI7O0F5QjUzTkU7RUFDRSxxQkFONkQ7RUFPN0QsY0FQNkQ7QXpCczROakU7O0F5QjkzTkk7RUFFRSx5QnJCM0dhO0VxQjRHYixjckI1R2E7QUo0K05uQjs7QXlCdHpORTtFQTZFYyx5QkFBeUI7QXpCNnVOekM7O0F5QjF6TkU7RUFuRkEseUJyQnhHa0I7RXFCeUdsQixjckJ6R2tCO0FKMC9OcEI7O0F5Qi80TkU7RUFDRSxxQkFONkQ7RUFPN0QsY0FQNkQ7QXpCeTVOakU7O0F5Qmo1Tkk7RUFFRSx5QnJCaEhjO0VxQmlIZCxjckJqSGM7QUpvZ09wQjs7QXlCejBORTtFQTZFYyx5QkFBeUI7QXpCZ3dOekM7O0F5QjcwTkU7RUFuRkEseUJyQmpHYztFcUJrR2QsY3JCbEdjO0FKc2dPaEI7O0F5Qmw2TkU7RUFDRSxxQkFONkQ7RUFPN0QsY0FQNkQ7QXpCNDZOakU7O0F5QnA2Tkk7RUFFRSx5QnJCekdVO0VxQjBHVixjckIxR1U7QUpnaE9oQjs7QXlCNTFORTtFQTZFYyx5QkFBeUI7QXpCbXhOekM7O0F5QmgyTkU7RUFuRkEseUJyQmhHYTtFcUJpR2IsY3JCakdhO0FKd2hPZjs7QXlCcjdORTtFQUNFLHFCQU42RDtFQU83RCxjQVA2RDtBekIrN05qRTs7QXlCdjdOSTtFQUVFLHlCckJ4R1M7RXFCeUdULGNyQnpHUztBSmtpT2Y7O0F5Qi8yTkU7RUE2RWMseUJBQXlCO0F6QnN5TnpDOztBeUJuM05FO0VBbkZBLHlCckIvRlc7RXFCZ0dYLGNyQmhHVztBSjBpT2I7O0F5Qng4TkU7RUFDRSxxQkFONkQ7RUFPN0QsY0FQNkQ7QXpCazlOakU7O0F5QjE4Tkk7RUFFRSx5QnJCdkdPO0VxQndHUCxjckJ4R087QUpvak9iOztBeUJsNE5FO0VBNkVjLHlCQUF5QjtBekJ5ek56Qzs7QXlCOTZORTtFYmhMQSxjQUFjO0VBQ2QsUUFBUTtFQUNSLFNBQVM7RUFFVCxtQmF3S1k7RWJ0S1osV0FBVztFQUdULHNCQUFzQjtFQUN0Qix1QkFBdUI7RUFDdkIsNkNBQXFEO0VhdUtyRCxrQkFBa0I7RUFDbEIsVUFBVTtFQUVWLHFCQUFxQjtFQUNyQixZQUFPO0VBQ1AsbUJyQjZDeUI7QUowNE43Qjs7QXlCdDVORTtFQWlHUSx5QnJCOVI2QjtBSnVsT3ZDOztBeUIxNU5FO0VBdUdZLHlCckJwU3lCO0FKMmxPdkM7O0F5Qjk1TkU7RUF1R1kseUJyQnBTNkM7QUorbE8zRDs7QXlCbDZORTtFQXVHWSx5QnJCcFMrRDtBSm1tTzdFOztBeUJ0Nk5FO0VBdUdZLHlCckJwU2lGO0FKdW1PL0Y7O0F5QjE2TkU7RUF1R1kseUJyQnBTaUc7QUoybU8vRzs7QXlCOTZORTtFQXVHWSx5QnJCN1JLO0FKd21PbkI7O0F5Qmw3TkU7RUF1R1kseUJyQmxTTTtBSmluT3BCOztBeUJ0N05FO0VBdUdZLHlCckIzUkU7QUo4bU9oQjs7QXlCMTdORTtFQXVHWSx5QnJCMVJDO0FKaW5PZjs7QXlCOTdORTtFQXVHWSx5QnJCelJEO0FKb25PYjs7QXlCbDhORTtFQWdISSxXQUFXO0VBQ1gsV0FBVztFQUNYLGNBQWdDO0F6QnMxTnRDOztBQUVBOztFMEJ4bk9FLGNBQWM7RUFDZCw4QkFBc0I7VUFBdEIsc0JBQXNCO0VBQ3RCLFdBQVc7RUFDWCxrQkFMc0o7RUFNdEosc0JYSHVEO0VXSXZELG1CdEIwVCtCO0VzQnhUL0IseUJ0QmxCbUI7RXNCbUJuQixzQnRCQ3FCO0VzQkFyQix5QnRCWmE7RXNCYWIseUR0QmpCYTtVc0JpQmIsaUR0QmpCYTtFc0JtQmIsb0J0QjBTeUI7RXNCelN6QixlWFp1RDtFV2F2RCxtQnRCUDJCO0VzQlEzQixnQnRCL0JxQjtFc0JnQ3JCLGN0QnZCYTtFc0IwQlgsMkV0QmlUMEI7RXNCalQxQixtRXRCaVQwQjtFc0JqVDFCLDJEdEJpVDBCO0VzQmpUMUIsb0Z0QmlUMEI7RXNCNVIxQix3QkFBZ0I7S0FBaEIscUJBQWdCO1VBQWhCLGdCQUFnQjtBMUJtbU9wQjs7QUFFQTs7RTBCcm5PSSxhQUFhO0VBQ2IseUJ0QnBDaUI7RXNCcUNqQix5QnRCN0JXO0VzQjhCWCxtQ3RCdENpQjtVc0JzQ2pCLDJCdEJ0Q2lCO0VzQnlDZiwyRXRCc1N3QjtFc0J0U3hCLG1FdEJzU3dCO0VzQnRTeEIsMkR0QnNTd0I7RXNCdFN4QixvRnRCc1N3QjtBSmcxTjlCOztBUS9wTkk7RWtCeGNBLGVBQWU7QTFCMm1PbkI7O0EwQjVtT0U7RUFJSSxZQUFZO0ExQjRtT2xCOztBMEJ4bU9FO0VBSUksY3RCNlAyQjtBSjQyTmpDOztBMEI3bU9FO0VBSUksY3RCNlAyQjtBSjQyTmpDOztBMEI3bU9FO0VBSUksY3RCNlAyQjtBSjQyTmpDOztBMEI3bU9FO0VBSUksY3RCNlAyQjtBSjQyTmpDOztBMEI3bU9FOztFQUlJLGN0QjZQMkI7QUo0Mk5qQzs7QTBCN21PRTs7O0VBVUkseUJ0QjNFYztFc0I0RWQsbUJ0Qm1RNkI7QUpzMk5uQzs7QUFFQTs7RTBCcG1PSSx3QkFBZ0I7S0FBaEIscUJBQWdCO1VBQWhCLGdCQUFnQjtFQUNoQixzQnRCOURtQjtBSnFxT3ZCOztBMEJubU9FO0VBQ0UsOEJBQXNCO1VBQXRCLHNCQUFzQjtBMUJzbU8xQjs7QUFFQTs7O0UyQi92T0ksc0JaNEVxRDtBZnVyT3pEOztBQUVBOztFMkIvdk9JLHFCQUFxQjtFQUNyQix3QkFBd0I7RUFFeEIsdUJBQWtEO0VBQ2xELHdCWmtFcUQ7RVlqRXJELGdCQUFnQjtBM0Jpd09wQjs7QUFFQTs7RTJCaHdPTSxlQUFlO0EzQm13T3JCOztBMkI5dk9FOztFQUVFLHdCQUFtRDtBM0Jpd092RDs7QUFFQTtFMkI5dk9JLFdBQVc7QTNCZ3dPZjs7QTRCNXZPRTtFQWpCQSxjQUFjO0VBQ2QsU0FBUztFQUVULGViNER1RDtFYTNEdkQsbUJ4QmlFMkI7RXdCaEUzQixnQnhCeUNxQjtFd0J4Q3JCLGN4QmlEYTtBSit0T2Y7O0E0QnJ3T0U7RUFMQSxzQmJtRHVEO0VhbER2RCxxQkFBOEQ7QTVCOHdPaEU7O0E2Qi94T0U7RUFHRSx1QkFGdUM7RUFHdkMscUJkK0RxRDtFYzlEckQsa0J6QnFXd0I7RXlCcFd4QixjekJxRFc7QUoydU9mOztBOEJqeU9FO0VBQ0UsY0FBd0M7RUFDeEMsV0FBVztFQUNYLHlCZjJEcUQ7QWZ5dU96RDs7QThCdnlPRTtFQVVJLGtDMUI0RGlCO0FKcXVPdkI7O0E4QjN5T0U7RUFlTSxrQ0FBaUg7QTlCZ3lPekg7O0E4QjN4T0U7Ozs7RUFDRSxTQUFTO0VBQ1QsbUJBQW1CO0VBR2pCLG1CQUFtQjtFQUNuQixzQkFBc0I7QTlCK3hPNUI7O0E4QjN4T0U7RUFFRSxlMUJ5VXVCO0UwQnhVdkIseUIxQmlCaUI7RTBCaEJqQixtQjFCY2dCO0UwQlpoQixjMUJrQlc7RTBCakJYLGtCQUFrQjtFQUNsQixtQkFBbUI7RUFRakIsU0FBUztFQUNULFlBQVk7QTlCcXhPbEI7O0E4QnR5T0U7RUFzQk0sZUFBaUM7QTlCb3hPekM7O0E4QjF5T0U7RUEwQk0sY0FBZ0M7QTlCb3hPeEM7O0E4Qi93T0U7RUFFRSxnQkFBZ0I7RUFRZCxrQkF6RTZDO0E5Qm0xT25EOztBOEJ0d09FO0VBRUUsY0FBYztFQUNkLGlCQUFpQjtFQUNqQixrQkFBa0I7RUFNaEIsU0FBUztFQUNULFlBQVk7QTlCbXdPbEI7O0E4Qjl3T0U7Ozs7RUFtQkksa0JBaEc2QztFQWlHN0MsY0FBYztFQUNkLGlCQUFpQjtFQUVqQixlZnBDbUQ7QWZxeU96RDs7QThCM3ZPTTtFQUNJLG1CQUFtQjtBOUI4dk83Qjs7QVF6MU5JO0V1QmpnQkEsU0FBUztFQUNULFVBQVU7RUFDVixTQUFTO0EvQjgxT2I7O0FRbDFOSTtFdUJ4Z0JBLGVBQWU7RUFDZix5QkFBa0M7QS9CODFPdEM7O0ErQjMxT0U7RUF4QkEsb0JoQm9FVztFZ0JuRVgsbUJoQjhEdUQ7RWdCN0R2RCx5QjNCaURtQjtBSnMwT3JCOztBK0JyM09FO0VBRUUsU0FBUztFQUNULHdCaEJ3RHFEO0VnQnZEckQscUJoQnVEcUQ7QWZnME96RDs7QVc3dE9FO0VxQnBLQSxrQkFGc0o7RUFHdEosc0JqQmdFdUQ7RWlCL0R2RCxtQjVCNlgrQjtFNEIzWC9CLHdCQUFnQjtLQUFoQixxQkFBZ0I7VUFBaEIsZ0JBQWdCO0VBQ2hCLHlCNUJnRG1CO0U0Qi9DbkIsc0I1Qm1FcUI7RTRCbEVyQix5QjVCc0RhO0U0QnBEYixvQjVCNld5QjtFNEI1V3pCLGVqQnVEdUQ7RWlCdER2RCxtQjVCNEQyQjtFNEIzRDNCLGdCNUJvQ3FCO0U0Qm5DckIsYzVCNENhO0VReUViLHdPQUF5TjtFb0JqSHZOLDhCQUE4QjtFQUM5Qiw2Q0FBMEQ7RUFDMUQsNEJBQTRCO0VBQzVCLHdCQUF3QjtFQUV4Qix5QkFBdUQ7RUFJdkQsMkU1QjBXMEI7RTRCMVcxQixtRTVCMFcwQjtFNEIxVzFCLDJENUIwVzBCO0U0QjFXMUIsb0Y1QjBXMEI7QUptaE85Qjs7QVlueE9FO0VEZ0NBO0lDN0JJLHVXQUF1VztFWnF4TzNXO0FBQ0Y7O0FnQy8zT0U7RUFDRSxhQUFhO0VBQ2IseUI1QnFCaUI7RTRCcEJqQix5QjVCNEJXO0U0QjNCWCxtQzVCbUJpQjtVNEJuQmpCLDJCNUJtQmlCO0U0QmhCZiwyRTVCK1Z3QjtFNEIvVnhCLG1FNUIrVndCO0U0Qi9WeEIsMkQ1QitWd0I7RTRCL1Z4QixvRjVCK1Z3QjtBSmlpTzlCOztBZ0MzM09FO0VBQ0UseUI1QlFnQjtFNEJQaEIsbUI1QnNWK0I7QUp3aU9uQzs7QWdDMTNPRTtFQUNFLGFBQWE7QWhDNjNPakI7O0FnQzEzT0U7RUFDRSxZQUFZO0VBQ1osc0JBQXNCO0FoQzYzTzFCOztBaUM5NU9FO0VBQ0UscUI3QjJCMkc7RTZCMUIzRyx5QkFBK0Q7QWpDaTZPbkU7O0FpQ2g2T0k7RUFDRSxjN0J3QnlHO0FKMjRPL0c7O0FpQ3A2T0k7RUFDRSxjN0J3QnlHO0FKMjRPL0c7O0FpQ3A2T0k7RUFDRSxjN0J3QnlHO0FKMjRPL0c7O0FpQ3A2T0k7RUFDRSxjN0J3QnlHO0FKMjRPL0c7O0FpQ3A2T0k7RUFDRSxjN0J3QnlHO0FKMjRPL0c7O0FpQ3o0T0k7RUFDRSxjN0JIeUc7QUorNE8vRzs7QWlDdjRPRTtFQXpCQSxhQUFhO0VBQ2IsdUJBQWdDO0VBQ2hDLHlCbEIrQnVEO0VrQjdCdkQscUJsQjZCdUQ7RWtCNUJ2RCxpQjdCbUN1QjtFNkJsQ3ZCLGM3Qlc2RztBSnc1Ty9HOztBaUNoNU9FO0VBSUksY0FBYztBakNnNU9wQjs7QWtDejFPRTtFQXZGQSxjQUFnQztFQUNoQyxtQjlCK0JhO0U4QjlCYixxQkFBcUI7QWxDbzdPdkI7O0FrQ2w3T0k7RUFDRSxtQkFBbUI7QWxDcTdPekI7O0FrQzk2T0U7RUFDRSxrQ0FBZ0Q7QWxDaTdPcEQ7O0FrQzk2T0U7RUFDRSxrQzlCMkJtQjtBSnM1T3ZCOztBa0NuMk9FO0VBbEVBLGtCQUFrQjtFQUNsQixjQUFjO0VBQ2QscUI5QjJJbUM7RThCekluQyx5QjlCVG1CO0U4QlVuQixnQkFBZ0I7RUFFaEIscUJuQkF1RDtFbUJDdkQsY0FBYztFQUNkLGM5QmxCcUM7QUp5N092Qzs7QWtDcjZPRTtFQUNFLGdDOUJqQmlCO0U4QmtCakIsa0M5QkVtQjtBSnM2T3ZCOztBa0NyNk9FO0VBRUUseUI5QnpCZ0I7QUpnOE9wQjs7QWtDbjZPSTtFQUNFLGtCQUFrQjtFQUNsQixRQUFRO0VBQ1IsV0FBc0I7RUFDdEIsbUJBQW1CO0VBQ25CLFlBQVk7QWxDczZPbEI7O0FrQ242T0k7RUFDRSxnQkFBZ0I7QWxDczZPdEI7O0FrQy8zT0U7RUEzQkEsYUFBYTtFQUNiLGE5QnFHOEI7RThCbkc5Qix5QjlCbkRtQjtFOEJvRG5CLGdCQUFnQjtFQUNoQix5QjlCN0NhO0U4QitDYixjOUJuRGE7QUorOE9mOztBa0MxNU9FO0VBQ0UsZ0M5QjFEaUI7QUp1OU9yQjs7QW1DeDlPRTtFQVdJLFdBQVc7QW5DaTlPakI7O0FtQzU5T0U7RUFrQkksb0IvQkkyQjtBSjA4T2pDOztBbUNoK09FO0VBc0JJLG9CL0JBMkI7QUo4OE9qQzs7QW1DcCtPRTtFQzJKRSxlQUFpQztFQUNqQyxpQmhDckk0QjtBSms5T2hDOztBbUN6K09FO0VDdUpFLGtCaENoSTRCO0VnQ2lJNUIsY0FBZ0M7QXBDczFPcEM7O0FtQ3BnUEU7RUFDRSxrQkFBa0I7QW5DdWdQdEI7O0FtQ3JnUEk7RXZCWEYsY0FBYztFQUNkLFFBQVE7RUFDUixTQUFTO0VBRVQsaUJSK0w0QjtFUTdMNUIsV0FBVztFQUdULHNCQUFzQjtFQUN0Qix1QkFBdUI7RUFDdkIsNkNBQXFEO0V1QkVuRCxrQkFBa0I7RUFDbEIsUUFBUTtFQUNSLGdCQUFnRDtFQUNoRCxXQUFzQjtBbkMrZ1A1Qjs7QW1DNWdQRTtFQUNFLFVBQVU7RUFDVixXQUFXO0FuQytnUGY7O0FtQzdnUEU7RUFDRSxXQUFXO0VBQ1gsVUFBVTtBbkNnaFBkOztBbUMzZ1BFO0VBdUNNLGlDQUF5QjtVQUF6Qix5QkFBeUI7RUFDekIsaUNBQXlCO1VBQXpCLHlCQUF5QjtBbkN3K09qQzs7QW1DNTlPRTtFQUNFLGtCQUFrQjtBbkMrOU90Qjs7QW1DNTlPRTtFQUNFLGtCL0IwR3FDO0FKcTNPekM7O0FtQzM5T0U7RUFDRSxrQkFBa0I7RUFDbEIsTUFBTTtFQUNOLFFBQW1CO0VBQ25CLGVBQWU7RUFFZixXL0JnR3FDO0UrQi9GckMsWS9CK0ZxQztBSjgzT3pDOztBbUNwK09FO0V2QjNGQSxjQUFjO0VBQ2QsUUFBUTtFQUNSLFNBQVM7RUFFVCxpQnVCd0c2QjtFdkJ0RzdCLFdBQVc7RUFHVCxzQkFBc0I7RUFDdEIsdUJBQXVCO0VBQ3ZCLDZDQUFxRDtFdUJtR25ELE1BQU07RUFDTixTQUFTO0VBQ1QsWUFBWTtBbkM2OU9sQjs7QW1DeDlPRTtFQUNFLDZCQUFxQjtVQUFyQixxQkFBcUI7RUFDckIsaUNBQXlCO1VBQXpCLHlCQUF5QjtBbkMyOU83Qjs7QW1DeDlPRTtFdkI4Q0EsNkJBQTZCO0VBQzdCLFVBQVU7RUFDVixXQUFXO0VBQ1gsVUFBVTtFQUNWLGdCQUFnQjtFQUNoQixzQkFBbUI7RUFDbkIsbUJBQW1CO0VBQ25CLDZCQUFxQjtVQUFyQixxQkFBcUI7RUFDckIsU0FBUztBWjg2T1g7O0FxQzFsUEU7RUFYQSxxQkFBcUI7RUFDckIsZ0JqQ3dOb0I7RWlDdk5wQixjakNzTm1CO0VpQ3BObkIsa0JBQWtCO0VBRWxCLGtCakNvTnVCO0VpQ25OdkIsa0JBQWtCO0VBT2hCLG1CakNvQm1DO0VpQ25CbkMsY2pDK0JXO0FKa2tQZjs7QXFDcm1QRTtFQVFNLG1CakNlK0I7RWlDZC9CLGNqQzBCTztBSnVrUGY7O0FxQzFtUEU7RUFRTSxtQmpDZW1EO0VpQ2RuRCxjakMwQk87QUo0a1BmOztBcUMvbVBFO0VBUU0sbUJqQ2VxRTtFaUNkckUsY2pDc0JPO0FKcWxQZjs7QXFDcG5QRTtFQVFNLG1CakNldUY7RWlDZHZGLGNqQ3NCTztBSjBsUGY7O0FxQ3puUEU7RUFRTSxtQmpDZXVHO0VpQ2R2RyxjakMwQk87QUoybFBmOztBcUM5blBFO0VBUU0sbUJqQ3NCVztFaUNyQlgsY2pDMEJPO0FKZ21QZjs7QXFDbm9QRTtFQVFNLG1CakN3QlE7RWlDdkJSLGNqQ3NCTztBSnltUGY7O0FxQ3hvUEU7RUFRTSxtQmpDeUJPO0VpQ3hCUCxjakNzQk87QUo4bVBmOztBcUM3b1BFO0VBUU0sbUJqQzBCSztFaUN6QkwsY2pDMEJPO0FKK21QZjs7QXNDdmxQRTtFQTNDQSx5QmxDa01vQztFa0NqTXBDLGdCQUFnQjtBdENzb1BsQjs7QVk1aFBFO0VBRUUsY0FBYztFQUNkLFlBQVk7QVo4aFBoQjs7QVl0aFBFO0VBQ0UsV0FBVztBWnloUGY7O0FzQzVvUEU7RUFDRSxXQUFPO0VBRVAscUJ2QmdCcUQ7RXVCZnJELGNsQ09XO0VrQ05YLGVBQWU7QXRDOG9QbkI7O0FzQ3BvUE07RUFDRSxrQkFBa0I7RUFDbEIsaUJsQ2tMeUI7RWtDakx6QixVQUFVO0VBQ1YsWWxDbUw2QjtFa0NsTDdCLGNsQ1hXO0FKa3BQbkI7O0FzQzluUEU7RUFDRSxjbENwQmU7QUpxcFBuQjs7QXNDL25QSTtFQUNFLDBCQUEwQjtBdENrb1BoQzs7QXNDNW5QRTtFQUlJLGNsQ3BDZTtFa0NxQ2YsbUJBQW1CO0F0QzRuUHpCOztBdUMxaVBFO0VBL0pBLG1CbkN3UXVCO0VtQ2hRckIsWUFBWTtBdkNzc1BoQjs7QVl0a1BFO0VBRUUsY0FBYztFQUNkLFlBQVk7QVp3a1BoQjs7QVloa1BFO0VBQ0UsV0FBVztBWm1rUGY7O0F1QzVzUEU7RUFDRSxTQUFTO0VBQ1QsaUJuQzRQcUI7RW1DM1ByQixrQm5DMlBxQjtFbUMxUHJCLGVuQ3VPd0Q7QUp3K081RDs7QXVDenNQSTtFQUNFLGVBQWlDO0F2QzRzUHZDOztBdUNua1BFO0VBTU0saUJuQ2lGcUI7QUpnL083Qjs7QXVDdmtQRTtFQU1NLGtCbkNpRnFDO0FKby9PN0M7O0F1QzNrUEU7RUFNTSxrQm5DaUZvRTtBSncvTzVFOztBdUMva1BFO0VBNUdFLGtCbkNzTnFCO0FKeStPekI7O0F1QzdyUEk7RUFFRSxhQUFhO0F2QytyUG5COztBdUNyclBNO0VBQ0UsV0FDRjtBdkN1clBOOztBdUNsclBVO0VBQ0UscUJBQXFCO0VBQ3JCLHNCQUFnRDtFQUNoRCxpQm5DOExhO0FKdS9PekI7O0F1Q25yUFk7RUFDRSxrQkFBbUU7QXZDc3JQakY7O0F1QzVyUFU7RUFDRSxxQkFBcUI7RUFDckIsNEJBQWdEO0VBQ2hELGlCbkM4TGE7QUppZ1B6Qjs7QXVDN3JQWTtFQUNFLGtCQUFtRTtBdkNnc1BqRjs7QXVDdHNQVTtFQUNFLHFCQUFxQjtFQUNyQixzQkFBZ0Q7RUFDaEQsaUJuQzhMYTtBSjJnUHpCOztBdUN2c1BZO0VBQ0Usa0JBQW1FO0F2QzBzUGpGOztBdUNodFBVO0VBQ0UscUJBQXFCO0VBQ3JCLHNCQUFnRDtFQUNoRCxpQm5DOExhO0FKcWhQekI7O0F1Q2p0UFk7RUFDRSxrQkFBbUU7QXZDb3RQakY7O0F1QzF0UFU7RUFDRSxxQkFBcUI7RUFDckIsNEJBQWdEO0VBQ2hELGlCbkM4TGE7QUoraFB6Qjs7QXVDM3RQWTtFQUNFLGtCQUFtRTtBdkM4dFBqRjs7QXVDN29QRTtFZGpEQSx5QnJCMUVxQztFcUIyRXJDLGNyQi9EYTtBSml3UGY7O0F5QmhzUEU7RUFDRSx5QkFQb0Y7RUFRcEYsY3JCbkVXO0FKc3dQZjs7QXVDdnBQRTtFZGpEQSx5QnJCMUV5RDtFcUIyRXpELGNyQi9EYTtBSjJ3UGY7O0F5QjFzUEU7RUFDRSx5QkFQb0Y7RUFRcEYsY3JCbkVXO0FKZ3hQZjs7QXVDanFQRTtFZGpEQSx5QnJCMUUyRTtFcUIyRTNFLGNyQi9EYTtBSnF4UGY7O0F5QnB0UEU7RUFDRSx5QkFQb0Y7RUFRcEYsY3JCbkVXO0FKMHhQZjs7QXVDM3FQRTtFZGpEQSx5QnJCMUU2RjtFcUIyRTdGLGNyQi9EYTtBSit4UGY7O0F5Qjl0UEU7RUFDRSx5QkFQb0Y7RUFRcEYsY3JCbkVXO0FKb3lQZjs7QXVDcnJQRTtFZGpEQSx5QnJCMUU2RztFcUIyRTdHLGNyQi9EYTtBSnl5UGY7O0F5Qnh1UEU7RUFDRSx5QkFQb0Y7RUFRcEYsY3JCbkVXO0FKOHlQZjs7QXVDOXZQRTtFQUtJLFdBQVc7QXZDNnZQakI7O0F1QzF2UEk7RUFDRSxnQkFBZ0I7QXZDNnZQdEI7O0FNM3VQTTtFaUNTSjtJQUtJLFdBQVc7SUFFYixnQkFBZ0I7RXZDaXVQbEI7QUFDRjs7QU1sdlBNO0VpQ1NKO0lBS0ksV0FBVztJQUViLGdCQUFnQjtFdkN3dVBsQjtBQUNGOztBTXB2UE07RWlDK0JKO0lBZ0RNLGNBQWM7RXZDMHFQcEI7RXVDMXRQQTtJQW1EUSxjQUFjO0lBQ2QsZUFBaUM7RXZDMHFQekM7QUFDRjs7QXdDMTBQRTtFQTFDQSxrQkFBa0I7RUFDbEIsa0JwQ3VReUI7RW9DdFF6QixhcEN1UW9CO0VvQ3JRcEIsd0NwQzhCYTtFb0M3QmIsc0JwQzZDcUI7RW9DNUJyQix1QkFGc0U7RUFHdEUsY3BDV2E7QUo0MVBmOztBd0N0M1BFO0VBQ0UsYUFBYTtBeEN5M1BqQjs7QXdDdDNQRTtFQUNFLGdCQUFnQjtBeEN5M1BwQjs7QXdDNTFQRTtFQXBCQSx5QkFGc0U7RUFHdEUsY3BDV2E7QUp5MlBmOztBd0NqMlBFO0VBcEJBLHlCQUZzRTtFQUd0RSxjcENXYTtBSjgyUGY7O0F3Q3QyUEU7RUFwQkEseUJBRnNFO0VBR3RFLGNwQ1dhO0FKbTNQZjs7QXdDMzJQRTtFQXBCQSx5QkFGc0U7RUFHdEUsY3BDV2E7QUp3M1BmOztBd0NoM1BFO0VBcEJBLHlCQUZzRTtFQUd0RSxjcENXYTtBSjYzUGY7O0F3Q3IzUEU7RUFmQSxtQkF5QmdDO0VBeEJoQyxxQkF3QmdDO0VBdkJoQyxzQkF1QmdDO0VBdEJoQyxvQkFzQmdDO0F4Q2szUGxDOztBd0M1M1BFO0VBZkEsaUJBNkI4QjtFQTVCOUIsbUJBNEI4QjtFQTNCOUIsb0JBMkI4QjtFQTFCOUIsa0JBMEI4QjtBeENxM1BoQzs7QXlDNTJQRTtFQWxEQSxtQnJDOEJrQjtFcUM1QmxCLHlCckNhbUI7RXFDWm5CLHNCckNnQ3FCO0VxQzlCckIsbUJyQ2tCYTtFcUNqQmIsd0JyQytQZ0I7VXFDL1BoQixnQnJDK1BnQjtFcUM3UGhCLGdCQUFnQjtFQUNoQixjckNVYTtBSnE1UGY7O0F5Qzc1UEU7RUFDRSxnQkFBZ0I7QXpDZzZQcEI7O0F5Q3QzUEU7RUE1QkEsYXJDS21CO0VxQ0puQixtQnJDZGtCO0FKbzZQcEI7O0F5Q3A1UEU7RUFDRSxnQkFBZ0I7QXpDdTVQcEI7O0F5QzMzUEU7RUFoQkEsYXJDWG1CO0FKMDVQckI7O0F5Qzc0UEU7RUFDRSxnQkFBZ0I7QXpDZzVQcEI7O0F5QzczUEU7RUFDRSxlQUFlO0F6Q2c0UG5COztBMEMvNVBFO0VBWEEsa0JBQWtCO0VBQ2xCLGN0Q1BpQjtFc0NRakIsZUFBZTtBMUM4NlBqQjs7QUFFQTtFWXp6UEksVUFBVTtBWjJ6UGQ7O0EwQ2g3UEU7RUFFRSxjdENWVztBSjQ3UGY7O0EwQzc2UEU7RUF2QkEsY3RDaVE4QztFc0NoUTlDLFd0Q2lRMkM7RXNDaFEzQyxnQnRDaVErQjtFc0NoUS9CLGN0Q2lRd0I7QUp1c1AxQjs7QTBDcDdQRTtFQXZCQSxXdENpUTREO0VzQ2hRNUQsV3RDaVEyRDtFc0NoUTNELGN0Q2lRNEM7RXNDaFE1QyxjdENpUXdCO0FKOHNQMUI7O0FvQ3RyUEU7RUFoVEEsVUFBVTtFQUNWLFNBQVM7RUFDVCxnQkFBZ0I7RUFDaEIsa0JBQWtCO0FwQzArUHBCOztBQUVBO0VZdDFQSSxVQUFVO0FadzFQZDs7QW9DbitQRTs7RUFFRSxjQUFjO0VBQ2QscUJBQXFCO0VBQ3JCLG1CQUFtQjtFQUNuQixjQUFjO0VBQ2Qsb0JoQ3lCNkI7QUo2OFBqQzs7QW9DbCtQRTs7OztFQUlFLGdCQUFnQjtBcENxK1BwQjs7QW9DbCtQRTtFQUNFLHFCQUFxQjtBcENxK1B6Qjs7QW9DcjRQTTtFQUNFLHFCQUFxQjtBcEN3NFA3Qjs7QW9DOTNQTTtFQUNFLGNBQWM7QXBDaTRQdEI7O0FvQzd0UEU7RUFwUUUsY0FBYztFQUNkLFdBQVc7QXBDcStQZjs7QW9DbitQSTtFQUNFLG1CQUFtQjtFQUNuQixzQkFBc0I7QXBDcytQNUI7O0FvQzEzUEU7RUFDRSxpQmhDZ09xQjtBSjZwUHpCOztBb0MxM1BFO0VBQ0UsVUFBVTtBcEM2M1BkOztBTXA3UE07RThCcUJBO0lBQ0UscUJBQXFCO0VwQ202UDNCO0VvQ3o1UEk7SUFDRSxjQUFjO0VwQzI1UHBCO0VvQ3Z2UEE7SUFwUUUsY0FBYztJQUNkLFdBQVc7RXBDOC9QYjtFb0M1L1BFO0lBQ0UsbUJBQW1CO0lBQ25CLHNCQUFzQjtFcEM4L1AxQjtFb0MvdlBBO0lBcFFFLGNBQWM7SUFDZCxXQUFXO0VwQ3NnUWI7RW9DcGdRRTtJQUNFLG1CQUFtQjtJQUNuQixzQkFBc0I7RXBDc2dRMUI7QUFDRjs7QU03OFBNO0U4QnFCQTtJQUNFLHFCQUFxQjtFcEM0N1AzQjtFb0NsN1BJO0lBQ0UsY0FBYztFcENvN1BwQjtFb0NoeFBBO0lBcFFFLGNBQWM7SUFDZCxXQUFXO0VwQ3VoUWI7RW9DcmhRRTtJQUNFLG1CQUFtQjtJQUNuQixzQkFBc0I7RXBDdWhRMUI7RW9DeHhQQTtJQXBRRSxjQUFjO0lBQ2QsV0FBVztFcEMraFFiO0VvQzdoUUU7SUFDRSxtQkFBbUI7SUFDbkIsc0JBQXNCO0VwQytoUTFCO0FBQ0Y7O0FNaitQTTtFOEJnQkE7SUFDRSxxQkFBcUI7RXBDcTlQM0I7RW9DMzhQSTtJQUNFLGNBQWM7RXBDNjhQcEI7RW9DenlQQTtJQXBRRSxjQUFjO0lBQ2QsV0FBVztFcENnalFiO0VvQzlpUUU7SUFDRSxtQkFBbUI7SUFDbkIsc0JBQXNCO0VwQ2dqUTFCO0VvQ2p6UEE7SUFwUUUsY0FBYztJQUNkLFdBQVc7RXBDd2pRYjtFb0N0alFFO0lBQ0UsbUJBQW1CO0lBQ25CLHNCQUFzQjtFcEN3alExQjtBQUNGOztBTTEvUE07RThCZ0JBO0lBQ0UscUJBQXFCO0VwQzgrUDNCO0VvQ3ArUEk7SUFDRSxjQUFjO0VwQ3MrUHBCO0VvQ2wwUEE7SUFwUUUsY0FBYztJQUNkLFdBQVc7RXBDeWtRYjtFb0N2a1FFO0lBQ0UsbUJBQW1CO0lBQ25CLHNCQUFzQjtFcEN5a1ExQjtFb0MxMFBBO0lBcFFFLGNBQWM7SUFDZCxXQUFXO0VwQ2lsUWI7RW9DL2tRRTtJQUNFLG1CQUFtQjtJQUNuQixzQkFBc0I7RXBDaWxRMUI7QUFDRjs7QW9DbjFQRTtFQTlIRSxlQUFpQztFQUNqQyxpQmhDckk0QjtBSjBsUWhDOztBb0N4OFBJOzs7RUFHRSxzQkFBc0I7QXBDMjhQNUI7O0FvQ3o4UE07OztFQUNFLHNCQUFzQjtBcEM4OFA5Qjs7QW9DaDhQTTs7O0VBR0UscUJoQzBLbUI7RWdDdktqQixxQkFBcUI7QXBDaThQL0I7O0FvQ3Q3UE07OztFQUdFLG9CaEN5Sm1CO0VnQ3RKakIscUJBQXFCO0FwQ3U3UC9COztBb0NqN1BJO0VBS0ksa0JBQWtCO0FwQ2c3UDFCOztBb0M3NlBNOzs7RUFJSSxjQUFjO0VBQ2Qsc0JoQ21JaUI7QUo0eVAzQjs7QW9DcDZQSTtFQUtJLGtCQUFrQjtBcENtNlAxQjs7QW9DaDZQTTs7O0VBSUksY0FBYztFQUNkLHNCQUF1QjtBcENrNlBqQzs7QW9DeDRQRTtFQUxBLG1CaEN2UnFDO0VnQ3dSckMsY2hDNVFhO0FKNnBRZjs7QW9DNzRQRTtFQUxBLG1CaEN2UnFDO0VnQ3dSckMsY2hDNVFhO0FKa3FRZjs7QW9DbDVQRTtFQW5QSSxnQnpCR3FEO0FYc29RM0Q7O0FvQ3Q1UEU7RUEzTkksaUJ6QnBCc0Q7QVh5b1E1RDs7QW9Dbm5RTTtFQUNFLGdCekJ4Qm1EO0FYOG9RM0Q7O0FvQ2xuUVE7RUFDRSxpQnpCNUJrRDtBWGlwUTVEOztBb0NsNlBFO0VBbElFLGtCaENoSTRCO0VnQ2lJNUIsY0FBZ0M7QXBDd2lRcEM7O0FvQ3Y2UEU7RUFsTUksa0JBQWtCO0FwQzZtUXhCOztBb0MzbVFNO0VBQ0UsZ0J6QmpEbUQ7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QkFBeUI7RUFDekIseURBQWlFO0FabzFSckU7O0E4Qy8wUkU7RWxDL0JBLGNBQWM7RUFDZCxRQUFRO0VBQ1IsU0FBUztFQUVULGlCUnNUMkI7RVFwVDNCLFdBQVc7RUFhVCxxQkFBcUI7RUFDckIsd0JBQXdCO0VBQ3hCLHlEUk1tQztBSjgxUnZDOztBOEM3clJFO0VBd0JNLGdCMUM4R2lCO0FKMmpSekI7O0E4Q2pzUkU7RUE2QkksV0FBVztBOUN3cVJqQjs7QThDcnNSRTtFQW1DSSxjQUFjO0E5Q3NxUnBCOztBK0NuNFJFOztFQW5CQSxrQkFBa0I7RUFDbEIsU0FBUztFQUNULHlCaEMwRHVEO0VnQ3pEdkQsbUJDdUNzQjtFRHRDdEIsZ0JBQWdCO0EvQzI1UmxCOztBK0N6NVJFOzs7Ozs7OztFQUlFLGtCQUFrQjtFQUNsQixNQUFNO0VBQ04sT0FBa0I7RUFDbEIsV0FBVztFQUNYLFlBQVk7QS9DZzZSaEI7O0ErQzM1UkU7O0VBUU0sc0JDZWdCO0FoRHk0UnhCOztBaUQ3NVJFO0VBWkEscUJBQXFCO0VBQ3JCLDBCN0MrWCtCO0U2QzdYL0Isc0I3Q3VEcUI7RTZDckRyQixpQjdDMFhzQjtFNkN6WHRCLGNBQWM7RUFDZCxtQkFBbUI7RUFDbkIsZUFBZTtFQU9iLG1CN0NtQm1DO0U2Q2xCbkMsYzdDOEJXO0FKdTRSZjs7QWlEejZSRTtFQVFNLG1CN0NjK0I7RTZDYi9CLGM3Q3lCTztBSjQ0UmY7O0FpRDk2UkU7RUFRTSxtQjdDY21EO0U2Q2JuRCxjN0N5Qk87QUppNVJmOztBaURuN1JFO0VBUU0sbUI3Q2NxRTtFNkNickUsYzdDcUJPO0FKMDVSZjs7QWlEeDdSRTtFQVFNLG1CN0NjdUY7RTZDYnZGLGM3Q3FCTztBSis1UmY7O0FpRDc3UkU7RUFRTSxtQjdDY3VHO0U2Q2J2RyxjN0N5Qk87QUpnNlJmOztBa0QzNlJFO0VBbkRBLGNBQXdDO0VBQ3hDLG1COUNvRWtCO0FKODVScEI7O0FrRGg3UkU7RUFJSSxlQUFlO0FsRGc3UnJCOztBTXoxUk07RTRDM0ZKO0lBakJBLFVBQVU7SUFDVixvQjlDbUNtQjtJOEM1QmpCLGNBQWM7RWxEbzhSaEI7RWtEajhSQTtJQUNFLFc5Q3dXa0M7RUoybFJwQztBQUNGOztBa0R6NlJFO0VBMURFLG1CQUFtQjtFQUNuQixtQkFBbUI7QWxEdStSdkI7O0FrRHArUkU7RUFDRSxtQjlDa0RpQjtBSnE3UnJCOztBa0RwK1JFO0VBQ0Usa0I5QzhDaUI7QUp5N1JyQjs7QWtEcCtSRTtFQUNFLGdCQUFnQjtBbER1K1JwQjs7QWtEMTdSRTtFQVVNLHNCQUFzQjtBbERvN1I5Qjs7QWtEOTdSRTtFQWNNLHNCQUFzQjtBbERvN1I5Qjs7QW1EcDlSRTtFQUNFLGdCQUFnQjtBbkR1OVJwQjs7QW1EbjlSRTtFQUNFLGtCQUFrQjtFQUNsQixNQUFNO0VBQ04sT0FBTztFQUNQLFcvQ21YeUI7RStDalh6QixXQUFXO0VBQ1gsWUFBWTtFQUVaLDJEL0NtWDhCO0UrQ25YOUIsbUQvQ21YOEI7RStDalg5QixxQy9DVFc7RStDV1gsVUFBVTtFQUNWLGtCQUFrQjtFQUVsQixnQkFBZ0I7QW5EaTlScEI7O0FtRGorUkU7RUFtQkksVUFBVTtFQUNWLG1CQUFtQjtBbkRrOVJ6Qjs7QW1EdCtSRTtFQXdCSSxlQUFlO0FuRGs5UnJCOztBbUQxK1JFO0VBNEJJLGtCQUFrQjtBbkRrOVJ4Qjs7QW1EOStSRTtFQWdDSSxlQUFlO0FuRGs5UnJCOztBbUQxc1JFO0VBalFBLGtCQUFrQjtFQUNsQixnQkFBZ0I7QW5EKzhSbEI7O0FtRDFzUkU7RUF6UEUsZUFBZTtFQU9qQixXL0M2VHdCO0UrQ3RUeEIsK0MvQzBUZ0M7RStDMVRoQyx1Qy9DMFRnQztFK0MxVGhDLCtCL0MwVGdDO0UrQzFUaEMsNEQvQzBUZ0M7RStDelRoQyxtQ0FBMkI7VUFBM0IsMkJBQTJCO0VBRTNCLG1CL0M3RWtCO0FKdWdTcEI7O0FBRUE7RVl0NFJJLFVBQVU7QVp3NFJkOztBbURyOFJFO0VBQ0UsVy9DeVRzQjtBSitvUjFCOztBbUQvN1JFO0VBQ0Usa0JBQWtCO0FuRGs4UnRCOztBbUQ5N1JFO0VBQ0UsVy9DMlN5QjtBSnNwUjdCOztBbUQvN1JJO0VBQ0Usa0QvQ25GUztVK0NtRlQsMEMvQ25GUztBSnFoU2Y7O0FtRDc3UkU7RUFDRSxrQ0FBMEI7VUFBMUIsMEJBQTBCO0FuRGc4UjlCOztBbUQvdFJFO0VBalFFLGtCQUFrQjtFQUlwQixXL0M2VHdCO0UrQ3RUeEIsK0MvQzBUZ0M7RStDMVRoQyx1Qy9DMFRnQztFK0MxVGhDLCtCL0MwVGdDO0UrQzFUaEMsNEQvQzBUZ0M7RStDelRoQyxtQ0FBMkI7VUFBM0IsMkJBQTJCO0VBRTNCLG1CL0M3RWtCO0FKdWlTcEI7O0FBRUE7RVl0NlJJLFVBQVU7QVp3NlJkOztBbURyK1JFO0VBQ0UsVy9DeVRzQjtBSitxUjFCOztBbUQvOVJFO0VBQ0Usa0JBQWtCO0FuRGsrUnRCOztBbUQ5OVJFO0VBQ0UsVy9DMlN5QjtBSnNyUjdCOztBbUQvOVJJO0VBQ0Usa0QvQ25GUztVK0NtRlQsMEMvQ25GUztBSnFqU2Y7O0FtRDc5UkU7RUFDRSxrQ0FBMEI7VUFBMUIsMEJBQTBCO0FuRGcrUjlCOztBbUQxdlJFO0VBM05FLE1BQU07RUFDTixPQUFPO0VBQ1AsWS9DNlFrQjtFK0M1UWxCLFlBQVk7RUFFWixxQ0FBNkI7VUFBN0IsNkJBQTZCO0VBQzdCLGdCQUFnQjtBbkR3OVJwQjs7QW1EcjlSWTtFQUNOLHFDQUE2QjtVQUE3Qiw2QkFBNkI7QW5EdzlSbkM7O0FtRHo5Ulk7RUFHSixrQ0FBMEI7VUFBMUIsMEJBQTBCO0FuRDA5UmxDOztBbURyOVJZO0VBRUosb0NBQTRCO1VBQTVCLDRCQUE0QjtBbkR1OVJwQzs7QW1EcjRSSTtFdkM3UEEsbUVSb0RXO1VRcERYLDJEUm9EVztBSmtsU2Y7O0FtRGx4UkU7RUFwTUUsTUFBTTtFQUNOLFFBQVE7RUFDUixZL0NxUGtCO0UrQ3BQbEIsWUFBWTtFQUVaLG9DQUE0QjtVQUE1Qiw0QkFBNEI7RUFDNUIsZ0JBQWdCO0FuRHk5UnBCOztBbUR0OVJZO0VBQ04sb0NBQTRCO1VBQTVCLDRCQUE0QjtBbkR5OVJsQzs7QW1EMTlSWTtFQUdKLGtDQUEwQjtVQUExQiwwQkFBMEI7QW5EMjlSbEM7O0FtRHQ5Ulk7RUFFSixxQ0FBNkI7VUFBN0IsNkJBQTZCO0FuRHc5UnJDOztBbUQ5NVJJO0V2Q2hRQSxrRVJ1RFc7VVF2RFgsMERSdURXO0FKMm1TZjs7QW1EMXlSRTtFQTdLRSxNQUFNO0VBQ04sT0FBTztFQUVQLFdBQVc7RUFDWCxhL0M0TjJCO0UrQzFOM0IscUNBQTZCO1VBQTdCLDZCQUE2QjtFQUM3QixnQkFBZ0I7QW5EeTlScEI7O0FtRHQ5Ulk7RUFDTixxQ0FBNkI7VUFBN0IsNkJBQTZCO0FuRHk5Um5DOztBbUQxOVJZO0VBR0osa0NBQTBCO1VBQTFCLDBCQUEwQjtBbkQyOVJsQzs7QW1EdDlSWTtFQUVKLG9DQUE0QjtVQUE1Qiw0QkFBNEI7QW5EdzlScEM7O0FtRHY3Ukk7RXZDMVBBLG1FUmlEVztVUWpEWCwyRFJpRFc7QUpvb1NmOztBbURsMFJFO0VBckpFLFNBQVM7RUFDVCxPQUFPO0VBRVAsV0FBVztFQUNYLGEvQ21NMkI7RStDak0zQixvQ0FBNEI7VUFBNUIsNEJBQTRCO0VBQzVCLGdCQUFnQjtBbkR5OVJwQjs7QW1EdDlSWTtFQUNOLG9DQUE0QjtVQUE1Qiw0QkFBNEI7QW5EeTlSbEM7O0FtRDE5Ulk7RUFHSixrQ0FBMEI7VUFBMUIsMEJBQTBCO0FuRDI5UmxDOztBbUR0OVJZO0VBRUoscUNBQTZCO1VBQTdCLDZCQUE2QjtBbkR3OVJyQzs7QW1EaDlSSTtFdkNuUUEsa0VSMERXO1VRMURYLDBEUjBEVztBSjZwU2Y7O0FtRHoxUkU7RUF2R0EsdUJBQWU7VUFBZixlQUFlO0VBQ2YsK0MvQ2dLZ0M7RStDaEtoQyx1Qy9DZ0tnQztFK0NoS2hDLCtCL0NnS2dDO0UrQ2hLaEMsNEQvQ2dLZ0M7RStDL0poQyxtQ0FBMkI7VUFBM0IsMkJBQTJCO0FuRG84UjdCOztBbURqOFJFO0VBQ0Usa0NBQTBCO1VBQTFCLDBCQUEwQjtBbkRvOFI5Qjs7QW1EaDhSRTtFQUNFLGtDQUEwQjtVQUExQiwwQkFBMEI7QW5EbThSOUI7O0FNNWxTTTtFNkM2UEU7SUExRk4sdUJBQWU7WUFBZixlQUFlO0lBQ2YsVy9DeUkwQjtJK0N4STFCLHdCQUFnQjtJQUFoQixnQkFBZ0I7SUFDaEIsbUJBQW1CO0VuRDg3Um5CO0VtRHg3UkE7SUFDRSxhQUFhO0VuRDA3UmY7RW1EdDdSQTtJQUNFLHVCQUFlO1lBQWYsZUFBZTtFbkR3N1JqQjtFbURyN1JRO0lBQ04sa0IvQzhHa0I7RUp5MFJwQjtFbURuN1JBO0lBQ0Usa0IvQ3lHa0I7RUo0MFJwQjtFbUQvMlJNO0lBOUZOLHVCQUFlO1lBQWYsZUFBZTtJQUNmLFcvQ3lJMEI7SStDeEkxQix3QkFBZ0I7SUFBaEIsZ0JBQWdCO0lBQ2hCLG1CQUFtQjtFbkRnOVJuQjtFbUQxOFJBO0lBQ0UsYUFBYTtFbkQ0OFJmO0VtRHg4UkE7SUFDRSx1QkFBZTtZQUFmLGVBQWU7RW5EMDhSakI7RW1EdjhSUTtJQUNOLG1CL0M4R2tCO0VKMjFScEI7RW1EcjhSQTtJQUNFLG1CL0N5R2tCO0VKODFScEI7RW1ENzNSTTtJQWxHTix1QkFBZTtZQUFmLGVBQWU7SUFDZixXL0N5STBCO0krQ3hJMUIsd0JBQWdCO0lBQWhCLGdCQUFnQjtJQUNoQixtQkFBbUI7RW5EaytSbkI7RW1ENTlSQTtJQUNFLGFBQWE7RW5EODlSZjtFbUQxOVJBO0lBQ0UsdUJBQWU7WUFBZixlQUFlO0VuRDQ5UmpCO0VtRHo5UlE7SUFDTixpQi9DOEdrQjtFSjYyUnBCO0VtRHY5UkE7SUFDRSxpQi9DeUdrQjtFSmczUnBCO0VtRDM0Uk07SUF0R04sdUJBQWU7WUFBZixlQUFlO0lBQ2YsVy9DeUkwQjtJK0N4STFCLHdCQUFnQjtJQUFoQixnQkFBZ0I7SUFDaEIsbUJBQW1CO0VuRG8vUm5CO0VtRDkrUkE7SUFDRSxhQUFhO0VuRGcvUmY7RW1ENStSQTtJQUNFLHVCQUFlO1lBQWYsZUFBZTtFbkQ4K1JqQjtFbUQzK1JRO0lBQ04sb0IvQzhHa0I7RUorM1JwQjtFbUR6K1JBO0lBQ0Usb0IvQ3lHa0I7RUprNFJwQjtBQUNGOztBTXZxU007RTZDNlBFO0lBMUZOLHVCQUFlO1lBQWYsZUFBZTtJQUNmLFcvQ3lJMEI7SStDeEkxQix3QkFBZ0I7SUFBaEIsZ0JBQWdCO0lBQ2hCLG1CQUFtQjtFbkR5Z1NuQjtFbURuZ1NBO0lBQ0UsYUFBYTtFbkRxZ1NmO0VtRGpnU0E7SUFDRSx1QkFBZTtZQUFmLGVBQWU7RW5EbWdTakI7RW1EaGdTUTtJQUNOLGtCL0M4R2tCO0VKbzVScEI7RW1EOS9SQTtJQUNFLGtCL0N5R2tCO0VKdTVScEI7RW1EMTdSTTtJQTlGTix1QkFBZTtZQUFmLGVBQWU7SUFDZixXL0N5STBCO0krQ3hJMUIsd0JBQWdCO0lBQWhCLGdCQUFnQjtJQUNoQixtQkFBbUI7RW5EMmhTbkI7RW1EcmhTQTtJQUNFLGFBQWE7RW5EdWhTZjtFbURuaFNBO0lBQ0UsdUJBQWU7WUFBZixlQUFlO0VuRHFoU2pCO0VtRGxoU1E7SUFDTixtQi9DOEdrQjtFSnM2UnBCO0VtRGhoU0E7SUFDRSxtQi9DeUdrQjtFSnk2UnBCO0VtRHg4Uk07SUFsR04sdUJBQWU7WUFBZixlQUFlO0lBQ2YsVy9DeUkwQjtJK0N4STFCLHdCQUFnQjtJQUFoQixnQkFBZ0I7SUFDaEIsbUJBQW1CO0VuRDZpU25CO0VtRHZpU0E7SUFDRSxhQUFhO0VuRHlpU2Y7RW1EcmlTQTtJQUNFLHVCQUFlO1lBQWYsZUFBZTtFbkR1aVNqQjtFbURwaVNRO0lBQ04saUIvQzhHa0I7RUp3N1JwQjtFbURsaVNBO0lBQ0UsaUIvQ3lHa0I7RUoyN1JwQjtFbUR0OVJNO0lBdEdOLHVCQUFlO1lBQWYsZUFBZTtJQUNmLFcvQ3lJMEI7SStDeEkxQix3QkFBZ0I7SUFBaEIsZ0JBQWdCO0lBQ2hCLG1CQUFtQjtFbkQralNuQjtFbUR6alNBO0lBQ0UsYUFBYTtFbkQyalNmO0VtRHZqU0E7SUFDRSx1QkFBZTtZQUFmLGVBQWU7RW5EeWpTakI7RW1EdGpTUTtJQUNOLG9CL0M4R2tCO0VKMDhScEI7RW1EcGpTQTtJQUNFLG9CL0N5R2tCO0VKNjhScEI7QUFDRjs7QU03dVNNO0U2Q3dQRTtJQTFGTix1QkFBZTtZQUFmLGVBQWU7SUFDZixXL0N5STBCO0krQ3hJMUIsd0JBQWdCO0lBQWhCLGdCQUFnQjtJQUNoQixtQkFBbUI7RW5Eb2xTbkI7RW1EOWtTQTtJQUNFLGFBQWE7RW5EZ2xTZjtFbUQ1a1NBO0lBQ0UsdUJBQWU7WUFBZixlQUFlO0VuRDhrU2pCO0VtRDNrU1E7SUFDTixrQi9DOEdrQjtFSis5UnBCO0VtRHprU0E7SUFDRSxrQi9DeUdrQjtFSmsrUnBCO0VtRHJnU007SUE5Rk4sdUJBQWU7WUFBZixlQUFlO0lBQ2YsVy9DeUkwQjtJK0N4STFCLHdCQUFnQjtJQUFoQixnQkFBZ0I7SUFDaEIsbUJBQW1CO0VuRHNtU25CO0VtRGhtU0E7SUFDRSxhQUFhO0VuRGttU2Y7RW1EOWxTQTtJQUNFLHVCQUFlO1lBQWYsZUFBZTtFbkRnbVNqQjtFbUQ3bFNRO0lBQ04sbUIvQzhHa0I7RUppL1JwQjtFbUQzbFNBO0lBQ0UsbUIvQ3lHa0I7RUpvL1JwQjtFbURuaFNNO0lBbEdOLHVCQUFlO1lBQWYsZUFBZTtJQUNmLFcvQ3lJMEI7SStDeEkxQix3QkFBZ0I7SUFBaEIsZ0JBQWdCO0lBQ2hCLG1CQUFtQjtFbkR3blNuQjtFbURsblNBO0lBQ0UsYUFBYTtFbkRvblNmO0VtRGhuU0E7SUFDRSx1QkFBZTtZQUFmLGVBQWU7RW5Ea25TakI7RW1EL21TUTtJQUNOLGlCL0M4R2tCO0VKbWdTcEI7RW1EN21TQTtJQUNFLGlCL0N5R2tCO0VKc2dTcEI7RW1EamlTTTtJQXRHTix1QkFBZTtZQUFmLGVBQWU7SUFDZixXL0N5STBCO0krQ3hJMUIsd0JBQWdCO0lBQWhCLGdCQUFnQjtJQUNoQixtQkFBbUI7RW5EMG9TbkI7RW1EcG9TQTtJQUNFLGFBQWE7RW5Ec29TZjtFbURsb1NBO0lBQ0UsdUJBQWU7WUFBZixlQUFlO0VuRG9vU2pCO0VtRGpvU1E7SUFDTixvQi9DOEdrQjtFSnFoU3BCO0VtRC9uU0E7SUFDRSxvQi9DeUdrQjtFSndoU3BCO0FBQ0Y7O0FNeHpTTTtFNkN3UEU7SUExRk4sdUJBQWU7WUFBZixlQUFlO0lBQ2YsVy9DeUkwQjtJK0N4STFCLHdCQUFnQjtJQUFoQixnQkFBZ0I7SUFDaEIsbUJBQW1CO0VuRCtwU25CO0VtRHpwU0E7SUFDRSxhQUFhO0VuRDJwU2Y7RW1EdnBTQTtJQUNFLHVCQUFlO1lBQWYsZUFBZTtFbkR5cFNqQjtFbUR0cFNRO0lBQ04sa0IvQzhHa0I7RUowaVNwQjtFbURwcFNBO0lBQ0Usa0IvQ3lHa0I7RUo2aVNwQjtFbURobFNNO0lBOUZOLHVCQUFlO1lBQWYsZUFBZTtJQUNmLFcvQ3lJMEI7SStDeEkxQix3QkFBZ0I7SUFBaEIsZ0JBQWdCO0lBQ2hCLG1CQUFtQjtFbkRpclNuQjtFbUQzcVNBO0lBQ0UsYUFBYTtFbkQ2cVNmO0VtRHpxU0E7SUFDRSx1QkFBZTtZQUFmLGVBQWU7RW5EMnFTakI7RW1EeHFTUTtJQUNOLG1CL0M4R2tCO0VKNGpTcEI7RW1EdHFTQTtJQUNFLG1CL0N5R2tCO0VKK2pTcEI7RW1EOWxTTTtJQWxHTix1QkFBZTtZQUFmLGVBQWU7SUFDZixXL0N5STBCO0krQ3hJMUIsd0JBQWdCO0lBQWhCLGdCQUFnQjtJQUNoQixtQkFBbUI7RW5EbXNTbkI7RW1EN3JTQTtJQUNFLGFBQWE7RW5EK3JTZjtFbUQzclNBO0lBQ0UsdUJBQWU7WUFBZixlQUFlO0VuRDZyU2pCO0VtRDFyU1E7SUFDTixpQi9DOEdrQjtFSjhrU3BCO0VtRHhyU0E7SUFDRSxpQi9DeUdrQjtFSmlsU3BCO0VtRDVtU007SUF0R04sdUJBQWU7WUFBZixlQUFlO0lBQ2YsVy9DeUkwQjtJK0N4STFCLHdCQUFnQjtJQUFoQixnQkFBZ0I7SUFDaEIsbUJBQW1CO0VuRHF0U25CO0VtRC9zU0E7SUFDRSxhQUFhO0VuRGl0U2Y7RW1EN3NTQTtJQUNFLHVCQUFlO1lBQWYsZUFBZTtFbkQrc1NqQjtFbUQ1c1NRO0lBQ04sb0IvQzhHa0I7RUpnbVNwQjtFbUQxc1NBO0lBQ0Usb0IvQ3lHa0I7RUptbVNwQjtBQUNGOztBTXg0U007RTZDb1JFO0lBbkZOLG1CQUFtQjtJQUNuQixZQUFZO0lBQ1osZ0JBQWdCO0lBQ2hCLG1CQUFtQjtJQUNuQixjQUFjO0lBQ2QsaUJBQWlCO0lBQ2pCLDJCQUFtQjtJQUFuQixtQkFBbUI7RW5ENHNTbkI7RW1EenNTQTtJQUlFLHdCQUFnQjtZQUFoQixnQkFBZ0I7SUFDaEIsdUJBQWU7WUFBZixlQUFlO0VuRHdzU2pCO0VtRHJzU0E7SUFDRSxhQUFhO0VuRHVzU2Y7QUFDRjs7QU0zNVNNO0U2Q29SRTtJQW5GTixtQkFBbUI7SUFDbkIsWUFBWTtJQUNaLGdCQUFnQjtJQUNoQixtQkFBbUI7SUFDbkIsY0FBYztJQUNkLGlCQUFpQjtJQUNqQiwyQkFBbUI7SUFBbkIsbUJBQW1CO0VuRCt0U25CO0VtRDV0U0E7SUFJRSx3QkFBZ0I7WUFBaEIsZ0JBQWdCO0lBQ2hCLHVCQUFlO1lBQWYsZUFBZTtFbkQydFNqQjtFbUR4dFNBO0lBQ0UsYUFBYTtFbkQwdFNmO0FBQ0Y7O0FNejZTTTtFNkMrUUU7SUFuRk4sbUJBQW1CO0lBQ25CLFlBQVk7SUFDWixnQkFBZ0I7SUFDaEIsbUJBQW1CO0lBQ25CLGNBQWM7SUFDZCxpQkFBaUI7SUFDakIsMkJBQW1CO0lBQW5CLG1CQUFtQjtFbkRrdlNuQjtFbUQvdVNBO0lBSUUsd0JBQWdCO1lBQWhCLGdCQUFnQjtJQUNoQix1QkFBZTtZQUFmLGVBQWU7RW5EOHVTakI7RW1EM3VTQTtJQUNFLGFBQWE7RW5ENnVTZjtBQUNGOztBTTU3U007RTZDK1FFO0lBbkZOLG1CQUFtQjtJQUNuQixZQUFZO0lBQ1osZ0JBQWdCO0lBQ2hCLG1CQUFtQjtJQUNuQixjQUFjO0lBQ2QsaUJBQWlCO0lBQ2pCLDJCQUFtQjtJQUFuQixtQkFBbUI7RW5EcXdTbkI7RW1EbHdTQTtJQUlFLHdCQUFnQjtZQUFoQixnQkFBZ0I7SUFDaEIsdUJBQWU7WUFBZixlQUFlO0VuRGl3U2pCO0VtRDl2U0E7SUFDRSxhQUFhO0VuRGd3U2Y7QUFDRjs7QW9EejlTRTtFQXBHQSxrQkFBa0I7QXBEaWtUcEI7O0FvRHo5U0U7RUFuR0Esa0JBQWtCO0VBQ2xCLFNBQVM7RUFDVCxTQUFTO0VBQ1QsZ0JBQWdCO0VBQ2hCLGdCQUFnQjtBcERna1RsQjs7QW9ENzlTRTtFQTlGQSxXQUFXO0FwRCtqVGI7O0FvRDVqVEk7RUFDRSxNQUFNO0VBQ04sT0FBTztBcEQralRiOztBb0RsK1NFO0VBdkZBLFNBQVM7QXBENmpUWDs7QW9EbCtTRTtFQXRGQSxXQUFXO0VBQ1gsZUFBZTtFQUNmLFNBQVM7QXBENGpUWDs7QW9EcCtTRTtFQW5GQSxrQkFBa0I7RUFDbEIsU0FBUztFQUNULFdBQVc7RUFDWCxnQkFBZ0I7RUFDaEIsYWhENFgwQjtFZ0QxWDFCLHVDaERqQmE7RWdEa0JiLGNoRGRhO0FKd2tUZjs7QW9EMStTRTtFeEM0REEsa0JBQWtCO0VBQ2xCLFFBQVE7RUFDUixtQ0FBMkI7VUFBM0IsMkJBQTJCO0V3Q3ZJM0IsV2hEcVh1QjtFZ0RwWHZCLGFoRG1YMEI7RWdEbFgxQixjaER2QmE7QUppbFRmOztBQUVBO0VZMTlTSSxVQUFVO0FaNDlTZDs7QW9ENWpURTtFQUdFLHVDaERoQ1c7QUo2bFRmOztBb0R2L1NFO0VBaEVBLE9BQWtCO0FwRDJqVHBCOztBb0R0L1NFO0VBaEVBLFVBQXFCO0VBQ3JCLFFBQW1CO0FwRDBqVHJCOztBb0R0L1NFO0VBOURBLGtCQUFrQjtFQUNsQixrQmhEcVY4QjtFZ0RwVjlCLHFCaERxVmlDO0VnRHBWakMsa0JBQWtCO0FwRHdqVHBCOztBQUVBO0VZbC9TSSxVQUFVO0Faby9TZDs7QW9EMWpURTtFQUNFLGFoRDhVMEI7RWdEN1UxQixjaEQ2VTBCO0VnRDVVMUIsY2hENlV3QjtFZ0QzVXhCLGtCQUFrQjtFQUNsQix5QmhEakVpQjtBSjZuVHJCOztBb0QxalRJO0VBQ0UseUJoRGxFYTtBSituVG5COztBb0QxalRJO0VBQ0UseUJoRHRFYTtBSm1vVG5COztBcURoalRFO0VBbkZBLGNBQWdDO0VBQ2hDLG1CakRZa0I7QUoyblRwQjs7QVkxaVRFO0VBRUUsY0FBYztFQUNkLFlBQVk7QVo0aVRoQjs7QVlwaVRFO0VBQ0UsV0FBVztBWnVpVGY7O0FxRDdvVEU7RUFDRSx3QnRDS3FEO0VzQ0pyRCxzQmpEWW1CO0VpRFhuQixldENHcUQ7RXNDR25ELGFBQWE7QXJEMm9UbkI7O0FxRHpvVE07RUFFRSxxQkFBcUI7QXJEMm9UN0I7O0FNM2tUTTtFK0M3RUo7SUF1Qk0scUJBQXFCO0VyRHNvVDNCO0FBQ0Y7O0FxRGpvVEU7O0VBRUUsY0FBYztFQUNkLDhCdEMxQnFEO0VzQzJCckQsc0JqRG5CbUI7RWlEb0JuQixjakRwQ1c7QUp3cVRmOztBcURsb1RJOztFQUNFLG1CakQ3Q2M7QUptclRwQjs7QXFENWxURTtFQS9CQSw4QnRDMUN1RDtFc0MyQ3ZELG1CakQzRHFDO0VpRDREckMsY2pEaERhO0VpRGlEYixlQUFlO0FyRCtuVGpCOztBcURubVRFO0VBcEJBLDhCdENyRHVEO0VzQ3NEdkQsY2pEbEVtQjtFaURtRW5CLG1CQUFtQjtBckQyblRyQjs7QXFEem5URTtFQUNFLHVCQUF1QjtBckQ0blQzQjs7QXFEN21URTtFQU5BLDhCdENuRXVEO0VzQ29FdkQsZ0JBQWdCO0VBQ2hCLGNqRDdFYTtBSm9zVGY7O0FxRGxtVEk7O0VBRUUscUJBQXFCO0VBQ3JCLG9CQUFzQztFQUN0QyxnQkFBZ0I7QXJEcW1UdEI7O0FxRGxtVEk7O0VBRUUscUJBQXFCO0VBQ3JCLG1CQUFxQztFQUNyQyxnQkFBZ0I7QXJEcW1UdEI7O0FzRHh2VEU7RUFwQ0EsWWxEMmVvQjtFa0QxZXBCLG1CbERvRmtCO0VrRG5GbEIsc0JsRHdGcUI7RWtEdkZyQix5QmxEbUVtQjtBSjZ0VHJCOztBc0QvdlRFO0VBTVEseUJsRHdCNkI7QUpxdVR2Qzs7QXNEbndURTtFQU1RLHlCbER3QmlEO0FKeXVUM0Q7O0FzRHZ3VEU7RUFNUSx5QmxEd0JtRTtBSjZ1VDdFOztBc0Qzd1RFO0VBTVEseUJsRHdCcUY7QUppdlQvRjs7QXNEL3dURTtFQU1RLHlCbER3QnFHO0FKcXZUL0c7O0FzRHR3VEU7RUF6Q0Esa0JBQWtCO0VBQ2xCLGNBQWM7RUFDZCxTQUFTO0VBQ1QsWUFBWTtFQUNaLHlCbERzRHFDO0VrRG5EbkMsc0JsRDJFbUI7QUpzdVR2Qjs7QXNEMXdURTtFMUNrTUEsa0JBQWtCO0VBQ2xCLFFBQVE7RUFDUixTQUFTO0VBQ1Qsd0NBQWdDO1VBQWhDLGdDQUFnQztFMENyT2hDLGtCQUFrQjtFQUNs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RFc7QUorZ1VmOztBMER2OVRFOztFQUlJLHVCQUF1QjtBMUR3OVQ3Qjs7QTBENTlURTs7OztFQVVJLHlDM0MxRG1EO0UyQzJEbkQsaUJ0RHBEbUI7RXNEcURuQixnQkFBWTtBMUR5OVRsQjs7QTBEcDlURTs7RUFHSSx5QzNDcEVtRDtBZjBoVXpEOztBMEQ1Z1VFO0VBQ0UsZ0JBQWdCO0VBQ2hCLGdDQ1Y2QztFRFc3Qyx5QnREckJXO0FKb2lVZjs7QTBEbGlVTTtFQUNFLGdCQUFnQjtFQUNoQix5QkNNeUM7QTNEK2hVakQ7O0FNejlUTTtFb0R1SEY7SUFDRSxhQUFhO0UxRHMyVGpCO0UwRGwyVEE7SUFDRSxhQUFhO0UxRG8yVGY7RTBEajJUQTs7O0lBR0UsY0FBYztFMURtMlRoQjtFMERoMlRBO0lBQ0UsYUFBYTtFMURrMlRmO0FBQ0Y7O0EwRHAxVEU7RUF2R0EsY0FBYztFQUNkLFdBQVc7RUFDWCxnQkFBZ0I7QTFEKzdUbEI7O0EwRHg3VEk7RUFDRSx5QnRENlptRTtBSjhoVHpFOztBMERyN1RJO0VBQ0UseUJ0RHdabUU7QUpnaVR6RTs7QTBEbDdUSTtFQUNFLHlCdER5WXlEO0FKNGlUL0Q7O0EwRDk1VE07RUFDRSx5QnREa1htRjtBSitpVDNGOztBMERsMlRFO0VBQ0UsZ0JBQWdCO0ExRHEyVHBCOztBMER0MlRFO0VBSUksV0FBVztBMURzMlRqQjs7QTREMWhVRTtFQWhGQSxTeERpa0JZO0V3RGhrQloseUJ4RFNtQjtFd0RSbkIsbUJ4RGdCYTtFd0RmYixxQkFBcUI7QTVEOG1VdkI7O0FZdmdVRTtFQUVFLGNBQWM7RUFDZCxZQUFZO0FaeWdVaEI7O0FZamdVRTtFQUNFLFdBQVc7QVpvZ1VmOztBNERsblVFO0VBQ0UsY0FBYztFQUNkLFdBQVc7RUFDWCxXQUFXO0E1RHFuVWY7O0E0RHRpVUU7RUFFSSxVQUFVO0E1RHdpVWhCOztBNEQxaVVFO0VBS00sdUJBQXVCO0E1RHlpVS9COztBNERuaVVFO0VBQ0UsbUJ4RGhHbUM7QUpzb1V2Qzs7QTREdmlVRTtFQUlJLGN4RHZGUztBSjhuVWY7O0E0RDNpVUU7RUFRTSxtQkRqRnlDO0EzRHduVWpEOztBNERsaVVFO0VBMUZBLFdBQU87QTVEZ29VVDs7QTREOW5VRTtFQUNFLGNBQWM7RUFDZCx1QnhENGlCNkI7RXdEM2lCN0IscUI3Q1BxRDtFNkNRckQsY0FBYztFQUNkLGN4RHpCbUM7QUowcFV2Qzs7QTREL25VSTtFQUNFLG1CeERoQlM7RXdEaUJULGNBQTRDO0E1RGtvVWxEOztBNEQvblVJO0VBRUUsbUJ4RGhDYztFd0RpQ2QsY3hEbkNpQztBSm9xVXZDOztBNERwalVFO0VBbEVBLHlCeEQxQ21CO0V3RDJDbkIsYUFBYTtFQUNiLG1CeERwQ2E7RXdEcUNiLGN4RHpDYTtFd0QwQ2IsaUNBQXlCO0VBQXpCLHlCQUF5QjtBNUQwblUzQjs7QTREeGpVRTtFQTNEQSx5QnhEckRtQjtFd0RzRG5CLGNBQWdDO0E1RHVuVWxDOztBNER6alVFO0VBdkRBLGFBQWE7RUFDYixheERxZ0J3QjtBSittVDFCOztBNERsblVFO0VBQ0UsY0FBYztBNURxblVsQjs7QTZEdnNVRTtFQXpCQSxxQkFBcUI7RUFDckIsZUFBZTtFQUNmLG1CekR1RGtCO0V5RHJEbEIseUJ6RDhDYTtFeUQ3Q2Isc0J6RHlEcUI7RXlEeERyQixtRHpEd0NhO1V5RHhDYiwyQ3pEd0NhO0V5RHRDYixjQUFjO0E3RGt1VWhCOztBNkQ3c1VFO0VBakJBLHFEekR3bUI4QztFeUR4bUI5Qyw2Q3pEd21COEM7RXlEeG1COUMscUN6RHdtQjhDO0V5RHhtQjlDLHdFekR3bUI4QztBSjBuVGhEOztBNkRodVVFO0VBRUUsc0R6RHNCbUM7VXlEdEJuQyw4Q3pEc0JtQztBSjRzVXZDOztBNkQvdFVFO0VBQ0Usd0JBQWdCO1VBQWhCLGdCQUFnQjtBN0RrdVVwQjs7QThEbnZVRTtFQUNFLGUxRHNuQnFCO0UwRHJuQnJCLG1CMUR5Q1c7RTBEeENYLGMxRDRDVztBSjBzVWY7O0FZbG5VRTtFQUVFLGNBQWM7RUFDZCxZQUFZO0Fab25VaEI7O0FZNW1VRTtFQUNFLFdBQVc7QVorbVVmOztBOERsd1VFO0VBZUksb0IxRDRtQnlCO0Uw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a0NDa0JjO1VEbEJkLDBCQ2tCYztFRGpCZCwwQ0NpQ2U7VURqQ2Ysa0NDaUNlO0VDZ0JiLGdDQUZ5QjtVQUV6Qix3QkFGeUI7RUN2QnZCLHVEQUF1QztFQUF2QywrQ0FBdUM7RUFBdkMsdUNBQXVDO0VBQXZDLDBEQUF1QztFQUd6QyxtQ0FBMkI7VUFBM0IsMkJBQTJCO0F2RW92Vi9COztBbUVsdlZJO0VHb0JBLG1DQUZ5QjtVQUV6QiwyQkFGeUI7QXRFb3VWN0I7O0FtRWx3Vkk7RUNsQkYsa0NDa0JjO1VEbEJkLDBCQ2tCYztFRGpCZCwwQ0NpQ2U7VURqQ2Ysa0NDaUNlO0VDZ0JiLGdDQUZ5QjtVQUV6Qix3QkFGeUI7RUN2QnZCLHVEQUF1QztFQUF2QywrQ0FBdUM7RUFBdkMsdUNBQXVDO0VBQXZDLDBEQUF1QztFQUd6QyxtQ0FBMkI7VUFBM0IsMkJBQTJCO0F2RWd3Vi9COztBbUU5dlZJO0VHb0JBLG9DQUZ5QjtVQUV6Qiw0QkFGeUI7QXRFZ3ZWN0I7O0FtRTl3Vkk7RUNsQkYsa0NDa0JjO1VEbEJkLDBCQ2tCYztFRGpCZCwwQ0NpQ2U7VURqQ2Ysa0NDaUNlO0VDZ0JiLGdDQUZ5QjtVQUV6Qix3QkFGeUI7RUN2QnZCLHVEQUF1QztFQUF2QywrQ0FBdUM7RUFBdkMsdUNBQXVDO0VBQXZDLDBEQUF1QztFQUd6QyxtQ0FBMkI7VUFBM0IsMkJBQTJCO0F2RTR3Vi9COztBbUUxd1ZJO0VHb0JBLG9DQUZ5QjtVQUV6Qiw0QkFGeUI7QXRFNHZWN0I7O0FtRTF4Vkk7RUNsQkYsa0NDa0JjO1VEbEJkLDBCQ2tCYztFRGpCZCwwQ0NpQ2U7VURqQ2Ysa0NDaUNlO0VDZ0JiLFVGaENrQztFSUFsQyxvQ0FBNEI7RUFBNUIsNEJBQTRCO0F4RWl5VmhDOztBbUVyeFZJO0VHb0JBLFVGaENxQztBcEVxeVZ6Qzs7QW1FcnlWSTtFQ2xCRixrQ0NrQmM7VURsQmQsMEJDa0JjO0VEakJkLDBDQ2lDZTtVRGpDZixrQ0NpQ2U7RUNnQmIsVUYvQmtDO0VJRGxDLG9DQUE0QjtFQUE1Qiw0QkFBNEI7QXhFNHlWaEM7O0FtRWh5Vkk7RUdvQkEsVUYvQnFDO0FwRSt5VnpDOztBbUVoelZJO0VDbEJGLGtDQ2tCYztVRGxCZCwwQkNrQmM7RURqQmQsMENDaUNlO1VEakNmLGtDQ2lDZTtFQ2dCYixzREdyQ21DO1VIcUNuQyw4Q0dyQ21DO0VIcUNuQyw2QkY1Qm1EO1VFNEJuRCxxQkY1Qm1EO0VNR2pELHVEQUF1QztFQUF2QywrQ0FBdUM7RUFBdkMsdUNBQXVDO0VBQXZDLDBEQUF1QztFQUN2QyxVQUEyQjtBMUVpelZqQzs7QW1FN3lWSTtFR29CQSxtREdWNEM7VUhVNUMsMkNHVjRDO0VDSjFDLFVBQTJCO0ExRTR5VmpDOztBbUU5elZJO0VDbEJGLGtDQ2tCYztVRGxCZCwwQkNrQmM7RURqQmQsMENDaUNlO1VEakNmLGtDQ2lDZTtFQ2dCYixzREdwQ3FDO1VIb0NyQyw4Q0dwQ3FDO0VIb0NyQywrQkYzQnFEO1VFMkJyRCx1QkYzQnFEO0VNRW5ELHVEQUF1QztFQUF2QywrQ0FBdUM7RUFBdkMsdUNBQXVDO0VBQXZDLDBEQUF1QztFQUN2QyxVQUEyQjtBMUUrelZqQzs7QW1FM3pWSTtFR29CQSxtREdWNEM7VUhVNUMsMkNHVjRDO0VDSjFDLFVBQTJCO0ExRTB6VmpDOztBbUU1MFZJO0VDbEJGLGtDQ2tCYztVRGxCZCwwQkNrQmM7RURqQmQsMENDaUNlO1VEakNmLGtDQ2lDZTtFQ2dCYixxREduQ2lDO1VIbUNqQyw2Q0duQ2lDO0VIbUNqQyxnQ0YxQnNEO1VFMEJ0RCx3QkYxQnNEO0VNQ3BELHVEQUF1QztFQUF2QywrQ0FBdUM7RUFBdkMsdUNBQXVDO0VBQXZDLDBEQUF1QztFQUN2QyxVQUEyQjtBMUU2MFZqQzs7QW1FejBWSTtFR29CQSxtREdWNEM7VUhVNUMsMkNHVjRDO0VDSjFDLFVBQTJCO0ExRXcwVmpDOztBbUUxMVZJO0VDbEJGLGtDQ2tCYztVRGxCZCwwQkNrQmM7RURqQmQsMENDaUNlO1VEakNmLGtDQ2lDZTtFQ2dCYixxREdsQytCO1VIa0MvQiw2Q0dsQytCO0VIa0MvQiw4QkZ6Qm9EO1VFeUJwRCxzQkZ6Qm9EO0VNQWxELHVEQUF1QztFQUF2QywrQ0FBdUM7RUFBdkMsdUNBQXVDO0VBQXZDLDBEQUF1QztFQUN2QyxVQUEyQjtBMUUyMVZqQzs7QW1FdjFWSTtFR29CQSxtREdWNEM7VUhVNUMsMkNHVjRDO0VDSjFDLFVBQTJCO0ExRXMxVmpDOztBbUV4MlZJO0VDbEJGLGtDQ2tCYztVRGxCZCwwQkNrQmM7RURqQmQsMENDaUNlO1VEakNmLGtDQ2lDZTtFQ2dCYixzREdyQ21DO1VIcUNuQyw4Q0dyQ21DO0VIcUNuQyxnQ0dDZTtVSERmLHdCR0NlO0VDMUJiLHVEQUF1QztFQUF2QywrQ0FBdUM7RUFBdkMsdUNBQXVDO0VBQXZDLDBEQUF1QztFQUN2QyxVQUEyQjtBMUV5MlZqQzs7QW1FcjJWSTtFR29CQSxtREdWNEM7VUhVNUMsMkNHVjRDO0VDSjFDLFVBQTJCO0ExRW8yVmpDOztBbUV0M1ZJO0VDbEJGLGtDQ2tCYztVRGxCZCwwQkNrQmM7RURqQmQsMENDaUNlO1VEakNmLGtDQ2lDZTtFQ2dCYixzREdwQ3FDO1VIb0NyQyw4Q0dwQ3FDO0VIb0NyQyxnQ0dDZTtVSERmLHdCR0NlO0VDMUJiLHVEQUF1QztFQUF2QywrQ0FBdUM7RUFBdkMsdUNBQXVDO0VBQXZDLDBEQUF1QztFQUN2QyxVQUEyQjtBMUV1M1ZqQzs7QW1FbjNWSTtFR29CQSxtREdWNEM7VUhVNUMsMkNHVjRDO0VDSjFDLFVBQTJCO0ExRWszVmpDOztBbUVwNFZJO0VDbEJGLGtDQ2tCYztVRGxCZCwwQkNrQmM7RURqQmQsMENDaUNlO1VEakNmLGtDQ2lDZTtFQ2dCYixtREdSOEM7VUhROUMsMkNHUjhDO0VIUTlDLDZCRnRCbUQ7VUVzQm5ELHFCRnRCbUQ7RU1IakQsdURBQXVDO0VBQXZDLCtDQUF1QztFQUF2Qyx1Q0FBdUM7RUFBdkMsMERBQXVDO0VBQ3ZDLFVBQThCO0ExRXE0VnBDOztBbUVqNFZJO0VHb0JBLHNER3JDbUM7VUhxQ25DLDhDR3JDbUM7RUN1QmpDLFVBQThCO0ExRWc0VnBDOztBbUVsNVZJO0VDbEJGLGtDQ2tCYztVRGxCZCwwQkNrQmM7RURqQmQsMENDaUNlO1VEakNmLGtDQ2lDZTtFQ2dCYixtREdSOEM7VUhROUMsMkNHUjhDO0VIUTlDLCtCRnJCcUQ7VUVxQnJELHVCRnJCcUQ7RU1KbkQsdURBQXVDO0VBQXZDLCtDQUF1QztFQUF2Qyx1Q0FBdUM7RUFBdkMsMERBQXVDO0VBQ3ZDLFVBQThCO0ExRW01VnBDOztBbUUvNFZJO0VHb0JBLHNER3BDcUM7VUhvQ3JDLDhDR3BDcUM7RUNzQm5DLFVBQThCO0ExRTg0VnBDOztBbUVoNlZJO0VDbEJGLGtDQ2tCYztVRGxCZCwwQkNrQmM7RURqQmQsMENDaUNlO1VEakNmLGtDQ2lDZTtFQ2dCYixtREdSOEM7VUhROUMsMkNHUjhDO0VIUTlDLGdDRnBCc0Q7VUVvQnRELHdCRnBCc0Q7RU1McEQsdURBQXVDO0VBQXZDLCtDQUF1QztFQUF2Qyx1Q0FBdUM7RUFBdkMsMERBQXVDO0VBQ3ZDLFVBQThCO0ExRWk2VnBDOztBbUU3NVZJO0VHb0JBLHFER25DaUM7VUhtQ2pDLDZDR25DaUM7RUNxQi9CLFVBQThCO0ExRTQ1VnBDOztBbUU5NlZJO0VDbEJGLGtDQ2tCYztVRGxCZCwwQkNrQmM7RURqQmQsMENDaUNlO1VEakNmLGtDQ2lDZTtFQ2dCYixtREdSOEM7VUhROUMsMkNHUjhDO0VIUTlDLDhCRm5Cb0Q7VUVtQnBELHNCRm5Cb0Q7RU1ObEQsdURBQXVDO0VBQXZDLCtDQUF1QztFQUF2Qyx1Q0FBdUM7RUFBdkMsMERBQXVDO0VBQ3ZDLFVBQThCO0ExRSs2VnBDOztBbUUzNlZJO0VHb0JBLHFER2xDK0I7VUhrQy9CLDZDR2xDK0I7RUNvQjdCLFVBQThCO0ExRTA2VnBDOztBbUU1N1ZJO0VDbEJGLGtDQ2tCYztVRGxCZCwwQkNrQmM7RURqQmQsMENDaUNlO1VEakNmLGtDQ2lDZTtFQ2dCYixtREdSOEM7VUhROUMsMkNHUjhDO0VIUTlDLGdDR0NlO1VIRGYsd0JHQ2U7RUMxQmIsdURBQXVDO0VBQXZDLCtDQUF1QztFQUF2Qyx1Q0FBdUM7RUFBdkMsMERBQXVDO0VBQ3ZDLFVBQThCO0ExRTY3VnBDOztBbUV6N1ZJO0VHb0JBLHNER3JDbUM7VUhxQ25DLDhDR3JDbUM7RUN1QmpDLFVBQThCO0ExRXc3VnBDOztBbUUxOFZJO0VDbEJGLGtDQ2tCYztVRGxCZCwwQkNrQmM7RURqQmQsMENDaUNlO1VEakNmLGtDQ2lDZTtFQ2dCYixtREdSOEM7VUhROUMsMkNHUjhDO0VIUTlDLGdDR0NlO1VIRGYsd0JHQ2U7RUMxQmIsdURBQXVDO0VBQXZDLCtDQUF1QztFQUF2Qyx1Q0FBdUM7RUFBdkMsMERBQXVDO0VBQ3ZDLFVBQThCO0ExRTI4VnBDOztBbUV2OFZJO0VHb0JBLHNER3BDcUM7VUhvQ3JDLDhDR3BDcUM7RUNzQm5DLFVBQThCO0ExRXM4VnBDOztBbUV4OVZJO0VDbEJGLGtDQ2tCYztVRGxCZCwwQkNrQmM7RURqQmQsMENDaUNlO1VEakNmLGtDQ2lDZTtFQ2dCYiw2QkFGeUI7VUFFekIscUJBRnlCO0VLM0J2Qix1REFBdUM7RUFBdkMsK0NBQXVDO0VBQXZDLHVDQUF1QztFQUF2QywwREFBdUM7RUFDdkMsVUFBMkI7QTNFNDlWakM7O0FtRXA5Vkk7RUdvQkEsMkJBRnlCO1VBRXpCLG1CQUZ5QjtFS2hCdkIsVUFBMkI7QTNFdTlWakM7O0FtRXIrVkk7RUNsQkYsa0NDa0JjO1VEbEJkLDBCQ2tCYztFRGpCZCwwQ0NpQ2U7VURqQ2Ysa0NDaUNlO0VDZ0JiLDZCQUZ5QjtVQUV6QixxQkFGeUI7RUszQnZCLHVEQUF1QztFQUF2QywrQ0FBdUM7RUFBdkMsdUNBQXVDO0VBQXZDLDBEQUF1QztFQUN2QyxVQUEyQjtBM0V5K1ZqQzs7QW1FaitWSTtFR29CQSwyQkFGeUI7VUFFekIsbUJBRnlCO0VLaEJ2QixVQUEyQjtBM0VvK1ZqQzs7QW1FbC9WSTtFQ2xCRixrQ0NrQmM7VURsQmQsMEJDa0JjO0VEakJkLDBDQ2lDZTtVRGpDZixrQ0NpQ2U7RUNnQmIsMkJBRnlCO1VBRXpCLG1CQUZ5QjtFSzNCdkIsdURBQXVDO0VBQXZDLCtDQUF1QztFQUF2Qyx1Q0FBdUM7RUFBdkMsMERBQXVDO0VBQ3ZDLFVBQThCO0EzRXMvVnBDOztBbUU5K1ZJO0VHb0JBLDZCQUZ5QjtVQUV6QixxQkFGeUI7RUtoQnZCLFVBQThCO0EzRWkvVnBDOztBbUUvL1ZJO0VDbEJGLGtDQ2tCYztVRGxCZCwwQkNrQmM7RURqQmQsMENDaUNlO1VEakNmLGtDQ2lDZTtFQ2dCYiwyQkFGeUI7VUFFekIsbUJBRnlCO0VLM0J2Qix1REFBdUM7RUFBdkMsK0NBQXVDO0VBQXZDLHVDQUF1QztFQUF2QywwREFBdUM7RUFDdkMsVUFBOEI7QTNFbWdXcEM7O0FtRTMvVkk7RUdvQkEsNkJBRnlCO1VBRXpCLHFCQUZ5QjtFS2hCdkIsVUFBOEI7QTNFOC9WcEM7O0FtRTVnV0k7RUNsQkYsa0NDa0JjO1VEbEJkLDBCQ2tCYztFRGpCZCwwQ0NpQ2U7VURqQ2Ysa0NDaUNlO0VDZ0JiLG9DQUZ5QjtVQUV6Qiw0QkFGeUI7RU0zQnZCLHVEQUF1QztFQUF2QywrQ0FBdUM7RUFBdkMsdUNBQXVDO0VBQXZDLDBEQUF1QztFQUN2QyxVQUEyQjtBNUVnaFdqQzs7QW1FeGdXSTtFR29CQSw0QkFGeUI7VUFFekIsb0JBRnlCO0VNaEJ2QixVQUEyQjtBNUUyZ1dqQzs7QW1FemhXSTtFQ2xCRixrQ0NrQmM7VURsQmQsMEJDa0JjO0VEakJkLDBDQ2lDZTtVRGpDZixrQ0NpQ2U7RUNnQmIsNEJBRnlCO1VBRXpCLG9CQUZ5QjtFTTNCdkIsdURBQXVDO0VBQXZDLCtDQUF1QztFQUF2Qyx1Q0FBdUM7RUFBdkMsMERBQXVDO0VBQ3ZDLFVBQThCO0E1RTZoV3BDOztBbUVyaFdJO0VHb0JBLG1DQUZ5QjtVQUV6QiwyQkFGeUI7RU1oQnZCLFVBQThCO0E1RXdoV3BDOztBbUV0aVdJO0VDbEJGLGtDQ2tCYztVRGxCZCwwQkNrQmM7RURqQmQsMENDaUNlO1VEakNmLGtDQ2lDZTtFQ2dCYixtQ0FGeUI7VUFFekIsMkJBRnlCO0VNM0J2Qix1REFBdUM7RUFBdkMsK0NBQXVDO0VBQXZDLHVDQUF1QztFQUF2QywwREFBdUM7RUFDdkMsVUFBMkI7QTVFMGlXakM7O0FtRWxpV0k7RUdvQkEsNEJBRnlCO1VBRXpCLG9CQUZ5QjtFTWhCdkIsVUFBMkI7QTVFcWlXakM7O0FtRW5qV0k7RUNsQkYsa0NDa0JjO1VEbEJkLDBCQ2tCYztFRGpCZCwwQ0NpQ2U7VURqQ2Ysa0NDaUNlO0VDZ0JiLDRCQUZ5QjtVQUV6QixvQkFGeUI7RU0zQnZCLHVEQUF1QztFQUF2QywrQ0FBdUM7RUFBdkMsdUNBQXVDO0VBQXZDLDBEQUF1QztFQUN2QyxVQUE4QjtBNUV1aldwQzs7QW1FL2lXSTtFR29CQSxvQ0FGeUI7VUFFekIsNEJBRnlCO0VNaEJ2QixVQUE4QjtBNUVraldwQzs7QW9FOWhXTTtFQUFZLDZDQUFzQztVQUF0QyxxQ0FBc0M7QXBFa2lXeEQ7O0FvRWxpV007RUFBWSw2Q0FBc0M7VUFBdEMscUNBQXNDO0FwRXNpV3hEOztBb0VoaVdNO0VBQVkscURBQTZDO1VBQTdDLDZDQUE2QztBcEVvaVcvRDs7QW9FcGlXTTtFQUFZLG1EQUE2QztVQUE3QywyQ0FBNkM7QXBFd2lXL0Q7O0FvRXhpV007RUFBWSxzREFBNkM7VUFBN0MsOENBQTZDO0FwRTRpVy9EOztBb0U1aVdNO0VBQVksdURBQTZDO1VBQTdDLCtDQUE2QztBcEVnalcvRDs7QW9FaGpXTTtFQUFZLDBEQUE2QztVQUE3QyxrREFBNkM7QXBFb2pXL0Q7O0FvRXBqV007RUFBWSxzRkFBNkM7VUFBN0MsOEVBQTZDO0FwRXdqVy9EOztBb0V4aldNO0VBQVksdUZBQTZDO1VBQTdDLCtFQUE2QztBcEU0alcvRDs7QW9FNWpXTTtFQUFZLHNGQUE2QztVQUE3Qyw4RUFBNkM7QXBFZ2tXL0Q7O0FvRTFqV007RUFBa0IsMENBQW1DO1VBQW5DLGtDQUFtQztBcEU4alczRDs7QW9FOWpXTTtFQUFrQiwwQ0FBbUM7VUFBbkMsa0NBQW1DO0FwRWtrVzNEOztBb0UxaldFO0VTdEVBLCtCQUE4QjtVQUE5Qix1QkFBOEI7QTdFb29XaEM7O0FzRS9uV0U7RUFHSTtJQUdJLGlDQUFVO1lBQVYseUJBQVU7RXRFOG5XbEI7RXNFam9XSTtJQUdJLGtDQUFVO1lBQVYsMEJBQVU7RXRFaW9XbEI7QUFDRjs7QXNFeG9XRTtFQUdJO0lBR0ksaUNBQVU7WUFBVix5QkFBVTtFdEU4bldsQjtFc0Vqb1dJO0lBR0ksa0NBQVU7WUFBViwwQkFBVTtFdEVpb1dsQjtBQUNGOztBb0V0a1dFO0VTdkVBLHFDQUE4QjtVQUE5Qiw2QkFBOEI7QTdFaXBXaEM7O0FzRTVvV0U7RUFHSTtJQUdJLGlDQUFVO1lBQVYseUJBQVU7RXRFMm9XbEI7RXNFOW9XSTtJQUdJLDRCQUFVO1lBQVYsb0JBQVU7RXRFOG9XbEI7QUFDRjs7QXNFcnBXRTtFQUdJO0lBR0ksaUNBQVU7WUFBVix5QkFBVTtFdEUyb1dsQjtFc0U5b1dJO0lBR0ksNEJBQVU7WUFBVixvQkFBVTtFdEU4b1dsQjtBQUNGOztBb0VsbFdFO0VTeEVBLHFDQUE4QjtVQUE5Qiw2QkFBOEI7QTdFOHBXaEM7O0FzRXpwV0U7RUFHSTtJQUdJLDRCQUFVO1lBQVYsb0JBQVU7RXRFd3BXbEI7RXNFM3BXSTtJQUdJLGdDQUFVO1lBQVYsd0JBQVU7RXRFMnBXbEI7QUFDRjs7QW9FOWxXRTtFU3pFQSxtQ0FBOEI7VUFBOUIsMkJBQThCO0E3RTJxV2hDOztBc0V0cVdFO0VBR0k7SUFHSSwrQkFBVTtZQUFWLHVCQUFVO0V0RXFxV2xCO0VzRXhxV0k7SUFHSSxnQ0FBVTtZQUFWLHdCQUFVO0V0RXdxV2xCO0VzRTNxV0k7SUFHSSw0QkFBVTtZQUFWLG9CQUFVO0V0RTJxV2xCO0FBQ0Y7O0FzRWxyV0U7RUFHSTtJQUdJLCtCQUFVO1lBQVYsdUJBQVU7RXRFcXFXbEI7RXNFeHFXSTtJQUdJLGdDQUFVO1lBQVYsd0JBQVU7RXRFd3FXbEI7RXNFM3FXSTtJQUdJLDRCQUFVO1lBQVYsb0JBQVU7RXRFMnFXbEI7QUFDRjs7QW9FNW1XRTs7OztFQUlFLGlDQy9EWTtVRCtEWix5QkMvRFk7QXJFOHFXaEI7O0FvRTFtV0U7RUFBWSwyQ0FBbUM7VUFBbkMsbUNBQW1DO0FwRThtV2pEOztBb0VocFdNO0VBc0NZLDRDQUFxQztVQUFyQyxvQ0FBcUM7QXBFOG1XdkQ7O0FvRXBwV007RUFzQ1ksNENBQXFDO1VBQXJDLG9DQUFxQztBcEVrbld2RDs7QW9FbHBXTTtFQXNDWSxvREFBNEM7VUFBNUMsNENBQTRDO0FwRWduVzlEOztBb0V0cFdNO0VBc0NZLGtEQUE0QztVQUE1QywwQ0FBNEM7QXBFb25XOUQ7O0FvRTFwV007RUFzQ1kscURBQTRDO1VBQTVDLDZDQUE0QztBcEV3blc5RDs7QW9FOXBXTTtFQXNDWSxzREFBNEM7VUFBNUMsOENBQTRDO0FwRTRuVzlEOztBb0VscVdNO0VBc0NZLHlEQUE0QztVQUE1QyxpREFBNEM7QXBFZ29XOUQ7O0FvRXRxV007RUFzQ1kscUZBQTRDO1VBQTVDLDZFQUE0QztBcEVvb1c5RDs7QW9FMXFXTTtFQXNDWSxzRkFBNEM7VUFBNUMsOEVBQTRDO0FwRXdvVzlEOztBb0U5cVdNO0VBc0NZLHFGQUE0QztVQUE1Qyw2RUFBNEM7QXBFNG9XOUQ7O0FvRTVxV007RUFzQ2tCLHlDQUFrQztVQUFsQyxpQ0FBa0M7QXBFMG9XMUQ7O0FvRWhyV007RUFzQ2tCLHlDQUFrQztVQUFsQyxpQ0FBa0M7QXBFOG9XMUQ7O0E4RXZ2V0E7O0M5RTJ2V0M7QStFenZXRDtFREVDLFlBQVk7RUFDWixZQUFZO0VBQ1oscUJBQXFCO0VBQ3JCLHFHQUFxRztBOUUwdld0Rzs7QStFM3ZXQTtFRElDLFdBQVc7RUFDWCxZQUFZO0VBQ1oscUJBQXFCO0VBQ3JCLHNHQUFzRztBOUUydld2Rzs7QStFOXZXQTtFRE1DLFdBQVc7RUFDWCxZQUFZO0VBQ1oscUJBQXFCO0VBQ3JCLHNHQUFzRztBOUU0dld2Rzs7QStFandXQTtFRFFDLFdBQVc7RUFDWCxZQUFZO0VBQ1oscUJBQXFCO0VBQ3JCLHNHQUFzRztBOUU2dld2Rzs7QStFcHdXQTtFRFVDLFdBQVc7RUFDWCxZQUFZO0VBQ1oscUJBQXFCO0VBQ3JCLHNHQUFzRztBOUU4dld2Rzs7QStFdndXQTtFRFlDLFlBQVk7RUFDWixZQUFZO0VBQ1oscUJBQXFCO0VBQ3JCLHNHQUFzRztBOUUrdld2Rzs7QStFMXdXQTtFRGNDLFlBQVk7RUFDWixZQUFZO0VBQ1oscUJBQXFCO0VBQ3JCLHNHQUFzRztBOUVnd1d2Rzs7QStFN3dXQTtFRGdCQyxZQUFZO0VBQ1osWUFBWTtFQUNaLHFCQUFxQjtFQUNyQixzR0FBc0c7QTlFaXdXdkc7O0ErRXB4V0E7RURnQkMsWUFBWTtFQUNaLFlBQVk7RUFDWixxQkFBcUI7RUFDckIsc0dBQXNHO0E5RXd3V3ZHOztBK0VueFdBO0VEY0MsV0FBVztFQUNYLFlBQVk7RUFDWixxQkFBcUI7RUFDckIsc0dBQXNHO0E5RXl3V3ZHOztBK0V0eFdBO0VEZ0JDLFlBQVk7RUFDWixZQUFZO0VBQ1oscUJBQXFCO0VBQ3JCLHNHQUFzRztBOUUwd1d2Rzs7QStFenhXQTtFRGtCQyxXQUFXO0VBQ1gsWUFBWTtFQUNaLHFCQUFxQjtFQUNyQix1R0FBdUc7QTlFMndXeEc7O0ErRTV4V0E7RURvQkMsV0FBVztFQUNYLFlBQVk7RUFDWixxQkFBcUI7RUFDckIsdUdBQXVHO0E5RTR3V3hHOztBK0UveFdBO0VEc0JDLFdBQVc7RUFDWCxZQUFZO0VBQ1oscUJBQXFCO0VBQ3JCLHVHQUF1RztBOUU2d1d4Rzs7QStFbHlXQTtFRHdCQyxZQUFZO0VBQ1osWUFBWTtFQUNaLHFCQUFxQjtFQUNyQix1R0FBdUc7QTlFOHdXeEc7O0ErRXJ5V0E7RUQwQkMsWUFBWTtFQUNaLFlBQVk7RUFDWixxQkFBcUI7RUFDckIsdUdBQXVHO0E5RSt3V3hHOztBK0V4eVdBO0VENEJDLFdBQVc7RUFDWCxZQUFZO0VBQ1oscUJBQXFCO0VBQ3JCLHVHQUF1RztBOUVneFd4Rzs7QStFM3lXQTtFRDhCQyxXQUFXO0VBQ1gsWUFBWTtFQUNaLHFCQUFxQjtFQUNyQix1R0FBdUc7QTlFaXhXeEc7O0ErRTl5V0E7RURnQ0MsV0FBVztFQUNYLFlBQVk7RUFDWixxQkFBcUI7RUFDckIsdUdBQXVHO0E5RWt4V3hHOztBK0VqeldBO0VEa0NDLFlBQVk7RUFDWixZQUFZO0VBQ1oscUJBQXFCO0VBQ3JCLHVHQUF1RztBOUVteFd4Rzs7QStFcHpXQTtFRG9DQyxZQUFZO0VBQ1osWUFBWTtFQUNaLHFCQUFxQjtFQUNyQix1R0FBdUc7QTlFb3hXeEc7O0Er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aVhyQzs7QW1GOXFYQTtFQUNJLGNBQWE7QW5GaXJYakI7O0FtRjlxWEE7RUFDSSxjQUFhO0FuRmlyWGpCOztBbUY5cVhBO0VBQ0ksVUFBVTtFQUNWLGVBQWU7QW5GaXJYbkI7O0FtRjlxWEE7RUFDSSxjQUFjO0FuRmlyWGxCOztBbUY5cVhBO0VBQ0kseUJBQXdCO0FuRmlyWDVCOztBbUY5cVhBO0VBQ0ksY0FBYTtBbkZpclhqQjs7QW1GOXFYQTtFQUNJLGNBQWM7RUFDZCxtQkFBbUI7QW5GaXJYdkI7O0FtRjlxWEE7RUFDSSxjQUFjO0FuRmlyWGxCOztBbUY5cVhBO0VBQ0ksY0FBYztBbkZpclhsQjs7QW1GOXFYQTtFQUNJLGNBQWM7QW5GaXJYbEI7O0FtRjlxWEE7RUFDSSxjQUFjO0FuRmlyWGxCOztBb0Y1dFhBO0VBQ0k7SUFDSSxnQ2hGd0VZO0lnRnZFWixtQnJFcUZpRDtFZjBvWHZEO0VvRmp1WEU7SUFJUSxhQUFZO0lBQ1osV0FBVTtJQUNWLG1CckVpRjZDO0lxRWhGN0MscUJyRWdGNkM7RWZncFh2RDtFb0Z2dVhFO0lBV1ksbUJoRjhESTtFSmlxWGxCO0VvRjF1WEU7SUFjWSxjQUFhO0VwRit0WDNCO0VvRjd1WEU7SUFrQlEsY0FBYTtJQUNiLGlCQUFnQjtJQUNoQiwwQnJFbUU2QztFZjJwWHZEO0VvRjN0WEU7SUFDSSxXQUFVO0lBQ1YscUJBQW9CO0lBQ3BCLDhCaEYrQ1k7SWdGOUNaLFlBQVc7SUFDWCxrQkFBaUI7SUFDakIsZUFBYztFcEY2dFhwQjtFb0ZudVhFO0lBU1EsY2hGNkNPO0VKZ3JYakI7QUFDRjs7QXlEcnNYQSwwQ0FBQTtBNEIxREE7RUFDSSxzQnRFdUZxRDtFc0V0RnJELHlCdEVzRnFEO0FmNnFYekQ7O0FxRnJ3WEE7RUFLWSxjakZ5RU87RWlGeEVQLGV0RWtGNkM7QWZrclh6RDs7QXFGMXdYQTtFQVFvQixjakZ3RUw7QUo4clhmOztBc0Y5d1hBO0VBQ007SUFPRTs7VXRGNHdYRTtFQUNSO0VzRnB4WEk7SUFFTSxnQkFBZ0I7SUFDaEIsZ0NsRndFUztJa0Z2RVQsaUJBQWdC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bUVxRDtFa0ZsRXJELHdCbEZrRXFEO0VrRmpFckQscUJBQW9CO0FqR3VuWnhCOztBTTErWU07RTJGaEpOO0lBS1Esa0JBQWlCO0lBQ2pCLHlCbEY4RGlEO0VmNGpadkQ7QUFDRjs7QU10L1lNO0UyRjNJTjtJQVNRLFlBQVc7RWpHNm5aakI7QUFDRjs7QWlHdm9aQTtFQWFRLDhCbEZ1RGlEO0VrRnREakQsdUJsRnNEaUQ7RWtGckRqRCxjQUFjO0VBQ2QsZUFBYztFQUNkLGtCQUFrQjtFQUNsQixtQkFBa0I7QWpHOG5aMUI7O0FpR2hwWkE7RUFvQlksbUI3RnVDTztFNkZ0Q1AsYzdGMkNHO0FKcWxaZjs7QWlHcnBaQTtFQXdCWSxtQkFBa0I7RUFDbEIsYzdGdUNHO0FKMGxaZjs7QWlHMXBaQTtFQTRCWSxtQjdGK0JPO0U2RjlCUCxjN0ZtQ0c7QUorbFpmOztBa0duclpBO0VBQ0ksc0JuRnVGcUQ7RW1GdEZyRCx5Qm5Gc0ZxRDtBZmdtWnpEOztBa0duclpBO0VBQ0ksa0JBQWtCO0FsR3NyWnRCOztBa0d2clpBO0VBSVEsY0FBYztFQUNkLHFCQUFxQjtFQUNyQixjOUZxRU87QUprblpmOztBa0c3clpBO0VBU1ksY0FBYztFQUNkLG9CQUFvQjtFQUNwQixzQm5Gd0U2QztFbUZ2RTdDLHFCbkZ1RTZDO0FmaW5aekQ7O0FrR3BzWkE7RUFnQlksYzlGeURPO0U4RnhEUCxxQm5Ga0U2QztBZnNuWnpEOztBTTFpWk07RTRGeklOO0lBRVEsbUJuRjJEaUQ7SW1GMURqRCxrQkFBa0I7SUFDbEIsZ0M5RjJDWTtJOEYxQ1osZ0JBQWdCO0VsR3NyWnRCO0VrRzNyWkY7SUFRWSxhQUFhO0VsR3NyWnZCO0VrRzlyWkY7SUFZWSxlQUFlO0VsR3FyWnpCO0FBQ0Y7O0FNempaTTtFNEZ4SE47SUFFUSxtQkFBbUI7RWxHb3JaekI7QUFDRjs7QWtHanJaQTtFQUNJLGdCQUFnQjtFQUNoQixpQkFBaUI7RUFFakI7O01sR29yWkU7RWtHaHJaRix1Qm5GOEJxRDtBZm9wWnpEOztBa0cxclpBO0VBZ0JRLGVBQWU7QWxHOHFadkI7O0FNNWtaTTtFNEZsSE47SUFZWSxxQm5GK0JDO0ltRjlCRCxnQzlGV1E7RUo0cVpsQjtBQUNGOztBa0dyc1pBO0VBbUJZLDBCQUEwQjtBbEdzclp0Qzs7QWtHanJaQTtFQUNJLGlCQUFpQjtFQUNqQixjOUZJVztFOEZIWCxxQkFBcUI7RUFDckIsb0JBQW9CO0VBQ3BCLGdCQUFnQjtBbEdvclpwQjs7QWtHanJaQTtFQUNJLCtCQUErQjtFQUMvQixjOUZKVztBSndyWmY7O0FrR2pyWkE7RUFDSSwyQkFBb0I7RUFBcEIsMkJBQW9CO0VBQXBCLG9CQUFvQjtFQUNwQixnQkFBZ0I7RUFDaEIsbUJBQW1CO0VBQ25CLDBCQUEwQjtBbEdvclo5Qjs7QWtHanJaQTtFQUNJLGVBQWU7RUFDZixZQUFZO0VBQ1osZ0JBQWdCO0VBQ2hCLGFBQWE7RUFDYixvQkFBYTtFQUFiLG9CQUFhO0VBQWIsYUFBYTtFQUNiLDhCQUFtQjtFQUFuQiw2QkFBbUI7TUFBbkIsdUJBQW1CO1VBQW5CLG1CQUFtQjtFQUNuQix5QkFBOEI7TUFBOUIsc0JBQThCO1VBQTlCLDhCQUE4QjtFQUM5QixnQkFBZ0I7RUFDaEIsV0FBVztFQUNYLGNBQWM7RUFDZCw2QkFBNkI7QWxHb3JaakM7O0FrR2pyWkE7RUFDSSx1QkFBdUI7RUFDdkIsYUFBYTtFQUNiLGdCQUFnQjtBbEdvclpwQjs7QWtHanJaQTtFQUNJLGtCQUFrQjtBbEdvclp0Qjs7QWtHanJaQTtFQUNJLGtDQUFrQztFQUNsQyxnQkFBZ0I7RUFDaEIsZ0JBQWdCO0VBQ2hCLGlCQUFpQjtFQUNqQixXQUFXO0FsR29yWmY7O0FrR2pyWkE7RUFDSSxnQkFBZ0I7QWxHb3JacEI7O0FrR2pyWkE7RUFDSSxhQUFhO0FsR29yWmpCOztBTXhwWk07RTZGL0pOO0lsRmNFLGdCQ2VxRDtJQStCckQsV1B3RHlEO0lLOUZ2RCxnQkR1RVM7SUN0RVQsZURzRVM7SW9GMUZMLDZCQUE0QjtFbkc2elpsQztFa0I3dlpFO0lBQ0UsWVBpRHNEO0VYOHNaMUQ7QUFDRjs7QW1HN3paQTtFQUNJLGtCQUFrQjtFQUNsQixnQkFBZ0I7QW5HZzBacEI7O0FNcnFaTTtFNkY3Sk47SUFJUyxhQUFZO0VuR20wWm5CO0FBQ0Y7O0FNaHJaTTtFNkZ4Sk47SWxGT0UsZ0JDZXFEO0lBK0JyRCxXUHdEeUQ7SUs5RnZELGdCRHVFUztJQ3RFVCxlRHNFUztFZjB2Wlg7RWtCcHhaRTtJQUNFLFlQaURzRDtFWHF1WjFEO0FBQ0Y7O0FtR3gwWkE7RUFFUSxpQkFBZ0I7QW5HMDBaeEI7O0FtRzUwWkE7RUFLUSxxQkFBb0I7QW5HMjBaNUI7O0FtR3YwWkE7RUFDSSxlQUFlO0VBQ2YsaUJBQWlCO0FuRzAwWnJCOztBTXBzWk07RTZGbklOO0lBRVEscUJwRnFEaUQ7SW9GcERqRCxpQnBGb0RpRDtFZnN4WnZEO0FBQ0Y7O0FtR3YwWkE7RUFDSSxjL0Z1Q1c7QUpteVpmOztBTS9zWk07RTZGeEhOO0lBRVEsMEJBQXlCO0lBQ3pCLGtCQUFpQjtFbkcwMFp2QjtFbUc3MFpGO0lBS1ksZ0JBQWU7SUFDZixrQkFBaUI7SUFDakIsWUFBVztFbkcyMFpyQjtFbUdsMVpGO0lBV1ksa0JBQWlCO0VuRzAwWjNCO0FBQ0Y7O0FtR3QwWkE7RUFDSSxrQkFBaUI7QW5HeTBackI7O0FtRzEwWkE7RUFHUSx5QkFBd0I7RUFDeEIsZ0JBQWdCO0VBQ2hCLGlCQUFpQjtBbkcyMFp6Qjs7QW1HdjBaQTtFQUNJLGtCQUFpQjtBbkcwMFpyQjs7QW1HdjBaQTtFQUNJLGtCQUFpQjtBbkcwMFpyQjs7QW9HcDVaQTtFQUNJLG1CckZ1RnFEO0FmZzBaekQ7O0FvR3A1WkE7RUFDSSxjQUFjO0VBQ2QsZ0JBQWdCO0FwR3U1WnBCOztBb0dwNVpBO0VBQ0ksZ0NoR2dFZ0I7RWdHL0RoQix5QnJGNkVxRDtFcUY1RXJELG1CckY0RXFEO0FmMjBaekQ7O0FvRzE1WkE7RUFNUSxjaEdpRU87QUp1MVpmOztBb0c5NVpBO0VBVVEsZUFBYztBcEd3NVp0Qjs7QU12d1pNO0U4RjNKTjtJQWNRLGtCQUFrQjtFcEd5NVp4QjtFb0d2NlpGO0lBaUJZLHlCckY4RDZDO0VmMjFadkQ7QUFDRjs7QW9HMzZaQTtFQXNCUSxzQkFBQTtFQUNBLHlCQUF5QjtBcEd5NVpqQzs7QW9HaDdaQTtFQTJCUSxpQkFBaUI7QXBHeTVaekI7O0FvR3I1WkE7RW5GMUJFLFdDeUIyRDtFQXFCM0QsV1B3RHlEO0VLOUZ2RCx5QkFGcUM7RUFHckMsd0JBSHFDO0FoQmc3WnpDOztBTXJ5Wk07RThGdkhOO0lwRmxCSSx5QkFGcUM7SUFHckMsd0JBSHFDO0VoQnM3WnZDO0FBQ0Y7O0FNNXlaTTtFOEZ2SE47SXBGbEJJLHlCQUZxQztJQUdyQyx3QkFIcUM7RWhCNjdadkM7QUFDRjs7QWtCLzRaSTtFQUNFLFlQaURzRDtBWGkyWjVEOztBTXZ6Wk07RThGdkhOO0luRjFCRSxlQ3lCMkQ7SUFxQjNELFdQd0R5RDtJSzlGdkQseUJBRnFDO0lBR3JDLHdCQUhxQztFaEIwOFp2QztBQUNGOztBTWgwWk07RThGdkhOO0lwRmxCSSx5QkFGcUM7SUFHckMsd0JBSHFDO0VoQmk5WnZDO0FBQ0Y7O0FNdjBaTTtFOEZ2SE47SXBGbEJJLHlCQUZxQztJQUdyQyx3QkFIcUM7RWhCdzladkM7QUFDRjs7QU05MFpNO0VZNUZGO0lBQ0UsWVBpRHNEO0VYNjNaMUQ7QUFDRjs7QW9HbjhaQTtFbkZsQ0UsV0N5QjJEO0VBcUIzRCxXUHdEeUQ7RUs5RnZELHlCQUZxQztFQUdyQyx3QkFIcUM7QWhCcytaekM7O0FNMzFaTTtFOEYvR047SXBGMUJJLHlCQUZxQztJQUdyQyx3QkFIcUM7RWhCNCtadkM7QUFDRjs7QU1sMlpNO0U4Ri9HTjtJcEYxQkkseUJBRnFDO0lBR3JDLHdCQUhxQztFaEJtL1p2QztBQUNGOztBa0JyOFpJO0VBQ0UsWVBpRHNEO0FYdTVaNUQ7O0FNNzJaTTtFOEYvR047SW5GbENFLGVDeUIyRDtJQXFCM0QsV1B3RHlEO0lLOUZ2RCx5QkFGcUM7SUFHckMsd0JBSHFDO0VoQmdnYXZDO0FBQ0Y7O0FNdDNaTTtFOEYvR047SXBGMUJJLHlCQUZxQztJQUdyQyx3QkFIcUM7RWhCdWdhdkM7QUFDRjs7QU03M1pNO0U4Ri9HTjtJcEYxQkkseUJBRnFDO0lBR3JDLHdCQUhxQztFaEI4Z2F2QztBQUNGOztBTXA0Wk07RVk1RkY7SUFDRSxZUGlEc0Q7RVhtN1oxRDtBQUNGOztBb0dqL1pBO0VuRjFDRSxXQ3lCMkQ7RUFxQjNELFdQd0R5RDtFSzlGdkQseUJBRnFDO0VBR3JDLHdCQUhxQztBaEI0aGF6Qzs7QU1qNVpNO0U4RnZHTjtJcEZsQ0kseUJBRnFDO0lBR3JDLHdCQUhxQztFaEJraWF2QztBQUNGOztBTXg1Wk07RThGdkdOO0lwRmxDSSx5QkFGcUM7SUFHckMsd0JBSHFDO0VoQnlpYXZDO0FBQ0Y7O0FrQjMvWkk7RUFDRSxZUGlEc0Q7QVg2OFo1RDs7QU1uNlpNO0U4RnZHTjtJbkYxQ0UsWUN5QjJEO0lBcUIzRCxXUHdEeUQ7SUs5RnZELHlCQUZxQztJQUdyQyx3QkFIcUM7RWhCc2phdkM7QUFDRjs7QU01NlpNO0U4RnZHTjtJcEZsQ0kseUJBRnFDO0lBR3JDLHdCQUhxQztFaEI2amF2QztBQUNGOztBTW43Wk07RThGdkdOO0lwRmxDSSx5QkFGcUM7SUFHckMsd0JBSHFDO0VoQm9rYXZDO0FBQ0Y7O0FNMTdaTTtFWTVGRjtJQUNFLFlQaURzRDtFWHkrWjFEO0FBQ0Y7O0FvRy9oYUE7RW5GbERFLFdDeUIyRDtFQXFCM0QsV1B3RHlEO0VLOUZ2RCx5QkFGcUM7RUFHckMsd0JBSHFDO0FoQmtsYXpDOztBTXY4Wk07RThGL0ZOO0lwRjFDSSx5QkFGcUM7SUFHckMsd0JBSHFDO0VoQndsYXZDO0FBQ0Y7O0FNOThaTTtFOEYvRk47SXBGMUNJLHlCQUZxQztJQUdyQyx3QkFIcUM7RWhCK2xhdkM7QUFDRjs7QWtCamphSTtFQUNFLFlQaURzRDtBWG1nYTVEOztBTXo5Wk07RThGL0ZOO0luRmxERSxnQkN5QjJEO0lBcUIzRCxXUHdEeUQ7SUs5RnZELHlCQUZxQztJQUdyQyx3QkFIcUM7RWhCNG1hdkM7QUFDRjs7QU1sK1pNO0U4Ri9GTjtJcEYxQ0kseUJBRnFDO0lBR3JDLHdCQUhxQztFaEJtbmF2QztBQUNGOztBTXorWk07RThGL0ZOO0lwRjFDSSx5QkFGcUM7SUFHckMsd0JBSHFDO0VoQjBuYXZDO0FBQ0Y7O0FNaC9aTTtFWTVGRjtJQUNFLFlQaURzRDtFWCtoYTFEO0FBQ0Y7O0FvRzdrYUE7RW5GMURFLFdDeUIyRDtFQXFCM0QsV1B3RHlEO0VLOUZ2RCx5QkFGcUM7RUFHckMsd0JBSHFDO0FoQndvYXpDOztBTTcvWk07RThGdkZOO0lwRmxESSx5QkFGcUM7SUFHckMsd0JBSHFDO0VoQjhvYXZDO0FBQ0Y7O0FNcGdhTTtFOEZ2Rk47SXBGbERJLHlCQUZxQztJQUdyQyx3QkFIcUM7RWhCcXBhdkM7QUFDRjs7QWtCdm1hSTtFQUNFLFlQaURzRDtBWHlqYTVEOztBTS9nYU07RThGdkZOO0luRjFERSxVQ3lCMkQ7SUFxQjNELFdQd0R5RDtJSzlGdkQseUJBRnFDO0lBR3JDLHdCQUhxQztFaEJrcWF2QztBQUNGOztBTXhoYU07RThGdkZOO0lwRmxESSx5QkFGcUM7SUFHckMsd0JBSHFDO0VoQnlxYXZDO0FBQ0Y7O0FNL2hhTTtFOEZ2Rk47SXBGbERJLHlCQUZxQztJQUdyQyx3QkFIcUM7RWhCZ3JhdkM7QUFDRjs7QU10aWFNO0VZNUZGO0lBQ0UsWVBpRHNEO0VYcWxhMUQ7QUFDRjs7QXFHM3NhQTtFQUVRLHFCdEZzRmlEO0FmdW5hekQ7O0FxRy9zYUE7RUFLWSxjakcyRUc7RWlHMUVILGlCQUFpQjtFQUNqQiw4QnRGaUY2QztBZjZuYXpEOztBcUdydGFBO0VBWWdCLHlCakc4REk7QUorb2FwQjs7QXFHenRhQTtFQWVvQiw0QkFBNEI7RUFDNUIsbUJBQW1CO0VBQ25CLGVBQWM7QXJHOHNhbEM7O0FxRy90YUE7RUFvQndCLHFCQUFxQjtBckcrc2E3Qzs7QXFHbnVhQTtFQTRCUSw2Q0FBNEM7QXJHMnNhcEQ7O0FxR3ZzYUE7RUFDSSxlQUFlO0VBQ2YsOEJ0RnNEcUQ7QWZvcGF6RDs7QXFHNXNhQTtFQUlRLG1CQUFtQjtBckc0c2EzQjs7QXNHaHZhQTtFQUNJLGVBQWU7RUFDZixPQUFPO0VBQ1AsU0FBUztFQUNULHNCQUFzQjtFQUN0QixrREFBNEM7VUFBNUMsMENBQTRDO0VB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QUFnQjtJQUNoQixXQUFXO0U3R3dzYmpCO0FBQ0Y7O0E4RzVpY0E7RUFDSSx5QjFHOEVlO0FKaStibkI7O0E4RzVpY0E7RWhHNkZFLHNCQ1R1RDtFRDFCckQsa0JBQWtCO0VBQ2xCLGlCQUFpQjtFZ0d4RGpCLGtCQUFrQjtBOUdnamN0Qjs7QVkzNGJFO0VBRUUsY0FBYztFQUNkLFlBQVk7QVo2NGJoQjs7QVlyNGJFO0VBQ0UsV0FBVztBWnc0YmY7O0FNajZiTTtFd0czSk47SUFPWSxnQkFBZ0I7RTlHMGpjMUI7QUFDRjs7QThHdGpjQTtFQUNJLGMxR21FVztFMEdsRVgsZS9Gc0VxRDtBZm0vYnpEOztBOEd0amNBO0VBQ0ksMEJBQXlCO0VBQ3pCLHNDQUE2QjtVQUE3Qiw4QkFBNkI7QTlHeWpjakM7O0ErRTFqY0E7RStCS0ksY0FBYTtBOUd5amNqQjs7QThHdGpjQTtFN0ZoQkUsV0NlcUQ7RUErQnJELFdQd0R5RDtFSzlGdkQseUJBRnFDO0VBR3JDLHdCQUhxQztFOEZZckMsMEJBQTBCO0VBQzFCLGtCQUFrQjtBOUc0amN0Qjs7QU05N2JNO0V3R2pJTjtJOUZSSSx5QkFGcUM7SUFHckMsd0JBSHFDO0VoQitrY3ZDO0FBQ0Y7O0FNcjhiTTtFd0dqSU47STlGUkkseUJBRnFDO0lBR3JDLHdCQUhxQztFaEJzbGN2QztBQUNGOztBa0J4aWNJO0VBQ0UsWVBpRHNEO0FYMC9iNUQ7O0E4RzNrY0E7RTdGdEJFLFdDZXFEO0VBK0JyRCxXUHdEeUQ7RUs5RnZELHlCQUZxQztFQUdyQyx3QkFIcUM7QWhCa21jekM7O0FNdjliTTtFd0czSE47STlGZEkseUJBRnFDO0lBR3JDLHdCQUhxQztFaEJ3bWN2QztBQUNGOztBTTk5Yk07RXdHM0hOO0k5RmRJLHlCQUZxQztJQUdyQyx3QkFIcUM7RWhCK21jdkM7QUFDRjs7QWtCamtjSTtFQUNFLFlQaURzRDtBWG1oYzVEOztBOEdwbWNBO0VBSVEsaUJBQWlCO0E5R29tY3pCOztBOEdobWNBO0VBQ0ksb0JBQWE7RUFBYixvQkFBYTtFQUFiLGFBQWE7RUFDYixXQUFXO0VBQ1gsd0JBQXVCO01BQXZCLHFCQUF1QjtVQUF2Qix1QkFBdUI7QTlHbW1jM0I7O0FNbi9iTTtFd0duSE47SUFNUSx1QkFBMkI7UUFBM0Isb0JBQTJCO1lBQTNCLDJCQUEyQjtFOUdxbWNqQztBQUNGOztBOEdsbWNBO0VBQ0ksY0FBYztBOUdxbWNsQjs7QThHbG1jQTtFN0Y1Q0UsV0NlcUQ7RUErQnJELFdQd0R5RDtFSzlGdkQseUJBRnFDO0VBR3JDLHdCQUhxQztFOEZ3Q3JDLGtCQUFpQjtBOUd3bWNyQjs7QU1yZ2NNO0V3R3JHTjtJOUZwQ0kseUJBRnFDO0lBR3JDLHdCQUhxQztFaEJzcGN2QztBQUNGOztBTTVnY007RXdHckdOO0k5RnBDSSx5QkFGcUM7SUFHckMsd0JBSHFDO0VoQjZwY3ZDO0FBQ0Y7O0FrQi9tY0k7RUFDRSxZUGlEc0Q7QVhpa2M1RDs7QThHdm5jQTtFN0ZqREUsVUN5QjJEO0VBcUIzRCxXUHdEeUQ7RUs5RnZELHlCQUZxQztFQUdyQyx3QkFIcUM7QWhCeXFjekM7O0FNOWhjTTtFd0doR047STlGekNJLHlCQUZxQztJQUdyQyx3QkFIcUM7RWhCK3FjdkM7QUFDRjs7QU1yaWNNO0V3R2hHTjtJOUZ6Q0kseUJBRnFDO0lBR3JDLHdCQUhxQztFaEJzcmN2QztBQUNGOztBa0J4b2NJO0VBQ0UsWVBpRHNEO0FYMGxjNUQ7O0E4R2hwY0E7RUFJUSxpQkFBaUI7RUFDakIsb0JBQW9CO0E5R2dwYzVCOztBOEc1b2NBO0U3RjFERSxXQ2VxRDtFQStCckQsV1B3RHlEO0VLOUZ2RCx5QkFGcUM7RUFHckMsd0JBSHFDO0U4RnNEckMsa0JBQWtCO0VBQ2xCLGtCQUFrQjtBOUdrcGN0Qjs7QU05amNNO0V3R3ZGTjtJOUZsREkseUJBRnFDO0lBR3JDLHdCQUhxQztFaEIrc2N2QztBQUNGOztBTXJrY007RXdHdkZOO0k5RmxESSx5QkFGcUM7SUFHckMsd0JBSHFDO0VoQnN0Y3ZDO0FBQ0Y7O0FrQnhxY0k7RUFDRSxZUGlEc0Q7QVgwbmM1RDs7QThHanFjQTtFN0ZoRUUsV0NlcUQ7RUErQnJELFdQd0R5RDtFSzlGdkQseUJBRnFDO0VBR3JDLHdCQUhxQztFOEY0RHJDLGtCQUFrQjtFQUNsQixrQkFBa0I7QTlHdXFjdEI7O0FNemxjTTtFd0dqRk47STlGeERJLHlCQUZxQztJQUdyQyx3QkFIcUM7RWhCMHVjdkM7QUFDRjs7QU1obWNNO0V3R2pGTjtJOUZ4REkseUJBRnFDO0lBR3JDLHdCQUhxQztFaEJpdmN2QztBQUNGOztBa0Juc2NJO0VBQ0UsWVBpRHNEO0FYcXBjNUQ7O0E4R3JyY0E7RTdGdkVFLFdDeUIyRDtFQXFCM0QsV1B3RHlEO0VLOUZ2RCx5QkFGcUM7RUFHckMsd0JBSHFDO0FoQjZ2Y3pDOztBTWxuY007RXdHMUVOO0k5Ri9ESSx5QkFGcUM7SUFHckMsd0JBSHFDO0VoQm13Y3ZDO0FBQ0Y7O0FNem5jTTtFd0cxRU47STlGL0RJLHlCQUZxQztJQUdyQyx3QkFIcUM7RWhCMHdjdkM7QUFDRjs7QWtCNXRjSTtFQUNFLFlQaURzRDtBWDhxYzVEOztBOEc5c2NBO0VBSVEsaUJBQWlCO0VBQ2pCLFVBQVU7QTlHOHNjbEI7O0E4RzFzY0E7RUFDSSxtQjFHaEJlO0UwR2lCZixpQkFBZ0I7RUFDaEIsa0JBQWlCO0E5RzZzY3JCOztBOEcxc2NBO0VBQ0ksUUFBUTtFQUNSLGlCQUFpQjtFQUNqQixpQkFBaUI7QTlHNnNjckI7O0E4RzFzY0E7RUFDSSx5QjFHM0JXO0FKd3VjZjs7QThHMXNjQTtFQUNJLHFCL0Z2QnFEO0UrRndCckQsaUJBQWdCO0VBQ2hCLGtCQUFpQjtBOUc2c2NyQjs7QThHMXNjQTtFQUNJLGtCQUFrQjtBOUc2c2N0Qjs7QWtDdHVjRTtFNEU2QkUsa0JBQWtCO0E5RzZzY3RCOztBOEcxc2NBO0VBQ0ksZ0JBQWU7QTlHNnNjbkI7O0E4RzlzY0E7RUFHUSxnQkFBZTtFQUNmLGtCQUFpQjtFQUNqQix1Qi9GekNpRDtBZnd2Y3pEOztBOEczc2NBO0VBQ0kscUJBQW9CO0VBQ3BCLGNBQWE7QTlHOHNjakI7O0E4RzNzY0E7RUFDSSxjQUFhO0E5RzhzY2pCOztBOEcxc2NBO0VBR0k7SUFDSSxvQkFBb0I7SUFDcEIsZUFBZTtJQUNmLHNCL0Y3RGlEO0krRjhEakQseUIvRjlEaUQ7SStGK0RqRCxpQkFBaUI7RTlHMnNjdkI7RThHeHNjRTtJQUNJLG9CQUFvQjtJQUNwQixlQUFlO0lBQ2Ysc0IvRnJFaUQ7SStGc0VqRCx5Qi9GdEVpRDtJK0Z1RWpELGlCQUFpQjtFOUcwc2N2QjtFa0NwdWNBO0k0RThCTSxtQkFBbUI7RTlHeXNjekI7RThHdHNjRTtJaEdyRUYsc0JDVHVEO0lEMUJyRCxrQkFBa0I7SUFDbEIsaUJBQWlCO0lnR3lHYixnQkFBZ0I7RTlHMHNjdEI7RVl0c2NBO0lBRUUsY0FBYztJQUNkLFlBQVk7RVp1c2NkO0VZL3JjQTtJQUNFLFdBQVc7RVppc2NiO0U4RzlzY0U7SUFDSSx5QkFBeUI7RTlHZ3RjL0I7RThHN3NjRTtJQUNJLGNBQWM7SUFDZCxVQUFVO0lBQ1YsWUFBWTtJQUNaLHdDMUcvRk87STBHZ0dQLGMxR2hHTztFSit5Y2I7RThHNXNjRTtJN0Z6S0YsVUN5QjJEO0lBcUIzRCxXUHdEeUQ7SUs5RnZELHlCQUZxQztJQUdyQyx3QkFIcUM7RWhCcTNjdkM7QUFDRjs7QU0zdWNNO0V3R3dCRjtJOUZqS0EseUJBRnFDO0lBR3JDLHdCQUhxQztFaEI0M2N2QztBQUNGOztBTWx2Y007RXdHd0JGO0k5RmpLQSx5QkFGcUM7SUFHckMsd0JBSHFDO0VoQm00Y3ZDO0FBQ0Y7O0E4R3p3Y0E7RTVGNUVJO0lBQ0UsWVBpRHNEO0VYd3ljMUQ7RWtCMTFjRTtJNEZ5SEksV0FBVztFOUdvdWNqQjtFOEdqdWNFO0lBRVEsYzFHN0dHO0VKKzBjYjtFOEdwdWNFO0lBTVEsYzFHakhHO0VKazFjYjtFOEc3dGNFO0lBQ0ksOEJBQThCO0U5Ryt0Y3BDO0U4RzN6Y0Y7SUFnR1EsaUJBQWlCO0lBQ2pCLGNBQWM7SUFDZCxVQUFVO0lBQ1YsWUFBWTtJQUNaLG1CQUFtQjtJQUNuQixtQkFBbUI7SUFDbkIsb0JBQW9CO0lBQ3BCLGMxR2pJTztFSisxY2I7RThHdHVjRTtJQVdRLHdDMUdwSUc7RUprMmNiO0U4R3p1Y0U7SUFlUSx3QzFHeElHO0VKcTJjYjtFOEdyMWNGO0lBNEhZLGtCQUFrQjtJQUNsQixRQUFRO0lBQ1IsV0FBVztJQUNYLG1CQUFtQjtJQUNuQixXQUFXO0U5RzR0Y3JCO0U4RzU1Y0Y7STdGdEJFLGdCQ3lCMkQ7SUFxQjNELFdQd0R5RDtJSzlGdkQseUJBRnFDO0lBR3JDLHdCQUhxQztFaEJrN2N2QztBQUNGOztBTXh5Y007RXdHM0hOO0k5RmRJLHlCQUZxQztJQUdyQyx3QkFIcUM7RWhCeTdjdkM7QUFDRjs7QU0veWNNO0V3RzNITjtJOUZkSSx5QkFGcUM7SUFHckMsd0JBSHFDO0VoQmc4Y3ZDO0FBQ0Y7O0E4R3QwY0E7RTVGNUVJO0lBQ0UsWVBpRHNEO0VYcTJjMUQ7RThHNTdjRjtJN0ZoQkUsZ0JDeUIyRDtJQXFCM0QsV1B3RHlEO0lLOUZ2RCx5QkFGcUM7SUFHckMsd0JBSHFDO0k4RjBOakMsZ0JBQWdCO0lBQ2hCLFlBQVk7RTlHbXZjbEI7QUFDRjs7QU1wMGNNO0V3R2pJTjtJOUZSSSx5QkFGcUM7SUFHckMsd0JBSHFDO0VoQnE5Y3ZDO0FBQ0Y7O0FNMzBjTTtFd0dqSU47STlGUkkseUJBRnFDO0lBR3JDLHdCQUhxQztFaEI0OWN2QztBQUNGOztBOEdsMmNBO0U1RjVFSTtJQUNFLFlQaURzRDtFWGk0YzFEO0U4RzU3Y0Y7STdGNUNFLFVDeUIyRDtJQXFCM0QsV1B3RHlEO0lLOUZ2RCx5QkFGcUM7SUFHckMsd0JBSHFDO0k4RmdPakMsa0JBQWtCO0lBQ2xCLGdCQUFnQjtFOUd5d2N0QjtBQUNGOztBTWgyY007RXdHckdOO0k5RnBDSSx5QkFGcUM7SUFHckMsd0JBSHFDO0VoQmkvY3ZDO0FBQ0Y7O0FNdjJjTTtFd0dyR047STlGcENJLHlCQUZxQztJQUdyQyx3QkFIcUM7RWhCdy9jdkM7QUFDRjs7QThHOTNjQTtFNUY1RUk7SUFDRSxZUGlEc0Q7RVg2NWMxRDtFOEcxOGNGO0k3RjFERSxVQ3lCMkQ7SUFxQjNELFdQd0R5RDtJSzlGdkQseUJBRnFDO0lBR3JDLHdCQUhxQztJOEZzT2pDLHNCL0ZsS2lEO0krRm1LakQ7OztVOUdpeWNFO0VBQ1I7QUFDRjs7QU0vM2NNO0V3R3ZGTjtJOUZsREkseUJBRnFDO0lBR3JDLHdCQUhxQztFaEJnaGR2QztBQUNGOztBTXQ0Y007RXdHdkZOO0k5RmxESSx5QkFGcUM7SUFHckMsd0JBSHFDO0VoQnVoZHZDO0FBQ0Y7O0E4Rzc1Y0E7RTVGNUVJO0lBQ0UsWVBpRHNEO0VYNDdjMUQ7RThHenpjRTtJQVFRLFdBQVc7SUFDWCxxQkFBcUI7RTlHb3pjL0I7RThHdC9jRjtJN0ZqREUsZ0JDeUIyRDtJQXFCM0QsV1B3RHlEO0lLOUZ2RCx5QkFGcUM7SUFHckMsd0JBSHFDO0k4Rm1QakMsa0JBQWtCO0U5R3F6Y3hCO0FBQ0Y7O0FNOTVjTTtFd0doR047STlGekNJLHlCQUZxQztJQUdyQyx3QkFIcUM7RWhCK2lkdkM7QUFDRjs7QU1yNmNNO0V3R2hHTjtJOUZ6Q0kseUJBRnFDO0lBR3JDLHdCQUhxQztFaEJzamR2QztBQUNGOztBOEc1N2NBO0U1RjVFSTtJQUNFLFlQaURzRDtFWDI5YzFEO0U4RzMvY0Y7STdGdkVFLFVDeUIyRDtJQXFCM0QsV1B3RHlEO0lLOUZ2RCx5QkFGcUM7SUFHckMsd0JBSHFDO0VoQmtrZHZDO0FBQ0Y7O0FNeDdjTTtFd0cxRU47STlGL0RJLHlCQUZxQztJQUdyQyx3QkFIcUM7RWhCeWtkdkM7QUFDRjs7QU0vN2NNO0V3RzFFTjtJOUYvREkseUJBRnFDO0lBR3JDLHdCQUhxQztFaEJnbGR2QztBQUNGOztBOEd0OWNBO0U1RjVFSTtJQUNFLFlQaURzRDtFWHEvYzFEO0U4RzVoZEY7STdGaEVFLFVDeUIyRDtJQXFCM0QsV1B3RHlEO0lLOUZ2RCx5QkFGcUM7SUFHckMsd0JBSHFDO0VoQjRsZHZDO0FBQ0Y7O0FNbDljTTtFd0dqRk47STlGeERJLHlCQUZxQztJQUdyQyx3QkFIcUM7RWhCbW1kdkM7QUFDRjs7QU16OWNNO0V3R2pGTjtJOUZ4REkseUJBRnFDO0lBR3JDLHdCQUhxQztFaEIwbWR2QztBQUNGOztBOEdoL2NBO0U1RjVFSTtJQUNFLFlQaURzRDtFWCtn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USxnQkFBZ0I7QS9HeXNkeEI7O0ErR3JzZEE7RUFDSSxlQUFjO0EvR3dzZGxCOztBK0dyc2RBO0VBQ0ksWUFBWTtBL0d3c2RoQjs7QStHcnNkQTtFQUNJLFdBQVc7RUFDWCx3QmhHL0NxRDtBZnV2ZHpEOztBTTNxZE07RXlHL0JOO0lBSVEsWUFBVztFL0cyc2RqQjtBQUNGOztBK0d4c2RBO0U5Ri9IRSxVQ3lCMkQ7RUFxQjNELFdQd0R5RDtFSzlGdkQseUJBRnFDO0VBR3JDLHdCQUhxQztBaEJ3MGR6Qzs7QU03cmRNO0V5R2xCTjtJL0Z2SEkseUJBRnFDO0lBR3JDLHdCQUhxQztFaEI4MGR2QztBQUNGOztBTXBzZE07RXlHbEJOO0kvRnZISSx5QkFGcUM7SUFHckMsd0JBSHFDO0VoQnExZHZDO0FBQ0Y7O0FrQnZ5ZEk7RUFDRSxZUGlEc0Q7QVh5dmQ1RDs7QStHN3RkQTtFOUZuSUUsVUN5QjJEO0VBcUIzRCxXUHdEeUQ7RUs5RnZELHlCQUZxQztFQUdyQyx3QkFIcUM7QWhCaTJkekM7O0FNdHRkTTtFeUdkTjtJL0YzSEkseUJBRnFDO0lBR3JDLHdCQUhxQztFaEJ1MmR2QztBQUNGOztBTTd0ZE07RXlHZE47SS9GM0hJLHlCQUZxQztJQUdyQyx3QkFIcUM7RWhCODJkdkM7QUFDRjs7QWtCaDBkSTtFQUNFLFlQaURzRDtBWGt4ZDVEOztBK0dsdmRBO0U5RnZJRSxXQ3lCMkQ7RUFxQjNELFdQd0R5RDtFSzlGdkQseUJBRnFDO0VBR3JDLHdCQUhxQztFK0ZtSXJDLHNCaEcvRHFEO0VnR2dFckQsa0JBQWtCO0EvR3d2ZHRCOztBTWp2ZE07RXlHVk47SS9GL0hJLHlCQUZxQztJQUdyQyx3QkFIcUM7RWhCazRkdkM7QUFDRjs7QU14dmRNO0V5R1ZOO0kvRi9ISSx5QkFGcUM7SUFHckMsd0JBSHFDO0VoQnk0ZHZDO0FBQ0Y7O0FrQjMxZEk7RUFDRSxZUGlEc0Q7QVg2eWQ1RDs7QStHN3dkQTtFQU1RLHdCQUF3QjtBL0cyd2RoQzs7QStHcndkQTtFQXRIQTtJQTBIUSwwQmhHN0VpRDtFZm0xZHZEO0UrR3AzZEY7STlGekNFLFVDeUIyRDtJQXFCM0QsV1B3RHlEO0lLOUZ2RCx5QkFGcUM7SUFHckMsd0JBSHFDO0VoQjY1ZHZDO0FBQ0Y7O0FNbnhkTTtFeUd4R047SS9GakNJLHlCQUZxQztJQUdyQyx3QkFIcUM7RWhCbzZkdkM7QUFDRjs7QU0xeGRNO0V5R3hHTjtJL0ZqQ0kseUJBRnFDO0lBR3JDLHdCQUhxQztFaEIyNmR2QztBQUNGOztBK0cveGRBO0U3RjlGSTtJQUNFLFlQaURzRDtFWGcxZDFEO0UrR3p4ZEU7STlGOUpGLFVDeUIyRDtJQXFCM0QsV1B3RHlEO0lLOUZ2RCx5QkFGcUM7SUFHckMsd0JBSHFDO0krRjBKakMsa0JBQWtCO0UvRzh4ZHhCO0FBQ0Y7O0FNOXlkTTtFeUdhRjtJL0Z0SkEseUJBRnFDO0lBR3JDLHdCQUhxQztFaEIrN2R2QztBQUNGOztBTXJ6ZE07RXlHYUY7SS9GdEpBLHlCQUZxQztJQUdyQyx3QkFIcUM7RWhCczhkdkM7QUFDRjs7QStHMXpkQTtFN0Y5Rkk7SUFDRSxZUGlEc0Q7RVgyMmQxRDtFK0dyNmRGO0k5RjdDRSxVQ3lCMkQ7SUFxQjNELFdQd0R5RDtJSzlGdkQseUJBRnFDO0lBR3JDLHdCQUhxQztFaEJrOWR2QztBQUNGOztBTXgwZE07RXlHcEdOO0kvRnJDSSx5QkFGcUM7SUFHckMsd0JBSHFDO0VoQnk5ZHZDO0FBQ0Y7O0FNLzBkTTtFeUdwR047SS9GckNJLHlCQUZxQztJQUdyQyx3QkFIcUM7RWhCZytkdkM7QUFDRjs7QStHcDFkQTtFN0Y5Rkk7SUFDRSxZUGlEc0Q7RVhxNGQxRDtFK0c3MmRGO0k5Ri9IRSxnQkN5QjJEO0lBcUIzRCxXUHdEeUQ7SUs5RnZELHlCQUZxQztJQUdyQyx3QkFIcUM7RWhCNCtkdkM7QUFDRjs7QU1sMmRNO0V5R2xCTjtJL0Z2SEkseUJBRnFDO0lBR3JDLHdCQUhxQztFaEJtL2R2QztBQUNGOztBTXoyZE07RXlHbEJOO0kvRnZISSx5QkFGcUM7SUFHckMsd0JBSHFDO0VoQjAvZHZDO0FBQ0Y7O0ErRzkyZEE7RTdGOUZJO0lBQ0UsWVBpRHNEO0VYKzVkMUQ7RStHLzNkRjtJOUZ2SUUsVUN5QjJEO0lBcUIzRCxXUHdEeUQ7SUs5RnZELHlCQUZxQztJQUdyQyx3QkFIcUM7SUdMckMsa0JBQWtCO0lBQ2xCLGdCQUhtRDtJNEZnTC9DLGVBQWU7RS9HZzJkckI7QUFDRjs7QU0vM2RNO0V5R1ZOO0kvRi9ISSx5QkFGcUM7SUFHckMsd0JBSHFDO0VoQmdoZXZDO0FBQ0Y7O0FNdDRkTTtFeUdWTjtJL0YvSEkseUJBRnFDO0lBR3JDLHdCQUhxQztFaEJ1aGV2QztBQUNGOztBK0czNGRBO0U3RjlGSTtJQUNFLFlQaURzRDtFWDQ3ZDFEO0UrRzU1ZEY7SUEyQ1ksd0JBQXdCO0UvR28zZGxDO0UrR242ZEY7STlGbklFLGdCQ3lCMkQ7SUFxQjNELFdQd0R5RDtJSzlGdkQseUJBRnFDO0lBR3JDLHdCQUhxQztJR0xyQyxrQkFBa0I7SUFDbEIsU0FIbUQ7RW5CK2llckQ7QUFDRjs7QU05NWRNO0V5R2ROO0kvRjNISSx5QkFGcUM7SUFHckMsd0JBSHFDO0VoQitpZXZDO0FBQ0Y7O0FNcjZkTTtFeUdkTjtJL0YzSEkseUJBRnFDO0lBR3JDLHdCQUhxQztFaEJzamV2QztBQUNGOztBK0cxNmRBO0U3RjlGSTtJQUNFLFlQaURzRDtFWDI5ZDFEO0FBQ0Y7O0ErR3I0ZEE7RUEvREE7STlGL0hFLFlDeUIyRDtJQXFCM0QsV1B3RHlEO0lLOUZ2RCx5QkFGcUM7SUFHckMsd0JBSHFDO0VoQnFrZXZDO0FBQ0Y7O0FNMzdkTTtFeUdsQk47SS9GdkhJLHlCQUZxQztJQUdyQyx3QkFIcUM7RWhCNGtldkM7QUFDRjs7QU1sOGRNO0V5R2xCTjtJL0Z2SEkseUJBRnFDO0lBR3JDLHdCQUhxQztFaEJtbGV2QztBQUNGOztBK0c1NWRBO0U3RnpJSTtJQUNFLFlQaURzRDtFWHcvZDFEO0UrR3g5ZEY7STlGdklFLGFDeUIyRDtJQXFCM0QsV1B3RHlEO0lLOUZ2RCx5QkFGcUM7SUFHckMsd0JBSHFDO0lHTHJDLGtCQUFrQjtJQUNsQixhQUhtRDtFbkJ3bWVyRDtBQUNGOztBTXY5ZE07RXlHVk47SS9GL0hJLHlCQUZxQztJQUdyQyx3QkFIcUM7RWhCd21ldkM7QUFDRjs7QU05OWRNO0V5R1ZOO0kvRi9ISSx5QkFGcUM7SUFHckMsd0JBSHFDO0VoQittZXZDO0FBQ0Y7O0ErR3g3ZEE7RTdGeklJO0lBQ0UsWVBpRHNEO0VYb2hlMUQ7RStHeC9kRjtJOUZuSUUsWUN5QjJEO0lBcUIzRCxXUHdEeUQ7SUs5RnZELHlCQUZxQztJQUdyQyx3QkFIcUM7SUdMckMsa0JBQWtCO0lBQ2xCLFlBSG1EO0VuQm9vZXJEO0FBQ0Y7O0FNbi9kTTtFeUdkTjtJL0YzSEkseUJBRnFDO0lBR3JDLHdCQUhxQztFaEJvb2V2QztBQUNGOztBTTEvZE07RXlHZE47SS9GM0hJLHlCQUZxQztJQUdyQyx3QkFIcUM7RWhCMm9ldkM7QUFDRjs7QStHcDlkQTtFN0Z6SUk7SUFDRSxZUGlEc0Q7RVhnamUxRDtBQUNGOztBK0d6OGRBO0VBaEZBO0k5Ri9IRSxnQkN5QjJEO0lBcUIzRCxXUHdEeUQ7SUs5RnZELHlCQUZxQztJQUdyQyx3QkFIcUM7RWhCMHBldkM7QUFDRjs7QU1oaGVNO0V5R2xCTjtJL0Z2SEkseUJBRnFDO0lBR3JDLHdCQUhxQztFaEJpcWV2QztBQUNGOztBTXZoZU07RXlHbEJOO0kvRnZISSx5QkFGcUM7SUFHckMsd0JBSHFDO0VoQndxZXZDO0FBQ0Y7O0ErR2grZEE7RTdGMUpJO0lBQ0UsWVBpRHNEO0VYNmtlMUQ7RStHN2llRjtJOUZ2SUUsVUN5QjJEO0lBcUIzRCxXUHdEeUQ7SUs5RnZELHlCQUZxQztJQUdyQyx3QkFIcUM7SUdMckMsa0JBQWtCO0lBQ2xCLGdCQUhtRDtFbkI2cmVyRDtBQUNGOztBTTVpZU07RXlHVk47SS9GL0hJLHlCQUZxQztJQUdyQyx3QkFIcUM7RWhCNnJldkM7QUFDRjs7QU1uamVNO0V5R1ZOO0kvRi9ISSx5QkFGcUM7SUFHckMsd0JBSHFDO0VoQm9zZXZDO0FBQ0Y7O0ErRzUvZEE7RTdGMUpJO0lBQ0UsWVBpRHNEO0VYeW1lMUQ7RStHN2tlRjtJOUZuSUUsZ0JDeUIyRDtJQXFCM0QsV1B3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LHlCQUZxQztFQUdyQyx3QkFIcUM7QWhCKzdnQnpDOztBTXB6Z0JNO0VrSHhKTjtJeEdlSSx5QkFGcUM7SUFHckMsd0JBSHFDO0VoQnE4Z0J2QztBQUNGOztBTTN6Z0JNO0VrSHhKTjtJeEdlSSx5QkFGcUM7SUFHckMsd0JBSHFDO0VoQjQ4Z0J2QztBQUNGOztBa0I5NWdCSTtFQUNFLFlQaURzRDtBWGczZ0I1RDs7QXdIMTlnQkE7RXZHR0UsV0NlcUQ7RUErQnJELFdQd0R5RDtFSzlGdkQseUJBRnFDO0VBR3JDLHdCQUhxQztBaEJ3OWdCekM7O0FNNzBnQk07RWtIcEpOO0l4R1dJLHlCQUZxQztJQUdyQyx3QkFIcUM7RWhCODlnQnZDO0FBQ0Y7O0FNcDFnQk07RWtIcEpOO0l4R1dJLHlCQUZxQztJQUdyQyx3QkFIcUM7RWhCcStnQnZDO0FBQ0Y7O0FrQnY3Z0JJO0VBQ0UsWVBpRHNEO0FYeTRnQjVEOztBd0gvK2dCQTtFdkdERSxXQ2VxRDtFQStCckQsV1B3RHlEO0VLOUZ2RCx5QkFGcUM7RUFHckMsd0JBSHFDO0FoQmkvZ0J6Qzs7QU10MmdCTTtFa0hoSk47SXhHT0kseUJBRnFDO0lBR3JDLHdCQUhxQztFaEJ1L2dCdkM7QUFDRjs7QU03MmdCTTtFa0hoSk47SXhHT0kseUJBRnFDO0lBR3JDLHdCQUhxQztFaEI4L2dCdkM7QUFDRjs7QWtCaDlnQkk7RUFDRSxZUGlEc0Q7QVhrNmdCNUQ7O0F3SHBnaEJBO0V2R0xFLFdDZXFEO0VBK0JyRCxXUHdEeUQ7RUs5RnZELHlCQUZxQztFQUdyQyx3QkFIcUM7QWhCMGdoQnpDOztBTS8zZ0JNO0VrSDVJTjtJeEdHSSx5QkFGcUM7SUFHckMsd0JBSHFDO0VoQmdoaEJ2QztBQUNGOztBTXQ0Z0JNO0VrSDVJTjtJeEdHSSx5QkFGcUM7SUFHckMsd0JBSHFDO0VoQnVoaEJ2QztBQUNGOztBa0J6K2dCSTtFQUNFLFlQaURzRDtBWDI3Z0I1RDs7QXdIeGhoQkE7RUFqQkE7SXZHT0UsVUNlcUQ7SUErQnJELFdQd0R5RDtJSzlGdkQseUJBRnFDO0lBR3JDLHdCQUhxQztJd0dVakM7Ozs7OztVeEhnaWhCRTtFQUNSO0FBQ0Y7O0FNajZnQk07RWtIeEpOO0l4R2VJLHlCQUZxQztJQUdyQyx3QkFIcUM7RWhCa2poQnZDO0FBQ0Y7O0FNeDZnQk07RWtIeEpOO0l4R2VJLHlCQUZxQztJQUdyQyx3QkFIcUM7RWhCeWpoQnZDO0FBQ0Y7O0F3SHRqaEJBO0V0RzJDSTtJQUNFLFlQaURzRDtFWDg5Z0IxRDtFd0h4a2hCRjtJdkdHRSxXQ2VxRDtJQStCckQsV1B3RHlEO0lLOUZ2RCx5QkFGcUM7SUFHckMsd0JBSHFDO0VoQnFraEJ2QztBQUNGOztBTTM3Z0JNO0VrSHBKTjtJeEdXSSx5QkFGcUM7SUFHckMsd0JBSHFDO0VoQjRraEJ2QztBQUNGOztBTWw4Z0JNO0VrSHBKTjtJeEdXSSx5QkFGcUM7SUFHckMsd0JBSHFDO0VoQm1saEJ2QztBQUNGOztBd0hobGhCQTtFdEcyQ0k7SUFDRSxZUGlEc0Q7RVh3L2dCMUQ7RXdIOWxoQkY7SXZHREUsVUNlcUQ7SUErQnJELFdQd0R5RDtJSzlGdkQseUJBRnFDO0lBR3JDLHdCQUhxQztJd0cwQmpDLCtCQUFBO0V4SHNraEJOO0FBQ0Y7O0FNdDlnQk07RWtIaEpOO0l4R09JLHlCQUZxQztJQUdyQyx3QkFIcUM7RWhCdW1oQnZDO0FBQ0Y7O0FNNzlnQk07RWtIaEpOO0l4R09JLHlCQUZxQztJQUdyQyx3QkFIcUM7RWhCOG1oQnZDO0FBQ0Y7O0F3SDNtaEJBO0V0RzJDSTtJQUNFLFlQaURzRDtFWG1oaEIxRDtFd0hybmhCRjtJdkdMRSxVQ2VxRDtJQStCckQsV1B3RHlEO0lLOUZ2RCx5QkFGcUM7SUFHckMsd0JBSHFDO0l3RytCakMsK0JBQUE7RXhINGxoQk47QUFDRjs7QU1qL2dCTTtFa0g1SU47SXhHR0kseUJBRnFDO0lBR3JDLHdCQUhxQztFaEJrb2hCdkM7QUFDRjs7QU14L2dCTTtFa0g1SU47SXhHR0kseUJBRnFDO0lBR3JDLHdCQUhxQztFaEJ5b2hCdkM7QUFDRjs7QXdIdG9oQkE7RXRHMkNJO0lBQ0UsWVBpRHNEO0VYOGloQjFEO0V3SDdtaEJFO0lBQ0ksYUFBWTtFeEgrbWhCbEI7QUFDRjs7QXdIMW1oQkE7RUF0REE7SXZHT0UsVUNlcUQ7SUErQnJELFdQd0R5RDtJSzlGdkQseUJBRnFDO0lBR3JDLHdCQUhxQztJd0crQ2pDOzs7Ozs7VXhIa25oQkU7RUFDUjtBQUNGOztBTXhoaEJNO0VrSHhKTjtJeEdlSSx5QkFGcUM7SUFHckMsd0JBSHFDO0VoQnlxaEJ2QztBQUNGOztBTS9oaEJNO0VrSHhKTjtJeEdlSSx5QkFGcUM7SUFHckMsd0JBSHFDO0VoQmdyaEJ2QztBQUNGOztBd0h4b2hCQTtFdEdNSTtJQUNFLFlQaURzRDtFWHFsaEIxRDtFd0gvcmhCRjtJdkdHRSxXQ2VxRDtJQStCckQsV1B3RHlEO0lLOUZ2RCx5QkFGcUM7SUFHckMsd0JBSHFDO0VoQjRyaEJ2QztBQUNGOztBTWxqaEJNO0VrSHBKTjtJeEdXSSx5QkFGcUM7SUFHckMsd0JBSHFDO0VoQm1zaEJ2QztBQUNGOztBTXpqaEJNO0VrSHBKTjtJeEdXSSx5QkFGcUM7SUFHckMsd0JBSHFDO0VoQjBzaEJ2QztBQUNGOztBd0hscWhCQTtFdEdNSTtJQUNFLFlQaURzRDtFWCttaEIxRDtFd0hydGhCRjtJdkdERSxVQ2VxRDtJQStCckQsV1B3RHlEO0lLOUZ2RCx5QkFGcUM7SUFHckMsd0JBSHFDO0l3RytEakMsK0JBQUE7RXhId3BoQk47QUFDRjs7QU03a2hCTTtFa0hoSk47SXhHT0kseUJBRnFDO0lBR3JDLHdCQUhxQztFaEI4dGhCdkM7QUFDRjs7QU1wbGhCTTtFa0hoSk47SXhHT0kseUJBRnFDO0lBR3JDLHdCQUhxQztFaEJxdWhCdkM7QUFDRjs7QXdIN3JoQkE7RXRHTUk7SUFDRSxZUGlEc0Q7RVgwb2hCMUQ7RXdINXVoQkY7SXZHTEUsVUNlcUQ7SUErQnJELFdQd0R5RDtJSzlGdkQseUJBRnFDO0lBR3JDLHdCQUhxQztJd0dvRWpDLCtCQUFBO0V4SDhxaEJOO0FBQ0Y7O0FNeG1oQk07RWtINUlOO0l4R0dJLHlCQUZxQztJQUdyQyx3QkFIcUM7RWhCeXZoQnZDO0FBQ0Y7O0FNL21oQk07RWtINUlOO0l4R0dJLHlCQUZxQztJQUdyQyx3QkFIcUM7RWhCZ3doQnZDO0FBQ0Y7O0F3SHh0aEJBO0V0R01JO0lBQ0UsWVBpRHNEO0VYcXFoQjFEO0V3SHB1aEJFO0lBc0NJLGNBQWE7SXZHOUVuQixVQ2VxRDtJQStCckQsV1B3RHlEO0lLOUZ2RCx5QkFGcUM7SUFHckMsd0JBSHFDO0VoQjZ3aEJ2QztBQUNGOztBTW5vaEJNO0VrSHpHRjtJeEdoQ0EseUJBRnFDO0lBR3JDLHdCQUhxQztFaEJveGhCdkM7QUFDRjs7QU0xb2hCTTtFa0h6R0Y7SXhHaENBLHlCQUZxQztJQUdyQyx3QkFIcUM7RWhCMnhoQnZDO0FBQ0Y7O0F3SG52aEJBO0V0R01JO0lBQ0UsWVBpRHNEO0VYZ3NoQjFEO0FBQ0Y7O0F3SHB0aEJBO0VBQ0ksZ0JBQWU7RUFDZixnQkFBZTtFQUNmLHdCekdicUQ7QWZvdWhCekQ7O0F3SDF0aEJBO0VBS1Esb0J6R1ZLO0V5R1dMLHFCekdYSztFeUdnQkwsZ0NwSG5DWTtBSnd2aEJwQjs7QU1ucWhCTTtFa0g3RE47SUFRWSxTekdiQztJeUdjRCxpQnpHZEM7RWYydWhCWDtBQUNGOztBd0h2dWhCQTtFQWFZLG1CQUFrQjtBeEg4dGhCOUI7O0F3SDN1aEJBO0VBZ0JZLFlBQVc7RUFDWCxxQnpHM0I2QztBZjB2aEJ6RDs7QU1ucmhCTTtFa0g3RE47SUFtQmdCLGtCekc3QnlDO0VmK3ZoQnZEO0FBQ0Y7O0F3SHR2aEJBO0VBc0JnQiwwQkFBeUI7QXhIb3VoQnpDOztBd0gxdGhCQTtFQUNJLGtCQUFpQjtBeEg2dGhCckI7O0F3SDl0aEJBO0VBR1ksZ0JBQWU7QXhIK3RoQjNCOztBd0hsdWhCQTtFQU1RLHFCQUFvQjtFQUNwQiwwQkFBeUI7QXhIZ3VoQmpDOztBd0h2dWhCQTtFQVNZLG1CQUFrQjtFQUNsQixZQUFXO0VBQ1gsaUNBQWdDO0VBQ2hDLCtCQUE4QjtFQUM5QiwwQ0FBeUM7RUFDekMsa0NBQWlDO0F4SGt1aEI3Qzs7QXdIaHZoQkE7RUFpQlksY3BIckVPO0VvSHNFUCxtQkFBa0I7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QU01NGpCTTtFb0h0Sk47SXpHS0UsZ0JDZXFEO0lBK0JyRCxXUHdEeUQ7SUs5RnZELHlCQUZxQztJQUdyQyx3QkFIcUM7RWhCK2hrQnZDO0FBQ0Y7O0FNcjVqQk07RW9IdEpOO0kxR2FJLHlCQUZxQztJQUdyQyx3QkFIcUM7RWhCc2lrQnZDO0FBQ0Y7O0FNNTVqQk07RW9IdEpOO0kxR2FJLHlCQUZxQztJQUdyQyx3QkFIcUM7RWhCNmlrQnZDO0FBQ0Y7O0FNbjZqQk07RVk1RkY7SUFDRSxZUGlEc0Q7RVhrOWpCMUQ7QUFDRjs7QU1wNmpCTTtFb0gzSk47SUFRUSxvQkFBb0I7SUFDcEIsaUJBQWlCO0UxSDRqa0J2QjtBQUNGOztBTTM2akJNO0VvSDlJTjtJekdSRSxXQ2VxRDtJQStCckQsV1B3RHlEO0lLOUZ2RCx5QkFGcUM7SUFHckMsd0JBSHFDO0VoQm1ra0J2QztBQUNGOztBTXo3akJNO0VvSHpJTjtJMUdBSSx5QkFGcUM7SUFHckMsd0JBSHFDO0VoQjBra0J2QztBQUNGOztBTWg4akJNO0VvSHpJTjtJMUdBSSx5QkFGcUM7SUFHckMsd0JBSHFDO0VoQmlsa0J2QztBQUNGOztBTWw4akJNO0VZakdGO0lBQ0UsWVBpRHNEO0VYcy9qQjFEO0FBQ0Y7O0FNNzhqQk07RW9IeklOO0l6R1JFLFVDZXFEO0lBK0JyRCxXUHdEeUQ7SUs5RnZELHlCQUZxQztJQUdyQyx3QkFIcUM7RWhCZ21rQnZDO0FBQ0Y7O0FNdDlqQk07RW9IeklOO0kxR0FJLHlCQUZxQztJQUdyQyx3QkFIcUM7RWhCdW1rQnZDO0FBQ0Y7O0FNNzlqQk07RW9IeklOO0kxR0FJLHlCQUZxQztJQUdyQyx3QkFIcUM7RWhCOG1rQnZDO0FBQ0Y7O0FNcCtqQk07RVk1RkY7SUFDRSxZUGlEc0Q7RVhtaGtCMUQ7QUFDRjs7QU0xK2pCTTtFb0h6SU47SXpHUkUsZ0JDZXFEO0lBK0JyRCxXUHdEeUQ7SUs5RnZELHlCQUZxQztJQUdyQyx3QkFIcUM7RWhCNm5rQnZDO0FBQ0Y7O0FNbi9qQk07RW9IeklOO0kxR0FJLHlCQUZxQztJQUdyQyx3QkFIcUM7RWhCb29rQnZDO0FBQ0Y7O0FNMS9qQk07RW9IeklOO0kxR0FJLHlCQUZxQztJQUdyQyx3QkFIcUM7RWhCMm9rQnZDO0FBQ0Y7O0FNamdrQk07RVk1RkY7SUFDRSxZUGlEc0Q7RVhnamtCMUQ7QUFDRjs7QTBIcG9rQkE7RUFDSSx1QjNHcURxRDtBZmtsa0J6RDs7QTBIeG9rQkE7RUFHUSxXQUFVO0ExSHlva0JsQjs7QTJIOXFrQkE7RUFFUSw4QnZId0VZO0FKd21rQnBCOztBMkhscmtCQTtFQU1RLGdCQUFlO0VBQ2YsZ0JBQWU7RUFDZixrQkFBaUI7QTNIZ3JrQnpCOztBMkh4cmtCQTtFQVVZLGN2SHNFRztBSjRta0JmOztBMkg1cmtCQTtFQWNRLG1CQUFrQjtBM0hrcmtCMUI7O0EySGhza0JBO0VBaUJRLHNCQUFxQjtBM0htcmtCN0I7O0EySHBza0JBO0VBb0JRLGFBQVk7QTNIb3JrQnBCOztBMkh4c2tCQTtFQXVCUSxnQkFBZTtBM0hxcmtCdkI7O0EySGpya0JBO0VBQ0ksbUJ2SDhDZ0I7RXVIN0NoQixpQkFBZ0I7RUFDaEIsZ0JBQWU7RUFDZixtQkFBa0I7QTNIb3JrQnRCOztBMkhqcmtCQTtFQUVRLGtCQUFpQjtBM0htcmtCekI7O0EySHJya0JBO0VBS1EsZUFBYztFQUNkLGVBQWM7QTNIb3JrQnRCOztBMkhocmtCQTtFQUNJLHlCQUF3QjtFQUN4QixtQkFBa0I7QTNIbXJrQnRCOztBMkhocmtCQTtFQUNJLGlCQUFnQjtBM0htcmtCcEI7O0EySHBya0JBO0VBR1EsY3ZINEJPO0V1SDNCUCxxQjVHbUNpRDtBZmtwa0J6RDs7QTJIanJrQkE7RUE5QkE7SUFnQ1EsYUFBWTtFM0hvcmtCbEI7RTJIanJrQkU7SUFFUSx1QkFBc0I7SUFDdEIsMkJBQTBCO0lBQzFCLG1CNUdzQjZDO0VmNHBrQnZEO0FBQ0Y7O0E0SHJ2a0JBO0VBQ0ksMkVBQTJFO0VBQzNFLHNCQUFxQjtFQUNyQiw4QkFBNkI7RUFDN0Isa0JBQWlCO0E1SHd2a0JyQjs7QTRINXZrQkE7RUFNUSw2QkFBNEI7RUFDNUIsV0FBVztFQUNYLFNBQVM7RUFDVCxVQUFVO0VBQ1YsOEJBQTJCO0VBQzNCLGVBQWU7QTVIMHZrQnZCOztBTWpta0JNO0VzSHBLTjtJQWFZLGFBQVk7RTVINnZrQnRCO0FBQ0Y7O0FNNW1rQk07RXNIN0lOO0lBRVEsd0I3R29FaUQ7STZHbkVqRCx5QjdHbUVpRDtFZnlya0J2RDtBQUNGOztBNEh6dmtCQTtFQUNJLGN4SG9EZTtBSndza0JuQjs7QTRIenZrQkE7RUFDSSxjeEhrRFc7RXdIakRYLHFCN0d5RHFEO0FmbXNrQnpEOztBNEg5dmtCQTtFQUlRLGNBQWE7RUFDYiwwQkFBeUI7RUFDekIsc0N4SDZDTztVd0g3Q1AsOEJ4SDZDTztBSml0a0JmOztBNEgxdmtCQTtFQUNJLG1CeEh1Q2U7RXdIdENmLG1CN0crQ3FEO0FmOHNrQnpEOztBNEgvdmtCQTtFQUlRLGN4SHlDTztBSnN0a0JmOztBNEhud2tCQTtFQU9RLGN4SHNDTztFd0hyQ1AsY0FBYTtBNUhnd2tCckI7O0E0SHh3a0JBO0VBVVksY3hIbUNHO0FKK3RrQmY7O0E2SG56a0JBO0VBQ0ksa0JBQWlCO0E3SHN6a0JyQjs7QU14cGtCTTtFdUgvSk47SUFHUSx5QjlHcUZpRDtJOEdwRmpELHNCOUdvRmlEO0VmcXVrQnZEO0FBQ0Y7O0E2SDl6a0JBO0VBT1MseUI5R2lGZ0Q7QWYwdWtCekQ7O0E2SGwwa0JBO0VBVVMsY3pIb0VVO0V5SG5FVixxQkFBb0I7QTdINHprQjdCOztBNkh2MGtCQTtFQWFhLGN6SG1FRTtBSjJ2a0JmOztBNkgzMGtCQTtFQWlCUyxtQkFBa0I7QTdIOHprQjNCOztBNkgxemtCQTtFQUNJLGtCQUFpQjtBN0g2emtCckI7O0E2SDF6a0JBO0VBQ0ksY0FBYztFQUNkLGtCQUFrQjtFQUNsQixpQzlHaUVTO0FmNHZrQmI7O0E2SGgwa0JBO0VBS1EsY0FBYztFQUNkLFlBQVk7QTdIK3prQnBCOztBNkhyMGtCQTtFQVNRLGNBQWM7RUFDZCxZQUFZO0E3SGcwa0JwQjs7QTZIMTBrQkE7RUFhUSxxQkFBb0I7RUFDcEIsdUJBQXVCO0VBQ3ZCLHlCOUdnRGlEO0U4Ry9DakQsZUFBZTtBN0hpMGtCdkI7O0E2SGoxa0JBO0VBa0JZLGNBQWM7RUFDZCxjQUFjO0VBQ2QsbUJ6SDZCUTtFeUg1QlIsd0I5RzBDNkM7QWZ5eGtCekQ7O0E2SHgxa0JBO0VBdUJnQixtQnpIaUNBO0V5SGhDQSxjekhtQ0Q7QUpreWtCZjs7QThIdDNrQkE7RUFDSSxnQzFIeUVnQjtFMEh4RWhCLHlCL0dzRnFEO0FmbXlrQnpEOztBOEgzM2tCQTtFQUlRLGMxSDRFTztBSit5a0JmOztBTTN0a0JNO0V3SHBLTjtJQU9RLGtCQUFpQjtFOUg2M2tCdkI7RThIcDRrQkY7SUFTWSx5Qi9HK0U2QztFZit5a0J2RDtBQUNGOztBOEgxM2tCQTtFQUNJLGtCQUFpQjtFQUNqQixjQUFhO0VBQ2Isa0JBQWlCO0E5SDYza0JyQjs7QThIaDRrQkE7RUFLUSxnQkFBZTtBOUgrM2tCdkI7O0E4SDMza0JBO0VBQ0ksaUJBQWdCO0VBQ2hCLGlCQUFnQjtFQUNoQixlL0c4RHFEO0FmZzBrQnpEOztBTXB2a0JNO0V3SDdJTjtJQUtRLHlCL0c0RGlEO0VmcTBrQnZEO0FBQ0Y7O0E4SDkza0JBO0VBQ0ksdUIvR3VEcUQ7QWYwMGtCekQ7O0E4SGw0a0JBO0VBR1EsdUIvR3FEaUQ7RStHcERqRCwwQi9Hb0RpRDtBZiswa0J6RDs7QThILzNrQkE7RUFDSSxtQkFBa0I7QTlIazRrQnRCOztBTTV3a0JNO0V3SG5ITjtJQUVRLGdCL0cwQ2lEO0VmdzFrQnZEO0FBQ0Y7O0ErSGo3a0JBO0VBQ0ksdUJoSHVGcUQ7QWY2MWtCekQ7O0FNdHhrQk07RXlINUpOO0lBRVEsdUJoSG1GaUQ7RWZrMmtCdkQ7QUFDRjs7QStIeDdrQkE7RUFNUSx1QmhIK0VpRDtFZ0g5RWpELHdCaEg4RWlEO0VnSDdFakQsYzNIcUVPO0FKaTNrQmY7O0ErSGw3a0JBO0VBQ0kscUJBQW9CO0EvSHE3a0J4Qjs7QStIbDdrQkE7RUFDSSxrQkFBaUI7RUFDakIsU0FBUTtBL0hxN2tCWjs7QStIdjdrQkE7RUFJUSxnQkFBZTtBL0h1N2tCdkI7O0ErSDM3a0JBO0VBT1Es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bEJ4Qjs7QW9Jam5sQkE7RUFTUSxnQkFBZ0I7QXBJNG1sQnhCOztBb0lybmxCQTtFQWFRLFVBQVU7QXBJNG1sQmxCOztBb0l6bmxCQTtFQWdCWSxVQUFVO0FwSTZtbEJ0Qjs7QW9JN25sQkE7RUFxQlEsWUFBWTtBcEk0bWxCcEI7O0FvSWpvbEJBO0VBd0JZLHNCQUFzQjtFQUN0QixZQUFZO0VBQ1osZUFBZTtFQUNmLGlCQUFpQjtBcEk2bWxCN0I7O0FNaG1sQk07RThIUk47SUFFUSwrQmhJL0VZO0VKMHJsQmxCO0FBQ0Y7O0FvSTltbEJBO0VBTVEseUJySHJFaUQ7RXFIc0VqRCxzQnJIdEVpRDtFcUh1RWpELGNBQWM7QXBJNG1sQnRCOztBb0l4bWxCQTtFQUNJLHNCckg1RXFEO0FmdXJsQnpEOztBb0k1bWxCQTtFQUdRLFlBQVk7QXBJNm1sQnBCOztBb0l6bWxCQTtFQUVRLFdBQVU7QXBJMm1sQmxCOztBb0l2bWxCQTtFQUVRLGNBQWE7QXBJeW1sQnJCOztBb0kzbWxCQTtFQUlZLHlCckg1RjZDO0FmdXNsQnpEIiwiZmlsZSI6IjEuY3NzIiwic291cmNlc0NvbnRlbnQiOlsiQGNoYXJzZXQgXCJVVEYtOFwiO1xuLypcblxuXG4gICBNYWdpYyAzNjAgdjQuNi44IFxuICAgQ29weXJpZ2h0IDIwMTcgTWFnaWMgVG9vbGJveFxuICAgQnV5IGEgbGljZW5zZTogaHR0cHM6Ly93d3cubWFnaWN0b29sYm94LmNvbS9tYWdpYzM2MC9cbiAgIExpY2Vuc2UgYWdyZWVtZW50OiBodHRwczovL3d3dy5tYWdpY3Rvb2xib3guY29tL2xpY2Vuc2UvXG5cblxuKi9cbkBmb250LWZhY2Uge1xuICBmb250LWZhbWlseTogJ21hZ2ljMzYwJztcbiAgZm9udC13ZWlnaHQ6IG5vcm1hbDtcbiAgZm9udC1zdHlsZTogbm9ybWFsO1xuICBzcmM6IHVybChcIi4uL21hZ2ljLXRvb2xib3gtZm9udHMvbWFnaWMzNjAuZW90PyNpZWZpeFwiKSBmb3JtYXQoXCJlbWJlZGRlZC1vcGVudHlwZVwiKTtcbn1cblxuQGZvbnQtZmFjZSB7XG4gIGZvbnQtZmFtaWx5OiAnbWFnaWMzNjAnO1xuICBzcmM6IHVybChcImRhdGE6YXBwbGljYXRpb24vb2N0ZXQtc3RyZWFtO2Jhc2U2NCxkMDlHUmdBQkFBQUFBQTVJQUE4QUFBQUFHVkFBQVFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQkhVMVZDQUFBQldBQUFBRE1BQUFCQ3NQNno3VTlUTHpJQUFBR01BQUFBUXdBQUFGWStJRWtGWTIxaGNBQUFBZEFBQUFDQUFBQUNDcW0xN1N0amRuUWdBQUFDVUFBQUFBb0FBQUFLQUFBQUFHWndaMjBBQUFKY0FBQUZsQUFBQzNDSWtKQlpaMkZ6Y0FBQUIvQUFBQUFJQUFBQUNBQUFBQkJuYkhsbUFBQUgrQUFBQTFzQUFBVWdRWC9oOFdobFlXUUFBQXRVQUFBQU1BQUFBRFlKUGFvVmFHaGxZUUFBQzRRQUFBQWRBQUFBSkFjOUExOW9iWFI0QUFBTHBBQUFBQjhBQUFBMExIVUFBR3h2WTJFQUFBdkVBQUFBSEFBQUFCd0hyZ2oyYldGNGNBQUFDK0FBQUFBZ0FBQUFJQUNqQzdOdVlXMWxBQUFNQUFBQUFYY0FBQUxOekowY0huQnZjM1FBQUExNEFBQUFad0FBQU8wdDdSUEZjSEpsY0FBQURlQUFBQUJsQUFBQWU5MXJBNFY0bkdOZ1pHQmc0R0tRWTlCaFlIUng4d2xoNEdCZ1lZQUFrQXhqVG1aNklsQU15Z1BLc1lCcERpQm1nNGdDQUlvakEwOEFlSnhqWUdUT1pwekF3TXJBd0ZURnRJZUJnYUVIUWpNK1lEQmtaQUtLTXJBeU0yQUZBV211S1F3T0x4aGVjRE1IL2M5aWlHSU9ZcGdHRkdZRXlRRUE0cWdMb3dCNG5PMlIzUTBDTVF5RHYzTGgrTG1Pd2dBTXhCTlRNWjYzT0p4Y0pKYWcwbWNwYnRvSEd6Z0RpM21ZZ1BGbWtPZGxkNVMvY0M4L2VOWk9wSzl0MzYya2VvN1NrM2ZEUDY1Y3VITHp1NDNwaTVYL21hV2YzeVFPS3MzR0NhSW1XMUdUK2FySnh0UTRhZFE0YzlRNGZkUzRCOVJrazJyY2pWczhZSDRCczhBZmNRQUFBQUFBQUFBQUFBQUFBSGljclZacGN4TkhFSjNWWWNzMlBvSVBFamFCV2NaeWpIWldtTXNJRU1ic1NoYmdIUEtWN0VLT1hVdDI3b3RQL0FiOW1sNlJWSkZ2L0xTOEhoM1lZQ2RWVkNoSy9hYjM3VXozNjU1ZWs5Q1N4RjVZajZUY2ZDbW10alpwWk9kSlNEZHNXbzdpUTluWkN5bFRUUDR1aUlKb3RkUys3VGdrSWhLQnFuV0ZKWUxZOThqU0pPTkRqekphdGlXOWFsSnU2VWwzMlJvUDZxMzY5dFBRVVk3ZENTVTFtNkZENjVFdHFjS29Fa1V5N1pHU05pM0QxVjlKV3VIbks4eDgxUXdsZ3Vna2tzYWJZUXlQNUdmampGWVpyY1oySEVXUlRaWWJSWXBFTXp5SUlvK3lXbUtmWERGQlFQbWdHVkplK1RTaWZJUWZrUlY3bE5NS2NjbDJtdC8zSlQvcEhjNi9KT0o2aTdJbEIvNUFkbVFIZTZjcitTTFMyZ3JqcHAxc1I2R0s4SFI5SjhRam01UHFuK3hSWHRObzRIWkZwaWZOQ0piS1Y1QlkrUWxsOWcvSmF1Rjh5cGM4R3RXU2c1d0lXaTl6WWwveURyUWVSMHlKYXliSWd1Nk9Ub2lnN3BlY29kaGorcmo0NDcxZExCY2hCTWc0bHZXT1NyZ1FSaWxoczVva2JRUTVpSkt5UlpYVWVrZE1uUEk2TGVJdFliOU83ZWhMWjdSSnFEc3hucTJIanEyY3FPUjROS25UVEtaTzdhVG0wWlFHVVVvNkV6em0xd0dVSDlFa3I3YXhtc1RLbzJsc00yTWtrVkNnaFhOcEtvaGxKNVkwQmRFOG10R2J1MkdhYTllaVJabzhVTTg5ZWs5dmJvV2JPejJuN2NBL2EveG5kU3FtZzcwd25aNE95RXA4bW5hNVNkRzZmbnFHZnlieFE5WUNLcEV0TnNPVXhVTzJmZ2ZsNVdOTGpzSnJBMnozbnZNcjZIMzJSTWlrZ2ZnYjhCNHYxU2tGVElXWVZWQUwzYlRXdFN6TDFHcFdpMVJrNnJzaFRTdGYxbWtDVFRrT2ZXTmZ4amorcjVrWlMwd0ozKy9FNmRrUmw1NjU5aVhJTklmY1psMlA1blZxc1YyQXptelA2VFRMOW4yZDV0aCtvTk04Mi9NNkhXRnI2M1NVN1ljNkxiRDlTS2RqYkM5b1FaUHVPd1J5RVlGY3dBWVNnYkIxRUFqYlN3aUVyVUlnYkJjUkNOc2lBbUc3aEVEWWZveEEyQzRqRUxhWHRheWFmaXBwSERzVHl3QkZpQU9qT2U3SVpXNHFWMVBKcFJLdWkwYW5OdVFwY3F1a29uaFcvU3NEL2VLUk42eUJ0VUM2Uk5iOGlrbXVmRlNWNDQrdWFIblR4TGtDamxWL2UzTmNueE1QWmI5WStGUHd2OXFhcXFSWHJIbGtjaFY1STlDVDQwVFhKaFdQcnVueXVhcEgxLytMaWc1cmdYNERwUkFMUlZtV0RiNlprUEJScDlOUURWemxFRE1iTXcvWDlicGx6Yy9oL0pzWUlRdm9mdnczRkJvTDNJTk9XVWxaN1dDdjFkZVBaYm0zQitXd0oxaVNZcjdNNjF2aGk0ek1TdnRGWmlsN1B2SjV3QlV3S3BWaHF3MWNyZUROZXhMemtPbE44a3dRdHhWbGc2U054NWtnc1lGakhqQnZ2cE1nSkV4ZHRZSGFLWnl3Z2J4Z3pDblk3NFJEVkcrVTVYQjdvWDBlalpSL2ExZnN5QmtWVFJENGJmWkcyT3V6VVBKYnJJR0VKNy9VMTBCVklVM0Z1S21BU3lQbGhtcndZVnl0MjBZeVRxQ3ZxTmdOeTdLS0R4OUgzSGRLam1VZytVZ1JxMGRIUDYyOVFwM1V1ZjNLS0c3Zk8vMElna0ZwWXY3MnZwbmlvSlIzdFpKbFZtMERVN2NhbFZQWG1zUEZxdzdkemFQdWU4ZlpKM0xXTk4xMFQ5ejB2cVpWdDRPRHVWa1E3ZHNjbEtWTUxxanJ3dzRicU12TnBkRHFaVnlTM25ZUE1Dd3dvTitoRlJ2L1YvZHgrRHhYcWdxajQwaTluYWdmbzg5aURQSVBPSDlIOVFYbzV6Rk11WWFVNTN1WEU1OXUzTVBaTWwzRlhheWY0dC9BckxYbVp1a2FjRVBURFppSHJGb2R1c29OZktjR09qM1MzSTcwRVBDeDdncnhBR0FUd0dMd2llNWF4dk1wZ1BGOHhod2Y0SFBtTUdneWg4RVdjeGhzTTJjTllJYzVESGFadzJDUE9ReStZTTQ2d0pmTVlSQXloMEhFSEFaUG1CTUFQR1VPZzYrWXcrQnI1akQ0aGpuM0FiNWxEb09ZT1F3UzVqRFkxM1JyS0hPTEYzUVhxRzFRRmVqQTlCTVc5N0E0MUZRWnNyL2poV0YvYnhDemZ6Q0lxVDlxdWoyay9zUUxRLzNaSUtiK1loQlRmOVYwWjBqOWpSZUcrcnRCVFAzRElLWSsweS9HY3BuQlgwYStTNFVEeWk0Mm4vUDN4UHNId2hwQXRnQUJBQUgvL3dBUGVKeUZsTTl2RTBjVXgrZk5aSGNUaDloWnZONEZRVW1jQ0M5U0NLN0lqNVVBTllrakZac0RhM05DSE5HS0grRkFTVGdnQk41MXlBSDFRbVN0SUVLUm1rdXJYaW8xYWt1eUVRZ091ZGpjTEE1VlFZUWVpaEIvQWlJTGIyWnRmaW1vbDNremI5NThQOS9abVZsQ0NYbjNoTzJncjRsTXVrajdYekdsamREQkFVaXJwbUphWUNoR1dqWGdHUnh4cXM1Q3VPUXNYQTNYSGZvNlhMKzI0RlREWHpBTFI2NFNRcmpPSXB0anZVMmRyZzRKVU1jeWhSQUlHV3R4Q3ZiaENqWjM5MXo0anpOZmRjSy9weFlkZW4vZWdjeTV1NlFOTlg1aXQ5ZzNRa01qdTBqWGVFeFBiZS9lcGxCb0d4ellhNmxwQzAwcGhtSXFhbE1UaEZHVGRidmhzdWZaWWFQaUZjc2UySlVLSDlQcnJtZTcza1V2L0gzV3Rla0IxeTE2RmJBM2I3aXpVTVRwQStFeTFydnUvN01WTlkxY1FMNWhxUkR0QzVDUFg0ZytRcDdyMm04Ym5tdVhCUmY1TG14NDN2R3ltK2FraWsyemxiSmRScE5oYjRXN21hVlpYSVNweXRic1hVWXkwZFVoVTdIdlZML1k5OGdRdDJBT3BYRExUREg2Und5TEhjMXY1RmZ0emNjaXdFc1JObFo1c1BJdjhvRU5kNklaUllUd1JvRFpWYkkxYzJkSzYyNHhXekRjYmdLWUphREFpWVpDYjBiTW0vZnNsUUk4LzBIUTZNTVhoUlY3NVNUMkE1dGVXYkh2ZmY4Y3d0NkFqMm4yM3p6V2t1WTlXV2FuV0NmWlFiN0ZlektZMXRyNWZkTVNZT2lhclBUM1pjeVI0ZStnQjZ6Umd6MmdRMHFMUXhZVXVTOExtZUV4TURQRG85YlFRUjErbG9KaVRFdThTV2lnNys0c0JuSmNIcGZnVDYyM285bVgxa3BpWGdlcFhRcEtzVDFZR01keXVnMEw1REVabm40eWlNdk5pcGJIZ0oxZ2pCakM0LzZlcFBDWTB1VE1GMVlPQTFwcGVoK0F2b3cxTWp5cWYvRCtHem9yQlZLM05DYkxRYkVUOFhFMC9yR3I3WW1WdUZrMGN3akh0S08wSmtualdJOFZ1M1Vkeml0eTFJdC9NaXZPRGsxZW9QN245MFdOeHhSRzhPeVNablI0aHJnaWUwMXhlR3AwaWRZdUZScjVtY25KbVh5akFHY21lT0NKQ2JoenVkQW96UHlSbThiTWZ4TXptQXgveFdZNjErTE4wYVd2OFF5aG5ZeEFFR0hWeUVOdW1zdm5jb0ozNnlPUExsMCtobkh6d1NRM1JGVXhFNTdHNXRKazZ3eW0yQ3QyNHNQL2hQSC9VaXA2Y2Nuby9mbjErWm8vVWZNaDhPdTNzYW5OMTMzNlk5MFBqL3ExTFRSaWlreTV4bWVQbDYrdTF1QnN0VjZ0K1czMUtsOExiN2dZWnNoN2Z3Tk5yZ0I0bkdOZ1pHQmdBT0k5ZmdLMThmdzJYeG00bVY4QVJSZ3VTeHRiSWVqL1djd3ZtSU9BWEE0R0pwQW9BQlIxQ1poNG5HTmdaR0JnRHZxZkJTUmZNREQ4L3c4a2dTSW9nQmNBaDlZRm9nQUFBSGljWTM3QndNQXNBY1F0UUx3QURVZENNRk0yRUlQa1gwQXdBTU5EQjVzQUFBQUFBQUFrQUVZQWhBRENBUHdCT0FHS0Fkb0NFZ0pNQW00Q2tBQUJBQUFBRFFBeEFBUUFBQUFBQUFJQUFBQVFBSE1BQUFBZUMzQUFBQUFBZUp4MWtNdE93a0FVaHYrUml3cUpHazNjT2lzRE1aWkxJZ3NTRWhJTWJIUkRERnRUU21sTFNvZE1CeEpldzNmd1lYd0puOFdmZGpBR1lwdnBmT2ViTTJkT0I4QTF2aUdRUDA4Y09RdWNNY3I1Qktmb1dTN1FQMXN1a2w4c2wxREZtK1V5L2J2bENoNFFXSzdpQmgrc0lJcm5qQmI0dEN4d0pTNHRuK0JDM0ZrdTBEOWFMcEo3bGt1NEZhK1d5L1NlNVFvbUlyVmN4YjM0R3FqVlZrZEJhR1J0VUpmdFpxc2pwMXVwcUtMRWphVzdOcUhTcWV6THVVcU1IOGZLOGRSeXoyTS9XTWV1M29mN2VlTHJORktKYkRuTnZScjVpYTlkNDg5MjFkTk4wRFptTHVkYUxlWFFac2lWVmd2Zk0wNW96S3JiYVB3OUR3TW9yTENGUnNTckNtRWdVYU90YzI2amlSWTZwQ2t6SkRQenJBZ0pYTVEwTHRiY0VXWXJLZU0reDV4UlF1c3pJeVk3OFBoZEh2a3hLZUQrbUZYMDBlcGhQQ0h0em9neUw5bVh3KzRPczBha0pNdDBNenY3N1QzRmhxZTFhUTEzN2JyVVdWY1N3NE1ha3ZleFcxdlFlUFJPZGl1R3Rvc0czMy8rN3dmamFZUlBBSGljYmN3N0NvQXdFQVRRSGYrL1JDK1NJb2tYc2xBUTFzWm80K2tWdE1pQ1V3MzdtS1dFM2pUMEg0VUVLVExrS0ZDaVFvMEdMVG9vYUdyM09helhiSmFUV1g4OWJCT3pzU29pWTdzWSs1Z21QZ2F4ZkE1aTYrUmpKOUJMOUFKSGlTUFJEVm9MUHNVQWVKeGo4TjdCY0NJb1lpTWpZMS9rQnNhZEhBd2NETWtGR3hsWW5UWXlNR2hCYUE0VWVpY0RBd01uTW91WndXV2pDbU5IWU1RR2g0NklqY3dwTGh2VlFMeGRIQTBNakN3T0hja2hFU0Fsa1VDd2tZRkhhd2ZqLzlZTkxMMGJtUmhjQUFmVElyZ0FBQUE9XCIpIGZvcm1hdChcIndvZmZcIiksIHVybChcImRhdGE6YXBwbGljYXRpb24vb2N0ZXQtc3RyZWFtO2Jhc2U2NCxBQUVBQUFBUEFJQUFBd0J3UjFOVlFyRCtzKzBBQUFEOEFBQUFRazlUTHpJK0lFa0ZBQUFCUUFBQUFGWmpiV0Z3cWJYdEt3QUFBWmdBQUFJS1kzWjBJQUFBQUFBQUFBMVlBQUFBQ21ad1oyMklrSkJaQUFBTlpBQUFDM0JuWVhOd0FBQUFFQUFBRFZBQUFBQUlaMng1WmtGLzRmRUFBQU9rQUFBRklHaGxZV1FKUGFvVkFBQUl4QUFBQURab2FHVmhCejBEWHdBQUNQd0FBQUFrYUcxMGVDeDFBQUFBQUFrZ0FBQUFOR3h2WTJFSHJnajJBQUFKVkFBQUFCeHRZWGh3QUtNTHN3QUFDWEFBQUFBZ2JtRnRaY3lkSEI0QUFBbVFBQUFDelhCdmMzUXQ3UlBGQUFBTVlBQUFBTzF3Y21WdzNXc0RoUUFBR05RQUFBQjdBQUVBQUFBS0FCNEFMQUFCUkVaTVZBQUlBQVFBQUFBQUFBQUFBUUFBQUFGc2FXZGhBQWdBQUFBQkFBQUFBUUFFQUFRQUFBQUJBQWdBQVFBR0FBQUFBUUFBQUFBQUFRTnJBWkFBQlFBQUFub0N2QUFBQUl3Q2VnSzhBQUFCNEFBeEFRSUFBQUlBQlFNQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFVR1pGWkFCQTZBRG9Dd05TLzJvQVdnTlNBSllBQUFBQkFBQUFBQUFBQUFBQUJRQUFBQU1BQUFBc0FBQUFCQUFBQVdvQUFRQUFBQUFBWkFBREFBRUFBQUFzQUFNQUNnQUFBV29BQkFBNEFBQUFCQUFFQUFFQUFPZ0wvLzhBQU9nQS8vOEFBQUFCQUFRQUFBQUJBQUlBQXdBRUFBVUFCZ0FIQUFnQUNRQUtBQXNBREFBQUFRWUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQURBQUFBQUFBb0FBQUFBQUFBQUFNQUFEb0FBQUE2QUFBQUFBQkFBRG9BUUFBNkFFQUFBQUNBQURvQWdBQTZBSUFBQUFEQUFEb0F3QUE2QU1BQUFBRUFBRG9CQUFBNkFRQUFBQUZBQURvQlFBQTZBVUFBQUFHQUFEb0JnQUE2QVlBQUFBSEFBRG9Cd0FBNkFjQUFBQUlBQURvQ0FBQTZBZ0FBQUFKQUFEb0NRQUE2QWtBQUFBS0FBRG9DZ0FBNkFvQUFBQUxBQURvQ3dBQTZBc0FBQUFNQUFBQUFnQUEvOVFER0FMcUFBWUFEUUFJdFFvSEJBQUNMU3NCSVJFbkJ5YzNBUmNIRnlFUkZ3SGNBVHhra21TWS9xQmttSHIreEdRQzZ2N0VmSmhra3Y2bVpKSmtBVHg2QUFBQUFnQUEvNXdEaEFNZ0FBWUFEUUFJdFEwSkJRRUNMU3MzSnlFUkp3Y25BUWNYSVJFWE41eHFBU2hra21RRGhKcG8vdHBra0pKay90aHFuR1FDdkpCa0FTWm9tZ0FFQUFEL253T1BBeDBBQmdBTkFCUUFHd0FOUUFvV0ZSSVFEQWNDQVFRdEt5VTNFU0UzSnpjQkJ4Y0hKd2NSQVFjWElSRVhOd0VSSndjbk55Y0RFSC8rc1lDQVQvN1NnWUJRZm9BQlQ0R0IvckdBZ0FKOWY0QlBmNEJ2Z1A2d2duOVBBaTUvZjFDQWdRRlAvWU4vZ2dGUWdJQUNMdjZ4Z1lCUWYzOEFCQUFBLzU4RGp3TWRBQVlBRFFBVUFCc0FEVUFLRmhVU0VBd0hBZ0VFTFNzbEJ4RWhCeGNIQVRjbk54YzNFUUUzSnlFUkp3Y0JFUmMzRndjWEFzQ0FBVTkvZjAvODBvQi9UMzZCL3JHQWdBRlBnWDhCMzRDQVRuNS9JWUlCVUlDQlR3SXZnWDVQZm4vK3NmNGdnWUQrc0lLQ0FpOEJUMzkrVDM2QkFBUUFBUCtmQTQ4REhRQUdBQTBBRkFBYkFBMUFDaHNYRXc4TkNRWUNCQzBySlRjVkl6Y25Od0VITlRNSEZ3Y0JKek1WSndjbkF3Y1hJelVYTndOSFNOOUl1RS85eTBqZlNMaFBBZVpJMzBpNFQ5KzRTTjlJdURkSTRFaTVUd0dYU045SXVFOEJCMGpmU0xoUC9vTzVTT0JJdUFBQUJBQUEvNThEandNZEFBWUFEUUFVQUJzQURVQUtHUlVVRUEwSkJnSUVMU3NsQnpVekJ4Y0hBU2MzRnpjUEFRTTNKek1WSndjQkl6VVhOeGNIQW9oSTMwaTRULzJJdGsrM1NRSGVjTGhJMzBpNEFyL2dTYmRQdDFoSTMwaTVUd0o0dDArMlJ0NEIvaUM1U045SXVRSXY0VWkyVDdjQUFBQUFBZ0FBLzdFRFdnTUxBQmdBTUFBSXRTMGhGQWdDTFNzQkZBOEJGeFlVQmdjaklpWW5OVFErQVI4Qk56WXlId0VXQVJVVURnRXZBUWNHSWk4QkpqUS9BU2NtTkRZM016SVdBYVVGdVZBS0ZBLzZEeFFCRmh3TFVMa0dEZ1pBQlFHMEZDQUpVTGtHRGdaQUJRVzZVUW9VRC9vUEZnRUZDQVc1VVFvZUZBRVdEdm9QRkFJTVVMa0dCajhHQWR2NkR4UUNERkM1QmdZL0JnNEd1VkVLSGhRQkZnQUFBQUFDQUFEL3VRTlNBd01BRndBd0FBaTFMQjhUQ0FJdEt3RVZGQVltTHdFSEJpSXZBU1kwUHdFbkpqUTJPd0V5RmdFVUR3RVhGaFFHS3dFaUpqYzFORFlXSHdFM05qSWZBUllCclJZY0MxRzVCUkFGUHdZR3VWQUxGZzc2RGhZQnBRYTVVQXNXRHZvT0ZnRVVIZ3BSdVFZT0JqOEdBVHI2RGhZQ0NWRzZCUVZBQlJBRnVWQUxIQllXQVdrSEJybFFDeHdXRmc3NkRoWUNDVkc2QlFWQUJRQUFCQUFBQUFBQ2F3S1VBQVlBRFFBVUFCc0FEVUFLR3hjUkRnb0hBd0FFTFNzVEp3YzFNd2NYQnhjSEZ5TTFGeVVuTnljekZTY1JOeFVqTnljM3VuRkowa2h6UTBOelNOSkpBV1pCYzBqU1NVblNTSE5CQVpkMFNkSkpjN05DY2tqU1NlVkJjMG5TU1A2b1NkSklja0lBQUFRQUFBQUFBb1FDb0FBR0FBMEFGQUFiQUExQUNoc1hFUTRLQndNQUJDMHJFeGMzRlNNM0p4TW5OeWN6RlNjQkZ3Y1hJelVYRVFjMU13Y1hCMEp5U2RKSWMwSkNjMGpTU1FHUFFYTkkwa2xKMGtoelFRS2dkRXJTU0hQOXZVTnhTZEpJQWhGQmMwalNTZjVpU05KSmNVTUFBQUFBQWdBQS8yb0Q2QU5TQUFZQURRQUl0UTBKQXdBQ0xTc1ZFUmMzRndjWEV6Y25JUkVuQjVUS2tNbVVRY21VQWJtVXlwWUJ1WlRKa01xVUFvcktsUDVIbE1rQUFBQUNBQUQvYWdQb0ExSUFCZ0FOQUFpMUNnY0dBZ0l0S3hVM0p5RVJKd2NCRVJjM0Z3Y1h5WlFCdVpMSkFXZVN5cExKbEFUS2t2NUhsTWtCK2dHNWxNbVN5cElBQUFFQUFBQUJBQUM4VGhCOVh3ODg5UUFMQStnQUFBQUEweHN6T2dBQUFBRFRHek02QUFEL2FnUG9BMUlBQUFBSUFBSUFBQUFBQUFBQUFRQUFBMUwvYWdBQUErZ0FBUC8vQStnQUFRQUFBQUFBQUFBQUFBQUFBQUFBQUEwRDZBQUFBeGdBQUFPRUFBQURvQUFBQTZBQUFBT2dBQUFEb0FBQUExa0FBQU5aQUFBQ2F3QUFBb1FBQUFQb0FBQUQ2QUFBQUFBQUFBQWtBRVlBaEFEQ0FQd0JPQUdLQWRvQ0VnSk1BbTRDa0FBQkFBQUFEUUF4QUFRQUFBQUFBQUlBQUFBUUFITUFBQUFlQzNBQUFBQUFBQUFBRWdEZUFBRUFBQUFBQUFBQU5RQUFBQUVBQUFBQUFBRUFDQUExQUFFQUFBQUFBQUlBQndBOUFBRUFBQUFBQUFNQUNBQkVBQUVBQUFBQUFBUUFDQUJNQUFFQUFBQUFBQVVBQ3dCVUFBRUFBQUFBQUFZQUNBQmZBQUVBQUFBQUFBb0FLd0JuQUFFQUFBQUFBQXNBRXdDU0FBTUFBUVFKQUFBQWFnQ2xBQU1BQVFRSkFBRUFFQUVQQUFNQUFRUUpBQUlBRGdFZkFBTUFBUVFKQUFNQUVBRXRBQU1BQVFRSkFBUUFFQUU5QUFNQUFRUUpBQVVBRmdGTkFBTUFBUVFKQUFZQUVBRmpBQU1BQVFRSkFBb0FWZ0Z6QUFNQUFRUUpBQXNBSmdISlEyOXdlWEpwWjJoMElDaERLU0F5TURFMklHSjVJRzl5YVdkcGJtRnNJR0YxZEdodmNuTWdRQ0JtYjI1MFpXeHNieTVqYjIxbWIyNTBaV3hzYjFKbFozVnNZWEptYjI1MFpXeHNiMlp2Ym5SbGJHeHZWbVZ5YzJsdmJpQXhMakJtYjI1MFpXeHNiMGRsYm1WeVlYUmxaQ0JpZVNCemRtY3lkSFJtSUdaeWIyMGdSbTl1ZEdWc2JHOGdjSEp2YW1WamRDNW9kSFJ3T2k4dlptOXVkR1ZzYkc4dVkyOXRBRU1BYndCd0FIa0FjZ0JwQUdjQWFBQjBBQ0FBS0FCREFDa0FJQUF5QURBQU1RQTJBQ0FBWWdCNUFDQUFid0J5QUdrQVp3QnBBRzRBWVFCc0FDQUFZUUIxQUhRQWFBQnZBSElBY3dBZ0FFQUFJQUJtQUc4QWJnQjBBR1VBYkFCc0FHOEFMZ0JqQUc4QWJRQm1BRzhBYmdCMEFHVUFiQUJzQUc4QVVnQmxBR2NBZFFCc0FHRUFjZ0JtQUc4QWJnQjBBR1VBYkFCc0FHOEFaZ0J2QUc0QWRBQmxBR3dBYkFCdkFGWUFaUUJ5QUhNQWFRQnZBRzRBSUFBeEFDNEFNQUJtQUc4QWJnQjBBR1VBYkFCc0FHOEFSd0JsQUc0QVpRQnlBR0VBZEFCbEFHUUFJQUJpQUhrQUlBQnpBSFlBWndBeUFIUUFkQUJtQUNBQVpnQnlBRzhBYlFBZ0FFWUFid0J1QUhRQVpRQnNBR3dBYndBZ0FIQUFjZ0J2QUdvQVpRQmpBSFFBTGdCb0FIUUFkQUJ3QURvQUx3QXZBR1lBYndCdUFIUUFaUUJzQUd3QWJ3QXVBR01BYndCdEFBQUFBQUlBQUFBQUFBQUFDZ0FBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQURRRUNBUU1CQkFFRkFRWUJCd0VJQVFrQkNnRUxBUXdCRFFFT0FBdHlaWE5wZW1VdFpuVnNiQTV5WlhOcGVtVXRjMjFoYkd3dE1RMXlaWE5wZW1VdFpuVnNiQzB4REhKbGMybDZaUzF6YldGc2JBOXlaWE5wZW1VdFpuVnNiQzFoYkhRUWNtVnphWHBsTFhOdFlXeHNMV0ZzZEExeVpYTnBlbVV0Wm5Wc2JDMHlEbkpsYzJsNlpTMXpiV0ZzYkMweURYSmxjMmw2WlMxbWRXeHNMVE1PY21WemFYcGxMWE50WVd4c0xUTU5jbVZ6YVhwbExXWjFiR3d0TkE1eVpYTnBlbVV0YzIxaGJHd3ROQUFBQUFBQUFBRUFBZi8vQUE4QUFBQUFBQUFBQUFBQUFBQ3dBQ3dnc0FCVldFVlpJQ0JMdUFBT1VVdXdCbE5hV0xBMEc3QW9XV0JtSUlwVldMQUNKV0c1Q0FBSUFHTmpJMkliSVNHd0FGbXdBRU1qUkxJQUFRQkRZRUl0c0FFc3NDQmdaaTJ3QWl3Z1pDQ3d3RkN3QkNaYXNpZ0JDa05GWTBWU1cxZ2hJeUViaWxnZ3NGQlFXQ0d3UUZrYklMQTRVRmdoc0RoWldTQ3hBUXBEUldORllXU3dLRkJZSWJFQkNrTkZZMFVnc0RCUVdDR3dNRmtiSUxEQVVGZ2daaUNLaW1FZ3NBcFFXR0FiSUxBZ1VGZ2hzQXBnR3lDd05sQllJYkEyWUJ0Z1dWbFpHN0FCSzFsWkk3QUFVRmhsV1ZrdHNBTXNJRVVnc0FRbFlXUWdzQVZEVUZpd0JTTkNzQVlqUWhzaElWbXdBV0F0c0FRc0l5RWpJU0Jrc1FWaVFpQ3dCaU5Dc1FFS1EwVmpzUUVLUTdBQVlFVmpzQU1xSVNDd0JrTWdpaUNLc0FFcnNUQUZKYkFFSmxGWVlGQWJZVkpaV0NOWklTQ3dRRk5Zc0FFckd5R3dRRmtqc0FCUVdHVlpMYkFGTExBSFF5dXlBQUlBUTJCQ0xiQUdMTEFISTBJaklMQUFJMEpoc0FKaVpyQUJZN0FCWUxBRktpMndCeXdnSUVVZ3NBdERZN2dFQUdJZ3NBQlFXTEJBWUZsbXNBRmpZRVN3QVdBdHNBZ3NzZ2NMQUVORlFpb2hzZ0FCQUVOZ1FpMndDU3l3QUVNalJMSUFBUUJEWUVJdHNBb3NJQ0JGSUxBQkt5T3dBRU93QkNWZ0lFV0tJMkVnWkNDd0lGQllJYkFBRzdBd1VGaXdJQnV3UUZsWkk3QUFVRmhsV2JBREpTTmhSRVN3QVdBdHNBc3NJQ0JGSUxBQkt5T3dBRU93QkNWZ0lFV0tJMkVnWkxBa1VGaXdBQnV3UUZranNBQlFXR1Zac0FNbEkyRkVSTEFCWUMyd0RDd2dzQUFqUXJJTENnTkZXQ0ViSXlGWktpRXRzQTBzc1FJQ1JiQmtZVVF0c0E0c3NBRmdJQ0N3REVOS3NBQlFXQ0N3RENOQ1diQU5RMHF3QUZKWUlMQU5JMEpaTGJBUExDQ3dFR0ptc0FGaklMZ0VBR09LSTJHd0RrTmdJSXBnSUxBT0kwSWpMYkFRTEV0VVdMRUVaRVJaSkxBTlpTTjRMYkFSTEV0UldFdFRXTEVFWkVSWkd5RlpKTEFUWlNONExiQVNMTEVBRDBOVldMRVBEME93QVdGQ3NBOHJXYkFBUTdBQ0pVS3hEQUlsUXJFTkFpVkNzQUVXSXlDd0F5VlFXTEVCQUVOZ3NBUWxRb3FLSUlvalliQU9LaUVqc0FGaElJb2pZYkFPS2lFYnNRRUFRMkN3QWlWQ3NBSWxZYkFPS2lGWnNBeERSN0FOUTBkZ3NBSmlJTEFBVUZpd1FHQlpackFCWXlDd0MwTmp1QVFBWWlDd0FGQllzRUJnV1dhd0FXTmdzUUFBRXlORXNBRkRzQUErc2dFQkFVTmdRaTJ3RXl3QXNRQUNSVlJZc0E4alFpQkZzQXNqUXJBS0k3QUFZRUlnWUxBQlliVVFFQUVBRGdCQ1FvcGdzUklHSzdCeUt4c2lXUzJ3RkN5eEFCTXJMYkFWTExFQkV5c3RzQllzc1FJVEt5MndGeXl4QXhNckxiQVlMTEVFRXlzdHNCa3NzUVVUS3kyd0dpeXhCaE1yTGJBYkxMRUhFeXN0c0J3c3NRZ1RLeTJ3SFN5eENSTXJMYkFlTEFDd0RTdXhBQUpGVkZpd0R5TkNJRVd3Q3lOQ3NBb2pzQUJnUWlCZ3NBRmh0UkFRQVFBT0FFSkNpbUN4RWdZcnNISXJHeUpaTGJBZkxMRUFIaXN0c0NBc3NRRWVLeTJ3SVN5eEFoNHJMYkFpTExFREhpc3RzQ01zc1FRZUt5MndKQ3l4QlI0ckxiQWxMTEVHSGlzdHNDWXNzUWNlS3kyd0p5eXhDQjRyTGJBb0xMRUpIaXN0c0Nrc0lEeXdBV0F0c0Nvc0lHQ3dFR0FnUXlPd0FXQkRzQUlsWWJBQllMQXBLaUV0c0Nzc3NDb3JzQ29xTGJBc0xDQWdSeUFnc0F0RFk3Z0VBR0lnc0FCUVdMQkFZRmxtc0FGallDTmhPQ01naWxWWUlFY2dJTEFMUTJPNEJBQmlJTEFBVUZpd1FHQlpackFCWTJBallUZ2JJVmt0c0Mwc0FMRUFBa1ZVV0xBQkZyQXNLckFCRlRBYklsa3RzQzRzQUxBTks3RUFBa1ZVV0xBQkZyQXNLckFCRlRBYklsa3RzQzhzSURXd0FXQXRzREFzQUxBQlJXTzRCQUJpSUxBQVVGaXdRR0JaWnJBQlk3QUJLN0FMUTJPNEJBQmlJTEFBVUZpd1FHQlpackFCWTdBQks3QUFGclFBQUFBQUFFUStJeml4THdFVktpMndNU3dnUENCSElMQUxRMk80QkFCaUlMQUFVRml3UUdCWlpyQUJZMkN3QUVOaE9DMndNaXd1Rnp3dHNETXNJRHdnUnlDd0MwTmp1QVFBWWlDd0FGQllzRUJnV1dhd0FXTmdzQUJEWWJBQlEyTTRMYkEwTExFQ0FCWWxJQzRnUjdBQUkwS3dBaVZKaW9wSEkwY2pZU0JZWWhzaFdiQUJJMEt5TXdFQkZSUXFMYkExTExBQUZyQUVKYkFFSlVjalJ5TmhzQWxESzJXS0xpTWdJRHlLT0Myd05peXdBQmF3QkNXd0JDVWdMa2NqUnlOaElMQUVJMEt3Q1VNcklMQmdVRmdnc0VCUldMTUNJQU1nRzdNQ0pnTWFXVUpDSXlDd0NFTWdpaU5ISTBjallTTkdZTEFFUTdBQ1lpQ3dBRkJZc0VCZ1dXYXdBV05nSUxBQkt5Q0tpbUVnc0FKRFlHUWpzQU5EWVdSUVdMQUNRMkVic0FORFlGbXdBeVd3QW1JZ3NBQlFXTEJBWUZsbXNBRmpZU01nSUxBRUppTkdZVGdiSTdBSVEwYXdBaVd3Q0VOSEkwY2pZV0Fnc0FSRHNBSmlJTEFBVUZpd1FHQlpackFCWTJBaklMQUJLeU93QkVOZ3NBRXJzQVVsWWJBRkpiQUNZaUN3QUZCWXNFQmdXV2F3QVdPd0JDWmhJTEFFSldCa0k3QURKV0JrVUZnaEd5TWhXU01nSUxBRUppTkdZVGhaTGJBM0xMQUFGaUFnSUxBRkppQXVSeU5ISTJFalBEZ3RzRGdzc0FBV0lMQUlJMElnSUNCR0kwZXdBU3NqWVRndHNEa3NzQUFXc0FNbHNBSWxSeU5ISTJHd0FGUllMaUE4SXlFYnNBSWxzQUlsUnlOSEkyRWdzQVVsc0FRbFJ5TkhJMkd3QmlXd0JTVkpzQUlsWWJrSUFBZ0FZMk1qSUZoaUd5RlpZN2dFQUdJZ3NBQlFXTEJBWUZsbXNBRmpZQ011SXlBZ1BJbzRJeUZaTGJBNkxMQUFGaUN3Q0VNZ0xrY2pSeU5oSUdDd0lHQm1zQUppSUxBQVVGaXdRR0JaWnJBQll5TWdJRHlLT0Myd095d2pJQzVHc0FJbFJsSllJRHhaTHJFckFSUXJMYkE4TENNZ0xrYXdBaVZHVUZnZ1BGa3VzU3NCRkNzdHNEMHNJeUF1UnJBQ0pVWlNXQ0E4V1NNZ0xrYXdBaVZHVUZnZ1BGa3VzU3NCRkNzdHNENHNzRFVySXlBdVJyQUNKVVpTV0NBOFdTNnhLd0VVS3kyd1B5eXdOaXVLSUNBOHNBUWpRb280SXlBdVJyQUNKVVpTV0NBOFdTNnhLd0VVSzdBRVF5NndLeXN0c0VBc3NBQVdzQVFsc0FRbUlDNUhJMGNqWWJBSlF5c2pJRHdnTGlNNHNTc0JGQ3N0c0VFc3NRZ0VKVUt3QUJhd0JDV3dCQ1VnTGtjalJ5TmhJTEFFSTBLd0NVTXJJTEJnVUZnZ3NFQlJXTE1DSUFNZ0c3TUNKZ01hV1VKQ0l5QkhzQVJEc0FKaUlMQUFVRml3UUdCWlpyQUJZMkFnc0FFcklJcUtZU0N3QWtOZ1pDT3dBME5oWkZCWXNBSkRZUnV3QTBOZ1diQURKYkFDWWlDd0FGQllzRUJnV1dhd0FXTmhzQUlsUm1FNEl5QThJemdiSVNBZ1JpTkhzQUVySTJFNElWbXhLd0VVS3kyd1FpeXdOU3N1c1NzQkZDc3RzRU1zc0RZcklTTWdJRHl3QkNOQ0l6aXhLd0VVSzdBRVF5NndLeXN0c0VRc3NBQVZJRWV3QUNOQ3NnQUJBUlVVRXk2d01Tb3RzRVVzc0FBVklFZXdBQ05Dc2dBQkFSVVVFeTZ3TVNvdHNFWXNzUUFCRkJPd01pb3RzRWNzc0RRcUxiQklMTEFBRmtVaklDNGdSb29qWVRpeEt3RVVLeTJ3U1N5d0NDTkNzRWdyTGJCS0xMSUFBRUVyTGJCTExMSUFBVUVyTGJCTUxMSUJBRUVyTGJCTkxMSUJBVUVyTGJCT0xMSUFBRUlyTGJCUExMSUFBVUlyTGJCUUxMSUJBRUlyTGJCUkxMSUJBVUlyTGJCU0xMSUFBRDRyTGJCVExMSUFBVDRyTGJCVUxMSUJBRDRyTGJCVkxMSUJBVDRyTGJCV0xMSUFBRUFyTGJCWExMSUFBVUFyTGJCWUxMSUJBRUFyTGJCWkxMSUJBVUFyTGJCYUxMSUFBRU1yTGJCYkxMSUFBVU1yTGJCY0xMSUJBRU1yTGJCZExMSUJBVU1yTGJCZUxMSUFBRDhyTGJCZkxMSUFBVDhyTGJCZ0xMSUJBRDhyTGJCaExMSUJBVDhyTGJCaUxMQTNLeTZ4S3dFVUt5MndZeXl3Tnl1d095c3RzR1Fzc0RjcnNEd3JMYkJsTExBQUZyQTNLN0E5S3kyd1ppeXdPQ3N1c1NzQkZDc3RzR2Nzc0RncnNEc3JMYkJvTExBNEs3QThLeTJ3YVN5d09DdXdQU3N0c0dvc3NEa3JMckVyQVJRckxiQnJMTEE1SzdBN0t5MndiQ3l3T1N1d1BDc3RzRzBzc0RrcnNEMHJMYkJ1TExBNkt5NnhLd0VVS3kyd2J5eXdPaXV3T3lzdHNIQXNzRG9yc0R3ckxiQnhMTEE2SzdBOUt5MndjaXl6Q1FRQ0EwVllJUnNqSVZsQ0s3QUlaYkFESkZCNHNBRVZNQzBBUzdnQXlGSllzUUVCamxtd0Fia0lBQWdBWTNDeEFBVkNzUUFBS3JFQUJVS3hBQWdxc1FBRlFyRUFDQ3F4QUFWQ3VRQUFBQWtxc1FBRlFya0FBQUFKS3JFREFFU3hKQUdJVVZpd1FJaFlzUU5rUkxFbUFZaFJXTG9JZ0FBQkJFQ0lZMVJZc1FNQVJGbFpXVm14QUF3cXVBSC9oYkFFamJFQ0FFUUFcIikgZm9ybWF0KFwidHJ1ZXR5cGVcIik7XG59XG5cbi8qIENvcmUgKi9cbi5NYWdpYzM2MCxcbi5NYWdpYzM2MC1jb250YWluZXIge1xuICBib3JkZXI6IDFweCBzb2xpZCAjZjNmM2YzO1xuICBib3gtc2l6aW5nOiBjb250ZW50LWJveCAhaW1wb3J0YW50O1xufVxuXG4uTWFnaWMzNjAtY29udGFpbmVyIC5NYWdpYzM2MCxcbi5NYWdpYzM2MC1mdWxsc2NyZWVuIC5NYWdpYzM2MCB7XG4gIGJvcmRlcjogMCAhaW1wb3J0YW50O1xufVxuXG4uTWFnaWMzNjAge1xuICBwYWRkaW5nOiAwICFpbXBvcnRhbnQ7XG4gIG91dGxpbmU6IDAgIWltcG9ydGFudDtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICBmb250LXNpemU6IDAgIWltcG9ydGFudDtcbiAgbGluZS1oZWlnaHQ6IDEwMCUgIWltcG9ydGFudDtcbiAgbWF4LXdpZHRoOiAxMDAlO1xufVxuXG4uTWFnaWMzNjAtY29udGFpbmVyIHtcbiAgdGV4dC1hbGlnbjogY2VudGVyICFpbXBvcnRhbnQ7XG4gIG1heC13aWR0aDogMTAwJTtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICB6LWluZGV4OiAxO1xufVxuXG4uTWFnaWMzNjAtY29udGFpbmVyIC5NYWdpYzM2MCB7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jayAhaW1wb3J0YW50O1xuICB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlO1xuICB0b3VjaC1hY3Rpb246IG5vbmU7XG59XG5cbi5NYWdpYzM2MC1jb250YWluZXIgLk1hZ2ljMzYwLm0zNjAtc3Bpbi14IHtcbiAgdG91Y2gtYWN0aW9uOiBwYW4teTtcbn1cblxuLk1hZ2ljMzYwLWNvbnRhaW5lciAuTWFnaWMzNjAubTM2MC1zcGluLXkge1xuICB0b3VjaC1hY3Rpb246IHBhbi14O1xufVxuXG4uTWFnaWMzNjAuZGVza3RvcC56b29tLWluIHtcbiAgY3Vyc29yOiBwb2ludGVyO1xuICBjdXJzb3I6IC13ZWJraXQtem9vbS1pbjtcbiAgY3Vyc29yOiAtbW96LXpvb20taW47XG4gIGN1cnNvcjogem9vbS1pbjtcbn1cblxuLk1hZ2ljMzYwIGltZyB7XG4gIGJvcmRlcjogMCAhaW1wb3J0YW50O1xuICBwYWRkaW5nOiAwICFpbXBvcnRhbnQ7XG4gIG1hcmdpbjogMCAhaW1wb3J0YW50O1xuICBoZWlnaHQ6IGF1dG87XG59XG5cbi5NYWdpYzM2MCA+IGltZyB7XG4gIHdpZHRoOiAxMDAlO1xufVxuXG4vKiBGdWxsc2NyZWVuIGljb25zICovXG5idXR0b24ubTM2MC1pY29uIHtcbiAgY29sb3I6ICNiNGI0YjQgIWltcG9ydGFudDtcbiAgZm9udDogbm9ybWFsIDkwMCAzMHB4LzEgJ21hZ2ljMzYwJyAhaW1wb3J0YW50O1xuICBjdXJzb3I6IHBvaW50ZXI7XG4gIHotaW5kZXg6IDEwMDAwMDAgIWltcG9ydGFudDtcbiAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQgIWltcG9ydGFudDtcbiAgYm9yZGVyOiAxcHggc29saWQgcmdiYSgxODAsIDE4MCwgMTgwLCAwKSAhaW1wb3J0YW50O1xuICBib3JkZXItcmFkaXVzOiAwICFpbXBvcnRhbnQ7XG4gIGJveC1zaGFkb3c6IG5vbmUgIWltcG9ydGFudDtcbiAgcG9zaXRpb246IGFic29sdXRlICFpbXBvcnRhbnQ7XG4gIHRleHQtdHJhbnNmb3JtOiBub25lICFpbXBvcnRhbnQ7XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgc3BlYWs6IG5vbmU7XG4gIHdpZHRoOiA0NHB4ICFpbXBvcnRhbnQ7XG4gIGhlaWdodDogNDRweCAhaW1wb3J0YW50O1xuICBtaW4td2lkdGg6IDAgIWltcG9ydGFudDtcbiAgbWluLWhlaWdodDogMCAhaW1wb3J0YW50O1xuICBtYXgtd2lkdGg6IG5vbmUgIWltcG9ydGFudDtcbiAgbWF4LWhlaWdodDogbm9uZSAhaW1wb3J0YW50O1xuICBtYXJnaW46IDAgIWltcG9ydGFudDtcbiAgcGFkZGluZzogMCAhaW1wb3J0YW50O1xuICBvdXRsaW5lOiAwICFpbXBvcnRhbnQ7XG4gIC13ZWJraXQtZm9udC1zbW9vdGhpbmc6IGFudGlhbGlhc2VkO1xuICAtbW96LW9zeC1mb250LXNtb290aGluZzogZ3JheXNjYWxlO1xufVxuXG5idXR0b24ubTM2MC1pY29uOmhvdmVyLFxuLm1vYmlsZS1tYWdpYyBidXR0b24ubTM2MC1pY29uOmFjdGl2ZSB7XG4gIGNvbG9yOiAjNTU1ICFpbXBvcnRhbnQ7XG4gIGNvbG9yOiByZ2JhKDQ5LCA1MSwgNjEsIDAuNzYpICFpbXBvcnRhbnQ7XG59XG5cbmJ1dHRvbi5tMzYwLWljb246YmVmb3JlIHtcbiAgZGlzcGxheTogaW5saW5lICFpbXBvcnRhbnQ7XG4gIHBvc2l0aW9uOiBzdGF0aWMgIWltcG9ydGFudDtcbiAgY29sb3I6IGluaGVyaXQgIWltcG9ydGFudDtcbiAgZm9udDogaW5oZXJpdCAhaW1wb3J0YW50O1xuICAtd2Via2l0LWZvbnQtc21vb3RoaW5nOiBpbmhlcml0ICFpbXBvcnRhbnQ7XG4gIC1tb3otb3N4LWZvbnQtc21vb3RoaW5nOiBpbmhlcml0ICFpbXBvcnRhbnQ7XG59XG5cbmJ1dHRvbi5tMzYwLWljb24ubTM2MC1pY29uLWZ1bGxzY3JlZW4tb3BlbixcbmJ1dHRvbi5tMzYwLWljb24ubTM2MC1pY29uLWZ1bGxzY3JlZW4tY2xvc2Uge1xuICB0b3A6IDAgIWltcG9ydGFudDtcbiAgcmlnaHQ6IDAgIWltcG9ydGFudDtcbn1cblxuYnV0dG9uLm0zNjAtaWNvbi5tMzYwLWljb24tZnVsbHNjcmVlbi1jbG9zZSB7XG4gIHdpZHRoOiA2MHB4ICFpbXBvcnRhbnQ7XG4gIGhlaWdodDogNjBweCAhaW1wb3J0YW50O1xufVxuXG5idXR0b24ubTM2MC1pY29uLm0zNjAtaWNvbi1mdWxsc2NyZWVuLW9wZW46YmVmb3JlIHtcbiAgY29udGVudDogJ1xcZTgwMCc7XG59XG5cbmJ1dHRvbi5tMzYwLWljb24ubTM2MC1pY29uLWZ1bGxzY3JlZW4tY2xvc2U6YmVmb3JlIHtcbiAgY29udGVudDogJ1xcZTgwMSc7XG59XG5cbi5sdC1pZTktbWFnaWMgYnV0dG9uLm0zNjAtaWNvbiB7XG4gIGJvcmRlcjogMDtcbiAgZmlsdGVyOiBhbHBoYShvcGFjaXR5PTc1KTtcbn1cblxuLmx0LWllOS1tYWdpYyBidXR0b24ubTM2MC1pY29uOmhvdmVyIHtcbiAgZmlsdGVyOiBhbHBoYShvcGFjaXR5PTEwMCk7XG59XG5cbi5NYWdpYzM2MC1mdWxsc2NyZWVuOi13ZWJraXQtZnVsbC1zY3JlZW4ge1xuICB0b3VjaC1hY3Rpb246IG5vbmU7XG59XG5cbi5sdC1pZTctbWFnaWMgLk1hZ2ljMzYwLWNvbnRhaW5lciAuTWFnaWMzNjAge1xuICB3aWR0aDogYXV0byAhaW1wb3J0YW50O1xufVxuXG4uTWFnaWMzNjAtZnVsbHNjcmVlbiB7XG4gIGJhY2tncm91bmQ6ICNmZmY7XG4gIHotaW5kZXg6IDIxNDc0ODM2NDAgIWltcG9ydGFudDtcbn1cblxuLk1hZ2ljMzYwLWZ1bGxzY3JlZW46LXdlYmtpdC1mdWxsLXNjcmVlbiB7XG4gIHdpZHRoOiAxMDAlICFpbXBvcnRhbnQ7XG4gIGhlaWdodDogMTAwJSAhaW1wb3J0YW50O1xuICB0b3A6IDAgIWltcG9ydGFudDtcbiAgbGVmdDogMCAhaW1wb3J0YW50O1xuICAtd2Via2l0LWJhY2tmYWNlLXZpc2liaWxpdHk6IGhpZGRlbiAhaW1wb3J0YW50O1xuICBiYWNrZmFjZS12aXNpYmlsaXR5OiBoaWRkZW4gIWltcG9ydGFudDtcbn1cblxuLk1hZ2ljMzYwLWZ1bGxzY3JlZW46LW1zLWZ1bGxzY3JlZW4ge1xuICB3aWR0aDogMTAwJSAhaW1wb3J0YW50O1xuICBoZWlnaHQ6IDEwMCUgIWltcG9ydGFudDtcbiAgdG9wOiAwICFpbXBvcnRhbnQ7XG4gIGxlZnQ6IDAgIWltcG9ydGFudDtcbn1cblxuLk1hZ2ljMzYwLWZ1bGxzY3JlZW46YmVmb3JlIHtcbiAgY29udGVudDogJyc7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgaGVpZ2h0OiAxMDAlO1xuICB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlO1xufVxuXG4uTWFnaWMzNjAtZnVsbHNjcmVlbiAuTWFnaWMzNjAge1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2sgIWltcG9ydGFudDtcbiAgdmVydGljYWwtYWxpZ246IG1pZGRsZTtcbn1cblxuLk1hZ2ljMzYwLW1lc3NhZ2Uge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjRkZGRkZGO1xuICBiYWNrZ3JvdW5kLWltYWdlOiBub25lO1xuICBib3JkZXI6IDFweCBzb2xpZCAjQUFBQUFBO1xuICBkaXNwbGF5OiBibG9jaztcbiAgZm9udC1zaXplOiAxMHB4O1xuICBjb2xvcjogIzAwMDtcbiAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgcGFkZGluZzogNnB4O1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgdG9wOiA1MCU7XG4gIHdpZHRoOiAzMyU7XG4gIGxlZnQ6IDMzJTtcbiAgei1pbmRleDogMTAwO1xuICBib3gtc2hhZG93OiAwIDAgMTBweCAjMDAwO1xuICBib3JkZXItY29sbGFwc2U6IHNlcGFyYXRlO1xuICBib3JkZXItcmFkaXVzOiAxNXB4O1xufVxuXG4uTWFnaWMzNjAtZnVsbHNjcmVlbiAuTWFnaWMzNjAtbWVzc2FnZSB7XG4gIGZvbnQtc2l6ZTogMThweDtcbiAgYmFja2dyb3VuZC1jb2xvcjogIzMxMzMzRDtcbiAgYmFja2dyb3VuZC1jb2xvcjogcmdiYSg0OSwgNTEsIDYxLCAwLjc2KTtcbiAgYm9yZGVyLWNvbG9yOiAjY2NjO1xuICBjb2xvcjogI2ZmZjtcbiAgdG9wOiAxNXB4O1xufVxuXG4vKipcbiAqIEhpbnQgJiBMb2FkZXJcbiAqL1xuLm0zNjAtaGludC1tZXNzYWdlLFxuLm0zNjAtbG9hZGVyIHtcbiAgYmFja2dyb3VuZDogcmdiYSg0OSwgNTEsIDYxLCAwLjc2KTtcbiAgY29sb3I6ICNmZmY7XG4gIGZvbnQ6IG5vcm1hbCAxNHB4LzEuMmVtICdMdWNpZGEgR3JhbmRlJywgJ0x1Y2lkYSBTYW5zIFVuaWNvZGUnLCBWZXJkYW5hLCAnSGVsdmV0aWNhIE5ldWUnLCBBcmlhbCwgSGVsdmV0aWNhLCBzYW5zLXNlcmlmO1xuICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG59XG5cbi5tMzYwLWhpbnQsXG4ubTM2MC1sb2FkZXIge1xuICBkaXJlY3Rpb246IGx0cjtcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIG1hcmdpbjogMDtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB6LWluZGV4OiAxMDAwO1xuICBwb2ludGVyLWV2ZW50czogbm9uZTtcbiAgLXdlYmtpdC1mb250LXNtb290aGluZzogYW50aWFsaWFzZWQ7XG4gIC1tb3otb3N4LWZvbnQtc21vb3RoaW5nOiBncmF5c2NhbGU7XG4gIC13ZWJraXQtdHJhbnNpdGlvbjogb3BhY2l0eSAwLjI1cyBlYXNlO1xuICB0cmFuc2l0aW9uOiBvcGFjaXR5IDAuMjVzIGVhc2U7XG59XG5cbi5tMzYwLWhpbnQge1xuICBib3R0b206IDhweDtcbiAgbGVmdDogMDtcbiAgcmlnaHQ6IDA7XG4gIHBhZGRpbmc6IDAgMTAlO1xuICAtd2Via2l0LXRyYW5zaXRpb246IG9wYWNpdHkgMC4yNXMgZWFzZSwgei1pbmRleCAwLjI1cyBlYXNlO1xuICB0cmFuc2l0aW9uOiBvcGFjaXR5IDAuMjVzIGVhc2UsIHotaW5kZXggMC4yNXMgZWFzZTtcbn1cblxuLm0zNjAtaGludC1tZXNzYWdlIHtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICBib3JkZXItcmFkaXVzOiAyZW07XG4gIHBhZGRpbmc6IC4zZW0gMS41ZW07XG4gIGZvbnQtc2l6ZTogMTRweDtcbiAgbGluZS1oZWlnaHQ6IDEuNTtcbn1cblxuLm0zNjAtaGludC1tZXNzYWdlOmJlZm9yZSB7XG4gIGNvbnRlbnQ6ICcnO1xuICBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoXCJkYXRhOmltYWdlL3BuZztiYXNlNjQsaVZCT1J3MEtHZ29BQUFBTlNVaEVVZ0FBQUhnQUFBQXFDQVlBQUFCNElwOHVBQUFBR1hSRldIUlRiMlowZDJGeVpRQkJaRzlpWlNCSmJXRm5aVkpsWVdSNWNjbGxQQUFBQTJScFZGaDBXRTFNT21OdmJTNWhaRzlpWlM1NGJYQUFBQUFBQUR3L2VIQmhZMnRsZENCaVpXZHBiajBpNzd1L0lpQnBaRDBpVnpWTk1FMXdRMlZvYVVoNmNtVlRlazVVWTNwcll6bGtJajgrSUR4NE9uaHRjRzFsZEdFZ2VHMXNibk02ZUQwaVlXUnZZbVU2Ym5NNmJXVjBZUzhpSUhnNmVHMXdkR3M5SWtGa2IySmxJRmhOVUNCRGIzSmxJRFV1TUMxak1EWXdJRFl4TGpFek5EYzNOeXdnTWpBeE1DOHdNaTh4TWkweE56b3pNam93TUNBZ0lDQWdJQ0FnSWo0Z1BISmtaanBTUkVZZ2VHMXNibk02Y21SbVBTSm9kSFJ3T2k4dmQzZDNMbmN6TG05eVp5OHhPVGs1THpBeUx6SXlMWEprWmkxemVXNTBZWGd0Ym5NaklqNGdQSEprWmpwRVpYTmpjbWx3ZEdsdmJpQnlaR1k2WVdKdmRYUTlJaUlnZUcxc2JuTTZlRzF3VFUwOUltaDBkSEE2THk5dWN5NWhaRzlpWlM1amIyMHZlR0Z3THpFdU1DOXRiUzhpSUhodGJHNXpPbk4wVW1WbVBTSm9kSFJ3T2k4dmJuTXVZV1J2WW1VdVkyOXRMM2hoY0M4eExqQXZjMVI1Y0dVdlVtVnpiM1Z5WTJWU1pXWWpJaUI0Yld4dWN6cDRiWEE5SW1oMGRIQTZMeTl1Y3k1aFpHOWlaUzVqYjIwdmVHRndMekV1TUM4aUlIaHRjRTFOT2s5eWFXZHBibUZzUkc5amRXMWxiblJKUkQwaWVHMXdMbVJwWkRwR09UQTFNMEUzUWpBNFF6ZEZNekV4T1RVeFFqaENOemN3TURoRFFqTXdPQ0lnZUcxd1RVMDZSRzlqZFcxbGJuUkpSRDBpZUcxd0xtUnBaRG94UWpoRE9ETXpOa00zTUVJeE1VVXpRa016TkVKQ1F6STJPVUZHTVVOQ1FTSWdlRzF3VFUwNlNXNXpkR0Z1WTJWSlJEMGllRzF3TG1scFpEb3hRamhET0RNek5VTTNNRUl4TVVVelFrTXpORUpDUXpJMk9VRkdNVU5DUVNJZ2VHMXdPa055WldGMGIzSlViMjlzUFNKQlpHOWlaU0JRYUc5MGIzTm9iM0FnUTFNMUlGZHBibVJ2ZDNNaVBpQThlRzF3VFUwNlJHVnlhWFpsWkVaeWIyMGdjM1JTWldZNmFXNXpkR0Z1WTJWSlJEMGllRzF3TG1scFpEcEdRVEExTTBFM1FqQTRRemRGTXpFeE9UVXhRamhDTnpjd01EaERRak13T0NJZ2MzUlNaV1k2Wkc5amRXMWxiblJKUkQwaWVHMXdMbVJwWkRwR09UQTFNMEUzUWpBNFF6ZEZNekV4T1RVeFFqaENOemN3TURoRFFqTXdPQ0l2UGlBOEwzSmtaanBFWlhOamNtbHdkR2x2Ymo0Z1BDOXlaR1k2VWtSR1BpQThMM2c2ZUcxd2JXVjBZVDRnUEQ5NGNHRmphMlYwSUdWdVpEMGljaUkvUHE2bU5jSUFBQXFpU1VSQlZIamE3Rng5YUZYbkdiL25mbi9rZmllMlNxcXBDOXVncS9ZRG5HV0YybmFzbWo4cU9QOXdoZW1Hb3hRSGxveDJLT3l2K3JFd2tPNFRKbU1RS2FUVUJxbHRzT29pZ1JCYVdVaU5kakZ6bWRGWWpTUjNKa1pqa3B1UGUvZjhUcDlYM3A2ZWMrODU5OXdidDV2N3dzdjlmdC9uUE4vUDczblBWYkxacktNeXluZTR6WDVSVVpTU0VWSHVTbFlxM3BuaG03T2k0eFVMTnEyb1dnV3JzTmNTN3hRTjc3TC9Ld0pXMkJPNGFIcjQ5UnpOZVpxWmlxRHo4azd3VGZBT2ZKdWx1Y0Q4c3pXY1JSS3VuMmJWeVpNbkgrdnI2M3V4dnI0K2d0ZXNRRXBGamptRkc5aTJiVnY4K3ZYcnI0eU5qYjBKSGpMdlBFVUpvUWpVWnFiQkFJRWhJbkRGMU5UVXNTeVArZm41d2JhMnRxZnBzNmdaSVp1bDRmOTE1dUJkK1BEaHc5K2VtNXZyRTd6TFpETFRseTlmZm9VK2k5UDA1dUtkcWIxdEVLa3dBZkhKeWNsM0lOZloyZGxlZWt5RDBJV0ZoYXU3ZHUxNkJBcVFUeE9Yb0lEQk94OTROek16MDBtOCtvSjQyRXlHTWNCQ25pUkxYZ2NGWUVWNElBSldOYkMvdjM4TEVaUnFiMjkvaGw1WDQ1RUlIZ0doZCs3YytUTzlseWlHSnBhWmdPSFZJbGV2WHQxSjF2dlBmZnYyZllOZTE4QWd5RWg2d0RzUy9DbDZMOG1Lb0JRc1lCdnh3eXMwY0dobzZGVVdKR0p2OVpVclYzNGkzTTJoUTRlK3lacFlVRHd1UXdFTDYwMlFjQytjTzNldWdkMHhQRjJpczdQek9YaEQ4SytqbytOWjVwMXpzUVdNRFVPd1ZtZ2dDOWZQUWdSQjFTS3VwRktwdDZDZExIeVBWU0dYb1lEQnU2cXpaODgrVDliNmQ0bDNMbjVNVGs5UHQ3RUgvQXQvN2xsc0Fhc3VCc0liSFIzZEt5VlRJRDZNQkF2RWlWaU0rTUtDcmlvM2NLVUFKb05Qc1ltSmliZHYzcno1Qml1K1d3cDdNU1JaekxzdjJFMzc5UXlqbEFKVzNUUGlSVXRMeXhwNkhtVEJPZGx0bjhwcUJwVUJyK1Z5TjB0SXdJSjN2UnJlQ2ZldFZpVUliNUtiMWpXTVVnbFlkYytiTjI5R1F2QnZldjRRQzg3UE0wNnAvK05FNElTYytuTkdIVnlFdWxnTHZIaDUralJUdk8vaDd6cExsU05vYUVQZHU0SkRXMXduaWNMckpOdzNlTWRXSHRQTHBvc2xZQmx0OFhFeThORHg0OGRmSGg4Zi80aWUxN0dRNHh3dmx0RmNRUmI3Q3lIZ2UvZnV0WEljRHZJNmJsNVRLWkpBWmZvQ3JQRVJaa3lNYWRPYjRuTUJ6QVI0RGRQMFdXU3lhaHc5UFQwdlRVMU5IZWU5dlpvbGNSMEpWQ0RnSFVwUW96aHNabSszU1V2d2lpeDQ5KzdkaVlhR2h1K3VXYk5tcTZJb2oxeTdkdTBQeVdSeXBjZmpVYStFNHNac1kyUGpUMnRyYTF0SUM3ZlErOThqWWJmeW1uNW1ZRllIa3N2YXNOVDc5TzNac3llNlk4ZU9wNkxSNktwSUpQSWRwOU1aZDd2ZHEvVVdBQ0JEM21XY21Qa1Bpb2xEUjQ0YytheXBxV21pU1BRWjByeDgrZkp2VVJqN25OZk02R0Q0R1JMc3BYQTQ3UEI2dlkvcVlOVzJzR2laY1dwMmQvNzgrV2ZyNnVvMmhrS2hUU1JBLzhqSVNLL1A1d3NURWYvcTZ1bzZRZ1RQQkFLQnpQcjE2M3RCNE42OWUySEY2ZE9uVDcrK2FkT21Eelp1M05pQmRjbVNEOVB2bnFiSE5xb0IvN1oyN2RvdVp1Q01CVWJtcEkrVXpwOU9wN3VKdG00SWpoU3dWL3lRNlhOUUJ2dUVlRy9seXBWUGtBS0VWcTFhdGVQQWdRTi8zTDkvLzR4Tit2TFM3dmY3YXlsVEhqSm9LbUNQREJTTytPcHd1VnkxQnMyY2dnbHdzeHVPZDNkM2Z4K0pGRXFlR3pkdS9KeVRBcmpqdWx1M2JyMS81c3laSDlIemg5bkZoZGc2UFZMc0N6TmtLVDZQWVEyc2hUV3hOdmFRNnNCOHRiSVoraEs4WGxSeXZWWDhHNUVuaEtUM0kveGROY1JZcGMraWl3WmZZcVI4TFgxOWZac05raWVzWDRVU1ZDQy85ZlgxTlV5MzdSaXNsai9BUnlsR3ZBL29iSEJ3OE1mTXRDaGZKQktxWmFTQlo0NGRPL1lNRStuU2NTT0s1RDVkVXB3TU1GTVRXQnZKQnZiQ25wcVN3YkE4eTBPZlQzTFpMaW03VnpUVEtYa0N0NVNJaGF6UVo1SEoyQ05HdlB1WXMrT2dnWUNEQUloRURrTmhwNDc1Wmt2QWNvWjNBVFVZbzFCeENjUndDZ3lWdFB0VHRwaUFCZmNoR09zV0dUZjJ3RjdZRTN2bldNOHNmWXBObE1rU2ZRVUlHR1ZrTzN1MmtNRzFCaUJVSWVEbTV1Ykg5TDVyOWZwd1laSGg0ZUhkbkwyOXg1bHZsU2FqdkErek1ZUDlCY1FIWWQxWXV3WjdZVS9zelZiaU5DalBjdEpYeEU2UGFmb0tFWEFlNDFEWXNoTkN3SzJ0clU4V0t1Q3Z1UWNrSEtvS0JRSWJ5QzBsTlM1UHVEcFE3VXFsVXJNR0JBcTM1OWFwTDRXVnFHVU45c0JlcXYvOWN1K2NNVGdYZlpSZ09aVThCNkNVTDRlTEpyNWZiUHFLVmZLNUtlNjZkQlRjTWtqazFLVG5jeWRPblBpUUpQOGZLaStXN2R5NTg4VFEwTkFQV2FQQ3JFVXFRRURseFYwaUlxNFQzNXdiTm15b29Wbk5GaENVd0FUQlBMd1h4TnJZQTN0aFQrek5wMEgwVE1zc2ZUNFNuSmNGNkJKQ0Y2T0U5SmtleEx0N1ZNTHBOZlJCVzNWblorZVRXN2R1RFlrM0thR2RsZzRBS0hhMFI4VkowZUZBQzFCcTRBOEFVZUc0c1p6bTZydDM3MzV5OE9EQjV6UlpOQmdUUWZ6QTc4Zkh4dzl4Y3BKZ0FZaEVKaTU2bjR4MHBiaXJFc3VSU1p1bEx5bGwwbkdtTFZ3cStncE1zdHJRTmRKSnNyQjJISW1kRFBNQ0ZhVFM5SmRNWTZGN2Y2VU5HRU44UlRvdkd2aGlFSEVwcWkzYlVZajM5L2YvN3VqUm93MUU3QXNjSjhDb0JKNUxQMGtqaG5HNUVSTnRNZW16Rm83bHNYeDlZelAwUVJqSVV0SGNBUDZOcmcxbXFlZ3JzRXg2QjMxMG5USUpYaVFLWVdxdWFaSjd4bjY3QWhaTTlMQzJKSkRCZ1ZuSS9JQXBVNEtRdlgzN05nU2RKU3RHU3dzV2xEVXpxSGovUFpjek1hekoyYUd3SHJPdHhKejBaVzJNUXVpenlHUllhSFJzYk96WHFMWFp1N2kwVUNad2V4bkw1MDVjUWt1REhTeGFybUZEckwxSkZOeWs2VnN1WHJ6NFczSnZGNGdodzZSdG42ZlQ2WkZjakFNa3lQVnFYSUlyQmZickxRQ1hOcVFQQUFJeDhEZXdQSFJzTU1VSmsxTFFaNUhKNmlrWUNCYzBTbTFXclJ0UHlPMVdpc3NQNjlYTXhXZzJ5SFdobHk4WVRLaWxRdjFubzZPajc5THpSeG5kU3NnVE1ReGFTTi81RlJNWVk4YTVkRUFIdTUwam1iNm8xUGd3bk1XaXI1Qm1BOElCNHJCQnMwRTlFSUI4QXJySHAyVmllZ0JRS2RxRnduTENUVTFOajVQbGZzWkpWbFFEQStJWTZPdU5qWTJycFZyVjR5aEJpYUc1R0ZuZ0hpbHA4bXZwUTAzTENGSENKRXhhckhhaEh3b0ZyMkhRTGhSNWh1cktKY1ZiMUlhL3lEUUhPZmpMQmJ0QXU4QzRhcDdCVWpYNkN3QTJaRHpiNzdCNS90aEd3NytIcy80cVRjTmY4Qy9JaHVOekdKeXNMQVRvTUYzS1lYMUtiRHEyYjkvK29vVDdmcVZMTlRBdzhCSzVvdVpTV1M4REY1WW0xN0RvREUyaDQ4VjFiY2F4ZUVQbEhmR2xjOTI2ZFQrUThISmhIQUVXcnB3eEwvcmRJU3FNaDFTZmozY0tWM1BmZWdIUU02VDRWNk1UQ1V2MHlJNEtwS0RaZ0k2VjQrdUg3aEk0cWNwWi9kczVvTnVTSDV2MUlXdEZsaWZkeFFETmk0c0VBVVJ5UVY5MmgrMXNNRm1SM2ZTbFM1ZTJTYVZZRW9DS3lPNzU4SHZJVmdadjkvQTJpbklpdElzN0xUVjR4R3Mrdk4zQnhQc2NsWVB2V2c4WWdYQlJ3akVJVXdOVVRTQm9mS1FuNTAwRHBSYXdVMlNFb2ptT2dseWN6QWNLeEhjN1JQSzU1NlY4NndydTZhSnliUXpvbTRCZjhjZ1E2Z085ZFVWWWNaaHZWeG1XNFQ5R2F2TGVRTFZFQlN5c09JUlNEWjdPQVBmMk9CN2d6V2N5YkJpRnhxRnVvOFRnVDlJeEY1K1oyTHRFQlN6S3RUQnlHU1NzQURVczRQS205bFpNbjUwMWJyUEtzS0ZBWmNTSnhIa3pKY2dTL284T0xUQWozenkva0s4OE1nVkZGa0hBRGgxWUwrdXc4RGNFbFQ5aHVjODNwZGg4SzlaL2RCVHRQeVdXNk1pV0N0Q28vTXRPbVE4bFcva2p0TEllL3hWZ0FPU0RTMjAvcE1GTkFBQUFBRWxGVGtTdVFtQ0NcIik7XG4gIGJhY2tncm91bmQtaW1hZ2U6IC13ZWJraXQtaW1hZ2Utc2V0KHVybChcImRhdGE6aW1hZ2UvcG5nO2Jhc2U2NCxpVkJPUncwS0dnb0FBQUFOU1VoRVVnQUFBSGdBQUFBcUNBWUFBQUI0SXA4dUFBQUFHWFJGV0hSVGIyWjBkMkZ5WlFCQlpHOWlaU0JKYldGblpWSmxZV1I1Y2NsbFBBQUFBMlJwVkZoMFdFMU1PbU52YlM1aFpHOWlaUzU0YlhBQUFBQUFBRHcvZUhCaFkydGxkQ0JpWldkcGJqMGk3N3UvSWlCcFpEMGlWelZOTUUxd1EyVm9hVWg2Y21WVGVrNVVZM3ByWXpsa0lqOCtJRHg0T25odGNHMWxkR0VnZUcxc2JuTTZlRDBpWVdSdlltVTZibk02YldWMFlTOGlJSGc2ZUcxd2RHczlJa0ZrYjJKbElGaE5VQ0JEYjNKbElEVXVNQzFqTURZd0lEWXhMakV6TkRjM055d2dNakF4TUM4d01pOHhNaTB4Tnpvek1qb3dNQ0FnSUNBZ0lDQWdJajRnUEhKa1pqcFNSRVlnZUcxc2JuTTZjbVJtUFNKb2RIUndPaTh2ZDNkM0xuY3pMbTl5Wnk4eE9UazVMekF5THpJeUxYSmtaaTF6ZVc1MFlYZ3Ribk1qSWo0Z1BISmtaanBFWlhOamNtbHdkR2x2YmlCeVpHWTZZV0p2ZFhROUlpSWdlRzFzYm5NNmVHMXdUVTA5SW1oMGRIQTZMeTl1Y3k1aFpHOWlaUzVqYjIwdmVHRndMekV1TUM5dGJTOGlJSGh0Ykc1ek9uTjBVbVZtUFNKb2RIUndPaTh2Ym5NdVlXUnZZbVV1WTI5dEwzaGhjQzh4TGpBdmMxUjVjR1V2VW1WemIzVnlZMlZTWldZaklpQjRiV3h1Y3pwNGJYQTlJbWgwZEhBNkx5OXVjeTVoWkc5aVpTNWpiMjB2ZUdGd0x6RXVNQzhpSUhodGNFMU5Pazl5YVdkcGJtRnNSRzlqZFcxbGJuUkpSRDBpZUcxd0xtUnBaRHBHT1RBMU0wRTNRakE0UXpkRk16RXhPVFV4UWpoQ056Y3dNRGhEUWpNd09DSWdlRzF3VFUwNlJHOWpkVzFsYm5SSlJEMGllRzF3TG1ScFpEb3hRamhET0RNek5rTTNNRUl4TVVVelFrTXpORUpDUXpJMk9VRkdNVU5DUVNJZ2VHMXdUVTA2U1c1emRHRnVZMlZKUkQwaWVHMXdMbWxwWkRveFFqaERPRE16TlVNM01FSXhNVVV6UWtNek5FSkNRekkyT1VGR01VTkNRU0lnZUcxd09rTnlaV0YwYjNKVWIyOXNQU0pCWkc5aVpTQlFhRzkwYjNOb2IzQWdRMU0xSUZkcGJtUnZkM01pUGlBOGVHMXdUVTA2UkdWeWFYWmxaRVp5YjIwZ2MzUlNaV1k2YVc1emRHRnVZMlZKUkQwaWVHMXdMbWxwWkRwR1FUQTFNMEUzUWpBNFF6ZEZNekV4T1RVeFFqaENOemN3TURoRFFqTXdPQ0lnYzNSU1pXWTZaRzlqZFcxbGJuUkpSRDBpZUcxd0xtUnBaRHBHT1RBMU0wRTNRakE0UXpkRk16RXhPVFV4UWpoQ056Y3dNRGhEUWpNd09DSXZQaUE4TDNKa1pqcEVaWE5qY21sd2RHbHZiajRnUEM5eVpHWTZVa1JHUGlBOEwzZzZlRzF3YldWMFlUNGdQRDk0Y0dGamEyVjBJR1Z1WkQwaWNpSS9QcTZtTmNJQUFBcWlTVVJCVkhqYTdGeDlhRlhuR2IvbmZuL2tmaWUyU3FxcEM5dWdxL1lEbkdXRjJuYXNtajhxT1A5d2hlbUdveFFIbG94MktPeXYrckV3a080VEptTVFLYVRVQnFsdHNPb2lnUkJhV1VpTmRqRnptZEZZalNSM0prWmprcHVQZS9mOFRwOVgzcDZlYys4NTk5d2J0NXY3d3N2OWZ0L25QTi9QNzNuUFZiTFpyS015eW5lNHpYNVJVWlNTRVZIdVNsWXEzcG5obTdPaTR4VUxOcTJvV2dXcnNOY1M3eFFONzdML0t3SlcyQk80YUhyNDlSek5lWnFaaXFEejhrN3dUZkFPZkp1bHVjRDhzeldjUlJLdW4yYlZ5Wk1uSCt2cjYzdXh2cjQrZ3Rlc1FFcEZqam1GRzlpMmJWdjgrdlhycjR5TmpiMEpIakx2UEVVSm9RalVacWJCQUlFaEluREYxTlRVc1N5UCtmbjV3YmEydHFmcHM2Z1pJWnVsNGY5MTV1QmQrUERodzkrZW01dnJFN3pMWkRMVGx5OWZmb1UraTlQMDV1S2RxYjF0RUtrd0FmSEp5Y2wzSU5mWjJkbGVla3lEMElXRmhhdTdkdTE2QkFxUVR4T1hvSURCT3g5NE56TXowMG04K29KNDJFeUdNY0JDbmlSTFhnY0ZZRVY0SUFKV05iQy92MzhMRVpScWIyOS9obDVYNDVFSUhnR2hkKzdjK1RPOWx5aUdKcGFaZ09IVklsZXZYdDFKMXZ2UGZmdjJmWU5lMThBZ3lFaDZ3RHNTL0NsNkw4bUtvQlFzWUJ2eHd5czBjR2hvNkZVV0pHSnY5WlVyVjM0aTNNMmhRNGUreVpwWVVEd3VRd0VMNjAyUWNDK2NPM2V1Z2QweFBGMmlzN1B6T1hoRDhLK2pvK05aNXAxenNRV01EVU93Vm1nZ0M5ZlBRZ1JCMVNLdXBGS3B0NkNkTEh5UFZTR1hvWURCdTZxelo4OCtUOWI2ZDRsM0xuNU1UazlQdDdFSC9BdC83bGxzQWFzdUJzSWJIUjNkS3lWVElENk1CQXZFaVZpTStNS0NyaW8zY0tVQUpvTlBzWW1KaWJkdjNyejVCaXUrV3dwN01TUlp6THN2MkUzNzlReWpsQUpXM1RQaVJVdEx5eHA2SG1UQk9kbHRuOHBxQnBVQnIrVnlOMHRJd0lKM3ZScmVDZmV0VmlVSWI1S2IxaldNVWdsWWRjK2JOMjlHUXZCdmV2NFFDODdQTTA2cC8rTkU0SVNjK25OR0hWeUV1bGdMdkhoNStqUlR2Ty9oN3pwTGxTTm9hRVBkdTRKRFcxd25pY0xySk53M2VNZFdIdFBMcG9zbFlCbHQ4WEV5OE5EeDQ4ZGZIaDhmLzRpZTE3R1E0eHd2bHRGY1FSYjdDeUhnZS9mdXRYSWNEdkk2Ymw1VEtaSkFaZm9DclBFUlpreU1hZE9iNG5NQnpBUjREZFAwV1dTeWFodzlQVDB2VFUxTkhlZTl2Wm9sY1IwSlZDRGdIVXBRb3poc1ptKzNTVXZ3aWl4NDkrN2RpWWFHaHUrdVdiTm1xNklvajF5N2R1MFB5V1J5cGNmalVhK0U0c1pzWTJQalQydHJhMXRJQzdmUSs5OGpZYmZ5bW41bVlGWUhrc3Zhc05UNzlPM1pzeWU2WThlT3A2TFI2S3BJSlBJZHA5TVpkN3ZkcS9VV0FDQkQzbVdjbVBrUGlvbERSNDRjK2F5cHFXbWlTUFFaMHJ4OCtmSnZVUmo3bk5mTTZHRDRHUkxzcFhBNDdQQjZ2WS9xWU5XMnNHaVpjV3AyZC83OCtXZnI2dW8yaGtLaFRTUkEvOGpJU0svUDV3c1RFZi9xNnVvNlFnVFBCQUtCelByMTYzdEI0TjY5ZTJIRjZkT25UNysrYWRPbUR6WnUzTmlCZGNtU0Q5UHZucWJITnFvQi83WjI3ZG91WnVDTUJVYm1wSStVenA5T3A3dUp0bTRJamhTd1YveVE2WE5RQnZ1RWVHL2x5cFZQa0FLRVZxMWF0ZVBBZ1FOLzNMOS8vNHhOK3ZMUzd2ZjdheWxUSGpKb0ttQ1BEQlNPK09wd3VWeTFCczJjZ2dsd3N4dU9kM2QzZngrSkZFcWVHemR1L0p5VEFyamp1bHUzYnIxLzVzeVpIOUh6aDluRmhkZzZQVkxzQ3pOa0tUNlBZUTJzaFRXeE52YVE2c0I4dGJJWitoSzhYbFJ5dlZYOEc1RW5oS1QzSS94ZE5jUllwYytpaXdaZllxUjhMWDE5ZlpzTmtpZXNYNFVTVkNDLzlmWDFOVXkzN1Jpc2xqL0FSeWxHdkEvb2JIQnc4TWZNdENoZkpCS3FaYVNCWjQ0ZE8vWU1FK25TY1NPSzVENWRVcHdNTUZNVFdCdkpCdmJDbnBxU3diQTh5ME9mVDNMWkxpbTdWelRUS1hrQ3Q1U0loYXpRWjVISjJDTkd2UHVZcytPZ2dZQ0RBSWhFRGtOaHA0NzVaa3ZBY29aM0FUVVlvMUJ4Q2NSd0NneVZ0UHRUdHBpQUJmY2hHT3NXR1RmMndGN1lFM3ZuV004c2ZZcE5sTWtTZlFVSUdHVmtPM3Uya01HMUJpQlVJZURtNXViSDlMNXI5ZnB3WVpIaDRlSGRuTDI5eDVsdmxTYWp2QSt6TVlQOUJjUUhZZDFZdXdaN1lVL3N6VmJpTkNqUGN0Slh4RTZQYWZvS0VYQWU0MURZc2hOQ3dLMnRyVThXS3VDdnVRY2tIS29LQlFJYnlDMGxOUzVQdURwUTdVcWxVck1HQkFxMzU5YXBMNFdWcUdVTjlzQmVxdi85Y3UrY01UZ1hmWlJnT1pVOEI2Q1VMNGVMSnI1ZmJQcUtWZks1S2U2NmRCVGNNa2prMUtUbmN5ZE9uUGlRSlA4ZktpK1c3ZHk1ODhUUTBOQVBXYVBDckVVcVFFRGx4VjBpSXE0VDM1d2JObXlvb1ZuTkZoQ1V3QVRCUEx3WHhOcllBM3RoVCt6TnAwSDBUTXNzZlQ0U25KY0Y2QkpDRjZPRTlKa2V4THQ3Vk1McE5mUkJXM1ZuWitlVFc3ZHVEWWszS2FHZGxnNEFLSGEwUjhWSjBlRkFDMUJxNEE4QVVlRzRzWnptNnJ0MzczNXk4T0RCNXpSWk5CZ1RRZnpBNzhmSHh3OXhjcEpnQVloRUppNTZuNHgwcGJpckVzdVJTWnVsTHlsbDBuR21MVndxK2dwTXN0clFOZEpKc3JCMkhJbWREUE1DRmFUUzlKZE1ZNkY3ZjZVTkdFTjhSVG92R3ZoaUVIRXBxaTNiVVlqMzkvZi83dWpSb3cxRTdBc2NKOENvQko1TFAwa2pobkc1RVJOdE1lbXpGbzdsc1h4OVl6UDBRUmpJVXRIY0FQNk5yZzFtcWVncnNFeDZCMzEwblRJSlhpUUtZV3F1YVpKN3huNjdBaFpNOUxDMkpKREJnVm5JL0lBcFU0S1F2WDM3TmdTZEpTdEdTd3NXbERVenFIai9QWmN6TWF6SjJhR3dIck90eEp6MFpXMk1RdWl6eUdSWWFIUnNiT3pYcUxYWnU3aTBVQ1p3ZXhuTDUwNWNRa3VESFN4YXJtRkRyTDFKRk55azZWc3VYcno0VzNKdkY0Z2h3NlJ0bjZmVDZaRmNqQU1reVBWcVhJSXJCZmJyTFFDWE5xUVBBQUl4OERld1BIUnNNTVVKazFMUVo1SEo2aWtZQ0JjMFNtMVdyUnRQeU8xV2lzc1A2OVhNeFdnMnlIV2hseThZVEtpbFF2MW5vNk9qNzlMelJ4bmRTc2dUTVF4YVNOLzVGUk1ZWThhNWRFQUh1NTBqbWI2bzFQZ3duTVdpcjVCbUE4SUI0ckJCczBFOUVJQjhBcnJIcDJWaWVnQlFLZHFGd25MQ1RVMU5qNVBsZnNaSlZsUURBK0lZNk91TmpZMnJwVnJWNHloQmlhRzVHRm5nSGlscDhtdnBRMDNMQ0ZIQ0pFeGFySGFoSHdvRnIySFFMaFI1aHVyS0pjVmIxSWEveURRSE9makxCYnRBdThDNGFwN0JValg2Q3dBMlpEemI3N0I1L3RoR3c3K0hzLzRxVGNOZjhDL0lodU56R0p5c0xBVG9NRjNLWVgxS2JEcTJiOS8rb29UN2ZxVkxOVEF3OEJLNW91WlNXUzhERjVZbTE3RG9ERTJoNDhWMWJjYXhlRVBsSGZHbGM5MjZkVCtROEhKaEhBRVdycHd4TC9yZElTcU1oMVNmajNjS1YzUGZlZ0hRTTZUNFY2TVRDVXYweUk0S3BLRFpnSTZWNCt1SDdoSTRxY3BaL2RzNW9OdVNINXYxSVd0RmxpZmR4UUROaTRzRUFVUnlRVjkyaCsxc01GbVIzZlNsUzVlMlNhVllFb0NLeU83NThIdklWZ1p2OS9BMmluSWl0SXM3TFRWNHhHcyt2TjNCeFBzY2xZUHZXZzhZZ1hCUndqRUlVd05VVFNCb2ZLUW41MDBEcFJhd1UyU0Vvam1PZ2x5Y3pBY0t4SGM3UlBLNTU2Vjg2d3J1NmFKeWJRem9tNEJmOGNnUTZnTzlkVVZZY1podlZ4bVc0VDlHYXZMZVFMVkVCU3lzT0lSU0RaN09BUGYyT0I3Z3pXY3liQmlGeHFGdW84VGdUOUl4RjUrWjJMdEVCU3pLdFRCeUdTU3NBRFVzNFBLbTlsWk1uNTAxYnJQS3NLRkFaY1NKeEhrekpjZ1MvbzhPTFRBajN6eS9rSzg4TWdWRkZrSEFEaDFZTCt1dzhEY0VsVDlodWM4M3BkaDhLOVovZEJUdFB5V1c2TWlXQ3RDby9NdE9tUThsVy9ranRMSWUveFZnQU9TRFMyMC9wTUZOQUFBQUFFbEZUa1N1UW1DQ1wiKSAxeCwgdXJsKFwiZGF0YTppbWFnZS9wbmc7YmFzZTY0LGlWQk9SdzBLR2dvQUFBQU5TVWhFVWdBQUFQQUFBQUJVQ0FZQUFBQzgyTHBxQUFBQUdYUkZXSFJUYjJaMGQyRnlaUUJCWkc5aVpTQkpiV0ZuWlZKbFlXUjVjY2xsUEFBQUEyUnBWRmgwV0UxTU9tTnZiUzVoWkc5aVpTNTRiWEFBQUFBQUFEdy9lSEJoWTJ0bGRDQmlaV2RwYmowaTc3dS9JaUJwWkQwaVZ6Vk5NRTF3UTJWb2FVaDZjbVZUZWs1VVkzcHJZemxrSWo4K0lEeDRPbmh0Y0cxbGRHRWdlRzFzYm5NNmVEMGlZV1J2WW1VNmJuTTZiV1YwWVM4aUlIZzZlRzF3ZEdzOUlrRmtiMkpsSUZoTlVDQkRiM0psSURVdU1DMWpNRFl3SURZeExqRXpORGMzTnl3Z01qQXhNQzh3TWk4eE1pMHhOem96TWpvd01DQWdJQ0FnSUNBZ0lqNGdQSEprWmpwU1JFWWdlRzFzYm5NNmNtUm1QU0pvZEhSd09pOHZkM2QzTG5jekxtOXlaeTh4T1RrNUx6QXlMekl5TFhKa1ppMXplVzUwWVhndGJuTWpJajRnUEhKa1pqcEVaWE5qY21sd2RHbHZiaUJ5WkdZNllXSnZkWFE5SWlJZ2VHMXNibk02ZUcxd1RVMDlJbWgwZEhBNkx5OXVjeTVoWkc5aVpTNWpiMjB2ZUdGd0x6RXVNQzl0YlM4aUlIaHRiRzV6T25OMFVtVm1QU0pvZEhSd09pOHZibk11WVdSdlltVXVZMjl0TDNoaGNDOHhMakF2YzFSNWNHVXZVbVZ6YjNWeVkyVlNaV1lqSWlCNGJXeHVjenA0YlhBOUltaDBkSEE2THk5dWN5NWhaRzlpWlM1amIyMHZlR0Z3THpFdU1DOGlJSGh0Y0UxTk9rOXlhV2RwYm1Gc1JHOWpkVzFsYm5SSlJEMGllRzF3TG1ScFpEcEdPVEExTTBFM1FqQTRRemRGTXpFeE9UVXhRamhDTnpjd01EaERRak13T0NJZ2VHMXdUVTA2Ukc5amRXMWxiblJKUkQwaWVHMXdMbVJwWkRveE5UUTJORGRFTVVNM01FSXhNVVV6UWpJMlFrSTJOVFpFT1VaRE1qYzJPU0lnZUcxd1RVMDZTVzV6ZEdGdVkyVkpSRDBpZUcxd0xtbHBaRG94TlRRMk5EZEVNRU0zTUVJeE1VVXpRakkyUWtJMk5UWkVPVVpETWpjMk9TSWdlRzF3T2tOeVpXRjBiM0pVYjI5c1BTSkJaRzlpWlNCUWFHOTBiM05vYjNBZ1ExTTFJRmRwYm1SdmQzTWlQaUE4ZUcxd1RVMDZSR1Z5YVhabFpFWnliMjBnYzNSU1pXWTZhVzV6ZEdGdVkyVkpSRDBpZUcxd0xtbHBaRHBHUVRBMU0wRTNRakE0UXpkRk16RXhPVFV4UWpoQ056Y3dNRGhEUWpNd09DSWdjM1JTWldZNlpHOWpkVzFsYm5SSlJEMGllRzF3TG1ScFpEcEdPVEExTTBFM1FqQTRRemRGTXpFeE9UVXhRamhDTnpjd01EaERRak13T0NJdlBpQThMM0prWmpwRVpYTmpjbWx3ZEdsdmJqNGdQQzl5WkdZNlVrUkdQaUE4TDNnNmVHMXdiV1YwWVQ0Z1BEOTRjR0ZqYTJWMElHVnVaRDBpY2lJL1BqTUdUS3NBQUJ5SFNVUkJWSGphN0YwTGtGUlZlajc5bk81NTlEeVlFVWZFQVNFeFlKUkZDOE5LUUtna3UxdlI2R3JjRGV1anlrUnJUYlJpYXJkU2Nhd0tlV2g4c0JWZEg5RXN0VVFSRGJBR2pVdXh1MWhnc0dCVmxNSUhLakRvekRBNlBHWkdaMkJnR0thbkh6bi85Znc5L3oxOWJ2ZTkzYmRmekRsVnAzcW0rL2E5NS96OWYrZi96Lzg2bm1ReXlYVFRUYmZLYkY1TkF0MTAwd0RXVFRmZE5JQjEwMDAzSjgydlNhRGIyZFE4SGsvWmo5Rk51NU4vTWhQU2JXTHFwcHVXd05JNlFMR21meTdkaXNScnlyVmVBOWcrRVQwWkFKelVnTmF0UUR6bnNRQnlrdlN5NGoxL0dSTFJhMEZNSUZwQ0lxUUdzbTc1OHAySDhKM01lMG1KN3hMbEJtSi9HUkxSUjE1OUVuaGo0alZPM3ZOb0VPdVdJOThoWUpIWC9BcE1JSjlGQmQ4bFJBZjdTYkxVdGg1dm1ZRFhTd2dZRWoxQVZrV2YrRC9NZTVXNHprdkc3OUg4cUZzTzRLVzhWVVhCMjk3ZUhpSFgrZ2hQb29EeGVNckFVdXN0RS9CNkJYRkNPS1k5ZS9Zc0dCd2MvUEdwVTZjZTQ2L3RHemR1YkNOYVEwZ0JZdDEweTBYakE3NEx3djg3ZHV5NDVNeVpNK3U1WVAzcTRZY2Y3azRrRXA4RC96MzY2S1BONG5vRXVVOVN0MHZYd0kxU2lHNlRrRDVCdkdyZW02QnYzcno1OG1nMHVpZVozbUpEUTBPUHpwNDl1MFZjMnlna2NvQVFzMnptcjN0cHVrM0o2eGRnckVXKzYrdnIrd2ZnTVFYZkpUbVFCN2hBK1RaZXkzdU40RnRmTG56bjZueExTRWlxRmdNWW03WnYzLzZIUUt4a2huYjY5T24vSVNDT1NOTFlvd0dzQVd4VGFLVDQ3c2lSSS9ja3N6VE9sNlBBbjBSNFZPY3FQQ29kd1BJcUNDQnM0bXJLNzhiajhTK1NOaHBJWXJJYTFvcjcrRFNBZGJmSmQ3RG9Od0QvYk5teTVRb096bE4yK0c1OGZQekEwcVZMenhWOFZ5OEpqMGtGNERUVmVYUjA5RGRJS0E3a0kzenZzWWIzLzRLL1ZjVDg4TU1QLzh3TlZWb3ovYVFDTVBLZG9Ub0RHUGwyN1FQY29nME1ETnkvYXRXcTMydHZiNTl4K1BEaHV6bXdUOGg4Tnp3OC9QTjhWZWxLQjNEYUt0aloyWG1UaFlyY0JIL0RlMmtiNGxpc2k2eUdrVnlsc0diNlNRRmdwZlR0NysvL1I4Rk9ZMTFkWGJjU1lCcDl4NDRkVjZtMmRMdDI3Vm9tcm1rZ1VuaFNBSml1Z2pVSVVGQk5FTHlFZ0MyaUcvK3JRQXlHaDN6M0pKcnBKdzJBVFh3SGl6OXFkeUJ0SmI2YnlqdFlucHZlZi8vOVAxWFlZWDZaanhTdWRBQ2JWc0ZEaHc3ZGptcnpBdzg4TUV0YUJhY2dpRUd0a2RWcCtEL0Ruc1NXaVY4ei9hUUFjSnIwUmNQVm1UTm5YaVA4MWlqNHFKN3dYeE5zNVdRRkVQYk91VXJoU2dVdzlidWxMSUI4RC9JdVVLU25wK2VIaEpBUnNVK3BGUVF5VmtPNFJsNE5ZUUVnMzZzanhQVFprY2FhNmM5NkFNdVdaMFByNDF1d1Q0Ri9RRTBtUUt3UjE0U3Bpd2tFaTd3ZkJoc040VHVxL1pVT3dFVndvUHVvNVJuMkVtamRrMENJRVZjaFFraGpOZVRYN3FXRTVBdkFiOFhuelFUODFRVEVCWEcyYTdCVUhJQlRmUGZKSjU5Y0ozam5iU0o1YThRMUFSS1pWWWQ4QjhZcjJhMjBmUG55OHdqUDJyYkJ1RG5mWWtZeHlSRXdiTTZjT2RmRDY4REF3Q29TZHhvVE1hZTBZOHd6NisvdlgwVnZHZ2dFRnZJVnNoSGpVNG1xVkZNV2tUSzZsVnZrRld0cmE3c1JYbzhlUGZxY0ZPK2NrSGdPWSs4aE12QjUwMDA5bnRES2xTdXZFZi9hMHZiT2hsQktMeVZrYlczdDliQU5lZkxKSi85WGZENU9DSW1aSUtpYUdJUjg4TUVITjhGM3lEMTl0OTkrKzdVUWFza2wrcnpEaHcvL1lQZnUzWmVSUUJFTllOMVNmTWZWWjE5MWRmWFZuSWUrdlBmZWV6ZUx6Mk1LdmtzUUVMTmx5NWJ0NDlyZmUvU21VNmRPL1hOeS85S0VWaFpKaGFacVRDMUdYVWtXUGJRa0I4bUs1a2VMSWFqYnZiMjlmODFYemIrMzhnMWoyNzkvL3cxa2IrSmpXb1dlckNvMDViczZhbFVHd3hUWis1cmlDTVI5MEY1VExZVmJtdFJvWWtTbGF2Ulp0d2VtMW1mRHdnZE9jeUFDQU5MQ2lvd0FOcXlHWUMyMEV5M0R3ZDFIL01oaHB6NjZmQUNzVzluRjRLZnhIVVR4QVo5MGRIUXNWNFRqZXNoOTByNjdidDI2UzJWK2d3VkJza1puRlJobHRRZDJRRWhUa241ZFhkMVNlTjIyYmR0VzhWN0NBdmpHL25mRGhnMC81dmNkeVRZZXZySnUvT3l6eitJc3ZZckNaTmpqNWRJbkUyMVlPQnhlQUh2Y2wxNTZhVGRSbjYzNGhLclQ3S2FiYnVybFVyZVhYc0QzMDRzbE5iMnlWR2liQUVZMUJneEx6VE5uenB3SzZnZEVVd2svN3puRWVoeVVMSUhWd3NMY0ROSTZtd1FtYm9GNmxrZU1kSmxKWUZYbENGcjB3Ry9Sa1k1V24vdklka1ZWa2FMU0piQ1hrWkJkME15QTd5QjhrcG5EY09FYXIrSmVxRWJYRUovd0x5aS9jYzF3T3pNSGRXUjFKNVcxRmRvakdqT0hyL2tJUS9sV3IxNTlHVmp4UmtaRzNwWlVacC9FV01oY0lGRzlWMTU1NVF2ajQrTzdySjdORjRTT0pVdVdmS1NRNkpVa2JiSlZLUEZKQVBSbkFMS2Q5MzJLOTMzU3N5dFJZcWRabjE5ODhjWGZCNzZEZEZWSndscXR2a2xaQ3A4OGVYSTN2U0FZREY1V1NqN3p1Z2xhM2xUU0FhM0I2RXozY2JWakxueVA3NE1QU0o4RmhkUkVIekMrR2xLa3U3czdzV1hMbGgreHI4dWJwTFhqeDQrdlorWjZSaDdKOGwwNmE2RTlack9pbjk4Q3VETE5rRjZaT3IwV3YrL1BzakQ0eXB4K21laWE0dlBwMDZjYmZIZml4QW0wSmlja29GcUJPRlVMcTdlMzl3T0o5eU9iTjIrZVNUVE5vdExHbXkvVEVkRDZMRlo4Vk9OQ1FsMnA0dnZmK1hDRGpvNk96d2lBZlJMelVtWkpMUVRYWG50dDUxZGZmZlh2aXZIRU9iaGZWVWhmcndJSXZqSmdSaG0wMmVoSEY3V3crRHNvcWNneTBGVGRKOTA3U0g4YjhneVYrdTBySS9vNXBUUFlYUzZCMTg3T3pvOEpnQzNCbTV6UXlWTVMrTG5ubnVzUUdtR3F6ZVZOSVlHTFFoTi9IcXVhcktKNENOaThaRFZLKzlGcmFtcCtCMjV3K3ZUcDVLWk5tNWJObURHam1hc2k4ZWJtNXBtaFVLZ2FIOFQzSzBCRUQ3L3VXR3RyNitPQ29XTFhYWGZkMDIrODhjWjMvWDQvRW82TmpZMjlkZXV0dC9hU1JTbE1DQitYWHVWcWc4V3NjdW1VZmtwR1dMcDBhZkNSUng2WjA5allPSlV6Wml1OHgrazYyK2Z6MVdSNmVEd2U1enVYa2MrRU9uaDBhR2lvcjcyOWZUK25aNVRRenF0UUl5a05TMG0vWEdrTjZ1NXNlTjJ3WVVPWEJHQUsxa3lHTE04enp6d3o4dFJUVC9WNnZWNHM4Y1FhR2hvdTRpKy9Lc2xXdzJFMUE3b3ZvNnMzZ0s1T0dBVk1LVmszM0hERCtkdTNiNytXUzl0LzdlcnEyc3hWa0k4NEV5VjRUM0pKYW5UT1VFa09RSEFCcVNvaEdPKy8rKzY3MytQM204WTcrTjJhZCszYTlTZTBCTW9YWDN6eGQyanNFdGVjczNqeDRsWjVQR0tNZFdMTVZJbzVxbk9VWXpVSXgvU0RjRDF3VlVEcUcxL0lYZ0VEak4wRWRDY043Z24zaG1mQXMrQ1pKRlN3S1BSejJZaEY0KzZOc1hNK09nUkZJOGhjTEExWWtpRXJsY1hFdm5acGJyTVJGKzBweHR6OUR0VVFXZTN6TTZraUFVUzY4RDNCMHZQT08rK1B3dUh3WXI1U3pZM0ZZbUJnWW56aThOQXgvcDZITXd2SDdsZGIrYjcxQUpjY284ZU9IZHNiQ0FTaWZKVk0vUXEzM0hLTG9lbzgvL3p6bCt6ZnYzOVFySUpqd0N3TEZ5NThqKzlsVmtVaWtidkFHUGpFRTA5c291Tjk1NTEzdnJsZ3dZSlgrUSsyYjNSMGRPZVJJMGRldithYWE5NFFMaVpVRHpIU0prWlU3MElVOE02WmZsVExFRC8rR1REV2NmcUJLamZLRjc5OWZJN2podzhmaG9YUnBOb2gvY0I0WTNJSjhEWnQyclJMK0V1QTB4N3VIK1owdjRnLzZ5TCtHOHpqejcyK3BhV0ZyVisvbnIzd3dndmxRTDk4SmJCQlY4NTM1eE1qcU4weHBobTZPUDE3cTZxcXFDRnJkc21NcFE2VG9WRmkxRkpwQWRFb2tCQU5PYnRTMXNZWVg1MWU1MUwzSjIrKytlWWQ5OTkvLzdMSEgzOGNKR2R5Y0hBUUlyQWdmUkFNQUxEU1QwVlR2YUpQWVJQSkNqWENSVFRscnJ2dW1nNnJLa2dOY1ExK2YrcW5uMzc2bDJLbEhDTlM1Z1NNRWNaS0ltaFFxdFFTaVpLMXhsYU95ZVNPNlFkejRMUjZHRDZIZ244VzlIR3R3elBnV2ZETVl0UFBaUWxzeXY5ZHMyYk54VUphL29LWkF5OE1hWm5oZmhqUWtZckk0clQ1TjdtNEJFdlBEL1lXWSs1Mk16bjh4Q2ZiZ0lNRkFJRzZCZEZQSkJMcUN5NFpmM3Jnd0lIdkNSVVcvTHp3ZWdFQTlyWFhYcnNacnVNcittb0Izdk9GSDdpUm1kTUlheVNqVFJXeHVJWUZpSnNnYkJJcWVnandSdERYakdBR1JvT3h3SmhvelMwWU00d2Q1a0NJM3lEbVNNdUhldklBY0Y3MGswQkN3ZElvN3RNZzVod1JhbTBkb1YrdGVGNjE5QjVlaDkvRCt6U3FWUGhpMHE4QUFFNkY3dTdldmZ1UFlkeDhIazh5UlI2dkRRQ25VbUNoQUlBY1Vzbk1OZHJLQXNDMGNxU3BCQ2ZzamZncTlCTWlMV0pjemRvTVA3UkNjazRSQUlYOTYvUjkrL2JkTGZhcy95S0FmWTRBSXdWc1VBcm9rSDJYQ09RRzZYblVsUkpoRTRuWnFRNWpoTEhpL2hubUFIT1I5bnUxeEJLclpFSUhjYmo1MEE4WnJaNHNidFZzSW1kVjVScVNYVVFxVjVQc2NzTDdJZGlSZGczRnBKK0xBRTVMSWNTeVRiRG9zQXdobEJrQW5Db0dBR0dZc2cyQkxHUVlFMTFTQUZ2V3o0VWtCTDZQK0lSR29wRHFCTEtoQTFmOEJwVEVuMy8rK1FyNEhsZHgvMGFBbC83ZzJYeVBLdjh5TWw5QTRYNUJhVjByTXlPTUdjWk9LZzUrUXNxR3ltTktVd2V6QU5ndCt0VVFvRllwRmpjckY0K2Q3bGU0azJRL2ZGaU1JYzNBVmdqNnVReGdVOVZUU0lTQmNjSnJEZ0QyVVFDak5LY040cVNaemFTR1lnSFlKek1mVjN0L0JPb0M3cytrS2hwTlJKS0dKZlczVmtqaWxpKy8vUElSa1RIMEE2TDJwbzVTc2ZFRHFZSWV2TXc2eEpDcTNUV3lWQlpWUHNaUUZZSTVNaHNsYTIwQTJBMzZaZlB6cHNVMk82QmZwdkJNS3o5eFFlbFhTQUJqSmhHcDRGSkhGaGhQbG5zaWdPc1p5YVNqalN4ZTljVUVzRGVMNFFWTjZKRDgvRmV0cmEyUFFTZ2ErQUs3dTd2dmFHdHIyMGdzZFdPaXgwaVhrL0lUZ1VBQUNNZWkwZWdwWm4zeVd5YWpXMUw0N0t4NlF1cjRmQndUanRONEZzd0I1Z0xYd054Z2pqQlhOREJLWUhGaS9YU2JmZ1lOQVNla3B6Vzc5Sk85U05nbG1zbTBLeGI5WEEvaTRId1hFZkVDSXdvcnN5MTdMLzR4TWpJeUtuL1kwTkFRVVZtL1N4R0pKWjhiQXhsREY1MTc3cmtQNGdYRHc4TlBYWGpoaGI4aUV4c25EQmVUUVVzQjV2UDVRaUpJSTU0aDhvWGxBV1NtQUhOY0dsdE1qTm00SHViQzUvUU0zaHZtQ25NVy93WWNSaHk1U2o4WnFFWHdTcGlBWFFMNkZhUmhnQXZudTJnKzVCRy8zN2o4UVlpM1lvTTNVeWlsS1FoODRjS0ZmNHVTQk5wNzc3MzNNckgwSlNTd0ppUkFlYVFWREZReGlGc2VMcGFuTElOMFRtQTBHcC9UUytRN1FURm54bkxMWnNxYmZzVUNyTU9Gc2xqMEs0Z3ZHTm9aQ0ViSTAwZmQyZG1abHRicTlYcUQyWjVkaU9hM29RYXk2dXJxNzlBUHd1RndRQkdnWUl1UWZLSUJvY3BFblJKU1BzN1JCUWIzS09hRS95L05ZWTZGcEYvK25GeFo5SE56QVVkMUh2aHUxQW00U0daZGFnNWNoWTdiVmQxTEpZSGxTWmppYStmTW1YTWpCcVd3ekFrQ2xwTVlIQnc4WTVlQWloUkZQSi9WYmtBOXpVcVJqVnhHemFPNWMrZitoZlRjUmhlQjQ1aCtaTTU1Z3pZVC9VVFArQ3p5V1VubzU5SWlFeFdxdE04SjNSU0dQcnZhVjhrQlRFUEhPdWdIRUw3WTI5djdmZkZ2Z2xnclpiK3RaUXBhYTJ0cnhNRktLQjhDN2xNOHc0cHdxcXdmR2dvSUtXTGZyNnVydTVOK2ljdzUxNm9lcnREUExzamNvSi9xR1FyZ0Y0dCtoVkU1L2Y2Z0E4MVBSVGZXMHRJU3RBbmdnZ1BabTJYZm1CRFM4a1g1Z21uVHB2MUhmMzgvL2RFQ3hQVmhGWVRoamNmalkwUjlOMlhpcUJxNUJ2MlJOV3dpNkVQNURBWHhxRkVKQXd5TUJuT0F1Y2p6R3hvYVdxZllRenZkZDd0T1AwNFNud3pxVEMwWCtrbmZMd1g5Q3FGQ28ycGY0MUJ3WUlDTEgzOVBMbnhDOG9WOHdScVZ0cVpGa2NMWkFHeW9SNHNXTFhwT0xxa0pQelpmaVI2S1JxUC9CK1ZjQ2FGb3pHOFZrUzZHYnpFR1dRMHNaZGIzSzFReUs1K2t2NzI5UGJKdTNicnptVGs2SnNUTU1iZ3lrR25pQUJZZFl6Qm1HRHZNZ1VrK096N1hEMkhPUk0zTkZjQnUwRThGNkV3QkhHY0QvVndITUIvclNhRlIrR3grTDdWb0xWKytQQVR6eFU2MFI1VnhEQTEzNGFKSTRReXBXS2J3TVRoMkVZSzJyZExSNElRRWNPcEw4YnNZUmdraGs1QS9PZlBZc1dNL2crdmZldXN0Q09UQU9HaDRSaTB6aHdmUzRBSERHWTlWQVNHVUQ2cnJNM1hZWVEwekIwR2cxRWlkeFFSanRab0h6QkhteXRMalpiMVdkQ3NnL2VUb0xJeDlwcEpVRlZwWmtmUXJVQ0NIVVU0VzY2bVI0Qm5MUUE0Q1hxQ0JFZnFhN2VCNU9GMEUwakU1am5kQXBKWjRSb2dWT0FvdFd5UVJGZ1F6d3VqZ2pCZ1lZSmE4MHNGVHAwNnQ2Kzd1dm0zbHlwVVhFUURQNEgxV1YxZlhveUp5Qlp6L2tJMEVTUTdBdEMzTUhLU1BBZlo0WXB4eHdKbE1ORGlrU3BHM2lrSDFsSkdOejFSbnZwS3d4aDNrZ0RXNVRuVXVrVmg1MFE4T1BXZjJzb2dhRmJTck9Qb1ZLQmJhQURDZXF3WHpaVmxDS1NVQW04clJabXZTc2JjRm4zc21CcFNQWkV6Rnd2Sjl6MzEya3NvaEdYOWtaT1REdnI2K05YeFZ1dS9aWjUrOS91REJnMFlxMXQ2OWU5c0ZnTnZZUkZMRGxHek1hc1gwa0dWQzRsSHBTWE9ZMldUSmdEQVhtSlAwWGZuWVNLY0F6cHQrUWpKL0FFWElJVVFSVm5hTEpIdmJ2WnpwVnlBQUc2R3NrTFVHWTRWNjVNeEdMRFRaODllaUJrVlRLNjBhT1dlNG5rMUVvaFZzN2g3S2VMSUJVckVIU3FWSndYbEVkOTk5OXgwTkRRMTNXcmtNNE41UUZnZTJ2WndSWVc4RXljOXdwQXJVYis3bmFzMGJmcjgvT2pZMnRyZXFxaXJCcnpzMk9EaDRKSlBLZjhVVlYveGFoQ09xV3B5cmg1czZPanBXejU4L24xYXZqT00ralkrbkd3cVJpZkVOSFQ5K2ZOWFRUeis5ZXNXS0ZVUEVLaHhsNnVNMlRITlR1QjVjcFo5Vmk4ZmozWHdldzV5bVVJRXpPanc4YkNUdTg3bjNjUVk5V3FuMGM4bGxSL2VocVd3d3J2SE41Wkp4SjBTTTFkZlhyeEJ6R2hPdk1ka25MbHlVTkpzTVNqdXRobUlIVnMrR1lnR2N2Ni9HYlRIN09sb05nM1FLTTNlYlI0TFM0eGtqVENyNUFvSGllRWkzUXFVQTFTcDU4dVJKbzN3T1grbFIzVEwrNTZvSjdNbEEwaGdTMjYwR3B4aEMzaVk1cFNFbFFXQ3NNR2FGTkl1d2lUSXJHUStzY25pa2FzNzBLMVVyQmYwS21kQVAyeEZ4bE04ckxQMUlGVStXTkVKRGU5cXpaOCszYmRZa2IyUVp6Z3d1OXRFcVZCMmt4ZGJybVpSaXRuSGp4dmxRclFEUC9FVUFRNzByTG5GVGdEVlNjZmg3K0Q4VXR3TUFxMnBpNWRxZzlpOHhKcVJ5V3lVMWthcUsxU3c5aDlXdGlodzUwNjlVclJUMEswQk5MRncwRzhYaU15cHFRdE9pN3Nvc09JVWFibXp2ckg0YnFGVEMwcFA2QzU0TG5VbUZWa1d6cUFxT0t5c3ZyRm16cHZXcXE2NWF3TldWeTcxZTd6ZTRxanlmZzlid3dUVTFOUmxxTlZkbmpHZENIRGdFeVBCcklOUXlMNDBDMUVzdU9SNGhtVDZndm95SzhXR2FGNjFXaVZVVzQ4eEJUU2NiS3JRcjlPTzB1b3h2TDc0QkJjVGxpSzVDdEZMU3oyVVZtcnJSUUJwNnVPYndGdWV6Y3ppUHpTWnFia3lvMEFuRnZhZ2FIY0tnbFduVHB2Mm5OSmVSdFd2WC9zRnR0OTEybEUzVWJSc3Z5dmJCNGRFZzhva0xjdEo4dmNKd0F1VnRvTjdWZVk4OTl0aTN0bTdkZWc5ZnhmcjRhamplMmRscFZLbms2dldRVlZWS0IxVVZUMEMxQmNrTkUySG1Hc2NCbGw2dElzRE1TZWNlcDNRck1QMVNmZHUyYmQ4RU53NFl0S0FTSXFsU09laENWY3FTMDg5bENld2h3RE1rTU4rcS9RYm1TaXpsS1N0NWxtVCtsRFViNkVOTElJa3lQVDlsNlRXeGlsSk9LTmV6ZlR5S01MT2d3dmZZSUZTUHFjTFNERFd3WmgwL2Z0d295L25RUXc5ZEpTelIwOFhuc04rYUFnU0c0MFJwUjZLTGNpNm1iVFpZYWNtUFFvdXNVWlZPZFVSSnpzWEo4endieVFuOUhGdWFLNVYrQlFBd1N0OElkUVdSRXdWTkJRY3NBSngyekNndGFnZEgzWkp5T3ZWV2Z1OXlBN0FkWnNTeUxGakZvVmtBZFdaUFQ4K1RNUG1kTzNmK2tQaUNiYm1TNk9GU1VEVVJwQkpMcjJvaEYxYnpNcGRQNTNQeGNMTnM5S3NXTkt3bGU5SEdYTjFJNVV5L0FnRFlKRDNCdHk3cVl0Mm5BSnpIUmsyc2lPeFNJbjVsNnZjdVdrVk92d3NxZUpMc1BaSmszNFEvY0Z3eXBRZTR5Z3p1RHpacjFpd0lWUGkxK0d4YzJsUFJVd0k4Sk9aMG1POWxQanB3NE1BL1hYcnBwVHZKTlhGeWp4Z3J2eHJGdWRLUFpRR1AxWEVlU3ZxQis0blQ4S09EQncrdXVQamlpM2VTNzhXbDM4QkVQNnZVUXhjU3Bvb1JTbW53WGtkSHg3NFpNMlpBZXVjbEZuUzE0cEVFb1kvM3pqdnY3TC81NXB0ZnJhcXFtck5reVpMMTZFV3lzQU1VbklFS2RieW9YSmtpSkZiQ2x0V3JWODhIaGhnWkdka2kxT3VwekZ3UFNpNnNobGJiS1MrLy9QSUNvV3BqYnlZQkJ5RzdWbEEzNlZaZytxbk9UNUxQVGJLcVBrbnBaMGdQcWJaMG95SjgwclNmZFhpY1p6bEpZTmtTalc2d1FWTEgyU1ExTS93T1hqazBFMXhHSkJ5MW5tdzNzcFlQS29VVm1qbTFKa3Izb3RiV2FtSHQvQUNzcWx3S3orR3FUWnhZQk9QU0NrWXpsbXFJYncxUEJhQmdCZXNmcmJWVjBJWFBEV25rRkFTS2xFSlBCcXUzdkJDRWlSVVpKVXBTQ3JoSVpKSzRia25nSWxpaG1iVG9HY2tGbzZPai94MEtoYjZ6ZnYzNmVYQmd0d2c2d1pKR0NUcHZSUjQwZGxvMkZxMzBja1dhb3N6ZDZ3YkJWRjJoeHRCRHNzQVB2QXNpa0Y1NTVaWExpY3FZdWdic0E5Q1orVUN0VVdZdXFwWTZUSG5Sb2tVb2xjcFdYWFpDdnd4MHpWYkVUMVdVRHZ1STZLY0VMV2t0TGxQVWxJUHhsTHY2VFBrT0lnQ05DTE9sdkVsYmpHeDUwTFNQQytCSGhlQ3hCZHhDTkc4SmlHa1FjbUJnWUN1OHRyVzFMU2FSTXlwaUpxVTlubzhBTmRIVDAvTmR2aGk4MnRmWE4wNnVyYlREcUl0Qjk0VEMxcEJRZ1Bkc25qLzcrT09QWDRmWHBxYW1xeVcrVXhVMWtLM1FkSHNYWk9tUlZrVlBtL1NXaXBCcjE2NEZRc1pyYTJ1L3BUSW9XSlEwQ2FLazVzQzlZWHg4L0xjWFhIREJLZ2p0RTRkdXhUVndzOUkreVRJZkQzbzJ6anNsT0pZdFc3YVA3NE43Z3NIZ0VzaVBadW1Id0ROSmJVWkx0c2NDUDFVbDVUazNEQklPRmdzOFNjRndnMFNqMGJkaHp3RitTcGFlSVNJbmtodEdHRGdSZ0o1c0FBMk91bUFUZnIxQU1SWW1OdzA2azNKRktZNFJpMGs4WkFUS1FPQ0ZjQUZoRVhvYUYwMlRJRkxmVVozR0FCbE9iT0tZVXR2Vk44dk5EMng3dThla0pIZXNsZytCQkpKVnNJcFlXcXNZU1dlRGErVlVPQkp3SDlZQTFnQlc4SjNKSHd5K2I4eUhKaGI1T21ZdWFZUmVrelQvdWVDN0FjSjNvY2tDNExRTUVRZ3doM3hTRWdtRWdRU1lUSjdLcFlXSUZ6a2ZsUnl1ak1IcC9tS29OQnJBRlFYZ05PMFBDeXVRbzFib3dlVTFGTHlnOWNtNXdCRFZSYVIzVlZrQXVNQ0VwR3AwS2o1MWVIajQ1NUlVUmhEakVaaHczUlNWOUlVd1FPTFhySGRLeUVJeWt1Nmw2Vm0wdnlwVWllR1VSVVVvSksxdWtqcWlGcmQ2bE8ra3c4eUNrd1hBYWVxTXFOTUUyU0F4a2srSkIzcGpvSWJoT01jakxVa0sxeStaK21CbERXQU40SXphSDNUSWVRWSs0a0xrWjRTUGdPZncxRXc0a080ZWVlL0xCY2tMNVBwcXA5dTJTZ2R3bWpxRCt3dStHaDRpSzFzemdoZmVVeFdFSThZdjAySE41YURLNlY1V0FGWWFzekEyV21RVVBjMmt1SEZ4a0hkTVlyc3h3cU01OFYwbEExaFdaMUxWRW5GdkN5b055UlpwZ3IvaFBjVXF1STQ1U09IU0FKNzBBRlpLWVVqb29KVkJ3YkFLQmZBVVdWdEpxYVpXWTY1OGR6WUFPRTBLWTlWQWtxWjFDTHBWNVQreWI3RXNYYW9CckFHczREdlRYbGdJandHYlZVcmVKdm5TRWVJdEtablFLQVVoTFZkRDJWUnYwY1pJcVpkR3NnZko2UlE4emZTVEJzQ1U3MHpDQTdTOGJGVkN1ZEQ0bEpUNWJaUmNscE1Td0dsQkdyQzZXYWt1ZUFKOFoyZm5UU3c5NlR6bkl5dzEwMDhxQUZzS0R5aFlaNlh4Z1dwTml0Vm5ySGM5V1FBc3I0YXA0QTRtNmliTFJpdncyMG5KNTdTeXZsY0RXSGNIZkVkVjZWcmtLZGlXOFQzdVAwUGhPbkhLd25aeWtvTUt2TjVTQTloVHBMU3ViTVNrTWFlcHMydWdzTnU4ZWZQYXVOUTlldU9OTi9hUTcwRTJFczJpeVRtZVZ3ZGduRjNOQWQvSlZWQ3l1WUtBMTZKTWtibFZTcDRyQndBemxuNTBwVlZDZnNhcUVSckF1amxJY1ZTbEM2cHNLY2tNUEZkeW9lRXZNYjB4L1M5Qi9rOHdjM2FJaDZuelhrdDliS1Z1RlI3TktWNFRFbitwMGxrcHZ5V2s3NWUwK2N1TWtCNkpTS3BjeTdLdmM2VmJ4WUdZQ2hLYUM1eVVlSy9zZU01ZlpzUk1zdlJ5TUV4Qk9BMWMzUW9GNG1TVzY1Z0dzRDJDYXFEcVZrcmVxNGptMWIrWmJycFZidk5yRXVoMlZvblFTZVpWOEd0QzZxWmI1VGF0UXV1bW13YXdicnJwVm9yMi93SU1BQ1lybE9vMDZBYmVBQUFBQUVsRlRrU3VRbUNDXCIpIDJ4KTtcbiAgd2lkdGg6IDQwcHg7XG4gIGhlaWdodDogNDJweDtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICBzcGVhazogbm9uZTtcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xuICB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlO1xuICBtYXJnaW4tcmlnaHQ6IDRweDtcbiAgLXdlYmtpdC10cmFuc2l0aW9uOiBvcGFjaXR5IDAuMjVzIGVhc2U7XG4gIHRyYW5zaXRpb246IG9wYWNpdHkgMC4yNXMgZWFzZTtcbn1cblxuLm0zNjAtc3Bpbi14IC5tMzYwLWhpbnQtbWVzc2FnZTpiZWZvcmUge1xuICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiAtNDBweDtcbn1cblxuLm0zNjAtc3Bpbi15IC5tMzYwLWhpbnQtbWVzc2FnZTpiZWZvcmUge1xuICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiAtODBweDtcbn1cblxuLm0zNjAtbG9hZGVyIHtcbiAgYm9yZGVyLXJhZGl1czogMTAwJTtcbiAgZm9udC1zaXplOiAwO1xuICBvcGFjaXR5OiAwO1xuICBwYWRkaW5nOiAwO1xuICB3aWR0aDogNTBweDtcbiAgaGVpZ2h0OiA1MHB4O1xuICBsZWZ0OiA4cHg7XG4gIGJvdHRvbTogOHB4O1xufVxuXG4ubTM2MC1sb2FkZXI6YWZ0ZXIge1xuICBjb250ZW50OiBhdHRyKGRhdGEtcHJvZ3Jlc3MpO1xuICBmb250LXNpemU6IDEycHg7XG4gIGxpbmUtaGVpZ2h0OiAxO1xuICBkaXNwbGF5OiBibG9jaztcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICB0b3A6IDUwJTtcbiAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTUwJSk7XG4gIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgtNTAlKTtcbn1cblxuLm0zNjAtbG9hZGVyOmJlZm9yZSB7XG4gIGNvbnRlbnQ6ICcnO1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHRvcDogMDtcbiAgYm90dG9tOiAwO1xuICBsZWZ0OiAwO1xuICByaWdodDogMDtcbiAgd2lkdGg6IDQ0cHg7XG4gIGhlaWdodDogNDRweDtcbiAgbWFyZ2luOiBhdXRvO1xuICB0ZXh0LWluZGVudDogLTk5OTllbTtcbiAgYm9yZGVyLXJhZGl1czogNTAlO1xuICBib3JkZXI6IDJweCBzb2xpZCB3aGl0ZTtcbiAgYm9yZGVyLXRvcC1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gIGJveC1zaXppbmc6IGJvcmRlci1ib3g7XG59XG5cbi5tMzYwLWxvYWRlci5zaG93biB7XG4gIG9wYWNpdHk6IDE7XG4gIHotaW5kZXg6IDEwMDA7XG4gIC13ZWJraXQtdHJhbnNpdGlvbjogb3BhY2l0eSAwcztcbiAgdHJhbnNpdGlvbjogb3BhY2l0eSAwcztcbn1cblxuLm0zNjAtbG9hZGVyLnNob3duOmJlZm9yZSB7XG4gIC13ZWJraXQtYW5pbWF0aW9uOiBzcGluLWxvYWRpbmcgMnMgaW5maW5pdGUgbGluZWFyO1xuICBhbmltYXRpb246IHNwaW4tbG9hZGluZyAycyBpbmZpbml0ZSBsaW5lYXI7XG59XG5cbkAtd2Via2l0LWtleWZyYW1lcyBzcGluLWxvYWRpbmcge1xuICAwJSB7XG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHJvdGF0ZSgwZGVnKTtcbiAgICB0cmFuc2Zvcm06IHJvdGF0ZSgwZGVnKTtcbiAgfVxuICAxMDAlIHtcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogcm90YXRlKDM1OWRlZyk7XG4gICAgdHJhbnNmb3JtOiByb3RhdGUoMzU5ZGVnKTtcbiAgfVxufVxuXG5Aa2V5ZnJhbWVzIHNwaW4tbG9hZGluZyB7XG4gIDAlIHtcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogcm90YXRlKDBkZWcpO1xuICAgIHRyYW5zZm9ybTogcm90YXRlKDBkZWcpO1xuICB9XG4gIDEwMCUge1xuICAgIC13ZWJraXQtdHJhbnNmb3JtOiByb3RhdGUoMzU5ZGVnKTtcbiAgICB0cmFuc2Zvcm06IHJvdGF0ZSgzNTlkZWcpO1xuICB9XG59XG5cbi5sdC1pZTEwLW1hZ2ljIC5tMzYwLWxvYWRlciB7XG4gIGJvcmRlci1yYWRpdXM6IDJlbTtcbiAgZm9udC1zaXplOiAxNHB4O1xuICBwYWRkaW5nOiAuOGVtIDEuMmVtO1xuICB3aWR0aDogYXV0bztcbiAgaGVpZ2h0OiBhdXRvO1xufVxuXG4ubHQtaWUxMC1tYWdpYyAubTM2MC1sb2FkZXI6YmVmb3JlIHtcbiAgZGlzcGxheTogbm9uZTtcbn1cblxuLmx0LWllMTAtbWFnaWMgLm0zNjAtbG9hZGVyOmFmdGVyIHtcbiAgY29udGVudDogXCJMb2FkaW5nLi4uICAgXCIgYXR0cihkYXRhLXByb2dyZXNzKTtcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xufVxuXG4ubHQtaWU5LW1hZ2ljIC5tMzYwLWhpbnQtbWVzc2FnZSxcbi5sdC1pZTktbWFnaWMgLm0zNjAtbG9hZGVyLnNob3duIHtcbiAgYmFja2dyb3VuZDogdHJhbnNwYXJlbnQgIWltcG9ydGFudDtcbiAgZmlsdGVyOiBwcm9naWQ6RFhJbWFnZVRyYW5zZm9ybS5NaWNyb3NvZnQuZ3JhZGllbnQoR3JhZGllbnRUeXBlPTAsU3RhcnRDb2xvclN0cj0nIzdjMzEzMzNEJywgRW5kQ29sb3JTdHI9JyM3YzMxMzMzRCcpO1xufVxuXG4ubHQtaWU5LW1hZ2ljIC5tMzYwLWhpbnQtaGlkZGVuIHtcbiAgZmlsdGVyOiBhbHBoYShvcGFjaXR5PTApO1xufVxuXG4ubHQtaWU5LW1hZ2ljIC5tMzYwLWxvYWRlciB7XG4gIGZpbHRlcjogYWxwaGEob3BhY2l0eT0wKTtcbiAgcmlnaHQ6IDA7XG4gIGxlZnQ6IDA7XG4gIHdpZHRoOiA5NnB4O1xuICBtYXJnaW46IGF1dG87XG59XG5cbi5sdC1pZTktbWFnaWMgLk1hZ2ljMzYwLWZ1bGxzY3JlZW4gLm0zNjAtbG9hZGVyIHtcbiAgbGVmdDogOHB4O1xuICByaWdodDogYXV0bztcbn1cblxuLyogTWFnbmlmaWVyICovXG4uTWFnaWMzNjAtY29udGFpbmVyIC5tMzYwLW1hZ25pZmllcixcbi5NYWdpYzM2MC1mdWxsc2NyZWVuIC5tMzYwLW1hZ25pZmllciB7XG4gIGJveC1zaGFkb3c6IDAgMCAxMHB4ICNjY2M7XG4gIGJvcmRlci1jb2xsYXBzZTogc2VwYXJhdGU7XG4gIGJhY2tncm91bmQtY29sb3I6ICNmZmY7XG4gIGN1cnNvcjogbm9uZTtcbiAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgLXdlYmtpdC1tYXNrLWltYWdlOiAtd2Via2l0LXJhZGlhbC1ncmFkaWVudChjaXJjbGUsIHdoaXRlLCBibGFjayk7XG59XG5cbi5sdC1pZTktbWFnaWMgLm0zNjAtbWFnbmlmaWVyIHtcbiAgYm9yZGVyOiAzcHggcmlkZ2UgI2U3ZTdlNztcbn1cblxuLmx0LWllOS1tYWdpYyAubTM2MC1tYWduaWZpZXIubTM2MC1tYWduaWZpZXItaW5uZXIge1xuICBib3JkZXI6IG5vbmUgIWltcG9ydGFudDtcbn1cblxuLk1hZ2ljMzYwLWNvbnRhaW5lci5kZXNrdG9wIC5tMzYwLW1hZ25pZmllci5tMzYwLW1hZ25pZmllci1pbm5lcixcbi5NYWdpYzM2MC1mdWxsc2NyZWVuLmRlc2t0b3AgLm0zNjAtbWFnbmlmaWVyLm0zNjAtbWFnbmlmaWVyLWlubmVyIHtcbiAgY3Vyc29yOiBwb2ludGVyO1xuICBjdXJzb3I6IC13ZWJraXQtem9vbS1vdXQ7XG4gIGN1cnNvcjogLW1vei16b29tLW91dDtcbiAgY3Vyc29yOiB6b29tLW91dDtcbiAgYm94LXNoYWRvdzogbm9uZTtcbn1cblxuLm0zNjAtbWFnbmlmaWVyIGltZyB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZSAhaW1wb3J0YW50O1xuICBtYXgtd2lkdGg6IG5vbmUgIWltcG9ydGFudDtcbiAgbWF4LWhlaWdodDogbm9uZSAhaW1wb3J0YW50O1xuICBtaW4td2lkdGg6IDAgIWltcG9ydGFudDtcbiAgbWluLWhlaWdodDogMCAhaW1wb3J0YW50O1xuICBib3JkZXI6IDAgIWltcG9ydGFudDtcbiAgcGFkZGluZzogMCAhaW1wb3J0YW50O1xuICBtYXJnaW46IDAgIWltcG9ydGFudDtcbiAgb3V0bGluZTogMCAhaW1wb3J0YW50O1xuICBib3gtc2l6aW5nOiBib3JkZXItYm94O1xuICAtd2Via2l0LXVzZXItc2VsZWN0OiBub25lO1xuICAtbW96LXVzZXItc2VsZWN0OiBub25lO1xuICAtbXMtdXNlci1zZWxlY3Q6IG5vbmU7XG4gIHVzZXItc2VsZWN0OiBub25lO1xuICAtd2Via2l0LXRvdWNoLWNhbGxvdXQ6IG5vbmU7XG4gIC13ZWJraXQtdGFwLWhpZ2hsaWdodC1jb2xvcjogdHJhbnNwYXJlbnQ7XG59XG5cbi5tMzYwLW1hZ25pZmllci1sb2FkZXItaG9sZGVyIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gIGN1cnNvcjogZGVmYXVsdDtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB0b3A6IDA7XG4gIHotaW5kZXg6IDE7XG4gIHdpZHRoOiAxMDAlO1xuICBoZWlnaHQ6IDEwMCU7XG59XG5cbi5pZTktbWFnaWMgLm0zNjAtbWFnbmlmaWVyLWxvYWRlci1ob2xkZXIsXG4ubHQtaWU5LW1hZ2ljIC5tMzYwLW1hZ25pZmllci1sb2FkZXItaG9sZGVyIHtcbiAgZmlsdGVyOiBhbHBoYShvcGFjaXR5PTYwKTtcbn1cblxuLm0zNjAtbWFnbmlmaWVyLWxvYWRlci1ob2xkZXIgLm0zNjAtbG9hZGVyIHtcbiAgb3BhY2l0eTogMTtcbiAgdG9wOiAwO1xuICBib3R0b206IDA7XG4gIGxlZnQ6IDA7XG4gIHJpZ2h0OiAwO1xuICBtYXJnaW46IGF1dG87XG4gIC13ZWJraXQtdHJhbnNmb3JtOiBzY2FsZSgwLjgpO1xuICB0cmFuc2Zvcm06IHNjYWxlKDAuOCk7XG59XG5cbi5tMzYwLW1hZ25pZmllci1sb2FkZXItaG9sZGVyIC5tMzYwLWxvYWRlcjpiZWZvcmUge1xuICAtd2Via2l0LWFuaW1hdGlvbjogc3Bpbi1sb2FkaW5nIDJzIGluZmluaXRlIGxpbmVhcjtcbiAgYW5pbWF0aW9uOiBzcGluLWxvYWRpbmcgMnMgaW5maW5pdGUgbGluZWFyO1xufVxuXG4vKlxuXG5cbiAgIE1hZ2ljIFNjcm9sbCB2Mi4wLjI5IFxuICAgQ29weXJpZ2h0IDIwMTcgTWFnaWMgVG9vbGJveFxuICAgQnV5IGEgbGljZW5zZTogaHR0cHM6Ly93d3cubWFnaWN0b29sYm94LmNvbS9tYWdpY3Njcm9sbC9cbiAgIExpY2Vuc2UgYWdyZWVtZW50OiBodHRwczovL3d3dy5tYWdpY3Rvb2xib3guY29tL2xpY2Vuc2UvXG5cblxuKi9cbi5NYWdpY1Njcm9sbCxcbi5tY3MtY2FwdGlvbixcbi5tY3MtYnV0dG9uLFxuLm1jcy1pdGVtLFxuLm1jcy1pdGVtIGltZyxcbi5tY3MtaXRlbSA+ICosXG4ubWNzLWJ1bGxldCxcbi5tY3MtYnVsbGV0OmJlZm9yZSxcbi5tY3MtYnVsbGV0OmFmdGVyLFxuLm1jcy13cmFwcGVyLFxuLm1jcy1pdGVtcy1jb250YWluZXIge1xuICBtYXJnaW46IDA7XG4gIHBhZGRpbmc6IDA7XG4gIG91dGxpbmU6IDA7XG4gIC13ZWJraXQtYm94LXNpemluZzogYm9yZGVyLWJveDtcbiAgLW1vei1ib3gtc2l6aW5nOiBib3JkZXItYm94O1xuICBib3gtc2l6aW5nOiBib3JkZXItYm94O1xufVxuXG4uTWFnaWNTY3JvbGwsXG4ubWNzLWl0ZW0sXG4ubWNzLWl0ZW0gYSxcbi5tY3MtaXRlbSBpbWcsXG4ubWNzLWl0ZW1zLWNvbnRhaW5lciB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbn1cblxuLk1hZ2ljU2Nyb2xsLFxuLm1jcy1pdGVtLFxuLm1jcy13cmFwcGVyLFxuLm1jcy1pdGVtcy1jb250YWluZXIge1xuICBvdmVyZmxvdzogaGlkZGVuO1xuICBkaXJlY3Rpb246IGx0cjtcbn1cblxuLm1jcy13cmFwcGVyLFxuLm1jcy1pdGVtIGltZyB7XG4gIGxpbmUtaGVpZ2h0OiAxMDAlO1xufVxuXG4uTWFnaWNTY3JvbGwge1xuICB6LWluZGV4OiAxO1xuICBjdXJzb3I6IC13ZWJraXQtZ3JhYjtcbiAgY3Vyc29yOiAtby1ncmFiO1xuICBjdXJzb3I6IC1tcy1ncmFiO1xuICBjdXJzb3I6IGdyYWI7XG4gIC1tb3otdXNlci1zZWxlY3Q6IG5vbmU7XG4gIC13ZWJraXQtdXNlci1zZWxlY3Q6IG5vbmU7XG4gIC13ZWJraXQtdG91Y2gtY2FsbG91dDogbm9uZTtcbiAgLXdlYmtpdC10YXAtaGlnaGxpZ2h0LWNvbG9yOiB0cmFuc3BhcmVudDtcbn1cblxuLk1hZ2ljU2Nyb2xsLk1hZ2ljU2Nyb2xsLWhvcml6b250YWwge1xuICAtbW96LXRvdWNoLWFjdGlvbjogcGFuLXk7XG4gIC1tcy10b3VjaC1hY3Rpb246IHBhbi15O1xuICB0b3VjaC1hY3Rpb246IHBhbi15O1xufVxuXG4uTWFnaWNTY3JvbGwuTWFnaWNTY3JvbGwtdmVydGljYWwge1xuICAtbW96LXRvdWNoLWFjdGlvbjogcGFuLXg7XG4gIC1tcy10b3VjaC1hY3Rpb246IHBhbi14O1xuICB0b3VjaC1hY3Rpb246IHBhbi14O1xufVxuXG5ib2R5Lm1jcy1kcmFnZ2luZyB7XG4gIGN1cnNvcjogbW92ZTtcbiAgY3Vyc29yOiAtd2Via2l0LWdyYWJiaW5nO1xuICBjdXJzb3I6IC1vLWdyYWJiaW5nO1xuICBjdXJzb3I6IC1tcy1ncmFiYmluZztcbiAgY3Vyc29yOiBncmFiYmluZztcbn1cblxuYm9keS5tY3MtZHJhZ2dpbmcgLk1hZ2ljU2Nyb2xsLFxuYm9keS5tY3MtZHJhZ2dpbmcgYnV0dG9uLm1jcy1idXR0b24ubWNzLWhvcml6b250YWwubWNzLWJ1dHRvbi1hcnJvdyB7XG4gIGN1cnNvcjogaW5oZXJpdDtcbn1cblxuLm1jcy1pdGVtLFxuLk1hZ2ljU2Nyb2xsIGZpZ3VyZSxcbi5tY3MtaXRlbSAubWNzLWNhcHRpb24ge1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG59XG5cbi5tY3MtaXRlbSBpbWcge1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2sgIWltcG9ydGFudDtcbn1cblxuLk1hZ2ljU2Nyb2xsID4gKiB7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgbWF4LXdpZHRoOiAxMDAlO1xufVxuXG4uTWFnaWNTY3JvbGwgPiAqOmZpcnN0LWNoaWxkIHtcbiAgdmlzaWJpbGl0eTogaGlkZGVuO1xufVxuXG4uTWFnaWNTY3JvbGwgPiAqOm50aC1jaGlsZChuKzIpIHtcbiAgZGlzcGxheTogbm9uZTtcbn1cblxuLk1hZ2ljU2Nyb2xsID4gYSB7XG4gIGxpbmUtaGVpZ2h0OiAxMDAlO1xufVxuXG4uTWFnaWNTY3JvbGwgaW1nIHtcbiAgdmlzaWJpbGl0eTogaGlkZGVuO1xufVxuXG4uTWFnaWNTY3JvbGwgLm1jcy1pdGVtIGltZyB7XG4gIHZpc2liaWxpdHk6IHZpc2libGU7XG4gIGZsb2F0OiBub25lICFpbXBvcnRhbnQ7XG59XG5cbi5tY3MtYnV0dG9uLFxuLm1jcy1idWxsZXRzLFxuLm1jcy13cmFwcGVyIHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xufVxuXG4uTWFnaWNTY3JvbGw6YmVmb3JlLFxuLk1hZ2ljU2Nyb2xsIGZpZ2NhcHRpb246YmVmb3JlIHtcbiAgY29udGVudDogJyc7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgdmVydGljYWwtYWxpZ246IHRvcDtcbiAgaGVpZ2h0OiAwO1xufVxuXG4ubWNzLXdyYXBwZXIge1xuICB0b3A6IDA7XG4gIHJpZ2h0OiAwO1xuICBib3R0b206IDA7XG4gIGxlZnQ6IDA7XG4gIHZlcnRpY2FsLWFsaWduOiB0b3A7XG4gIHotaW5kZXg6IDEwMDtcbn1cblxuLm1jcy1pdGVtcy1jb250YWluZXIge1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gIG92ZXJmbG93OiB2aXNpYmxlO1xuICB3aWR0aDogMTAwJTtcbiAgaGVpZ2h0OiAxMDAlO1xufVxuXG4ubWNzLWl0ZW0ge1xuICB0b3A6IDA7XG4gIGxlZnQ6IDA7XG4gIHpvb206IDE7XG4gIGZvbnQtc2l6ZTogOXB0ICFpbXBvcnRhbnQ7XG4gIGxpbmUtaGVpZ2h0OiAxMDAlO1xuICBtYXgtd2lkdGg6IDEwMCU7XG59XG5cbi5tY3MtaXRlbTphZnRlcixcbi5tY3MtaXRlbSA+IGE6YWZ0ZXIge1xuICBjb250ZW50OiAnJztcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICBoZWlnaHQ6IDEwMCU7XG4gIHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7XG59XG5cbi5NYWdpY1Njcm9sbC1ob3Jpem9udGFsIC5tY3MtaXRlbSB7XG4gIGhlaWdodDogMTAwJTtcbn1cblxuLk1hZ2ljU2Nyb2xsLXZlcnRpY2FsIC5tY3MtaXRlbSB7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICB3aWR0aDogMTAwJTtcbn1cblxuLm1jcy1pdGVtID4gYSxcbi5NYWdpY1Njcm9sbC1ob3Jpem9udGFsIC5tY3MtaXRlbXMtY29udGFpbmVyID4gKiB7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbn1cblxuLm1jcy1pdGVtIGEsXG4ubWNzLWl0ZW0gaW1nIHtcbiAgYm9yZGVyOiBub25lO1xuICBtYXgtd2lkdGg6IDEwMCU7XG4gIG1heC1oZWlnaHQ6IDEwMCU7XG59XG5cbi5tY3MtaXRlbSBhIHtcbiAgaGVpZ2h0OiAxMDAlO1xufVxuXG4ubWNzLWl0ZW0gaW1nIHtcbiAgd2lkdGg6IGF1dG87XG4gIGhlaWdodDogYXV0bztcbiAgdmVydGljYWwtYWxpZ246IG1pZGRsZTtcbn1cblxuLk1hZ2ljU2Nyb2xsIGZpZ3VyZSB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgdmVydGljYWwtYWxpZ246IG1pZGRsZTtcbiAgZm9udC1zaXplOiAwO1xuICBtYXJnaW46IDA7XG4gIG1heC13aWR0aDogMTAwJTtcbiAgbWF4LWhlaWdodDogMTAwJTtcbiAgbGluZS1oZWlnaHQ6IG5vcm1hbDtcbn1cblxuLmx0LWllOS1tYWdpYyAubWNzLWl0ZW0gPiBhID4gaW1nIHtcbiAgcG9zaXRpb246IHN0YXRpYztcbn1cblxuLmx0LWllOS1tYWdpYyBmaWdjYXB0aW9uIHtcbiAgZGlzcGxheTogYmxvY2s7XG59XG5cbi5sdC1pZTEwLW1hZ2ljIC5tY3MtaXRlbSBhIGltZyB7XG4gIGJvcmRlcjogbm9uZTtcbn1cblxuLmllNy1tYWdpYyAubWNzLWl0ZW0gaW1nLFxuLmllNy1tYWdpYyAuTWFnaWNTY3JvbGwtdmVydGljYWwgLm1jcy1pdGVtIGEge1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG59XG5cbi5pZTctbWFnaWMgLk1hZ2ljU2Nyb2xsLWhvcml6b250YWwgLm1jcy1pdGVtIHtcbiAgZGlzcGxheTogaW5saW5lO1xufVxuXG4ubWNzLWJ1dHRvbiB7XG4gIGRpc3BsYXk6IGJsb2NrO1xufVxuXG4uTWFnaWNTY3JvbGwgLm1jcy1oaWRkZW4ge1xuICBkaXNwbGF5OiBub25lICFpbXBvcnRhbnQ7XG4gIHZpc2liaWxpdHk6IGhpZGRlbiAhaW1wb3J0YW50O1xufVxuXG4uaWUxMS1tYWdpYyAuTWFnaWNTY3JvbGxbZGF0YS1tb2RlPVwic2Nyb2xsXCJdIC5tY3MtaXRlbXMtY29udGFpbmVyLFxuLk1hZ2ljU2Nyb2xsW2RhdGEtbW9kZT1cImNhcm91c2VsXCJdIC5tY3MtaXRlbXMtY29udGFpbmVyLFxuLk1hZ2ljU2Nyb2xsW2RhdGEtbW9kZT1cImNvdmVyLWZsb3dcIl0gLm1jcy1pdGVtcy1jb250YWluZXIge1xuICAtd2Via2l0LXBlcnNwZWN0aXZlOiAxMDAwcHg7XG4gIC1tb3otcGVyc3BlY3RpdmU6IDEwMDBweDtcbiAgLW8tcGVyc3BlY3RpdmU6IDEwMDBweDtcbiAgcGVyc3BlY3RpdmU6IDEwMDBweDtcbiAgLXdlYmtpdC1wZXJzcGVjdGl2ZS1vcmlnaW4teDogNTAlO1xuICAtd2Via2l0LXBlcnNwZWN0aXZlLW9yaWdpbi15OiA1MCU7XG59XG5cbi5NYWdpY1Njcm9sbFtkYXRhLW1vZGU9XCJjYXJvdXNlbFwiXSAubWNzLWl0ZW0sXG4uTWFnaWNTY3JvbGxbZGF0YS1tb2RlPVwiY292ZXItZmxvd1wiXSAubWNzLWl0ZW0ge1xuICAtd2Via2l0LXRyYW5zZm9ybS1zdHlsZTogcHJlc2VydmUtM2Q7XG4gIC1tb3otdHJhbnNmb3JtLXN0eWxlOiBwcmVzZXJ2ZS0zZDtcbiAgLW8tdHJhbnNmb3JtLXN0eWxlOiBwcmVzZXJ2ZS0zZDtcbiAgdHJhbnNmb3JtLXN0eWxlOiBwcmVzZXJ2ZS0zZDtcbn1cblxuLk1hZ2ljU2Nyb2xsIGZpZ2NhcHRpb24ge1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgbGVmdDogMDtcbiAgZmxvYXQ6IGxlZnQ7XG4gIHdpZHRoOiAxMDAlO1xuICBsaW5lLWhlaWdodDogMTAwJTtcbiAgY2xlYXI6IGJvdGg7XG4gIHotaW5kZXg6IDE1MDtcbn1cblxuLk1hZ2ljU2Nyb2xsIGZpZ2NhcHRpb24sXG4uTWFnaWNTY3JvbGxbZGF0YS1tb2RlPVwiY2Fyb3VzZWxcIl0gLm1jcy1pdGVtIC5tY3MtY2FwdGlvbixcbi5NYWdpY1Njcm9sbFtkYXRhLW1vZGU9XCJjb3Zlci1mbG93XCJdIC5tY3MtaXRlbSAubWNzLWNhcHRpb24ge1xuICBsZWZ0OiA1MCU7XG4gIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGVaKDFweCkgdHJhbnNsYXRlWCgtNTAlKTtcbiAgdHJhbnNmb3JtOiB0cmFuc2xhdGVaKDFweCkgdHJhbnNsYXRlWCgtNTAlKTtcbiAgLXdlYmtpdC1ib3gtc2l6aW5nOiBib3JkZXItYm94O1xuICAtbW96LWJveC1zaXppbmc6IGJvcmRlci1ib3g7XG4gIGJveC1zaXppbmc6IGJvcmRlci1ib3g7XG59XG5cbi5sdC1pZTktbWFnaWMgLk1hZ2ljU2Nyb2xsIGZpZ2NhcHRpb24sXG4ubHQtaWU5LW1hZ2ljIC5NYWdpY1Njcm9sbCBmaWd1cmUgaW1nIHtcbiAgZmxvYXQ6IHJpZ2h0O1xufVxuXG4uTWFnaWNTY3JvbGwgLm1jcy1yZWZsZWN0aW9uIHtcbiAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZVooLTFweCk7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICBsZWZ0OiAwcHg7XG4gIHotaW5kZXg6IDE7XG59XG5cbi5NYWdpY1Njcm9sbCAubWNzLWl0ZW0ubWNzLW5vaW1nIHtcbiAgYmFja2dyb3VuZDogdXJsKFwiZGF0YTppbWFnZS9wbmc7YmFzZTY0LGlWQk9SdzBLR2dvQUFBQU5TVWhFVWdBQUFCNEFBQUFlQ0FZQUFBQTdNSzZpQUFBR0IwbEVRVlJJUzVXWGEyd1VWUlRILzNkbW4yMTM2YjVhMnUyTHNvb2dFaUdHQkdubFlVSk1pRXBpMU1TWUdOSHZvQWpmTkVRL2lhTDRYVEFteGtRU0UzekZhRVNRclpJUUl4SGxhVnRLMjIyNzNVZGh0dDNuUER4M1ptYzd1OXR0ZFpMTjdzNmNlMzduZjg4NTk5NWgrRzhYK3lYVU1TaG80bDR3YlR0amlBRE1ad3pWNWpRTncweGp2eWxNK1haSFlqcktiNjdrbGkxbmNCUVFIZytHRHpLUkhXL3U3NEYzUXdUTmE3cmhEUG9nTnJuMG9VbzJqMEp5RGd1M0p5RmQrd2NMbytQUUZPM1EyV1RzQkkxWEcvbHZDSTZHT2w5bWduakt2M1VUMmg3ZkJwdWRaS1NUVUtXNzBISlphSEpKOThub0FYTTNRZkMyZ3ZtRDRMZG56MTVFK3RJVmFLcXlmekF4OWNsUzhDWEJGOXJDYjd2OHZqZDdYbndhVG9jS1pXSlVoOUVVRzdBYVQrYTgwcFRyUVlqZC9TZ1VCWXgvOWhYeTZibDNIcHVOdlZVTHJ3TkhRK0VUbmtqdmdlNW45d0JqTjZGbTd1bEFWc1kxbXFJS25OTExBeEE4cTRDK2RSZy8vUVBtUjhZL0drekVEbHJoVlg2aXdhNTN2ZXY2anZUczJ3SGx4cCtBWEt3RG1xcHJGWENZWG1ybEI0UUhiQTZJNngvRytKbnp5TndZZTI4Z09YbkVIRmNCODV5NjJnS24rbDk0QXNyMXl3VFVkR2p0OUs2c3VCd0FjVG1jZXhIWGI4SG81OThqUDV1cTVGejNjeG9RdzZ1NzVmNlhub0lZdXdHbXlCVm9PcGxFUnBKMGIxNnZGNEZnME1oek9TTE5sRXIzVW1RcmxXMDlaT3NMQkEyNGFJTVNmZ0NqbjM2TjJNeUU3VGxxQmgwY0RZWmZEenp5NFBGUTJBRXRjeGRDV1drNm5VWW1rMEg3bHhkMVdQeVpiZkI2UEFnR0FuV0Zta3lsSU5YWWVzalc1L05UVDVGdVR5c1NzU0pTdjE4OU5KaU1mY0RCYktpOVM0MDh2eHRDN0phaFZGY0UzSm1NVmFBbVNZZTN0Q0RrYTYzQUUzTjNJYzNQTDJuYkV3N3JlZWZLMWZCOUdQN2lIQWJpa3dLN0VGeTl3N09tNTN3NDRnYW9aWVF5bE1QSHB1TjF6aXJLbTVzUVd1VkY0cDRFYVNIYjBLNjNvMTJ2Y24wbG9WYUxEZWVRdVQyK2svRktYajM0MEJHdkhEZVVXc0RwekFJeXVWeGp1TnNOYVpubkhyY0xQaytMRGpaVUE1S3RIVFBSdjQ0eDZ0dG8zKzZOQXc1cFNvY0tlczh1OW0wNm00T1VMelNFbS9tM0pwMm53K04wSXREc0xsYzJLUzdEQzk1T2pQOThOY3FHMnNJemE3ZjN0UXNMY3hhb0FUWmJLWlhMUXlxVTBIbm1VbDFSMWQ2WTJyY1ZYcWNkQVZKcktOVTdXdjl3dU5yc3c4aXZZM0VDZHhVaVcvd09GUE5WYXMwcDExdUh0d3FCcFpLTTN1OHVONFRmMmJzWlhyc05mZ0x6YTNHS0RUZ0h3K0hDOEIvcG9nNWV1OEhsWUpxNkxKZzdTcFVVU0xLS3lJOS8xOEdIOTJ5RTF5WWdZQmNYVjY5S2JoZkJHaE13Y2kzUHdlR1o3dnVkN1RhQmVzMlMzMXJGY3lVVjg0cUs5ZWR1TmxSOGZkYzZ0SWdDV3UyOE4rb1Y4eG1RVllhSlc0VzRYbHh0a2VZQnA2MVVEYmJzUkZ4bGpxQ2Joa1pYelBHVmdYNjRDZTRoOVl2d2NwNEpYSkR0U0F4bnFiaUNYY2U4ZmQ3RFRTNWoyelBYWXJPNHNnVE5VM0kyWDd4VEI3MjhyYmZoZlNlMVJ4TUZZQ0RMN1VRL3MzazM3bzFsanVrTGlDdTQ2cnpIWDZocUp4NUNnZkplWEFiS25SZVdlVzRuSlM2eU1RdUxmMmZTVHVTVDkzWWFTMlpibCtycEVTRlNNUzdtbVJheUZaeWE0QklscjlHTW1HQ2VYNFZPSjVrSkZUL0ZKOFRLSnVFSU9JNDdmSXBGTmNOU0R2bjA4bEUyeThZc2sxZUZITmZDdWEyTmJNM0Zvemdub3BncVZqWUpmVnZzYk8rV0hSME1nbk5SdFpsVTB5RjNaS3h1MWJ1eXZrQVFuSDliYmEyNVZRdEFjVnJEVk55eUxYSURPZ2pzRjl6MmsySWJMZWRVa09hVWkvVER4SmdyMEpLbHpjOWJsdUxrbTRMQ2c5RVRUTDlucWRCeXBWY0hFbE1uK2ZpcTBIbUZvNFVkQnQvcnVaT2FLcThiWUltZzZzaGpxV0o5R3BMMG1kZVdQdnFZUHZoaEQwM0NBU1ZJQzRyUml2cGxiYk9sRkZ2YnhueE9UUUV4U1NPejZ2S0hQWE1BVjY0NWNiamtKM2NPUTduMXF2bGI5OXFnSDNPTGdEMU5hU3FnU21tdGtEb1JRNkhPVjBqeXgzSXpVUExRNmNGV0gwRHRJUDFZS3hNd3cyQmI0UE90Vm5KYWExc2JmTlh6bzhZcnpHdE1ZTy9MVk8yeVM0UHNNSUxRekNXMURMTVZDWmFuRDFXdnBtcHYwQ3ZNaHpUKy83L0NXQ1BnQWV3S2RRd3dUWHlTTWUxUm12cTFOUzl0SXhxOXRHbE0rZVpjWW5wb09hRHA5MS9ocnM0WTJyN0ZEUUFBQUFCSlJVNUVya0pnZ2c9PVwiKSBjZW50ZXIgY2VudGVyIG5vLXJlcGVhdDtcbn1cblxuLypcbiAqIENhcHRpb25cbiAqL1xuLm1jcy1pdGVtIC5tY3MtY2FwdGlvbiB7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgdmVydGljYWwtYWxpZ246IGJvdHRvbTtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB6LWluZGV4OiAxNTA7XG59XG5cbi5NYWdpY1Njcm9sbFtkYXRhLW1vZGU9XCJjb3Zlci1mbG93XCJdIC5tY3MtaXRlbSBmaWdjYXB0aW9uLm1jcy1jYXB0aW9uLFxuLk1hZ2ljU2Nyb2xsW2RhdGEtbW9kZT1cImNhcm91c2VsXCJdIC5tY3MtaXRlbSBmaWdjYXB0aW9uLm1jcy1jYXB0aW9uIHtcbiAgdG9wOiAxMDAlO1xufVxuXG4uTWFnaWNTY3JvbGxbZGF0YS1tb2RlPVwic2Nyb2xsXCJdIC5tY3MtaXRlbSBmaWd1cmUsXG4uTWFnaWNTY3JvbGxbZGF0YS1tb2RlPVwiYW5pbWF0aW9uXCJdIC5tY3MtaXRlbSBmaWd1cmUge1xuICBvdmVyZmxvdzogaGlkZGVuO1xufVxuXG4uTWFnaWNTY3JvbGxbZGF0YS1tb2RlPVwic2Nyb2xsXCJdIC5tY3MtaXRlbSAubWNzLWNhcHRpb24sXG4uTWFnaWNTY3JvbGxbZGF0YS1tb2RlPVwiYW5pbWF0aW9uXCJdIC5tY3MtaXRlbSAubWNzLWNhcHRpb24ge1xuICBsZWZ0OiAwO1xuICB3aWR0aDogMTAwJTtcbiAgYm90dG9tOiAwO1xuICAtd2Via2l0LXRyYW5zaXRpb246IC13ZWJraXQtdHJhbnNmb3JtIC4yNXM7XG4gIHRyYW5zaXRpb246IHRyYW5zZm9ybSAuMjVzO1xuICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlWSgxNTAlKTtcbiAgLW1zLXRyYW5zZm9ybTogdHJhbnNsYXRlKDAsIDE1MCUpO1xuICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoMTUwJSk7XG59XG5cbi5NYWdpY1Njcm9sbFtkYXRhLW1vZGU9XCJzY3JvbGxcIl0gLm1jcy1pdGVtOmhvdmVyIC5tY3MtY2FwdGlvbixcbi5NYWdpY1Njcm9sbFtkYXRhLW1vZGU9XCJhbmltYXRpb25cIl0gLm1jcy1pdGVtOmhvdmVyIC5tY3MtY2FwdGlvbiB7XG4gIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGVZKDAlKTtcbiAgLW1zLXRyYW5zZm9ybTogdHJhbnNsYXRlKDAsIDAlKTtcbiAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKDAlKTtcbn1cblxuLmx0LWllOS1tYWdpYyAuTWFnaWNTY3JvbGxbZGF0YS1tb2RlPVwic2Nyb2xsXCJdIC5tY3MtaXRlbSAubWNzLWNhcHRpb24sXG4ubHQtaWU5LW1hZ2ljIC5NYWdpY1Njcm9sbFtkYXRhLW1vZGU9XCJhbmltYXRpb25cIl0gLm1jcy1pdGVtIC5tY3MtY2FwdGlvbiB7XG4gIGJvdHRvbTogLTE1MCU7XG59XG5cbi5sdC1pZTktbWFnaWMgLk1hZ2ljU2Nyb2xsW2RhdGEtbW9kZT1cInNjcm9sbFwiXSAubWNzLWl0ZW06aG92ZXIgLm1jcy1jYXB0aW9uLFxuLmx0LWllOS1tYWdpYyAuTWFnaWNTY3JvbGxbZGF0YS1tb2RlPVwiYW5pbWF0aW9uXCJdIC5tY3MtaXRlbTpob3ZlciAubWNzLWNhcHRpb24ge1xuICBib3R0b206IDAlO1xufVxuXG4vKipcbiAqIEJ1dHRvbnMgJiBBcnJvd3NcbiAqL1xuLm1jcy1idXR0b24ge1xuICBjdXJzb3I6IHBvaW50ZXI7XG4gIHotaW5kZXg6IDEwMDA7XG4gIGJhY2tncm91bmQtcmVwZWF0OiBuby1yZXBlYXQ7XG4gIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xuICBib3JkZXI6IDA7XG4gIGJvcmRlci1yYWRpdXM6IDA7XG4gIC13ZWJraXQtdHJhbnNpdGlvbjogb3BhY2l0eSAuMjVzIGxpbmVhcjtcbiAgdHJhbnNpdGlvbjogb3BhY2l0eSAuMjVzIGxpbmVhcjtcbn1cblxuLk1hZ2ljU2Nyb2xsOmhvdmVyID4gLm1jcy1idXR0b246aG92ZXIge1xuICBvcGFjaXR5OiAxO1xufVxuXG4ubWNzLWJ1dHRvbi1hcnJvdyB7XG4gIHotaW5kZXg6IDEyMDtcbn1cblxuLk1hZ2ljU2Nyb2xsLWhvcml6b250YWwgLm1jcy1idXR0b24tYXJyb3cge1xuICB3aWR0aDogNDBweDtcbiAgaGVpZ2h0OiAxMDAlO1xuICB0b3A6IDA7XG59XG5cbi5NYWdpY1Njcm9sbC12ZXJ0aWNhbCAubWNzLWJ1dHRvbi1hcnJvdyB7XG4gIHdpZHRoOiAxMDAlO1xuICBoZWlnaHQ6IDQwcHg7XG4gIGxlZnQ6IDA7XG59XG5cbi5NYWdpY1Njcm9sbC1ob3Jpem9udGFsIC5tY3MtYnV0dG9uLWFycm93LXByZXYge1xuICBsZWZ0OiAwO1xuICByaWdodDogYXV0bztcbiAgdG9wOiAwO1xuICBib3R0b206IDA7XG59XG5cbi5NYWdpY1Njcm9sbC1ob3Jpem9udGFsIC5tY3MtYnV0dG9uLWFycm93LW5leHQge1xuICBsZWZ0OiBhdXRvO1xuICByaWdodDogMDtcbiAgdG9wOiAwO1xuICBib3R0b206IDA7XG59XG5cbi5NYWdpY1Njcm9sbC12ZXJ0aWNhbCAubWNzLWJ1dHRvbi1hcnJvdy1wcmV2IHtcbiAgdG9wOiAwO1xuICBib3R0b206IGF1dG87XG4gIGxlZnQ6IDA7XG4gIHJpZ2h0OiAwO1xufVxuXG4uTWFnaWNTY3JvbGwtdmVydGljYWwgLm1jcy1idXR0b24tYXJyb3ctbmV4dCB7XG4gIHRvcDogYXV0bztcbiAgYm90dG9tOiAwO1xuICBsZWZ0OiAwO1xuICByaWdodDogMDtcbn1cblxuLk1hZ2ljU2Nyb2xsW2RhdGEtbW9kZT1cImNhcm91c2VsXCJdIC5tY3MtaXRlbSxcbi5NYWdpY1Njcm9sbFtkYXRhLW1vZGU9XCJjb3Zlci1mbG93XCJdIC5tY3MtaXRlbSB7XG4gIG92ZXJmbG93OiB2aXNpYmxlO1xufVxuXG4vKlxuICogQnVsbGV0c1xuICovXG4ubWNzLWJ1bGxldHMge1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jayAhaW1wb3J0YW50O1xuICBvcGFjaXR5OiAwO1xuICB0b3A6IDEwMCU7XG59XG5cbi5tY3MtYnVsbGV0cy5zaG93IHtcbiAgb3BhY2l0eTogMS4wO1xuICAtbW96LXRyYW5zaXRpb246IG9wYWNpdHkgLjVzO1xuICAtby10cmFuc2l0aW9uOiBvcGFjaXR5IC41cztcbiAgdHJhbnNpdGlvbjogb3BhY2l0eSAuNXM7XG59XG5cbi5NYWdpY1Njcm9sbC1ob3Jpem9udGFsIC5tY3MtYnVsbGV0cyB7XG4gIHdpZHRoOiAxMDAlO1xuICBsZWZ0OiAwO1xufVxuXG4uTWFnaWNTY3JvbGwtdmVydGljYWwgLm1jcy1idWxsZXRzIHtcbiAgdG9wOiAwO1xuICBsZWZ0OiAxMDAlO1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7XG59XG5cbi5tY3MtYnVsbGV0IHtcbiAgYm9yZGVyLXJhZGl1czogNTAlO1xuICBtYXJnaW46IDRweDtcbiAgY3Vyc29yOiBwb2ludGVyO1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgdGV4dC1pbmRlbnQ6IDk5OTlweDtcbiAgdmVydGljYWwtYWxpZ246IG1pZGRsZTtcbiAgZm9udDogMC8wIGE7XG4gIGNvbG9yOiB0cmFuc3BhcmVudDtcbiAgb3V0bGluZTogbm9uZTtcbn1cblxuLm1jcy1idWxsZXQuYWN0aXZlIHtcbiAgY3Vyc29yOiBkZWZhdWx0O1xufVxuXG4vKipcbiAqIEFuaW1hdGlvbiBtb2RlXG4gKi9cbltkYXRhLW1vZGU9XCJhbmltYXRpb25cIl0gZGl2W2RhdGEtYWN0aW9uPVwiZXhpdFwiXSxcbltkYXRhLW1vZGU9XCJhbmltYXRpb25cIl0gZGl2W2RhdGEtYWN0aW9uPVwiZW50ZXJcIl0ge1xuICAtd2Via2l0LWFuaW1hdGlvbi1kdXJhdGlvbjogMC4zNXM7XG4gIGFuaW1hdGlvbi1kdXJhdGlvbjogMC4zNXM7XG4gIC13ZWJraXQtYW5pbWF0aW9uLXRpbWluZy1mdW5jdGlvbjogZWFzZS1pbjtcbiAgYW5pbWF0aW9uLXRpbWluZy1mdW5jdGlvbjogZWFzZS1pbjtcbn1cblxuW2RhdGEtbW9kZT1cImFuaW1hdGlvblwiXSBkaXZbZGF0YS1hY3Rpb249XCJlbnRlclwiXSB7XG4gIC13ZWJraXQtYW5pbWF0aW9uLXRpbWluZy1mdW5jdGlvbjogY3ViaWMtYmV6aWVyKDAuMTIsIDAuMzcsIDAuMjUsIDEpO1xuICBhbmltYXRpb24tdGltaW5nLWZ1bmN0aW9uOiBjdWJpYy1iZXppZXIoMC4xMiwgMC4zNywgMC4yNSwgMSk7XG59XG5cbltkYXRhLW1vZGU9XCJhbmltYXRpb25cIl0gLm1jcy1pdGVtIHtcbiAgLXdlYmtpdC1hbmltYXRpb24tZHVyYXRpb246IDA7XG4gIC13ZWJraXQtdHJhbnNmb3JtOiBub25lO1xuICBhbmltYXRpb24tbmFtZTogbm9uZTtcbiAgYW5pbWF0aW9uLWR1cmF0aW9uOiAwO1xufVxuXG5bZGF0YS1tb2RlPVwiYW5pbWF0aW9uXCJdIC5tY3MtaXRlbVtkYXRhLWFuaW1hdGlvbi1udGg9XCIxXCJdIHtcbiAgLXdlYmtpdC1hbmltYXRpb24tZGVsYXk6IDAuMTVzO1xuICBhbmltYXRpb24tZGVsYXk6IDAuMTVzO1xufVxuXG5bZGF0YS1tb2RlPVwiYW5pbWF0aW9uXCJdIC5tY3MtaXRlbVtkYXRhLWFuaW1hdGlvbi1udGg9XCIyXCJdIHtcbiAgLXdlYmtpdC1hbmltYXRpb24tZGVsYXk6IDAuMnM7XG4gIGFuaW1hdGlvbi1kZWxheTogMC4ycztcbn1cblxuW2RhdGEtbW9kZT1cImFuaW1hdGlvblwiXSAubWNzLWl0ZW1bZGF0YS1hbmltYXRpb24tbnRoPVwiM1wiXSB7XG4gIC13ZWJraXQtYW5pbWF0aW9uLWRlbGF5OiAwLjI1cztcbiAgYW5pbWF0aW9uLWRlbGF5OiAwLjI1cztcbn1cblxuW2RhdGEtbW9kZT1cImFuaW1hdGlvblwiXSAubWNzLWl0ZW1bZGF0YS1hbmltYXRpb24tbnRoPVwiNFwiXSB7XG4gIC13ZWJraXQtYW5pbWF0aW9uLWRlbGF5OiAwLjNzO1xuICBhbmltYXRpb24tZGVsYXk6IDAuM3M7XG59XG5cbltkYXRhLW1vZGU9XCJhbmltYXRpb25cIl0gLm1jcy1pdGVtW2RhdGEtYW5pbWF0aW9uLW50aD1cIjVcIl0ge1xuICAtd2Via2l0LWFuaW1hdGlvbi1kZWxheTogMC4zNXM7XG4gIGFuaW1hdGlvbi1kZWxheTogMC4zNXM7XG59XG5cbltkYXRhLW1vZGU9XCJhbmltYXRpb25cIl0gLm1jcy1pdGVtW2RhdGEtYW5pbWF0aW9uLW50aD1cIjZcIl0ge1xuICAtd2Via2l0LWFuaW1hdGlvbi1kZWxheTogMC40cztcbiAgYW5pbWF0aW9uLWRlbGF5OiAwLjRzO1xufVxuXG5bZGF0YS1tb2RlPVwiYW5pbWF0aW9uXCJdIC5tY3MtaXRlbVtkYXRhLWFuaW1hdGlvbi1udGg9XCI3XCJdIHtcbiAgLXdlYmtpdC1hbmltYXRpb24tZGVsYXk6IDAuNDVzO1xuICBhbmltYXRpb24tZGVsYXk6IDAuNDVzO1xufVxuXG5bZGF0YS1tb2RlPVwiYW5pbWF0aW9uXCJdIC5tY3MtaXRlbVtkYXRhLWFuaW1hdGlvbi1udGg9XCI4XCJdIHtcbiAgLXdlYmtpdC1hbmltYXRpb24tZGVsYXk6IDAuNXM7XG4gIGFuaW1hdGlvbi1kZWxheTogMC41cztcbn1cblxuW2RhdGEtbW9kZT1cImFuaW1hdGlvblwiXSAubWNzLWl0ZW1bZGF0YS1hbmltYXRpb24tbnRoPVwiOVwiXSB7XG4gIC13ZWJraXQtYW5pbWF0aW9uLWRlbGF5OiAwLjU1cztcbiAgYW5pbWF0aW9uLWRlbGF5OiAwLjU1cztcbn1cblxuW2RhdGEtbW9kZT1cImFuaW1hdGlvblwiXSAubWNzLWl0ZW1bZGF0YS1hbmltYXRpb24tbnRoPVwiMTBcIl0ge1xuICAtd2Via2l0LWFuaW1hdGlvbi1kZWxheTogMC42cztcbiAgYW5pbWF0aW9uLWRlbGF5OiAwLjZzO1xufVxuXG4uTWFnaWNTY3JvbGwtaG9yaXpvbnRhbFtkYXRhLW1vZGU9XCJhbmltYXRpb25cIl0gW2RhdGEtZm9yd2FyZF0gW2RhdGEtZW50ZXJpbmddLFxuLk1hZ2ljU2Nyb2xsLWhvcml6b250YWxbZGF0YS1tb2RlPVwiYW5pbWF0aW9uXCJdIFtkYXRhLWZvcndhcmRdIFtkYXRhLWV4aXRlZF0ge1xuICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlWCgxMDAwMDBweCk7XG4gIHRyYW5zZm9ybTogdHJhbnNsYXRlWCgxMDAwMDBweCk7XG59XG5cbi5NYWdpY1Njcm9sbC1ob3Jpem9udGFsW2RhdGEtbW9kZT1cImFuaW1hdGlvblwiXSBbZGF0YS1iYWNrd2FyZF0gW2RhdGEtZW50ZXJpbmddLFxuLk1hZ2ljU2Nyb2xsLWhvcml6b250YWxbZGF0YS1tb2RlPVwiYW5pbWF0aW9uXCJdIFtkYXRhLWJhY2t3YXJkXSBbZGF0YS1leGl0ZWRdIHtcbiAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZVgoLTEwMDAwMHB4KTtcbiAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKC0xMDAwMDBweCk7XG59XG5cbi5NYWdpY1Njcm9sbC12ZXJ0aWNhbFtkYXRhLW1vZGU9XCJhbmltYXRpb25cIl0gW2RhdGEtZm9yd2FyZF0gW2RhdGEtZW50ZXJpbmddLFxuLk1hZ2ljU2Nyb2xsLXZlcnRpY2FsW2RhdGEtbW9kZT1cImFuaW1hdGlvblwiXSBbZGF0YS1mb3J3YXJkXSBbZGF0YS1leGl0ZWRdIHtcbiAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZVkoMTAwMDAwcHgpO1xuICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoMTAwMDAwcHgpO1xufVxuXG4uTWFnaWNTY3JvbGwtdmVydGljYWxbZGF0YS1tb2RlPVwiYW5pbWF0aW9uXCJdIFtkYXRhLWJhY2t3YXJkXSBbZGF0YS1lbnRlcmluZ10sXG4uTWFnaWNTY3JvbGwtdmVydGljYWxbZGF0YS1tb2RlPVwiYW5pbWF0aW9uXCJdIFtkYXRhLWJhY2t3YXJkXSBbZGF0YS1leGl0ZWRdIHtcbiAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTEwMDAwMHB4KTtcbiAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC0xMDAwMDBweCk7XG59XG5cbi8qKlxuICogU2xpZGVJbiBhbmltYXRpb25cbiAqL1xuW2RhdGEtbW9kZT1cImFuaW1hdGlvblwiXSAubWNzLWl0ZW1bZGF0YS1hY3Rpb249XCJleGl0XCJdLFxuLm1jcy1zbGlkZWluW2RhdGEtbW9kZT1cImFuaW1hdGlvblwiXSAubWNzLWl0ZW1bZGF0YS1hY3Rpb249XCJleGl0XCJdIHtcbiAgLXdlYmtpdC1hbmltYXRpb24tdGltaW5nLWZ1bmN0aW9uOiBlYXNlLWluO1xuICBhbmltYXRpb24tdGltaW5nLWZ1bmN0aW9uOiBlYXNlLWluO1xuICAtd2Via2l0LWFuaW1hdGlvbi1kdXJhdGlvbjogMC4zcztcbiAgYW5pbWF0aW9uLWR1cmF0aW9uOiAwLjNzO1xufVxuXG5bZGF0YS1tb2RlPVwiYW5pbWF0aW9uXCJdIC5tY3MtaXRlbVtkYXRhLWFjdGlvbj1cImVudGVyXCJdLFxuLm1jcy1zbGlkZWluW2RhdGEtbW9kZT1cImFuaW1hdGlvblwiXSAubWNzLWl0ZW1bZGF0YS1hY3Rpb249XCJlbnRlclwiXSB7XG4gIC13ZWJraXQtYW5pbWF0aW9uLXRpbWluZy1mdW5jdGlvbjogY3ViaWMtYmV6aWVyKDAuMTIsIDAuMzcsIDAuMjUsIDEpO1xuICBhbmltYXRpb24tdGltaW5nLWZ1bmN0aW9uOiBjdWJpYy1iZXppZXIoMC4xMiwgMC4zNywgMC4yNSwgMSk7XG4gIC13ZWJraXQtYW5pbWF0aW9uLWR1cmF0aW9uOiAwLjM1cztcbiAgYW5pbWF0aW9uLWR1cmF0aW9uOiAwLjM1cztcbn1cblxuLyogSG9yaXpvbnRhbCBGb3J3YXJkICovXG4uTWFnaWNTY3JvbGwtaG9yaXpvbnRhbFtkYXRhLW1vZGU9XCJhbmltYXRpb25cIl0gW2RhdGEtZm9yd2FyZF0gLm1jcy1pdGVtW2RhdGEtYWN0aW9uPVwiZXhpdFwiXSxcbi5tY3Mtc2xpZGVpbi5NYWdpY1Njcm9sbC1ob3Jpem9udGFsW2RhdGEtbW9kZT1cImFuaW1hdGlvblwiXSBbZGF0YS1mb3J3YXJkXSAubWNzLWl0ZW1bZGF0YS1hY3Rpb249XCJleGl0XCJdIHtcbiAgLXdlYmtpdC1hbmltYXRpb24tbmFtZTogaC1mb3J3YXJkLWV4aXQtc2xpZGVpbjtcbiAgYW5pbWF0aW9uLW5hbWU6IGgtZm9yd2FyZC1leGl0LXNsaWRlaW47XG59XG5cbi5NYWdpY1Njcm9sbC1ob3Jpem9udGFsW2RhdGEtbW9kZT1cImFuaW1hdGlvblwiXSBbZGF0YS1mb3J3YXJkXSAubWNzLWl0ZW1bZGF0YS1hY3Rpb249XCJlbnRlclwiXSxcbi5tY3Mtc2xpZGVpbi5NYWdpY1Njcm9sbC1ob3Jpem9udGFsW2RhdGEtbW9kZT1cImFuaW1hdGlvblwiXSBbZGF0YS1mb3J3YXJkXSAubWNzLWl0ZW1bZGF0YS1hY3Rpb249XCJlbnRlclwiXSB7XG4gIC13ZWJraXQtYW5pbWF0aW9uLW5hbWU6IGgtZm9yd2FyZC1lbnRlci1zbGlkZWluO1xuICBhbmltYXRpb24tbmFtZTogaC1mb3J3YXJkLWVudGVyLXNsaWRlaW47XG59XG5cbkAtd2Via2l0LWtleWZyYW1lcyBoLWZvcndhcmQtZXhpdC1zbGlkZWluIHtcbiAgMCUge1xuICAgIG9wYWNpdHk6IDE7XG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZVgoMCk7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKDApO1xuICB9XG4gIDEwMCUge1xuICAgIG9wYWNpdHk6IDA7XG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZVgoLTYwMHB4KTtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoLTYwMHB4KTtcbiAgfVxufVxuXG5Aa2V5ZnJhbWVzIGgtZm9yd2FyZC1leGl0LXNsaWRlaW4ge1xuICAwJSB7XG4gICAgb3BhY2l0eTogMTtcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlWCgwKTtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoMCk7XG4gIH1cbiAgMTAwJSB7XG4gICAgb3BhY2l0eTogMDtcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlWCgtNjAwcHgpO1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWCgtNjAwcHgpO1xuICB9XG59XG5cbkAtd2Via2l0LWtleWZyYW1lcyBoLWZvcndhcmQtZW50ZXItc2xpZGVpbiB7XG4gIDAlIHtcbiAgICBvcGFjaXR5OiAwO1xuICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGVYKDE4MHB4KTtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoMTgwcHgpO1xuICB9XG4gIDEwMCUge1xuICAgIG9wYWNpdHk6IDE7XG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZVgoMHB4KTtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoMHB4KTtcbiAgfVxufVxuXG5Aa2V5ZnJhbWVzIGgtZm9yd2FyZC1lbnRlci1zbGlkZWluIHtcbiAgMCUge1xuICAgIG9wYWNpdHk6IDA7XG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZVgoMTgwcHgpO1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWCgxODBweCk7XG4gIH1cbiAgMTAwJSB7XG4gICAgb3BhY2l0eTogMTtcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlWCgwcHgpO1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWCgwcHgpO1xuICB9XG59XG5cbi8qIEhvcml6b250YWwgQmFja3dhcmQgKi9cbi5NYWdpY1Njcm9sbC1ob3Jpem9udGFsW2RhdGEtbW9kZT1cImFuaW1hdGlvblwiXSBbZGF0YS1iYWNrd2FyZF0gLm1jcy1pdGVtW2RhdGEtYWN0aW9uPVwiZXhpdFwiXSxcbi5tY3Mtc2xpZGVpbi5NYWdpY1Njcm9sbC1ob3Jpem9udGFsW2RhdGEtbW9kZT1cImFuaW1hdGlvblwiXSBbZGF0YS1iYWNrd2FyZF0gLm1jcy1pdGVtW2RhdGEtYWN0aW9uPVwiZXhpdFwiXSB7XG4gIC13ZWJraXQtYW5pbWF0aW9uLW5hbWU6IGgtYmFja3dhcmQtZXhpdC1zbGlkZWluO1xuICBhbmltYXRpb24tbmFtZTogaC1iYWNrd2FyZC1leGl0LXNsaWRlaW47XG59XG5cbi5NYWdpY1Njcm9sbC1ob3Jpem9udGFsW2RhdGEtbW9kZT1cImFuaW1hdGlvblwiXSBbZGF0YS1iYWNrd2FyZF0gLm1jcy1pdGVtW2RhdGEtYWN0aW9uPVwiZW50ZXJcIl0sXG4ubWNzLXNsaWRlaW4uTWFnaWNTY3JvbGwtaG9yaXpvbnRhbFtkYXRhLW1vZGU9XCJhbmltYXRpb25cIl0gW2RhdGEtYmFja3dhcmRdIC5tY3MtaXRlbVtkYXRhLWFjdGlvbj1cImVudGVyXCJdIHtcbiAgLXdlYmtpdC1hbmltYXRpb24tbmFtZTogaC1iYWNrd2FyZC1lbnRlci1zbGlkZWluO1xuICBhbmltYXRpb24tbmFtZTogaC1iYWNrd2FyZC1lbnRlci1zbGlkZWluO1xufVxuXG5ALXdlYmtpdC1rZXlmcmFtZXMgaC1iYWNrd2FyZC1leGl0LXNsaWRlaW4ge1xuICAwJSB7XG4gICAgb3BhY2l0eTogMTtcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlWCgwKTtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoMCk7XG4gIH1cbiAgMTAwJSB7XG4gICAgb3BhY2l0eTogMDtcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlWCg2MDBweCk7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKDYwMHB4KTtcbiAgfVxufVxuXG5Aa2V5ZnJhbWVzIGgtYmFja3dhcmQtZXhpdC1zbGlkZWluIHtcbiAgMCUge1xuICAgIG9wYWNpdHk6IDE7XG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZVgoMCk7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKDApO1xuICB9XG4gIDEwMCUge1xuICAgIG9wYWNpdHk6IDA7XG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZVgoNjAwcHgpO1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWCg2MDBweCk7XG4gIH1cbn1cblxuQC13ZWJraXQta2V5ZnJhbWVzIGgtYmFja3dhcmQtZW50ZXItc2xpZGVpbiB7XG4gIDAlIHtcbiAgICBvcGFjaXR5OiAwO1xuICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGVYKC0xODBweCk7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKC0xODBweCk7XG4gIH1cbiAgMTAwJSB7XG4gICAgb3BhY2l0eTogMTtcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlWCgwcHgpO1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWCgwcHgpO1xuICB9XG59XG5cbkBrZXlmcmFtZXMgaC1iYWNrd2FyZC1lbnRlci1zbGlkZWluIHtcbiAgMCUge1xuICAgIG9wYWNpdHk6IDA7XG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZVgoLTE4MHB4KTtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoLTE4MHB4KTtcbiAgfVxuICAxMDAlIHtcbiAgICBvcGFjaXR5OiAxO1xuICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGVYKDBweCk7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKDBweCk7XG4gIH1cbn1cblxuLyogVmVydGljYWwgRm9yd2FyZCAqL1xuLk1hZ2ljU2Nyb2xsLXZlcnRpY2FsW2RhdGEtbW9kZT1cImFuaW1hdGlvblwiXSBbZGF0YS1mb3J3YXJkXSAubWNzLWl0ZW1bZGF0YS1hY3Rpb249XCJleGl0XCJdLFxuLm1jcy1zbGlkZWluLk1hZ2ljU2Nyb2xsLXZlcnRpY2FsW2RhdGEtbW9kZT1cImFuaW1hdGlvblwiXSBbZGF0YS1mb3J3YXJkXSAubWNzLWl0ZW1bZGF0YS1hY3Rpb249XCJleGl0XCJdIHtcbiAgLXdlYmtpdC1hbmltYXRpb24tbmFtZTogdi1mb3J3YXJkLWV4aXQtc2xpZGVpbjtcbiAgYW5pbWF0aW9uLW5hbWU6IHYtZm9yd2FyZC1leGl0LXNsaWRlaW47XG59XG5cbi5NYWdpY1Njcm9sbC12ZXJ0aWNhbFtkYXRhLW1vZGU9XCJhbmltYXRpb25cIl0gW2RhdGEtZm9yd2FyZF0gLm1jcy1pdGVtW2RhdGEtYWN0aW9uPVwiZW50ZXJcIl0sXG4ubWNzLXNsaWRlaW4uTWFnaWNTY3JvbGwtdmVydGljYWxbZGF0YS1tb2RlPVwiYW5pbWF0aW9uXCJdIFtkYXRhLWZvcndhcmRdIC5tY3MtaXRlbVtkYXRhLWFjdGlvbj1cImVudGVyXCJdIHtcbiAgLXdlYmtpdC1hbmltYXRpb24tbmFtZTogdi1mb3J3YXJkLWVudGVyLXNsaWRlaW47XG4gIGFuaW1hdGlvbi1uYW1lOiB2LWZvcndhcmQtZW50ZXItc2xpZGVpbjtcbn1cblxuQC13ZWJraXQta2V5ZnJhbWVzIHYtZm9yd2FyZC1leGl0LXNsaWRlaW4ge1xuICAwJSB7XG4gICAgb3BhY2l0eTogMTtcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlWSgwKTtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoMCk7XG4gIH1cbiAgMTAwJSB7XG4gICAgb3BhY2l0eTogMDtcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlWSgtNjAwcHgpO1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgtNjAwcHgpO1xuICB9XG59XG5cbkBrZXlmcmFtZXMgdi1mb3J3YXJkLWV4aXQtc2xpZGVpbiB7XG4gIDAlIHtcbiAgICBvcGFjaXR5OiAxO1xuICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGVZKDApO1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgwKTtcbiAgfVxuICAxMDAlIHtcbiAgICBvcGFjaXR5OiAwO1xuICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC02MDBweCk7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC02MDBweCk7XG4gIH1cbn1cblxuQC13ZWJraXQta2V5ZnJhbWVzIHYtZm9yd2FyZC1lbnRlci1zbGlkZWluIHtcbiAgMCUge1xuICAgIG9wYWNpdHk6IDA7XG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZVkoMTgwcHgpO1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgxODBweCk7XG4gIH1cbiAgMTAwJSB7XG4gICAgb3BhY2l0eTogMTtcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlWSgwcHgpO1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgwcHgpO1xuICB9XG59XG5cbkBrZXlmcmFtZXMgdi1mb3J3YXJkLWVudGVyLXNsaWRlaW4ge1xuICAwJSB7XG4gICAgb3BhY2l0eTogMDtcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlWSgxODBweCk7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKDE4MHB4KTtcbiAgfVxuICAxMDAlIHtcbiAgICBvcGFjaXR5OiAxO1xuICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGVZKDBweCk7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKDBweCk7XG4gIH1cbn1cblxuLyogVmVydGljYWwgQmFja3dhcmQgKi9cbi5NYWdpY1Njcm9sbC12ZXJ0aWNhbFtkYXRhLW1vZGU9XCJhbmltYXRpb25cIl0gW2RhdGEtYmFja3dhcmRdIC5tY3MtaXRlbVtkYXRhLWFjdGlvbj1cImV4aXRcIl0sXG4ubWNzLXNsaWRlaW4uTWFnaWNTY3JvbGwtdmVydGljYWxbZGF0YS1tb2RlPVwiYW5pbWF0aW9uXCJdIFtkYXRhLWJhY2t3YXJkXSAubWNzLWl0ZW1bZGF0YS1hY3Rpb249XCJleGl0XCJdIHtcbiAgLXdlYmtpdC1hbmltYXRpb24tbmFtZTogdi1iYWNrd2FyZC1leGl0LXNsaWRlaW47XG4gIGFuaW1hdGlvbi1uYW1lOiB2LWJhY2t3YXJkLWV4aXQtc2xpZGVpbjtcbn1cblxuLk1hZ2ljU2Nyb2xsLXZlcnRpY2FsW2RhdGEtbW9kZT1cImFuaW1hdGlvblwiXSBbZGF0YS1iYWNrd2FyZF0gLm1jcy1pdGVtW2RhdGEtYWN0aW9uPVwiZW50ZXJcIl0sXG4ubWNzLXNsaWRlaW4uTWFnaWNTY3JvbGwtdmVydGljYWxbZGF0YS1tb2RlPVwiYW5pbWF0aW9uXCJdIFtkYXRhLWJhY2t3YXJkXSAubWNzLWl0ZW1bZGF0YS1hY3Rpb249XCJlbnRlclwiXSB7XG4gIC13ZWJraXQtYW5pbWF0aW9uLW5hbWU6IHYtYmFja3dhcmQtZW50ZXItc2xpZGVpbjtcbiAgYW5pbWF0aW9uLW5hbWU6IHYtYmFja3dhcmQtZW50ZXItc2xpZGVpbjtcbn1cblxuQC13ZWJraXQta2V5ZnJhbWVzIHYtYmFja3dhcmQtZXhpdC1zbGlkZWluIHtcbiAgMCUge1xuICAgIG9wYWNpdHk6IDE7XG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZVkoMCk7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKDApO1xuICB9XG4gIDEwMCUge1xuICAgIG9wYWNpdHk6IDA7XG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZVkoNjAwcHgpO1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSg2MDBweCk7XG4gIH1cbn1cblxuQGtleWZyYW1lcyB2LWJhY2t3YXJkLWV4aXQtc2xpZGVpbiB7XG4gIDAlIHtcbiAgICBvcGFjaXR5OiAxO1xuICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGVZKDApO1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgwKTtcbiAgfVxuICAxMDAlIHtcbiAgICBvcGFjaXR5OiAwO1xuICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGVZKDYwMHB4KTtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoNjAwcHgpO1xuICB9XG59XG5cbkAtd2Via2l0LWtleWZyYW1lcyB2LWJhY2t3YXJkLWVudGVyLXNsaWRlaW4ge1xuICAwJSB7XG4gICAgb3BhY2l0eTogMDtcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlWSgtMTgwcHgpO1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgtMTgwcHgpO1xuICB9XG4gIDEwMCUge1xuICAgIG9wYWNpdHk6IDE7XG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZVkoMHB4KTtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoMHB4KTtcbiAgfVxufVxuXG5Aa2V5ZnJhbWVzIHYtYmFja3dhcmQtZW50ZXItc2xpZGVpbiB7XG4gIDAlIHtcbiAgICBvcGFjaXR5OiAwO1xuICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC0xODBweCk7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC0xODBweCk7XG4gIH1cbiAgMTAwJSB7XG4gICAgb3BhY2l0eTogMTtcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlWSgwcHgpO1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgwcHgpO1xuICB9XG59XG5cbi8qKlxuICogQm91bmNlIGFuaW1hdGlvblxuICovXG4ubWNzLWJvdW5jZVtkYXRhLW1vZGU9XCJhbmltYXRpb25cIl0gLm1jcy1pdGVtW2RhdGEtYWN0aW9uPVwiZXhpdFwiXSB7XG4gIC13ZWJraXQtYW5pbWF0aW9uLXRpbWluZy1mdW5jdGlvbjogY3ViaWMtYmV6aWVyKDAuODQsIDAsIDEsIDEpO1xuICBhbmltYXRpb24tdGltaW5nLWZ1bmN0aW9uOiBjdWJpYy1iZXppZXIoMC44NCwgMCwgMSwgMSk7XG4gIC13ZWJraXQtYW5pbWF0aW9uLWR1cmF0aW9uOiAwLjRzO1xuICBhbmltYXRpb24tZHVyYXRpb246IDAuNHM7XG4gIC8qLXdlYmtpdC1hbmltYXRpb24tZGVsYXk6IDBzO1xuICAgICAgICAgICAgYW5pbWF0aW9uLWRlbGF5OiAwczsqL1xufVxuXG4ubWNzLWJvdW5jZVtkYXRhLW1vZGU9XCJhbmltYXRpb25cIl0gLm1jcy1pdGVtW2RhdGEtYWN0aW9uPVwiZW50ZXJcIl0ge1xuICAtd2Via2l0LWFuaW1hdGlvbi10aW1pbmctZnVuY3Rpb246IGN1YmljLWJlemllcigwLjEyLCAwLjM3LCAwLjI1LCAxKTtcbiAgYW5pbWF0aW9uLXRpbWluZy1mdW5jdGlvbjogY3ViaWMtYmV6aWVyKDAuMTIsIDAuMzcsIDAuMjUsIDEpO1xuICAtd2Via2l0LWFuaW1hdGlvbi1kdXJhdGlvbjogMC40cztcbiAgYW5pbWF0aW9uLWR1cmF0aW9uOiAwLjRzO1xufVxuXG4vKiBIb3Jpem9udGFsIEZvcndhcmQgKi9cbi5tY3MtYm91bmNlLk1hZ2ljU2Nyb2xsLWhvcml6b250YWxbZGF0YS1tb2RlPVwiYW5pbWF0aW9uXCJdIFtkYXRhLWZvcndhcmRdIC5tY3MtaXRlbVtkYXRhLWFjdGlvbj1cImV4aXRcIl0ge1xuICAtd2Via2l0LWFuaW1hdGlvbi1uYW1lOiBoLWZvcndhcmQtZXhpdC1ib3VuY2U7XG4gIGFuaW1hdGlvbi1uYW1lOiBoLWZvcndhcmQtZXhpdC1ib3VuY2U7XG59XG5cbi5tY3MtYm91bmNlLk1hZ2ljU2Nyb2xsLWhvcml6b250YWxbZGF0YS1tb2RlPVwiYW5pbWF0aW9uXCJdIFtkYXRhLWZvcndhcmRdIC5tY3MtaXRlbVtkYXRhLWFjdGlvbj1cImVudGVyXCJdIHtcbiAgLXdlYmtpdC1hbmltYXRpb24tbmFtZTogaC1mb3J3YXJkLWVudGVyLWJvdW5jZTtcbiAgYW5pbWF0aW9uLW5hbWU6IGgtZm9yd2FyZC1lbnRlci1ib3VuY2U7XG59XG5cbkAtd2Via2l0LWtleWZyYW1lcyBoLWZvcndhcmQtZXhpdC1ib3VuY2Uge1xuICAwJSB7XG4gICAgb3BhY2l0eTogMTtcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlWCgwKTtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoMCkgdHJhbnNsYXRlWigtMXB4KTtcbiAgfVxuICA0MCUge1xuICAgIG9wYWNpdHk6IDAuNjtcbiAgfVxuICAxMDAlIHtcbiAgICBvcGFjaXR5OiAwO1xuICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGVYKC0yMDAwcHgpO1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWCgtMjAwMHB4KSB0cmFuc2xhdGVaKC0xcHgpO1xuICB9XG59XG5cbkBrZXlmcmFtZXMgaC1mb3J3YXJkLWV4aXQtYm91bmNlIHtcbiAgMCUge1xuICAgIG9wYWNpdHk6IDE7XG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZVgoMCk7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKDApIHRyYW5zbGF0ZVooLTFweCk7XG4gIH1cbiAgNDAlIHtcbiAgICBvcGFjaXR5OiAwLjY7XG4gIH1cbiAgMTAwJSB7XG4gICAgb3BhY2l0eTogMDtcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlWCgtMjAwMHB4KTtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoLTIwMDBweCkgdHJhbnNsYXRlWigtMXB4KTtcbiAgfVxufVxuXG5ALXdlYmtpdC1rZXlmcmFtZXMgaC1mb3J3YXJkLWVudGVyLWJvdW5jZSB7XG4gIDAlIHtcbiAgICBvcGFjaXR5OiAwO1xuICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGVYKDMwMDBweCk7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKDMwMDBweCk7XG4gIH1cbiAgNjAlIHtcbiAgICBvcGFjaXR5OiAxO1xuICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGVYKC0zMHB4KTtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoLTMwcHgpO1xuICB9XG4gIDc1JSB7XG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZVgoMTBweCk7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKDEwcHgpO1xuICB9XG4gIDkwJSB7XG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZVgoLTVweCk7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKC01cHgpO1xuICB9XG4gIDEwMCUge1xuICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGVYKDBweCk7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKDBweCk7XG4gIH1cbn1cblxuQGtleWZyYW1lcyBoLWZvcndhcmQtZW50ZXItYm91bmNlIHtcbiAgMCUge1xuICAgIG9wYWNpdHk6IDA7XG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZVgoMzAwMHB4KTtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoMzAwMHB4KTtcbiAgfVxuICA2MCUge1xuICAgIG9wYWNpdHk6IDE7XG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZVgoLTMwcHgpO1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWCgtMzBweCk7XG4gIH1cbiAgNzUlIHtcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlWCgxMHB4KTtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoMTBweCk7XG4gIH1cbiAgOTAlIHtcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlWCgtNXB4KTtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoLTVweCk7XG4gIH1cbiAgMTAwJSB7XG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZVgoMHB4KTtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoMHB4KTtcbiAgfVxufVxuXG4vKiBIb3Jpem9udGFsIEJhY2t3YXJkICovXG4ubWNzLWJvdW5jZS5NYWdpY1Njcm9sbC1ob3Jpem9udGFsW2RhdGEtbW9kZT1cImFuaW1hdGlvblwiXSBbZGF0YS1iYWNrd2FyZF0gLm1jcy1pdGVtW2RhdGEtYWN0aW9uPVwiZXhpdFwiXSB7XG4gIC13ZWJraXQtYW5pbWF0aW9uLW5hbWU6IGgtYmFja3dhcmQtZXhpdC1ib3VuY2U7XG4gIGFuaW1hdGlvbi1uYW1lOiBoLWJhY2t3YXJkLWV4aXQtYm91bmNlO1xufVxuXG4ubWNzLWJvdW5jZS5NYWdpY1Njcm9sbC1ob3Jpem9udGFsW2RhdGEtbW9kZT1cImFuaW1hdGlvblwiXSBbZGF0YS1iYWNrd2FyZF0gLm1jcy1pdGVtW2RhdGEtYWN0aW9uPVwiZW50ZXJcIl0ge1xuICAtd2Via2l0LWFuaW1hdGlvbi1uYW1lOiBoLWJhY2t3YXJkLWVudGVyLWJvdW5jZTtcbiAgYW5pbWF0aW9uLW5hbWU6IGgtYmFja3dhcmQtZW50ZXItYm91bmNlO1xufVxuXG5ALXdlYmtpdC1rZXlmcmFtZXMgaC1iYWNrd2FyZC1leGl0LWJvdW5jZSB7XG4gIDAlIHtcbiAgICBvcGFjaXR5OiAxO1xuICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGVYKDApO1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWCgwKSB0cmFuc2xhdGVaKC0xcHgpO1xuICB9XG4gIDQwJSB7XG4gICAgb3BhY2l0eTogMC42O1xuICB9XG4gIDEwMCUge1xuICAgIG9wYWNpdHk6IDA7XG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZVgoMjAwMHB4KTtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoMjAwMHB4KSB0cmFuc2xhdGVaKC0xcHgpO1xuICB9XG59XG5cbkBrZXlmcmFtZXMgaC1iYWNrd2FyZC1leGl0LWJvdW5jZSB7XG4gIDAlIHtcbiAgICBvcGFjaXR5OiAxO1xuICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGVYKDApO1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWCgwKSB0cmFuc2xhdGVaKC0xcHgpO1xuICB9XG4gIDQwJSB7XG4gICAgb3BhY2l0eTogMC42O1xuICB9XG4gIDEwMCUge1xuICAgIG9wYWNpdHk6IDA7XG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZVgoMjAwMHB4KTtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoMjAwMHB4KSB0cmFuc2xhdGVaKC0xcHgpO1xuICB9XG59XG5cbkAtd2Via2l0LWtleWZyYW1lcyBoLWJhY2t3YXJkLWVudGVyLWJvdW5jZSB7XG4gIDAlIHtcbiAgICBvcGFjaXR5OiAwO1xuICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGVYKC0zMDAwcHgpO1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWCgtMzAwMHB4KTtcbiAgfVxuICA2MCUge1xuICAgIG9wYWNpdHk6IDE7XG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZVgoMzBweCk7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKDMwcHgpO1xuICB9XG4gIDc1JSB7XG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZVgoLTEwcHgpO1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWCgtMTBweCk7XG4gIH1cbiAgOTAlIHtcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlWCg1cHgpO1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWCg1cHgpO1xuICB9XG4gIDEwMCUge1xuICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGVYKDBweCk7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKDBweCk7XG4gIH1cbn1cblxuQGtleWZyYW1lcyBoLWJhY2t3YXJkLWVudGVyLWJvdW5jZSB7XG4gIDAlIHtcbiAgICBvcGFjaXR5OiAwO1xuICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGVYKC0zMDAwcHgpO1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWCgtMzAwMHB4KTtcbiAgfVxuICA2MCUge1xuICAgIG9wYWNpdHk6IDE7XG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZVgoMzBweCk7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKDMwcHgpO1xuICB9XG4gIDc1JSB7XG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZVgoLTEwcHgpO1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWCgtMTBweCk7XG4gIH1cbiAgOTAlIHtcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlWCg1cHgpO1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWCg1cHgpO1xuICB9XG4gIDEwMCUge1xuICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGVYKDBweCk7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKDBweCk7XG4gIH1cbn1cblxuLyogVmVydGljYWwgRm9yd2FyZCAqL1xuLm1jcy1ib3VuY2UuTWFnaWNTY3JvbGwtdmVydGljYWxbZGF0YS1tb2RlPVwiYW5pbWF0aW9uXCJdIFtkYXRhLWZvcndhcmRdIGRpdltkYXRhLWFjdGlvbj1cImV4aXRcIl0ge1xuICAtd2Via2l0LWFuaW1hdGlvbi1uYW1lOiB2LWZvcndhcmQtZXhpdC1ib3VuY2U7XG4gIGFuaW1hdGlvbi1uYW1lOiB2LWZvcndhcmQtZXhpdC1ib3VuY2U7XG59XG5cbi5tY3MtYm91bmNlLk1hZ2ljU2Nyb2xsLXZlcnRpY2FsW2RhdGEtbW9kZT1cImFuaW1hdGlvblwiXSBbZGF0YS1mb3J3YXJkXSBkaXZbZGF0YS1hY3Rpb249XCJlbnRlclwiXSB7XG4gIC13ZWJraXQtYW5pbWF0aW9uLW5hbWU6IHYtZm9yd2FyZC1lbnRlci1ib3VuY2U7XG4gIGFuaW1hdGlvbi1uYW1lOiB2LWZvcndhcmQtZW50ZXItYm91bmNlO1xufVxuXG4ubWNzLWJvdW5jZS5NYWdpY1Njcm9sbC12ZXJ0aWNhbFtkYXRhLW1vZGU9XCJhbmltYXRpb25cIl0gW2RhdGEtZm9yd2FyZF0gW2RhdGEtZW50ZXJpbmddIHtcbiAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZVkoMTAwMDAwcHgpO1xuICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoMTAwMDAwcHgpO1xufVxuXG4ubWNzLWJvdW5jZS5NYWdpY1Njcm9sbC12ZXJ0aWNhbFtkYXRhLW1vZGU9XCJhbmltYXRpb25cIl0gW2RhdGEtZm9yd2FyZF0gW2RhdGEtZXhpdGVkXSB7XG4gIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGVZKDEwMDAwMHB4KTtcbiAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKDEwMDAwMHB4KTtcbn1cblxuQC13ZWJraXQta2V5ZnJhbWVzIHYtZm9yd2FyZC1leGl0LWJvdW5jZSB7XG4gIDAlIHtcbiAgICBvcGFjaXR5OiAxO1xuICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGVZKDApO1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgwKTtcbiAgfVxuICA0MCUge1xuICAgIG9wYWNpdHk6IDAuNjtcbiAgfVxuICAxMDAlIHtcbiAgICBvcGFjaXR5OiAwO1xuICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC0yMDAwcHgpO1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgtMjAwMHB4KTtcbiAgfVxufVxuXG5Aa2V5ZnJhbWVzIHYtZm9yd2FyZC1leGl0LWJvdW5jZSB7XG4gIDAlIHtcbiAgICBvcGFjaXR5OiAxO1xuICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGVZKDApO1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgwKTtcbiAgfVxuICA0MCUge1xuICAgIG9wYWNpdHk6IDAuNjtcbiAgfVxuICAxMDAlIHtcbiAgICBvcGFjaXR5OiAwO1xuICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC0yMDAwcHgpO1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgtMjAwMHB4KTtcbiAgfVxufVxuXG5ALXdlYmtpdC1rZXlmcmFtZXMgdi1mb3J3YXJkLWVudGVyLWJvdW5jZSB7XG4gIDAlIHtcbiAgICBvcGFjaXR5OiAwO1xuICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGVZKDMwMDBweCk7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKDMwMDBweCk7XG4gIH1cbiAgNjAlIHtcbiAgICBvcGFjaXR5OiAxO1xuICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC0zMHB4KTtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTMwcHgpO1xuICB9XG4gIDc1JSB7XG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZVkoMTBweCk7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKDEwcHgpO1xuICB9XG4gIDkwJSB7XG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTVweCk7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC01cHgpO1xuICB9XG4gIDEwMCUge1xuICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGVZKDBweCk7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKDBweCk7XG4gIH1cbn1cblxuQGtleWZyYW1lcyB2LWZvcndhcmQtZW50ZXItYm91bmNlIHtcbiAgMCUge1xuICAgIG9wYWNpdHk6IDA7XG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZVkoMzAwMHB4KTtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoMzAwMHB4KTtcbiAgfVxuICA2MCUge1xuICAgIG9wYWNpdHk6IDE7XG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTMwcHgpO1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgtMzBweCk7XG4gIH1cbiAgNzUlIHtcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlWSgxMHB4KTtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoMTBweCk7XG4gIH1cbiAgOTAlIHtcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlWSgtNXB4KTtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTVweCk7XG4gIH1cbiAgMTAwJSB7XG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZVkoMHB4KTtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoMHB4KTtcbiAgfVxufVxuXG4vKiBWZXJ0aWNhbCBCYWNrd2FyZCAqL1xuLm1jcy1ib3VuY2UuTWFnaWNTY3JvbGwtdmVydGljYWxbZGF0YS1tb2RlPVwiYW5pbWF0aW9uXCJdIFtkYXRhLWJhY2t3YXJkXSBkaXZbZGF0YS1hY3Rpb249XCJleGl0XCJdIHtcbiAgLXdlYmtpdC1hbmltYXRpb24tbmFtZTogdi1iYWNrd2FyZC1leGl0LWJvdW5jZTtcbiAgYW5pbWF0aW9uLW5hbWU6IHYtYmFja3dhcmQtZXhpdC1ib3VuY2U7XG59XG5cbi5tY3MtYm91bmNlLk1hZ2ljU2Nyb2xsLXZlcnRpY2FsW2RhdGEtbW9kZT1cImFuaW1hdGlvblwiXSBbZGF0YS1iYWNrd2FyZF0gZGl2W2RhdGEtYWN0aW9uPVwiZW50ZXJcIl0ge1xuICAtd2Via2l0LWFuaW1hdGlvbi1uYW1lOiB2LWJhY2t3YXJkLWVudGVyLWJvdW5jZTtcbiAgYW5pbWF0aW9uLW5hbWU6IHYtYmFja3dhcmQtZW50ZXItYm91bmNlO1xufVxuXG5ALXdlYmtpdC1rZXlmcmFtZXMgdi1iYWNrd2FyZC1leGl0LWJvdW5jZSB7XG4gIDAlIHtcbiAgICBvcGFjaXR5OiAxO1xuICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGVZKDApO1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgwKTtcbiAgfVxuICA0MCUge1xuICAgIG9wYWNpdHk6IDAuNjtcbiAgfVxuICAxMDAlIHtcbiAgICBvcGFjaXR5OiAwO1xuICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGVZKDIwMDBweCk7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKDIwMDBweCk7XG4gIH1cbn1cblxuQGtleWZyYW1lcyB2LWJhY2t3YXJkLWV4aXQtYm91bmNlIHtcbiAgMCUge1xuICAgIG9wYWNpdHk6IDE7XG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZVkoMCk7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKDApO1xuICB9XG4gIDQwJSB7XG4gICAgb3BhY2l0eTogMC42O1xuICB9XG4gIDEwMCUge1xuICAgIG9wYWNpdHk6IDA7XG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZVkoMjAwMHB4KTtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoMjAwMHB4KTtcbiAgfVxufVxuXG5ALXdlYmtpdC1rZXlmcmFtZXMgdi1iYWNrd2FyZC1lbnRlci1ib3VuY2Uge1xuICAwJSB7XG4gICAgb3BhY2l0eTogMDtcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlWSgtMzAwMHB4KTtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTMwMDBweCk7XG4gIH1cbiAgNjAlIHtcbiAgICBvcGFjaXR5OiAxO1xuICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGVZKDMwcHgpO1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgzMHB4KTtcbiAgfVxuICA3NSUge1xuICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC0xMHB4KTtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTEwcHgpO1xuICB9XG4gIDkwJSB7XG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZVkoNXB4KTtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoNXB4KTtcbiAgfVxuICAxMDAlIHtcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlWSgwcHgpO1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgwcHgpO1xuICB9XG59XG5cbkBrZXlmcmFtZXMgdi1iYWNrd2FyZC1lbnRlci1ib3VuY2Uge1xuICAwJSB7XG4gICAgb3BhY2l0eTogMDtcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlWSgtMzAwMHB4KTtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTMwMDBweCk7XG4gIH1cbiAgNjAlIHtcbiAgICBvcGFjaXR5OiAxO1xuICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGVZKDMwcHgpO1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgzMHB4KTtcbiAgfVxuICA3NSUge1xuICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC0xMHB4KTtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTEwcHgpO1xuICB9XG4gIDkwJSB7XG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZVkoNXB4KTtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoNXB4KTtcbiAgfVxuICAxMDAlIHtcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlWSgwcHgpO1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgwcHgpO1xuICB9XG59XG5cbi8qXG4gKiBBcnJvd3NcbiAqL1xuLk1hZ2ljU2Nyb2xsLWhvcml6b250YWwgLm1jcy1idXR0b24tYXJyb3ctcHJldjpiZWZvcmUsXG4uTWFnaWNTY3JvbGwtaG9yaXpvbnRhbCAubWNzLWJ1dHRvbi1hcnJvdy1uZXh0OmJlZm9yZSxcbi5NYWdpY1Njcm9sbC12ZXJ0aWNhbCAubWNzLWJ1dHRvbi1hcnJvdy1wcmV2OmJlZm9yZSxcbi5NYWdpY1Njcm9sbC12ZXJ0aWNhbCAubWNzLWJ1dHRvbi1hcnJvdy1uZXh0OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXCI7XG4gIHRvcDogNTAlO1xuICBsZWZ0OiA1MCU7XG4gIHdpZHRoOiAxMnB4O1xuICBoZWlnaHQ6IDEycHg7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgYm9yZGVyLXdpZHRoOiAzcHg7XG4gIGJvcmRlci1jb2xvcjogcmdiYSg0OSwgNTEsIDYxLCAwLjYpO1xuICBib3JkZXItc3R5bGU6IHNvbGlkO1xuICBib3JkZXItcmlnaHQ6IG5vbmU7XG4gIGJvcmRlci1ib3R0b206IG5vbmU7XG4gIC13ZWJraXQtdHJhbnNpdGlvbjogYm9yZGVyLWNvbG9yIC4xNXMgbGluZWFyO1xuICB0cmFuc2l0aW9uOiBib3JkZXItY29sb3IgLjE1cyBsaW5lYXI7XG59XG5cbi5NYWdpY1Njcm9sbC1ob3Jpem9udGFsIC5tY3MtYnV0dG9uLWFycm93LXByZXY6YmVmb3JlIHtcbiAgbGVmdDogNjIlO1xuICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlKC01MCUsIC01MCUpIHJvdGF0ZVooLTQ1ZGVnKTtcbiAgdHJhbnNmb3JtOiB0cmFuc2xhdGUoLTUwJSwgLTUwJSkgcm90YXRlWigtNDVkZWcpO1xufVxuXG4uTWFnaWNTY3JvbGwtaG9yaXpvbnRhbCAubWNzLWJ1dHRvbi1hcnJvdy1uZXh0OmJlZm9yZSB7XG4gIGxlZnQ6IDQwJTtcbiAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZSgtNTAlLCAtNTAlKSByb3RhdGVaKDEzNWRlZyk7XG4gIHRyYW5zZm9ybTogdHJhbnNsYXRlKC01MCUsIC01MCUpIHJvdGF0ZVooMTM1ZGVnKTtcbn1cblxuLk1hZ2ljU2Nyb2xsLXZlcnRpY2FsIC5tY3MtYnV0dG9uLWFycm93LXByZXY6YmVmb3JlIHtcbiAgdG9wOiA2MiU7XG4gIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGUoLTUwJSwgLTUwJSkgcm90YXRlWig0NWRlZyk7XG4gIHRyYW5zZm9ybTogdHJhbnNsYXRlKC01MCUsIC01MCUpIHJvdGF0ZVooNDVkZWcpO1xufVxuXG4uTWFnaWNTY3JvbGwtdmVydGljYWwgLm1jcy1idXR0b24tYXJyb3ctbmV4dDpiZWZvcmUge1xuICB0b3A6IDQwJTtcbiAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZSgtNTAlLCAtNTAlKSByb3RhdGVaKC0xMzVkZWcpO1xuICB0cmFuc2Zvcm06IHRyYW5zbGF0ZSgtNTAlLCAtNTAlKSByb3RhdGVaKC0xMzVkZWcpO1xufVxuXG4ubWNzLWJ1dHRvbi1hcnJvdy5tY3MtZGlzYWJsZWQge1xuICBvcGFjaXR5OiAwLjAxICFpbXBvcnRhbnQ7XG59XG5cbi5NYWdpY1Njcm9sbCA+IC5tY3MtYnV0dG9uLWFycm93IHtcbiAgLypmb250LXNpemU6IDIwcHg7Ki9cbiAgd2lkdGg6IDMwcHg7XG4gIGhlaWdodDogMzBweDtcbiAgbWFyZ2luOiBhdXRvO1xuICBvcGFjaXR5OiAwLjY7XG4gIC13ZWJraXQtdHJhbnNpdGlvbjogb3BhY2l0eSAuMTVzIGxpbmVhcjtcbiAgdHJhbnNpdGlvbjogb3BhY2l0eSAuMTVzIGxpbmVhcjtcbn1cblxuLk1hZ2ljU2Nyb2xsLWhvcml6b250YWwgLm1jcy1idXR0b24tYXJyb3ctcHJldiB7XG4gIGxlZnQ6IDA7XG4gIHJpZ2h0OiBhdXRvO1xuICB0b3A6IDA7XG4gIGJvdHRvbTogMDtcbn1cblxuLk1hZ2ljU2Nyb2xsLWhvcml6b250YWwgLm1jcy1idXR0b24tYXJyb3ctbmV4dCB7XG4gIGxlZnQ6IGF1dG87XG4gIHJpZ2h0OiAwO1xuICB0b3A6IDA7XG4gIGJvdHRvbTogMDtcbn1cblxuLk1hZ2ljU2Nyb2xsLXZlcnRpY2FsIC5tY3MtYnV0dG9uLWFycm93LXByZXYge1xuICB0b3A6IDA7XG4gIGJvdHRvbTogYXV0bztcbiAgbGVmdDogMDtcbiAgcmlnaHQ6IDA7XG59XG5cbi5NYWdpY1Njcm9sbC12ZXJ0aWNhbCAubWNzLWJ1dHRvbi1hcnJvdy1uZXh0IHtcbiAgdG9wOiBhdXRvO1xuICBib3R0b206IDA7XG4gIGxlZnQ6IDA7XG4gIHJpZ2h0OiAwO1xufVxuXG4uTWFnaWNTY3JvbGw6aG92ZXIgPiAubWNzLWJ1dHRvbi1hcnJvdzpob3Zlcjpub3QoLm1jcy1kaXNhYmxlZCkge1xuICBvcGFjaXR5OiAxO1xufVxuXG4uTWFnaWNTY3JvbGw6aG92ZXIgPiAubWNzLWJ1dHRvbi1hcnJvdzpob3Zlcjpub3QoLm1jcy1kaXNhYmxlZCk6YmVmb3JlIHtcbiAgYm9yZGVyLWNvbG9yOiAjMzEzMzNkO1xufVxuXG4uTWFnaWNTY3JvbGwuTWFnaWNTY3JvbGwtYXJyb3dzLWluc2lkZSAubWNzLWJ1dHRvbi1hcnJvdyB7XG4gIHdpZHRoOiAyNHB4O1xuICBoZWlnaHQ6IDI0cHg7XG4gIGJvcmRlci1yYWRpdXM6IDNweDtcbiAgYmFja2dyb3VuZDogcmdiYSgyNTUsIDI1NSwgMjU1LCAwLjc1KTtcbiAgYm94LXNoYWRvdzogMCAwIDFweCByZ2JhKDE1MywgMTUzLCAxNTMsIDAuNSk7XG4gIC13ZWJraXQtdHJhbnNpdGlvbjogYmFja2dyb3VuZC1jb2xvciAuMTVzIGxpbmVhcjtcbiAgdHJhbnNpdGlvbjogYmFja2dyb3VuZC1jb2xvciAuMTVzIGxpbmVhcjtcbn1cblxuLk1hZ2ljU2Nyb2xsLk1hZ2ljU2Nyb2xsLWFycm93cy1pbnNpZGUgLm1jcy1idXR0b24tYXJyb3c6YmVmb3JlIHtcbiAgd2lkdGg6IDhweDtcbiAgaGVpZ2h0OiA4cHg7XG59XG5cbi5NYWdpY1Njcm9sbC1ob3Jpem9udGFsLk1hZ2ljU2Nyb2xsLWFycm93cy1pbnNpZGU6aG92ZXIgPiAubWNzLWJ1dHRvbi1hcnJvdzpob3Zlcjpub3QoLm1jcy1kaXNhYmxlZCkge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiByZ2JhKDI1NSwgMjU1LCAyNTUsIDAuOTYpO1xufVxuXG4uTWFnaWNTY3JvbGwtaG9yaXpvbnRhbC5NYWdpY1Njcm9sbC1hcnJvd3MtaW5zaWRlIC5tY3MtYnV0dG9uLWFycm93LXByZXYge1xuICBsZWZ0OiA1cHg7XG59XG5cbi5NYWdpY1Njcm9sbC1ob3Jpem9udGFsLk1hZ2ljU2Nyb2xsLWFycm93cy1pbnNpZGUgLm1jcy1idXR0b24tYXJyb3ctbmV4dCB7XG4gIHJpZ2h0OiA1cHg7XG59XG5cbi5NYWdpY1Njcm9sbC12ZXJ0aWNhbC5NYWdpY1Njcm9sbC1hcnJvd3MtaW5zaWRlIC5tY3MtYnV0dG9uLWFycm93LXByZXYge1xuICB0b3A6IDVweDtcbn1cblxuLk1hZ2ljU2Nyb2xsLXZlcnRpY2FsLk1hZ2ljU2Nyb2xsLWFycm93cy1pbnNpZGUgLm1jcy1idXR0b24tYXJyb3ctbmV4dCB7XG4gIGJvdHRvbTogNXB4O1xufVxuXG4ubHQtaWUxMC1tYWdpYyAuTWFnaWNTY3JvbGwuTWFnaWNTY3JvbGwtYXJyb3dzLWluc2lkZSAubWNzLWJ1dHRvbi1hcnJvdyB7XG4gIGJvcmRlcjogMXB4IHNvbGlkIHJnYmEoMTUzLCAxNTMsIDE1MywgMC41KTtcbn1cblxuLmx0LWllOS1tYWdpYyAubWNzLWJ1dHRvbi1hcnJvdzpiZWZvcmUge1xuICBib3JkZXItY29sb3I6ICM4Mzg1OEI7XG59XG5cbi5sdC1pZTktbWFnaWMgLk1hZ2ljU2Nyb2xsOmhvdmVyID4gLm1jcy1idXR0b24tYXJyb3c6aG92ZXI6YmVmb3JlIHtcbiAgYm9yZGVyLWNvbG9yOiAjMzEzMzNEO1xufVxuXG4ubHQtaWU5LW1hZ2ljIC5NYWdpY1Njcm9sbC5NYWdpY1Njcm9sbC1hcnJvd3MtaW5zaWRlIC5tY3MtYnV0dG9uLWFycm93OmJlZm9yZSB7XG4gIGJvcmRlci1jb2xvcjogIzMxMzMzRDtcbn1cblxuLmx0LWllOS1tYWdpYyAuTWFnaWNTY3JvbGwuTWFnaWNTY3JvbGwtYXJyb3dzLWluc2lkZSAubWNzLWJ1dHRvbi1hcnJvdyB7XG4gIGJhY2tncm91bmQ6ICNmZmY7XG4gIGJvcmRlcjogMXB4IHNvbGlkICM5OTk7XG4gIGZpbHRlcjogYWxwaGEob3BhY2l0eT02MCk7XG59XG5cbi5sdC1pZTktbWFnaWMgLk1hZ2ljU2Nyb2xsLk1hZ2ljU2Nyb2xsLWFycm93cy1pbnNpZGUgLm1jcy1idXR0b24tYXJyb3c6aG92ZXIge1xuICBmaWx0ZXI6IGFscGhhKG9wYWNpdHk9OTYpO1xufVxuXG4ubHQtaWU5LW1hZ2ljIC5tY3MtYnV0dG9uLWFycm93Lm1jcy1kaXNhYmxlZCB7XG4gIGZpbHRlcjogYWxwaGEob3BhY2l0eT0wLjAxKSAhaW1wb3J0YW50O1xufVxuXG4vKlxuICogQnVsbGV0c1xuICovXG4uTWFnaWNTY3JvbGwtaG9yaXpvbnRhbCAubWNzLWJ1bGxldHMge1xuICBtYXJnaW4tdG9wOiAxMHB4O1xufVxuXG4uTWFnaWNTY3JvbGwtaG9yaXpvbnRhbC5NYWdpY1Njcm9sbC1idWxsZXRzIHtcbiAgbWFyZ2luLWJvdHRvbTogMzVweDtcbn1cblxuLk1hZ2ljU2Nyb2xsLXZlcnRpY2FsIC5tY3MtYnVsbGV0cyB7XG4gIG1hcmdpbi1sZWZ0OiAxMHB4O1xuICB0b3A6IDUwJTtcbiAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZSgwLCAtNTAlKTtcbiAgdHJhbnNmb3JtOiB0cmFuc2xhdGUoMCwgLTUwJSk7XG59XG5cbi5NYWdpY1Njcm9sbC12ZXJ0aWNhbC5NYWdpY1Njcm9sbC1idWxsZXRzIHtcbiAgbWFyZ2luLXJpZ2h0OiAzNXB4O1xufVxuXG4ubWNzLWJ1bGxldCB7XG4gIHdpZHRoOiAxMHB4O1xuICBoZWlnaHQ6IDEwcHg7XG4gIGJhY2tncm91bmQtY29sb3I6ICM4Mzg1OEI7XG59XG5cbi5tY3MtYnVsbGV0OmhvdmVyIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogIzVhNWE1YTtcbn1cblxuLm1jcy1idWxsZXQuYWN0aXZlIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gIGJvcmRlcjogMXB4IHNvbGlkICM1YTVhNWE7XG59XG5cbi8qIENhcHRpb24gKi9cbi5tY3MtaXRlbSAubWNzLWNhcHRpb24ge1xuICBjb2xvcjogd2hpdGU7XG4gIHBhZGRpbmc6IDVweCAwO1xuICBmb250OiBub3JtYWwgOXB0LzEuMmVtICdIZWx2ZXRpY2EgTmV1ZScsIEhlbHZldGljYSwgJ0x1Y2lkYSBHcmFuZGUnLCAnTHVjaWRhIFNhbnMgVW5pY29kZScsIFZlcmRhbmEsIEFyaWFsLCBzYW5zLXNlcmlmO1xuICB0ZXh0LXJlbmRlcmluZzogZ2VvbWV0cmljUHJlY2lzaW9uO1xufVxuXG4uTWFnaWNTY3JvbGxbZGF0YS1tb2RlPVwic2Nyb2xsXCJdIC5tY3MtaXRlbSAubWNzLWNhcHRpb24sXG4uTWFnaWNTY3JvbGxbZGF0YS1tb2RlPVwiYW5pbWF0aW9uXCJdIC5tY3MtaXRlbSAubWNzLWNhcHRpb24ge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjMzEzMzNEO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiByZ2JhKDQ5LCA1MSwgNjEsIDAuNyk7XG59XG5cbi5sdC1pZTktbWFnaWMgLk1hZ2ljU2Nyb2xsW2RhdGEtbW9kZT1cInNjcm9sbFwiXSAubWNzLWl0ZW0gLm1jcy1jYXB0aW9uLFxuLmx0LWllOS1tYWdpYyAuTWFnaWNTY3JvbGxbZGF0YS1tb2RlPVwiYW5pbWF0aW9uXCJdIC5tY3MtaXRlbSAubWNzLWNhcHRpb24ge1xuICBmaWx0ZXI6IGFscGhhKG9wYWNpdHk9NjApO1xufVxuXG4vKiBDYXJvdXNlbCAmIENvdmVyIEZsb3cgKi9cbi5NYWdpY1Njcm9sbFtkYXRhLW1vZGU9XCJjYXJvdXNlbFwiXSxcbi5NYWdpY1Njcm9sbFtkYXRhLW1vZGU9XCJjb3Zlci1mbG93XCJdIHtcbiAgYmFja2dyb3VuZDogIzRmNGY0Zjtcbn1cblxuLk1hZ2ljU2Nyb2xsW2RhdGEtbW9kZT1cImNhcm91c2VsXCJdIGltZyxcbi5NYWdpY1Njcm9sbFtkYXRhLW1vZGU9XCJjb3Zlci1mbG93XCJdIGltZyB7XG4gIGJveC1zaGFkb3c6IDBweCAxNXB4IDMwcHggLTEwcHggIzAwMDtcbn1cblxuLk1hZ2ljU2Nyb2xsW2RhdGEtbW9kZT1cImNhcm91c2VsXCJdIGZpZ2NhcHRpb24sXG4uTWFnaWNTY3JvbGxbZGF0YS1tb2RlPVwiY292ZXItZmxvd1wiXSBmaWdjYXB0aW9uIHtcbiAgcGFkZGluZzogNHB4IDAgMDtcbiAgZm9udC1zaXplOiAxMHB0O1xuICBmb250LWZhbWlseTogJ0x1Y2lkYSBHcmFuZGUnLCAnTHVjaWRhIFNhbnMgVW5pY29kZScsICdIZWx2ZXRpY2EgTmV1ZScsIEFyaWFsLCBIZWx2ZXRpY2EsIHNhbnMtc2VyaWY7XG59XG5cbi8qIE1pc2MgKi9cbi5NYWdpY1Njcm9sbC5tY3Mtc2hhZG93cyB7XG4gIGJveC1zaGFkb3c6IDAgMXB4IDZweCAxcHggcmdiYSgwLCAwLCAwLCAwLjE1KTtcbn1cblxuLk1hZ2ljU2Nyb2xsLm1jcy1ib3JkZXIgLm1jcy1pdGVtIHtcbiAgYmFja2dyb3VuZDogI2ZmZjtcbiAgYm9yZGVyOiAxcHggc29saWQgI2VmZWZlZjtcbn1cblxuLk1hZ2ljU2Nyb2xsLWhvcml6b250YWwubWNzLWJvcmRlciAubWNzLWl0ZW0ge1xuICBtYXJnaW46IDAgM3B4O1xufVxuXG4uTWFnaWNTY3JvbGwtdmVydGljYWwubWNzLWJvcmRlciAubWNzLWl0ZW0ge1xuICBtYXJnaW46IDNweCAwO1xufVxuXG4vKlxuICogTG9hZGVyXG4gKi9cbi5tY3MtbG9hZGVyIHtcbiAgcG9pbnRlci1ldmVudHM6IG5vbmU7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgei1pbmRleDogMTAwMDtcbiAgdG9wOiAwcHg7XG4gIGxlZnQ6IDBweDtcbiAgcmlnaHQ6IDBweDtcbiAgYm90dG9tOiAwcHg7XG59XG5cbi5tY3MtbG9hZGVyIC5tY3MtbG9hZGVyLXRleHQge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHRvcDogNTAlO1xuICBsZWZ0OiA1MCU7XG4gIG1hcmdpbi10b3A6IC0xMHB4O1xuICBtYXJnaW4tbGVmdDogLTM1cHg7XG4gIHdpZHRoOiA3MHB4O1xuICBoZWlnaHQ6IDIwcHg7XG59XG5cbi5tY3MtbG9hZGVyLWNpcmNsZXMge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHRvcDogMDtcbiAgYm90dG9tOiAwO1xuICBsZWZ0OiAwO1xuICByaWdodDogMDtcbiAgbWFyZ2luOiBhdXRvO1xuICB3aWR0aDogNjBweDtcbiAgaGVpZ2h0OiA2MHB4O1xuICBvcGFjaXR5OiAxO1xuICAtd2Via2l0LXRyYW5zZm9ybTogc2NhbGUoMC42KTtcbiAgdHJhbnNmb3JtOiBzY2FsZSgwLjYpO1xufVxuXG4ubWNzLWxvYWRlci1jaXJjbGUge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIGJhY2tncm91bmQtY29sb3I6ICNmZmZmZmY7XG4gIGhlaWdodDogMTFweDtcbiAgd2lkdGg6IDExcHg7XG4gIGJvcmRlci1yYWRpdXM6IDUwJTtcbiAgLXdlYmtpdC1hbmltYXRpb24tbmFtZTogTWFnaWNDaXJjbGU7XG4gIC13ZWJraXQtYW5pbWF0aW9uLWR1cmF0aW9uOiAwLjQ4cztcbiAgLXdlYmtpdC1hbmltYXRpb24taXRlcmF0aW9uLWNvdW50OiBpbmZpbml0ZTtcbiAgLXdlYmtpdC1hbmltYXRpb24tZGlyZWN0aW9uOiBsaW5lYXI7XG4gIGFuaW1hdGlvbi1uYW1lOiBNYWdpY0NpcmNsZTtcbiAgYW5pbWF0aW9uLWR1cmF0aW9uOiAwLjQ4cztcbiAgYW5pbWF0aW9uLWl0ZXJhdGlvbi1jb3VudDogaW5maW5pdGU7XG4gIGFuaW1hdGlvbi1kaXJlY3Rpb246IGxpbmVhcjtcbn1cblxuLm1jcy1sb2FkZXItY2lyY2xlXzAxIHtcbiAgbGVmdDogMDtcbiAgdG9wOiAyNXB4O1xuICAtd2Via2l0LWFuaW1hdGlvbi1kZWxheTogMC4xOHM7XG4gIGFuaW1hdGlvbi1kZWxheTogMC4xOHM7XG59XG5cbi5tY3MtbG9hZGVyLWNpcmNsZV8wMiB7XG4gIGxlZnQ6IDdweDtcbiAgdG9wOiA3cHg7XG4gIC13ZWJraXQtYW5pbWF0aW9uLWRlbGF5OiAwLjI0cztcbiAgYW5pbWF0aW9uLWRlbGF5OiAwLjI0cztcbn1cblxuLm1jcy1sb2FkZXItY2lyY2xlXzAzIHtcbiAgbGVmdDogMjVweDtcbiAgdG9wOiAwO1xuICAtd2Via2l0LWFuaW1hdGlvbi1kZWxheTogMC4zcztcbiAgYW5pbWF0aW9uLWRlbGF5OiAwLjNzO1xufVxuXG4ubWNzLWxvYWRlci1jaXJjbGVfMDQge1xuICByaWdodDogN3B4O1xuICB0b3A6IDdweDtcbiAgLXdlYmtpdC1hbmltYXRpb24tZGVsYXk6IDAuMzZzO1xuICBhbmltYXRpb24tZGVsYXk6IDAuMzZzO1xufVxuXG4ubWNzLWxvYWRlci1jaXJjbGVfMDUge1xuICByaWdodDogMDtcbiAgdG9wOiAyNXB4O1xuICAtd2Via2l0LWFuaW1hdGlvbi1kZWxheTogMC40MnM7XG4gIGFuaW1hdGlvbi1kZWxheTogMC40MnM7XG59XG5cbi5tY3MtbG9hZGVyLWNpcmNsZV8wNiB7XG4gIHJpZ2h0OiA3cHg7XG4gIGJvdHRvbTogN3B4O1xuICAtd2Via2l0LWFuaW1hdGlvbi1kZWxheTogMC40OHM7XG4gIGFuaW1hdGlvbi1kZWxheTogMC40OHM7XG59XG5cbi5tY3MtbG9hZGVyLWNpcmNsZV8wNyB7XG4gIGxlZnQ6IDI1cHg7XG4gIGJvdHRvbTogMDtcbiAgLXdlYmtpdC1hbmltYXRpb24tZGVsYXk6IDAuNTRzO1xuICBhbmltYXRpb24tZGVsYXk6IDAuNTRzO1xufVxuXG4ubWNzLWxvYWRlci1jaXJjbGVfMDgge1xuICBsZWZ0OiA3cHg7XG4gIGJvdHRvbTogN3B4O1xuICAtd2Via2l0LWFuaW1hdGlvbi1kZWxheTogMC42cztcbiAgYW5pbWF0aW9uLWRlbGF5OiAwLjZzO1xufVxuXG5ALXdlYmtpdC1rZXlmcmFtZXMgTWFnaWNDaXJjbGUge1xuICAwJSB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogIzAwMDAwMDtcbiAgfVxuICAxMDAlIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjZmZmZmZmO1xuICB9XG59XG5cbkBrZXlmcmFtZXMgTWFnaWNDaXJjbGUge1xuICAwJSB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogIzAwMDAwMDtcbiAgfVxuICAxMDAlIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjZmZmZmZmO1xuICB9XG59XG5cbi5tY3MtaXRlbS1sb2FkZXIge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHRvcDogMDtcbiAgYm90dG9tOiAwO1xuICBsZWZ0OiAwO1xuICByaWdodDogMDtcbiAgbWFyZ2luOiBhdXRvO1xuICB3aWR0aDogNDBweDtcbiAgaGVpZ2h0OiA0MHB4O1xuICBiYWNrZ3JvdW5kLXNpemU6IGNvdmVyO1xuICBiYWNrZ3JvdW5kLXJlcGVhdDogbm8tcmVwZWF0O1xuICBiYWNrZ3JvdW5kOiB1cmwoXCJkYXRhOmltYWdlL2dpZjtiYXNlNjQsUjBsR09EbGhLZ0FxQU9aeUFGbFdWL1gwOUVSQVFTMHBLdDdkM3JLd3Njakh5SnlhbTNCdGJvYURoT2ZtNXZmMzk5WFYxWE53Y2RiVzFyVzB0SU9CZ2NYRXhHSmZZSlNTa2o0Nk8vYjI5cEdQaitQajQ4akh4LzM5L2VEZjM5dmIyNlNpbzd1NnVxeXFxOHJKeWZIeDhmbjUrYTJyck8zczdjL096K3JxNnFpbnAwZEVSZUxpNGx0WVdicTR1ZkR3OEpDT2ovdjcrL1B6ODI1c2JPam82SUtBZ1pXVGxQajQrTkRQME9ibDV2WDE5Zno4L1ByNit2ejcrOWZXMStIZzRPenM3TGUydHVUazVHZGxaWTJMak5yWjJkalgxOHZLeXVqbjU1NmNuYUdnb0phVWxiMjh2TUxCd2pBc0xlL3Y3Ky91N3NURHc4N056ZTd0N2VYbDVjRy93TkxSMGQzZDNkblkySFZ6YzM5OGZXOXRiZFRUMDZPaG9yQ3Zyem8zT0xTeXM3YTF0V1JoWWxCTlR1TGg0ZEhRMEtLaG9mTHk4cm00dUoyYm5Nekx5OG5JeVhsMmQ1aVdscCtkbmFha3BYeDZlb3FJaU1IQXdkemMzTTdPemlJZUgvLy8vd0FBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUNIL0MwNUZWRk5EUVZCRk1pNHdBd0VBQUFBaCtRUUpDZ0J5QUN3QUFBQUFLZ0FxQUFBSC80Qnlnb09FaFlhSGlJbUtoaXB4Y1NxTGtaS0NBSTRBazVnTVB5d2doWlZ4bDRVNE14bVloUlNPTEo2V29nRUJGYWFFU281eEY0U2ZvWUlacmdFMnNZTkZ0TGx5dUlRTHZDMi9nNmlPR0lQRmdqZThzTXFDR0xRVXo2eUNGYnczMWRyTmdnd1VGQXpSdkF1WU9pZGJXWVVYdE9lSHU2NmxoQ3NhS0NHR1Z3UC9KejRRVWxIRmc2SVdJWElRcW9DQ2dFTVlobzc4bXlnQlNyVVdDaHhxWkdKb2pNU0ovNUQ4Q3FCeDR6MURVQ1NBWlBPclJFa0Z5Ulo5T1BGUHl5OFhEbEZRbS9SQlI3VVFPOEVKSFVwVVRwTUdTSk0yMkNBMGdJT25VQjA4RVNTZ3F0V3FLWVNTTU1DMUsxZXFWNjFtQmJmVmExZEJSNVVpWlFyT2FkU25VOWFMeXAyYlNVTzFGVHhNTVhnQkFFQ1VYMkFLRk9pUWQxRUpDSDM3cHZuMVFiRGdDTDRPQmZDUU9QR1FYd29jT3hhQ3d4RGx5aEJLVkxNUlFYTUJJWWFBSkg0eFQ1Q1VNbWNVQlhGamR4Q1BEbzRGRnRMd3drdVhRaU1RQ1BlQmFNU0I0eTRLVGVuUllRV21DY0lSc0MyaFJvMW9PVFdPSDNnd2RFUDBHSU5FV0xBZ1lwQUo3VFdFeG9qT1ZvNTQ4b095SHpjQkxrcjBDWVRlbHgvMFFEdVdhbWhFTjBKKzQrMG5pQXZhaVZITmVnajBVSWgraFRneFh6VStsTkZEVU80VldFZ0lUblF3SUYwUTBwWElHK085SWVLSmdnUUNBQ0g1QkFVS0FISUFMQUFBQUFBcUFDb0FBQWYvZ0hLQ2c0U0Zob2VJaVlxR0tuRnhLb3VSa29JQWpnQ1RtRHBYUjJPRmxYR1hoQ0FzUHd5WWhTY0RBMGVlbG9Vc2poU25oRnVxQTFDRW42R0NGNDV4U3JPRFdiWVN1YTZEbjNGRndZT3BxaC9JeDNJWXZyTE1naCsySjlHZ2d4UytHTmVERXJiUWNnd1VGS2JUdnJ1Ukd5bGZJb1ZRdGpxSURMNFhoUzAyRlJtR3JBZ1ltSUlHSVNSc3RDanlVQVhTb0JzVkFraWNZY2pJd0lzTmlGekxzRUNpUnh5R1hGaThPTEJKc0J3ZVB5WWkwb0JrbTJBaFVpNEF1SWhHaW9Ga2dyV1FXT0hHS1JvYk52b1VSN1NvMFVGRElDaGRDa0VEMFJBS29rcFZFSUFTZ0t0WUFid2dpb0tBMTY5ZXJXYTl1bFZjVjdCZkJTVmxxdFNwT0toVDJxTldQVXEzTHFZTlBxNEZBSEZxUXd3RUNNNEVLMkhBQUFtK2kwWk1BQXg0VGJBZ2hRczdvSGlvUWcvR2pLVUVleEk1OG9VY2hpNWpuakRpMmd3SG5RM3NLMVNHY1l5Z2c2aDRDS01JREFrRm9raEVEbUxJUnd3MFVRb3RTVUFjQnFJVkJaTGJLS1RBREltNWtqZ1FUN0JEMEFnVEprckw0Wkc4UUlTaU82YkxHUFRnd0lFSGd6cDA1MEZVeHZUcWdzcWZIOFE5ZVFkeEg2WnpJQ1FmL2FBSTNVMXhEUkRUTGNHZmVmNEpZa04zUFZ6alhnSkpGTkpmSVVMWWR3ME1IaVN4Z0lRSUZvS0RFQitzWUpjY0U0NklpQWJtdVdYaWlJRUFBQ0g1QkFrS0FISUFMQUVBQVFBb0FDZ0FBQWYvZ0hLQ2c0U0ZnMGdEQTBpR2pJMk9oaEtKRW8rVWhodFdSaTZGa1FPVGxaOXlLUUlDUnB1U29KOWZvd0pFaEp5ZXFJOGlxdzJ1cDdHVW9xTTBnNis0bERTcktiMjN2NDROcTd4eU9pY25Pc1p5R2k5ZVhZVkVxeHUvUlVvVURJUkFBT0V2M29OTmJXUzRHQlJ4N0QrRUh1SHhFQ1hRRndEcytDeUVBZkR4NFVPL1ZPRExCOEpRQ1FqKzB2eXFNaERBaFVjTVhvU0w4c3NET3dvWVFESFFBSTFCUm1nZ1E0cVVJMldDeVpNVGZJVE1zS0NseXdVNUVNaWNLVE5HeUFvQmN1ck1TWk9tVFpBNGQrb3NpZEtrU3BBc1g3Yk1NYktwMDA4N1lFQUxVUUhVRGhrSkVvVDU1WUlBQVJSVkhTM2hrRFVybDE4d3ZIcFYwTUxRZ2lSbHBzdFMrUlZBclZvbUdRakJqY3RoQ2JRV0N1d1NZUEt1ckl3ZGhEUjBDUEtveEpRbmhDcWdVQ3QxRUF3WlFENFVjbkdnODRoR0FReUlubEZvaFFZVUlUNDk2SHlnaHFBVkhUcXNFQVJDdEFFSElHdXdOakVvUW9FQ0VRYVJzRjNRbUFuV3JnWDVCajZvdG1nU3hyQ3dma0JvZWZCQkRtd3IrQ1dHdGFiZXY2OExtbUhieksvakI1d1VzbDdvd3ZOZkl6bzRTVjA5ZktFY0Y0SUVlTXIrYVNNRnYyMkhTeUFBSWZrRUNRb0FjZ0FzQUFBQUFDb0FLZ0FBQi8rQWNvS0RoSVdHaDRpSmlvWk5BZ0pOaTVHU2dnMk9EWk9ZR2tBZUFZV1ZBcGVFWTBkWE9waUZMd0FBSHA2V2hVY0RBeWVuaEY2cUFDV0VuNkdDVUxFRFc3U0RYYmNRdXE2REVyOVp3b09wcWd5RHU0TWZ2N1BOZ2d5M0w5TEljaWUvSDlpREVMZlJjaHNwS1J1QzFiRVNtRDR4YUZHRkpiY2FpRHEvVUlWRlNoVE9FU3FEb0dBTWRvT0dwS21YU0FzYkpJUXdVSWhEOFllaEhnVXpUaGlCN1FJQWlpQlpHS3FBTVdOQktjSlVnQXdKQXRHSUNTYlhDS3V5RXNDRlNCdGlGRHdqekFORkNoaE9iZkNCalVIUWNVaVRLaDFFaFlQVHB4eGdJTlYyNjVZS1FRbXlhczBxQStuRWxTQ3hidFhhZGR4WHNIRUVOWVhxVk9vNHFsWFhBVnhkU3JjdXBob2NtMlc0Y2FxR2lRTUhnZ2hyRVNCQUJiNkxYRHdBRE5pTnNCbUZDeS9JZ0NpRUU4YU04OUhLRVRreWprT1hNVDl3Z1MzRGdzNEJQaGZxd05oRURVSUtQb0JSNUtKRXAwRTNLa1NlWVdpRUNURllDdGtvUUh4RlpRTElXeFJxWWFNQzVVa1JpQmZnSVNnQUNSSzNLeUFub0NBcEQra2RCamt3WU1EQklCVGJLeUR0SUoyNm9QSGxCMmxIam1MY0ZPa1JDTUUzUDBqQmR1UE45Q0NkRGZxUng1OGdMV3lubVREc0ZTQkVJZnNWd2dSOTJLendnUkNxaVdkZ0lSa3dBVU1JZHNrUllZaUlQRUhlRXlTbUdBZ0FJZmtFQlFvQWNnQXNBQUFBQUNvQUtnQUFCLytBY29LRGhJV0doNGlKaW9aREFBQkRpNUdTZ2hDT0VKT1lQbVU5RllXVkFKZUVMa1pXRzVpRk1RZ0lQWjZXaFVZQ0FpbW5oR2lxQ0NPRW42R0NSTEVDWDdTRFViY1R1cTZERGI4aXdvT3BxcWFVeUhJMHY3UE5naHUzTVlPN2d5bS9OTmlERTdmUkdpOHZHb0xWc1EyWU1ESkFINFVqdHo2SUc3OUVoVmxiSnpvTWVVaEFVTVlPUWxMV25GRkVwazBUUWg5T0RKaDR4VkFTZ2hnNUxNRUdSY0xFajBjTUxiaUlrU0FWWVVnK2doeURhQW1Ia2x5RXNWRXBBVXFrSFRJSWhoR21aZUlKZXBoMndNQ21BK2k0bzBpVEN0THdvS25UQjduR01YQkUxWkVLUVFleWFzMXE0aWlGT0dERGdzVzZWV3ZYY1YvRmhsMzYxR2xVYkZQVHExcFZTcmZ1S1I0cjRHSzQyNkZBQVREQ1BJQ2xzSGVSalFoKy9aSVE5a01zZ0F1SWNBaEpuRmlCTUJWcTQ3QUFZV2d5NVFnMnNGMEFvSmFGb1ErSk8vQWc5Q1JJQ1VVdFF1UWdoQ0Z0bkIrR1ZuVG9NYVhRREFQQUF5REtFS0I0aGtKRmxGQmdnTWtCY0FPYzVZUkFnU0tFb0J2RkF5eEFDdUw1WWtFS0NCQ3dMS2hDOWh0SFNUeVBMaWY4K0VIWWkzZkNwdUM1QTBMdXlRdGFrTDBGTmpQUHpZQ2ZlUHJKUVZ4eG9UV2puZ0dRRGZnZUlUakloMDBBUVZ3d200TUZDb0xERE1mWmxaOWRpZ1Fnbm5BZ2xpaEhJQUFoK1FRSkNnQnlBQ3dCQUFFQUtBQW9BQUFILzRCeWdvT0VoWU5TQ0FoU2hveU5qb1lUaVJPUGxJWXdIa2tMaFpFSWs0UUJIa0FhbFlZeUNRbEptNUtGSGdBQUw2U0ZRS2NKUzRTY25vSWxyZ0Jlc1lRZnRCeTNxNE1RdkYyL2hLYW5PNE80Z3d5OHNNcURPN1F5ejhWeUw3d00xWVFjdE01eVBqRXhQb0xTcmhDa0l5WmlXSVZMdERDTkdyd2xoU0pmS1J1RUhRNElORkdERUJVdVlSNUZTVE9FRUkwVUFpSmFJZVJFb01VSExzQUpJdElnb2tjamhFSlV0Q2h3VkxVbUhqOW1MT1RpQVVrMzROcWtiRURrVVEwVEFvT0FJeE14QlkxWU5VWm9sTFBoNTlDalNKUEtVUkNocWRNSUs1RHFrRUMxcWdRa0JiSnF6ZG9CNllrQllNT0MzYnExNjlHdllzTXlmZG8wNnRHcFZxNnBJbEZLdHk0cEVBSHNPZ0pCd29BQmZYb0p6WERnMSsrVXdJSnlYQ2hjK0FsaU9Zc1pPNWp4V0U2UXdpUkFmSUt4c3BHSEtpcGlCU0JoUmtHaEZnUlNoMmpFSUk3ckMwZ1ZwQ1pRUVZDR0NoVXlDTUxnT2c2QW94Vm1veGkwSUVBQVRZSW85TVl3Rk1YczJvS0tIeC9FMnpVRmpTdG1teVp1SExrZ0FMMkxnTk13dXdVaDZkNGg5MVlDemprQkpvWFFGMkpoSFZ3SUdFeDBuKzllQ0FTTEg5L1VKVjlsZytSZ1hBN2dCQUlBSWZrRUNRb0FjZ0FzQUFBQUFDb0FLZ0FBQi8rQWNvS0RoSVdHaDRpSmlvWlVDUWxVaTVHU2doeU9ISk9ZSXgxT0lZV1ZDWmVFRlQxbFBwaUZKZ2NIVHA2V2hUMElDREduaEdLcUJ5NkVuNkdDSTdFSWFMU0RXTGNQdXE2REU3OVJ3b09wcWpXRHU0TWJ2N1BOZ2pXM0p0TEljakcvRzlpREQ3ZlJjakF5TWpDQzFiRVRtQ3NkUFZPRkxyY2ppRDYvK1lSZFhpODBHUHBRb0dBSEhvUTB1QW1pNk13YUtZUVl2QUJBRVlnaElRVXpSckNCclFRRWlpQTlHTUtCTVdOQkJjS0dnQXdaQUpHTkNDWkpDRXV6RWtLSlNEdzZGQVFqTEFyRkZ3eE84VmlCVFVQUWNVaVRLaDMweElIVHB3NWFqdHZRb0tyVkJrMEVHZGpLZGF2TWNTa0VpQjByVm10WHJsK3hoU1U3VmxCVHFFN2FwV0tqZXJWcTFxVjQ4MktxMEttWmpnK25LcUFnUUNBWExTMERCcHdBdktpRkFzS0ViOUs2a2ppeEJDaUlNakNCREZrdUppU1ZLeDhaWTJnelp3VXRzRUdSRUhyQUVVTXdJS09vUUNqSGpOU0pQRlJSUWVqRGljcFhESVZBb1lFb29Rd0JrbWRBeENDTzh3dUZzbXc1b1FQVGd1UUJiZ2hpUUlIQ1VRek80d0JJZWdNN2JVRUFuSThYUkNFOEJxUVZzR3RIcjM0UWVPY1V4clhBdm9CUWV2SCtoVmNFTmpaZ3Q5d2cvNjBueUFYaEtZRk5mQUhnVUVpQ2hiQ0FIellaekNEaGhQVVJBZ0lMUHh5VkY0VjZKYUtDYzd5VnFLSWNnUUFBSWZrRUJRb0FjZ0FzQUFBQUFDb0FLZ0FBQi8rQWNvS0RoSVdHaDRpSmlvWWFCd2NhaTVHU2dnK09ENU9ZS3g5Q09JV1ZCNWVFQzBrZU1KaUZIUVVGUXA2V2hVa0pDVEtuaEQycUJUYUVuNkdDUzdFSlFMU0RVN2NSdXE2REhMOGZ3b09wcWp5RHU0TTd2N1BOZ2p5M0hkTEljaksvTzlpREViZlJjaU1tSmlPQzFiRWNtQUVrWmdxRk5yY3JpREMvUzRWUmFERjhHQXBpb0NBSkVJUVVrQUNqS0F3WEtvUTJ4RUJBc1l5aEN3VXpPcGlCYmNRRWlpQjdHTXFCTVdQQko4S2tnQXhaQWRFTUJ5YW5DRnV6Y2dLN1JTQklGQ3doN0F6RkdCdE9nUWlBelVmUWNVaVRLaDBVUUlIVHB3cENJTlVBb2FwVkNFTUVFZGpLZFNzS3BDOEFpQjByVm10WHJsL0hoU1U3VmxCVHFFN2NwWTZqZXJWcTFxVjQ4Mks2a1FIYkJocW5ibFFJRUtDRk1ESUNCS1FBdkNqREFzS0U1WjZ5a2poeEF5S0pjRUNHbkVOWWs4cVZqYmd3cEhuemdyN05pRFFBTGNDSW9SbVFLOXdncE9LSEIwVmEyQ0FoUkNORlpTdUdNbFN3WVpqUWhUaklHU0RTTWFBNWxFSWl2cVE0S2drQThqZ1lCREdnUUVHNW5BL05CMGhJaXVFNmhVSFc0d0FZZENJOHMzRVVybWNYbEg2OUlQRE5UNHdyY3QwK2ZlVCt5U0ZCZUZsZ284UjFGeEJTSHlGUWhMY0ZOdkhGd1VJaEN4SnlSSDdZTVBBREN3Z3BDR0FoWXh4eGhRNTZ5VkZoaVllb2dKd0tLTFlZQ0FBaCtRUUpDZ0J5QUN3QkFBRUFLQUFvQUFBSC80Qnlnb09FaFlNS0JRVUtob3lOam9ZUmlSR1BsSVlCUVJjNWhaRUZrNFFoVGgwamxZWWtCZ1lYbTVLRlRnY0hKcVNGWnFjR000U2Nub0l1cmdkaXNZUUt0QTYzcTRNUHZGaS9oS2FuSUlPNGd6VzhzTXFESUxRa3o4VnlKcncxMVlRT3RNNXlLeDBkSzRMU3JnK2tJU2dhNllRenRBR05JN3d1aFI5QU1qQ0VNQWdJUkZHQjBKTXBKUjRGY2FPQjBBNFpDU0o2SU1SRW9FVUZMY0FKV3NJaG9zY2toREpVdENqUVhqVXFIajh1TU5SQ0FjbUUxYmlrNUxEa1VRVVVBdlZWQ3hOUnhvNVlGVUpvbEFQajU5Q2pTSlBLeWJHZ3FkTUZHWkQ2bUVDMTZnUXBBYkpxelZyd2FBd0VZTU9DM2JxMTY5Q3ZZc015ZmRvMDZ0R3BWcWFwU2xGS3R5NHBEQXlHYXNoN2wwS2NPQk9yUlFFQTRBWGZSaGNBL1AxYkJSd1F3b1Fod0NRRWdzWGl4U3JBRFlFTTJZTkpRWll2QTBpbHNRUUV6Z0FDQy9xeG1BS0dhbVRhTkNIRTRBVmtJTFFwS0NrQ2JvT0EzMFFLZGZIeW9xRkdIU2RPNkJCRTQ3ZUFCbllGU1Jnd1FNS2dGTTVwUko5ZWZWRHozeW0yVTdjK3FJRnpFWGE1a3hkRXhQbVg5T01MR1FFUHZ6c2hGMGFzYktpL1Bub2hKTlFoQVU0Z0FDSDVCQWtLQUhJQUxBQUFBQUFxQUNvQUFBZi9nSEtDZzRTRmhvZUlpWXFHVHdZR1Q0dVJrb0lPamc2VG1DRXdUQm1GbFFhWGhEaENIeXVZaFNnRUJFeWVsb1ZDQlFVZHA0UWFxZ1F0aEoraGdqYXhCVDIwZ3l1M0NycXVneEcvVThLRHFhb1ZnN3VEUEwrenpZSVZ0eWpTeUhJZHZ6ellnd3EzMFhJQkpDUUJndFd4RVpnWkZUYTVoQzIzSVlncnZ6YUZXR0ltUmhpYUVhQmdoUnVFQXBSd29RZ01DV09EYXBnNFFQR2FxSUlZRjNScTV1SUJ4WTlPRHVIQWlER0hNQTBmUWVZN2xHRUJ5WlduM0tSOHdIRFJqUW9GNjUwS1F0RkVqVk0zTmdvYjhYT2MwYU5JQjZrQXdMUXBBQVpHUzRpWVNsWEVHMEZ4c21yTlNzR29HZ3RndzRMRnVsVnIxM0ZmeFlZVnROUXBVNmpqMDZSV25YbzFxZDI3bUREQUZWYml3aWtNRkxKNkVNWUFyQnEvaXk0QTJGcEZHQmV4SWtBZ0FzR2liQndWd3Q2b3RZQmhocUhLV3dFZ0ZnWkNoRm9NaG42WVJUMEl5UlV0aXFLa0dVTG9RbG9MWEF3eG9LQ2tTQ0VvQTRMclFLU2hhWWxDY05Lb09UNUpRdkFCSHdSdFNKRmlneUFHVFNFYy9mRDh4S0FHQWdRMEdQU2k2ZDVtSjU1SEZ3UmUvQ0RzVEYrTXkvSmNBcUgyNHdkQmFOb0YyNWJuVU53WFhuNkNsTkNVRjlpa044QVJoZUJYaUFmeFlhUERGVWVNMGVDQWhRVGdBUkFhNENXSGd4NGkwa1I0VFlSb1lpQUFJZmtFQlFvQWNnQXNBQUFBQUNvQUtnQUFCLytBY29LRGhJV0doNGlKaW9ZQkJBUUJpNUdTZ2dxT0NwT1lHVE00aHBVRWw0UTVGMEdRbUlRVkFRR2NoSjZnZ3hjR0JpU21oRGFwQVJtc2xvUXpzUVptdElNdHR3dTZuNFFPdnE3QnFLazNnNjJESUw2endZTTN0eFhRdTRJa3ZpRFdoQXUzejNJaEtDZ2hndE94RHBnTUZFcEZoUm0zdVljQnZqT0ZVejBkSzRaK3hCbElBVU9vRUMwVWxaanloQkNQRGdVaWZqREVZcUJGQUJmQzJZZ1FzYU1RUXlBcVdoeW9JcGlDamg1WEdib0FZR1NWWUNSUVJyQVJDUU9GZ1I2Q2dZbllnWWNwREF6Q3JmQVpycWpSbzRkVUFGaktGRURRb2lNZVNKMzZRSU9na1NNcEdEVnhvS3ZYcmxleEV0ejY5YXNncFUyWFBnMFhsYXBVcTBqVjQ4b045a0ZIT0JnN1RIMDRNV0NBbG1CaEVpU1FrWGNSRkFsOSs3SUo1a0d3WUE1TEVJMDVramd4a21CVUhEdE9VcXdRNWNvU29JUmJ3a0Z6Z2lTR3JpUStNWEZRRXl0a0ZKMVpJNFhRRGhtT2N4YlNjV0pMbGtKRUJBamZnTWdIZ3VNakNuMEFJZ01HcGdiQ0JkQVFwT0hGQzdnYmppT1ljSlJHOUJTRElDeUZNQ2lHZHVKRlUwU2ZMa2c4QVBLQ3NoK1BVVlJFOUFhRTNNTVhORUY3bEhCZlJFZEVmdU1STW9KMmFJU2puZ0JHRktKZklUM01GODRHVmhqaGdvTUZudEpER1Q3TTFWNkdIaUl5eEZKRGhHaWlJSUVBQUNINUJBVUtBSElBTEFFQUFRQW9BQ2dBQUFmL2dIS0NnNFNGZ3prQkFUbUdqSTJPaGd1SkM0K1VoZ3cvTENDRmtRR1RoQmxNTUNHVmhoUnhjU3lia29WTUJBUW9wSVZLcDNFWGhKeWVnaTJ1QkJxeGhFVzBBTGVyZ3dxOEs3K0VwcWNZZzdpREZieXd5b01ZdEJUUHhYSW92QlhWaEFDMHpuSVpGUlVaZ3RLdUN1Q0VGN1FNalNHOExZVUtaaVFCc1NwVkhvOHVTdXdiQklLRWdZTkIzSkdhNGVDZ1Exc0tIejF4K0hCUlJFZFRLRHFZY1pGU2lZTWtOSFdzRkVEa3lKTW9LU0dSd0xLbEJCMFhWMFNZU1RPQ2dnRTRjK0k4Y2JGRGdaOUFmK3JVeVRPaXo2QkFWN3BrQ1RPaXpKb3oyNldjU25VUWpRMEtSOVNJUlNPRkFBRmt3QVU1Y01ERVZrZEVHbno5MmdaY0I3SmtyUis0TU9UQ3lOcTFUY0JwZ0F2WHlhaEJkdTgySUtMUXhRTytCNXdRc3JJMkJRMUNRNEJFZVJTR0N4VkNOVXpBN1VCb1E0b3ZJZ3FWQUVEYUZ5TVlDVkl2S1lSRmpJa1JwQ0NRQmlCUGpvOFlNWHdJMnBFNkFZZUlER2EvR0RRQkFZSUpnMlQwM3FId3hlemFjb29mSDhRN3RReDNYV1pESUNRZCtTQU92VCtBOHpLN0JIZmozZ1V0NlEwRW5ITUEvODVQSjVURXVsNGdIZ1lTUjc4cGlRY1lLWFZYbFNGU0dDY0ZPSUVBQURzPVwiKSBuby1yZXBlYXQgY2VudGVyIGNlbnRlcjtcbn1cblxuLk1hZ2ljU2Nyb2xsLm1jcy1yb3VuZGVkIHtcbiAgYm9yZGVyOiAxcHggc29saWQgI2UxZTFlMTtcbiAgYm9yZGVyLXJhZGl1czogMTBweDtcbiAgb3ZlcmZsb3c6IGhpZGRlbiAhaW1wb3J0YW50O1xufVxuXG4uTWFnaWNTY3JvbGwubWNzLXJvdW5kZWQuTWFnaWNTY3JvbGwtYXJyb3dzLWluc2lkZSB7XG4gIG92ZXJmbG93OiBoaWRkZW4gIWltcG9ydGFudDtcbn1cblxuLk1hZ2ljU2Nyb2xsLm1jcy1yb3VuZGVkLk1hZ2ljU2Nyb2xsLWFycm93cy1vdXRzaWRlIHtcbiAgb3ZlcmZsb3c6IHZpc2libGUgIWltcG9ydGFudDtcbn1cblxuLk1hZ2ljU2Nyb2xsLm1jcy1yb3VuZGVkIC5tY3MtYnV0dG9uLWFycm93IHtcbiAgY29sb3I6IHJnYmEoNDksIDUxLCA2MSwgMC42KTtcbiAgLXdlYmtpdC10cmFuc2l0aW9uOiBjb2xvciAuMTVzIGxpbmVhciwgYmFja2dyb3VuZC1jb2xvciAuMTVzIGxpbmVhcjtcbiAgdHJhbnNpdGlvbjogY29sb3IgLjE1cyBsaW5lYXIsIGJhY2tncm91bmQtY29sb3IgLjE1cyBsaW5lYXI7XG59XG5cbi5NYWdpY1Njcm9sbC5tY3Mtcm91bmRlZC5NYWdpY1Njcm9sbC1ob3Jpem9udGFsIC5tY3MtYnV0dG9uLWFycm93IHtcbiAgd2lkdGg6IDMwcHg7XG4gIGhlaWdodDogMTAwJTtcbn1cblxuLk1hZ2ljU2Nyb2xsLm1jcy1yb3VuZGVkLk1hZ2ljU2Nyb2xsLXZlcnRpY2FsIC5tY3MtYnV0dG9uLWFycm93IHtcbiAgd2lkdGg6IDEwMCU7XG4gIGhlaWdodDogMzBweDtcbn1cblxuLk1hZ2ljU2Nyb2xsLm1jcy1yb3VuZGVkLk1hZ2ljU2Nyb2xsLWhvcml6b250YWwgLm1jcy1idXR0b24tYXJyb3ctcHJldiB7XG4gIGxlZnQ6IDA7XG4gIGJvcmRlci1yYWRpdXM6IDEwcHggMCAwIDEwcHg7XG59XG5cbi5NYWdpY1Njcm9sbC5tY3Mtcm91bmRlZC5NYWdpY1Njcm9sbC1ob3Jpem9udGFsIC5tY3MtYnV0dG9uLWFycm93LW5leHQge1xuICByaWdodDogMDtcbiAgYm9yZGVyLXJhZGl1czogMCAxMHB4IDEwcHggMDtcbn1cblxuLk1hZ2ljU2Nyb2xsLm1jcy1yb3VuZGVkLk1hZ2ljU2Nyb2xsLXZlcnRpY2FsIC5tY3MtYnV0dG9uLWFycm93LXByZXYge1xuICB0b3A6IDA7XG4gIGJvcmRlci1yYWRpdXM6IDEwcHggMTBweCAwIDA7XG59XG5cbi5NYWdpY1Njcm9sbC5tY3Mtcm91bmRlZC5NYWdpY1Njcm9sbC12ZXJ0aWNhbCAubWNzLWJ1dHRvbi1hcnJvdy1uZXh0IHtcbiAgYm90dG9tOiAwO1xuICBib3JkZXItcmFkaXVzOiAwIDAgMTBweCAxMHB4O1xufVxuXG4uTWFnaWNTY3JvbGwubWNzLXJvdW5kZWQgLm1jcy1idXR0b24tYXJyb3cubWNzLWRpc2FibGVkIHtcbiAgb3BhY2l0eTogMSAhaW1wb3J0YW50O1xuICBjb2xvcjogcmdiYSg0OSwgNTEsIDYxLCAwLjEpO1xuICB0ZXh0LXNoYWRvdzogbm9uZSAhaW1wb3J0YW50O1xufVxuXG4uTWFnaWNTY3JvbGwubWNzLXJvdW5kZWQuTWFnaWNTY3JvbGwtYXJyb3dzLW91dHNpZGUgLm1jcy1idXR0b24tYXJyb3cge1xuICBiYWNrZ3JvdW5kOiAjZWZlZmVmO1xuICBvcGFjaXR5OiAxO1xuICBib3gtc2hhZG93OiAwIDAgMXB4IHJnYmEoMTUzLCAxNTMsIDE1MywgMC41KTtcbn1cblxuLk1hZ2ljU2Nyb2xsLm1jcy1yb3VuZGVkLk1hZ2ljU2Nyb2xsLWFycm93cy1pbnNpZGUgLm1jcy1idXR0b24tYXJyb3c6aG92ZXI6bm90KC5tY3MtZGlzYWJsZWQpIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogcmdiYSgyNTUsIDI1NSwgMjU1LCAwLjk2KTtcbiAgY29sb3I6ICMzMTMzM2Q7XG59XG5cbi5NYWdpY1Njcm9sbC5tY3Mtcm91bmRlZC5NYWdpY1Njcm9sbC1hcnJvd3MtaW5zaWRlIC5tY3MtYnV0dG9uLWFycm93IHtcbiAgYmFja2dyb3VuZC1jb2xvcjogcmdiYSgyNTUsIDI1NSwgMjU1LCAwLjc1KTtcbiAgYm94LXNoYWRvdzogMCAwIDFweCByZ2JhKDE1MywgMTUzLCAxNTMsIDAuNSk7XG59XG5cbi5sdC1pZTEwLW1hZ2ljIC5tY3Mtcm91bmRlZC5NYWdpY1Njcm9sbC1ob3Jpem9udGFsLk1hZ2ljU2Nyb2xsLWFycm93cy1pbnNpZGUgLm1jcy1idXR0b24tYXJyb3ctcHJldiB7XG4gIGJvcmRlci13aWR0aDogMCAxcHggMCAwO1xufVxuXG4ubHQtaWUxMC1tYWdpYyAubWNzLXJvdW5kZWQuTWFnaWNTY3JvbGwtaG9yaXpvbnRhbC5NYWdpY1Njcm9sbC1hcnJvd3MtaW5zaWRlIC5tY3MtYnV0dG9uLWFycm93LW5leHQge1xuICBib3JkZXItd2lkdGg6IDAgMCAwIDFweDtcbn1cblxuLmx0LWllMTAtbWFnaWMgLm1jcy1yb3VuZGVkLk1hZ2ljU2Nyb2xsLXZlcnRpY2FsLk1hZ2ljU2Nyb2xsLWFycm93cy1pbnNpZGUgLm1jcy1idXR0b24tYXJyb3ctcHJldiB7XG4gIGJvcmRlci13aWR0aDogMCAwIDFweCAwO1xufVxuXG4ubHQtaWUxMC1tYWdpYyAubWNzLXJvdW5kZWQuTWFnaWNTY3JvbGwtdmVydGljYWwuTWFnaWNTY3JvbGwtYXJyb3dzLWluc2lkZSAubWNzLWJ1dHRvbi1hcnJvdy1uZXh0IHtcbiAgYm9yZGVyLXdpZHRoOiAxcHggMCAwIDA7XG59XG5cbi5sdC1pZTktbWFnaWMgLm1jcy1yb3VuZGVkLk1hZ2ljU2Nyb2xsIC5tY3MtYnV0dG9uLWFycm93IHtcbiAgY29sb3I6ICM4Mzg1OEI7XG59XG5cbi5sdC1pZTktbWFnaWMgLm1jcy1yb3VuZGVkLk1hZ2ljU2Nyb2xsLk1hZ2ljU2Nyb2xsLWFycm93cy1pbnNpZGUgLm1jcy1idXR0b24tYXJyb3cge1xuICBiYWNrZ3JvdW5kOiAjZmZmO1xuICBmaWx0ZXI6IGFscGhhKG9wYWNpdHk9NzUpO1xufVxuXG4ubHQtaWU5LW1hZ2ljIC5tY3Mtcm91bmRlZC5NYWdpY1Njcm9sbC5NYWdpY1Njcm9sbC1hcnJvd3MtaW5zaWRlIC5tY3MtYnV0dG9uLWFycm93OmhvdmVyIHtcbiAgZmlsdGVyOiBhbHBoYShvcGFjaXR5PTk2KTtcbn1cblxuLmx0LWllOS1tYWdpYyAuTWFnaWNTY3JvbGwubWNzLXJvdW5kZWQgLm1jcy1idXR0b24tYXJyb3cubWNzLWRpc2FibGVkIHtcbiAgZmlsdGVyOiBhbHBoYShvcGFjaXR5PTc1KSAhaW1wb3J0YW50O1xuICBjb2xvcjogI2NjYztcbn1cblxuLypcblxuXG4gICBNYWdpYyBab29tIFBsdXMgdjUuMi40IFxuICAgQ29weXJpZ2h0IDIwMTcgTWFnaWMgVG9vbGJveFxuICAgQnV5IGEgbGljZW5zZTogaHR0cHM6Ly93d3cubWFnaWN0b29sYm94LmNvbS9tYWdpY3pvb21wbHVzL1xuICAgTGljZW5zZSBhZ3JlZW1lbnQ6IGh0dHBzOi8vd3d3Lm1hZ2ljdG9vbGJveC5jb20vbGljZW5zZS9cblxuXG4qL1xuLyoqXG4gKiBDb3JlIHN0eWxlc1xuICovXG5AZm9udC1mYWNlIHtcbiAgZm9udC1mYW1pbHk6IFwibWFnaWN0b29sYm94LXRoaW5cIjtcbiAgZm9udC13ZWlnaHQ6IG5vcm1hbDtcbiAgZm9udC1zdHlsZTogbm9ybWFsO1xuICBzcmM6IHVybChcIi4uL21hZ2ljLXRvb2xib3gtZm9udHMvbWFnaWN0b29sYm94LXRoaW4uZW90PyNpZWZpeFwiKSBmb3JtYXQoXCJlbWJlZGRlZC1vcGVudHlwZVwiKSwgdXJsKFwiZGF0YTpmb250L29wZW50eXBlO2Jhc2U2NCxBQUVBQUFBTkFJQUFBd0JRUmtaVVRYSkxTRWdBQUFkQUFBQUFIRWRFUlVZQUtRQVBBQUFISUFBQUFCNVBVeTh5QWxZTDRRQUFBVmdBQUFCV1kyMWhjRUFZWTcwQUFBSFVBQUFCU21kaGMzRC8vd0FEQUFBSEdBQUFBQWhuYkhsbU1NVk9Kd0FBQXpRQUFBR0lhR1ZoWkFtV1VZTUFBQURjQUFBQU5taG9aV0VQOVFhbUFBQUJGQUFBQUNSb2JYUjRMMEVBUUFBQUFiQUFBQUFrYkc5allRR0dBZ0FBQUFNZ0FBQUFGRzFoZUhBQVVBQWNBQUFCT0FBQUFDQnVZVzFsNk1QZ2RBQUFCTHdBQUFIMWNHOXpkTGFUdXlJQUFBYTBBQUFBWkFBQkFBQUFBUUFBRVdkeHoxOFBQUFVBQ3dnQUFBQUFBTkR0Zy9NQUFBQUEwTzJEOHdBQS9nSUluQWFlQUFBQUNBQUNBQUFBQUFBQUFBRUFBQWFlL2dJQXVBaWJBQUQvL3dpY0FBRUFBQUFBQUFBQUFBQUFBQUFBQUFBSkFBRUFBQUFKQUJrQUJRQUFBQUFBQWdBQUFBRUFBUUFBQUVBQUFBQUFBQUFBQVFaZUFaQUFCUUFJQlRNRm1RQUFBUjRGTXdXWkFBQUQxd0JtQWhJQUFBQUFCUUFBQUFBQUFBQUFBQUFBQUFBQUFBQUNBQUFBQUFBQVVHWkZaQUJBb0FHZ0JnWm0vbVlBdUFhZUFmNEFBQUFCQUFBQUFBQUFCQUFBQUFBQUFBQUNxZ0FBQ0pzQUFBT2xBQUFEcFFBQUNKc0FBQWliQUFBSGZBQkFBQUFBQXdBQUFBTUFBQUFjQUFFQUFBQUFBRVFBQXdBQkFBQUFIQUFFQUNnQUFBQUdBQVFBQVFBQ0FBQ2dCdi8vQUFBQUFLQUIvLzhBQUdBQ0FBRUFBQUFBQUFBQUFBRUdBQUFCQUFBQUFBQUFBQUVDQUFBQUFnQUFBQUFBQUFBQUFBQUFBQUFBQUFFQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFxQUNvQUtnQk1BR0FBZEFDSUFKd0F4QUFGQUFBQUFBUUFCWm9BQWdBRkFBZ0FDd0FQQUFBVEVRa0JJUUUzQVJFSkFTRURFU0VSWmdGZC91RUN1UDZrUFFGZC9tWUJYUDFJcEFRQUJOZjc3QUlLL1prQ0Mxejk5Z1FVL2xJQ0N2ck5CWnI2WmdBQkFBRCtBZ2ljQnA0QUN3QUFDUUVIQ1FFbkNRRTNDUUVYQkhFRUt5UDcxZnZWSXdRcis5VWpCQ3NFS3lNQ1VQdlZJd1FyKzlVakJDc0VLeVA3MVFRckl3QUFBQUVBQVA0Q0E2WUduZ0FGQUFBUkFSY0pBUWNEaXh2OGlRTjFHd0pRQkU0WCs4bjd5UmNBQUFBQkFBRCtBZ09tQnA0QUJRQUFDUUVuQ1FFM0E2YjhkeHNEZC95SEd3SlErN0lYQkRjRU54Y0FBUUFBQURjSW5BUGRBQVVBQUNVQk53a0JGd1JPKzdJWEJEY0VOeGMzQTRvYS9Ja0RlUm9BQUFFQUFBQTNDSndEM1FBRkFBQUpBUWNKQVNjRVRnUk9GL3ZKKzhrWEE5MzhkeHNEZC95SEd3QUNBRUFBUUFIQUFjQUFEUUFZQUFBbEJ5Y0dJeUltTkRZeUZoVVVEd0VXTXpJMk5DWWlCaFVVQWNBWGNTazNQMWxaZmxraDF5YzVPRkJRY0ZCWEYzRWhXWDVaV1Q4MktRSW5VSEJRVURnNUFBQUFEQUNXQUFFQUFBQUFBQUVBRVFBa0FBRUFBQUFBQUFJQUJBQkFBQUVBQUFBQUFBTUFMUUNoQUFFQUFBQUFBQVFBRVFEekFBRUFBQUFBQUFVQUN3RWRBQUVBQUFBQUFBWUFFUUZOQUFNQUFRUUpBQUVBSWdBQUFBTUFBUVFKQUFJQUNBQTJBQU1BQVFRSkFBTUFXZ0JGQUFNQUFRUUpBQVFBSWdEUEFBTUFBUVFKQUFVQUZnRUZBQU1BQVFRSkFBWUFJZ0VwQUUwQVlRQm5BR2tBWXdCVUFHOEFid0JzQUdJQWJ3QjRBQzBBVkFCb0FHa0FiZ0FBVFdGbmFXTlViMjlzWW05NExWUm9hVzRBQUZRQWFBQnBBRzRBQUZSb2FXNEFBRVlBYndCdUFIUUFSZ0J2QUhJQVp3QmxBQ0FBTWdBdUFEQUFJQUE2QUNBQVRRQmhBR2NBYVFCakFGUUFid0J2QUd3QVlnQnZBSGdBTFFCVUFHZ0FhUUJ1QUNBQU9nQWdBRElBTndBdEFERUFMUUF5QURBQU1RQTFBQUJHYjI1MFJtOXlaMlVnTWk0d0lEb2dUV0ZuYVdOVWIyOXNZbTk0TFZSb2FXNGdPaUF5TnkweExUSXdNVFVBQUUwQVlRQm5BR2tBWXdCVUFHOEFid0JzQUdJQWJ3QjRBQzBBVkFCb0FHa0FiZ0FBVFdGbmFXTlViMjlzWW05NExWUm9hVzRBQUZZQVpRQnlBSE1BYVFCdkFHNEFJQUF4QUM0QU1BQUFWbVZ5YzJsdmJpQXhMakFBQUUwQVlRQm5BR2tBWXdCVUFHOEFid0JzQUdJQWJ3QjRBQzBBVkFCb0FHa0FiZ0FBVFdGbmFXTlViMjlzWW05NExWUm9hVzRBQUFBQUFBSUFBQUFBQUFEL21nQm1BQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQ1FBQUFBRUFBZ0VDQVFNQkJBRUZBUVlCQndkMWJtbEJNREF4QjNWdWFVRXdNRElIZFc1cFFUQXdNd2QxYm1sQk1EQTBCM1Z1YVVFd01EVUhkVzVwUVRBd05nQUFBQUgvL3dBQ0FBRUFBQUFNQUFBQUZnQUFBQUlBQVFBREFBZ0FBUUFFQUFBQUFnQUFBQUFBQUFBQkFBQUFBTkJ3UUdFQUFBQUEwTzJEOHdBQUFBRFE3WVB6XCIpO1xufVxuXG4uTWFnaWNab29tLFxuLm16LWZpZ3VyZSxcbi5tei1sZW5zLFxuLm16LXpvb20td2luZG93LFxuLm16LWxvYWRpbmcsXG4ubXotaGludCxcbi5tei1leHBhbmQgLm16LWV4cGFuZC1zdGFnZSxcbi5tei1leHBhbmQgLm16LWV4cGFuZC1zdGFnZSAubXotaW1hZ2Utc3RhZ2UsXG4ubXotZXhwYW5kIC5tei1pbWFnZS1zdGFnZSA+IGZpZ3VyZSAubXotY2FwdGlvbixcbi5tei10aHVtYiBpbWcsXG4ubXotZXhwYW5kLXRodW1ibmFpbHMsXG4ubXotZXhwYW5kLWNvbnRyb2xzLFxuLm16LWJ1dHRvbiB7XG4gIC13ZWJraXQtYm94LXNpemluZzogYm9yZGVyLWJveDtcbiAgYm94LXNpemluZzogYm9yZGVyLWJveDtcbn1cblxuLk1hZ2ljWm9vbSxcbi5tei1maWd1cmUge1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIG91dGxpbmU6IDAgIWltcG9ydGFudDtcbiAgZm9udC1zaXplOiAwICFpbXBvcnRhbnQ7XG4gIGxpbmUtaGVpZ2h0OiAxMDAlICFpbXBvcnRhbnQ7XG4gIGRpcmVjdGlvbjogbHRyICFpbXBvcnRhbnQ7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgei1pbmRleDogMTtcbiAgbWFyZ2luOiAwIGF1dG87XG4gIHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7XG4gIC13ZWJraXQtdXNlci1zZWxlY3Q6IG5vbmU7XG4gIC1tb3otdXNlci1zZWxlY3Q6IG5vbmU7XG4gIC1tcy11c2VyLXNlbGVjdDogbm9uZTtcbiAgdXNlci1zZWxlY3Q6IG5vbmU7XG4gIC13ZWJraXQtdG91Y2gtY2FsbG91dDogbm9uZTtcbiAgLXdlYmtpdC10YXAtaGlnaGxpZ2h0LWNvbG9yOiB0cmFuc3BhcmVudDtcbiAgLXdlYmtpdC1iYWNrZmFjZS12aXNpYmlsaXR5OiBoaWRkZW47XG4gIGJhY2tmYWNlLXZpc2liaWxpdHk6IGhpZGRlbjtcbn1cblxuLk1hZ2ljWm9vbSB7XG4gIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLCAwLCAwKTtcbiAgLW1zLXRvdWNoLWFjdGlvbjogcGFuLXk7XG4gIHRvdWNoLWFjdGlvbjogcGFuLXk7XG59XG5cbmZpZ3VyZS5tei1maWd1cmUge1xuICBvdmVyZmxvdzogaGlkZGVuO1xuICBtYXJnaW46IDAgIWltcG9ydGFudDtcbiAgLXdlYmtpdC10cmFuc2Zvcm0tc3R5bGU6IHByZXNlcnZlLTNkO1xuICB0cmFuc2Zvcm0tc3R5bGU6IHByZXNlcnZlLTNkO1xufVxuXG4uTWFnaWNab29tIGltZyxcbi5tei1maWd1cmUgaW1nIHtcbiAgYm9yZGVyOiAwICFpbXBvcnRhbnQ7XG4gIG1hcmdpbjogMCAhaW1wb3J0YW50O1xuICBvdXRsaW5lOiAwICFpbXBvcnRhbnQ7XG4gIHBhZGRpbmc6IDAgIWltcG9ydGFudDtcbn1cblxuLk1hZ2ljWm9vbSA+IGltZyxcbi5tei1maWd1cmUgPiBpbWcge1xuICB3aWR0aDogMTAwJTtcbiAgaGVpZ2h0OiBhdXRvO1xufVxuXG4uaWU4LW1hZ2ljIC5NYWdpY1pvb20gPiBpbWcsXG4uaWU4LW1hZ2ljIC5tei1maWd1cmUgPiBpbWcge1xuICB3aWR0aDogMTAwJTtcbiAgbWF4LXdpZHRoOiBub25lICFpbXBvcnRhbnQ7XG59XG5cbi5tei1maWd1cmUubXotbm8tem9vbS5tei1uby1leHBhbmQsXG4ubXotZXhwYW5kIC5tei1maWd1cmUubXotbm8tem9vbSB7XG4gIGN1cnNvcjogZGVmYXVsdCAhaW1wb3J0YW50O1xufVxuXG4ubXotZmlndXJlLm16LWFjdGl2ZSxcbi5tei1leHBhbmQge1xuICAtbXMtdG91Y2gtYWN0aW9uOiBub25lO1xuICB0b3VjaC1hY3Rpb246IG5vbmU7XG59XG5cbi5tei1sZW5zLFxuLm16LXpvb20td2luZG93IHtcbiAgcG9zaXRpb246IGFic29sdXRlICFpbXBvcnRhbnQ7XG4gIG92ZXJmbG93OiBoaWRkZW4gIWltcG9ydGFudDtcbiAgcG9pbnRlci1ldmVudHM6IG5vbmUgIWltcG9ydGFudDtcbn1cblxuLm16LWxlbnMgaW1nLFxuLm16LXpvb20td2luZG93IGltZyB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZSAhaW1wb3J0YW50O1xuICBtYXgtd2lkdGg6IG5vbmUgIWltcG9ydGFudDtcbiAgbWF4LWhlaWdodDogbm9uZSAhaW1wb3J0YW50O1xufVxuXG4ubXotbGVucyBpbWcge1xuICAtd2Via2l0LXRyYW5zaXRpb246IG5vbmUgIWltcG9ydGFudDtcbiAgdHJhbnNpdGlvbjogbm9uZSAhaW1wb3J0YW50O1xufVxuXG4ubXotem9vbS13aW5kb3cge1xuICB6LWluZGV4OiAyMDAwMDAwMDAwO1xuICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwgMCwgMCk7XG4gIHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwgMCwgMCk7XG59XG5cbi5tei16b29tLXdpbmRvdy5tei1tYWduaWZpZXIge1xuICAtd2Via2l0LW1hc2staW1hZ2U6IC13ZWJraXQtcmFkaWFsLWdyYWRpZW50KGNpcmNsZSwgd2hpdGUsIGJsYWNrKTtcbiAgLXdlYmtpdC1tYXNrLWNsaXA6IGNvbnRlbnQ7XG4gIGN1cnNvcjogbm9uZTtcbn1cblxuLm16LWZpZ3VyZS5tei1hY3RpdmUgLm16LXpvb20td2luZG93Lm16LW1hZ25pZmllciB7XG4gIHBvaW50ZXItZXZlbnRzOiBhdXRvICFpbXBvcnRhbnQ7XG4gIGN1cnNvcjogaW5oZXJpdCAhaW1wb3J0YW50O1xufVxuXG4ubXotem9vbS13aW5kb3cubXotbWFnbmlmaWVyLm16LWV4cGFuZGVkIHtcbiAgei1pbmRleDogMjE0NzQ4MzY0Nztcbn1cblxuLm16LXpvb20td2luZG93IGltZyB7XG4gIHdpZHRoOiBhdXRvO1xuICBoZWlnaHQ6IGF1dG87XG4gIGxlZnQ6IC0xMDAwJTtcbiAgcmlnaHQ6IC0xMDAwJTtcbiAgdG9wOiAtMTAwMCU7XG4gIGJvdHRvbTogLTEwMDAlO1xuICBtYXJnaW46IGF1dG8gIWltcG9ydGFudDtcbiAgLXdlYmtpdC10cmFuc2l0aW9uOiBub25lICFpbXBvcnRhbnQ7XG4gIHRyYW5zaXRpb246IG5vbmUgIWltcG9ydGFudDtcbiAgLXdlYmtpdC10cmFuc2Zvcm0tb3JpZ2luOiA1MCUgNTAlICFpbXBvcnRhbnQ7XG4gIC1tcy10cmFuc2Zvcm0tb3JpZ2luOiA1MCUgNTAlICFpbXBvcnRhbnQ7XG4gIHRyYW5zZm9ybS1vcmlnaW46IDUwJSA1MCUgIWltcG9ydGFudDtcbn1cblxuLm16LXpvb20td2luZG93Lm16LXByZXZpZXcgaW1nIHtcbiAgdG9wOiAwICFpbXBvcnRhbnQ7XG4gIGJvdHRvbTogMCAhaW1wb3J0YW50O1xuICBsZWZ0OiAwICFpbXBvcnRhbnQ7XG4gIHJpZ2h0OiAwICFpbXBvcnRhbnQ7XG4gIG1hcmdpbjogMCAhaW1wb3J0YW50O1xuICB3aWR0aDogMTAwJSAhaW1wb3J0YW50O1xuICBoZWlnaHQ6IGF1dG8gIWltcG9ydGFudDtcbiAgLXdlYmtpdC10cmFuc2Zvcm06IG5vbmUgIWltcG9ydGFudDtcbiAgdHJhbnNmb3JtOiBub25lICFpbXBvcnRhbnQ7XG59XG5cbi5sdC1pZTktbWFnaWMgLm16LXpvb20td2luZG93IGltZyB7XG4gIG1hcmdpbjogMCAhaW1wb3J0YW50O1xufVxuXG4ubXotZXhwYW5kLWNvbnRyb2xzIHtcbiAgei1pbmRleDogMjE0NzQ4MzY0Nztcbn1cblxuLm16LWZhZGUge1xuICAtd2Via2l0LXRyYW5zaXRpb246IG9wYWNpdHkgLjI1cztcbiAgdHJhbnNpdGlvbjogb3BhY2l0eSAuMjVzO1xufVxuXG4ubXotaGlkZGVuIHtcbiAgb3BhY2l0eTogMDtcbn1cblxuLm16LXZpc2libGUge1xuICBvcGFjaXR5OiAxO1xufVxuXG4ubW9iaWxlLW1hZ2ljIC5tei1leHBhbmQgLm16LWV4cGFuZC1iZyB7XG4gIC13ZWJraXQtdHJhbnNmb3JtLXN0eWxlOiBmbGF0ICFpbXBvcnRhbnQ7XG4gIHRyYW5zZm9ybS1zdHlsZTogZmxhdCAhaW1wb3J0YW50O1xufVxuXG4ubW9iaWxlLW1hZ2ljIC5tei1leHBhbmQgLm16LWltYWdlLXN0YWdlID4gZmlndXJlIC5tei1jYXB0aW9uIHtcbiAgZGlzcGxheTogbm9uZSAhaW1wb3J0YW50O1xufVxuXG4ubW9iaWxlLW1hZ2ljIC5tei1leHBhbmQtY29udHJvbHMubXotZmFkZSB7XG4gIHRyYW5zaXRpb246IG5vbmUgIWltcG9ydGFudDtcbn1cblxuLm1vYmlsZS1tYWdpYyAubXotZXhwYW5kID4gLm16LXpvb20td2luZG93IHtcbiAgdG9wOiAwICFpbXBvcnRhbnQ7XG4gIGxlZnQ6IDAgIWltcG9ydGFudDtcbn1cblxuLm16LWV4cGFuZGVkLXZpZXctb3Blbixcbi5tei1leHBhbmRlZC12aWV3LW9wZW4gYm9keSB7XG4gIG92ZXJmbG93OiBoaWRkZW4gIWltcG9ydGFudDtcbn1cblxuLm16LWV4cGFuZGVkLXZpZXctb3BlbiBib2R5IHtcbiAgaGVpZ2h0OiBhdXRvICFpbXBvcnRhbnQ7XG59XG5cbi8qKlxuICogTWFpbiBmaWd1cmVcbiAqL1xuLm16LWZpZ3VyZS5tei1hY3RpdmUge1xuICBiYWNrZ3JvdW5kOiAjZmZmO1xufVxuXG4ubXotZmlndXJlLm16LW5vLXpvb20sXG4ubXotZmlndXJlLm16LWNsaWNrLXpvb20sXG4ubXotZmlndXJlLm16LWFjdGl2ZSB7XG4gIGN1cnNvcjogcG9pbnRlcjtcbiAgY3Vyc29yOiAtd2Via2l0LXpvb20taW47XG4gIGN1cnNvcjogLW1vei16b29tLWluO1xuICBjdXJzb3I6IHpvb20taW47XG59XG5cbi5tei1maWd1cmUubXotYWN0aXZlLm16LW5vLWV4cGFuZCB7XG4gIGN1cnNvcjogY3Jvc3NoYWlyO1xufVxuXG4ubXotZmlndXJlLm16LWFjdGl2ZS5tei1jbGljay16b29tLm16LW5vLWV4cGFuZCB7XG4gIGN1cnNvcjogY3Jvc3NoYWlyO1xuICBjdXJzb3I6IC13ZWJraXQtem9vbS1vdXQ7XG4gIGN1cnNvcjogLW1vei16b29tLW91dDtcbiAgY3Vyc29yOiB6b29tLW91dDtcbn1cblxuLm16LWZpZ3VyZS5tei1hY3RpdmUubXotbWFnbmlmaWVyLXpvb20ubXotaG92ZXItem9vbS5tei1uby1leHBhbmQge1xuICBjdXJzb3I6IG5vbmU7XG59XG5cbi5tei1maWd1cmUubXotbWFnbmlmaWVyLXpvb20ubXotYWN0aXZlIHtcbiAgb3ZlcmZsb3c6IHZpc2libGUgIWltcG9ydGFudDtcbn1cblxuLm16LWZpZ3VyZS5tei1hY3RpdmUgPiBpbWcge1xuICBmaWx0ZXI6IHVybChcImRhdGE6aW1hZ2Uvc3ZnK3htbDt1dGY4LDxzdmcgeG1sbnM9J2h0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnJz48ZmlsdGVyIGlkPSdncmF5c2NhbGUnPjxmZUNvbG9yTWF0cml4IHR5cGU9J3NhdHVyYXRlJyB2YWx1ZXM9JzAnLz48ZmVDb21wb25lbnRUcmFuc2Zlcj48ZmVGdW5jQSB0eXBlPSdsaW5lYXInIHNsb3BlPScwLjYnLz48L2ZlQ29tcG9uZW50VHJhbnNmZXI+PC9maWx0ZXI+PC9zdmc+I2dyYXlzY2FsZVwiKTtcbiAgLXdlYmtpdC1maWx0ZXI6IGdyYXlzY2FsZSg4MCUpIG9wYWNpdHkoNjAlKTtcbiAgZmlsdGVyOiBncmF5c2NhbGUoODAlKSBvcGFjaXR5KDYwJSk7XG59XG5cbi5uby1jc3NmaWx0ZXJzLW1hZ2ljIC5tei1maWd1cmUubXotYWN0aXZlID4gaW1nIHtcbiAgb3BhY2l0eTogMC42O1xufVxuXG4ubHQtaWUxMC1tYWdpYyAubXotZmlndXJlLm16LWFjdGl2ZSA+IGltZyB7XG4gIG9wYWNpdHk6IDE7XG4gIGZpbHRlcjogcHJvZ2lkOkRYSW1hZ2VUcmFuc2Zvcm0uTWljcm9zb2Z0LkJhc2ljSW1hZ2UoZ3JheVNjYWxlPTEsb3BhY2l0eT0wLjYpO1xufVxuXG4ubXotZmlndXJlLm16LWFjdGl2ZS5tei1pbm5lci16b29tLFxuLmx0LWllMTEtbWFnaWMgLm16LWV4cGFuZCAubXotZmlndXJlLm16LWFjdGl2ZS5tei1pbm5lci16b29tLFxuLmx0LWllMTEtbWFnaWMgLm16LWZpZ3VyZS5tei1hY3RpdmUubXotaW5uZXItem9vbSA+IGltZyB7XG4gIG9wYWNpdHk6IDA7XG59XG5cbi5sdC1pZTExLW1hZ2ljIC5tei1maWd1cmUubXotYWN0aXZlLm16LWlubmVyLXpvb20sXG4ubHQtaWUxMS1tYWdpYyAubXotZmlndXJlLm16LWFjdGl2ZS5tei1pbm5lci16b29tID4gLm16LXpvb20td2luZG93IHtcbiAgb3BhY2l0eTogMTtcbn1cblxuLmx0LWllMTAtbWFnaWMgLm16LWV4cGFuZCAubXotZmlndXJlLm16LWFjdGl2ZS5tei1pbm5lci16b29tLFxuLmx0LWllMTAtbWFnaWMgLm16LWZpZ3VyZS5tei1hY3RpdmUubXotaW5uZXItem9vbSA+IGltZyB7XG4gIGZpbHRlcjogYWxwaGEob3BhY2l0eT0wKTtcbn1cblxuLmllOS1tYWdpYyAubXotZXhwYW5kIC5tei1maWd1cmUubXotYWN0aXZlLm16LWlubmVyLXpvb20ge1xuICBiYWNrZ3JvdW5kOiB0cmFuc3BhcmVudDtcbn1cblxuLyoqXG4gKiBab29tIGxlbnNcbiAqL1xuLm16LWxlbnMge1xuICBib3JkZXI6IDFweCBzb2xpZCAjYWFhO1xuICBib3JkZXItY29sb3I6IHJnYmEoMTcwLCAxNzAsIDE3MCwgMC43KTtcbiAgYm94LXNoYWRvdzogMCAwIDVweCByZ2JhKDAsIDAsIDAsIDAuMyk7XG4gIGN1cnNvcjogbm9uZTtcbiAgei1pbmRleDogMTA7XG4gIG9wYWNpdHk6IDA7XG59XG5cbi5tei1maWd1cmUubXotYWN0aXZlIC5tei1sZW5zIHtcbiAgb3BhY2l0eTogMTtcbiAgLXdlYmtpdC10cmFuc2l0aW9uOiBvcGFjaXR5IDAuM3MgY3ViaWMtYmV6aWVyKDAuMjUsIDAuNSwgMC41LCAwLjkpIDAuMXM7XG4gIHRyYW5zaXRpb246IG9wYWNpdHkgMC4zcyBjdWJpYy1iZXppZXIoMC4yNSwgMC41LCAwLjUsIDAuOSkgMC4xcztcbn1cblxuLm16LWZpZ3VyZS5tei1hY3RpdmUubXotbWFnbmlmaWVyLXpvb20gLm16LWxlbnMge1xuICBib3JkZXItcmFkaXVzOiA1MCU7XG4gIG9wYWNpdHk6IDA7XG4gIGN1cnNvcjogbm9uZTtcbn1cblxuLyoqXG4gKiBab29tIHdpbmRvd1xuICovXG4ubXotem9vbS13aW5kb3cge1xuICBiYWNrZ3JvdW5kOiAjZmZmO1xuICBib3gtc2hhZG93OiAwIDAgM3B4IHJnYmEoMCwgMCwgMCwgMC4yKTtcbn1cblxuLm16LXpvb20td2luZG93Lm16LW1hZ25pZmllciB7XG4gIGJvcmRlci1yYWRpdXM6IDEwMCU7XG4gIGJvcmRlcjogMDtcbiAgYmFja2dyb3VuZDogcmdiYSgyNTUsIDI1NSwgMjU1LCAwLjMpO1xufVxuXG4ubXotem9vbS13aW5kb3cubXotbWFnbmlmaWVyOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXCI7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHRvcDogMDtcbiAgYm90dG9tOiAwO1xuICBsZWZ0OiAwO1xuICByaWdodDogMDtcbiAgYm9yZGVyLXJhZGl1czogMTAwJTtcbiAgYm9yZGVyOiAxcHggc29saWQgcmdiYSgxNzAsIDE3MCwgMTcwLCAwLjcpO1xuICBib3gtc2hhZG93OiBpbnNldCAwIDAgMjBweCAxcHggcmdiYSgwLCAwLCAwLCAwLjMpO1xuICBiYWNrZ3JvdW5kOiB0cmFuc3BhcmVudDtcbiAgei1pbmRleDogMTtcbn1cblxuLm16LXpvb20td2luZG93Lm16LW1hZ25pZmllci5tei1zcXVhcmUsXG4ubXotem9vbS13aW5kb3cubXotbWFnbmlmaWVyLm16LXNxdWFyZTpiZWZvcmUge1xuICBib3JkZXItcmFkaXVzOiAwICFpbXBvcnRhbnQ7XG59XG5cbi5sdC1pZTktbWFnaWMgLm16LXpvb20td2luZG93IHtcbiAgYm9yZGVyOiAxcHggc29saWQgI2U1ZTVlNTtcbn1cblxuLm16LXpvb20td2luZG93Lm16LWlubmVyIHtcbiAgYm9yZGVyOiBub25lO1xuICBib3gtc2hhZG93OiBub25lO1xufVxuXG4vKiBDYXB0aW9uIGluIHpvb20gd2luZG93ICovXG4ubXotem9vbS13aW5kb3cgLm16LWNhcHRpb24ge1xuICBiYWNrZ3JvdW5kOiAjNzc3O1xuICBjb2xvcjogI2ZmZjtcbiAgZm9udC1zaXplOiAxMHB0O1xuICBvcGFjaXR5OiAwLjg7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgdG9wOiAwO1xuICB6LWluZGV4OiAxNTA7XG4gIHBhZGRpbmc6IDNweDtcbiAgd2lkdGg6IDEwMCU7XG4gIGxpbmUtaGVpZ2h0OiBub3JtYWwgIWltcG9ydGFudDtcbiAgdGV4dC1hbGlnbjogY2VudGVyICFpbXBvcnRhbnQ7XG59XG5cbi5sdC1pZTktbWFnaWMgLm16LXpvb20td2luZG93IC5tei1jYXB0aW9uIHtcbiAgZmlsdGVyOiBhbHBoYShvcGFjaXR5PTgwKTtcbn1cblxuLm16LXpvb20td2luZG93LmNhcHRpb24tYm90dG9tIC5tei1jYXB0aW9uIHtcbiAgdG9wOiBhdXRvO1xuICBib3R0b206IDA7XG59XG5cbi5tei16b29tLXdpbmRvdy5tei1leHBhbmRlZCA+IC5tei1jYXB0aW9uIHtcbiAgZGlzcGxheTogbm9uZTtcbn1cblxuLyogWm9vbSB3aW5kb3cgYW5pbWF0aW9ucyAqL1xuLm16LXpvb20td2luZG93Lm16LWRlYWN0aXZhdGluZyxcbi5tei16b29tLXdpbmRvdy5tei1hY3RpdmF0aW5nIHtcbiAgLXdlYmtpdC10cmFuc2l0aW9uOiBvcGFjaXR5IDAuM3MgY3ViaWMtYmV6aWVyKDAuMjUsIDAuNSwgMC41LCAwLjkpLCAtd2Via2l0LXRyYW5zZm9ybSAwLjNzIGN1YmljLWJlemllcigwLjI1LCAwLjUsIDAuNSwgMC45KTtcbiAgdHJhbnNpdGlvbjogb3BhY2l0eSAwLjNzIGN1YmljLWJlemllcigwLjI1LCAwLjUsIDAuNSwgMC45KSwgdHJhbnNmb3JtIDAuM3MgY3ViaWMtYmV6aWVyKDAuMjUsIDAuNSwgMC41LCAwLjkpO1xufVxuXG4ubXotem9vbS13aW5kb3cubXotZGVhY3RpdmF0aW5nIHtcbiAgLXdlYmtpdC10cmFuc2l0aW9uLWR1cmF0aW9uOiAuMjVzLCAuMjVzLCAuMjVzO1xuICB0cmFuc2l0aW9uLWR1cmF0aW9uOiAuMjVzLCAuMjVzLCAuMjVzO1xufVxuXG4ubXotem9vbS13aW5kb3cubXotcC1yaWdodCxcbi5tei16b29tLXdpbmRvdy5tei1wLWxlZnQsXG4ubXotem9vbS13aW5kb3cubXotcC10b3AsXG4ubXotem9vbS13aW5kb3cubXotcC1ib3R0b20ge1xuICBvcGFjaXR5OiAwO1xuICB6LWluZGV4OiAtMTAwO1xufVxuXG4ubXotem9vbS13aW5kb3cubXotcC1yaWdodCB7XG4gIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgtMjAlLCAwLCAwKTtcbiAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgtMjAlLCAwLCAwKTtcbn1cblxuLm16LXpvb20td2luZG93Lm16LXAtbGVmdCB7XG4gIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgyMCUsIDAsIDApO1xuICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDIwJSwgMCwgMCk7XG59XG5cbi5tei16b29tLXdpbmRvdy5tei1wLXRvcCB7XG4gIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLCAyMCUsIDApO1xuICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsIDIwJSwgMCk7XG59XG5cbi5tei16b29tLXdpbmRvdy5tei1wLWJvdHRvbSB7XG4gIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLCAtMjAlLCAwKTtcbiAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLCAtMjAlLCAwKTtcbn1cblxuLyogSW5uZXIgbW9kZSBhbmltYXRpb24gKi9cbi5tei16b29tLXdpbmRvdyA+IGltZyB7XG4gIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLCAwLCAwKSBzY2FsZSgxKTtcbiAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLCAwLCAwKSBzY2FsZSgxKTtcbiAgLXdlYmtpdC1iYWNrZmFjZS12aXNpYmlsaXR5OiBoaWRkZW47XG4gIGJhY2tmYWNlLXZpc2liaWxpdHk6IGhpZGRlbjtcbn1cblxuLm16LXpvb20td2luZG93Lm16LXAtaW5uZXIubXotZGVhY3RpdmF0aW5nID4gaW1nLFxuLm16LXpvb20td2luZG93Lm16LXAtaW5uZXIubXotYWN0aXZhdGluZyA+IGltZyB7XG4gIC13ZWJraXQtdHJhbnNpdGlvbjogLXdlYmtpdC10cmFuc2Zvcm0gMC4yMnMgY3ViaWMtYmV6aWVyKDAuMjUsIDAuNSwgMC41LCAwLjkpICFpbXBvcnRhbnQ7XG4gIHRyYW5zaXRpb246IHRyYW5zZm9ybSAwLjIycyBjdWJpYy1iZXppZXIoMC4yNSwgMC41LCAwLjUsIDAuOSkgIWltcG9ydGFudDtcbn1cblxuLyogTWFnbmlmaWVyIG1vZGUgYW5pbWF0aW9uICovXG4ubXotem9vbS13aW5kb3cubXotcC1tYWduaWZpZXIge1xuICAtd2Via2l0LXRyYW5zZm9ybTogc2NhbGUoMC4xKTtcbiAgdHJhbnNmb3JtOiBzY2FsZSgwLjEpO1xufVxuXG4vKiBQcmV2aWV3IG1vZGUgYW5pbWF0aW9uICovXG4ubXotem9vbS13aW5kb3cubXotcHJldmlldy5tei1kZWFjdGl2YXRpbmcsXG4ubXotem9vbS13aW5kb3cubXotcHJldmlldy5tei1hY3RpdmF0aW5nLFxuLm16LXpvb20td2luZG93Lm16LWN1c3RvbS5tei1kZWFjdGl2YXRpbmcsXG4ubXotem9vbS13aW5kb3cubXotY3VzdG9tLm16LWFjdGl2YXRpbmcge1xuICAtd2Via2l0LXRyYW5zaXRpb246IG9wYWNpdHkgMC4zcyBjdWJpYy1iZXppZXIoMC4yNSwgMC41LCAwLjUsIDAuOSk7XG4gIHRyYW5zaXRpb246IG9wYWNpdHkgMC4zcyBjdWJpYy1iZXppZXIoMC4yNSwgMC41LCAwLjUsIDAuOSk7XG59XG5cbi5tei16b29tLXdpbmRvdy5tei1wcmV2aWV3Lm16LWRlYWN0aXZhdGluZyxcbi5tei16b29tLXdpbmRvdy5tei1jdXN0b20ubXotZGVhY3RpdmF0aW5nIHtcbiAgLXdlYmtpdC10cmFuc2l0aW9uLWR1cmF0aW9uOiAuMnM7XG4gIHRyYW5zaXRpb24tZHVyYXRpb246IC4ycztcbn1cblxuLm16LXpvb20td2luZG93Lm16LXAtcHJldmlldyxcbi5tei16b29tLXdpbmRvdy5tei1wLWN1c3RvbSB7XG4gIG9wYWNpdHk6IDA7XG59XG5cbi8qKlxuICogSGludCAmIExvYWRpbmdcbiAqL1xuLm16LWhpbnQsXG4ubXotbG9hZGluZyB7XG4gIGNvbG9yOiAjZWVlO1xuICBiYWNrZ3JvdW5kOiByZ2JhKDQ5LCA1MSwgNjEsIDAuNyk7XG4gIGZvbnQ6IG5vcm1hbCAxMnB4LzEuMmVtICdMdWNpZGEgR3JhbmRlJywgJ0x1Y2lkYSBTYW5zIFVuaWNvZGUnLCBWZXJkYW5hLCAnSGVsdmV0aWNhIE5ldWUnLCBBcmlhbCwgSGVsdmV0aWNhLCBzYW5zLXNlcmlmO1xuICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgZGlyZWN0aW9uOiBsdHI7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgbWFyZ2luOiAwO1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHotaW5kZXg6IDEwMDA7XG4gIHBvaW50ZXItZXZlbnRzOiBub25lO1xuICAtd2Via2l0LWZvbnQtc21vb3RoaW5nOiBhbnRpYWxpYXNlZDtcbiAgLW1vei1vc3gtZm9udC1zbW9vdGhpbmc6IGdyYXlzY2FsZTtcbiAgLXdlYmtpdC10cmFuc2l0aW9uOiBvcGFjaXR5IDAuMjVzIGVhc2U7XG4gIHRyYW5zaXRpb246IG9wYWNpdHkgMC4yNXMgZWFzZTtcbn1cblxuLm16LWhpbnQge1xuICBib3R0b206IDhweDtcbiAgbGVmdDogMDtcbiAgcmlnaHQ6IDA7XG4gIHBhZGRpbmc6IDAgMTAlO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcbiAgLXdlYmtpdC10cmFuc2l0aW9uOiBvcGFjaXR5IDAuMjVzIGVhc2UsIHotaW5kZXggMC4yNXMgZWFzZTtcbiAgdHJhbnNpdGlvbjogb3BhY2l0eSAwLjI1cyBlYXNlLCB6LWluZGV4IDAuMjVzIGVhc2U7XG59XG5cbi5tei1oaW50LW1lc3NhZ2Uge1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIGJhY2tncm91bmQ6IHJnYmEoNDksIDUxLCA2MSwgMC43KTtcbiAgYm9yZGVyLXJhZGl1czogMmVtO1xuICBwYWRkaW5nOiAuN2VtIDEuMWVtO1xufVxuXG4ubXotaGludC1tZXNzYWdlOmJlZm9yZSB7XG4gIGNvbnRlbnQ6ICdcXDAyMjk1JztcbiAgZm9udC1mYW1pbHk6IHNlcmlmO1xuICBmb250LXNpemU6IDEuNWVtO1xuICBzcGVhazogbm9uZTtcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xuICB2ZXJ0aWNhbC1hbGlnbjogLTJweDtcbiAgbWFyZ2luLXJpZ2h0OiA2cHg7XG4gIC13ZWJraXQtdHJhbnNpdGlvbjogb3BhY2l0eSAwLjI1cyBlYXNlO1xuICB0cmFuc2l0aW9uOiBvcGFjaXR5IDAuMjVzIGVhc2U7XG59XG5cbi5tb2JpbGUtbWFnaWMgLm16LWhpbnQtbWVzc2FnZTpiZWZvcmUge1xuICBkaXNwbGF5OiBub25lO1xufVxuXG4ubXotaGludC1oaWRkZW4ge1xuICBvcGFjaXR5OiAwO1xuICB6LWluZGV4OiAtMTtcbiAgLXdlYmtpdC10cmFuc2l0aW9uLWRlbGF5OiAuNnM7XG4gIHRyYW5zaXRpb24tZGVsYXk6IC42cztcbn1cblxuLyogSGludCBpbiB0aGUgZXhwYW5kZWQgdmlldyBvbiBtb2JpbGUgKi9cbi5tei1leHBhbmQgLm16LWhpbnQge1xuICBmb250LXNpemU6IDE4cHg7XG4gIGxpbmUtaGVpZ2h0OiAxLjFlbTtcbiAgdG9wOiA1MCU7XG4gIGJvdHRvbTogYXV0bztcbiAgbWFyZ2luOiAwO1xuICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlKDAsIC01MCUpO1xuICAtbXMtdHJhbnNmb3JtOiB0cmFuc2xhdGUoMCwgLTUwJSk7XG4gIHRyYW5zZm9ybTogdHJhbnNsYXRlKDAsIC01MCUpO1xufVxuXG4ubXotZXhwYW5kIC5tei1oaW50LW1lc3NhZ2Uge1xuICBwYWRkaW5nOiAxLjFlbTtcbn1cblxuLm16LWV4cGFuZCAubXotaGludC1tZXNzYWdlOmJlZm9yZSB7XG4gIGRpc3BsYXk6IG5vbmU7XG59XG5cbi5tei1leHBhbmQgLm16LWhpbnQtaGlkZGVuIHtcbiAgLXdlYmtpdC10cmFuc2l0aW9uLWRlbGF5OiAxcztcbiAgdHJhbnNpdGlvbi1kZWxheTogMXM7XG4gIG9wYWNpdHk6IDA7XG59XG5cbi8qIExvYWRpbmcgaW5kaWNhdG9yICovXG4ubXotbG9hZGluZyB7XG4gIGZvbnQtc2l6ZTogMDtcbiAgYm9yZGVyLXJhZGl1czogMTAwJTtcbiAgb3BhY2l0eTogMDtcbiAgcGFkZGluZzogMDtcbiAgd2lkdGg6IDM2cHg7XG4gIGhlaWdodDogMzZweDtcbiAgdG9wOiA1MCU7XG4gIGxlZnQ6IDUwJTtcbiAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZSgtNTAlLCAtNTAlKTtcbiAgLW1zLXRyYW5zZm9ybTogdHJhbnNsYXRlKC01MCUsIC01MCUpO1xuICB0cmFuc2Zvcm06IHRyYW5zbGF0ZSgtNTAlLCAtNTAlKTtcbn1cblxuLm16LWxvYWRpbmc6YWZ0ZXIge1xuICBjb250ZW50OiAnJztcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB0b3A6IDA7XG4gIGJvdHRvbTogMDtcbiAgbGVmdDogMDtcbiAgcmlnaHQ6IDA7XG4gIHdpZHRoOiAyNHB4O1xuICBoZWlnaHQ6IDI0cHg7XG4gIG1hcmdpbjogYXV0bztcbiAgdGV4dC1pbmRlbnQ6IC05OTk5ZW07XG4gIGJvcmRlci1yYWRpdXM6IDUwJTtcbiAgYm9yZGVyOiAycHggc29saWQgd2hpdGU7XG4gIGJvcmRlci10b3AtY29sb3I6IHRyYW5zcGFyZW50O1xuICBib3gtc2l6aW5nOiBib3JkZXItYm94O1xufVxuXG4ubXotbG9hZGluZy5zaG93biB7XG4gIG9wYWNpdHk6IDE7XG4gIHotaW5kZXg6IDE7XG4gIC13ZWJraXQtdHJhbnNpdGlvbjogb3BhY2l0eSAwcztcbiAgdHJhbnNpdGlvbjogb3BhY2l0eSAwcztcbn1cblxuLm16LWxvYWRpbmcuc2hvd246YWZ0ZXIge1xuICAtd2Via2l0LWFuaW1hdGlvbjogc3Bpbi1sb2FkaW5nIC45cyBpbmZpbml0ZSBsaW5lYXI7XG4gIGFuaW1hdGlvbjogc3Bpbi1sb2FkaW5nIC45cyBpbmZpbml0ZSBsaW5lYXI7XG59XG5cbkAtd2Via2l0LWtleWZyYW1lcyBzcGluLWxvYWRpbmcge1xuICAwJSB7XG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHJvdGF0ZSgwZGVnKTtcbiAgICB0cmFuc2Zvcm06IHJvdGF0ZSgwZGVnKTtcbiAgfVxuICAxMDAlIHtcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogcm90YXRlKDM2MGRlZyk7XG4gICAgdHJhbnNmb3JtOiByb3RhdGUoMzYwZGVnKTtcbiAgfVxufVxuXG5Aa2V5ZnJhbWVzIHNwaW4tbG9hZGluZyB7XG4gIDAlIHtcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogcm90YXRlKDBkZWcpO1xuICAgIHRyYW5zZm9ybTogcm90YXRlKDBkZWcpO1xuICB9XG4gIDEwMCUge1xuICAgIC13ZWJraXQtdHJhbnNmb3JtOiByb3RhdGUoMzYwZGVnKTtcbiAgICB0cmFuc2Zvcm06IHJvdGF0ZSgzNjBkZWcpO1xuICB9XG59XG5cbi5sdC1pZTEwLW1hZ2ljIC5tei1sb2FkaW5nIHtcbiAgYm9yZGVyLXJhZGl1czogMmVtO1xuICBmb250LXNpemU6IDEycHg7XG4gIHBhZGRpbmc6IC43ZW0gMS4xZW07XG4gIHdpZHRoOiBhdXRvO1xuICBoZWlnaHQ6IGF1dG87XG59XG5cbi5sdC1pZTEwLW1hZ2ljIC5tei1sb2FkaW5nOmFmdGVyIHtcbiAgY29udGVudDogJ0xvYWRpbmcuLi4nO1xuICB0ZXh0LWluZGVudDogMDtcbiAgYm9yZGVyOiBub25lO1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG59XG5cbi5sdC1pZTktbWFnaWMgLm16LWxvYWRpbmcge1xuICBmaWx0ZXI6IGFscGhhKG9wYWNpdHk9MCk7XG4gIHJpZ2h0OiAwO1xuICBsZWZ0OiAwO1xuICB3aWR0aDogMTI2cHg7XG4gIG1hcmdpbjogYXV0bztcbn1cblxuLmx0LWllOS1tYWdpYyAubXotaGludC1tZXNzYWdlLFxuLmx0LWllOS1tYWdpYyAubXotbG9hZGluZy5zaG93biB7XG4gIGJhY2tncm91bmQ6IHRyYW5zcGFyZW50ICFpbXBvcnRhbnQ7XG4gIGZpbHRlcjogcHJvZ2lkOkRYSW1hZ2VUcmFuc2Zvcm0uTWljcm9zb2Z0LmdyYWRpZW50KEdyYWRpZW50VHlwZT0wLFN0YXJ0Q29sb3JTdHI9JyM3YzMxMzMzRCcsIEVuZENvbG9yU3RyPScjN2MzMTMzM0QnKTtcbn1cblxuLmx0LWllOS1tYWdpYyAubXotaGludC1oaWRkZW4ge1xuICBmaWx0ZXI6IGFscGhhKG9wYWNpdHk9MCk7XG59XG5cbi8qKlxuICogRXhwYW5kZWQgdmlld1xuICovXG4ubXotZXhwYW5kLFxuLm16LWV4cGFuZCAubXotZXhwYW5kLWJnLFxuLm16LWV4cGFuZCAubXotZXhwYW5kLWJnID4gaW1nLFxuLm16LWV4cGFuZCAubXotZXhwYW5kLWJnID4gc3ZnLFxuLm16LWV4cGFuZCAubXotZXhwYW5kLXN0YWdlLFxuLm16LWV4cGFuZCAubXotZXhwYW5kLXN0YWdlIC5tei1pbWFnZS1zdGFnZSB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgdG9wOiAwO1xuICBib3R0b206IDA7XG4gIGxlZnQ6IDA7XG4gIHJpZ2h0OiAwO1xufVxuXG4ubXotZXhwYW5kIC5tei1leHBhbmQtYmcsXG4ubXotZXhwYW5kIC5tei1leHBhbmQtYmcgPiBpbWcsXG4ubXotZXhwYW5kIC5tei1leHBhbmQtYmcgPiBzdmcge1xuICB3aWR0aDogYXV0byAhaW1wb3J0YW50O1xuICBoZWlnaHQ6IGF1dG8gIWltcG9ydGFudDtcbn1cblxuLm16LWV4cGFuZCAubXotZXhwYW5kLWJnLFxuLm16LWV4cGFuZCAubXotZXhwYW5kLWJnID4gc3ZnIHtcbiAgbWluLXdpZHRoOiAxMDAlICFpbXBvcnRhbnQ7XG4gIG1pbi1oZWlnaHQ6IDEwMCUgIWltcG9ydGFudDtcbn1cblxuLm16LWV4cGFuZCB7XG4gIGJhY2tncm91bmQtY29sb3I6IGJsYWNrO1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gIHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBvdmVyZmxvdzogaGlkZGVuO1xuICB6LWluZGV4OiAyMTAwMDAwMDAwO1xuICBwb3NpdGlvbjogZml4ZWQ7XG4gIHdpZHRoOiBhdXRvO1xuICBoZWlnaHQ6IGF1dG87XG4gIC13ZWJraXQtcGVyc3BlY3RpdmU6IDYwMHB4O1xuICBwZXJzcGVjdGl2ZTogNjAwcHg7XG4gIC13ZWJraXQtdHJhbnNmb3JtLXN0eWxlOiBwcmVzZXJ2ZS0zZDtcbiAgdHJhbnNmb3JtLXN0eWxlOiBwcmVzZXJ2ZS0zZDtcbiAgLXdlYmtpdC1iYWNrZmFjZS12aXNpYmlsaXR5OiBoaWRkZW47XG4gIGJhY2tmYWNlLXZpc2liaWxpdHk6IGhpZGRlbjtcbiAgLW1zLW92ZXJmbG93LXN0eWxlOiBub25lO1xufVxuXG4vKiBFeHBhbmRlZCB2aWV3IGJhY2tncm91bmQgKi9cbi5tei1leHBhbmQgLm16LWV4cGFuZC1iZyB7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgdmVydGljYWwtYWxpZ246IG1pZGRsZTtcbiAgbWFyZ2luOiBhdXRvO1xuICB6LWluZGV4OiAtMTAwO1xuICBtYXgtd2lkdGg6IG5vbmUgIWltcG9ydGFudDtcbiAgbWF4LWhlaWdodDogbm9uZSAhaW1wb3J0YW50O1xuICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwgMCwgMCkgc2NhbGUoMTApIHJvdGF0ZSgwLjAxZGVnKTtcbiAgLW1zLXRyYW5zZm9ybTogdHJhbnNsYXRlKDAsIDApIHNjYWxlKDEwLCAxMCkgcm90YXRlKDAuMDFkZWcpO1xuICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsIDAsIDApIHNjYWxlKDEwKSByb3RhdGUoMC4wMWRlZyk7XG4gIC13ZWJraXQtcGVyc3BlY3RpdmU6IDYwMHB4O1xuICBwZXJzcGVjdGl2ZTogNjAwcHg7XG4gIGJhY2tncm91bmQtcmVwZWF0OiBuby1yZXBlYXQ7XG4gIGJhY2tncm91bmQtc2l6ZTogY292ZXI7XG59XG5cbi5tei1leHBhbmQgLm16LWV4cGFuZC1iZyA+IGltZyB7XG4gIG1hcmdpbjogYXV0bztcbiAgZmlsdGVyOiB1cmwoXCJkYXRhOmltYWdlL3N2Zyt4bWw7dXRmOCw8c3ZnIHhtbG5zPSdodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2Zyc+PGZpbHRlciBpZD0nYmx1cic+PGZlR2F1c3NpYW5CbHVyIHN0ZERldmlhdGlvbj0nODAnIGluPSdTb3VyY2VHcmFwaGljJz48L2ZlR2F1c3NpYW5CbHVyPjwvZmlsdGVyPjwvc3ZnPiNibHVyXCIpO1xuICAtd2Via2l0LWZpbHRlcjogYmx1cigyMHB4KSBicmlnaHRuZXNzKDYwJSk7XG4gIGZpbHRlcjogYmx1cigyMHB4KSBicmlnaHRuZXNzKDYwJSk7XG4gIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLCAwLCAwKTtcbiAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLCAwLCAwKTtcbiAgLXdlYmtpdC1iYWNrZmFjZS12aXNpYmlsaXR5OiBoaWRkZW47XG4gIGJhY2tmYWNlLXZpc2liaWxpdHk6IGhpZGRlbjtcbn1cblxuLm16LWV4cGFuZCAubXotZXhwYW5kLWJnID4gc3ZnIHtcbiAgbWFyZ2luOiBhdXRvO1xuICBvcGFjaXR5OiAuNjtcbn1cblxuW2RhdGEtbWFnaWMtdWE9ZWRnZV0gLm16LWV4cGFuZCAubXotZXhwYW5kLWJnLFxuLmx0LWllMTAtbWFnaWMgLm16LWV4cGFuZCAubXotZXhwYW5kLWJnIHtcbiAgZGlzcGxheTogbm9uZSAhaW1wb3J0YW50O1xufVxuXG4ubHQtaWU5LW1hZ2ljIC5tei1leHBhbmQge1xuICBiYWNrZ3JvdW5kOiAjMWYxZjFmO1xufVxuXG5bZGF0YS1tYWdpYy11YT1lZGdlXSAubXotZXhwYW5kIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogcmdiYSgzMSwgMzEsIDMxLCAwLjk2KTtcbn1cblxuLyoqIFBsYWluIGJhY2tncm91bmRzOiBkYXJrLWJnLCB3aGl0ZS1iZyAqKi9cbi5tei1leHBhbmQucGxhaW4tYmcgLm16LWV4cGFuZC1iZyxcbi5tei1leHBhbmQuZGFyay1iZyAubXotZXhwYW5kLWJnLFxuLm16LWV4cGFuZC53aGl0ZS1iZyAubXotZXhwYW5kLWJnIHtcbiAgZGlzcGxheTogbm9uZSAhaW1wb3J0YW50O1xufVxuXG4ubXotZXhwYW5kLmRhcmstYmcge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjMWYxZjFmO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiByZ2JhKDMxLCAzMSwgMzEsIDAuOTYpO1xufVxuXG4ubXotZXhwYW5kLndoaXRlLWJnIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2ZmZjtcbn1cblxuLyogRXhwYW5kZWQgdmlldyBzdGFnZSAqL1xuLm16LWV4cGFuZCAubXotZXhwYW5kLXN0YWdlIHtcbiAgei1pbmRleDogMjEwMDAwMDAwMDtcbiAgcGFkZGluZzogMDtcbn1cblxuLm16LWV4cGFuZCAubXotZXhwYW5kLXN0YWdlIC5tei1pbWFnZS1zdGFnZSB7XG4gIHotaW5kZXg6IDUwO1xuICBsZWZ0OiAxMjBweDtcbiAgcmlnaHQ6IDEyMHB4O1xuICBwYWRkaW5nOiAyMHB4IDAgNDBweCAwO1xuICBtYXJnaW46IDA7XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgdmVydGljYWwtYWxpZ246IG1pZGRsZTtcbiAgLXdlYmtpdC1wZXJzcGVjdGl2ZTogNjAwcHg7XG4gIHBlcnNwZWN0aXZlOiA2MDBweDtcbiAgLXdlYmtpdC1iYWNrZmFjZS12aXNpYmlsaXR5OiBoaWRkZW47XG4gIGJhY2tmYWNlLXZpc2liaWxpdHk6IGhpZGRlbjtcbn1cblxuLm16LWV4cGFuZCAubXotZXhwYW5kLXN0YWdlLndpdGgtdGh1bWJzIC5tei1pbWFnZS1zdGFnZSB7XG4gIHBhZGRpbmctYm90dG9tOiAxMjBweDtcbn1cblxuLm16LWV4cGFuZCAubXotZXhwYW5kLXN0YWdlLm16LXpvb20taW4gLm16LWltYWdlLXN0YWdlIHtcbiAgcGFkZGluZzogMCAhaW1wb3J0YW50O1xuICBsZWZ0OiAwO1xuICByaWdodDogMDtcbn1cblxuLm16LWV4cGFuZCAubXotaW1hZ2Utc3RhZ2UgPiBmaWd1cmU6YmVmb3JlLFxuLm16LWV4cGFuZCAubXotaW1hZ2Utc3RhZ2U6YmVmb3JlIHtcbiAgY29udGVudDogJyc7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgdmVydGljYWwtYWxpZ246IG1pZGRsZTtcbiAgaGVpZ2h0OiAxMDAlO1xuICBmb250LXNpemU6IDA7XG4gIGxpbmUtaGVpZ2h0OiAxMDAlO1xuICB3aWR0aDogMDtcbn1cblxuLm16LWV4cGFuZCAubXotaW1hZ2Utc3RhZ2UgPiBmaWd1cmUge1xuICB3aWR0aDogMTAwJTtcbiAgbWF4LXdpZHRoOiAxMDAlO1xuICBtYXgtaGVpZ2h0OiAxMDAlO1xuICBwYWRkaW5nOiAwO1xuICBtYXJnaW46IDA7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgdmVydGljYWwtYWxpZ246IG1pZGRsZTtcbiAgZm9udC1zaXplOiAwO1xuICBsaW5lLWhlaWdodDogMTAwJTtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xufVxuXG4ubXotZXhwYW5kIC5tei1maWd1cmUge1xuICBvdmVyZmxvdzogdmlzaWJsZTtcbiAgbWF4LXdpZHRoOiAxMDAlICFpbXBvcnRhbnQ7XG59XG5cbi5tei1leHBhbmQgLm16LWZpZ3VyZSA+IGltZyB7XG4gIG1heC13aWR0aDogMTAwJTtcbiAgd2lkdGg6IGF1dG87XG4gIGhlaWdodDogYXV0bztcbn1cblxuLm16LWV4cGFuZCAubXotem9vbS1pbiAubXotaW1hZ2Utc3RhZ2UgPiBmaWd1cmUsXG4ubXotZXhwYW5kIC5tei16b29tLWluIC5tei1pbWFnZS1zdGFnZSA+IGZpZ3VyZSAubXotZmlndXJlLm16LWFjdGl2YXRpbmcsXG4ubXotZXhwYW5kIC5tei16b29tLWluIC5tei1pbWFnZS1zdGFnZSA+IGZpZ3VyZSAubXotZmlndXJlLm16LWFjdGl2ZSB7XG4gIHdpZHRoOiAxMDAlO1xuICBoZWlnaHQ6IDEwMCU7XG59XG5cbi5tei1leHBhbmQgLm16LWZpZ3VyZSB7XG4gIGN1cnNvcjogcG9pbnRlcjtcbiAgY3Vyc29yOiAtd2Via2l0LXpvb20taW47XG4gIGN1cnNvcjogLW1vei16b29tLWluO1xuICBjdXJzb3I6IHpvb20taW47XG59XG5cbi5tei1leHBhbmQgLm16LWZpZ3VyZS5tei1hY3RpdmUge1xuICBjdXJzb3I6IGNyb3NzaGFpcjtcbiAgY3Vyc29yOiAtd2Via2l0LXpvb20tb3V0O1xuICBjdXJzb3I6IC1tb3otem9vbS1vdXQ7XG4gIGN1cnNvcjogem9vbS1vdXQ7XG59XG5cbi8qIFdoZW4gaW5uZXIgem9vbSBpcyBhbHdheXMgc2hvd24gKi9cbi5tei1leHBhbmQgLm16LWV4cGFuZC1zdGFnZS5tei16b29tLWluLm16LWFsd2F5cy16b29tIC5tei1pbWFnZS1zdGFnZSA+IGZpZ3VyZSA+IGZpZ3VyZSA+IGltZyB7XG4gIHotaW5kZXg6IDE7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZSAhaW1wb3J0YW50O1xuICB0b3A6IC01MDAwcHggIWltcG9ydGFudDtcbiAgYm90dG9tOiAtNTAwMHB4ICFpbXBvcnRhbnQ7XG4gIGxlZnQ6IC01MDAwcHggIWltcG9ydGFudDtcbiAgcmlnaHQ6IC01MDAwcHggIWltcG9ydGFudDtcbiAgbWFyZ2luOiBhdXRvICFpbXBvcnRhbnQ7XG59XG5cbi5sdC1pZTEwLW1hZ2ljIC5tei16b29tLXdpbmRvdy5tei1leHBhbmRlZCBpbWcge1xuICBmaWx0ZXI6IGFscGhhKG9wYWNpdHk9MTAwKTtcbn1cblxuLmx0LWllMTAtbWFnaWMgLm16LWV4cGFuZCAubXotZmlndXJlLm16LW1hZ25pZmllci16b29tIHtcbiAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgZmlsdGVyOiBhbHBoYShvcGFjaXR5PTEwMCk7XG59XG5cbi8qIENhcHRpb24gaW4gZXhwYW5kZWQgdmlldyAqL1xuLm16LWV4cGFuZCAubXotY2FwdGlvbiB7XG4gIGNvbG9yOiAjZmZmO1xuICB0ZXh0LXNoYWRvdzogMHB4IDBweCA0NnB4ICMwMDA7XG4gIHBhZGRpbmc6IDEwcHggNHB4O1xuICBmb250OiBub3JtYWwgMTBwdC8xZW0gJ0x1Y2lkYSBHcmFuZGUnLCAnTHVjaWRhIFNhbnMgVW5pY29kZScsIFZlcmRhbmEsICdIZWx2ZXRpY2EgTmV1ZScsIEFyaWFsLCBIZWx2ZXRpY2EsIHNhbnMtc2VyaWY7XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgd2lkdGg6IDEwMCU7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgbGVmdDogMDtcbiAgb3BhY2l0eTogMDtcbn1cblxuLm16LWV4cGFuZCAubXotY2FwdGlvbi5tei1zaG93IHtcbiAgLXdlYmtpdC10cmFuc2l0aW9uOiBvcGFjaXR5IDAuMTVzIGVhc2Utb3V0O1xuICB0cmFuc2l0aW9uOiBvcGFjaXR5IDAuMTVzIGVhc2Utb3V0O1xuICBvcGFjaXR5OiAxO1xufVxuXG4ubXotZXhwYW5kIC5tei1jYXB0aW9uIGEge1xuICBjb2xvcjogaW5oZXJpdDtcbiAgY3Vyc29yOiBwb2ludGVyO1xufVxuXG4ubXotZXhwYW5kLndoaXRlLWJnIC5tei1jYXB0aW9uIHtcbiAgY29sb3I6ICM1NTU7XG4gIHRleHQtc2hhZG93OiBub25lO1xufVxuXG4ubHQtaWU5LW1hZ2ljIC5tei1leHBhbmQgLm16LWNhcHRpb24ge1xuICB0b3A6IDEwMCU7XG59XG5cbi5tei1leHBhbmQgLm16LXpvb20td2luZG93IHtcbiAgYm94LXNoYWRvdzogbm9uZTtcbiAgYmFja2dyb3VuZDogdHJhbnNwYXJlbnQ7XG59XG5cbi5sdC1pZTktbWFnaWMgLm16LWV4cGFuZCAubXotem9vbS13aW5kb3cge1xuICBib3JkZXI6IDA7XG59XG5cbi8qIEV4cGFuZGVkIHZpZXcgb24gbW9iaWxlICovXG4ubW9iaWxlLW1hZ2ljIC5tei1leHBhbmQtc3RhZ2UgLm16LWV4cGFuZC10aHVtYm5haWxzLFxuLm1vYmlsZS1tYWdpYyAubXotZXhwYW5kLXN0YWdlIC5tei1pbWFnZS1zdGFnZSB7XG4gIGxlZnQ6IDBweDtcbiAgcmlnaHQ6IDBweDtcbn1cblxuLm1vYmlsZS1tYWdpYyAubXotZXhwYW5kIC5tei1leHBhbmQtc3RhZ2Uud2l0aC10aHVtYnMge1xuICBib3R0b206IDBweDtcbn1cblxuLm1vYmlsZS1tYWdpYyAubXotZXhwYW5kLXN0YWdlIC5tei1pbWFnZS1zdGFnZSB7XG4gIHBhZGRpbmc6IDA7XG59XG5cbi5tb2JpbGUtbWFnaWMgLm16LWV4cGFuZCAubXotZXhwYW5kLXN0YWdlLndpdGgtdGh1bWJzIC5tei1pbWFnZS1zdGFnZSB7XG4gIHBhZGRpbmc6IDVweCAwIDYwcHg7XG59XG5cbi5tb2JpbGUtbWFnaWMgLm16LWV4cGFuZCAubXotZXhwYW5kLXN0YWdlLm16LXpvb20taW4gLm16LWltYWdlLXN0YWdlIHtcbiAgcGFkZGluZy10b3A6IDA7XG59XG5cbi5tb2JpbGUtbWFnaWMgLm16LWV4cGFuZCAubXotZXhwYW5kLXRodW1ibmFpbHMge1xuICBwYWRkaW5nOiAwO1xuICBoZWlnaHQ6IDYwcHg7XG59XG5cbi8qKlxuICogQnV0dG9ucyAmIEFycm93c1xuICovXG4ubXotZXhwYW5kLWNvbnRyb2xzLFxuYnV0dG9uLm16LWJ1dHRvbiB7XG4gIG1hcmdpbjogMCAhaW1wb3J0YW50O1xuICBwYWRkaW5nOiAwICFpbXBvcnRhbnQ7XG4gIG91dGxpbmU6IDAgIWltcG9ydGFudDtcbn1cblxuYnV0dG9uLm16LWJ1dHRvbiB7XG4gIGNvbG9yOiAjYjRiNGI0ICFpbXBvcnRhbnQ7XG4gIGZvbnQ6IDkwMCAzNHB4LzEgJ21hZ2ljdG9vbGJveC10aGluJyAhaW1wb3J0YW50O1xuICBjdXJzb3I6IHBvaW50ZXI7XG4gIHotaW5kZXg6IDkwICFpbXBvcnRhbnQ7XG4gIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50ICFpbXBvcnRhbnQ7XG4gIGJvcmRlcjogMXB4IHNvbGlkIHJnYmEoMTgwLCAxODAsIDE4MCwgMCkgIWltcG9ydGFudDtcbiAgYm9yZGVyLXJhZGl1czogMTAwJSAhaW1wb3J0YW50O1xuICBib3gtc2hhZG93OiBub25lICFpbXBvcnRhbnQ7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZSAhaW1wb3J0YW50O1xuICB0ZXh0LXRyYW5zZm9ybTogbm9uZSAhaW1wb3J0YW50O1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gIHNwZWFrOiBub25lO1xuICAtd2Via2l0LWZvbnQtc21vb3RoaW5nOiBhbnRpYWxpYXNlZDtcbiAgd2lkdGg6IDYwcHggIWltcG9ydGFudDtcbiAgaGVpZ2h0OiA2MHB4ICFpbXBvcnRhbnQ7XG4gIG1pbi13aWR0aDogMCAhaW1wb3J0YW50O1xuICBtaW4taGVpZ2h0OiAwICFpbXBvcnRhbnQ7XG4gIG1heC13aWR0aDogbm9uZSAhaW1wb3J0YW50O1xuICBtYXgtaGVpZ2h0OiBub25lICFpbXBvcnRhbnQ7XG59XG5cbmJ1dHRvbi5tei1idXR0b246YmVmb3JlIHtcbiAgZGlzcGxheTogaW5saW5lO1xuICBwb3NpdGlvbjogc3RhdGljO1xuICBjb2xvcjogaW5oZXJpdCAhaW1wb3J0YW50O1xuICBmb250OiBpbmhlcml0ICFpbXBvcnRhbnQ7XG4gIC13ZWJraXQtZm9udC1zbW9vdGhpbmc6IGluaGVyaXQgIWltcG9ydGFudDtcbn1cblxuYnV0dG9uLm16LWJ1dHRvbi5tei1idXR0b24tcHJldixcbmJ1dHRvbi5tei1idXR0b24ubXotYnV0dG9uLW5leHQge1xuICBtYXJnaW46IGF1dG8gMTBweCAhaW1wb3J0YW50O1xuICB0b3A6IDAgIWltcG9ydGFudDtcbiAgYm90dG9tOiAwICFpbXBvcnRhbnQ7XG4gIG92ZXJmbG93OiBoaWRkZW4gIWltcG9ydGFudDtcbn1cblxuYnV0dG9uLm16LWJ1dHRvbi5tei1idXR0b24tcHJldiB7XG4gIGxlZnQ6IDAgIWltcG9ydGFudDtcbn1cblxuYnV0dG9uLm16LWJ1dHRvbi5tei1idXR0b24tbmV4dCB7XG4gIHJpZ2h0OiAwICFpbXBvcnRhbnQ7XG59XG5cbmJ1dHRvbi5tei1idXR0b24ubXotYnV0dG9uLWNsb3NlIHtcbiAgZm9udC1zaXplOiAyNnB4ICFpbXBvcnRhbnQ7XG4gIG1hcmdpbjogMTBweCAhaW1wb3J0YW50O1xuICB0b3A6IDAgIWltcG9ydGFudDtcbiAgcmlnaHQ6IDAgIWltcG9ydGFudDtcbiAgei1pbmRleDogOTUgIWltcG9ydGFudDtcbn1cblxuOnJvb3Q6bm90KC5tb2JpbGUtbWFnaWMpIGJ1dHRvbi5tei1idXR0b24ge1xuICBjb2xvcjogcmdiYSgxODAsIDE4MCwgMTgwLCAwLjc1KSAhaW1wb3J0YW50O1xuICAtd2Via2l0LXRyYW5zZm9ybTogc2NhbGUoMC44NSkgIWltcG9ydGFudDtcbiAgdHJhbnNmb3JtOiBzY2FsZSgwLjg1KSAhaW1wb3J0YW50O1xuICAtd2Via2l0LXRyYW5zaXRpb246IGNvbG9yIC4yNXMsIGJvcmRlci1jb2xvciAuMjVzLCAtd2Via2l0LXRyYW5zZm9ybSAuMjVzICFpbXBvcnRhbnQ7XG4gIHRyYW5zaXRpb246IGNvbG9yIC4yNXMsIGJvcmRlci1jb2xvciAuMjVzLCB0cmFuc2Zvcm0gLjI1cyAhaW1wb3J0YW50O1xufVxuXG46cm9vdDpub3QoLm1vYmlsZS1tYWdpYykgYnV0dG9uLm16LWJ1dHRvbjpob3ZlciB7XG4gIGNvbG9yOiAjYjRiNGI0ICFpbXBvcnRhbnQ7XG4gIGJvcmRlci1jb2xvcjogcmdiYSgxODAsIDE4MCwgMTgwLCAwLjYpICFpbXBvcnRhbnQ7XG4gIC13ZWJraXQtdHJhbnNmb3JtOiBzY2FsZSgxKSAhaW1wb3J0YW50O1xuICB0cmFuc2Zvcm06IHNjYWxlKDEpICFpbXBvcnRhbnQ7XG59XG5cbi5tb2JpbGUtbWFnaWMgYnV0dG9uLm16LWJ1dHRvbiB7XG4gIC13ZWJraXQtdHJhbnNpdGlvbjogLXdlYmtpdC10cmFuc2Zvcm0gLjFzICFpbXBvcnRhbnQ7XG4gIHRyYW5zaXRpb246IHRyYW5zZm9ybSAuMXMgIWltcG9ydGFudDtcbn1cblxuLm1vYmlsZS1tYWdpYyBidXR0b24ubXotYnV0dG9uOmFjdGl2ZSB7XG4gIGJvcmRlci1jb2xvcjogcmdiYSgxODAsIDE4MCwgMTgwLCAwLjYpICFpbXBvcnRhbnQ7XG4gIC13ZWJraXQtdHJhbnNmb3JtOiBzY2FsZSgwLjk1KSAhaW1wb3J0YW50O1xuICB0cmFuc2Zvcm06IHNjYWxlKDAuOTUpICFpbXBvcnRhbnQ7XG59XG5cbi8qYnV0dG9uLm16LWJ1dHRvbi5tei1idXR0b24tY2xvc2U6YmVmb3JlIHsgY29udGVudDogXCJcXGEwMDFcIjsgfVxuYnV0dG9uLm16LWJ1dHRvbi5tei1idXR0b24tcHJldjpiZWZvcmUgeyBjb250ZW50OiBcIlxcYTAwMlwiOyAgfVxuYnV0dG9uLm16LWJ1dHRvbi5tei1idXR0b24tbmV4dDpiZWZvcmUgeyBjb250ZW50OiBcIlxcYTAwM1wiOyB9Ki9cbmJ1dHRvbi5tei1idXR0b24ubXotYnV0dG9uLWNsb3NlOmJlZm9yZSB7XG4gIGZvbnQtZmFtaWx5OiBGb250QXdlc29tZSAhaW1wb3J0YW50O1xuICBjb250ZW50OiBcIlxcZjAwZFwiICFpbXBvcnRhbnQ7XG59XG5cbmJ1dHRvbi5tei1idXR0b24ubXotYnV0dG9uLXByZXY6YmVmb3JlIHtcbiAgZm9udC1mYW1pbHk6IEZvbnRBd2Vzb21lICFpbXBvcnRhbnQ7XG4gIGNvbnRlbnQ6IFwiXFxmMTA0XCIgIWltcG9ydGFudDtcbn1cblxuYnV0dG9uLm16LWJ1dHRvbi5tei1idXR0b24tbmV4dDpiZWZvcmUge1xuICBmb250LWZhbWlseTogRm9udEF3ZXNvbWUgIWltcG9ydGFudDtcbiAgY29udGVudDogXCJcXGYxMDVcIiAhaW1wb3J0YW50O1xufVxuXG5AbWVkaWEgc2NyZWVuIGFuZCAobWF4LWRldmljZS13aWR0aDogNzY3cHgpIHtcbiAgYnV0dG9uLm16LWJ1dHRvbi1wcmV2LFxuICBidXR0b24ubXotYnV0dG9uLW5leHQge1xuICAgIGRpc3BsYXk6IG5vbmUgIWltcG9ydGFudDtcbiAgfVxuICAubW9iaWxlLW1hZ2ljIC5tei1leHBhbmQgYnV0dG9uLm16LWJ1dHRvbiB7XG4gICAgd2lkdGg6IDQ0cHggIWltcG9ydGFudDtcbiAgICBoZWlnaHQ6IDQ0cHggIWltcG9ydGFudDtcbiAgICBmb250LXNpemU6IDE4cHggIWltcG9ydGFudDtcbiAgICBjb2xvcjogcmdiYSgyNTUsIDI1NSwgMjU1LCAwLjgpICFpbXBvcnRhbnQ7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogcmdiYSg0OSwgNTEsIDYxLCAwLjMpICFpbXBvcnRhbnQ7XG4gICAgYm9yZGVyLWNvbG9yOiB0cmFuc3BhcmVudCAhaW1wb3J0YW50O1xuICB9XG59XG5cbi5sdC1pZTktbWFnaWMgYnV0dG9uLm16LWJ1dHRvbiB7XG4gIGJvcmRlcjogMDtcbiAgZmlsdGVyOiBhbHBoYShvcGFjaXR5PTc1KTtcbn1cblxuLmx0LWllOS1tYWdpYyBidXR0b24ubXotYnV0dG9uOmhvdmVyIHtcbiAgZmlsdGVyOiBhbHBoYShvcGFjaXR5PTEwMCk7XG59XG5cbi8qKlxuICogVGh1bWJuYWlsc1xuICovXG4vKiBUaHVtYm5haWxzIG9uIHRoZSBwYWdlICovXG5hW2RhdGEtem9vbS1pZF0sXG4ubXotdGh1bWIsIC5tei10aHVtYjpmb2N1cyB7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgbGluZS1oZWlnaHQ6IDA7XG4gIG91dGxpbmU6IG5vbmU7XG59XG5cbmFbZGF0YS16b29tLWlkXSBpbWcsXG4ubXotdGh1bWIgaW1nIHtcbiAgYm9yZGVyOiAwO1xuICBib3gtc2hhZG93OiAwIDAgMXB4IDBweCByZ2JhKDAsIDAsIDAsIDAuMyk7XG4gIGJveC1zaXppbmc6IGJvcmRlci1ib3g7XG59XG5cbi5tei10aHVtYjpob3Zlcjpub3QoLm16LXRodW1iLXNlbGVjdGVkKSBpbWcge1xuICAtd2Via2l0LWZpbHRlcjogYnJpZ2h0bmVzcyg3NSUpO1xuICBmaWx0ZXI6IGJyaWdodG5lc3MoNzUlKTtcbn1cblxuLm16LXRodW1iLXNlbGVjdGVkIGltZyB7XG4gIC13ZWJraXQtZmlsdGVyOiBicmlnaHRuZXNzKDYwJSk7XG4gIGZpbHRlcjogYnJpZ2h0bmVzcyg2MCUpO1xufVxuXG4ubm8tY3NzZmlsdGVycy1tYWdpYyAubXotdGh1bWI6aG92ZXIsXG4ubm8tY3NzZmlsdGVycy1tYWdpYyAubXotdGh1bWIubXotdGh1bWItc2VsZWN0ZWQge1xuICBiYWNrZ3JvdW5kOiAjMDAwO1xufVxuXG4ubm8tY3NzZmlsdGVycy1tYWdpYyAubXotdGh1bWI6aG92ZXI6bm90KC5tei10aHVtYi1zZWxlY3RlZCkgaW1nIHtcbiAgb3BhY2l0eTogLjc1O1xuICBmaWx0ZXI6IGFscGhhKG9wYWNpdHk9NzUpO1xufVxuXG4ubm8tY3NzZmlsdGVycy1tYWdpYyAubXotdGh1bWItc2VsZWN0ZWQgaW1nIHtcbiAgb3BhY2l0eTogLjY7XG4gIGZpbHRlcjogYWxwaGEob3BhY2l0eT02MCk7XG59XG5cbi5pZTktbWFnaWMgLm16LXRodW1iIGltZyB7XG4gIGJveC1zaGFkb3c6IDAgMCA0cHggMHB4IHJnYmEoMCwgMCwgMCwgMC4zKTtcbn1cblxuLyogVGh1bWJuYWlscyBpbiBleHBhbmRlZCB2aWV3ICovXG4ubXotZXhwYW5kLXRodW1ibmFpbHMge1xuICB6LWluZGV4OiA1MDtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICBib3R0b206IDA7XG4gIGxlZnQ6IDY1cHg7XG4gIHJpZ2h0OiA2NXB4O1xuICBoZWlnaHQ6IDgwcHg7XG4gIHBhZGRpbmc6IDEwcHggMDtcbiAgYm94LXNpemluZzogYm9yZGVyLWJveDtcbn1cblxuLm16LWV4cGFuZC10aHVtYm5haWxzIC5tYWdpYy10aHVtYnMgLm1hZ2ljLXRodW1iIHtcbiAgcGFkZGluZzogMTBweCAycHg7XG59XG5cbi5tei1leHBhbmQtdGh1bWJuYWlscyAubWFnaWMtdGh1bWIgPiBpbWcge1xuICBjdXJzb3I6IHBvaW50ZXI7XG4gIGhlaWdodDogNDBweDtcbiAgYm94LXNoYWRvdzogMCAwIDVweCAxcHggcmdiYSgwLCAwLCAwLCAwLjMpO1xufVxuXG4ubXotZXhwYW5kLXRodW1ibmFpbHMgLm1hZ2ljLXRodW1iOm5vdCgubWFnaWMtdGh1bWItc2VsZWN0ZWQpID4gaW1nOmhvdmVyIHtcbiAgLXdlYmtpdC1maWx0ZXI6IGJyaWdodG5lc3MoNzAlKTtcbiAgZmlsdGVyOiBicmlnaHRuZXNzKDcwJSk7XG59XG5cbi5tei1leHBhbmQtdGh1bWJuYWlscyAubWFnaWMtdGh1bWItc2VsZWN0ZWQgaW1nIHtcbiAgLXdlYmtpdC1maWx0ZXI6IGJyaWdodG5lc3MoNTAlKTtcbiAgZmlsdGVyOiBicmlnaHRuZXNzKDUwJSk7XG59XG5cbi5tei1leHBhbmQtdGh1bWJuYWlscyAubWFnaWMtdGh1bWJzIC5tYWdpYy10aHVtYnMtYnV0dG9uIHtcbiAgYm94LXNoYWRvdzogbm9uZTtcbn1cblxuLm16LWV4cGFuZC10aHVtYm5haWxzIC5tYWdpYy10aHVtYnMgLm1hZ2ljLXRodW1icy1idXR0b24tZGlzYWJsZWQge1xuICBvcGFjaXR5OiAwO1xufVxuXG4ubm8tY3NzZmlsdGVycy1tYWdpYyAubXotZXhwYW5kLXRodW1ibmFpbHMgLm1hZ2ljLXRodW1iOmhvdmVyOm5vdCgubWFnaWMtdGh1bWItc2VsZWN0ZWQpIGltZyB7XG4gIG9wYWNpdHk6IC43O1xuICBmaWx0ZXI6IGFscGhhKG9wYWNpdHk9NzApO1xufVxuXG4ubm8tY3NzZmlsdGVycy1tYWdpYyAubXotZXhwYW5kLXRodW1ibmFpbHMgLm1hZ2ljLXRodW1iLXNlbGVjdGVkIGltZyB7XG4gIG9wYWNpdHk6IC41O1xuICBmaWx0ZXI6IGFscGhhKG9wYWNpdHk9NTApO1xufVxuXG4vKiogSGlkZSB0aHVtYm5haWxzIGluIGV4cGFuZGVkIHZpZXcgd2l0aCAubm8tZXhwYW5kLXRodW1ibmFpbHMgY2xhc3MgKiovXG4ubXotZXhwYW5kLm5vLWV4cGFuZC10aHVtYm5haWxzIC5tei1leHBhbmQtc3RhZ2Uud2l0aC10aHVtYnMgLm16LWltYWdlLXN0YWdlIHtcbiAgcGFkZGluZy1ib3R0b206IDQwcHg7XG59XG5cbi5tei1leHBhbmQubm8tZXhwYW5kLXRodW1ibmFpbHMgLm16LWV4cGFuZC10aHVtYm5haWxzIHtcbiAgZGlzcGxheTogbm9uZTtcbn1cblxuLm1vYmlsZS1tYWdpYyAubXotZXhwYW5kLm5vLWV4cGFuZC10aHVtYm5haWxzIC5tei1leHBhbmQtc3RhZ2Uud2l0aC10aHVtYnMgLm16LWltYWdlLXN0YWdlIHtcbiAgcGFkZGluZzogMDtcbn1cblxuLm1hZ2ljLXRodW1icyxcbi5tYWdpYy10aHVtYnMgLm1hZ2ljLXRodW1icy13cmFwcGVyLFxuLm1hZ2ljLXRodW1icyB1bCxcbi5tYWdpYy10aHVtYnMgbGksXG4ubWFnaWMtdGh1bWJzIGxpOmJlZm9yZSxcbi5tYWdpYy10aHVtYnMgbGk6YWZ0ZXIsXG4ubWFnaWMtdGh1bWJzIGxpIGltZyxcbi5tYWdpYy10aHVtYnMgLm1hZ2ljLXRodW1icy1idXR0b24ge1xuICBtYXJnaW46IDA7XG4gIHBhZGRpbmc6IDA7XG4gIG91dGxpbmU6IDA7XG4gIC13ZWJraXQtYm94LXNpemluZzogYm9yZGVyLWJveDtcbiAgYm94LXNpemluZzogYm9yZGVyLWJveDtcbn1cblxuLm1hZ2ljLXRodW1icyB7XG4gIGRpcmVjdGlvbjogbHRyO1xuICBvdmVyZmxvdzogdmlzaWJsZTtcbiAgei1pbmRleDogMTAwO1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIGxlZnQ6IDA7XG4gIHRvcDogMDtcbiAgcGFkZGluZzogMCAzMHB4O1xuICAtd2Via2l0LXVzZXItc2VsZWN0OiBub25lO1xuICAtbW96LXVzZXItc2VsZWN0OiBub25lO1xuICAtbXMtdXNlci1zZWxlY3Q6IG5vbmU7XG4gIHVzZXItc2VsZWN0OiBub25lO1xuICAtd2Via2l0LXRvdWNoLWNhbGxvdXQ6IG5vbmU7XG4gIC13ZWJraXQtdGFwLWhpZ2hsaWdodC1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gIC1tcy10b3VjaC1hY3Rpb246IG5vbmU7XG4gIHRvdWNoLWFjdGlvbjogbm9uZTtcbn1cblxuLm1hZ2ljLXRodW1icyB7XG4gIHdpZHRoOiAxMDAlO1xuICBoZWlnaHQ6IDEwMCU7XG4gIHdoaXRlLXNwYWNlOiBub3dyYXA7XG59XG5cbi5tYWdpYy10aHVtYnMubm8tYnV0dG9ucyB7XG4gIHBhZGRpbmc6IDAgIWltcG9ydGFudDtcbn1cblxuLm1hZ2ljLXRodW1icy13cmFwcGVyIHtcbiAgZGlzcGxheTogYmxvY2s7XG4gIHdpZHRoOiAxMDAlO1xuICBoZWlnaHQ6IDEwMCU7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xufVxuXG4ubWFnaWMtdGh1bWJzIHVsIHtcbiAgbGlzdC1zdHlsZTogbm9uZTtcbiAgZm9udC1zaXplOiAwO1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7XG4gIGhlaWdodDogMTAwJTtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICB3aGl0ZS1zcGFjZTogbm93cmFwO1xufVxuXG4ubWFnaWMtdGh1bWJzLm5vLWJ1dHRvbnMgdWwge1xuICBsZWZ0OiAwICFpbXBvcnRhbnQ7XG4gIHBhZGRpbmc6IDAgIWltcG9ydGFudDtcbiAgLXdlYmtpdC10cmFuc2l0aW9uOiBub25lICFpbXBvcnRhbnQ7XG4gIHRyYW5zaXRpb246IG5vbmUgIWltcG9ydGFudDtcbiAgLXdlYmtpdC10cmFuc2Zvcm06IG5vbmUgIWltcG9ydGFudDtcbiAgLW1zLXRyYW5zZm9ybTogbm9uZSAhaW1wb3J0YW50O1xuICB0cmFuc2Zvcm06IG5vbmUgIWltcG9ydGFudDtcbn1cblxuLm1hZ2ljLXRodW1icyB1bCBsaSB7XG4gIG1hcmdpbjogMCA0cHg7XG4gIGhlaWdodDogMTAwJTtcbiAgd2lkdGg6IGF1dG87XG4gIHZlcnRpY2FsLWFsaWduOiB0b3A7XG4gIGxpbmUtaGVpZ2h0OiAwO1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG59XG5cbi5tYWdpYy10aHVtYnMgdWwgbGk6YWZ0ZXIge1xuICBjb250ZW50OiAnJztcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlO1xuICBoZWlnaHQ6IDEwMCU7XG4gIHdpZHRoOiAwO1xufVxuXG4ubWFnaWMtdGh1bWJzIHVsIGxpID4gaW1nIHtcbiAgd2lkdGg6IGF1dG87XG4gIGhlaWdodDogYXV0bztcbiAgbWF4LXdpZHRoOiBub25lICFpbXBvcnRhbnQ7XG4gIG1heC1oZWlnaHQ6IDEwMCUgIWltcG9ydGFudDtcbiAgdmVydGljYWwtYWxpZ246IG1pZGRsZTtcbn1cblxuLmllOC1tYWdpYyAubWFnaWMtdGh1bWJzIHVsIGxpID4gaW1nIHtcbiAgbWF4LXdpZHRoOiBub25lICFpbXBvcnRhbnQ7XG4gIG1heC1oZWlnaHQ6IG5vbmUgIWltcG9ydGFudDtcbn1cblxuLyogdmVydGljYWwgKi9cbi5tYWdpYy10aHVtYnMubWFnaWMtdGh1bWJzLXZlcnRpY2FsIHtcbiAgaGVpZ2h0OiAxMDAlO1xufVxuXG4ubWFnaWMtdGh1bWJzLXZlcnRpY2FsIHtcbiAgcGFkZGluZzogMzBweCAwO1xufVxuXG4ubWFnaWMtdGh1bWJzLXZlcnRpY2FsIHVsIHtcbiAgaGVpZ2h0OiBhdXRvO1xuICB3aWR0aDogMTAwJTtcbiAgd2hpdGUtc3BhY2U6IG5vcm1hbDtcbn1cblxuLm1hZ2ljLXRodW1icy12ZXJ0aWNhbCB1bCBsaSB7XG4gIHdpZHRoOiAxMDAlO1xuICBoZWlnaHQ6IGF1dG87XG59XG5cbi5tYWdpYy10aHVtYnMtdmVydGljYWwgdWwgbGkge1xuICBtYXJnaW46IDRweCAwO1xufVxuXG4ubWFnaWMtdGh1bWJzLXZlcnRpY2FsIHVsIGxpID4gaW1nIHtcbiAgbWF4LXdpZHRoOiAxMDAlICFpbXBvcnRhbnQ7XG4gIG1heC1oZWlnaHQ6IG5vbmUgIWltcG9ydGFudDtcbn1cblxuLmllOC1tYWdpYyAubWFnaWMtdGh1bWJzLXZlcnRpY2FsIHVsIGxpID4gaW1nIHtcbiAgd2lkdGg6IDEwMCU7XG59XG5cbi8qKlxuICogQnV0dG9uc1xuICovXG4ubWFnaWMtdGh1bWJzIGJ1dHRvbi5tYWdpYy10aHVtYnMtYnV0dG9uIHtcbiAgY29sb3I6ICNiNGI0YjQgIWltcG9ydGFudDtcbiAgZm9udDogOTAwIDI0cHgvMSAnbWFnaWN0b29sYm94LXRoaW4nICFpbXBvcnRhbnQ7XG4gIGN1cnNvcjogcG9pbnRlcjtcbiAgei1pbmRleDogOTAgIWltcG9ydGFudDtcbiAgYmFja2dyb3VuZC1yZXBlYXQ6IG5vLXJlcGVhdDtcbiAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQgIWltcG9ydGFudDtcbiAgYmFja2dyb3VuZC1pbWFnZTogbm9uZTtcbiAgYm9yZGVyOiAwO1xuICBib3JkZXItcmFkaXVzOiAwO1xuICBib3gtc2hhZG93OiBub25lICFpbXBvcnRhbnQ7XG4gIG92ZXJmbG93OiBoaWRkZW47XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgdGV4dC10cmFuc2Zvcm06IG5vbmUgIWltcG9ydGFudDtcbiAgc3BlYWs6IG5vbmU7XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgLXdlYmtpdC1mb250LXNtb290aGluZzogYW50aWFsaWFzZWQ7XG4gIHdpZHRoOiAzMHB4O1xuICBoZWlnaHQ6IDEwMCU7XG4gIHRvcDogMDtcbiAgYm90dG9tOiAwO1xuICBtaW4td2lkdGg6IDAgIWltcG9ydGFudDtcbiAgbWluLWhlaWdodDogMCAhaW1wb3J0YW50O1xuICBtYXgtd2lkdGg6IG5vbmUgIWltcG9ydGFudDtcbiAgbWF4LWhlaWdodDogbm9uZSAhaW1wb3J0YW50O1xufVxuXG4ubWFnaWMtdGh1bWJzIGJ1dHRvbi5tYWdpYy10aHVtYnMtYnV0dG9uOmJlZm9yZSB7XG4gIGRpc3BsYXk6IGlubGluZTtcbiAgcG9zaXRpb246IHN0YXRpYztcbiAgY29sb3I6IGluaGVyaXQgIWltcG9ydGFudDtcbiAgZm9udDogaW5oZXJpdCAhaW1wb3J0YW50O1xuICAtd2Via2l0LWZvbnQtc21vb3RoaW5nOiBpbmhlcml0ICFpbXBvcnRhbnQ7XG59XG5cbi5tYWdpYy10aHVtYnMgLm1hZ2ljLXRodW1icy1idXR0b24tcHJldiB7XG4gIGxlZnQ6IDA7XG59XG5cbi5tYWdpYy10aHVtYnMgLm1hZ2ljLXRodW1icy1idXR0b24tbmV4dCB7XG4gIHJpZ2h0OiAwO1xufVxuXG4ubWFnaWMtdGh1bWJzIC5tYWdpYy10aHVtYnMtYnV0dG9uLXByZXY6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGEwMDJcIjtcbn1cblxuLm1hZ2ljLXRodW1icyAubWFnaWMtdGh1bWJzLWJ1dHRvbi1uZXh0OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxhMDAzXCI7XG59XG5cbjpyb290Om5vdCgubW9iaWxlLW1hZ2ljKSAubWFnaWMtdGh1bWJzIGJ1dHRvbi5tYWdpYy10aHVtYnMtYnV0dG9uIHtcbiAgY29sb3I6IHJnYmEoMTgwLCAxODAsIDE4MCwgMC43NSkgIWltcG9ydGFudDtcbiAgLXdlYmtpdC10cmFuc2Zvcm06IHNjYWxlKDAuODUpICFpbXBvcnRhbnQ7XG4gIHRyYW5zZm9ybTogc2NhbGUoMC44NSkgIWltcG9ydGFudDtcbiAgLXdlYmtpdC10cmFuc2l0aW9uOiBjb2xvciAuMjVzLCAtd2Via2l0LXRyYW5zZm9ybSAuMjVzICFpbXBvcnRhbnQ7XG4gIHRyYW5zaXRpb246IGNvbG9yIC4yNXMsIHRyYW5zZm9ybSAuMjVzICFpbXBvcnRhbnQ7XG59XG5cbjpyb290Om5vdCgubW9iaWxlLW1hZ2ljKSAubWFnaWMtdGh1bWJzIGJ1dHRvbi5tYWdpYy10aHVtYnMtYnV0dG9uOmhvdmVyIHtcbiAgY29sb3I6ICNiNGI0YjQgIWltcG9ydGFudDtcbiAgLXdlYmtpdC10cmFuc2Zvcm06IHNjYWxlKDEpICFpbXBvcnRhbnQ7XG4gIHRyYW5zZm9ybTogc2NhbGUoMSkgIWltcG9ydGFudDtcbn1cblxuLyogVmVydGljYWwgYnV0dG9ucyAqL1xuLm1hZ2ljLXRodW1icy12ZXJ0aWNhbCAubWFnaWMtdGh1bWJzLWJ1dHRvbiB7XG4gIHdpZHRoOiAxMDAlO1xuICBoZWlnaHQ6IDMwcHg7XG4gIGxlZnQ6IDA7XG4gIHJpZ2h0OiAwO1xuICB0b3A6IGF1dG87XG4gIGJvdHRvbTogYXV0bztcbn1cblxuLm1hZ2ljLXRodW1icy12ZXJ0aWNhbCAubWFnaWMtdGh1bWJzLWJ1dHRvbi1wcmV2IHtcbiAgdG9wOiAwO1xufVxuXG4ubWFnaWMtdGh1bWJzLXZlcnRpY2FsIC5tYWdpYy10aHVtYnMtYnV0dG9uLW5leHQge1xuICBib3R0b206IDA7XG59XG5cbi5tYWdpYy10aHVtYnMtdmVydGljYWwgLm1hZ2ljLXRodW1icy1idXR0b24tcHJldjpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcYTAwNVwiO1xufVxuXG4ubWFnaWMtdGh1bWJzLXZlcnRpY2FsIC5tYWdpYy10aHVtYnMtYnV0dG9uLW5leHQ6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGEwMDRcIjtcbn1cblxuLm1hZ2ljLXRodW1icy5uby1idXR0b25zIC5tYWdpYy10aHVtYnMtYnV0dG9uIHtcbiAgZGlzcGxheTogbm9uZSAhaW1wb3J0YW50O1xufVxuXG4ubWFnaWMtdGh1bWJzLWJ1dHRvbi1kaXNhYmxlZCB7XG4gIG9wYWNpdHk6IDAuMjtcbiAgZmlsdGVyOiBhbHBoYShvcGFjaXR5PTIwKTtcbn1cblxuW3YtY2xvYWtdIHtcbiAgZGlzcGxheTogbm9uZTtcbn1cblxuLyoqXG4gKiBGb3VuZGF0aW9uIGZvciBTaXRlcyBieSBaVVJCXG4gKiBWZXJzaW9uIDYuNC4xXG4gKiBmb3VuZGF0aW9uLnp1cmIuY29tXG4gKiBMaWNlbnNlZCB1bmRlciBNSVQgT3BlbiBTb3VyY2VcbiAqL1xuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQ4ZW0pIHtcbiAgLnJldmVhbCwgLnJldmVhbC50aW55LCAucmV2ZWFsLnNtYWxsLCAucmV2ZWFsLmxhcmdlIHtcbiAgICByaWdodDogYXV0bztcbiAgICBsZWZ0OiBhdXRvO1xuICAgIG1hcmdpbjogMCBhdXRvO1xuICB9XG59XG5cbi8qISBub3JtYWxpemUtc2NzcyB8IE1JVC9HUEx2MiBMaWNlbnNlIHwgYml0Lmx5L25vcm1hbGl6ZS1zY3NzICovXG4vKiBEb2N1bWVudFxuICAgICAgID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXG4vKipcbiAgICAgKiAxLiBDaGFuZ2UgdGhlIGRlZmF1bHQgZm9udCBmYW1pbHkgaW4gYWxsIGJyb3dzZXJzIChvcGluaW9uYXRlZCkuXG4gICAgICogMi4gQ29ycmVjdCB0aGUgbGluZSBoZWlnaHQgaW4gYWxsIGJyb3dzZXJzLlxuICAgICAqIDMuIFByZXZlbnQgYWRqdXN0bWVudHMgb2YgZm9udCBzaXplIGFmdGVyIG9yaWVudGF0aW9uIGNoYW5nZXMgaW5cbiAgICAgKiAgICBJRSBvbiBXaW5kb3dzIFBob25lIGFuZCBpbiBpT1MuXG4gICAgICovXG5odG1sIHtcbiAgZm9udC1mYW1pbHk6IHNhbnMtc2VyaWY7XG4gIC8qIDEgKi9cbiAgbGluZS1oZWlnaHQ6IDEuMTU7XG4gIC8qIDIgKi9cbiAgLW1zLXRleHQtc2l6ZS1hZGp1c3Q6IDEwMCU7XG4gIC8qIDMgKi9cbiAgLXdlYmtpdC10ZXh0LXNpemUtYWRqdXN0OiAxMDAlO1xuICAvKiAzICovXG59XG5cbi8qIFNlY3Rpb25zXG4gICAgICAgPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cbi8qKlxuICAgICAqIFJlbW92ZSB0aGUgbWFyZ2luIGluIGFsbCBicm93c2VycyAob3BpbmlvbmF0ZWQpLlxuICAgICAqL1xuYm9keSB7XG4gIG1hcmdpbjogMDtcbn1cblxuLyoqXG4gICAgICogQWRkIHRoZSBjb3JyZWN0IGRpc3BsYXkgaW4gSUUgOS0uXG4gICAgICovXG5hcnRpY2xlLFxuYXNpZGUsXG5mb290ZXIsXG5oZWFkZXIsXG5uYXYsXG5zZWN0aW9uIHtcbiAgZGlzcGxheTogYmxvY2s7XG59XG5cbi8qKlxuICAgICAqIENvcnJlY3QgdGhlIGZvbnQgc2l6ZSBhbmQgbWFyZ2luIG9uIGBoMWAgZWxlbWVudHMgd2l0aGluIGBzZWN0aW9uYCBhbmRcbiAgICAgKiBgYXJ0aWNsZWAgY29udGV4dHMgaW4gQ2hyb21lLCBGaXJlZm94LCBhbmQgU2FmYXJpLlxuICAgICAqL1xuaDEge1xuICBmb250LXNpemU6IDJlbTtcbiAgbWFyZ2luOiAwLjY3ZW0gMDtcbn1cblxuLyogR3JvdXBpbmcgY29udGVudFxuICAgICAgID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXG4vKipcbiAgICAgKiBBZGQgdGhlIGNvcnJlY3QgZGlzcGxheSBpbiBJRSA5LS5cbiAgICAgKi9cbmZpZ2NhcHRpb24sXG5maWd1cmUge1xuICBkaXNwbGF5OiBibG9jaztcbn1cblxuLyoqXG4gICAgICogQWRkIHRoZSBjb3JyZWN0IG1hcmdpbiBpbiBJRSA4LlxuICAgICAqL1xuZmlndXJlIHtcbiAgbWFyZ2luOiAxZW0gNDBweDtcbn1cblxuLyoqXG4gICAgICogMS4gQWRkIHRoZSBjb3JyZWN0IGJveCBzaXppbmcgaW4gRmlyZWZveC5cbiAgICAgKiAyLiBTaG93IHRoZSBvdmVyZmxvdyBpbiBFZGdlIGFuZCBJRS5cbiAgICAgKi9cbmhyIHtcbiAgYm94LXNpemluZzogY29udGVudC1ib3g7XG4gIC8qIDEgKi9cbiAgaGVpZ2h0OiAwO1xuICAvKiAxICovXG4gIG92ZXJmbG93OiB2aXNpYmxlO1xuICAvKiAyICovXG59XG5cbi8qKlxuICAgICAqIEFkZCB0aGUgY29ycmVjdCBkaXNwbGF5IGluIElFLlxuICAgICAqL1xubWFpbiB7XG4gIGRpc3BsYXk6IGJsb2NrO1xufVxuXG4vKipcbiAgICAgKiAxLiBDb3JyZWN0IHRoZSBpbmhlcml0YW5jZSBhbmQgc2NhbGluZyBvZiBmb250IHNpemUgaW4gYWxsIGJyb3dzZXJzLlxuICAgICAqIDIuIENvcnJlY3QgdGhlIG9kZCBgZW1gIGZvbnQgc2l6aW5nIGluIGFsbCBicm93c2Vycy5cbiAgICAgKi9cbnByZSB7XG4gIGZvbnQtZmFtaWx5OiBtb25vc3BhY2UsIG1vbm9zcGFjZTtcbiAgLyogMSAqL1xuICBmb250LXNpemU6IDFlbTtcbiAgLyogMiAqL1xufVxuXG4vKiBMaW5rc1xuICAgICAgID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXG4vKipcbiAgICAgKiAxLiBSZW1vdmUgdGhlIGdyYXkgYmFja2dyb3VuZCBvbiBhY3RpdmUgbGlua3MgaW4gSUUgMTAuXG4gICAgICogMi4gUmVtb3ZlIGdhcHMgaW4gbGlua3MgdW5kZXJsaW5lIGluIGlPUyA4KyBhbmQgU2FmYXJpIDgrLlxuICAgICAqL1xuYSB7XG4gIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xuICAvKiAxICovXG4gIC13ZWJraXQtdGV4dC1kZWNvcmF0aW9uLXNraXA6IG9iamVjdHM7XG4gIC8qIDIgKi9cbn1cblxuLyoqXG4gICAgICogUmVtb3ZlIHRoZSBvdXRsaW5lIG9uIGZvY3VzZWQgbGlua3Mgd2hlbiB0aGV5IGFyZSBhbHNvIGFjdGl2ZSBvciBob3ZlcmVkXG4gICAgICogaW4gYWxsIGJyb3dzZXJzIChvcGluaW9uYXRlZCkuXG4gICAgICovXG5hOmFjdGl2ZSxcbmE6aG92ZXIge1xuICBvdXRsaW5lLXdpZHRoOiAwO1xufVxuXG4vKiBUZXh0LWxldmVsIHNlbWFudGljc1xuICAgICAgID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXG4vKipcbiAgICAgKiAxLiBSZW1vdmUgdGhlIGJvdHRvbSBib3JkZXIgaW4gRmlyZWZveCAzOS0uXG4gICAgICogMi4gQWRkIHRoZSBjb3JyZWN0IHRleHQgZGVjb3JhdGlvbiBpbiBDaHJvbWUsIEVkZ2UsIElFLCBPcGVyYSwgYW5kIFNhZmFyaS5cbiAgICAgKi9cbmFiYnJbdGl0bGVdIHtcbiAgYm9yZGVyLWJvdHRvbTogbm9uZTtcbiAgLyogMSAqL1xuICB0ZXh0LWRlY29yYXRpb246IHVuZGVybGluZTtcbiAgLyogMiAqL1xuICB0ZXh0LWRlY29yYXRpb246IHVuZGVybGluZSBkb3R0ZWQ7XG4gIC8qIDIgKi9cbn1cblxuLyoqXG4gICAgICogUHJldmVudCB0aGUgZHVwbGljYXRlIGFwcGxpY2F0aW9uIG9mIGBib2xkZXJgIGJ5IHRoZSBuZXh0IHJ1bGUgaW4gU2FmYXJpIDYuXG4gICAgICovXG5iLFxuc3Ryb25nIHtcbiAgZm9udC13ZWlnaHQ6IGluaGVyaXQ7XG59XG5cbi8qKlxuICAgICAqIEFkZCB0aGUgY29ycmVjdCBmb250IHdlaWdodCBpbiBDaHJvbWUsIEVkZ2UsIGFuZCBTYWZhcmkuXG4gICAgICovXG5iLFxuc3Ryb25nIHtcbiAgZm9udC13ZWlnaHQ6IGJvbGRlcjtcbn1cblxuLyoqXG4gICAgICogMS4gQ29ycmVjdCB0aGUgaW5oZXJpdGFuY2UgYW5kIHNjYWxpbmcgb2YgZm9udCBzaXplIGluIGFsbCBicm93c2Vycy5cbiAgICAgKiAyLiBDb3JyZWN0IHRoZSBvZGQgYGVtYCBmb250IHNpemluZyBpbiBhbGwgYnJvd3NlcnMuXG4gICAgICovXG5jb2RlLFxua2JkLFxuc2FtcCB7XG4gIGZvbnQtZmFtaWx5OiBtb25vc3BhY2UsIG1vbm9zcGFjZTtcbiAgLyogMSAqL1xuICBmb250LXNpemU6IDFlbTtcbiAgLyogMiAqL1xufVxuXG4vKipcbiAgICAgKiBBZGQgdGhlIGNvcnJlY3QgZm9udCBzdHlsZSBpbiBBbmRyb2lkIDQuMy0uXG4gICAgICovXG5kZm4ge1xuICBmb250LXN0eWxlOiBpdGFsaWM7XG59XG5cbi8qKlxuICAgICAqIEFkZCB0aGUgY29ycmVjdCBiYWNrZ3JvdW5kIGFuZCBjb2xvciBpbiBJRSA5LS5cbiAgICAgKi9cbm1hcmsge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZmYwO1xuICBjb2xvcjogIzAwMDtcbn1cblxuLyoqXG4gICAgICogQWRkIHRoZSBjb3JyZWN0IGZvbnQgc2l6ZSBpbiBhbGwgYnJvd3NlcnMuXG4gICAgICovXG5zbWFsbCB7XG4gIGZvbnQtc2l6ZTogODAlO1xufVxuXG4vKipcbiAgICAgKiBQcmV2ZW50IGBzdWJgIGFuZCBgc3VwYCBlbGVtZW50cyBmcm9tIGFmZmVjdGluZyB0aGUgbGluZSBoZWlnaHQgaW5cbiAgICAgKiBhbGwgYnJvd3NlcnMuXG4gICAgICovXG5zdWIsXG5zdXAge1xuICBmb250LXNpemU6IDc1JTtcbiAgbGluZS1oZWlnaHQ6IDA7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgdmVydGljYWwtYWxpZ246IGJhc2VsaW5lO1xufVxuXG5zdWIge1xuICBib3R0b206IC0wLjI1ZW07XG59XG5cbnN1cCB7XG4gIHRvcDogLTAuNWVtO1xufVxuXG4vKiBFbWJlZGRlZCBjb250ZW50XG4gICAgICAgPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cbi8qKlxuICAgICAqIEFkZCB0aGUgY29ycmVjdCBkaXNwbGF5IGluIElFIDktLlxuICAgICAqL1xuYXVkaW8sXG52aWRlbyB7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbn1cblxuLyoqXG4gICAgICogQWRkIHRoZSBjb3JyZWN0IGRpc3BsYXkgaW4gaU9TIDQtNy5cbiAgICAgKi9cbmF1ZGlvOm5vdChbY29udHJvbHNdKSB7XG4gIGRpc3BsYXk6IG5vbmU7XG4gIGhlaWdodDogMDtcbn1cblxuLyoqXG4gICAgICogUmVtb3ZlIHRoZSBib3JkZXIgb24gaW1hZ2VzIGluc2lkZSBsaW5rcyBpbiBJRSAxMC0uXG4gICAgICovXG5pbWcge1xuICBib3JkZXItc3R5bGU6IG5vbmU7XG59XG5cbi8qKlxuICAgICAqIEhpZGUgdGhlIG92ZXJmbG93IGluIElFLlxuICAgICAqL1xuc3ZnOm5vdCg6cm9vdCkge1xuICBvdmVyZmxvdzogaGlkZGVuO1xufVxuXG4vKiBGb3Jtc1xuICAgICAgID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXG4vKipcbiAgICAgKiAxLiBDaGFuZ2UgdGhlIGZvbnQgc3R5bGVzIGluIGFsbCBicm93c2VycyAob3BpbmlvbmF0ZWQpLlxuICAgICAqIDIuIFJlbW92ZSB0aGUgbWFyZ2luIGluIEZpcmVmb3ggYW5kIFNhZmFyaS5cbiAgICAgKi9cbmJ1dHRvbixcbmlucHV0LFxub3B0Z3JvdXAsXG5zZWxlY3QsXG50ZXh0YXJlYSB7XG4gIGZvbnQtZmFtaWx5OiBzYW5zLXNlcmlmO1xuICAvKiAxICovXG4gIGZvbnQtc2l6ZTogMTAwJTtcbiAgLyogMSAqL1xuICBsaW5lLWhlaWdodDogMS4xNTtcbiAgLyogMSAqL1xuICBtYXJnaW46IDA7XG4gIC8qIDIgKi9cbn1cblxuLyoqXG4gICAgICogU2hvdyB0aGUgb3ZlcmZsb3cgaW4gSUUuXG4gICAgICovXG5idXR0b24ge1xuICBvdmVyZmxvdzogdmlzaWJsZTtcbn1cblxuLyoqXG4gICAgICogUmVtb3ZlIHRoZSBpbmhlcml0YW5jZSBvZiB0ZXh0IHRyYW5zZm9ybSBpbiBFZGdlLCBGaXJlZm94LCBhbmQgSUUuXG4gICAgICogMS4gUmVtb3ZlIHRoZSBpbmhlcml0YW5jZSBvZiB0ZXh0IHRyYW5zZm9ybSBpbiBGaXJlZm94LlxuICAgICAqL1xuYnV0dG9uLFxuc2VsZWN0IHtcbiAgLyogMSAqL1xuICB0ZXh0LXRyYW5zZm9ybTogbm9uZTtcbn1cblxuLyoqXG4gICAgICogMS4gUHJldmVudCBhIFdlYktpdCBidWcgd2hlcmUgKDIpIGRlc3Ryb3lzIG5hdGl2ZSBgYXVkaW9gIGFuZCBgdmlkZW9gXG4gICAgICogICAgY29udHJvbHMgaW4gQW5kcm9pZCA0LlxuICAgICAqIDIuIENvcnJlY3QgdGhlIGluYWJpbGl0eSB0byBzdHlsZSBjbGlja2FibGUgdHlwZXMgaW4gaU9TIGFuZCBTYWZhcmkuXG4gICAgICovXG5idXR0b24sXG5odG1sIFt0eXBlPVwiYnV0dG9uXCJdLFxuW3R5cGU9XCJyZXNldFwiXSxcblt0eXBlPVwic3VibWl0XCJdIHtcbiAgLXdlYmtpdC1hcHBlYXJhbmNlOiBidXR0b247XG4gIC8qIDIgKi9cbn1cblxuYnV0dG9uLFxuW3R5cGU9XCJidXR0b25cIl0sXG5bdHlwZT1cInJlc2V0XCJdLFxuW3R5cGU9XCJzdWJtaXRcIl0ge1xuICAvKipcbiAgICAgICAqIFJlbW92ZSB0aGUgaW5uZXIgYm9yZGVyIGFuZCBwYWRkaW5nIGluIEZpcmVmb3guXG4gICAgICAgKi9cbiAgLyoqXG4gICAgICAgKiBSZXN0b3JlIHRoZSBmb2N1cyBzdHlsZXMgdW5zZXQgYnkgdGhlIHByZXZpb3VzIHJ1bGUuXG4gICAgICAgKi9cbn1cblxuYnV0dG9uOjotbW96LWZvY3VzLWlubmVyLFxuW3R5cGU9XCJidXR0b25cIl06Oi1tb3otZm9jdXMtaW5uZXIsXG5bdHlwZT1cInJlc2V0XCJdOjotbW96LWZvY3VzLWlubmVyLFxuW3R5cGU9XCJzdWJtaXRcIl06Oi1tb3otZm9jdXMtaW5uZXIge1xuICBib3JkZXItc3R5bGU6IG5vbmU7XG4gIHBhZGRpbmc6IDA7XG59XG5cbmJ1dHRvbjotbW96LWZvY3VzcmluZyxcblt0eXBlPVwiYnV0dG9uXCJdOi1tb3otZm9jdXNyaW5nLFxuW3R5cGU9XCJyZXNldFwiXTotbW96LWZvY3VzcmluZyxcblt0eXBlPVwic3VibWl0XCJdOi1tb3otZm9jdXNyaW5nIHtcbiAgb3V0bGluZTogMXB4IGRvdHRlZCBCdXR0b25UZXh0O1xufVxuXG4vKipcbiAgICAgKiBTaG93IHRoZSBvdmVyZmxvdyBpbiBFZGdlLlxuICAgICAqL1xuaW5wdXQge1xuICBvdmVyZmxvdzogdmlzaWJsZTtcbn1cblxuLyoqXG4gICAgICogMS4gQWRkIHRoZSBjb3JyZWN0IGJveCBzaXppbmcgaW4gSUUgMTAtLlxuICAgICAqIDIuIFJlbW92ZSB0aGUgcGFkZGluZyBpbiBJRSAxMC0uXG4gICAgICovXG5bdHlwZT1cImNoZWNrYm94XCJdLFxuW3R5cGU9XCJyYWRpb1wiXSB7XG4gIGJveC1zaXppbmc6IGJvcmRlci1ib3g7XG4gIC8qIDEgKi9cbiAgcGFkZGluZzogMDtcbiAgLyogMiAqL1xufVxuXG4vKipcbiAgICAgKiBDb3JyZWN0IHRoZSBjdXJzb3Igc3R5bGUgb2YgaW5jcmVtZW50IGFuZCBkZWNyZW1lbnQgYnV0dG9ucyBpbiBDaHJvbWUuXG4gICAgICovXG5bdHlwZT1cIm51bWJlclwiXTo6LXdlYmtpdC1pbm5lci1zcGluLWJ1dHRvbixcblt0eXBlPVwibnVtYmVyXCJdOjotd2Via2l0LW91dGVyLXNwaW4tYnV0dG9uIHtcbiAgaGVpZ2h0OiBhdXRvO1xufVxuXG4vKipcbiAgICAgKiAxLiBDb3JyZWN0IHRoZSBvZGQgYXBwZWFyYW5jZSBpbiBDaHJvbWUgYW5kIFNhZmFyaS5cbiAgICAgKiAyLiBDb3JyZWN0IHRoZSBvdXRsaW5lIHN0eWxlIGluIFNhZmFyaS5cbiAgICAgKi9cblt0eXBlPVwic2VhcmNoXCJdIHtcbiAgLXdlYmtpdC1hcHBlYXJhbmNlOiB0ZXh0ZmllbGQ7XG4gIC8qIDEgKi9cbiAgb3V0bGluZS1vZmZzZXQ6IC0ycHg7XG4gIC8qIDIgKi9cbiAgLyoqXG4gICAgICAgKiBSZW1vdmUgdGhlIGlubmVyIHBhZGRpbmcgYW5kIGNhbmNlbCBidXR0b25zIGluIENocm9tZSBhbmQgU2FmYXJpIG9uIG1hY09TLlxuICAgICAgICovXG59XG5cblt0eXBlPVwic2VhcmNoXCJdOjotd2Via2l0LXNlYXJjaC1jYW5jZWwtYnV0dG9uLCBbdHlwZT1cInNlYXJjaFwiXTo6LXdlYmtpdC1zZWFyY2gtZGVjb3JhdGlvbiB7XG4gIC13ZWJraXQtYXBwZWFyYW5jZTogbm9uZTtcbn1cblxuLyoqXG4gICAgICogMS4gQ29ycmVjdCB0aGUgaW5hYmlsaXR5IHRvIHN0eWxlIGNsaWNrYWJsZSB0eXBlcyBpbiBpT1MgYW5kIFNhZmFyaS5cbiAgICAgKiAyLiBDaGFuZ2UgZm9udCBwcm9wZXJ0aWVzIHRvIGBpbmhlcml0YCBpbiBTYWZhcmkuXG4gICAgICovXG46Oi13ZWJraXQtZmlsZS11cGxvYWQtYnV0dG9uIHtcbiAgLXdlYmtpdC1hcHBlYXJhbmNlOiBidXR0b247XG4gIC8qIDEgKi9cbiAgZm9udDogaW5oZXJpdDtcbiAgLyogMiAqL1xufVxuXG4vKipcbiAgICAgKiBDaGFuZ2UgdGhlIGJvcmRlciwgbWFyZ2luLCBhbmQgcGFkZGluZyBpbiBhbGwgYnJvd3NlcnMgKG9waW5pb25hdGVkKS5cbiAgICAgKi9cbmZpZWxkc2V0IHtcbiAgYm9yZGVyOiAxcHggc29saWQgI2MwYzBjMDtcbiAgbWFyZ2luOiAwIDJweDtcbiAgcGFkZGluZzogMC4zNWVtIDAuNjI1ZW0gMC43NWVtO1xufVxuXG4vKipcbiAgICAgKiAxLiBDb3JyZWN0IHRoZSB0ZXh0IHdyYXBwaW5nIGluIEVkZ2UgYW5kIElFLlxuICAgICAqIDIuIENvcnJlY3QgdGhlIGNvbG9yIGluaGVyaXRhbmNlIGZyb20gYGZpZWxkc2V0YCBlbGVtZW50cyBpbiBJRS5cbiAgICAgKiAzLiBSZW1vdmUgdGhlIHBhZGRpbmcgc28gZGV2ZWxvcGVycyBhcmUgbm90IGNhdWdodCBvdXQgd2hlbiB0aGV5IHplcm8gb3V0XG4gICAgICogICAgYGZpZWxkc2V0YCBlbGVtZW50cyBpbiBhbGwgYnJvd3NlcnMuXG4gICAgICovXG5sZWdlbmQge1xuICBib3gtc2l6aW5nOiBib3JkZXItYm94O1xuICAvKiAxICovXG4gIGRpc3BsYXk6IHRhYmxlO1xuICAvKiAxICovXG4gIG1heC13aWR0aDogMTAwJTtcbiAgLyogMSAqL1xuICBwYWRkaW5nOiAwO1xuICAvKiAzICovXG4gIGNvbG9yOiBpbmhlcml0O1xuICAvKiAyICovXG4gIHdoaXRlLXNwYWNlOiBub3JtYWw7XG4gIC8qIDEgKi9cbn1cblxuLyoqXG4gICAgICogMS4gQWRkIHRoZSBjb3JyZWN0IGRpc3BsYXkgaW4gSUUgOS0uXG4gICAgICogMi4gQWRkIHRoZSBjb3JyZWN0IHZlcnRpY2FsIGFsaWdubWVudCBpbiBDaHJvbWUsIEZpcmVmb3gsIGFuZCBPcGVyYS5cbiAgICAgKi9cbnByb2dyZXNzIHtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAvKiAxICovXG4gIHZlcnRpY2FsLWFsaWduOiBiYXNlbGluZTtcbiAgLyogMiAqL1xufVxuXG4vKipcbiAgICAgKiBSZW1vdmUgdGhlIGRlZmF1bHQgdmVydGljYWwgc2Nyb2xsYmFyIGluIElFLlxuICAgICAqL1xudGV4dGFyZWEge1xuICBvdmVyZmxvdzogYXV0bztcbn1cblxuLyogSW50ZXJhY3RpdmVcbiAgICAgICA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xuLypcbiAgICAgKiBBZGQgdGhlIGNvcnJlY3QgZGlzcGxheSBpbiBFZGdlLCBJRSwgYW5kIEZpcmVmb3guXG4gICAgICovXG5kZXRhaWxzIHtcbiAgZGlzcGxheTogYmxvY2s7XG59XG5cbi8qXG4gICAgICogQWRkIHRoZSBjb3JyZWN0IGRpc3BsYXkgaW4gYWxsIGJyb3dzZXJzLlxuICAgICAqL1xuc3VtbWFyeSB7XG4gIGRpc3BsYXk6IGxpc3QtaXRlbTtcbn1cblxuLypcbiAgICAgKiBBZGQgdGhlIGNvcnJlY3QgZGlzcGxheSBpbiBJRSA5LS5cbiAgICAgKi9cbm1lbnUge1xuICBkaXNwbGF5OiBibG9jaztcbn1cblxuLyogU2NyaXB0aW5nXG4gICAgICAgPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cbi8qKlxuICAgICAqIEFkZCB0aGUgY29ycmVjdCBkaXNwbGF5IGluIElFIDktLlxuICAgICAqL1xuY2FudmFzIHtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xufVxuXG4vKipcbiAgICAgKiBBZGQgdGhlIGNvcnJlY3QgZGlzcGxheSBpbiBJRS5cbiAgICAgKi9cbnRlbXBsYXRlIHtcbiAgZGlzcGxheTogbm9uZTtcbn1cblxuLyogSGlkZGVuXG4gICAgICAgPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cbi8qKlxuICAgICAqIEFkZCB0aGUgY29ycmVjdCBkaXNwbGF5IGluIElFIDEwLS5cbiAgICAgKi9cbltoaWRkZW5dIHtcbiAgZGlzcGxheTogbm9uZTtcbn1cblxuLmZvdW5kYXRpb24tbXEge1xuICBmb250LWZhbWlseTogXCJzbWFsbD0wZW0mbWVkaXVtPTQ4ZW0mbGFyZ2U9NjRlbSZ4bGFyZ2U9NzVlbSZ4eGxhcmdlPTkwZW1cIjtcbn1cblxuaHRtbCB7XG4gIGJveC1zaXppbmc6IGJvcmRlci1ib3g7XG4gIGZvbnQtc2l6ZTogMTRweDtcbn1cblxuKixcbio6OmJlZm9yZSxcbio6OmFmdGVyIHtcbiAgYm94LXNpemluZzogaW5oZXJpdDtcbn1cblxuYm9keSB7XG4gIG1hcmdpbjogMDtcbiAgcGFkZGluZzogMDtcbiAgYmFja2dyb3VuZDogI2ZmZjtcbiAgZm9udC1mYW1pbHk6IEhlbHZldGljYSwgQXJpYWwsIHNhbnMtc2VyaWY7XG4gIGZvbnQtd2VpZ2h0OiBub3JtYWw7XG4gIGxpbmUtaGVpZ2h0OiAxLjY7XG4gIGNvbG9yOiAjMGEwYTBhO1xuICAtd2Via2l0LWZvbnQtc21vb3RoaW5nOiBhbnRpYWxpYXNlZDtcbiAgLW1vei1vc3gtZm9udC1zbW9vdGhpbmc6IGdyYXlzY2FsZTtcbn1cblxuaW1nIHtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlO1xuICBtYXgtd2lkdGg6IDEwMCU7XG4gIGhlaWdodDogYXV0bztcbiAgLW1zLWludGVycG9sYXRpb24tbW9kZTogYmljdWJpYztcbn1cblxudGV4dGFyZWEge1xuICBoZWlnaHQ6IGF1dG87XG4gIG1pbi1oZWlnaHQ6IDUwcHg7XG4gIGJvcmRlci1yYWRpdXM6IDAuMThyZW07XG59XG5cbnNlbGVjdCB7XG4gIGJveC1zaXppbmc6IGJvcmRlci1ib3g7XG4gIHdpZHRoOiAxMDAlO1xuICBib3JkZXItcmFkaXVzOiAwLjE4cmVtO1xufVxuXG4ubWFwX2NhbnZhcyBpbWcsXG4ubWFwX2NhbnZhcyBlbWJlZCxcbi5tYXBfY2FudmFzIG9iamVjdCxcbi5tcWEtZGlzcGxheSBpbWcsXG4ubXFhLWRpc3BsYXkgZW1iZWQsXG4ubXFhLWRpc3BsYXkgb2JqZWN0IHtcbiAgbWF4LXdpZHRoOiBub25lICFpbXBvcnRhbnQ7XG59XG5cbmJ1dHRvbiB7XG4gIHBhZGRpbmc6IDA7XG4gIGFwcGVhcmFuY2U6IG5vbmU7XG4gIGJvcmRlcjogMDtcbiAgYm9yZGVyLXJhZGl1czogMC4xOHJlbTtcbiAgYmFja2dyb3VuZDogdHJhbnNwYXJlbnQ7XG4gIGxpbmUtaGVpZ2h0OiAxO1xufVxuXG5bZGF0YS13aGF0aW5wdXQ9J21vdXNlJ10gYnV0dG9uIHtcbiAgb3V0bGluZTogMDtcbn1cblxucHJlIHtcbiAgb3ZlcmZsb3c6IGF1dG87XG59XG5cbmJ1dHRvbixcbmlucHV0LFxub3B0Z3JvdXAsXG5zZWxlY3QsXG50ZXh0YXJlYSB7XG4gIGZvbnQtZmFtaWx5OiBpbmhlcml0O1xufVxuXG4uaXMtdmlzaWJsZSB7XG4gIGRpc3BsYXk6IGJsb2NrICFpbXBvcnRhbnQ7XG59XG5cbi5pcy1oaWRkZW4ge1xuICBkaXNwbGF5OiBub25lICFpbXBvcnRhbnQ7XG59XG5cbi5yb3cge1xuICBtYXgtd2lkdGg6IDkyLjg1NzE0cmVtO1xuICBtYXJnaW4tcmlnaHQ6IGF1dG87XG4gIG1hcmdpbi1sZWZ0OiBhdXRvO1xufVxuXG4ucm93OjpiZWZvcmUsIC5yb3c6OmFmdGVyIHtcbiAgZGlzcGxheTogdGFibGU7XG4gIGNvbnRlbnQ6ICcgJztcbn1cblxuLnJvdzo6YWZ0ZXIge1xuICBjbGVhcjogYm90aDtcbn1cblxuLnJvdy5jb2xsYXBzZSA+IC5jb2x1bW4sIC5yb3cuY29sbGFwc2UgPiAuY29sdW1ucyB7XG4gIHBhZGRpbmctcmlnaHQ6IDA7XG4gIHBhZGRpbmctbGVmdDogMDtcbn1cblxuLnJvdyAucm93IHtcbiAgbWFyZ2luLXJpZ2h0OiAtMC4zNTcxNHJlbTtcbiAgbWFyZ2luLWxlZnQ6IC0wLjM1NzE0cmVtO1xufVxuXG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDhlbSkge1xuICAucm93IC5yb3cge1xuICAgIG1hcmdpbi1yaWdodDogLTAuNTcxNDNyZW07XG4gICAgbWFyZ2luLWxlZnQ6IC0wLjU3MTQzcmVtO1xuICB9XG59XG5cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gIC5yb3cgLnJvdyB7XG4gICAgbWFyZ2luLXJpZ2h0OiAtMC41NzE0M3JlbTtcbiAgICBtYXJnaW4tbGVmdDogLTAuNTcxNDNyZW07XG4gIH1cbn1cblxuQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNzVlbSkge1xuICAucm93IC5yb3cge1xuICAgIG1hcmdpbi1yaWdodDogLTAuNTcxNDNyZW07XG4gICAgbWFyZ2luLWxlZnQ6IC0wLjU3MTQzcmVtO1xuICB9XG59XG5cbkBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDkwZW0pIHtcbiAgLnJvdyAucm93IHtcbiAgICBtYXJnaW4tcmlnaHQ6IC0wLjU3MTQzcmVtO1xuICAgIG1hcmdpbi1sZWZ0OiAtMC41NzE0M3JlbTtcbiAgfVxufVxuXG4ucm93IC5yb3cuY29sbGFwc2Uge1xuICBtYXJnaW4tcmlnaHQ6IDA7XG4gIG1hcmdpbi1sZWZ0OiAwO1xufVxuXG4ucm93LmV4cGFuZGVkIHtcbiAgbWF4LXdpZHRoOiBub25lO1xufVxuXG4ucm93LmV4cGFuZGVkIC5yb3cge1xuICBtYXJnaW4tcmlnaHQ6IGF1dG87XG4gIG1hcmdpbi1sZWZ0OiBhdXRvO1xufVxuXG4ucm93Om5vdCguZXhwYW5kZWQpIC5yb3cge1xuICBtYXgtd2lkdGg6IG5vbmU7XG59XG5cbi5yb3cuZ3V0dGVyLXNtYWxsID4gLmNvbHVtbiwgLnJvdy5ndXR0ZXItc21hbGwgPiAuY29sdW1ucyB7XG4gIHBhZGRpbmctcmlnaHQ6IDAuMzU3MTRyZW07XG4gIHBhZGRpbmctbGVmdDogMC4zNTcxNHJlbTtcbn1cblxuLnJvdy5ndXR0ZXItbWVkaXVtID4gLmNvbHVtbiwgLnJvdy5ndXR0ZXItbWVkaXVtID4gLmNvbHVtbnMge1xuICBwYWRkaW5nLXJpZ2h0OiAwLjU3MTQzcmVtO1xuICBwYWRkaW5nLWxlZnQ6IDAuNTcxNDNyZW07XG59XG5cbi5yb3cuZ3V0dGVyLWxhcmdlID4gLmNvbHVtbiwgLnJvdy5ndXR0ZXItbGFyZ2UgPiAuY29sdW1ucyB7XG4gIHBhZGRpbmctcmlnaHQ6IDAuNTcxNDNyZW07XG4gIHBhZGRpbmctbGVmdDogMC41NzE0M3JlbTtcbn1cblxuLmNvbHVtbiwgLmNvbHVtbnMge1xuICB3aWR0aDogMTAwJTtcbiAgZmxvYXQ6IGxlZnQ7XG4gIHBhZGRpbmctcmlnaHQ6IDAuMzU3MTRyZW07XG4gIHBhZGRpbmctbGVmdDogMC4zNTcxNHJlbTtcbn1cblxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQ4ZW0pIHtcbiAgLmNvbHVtbiwgLmNvbHVtbnMge1xuICAgIHBhZGRpbmctcmlnaHQ6IDAuNTcxNDNyZW07XG4gICAgcGFkZGluZy1sZWZ0OiAwLjU3MTQzcmVtO1xuICB9XG59XG5cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gIC5jb2x1bW4sIC5jb2x1bW5zIHtcbiAgICBwYWRkaW5nLXJpZ2h0OiAwLjU3MTQzcmVtO1xuICAgIHBhZGRpbmctbGVmdDogMC41NzE0M3JlbTtcbiAgfVxufVxuXG4uY29sdW1uOmxhc3QtY2hpbGQ6bm90KDpmaXJzdC1jaGlsZCksIC5jb2x1bW5zOmxhc3QtY2hpbGQ6bm90KDpmaXJzdC1jaGlsZCkge1xuICBmbG9hdDogcmlnaHQ7XG59XG5cbi5jb2x1bW4uZW5kOmxhc3QtY2hpbGQ6bGFzdC1jaGlsZCwgLmVuZC5jb2x1bW5zOmxhc3QtY2hpbGQ6bGFzdC1jaGlsZCB7XG4gIGZsb2F0OiBsZWZ0O1xufVxuXG4uY29sdW1uLnJvdy5yb3csIC5yb3cucm93LmNvbHVtbnMge1xuICBmbG9hdDogbm9uZTtcbn1cblxuLnJvdyAuY29sdW1uLnJvdy5yb3csIC5yb3cgLnJvdy5yb3cuY29sdW1ucyB7XG4gIG1hcmdpbi1yaWdodDogMDtcbiAgbWFyZ2luLWxlZnQ6IDA7XG4gIHBhZGRpbmctcmlnaHQ6IDA7XG4gIHBhZGRpbmctbGVmdDogMDtcbn1cblxuLnNtYWxsLTEge1xuICB3aWR0aDogOC4zMzMzMyU7XG59XG5cbi5zbWFsbC1wdXNoLTEge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIGxlZnQ6IDguMzMzMzMlO1xufVxuXG4uc21hbGwtcHVsbC0xIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBsZWZ0OiAtOC4zMzMzMyU7XG59XG5cbi5zbWFsbC1vZmZzZXQtMCB7XG4gIG1hcmdpbi1sZWZ0OiAwJTtcbn1cblxuLnNtYWxsLTIge1xuICB3aWR0aDogMTYuNjY2NjclO1xufVxuXG4uc21hbGwtcHVzaC0yIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBsZWZ0OiAxNi42NjY2NyU7XG59XG5cbi5zbWFsbC1wdWxsLTIge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIGxlZnQ6IC0xNi42NjY2NyU7XG59XG5cbi5zbWFsbC1vZmZzZXQtMSB7XG4gIG1hcmdpbi1sZWZ0OiA4LjMzMzMzJTtcbn1cblxuLnNtYWxsLTMge1xuICB3aWR0aDogMjUlO1xufVxuXG4uc21hbGwtcHVzaC0zIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBsZWZ0OiAyNSU7XG59XG5cbi5zbWFsbC1wdWxsLTMge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIGxlZnQ6IC0yNSU7XG59XG5cbi5zbWFsbC1vZmZzZXQtMiB7XG4gIG1hcmdpbi1sZWZ0OiAxNi42NjY2NyU7XG59XG5cbi5zbWFsbC00IHtcbiAgd2lkdGg6IDMzLjMzMzMzJTtcbn1cblxuLnNtYWxsLXB1c2gtNCB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgbGVmdDogMzMuMzMzMzMlO1xufVxuXG4uc21hbGwtcHVsbC00IHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBsZWZ0OiAtMzMuMzMzMzMlO1xufVxuXG4uc21hbGwtb2Zmc2V0LTMge1xuICBtYXJnaW4tbGVmdDogMjUlO1xufVxuXG4uc21hbGwtNSB7XG4gIHdpZHRoOiA0MS42NjY2NyU7XG59XG5cbi5zbWFsbC1wdXNoLTUge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIGxlZnQ6IDQxLjY2NjY3JTtcbn1cblxuLnNtYWxsLXB1bGwtNSB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgbGVmdDogLTQxLjY2NjY3JTtcbn1cblxuLnNtYWxsLW9mZnNldC00IHtcbiAgbWFyZ2luLWxlZnQ6IDMzLjMzMzMzJTtcbn1cblxuLnNtYWxsLTYge1xuICB3aWR0aDogNTAlO1xufVxuXG4uc21hbGwtcHVzaC02IHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBsZWZ0OiA1MCU7XG59XG5cbi5zbWFsbC1wdWxsLTYge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIGxlZnQ6IC01MCU7XG59XG5cbi5zbWFsbC1vZmZzZXQtNSB7XG4gIG1hcmdpbi1sZWZ0OiA0MS42NjY2NyU7XG59XG5cbi5zbWFsbC03IHtcbiAgd2lkdGg6IDU4LjMzMzMzJTtcbn1cblxuLnNtYWxsLXB1c2gtNyB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgbGVmdDogNTguMzMzMzMlO1xufVxuXG4uc21hbGwtcHVsbC03IHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBsZWZ0OiAtNTguMzMzMzMlO1xufVxuXG4uc21hbGwtb2Zmc2V0LTYge1xuICBtYXJnaW4tbGVmdDogNTAlO1xufVxuXG4uc21hbGwtOCB7XG4gIHdpZHRoOiA2Ni42NjY2NyU7XG59XG5cbi5zbWFsbC1wdXNoLTgge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIGxlZnQ6IDY2LjY2NjY3JTtcbn1cblxuLnNtYWxsLXB1bGwtOCB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgbGVmdDogLTY2LjY2NjY3JTtcbn1cblxuLnNtYWxsLW9mZnNldC03IHtcbiAgbWFyZ2luLWxlZnQ6IDU4LjMzMzMzJTtcbn1cblxuLnNtYWxsLTkge1xuICB3aWR0aDogNzUlO1xufVxuXG4uc21hbGwtcHVzaC05IHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBsZWZ0OiA3NSU7XG59XG5cbi5zbWFsbC1wdWxsLTkge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIGxlZnQ6IC03NSU7XG59XG5cbi5zbWFsbC1vZmZzZXQtOCB7XG4gIG1hcmdpbi1sZWZ0OiA2Ni42NjY2NyU7XG59XG5cbi5zbWFsbC0xMCB7XG4gIHdpZHRoOiA4My4zMzMzMyU7XG59XG5cbi5zbWFsbC1wdXNoLTEwIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBsZWZ0OiA4My4zMzMzMyU7XG59XG5cbi5zbWFsbC1wdWxsLTEwIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBsZWZ0OiAtODMuMzMzMzMlO1xufVxuXG4uc21hbGwtb2Zmc2V0LTkge1xuICBtYXJnaW4tbGVmdDogNzUlO1xufVxuXG4uc21hbGwtMTEge1xuICB3aWR0aDogOTEuNjY2NjclO1xufVxuXG4uc21hbGwtcHVzaC0xMSB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgbGVmdDogOTEuNjY2NjclO1xufVxuXG4uc21hbGwtcHVsbC0xMSB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgbGVmdDogLTkxLjY2NjY3JTtcbn1cblxuLnNtYWxsLW9mZnNldC0xMCB7XG4gIG1hcmdpbi1sZWZ0OiA4My4zMzMzMyU7XG59XG5cbi5zbWFsbC0xMiB7XG4gIHdpZHRoOiAxMDAlO1xufVxuXG4uc21hbGwtb2Zmc2V0LTExIHtcbiAgbWFyZ2luLWxlZnQ6IDkxLjY2NjY3JTtcbn1cblxuLnNtYWxsLXVwLTEgPiAuY29sdW1uLCAuc21hbGwtdXAtMSA+IC5jb2x1bW5zIHtcbiAgZmxvYXQ6IGxlZnQ7XG4gIHdpZHRoOiAxMDAlO1xufVxuXG4uc21hbGwtdXAtMSA+IC5jb2x1bW46bnRoLW9mLXR5cGUoMW4pLCAuc21hbGwtdXAtMSA+IC5jb2x1bW5zOm50aC1vZi10eXBlKDFuKSB7XG4gIGNsZWFyOiBub25lO1xufVxuXG4uc21hbGwtdXAtMSA+IC5jb2x1bW46bnRoLW9mLXR5cGUoMW4rMSksIC5zbWFsbC11cC0xID4gLmNvbHVtbnM6bnRoLW9mLXR5cGUoMW4rMSkge1xuICBjbGVhcjogYm90aDtcbn1cblxuLnNtYWxsLXVwLTEgPiAuY29sdW1uOmxhc3QtY2hpbGQsIC5zbWFsbC11cC0xID4gLmNvbHVtbnM6bGFzdC1jaGlsZCB7XG4gIGZsb2F0OiBsZWZ0O1xufVxuXG4uc21hbGwtdXAtMiA+IC5jb2x1bW4sIC5zbWFsbC11cC0yID4gLmNvbHVtbnMge1xuICBmbG9hdDogbGVmdDtcbiAgd2lkdGg6IDUwJTtcbn1cblxuLnNtYWxsLXVwLTIgPiAuY29sdW1uOm50aC1vZi10eXBlKDFuKSwgLnNtYWxsLXVwLTIgPiAuY29sdW1uczpudGgtb2YtdHlwZSgxbikge1xuICBjbGVhcjogbm9uZTtcbn1cblxuLnNtYWxsLXVwLTIgPiAuY29sdW1uOm50aC1vZi10eXBlKDJuKzEpLCAuc21hbGwtdXAtMiA+IC5jb2x1bW5zOm50aC1vZi10eXBlKDJuKzEpIHtcbiAgY2xlYXI6IGJvdGg7XG59XG5cbi5zbWFsbC11cC0yID4gLmNvbHVtbjpsYXN0LWNoaWxkLCAuc21hbGwtdXAtMiA+IC5jb2x1bW5zOmxhc3QtY2hpbGQge1xuICBmbG9hdDogbGVmdDtcbn1cblxuLnNtYWxsLXVwLTMgPiAuY29sdW1uLCAuc21hbGwtdXAtMyA+IC5jb2x1bW5zIHtcbiAgZmxvYXQ6IGxlZnQ7XG4gIHdpZHRoOiAzMy4zMzMzMyU7XG59XG5cbi5zbWFsbC11cC0zID4gLmNvbHVtbjpudGgtb2YtdHlwZSgxbiksIC5zbWFsbC11cC0zID4gLmNvbHVtbnM6bnRoLW9mLXR5cGUoMW4pIHtcbiAgY2xlYXI6IG5vbmU7XG59XG5cbi5zbWFsbC11cC0zID4gLmNvbHVtbjpudGgtb2YtdHlwZSgzbisxKSwgLnNtYWxsLXVwLTMgPiAuY29sdW1uczpudGgtb2YtdHlwZSgzbisxKSB7XG4gIGNsZWFyOiBib3RoO1xufVxuXG4uc21hbGwtdXAtMyA+IC5jb2x1bW46bGFzdC1jaGlsZCwgLnNtYWxsLXVwLTMgPiAuY29sdW1uczpsYXN0LWNoaWxkIHtcbiAgZmxvYXQ6IGxlZnQ7XG59XG5cbi5zbWFsbC11cC00ID4gLmNvbHVtbiwgLnNtYWxsLXVwLTQgPiAuY29sdW1ucyB7XG4gIGZsb2F0OiBsZWZ0O1xuICB3aWR0aDogMjUlO1xufVxuXG4uc21hbGwtdXAtNCA+IC5jb2x1bW46bnRoLW9mLXR5cGUoMW4pLCAuc21hbGwtdXAtNCA+IC5jb2x1bW5zOm50aC1vZi10eXBlKDFuKSB7XG4gIGNsZWFyOiBub25lO1xufVxuXG4uc21hbGwtdXAtNCA+IC5jb2x1bW46bnRoLW9mLXR5cGUoNG4rMSksIC5zbWFsbC11cC00ID4gLmNvbHVtbnM6bnRoLW9mLXR5cGUoNG4rMSkge1xuICBjbGVhcjogYm90aDtcbn1cblxuLnNtYWxsLXVwLTQgPiAuY29sdW1uOmxhc3QtY2hpbGQsIC5zbWFsbC11cC00ID4gLmNvbHVtbnM6bGFzdC1jaGlsZCB7XG4gIGZsb2F0OiBsZWZ0O1xufVxuXG4uc21hbGwtdXAtNSA+IC5jb2x1bW4sIC5zbWFsbC11cC01ID4gLmNvbHVtbnMge1xuICBmbG9hdDogbGVmdDtcbiAgd2lkdGg6IDIwJTtcbn1cblxuLnNtYWxsLXVwLTUgPiAuY29sdW1uOm50aC1vZi10eXBlKDFuKSwgLnNtYWxsLXVwLTUgPiAuY29sdW1uczpudGgtb2YtdHlwZSgxbikge1xuICBjbGVhcjogbm9uZTtcbn1cblxuLnNtYWxsLXVwLTUgPiAuY29sdW1uOm50aC1vZi10eXBlKDVuKzEpLCAuc21hbGwtdXAtNSA+IC5jb2x1bW5zOm50aC1vZi10eXBlKDVuKzEpIHtcbiAgY2xlYXI6IGJvdGg7XG59XG5cbi5zbWFsbC11cC01ID4gLmNvbHVtbjpsYXN0LWNoaWxkLCAuc21hbGwtdXAtNSA+IC5jb2x1bW5zOmxhc3QtY2hpbGQge1xuICBmbG9hdDogbGVmdDtcbn1cblxuLnNtYWxsLXVwLTYgPiAuY29sdW1uLCAuc21hbGwtdXAtNiA+IC5jb2x1bW5zIHtcbiAgZmxvYXQ6IGxlZnQ7XG4gIHdpZHRoOiAxNi42NjY2NyU7XG59XG5cbi5zbWFsbC11cC02ID4gLmNvbHVtbjpudGgtb2YtdHlwZSgxbiksIC5zbWFsbC11cC02ID4gLmNvbHVtbnM6bnRoLW9mLXR5cGUoMW4pIHtcbiAgY2xlYXI6IG5vbmU7XG59XG5cbi5zbWFsbC11cC02ID4gLmNvbHVtbjpudGgtb2YtdHlwZSg2bisxKSwgLnNtYWxsLXVwLTYgPiAuY29sdW1uczpudGgtb2YtdHlwZSg2bisxKSB7XG4gIGNsZWFyOiBib3RoO1xufVxuXG4uc21hbGwtdXAtNiA+IC5jb2x1bW46bGFzdC1jaGlsZCwgLnNtYWxsLXVwLTYgPiAuY29sdW1uczpsYXN0LWNoaWxkIHtcbiAgZmxvYXQ6IGxlZnQ7XG59XG5cbi5zbWFsbC11cC03ID4gLmNvbHVtbiwgLnNtYWxsLXVwLTcgPiAuY29sdW1ucyB7XG4gIGZsb2F0OiBsZWZ0O1xuICB3aWR0aDogMTQuMjg1NzElO1xufVxuXG4uc21hbGwtdXAtNyA+IC5jb2x1bW46bnRoLW9mLXR5cGUoMW4pLCAuc21hbGwtdXAtNyA+IC5jb2x1bW5zOm50aC1vZi10eXBlKDFuKSB7XG4gIGNsZWFyOiBub25lO1xufVxuXG4uc21hbGwtdXAtNyA+IC5jb2x1bW46bnRoLW9mLXR5cGUoN24rMSksIC5zbWFsbC11cC03ID4gLmNvbHVtbnM6bnRoLW9mLXR5cGUoN24rMSkge1xuICBjbGVhcjogYm90aDtcbn1cblxuLnNtYWxsLXVwLTcgPiAuY29sdW1uOmxhc3QtY2hpbGQsIC5zbWFsbC11cC03ID4gLmNvbHVtbnM6bGFzdC1jaGlsZCB7XG4gIGZsb2F0OiBsZWZ0O1xufVxuXG4uc21hbGwtdXAtOCA+IC5jb2x1bW4sIC5zbWFsbC11cC04ID4gLmNvbHVtbnMge1xuICBmbG9hdDogbGVmdDtcbiAgd2lkdGg6IDEyLjUlO1xufVxuXG4uc21hbGwtdXAtOCA+IC5jb2x1bW46bnRoLW9mLXR5cGUoMW4pLCAuc21hbGwtdXAtOCA+IC5jb2x1bW5zOm50aC1vZi10eXBlKDFuKSB7XG4gIGNsZWFyOiBub25lO1xufVxuXG4uc21hbGwtdXAtOCA+IC5jb2x1bW46bnRoLW9mLXR5cGUoOG4rMSksIC5zbWFsbC11cC04ID4gLmNvbHVtbnM6bnRoLW9mLXR5cGUoOG4rMSkge1xuICBjbGVhcjogYm90aDtcbn1cblxuLnNtYWxsLXVwLTggPiAuY29sdW1uOmxhc3QtY2hpbGQsIC5zbWFsbC11cC04ID4gLmNvbHVtbnM6bGFzdC1jaGlsZCB7XG4gIGZsb2F0OiBsZWZ0O1xufVxuXG4uc21hbGwtdXAtOSA+IC5jb2x1bW4sIC5zbWFsbC11cC05ID4gLmNvbHVtbnMge1xuICBmbG9hdDogbGVmdDtcbiAgd2lkdGg6IDExLjExMTExJTtcbn1cblxuLnNtYWxsLXVwLTkgPiAuY29sdW1uOm50aC1vZi10eXBlKDFuKSwgLnNtYWxsLXVwLTkgPiAuY29sdW1uczpudGgtb2YtdHlwZSgxbikge1xuICBjbGVhcjogbm9uZTtcbn1cblxuLnNtYWxsLXVwLTkgPiAuY29sdW1uOm50aC1vZi10eXBlKDluKzEpLCAuc21hbGwtdXAtOSA+IC5jb2x1bW5zOm50aC1vZi10eXBlKDluKzEpIHtcbiAgY2xlYXI6IGJvdGg7XG59XG5cbi5zbWFsbC11cC05ID4gLmNvbHVtbjpsYXN0LWNoaWxkLCAuc21hbGwtdXAtOSA+IC5jb2x1bW5zOmxhc3QtY2hpbGQge1xuICBmbG9hdDogbGVmdDtcbn1cblxuLnNtYWxsLXVwLTEwID4gLmNvbHVtbiwgLnNtYWxsLXVwLTEwID4gLmNvbHVtbnMge1xuICBmbG9hdDogbGVmdDtcbiAgd2lkdGg6IDEwJTtcbn1cblxuLnNtYWxsLXVwLTEwID4gLmNvbHVtbjpudGgtb2YtdHlwZSgxbiksIC5zbWFsbC11cC0xMCA+IC5jb2x1bW5zOm50aC1vZi10eXBlKDFuKSB7XG4gIGNsZWFyOiBub25lO1xufVxuXG4uc21hbGwtdXAtMTAgPiAuY29sdW1uOm50aC1vZi10eXBlKDEwbisxKSwgLnNtYWxsLXVwLTEwID4gLmNvbHVtbnM6bnRoLW9mLXR5cGUoMTBuKzEpIHtcbiAgY2xlYXI6IGJvdGg7XG59XG5cbi5zbWFsbC11cC0xMCA+IC5jb2x1bW46bGFzdC1jaGlsZCwgLnNtYWxsLXVwLTEwID4gLmNvbHVtbnM6bGFzdC1jaGlsZCB7XG4gIGZsb2F0OiBsZWZ0O1xufVxuXG4uc21hbGwtdXAtMTEgPiAuY29sdW1uLCAuc21hbGwtdXAtMTEgPiAuY29sdW1ucyB7XG4gIGZsb2F0OiBsZWZ0O1xuICB3aWR0aDogOS4wOTA5MSU7XG59XG5cbi5zbWFsbC11cC0xMSA+IC5jb2x1bW46bnRoLW9mLXR5cGUoMW4pLCAuc21hbGwtdXAtMTEgPiAuY29sdW1uczpudGgtb2YtdHlwZSgxbikge1xuICBjbGVhcjogbm9uZTtcbn1cblxuLnNtYWxsLXVwLTExID4gLmNvbHVtbjpudGgtb2YtdHlwZSgxMW4rMSksIC5zbWFsbC11cC0xMSA+IC5jb2x1bW5zOm50aC1vZi10eXBlKDExbisxKSB7XG4gIGNsZWFyOiBib3RoO1xufVxuXG4uc21hbGwtdXAtMTEgPiAuY29sdW1uOmxhc3QtY2hpbGQsIC5zbWFsbC11cC0xMSA+IC5jb2x1bW5zOmxhc3QtY2hpbGQge1xuICBmbG9hdDogbGVmdDtcbn1cblxuLnNtYWxsLXVwLTEyID4gLmNvbHVtbiwgLnNtYWxsLXVwLTEyID4gLmNvbHVtbnMge1xuICBmbG9hdDogbGVmdDtcbiAgd2lkdGg6IDguMzMzMzMlO1xufVxuXG4uc21hbGwtdXAtMTIgPiAuY29sdW1uOm50aC1vZi10eXBlKDFuKSwgLnNtYWxsLXVwLTEyID4gLmNvbHVtbnM6bnRoLW9mLXR5cGUoMW4pIHtcbiAgY2xlYXI6IG5vbmU7XG59XG5cbi5zbWFsbC11cC0xMiA+IC5jb2x1bW46bnRoLW9mLXR5cGUoMTJuKzEpLCAuc21hbGwtdXAtMTIgPiAuY29sdW1uczpudGgtb2YtdHlwZSgxMm4rMSkge1xuICBjbGVhcjogYm90aDtcbn1cblxuLnNtYWxsLXVwLTEyID4gLmNvbHVtbjpsYXN0LWNoaWxkLCAuc21hbGwtdXAtMTIgPiAuY29sdW1uczpsYXN0LWNoaWxkIHtcbiAgZmxvYXQ6IGxlZnQ7XG59XG5cbi5zbWFsbC1jb2xsYXBzZSA+IC5jb2x1bW4sIC5zbWFsbC1jb2xsYXBzZSA+IC5jb2x1bW5zIHtcbiAgcGFkZGluZy1yaWdodDogMDtcbiAgcGFkZGluZy1sZWZ0OiAwO1xufVxuXG4uc21hbGwtY29sbGFwc2UgLnJvdyB7XG4gIG1hcmdpbi1yaWdodDogMDtcbiAgbWFyZ2luLWxlZnQ6IDA7XG59XG5cbi5leHBhbmRlZC5yb3cgLnNtYWxsLWNvbGxhcHNlLnJvdyB7XG4gIG1hcmdpbi1yaWdodDogMDtcbiAgbWFyZ2luLWxlZnQ6IDA7XG59XG5cbi5zbWFsbC11bmNvbGxhcHNlID4gLmNvbHVtbiwgLnNtYWxsLXVuY29sbGFwc2UgPiAuY29sdW1ucyB7XG4gIHBhZGRpbmctcmlnaHQ6IDAuMzU3MTRyZW07XG4gIHBhZGRpbmctbGVmdDogMC4zNTcxNHJlbTtcbn1cblxuLnNtYWxsLWNlbnRlcmVkIHtcbiAgbWFyZ2luLXJpZ2h0OiBhdXRvO1xuICBtYXJnaW4tbGVmdDogYXV0bztcbn1cblxuLnNtYWxsLWNlbnRlcmVkLCAuc21hbGwtY2VudGVyZWQ6bGFzdC1jaGlsZDpub3QoOmZpcnN0LWNoaWxkKSB7XG4gIGZsb2F0OiBub25lO1xuICBjbGVhcjogYm90aDtcbn1cblxuLnNtYWxsLXVuY2VudGVyZWQsXG4uc21hbGwtcHVzaC0wLFxuLnNtYWxsLXB1bGwtMCB7XG4gIHBvc2l0aW9uOiBzdGF0aWM7XG4gIGZsb2F0OiBsZWZ0O1xuICBtYXJnaW4tcmlnaHQ6IDA7XG4gIG1hcmdpbi1sZWZ0OiAwO1xufVxuXG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDhlbSkge1xuICAubWVkaXVtLTEge1xuICAgIHdpZHRoOiA4LjMzMzMzJTtcbiAgfVxuICAubWVkaXVtLXB1c2gtMSB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIGxlZnQ6IDguMzMzMzMlO1xuICB9XG4gIC5tZWRpdW0tcHVsbC0xIHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgbGVmdDogLTguMzMzMzMlO1xuICB9XG4gIC5tZWRpdW0tb2Zmc2V0LTAge1xuICAgIG1hcmdpbi1sZWZ0OiAwJTtcbiAgfVxuICAubWVkaXVtLTIge1xuICAgIHdpZHRoOiAxNi42NjY2NyU7XG4gIH1cbiAgLm1lZGl1bS1wdXNoLTIge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICBsZWZ0OiAxNi42NjY2NyU7XG4gIH1cbiAgLm1lZGl1bS1wdWxsLTIge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICBsZWZ0OiAtMTYuNjY2NjclO1xuICB9XG4gIC5tZWRpdW0tb2Zmc2V0LTEge1xuICAgIG1hcmdpbi1sZWZ0OiA4LjMzMzMzJTtcbiAgfVxuICAubWVkaXVtLTMge1xuICAgIHdpZHRoOiAyNSU7XG4gIH1cbiAgLm1lZGl1bS1wdXNoLTMge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICBsZWZ0OiAyNSU7XG4gIH1cbiAgLm1lZGl1bS1wdWxsLTMge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICBsZWZ0OiAtMjUlO1xuICB9XG4gIC5tZWRpdW0tb2Zmc2V0LTIge1xuICAgIG1hcmdpbi1sZWZ0OiAxNi42NjY2NyU7XG4gIH1cbiAgLm1lZGl1bS00IHtcbiAgICB3aWR0aDogMzMuMzMzMzMlO1xuICB9XG4gIC5tZWRpdW0tcHVzaC00IHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgbGVmdDogMzMuMzMzMzMlO1xuICB9XG4gIC5tZWRpdW0tcHVsbC00IHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgbGVmdDogLTMzLjMzMzMzJTtcbiAgfVxuICAubWVkaXVtLW9mZnNldC0zIHtcbiAgICBtYXJnaW4tbGVmdDogMjUlO1xuICB9XG4gIC5tZWRpdW0tNSB7XG4gICAgd2lkdGg6IDQxLjY2NjY3JTtcbiAgfVxuICAubWVkaXVtLXB1c2gtNSB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIGxlZnQ6IDQxLjY2NjY3JTtcbiAgfVxuICAubWVkaXVtLXB1bGwtNSB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIGxlZnQ6IC00MS42NjY2NyU7XG4gIH1cbiAgLm1lZGl1bS1vZmZzZXQtNCB7XG4gICAgbWFyZ2luLWxlZnQ6IDMzLjMzMzMzJTtcbiAgfVxuICAubWVkaXVtLTYge1xuICAgIHdpZHRoOiA1MCU7XG4gIH1cbiAgLm1lZGl1bS1wdXNoLTYge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICBsZWZ0OiA1MCU7XG4gIH1cbiAgLm1lZGl1bS1wdWxsLTYge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICBsZWZ0OiAtNTAlO1xuICB9XG4gIC5tZWRpdW0tb2Zmc2V0LTUge1xuICAgIG1hcmdpbi1sZWZ0OiA0MS42NjY2NyU7XG4gIH1cbiAgLm1lZGl1bS03IHtcbiAgICB3aWR0aDogNTguMzMzMzMlO1xuICB9XG4gIC5tZWRpdW0tcHVzaC03IHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgbGVmdDogNTguMzMzMzMlO1xuICB9XG4gIC5tZWRpdW0tcHVsbC03IHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgbGVmdDogLTU4LjMzMzMzJTtcbiAgfVxuICAubWVkaXVtLW9mZnNldC02IHtcbiAgICBtYXJnaW4tbGVmdDogNTAlO1xuICB9XG4gIC5tZWRpdW0tOCB7XG4gICAgd2lkdGg6IDY2LjY2NjY3JTtcbiAgfVxuICAubWVkaXVtLXB1c2gtOCB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIGxlZnQ6IDY2LjY2NjY3JTtcbiAgfVxuICAubWVkaXVtLXB1bGwtOCB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIGxlZnQ6IC02Ni42NjY2NyU7XG4gIH1cbiAgLm1lZGl1bS1vZmZzZXQtNyB7XG4gICAgbWFyZ2luLWxlZnQ6IDU4LjMzMzMzJTtcbiAgfVxuICAubWVkaXVtLTkge1xuICAgIHdpZHRoOiA3NSU7XG4gIH1cbiAgLm1lZGl1bS1wdXNoLTkge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICBsZWZ0OiA3NSU7XG4gIH1cbiAgLm1lZGl1bS1wdWxsLTkge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICBsZWZ0OiAtNzUlO1xuICB9XG4gIC5tZWRpdW0tb2Zmc2V0LTgge1xuICAgIG1hcmdpbi1sZWZ0OiA2Ni42NjY2NyU7XG4gIH1cbiAgLm1lZGl1bS0xMCB7XG4gICAgd2lkdGg6IDgzLjMzMzMzJTtcbiAgfVxuICAubWVkaXVtLXB1c2gtMTAge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICBsZWZ0OiA4My4zMzMzMyU7XG4gIH1cbiAgLm1lZGl1bS1wdWxsLTEwIHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgbGVmdDogLTgzLjMzMzMzJTtcbiAgfVxuICAubWVkaXVtLW9mZnNldC05IHtcbiAgICBtYXJnaW4tbGVmdDogNzUlO1xuICB9XG4gIC5tZWRpdW0tMTEge1xuICAgIHdpZHRoOiA5MS42NjY2NyU7XG4gIH1cbiAgLm1lZGl1bS1wdXNoLTExIHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgbGVmdDogOTEuNjY2NjclO1xuICB9XG4gIC5tZWRpdW0tcHVsbC0xMSB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIGxlZnQ6IC05MS42NjY2NyU7XG4gIH1cbiAgLm1lZGl1bS1vZmZzZXQtMTAge1xuICAgIG1hcmdpbi1sZWZ0OiA4My4zMzMzMyU7XG4gIH1cbiAgLm1lZGl1bS0xMiB7XG4gICAgd2lkdGg6IDEwMCU7XG4gIH1cbiAgLm1lZGl1bS1vZmZzZXQtMTEge1xuICAgIG1hcmdpbi1sZWZ0OiA5MS42NjY2NyU7XG4gIH1cbiAgLm1lZGl1bS11cC0xID4gLmNvbHVtbiwgLm1lZGl1bS11cC0xID4gLmNvbHVtbnMge1xuICAgIGZsb2F0OiBsZWZ0O1xuICAgIHdpZHRoOiAxMDAlO1xuICB9XG4gIC5tZWRpdW0tdXAtMSA+IC5jb2x1bW46bnRoLW9mLXR5cGUoMW4pLCAubWVkaXVtLXVwLTEgPiAuY29sdW1uczpudGgtb2YtdHlwZSgxbikge1xuICAgIGNsZWFyOiBub25lO1xuICB9XG4gIC5tZWRpdW0tdXAtMSA+IC5jb2x1bW46bnRoLW9mLXR5cGUoMW4rMSksIC5tZWRpdW0tdXAtMSA+IC5jb2x1bW5zOm50aC1vZi10eXBlKDFuKzEpIHtcbiAgICBjbGVhcjogYm90aDtcbiAgfVxuICAubWVkaXVtLXVwLTEgPiAuY29sdW1uOmxhc3QtY2hpbGQsIC5tZWRpdW0tdXAtMSA+IC5jb2x1bW5zOmxhc3QtY2hpbGQge1xuICAgIGZsb2F0OiBsZWZ0O1xuICB9XG4gIC5tZWRpdW0tdXAtMiA+IC5jb2x1bW4sIC5tZWRpdW0tdXAtMiA+IC5jb2x1bW5zIHtcbiAgICBmbG9hdDogbGVmdDtcbiAgICB3aWR0aDogNTAlO1xuICB9XG4gIC5tZWRpdW0tdXAtMiA+IC5jb2x1bW46bnRoLW9mLXR5cGUoMW4pLCAubWVkaXVtLXVwLTIgPiAuY29sdW1uczpudGgtb2YtdHlwZSgxbikge1xuICAgIGNsZWFyOiBub25lO1xuICB9XG4gIC5tZWRpdW0tdXAtMiA+IC5jb2x1bW46bnRoLW9mLXR5cGUoMm4rMSksIC5tZWRpdW0tdXAtMiA+IC5jb2x1bW5zOm50aC1vZi10eXBlKDJuKzEpIHtcbiAgICBjbGVhcjogYm90aDtcbiAgfVxuICAubWVkaXVtLXVwLTIgPiAuY29sdW1uOmxhc3QtY2hpbGQsIC5tZWRpdW0tdXAtMiA+IC5jb2x1bW5zOmxhc3QtY2hpbGQge1xuICAgIGZsb2F0OiBsZWZ0O1xuICB9XG4gIC5tZWRpdW0tdXAtMyA+IC5jb2x1bW4sIC5tZWRpdW0tdXAtMyA+IC5jb2x1bW5zIHtcbiAgICBmbG9hdDogbGVmdDtcbiAgICB3aWR0aDogMzMuMzMzMzMlO1xuICB9XG4gIC5tZWRpdW0tdXAtMyA+IC5jb2x1bW46bnRoLW9mLXR5cGUoMW4pLCAubWVkaXVtLXVwLTMgPiAuY29sdW1uczpudGgtb2YtdHlwZSgxbikge1xuICAgIGNsZWFyOiBub25lO1xuICB9XG4gIC5tZWRpdW0tdXAtMyA+IC5jb2x1bW46bnRoLW9mLXR5cGUoM24rMSksIC5tZWRpdW0tdXAtMyA+IC5jb2x1bW5zOm50aC1vZi10eXBlKDNuKzEpIHtcbiAgICBjbGVhcjogYm90aDtcbiAgfVxuICAubWVkaXVtLXVwLTMgPiAuY29sdW1uOmxhc3QtY2hpbGQsIC5tZWRpdW0tdXAtMyA+IC5jb2x1bW5zOmxhc3QtY2hpbGQge1xuICAgIGZsb2F0OiBsZWZ0O1xuICB9XG4gIC5tZWRpdW0tdXAtNCA+IC5jb2x1bW4sIC5tZWRpdW0tdXAtNCA+IC5jb2x1bW5zIHtcbiAgICBmbG9hdDogbGVmdDtcbiAgICB3aWR0aDogMjUlO1xuICB9XG4gIC5tZWRpdW0tdXAtNCA+IC5jb2x1bW46bnRoLW9mLXR5cGUoMW4pLCAubWVkaXVtLXVwLTQgPiAuY29sdW1uczpudGgtb2YtdHlwZSgxbikge1xuICAgIGNsZWFyOiBub25lO1xuICB9XG4gIC5tZWRpdW0tdXAtNCA+IC5jb2x1bW46bnRoLW9mLXR5cGUoNG4rMSksIC5tZWRpdW0tdXAtNCA+IC5jb2x1bW5zOm50aC1vZi10eXBlKDRuKzEpIHtcbiAgICBjbGVhcjogYm90aDtcbiAgfVxuICAubWVkaXVtLXVwLTQgPiAuY29sdW1uOmxhc3QtY2hpbGQsIC5tZWRpdW0tdXAtNCA+IC5jb2x1bW5zOmxhc3QtY2hpbGQge1xuICAgIGZsb2F0OiBsZWZ0O1xuICB9XG4gIC5tZWRpdW0tdXAtNSA+IC5jb2x1bW4sIC5tZWRpdW0tdXAtNSA+IC5jb2x1bW5zIHtcbiAgICBmbG9hdDogbGVmdDtcbiAgICB3aWR0aDogMjAlO1xuICB9XG4gIC5tZWRpdW0tdXAtNSA+IC5jb2x1bW46bnRoLW9mLXR5cGUoMW4pLCAubWVkaXVtLXVwLTUgPiAuY29sdW1uczpudGgtb2YtdHlwZSgxbikge1xuICAgIGNsZWFyOiBub25lO1xuICB9XG4gIC5tZWRpdW0tdXAtNSA+IC5jb2x1bW46bnRoLW9mLXR5cGUoNW4rMSksIC5tZWRpdW0tdXAtNSA+IC5jb2x1bW5zOm50aC1vZi10eXBlKDVuKzEpIHtcbiAgICBjbGVhcjogYm90aDtcbiAgfVxuICAubWVkaXVtLXVwLTUgPiAuY29sdW1uOmxhc3QtY2hpbGQsIC5tZWRpdW0tdXAtNSA+IC5jb2x1bW5zOmxhc3QtY2hpbGQge1xuICAgIGZsb2F0OiBsZWZ0O1xuICB9XG4gIC5tZWRpdW0tdXAtNiA+IC5jb2x1bW4sIC5tZWRpdW0tdXAtNiA+IC5jb2x1bW5zIHtcbiAgICBmbG9hdDogbGVmdDtcbiAgICB3aWR0aDogMTYuNjY2NjclO1xuICB9XG4gIC5tZWRpdW0tdXAtNiA+IC5jb2x1bW46bnRoLW9mLXR5cGUoMW4pLCAubWVkaXVtLXVwLTYgPiAuY29sdW1uczpudGgtb2YtdHlwZSgxbikge1xuICAgIGNsZWFyOiBub25lO1xuICB9XG4gIC5tZWRpdW0tdXAtNiA+IC5jb2x1bW46bnRoLW9mLXR5cGUoNm4rMSksIC5tZWRpdW0tdXAtNiA+IC5jb2x1bW5zOm50aC1vZi10eXBlKDZuKzEpIHtcbiAgICBjbGVhcjogYm90aDtcbiAgfVxuICAubWVkaXVtLXVwLTYgPiAuY29sdW1uOmxhc3QtY2hpbGQsIC5tZWRpdW0tdXAtNiA+IC5jb2x1bW5zOmxhc3QtY2hpbGQge1xuICAgIGZsb2F0OiBsZWZ0O1xuICB9XG4gIC5tZWRpdW0tdXAtNyA+IC5jb2x1bW4sIC5tZWRpdW0tdXAtNyA+IC5jb2x1bW5zIHtcbiAgICBmbG9hdDogbGVmdDtcbiAgICB3aWR0aDogMTQuMjg1NzElO1xuICB9XG4gIC5tZWRpdW0tdXAtNyA+IC5jb2x1bW46bnRoLW9mLXR5cGUoMW4pLCAubWVkaXVtLXVwLTcgPiAuY29sdW1uczpudGgtb2YtdHlwZSgxbikge1xuICAgIGNsZWFyOiBub25lO1xuICB9XG4gIC5tZWRpdW0tdXAtNyA+IC5jb2x1bW46bnRoLW9mLXR5cGUoN24rMSksIC5tZWRpdW0tdXAtNyA+IC5jb2x1bW5zOm50aC1vZi10eXBlKDduKzEpIHtcbiAgICBjbGVhcjogYm90aDtcbiAgfVxuICAubWVkaXVtLXVwLTcgPiAuY29sdW1uOmxhc3QtY2hpbGQsIC5tZWRpdW0tdXAtNyA+IC5jb2x1bW5zOmxhc3QtY2hpbGQge1xuICAgIGZsb2F0OiBsZWZ0O1xuICB9XG4gIC5tZWRpdW0tdXAtOCA+IC5jb2x1bW4sIC5tZWRpdW0tdXAtOCA+IC5jb2x1bW5zIHtcbiAgICBmbG9hdDogbGVmdDtcbiAgICB3aWR0aDogMTIuNSU7XG4gIH1cbiAgLm1lZGl1bS11cC04ID4gLmNvbHVtbjpudGgtb2YtdHlwZSgxbiksIC5tZWRpdW0tdXAtOCA+IC5jb2x1bW5zOm50aC1vZi10eXBlKDFuKSB7XG4gICAgY2xlYXI6IG5vbmU7XG4gIH1cbiAgLm1lZGl1bS11cC04ID4gLmNvbHVtbjpudGgtb2YtdHlwZSg4bisxKSwgLm1lZGl1bS11cC04ID4gLmNvbHVtbnM6bnRoLW9mLXR5cGUoOG4rMSkge1xuICAgIGNsZWFyOiBib3RoO1xuICB9XG4gIC5tZWRpdW0tdXAtOCA+IC5jb2x1bW46bGFzdC1jaGlsZCwgLm1lZGl1bS11cC04ID4gLmNvbHVtbnM6bGFzdC1jaGlsZCB7XG4gICAgZmxvYXQ6IGxlZnQ7XG4gIH1cbiAgLm1lZGl1bS11cC05ID4gLmNvbHVtbiwgLm1lZGl1bS11cC05ID4gLmNvbHVtbnMge1xuICAgIGZsb2F0OiBsZWZ0O1xuICAgIHdpZHRoOiAxMS4xMTExMSU7XG4gIH1cbiAgLm1lZGl1bS11cC05ID4gLmNvbHVtbjpudGgtb2YtdHlwZSgxbiksIC5tZWRpdW0tdXAtOSA+IC5jb2x1bW5zOm50aC1vZi10eXBlKDFuKSB7XG4gICAgY2xlYXI6IG5vbmU7XG4gIH1cbiAgLm1lZGl1bS11cC05ID4gLmNvbHVtbjpudGgtb2YtdHlwZSg5bisxKSwgLm1lZGl1bS11cC05ID4gLmNvbHVtbnM6bnRoLW9mLXR5cGUoOW4rMSkge1xuICAgIGNsZWFyOiBib3RoO1xuICB9XG4gIC5tZWRpdW0tdXAtOSA+IC5jb2x1bW46bGFzdC1jaGlsZCwgLm1lZGl1bS11cC05ID4gLmNvbHVtbnM6bGFzdC1jaGlsZCB7XG4gICAgZmxvYXQ6IGxlZnQ7XG4gIH1cbiAgLm1lZGl1bS11cC0xMCA+IC5jb2x1bW4sIC5tZWRpdW0tdXAtMTAgPiAuY29sdW1ucyB7XG4gICAgZmxvYXQ6IGxlZnQ7XG4gICAgd2lkdGg6IDEwJTtcbiAgfVxuICAubWVkaXVtLXVwLTEwID4gLmNvbHVtbjpudGgtb2YtdHlwZSgxbiksIC5tZWRpdW0tdXAtMTAgPiAuY29sdW1uczpudGgtb2YtdHlwZSgxbikge1xuICAgIGNsZWFyOiBub25lO1xuICB9XG4gIC5tZWRpdW0tdXAtMTAgPiAuY29sdW1uOm50aC1vZi10eXBlKDEwbisxKSwgLm1lZGl1bS11cC0xMCA+IC5jb2x1bW5zOm50aC1vZi10eXBlKDEwbisxKSB7XG4gICAgY2xlYXI6IGJvdGg7XG4gIH1cbiAgLm1lZGl1bS11cC0xMCA+IC5jb2x1bW46bGFzdC1jaGlsZCwgLm1lZGl1bS11cC0xMCA+IC5jb2x1bW5zOmxhc3QtY2hpbGQge1xuICAgIGZsb2F0OiBsZWZ0O1xuICB9XG4gIC5tZWRpdW0tdXAtMTEgPiAuY29sdW1uLCAubWVkaXVtLXVwLTExID4gLmNvbHVtbnMge1xuICAgIGZsb2F0OiBsZWZ0O1xuICAgIHdpZHRoOiA5LjA5MDkxJTtcbiAgfVxuICAubWVkaXVtLXVwLTExID4gLmNvbHVtbjpudGgtb2YtdHlwZSgxbiksIC5tZWRpdW0tdXAtMTEgPiAuY29sdW1uczpudGgtb2YtdHlwZSgxbikge1xuICAgIGNsZWFyOiBub25lO1xuICB9XG4gIC5tZWRpdW0tdXAtMTEgPiAuY29sdW1uOm50aC1vZi10eXBlKDExbisxKSwgLm1lZGl1bS11cC0xMSA+IC5jb2x1bW5zOm50aC1vZi10eXBlKDExbisxKSB7XG4gICAgY2xlYXI6IGJvdGg7XG4gIH1cbiAgLm1lZGl1bS11cC0xMSA+IC5jb2x1bW46bGFzdC1jaGlsZCwgLm1lZGl1bS11cC0xMSA+IC5jb2x1bW5zOmxhc3QtY2hpbGQge1xuICAgIGZsb2F0OiBsZWZ0O1xuICB9XG4gIC5tZWRpdW0tdXAtMTIgPiAuY29sdW1uLCAubWVkaXVtLXVwLTEyID4gLmNvbHVtbnMge1xuICAgIGZsb2F0OiBsZWZ0O1xuICAgIHdpZHRoOiA4LjMzMzMzJTtcbiAgfVxuICAubWVkaXVtLXVwLTEyID4gLmNvbHVtbjpudGgtb2YtdHlwZSgxbiksIC5tZWRpdW0tdXAtMTIgPiAuY29sdW1uczpudGgtb2YtdHlwZSgxbikge1xuICAgIGNsZWFyOiBub25lO1xuICB9XG4gIC5tZWRpdW0tdXAtMTIgPiAuY29sdW1uOm50aC1vZi10eXBlKDEybisxKSwgLm1lZGl1bS11cC0xMiA+IC5jb2x1bW5zOm50aC1vZi10eXBlKDEybisxKSB7XG4gICAgY2xlYXI6IGJvdGg7XG4gIH1cbiAgLm1lZGl1bS11cC0xMiA+IC5jb2x1bW46bGFzdC1jaGlsZCwgLm1lZGl1bS11cC0xMiA+IC5jb2x1bW5zOmxhc3QtY2hpbGQge1xuICAgIGZsb2F0OiBsZWZ0O1xuICB9XG4gIC5tZWRpdW0tY29sbGFwc2UgPiAuY29sdW1uLCAubWVkaXVtLWNvbGxhcHNlID4gLmNvbHVtbnMge1xuICAgIHBhZGRpbmctcmlnaHQ6IDA7XG4gICAgcGFkZGluZy1sZWZ0OiAwO1xuICB9XG4gIC5tZWRpdW0tY29sbGFwc2UgLnJvdyB7XG4gICAgbWFyZ2luLXJpZ2h0OiAwO1xuICAgIG1hcmdpbi1sZWZ0OiAwO1xuICB9XG4gIC5leHBhbmRlZC5yb3cgLm1lZGl1bS1jb2xsYXBzZS5yb3cge1xuICAgIG1hcmdpbi1yaWdodDogMDtcbiAgICBtYXJnaW4tbGVmdDogMDtcbiAgfVxuICAubWVkaXVtLXVuY29sbGFwc2UgPiAuY29sdW1uLCAubWVkaXVtLXVuY29sbGFwc2UgPiAuY29sdW1ucyB7XG4gICAgcGFkZGluZy1yaWdodDogMC41NzE0M3JlbTtcbiAgICBwYWRkaW5nLWxlZnQ6IDAuNTcxNDNyZW07XG4gIH1cbiAgLm1lZGl1bS1jZW50ZXJlZCB7XG4gICAgbWFyZ2luLXJpZ2h0OiBhdXRvO1xuICAgIG1hcmdpbi1sZWZ0OiBhdXRvO1xuICB9XG4gIC5tZWRpdW0tY2VudGVyZWQsIC5tZWRpdW0tY2VudGVyZWQ6bGFzdC1jaGlsZDpub3QoOmZpcnN0LWNoaWxkKSB7XG4gICAgZmxvYXQ6IG5vbmU7XG4gICAgY2xlYXI6IGJvdGg7XG4gIH1cbiAgLm1lZGl1bS11bmNlbnRlcmVkLFxuICAubWVkaXVtLXB1c2gtMCxcbiAgLm1lZGl1bS1wdWxsLTAge1xuICAgIHBvc2l0aW9uOiBzdGF0aWM7XG4gICAgZmxvYXQ6IGxlZnQ7XG4gICAgbWFyZ2luLXJpZ2h0OiAwO1xuICAgIG1hcmdpbi1sZWZ0OiAwO1xuICB9XG59XG5cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gIC5sYXJnZS0xIHtcbiAgICB3aWR0aDogOC4zMzMzMyU7XG4gIH1cbiAgLmxhcmdlLXB1c2gtMSB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIGxlZnQ6IDguMzMzMzMlO1xuICB9XG4gIC5sYXJnZS1wdWxsLTEge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICBsZWZ0OiAtOC4zMzMzMyU7XG4gIH1cbiAgLmxhcmdlLW9mZnNldC0wIHtcbiAgICBtYXJnaW4tbGVmdDogMCU7XG4gIH1cbiAgLmxhcmdlLTIge1xuICAgIHdpZHRoOiAxNi42NjY2NyU7XG4gIH1cbiAgLmxhcmdlLXB1c2gtMiB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIGxlZnQ6IDE2LjY2NjY3JTtcbiAgfVxuICAubGFyZ2UtcHVsbC0yIHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgbGVmdDogLTE2LjY2NjY3JTtcbiAgfVxuICAubGFyZ2Utb2Zmc2V0LTEge1xuICAgIG1hcmdpbi1sZWZ0OiA4LjMzMzMzJTtcbiAgfVxuICAubGFyZ2UtMyB7XG4gICAgd2lkdGg6IDI1JTtcbiAgfVxuICAubGFyZ2UtcHVzaC0zIHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgbGVmdDogMjUlO1xuICB9XG4gIC5sYXJnZS1wdWxsLTMge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICBsZWZ0OiAtMjUlO1xuICB9XG4gIC5sYXJnZS1vZmZzZXQtMiB7XG4gICAgbWFyZ2luLWxlZnQ6IDE2LjY2NjY3JTtcbiAgfVxuICAubGFyZ2UtNCB7XG4gICAgd2lkdGg6IDMzLjMzMzMzJTtcbiAgfVxuICAubGFyZ2UtcHVzaC00IHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgbGVmdDogMzMuMzMzMzMlO1xuICB9XG4gIC5sYXJnZS1wdWxsLTQge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICBsZWZ0OiAtMzMuMzMzMzMlO1xuICB9XG4gIC5sYXJnZS1vZmZzZXQtMyB7XG4gICAgbWFyZ2luLWxlZnQ6IDI1JTtcbiAgfVxuICAubGFyZ2UtNSB7XG4gICAgd2lkdGg6IDQxLjY2NjY3JTtcbiAgfVxuICAubGFyZ2UtcHVzaC01IHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgbGVmdDogNDEuNjY2NjclO1xuICB9XG4gIC5sYXJnZS1wdWxsLTUge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICBsZWZ0OiAtNDEuNjY2NjclO1xuICB9XG4gIC5sYXJnZS1vZmZzZXQtNCB7XG4gICAgbWFyZ2luLWxlZnQ6IDMzLjMzMzMzJTtcbiAgfVxuICAubGFyZ2UtNiB7XG4gICAgd2lkdGg6IDUwJTtcbiAgfVxuICAubGFyZ2UtcHVzaC02IHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgbGVmdDogNTAlO1xuICB9XG4gIC5sYXJnZS1wdWxsLTYge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICBsZWZ0OiAtNTAlO1xuICB9XG4gIC5sYXJnZS1vZmZzZXQtNSB7XG4gICAgbWFyZ2luLWxlZnQ6IDQxLjY2NjY3JTtcbiAgfVxuICAubGFyZ2UtNyB7XG4gICAgd2lkdGg6IDU4LjMzMzMzJTtcbiAgfVxuICAubGFyZ2UtcHVzaC03IHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgbGVmdDogNTguMzMzMzMlO1xuICB9XG4gIC5sYXJnZS1wdWxsLTcge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICBsZWZ0OiAtNTguMzMzMzMlO1xuICB9XG4gIC5sYXJnZS1vZmZzZXQtNiB7XG4gICAgbWFyZ2luLWxlZnQ6IDUwJTtcbiAgfVxuICAubGFyZ2UtOCB7XG4gICAgd2lkdGg6IDY2LjY2NjY3JTtcbiAgfVxuICAubGFyZ2UtcHVzaC04IHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgbGVmdDogNjYuNjY2NjclO1xuICB9XG4gIC5sYXJnZS1wdWxsLTgge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICBsZWZ0OiAtNjYuNjY2NjclO1xuICB9XG4gIC5sYXJnZS1vZmZzZXQtNyB7XG4gICAgbWFyZ2luLWxlZnQ6IDU4LjMzMzMzJTtcbiAgfVxuICAubGFyZ2UtOSB7XG4gICAgd2lkdGg6IDc1JTtcbiAgfVxuICAubGFyZ2UtcHVzaC05IHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgbGVmdDogNzUlO1xuICB9XG4gIC5sYXJnZS1wdWxsLTkge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICBsZWZ0OiAtNzUlO1xuICB9XG4gIC5sYXJnZS1vZmZzZXQtOCB7XG4gICAgbWFyZ2luLWxlZnQ6IDY2LjY2NjY3JTtcbiAgfVxuICAubGFyZ2UtMTAge1xuICAgIHdpZHRoOiA4My4zMzMzMyU7XG4gIH1cbiAgLmxhcmdlLXB1c2gtMTAge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICBsZWZ0OiA4My4zMzMzMyU7XG4gIH1cbiAgLmxhcmdlLXB1bGwtMTAge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICBsZWZ0OiAtODMuMzMzMzMlO1xuICB9XG4gIC5sYXJnZS1vZmZzZXQtOSB7XG4gICAgbWFyZ2luLWxlZnQ6IDc1JTtcbiAgfVxuICAubGFyZ2UtMTEge1xuICAgIHdpZHRoOiA5MS42NjY2NyU7XG4gIH1cbiAgLmxhcmdlLXB1c2gtMTEge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICBsZWZ0OiA5MS42NjY2NyU7XG4gIH1cbiAgLmxhcmdlLXB1bGwtMTEge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICBsZWZ0OiAtOTEuNjY2NjclO1xuICB9XG4gIC5sYXJnZS1vZmZzZXQtMTAge1xuICAgIG1hcmdpbi1sZWZ0OiA4My4zMzMzMyU7XG4gIH1cbiAgLmxhcmdlLTEyIHtcbiAgICB3aWR0aDogMTAwJTtcbiAgfVxuICAubGFyZ2Utb2Zmc2V0LTExIHtcbiAgICBtYXJnaW4tbGVmdDogOTEuNjY2NjclO1xuICB9XG4gIC5sYXJnZS11cC0xID4gLmNvbHVtbiwgLmxhcmdlLXVwLTEgPiAuY29sdW1ucyB7XG4gICAgZmxvYXQ6IGxlZnQ7XG4gICAgd2lkdGg6IDEwMCU7XG4gIH1cbiAgLmxhcmdlLXVwLTEgPiAuY29sdW1uOm50aC1vZi10eXBlKDFuKSwgLmxhcmdlLXVwLTEgPiAuY29sdW1uczpudGgtb2YtdHlwZSgxbikge1xuICAgIGNsZWFyOiBub25lO1xuICB9XG4gIC5sYXJnZS11cC0xID4gLmNvbHVtbjpudGgtb2YtdHlwZSgxbisxKSwgLmxhcmdlLXVwLTEgPiAuY29sdW1uczpudGgtb2YtdHlwZSgxbisxKSB7XG4gICAgY2xlYXI6IGJvdGg7XG4gIH1cbiAgLmxhcmdlLXVwLTEgPiAuY29sdW1uOmxhc3QtY2hpbGQsIC5sYXJnZS11cC0xID4gLmNvbHVtbnM6bGFzdC1jaGlsZCB7XG4gICAgZmxvYXQ6IGxlZnQ7XG4gIH1cbiAgLmxhcmdlLXVwLTIgPiAuY29sdW1uLCAubGFyZ2UtdXAtMiA+IC5jb2x1bW5zIHtcbiAgICBmbG9hdDogbGVmdDtcbiAgICB3aWR0aDogNTAlO1xuICB9XG4gIC5sYXJnZS11cC0yID4gLmNvbHVtbjpudGgtb2YtdHlwZSgxbiksIC5sYXJnZS11cC0yID4gLmNvbHVtbnM6bnRoLW9mLXR5cGUoMW4pIHtcbiAgICBjbGVhcjogbm9uZTtcbiAgfVxuICAubGFyZ2UtdXAtMiA+IC5jb2x1bW46bnRoLW9mLXR5cGUoMm4rMSksIC5sYXJnZS11cC0yID4gLmNvbHVtbnM6bnRoLW9mLXR5cGUoMm4rMSkge1xuICAgIGNsZWFyOiBib3RoO1xuICB9XG4gIC5sYXJnZS11cC0yID4gLmNvbHVtbjpsYXN0LWNoaWxkLCAubGFyZ2UtdXAtMiA+IC5jb2x1bW5zOmxhc3QtY2hpbGQge1xuICAgIGZsb2F0OiBsZWZ0O1xuICB9XG4gIC5sYXJnZS11cC0zID4gLmNvbHVtbiwgLmxhcmdlLXVwLTMgPiAuY29sdW1ucyB7XG4gICAgZmxvYXQ6IGxlZnQ7XG4gICAgd2lkdGg6IDMzLjMzMzMzJTtcbiAgfVxuICAubGFyZ2UtdXAtMyA+IC5jb2x1bW46bnRoLW9mLXR5cGUoMW4pLCAubGFyZ2UtdXAtMyA+IC5jb2x1bW5zOm50aC1vZi10eXBlKDFuKSB7XG4gICAgY2xlYXI6IG5vbmU7XG4gIH1cbiAgLmxhcmdlLXVwLTMgPiAuY29sdW1uOm50aC1vZi10eXBlKDNuKzEpLCAubGFyZ2UtdXAtMyA+IC5jb2x1bW5zOm50aC1vZi10eXBlKDNuKzEpIHtcbiAgICBjbGVhcjogYm90aDtcbiAgfVxuICAubGFyZ2UtdXAtMyA+IC5jb2x1bW46bGFzdC1jaGlsZCwgLmxhcmdlLXVwLTMgPiAuY29sdW1uczpsYXN0LWNoaWxkIHtcbiAgICBmbG9hdDogbGVmdDtcbiAgfVxuICAubGFyZ2UtdXAtNCA+IC5jb2x1bW4sIC5sYXJnZS11cC00ID4gLmNvbHVtbnMge1xuICAgIGZsb2F0OiBsZWZ0O1xuICAgIHdpZHRoOiAyNSU7XG4gIH1cbiAgLmxhcmdlLXVwLTQgPiAuY29sdW1uOm50aC1vZi10eXBlKDFuKSwgLmxhcmdlLXVwLTQgPiAuY29sdW1uczpudGgtb2YtdHlwZSgxbikge1xuICAgIGNsZWFyOiBub25lO1xuICB9XG4gIC5sYXJnZS11cC00ID4gLmNvbHVtbjpudGgtb2YtdHlwZSg0bisxKSwgLmxhcmdlLXVwLTQgPiAuY29sdW1uczpudGgtb2YtdHlwZSg0bisxKSB7XG4gICAgY2xlYXI6IGJvdGg7XG4gIH1cbiAgLmxhcmdlLXVwLTQgPiAuY29sdW1uOmxhc3QtY2hpbGQsIC5sYXJnZS11cC00ID4gLmNvbHVtbnM6bGFzdC1jaGlsZCB7XG4gICAgZmxvYXQ6IGxlZnQ7XG4gIH1cbiAgLmxhcmdlLXVwLTUgPiAuY29sdW1uLCAubGFyZ2UtdXAtNSA+IC5jb2x1bW5zIHtcbiAgICBmbG9hdDogbGVmdDtcbiAgICB3aWR0aDogMjAlO1xuICB9XG4gIC5sYXJnZS11cC01ID4gLmNvbHVtbjpudGgtb2YtdHlwZSgxbiksIC5sYXJnZS11cC01ID4gLmNvbHVtbnM6bnRoLW9mLXR5cGUoMW4pIHtcbiAgICBjbGVhcjogbm9uZTtcbiAgfVxuICAubGFyZ2UtdXAtNSA+IC5jb2x1bW46bnRoLW9mLXR5cGUoNW4rMSksIC5sYXJnZS11cC01ID4gLmNvbHVtbnM6bnRoLW9mLXR5cGUoNW4rMSkge1xuICAgIGNsZWFyOiBib3RoO1xuICB9XG4gIC5sYXJnZS11cC01ID4gLmNvbHVtbjpsYXN0LWNoaWxkLCAubGFyZ2UtdXAtNSA+IC5jb2x1bW5zOmxhc3QtY2hpbGQge1xuICAgIGZsb2F0OiBsZWZ0O1xuICB9XG4gIC5sYXJnZS11cC02ID4gLmNvbHVtbiwgLmxhcmdlLXVwLTYgPiAuY29sdW1ucyB7XG4gICAgZmxvYXQ6IGxlZnQ7XG4gICAgd2lkdGg6IDE2LjY2NjY3JTtcbiAgfVxuICAubGFyZ2UtdXAtNiA+IC5jb2x1bW46bnRoLW9mLXR5cGUoMW4pLCAubGFyZ2UtdXAtNiA+IC5jb2x1bW5zOm50aC1vZi10eXBlKDFuKSB7XG4gICAgY2xlYXI6IG5vbmU7XG4gIH1cbiAgLmxhcmdlLXVwLTYgPiAuY29sdW1uOm50aC1vZi10eXBlKDZuKzEpLCAubGFyZ2UtdXAtNiA+IC5jb2x1bW5zOm50aC1vZi10eXBlKDZuKzEpIHtcbiAgICBjbGVhcjogYm90aDtcbiAgfVxuICAubGFyZ2UtdXAtNiA+IC5jb2x1bW46bGFzdC1jaGlsZCwgLmxhcmdlLXVwLTYgPiAuY29sdW1uczpsYXN0LWNoaWxkIHtcbiAgICBmbG9hdDogbGVmdDtcbiAgfVxuICAubGFyZ2UtdXAtNyA+IC5jb2x1bW4sIC5sYXJnZS11cC03ID4gLmNvbHVtbnMge1xuICAgIGZsb2F0OiBsZWZ0O1xuICAgIHdpZHRoOiAxNC4yODU3MSU7XG4gIH1cbiAgLmxhcmdlLXVwLTcgPiAuY29sdW1uOm50aC1vZi10eXBlKDFuKSwgLmxhcmdlLXVwLTcgPiAuY29sdW1uczpudGgtb2YtdHlwZSgxbikge1xuICAgIGNsZWFyOiBub25lO1xuICB9XG4gIC5sYXJnZS11cC03ID4gLmNvbHVtbjpudGgtb2YtdHlwZSg3bisxKSwgLmxhcmdlLXVwLTcgPiAuY29sdW1uczpudGgtb2YtdHlwZSg3bisxKSB7XG4gICAgY2xlYXI6IGJvdGg7XG4gIH1cbiAgLmxhcmdlLXVwLTcgPiAuY29sdW1uOmxhc3QtY2hpbGQsIC5sYXJnZS11cC03ID4gLmNvbHVtbnM6bGFzdC1jaGlsZCB7XG4gICAgZmxvYXQ6IGxlZnQ7XG4gIH1cbiAgLmxhcmdlLXVwLTggPiAuY29sdW1uLCAubGFyZ2UtdXAtOCA+IC5jb2x1bW5zIHtcbiAgICBmbG9hdDogbGVmdDtcbiAgICB3aWR0aDogMTIuNSU7XG4gIH1cbiAgLmxhcmdlLXVwLTggPiAuY29sdW1uOm50aC1vZi10eXBlKDFuKSwgLmxhcmdlLXVwLTggPiAuY29sdW1uczpudGgtb2YtdHlwZSgxbikge1xuICAgIGNsZWFyOiBub25lO1xuICB9XG4gIC5sYXJnZS11cC04ID4gLmNvbHVtbjpudGgtb2YtdHlwZSg4bisxKSwgLmxhcmdlLXVwLTggPiAuY29sdW1uczpudGgtb2YtdHlwZSg4bisxKSB7XG4gICAgY2xlYXI6IGJvdGg7XG4gIH1cbiAgLmxhcmdlLXVwLTggPiAuY29sdW1uOmxhc3QtY2hpbGQsIC5sYXJnZS11cC04ID4gLmNvbHVtbnM6bGFzdC1jaGlsZCB7XG4gICAgZmxvYXQ6IGxlZnQ7XG4gIH1cbiAgLmxhcmdlLXVwLTkgPiAuY29sdW1uLCAubGFyZ2UtdXAtOSA+IC5jb2x1bW5zIHtcbiAgICBmbG9hdDogbGVmdDtcbiAgICB3aWR0aDogMTEuMTExMTElO1xuICB9XG4gIC5sYXJnZS11cC05ID4gLmNvbHVtbjpudGgtb2YtdHlwZSgxbiksIC5sYXJnZS11cC05ID4gLmNvbHVtbnM6bnRoLW9mLXR5cGUoMW4pIHtcbiAgICBjbGVhcjogbm9uZTtcbiAgfVxuICAubGFyZ2UtdXAtOSA+IC5jb2x1bW46bnRoLW9mLXR5cGUoOW4rMSksIC5sYXJnZS11cC05ID4gLmNvbHVtbnM6bnRoLW9mLXR5cGUoOW4rMSkge1xuICAgIGNsZWFyOiBib3RoO1xuICB9XG4gIC5sYXJnZS11cC05ID4gLmNvbHVtbjpsYXN0LWNoaWxkLCAubGFyZ2UtdXAtOSA+IC5jb2x1bW5zOmxhc3QtY2hpbGQge1xuICAgIGZsb2F0OiBsZWZ0O1xuICB9XG4gIC5sYXJnZS11cC0xMCA+IC5jb2x1bW4sIC5sYXJnZS11cC0xMCA+IC5jb2x1bW5zIHtcbiAgICBmbG9hdDogbGVmdDtcbiAgICB3aWR0aDogMTAlO1xuICB9XG4gIC5sYXJnZS11cC0xMCA+IC5jb2x1bW46bnRoLW9mLXR5cGUoMW4pLCAubGFyZ2UtdXAtMTAgPiAuY29sdW1uczpudGgtb2YtdHlwZSgxbikge1xuICAgIGNsZWFyOiBub25lO1xuICB9XG4gIC5sYXJnZS11cC0xMCA+IC5jb2x1bW46bnRoLW9mLXR5cGUoMTBuKzEpLCAubGFyZ2UtdXAtMTAgPiAuY29sdW1uczpudGgtb2YtdHlwZSgxMG4rMSkge1xuICAgIGNsZWFyOiBib3RoO1xuICB9XG4gIC5sYXJnZS11cC0xMCA+IC5jb2x1bW46bGFzdC1jaGlsZCwgLmxhcmdlLXVwLTEwID4gLmNvbHVtbnM6bGFzdC1jaGlsZCB7XG4gICAgZmxvYXQ6IGxlZnQ7XG4gIH1cbiAgLmxhcmdlLXVwLTExID4gLmNvbHVtbiwgLmxhcmdlLXVwLTExID4gLmNvbHVtbnMge1xuICAgIGZsb2F0OiBsZWZ0O1xuICAgIHdpZHRoOiA5LjA5MDkxJTtcbiAgfVxuICAubGFyZ2UtdXAtMTEgPiAuY29sdW1uOm50aC1vZi10eXBlKDFuKSwgLmxhcmdlLXVwLTExID4gLmNvbHVtbnM6bnRoLW9mLXR5cGUoMW4pIHtcbiAgICBjbGVhcjogbm9uZTtcbiAgfVxuICAubGFyZ2UtdXAtMTEgPiAuY29sdW1uOm50aC1vZi10eXBlKDExbisxKSwgLmxhcmdlLXVwLTExID4gLmNvbHVtbnM6bnRoLW9mLXR5cGUoMTFuKzEpIHtcbiAgICBjbGVhcjogYm90aDtcbiAgfVxuICAubGFyZ2UtdXAtMTEgPiAuY29sdW1uOmxhc3QtY2hpbGQsIC5sYXJnZS11cC0xMSA+IC5jb2x1bW5zOmxhc3QtY2hpbGQge1xuICAgIGZsb2F0OiBsZWZ0O1xuICB9XG4gIC5sYXJnZS11cC0xMiA+IC5jb2x1bW4sIC5sYXJnZS11cC0xMiA+IC5jb2x1bW5zIHtcbiAgICBmbG9hdDogbGVmdDtcbiAgICB3aWR0aDogOC4zMzMzMyU7XG4gIH1cbiAgLmxhcmdlLXVwLTEyID4gLmNvbHVtbjpudGgtb2YtdHlwZSgxbiksIC5sYXJnZS11cC0xMiA+IC5jb2x1bW5zOm50aC1vZi10eXBlKDFuKSB7XG4gICAgY2xlYXI6IG5vbmU7XG4gIH1cbiAgLmxhcmdlLXVwLTEyID4gLmNvbHVtbjpudGgtb2YtdHlwZSgxMm4rMSksIC5sYXJnZS11cC0xMiA+IC5jb2x1bW5zOm50aC1vZi10eXBlKDEybisxKSB7XG4gICAgY2xlYXI6IGJvdGg7XG4gIH1cbiAgLmxhcmdlLXVwLTEyID4gLmNvbHVtbjpsYXN0LWNoaWxkLCAubGFyZ2UtdXAtMTIgPiAuY29sdW1uczpsYXN0LWNoaWxkIHtcbiAgICBmbG9hdDogbGVmdDtcbiAgfVxuICAubGFyZ2UtY29sbGFwc2UgPiAuY29sdW1uLCAubGFyZ2UtY29sbGFwc2UgPiAuY29sdW1ucyB7XG4gICAgcGFkZGluZy1yaWdodDogMDtcbiAgICBwYWRkaW5nLWxlZnQ6IDA7XG4gIH1cbiAgLmxhcmdlLWNvbGxhcHNlIC5yb3cge1xuICAgIG1hcmdpbi1yaWdodDogMDtcbiAgICBtYXJnaW4tbGVmdDogMDtcbiAgfVxuICAuZXhwYW5kZWQucm93IC5sYXJnZS1jb2xsYXBzZS5yb3cge1xuICAgIG1hcmdpbi1yaWdodDogMDtcbiAgICBtYXJnaW4tbGVmdDogMDtcbiAgfVxuICAubGFyZ2UtdW5jb2xsYXBzZSA+IC5jb2x1bW4sIC5sYXJnZS11bmNvbGxhcHNlID4gLmNvbHVtbnMge1xuICAgIHBhZGRpbmctcmlnaHQ6IDAuNTcxNDNyZW07XG4gICAgcGFkZGluZy1sZWZ0OiAwLjU3MTQzcmVtO1xuICB9XG4gIC5sYXJnZS1jZW50ZXJlZCB7XG4gICAgbWFyZ2luLXJpZ2h0OiBhdXRvO1xuICAgIG1hcmdpbi1sZWZ0OiBhdXRvO1xuICB9XG4gIC5sYXJnZS1jZW50ZXJlZCwgLmxhcmdlLWNlbnRlcmVkOmxhc3QtY2hpbGQ6bm90KDpmaXJzdC1jaGlsZCkge1xuICAgIGZsb2F0OiBub25lO1xuICAgIGNsZWFyOiBib3RoO1xuICB9XG4gIC5sYXJnZS11bmNlbnRlcmVkLFxuICAubGFyZ2UtcHVzaC0wLFxuICAubGFyZ2UtcHVsbC0wIHtcbiAgICBwb3NpdGlvbjogc3RhdGljO1xuICAgIGZsb2F0OiBsZWZ0O1xuICAgIG1hcmdpbi1yaWdodDogMDtcbiAgICBtYXJnaW4tbGVmdDogMDtcbiAgfVxufVxuXG5AbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA3NWVtKSB7XG4gIC54bGFyZ2UtMSB7XG4gICAgd2lkdGg6IDguMzMzMzMlO1xuICB9XG4gIC54bGFyZ2UtcHVzaC0xIHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgbGVmdDogOC4zMzMzMyU7XG4gIH1cbiAgLnhsYXJnZS1wdWxsLTEge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICBsZWZ0OiAtOC4zMzMzMyU7XG4gIH1cbiAgLnhsYXJnZS1vZmZzZXQtMCB7XG4gICAgbWFyZ2luLWxlZnQ6IDAlO1xuICB9XG4gIC54bGFyZ2UtMiB7XG4gICAgd2lkdGg6IDE2LjY2NjY3JTtcbiAgfVxuICAueGxhcmdlLXB1c2gtMiB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIGxlZnQ6IDE2LjY2NjY3JTtcbiAgfVxuICAueGxhcmdlLXB1bGwtMiB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIGxlZnQ6IC0xNi42NjY2NyU7XG4gIH1cbiAgLnhsYXJnZS1vZmZzZXQtMSB7XG4gICAgbWFyZ2luLWxlZnQ6IDguMzMzMzMlO1xuICB9XG4gIC54bGFyZ2UtMyB7XG4gICAgd2lkdGg6IDI1JTtcbiAgfVxuICAueGxhcmdlLXB1c2gtMyB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIGxlZnQ6IDI1JTtcbiAgfVxuICAueGxhcmdlLXB1bGwtMyB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIGxlZnQ6IC0yNSU7XG4gIH1cbiAgLnhsYXJnZS1vZmZzZXQtMiB7XG4gICAgbWFyZ2luLWxlZnQ6IDE2LjY2NjY3JTtcbiAgfVxuICAueGxhcmdlLTQge1xuICAgIHdpZHRoOiAzMy4zMzMzMyU7XG4gIH1cbiAgLnhsYXJnZS1wdXNoLTQge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICBsZWZ0OiAzMy4zMzMzMyU7XG4gIH1cbiAgLnhsYXJnZS1wdWxsLTQge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICBsZWZ0OiAtMzMuMzMzMzMlO1xuICB9XG4gIC54bGFyZ2Utb2Zmc2V0LTMge1xuICAgIG1hcmdpbi1sZWZ0OiAyNSU7XG4gIH1cbiAgLnhsYXJnZS01IHtcbiAgICB3aWR0aDogNDEuNjY2NjclO1xuICB9XG4gIC54bGFyZ2UtcHVzaC01IHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgbGVmdDogNDEuNjY2NjclO1xuICB9XG4gIC54bGFyZ2UtcHVsbC01IHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgbGVmdDogLTQxLjY2NjY3JTtcbiAgfVxuICAueGxhcmdlLW9mZnNldC00IHtcbiAgICBtYXJnaW4tbGVmdDogMzMuMzMzMzMlO1xuICB9XG4gIC54bGFyZ2UtNiB7XG4gICAgd2lkdGg6IDUwJTtcbiAgfVxuICAueGxhcmdlLXB1c2gtNiB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIGxlZnQ6IDUwJTtcbiAgfVxuICAueGxhcmdlLXB1bGwtNiB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIGxlZnQ6IC01MCU7XG4gIH1cbiAgLnhsYXJnZS1vZmZzZXQtNSB7XG4gICAgbWFyZ2luLWxlZnQ6IDQxLjY2NjY3JTtcbiAgfVxuICAueGxhcmdlLTcge1xuICAgIHdpZHRoOiA1OC4zMzMzMyU7XG4gIH1cbiAgLnhsYXJnZS1wdXNoLTcge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICBsZWZ0OiA1OC4zMzMzMyU7XG4gIH1cbiAgLnhsYXJnZS1wdWxsLTcge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICBsZWZ0OiAtNTguMzMzMzMlO1xuICB9XG4gIC54bGFyZ2Utb2Zmc2V0LTYge1xuICAgIG1hcmdpbi1sZWZ0OiA1MCU7XG4gIH1cbiAgLnhsYXJnZS04IHtcbiAgICB3aWR0aDogNjYuNjY2NjclO1xuICB9XG4gIC54bGFyZ2UtcHVzaC04IHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgbGVmdDogNjYuNjY2NjclO1xuICB9XG4gIC54bGFyZ2UtcHVsbC04IHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgbGVmdDogLTY2LjY2NjY3JTtcbiAgfVxuICAueGxhcmdlLW9mZnNldC03IHtcbiAgICBtYXJnaW4tbGVmdDogNTguMzMzMzMlO1xuICB9XG4gIC54bGFyZ2UtOSB7XG4gICAgd2lkdGg6IDc1JTtcbiAgfVxuICAueGxhcmdlLXB1c2gtOSB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIGxlZnQ6IDc1JTtcbiAgfVxuICAueGxhcmdlLXB1bGwtOSB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIGxlZnQ6IC03NSU7XG4gIH1cbiAgLnhsYXJnZS1vZmZzZXQtOCB7XG4gICAgbWFyZ2luLWxlZnQ6IDY2LjY2NjY3JTtcbiAgfVxuICAueGxhcmdlLTEwIHtcbiAgICB3aWR0aDogODMuMzMzMzMlO1xuICB9XG4gIC54bGFyZ2UtcHVzaC0xMCB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIGxlZnQ6IDgzLjMzMzMzJTtcbiAgfVxuICAueGxhcmdlLXB1bGwtMTAge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICBsZWZ0OiAtODMuMzMzMzMlO1xuICB9XG4gIC54bGFyZ2Utb2Zmc2V0LTkge1xuICAgIG1hcmdpbi1sZWZ0OiA3NSU7XG4gIH1cbiAgLnhsYXJnZS0xMSB7XG4gICAgd2lkdGg6IDkxLjY2NjY3JTtcbiAgfVxuICAueGxhcmdlLXB1c2gtMTEge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICBsZWZ0OiA5MS42NjY2NyU7XG4gIH1cbiAgLnhsYXJnZS1wdWxsLTExIHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgbGVmdDogLTkxLjY2NjY3JTtcbiAgfVxuICAueGxhcmdlLW9mZnNldC0xMCB7XG4gICAgbWFyZ2luLWxlZnQ6IDgzLjMzMzMzJTtcbiAgfVxuICAueGxhcmdlLTEyIHtcbiAgICB3aWR0aDogMTAwJTtcbiAgfVxuICAueGxhcmdlLW9mZnNldC0xMSB7XG4gICAgbWFyZ2luLWxlZnQ6IDkxLjY2NjY3JTtcbiAgfVxuICAueGxhcmdlLXVwLTEgPiAuY29sdW1uLCAueGxhcmdlLXVwLTEgPiAuY29sdW1ucyB7XG4gICAgZmxvYXQ6IGxlZnQ7XG4gICAgd2lkdGg6IDEwMCU7XG4gIH1cbiAgLnhsYXJnZS11cC0xID4gLmNvbHVtbjpudGgtb2YtdHlwZSgxbiksIC54bGFyZ2UtdXAtMSA+IC5jb2x1bW5zOm50aC1vZi10eXBlKDFuKSB7XG4gICAgY2xlYXI6IG5vbmU7XG4gIH1cbiAgLnhsYXJnZS11cC0xID4gLmNvbHVtbjpudGgtb2YtdHlwZSgxbisxKSwgLnhsYXJnZS11cC0xID4gLmNvbHVtbnM6bnRoLW9mLXR5cGUoMW4rMSkge1xuICAgIGNsZWFyOiBib3RoO1xuICB9XG4gIC54bGFyZ2UtdXAtMSA+IC5jb2x1bW46bGFzdC1jaGlsZCwgLnhsYXJnZS11cC0xID4gLmNvbHVtbnM6bGFzdC1jaGlsZCB7XG4gICAgZmxvYXQ6IGxlZnQ7XG4gIH1cbiAgLnhsYXJnZS11cC0yID4gLmNvbHVtbiwgLnhsYXJnZS11cC0yID4gLmNvbHVtbnMge1xuICAgIGZsb2F0OiBsZWZ0O1xuICAgIHdpZHRoOiA1MCU7XG4gIH1cbiAgLnhsYXJnZS11cC0yID4gLmNvbHVtbjpudGgtb2YtdHlwZSgxbiksIC54bGFyZ2UtdXAtMiA+IC5jb2x1bW5zOm50aC1vZi10eXBlKDFuKSB7XG4gICAgY2xlYXI6IG5vbmU7XG4gIH1cbiAgLnhsYXJnZS11cC0yID4gLmNvbHVtbjpudGgtb2YtdHlwZSgybisxKSwgLnhsYXJnZS11cC0yID4gLmNvbHVtbnM6bnRoLW9mLXR5cGUoMm4rMSkge1xuICAgIGNsZWFyOiBib3RoO1xuICB9XG4gIC54bGFyZ2UtdXAtMiA+IC5jb2x1bW46bGFzdC1jaGlsZCwgLnhsYXJnZS11cC0yID4gLmNvbHVtbnM6bGFzdC1jaGlsZCB7XG4gICAgZmxvYXQ6IGxlZnQ7XG4gIH1cbiAgLnhsYXJnZS11cC0zID4gLmNvbHVtbiwgLnhsYXJnZS11cC0zID4gLmNvbHVtbnMge1xuICAgIGZsb2F0OiBsZWZ0O1xuICAgIHdpZHRoOiAzMy4zMzMzMyU7XG4gIH1cbiAgLnhsYXJnZS11cC0zID4gLmNvbHVtbjpudGgtb2YtdHlwZSgxbiksIC54bGFyZ2UtdXAtMyA+IC5jb2x1bW5zOm50aC1vZi10eXBlKDFuKSB7XG4gICAgY2xlYXI6IG5vbmU7XG4gIH1cbiAgLnhsYXJnZS11cC0zID4gLmNvbHVtbjpudGgtb2YtdHlwZSgzbisxKSwgLnhsYXJnZS11cC0zID4gLmNvbHVtbnM6bnRoLW9mLXR5cGUoM24rMSkge1xuICAgIGNsZWFyOiBib3RoO1xuICB9XG4gIC54bGFyZ2UtdXAtMyA+IC5jb2x1bW46bGFzdC1jaGlsZCwgLnhsYXJnZS11cC0zID4gLmNvbHVtbnM6bGFzdC1jaGlsZCB7XG4gICAgZmxvYXQ6IGxlZnQ7XG4gIH1cbiAgLnhsYXJnZS11cC00ID4gLmNvbHVtbiwgLnhsYXJnZS11cC00ID4gLmNvbHVtbnMge1xuICAgIGZsb2F0OiBsZWZ0O1xuICAgIHdpZHRoOiAyNSU7XG4gIH1cbiAgLnhsYXJnZS11cC00ID4gLmNvbHVtbjpudGgtb2YtdHlwZSgxbiksIC54bGFyZ2UtdXAtNCA+IC5jb2x1bW5zOm50aC1vZi10eXBlKDFuKSB7XG4gICAgY2xlYXI6IG5vbmU7XG4gIH1cbiAgLnhsYXJnZS11cC00ID4gLmNvbHVtbjpudGgtb2YtdHlwZSg0bisxKSwgLnhsYXJnZS11cC00ID4gLmNvbHVtbnM6bnRoLW9mLXR5cGUoNG4rMSkge1xuICAgIGNsZWFyOiBib3RoO1xuICB9XG4gIC54bGFyZ2UtdXAtNCA+IC5jb2x1bW46bGFzdC1jaGlsZCwgLnhsYXJnZS11cC00ID4gLmNvbHVtbnM6bGFzdC1jaGlsZCB7XG4gICAgZmxvYXQ6IGxlZnQ7XG4gIH1cbiAgLnhsYXJnZS11cC01ID4gLmNvbHVtbiwgLnhsYXJnZS11cC01ID4gLmNvbHVtbnMge1xuICAgIGZsb2F0OiBsZWZ0O1xuICAgIHdpZHRoOiAyMCU7XG4gIH1cbiAgLnhsYXJnZS11cC01ID4gLmNvbHVtbjpudGgtb2YtdHlwZSgxbiksIC54bGFyZ2UtdXAtNSA+IC5jb2x1bW5zOm50aC1vZi10eXBlKDFuKSB7XG4gICAgY2xlYXI6IG5vbmU7XG4gIH1cbiAgLnhsYXJnZS11cC01ID4gLmNvbHVtbjpudGgtb2YtdHlwZSg1bisxKSwgLnhsYXJnZS11cC01ID4gLmNvbHVtbnM6bnRoLW9mLXR5cGUoNW4rMSkge1xuICAgIGNsZWFyOiBib3RoO1xuICB9XG4gIC54bGFyZ2UtdXAtNSA+IC5jb2x1bW46bGFzdC1jaGlsZCwgLnhsYXJnZS11cC01ID4gLmNvbHVtbnM6bGFzdC1jaGlsZCB7XG4gICAgZmxvYXQ6IGxlZnQ7XG4gIH1cbiAgLnhsYXJnZS11cC02ID4gLmNvbHVtbiwgLnhsYXJnZS11cC02ID4gLmNvbHVtbnMge1xuICAgIGZsb2F0OiBsZWZ0O1xuICAgIHdpZHRoOiAxNi42NjY2NyU7XG4gIH1cbiAgLnhsYXJnZS11cC02ID4gLmNvbHVtbjpudGgtb2YtdHlwZSgxbiksIC54bGFyZ2UtdXAtNiA+IC5jb2x1bW5zOm50aC1vZi10eXBlKDFuKSB7XG4gICAgY2xlYXI6IG5vbmU7XG4gIH1cbiAgLnhsYXJnZS11cC02ID4gLmNvbHVtbjpudGgtb2YtdHlwZSg2bisxKSwgLnhsYXJnZS11cC02ID4gLmNvbHVtbnM6bnRoLW9mLXR5cGUoNm4rMSkge1xuICAgIGNsZWFyOiBib3RoO1xuICB9XG4gIC54bGFyZ2UtdXAtNiA+IC5jb2x1bW46bGFzdC1jaGlsZCwgLnhsYXJnZS11cC02ID4gLmNvbHVtbnM6bGFzdC1jaGlsZCB7XG4gICAgZmxvYXQ6IGxlZnQ7XG4gIH1cbiAgLnhsYXJnZS11cC03ID4gLmNvbHVtbiwgLnhsYXJnZS11cC03ID4gLmNvbHVtbnMge1xuICAgIGZsb2F0OiBsZWZ0O1xuICAgIHdpZHRoOiAxNC4yODU3MSU7XG4gIH1cbiAgLnhsYXJnZS11cC03ID4gLmNvbHVtbjpudGgtb2YtdHlwZSgxbiksIC54bGFyZ2UtdXAtNyA+IC5jb2x1bW5zOm50aC1vZi10eXBlKDFuKSB7XG4gICAgY2xlYXI6IG5vbmU7XG4gIH1cbiAgLnhsYXJnZS11cC03ID4gLmNvbHVtbjpudGgtb2YtdHlwZSg3bisxKSwgLnhsYXJnZS11cC03ID4gLmNvbHVtbnM6bnRoLW9mLXR5cGUoN24rMSkge1xuICAgIGNsZWFyOiBib3RoO1xuICB9XG4gIC54bGFyZ2UtdXAtNyA+IC5jb2x1bW46bGFzdC1jaGlsZCwgLnhsYXJnZS11cC03ID4gLmNvbHVtbnM6bGFzdC1jaGlsZCB7XG4gICAgZmxvYXQ6IGxlZnQ7XG4gIH1cbiAgLnhsYXJnZS11cC04ID4gLmNvbHVtbiwgLnhsYXJnZS11cC04ID4gLmNvbHVtbnMge1xuICAgIGZsb2F0OiBsZWZ0O1xuICAgIHdpZHRoOiAxMi41JTtcbiAgfVxuICAueGxhcmdlLXVwLTggPiAuY29sdW1uOm50aC1vZi10eXBlKDFuKSwgLnhsYXJnZS11cC04ID4gLmNvbHVtbnM6bnRoLW9mLXR5cGUoMW4pIHtcbiAgICBjbGVhcjogbm9uZTtcbiAgfVxuICAueGxhcmdlLXVwLTggPiAuY29sdW1uOm50aC1vZi10eXBlKDhuKzEpLCAueGxhcmdlLXVwLTggPiAuY29sdW1uczpudGgtb2YtdHlwZSg4bisxKSB7XG4gICAgY2xlYXI6IGJvdGg7XG4gIH1cbiAgLnhsYXJnZS11cC04ID4gLmNvbHVtbjpsYXN0LWNoaWxkLCAueGxhcmdlLXVwLTggPiAuY29sdW1uczpsYXN0LWNoaWxkIHtcbiAgICBmbG9hdDogbGVmdDtcbiAgfVxuICAueGxhcmdlLXVwLTkgPiAuY29sdW1uLCAueGxhcmdlLXVwLTkgPiAuY29sdW1ucyB7XG4gICAgZmxvYXQ6IGxlZnQ7XG4gICAgd2lkdGg6IDExLjExMTExJTtcbiAgfVxuICAueGxhcmdlLXVwLTkgPiAuY29sdW1uOm50aC1vZi10eXBlKDFuKSwgLnhsYXJnZS11cC05ID4gLmNvbHVtbnM6bnRoLW9mLXR5cGUoMW4pIHtcbiAgICBjbGVhcjogbm9uZTtcbiAgfVxuICAueGxhcmdlLXVwLTkgPiAuY29sdW1uOm50aC1vZi10eXBlKDluKzEpLCAueGxhcmdlLXVwLTkgPiAuY29sdW1uczpudGgtb2YtdHlwZSg5bisxKSB7XG4gICAgY2xlYXI6IGJvdGg7XG4gIH1cbiAgLnhsYXJnZS11cC05ID4gLmNvbHVtbjpsYXN0LWNoaWxkLCAueGxhcmdlLXVwLTkgPiAuY29sdW1uczpsYXN0LWNoaWxkIHtcbiAgICBmbG9hdDogbGVmdDtcbiAgfVxuICAueGxhcmdlLXVwLTEwID4gLmNvbHVtbiwgLnhsYXJnZS11cC0xMCA+IC5jb2x1bW5zIHtcbiAgICBmbG9hdDogbGVmdDtcbiAgICB3aWR0aDogMTAlO1xuICB9XG4gIC54bGFyZ2UtdXAtMTAgPiAuY29sdW1uOm50aC1vZi10eXBlKDFuKSwgLnhsYXJnZS11cC0xMCA+IC5jb2x1bW5zOm50aC1vZi10eXBlKDFuKSB7XG4gICAgY2xlYXI6IG5vbmU7XG4gIH1cbiAgLnhsYXJnZS11cC0xMCA+IC5jb2x1bW46bnRoLW9mLXR5cGUoMTBuKzEpLCAueGxhcmdlLXVwLTEwID4gLmNvbHVtbnM6bnRoLW9mLXR5cGUoMTBuKzEpIHtcbiAgICBjbGVhcjogYm90aDtcbiAgfVxuICAueGxhcmdlLXVwLTEwID4gLmNvbHVtbjpsYXN0LWNoaWxkLCAueGxhcmdlLXVwLTEwID4gLmNvbHVtbnM6bGFzdC1jaGlsZCB7XG4gICAgZmxvYXQ6IGxlZnQ7XG4gIH1cbiAgLnhsYXJnZS11cC0xMSA+IC5jb2x1bW4sIC54bGFyZ2UtdXAtMTEgPiAuY29sdW1ucyB7XG4gICAgZmxvYXQ6IGxlZnQ7XG4gICAgd2lkdGg6IDkuMDkwOTElO1xuICB9XG4gIC54bGFyZ2UtdXAtMTEgPiAuY29sdW1uOm50aC1vZi10eXBlKDFuKSwgLnhsYXJnZS11cC0xMSA+IC5jb2x1bW5zOm50aC1vZi10eXBlKDFuKSB7XG4gICAgY2xlYXI6IG5vbmU7XG4gIH1cbiAgLnhsYXJnZS11cC0xMSA+IC5jb2x1bW46bnRoLW9mLXR5cGUoMTFuKzEpLCAueGxhcmdlLXVwLTExID4gLmNvbHVtbnM6bnRoLW9mLXR5cGUoMTFuKzEpIHtcbiAgICBjbGVhcjogYm90aDtcbiAgfVxuICAueGxhcmdlLXVwLTExID4gLmNvbHVtbjpsYXN0LWNoaWxkLCAueGxhcmdlLXVwLTExID4gLmNvbHVtbnM6bGFzdC1jaGlsZCB7XG4gICAgZmxvYXQ6IGxlZnQ7XG4gIH1cbiAgLnhsYXJnZS11cC0xMiA+IC5jb2x1bW4sIC54bGFyZ2UtdXAtMTIgPiAuY29sdW1ucyB7XG4gICAgZmxvYXQ6IGxlZnQ7XG4gICAgd2lkdGg6IDguMzMzMzMlO1xuICB9XG4gIC54bGFyZ2UtdXAtMTIgPiAuY29sdW1uOm50aC1vZi10eXBlKDFuKSwgLnhsYXJnZS11cC0xMiA+IC5jb2x1bW5zOm50aC1vZi10eXBlKDFuKSB7XG4gICAgY2xlYXI6IG5vbmU7XG4gIH1cbiAgLnhsYXJnZS11cC0xMiA+IC5jb2x1bW46bnRoLW9mLXR5cGUoMTJuKzEpLCAueGxhcmdlLXVwLTEyID4gLmNvbHVtbnM6bnRoLW9mLXR5cGUoMTJuKzEpIHtcbiAgICBjbGVhcjogYm90aDtcbiAgfVxuICAueGxhcmdlLXVwLTEyID4gLmNvbHVtbjpsYXN0LWNoaWxkLCAueGxhcmdlLXVwLTEyID4gLmNvbHVtbnM6bGFzdC1jaGlsZCB7XG4gICAgZmxvYXQ6IGxlZnQ7XG4gIH1cbiAgLnhsYXJnZS1jb2xsYXBzZSA+IC5jb2x1bW4sIC54bGFyZ2UtY29sbGFwc2UgPiAuY29sdW1ucyB7XG4gICAgcGFkZGluZy1yaWdodDogMDtcbiAgICBwYWRkaW5nLWxlZnQ6IDA7XG4gIH1cbiAgLnhsYXJnZS1jb2xsYXBzZSAucm93IHtcbiAgICBtYXJnaW4tcmlnaHQ6IDA7XG4gICAgbWFyZ2luLWxlZnQ6IDA7XG4gIH1cbiAgLmV4cGFuZGVkLnJvdyAueGxhcmdlLWNvbGxhcHNlLnJvdyB7XG4gICAgbWFyZ2luLXJpZ2h0OiAwO1xuICAgIG1hcmdpbi1sZWZ0OiAwO1xuICB9XG4gIC54bGFyZ2UtdW5jb2xsYXBzZSA+IC5jb2x1bW4sIC54bGFyZ2UtdW5jb2xsYXBzZSA+IC5jb2x1bW5zIHtcbiAgICBwYWRkaW5nLXJpZ2h0OiAwLjU3MTQzcmVtO1xuICAgIHBhZGRpbmctbGVmdDogMC41NzE0M3JlbTtcbiAgfVxuICAueGxhcmdlLWNlbnRlcmVkIHtcbiAgICBtYXJnaW4tcmlnaHQ6IGF1dG87XG4gICAgbWFyZ2luLWxlZnQ6IGF1dG87XG4gIH1cbiAgLnhsYXJnZS1jZW50ZXJlZCwgLnhsYXJnZS1jZW50ZXJlZDpsYXN0LWNoaWxkOm5vdCg6Zmlyc3QtY2hpbGQpIHtcbiAgICBmbG9hdDogbm9uZTtcbiAgICBjbGVhcjogYm90aDtcbiAgfVxuICAueGxhcmdlLXVuY2VudGVyZWQsXG4gIC54bGFyZ2UtcHVzaC0wLFxuICAueGxhcmdlLXB1bGwtMCB7XG4gICAgcG9zaXRpb246IHN0YXRpYztcbiAgICBmbG9hdDogbGVmdDtcbiAgICBtYXJnaW4tcmlnaHQ6IDA7XG4gICAgbWFyZ2luLWxlZnQ6IDA7XG4gIH1cbn1cblxuQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogOTBlbSkge1xuICAueHhsYXJnZS0xIHtcbiAgICB3aWR0aDogOC4zMzMzMyU7XG4gIH1cbiAgLnh4bGFyZ2UtcHVzaC0xIHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgbGVmdDogOC4zMzMzMyU7XG4gIH1cbiAgLnh4bGFyZ2UtcHVsbC0xIHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgbGVmdDogLTguMzMzMzMlO1xuICB9XG4gIC54eGxhcmdlLW9mZnNldC0wIHtcbiAgICBtYXJnaW4tbGVmdDogMCU7XG4gIH1cbiAgLnh4bGFyZ2UtMiB7XG4gICAgd2lkdGg6IDE2LjY2NjY3JTtcbiAgfVxuICAueHhsYXJnZS1wdXNoLTIge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICBsZWZ0OiAxNi42NjY2NyU7XG4gIH1cbiAgLnh4bGFyZ2UtcHVsbC0yIHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgbGVmdDogLTE2LjY2NjY3JTtcbiAgfVxuICAueHhsYXJnZS1vZmZzZXQtMSB7XG4gICAgbWFyZ2luLWxlZnQ6IDguMzMzMzMlO1xuICB9XG4gIC54eGxhcmdlLTMge1xuICAgIHdpZHRoOiAyNSU7XG4gIH1cbiAgLnh4bGFyZ2UtcHVzaC0zIHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgbGVmdDogMjUlO1xuICB9XG4gIC54eGxhcmdlLXB1bGwtMyB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIGxlZnQ6IC0yNSU7XG4gIH1cbiAgLnh4bGFyZ2Utb2Zmc2V0LTIge1xuICAgIG1hcmdpbi1sZWZ0OiAxNi42NjY2NyU7XG4gIH1cbiAgLnh4bGFyZ2UtNCB7XG4gICAgd2lkdGg6IDMzLjMzMzMzJTtcbiAgfVxuICAueHhsYXJnZS1wdXNoLTQge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICBsZWZ0OiAzMy4zMzMzMyU7XG4gIH1cbiAgLnh4bGFyZ2UtcHVsbC00IHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgbGVmdDogLTMzLjMzMzMzJTtcbiAgfVxuICAueHhsYXJnZS1vZmZzZXQtMyB7XG4gICAgbWFyZ2luLWxlZnQ6IDI1JTtcbiAgfVxuICAueHhsYXJnZS01IHtcbiAgICB3aWR0aDogNDEuNjY2NjclO1xuICB9XG4gIC54eGxhcmdlLXB1c2gtNSB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIGxlZnQ6IDQxLjY2NjY3JTtcbiAgfVxuICAueHhsYXJnZS1wdWxsLTUge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICBsZWZ0OiAtNDEuNjY2NjclO1xuICB9XG4gIC54eGxhcmdlLW9mZnNldC00IHtcbiAgICBtYXJnaW4tbGVmdDogMzMuMzMzMzMlO1xuICB9XG4gIC54eGxhcmdlLTYge1xuICAgIHdpZHRoOiA1MCU7XG4gIH1cbiAgLnh4bGFyZ2UtcHVzaC02IHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgbGVmdDogNTAlO1xuICB9XG4gIC54eGxhcmdlLXB1bGwtNiB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIGxlZnQ6IC01MCU7XG4gIH1cbiAgLnh4bGFyZ2Utb2Zmc2V0LTUge1xuICAgIG1hcmdpbi1sZWZ0OiA0MS42NjY2NyU7XG4gIH1cbiAgLnh4bGFyZ2UtNyB7XG4gICAgd2lkdGg6IDU4LjMzMzMzJTtcbiAgfVxuICAueHhsYXJnZS1wdXNoLTcge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICBsZWZ0OiA1OC4zMzMzMyU7XG4gIH1cbiAgLnh4bGFyZ2UtcHVsbC03IHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgbGVmdDogLTU4LjMzMzMzJTtcbiAgfVxuICAueHhsYXJnZS1vZmZzZXQtNiB7XG4gICAgbWFyZ2luLWxlZnQ6IDUwJTtcbiAgfVxuICAueHhsYXJnZS04IHtcbiAgICB3aWR0aDogNjYuNjY2NjclO1xuICB9XG4gIC54eGxhcmdlLXB1c2gtOCB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIGxlZnQ6IDY2LjY2NjY3JTtcbiAgfVxuICAueHhsYXJnZS1wdWxsLTgge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICBsZWZ0OiAtNjYuNjY2NjclO1xuICB9XG4gIC54eGxhcmdlLW9mZnNldC03IHtcbiAgICBtYXJnaW4tbGVmdDogNTguMzMzMzMlO1xuICB9XG4gIC54eGxhcmdlLTkge1xuICAgIHdpZHRoOiA3NSU7XG4gIH1cbiAgLnh4bGFyZ2UtcHVzaC05IHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgbGVmdDogNzUlO1xuICB9XG4gIC54eGxhcmdlLXB1bGwtOSB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIGxlZnQ6IC03NSU7XG4gIH1cbiAgLnh4bGFyZ2Utb2Zmc2V0LTgge1xuICAgIG1hcmdpbi1sZWZ0OiA2Ni42NjY2NyU7XG4gIH1cbiAgLnh4bGFyZ2UtMTAge1xuICAgIHdpZHRoOiA4My4zMzMzMyU7XG4gIH1cbiAgLnh4bGFyZ2UtcHVzaC0xMCB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIGxlZnQ6IDgzLjMzMzMzJTtcbiAgfVxuICAueHhsYXJnZS1wdWxsLTEwIHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgbGVmdDogLTgzLjMzMzMzJTtcbiAgfVxuICAueHhsYXJnZS1vZmZzZXQtOSB7XG4gICAgbWFyZ2luLWxlZnQ6IDc1JTtcbiAgfVxuICAueHhsYXJnZS0xMSB7XG4gICAgd2lkdGg6IDkxLjY2NjY3JTtcbiAgfVxuICAueHhsYXJnZS1wdXNoLTExIHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgbGVmdDogOTEuNjY2NjclO1xuICB9XG4gIC54eGxhcmdlLXB1bGwtMTEge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICBsZWZ0OiAtOTEuNjY2NjclO1xuICB9XG4gIC54eGxhcmdlLW9mZnNldC0xMCB7XG4gICAgbWFyZ2luLWxlZnQ6IDgzLjMzMzMzJTtcbiAgfVxuICAueHhsYXJnZS0xMiB7XG4gICAgd2lkdGg6IDEwMCU7XG4gIH1cbiAgLnh4bGFyZ2Utb2Zmc2V0LTExIHtcbiAgICBtYXJnaW4tbGVmdDogOTEuNjY2NjclO1xuICB9XG4gIC54eGxhcmdlLXVwLTEgPiAuY29sdW1uLCAueHhsYXJnZS11cC0xID4gLmNvbHVtbnMge1xuICAgIGZsb2F0OiBsZWZ0O1xuICAgIHdpZHRoOiAxMDAlO1xuICB9XG4gIC54eGxhcmdlLXVwLTEgPiAuY29sdW1uOm50aC1vZi10eXBlKDFuKSwgLnh4bGFyZ2UtdXAtMSA+IC5jb2x1bW5zOm50aC1vZi10eXBlKDFuKSB7XG4gICAgY2xlYXI6IG5vbmU7XG4gIH1cbiAgLnh4bGFyZ2UtdXAtMSA+IC5jb2x1bW46bnRoLW9mLXR5cGUoMW4rMSksIC54eGxhcmdlLXVwLTEgPiAuY29sdW1uczpudGgtb2YtdHlwZSgxbisxKSB7XG4gICAgY2xlYXI6IGJvdGg7XG4gIH1cbiAgLnh4bGFyZ2UtdXAtMSA+IC5jb2x1bW46bGFzdC1jaGlsZCwgLnh4bGFyZ2UtdXAtMSA+IC5jb2x1bW5zOmxhc3QtY2hpbGQge1xuICAgIGZsb2F0OiBsZWZ0O1xuICB9XG4gIC54eGxhcmdlLXVwLTIgPiAuY29sdW1uLCAueHhsYXJnZS11cC0yID4gLmNvbHVtbnMge1xuICAgIGZsb2F0OiBsZWZ0O1xuICAgIHdpZHRoOiA1MCU7XG4gIH1cbiAgLnh4bGFyZ2UtdXAtMiA+IC5jb2x1bW46bnRoLW9mLXR5cGUoMW4pLCAueHhsYXJnZS11cC0yID4gLmNvbHVtbnM6bnRoLW9mLXR5cGUoMW4pIHtcbiAgICBjbGVhcjogbm9uZTtcbiAgfVxuICAueHhsYXJnZS11cC0yID4gLmNvbHVtbjpudGgtb2YtdHlwZSgybisxKSwgLnh4bGFyZ2UtdXAtMiA+IC5jb2x1bW5zOm50aC1vZi10eXBlKDJuKzEpIHtcbiAgICBjbGVhcjogYm90aDtcbiAgfVxuICAueHhsYXJnZS11cC0yID4gLmNvbHVtbjpsYXN0LWNoaWxkLCAueHhsYXJnZS11cC0yID4gLmNvbHVtbnM6bGFzdC1jaGlsZCB7XG4gICAgZmxvYXQ6IGxlZnQ7XG4gIH1cbiAgLnh4bGFyZ2UtdXAtMyA+IC5jb2x1bW4sIC54eGxhcmdlLXVwLTMgPiAuY29sdW1ucyB7XG4gICAgZmxvYXQ6IGxlZnQ7XG4gICAgd2lkdGg6IDMzLjMzMzMzJTtcbiAgfVxuICAueHhsYXJnZS11cC0zID4gLmNvbHVtbjpudGgtb2YtdHlwZSgxbiksIC54eGxhcmdlLXVwLTMgPiAuY29sdW1uczpudGgtb2YtdHlwZSgxbikge1xuICAgIGNsZWFyOiBub25lO1xuICB9XG4gIC54eGxhcmdlLXVwLTMgPiAuY29sdW1uOm50aC1vZi10eXBlKDNuKzEpLCAueHhsYXJnZS11cC0zID4gLmNvbHVtbnM6bnRoLW9mLXR5cGUoM24rMSkge1xuICAgIGNsZWFyOiBib3RoO1xuICB9XG4gIC54eGxhcmdlLXVwLTMgPiAuY29sdW1uOmxhc3QtY2hpbGQsIC54eGxhcmdlLXVwLTMgPiAuY29sdW1uczpsYXN0LWNoaWxkIHtcbiAgICBmbG9hdDogbGVmdDtcbiAgfVxuICAueHhsYXJnZS11cC00ID4gLmNvbHVtbiwgLnh4bGFyZ2UtdXAtNCA+IC5jb2x1bW5zIHtcbiAgICBmbG9hdDogbGVmdDtcbiAgICB3aWR0aDogMjUlO1xuICB9XG4gIC54eGxhcmdlLXVwLTQgPiAuY29sdW1uOm50aC1vZi10eXBlKDFuKSwgLnh4bGFyZ2UtdXAtNCA+IC5jb2x1bW5zOm50aC1vZi10eXBlKDFuKSB7XG4gICAgY2xlYXI6IG5vbmU7XG4gIH1cbiAgLnh4bGFyZ2UtdXAtNCA+IC5jb2x1bW46bnRoLW9mLXR5cGUoNG4rMSksIC54eGxhcmdlLXVwLTQgPiAuY29sdW1uczpudGgtb2YtdHlwZSg0bisxKSB7XG4gICAgY2xlYXI6IGJvdGg7XG4gIH1cbiAgLnh4bGFyZ2UtdXAtNCA+IC5jb2x1bW46bGFzdC1jaGlsZCwgLnh4bGFyZ2UtdXAtNCA+IC5jb2x1bW5zOmxhc3QtY2hpbGQge1xuICAgIGZsb2F0OiBsZWZ0O1xuICB9XG4gIC54eGxhcmdlLXVwLTUgPiAuY29sdW1uLCAueHhsYXJnZS11cC01ID4gLmNvbHVtbnMge1xuICAgIGZsb2F0OiBsZWZ0O1xuICAgIHdpZHRoOiAyMCU7XG4gIH1cbiAgLnh4bGFyZ2UtdXAtNSA+IC5jb2x1bW46bnRoLW9mLXR5cGUoMW4pLCAueHhsYXJnZS11cC01ID4gLmNvbHVtbnM6bnRoLW9mLXR5cGUoMW4pIHtcbiAgICBjbGVhcjogbm9uZTtcbiAgfVxuICAueHhsYXJnZS11cC01ID4gLmNvbHVtbjpudGgtb2YtdHlwZSg1bisxKSwgLnh4bGFyZ2UtdXAtNSA+IC5jb2x1bW5zOm50aC1vZi10eXBlKDVuKzEpIHtcbiAgICBjbGVhcjogYm90aDtcbiAgfVxuICAueHhsYXJnZS11cC01ID4gLmNvbHVtbjpsYXN0LWNoaWxkLCAueHhsYXJnZS11cC01ID4gLmNvbHVtbnM6bGFzdC1jaGlsZCB7XG4gICAgZmxvYXQ6IGxlZnQ7XG4gIH1cbiAgLnh4bGFyZ2UtdXAtNiA+IC5jb2x1bW4sIC54eGxhcmdlLXVwLTYgPiAuY29sdW1ucyB7XG4gICAgZmxvYXQ6IGxlZnQ7XG4gICAgd2lkdGg6IDE2LjY2NjY3JTtcbiAgfVxuICAueHhsYXJnZS11cC02ID4gLmNvbHVtbjpudGgtb2YtdHlwZSgxbiksIC54eGxhcmdlLXVwLTYgPiAuY29sdW1uczpudGgtb2YtdHlwZSgxbikge1xuICAgIGNsZWFyOiBub25lO1xuICB9XG4gIC54eGxhcmdlLXVwLTYgPiAuY29sdW1uOm50aC1vZi10eXBlKDZuKzEpLCAueHhsYXJnZS11cC02ID4gLmNvbHVtbnM6bnRoLW9mLXR5cGUoNm4rMSkge1xuICAgIGNsZWFyOiBib3RoO1xuICB9XG4gIC54eGxhcmdlLXVwLTYgPiAuY29sdW1uOmxhc3QtY2hpbGQsIC54eGxhcmdlLXVwLTYgPiAuY29sdW1uczpsYXN0LWNoaWxkIHtcbiAgICBmbG9hdDogbGVmdDtcbiAgfVxuICAueHhsYXJnZS11cC03ID4gLmNvbHVtbiwgLnh4bGFyZ2UtdXAtNyA+IC5jb2x1bW5zIHtcbiAgICBmbG9hdDogbGVmdDtcbiAgICB3aWR0aDogMTQuMjg1NzElO1xuICB9XG4gIC54eGxhcmdlLXVwLTcgPiAuY29sdW1uOm50aC1vZi10eXBlKDFuKSwgLnh4bGFyZ2UtdXAtNyA+IC5jb2x1bW5zOm50aC1vZi10eXBlKDFuKSB7XG4gICAgY2xlYXI6IG5vbmU7XG4gIH1cbiAgLnh4bGFyZ2UtdXAtNyA+IC5jb2x1bW46bnRoLW9mLXR5cGUoN24rMSksIC54eGxhcmdlLXVwLTcgPiAuY29sdW1uczpudGgtb2YtdHlwZSg3bisxKSB7XG4gICAgY2xlYXI6IGJvdGg7XG4gIH1cbiAgLnh4bGFyZ2UtdXAtNyA+IC5jb2x1bW46bGFzdC1jaGlsZCwgLnh4bGFyZ2UtdXAtNyA+IC5jb2x1bW5zOmxhc3QtY2hpbGQge1xuICAgIGZsb2F0OiBsZWZ0O1xuICB9XG4gIC54eGxhcmdlLXVwLTggPiAuY29sdW1uLCAueHhsYXJnZS11cC04ID4gLmNvbHVtbnMge1xuICAgIGZsb2F0OiBsZWZ0O1xuICAgIHdpZHRoOiAxMi41JTtcbiAgfVxuICAueHhsYXJnZS11cC04ID4gLmNvbHVtbjpudGgtb2YtdHlwZSgxbiksIC54eGxhcmdlLXVwLTggPiAuY29sdW1uczpudGgtb2YtdHlwZSgxbikge1xuICAgIGNsZWFyOiBub25lO1xuICB9XG4gIC54eGxhcmdlLXVwLTggPiAuY29sdW1uOm50aC1vZi10eXBlKDhuKzEpLCAueHhsYXJnZS11cC04ID4gLmNvbHVtbnM6bnRoLW9mLXR5cGUoOG4rMSkge1xuICAgIGNsZWFyOiBib3RoO1xuICB9XG4gIC54eGxhcmdlLXVwLTggPiAuY29sdW1uOmxhc3QtY2hpbGQsIC54eGxhcmdlLXVwLTggPiAuY29sdW1uczpsYXN0LWNoaWxkIHtcbiAgICBmbG9hdDogbGVmdDtcbiAgfVxuICAueHhsYXJnZS11cC05ID4gLmNvbHVtbiwgLnh4bGFyZ2UtdXAtOSA+IC5jb2x1bW5zIHtcbiAgICBmbG9hdDogbGVmdDtcbiAgICB3aWR0aDogMTEuMTExMTElO1xuICB9XG4gIC54eGxhcmdlLXVwLTkgPiAuY29sdW1uOm50aC1vZi10eXBlKDFuKSwgLnh4bGFyZ2UtdXAtOSA+IC5jb2x1bW5zOm50aC1vZi10eXBlKDFuKSB7XG4gICAgY2xlYXI6IG5vbmU7XG4gIH1cbiAgLnh4bGFyZ2UtdXAtOSA+IC5jb2x1bW46bnRoLW9mLXR5cGUoOW4rMSksIC54eGxhcmdlLXVwLTkgPiAuY29sdW1uczpudGgtb2YtdHlwZSg5bisxKSB7XG4gICAgY2xlYXI6IGJvdGg7XG4gIH1cbiAgLnh4bGFyZ2UtdXAtOSA+IC5jb2x1bW46bGFzdC1jaGlsZCwgLnh4bGFyZ2UtdXAtOSA+IC5jb2x1bW5zOmxhc3QtY2hpbGQge1xuICAgIGZsb2F0OiBsZWZ0O1xuICB9XG4gIC54eGxhcmdlLXVwLTEwID4gLmNvbHVtbiwgLnh4bGFyZ2UtdXAtMTAgPiAuY29sdW1ucyB7XG4gICAgZmxvYXQ6IGxlZnQ7XG4gICAgd2lkdGg6IDEwJTtcbiAgfVxuICAueHhsYXJnZS11cC0xMCA+IC5jb2x1bW46bnRoLW9mLXR5cGUoMW4pLCAueHhsYXJnZS11cC0xMCA+IC5jb2x1bW5zOm50aC1vZi10eXBlKDFuKSB7XG4gICAgY2xlYXI6IG5vbmU7XG4gIH1cbiAgLnh4bGFyZ2UtdXAtMTAgPiAuY29sdW1uOm50aC1vZi10eXBlKDEwbisxKSwgLnh4bGFyZ2UtdXAtMTAgPiAuY29sdW1uczpudGgtb2YtdHlwZSgxMG4rMSkge1xuICAgIGNsZWFyOiBib3RoO1xuICB9XG4gIC54eGxhcmdlLXVwLTEwID4gLmNvbHVtbjpsYXN0LWNoaWxkLCAueHhsYXJnZS11cC0xMCA+IC5jb2x1bW5zOmxhc3QtY2hpbGQge1xuICAgIGZsb2F0OiBsZWZ0O1xuICB9XG4gIC54eGxhcmdlLXVwLTExID4gLmNvbHVtbiwgLnh4bGFyZ2UtdXAtMTEgPiAuY29sdW1ucyB7XG4gICAgZmxvYXQ6IGxlZnQ7XG4gICAgd2lkdGg6IDkuMDkwOTElO1xuICB9XG4gIC54eGxhcmdlLXVwLTExID4gLmNvbHVtbjpudGgtb2YtdHlwZSgxbiksIC54eGxhcmdlLXVwLTExID4gLmNvbHVtbnM6bnRoLW9mLXR5cGUoMW4pIHtcbiAgICBjbGVhcjogbm9uZTtcbiAgfVxuICAueHhsYXJnZS11cC0xMSA+IC5jb2x1bW46bnRoLW9mLXR5cGUoMTFuKzEpLCAueHhsYXJnZS11cC0xMSA+IC5jb2x1bW5zOm50aC1vZi10eXBlKDExbisxKSB7XG4gICAgY2xlYXI6IGJvdGg7XG4gIH1cbiAgLnh4bGFyZ2UtdXAtMTEgPiAuY29sdW1uOmxhc3QtY2hpbGQsIC54eGxhcmdlLXVwLTExID4gLmNvbHVtbnM6bGFzdC1jaGlsZCB7XG4gICAgZmxvYXQ6IGxlZnQ7XG4gIH1cbiAgLnh4bGFyZ2UtdXAtMTIgPiAuY29sdW1uLCAueHhsYXJnZS11cC0xMiA+IC5jb2x1bW5zIHtcbiAgICBmbG9hdDogbGVmdDtcbiAgICB3aWR0aDogOC4zMzMzMyU7XG4gIH1cbiAgLnh4bGFyZ2UtdXAtMTIgPiAuY29sdW1uOm50aC1vZi10eXBlKDFuKSwgLnh4bGFyZ2UtdXAtMTIgPiAuY29sdW1uczpudGgtb2YtdHlwZSgxbikge1xuICAgIGNsZWFyOiBub25lO1xuICB9XG4gIC54eGxhcmdlLXVwLTEyID4gLmNvbHVtbjpudGgtb2YtdHlwZSgxMm4rMSksIC54eGxhcmdlLXVwLTEyID4gLmNvbHVtbnM6bnRoLW9mLXR5cGUoMTJuKzEpIHtcbiAgICBjbGVhcjogYm90aDtcbiAgfVxuICAueHhsYXJnZS11cC0xMiA+IC5jb2x1bW46bGFzdC1jaGlsZCwgLnh4bGFyZ2UtdXAtMTIgPiAuY29sdW1uczpsYXN0LWNoaWxkIHtcbiAgICBmbG9hdDogbGVmdDtcbiAgfVxuICAueHhsYXJnZS1jb2xsYXBzZSA+IC5jb2x1bW4sIC54eGxhcmdlLWNvbGxhcHNlID4gLmNvbHVtbnMge1xuICAgIHBhZGRpbmctcmlnaHQ6IDA7XG4gICAgcGFkZGluZy1sZWZ0OiAwO1xuICB9XG4gIC54eGxhcmdlLWNvbGxhcHNlIC5yb3cge1xuICAgIG1hcmdpbi1yaWdodDogMDtcbiAgICBtYXJnaW4tbGVmdDogMDtcbiAgfVxuICAuZXhwYW5kZWQucm93IC54eGxhcmdlLWNvbGxhcHNlLnJvdyB7XG4gICAgbWFyZ2luLXJpZ2h0OiAwO1xuICAgIG1hcmdpbi1sZWZ0OiAwO1xuICB9XG4gIC54eGxhcmdlLXVuY29sbGFwc2UgPiAuY29sdW1uLCAueHhsYXJnZS11bmNvbGxhcHNlID4gLmNvbHVtbnMge1xuICAgIHBhZGRpbmctcmlnaHQ6IDAuNTcxNDNyZW07XG4gICAgcGFkZGluZy1sZWZ0OiAwLjU3MTQzcmVtO1xuICB9XG4gIC54eGxhcmdlLWNlbnRlcmVkIHtcbiAgICBtYXJnaW4tcmlnaHQ6IGF1dG87XG4gICAgbWFyZ2luLWxlZnQ6IGF1dG87XG4gIH1cbiAgLnh4bGFyZ2UtY2VudGVyZWQsIC54eGxhcmdlLWNlbnRlcmVkOmxhc3QtY2hpbGQ6bm90KDpmaXJzdC1jaGlsZCkge1xuICAgIGZsb2F0OiBub25lO1xuICAgIGNsZWFyOiBib3RoO1xuICB9XG4gIC54eGxhcmdlLXVuY2VudGVyZWQsXG4gIC54eGxhcmdlLXB1c2gtMCxcbiAgLnh4bGFyZ2UtcHVsbC0wIHtcbiAgICBwb3NpdGlvbjogc3RhdGljO1xuICAgIGZsb2F0OiBsZWZ0O1xuICAgIG1hcmdpbi1yaWdodDogMDtcbiAgICBtYXJnaW4tbGVmdDogMDtcbiAgfVxufVxuXG4uY29sdW1uLWJsb2NrIHtcbiAgbWFyZ2luLWJvdHRvbTogMC43MTQyOXJlbTtcbn1cblxuLmNvbHVtbi1ibG9jayA+IDpsYXN0LWNoaWxkIHtcbiAgbWFyZ2luLWJvdHRvbTogMDtcbn1cblxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQ4ZW0pIHtcbiAgLmNvbHVtbi1ibG9jayB7XG4gICAgbWFyZ2luLWJvdHRvbTogMS4xNDI4NnJlbTtcbiAgfVxuICAuY29sdW1uLWJsb2NrID4gOmxhc3QtY2hpbGQge1xuICAgIG1hcmdpbi1ib3R0b206IDA7XG4gIH1cbn1cblxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgLmNvbHVtbi1ibG9jayB7XG4gICAgbWFyZ2luLWJvdHRvbTogMS4xNDI4NnJlbTtcbiAgfVxuICAuY29sdW1uLWJsb2NrID4gOmxhc3QtY2hpbGQge1xuICAgIG1hcmdpbi1ib3R0b206IDA7XG4gIH1cbn1cblxuZGl2LFxuZGwsXG5kdCxcbmRkLFxudWwsXG5vbCxcbmxpLFxuaDEsXG5oMixcbmgzLFxuaDQsXG5oNSxcbmg2LFxucHJlLFxuZm9ybSxcbnAsXG5ibG9ja3F1b3RlLFxudGgsXG50ZCB7XG4gIG1hcmdpbjogMDtcbiAgcGFkZGluZzogMDtcbn1cblxucCB7XG4gIG1hcmdpbi1ib3R0b206IDFyZW07XG4gIGZvbnQtc2l6ZTogaW5oZXJpdDtcbiAgbGluZS1oZWlnaHQ6IDEuMztcbiAgdGV4dC1yZW5kZXJpbmc6IG9wdGltaXplTGVnaWJpbGl0eTtcbn1cblxuZW0sXG5pIHtcbiAgZm9udC1zdHlsZTogaXRhbGljO1xuICBsaW5lLWhlaWdodDogaW5oZXJpdDtcbn1cblxuc3Ryb25nLFxuYiB7XG4gIGZvbnQtd2VpZ2h0OiBib2xkO1xuICBsaW5lLWhlaWdodDogaW5oZXJpdDtcbn1cblxuc21hbGwge1xuICBmb250LXNpemU6IDgwJTtcbiAgbGluZS1oZWlnaHQ6IGluaGVyaXQ7XG59XG5cbmgxLFxuaDIsXG5oMyxcbmg0LFxuaDUsXG5oNiB7XG4gIGZvbnQtZmFtaWx5OiBIZWx2ZXRpY2EsIEFyaWFsLCBzYW5zLXNlcmlmO1xuICBmb250LXN0eWxlOiBub3JtYWw7XG4gIGZvbnQtd2VpZ2h0OiBib2xkO1xuICBjb2xvcjogaW5oZXJpdDtcbiAgdGV4dC1yZW5kZXJpbmc6IG9wdGltaXplTGVnaWJpbGl0eTtcbn1cblxuaDEgc21hbGwsXG5oMiBzbWFsbCxcbmgzIHNtYWxsLFxuaDQgc21hbGwsXG5oNSBzbWFsbCxcbmg2IHNtYWxsIHtcbiAgbGluZS1oZWlnaHQ6IDA7XG4gIGNvbG9yOiAjZGRkZGRkO1xufVxuXG5oMSB7XG4gIGZvbnQtc2l6ZTogMS4yODU3MXJlbTtcbiAgbGluZS1oZWlnaHQ6IDEuMztcbiAgbWFyZ2luLXRvcDogMDtcbiAgbWFyZ2luLWJvdHRvbTogMC41cmVtO1xufVxuXG5oMiB7XG4gIGZvbnQtc2l6ZTogMS4xNDI4NnJlbTtcbiAgbGluZS1oZWlnaHQ6IDEuMztcbiAgbWFyZ2luLXRvcDogMDtcbiAgbWFyZ2luLWJvdHRvbTogMC41cmVtO1xufVxuXG5oMyB7XG4gIGZvbnQtc2l6ZTogMXJlbTtcbiAgbGluZS1oZWlnaHQ6IDEuMztcbiAgbWFyZ2luLXRvcDogMDtcbiAgbWFyZ2luLWJvdHRvbTogMC41cmVtO1xufVxuXG5oNCB7XG4gIGZvbnQtc2l6ZTogMXJlbTtcbiAgbGluZS1oZWlnaHQ6IDEuMztcbiAgbWFyZ2luLXRvcDogMDtcbiAgbWFyZ2luLWJvdHRvbTogMC41cmVtO1xufVxuXG5oNSB7XG4gIGZvbnQtc2l6ZTogMXJlbTtcbiAgbGluZS1oZWlnaHQ6IDEuMztcbiAgbWFyZ2luLXRvcDogMDtcbiAgbWFyZ2luLWJvdHRvbTogMC41cmVtO1xufVxuXG5oNiB7XG4gIGZvbnQtc2l6ZTogMXJlbTtcbiAgbGluZS1oZWlnaHQ6IDEuMztcbiAgbWFyZ2luLXRvcDogMDtcbiAgbWFyZ2luLWJvdHRvbTogMC41cmVtO1xufVxuXG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDhlbSkge1xuICBoMSB7XG4gICAgZm9udC1zaXplOiAxLjQyODU3cmVtO1xuICB9XG4gIGgyIHtcbiAgICBmb250LXNpemU6IDEuMTQyODZyZW07XG4gIH1cbiAgaDMge1xuICAgIGZvbnQtc2l6ZTogMXJlbTtcbiAgfVxuICBoNCB7XG4gICAgZm9udC1zaXplOiAxcmVtO1xuICB9XG4gIGg1IHtcbiAgICBmb250LXNpemU6IDFyZW07XG4gIH1cbiAgaDYge1xuICAgIGZvbnQtc2l6ZTogMXJlbTtcbiAgfVxufVxuXG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICBoMSB7XG4gICAgZm9udC1zaXplOiAxLjQyODU3cmVtO1xuICB9XG4gIGgyIHtcbiAgICBmb250LXNpemU6IDEuMTQyODZyZW07XG4gIH1cbiAgaDMge1xuICAgIGZvbnQtc2l6ZTogMXJlbTtcbiAgfVxuICBoNCB7XG4gICAgZm9udC1zaXplOiAxcmVtO1xuICB9XG4gIGg1IHtcbiAgICBmb250LXNpemU6IDFyZW07XG4gIH1cbiAgaDYge1xuICAgIGZvbnQtc2l6ZTogMXJlbTtcbiAgfVxufVxuXG5hIHtcbiAgbGluZS1oZWlnaHQ6IGluaGVyaXQ7XG4gIGNvbG9yOiAjMTE1M0FEO1xuICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG4gIGN1cnNvcjogcG9pbnRlcjtcbn1cblxuYTpob3ZlciwgYTpmb2N1cyB7XG4gIGNvbG9yOiAjMGY0Nzk1O1xufVxuXG5hIGltZyB7XG4gIGJvcmRlcjogMDtcbn1cblxuaHIge1xuICBjbGVhcjogYm90aDtcbiAgbWF4LXdpZHRoOiA5Mi44NTcxNHJlbTtcbiAgaGVpZ2h0OiAwO1xuICBtYXJnaW46IDEuNDI4NTdyZW0gYXV0bztcbiAgYm9yZGVyLXRvcDogMDtcbiAgYm9yZGVyLXJpZ2h0OiAwO1xuICBib3JkZXItYm90dG9tOiAxcHggc29saWQgI2RkZGRkZDtcbiAgYm9yZGVyLWxlZnQ6IDA7XG59XG5cbnVsLFxub2wsXG5kbCB7XG4gIG1hcmdpbi1ib3R0b206IDFyZW07XG4gIGxpc3Qtc3R5bGUtcG9zaXRpb246IG91dHNpZGU7XG4gIGxpbmUtaGVpZ2h0OiAxLjM7XG59XG5cbmxpIHtcbiAgZm9udC1zaXplOiBpbmhlcml0O1xufVxuXG51bCB7XG4gIG1hcmdpbi1sZWZ0OiAxLjI1cmVtO1xuICBsaXN0LXN0eWxlLXR5cGU6IGRpc2M7XG59XG5cbm9sIHtcbiAgbWFyZ2luLWxlZnQ6IDEuMjVyZW07XG59XG5cbnVsIHVsLCBvbCB1bCwgdWwgb2wsIG9sIG9sIHtcbiAgbWFyZ2luLWxlZnQ6IDEuMjVyZW07XG4gIG1hcmdpbi1ib3R0b206IDA7XG59XG5cbmRsIHtcbiAgbWFyZ2luLWJvdHRvbTogMXJlbTtcbn1cblxuZGwgZHQge1xuICBtYXJnaW4tYm90dG9tOiAwLjNyZW07XG4gIGZvbnQtd2VpZ2h0OiBib2xkO1xufVxuXG5ibG9ja3F1b3RlIHtcbiAgbWFyZ2luOiAwIDAgMXJlbTtcbiAgcGFkZGluZzogMC42NDI4NnJlbSAxLjQyODU3cmVtIDAgMS4zNTcxNHJlbTtcbiAgYm9yZGVyLWxlZnQ6IDFweCBzb2xpZCAjZGRkZGRkO1xufVxuXG5ibG9ja3F1b3RlLCBibG9ja3F1b3RlIHAge1xuICBsaW5lLWhlaWdodDogMS4zO1xuICBjb2xvcjogIzc5Nzk2QTtcbn1cblxuY2l0ZSB7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBmb250LXNpemU6IDAuOTI4NTdyZW07XG4gIGNvbG9yOiAjNzk3OTZBO1xufVxuXG5jaXRlOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi4oCUIFwiO1xufVxuXG5hYmJyLCBhYmJyW3RpdGxlXSB7XG4gIGJvcmRlci1ib3R0b206IDFweCBkb3R0ZWQgIzBhMGEwYTtcbiAgY3Vyc29yOiBoZWxwO1xuICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG59XG5cbmZpZ3VyZSB7XG4gIG1hcmdpbjogMDtcbn1cblxuY29kZSB7XG4gIHBhZGRpbmc6IDAuMTQyODZyZW0gMC4zNTcxNHJlbSAwLjA3MTQzcmVtO1xuICBib3JkZXI6IDFweCBzb2xpZCAjZGRkZGRkO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZThlNWU1O1xuICBmb250LWZhbWlseTogQ29uc29sYXMsIFwiTGliZXJhdGlvbiBNb25vXCIsIENvdXJpZXIsIG1vbm9zcGFjZTtcbiAgZm9udC13ZWlnaHQ6IG5vcm1hbDtcbiAgY29sb3I6ICMwYTBhMGE7XG59XG5cbmtiZCB7XG4gIG1hcmdpbjogMDtcbiAgcGFkZGluZzogMC4xNDI4NnJlbSAwLjI4NTcxcmVtIDA7XG4gIGJhY2tncm91bmQtY29sb3I6ICNlOGU1ZTU7XG4gIGZvbnQtZmFtaWx5OiBDb25zb2xhcywgXCJMaWJlcmF0aW9uIE1vbm9cIiwgQ291cmllciwgbW9ub3NwYWNlO1xuICBjb2xvcjogIzBhMGEwYTtcbiAgYm9yZGVyLXJhZGl1czogMC4xOHJlbTtcbn1cblxuLnN1YmhlYWRlciB7XG4gIG1hcmdpbi10b3A6IDAuMnJlbTtcbiAgbWFyZ2luLWJvdHRvbTogMC41cmVtO1xuICBmb250LXdlaWdodDogbm9ybWFsO1xuICBsaW5lLWhlaWdodDogMS40O1xuICBjb2xvcjogIzc5Nzk2QTtcbn1cblxuLmxlYWQge1xuICBmb250LXNpemU6IDE3LjVweDtcbiAgbGluZS1oZWlnaHQ6IDEuNjtcbn1cblxuLnN0YXQge1xuICBmb250LXNpemU6IDIuNXJlbTtcbiAgbGluZS1oZWlnaHQ6IDE7XG59XG5cbnAgKyAuc3RhdCB7XG4gIG1hcmdpbi10b3A6IC0xcmVtO1xufVxuXG51bC5uby1idWxsZXQsIG9sLm5vLWJ1bGxldCB7XG4gIG1hcmdpbi1sZWZ0OiAwO1xuICBsaXN0LXN0eWxlOiBub25lO1xufVxuXG4udGV4dC1sZWZ0IHtcbiAgdGV4dC1hbGlnbjogbGVmdDtcbn1cblxuLnRleHQtcmlnaHQge1xuICB0ZXh0LWFsaWduOiByaWdodDtcbn1cblxuLnRleHQtY2VudGVyIHtcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xufVxuXG4udGV4dC1qdXN0aWZ5IHtcbiAgdGV4dC1hbGlnbjoganVzdGlmeTtcbn1cblxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQ4ZW0pIHtcbiAgLm1lZGl1bS10ZXh0LWxlZnQge1xuICAgIHRleHQtYWxpZ246IGxlZnQ7XG4gIH1cbiAgLm1lZGl1bS10ZXh0LXJpZ2h0IHtcbiAgICB0ZXh0LWFsaWduOiByaWdodDtcbiAgfVxuICAubWVkaXVtLXRleHQtY2VudGVyIHtcbiAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gIH1cbiAgLm1lZGl1bS10ZXh0LWp1c3RpZnkge1xuICAgIHRleHQtYWxpZ246IGp1c3RpZnk7XG4gIH1cbn1cblxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgLmxhcmdlLXRleHQtbGVmdCB7XG4gICAgdGV4dC1hbGlnbjogbGVmdDtcbiAgfVxuICAubGFyZ2UtdGV4dC1yaWdodCB7XG4gICAgdGV4dC1hbGlnbjogcmlnaHQ7XG4gIH1cbiAgLmxhcmdlLXRleHQtY2VudGVyIHtcbiAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gIH1cbiAgLmxhcmdlLXRleHQtanVzdGlmeSB7XG4gICAgdGV4dC1hbGlnbjoganVzdGlmeTtcbiAgfVxufVxuXG5AbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA3NWVtKSB7XG4gIC54bGFyZ2UtdGV4dC1sZWZ0IHtcbiAgICB0ZXh0LWFsaWduOiBsZWZ0O1xuICB9XG4gIC54bGFyZ2UtdGV4dC1yaWdodCB7XG4gICAgdGV4dC1hbGlnbjogcmlnaHQ7XG4gIH1cbiAgLnhsYXJnZS10ZXh0LWNlbnRlciB7XG4gICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICB9XG4gIC54bGFyZ2UtdGV4dC1qdXN0aWZ5IHtcbiAgICB0ZXh0LWFsaWduOiBqdXN0aWZ5O1xuICB9XG59XG5cbkBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDkwZW0pIHtcbiAgLnh4bGFyZ2UtdGV4dC1sZWZ0IHtcbiAgICB0ZXh0LWFsaWduOiBsZWZ0O1xuICB9XG4gIC54eGxhcmdlLXRleHQtcmlnaHQge1xuICAgIHRleHQtYWxpZ246IHJpZ2h0O1xuICB9XG4gIC54eGxhcmdlLXRleHQtY2VudGVyIHtcbiAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gIH1cbiAgLnh4bGFyZ2UtdGV4dC1qdXN0aWZ5IHtcbiAgICB0ZXh0LWFsaWduOiBqdXN0aWZ5O1xuICB9XG59XG5cbi5zaG93LWZvci1wcmludCB7XG4gIGRpc3BsYXk6IG5vbmUgIWltcG9ydGFudDtcbn1cblxuQG1lZGlhIHByaW50IHtcbiAgKiB7XG4gICAgYmFja2dyb3VuZDogdHJhbnNwYXJlbnQgIWltcG9ydGFudDtcbiAgICBib3gtc2hhZG93OiBub25lICFpbXBvcnRhbnQ7XG4gICAgY29sb3I6IGJsYWNrICFpbXBvcnRhbnQ7XG4gICAgdGV4dC1zaGFkb3c6IG5vbmUgIWltcG9ydGFudDtcbiAgfVxuICAuc2hvdy1mb3ItcHJpbnQge1xuICAgIGRpc3BsYXk6IGJsb2NrICFpbXBvcnRhbnQ7XG4gIH1cbiAgLmhpZGUtZm9yLXByaW50IHtcbiAgICBkaXNwbGF5OiBub25lICFpbXBvcnRhbnQ7XG4gIH1cbiAgdGFibGUuc2hvdy1mb3ItcHJpbnQge1xuICAgIGRpc3BsYXk6IHRhYmxlICFpbXBvcnRhbnQ7XG4gIH1cbiAgdGhlYWQuc2hvdy1mb3ItcHJpbnQge1xuICAgIGRpc3BsYXk6IHRhYmxlLWhlYWRlci1ncm91cCAhaW1wb3J0YW50O1xuICB9XG4gIHRib2R5LnNob3ctZm9yLXByaW50IHtcbiAgICBkaXNwbGF5OiB0YWJsZS1yb3ctZ3JvdXAgIWltcG9ydGFudDtcbiAgfVxuICB0ci5zaG93LWZvci1wcmludCB7XG4gICAgZGlzcGxheTogdGFibGUtcm93ICFpbXBvcnRhbnQ7XG4gIH1cbiAgdGQuc2hvdy1mb3ItcHJpbnQge1xuICAgIGRpc3BsYXk6IHRhYmxlLWNlbGwgIWltcG9ydGFudDtcbiAgfVxuICB0aC5zaG93LWZvci1wcmludCB7XG4gICAgZGlzcGxheTogdGFibGUtY2VsbCAhaW1wb3J0YW50O1xuICB9XG4gIGEsXG4gIGE6dmlzaXRlZCB7XG4gICAgdGV4dC1kZWNvcmF0aW9uOiB1bmRlcmxpbmU7XG4gIH1cbiAgYVtocmVmXTphZnRlciB7XG4gICAgY29udGVudDogXCIgKFwiIGF0dHIoaHJlZikgXCIpXCI7XG4gIH1cbiAgLmlyIGE6YWZ0ZXIsXG4gIGFbaHJlZl49J2phdmFzY3JpcHQ6J106YWZ0ZXIsXG4gIGFbaHJlZl49JyMnXTphZnRlciB7XG4gICAgY29udGVudDogJyc7XG4gIH1cbiAgYWJiclt0aXRsZV06YWZ0ZXIge1xuICAgIGNvbnRlbnQ6IFwiIChcIiBhdHRyKHRpdGxlKSBcIilcIjtcbiAgfVxuICBwcmUsXG4gIGJsb2NrcXVvdGUge1xuICAgIGJvcmRlcjogMXB4IHNvbGlkICM3OTc5NkE7XG4gICAgcGFnZS1icmVhay1pbnNpZGU6IGF2b2lkO1xuICB9XG4gIHRoZWFkIHtcbiAgICBkaXNwbGF5OiB0YWJsZS1oZWFkZXItZ3JvdXA7XG4gIH1cbiAgdHIsXG4gIGltZyB7XG4gICAgcGFnZS1icmVhay1pbnNpZGU6IGF2b2lkO1xuICB9XG4gIGltZyB7XG4gICAgbWF4LXdpZHRoOiAxMDAlICFpbXBvcnRhbnQ7XG4gIH1cbiAgQHBhZ2Uge1xuICAgIG1hcmdpbjogMC41Y207XG4gIH1cbiAgcCxcbiAgaDIsXG4gIGgzIHtcbiAgICBvcnBoYW5zOiAzO1xuICAgIHdpZG93czogMztcbiAgfVxuICBoMixcbiAgaDMge1xuICAgIHBhZ2UtYnJlYWstYWZ0ZXI6IGF2b2lkO1xuICB9XG4gIC5wcmludC1icmVhay1pbnNpZGUge1xuICAgIHBhZ2UtYnJlYWstaW5zaWRlOiBhdXRvO1xuICB9XG59XG5cbi5idXR0b24ge1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7XG4gIG1hcmdpbjogMCAwIDFyZW0gMDtcbiAgZm9udC1mYW1pbHk6IGluaGVyaXQ7XG4gIHBhZGRpbmc6IDAuNmVtIDAuOTVlbTtcbiAgLXdlYmtpdC1hcHBlYXJhbmNlOiBub25lO1xuICBib3JkZXI6IDFweCBzb2xpZCB0cmFuc3BhcmVudDtcbiAgYm9yZGVyLXJhZGl1czogMC4xOHJlbTtcbiAgdHJhbnNpdGlvbjogYmFja2dyb3VuZC1jb2xvciAwLjI1cyBlYXNlLW91dCwgY29sb3IgMC4yNXMgZWFzZS1vdXQ7XG4gIGZvbnQtc2l6ZTogMXJlbTtcbiAgbGluZS1oZWlnaHQ6IDE7XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgY3Vyc29yOiBwb2ludGVyO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjMTE1M0FEO1xuICBjb2xvcjogI2ZlZmVmZTtcbn1cblxuW2RhdGEtd2hhdGlucHV0PSdtb3VzZSddIC5idXR0b24ge1xuICBvdXRsaW5lOiAwO1xufVxuXG4uYnV0dG9uOmhvdmVyLCAuYnV0dG9uOmZvY3VzIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogIzBlNDc5MztcbiAgY29sb3I6ICNmZWZlZmU7XG59XG5cbi5idXR0b24udGlueSB7XG4gIGZvbnQtc2l6ZTogMC42cmVtO1xufVxuXG4uYnV0dG9uLnNtYWxsIHtcbiAgZm9udC1zaXplOiAwLjc1cmVtO1xufVxuXG4uYnV0dG9uLmxhcmdlIHtcbiAgZm9udC1zaXplOiAxLjM1cmVtO1xufVxuXG4uYnV0dG9uLmV4cGFuZGVkIHtcbiAgZGlzcGxheTogYmxvY2s7XG4gIHdpZHRoOiAxMDAlO1xuICBtYXJnaW4tcmlnaHQ6IDA7XG4gIG1hcmdpbi1sZWZ0OiAwO1xufVxuXG4uYnV0dG9uLnByaW1hcnkge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjMTE1M0FEO1xuICBjb2xvcjogI2ZlZmVmZTtcbn1cblxuLmJ1dHRvbi5wcmltYXJ5OmhvdmVyLCAuYnV0dG9uLnByaW1hcnk6Zm9jdXMge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjMGU0MjhhO1xuICBjb2xvcjogI2ZlZmVmZTtcbn1cblxuLmJ1dHRvbi5zZWNvbmRhcnkge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjNzY3Njc2O1xuICBjb2xvcjogI2ZlZmVmZTtcbn1cblxuLmJ1dHRvbi5zZWNvbmRhcnk6aG92ZXIsIC5idXR0b24uc2Vjb25kYXJ5OmZvY3VzIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogIzVlNWU1ZTtcbiAgY29sb3I6ICNmZWZlZmU7XG59XG5cbi5idXR0b24uc3VjY2VzcyB7XG4gIGJhY2tncm91bmQtY29sb3I6ICMzYWRiNzY7XG4gIGNvbG9yOiAjZmVmZWZlO1xufVxuXG4uYnV0dG9uLnN1Y2Nlc3M6aG92ZXIsIC5idXR0b24uc3VjY2Vzczpmb2N1cyB7XG4gIGJhY2tncm91bmQtY29sb3I6ICMyMmJiNWI7XG4gIGNvbG9yOiAjZmVmZWZlO1xufVxuXG4uYnV0dG9uLndhcm5pbmcge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZmZhZTAwO1xuICBjb2xvcjogI2ZlZmVmZTtcbn1cblxuLmJ1dHRvbi53YXJuaW5nOmhvdmVyLCAuYnV0dG9uLndhcm5pbmc6Zm9jdXMge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjY2M4YjAwO1xuICBjb2xvcjogI2ZlZmVmZTtcbn1cblxuLmJ1dHRvbi5hbGVydCB7XG4gIGJhY2tncm91bmQtY29sb3I6ICNjYzRiMzc7XG4gIGNvbG9yOiAjZmVmZWZlO1xufVxuXG4uYnV0dG9uLmFsZXJ0OmhvdmVyLCAuYnV0dG9uLmFsZXJ0OmZvY3VzIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2E1M2IyYTtcbiAgY29sb3I6ICNmZWZlZmU7XG59XG5cbi5idXR0b24ub2ZmLWJsYWNrIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogIzMxMzEzMTtcbiAgY29sb3I6ICNmZWZlZmU7XG59XG5cbi5idXR0b24ub2ZmLWJsYWNrOmhvdmVyLCAuYnV0dG9uLm9mZi1ibGFjazpmb2N1cyB7XG4gIGJhY2tncm91bmQtY29sb3I6ICMyNzI3Mjc7XG4gIGNvbG9yOiAjZmVmZWZlO1xufVxuXG4uYnV0dG9uLmxpZ2h0LWdyYXkge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZThlNWU1O1xuICBjb2xvcjogI2ZlZmVmZTtcbn1cblxuLmJ1dHRvbi5saWdodC1ncmF5OmhvdmVyLCAuYnV0dG9uLmxpZ2h0LWdyYXk6Zm9jdXMge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjYmRiNGI0O1xuICBjb2xvcjogI2ZlZmVmZTtcbn1cblxuLmJ1dHRvbi5hY2NlbnQge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjRjlBNTE5O1xuICBjb2xvcjogI2ZlZmVmZTtcbn1cblxuLmJ1dHRvbi5hY2NlbnQ6aG92ZXIsIC5idXR0b24uYWNjZW50OmZvY3VzIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2Q2ODgwNjtcbiAgY29sb3I6ICNmZWZlZmU7XG59XG5cbi5idXR0b24uZ3JlZW4ge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjMkY5RjQ2O1xuICBjb2xvcjogI2ZlZmVmZTtcbn1cblxuLmJ1dHRvbi5ncmVlbjpob3ZlciwgLmJ1dHRvbi5ncmVlbjpmb2N1cyB7XG4gIGJhY2tncm91bmQtY29sb3I6ICMyNjdmMzg7XG4gIGNvbG9yOiAjZmVmZWZlO1xufVxuXG4uYnV0dG9uLnJlZCB7XG4gIGJhY2tncm91bmQtY29sb3I6ICNjYzRiMzc7XG4gIGNvbG9yOiAjZmVmZWZlO1xufVxuXG4uYnV0dG9uLnJlZDpob3ZlciwgLmJ1dHRvbi5yZWQ6Zm9jdXMge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjYTUzYjJhO1xuICBjb2xvcjogI2ZlZmVmZTtcbn1cblxuLmJ1dHRvbi5kaXNhYmxlZCwgLmJ1dHRvbltkaXNhYmxlZF0ge1xuICBvcGFjaXR5OiAwLjI1O1xuICBjdXJzb3I6IG5vdC1hbGxvd2VkO1xufVxuXG4uYnV0dG9uLmRpc2FibGVkLCAuYnV0dG9uLmRpc2FibGVkOmhvdmVyLCAuYnV0dG9uLmRpc2FibGVkOmZvY3VzLCAuYnV0dG9uW2Rpc2FibGVkXSwgLmJ1dHRvbltkaXNhYmxlZF06aG92ZXIsIC5idXR0b25bZGlzYWJsZWRdOmZvY3VzIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogIzExNTNBRDtcbiAgY29sb3I6ICNmZWZlZmU7XG59XG5cbi5idXR0b24uZGlzYWJsZWQucHJpbWFyeSwgLmJ1dHRvbltkaXNhYmxlZF0ucHJpbWFyeSB7XG4gIG9wYWNpdHk6IDAuMjU7XG4gIGN1cnNvcjogbm90LWFsbG93ZWQ7XG59XG5cbi5idXR0b24uZGlzYWJsZWQucHJpbWFyeSwgLmJ1dHRvbi5kaXNhYmxlZC5wcmltYXJ5OmhvdmVyLCAuYnV0dG9uLmRpc2FibGVkLnByaW1hcnk6Zm9jdXMsIC5idXR0b25bZGlzYWJsZWRdLnByaW1hcnksIC5idXR0b25bZGlzYWJsZWRdLnByaW1hcnk6aG92ZXIsIC5idXR0b25bZGlzYWJsZWRdLnByaW1hcnk6Zm9jdXMge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjMTE1M0FEO1xuICBjb2xvcjogI2ZlZmVmZTtcbn1cblxuLmJ1dHRvbi5kaXNhYmxlZC5zZWNvbmRhcnksIC5idXR0b25bZGlzYWJsZWRdLnNlY29uZGFyeSB7XG4gIG9wYWNpdHk6IDAuMjU7XG4gIGN1cnNvcjogbm90LWFsbG93ZWQ7XG59XG5cbi5idXR0b24uZGlzYWJsZWQuc2Vjb25kYXJ5LCAuYnV0dG9uLmRpc2FibGVkLnNlY29uZGFyeTpob3ZlciwgLmJ1dHRvbi5kaXNhYmxlZC5zZWNvbmRhcnk6Zm9jdXMsIC5idXR0b25bZGlzYWJsZWRdLnNlY29uZGFyeSwgLmJ1dHRvbltkaXNhYmxlZF0uc2Vjb25kYXJ5OmhvdmVyLCAuYnV0dG9uW2Rpc2FibGVkXS5zZWNvbmRhcnk6Zm9jdXMge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjNzY3Njc2O1xuICBjb2xvcjogI2ZlZmVmZTtcbn1cblxuLmJ1dHRvbi5kaXNhYmxlZC5zdWNjZXNzLCAuYnV0dG9uW2Rpc2FibGVkXS5zdWNjZXNzIHtcbiAgb3BhY2l0eTogMC4yNTtcbiAgY3Vyc29yOiBub3QtYWxsb3dlZDtcbn1cblxuLmJ1dHRvbi5kaXNhYmxlZC5zdWNjZXNzLCAuYnV0dG9uLmRpc2FibGVkLnN1Y2Nlc3M6aG92ZXIsIC5idXR0b24uZGlzYWJsZWQuc3VjY2Vzczpmb2N1cywgLmJ1dHRvbltkaXNhYmxlZF0uc3VjY2VzcywgLmJ1dHRvbltkaXNhYmxlZF0uc3VjY2Vzczpob3ZlciwgLmJ1dHRvbltkaXNhYmxlZF0uc3VjY2Vzczpmb2N1cyB7XG4gIGJhY2tncm91bmQtY29sb3I6ICMzYWRiNzY7XG4gIGNvbG9yOiAjZmVmZWZlO1xufVxuXG4uYnV0dG9uLmRpc2FibGVkLndhcm5pbmcsIC5idXR0b25bZGlzYWJsZWRdLndhcm5pbmcge1xuICBvcGFjaXR5OiAwLjI1O1xuICBjdXJzb3I6IG5vdC1hbGxvd2VkO1xufVxuXG4uYnV0dG9uLmRpc2FibGVkLndhcm5pbmcsIC5idXR0b24uZGlzYWJsZWQud2FybmluZzpob3ZlciwgLmJ1dHRvbi5kaXNhYmxlZC53YXJuaW5nOmZvY3VzLCAuYnV0dG9uW2Rpc2FibGVkXS53YXJuaW5nLCAuYnV0dG9uW2Rpc2FibGVkXS53YXJuaW5nOmhvdmVyLCAuYnV0dG9uW2Rpc2FibGVkXS53YXJuaW5nOmZvY3VzIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2ZmYWUwMDtcbiAgY29sb3I6ICNmZWZlZmU7XG59XG5cbi5idXR0b24uZGlzYWJsZWQuYWxlcnQsIC5idXR0b25bZGlzYWJsZWRdLmFsZXJ0IHtcbiAgb3BhY2l0eTogMC4yNTtcbiAgY3Vyc29yOiBub3QtYWxsb3dlZDtcbn1cblxuLmJ1dHRvbi5kaXNhYmxlZC5hbGVydCwgLmJ1dHRvbi5kaXNhYmxlZC5hbGVydDpob3ZlciwgLmJ1dHRvbi5kaXNhYmxlZC5hbGVydDpmb2N1cywgLmJ1dHRvbltkaXNhYmxlZF0uYWxlcnQsIC5idXR0b25bZGlzYWJsZWRdLmFsZXJ0OmhvdmVyLCAuYnV0dG9uW2Rpc2FibGVkXS5hbGVydDpmb2N1cyB7XG4gIGJhY2tncm91bmQtY29sb3I6ICNjYzRiMzc7XG4gIGNvbG9yOiAjZmVmZWZlO1xufVxuXG4uYnV0dG9uLmRpc2FibGVkLm9mZi1ibGFjaywgLmJ1dHRvbltkaXNhYmxlZF0ub2ZmLWJsYWNrIHtcbiAgb3BhY2l0eTogMC4yNTtcbiAgY3Vyc29yOiBub3QtYWxsb3dlZDtcbn1cblxuLmJ1dHRvbi5kaXNhYmxlZC5vZmYtYmxhY2ssIC5idXR0b24uZGlzYWJsZWQub2ZmLWJsYWNrOmhvdmVyLCAuYnV0dG9uLmRpc2FibGVkLm9mZi1ibGFjazpmb2N1cywgLmJ1dHRvbltkaXNhYmxlZF0ub2ZmLWJsYWNrLCAuYnV0dG9uW2Rpc2FibGVkXS5vZmYtYmxhY2s6aG92ZXIsIC5idXR0b25bZGlzYWJsZWRdLm9mZi1ibGFjazpmb2N1cyB7XG4gIGJhY2tncm91bmQtY29sb3I6ICMzMTMxMzE7XG4gIGNvbG9yOiAjZmVmZWZlO1xufVxuXG4uYnV0dG9uLmRpc2FibGVkLmxpZ2h0LWdyYXksIC5idXR0b25bZGlzYWJsZWRdLmxpZ2h0LWdyYXkge1xuICBvcGFjaXR5OiAwLjI1O1xuICBjdXJzb3I6IG5vdC1hbGxvd2VkO1xufVxuXG4uYnV0dG9uLmRpc2FibGVkLmxpZ2h0LWdyYXksIC5idXR0b24uZGlzYWJsZWQubGlnaHQtZ3JheTpob3ZlciwgLmJ1dHRvbi5kaXNhYmxlZC5saWdodC1ncmF5OmZvY3VzLCAuYnV0dG9uW2Rpc2FibGVkXS5saWdodC1ncmF5LCAuYnV0dG9uW2Rpc2FibGVkXS5saWdodC1ncmF5OmhvdmVyLCAuYnV0dG9uW2Rpc2FibGVkXS5saWdodC1ncmF5OmZvY3VzIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2U4ZTVlNTtcbiAgY29sb3I6ICNmZWZlZmU7XG59XG5cbi5idXR0b24uZGlzYWJsZWQuYWNjZW50LCAuYnV0dG9uW2Rpc2FibGVkXS5hY2NlbnQge1xuICBvcGFjaXR5OiAwLjI1O1xuICBjdXJzb3I6IG5vdC1hbGxvd2VkO1xufVxuXG4uYnV0dG9uLmRpc2FibGVkLmFjY2VudCwgLmJ1dHRvbi5kaXNhYmxlZC5hY2NlbnQ6aG92ZXIsIC5idXR0b24uZGlzYWJsZWQuYWNjZW50OmZvY3VzLCAuYnV0dG9uW2Rpc2FibGVkXS5hY2NlbnQsIC5idXR0b25bZGlzYWJsZWRdLmFjY2VudDpob3ZlciwgLmJ1dHRvbltkaXNhYmxlZF0uYWNjZW50OmZvY3VzIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogI0Y5QTUxOTtcbiAgY29sb3I6ICNmZWZlZmU7XG59XG5cbi5idXR0b24uZGlzYWJsZWQuZ3JlZW4sIC5idXR0b25bZGlzYWJsZWRdLmdyZWVuIHtcbiAgb3BhY2l0eTogMC4yNTtcbiAgY3Vyc29yOiBub3QtYWxsb3dlZDtcbn1cblxuLmJ1dHRvbi5kaXNhYmxlZC5ncmVlbiwgLmJ1dHRvbi5kaXNhYmxlZC5ncmVlbjpob3ZlciwgLmJ1dHRvbi5kaXNhYmxlZC5ncmVlbjpmb2N1cywgLmJ1dHRvbltkaXNhYmxlZF0uZ3JlZW4sIC5idXR0b25bZGlzYWJsZWRdLmdyZWVuOmhvdmVyLCAuYnV0dG9uW2Rpc2FibGVkXS5ncmVlbjpmb2N1cyB7XG4gIGJhY2tncm91bmQtY29sb3I6ICMyRjlGNDY7XG4gIGNvbG9yOiAjZmVmZWZlO1xufVxuXG4uYnV0dG9uLmRpc2FibGVkLnJlZCwgLmJ1dHRvbltkaXNhYmxlZF0ucmVkIHtcbiAgb3BhY2l0eTogMC4yNTtcbiAgY3Vyc29yOiBub3QtYWxsb3dlZDtcbn1cblxuLmJ1dHRvbi5kaXNhYmxlZC5yZWQsIC5idXR0b24uZGlzYWJsZWQucmVkOmhvdmVyLCAuYnV0dG9uLmRpc2FibGVkLnJlZDpmb2N1cywgLmJ1dHRvbltkaXNhYmxlZF0ucmVkLCAuYnV0dG9uW2Rpc2FibGVkXS5yZWQ6aG92ZXIsIC5idXR0b25bZGlzYWJsZWRdLnJlZDpmb2N1cyB7XG4gIGJhY2tncm91bmQtY29sb3I6ICNjYzRiMzc7XG4gIGNvbG9yOiAjZmVmZWZlO1xufVxuXG4uYnV0dG9uLmhvbGxvdyB7XG4gIGJvcmRlcjogMXB4IHNvbGlkICMxMTUzQUQ7XG4gIGNvbG9yOiAjMTE1M0FEO1xufVxuXG4uYnV0dG9uLmhvbGxvdywgLmJ1dHRvbi5ob2xsb3c6aG92ZXIsIC5idXR0b24uaG9sbG93OmZvY3VzIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XG59XG5cbi5idXR0b24uaG9sbG93LmRpc2FibGVkLCAuYnV0dG9uLmhvbGxvdy5kaXNhYmxlZDpob3ZlciwgLmJ1dHRvbi5ob2xsb3cuZGlzYWJsZWQ6Zm9jdXMsIC5idXR0b24uaG9sbG93W2Rpc2FibGVkXSwgLmJ1dHRvbi5ob2xsb3dbZGlzYWJsZWRdOmhvdmVyLCAuYnV0dG9uLmhvbGxvd1tkaXNhYmxlZF06Zm9jdXMge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcbn1cblxuLmJ1dHRvbi5ob2xsb3c6aG92ZXIsIC5idXR0b24uaG9sbG93OmZvY3VzIHtcbiAgYm9yZGVyLWNvbG9yOiAjMDkyYTU3O1xuICBjb2xvcjogIzA5MmE1Nztcbn1cblxuLmJ1dHRvbi5ob2xsb3c6aG92ZXIuZGlzYWJsZWQsIC5idXR0b24uaG9sbG93OmhvdmVyW2Rpc2FibGVkXSwgLmJ1dHRvbi5ob2xsb3c6Zm9jdXMuZGlzYWJsZWQsIC5idXR0b24uaG9sbG93OmZvY3VzW2Rpc2FibGVkXSB7XG4gIGJvcmRlcjogMXB4IHNvbGlkICMxMTUzQUQ7XG4gIGNvbG9yOiAjMTE1M0FEO1xufVxuXG4uYnV0dG9uLmhvbGxvdy5wcmltYXJ5IHtcbiAgYm9yZGVyOiAxcHggc29saWQgIzExNTNBRDtcbiAgY29sb3I6ICMxMTUzQUQ7XG59XG5cbi5idXR0b24uaG9sbG93LnByaW1hcnk6aG92ZXIsIC5idXR0b24uaG9sbG93LnByaW1hcnk6Zm9jdXMge1xuICBib3JkZXItY29sb3I6ICMwOTJhNTc7XG4gIGNvbG9yOiAjMDkyYTU3O1xufVxuXG4uYnV0dG9uLmhvbGxvdy5wcmltYXJ5OmhvdmVyLmRpc2FibGVkLCAuYnV0dG9uLmhvbGxvdy5wcmltYXJ5OmhvdmVyW2Rpc2FibGVkXSwgLmJ1dHRvbi5ob2xsb3cucHJpbWFyeTpmb2N1cy5kaXNhYmxlZCwgLmJ1dHRvbi5ob2xsb3cucHJpbWFyeTpmb2N1c1tkaXNhYmxlZF0ge1xuICBib3JkZXI6IDFweCBzb2xpZCAjMTE1M0FEO1xuICBjb2xvcjogIzExNTNBRDtcbn1cblxuLmJ1dHRvbi5ob2xsb3cuc2Vjb25kYXJ5IHtcbiAgYm9yZGVyOiAxcHggc29saWQgIzc2NzY3NjtcbiAgY29sb3I6ICM3Njc2NzY7XG59XG5cbi5idXR0b24uaG9sbG93LnNlY29uZGFyeTpob3ZlciwgLmJ1dHRvbi5ob2xsb3cuc2Vjb25kYXJ5OmZvY3VzIHtcbiAgYm9yZGVyLWNvbG9yOiAjM2IzYjNiO1xuICBjb2xvcjogIzNiM2IzYjtcbn1cblxuLmJ1dHRvbi5ob2xsb3cuc2Vjb25kYXJ5OmhvdmVyLmRpc2FibGVkLCAuYnV0dG9uLmhvbGxvdy5zZWNvbmRhcnk6aG92ZXJbZGlzYWJsZWRdLCAuYnV0dG9uLmhvbGxvdy5zZWNvbmRhcnk6Zm9jdXMuZGlzYWJsZWQsIC5idXR0b24uaG9sbG93LnNlY29uZGFyeTpmb2N1c1tkaXNhYmxlZF0ge1xuICBib3JkZXI6IDFweCBzb2xpZCAjNzY3Njc2O1xuICBjb2xvcjogIzc2NzY3Njtcbn1cblxuLmJ1dHRvbi5ob2xsb3cuc3VjY2VzcyB7XG4gIGJvcmRlcjogMXB4IHNvbGlkICMzYWRiNzY7XG4gIGNvbG9yOiAjM2FkYjc2O1xufVxuXG4uYnV0dG9uLmhvbGxvdy5zdWNjZXNzOmhvdmVyLCAuYnV0dG9uLmhvbGxvdy5zdWNjZXNzOmZvY3VzIHtcbiAgYm9yZGVyLWNvbG9yOiAjMTU3NTM5O1xuICBjb2xvcjogIzE1NzUzOTtcbn1cblxuLmJ1dHRvbi5ob2xsb3cuc3VjY2Vzczpob3Zlci5kaXNhYmxlZCwgLmJ1dHRvbi5ob2xsb3cuc3VjY2Vzczpob3ZlcltkaXNhYmxlZF0sIC5idXR0b24uaG9sbG93LnN1Y2Nlc3M6Zm9jdXMuZGlzYWJsZWQsIC5idXR0b24uaG9sbG93LnN1Y2Nlc3M6Zm9jdXNbZGlzYWJsZWRdIHtcbiAgYm9yZGVyOiAxcHggc29saWQgIzNhZGI3NjtcbiAgY29sb3I6ICMzYWRiNzY7XG59XG5cbi5idXR0b24uaG9sbG93Lndhcm5pbmcge1xuICBib3JkZXI6IDFweCBzb2xpZCAjZmZhZTAwO1xuICBjb2xvcjogI2ZmYWUwMDtcbn1cblxuLmJ1dHRvbi5ob2xsb3cud2FybmluZzpob3ZlciwgLmJ1dHRvbi5ob2xsb3cud2FybmluZzpmb2N1cyB7XG4gIGJvcmRlci1jb2xvcjogIzgwNTcwMDtcbiAgY29sb3I6ICM4MDU3MDA7XG59XG5cbi5idXR0b24uaG9sbG93Lndhcm5pbmc6aG92ZXIuZGlzYWJsZWQsIC5idXR0b24uaG9sbG93Lndhcm5pbmc6aG92ZXJbZGlzYWJsZWRdLCAuYnV0dG9uLmhvbGxvdy53YXJuaW5nOmZvY3VzLmRpc2FibGVkLCAuYnV0dG9uLmhvbGxvdy53YXJuaW5nOmZvY3VzW2Rpc2FibGVkXSB7XG4gIGJvcmRlcjogMXB4IHNvbGlkICNmZmFlMDA7XG4gIGNvbG9yOiAjZmZhZTAwO1xufVxuXG4uYnV0dG9uLmhvbGxvdy5hbGVydCB7XG4gIGJvcmRlcjogMXB4IHNvbGlkICNjYzRiMzc7XG4gIGNvbG9yOiAjY2M0YjM3O1xufVxuXG4uYnV0dG9uLmhvbGxvdy5hbGVydDpob3ZlciwgLmJ1dHRvbi5ob2xsb3cuYWxlcnQ6Zm9jdXMge1xuICBib3JkZXItY29sb3I6ICM2NzI1MWE7XG4gIGNvbG9yOiAjNjcyNTFhO1xufVxuXG4uYnV0dG9uLmhvbGxvdy5hbGVydDpob3Zlci5kaXNhYmxlZCwgLmJ1dHRvbi5ob2xsb3cuYWxlcnQ6aG92ZXJbZGlzYWJsZWRdLCAuYnV0dG9uLmhvbGxvdy5hbGVydDpmb2N1cy5kaXNhYmxlZCwgLmJ1dHRvbi5ob2xsb3cuYWxlcnQ6Zm9jdXNbZGlzYWJsZWRdIHtcbiAgYm9yZGVyOiAxcHggc29saWQgI2NjNGIzNztcbiAgY29sb3I6ICNjYzRiMzc7XG59XG5cbi5idXR0b24uaG9sbG93Lm9mZi1ibGFjayB7XG4gIGJvcmRlcjogMXB4IHNvbGlkICMzMTMxMzE7XG4gIGNvbG9yOiAjMzEzMTMxO1xufVxuXG4uYnV0dG9uLmhvbGxvdy5vZmYtYmxhY2s6aG92ZXIsIC5idXR0b24uaG9sbG93Lm9mZi1ibGFjazpmb2N1cyB7XG4gIGJvcmRlci1jb2xvcjogIzE5MTkxOTtcbiAgY29sb3I6ICMxOTE5MTk7XG59XG5cbi5idXR0b24uaG9sbG93Lm9mZi1ibGFjazpob3Zlci5kaXNhYmxlZCwgLmJ1dHRvbi5ob2xsb3cub2ZmLWJsYWNrOmhvdmVyW2Rpc2FibGVkXSwgLmJ1dHRvbi5ob2xsb3cub2ZmLWJsYWNrOmZvY3VzLmRpc2FibGVkLCAuYnV0dG9uLmhvbGxvdy5vZmYtYmxhY2s6Zm9jdXNbZGlzYWJsZWRdIHtcbiAgYm9yZGVyOiAxcHggc29saWQgIzMxMzEzMTtcbiAgY29sb3I6ICMzMTMxMzE7XG59XG5cbi5idXR0b24uaG9sbG93LmxpZ2h0LWdyYXkge1xuICBib3JkZXI6IDFweCBzb2xpZCAjZThlNWU1O1xuICBjb2xvcjogI2U4ZTVlNTtcbn1cblxuLmJ1dHRvbi5ob2xsb3cubGlnaHQtZ3JheTpob3ZlciwgLmJ1dHRvbi5ob2xsb3cubGlnaHQtZ3JheTpmb2N1cyB7XG4gIGJvcmRlci1jb2xvcjogIzdhNmM2YztcbiAgY29sb3I6ICM3YTZjNmM7XG59XG5cbi5idXR0b24uaG9sbG93LmxpZ2h0LWdyYXk6aG92ZXIuZGlzYWJsZWQsIC5idXR0b24uaG9sbG93LmxpZ2h0LWdyYXk6aG92ZXJbZGlzYWJsZWRdLCAuYnV0dG9uLmhvbGxvdy5saWdodC1ncmF5OmZvY3VzLmRpc2FibGVkLCAuYnV0dG9uLmhvbGxvdy5saWdodC1ncmF5OmZvY3VzW2Rpc2FibGVkXSB7XG4gIGJvcmRlcjogMXB4IHNvbGlkICNlOGU1ZTU7XG4gIGNvbG9yOiAjZThlNWU1O1xufVxuXG4uYnV0dG9uLmhvbGxvdy5hY2NlbnQge1xuICBib3JkZXI6IDFweCBzb2xpZCAjRjlBNTE5O1xuICBjb2xvcjogI0Y5QTUxOTtcbn1cblxuLmJ1dHRvbi5ob2xsb3cuYWNjZW50OmhvdmVyLCAuYnV0dG9uLmhvbGxvdy5hY2NlbnQ6Zm9jdXMge1xuICBib3JkZXItY29sb3I6ICM4NjU1MDM7XG4gIGNvbG9yOiAjODY1NTAzO1xufVxuXG4uYnV0dG9uLmhvbGxvdy5hY2NlbnQ6aG92ZXIuZGlzYWJsZWQsIC5idXR0b24uaG9sbG93LmFjY2VudDpob3ZlcltkaXNhYmxlZF0sIC5idXR0b24uaG9sbG93LmFjY2VudDpmb2N1cy5kaXNhYmxlZCwgLmJ1dHRvbi5ob2xsb3cuYWNjZW50OmZvY3VzW2Rpc2FibGVkXSB7XG4gIGJvcmRlcjogMXB4IHNvbGlkICNGOUE1MTk7XG4gIGNvbG9yOiAjRjlBNTE5O1xufVxuXG4uYnV0dG9uLmhvbGxvdy5ncmVlbiB7XG4gIGJvcmRlcjogMXB4IHNvbGlkICMyRjlGNDY7XG4gIGNvbG9yOiAjMkY5RjQ2O1xufVxuXG4uYnV0dG9uLmhvbGxvdy5ncmVlbjpob3ZlciwgLmJ1dHRvbi5ob2xsb3cuZ3JlZW46Zm9jdXMge1xuICBib3JkZXItY29sb3I6ICMxODUwMjM7XG4gIGNvbG9yOiAjMTg1MDIzO1xufVxuXG4uYnV0dG9uLmhvbGxvdy5ncmVlbjpob3Zlci5kaXNhYmxlZCwgLmJ1dHRvbi5ob2xsb3cuZ3JlZW46aG92ZXJbZGlzYWJsZWRdLCAuYnV0dG9uLmhvbGxvdy5ncmVlbjpmb2N1cy5kaXNhYmxlZCwgLmJ1dHRvbi5ob2xsb3cuZ3JlZW46Zm9jdXNbZGlzYWJsZWRdIHtcbiAgYm9yZGVyOiAxcHggc29saWQgIzJGOUY0NjtcbiAgY29sb3I6ICMyRjlGNDY7XG59XG5cbi5idXR0b24uaG9sbG93LnJlZCB7XG4gIGJvcmRlcjogMXB4IHNvbGlkICNjYzRiMzc7XG4gIGNvbG9yOiAjY2M0YjM3O1xufVxuXG4uYnV0dG9uLmhvbGxvdy5yZWQ6aG92ZXIsIC5idXR0b24uaG9sbG93LnJlZDpmb2N1cyB7XG4gIGJvcmRlci1jb2xvcjogIzY3MjUxYTtcbiAgY29sb3I6ICM2NzI1MWE7XG59XG5cbi5idXR0b24uaG9sbG93LnJlZDpob3Zlci5kaXNhYmxlZCwgLmJ1dHRvbi5ob2xsb3cucmVkOmhvdmVyW2Rpc2FibGVkXSwgLmJ1dHRvbi5ob2xsb3cucmVkOmZvY3VzLmRpc2FibGVkLCAuYnV0dG9uLmhvbGxvdy5yZWQ6Zm9jdXNbZGlzYWJsZWRdIHtcbiAgYm9yZGVyOiAxcHggc29saWQgI2NjNGIzNztcbiAgY29sb3I6ICNjYzRiMzc7XG59XG5cbi5idXR0b24uY2xlYXIge1xuICBib3JkZXI6IDFweCBzb2xpZCAjMTE1M0FEO1xuICBjb2xvcjogIzExNTNBRDtcbn1cblxuLmJ1dHRvbi5jbGVhciwgLmJ1dHRvbi5jbGVhcjpob3ZlciwgLmJ1dHRvbi5jbGVhcjpmb2N1cyB7XG4gIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xufVxuXG4uYnV0dG9uLmNsZWFyLmRpc2FibGVkLCAuYnV0dG9uLmNsZWFyLmRpc2FibGVkOmhvdmVyLCAuYnV0dG9uLmNsZWFyLmRpc2FibGVkOmZvY3VzLCAuYnV0dG9uLmNsZWFyW2Rpc2FibGVkXSwgLmJ1dHRvbi5jbGVhcltkaXNhYmxlZF06aG92ZXIsIC5idXR0b24uY2xlYXJbZGlzYWJsZWRdOmZvY3VzIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XG59XG5cbi5idXR0b24uY2xlYXI6aG92ZXIsIC5idXR0b24uY2xlYXI6Zm9jdXMge1xuICBib3JkZXItY29sb3I6ICMwOTJhNTc7XG4gIGNvbG9yOiAjMDkyYTU3O1xufVxuXG4uYnV0dG9uLmNsZWFyOmhvdmVyLmRpc2FibGVkLCAuYnV0dG9uLmNsZWFyOmhvdmVyW2Rpc2FibGVkXSwgLmJ1dHRvbi5jbGVhcjpmb2N1cy5kaXNhYmxlZCwgLmJ1dHRvbi5jbGVhcjpmb2N1c1tkaXNhYmxlZF0ge1xuICBib3JkZXI6IDFweCBzb2xpZCAjMTE1M0FEO1xuICBjb2xvcjogIzExNTNBRDtcbn1cblxuLmJ1dHRvbi5jbGVhciwgLmJ1dHRvbi5jbGVhci5kaXNhYmxlZCwgLmJ1dHRvbi5jbGVhcltkaXNhYmxlZF0sIC5idXR0b24uY2xlYXI6aG92ZXIsIC5idXR0b24uY2xlYXI6aG92ZXIuZGlzYWJsZWQsIC5idXR0b24uY2xlYXI6aG92ZXJbZGlzYWJsZWRdLCAuYnV0dG9uLmNsZWFyOmZvY3VzLCAuYnV0dG9uLmNsZWFyOmZvY3VzLmRpc2FibGVkLCAuYnV0dG9uLmNsZWFyOmZvY3VzW2Rpc2FibGVkXSB7XG4gIGJvcmRlci1jb2xvcjogdHJhbnNwYXJlbnQ7XG59XG5cbi5idXR0b24uY2xlYXIucHJpbWFyeSB7XG4gIGJvcmRlcjogMXB4IHNvbGlkICMxMTUzQUQ7XG4gIGNvbG9yOiAjMTE1M0FEO1xufVxuXG4uYnV0dG9uLmNsZWFyLnByaW1hcnk6aG92ZXIsIC5idXR0b24uY2xlYXIucHJpbWFyeTpmb2N1cyB7XG4gIGJvcmRlci1jb2xvcjogIzA5MmE1NztcbiAgY29sb3I6ICMwOTJhNTc7XG59XG5cbi5idXR0b24uY2xlYXIucHJpbWFyeTpob3Zlci5kaXNhYmxlZCwgLmJ1dHRvbi5jbGVhci5wcmltYXJ5OmhvdmVyW2Rpc2FibGVkXSwgLmJ1dHRvbi5jbGVhci5wcmltYXJ5OmZvY3VzLmRpc2FibGVkLCAuYnV0dG9uLmNsZWFyLnByaW1hcnk6Zm9jdXNbZGlzYWJsZWRdIHtcbiAgYm9yZGVyOiAxcHggc29saWQgIzExNTNBRDtcbiAgY29sb3I6ICMxMTUzQUQ7XG59XG5cbi5idXR0b24uY2xlYXIucHJpbWFyeSwgLmJ1dHRvbi5jbGVhci5wcmltYXJ5LmRpc2FibGVkLCAuYnV0dG9uLmNsZWFyLnByaW1hcnlbZGlzYWJsZWRdLCAuYnV0dG9uLmNsZWFyLnByaW1hcnk6aG92ZXIsIC5idXR0b24uY2xlYXIucHJpbWFyeTpob3Zlci5kaXNhYmxlZCwgLmJ1dHRvbi5jbGVhci5wcmltYXJ5OmhvdmVyW2Rpc2FibGVkXSwgLmJ1dHRvbi5jbGVhci5wcmltYXJ5OmZvY3VzLCAuYnV0dG9uLmNsZWFyLnByaW1hcnk6Zm9jdXMuZGlzYWJsZWQsIC5idXR0b24uY2xlYXIucHJpbWFyeTpmb2N1c1tkaXNhYmxlZF0ge1xuICBib3JkZXItY29sb3I6IHRyYW5zcGFyZW50O1xufVxuXG4uYnV0dG9uLmNsZWFyLnNlY29uZGFyeSB7XG4gIGJvcmRlcjogMXB4IHNvbGlkICM3Njc2NzY7XG4gIGNvbG9yOiAjNzY3Njc2O1xufVxuXG4uYnV0dG9uLmNsZWFyLnNlY29uZGFyeTpob3ZlciwgLmJ1dHRvbi5jbGVhci5zZWNvbmRhcnk6Zm9jdXMge1xuICBib3JkZXItY29sb3I6ICMzYjNiM2I7XG4gIGNvbG9yOiAjM2IzYjNiO1xufVxuXG4uYnV0dG9uLmNsZWFyLnNlY29uZGFyeTpob3Zlci5kaXNhYmxlZCwgLmJ1dHRvbi5jbGVhci5zZWNvbmRhcnk6aG92ZXJbZGlzYWJsZWRdLCAuYnV0dG9uLmNsZWFyLnNlY29uZGFyeTpmb2N1cy5kaXNhYmxlZCwgLmJ1dHRvbi5jbGVhci5zZWNvbmRhcnk6Zm9jdXNbZGlzYWJsZWRdIHtcbiAgYm9yZGVyOiAxcHggc29saWQgIzc2NzY3NjtcbiAgY29sb3I6ICM3Njc2NzY7XG59XG5cbi5idXR0b24uY2xlYXIuc2Vjb25kYXJ5LCAuYnV0dG9uLmNsZWFyLnNlY29uZGFyeS5kaXNhYmxlZCwgLmJ1dHRvbi5jbGVhci5zZWNvbmRhcnlbZGlzYWJsZWRdLCAuYnV0dG9uLmNsZWFyLnNlY29uZGFyeTpob3ZlciwgLmJ1dHRvbi5jbGVhci5zZWNvbmRhcnk6aG92ZXIuZGlzYWJsZWQsIC5idXR0b24uY2xlYXIuc2Vjb25kYXJ5OmhvdmVyW2Rpc2FibGVkXSwgLmJ1dHRvbi5jbGVhci5zZWNvbmRhcnk6Zm9jdXMsIC5idXR0b24uY2xlYXIuc2Vjb25kYXJ5OmZvY3VzLmRpc2FibGVkLCAuYnV0dG9uLmNsZWFyLnNlY29uZGFyeTpmb2N1c1tkaXNhYmxlZF0ge1xuICBib3JkZXItY29sb3I6IHRyYW5zcGFyZW50O1xufVxuXG4uYnV0dG9uLmNsZWFyLnN1Y2Nlc3Mge1xuICBib3JkZXI6IDFweCBzb2xpZCAjM2FkYjc2O1xuICBjb2xvcjogIzNhZGI3Njtcbn1cblxuLmJ1dHRvbi5jbGVhci5zdWNjZXNzOmhvdmVyLCAuYnV0dG9uLmNsZWFyLnN1Y2Nlc3M6Zm9jdXMge1xuICBib3JkZXItY29sb3I6ICMxNTc1Mzk7XG4gIGNvbG9yOiAjMTU3NTM5O1xufVxuXG4uYnV0dG9uLmNsZWFyLnN1Y2Nlc3M6aG92ZXIuZGlzYWJsZWQsIC5idXR0b24uY2xlYXIuc3VjY2Vzczpob3ZlcltkaXNhYmxlZF0sIC5idXR0b24uY2xlYXIuc3VjY2Vzczpmb2N1cy5kaXNhYmxlZCwgLmJ1dHRvbi5jbGVhci5zdWNjZXNzOmZvY3VzW2Rpc2FibGVkXSB7XG4gIGJvcmRlcjogMXB4IHNvbGlkICMzYWRiNzY7XG4gIGNvbG9yOiAjM2FkYjc2O1xufVxuXG4uYnV0dG9uLmNsZWFyLnN1Y2Nlc3MsIC5idXR0b24uY2xlYXIuc3VjY2Vzcy5kaXNhYmxlZCwgLmJ1dHRvbi5jbGVhci5zdWNjZXNzW2Rpc2FibGVkXSwgLmJ1dHRvbi5jbGVhci5zdWNjZXNzOmhvdmVyLCAuYnV0dG9uLmNsZWFyLnN1Y2Nlc3M6aG92ZXIuZGlzYWJsZWQsIC5idXR0b24uY2xlYXIuc3VjY2Vzczpob3ZlcltkaXNhYmxlZF0sIC5idXR0b24uY2xlYXIuc3VjY2Vzczpmb2N1cywgLmJ1dHRvbi5jbGVhci5zdWNjZXNzOmZvY3VzLmRpc2FibGVkLCAuYnV0dG9uLmNsZWFyLnN1Y2Nlc3M6Zm9jdXNbZGlzYWJsZWRdIHtcbiAgYm9yZGVyLWNvbG9yOiB0cmFuc3BhcmVudDtcbn1cblxuLmJ1dHRvbi5jbGVhci53YXJuaW5nIHtcbiAgYm9yZGVyOiAxcHggc29saWQgI2ZmYWUwMDtcbiAgY29sb3I6ICNmZmFlMDA7XG59XG5cbi5idXR0b24uY2xlYXIud2FybmluZzpob3ZlciwgLmJ1dHRvbi5jbGVhci53YXJuaW5nOmZvY3VzIHtcbiAgYm9yZGVyLWNvbG9yOiAjODA1NzAwO1xuICBjb2xvcjogIzgwNTcwMDtcbn1cblxuLmJ1dHRvbi5jbGVhci53YXJuaW5nOmhvdmVyLmRpc2FibGVkLCAuYnV0dG9uLmNsZWFyLndhcm5pbmc6aG92ZXJbZGlzYWJsZWRdLCAuYnV0dG9uLmNsZWFyLndhcm5pbmc6Zm9jdXMuZGlzYWJsZWQsIC5idXR0b24uY2xlYXIud2FybmluZzpmb2N1c1tkaXNhYmxlZF0ge1xuICBib3JkZXI6IDFweCBzb2xpZCAjZmZhZTAwO1xuICBjb2xvcjogI2ZmYWUwMDtcbn1cblxuLmJ1dHRvbi5jbGVhci53YXJuaW5nLCAuYnV0dG9uLmNsZWFyLndhcm5pbmcuZGlzYWJsZWQsIC5idXR0b24uY2xlYXIud2FybmluZ1tkaXNhYmxlZF0sIC5idXR0b24uY2xlYXIud2FybmluZzpob3ZlciwgLmJ1dHRvbi5jbGVhci53YXJuaW5nOmhvdmVyLmRpc2FibGVkLCAuYnV0dG9uLmNsZWFyLndhcm5pbmc6aG92ZXJbZGlzYWJsZWRdLCAuYnV0dG9uLmNsZWFyLndhcm5pbmc6Zm9jdXMsIC5idXR0b24uY2xlYXIud2FybmluZzpmb2N1cy5kaXNhYmxlZCwgLmJ1dHRvbi5jbGVhci53YXJuaW5nOmZvY3VzW2Rpc2FibGVkXSB7XG4gIGJvcmRlci1jb2xvcjogdHJhbnNwYXJlbnQ7XG59XG5cbi5idXR0b24uY2xlYXIuYWxlcnQge1xuICBib3JkZXI6IDFweCBzb2xpZCAjY2M0YjM3O1xuICBjb2xvcjogI2NjNGIzNztcbn1cblxuLmJ1dHRvbi5jbGVhci5hbGVydDpob3ZlciwgLmJ1dHRvbi5jbGVhci5hbGVydDpmb2N1cyB7XG4gIGJvcmRlci1jb2xvcjogIzY3MjUxYTtcbiAgY29sb3I6ICM2NzI1MWE7XG59XG5cbi5idXR0b24uY2xlYXIuYWxlcnQ6aG92ZXIuZGlzYWJsZWQsIC5idXR0b24uY2xlYXIuYWxlcnQ6aG92ZXJbZGlzYWJsZWRdLCAuYnV0dG9uLmNsZWFyLmFsZXJ0OmZvY3VzLmRpc2FibGVkLCAuYnV0dG9uLmNsZWFyLmFsZXJ0OmZvY3VzW2Rpc2FibGVkXSB7XG4gIGJvcmRlcjogMXB4IHNvbGlkICNjYzRiMzc7XG4gIGNvbG9yOiAjY2M0YjM3O1xufVxuXG4uYnV0dG9uLmNsZWFyLmFsZXJ0LCAuYnV0dG9uLmNsZWFyLmFsZXJ0LmRpc2FibGVkLCAuYnV0dG9uLmNsZWFyLmFsZXJ0W2Rpc2FibGVkXSwgLmJ1dHRvbi5jbGVhci5hbGVydDpob3ZlciwgLmJ1dHRvbi5jbGVhci5hbGVydDpob3Zlci5kaXNhYmxlZCwgLmJ1dHRvbi5jbGVhci5hbGVydDpob3ZlcltkaXNhYmxlZF0sIC5idXR0b24uY2xlYXIuYWxlcnQ6Zm9jdXMsIC5idXR0b24uY2xlYXIuYWxlcnQ6Zm9jdXMuZGlzYWJsZWQsIC5idXR0b24uY2xlYXIuYWxlcnQ6Zm9jdXNbZGlzYWJsZWRdIHtcbiAgYm9yZGVyLWNvbG9yOiB0cmFuc3BhcmVudDtcbn1cblxuLmJ1dHRvbi5jbGVhci5vZmYtYmxhY2sge1xuICBib3JkZXI6IDFweCBzb2xpZCAjMzEzMTMxO1xuICBjb2xvcjogIzMxMzEzMTtcbn1cblxuLmJ1dHRvbi5jbGVhci5vZmYtYmxhY2s6aG92ZXIsIC5idXR0b24uY2xlYXIub2ZmLWJsYWNrOmZvY3VzIHtcbiAgYm9yZGVyLWNvbG9yOiAjMTkxOTE5O1xuICBjb2xvcjogIzE5MTkxOTtcbn1cblxuLmJ1dHRvbi5jbGVhci5vZmYtYmxhY2s6aG92ZXIuZGlzYWJsZWQsIC5idXR0b24uY2xlYXIub2ZmLWJsYWNrOmhvdmVyW2Rpc2FibGVkXSwgLmJ1dHRvbi5jbGVhci5vZmYtYmxhY2s6Zm9jdXMuZGlzYWJsZWQsIC5idXR0b24uY2xlYXIub2ZmLWJsYWNrOmZvY3VzW2Rpc2FibGVkXSB7XG4gIGJvcmRlcjogMXB4IHNvbGlkICMzMTMxMzE7XG4gIGNvbG9yOiAjMzEzMTMxO1xufVxuXG4uYnV0dG9uLmNsZWFyLm9mZi1ibGFjaywgLmJ1dHRvbi5jbGVhci5vZmYtYmxhY2suZGlzYWJsZWQsIC5idXR0b24uY2xlYXIub2ZmLWJsYWNrW2Rpc2FibGVkXSwgLmJ1dHRvbi5jbGVhci5vZmYtYmxhY2s6aG92ZXIsIC5idXR0b24uY2xlYXIub2ZmLWJsYWNrOmhvdmVyLmRpc2FibGVkLCAuYnV0dG9uLmNsZWFyLm9mZi1ibGFjazpob3ZlcltkaXNhYmxlZF0sIC5idXR0b24uY2xlYXIub2ZmLWJsYWNrOmZvY3VzLCAuYnV0dG9uLmNsZWFyLm9mZi1ibGFjazpmb2N1cy5kaXNhYmxlZCwgLmJ1dHRvbi5jbGVhci5vZmYtYmxhY2s6Zm9jdXNbZGlzYWJsZWRdIHtcbiAgYm9yZGVyLWNvbG9yOiB0cmFuc3BhcmVudDtcbn1cblxuLmJ1dHRvbi5jbGVhci5saWdodC1ncmF5IHtcbiAgYm9yZGVyOiAxcHggc29saWQgI2U4ZTVlNTtcbiAgY29sb3I6ICNlOGU1ZTU7XG59XG5cbi5idXR0b24uY2xlYXIubGlnaHQtZ3JheTpob3ZlciwgLmJ1dHRvbi5jbGVhci5saWdodC1ncmF5OmZvY3VzIHtcbiAgYm9yZGVyLWNvbG9yOiAjN2E2YzZjO1xuICBjb2xvcjogIzdhNmM2Yztcbn1cblxuLmJ1dHRvbi5jbGVhci5saWdodC1ncmF5OmhvdmVyLmRpc2FibGVkLCAuYnV0dG9uLmNsZWFyLmxpZ2h0LWdyYXk6aG92ZXJbZGlzYWJsZWRdLCAuYnV0dG9uLmNsZWFyLmxpZ2h0LWdyYXk6Zm9jdXMuZGlzYWJsZWQsIC5idXR0b24uY2xlYXIubGlnaHQtZ3JheTpmb2N1c1tkaXNhYmxlZF0ge1xuICBib3JkZXI6IDFweCBzb2xpZCAjZThlNWU1O1xuICBjb2xvcjogI2U4ZTVlNTtcbn1cblxuLmJ1dHRvbi5jbGVhci5saWdodC1ncmF5LCAuYnV0dG9uLmNsZWFyLmxpZ2h0LWdyYXkuZGlzYWJsZWQsIC5idXR0b24uY2xlYXIubGlnaHQtZ3JheVtkaXNhYmxlZF0sIC5idXR0b24uY2xlYXIubGlnaHQtZ3JheTpob3ZlciwgLmJ1dHRvbi5jbGVhci5saWdodC1ncmF5OmhvdmVyLmRpc2FibGVkLCAuYnV0dG9uLmNsZWFyLmxpZ2h0LWdyYXk6aG92ZXJbZGlzYWJsZWRdLCAuYnV0dG9uLmNsZWFyLmxpZ2h0LWdyYXk6Zm9jdXMsIC5idXR0b24uY2xlYXIubGlnaHQtZ3JheTpmb2N1cy5kaXNhYmxlZCwgLmJ1dHRvbi5jbGVhci5saWdodC1ncmF5OmZvY3VzW2Rpc2FibGVkXSB7XG4gIGJvcmRlci1jb2xvcjogdHJhbnNwYXJlbnQ7XG59XG5cbi5idXR0b24uY2xlYXIuYWNjZW50IHtcbiAgYm9yZGVyOiAxcHggc29saWQgI0Y5QTUxOTtcbiAgY29sb3I6ICNGOUE1MTk7XG59XG5cbi5idXR0b24uY2xlYXIuYWNjZW50OmhvdmVyLCAuYnV0dG9uLmNsZWFyLmFjY2VudDpmb2N1cyB7XG4gIGJvcmRlci1jb2xvcjogIzg2NTUwMztcbiAgY29sb3I6ICM4NjU1MDM7XG59XG5cbi5idXR0b24uY2xlYXIuYWNjZW50OmhvdmVyLmRpc2FibGVkLCAuYnV0dG9uLmNsZWFyLmFjY2VudDpob3ZlcltkaXNhYmxlZF0sIC5idXR0b24uY2xlYXIuYWNjZW50OmZvY3VzLmRpc2FibGVkLCAuYnV0dG9uLmNsZWFyLmFjY2VudDpmb2N1c1tkaXNhYmxlZF0ge1xuICBib3JkZXI6IDFweCBzb2xpZCAjRjlBNTE5O1xuICBjb2xvcjogI0Y5QTUxOTtcbn1cblxuLmJ1dHRvbi5jbGVhci5hY2NlbnQsIC5idXR0b24uY2xlYXIuYWNjZW50LmRpc2FibGVkLCAuYnV0dG9uLmNsZWFyLmFjY2VudFtkaXNhYmxlZF0sIC5idXR0b24uY2xlYXIuYWNjZW50OmhvdmVyLCAuYnV0dG9uLmNsZWFyLmFjY2VudDpob3Zlci5kaXNhYmxlZCwgLmJ1dHRvbi5jbGVhci5hY2NlbnQ6aG92ZXJbZGlzYWJsZWRdLCAuYnV0dG9uLmNsZWFyLmFjY2VudDpmb2N1cywgLmJ1dHRvbi5jbGVhci5hY2NlbnQ6Zm9jdXMuZGlzYWJsZWQsIC5idXR0b24uY2xlYXIuYWNjZW50OmZvY3VzW2Rpc2FibGVkXSB7XG4gIGJvcmRlci1jb2xvcjogdHJhbnNwYXJlbnQ7XG59XG5cbi5idXR0b24uY2xlYXIuZ3JlZW4ge1xuICBib3JkZXI6IDFweCBzb2xpZCAjMkY5RjQ2O1xuICBjb2xvcjogIzJGOUY0Njtcbn1cblxuLmJ1dHRvbi5jbGVhci5ncmVlbjpob3ZlciwgLmJ1dHRvbi5jbGVhci5ncmVlbjpmb2N1cyB7XG4gIGJvcmRlci1jb2xvcjogIzE4NTAyMztcbiAgY29sb3I6ICMxODUwMjM7XG59XG5cbi5idXR0b24uY2xlYXIuZ3JlZW46aG92ZXIuZGlzYWJsZWQsIC5idXR0b24uY2xlYXIuZ3JlZW46aG92ZXJbZGlzYWJsZWRdLCAuYnV0dG9uLmNsZWFyLmdyZWVuOmZvY3VzLmRpc2FibGVkLCAuYnV0dG9uLmNsZWFyLmdyZWVuOmZvY3VzW2Rpc2FibGVkXSB7XG4gIGJvcmRlcjogMXB4IHNvbGlkICMyRjlGNDY7XG4gIGNvbG9yOiAjMkY5RjQ2O1xufVxuXG4uYnV0dG9uLmNsZWFyLmdyZWVuLCAuYnV0dG9uLmNsZWFyLmdyZWVuLmRpc2FibGVkLCAuYnV0dG9uLmNsZWFyLmdyZWVuW2Rpc2FibGVkXSwgLmJ1dHRvbi5jbGVhci5ncmVlbjpob3ZlciwgLmJ1dHRvbi5jbGVhci5ncmVlbjpob3Zlci5kaXNhYmxlZCwgLmJ1dHRvbi5jbGVhci5ncmVlbjpob3ZlcltkaXNhYmxlZF0sIC5idXR0b24uY2xlYXIuZ3JlZW46Zm9jdXMsIC5idXR0b24uY2xlYXIuZ3JlZW46Zm9jdXMuZGlzYWJsZWQsIC5idXR0b24uY2xlYXIuZ3JlZW46Zm9jdXNbZGlzYWJsZWRdIHtcbiAgYm9yZGVyLWNvbG9yOiB0cmFuc3BhcmVudDtcbn1cblxuLmJ1dHRvbi5jbGVhci5yZWQge1xuICBib3JkZXI6IDFweCBzb2xpZCAjY2M0YjM3O1xuICBjb2xvcjogI2NjNGIzNztcbn1cblxuLmJ1dHRvbi5jbGVhci5yZWQ6aG92ZXIsIC5idXR0b24uY2xlYXIucmVkOmZvY3VzIHtcbiAgYm9yZGVyLWNvbG9yOiAjNjcyNTFhO1xuICBjb2xvcjogIzY3MjUxYTtcbn1cblxuLmJ1dHRvbi5jbGVhci5yZWQ6aG92ZXIuZGlzYWJsZWQsIC5idXR0b24uY2xlYXIucmVkOmhvdmVyW2Rpc2FibGVkXSwgLmJ1dHRvbi5jbGVhci5yZWQ6Zm9jdXMuZGlzYWJsZWQsIC5idXR0b24uY2xlYXIucmVkOmZvY3VzW2Rpc2FibGVkXSB7XG4gIGJvcmRlcjogMXB4IHNvbGlkICNjYzRiMzc7XG4gIGNvbG9yOiAjY2M0YjM3O1xufVxuXG4uYnV0dG9uLmNsZWFyLnJlZCwgLmJ1dHRvbi5jbGVhci5yZWQuZGlzYWJsZWQsIC5idXR0b24uY2xlYXIucmVkW2Rpc2FibGVkXSwgLmJ1dHRvbi5jbGVhci5yZWQ6aG92ZXIsIC5idXR0b24uY2xlYXIucmVkOmhvdmVyLmRpc2FibGVkLCAuYnV0dG9uLmNsZWFyLnJlZDpob3ZlcltkaXNhYmxlZF0sIC5idXR0b24uY2xlYXIucmVkOmZvY3VzLCAuYnV0dG9uLmNsZWFyLnJlZDpmb2N1cy5kaXNhYmxlZCwgLmJ1dHRvbi5jbGVhci5yZWQ6Zm9jdXNbZGlzYWJsZWRdIHtcbiAgYm9yZGVyLWNvbG9yOiB0cmFuc3BhcmVudDtcbn1cblxuLmJ1dHRvbi5kcm9wZG93bjo6YWZ0ZXIge1xuICBkaXNwbGF5OiBibG9jaztcbiAgd2lkdGg6IDA7XG4gIGhlaWdodDogMDtcbiAgYm9yZGVyOiBpbnNldCAwLjRlbTtcbiAgY29udGVudDogJyc7XG4gIGJvcmRlci1ib3R0b20td2lkdGg6IDA7XG4gIGJvcmRlci10b3Atc3R5bGU6IHNvbGlkO1xuICBib3JkZXItY29sb3I6ICNmZWZlZmUgdHJhbnNwYXJlbnQgdHJhbnNwYXJlbnQ7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgdG9wOiAwLjRlbTtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICBmbG9hdDogcmlnaHQ7XG4gIG1hcmdpbi1sZWZ0OiAwLjk1ZW07XG59XG5cbi5idXR0b24uZHJvcGRvd24uaG9sbG93OjphZnRlciB7XG4gIGJvcmRlci10b3AtY29sb3I6ICMxMTUzQUQ7XG59XG5cbi5idXR0b24uZHJvcGRvd24uaG9sbG93LnByaW1hcnk6OmFmdGVyIHtcbiAgYm9yZGVyLXRvcC1jb2xvcjogIzExNTNBRDtcbn1cblxuLmJ1dHRvbi5kcm9wZG93bi5ob2xsb3cuc2Vjb25kYXJ5OjphZnRlciB7XG4gIGJvcmRlci10b3AtY29sb3I6ICM3Njc2NzY7XG59XG5cbi5idXR0b24uZHJvcGRvd24uaG9sbG93LnN1Y2Nlc3M6OmFmdGVyIHtcbiAgYm9yZGVyLXRvcC1jb2xvcjogIzNhZGI3Njtcbn1cblxuLmJ1dHRvbi5kcm9wZG93bi5ob2xsb3cud2FybmluZzo6YWZ0ZXIge1xuICBib3JkZXItdG9wLWNvbG9yOiAjZmZhZTAwO1xufVxuXG4uYnV0dG9uLmRyb3Bkb3duLmhvbGxvdy5hbGVydDo6YWZ0ZXIge1xuICBib3JkZXItdG9wLWNvbG9yOiAjY2M0YjM3O1xufVxuXG4uYnV0dG9uLmRyb3Bkb3duLmhvbGxvdy5vZmYtYmxhY2s6OmFmdGVyIHtcbiAgYm9yZGVyLXRvcC1jb2xvcjogIzMxMzEzMTtcbn1cblxuLmJ1dHRvbi5kcm9wZG93bi5ob2xsb3cubGlnaHQtZ3JheTo6YWZ0ZXIge1xuICBib3JkZXItdG9wLWNvbG9yOiAjZThlNWU1O1xufVxuXG4uYnV0dG9uLmRyb3Bkb3duLmhvbGxvdy5hY2NlbnQ6OmFmdGVyIHtcbiAgYm9yZGVyLXRvcC1jb2xvcjogI0Y5QTUxOTtcbn1cblxuLmJ1dHRvbi5kcm9wZG93bi5ob2xsb3cuZ3JlZW46OmFmdGVyIHtcbiAgYm9yZGVyLXRvcC1jb2xvcjogIzJGOUY0Njtcbn1cblxuLmJ1dHRvbi5kcm9wZG93bi5ob2xsb3cucmVkOjphZnRlciB7XG4gIGJvcmRlci10b3AtY29sb3I6ICNjYzRiMzc7XG59XG5cbi5idXR0b24uYXJyb3ctb25seTo6YWZ0ZXIge1xuICB0b3A6IC0wLjFlbTtcbiAgZmxvYXQ6IG5vbmU7XG4gIG1hcmdpbi1sZWZ0OiAwO1xufVxuXG5bdHlwZT0ndGV4dCddLCBbdHlwZT0ncGFzc3dvcmQnXSwgW3R5cGU9J2RhdGUnXSwgW3R5cGU9J2RhdGV0aW1lJ10sIFt0eXBlPSdkYXRldGltZS1sb2NhbCddLCBbdHlwZT0nbW9udGgnXSwgW3R5cGU9J3dlZWsnXSwgW3R5cGU9J2VtYWlsJ10sIFt0eXBlPSdudW1iZXInXSwgW3R5cGU9J3NlYXJjaCddLCBbdHlwZT0ndGVsJ10sIFt0eXBlPSd0aW1lJ10sIFt0eXBlPSd1cmwnXSwgW3R5cGU9J2NvbG9yJ10sXG50ZXh0YXJlYSB7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBib3gtc2l6aW5nOiBib3JkZXItYm94O1xuICB3aWR0aDogMTAwJTtcbiAgaGVpZ2h0OiAyLjY3MTQzcmVtO1xuICBtYXJnaW46IDAgMCAxLjE0Mjg2cmVtO1xuICBwYWRkaW5nOiAwLjU3MTQzcmVtO1xuICBib3JkZXI6IDFweCBzb2xpZCAjZGRkZGRkO1xuICBib3JkZXItcmFkaXVzOiAwLjE4cmVtO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZmVmZWZlO1xuICBib3gtc2hhZG93OiBpbnNldCAwIDFweCAycHggcmdiYSgxMCwgMTAsIDEwLCAwLjEpO1xuICBmb250LWZhbWlseTogaW5oZXJpdDtcbiAgZm9udC1zaXplOiAxcmVtO1xuICBmb250LXdlaWdodDogbm9ybWFsO1xuICBsaW5lLWhlaWdodDogMS42O1xuICBjb2xvcjogIzBhMGEwYTtcbiAgdHJhbnNpdGlvbjogYm94LXNoYWRvdyAwLjVzLCBib3JkZXItY29sb3IgMC4yNXMgZWFzZS1pbi1vdXQ7XG4gIGFwcGVhcmFuY2U6IG5vbmU7XG59XG5cblt0eXBlPSd0ZXh0J106Zm9jdXMsIFt0eXBlPSdwYXNzd29yZCddOmZvY3VzLCBbdHlwZT0nZGF0ZSddOmZvY3VzLCBbdHlwZT0nZGF0ZXRpbWUnXTpmb2N1cywgW3R5cGU9J2RhdGV0aW1lLWxvY2FsJ106Zm9jdXMsIFt0eXBlPSdtb250aCddOmZvY3VzLCBbdHlwZT0nd2VlayddOmZvY3VzLCBbdHlwZT0nZW1haWwnXTpmb2N1cywgW3R5cGU9J251bWJlciddOmZvY3VzLCBbdHlwZT0nc2VhcmNoJ106Zm9jdXMsIFt0eXBlPSd0ZWwnXTpmb2N1cywgW3R5cGU9J3RpbWUnXTpmb2N1cywgW3R5cGU9J3VybCddOmZvY3VzLCBbdHlwZT0nY29sb3InXTpmb2N1cyxcbnRleHRhcmVhOmZvY3VzIHtcbiAgb3V0bGluZTogbm9uZTtcbiAgYm9yZGVyOiAxcHggc29saWQgI2RkZGRkZDtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2ZlZmVmZTtcbiAgYm94LXNoYWRvdzogMCAwIDVweCAjZGRkZGRkO1xuICB0cmFuc2l0aW9uOiBib3gtc2hhZG93IDAuNXMsIGJvcmRlci1jb2xvciAwLjI1cyBlYXNlLWluLW91dDtcbn1cblxudGV4dGFyZWEge1xuICBtYXgtd2lkdGg6IDEwMCU7XG59XG5cbnRleHRhcmVhW3Jvd3NdIHtcbiAgaGVpZ2h0OiBhdXRvO1xufVxuXG5pbnB1dDo6cGxhY2Vob2xkZXIsXG50ZXh0YXJlYTo6cGxhY2Vob2xkZXIge1xuICBjb2xvcjogIzc5Nzk2QTtcbn1cblxuaW5wdXQ6ZGlzYWJsZWQsIGlucHV0W3JlYWRvbmx5XSxcbnRleHRhcmVhOmRpc2FibGVkLFxudGV4dGFyZWFbcmVhZG9ubHldIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2U4ZTVlNTtcbiAgY3Vyc29yOiBub3QtYWxsb3dlZDtcbn1cblxuW3R5cGU9J3N1Ym1pdCddLFxuW3R5cGU9J2J1dHRvbiddIHtcbiAgYXBwZWFyYW5jZTogbm9uZTtcbiAgYm9yZGVyLXJhZGl1czogMC4xOHJlbTtcbn1cblxuaW5wdXRbdHlwZT0nc2VhcmNoJ10ge1xuICBib3gtc2l6aW5nOiBib3JkZXItYm94O1xufVxuXG5bdHlwZT0nZmlsZSddLFxuW3R5cGU9J2NoZWNrYm94J10sXG5bdHlwZT0ncmFkaW8nXSB7XG4gIG1hcmdpbjogMCAwIDEuMTQyODZyZW07XG59XG5cblt0eXBlPSdjaGVja2JveCddICsgbGFiZWwsXG5bdHlwZT0ncmFkaW8nXSArIGxhYmVsIHtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICB2ZXJ0aWNhbC1hbGlnbjogYmFzZWxpbmU7XG4gIG1hcmdpbi1sZWZ0OiAwLjU3MTQzcmVtO1xuICBtYXJnaW4tcmlnaHQ6IDEuMTQyODZyZW07XG4gIG1hcmdpbi1ib3R0b206IDA7XG59XG5cblt0eXBlPSdjaGVja2JveCddICsgbGFiZWxbZm9yXSxcblt0eXBlPSdyYWRpbyddICsgbGFiZWxbZm9yXSB7XG4gIGN1cnNvcjogcG9pbnRlcjtcbn1cblxubGFiZWwgPiBbdHlwZT0nY2hlY2tib3gnXSxcbmxhYmVsID4gW3R5cGU9J3JhZGlvJ10ge1xuICBtYXJnaW4tcmlnaHQ6IDAuNTcxNDNyZW07XG59XG5cblt0eXBlPSdmaWxlJ10ge1xuICB3aWR0aDogMTAwJTtcbn1cblxubGFiZWwge1xuICBkaXNwbGF5OiBibG9jaztcbiAgbWFyZ2luOiAwO1xuICBmb250LXNpemU6IDFyZW07XG4gIGZvbnQtd2VpZ2h0OiBub3JtYWw7XG4gIGxpbmUtaGVpZ2h0OiAxLjY7XG4gIGNvbG9yOiAjMGEwYTBhO1xufVxuXG5sYWJlbC5taWRkbGUge1xuICBtYXJnaW46IDAgMCAxLjE0Mjg2cmVtO1xuICBwYWRkaW5nOiAwLjY0Mjg2cmVtIDA7XG59XG5cbi5oZWxwLXRleHQge1xuICBtYXJnaW4tdG9wOiAtMC41NzE0M3JlbTtcbiAgZm9udC1zaXplOiAwLjkyODU3cmVtO1xuICBmb250LXN0eWxlOiBpdGFsaWM7XG4gIGNvbG9yOiAjMGEwYTBhO1xufVxuXG4uaW5wdXQtZ3JvdXAge1xuICBkaXNwbGF5OiB0YWJsZTtcbiAgd2lkdGg6IDEwMCU7XG4gIG1hcmdpbi1ib3R0b206IDEuMTQyODZyZW07XG59XG5cbi5pbnB1dC1ncm91cCA+IDpmaXJzdC1jaGlsZCB7XG4gIGJvcmRlci1yYWRpdXM6IDAuMThyZW0gMCAwIDAuMThyZW07XG59XG5cbi5pbnB1dC1ncm91cCA+IDpsYXN0LWNoaWxkID4gKiB7XG4gIGJvcmRlci1yYWRpdXM6IDAgMC4xOHJlbSAwLjE4cmVtIDA7XG59XG5cbi5pbnB1dC1ncm91cC1sYWJlbCwgLmlucHV0LWdyb3VwLWZpZWxkLCAuaW5wdXQtZ3JvdXAtYnV0dG9uLCAuaW5wdXQtZ3JvdXAtYnV0dG9uIGEsXG4uaW5wdXQtZ3JvdXAtYnV0dG9uIGlucHV0LFxuLmlucHV0LWdyb3VwLWJ1dHRvbiBidXR0b24sXG4uaW5wdXQtZ3JvdXAtYnV0dG9uIGxhYmVsIHtcbiAgbWFyZ2luOiAwO1xuICB3aGl0ZS1zcGFjZTogbm93cmFwO1xuICBkaXNwbGF5OiB0YWJsZS1jZWxsO1xuICB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlO1xufVxuXG4uaW5wdXQtZ3JvdXAtbGFiZWwge1xuICBwYWRkaW5nOiAwIDFyZW07XG4gIGJvcmRlcjogMXB4IHNvbGlkICNkZGRkZGQ7XG4gIGJhY2tncm91bmQ6ICNlOGU1ZTU7XG4gIGNvbG9yOiAjMGEwYTBhO1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gIHdoaXRlLXNwYWNlOiBub3dyYXA7XG4gIHdpZHRoOiAxJTtcbiAgaGVpZ2h0OiAxMDAlO1xufVxuXG4uaW5wdXQtZ3JvdXAtbGFiZWw6Zmlyc3QtY2hpbGQge1xuICBib3JkZXItcmlnaHQ6IDA7XG59XG5cbi5pbnB1dC1ncm91cC1sYWJlbDpsYXN0LWNoaWxkIHtcbiAgYm9yZGVyLWxlZnQ6IDA7XG59XG5cbi5pbnB1dC1ncm91cC1maWVsZCB7XG4gIGJvcmRlci1yYWRpdXM6IDA7XG4gIGhlaWdodDogMi43MTQyOXJlbTtcbn1cblxuLmlucHV0LWdyb3VwLWJ1dHRvbiB7XG4gIHBhZGRpbmctdG9wOiAwO1xuICBwYWRkaW5nLWJvdHRvbTogMDtcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xuICB3aWR0aDogMSU7XG4gIGhlaWdodDogMTAwJTtcbn1cblxuLmlucHV0LWdyb3VwLWJ1dHRvbiBhLFxuLmlucHV0LWdyb3VwLWJ1dHRvbiBpbnB1dCxcbi5pbnB1dC1ncm91cC1idXR0b24gYnV0dG9uLFxuLmlucHV0LWdyb3VwLWJ1dHRvbiBsYWJlbCB7XG4gIGhlaWdodDogMi43MTQyOXJlbTtcbiAgcGFkZGluZy10b3A6IDA7XG4gIHBhZGRpbmctYm90dG9tOiAwO1xuICBmb250LXNpemU6IDFyZW07XG59XG5cbi5pbnB1dC1ncm91cCAuaW5wdXQtZ3JvdXAtYnV0dG9uIHtcbiAgZGlzcGxheTogdGFibGUtY2VsbDtcbn1cblxuZmllbGRzZXQge1xuICBtYXJnaW46IDA7XG4gIHBhZGRpbmc6IDA7XG4gIGJvcmRlcjogMDtcbn1cblxubGVnZW5kIHtcbiAgbWF4LXdpZHRoOiAxMDAlO1xuICBtYXJnaW4tYm90dG9tOiAwLjU3MTQzcmVtO1xufVxuXG4uZmllbGRzZXQge1xuICBtYXJnaW46IDEuMjg1NzFyZW0gMDtcbiAgcGFkZGluZzogMS40Mjg1N3JlbTtcbiAgYm9yZGVyOiAxcHggc29saWQgI2RkZGRkZDtcbn1cblxuLmZpZWxkc2V0IGxlZ2VuZCB7XG4gIG1hcmdpbjogMDtcbiAgbWFyZ2luLWxlZnQ6IC0wLjIxNDI5cmVtO1xuICBwYWRkaW5nOiAwIDAuMjE0MjlyZW07XG59XG5cbnNlbGVjdCB7XG4gIGhlaWdodDogMi42NzE0M3JlbTtcbiAgbWFyZ2luOiAwIDAgMS4xNDI4NnJlbTtcbiAgcGFkZGluZzogMC41NzE0M3JlbTtcbiAgYXBwZWFyYW5jZTogbm9uZTtcbiAgYm9yZGVyOiAxcHggc29saWQgI2RkZGRkZDtcbiAgYm9yZGVyLXJhZGl1czogMC4xOHJlbTtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2ZlZmVmZTtcbiAgZm9udC1mYW1pbHk6IGluaGVyaXQ7XG4gIGZvbnQtc2l6ZTogMXJlbTtcbiAgZm9udC13ZWlnaHQ6IG5vcm1hbDtcbiAgbGluZS1oZWlnaHQ6IDEuNjtcbiAgY29sb3I6ICMwYTBhMGE7XG4gIGJhY2tncm91bmQtaW1hZ2U6IHVybChcImRhdGE6aW1hZ2Uvc3ZnK3htbDt1dGY4LDxzdmcgeG1sbnM9J2h0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnJyB2ZXJzaW9uPScxLjEnIHdpZHRoPSczMicgaGVpZ2h0PScyNCcgdmlld0JveD0nMCAwIDMyIDI0Jz48cG9seWdvbiBwb2ludHM9JzAsMCAzMiwwIDE2LDI0JyBzdHlsZT0nZmlsbDogcmdiJTI4MTIxLCAxMjEsIDEwNiUyOSc+PC9wb2x5Z29uPjwvc3ZnPlwiKTtcbiAgYmFja2dyb3VuZC1vcmlnaW46IGNvbnRlbnQtYm94O1xuICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiByaWdodCAtMS4xNDI4NnJlbSBjZW50ZXI7XG4gIGJhY2tncm91bmQtcmVwZWF0OiBuby1yZXBlYXQ7XG4gIGJhY2tncm91bmQtc2l6ZTogOXB4IDZweDtcbiAgcGFkZGluZy1yaWdodDogMS43MTQyOXJlbTtcbiAgdHJhbnNpdGlvbjogYm94LXNoYWRvdyAwLjVzLCBib3JkZXItY29sb3IgMC4yNXMgZWFzZS1pbi1vdXQ7XG59XG5cbkBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDBcXDApIHtcbiAgc2VsZWN0IHtcbiAgICBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoXCJkYXRhOmltYWdlL3BuZztiYXNlNjQsaVZCT1J3MEtHZ29BQUFBTlNVaEVVZ0FBQUNBQUFBQVlDQVlBQUFDYlUvODBBQUFBR1hSRldIUlRiMlowZDJGeVpRQkJaRzlpWlNCSmJXRm5aVkpsWVdSNWNjbGxQQUFBQUlwSlJFRlVlTnJFa2NrTmdEQU1CQmZSa0V0ME9iUkJCZHNHWFVEZ21RZks0WGhIMm04Y3pRQUF5MjdSM3RzdzRRZmUyeDh1T082b1lMYjZHbE9vcjNHRitzd1VSQU9tVUorUnd0RUpzOVd2VEdFWXhCWHFJMU1RQVpoQ2ZVUUtSekRNVmorVHdyQUlWNmp2U1VFa1lBcjFMU2tjeVRCYi9WK0tZZlg3eEFldXNxM3NMRHRHSDNrRUdBQ1BXSWZsTlpmaFJRQUFBQUJKUlU1RXJrSmdnZz09XCIpO1xuICB9XG59XG5cbnNlbGVjdDpmb2N1cyB7XG4gIG91dGxpbmU6IG5vbmU7XG4gIGJvcmRlcjogMXB4IHNvbGlkICNkZGRkZGQ7XG4gIGJhY2tncm91bmQtY29sb3I6ICNmZWZlZmU7XG4gIGJveC1zaGFkb3c6IDAgMCA1cHggI2RkZGRkZDtcbiAgdHJhbnNpdGlvbjogYm94LXNoYWRvdyAwLjVzLCBib3JkZXItY29sb3IgMC4yNXMgZWFzZS1pbi1vdXQ7XG59XG5cbnNlbGVjdDpkaXNhYmxlZCB7XG4gIGJhY2tncm91bmQtY29sb3I6ICNlOGU1ZTU7XG4gIGN1cnNvcjogbm90LWFsbG93ZWQ7XG59XG5cbnNlbGVjdDo6LW1zLWV4cGFuZCB7XG4gIGRpc3BsYXk6IG5vbmU7XG59XG5cbnNlbGVjdFttdWx0aXBsZV0ge1xuICBoZWlnaHQ6IGF1dG87XG4gIGJhY2tncm91bmQtaW1hZ2U6IG5vbmU7XG59XG5cbi5pcy1pbnZhbGlkLWlucHV0Om5vdCg6Zm9jdXMpIHtcbiAgYm9yZGVyLWNvbG9yOiAjY2M0YjM3O1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZjllY2VhO1xufVxuXG4uaXMtaW52YWxpZC1pbnB1dDpub3QoOmZvY3VzKTo6cGxhY2Vob2xkZXIge1xuICBjb2xvcjogI2NjNGIzNztcbn1cblxuLmlzLWludmFsaWQtbGFiZWwge1xuICBjb2xvcjogI2NjNGIzNztcbn1cblxuLmZvcm0tZXJyb3Ige1xuICBkaXNwbGF5OiBub25lO1xuICBtYXJnaW4tdG9wOiAtMC41NzE0M3JlbTtcbiAgbWFyZ2luLWJvdHRvbTogMS4xNDI4NnJlbTtcbiAgZm9udC1zaXplOiAwLjg1NzE0cmVtO1xuICBmb250LXdlaWdodDogYm9sZDtcbiAgY29sb3I6ICNjYzRiMzc7XG59XG5cbi5mb3JtLWVycm9yLmlzLXZpc2libGUge1xuICBkaXNwbGF5OiBibG9jaztcbn1cblxuLmFjY29yZGlvbiB7XG4gIG1hcmdpbi1sZWZ0OiAwO1xuICBiYWNrZ3JvdW5kOiAjZmVmZWZlO1xuICBsaXN0LXN0eWxlLXR5cGU6IG5vbmU7XG59XG5cbi5hY2NvcmRpb25bZGlzYWJsZWRdIC5hY2NvcmRpb24tdGl0bGUge1xuICBjdXJzb3I6IG5vdC1hbGxvd2VkO1xufVxuXG4uYWNjb3JkaW9uLWl0ZW06Zmlyc3QtY2hpbGQgPiA6Zmlyc3QtY2hpbGQge1xuICBib3JkZXItcmFkaXVzOiAwLjE4cmVtIDAuMThyZW0gMCAwO1xufVxuXG4uYWNjb3JkaW9uLWl0ZW06bGFzdC1jaGlsZCA+IDpsYXN0LWNoaWxkIHtcbiAgYm9yZGVyLXJhZGl1czogMCAwIDAuMThyZW0gMC4xOHJlbTtcbn1cblxuLmFjY29yZGlvbi10aXRsZSB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgZGlzcGxheTogYmxvY2s7XG4gIHBhZGRpbmc6IDEuMjVyZW0gMXJlbTtcbiAgYm9yZGVyOiAxcHggc29saWQgI2RkZGRkZDtcbiAgYm9yZGVyLWJvdHRvbTogMDtcbiAgZm9udC1zaXplOiAwLjg1NzE0cmVtO1xuICBsaW5lLWhlaWdodDogMTtcbiAgY29sb3I6ICMxMTUzQUQ7XG59XG5cbjpsYXN0LWNoaWxkOm5vdCguaXMtYWN0aXZlKSA+IC5hY2NvcmRpb24tdGl0bGUge1xuICBib3JkZXItYm90dG9tOiAxcHggc29saWQgI2RkZGRkZDtcbiAgYm9yZGVyLXJhZGl1czogMCAwIDAuMThyZW0gMC4xOHJlbTtcbn1cblxuLmFjY29yZGlvbi10aXRsZTpob3ZlciwgLmFjY29yZGlvbi10aXRsZTpmb2N1cyB7XG4gIGJhY2tncm91bmQtY29sb3I6ICNlOGU1ZTU7XG59XG5cbi5hY2NvcmRpb24tdGl0bGU6OmJlZm9yZSB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgdG9wOiA1MCU7XG4gIHJpZ2h0OiAxcmVtO1xuICBtYXJnaW4tdG9wOiAtMC41cmVtO1xuICBjb250ZW50OiAnKyc7XG59XG5cbi5pcy1hY3RpdmUgPiAuYWNjb3JkaW9uLXRpdGxlOjpiZWZvcmUge1xuICBjb250ZW50OiAnXFwyMDEzJztcbn1cblxuLmFjY29yZGlvbi1jb250ZW50IHtcbiAgZGlzcGxheTogbm9uZTtcbiAgcGFkZGluZzogMXJlbTtcbiAgYm9yZGVyOiAxcHggc29saWQgI2RkZGRkZDtcbiAgYm9yZGVyLWJvdHRvbTogMDtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2ZlZmVmZTtcbiAgY29sb3I6ICMwYTBhMGE7XG59XG5cbjpsYXN0LWNoaWxkID4gLmFjY29yZGlvbi1jb250ZW50Omxhc3QtY2hpbGQge1xuICBib3JkZXItYm90dG9tOiAxcHggc29saWQgI2RkZGRkZDtcbn1cblxuLmFjY29yZGlvbi1tZW51IGxpIHtcbiAgd2lkdGg6IDEwMCU7XG59XG5cbi5hY2NvcmRpb24tbWVudSBhIHtcbiAgcGFkZGluZzogMC43cmVtIDFyZW07XG59XG5cbi5hY2NvcmRpb24tbWVudSAuaXMtYWNjb3JkaW9uLXN1Ym1lbnUgYSB7XG4gIHBhZGRpbmc6IDAuN3JlbSAxcmVtO1xufVxuXG4uYWNjb3JkaW9uLW1lbnUgLm5lc3RlZC5pcy1hY2NvcmRpb24tc3VibWVudSB7XG4gIG1hcmdpbi1yaWdodDogMDtcbiAgbWFyZ2luLWxlZnQ6IDFyZW07XG59XG5cbi5hY2NvcmRpb24tbWVudS5hbGlnbi1yaWdodCAubmVzdGVkLmlzLWFjY29yZGlvbi1zdWJtZW51IHtcbiAgbWFyZ2luLXJpZ2h0OiAxcmVtO1xuICBtYXJnaW4tbGVmdDogMDtcbn1cblxuLmFjY29yZGlvbi1tZW51IC5pcy1hY2NvcmRpb24tc3VibWVudS1wYXJlbnQ6bm90KC5oYXMtc3VibWVudS10b2dnbGUpID4gYSB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbn1cblxuLmFjY29yZGlvbi1tZW51IC5pcy1hY2NvcmRpb24tc3VibWVudS1wYXJlbnQ6bm90KC5oYXMtc3VibWVudS10b2dnbGUpID4gYTo6YWZ0ZXIge1xuICBkaXNwbGF5OiBibG9jaztcbiAgd2lkdGg6IDA7XG4gIGhlaWdodDogMDtcbiAgYm9yZGVyOiBpbnNldCA2cHg7XG4gIGNvbnRlbnQ6ICcnO1xuICBib3JkZXItYm90dG9tLXdpZHRoOiAwO1xuICBib3JkZXItdG9wLXN0eWxlOiBzb2xpZDtcbiAgYm9yZGVyLWNvbG9yOiAjMTE1M0FEIHRyYW5zcGFyZW50IHRyYW5zcGFyZW50O1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHRvcDogNTAlO1xuICBtYXJnaW4tdG9wOiAtM3B4O1xuICByaWdodDogMXJlbTtcbn1cblxuLmFjY29yZGlvbi1tZW51LmFsaWduLWxlZnQgLmlzLWFjY29yZGlvbi1zdWJtZW51LXBhcmVudCA+IGE6OmFmdGVyIHtcbiAgbGVmdDogYXV0bztcbiAgcmlnaHQ6IDFyZW07XG59XG5cbi5hY2NvcmRpb24tbWVudS5hbGlnbi1yaWdodCAuaXMtYWNjb3JkaW9uLXN1Ym1lbnUtcGFyZW50ID4gYTo6YWZ0ZXIge1xuICByaWdodDogYXV0bztcbiAgbGVmdDogMXJlbTtcbn1cblxuLmFjY29yZGlvbi1tZW51IC5pcy1hY2NvcmRpb24tc3VibWVudS1wYXJlbnRbYXJpYS1leHBhbmRlZD0ndHJ1ZSddID4gYTo6YWZ0ZXIge1xuICB0cmFuc2Zvcm06IHJvdGF0ZSgxODBkZWcpO1xuICB0cmFuc2Zvcm0tb3JpZ2luOiA1MCUgNTAlO1xufVxuXG4uaXMtYWNjb3JkaW9uLXN1Ym1lbnUtcGFyZW50IHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xufVxuXG4uaGFzLXN1Ym1lbnUtdG9nZ2xlID4gYSB7XG4gIG1hcmdpbi1yaWdodDogNDBweDtcbn1cblxuLnN1Ym1lbnUtdG9nZ2xlIHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB0b3A6IDA7XG4gIHJpZ2h0OiAwO1xuICBjdXJzb3I6IHBvaW50ZXI7XG4gIHdpZHRoOiA0MHB4O1xuICBoZWlnaHQ6IDQwcHg7XG59XG5cbi5zdWJtZW51LXRvZ2dsZTo6YWZ0ZXIge1xuICBkaXNwbGF5OiBibG9jaztcbiAgd2lkdGg6IDA7XG4gIGhlaWdodDogMDtcbiAgYm9yZGVyOiBpbnNldCA2cHg7XG4gIGNvbnRlbnQ6ICcnO1xuICBib3JkZXItYm90dG9tLXdpZHRoOiAwO1xuICBib3JkZXItdG9wLXN0eWxlOiBzb2xpZDtcbiAgYm9yZGVyLWNvbG9yOiAjMTE1M0FEIHRyYW5zcGFyZW50IHRyYW5zcGFyZW50O1xuICB0b3A6IDA7XG4gIGJvdHRvbTogMDtcbiAgbWFyZ2luOiBhdXRvO1xufVxuXG4uc3VibWVudS10b2dnbGVbYXJpYS1leHBhbmRlZD0ndHJ1ZSddOjphZnRlciB7XG4gIHRyYW5zZm9ybTogc2NhbGVZKC0xKTtcbiAgdHJhbnNmb3JtLW9yaWdpbjogNTAlIDUwJTtcbn1cblxuLnN1Ym1lbnUtdG9nZ2xlLXRleHQge1xuICBwb3NpdGlvbjogYWJzb2x1dGUgIWltcG9ydGFudDtcbiAgd2lkdGg6IDFweDtcbiAgaGVpZ2h0OiAxcHg7XG4gIHBhZGRpbmc6IDA7XG4gIG92ZXJmbG93OiBoaWRkZW47XG4gIGNsaXA6IHJlY3QoMCwgMCwgMCwgMCk7XG4gIHdoaXRlLXNwYWNlOiBub3dyYXA7XG4gIGNsaXAtcGF0aDogaW5zZXQoNTAlKTtcbiAgYm9yZGVyOiAwO1xufVxuXG4uYmFkZ2Uge1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIG1pbi13aWR0aDogMi4xZW07XG4gIHBhZGRpbmc6IDAuM2VtO1xuICBib3JkZXItcmFkaXVzOiA1MCU7XG4gIGZvbnQtc2l6ZTogMC42NXJlbTtcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xuICBiYWNrZ3JvdW5kOiAjMTE1M0FEO1xuICBjb2xvcjogI2ZlZmVmZTtcbn1cblxuLmJhZGdlLnByaW1hcnkge1xuICBiYWNrZ3JvdW5kOiAjMTE1M0FEO1xuICBjb2xvcjogI2ZlZmVmZTtcbn1cblxuLmJhZGdlLnNlY29uZGFyeSB7XG4gIGJhY2tncm91bmQ6ICM3Njc2NzY7XG4gIGNvbG9yOiAjZmVmZWZlO1xufVxuXG4uYmFkZ2Uuc3VjY2VzcyB7XG4gIGJhY2tncm91bmQ6ICMzYWRiNzY7XG4gIGNvbG9yOiAjMGEwYTBhO1xufVxuXG4uYmFkZ2Uud2FybmluZyB7XG4gIGJhY2tncm91bmQ6ICNmZmFlMDA7XG4gIGNvbG9yOiAjMGEwYTBhO1xufVxuXG4uYmFkZ2UuYWxlcnQge1xuICBiYWNrZ3JvdW5kOiAjY2M0YjM3O1xuICBjb2xvcjogI2ZlZmVmZTtcbn1cblxuLmJhZGdlLm9mZi1ibGFjayB7XG4gIGJhY2tncm91bmQ6ICMzMTMxMzE7XG4gIGNvbG9yOiAjZmVmZWZlO1xufVxuXG4uYmFkZ2UuYWNjZW50IHtcbiAgYmFja2dyb3VuZDogI0Y5QTUxOTtcbiAgY29sb3I6ICMwYTBhMGE7XG59XG5cbi5iYWRnZS5ncmVlbiB7XG4gIGJhY2tncm91bmQ6ICMyRjlGNDY7XG4gIGNvbG9yOiAjMGEwYTBhO1xufVxuXG4uYmFkZ2UucmVkIHtcbiAgYmFja2dyb3VuZDogI2NjNGIzNztcbiAgY29sb3I6ICNmZWZlZmU7XG59XG5cbi5icmVhZGNydW1icyB7XG4gIG1hcmdpbjogMC41cmVtIDAgMC41cmVtIDA7XG4gIGxpc3Qtc3R5bGU6IG5vbmU7XG59XG5cbi5icmVhZGNydW1iczo6YmVmb3JlLCAuYnJlYWRjcnVtYnM6OmFmdGVyIHtcbiAgZGlzcGxheTogdGFibGU7XG4gIGNvbnRlbnQ6ICcgJztcbn1cblxuLmJyZWFkY3J1bWJzOjphZnRlciB7XG4gIGNsZWFyOiBib3RoO1xufVxuXG4uYnJlYWRjcnVtYnMgbGkge1xuICBmbG9hdDogbGVmdDtcbiAgZm9udC1zaXplOiAwLjkyODU3cmVtO1xuICBjb2xvcjogIzBhMGEwYTtcbiAgY3Vyc29yOiBkZWZhdWx0O1xufVxuXG4uYnJlYWRjcnVtYnMgbGk6bm90KDpsYXN0LWNoaWxkKTo6YWZ0ZXIge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIG1hcmdpbjogMCAwLjI1cmVtO1xuICBvcGFjaXR5OiAxO1xuICBjb250ZW50OiBcIi9cIjtcbiAgY29sb3I6ICM3OTc5NkE7XG59XG5cbi5icmVhZGNydW1icyBhIHtcbiAgY29sb3I6ICMzMTMxMzE7XG59XG5cbi5icmVhZGNydW1icyBhOmhvdmVyIHtcbiAgdGV4dC1kZWNvcmF0aW9uOiB1bmRlcmxpbmU7XG59XG5cbi5icmVhZGNydW1icyAuZGlzYWJsZWQge1xuICBjb2xvcjogI2RkZGRkZDtcbiAgY3Vyc29yOiBub3QtYWxsb3dlZDtcbn1cblxuLmJ1dHRvbi1ncm91cCB7XG4gIG1hcmdpbi1ib3R0b206IDFyZW07XG4gIGZvbnQtc2l6ZTogMDtcbn1cblxuLmJ1dHRvbi1ncm91cDo6YmVmb3JlLCAuYnV0dG9uLWdyb3VwOjphZnRlciB7XG4gIGRpc3BsYXk6IHRhYmxlO1xuICBjb250ZW50OiAnICc7XG59XG5cbi5idXR0b24tZ3JvdXA6OmFmdGVyIHtcbiAgY2xlYXI6IGJvdGg7XG59XG5cbi5idXR0b24tZ3JvdXAgLmJ1dHRvbiB7XG4gIG1hcmdpbjogMDtcbiAgbWFyZ2luLXJpZ2h0OiAxcHg7XG4gIG1hcmdpbi1ib3R0b206IDFweDtcbiAgZm9udC1zaXplOiAxcmVtO1xufVxuXG4uYnV0dG9uLWdyb3VwIC5idXR0b246bGFzdC1jaGlsZCB7XG4gIG1hcmdpbi1yaWdodDogMDtcbn1cblxuLmJ1dHRvbi1ncm91cC50aW55IC5idXR0b24ge1xuICBmb250LXNpemU6IDAuNnJlbTtcbn1cblxuLmJ1dHRvbi1ncm91cC5zbWFsbCAuYnV0dG9uIHtcbiAgZm9udC1zaXplOiAwLjc1cmVtO1xufVxuXG4uYnV0dG9uLWdyb3VwLmxhcmdlIC5idXR0b24ge1xuICBmb250LXNpemU6IDEuMzVyZW07XG59XG5cbi5idXR0b24tZ3JvdXAuZXhwYW5kZWQge1xuICBtYXJnaW4tcmlnaHQ6IC0xcHg7XG59XG5cbi5idXR0b24tZ3JvdXAuZXhwYW5kZWQ6OmJlZm9yZSwgLmJ1dHRvbi1ncm91cC5leHBhbmRlZDo6YWZ0ZXIge1xuICBkaXNwbGF5OiBub25lO1xufVxuXG4uYnV0dG9uLWdyb3VwLmV4cGFuZGVkIC5idXR0b246Zmlyc3QtY2hpbGQ6bGFzdC1jaGlsZCB7XG4gIHdpZHRoOiAxMDAlO1xufVxuXG4uYnV0dG9uLWdyb3VwLmV4cGFuZGVkIC5idXR0b246Zmlyc3QtY2hpbGQ6bnRoLWxhc3QtY2hpbGQoMiksIC5idXR0b24tZ3JvdXAuZXhwYW5kZWQgLmJ1dHRvbjpmaXJzdC1jaGlsZDpudGgtbGFzdC1jaGlsZCgyKTpmaXJzdC1jaGlsZDpudGgtbGFzdC1jaGlsZCgyKSB+IC5idXR0b24ge1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIHdpZHRoOiBjYWxjKDUwJSAtIDFweCk7XG4gIG1hcmdpbi1yaWdodDogMXB4O1xufVxuXG4uYnV0dG9uLWdyb3VwLmV4cGFuZGVkIC5idXR0b246Zmlyc3QtY2hpbGQ6bnRoLWxhc3QtY2hpbGQoMik6bGFzdC1jaGlsZCwgLmJ1dHRvbi1ncm91cC5leHBhbmRlZCAuYnV0dG9uOmZpcnN0LWNoaWxkOm50aC1sYXN0LWNoaWxkKDIpOmZpcnN0LWNoaWxkOm50aC1sYXN0LWNoaWxkKDIpIH4gLmJ1dHRvbjpsYXN0LWNoaWxkIHtcbiAgbWFyZ2luLXJpZ2h0OiAtNnB4O1xufVxuXG4uYnV0dG9uLWdyb3VwLmV4cGFuZGVkIC5idXR0b246Zmlyc3QtY2hpbGQ6bnRoLWxhc3QtY2hpbGQoMyksIC5idXR0b24tZ3JvdXAuZXhwYW5kZWQgLmJ1dHRvbjpmaXJzdC1jaGlsZDpudGgtbGFzdC1jaGlsZCgzKTpmaXJzdC1jaGlsZDpudGgtbGFzdC1jaGlsZCgzKSB+IC5idXR0b24ge1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIHdpZHRoOiBjYWxjKDMzLjMzMzMzJSAtIDFweCk7XG4gIG1hcmdpbi1yaWdodDogMXB4O1xufVxuXG4uYnV0dG9uLWdyb3VwLmV4cGFuZGVkIC5idXR0b246Zmlyc3QtY2hpbGQ6bnRoLWxhc3QtY2hpbGQoMyk6bGFzdC1jaGlsZCwgLmJ1dHRvbi1ncm91cC5leHBhbmRlZCAuYnV0dG9uOmZpcnN0LWNoaWxkOm50aC1sYXN0LWNoaWxkKDMpOmZpcnN0LWNoaWxkOm50aC1sYXN0LWNoaWxkKDMpIH4gLmJ1dHRvbjpsYXN0LWNoaWxkIHtcbiAgbWFyZ2luLXJpZ2h0OiAtNnB4O1xufVxuXG4uYnV0dG9uLWdyb3VwLmV4cGFuZGVkIC5idXR0b246Zmlyc3QtY2hpbGQ6bnRoLWxhc3QtY2hpbGQoNCksIC5idXR0b24tZ3JvdXAuZXhwYW5kZWQgLmJ1dHRvbjpmaXJzdC1jaGlsZDpudGgtbGFzdC1jaGlsZCg0KTpmaXJzdC1jaGlsZDpudGgtbGFzdC1jaGlsZCg0KSB+IC5idXR0b24ge1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIHdpZHRoOiBjYWxjKDI1JSAtIDFweCk7XG4gIG1hcmdpbi1yaWdodDogMXB4O1xufVxuXG4uYnV0dG9uLWdyb3VwLmV4cGFuZGVkIC5idXR0b246Zmlyc3QtY2hpbGQ6bnRoLWxhc3QtY2hpbGQoNCk6bGFzdC1jaGlsZCwgLmJ1dHRvbi1ncm91cC5leHBhbmRlZCAuYnV0dG9uOmZpcnN0LWNoaWxkOm50aC1sYXN0LWNoaWxkKDQpOmZpcnN0LWNoaWxkOm50aC1sYXN0LWNoaWxkKDQpIH4gLmJ1dHRvbjpsYXN0LWNoaWxkIHtcbiAgbWFyZ2luLXJpZ2h0OiAtNnB4O1xufVxuXG4uYnV0dG9uLWdyb3VwLmV4cGFuZGVkIC5idXR0b246Zmlyc3QtY2hpbGQ6bnRoLWxhc3QtY2hpbGQoNSksIC5idXR0b24tZ3JvdXAuZXhwYW5kZWQgLmJ1dHRvbjpmaXJzdC1jaGlsZDpudGgtbGFzdC1jaGlsZCg1KTpmaXJzdC1jaGlsZDpudGgtbGFzdC1jaGlsZCg1KSB+IC5idXR0b24ge1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIHdpZHRoOiBjYWxjKDIwJSAtIDFweCk7XG4gIG1hcmdpbi1yaWdodDogMXB4O1xufVxuXG4uYnV0dG9uLWdyb3VwLmV4cGFuZGVkIC5idXR0b246Zmlyc3QtY2hpbGQ6bnRoLWxhc3QtY2hpbGQoNSk6bGFzdC1jaGlsZCwgLmJ1dHRvbi1ncm91cC5leHBhbmRlZCAuYnV0dG9uOmZpcnN0LWNoaWxkOm50aC1sYXN0LWNoaWxkKDUpOmZpcnN0LWNoaWxkOm50aC1sYXN0LWNoaWxkKDUpIH4gLmJ1dHRvbjpsYXN0LWNoaWxkIHtcbiAgbWFyZ2luLXJpZ2h0OiAtNnB4O1xufVxuXG4uYnV0dG9uLWdyb3VwLmV4cGFuZGVkIC5idXR0b246Zmlyc3QtY2hpbGQ6bnRoLWxhc3QtY2hpbGQoNiksIC5idXR0b24tZ3JvdXAuZXhwYW5kZWQgLmJ1dHRvbjpmaXJzdC1jaGlsZDpudGgtbGFzdC1jaGlsZCg2KTpmaXJzdC1jaGlsZDpudGgtbGFzdC1jaGlsZCg2KSB+IC5idXR0b24ge1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIHdpZHRoOiBjYWxjKDE2LjY2NjY3JSAtIDFweCk7XG4gIG1hcmdpbi1yaWdodDogMXB4O1xufVxuXG4uYnV0dG9uLWdyb3VwLmV4cGFuZGVkIC5idXR0b246Zmlyc3QtY2hpbGQ6bnRoLWxhc3QtY2hpbGQoNik6bGFzdC1jaGlsZCwgLmJ1dHRvbi1ncm91cC5leHBhbmRlZCAuYnV0dG9uOmZpcnN0LWNoaWxkOm50aC1sYXN0LWNoaWxkKDYpOmZpcnN0LWNoaWxkOm50aC1sYXN0LWNoaWxkKDYpIH4gLmJ1dHRvbjpsYXN0LWNoaWxkIHtcbiAgbWFyZ2luLXJpZ2h0OiAtNnB4O1xufVxuXG4uYnV0dG9uLWdyb3VwLnByaW1hcnkgLmJ1dHRvbiB7XG4gIGJhY2tncm91bmQtY29sb3I6ICMxMTUzQUQ7XG4gIGNvbG9yOiAjZmVmZWZlO1xufVxuXG4uYnV0dG9uLWdyb3VwLnByaW1hcnkgLmJ1dHRvbjpob3ZlciwgLmJ1dHRvbi1ncm91cC5wcmltYXJ5IC5idXR0b246Zm9jdXMge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjMGU0MjhhO1xuICBjb2xvcjogI2ZlZmVmZTtcbn1cblxuLmJ1dHRvbi1ncm91cC5zZWNvbmRhcnkgLmJ1dHRvbiB7XG4gIGJhY2tncm91bmQtY29sb3I6ICM3Njc2NzY7XG4gIGNvbG9yOiAjZmVmZWZlO1xufVxuXG4uYnV0dG9uLWdyb3VwLnNlY29uZGFyeSAuYnV0dG9uOmhvdmVyLCAuYnV0dG9uLWdyb3VwLnNlY29uZGFyeSAuYnV0dG9uOmZvY3VzIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogIzVlNWU1ZTtcbiAgY29sb3I6ICNmZWZlZmU7XG59XG5cbi5idXR0b24tZ3JvdXAuc3VjY2VzcyAuYnV0dG9uIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogIzNhZGI3NjtcbiAgY29sb3I6ICNmZWZlZmU7XG59XG5cbi5idXR0b24tZ3JvdXAuc3VjY2VzcyAuYnV0dG9uOmhvdmVyLCAuYnV0dG9uLWdyb3VwLnN1Y2Nlc3MgLmJ1dHRvbjpmb2N1cyB7XG4gIGJhY2tncm91bmQtY29sb3I6ICMyMmJiNWI7XG4gIGNvbG9yOiAjZmVmZWZlO1xufVxuXG4uYnV0dG9uLWdyb3VwLndhcm5pbmcgLmJ1dHRvbiB7XG4gIGJhY2tncm91bmQtY29sb3I6ICNmZmFlMDA7XG4gIGNvbG9yOiAjZmVmZWZlO1xufVxuXG4uYnV0dG9uLWdyb3VwLndhcm5pbmcgLmJ1dHRvbjpob3ZlciwgLmJ1dHRvbi1ncm91cC53YXJuaW5nIC5idXR0b246Zm9jdXMge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjY2M4YjAwO1xuICBjb2xvcjogI2ZlZmVmZTtcbn1cblxuLmJ1dHRvbi1ncm91cC5hbGVydCAuYnV0dG9uIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2NjNGIzNztcbiAgY29sb3I6ICNmZWZlZmU7XG59XG5cbi5idXR0b24tZ3JvdXAuYWxlcnQgLmJ1dHRvbjpob3ZlciwgLmJ1dHRvbi1ncm91cC5hbGVydCAuYnV0dG9uOmZvY3VzIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2E1M2IyYTtcbiAgY29sb3I6ICNmZWZlZmU7XG59XG5cbi5idXR0b24tZ3JvdXAuc3RhY2tlZCAuYnV0dG9uLCAuYnV0dG9uLWdyb3VwLnN0YWNrZWQtZm9yLXNtYWxsIC5idXR0b24sIC5idXR0b24tZ3JvdXAuc3RhY2tlZC1mb3ItbWVkaXVtIC5idXR0b24ge1xuICB3aWR0aDogMTAwJTtcbn1cblxuLmJ1dHRvbi1ncm91cC5zdGFja2VkIC5idXR0b246bGFzdC1jaGlsZCwgLmJ1dHRvbi1ncm91cC5zdGFja2VkLWZvci1zbWFsbCAuYnV0dG9uOmxhc3QtY2hpbGQsIC5idXR0b24tZ3JvdXAuc3RhY2tlZC1mb3ItbWVkaXVtIC5idXR0b246bGFzdC1jaGlsZCB7XG4gIG1hcmdpbi1ib3R0b206IDA7XG59XG5cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0OGVtKSB7XG4gIC5idXR0b24tZ3JvdXAuc3RhY2tlZC1mb3Itc21hbGwgLmJ1dHRvbiB7XG4gICAgd2lkdGg6IGF1dG87XG4gICAgbWFyZ2luLWJvdHRvbTogMDtcbiAgfVxufVxuXG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAuYnV0dG9uLWdyb3VwLnN0YWNrZWQtZm9yLW1lZGl1bSAuYnV0dG9uIHtcbiAgICB3aWR0aDogYXV0bztcbiAgICBtYXJnaW4tYm90dG9tOiAwO1xuICB9XG59XG5cbkBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDQ3LjkzNzVlbSkge1xuICAuYnV0dG9uLWdyb3VwLnN0YWNrZWQtZm9yLXNtYWxsLmV4cGFuZGVkIHtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgfVxuICAuYnV0dG9uLWdyb3VwLnN0YWNrZWQtZm9yLXNtYWxsLmV4cGFuZGVkIC5idXR0b24ge1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIG1hcmdpbi1yaWdodDogMDtcbiAgfVxufVxuXG4uY2FsbG91dCB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgbWFyZ2luOiAwIDAgMXJlbSAwO1xuICBwYWRkaW5nOiAxcmVtO1xuICBib3JkZXI6IDFweCBzb2xpZCByZ2JhKDEwLCAxMCwgMTAsIDAuMjUpO1xuICBib3JkZXItcmFkaXVzOiAwLjE4cmVtO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB3aGl0ZTtcbiAgY29sb3I6ICMwYTBhMGE7XG59XG5cbi5jYWxsb3V0ID4gOmZpcnN0LWNoaWxkIHtcbiAgbWFyZ2luLXRvcDogMDtcbn1cblxuLmNhbGxvdXQgPiA6bGFzdC1jaGlsZCB7XG4gIG1hcmdpbi1ib3R0b206IDA7XG59XG5cbi5jYWxsb3V0LnByaW1hcnkge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZDNlNGZiO1xuICBjb2xvcjogIzBhMGEwYTtcbn1cblxuLmNhbGxvdXQuc2Vjb25kYXJ5IHtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2VhZWFlYTtcbiAgY29sb3I6ICMwYTBhMGE7XG59XG5cbi5jYWxsb3V0LnN1Y2Nlc3Mge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZTFmYWVhO1xuICBjb2xvcjogIzBhMGEwYTtcbn1cblxuLmNhbGxvdXQud2FybmluZyB7XG4gIGJhY2tncm91bmQtY29sb3I6ICNmZmYzZDk7XG4gIGNvbG9yOiAjMGEwYTBhO1xufVxuXG4uY2FsbG91dC5hbGVydCB7XG4gIGJhY2tncm91bmQtY29sb3I6ICNmN2U0ZTE7XG4gIGNvbG9yOiAjMGEwYTBhO1xufVxuXG4uY2FsbG91dC5zbWFsbCB7XG4gIHBhZGRpbmctdG9wOiAwLjVyZW07XG4gIHBhZGRpbmctcmlnaHQ6IDAuNXJlbTtcbiAgcGFkZGluZy1ib3R0b206IDAuNXJlbTtcbiAgcGFkZGluZy1sZWZ0OiAwLjVyZW07XG59XG5cbi5jYWxsb3V0LmxhcmdlIHtcbiAgcGFkZGluZy10b3A6IDNyZW07XG4gIHBhZGRpbmctcmlnaHQ6IDNyZW07XG4gIHBhZGRpbmctYm90dG9tOiAzcmVtO1xuICBwYWRkaW5nLWxlZnQ6IDNyZW07XG59XG5cbi5jYXJkIHtcbiAgbWFyZ2luLWJvdHRvbTogMXJlbTtcbiAgYm9yZGVyOiAxcHggc29saWQgI2RkZGRkZDtcbiAgYm9yZGVyLXJhZGl1czogMC4xOHJlbTtcbiAgYmFja2dyb3VuZDogI2ZlZmVmZTtcbiAgYm94LXNoYWRvdzogbm9uZTtcbiAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgY29sb3I6ICMwYTBhMGE7XG59XG5cbi5jYXJkID4gOmxhc3QtY2hpbGQge1xuICBtYXJnaW4tYm90dG9tOiAwO1xufVxuXG4uY2FyZC1kaXZpZGVyIHtcbiAgcGFkZGluZzogMXJlbTtcbiAgYmFja2dyb3VuZDogI2U4ZTVlNTtcbn1cblxuLmNhcmQtZGl2aWRlciA+IDpsYXN0LWNoaWxkIHtcbiAgbWFyZ2luLWJvdHRvbTogMDtcbn1cblxuLmNhcmQtc2VjdGlvbiB7XG4gIHBhZGRpbmc6IDFyZW07XG59XG5cbi5jYXJkLXNlY3Rpb24gPiA6bGFzdC1jaGlsZCB7XG4gIG1hcmdpbi1ib3R0b206IDA7XG59XG5cbi5jYXJkLWltYWdlIHtcbiAgbWluLWhlaWdodDogMXB4O1xufVxuXG4uY2xvc2UtYnV0dG9uIHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICBjb2xvcjogIzc5Nzk2QTtcbiAgY3Vyc29yOiBwb2ludGVyO1xufVxuXG5bZGF0YS13aGF0aW5wdXQ9J21vdXNlJ10gLmNsb3NlLWJ1dHRvbiB7XG4gIG91dGxpbmU6IDA7XG59XG5cbi5jbG9zZS1idXR0b246aG92ZXIsIC5jbG9zZS1idXR0b246Zm9jdXMge1xuICBjb2xvcjogIzBhMGEwYTtcbn1cblxuLmNsb3NlLWJ1dHRvbi5zbWFsbCB7XG4gIHJpZ2h0OiAwLjY2cmVtO1xuICB0b3A6IDAuMzNlbTtcbiAgZm9udC1zaXplOiAxLjVlbTtcbiAgbGluZS1oZWlnaHQ6IDE7XG59XG5cbi5jbG9zZS1idXR0b24sIC5jbG9zZS1idXR0b24ubWVkaXVtIHtcbiAgcmlnaHQ6IDFyZW07XG4gIHRvcDogMC41cmVtO1xuICBmb250LXNpemU6IDJlbTtcbiAgbGluZS1oZWlnaHQ6IDE7XG59XG5cbi5tZW51IHtcbiAgcGFkZGluZzogMDtcbiAgbWFyZ2luOiAwO1xuICBsaXN0LXN0eWxlOiBub25lO1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG59XG5cbltkYXRhLXdoYXRpbnB1dD0nbW91c2UnXSAubWVudSBsaSB7XG4gIG91dGxpbmU6IDA7XG59XG5cbi5tZW51IGEsXG4ubWVudSAuYnV0dG9uIHtcbiAgbGluZS1oZWlnaHQ6IDE7XG4gIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgd2hpdGUtc3BhY2U6IG5vd3JhcDtcbiAgZGlzcGxheTogYmxvY2s7XG4gIHBhZGRpbmc6IDAuN3JlbSAxcmVtO1xufVxuXG4ubWVudSBpbnB1dCxcbi5tZW51IHNlbGVjdCxcbi5tZW51IGEsXG4ubWVudSBidXR0b24ge1xuICBtYXJnaW4tYm90dG9tOiAwO1xufVxuXG4ubWVudSBpbnB1dCB7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbn1cblxuLm1lbnUgbGksIC5tZW51Lmhvcml6b250YWwgbGkge1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG59XG5cbi5tZW51LnZlcnRpY2FsIGxpIHtcbiAgZGlzcGxheTogYmxvY2s7XG59XG5cbi5tZW51LmV4cGFuZGVkIHtcbiAgZGlzcGxheTogdGFibGU7XG4gIHdpZHRoOiAxMDAlO1xufVxuXG4ubWVudS5leHBhbmRlZCA+IGxpIHtcbiAgZGlzcGxheTogdGFibGUtY2VsbDtcbiAgdmVydGljYWwtYWxpZ246IG1pZGRsZTtcbn1cblxuLm1lbnUuc2ltcGxlIGxpICsgbGkge1xuICBtYXJnaW4tbGVmdDogMXJlbTtcbn1cblxuLm1lbnUuc2ltcGxlIGEge1xuICBwYWRkaW5nOiAwO1xufVxuXG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDhlbSkge1xuICAubWVudS5tZWRpdW0taG9yaXpvbnRhbCBsaSB7XG4gICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICB9XG4gIC5tZW51Lm1lZGl1bS12ZXJ0aWNhbCBsaSB7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gIH1cbiAgLm1lbnUubWVkaXVtLWV4cGFuZGVkIHtcbiAgICBkaXNwbGF5OiB0YWJsZTtcbiAgICB3aWR0aDogMTAwJTtcbiAgfVxuICAubWVudS5tZWRpdW0tZXhwYW5kZWQgPiBsaSB7XG4gICAgZGlzcGxheTogdGFibGUtY2VsbDtcbiAgICB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlO1xuICB9XG4gIC5tZW51Lm1lZGl1bS1zaW1wbGUge1xuICAgIGRpc3BsYXk6IHRhYmxlO1xuICAgIHdpZHRoOiAxMDAlO1xuICB9XG4gIC5tZW51Lm1lZGl1bS1zaW1wbGUgPiBsaSB7XG4gICAgZGlzcGxheTogdGFibGUtY2VsbDtcbiAgICB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlO1xuICB9XG59XG5cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gIC5tZW51LmxhcmdlLWhvcml6b250YWwgbGkge1xuICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgfVxuICAubWVudS5sYXJnZS12ZXJ0aWNhbCBsaSB7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gIH1cbiAgLm1lbnUubGFyZ2UtZXhwYW5kZWQge1xuICAgIGRpc3BsYXk6IHRhYmxlO1xuICAgIHdpZHRoOiAxMDAlO1xuICB9XG4gIC5tZW51LmxhcmdlLWV4cGFuZGVkID4gbGkge1xuICAgIGRpc3BsYXk6IHRhYmxlLWNlbGw7XG4gICAgdmVydGljYWwtYWxpZ246IG1pZGRsZTtcbiAgfVxuICAubWVudS5sYXJnZS1zaW1wbGUge1xuICAgIGRpc3BsYXk6IHRhYmxlO1xuICAgIHdpZHRoOiAxMDAlO1xuICB9XG4gIC5tZW51LmxhcmdlLXNpbXBsZSA+IGxpIHtcbiAgICBkaXNwbGF5OiB0YWJsZS1jZWxsO1xuICAgIHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7XG4gIH1cbn1cblxuQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNzVlbSkge1xuICAubWVudS54bGFyZ2UtaG9yaXpvbnRhbCBsaSB7XG4gICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICB9XG4gIC5tZW51LnhsYXJnZS12ZXJ0aWNhbCBsaSB7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gIH1cbiAgLm1lbnUueGxhcmdlLWV4cGFuZGVkIHtcbiAgICBkaXNwbGF5OiB0YWJsZTtcbiAgICB3aWR0aDogMTAwJTtcbiAgfVxuICAubWVudS54bGFyZ2UtZXhwYW5kZWQgPiBsaSB7XG4gICAgZGlzcGxheTogdGFibGUtY2VsbDtcbiAgICB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlO1xuICB9XG4gIC5tZW51LnhsYXJnZS1zaW1wbGUge1xuICAgIGRpc3BsYXk6IHRhYmxlO1xuICAgIHdpZHRoOiAxMDAlO1xuICB9XG4gIC5tZW51LnhsYXJnZS1zaW1wbGUgPiBsaSB7XG4gICAgZGlzcGxheTogdGFibGUtY2VsbDtcbiAgICB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlO1xuICB9XG59XG5cbkBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDkwZW0pIHtcbiAgLm1lbnUueHhsYXJnZS1ob3Jpem9udGFsIGxpIHtcbiAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIH1cbiAgLm1lbnUueHhsYXJnZS12ZXJ0aWNhbCBsaSB7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gIH1cbiAgLm1lbnUueHhsYXJnZS1leHBhbmRlZCB7XG4gICAgZGlzcGxheTogdGFibGU7XG4gICAgd2lkdGg6IDEwMCU7XG4gIH1cbiAgLm1lbnUueHhsYXJnZS1leHBhbmRlZCA+IGxpIHtcbiAgICBkaXNwbGF5OiB0YWJsZS1jZWxsO1xuICAgIHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7XG4gIH1cbiAgLm1lbnUueHhsYXJnZS1zaW1wbGUge1xuICAgIGRpc3BsYXk6IHRhYmxlO1xuICAgIHdpZHRoOiAxMDAlO1xuICB9XG4gIC5tZW51Lnh4bGFyZ2Utc2ltcGxlID4gbGkge1xuICAgIGRpc3BsYXk6IHRhYmxlLWNlbGw7XG4gICAgdmVydGljYWwtYWxpZ246IG1pZGRsZTtcbiAgfVxufVxuXG4ubWVudS5uZXN0ZWQge1xuICBtYXJnaW4tcmlnaHQ6IDA7XG4gIG1hcmdpbi1sZWZ0OiAxcmVtO1xufVxuXG4ubWVudS5pY29ucyBpbWcsXG4ubWVudS5pY29ucyBpLFxuLm1lbnUuaWNvbnMgc3ZnIHtcbiAgdmVydGljYWwtYWxpZ246IG1pZGRsZTtcbn1cblxuLm1lbnUuaWNvbnMgaW1nICsgc3Bhbixcbi5tZW51Lmljb25zIGkgKyBzcGFuLFxuLm1lbnUuaWNvbnMgc3ZnICsgc3BhbiB7XG4gIHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7XG59XG5cbi5tZW51Lmljb24tbGVmdCBsaSBhIGltZyxcbi5tZW51Lmljb24tbGVmdCBsaSBhIGksXG4ubWVudS5pY29uLWxlZnQgbGkgYSBzdmcge1xuICBtYXJnaW4tcmlnaHQ6IDAuMjVyZW07XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbn1cblxuLm1lbnUuaWNvbi1yaWdodCBsaSBhIGltZyxcbi5tZW51Lmljb24tcmlnaHQgbGkgYSBpLFxuLm1lbnUuaWNvbi1yaWdodCBsaSBhIHN2ZyB7XG4gIG1hcmdpbi1sZWZ0OiAwLjI1cmVtO1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG59XG5cbi5tZW51Lmljb24tdG9wIGxpIGEge1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG59XG5cbi5tZW51Lmljb24tdG9wIGxpIGEgaW1nLFxuLm1lbnUuaWNvbi10b3AgbGkgYSBpLFxuLm1lbnUuaWNvbi10b3AgbGkgYSBzdmcge1xuICBkaXNwbGF5OiBibG9jaztcbiAgbWFyZ2luOiAwIGF1dG8gMC4yNXJlbTtcbn1cblxuLm1lbnUuaWNvbi1ib3R0b20gbGkgYSB7XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbn1cblxuLm1lbnUuaWNvbi1ib3R0b20gbGkgYSBpbWcsXG4ubWVudS5pY29uLWJvdHRvbSBsaSBhIGksXG4ubWVudS5pY29uLWJvdHRvbSBsaSBhIHN2ZyB7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBtYXJnaW46IDAuMjVyZW0gYXV0byAwO1xufVxuXG4ubWVudSAuaXMtYWN0aXZlID4gYSB7XG4gIGJhY2tncm91bmQ6ICMxMTUzQUQ7XG4gIGNvbG9yOiAjZmVmZWZlO1xufVxuXG4ubWVudSAuYWN0aXZlID4gYSB7XG4gIGJhY2tncm91bmQ6ICMxMTUzQUQ7XG4gIGNvbG9yOiAjZmVmZWZlO1xufVxuXG4ubWVudS5hbGlnbi1sZWZ0IHtcbiAgdGV4dC1hbGlnbjogbGVmdDtcbn1cblxuLm1lbnUuYWxpZ24tcmlnaHQge1xuICB0ZXh0LWFsaWduOiByaWdodDtcbn1cblxuLm1lbnUuYWxpZ24tcmlnaHQgLnN1Ym1lbnUgbGkge1xuICB0ZXh0LWFsaWduOiBsZWZ0O1xufVxuXG4ubWVudS5hbGlnbi1yaWdodC52ZXJ0aWNhbCAuc3VibWVudSBsaSB7XG4gIHRleHQtYWxpZ246IHJpZ2h0O1xufVxuXG4ubWVudS5hbGlnbi1yaWdodCAubmVzdGVkIHtcbiAgbWFyZ2luLXJpZ2h0OiAxcmVtO1xuICBtYXJnaW4tbGVmdDogMDtcbn1cblxuLm1lbnUuYWxpZ24tY2VudGVyIHtcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xufVxuXG4ubWVudS5hbGlnbi1jZW50ZXIgLnN1Ym1lbnUgbGkge1xuICB0ZXh0LWFsaWduOiBsZWZ0O1xufVxuXG4ubWVudSAubWVudS10ZXh0IHtcbiAgcGFkZGluZzogMC43cmVtIDFyZW07XG4gIGZvbnQtd2VpZ2h0OiBib2xkO1xuICBsaW5lLWhlaWdodDogMTtcbiAgY29sb3I6IGluaGVyaXQ7XG59XG5cbi5tZW51LWNlbnRlcmVkID4gLm1lbnUge1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG59XG5cbi5tZW51LWNlbnRlcmVkID4gLm1lbnUgLnN1Ym1lbnUgbGkge1xuICB0ZXh0LWFsaWduOiBsZWZ0O1xufVxuXG4ubm8tanMgW2RhdGEtcmVzcG9uc2l2ZS1tZW51XSB1bCB7XG4gIGRpc3BsYXk6IG5vbmU7XG59XG5cbi5tZW51LWljb24ge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgdmVydGljYWwtYWxpZ246IG1pZGRsZTtcbiAgd2lkdGg6IDIwcHg7XG4gIGhlaWdodDogMTZweDtcbiAgY3Vyc29yOiBwb2ludGVyO1xufVxuXG4ubWVudS1pY29uOjphZnRlciB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgdG9wOiAwO1xuICBsZWZ0OiAwO1xuICBkaXNwbGF5OiBibG9jaztcbiAgd2lkdGg6IDEwMCU7XG4gIGhlaWdodDogMnB4O1xuICBiYWNrZ3JvdW5kOiAjZmVmZWZlO1xuICBib3gtc2hhZG93OiAwIDdweCAwICNmZWZlZmUsIDAgMTRweCAwICNmZWZlZmU7XG4gIGNvbnRlbnQ6ICcnO1xufVxuXG4ubWVudS1pY29uOmhvdmVyOjphZnRlciB7XG4gIGJhY2tncm91bmQ6ICNkZGRkZGQ7XG4gIGJveC1zaGFkb3c6IDAgN3B4IDAgI2RkZGRkZCwgMCAxNHB4IDAgI2RkZGRkZDtcbn1cblxuLm1lbnUtaWNvbi5kYXJrIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7XG4gIHdpZHRoOiAyMHB4O1xuICBoZWlnaHQ6IDE2cHg7XG4gIGN1cnNvcjogcG9pbnRlcjtcbn1cblxuLm1lbnUtaWNvbi5kYXJrOjphZnRlciB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgdG9wOiAwO1xuICBsZWZ0OiAwO1xuICBkaXNwbGF5OiBibG9jaztcbiAgd2lkdGg6IDEwMCU7XG4gIGhlaWdodDogMnB4O1xuICBiYWNrZ3JvdW5kOiAjMGEwYTBhO1xuICBib3gtc2hhZG93OiAwIDdweCAwICMwYTBhMGEsIDAgMTRweCAwICMwYTBhMGE7XG4gIGNvbnRlbnQ6ICcnO1xufVxuXG4ubWVudS1pY29uLmRhcms6aG92ZXI6OmFmdGVyIHtcbiAgYmFja2dyb3VuZDogIzc5Nzk2QTtcbiAgYm94LXNoYWRvdzogMCA3cHggMCAjNzk3OTZBLCAwIDE0cHggMCAjNzk3OTZBO1xufVxuXG4uaXMtZHJpbGxkb3duIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBvdmVyZmxvdzogaGlkZGVuO1xufVxuXG4uaXMtZHJpbGxkb3duIGxpIHtcbiAgZGlzcGxheTogYmxvY2s7XG59XG5cbi5pcy1kcmlsbGRvd24uYW5pbWF0ZS1oZWlnaHQge1xuICB0cmFuc2l0aW9uOiBoZWlnaHQgMC41cztcbn1cblxuLmRyaWxsZG93biBhIHtcbiAgcGFkZGluZzogMC43cmVtIDFyZW07XG4gIGJhY2tncm91bmQ6ICNmZWZlZmU7XG59XG5cbi5kcmlsbGRvd24gLmlzLWRyaWxsZG93bi1zdWJtZW51IHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB0b3A6IDA7XG4gIGxlZnQ6IDEwMCU7XG4gIHotaW5kZXg6IC0xO1xuICB3aWR0aDogMTAwJTtcbiAgYmFja2dyb3VuZDogI2ZlZmVmZTtcbiAgdHJhbnNpdGlvbjogdHJhbnNmb3JtIDAuMTVzIGxpbmVhcjtcbn1cblxuLmRyaWxsZG93biAuaXMtZHJpbGxkb3duLXN1Ym1lbnUuaXMtYWN0aXZlIHtcbiAgei1pbmRleDogMTtcbiAgZGlzcGxheTogYmxvY2s7XG4gIHRyYW5zZm9ybTogdHJhbnNsYXRlWCgtMTAwJSk7XG59XG5cbi5kcmlsbGRvd24gLmlzLWRyaWxsZG93bi1zdWJtZW51LmlzLWNsb3Npbmcge1xuICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoMTAwJSk7XG59XG5cbi5kcmlsbGRvd24gLmlzLWRyaWxsZG93bi1zdWJtZW51IGEge1xuICBwYWRkaW5nOiAwLjdyZW0gMXJlbTtcbn1cblxuLmRyaWxsZG93biAubmVzdGVkLmlzLWRyaWxsZG93bi1zdWJtZW51IHtcbiAgbWFyZ2luLXJpZ2h0OiAwO1xuICBtYXJnaW4tbGVmdDogMDtcbn1cblxuLmRyaWxsZG93biAuZHJpbGxkb3duLXN1Ym1lbnUtY292ZXItcHJldmlvdXMge1xuICBtaW4taGVpZ2h0OiAxMDAlO1xufVxuXG4uZHJpbGxkb3duIC5pcy1kcmlsbGRvd24tc3VibWVudS1wYXJlbnQgPiBhIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xufVxuXG4uZHJpbGxkb3duIC5pcy1kcmlsbGRvd24tc3VibWVudS1wYXJlbnQgPiBhOjphZnRlciB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgdG9wOiA1MCU7XG4gIG1hcmdpbi10b3A6IC02cHg7XG4gIHJpZ2h0OiAxcmVtO1xuICBkaXNwbGF5OiBibG9jaztcbiAgd2lkdGg6IDA7XG4gIGhlaWdodDogMDtcbiAgYm9yZGVyOiBpbnNldCA2cHg7XG4gIGNvbnRlbnQ6ICcnO1xuICBib3JkZXItcmlnaHQtd2lkdGg6IDA7XG4gIGJvcmRlci1sZWZ0LXN0eWxlOiBzb2xpZDtcbiAgYm9yZGVyLWNvbG9yOiB0cmFuc3BhcmVudCB0cmFuc3BhcmVudCB0cmFuc3BhcmVudCAjMTE1M0FEO1xufVxuXG4uZHJpbGxkb3duLmFsaWduLWxlZnQgLmlzLWRyaWxsZG93bi1zdWJtZW51LXBhcmVudCA+IGE6OmFmdGVyIHtcbiAgbGVmdDogYXV0bztcbiAgcmlnaHQ6IDFyZW07XG4gIGRpc3BsYXk6IGJsb2NrO1xuICB3aWR0aDogMDtcbiAgaGVpZ2h0OiAwO1xuICBib3JkZXI6IGluc2V0IDZweDtcbiAgY29udGVudDogJyc7XG4gIGJvcmRlci1yaWdodC13aWR0aDogMDtcbiAgYm9yZGVyLWxlZnQtc3R5bGU6IHNvbGlkO1xuICBib3JkZXItY29sb3I6IHRyYW5zcGFyZW50IHRyYW5zcGFyZW50IHRyYW5zcGFyZW50ICMxMTUzQUQ7XG59XG5cbi5kcmlsbGRvd24uYWxpZ24tcmlnaHQgLmlzLWRyaWxsZG93bi1zdWJtZW51LXBhcmVudCA+IGE6OmFmdGVyIHtcbiAgcmlnaHQ6IGF1dG87XG4gIGxlZnQ6IDFyZW07XG4gIGRpc3BsYXk6IGJsb2NrO1xuICB3aWR0aDogMDtcbiAgaGVpZ2h0OiAwO1xuICBib3JkZXI6IGluc2V0IDZweDtcbiAgY29udGVudDogJyc7XG4gIGJvcmRlci1sZWZ0LXdpZHRoOiAwO1xuICBib3JkZXItcmlnaHQtc3R5bGU6IHNvbGlkO1xuICBib3JkZXItY29sb3I6IHRyYW5zcGFyZW50ICMxMTUzQUQgdHJhbnNwYXJlbnQgdHJhbnNwYXJlbnQ7XG59XG5cbi5kcmlsbGRvd24gLmpzLWRyaWxsZG93bi1iYWNrID4gYTo6YmVmb3JlIHtcbiAgZGlzcGxheTogYmxvY2s7XG4gIHdpZHRoOiAwO1xuICBoZWlnaHQ6IDA7XG4gIGJvcmRlcjogaW5zZXQgNnB4O1xuICBjb250ZW50OiAnJztcbiAgYm9yZGVyLWxlZnQtd2lkdGg6IDA7XG4gIGJvcmRlci1yaWdodC1zdHlsZTogc29saWQ7XG4gIGJvcmRlci1jb2xvcjogdHJhbnNwYXJlbnQgIzExNTNBRCB0cmFuc3BhcmVudCB0cmFuc3BhcmVudDtcbiAgYm9yZGVyLWxlZnQtd2lkdGg6IDA7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgdmVydGljYWwtYWxpZ246IG1pZGRsZTtcbiAgbWFyZ2luLXJpZ2h0OiAwLjc1cmVtO1xuICBib3JkZXItbGVmdC13aWR0aDogMDtcbn1cblxuLmRyb3Bkb3duLXBhbmUge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHotaW5kZXg6IDEwO1xuICB3aWR0aDogMzAwcHg7XG4gIHBhZGRpbmc6IDFyZW07XG4gIHZpc2liaWxpdHk6IGhpZGRlbjtcbiAgZGlzcGxheTogbm9uZTtcbiAgYm9yZGVyOiAxcHggc29saWQgI2RkZGRkZDtcbiAgYm9yZGVyLXJhZGl1czogMC4xOHJlbTtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2ZmZjtcbiAgZm9udC1zaXplOiAxcmVtO1xufVxuXG4uZHJvcGRvd24tcGFuZS5pcy1vcGVuaW5nIHtcbiAgZGlzcGxheTogYmxvY2s7XG59XG5cbi5kcm9wZG93bi1wYW5lLmlzLW9wZW4ge1xuICB2aXNpYmlsaXR5OiB2aXNpYmxlO1xuICBkaXNwbGF5OiBibG9jaztcbn1cblxuLmRyb3Bkb3duLXBhbmUudGlueSB7XG4gIHdpZHRoOiAxMDBweDtcbn1cblxuLmRyb3Bkb3duLXBhbmUuc21hbGwge1xuICB3aWR0aDogMjAwcHg7XG59XG5cbi5kcm9wZG93bi1wYW5lLmxhcmdlIHtcbiAgd2lkdGg6IDQwMHB4O1xufVxuXG4uZHJvcGRvd24ubWVudSA+IGxpLm9wZW5zLWxlZnQgPiAuaXMtZHJvcGRvd24tc3VibWVudSB7XG4gIHRvcDogMTAwJTtcbiAgcmlnaHQ6IDA7XG4gIGxlZnQ6IGF1dG87XG59XG5cbi5kcm9wZG93bi5tZW51ID4gbGkub3BlbnMtcmlnaHQgPiAuaXMtZHJvcGRvd24tc3VibWVudSB7XG4gIHRvcDogMTAwJTtcbiAgcmlnaHQ6IGF1dG87XG4gIGxlZnQ6IDA7XG59XG5cbi5kcm9wZG93bi5tZW51ID4gbGkuaXMtZHJvcGRvd24tc3VibWVudS1wYXJlbnQgPiBhIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBwYWRkaW5nLXJpZ2h0OiAxLjVyZW07XG59XG5cbi5kcm9wZG93bi5tZW51ID4gbGkuaXMtZHJvcGRvd24tc3VibWVudS1wYXJlbnQgPiBhOjphZnRlciB7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICB3aWR0aDogMDtcbiAgaGVpZ2h0OiAwO1xuICBib3JkZXI6IGluc2V0IDZweDtcbiAgY29udGVudDogJyc7XG4gIGJvcmRlci1ib3R0b20td2lkdGg6IDA7XG4gIGJvcmRlci10b3Atc3R5bGU6IHNvbGlkO1xuICBib3JkZXItY29sb3I6ICMxMTUzQUQgdHJhbnNwYXJlbnQgdHJhbnNwYXJlbnQ7XG4gIHJpZ2h0OiA1cHg7XG4gIG1hcmdpbi10b3A6IC0zcHg7XG59XG5cbi5kcm9wZG93bi5tZW51IGEge1xuICBwYWRkaW5nOiAwLjdyZW0gMXJlbTtcbn1cblxuW2RhdGEtd2hhdGlucHV0PSdtb3VzZSddIC5kcm9wZG93bi5tZW51IGEge1xuICBvdXRsaW5lOiAwO1xufVxuXG4uZHJvcGRvd24ubWVudSAuaXMtYWN0aXZlID4gYSB7XG4gIGJhY2tncm91bmQ6IHRyYW5zcGFyZW50O1xuICBjb2xvcjogIzExNTNBRDtcbn1cblxuLm5vLWpzIC5kcm9wZG93bi5tZW51IHVsIHtcbiAgZGlzcGxheTogbm9uZTtcbn1cblxuLmRyb3Bkb3duLm1lbnUgLm5lc3RlZC5pcy1kcm9wZG93bi1zdWJtZW51IHtcbiAgbWFyZ2luLXJpZ2h0OiAwO1xuICBtYXJnaW4tbGVmdDogMDtcbn1cblxuLmRyb3Bkb3duLm1lbnUudmVydGljYWwgPiBsaSAuaXMtZHJvcGRvd24tc3VibWVudSB7XG4gIHRvcDogMDtcbn1cblxuLmRyb3Bkb3duLm1lbnUudmVydGljYWwgPiBsaS5vcGVucy1sZWZ0ID4gLmlzLWRyb3Bkb3duLXN1Ym1lbnUge1xuICByaWdodDogMTAwJTtcbiAgbGVmdDogYXV0bztcbiAgdG9wOiAwO1xufVxuXG4uZHJvcGRvd24ubWVudS52ZXJ0aWNhbCA+IGxpLm9wZW5zLXJpZ2h0ID4gLmlzLWRyb3Bkb3duLXN1Ym1lbnUge1xuICByaWdodDogYXV0bztcbiAgbGVmdDogMTAwJTtcbn1cblxuLmRyb3Bkb3duLm1lbnUudmVydGljYWwgPiBsaSA+IGE6OmFmdGVyIHtcbiAgcmlnaHQ6IDE0cHg7XG59XG5cbi5kcm9wZG93bi5tZW51LnZlcnRpY2FsID4gbGkub3BlbnMtbGVmdCA+IGE6OmFmdGVyIHtcbiAgcmlnaHQ6IGF1dG87XG4gIGxlZnQ6IDVweDtcbiAgZGlzcGxheTogYmxvY2s7XG4gIHdpZHRoOiAwO1xuICBoZWlnaHQ6IDA7XG4gIGJvcmRlcjogaW5zZXQgNnB4O1xuICBjb250ZW50OiAnJztcbiAgYm9yZGVyLWxlZnQtd2lkdGg6IDA7XG4gIGJvcmRlci1yaWdodC1zdHlsZTogc29saWQ7XG4gIGJvcmRlci1jb2xvcjogdHJhbnNwYXJlbnQgIzExNTNBRCB0cmFuc3BhcmVudCB0cmFuc3BhcmVudDtcbn1cblxuLmRyb3Bkb3duLm1lbnUudmVydGljYWwgPiBsaS5vcGVucy1yaWdodCA+IGE6OmFmdGVyIHtcbiAgZGlzcGxheTogYmxvY2s7XG4gIHdpZHRoOiAwO1xuICBoZWlnaHQ6IDA7XG4gIGJvcmRlcjogaW5zZXQgNnB4O1xuICBjb250ZW50OiAnJztcbiAgYm9yZGVyLXJpZ2h0LXdpZHRoOiAwO1xuICBib3JkZXItbGVmdC1zdHlsZTogc29saWQ7XG4gIGJvcmRlci1jb2xvcjogdHJhbnNwYXJlbnQgdHJhbnNwYXJlbnQgdHJhbnNwYXJlbnQgIzExNTNBRDtcbn1cblxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQ4ZW0pIHtcbiAgLmRyb3Bkb3duLm1lbnUubWVkaXVtLWhvcml6b250YWwgPiBsaS5vcGVucy1sZWZ0ID4gLmlzLWRyb3Bkb3duLXN1Ym1lbnUge1xuICAgIHRvcDogMTAwJTtcbiAgICByaWdodDogMDtcbiAgICBsZWZ0OiBhdXRvO1xuICB9XG4gIC5kcm9wZG93bi5tZW51Lm1lZGl1bS1ob3Jpem9udGFsID4gbGkub3BlbnMtcmlnaHQgPiAuaXMtZHJvcGRvd24tc3VibWVudSB7XG4gICAgdG9wOiAxMDAlO1xuICAgIHJpZ2h0OiBhdXRvO1xuICAgIGxlZnQ6IDA7XG4gIH1cbiAgLmRyb3Bkb3duLm1lbnUubWVkaXVtLWhvcml6b250YWwgPiBsaS5pcy1kcm9wZG93bi1zdWJtZW51LXBhcmVudCA+IGEge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICBwYWRkaW5nLXJpZ2h0OiAxLjVyZW07XG4gIH1cbiAgLmRyb3Bkb3duLm1lbnUubWVkaXVtLWhvcml6b250YWwgPiBsaS5pcy1kcm9wZG93bi1zdWJtZW51LXBhcmVudCA+IGE6OmFmdGVyIHtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICB3aWR0aDogMDtcbiAgICBoZWlnaHQ6IDA7XG4gICAgYm9yZGVyOiBpbnNldCA2cHg7XG4gICAgY29udGVudDogJyc7XG4gICAgYm9yZGVyLWJvdHRvbS13aWR0aDogMDtcbiAgICBib3JkZXItdG9wLXN0eWxlOiBzb2xpZDtcbiAgICBib3JkZXItY29sb3I6ICMxMTUzQUQgdHJhbnNwYXJlbnQgdHJhbnNwYXJlbnQ7XG4gICAgcmlnaHQ6IDVweDtcbiAgICBtYXJnaW4tdG9wOiAtM3B4O1xuICB9XG4gIC5kcm9wZG93bi5tZW51Lm1lZGl1bS12ZXJ0aWNhbCA+IGxpIC5pcy1kcm9wZG93bi1zdWJtZW51IHtcbiAgICB0b3A6IDA7XG4gIH1cbiAgLmRyb3Bkb3duLm1lbnUubWVkaXVtLXZlcnRpY2FsID4gbGkub3BlbnMtbGVmdCA+IC5pcy1kcm9wZG93bi1zdWJtZW51IHtcbiAgICByaWdodDogMTAwJTtcbiAgICBsZWZ0OiBhdXRvO1xuICAgIHRvcDogMDtcbiAgfVxuICAuZHJvcGRvd24ubWVudS5tZWRpdW0tdmVydGljYWwgPiBsaS5vcGVucy1yaWdodCA+IC5pcy1kcm9wZG93bi1zdWJtZW51IHtcbiAgICByaWdodDogYXV0bztcbiAgICBsZWZ0OiAxMDAlO1xuICB9XG4gIC5kcm9wZG93bi5tZW51Lm1lZGl1bS12ZXJ0aWNhbCA+IGxpID4gYTo6YWZ0ZXIge1xuICAgIHJpZ2h0OiAxNHB4O1xuICB9XG4gIC5kcm9wZG93bi5tZW51Lm1lZGl1bS12ZXJ0aWNhbCA+IGxpLm9wZW5zLWxlZnQgPiBhOjphZnRlciB7XG4gICAgcmlnaHQ6IGF1dG87XG4gICAgbGVmdDogNXB4O1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIHdpZHRoOiAwO1xuICAgIGhlaWdodDogMDtcbiAgICBib3JkZXI6IGluc2V0IDZweDtcbiAgICBjb250ZW50OiAnJztcbiAgICBib3JkZXItbGVmdC13aWR0aDogMDtcbiAgICBib3JkZXItcmlnaHQtc3R5bGU6IHNvbGlkO1xuICAgIGJvcmRlci1jb2xvcjogdHJhbnNwYXJlbnQgIzExNTNBRCB0cmFuc3BhcmVudCB0cmFuc3BhcmVudDtcbiAgfVxuICAuZHJvcGRvd24ubWVudS5tZWRpdW0tdmVydGljYWwgPiBsaS5vcGVucy1yaWdodCA+IGE6OmFmdGVyIHtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICB3aWR0aDogMDtcbiAgICBoZWlnaHQ6IDA7XG4gICAgYm9yZGVyOiBpbnNldCA2cHg7XG4gICAgY29udGVudDogJyc7XG4gICAgYm9yZGVyLXJpZ2h0LXdpZHRoOiAwO1xuICAgIGJvcmRlci1sZWZ0LXN0eWxlOiBzb2xpZDtcbiAgICBib3JkZXItY29sb3I6IHRyYW5zcGFyZW50IHRyYW5zcGFyZW50IHRyYW5zcGFyZW50ICMxMTUzQUQ7XG4gIH1cbn1cblxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgLmRyb3Bkb3duLm1lbnUubGFyZ2UtaG9yaXpvbnRhbCA+IGxpLm9wZW5zLWxlZnQgPiAuaXMtZHJvcGRvd24tc3VibWVudSB7XG4gICAgdG9wOiAxMDAlO1xuICAgIHJpZ2h0OiAwO1xuICAgIGxlZnQ6IGF1dG87XG4gIH1cbiAgLmRyb3Bkb3duLm1lbnUubGFyZ2UtaG9yaXpvbnRhbCA+IGxpLm9wZW5zLXJpZ2h0ID4gLmlzLWRyb3Bkb3duLXN1Ym1lbnUge1xuICAgIHRvcDogMTAwJTtcbiAgICByaWdodDogYXV0bztcbiAgICBsZWZ0OiAwO1xuICB9XG4gIC5kcm9wZG93bi5tZW51LmxhcmdlLWhvcml6b250YWwgPiBsaS5pcy1kcm9wZG93bi1zdWJtZW51LXBhcmVudCA+IGEge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICBwYWRkaW5nLXJpZ2h0OiAxLjVyZW07XG4gIH1cbiAgLmRyb3Bkb3duLm1lbnUubGFyZ2UtaG9yaXpvbnRhbCA+IGxpLmlzLWRyb3Bkb3duLXN1Ym1lbnUtcGFyZW50ID4gYTo6YWZ0ZXIge1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIHdpZHRoOiAwO1xuICAgIGhlaWdodDogMDtcbiAgICBib3JkZXI6IGluc2V0IDZweDtcbiAgICBjb250ZW50OiAnJztcbiAgICBib3JkZXItYm90dG9tLXdpZHRoOiAwO1xuICAgIGJvcmRlci10b3Atc3R5bGU6IHNvbGlkO1xuICAgIGJvcmRlci1jb2xvcjogIzExNTNBRCB0cmFuc3BhcmVudCB0cmFuc3BhcmVudDtcbiAgICByaWdodDogNXB4O1xuICAgIG1hcmdpbi10b3A6IC0zcHg7XG4gIH1cbiAgLmRyb3Bkb3duLm1lbnUubGFyZ2UtdmVydGljYWwgPiBsaSAuaXMtZHJvcGRvd24tc3VibWVudSB7XG4gICAgdG9wOiAwO1xuICB9XG4gIC5kcm9wZG93bi5tZW51LmxhcmdlLXZlcnRpY2FsID4gbGkub3BlbnMtbGVmdCA+IC5pcy1kcm9wZG93bi1zdWJtZW51IHtcbiAgICByaWdodDogMTAwJTtcbiAgICBsZWZ0OiBhdXRvO1xuICAgIHRvcDogMDtcbiAgfVxuICAuZHJvcGRvd24ubWVudS5sYXJnZS12ZXJ0aWNhbCA+IGxpLm9wZW5zLXJpZ2h0ID4gLmlzLWRyb3Bkb3duLXN1Ym1lbnUge1xuICAgIHJpZ2h0OiBhdXRvO1xuICAgIGxlZnQ6IDEwMCU7XG4gIH1cbiAgLmRyb3Bkb3duLm1lbnUubGFyZ2UtdmVydGljYWwgPiBsaSA+IGE6OmFmdGVyIHtcbiAgICByaWdodDogMTRweDtcbiAgfVxuICAuZHJvcGRvd24ubWVudS5sYXJnZS12ZXJ0aWNhbCA+IGxpLm9wZW5zLWxlZnQgPiBhOjphZnRlciB7XG4gICAgcmlnaHQ6IGF1dG87XG4gICAgbGVmdDogNXB4O1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIHdpZHRoOiAwO1xuICAgIGhlaWdodDogMDtcbiAgICBib3JkZXI6IGluc2V0IDZweDtcbiAgICBjb250ZW50OiAnJztcbiAgICBib3JkZXItbGVmdC13aWR0aDogMDtcbiAgICBib3JkZXItcmlnaHQtc3R5bGU6IHNvbGlkO1xuICAgIGJvcmRlci1jb2xvcjogdHJhbnNwYXJlbnQgIzExNTNBRCB0cmFuc3BhcmVudCB0cmFuc3BhcmVudDtcbiAgfVxuICAuZHJvcGRvd24ubWVudS5sYXJnZS12ZXJ0aWNhbCA+IGxpLm9wZW5zLXJpZ2h0ID4gYTo6YWZ0ZXIge1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIHdpZHRoOiAwO1xuICAgIGhlaWdodDogMDtcbiAgICBib3JkZXI6IGluc2V0IDZweDtcbiAgICBjb250ZW50OiAnJztcbiAgICBib3JkZXItcmlnaHQtd2lkdGg6IDA7XG4gICAgYm9yZGVyLWxlZnQtc3R5bGU6IHNvbGlkO1xuICAgIGJvcmRlci1jb2xvcjogdHJhbnNwYXJlbnQgdHJhbnNwYXJlbnQgdHJhbnNwYXJlbnQgIzExNTNBRDtcbiAgfVxufVxuXG5AbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA3NWVtKSB7XG4gIC5kcm9wZG93bi5tZW51LnhsYXJnZS1ob3Jpem9udGFsID4gbGkub3BlbnMtbGVmdCA+IC5pcy1kcm9wZG93bi1zdWJtZW51IHtcbiAgICB0b3A6IDEwMCU7XG4gICAgcmlnaHQ6IDA7XG4gICAgbGVmdDogYXV0bztcbiAgfVxuICAuZHJvcGRvd24ubWVudS54bGFyZ2UtaG9yaXpvbnRhbCA+IGxpLm9wZW5zLXJpZ2h0ID4gLmlzLWRyb3Bkb3duLXN1Ym1lbnUge1xuICAgIHRvcDogMTAwJTtcbiAgICByaWdodDogYXV0bztcbiAgICBsZWZ0OiAwO1xuICB9XG4gIC5kcm9wZG93bi5tZW51LnhsYXJnZS1ob3Jpem9udGFsID4gbGkuaXMtZHJvcGRvd24tc3VibWVudS1wYXJlbnQgPiBhIHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgcGFkZGluZy1yaWdodDogMS41cmVtO1xuICB9XG4gIC5kcm9wZG93bi5tZW51LnhsYXJnZS1ob3Jpem9udGFsID4gbGkuaXMtZHJvcGRvd24tc3VibWVudS1wYXJlbnQgPiBhOjphZnRlciB7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgd2lkdGg6IDA7XG4gICAgaGVpZ2h0OiAwO1xuICAgIGJvcmRlcjogaW5zZXQgNnB4O1xuICAgIGNvbnRlbnQ6ICcnO1xuICAgIGJvcmRlci1ib3R0b20td2lkdGg6IDA7XG4gICAgYm9yZGVyLXRvcC1zdHlsZTogc29saWQ7XG4gICAgYm9yZGVyLWNvbG9yOiAjMTE1M0FEIHRyYW5zcGFyZW50IHRyYW5zcGFyZW50O1xuICAgIHJpZ2h0OiA1cHg7XG4gICAgbWFyZ2luLXRvcDogLTNweDtcbiAgfVxuICAuZHJvcGRvd24ubWVudS54bGFyZ2UtdmVydGljYWwgPiBsaSAuaXMtZHJvcGRvd24tc3VibWVudSB7XG4gICAgdG9wOiAwO1xuICB9XG4gIC5kcm9wZG93bi5tZW51LnhsYXJnZS12ZXJ0aWNhbCA+IGxpLm9wZW5zLWxlZnQgPiAuaXMtZHJvcGRvd24tc3VibWVudSB7XG4gICAgcmlnaHQ6IDEwMCU7XG4gICAgbGVmdDogYXV0bztcbiAgICB0b3A6IDA7XG4gIH1cbiAgLmRyb3Bkb3duLm1lbnUueGxhcmdlLXZlcnRpY2FsID4gbGkub3BlbnMtcmlnaHQgPiAuaXMtZHJvcGRvd24tc3VibWVudSB7XG4gICAgcmlnaHQ6IGF1dG87XG4gICAgbGVmdDogMTAwJTtcbiAgfVxuICAuZHJvcGRvd24ubWVudS54bGFyZ2UtdmVydGljYWwgPiBsaSA+IGE6OmFmdGVyIHtcbiAgICByaWdodDogMTRweDtcbiAgfVxuICAuZHJvcGRvd24ubWVudS54bGFyZ2UtdmVydGljYWwgPiBsaS5vcGVucy1sZWZ0ID4gYTo6YWZ0ZXIge1xuICAgIHJpZ2h0OiBhdXRvO1xuICAgIGxlZnQ6IDVweDtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICB3aWR0aDogMDtcbiAgICBoZWlnaHQ6IDA7XG4gICAgYm9yZGVyOiBpbnNldCA2cHg7XG4gICAgY29udGVudDogJyc7XG4gICAgYm9yZGVyLWxlZnQtd2lkdGg6IDA7XG4gICAgYm9yZGVyLXJpZ2h0LXN0eWxlOiBzb2xpZDtcbiAgICBib3JkZXItY29sb3I6IHRyYW5zcGFyZW50ICMxMTUzQUQgdHJhbnNwYXJlbnQgdHJhbnNwYXJlbnQ7XG4gIH1cbiAgLmRyb3Bkb3duLm1lbnUueGxhcmdlLXZlcnRpY2FsID4gbGkub3BlbnMtcmlnaHQgPiBhOjphZnRlciB7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgd2lkdGg6IDA7XG4gICAgaGVpZ2h0OiAwO1xuICAgIGJvcmRlcjogaW5zZXQgNnB4O1xuICAgIGNvbnRlbnQ6ICcnO1xuICAgIGJvcmRlci1yaWdodC13aWR0aDogMDtcbiAgICBib3JkZXItbGVmdC1zdHlsZTogc29saWQ7XG4gICAgYm9yZGVyLWNvbG9yOiB0cmFuc3BhcmVudCB0cmFuc3BhcmVudCB0cmFuc3BhcmVudCAjMTE1M0FEO1xuICB9XG59XG5cbkBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDkwZW0pIHtcbiAgLmRyb3Bkb3duLm1lbnUueHhsYXJnZS1ob3Jpem9udGFsID4gbGkub3BlbnMtbGVmdCA+IC5pcy1kcm9wZG93bi1zdWJtZW51IHtcbiAgICB0b3A6IDEwMCU7XG4gICAgcmlnaHQ6IDA7XG4gICAgbGVmdDogYXV0bztcbiAgfVxuICAuZHJvcGRvd24ubWVudS54eGxhcmdlLWhvcml6b250YWwgPiBsaS5vcGVucy1yaWdodCA+IC5pcy1kcm9wZG93bi1zdWJtZW51IHtcbiAgICB0b3A6IDEwMCU7XG4gICAgcmlnaHQ6IGF1dG87XG4gICAgbGVmdDogMDtcbiAgfVxuICAuZHJvcGRvd24ubWVudS54eGxhcmdlLWhvcml6b250YWwgPiBsaS5pcy1kcm9wZG93bi1zdWJtZW51LXBhcmVudCA+IGEge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICBwYWRkaW5nLXJpZ2h0OiAxLjVyZW07XG4gIH1cbiAgLmRyb3Bkb3duLm1lbnUueHhsYXJnZS1ob3Jpem9udGFsID4gbGkuaXMtZHJvcGRvd24tc3VibWVudS1wYXJlbnQgPiBhOjphZnRlciB7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgd2lkdGg6IDA7XG4gICAgaGVpZ2h0OiAwO1xuICAgIGJvcmRlcjogaW5zZXQgNnB4O1xuICAgIGNvbnRlbnQ6ICcnO1xuICAgIGJvcmRlci1ib3R0b20td2lkdGg6IDA7XG4gICAgYm9yZGVyLXRvcC1zdHlsZTogc29saWQ7XG4gICAgYm9yZGVyLWNvbG9yOiAjMTE1M0FEIHRyYW5zcGFyZW50IHRyYW5zcGFyZW50O1xuICAgIHJpZ2h0OiA1cHg7XG4gICAgbWFyZ2luLXRvcDogLTNweDtcbiAgfVxuICAuZHJvcGRvd24ubWVudS54eGxhcmdlLXZlcnRpY2FsID4gbGkgLmlzLWRyb3Bkb3duLXN1Ym1lbnUge1xuICAgIHRvcDogMDtcbiAgfVxuICAuZHJvcGRvd24ubWVudS54eGxhcmdlLXZlcnRpY2FsID4gbGkub3BlbnMtbGVmdCA+IC5pcy1kcm9wZG93bi1zdWJtZW51IHtcbiAgICByaWdodDogMTAwJTtcbiAgICBsZWZ0OiBhdXRvO1xuICAgIHRvcDogMDtcbiAgfVxuICAuZHJvcGRvd24ubWVudS54eGxhcmdlLXZlcnRpY2FsID4gbGkub3BlbnMtcmlnaHQgPiAuaXMtZHJvcGRvd24tc3VibWVudSB7XG4gICAgcmlnaHQ6IGF1dG87XG4gICAgbGVmdDogMTAwJTtcbiAgfVxuICAuZHJvcGRvd24ubWVudS54eGxhcmdlLXZlcnRpY2FsID4gbGkgPiBhOjphZnRlciB7XG4gICAgcmlnaHQ6IDE0cHg7XG4gIH1cbiAgLmRyb3Bkb3duLm1lbnUueHhsYXJnZS12ZXJ0aWNhbCA+IGxpLm9wZW5zLWxlZnQgPiBhOjphZnRlciB7XG4gICAgcmlnaHQ6IGF1dG87XG4gICAgbGVmdDogNXB4O1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIHdpZHRoOiAwO1xuICAgIGhlaWdodDogMDtcbiAgICBib3JkZXI6IGluc2V0IDZweDtcbiAgICBjb250ZW50OiAnJztcbiAgICBib3JkZXItbGVmdC13aWR0aDogMDtcbiAgICBib3JkZXItcmlnaHQtc3R5bGU6IHNvbGlkO1xuICAgIGJvcmRlci1jb2xvcjogdHJhbnNwYXJlbnQgIzExNTNBRCB0cmFuc3BhcmVudCB0cmFuc3BhcmVudDtcbiAgfVxuICAuZHJvcGRvd24ubWVudS54eGxhcmdlLXZlcnRpY2FsID4gbGkub3BlbnMtcmlnaHQgPiBhOjphZnRlciB7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgd2lkdGg6IDA7XG4gICAgaGVpZ2h0OiAwO1xuICAgIGJvcmRlcjogaW5zZXQgNnB4O1xuICAgIGNvbnRlbnQ6ICcnO1xuICAgIGJvcmRlci1yaWdodC13aWR0aDogMDtcbiAgICBib3JkZXItbGVmdC1zdHlsZTogc29saWQ7XG4gICAgYm9yZGVyLWNvbG9yOiB0cmFuc3BhcmVudCB0cmFuc3BhcmVudCB0cmFuc3BhcmVudCAjMTE1M0FEO1xuICB9XG59XG5cbi5kcm9wZG93bi5tZW51LmFsaWduLXJpZ2h0IC5pcy1kcm9wZG93bi1zdWJtZW51LmZpcnN0LXN1YiB7XG4gIHRvcDogMTAwJTtcbiAgcmlnaHQ6IDA7XG4gIGxlZnQ6IGF1dG87XG59XG5cbi5pcy1kcm9wZG93bi1tZW51LnZlcnRpY2FsIHtcbiAgd2lkdGg6IDEwMHB4O1xufVxuXG4uaXMtZHJvcGRvd24tbWVudS52ZXJ0aWNhbC5hbGlnbi1yaWdodCB7XG4gIGZsb2F0OiByaWdodDtcbn1cblxuLmlzLWRyb3Bkb3duLXN1Ym1lbnUtcGFyZW50IHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xufVxuXG4uaXMtZHJvcGRvd24tc3VibWVudS1wYXJlbnQgYTo6YWZ0ZXIge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHRvcDogNTAlO1xuICByaWdodDogNXB4O1xuICBtYXJnaW4tdG9wOiAtNnB4O1xufVxuXG4uaXMtZHJvcGRvd24tc3VibWVudS1wYXJlbnQub3BlbnMtaW5uZXIgPiAuaXMtZHJvcGRvd24tc3VibWVudSB7XG4gIHRvcDogMTAwJTtcbiAgbGVmdDogYXV0bztcbn1cblxuLmlzLWRyb3Bkb3duLXN1Ym1lbnUtcGFyZW50Lm9wZW5zLWxlZnQgPiAuaXMtZHJvcGRvd24tc3VibWVudSB7XG4gIHJpZ2h0OiAxMDAlO1xuICBsZWZ0OiBhdXRvO1xufVxuXG4uaXMtZHJvcGRvd24tc3VibWVudS1wYXJlbnQub3BlbnMtcmlnaHQgPiAuaXMtZHJvcGRvd24tc3VibWVudSB7XG4gIHJpZ2h0OiBhdXRvO1xuICBsZWZ0OiAxMDAlO1xufVxuXG4uaXMtZHJvcGRvd24tc3VibWVudSB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgdG9wOiAwO1xuICBsZWZ0OiAxMDAlO1xuICB6LWluZGV4OiAxO1xuICBkaXNwbGF5OiBub25lO1xuICBtaW4td2lkdGg6IDIwMHB4O1xuICBib3JkZXI6IDFweCBzb2xpZCAjZGRkZGRkO1xuICBiYWNrZ3JvdW5kOiAjZmVmZWZlO1xufVxuXG4uZHJvcGRvd24gLmlzLWRyb3Bkb3duLXN1Ym1lbnUgYSB7XG4gIHBhZGRpbmc6IDAuN3JlbSAxcmVtO1xufVxuXG4uaXMtZHJvcGRvd24tc3VibWVudSAuaXMtZHJvcGRvd24tc3VibWVudS1wYXJlbnQgPiBhOjphZnRlciB7XG4gIHJpZ2h0OiAxNHB4O1xufVxuXG4uaXMtZHJvcGRvd24tc3VibWVudSAuaXMtZHJvcGRvd24tc3VibWVudS1wYXJlbnQub3BlbnMtbGVmdCA+IGE6OmFmdGVyIHtcbiAgcmlnaHQ6IGF1dG87XG4gIGxlZnQ6IDVweDtcbiAgZGlzcGxheTogYmxvY2s7XG4gIHdpZHRoOiAwO1xuICBoZWlnaHQ6IDA7XG4gIGJvcmRlcjogaW5zZXQgNnB4O1xuICBjb250ZW50OiAnJztcbiAgYm9yZGVyLWxlZnQtd2lkdGg6IDA7XG4gIGJvcmRlci1yaWdodC1zdHlsZTogc29saWQ7XG4gIGJvcmRlci1jb2xvcjogdHJhbnNwYXJlbnQgIzExNTNBRCB0cmFuc3BhcmVudCB0cmFuc3BhcmVudDtcbn1cblxuLmlzLWRyb3Bkb3duLXN1Ym1lbnUgLmlzLWRyb3Bkb3duLXN1Ym1lbnUtcGFyZW50Lm9wZW5zLXJpZ2h0ID4gYTo6YWZ0ZXIge1xuICBkaXNwbGF5OiBibG9jaztcbiAgd2lkdGg6IDA7XG4gIGhlaWdodDogMDtcbiAgYm9yZGVyOiBpbnNldCA2cHg7XG4gIGNvbnRlbnQ6ICcnO1xuICBib3JkZXItcmlnaHQtd2lkdGg6IDA7XG4gIGJvcmRlci1sZWZ0LXN0eWxlOiBzb2xpZDtcbiAgYm9yZGVyLWNvbG9yOiB0cmFuc3BhcmVudCB0cmFuc3BhcmVudCB0cmFuc3BhcmVudCAjMTE1M0FEO1xufVxuXG4uaXMtZHJvcGRvd24tc3VibWVudSAuaXMtZHJvcGRvd24tc3VibWVudSB7XG4gIG1hcmdpbi10b3A6IC0xcHg7XG59XG5cbi5pcy1kcm9wZG93bi1zdWJtZW51ID4gbGkge1xuICB3aWR0aDogMTAwJTtcbn1cblxuLmlzLWRyb3Bkb3duLXN1Ym1lbnUuanMtZHJvcGRvd24tYWN0aXZlIHtcbiAgZGlzcGxheTogYmxvY2s7XG59XG5cbi5yZXNwb25zaXZlLWVtYmVkLFxuLmZsZXgtdmlkZW8ge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIGhlaWdodDogMDtcbiAgbWFyZ2luLWJvdHRvbTogMS4xNDI4NnJlbTtcbiAgcGFkZGluZy1ib3R0b206IDc1JTtcbiAgb3ZlcmZsb3c6IGhpZGRlbjtcbn1cblxuLnJlc3BvbnNpdmUtZW1iZWQgaWZyYW1lLFxuLnJlc3BvbnNpdmUtZW1iZWQgb2JqZWN0LFxuLnJlc3BvbnNpdmUtZW1iZWQgZW1iZWQsXG4ucmVzcG9uc2l2ZS1lbWJlZCB2aWRlbyxcbi5mbGV4LXZpZGVvIGlmcmFtZSxcbi5mbGV4LXZpZGVvIG9iamVjdCxcbi5mbGV4LXZpZGVvIGVtYmVkLFxuLmZsZXgtdmlkZW8gdmlkZW8ge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHRvcDogMDtcbiAgbGVmdDogMDtcbiAgd2lkdGg6IDEwMCU7XG4gIGhlaWdodDogMTAwJTtcbn1cblxuLnJlc3BvbnNpdmUtZW1iZWQud2lkZXNjcmVlbixcbi5mbGV4LXZpZGVvLndpZGVzY3JlZW4ge1xuICBwYWRkaW5nLWJvdHRvbTogNTYuMjUlO1xufVxuXG4ubGFiZWwge1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIHBhZGRpbmc6IDAuMzMzMzNyZW0gMC41cmVtO1xuICBib3JkZXItcmFkaXVzOiAwLjE4cmVtO1xuICBmb250LXNpemU6IDAuOHJlbTtcbiAgbGluZS1oZWlnaHQ6IDE7XG4gIHdoaXRlLXNwYWNlOiBub3dyYXA7XG4gIGN1cnNvcjogZGVmYXVsdDtcbiAgYmFja2dyb3VuZDogIzExNTNBRDtcbiAgY29sb3I6ICNmZWZlZmU7XG59XG5cbi5sYWJlbC5wcmltYXJ5IHtcbiAgYmFja2dyb3VuZDogIzExNTNBRDtcbiAgY29sb3I6ICNmZWZlZmU7XG59XG5cbi5sYWJlbC5zZWNvbmRhcnkge1xuICBiYWNrZ3JvdW5kOiAjNzY3Njc2O1xuICBjb2xvcjogI2ZlZmVmZTtcbn1cblxuLmxhYmVsLnN1Y2Nlc3Mge1xuICBiYWNrZ3JvdW5kOiAjM2FkYjc2O1xuICBjb2xvcjogIzBhMGEwYTtcbn1cblxuLmxhYmVsLndhcm5pbmcge1xuICBiYWNrZ3JvdW5kOiAjZmZhZTAwO1xuICBjb2xvcjogIzBhMGEwYTtcbn1cblxuLmxhYmVsLmFsZXJ0IHtcbiAgYmFja2dyb3VuZDogI2NjNGIzNztcbiAgY29sb3I6ICNmZWZlZmU7XG59XG5cbi5tZWRpYS1vYmplY3Qge1xuICBkaXNwbGF5OiBibG9jaztcbiAgbWFyZ2luLWJvdHRvbTogMXJlbTtcbn1cblxuLm1lZGlhLW9iamVjdCBpbWcge1xuICBtYXgtd2lkdGg6IG5vbmU7XG59XG5cbkBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDQ3LjkzNzVlbSkge1xuICAubWVkaWEtb2JqZWN0LnN0YWNrLWZvci1zbWFsbCAubWVkaWEtb2JqZWN0LXNlY3Rpb24ge1xuICAgIHBhZGRpbmc6IDA7XG4gICAgcGFkZGluZy1ib3R0b206IDFyZW07XG4gICAgZGlzcGxheTogYmxvY2s7XG4gIH1cbiAgLm1lZGlhLW9iamVjdC5zdGFjay1mb3Itc21hbGwgLm1lZGlhLW9iamVjdC1zZWN0aW9uIGltZyB7XG4gICAgd2lkdGg6IDEwMCU7XG4gIH1cbn1cblxuLm1lZGlhLW9iamVjdC1zZWN0aW9uIHtcbiAgZGlzcGxheTogdGFibGUtY2VsbDtcbiAgdmVydGljYWwtYWxpZ246IHRvcDtcbn1cblxuLm1lZGlhLW9iamVjdC1zZWN0aW9uOmZpcnN0LWNoaWxkIHtcbiAgcGFkZGluZy1yaWdodDogMXJlbTtcbn1cblxuLm1lZGlhLW9iamVjdC1zZWN0aW9uOmxhc3QtY2hpbGQ6bm90KDpudGgtY2hpbGQoMikpIHtcbiAgcGFkZGluZy1sZWZ0OiAxcmVtO1xufVxuXG4ubWVkaWEtb2JqZWN0LXNlY3Rpb24gPiA6bGFzdC1jaGlsZCB7XG4gIG1hcmdpbi1ib3R0b206IDA7XG59XG5cbi5tZWRpYS1vYmplY3Qtc2VjdGlvbi5taWRkbGUge1xuICB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlO1xufVxuXG4ubWVkaWEtb2JqZWN0LXNlY3Rpb24uYm90dG9tIHtcbiAgdmVydGljYWwtYWxpZ246IGJvdHRvbTtcbn1cblxuLmlzLW9mZi1jYW52YXMtb3BlbiB7XG4gIG92ZXJmbG93OiBoaWRkZW47XG59XG5cbi5qcy1vZmYtY2FudmFzLW92ZXJsYXkge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHRvcDogMDtcbiAgbGVmdDogMDtcbiAgei1pbmRleDogMTE7XG4gIHdpZHRoOiAxMDAlO1xuICBoZWlnaHQ6IDEwMCU7XG4gIHRyYW5zaXRpb246IG9wYWNpdHkgMC41cyBlYXNlLCB2aXNpYmlsaXR5IDAuNXMgZWFzZTtcbiAgYmFja2dyb3VuZDogcmdiYSgyNTQsIDI1NCwgMjU0LCAwLjI1KTtcbiAgb3BhY2l0eTogMDtcbiAgdmlzaWJpbGl0eTogaGlkZGVuO1xuICBvdmVyZmxvdzogaGlkZGVuO1xufVxuXG4uanMtb2ZmLWNhbnZhcy1vdmVybGF5LmlzLXZpc2libGUge1xuICBvcGFjaXR5OiAxO1xuICB2aXNpYmlsaXR5OiB2aXNpYmxlO1xufVxuXG4uanMtb2ZmLWNhbnZhcy1vdmVybGF5LmlzLWNsb3NhYmxlIHtcbiAgY3Vyc29yOiBwb2ludGVyO1xufVxuXG4uanMtb2ZmLWNhbnZhcy1vdmVybGF5LmlzLW92ZXJsYXktYWJzb2x1dGUge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG59XG5cbi5qcy1vZmYtY2FudmFzLW92ZXJsYXkuaXMtb3ZlcmxheS1maXhlZCB7XG4gIHBvc2l0aW9uOiBmaXhlZDtcbn1cblxuLm9mZi1jYW52YXMtd3JhcHBlciB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgb3ZlcmZsb3c6IGhpZGRlbjtcbn1cblxuLm9mZi1jYW52YXMge1xuICBwb3NpdGlvbjogZml4ZWQ7XG4gIHotaW5kZXg6IDEyO1xuICB0cmFuc2l0aW9uOiB0cmFuc2Zvcm0gMC41cyBlYXNlO1xuICBiYWNrZmFjZS12aXNpYmlsaXR5OiBoaWRkZW47XG4gIGJhY2tncm91bmQ6ICNlOGU1ZTU7XG59XG5cbltkYXRhLXdoYXRpbnB1dD0nbW91c2UnXSAub2ZmLWNhbnZhcyB7XG4gIG91dGxpbmU6IDA7XG59XG5cbi5vZmYtY2FudmFzLmlzLXRyYW5zaXRpb24tcHVzaCB7XG4gIHotaW5kZXg6IDEyO1xufVxuXG4ub2ZmLWNhbnZhcy5pcy1jbG9zZWQge1xuICB2aXNpYmlsaXR5OiBoaWRkZW47XG59XG5cbi5vZmYtY2FudmFzLmlzLXRyYW5zaXRpb24tb3ZlcmxhcCB7XG4gIHotaW5kZXg6IDEzO1xufVxuXG4ub2ZmLWNhbnZhcy5pcy10cmFuc2l0aW9uLW92ZXJsYXAuaXMtb3BlbiB7XG4gIGJveC1zaGFkb3c6IDAgMCAxMHB4IHJnYmEoMTAsIDEwLCAxMCwgMC43KTtcbn1cblxuLm9mZi1jYW52YXMuaXMtb3BlbiB7XG4gIHRyYW5zZm9ybTogdHJhbnNsYXRlKDAsIDApO1xufVxuXG4ub2ZmLWNhbnZhcy1hYnNvbHV0ZSB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgei1pbmRleDogMTI7XG4gIHRyYW5zaXRpb246IHRyYW5zZm9ybSAwLjVzIGVhc2U7XG4gIGJhY2tmYWNlLXZpc2liaWxpdHk6IGhpZGRlbjtcbiAgYmFja2dyb3VuZDogI2U4ZTVlNTtcbn1cblxuW2RhdGEtd2hhdGlucHV0PSdtb3VzZSddIC5vZmYtY2FudmFzLWFic29sdXRlIHtcbiAgb3V0bGluZTogMDtcbn1cblxuLm9mZi1jYW52YXMtYWJzb2x1dGUuaXMtdHJhbnNpdGlvbi1wdXNoIHtcbiAgei1pbmRleDogMTI7XG59XG5cbi5vZmYtY2FudmFzLWFic29sdXRlLmlzLWNsb3NlZCB7XG4gIHZpc2liaWxpdHk6IGhpZGRlbjtcbn1cblxuLm9mZi1jYW52YXMtYWJzb2x1dGUuaXMtdHJhbnNpdGlvbi1vdmVybGFwIHtcbiAgei1pbmRleDogMTM7XG59XG5cbi5vZmYtY2FudmFzLWFic29sdXRlLmlzLXRyYW5zaXRpb24tb3ZlcmxhcC5pcy1vcGVuIHtcbiAgYm94LXNoYWRvdzogMCAwIDEwcHggcmdiYSgxMCwgMTAsIDEwLCAwLjcpO1xufVxuXG4ub2ZmLWNhbnZhcy1hYnNvbHV0ZS5pcy1vcGVuIHtcbiAgdHJhbnNmb3JtOiB0cmFuc2xhdGUoMCwgMCk7XG59XG5cbi5wb3NpdGlvbi1sZWZ0IHtcbiAgdG9wOiAwO1xuICBsZWZ0OiAwO1xuICB3aWR0aDogMjUwcHg7XG4gIGhlaWdodDogMTAwJTtcbiAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKC0yNTBweCk7XG4gIG92ZXJmbG93LXk6IGF1dG87XG59XG5cbi5vZmYtY2FudmFzLWNvbnRlbnQgLm9mZi1jYW52YXMucG9zaXRpb24tbGVmdCB7XG4gIHRyYW5zZm9ybTogdHJhbnNsYXRlWCgtMjUwcHgpO1xufVxuXG4ub2ZmLWNhbnZhcy1jb250ZW50IC5vZmYtY2FudmFzLnBvc2l0aW9uLWxlZnQuaXMtdHJhbnNpdGlvbi1vdmVybGFwLmlzLW9wZW4ge1xuICB0cmFuc2Zvcm06IHRyYW5zbGF0ZSgwLCAwKTtcbn1cblxuLm9mZi1jYW52YXMtY29udGVudC5pcy1vcGVuLWxlZnQuaGFzLXRyYW5zaXRpb24tcHVzaCB7XG4gIHRyYW5zZm9ybTogdHJhbnNsYXRlWCgyNTBweCk7XG59XG5cbi5wb3NpdGlvbi1sZWZ0LmlzLXRyYW5zaXRpb24tcHVzaCB7XG4gIGJveC1zaGFkb3c6IGluc2V0IC0xM3B4IDAgMjBweCAtMTNweCByZ2JhKDEwLCAxMCwgMTAsIDAuMjUpO1xufVxuXG4ucG9zaXRpb24tcmlnaHQge1xuICB0b3A6IDA7XG4gIHJpZ2h0OiAwO1xuICB3aWR0aDogMjUwcHg7XG4gIGhlaWdodDogMTAwJTtcbiAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKDI1MHB4KTtcbiAgb3ZlcmZsb3cteTogYXV0bztcbn1cblxuLm9mZi1jYW52YXMtY29udGVudCAub2ZmLWNhbnZhcy5wb3NpdGlvbi1yaWdodCB7XG4gIHRyYW5zZm9ybTogdHJhbnNsYXRlWCgyNTBweCk7XG59XG5cbi5vZmYtY2FudmFzLWNvbnRlbnQgLm9mZi1jYW52YXMucG9zaXRpb24tcmlnaHQuaXMtdHJhbnNpdGlvbi1vdmVybGFwLmlzLW9wZW4ge1xuICB0cmFuc2Zvcm06IHRyYW5zbGF0ZSgwLCAwKTtcbn1cblxuLm9mZi1jYW52YXMtY29udGVudC5pcy1vcGVuLXJpZ2h0Lmhhcy10cmFuc2l0aW9uLXB1c2gge1xuICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoLTI1MHB4KTtcbn1cblxuLnBvc2l0aW9uLXJpZ2h0LmlzLXRyYW5zaXRpb24tcHVzaCB7XG4gIGJveC1zaGFkb3c6IGluc2V0IDEzcHggMCAyMHB4IC0xM3B4IHJnYmEoMTAsIDEwLCAxMCwgMC4yNSk7XG59XG5cbi5wb3NpdGlvbi10b3Age1xuICB0b3A6IDA7XG4gIGxlZnQ6IDA7XG4gIHdpZHRoOiAxMDAlO1xuICBoZWlnaHQ6IDI1MHB4O1xuICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTI1MHB4KTtcbiAgb3ZlcmZsb3cteDogYXV0bztcbn1cblxuLm9mZi1jYW52YXMtY29udGVudCAub2ZmLWNhbnZhcy5wb3NpdGlvbi10b3Age1xuICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTI1MHB4KTtcbn1cblxuLm9mZi1jYW52YXMtY29udGVudCAub2ZmLWNhbnZhcy5wb3NpdGlvbi10b3AuaXMtdHJhbnNpdGlvbi1vdmVybGFwLmlzLW9wZW4ge1xuICB0cmFuc2Zvcm06IHRyYW5zbGF0ZSgwLCAwKTtcbn1cblxuLm9mZi1jYW52YXMtY29udGVudC5pcy1vcGVuLXRvcC5oYXMtdHJhbnNpdGlvbi1wdXNoIHtcbiAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKDI1MHB4KTtcbn1cblxuLnBvc2l0aW9uLXRvcC5pcy10cmFuc2l0aW9uLXB1c2gge1xuICBib3gtc2hhZG93OiBpbnNldCAwIC0xM3B4IDIwcHggLTEzcHggcmdiYSgxMCwgMTAsIDEwLCAwLjI1KTtcbn1cblxuLnBvc2l0aW9uLWJvdHRvbSB7XG4gIGJvdHRvbTogMDtcbiAgbGVmdDogMDtcbiAgd2lkdGg6IDEwMCU7XG4gIGhlaWdodDogMjUwcHg7XG4gIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgyNTBweCk7XG4gIG92ZXJmbG93LXg6IGF1dG87XG59XG5cbi5vZmYtY2FudmFzLWNvbnRlbnQgLm9mZi1jYW52YXMucG9zaXRpb24tYm90dG9tIHtcbiAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKDI1MHB4KTtcbn1cblxuLm9mZi1jYW52YXMtY29udGVudCAub2ZmLWNhbnZhcy5wb3NpdGlvbi1ib3R0b20uaXMtdHJhbnNpdGlvbi1vdmVybGFwLmlzLW9wZW4ge1xuICB0cmFuc2Zvcm06IHRyYW5zbGF0ZSgwLCAwKTtcbn1cblxuLm9mZi1jYW52YXMtY29udGVudC5pcy1vcGVuLWJvdHRvbS5oYXMtdHJhbnNpdGlvbi1wdXNoIHtcbiAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC0yNTBweCk7XG59XG5cbi5wb3NpdGlvbi1ib3R0b20uaXMtdHJhbnNpdGlvbi1wdXNoIHtcbiAgYm94LXNoYWRvdzogaW5zZXQgMCAxM3B4IDIwcHggLTEzcHggcmdiYSgxMCwgMTAsIDEwLCAwLjI1KTtcbn1cblxuLm9mZi1jYW52YXMtY29udGVudCB7XG4gIHRyYW5zZm9ybTogbm9uZTtcbiAgdHJhbnNpdGlvbjogdHJhbnNmb3JtIDAuNXMgZWFzZTtcbiAgYmFja2ZhY2UtdmlzaWJpbGl0eTogaGlkZGVuO1xufVxuXG4ub2ZmLWNhbnZhcy1jb250ZW50Lmhhcy10cmFuc2l0aW9uLXB1c2gge1xuICB0cmFuc2Zvcm06IHRyYW5zbGF0ZSgwLCAwKTtcbn1cblxuLm9mZi1jYW52YXMtY29udGVudCAub2ZmLWNhbnZhcy5pcy1vcGVuIHtcbiAgdHJhbnNmb3JtOiB0cmFuc2xhdGUoMCwgMCk7XG59XG5cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0OGVtKSB7XG4gIC5wb3NpdGlvbi1sZWZ0LnJldmVhbC1mb3ItbWVkaXVtIHtcbiAgICB0cmFuc2Zvcm06IG5vbmU7XG4gICAgei1pbmRleDogMTI7XG4gICAgdHJhbnNpdGlvbjogbm9uZTtcbiAgICB2aXNpYmlsaXR5OiB2aXNpYmxlO1xuICB9XG4gIC5wb3NpdGlvbi1sZWZ0LnJldmVhbC1mb3ItbWVkaXVtIC5jbG9zZS1idXR0b24ge1xuICAgIGRpc3BsYXk6IG5vbmU7XG4gIH1cbiAgLm9mZi1jYW52YXMtY29udGVudCAucG9zaXRpb24tbGVmdC5yZXZlYWwtZm9yLW1lZGl1bSB7XG4gICAgdHJhbnNmb3JtOiBub25lO1xuICB9XG4gIC5vZmYtY2FudmFzLWNvbnRlbnQuaGFzLXJldmVhbC1sZWZ0IHtcbiAgICBtYXJnaW4tbGVmdDogMjUwcHg7XG4gIH1cbiAgLnBvc2l0aW9uLWxlZnQucmV2ZWFsLWZvci1tZWRpdW0gfiAub2ZmLWNhbnZhcy1jb250ZW50IHtcbiAgICBtYXJnaW4tbGVmdDogMjUwcHg7XG4gIH1cbiAgLnBvc2l0aW9uLXJpZ2h0LnJldmVhbC1mb3ItbWVkaXVtIHtcbiAgICB0cmFuc2Zvcm06IG5vbmU7XG4gICAgei1pbmRleDogMTI7XG4gICAgdHJhbnNpdGlvbjogbm9uZTtcbiAgICB2aXNpYmlsaXR5OiB2aXNpYmxlO1xuICB9XG4gIC5wb3NpdGlvbi1yaWdodC5yZXZlYWwtZm9yLW1lZGl1bSAuY2xvc2UtYnV0dG9uIHtcbiAgICBkaXNwbGF5OiBub25lO1xuICB9XG4gIC5vZmYtY2FudmFzLWNvbnRlbnQgLnBvc2l0aW9uLXJpZ2h0LnJldmVhbC1mb3ItbWVkaXVtIHtcbiAgICB0cmFuc2Zvcm06IG5vbmU7XG4gIH1cbiAgLm9mZi1jYW52YXMtY29udGVudC5oYXMtcmV2ZWFsLXJpZ2h0IHtcbiAgICBtYXJnaW4tcmlnaHQ6IDI1MHB4O1xuICB9XG4gIC5wb3NpdGlvbi1yaWdodC5yZXZlYWwtZm9yLW1lZGl1bSB+IC5vZmYtY2FudmFzLWNvbnRlbnQge1xuICAgIG1hcmdpbi1yaWdodDogMjUwcHg7XG4gIH1cbiAgLnBvc2l0aW9uLXRvcC5yZXZlYWwtZm9yLW1lZGl1bSB7XG4gICAgdHJhbnNmb3JtOiBub25lO1xuICAgIHotaW5kZXg6IDEyO1xuICAgIHRyYW5zaXRpb246IG5vbmU7XG4gICAgdmlzaWJpbGl0eTogdmlzaWJsZTtcbiAgfVxuICAucG9zaXRpb24tdG9wLnJldmVhbC1mb3ItbWVkaXVtIC5jbG9zZS1idXR0b24ge1xuICAgIGRpc3BsYXk6IG5vbmU7XG4gIH1cbiAgLm9mZi1jYW52YXMtY29udGVudCAucG9zaXRpb24tdG9wLnJldmVhbC1mb3ItbWVkaXVtIHtcbiAgICB0cmFuc2Zvcm06IG5vbmU7XG4gIH1cbiAgLm9mZi1jYW52YXMtY29udGVudC5oYXMtcmV2ZWFsLXRvcCB7XG4gICAgbWFyZ2luLXRvcDogMjUwcHg7XG4gIH1cbiAgLnBvc2l0aW9uLXRvcC5yZXZlYWwtZm9yLW1lZGl1bSB+IC5vZmYtY2FudmFzLWNvbnRlbnQge1xuICAgIG1hcmdpbi10b3A6IDI1MHB4O1xuICB9XG4gIC5wb3NpdGlvbi1ib3R0b20ucmV2ZWFsLWZvci1tZWRpdW0ge1xuICAgIHRyYW5zZm9ybTogbm9uZTtcbiAgICB6LWluZGV4OiAxMjtcbiAgICB0cmFuc2l0aW9uOiBub25lO1xuICAgIHZpc2liaWxpdHk6IHZpc2libGU7XG4gIH1cbiAgLnBvc2l0aW9uLWJvdHRvbS5yZXZlYWwtZm9yLW1lZGl1bSAuY2xvc2UtYnV0dG9uIHtcbiAgICBkaXNwbGF5OiBub25lO1xuICB9XG4gIC5vZmYtY2FudmFzLWNvbnRlbnQgLnBvc2l0aW9uLWJvdHRvbS5yZXZlYWwtZm9yLW1lZGl1bSB7XG4gICAgdHJhbnNmb3JtOiBub25lO1xuICB9XG4gIC5vZmYtY2FudmFzLWNvbnRlbnQuaGFzLXJldmVhbC1ib3R0b20ge1xuICAgIG1hcmdpbi1ib3R0b206IDI1MHB4O1xuICB9XG4gIC5wb3NpdGlvbi1ib3R0b20ucmV2ZWFsLWZvci1tZWRpdW0gfiAub2ZmLWNhbnZhcy1jb250ZW50IHtcbiAgICBtYXJnaW4tYm90dG9tOiAyNTBweDtcbiAgfVxufVxuXG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAucG9zaXRpb24tbGVmdC5yZXZlYWwtZm9yLWxhcmdlIHtcbiAgICB0cmFuc2Zvcm06IG5vbmU7XG4gICAgei1pbmRleDogMTI7XG4gICAgdHJhbnNpdGlvbjogbm9uZTtcbiAgICB2aXNpYmlsaXR5OiB2aXNpYmxlO1xuICB9XG4gIC5wb3NpdGlvbi1sZWZ0LnJldmVhbC1mb3ItbGFyZ2UgLmNsb3NlLWJ1dHRvbiB7XG4gICAgZGlzcGxheTogbm9uZTtcbiAgfVxuICAub2ZmLWNhbnZhcy1jb250ZW50IC5wb3NpdGlvbi1sZWZ0LnJldmVhbC1mb3ItbGFyZ2Uge1xuICAgIHRyYW5zZm9ybTogbm9uZTtcbiAgfVxuICAub2ZmLWNhbnZhcy1jb250ZW50Lmhhcy1yZXZlYWwtbGVmdCB7XG4gICAgbWFyZ2luLWxlZnQ6IDI1MHB4O1xuICB9XG4gIC5wb3NpdGlvbi1sZWZ0LnJldmVhbC1mb3ItbGFyZ2UgfiAub2ZmLWNhbnZhcy1jb250ZW50IHtcbiAgICBtYXJnaW4tbGVmdDogMjUwcHg7XG4gIH1cbiAgLnBvc2l0aW9uLXJpZ2h0LnJldmVhbC1mb3ItbGFyZ2Uge1xuICAgIHRyYW5zZm9ybTogbm9uZTtcbiAgICB6LWluZGV4OiAxMjtcbiAgICB0cmFuc2l0aW9uOiBub25lO1xuICAgIHZpc2liaWxpdHk6IHZpc2libGU7XG4gIH1cbiAgLnBvc2l0aW9uLXJpZ2h0LnJldmVhbC1mb3ItbGFyZ2UgLmNsb3NlLWJ1dHRvbiB7XG4gICAgZGlzcGxheTogbm9uZTtcbiAgfVxuICAub2ZmLWNhbnZhcy1jb250ZW50IC5wb3NpdGlvbi1yaWdodC5yZXZlYWwtZm9yLWxhcmdlIHtcbiAgICB0cmFuc2Zvcm06IG5vbmU7XG4gIH1cbiAgLm9mZi1jYW52YXMtY29udGVudC5oYXMtcmV2ZWFsLXJpZ2h0IHtcbiAgICBtYXJnaW4tcmlnaHQ6IDI1MHB4O1xuICB9XG4gIC5wb3NpdGlvbi1yaWdodC5yZXZlYWwtZm9yLWxhcmdlIH4gLm9mZi1jYW52YXMtY29udGVudCB7XG4gICAgbWFyZ2luLXJpZ2h0OiAyNTBweDtcbiAgfVxuICAucG9zaXRpb24tdG9wLnJldmVhbC1mb3ItbGFyZ2Uge1xuICAgIHRyYW5zZm9ybTogbm9uZTtcbiAgICB6LWluZGV4OiAxMjtcbiAgICB0cmFuc2l0aW9uOiBub25lO1xuICAgIHZpc2liaWxpdHk6IHZpc2libGU7XG4gIH1cbiAgLnBvc2l0aW9uLXRvcC5yZXZlYWwtZm9yLWxhcmdlIC5jbG9zZS1idXR0b24ge1xuICAgIGRpc3BsYXk6IG5vbmU7XG4gIH1cbiAgLm9mZi1jYW52YXMtY29udGVudCAucG9zaXRpb24tdG9wLnJldmVhbC1mb3ItbGFyZ2Uge1xuICAgIHRyYW5zZm9ybTogbm9uZTtcbiAgfVxuICAub2ZmLWNhbnZhcy1jb250ZW50Lmhhcy1yZXZlYWwtdG9wIHtcbiAgICBtYXJnaW4tdG9wOiAyNTBweDtcbiAgfVxuICAucG9zaXRpb24tdG9wLnJldmVhbC1mb3ItbGFyZ2UgfiAub2ZmLWNhbnZhcy1jb250ZW50IHtcbiAgICBtYXJnaW4tdG9wOiAyNTBweDtcbiAgfVxuICAucG9zaXRpb24tYm90dG9tLnJldmVhbC1mb3ItbGFyZ2Uge1xuICAgIHRyYW5zZm9ybTogbm9uZTtcbiAgICB6LWluZGV4OiAxMjtcbiAgICB0cmFuc2l0aW9uOiBub25lO1xuICAgIHZpc2liaWxpdHk6IHZpc2libGU7XG4gIH1cbiAgLnBvc2l0aW9uLWJvdHRvbS5yZXZlYWwtZm9yLWxhcmdlIC5jbG9zZS1idXR0b24ge1xuICAgIGRpc3BsYXk6IG5vbmU7XG4gIH1cbiAgLm9mZi1jYW52YXMtY29udGVudCAucG9zaXRpb24tYm90dG9tLnJldmVhbC1mb3ItbGFyZ2Uge1xuICAgIHRyYW5zZm9ybTogbm9uZTtcbiAgfVxuICAub2ZmLWNhbnZhcy1jb250ZW50Lmhhcy1yZXZlYWwtYm90dG9tIHtcbiAgICBtYXJnaW4tYm90dG9tOiAyNTBweDtcbiAgfVxuICAucG9zaXRpb24tYm90dG9tLnJldmVhbC1mb3ItbGFyZ2UgfiAub2ZmLWNhbnZhcy1jb250ZW50IHtcbiAgICBtYXJnaW4tYm90dG9tOiAyNTBweDtcbiAgfVxufVxuXG5AbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA3NWVtKSB7XG4gIC5wb3NpdGlvbi1sZWZ0LnJldmVhbC1mb3IteGxhcmdlIHtcbiAgICB0cmFuc2Zvcm06IG5vbmU7XG4gICAgei1pbmRleDogMTI7XG4gICAgdHJhbnNpdGlvbjogbm9uZTtcbiAgICB2aXNpYmlsaXR5OiB2aXNpYmxlO1xuICB9XG4gIC5wb3NpdGlvbi1sZWZ0LnJldmVhbC1mb3IteGxhcmdlIC5jbG9zZS1idXR0b24ge1xuICAgIGRpc3BsYXk6IG5vbmU7XG4gIH1cbiAgLm9mZi1jYW52YXMtY29udGVudCAucG9zaXRpb24tbGVmdC5yZXZlYWwtZm9yLXhsYXJnZSB7XG4gICAgdHJhbnNmb3JtOiBub25lO1xuICB9XG4gIC5vZmYtY2FudmFzLWNvbnRlbnQuaGFzLXJldmVhbC1sZWZ0IHtcbiAgICBtYXJnaW4tbGVmdDogMjUwcHg7XG4gIH1cbiAgLnBvc2l0aW9uLWxlZnQucmV2ZWFsLWZvci14bGFyZ2UgfiAub2ZmLWNhbnZhcy1jb250ZW50IHtcbiAgICBtYXJnaW4tbGVmdDogMjUwcHg7XG4gIH1cbiAgLnBvc2l0aW9uLXJpZ2h0LnJldmVhbC1mb3IteGxhcmdlIHtcbiAgICB0cmFuc2Zvcm06IG5vbmU7XG4gICAgei1pbmRleDogMTI7XG4gICAgdHJhbnNpdGlvbjogbm9uZTtcbiAgICB2aXNpYmlsaXR5OiB2aXNpYmxlO1xuICB9XG4gIC5wb3NpdGlvbi1yaWdodC5yZXZlYWwtZm9yLXhsYXJnZSAuY2xvc2UtYnV0dG9uIHtcbiAgICBkaXNwbGF5OiBub25lO1xuICB9XG4gIC5vZmYtY2FudmFzLWNvbnRlbnQgLnBvc2l0aW9uLXJpZ2h0LnJldmVhbC1mb3IteGxhcmdlIHtcbiAgICB0cmFuc2Zvcm06IG5vbmU7XG4gIH1cbiAgLm9mZi1jYW52YXMtY29udGVudC5oYXMtcmV2ZWFsLXJpZ2h0IHtcbiAgICBtYXJnaW4tcmlnaHQ6IDI1MHB4O1xuICB9XG4gIC5wb3NpdGlvbi1yaWdodC5yZXZlYWwtZm9yLXhsYXJnZSB+IC5vZmYtY2FudmFzLWNvbnRlbnQge1xuICAgIG1hcmdpbi1yaWdodDogMjUwcHg7XG4gIH1cbiAgLnBvc2l0aW9uLXRvcC5yZXZlYWwtZm9yLXhsYXJnZSB7XG4gICAgdHJhbnNmb3JtOiBub25lO1xuICAgIHotaW5kZXg6IDEyO1xuICAgIHRyYW5zaXRpb246IG5vbmU7XG4gICAgdmlzaWJpbGl0eTogdmlzaWJsZTtcbiAgfVxuICAucG9zaXRpb24tdG9wLnJldmVhbC1mb3IteGxhcmdlIC5jbG9zZS1idXR0b24ge1xuICAgIGRpc3BsYXk6IG5vbmU7XG4gIH1cbiAgLm9mZi1jYW52YXMtY29udGVudCAucG9zaXRpb24tdG9wLnJldmVhbC1mb3IteGxhcmdlIHtcbiAgICB0cmFuc2Zvcm06IG5vbmU7XG4gIH1cbiAgLm9mZi1jYW52YXMtY29udGVudC5oYXMtcmV2ZWFsLXRvcCB7XG4gICAgbWFyZ2luLXRvcDogMjUwcHg7XG4gIH1cbiAgLnBvc2l0aW9uLXRvcC5yZXZlYWwtZm9yLXhsYXJnZSB+IC5vZmYtY2FudmFzLWNvbnRlbnQge1xuICAgIG1hcmdpbi10b3A6IDI1MHB4O1xuICB9XG4gIC5wb3NpdGlvbi1ib3R0b20ucmV2ZWFsLWZvci14bGFyZ2Uge1xuICAgIHRyYW5zZm9ybTogbm9uZTtcbiAgICB6LWluZGV4OiAxMjtcbiAgICB0cmFuc2l0aW9uOiBub25lO1xuICAgIHZpc2liaWxpdHk6IHZpc2libGU7XG4gIH1cbiAgLnBvc2l0aW9uLWJvdHRvbS5yZXZlYWwtZm9yLXhsYXJnZSAuY2xvc2UtYnV0dG9uIHtcbiAgICBkaXNwbGF5OiBub25lO1xuICB9XG4gIC5vZmYtY2FudmFzLWNvbnRlbnQgLnBvc2l0aW9uLWJvdHRvbS5yZXZlYWwtZm9yLXhsYXJnZSB7XG4gICAgdHJhbnNmb3JtOiBub25lO1xuICB9XG4gIC5vZmYtY2FudmFzLWNvbnRlbnQuaGFzLXJldmVhbC1ib3R0b20ge1xuICAgIG1hcmdpbi1ib3R0b206IDI1MHB4O1xuICB9XG4gIC5wb3NpdGlvbi1ib3R0b20ucmV2ZWFsLWZvci14bGFyZ2UgfiAub2ZmLWNhbnZhcy1jb250ZW50IHtcbiAgICBtYXJnaW4tYm90dG9tOiAyNTBweDtcbiAgfVxufVxuXG5AbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA5MGVtKSB7XG4gIC5wb3NpdGlvbi1sZWZ0LnJldmVhbC1mb3IteHhsYXJnZSB7XG4gICAgdHJhbnNmb3JtOiBub25lO1xuICAgIHotaW5kZXg6IDEyO1xuICAgIHRyYW5zaXRpb246IG5vbmU7XG4gICAgdmlzaWJpbGl0eTogdmlzaWJsZTtcbiAgfVxuICAucG9zaXRpb24tbGVmdC5yZXZlYWwtZm9yLXh4bGFyZ2UgLmNsb3NlLWJ1dHRvbiB7XG4gICAgZGlzcGxheTogbm9uZTtcbiAgfVxuICAub2ZmLWNhbnZhcy1jb250ZW50IC5wb3NpdGlvbi1sZWZ0LnJldmVhbC1mb3IteHhsYXJnZSB7XG4gICAgdHJhbnNmb3JtOiBub25lO1xuICB9XG4gIC5vZmYtY2FudmFzLWNvbnRlbnQuaGFzLXJldmVhbC1sZWZ0IHtcbiAgICBtYXJnaW4tbGVmdDogMjUwcHg7XG4gIH1cbiAgLnBvc2l0aW9uLWxlZnQucmV2ZWFsLWZvci14eGxhcmdlIH4gLm9mZi1jYW52YXMtY29udGVudCB7XG4gICAgbWFyZ2luLWxlZnQ6IDI1MHB4O1xuICB9XG4gIC5wb3NpdGlvbi1yaWdodC5yZXZlYWwtZm9yLXh4bGFyZ2Uge1xuICAgIHRyYW5zZm9ybTogbm9uZTtcbiAgICB6LWluZGV4OiAxMjtcbiAgICB0cmFuc2l0aW9uOiBub25lO1xuICAgIHZpc2liaWxpdHk6IHZpc2libGU7XG4gIH1cbiAgLnBvc2l0aW9uLXJpZ2h0LnJldmVhbC1mb3IteHhsYXJnZSAuY2xvc2UtYnV0dG9uIHtcbiAgICBkaXNwbGF5OiBub25lO1xuICB9XG4gIC5vZmYtY2FudmFzLWNvbnRlbnQgLnBvc2l0aW9uLXJpZ2h0LnJldmVhbC1mb3IteHhsYXJnZSB7XG4gICAgdHJhbnNmb3JtOiBub25lO1xuICB9XG4gIC5vZmYtY2FudmFzLWNvbnRlbnQuaGFzLXJldmVhbC1yaWdodCB7XG4gICAgbWFyZ2luLXJpZ2h0OiAyNTBweDtcbiAgfVxuICAucG9zaXRpb24tcmlnaHQucmV2ZWFsLWZvci14eGxhcmdlIH4gLm9mZi1jYW52YXMtY29udGVudCB7XG4gICAgbWFyZ2luLXJpZ2h0OiAyNTBweDtcbiAgfVxuICAucG9zaXRpb24tdG9wLnJldmVhbC1mb3IteHhsYXJnZSB7XG4gICAgdHJhbnNmb3JtOiBub25lO1xuICAgIHotaW5kZXg6IDEyO1xuICAgIHRyYW5zaXRpb246IG5vbmU7XG4gICAgdmlzaWJpbGl0eTogdmlzaWJsZTtcbiAgfVxuICAucG9zaXRpb24tdG9wLnJldmVhbC1mb3IteHhsYXJnZSAuY2xvc2UtYnV0dG9uIHtcbiAgICBkaXNwbGF5OiBub25lO1xuICB9XG4gIC5vZmYtY2FudmFzLWNvbnRlbnQgLnBvc2l0aW9uLXRvcC5yZXZlYWwtZm9yLXh4bGFyZ2Uge1xuICAgIHRyYW5zZm9ybTogbm9uZTtcbiAgfVxuICAub2ZmLWNhbnZhcy1jb250ZW50Lmhhcy1yZXZlYWwtdG9wIHtcbiAgICBtYXJnaW4tdG9wOiAyNTBweDtcbiAgfVxuICAucG9zaXRpb24tdG9wLnJldmVhbC1mb3IteHhsYXJnZSB+IC5vZmYtY2FudmFzLWNvbnRlbnQge1xuICAgIG1hcmdpbi10b3A6IDI1MHB4O1xuICB9XG4gIC5wb3NpdGlvbi1ib3R0b20ucmV2ZWFsLWZvci14eGxhcmdlIHtcbiAgICB0cmFuc2Zvcm06IG5vbmU7XG4gICAgei1pbmRleDogMTI7XG4gICAgdHJhbnNpdGlvbjogbm9uZTtcbiAgICB2aXNpYmlsaXR5OiB2aXNpYmxlO1xuICB9XG4gIC5wb3NpdGlvbi1ib3R0b20ucmV2ZWFsLWZvci14eGxhcmdlIC5jbG9zZS1idXR0b24ge1xuICAgIGRpc3BsYXk6IG5vbmU7XG4gIH1cbiAgLm9mZi1jYW52YXMtY29udGVudCAucG9zaXRpb24tYm90dG9tLnJldmVhbC1mb3IteHhsYXJnZSB7XG4gICAgdHJhbnNmb3JtOiBub25lO1xuICB9XG4gIC5vZmYtY2FudmFzLWNvbnRlbnQuaGFzLXJldmVhbC1ib3R0b20ge1xuICAgIG1hcmdpbi1ib3R0b206IDI1MHB4O1xuICB9XG4gIC5wb3NpdGlvbi1ib3R0b20ucmV2ZWFsLWZvci14eGxhcmdlIH4gLm9mZi1jYW52YXMtY29udGVudCB7XG4gICAgbWFyZ2luLWJvdHRvbTogMjUwcHg7XG4gIH1cbn1cblxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQ4ZW0pIHtcbiAgLm9mZi1jYW52YXMuaW4tY2FudmFzLWZvci1tZWRpdW0ge1xuICAgIHZpc2liaWxpdHk6IHZpc2libGU7XG4gICAgaGVpZ2h0OiBhdXRvO1xuICAgIHBvc2l0aW9uOiBzdGF0aWM7XG4gICAgYmFja2dyb3VuZDogaW5oZXJpdDtcbiAgICB3aWR0aDogaW5oZXJpdDtcbiAgICBvdmVyZmxvdzogaW5oZXJpdDtcbiAgICB0cmFuc2l0aW9uOiBpbmhlcml0O1xuICB9XG4gIC5vZmYtY2FudmFzLmluLWNhbnZhcy1mb3ItbWVkaXVtLnBvc2l0aW9uLWxlZnQsIC5vZmYtY2FudmFzLmluLWNhbnZhcy1mb3ItbWVkaXVtLnBvc2l0aW9uLXJpZ2h0LCAub2ZmLWNhbnZhcy5pbi1jYW52YXMtZm9yLW1lZGl1bS5wb3NpdGlvbi10b3AsIC5vZmYtY2FudmFzLmluLWNhbnZhcy1mb3ItbWVkaXVtLnBvc2l0aW9uLWJvdHRvbSB7XG4gICAgYm94LXNoYWRvdzogbm9uZTtcbiAgICB0cmFuc2Zvcm06IG5vbmU7XG4gIH1cbiAgLm9mZi1jYW52YXMuaW4tY2FudmFzLWZvci1tZWRpdW0gLmNsb3NlLWJ1dHRvbiB7XG4gICAgZGlzcGxheTogbm9uZTtcbiAgfVxufVxuXG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAub2ZmLWNhbnZhcy5pbi1jYW52YXMtZm9yLWxhcmdlIHtcbiAgICB2aXNpYmlsaXR5OiB2aXNpYmxlO1xuICAgIGhlaWdodDogYXV0bztcbiAgICBwb3NpdGlvbjogc3RhdGljO1xuICAgIGJhY2tncm91bmQ6IGluaGVyaXQ7XG4gICAgd2lkdGg6IGluaGVyaXQ7XG4gICAgb3ZlcmZsb3c6IGluaGVyaXQ7XG4gICAgdHJhbnNpdGlvbjogaW5oZXJpdDtcbiAgfVxuICAub2ZmLWNhbnZhcy5pbi1jYW52YXMtZm9yLWxhcmdlLnBvc2l0aW9uLWxlZnQsIC5vZmYtY2FudmFzLmluLWNhbnZhcy1mb3ItbGFyZ2UucG9zaXRpb24tcmlnaHQsIC5vZmYtY2FudmFzLmluLWNhbnZhcy1mb3ItbGFyZ2UucG9zaXRpb24tdG9wLCAub2ZmLWNhbnZhcy5pbi1jYW52YXMtZm9yLWxhcmdlLnBvc2l0aW9uLWJvdHRvbSB7XG4gICAgYm94LXNoYWRvdzogbm9uZTtcbiAgICB0cmFuc2Zvcm06IG5vbmU7XG4gIH1cbiAgLm9mZi1jYW52YXMuaW4tY2FudmFzLWZvci1sYXJnZSAuY2xvc2UtYnV0dG9uIHtcbiAgICBkaXNwbGF5OiBub25lO1xuICB9XG59XG5cbkBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDc1ZW0pIHtcbiAgLm9mZi1jYW52YXMuaW4tY2FudmFzLWZvci14bGFyZ2Uge1xuICAgIHZpc2liaWxpdHk6IHZpc2libGU7XG4gICAgaGVpZ2h0OiBhdXRvO1xuICAgIHBvc2l0aW9uOiBzdGF0aWM7XG4gICAgYmFja2dyb3VuZDogaW5oZXJpdDtcbiAgICB3aWR0aDogaW5oZXJpdDtcbiAgICBvdmVyZmxvdzogaW5oZXJpdDtcbiAgICB0cmFuc2l0aW9uOiBpbmhlcml0O1xuICB9XG4gIC5vZmYtY2FudmFzLmluLWNhbnZhcy1mb3IteGxhcmdlLnBvc2l0aW9uLWxlZnQsIC5vZmYtY2FudmFzLmluLWNhbnZhcy1mb3IteGxhcmdlLnBvc2l0aW9uLXJpZ2h0LCAub2ZmLWNhbnZhcy5pbi1jYW52YXMtZm9yLXhsYXJnZS5wb3NpdGlvbi10b3AsIC5vZmYtY2FudmFzLmluLWNhbnZhcy1mb3IteGxhcmdlLnBvc2l0aW9uLWJvdHRvbSB7XG4gICAgYm94LXNoYWRvdzogbm9uZTtcbiAgICB0cmFuc2Zvcm06IG5vbmU7XG4gIH1cbiAgLm9mZi1jYW52YXMuaW4tY2FudmFzLWZvci14bGFyZ2UgLmNsb3NlLWJ1dHRvbiB7XG4gICAgZGlzcGxheTogbm9uZTtcbiAgfVxufVxuXG5AbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA5MGVtKSB7XG4gIC5vZmYtY2FudmFzLmluLWNhbnZhcy1mb3IteHhsYXJnZSB7XG4gICAgdmlzaWJpbGl0eTogdmlzaWJsZTtcbiAgICBoZWlnaHQ6IGF1dG87XG4gICAgcG9zaXRpb246IHN0YXRpYztcbiAgICBiYWNrZ3JvdW5kOiBpbmhlcml0O1xuICAgIHdpZHRoOiBpbmhlcml0O1xuICAgIG92ZXJmbG93OiBpbmhlcml0O1xuICAgIHRyYW5zaXRpb246IGluaGVyaXQ7XG4gIH1cbiAgLm9mZi1jYW52YXMuaW4tY2FudmFzLWZvci14eGxhcmdlLnBvc2l0aW9uLWxlZnQsIC5vZmYtY2FudmFzLmluLWNhbnZhcy1mb3IteHhsYXJnZS5wb3NpdGlvbi1yaWdodCwgLm9mZi1jYW52YXMuaW4tY2FudmFzLWZvci14eGxhcmdlLnBvc2l0aW9uLXRvcCwgLm9mZi1jYW52YXMuaW4tY2FudmFzLWZvci14eGxhcmdlLnBvc2l0aW9uLWJvdHRvbSB7XG4gICAgYm94LXNoYWRvdzogbm9uZTtcbiAgICB0cmFuc2Zvcm06IG5vbmU7XG4gIH1cbiAgLm9mZi1jYW52YXMuaW4tY2FudmFzLWZvci14eGxhcmdlIC5jbG9zZS1idXR0b24ge1xuICAgIGRpc3BsYXk6IG5vbmU7XG4gIH1cbn1cblxuLm9yYml0IHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xufVxuXG4ub3JiaXQtY29udGFpbmVyIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBoZWlnaHQ6IDA7XG4gIG1hcmdpbjogMDtcbiAgbGlzdC1zdHlsZTogbm9uZTtcbiAgb3ZlcmZsb3c6IGhpZGRlbjtcbn1cblxuLm9yYml0LXNsaWRlIHtcbiAgd2lkdGg6IDEwMCU7XG59XG5cbi5vcmJpdC1zbGlkZS5uby1tb3Rpb251aS5pcy1hY3RpdmUge1xuICB0b3A6IDA7XG4gIGxlZnQ6IDA7XG59XG5cbi5vcmJpdC1maWd1cmUge1xuICBtYXJnaW46IDA7XG59XG5cbi5vcmJpdC1pbWFnZSB7XG4gIHdpZHRoOiAxMDAlO1xuICBtYXgtd2lkdGg6IDEwMCU7XG4gIG1hcmdpbjogMDtcbn1cblxuLm9yYml0LWNhcHRpb24ge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIGJvdHRvbTogMDtcbiAgd2lkdGg6IDEwMCU7XG4gIG1hcmdpbi1ib3R0b206IDA7XG4gIHBhZGRpbmc6IDFyZW07XG4gIGJhY2tncm91bmQtY29sb3I6IHJnYmEoMTAsIDEwLCAxMCwgMC41KTtcbiAgY29sb3I6ICNmZWZlZmU7XG59XG5cbi5vcmJpdC1wcmV2aW91cywgLm9yYml0LW5leHQge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHRvcDogNTAlO1xuICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTUwJSk7XG4gIHotaW5kZXg6IDEwO1xuICBwYWRkaW5nOiAxcmVtO1xuICBjb2xvcjogI2ZlZmVmZTtcbn1cblxuW2RhdGEtd2hhdGlucHV0PSdtb3VzZSddIC5vcmJpdC1wcmV2aW91cywgW2RhdGEtd2hhdGlucHV0PSdtb3VzZSddIC5vcmJpdC1uZXh0IHtcbiAgb3V0bGluZTogMDtcbn1cblxuLm9yYml0LXByZXZpb3VzOmhvdmVyLCAub3JiaXQtbmV4dDpob3ZlciwgLm9yYml0LXByZXZpb3VzOmFjdGl2ZSwgLm9yYml0LW5leHQ6YWN0aXZlLCAub3JiaXQtcHJldmlvdXM6Zm9jdXMsIC5vcmJpdC1uZXh0OmZvY3VzIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogcmdiYSgxMCwgMTAsIDEwLCAwLjUpO1xufVxuXG4ub3JiaXQtcHJldmlvdXMge1xuICBsZWZ0OiAwO1xufVxuXG4ub3JiaXQtbmV4dCB7XG4gIGxlZnQ6IGF1dG87XG4gIHJpZ2h0OiAwO1xufVxuXG4ub3JiaXQtYnVsbGV0cyB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgbWFyZ2luLXRvcDogMC44cmVtO1xuICBtYXJnaW4tYm90dG9tOiAwLjhyZW07XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbn1cblxuW2RhdGEtd2hhdGlucHV0PSdtb3VzZSddIC5vcmJpdC1idWxsZXRzIHtcbiAgb3V0bGluZTogMDtcbn1cblxuLm9yYml0LWJ1bGxldHMgYnV0dG9uIHtcbiAgd2lkdGg6IDEuMnJlbTtcbiAgaGVpZ2h0OiAxLjJyZW07XG4gIG1hcmdpbjogMC4xcmVtO1xuICBib3JkZXItcmFkaXVzOiA1MCU7XG4gIGJhY2tncm91bmQtY29sb3I6ICNkZGRkZGQ7XG59XG5cbi5vcmJpdC1idWxsZXRzIGJ1dHRvbjpob3ZlciB7XG4gIGJhY2tncm91bmQtY29sb3I6ICM3OTc5NkE7XG59XG5cbi5vcmJpdC1idWxsZXRzIGJ1dHRvbi5pcy1hY3RpdmUge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjNzk3OTZBO1xufVxuXG4ucGFnaW5hdGlvbiB7XG4gIG1hcmdpbi1sZWZ0OiAwO1xuICBtYXJnaW4tYm90dG9tOiAxcmVtO1xufVxuXG4ucGFnaW5hdGlvbjo6YmVmb3JlLCAucGFnaW5hdGlvbjo6YWZ0ZXIge1xuICBkaXNwbGF5OiB0YWJsZTtcbiAgY29udGVudDogJyAnO1xufVxuXG4ucGFnaW5hdGlvbjo6YWZ0ZXIge1xuICBjbGVhcjogYm90aDtcbn1cblxuLnBhZ2luYXRpb24gbGkge1xuICBtYXJnaW4tcmlnaHQ6IDAuMDcxNDNyZW07XG4gIGJvcmRlci1yYWRpdXM6IDAuMThyZW07XG4gIGZvbnQtc2l6ZTogMXJlbTtcbiAgZGlzcGxheTogbm9uZTtcbn1cblxuLnBhZ2luYXRpb24gbGk6bGFzdC1jaGlsZCwgLnBhZ2luYXRpb24gbGk6Zmlyc3QtY2hpbGQge1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG59XG5cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0OGVtKSB7XG4gIC5wYWdpbmF0aW9uIGxpIHtcbiAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIH1cbn1cblxuLnBhZ2luYXRpb24gYSxcbi5wYWdpbmF0aW9uIGJ1dHRvbiB7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBwYWRkaW5nOiAwLjIxNDI5cmVtIDAuNzE0MjlyZW07XG4gIGJvcmRlci1yYWRpdXM6IDAuMThyZW07XG4gIGNvbG9yOiAjMGEwYTBhO1xufVxuXG4ucGFnaW5hdGlvbiBhOmhvdmVyLFxuLnBhZ2luYXRpb24gYnV0dG9uOmhvdmVyIHtcbiAgYmFja2dyb3VuZDogI2U4ZTVlNTtcbn1cblxuLnBhZ2luYXRpb24gLmN1cnJlbnQge1xuICBwYWRkaW5nOiAwLjIxNDI5cmVtIDAuNzE0MjlyZW07XG4gIGJhY2tncm91bmQ6ICMxMTUzQUQ7XG4gIGNvbG9yOiAjZmVmZWZlO1xuICBjdXJzb3I6IGRlZmF1bHQ7XG59XG5cbi5wYWdpbmF0aW9uIC5kaXNhYmxlZCB7XG4gIHBhZGRpbmc6IDAuMjE0MjlyZW0gMC43MTQyOXJlbTtcbiAgY29sb3I6ICNkZGRkZGQ7XG4gIGN1cnNvcjogbm90LWFsbG93ZWQ7XG59XG5cbi5wYWdpbmF0aW9uIC5kaXNhYmxlZDpob3ZlciB7XG4gIGJhY2tncm91bmQ6IHRyYW5zcGFyZW50O1xufVxuXG4ucGFnaW5hdGlvbiAuZWxsaXBzaXM6OmFmdGVyIHtcbiAgcGFkZGluZzogMC4yMTQyOXJlbSAwLjcxNDI5cmVtO1xuICBjb250ZW50OiAnXFwyMDI2JztcbiAgY29sb3I6ICMwYTBhMGE7XG59XG5cbi5wYWdpbmF0aW9uLXByZXZpb3VzIGE6OmJlZm9yZSxcbi5wYWdpbmF0aW9uLXByZXZpb3VzLmRpc2FibGVkOjpiZWZvcmUge1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIG1hcmdpbi1yaWdodDogMC41cmVtO1xuICBjb250ZW50OiAnXFwwMGFiJztcbn1cblxuLnBhZ2luYXRpb24tbmV4dCBhOjphZnRlcixcbi5wYWdpbmF0aW9uLW5leHQuZGlzYWJsZWQ6OmFmdGVyIHtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICBtYXJnaW4tbGVmdDogMC41cmVtO1xuICBjb250ZW50OiAnXFwwMGJiJztcbn1cblxuLnByb2dyZXNzIHtcbiAgaGVpZ2h0OiAxcmVtO1xuICBtYXJnaW4tYm90dG9tOiAxcmVtO1xuICBib3JkZXItcmFkaXVzOiAwLjE4cmVtO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZGRkZGRkO1xufVxuXG4ucHJvZ3Jlc3MucHJpbWFyeSAucHJvZ3Jlc3MtbWV0ZXIge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjMTE1M0FEO1xufVxuXG4ucHJvZ3Jlc3Muc2Vjb25kYXJ5IC5wcm9ncmVzcy1tZXRlciB7XG4gIGJhY2tncm91bmQtY29sb3I6ICM3Njc2NzY7XG59XG5cbi5wcm9ncmVzcy5zdWNjZXNzIC5wcm9ncmVzcy1tZXRlciB7XG4gIGJhY2tncm91bmQtY29sb3I6ICMzYWRiNzY7XG59XG5cbi5wcm9ncmVzcy53YXJuaW5nIC5wcm9ncmVzcy1tZXRlciB7XG4gIGJhY2tncm91bmQtY29sb3I6ICNmZmFlMDA7XG59XG5cbi5wcm9ncmVzcy5hbGVydCAucHJvZ3Jlc3MtbWV0ZXIge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjY2M0YjM3O1xufVxuXG4ucHJvZ3Jlc3MtbWV0ZXIge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICB3aWR0aDogMCU7XG4gIGhlaWdodDogMTAwJTtcbiAgYmFja2dyb3VuZC1jb2xvcjogIzExNTNBRDtcbiAgYm9yZGVyLXJhZGl1czogMC4xOHJlbTtcbn1cblxuLnByb2dyZXNzLW1ldGVyLXRleHQge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHRvcDogNTAlO1xuICBsZWZ0OiA1MCU7XG4gIHRyYW5zZm9ybTogdHJhbnNsYXRlKC01MCUsIC01MCUpO1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIG1hcmdpbjogMDtcbiAgZm9udC1zaXplOiAwLjc1cmVtO1xuICBmb250LXdlaWdodDogYm9sZDtcbiAgY29sb3I6ICNmZWZlZmU7XG4gIHdoaXRlLXNwYWNlOiBub3dyYXA7XG4gIGJvcmRlci1yYWRpdXM6IDAuMThyZW07XG59XG5cbi5zbGlkZXIge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIGhlaWdodDogMC41cmVtO1xuICBtYXJnaW4tdG9wOiAxLjI1cmVtO1xuICBtYXJnaW4tYm90dG9tOiAyLjI1cmVtO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZThlNWU1O1xuICBjdXJzb3I6IHBvaW50ZXI7XG4gIHVzZXItc2VsZWN0OiBub25lO1xuICB0b3VjaC1hY3Rpb246IG5vbmU7XG59XG5cbi5zbGlkZXItZmlsbCB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgdG9wOiAwO1xuICBsZWZ0OiAwO1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIG1heC13aWR0aDogMTAwJTtcbiAgaGVpZ2h0OiAwLjVyZW07XG4gIGJhY2tncm91bmQtY29sb3I6ICNkZGRkZGQ7XG4gIHRyYW5zaXRpb246IGFsbCAwLjJzIGVhc2UtaW4tb3V0O1xufVxuXG4uc2xpZGVyLWZpbGwuaXMtZHJhZ2dpbmcge1xuICB0cmFuc2l0aW9uOiBhbGwgMHMgbGluZWFyO1xufVxuXG4uc2xpZGVyLWhhbmRsZSB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgdG9wOiA1MCU7XG4gIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgtNTAlKTtcbiAgbGVmdDogMDtcbiAgei1pbmRleDogMTtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICB3aWR0aDogMS40cmVtO1xuICBoZWlnaHQ6IDEuNHJlbTtcbiAgYm9yZGVyLXJhZGl1czogMC4xOHJlbTtcbiAgYmFja2dyb3VuZC1jb2xvcjogIzExNTNBRDtcbiAgdHJhbnNpdGlvbjogYWxsIDAuMnMgZWFzZS1pbi1vdXQ7XG4gIHRvdWNoLWFjdGlvbjogbWFuaXB1bGF0aW9uO1xufVxuXG5bZGF0YS13aGF0aW5wdXQ9J21vdXNlJ10gLnNsaWRlci1oYW5kbGUge1xuICBvdXRsaW5lOiAwO1xufVxuXG4uc2xpZGVyLWhhbmRsZTpob3ZlciB7XG4gIGJhY2tncm91bmQtY29sb3I6ICMwZTQ3OTM7XG59XG5cbi5zbGlkZXItaGFuZGxlLmlzLWRyYWdnaW5nIHtcbiAgdHJhbnNpdGlvbjogYWxsIDBzIGxpbmVhcjtcbn1cblxuLnNsaWRlci5kaXNhYmxlZCxcbi5zbGlkZXJbZGlzYWJsZWRdIHtcbiAgb3BhY2l0eTogMC4yNTtcbiAgY3Vyc29yOiBub3QtYWxsb3dlZDtcbn1cblxuLnNsaWRlci52ZXJ0aWNhbCB7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgd2lkdGg6IDAuNXJlbTtcbiAgaGVpZ2h0OiAxMi41cmVtO1xuICBtYXJnaW46IDAgMS4yNXJlbTtcbiAgdHJhbnNmb3JtOiBzY2FsZSgxLCAtMSk7XG59XG5cbi5zbGlkZXIudmVydGljYWwgLnNsaWRlci1maWxsIHtcbiAgdG9wOiAwO1xuICB3aWR0aDogMC41cmVtO1xuICBtYXgtaGVpZ2h0OiAxMDAlO1xufVxuXG4uc2xpZGVyLnZlcnRpY2FsIC5zbGlkZXItaGFuZGxlIHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB0b3A6IDA7XG4gIGxlZnQ6IDUwJTtcbiAgd2lkdGg6IDEuNHJlbTtcbiAgaGVpZ2h0OiAxLjRyZW07XG4gIHRyYW5zZm9ybTogdHJhbnNsYXRlWCgtNTAlKTtcbn1cblxuLnN0aWNreS1jb250YWluZXIge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG59XG5cbi5zdGlja3kge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIHotaW5kZXg6IDA7XG4gIHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwgMCwgMCk7XG59XG5cbi5zdGlja3kuaXMtc3R1Y2sge1xuICBwb3NpdGlvbjogZml4ZWQ7XG4gIHotaW5kZXg6IDU7XG4gIHdpZHRoOiAxMDAlO1xufVxuXG4uc3RpY2t5LmlzLXN0dWNrLmlzLWF0LXRvcCB7XG4gIHRvcDogMDtcbn1cblxuLnN0aWNreS5pcy1zdHVjay5pcy1hdC1ib3R0b20ge1xuICBib3R0b206IDA7XG59XG5cbi5zdGlja3kuaXMtYW5jaG9yZWQge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIHJpZ2h0OiBhdXRvO1xuICBsZWZ0OiBhdXRvO1xufVxuXG4uc3RpY2t5LmlzLWFuY2hvcmVkLmlzLWF0LWJvdHRvbSB7XG4gIGJvdHRvbTogMDtcbn1cblxuYm9keS5pcy1yZXZlYWwtb3BlbiB7XG4gIG92ZXJmbG93OiBoaWRkZW47XG59XG5cbmh0bWwuaXMtcmV2ZWFsLW9wZW4sXG5odG1sLmlzLXJldmVhbC1vcGVuIGJvZHkge1xuICBtaW4taGVpZ2h0OiAxMDAlO1xuICBvdmVyZmxvdzogaGlkZGVuO1xuICBwb3NpdGlvbjogZml4ZWQ7XG4gIHVzZXItc2VsZWN0OiBub25lO1xufVxuXG4ucmV2ZWFsLW92ZXJsYXkge1xuICBwb3NpdGlvbjogZml4ZWQ7XG4gIHRvcDogMDtcbiAgcmlnaHQ6IDA7XG4gIGJvdHRvbTogMDtcbiAgbGVmdDogMDtcbiAgei1pbmRleDogMTAwNTtcbiAgZGlzcGxheTogbm9uZTtcbiAgYmFja2dyb3VuZC1jb2xvcjogcmdiYSgxMCwgMTAsIDEwLCAwLjQ1KTtcbiAgb3ZlcmZsb3cteTogc2Nyb2xsO1xufVxuXG4ucmV2ZWFsIHtcbiAgei1pbmRleDogMTAwNjtcbiAgYmFja2ZhY2UtdmlzaWJpbGl0eTogaGlkZGVuO1xuICBkaXNwbGF5OiBub25lO1xuICBwYWRkaW5nOiAxcmVtO1xuICBib3JkZXI6IG5vbmU7XG4gIGJvcmRlci1yYWRpdXM6IDNweDtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2ZlZmVmZTtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICB0b3A6IDEwMHB4O1xuICBtYXJnaW4tcmlnaHQ6IGF1dG87XG4gIG1hcmdpbi1sZWZ0OiBhdXRvO1xuICBvdmVyZmxvdy15OiBhdXRvO1xufVxuXG5bZGF0YS13aGF0aW5wdXQ9J21vdXNlJ10gLnJldmVhbCB7XG4gIG91dGxpbmU6IDA7XG59XG5cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0OGVtKSB7XG4gIC5yZXZlYWwge1xuICAgIG1pbi1oZWlnaHQ6IDA7XG4gIH1cbn1cblxuLnJldmVhbCAuY29sdW1uLCAucmV2ZWFsIC5jb2x1bW5zIHtcbiAgbWluLXdpZHRoOiAwO1xufVxuXG4ucmV2ZWFsID4gOmxhc3QtY2hpbGQge1xuICBtYXJnaW4tYm90dG9tOiAwO1xufVxuXG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDhlbSkge1xuICAucmV2ZWFsIHtcbiAgICB3aWR0aDogNjAwcHg7XG4gICAgbWF4LXdpZHRoOiA5Mi44NTcxNHJlbTtcbiAgfVxufVxuXG4ucmV2ZWFsLmNvbGxhcHNlIHtcbiAgcGFkZGluZzogMDtcbn1cblxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQ4ZW0pIHtcbiAgLnJldmVhbC50aW55IHtcbiAgICB3aWR0aDogMzAlO1xuICAgIG1heC13aWR0aDogOTIuODU3MTRyZW07XG4gIH1cbn1cblxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQ4ZW0pIHtcbiAgLnJldmVhbC5zbWFsbCB7XG4gICAgd2lkdGg6IDUwJTtcbiAgICBtYXgtd2lkdGg6IDkyLjg1NzE0cmVtO1xuICB9XG59XG5cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0OGVtKSB7XG4gIC5yZXZlYWwubGFyZ2Uge1xuICAgIHdpZHRoOiA5MCU7XG4gICAgbWF4LXdpZHRoOiA5Mi44NTcxNHJlbTtcbiAgfVxufVxuXG4ucmV2ZWFsLmZ1bGwge1xuICB0b3A6IDA7XG4gIGxlZnQ6IDA7XG4gIHdpZHRoOiAxMDAlO1xuICBtYXgtd2lkdGg6IG5vbmU7XG4gIGhlaWdodDogMTAwJTtcbiAgaGVpZ2h0OiAxMDB2aDtcbiAgbWluLWhlaWdodDogMTAwdmg7XG4gIG1hcmdpbi1sZWZ0OiAwO1xuICBib3JkZXI6IDA7XG4gIGJvcmRlci1yYWRpdXM6IDA7XG59XG5cbkBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDQ3LjkzNzVlbSkge1xuICAucmV2ZWFsIHtcbiAgICB0b3A6IDA7XG4gICAgbGVmdDogMDtcbiAgICB3aWR0aDogMTAwJTtcbiAgICBtYXgtd2lkdGg6IG5vbmU7XG4gICAgaGVpZ2h0OiAxMDAlO1xuICAgIGhlaWdodDogMTAwdmg7XG4gICAgbWluLWhlaWdodDogMTAwdmg7XG4gICAgbWFyZ2luLWxlZnQ6IDA7XG4gICAgYm9yZGVyOiAwO1xuICAgIGJvcmRlci1yYWRpdXM6IDA7XG4gIH1cbn1cblxuLnJldmVhbC53aXRob3V0LW92ZXJsYXkge1xuICBwb3NpdGlvbjogZml4ZWQ7XG59XG5cbi8qQGluY2x1ZGUgZm91bmRhdGlvbi1zd2l0Y2g7Ki9cbnRhYmxlIHtcbiAgYm9yZGVyLWNvbGxhcHNlOiBjb2xsYXBzZTtcbiAgd2lkdGg6IDEwMCU7XG4gIG1hcmdpbi1ib3R0b206IDFyZW07XG4gIGJvcmRlci1yYWRpdXM6IDAuMThyZW07XG59XG5cbnRoZWFkLFxudGJvZHksXG50Zm9vdCB7XG4gIGJvcmRlcjogMXB4IHNvbGlkICNmMWYxZjE7XG4gIGJhY2tncm91bmQtY29sb3I6ICNmZWZlZmU7XG59XG5cbmNhcHRpb24ge1xuICBwYWRkaW5nOiAwLjQyODU3cmVtIDAuNTcxNDNyZW0gMC41NzE0M3JlbTtcbiAgZm9udC13ZWlnaHQ6IGJvbGQ7XG59XG5cbnRoZWFkIHtcbiAgYmFja2dyb3VuZDogI2Y4ZjhmODtcbiAgY29sb3I6ICMwYTBhMGE7XG59XG5cbnRmb290IHtcbiAgYmFja2dyb3VuZDogI2YxZjFmMTtcbiAgY29sb3I6ICMwYTBhMGE7XG59XG5cbnRoZWFkIHRyLFxudGZvb3QgdHIge1xuICBiYWNrZ3JvdW5kOiB0cmFuc3BhcmVudDtcbn1cblxudGhlYWQgdGgsXG50aGVhZCB0ZCxcbnRmb290IHRoLFxudGZvb3QgdGQge1xuICBwYWRkaW5nOiAwLjQyODU3cmVtIDAuNTcxNDNyZW0gMC41NzE0M3JlbTtcbiAgZm9udC13ZWlnaHQ6IGJvbGQ7XG4gIHRleHQtYWxpZ246IGxlZnQ7XG59XG5cbnRib2R5IHRoLFxudGJvZHkgdGQge1xuICBwYWRkaW5nOiAwLjQyODU3cmVtIDAuNTcxNDNyZW0gMC41NzE0M3JlbTtcbn1cblxudGJvZHkgdHIge1xuICBib3JkZXItYm90dG9tOiAwO1xuICBib3JkZXItYm90dG9tOiAxcHggc29saWQgI2YxZjFmMTtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2ZlZmVmZTtcbn1cblxudGFibGUuc3RyaXBlZCB0Ym9keSB0cjpudGgtY2hpbGQoZXZlbikge1xuICBib3JkZXItYm90dG9tOiAwO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZjFmMWYxO1xufVxuXG5AbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA2My45Mzc1ZW0pIHtcbiAgdGFibGUuc3RhY2sgdGhlYWQge1xuICAgIGRpc3BsYXk6IG5vbmU7XG4gIH1cbiAgdGFibGUuc3RhY2sgdGZvb3Qge1xuICAgIGRpc3BsYXk6IG5vbmU7XG4gIH1cbiAgdGFibGUuc3RhY2sgdHIsXG4gIHRhYmxlLnN0YWNrIHRoLFxuICB0YWJsZS5zdGFjayB0ZCB7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gIH1cbiAgdGFibGUuc3RhY2sgdGQge1xuICAgIGJvcmRlci10b3A6IDA7XG4gIH1cbn1cblxudGFibGUuc2Nyb2xsIHtcbiAgZGlzcGxheTogYmxvY2s7XG4gIHdpZHRoOiAxMDAlO1xuICBvdmVyZmxvdy14OiBhdXRvO1xufVxuXG50YWJsZS5ob3ZlciB0aGVhZCB0cjpob3ZlciB7XG4gIGJhY2tncm91bmQtY29sb3I6ICNmM2YzZjM7XG59XG5cbnRhYmxlLmhvdmVyIHRmb290IHRyOmhvdmVyIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2VjZWNlYztcbn1cblxudGFibGUuaG92ZXIgdGJvZHkgdHI6aG92ZXIge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZjlmOWY5O1xufVxuXG50YWJsZS5ob3Zlci5zdHJpcGVkIHRyOm50aC1vZi10eXBlKGV2ZW4pOmhvdmVyIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2VjZWNlYztcbn1cblxuLnRhYmxlLXNjcm9sbCB7XG4gIG92ZXJmbG93LXg6IGF1dG87XG59XG5cbi50YWJsZS1zY3JvbGwgdGFibGUge1xuICB3aWR0aDogYXV0bztcbn1cblxuLnRhYnMge1xuICBtYXJnaW46IDA7XG4gIGJvcmRlcjogMXB4IHNvbGlkICNkZGRkZGQ7XG4gIGJhY2tncm91bmQ6ICNmZWZlZmU7XG4gIGxpc3Qtc3R5bGUtdHlwZTogbm9uZTtcbn1cblxuLnRhYnM6OmJlZm9yZSwgLnRhYnM6OmFmdGVyIHtcbiAgZGlzcGxheTogdGFibGU7XG4gIGNvbnRlbnQ6ICcgJztcbn1cblxuLnRhYnM6OmFmdGVyIHtcbiAgY2xlYXI6IGJvdGg7XG59XG5cbi50YWJzLnZlcnRpY2FsID4gbGkge1xuICBkaXNwbGF5OiBibG9jaztcbiAgZmxvYXQ6IG5vbmU7XG4gIHdpZHRoOiBhdXRvO1xufVxuXG4udGFicy5zaW1wbGUgPiBsaSA+IGEge1xuICBwYWRkaW5nOiAwO1xufVxuXG4udGFicy5zaW1wbGUgPiBsaSA+IGE6aG92ZXIge1xuICBiYWNrZ3JvdW5kOiB0cmFuc3BhcmVudDtcbn1cblxuLnRhYnMucHJpbWFyeSB7XG4gIGJhY2tncm91bmQ6ICMxMTUzQUQ7XG59XG5cbi50YWJzLnByaW1hcnkgPiBsaSA+IGEge1xuICBjb2xvcjogI2ZlZmVmZTtcbn1cblxuLnRhYnMucHJpbWFyeSA+IGxpID4gYTpob3ZlciwgLnRhYnMucHJpbWFyeSA+IGxpID4gYTpmb2N1cyB7XG4gIGJhY2tncm91bmQ6ICMxMjVhYmM7XG59XG5cbi50YWJzLXRpdGxlIHtcbiAgZmxvYXQ6IGxlZnQ7XG59XG5cbi50YWJzLXRpdGxlID4gYSB7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBwYWRkaW5nOiAxLjI1cmVtIDEuNXJlbTtcbiAgZm9udC1zaXplOiAwLjg1NzE0cmVtO1xuICBsaW5lLWhlaWdodDogMTtcbiAgY29sb3I6ICMxMTUzQUQ7XG59XG5cbi50YWJzLXRpdGxlID4gYTpob3ZlciB7XG4gIGJhY2tncm91bmQ6ICNmZWZlZmU7XG4gIGNvbG9yOiAjMGY0Nzk1O1xufVxuXG4udGFicy10aXRsZSA+IGE6Zm9jdXMsIC50YWJzLXRpdGxlID4gYVthcmlhLXNlbGVjdGVkPSd0cnVlJ10ge1xuICBiYWNrZ3JvdW5kOiAjZThlNWU1O1xuICBjb2xvcjogIzExNTNBRDtcbn1cblxuLnRhYnMtY29udGVudCB7XG4gIGJvcmRlcjogMXB4IHNvbGlkICNkZGRkZGQ7XG4gIGJvcmRlci10b3A6IDA7XG4gIGJhY2tncm91bmQ6ICNmZWZlZmU7XG4gIGNvbG9yOiAjMGEwYTBhO1xuICB0cmFuc2l0aW9uOiBhbGwgMC41cyBlYXNlO1xufVxuXG4udGFicy1jb250ZW50LnZlcnRpY2FsIHtcbiAgYm9yZGVyOiAxcHggc29saWQgI2RkZGRkZDtcbiAgYm9yZGVyLWxlZnQ6IDA7XG59XG5cbi50YWJzLXBhbmVsIHtcbiAgZGlzcGxheTogbm9uZTtcbiAgcGFkZGluZzogMXJlbTtcbn1cblxuLnRhYnMtcGFuZWwuaXMtYWN0aXZlIHtcbiAgZGlzcGxheTogYmxvY2s7XG59XG5cbi50aHVtYm5haWwge1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIG1heC13aWR0aDogMTAwJTtcbiAgbWFyZ2luLWJvdHRvbTogMXJlbTtcbiAgYm9yZGVyOiBzb2xpZCA0cHggI2ZlZmVmZTtcbiAgYm9yZGVyLXJhZGl1czogMC4xOHJlbTtcbiAgYm94LXNoYWRvdzogMCAwIDAgMXB4IHJnYmEoMTAsIDEwLCAxMCwgMC4yKTtcbiAgbGluZS1oZWlnaHQ6IDA7XG59XG5cbmEudGh1bWJuYWlsIHtcbiAgdHJhbnNpdGlvbjogYm94LXNoYWRvdyAyMDBtcyBlYXNlLW91dDtcbn1cblxuYS50aHVtYm5haWw6aG92ZXIsIGEudGh1bWJuYWlsOmZvY3VzIHtcbiAgYm94LXNoYWRvdzogMCAwIDZweCAxcHggcmdiYSgxNywgODMsIDE3MywgMC41KTtcbn1cblxuYS50aHVtYm5haWwgaW1hZ2Uge1xuICBib3gtc2hhZG93OiBub25lO1xufVxuXG4udGl0bGUtYmFyIHtcbiAgcGFkZGluZzogMC41cmVtO1xuICBiYWNrZ3JvdW5kOiAjMGEwYTBhO1xuICBjb2xvcjogI2ZlZmVmZTtcbn1cblxuLnRpdGxlLWJhcjo6YmVmb3JlLCAudGl0bGUtYmFyOjphZnRlciB7XG4gIGRpc3BsYXk6IHRhYmxlO1xuICBjb250ZW50OiAnICc7XG59XG5cbi50aXRsZS1iYXI6OmFmdGVyIHtcbiAgY2xlYXI6IGJvdGg7XG59XG5cbi50aXRsZS1iYXIgLm1lbnUtaWNvbiB7XG4gIG1hcmdpbi1sZWZ0OiAwLjI1cmVtO1xuICBtYXJnaW4tcmlnaHQ6IDAuMjVyZW07XG59XG5cbi50aXRsZS1iYXItbGVmdCB7XG4gIGZsb2F0OiBsZWZ0O1xufVxuXG4udGl0bGUtYmFyLXJpZ2h0IHtcbiAgZmxvYXQ6IHJpZ2h0O1xuICB0ZXh0LWFsaWduOiByaWdodDtcbn1cblxuLnRpdGxlLWJhci10aXRsZSB7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgdmVydGljYWwtYWxpZ246IG1pZGRsZTtcbiAgZm9udC13ZWlnaHQ6IGJvbGQ7XG59XG5cbi5oYXMtdGlwIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIGJvcmRlci1ib3R0b206IGRvdHRlZCAxcHggIzc5Nzk2QTtcbiAgZm9udC13ZWlnaHQ6IGJvbGQ7XG4gIGN1cnNvcjogaGVscDtcbn1cblxuLnRvb2x0aXAge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHRvcDogY2FsYygxMDAlICsgMC42NDk1cmVtKTtcbiAgei1pbmRleDogMTIwMDtcbiAgbWF4LXdpZHRoOiAxMHJlbTtcbiAgcGFkZGluZzogMC43NXJlbTtcbiAgYm9yZGVyLXJhZGl1czogMC4xOHJlbTtcbiAgYmFja2dyb3VuZC1jb2xvcjogIzBhMGEwYTtcbiAgZm9udC1zaXplOiA4MCU7XG4gIGNvbG9yOiAjZmVmZWZlO1xufVxuXG4udG9vbHRpcDo6YmVmb3JlIHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xufVxuXG4udG9vbHRpcC5ib3R0b206OmJlZm9yZSB7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICB3aWR0aDogMDtcbiAgaGVpZ2h0OiAwO1xuICBib3JkZXI6IGluc2V0IDAuNzVyZW07XG4gIGNvbnRlbnQ6ICcnO1xuICBib3JkZXItdG9wLXdpZHRoOiAwO1xuICBib3JkZXItYm90dG9tLXN0eWxlOiBzb2xpZDtcbiAgYm9yZGVyLWNvbG9yOiB0cmFuc3BhcmVudCB0cmFuc3BhcmVudCAjMGEwYTBhO1xuICBib3R0b206IDEwMCU7XG59XG5cbi50b29sdGlwLmJvdHRvbS5hbGlnbi1jZW50ZXI6OmJlZm9yZSB7XG4gIGxlZnQ6IDUwJTtcbiAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKC01MCUpO1xufVxuXG4udG9vbHRpcC50b3A6OmJlZm9yZSB7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICB3aWR0aDogMDtcbiAgaGVpZ2h0OiAwO1xuICBib3JkZXI6IGluc2V0IDAuNzVyZW07XG4gIGNvbnRlbnQ6ICcnO1xuICBib3JkZXItYm90dG9tLXdpZHRoOiAwO1xuICBib3JkZXItdG9wLXN0eWxlOiBzb2xpZDtcbiAgYm9yZGVyLWNvbG9yOiAjMGEwYTBhIHRyYW5zcGFyZW50IHRyYW5zcGFyZW50O1xuICB0b3A6IDEwMCU7XG4gIGJvdHRvbTogYXV0bztcbn1cblxuLnRvb2x0aXAudG9wLmFsaWduLWNlbnRlcjo6YmVmb3JlIHtcbiAgbGVmdDogNTAlO1xuICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoLTUwJSk7XG59XG5cbi50b29sdGlwLmxlZnQ6OmJlZm9yZSB7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICB3aWR0aDogMDtcbiAgaGVpZ2h0OiAwO1xuICBib3JkZXI6IGluc2V0IDAuNzVyZW07XG4gIGNvbnRlbnQ6ICcnO1xuICBib3JkZXItcmlnaHQtd2lkdGg6IDA7XG4gIGJvcmRlci1sZWZ0LXN0eWxlOiBzb2xpZDtcbiAgYm9yZGVyLWNvbG9yOiB0cmFuc3BhcmVudCB0cmFuc3BhcmVudCB0cmFuc3BhcmVudCAjMGEwYTBhO1xuICBsZWZ0OiAxMDAlO1xufVxuXG4udG9vbHRpcC5sZWZ0LmFsaWduLWNlbnRlcjo6YmVmb3JlIHtcbiAgYm90dG9tOiBhdXRvO1xuICB0b3A6IDUwJTtcbiAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC01MCUpO1xufVxuXG4udG9vbHRpcC5yaWdodDo6YmVmb3JlIHtcbiAgZGlzcGxheTogYmxvY2s7XG4gIHdpZHRoOiAwO1xuICBoZWlnaHQ6IDA7XG4gIGJvcmRlcjogaW5zZXQgMC43NXJlbTtcbiAgY29udGVudDogJyc7XG4gIGJvcmRlci1sZWZ0LXdpZHRoOiAwO1xuICBib3JkZXItcmlnaHQtc3R5bGU6IHNvbGlkO1xuICBib3JkZXItY29sb3I6IHRyYW5zcGFyZW50ICMwYTBhMGEgdHJhbnNwYXJlbnQgdHJhbnNwYXJlbnQ7XG4gIHJpZ2h0OiAxMDAlO1xuICBsZWZ0OiBhdXRvO1xufVxuXG4udG9vbHRpcC5yaWdodC5hbGlnbi1jZW50ZXI6OmJlZm9yZSB7XG4gIGJvdHRvbTogYXV0bztcbiAgdG9wOiA1MCU7XG4gIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgtNTAlKTtcbn1cblxuLnRvb2x0aXAuYWxpZ24tdG9wOjpiZWZvcmUge1xuICBib3R0b206IGF1dG87XG4gIHRvcDogMTAlO1xufVxuXG4udG9vbHRpcC5hbGlnbi1ib3R0b206OmJlZm9yZSB7XG4gIGJvdHRvbTogMTAlO1xuICB0b3A6IGF1dG87XG59XG5cbi50b29sdGlwLmFsaWduLWxlZnQ6OmJlZm9yZSB7XG4gIGxlZnQ6IDEwJTtcbiAgcmlnaHQ6IGF1dG87XG59XG5cbi50b29sdGlwLmFsaWduLXJpZ2h0OjpiZWZvcmUge1xuICBsZWZ0OiBhdXRvO1xuICByaWdodDogMTAlO1xufVxuXG4udG9wLWJhciB7XG4gIHBhZGRpbmc6IDAuNXJlbTtcbn1cblxuLnRvcC1iYXI6OmJlZm9yZSwgLnRvcC1iYXI6OmFmdGVyIHtcbiAgZGlzcGxheTogdGFibGU7XG4gIGNvbnRlbnQ6ICcgJztcbn1cblxuLnRvcC1iYXI6OmFmdGVyIHtcbiAgY2xlYXI6IGJvdGg7XG59XG5cbi50b3AtYmFyLFxuLnRvcC1iYXIgdWwge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZThlNWU1O1xufVxuXG4udG9wLWJhciBpbnB1dCB7XG4gIG1heC13aWR0aDogMjAwcHg7XG4gIG1hcmdpbi1yaWdodDogMXJlbTtcbn1cblxuLnRvcC1iYXIgLmlucHV0LWdyb3VwLWZpZWxkIHtcbiAgd2lkdGg6IDEwMCU7XG4gIG1hcmdpbi1yaWdodDogMDtcbn1cblxuLnRvcC1iYXIgaW5wdXQuYnV0dG9uIHtcbiAgd2lkdGg6IGF1dG87XG59XG5cbi50b3AtYmFyIC50b3AtYmFyLWxlZnQsXG4udG9wLWJhciAudG9wLWJhci1yaWdodCB7XG4gIHdpZHRoOiAxMDAlO1xufVxuXG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDhlbSkge1xuICAudG9wLWJhciAudG9wLWJhci1sZWZ0LFxuICAudG9wLWJhciAudG9wLWJhci1yaWdodCB7XG4gICAgd2lkdGg6IGF1dG87XG4gIH1cbn1cblxuQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogNjMuOTM3NWVtKSB7XG4gIC50b3AtYmFyLnN0YWNrZWQtZm9yLW1lZGl1bSAudG9wLWJhci1sZWZ0LFxuICAudG9wLWJhci5zdGFja2VkLWZvci1tZWRpdW0gLnRvcC1iYXItcmlnaHQge1xuICAgIHdpZHRoOiAxMDAlO1xuICB9XG59XG5cbkBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDc0LjkzNzVlbSkge1xuICAudG9wLWJhci5zdGFja2VkLWZvci1sYXJnZSAudG9wLWJhci1sZWZ0LFxuICAudG9wLWJhci5zdGFja2VkLWZvci1sYXJnZSAudG9wLWJhci1yaWdodCB7XG4gICAgd2lkdGg6IDEwMCU7XG4gIH1cbn1cblxuQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogODkuOTM3NWVtKSB7XG4gIC50b3AtYmFyLnN0YWNrZWQtZm9yLXhsYXJnZSAudG9wLWJhci1sZWZ0LFxuICAudG9wLWJhci5zdGFja2VkLWZvci14bGFyZ2UgLnRvcC1iYXItcmlnaHQge1xuICAgIHdpZHRoOiAxMDAlO1xuICB9XG59XG5cbi50b3AtYmFyLnN0YWNrZWQtZm9yLXh4bGFyZ2UgLnRvcC1iYXItbGVmdCxcbi50b3AtYmFyLnN0YWNrZWQtZm9yLXh4bGFyZ2UgLnRvcC1iYXItcmlnaHQge1xuICB3aWR0aDogMTAwJTtcbn1cblxuLnRvcC1iYXItdGl0bGUge1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIGZsb2F0OiBsZWZ0O1xuICBwYWRkaW5nOiAwLjVyZW0gMXJlbSAwLjVyZW0gMDtcbn1cblxuLnRvcC1iYXItdGl0bGUgLm1lbnUtaWNvbiB7XG4gIGJvdHRvbTogMnB4O1xufVxuXG4udG9wLWJhci1sZWZ0IHtcbiAgZmxvYXQ6IGxlZnQ7XG59XG5cbi50b3AtYmFyLXJpZ2h0IHtcbiAgZmxvYXQ6IHJpZ2h0O1xufVxuXG4uaGlkZSB7XG4gIGRpc3BsYXk6IG5vbmUgIWltcG9ydGFudDtcbn1cblxuLmludmlzaWJsZSB7XG4gIHZpc2liaWxpdHk6IGhpZGRlbjtcbn1cblxuQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogNDcuOTM3NWVtKSB7XG4gIC5oaWRlLWZvci1zbWFsbC1vbmx5IHtcbiAgICBkaXNwbGF5OiBub25lICFpbXBvcnRhbnQ7XG4gIH1cbn1cblxuQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogMGVtKSwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0OGVtKSB7XG4gIC5zaG93LWZvci1zbWFsbC1vbmx5IHtcbiAgICBkaXNwbGF5OiBub25lICFpbXBvcnRhbnQ7XG4gIH1cbn1cblxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQ4ZW0pIHtcbiAgLmhpZGUtZm9yLW1lZGl1bSB7XG4gICAgZGlzcGxheTogbm9uZSAhaW1wb3J0YW50O1xuICB9XG59XG5cbkBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDQ3LjkzNzVlbSkge1xuICAuc2hvdy1mb3ItbWVkaXVtIHtcbiAgICBkaXNwbGF5OiBub25lICFpbXBvcnRhbnQ7XG4gIH1cbn1cblxuQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDhlbSkgYW5kIChtYXgtd2lkdGg6IDYzLjkzNzVlbSkge1xuICAuaGlkZS1mb3ItbWVkaXVtLW9ubHkge1xuICAgIGRpc3BsYXk6IG5vbmUgIWltcG9ydGFudDtcbiAgfVxufVxuXG5AbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA0Ny45Mzc1ZW0pLCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgLnNob3ctZm9yLW1lZGl1bS1vbmx5IHtcbiAgICBkaXNwbGF5OiBub25lICFpbXBvcnRhbnQ7XG4gIH1cbn1cblxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgLmhpZGUtZm9yLWxhcmdlIHtcbiAgICBkaXNwbGF5OiBub25lICFpbXBvcnRhbnQ7XG4gIH1cbn1cblxuQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogNjMuOTM3NWVtKSB7XG4gIC5zaG93LWZvci1sYXJnZSB7XG4gICAgZGlzcGxheTogbm9uZSAhaW1wb3J0YW50O1xuICB9XG59XG5cbkBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIGFuZCAobWF4LXdpZHRoOiA3NC45Mzc1ZW0pIHtcbiAgLmhpZGUtZm9yLWxhcmdlLW9ubHkge1xuICAgIGRpc3BsYXk6IG5vbmUgIWltcG9ydGFudDtcbiAgfVxufVxuXG5AbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA2My45Mzc1ZW0pLCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDc1ZW0pIHtcbiAgLnNob3ctZm9yLWxhcmdlLW9ubHkge1xuICAgIGRpc3BsYXk6IG5vbmUgIWltcG9ydGFudDtcbiAgfVxufVxuXG5AbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA3NWVtKSB7XG4gIC5oaWRlLWZvci14bGFyZ2Uge1xuICAgIGRpc3BsYXk6IG5vbmUgIWltcG9ydGFudDtcbiAgfVxufVxuXG5AbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA3NC45Mzc1ZW0pIHtcbiAgLnNob3ctZm9yLXhsYXJnZSB7XG4gICAgZGlzcGxheTogbm9uZSAhaW1wb3J0YW50O1xuICB9XG59XG5cbkBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDc1ZW0pIGFuZCAobWF4LXdpZHRoOiA4OS45Mzc1ZW0pIHtcbiAgLmhpZGUtZm9yLXhsYXJnZS1vbmx5IHtcbiAgICBkaXNwbGF5OiBub25lICFpbXBvcnRhbnQ7XG4gIH1cbn1cblxuQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogNzQuOTM3NWVtKSwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA5MGVtKSB7XG4gIC5zaG93LWZvci14bGFyZ2Utb25seSB7XG4gICAgZGlzcGxheTogbm9uZSAhaW1wb3J0YW50O1xuICB9XG59XG5cbkBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDkwZW0pIHtcbiAgLmhpZGUtZm9yLXh4bGFyZ2Uge1xuICAgIGRpc3BsYXk6IG5vbmUgIWltcG9ydGFudDtcbiAgfVxufVxuXG5AbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA4OS45Mzc1ZW0pIHtcbiAgLnNob3ctZm9yLXh4bGFyZ2Uge1xuICAgIGRpc3BsYXk6IG5vbmUgIWltcG9ydGFudDtcbiAgfVxufVxuXG5AbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA5MGVtKSB7XG4gIC5oaWRlLWZvci14eGxhcmdlLW9ubHkge1xuICAgIGRpc3BsYXk6IG5vbmUgIWltcG9ydGFudDtcbiAgfVxufVxuXG5AbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA4OS45Mzc1ZW0pIHtcbiAgLnNob3ctZm9yLXh4bGFyZ2Utb25seSB7XG4gICAgZGlzcGxheTogbm9uZSAhaW1wb3J0YW50O1xuICB9XG59XG5cbi5zaG93LWZvci1zcixcbi5zaG93LW9uLWZvY3VzIHtcbiAgcG9zaXRpb246IGFic29sdXRlICFpbXBvcnRhbnQ7XG4gIHdpZHRoOiAxcHg7XG4gIGhlaWdodDogMXB4O1xuICBwYWRkaW5nOiAwO1xuICBvdmVyZmxvdzogaGlkZGVuO1xuICBjbGlwOiByZWN0KDAsIDAsIDAsIDApO1xuICB3aGl0ZS1zcGFjZTogbm93cmFwO1xuICBjbGlwLXBhdGg6IGluc2V0KDUwJSk7XG4gIGJvcmRlcjogMDtcbn1cblxuLnNob3ctb24tZm9jdXM6YWN0aXZlLCAuc2hvdy1vbi1mb2N1czpmb2N1cyB7XG4gIHBvc2l0aW9uOiBzdGF0aWMgIWltcG9ydGFudDtcbiAgd2lkdGg6IGF1dG87XG4gIGhlaWdodDogYXV0bztcbiAgb3ZlcmZsb3c6IHZpc2libGU7XG4gIGNsaXA6IGF1dG87XG4gIHdoaXRlLXNwYWNlOiBub3JtYWw7XG4gIGNsaXAtcGF0aDogbm9uZTtcbn1cblxuLnNob3ctZm9yLWxhbmRzY2FwZSxcbi5oaWRlLWZvci1wb3J0cmFpdCB7XG4gIGRpc3BsYXk6IGJsb2NrICFpbXBvcnRhbnQ7XG59XG5cbkBtZWRpYSBzY3JlZW4gYW5kIChvcmllbnRhdGlvbjogbGFuZHNjYXBlKSB7XG4gIC5zaG93LWZvci1sYW5kc2NhcGUsXG4gIC5oaWRlLWZvci1wb3J0cmFpdCB7XG4gICAgZGlzcGxheTogYmxvY2sgIWltcG9ydGFudDtcbiAgfVxufVxuXG5AbWVkaWEgc2NyZWVuIGFuZCAob3JpZW50YXRpb246IHBvcnRyYWl0KSB7XG4gIC5zaG93LWZvci1sYW5kc2NhcGUsXG4gIC5oaWRlLWZvci1wb3J0cmFpdCB7XG4gICAgZGlzcGxheTogbm9uZSAhaW1wb3J0YW50O1xuICB9XG59XG5cbi5oaWRlLWZvci1sYW5kc2NhcGUsXG4uc2hvdy1mb3ItcG9ydHJhaXQge1xuICBkaXNwbGF5OiBub25lICFpbXBvcnRhbnQ7XG59XG5cbkBtZWRpYSBzY3JlZW4gYW5kIChvcmllbnRhdGlvbjogbGFuZHNjYXBlKSB7XG4gIC5oaWRlLWZvci1sYW5kc2NhcGUsXG4gIC5zaG93LWZvci1wb3J0cmFpdCB7XG4gICAgZGlzcGxheTogbm9uZSAhaW1wb3J0YW50O1xuICB9XG59XG5cbkBtZWRpYSBzY3JlZW4gYW5kIChvcmllbnRhdGlvbjogcG9ydHJhaXQpIHtcbiAgLmhpZGUtZm9yLWxhbmRzY2FwZSxcbiAgLnNob3ctZm9yLXBvcnRyYWl0IHtcbiAgICBkaXNwbGF5OiBibG9jayAhaW1wb3J0YW50O1xuICB9XG59XG5cbi5mbG9hdC1sZWZ0IHtcbiAgZmxvYXQ6IGxlZnQgIWltcG9ydGFudDtcbn1cblxuLmZsb2F0LXJpZ2h0IHtcbiAgZmxvYXQ6IHJpZ2h0ICFpbXBvcnRhbnQ7XG59XG5cbi5mbG9hdC1jZW50ZXIge1xuICBkaXNwbGF5OiBibG9jaztcbiAgbWFyZ2luLXJpZ2h0OiBhdXRvO1xuICBtYXJnaW4tbGVmdDogYXV0bztcbn1cblxuLmNsZWFyZml4OjpiZWZvcmUsIC5jbGVhcmZpeDo6YWZ0ZXIge1xuICBkaXNwbGF5OiB0YWJsZTtcbiAgY29udGVudDogJyAnO1xufVxuXG4uY2xlYXJmaXg6OmFmdGVyIHtcbiAgY2xlYXI6IGJvdGg7XG59XG5cbi5zbGlkZS1pbi1kb3duLm11aS1lbnRlciB7XG4gIHRyYW5zaXRpb24tZHVyYXRpb246IDUwMG1zO1xuICB0cmFuc2l0aW9uLXRpbWluZy1mdW5jdGlvbjogbGluZWFyO1xuICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTEwMCUpO1xuICB0cmFuc2l0aW9uLXByb3BlcnR5OiB0cmFuc2Zvcm0sIG9wYWNpdHk7XG4gIGJhY2tmYWNlLXZpc2liaWxpdHk6IGhpZGRlbjtcbn1cblxuLnNsaWRlLWluLWRvd24ubXVpLWVudGVyLm11aS1lbnRlci1hY3RpdmUge1xuICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoMCk7XG59XG5cbi5zbGlkZS1pbi1sZWZ0Lm11aS1lbnRlciB7XG4gIHRyYW5zaXRpb24tZHVyYXRpb246IDUwMG1zO1xuICB0cmFuc2l0aW9uLXRpbWluZy1mdW5jdGlvbjogbGluZWFyO1xuICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoLTEwMCUpO1xuICB0cmFuc2l0aW9uLXByb3BlcnR5OiB0cmFuc2Zvcm0sIG9wYWNpdHk7XG4gIGJhY2tmYWNlLXZpc2liaWxpdHk6IGhpZGRlbjtcbn1cblxuLnNsaWRlLWluLWxlZnQubXVpLWVudGVyLm11aS1lbnRlci1hY3RpdmUge1xuICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoMCk7XG59XG5cbi5zbGlkZS1pbi11cC5tdWktZW50ZXIge1xuICB0cmFuc2l0aW9uLWR1cmF0aW9uOiA1MDBtcztcbiAgdHJhbnNpdGlvbi10aW1pbmctZnVuY3Rpb246IGxpbmVhcjtcbiAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKDEwMCUpO1xuICB0cmFuc2l0aW9uLXByb3BlcnR5OiB0cmFuc2Zvcm0sIG9wYWNpdHk7XG4gIGJhY2tmYWNlLXZpc2liaWxpdHk6IGhpZGRlbjtcbn1cblxuLnNsaWRlLWluLXVwLm11aS1lbnRlci5tdWktZW50ZXItYWN0aXZlIHtcbiAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKDApO1xufVxuXG4uc2xpZGUtaW4tcmlnaHQubXVpLWVudGVyIHtcbiAgdHJhbnNpdGlvbi1kdXJhdGlvbjogNTAwbXM7XG4gIHRyYW5zaXRpb24tdGltaW5nLWZ1bmN0aW9uOiBsaW5lYXI7XG4gIHRyYW5zZm9ybTogdHJhbnNsYXRlWCgxMDAlKTtcbiAgdHJhbnNpdGlvbi1wcm9wZXJ0eTogdHJhbnNmb3JtLCBvcGFjaXR5O1xuICBiYWNrZmFjZS12aXNpYmlsaXR5OiBoaWRkZW47XG59XG5cbi5zbGlkZS1pbi1yaWdodC5tdWktZW50ZXIubXVpLWVudGVyLWFjdGl2ZSB7XG4gIHRyYW5zZm9ybTogdHJhbnNsYXRlWCgwKTtcbn1cblxuLnNsaWRlLW91dC1kb3duLm11aS1sZWF2ZSB7XG4gIHRyYW5zaXRpb24tZHVyYXRpb246IDUwMG1zO1xuICB0cmFuc2l0aW9uLXRpbWluZy1mdW5jdGlvbjogbGluZWFyO1xuICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoMCk7XG4gIHRyYW5zaXRpb24tcHJvcGVydHk6IHRyYW5zZm9ybSwgb3BhY2l0eTtcbiAgYmFja2ZhY2UtdmlzaWJpbGl0eTogaGlkZGVuO1xufVxuXG4uc2xpZGUtb3V0LWRvd24ubXVpLWxlYXZlLm11aS1sZWF2ZS1hY3RpdmUge1xuICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoMTAwJSk7XG59XG5cbi5zbGlkZS1vdXQtcmlnaHQubXVpLWxlYXZlIHtcbiAgdHJhbnNpdGlvbi1kdXJhdGlvbjogNTAwbXM7XG4gIHRyYW5zaXRpb24tdGltaW5nLWZ1bmN0aW9uOiBsaW5lYXI7XG4gIHRyYW5zZm9ybTogdHJhbnNsYXRlWCgwKTtcbiAgdHJhbnNpdGlvbi1wcm9wZXJ0eTogdHJhbnNmb3JtLCBvcGFjaXR5O1xuICBiYWNrZmFjZS12aXNpYmlsaXR5OiBoaWRkZW47XG59XG5cbi5zbGlkZS1vdXQtcmlnaHQubXVpLWxlYXZlLm11aS1sZWF2ZS1hY3RpdmUge1xuICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoMTAwJSk7XG59XG5cbi5zbGlkZS1vdXQtdXAubXVpLWxlYXZlIHtcbiAgdHJhbnNpdGlvbi1kdXJhdGlvbjogNTAwbXM7XG4gIHRyYW5zaXRpb24tdGltaW5nLWZ1bmN0aW9uOiBsaW5lYXI7XG4gIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgwKTtcbiAgdHJhbnNpdGlvbi1wcm9wZXJ0eTogdHJhbnNmb3JtLCBvcGFjaXR5O1xuICBiYWNrZmFjZS12aXNpYmlsaXR5OiBoaWRkZW47XG59XG5cbi5zbGlkZS1vdXQtdXAubXVpLWxlYXZlLm11aS1sZWF2ZS1hY3RpdmUge1xuICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTEwMCUpO1xufVxuXG4uc2xpZGUtb3V0LWxlZnQubXVpLWxlYXZlIHtcbiAgdHJhbnNpdGlvbi1kdXJhdGlvbjogNTAwbXM7XG4gIHRyYW5zaXRpb24tdGltaW5nLWZ1bmN0aW9uOiBsaW5lYXI7XG4gIHRyYW5zZm9ybTogdHJhbnNsYXRlWCgwKTtcbiAgdHJhbnNpdGlvbi1wcm9wZXJ0eTogdHJhbnNmb3JtLCBvcGFjaXR5O1xuICBiYWNrZmFjZS12aXNpYmlsaXR5OiBoaWRkZW47XG59XG5cbi5zbGlkZS1vdXQtbGVmdC5tdWktbGVhdmUubXVpLWxlYXZlLWFjdGl2ZSB7XG4gIHRyYW5zZm9ybTogdHJhbnNsYXRlWCgtMTAwJSk7XG59XG5cbi5mYWRlLWluLm11aS1lbnRlciB7XG4gIHRyYW5zaXRpb24tZHVyYXRpb246IDUwMG1zO1xuICB0cmFuc2l0aW9uLXRpbWluZy1mdW5jdGlvbjogbGluZWFyO1xuICBvcGFjaXR5OiAwO1xuICB0cmFuc2l0aW9uLXByb3BlcnR5OiBvcGFjaXR5O1xufVxuXG4uZmFkZS1pbi5tdWktZW50ZXIubXVpLWVudGVyLWFjdGl2ZSB7XG4gIG9wYWNpdHk6IDE7XG59XG5cbi5mYWRlLW91dC5tdWktbGVhdmUge1xuICB0cmFuc2l0aW9uLWR1cmF0aW9uOiA1MDBtcztcbiAgdHJhbnNpdGlvbi10aW1pbmctZnVuY3Rpb246IGxpbmVhcjtcbiAgb3BhY2l0eTogMTtcbiAgdHJhbnNpdGlvbi1wcm9wZXJ0eTogb3BhY2l0eTtcbn1cblxuLmZhZGUtb3V0Lm11aS1sZWF2ZS5tdWktbGVhdmUtYWN0aXZlIHtcbiAgb3BhY2l0eTogMDtcbn1cblxuLmhpbmdlLWluLWZyb20tdG9wLm11aS1lbnRlciB7XG4gIHRyYW5zaXRpb24tZHVyYXRpb246IDUwMG1zO1xuICB0cmFuc2l0aW9uLXRpbWluZy1mdW5jdGlvbjogbGluZWFyO1xuICB0cmFuc2Zvcm06IHBlcnNwZWN0aXZlKDIwMDBweCkgcm90YXRlWCgtOTBkZWcpO1xuICB0cmFuc2Zvcm0tb3JpZ2luOiB0b3A7XG4gIHRyYW5zaXRpb24tcHJvcGVydHk6IHRyYW5zZm9ybSwgb3BhY2l0eTtcbiAgb3BhY2l0eTogMDtcbn1cblxuLmhpbmdlLWluLWZyb20tdG9wLm11aS1lbnRlci5tdWktZW50ZXItYWN0aXZlIHtcbiAgdHJhbnNmb3JtOiBwZXJzcGVjdGl2ZSgyMDAwcHgpIHJvdGF0ZSgwZGVnKTtcbiAgb3BhY2l0eTogMTtcbn1cblxuLmhpbmdlLWluLWZyb20tcmlnaHQubXVpLWVudGVyIHtcbiAgdHJhbnNpdGlvbi1kdXJhdGlvbjogNTAwbXM7XG4gIHRyYW5zaXRpb24tdGltaW5nLWZ1bmN0aW9uOiBsaW5lYXI7XG4gIHRyYW5zZm9ybTogcGVyc3BlY3RpdmUoMjAwMHB4KSByb3RhdGVZKC05MGRlZyk7XG4gIHRyYW5zZm9ybS1vcmlnaW46IHJpZ2h0O1xuICB0cmFuc2l0aW9uLXByb3BlcnR5OiB0cmFuc2Zvcm0sIG9wYWNpdHk7XG4gIG9wYWNpdHk6IDA7XG59XG5cbi5oaW5nZS1pbi1mcm9tLXJpZ2h0Lm11aS1lbnRlci5tdWktZW50ZXItYWN0aXZlIHtcbiAgdHJhbnNmb3JtOiBwZXJzcGVjdGl2ZSgyMDAwcHgpIHJvdGF0ZSgwZGVnKTtcbiAgb3BhY2l0eTogMTtcbn1cblxuLmhpbmdlLWluLWZyb20tYm90dG9tLm11aS1lbnRlciB7XG4gIHRyYW5zaXRpb24tZHVyYXRpb246IDUwMG1zO1xuICB0cmFuc2l0aW9uLXRpbWluZy1mdW5jdGlvbjogbGluZWFyO1xuICB0cmFuc2Zvcm06IHBlcnNwZWN0aXZlKDIwMDBweCkgcm90YXRlWCg5MGRlZyk7XG4gIHRyYW5zZm9ybS1vcmlnaW46IGJvdHRvbTtcbiAgdHJhbnNpdGlvbi1wcm9wZXJ0eTogdHJhbnNmb3JtLCBvcGFjaXR5O1xuICBvcGFjaXR5OiAwO1xufVxuXG4uaGluZ2UtaW4tZnJvbS1ib3R0b20ubXVpLWVudGVyLm11aS1lbnRlci1hY3RpdmUge1xuICB0cmFuc2Zvcm06IHBlcnNwZWN0aXZlKDIwMDBweCkgcm90YXRlKDBkZWcpO1xuICBvcGFjaXR5OiAxO1xufVxuXG4uaGluZ2UtaW4tZnJvbS1sZWZ0Lm11aS1lbnRlciB7XG4gIHRyYW5zaXRpb24tZHVyYXRpb246IDUwMG1zO1xuICB0cmFuc2l0aW9uLXRpbWluZy1mdW5jdGlvbjogbGluZWFyO1xuICB0cmFuc2Zvcm06IHBlcnNwZWN0aXZlKDIwMDBweCkgcm90YXRlWSg5MGRlZyk7XG4gIHRyYW5zZm9ybS1vcmlnaW46IGxlZnQ7XG4gIHRyYW5zaXRpb24tcHJvcGVydHk6IHRyYW5zZm9ybSwgb3BhY2l0eTtcbiAgb3BhY2l0eTogMDtcbn1cblxuLmhpbmdlLWluLWZyb20tbGVmdC5tdWktZW50ZXIubXVpLWVudGVyLWFjdGl2ZSB7XG4gIHRyYW5zZm9ybTogcGVyc3BlY3RpdmUoMjAwMHB4KSByb3RhdGUoMGRlZyk7XG4gIG9wYWNpdHk6IDE7XG59XG5cbi5oaW5nZS1pbi1mcm9tLW1pZGRsZS14Lm11aS1lbnRlciB7XG4gIHRyYW5zaXRpb24tZHVyYXRpb246IDUwMG1zO1xuICB0cmFuc2l0aW9uLXRpbWluZy1mdW5jdGlvbjogbGluZWFyO1xuICB0cmFuc2Zvcm06IHBlcnNwZWN0aXZlKDIwMDBweCkgcm90YXRlWCgtOTBkZWcpO1xuICB0cmFuc2Zvcm0tb3JpZ2luOiBjZW50ZXI7XG4gIHRyYW5zaXRpb24tcHJvcGVydHk6IHRyYW5zZm9ybSwgb3BhY2l0eTtcbiAgb3BhY2l0eTogMDtcbn1cblxuLmhpbmdlLWluLWZyb20tbWlkZGxlLXgubXVpLWVudGVyLm11aS1lbnRlci1hY3RpdmUge1xuICB0cmFuc2Zvcm06IHBlcnNwZWN0aXZlKDIwMDBweCkgcm90YXRlKDBkZWcpO1xuICBvcGFjaXR5OiAxO1xufVxuXG4uaGluZ2UtaW4tZnJvbS1taWRkbGUteS5tdWktZW50ZXIge1xuICB0cmFuc2l0aW9uLWR1cmF0aW9uOiA1MDBtcztcbiAgdHJhbnNpdGlvbi10aW1pbmctZnVuY3Rpb246IGxpbmVhcjtcbiAgdHJhbnNmb3JtOiBwZXJzcGVjdGl2ZSgyMDAwcHgpIHJvdGF0ZVkoLTkwZGVnKTtcbiAgdHJhbnNmb3JtLW9yaWdpbjogY2VudGVyO1xuICB0cmFuc2l0aW9uLXByb3BlcnR5OiB0cmFuc2Zvcm0sIG9wYWNpdHk7XG4gIG9wYWNpdHk6IDA7XG59XG5cbi5oaW5nZS1pbi1mcm9tLW1pZGRsZS15Lm11aS1lbnRlci5tdWktZW50ZXItYWN0aXZlIHtcbiAgdHJhbnNmb3JtOiBwZXJzcGVjdGl2ZSgyMDAwcHgpIHJvdGF0ZSgwZGVnKTtcbiAgb3BhY2l0eTogMTtcbn1cblxuLmhpbmdlLW91dC1mcm9tLXRvcC5tdWktbGVhdmUge1xuICB0cmFuc2l0aW9uLWR1cmF0aW9uOiA1MDBtcztcbiAgdHJhbnNpdGlvbi10aW1pbmctZnVuY3Rpb246IGxpbmVhcjtcbiAgdHJhbnNmb3JtOiBwZXJzcGVjdGl2ZSgyMDAwcHgpIHJvdGF0ZSgwZGVnKTtcbiAgdHJhbnNmb3JtLW9yaWdpbjogdG9wO1xuICB0cmFuc2l0aW9uLXByb3BlcnR5OiB0cmFuc2Zvcm0sIG9wYWNpdHk7XG4gIG9wYWNpdHk6IDE7XG59XG5cbi5oaW5nZS1vdXQtZnJvbS10b3AubXVpLWxlYXZlLm11aS1sZWF2ZS1hY3RpdmUge1xuICB0cmFuc2Zvcm06IHBlcnNwZWN0aXZlKDIwMDBweCkgcm90YXRlWCgtOTBkZWcpO1xuICBvcGFjaXR5OiAwO1xufVxuXG4uaGluZ2Utb3V0LWZyb20tcmlnaHQubXVpLWxlYXZlIHtcbiAgdHJhbnNpdGlvbi1kdXJhdGlvbjogNTAwbXM7XG4gIHRyYW5zaXRpb24tdGltaW5nLWZ1bmN0aW9uOiBsaW5lYXI7XG4gIHRyYW5zZm9ybTogcGVyc3BlY3RpdmUoMjAwMHB4KSByb3RhdGUoMGRlZyk7XG4gIHRyYW5zZm9ybS1vcmlnaW46IHJpZ2h0O1xuICB0cmFuc2l0aW9uLXByb3BlcnR5OiB0cmFuc2Zvcm0sIG9wYWNpdHk7XG4gIG9wYWNpdHk6IDE7XG59XG5cbi5oaW5nZS1vdXQtZnJvbS1yaWdodC5tdWktbGVhdmUubXVpLWxlYXZlLWFjdGl2ZSB7XG4gIHRyYW5zZm9ybTogcGVyc3BlY3RpdmUoMjAwMHB4KSByb3RhdGVZKC05MGRlZyk7XG4gIG9wYWNpdHk6IDA7XG59XG5cbi5oaW5nZS1vdXQtZnJvbS1ib3R0b20ubXVpLWxlYXZlIHtcbiAgdHJhbnNpdGlvbi1kdXJhdGlvbjogNTAwbXM7XG4gIHRyYW5zaXRpb24tdGltaW5nLWZ1bmN0aW9uOiBsaW5lYXI7XG4gIHRyYW5zZm9ybTogcGVyc3BlY3RpdmUoMjAwMHB4KSByb3RhdGUoMGRlZyk7XG4gIHRyYW5zZm9ybS1vcmlnaW46IGJvdHRvbTtcbiAgdHJhbnNpdGlvbi1wcm9wZXJ0eTogdHJhbnNmb3JtLCBvcGFjaXR5O1xuICBvcGFjaXR5OiAxO1xufVxuXG4uaGluZ2Utb3V0LWZyb20tYm90dG9tLm11aS1sZWF2ZS5tdWktbGVhdmUtYWN0aXZlIHtcbiAgdHJhbnNmb3JtOiBwZXJzcGVjdGl2ZSgyMDAwcHgpIHJvdGF0ZVgoOTBkZWcpO1xuICBvcGFjaXR5OiAwO1xufVxuXG4uaGluZ2Utb3V0LWZyb20tbGVmdC5tdWktbGVhdmUge1xuICB0cmFuc2l0aW9uLWR1cmF0aW9uOiA1MDBtcztcbiAgdHJhbnNpdGlvbi10aW1pbmctZnVuY3Rpb246IGxpbmVhcjtcbiAgdHJhbnNmb3JtOiBwZXJzcGVjdGl2ZSgyMDAwcHgpIHJvdGF0ZSgwZGVnKTtcbiAgdHJhbnNmb3JtLW9yaWdpbjogbGVmdDtcbiAgdHJhbnNpdGlvbi1wcm9wZXJ0eTogdHJhbnNmb3JtLCBvcGFjaXR5O1xuICBvcGFjaXR5OiAxO1xufVxuXG4uaGluZ2Utb3V0LWZyb20tbGVmdC5tdWktbGVhdmUubXVpLWxlYXZlLWFjdGl2ZSB7XG4gIHRyYW5zZm9ybTogcGVyc3BlY3RpdmUoMjAwMHB4KSByb3RhdGVZKDkwZGVnKTtcbiAgb3BhY2l0eTogMDtcbn1cblxuLmhpbmdlLW91dC1mcm9tLW1pZGRsZS14Lm11aS1sZWF2ZSB7XG4gIHRyYW5zaXRpb24tZHVyYXRpb246IDUwMG1zO1xuICB0cmFuc2l0aW9uLXRpbWluZy1mdW5jdGlvbjogbGluZWFyO1xuICB0cmFuc2Zvcm06IHBlcnNwZWN0aXZlKDIwMDBweCkgcm90YXRlKDBkZWcpO1xuICB0cmFuc2Zvcm0tb3JpZ2luOiBjZW50ZXI7XG4gIHRyYW5zaXRpb24tcHJvcGVydHk6IHRyYW5zZm9ybSwgb3BhY2l0eTtcbiAgb3BhY2l0eTogMTtcbn1cblxuLmhpbmdlLW91dC1mcm9tLW1pZGRsZS14Lm11aS1sZWF2ZS5tdWktbGVhdmUtYWN0aXZlIHtcbiAgdHJhbnNmb3JtOiBwZXJzcGVjdGl2ZSgyMDAwcHgpIHJvdGF0ZVgoLTkwZGVnKTtcbiAgb3BhY2l0eTogMDtcbn1cblxuLmhpbmdlLW91dC1mcm9tLW1pZGRsZS15Lm11aS1sZWF2ZSB7XG4gIHRyYW5zaXRpb24tZHVyYXRpb246IDUwMG1zO1xuICB0cmFuc2l0aW9uLXRpbWluZy1mdW5jdGlvbjogbGluZWFyO1xuICB0cmFuc2Zvcm06IHBlcnNwZWN0aXZlKDIwMDBweCkgcm90YXRlKDBkZWcpO1xuICB0cmFuc2Zvcm0tb3JpZ2luOiBjZW50ZXI7XG4gIHRyYW5zaXRpb24tcHJvcGVydHk6IHRyYW5zZm9ybSwgb3BhY2l0eTtcbiAgb3BhY2l0eTogMTtcbn1cblxuLmhpbmdlLW91dC1mcm9tLW1pZGRsZS15Lm11aS1sZWF2ZS5tdWktbGVhdmUtYWN0aXZlIHtcbiAgdHJhbnNmb3JtOiBwZXJzcGVjdGl2ZSgyMDAwcHgpIHJvdGF0ZVkoLTkwZGVnKTtcbiAgb3BhY2l0eTogMDtcbn1cblxuLnNjYWxlLWluLXVwLm11aS1lbnRlciB7XG4gIHRyYW5zaXRpb24tZHVyYXRpb246IDUwMG1zO1xuICB0cmFuc2l0aW9uLXRpbWluZy1mdW5jdGlvbjogbGluZWFyO1xuICB0cmFuc2Zvcm06IHNjYWxlKDAuNSk7XG4gIHRyYW5zaXRpb24tcHJvcGVydHk6IHRyYW5zZm9ybSwgb3BhY2l0eTtcbiAgb3BhY2l0eTogMDtcbn1cblxuLnNjYWxlLWluLXVwLm11aS1lbnRlci5tdWktZW50ZXItYWN0aXZlIHtcbiAgdHJhbnNmb3JtOiBzY2FsZSgxKTtcbiAgb3BhY2l0eTogMTtcbn1cblxuLnNjYWxlLWluLWRvd24ubXVpLWVudGVyIHtcbiAgdHJhbnNpdGlvbi1kdXJhdGlvbjogNTAwbXM7XG4gIHRyYW5zaXRpb24tdGltaW5nLWZ1bmN0aW9uOiBsaW5lYXI7XG4gIHRyYW5zZm9ybTogc2NhbGUoMS41KTtcbiAgdHJhbnNpdGlvbi1wcm9wZXJ0eTogdHJhbnNmb3JtLCBvcGFjaXR5O1xuICBvcGFjaXR5OiAwO1xufVxuXG4uc2NhbGUtaW4tZG93bi5tdWktZW50ZXIubXVpLWVudGVyLWFjdGl2ZSB7XG4gIHRyYW5zZm9ybTogc2NhbGUoMSk7XG4gIG9wYWNpdHk6IDE7XG59XG5cbi5zY2FsZS1vdXQtdXAubXVpLWxlYXZlIHtcbiAgdHJhbnNpdGlvbi1kdXJhdGlvbjogNTAwbXM7XG4gIHRyYW5zaXRpb24tdGltaW5nLWZ1bmN0aW9uOiBsaW5lYXI7XG4gIHRyYW5zZm9ybTogc2NhbGUoMSk7XG4gIHRyYW5zaXRpb24tcHJvcGVydHk6IHRyYW5zZm9ybSwgb3BhY2l0eTtcbiAgb3BhY2l0eTogMTtcbn1cblxuLnNjYWxlLW91dC11cC5tdWktbGVhdmUubXVpLWxlYXZlLWFjdGl2ZSB7XG4gIHRyYW5zZm9ybTogc2NhbGUoMS41KTtcbiAgb3BhY2l0eTogMDtcbn1cblxuLnNjYWxlLW91dC1kb3duLm11aS1sZWF2ZSB7XG4gIHRyYW5zaXRpb24tZHVyYXRpb246IDUwMG1zO1xuICB0cmFuc2l0aW9uLXRpbWluZy1mdW5jdGlvbjogbGluZWFyO1xuICB0cmFuc2Zvcm06IHNjYWxlKDEpO1xuICB0cmFuc2l0aW9uLXByb3BlcnR5OiB0cmFuc2Zvcm0sIG9wYWNpdHk7XG4gIG9wYWNpdHk6IDE7XG59XG5cbi5zY2FsZS1vdXQtZG93bi5tdWktbGVhdmUubXVpLWxlYXZlLWFjdGl2ZSB7XG4gIHRyYW5zZm9ybTogc2NhbGUoMC41KTtcbiAgb3BhY2l0eTogMDtcbn1cblxuLnNwaW4taW4ubXVpLWVudGVyIHtcbiAgdHJhbnNpdGlvbi1kdXJhdGlvbjogNTAwbXM7XG4gIHRyYW5zaXRpb24tdGltaW5nLWZ1bmN0aW9uOiBsaW5lYXI7XG4gIHRyYW5zZm9ybTogcm90YXRlKC0wLjc1dHVybik7XG4gIHRyYW5zaXRpb24tcHJvcGVydHk6IHRyYW5zZm9ybSwgb3BhY2l0eTtcbiAgb3BhY2l0eTogMDtcbn1cblxuLnNwaW4taW4ubXVpLWVudGVyLm11aS1lbnRlci1hY3RpdmUge1xuICB0cmFuc2Zvcm06IHJvdGF0ZSgwKTtcbiAgb3BhY2l0eTogMTtcbn1cblxuLnNwaW4tb3V0Lm11aS1sZWF2ZSB7XG4gIHRyYW5zaXRpb24tZHVyYXRpb246IDUwMG1zO1xuICB0cmFuc2l0aW9uLXRpbWluZy1mdW5jdGlvbjogbGluZWFyO1xuICB0cmFuc2Zvcm06IHJvdGF0ZSgwKTtcbiAgdHJhbnNpdGlvbi1wcm9wZXJ0eTogdHJhbnNmb3JtLCBvcGFjaXR5O1xuICBvcGFjaXR5OiAxO1xufVxuXG4uc3Bpbi1vdXQubXVpLWxlYXZlLm11aS1sZWF2ZS1hY3RpdmUge1xuICB0cmFuc2Zvcm06IHJvdGF0ZSgwLjc1dHVybik7XG4gIG9wYWNpdHk6IDA7XG59XG5cbi5zcGluLWluLWNjdy5tdWktZW50ZXIge1xuICB0cmFuc2l0aW9uLWR1cmF0aW9uOiA1MDBtcztcbiAgdHJhbnNpdGlvbi10aW1pbmctZnVuY3Rpb246IGxpbmVhcjtcbiAgdHJhbnNmb3JtOiByb3RhdGUoMC43NXR1cm4pO1xuICB0cmFuc2l0aW9uLXByb3BlcnR5OiB0cmFuc2Zvcm0sIG9wYWNpdHk7XG4gIG9wYWNpdHk6IDA7XG59XG5cbi5zcGluLWluLWNjdy5tdWktZW50ZXIubXVpLWVudGVyLWFjdGl2ZSB7XG4gIHRyYW5zZm9ybTogcm90YXRlKDApO1xuICBvcGFjaXR5OiAxO1xufVxuXG4uc3Bpbi1vdXQtY2N3Lm11aS1sZWF2ZSB7XG4gIHRyYW5zaXRpb24tZHVyYXRpb246IDUwMG1zO1xuICB0cmFuc2l0aW9uLXRpbWluZy1mdW5jdGlvbjogbGluZWFyO1xuICB0cmFuc2Zvcm06IHJvdGF0ZSgwKTtcbiAgdHJhbnNpdGlvbi1wcm9wZXJ0eTogdHJhbnNmb3JtLCBvcGFjaXR5O1xuICBvcGFjaXR5OiAxO1xufVxuXG4uc3Bpbi1vdXQtY2N3Lm11aS1sZWF2ZS5tdWktbGVhdmUtYWN0aXZlIHtcbiAgdHJhbnNmb3JtOiByb3RhdGUoLTAuNzV0dXJuKTtcbiAgb3BhY2l0eTogMDtcbn1cblxuLnNsb3cge1xuICB0cmFuc2l0aW9uLWR1cmF0aW9uOiA3NTBtcyAhaW1wb3J0YW50O1xufVxuXG4uZmFzdCB7XG4gIHRyYW5zaXRpb24tZHVyYXRpb246IDI1MG1zICFpbXBvcnRhbnQ7XG59XG5cbi5saW5lYXIge1xuICB0cmFuc2l0aW9uLXRpbWluZy1mdW5jdGlvbjogbGluZWFyICFpbXBvcnRhbnQ7XG59XG5cbi5lYXNlIHtcbiAgdHJhbnNpdGlvbi10aW1pbmctZnVuY3Rpb246IGVhc2UgIWltcG9ydGFudDtcbn1cblxuLmVhc2UtaW4ge1xuICB0cmFuc2l0aW9uLXRpbWluZy1mdW5jdGlvbjogZWFzZS1pbiAhaW1wb3J0YW50O1xufVxuXG4uZWFzZS1vdXQge1xuICB0cmFuc2l0aW9uLXRpbWluZy1mdW5jdGlvbjogZWFzZS1vdXQgIWltcG9ydGFudDtcbn1cblxuLmVhc2UtaW4tb3V0IHtcbiAgdHJhbnNpdGlvbi10aW1pbmctZnVuY3Rpb246IGVhc2UtaW4tb3V0ICFpbXBvcnRhbnQ7XG59XG5cbi5ib3VuY2UtaW4ge1xuICB0cmFuc2l0aW9uLXRpbWluZy1mdW5jdGlvbjogY3ViaWMtYmV6aWVyKDAuNDg1LCAwLjE1NSwgMC4yNCwgMS4yNDUpICFpbXBvcnRhbnQ7XG59XG5cbi5ib3VuY2Utb3V0IHtcbiAgdHJhbnNpdGlvbi10aW1pbmctZnVuY3Rpb246IGN1YmljLWJlemllcigwLjQ4NSwgMC4xNTUsIDAuNTE1LCAwLjg0NSkgIWltcG9ydGFudDtcbn1cblxuLmJvdW5jZS1pbi1vdXQge1xuICB0cmFuc2l0aW9uLXRpbWluZy1mdW5jdGlvbjogY3ViaWMtYmV6aWVyKDAuNzYsIC0wLjI0NSwgMC4yNCwgMS4yNDUpICFpbXBvcnRhbnQ7XG59XG5cbi5zaG9ydC1kZWxheSB7XG4gIHRyYW5zaXRpb24tZGVsYXk6IDMwMG1zICFpbXBvcnRhbnQ7XG59XG5cbi5sb25nLWRlbGF5IHtcbiAgdHJhbnNpdGlvbi1kZWxheTogNzAwbXMgIWltcG9ydGFudDtcbn1cblxuLnNoYWtlIHtcbiAgYW5pbWF0aW9uLW5hbWU6IHNoYWtlLTc7XG59XG5cbkBrZXlmcmFtZXMgc2hha2UtNyB7XG4gIDAlLCAxMCUsIDIwJSwgMzAlLCA0MCUsIDUwJSwgNjAlLCA3MCUsIDgwJSwgOTAlIHtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoNyUpO1xuICB9XG4gIDUlLCAxNSUsIDI1JSwgMzUlLCA0NSUsIDU1JSwgNjUlLCA3NSUsIDg1JSwgOTUlIHtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoLTclKTtcbiAgfVxufVxuXG4uc3Bpbi1jdyB7XG4gIGFuaW1hdGlvbi1uYW1lOiBzcGluLWN3LTF0dXJuO1xufVxuXG5Aa2V5ZnJhbWVzIHNwaW4tY3ctMXR1cm4ge1xuICAwJSB7XG4gICAgdHJhbnNmb3JtOiByb3RhdGUoLTF0dXJuKTtcbiAgfVxuICAxMDAlIHtcbiAgICB0cmFuc2Zvcm06IHJvdGF0ZSgwKTtcbiAgfVxufVxuXG4uc3Bpbi1jY3cge1xuICBhbmltYXRpb24tbmFtZTogc3Bpbi1jdy0xdHVybjtcbn1cblxuQGtleWZyYW1lcyBzcGluLWN3LTF0dXJuIHtcbiAgMCUge1xuICAgIHRyYW5zZm9ybTogcm90YXRlKDApO1xuICB9XG4gIDEwMCUge1xuICAgIHRyYW5zZm9ybTogcm90YXRlKDF0dXJuKTtcbiAgfVxufVxuXG4ud2lnZ2xlIHtcbiAgYW5pbWF0aW9uLW5hbWU6IHdpZ2dsZS03ZGVnO1xufVxuXG5Aa2V5ZnJhbWVzIHdpZ2dsZS03ZGVnIHtcbiAgNDAlLCA1MCUsIDYwJSB7XG4gICAgdHJhbnNmb3JtOiByb3RhdGUoN2RlZyk7XG4gIH1cbiAgMzUlLCA0NSUsIDU1JSwgNjUlIHtcbiAgICB0cmFuc2Zvcm06IHJvdGF0ZSgtN2RlZyk7XG4gIH1cbiAgMCUsIDMwJSwgNzAlLCAxMDAlIHtcbiAgICB0cmFuc2Zvcm06IHJvdGF0ZSgwKTtcbiAgfVxufVxuXG4uc2hha2UsXG4uc3Bpbi1jdyxcbi5zcGluLWNjdyxcbi53aWdnbGUge1xuICBhbmltYXRpb24tZHVyYXRpb246IDUwMG1zO1xufVxuXG4uaW5maW5pdGUge1xuICBhbmltYXRpb24taXRlcmF0aW9uLWNvdW50OiBpbmZpbml0ZTtcbn1cblxuLnNsb3cge1xuICBhbmltYXRpb24tZHVyYXRpb246IDc1MG1zICFpbXBvcnRhbnQ7XG59XG5cbi5mYXN0IHtcbiAgYW5pbWF0aW9uLWR1cmF0aW9uOiAyNTBtcyAhaW1wb3J0YW50O1xufVxuXG4ubGluZWFyIHtcbiAgYW5pbWF0aW9uLXRpbWluZy1mdW5jdGlvbjogbGluZWFyICFpbXBvcnRhbnQ7XG59XG5cbi5lYXNlIHtcbiAgYW5pbWF0aW9uLXRpbWluZy1mdW5jdGlvbjogZWFzZSAhaW1wb3J0YW50O1xufVxuXG4uZWFzZS1pbiB7XG4gIGFuaW1hdGlvbi10aW1pbmctZnVuY3Rpb246IGVhc2UtaW4gIWltcG9ydGFudDtcbn1cblxuLmVhc2Utb3V0IHtcbiAgYW5pbWF0aW9uLXRpbWluZy1mdW5jdGlvbjogZWFzZS1vdXQgIWltcG9ydGFudDtcbn1cblxuLmVhc2UtaW4tb3V0IHtcbiAgYW5pbWF0aW9uLXRpbWluZy1mdW5jdGlvbjogZWFzZS1pbi1vdXQgIWltcG9ydGFudDtcbn1cblxuLmJvdW5jZS1pbiB7XG4gIGFuaW1hdGlvbi10aW1pbmctZnVuY3Rpb246IGN1YmljLWJlemllcigwLjQ4NSwgMC4xNTUsIDAuMjQsIDEuMjQ1KSAhaW1wb3J0YW50O1xufVxuXG4uYm91bmNlLW91dCB7XG4gIGFuaW1hdGlvbi10aW1pbmctZnVuY3Rpb246IGN1YmljLWJlemllcigwLjQ4NSwgMC4xNTUsIDAuNTE1LCAwLjg0NSkgIWltcG9ydGFudDtcbn1cblxuLmJvdW5jZS1pbi1vdXQge1xuICBhbmltYXRpb24tdGltaW5nLWZ1bmN0aW9uOiBjdWJpYy1iZXppZXIoMC43NiwgLTAuMjQ1LCAwLjI0LCAxLjI0NSkgIWltcG9ydGFudDtcbn1cblxuLnNob3J0LWRlbGF5IHtcbiAgYW5pbWF0aW9uLWRlbGF5OiAzMDBtcyAhaW1wb3J0YW50O1xufVxuXG4ubG9uZy1kZWxheSB7XG4gIGFuaW1hdGlvbi1kZWxheTogNzAwbXMgIWltcG9ydGFudDtcbn1cblxuLypcbkBpbXBvcnQgdGhpcyBmaWxlIGRpcmVjdGx5IGludG8geW91ciBleGlzdGluZyBTY3NzIGZpbGVzIHRvIHVzZSB0aGVzZSBtaXhpbnNcbiovXG4uYnNpR3JhcGhpYyB7XG4gIHdpZHRoOiAxODZweDtcbiAgaGVpZ2h0OiA5MnB4O1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIGJhY2tncm91bmQ6IHVybChcIi8vc3RhdGljLnJhcGlkb25saW5lLmNvbS9jc3Mvc3ByaXRlcy80LjcuMS9zcHJpdGUuc3ByaXRlLnBuZ1wiKSAtMTBweCAtMTBweCBuby1yZXBlYXQ7XG59XG5cbi5jYWxpYnJhdGlvbiB7XG4gIHdpZHRoOiA2MHB4O1xuICBoZWlnaHQ6IDU2cHg7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgYmFja2dyb3VuZDogdXJsKFwiLy9zdGF0aWMucmFwaWRvbmxpbmUuY29tL2Nzcy9zcHJpdGVzLzQuNy4xL3Nwcml0ZS5zcHJpdGUucG5nXCIpIC0yMDZweCAtMTBweCBuby1yZXBlYXQ7XG59XG5cbi5jYXJ0aWNvbiB7XG4gIHdpZHRoOiA0OXB4O1xuICBoZWlnaHQ6IDQ1cHg7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgYmFja2dyb3VuZDogdXJsKFwiLy9zdGF0aWMucmFwaWRvbmxpbmUuY29tL2Nzcy9zcHJpdGVzLzQuNy4xL3Nwcml0ZS5zcHJpdGUucG5nXCIpIC0yNzZweCAtMTBweCBuby1yZXBlYXQ7XG59XG5cbi5jYXJ0SWNvblNtYWxsIHtcbiAgd2lkdGg6IDM0cHg7XG4gIGhlaWdodDogMzJweDtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICBiYWNrZ3JvdW5kOiB1cmwoXCIvL3N0YXRpYy5yYXBpZG9ubGluZS5jb20vY3NzL3Nwcml0ZXMvNC43LjEvc3ByaXRlLnNwcml0ZS5wbmdcIikgLTMzNXB4IC0xMHB4IG5vLXJlcGVhdDtcbn1cblxuLkNsZWFyYW5jZSB7XG4gIHdpZHRoOiA0MHB4O1xuICBoZWlnaHQ6IDU1cHg7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgYmFja2dyb3VuZDogdXJsKFwiLy9zdGF0aWMucmFwaWRvbmxpbmUuY29tL2Nzcy9zcHJpdGVzLzQuNy4xL3Nwcml0ZS5zcHJpdGUucG5nXCIpIC0zNzlweCAtMTBweCBuby1yZXBlYXQ7XG59XG5cbi5jb25yYWRGb290ZXIge1xuICB3aWR0aDogMjAwcHg7XG4gIGhlaWdodDogMTlweDtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICBiYWNrZ3JvdW5kOiB1cmwoXCIvL3N0YXRpYy5yYXBpZG9ubGluZS5jb20vY3NzL3Nwcml0ZXMvNC43LjEvc3ByaXRlLnNwcml0ZS5wbmdcIikgLTQyOXB4IC0xMHB4IG5vLXJlcGVhdDtcbn1cblxuLmVkdWNhdGlvbkxvZ28ge1xuICB3aWR0aDogMTI5cHg7XG4gIGhlaWdodDogNDVweDtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICBiYWNrZ3JvdW5kOiB1cmwoXCIvL3N0YXRpYy5yYXBpZG9ubGluZS5jb20vY3NzL3Nwcml0ZXMvNC43LjEvc3ByaXRlLnNwcml0ZS5wbmdcIikgLTYzOXB4IC0xMHB4IG5vLXJlcGVhdDtcbn1cblxuLmVkdWNhdGlvbkxvZ29TbWFsbCB7XG4gIHdpZHRoOiAxMTZweDtcbiAgaGVpZ2h0OiA0MHB4O1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIGJhY2tncm91bmQ6IHVybChcIi8vc3RhdGljLnJhcGlkb25saW5lLmNvbS9jc3Mvc3ByaXRlcy80LjcuMS9zcHJpdGUuc3ByaXRlLnBuZ1wiKSAtNzc4cHggLTEwcHggbm8tcmVwZWF0O1xufVxuXG4uZWR1Y2F0aW9uTG9nb1NtYWxsIHtcbiAgd2lkdGg6IDExNnB4O1xuICBoZWlnaHQ6IDQwcHg7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgYmFja2dyb3VuZDogdXJsKFwiLy9zdGF0aWMucmFwaWRvbmxpbmUuY29tL2Nzcy9zcHJpdGVzLzQuNy4xL3Nwcml0ZS5zcHJpdGUucG5nXCIpIC03NzhweCAtMTBweCBuby1yZXBlYXQ7XG59XG5cbi5mYWNlYm9va0ljb24ge1xuICB3aWR0aDogMzZweDtcbiAgaGVpZ2h0OiAzNnB4O1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIGJhY2tncm91bmQ6IHVybChcIi8vc3RhdGljLnJhcGlkb25saW5lLmNvbS9jc3Mvc3ByaXRlcy80LjcuMS9zcHJpdGUuc3ByaXRlLnBuZ1wiKSAtOTA0cHggLTEwcHggbm8tcmVwZWF0O1xufVxuXG4uaWNvbl9ldWZsYWcge1xuICB3aWR0aDogMTA4cHg7XG4gIGhlaWdodDogNjNweDtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICBiYWNrZ3JvdW5kOiB1cmwoXCIvL3N0YXRpYy5yYXBpZG9ubGluZS5jb20vY3NzL3Nwcml0ZXMvNC43LjEvc3ByaXRlLnNwcml0ZS5wbmdcIikgLTk1MHB4IC0xMHB4IG5vLXJlcGVhdDtcbn1cblxuLmljb25fbW9kdWxlXzNEX3BkZmxyZyB7XG4gIHdpZHRoOiA0MHB4O1xuICBoZWlnaHQ6IDQ3cHg7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgYmFja2dyb3VuZDogdXJsKFwiLy9zdGF0aWMucmFwaWRvbmxpbmUuY29tL2Nzcy9zcHJpdGVzLzQuNy4xL3Nwcml0ZS5zcHJpdGUucG5nXCIpIC0xMDY4cHggLTEwcHggbm8tcmVwZWF0O1xufVxuXG4uaWNvbl9tb2R1bGVfdGRfcGRmc20ge1xuICB3aWR0aDogMTRweDtcbiAgaGVpZ2h0OiAxNnB4O1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIGJhY2tncm91bmQ6IHVybChcIi8vc3RhdGljLnJhcGlkb25saW5lLmNvbS9jc3Mvc3ByaXRlcy80LjcuMS9zcHJpdGUuc3ByaXRlLnBuZ1wiKSAtMTExOHB4IC0xMHB4IG5vLXJlcGVhdDtcbn1cblxuLmljb25fbW9kdWxlX1RlY2huaWNhbC1TcGVjaWZpY2F0aW9uX3BkZmxyZyB7XG4gIHdpZHRoOiA0MHB4O1xuICBoZWlnaHQ6IDQ3cHg7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgYmFja2dyb3VuZDogdXJsKFwiLy9zdGF0aWMucmFwaWRvbmxpbmUuY29tL2Nzcy9zcHJpdGVzLzQuNy4xL3Nwcml0ZS5zcHJpdGUucG5nXCIpIC0xMTQycHggLTEwcHggbm8tcmVwZWF0O1xufVxuXG4uaWNvbl91a2ZsYWcge1xuICB3aWR0aDogMTA4cHg7XG4gIGhlaWdodDogNjNweDtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICBiYWNrZ3JvdW5kOiB1cmwoXCIvL3N0YXRpYy5yYXBpZG9ubGluZS5jb20vY3NzL3Nwcml0ZXMvNC43LjEvc3ByaXRlLnNwcml0ZS5wbmdcIikgLTExOTJweCAtMTBweCBuby1yZXBlYXQ7XG59XG5cbi5pY29uX3VzZmxhZyB7XG4gIHdpZHRoOiAxMDhweDtcbiAgaGVpZ2h0OiA2M3B4O1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIGJhY2tncm91bmQ6IHVybChcIi8vc3RhdGljLnJhcGlkb25saW5lLmNvbS9jc3Mvc3ByaXRlcy80LjcuMS9zcHJpdGUuc3ByaXRlLnBuZ1wiKSAtMTMxMHB4IC0xMHB4IG5vLXJlcGVhdDtcbn1cblxuLmluc3RhZ3JhbUljb24ge1xuICB3aWR0aDogMzZweDtcbiAgaGVpZ2h0OiAzNnB4O1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIGJhY2tncm91bmQ6IHVybChcIi8vc3RhdGljLnJhcGlkb25saW5lLmNvbS9jc3Mvc3ByaXRlcy80LjcuMS9zcHJpdGUuc3ByaXRlLnBuZ1wiKSAtMTQyOHB4IC0xMHB4IG5vLXJlcGVhdDtcbn1cblxuLmxpbmtlZGluSWNvbiB7XG4gIHdpZHRoOiAzNnB4O1xuICBoZWlnaHQ6IDM2cHg7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgYmFja2dyb3VuZDogdXJsKFwiLy9zdGF0aWMucmFwaWRvbmxpbmUuY29tL2Nzcy9zcHJpdGVzLzQuNy4xL3Nwcml0ZS5zcHJpdGUucG5nXCIpIC0xNDc0cHggLTEwcHggbm8tcmVwZWF0O1xufVxuXG4uTmV3IHtcbiAgd2lkdGg6IDU1cHg7XG4gIGhlaWdodDogNTVweDtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICBiYWNrZ3JvdW5kOiB1cmwoXCIvL3N0YXRpYy5yYXBpZG9ubGluZS5jb20vY3NzL3Nwcml0ZXMvNC43LjEvc3ByaXRlLnNwcml0ZS5wbmdcIikgLTE1MjBweCAtMTBweCBuby1yZXBlYXQ7XG59XG5cbi5wYXltZW50SWNvbnMge1xuICB3aWR0aDogMjU5cHg7XG4gIGhlaWdodDogMzBweDtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICBiYWNrZ3JvdW5kOiB1cmwoXCIvL3N0YXRpYy5yYXBpZG9ubGluZS5jb20vY3NzL3Nwcml0ZXMvNC43LjEvc3ByaXRlLnNwcml0ZS5wbmdcIikgLTE1ODVweCAtMTBweCBuby1yZXBlYXQ7XG59XG5cbi5wYXlwYWxsb2dvIHtcbiAgd2lkdGg6IDE0NXB4O1xuICBoZWlnaHQ6IDQycHg7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgYmFja2dyb3VuZDogdXJsKFwiLy9zdGF0aWMucmFwaWRvbmxpbmUuY29tL2Nzcy9zcHJpdGVzLzQuNy4xL3Nwcml0ZS5zcHJpdGUucG5nXCIpIC0xODU0cHggLTEwcHggbm8tcmVwZWF0O1xufVxuXG4ucmFwaWRhY2NvdW50IHtcbiAgd2lkdGg6IDEzNnB4O1xuICBoZWlnaHQ6IDMycHg7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgYmFja2dyb3VuZDogdXJsKFwiLy9zdGF0aWMucmFwaWRvbmxpbmUuY29tL2Nzcy9zcHJpdGVzLzQuNy4xL3Nwcml0ZS5zcHJpdGUucG5nXCIpIC0yMDA5cHggLTEwcHggbm8tcmVwZWF0O1xufVxuXG4ucmFwaWRMb2dvIHtcbiAgd2lkdGg6IDE0N3B4O1xuICBoZWlnaHQ6IDM4cHg7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgYmFja2dyb3VuZDogdXJsKFwiLy9zdGF0aWMucmFwaWRvbmxpbmUuY29tL2Nzcy9zcHJpdGVzLzQuNy4xL3Nwcml0ZS5zcHJpdGUucG5nXCIpIC0yMTU1cHggLTEwcHggbm8tcmVwZWF0O1xufVxuXG4ucmFwaWRMb2dvU21hbGwge1xuICB3aWR0aDogMTE2cHg7XG4gIGhlaWdodDogNDBweDtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICBiYWNrZ3JvdW5kOiB1cmwoXCIvL3N0YXRpYy5yYXBpZG9ubGluZS5jb20vY3NzL3Nwcml0ZXMvNC43LjEvc3ByaXRlLnNwcml0ZS5wbmdcIikgLTIzMTJweCAtMTBweCBuby1yZXBlYXQ7XG59XG5cbi5TcGVjaWFsT2ZmZXIge1xuICB3aWR0aDogNTVweDtcbiAgaGVpZ2h0OiA1M3B4O1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIGJhY2tncm91bmQ6IHVybChcIi8vc3RhdGljLnJhcGlkb25saW5lLmNvbS9jc3Mvc3ByaXRlcy80LjcuMS9zcHJpdGUuc3ByaXRlLnBuZ1wiKSAtMjQzOHB4IC0xMHB4IG5vLXJlcGVhdDtcbn1cblxuLnR3aXR0ZXJJY29uIHtcbiAgd2lkdGg6IDM2cHg7XG4gIGhlaWdodDogMzZweDtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICBiYWNrZ3JvdW5kOiB1cmwoXCIvL3N0YXRpYy5yYXBpZG9ubGluZS5jb20vY3NzL3Nwcml0ZXMvNC43LjEvc3ByaXRlLnNwcml0ZS5wbmdcIikgLTI1MDNweCAtMTBweCBuby1yZXBlYXQ7XG59XG5cbi51bmlMb2dvIHtcbiAgd2lkdGg6IDEyOXB4O1xuICBoZWlnaHQ6IDQ1cHg7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgYmFja2dyb3VuZDogdXJsKFwiLy9zdGF0aWMucmFwaWRvbmxpbmUuY29tL2Nzcy9zcHJpdGVzLzQuNy4xL3Nwcml0ZS5zcHJpdGUucG5nXCIpIC0yNTQ5cHggLTEwcHggbm8tcmVwZWF0O1xufVxuXG4udW5pTG9nb1NtYWxsIHtcbiAgd2lkdGg6IDExNnB4O1xuICBoZWlnaHQ6IDQwcHg7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgYmFja2dyb3VuZDogdXJsKFwiLy9zdGF0aWMucmFwaWRvbmxpbmUuY29tL2Nzcy9zcHJpdGVzLzQuNy4xL3Nwcml0ZS5zcHJpdGUucG5nXCIpIC0yNjg4cHggLTEwcHggbm8tcmVwZWF0O1xufVxuXG4ueW91dHViZUljb24ge1xuICB3aWR0aDogMzZweDtcbiAgaGVpZ2h0OiAzNnB4O1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIGJhY2tncm91bmQ6IHVybChcIi8vc3RhdGljLnJhcGlkb25saW5lLmNvbS9jc3Mvc3ByaXRlcy80LjcuMS9zcHJpdGUuc3ByaXRlLnBuZ1wiKSAtMjgxNHB4IC0xMHB4IG5vLXJlcGVhdDtcbn1cblxuQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAuZml4ZWRXaWR0aCB7XG4gICAgbWluLWhlaWdodDogNTAwcHg7XG4gIH1cbn1cblxuLmJ1dHRvbi5hY2NlbnQsIC5idXR0b24ubGlnaHQtZ3JheSB7XG4gIGNvbG9yOiAjMGEwYTBhO1xufVxuXG4vKmR1cGxpY2F0ZXMgb2YgUERGIGljb24qL1xuLyouaWNvbl9tb2R1bGVfTWFudWFsX3BkZmxyZywgLmljb25fbW9kdWxlX1JFQUNILUNlcnRpZmljYXRlX3BkZmxyZywgLmljb25fbW9kdWxlX0hlYWx0aC1hbmQtU2FmZXR5X3BkZmxyZywgLmljb25fbW9kdWxlX0RvY3VtZW50LU9mLUNvbmZvcm1pdHlfcGRmbHJnIHtcblx0QGluY2x1ZGUgc3ByaXRlKCRpY29uLW1vZHVsZS10ZWNobmljYWwtc3BlY2lmaWNhdGlvbi1wZGZscmcpOyAgXG59Ki9cbi5pY29uX3JvaHNleGVtcHQge1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIGJhY2tncm91bmQ6IGdyZWVuO1xuICBjb2xvcjogI2ZmZjtcbiAgZm9udC1zaXplOiAxZW07XG4gIGZvbnQtd2VpZ2h0OiBib2xkO1xuICBsaW5lLWhlaWdodDogMS40ZW07XG4gIGJvcmRlci1yYWRpdXM6IDNlbTtcbiAgLW1vei1ib3JkZXItcmFkaXVzOiAzZW07XG4gIC13ZWJraXQtYm9yZGVyLXJhZGl1czogM2VtO1xuICBtYXJnaW4tbGVmdDogM3B4O1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gIG1pbi13aWR0aDogMS4zZW07XG4gIG1pbi1oZWlnaHQ6IDEuM2VtO1xuICB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlO1xufVxuXG4ucmVhY2hhbGVydCB7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgYmFja2dyb3VuZDogIzAwMDA4MDtcbiAgY29sb3I6IHllbGxvdztcbiAgZm9udC1zaXplOiAxZW07XG4gIGZvbnQtd2VpZ2h0OiBib2xkO1xuICBsaW5lLWhlaWdodDogMS4yZW07XG4gIGJvcmRlci1yYWRpdXM6IDNlbTtcbiAgLW1vei1ib3JkZXItcmFkaXVzOiAzZW07XG4gIC13ZWJraXQtYm9yZGVyLXJhZGl1czogM2VtO1xuICBtYXJnaW4tbGVmdDogM3B4O1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gIG1pbi13aWR0aDogMS4yZW07XG4gIG1pbi1oZWlnaHQ6IDEuMmVtO1xuICB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlO1xufVxuXG5AbWVkaWEgcHJpbnQge1xuICBhW2hyZWZdOmFmdGVyIHtcbiAgICBjb250ZW50OiBub25lICFpbXBvcnRhbnQ7XG4gIH1cbn1cblxuLmRpc2FibGVkQnV0dG9uIHtcbiAgY3Vyc29yOiBub3QtYWxsb3dlZDtcbiAgYmFja2dyb3VuZDogZ3JleSAhaW1wb3J0YW50O1xuICBjb2xvcjogZGFya2dyZXkgIWltcG9ydGFudDtcbn1cblxuLm5vLWphdmFzY3JpcHQge1xuICB0b3A6IDA7XG4gIGxlZnQ6IDA7XG4gIHJpZ2h0OiAwO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiBmaXJlYnJpY2s7XG4gIGNvbG9yOiAjZmZmO1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gIHBhZGRpbmc6IDEwcHg7XG4gIGZvbnQtd2VpZ2h0OiBib2xkO1xuICBib3gtc2hhZG93OiAxcHggMCAzcHggIzAwMDtcbn1cblxuLm5vLWphdmFzY3JpcHQgYSB7XG4gIHRleHQtZGVjb3JhdGlvbjogdW5kZXJsaW5lO1xuICBjb2xvcjogI2ZmZjtcbn1cblxuLypHcmV5IE92ZXJsYXkqL1xuLmFwcF9ncmV5T3ZlcmxheSB7XG4gIHBvc2l0aW9uOiBmaXhlZDtcbiAgdG9wOiAwO1xuICBsZWZ0OiAwO1xuICB3aWR0aDogMTAwJTtcbiAgaGVpZ2h0OiAxMDAlO1xuICB6LWluZGV4OiAxMDAwNDtcbiAgZGlzcGxheTogbm9uZTtcbn1cblxuLnNob3dPdmVybGF5IHtcbiAgZGlzcGxheTogYmxvY2sgIWltcG9ydGFudDtcbiAgYmFja2dyb3VuZC1jb2xvcjogcmdiYSgxOTIsIDE5MiwgMTkyLCAwLjYpO1xufVxuXG4ucmV2ZWFsLW92ZXJsYXkge1xuICB6LWluZGV4OiA5OTk5OTtcbn1cblxuLypGb3Igb3ZlciAxOCovXG4uc3RhY2stb3V0ZXIge1xuICBjb2xvcjogcmVkO1xufVxuXG4uZmEtcGx1czE4IHtcbiAgZm9udC1mYW1pbHk6ICdIZWx2ZXRpY2EgTmV1ZScsIEhlbHZldGljYSwgQXJpYWwsIHNhbnMtc2VyaWY7XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgZm9udC1zaXplOiA4MCU7XG4gIGZvbnQtd2VpZ2h0OiBib2xkO1xufVxuXG4uZmEtcGx1czE4OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiMTgrXCI7XG4gIGNvbG9yOiB3aGl0ZTtcbn1cblxuLnJldmVhbCB7XG4gIGJveC1zaGFkb3c6IDAgNXB4IDE1cHggcmdiYSgwLCAwLCAwLCAwLjUpO1xuICBvdXRsaW5lOiBub25lO1xufVxuXG4ucmV2ZWFsOmZvY3VzIHtcbiAgb3V0bGluZTogbm9uZTtcbn1cblxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQ4ZW0pIHtcbiAgLnJldmVhbCB7XG4gICAgd2lkdGg6IDY2MHB4O1xuICAgIG1heC13aWR0aDogOTIuODU3MTRyZW07XG4gIH1cbn1cblxuLnBvcHVwVGl0bGUge1xuICBmb250LXNpemU6IDE4cHg7XG4gIGZvbnQtd2VpZ2h0OiA2MDA7XG4gIG1hcmdpbi10b3A6IDBweDtcbiAgcGFkZGluZy10b3A6IDBweDtcbiAgbWFyZ2luLWJvdHRvbTogMTZweDtcbn1cblxuLnNpZGVQbGF5ZXIge1xuICBkaXNwbGF5OiBub25lO1xufVxuXG5AbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gIC5zaWRlUGxheWVyIHtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICAtd2Via2l0LWZvbnQtc21vb3RoaW5nOiBzdWJwaXhlbC1hbnRpYWxpYXNlZDtcbiAgICAtd2Via2l0LXBlcnNwZWN0aXZlOiAxMDAwO1xuICAgIC13ZWJraXQtdHJhbnNpdGlvbjogYWxsIDE1MG1zIGVhc2UtaW4tb3V0O1xuICAgIHRyYW5zaXRpb246IGFsbCAxNTBtcyBlYXNlLWluLW91dDtcbiAgICBwb3NpdGlvbjogZml4ZWQ7XG4gICAgd2lkdGg6IDEyMHB4O1xuICAgIHJpZ2h0OiAxMHB4O1xuICAgIGJvdHRvbTogMTBweDtcbiAgICB6LWluZGV4OiAxNTAwO1xuICB9XG4gIC5zaWRlUGxheWVyIC5jb250cm9sQmFyIC5idXR0b24ge1xuICAgIG1hcmdpbjogMCAwIDAuMjVyZW0gMDtcbiAgfVxuICAuc2lkZVBsYXllciAudmlkZW9UaXRsZUJhciB7XG4gICAgcGFkZGluZzogMC4zNTcxNHJlbSAwLjM1NzE0cmVtIDAgMC4zNTcxNHJlbTtcbiAgICBiYWNrZ3JvdW5kOiByZ2JhKDEwLCAxMCwgMTAsIDAuOTYpO1xuICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgfVxuICAuc2lkZVBsYXllciAudmlkZW9UaXRsZUJhciBoMyB7XG4gICAgbWFyZ2luLWJvdHRvbTogMDtcbiAgICBjb2xvcjogI2ZlZmVmZTtcbiAgICBsaW5lLWhlaWdodDogMS4xcmVtO1xuICAgIGZvbnQtc2l6ZTogMC43NXJlbTtcbiAgfVxuICAuc2lkZVBsYXllciAucmVzcG9uc2l2ZS1lbWJlZCB7XG4gICAgYm9yZGVyOiAwLjM1NzE0cmVtIHNvbGlkIHJnYmEoMTAsIDEwLCAxMCwgMC45Nik7XG4gICAgYm94LXNoYWRvdzogMCA0cHggOHB4IDAgcmdiYSgwLCAwLCAwLCAwLjIpLCAwIDZweCAyMHB4IDAgcmdiYSgwLCAwLCAwLCAwLjE5KTtcbiAgfVxuICAuc2lkZVBsYXllci5leHBhbmRlZCB7XG4gICAgdG9wOiA1MCU7XG4gICAgYm90dG9tOiBhdXRvO1xuICAgIGxlZnQ6IDUwJTtcbiAgICB3aWR0aDogNjQwcHg7XG4gICAgLW1zLXRyYW5zZm9ybTogdHJhbnNsYXRlKC01MCUsIC01MCUpO1xuICAgIC1tb3otdHJhbnNmb3JtOiB0cmFuc2xhdGUoLTUwJSwgLTUwJSk7XG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZSgtNTAlLCAtNTAlKTtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZSgtNTAlLCAtNTAlKTtcbiAgICB6LWluZGV4OiAxMDAxMDtcbiAgfVxuICAuc2lkZVBsYXllci5leHBhbmRlZCBoMyB7XG4gICAgbGluZS1oZWlnaHQ6IDEuM3JlbTtcbiAgICBmb250LXNpemU6IDFyZW07XG4gIH1cbn1cblxuQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogOTBlbSkge1xuICAuc2lkZVBsYXllciB7XG4gICAgd2lkdGg6IDE4MHB4O1xuICB9XG4gIC5zaWRlUGxheWVyIC52aWRlb1RpdGxlQmFyIGgzIHtcbiAgICBsaW5lLWhlaWdodDogMS4zcmVtO1xuICAgIGZvbnQtc2l6ZTogMXJlbTtcbiAgfVxuICAuc2lkZVBsYXllciAucmVzcG9uc2l2ZS1lbWJlZCB7XG4gICAgYm9yZGVyOiAwLjM1NzE0cmVtIHNvbGlkIHJnYmEoMTAsIDEwLCAxMCwgMC45Nik7XG4gICAgYm94LXNoYWRvdzogMCA0cHggOHB4IDAgcmdiYSgwLCAwLCAwLCAwLjIpLCAwIDZweCAyMHB4IDAgcmdiYSgwLCAwLCAwLCAwLjE5KTtcbiAgfVxufVxuXG4uRXJyb3JEaXNwbGF5IHtcbiAgcG9zaXRpb246IGZpeGVkO1xuICB0b3A6IDJweDtcbiAgei1pbmRleDogOTk5OTk5OTtcbiAgbWFyZ2luOiAwIGF1dG87XG4gIGRpc3BsYXk6IG5vbmU7XG4gIG1heC13aWR0aDogMTMwMHB4O1xuICBsZWZ0OiAwcHg7XG4gIHJpZ2h0OiAwcHg7XG4gIHBhZGRpbmc6IDNweDtcbiAgZm9udC13ZWlnaHQ6IGJvbGQ7XG4gIGZvbnQtc2l6ZTogMS4xNDI4NnJlbTtcbn1cblxuLkVycm9yRGlzcGxheSAuY2FsbG91dC5zdWNjZXNzIHtcbiAgY29sb3I6ICMwYTBhMGE7XG4gIGJvcmRlci10b3A6IDEwcHggc29saWQgIzhkYzU4ZDtcbn1cblxuLkVycm9yRGlzcGxheSAuY2FsbG91dC5hbGVydCB7XG4gIGNvbG9yOiAjMGEwYTBhO1xuICBib3JkZXItdG9wOiAxMHB4IHNvbGlkICNlMjFlMWU7XG59XG5cbi5FcnJvckRpc3BsYXkgLmNhbGxvdXQuc2Vjb25kYXJ5IHtcbiAgY29sb3I6ICMwYTBhMGE7XG4gIGJvcmRlci10b3A6IDEwcHggc29saWQgIzc2NzY3Njtcbn1cblxuLmdyZWVuLXRleHQge1xuICBjb2xvcjogIzAwODAwMDtcbn1cblxuLmJsdWUtdGV4dCB7XG4gIGNvbG9yOiAjMTAzY2NhO1xufVxuXG4uYmlnLXJlZC10ZXh0IHtcbiAgY29sb3I6IFJlZDtcbiAgZm9udC1zaXplOiAxNnB4O1xufVxuXG4ub3JhbmdlLXRleHQsIC5vcmFuZ2VUZXh0IHtcbiAgY29sb3I6ICNmZmE1MDA7XG59XG5cbi5yZWQtdGV4dCwgLnJlZFRleHQge1xuICBjb2xvcjogI2IyMjIyMiAhaW1wb3J0YW50O1xufVxuXG4uZ3JheS10ZXh0IHtcbiAgY29sb3I6ICM3OTc5NkE7XG59XG5cbi5ncmV5LXRleHQge1xuICBjb2xvcjogIzc5Nzk2QTtcbiAgZm9udC13ZWlnaHQ6IG5vcm1hbDtcbn1cblxuLnBhc3RlbC1ibHVlLXRleHQge1xuICBjb2xvcjogIzkyYWNmZjtcbn1cblxuLnBhc3RlbC1ncmVlbi10ZXh0IHtcbiAgY29sb3I6ICM4ZGY5ODE7XG59XG5cbi5wYXN0ZWwtcmVkLXRleHQge1xuICBjb2xvcjogI2ZmN2I3Yjtcbn1cblxuLnBhc3RlbC1vcmFuZ2UtdGV4dCB7XG4gIGNvbG9yOiAjZmZjZDcyO1xufVxuXG5AbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA2My45Mzc1ZW0pIHtcbiAgdWwuYnJlYWRjcnVtYnMge1xuICAgIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCAjZThlNWU1O1xuICAgIHBhZGRpbmc6IDAuMjE0MjlyZW07XG4gIH1cbiAgdWwuYnJlYWRjcnVtYnMgbGkge1xuICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgZmxvYXQ6IG5vbmU7XG4gICAgcGFkZGluZzogMC4yMTQyOXJlbTtcbiAgICBmb250LXNpemU6IDEuMDcxNDNyZW07XG4gIH1cbiAgdWwuYnJlYWRjcnVtYnMgbGkuYnJlYWRjcnVtYlN0YWdlOmhvdmVyIHtcbiAgICBiYWNrZ3JvdW5kOiAjZThlNWU1O1xuICB9XG4gIHVsLmJyZWFkY3J1bWJzIGxpLmJyZWFkY3J1bWJTdGFnZS5icmVhZGNydW1iRXhwYW5kIHtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgfVxuICB1bC5icmVhZGNydW1icyBsaS5sYXN0QnJlYWRjcnVtYiB7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgZm9udC13ZWlnaHQ6IGJvbGQ7XG4gICAgcGFkZGluZy1ib3R0b206IDAuNTcxNDNyZW07XG4gIH1cbiAgLmJyZWFkY3J1bWJFeHBhbmRMaW5rIHtcbiAgICB3aWR0aDogNTBweDtcbiAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgYm9yZGVyLWxlZnQ6IDFweCBzb2xpZCAjZThlNWU1O1xuICAgIGZsb2F0OiByaWdodDtcbiAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgY3Vyc29yOiBwb2ludGVyO1xuICB9XG4gIC5icmVhZGNydW1iRXhwYW5kTGluayBpIHtcbiAgICBjb2xvcjogIzc5Nzk2QTtcbiAgfVxufVxuXG4vKkBpbmNsdWRlIHNwcml0ZXMoJHNwcml0ZXNoZWV0LXNwcml0ZXMpOyovXG4uYnJlYWRjcnVtYkNvbnRhaW5lciB7XG4gIG1hcmdpbi10b3A6IDAuNzE0MjlyZW07XG4gIG1hcmdpbi1ib3R0b206IDAuNzE0MjlyZW07XG59XG5cbi5icmVhZGNydW1iQ29udGFpbmVyIGEge1xuICBjb2xvcjogIzc5Nzk2QTtcbiAgZm9udC1zaXplOiAxcmVtO1xufVxuXG4uYnJlYWRjcnVtYkNvbnRhaW5lciBhOmhvdmVyIHtcbiAgY29sb3I6ICMwYTBhMGE7XG59XG5cbkBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDYzLjkzNzVlbSkge1xuICAubW9iaWxlTWVudSAudmVydGljYWwubWVudSB7XG4gICAgLypsaTpsYXN0LWNoaWxkIGEge1xuICAgICAgICAgICAgYm9yZGVyOjBweDtcbiAgICAgICAgfSovXG4gIH1cbiAgLm1vYmlsZU1lbnUgLnZlcnRpY2FsLm1lbnUgYSB7XG4gICAgYmFja2dyb3VuZDogbm9uZTtcbiAgICBib3JkZXItYm90dG9tOiAxcHggc29saWQgI2RkZGRkZDtcbiAgICBmb250LXdlaWdodDogYm9sZDtcbiAgfVxuICAubW9iaWxlTWVudSBoMyB7XG4gICAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkICNkZGRkZGQ7XG4gICAgcGFkZGluZzogMTBweCA1cHg7XG4gICAgbWFyZ2luOiAwO1xuICAgIGJhY2tncm91bmQ6ICNlOGU1ZTU7XG4gIH1cbn1cblxuLm1vYmlsZU1lbnUgLnZlcnRpY2FsLm1lbnUgYSB7XG4gIGNvbG9yOiAjMGEwYTBhO1xufVxuXG4ubW9iaWxlTWVudSAudmVydGljYWwubWVudSBhOmhvdmVyIHtcbiAgdGV4dC1kZWNvcmF0aW9uOiB1bmRlcmxpbmU7XG4gIHRleHQtZGVjb3JhdGlvbi1jb2xvcjogYmxhY2s7XG59XG5cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gIC5tb2JpbGVNZW51IC52ZXJ0aWNhbC5tZW51IGEge1xuICAgIHBhZGRpbmctbGVmdDogMDtcbiAgICBwYWRkaW5nLXJpZ2h0OiAwO1xuICB9XG59XG5cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gIC5tb2JpbGVNZW51IC5jb2x1bW4tYmxvY2sge1xuICAgIG1pbi1oZWlnaHQ6IDcuMTQyODZyZW07XG4gIH1cbn1cblxuLypHcmF5IFNlY3Rpb24gSGVhZGVyKi9cbmgyLnNlY3Rpb25IZWFkZXIsIGgxLnNlY3Rpb25IZWFkZXIge1xuICBiYWNrZ3JvdW5kOiAjZThlNWU1O1xuICBwYWRkaW5nOiAwLjQyODU3cmVtO1xufVxuXG5oMi5zZWN0aW9uSGVhZGVyUHVyY2hhc2VUaXAge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiBkYXJrb3JhbmdlO1xuICBwYWRkaW5nOiAwLjQyODU3cmVtO1xuICBjb2xvcjogI2ZmZjtcbiAgZm9udC1zaXplOiAxLjNlbTtcbiAgZm9udC13ZWlnaHQ6IG5vcm1hbDtcbiAgdmVydGljYWwtYWxpZ246IGNlbnRyYWw7XG59XG5cbi5zbWFsbFByb2RJbWFnZSB7XG4gIHdpZHRoOiA1LjM1NzE0cmVtO1xuICBoZWlnaHQ6IDUuMzU3MTRyZW07XG4gIHBhZGRpbmc6IDAuMzU3MTRyZW07XG59XG5cbi5wcmljZXMtc3RyaWtldGhyb3VnaCB7XG4gIGZvbnQtc2l6ZTogMC44NTcxNHJlbTtcbiAgY29sb3I6ICM3OTc5NkE7XG4gIHRleHQtZGVjb3JhdGlvbjogbGluZS10aHJvdWdoO1xufVxuXG4uc21hbGxMYWJlbCB7XG4gIGNvbG9yOiAjNzk3OTZBO1xuICBmb250LXNpemU6IDAuOTI4NTdyZW07XG59XG5cbi8qSW5jIFZBVCBDaGVja2JveCovXG4uY2hlY2tib3gge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG59XG5cbi5jaGVja2JveCBpbnB1dFt0eXBlPVwiY2hlY2tib3hcIl0ge1xuICB0b3A6IDA7XG4gIGxlZnQ6IDA7XG4gIHZpc2liaWxpdHk6IGhpZGRlbjtcbiAgcG9zaXRpb246IGFic29sdXRlO1xufVxuXG4uY2hlY2tib3ggLmN1c3RvbS1jaGVja2JveCB7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgdmVydGljYWwtYWxpZ246IHRvcDtcbiAgbWFyZ2luOiAwIDNweCAwIDA7XG4gIHdpZHRoOiAxOHB4O1xuICBoZWlnaHQ6IDE4cHg7XG4gIGJvcmRlcjogMXB4IHNvbGlkICMxNTgzY2M7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbn1cblxuLmNoZWNrYm94IC5jdXN0b20tY2hlY2tib3gge1xuICBiYWNrZ3JvdW5kOiAjMTU4M2NjO1xuICBib3gtc2hhZG93OiBpbnNldCAwIDAgMCAxMnB4ICNmZmY7XG4gIHRleHQtYWxpZ246IGxlZnQ7XG59XG5cbi5jaGVja2JveCAuaWNvbi1jaGVjayB7XG4gIHdpZHRoOiAyMHB4O1xuICBoZWlnaHQ6IDIwcHg7XG4gIGJhY2tncm91bmQtc2l6ZTogY292ZXI7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgdG9wOiAwcHg7XG4gIGxlZnQ6IDBweDtcbiAgdHJhbnNmb3JtOiBzY2FsZSgwKTtcbiAgdHJhbnNpdGlvbjogYWxsIDE4MG1zIGVhc2U7XG59XG5cbi5pY29uLWNoZWNrOmJlZm9yZSB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgY29udGVudDogJ1xcMjcxMyc7XG4gIHdpZHRoOiAxMnB4O1xuICBmb250LXNpemU6IDEyLjY2NjY3cHg7XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgbGluZS1oZWlnaHQ6IDE2cHg7XG4gIGNvbG9yOiAjZmZmO1xuICBmb250LXdlaWdodDogYm9sZDtcbn1cblxuLmNoZWNrYm94IGlucHV0W3R5cGU9XCJjaGVja2JveFwiXTpjaGVja2VkICsgLmN1c3RvbS1jaGVja2JveCB7XG4gIGJvcmRlci1jb2xvcjogIzIwOTVGMDtcbiAgYm94LXNoYWRvdzogbm9uZTtcbn1cblxuLmNoZWNrYm94IGlucHV0W3R5cGU9XCJjaGVja2JveFwiXTpjaGVja2VkICsgLmN1c3RvbS1jaGVja2JveCAuaWNvbi1jaGVjayB7XG4gIHRyYW5zZm9ybTogc2NhbGUoMSk7XG59XG5cbi5jaGVja2JveCAuYWNjZW50IHtcbiAgYm9yZGVyOiAxcHggc29saWQgI0Y5QTUxOTtcbn1cblxuLmNoZWNrYm94IGlucHV0W3R5cGU9XCJjaGVja2JveFwiXTpjaGVja2VkICsgLmFjY2VudCB7XG4gIGJhY2tncm91bmQ6ICNGOUE1MTk7XG4gIGJvcmRlcjogMXB4IHNvbGlkICNGOUE1MTk7XG59XG5cbi8qc2VhcmNoIGZpZWxkIGJ1dHRvbiBncm91cCBpbnB1dCovXG5pbnB1dC5zZWFyY2hJbnB1dCwgaW5wdXQuc2VhcmNoSW5wdXQ6Zm9jdXMge1xuICBib3JkZXI6IDBweDtcbn1cblxuLypzY3JvbGwgdGFibGUgbGFyZ2UgYnJlYWtwb2ludCBmaXgqL1xuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgLnRhYmxlLXNjcm9sbCB0YWJsZSB7XG4gICAgd2lkdGg6IDEwMCU7XG4gIH1cbn1cblxubGFiZWwuZmllbGRIZWFkaW5nLCBsYWJlbC5zbWFsbExhYmVsIHtcbiAgZm9udC1zaXplOiAwLjg1NzE0cmVtO1xuICBjb2xvcjogIzc5Nzk2QTtcbn1cblxubGFiZWwuZmllbGRIZWFkaW5nLmlubGluZSwgbGFiZWwuc21hbGxMYWJlbC5pbmxpbmUge1xuICBkaXNwbGF5OiBpbmxpbmU7XG59XG5cbmxhYmVsLmZpZWxkSGVhZGluZy5hbHQsIGxhYmVsLnNtYWxsTGFiZWwuYWx0IHtcbiAgY29sb3I6ICMwYTBhMGE7XG59XG5cbi5idXR0b24uaW5saW5lIHtcbiAgbWFyZ2luLWJvdHRvbTogMHB4O1xuICBtYXJnaW4tbGVmdDogMC4zNTcxNHJlbTtcbiAgbWFyZ2luLXJpZ2h0OiAwLjM1NzE0cmVtO1xufVxuXG4uYnV0dG9uIHtcbiAgZm9udC13ZWlnaHQ6IGJvbGQ7XG59XG5cbi5tYWluSW1nQ29udGFpbmVyIHtcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG59XG5cbkBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDQ3LjkzNzVlbSkge1xuICAubWFpbkltZ0NvbnRhaW5lciB7XG4gICAgd2lkdGg6IDY1JTtcbiAgICBtYXJnaW46IDAgYXV0bztcbiAgfVxufVxuXG4ubWFpbkltZ0NvbnRhaW5lciAuYmFkZ2VPdmVybGF5IHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICBsZWZ0OiA1cHg7XG4gIHRvcDogNXB4O1xuICB6LWluZGV4OiA1O1xufVxuXG4ubWFpbkltZ0NvbnRhaW5lciAuTWFnaWMzNjAtY29udGFpbmVyIHtcbiAgYm9yZGVyOiBub25lO1xufVxuXG4uTWFnaWNTY3JvbGwgLm1jcy1pdGVtIGltZyB7XG4gIGJvcmRlcjogMXB4IHNvbGlkICNkZGRkZGQ7XG4gIGJveC1zaGFkb3c6IG5vbmU7XG59XG5cbi5zdGFyT3V0ZXIge1xuICBjb2xvcjogIzc5Nzk2QTtcbiAgcGFkZGluZzogMC4zNXJlbSAwO1xufVxuXG4uc3Rhck91dGVyIGEge1xuICBjb2xvcjogIzc5Nzk2QTtcbn1cblxuLnN0YXJPdXRlciBhOmhvdmVyIHtcbiAgdGV4dC1kZWNvcmF0aW9uOiB1bmRlcmxpbmU7XG4gIHRleHQtZGVjb3JhdGlvbi1jb2xvcjogIzc5Nzk2QTtcbn1cblxuLnN0YXJPdXRlciBhLnJldmlld1N0YXJzIHtcbiAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xufVxuXG4uc3Rhck91dGVyIC5mYS1zdGFyIHtcbiAgY29sb3I6ICNmYmQ5MjM7XG59XG5cbi5wcmljZVBlckl0ZW0ge1xuICB0ZXh0LWFsaWduOiByaWdodDtcbiAgY29sb3I6ICM3OTc5NkE7XG4gIGZvbnQtc2l6ZTogMXJlbTtcbiAgZm9udC13ZWlnaHQ6IGJvbGQ7XG59XG5cbi5sYXJnZVByaWNlVGFibGUge1xuICBtYXJnaW4tYm90dG9tOiAuMjVyZW07XG4gIG1hcmdpbi10b3A6IDAuNDVyZW07XG59XG5cbi5nZXRRdW90ZUxpbmsge1xuICBjb2xvcjogYmxhY2s7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gIG1hcmdpbi10b3A6IDAuNnJlbTtcbiAgbWFyZ2luLWJvdHRvbTogMC42cmVtO1xufVxuXG4uZ2V0UXVvdGVMaW5rIGgyIHtcbiAgZm9udC1zaXplOiAxLjEyZW07XG59XG5cbi5za3VQcm9tb0FwcGxpZWRMYWJlbCB7XG4gIGZvbnQtc2l6ZTogLjg1NzE0cmVtO1xuICBjb2xvcjogIzc5Nzk2QTtcbiAgdGV4dC1hbGlnbjogcmlnaHQ7XG4gIGRpc3BsYXk6IGJsb2NrO1xufVxuXG4ucHJpY2VQYW5lbCB7XG4gIHBhZGRpbmc6IDBweCA3cHggNXB4IDdweDtcbiAgYmFja2dyb3VuZDogI2Y3ZjZmNjtcbiAgYm9yZGVyOiAzcHggc29saWQgI2U4ZTVlNTtcbn1cblxuLnByaWNlUGFuZWwgLmlucHV0LWdyb3VwIHtcbiAgZGlzcGxheTogdGFibGU7XG4gIG1hcmdpbi1ib3R0b206IDAuNHJlbTtcbn1cblxuLnByaWNlUGFuZWwgI29wdGlvbnMtdmF0IHtcbiAgcGFkZGluZzogLjVlbSAwIDA7XG4gIHRleHQtYWxpZ246IHJpZ2h0O1xufVxuXG4uc21hbGxQcmljZVRhYmxlIC5wcmljZVRhYmxlIHRhYmxlIHRoLCAuc21hbGxQcmljZVRhYmxlIC5wcmljZVRhYmxlIHRhYmxlIHRkIHtcbiAgcGFkZGluZzogLjQyODU3cmVtIC4yNzE0M3JlbSAuNTcxNDNyZW07XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbn1cblxuLnNtYWxsUHJpY2VUYWJsZSAucHJpY2VUYWJsZSB0YWJsZSB0ZCwgLnNtYWxsUHJpY2VUYWJsZSAucHJpY2VUYWJsZSB0YWJsZSB0aCB7XG4gIGZvbnQtc2l6ZTogMC45Mjg1N3JlbTtcbiAgbGluZS1oZWlnaHQ6IDEuMXJlbTtcbn1cblxuLnNtYWxsUHJpY2VUYWJsZSAuaW5wdXQtZ3JvdXAge1xuICBtYXJnaW4tYm90dG9tOiAwLjM1NzE0cmVtO1xufVxuXG4ucHJvZHVjdFZhcmlhdGlvbiB7XG4gIC8qYm9yZGVyOiAxcHggc29saWQgJGRhcmstZ3JheTsqL1xuICBib3JkZXI6IDFweCBzb2xpZCAjZThlNWU1O1xuICBib3gtc2l6aW5nOiBib3JkZXItYm94O1xuICBtYXJnaW4tYm90dG9tOiAyMHB4O1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIC8qYmFja2dyb3VuZDokbGlnaHQtZ3JheTsqL1xuICBiYWNrZ3JvdW5kOiAjZjdmNmY2O1xuICBwYWRkaW5nOiAxMHB4O1xufVxuXG4ucHJvZHVjdFZhcmlhdGlvbiB1bCB7XG4gIGxpc3Qtc3R5bGUtdHlwZTogbm9uZTtcbiAgbWFyZ2luOiAwLjIxNDI5cmVtO1xufVxuXG4ucHJvZHVjdFZhcmlhdGlvbiBwIHtcbiAgZm9udC1zaXplOiAxNHB4O1xuICBmb250LXdlaWdodDogYm9sZDtcbiAgbWFyZ2luLWxlZnQ6IDA7XG4gIHBhZGRpbmctdG9wOiAwcHg7XG4gIG1hcmdpbi10b3A6IDBweDtcbn1cblxuLnByb2R1Y3RWYXJpYXRpb24gc3BhbiB7XG4gIGJvcmRlcjogMXB4IHNvbGlkICNjY2M7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgcGFkZGluZzogNXB4O1xuICBib3JkZXItcmFkaXVzOiA0cHg7XG4gIGJhY2tncm91bmQ6IHdoaXRlO1xuICBtYXJnaW46IDVweCAwO1xuICBjdXJzb3I6IHBvaW50ZXI7XG59XG5cbi5wcm9kdWN0VmFyaWF0aW9uIHNwYW4uc2VsZWN0ZWQge1xuICBib3JkZXI6IDFweCBzb2xpZCAjYjU3ZTdlO1xuICBjdXJzb3I6IGRlZmF1bHQ7XG59XG5cbi5wcm9kdWN0VmFyaWF0aW9uIHNwYW4uc2VsZWN0ZWQ6aG92ZXIge1xuICBiYWNrZ3JvdW5kOiB3aGl0ZTtcbn1cblxuLnByb2R1Y3RWYXJpYXRpb24gc3Bhbjpob3ZlciB7XG4gIGJhY2tncm91bmQ6ICNlZWU7XG4gIGJvcmRlcjogMXB4IHNvbGlkICNiNTdlN2U7XG59XG5cbi5hcHBfQXR0cmlidXRlVmFyaWF0aW9uUHJvZHVjdHMgdWwge1xuICBsaXN0LXN0eWxlLXR5cGU6IG5vbmU7XG59XG5cbi5hcHBfQXR0cmlidXRlVmFyaWF0aW9uUHJvZHVjdHMgdWwgbGkge1xuICBkaXNwbGF5OiBibG9jaztcbiAgYm9yZGVyLWJvdHRvbTogMC41cHggZG90dGVkIGxpZ2h0Z3JleTtcbiAgcGFkZGluZzogMTBweDtcbn1cblxuLmFwcF9BdHRyaWJ1dGVWYXJpYXRpb25Qcm9kdWN0cyB1bCBsaTo6YWZ0ZXIge1xuICBjb250ZW50OiBcIlwiO1xuICBjbGVhcjogYm90aDtcbiAgZGlzcGxheTogdGFibGU7XG59XG5cbi5hcHBfQXR0cmlidXRlVmFyaWF0aW9uUHJvZHVjdHMgc3BhbiB7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgZmxvYXQ6IGxlZnQ7XG4gIHBhZGRpbmc6IDVweDtcbiAgbWFyZ2luOiA1cHg7XG4gIGJvcmRlcjogMnB4IHNvbGlkIGxpZ2h0Z3JleTtcbiAgY3Vyc29yOiBwb2ludGVyO1xuICBib3JkZXItcmFkaXVzOiA1cHg7XG59XG5cbi5hcHBfQXR0cmlidXRlVmFyaWF0aW9uUHJvZHVjdHMgc3Bhbi5zZWxlY3RlZCB7XG4gIGJvcmRlcjogMnB4IHNvbGlkIGluZGlhbnJlZDtcbn1cblxuLmFwcF9BdHRyaWJ1dGVWYXJpYXRpb25Qcm9kdWN0cyBzcGFuLmRpc2FibGVkIHtcbiAgYm9yZGVyOiAycHggc29saWQgd2hpdGU7XG4gIHRleHQtZGVjb3JhdGlvbjogbGluZS10aHJvdWdoO1xuICBjb2xvcjogbGlnaHRncmF5O1xufVxuXG4ucHJvZHVjdFdpZGdldCB7XG4gIGxpc3Qtc3R5bGUtdHlwZTogbm9uZTtcbiAgYm9yZGVyOiAxcHggc29saWQgI2U4ZTVlNTtcbiAgbWFyZ2luOiBhdXRvO1xuICBib3JkZXItcmFkaXVzOiAycHg7XG59XG5cbi5wcm9kdWN0V2lkZ2V0IGxpIHtcbiAgcGFkZGluZzogNXB4IDVweCAwIDVweDtcbiAgY2xlYXI6IGJvdGg7XG4gIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCAjZThlNWU1O1xuICBvdmVyZmxvdzogaGlkZGVuO1xufVxuXG4ucHJvZHVjdFdpZGdldCBsaTpsYXN0LWNoaWxkIHtcbiAgYm9yZGVyLWJvdHRvbTogbm9uZTtcbn1cblxuLnByb2R1Y3RXaWRnZXQgbGkgYSB7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBjb2xvcjogYmxhY2s7XG59XG5cbi5wcm9kdWN0V2lkZ2V0IGxpIHAge1xuICBtYXJnaW4tYm90dG9tOiAwLjQyODU3cmVtO1xufVxuXG4ud2lkZ2V0SGVhZGVyIHtcbiAgYmFja2dyb3VuZDogI2U4ZTVlNTtcbiAgY29sb3I6ICMwYTBhMGE7XG4gIGZvbnQtd2VpZ2h0OiBib2xkO1xuICBmb250LXNpemU6IDEuMTQyODZyZW07XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgcGFkZGluZzogMC41NzE0M3JlbSAwLjM1NzE0cmVtIDAuNjQyODZyZW0gMC4zNTcxNHJlbSAhaW1wb3J0YW50O1xufVxuXG4ud2lkZ2V0UHJvZHVjdExlZnQge1xuICBmbG9hdDogbGVmdDtcbiAgd2lkdGg6IDQ1JTtcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xufVxuXG4ud2lkZ2V0UHJvZHVjdExlZnQgaW1nIHtcbiAgd2lkdGg6IDYwJTtcbn1cblxuLndpZGdldFByb2R1Y3RSaWdodCB7XG4gIGZsb2F0OiBsZWZ0O1xuICB3aWR0aDogNTMlO1xufVxuXG4ucHJvZHVjdC10aWxlLWNvbnRhaW5lciB7XG4gIGRpc3BsYXk6IGdyaWQ7XG4gIGdyaWQtdGVtcGxhdGUtY29sdW1uczogcmVwZWF0KGF1dG8tZml0LCBtaW5tYXgoMjUwcHgsIDFmcikpO1xuICBncmlkLWdhcDogMTBweDtcbiAgYm94LXNoYWRvdzogMCAwIDAgMXB4IHJnYmEoMTAsIDEwLCAxMCwgMC4yKTtcbn1cblxuLnByb2R1Y3QtdGlsZSB7XG4gIG1heC13aWR0aDogMjUwcHg7XG4gIHBhZGRpbmc6IC41ZW07XG59XG5cbi5wcm9kdWN0LXRpbGUtLWRldGFpbHMgaDMge1xuICB0ZXh0LW92ZXJmbG93OiBlbGxpcHNpcztcbiAgd2hpdGUtc3BhY2U6IG5vd3JhcDtcbiAgb3ZlcmZsb3c6IGhpZGRlbjtcbn1cblxuLnByb2R1Y3QtdGlsZS0tY29udHJvbHMge1xuICBkaXNwbGF5OiBmbGV4O1xuICBqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWJldHdlZW47XG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG59XG5cbi5wcm9kdWN0LXRpbGUtLWNvbnRyb2xzIGJ1dHRvbiB7XG4gIG1hcmdpbjogMDtcbn1cblxuLnByb2R1Y3QtdGlsZS0tY29udHJvbHMgbGFiZWwge1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG59XG5cbi5wcm9kdWN0LXRpbGUtLWNvbnRyb2xzIGxhYmVsIGlucHV0IHtcbiAgbWFyZ2luOiAwO1xufVxuXG4ucHJvZHVjdEl0ZW0ge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCAjZThlNWU1O1xuICBtYXJnaW4tYm90dG9tOiAwLjM1NzE0cmVtO1xuICBtaW4taGVpZ2h0OiAyMDBweDtcbn1cblxuQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogNjMuOTM3NWVtKSB7XG4gIC5wcm9kdWN0SXRlbSB7XG4gICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICB9XG59XG5cbi5wcm9kdWN0SXRlbSBoMyB7XG4gIGNvbG9yOiAjMGEwYTBhO1xufVxuXG4ub3RoZXJDb250cm9scyB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgbGVmdDogM3B4O1xuICBib3R0b206IDVweDtcbiAgdGV4dC1hbGlnbjogbGVmdDtcbn1cblxuLm90aGVyQ29udHJvbHMgbGFiZWwge1xuICBtYXJnaW4tcmlnaHQ6IDNweDtcbn1cblxuLm90aGVyQ29udHJvbHMgc3BhbiwgLm90aGVyQ29udHJvbHMgbGFiZWwsIC5vdGhlckNvbnRyb2xzIGEge1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG59XG5cbi5xdWlja1ZpZXdMaW5rIHtcbiAgZm9udC1zaXplOiAxMnB4O1xuICBib3JkZXI6IDFweCBzb2xpZCAjY2NjO1xuICBwYWRkaW5nOiA4cHggNXB4O1xuICBib3gtc2hhZG93OiAwIDFweCAxcHggcmdiYSgwLCAwLCAwLCAwLjI1KTtcbiAgYmFja2dyb3VuZDogd2hpdGU7XG4gIGNvbG9yOiAjMGEwYTBhO1xufVxuXG4ucXVpY2tWaWV3TGluazpob3ZlciB7XG4gIGJhY2tncm91bmQ6ICNGOUE1MTk7XG4gIGNvbG9yOiAjMGEwYTBhO1xufVxuXG4uc21hbGxJbWdDb250YWluZXIge1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gIG1hcmdpbjogMCBhdXRvO1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG59XG5cbi5zbWFsbEltZ0NvbnRhaW5lciBpbWcge1xuICBtYXgtd2lkdGg6IDE0MHB4O1xufVxuXG4uc21hbGxCYWRnZU92ZXJsYXkge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHJpZ2h0OiA1cHg7XG4gIGJvdHRvbTogNXB4O1xufVxuXG4uc21hbGxTdG9ja01lc3NhZ2Uge1xuICBmb250LXdlaWdodDogYm9sZDtcbiAgdGV4dC1hbGlnbjogbGVmdDtcbiAgZm9udC1zaXplOiAxcmVtO1xufVxuXG5AbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA0Ny45Mzc1ZW0pIHtcbiAgLnNtYWxsU3RvY2tNZXNzYWdlIHtcbiAgICBtYXJnaW4tYm90dG9tOiAxLjE0Mjg2cmVtO1xuICB9XG59XG5cbi5xdWlja1ZpZXdQb3B1cENvbnRlbnQge1xuICBtYXgtaGVpZ2h0OiA3NTBweDtcbiAgb3ZlcmZsb3cteTogYXV0bztcbn1cblxuLmF0dHJpYnV0ZUZpbHRlcnMge1xuICBsaXN0LXN0eWxlLXR5cGU6IG5vbmU7XG4gIGJvcmRlcjogMXB4IHNvbGlkICNlOGU1ZTU7XG4gIG1hcmdpbjogYXV0bztcbiAgYm9yZGVyLXJhZGl1czogMnB4O1xuICB6LWluZGV4OiAxMDAwNjtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBiYWNrZ3JvdW5kOiB3aGl0ZTtcbn1cblxuLmF0dHJpYnV0ZUZpbHRlcnMgbGkge1xuICBwYWRkaW5nOiA1cHggNXB4IDAgNXB4O1xuICBjbGVhcjogYm90aDtcbiAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkICNlOGU1ZTU7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbn1cblxuQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogNDcuOTM3NWVtKSB7XG4gIC5hdHRyaWJ1dGVGaWx0ZXJzIGxpIHtcbiAgICBwYWRkaW5nOiAxMHB4IDVweCAwIDEwcHg7XG4gIH1cbn1cblxuLmF0dHJpYnV0ZUZpbHRlcnMgbGk6bGFzdC1jaGlsZCB7XG4gIGJvcmRlci1ib3R0b206IG5vbmU7XG59XG5cbi5hdHRyaWJ1dGVGaWx0ZXJzIGxpIGEge1xuICBkaXNwbGF5OiBibG9jaztcbiAgY29sb3I6IGJsYWNrO1xuICB3aWR0aDogOTUlO1xuICBvdmVyZmxvdzogYXV0bztcbiAgcGFkZGluZzogNXB4IDAgNXB4IDEwcHg7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xufVxuXG4uYXR0cmlidXRlRmlsdGVycyBsaSAuYXR0cmlidXRlTmFtZSB7XG4gIGRpc3BsYXk6IG5vbmU7XG59XG5cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0OGVtKSB7XG4gIC5hdHRyaWJ1dGVGaWx0ZXJzIGxpIC5hdHRyaWJ1dGVOYW1lIHtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgfVxufVxuXG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDhlbSkge1xuICAuYXR0cmlidXRlRmlsdGVycyBsaSAuYXR0cmlidXRlTGlzdEhvbGRlciB7XG4gICAgd2lkdGg6IDIwcmVtO1xuICAgIHRvcDogLTUwJTtcbiAgICBsZWZ0OiAxMDAlO1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjZmZmO1xuICAgIGJveC1zaGFkb3c6IDJweCAzcHggMjJweCAtNXB4IHJnYmEoMCwgMCwgMCwgMC41OCk7XG4gICAgei1pbmRleDogMjAwMDAwMDAwMDtcbiAgICBwYWRkaW5nOiAwLjcxNDI5cmVtO1xuICB9XG59XG5cbi5hdHRyaWJ1dGVGaWx0ZXJzIGxpIC5hdHRyaWJ1dGVMaXN0SG9sZGVyIGkge1xuICBkaXNwbGF5OiBub25lO1xufVxuXG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDhlbSkge1xuICAuYXR0cmlidXRlRmlsdGVycyBsaSAuYXR0cmlidXRlTGlzdEhvbGRlciBpIHtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgdG9wOiA3cHg7XG4gICAgcmlnaHQ6IDdweDtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgfVxufVxuXG4uYXR0cmlidXRlRmlsdGVycyBsaSAuYXR0cmlidXRlTGlzdEhvbGRlciBpOmhvdmVyIHtcbiAgY29sb3I6IGZpcmVicmljaztcbiAgY3Vyc29yOiBwb2ludGVyO1xufVxuXG4uYXR0cmlidXRlRmlsdGVycyBsaSAuYXR0cmlidXRlTGlzdEhvbGRlciAuYXR0cmlidXRlTGlzdCB7XG4gIGxpc3Qtc3R5bGU6IG5vbmU7XG4gIG1hcmdpbi1sZWZ0OiAwcHg7XG59XG5cbkBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDQ3LjkzNzVlbSkge1xuICAuYXR0cmlidXRlRmlsdGVycyBsaSAuYXR0cmlidXRlTGlzdEhvbGRlciAuYXR0cmlidXRlTGlzdCB7XG4gICAgbWF4LWhlaWdodDogMjguNTcxNDNyZW07XG4gIH1cbn1cblxubGkuc2VhcmNoX2F0dHJpYnV0ZXNfcmVkdW5kYW50X3NlY3Rpb24gYSB7XG4gIHBvaW50ZXItZXZlbnRzOiBub25lO1xuICBjdXJzb3I6IGRlZmF1bHQ7XG4gIGNvbG9yOiAjZThlNWU1O1xufVxuXG4uc2VhcmNoZmlsdGVyVG9wIHtcbiAgcGFkZGluZzogMCAwIDAuNTcxNDNyZW0gMDtcbn1cblxuLnNlYXJjaGZpbHRlclRvcCBzcGFuIHtcbiAgZm9udC13ZWlnaHQ6IGJvbGQ7XG59XG5cbi5zZWFyY2hmaWx0ZXJUb3AgZGl2IHtcbiAgd2lkdGg6IDQzJTtcbiAgbWFyZ2luOiAyJTtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xufVxuXG4uc2VhcmNoZmlsdGVyVG9wIHNlbGVjdCB7XG4gIHdpZHRoOiA4NiU7XG4gIG1hcmdpbjogMiU7XG4gIHBhZGRpbmc6IDRweDtcbiAgYm9yZGVyOiAxcHggc29saWQgI2NjYztcbn1cblxuLnNlYXJjaGZpbHRlck1pZGRsZSB7XG4gIHBhZGRpbmc6IDhweDtcbiAgYm9yZGVyOiAxcHggc29saWQgI2NjYztcbiAgb3ZlcmZsb3cteTogYXV0bztcbn1cblxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQ4ZW0pIHtcbiAgLnNlYXJjaGZpbHRlck1pZGRsZSB7XG4gICAgbWF4LWhlaWdodDogMzAwcHg7XG4gIH1cbn1cblxuLnNlYXJjaGZpbHRlckZvb3RlciBzcGFuIHtcbiAgbGluZS1oZWlnaHQ6IDQ0cHg7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgcGFkZGluZzogMHB4O1xufVxuXG4uc2VhcmNoZmlsdGVyRm9vdGVyIGJ1dHRvbiB7XG4gIG1hcmdpbi1ib3R0b206IDBweDtcbiAgbWFyZ2luLXRvcDogMTBweDtcbiAgZmxvYXQ6IHJpZ2h0O1xufVxuXG4uYXR0cmlidXRlRmlsdGVyc0hlYWRlciB7XG4gIGJhY2tncm91bmQ6ICNlOGU1ZTU7XG4gIGNvbG9yOiAjMGEwYTBhO1xuICBmb250LXdlaWdodDogYm9sZDtcbiAgZm9udC1zaXplOiAxLjE0Mjg2cmVtO1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gIHBhZGRpbmc6IDAuNTcxNDNyZW0gMC4zNTcxNHJlbSAwLjY0Mjg2cmVtIDAuMzU3MTRyZW0gIWltcG9ydGFudDtcbn1cblxuLmFwcGxpZWRGaWx0ZXJzIHtcbiAgb3ZlcmZsb3cteTogYXV0bztcbiAgbWF4LWhlaWdodDogMzAwcHg7XG4gIGJveC1zaXppbmc6IGJvcmRlci1ib3g7XG59XG5cbi5maWx0ZXJTZWN0aW9uIHtcbiAgcGFkZGluZzogNXB4O1xuICBib3gtc2l6aW5nOiBib3JkZXItYm94O1xuICBvdmVyZmxvdzogaGlkZGVuO1xufVxuXG4uZmlsdGVyU2VjdGlvbkhlYWRlciB7XG4gIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCAjY2NjO1xuICBvdmVyZmxvdzogaGlkZGVuO1xuICBsaW5lLWhlaWdodDogMjBweDtcbiAgbWFyZ2luLXRvcDogMnB4O1xufVxuXG4uZmlsdGVyU2VjdGlvblRpdGxlIHtcbiAgY29sb3I6ICMwMDA7XG4gIGZvbnQtd2VpZ2h0OiBib2xkO1xuICBmbG9hdDogbGVmdDtcbiAgbWFyZ2luOiAzcHg7XG59XG5cbi5yZW1vdmVGaWx0ZXJTZWN0aW9uIHtcbiAgY3Vyc29yOiBwb2ludGVyO1xuICBjb2xvcjogIzMzN2FiNztcbiAgdGV4dC1kZWNvcmF0aW9uOiB1bmRlcmxpbmU7XG4gIGZvbnQtc2l6ZTogMTJweDtcbiAgbGluZS1oZWlnaHQ6IDE1cHg7XG4gIGZsb2F0OiByaWdodDtcbiAgbWFyZ2luOiAzcHg7XG59XG5cbi5zZWFyY2hfYXR0cmlidXRlc19zZWxlY3RlZF9zZWN0aW9uIGEge1xuICBmb250LXdlaWdodDogNzAwO1xufVxuXG4uc2VhcmNoVGFnIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBkaXNwbGF5OiB0YWJsZTtcbiAgYm9yZGVyLXJhZGl1czogNHB4O1xuICBjb2xvcjogI2ZmZjtcbiAgYmFja2dyb3VuZC1jb2xvcjogI0Y5QTUxOTtcbiAgYm9yZGVyOiAxcHggc29saWQgI0Y5QTUxOTtcbiAgbWF4LXdpZHRoOiAxNzZweDtcbiAgbWFyZ2luOiA0cHg7XG4gIGZsb2F0OiBsZWZ0O1xufVxuXG4uc2VhcmNoVGFnOmhvdmVyIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogI0Q5NTM0RjtcbiAgYm9yZGVyOiAxcHggc29saWQgI2Q0M2YzYTtcbn1cblxuLnNlYXJjaFRhZyBzcGFuIHtcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xuICBkaXNwbGF5OiB0YWJsZS1jZWxsO1xuICB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlO1xuICBwYWRkaW5nOiA0cHggOHB4O1xufVxuXG4uc2VhcmNoVGFnIC5yZW1vdmVUYWcge1xuICBjb2xvcjogI2ZmZjtcbiAgYmFja2dyb3VuZDogcmdiYSgwLCAwLCAwLCAwLjE1KTtcbiAgY3Vyc29yOiBwb2ludGVyO1xuICBkaXNwbGF5OiB0YWJsZS1jZWxsO1xuICB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlO1xuICBwYWRkaW5nOiA0cHggOHB4O1xufVxuXG4uYXR0cmlidXRlRmlsdGVycyAuY2hlY2tib3gge1xuICBjdXJzb3I6IHBvaW50ZXI7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgcGFkZGluZzogMC41NzE0M3JlbSAwO1xufVxuXG4vKlJhbmdlIFNsaWRlciovXG5pbnB1dFt0eXBlPXJhbmdlXS5yYW5nZVNsaWRlciB7XG4gIC13ZWJraXQtYXBwZWFyYW5jZTogbm9uZTtcbiAgd2lkdGg6IDEwMCU7XG4gIG1hcmdpbjogNi44NXB4IDA7XG59XG5cbmlucHV0W3R5cGU9cmFuZ2VdLnJhbmdlU2xpZGVyOmZvY3VzIHtcbiAgb3V0bGluZTogbm9uZTtcbn1cblxuaW5wdXRbdHlwZT1yYW5nZV0ucmFuZ2VTbGlkZXI6Oi13ZWJraXQtc2xpZGVyLXJ1bm5hYmxlLXRyYWNrIHtcbiAgd2lkdGg6IDEwMCU7XG4gIGhlaWdodDogNC4zcHg7XG4gIGN1cnNvcjogcG9pbnRlcjtcbiAgYm94LXNoYWRvdzogMHB4IDBweCAwcHggcmdiYSgwLCAwLCAwLCAwKSwgMHB4IDBweCAwcHggcmdiYSgxMywgMTMsIDEzLCAwKTtcbiAgYmFja2dyb3VuZDogI2U4ZTVlNTtcbiAgYm9yZGVyLXJhZGl1czogMHB4O1xuICBib3JkZXI6IDAuMnB4IHNvbGlkIHJnYmEoMCwgMCwgMCwgMCk7XG59XG5cbmlucHV0W3R5cGU9cmFuZ2VdLnJhbmdlU2xpZGVyOjotd2Via2l0LXNsaWRlci10aHVtYiB7XG4gIGJveC1zaGFkb3c6IDBweCAwcHggMHB4IHJnYmEoMTAzLCAwLCAwLCAwKSwgMHB4IDBweCAwcHggcmdiYSgxMjksIDAsIDAsIDApO1xuICBib3JkZXI6IDBweCBzb2xpZCByZ2JhKDAsIDAsIDAsIDApO1xuICBoZWlnaHQ6IDE4cHg7XG4gIHdpZHRoOiAxMnB4O1xuICBib3JkZXItcmFkaXVzOiAwcHg7XG4gIGJhY2tncm91bmQ6ICNmOWE1MTk7XG4gIGN1cnNvcjogcG9pbnRlcjtcbiAgLXdlYmtpdC1hcHBlYXJhbmNlOiBub25lO1xuICBtYXJnaW4tdG9wOiAtNy4wNXB4O1xufVxuXG5pbnB1dFt0eXBlPXJhbmdlXS5yYW5nZVNsaWRlcjpmb2N1czo6LXdlYmtpdC1zbGlkZXItcnVubmFibGUtdHJhY2sge1xuICBiYWNrZ3JvdW5kOiAjZThlNWU1O1xufVxuXG5pbnB1dFt0eXBlPXJhbmdlXS5yYW5nZVNsaWRlcjo6LW1vei1yYW5nZS10cmFjayB7XG4gIHdpZHRoOiAxMDAlO1xuICBoZWlnaHQ6IDQuM3B4O1xuICBjdXJzb3I6IHBvaW50ZXI7XG4gIGJveC1zaGFkb3c6IDBweCAwcHggMHB4IHJnYmEoMCwgMCwgMCwgMCksIDBweCAwcHggMHB4IHJnYmEoMTMsIDEzLCAxMywgMCk7XG4gIGJhY2tncm91bmQ6ICNlOGU1ZTU7XG4gIGJvcmRlci1yYWRpdXM6IDBweDtcbiAgYm9yZGVyOiAwLjJweCBzb2xpZCByZ2JhKDAsIDAsIDAsIDApO1xufVxuXG5pbnB1dFt0eXBlPXJhbmdlXS5yYW5nZVNsaWRlcjo6LW1vei1yYW5nZS10aHVtYiB7XG4gIGJveC1zaGFkb3c6IDBweCAwcHggMHB4IHJnYmEoMTAzLCAwLCAwLCAwKSwgMHB4IDBweCAwcHggcmdiYSgxMjksIDAsIDAsIDApO1xuICBib3JkZXI6IDBweCBzb2xpZCByZ2JhKDAsIDAsIDAsIDApO1xuICBoZWlnaHQ6IDE4cHg7XG4gIHdpZHRoOiAxMnB4O1xuICBib3JkZXItcmFkaXVzOiAwcHg7XG4gIGJhY2tncm91bmQ6ICNmOWE1MTk7XG4gIGN1cnNvcjogcG9pbnRlcjtcbn1cblxuaW5wdXRbdHlwZT1yYW5nZV0ucmFuZ2VTbGlkZXI6Oi1tcy10cmFjayB7XG4gIHdpZHRoOiAxMDAlO1xuICBoZWlnaHQ6IDQuM3B4O1xuICBjdXJzb3I6IHBvaW50ZXI7XG4gIGJhY2tncm91bmQ6IHRyYW5zcGFyZW50O1xuICBib3JkZXItY29sb3I6IHRyYW5zcGFyZW50O1xuICBjb2xvcjogdHJhbnNwYXJlbnQ7XG59XG5cbmlucHV0W3R5cGU9cmFuZ2VdLnJhbmdlU2xpZGVyOjotbXMtZmlsbC1sb3dlciB7XG4gIGJhY2tncm91bmQ6ICNlOGU1ZTU7XG4gIGJvcmRlcjogMC4ycHggc29saWQgcmdiYSgwLCAwLCAwLCAwKTtcbiAgYm9yZGVyLXJhZGl1czogMHB4O1xuICBib3gtc2hhZG93OiAwcHggMHB4IDBweCByZ2JhKDAsIDAsIDAsIDApLCAwcHggMHB4IDBweCByZ2JhKDEzLCAxMywgMTMsIDApO1xufVxuXG5pbnB1dFt0eXBlPXJhbmdlXS5yYW5nZVNsaWRlcjo6LW1zLWZpbGwtdXBwZXIge1xuICBiYWNrZ3JvdW5kOiAjZThlNWU1O1xuICBib3JkZXI6IDAuMnB4IHNvbGlkIHJnYmEoMCwgMCwgMCwgMCk7XG4gIGJvcmRlci1yYWRpdXM6IDBweDtcbiAgYm94LXNoYWRvdzogMHB4IDBweCAwcHggcmdiYSgwLCAwLCAwLCAwKSwgMHB4IDBweCAwcHggcmdiYSgxMywgMTMsIDEzLCAwKTtcbn1cblxuaW5wdXRbdHlwZT1yYW5nZV0ucmFuZ2VTbGlkZXI6Oi1tcy10aHVtYiB7XG4gIGJveC1zaGFkb3c6IDBweCAwcHggMHB4IHJnYmEoMTAzLCAwLCAwLCAwKSwgMHB4IDBweCAwcHggcmdiYSgxMjksIDAsIDAsIDApO1xuICBib3JkZXI6IDBweCBzb2xpZCByZ2JhKDAsIDAsIDAsIDApO1xuICBoZWlnaHQ6IDE4cHg7XG4gIHdpZHRoOiAxMnB4O1xuICBib3JkZXItcmFkaXVzOiAwcHg7XG4gIGJhY2tncm91bmQ6ICNmOWE1MTk7XG4gIGN1cnNvcjogcG9pbnRlcjtcbiAgaGVpZ2h0OiA0LjNweDtcbn1cblxuaW5wdXRbdHlwZT1yYW5nZV0ucmFuZ2VTbGlkZXI6Zm9jdXM6Oi1tcy1maWxsLWxvd2VyIHtcbiAgYmFja2dyb3VuZDogI2U4ZTVlNTtcbn1cblxuaW5wdXRbdHlwZT1yYW5nZV0ucmFuZ2VTbGlkZXI6Zm9jdXM6Oi1tcy1maWxsLXVwcGVyIHtcbiAgYmFja2dyb3VuZDogI2U4ZTVlNTtcbn1cblxuLnBhZ2luYXRpb25CYXIge1xuICBiYWNrZ3JvdW5kOiAjZThlNWU1O1xuICBtYXJnaW4tYm90dG9tOiAxLjA3MTQzcmVtO1xufVxuXG4ucGFnaW5hdGlvbkJhciBpbnB1dCwgLnBhZ2luYXRpb25CYXIgc2VsZWN0IHtcbiAgbWFyZ2luOiAwLjM1NzE0cmVtO1xufVxuXG5AbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA2My45Mzc1ZW0pIHtcbiAgLnBhZ2luYXRpb25CYXIge1xuICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgfVxufVxuXG4uc2VhcmNoUmVzdWx0c0NvdW50IHtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICBwYWRkaW5nOiAwLjU3MTQzcmVtO1xufVxuXG5AbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA2My45Mzc1ZW0pIHtcbiAgLnNlYXJjaFJlc3VsdHNDb3VudCB7XG4gICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICB9XG59XG5cbi5Qcm9kdWN0c1BhZ2luYXRpb24ge1xuICBtYXJnaW4tdG9wOiAwLjkyODU3cmVtO1xuICBtYXJnaW4tcmlnaHQ6IDAuNDI4NTdyZW07XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbn1cblxuQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogNjMuOTM3NWVtKSB7XG4gIC5Qcm9kdWN0c1BhZ2luYXRpb24ge1xuICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICBtYXJnaW4tYm90dG9tOiAwLjcxNDI5cmVtO1xuICB9XG59XG5cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gIC5Qcm9kdWN0c1BhZ2luYXRpb24ge1xuICAgIGZsb2F0OiByaWdodDtcbiAgfVxufVxuXG4uUHJvZHVjdHNQYWdpbmF0aW9uIGEge1xuICBwYWRkaW5nOiAwLjM1NzE0cmVtIDAuNjQyODZyZW07XG4gIG1hcmdpbi1sZWZ0OiAwLjI4NTcxcmVtO1xuICBjb2xvcjogIzRmNGY0ZjtcbiAgY3Vyc29yOiBwb2ludGVyO1xuICBib3JkZXItcmFkaXVzOiAzcHg7XG4gIGJhY2tncm91bmQ6ICNkNmQzZDM7XG59XG5cbi5Qcm9kdWN0c1BhZ2luYXRpb24gYS5jdXJyZW50UGFnZSB7XG4gIGJhY2tncm91bmQ6ICMzMTMxMzE7XG4gIGNvbG9yOiAjZmVmZWZlO1xufVxuXG4uUHJvZHVjdHNQYWdpbmF0aW9uIGEucGFnaW5nIHtcbiAgYmFja2dyb3VuZDogI2FiYTZhNjtcbiAgY29sb3I6ICNmZWZlZmU7XG59XG5cbi5Qcm9kdWN0c1BhZ2luYXRpb24gYTpob3ZlciB7XG4gIGJhY2tncm91bmQ6ICMzMTMxMzE7XG4gIGNvbG9yOiAjZmVmZWZlO1xufVxuXG4udGllcldyYXBwZXIge1xuICBtYXJnaW4tdG9wOiAwLjcxNDI5cmVtO1xuICBtYXJnaW4tYm90dG9tOiAwLjcxNDI5cmVtO1xufVxuXG4udGllckltYWdlIHtcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xufVxuXG4udGllckltYWdlIGEge1xuICBkaXNwbGF5OiBibG9jaztcbiAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICBjb2xvcjogIzBhMGEwYTtcbn1cblxuLnRpZXJJbWFnZSBhIC50aWVySW1hZ2VUZXh0IHtcbiAgZGlzcGxheTogYmxvY2s7XG4gIGxpbmUtaGVpZ2h0OiAxLjI1cmVtO1xuICBtYXJnaW4tdG9wOiAwLjM1NzE0cmVtO1xuICBmb250LXNpemU6IDAuOTI4NTdyZW07XG59XG5cbi50aWVySW1hZ2UgYSBpIHtcbiAgY29sb3I6ICM3OTc5NkE7XG4gIGZvbnQtc2l6ZTogMC43ODU3MXJlbTtcbn1cblxuQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogNDcuOTM3NWVtKSB7XG4gIC50aWVySW1hZ2Uuc2VhcmNoVGllclN0cnVjdHVyZVRpZXJJdGVtLCAudGllckltYWdlLnBvcHVsYXJDYXRlZ29yeUl0ZW0ge1xuICAgIHBhZGRpbmc6IDAuNzE0MjlyZW07XG4gICAgbWFyZ2luLWJvdHRvbTogMHB4O1xuICAgIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCAjZThlNWU1O1xuICAgIHRleHQtYWxpZ246IGxlZnQ7XG4gIH1cbiAgLnRpZXJJbWFnZS5zZWFyY2hUaWVyU3RydWN0dXJlVGllckl0ZW0gaW1nLCAudGllckltYWdlLnBvcHVsYXJDYXRlZ29yeUl0ZW0gaW1nIHtcbiAgICBkaXNwbGF5OiBub25lO1xuICB9XG4gIC50aWVySW1hZ2Uuc2VhcmNoVGllclN0cnVjdHVyZVRpZXJJdGVtIC50aWVySW1hZ2VUZXh0LCAudGllckltYWdlLnBvcHVsYXJDYXRlZ29yeUl0ZW0gLnRpZXJJbWFnZVRleHQge1xuICAgIGRpc3BsYXk6IGlubGluZTtcbiAgfVxufVxuXG5AbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA0Ny45Mzc1ZW0pIHtcbiAgLnNlYXJjaFRpZXJTdHJ1Y3R1cmVUaWVySXRlbTpsYXN0LWNoaWxkIHtcbiAgICBtYXJnaW4tYm90dG9tOiAxMHB4O1xuICB9XG59XG5cbi5zZWFyY2hUaWVyQmxvY2tMaXN0IHtcbiAgbGlzdC1zdHlsZTogbm9uZTtcbiAgbWFyZ2luLXRvcDogLjVyZW07XG4gIC8qQGluY2x1ZGUgYnJlYWtwb2ludChtZWRpdW0pIHtcbiAgICAgICAgbWFyZ2luLXRvcDogcmVtLWNhbGMoLTEwKTtcbiAgICB9Ki9cbiAgbWFyZ2luLWxlZnQ6IDAuNTcxNDNyZW07XG59XG5cbi5zZWFyY2hUaWVyQmxvY2tMaXN0IGxpIHtcbiAgY3Vyc29yOiBwb2ludGVyO1xufVxuXG5AbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA0Ny45Mzc1ZW0pIHtcbiAgLnNlYXJjaFRpZXJCbG9ja0xpc3QgbGkge1xuICAgIHBhZGRpbmc6IDAuNzE0MjlyZW0gMDtcbiAgICBib3JkZXItYm90dG9tOiAxcHggc29saWQgI2U4ZTVlNTtcbiAgfVxufVxuXG4uc2VhcmNoVGllckJsb2NrTGlzdCBsaTpob3ZlciB7XG4gIHRleHQtZGVjb3JhdGlvbjogdW5kZXJsaW5lO1xufVxuXG4uc2VhcmNoQnJlYWRjcnVtYiB7XG4gIGZvbnQtd2VpZ2h0OiBib2xkO1xuICBjb2xvcjogIzBhMGEwYTtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICBtYXJnaW4tYm90dG9tOiAuMnJlbTtcbiAgbGluZS1oZWlnaHQ6IDEuMztcbn1cblxuYS5zZWFyY2hCcmVhZGNydW1iIHtcbiAgd2hpdGUtc3BhY2U6IGluaXRpYWwgIWltcG9ydGFudDtcbiAgY29sb3I6ICMwYTBhMGE7XG59XG5cbiNzdWdnZXN0ZWRCcmVhZGNydW1iIHtcbiAgZGlzcGxheTogaW5saW5lLWZsZXg7XG4gIG92ZXJmbG93LXg6IGF1dG87XG4gIHdoaXRlLXNwYWNlOiBub3dyYXA7XG4gIG1heC13aWR0aDogMTAwJSAhaW1wb3J0YW50O1xufVxuXG4uYWNjb3JkaW9uQSB7XG4gIGN1cnNvcjogcG9pbnRlcjtcbiAgYm9yZGVyOiBub25lO1xuICBib3JkZXItcmFkaXVzOiAwO1xuICBvdXRsaW5lOiBub25lO1xuICBkaXNwbGF5OiBmbGV4O1xuICBmbGV4LWRpcmVjdGlvbjogcm93O1xuICBqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWJldHdlZW47XG4gIHRleHQtYWxpZ246IGxlZnQ7XG4gIHdpZHRoOiAxMDAlO1xuICBwYWRkaW5nOiAuNHJlbTtcbiAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkICNkZGQ7XG59XG5cbi5wYW5lbEEge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB3aGl0ZTtcbiAgZGlzcGxheTogbm9uZTtcbiAgb3ZlcmZsb3c6IGhpZGRlbjtcbn1cblxuLmNvbHVtbi5jb2x1bW4tYmxvY2ssIC5jb2x1bW4tYmxvY2suY29sdW1ucyB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbn1cblxuLmFjY29yZGlvbkEgc3BhbjphZnRlciB7XG4gIGZvbnQtZmFtaWx5OiBcIkZvbnQgQXdlc29tZSA1IEZyZWVcIjtcbiAgZm9udC13ZWlnaHQ6IDkwMDtcbiAgY29udGVudDogXCJcXGYxMDdcIjtcbiAgZm9udC1zaXplOiAxLjRyZW07XG4gIGNvbG9yOiAjYWFhO1xufVxuXG4uYWN0aXZlIHNwYW46YWZ0ZXIge1xuICBjb250ZW50OiBcIlxcZjEwNlwiO1xufVxuXG4udG9nZ2xlQ2F0ZWdvcnkge1xuICBkaXNwbGF5OiBub25lO1xufVxuXG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAuaW1hZ2VzVGFibGVXcmFwcGVyIHtcbiAgICB3aWR0aDogMzYuNjY2NjclO1xuICAgIGZsb2F0OiBsZWZ0O1xuICAgIHBhZGRpbmctcmlnaHQ6IDA7XG4gICAgcGFkZGluZy1sZWZ0OiAwO1xuICAgIHBhZGRpbmctcmlnaHQ6IDBweCAhaW1wb3J0YW50O1xuICB9XG4gIC5pbWFnZXNUYWJsZVdyYXBwZXI6bGFzdC1jaGlsZDpub3QoOmZpcnN0LWNoaWxkKSB7XG4gICAgZmxvYXQ6IHJpZ2h0O1xuICB9XG59XG5cbi5hdHRyaWJ1dGVzVGFibGVXcmFwcGVyIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBvdmVyZmxvdy14OiBhdXRvO1xufVxuXG5AbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA2My45Mzc1ZW0pIHtcbiAgLmF0dHJpYnV0ZXNUYWJsZVdyYXBwZXIge1xuICAgIGRpc3BsYXk6IG5vbmU7XG4gIH1cbn1cblxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgLmF0dHJpYnV0ZXNUYWJsZVdyYXBwZXIge1xuICAgIHdpZHRoOiA2My4zMzMzMyU7XG4gICAgZmxvYXQ6IGxlZnQ7XG4gICAgcGFkZGluZy1yaWdodDogMDtcbiAgICBwYWRkaW5nLWxlZnQ6IDA7XG4gIH1cbiAgLmF0dHJpYnV0ZXNUYWJsZVdyYXBwZXI6bGFzdC1jaGlsZDpub3QoOmZpcnN0LWNoaWxkKSB7XG4gICAgZmxvYXQ6IHJpZ2h0O1xuICB9XG59XG5cbi5jb21wYXJlUXVpY2tWaWV3IGxhYmVsIHtcbiAgbWFyZ2luLXJpZ2h0OiAzcHg7XG59XG5cbi5jb21wYXJlUXVpY2tWaWV3IHNwYW4sIC5jb21wYXJlUXVpY2tWaWV3IGxhYmVsLCAuY29tcGFyZVF1aWNrVmlldyBhIHtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xufVxuXG4uc2VhcmNoVGFibGVCcmFuZExvZ28ge1xuICBtYXgtd2lkdGg6IDY1cHg7XG4gIG1hcmdpbi10b3A6IC0yMHB4O1xufVxuXG5AbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA4OS45Mzc1ZW0pIHtcbiAgLmF0dHJpYnV0ZXNUYWJsZUhlYWRlciB7XG4gICAgZm9udC1zaXplOiAwLjg1NzE0cmVtO1xuICAgIGxpbmUtaGVpZ2h0OiAxcmVtO1xuICB9XG59XG5cbi5zZWFyY2hSZXN1bHRzUm93IGgzIHtcbiAgY29sb3I6ICMwYTBhMGE7XG59XG5cbkBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDYzLjkzNzVlbSkge1xuICAjdDEge1xuICAgIG1pbi13aWR0aDogYXV0byAhaW1wb3J0YW50O1xuICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgfVxuICAjdDEgLmNvbXBhcmVRdWlja1ZpZXcge1xuICAgIHRleHQtYWxpZ246IGxlZnQ7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIGJvdHRvbTogLTRweDtcbiAgfVxuICAjdDEgLnNlYXJjaFJlc3VsdHNQcm9kdWN0RGV0YWlscyB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICB9XG59XG5cbiN0MiB7XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbn1cblxuI3QyIHRib2R5IHRkIHtcbiAgYm9yZGVyOiAxcHggc29saWQgI2YxZjFmMTtcbiAgYm9yZGVyLXRvcDogbm9uZTtcbiAgYm9yZGVyLWxlZnQ6IG5vbmU7XG59XG5cbi5mbG9hdFRoZWFkLXRhYmxlIHRoZWFkIHRoIHtcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xufVxuXG4uc2VhcmNoVGFibGVQcm9kdWN0SW1hZ2VDb250YWluZXIge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG59XG5cbi5iYXNrZXRJdGVtc091dGVyIHtcbiAgcGFkZGluZzogMC4zNTcxNHJlbTtcbn1cblxubGFiZWwuYmFza2V0SGVhZGluZyB7XG4gIGNvbG9yOiAjNzk3OTZBO1xuICB0ZXh0LWFsaWduOiBsZWZ0O1xufVxuXG4uYmFza2V0SXRlbSB7XG4gIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCAjZThlNWU1O1xuICBtYXJnaW4tYm90dG9tOiAwLjcxNDI5cmVtO1xuICBwYWRkaW5nOiAwLjM1NzE0cmVtO1xufVxuXG4uYmFza2V0SXRlbSBoMyB7XG4gIGNvbG9yOiAjMGEwYTBhO1xufVxuXG4uYmFza2V0SXRlbSAudXBkYXRlSXRlbSB7XG4gIGN1cnNvcjogcG9pbnRlcjtcbn1cblxuQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogNDcuOTM3NWVtKSB7XG4gIC5iYXNrZXRJdGVtIHtcbiAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gIH1cbiAgLmJhc2tldEl0ZW0gbGFiZWwubWlkZGxlIHtcbiAgICBtYXJnaW4tYm90dG9tOiAwLjM1NzE0cmVtO1xuICB9XG59XG5cbi5iYXNrZXRJdGVtLmludmFsaWQge1xuICAvKnRleHQtYWxpZ246IGNlbnRlcjsqL1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZjdlNGUxO1xufVxuXG4uYmFza2V0SXRlbSAudG90YWxQcmljZSB7XG4gIGZvbnQtd2VpZ2h0OiBib2xkO1xufVxuXG4uYmFza2V0SXRlbVJlbW92ZSB7XG4gIHdpZHRoOiAxMDAlO1xuICBmbG9hdDogbGVmdDtcbiAgcGFkZGluZy1yaWdodDogMC4zNTcxNHJlbTtcbiAgcGFkZGluZy1sZWZ0OiAwLjM1NzE0cmVtO1xufVxuXG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDhlbSkge1xuICAuYmFza2V0SXRlbVJlbW92ZSB7XG4gICAgcGFkZGluZy1yaWdodDogMC41NzE0M3JlbTtcbiAgICBwYWRkaW5nLWxlZnQ6IDAuNTcxNDNyZW07XG4gIH1cbn1cblxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgLmJhc2tldEl0ZW1SZW1vdmUge1xuICAgIHBhZGRpbmctcmlnaHQ6IDAuNTcxNDNyZW07XG4gICAgcGFkZGluZy1sZWZ0OiAwLjU3MTQzcmVtO1xuICB9XG59XG5cbi5iYXNrZXRJdGVtUmVtb3ZlOmxhc3QtY2hpbGQ6bm90KDpmaXJzdC1jaGlsZCkge1xuICBmbG9hdDogcmlnaHQ7XG59XG5cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0OGVtKSB7XG4gIC5iYXNrZXRJdGVtUmVtb3ZlIHtcbiAgICB3aWR0aDogNC4xNjY2NyU7XG4gICAgZmxvYXQ6IGxlZnQ7XG4gICAgcGFkZGluZy1yaWdodDogMC4zNTcxNHJlbTtcbiAgICBwYWRkaW5nLWxlZnQ6IDAuMzU3MTRyZW07XG4gIH1cbn1cblxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQ4ZW0pIGFuZCAobWluLXdpZHRoOiA0OGVtKSB7XG4gIC5iYXNrZXRJdGVtUmVtb3ZlIHtcbiAgICBwYWRkaW5nLXJpZ2h0OiAwLjU3MTQzcmVtO1xuICAgIHBhZGRpbmctbGVmdDogMC41NzE0M3JlbTtcbiAgfVxufVxuXG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDhlbSkgYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgLmJhc2tldEl0ZW1SZW1vdmUge1xuICAgIHBhZGRpbmctcmlnaHQ6IDAuNTcxNDNyZW07XG4gICAgcGFkZGluZy1sZWZ0OiAwLjU3MTQzcmVtO1xuICB9XG59XG5cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0OGVtKSB7XG4gIC5iYXNrZXRJdGVtUmVtb3ZlOmxhc3QtY2hpbGQ6bm90KDpmaXJzdC1jaGlsZCkge1xuICAgIGZsb2F0OiByaWdodDtcbiAgfVxufVxuXG4uYmFza2V0SXRlbUltZyB7XG4gIHdpZHRoOiAxMDAlO1xuICBmbG9hdDogbGVmdDtcbiAgcGFkZGluZy1yaWdodDogMC4zNTcxNHJlbTtcbiAgcGFkZGluZy1sZWZ0OiAwLjM1NzE0cmVtO1xufVxuXG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDhlbSkge1xuICAuYmFza2V0SXRlbUltZyB7XG4gICAgcGFkZGluZy1yaWdodDogMC41NzE0M3JlbTtcbiAgICBwYWRkaW5nLWxlZnQ6IDAuNTcxNDNyZW07XG4gIH1cbn1cblxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgLmJhc2tldEl0ZW1JbWcge1xuICAgIHBhZGRpbmctcmlnaHQ6IDAuNTcxNDNyZW07XG4gICAgcGFkZGluZy1sZWZ0OiAwLjU3MTQzcmVtO1xuICB9XG59XG5cbi5iYXNrZXRJdGVtSW1nOmxhc3QtY2hpbGQ6bm90KDpmaXJzdC1jaGlsZCkge1xuICBmbG9hdDogcmlnaHQ7XG59XG5cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0OGVtKSB7XG4gIC5iYXNrZXRJdGVtSW1nIHtcbiAgICB3aWR0aDogNS44MzMzMyU7XG4gICAgZmxvYXQ6IGxlZnQ7XG4gICAgcGFkZGluZy1yaWdodDogMC4zNTcxNHJlbTtcbiAgICBwYWRkaW5nLWxlZnQ6IDAuMzU3MTRyZW07XG4gIH1cbn1cblxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQ4ZW0pIGFuZCAobWluLXdpZHRoOiA0OGVtKSB7XG4gIC5iYXNrZXRJdGVtSW1nIHtcbiAgICBwYWRkaW5nLXJpZ2h0OiAwLjU3MTQzcmVtO1xuICAgIHBhZGRpbmctbGVmdDogMC41NzE0M3JlbTtcbiAgfVxufVxuXG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDhlbSkgYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgLmJhc2tldEl0ZW1JbWcge1xuICAgIHBhZGRpbmctcmlnaHQ6IDAuNTcxNDNyZW07XG4gICAgcGFkZGluZy1sZWZ0OiAwLjU3MTQzcmVtO1xuICB9XG59XG5cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0OGVtKSB7XG4gIC5iYXNrZXRJdGVtSW1nOmxhc3QtY2hpbGQ6bm90KDpmaXJzdC1jaGlsZCkge1xuICAgIGZsb2F0OiByaWdodDtcbiAgfVxufVxuXG4uYmFza2V0SXRlbURlc2Mge1xuICB3aWR0aDogMTAwJTtcbiAgZmxvYXQ6IGxlZnQ7XG4gIHBhZGRpbmctcmlnaHQ6IDAuMzU3MTRyZW07XG4gIHBhZGRpbmctbGVmdDogMC4zNTcxNHJlbTtcbn1cblxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQ4ZW0pIHtcbiAgLmJhc2tldEl0ZW1EZXNjIHtcbiAgICBwYWRkaW5nLXJpZ2h0OiAwLjU3MTQzcmVtO1xuICAgIHBhZGRpbmctbGVmdDogMC41NzE0M3JlbTtcbiAgfVxufVxuXG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAuYmFza2V0SXRlbURlc2Mge1xuICAgIHBhZGRpbmctcmlnaHQ6IDAuNTcxNDNyZW07XG4gICAgcGFkZGluZy1sZWZ0OiAwLjU3MTQzcmVtO1xuICB9XG59XG5cbi5iYXNrZXRJdGVtRGVzYzpsYXN0LWNoaWxkOm5vdCg6Zmlyc3QtY2hpbGQpIHtcbiAgZmxvYXQ6IHJpZ2h0O1xufVxuXG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDhlbSkge1xuICAuYmFza2V0SXRlbURlc2Mge1xuICAgIHdpZHRoOiAzMi41JTtcbiAgICBmbG9hdDogbGVmdDtcbiAgICBwYWRkaW5nLXJpZ2h0OiAwLjM1NzE0cmVtO1xuICAgIHBhZGRpbmctbGVmdDogMC4zNTcxNHJlbTtcbiAgfVxufVxuXG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDhlbSkgYW5kIChtaW4td2lkdGg6IDQ4ZW0pIHtcbiAgLmJhc2tldEl0ZW1EZXNjIHtcbiAgICBwYWRkaW5nLXJpZ2h0OiAwLjU3MTQzcmVtO1xuICAgIHBhZGRpbmctbGVmdDogMC41NzE0M3JlbTtcbiAgfVxufVxuXG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDhlbSkgYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgLmJhc2tldEl0ZW1EZXNjIHtcbiAgICBwYWRkaW5nLXJpZ2h0OiAwLjU3MTQzcmVtO1xuICAgIHBhZGRpbmctbGVmdDogMC41NzE0M3JlbTtcbiAgfVxufVxuXG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDhlbSkge1xuICAuYmFza2V0SXRlbURlc2M6bGFzdC1jaGlsZDpub3QoOmZpcnN0LWNoaWxkKSB7XG4gICAgZmxvYXQ6IHJpZ2h0O1xuICB9XG59XG5cbi5iYXNrZXRJdGVtUXR5IHtcbiAgd2lkdGg6IDEwMCU7XG4gIGZsb2F0OiBsZWZ0O1xuICBwYWRkaW5nLXJpZ2h0OiAwLjM1NzE0cmVtO1xuICBwYWRkaW5nLWxlZnQ6IDAuMzU3MTRyZW07XG59XG5cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0OGVtKSB7XG4gIC5iYXNrZXRJdGVtUXR5IHtcbiAgICBwYWRkaW5nLXJpZ2h0OiAwLjU3MTQzcmVtO1xuICAgIHBhZGRpbmctbGVmdDogMC41NzE0M3JlbTtcbiAgfVxufVxuXG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAuYmFza2V0SXRlbVF0eSB7XG4gICAgcGFkZGluZy1yaWdodDogMC41NzE0M3JlbTtcbiAgICBwYWRkaW5nLWxlZnQ6IDAuNTcxNDNyZW07XG4gIH1cbn1cblxuLmJhc2tldEl0ZW1RdHk6bGFzdC1jaGlsZDpub3QoOmZpcnN0LWNoaWxkKSB7XG4gIGZsb2F0OiByaWdodDtcbn1cblxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQ4ZW0pIHtcbiAgLmJhc2tldEl0ZW1RdHkge1xuICAgIHdpZHRoOiAyMC44MzMzMyU7XG4gICAgZmxvYXQ6IGxlZnQ7XG4gICAgcGFkZGluZy1yaWdodDogMC4zNTcxNHJlbTtcbiAgICBwYWRkaW5nLWxlZnQ6IDAuMzU3MTRyZW07XG4gIH1cbn1cblxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQ4ZW0pIGFuZCAobWluLXdpZHRoOiA0OGVtKSB7XG4gIC5iYXNrZXRJdGVtUXR5IHtcbiAgICBwYWRkaW5nLXJpZ2h0OiAwLjU3MTQzcmVtO1xuICAgIHBhZGRpbmctbGVmdDogMC41NzE0M3JlbTtcbiAgfVxufVxuXG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDhlbSkgYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgLmJhc2tldEl0ZW1RdHkge1xuICAgIHBhZGRpbmctcmlnaHQ6IDAuNTcxNDNyZW07XG4gICAgcGFkZGluZy1sZWZ0OiAwLjU3MTQzcmVtO1xuICB9XG59XG5cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0OGVtKSB7XG4gIC5iYXNrZXRJdGVtUXR5Omxhc3QtY2hpbGQ6bm90KDpmaXJzdC1jaGlsZCkge1xuICAgIGZsb2F0OiByaWdodDtcbiAgfVxufVxuXG4uYmFza2V0SXRlbVN0YXR1cyB7XG4gIHdpZHRoOiAxMDAlO1xuICBmbG9hdDogbGVmdDtcbiAgcGFkZGluZy1yaWdodDogMC4zNTcxNHJlbTtcbiAgcGFkZGluZy1sZWZ0OiAwLjM1NzE0cmVtO1xufVxuXG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDhlbSkge1xuICAuYmFza2V0SXRlbVN0YXR1cyB7XG4gICAgcGFkZGluZy1yaWdodDogMC41NzE0M3JlbTtcbiAgICBwYWRkaW5nLWxlZnQ6IDAuNTcxNDNyZW07XG4gIH1cbn1cblxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgLmJhc2tldEl0ZW1TdGF0dXMge1xuICAgIHBhZGRpbmctcmlnaHQ6IDAuNTcxNDNyZW07XG4gICAgcGFkZGluZy1sZWZ0OiAwLjU3MTQzcmVtO1xuICB9XG59XG5cbi5iYXNrZXRJdGVtU3RhdHVzOmxhc3QtY2hpbGQ6bm90KDpmaXJzdC1jaGlsZCkge1xuICBmbG9hdDogcmlnaHQ7XG59XG5cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0OGVtKSB7XG4gIC5iYXNrZXRJdGVtU3RhdHVzIHtcbiAgICB3aWR0aDogMjAlO1xuICAgIGZsb2F0OiBsZWZ0O1xuICAgIHBhZGRpbmctcmlnaHQ6IDAuMzU3MTRyZW07XG4gICAgcGFkZGluZy1sZWZ0OiAwLjM1NzE0cmVtO1xuICB9XG59XG5cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0OGVtKSBhbmQgKG1pbi13aWR0aDogNDhlbSkge1xuICAuYmFza2V0SXRlbVN0YXR1cyB7XG4gICAgcGFkZGluZy1yaWdodDogMC41NzE0M3JlbTtcbiAgICBwYWRkaW5nLWxlZnQ6IDAuNTcxNDNyZW07XG4gIH1cbn1cblxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQ4ZW0pIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gIC5iYXNrZXRJdGVtU3RhdHVzIHtcbiAgICBwYWRkaW5nLXJpZ2h0OiAwLjU3MTQzcmVtO1xuICAgIHBhZGRpbmctbGVmdDogMC41NzE0M3JlbTtcbiAgfVxufVxuXG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDhlbSkge1xuICAuYmFza2V0SXRlbVN0YXR1czpsYXN0LWNoaWxkOm5vdCg6Zmlyc3QtY2hpbGQpIHtcbiAgICBmbG9hdDogcmlnaHQ7XG4gIH1cbn1cblxuLmFkZHJlc3Nlc09wdGlvbiB1bCB7XG4gIG1heC13aWR0aDogOC4yMTQyOXJlbTtcbn1cblxuLmFkZHJlc3Nlc09wdGlvbiB1bCBhIHtcbiAgY29sb3I6ICMwYTBhMGE7XG4gIGZvbnQtd2VpZ2h0OiBib2xkO1xuICBwYWRkaW5nOiAwLjY0Mjg2cmVtIDAuMjg1NzFyZW07XG59XG5cbi5hZGRyZXNzZXNPcHRpb24gdWwgbGkgLnN1YiB7XG4gIGJvcmRlcjogMXB4IHNvbGlkICNlOGU1ZTU7XG59XG5cbi5hZGRyZXNzZXNPcHRpb24gdWwgbGkgLnN1YiBhIHtcbiAgcGFkZGluZzogMTVweCA4cHggIWltcG9ydGFudDtcbiAgZm9udC13ZWlnaHQ6IG5vcm1hbDtcbiAgY3Vyc29yOiBwb2ludGVyO1xufVxuXG4uYWRkcmVzc2VzT3B0aW9uIHVsIGxpIC5zdWIgYTpob3ZlciB7XG4gIGJhY2tncm91bmQ6IGxpZ2h0Z3JleTtcbn1cblxuLmFkZHJlc3Nlc09wdGlvbiAuYWNjb3JkaW9uLW1lbnUgLmlzLWFjY29yZGlvbi1zdWJtZW51LXBhcmVudDpub3QoLmhhcy1zdWJtZW51LXRvZ2dsZSkgPiBhOjphZnRlciB7XG4gIGJvcmRlci1jb2xvcjogIzBhMGEwYSB0cmFuc3BhcmVudCB0cmFuc3BhcmVudDtcbn1cblxuLmFkZGRyZXNzQmxvY2sge1xuICBjdXJzb3I6IHBvaW50ZXI7XG4gIHBhZGRpbmc6IDAuMzU3MTRyZW0gMC41NzE0M3JlbTtcbn1cblxuLmFkZGRyZXNzQmxvY2s6aG92ZXIge1xuICBiYWNrZ3JvdW5kOiAjZjlmOWY5O1xufVxuXG4ubm90aWZpY2F0aW9uc1BhbmVsIHtcbiAgcG9zaXRpb246IGZpeGVkO1xuICBsZWZ0OiAwO1xuICBib3R0b206IDA7XG4gIHotaW5kZXg6IDk5OTk5OTk5OTk5OTk7XG4gIGJveC1zaGFkb3c6IDAgM3B4IDZweCAwIHJnYmEoMCwgMCwgMCwgMC4yKTtcbiAgbWluLXdpZHRoOiAyNTBweDtcbn1cblxuLm5vdGlmaWNhdGlvbnNQYW5lbC5vcGVuIHtcbiAgdG9wOiAzMHB4O1xuICBib3R0b206IDQwcHg7XG59XG5cbi5ub3RpZmljYXRpb25zUGFuZWwgLm5vdGlmaWNhdGlvblBhbmVsQ291bnQge1xuICBiYWNrZ3JvdW5kOiAjRjk1QTYxO1xuICBjb2xvcjogd2hpdGU7XG4gIGZvbnQtd2VpZ2h0OiBub3JtYWw7XG4gIGZvbnQtc2l6ZTogMTZweDtcbiAgcGFkZGluZzogNXB4O1xuICBib3JkZXItcmFkaXVzOiA1cHggNXB4IDAgMDtcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xuICBjdXJzb3I6IHBvaW50ZXI7XG59XG5cbi5ub3RpZmljYXRpb25zUGFuZWwgLm5vdGlmaWNhdGlvbkxpc3Qge1xuICBiYWNrZ3JvdW5kOiByZ2JhKDQ5LCA0OSwgNDksIDAuOSk7XG4gIGNvbG9yOiB3aGl0ZTtcbiAgZm9udC13ZWlnaHQ6IG5vcm1hbDtcbiAgb3ZlcmZsb3cteTogYXV0bztcbiAgaGVpZ2h0OiAxMDAlO1xuICBwYWRkaW5nOiA1cHg7XG59XG5cbi5ub3RpZmljYXRpb25zUGFuZWwgLm5vdGlmaWNhdGlvbkxpc3QgLnJvdyB7XG4gIGN1cnNvcjogcG9pbnRlcjtcbiAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkICNmZWZlZmU7XG59XG5cbi5ub3RpZmljYXRpb25zUGFuZWwgLm5vdGlmaWNhdGlvbkxpc3QgLnJvdyBpIHtcbiAgZm9udC1zaXplOiAxLjQyODU3cmVtO1xuICBwYWRkaW5nLXRvcDogNXB4O1xuICB2aXNpYmlsaXR5OiBoaWRkZW47XG59XG5cbi5ub3RpZmljYXRpb25zUGFuZWwgLm5vdGlmaWNhdGlvbkxpc3QgLnJvdyBpOmhvdmVyIHtcbiAgY29sb3I6ICNGOTVBNjE7XG59XG5cbi5ub3RpZmljYXRpb25zUGFuZWwgLm5vdGlmaWNhdGlvbkxpc3QgLnJvdzpob3ZlciB7XG4gIGJhY2tncm91bmQ6IHJnYmEoNDksIDQ5LCA0OSwgMC45KTtcbn1cblxuLm5vdGlmaWNhdGlvbnNQYW5lbCAubm90aWZpY2F0aW9uTGlzdCAucm93OmhvdmVyIGkge1xuICB2aXNpYmlsaXR5OiB2aXNpYmxlO1xufVxuXG4ubm90aWZpY2F0aW9uc1BhbmVsIC5ub3RpZmljYXRpb25MaXN0IC5yb3cgLmNvbHVtbnMge1xuICBwYWRkaW5nLXRvcDogMC4zNTcxNHJlbTtcbiAgcGFkZGluZy1ib3R0b206IDAuMzU3MTRyZW07XG59XG5cbi5vcGVuTGFiZWwge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIGxlZnQ6IC0xMDAlO1xuICB3aWR0aDogNDAlO1xuICBoZWlnaHQ6IDEwMCU7XG4gIGJhY2tncm91bmQ6ICNhOWE4YTQ7XG4gIHRyYW5zaXRpb246IDAuNHM7XG4gIHBhZGRpbmc6IDVweDtcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xufVxuXG4ub3BlbkxhYmVsIGgzIHtcbiAgcGFkZGluZy10b3A6IDEuMDcxNDNyZW07XG59XG5cbi5ub3RpZmljYXRpb25JdGVtIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xufVxuXG4ubm90aWZpY2F0aW9uSXRlbTpob3ZlciAub3BlbkxhYmVsIHtcbiAgdHJhbnNpdGlvbjogMC40cztcbiAgbGVmdDogMDtcbn1cblxuLm5vdGlmaWNhdGlvbkl0ZW0gcCB7XG4gIG1hcmdpbi1ib3R0b206IDAuMzU3MTRyZW07XG59XG5cbi5ub3RpZmljYXRpb25JdGVtIGxhYmVsIHtcbiAgdGV4dC1hbGlnbjogcmlnaHQ7XG4gIGZvbnQtc2l6ZTogMTJweDtcbiAgY29sb3I6IHdoaXRlO1xufVxuXG4ubm90aWZpY2F0aW9uUGFuZWxDb3VudDpob3ZlciAuYm91bmNlRG93biB7XG4gIC1tb3otYW5pbWF0aW9uOiBib3VuY2VEb3duIDJzIGluZmluaXRlIGFsdGVybmF0ZSBlYXNlLWluLW91dDtcbiAgLXdlYmtpdC1hbmltYXRpb246IGJvdW5jZURvd24gMnMgaW5maW5pdGUgYWx0ZXJuYXRlIGVhc2UtaW4tb3V0O1xuICBhbmltYXRpb246IGJvdW5jZURvd24gMnMgaW5maW5pdGUgYWx0ZXJuYXRlIGVhc2UtaW4tb3V0O1xufVxuXG4ubm90aWZpY2F0aW9uUGFuZWxDb3VudDpob3ZlciAuYm91bmNlVXAge1xuICAtbW96LWFuaW1hdGlvbjogYm91bmNlVXAgMnMgaW5maW5pdGUgYWx0ZXJuYXRlIGVhc2UtaW4tb3V0O1xuICAtd2Via2l0LWFuaW1hdGlvbjogYm91bmNlVXAgMnMgaW5maW5pdGUgYWx0ZXJuYXRlIGVhc2UtaW4tb3V0O1xuICBhbmltYXRpb246IGJvdW5jZVVwIDJzIGluZmluaXRlIGFsdGVybmF0ZSBlYXNlLWluLW91dDtcbn1cblxuLm5vdGlmaWNhdGlvblBhbmVsQ291bnQgLmZhLWFuZ2xlLWRvd24ge1xuICBmbG9hdDogbGVmdDtcbiAgcGFkZGluZy1sZWZ0OiAxNXB4O1xuICBtYXJnaW4tcmlnaHQ6IC0xNXB4O1xuICBmb250LXNpemU6IDMwcHg7XG4gIGxpbmUtaGVpZ2h0OiAyM3B4O1xuICBmb250LXdlaWdodDogYm9sZDtcbn1cblxuLm5vdGlmaWNhdGlvblBhbmVsQ291bnQgLmZhLWFuZ2xlLXVwIHtcbiAgZmxvYXQ6IGxlZnQ7XG4gIHBhZGRpbmctbGVmdDogMTVweDtcbiAgbWFyZ2luLXJpZ2h0OiAtMTVweDtcbiAgZm9udC1zaXplOiAzMHB4O1xuICBsaW5lLWhlaWdodDogMjNweDtcbiAgZm9udC13ZWlnaHQ6IGJvbGQ7XG59XG5cbkAtbW96LWtleWZyYW1lcyBib3VuY2VEb3duIHtcbiAgMCUsIDIwJSwgNTAlLCA4MCUsIDEwMCUge1xuICAgIC1tb3otdHJhbnNmb3JtOiB0cmFuc2xhdGVZKDApO1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgwKTtcbiAgfVxuICA0MCUge1xuICAgIC1tb3otdHJhbnNmb3JtOiB0cmFuc2xhdGVZKDEwcHgpO1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgxMHB4KTtcbiAgfVxuICA2MCUge1xuICAgIC1tb3otdHJhbnNmb3JtOiB0cmFuc2xhdGVZKDEycHgpO1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgxMnB4KTtcbiAgfVxufVxuXG5ALXdlYmtpdC1rZXlmcmFtZXMgYm91bmNlRG93biB7XG4gIDAlLCAyMCUsIDUwJSwgODAlLCAxMDAlIHtcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlWSgwKTtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoMCk7XG4gIH1cbiAgNDAlIHtcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlWSgxMHB4KTtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoMTBweCk7XG4gIH1cbiAgNjAlIHtcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlWSgxMnB4KTtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoMTJweCk7XG4gIH1cbn1cblxuQGtleWZyYW1lcyBib3VuY2VEb3duIHtcbiAgMCUsIDIwJSwgNTAlLCA4MCUsIDEwMCUge1xuICAgIC1tb3otdHJhbnNmb3JtOiB0cmFuc2xhdGVZKDApO1xuICAgIC1tcy10cmFuc2Zvcm06IHRyYW5zbGF0ZVkoMCk7XG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZVkoMCk7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKDApO1xuICB9XG4gIDQwJSB7XG4gICAgLW1vei10cmFuc2Zvcm06IHRyYW5zbGF0ZVkoMTBweCk7XG4gICAgLW1zLXRyYW5zZm9ybTogdHJhbnNsYXRlWSgxMHB4KTtcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlWSgxMHB4KTtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoMTBweCk7XG4gIH1cbiAgNjAlIHtcbiAgICAtbW96LXRyYW5zZm9ybTogdHJhbnNsYXRlWSgxMnB4KTtcbiAgICAtbXMtdHJhbnNmb3JtOiB0cmFuc2xhdGVZKDEycHgpO1xuICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGVZKDEycHgpO1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgxMnB4KTtcbiAgfVxufVxuXG5ALW1vei1rZXlmcmFtZXMgYm91bmNlVXAge1xuICAwJSwgMjAlLCA1MCUsIDgwJSwgMTAwJSB7XG4gICAgLW1vei10cmFuc2Zvcm06IHRyYW5zbGF0ZVkoMCk7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKDApO1xuICB9XG4gIDQwJSB7XG4gICAgLW1vei10cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTEwcHgpO1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgtMTBweCk7XG4gIH1cbiAgNjAlIHtcbiAgICAtbW96LXRyYW5zZm9ybTogdHJhbnNsYXRlWSgtMTJweCk7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC0xMnB4KTtcbiAgfVxufVxuXG5ALXdlYmtpdC1rZXlmcmFtZXMgYm91bmNlVXAge1xuICAwJSwgMjAlLCA1MCUsIDgwJSwgMTAwJSB7XG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZVkoMCk7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKDApO1xuICB9XG4gIDQwJSB7XG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTEwcHgpO1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgtMTBweCk7XG4gIH1cbiAgNjAlIHtcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlWSgtMTJweCk7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC0xMnB4KTtcbiAgfVxufVxuXG5Aa2V5ZnJhbWVzIGJvdW5jZVVwIHtcbiAgMCUsIDIwJSwgNTAlLCA4MCUsIDEwMCUge1xuICAgIC1tb3otdHJhbnNmb3JtOiB0cmFuc2xhdGVZKDApO1xuICAgIC1tcy10cmFuc2Zvcm06IHRyYW5zbGF0ZVkoMCk7XG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZVkoMCk7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKDApO1xuICB9XG4gIDQwJSB7XG4gICAgLW1vei10cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTEwcHgpO1xuICAgIC1tcy10cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTEwcHgpO1xuICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC0xMHB4KTtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTEwcHgpO1xuICB9XG4gIDYwJSB7XG4gICAgLW1vei10cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTEycHgpO1xuICAgIC1tcy10cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTEycHgpO1xuICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC0xMnB4KTtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTEycHgpO1xuICB9XG59XG5cbi8qTW92ZSB0byBtZXNzYWdlcyovXG4ubm90aWZpY2F0aW9uSXRlbVJvdyB7XG4gIHBhZGRpbmctdG9wOiAwLjY0Mjg2cmVtO1xuICBwYWRkaW5nLWJvdHRvbTogMC42NDI4NnJlbTtcbiAgcGFkZGluZy1sZWZ0OiAwLjU3MTQzcmVtO1xuICBib3JkZXItYm90dG9tOiAxcHggc29saWQgI0VDRUZGMTtcbiAgY3Vyc29yOiBwb2ludGVyO1xufVxuXG4ubm90aWZpY2F0aW9uSXRlbVJvdzpob3ZlciB7XG4gIGJhY2tncm91bmQ6IHJnYmEoNDksIDQ5LCA0OSwgMC4wMyk7XG59XG5cbi5ub3RpZmljYXRpb25JdGVtUm93IGgzIHtcbiAgbWFyZ2luLWJvdHRvbTogMDtcbiAgcGFkZGluZzogMnB4IDA7XG59XG5cbi5ub3RpZmljYXRpb25JdGVtUm93IHAge1xuICBtYXJnaW4tYm90dG9tOiAwO1xuICBwYWRkaW5nOiAycHggMDtcbn1cblxuLm5vdGlmaWNhdGlvbkl0ZW1Sb3cgbGFiZWwge1xuICBtYXJnaW4tYm90dG9tOiAwO1xuICBwYWRkaW5nOiAycHggMDtcbn1cblxuLm5vdGlmaWNhdGlvbkl0ZW1Sb3cgLnVucmVhZE5vdGlmaWNhdGlvbiB7XG4gIGJvcmRlci1sZWZ0OiAzcHggc29saWQgI0Y5NUE2MTtcbn1cblxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQ4ZW0pIHtcbiAgLm1lc3NhZ2VCb2R5Q29sIHtcbiAgICBwYWRkaW5nLWxlZnQ6IDAuNzE0MjlyZW07XG4gIH1cbn1cblxuLm1lc3NhZ2VCb2R5Q29sIC5jbG9zZUJhciB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgaGVpZ2h0OiAzMnB4O1xuICBiYWNrZ3JvdW5kOiAjZmJmYmZiO1xuICBib3JkZXItcmFkaXVzOiA1cHg7XG4gIG1hcmdpbi1ib3R0b206IDE1cHg7XG59XG5cbi5tZXNzYWdlQm9keUNvbCAuY2xvc2VCYXIgLmNsb3NlLWJ1dHRvbiB7XG4gIHJpZ2h0OiAwLjVyZW07XG4gIHRvcDogMC4yNXJlbTtcbn1cblxuLm5vV2lkdGgge1xuICB3aWR0aDogMCU7XG4gIGRpc3BsYXk6IGlubGluZTtcbn1cblxuLm5vdFZpc2libGUge1xuICBvcGFjaXR5OiAwO1xuICB2aXNpYmlsaXR5OiBoaWRkZW47XG59XG5cbi50cmFuc2l0aW9uIHtcbiAgdHJhbnNpdGlvbjogMC40cztcbiAgb3BhY2l0eTogMTtcbiAgdmlzaWJpbGl0eTogdmlzaWJsZTtcbn1cblxuaDIudW5yZWFkQ291bnQge1xuICBjb2xvcjogI0Y5NUE2MTtcbn1cblxuLm1vcmVJbmZvIHtcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xuICBtYXJnaW4tdG9wOiAyNXB4O1xufVxuXG4ucmVjZW50T3JkZXJzIGxhYmVsIHtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xufVxuXG4ucmVjZW50T3JkZXJzID4gLnJvdyB7XG4gIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCAjZThlNWU1O1xuICBwYWRkaW5nLXRvcDogMC40Mjg1N3JlbTtcbiAgcGFkZGluZy1ib3R0b206IDAuNDI4NTdyZW07XG4gIGN1cnNvcjogcG9pbnRlcjtcbn1cblxuLnJlY2VudE9yZGVycyA+IC5yb3c6aG92ZXIge1xuICBiYWNrZ3JvdW5kOiAjZThlNWU1O1xufVxuXG4jc2xpZGVyLWNvbnRhaW5lciB7XG4gIGJhY2tncm91bmQtc2l6ZTogY29udGFpbjtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xufVxuXG4uc2xpZGVyLWltZyB7XG4gIHdpZHRoOiAxMDAlO1xufVxuXG4uc2xpZGVyLW5hdiB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgdG9wOiA0MCU7XG4gIGNvbG9yOiAjZmZmZmZmY2M7XG4gIGZvbnQtc2l6ZTogNTBweDtcbiAgY3Vyc29yOiBwb2ludGVyO1xuICBkaXNwbGF5OiBub25lO1xufVxuXG4uc2l0ZVR5cGVQb3BVcCB7XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbn1cblxuLnNpdGVUeXBlUG9wVXAgaDIge1xuICBmb250LXNpemU6IDE4cHg7XG4gIGxpbmUtaGVpZ2h0OiAyMnB4O1xuICBjb2xvcjogIzRmNGY0ZjtcbiAgcGFkZGluZy10b3A6IDVweDtcbn1cblxuLnNpdGVUeXBlUG9wVXAgYSwgLnNpdGVUeXBlUG9wVXAgcCB7XG4gIGZvbnQtc2l6ZTogMTZweDtcbiAgbGluZS1oZWlnaHQ6IDIycHg7XG4gIGNvbG9yOiBibGFjaztcbn1cblxuLnNpdGVUeXBlUG9wVXAgYTpob3ZlciB7XG4gIHRleHQtZGVjb3JhdGlvbjogdW5kZXJsaW5lO1xuICB0ZXh0LWRlY29yYXRpb24tY29sb3I6ICMwNjNjN2M7XG59XG5cbi5zaXRlVHlwZVBvcFVwIHVsIHtcbiAgdGV4dC1hbGlnbjogbGVmdDtcbn1cblxuLmNvb2tpZU1lc3NhZ2UgcCB7XG4gIGNvbG9yOiAjM2EzNjM2O1xuICBmb250LXNpemU6IDExcHg7XG4gIG1hcmdpbi10b3A6IDIwcHg7XG59XG5cbi5wb3AtYm94LWhvbGQge1xuICBkaXNwbGF5OiBub25lO1xuICBvcGFjaXR5OiAxO1xuICBwb3NpdGlvbjogZml4ZWQ7XG4gIHJpZ2h0OiAyMnB4O1xuICB0b3A6IDIycHg7XG4gIHotaW5kZXg6IDk5OTk5OTk5OTtcbiAgcGFkZGluZzogMTVweDtcbiAgd2lkdGg6IDI3MHB4O1xuICBib3JkZXItcmFkaXVzOiAzcHg7XG4gIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCByZ2JhKDAsIDAsIDAsIDAuMik7XG4gIGJveC1zaGFkb3c6IDAgMXB4IDVweCByZ2JhKDAsIDAsIDAsIDAuMTUpO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZmZmO1xuICBjb2xvcjogYmxhY2s7XG59XG5cbi5wb3AtYm94LWhvbGQgaDIge1xuICBjb2xvcjogYmxhY2s7XG4gIGZvbnQtc2l6ZTogMTVweDtcbiAgbWFyZ2luOiAwO1xuICBwYWRkaW5nLXRvcDogMHB4O1xuICBwYWRkaW5nLWJvdHRvbTogNXB4O1xufVxuXG4ucG9wLWJveC1ob2xkIHNwYW4sIC5wb3AtYm94LWhvbGQgYSwgLnBvcC1ib3gtaG9sZCBwIHtcbiAgY29sb3I6IGJsYWNrICFpbXBvcnRhbnQ7XG59XG5cbi5jYXJ0LWRldGFpbCB7XG4gIG1hcmdpbi10b3A6IDE1cHg7XG4gIHRleHQtYWxpZ246IHJpZ2h0O1xufVxuXG4uY2FydC1kZXRhaWwgYSB7XG4gIG1hcmdpbi10b3A6IDEwcHggIWltcG9ydGFudDtcbiAgbWFyZ2luLWJvdHRvbTogM3B4ICFpbXBvcnRhbnQ7XG59XG5cbi5wb3AtYm94LWhvbGQgLmJ1dHRvbi5ncmVlbiwgLnBvcC1ib3gtaG9sZCAuYnV0dG9uLmdyZWVuOmhvdmVyIHtcbiAgYmFja2dyb3VuZDogIzJGOUY0NjtcbiAgY29sb3I6IHdoaXRlICFpbXBvcnRhbnQ7XG59XG5cbi5jYXJ0LXByaWNlIHtcbiAgZm9udC1zaXplOiAxOHB4O1xufVxuXG4ucmVkLXRleHQsIC5yZWRUZXh0IHtcbiAgY29sb3I6ICNiMjIyMjIgIWltcG9ydGFudDtcbn1cblxuLmN1cnJlbmN5RmxhZ3Mge1xuICB3aWR0aDogMTAwJTtcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xufVxuXG4uY3VycmVuY3lGbGFncyBidXR0b24ge1xuICBib3JkZXI6IDA7XG4gIGN1cnNvcjogcG9pbnRlcjtcbn1cblxuLmNvb2tpZS1wb2xpY3ktd3JhcCB7XG4gIHBvc2l0aW9uOiBmaXhlZDtcbiAgdG9wOiAwO1xuICByaWdodDogMDtcbiAgYm90dG9tOiAwO1xuICBsZWZ0OiAwO1xuICB6LWluZGV4OiAxMDAwOTtcbiAgYmFja2dyb3VuZC1jb2xvcjogcmdiYSgxMCwgMTAsIDEwLCAwLjQ1KTtcbiAgZGlzcGxheTogbm9uZTtcbn1cblxuLmNvb2tpZS1wb2xpY3kge1xuICBmb250LXNpemU6IDE2cHg7XG4gIHBvc2l0aW9uOiBmaXhlZDtcbiAgdG9wOiA1MCU7XG4gIGxlZnQ6IDUwJTtcbiAgdHJhbnNmb3JtOiB0cmFuc2xhdGUoLTUwJSwgLTUwJSk7XG4gIHotaW5kZXg6IDk5OTk5O1xuICB3aWR0aDogOTAlO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZmZmZmZmO1xuICBwYWRkaW5nOiAyZW07XG4gIGJvcmRlcjogbm9uZTtcbiAgYm94LXNoYWRvdzogMCAxcHggNHB4IDAgcmdiYSgwLCAwLCAwLCAwLjQpO1xuICBjb2xvcjogIzAwMDAwMDtcbiAgZm9udC13ZWlnaHQ6IG5vcm1hbDtcbiAgZGlzcGxheTogZmxleDtcbiAganVzdGlmeS1jb250ZW50OiBzcGFjZS1iZXR3ZWVuO1xuICBhbGlnbi1pdGVtczogY2VudGVyO1xuICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuICBib3JkZXItcmFkaXVzOiAzcHg7XG59XG5cbi5jb29raWUtcG9saWN5IFtjbGFzc149XCJjb29raWUtcG9saWN5LVwiXSB7XG4gIG1hcmdpbi10b3A6IDFlbTtcbn1cblxuLmNvb2tpZS1wb2xpY3kgW2NsYXNzXj1cImNvb2tpZS1wb2xpY3ktXCJdOmZpcnN0LWNoaWxkIHtcbiAgbWFyZ2luLXRvcDogMDtcbn1cblxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgLmNvb2tpZS1wb2xpY3kge1xuICAgIG1heC13aWR0aDogOTIwcHg7XG4gIH1cbn1cblxuLmNvb2tpZS1wb2xpY3kgLmNvb2tpZS1wb2xpY3ktLXRleHQge1xuICBmb250LXNpemU6IDFlbTtcbn1cblxuLmNvb2tpZS1wb2xpY3kgLmNvb2tpZS1wb2xpY3ktLXRleHQgYSB7XG4gIGZvbnQtd2VpZ2h0OiBub3JtYWw7XG4gIGNvbG9yOiAjMTMwYzAwO1xuICB0ZXh0LWRlY29yYXRpb246IHVuZGVybGluZTtcbn1cblxuLmNvb2tpZS1wb2xpY3kgLmNvb2tpZS1wb2xpY3ktLWJ0bnMge1xuICBkaXNwbGF5OiBmbGV4O1xuICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xufVxuXG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDhlbSkge1xuICAuY29va2llLXBvbGljeSAuY29va2llLXBvbGljeS0tYnRucyB7XG4gICAgZmxleC1kaXJlY3Rpb246IHJvdztcbiAgfVxufVxuXG4uY29va2llLXBvbGljeSAuY29va2llLXBvbGljeS0tYnRucyAuYnV0dG9uIHtcbiAgbWFyZ2luOiAuNWVtIC41ZW0gMDtcbn1cblxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQ4ZW0pIHtcbiAgLmNvb2tpZS1wb2xpY3kgLmNvb2tpZS1wb2xpY3ktLWJ0bnMgLmJ1dHRvbiB7XG4gICAgbWFyZ2luLXRvcDogMDtcbiAgICBtYXJnaW46IDFlbSAxZW07XG4gIH1cbn1cblxuLmNvb2tpZS1wb2xpY3kgLmNvb2tpZS1wb2xpY3ktLWJ0bnMgLmJ1dHRvbi1vdXRsaW5lIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogd2hpdGU7XG4gIGNvbG9yOiBibGFjaztcbiAgYm9yZGVyLWNvbG9yOiAjZDNkM2QzO1xufVxuXG4vKlZlcnRpY2FsIE1lbnUgVHJpZ2dlciovXG4udmVydGljYWxNZW51LXRyaWdnZXI6aG92ZXIge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjMGEwYTBhO1xuICBjb2xvcjogI2ZlZmVmZTtcbn1cblxuYS52ZXJ0aWNhbE1lbnUtdHJpZ2dlciB7XG4gIHBhZGRpbmctcmlnaHQ6IDIuNTcxNDNyZW07XG59XG5cbmEudmVydGljYWxNZW51LXRyaWdnZXIsIGEudmVydGljYWxNZW51LXRyaWdnZXI6Zm9jdXMsIGEudmVydGljYWxNZW51LXRyaWdnZXI6aG92ZXIge1xuICBjb2xvcjogI2ZlZmVmZTtcbn1cblxuLnZlcnRpY2FsTWVudS10cmlnZ2VyOjpiZWZvcmUsXG4udmVydGljYWxNZW51LXRyaWdnZXI6OmFmdGVyIHtcbiAgY29udGVudDogJyc7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgdG9wOiA1MCU7XG4gIG1hcmdpbi10b3A6IC0xcHg7XG4gIGhlaWdodDogMnB4O1xuICB3aWR0aDogOXB4O1xuICBiYWNrZ3JvdW5kOiAjZmZmZmZmO1xuICAtd2Via2l0LWJhY2tmYWNlLXZpc2liaWxpdHk6IGhpZGRlbjtcbiAgYmFja2ZhY2UtdmlzaWJpbGl0eTogaGlkZGVuO1xuICAtd2Via2l0LXRyYW5zaXRpb246IHdpZHRoIDAuM3MsIC13ZWJraXQtdHJhbnNmb3JtIDAuM3M7XG4gIC1tb3otdHJhbnNpdGlvbjogd2lkdGggMC4zcywgLW1vei10cmFuc2Zvcm0gMC4zcztcbiAgdHJhbnNpdGlvbjogd2lkdGggMC4zcywgdHJhbnNmb3JtIDAuM3M7XG59XG5cbi52ZXJ0aWNhbE1lbnUtdHJpZ2dlcjo6YmVmb3JlIHtcbiAgcmlnaHQ6IDIycHg7XG4gIC13ZWJraXQtdHJhbnNmb3JtOiByb3RhdGUoNDVkZWcpO1xuICAtbW96LXRyYW5zZm9ybTogcm90YXRlKDQ1ZGVnKTtcbiAgLW1zLXRyYW5zZm9ybTogcm90YXRlKDQ1ZGVnKTtcbiAgLW8tdHJhbnNmb3JtOiByb3RhdGUoNDVkZWcpO1xuICB0cmFuc2Zvcm06IHJvdGF0ZSg0NWRlZyk7XG59XG5cbi52ZXJ0aWNhbE1lbnUtdHJpZ2dlcjo6YWZ0ZXIge1xuICByaWdodDogMTdweDtcbiAgLXdlYmtpdC10cmFuc2Zvcm06IHJvdGF0ZSgtNDVkZWcpO1xuICAtbW96LXRyYW5zZm9ybTogcm90YXRlKC00NWRlZyk7XG4gIC1tcy10cmFuc2Zvcm06IHJvdGF0ZSgtNDVkZWcpO1xuICAtby10cmFuc2Zvcm06IHJvdGF0ZSgtNDVkZWcpO1xuICB0cmFuc2Zvcm06IHJvdGF0ZSgtNDVkZWcpO1xufVxuXG4udmVydGljYWxNZW51LXRyaWdnZXIuZHJvcGRvd24taXMtYWN0aXZlOjpiZWZvcmUsXG4udmVydGljYWxNZW51LXRyaWdnZXIuZHJvcGRvd24taXMtYWN0aXZlOjphZnRlciB7XG4gIHdpZHRoOiAxNHB4O1xufVxuXG4udmVydGljYWxNZW51LXRyaWdnZXIuZHJvcGRvd24taXMtYWN0aXZlOjpiZWZvcmUge1xuICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlWCg1cHgpIHJvdGF0ZSgtNDVkZWcpO1xuICAtbW96LXRyYW5zZm9ybTogdHJhbnNsYXRlWCg1cHgpIHJvdGF0ZSgtNDVkZWcpO1xuICAtbXMtdHJhbnNmb3JtOiB0cmFuc2xhdGVYKDVweCkgcm90YXRlKC00NWRlZyk7XG4gIC1vLXRyYW5zZm9ybTogdHJhbnNsYXRlWCg1cHgpIHJvdGF0ZSgtNDVkZWcpO1xuICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoNXB4KSByb3RhdGUoLTQ1ZGVnKTtcbn1cblxuLnZlcnRpY2FsTWVudS10cmlnZ2VyLmRyb3Bkb3duLWlzLWFjdGl2ZTo6YWZ0ZXIge1xuICAtd2Via2l0LXRyYW5zZm9ybTogcm90YXRlKDQ1ZGVnKTtcbiAgLW1vei10cmFuc2Zvcm06IHJvdGF0ZSg0NWRlZyk7XG4gIC1tcy10cmFuc2Zvcm06IHJvdGF0ZSg0NWRlZyk7XG4gIC1vLXRyYW5zZm9ybTogcm90YXRlKDQ1ZGVnKTtcbn1cblxuLnZlcnRpY2FsTWVudS10cmlnZ2VyLmRyb3Bkb3duLWlzLWFjdGl2ZSB7XG4gIGJhY2tncm91bmQ6ICNGOUE1MTk7XG4gIGNvbG9yOiAjMGEwYTBhO1xufVxuXG4udmVydGljYWxNZW51LXRyaWdnZXIge1xuICBkaXNwbGF5OiBibG9jaztcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBwYWRkaW5nOiAwIDM2cHggMCAyMHB4O1xuICBsaW5lLWhlaWdodDogNDBweDtcbiAgYmFja2dyb3VuZC1jb2xvcjogIzMxMzEzMTtcbiAgY29sb3I6ICNmZWZlZmU7XG4gIGZvbnQtc2l6ZTogMTRweDtcbiAgYm9yZGVyOiBub25lO1xuICBmb250LXdlaWdodDogNzAwO1xuICB6LWluZGV4OiAyMDAwMDtcbn1cblxuLmRpc3BsYXlCbG9jayB7XG4gIGRpc3BsYXk6IGJsb2NrICFpbXBvcnRhbnQ7XG59XG5cbi5UaWVyTWVudSB7XG4gIGRpc3BsYXk6IG5vbmU7XG59XG5cbi5UaWVyTWVudS5kcm9wZG93bi1pcy1hY3RpdmUge1xuICBkaXNwbGF5OiBibG9jaztcbiAgb3BhY2l0eTogMTtcbiAgei1pbmRleDogOTk5OTk5OTtcbn1cblxuLnRvcC1iYXIsXG4udG9wLWJhciB1bCB7XG4gIGJhY2tncm91bmQ6IG5vbmU7XG59XG5cbi50b3AtYmFyIHtcbiAgcGFkZGluZzogLjA1cmVtO1xufVxuXG4udGl0bGUtYmFyIHtcbiAgZGlzcGxheTogYmxvY2s7XG4gIGZsb2F0OiBub25lO1xuICBwYWRkaW5nOiAwLjFyZW0gMC42cmVtO1xuICBiYWNrZ3JvdW5kOiBub25lO1xufVxuXG4udGl0bGUtYmFyIC5tZW51LWljb24ge1xuICBib3R0b206IC0wLjM1NzE0cmVtO1xufVxuXG4ubWFpbk5hdiAuaXMtZHJpbGxkb3duIHtcbiAgbWF4LXdpZHRoOiAxMjAwcHggIWltcG9ydGFudDtcbiAgbWFyZ2luLXRvcDogMC43MTQyOXJlbTtcbiAgZGlzcGxheTogbm9uZTtcbn1cblxuLnNob3ctZHJpbGxkb3duIC5pcy1kcmlsbGRvd24ge1xuICBkaXNwbGF5OiBibG9jaztcbiAgbWFyZ2luLWJvdHRvbTogMTVweDtcbn1cblxuLm1haW5OYXYgLmRyaWxsZG93biBhIHtcbiAgYmFja2dyb3VuZDogbm9uZTtcbiAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkICM3OTc5NkE7XG59XG5cbi5UaWVyTWVudSBsaS50aWVySGVhZGVyIHtcbiAgZm9udC1zaXplOiAxcmVtO1xuICBsaW5lLWhlaWdodDogMjBweDtcbiAgcGFkZGluZzogNXB4IDEwcHg7XG4gIGZvbnQtd2VpZ2h0OiA3MDA7XG4gIGJhY2tncm91bmQ6ICMwYTBhMGE7XG59XG5cbi5tYWluTmF2IC5kcmlsbGRvd24gLmlzLWRyaWxsZG93bi1zdWJtZW51LXBhcmVudCA+IGE6OmFmdGVyIHtcbiAgYm9yZGVyLWNvbG9yOiB0cmFuc3BhcmVudCB0cmFuc3BhcmVudCB0cmFuc3BhcmVudCAjZmVmZWZlO1xufVxuXG4ubWFpbk5hdiAuZHJpbGxkb3duIC5pcy1kcmlsbGRvd24tc3VibWVudSB7XG4gIGJhY2tncm91bmQ6ICMzMTMxMzE7XG4gIG1pbi1oZWlnaHQ6IDEwMCU7XG59XG5cbkBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDYzLjkzNzVlbSkge1xuICAuVGllck1lbnUtd3JhcHBlci5leHBhbmRlZCAubWVudSBsaSB7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gIH1cbiAgLlRpZXJNZW51LXdyYXBwZXIgLmRyaWxsZG93biAuanMtZHJpbGxkb3duLWJhY2sgPiBhOjpiZWZvcmUge1xuICAgIGJvcmRlci1jb2xvcjogdHJhbnNwYXJlbnQgI2ZlZmVmZSB0cmFuc3BhcmVudCB0cmFuc3BhcmVudDtcbiAgfVxuICAuaGlkZS1vbi1jYXQtb3BlbiB7XG4gICAgZGlzcGxheTogbm9uZSAhaW1wb3J0YW50O1xuICB9XG4gIC5tYWluTmF2IHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgd2lkdGg6IDEwMCU7XG4gIH1cbiAgLm1haW5OYXYgLnRvcC1iYXItbGVmdCB7XG4gICAgZGlzcGxheTogbm9uZTtcbiAgICB3aWR0aDogMTAwJTtcbiAgICBib3JkZXItdG9wOiAxcHggc29saWQgI2RkZGRkZDtcbiAgfVxuICAuVGllck1lbnUtd3JhcHBlci5leHBhbmRlZCB7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIGJhY2tncm91bmQ6ICMzMTMxMzE7XG4gIH1cbiAgLmhlYWRlcldyYXBwZXIgLlRpZXJNZW51IGxhYmVsIHtcbiAgICBwYWRkaW5nOiA4cHg7XG4gICAgYmFja2dyb3VuZDogYmxhY2s7XG4gIH1cbiAgLnRpZXJIZWFkZXIge1xuICAgIGZvbnQtd2VpZ2h0OiBib2xkO1xuICB9XG4gIC50aWVyVGhyZWVNYXJnaW4ge1xuICAgIHBhZGRpbmctbGVmdDogMS43ODU3MXJlbTtcbiAgfVxufVxuXG5AbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gIC5UaWVyTWVudSB7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIHRvcDogMTAwJTtcbiAgICByaWdodDogYXV0bztcbiAgICBsZWZ0OiAwO1xuICB9XG4gIC5uZWFyQm90dG9tID4gdWwge1xuICAgIHRvcDogYXV0byAhaW1wb3J0YW50O1xuICAgIGJvdHRvbTogMHB4O1xuICAgIGhlaWdodDogYXV0bztcbiAgfVxuICAucmVsYXRpdmUge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgfVxuICAuVGllck1lbnUuZHJvcGRvd24taXMtYWN0aXZlIHtcbiAgICBiYWNrZ3JvdW5kOiB3aGl0ZTtcbiAgfVxuICAubWFpbk5hdiAudmVydGljYWwubWVudS5uZXN0ZWQge1xuICAgIGJhY2tncm91bmQ6IHdoaXRlO1xuICAgIGJveC1zaGFkb3c6IDAgNHB4IDEycHggcmdiYSgwLCAwLCAwLCAwLjEpO1xuICB9XG4gIC5tYWluTmF2IC52ZXJ0aWNhbC5tZW51IGEge1xuICAgIGNvbG9yOiAjMGEwYTBhICFpbXBvcnRhbnQ7XG4gIH1cbn1cblxuQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogNDcuOTM3NWVtKSB7XG4gIC5uby1qcyAudG9wLWJhciB7XG4gICAgZGlzcGxheTogbm9uZTtcbiAgfVxufVxuXG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAubm8tanMgLnRpdGxlLWJhciB7XG4gICAgZGlzcGxheTogbm9uZTtcbiAgfVxufVxuXG4vKlRpZXIgTWVudSBDb250ZW50Ki9cbkBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgLnRpdGxlLWJhciB7XG4gICAgZGlzcGxheTogbm9uZTtcbiAgfVxuICAubWFpbk5hdiAuaXMtZHJpbGxkb3duIHtcbiAgICBkaXNwbGF5OiBub25lO1xuICB9XG4gIC5oaWRlLW9uLWNhdC1vcGVuIHtcbiAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIH1cbiAgLlRpZXJNZW51IHtcbiAgICBtaW4td2lkdGg6IDMyMHB4O1xuICB9XG4gIC5UaWVyTWVudSBsaS50aWVySGVhZGVyIHtcbiAgICBmb250LXNpemU6IDFyZW07XG4gICAgbGluZS1oZWlnaHQ6IDEuNDI4NTdyZW07XG4gICAgcGFkZGluZzogMC4zNTcxNHJlbSAwLjcxNDI5cmVtO1xuICAgIGZvbnQtd2VpZ2h0OiA3MDA7XG4gICAgY29sb3I6ICMwMDA7XG4gICAgYmFja2dyb3VuZDogI2Y0ZjRmNDtcbiAgfVxuICAuVGllck1lbnUgPiBsaSB7XG4gICAgYm9yZGVyLXRvcDogMXB4IHNvbGlkICNlYmViZWI7XG4gIH1cbiAgLlRpZXJNZW51ID4gbGkgPiBhIHtcbiAgICBsaW5lLWhlaWdodDogMS40Mjg1N3JlbTtcbiAgICBwYWRkaW5nLXRvcDogMC4zNTcxNHJlbSAhaW1wb3J0YW50O1xuICAgIHBhZGRpbmctYm90dG9tOiAwLjM1NzE0cmVtICFpbXBvcnRhbnQ7XG4gICAgZm9udC1zaXplOiAwLjg1NzE0cmVtO1xuICB9XG4gIC5UaWVyTWVudS5kcm9wZG93bi5tZW51LnZlcnRpY2FsID4gbGkub3BlbnMtcmlnaHQgPiBhOjphZnRlciB7XG4gICAgYm9yZGVyLWNvbG9yOiB0cmFuc3BhcmVudCB0cmFuc3BhcmVudCB0cmFuc3BhcmVudCAjNzk3OTZBO1xuICB9XG4gIC5UaWVyTWVudS5kcm9wZG93bi5tZW51IC5pcy1hY3RpdmUgPiBhIHtcbiAgICBib3JkZXItbGVmdDogc29saWQgM3B4O1xuICAgIGJvcmRlci1jb2xvcjogIzBhMGEwYTtcbiAgICBwYWRkaW5nLWxlZnQ6IDAuOHJlbTtcbiAgfVxuICAuVGllck1lbnUuZHJvcGRvd24ubWVudS52ZXJ0aWNhbCA+IGxpLm9wZW5zLXJpZ2h0ID4gLmlzLWRyb3Bkb3duLXN1Ym1lbnUge1xuICAgIHdpZHRoOiA1MTVweDtcbiAgICBwYWRkaW5nOiA1cHg7XG4gIH1cbiAgLm1haW5OYXYgLnZlcnRpY2FsLm1lbnUubmVzdGVkIGRpdiBhIHtcbiAgICB3aGl0ZS1zcGFjZTogaW5oZXJpdDtcbiAgICBsaW5lLWhlaWdodDogMS4zcmVtO1xuICAgIGZvbnQtd2VpZ2h0OiA0MDA7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgcGFkZGluZy1sZWZ0OiAwO1xuICAgIHBhZGRpbmctYm90dG9tOiAwO1xuICAgIGZvbnQtc2l6ZTogMC44NTcxNHJlbTtcbiAgfVxuICAubWFpbk5hdiAudmVydGljYWwubWVudS5uZXN0ZWQgZGl2IGEudGllclRocmVlTWFyZ2luIHtcbiAgICBwYWRkaW5nLWxlZnQ6IDAuNTcxNDNyZW07XG4gIH1cbiAgLnRpZXJPbmVIZWFkZXIge1xuICAgIGNvbG9yOiAjMGEwYTBhICFpbXBvcnRhbnQ7XG4gICAgZm9udC1zaXplOiAxLjE0Mjg2cmVtO1xuICAgIGZvbnQtd2VpZ2h0OiA3MDA7XG4gICAgcGFkZGluZy1ib3R0b206IDVweDtcbiAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIH1cbiAgLmhlYWRlcldyYXBwZXIgLlRpZXJNZW51IGxhYmVsIHtcbiAgICBjb2xvcjogIzBhMGEwYTtcbiAgfVxuICAubWFpbk5hdiAudmVydGljYWwubWVudS5uZXN0ZWQgZGl2IGEudGllckhlYWRlciwgLm1haW5OYXYgLnZlcnRpY2FsLm1lbnUubmVzdGVkIGRpdiBsYWJlbCB7XG4gICAgZm9udC13ZWlnaHQ6IDcwMDtcbiAgICBmb250LXNpemU6IDFyZW07XG4gICAgbGluZS1oZWlnaHQ6IDEuNDI4NTdyZW07XG4gIH1cbiAgLnRpZXJEb2NDb3VudCB7XG4gICAgY29sb3I6ICM3OTc5NkE7XG4gICAgZm9udC1zaXplOiAwLjY0Mjg2cmVtO1xuICB9XG4gIC5tYWluTmF2IC52ZXJ0aWNhbC5tZW51Lm5lc3RlZCBsaSB7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gIH1cbiAgLm1haW5OYXYgLnZlcnRpY2FsLm1lbnUubmVzdGVkIGRpdiB7XG4gICAgZmxvYXQ6IGxlZnQ7XG4gICAgd2lkdGg6IDI0NXB4O1xuICAgIGhlaWdodDogYXV0bztcbiAgICBwYWRkaW5nOiA0cHggOHB4O1xuICAgIGNvbG9yOiAjMzMzO1xuICB9XG59XG5cbi5mb290ZXJDb250YWluZXIge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjMzEzMTMxO1xufVxuXG4uZm9vdGVyQm90dG9tIHtcbiAgbWF4LXdpZHRoOiA5Mi44NTcxNHJlbTtcbiAgbWFyZ2luLXJpZ2h0OiBhdXRvO1xuICBtYXJnaW4tbGVmdDogYXV0bztcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xufVxuXG4uZm9vdGVyQm90dG9tOjpiZWZvcmUsIC5mb290ZXJCb3R0b206OmFmdGVyIHtcbiAgZGlzcGxheTogdGFibGU7XG4gIGNvbnRlbnQ6ICcgJztcbn1cblxuLmZvb3RlckJvdHRvbTo6YWZ0ZXIge1xuICBjbGVhcjogYm90aDtcbn1cblxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgLmZvb3RlckJvdHRvbSAuZm9vdGVyLWNvbCB7XG4gICAgdGV4dC1hbGlnbjogbGVmdDtcbiAgfVxufVxuXG4uZm9vdGVyQ29udGFpbmVyIGEsIC5mb290ZXJDb250YWluZXIgcCwgLmZvb3RlckNvbnRhaW5lciBsaSwgLmZvb3RlckNvbnRhaW5lciBsYWJlbCB7XG4gIGNvbG9yOiAjZmVmZWZlO1xuICBmb250LXNpemU6IDFyZW07XG59XG5cbi5mb290ZXJDb250YWluZXIgYTpob3ZlciB7XG4gIHRleHQtZGVjb3JhdGlvbjogdW5kZXJsaW5lO1xuICB0ZXh0LWRlY29yYXRpb24tY29sb3I6ICNmZWZlZmU7XG59XG5cbi5jb25yYWRGb290ZXIge1xuICBtYXJnaW46IDAgYXV0bztcbn1cblxuLnRlcm1zUHJpdmFjeSB7XG4gIHdpZHRoOiAxMDAlO1xuICBmbG9hdDogbGVmdDtcbiAgcGFkZGluZy1yaWdodDogMC4zNTcxNHJlbTtcbiAgcGFkZGluZy1sZWZ0OiAwLjM1NzE0cmVtO1xuICBwYWRkaW5nLWJvdHRvbTogMC4zNTcxNHJlbTtcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xufVxuXG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDhlbSkge1xuICAudGVybXNQcml2YWN5IHtcbiAgICBwYWRkaW5nLXJpZ2h0OiAwLjU3MTQzcmVtO1xuICAgIHBhZGRpbmctbGVmdDogMC41NzE0M3JlbTtcbiAgfVxufVxuXG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAudGVybXNQcml2YWN5IHtcbiAgICBwYWRkaW5nLXJpZ2h0OiAwLjU3MTQzcmVtO1xuICAgIHBhZGRpbmctbGVmdDogMC41NzE0M3JlbTtcbiAgfVxufVxuXG4udGVybXNQcml2YWN5Omxhc3QtY2hpbGQ6bm90KDpmaXJzdC1jaGlsZCkge1xuICBmbG9hdDogcmlnaHQ7XG59XG5cbi5yZWdpc3Rlck5ld3NsZXR0ZXIge1xuICB3aWR0aDogMTAwJTtcbiAgZmxvYXQ6IGxlZnQ7XG4gIHBhZGRpbmctcmlnaHQ6IDAuMzU3MTRyZW07XG4gIHBhZGRpbmctbGVmdDogMC4zNTcxNHJlbTtcbn1cblxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQ4ZW0pIHtcbiAgLnJlZ2lzdGVyTmV3c2xldHRlciB7XG4gICAgcGFkZGluZy1yaWdodDogMC41NzE0M3JlbTtcbiAgICBwYWRkaW5nLWxlZnQ6IDAuNTcxNDNyZW07XG4gIH1cbn1cblxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgLnJlZ2lzdGVyTmV3c2xldHRlciB7XG4gICAgcGFkZGluZy1yaWdodDogMC41NzE0M3JlbTtcbiAgICBwYWRkaW5nLWxlZnQ6IDAuNTcxNDNyZW07XG4gIH1cbn1cblxuLnJlZ2lzdGVyTmV3c2xldHRlcjpsYXN0LWNoaWxkOm5vdCg6Zmlyc3QtY2hpbGQpIHtcbiAgZmxvYXQ6IHJpZ2h0O1xufVxuXG4ucmVnaXN0ZXJOZXdzbGV0dGVyIGJ1dHRvbiB7XG4gIGZvbnQtd2VpZ2h0OiBib2xkO1xufVxuXG4uZm9vdGVyQm90dG9tIC5jZXJ0aWZpY2F0ZS13cmFwIHtcbiAgZGlzcGxheTogZmxleDtcbiAgd2lkdGg6IDEwMCU7XG4gIGp1c3RpZnktY29udGVudDogY2VudGVyO1xufVxuXG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAuZm9vdGVyQm90dG9tIC5jZXJ0aWZpY2F0ZS13cmFwIHtcbiAgICBqdXN0aWZ5LWNvbnRlbnQ6IGZsZXgtc3RhcnQ7XG4gIH1cbn1cblxuLmZvb3RlckNvbnRhaW5lciAuYnNpR3JhcGhpYyB7XG4gIG1hcmdpbjogMCBhdXRvO1xufVxuXG4uY29weXJpZ2h0Q29udGVudCB7XG4gIHdpZHRoOiAxMDAlO1xuICBmbG9hdDogbGVmdDtcbiAgcGFkZGluZy1yaWdodDogMC4zNTcxNHJlbTtcbiAgcGFkZGluZy1sZWZ0OiAwLjM1NzE0cmVtO1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG59XG5cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0OGVtKSB7XG4gIC5jb3B5cmlnaHRDb250ZW50IHtcbiAgICBwYWRkaW5nLXJpZ2h0OiAwLjU3MTQzcmVtO1xuICAgIHBhZGRpbmctbGVmdDogMC41NzE0M3JlbTtcbiAgfVxufVxuXG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAuY29weXJpZ2h0Q29udGVudCB7XG4gICAgcGFkZGluZy1yaWdodDogMC41NzE0M3JlbTtcbiAgICBwYWRkaW5nLWxlZnQ6IDAuNTcxNDNyZW07XG4gIH1cbn1cblxuLmNvcHlyaWdodENvbnRlbnQ6bGFzdC1jaGlsZDpub3QoOmZpcnN0LWNoaWxkKSB7XG4gIGZsb2F0OiByaWdodDtcbn1cblxuLmJzaUNvbnRlbnQge1xuICB3aWR0aDogNTAlO1xuICBmbG9hdDogbGVmdDtcbiAgcGFkZGluZy1yaWdodDogMC4zNTcxNHJlbTtcbiAgcGFkZGluZy1sZWZ0OiAwLjM1NzE0cmVtO1xufVxuXG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDhlbSkge1xuICAuYnNpQ29udGVudCB7XG4gICAgcGFkZGluZy1yaWdodDogMC41NzE0M3JlbTtcbiAgICBwYWRkaW5nLWxlZnQ6IDAuNTcxNDNyZW07XG4gIH1cbn1cblxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgLmJzaUNvbnRlbnQge1xuICAgIHBhZGRpbmctcmlnaHQ6IDAuNTcxNDNyZW07XG4gICAgcGFkZGluZy1sZWZ0OiAwLjU3MTQzcmVtO1xuICB9XG59XG5cbi5ic2lDb250ZW50Omxhc3QtY2hpbGQ6bm90KDpmaXJzdC1jaGlsZCkge1xuICBmbG9hdDogcmlnaHQ7XG59XG5cbi5ic2lDb250ZW50IGltZyB7XG4gIG1heC1oZWlnaHQ6IDEwMHB4O1xuICBtYXJnaW4tbGVmdDogMC4yNXJlbTtcbn1cblxuLnBheW1lbnRMb2dvQ29udGVudCB7XG4gIHdpZHRoOiAxMDAlO1xuICBmbG9hdDogbGVmdDtcbiAgcGFkZGluZy1yaWdodDogMC4zNTcxNHJlbTtcbiAgcGFkZGluZy1sZWZ0OiAwLjM1NzE0cmVtO1xuICBtYXJnaW4tdG9wOiAwLjVyZW07XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbn1cblxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQ4ZW0pIHtcbiAgLnBheW1lbnRMb2dvQ29udGVudCB7XG4gICAgcGFkZGluZy1yaWdodDogMC41NzE0M3JlbTtcbiAgICBwYWRkaW5nLWxlZnQ6IDAuNTcxNDNyZW07XG4gIH1cbn1cblxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgLnBheW1lbnRMb2dvQ29udGVudCB7XG4gICAgcGFkZGluZy1yaWdodDogMC41NzE0M3JlbTtcbiAgICBwYWRkaW5nLWxlZnQ6IDAuNTcxNDNyZW07XG4gIH1cbn1cblxuLnBheW1lbnRMb2dvQ29udGVudDpsYXN0LWNoaWxkOm5vdCg6Zmlyc3QtY2hpbGQpIHtcbiAgZmxvYXQ6IHJpZ2h0O1xufVxuXG4uc29jaWFsSWNvbkNvbnRlbnQge1xuICB3aWR0aDogMTAwJTtcbiAgZmxvYXQ6IGxlZnQ7XG4gIHBhZGRpbmctcmlnaHQ6IDAuMzU3MTRyZW07XG4gIHBhZGRpbmctbGVmdDogMC4zNTcxNHJlbTtcbiAgbWFyZ2luLXRvcDogMC41cmVtO1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG59XG5cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0OGVtKSB7XG4gIC5zb2NpYWxJY29uQ29udGVudCB7XG4gICAgcGFkZGluZy1yaWdodDogMC41NzE0M3JlbTtcbiAgICBwYWRkaW5nLWxlZnQ6IDAuNTcxNDNyZW07XG4gIH1cbn1cblxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgLnNvY2lhbEljb25Db250ZW50IHtcbiAgICBwYWRkaW5nLXJpZ2h0OiAwLjU3MTQzcmVtO1xuICAgIHBhZGRpbmctbGVmdDogMC41NzE0M3JlbTtcbiAgfVxufVxuXG4uc29jaWFsSWNvbkNvbnRlbnQ6bGFzdC1jaGlsZDpub3QoOmZpcnN0LWNoaWxkKSB7XG4gIGZsb2F0OiByaWdodDtcbn1cblxuLnRydXN0UGlsb3RDb250ZW50IHtcbiAgd2lkdGg6IDEwMCU7XG4gIGZsb2F0OiBsZWZ0O1xuICBwYWRkaW5nLXJpZ2h0OiAwLjM1NzE0cmVtO1xuICBwYWRkaW5nLWxlZnQ6IDAuMzU3MTRyZW07XG59XG5cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0OGVtKSB7XG4gIC50cnVzdFBpbG90Q29udGVudCB7XG4gICAgcGFkZGluZy1yaWdodDogMC41NzE0M3JlbTtcbiAgICBwYWRkaW5nLWxlZnQ6IDAuNTcxNDNyZW07XG4gIH1cbn1cblxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgLnRydXN0UGlsb3RDb250ZW50IHtcbiAgICBwYWRkaW5nLXJpZ2h0OiAwLjU3MTQzcmVtO1xuICAgIHBhZGRpbmctbGVmdDogMC41NzE0M3JlbTtcbiAgfVxufVxuXG4udHJ1c3RQaWxvdENvbnRlbnQ6bGFzdC1jaGlsZDpub3QoOmZpcnN0LWNoaWxkKSB7XG4gIGZsb2F0OiByaWdodDtcbn1cblxuLnRydXN0UGlsb3RDb250ZW50IC50cnVzdHBpbG90LXdpZGdldCBpZnJhbWUge1xuICBtYXgtaGVpZ2h0OiAxMzBweDtcbiAgd2lkdGg6IDgwJTtcbn1cblxuLmZvb3RlckNvbnRhaW5lciAuYWNjb3JkaW9uLCAuZm9vdGVyQ29udGFpbmVyIC5hY2NvcmRpb24tY29udGVudCB7XG4gIGJhY2tncm91bmQ6ICMzMTMxMzE7XG4gIGJvcmRlci1sZWZ0OiBub25lO1xuICBib3JkZXItcmlnaHQ6IG5vbmU7XG59XG5cbi5mb290ZXJDb250YWluZXIgLmFjY29yZGlvbi10aXRsZTo6YmVmb3JlIHtcbiAgdG9wOiA0NSU7XG4gIGZvbnQtd2VpZ2h0OiBib2xkO1xuICBmb250LXNpemU6IDEuM3JlbTtcbn1cblxuLmZvb3RlckNvbnRhaW5lciAuYWNjb3JkaW9uLXRpdGxlOmhvdmVyLCAuYWNjb3JkaW9uLXRpdGxlOmZvY3VzIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogIzBhMGEwYTtcbn1cblxuLmZvb3RlckNvbnRhaW5lciAuYWNjb3JkaW9uLXRpdGxlIHtcbiAgZm9udC1zaXplOiAxLjE0Mjg2cmVtO1xuICBib3JkZXItbGVmdDogbm9uZTtcbiAgYm9yZGVyLXJpZ2h0OiBub25lO1xufVxuXG4uZm9vdGVyQ29udGFpbmVyIC5hY2NvcmRpb24taXRlbTpsYXN0LWNoaWxkID4gOmxhc3QtY2hpbGQge1xuICBib3JkZXItcmFkaXVzOiAwcHg7XG59XG5cbjpsYXN0LWNoaWxkOm5vdCguaXMtYWN0aXZlKSA+IC5hY2NvcmRpb24tdGl0bGUge1xuICBib3JkZXItcmFkaXVzOiAwcHg7XG59XG5cbi5mb290ZXJDb250YWluZXIgLmFjY29yZGlvbi1jb250ZW50IHVsIHtcbiAgbWFyZ2luLWxlZnQ6IDBweDtcbn1cblxuLmZvb3RlckNvbnRhaW5lciAuYWNjb3JkaW9uLWNvbnRlbnQgdWwgbGkge1xuICBsaXN0LXN0eWxlOiBub25lO1xuICB0ZXh0LWluZGVudDogdW5zZXQ7XG4gIGxpbmUtaGVpZ2h0OiAxLjU3MTQzcmVtO1xufVxuXG4uZm9vdGVyQ29udGFpbmVyIC5zb2NpYWxJY29uQ29udGFpbmVyIHtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICBtYXJnaW46IDAgYXV0bztcbn1cblxuLmZvb3RlckNvbnRhaW5lciAuc29jaWFsSWNvbkNvbnRhaW5lciBhIHtcbiAgbWFyZ2luOiAwLjVyZW07XG59XG5cbkBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgI2Zvb3RlckFjY29yZGlvbiA+IGxpID4gYS5kaXNhYmxlZCB7XG4gICAgcG9pbnRlci1ldmVudHM6IG5vbmU7XG4gICAgY3Vyc29yOiBkZWZhdWx0O1xuICAgIG1hcmdpbi10b3A6IDAuNzE0MjlyZW07XG4gICAgbWFyZ2luLWJvdHRvbTogMS4wNzE0M3JlbTtcbiAgICBmb250LXdlaWdodDogYm9sZDtcbiAgfVxuICAjZm9vdGVyQWNjb3JkaW9uID4gbGkgPiBhW2Rpc2FibGVkXSB7XG4gICAgcG9pbnRlci1ldmVudHM6IG5vbmU7XG4gICAgY3Vyc29yOiBkZWZhdWx0O1xuICAgIG1hcmdpbi10b3A6IDAuNzE0MjlyZW07XG4gICAgbWFyZ2luLWJvdHRvbTogMS4wNzE0M3JlbTtcbiAgICBmb250LXdlaWdodDogYm9sZDtcbiAgfVxuICA6bGFzdC1jaGlsZCA+IC5hY2NvcmRpb24tY29udGVudDpsYXN0LWNoaWxkIHtcbiAgICBib3JkZXItYm90dG9tOiBub25lO1xuICB9XG4gIC5mb290ZXJDb250YWluZXIgdWwuYWNjb3JkaW9uIHtcbiAgICBtYXgtd2lkdGg6IDkyLjg1NzE0cmVtO1xuICAgIG1hcmdpbi1yaWdodDogYXV0bztcbiAgICBtYXJnaW4tbGVmdDogYXV0bztcbiAgICBiYWNrZ3JvdW5kOiBub25lO1xuICB9XG4gIC5mb290ZXJDb250YWluZXIgdWwuYWNjb3JkaW9uOjpiZWZvcmUsIC5mb290ZXJDb250YWluZXIgdWwuYWNjb3JkaW9uOjphZnRlciB7XG4gICAgZGlzcGxheTogdGFibGU7XG4gICAgY29udGVudDogJyAnO1xuICB9XG4gIC5mb290ZXJDb250YWluZXIgdWwuYWNjb3JkaW9uOjphZnRlciB7XG4gICAgY2xlYXI6IGJvdGg7XG4gIH1cbiAgI2Zvb3RlckFjY29yZGlvbiAuYWNjb3JkaW9uLWNvbnRlbnQge1xuICAgIGRpc3BsYXk6IGJsb2NrICFpbXBvcnRhbnQ7XG4gIH1cbiAgLmZvb3RlckNvbnRhaW5lciAuYWNjb3JkaW9uLWNvbnRlbnQge1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIHBhZGRpbmc6IDA7XG4gICAgYm9yZGVyOiBub25lO1xuICAgIGJhY2tncm91bmQtY29sb3I6IHJnYmEoMjU0LCAyNTQsIDI1NCwgMCk7XG4gICAgY29sb3I6ICNmZWZlZmU7XG4gIH1cbiAgLmZvb3RlckNvbnRhaW5lciBsaS5hY2NvcmRpb24taXRlbSB7XG4gICAgd2lkdGg6IDI1JTtcbiAgICBmbG9hdDogbGVmdDtcbiAgICBwYWRkaW5nLXJpZ2h0OiAwLjM1NzE0cmVtO1xuICAgIHBhZGRpbmctbGVmdDogMC4zNTcxNHJlbTtcbiAgfVxufVxuXG5AbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSBhbmQgKG1pbi13aWR0aDogNDhlbSkge1xuICAuZm9vdGVyQ29udGFpbmVyIGxpLmFjY29yZGlvbi1pdGVtIHtcbiAgICBwYWRkaW5nLXJpZ2h0OiAwLjU3MTQzcmVtO1xuICAgIHBhZGRpbmctbGVmdDogMC41NzE0M3JlbTtcbiAgfVxufVxuXG5AbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAuZm9vdGVyQ29udGFpbmVyIGxpLmFjY29yZGlvbi1pdGVtIHtcbiAgICBwYWRkaW5nLXJpZ2h0OiAwLjU3MTQzcmVtO1xuICAgIHBhZGRpbmctbGVmdDogMC41NzE0M3JlbTtcbiAgfVxufVxuXG5AbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gIC5mb290ZXJDb250YWluZXIgbGkuYWNjb3JkaW9uLWl0ZW06bGFzdC1jaGlsZDpub3QoOmZpcnN0LWNoaWxkKSB7XG4gICAgZmxvYXQ6IHJpZ2h0O1xuICB9XG4gIC5mb290ZXJDb250YWluZXIgbGkuYWNjb3JkaW9uLWl0ZW06bGFzdC1jaGlsZDpub3QoOmZpcnN0LWNoaWxkKSB7XG4gICAgZmxvYXQ6IGxlZnQ7XG4gIH1cbiAgLmZvb3RlckNvbnRhaW5lciA+IHVsID4gbGkgPiBhOmhvdmVyIHtcbiAgICBjb2xvcjogI2ZlZmVmZTtcbiAgfVxuICAuZm9vdGVyQ29udGFpbmVyID4gdWwgPiBsaSA+IGE6Zm9jdXMge1xuICAgIGNvbG9yOiAjZmVmZWZlO1xuICB9XG4gIC5mb290ZXJDb250YWluZXIgbGkgPiBhLmFjY29yZGlvbi10aXRsZSB7XG4gICAgYm9yZGVyLWJvdHRvbTogbm9uZSAhaW1wb3J0YW50O1xuICB9XG4gIC5mb290ZXJDb250YWluZXIgLmFjY29yZGlvbi10aXRsZSB7XG4gICAgcG9zaXRpb246IGluaXRpYWw7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgcGFkZGluZzogMDtcbiAgICBib3JkZXI6IG5vbmU7XG4gICAgYm9yZGVyLWJvdHRvbTogbm9uZTtcbiAgICBsaW5lLWhlaWdodDogbm9ybWFsO1xuICAgIGxpbmUtaGVpZ2h0OiBpbml0aWFsO1xuICAgIGNvbG9yOiAjZmVmZWZlO1xuICB9XG4gIC5mb290ZXJDb250YWluZXIgLmFjY29yZGlvbi10aXRsZTpob3ZlciB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogcmdiYSgyNTQsIDI1NCwgMjU0LCAwKTtcbiAgfVxuICAuZm9vdGVyQ29udGFpbmVyIC5hY2NvcmRpb24tdGl0bGU6Zm9jdXMge1xuICAgIGJhY2tncm91bmQtY29sb3I6IHJnYmEoMjU0LCAyNTQsIDI1NCwgMCk7XG4gIH1cbiAgLmZvb3RlckNvbnRhaW5lciAuYWNjb3JkaW9uLXRpdGxlOjpiZWZvcmUge1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICB0b3A6IDUwJTtcbiAgICByaWdodDogMXJlbTtcbiAgICBtYXJnaW4tdG9wOiAtMC41cmVtO1xuICAgIGNvbnRlbnQ6ICcnO1xuICB9XG4gIC5yZWdpc3Rlck5ld3NsZXR0ZXIge1xuICAgIHdpZHRoOiAzMy4zMzMzMyU7XG4gICAgZmxvYXQ6IGxlZnQ7XG4gICAgcGFkZGluZy1yaWdodDogMC4zNTcxNHJlbTtcbiAgICBwYWRkaW5nLWxlZnQ6IDAuMzU3MTRyZW07XG4gIH1cbn1cblxuQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkgYW5kIChtaW4td2lkdGg6IDQ4ZW0pIHtcbiAgLnJlZ2lzdGVyTmV3c2xldHRlciB7XG4gICAgcGFkZGluZy1yaWdodDogMC41NzE0M3JlbTtcbiAgICBwYWRkaW5nLWxlZnQ6IDAuNTcxNDNyZW07XG4gIH1cbn1cblxuQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkgYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgLnJlZ2lzdGVyTmV3c2xldHRlciB7XG4gICAgcGFkZGluZy1yaWdodDogMC41NzE0M3JlbTtcbiAgICBwYWRkaW5nLWxlZnQ6IDAuNTcxNDNyZW07XG4gIH1cbn1cblxuQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAucmVnaXN0ZXJOZXdzbGV0dGVyOmxhc3QtY2hpbGQ6bm90KDpmaXJzdC1jaGlsZCkge1xuICAgIGZsb2F0OiByaWdodDtcbiAgfVxuICAudGVybXNQcml2YWN5IHtcbiAgICB3aWR0aDogMzMuMzMzMzMlO1xuICAgIGZsb2F0OiBsZWZ0O1xuICAgIHBhZGRpbmctcmlnaHQ6IDAuMzU3MTRyZW07XG4gICAgcGFkZGluZy1sZWZ0OiAwLjM1NzE0cmVtO1xuICAgIHRleHQtYWxpZ246IGxlZnQ7XG4gICAgZmxvYXQ6IHJpZ2h0O1xuICB9XG59XG5cbkBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIGFuZCAobWluLXdpZHRoOiA0OGVtKSB7XG4gIC50ZXJtc1ByaXZhY3kge1xuICAgIHBhZGRpbmctcmlnaHQ6IDAuNTcxNDNyZW07XG4gICAgcGFkZGluZy1sZWZ0OiAwLjU3MTQzcmVtO1xuICB9XG59XG5cbkBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gIC50ZXJtc1ByaXZhY3kge1xuICAgIHBhZGRpbmctcmlnaHQ6IDAuNTcxNDNyZW07XG4gICAgcGFkZGluZy1sZWZ0OiAwLjU3MTQzcmVtO1xuICB9XG59XG5cbkBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgLnRlcm1zUHJpdmFjeTpsYXN0LWNoaWxkOm5vdCg6Zmlyc3QtY2hpbGQpIHtcbiAgICBmbG9hdDogcmlnaHQ7XG4gIH1cbiAgLmNvcHlyaWdodENvbnRlbnQge1xuICAgIHdpZHRoOiA1MCU7XG4gICAgZmxvYXQ6IGxlZnQ7XG4gICAgcGFkZGluZy1yaWdodDogMC4zNTcxNHJlbTtcbiAgICBwYWRkaW5nLWxlZnQ6IDAuMzU3MTRyZW07XG4gICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgIHRleHQtYWxpZ246IGxlZnQ7XG4gIH1cbn1cblxuQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkgYW5kIChtaW4td2lkdGg6IDQ4ZW0pIHtcbiAgLmNvcHlyaWdodENvbnRlbnQge1xuICAgIHBhZGRpbmctcmlnaHQ6IDAuNTcxNDNyZW07XG4gICAgcGFkZGluZy1sZWZ0OiAwLjU3MTQzcmVtO1xuICB9XG59XG5cbkBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gIC5jb3B5cmlnaHRDb250ZW50IHtcbiAgICBwYWRkaW5nLXJpZ2h0OiAwLjU3MTQzcmVtO1xuICAgIHBhZGRpbmctbGVmdDogMC41NzE0M3JlbTtcbiAgfVxufVxuXG5AbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gIC5jb3B5cmlnaHRDb250ZW50Omxhc3QtY2hpbGQ6bm90KDpmaXJzdC1jaGlsZCkge1xuICAgIGZsb2F0OiByaWdodDtcbiAgfVxuICAucGF5bWVudExvZ29Db250ZW50IHtcbiAgICB3aWR0aDogMjUlO1xuICAgIGZsb2F0OiBsZWZ0O1xuICAgIHBhZGRpbmctcmlnaHQ6IDAuMzU3MTRyZW07XG4gICAgcGFkZGluZy1sZWZ0OiAwLjM1NzE0cmVtO1xuICAgIG1hcmdpbi10b3A6IDAuODU3MTRyZW07XG4gICAgLyoucGF5bWVudEljb25zIHtcbiAgICAgICAgICAgIGZsb2F0OiByaWdodDtcbiAgICAgICAgICAgIG1hcmdpbjogMHB4O1xuICAgICAgICB9Ki9cbiAgfVxufVxuXG5AbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSBhbmQgKG1pbi13aWR0aDogNDhlbSkge1xuICAucGF5bWVudExvZ29Db250ZW50IHtcbiAgICBwYWRkaW5nLXJpZ2h0OiAwLjU3MTQzcmVtO1xuICAgIHBhZGRpbmctbGVmdDogMC41NzE0M3JlbTtcbiAgfVxufVxuXG5AbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAucGF5bWVudExvZ29Db250ZW50IHtcbiAgICBwYWRkaW5nLXJpZ2h0OiAwLjU3MTQzcmVtO1xuICAgIHBhZGRpbmctbGVmdDogMC41NzE0M3JlbTtcbiAgfVxufVxuXG5AbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gIC5wYXltZW50TG9nb0NvbnRlbnQ6bGFzdC1jaGlsZDpub3QoOmZpcnN0LWNoaWxkKSB7XG4gICAgZmxvYXQ6IHJpZ2h0O1xuICB9XG4gIC5wYXltZW50TG9nb0NvbnRlbnQgaW1nIHtcbiAgICBmbG9hdDogbGVmdDtcbiAgICBtYXJnaW4tbGVmdDogMS42MjVyZW07XG4gIH1cbiAgLmJzaUNvbnRlbnQge1xuICAgIHdpZHRoOiAxNi42NjY2NyU7XG4gICAgZmxvYXQ6IGxlZnQ7XG4gICAgcGFkZGluZy1yaWdodDogMC4zNTcxNHJlbTtcbiAgICBwYWRkaW5nLWxlZnQ6IDAuMzU3MTRyZW07XG4gICAgbWFyZ2luLXJpZ2h0OiA2cmVtO1xuICB9XG59XG5cbkBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIGFuZCAobWluLXdpZHRoOiA0OGVtKSB7XG4gIC5ic2lDb250ZW50IHtcbiAgICBwYWRkaW5nLXJpZ2h0OiAwLjU3MTQzcmVtO1xuICAgIHBhZGRpbmctbGVmdDogMC41NzE0M3JlbTtcbiAgfVxufVxuXG5AbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAuYnNpQ29udGVudCB7XG4gICAgcGFkZGluZy1yaWdodDogMC41NzE0M3JlbTtcbiAgICBwYWRkaW5nLWxlZnQ6IDAuNTcxNDNyZW07XG4gIH1cbn1cblxuQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAuYnNpQ29udGVudDpsYXN0LWNoaWxkOm5vdCg6Zmlyc3QtY2hpbGQpIHtcbiAgICBmbG9hdDogcmlnaHQ7XG4gIH1cbiAgLnRydXN0UGlsb3RDb250ZW50IHtcbiAgICB3aWR0aDogMjUlO1xuICAgIGZsb2F0OiBsZWZ0O1xuICAgIHBhZGRpbmctcmlnaHQ6IDAuMzU3MTRyZW07XG4gICAgcGFkZGluZy1sZWZ0OiAwLjM1NzE0cmVtO1xuICB9XG59XG5cbkBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIGFuZCAobWluLXdpZHRoOiA0OGVtKSB7XG4gIC50cnVzdFBpbG90Q29udGVudCB7XG4gICAgcGFkZGluZy1yaWdodDogMC41NzE0M3JlbTtcbiAgICBwYWRkaW5nLWxlZnQ6IDAuNTcxNDNyZW07XG4gIH1cbn1cblxuQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkgYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgLnRydXN0UGlsb3RDb250ZW50IHtcbiAgICBwYWRkaW5nLXJpZ2h0OiAwLjU3MTQzcmVtO1xuICAgIHBhZGRpbmctbGVmdDogMC41NzE0M3JlbTtcbiAgfVxufVxuXG5AbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gIC50cnVzdFBpbG90Q29udGVudDpsYXN0LWNoaWxkOm5vdCg6Zmlyc3QtY2hpbGQpIHtcbiAgICBmbG9hdDogcmlnaHQ7XG4gIH1cbiAgLnNvY2lhbEljb25Db250ZW50IHtcbiAgICB3aWR0aDogMjUlO1xuICAgIGZsb2F0OiBsZWZ0O1xuICAgIHBhZGRpbmctcmlnaHQ6IDAuMzU3MTRyZW07XG4gICAgcGFkZGluZy1sZWZ0OiAwLjM1NzE0cmVtO1xuICB9XG59XG5cbkBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIGFuZCAobWluLXdpZHRoOiA0OGVtKSB7XG4gIC5zb2NpYWxJY29uQ29udGVudCB7XG4gICAgcGFkZGluZy1yaWdodDogMC41NzE0M3JlbTtcbiAgICBwYWRkaW5nLWxlZnQ6IDAuNTcxNDNyZW07XG4gIH1cbn1cblxuQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkgYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgLnNvY2lhbEljb25Db250ZW50IHtcbiAgICBwYWRkaW5nLXJpZ2h0OiAwLjU3MTQzcmVtO1xuICAgIHBhZGRpbmctbGVmdDogMC41NzE0M3JlbTtcbiAgfVxufVxuXG5AbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gIC5zb2NpYWxJY29uQ29udGVudDpsYXN0LWNoaWxkOm5vdCg6Zmlyc3QtY2hpbGQpIHtcbiAgICBmbG9hdDogcmlnaHQ7XG4gIH1cbiAgLnNvY2lhbEljb25Db250ZW50IC5zb2NpYWxJY29uQ29udGFpbmVyIHtcbiAgICBmbG9hdDogbGVmdDtcbiAgfVxufVxuXG4vKkNhcnQgSWNvbiovXG4uc2hvcHBpbmdDYXJ0SWNvbiB7XG4gIHdpZHRoOiAzNHB4O1xuICBoZWlnaHQ6IDMycHg7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgYmFja2dyb3VuZDogdXJsKFwiLy9zdGF0aWMucmFwaWRvbmxpbmUuY29tL2Nzcy9zcHJpdGVzLzQuNy4xL3Nwcml0ZS5zcHJpdGUucG5nXCIpIC0zMzVweCAtMTBweCBuby1yZXBlYXQ7XG59XG5cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gIC5zaG9wcGluZ0NhcnRJY29uIHtcbiAgICB3aWR0aDogNDlweDtcbiAgICBoZWlnaHQ6IDQ1cHg7XG4gICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgIGJhY2tncm91bmQ6IHVybChcIi8vc3RhdGljLnJhcGlkb25saW5lLmNvbS9jc3Mvc3ByaXRlcy80LjcuMS9zcHJpdGUuc3ByaXRlLnBuZ1wiKSAtMjc2cHggLTEwcHggbm8tcmVwZWF0O1xuICB9XG59XG5cbi5zaG9wcGluZ0NhcnRJY29uIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBtYXJnaW4tcmlnaHQ6IDEuMDcxNDNyZW07XG59XG5cbi5zaG9wcGluZ0NhcnRJY29uIC5iYWRnZSB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgdG9wOiAtOHB4O1xuICByaWdodDogLThweDtcbiAgZm9udC13ZWlnaHQ6IGJvbGQ7XG4gIGNvbG9yOiAjMGEwYTBhO1xuICBmb250LXNpemU6IDAuNzg1NzFyZW07XG4gIG1pbi13aWR0aDogMi4yZW07XG59XG5cbi8qRW5kIENhcnQgSWNvbiovXG4vKkhlYWRlciBMYXlvdXQqL1xuLnRvcEhlYWRlckNvbnRlbnQsIC5tYWluSGVhZGVyQ29udGVudCB7XG4gIG1heC13aWR0aDogOTIuODU3MTRyZW07XG4gIG1hcmdpbi1yaWdodDogYXV0bztcbiAgbWFyZ2luLWxlZnQ6IGF1dG87XG4gIG1heC13aWR0aDogbm9uZTtcbiAgYmFja2dyb3VuZDogIzBhMGEwYTtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xufVxuXG4udG9wSGVhZGVyQ29udGVudDo6YmVmb3JlLCAudG9wSGVhZGVyQ29udGVudDo6YWZ0ZXIsIC5tYWluSGVhZGVyQ29udGVudDo6YmVmb3JlLCAubWFpbkhlYWRlckNvbnRlbnQ6OmFmdGVyIHtcbiAgZGlzcGxheTogdGFibGU7XG4gIGNvbnRlbnQ6ICcgJztcbn1cblxuLnRvcEhlYWRlckNvbnRlbnQ6OmFmdGVyLCAubWFpbkhlYWRlckNvbnRlbnQ6OmFmdGVyIHtcbiAgY2xlYXI6IGJvdGg7XG59XG5cbi50b3BIZWFkZXJDb250ZW50LCAudG9wSGVhZGVyQ29udGVudCBhLCAudG9wSGVhZGVyQ29udGVudCBpbnB1dCB7XG4gIGxpbmUtaGVpZ2h0OiAycmVtO1xuICBmb250LXNpemU6IDFyZW07XG4gIG1hcmdpbjogMHB4O1xufVxuXG4ubWFpbkhlYWRlckNvbnRlbnQge1xuICBwYWRkaW5nLXRvcDogMS4yODU3MXJlbTtcbn1cblxuLm1haW5IZWFkZXJDb250ZW50LCAubWFpbkhlYWRlckNvbnRlbnQgYSB7XG4gIGZvbnQtc2l6ZTogMXJlbTtcbn1cblxuLm1haW5OYXYsIC5tYWluTmF2IGEge1xuICBmb250LXNpemU6IDFyZW07XG59XG5cbi50b3BIZWFkZXJDb250ZW50IC5jaGFuZ2VTaXRlIHtcbiAgd2lkdGg6IDMzLjMzMzMzJTtcbiAgZmxvYXQ6IGxlZnQ7XG4gIHBhZGRpbmctcmlnaHQ6IDAuMzU3MTRyZW07XG4gIHBhZGRpbmctbGVmdDogMC4zNTcxNHJlbTtcbn1cblxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQ4ZW0pIHtcbiAgLnRvcEhlYWRlckNvbnRlbnQgLmNoYW5nZVNpdGUge1xuICAgIHBhZGRpbmctcmlnaHQ6IDAuNTcxNDNyZW07XG4gICAgcGFkZGluZy1sZWZ0OiAwLjU3MTQzcmVtO1xuICB9XG59XG5cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gIC50b3BIZWFkZXJDb250ZW50IC5jaGFuZ2VTaXRlIHtcbiAgICBwYWRkaW5nLXJpZ2h0OiAwLjU3MTQzcmVtO1xuICAgIHBhZGRpbmctbGVmdDogMC41NzE0M3JlbTtcbiAgfVxufVxuXG4udG9wSGVhZGVyQ29udGVudCAuY2hhbmdlU2l0ZTpsYXN0LWNoaWxkOm5vdCg6Zmlyc3QtY2hpbGQpIHtcbiAgZmxvYXQ6IHJpZ2h0O1xufVxuXG4udG9wSGVhZGVyQ29udGVudCAudG9wQmFza2V0T3B0aW9ucyB7XG4gIHdpZHRoOiA2Ni42NjY2NyU7XG4gIGZsb2F0OiBsZWZ0O1xuICBwYWRkaW5nLXJpZ2h0OiAwLjM1NzE0cmVtO1xuICBwYWRkaW5nLWxlZnQ6IDAuMzU3MTRyZW07XG59XG5cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0OGVtKSB7XG4gIC50b3BIZWFkZXJDb250ZW50IC50b3BCYXNrZXRPcHRpb25zIHtcbiAgICBwYWRkaW5nLXJpZ2h0OiAwLjU3MTQzcmVtO1xuICAgIHBhZGRpbmctbGVmdDogMC41NzE0M3JlbTtcbiAgfVxufVxuXG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAudG9wSGVhZGVyQ29udGVudCAudG9wQmFza2V0T3B0aW9ucyB7XG4gICAgcGFkZGluZy1yaWdodDogMC41NzE0M3JlbTtcbiAgICBwYWRkaW5nLWxlZnQ6IDAuNTcxNDNyZW07XG4gIH1cbn1cblxuLnRvcEhlYWRlckNvbnRlbnQgLnRvcEJhc2tldE9wdGlvbnM6bGFzdC1jaGlsZDpub3QoOmZpcnN0LWNoaWxkKSB7XG4gIGZsb2F0OiByaWdodDtcbn1cblxuLnRvcEhlYWRlckNvbnRlbnQgLnRvcEJhc2tldE9wdGlvbnMgLmFjY2Vzcy13cmFwIHtcbiAgbWFyZ2luLXJpZ2h0OiAxZW07XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbn1cblxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQ4ZW0pIHtcbiAgLnRvcEhlYWRlckNvbnRlbnQgLnRvcEJhc2tldE9wdGlvbnMgLmFjY2Vzcy13cmFwIHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIH1cbn1cblxuLnRvcEhlYWRlckNvbnRlbnQgLnRvcEJhc2tldE9wdGlvbnMgLmFjY2Vzcy13cmFwIC5hY2Nlc3MtdG9nZ2xlIGkge1xuICBmb250LXNpemU6IDEuMmVtO1xufVxuXG4udG9wSGVhZGVyQ29udGVudCAudG9wQmFza2V0T3B0aW9ucyAuYWNjZXNzLXdyYXAgLmFjY2Vzcy1wb3B1cCB7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICBhbGlnbi1pdGVtczogY2VudGVyO1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHdpZHRoOiAyNDBweDtcbiAgaGVpZ2h0OiA1MHB4O1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjMzEzMTMxO1xuICB6LWluZGV4OiAxO1xuICBib3JkZXItcmFkaXVzOiAwIDAgNHB4IDRweDtcbiAgdG9wOiAyOHB4O1xuICByaWdodDogNTAlO1xufVxuXG5AbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA0Ny45Mzc1ZW0pIHtcbiAgLnRvcEhlYWRlckNvbnRlbnQgLnRvcEJhc2tldE9wdGlvbnMgLmFjY2Vzcy13cmFwIC5hY2Nlc3MtcG9wdXAge1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWCg1MCUpO1xuICB9XG59XG5cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0OGVtKSB7XG4gIC50b3BIZWFkZXJDb250ZW50IC50b3BCYXNrZXRPcHRpb25zIC5hY2Nlc3Mtd3JhcCAuYWNjZXNzLXBvcHVwIHtcbiAgICByaWdodDogY2FsYygxMDAlICsgMWVtKTtcbiAgICB0b3A6IDA7XG4gIH1cbn1cblxuLnRvcEhlYWRlckNvbnRlbnQgLnRvcEJhc2tldE9wdGlvbnMgLmFjY2Vzcy13cmFwIC5hY2Nlc3MtcG9wdXAgbGFiZWwge1xuICBkaXNwbGF5OiBmbGV4O1xuICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbiAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbn1cblxuLnRvcEhlYWRlckNvbnRlbnQgLnRvcEJhc2tldE9wdGlvbnMgLmFjY2Vzcy13cmFwIC5hY2Nlc3MtcG9wdXAgbGFiZWwgLmN1c3RvbS1jaGVja2JveCB7XG4gIG1hcmdpbi1yaWdodDogLjVlbTtcbn1cblxuLnRvcEhlYWRlckNvbnRlbnQgLnRoY19TZWN0aW9uOmxhc3QtY2hpbGQge1xuICB0ZXh0LWFsaWduOiByaWdodDtcbn1cblxuLnRvcEhlYWRlckNvbnRlbnQgLnRoY19TZWN0aW9uIHNwYW4ge1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgY29sb3I6ICNmZWZlZmU7XG59XG5cbi50b3BIZWFkZXJDb250ZW50IC50aGNfU2VjdGlvbiBzcGFuID4gc3BhbiB7XG4gIG1hcmdpbi1sZWZ0OiAxZW07XG59XG5cbi50b3BIZWFkZXJDb250ZW50IC50aGNfU2VjdGlvbi5yaWdodCBzcGFuIHtcbiAgY3Vyc29yOiBwb2ludGVyO1xufVxuXG4uaGVhZGVyQmFza2V0Q29udGVudCB7XG4gIGZsb2F0OiByaWdodDtcbn1cblxuLmhlYWRlckxvZ2luQ29udGVudCB7XG4gIGZsb2F0OiBsZWZ0O1xuICBtYXJnaW4tcmlnaHQ6IDAuNzE0MjlyZW07XG59XG5cbkBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDYzLjkzNzVlbSkge1xuICAuaGVhZGVyTG9naW5Db250ZW50IHtcbiAgICBmbG9hdDogcmlnaHQ7XG4gIH1cbn1cblxuLmxvZ29TZWN0aW9uIHtcbiAgd2lkdGg6IDQwJTtcbiAgZmxvYXQ6IGxlZnQ7XG4gIHBhZGRpbmctcmlnaHQ6IDAuMzU3MTRyZW07XG4gIHBhZGRpbmctbGVmdDogMC4zNTcxNHJlbTtcbn1cblxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQ4ZW0pIHtcbiAgLmxvZ29TZWN0aW9uIHtcbiAgICBwYWRkaW5nLXJpZ2h0OiAwLjU3MTQzcmVtO1xuICAgIHBhZGRpbmctbGVmdDogMC41NzE0M3JlbTtcbiAgfVxufVxuXG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAubG9nb1NlY3Rpb24ge1xuICAgIHBhZGRpbmctcmlnaHQ6IDAuNTcxNDNyZW07XG4gICAgcGFkZGluZy1sZWZ0OiAwLjU3MTQzcmVtO1xuICB9XG59XG5cbi5sb2dvU2VjdGlvbjpsYXN0LWNoaWxkOm5vdCg6Zmlyc3QtY2hpbGQpIHtcbiAgZmxvYXQ6IHJpZ2h0O1xufVxuXG4ubG9naW5TZWN0aW9uIHtcbiAgd2lkdGg6IDYwJTtcbiAgZmxvYXQ6IGxlZnQ7XG4gIHBhZGRpbmctcmlnaHQ6IDAuMzU3MTRyZW07XG4gIHBhZGRpbmctbGVmdDogMC4zNTcxNHJlbTtcbn1cblxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQ4ZW0pIHtcbiAgLmxvZ2luU2VjdGlvbiB7XG4gICAgcGFkZGluZy1yaWdodDogMC41NzE0M3JlbTtcbiAgICBwYWRkaW5nLWxlZnQ6IDAuNTcxNDNyZW07XG4gIH1cbn1cblxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgLmxvZ2luU2VjdGlvbiB7XG4gICAgcGFkZGluZy1yaWdodDogMC41NzE0M3JlbTtcbiAgICBwYWRkaW5nLWxlZnQ6IDAuNTcxNDNyZW07XG4gIH1cbn1cblxuLmxvZ2luU2VjdGlvbjpsYXN0LWNoaWxkOm5vdCg6Zmlyc3QtY2hpbGQpIHtcbiAgZmxvYXQ6IHJpZ2h0O1xufVxuXG4uc2VhcmNoQmFyU2VjdGlvbiB7XG4gIHdpZHRoOiAxMDAlO1xuICBmbG9hdDogbGVmdDtcbiAgcGFkZGluZy1yaWdodDogMC4zNTcxNHJlbTtcbiAgcGFkZGluZy1sZWZ0OiAwLjM1NzE0cmVtO1xuICBtYXJnaW4tdG9wOiAxLjQyODU3cmVtO1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG59XG5cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0OGVtKSB7XG4gIC5zZWFyY2hCYXJTZWN0aW9uIHtcbiAgICBwYWRkaW5nLXJpZ2h0OiAwLjU3MTQzcmVtO1xuICAgIHBhZGRpbmctbGVmdDogMC41NzE0M3JlbTtcbiAgfVxufVxuXG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAuc2VhcmNoQmFyU2VjdGlvbiB7XG4gICAgcGFkZGluZy1yaWdodDogMC41NzE0M3JlbTtcbiAgICBwYWRkaW5nLWxlZnQ6IDAuNTcxNDNyZW07XG4gIH1cbn1cblxuLnNlYXJjaEJhclNlY3Rpb246bGFzdC1jaGlsZDpub3QoOmZpcnN0LWNoaWxkKSB7XG4gIGZsb2F0OiByaWdodDtcbn1cblxuLnNlYXJjaEJhclNlY3Rpb24udGVtcEZpeCB7XG4gIHotaW5kZXg6IGF1dG8gIWltcG9ydGFudDtcbn1cblxuQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAubWFpbkhlYWRlckNvbnRlbnQge1xuICAgIHBhZGRpbmctYm90dG9tOiAxLjI4NTcxcmVtO1xuICB9XG4gIC50b3BIZWFkZXJDb250ZW50IC5jaGFuZ2VTaXRlIHtcbiAgICB3aWR0aDogMjUlO1xuICAgIGZsb2F0OiBsZWZ0O1xuICAgIHBhZGRpbmctcmlnaHQ6IDAuMzU3MTRyZW07XG4gICAgcGFkZGluZy1sZWZ0OiAwLjM1NzE0cmVtO1xuICB9XG59XG5cbkBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIGFuZCAobWluLXdpZHRoOiA0OGVtKSB7XG4gIC50b3BIZWFkZXJDb250ZW50IC5jaGFuZ2VTaXRlIHtcbiAgICBwYWRkaW5nLXJpZ2h0OiAwLjU3MTQzcmVtO1xuICAgIHBhZGRpbmctbGVmdDogMC41NzE0M3JlbTtcbiAgfVxufVxuXG5AbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAudG9wSGVhZGVyQ29udGVudCAuY2hhbmdlU2l0ZSB7XG4gICAgcGFkZGluZy1yaWdodDogMC41NzE0M3JlbTtcbiAgICBwYWRkaW5nLWxlZnQ6IDAuNTcxNDNyZW07XG4gIH1cbn1cblxuQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAudG9wSGVhZGVyQ29udGVudCAuY2hhbmdlU2l0ZTpsYXN0LWNoaWxkOm5vdCg6Zmlyc3QtY2hpbGQpIHtcbiAgICBmbG9hdDogcmlnaHQ7XG4gIH1cbiAgLnRvcEhlYWRlckNvbnRlbnQgLmNvbnRhY3RUb3Age1xuICAgIHdpZHRoOiA1MCU7XG4gICAgZmxvYXQ6IGxlZnQ7XG4gICAgcGFkZGluZy1yaWdodDogMC4zNTcxNHJlbTtcbiAgICBwYWRkaW5nLWxlZnQ6IDAuMzU3MTRyZW07XG4gICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICB9XG59XG5cbkBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIGFuZCAobWluLXdpZHRoOiA0OGVtKSB7XG4gIC50b3BIZWFkZXJDb250ZW50IC5jb250YWN0VG9wIHtcbiAgICBwYWRkaW5nLXJpZ2h0OiAwLjU3MTQzcmVtO1xuICAgIHBhZGRpbmctbGVmdDogMC41NzE0M3JlbTtcbiAgfVxufVxuXG5AbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAudG9wSGVhZGVyQ29udGVudCAuY29udGFjdFRvcCB7XG4gICAgcGFkZGluZy1yaWdodDogMC41NzE0M3JlbTtcbiAgICBwYWRkaW5nLWxlZnQ6IDAuNTcxNDNyZW07XG4gIH1cbn1cblxuQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAudG9wSGVhZGVyQ29udGVudCAuY29udGFjdFRvcDpsYXN0LWNoaWxkOm5vdCg6Zmlyc3QtY2hpbGQpIHtcbiAgICBmbG9hdDogcmlnaHQ7XG4gIH1cbiAgLnRvcEhlYWRlckNvbnRlbnQgLnRvcEJhc2tldE9wdGlvbnMge1xuICAgIHdpZHRoOiAyNSU7XG4gICAgZmxvYXQ6IGxlZnQ7XG4gICAgcGFkZGluZy1yaWdodDogMC4zNTcxNHJlbTtcbiAgICBwYWRkaW5nLWxlZnQ6IDAuMzU3MTRyZW07XG4gIH1cbn1cblxuQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkgYW5kIChtaW4td2lkdGg6IDQ4ZW0pIHtcbiAgLnRvcEhlYWRlckNvbnRlbnQgLnRvcEJhc2tldE9wdGlvbnMge1xuICAgIHBhZGRpbmctcmlnaHQ6IDAuNTcxNDNyZW07XG4gICAgcGFkZGluZy1sZWZ0OiAwLjU3MTQzcmVtO1xuICB9XG59XG5cbkBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gIC50b3BIZWFkZXJDb250ZW50IC50b3BCYXNrZXRPcHRpb25zIHtcbiAgICBwYWRkaW5nLXJpZ2h0OiAwLjU3MTQzcmVtO1xuICAgIHBhZGRpbmctbGVmdDogMC41NzE0M3JlbTtcbiAgfVxufVxuXG5AbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gIC50b3BIZWFkZXJDb250ZW50IC50b3BCYXNrZXRPcHRpb25zOmxhc3QtY2hpbGQ6bm90KDpmaXJzdC1jaGlsZCkge1xuICAgIGZsb2F0OiByaWdodDtcbiAgfVxuICAubG9nb1NlY3Rpb24ge1xuICAgIHdpZHRoOiAxNi42NjY2NyU7XG4gICAgZmxvYXQ6IGxlZnQ7XG4gICAgcGFkZGluZy1yaWdodDogMC4zNTcxNHJlbTtcbiAgICBwYWRkaW5nLWxlZnQ6IDAuMzU3MTRyZW07XG4gIH1cbn1cblxuQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkgYW5kIChtaW4td2lkdGg6IDQ4ZW0pIHtcbiAgLmxvZ29TZWN0aW9uIHtcbiAgICBwYWRkaW5nLXJpZ2h0OiAwLjU3MTQzcmVtO1xuICAgIHBhZGRpbmctbGVmdDogMC41NzE0M3JlbTtcbiAgfVxufVxuXG5AbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAubG9nb1NlY3Rpb24ge1xuICAgIHBhZGRpbmctcmlnaHQ6IDAuNTcxNDNyZW07XG4gICAgcGFkZGluZy1sZWZ0OiAwLjU3MTQzcmVtO1xuICB9XG59XG5cbkBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgLmxvZ29TZWN0aW9uOmxhc3QtY2hpbGQ6bm90KDpmaXJzdC1jaGlsZCkge1xuICAgIGZsb2F0OiByaWdodDtcbiAgfVxuICAuc2VhcmNoQmFyU2VjdGlvbiB7XG4gICAgd2lkdGg6IDUwJTtcbiAgICBmbG9hdDogbGVmdDtcbiAgICBwYWRkaW5nLXJpZ2h0OiAwLjM1NzE0cmVtO1xuICAgIHBhZGRpbmctbGVmdDogMC4zNTcxNHJlbTtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgbGVmdDogLTMzLjMzMzMzJTtcbiAgICBtYXJnaW4tdG9wOiAwcHg7XG4gIH1cbn1cblxuQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkgYW5kIChtaW4td2lkdGg6IDQ4ZW0pIHtcbiAgLnNlYXJjaEJhclNlY3Rpb24ge1xuICAgIHBhZGRpbmctcmlnaHQ6IDAuNTcxNDNyZW07XG4gICAgcGFkZGluZy1sZWZ0OiAwLjU3MTQzcmVtO1xuICB9XG59XG5cbkBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gIC5zZWFyY2hCYXJTZWN0aW9uIHtcbiAgICBwYWRkaW5nLXJpZ2h0OiAwLjU3MTQzcmVtO1xuICAgIHBhZGRpbmctbGVmdDogMC41NzE0M3JlbTtcbiAgfVxufVxuXG5AbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gIC5zZWFyY2hCYXJTZWN0aW9uOmxhc3QtY2hpbGQ6bm90KDpmaXJzdC1jaGlsZCkge1xuICAgIGZsb2F0OiByaWdodDtcbiAgfVxuICAuc2VhcmNoQmFyU2VjdGlvbi50ZW1wRml4IHtcbiAgICB6LWluZGV4OiBhdXRvICFpbXBvcnRhbnQ7XG4gIH1cbiAgLmxvZ2luU2VjdGlvbiB7XG4gICAgd2lkdGg6IDMzLjMzMzMzJTtcbiAgICBmbG9hdDogbGVmdDtcbiAgICBwYWRkaW5nLXJpZ2h0OiAwLjM1NzE0cmVtO1xuICAgIHBhZGRpbmctbGVmdDogMC4zNTcxNHJlbTtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgbGVmdDogNTAlO1xuICB9XG59XG5cbkBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIGFuZCAobWluLXdpZHRoOiA0OGVtKSB7XG4gIC5sb2dpblNlY3Rpb24ge1xuICAgIHBhZGRpbmctcmlnaHQ6IDAuNTcxNDNyZW07XG4gICAgcGFkZGluZy1sZWZ0OiAwLjU3MTQzcmVtO1xuICB9XG59XG5cbkBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gIC5sb2dpblNlY3Rpb24ge1xuICAgIHBhZGRpbmctcmlnaHQ6IDAuNTcxNDNyZW07XG4gICAgcGFkZGluZy1sZWZ0OiAwLjU3MTQzcmVtO1xuICB9XG59XG5cbkBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgLmxvZ2luU2VjdGlvbjpsYXN0LWNoaWxkOm5vdCg6Zmlyc3QtY2hpbGQpIHtcbiAgICBmbG9hdDogcmlnaHQ7XG4gIH1cbn1cblxuQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNzVlbSkge1xuICAubG9nb1NlY3Rpb24ge1xuICAgIHdpZHRoOiAxMi41JTtcbiAgICBmbG9hdDogbGVmdDtcbiAgICBwYWRkaW5nLXJpZ2h0OiAwLjM1NzE0cmVtO1xuICAgIHBhZGRpbmctbGVmdDogMC4zNTcxNHJlbTtcbiAgfVxufVxuXG5AbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA3NWVtKSBhbmQgKG1pbi13aWR0aDogNDhlbSkge1xuICAubG9nb1NlY3Rpb24ge1xuICAgIHBhZGRpbmctcmlnaHQ6IDAuNTcxNDNyZW07XG4gICAgcGFkZGluZy1sZWZ0OiAwLjU3MTQzcmVtO1xuICB9XG59XG5cbkBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDc1ZW0pIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gIC5sb2dvU2VjdGlvbiB7XG4gICAgcGFkZGluZy1yaWdodDogMC41NzE0M3JlbTtcbiAgICBwYWRkaW5nLWxlZnQ6IDAuNTcxNDNyZW07XG4gIH1cbn1cblxuQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNzVlbSkge1xuICAubG9nb1NlY3Rpb246bGFzdC1jaGlsZDpub3QoOmZpcnN0LWNoaWxkKSB7XG4gICAgZmxvYXQ6IHJpZ2h0O1xuICB9XG4gIC5zZWFyY2hCYXJTZWN0aW9uIHtcbiAgICB3aWR0aDogNTguNzUlO1xuICAgIGZsb2F0OiBsZWZ0O1xuICAgIHBhZGRpbmctcmlnaHQ6IDAuMzU3MTRyZW07XG4gICAgcGFkZGluZy1sZWZ0OiAwLjM1NzE0cmVtO1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICBsZWZ0OiAtMjguNzUlO1xuICB9XG59XG5cbkBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDc1ZW0pIGFuZCAobWluLXdpZHRoOiA0OGVtKSB7XG4gIC5zZWFyY2hCYXJTZWN0aW9uIHtcbiAgICBwYWRkaW5nLXJpZ2h0OiAwLjU3MTQzcmVtO1xuICAgIHBhZGRpbmctbGVmdDogMC41NzE0M3JlbTtcbiAgfVxufVxuXG5AbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA3NWVtKSBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAuc2VhcmNoQmFyU2VjdGlvbiB7XG4gICAgcGFkZGluZy1yaWdodDogMC41NzE0M3JlbTtcbiAgICBwYWRkaW5nLWxlZnQ6IDAuNTcxNDNyZW07XG4gIH1cbn1cblxuQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNzVlbSkge1xuICAuc2VhcmNoQmFyU2VjdGlvbjpsYXN0LWNoaWxkOm5vdCg6Zmlyc3QtY2hpbGQpIHtcbiAgICBmbG9hdDogcmlnaHQ7XG4gIH1cbiAgLmxvZ2luU2VjdGlvbiB7XG4gICAgd2lkdGg6IDI4LjUlO1xuICAgIGZsb2F0OiBsZWZ0O1xuICAgIHBhZGRpbmctcmlnaHQ6IDAuMzU3MTRyZW07XG4gICAgcGFkZGluZy1sZWZ0OiAwLjM1NzE0cmVtO1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICBsZWZ0OiA1OC43NSU7XG4gIH1cbn1cblxuQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNzVlbSkgYW5kIChtaW4td2lkdGg6IDQ4ZW0pIHtcbiAgLmxvZ2luU2VjdGlvbiB7XG4gICAgcGFkZGluZy1yaWdodDogMC41NzE0M3JlbTtcbiAgICBwYWRkaW5nLWxlZnQ6IDAuNTcxNDNyZW07XG4gIH1cbn1cblxuQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNzVlbSkgYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgLmxvZ2luU2VjdGlvbiB7XG4gICAgcGFkZGluZy1yaWdodDogMC41NzE0M3JlbTtcbiAgICBwYWRkaW5nLWxlZnQ6IDAuNTcxNDNyZW07XG4gIH1cbn1cblxuQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNzVlbSkge1xuICAubG9naW5TZWN0aW9uOmxhc3QtY2hpbGQ6bm90KDpmaXJzdC1jaGlsZCkge1xuICAgIGZsb2F0OiByaWdodDtcbiAgfVxufVxuXG5AbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA5MGVtKSB7XG4gIC5sb2dvU2VjdGlvbiB7XG4gICAgd2lkdGg6IDE1LjU1NTU2JTtcbiAgICBmbG9hdDogbGVmdDtcbiAgICBwYWRkaW5nLXJpZ2h0OiAwLjM1NzE0cmVtO1xuICAgIHBhZGRpbmctbGVmdDogMC4zNTcxNHJlbTtcbiAgfVxufVxuXG5AbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA5MGVtKSBhbmQgKG1pbi13aWR0aDogNDhlbSkge1xuICAubG9nb1NlY3Rpb24ge1xuICAgIHBhZGRpbmctcmlnaHQ6IDAuNTcxNDNyZW07XG4gICAgcGFkZGluZy1sZWZ0OiAwLjU3MTQzcmVtO1xuICB9XG59XG5cbkBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDkwZW0pIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gIC5sb2dvU2VjdGlvbiB7XG4gICAgcGFkZGluZy1yaWdodDogMC41NzE0M3JlbTtcbiAgICBwYWRkaW5nLWxlZnQ6IDAuNTcxNDNyZW07XG4gIH1cbn1cblxuQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogOTBlbSkge1xuICAubG9nb1NlY3Rpb246bGFzdC1jaGlsZDpub3QoOmZpcnN0LWNoaWxkKSB7XG4gICAgZmxvYXQ6IHJpZ2h0O1xuICB9XG4gIC5zZWFyY2hCYXJTZWN0aW9uIHtcbiAgICB3aWR0aDogNjAlO1xuICAgIGZsb2F0OiBsZWZ0O1xuICAgIHBhZGRpbmctcmlnaHQ6IDAuMzU3MTRyZW07XG4gICAgcGFkZGluZy1sZWZ0OiAwLjM1NzE0cmVtO1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICBsZWZ0OiAtMjguMzMzMzMlO1xuICB9XG59XG5cbkBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDkwZW0pIGFuZCAobWluLXdpZHRoOiA0OGVtKSB7XG4gIC5zZWFyY2hCYXJTZWN0aW9uIHtcbiAgICBwYWRkaW5nLXJpZ2h0OiAwLjU3MTQzcmVtO1xuICAgIHBhZGRpbmctbGVmdDogMC41NzE0M3JlbTtcbiAgfVxufVxuXG5AbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA5MGVtKSBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAuc2VhcmNoQmFyU2VjdGlvbiB7XG4gICAgcGFkZGluZy1yaWdodDogMC41NzE0M3JlbTtcbiAgICBwYWRkaW5nLWxlZnQ6IDAuNTcxNDNyZW07XG4gIH1cbn1cblxuQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogOTBlbSkge1xuICAuc2VhcmNoQmFyU2VjdGlvbjpsYXN0LWNoaWxkOm5vdCg6Zmlyc3QtY2hpbGQpIHtcbiAgICBmbG9hdDogcmlnaHQ7XG4gIH1cbiAgLmxvZ2luU2VjdGlvbiB7XG4gICAgd2lkdGg6IDI0LjQ0NDQ0JTtcbiAgICBmbG9hdDogbGVmdDtcbiAgICBwYWRkaW5nLXJpZ2h0OiAwLjM1NzE0cmVtO1xuICAgIHBhZGRpbmctbGVmdDogMC4zNTcxNHJlbTtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgbGVmdDogNTguMzMzMzMlO1xuICB9XG59XG5cbkBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDkwZW0pIGFuZCAobWluLXdpZHRoOiA0OGVtKSB7XG4gIC5sb2dpblNlY3Rpb24ge1xuICAgIHBhZGRpbmctcmlnaHQ6IDAuNTcxNDNyZW07XG4gICAgcGFkZGluZy1sZWZ0OiAwLjU3MTQzcmVtO1xuICB9XG59XG5cbkBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDkwZW0pIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gIC5sb2dpblNlY3Rpb24ge1xuICAgIHBhZGRpbmctcmlnaHQ6IDAuNTcxNDNyZW07XG4gICAgcGFkZGluZy1sZWZ0OiAwLjU3MTQzcmVtO1xuICB9XG59XG5cbkBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDkwZW0pIHtcbiAgLmxvZ2luU2VjdGlvbjpsYXN0LWNoaWxkOm5vdCg6Zmlyc3QtY2hpbGQpIHtcbiAgICBmbG9hdDogcmlnaHQ7XG4gIH1cbn1cblxuLmhlYWRlcldyYXBwZXIge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG59XG5cbi5oZWFkZXJXcmFwcGVyLCAuaGVhZGVyV3JhcHBlciBhLCAuaGVhZGVyV3JhcHBlciBsYWJlbCB7XG4gIGNvbG9yOiAjZmVmZWZlO1xufVxuXG4udG9wSGVhZGVyQ29udGVudCB7XG4gIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCAjMzEzMTMxO1xufVxuXG4vKkVORCBIZWFkZXIgTGF5b3V0Ki9cbi8qU2l0ZVR5cGUgVGFicyovXG4uc2l0ZVNlbGVjdFRhYnMge1xuICBjdXJzb3I6IHBvaW50ZXI7XG4gIC1tb3otYm94LXNoYWRvdzogaW5zZXQgMCAwIDEwcHggIzAwMDtcbiAgLXdlYmtpdC1ib3gtc2hhZG93OiBpbnNldCAwIDAgMTBweCAjMDAwO1xuICBib3gtc2hhZG93OiBpbnNldCAwIDAgMTBweCAjMDAwO1xufVxuXG4uc2l0ZVNlbGVjdFRhYnMgc3Bhbi5hY3RpdmVTVCB7XG4gIGJhY2tncm91bmQtY29sb3I6ICNGOUE1MTk7XG59XG5cbi5zaXRlU2VsZWN0VGFicyBzcGFuLmFjdGl2ZVNUIGEge1xuICBjb2xvcjogIzBhMGEwYTtcbiAgZm9udC13ZWlnaHQ6IGJvbGQ7XG59XG5cbi5zaXRlU2VsZWN0VGFicyBzcGFuIHtcbiAgcGFkZGluZzogMCA1cHg7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgYm94LXNpemluZzogYm9yZGVyLWJveDtcbn1cblxuQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogNjMuOTM3NWVtKSB7XG4gIC5zaXRlU2VsZWN0VGFicyBzcGFuOmxhc3QtY2hpbGQge1xuICAgIHBhZGRpbmctbGVmdDogMHB4O1xuICB9XG4gIC5zaXRlU2VsZWN0VGFicyBzcGFuOmxhc3QtY2hpbGQgc3BhbiB7XG4gICAgcGFkZGluZzogMHB4O1xuICB9XG59XG5cbi8qRU5EIFNpdGVUeXBlIFRhYnMqL1xuLmJhc2tldEhlYWRlclRvdGFsIHtcbiAgbGluZS1oZWlnaHQ6IDIuODU3MTRyZW07XG4gIGZsb2F0OiBsZWZ0O1xufVxuXG4vKk15IEFjY291bnQvTG9naW4gTWVudSovXG5AbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA2My45Mzc1ZW0pIHtcbiAgYS5teUFjY291bnRMaW5rIHtcbiAgICBwYWRkaW5nLWxlZnQ6IDAuMjg1NzFyZW0gIWltcG9ydGFudDtcbiAgfVxufVxuXG5hLm15QWNjb3VudExpbms6aG92ZXIsIC5teUFjY291bnRMaW5rIGE6aG92ZXIge1xuICB0ZXh0LWRlY29yYXRpb246IHVuZGVybGluZTtcbiAgdGV4dC1kZWNvcmF0aW9uLWNvbG9yOiB3aGl0ZTtcbn1cblxuYS5teUFjY291bnRMaW5rLCAubXlBY2NvdW50TGluayBhLCAuZHJvcGRvd24ubWVudSBhLm15QWNjb3VudExpbmsge1xuICBmb250LXdlaWdodDogYm9sZDtcbiAgbGluZS1oZWlnaHQ6IDIuODU3MTRyZW07XG4gIGZvbnQtc2l6ZTogMS4xNDI4NnJlbTtcbiAgcGFkZGluZzogMCAwLjQ1cmVtO1xufVxuXG4uZHJvcGRvd24ubWVudS5teUFjY291bnRNZW51ID4gbGkuaXMtZHJvcGRvd24tc3VibWVudS1wYXJlbnQgPiBhOjphZnRlciB7XG4gIGJvcmRlci1jb2xvcjogI2ZlZmVmZSB0cmFuc3BhcmVudCB0cmFuc3BhcmVudDtcbn1cblxuLm1lbnUubXlBY2NvdW50TWVudSAuaXMtYWN0aXZlID4gYSB7XG4gIGNvbG9yOiAjZmVmZWZlO1xufVxuXG4uZHJvcGRvd24ubWVudS5teUFjY291bnRNZW51ID4gbGkgLm1lbnUge1xuICBib3JkZXI6IDFweCBzb2xpZCAjZGRkZGRkO1xuICB6LWluZGV4OiA5OTk5OTtcbn1cblxuLmRyb3Bkb3duLm1lbnUubXlBY2NvdW50TWVudSA+IGxpIC5tZW51IGEge1xuICBjb2xvcjogIzBhMGEwYTtcbn1cblxuLmRyb3Bkb3duLm1lbnUubXlBY2NvdW50TWVudSA+IGxpIC5tZW51IGE6aG92ZXIge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjRjlBNTE5O1xufVxuXG4vKkVORCBNeSBBY2NvdW50L0xvZ2luIE1lbnUqL1xuLm1haW5OYXYge1xuICBiYWNrZ3JvdW5kOiAjMzEzMTMxO1xuICB6LWluZGV4OiAxMDAwODtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xufVxuXG4vKkNoYXQgTGluayovXG5zcGFuLmNoYXRMaW5rLCBzcGFuLmNoYXRMaW5rIHNwYW4ge1xuICBjdXJzb3I6IHBvaW50ZXI7XG59XG5cbiNzaXRlLWRvbWFpbi1oZWFkZXIge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjMkY5RjQ2O1xufVxuXG4jc2l0ZS1kb21haW4taGVhZGVyIC5zdGlja3kge1xuICB3aWR0aDogMTAwJTtcbiAgei1pbmRleDogOTk5OTk5OTk7XG59XG5cbiNzaXRlLWRvbWFpbi1oZWFkZXIgLnN0aWNreSAuc2l0ZS1kb21haW4ge1xuICB3aWR0aDogOTAlO1xuICBtYXJnaW46IDAgYXV0bztcbiAgYmFja2dyb3VuZC1jb2xvcjogIzJGOUY0NjtcbiAgcGFkZGluZzogNXB4O1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gIGJvcmRlci1yYWRpdXM6IDAgMCA1cHggNXB4O1xuICB0cmFuc2l0aW9uOiBib3gtc2hhZG93IC4xcyBlYXNlLWluLW91dDtcbn1cblxuI3NpdGUtZG9tYWluLWhlYWRlciAuc3RpY2t5IC5zaXRlLWRvbWFpbi5zdGljayB7XG4gIGJveC1zaGFkb3c6IDBweCAxcHggNXB4IDBweCByZ2JhKDAsIDAsIDAsIDAuNCk7XG59XG5cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gICNzaXRlLWRvbWFpbi1oZWFkZXIgLnN0aWNreSAuc2l0ZS1kb21haW4ge1xuICAgIHdpZHRoOiAzMy4zMyU7XG4gIH1cbn1cblxuI3NpdGUtZG9tYWluLWhlYWRlciAuc3RpY2t5IGgyIHtcbiAgY29sb3I6IHdoaXRlO1xuICBmb250LXdlaWdodDogbm9ybWFsO1xuICBtYXJnaW46IDA7XG59XG5cbiNzaXRlLWRvbWFpbi1oZWFkZXIgLnN0aWNreSBoMiBhIHtcbiAgdGV4dC1kZWNvcmF0aW9uOiB1bmRlcmxpbmU7XG4gIGNvbG9yOiB3aGl0ZTtcbn1cblxuLmxpdmUtY2hhdC13cmFwIHtcbiAgcG9zaXRpb246IGZpeGVkO1xuICBib3R0b206IDEuNWVtO1xuICByaWdodDogMS41ZW07XG4gIHotaW5kZXg6IDE7XG4gIHRyYW5zaXRpb246IGFsbCBlYXNlLWluLW91dCAuMnM7XG59XG5cbi5saXZlLWNoYXQtd3JhcDpob3ZlciB7XG4gIHRyYW5zZm9ybTogc2NhbGUoMS4xKTtcbn1cblxuLmxpdmUtY2hhdC13cmFwIC5saXZlLWNoYXQge1xuICBkaXNwbGF5OiBmbGV4O1xuICBjdXJzb3I6IHBvaW50ZXI7XG4gIGJvcmRlci1yYWRpdXM6IDIuNWVtO1xufVxuXG4ubGl2ZS1jaGF0LXdyYXAgLmxpdmUtY2hhdCAuYnViYmxlLXRleHQge1xuICBkaXNwbGF5OiBub25lO1xufVxuXG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDhlbSkge1xuICAubGl2ZS1jaGF0LXdyYXAgLmxpdmUtY2hhdCB7XG4gICAgYW5pbWF0aW9uOiB3b2JibGUtaG9yLWJvdHRvbSA4cyBib3RoIDI7XG4gICAgYW5pbWF0aW9uLWRlbGF5OiA4cztcbiAgfVxuICAubGl2ZS1jaGF0LXdyYXAgLmxpdmUtY2hhdCAuYnViYmxlLXRleHQge1xuICAgIGJhY2tncm91bmQtY29sb3I6ICNkNjg4MDY7XG4gICAgYm9yZGVyLXJhZGl1czogMmVtO1xuICAgIGRpc3BsYXk6IGlubGluZS1mbGV4O1xuICAgIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAgd2lkdGg6IDEwZW07XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIGNvbG9yOiB3aGl0ZTtcbiAgICBhbmltYXRpb246IGZsaXAtaW4tdmVyLXJpZ2h0IDAuNXMgY3ViaWMtYmV6aWVyKDAuMjUsIDAuNDYsIDAuNDUsIDAuOTQpIGJvdGg7XG4gICAgYW5pbWF0aW9uLWRlbGF5OiAycztcbiAgICB0cmFuc2Zvcm0tb3JpZ2luOiByaWdodDtcbiAgfVxuICAubGl2ZS1jaGF0LXdyYXAgLmxpdmUtY2hhdCAuYnViYmxlLXRleHQ6YWZ0ZXIge1xuICAgIGJhY2tncm91bmQtY29sb3I6ICNkNjg4MDY7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIHRvcDogMDtcbiAgICBib3R0b206IDA7XG4gICAgcmlnaHQ6IC0ycmVtO1xuICAgIHdpZHRoOiA0cmVtO1xuICAgIGNvbnRlbnQ6ICcnO1xuICAgIHotaW5kZXg6IC0xO1xuICB9XG59XG5cbi5saXZlLWNoYXQtd3JhcCAubGl2ZS1jaGF0IC5idWJibGUge1xuICBiYWNrZ3JvdW5kOiAjRjlBNTE5O1xuICBib3JkZXItcmFkaXVzOiAyZW07XG4gIGhlaWdodDogNGVtO1xuICB3aWR0aDogNGVtO1xuICBkaXNwbGF5OiBpbmxpbmUtZmxleDtcbiAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgcGFkZGluZzogMWVtO1xuICBib3gtc2hhZG93OiAwIDFweCA0cHggMCByZ2JhKDAsIDAsIDAsIDAuNCk7XG4gIGFuaW1hdGlvbjogaGVhcnRiZWF0IDRzIGVhc2UtaW4tb3V0IGluZmluaXRlIGJvdGg7XG4gIGFuaW1hdGlvbi1kZWxheTogMnM7XG59XG5cbi5saXZlLWNoYXQtd3JhcCAubGl2ZS1jaGF0IC5idWJibGUgaSB7XG4gIGZvbnQtc2l6ZTogMmVtO1xuICBjb2xvcjogd2hpdGU7XG59XG5cbkBrZXlmcmFtZXMgd29iYmxlLWhvci1ib3R0b20ge1xuICAwJSwgMjAlIHtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoMCUpO1xuICAgIHRyYW5zZm9ybS1vcmlnaW46IDUwJSA1MCU7XG4gIH1cbiAgMyUge1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWCgtMTVweCkgcm90YXRlKC0zZGVnKTtcbiAgfVxuICA2JSB7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKDdweCkgcm90YXRlKDNkZWcpO1xuICB9XG4gIDklIHtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoLTdweCkgcm90YXRlKC0xLjhkZWcpO1xuICB9XG4gIDEyJSB7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKDRweCkgcm90YXRlKDEuMmRlZyk7XG4gIH1cbiAgMTUlIHtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoLTNweCkgcm90YXRlKC0wLjZkZWcpO1xuICB9XG4gIDIwJSB7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKDApIHJvdGF0ZSgwKTtcbiAgfVxuICAxMDAlIHtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoMCkgcm90YXRlKDApO1xuICB9XG59XG5cbkBrZXlmcmFtZXMgZmxpcC1pbi12ZXItcmlnaHQge1xuICAwJSB7XG4gICAgdHJhbnNmb3JtOiByb3RhdGVZKC04MGRlZyk7XG4gICAgb3BhY2l0eTogMDtcbiAgfVxuICAxMDAlIHtcbiAgICB0cmFuc2Zvcm06IHJvdGF0ZVkoMCk7XG4gICAgb3BhY2l0eTogMTtcbiAgfVxufVxuXG5Aa2V5ZnJhbWVzIGhlYXJ0YmVhdCB7XG4gIGZyb20ge1xuICAgIHRyYW5zZm9ybTogc2NhbGUoMSk7XG4gICAgdHJhbnNmb3JtLW9yaWdpbjogY2VudGVyIGNlbnRlcjtcbiAgICBhbmltYXRpb24tdGltaW5nLWZ1bmN0aW9uOiBlYXNlLW91dDtcbiAgfVxuICA2JSB7XG4gICAgdHJhbnNmb3JtOiBzY2FsZSgxLjA5KTtcbiAgICBhbmltYXRpb24tdGltaW5nLWZ1bmN0aW9uOiBlYXNlLWluO1xuICB9XG4gIDEyJSB7XG4gICAgdHJhbnNmb3JtOiBzY2FsZSgxLjAyKTtcbiAgICBhbmltYXRpb24tdGltaW5nLWZ1bmN0aW9uOiBlYXNlLW91dDtcbiAgfVxuICAxOCUge1xuICAgIHRyYW5zZm9ybTogc2NhbGUoMS4xMyk7XG4gICAgYW5pbWF0aW9uLXRpbWluZy1mdW5jdGlvbjogZWFzZS1pbjtcbiAgfVxuICAyNCUge1xuICAgIHRyYW5zZm9ybTogc2NhbGUoMSk7XG4gICAgYW5pbWF0aW9uLXRpbWluZy1mdW5jdGlvbjogZWFzZS1vdXQ7XG4gIH1cbiAgMTAwJSB7XG4gICAgdHJhbnNmb3JtOiBzY2FsZSgxKTtcbiAgfVxufVxuXG4jc3VnZ2VzdExheWVyIHtcbiAgaGVpZ2h0OiAxcHg7XG4gIHotaW5kZXg6IDk5OTk5O1xuICBiYWNrZ3JvdW5kOiB0cmFuc3BhcmVudDtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICBtYXJnaW4tdG9wOiAtMTBweDtcbiAgbGVmdDogMDtcbiAgcmlnaHQ6IDA7XG4gIHdpZHRoOiAxMDAlO1xuICBmbG9hdDogbGVmdDtcbiAgcGFkZGluZy1yaWdodDogMC4zNTcxNHJlbTtcbiAgcGFkZGluZy1sZWZ0OiAwLjM1NzE0cmVtO1xufVxuXG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDhlbSkge1xuICAjc3VnZ2VzdExheWVyIHtcbiAgICBwYWRkaW5nLXJpZ2h0OiAwLjU3MTQzcmVtO1xuICAgIHBhZGRpbmctbGVmdDogMC41NzE0M3JlbTtcbiAgfVxufVxuXG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAjc3VnZ2VzdExheWVyIHtcbiAgICBwYWRkaW5nLXJpZ2h0OiAwLjU3MTQzcmVtO1xuICAgIHBhZGRpbmctbGVmdDogMC41NzE0M3JlbTtcbiAgfVxufVxuXG4jc3VnZ2VzdExheWVyOmxhc3QtY2hpbGQ6bm90KDpmaXJzdC1jaGlsZCkge1xuICBmbG9hdDogcmlnaHQ7XG59XG5cbnVsLnN1Z2dlc3RMYXllckJsb2NrVGV4dCB7XG4gIG1hcmdpbjogMC43MTQyOXJlbTtcbn1cblxudWwuc3VnZ2VzdExheWVyQmxvY2ssIGRpdi5zdWdnZXN0TGF5ZXJCbG9jayB7XG4gIGxpc3Qtc3R5bGU6IG5vbmU7XG4gIGNvbG9yOiAjMGEwYTBhO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZmVmZWZlO1xuICBjdXJzb3I6IHBvaW50ZXI7XG4gIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCByZ2JhKDAsIDAsIDAsIDAuMik7XG4gIGJveC1zaGFkb3c6IDAgMXB4IDVweCByZ2JhKDAsIDAsIDAsIDAuMTUpO1xuICBib3gtc2l6aW5nOiBib3JkZXItYm94O1xufVxuXG51bC5zdWdnZXN0TGF5ZXJCbG9jayBsaSwgdWwuc3VnZ2VzdExheWVyQmxvY2tUZXh0IGxpIHtcbiAgbGlzdC1zdHlsZTogbm9uZTtcbiAgZGlzcGxheTogYmxvY2s7XG59XG5cbmxpLnN1Z2dlc3RIZWFkZXIge1xuICBmb250LXdlaWdodDogYm9sZDtcbiAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkICNkZGRkZGQ7XG4gIHBhZGRpbmc6IDNweCAxMHB4IDNweCA1cHg7XG59XG5cbnNwYW4uc3VnZ2VzdFRleHRRdWVyeSB7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBwYWRkaW5nOiAwLjM1NzE0cmVtO1xuICBtYXJnaW46IDAuMjE0MjlyZW07XG59XG5cbmxpLnN1Z2dlc3RSb3cgOmhvdmVyIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2RkZGRkZDtcbn1cblxuLmhpZ2hsaWdodCB7XG4gIGJhY2tncm91bmQ6ICNFOEU1RTU7XG59XG5cbi5yX015QWNjb3VudF9NeUFjY291bnRfU2VjdGlvbiB7XG4gIGhlaWdodDogMTUwcHg7XG59XG5cbi5yX015QWNjb3VudF9NeUFjY291bnRfU2VjdGlvbiBhIHtcbiAgZGlzcGxheTogYmxvY2s7XG59XG5cbi5hY2NvdW50LWluZm8tYm94IHtcbiAgYm9yZGVyOiBkb3R0ZWQgMnB4ICNkMGNkY2Q7XG4gIHBhZGRpbmc6IDVweCAxNXB4IDVweCAxNXB4O1xuICBib3JkZXItcmFkaXVzOiA3cHg7XG4gIGJhY2tncm91bmQtY29sb3I6IEluZm9CYWNrZ3JvdW5kO1xuICBtYXJnaW4tdG9wOiA1cHg7XG59XG5cbi5mbGV4LWFjY291bnQtYm94IHtcbiAgZGlzcGxheTogZmxleDtcbiAgYm9yZGVyOiBzb2xpZCAxcHggI2QwY2RjZDtcbiAgcGFkZGluZzogNXB4O1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZjJmMGYwO1xuICBjb2xvcjogIzQ5NDg0OCAhaW1wb3J0YW50O1xuICBtaW4taGVpZ2h0OiA5MHB4O1xuICBwYWRkaW5nLXRvcDogMTBweDtcbn1cblxuLmZsZXgtYWNjb3VudC1ib3g6aG92ZXIge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjMzEzMTMxO1xuICBjb2xvcjogI2ZmZiAhaW1wb3J0YW50O1xuICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG4gIGJvcmRlcjogc29saWQgMXB4ICNkMGNkY2Q7XG4gIGN1cnNvcjogcG9pbnRlcjtcbn1cblxuLmZsZXgtYWNjb3VudC1ib3gtY2hpbGQge1xuICBmbGV4OiA2O1xuICBtYXJnaW4tcmlnaHQ6IDIwcHg7XG59XG5cbi5mbGV4LWFjY291bnQtYm94LWRlc2NyaXB0aW9uIHtcbiAgZGlzcGxheTogYmxvY2s7XG4gIGZvbnQtc2l6ZTogOTAlO1xufVxuXG5AbWVkaWEgb25seSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDYwMHB4KSB7XG4gIC5mbGV4LWFjY291bnQtYm94LWRlc2NyaXB0aW9uIHtcbiAgICBkaXNwbGF5OiBub25lO1xuICB9XG59XG5cbi5mbGV4LWFjY291bnQtYm94LWluZmxpZ2h0IHtcbiAgZGlzcGxheTogZmxleDtcbiAgYm9yZGVyOiBzb2xpZCAxcHggI2QwY2RjZDtcbiAgcGFkZGluZzogNXB4O1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjYmFlZmQ4O1xuICBjb2xvcjogIzQ5NDg0OCAhaW1wb3J0YW50O1xufVxuXG4uZmxleC1hY2NvdW50LWJveC1pbmZsaWdodDpob3ZlciB7XG4gIGJhY2tncm91bmQtY29sb3I6ICMzMTMxMzE7XG4gIGNvbG9yOiAjZmZmICFpbXBvcnRhbnQ7XG4gIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgYm9yZGVyOiBzb2xpZCAxcHggI2QwY2RjZDtcbiAgY3Vyc29yOiBwb2ludGVyO1xufVxuXG4uZ3JpZC1jb250YWluZXIge1xuICBkaXNwbGF5OiBncmlkO1xuICBncmlkLXRlbXBsYXRlLWNvbHVtbnM6IDFmciAxZnI7XG4gIGdyaWQtZ2FwOiAxMHB4O1xufVxuXG4uZmEtc3RhY2tbZGF0YS1jb3VudF06YWZ0ZXIge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHJpZ2h0OiAyNSU7XG4gIHRvcDogNSU7XG4gIGNvbnRlbnQ6IGF0dHIoZGF0YS1jb3VudCk7XG4gIGZvbnQtc2l6ZTogMzUlO1xuICBwYWRkaW5nOiAuOTllbTtcbiAgYm9yZGVyLXJhZGl1czogOTk5cHg7XG4gIGxpbmUtaGVpZ2h0OiAuOTllbTtcbiAgY29sb3I6IHdoaXRlO1xuICBiYWNrZ3JvdW5kOiByZWQ7XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgbWluLXdpZHRoOiAzZW07XG4gIGZvbnQtd2VpZ2h0OiBib2xkO1xufVxuXG5oMS5tYWluSGVhZGluZyB7XG4gIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCAjZGRkZGRkO1xuICBtYXJnaW4tYm90dG9tOiAwLjcxNDI5cmVtO1xufVxuXG50YWJsZS5leHBhbmRUYWJsZSB0Ym9keSB0ci5kZXRhaWxSb3c6bnRoLWNoaWxkKDRuLTEpIHtcbiAgYm9yZGVyLWJvdHRvbTogMDtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2U4ZTVlNTtcbn1cblxuLmFkbWluVGFibGVMaW5rIHtcbiAgY29sb3I6ICMxMTUzQUQ7XG4gIHRleHQtZGVjb3JhdGlvbjogdW5kZXJsaW5lO1xuICB0ZXh0LWRlY29yYXRpb24tY29sb3I6ICMxMTUzQUQ7XG4gIGN1cnNvcjogcG9pbnRlcjtcbn1cblxuLmV4cGFuZGVkUm93IHtcbiAgYm9yZGVyLWJvdHRvbTogMDtcbiAgLypiYWNrZ3JvdW5kLWNvbG9yOiAkbGlnaHQtZ3JheTsqL1xufVxuXG4uaGlkZGVuVGFibGVDb250ZW50IHtcbiAgcGFkZGluZzogMC4zNTcxNHJlbTtcbiAgcGFkZGluZy10b3A6IDAuNzE0MjlyZW07XG4gIGJvcmRlcjogMXB4IHNvbGlkICNlM2UzZTM7XG4gIGJhY2tncm91bmQ6ICNmZWZlZmU7XG4gIC13ZWJraXQtYm94LXNoYWRvdzogaW5zZXQgMCAxcHggMXB4IHJnYmEoMCwgMCwgMCwgMC4wNSk7XG4gIGJveC1zaGFkb3c6IGluc2V0IDAgMXB4IDFweCByZ2JhKDAsIDAsIDAsIDAuMDUpO1xufVxuXG4uZ3JhcGgtd3JhcCB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgcGFkZGluZy1ib3R0b206IGNhbGMoMTAgLyAxNiAqIDEwMCUpO1xufVxuXG4uZ3JhcGgtd3JhcCAuZ3JhcGgge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHdpZHRoOiAxMDAlO1xuICBoZWlnaHQ6IDEwMCU7XG4gIGxlZnQ6IDA7XG4gIHJpZ2h0OiAwO1xuICB0b3A6IDA7XG4gIGJvdHRvbTogMDtcbn1cblxuQGtleWZyYW1lcyBjaGFydGpzLXJlbmRlci1hbmltYXRpb24ge1xuICBmcm9tIHtcbiAgICBvcGFjaXR5OiAuOTk7XG4gIH1cbiAgdG8ge1xuICAgIG9wYWNpdHk6IDE7XG4gIH1cbn1cblxuLmNoYXJ0anMtcmVuZGVyLW1vbml0b3Ige1xuICBhbmltYXRpb246IGNoYXJ0anMtcmVuZGVyLWFuaW1hdGlvbiAxbXM7XG59XG5cbi5jaGFydGpzLXNpemUtbW9uaXRvciwgLmNoYXJ0anMtc2l6ZS1tb25pdG9yLWV4cGFuZCwgLmNoYXJ0anMtc2l6ZS1tb25pdG9yLXNocmluayB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgZGlyZWN0aW9uOiBsdHI7XG4gIGxlZnQ6IDA7XG4gIHRvcDogMDtcbiAgcmlnaHQ6IDA7XG4gIGJvdHRvbTogMDtcbiAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgcG9pbnRlci1ldmVudHM6IG5vbmU7XG4gIHZpc2liaWxpdHk6IGhpZGRlbjtcbiAgei1pbmRleDogLTE7XG59XG5cbi5jaGFydGpzLXNpemUtbW9uaXRvci1leHBhbmQgPiBkaXYge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHdpZHRoOiAxMDAwMDAwcHg7XG4gIGhlaWdodDogMTAwMDAwMHB4O1xuICBsZWZ0OiAwO1xuICB0b3A6IDA7XG59XG5cbi5jaGFydGpzLXNpemUtbW9uaXRvci1zaHJpbmsgPiBkaXYge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHdpZHRoOiAyMDAlO1xuICBoZWlnaHQ6IDIwMCU7XG4gIGxlZnQ6IDA7XG4gIHRvcDogMDtcbn1cblxuLm9yZGVyU3VtbWFyeVRhYmxlIHtcbiAgZGlzcGxheTogdGFibGU7XG59XG5cbi5vcmRlclN1bW1hcnlUYWJsZSB0ciB7XG4gIGRpc3BsYXk6IHRhYmxlLXJvdyAhaW1wb3J0YW50O1xufVxuXG4ub3JkZXJTdW1tYXJ5VGFibGUgdGQge1xuICBkaXNwbGF5OiB0YWJsZS1jZWxsICFpbXBvcnRhbnQ7XG59XG5cbi5vcmRlclN1bW1hcnlUYWJsZSB0ciA+IHRkOm50aC1vZi10eXBlKDIpIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2U4ZTVlNTtcbiAgd2lkdGg6IDguOTI4NTdyZW07XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbn1cblxuLm9yZGVyU3VtbWFyeVRhYmxlIHRyID4gdGQ6bnRoLW9mLXR5cGUoMSkge1xuICBmb250LXdlaWdodDogYm9sZDtcbiAgcGFkZGluZy1yaWdodDogMC4zNTcxNHJlbTtcbiAgdGV4dC1hbGlnbjogcmlnaHQ7XG4gIHdpZHRoOiA3Ljg1NzE0cmVtO1xufVxuXG4udG90YWxQcmljZUNvbCB7XG4gIGJhY2tncm91bmQ6ICNlOGU1ZTU7XG59XG5cbkBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDYzLjkzNzVlbSkge1xuICAudG90YWxQcmljZUNvbCB7XG4gICAgZGlzcGxheTogbm9uZSAhaW1wb3J0YW50O1xuICB9XG59XG5cbnRmb290IC50b3RhbFByaWNlQ29sIHtcbiAgZm9udC1zaXplOiAxLjI4NTcxcmVtO1xufVxuXG4ucHJvbW8tYWNjb3JkaW9uLXdyYXAge1xuICBib3JkZXItcmFkaXVzOiA1cHg7XG4gIG92ZXJmbG93OiBoaWRkZW47XG4gIGJveC1zaGFkb3c6IDBweCAxcHggNXB4IDBweCByZ2JhKDAsIDAsIDAsIDAuNCk7XG59XG5cbltjbGFzc3w9XCJwcm9tby1hY2NvcmRpb24taXRlbVwiXSB7XG4gIHBhZGRpbmc6IDFyZW07XG4gIGJhY2tncm91bmQtY29sb3I6ICNlOGU1ZTU7XG4gIGNvbG9yOiAjMzEzMTMxO1xuICBmb250LXNpemU6IDEuM2VtO1xuICBjdXJzb3I6IHBvaW50ZXI7XG4gIHRyYW5zaXRpb246IGJhY2tncm91bmQtY29sb3IgLjFzIGVhc2UtaW4tb3V0O1xufVxuXG5bY2xhc3N8PVwicHJvbW8tYWNjb3JkaW9uLWl0ZW1cIl0ub3BlbiwgW2NsYXNzfD1cInByb21vLWFjY29yZGlvbi1pdGVtXCJdOmhvdmVyIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2UxZGRkZDtcbn1cblxuW2NsYXNzfD1cInByb21vLWFjY29yZGlvbi1pdGVtXCJdOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMDU0XCI7XG4gIGZvbnQtZmFtaWx5OiBGb250QXdlc29tZTtcbiAgbWFyZ2luLXJpZ2h0OiAxZW07XG59XG5cbltjbGFzc3w9XCJwcm9tby1hY2NvcmRpb24taXRlbVwiXS5vcGVuOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMDc4XCI7XG59XG5cbltjbGFzc3w9XCJwcm9tby1hY2NvcmRpb24taXRlbVwiXS5kaXNhYmxlZCB7XG4gIGNvbG9yOiByZ2JhKDQ5LCA0OSwgNDksIDAuNCk7XG4gIGN1cnNvcjogbm90LWFsbG93ZWQ7XG59XG5cbltjbGFzc3w9XCJwcm9tby1hY2NvcmRpb24taXRlbVwiXS5kaXNhYmxlZDpob3ZlciB7XG4gIGJhY2tncm91bmQtY29sb3I6ICNlOGU1ZTUgIWltcG9ydGFudDtcbn1cblxuW2NsYXNzfD1cInByb21vLWNvbnRlbnRcIl0ge1xuICBtYXgtaGVpZ2h0OiAxMDB2aDtcbiAgdHJhbnNpdGlvbjogbWF4LWhlaWdodCAuNXMgZWFzZS1pbi1vdXQ7XG59XG5cbltjbGFzc3w9XCJwcm9tby1jb250ZW50XCJdLmNsb3NlZCB7XG4gIG1heC1oZWlnaHQ6IDA7XG4gIHRyYW5zaXRpb246IG5vbmU7XG4gIG92ZXJmbG93OiBoaWRkZW47XG59XG5cbltjbGFzc3w9XCJwcm9tby1jb250ZW50XCJdIC5wcm9tby1vcHRpb25zIHtcbiAgcGFkZGluZzogMWVtO1xufVxuXG4uYnV0dG9uLWdyb3VwIHtcbiAgZGlzcGxheTogZmxleDtcbiAgbWFyZ2luLWJvdHRvbTogMDtcbiAgbWFyZ2luLXRvcDogMXJlbTtcbiAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbn1cblxuLmJ1dHRvbi1ncm91cC5zYXZlIC5idXR0b24ge1xuICBtYXJnaW4tbGVmdDogYXV0bztcbn1cblxuLmJ1dHRvbi1ncm91cCAucHJvbW8taW5mb19wZXJzaXN0ZW50IHtcbiAgbWFyZ2luLWxlZnQ6IGF1dG87XG4gIG1hcmdpbi1yaWdodDogMTBweDtcbiAgcGFkZGluZzogNnB4IDEwcHg7XG59XG5cbi5idXR0b24tZ3JvdXAgLmJ1dHRvbiB7XG4gIG1hcmdpbi1yaWdodDogMTBweDtcbn1cblxuLmJ1dHRvbi1ncm91cCAuYnV0dG9uOmxhc3QtY2hpbGQge1xuICBtYXJnaW4tcmlnaHQ6IDA7XG59XG5cbi5idXR0b24tZ3JvdXAtbGVmdCB7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gIG1hcmdpbi1ib3R0b206IDEwcHg7XG59XG5cbi5idXR0b24tZ3JvdXAtbGVmdCAuYnV0dG9uIHtcbiAgbWFyZ2luOiAwIDEwcHggMCAwO1xufVxuXG4uYnV0dG9uLWdyb3VwLWxlZnQgLm5iIHtcbiAgbWFyZ2luLXJpZ2h0OiBhdXRvO1xufVxuXG4uYnV0dG9uLWdyb3VwLWxlZnQgLm5iIC5wcm9tby1pbmZvX3BlcnNpc3RlbnQge1xuICBwYWRkaW5nOiA1cHggMTBweDtcbn1cblxuLnByb21vLWluZm8ge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG59XG5cbi5wcm9tby1pbmZvLmhvdmVyIC5wcm9tby1pbmZvX2JveCwgLnByb21vLWluZm8uZm9jdXMgLnByb21vLWluZm9fYm94IHtcbiAgb3BhY2l0eTogMTtcbiAgdmlzaWJpbGl0eTogdmlzaWJsZTtcbn1cblxuLnByb21vLWluZm8gLnByb21vLWluZm9fYm94IHtcbiAgZGlzcGxheTogYmxvY2s7XG4gIGJvcmRlci1yYWRpdXM6IDNweDtcbiAgYmFja2dyb3VuZC1jb2xvcjogIzJGOUY0NjtcbiAgY29sb3I6ICNmZWZlZmU7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgcmlnaHQ6IDA7XG4gIGJvdHRvbTogMTAwJTtcbiAgaGVpZ2h0OiBhdXRvO1xuICBwYWRkaW5nOiAxMHB4O1xuICBmb250LXNpemU6IC45cmVtO1xuICB0ZXh0LWFsaWduOiBsZWZ0O1xuICB0cmFuc2l0aW9uOiBlYXNlLWluLW91dCAuM3MgYWxsO1xuICBvcGFjaXR5OiAwO1xuICB2aXNpYmlsaXR5OiBoaWRkZW47XG4gIGJveC1zaGFkb3c6IDBweCAxcHggNXB4IDBweCByZ2JhKDAsIDAsIDAsIDAuNCk7XG4gIHotaW5kZXg6IDE7XG4gIHBvaW50ZXItZXZlbnRzOiBub25lO1xuICB1c2VyLXNlbGVjdDogbm9uZTtcbn1cblxuLnByb21vLWluZm8gLnByb21vLWluZm9fYm94OmhvdmVyIHtcbiAgY3Vyc29yOiBkZWZhdWx0O1xufVxuXG4ucHJvbW8taW5mb19wZXJzaXN0ZW50IHtcbiAgZm9udC1zdHlsZTogaXRhbGljO1xuICBkaXNwbGF5OiBibG9jaztcbiAgYm9yZGVyLXJhZGl1czogM3B4O1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjNTc1NzU3O1xuICBjb2xvcjogI2ZlZmVmZTtcbiAgZm9udC1zaXplOiAuOXJlbTtcbiAgcGFkZGluZzogMTBweDtcbiAgYm94LXNoYWRvdzogMHB4IDFweCA1cHggMHB4IHJnYmEoMCwgMCwgMCwgMC40KTtcbiAgcG9pbnRlci1ldmVudHM6IG5vbmU7XG4gIHVzZXItc2VsZWN0OiBub25lO1xufVxuXG4ucHJvbW8taW5mb19wZXJzaXN0ZW50LmRhcmsge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjMzEzMTMxO1xufVxuXG4uc3dpdGNoLXRvZ2dsZSB7XG4gIGRpc3BsYXk6IGZsZXg7XG59XG5cbi5zd2l0Y2gtdG9nZ2xlIC5zd2l0Y2gge1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIG1hcmdpbi1sZWZ0OiBhdXRvO1xuICBoZWlnaHQ6IDM0cHg7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgd2lkdGg6IDYwcHg7XG4gIGN1cnNvcjogcG9pbnRlcjtcbn1cblxuLnN3aXRjaC10b2dnbGUgLnN3aXRjaC5kaXNhYmxlZCB7XG4gIGN1cnNvcjogbm90LWFsbG93ZWQ7XG59XG5cbi5zd2l0Y2gtdG9nZ2xlIC5zd2l0Y2guZGlzYWJsZWQgLnNsaWRlci10b2dnbGU6YmVmb3JlIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2UxZGRkZDtcbn1cblxuLnN3aXRjaC10b2dnbGUgLnN3aXRjaCBpbnB1dCB7XG4gIGRpc3BsYXk6IG5vbmU7XG59XG5cbi5zd2l0Y2gtdG9nZ2xlIC5zd2l0Y2ggaW5wdXQ6Y2hlY2tlZCArIC5zbGlkZXItdG9nZ2xlOmJlZm9yZSB7XG4gIHRyYW5zZm9ybTogdHJhbnNsYXRlWCgyNnB4KTtcbn1cblxuLnN3aXRjaC10b2dnbGUgLnN3aXRjaCBpbnB1dDpjaGVja2VkICsgLnNsaWRlci10b2dnbGU6YWZ0ZXIge1xuICBjb250ZW50OiBcIiVcIjtcbiAgbGVmdDogY2FsYygyNnB4IC8gMik7XG4gIHRyYW5zZm9ybTogdHJhbnNsYXRlWCgyNnB4KTtcbn1cblxuLnN3aXRjaC10b2dnbGUgLnN3aXRjaCAuc2xpZGVyLXRvZ2dsZSB7XG4gIGJhY2tncm91bmQtY29sb3I6ICNlMWRkZGQ7XG4gIGJvdHRvbTogMDtcbiAgbGVmdDogMDtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICByaWdodDogMDtcbiAgdG9wOiAwO1xuICB0cmFuc2l0aW9uOiAuNHM7XG59XG5cbi5zd2l0Y2gtdG9nZ2xlIC5zd2l0Y2ggLnNsaWRlci10b2dnbGUucm91bmQge1xuICBib3JkZXItcmFkaXVzOiAzNHB4O1xufVxuXG4uc3dpdGNoLXRvZ2dsZSAuc3dpdGNoIC5zbGlkZXItdG9nZ2xlLnJvdW5kOmJlZm9yZSB7XG4gIGJvcmRlci1yYWRpdXM6IDUwJTtcbn1cblxuLnN3aXRjaC10b2dnbGUgLnN3aXRjaCAuc2xpZGVyLXRvZ2dsZTpiZWZvcmUge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZmZmO1xuICBib3R0b206IDRweDtcbiAgY29udGVudDogXCJcIjtcbiAgaGVpZ2h0OiAyNnB4O1xuICBsZWZ0OiA0cHg7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgdHJhbnNpdGlvbjogLjRzO1xuICB3aWR0aDogMjZweDtcbn1cblxuLnN3aXRjaC10b2dnbGUgLnN3aXRjaCAuc2xpZGVyLXRvZ2dsZTphZnRlciB7XG4gIGNvbnRlbnQ6IFwiwqNcIjtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICBsZWZ0OiBjYWxjKDIycHggLyAyKTtcbiAgdG9wOiA1cHg7XG4gIHRyYW5zaXRpb246IC40cztcbn1cblxuLnNrdVRvcCB7XG4gIG1hcmdpbi10b3A6IDFyZW07XG4gIG1hcmdpbi1ib3R0b206IDFyZW07XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbn1cblxuLnByb2RLZXlEZXRhaWxzIHtcbiAgY29sb3I6ICMwYTBhMGE7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBwYWRkaW5nOiAwLjM1NzE0cmVtIDA7XG59XG5cbi5wcm9kS2V5RGV0YWlscyBhIHtcbiAgY29sb3I6ICMwYTBhMGE7XG59XG5cbi5wcm9kQnJhbmRMb2dvIHtcbiAgZmxvYXQ6IHJpZ2h0O1xuICBtYXJnaW4tcmlnaHQ6IDQwJTtcbn1cblxuLm9yZGVyQ29kZSB7XG4gIGNvbG9yOiAjMGEwYTBhO1xufVxuXG4ub3JkZXJDb2RlIHNwYW4ge1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG59XG5cbi5vcmRlckNvZGUgaDIge1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIGZvbnQtc2l6ZTogMXJlbTtcbn1cblxuLm9yZGVyQ29kZSBhIHtcbiAgY29sb3I6ICMwYTBhMGE7XG59XG5cbi5vcmRlckNvZGUgYTpob3ZlciB7XG4gIHRleHQtZGVjb3JhdGlvbjogdW5kZXJsaW5lO1xuICB0ZXh0LWRlY29yYXRpb24tY29sb3I6ICMwYTBhMGE7XG59XG5cbi5jb21wbGlhbmNlTGlzdCB7XG4gIGxpc3Qtc3R5bGU6IG5vbmU7XG4gIG1hcmdpbi1sZWZ0OiAwO1xuICBtYXJnaW4tdG9wOiAwLjM1NzE0cmVtO1xuICBjb2xvcjogIzBhMGEwYTtcbn1cblxuLmNvbXBsaWFuY2VMaXN0IGxpIHtcbiAgZGlzcGxheTogYmxvY2s7XG4gIHBhZGRpbmc6IDAuMzU3MTRyZW0gMDtcbn1cblxuLmNvbXBsaWFuY2VMaXN0IGxpIGEge1xuICBjb2xvcjogIzBhMGEwYTtcbn1cblxuaDEucHJvZFRpdGxlIHtcbiAgbWFyZ2luLXRvcDogMC42NXJlbTtcbn1cblxuLnJlcG9ydEVycm9yTGluayB7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICB0ZXh0LWFsaWduOiByaWdodDtcbiAgY29sb3I6IGJsYWNrO1xuICBtYXJnaW4tdG9wOiAtMTJweDtcbiAgcGFkZGluZy1ib3R0b206IDRweDtcbn1cblxuQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogNjMuOTM3NWVtKSB7XG4gIC5yZXBvcnRFcnJvckxpbmsge1xuICAgIG1hcmdpbi1ib3R0b206IDAuOTI4NTdyZW07XG4gICAgdGV4dC1hbGlnbjogbGVmdDtcbiAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIH1cbn1cblxuLnJlcG9ydEVycm9yTGluazpob3ZlciB7XG4gIHRleHQtZGVjb3JhdGlvbjogdW5kZXJsaW5lO1xuICB0ZXh0LWRlY29yYXRpb24tY29sb3I6IGJsYWNrO1xuICBjb2xvcjogIzBhMGEwYTtcbn1cblxuLnN0b2NrTWVzc2FnZSB7XG4gIGZvbnQtd2VpZ2h0OiBib2xkO1xuICB0ZXh0LWFsaWduOiBsZWZ0O1xuICBmb250LXNpemU6IDFyZW07XG4gIGxpbmUtaGVpZ2h0OiAxLjQyODU3cmVtO1xufVxuXG4ucHJvZHVjdC1tb3EtdGV4dCB7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICB0ZXh0LWFsaWduOiByaWdodDtcbn1cblxuQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDBlbSkge1xuICAuc2t1U3RpY2tUb0JvdHRvbSB7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIGJvdHRvbTogNXB4O1xuICAgIHdpZHRoOiA5NyU7XG4gIH1cbn1cblxuLnN0b2NrTm90aWZpY2F0aW9uIHtcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xufVxuXG4uZGF0YVNoZWV0SXRlbSB7XG4gIGZsb2F0OiBsZWZ0O1xuICBwYWRkaW5nOiA1cHg7XG4gIG1hcmdpbjogMTBweDtcbn1cblxuLnRhYnMtcGFuZWwge1xuICBvdmVyZmxvdzogYXV0bztcbn1cblxuLnNrdVRhYnMge1xuICBiYWNrZ3JvdW5kOiAjZjdmNmY2O1xufVxuXG4uc2t1VGFicyAudGFicy10aXRsZSB7XG4gIGJvcmRlci1yaWdodDogMXB4IHNvbGlkICNlOGU1ZTU7XG59XG5cbi5za3VUYWJzIC50YWJzLXRpdGxlOmxhc3QtY2hpbGQge1xuICBib3JkZXItcmlnaHQ6IG5vbmU7XG59XG5cbi5za3VUYWJzIC50YWJzLXRpdGxlOmhvdmVyIHtcbiAgYmFja2dyb3VuZDogI2U4ZTVlNTtcbn1cblxuLnNrdVRhYnMgLnRhYnMtdGl0bGUgYSB7XG4gIHBhZGRpbmc6IDEuMjVyZW0gMC44NXJlbTtcbiAgZm9udC1zaXplOiAxLjFyZW07XG4gIGNvbG9yOiAjMGEwYTBhO1xufVxuXG4uc2t1VGFicyAudGFicy10aXRsZSBhOmhvdmVyIHtcbiAgYmFja2dyb3VuZDogI2U4ZTVlNTtcbn1cblxuLnNrdVRhYnMgLnRhYnMtdGl0bGUuaXMtYWN0aXZlIGEge1xuICBjb2xvcjogIzBhMGEwYTtcbiAgZm9udC13ZWlnaHQ6IGJvbGQ7XG59XG5cbi5za3VUYWJzIC5hY2NvcmRpb24tdGl0bGUge1xuICBjb2xvcjogIzBhMGEwYTtcbiAgZm9udC1zaXplOiAxLjE0Mjg2cmVtO1xufVxuXG4uc2t1VGFicyAuYWNjb3JkaW9uLXRpdGxlOmZvY3VzLCAuc2t1VGFicyAuZm9vdGVyQ29udGFpbmVyIC5hY2NvcmRpb24tdGl0bGU6aG92ZXIge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZmVmZWZlO1xufVxuXG4uc2t1VGFicyAuYWNjb3JkaW9uLWNvbnRlbnQge1xuICBvdmVyZmxvdzogYXV0bztcbn1cblxuLnNrdVRhYnMgLmFjY29yZGlvbi1pdGVtLmlzLWFjdGl2ZSAuYWNjb3JkaW9uLXRpdGxlIHtcbiAgY29sb3I6ICMwYTBhMGE7XG4gIGZvbnQtd2VpZ2h0OiBib2xkO1xufVxuXG4uc2t1VGFicyBpZnJhbWUge1xuICB3aWR0aDogNTAlO1xuICBtYXJnaW46IDAgYXV0bztcbn1cblxuQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogNDcuOTM3NWVtKSB7XG4gIC5za3VUYWJzIGlmcmFtZSB7XG4gICAgd2lkdGg6IDk1JTtcbiAgfVxufVxuXG4udmlld0Z1bGxSYW5nZSB7XG4gIGZvbnQtc2l6ZTogMS4wNzE0M3JlbTtcbn1cblxuLnZpZXdGdWxsUmFuZ2U6aG92ZXIge1xuICB0ZXh0LWRlY29yYXRpb246IHVuZGVybGluZTtcbn1cblxuLnNrdVRlY2ggdGgge1xuICBiYWNrZ3JvdW5kOiAjZjdmNmY2O1xuICBmb250LXdlaWdodDogbm9ybWFsO1xuICB3aWR0aDogMzMlO1xufVxuXG4ucHJvZHVjdC1hdHRyaWJ1dGVzLXRhYmxlIHtcbiAgZGlzcGxheTogZmxleDtcbiAgd2lkdGg6IDEwMCU7XG4gIG1hcmdpbjogMXJlbSAwO1xufVxuXG4ucHJvZHVjdC1hdHRyaWJ1dGVzLXRhYmxlIHRib2R5IHtcbiAgZGlzcGxheTogZmxleDtcbiAgZmxleC13cmFwOiB3cmFwO1xuICB3aWR0aDogMTAwJTtcbn1cblxuLnByb2R1Y3QtYXR0cmlidXRlcy10YWJsZSB0Ym9keSB0ciB7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIHdpZHRoOiAxMDAlO1xufVxuXG4ucHJvZHVjdC1hdHRyaWJ1dGVzLXRhYmxlIHRib2R5IHRyIHRoIHtcbiAgd2lkdGg6IDQwJTtcbiAgdGV4dC1hbGlnbjogbGVmdDtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2U4ZTVlNTtcbn1cblxuQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAucHJvZHVjdC1hdHRyaWJ1dGVzLXRhYmxlLnN0YWdnZXItdGFibGUgdGJvZHkgdHIge1xuICAgIHdpZHRoOiA1MCU7XG4gIH1cbn1cblxuLnN0b2NrTWVzc2FnZSB7XG4gIGFsaWduLWl0ZW1zOiBmbGV4LXN0YXJ0O1xufVxuXG4uc21hbGxTdG9ja01lc3NhZ2Uge1xuICBhbGlnbi1pdGVtczogZmxleC1zdGFydDtcbn1cblxuLnNtYWxsU3RvY2tNZXNzYWdlIC5zdG9jay1tZXNzYWdlLWluZm9fYm94IHtcbiAgLypib3R0b206IDEwMCU7XG4gICAgICAgIHRvcDogYXV0bzsqL1xufVxuXG4uc3RvY2tNZXNzYWdlLFxuLnNtYWxsU3RvY2tNZXNzYWdlLFxuLnN0b2NrLW1lc3NhZ2UtYmFza2V0IHtcbiAgZGlzcGxheTogZmxleDtcbiAganVzdGlmeS1jb250ZW50OiBmbGV4LWVuZDtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xufVxuXG4uc3RvY2tNZXNzYWdlIHNwYW4sXG4uc21hbGxTdG9ja01lc3NhZ2Ugc3Bhbixcbi5zdG9jay1tZXNzYWdlLWJhc2tldCBzcGFuIHtcbiAgZGlzcGxheTogYmxvY2s7XG59XG5cbi5zdG9ja01lc3NhZ2Ugc3BhbjpudGgtY2hpbGQoMiksXG4uc21hbGxTdG9ja01lc3NhZ2Ugc3BhbjpudGgtY2hpbGQoMiksXG4uc3RvY2stbWVzc2FnZS1iYXNrZXQgc3BhbjpudGgtY2hpbGQoMikge1xuICBmb250LXdlaWdodDogbm9ybWFsO1xufVxuXG4uc3RvY2tNZXNzYWdlIC5zdG9jay1tZXNzYWdlLXRleHQsXG4uc21hbGxTdG9ja01lc3NhZ2UgLnN0b2NrLW1lc3NhZ2UtdGV4dCxcbi5zdG9jay1tZXNzYWdlLWJhc2tldCAuc3RvY2stbWVzc2FnZS10ZXh0IHtcbiAgdGV4dC1hbGlnbjogcmlnaHQ7XG59XG5cbi5zdG9ja01lc3NhZ2UgLnN0b2NrLW1lc3NhZ2UtdGV4dCBhLFxuLnNtYWxsU3RvY2tNZXNzYWdlIC5zdG9jay1tZXNzYWdlLXRleHQgYSxcbi5zdG9jay1tZXNzYWdlLWJhc2tldCAuc3RvY2stbWVzc2FnZS10ZXh0IGEge1xuICBjb2xvcjogaW5oZXJpdDtcbiAgdGV4dC1kZWNvcmF0aW9uOiB1bmRlcmxpbmU7XG59XG5cbi5zdG9ja01lc3NhZ2UgLnN0b2NrLW1lc3NhZ2UtaW5mbyxcbi5zbWFsbFN0b2NrTWVzc2FnZSAuc3RvY2stbWVzc2FnZS1pbmZvLFxuLnN0b2NrLW1lc3NhZ2UtYmFza2V0IC5zdG9jay1tZXNzYWdlLWluZm8ge1xuICBjb2xvcjogIzc5Nzk2QTtcbiAgd2lkdGg6IDE5cHg7XG4gIGhlaWdodDogMTlweDtcbiAgZm9udC1zaXplOiAxOHB4O1xuICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbiAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgY3Vyc29yOiBwb2ludGVyO1xuICBkaXNwbGF5OiBpbmxpbmUtZmxleDtcbiAgZm9udC13ZWlnaHQ6IDQwMDtcbiAgbWFyZ2luLXJpZ2h0OiAuMmVtO1xuICBtYXJnaW4tdG9wOiAuMmVtO1xufVxuXG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAuc3RvY2tNZXNzYWdlIC5zdG9jay1tZXNzYWdlLWluZm8sXG4gIC5zbWFsbFN0b2NrTWVzc2FnZSAuc3RvY2stbWVzc2FnZS1pbmZvLFxuICAuc3RvY2stbWVzc2FnZS1iYXNrZXQgLnN0b2NrLW1lc3NhZ2UtaW5mbyB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICB9XG59XG5cbi5zdG9ja01lc3NhZ2UgLnN0b2NrLW1lc3NhZ2UtaW5mb19ib3gsXG4uc21hbGxTdG9ja01lc3NhZ2UgLnN0b2NrLW1lc3NhZ2UtaW5mb19ib3gsXG4uc3RvY2stbWVzc2FnZS1iYXNrZXQgLnN0b2NrLW1lc3NhZ2UtaW5mb19ib3gge1xuICBkaXNwbGF5OiBibG9jaztcbiAgYm9yZGVyLXJhZGl1czogM3B4O1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjMzEzMTMxO1xuICBjb2xvcjogI2ZlZmVmZTtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB3aWR0aDogMzAwcHg7XG4gIGhlaWdodDogYXV0bztcbiAgcGFkZGluZzogMTBweDtcbiAgZm9udC1zaXplOiAuNjVlbTtcbiAgdGV4dC1hbGlnbjogbGVmdDtcbiAgdHJhbnNpdGlvbjogZWFzZS1pbi1vdXQgLjNzIGFsbDtcbiAgb3BhY2l0eTogMDtcbiAgdmlzaWJpbGl0eTogaGlkZGVuO1xuICBib3gtc2hhZG93OiAwIDJweCA4cHggMHB4IHJnYmEoMCwgMCwgMCwgMC40KTtcbiAgei1pbmRleDogMTtcbiAgdG9wOiBjYWxjKDEwMCUgKyAuMmVtKTtcbiAgYm90dG9tOiBhdXRvO1xuICByaWdodDogMDtcbn1cblxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQ4ZW0pIHtcbiAgLnN0b2NrTWVzc2FnZSAuc3RvY2stbWVzc2FnZS1pbmZvX2JveCxcbiAgLnNtYWxsU3RvY2tNZXNzYWdlIC5zdG9jay1tZXNzYWdlLWluZm9fYm94LFxuICAuc3RvY2stbWVzc2FnZS1iYXNrZXQgLnN0b2NrLW1lc3NhZ2UtaW5mb19ib3gge1xuICAgIHJpZ2h0OiAwO1xuICAgIHRvcDogY2FsYygxMDAlICsgLjJlbSk7XG4gICAgYm90dG9tOiBhdXRvO1xuICB9XG59XG5cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gIC5zdG9ja01lc3NhZ2UgLnN0b2NrLW1lc3NhZ2UtaW5mb19ib3gsXG4gIC5zbWFsbFN0b2NrTWVzc2FnZSAuc3RvY2stbWVzc2FnZS1pbmZvX2JveCxcbiAgLnN0b2NrLW1lc3NhZ2UtYmFza2V0IC5zdG9jay1tZXNzYWdlLWluZm9fYm94IHtcbiAgICByaWdodDogY2FsYygxMDAlICsgLjJlbSk7XG4gICAgdG9wOiAwO1xuICAgIGJvdHRvbTogYXV0bztcbiAgfVxufVxuXG4uc3RvY2tNZXNzYWdlIC5zdG9jay1tZXNzYWdlLWluZm9fYm94LmFjdGl2ZSxcbi5zbWFsbFN0b2NrTWVzc2FnZSAuc3RvY2stbWVzc2FnZS1pbmZvX2JveC5hY3RpdmUsXG4uc3RvY2stbWVzc2FnZS1iYXNrZXQgLnN0b2NrLW1lc3NhZ2UtaW5mb19ib3guYWN0aXZlIHtcbiAgb3BhY2l0eTogMTtcbiAgdmlzaWJpbGl0eTogdmlzaWJsZTtcbn1cblxuLnN0b2NrTWVzc2FnZSAuc3RvY2stbWVzc2FnZS1pbmZvX2JveDpob3Zlcixcbi5zbWFsbFN0b2NrTWVzc2FnZSAuc3RvY2stbWVzc2FnZS1pbmZvX2JveDpob3Zlcixcbi5zdG9jay1tZXNzYWdlLWJhc2tldCAuc3RvY2stbWVzc2FnZS1pbmZvX2JveDpob3ZlciB7XG4gIGN1cnNvcjogZGVmYXVsdDtcbn1cblxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgLnN0b2NrLW1lc3NhZ2Utc2VhcmNoIC5zdG9jay1tZXNzYWdlLWluZm8ge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgfVxufVxuXG4uc3RvY2stbWVzc2FnZS1iYXNrZXQge1xuICBhbGlnbi1pdGVtczogZmxleC1zdGFydDtcbiAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG59XG5cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0OGVtKSB7XG4gIC5zdG9jay1tZXNzYWdlLWJhc2tldCB7XG4gICAganVzdGlmeS1jb250ZW50OiBmbGV4LWVuZDtcbiAgfVxufVxuXG4uc3RvY2stbWVzc2FnZS1iYXNrZXQgLnN0b2NrLW1lc3NhZ2UtdGV4dCB7XG4gIHRleHQtYWxpZ246IGxlZnQ7XG4gIG1hcmdpbi1ib3R0b206IDJlbTtcbn1cblxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQ4ZW0pIHtcbiAgLnN0b2NrLW1lc3NhZ2UtYmFza2V0IC5zdG9jay1tZXNzYWdlLXRleHQge1xuICAgIG1hcmdpbi1ib3R0b206IDA7XG4gIH1cbn1cblxuLnN0b2NrLW1lc3NhZ2UtYmFza2V0IC5zdG9jay1tZXNzYWdlLWluZm8ge1xuICBtYXJnaW4tbGVmdDogMDtcbn1cblxuLnN0b2NrLW1lc3NhZ2UtYmFza2V0IC5zdG9jay1tZXNzYWdlLWluZm9fYm94IHtcbiAgdG9wOiBjYWxjKDEwMCUgKyAuMmVtIC0gMmVtKTtcbiAgYm90dG9tOiBhdXRvO1xuICBsZWZ0OiAwO1xuICByaWdodDogYXV0bztcbn1cblxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQ4ZW0pIHtcbiAgLnN0b2NrLW1lc3NhZ2UtYmFza2V0IC5zdG9jay1tZXNzYWdlLWluZm9fYm94IHtcbiAgICB0b3A6IGF1dG87XG4gICAgYm90dG9tOiBjYWxjKDEwMCUgKyAuMmVtKTtcbiAgICBsZWZ0OiAwO1xuICAgIHJpZ2h0OiBhdXRvO1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWCgtNTAlKTtcbiAgfVxufVxuXG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAuc3RvY2stbWVzc2FnZS1iYXNrZXQgLnN0b2NrLW1lc3NhZ2UtaW5mb19ib3gge1xuICAgIHRyYW5zZm9ybTogbm9uZTtcbiAgfVxufVxuXG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAuc3RvY2stbWVzc2FnZS1tZXJnZSAuc3RvY2stbWVzc2FnZS1pbmZvX2JveCB7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKC01MCUpO1xuICB9XG59XG5cbi5zdG9jay1tZXNzYWdlLXRhYmxlIC5zdG9jay1tZXNzYWdlLWluZm8ge1xuICBtYXJnaW4tcmlnaHQ6IDA7XG4gIG1hcmdpbi1sZWZ0OiAuMmVtO1xufVxuXG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAuc3RvY2stbWVzc2FnZS10YWJsZSAuc3RvY2stbWVzc2FnZS1pbmZvIHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIH1cbn1cblxuLnN0b2NrLW1lc3NhZ2UtdGFibGUgLnN0b2NrLW1lc3NhZ2UtaW5mb19ib3gge1xuICByaWdodDogMDtcbiAgbGVmdDogYXV0bztcbiAgdG9wOiBjYWxjKDEwMCUgKyAuMmVtKTtcbiAgYm90dG9tOiBhdXRvO1xufVxuXG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAuc3RvY2stbWVzc2FnZS10YWJsZSAuc3RvY2stbWVzc2FnZS1pbmZvX2JveCB7XG4gICAgcmlnaHQ6IGF1dG87XG4gICAgbGVmdDogY2FsYygxMDAlICsgLjJlbSk7XG4gICAgdG9wOiAwO1xuICB9XG59XG5cbi5sZWdhY3ktc3RvY2stbWVzc2FnZSB7XG4gIHRleHQtYWxpZ246IHJpZ2h0O1xufVxuXG4udGllckhlYWRpbmcge1xuICBtYXJnaW4tdG9wOiAwLjM1NzE0cmVtO1xufVxuXG4udGllckhlYWRpbmcgaDEge1xuICBmbG9hdDogbGVmdDtcbn1cblxuLnRpZXJOYXZTZWN0aW9uIHtcbiAgd2lkdGg6IDEwMCU7XG4gIGZsb2F0OiBsZWZ0O1xuICBwYWRkaW5nLXJpZ2h0OiAwLjM1NzE0cmVtO1xuICBwYWRkaW5nLWxlZnQ6IDAuMzU3MTRyZW07XG59XG5cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0OGVtKSB7XG4gIC50aWVyTmF2U2VjdGlvbiB7XG4gICAgcGFkZGluZy1yaWdodDogMC41NzE0M3JlbTtcbiAgICBwYWRkaW5nLWxlZnQ6IDAuNTcxNDNyZW07XG4gIH1cbn1cblxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgLnRpZXJOYXZTZWN0aW9uIHtcbiAgICBwYWRkaW5nLXJpZ2h0OiAwLjU3MTQzcmVtO1xuICAgIHBhZGRpbmctbGVmdDogMC41NzE0M3JlbTtcbiAgfVxufVxuXG4udGllck5hdlNlY3Rpb246bGFzdC1jaGlsZDpub3QoOmZpcnN0LWNoaWxkKSB7XG4gIGZsb2F0OiByaWdodDtcbn1cblxuLnRpZXJNaWRkbGVXaWRlIHtcbiAgd2lkdGg6IDEwMCU7XG4gIGZsb2F0OiBsZWZ0O1xuICBwYWRkaW5nLXJpZ2h0OiAwLjM1NzE0cmVtO1xuICBwYWRkaW5nLWxlZnQ6IDAuMzU3MTRyZW07XG59XG5cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0OGVtKSB7XG4gIC50aWVyTWlkZGxlV2lkZSB7XG4gICAgcGFkZGluZy1yaWdodDogMC41NzE0M3JlbTtcbiAgICBwYWRkaW5nLWxlZnQ6IDAuNTcxNDNyZW07XG4gIH1cbn1cblxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgLnRpZXJNaWRkbGVXaWRlIHtcbiAgICBwYWRkaW5nLXJpZ2h0OiAwLjU3MTQzcmVtO1xuICAgIHBhZGRpbmctbGVmdDogMC41NzE0M3JlbTtcbiAgfVxufVxuXG4udGllck1pZGRsZVdpZGU6bGFzdC1jaGlsZDpub3QoOmZpcnN0LWNoaWxkKSB7XG4gIGZsb2F0OiByaWdodDtcbn1cblxuLnRpZXJNaWRkbGVNZWRpdW0ge1xuICB3aWR0aDogMTAwJTtcbiAgZmxvYXQ6IGxlZnQ7XG4gIHBhZGRpbmctcmlnaHQ6IDAuMzU3MTRyZW07XG4gIHBhZGRpbmctbGVmdDogMC4zNTcxNHJlbTtcbn1cblxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQ4ZW0pIHtcbiAgLnRpZXJNaWRkbGVNZWRpdW0ge1xuICAgIHBhZGRpbmctcmlnaHQ6IDAuNTcxNDNyZW07XG4gICAgcGFkZGluZy1sZWZ0OiAwLjU3MTQzcmVtO1xuICB9XG59XG5cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gIC50aWVyTWlkZGxlTWVkaXVtIHtcbiAgICBwYWRkaW5nLXJpZ2h0OiAwLjU3MTQzcmVtO1xuICAgIHBhZGRpbmctbGVmdDogMC41NzE0M3JlbTtcbiAgfVxufVxuXG4udGllck1pZGRsZU1lZGl1bTpsYXN0LWNoaWxkOm5vdCg6Zmlyc3QtY2hpbGQpIHtcbiAgZmxvYXQ6IHJpZ2h0O1xufVxuXG4udGllck1pZGRsZVNtYWxsIHtcbiAgd2lkdGg6IDEwMCU7XG4gIGZsb2F0OiBsZWZ0O1xuICBwYWRkaW5nLXJpZ2h0OiAwLjM1NzE0cmVtO1xuICBwYWRkaW5nLWxlZnQ6IDAuMzU3MTRyZW07XG59XG5cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0OGVtKSB7XG4gIC50aWVyTWlkZGxlU21hbGwge1xuICAgIHBhZGRpbmctcmlnaHQ6IDAuNTcxNDNyZW07XG4gICAgcGFkZGluZy1sZWZ0OiAwLjU3MTQzcmVtO1xuICB9XG59XG5cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gIC50aWVyTWlkZGxlU21hbGwge1xuICAgIHBhZGRpbmctcmlnaHQ6IDAuNTcxNDNyZW07XG4gICAgcGFkZGluZy1sZWZ0OiAwLjU3MTQzcmVtO1xuICB9XG59XG5cbi50aWVyTWlkZGxlU21hbGw6bGFzdC1jaGlsZDpub3QoOmZpcnN0LWNoaWxkKSB7XG4gIGZsb2F0OiByaWdodDtcbn1cblxuQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDhlbSkge1xuICAudGllck5hdlNlY3Rpb24ge1xuICAgIHdpZHRoOiAyNCU7XG4gICAgZmxvYXQ6IGxlZnQ7XG4gICAgcGFkZGluZy1yaWdodDogMC4zNTcxNHJlbTtcbiAgICBwYWRkaW5nLWxlZnQ6IDAuMzU3MTRyZW07XG4gICAgLyomLnRpZXJhbmRTaWRlIHtcbiAgICAgICAgICAgIEBpbmNsdWRlIGdyaWQtY29sLXBvcygtOS4xMik7XG4gICAgICAgIH1cblxuICAgICAgICAgJi50aWVyc09ubHkge1xuICAgICAgICAgICAgIEBpbmNsdWRlIGdyaWQtY29sLXBvcygtOS4xMik7XG4gICAgICAgIH0qL1xuICB9XG59XG5cbkBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQ4ZW0pIGFuZCAobWluLXdpZHRoOiA0OGVtKSB7XG4gIC50aWVyTmF2U2VjdGlvbiB7XG4gICAgcGFkZGluZy1yaWdodDogMC41NzE0M3JlbTtcbiAgICBwYWRkaW5nLWxlZnQ6IDAuNTcxNDNyZW07XG4gIH1cbn1cblxuQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDhlbSkgYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgLnRpZXJOYXZTZWN0aW9uIHtcbiAgICBwYWRkaW5nLXJpZ2h0OiAwLjU3MTQzcmVtO1xuICAgIHBhZGRpbmctbGVmdDogMC41NzE0M3JlbTtcbiAgfVxufVxuXG5AbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0OGVtKSB7XG4gIC50aWVyTmF2U2VjdGlvbjpsYXN0LWNoaWxkOm5vdCg6Zmlyc3QtY2hpbGQpIHtcbiAgICBmbG9hdDogcmlnaHQ7XG4gIH1cbiAgLnRpZXJNaWRkbGVXaWRlIHtcbiAgICB3aWR0aDogMTAwJTtcbiAgICBmbG9hdDogbGVmdDtcbiAgICBwYWRkaW5nLXJpZ2h0OiAwLjM1NzE0cmVtO1xuICAgIHBhZGRpbmctbGVmdDogMC4zNTcxNHJlbTtcbiAgfVxufVxuXG5AbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0OGVtKSBhbmQgKG1pbi13aWR0aDogNDhlbSkge1xuICAudGllck1pZGRsZVdpZGUge1xuICAgIHBhZGRpbmctcmlnaHQ6IDAuNTcxNDNyZW07XG4gICAgcGFkZGluZy1sZWZ0OiAwLjU3MTQzcmVtO1xuICB9XG59XG5cbkBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQ4ZW0pIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gIC50aWVyTWlkZGxlV2lkZSB7XG4gICAgcGFkZGluZy1yaWdodDogMC41NzE0M3JlbTtcbiAgICBwYWRkaW5nLWxlZnQ6IDAuNTcxNDNyZW07XG4gIH1cbn1cblxuQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDhlbSkge1xuICAudGllck1pZGRsZVdpZGU6bGFzdC1jaGlsZDpub3QoOmZpcnN0LWNoaWxkKSB7XG4gICAgZmxvYXQ6IHJpZ2h0O1xuICB9XG4gIC50aWVyTWlkZGxlTWVkaXVtIHtcbiAgICB3aWR0aDogNzYlO1xuICAgIGZsb2F0OiBsZWZ0O1xuICAgIHBhZGRpbmctcmlnaHQ6IDAuMzU3MTRyZW07XG4gICAgcGFkZGluZy1sZWZ0OiAwLjM1NzE0cmVtO1xuICAgIC8qQGluY2x1ZGUgZ3JpZC1jb2wtcG9zKDIuODgpOyovXG4gIH1cbn1cblxuQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDhlbSkgYW5kIChtaW4td2lkdGg6IDQ4ZW0pIHtcbiAgLnRpZXJNaWRkbGVNZWRpdW0ge1xuICAgIHBhZGRpbmctcmlnaHQ6IDAuNTcxNDNyZW07XG4gICAgcGFkZGluZy1sZWZ0OiAwLjU3MTQzcmVtO1xuICB9XG59XG5cbkBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQ4ZW0pIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gIC50aWVyTWlkZGxlTWVkaXVtIHtcbiAgICBwYWRkaW5nLXJpZ2h0OiAwLjU3MTQzcmVtO1xuICAgIHBhZGRpbmctbGVmdDogMC41NzE0M3JlbTtcbiAgfVxufVxuXG5AbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0OGVtKSB7XG4gIC50aWVyTWlkZGxlTWVkaXVtOmxhc3QtY2hpbGQ6bm90KDpmaXJzdC1jaGlsZCkge1xuICAgIGZsb2F0OiByaWdodDtcbiAgfVxuICAudGllck1pZGRsZVNtYWxsIHtcbiAgICB3aWR0aDogNzYlO1xuICAgIGZsb2F0OiBsZWZ0O1xuICAgIHBhZGRpbmctcmlnaHQ6IDAuMzU3MTRyZW07XG4gICAgcGFkZGluZy1sZWZ0OiAwLjM1NzE0cmVtO1xuICAgIC8qQGluY2x1ZGUgZ3JpZC1jb2wtcG9zKDIuODgpOyovXG4gIH1cbn1cblxuQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDhlbSkgYW5kIChtaW4td2lkdGg6IDQ4ZW0pIHtcbiAgLnRpZXJNaWRkbGVTbWFsbCB7XG4gICAgcGFkZGluZy1yaWdodDogMC41NzE0M3JlbTtcbiAgICBwYWRkaW5nLWxlZnQ6IDAuNTcxNDNyZW07XG4gIH1cbn1cblxuQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDhlbSkgYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgLnRpZXJNaWRkbGVTbWFsbCB7XG4gICAgcGFkZGluZy1yaWdodDogMC41NzE0M3JlbTtcbiAgICBwYWRkaW5nLWxlZnQ6IDAuNTcxNDNyZW07XG4gIH1cbn1cblxuQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDhlbSkge1xuICAudGllck1pZGRsZVNtYWxsOmxhc3QtY2hpbGQ6bm90KDpmaXJzdC1jaGlsZCkge1xuICAgIGZsb2F0OiByaWdodDtcbiAgfVxuICAudGllclJpZ2h0U2VjdGlvbiB7XG4gICAgZGlzcGxheTogbm9uZTtcbiAgfVxufVxuXG5AbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gIC50aWVyTmF2U2VjdGlvbiB7XG4gICAgd2lkdGg6IDI0JTtcbiAgICBmbG9hdDogbGVmdDtcbiAgICBwYWRkaW5nLXJpZ2h0OiAwLjM1NzE0cmVtO1xuICAgIHBhZGRpbmctbGVmdDogMC4zNTcxNHJlbTtcbiAgICAvKiYudGllcmFuZFNpZGUge1xuICAgICAgICAgICAgQGluY2x1ZGUgZ3JpZC1jb2wtcG9zKC02LjYpO1xuICAgICAgICB9XG5cbiAgICAgICAgICYudGllcnNPbmx5IHtcbiAgICAgICAgICAgICBAaW5jbHVkZSBncmlkLWNvbC1wb3MoLTkuMTIpO1xuICAgICAgICB9Ki9cbiAgfVxufVxuXG5AbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSBhbmQgKG1pbi13aWR0aDogNDhlbSkge1xuICAudGllck5hdlNlY3Rpb24ge1xuICAgIHBhZGRpbmctcmlnaHQ6IDAuNTcxNDNyZW07XG4gICAgcGFkZGluZy1sZWZ0OiAwLjU3MTQzcmVtO1xuICB9XG59XG5cbkBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gIC50aWVyTmF2U2VjdGlvbiB7XG4gICAgcGFkZGluZy1yaWdodDogMC41NzE0M3JlbTtcbiAgICBwYWRkaW5nLWxlZnQ6IDAuNTcxNDNyZW07XG4gIH1cbn1cblxuQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAudGllck5hdlNlY3Rpb246bGFzdC1jaGlsZDpub3QoOmZpcnN0LWNoaWxkKSB7XG4gICAgZmxvYXQ6IHJpZ2h0O1xuICB9XG4gIC50aWVyTWlkZGxlV2lkZSB7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgZmxvYXQ6IGxlZnQ7XG4gICAgcGFkZGluZy1yaWdodDogMC4zNTcxNHJlbTtcbiAgICBwYWRkaW5nLWxlZnQ6IDAuMzU3MTRyZW07XG4gIH1cbn1cblxuQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkgYW5kIChtaW4td2lkdGg6IDQ4ZW0pIHtcbiAgLnRpZXJNaWRkbGVXaWRlIHtcbiAgICBwYWRkaW5nLXJpZ2h0OiAwLjU3MTQzcmVtO1xuICAgIHBhZGRpbmctbGVmdDogMC41NzE0M3JlbTtcbiAgfVxufVxuXG5AbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAudGllck1pZGRsZVdpZGUge1xuICAgIHBhZGRpbmctcmlnaHQ6IDAuNTcxNDNyZW07XG4gICAgcGFkZGluZy1sZWZ0OiAwLjU3MTQzcmVtO1xuICB9XG59XG5cbkBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgLnRpZXJNaWRkbGVXaWRlOmxhc3QtY2hpbGQ6bm90KDpmaXJzdC1jaGlsZCkge1xuICAgIGZsb2F0OiByaWdodDtcbiAgfVxuICAudGllck1pZGRsZU1lZGl1bSB7XG4gICAgd2lkdGg6IDc2JTtcbiAgICBmbG9hdDogbGVmdDtcbiAgICBwYWRkaW5nLXJpZ2h0OiAwLjM1NzE0cmVtO1xuICAgIHBhZGRpbmctbGVmdDogMC4zNTcxNHJlbTtcbiAgICAvKkBpbmNsdWRlIGdyaWQtY29sLXBvcygyLjg4KTsqL1xuICB9XG59XG5cbkBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIGFuZCAobWluLXdpZHRoOiA0OGVtKSB7XG4gIC50aWVyTWlkZGxlTWVkaXVtIHtcbiAgICBwYWRkaW5nLXJpZ2h0OiAwLjU3MTQzcmVtO1xuICAgIHBhZGRpbmctbGVmdDogMC41NzE0M3JlbTtcbiAgfVxufVxuXG5AbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAudGllck1pZGRsZU1lZGl1bSB7XG4gICAgcGFkZGluZy1yaWdodDogMC41NzE0M3JlbTtcbiAgICBwYWRkaW5nLWxlZnQ6IDAuNTcxNDNyZW07XG4gIH1cbn1cblxuQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAudGllck1pZGRsZU1lZGl1bTpsYXN0LWNoaWxkOm5vdCg6Zmlyc3QtY2hpbGQpIHtcbiAgICBmbG9hdDogcmlnaHQ7XG4gIH1cbiAgLnRpZXJNaWRkbGVTbWFsbCB7XG4gICAgd2lkdGg6IDU1JTtcbiAgICBmbG9hdDogbGVmdDtcbiAgICBwYWRkaW5nLXJpZ2h0OiAwLjM1NzE0cmVtO1xuICAgIHBhZGRpbmctbGVmdDogMC4zNTcxNHJlbTtcbiAgICAvKkBpbmNsdWRlIGdyaWQtY29sLXBvcygyLjg4KTsqL1xuICB9XG59XG5cbkBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIGFuZCAobWluLXdpZHRoOiA0OGVtKSB7XG4gIC50aWVyTWlkZGxlU21hbGwge1xuICAgIHBhZGRpbmctcmlnaHQ6IDAuNTcxNDNyZW07XG4gICAgcGFkZGluZy1sZWZ0OiAwLjU3MTQzcmVtO1xuICB9XG59XG5cbkBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gIC50aWVyTWlkZGxlU21hbGwge1xuICAgIHBhZGRpbmctcmlnaHQ6IDAuNTcxNDNyZW07XG4gICAgcGFkZGluZy1sZWZ0OiAwLjU3MTQzcmVtO1xuICB9XG59XG5cbkBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgLnRpZXJNaWRkbGVTbWFsbDpsYXN0LWNoaWxkOm5vdCg6Zmlyc3QtY2hpbGQpIHtcbiAgICBmbG9hdDogcmlnaHQ7XG4gIH1cbiAgLnRpZXJSaWdodFNlY3Rpb24ge1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIHdpZHRoOiAyMSU7XG4gICAgZmxvYXQ6IGxlZnQ7XG4gICAgcGFkZGluZy1yaWdodDogMC4zNTcxNHJlbTtcbiAgICBwYWRkaW5nLWxlZnQ6IDAuMzU3MTRyZW07XG4gIH1cbn1cblxuQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkgYW5kIChtaW4td2lkdGg6IDQ4ZW0pIHtcbiAgLnRpZXJSaWdodFNlY3Rpb24ge1xuICAgIHBhZGRpbmctcmlnaHQ6IDAuNTcxNDNyZW07XG4gICAgcGFkZGluZy1sZWZ0OiAwLjU3MTQzcmVtO1xuICB9XG59XG5cbkBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gIC50aWVyUmlnaHRTZWN0aW9uIHtcbiAgICBwYWRkaW5nLXJpZ2h0OiAwLjU3MTQzcmVtO1xuICAgIHBhZGRpbmctbGVmdDogMC41NzE0M3JlbTtcbiAgfVxufVxuXG5AbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gIC50aWVyUmlnaHRTZWN0aW9uOmxhc3QtY2hpbGQ6bm90KDpmaXJzdC1jaGlsZCkge1xuICAgIGZsb2F0OiByaWdodDtcbiAgfVxufVxuXG51bC50aWVycGFnZU5hdiB7XG4gIGxpc3Qtc3R5bGU6IG5vbmU7XG4gIG1hcmdpbi1sZWZ0OiAwcHg7XG4gIHBhZGRpbmctbGVmdDogMC4yODU3MXJlbTtcbn1cblxudWwudGllcnBhZ2VOYXYgbGkge1xuICBtYXJnaW46IDAuMzU3MTRyZW0gMDtcbiAgcGFkZGluZzogMC4zNTcxNHJlbSAwO1xuICBib3JkZXItYm90dG9tOiAxcHggc29saWQgI2U4ZTVlNTtcbn1cblxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQ4ZW0pIHtcbiAgdWwudGllcnBhZ2VOYXYgbGkge1xuICAgIG1hcmdpbjogMDtcbiAgICBwYWRkaW5nOiAwLjNyZW0gMDtcbiAgfVxufVxuXG51bC50aWVycGFnZU5hdiBsaTpsYXN0LWNoaWxkIHtcbiAgYm9yZGVyLWJvdHRvbTogbm9uZTtcbn1cblxudWwudGllcnBhZ2VOYXYgbGkgYSB7XG4gIGNvbG9yOiBibGFjaztcbiAgZm9udC1zaXplOiAxLjE0Mjg2cmVtO1xufVxuXG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDhlbSkge1xuICB1bC50aWVycGFnZU5hdiBsaSBhIHtcbiAgICBmb250LXNpemU6IDEuMDVyZW07XG4gIH1cbn1cblxudWwudGllcnBhZ2VOYXYgbGkgYTpob3ZlciB7XG4gIHRleHQtZGVjb3JhdGlvbjogdW5kZXJsaW5lO1xufVxuXG4uYnJhbmRTZWN0aW9uIHtcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xufVxuXG4uYnJhbmRTZWN0aW9uIGgyIHtcbiAgdGV4dC1hbGlnbjogbGVmdDtcbn1cblxuLmJyYW5kU2VjdGlvbiBhIHtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICBwYWRkaW5nOiAwcHggMjBweCA1cHggMjBweDtcbn1cblxuLmJyYW5kU2VjdGlvbiBhIGltZyB7XG4gIHBhZGRpbmctYm90dG9tOiAycHg7XG4gIHdpZHRoOiAxMDBweDtcbiAgaW1hZ2UtcmVuZGVyaW5nOiAtbW96LWNyaXNwLWVkZ2VzO1xuICBpbWFnZS1yZW5kZXJpbmc6IC1vLWNyaXNwLWVkZ2VzO1xuICBpbWFnZS1yZW5kZXJpbmc6IC13ZWJraXQtb3B0aW1pemUtY29udHJhc3Q7XG4gIGltYWdlLXJlbmRlcmluZzogb3B0aW1pemUtY29udHJhc3Q7XG59XG5cbi5icmFuZFNlY3Rpb24gYSBoMyB7XG4gIGNvbG9yOiAjNzk3OTZBO1xuICBmb250LXdlaWdodDogbm9ybWFsO1xufVxuXG4uYnJhbmRTZWN0aW9uIGE6aG92ZXIgaDMge1xuICBjb2xvcjogIzBhMGEwYTtcbn1cblxuYS50b3BCcmFuZHNWaWV3QWxsIHtcbiAgcGFkZGluZy10b3A6IDAuNzE0MjlyZW07XG4gIHRleHQtYWxpZ246IHJpZ2h0O1xuICBkaXNwbGF5OiBibG9jaztcbiAgY29sb3I6ICM3OTc5NkE7XG59XG5cbmEudG9wQnJhbmRzVmlld0FsbDpob3ZlciB7XG4gIGNvbG9yOiBibGFjaztcbn1cblxuLnRpZXJBZHZlcnRzIC5jb2x1bW4gaW1nLCAudGllckFkdmVydHMgLmNvbHVtbnMgaW1nIHtcbiAgbWFyZ2luLWJvdHRvbTogMC43MTQyOXJlbTtcbiAgaW1hZ2UtcmVuZGVyaW5nOiAtbW96LWNyaXNwLWVkZ2VzO1xuICAvKiBGaXJlZm94ICovXG4gIGltYWdlLXJlbmRlcmluZzogLW8tY3Jpc3AtZWRnZXM7XG4gIC8qIE9wZXJhICovXG4gIGltYWdlLXJlbmRlcmluZzogLXdlYmtpdC1vcHRpbWl6ZS1jb250cmFzdDtcbiAgLyogV2Via2l0IChub24tc3RhbmRhcmQgbmFtaW5nKSAqL1xuICBpbWFnZS1yZW5kZXJpbmc6IGNyaXNwLWVkZ2VzO1xuICAtbXMtaW50ZXJwb2xhdGlvbi1tb2RlOiBuZWFyZXN0LW5laWdoYm9yO1xuICAvKiBJRSAobm9uLXN0YW5kYXJkIHByb3BlcnR5KSAqL1xufVxuXG4udGllckFkdmVydHMgLmNvbHVtbiBhLCAudGllckFkdmVydHMgLmNvbHVtbnMgYSB7XG4gIGNvbG9yOiAjMGEwYTBhO1xufVxuXG4ubW9kdWxlVmlldyAubW9kdWxlQmxvY2sge1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gIHBhZGRpbmc6IDAuNzE0MjlyZW07XG59XG5cbi5tb2R1bGVWaWV3IC5tb2R1bGVCbG9jayBhIHtcbiAgY29sb3I6IGJsYWNrO1xuICBkaXNwbGF5OiBibG9jaztcbiAgbGluZS1oZWlnaHQ6IDEuMjg1NzFyZW07XG59XG5cbi5tb2R1bGVWaWV3IC5tb2R1bGVCbG9jayBhIGltZyB7XG4gIHdpZHRoOiA1MCU7XG4gIHBhZGRpbmctYm90dG9tOiA1cHg7XG4gIG1hcmdpbjogMCBhdXRvO1xuICBkaXNwbGF5OiBibG9jaztcbn1cblxuLm1vZHVsZVZpZXcgLm1vZHVsZUJsb2NrIGE6aG92ZXIge1xuICBjb2xvcjogYmxhY2s7XG4gIHRleHQtZGVjb3JhdGlvbjogdW5kZXJsaW5lO1xufVxuXG4ubW9kdWxlVmlldyAubW9kdWxlQmxvY2sgYTpob3ZlciBpbWcge1xuICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG59XG5cbi5wYXJhbWV0cmljU2VhcmNoQnV0dG9uIHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICByaWdodDogMTBweDtcbn1cblxuQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogNDcuOTM3NWVtKSB7XG4gIC5wYXJhbWV0cmljU2VhcmNoQnV0dG9uIHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgIGZsb2F0OiByaWdodDtcbiAgfVxuICAucGFyYW1ldHJpY1NlYXJjaEJ1dHRvbjphZnRlciB7XG4gICAgY2xlYXI6IGJvdGg7XG4gIH1cbn1cblxuLmJ1dHRvbi5ob2xsb3cubGlnaHRlckdyYXkge1xuICBib3JkZXI6IDFweCBzb2xpZCAjYmRjM2M3O1xuICBjb2xvcjogI2JkYzNjNztcbn1cblxuLmJ1dHRvbi5saWdodGVyR3JheSB7XG4gIGJhY2tncm91bmQtY29sb3I6ICNiZGMzYzc7XG4gIGNvbG9yOiAjZmVmZWZlO1xufVxuXG4uYnV0dG9uLmxpZ2h0ZXJHcmF5OmZvY3VzIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogIzMxMzEzMTtcbiAgY29sb3I6ICNmZWZlZmU7XG59XG5cbi5idXR0b24ubGlnaHRlckdyYXk6aG92ZXIge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjMzEzMTMxO1xuICBjb2xvcjogI2ZlZmVmZTtcbn1cblxuLmJ1dHRvbi5ob2xsb3cubGlnaHRlckdyYXkge1xuICBib3JkZXI6IDFweCBzb2xpZCAjYmRjM2M3O1xuICBjb2xvcjogI2JkYzNjNztcbiAgYmFja2dyb3VuZDogbm9uZTtcbn1cblxuLmJ1dHRvbi5ob2xsb3cubGlnaHRlckdyYXk6Zm9jdXMge1xuICBib3JkZXItY29sb3I6ICMzMTMxMzE7XG4gIGNvbG9yOiAjMzEzMTMxO1xufVxuXG4uYnV0dG9uLmhvbGxvdy5saWdodGVyR3JheTpob3ZlciB7XG4gIGJvcmRlci1jb2xvcjogIzMxMzEzMTtcbiAgY29sb3I6ICMzMTMxMzE7XG59XG5cbi5xdWlja1Rhc2tGaWx0ZXJzIHtcbiAgbGlzdC1zdHlsZTogbm9uZTtcbiAgbWFyZ2luLWxlZnQ6IDA7XG59XG5cbi5xdWlja1Rhc2tGaWx0ZXJzIGxhYmVsLCAucXVpY2tUYXNrRmlsdGVycyBhIHtcbiAgY29sb3I6ICMzYzNjM2M7XG4gIC8qZm9udC13ZWlnaHQ6Ym9sZDsqL1xuICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuICBmb250LXNpemU6IDEuMXJlbTtcbn1cblxuLnF1aWNrVGFza0ZpbHRlcnMgbGkge1xuICBmb250LXNpemU6IDEuMDcxNDNyZW07XG4gIHBhZGRpbmc6IDAuNzg1NzFyZW0gMC4xNDI4NnJlbTtcbiAgY3Vyc29yOiBwb2ludGVyO1xufVxuXG4ucXVpY2tUYXNrRmlsdGVycyBsaS50YXNrRmlsdGVyRGl2aWRlciB7XG4gIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCAjZThlNWU1O1xuICBsaW5lLWhlaWdodDogMHB4O1xuICBwYWRkaW5nOiAwcHg7XG59XG5cbi5xdWlja1Rhc2tGaWx0ZXJzIGxpLnRhc2tGaWx0ZXJEaXZpZGVyOmhvdmVyIHtcbiAgYmFja2dyb3VuZDogbm9uZTtcbn1cblxuLnF1aWNrVGFza0ZpbHRlcnMgbGkgc2VsZWN0IHtcbiAgYm9yZGVyOiBub25lO1xufVxuXG4ucXVpY2tUYXNrRmlsdGVycyBsaSBzZWxlY3Q6Zm9jdXMge1xuICBib3JkZXI6IG5vbmU7XG4gIGJveC1zaGFkb3c6IG5vbmU7XG59XG5cbi5xdWlja1Rhc2tGaWx0ZXJzIGxpIGkge1xuICBmb250LXNpemU6IDIwcHggIWltcG9ydGFudDtcbiAgcGFkZGluZy1yaWdodDogNXB4O1xufVxuXG4ucXVpY2tUYXNrRmlsdGVycyBsaSBzcGFuIHtcbiAgY29sb3I6ICMzYzNjM2M7XG4gIGZvbnQtc2l6ZTogMC43ODU3MXJlbTtcbn1cblxuLnF1aWNrVGFza0ZpbHRlcnMgbGkgc2VsZWN0IHtcbiAgbWFyZ2luLXRvcDogMC44NTcxNHJlbTtcbn1cblxuLnRhc2tGaWx0ZXJzQ29sIHtcbiAgLypAaW5jbHVkZSBncmlkLWNvbHVtbjsqL1xuICAvKmJhY2tncm91bmQ6I0Y5RkFGRSAhaW1wb3J0YW50OyovXG4gIGJhY2tncm91bmQ6ICNFRkVGRjQgIWltcG9ydGFudDtcbiAgLypAaW5jbHVkZSBicmVha3BvaW50KGxhcmdlKSB7XG4gICAgICAgIEBpbmNsdWRlIGdyaWQtY29sdW1uKDIgb2YgMTIpO1xuICAgICAgICAvL3RvIG1hdGNoIGhlaWdodCBvZiBwYXJlbnQgLSBvbmx5IHdvcmtzIGFzIHBhZ2UgaXMgMiBjb2x1bW5zIHNvIHJpZ2h0IGNvbCBpcyBmbG9hdGVkIHJpZ2h0LlxuICAgICAgICBoZWlnaHQ6MTAwJSAgIWltcG9ydGFudDtcbiAgICAgICAgcG9zaXRpb246YWJzb2x1dGUgIWltcG9ydGFudDtcbiAgICAgICAgYm9yZGVyLXJpZ2h0OjFweCBzb2xpZCAkbGlnaHQtZ3JheTtcbiAgICAgfSovXG59XG5cbkBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDYzLjkzNzVlbSkge1xuICAudGFza0ZpbHRlcnNDb2wub2ZmLWNhbnZhcy5pbi1jYW52YXMtZm9yLWxhcmdlIHtcbiAgICB6LWluZGV4OiA5OTk5OTkgIWltcG9ydGFudDtcbiAgICBwYWRkaW5nOiAwLjM1NzE0cmVtO1xuICB9XG59XG5cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gIC50YXNrRmlsdGVyc0NvbC5vZmYtY2FudmFzLmluLWNhbnZhcy1mb3ItbGFyZ2Uge1xuICAgIHdpZHRoOiAxNi42NjY2NyU7XG4gICAgZmxvYXQ6IGxlZnQ7XG4gICAgcGFkZGluZy1yaWdodDogMC4zNTcxNHJlbTtcbiAgICBwYWRkaW5nLWxlZnQ6IDAuMzU3MTRyZW07XG4gICAgaGVpZ2h0OiAxMDAlICAhaW1wb3J0YW50O1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZSAhaW1wb3J0YW50O1xuICAgIGJvcmRlci1yaWdodDogMXB4IHNvbGlkICNlOGU1ZTU7XG4gIH1cbn1cblxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIGFuZCAobWluLXdpZHRoOiA0OGVtKSB7XG4gIC50YXNrRmlsdGVyc0NvbC5vZmYtY2FudmFzLmluLWNhbnZhcy1mb3ItbGFyZ2Uge1xuICAgIHBhZGRpbmctcmlnaHQ6IDAuNTcxNDNyZW07XG4gICAgcGFkZGluZy1sZWZ0OiAwLjU3MTQzcmVtO1xuICB9XG59XG5cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAudGFza0ZpbHRlcnNDb2wub2ZmLWNhbnZhcy5pbi1jYW52YXMtZm9yLWxhcmdlIHtcbiAgICBwYWRkaW5nLXJpZ2h0OiAwLjU3MTQzcmVtO1xuICAgIHBhZGRpbmctbGVmdDogMC41NzE0M3JlbTtcbiAgfVxufVxuXG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAudGFza0ZpbHRlcnNDb2wub2ZmLWNhbnZhcy5pbi1jYW52YXMtZm9yLWxhcmdlOmxhc3QtY2hpbGQ6bm90KDpmaXJzdC1jaGlsZCkge1xuICAgIGZsb2F0OiByaWdodDtcbiAgfVxufVxuXG4udGFza1N3aXRjaCB7XG4gIHBhZGRpbmc6IDNweCAwcHg7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG59XG5cbi50YXNrU3dpdGNoOmhvdmVyIHtcbiAgY29sb3I6ICNmZWZlZmU7XG4gIGJhY2tncm91bmQ6ICNiZGMzYzc7XG59XG5cbi50YXNrUGFnZUNvbnQgc3Bhbi5sYWJlbCB7XG4gIGJvcmRlci1yYWRpdXM6IDAuNzE0MjlyZW07XG4gIG1hcmdpbjogMi41cHggNXB4IDIuNXB4O1xufVxuXG4udGFza1BhZ2VDb250IHNwYW4ubGFiZWwgLnNlY29uZGFyeSB7XG4gIGJhY2tncm91bmQ6ICNBMUFBQjI7XG59XG5cbi50YXNrUm93IHtcbiAgbWF4LWhlaWdodDogMjAwcHg7XG4gIG92ZXJmbG93OiBoaWRkZW47XG4gIC13ZWJraXQtdHJhbnNpdGlvbjogbWF4LWhlaWdodCAxLjJzO1xuICAtbW96LXRyYW5zaXRpb246IG1heC1oZWlnaHQgMS4ycztcbiAgdHJhbnNpdGlvbjogbWF4LWhlaWdodCAxLjJzO1xufVxuXG4udGFza1Jvdy5vcGVuIHtcbiAgbWF4LWhlaWdodDogMTQ1MHB4O1xuICBvdmVyZmxvdzogdmlzaWJsZTtcbn1cblxuLnJlc3VsdHNDb3VudCB7XG4gIG1hcmdpbjogN3B4IDBweDtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xufVxuXG5oMS50YXNrUGFnZVRpdGxlIHtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICBtYXJnaW46IDAuNTcxNDNyZW0gMCAwIDA7XG4gIGNvbG9yOiAjM2MzYzNjO1xuICBmb250LXNpemU6IDEuMzVyZW07XG59XG5cbi50YXNrRGV0YWlscyB7XG4gIGJhY2tncm91bmQ6ICNGOUY5Rjk7XG4gIHBhZGRpbmc6IDAuNXJlbTtcbiAgLXdlYmtpdC10cmFuc2l0aW9uOiBhbGwgMC41cyBlYXNlLWluLW91dDtcbiAgLW1vei10cmFuc2l0aW9uOiBhbGwgMC41cyBlYXNlLWluLW91dDtcbiAgLW1zLXRyYW5zaXRpb246IGFsbCAwLjVzIGVhc2UtaW4tb3V0O1xuICB0cmFuc2l0aW9uOiBhbGwgMC41cyBlYXNlLWluLW91dDtcbn1cblxuLnRhc2tEZXRhaWxzIGxhYmVsIHtcbiAgZm9udC1zaXplOiAxLjA3MTQzcmVtO1xuICBjb2xvcjogIzc5Nzk2QTtcbn1cblxuLnRhc2tEZXRhaWxzIGxhYmVsIHNwYW4ge1xuICBjb2xvcjogIzc5Nzk2QTtcbiAgZm9udC1zaXplOiAwLjc4NTcxcmVtO1xufVxuXG4uc2hvdy1xdWlja1Rhc2tGaWx0ZXJzIHtcbiAgZGlzcGxheTogYmxvY2sgIWltcG9ydGFudDtcbn1cblxuLnRhc2tIZWFkZXJCYXIge1xuICBtaW4taGVpZ2h0OiAzLjY0Mjg2cmVtO1xuICBiYWNrZ3JvdW5kOiAjZmZmZmYyO1xuICBib3JkZXItYm90dG9tOiAxcHggc29saWQgI2U4ZTVlNTtcbiAgLypib3gtc2hhZG93OiAwIDFweCAzcHggcmdiYSgwLDAsMCwwLjEyKSwgMCAxcHggMnB4IHJnYmEoMCwwLDAsMC4yNCk7Ki9cbiAgcGFkZGluZzogMC40Mjg1N3JlbSAwO1xufVxuXG4udGFza0hlYWRlckJhci5yb3cuZXhwYW5kZWQge1xuICBtYXJnaW4tcmlnaHQ6IC0uNTcxNDNyZW07XG4gIG1hcmdpbi1sZWZ0OiAtLjU3MTQzcmVtO1xufVxuXG4udGFza0hlYWRlckJhciAuYnV0dG9uIHtcbiAgbWFyZ2luOiAwLjI1cmVtIDAuMjVyZW0gMC4yNXJlbTtcbiAgcGFkZGluZzogLjU1ZW0gLjc1ZW07XG59XG5cbi50YXNrUGFnZUNvbnQge1xuICBvdmVyZmxvdzogaGlkZGVuO1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIG1hcmdpbi1ib3R0b206IC0xLjU3MTQzcmVtO1xuICBwYWRkaW5nLWJvdHRvbTogMC43MTQyOXJlbTtcbiAgbWluLWhlaWdodDogMzUuMzU3MTRyZW07XG4gIC8qYmFja2dyb3VuZDojRjVGNUY2OyovXG4gIGJhY2tncm91bmQ6ICNGQUZBRkE7XG59XG5cbi50YXNrc0NvbnRhaW5lciB7XG4gIC8qYm9yZGVyOjFweCBzb2xpZCAkbGlnaHQtZ3JheTsqL1xuICBtYXJnaW4tdG9wOiAwLjcxNDI5cmVtO1xuICBtYXgtd2lkdGg6IDgyLjE0Mjg2cmVtO1xuICBwYWRkaW5nOiAwLjQyODU3cmVtO1xuICBiYWNrZ3JvdW5kOiB3aGl0ZTtcbiAgYm94LXNoYWRvdzogMCAxcHggM3B4IHJnYmEoMCwgMCwgMCwgMC4xMiksIDAgMXB4IDJweCByZ2JhKDAsIDAsIDAsIDAuMjQpO1xufVxuXG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDhlbSkge1xuICAudGFza3NDb250YWluZXIge1xuICAgIG1hcmdpbi1sZWZ0OiAwLjc4NTcxcmVtO1xuICAgIG1hcmdpbi1yaWdodDogMC43ODU3MXJlbTtcbiAgfVxufVxuXG4udGFza1JvdyB7XG4gIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCAjZThlNWU1O1xufVxuXG4udGFza1JvdzpsYXN0LWNoaWxkIHtcbiAgYm9yZGVyLWJvdHRvbTogbm9uZTtcbiAgcGFkZGluZy1ib3R0b206IDA7XG59XG5cbi50YXNrUm93OmhvdmVyIHtcbiAgYmFja2dyb3VuZDogI2U4ZTVlNTtcbn1cblxuLnRhc2tSb3cgLm5vbkVkaXRhYmxlIHtcbiAgbWFyZ2luOiA1cHg7XG4gIGN1cnNvcjogcG9pbnRlcjtcbn1cblxuQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogNDcuOTM3NWVtKSB7XG4gIC50YXNrUm93IC5ub25FZGl0YWJsZSBzcGFuIHtcbiAgICBwYWRkaW5nLXRvcDogMC4yMTQyOXJlbTtcbiAgICBwYWRkaW5nLWJvdHRvbTogMC4yMTQyOXJlbTtcbiAgfVxufVxuXG4udGFza1JvdyAubm9uRWRpdGFibGUgLmZhLXN0YXIge1xuICBjb2xvcjogI2U4MTIxMjtcbn1cblxuLnRhc2tSb3cgLm5vbkVkaXRhYmxlIC5ob2xsb3ctc3FhdXJlLW5vdGlmaWNhdGlvbiB7XG4gIGJvcmRlcjogMXB4IHNvbGlkICMzMTMxMzE7XG4gIGNvbG9yOiAjMzEzMTMxO1xuICBtYXJnaW46IDA7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgYm9yZGVyLXJhZGl1czogLjE4cmVtO1xuICBwYWRkaW5nOiAwIC41NWVtO1xuICBmb250LXdlaWdodDogYm9sZDtcbiAgZmxvYXQ6IHJpZ2h0O1xufVxuXG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDhlbSkge1xuICAudGFza1JvdyAubm9uRWRpdGFibGUge1xuICAgIGxpbmUtaGVpZ2h0OiAyLjIxNDI5cmVtO1xuICB9XG59XG5cbi50YXNrUm93IC5ub25FZGl0YWJsZSBoMiB7XG4gIGZvbnQtd2VpZ2h0OiBub3JtYWw7XG4gIHBhZGRpbmc6IDAuNXJlbSAwO1xuICBtYXJnaW46IDA7XG4gIGNvbG9yOiAjM2MzYzNjO1xufVxuXG4udGFza1JvdyAubm9uRWRpdGFibGUgLmVkaXRCdG4ge1xuICBkaXNwbGF5OiBub25lO1xuICBtaW4td2lkdGg6IDVyZW07XG4gIGJvcmRlcjogMXB4IHNvbGlkICNlOGU1ZTU7XG4gIGJvcmRlci1yYWRpdXM6IDNweDtcbiAgYmFja2dyb3VuZDogI2ZlZmVmZTtcbn1cblxuQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogNDcuOTM3NWVtKSB7XG4gIC50YXNrUm93IC5ub25FZGl0YWJsZSAuZWRpdEJ0biB7XG4gICAgbWFyZ2luOiAwLjcxNDI5cmVtIGF1dG87XG4gICAgZmxvYXQ6IHJpZ2h0O1xuICB9XG59XG5cbi50YXNrUm93IC5ub25FZGl0YWJsZSAuZWRpdEJ0biAuYnRuSWNvbiB7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgYmFja2dyb3VuZDogI0Y5QTUxOTtcbn1cblxuLnRhc2tSb3cgLm5vbkVkaXRhYmxlIC5lZGl0QnRuIC5idG5JY29uIGkge1xuICBwYWRkaW5nOiAwLjM1NzE0cmVtO1xuICBmb250LXNpemU6IDEuMjg1NzFyZW07XG59XG5cbi50YXNrUm93IC5ub25FZGl0YWJsZSAuZWRpdEJ0biAuYnRuVGV4dCB7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgcGFkZGluZzogMCAwLjQyODU3cmVtO1xufVxuXG4udGFza1JvdyAubm9uRWRpdGFibGU6aG92ZXIgLmVkaXRCdG4ge1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIGN1cnNvcjogcG9pbnRlcjtcbn1cblxuLnRhYnNBcmVhIC50YWJzLWNvbnRlbnQge1xuICBiYWNrZ3JvdW5kOiBub25lO1xuICBib3JkZXI6IG5vbmU7XG59XG5cbi50YWJzQXJlYSAudGFicy1jb250ZW50IC50YWJzLXBhbmVsIHtcbiAgcGFkZGluZzogMHB4O1xuICBvdmVyZmxvdzogdmlzaWJsZTtcbn1cblxuLnRhYnNBcmVhIC50YWJzIHtcbiAgYm9yZGVyOiBub25lO1xuICBib3JkZXItYm90dG9tOiAxcHggc29saWQgI2U4ZTVlNTtcbiAgbWFyZ2luLWJvdHRvbTogMC43MTQyOXJlbTtcbiAgYmFja2dyb3VuZDogbm9uZTtcbn1cblxuLnRhYnNBcmVhIC50YWJzIC50YWJzLXRpdGxlIHtcbiAgd2lkdGg6IDMxJTtcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xuICBwYWRkaW5nLWJvdHRvbTogNHB4O1xuICBtYXJnaW4tcmlnaHQ6IDNweDtcbiAgYmFja2dyb3VuZDogI2Y4ZjlmYTtcbn1cblxuLnRhYnNBcmVhIC50YWJzIC50YWJzLXRpdGxlOmhvdmVyIHtcbiAgcGFkZGluZy1ib3R0b206IDBweDtcbiAgYm9yZGVyLWJvdHRvbTogNHB4IHNvbGlkICNlOGU1ZTU7XG59XG5cbi50YWJzQXJlYSAudGFicyAudGFicy10aXRsZSBhIHtcbiAgcGFkZGluZzogMC41NzE0M3JlbTtcbn1cblxuLnRhYnNBcmVhIC50YWJzIC50YWJzLXRpdGxlIGE6Zm9jdXMge1xuICBiYWNrZ3JvdW5kOiBub25lO1xufVxuXG4udGFic0FyZWEgLnRhYnMgLnRhYnMtdGl0bGUgYTpob3ZlciB7XG4gIGJhY2tncm91bmQ6IG5vbmU7XG59XG5cbi50YWJzQXJlYSAudGFicyAudGFicy10aXRsZSBhIGxhYmVsIHtcbiAgZm9udC1zaXplOiAxLjE0Mjg2cmVtO1xuICBjdXJzb3I6IHBvaW50ZXI7XG4gIGZvbnQtd2VpZ2h0OiBub3JtYWw7XG59XG5cbi50YWJzQXJlYSAudGFicyAudGFicy10aXRsZS5pcy1hY3RpdmUge1xuICBwYWRkaW5nLWJvdHRvbTogMHB4O1xuICBib3JkZXItYm90dG9tOiA0cHggc29saWQgI0Y5QTUxOTtcbiAgYmFja2dyb3VuZDogI2Y1ZjdmODtcbn1cblxuLnRhYnNBcmVhIC50YWJzIC50YWJzLXRpdGxlLmlzLWFjdGl2ZSBhIGxhYmVsIHtcbiAgZm9udC13ZWlnaHQ6IGJvbGQ7XG59XG5cbi50b2RvQ29udGFpbmVyLCAudGFza05vdGVzQ29udGFpbmVyIHtcbiAgYmFja2dyb3VuZDogI2ZlZmVmZTtcbiAgcGFkZGluZzogMCAwLjcxNDI5cmVtO1xuICBvdmVyZmxvdy15OiBhdXRvO1xuICBib3JkZXI6IDFweCBzb2xpZCAjZThlNWU1O1xuICBib3JkZXItcmFkaXVzOiA0cHg7XG4gIGhlaWdodDogMjIuNXJlbTtcbiAgbWFyZ2luLWJvdHRvbTogMC43MTQyOXJlbTtcbn1cblxuLnRvZG9Db250YWluZXIgLmZhLXN0YXIge1xuICBjb2xvcjogI2U4MTIxMjtcbn1cblxuLnF1aWxsLW91dGVyIC5xbC10b29sdGlwLCAucXVpbGwtb3V0ZXIgLnFsLWNsaXBib2FyZCB7XG4gIHotaW5kZXg6IDk5OTk5OTtcbn1cblxuLnF1aWxsLW91dGVyIC5xdWlsbC1lZGl0b3Ige1xuICBiYWNrZ3JvdW5kOiAjZmVmZWZlO1xufVxuXG4ucXVpbGwtb3V0ZXIgLnF1aWxsLWVkaXRvciAucWwtdG9vbGJhci5xbC1zbm93LCAucXVpbGwtb3V0ZXIgLnF1aWxsLWVkaXRvciAucWwtY29udGFpbmVyLnFsLXNub3cge1xuICBib3JkZXI6IDFweCBzb2xpZCAjZThlNWU1O1xufVxuXG4ucXVpbGwtb3V0ZXIgYnV0dG9uIHtcbiAgbWFyZ2luOiAxMHB4IDBweCAwcHggMHB4O1xufVxuXG4ucXVpbGwtb3V0ZXIgLnFsLWNvbnRhaW5lciB7XG4gIGhlaWdodDogMTUuNzE0MjlyZW07XG59XG5cbi50b2RvUm93IHtcbiAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkICNlOGU1ZTU7XG4gIGN1cnNvcjogcG9pbnRlcjtcbiAgcGFkZGluZzogMC4zNTcxNHJlbSAwO1xufVxuXG4udG9kb1JvdyAubGFiZWwge1xuICBsaW5lLWhlaWdodDogMS4zcmVtO1xufVxuXG4udG9kb1JvdyBwIHtcbiAgbWFyZ2luLWJvdHRvbTogMC4xNDI4NnJlbTtcbn1cblxuLnRvZG9Sb3c6aG92ZXIge1xuICBiYWNrZ3JvdW5kOiAjZThlNWU1O1xufVxuXG4ubm90ZVJvdyB7XG4gIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCAjZThlNWU1O1xufVxuXG4ubm90ZVJvdyBwIHtcbiAgbWFyZ2luLWJvdHRvbTogLTAuMTQyODZyZW07XG4gIG1hcmdpbi10b3A6IDAuMjE0MjlyZW07XG59XG5cbi5ub3RlUm93IC5ub3RlRGF0ZSB7XG4gIGNvbG9yOiAjNzk3OTZBO1xuICBmb250LXNpemU6IDAuODU3MTRyZW07XG59XG5cbi50YXNrU2F2ZSB7XG4gIGZsb2F0OiByaWdodDtcbiAgbWFyZ2luLWJvdHRvbTogMC4zNTcxNHJlbTtcbn1cblxuLyp0b2RvIG1lbnUgdHJhbnNpdGlvbiovXG4ucGFuZWwtc2xpZGVyIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBtYXgtaGVpZ2h0OiAwO1xuICB0cmFuc2l0aW9uLXByb3BlcnR5OiBhbGw7XG4gIHRyYW5zaXRpb24tZHVyYXRpb246IC40cztcbiAgdHJhbnNpdGlvbi10aW1pbmctZnVuY3Rpb246IGN1YmljLWJlemllcigxLCAwLCAwLjUsIDApO1xuICBiYWNrZ3JvdW5kOiAjRUZFRkY0O1xufVxuXG4ucGFuZWwtc2xpZGVyLm9wZW4ge1xuICBtYXgtaGVpZ2h0OiA1MDBweDtcbiAgbWFyZ2luLXRvcDogOHB4O1xuICBwYWRkaW5nOiAwLjM1NzE0cmVtO1xuICBib3JkZXItcmFkaXVzOiAwLjI4NTcxcmVtO1xufVxuXG4ucGFuZWwtc2xpZGVyLm9wZW4gLmJ1dHRvbiB7XG4gIG1hcmdpbjogMC4zNTcxNHJlbSAwO1xufVxuXG4ucGFuZWwtc2xpZGVyLm9wZW46OmJlZm9yZSB7XG4gIGJvcmRlci1yaWdodDogc29saWQgMTVweCB0cmFuc3BhcmVudDtcbiAgYm9yZGVyLWxlZnQ6IHNvbGlkIDE1cHggdHJhbnNwYXJlbnQ7XG4gIGJvcmRlci1ib3R0b206IHNvbGlkIDE1cHggI0VGRUZGNDtcbiAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKC01MCUpO1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIGNvbnRlbnQ6ICcnO1xuICB0b3A6IC0xNXB4O1xuICBsZWZ0OiA1MCU7XG4gIGhlaWdodDogMDtcbiAgd2lkdGg6IDA7XG59XG5cbi50b2RvQXR0YXRjaG1lbnRzIHtcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xuICBwYWRkaW5nOiAxLjA3MTQzcmVtO1xuICBiYWNrZ3JvdW5kOiAjRjZGN0Y4O1xufVxuXG4udG9kb0F0dGF0Y2htZW50cyBoMiwgLnRvZG9BdHRhdGNobWVudHMgaDMge1xuICBjb2xvcjogIzZmNmY2Zjtcbn1cblxuLnRvZG9BdHRhdGNobWVudHMgaSB7XG4gIGNvbG9yOiAjYzBjMmMzO1xufVxuXG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAudG9kb0F0dGF0Y2htZW50cyBbdHlwZT0nZmlsZSddIHtcbiAgICB3aWR0aDogNDAlO1xuICB9XG59XG5cbi50b2RvQXR0YXRjaG1lbnRzIGhyIHtcbiAgbWFyZ2luOiAwLjM1NzE0cmVtO1xufVxuXG4uYmRtRmlsZVVwbG9hZHMge1xuICBtYXgtaGVpZ2h0OiAxMC4zNTcxNHJlbTtcbiAgb3ZlcmZsb3cteTogYXV0bztcbn1cblxuLmJkbUZpbGVVcGxvYWRzIC5saW5rIHtcbiAgbWFyZ2luLWJvdHRvbTogMC4yODU3MXJlbTtcbiAgY3Vyc29yOiBwb2ludGVyO1xufVxuXG4uYmRtRmlsZVVwbG9hZHMgLmxpbms6aG92ZXIge1xuICBiYWNrZ3JvdW5kOiAjZDZkOGRhO1xufVxuXG4uYmRtTG9hZGluZyB7XG4gIHBvc2l0aW9uOiBmaXhlZDtcbiAgei1pbmRleDogOTk5OTk5OTk5OTtcbiAgaGVpZ2h0OiAyZW07XG4gIHdpZHRoOiAyZW07XG4gIG92ZXJmbG93OiB2aXNpYmxlO1xuICBtYXJnaW46IGF1dG87XG4gIHRvcDogMDtcbiAgbGVmdDogMDtcbiAgYm90dG9tOiAwO1xuICByaWdodDogMDtcbn1cblxuLyogVHJhbnNwYXJlbnQgT3ZlcmxheSAqL1xuLmJkbUxvYWRpbmc6YmVmb3JlIHtcbiAgY29udGVudDogJyc7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBwb3NpdGlvbjogZml4ZWQ7XG4gIHRvcDogMDtcbiAgbGVmdDogMDtcbiAgd2lkdGg6IDEwMCU7XG4gIGhlaWdodDogMTAwJTtcbiAgYmFja2dyb3VuZC1jb2xvcjogcmdiYSgwLCAwLCAwLCAwLjMpO1xufVxuXG4vKiA6bm90KDpyZXF1aXJlZCkgaGlkZXMgdGhlc2UgcnVsZXMgZnJvbSBJRTkgYW5kIGJlbG93ICovXG4uYmRtTG9hZGluZzpub3QoOnJlcXVpcmVkKSB7XG4gIC8qIGhpZGUgXCJiZG1Mb2FkaW5nLi4uXCIgdGV4dCAqL1xuICBmb250OiAwLzAgYTtcbiAgY29sb3I6IHRyYW5zcGFyZW50O1xuICB0ZXh0LXNoYWRvdzogbm9uZTtcbiAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gIGJvcmRlcjogMDtcbn1cblxuLmJkbUxvYWRpbmc6bm90KDpyZXF1aXJlZCk6YWZ0ZXIge1xuICBjb250ZW50OiAnJztcbiAgZGlzcGxheTogYmxvY2s7XG4gIGZvbnQtc2l6ZTogMTBweDtcbiAgd2lkdGg6IDFlbTtcbiAgaGVpZ2h0OiAxZW07XG4gIG1hcmdpbi10b3A6IC0wLjVlbTtcbiAgLXdlYmtpdC1hbmltYXRpb246IHNwaW5uZXIgMTUwMG1zIGluZmluaXRlIGxpbmVhcjtcbiAgLW1vei1hbmltYXRpb246IHNwaW5uZXIgMTUwMG1zIGluZmluaXRlIGxpbmVhcjtcbiAgLW1zLWFuaW1hdGlvbjogc3Bpbm5lciAxNTAwbXMgaW5maW5pdGUgbGluZWFyO1xuICAtby1hbmltYXRpb246IHNwaW5uZXIgMTUwMG1zIGluZmluaXRlIGxpbmVhcjtcbiAgYW5pbWF0aW9uOiBzcGlubmVyIDE1MDBtcyBpbmZpbml0ZSBsaW5lYXI7XG4gIGJvcmRlci1yYWRpdXM6IDAuNWVtO1xuICAtd2Via2l0LWJveC1zaGFkb3c6IHJnYmEoMCwgMCwgMCwgMC43NSkgMS41ZW0gMCAwIDAsIHJnYmEoMCwgMCwgMCwgMC43NSkgMS4xZW0gMS4xZW0gMCAwLCByZ2JhKDAsIDAsIDAsIDAuNzUpIDAgMS41ZW0gMCAwLCByZ2JhKDAsIDAsIDAsIDAuNzUpIC0xLjFlbSAxLjFlbSAwIDAsIHJnYmEoMCwgMCwgMCwgMC41KSAtMS41ZW0gMCAwIDAsIHJnYmEoMCwgMCwgMCwgMC41KSAtMS4xZW0gLTEuMWVtIDAgMCwgcmdiYSgwLCAwLCAwLCAwLjc1KSAwIC0xLjVlbSAwIDAsIHJnYmEoMCwgMCwgMCwgMC43NSkgMS4xZW0gLTEuMWVtIDAgMDtcbiAgYm94LXNoYWRvdzogcmdiYSgwLCAwLCAwLCAwLjc1KSAxLjVlbSAwIDAgMCwgcmdiYSgwLCAwLCAwLCAwLjc1KSAxLjFlbSAxLjFlbSAwIDAsIHJnYmEoMCwgMCwgMCwgMC43NSkgMCAxLjVlbSAwIDAsIHJnYmEoMCwgMCwgMCwgMC43NSkgLTEuMWVtIDEuMWVtIDAgMCwgcmdiYSgwLCAwLCAwLCAwLjc1KSAtMS41ZW0gMCAwIDAsIHJnYmEoMCwgMCwgMCwgMC43NSkgLTEuMWVtIC0xLjFlbSAwIDAsIHJnYmEoMCwgMCwgMCwgMC43NSkgMCAtMS41ZW0gMCAwLCByZ2JhKDAsIDAsIDAsIDAuNzUpIDEuMWVtIC0xLjFlbSAwIDA7XG59XG5cbi8qIEFuaW1hdGlvbiAqL1xuQC13ZWJraXQta2V5ZnJhbWVzIHNwaW5uZXIge1xuICAwJSB7XG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHJvdGF0ZSgwZGVnKTtcbiAgICAtbW96LXRyYW5zZm9ybTogcm90YXRlKDBkZWcpO1xuICAgIC1tcy10cmFuc2Zvcm06IHJvdGF0ZSgwZGVnKTtcbiAgICAtby10cmFuc2Zvcm06IHJvdGF0ZSgwZGVnKTtcbiAgICB0cmFuc2Zvcm06IHJvdGF0ZSgwZGVnKTtcbiAgfVxuICAxMDAlIHtcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogcm90YXRlKDM2MGRlZyk7XG4gICAgLW1vei10cmFuc2Zvcm06IHJvdGF0ZSgzNjBkZWcpO1xuICAgIC1tcy10cmFuc2Zvcm06IHJvdGF0ZSgzNjBkZWcpO1xuICAgIC1vLXRyYW5zZm9ybTogcm90YXRlKDM2MGRlZyk7XG4gICAgdHJhbnNmb3JtOiByb3RhdGUoMzYwZGVnKTtcbiAgfVxufVxuXG5ALW1vei1rZXlmcmFtZXMgc3Bpbm5lciB7XG4gIDAlIHtcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogcm90YXRlKDBkZWcpO1xuICAgIC1tb3otdHJhbnNmb3JtOiByb3RhdGUoMGRlZyk7XG4gICAgLW1zLXRyYW5zZm9ybTogcm90YXRlKDBkZWcpO1xuICAgIC1vLXRyYW5zZm9ybTogcm90YXRlKDBkZWcpO1xuICAgIHRyYW5zZm9ybTogcm90YXRlKDBkZWcpO1xuICB9XG4gIDEwMCUge1xuICAgIC13ZWJraXQtdHJhbnNmb3JtOiByb3RhdGUoMzYwZGVnKTtcbiAgICAtbW96LXRyYW5zZm9ybTogcm90YXRlKDM2MGRlZyk7XG4gICAgLW1zLXRyYW5zZm9ybTogcm90YXRlKDM2MGRlZyk7XG4gICAgLW8tdHJhbnNmb3JtOiByb3RhdGUoMzYwZGVnKTtcbiAgICB0cmFuc2Zvcm06IHJvdGF0ZSgzNjBkZWcpO1xuICB9XG59XG5cbkAtby1rZXlmcmFtZXMgc3Bpbm5lciB7XG4gIDAlIHtcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogcm90YXRlKDBkZWcpO1xuICAgIC1tb3otdHJhbnNmb3JtOiByb3RhdGUoMGRlZyk7XG4gICAgLW1zLXRyYW5zZm9ybTogcm90YXRlKDBkZWcpO1xuICAgIC1vLXRyYW5zZm9ybTogcm90YXRlKDBkZWcpO1xuICAgIHRyYW5zZm9ybTogcm90YXRlKDBkZWcpO1xuICB9XG4gIDEwMCUge1xuICAgIC13ZWJraXQtdHJhbnNmb3JtOiByb3RhdGUoMzYwZGVnKTtcbiAgICAtbW96LXRyYW5zZm9ybTogcm90YXRlKDM2MGRlZyk7XG4gICAgLW1zLXRyYW5zZm9ybTogcm90YXRlKDM2MGRlZyk7XG4gICAgLW8tdHJhbnNmb3JtOiByb3RhdGUoMzYwZGVnKTtcbiAgICB0cmFuc2Zvcm06IHJvdGF0ZSgzNjBkZWcpO1xuICB9XG59XG5cbkBrZXlmcmFtZXMgc3Bpbm5lciB7XG4gIDAlIHtcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogcm90YXRlKDBkZWcpO1xuICAgIC1tb3otdHJhbnNmb3JtOiByb3RhdGUoMGRlZyk7XG4gICAgLW1zLXRyYW5zZm9ybTogcm90YXRlKDBkZWcpO1xuICAgIC1vLXRyYW5zZm9ybTogcm90YXRlKDBkZWcpO1xuICAgIHRyYW5zZm9ybTogcm90YXRlKDBkZWcpO1xuICB9XG4gIDEwMCUge1xuICAgIC13ZWJraXQtdHJhbnNmb3JtOiByb3RhdGUoMzYwZGVnKTtcbiAgICAtbW96LXRyYW5zZm9ybTogcm90YXRlKDM2MGRlZyk7XG4gICAgLW1zLXRyYW5zZm9ybTogcm90YXRlKDM2MGRlZyk7XG4gICAgLW8tdHJhbnNmb3JtOiByb3RhdGUoMzYwZGVnKTtcbiAgICB0cmFuc2Zvcm06IHJvdGF0ZSgzNjBkZWcpO1xuICB9XG59XG5cbi5iZG1TZWFyY2ggLmJkbVNlYXJjaENsb3NlIHtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICBwYWRkaW5nOiAwIDAuMjE0MjlyZW07XG4gIGZsb2F0OiByaWdodDtcbn1cblxuLmJkbVNlYXJjaCAuYmRtU2VhcmNoQ2xvc2UgaSB7XG4gIGNvbG9yOiAjRUZFRkY0O1xuICBjdXJzb3I6IHBvaW50ZXI7XG59XG5cbi5iZG1TZWFyY2ggLmJkbVNlYXJjaENsb3NlIGk6aG92ZXIge1xuICBjb2xvcjogI2EyOWU5ZTtcbn1cblxuLmJkbVNlYXJjaCBoMiB7XG4gIHBhZGRpbmctdG9wOiAwLjM1NzE0cmVtO1xufVxuXG4uYmRtU2VhcmNoIC5oaWdobGlnaHQge1xuICBiYWNrZ3JvdW5kOiB5ZWxsb3c7XG59XG5cbi5iZG1TZWFyY2ggLnNlYXJjaFJlc3VsdCB7XG4gIG1hcmdpbjogMC4yODU3MXJlbSAwO1xuICBib3JkZXItYm90dG9tOiAxcHggc29saWQgI2U4ZTVlNTtcbiAgY3Vyc29yOiBwb2ludGVyO1xuICBwYWRkaW5nOiAwLjQyODU3cmVtIDAuMjg1NzFyZW07XG59XG5cbi5iZG1TZWFyY2ggLnNlYXJjaFJlc3VsdCBwIHtcbiAgbWFyZ2luOiAwcHg7XG59XG5cbi5iZG1TZWFyY2ggLnNlYXJjaFJlc3VsdDpob3ZlciB7XG4gIGJhY2tncm91bmQ6ICNlNGU0ZTQ7XG59XG5cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gIC50b2RvRm9ybSB7XG4gICAgbWF4LWhlaWdodDogMzUuNzE0MjlyZW07XG4gICAgb3ZlcmZsb3cteTogYXV0bztcbiAgfVxuICAudG9kb0Zvcm0gdGhlYWQgW2NsYXNzfD1cInRvZG9cIl0ge1xuICAgIG1pbi1oZWlnaHQ6IDg1cHg7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbiAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICB9XG4gIC50b2RvRm9ybSBbY2xhc3N8PVwidG9kb1wiXSB7XG4gICAgZmxvYXQ6IGxlZnQ7XG4gICAgd2lkdGg6IDkuMDklO1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgfVxuICAudG9kb0Zvcm0gLnRvZG8tY29tbWVudHMge1xuICAgIHdpZHRoOiBjYWxjKDEwMCUgLSAxNDBweCAtIDMycHgpO1xuICAgIGJvcmRlci1ib3R0b206IDAgIWltcG9ydGFudDtcbiAgfVxuICAudG9kb0Zvcm0gLnRvZG8tZHVwbGljYXRlIHtcbiAgICB3aWR0aDogMTQwcHg7XG4gIH1cbiAgLnRvZG9Gb3JtIC50b2RvLWR1cGxpY2F0ZSAuYnV0dG9uIHtcbiAgICBtYXJnaW46IDA7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgaGVpZ2h0OiAxMDAlO1xuICB9XG4gIC50b2RvRm9ybSAudG9kby1kZWxldGUge1xuICAgIHdpZHRoOiAzMnB4O1xuICB9XG59XG5cbi50b2RvRm9ybSAuY3Jvc3MtY29udGFpbiB7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICB0ZXh0LWFsaWduOiBsZWZ0O1xuICBwYWRkaW5nOiAzMCUgMDtcbn1cblxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgLnRvZG9Gb3JtIHRhYmxlLnF1b3RlRGV0YWlsIHRoZWFkIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjZmNjYzdjO1xuICB9XG59XG5cbi50b2RvRm9ybSB0YWJsZS5xdW90ZURldGFpbCB0aGVhZCB0aCB7XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbn1cblxuLnRvZG9Gb3JtIHRhYmxlLnF1b3RlRGV0YWlsIHRoZWFkIHRyIHtcbiAgYm9yZGVyOiBzb2xpZCAxcHggI2JjYmNiZTtcbn1cblxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgLnRvZG9Gb3JtIHRhYmxlLnF1b3RlRGV0YWlsIHRib2R5IHRkIHtcbiAgICBoZWlnaHQ6IDUycHg7XG4gIH1cbn1cblxuLnRvZG9Gb3JtIHRhYmxlLnF1b3RlRGV0YWlsIHRib2R5IHRkIGlucHV0LFxuLnRvZG9Gb3JtIHRhYmxlLnF1b3RlRGV0YWlsIHRib2R5IHRkIHNlbGVjdCB7XG4gIG1hcmdpbjogMDtcbiAgdHJhbnNpdGlvbjogYmFja2dyb3VuZC1jb2xvciAuM3MgZWFzZS1pbi1vdXQ7XG59XG5cbi50b2RvRm9ybSB0YWJsZS5xdW90ZURldGFpbCB0Ym9keSB0ZCBpbnB1dDo6cGxhY2hvbGRlcixcbi50b2RvRm9ybSB0YWJsZS5xdW90ZURldGFpbCB0Ym9keSB0ZCBzZWxlY3Q6OnBsYWNob2xkZXIge1xuICBjb2xvcjogYmxhY2s7XG59XG5cbi50b2RvRm9ybSB0YWJsZS5xdW90ZURldGFpbCB0Ym9keSB0ZCAuaW5wdXQtZXhwYW5kLXdyYXAge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG59XG5cbi50b2RvRm9ybSB0YWJsZS5xdW90ZURldGFpbCB0Ym9keSB0ZCAuaW5wdXQtZXhwYW5kLXdyYXAuZXhwYW5kZWQge1xuICBwb3NpdGlvbjogZml4ZWQ7XG4gIHotaW5kZXg6IDI7XG4gIHdpZHRoOiAxMDAlO1xuICBtYXgtd2lkdGg6IGNhbGMoOTIuODU3MTRyZW0gLSAxMCUpO1xuICBsZWZ0OiA1MCU7XG4gIHRvcDogMzAlO1xuICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoLTUwJSk7XG59XG5cbi50b2RvRm9ybSB0YWJsZS5xdW90ZURldGFpbCB0Ym9keSB0ZCBpbnB1dFt0eXBlPXRleHRdLFxuLnRvZG9Gb3JtIHRhYmxlLnF1b3RlRGV0YWlsIHRib2R5IHRkIGlucHV0W3R5cGU9bnVtYmVyXSB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgdHJhbnNpdGlvbjogLjNzIGVhc2UtaW4tb3V0IGFsbDtcbn1cblxuLnRvZG9Gb3JtIHRhYmxlLnF1b3RlRGV0YWlsIHRib2R5IHRkIGlucHV0W3R5cGU9dGV4dF06aG92ZXIgKyAuaW5wdXQtZXhwYW5kLWljb24sXG4udG9kb0Zvcm0gdGFibGUucXVvdGVEZXRhaWwgdGJvZHkgdGQgaW5wdXRbdHlwZT1udW1iZXJdOmhvdmVyICsgLmlucHV0LWV4cGFuZC1pY29uIHtcbiAgZGlzcGxheTogYmxvY2s7XG59XG5cbi50b2RvRm9ybSB0YWJsZS5xdW90ZURldGFpbCB0Ym9keSB0ZCBpbnB1dFt0eXBlPXRleHRdICsgLmlucHV0LWV4cGFuZC1pY29uLFxuLnRvZG9Gb3JtIHRhYmxlLnF1b3RlRGV0YWlsIHRib2R5IHRkIGlucHV0W3R5cGU9bnVtYmVyXSArIC5pbnB1dC1leHBhbmQtaWNvbiB7XG4gIGRpc3BsYXk6IG5vbmU7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgcmlnaHQ6IDA7XG4gIHRvcDogMDtcbiAgei1pbmRleDogMTtcbiAgZm9udC1zaXplOiAxMnB4O1xufVxuXG4udG9kb0Zvcm0gdGFibGUucXVvdGVEZXRhaWwgdGJvZHkgdGQgaW5wdXRbdHlwZT10ZXh0XSArIC5pbnB1dC1leHBhbmQtaWNvbjpob3Zlcixcbi50b2RvRm9ybSB0YWJsZS5xdW90ZURldGFpbCB0Ym9keSB0ZCBpbnB1dFt0eXBlPW51bWJlcl0gKyAuaW5wdXQtZXhwYW5kLWljb246aG92ZXIge1xuICBjdXJzb3I6IHBvaW50ZXI7XG4gIGRpc3BsYXk6IGJsb2NrO1xufVxuXG4udG9kb0Zvcm0gdGFibGUucXVvdGVEZXRhaWwgdGJvZHkgdHIge1xuICBib3JkZXI6IHNvbGlkIDFweCAjYmNiY2JlO1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG59XG5cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gIC50b2RvRm9ybSB0YWJsZS5xdW90ZURldGFpbCB0Ym9keSB0ciB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogI2ZjY2M3YztcbiAgfVxufVxuXG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAudG9kb0Zvcm0gdGFibGUucXVvdGVEZXRhaWwgdGJvZHkgLnRvZG8tZGVsZXRlIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjZmZmO1xuICB9XG4gIC50b2RvRm9ybSB0YWJsZS5xdW90ZURldGFpbCB0Ym9keSAudG9kby1kaXJlY3Qge1xuICAgIHBhZGRpbmc6IDE2cHggNXB4O1xuICB9XG59XG5cbi50b2RvRm9ybSAuY2F0LXF1b3RlcyB7XG4gIGJhY2tncm91bmQ6ICNlM2UzZTQ7XG59XG5cbi50b2RvRm9ybSB0aC5jYXQtcXVvdGVzLFxuLnRvZG9Gb3JtIHRkLmNhdC1xdW90ZXMge1xuICBib3JkZXItYm90dG9tOiBzb2xpZCAxcHggI2JjYmNiZTtcbn1cblxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgLnRvZG9Gb3JtIHRoLmNhdC1xdW90ZXMsXG4gIC50b2RvRm9ybSB0ZC5jYXQtcXVvdGVzIHtcbiAgICBib3JkZXItcmlnaHQ6IG5vbmU7XG4gIH1cbn1cblxuLnRvZG9Gb3JtIHRoLmNhdC1xdW90ZXM6bnRoLWNoaWxkKDMpLFxuLnRvZG9Gb3JtIHRkLmNhdC1xdW90ZXM6bnRoLWNoaWxkKDMpIHtcbiAgYm9yZGVyLWJvdHRvbTogc29saWQgM3B4ICNiY2JjYmU7XG59XG5cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gIC50b2RvRm9ybSB0aC5jYXQtcXVvdGVzOm50aC1jaGlsZCgzKSxcbiAgLnRvZG9Gb3JtIHRkLmNhdC1xdW90ZXM6bnRoLWNoaWxkKDMpIHtcbiAgICBib3JkZXItcmlnaHQ6IHNvbGlkIDNweCAjYmNiY2JlO1xuICAgIGJvcmRlci1ib3R0b206IHNvbGlkIDFweCAjYmNiY2JlO1xuICB9XG59XG5cbi50b2RvRm9ybSAuY2F0LXBybyB7XG4gIGJhY2tncm91bmQtY29sb3I6ICNmY2NjN2M7XG59XG5cbi50b2RvRm9ybSB0aC5jYXQtcHJvLFxuLnRvZG9Gb3JtIHRkLmNhdC1wcm8ge1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gIGJvcmRlci1ib3R0b206IHNvbGlkIDFweCAjYmNiY2JlO1xufVxuXG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAudG9kb0Zvcm0gdGguY2F0LXBybyxcbiAgLnRvZG9Gb3JtIHRkLmNhdC1wcm8ge1xuICAgIGJvcmRlci1yaWdodDogbm9uZTtcbiAgfVxufVxuXG4udG9kb0Zvcm0gdHIgLmRlbGV0ZS1yb3cge1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gIGJvcmRlci1ib3R0b206IHNvbGlkIDVweCAjYmNiY2JlO1xufVxuXG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAudG9kb0Zvcm0gdHIgLmRlbGV0ZS1yb3cge1xuICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICBib3JkZXItYm90dG9tOiAwICFpbXBvcnRhbnQ7XG4gICAgcGFkZGluZzogMTVweCA1cHg7XG4gIH1cbn1cblxuLnRvZG9Gb3JtIHRyOmxhc3QtY2hpbGQgLmRlbGV0ZS1yb3cge1xuICBib3JkZXItYm90dG9tOiBzb2xpZCAxcHggI2JjYmNiZTtcbn1cblxuLnRvZG9Gb3JtIC5taXNzaW5nLXJlcXVpcmVkIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2UxOTQ4ODtcbiAgYm9yZGVyLWNvbG9yOiAjY2M0YjM3O1xufVxuXG4udG9kb0Zvcm0gLm1pc3NpbmctcmVxdWlyZWQ6Zm9jdXMge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZTE5NDg4O1xuICBib3JkZXItY29sb3I6ICNjYzRiMzcgIWltcG9ydGFudDtcbn1cblxuLnJldmVhbC5mdWxsIHtcbiAgdG9wOiAwICFpbXBvcnRhbnQ7XG59XG5cbi5yZXZlYWwuZnVsbCAucm93IHtcbiAgbWF4LXdpZHRoOiAxMDAlO1xufVxuXG4ucmV2ZWFsLmZ1bGwgLnRvZG9Gb3JtIHtcbiAgbWF4LWhlaWdodDogODN2aDtcbn1cblxuaW5wdXRbaWQkPVwiZHVwbGljYXRlZFwiXSB7XG4gIGJhY2tncm91bmQtY29sb3I6ICM4YWRkOWI7XG59XG5cbmlucHV0W2lkJD1cImR1cGxpY2F0ZWRcIl06Zm9jdXMge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjOGFkZDliO1xufVxuXG4jZXhwYW5kZWQtb3ZlcmxheSB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgbGVmdDogMDtcbiAgcmlnaHQ6IDA7XG4gIHRvcDogMDtcbiAgYm90dG9tOiAwO1xuICB6LWluZGV4OiAxO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiByZ2JhKDEwLCAxMCwgMTAsIDAuNDUpO1xuICB2aXNpYmlsaXR5OiBoaWRkZW47XG59XG5cbi5saW5lcy13cmFwIHtcbiAgZGlzcGxheTogZmxleDtcbiAganVzdGlmeS1jb250ZW50OiBmbGV4LXN0YXJ0O1xuICBtYXJnaW4tYm90dG9tOiAwLjVlbTtcbn1cblxuLmxpbmVzLXdyYXAgaDIge1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG59XG5cbi5saW5lcy13cmFwIGJ1dHRvbiB7XG4gIG1hcmdpbjogMCAxMHB4IDAgYXV0bztcbn1cblxuLnF1aWNrLXZpZXctcG9wdXAge1xuICBtYXJnaW4tYm90dG9tOiAwLjVlbTtcbn1cblxuLnF1aWNrLXZpZXctcG9wdXAgLnF1aWNrLXZpZXctY29sdW1uIHtcbiAgbWFyZ2luLWJvdHRvbTogMS41ZW07XG4gIC8qQGluY2x1ZGUgYnJlYWtwb2ludChtZWRpdW0pIHtcbiAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IDA7XG4gICAgICAgIH0qL1xufVxuXG4udHJ1bmNhdGVkLXN0cmluZyB7XG4gIHRleHQtb3ZlcmZsb3c6IGVsbGlwc2lzO1xuICB3aGl0ZS1zcGFjZTogbm93cmFwO1xuICBvdmVyZmxvdzogaGlkZGVuO1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIHdpZHRoOiAxMDAlO1xuICBsaW5lLWhlaWdodDogMWVtO1xufVxuXG4udGFzay10b2RvLWl0ZW0ge1xuICBkaXNwbGF5OiBmbGV4O1xuICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xufVxuXG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDhlbSkge1xuICAudGFzay10b2RvLWl0ZW0ge1xuICAgIGZsZXgtZGlyZWN0aW9uOiByb3c7XG4gIH1cbn1cblxuLnRhc2stdG9kby1pdGVtX3RpdGxlLFxuLnRhc2stdG9kby1pdGVtX2luZm8sXG4udGFzay10b2RvLWl0ZW1fZ3JvdXAge1xuICBkaXNwbGF5OiBmbGV4O1xuICBhbGlnbi1pdGVtczogY2VudGVyO1xuICB3aWR0aDogMTAwJTtcbn1cblxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQ4ZW0pIHtcbiAgLnRhc2stdG9kby1pdGVtX3RpdGxlLFxuICAudGFzay10b2RvLWl0ZW1faW5mbyxcbiAgLnRhc2stdG9kby1pdGVtX2dyb3VwIHtcbiAgICB3aWR0aDogNTAlO1xuICB9XG59XG5cbi50YXNrLXRvZG8taXRlbV9ncm91cCB7XG4gIHdpZHRoOiA3MCU7XG59XG5cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0OGVtKSB7XG4gIC50YXNrLXRvZG8taXRlbV9ncm91cCB7XG4gICAgd2lkdGg6IDYwJTtcbiAgfVxufVxuXG4udGFzay10b2RvLWl0ZW1faW5mbyB7XG4gIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG4gIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICBhbGlnbi1pdGVtczogZmxleC1zdGFydDtcbn1cblxuLnRvZG9Sb3cudGFzay10b2RvLWl0ZW0ge1xuICBmbGV4LWRpcmVjdGlvbjogcm93O1xufVxuXG4udG9kb1JvdyAudGFzay10b2RvLWl0ZW1fdGl0bGUge1xuICB3aWR0aDogMzAlO1xufVxuXG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDhlbSkge1xuICAudG9kb1JvdyAudGFzay10b2RvLWl0ZW1fdGl0bGUge1xuICAgIHdpZHRoOiA0MCU7XG4gIH1cbn1cblxuLnRvZG9Sb3cgLnRhc2stdG9kby1pdGVtX2luZm8ge1xuICB3aWR0aDogODAlO1xufVxuXG4udGFzay10b2RvLWl0ZW1fZHVwbGljYXRlIHtcbiAgd2lkdGg6IDIwJTtcbiAgZGlzcGxheTogZmxleDtcbiAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG59XG5cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0OGVtKSB7XG4gIC50YXNrLXRvZG8taXRlbV9kdXBsaWNhdGUge1xuICAgIHdpZHRoOiAxMCU7XG4gIH1cbn1cblxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQ4ZW0pIHtcbiAgLnNlYXJjaEF0dHJpYnV0ZXNDb2wge1xuICAgIHdpZHRoOiAzNSU7XG4gICAgZmxvYXQ6IGxlZnQ7XG4gICAgcGFkZGluZy1yaWdodDogMC4zNTcxNHJlbTtcbiAgICBwYWRkaW5nLWxlZnQ6IDAuMzU3MTRyZW07XG4gIH1cbn1cblxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQ4ZW0pIGFuZCAobWluLXdpZHRoOiA0OGVtKSB7XG4gIC5zZWFyY2hBdHRyaWJ1dGVzQ29sIHtcbiAgICBwYWRkaW5nLXJpZ2h0OiAwLjU3MTQzcmVtO1xuICAgIHBhZGRpbmctbGVmdDogMC41NzE0M3JlbTtcbiAgfVxufVxuXG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDhlbSkgYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgLnNlYXJjaEF0dHJpYnV0ZXNDb2wge1xuICAgIHBhZGRpbmctcmlnaHQ6IDAuNTcxNDNyZW07XG4gICAgcGFkZGluZy1sZWZ0OiAwLjU3MTQzcmVtO1xuICB9XG59XG5cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0OGVtKSB7XG4gIC5zZWFyY2hBdHRyaWJ1dGVzQ29sOmxhc3QtY2hpbGQ6bm90KDpmaXJzdC1jaGlsZCkge1xuICAgIGZsb2F0OiByaWdodDtcbiAgfVxufVxuXG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAuc2VhcmNoQXR0cmlidXRlc0NvbCB7XG4gICAgd2lkdGg6IDE2LjY2NjY3JTtcbiAgICBmbG9hdDogbGVmdDtcbiAgICBwYWRkaW5nLXJpZ2h0OiAwLjM1NzE0cmVtO1xuICAgIHBhZGRpbmctbGVmdDogMC4zNTcxNHJlbTtcbiAgfVxufVxuXG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkgYW5kIChtaW4td2lkdGg6IDQ4ZW0pIHtcbiAgLnNlYXJjaEF0dHJpYnV0ZXNDb2wge1xuICAgIHBhZGRpbmctcmlnaHQ6IDAuNTcxNDNyZW07XG4gICAgcGFkZGluZy1sZWZ0OiAwLjU3MTQzcmVtO1xuICB9XG59XG5cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAuc2VhcmNoQXR0cmlidXRlc0NvbCB7XG4gICAgcGFkZGluZy1yaWdodDogMC41NzE0M3JlbTtcbiAgICBwYWRkaW5nLWxlZnQ6IDAuNTcxNDNyZW07XG4gIH1cbn1cblxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgLnNlYXJjaEF0dHJpYnV0ZXNDb2w6bGFzdC1jaGlsZDpub3QoOmZpcnN0LWNoaWxkKSB7XG4gICAgZmxvYXQ6IHJpZ2h0O1xuICB9XG59XG5cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0OGVtKSB7XG4gIC5yZXN1bHRzU2VjdGlvbiAub2ZmLWNhbnZhcy5pbi1jYW52YXMtZm9yLW1lZGl1bSB7XG4gICAgd2lkdGg6IDM1JTtcbiAgICBmbG9hdDogbGVmdDtcbiAgICBwYWRkaW5nLXJpZ2h0OiAwLjM1NzE0cmVtO1xuICAgIHBhZGRpbmctbGVmdDogMC4zNTcxNHJlbTtcbiAgfVxufVxuXG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDhlbSkgYW5kIChtaW4td2lkdGg6IDQ4ZW0pIHtcbiAgLnJlc3VsdHNTZWN0aW9uIC5vZmYtY2FudmFzLmluLWNhbnZhcy1mb3ItbWVkaXVtIHtcbiAgICBwYWRkaW5nLXJpZ2h0OiAwLjU3MTQzcmVtO1xuICAgIHBhZGRpbmctbGVmdDogMC41NzE0M3JlbTtcbiAgfVxufVxuXG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDhlbSkgYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgLnJlc3VsdHNTZWN0aW9uIC5vZmYtY2FudmFzLmluLWNhbnZhcy1mb3ItbWVkaXVtIHtcbiAgICBwYWRkaW5nLXJpZ2h0OiAwLjU3MTQzcmVtO1xuICAgIHBhZGRpbmctbGVmdDogMC41NzE0M3JlbTtcbiAgfVxufVxuXG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDhlbSkge1xuICAucmVzdWx0c1NlY3Rpb24gLm9mZi1jYW52YXMuaW4tY2FudmFzLWZvci1tZWRpdW06bGFzdC1jaGlsZDpub3QoOmZpcnN0LWNoaWxkKSB7XG4gICAgZmxvYXQ6IHJpZ2h0O1xuICB9XG59XG5cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gIC5yZXN1bHRzU2VjdGlvbiAub2ZmLWNhbnZhcy5pbi1jYW52YXMtZm9yLW1lZGl1bSB7XG4gICAgd2lkdGg6IDE2LjY2NjY3JTtcbiAgICBmbG9hdDogbGVmdDtcbiAgICBwYWRkaW5nLXJpZ2h0OiAwLjM1NzE0cmVtO1xuICAgIHBhZGRpbmctbGVmdDogMC4zNTcxNHJlbTtcbiAgfVxufVxuXG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkgYW5kIChtaW4td2lkdGg6IDQ4ZW0pIHtcbiAgLnJlc3VsdHNTZWN0aW9uIC5vZmYtY2FudmFzLmluLWNhbnZhcy1mb3ItbWVkaXVtIHtcbiAgICBwYWRkaW5nLXJpZ2h0OiAwLjU3MTQzcmVtO1xuICAgIHBhZGRpbmctbGVmdDogMC41NzE0M3JlbTtcbiAgfVxufVxuXG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkgYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgLnJlc3VsdHNTZWN0aW9uIC5vZmYtY2FudmFzLmluLWNhbnZhcy1mb3ItbWVkaXVtIHtcbiAgICBwYWRkaW5nLXJpZ2h0OiAwLjU3MTQzcmVtO1xuICAgIHBhZGRpbmctbGVmdDogMC41NzE0M3JlbTtcbiAgfVxufVxuXG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAucmVzdWx0c1NlY3Rpb24gLm9mZi1jYW52YXMuaW4tY2FudmFzLWZvci1tZWRpdW06bGFzdC1jaGlsZDpub3QoOmZpcnN0LWNoaWxkKSB7XG4gICAgZmxvYXQ6IHJpZ2h0O1xuICB9XG59XG5cbkBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDQ3LjkzNzVlbSkge1xuICAucmVzdWx0c1NlY3Rpb24gLm9mZi1jYW52YXMuaW4tY2FudmFzLWZvci1tZWRpdW0ge1xuICAgIHotaW5kZXg6IDIwMDAwMDAwMDAwO1xuICAgIGJhY2tncm91bmQ6IHdoaXRlO1xuICB9XG59XG5cbkBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDQ3LjkzNzVlbSkge1xuICAuc2VhcmNoUmVzdWx0c0NvbCB7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgZmxvYXQ6IGxlZnQ7XG4gICAgcGFkZGluZy1yaWdodDogMC4zNTcxNHJlbTtcbiAgICBwYWRkaW5nLWxlZnQ6IDAuMzU3MTRyZW07XG4gIH1cbn1cblxuQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogNDcuOTM3NWVtKSBhbmQgKG1pbi13aWR0aDogNDhlbSkge1xuICAuc2VhcmNoUmVzdWx0c0NvbCB7XG4gICAgcGFkZGluZy1yaWdodDogMC41NzE0M3JlbTtcbiAgICBwYWRkaW5nLWxlZnQ6IDAuNTcxNDNyZW07XG4gIH1cbn1cblxuQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogNDcuOTM3NWVtKSBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAuc2VhcmNoUmVzdWx0c0NvbCB7XG4gICAgcGFkZGluZy1yaWdodDogMC41NzE0M3JlbTtcbiAgICBwYWRkaW5nLWxlZnQ6IDAuNTcxNDNyZW07XG4gIH1cbn1cblxuQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogNDcuOTM3NWVtKSB7XG4gIC5zZWFyY2hSZXN1bHRzQ29sOmxhc3QtY2hpbGQ6bm90KDpmaXJzdC1jaGlsZCkge1xuICAgIGZsb2F0OiByaWdodDtcbiAgfVxufVxuXG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDhlbSkge1xuICAuc2VhcmNoUmVzdWx0c0NvbCB7XG4gICAgd2lkdGg6IDY1JTtcbiAgICBmbG9hdDogbGVmdDtcbiAgICBwYWRkaW5nLXJpZ2h0OiAwLjM1NzE0cmVtO1xuICAgIHBhZGRpbmctbGVmdDogMC4zNTcxNHJlbTtcbiAgfVxufVxuXG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDhlbSkgYW5kIChtaW4td2lkdGg6IDQ4ZW0pIHtcbiAgLnNlYXJjaFJlc3VsdHNDb2wge1xuICAgIHBhZGRpbmctcmlnaHQ6IDAuNTcxNDNyZW07XG4gICAgcGFkZGluZy1sZWZ0OiAwLjU3MTQzcmVtO1xuICB9XG59XG5cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0OGVtKSBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAuc2VhcmNoUmVzdWx0c0NvbCB7XG4gICAgcGFkZGluZy1yaWdodDogMC41NzE0M3JlbTtcbiAgICBwYWRkaW5nLWxlZnQ6IDAuNTcxNDNyZW07XG4gIH1cbn1cblxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQ4ZW0pIHtcbiAgLnNlYXJjaFJlc3VsdHNDb2w6bGFzdC1jaGlsZDpub3QoOmZpcnN0LWNoaWxkKSB7XG4gICAgZmxvYXQ6IHJpZ2h0O1xuICB9XG59XG5cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gIC5zZWFyY2hSZXN1bHRzQ29sIHtcbiAgICB3aWR0aDogODMuMzMzMzMlO1xuICAgIGZsb2F0OiBsZWZ0O1xuICAgIHBhZGRpbmctcmlnaHQ6IDAuMzU3MTRyZW07XG4gICAgcGFkZGluZy1sZWZ0OiAwLjM1NzE0cmVtO1xuICB9XG59XG5cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSBhbmQgKG1pbi13aWR0aDogNDhlbSkge1xuICAuc2VhcmNoUmVzdWx0c0NvbCB7XG4gICAgcGFkZGluZy1yaWdodDogMC41NzE0M3JlbTtcbiAgICBwYWRkaW5nLWxlZnQ6IDAuNTcxNDNyZW07XG4gIH1cbn1cblxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gIC5zZWFyY2hSZXN1bHRzQ29sIHtcbiAgICBwYWRkaW5nLXJpZ2h0OiAwLjU3MTQzcmVtO1xuICAgIHBhZGRpbmctbGVmdDogMC41NzE0M3JlbTtcbiAgfVxufVxuXG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAuc2VhcmNoUmVzdWx0c0NvbDpsYXN0LWNoaWxkOm5vdCg6Zmlyc3QtY2hpbGQpIHtcbiAgICBmbG9hdDogcmlnaHQ7XG4gIH1cbn1cblxuLnNlYXJjaEhlYWRpbmcge1xuICBwYWRkaW5nLXRvcDogMC43MTQyOXJlbTtcbn1cblxuLnNlYXJjaEhlYWRpbmcgaDEge1xuICBmbG9hdDogbGVmdDtcbn1cblxudGFibGUuY29tcGFyZVRhYmxlIHRkIHtcbiAgYm9yZGVyLWxlZnQ6IDFweCBzb2xpZCAjZThlNWU1O1xufVxuXG50YWJsZS5jb21wYXJlVGFibGUgdHIgdGQ6bm90KDpmaXJzdC1jaGlsZCkge1xuICBtYXgtd2lkdGg6IDIwMHB4O1xuICBtaW4td2lkdGg6IDE1MHB4O1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG59XG5cbnRhYmxlLmNvbXBhcmVUYWJsZSB0ciB0ZDpub3QoOmZpcnN0LWNoaWxkKSBhIHtcbiAgY29sb3I6ICMwYTBhMGE7XG59XG5cbnRhYmxlLmNvbXBhcmVUYWJsZSB0ci5hbGlnblRvcCB7XG4gIHZlcnRpY2FsLWFsaWduOiB0b3A7XG59XG5cbnRhYmxlLmNvbXBhcmVUYWJsZSB0ci5hbGlnbkJvdHRvbSB7XG4gIHZlcnRpY2FsLWFsaWduOiBib3R0b207XG59XG5cbnRhYmxlLmNvbXBhcmVUYWJsZSAuZ2V0UXVvdGVMaW5rIHtcbiAgZGlzcGxheTogbm9uZTtcbn1cblxudGFibGUuY29tcGFyZVRhYmxlIHVsIHtcbiAgbGlzdC1zdHlsZTogbm9uZTtcbn1cblxudGFibGUuY29tcGFyZVRhYmxlIHRyIHRkOmZpcnN0LWNoaWxkIHtcbiAgYmFja2dyb3VuZDogI2U4ZTVlNTtcbiAgZm9udC13ZWlnaHQ6IGJvbGQ7XG4gIG1heC13aWR0aDogMTIwcHg7XG4gIHZlcnRpY2FsLWFsaWduOiB0b3A7XG59XG5cbnRhYmxlLmNvbXBhcmVUYWJsZSB0ciB0ZCB0YWJsZS5sYXJnZVByaWNlVGFibGUgdGgge1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG59XG5cbnRhYmxlLmNvbXBhcmVUYWJsZSB0ciB0ZCB0YWJsZS5sYXJnZVByaWNlVGFibGUgdGQge1xuICBtaW4td2lkdGg6IGF1dG87XG4gIG1heC13aWR0aDogYXV0bztcbn1cblxudGFibGUuY29tcGFyZVRhYmxlIHRyIHRkIHRhYmxlLmxhcmdlUHJpY2VUYWJsZSB0Ym9keSB0ciB0ZDpmaXJzdC1jaGlsZCB7XG4gIGJhY2tncm91bmQtY29sb3I6IGluaGVyaXQ7XG4gIGZvbnQtd2VpZ2h0OiBub3JtYWw7XG59XG5cbi5jb21wYXJlT3B0aW9ucyB7XG4gIHRleHQtYWxpZ246IHJpZ2h0O1xufVxuXG4uY29tcGFyZU9wdGlvbnMgYSB7XG4gIGNvbG9yOiAjMGEwYTBhO1xuICBmb250LXNpemU6IDEuMTQyODZyZW07XG59XG5cbkBtZWRpYSBwcmludCB7XG4gIHRhYmxlLmNvbXBhcmVUYWJsZSB0ciB0ZDpmaXJzdC1jaGlsZCB7XG4gICAgZGlzcGxheTogbm9uZTtcbiAgfVxuICB0YWJsZS5jb21wYXJlVGFibGUgdHIgdGQge1xuICAgIHdpZHRoOiAxMjBweCAhaW1wb3J0YW50O1xuICAgIG1heC13aWR0aDogMTIwcHggIWltcG9ydGFudDtcbiAgICBwYWRkaW5nOiAwLjM1NzE0cmVtO1xuICB9XG59XG5cbi5zaWduSW5MZWZ0IHtcbiAgYmFja2dyb3VuZDogdXJsKFwiLy9zdGF0aWMucmFwaWRvbmxpbmUuY29tL2ltZy9zaWduaW4vc2lnbmluLmpwZ1wiKSBuby1yZXBlYXQ7XG4gIGJhY2tncm91bmQtc2l6ZTogY292ZXI7XG4gIGJhY2tncm91bmQtcG9zaXRpb246IHRvcCByaWdodDtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xufVxuXG4uc2lnbkluTGVmdCAudHJ1c3RwaWxvdC13aWRnZXQge1xuICBwb3NpdGlvbjogYWJzb2x1dGUgIWltcG9ydGFudDtcbiAgYm90dG9tOiAwcHg7XG4gIGxlZnQ6IDBweDtcbiAgcmlnaHQ6IDBweDtcbiAgYmFja2dyb3VuZDogcmdiYSgwLCAwLCAwLCAwLjUpO1xuICBwYWRkaW5nOiAxMHB4IDA7XG59XG5cbkBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDQ3LjkzNzVlbSkge1xuICAuc2lnbkluTGVmdCAudHJ1c3RwaWxvdC13aWRnZXQge1xuICAgIGRpc3BsYXk6IG5vbmU7XG4gIH1cbn1cblxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgLnNpZ25JblJpZ2h0IHtcbiAgICBwYWRkaW5nLWxlZnQ6IDUuNzE0MjlyZW07XG4gICAgcGFkZGluZy1yaWdodDogNS43MTQyOXJlbTtcbiAgfVxufVxuXG4uc2lnbkluR3JheVRleHQge1xuICBjb2xvcjogIzc5Nzk2QTtcbn1cblxuLnNpZ25JblJlZ2lzdGVyTGluayB7XG4gIGNvbG9yOiAjMGEwYTBhO1xuICBmb250LXNpemU6IDEuMDcxNDNyZW07XG59XG5cbi5zaWduSW5SZWdpc3Rlckxpbms6aG92ZXIge1xuICBjb2xvcjogaW5oZXJpdDtcbiAgdGV4dC1kZWNvcmF0aW9uOiB1bmRlcmxpbmU7XG4gIHRleHQtZGVjb3JhdGlvbi1jb2xvcjogIzBhMGEwYTtcbn1cblxuLnJlZ2lzdGVyQmVuZWZpdHMge1xuICBiYWNrZ3JvdW5kOiAjMzEzMTMxO1xuICBwYWRkaW5nOiAxLjA3MTQzcmVtO1xufVxuXG4ucmVnaXN0ZXJCZW5lZml0cyBoMyB7XG4gIGNvbG9yOiAjZmVmZWZlO1xufVxuXG4ucmVnaXN0ZXJCZW5lZml0cyBzcGFuIHtcbiAgY29sb3I6ICNmZWZlZmU7XG4gIGRpc3BsYXk6IGJsb2NrO1xufVxuXG4ucmVnaXN0ZXJCZW5lZml0cyBzcGFuIGkge1xuICBjb2xvcjogI2ZlZmVmZTtcbn1cblxuLmJyYW5kSXRlbSB7XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbn1cblxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQ4ZW0pIHtcbiAgLmJyYW5kSXRlbSB7XG4gICAgbWFyZ2luLWJvdHRvbTogMS40Mjg1N3JlbTtcbiAgICBtYXJnaW4tdG9wOiAxLjQyODU3cmVtO1xuICB9XG59XG5cbi5icmFuZEl0ZW0gaW1nIHtcbiAgbWFyZ2luLWJvdHRvbTogMC43MTQyOXJlbTtcbn1cblxuLmJyYW5kSXRlbSBhIHtcbiAgY29sb3I6ICM3OTc5NkE7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbn1cblxuLmJyYW5kSXRlbSBhOmhvdmVyIHtcbiAgY29sb3I6ICMwYTBhMGE7XG59XG5cbi5icmFuZEl0ZW0gaDMge1xuICBmb250LXdlaWdodDogbm9ybWFsO1xufVxuXG4uYnJhbmRzSGVhZGluZyB7XG4gIGZvbnQtc2l6ZTogMS4yOHJlbTtcbn1cblxudWwuYnJhbmROYXYge1xuICBtYXJnaW4tbGVmdDogMDtcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xuICBtYXJnaW46IDEuMDcxNDNyZW0gMCAwLjcxNDI5cmVtIDA7XG59XG5cbnVsLmJyYW5kTmF2OjpiZWZvcmUge1xuICBkaXNwbGF5OiB0YWJsZTtcbiAgY29udGVudDogJyAnO1xufVxuXG51bC5icmFuZE5hdjo6YWZ0ZXIge1xuICBkaXNwbGF5OiB0YWJsZTtcbiAgY29udGVudDogJyAnO1xufVxuXG51bC5icmFuZE5hdiBsaSB7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgbWFyZ2luLXJpZ2h0OiAuMDcxNDNyZW07XG4gIG1hcmdpbi1ib3R0b206IDAuNzE0MjlyZW07XG4gIGZvbnQtc2l6ZTogMXJlbTtcbn1cblxudWwuYnJhbmROYXYgbGkgYSB7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBjb2xvcjogIzBhMGEwYTtcbiAgYmFja2dyb3VuZDogI2U4ZTVlNTtcbiAgcGFkZGluZzogMC40Mjg1N3JlbSAxcmVtO1xufVxuXG51bC5icmFuZE5hdiBsaSBhOmhvdmVyIHtcbiAgYmFja2dyb3VuZDogI0Y5QTUxOTtcbiAgY29sb3I6ICNmZWZlZmU7XG59XG5cbi5xdW90ZUl0ZW0ge1xuICBib3JkZXItYm90dG9tOiAxcHggc29saWQgI2U4ZTVlNTtcbiAgbWFyZ2luLWJvdHRvbTogMC43MTQyOXJlbTtcbn1cblxuLnF1b3RlSXRlbSBoMyB7XG4gIGNvbG9yOiAjMGEwYTBhO1xufVxuXG5AbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA0Ny45Mzc1ZW0pIHtcbiAgLnF1b3RlSXRlbSB7XG4gICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICB9XG4gIC5xdW90ZUl0ZW0gbGFiZWwubWlkZGxlIHtcbiAgICBtYXJnaW4tYm90dG9tOiAwLjM1NzE0cmVtO1xuICB9XG59XG5cbi5zbWFsbFF1b3RlSW1nQ29udGFpbmVyIHtcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xuICBtYXJnaW46IDAgYXV0bztcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xufVxuXG4uc21hbGxRdW90ZUltZ0NvbnRhaW5lciBpbWcge1xuICBtYXgtd2lkdGg6IDExMHB4O1xufVxuXG4uc21hbGxRdW90ZVN0b2NrTWVzc2FnZSB7XG4gIGZvbnQtd2VpZ2h0OiBib2xkO1xuICB0ZXh0LWFsaWduOiByaWdodDtcbiAgZm9udC1zaXplOiAxcmVtO1xufVxuXG5AbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA0Ny45Mzc1ZW0pIHtcbiAgLnNtYWxsUXVvdGVTdG9ja01lc3NhZ2Uge1xuICAgIG1hcmdpbi1ib3R0b206IDEuMTQyODZyZW07XG4gIH1cbn1cblxudWwucXVvdGVzU2VydmljZXMge1xuICBtYXJnaW4tbGVmdDogMS43ODU3MXJlbTtcbn1cblxudWwucXVvdGVzU2VydmljZXMgbGkge1xuICBwYWRkaW5nLXRvcDogMC4zNTcxNHJlbTtcbiAgcGFkZGluZy1ib3R0b206IDAuMzU3MTRyZW07XG59XG5cbi5xdW90ZXNUZWFtSW5mbyBoMyB7XG4gIG1hcmdpbi1ib3R0b206IDE1cHg7XG59XG5cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0OGVtKSB7XG4gIC52aWRlb0NvbCAucmVzcG9uc2l2ZS1lbWJlZCB7XG4gICAgbWFyZ2luLXRvcDogNXJlbTtcbiAgfVxufVxuXG4uYmFza2V0UGFnZSB7XG4gIHBhZGRpbmctdG9wOiAwLjcxNDI5cmVtO1xufVxuXG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDhlbSkge1xuICAuYmFza2V0T3B0aW9ucyB7XG4gICAgcGFkZGluZy10b3A6IDIuMTQyODZyZW07XG4gIH1cbn1cblxuLmJhc2tldE9wdGlvbnMgYSB7XG4gIG1hcmdpbi1sZWZ0OiAwLjM1NzE0cmVtO1xuICBtYXJnaW4tcmlnaHQ6IDAuMzU3MTRyZW07XG4gIGNvbG9yOiAjMGEwYTBhO1xufVxuXG4ucHJvbW9Db2RlTGluZSB7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbn1cblxuLmJhc2tldEFkZHJlc3NPcHRpb25zIHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICBib3R0b206IDA7XG59XG5cbi5iYXNrZXRBZGRyZXNzT3B0aW9ucyBhIHtcbiAgbWFyZ2luLWJvdHRvbTogMDtcbn1cblxuLmJhc2tldEFkZHJlc3NPcHRpb25zIHNlbGVjdCB7XG4gIG1hcmdpbi1ib3R0b206IDA7XG59XG5cbi5iYXNrZXRBZHJlc3NCbG9jayB7XG4gIHBhZGRpbmctYm90dG9tOiA1MHB4O1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG59XG5cbi5iYXNrZXRDaGVja0hlYWRpbmcge1xuICBmb250LXNpemU6IDEuMTQyODZyZW07XG4gIGZvbnQtd2VpZ2h0OiBib2xkO1xufVxuXG4ucGF5bWVudE9wdGlvbnMgLmNvbHVtbnMge1xuICBwYWRkaW5nLWJvdHRvbTogMS4wNzE0M3JlbTtcbn1cblxuLnBheW1lbnRPcHRpb25zIGxhYmVsID4gW3R5cGU9cmFkaW9dIHtcbiAgbWFyZ2luLWJvdHRvbTogMDtcbiAgbWFyZ2luLXRvcDogMTBweDtcbn1cblxuLnBheXBhbGxvZ28uZGlzYWJsZWQge1xuICBvcGFjaXR5OiAuNTtcbiAgY3Vyc29yOiBub3QtYWxsb3dlZDtcbn1cblxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQ4ZW0pIHtcbiAgLmhvcml6b250YWxSZWxhdGVkUHJvZHVjdHMgLnByb2R1Y3RXaWRnZXQgbGkge1xuICAgIGZsb2F0OiBsZWZ0O1xuICAgIHdpZHRoOiAyMCU7XG4gICAgYm9yZGVyOiBub25lO1xuICAgIGNsZWFyOiBub25lO1xuICB9XG4gIC5ob3Jpem9udGFsUmVsYXRlZFByb2R1Y3RzIC5wcm9kdWN0V2lkZ2V0IGxpLndpZGdldEhlYWRlciB7XG4gICAgcGFkZGluZzogNXB4ICFpbXBvcnRhbnQ7XG4gICAgdGV4dC1hbGlnbjogbGVmdDtcbiAgICB3aWR0aDogYXV0bztcbiAgICBmbG9hdDogbm9uZTtcbiAgfVxufVxuXG4jUGF5bWVudEJ1dHRvbiBzcGFuIHtcbiAgZGlzcGxheTogYmxvY2s7XG4gIGZvbnQtc2l6ZTogMS40Mjg1N3JlbTtcbn1cblxuQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogNDcuOTM3NWVtKSB7XG4gIC5wYXN0ZUFyZWEge1xuICAgIG1hcmdpbi10b3A6IDAuNzE0MjlyZW07XG4gIH1cbn1cblxuLmlucHV0LWdyb3VwLWxhYmVsLnVuaXQtbGFiZWwge1xuICBib3JkZXI6IG5vbmU7XG4gIGJhY2tncm91bmQ6IG5vbmU7XG59XG5cbi8qIEN1c3RvbWl6ZSB0aGUgbGFiZWwgKHRoZSBjb250YWluZXIpICovXG4ucmFkaW8tY29udGFpbmVyIHtcbiAgZGlzcGxheTogYmxvY2s7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgcGFkZGluZy1sZWZ0OiAzNXB4O1xuICBtYXJnaW4tYm90dG9tOiAxMnB4O1xuICBjdXJzb3I6IHBvaW50ZXI7XG4gIGZvbnQtc2l6ZTogMTZweDtcbiAgLXdlYmtpdC11c2VyLXNlbGVjdDogbm9uZTtcbiAgLW1vei11c2VyLXNlbGVjdDogbm9uZTtcbiAgLW1zLXVzZXItc2VsZWN0OiBub25lO1xuICB1c2VyLXNlbGVjdDogbm9uZTtcbn1cblxuLyogSGlkZSB0aGUgYnJvd3NlcidzIGRlZmF1bHQgcmFkaW8gYnV0dG9uICovXG4ucmFkaW8tY29udGFpbmVyIGlucHV0IHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICBvcGFjaXR5OiAwO1xuICBjdXJzb3I6IHBvaW50ZXI7XG4gIGhlaWdodDogMDtcbiAgd2lkdGg6IDA7XG59XG5cbi8qIENyZWF0ZSBhIGN1c3RvbSByYWRpbyBidXR0b24gKi9cbi5jaGVja21hcmsge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHRvcDogMDtcbiAgbGVmdDogMDtcbiAgaGVpZ2h0OiAyMHB4O1xuICB3aWR0aDogMjBweDtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2VlZTtcbiAgYm9yZGVyLXJhZGl1czogMjUlO1xufVxuXG4vKiBPbiBtb3VzZS1vdmVyLCBhZGQgYSBncmV5IGJhY2tncm91bmQgY29sb3IgKi9cbi5yYWRpby1jb250YWluZXI6aG92ZXIgaW5wdXQgfiAuY2hlY2ttYXJrIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2NjYztcbn1cblxuLyogV2hlbiB0aGUgcmFkaW8gYnV0dG9uIGlzIGNoZWNrZWQsIGFkZCBhIGJsdWUgYmFja2dyb3VuZCAqL1xuLnJhZGlvLWNvbnRhaW5lciBpbnB1dDpjaGVja2VkIH4gLmNoZWNrbWFyayB7XG4gIGJhY2tncm91bmQtY29sb3I6IGRhcmtvcmFuZ2U7XG59XG5cbi8qIENyZWF0ZSB0aGUgaW5kaWNhdG9yICh0aGUgZG90L2NpcmNsZSAtIGhpZGRlbiB3aGVuIG5vdCBjaGVja2VkKSAqL1xuLmNoZWNrbWFyazphZnRlciB7XG4gIGNvbnRlbnQ6IFwiXCI7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgZGlzcGxheTogbm9uZTtcbn1cblxuLyogU2hvdyB0aGUgaW5kaWNhdG9yIChkb3QvY2lyY2xlKSB3aGVuIGNoZWNrZWQgKi9cbi5yYWRpby1jb250YWluZXIgaW5wdXQ6Y2hlY2tlZCB+IC5jaGVja21hcms6YWZ0ZXIge1xuICBkaXNwbGF5OiBibG9jaztcbn1cblxuLyogU3R5bGUgdGhlIGluZGljYXRvciAoZG90L2NpcmNsZSkgKi9cbi5yYWRpby1jb250YWluZXIgLmNoZWNrbWFyazphZnRlciB7XG4gIHRvcDogNnB4O1xuICBsZWZ0OiA2cHg7XG4gIHdpZHRoOiA4cHg7XG4gIGhlaWdodDogOHB4O1xuICBib3JkZXItcmFkaXVzOiA1MCU7XG4gIGJhY2tncm91bmQ6IHdoaXRlO1xufVxuXG46LW1zLWlucHV0LXBsYWNlaG9sZGVyIHtcbiAgY29sb3I6ICNjY2MgIWltcG9ydGFudDtcbiAgZm9udC13ZWlnaHQ6IDQwMCAhaW1wb3J0YW50O1xufVxuXG5zZWxlY3Qge1xuICAtd2Via2l0LWFwcGVhcmFuY2U6IG5vbmU7XG59XG5cbi5mYSB7XG4gIGZvbnQtZmFtaWx5OiBGb250QXdlc29tZSAhaW1wb3J0YW50O1xufVxuXG4vKkxvZ28qL1xuLnJhcGlkTG9nbyB7XG4gIHdpZHRoOiAxMTZweDtcbiAgaGVpZ2h0OiA0MHB4O1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIGJhY2tncm91bmQ6IHVybChcIi8vc3RhdGljLnJhcGlkb25saW5lLmNvbS9jc3Mvc3ByaXRlcy80LjcuMS9zcHJpdGUuc3ByaXRlLnBuZ1wiKSAtMjMxMnB4IC0xMHB4IG5vLXJlcGVhdDtcbn1cblxuQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAucmFwaWRMb2dvIHtcbiAgICB3aWR0aDogMTQ3cHg7XG4gICAgaGVpZ2h0OiAzOHB4O1xuICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICBiYWNrZ3JvdW5kOiB1cmwoXCIvL3N0YXRpYy5yYXBpZG9ubGluZS5jb20vY3NzL3Nwcml0ZXMvNC43LjEvc3ByaXRlLnNwcml0ZS5wbmdcIikgLTIxNTVweCAtMTBweCBuby1yZXBlYXQ7XG4gIH1cbn1cblxuLypFbmQgTG9nbyovXG4uaG9tZTNDb2wge1xuICBiYWNrZ3JvdW5kOiAjRUVFO1xuICBtYXJnaW4tdG9wOiAwLjcxNDI5cmVtO1xuICBtYXJnaW4tYm90dG9tOiAxLjQyODU3cmVtO1xufVxuXG4uaG9tZTNDb2wgLmhvbWUzQ29sU2VjdGlvbiB7XG4gIHBhZGRpbmc6IDEuMDcxNDNyZW0gMi4xNDI4NnJlbTtcbiAgbWFyZ2luOiAxLjA3MTQzcmVtIDA7XG4gIGJhY2tncm91bmQ6ICNmZWZlZmU7XG59XG5cbi5ob21lM0NvbCAuaG9tZTNDb2xTZWN0aW9uLnB1bmNob3V0LWNvbnRhY3Qge1xuICBwYWRkaW5nLWxlZnQ6IDFyZW07XG4gIHBhZGRpbmctcmlnaHQ6IDFyZW07XG59XG5cbi5ob21lM0NvbCAuaG9tZTNDb2xTZWN0aW9uIC5wdW5jaG91dF9jb250YWN0cy13cmFwIC5wdW5jaG91dF9jb250YWN0cy1pdGVtIHtcbiAgZGlzcGxheTogZmxleDtcbiAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcbiAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgbWFyZ2luLXRvcDogMXJlbTtcbn1cblxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgLmhvbWUzQ29sIC5ob21lM0NvbFNlY3Rpb24gLnB1bmNob3V0X2NvbnRhY3RzLXdyYXAgLnB1bmNob3V0X2NvbnRhY3RzLWl0ZW0ge1xuICAgIGZsZXgtZGlyZWN0aW9uOiByb3c7XG4gICAgYWxpZ24taXRlbXM6IGZsZXgtc3RhcnQ7XG4gIH1cbn1cblxuLmhvbWUzQ29sIC5ob21lM0NvbFNlY3Rpb24gLnB1bmNob3V0X2NvbnRhY3RzLXdyYXAgLnB1bmNob3V0X2NvbnRhY3RzLWl0ZW0gLnB1bmNob3V0X2NvbnRhY3QtaW1nIHtcbiAgd2lkdGg6IDUwJTtcbn1cblxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgLmhvbWUzQ29sIC5ob21lM0NvbFNlY3Rpb24gLnB1bmNob3V0X2NvbnRhY3RzLXdyYXAgLnB1bmNob3V0X2NvbnRhY3RzLWl0ZW0gLnB1bmNob3V0X2NvbnRhY3QtaW1nIHtcbiAgICB3aWR0aDogMzUlO1xuICB9XG59XG5cbi5ob21lM0NvbCAuaG9tZTNDb2xTZWN0aW9uIC5wdW5jaG91dF9jb250YWN0cy13cmFwIC5wdW5jaG91dF9jb250YWN0cy1pdGVtIC5wdW5jaG91dF9jb250YWN0LWRldGFpbHMge1xuICB3aWR0aDogMTAwJTtcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xuICBtYXJnaW4tdG9wOiAxcmVtO1xufVxuXG4uaG9tZTNDb2wgLmhvbWUzQ29sU2VjdGlvbiAucHVuY2hvdXRfY29udGFjdHMtd3JhcCAucHVuY2hvdXRfY29udGFjdHMtaXRlbSAucHVuY2hvdXRfY29udGFjdC1kZXRhaWxzIC5ncmV5LXRleHQge1xuICBmb250LXdlaWdodDogYm9sZGVyO1xufVxuXG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAuaG9tZTNDb2wgLmhvbWUzQ29sU2VjdGlvbiAucHVuY2hvdXRfY29udGFjdHMtd3JhcCAucHVuY2hvdXRfY29udGFjdHMtaXRlbSAucHVuY2hvdXRfY29udGFjdC1kZXRhaWxzIHtcbiAgICB0ZXh0LWFsaWduOiBsZWZ0O1xuICAgIG1hcmdpbi10b3A6IDA7XG4gICAgbWFyZ2luLWxlZnQ6IDFyZW07XG4gICAgd2lkdGg6IGNhbGMoNjUlIC0gMXJlbSk7XG4gIH1cbn1cblxuLmhvbWUzQ29sIHVsIHtcbiAgbGlzdC1zdHlsZS10eXBlOiBub25lO1xufVxuXG4uaG9tZTNDb2wgdWwgbGkge1xuICBmb250LXdlaWdodDogNzAwO1xuICBwYWRkaW5nOiAxMHB4IDA7XG4gIG1hcmdpbjogMjBweCAwO1xuICBmb250LXNpemU6IDE1cHg7XG4gIGxpbmUtaGVpZ2h0OiAyMHB4O1xuICBjb2xvcjogIzAwMDtcbiAgZGlzcGxheTogYmxvY2s7XG59XG5cbi5ob21lM0NvbCB1bCBhIHtcbiAgY29sb3I6ICMwMDA7XG4gIGZvbnQtc2l6ZTogMTVweDtcbiAgbGluZS1oZWlnaHQ6IDIwcHg7XG59XG5cbnVsLnJhcGlkQmVuZWZpdHMge1xuICBtYXJnaW4tbGVmdDogM3B4O1xufVxuXG51bC5yYXBpZEJlbmVmaXRzIGxpOmJlZm9yZSB7XG4gIGZvbnQtZmFtaWx5OiBGb250QXdlc29tZTtcbiAgbWFyZ2luOiAwIDNweCAwIC0ycHg7XG4gIGNvbnRlbnQ6IFwiXFxmMDBjXCI7XG4gIGNvbG9yOiAjMDYzYzdjO1xufVxuXG4uYmxhY2tMYXJnZUhlYWRpbmdIMSB7XG4gIG1hcmdpbi10b3A6IDAuNzE0MjlyZW07XG4gIGJhY2tncm91bmQ6ICMzMTMxMzE7XG4gIHBhZGRpbmc6IDEuMDcxNDNyZW07XG4gIGJvcmRlci1yYWRpdXM6IDRweDtcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xuICBjb2xvcjogI2ZlZmVmZTtcbn1cblxuLmJsYWNrTGFyZ2VIZWFkaW5nSDEgYSB7XG4gIGNvbG9yOiAjZmVmZWZlO1xufVxuXG4uYmxhY2tMYXJnZUhlYWRpbmdIMSBhOmhvdmVyIHtcbiAgdGV4dC1kZWNvcmF0aW9uOiB1bmRlcmxpbmU7XG59XG5cbi5ibGFja0xhcmdlSGVhZGluZyB7XG4gIGNvbG9yOiAjMDAwO1xuICBtYXJnaW46IDVweDtcbiAgbGluZS1oZWlnaHQ6IDI0cHg7XG4gIGZvbnQtc2l6ZTogMjBweDtcbiAgZm9udC13ZWlnaHQ6IDcwMDtcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xufVxuXG50YWJsZS5xdWlja09yZGVyV2lkZ2V0IHtcbiAgdGFibGUtbGF5b3V0OiBmaXhlZDtcbn1cblxudGFibGUucXVpY2tPcmRlcldpZGdldCB0Ym9keSwgdGFibGUucXVpY2tPcmRlcldpZGdldCB0Zm9vdCwgdGFibGUucXVpY2tPcmRlcldpZGdldCB0aGVhZCB7XG4gIGJvcmRlcjogbm9uZTtcbiAgYmFja2dyb3VuZDogbm9uZTtcbn1cblxudGFibGUucXVpY2tPcmRlcldpZGdldCB0Ym9keSB0ciB7XG4gIGJvcmRlci1ib3R0b206IDA7XG59XG5cbnRhYmxlLnF1aWNrT3JkZXJXaWRnZXQgdHIgdGQ6Zmlyc3QtY2hpbGQge1xuICB3aWR0aDogNjAlO1xufVxuXG50YWJsZS5xdWlja09yZGVyV2lkZ2V0IHRyIHRkOmZpcnN0LWNoaWxkIGlucHV0IHtcbiAgd2lkdGg6IDkwJTtcbn1cblxudGFibGUucXVpY2tPcmRlcldpZGdldCB0ZCB7XG4gIHBhZGRpbmc6IDBweDtcbn1cblxudGFibGUucXVpY2tPcmRlcldpZGdldCB0ZCBpbnB1dCB7XG4gIGJvcmRlcjogMXB4IHNvbGlkICNjY2M7XG4gIHBhZGRpbmc6IDVweDtcbiAgZm9udC1zaXplOiAxNHB4O1xuICBsaW5lLWhlaWdodDogMTZweDtcbn1cblxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQ4ZW0pIHtcbiAgLmhvbWVOZXdzU2VjdGlvbiB7XG4gICAgYm9yZGVyLXJpZ2h0OiAxcHggc29saWQgI2U4ZTVlNTtcbiAgfVxufVxuXG4uaG9tZU5ld3NTZWN0aW9uIGltZyB7XG4gIG1hcmdpbi1ib3R0b206IDAuNzE0MjlyZW07XG4gIG1hcmdpbi10b3A6IDAuMzU3MTRyZW07XG4gIGRpc3BsYXk6IGJsb2NrO1xufVxuXG4uc2VjdGlvbkhlYWRlciB7XG4gIG1hcmdpbi10b3A6IDEuMDcxNDNyZW07XG59XG5cbi5zZWN0aW9uSGVhZGVyIGEge1xuICBjb2xvcjogYmxhY2s7XG59XG5cbi5ob21lMkNvbCBpbWcge1xuICB3aWR0aDogMTAwJTtcbn1cblxuLmhvbWUtcmlnaHRBZHZlcnRzIGEge1xuICBkaXNwbGF5OiBibG9jaztcbn1cblxuLmhvbWUtcmlnaHRBZHZlcnRzIGE6Zmlyc3QtY2hpbGQge1xuICBtYXJnaW4tYm90dG9tOiAxLjQyODU3cmVtO1xufVxuIiwi77u/LypcblxuXG4gICBNYWdpYyAzNjAgdjQuNi44IFxuICAgQ29weXJpZ2h0IDIwMTcgTWFnaWMgVG9vbGJveFxuICAgQnV5IGEgbGljZW5zZTogaHR0cHM6Ly93d3cubWFnaWN0b29sYm94LmNvbS9tYWdpYzM2MC9cbiAgIExpY2Vuc2UgYWdyZWVtZW50OiBodHRwczovL3d3dy5tYWdpY3Rvb2xib3guY29tL2xpY2Vuc2UvXG5cblxuKi9cbkBmb250LWZhY2Uge1xuICAgIGZvbnQtZmFtaWx5OiAnbWFnaWMzNjAnO1xuICAgIGZvbnQtd2VpZ2h0OiBub3JtYWw7XG4gICAgZm9udC1zdHlsZTogbm9ybWFsO1xuICAgIHNyYzogdXJsKCcuLi9tYWdpYy10b29sYm94LWZvbnRzL21hZ2ljMzYwLmVvdD8jaWVmaXgnKSBmb3JtYXQoJ2VtYmVkZGVkLW9wZW50eXBlJyk7XG59XG5cbkBmb250LWZhY2Uge1xuICAgIGZvbnQtZmFtaWx5OiAnbWFnaWMzNjAnO1xuICAgIHNyYzogdXJsKCdkYXRhOmFwcGxpY2F0aW9uL29jdGV0LXN0cmVhbTtiYXNlNjQsZDA5R1JnQUJBQUFBQUE1SUFBOEFBQUFBR1ZBQUFRQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUJIVTFWQ0FBQUJXQUFBQURNQUFBQkNzUDZ6N1U5VEx6SUFBQUdNQUFBQVF3QUFBRlkrSUVrRlkyMWhjQUFBQWRBQUFBQ0FBQUFDQ3FtMTdTdGpkblFnQUFBQ1VBQUFBQW9BQUFBS0FBQUFBR1p3WjIwQUFBSmNBQUFGbEFBQUMzQ0lrSkJaWjJGemNBQUFCL0FBQUFBSUFBQUFDQUFBQUJCbmJIbG1BQUFIK0FBQUExc0FBQVVnUVgvaDhXaGxZV1FBQUF0VUFBQUFNQUFBQURZSlBhb1ZhR2hsWVFBQUM0UUFBQUFkQUFBQUpBYzlBMTlvYlhSNEFBQUxwQUFBQUI4QUFBQTBMSFVBQUd4dlkyRUFBQXZFQUFBQUhBQUFBQndIcmdqMmJXRjRjQUFBQytBQUFBQWdBQUFBSUFDakM3TnVZVzFsQUFBTUFBQUFBWGNBQUFMTnpKMGNIbkJ2YzNRQUFBMTRBQUFBWndBQUFPMHQ3UlBGY0hKbGNBQUFEZUFBQUFCbEFBQUFlOTFyQTRWNG5HTmdaR0JnNEdLUVk5QmhZSFJ4OHdsaDRHQmdZWUFBa0F4alRtWjZJbEFNeWdQS3NZQnBEaUJtZzRnQ0FJb2pBMDhBZUp4allHVE9acHpBd01yQXdGVEZ0SWVCZ2FFSFFqTStZREJrWkFLS01yQXlNMkFGQVdtdUtRd09MeGhlY0RNSC9jOWlpR0lPWXBnR0ZHWUV5UUVBNHFnTG93QjRuTzJSM1EwQ01ReUR2M0xoK0xtT3dnQU14Qk5UTVo2M09KeGNKSmFnMG1jcGJ0b0hHemdEaTNtWWdQRm1rT2RsZDVTL2NDOC9lTlpPcEs5dDM2MmtlbzdTazNmRFA2NWN1SEx6dTQzcGk1WC9tYVdmM3lRT0tzM0dDYUltVzFHVCthckp4dFE0YWRRNGM5UTRmZFM0QjlSa2sycmNqVnM4WUg0QnM4QWZjUUFBQUFBQUFBQUFBQUFBQUhpY3JWWnBjeE5IRUozVlljczJQb0lQRWphQldjWnlqSFpXbU1zSUVNYnNTaGJnSFBLVjdFS09YVXQyN290UC9BYjltbDZSVkpGdi9MUzhIaDNZWUNkVlZDaEsvYWIzN1V6MzY1NWVrOUNTeEY1WWo2VGNmQ21tdGpacFpPZEpTRGRzV283aVE5blpDeWxUVFA0dWlJSm90ZFMrN1Rna0loS0JxbldGSllMWTk4alNKT05EanpKYXRpVzlhbEp1NlVsMzJSb1A2cTM2OXRQUVVZN2RDU1UxbTZGRDY1RXRxY0tvRWtVeTdaR1NOaTNEMVY5Sld1SG5LOHg4MVF3bGd1Z2trc2FiWVF5UDVHZmpqRllacmNaMkhFV1JUWlliUllwRU16eUlJbyt5V21LZlhERkJRUG1nR1ZKZStUU2lmSVFma1JWN2xOTUtjY2wybXQvM0pUL3BIYzYvSk9KNmk3SWxCLzVBZG1RSGU2Y3IrU0xTMmdyanBwMXNSNkdLOEhSOUo4UWptNVBxbit4Ulh0Tm80SFpGcGlmTkNKYktWNUJZK1FsbDlnL0phdUY4eXBjOEd0V1NnNXdJV2k5ellsL3lEclFlUjB5SmF5YklndTZPVG9pZzdwZWNvZGhqK3JqNDQ3MWRMQmNoQk1nNGx2V09TcmdRUmlsaHM1b2tiUVE1aUpLeVJaWFVla2RNblBJNkxlSXRZYjlPN2VoTFo3UkpxRHN4bnEySGpxMmNxT1I0TktuVFRLWk83YVRtMFpRR1VVbzZFenptMXdHVUg5RWtyN2F4bXNUS28ybHNNMk1ra1ZDZ2hYTnBLb2hsSjVZMEJkRThtdEdidTJHYWE5ZWlSWm84VU04OWVrOXZib1diT3oybjdjQS9hL3huZFNxbWc3MHduWjRPeUVwOG1uYTVTZEc2Zm5xR2Z5YnhROVlDS3BFdE5zT1V4VU8yZmdmbDVXTkxqc0pyQTJ6M252TXI2SDMyUk1pa2dmZ2I4QjR2MVNrRlRJV1lWVkFMM2JUV3RTekwxR3BXaTFSazZyc2hUU3RmMW1rQ1RUa09mV05meGpqK3I1a1pTMHdKMysvRTZka1JsNTY1OWlYSU5JZmNabDJQNW5WcXNWMkF6bXpQNlRUTDluMmQ1dGgrb05NODIvTTZIV0ZyNjNTVTdZYzZMYkQ5U0tkamJDOW9RWlB1T3dSeUVZRmN3QVlTZ2JCMUVBamJTd2lFclVJZ2JCY1JDTnNpQW1HN2hFRFlmb3hBMkM0akVMYVh0YXlhZmlwcEhEc1R5d0JGaUFPak9lN0laVzRxVjFQSnBSS3VpMGFuTnVRcGNxdWtvbmhXL1NzRC9lS1JONnlCdFVDNlJOYjhpa211ZkZTVjQ0K3VhSG5UeExrQ2psVi9lM05jbnhNUFpiOVkrRlB3djlxYXFxUlhySGxrY2hWNUk5Q1Q0MFRYSmhXUHJ1bnl1YXBIMS8rTGlnNXJnWDREcFJBTFJWbVdEYjZaa1BCUnA5TlFEVnpsRURNYk13L1g5YnBsemMvaC9Kc1lJUXZvZnZ3M0ZCb0wzSU5PV1VsWjdXQ3YxZGVQWmJtM0IrV3dKMWlTWXI3TTYxdmhpNHpNU3Z0RlppbDdQdko1d0JVd0twVmhxdzFjcmVETmV4THprT2xOOGt3UXR4VmxnNlNOeDVrZ3NZRmpIakJ2dnBNZ0pFeGR0WUhhS1p5d2dieGd6Q25ZNzRSRFZHK1U1WEI3b1gwZWpaUi9hMWZzeUJrVlRSRDRiZlpHMk91elVQSmJySUdFSjcvVTEwQlZJVTNGdUttQVN5UGxobXJ3WVZ5dDIwWXlUcUN2cU5nTnk3S0tEeDlIM0hkS2ptVWcrVWdScTBkSFA2MjlRcDNVdWYzS0tHN2ZPLzBJZ2tGcFl2NzJ2cG5pb0pSM3RaSmxWbTBEVTdjYWxWUFhtc1BGcXc3ZHphUHVlOGZaSjNMV05OMTBUOXowdnFaVnQ0T0R1VmtRN2RzY2xLVk1McWpyd3c0YnFNdk5wZERxWlZ5UzNuWVBNQ3d3b04raEZSdi9WL2R4K0R4WHFncWo0MGk5bmFnZm84OWlEUElQT0g5SDlRWG81ekZNdVlhVTUzdVhFNTl1M01QWk1sM0ZYYXlmNHQvQXJMWG1adWthY0VQVERaaUhyRm9kdXNvTmZLY0dPajNTM0k3MEVQQ3g3Z3J4QUdBVHdHTHdpZTVheHZNcGdQRjh4aHdmNEhQbU1HZ3loOEVXY3hoc00yY05ZSWM1REhhWncyQ1BPUXkrWU00NndKZk1ZUkF5aDBIRUhBWlBtQk1BUEdVT2c2K1l3K0JyNWpENGhqbjNBYjVsRG9PWU9Rd1M1akRZMTNScktIT0xGM1FYcUcxUUZlakE5Qk1XOTdBNDFGUVpzci9qaFdGL2J4Q3pmekNJcVQ5cXVqMmsvc1FMUS8zWklLYitZaEJUZjlWMFowajlqUmVHK3J0QlRQM0RJS1krMHkvR2NwbkJYMGErUzRVRHlpNDJuL1AzeFBzSHdocEF0Z0FCQUFILy93QVBlSnlGbE05dkUwY1V4K2ZOWkhjVGg5aFp2TjRGUVVtY0NDOVNDSzdJajVVQU5Za2pGWnNEYTNOQ0hOR0tIK0ZBU1RnZ0JONTF5QUgxUW1TdElFS1Jta3VyWGlvMWFrdXlFUWdPdWRqY0xBNVZRWVFlaWhCL0FpSUxiMlp0Zmltb2wza3piOTU4UDkvWm1WbENDWG4zaE8yZ3I0bE11a2o3WHpHbGpkREJBVWlycG1KYVlDaEdXalhnR1J4eHFzNUN1T1FzWEEzWEhmbzZYTCsyNEZURFh6QUxSNjRTUXJqT0lwdGp2VTJkcmc0SlVNY3loUkFJR1d0eEN2YmhDalozOTF6NGp6TmZkY0svcHhZZGVuL2VnY3k1dTZRTk5YNWl0OWczUWtNanUwalhlRXhQYmUvZXBsQm9HeHpZYTZscEMwMHBobUlxYWxNVGhGR1RkYnZoc3VmWllhUGlGY3NlMkpVS0g5UHJybWU3M2tVdi9IM1d0ZWtCMXkxNkZiQTNiN2l6VU1UcEErRXkxcnZ1LzdNVk5ZMWNRTDVocVJEdEM1Q1BYNGcrUXA3cjJtOGJubXVYQlJmNUxteDQzdkd5bStha2lrMnpsYkpkUnBOaGI0VzdtYVZaWElTcHl0YnNYVVl5MGRVaFU3SHZWTC9ZOThnUXQyQU9wWERMVERINlJ3eUxIYzF2NUZmdHpjY2l3RXNSTmxaNXNQSXY4b0VOZDZJWlJZVHdSb0RaVmJJMWMyZEs2MjR4V3pEY2JnS1lKYURBaVlaQ2IwYk1tL2ZzbFFJOC8wSFE2TU1YaFJWNzVTVDJBNXRlV2JIdmZmOGN3dDZBajJuMjN6eldrdVk5V1dhbldDZlpRYjdGZXpLWTF0cjVmZE1TWU9pYXJQVDNaY3lSNGUrZ0I2elJnejJnUTBxTFF4WVV1UzhMbWVFeE1EUERvOWJRUVIxK2xvSmlURXU4U1dpZzcrNHNCbkpjSHBmZ1Q2MjNvOW1YMWtwaVhnZXBYUXBLc1QxWUdNZHl1ZzBMNURFWm5uNHlpTXZOaXBiSGdKMWdqQmpDNC82ZXBQQ1kwdVRNRjFZT0ExcHBlaCtBdm93MU1qeXFmL0QrR3pvckJWSzNOQ2JMUWJFVDhYRTAvckdyN1ltVnVGazBjd2pIdEtPMEprbmpXSThWdTNVZHppdHkxSXQvTWl2T0RrMWVvUDduOTBXTnh4Ukc4T3lTWm5SNGhyZ2llMDF4ZUdwMGlkWXVGUnI1bWNuSm1YeWpBR2NtZU9DSkNiaHp1ZEFvelB5Um04Yk1meE16bUF4L3hXWTYxK0xOMGFXdjhReWhuWXhBRUdIVnlFTnVtc3ZuY29KMzZ5T1BMbDAraG5IendTUTNSRlV4RTU3RzV0Sms2d3ltMkN0MjRzUC9oUEgvVWlwNmNjbm8vZm4xK1pvL1VmTWg4T3Uzc2FuTjEzMzZZOTBQai9xMUxUUmlpa3k1eG1lUGw2K3UxdUJzdFY2dCtXMzFLbDhMYjdnWVpzaDdmd05OcmdCNG5HTmdaR0JnQU9JOWZnSzE4ZncyWHhtNG1WOEFSUmd1U3h0Ykllai9XY3d2bUlPQVhBNEdKcEFvQUJSMUNaaDRuR05nWkdCZ0R2cWZCU1JmTUREOC93OGtnU0lvZ0JjQWg5WUZvZ0FBQUhpY1kzN0J3TUFzQWNRdFFMd0FEVWRDTUZNMkVJUGtYMEF3QU1OREI1c0FBQUFBQUFBa0FFWUFoQURDQVB3Qk9BR0tBZG9DRWdKTUFtNENrQUFCQUFBQURRQXhBQVFBQUFBQUFBSUFBQUFRQUhNQUFBQWVDM0FBQUFBQWVKeDFrTXRPd2tBVWh2K1Jpd3FKR2szY09pc0RNWlpMSWdzU0VoSU1iSFJEREZ0VFNtbExTb2RNQnhKZXczZndZWHdKbjhXZmRqQUdZcHZwZk9lYk0yZE9COEExdmlHUVAwOGNPUXVjTWNyNUJLZm9XUzdRUDFzdWtsOHNsMURGbStVeS9idmxDaDRRV0s3aUJoK3NJSXJuakJiNHRDeHdKUzR0bitCQzNGa3UwRDlhTHBKN2xrdTRGYStXeS9TZTVRb21JclZjeGIzNEdxalZWa2RCYUdSdFVKZnRacXNqcDF1cHFLTEVqYVc3TnFIU3Flekx1VXFNSDhmSzhkUnl6Mk0vV01ldTNvZjdlZUxyTkZLSmJEbk52UnI1aWE5ZDQ4OTIxZE5OMERabUx1ZGFMZVhRWnNpVlZndmZNMDVvektyYmFQdzlEd01vckxDRlJzU3JDbUVnVWFPdGMyNmppUlk2cENrekpEUHpyQWdKWE1RMEx0YmNFV1lyS2VNK3g1eFJRdXN6SXlZNzhQaGRIdmt4S2VEK21GWDAwZXBoUENIdHpvZ3lMOW1Ydys0T3MwYWtKTXQwTXp2NzdUM0ZocWUxYVExMzdiclVXVmNTdzRNYWt2ZXhXMXZRZVBST2RpdUd0b3NHMzMvKzd3ZmphWVJQQUhpY2JjdzdDb0F3RUFUUUhmKy9SQytTSW9rWHNsQVExc1pvNCtrVnRNaUNVdzM3bUtXRTNqVDBINFVFS1RMa0tGQ2lRbzBHTFRvb2FHcjNPYXpYYkphVFdYODliQk96c1NvaVk3c1krNWdtUGdheGZBNWk2K1JqSjlCTDlBSkhpU1BSRFZvTFBzVUFlSnhqOE43QmNDSW9ZaU1qWTEva0JzYWRIQXdjRE1rRkd4bFluVFl5TUdoQmFBNFVlaWNEQXdNbk1vdVp3V1dqQ21OSFlNUUdoNDZJamN3cExodlZRTHhkSEEwTWpDd09IY2toRVNBbGtVQ3drWUZIYXdmai85WU5MTDBibVJoY0FBZlRJcmdBQUFBPScpIGZvcm1hdCgnd29mZicpLCB1cmwoJ2RhdGE6YXBwbGljYXRpb24vb2N0ZXQtc3RyZWFtO2Jhc2U2NCxBQUVBQUFBUEFJQUFBd0J3UjFOVlFyRCtzKzBBQUFEOEFBQUFRazlUTHpJK0lFa0ZBQUFCUUFBQUFGWmpiV0Z3cWJYdEt3QUFBWmdBQUFJS1kzWjBJQUFBQUFBQUFBMVlBQUFBQ21ad1oyMklrSkJaQUFBTlpBQUFDM0JuWVhOd0FBQUFFQUFBRFZBQUFBQUlaMng1WmtGLzRmRUFBQU9rQUFBRklHaGxZV1FKUGFvVkFBQUl4QUFBQURab2FHVmhCejBEWHdBQUNQd0FBQUFrYUcxMGVDeDFBQUFBQUFrZ0FBQUFOR3h2WTJFSHJnajJBQUFKVkFBQUFCeHRZWGh3QUtNTHN3QUFDWEFBQUFBZ2JtRnRaY3lkSEI0QUFBbVFBQUFDelhCdmMzUXQ3UlBGQUFBTVlBQUFBTzF3Y21WdzNXc0RoUUFBR05RQUFBQjdBQUVBQUFBS0FCNEFMQUFCUkVaTVZBQUlBQVFBQUFBQUFBQUFBUUFBQUFGc2FXZGhBQWdBQUFBQkFBQUFBUUFFQUFRQUFBQUJBQWdBQVFBR0FBQUFBUUFBQUFBQUFRTnJBWkFBQlFBQUFub0N2QUFBQUl3Q2VnSzhBQUFCNEFBeEFRSUFBQUlBQlFNQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFVR1pGWkFCQTZBRG9Dd05TLzJvQVdnTlNBSllBQUFBQkFBQUFBQUFBQUFBQUJRQUFBQU1BQUFBc0FBQUFCQUFBQVdvQUFRQUFBQUFBWkFBREFBRUFBQUFzQUFNQUNnQUFBV29BQkFBNEFBQUFCQUFFQUFFQUFPZ0wvLzhBQU9nQS8vOEFBQUFCQUFRQUFBQUJBQUlBQXdBRUFBVUFCZ0FIQUFnQUNRQUtBQXNBREFBQUFRWUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQURBQUFBQUFBb0FBQUFBQUFBQUFNQUFEb0FBQUE2QUFBQUFBQkFBRG9BUUFBNkFFQUFBQUNBQURvQWdBQTZBSUFBQUFEQUFEb0F3QUE2QU1BQUFBRUFBRG9CQUFBNkFRQUFBQUZBQURvQlFBQTZBVUFBQUFHQUFEb0JnQUE2QVlBQUFBSEFBRG9Cd0FBNkFjQUFBQUlBQURvQ0FBQTZBZ0FBQUFKQUFEb0NRQUE2QWtBQUFBS0FBRG9DZ0FBNkFvQUFBQUxBQURvQ3dBQTZBc0FBQUFNQUFBQUFnQUEvOVFER0FMcUFBWUFEUUFJdFFvSEJBQUNMU3NCSVJFbkJ5YzNBUmNIRnlFUkZ3SGNBVHhra21TWS9xQmttSHIreEdRQzZ2N0VmSmhra3Y2bVpKSmtBVHg2QUFBQUFnQUEvNXdEaEFNZ0FBWUFEUUFJdFEwSkJRRUNMU3MzSnlFUkp3Y25BUWNYSVJFWE41eHFBU2hra21RRGhKcG8vdHBra0pKay90aHFuR1FDdkpCa0FTWm9tZ0FFQUFEL253T1BBeDBBQmdBTkFCUUFHd0FOUUFvV0ZSSVFEQWNDQVFRdEt5VTNFU0UzSnpjQkJ4Y0hKd2NSQVFjWElSRVhOd0VSSndjbk55Y0RFSC8rc1lDQVQvN1NnWUJRZm9BQlQ0R0IvckdBZ0FKOWY0QlBmNEJ2Z1A2d2duOVBBaTUvZjFDQWdRRlAvWU4vZ2dGUWdJQUNMdjZ4Z1lCUWYzOEFCQUFBLzU4RGp3TWRBQVlBRFFBVUFCc0FEVUFLRmhVU0VBd0hBZ0VFTFNzbEJ4RWhCeGNIQVRjbk54YzNFUUUzSnlFUkp3Y0JFUmMzRndjWEFzQ0FBVTkvZjAvODBvQi9UMzZCL3JHQWdBRlBnWDhCMzRDQVRuNS9JWUlCVUlDQlR3SXZnWDVQZm4vK3NmNGdnWUQrc0lLQ0FpOEJUMzkrVDM2QkFBUUFBUCtmQTQ4REhRQUdBQTBBRkFBYkFBMUFDaHNYRXc4TkNRWUNCQzBySlRjVkl6Y25Od0VITlRNSEZ3Y0JKek1WSndjbkF3Y1hJelVYTndOSFNOOUl1RS85eTBqZlNMaFBBZVpJMzBpNFQ5KzRTTjlJdURkSTRFaTVUd0dYU045SXVFOEJCMGpmU0xoUC9vTzVTT0JJdUFBQUJBQUEvNThEandNZEFBWUFEUUFVQUJzQURVQUtHUlVVRUEwSkJnSUVMU3NsQnpVekJ4Y0hBU2MzRnpjUEFRTTNKek1WSndjQkl6VVhOeGNIQW9oSTMwaTRULzJJdGsrM1NRSGVjTGhJMzBpNEFyL2dTYmRQdDFoSTMwaTVUd0o0dDArMlJ0NEIvaUM1U045SXVRSXY0VWkyVDdjQUFBQUFBZ0FBLzdFRFdnTUxBQmdBTUFBSXRTMGhGQWdDTFNzQkZBOEJGeFlVQmdjaklpWW5OVFErQVI4Qk56WXlId0VXQVJVVURnRXZBUWNHSWk4QkpqUS9BU2NtTkRZM016SVdBYVVGdVZBS0ZBLzZEeFFCRmh3TFVMa0dEZ1pBQlFHMEZDQUpVTGtHRGdaQUJRVzZVUW9VRC9vUEZnRUZDQVc1VVFvZUZBRVdEdm9QRkFJTVVMa0dCajhHQWR2NkR4UUNERkM1QmdZL0JnNEd1VkVLSGhRQkZnQUFBQUFDQUFEL3VRTlNBd01BRndBd0FBaTFMQjhUQ0FJdEt3RVZGQVltTHdFSEJpSXZBU1kwUHdFbkpqUTJPd0V5RmdFVUR3RVhGaFFHS3dFaUpqYzFORFlXSHdFM05qSWZBUllCclJZY0MxRzVCUkFGUHdZR3VWQUxGZzc2RGhZQnBRYTVVQXNXRHZvT0ZnRVVIZ3BSdVFZT0JqOEdBVHI2RGhZQ0NWRzZCUVZBQlJBRnVWQUxIQllXQVdrSEJybFFDeHdXRmc3NkRoWUNDVkc2QlFWQUJRQUFCQUFBQUFBQ2F3S1VBQVlBRFFBVUFCc0FEVUFLR3hjUkRnb0hBd0FFTFNzVEp3YzFNd2NYQnhjSEZ5TTFGeVVuTnljekZTY1JOeFVqTnljM3VuRkowa2h6UTBOelNOSkpBV1pCYzBqU1NVblNTSE5CQVpkMFNkSkpjN05DY2tqU1NlVkJjMG5TU1A2b1NkSklja0lBQUFRQUFBQUFBb1FDb0FBR0FBMEFGQUFiQUExQUNoc1hFUTRLQndNQUJDMHJFeGMzRlNNM0p4TW5OeWN6RlNjQkZ3Y1hJelVYRVFjMU13Y1hCMEp5U2RKSWMwSkNjMGpTU1FHUFFYTkkwa2xKMGtoelFRS2dkRXJTU0hQOXZVTnhTZEpJQWhGQmMwalNTZjVpU05KSmNVTUFBQUFBQWdBQS8yb0Q2QU5TQUFZQURRQUl0UTBKQXdBQ0xTc1ZFUmMzRndjWEV6Y25JUkVuQjVUS2tNbVVRY21VQWJtVXlwWUJ1WlRKa01xVUFvcktsUDVIbE1rQUFBQUNBQUQvYWdQb0ExSUFCZ0FOQUFpMUNnY0dBZ0l0S3hVM0p5RVJKd2NCRVJjM0Z3Y1h5WlFCdVpMSkFXZVN5cExKbEFUS2t2NUhsTWtCK2dHNWxNbVN5cElBQUFFQUFBQUJBQUM4VGhCOVh3ODg5UUFMQStnQUFBQUEweHN6T2dBQUFBRFRHek02QUFEL2FnUG9BMUlBQUFBSUFBSUFBQUFBQUFBQUFRQUFBMUwvYWdBQUErZ0FBUC8vQStnQUFRQUFBQUFBQUFBQUFBQUFBQUFBQUEwRDZBQUFBeGdBQUFPRUFBQURvQUFBQTZBQUFBT2dBQUFEb0FBQUExa0FBQU5aQUFBQ2F3QUFBb1FBQUFQb0FBQUQ2QUFBQUFBQUFBQWtBRVlBaEFEQ0FQd0JPQUdLQWRvQ0VnSk1BbTRDa0FBQkFBQUFEUUF4QUFRQUFBQUFBQUlBQUFBUUFITUFBQUFlQzNBQUFBQUFBQUFBRWdEZUFBRUFBQUFBQUFBQU5RQUFBQUVBQUFBQUFBRUFDQUExQUFFQUFBQUFBQUlBQndBOUFBRUFBQUFBQUFNQUNBQkVBQUVBQUFBQUFBUUFDQUJNQUFFQUFBQUFBQVVBQ3dCVUFBRUFBQUFBQUFZQUNBQmZBQUVBQUFBQUFBb0FLd0JuQUFFQUFBQUFBQXNBRXdDU0FBTUFBUVFKQUFBQWFnQ2xBQU1BQVFRSkFBRUFFQUVQQUFNQUFRUUpBQUlBRGdFZkFBTUFBUVFKQUFNQUVBRXRBQU1BQVFRSkFBUUFFQUU5QUFNQUFRUUpBQVVBRmdGTkFBTUFBUVFKQUFZQUVBRmpBQU1BQVFRSkFBb0FWZ0Z6QUFNQUFRUUpBQXNBSmdISlEyOXdlWEpwWjJoMElDaERLU0F5TURFMklHSjVJRzl5YVdkcGJtRnNJR0YxZEdodmNuTWdRQ0JtYjI1MFpXeHNieTVqYjIxbWIyNTBaV3hzYjFKbFozVnNZWEptYjI1MFpXeHNiMlp2Ym5SbGJHeHZWbVZ5YzJsdmJpQXhMakJtYjI1MFpXeHNiMGRsYm1WeVlYUmxaQ0JpZVNCemRtY3lkSFJtSUdaeWIyMGdSbTl1ZEdWc2JHOGdjSEp2YW1WamRDNW9kSFJ3T2k4dlptOXVkR1ZzYkc4dVkyOXRBRU1BYndCd0FIa0FjZ0JwQUdjQWFBQjBBQ0FBS0FCREFDa0FJQUF5QURBQU1RQTJBQ0FBWWdCNUFDQUFid0J5QUdrQVp3QnBBRzRBWVFCc0FDQUFZUUIxQUhRQWFBQnZBSElBY3dBZ0FFQUFJQUJtQUc4QWJnQjBBR1VBYkFCc0FHOEFMZ0JqQUc4QWJRQm1BRzhBYmdCMEFHVUFiQUJzQUc4QVVnQmxBR2NBZFFCc0FHRUFjZ0JtQUc4QWJnQjBBR1VBYkFCc0FHOEFaZ0J2QUc0QWRBQmxBR3dBYkFCdkFGWUFaUUJ5QUhNQWFRQnZBRzRBSUFBeEFDNEFNQUJtQUc4QWJnQjBBR1VBYkFCc0FHOEFSd0JsQUc0QVpRQnlBR0VBZEFCbEFHUUFJQUJpQUhrQUlBQnpBSFlBWndBeUFIUUFkQUJtQUNBQVpnQnlBRzhBYlFBZ0FFWUFid0J1QUhRQVpRQnNBR3dBYndBZ0FIQUFjZ0J2QUdvQVpRQmpBSFFBTGdCb0FIUUFkQUJ3QURvQUx3QXZBR1lBYndCdUFIUUFaUUJzQUd3QWJ3QXVBR01BYndCdEFBQUFBQUlBQUFBQUFBQUFDZ0FBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQURRRUNBUU1CQkFFRkFRWUJCd0VJQVFrQkNnRUxBUXdCRFFFT0FBdHlaWE5wZW1VdFpuVnNiQTV5WlhOcGVtVXRjMjFoYkd3dE1RMXlaWE5wZW1VdFpuVnNiQzB4REhKbGMybDZaUzF6YldGc2JBOXlaWE5wZW1VdFpuVnNiQzFoYkhRUWNtVnphWHBsTFhOdFlXeHNMV0ZzZEExeVpYTnBlbVV0Wm5Wc2JDMHlEbkpsYzJsNlpTMXpiV0ZzYkMweURYSmxjMmw2WlMxbWRXeHNMVE1PY21WemFYcGxMWE50WVd4c0xUTU5jbVZ6YVhwbExXWjFiR3d0TkE1eVpYTnBlbVV0YzIxaGJHd3ROQUFBQUFBQUFBRUFBZi8vQUE4QUFBQUFBQUFBQUFBQUFBQ3dBQ3dnc0FCVldFVlpJQ0JMdUFBT1VVdXdCbE5hV0xBMEc3QW9XV0JtSUlwVldMQUNKV0c1Q0FBSUFHTmpJMkliSVNHd0FGbXdBRU1qUkxJQUFRQkRZRUl0c0FFc3NDQmdaaTJ3QWl3Z1pDQ3d3RkN3QkNaYXNpZ0JDa05GWTBWU1cxZ2hJeUViaWxnZ3NGQlFXQ0d3UUZrYklMQTRVRmdoc0RoWldTQ3hBUXBEUldORllXU3dLRkJZSWJFQkNrTkZZMFVnc0RCUVdDR3dNRmtiSUxEQVVGZ2daaUNLaW1FZ3NBcFFXR0FiSUxBZ1VGZ2hzQXBnR3lDd05sQllJYkEyWUJ0Z1dWbFpHN0FCSzFsWkk3QUFVRmhsV1ZrdHNBTXNJRVVnc0FRbFlXUWdzQVZEVUZpd0JTTkNzQVlqUWhzaElWbXdBV0F0c0FRc0l5RWpJU0Jrc1FWaVFpQ3dCaU5Dc1FFS1EwVmpzUUVLUTdBQVlFVmpzQU1xSVNDd0JrTWdpaUNLc0FFcnNUQUZKYkFFSmxGWVlGQWJZVkpaV0NOWklTQ3dRRk5Zc0FFckd5R3dRRmtqc0FCUVdHVlpMYkFGTExBSFF5dXlBQUlBUTJCQ0xiQUdMTEFISTBJaklMQUFJMEpoc0FKaVpyQUJZN0FCWUxBRktpMndCeXdnSUVVZ3NBdERZN2dFQUdJZ3NBQlFXTEJBWUZsbXNBRmpZRVN3QVdBdHNBZ3NzZ2NMQUVORlFpb2hzZ0FCQUVOZ1FpMndDU3l3QUVNalJMSUFBUUJEWUVJdHNBb3NJQ0JGSUxBQkt5T3dBRU93QkNWZ0lFV0tJMkVnWkNDd0lGQllJYkFBRzdBd1VGaXdJQnV3UUZsWkk3QUFVRmhsV2JBREpTTmhSRVN3QVdBdHNBc3NJQ0JGSUxBQkt5T3dBRU93QkNWZ0lFV0tJMkVnWkxBa1VGaXdBQnV3UUZranNBQlFXR1Zac0FNbEkyRkVSTEFCWUMyd0RDd2dzQUFqUXJJTENnTkZXQ0ViSXlGWktpRXRzQTBzc1FJQ1JiQmtZVVF0c0E0c3NBRmdJQ0N3REVOS3NBQlFXQ0N3RENOQ1diQU5RMHF3QUZKWUlMQU5JMEpaTGJBUExDQ3dFR0ptc0FGaklMZ0VBR09LSTJHd0RrTmdJSXBnSUxBT0kwSWpMYkFRTEV0VVdMRUVaRVJaSkxBTlpTTjRMYkFSTEV0UldFdFRXTEVFWkVSWkd5RlpKTEFUWlNONExiQVNMTEVBRDBOVldMRVBEME93QVdGQ3NBOHJXYkFBUTdBQ0pVS3hEQUlsUXJFTkFpVkNzQUVXSXlDd0F5VlFXTEVCQUVOZ3NBUWxRb3FLSUlvalliQU9LaUVqc0FGaElJb2pZYkFPS2lFYnNRRUFRMkN3QWlWQ3NBSWxZYkFPS2lGWnNBeERSN0FOUTBkZ3NBSmlJTEFBVUZpd1FHQlpackFCWXlDd0MwTmp1QVFBWWlDd0FGQllzRUJnV1dhd0FXTmdzUUFBRXlORXNBRkRzQUErc2dFQkFVTmdRaTJ3RXl3QXNRQUNSVlJZc0E4alFpQkZzQXNqUXJBS0k3QUFZRUlnWUxBQlliVVFFQUVBRGdCQ1FvcGdzUklHSzdCeUt4c2lXUzJ3RkN5eEFCTXJMYkFWTExFQkV5c3RzQllzc1FJVEt5MndGeXl4QXhNckxiQVlMTEVFRXlzdHNCa3NzUVVUS3kyd0dpeXhCaE1yTGJBYkxMRUhFeXN0c0J3c3NRZ1RLeTJ3SFN5eENSTXJMYkFlTEFDd0RTdXhBQUpGVkZpd0R5TkNJRVd3Q3lOQ3NBb2pzQUJnUWlCZ3NBRmh0UkFRQVFBT0FFSkNpbUN4RWdZcnNISXJHeUpaTGJBZkxMRUFIaXN0c0NBc3NRRWVLeTJ3SVN5eEFoNHJMYkFpTExFREhpc3RzQ01zc1FRZUt5MndKQ3l4QlI0ckxiQWxMTEVHSGlzdHNDWXNzUWNlS3kyd0p5eXhDQjRyTGJBb0xMRUpIaXN0c0Nrc0lEeXdBV0F0c0Nvc0lHQ3dFR0FnUXlPd0FXQkRzQUlsWWJBQllMQXBLaUV0c0Nzc3NDb3JzQ29xTGJBc0xDQWdSeUFnc0F0RFk3Z0VBR0lnc0FCUVdMQkFZRmxtc0FGallDTmhPQ01naWxWWUlFY2dJTEFMUTJPNEJBQmlJTEFBVUZpd1FHQlpackFCWTJBallUZ2JJVmt0c0Mwc0FMRUFBa1ZVV0xBQkZyQXNLckFCRlRBYklsa3RzQzRzQUxBTks3RUFBa1ZVV0xBQkZyQXNLckFCRlRBYklsa3RzQzhzSURXd0FXQXRzREFzQUxBQlJXTzRCQUJpSUxBQVVGaXdRR0JaWnJBQlk3QUJLN0FMUTJPNEJBQmlJTEFBVUZpd1FHQlpackFCWTdBQks3QUFGclFBQUFBQUFFUStJeml4THdFVktpMndNU3dnUENCSElMQUxRMk80QkFCaUlMQUFVRml3UUdCWlpyQUJZMkN3QUVOaE9DMndNaXd1Rnp3dHNETXNJRHdnUnlDd0MwTmp1QVFBWWlDd0FGQllzRUJnV1dhd0FXTmdzQUJEWWJBQlEyTTRMYkEwTExFQ0FCWWxJQzRnUjdBQUkwS3dBaVZKaW9wSEkwY2pZU0JZWWhzaFdiQUJJMEt5TXdFQkZSUXFMYkExTExBQUZyQUVKYkFFSlVjalJ5TmhzQWxESzJXS0xpTWdJRHlLT0Myd05peXdBQmF3QkNXd0JDVWdMa2NqUnlOaElMQUVJMEt3Q1VNcklMQmdVRmdnc0VCUldMTUNJQU1nRzdNQ0pnTWFXVUpDSXlDd0NFTWdpaU5ISTBjallTTkdZTEFFUTdBQ1lpQ3dBRkJZc0VCZ1dXYXdBV05nSUxBQkt5Q0tpbUVnc0FKRFlHUWpzQU5EWVdSUVdMQUNRMkVic0FORFlGbXdBeVd3QW1JZ3NBQlFXTEJBWUZsbXNBRmpZU01nSUxBRUppTkdZVGdiSTdBSVEwYXdBaVd3Q0VOSEkwY2pZV0Fnc0FSRHNBSmlJTEFBVUZpd1FHQlpackFCWTJBaklMQUJLeU93QkVOZ3NBRXJzQVVsWWJBRkpiQUNZaUN3QUZCWXNFQmdXV2F3QVdPd0JDWmhJTEFFSldCa0k3QURKV0JrVUZnaEd5TWhXU01nSUxBRUppTkdZVGhaTGJBM0xMQUFGaUFnSUxBRkppQXVSeU5ISTJFalBEZ3RzRGdzc0FBV0lMQUlJMElnSUNCR0kwZXdBU3NqWVRndHNEa3NzQUFXc0FNbHNBSWxSeU5ISTJHd0FGUllMaUE4SXlFYnNBSWxzQUlsUnlOSEkyRWdzQVVsc0FRbFJ5TkhJMkd3QmlXd0JTVkpzQUlsWWJrSUFBZ0FZMk1qSUZoaUd5RlpZN2dFQUdJZ3NBQlFXTEJBWUZsbXNBRmpZQ011SXlBZ1BJbzRJeUZaTGJBNkxMQUFGaUN3Q0VNZ0xrY2pSeU5oSUdDd0lHQm1zQUppSUxBQVVGaXdRR0JaWnJBQll5TWdJRHlLT0Myd095d2pJQzVHc0FJbFJsSllJRHhaTHJFckFSUXJMYkE4TENNZ0xrYXdBaVZHVUZnZ1BGa3VzU3NCRkNzdHNEMHNJeUF1UnJBQ0pVWlNXQ0E4V1NNZ0xrYXdBaVZHVUZnZ1BGa3VzU3NCRkNzdHNENHNzRFVySXlBdVJyQUNKVVpTV0NBOFdTNnhLd0VVS3kyd1B5eXdOaXVLSUNBOHNBUWpRb280SXlBdVJyQUNKVVpTV0NBOFdTNnhLd0VVSzdBRVF5NndLeXN0c0VBc3NBQVdzQVFsc0FRbUlDNUhJMGNqWWJBSlF5c2pJRHdnTGlNNHNTc0JGQ3N0c0VFc3NRZ0VKVUt3QUJhd0JDV3dCQ1VnTGtjalJ5TmhJTEFFSTBLd0NVTXJJTEJnVUZnZ3NFQlJXTE1DSUFNZ0c3TUNKZ01hV1VKQ0l5QkhzQVJEc0FKaUlMQUFVRml3UUdCWlpyQUJZMkFnc0FFcklJcUtZU0N3QWtOZ1pDT3dBME5oWkZCWXNBSkRZUnV3QTBOZ1diQURKYkFDWWlDd0FGQllzRUJnV1dhd0FXTmhzQUlsUm1FNEl5QThJemdiSVNBZ1JpTkhzQUVySTJFNElWbXhLd0VVS3kyd1FpeXdOU3N1c1NzQkZDc3RzRU1zc0RZcklTTWdJRHl3QkNOQ0l6aXhLd0VVSzdBRVF5NndLeXN0c0VRc3NBQVZJRWV3QUNOQ3NnQUJBUlVVRXk2d01Tb3RzRVVzc0FBVklFZXdBQ05Dc2dBQkFSVVVFeTZ3TVNvdHNFWXNzUUFCRkJPd01pb3RzRWNzc0RRcUxiQklMTEFBRmtVaklDNGdSb29qWVRpeEt3RVVLeTJ3U1N5d0NDTkNzRWdyTGJCS0xMSUFBRUVyTGJCTExMSUFBVUVyTGJCTUxMSUJBRUVyTGJCTkxMSUJBVUVyTGJCT0xMSUFBRUlyTGJCUExMSUFBVUlyTGJCUUxMSUJBRUlyTGJCUkxMSUJBVUlyTGJCU0xMSUFBRDRyTGJCVExMSUFBVDRyTGJCVUxMSUJBRDRyTGJCVkxMSUJBVDRyTGJCV0xMSUFBRUFyTGJCWExMSUFBVUFyTGJCWUxMSUJBRUFyTGJCWkxMSUJBVUFyTGJCYUxMSUFBRU1yTGJCYkxMSUFBVU1yTGJCY0xMSUJBRU1yTGJCZExMSUJBVU1yTGJCZUxMSUFBRDhyTGJCZkxMSUFBVDhyTGJCZ0xMSUJBRDhyTGJCaExMSUJBVDhyTGJCaUxMQTNLeTZ4S3dFVUt5MndZeXl3Tnl1d095c3RzR1Fzc0RjcnNEd3JMYkJsTExBQUZyQTNLN0E5S3kyd1ppeXdPQ3N1c1NzQkZDc3RzR2Nzc0RncnNEc3JMYkJvTExBNEs3QThLeTJ3YVN5d09DdXdQU3N0c0dvc3NEa3JMckVyQVJRckxiQnJMTEE1SzdBN0t5MndiQ3l3T1N1d1BDc3RzRzBzc0RrcnNEMHJMYkJ1TExBNkt5NnhLd0VVS3kyd2J5eXdPaXV3T3lzdHNIQXNzRG9yc0R3ckxiQnhMTEE2SzdBOUt5MndjaXl6Q1FRQ0EwVllJUnNqSVZsQ0s3QUlaYkFESkZCNHNBRVZNQzBBUzdnQXlGSllzUUVCamxtd0Fia0lBQWdBWTNDeEFBVkNzUUFBS3JFQUJVS3hBQWdxc1FBRlFyRUFDQ3F4QUFWQ3VRQUFBQWtxc1FBRlFya0FBQUFKS3JFREFFU3hKQUdJVVZpd1FJaFlzUU5rUkxFbUFZaFJXTG9JZ0FBQkJFQ0lZMVJZc1FNQVJGbFpXVm14QUF3cXVBSC9oYkFFamJFQ0FFUUEnKSBmb3JtYXQoJ3RydWV0eXBlJyk7XG59XG5cblxuXG4vKiBDb3JlICovXG4uTWFnaWMzNjAsXG4uTWFnaWMzNjAtY29udGFpbmVyIHtcbiAgICBib3JkZXI6IDFweCBzb2xpZCAjZjNmM2YzO1xuICAgIGJveC1zaXppbmc6IGNvbnRlbnQtYm94ICFpbXBvcnRhbnQ7XG59XG5cbi5NYWdpYzM2MC1jb250YWluZXIgLk1hZ2ljMzYwLFxuLk1hZ2ljMzYwLWZ1bGxzY3JlZW4gLk1hZ2ljMzYwIHtcbiAgICBib3JkZXI6IDAgIWltcG9ydGFudDtcbn1cblxuLk1hZ2ljMzYwIHtcbiAgICBwYWRkaW5nOiAwICFpbXBvcnRhbnQ7XG4gICAgb3V0bGluZTogMCAhaW1wb3J0YW50O1xuICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICBmb250LXNpemU6IDAgIWltcG9ydGFudDtcbiAgICBsaW5lLWhlaWdodDogMTAwJSAhaW1wb3J0YW50O1xuICAgIG1heC13aWR0aDogMTAwJTtcbn1cblxuLk1hZ2ljMzYwLWNvbnRhaW5lciB7XG4gICAgdGV4dC1hbGlnbjogY2VudGVyICFpbXBvcnRhbnQ7XG4gICAgbWF4LXdpZHRoOiAxMDAlO1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICB6LWluZGV4OiAxO1xufVxuXG4uTWFnaWMzNjAtY29udGFpbmVyIC5NYWdpYzM2MCB7XG4gICAgZGlzcGxheTogaW5saW5lLWJsb2NrICFpbXBvcnRhbnQ7XG4gICAgdmVydGljYWwtYWxpZ246IG1pZGRsZTtcbiAgICB0b3VjaC1hY3Rpb246IG5vbmU7XG59XG5cbi5NYWdpYzM2MC1jb250YWluZXIgLk1hZ2ljMzYwLm0zNjAtc3Bpbi14IHtcbiAgICB0b3VjaC1hY3Rpb246IHBhbi15O1xufVxuXG4uTWFnaWMzNjAtY29udGFpbmVyIC5NYWdpYzM2MC5tMzYwLXNwaW4teSB7XG4gICAgdG91Y2gtYWN0aW9uOiBwYW4teDtcbn1cblxuLk1hZ2ljMzYwLmRlc2t0b3Auem9vbS1pbiB7XG4gICAgY3Vyc29yOiBwb2ludGVyO1xuICAgIGN1cnNvcjogLXdlYmtpdC16b29tLWluO1xuICAgIGN1cnNvcjogLW1vei16b29tLWluO1xuICAgIGN1cnNvcjogem9vbS1pbjtcbn1cblxuLk1hZ2ljMzYwIGltZyB7XG4gICAgYm9yZGVyOiAwICFpbXBvcnRhbnQ7XG4gICAgcGFkZGluZzogMCAhaW1wb3J0YW50O1xuICAgIG1hcmdpbjogMCAhaW1wb3J0YW50O1xuICAgIGhlaWdodDogYXV0bztcbn1cblxuLk1hZ2ljMzYwID4gaW1nIHtcbiAgICB3aWR0aDogMTAwJTtcbn1cblxuLyogRnVsbHNjcmVlbiBpY29ucyAqL1xuYnV0dG9uLm0zNjAtaWNvbiB7XG4gICAgY29sb3I6ICNiNGI0YjQgIWltcG9ydGFudDtcbiAgICBmb250OiBub3JtYWwgOTAwIDMwcHgvMSAnbWFnaWMzNjAnICFpbXBvcnRhbnQ7XG4gICAgY3Vyc29yOiBwb2ludGVyO1xuICAgIHotaW5kZXg6IDEwMDAwMDAgIWltcG9ydGFudDtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudCAhaW1wb3J0YW50O1xuICAgIGJvcmRlcjogMXB4IHNvbGlkIHJnYmEoMTgwLCAxODAsIDE4MCwgMCkgIWltcG9ydGFudDtcbiAgICBib3JkZXItcmFkaXVzOiAwICFpbXBvcnRhbnQ7XG4gICAgYm94LXNoYWRvdzogbm9uZSAhaW1wb3J0YW50O1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZSAhaW1wb3J0YW50O1xuICAgIHRleHQtdHJhbnNmb3JtOiBub25lICFpbXBvcnRhbnQ7XG4gICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgIHNwZWFrOiBub25lO1xuICAgIHdpZHRoOiA0NHB4ICFpbXBvcnRhbnQ7XG4gICAgaGVpZ2h0OiA0NHB4ICFpbXBvcnRhbnQ7XG4gICAgbWluLXdpZHRoOiAwICFpbXBvcnRhbnQ7XG4gICAgbWluLWhlaWdodDogMCAhaW1wb3J0YW50O1xuICAgIG1heC13aWR0aDogbm9uZSAhaW1wb3J0YW50O1xuICAgIG1heC1oZWlnaHQ6IG5vbmUgIWltcG9ydGFudDtcbiAgICBtYXJnaW46IDAgIWltcG9ydGFudDtcbiAgICBwYWRkaW5nOiAwICFpbXBvcnRhbnQ7XG4gICAgb3V0bGluZTogMCAhaW1wb3J0YW50O1xuICAgIC13ZWJraXQtZm9udC1zbW9vdGhpbmc6IGFudGlhbGlhc2VkO1xuICAgIC1tb3otb3N4LWZvbnQtc21vb3RoaW5nOiBncmF5c2NhbGU7XG59XG5cbmJ1dHRvbi5tMzYwLWljb246aG92ZXIsXG4ubW9iaWxlLW1hZ2ljIGJ1dHRvbi5tMzYwLWljb246YWN0aXZlIHtcbiAgICBjb2xvcjogIzU1NSAhaW1wb3J0YW50O1xuICAgIGNvbG9yOiByZ2JhKDQ5LCA1MSwgNjEsIDAuNzYpICFpbXBvcnRhbnQ7XG59XG5cbmJ1dHRvbi5tMzYwLWljb246YmVmb3JlIHtcbiAgICBkaXNwbGF5OiBpbmxpbmUgIWltcG9ydGFudDtcbiAgICBwb3NpdGlvbjogc3RhdGljICFpbXBvcnRhbnQ7XG4gICAgY29sb3I6IGluaGVyaXQgIWltcG9ydGFudDtcbiAgICBmb250OiBpbmhlcml0ICFpbXBvcnRhbnQ7XG4gICAgLXdlYmtpdC1mb250LXNtb290aGluZzogaW5oZXJpdCAhaW1wb3J0YW50O1xuICAgIC1tb3otb3N4LWZvbnQtc21vb3RoaW5nOiBpbmhlcml0ICFpbXBvcnRhbnQ7XG59XG5cbmJ1dHRvbi5tMzYwLWljb24ubTM2MC1pY29uLWZ1bGxzY3JlZW4tb3BlbixcbmJ1dHRvbi5tMzYwLWljb24ubTM2MC1pY29uLWZ1bGxzY3JlZW4tY2xvc2Uge1xuICAgIHRvcDogMCAhaW1wb3J0YW50O1xuICAgIHJpZ2h0OiAwICFpbXBvcnRhbnQ7XG59XG5cbmJ1dHRvbi5tMzYwLWljb24ubTM2MC1pY29uLWZ1bGxzY3JlZW4tY2xvc2Uge1xuICAgIHdpZHRoOiA2MHB4ICFpbXBvcnRhbnQ7XG4gICAgaGVpZ2h0OiA2MHB4ICFpbXBvcnRhbnQ7XG59XG5cbmJ1dHRvbi5tMzYwLWljb24ubTM2MC1pY29uLWZ1bGxzY3JlZW4tb3BlbjpiZWZvcmUge1xuICAgIGNvbnRlbnQ6ICdcXGU4MDAnO1xufVxuXG5idXR0b24ubTM2MC1pY29uLm0zNjAtaWNvbi1mdWxsc2NyZWVuLWNsb3NlOmJlZm9yZSB7XG4gICAgY29udGVudDogJ1xcZTgwMSc7XG59XG5cbi5sdC1pZTktbWFnaWMgYnV0dG9uLm0zNjAtaWNvbiB7XG4gICAgYm9yZGVyOiAwO1xuICAgIGZpbHRlcjogYWxwaGEob3BhY2l0eT03NSk7XG59XG5cbi5sdC1pZTktbWFnaWMgYnV0dG9uLm0zNjAtaWNvbjpob3ZlciB7XG4gICAgZmlsdGVyOiBhbHBoYShvcGFjaXR5PTEwMCk7XG59XG5cblxuLk1hZ2ljMzYwLWZ1bGxzY3JlZW46LXdlYmtpdC1mdWxsLXNjcmVlbiB7XG4gICAgdG91Y2gtYWN0aW9uOiBub25lO1xufVxuXG4ubHQtaWU3LW1hZ2ljIC5NYWdpYzM2MC1jb250YWluZXIgLk1hZ2ljMzYwIHtcbiAgICB3aWR0aDogYXV0byAhaW1wb3J0YW50O1xufVxuXG4uTWFnaWMzNjAtZnVsbHNjcmVlbiB7XG4gICAgYmFja2dyb3VuZDogI2ZmZjtcbiAgICB6LWluZGV4OiAyMTQ3NDgzNjQwICFpbXBvcnRhbnQ7XG59XG5cbi5NYWdpYzM2MC1mdWxsc2NyZWVuOi13ZWJraXQtZnVsbC1zY3JlZW4ge1xuICAgIHdpZHRoOiAxMDAlICFpbXBvcnRhbnQ7XG4gICAgaGVpZ2h0OiAxMDAlICFpbXBvcnRhbnQ7XG4gICAgdG9wOiAwICFpbXBvcnRhbnQ7XG4gICAgbGVmdDogMCAhaW1wb3J0YW50O1xuICAgIC13ZWJraXQtYmFja2ZhY2UtdmlzaWJpbGl0eTogaGlkZGVuICFpbXBvcnRhbnQ7XG4gICAgYmFja2ZhY2UtdmlzaWJpbGl0eTogaGlkZGVuICFpbXBvcnRhbnQ7XG59XG5cbi5NYWdpYzM2MC1mdWxsc2NyZWVuOi1tcy1mdWxsc2NyZWVuIHtcbiAgICB3aWR0aDogMTAwJSAhaW1wb3J0YW50O1xuICAgIGhlaWdodDogMTAwJSAhaW1wb3J0YW50O1xuICAgIHRvcDogMCAhaW1wb3J0YW50O1xuICAgIGxlZnQ6IDAgIWltcG9ydGFudDtcbn1cblxuLk1hZ2ljMzYwLWZ1bGxzY3JlZW46YmVmb3JlIHtcbiAgICBjb250ZW50OiAnJztcbiAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgaGVpZ2h0OiAxMDAlO1xuICAgIHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7XG59XG5cbi5NYWdpYzM2MC1mdWxsc2NyZWVuIC5NYWdpYzM2MCB7XG4gICAgZGlzcGxheTogaW5saW5lLWJsb2NrICFpbXBvcnRhbnQ7XG4gICAgdmVydGljYWwtYWxpZ246IG1pZGRsZTtcbn1cblxuLk1hZ2ljMzYwLW1lc3NhZ2Uge1xuICAgIGJhY2tncm91bmQtY29sb3I6ICNGRkZGRkY7XG4gICAgYmFja2dyb3VuZC1pbWFnZTogbm9uZTtcbiAgICBib3JkZXI6IDFweCBzb2xpZCAjQUFBQUFBO1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIGZvbnQtc2l6ZTogMTBweDtcbiAgICBjb2xvcjogIzAwMDtcbiAgICBvdmVyZmxvdzogaGlkZGVuO1xuICAgIHBhZGRpbmc6IDZweDtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgIHRvcDogNTAlO1xuICAgIHdpZHRoOiAzMyU7XG4gICAgbGVmdDogMzMlO1xuICAgIHotaW5kZXg6IDEwMDtcbiAgICBib3gtc2hhZG93OiAwIDAgMTBweCAjMDAwO1xuICAgIGJvcmRlci1jb2xsYXBzZTogc2VwYXJhdGU7XG4gICAgYm9yZGVyLXJhZGl1czogMTVweDtcbn1cblxuLk1hZ2ljMzYwLWZ1bGxzY3JlZW4gLk1hZ2ljMzYwLW1lc3NhZ2Uge1xuICAgIGZvbnQtc2l6ZTogMThweDtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjMzEzMzNEO1xuICAgIGJhY2tncm91bmQtY29sb3I6IHJnYmEoNDksIDUxLCA2MSwgMC43Nik7XG4gICAgYm9yZGVyLWNvbG9yOiAjY2NjO1xuICAgIGNvbG9yOiAjZmZmO1xuICAgIHRvcDogMTVweDtcbn1cblxuXG4vKipcbiAqIEhpbnQgJiBMb2FkZXJcbiAqL1xuLm0zNjAtaGludC1tZXNzYWdlLFxuLm0zNjAtbG9hZGVyIHtcbiAgICBiYWNrZ3JvdW5kOiByZ2JhKDQ5LCA1MSwgNjEsIDAuNzYpO1xuICAgIGNvbG9yOiAjZmZmO1xuICAgIGZvbnQ6IG5vcm1hbCAxNHB4LzEuMmVtICdMdWNpZGEgR3JhbmRlJywgJ0x1Y2lkYSBTYW5zIFVuaWNvZGUnLCBWZXJkYW5hLCAnSGVsdmV0aWNhIE5ldWUnLCBBcmlhbCwgSGVsdmV0aWNhLCBzYW5zLXNlcmlmO1xuICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbn1cblxuLm0zNjAtaGludCxcbi5tMzYwLWxvYWRlciB7XG4gICAgZGlyZWN0aW9uOiBsdHI7XG4gICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICBtYXJnaW46IDA7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIHotaW5kZXg6IDEwMDA7XG4gICAgcG9pbnRlci1ldmVudHM6IG5vbmU7XG4gICAgLXdlYmtpdC1mb250LXNtb290aGluZzogYW50aWFsaWFzZWQ7XG4gICAgLW1vei1vc3gtZm9udC1zbW9vdGhpbmc6IGdyYXlzY2FsZTtcbiAgICAtd2Via2l0LXRyYW5zaXRpb246IG9wYWNpdHkgMC4yNXMgZWFzZTtcbiAgICB0cmFuc2l0aW9uOiBvcGFjaXR5IDAuMjVzIGVhc2U7XG59XG5cbi5tMzYwLWhpbnQge1xuICAgIGJvdHRvbTogOHB4O1xuICAgIGxlZnQ6IDA7XG4gICAgcmlnaHQ6IDA7XG4gICAgcGFkZGluZzogMCAxMCU7XG4gICAgLXdlYmtpdC10cmFuc2l0aW9uOiBvcGFjaXR5IDAuMjVzIGVhc2UsIHotaW5kZXggMC4yNXMgZWFzZTtcbiAgICB0cmFuc2l0aW9uOiBvcGFjaXR5IDAuMjVzIGVhc2UsIHotaW5kZXggMC4yNXMgZWFzZTtcbn1cblxuLm0zNjAtaGludC1tZXNzYWdlIHtcbiAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgYm9yZGVyLXJhZGl1czogMmVtO1xuICAgIHBhZGRpbmc6IC4zZW0gMS41ZW07XG4gICAgZm9udC1zaXplOiAxNHB4O1xuICAgIGxpbmUtaGVpZ2h0OiAxLjU7XG59XG5cbi5tMzYwLWhpbnQtbWVzc2FnZTpiZWZvcmUge1xuICAgIGNvbnRlbnQ6ICcnO1xuICAgIGJhY2tncm91bmQtaW1hZ2U6IHVybCgnZGF0YTppbWFnZS9wbmc7YmFzZTY0LGlWQk9SdzBLR2dvQUFBQU5TVWhFVWdBQUFIZ0FBQUFxQ0FZQUFBQjRJcDh1QUFBQUdYUkZXSFJUYjJaMGQyRnlaUUJCWkc5aVpTQkpiV0ZuWlZKbFlXUjVjY2xsUEFBQUEyUnBWRmgwV0UxTU9tTnZiUzVoWkc5aVpTNTRiWEFBQUFBQUFEdy9lSEJoWTJ0bGRDQmlaV2RwYmowaTc3dS9JaUJwWkQwaVZ6Vk5NRTF3UTJWb2FVaDZjbVZUZWs1VVkzcHJZemxrSWo4K0lEeDRPbmh0Y0cxbGRHRWdlRzFzYm5NNmVEMGlZV1J2WW1VNmJuTTZiV1YwWVM4aUlIZzZlRzF3ZEdzOUlrRmtiMkpsSUZoTlVDQkRiM0psSURVdU1DMWpNRFl3SURZeExqRXpORGMzTnl3Z01qQXhNQzh3TWk4eE1pMHhOem96TWpvd01DQWdJQ0FnSUNBZ0lqNGdQSEprWmpwU1JFWWdlRzFzYm5NNmNtUm1QU0pvZEhSd09pOHZkM2QzTG5jekxtOXlaeTh4T1RrNUx6QXlMekl5TFhKa1ppMXplVzUwWVhndGJuTWpJajRnUEhKa1pqcEVaWE5qY21sd2RHbHZiaUJ5WkdZNllXSnZkWFE5SWlJZ2VHMXNibk02ZUcxd1RVMDlJbWgwZEhBNkx5OXVjeTVoWkc5aVpTNWpiMjB2ZUdGd0x6RXVNQzl0YlM4aUlIaHRiRzV6T25OMFVtVm1QU0pvZEhSd09pOHZibk11WVdSdlltVXVZMjl0TDNoaGNDOHhMakF2YzFSNWNHVXZVbVZ6YjNWeVkyVlNaV1lqSWlCNGJXeHVjenA0YlhBOUltaDBkSEE2THk5dWN5NWhaRzlpWlM1amIyMHZlR0Z3THpFdU1DOGlJSGh0Y0UxTk9rOXlhV2RwYm1Gc1JHOWpkVzFsYm5SSlJEMGllRzF3TG1ScFpEcEdPVEExTTBFM1FqQTRRemRGTXpFeE9UVXhRamhDTnpjd01EaERRak13T0NJZ2VHMXdUVTA2Ukc5amRXMWxiblJKUkQwaWVHMXdMbVJwWkRveFFqaERPRE16TmtNM01FSXhNVVV6UWtNek5FSkNRekkyT1VGR01VTkNRU0lnZUcxd1RVMDZTVzV6ZEdGdVkyVkpSRDBpZUcxd0xtbHBaRG94UWpoRE9ETXpOVU0zTUVJeE1VVXpRa016TkVKQ1F6STJPVUZHTVVOQ1FTSWdlRzF3T2tOeVpXRjBiM0pVYjI5c1BTSkJaRzlpWlNCUWFHOTBiM05vYjNBZ1ExTTFJRmRwYm1SdmQzTWlQaUE4ZUcxd1RVMDZSR1Z5YVhabFpFWnliMjBnYzNSU1pXWTZhVzV6ZEdGdVkyVkpSRDBpZUcxd0xtbHBaRHBHUVRBMU0wRTNRakE0UXpkRk16RXhPVFV4UWpoQ056Y3dNRGhEUWpNd09DSWdjM1JTWldZNlpHOWpkVzFsYm5SSlJEMGllRzF3TG1ScFpEcEdPVEExTTBFM1FqQTRRemRGTXpFeE9UVXhRamhDTnpjd01EaERRak13T0NJdlBpQThMM0prWmpwRVpYTmpjbWx3ZEdsdmJqNGdQQzl5WkdZNlVrUkdQaUE4TDNnNmVHMXdiV1YwWVQ0Z1BEOTRjR0ZqYTJWMElHVnVaRDBpY2lJL1BxNm1OY0lBQUFxaVNVUkJWSGphN0Z4OWFGWG5HYi9uZm4va2ZpZTJTcXFwQzl1Z3EvWURuR1dGMm5hc21qOHFPUDl3aGVtR294UUhsb3gyS095dityRXdrTzRUSm1NUUthVFVCcWx0c09vaWdSQmFXVWlOZGpGem1kRllqU1IzSmtaamtwdVBlL2Y4VHA5WDNwNmVjKzg1OTl3YnQ1djd3c3Y5ZnQvblBOL1A3M25QVmJMWnJLTXl5bmU0elg1UlVaU1NFVkh1U2xZcTNwbmhtN09pNHhVTE5xMm9XZ1dyc05jUzd4UU43N0wvS3dKVzJCTzRhSHI0OVJ6TmVacVppcUR6OGs3d1RmQU9mSnVsdWNEOHN6V2NSUkt1bjJiVnlaTW5IK3ZyNjN1eHZyNCtndGVzUUVwRmpqbUZHOWkyYlZ2OCt2WHJyNHlOamIwSkhqTHZQRVVKb1FqVVpxYkJBSUVoSW5ERjFOVFVzU3lQK2ZuNXdiYTJ0cWZwczZnWkladWw0ZjkxNXVCZCtQRGh3OStlbTV2ckU3ekxaRExUbHk5ZmZvVStpOVAwNXVLZHFiMXRFS2t3QWZISnljbDNJTmZaMmRsZWVreUQwSVdGaGF1N2R1MTZCQXFRVHhPWG9JREJPeDk0TnpNejAwbTgrb0o0MkV5R01jQkNuaVJMWGdjRllFVjRJQUpXTmJDL3YzOExFWlJxYjI5L2hsNVg0NUVJSGdHaGQrN2MrVE85bHlpR0pwYVpnT0hWSWxldlh0MUoxdnZQZmZ2MmZZTmUxOEFneUVoNndEc1MvQ2w2TDhtS29CUXNZQnZ4d3lzMGNHaG82RlVXSkdKdjlaVXJWMzRpM00yaFE0ZSt5WnBZVUR3dVF3RUw2MDJRY0MrY08zZXVnZDB4UEYyaXM3UHpPWGhEOEsram8rTlo1cDF6c1FXTURVT3dWbWdnQzlmUFFnUkIxU0t1cEZLcHQ2Q2RMSHlQVlNHWG9ZREJ1NnF6Wjg4K1Q5YjZkNGwzTG41TVRrOVB0N0VIL0F0LzdsbHNBYXN1QnNJYkhSM2RLeVZUSUQ2TUJBdkVpVmlNK01LQ3JpbzNjS1VBSm9OUHNZbUppYmR2M3J6NUJpdStXd3A3TVNSWnpMc3YyRTM3OVF5amxBSlczVFBpUlV0THl4cDZIbVRCT2RsdG44cHFCcFVCcitWeU4wdEl3SUozdlJyZUNmZXRWaVVJYjVLYjFqV01VZ2xZZGMrYk4yOUdRdkJ2ZXY0UUM4N1BNMDZwLytORTRJU2Mrbk5HSFZ5RXVsZ0x2SGg1K2pSVHZPL2g3enBMbFNOb2FFUGR1NEpEVzF3bmljTHJKTnczZU1kV0h0UExwb3NsWUJsdDhYRXk4TkR4NDhkZkhoOGYvNGllMTdHUTR4d3ZsdEZjUVJiN0N5SGdlL2Z1dFhJY0R2STZibDVUS1pKQVpmb0NyUEVSWmt5TWFkT2I0bk1CekFSNERkUDBXV1N5YWh3OVBUMHZUVTFOSGVlOXZab2xjUjBKVkNEZ0hVcFFvemhzWm0rM1NVdndpaXg0OSs3ZGlZYUdodSt1V2JObXE2SW9qMXk3ZHUwUHlXUnlwY2ZqVWErRTRzWnNZMlBqVDJ0cmExdElDN2ZRKzk4alliZnltbjVtWUZZSGtzdmFzTlQ3OU8zWnN5ZTZZOGVPcDZMUjZLcElKUElkcDlNWmQ3dmRxL1VXQUNCRDNtV2NtUGtQaW9sRFI0NGMrYXlwcVdtaVNQUVowcng4K2ZKdlVSajduTmZNNkdENEdSTHNwWEE0N1BCNnZZL3FZTlcyc0dpWmNXcDJkLzc4K1dmcjZ1bzJoa0toVFNSQS84aklTSy9QNXdzVEVmL3E2dW82UWdUUEJBS0J6UHIxNjN0QjRONjllMkhGNmRPblQ3KythZE9tRHpadTNOaUJkY21TRDlQdm5xYkhOcW9CLzdaMjdkb3VadUNNQlVibXBJK1V6cDlPcDd1SnRtNElqaFN3Vi95UTZYTlFCdnVFZUcvbHlwVlBrQUtFVnExYXRlUEFnUU4vM0w5Ly80eE4rdkxTN3ZmN2F5bFRIakpvS21DUERCU08rT3B3dVZ5MUJzMmNnZ2x3c3h1T2QzZDNmeCtKRkVxZUd6ZHUvSnlUQXJqanVsdTNicjEvNXN5Wkg5SHpoOW5GaGRnNlBWTHNDek5rS1Q2UFlRMnNoVFd4TnZhUTZzQjh0YklaK2hLOFhsUnl2Vlg4RzVFbmhLVDNJL3hkTmNSWXBjK2lpd1pmWXFSOExYMTlmWnNOa2llc1g0VVNWQ0MvOWZYMU5VeTM3UmlzbGovQVJ5bEd2QS9vYkhCdzhNZk10Q2hmSkJLcVphU0JaNDRkTy9ZTUUrblNjU09LNUQ1ZFVwd01NRk1UV0J2SkJ2YkNucHFTd2JBOHkwT2ZUM0xaTGltN1Z6VFRLWGtDdDVTSWhhelFaNUhKMkNOR3ZQdVlzK09nZ1lDREFJaEVEa05ocDQ3NVprdkFjb1ozQVRVWW8xQnhDY1J3Q2d5VnRQdFR0cGlBQmZjaEdPc1dHVGYyd0Y3WUUzdm5XTThzZllwTmxNa1NmUVVJR0dWa08zdTJrTUcxQmlCVUllRG01dWJIOUw1cjlmcHdZWkhoNGVIZG5MMjl4NWx2bFNhanZBK3pNWVA5QmNRSFlkMVl1d1o3WVUvc3pWYmlOQ2pQY3RKWHhFNlBhZm9LRVhBZTQxRFlzaE5Dd0sydHJVOFdLdUN2dVFja0hLb0tCUUlieUMwbE5TNVB1RHBRN1VxbFVyTUdCQXEzNTlhcEw0V1ZxR1VOOXNCZXF2LzljdStjTVRnWGZaUmdPWlU4QjZDVUw0ZUxKcjVmYlBxS1ZmSzVLZTY2ZEJUY01ramsxS1RuY3lkT25QaVFKUDhmS2krVzdkeTU4OFRRME5BUFdhUENyRVVxUUVEbHhWMGlJcTRUMzV3Yk5teW9vVm5ORmhDVXdBVEJQTHdYeE5yWUEzdGhUK3pOcDBIMFRNc3NmVDRTbkpjRjZCSkNGNk9FOUprZXhMdDdWTUxwTmZSQlczVm5aK2VUVzdkdURZazNLYUdkbGc0QUtIYTBSOFZKMGVGQUMxQnE0QThBVWVHNHNaem02cnQzNzM1eThPREI1elJaTkJnVFFmekE3OGZIeHc5eGNwSmdBWWhFSmk1Nm40eDBwYmlyRXN1UlNadWxMeWxsMG5HbUxWd3ErZ3BNc3RyUU5kSkpzckIySEltZERQTUNGYVRTOUpkTVk2RjdmNlVOR0VOOFJUb3ZHdmhpRUhFcHFpM2JVWWozOS9mLzd1alJvdzFFN0FzY0o4Q29CSjVMUDBramhuRzVFUk50TWVtekZvN2xzWHg5WXpQMFFSaklVdEhjQVA2TnJnMW1xZWdyc0V4NkIzMTBuVElKWGlRS1lXcXVhWko3eG42N0FoWk05TEMySkpEQmdWbkkvSUFwVTRLUXZYMzdOZ1NkSlN0R1N3c1dsRFV6cUhqL1BaY3pNYXpKMmFHd0hyT3R4SnowWlcyTVF1aXp5R1JZYUhSc2JPelhxTFhadTdpMFVDWndleG5MNTA1Y1FrdURIU3hhcm1GRHJMMUpGTnlrNlZzdVhyejRXM0p2RjRnaHc2UnRuNmZUNlpGY2pBTWt5UFZxWElJckJmYnJMUUNYTnFRUEFBSXg4RGV3UEhSc01NVUprMUxRWjVISjZpa1lDQmMwU20xV3JSdFB5TzFXaXNzUDY5WE14V2cyeUhXaGx5OFlUS2lsUXYxbm82T2o3OUx6UnhuZFNzZ1RNUXhhU04vNUZSTVlZOGE1ZEVBSHU1MGptYjZvMVBnd25NV2lyNUJtQThJQjRyQkJzMEU5RUlCOEFyckhwMlZpZWdCUUtkcUZ3bkxDVFUxTmo1UGxmc1pKVmxRREErSVk2T3VOalkycnBWclY0eWhCaWFHNUdGbmdIaWxwOG12cFEwM0xDRkhDSkV4YXJIYWhId29GcjJIUUxoUjVodXJLSmNWYjFJYS95RFFIT2ZqTEJidEF1OEM0YXA3QlVqWDZDd0EyWkR6Yjc3QjUvdGhHdzcrSHMvNHFUY05mOEMvSWh1TnpHSnlzTEFUb01GM0tZWDFLYkRxMmI5Lytvb1Q3ZnFWTE5UQXc4Qks1b3VaU1dTOERGNVltMTdEb0RFMmg0OFYxYmNheGVFUGxIZkdsYzkyNmRUK1E4SEpoSEFFV3Jwd3hML3JkSVNxTWgxU2ZqM2NLVjNQZmVnSFFNNlQ0VjZNVENVdjB5STRLcEtEWmdJNlY0K3VIN2hJNHFjcFovZHM1b051U0g1djFJV3RGbGlmZHhRRE5pNHNFQVVSeVFWOTJoKzFzTUZtUjNmU2xTNWUyU2FWWUVvQ0t5Tzc1OEh2SVZnWnY5L0EyaW5JaXRJczdMVFY0eEdzK3ZOM0J4UHNjbFlQdldnOFlnWEJSd2pFSVV3TlVUU0JvZktRbjUwMERwUmF3VTJTRW9qbU9nbHljekFjS3hIYzdSUEs1NTZWODZ3cnU2YUp5YlF6b200QmY4Y2dRNmdPOWRVVlljWmh2VnhtVzRUOUdhdkxlUUxWRUJTeXNPSVJTRFo3T0FQZjJPQjdneldjeWJCaUZ4cUZ1bzhUZ1Q5SXhGNStaMkx0RUJTekt0VEJ5R1NTc0FEVXM0UEttOWxaTW41MDFiclBLc0tGQVpjU0p4SGt6SmNnUy9vOE9MVEFqM3p5L2tLODhNZ1ZGRmtIQURoMVlMK3V3OERjRWxUOWh1YzgzcGRoOEs5Wi9kQlR0UHlXVzZNaVdDdENvL010T21ROGxXL2tqdExJZS94VmdBT1NEUzIwL3BNRk5BQUFBQUVsRlRrU3VRbUNDJyk7XG4gICAgYmFja2dyb3VuZC1pbWFnZTogLXdlYmtpdC1pbWFnZS1zZXQoIHVybCgnZGF0YTppbWFnZS9wbmc7YmFzZTY0LGlWQk9SdzBLR2dvQUFBQU5TVWhFVWdBQUFIZ0FBQUFxQ0FZQUFBQjRJcDh1QUFBQUdYUkZXSFJUYjJaMGQyRnlaUUJCWkc5aVpTQkpiV0ZuWlZKbFlXUjVjY2xsUEFBQUEyUnBWRmgwV0UxTU9tTnZiUzVoWkc5aVpTNTRiWEFBQUFBQUFEdy9lSEJoWTJ0bGRDQmlaV2RwYmowaTc3dS9JaUJwWkQwaVZ6Vk5NRTF3UTJWb2FVaDZjbVZUZWs1VVkzcHJZemxrSWo4K0lEeDRPbmh0Y0cxbGRHRWdlRzFzYm5NNmVEMGlZV1J2WW1VNmJuTTZiV1YwWVM4aUlIZzZlRzF3ZEdzOUlrRmtiMkpsSUZoTlVDQkRiM0psSURVdU1DMWpNRFl3SURZeExqRXpORGMzTnl3Z01qQXhNQzh3TWk4eE1pMHhOem96TWpvd01DQWdJQ0FnSUNBZ0lqNGdQSEprWmpwU1JFWWdlRzFzYm5NNmNtUm1QU0pvZEhSd09pOHZkM2QzTG5jekxtOXlaeTh4T1RrNUx6QXlMekl5TFhKa1ppMXplVzUwWVhndGJuTWpJajRnUEhKa1pqcEVaWE5qY21sd2RHbHZiaUJ5WkdZNllXSnZkWFE5SWlJZ2VHMXNibk02ZUcxd1RVMDlJbWgwZEhBNkx5OXVjeTVoWkc5aVpTNWpiMjB2ZUdGd0x6RXVNQzl0YlM4aUlIaHRiRzV6T25OMFVtVm1QU0pvZEhSd09pOHZibk11WVdSdlltVXVZMjl0TDNoaGNDOHhMakF2YzFSNWNHVXZVbVZ6YjNWeVkyVlNaV1lqSWlCNGJXeHVjenA0YlhBOUltaDBkSEE2THk5dWN5NWhaRzlpWlM1amIyMHZlR0Z3THpFdU1DOGlJSGh0Y0UxTk9rOXlhV2RwYm1Gc1JHOWpkVzFsYm5SSlJEMGllRzF3TG1ScFpEcEdPVEExTTBFM1FqQTRRemRGTXpFeE9UVXhRamhDTnpjd01EaERRak13T0NJZ2VHMXdUVTA2Ukc5amRXMWxiblJKUkQwaWVHMXdMbVJwWkRveFFqaERPRE16TmtNM01FSXhNVVV6UWtNek5FSkNRekkyT1VGR01VTkNRU0lnZUcxd1RVMDZTVzV6ZEdGdVkyVkpSRDBpZUcxd0xtbHBaRG94UWpoRE9ETXpOVU0zTUVJeE1VVXpRa016TkVKQ1F6STJPVUZHTVVOQ1FTSWdlRzF3T2tOeVpXRjBiM0pVYjI5c1BTSkJaRzlpWlNCUWFHOTBiM05vYjNBZ1ExTTFJRmRwYm1SdmQzTWlQaUE4ZUcxd1RVMDZSR1Z5YVhabFpFWnliMjBnYzNSU1pXWTZhVzV6ZEdGdVkyVkpSRDBpZUcxd0xtbHBaRHBHUVRBMU0wRTNRakE0UXpkRk16RXhPVFV4UWpoQ056Y3dNRGhEUWpNd09DSWdjM1JTWldZNlpHOWpkVzFsYm5SSlJEMGllRzF3TG1ScFpEcEdPVEExTTBFM1FqQTRRemRGTXpFeE9UVXhRamhDTnpjd01EaERRak13T0NJdlBpQThMM0prWmpwRVpYTmpjbWx3ZEdsdmJqNGdQQzl5WkdZNlVrUkdQaUE4TDNnNmVHMXdiV1YwWVQ0Z1BEOTRjR0ZqYTJWMElHVnVaRDBpY2lJL1BxNm1OY0lBQUFxaVNVUkJWSGphN0Z4OWFGWG5HYi9uZm4va2ZpZTJTcXFwQzl1Z3EvWURuR1dGMm5hc21qOHFPUDl3aGVtR294UUhsb3gyS095dityRXdrTzRUSm1NUUthVFVCcWx0c09vaWdSQmFXVWlOZGpGem1kRllqU1IzSmtaamtwdVBlL2Y4VHA5WDNwNmVjKzg1OTl3YnQ1djd3c3Y5ZnQvblBOL1A3M25QVmJMWnJLTXl5bmU0elg1UlVaU1NFVkh1U2xZcTNwbmhtN09pNHhVTE5xMm9XZ1dyc05jUzd4UU43N0wvS3dKVzJCTzRhSHI0OVJ6TmVacVppcUR6OGs3d1RmQU9mSnVsdWNEOHN6V2NSUkt1bjJiVnlaTW5IK3ZyNjN1eHZyNCtndGVzUUVwRmpqbUZHOWkyYlZ2OCt2WHJyNHlOamIwSkhqTHZQRVVKb1FqVVpxYkJBSUVoSW5ERjFOVFVzU3lQK2ZuNXdiYTJ0cWZwczZnWkladWw0ZjkxNXVCZCtQRGh3OStlbTV2ckU3ekxaRExUbHk5ZmZvVStpOVAwNXVLZHFiMXRFS2t3QWZISnljbDNJTmZaMmRsZWVreUQwSVdGaGF1N2R1MTZCQXFRVHhPWG9JREJPeDk0TnpNejAwbTgrb0o0MkV5R01jQkNuaVJMWGdjRllFVjRJQUpXTmJDL3YzOExFWlJxYjI5L2hsNVg0NUVJSGdHaGQrN2MrVE85bHlpR0pwYVpnT0hWSWxldlh0MUoxdnZQZmZ2MmZZTmUxOEFneUVoNndEc1MvQ2w2TDhtS29CUXNZQnZ4d3lzMGNHaG82RlVXSkdKdjlaVXJWMzRpM00yaFE0ZSt5WnBZVUR3dVF3RUw2MDJRY0MrY08zZXVnZDB4UEYyaXM3UHpPWGhEOEsram8rTlo1cDF6c1FXTURVT3dWbWdnQzlmUFFnUkIxU0t1cEZLcHQ2Q2RMSHlQVlNHWG9ZREJ1NnF6Wjg4K1Q5YjZkNGwzTG41TVRrOVB0N0VIL0F0LzdsbHNBYXN1QnNJYkhSM2RLeVZUSUQ2TUJBdkVpVmlNK01LQ3JpbzNjS1VBSm9OUHNZbUppYmR2M3J6NUJpdStXd3A3TVNSWnpMc3YyRTM3OVF5amxBSlczVFBpUlV0THl4cDZIbVRCT2RsdG44cHFCcFVCcitWeU4wdEl3SUozdlJyZUNmZXRWaVVJYjVLYjFqV01VZ2xZZGMrYk4yOUdRdkJ2ZXY0UUM4N1BNMDZwLytORTRJU2Mrbk5HSFZ5RXVsZ0x2SGg1K2pSVHZPL2g3enBMbFNOb2FFUGR1NEpEVzF3bmljTHJKTnczZU1kV0h0UExwb3NsWUJsdDhYRXk4TkR4NDhkZkhoOGYvNGllMTdHUTR4d3ZsdEZjUVJiN0N5SGdlL2Z1dFhJY0R2STZibDVUS1pKQVpmb0NyUEVSWmt5TWFkT2I0bk1CekFSNERkUDBXV1N5YWh3OVBUMHZUVTFOSGVlOXZab2xjUjBKVkNEZ0hVcFFvemhzWm0rM1NVdndpaXg0OSs3ZGlZYUdodSt1V2JObXE2SW9qMXk3ZHUwUHlXUnlwY2ZqVWErRTRzWnNZMlBqVDJ0cmExdElDN2ZRKzk4alliZnltbjVtWUZZSGtzdmFzTlQ3OU8zWnN5ZTZZOGVPcDZMUjZLcElKUElkcDlNWmQ3dmRxL1VXQUNCRDNtV2NtUGtQaW9sRFI0NGMrYXlwcVdtaVNQUVowcng4K2ZKdlVSajduTmZNNkdENEdSTHNwWEE0N1BCNnZZL3FZTlcyc0dpWmNXcDJkLzc4K1dmcjZ1bzJoa0toVFNSQS84aklTSy9QNXdzVEVmL3E2dW82UWdUUEJBS0J6UHIxNjN0QjRONjllMkhGNmRPblQ3KythZE9tRHpadTNOaUJkY21TRDlQdm5xYkhOcW9CLzdaMjdkb3VadUNNQlVibXBJK1V6cDlPcDd1SnRtNElqaFN3Vi95UTZYTlFCdnVFZUcvbHlwVlBrQUtFVnExYXRlUEFnUU4vM0w5Ly80eE4rdkxTN3ZmN2F5bFRIakpvS21DUERCU08rT3B3dVZ5MUJzMmNnZ2x3c3h1T2QzZDNmeCtKRkVxZUd6ZHUvSnlUQXJqanVsdTNicjEvNXN5Wkg5SHpoOW5GaGRnNlBWTHNDek5rS1Q2UFlRMnNoVFd4TnZhUTZzQjh0YklaK2hLOFhsUnl2Vlg4RzVFbmhLVDNJL3hkTmNSWXBjK2lpd1pmWXFSOExYMTlmWnNOa2llc1g0VVNWQ0MvOWZYMU5VeTM3UmlzbGovQVJ5bEd2QS9vYkhCdzhNZk10Q2hmSkJLcVphU0JaNDRkTy9ZTUUrblNjU09LNUQ1ZFVwd01NRk1UV0J2SkJ2YkNucHFTd2JBOHkwT2ZUM0xaTGltN1Z6VFRLWGtDdDVTSWhhelFaNUhKMkNOR3ZQdVlzK09nZ1lDREFJaEVEa05ocDQ3NVprdkFjb1ozQVRVWW8xQnhDY1J3Q2d5VnRQdFR0cGlBQmZjaEdPc1dHVGYyd0Y3WUUzdm5XTThzZllwTmxNa1NmUVVJR0dWa08zdTJrTUcxQmlCVUllRG01dWJIOUw1cjlmcHdZWkhoNGVIZG5MMjl4NWx2bFNhanZBK3pNWVA5QmNRSFlkMVl1d1o3WVUvc3pWYmlOQ2pQY3RKWHhFNlBhZm9LRVhBZTQxRFlzaE5Dd0sydHJVOFdLdUN2dVFja0hLb0tCUUlieUMwbE5TNVB1RHBRN1VxbFVyTUdCQXEzNTlhcEw0V1ZxR1VOOXNCZXF2LzljdStjTVRnWGZaUmdPWlU4QjZDVUw0ZUxKcjVmYlBxS1ZmSzVLZTY2ZEJUY01ramsxS1RuY3lkT25QaVFKUDhmS2krVzdkeTU4OFRRME5BUFdhUENyRVVxUUVEbHhWMGlJcTRUMzV3Yk5teW9vVm5ORmhDVXdBVEJQTHdYeE5yWUEzdGhUK3pOcDBIMFRNc3NmVDRTbkpjRjZCSkNGNk9FOUprZXhMdDdWTUxwTmZSQlczVm5aK2VUVzdkdURZazNLYUdkbGc0QUtIYTBSOFZKMGVGQUMxQnE0QThBVWVHNHNaem02cnQzNzM1eThPREI1elJaTkJnVFFmekE3OGZIeHc5eGNwSmdBWWhFSmk1Nm40eDBwYmlyRXN1UlNadWxMeWxsMG5HbUxWd3ErZ3BNc3RyUU5kSkpzckIySEltZERQTUNGYVRTOUpkTVk2RjdmNlVOR0VOOFJUb3ZHdmhpRUhFcHFpM2JVWWozOS9mLzd1alJvdzFFN0FzY0o4Q29CSjVMUDBramhuRzVFUk50TWVtekZvN2xzWHg5WXpQMFFSaklVdEhjQVA2TnJnMW1xZWdyc0V4NkIzMTBuVElKWGlRS1lXcXVhWko3eG42N0FoWk05TEMySkpEQmdWbkkvSUFwVTRLUXZYMzdOZ1NkSlN0R1N3c1dsRFV6cUhqL1BaY3pNYXpKMmFHd0hyT3R4SnowWlcyTVF1aXp5R1JZYUhSc2JPelhxTFhadTdpMFVDWndleG5MNTA1Y1FrdURIU3hhcm1GRHJMMUpGTnlrNlZzdVhyejRXM0p2RjRnaHc2UnRuNmZUNlpGY2pBTWt5UFZxWElJckJmYnJMUUNYTnFRUEFBSXg4RGV3UEhSc01NVUprMUxRWjVISjZpa1lDQmMwU20xV3JSdFB5TzFXaXNzUDY5WE14V2cyeUhXaGx5OFlUS2lsUXYxbm82T2o3OUx6UnhuZFNzZ1RNUXhhU04vNUZSTVlZOGE1ZEVBSHU1MGptYjZvMVBnd25NV2lyNUJtQThJQjRyQkJzMEU5RUlCOEFyckhwMlZpZWdCUUtkcUZ3bkxDVFUxTmo1UGxmc1pKVmxRREErSVk2T3VOalkycnBWclY0eWhCaWFHNUdGbmdIaWxwOG12cFEwM0xDRkhDSkV4YXJIYWhId29GcjJIUUxoUjVodXJLSmNWYjFJYS95RFFIT2ZqTEJidEF1OEM0YXA3QlVqWDZDd0EyWkR6Yjc3QjUvdGhHdzcrSHMvNHFUY05mOEMvSWh1TnpHSnlzTEFUb01GM0tZWDFLYkRxMmI5Lytvb1Q3ZnFWTE5UQXc4Qks1b3VaU1dTOERGNVltMTdEb0RFMmg0OFYxYmNheGVFUGxIZkdsYzkyNmRUK1E4SEpoSEFFV3Jwd3hML3JkSVNxTWgxU2ZqM2NLVjNQZmVnSFFNNlQ0VjZNVENVdjB5STRLcEtEWmdJNlY0K3VIN2hJNHFjcFovZHM1b051U0g1djFJV3RGbGlmZHhRRE5pNHNFQVVSeVFWOTJoKzFzTUZtUjNmU2xTNWUyU2FWWUVvQ0t5Tzc1OEh2SVZnWnY5L0EyaW5JaXRJczdMVFY0eEdzK3ZOM0J4UHNjbFlQdldnOFlnWEJSd2pFSVV3TlVUU0JvZktRbjUwMERwUmF3VTJTRW9qbU9nbHljekFjS3hIYzdSUEs1NTZWODZ3cnU2YUp5YlF6b200QmY4Y2dRNmdPOWRVVlljWmh2VnhtVzRUOUdhdkxlUUxWRUJTeXNPSVJTRFo3T0FQZjJPQjdneldjeWJCaUZ4cUZ1bzhUZ1Q5SXhGNStaMkx0RUJTekt0VEJ5R1NTc0FEVXM0UEttOWxaTW41MDFiclBLc0tGQVpjU0p4SGt6SmNnUy9vOE9MVEFqM3p5L2tLODhNZ1ZGRmtIQURoMVlMK3V3OERjRWxUOWh1YzgzcGRoOEs5Wi9kQlR0UHlXVzZNaVdDdENvL010T21ROGxXL2tqdExJZS94VmdBT1NEUzIwL3BNRk5BQUFBQUVsRlRrU3VRbUNDJykgMXgsIHVybCgnZGF0YTppbWFnZS9wbmc7YmFzZTY0LGlWQk9SdzBLR2dvQUFBQU5TVWhFVWdBQUFQQUFBQUJVQ0FZQUFBQzgyTHBxQUFBQUdYUkZXSFJUYjJaMGQyRnlaUUJCWkc5aVpTQkpiV0ZuWlZKbFlXUjVjY2xsUEFBQUEyUnBWRmgwV0UxTU9tTnZiUzVoWkc5aVpTNTRiWEFBQUFBQUFEdy9lSEJoWTJ0bGRDQmlaV2RwYmowaTc3dS9JaUJwWkQwaVZ6Vk5NRTF3UTJWb2FVaDZjbVZUZWs1VVkzcHJZemxrSWo4K0lEeDRPbmh0Y0cxbGRHRWdlRzFzYm5NNmVEMGlZV1J2WW1VNmJuTTZiV1YwWVM4aUlIZzZlRzF3ZEdzOUlrRmtiMkpsSUZoTlVDQkRiM0psSURVdU1DMWpNRFl3SURZeExqRXpORGMzTnl3Z01qQXhNQzh3TWk4eE1pMHhOem96TWpvd01DQWdJQ0FnSUNBZ0lqNGdQSEprWmpwU1JFWWdlRzFzYm5NNmNtUm1QU0pvZEhSd09pOHZkM2QzTG5jekxtOXlaeTh4T1RrNUx6QXlMekl5TFhKa1ppMXplVzUwWVhndGJuTWpJajRnUEhKa1pqcEVaWE5qY21sd2RHbHZiaUJ5WkdZNllXSnZkWFE5SWlJZ2VHMXNibk02ZUcxd1RVMDlJbWgwZEhBNkx5OXVjeTVoWkc5aVpTNWpiMjB2ZUdGd0x6RXVNQzl0YlM4aUlIaHRiRzV6T25OMFVtVm1QU0pvZEhSd09pOHZibk11WVdSdlltVXVZMjl0TDNoaGNDOHhMakF2YzFSNWNHVXZVbVZ6YjNWeVkyVlNaV1lqSWlCNGJXeHVjenA0YlhBOUltaDBkSEE2THk5dWN5NWhaRzlpWlM1amIyMHZlR0Z3THpFdU1DOGlJSGh0Y0UxTk9rOXlhV2RwYm1Gc1JHOWpkVzFsYm5SSlJEMGllRzF3TG1ScFpEcEdPVEExTTBFM1FqQTRRemRGTXpFeE9UVXhRamhDTnpjd01EaERRak13T0NJZ2VHMXdUVTA2Ukc5amRXMWxiblJKUkQwaWVHMXdMbVJwWkRveE5UUTJORGRFTVVNM01FSXhNVVV6UWpJMlFrSTJOVFpFT1VaRE1qYzJPU0lnZUcxd1RVMDZTVzV6ZEdGdVkyVkpSRDBpZUcxd0xtbHBaRG94TlRRMk5EZEVNRU0zTUVJeE1VVXpRakkyUWtJMk5UWkVPVVpETWpjMk9TSWdlRzF3T2tOeVpXRjBiM0pVYjI5c1BTSkJaRzlpWlNCUWFHOTBiM05vYjNBZ1ExTTFJRmRwYm1SdmQzTWlQaUE4ZUcxd1RVMDZSR1Z5YVhabFpFWnliMjBnYzNSU1pXWTZhVzV6ZEdGdVkyVkpSRDBpZUcxd0xtbHBaRHBHUVRBMU0wRTNRakE0UXpkRk16RXhPVFV4UWpoQ056Y3dNRGhEUWpNd09DSWdjM1JTWldZNlpHOWpkVzFsYm5SSlJEMGllRzF3TG1ScFpEcEdPVEExTTBFM1FqQTRRemRGTXpFeE9UVXhRamhDTnpjd01EaERRak13T0NJdlBpQThMM0prWmpwRVpYTmpjbWx3ZEdsdmJqNGdQQzl5WkdZNlVrUkdQaUE4TDNnNmVHMXdiV1YwWVQ0Z1BEOTRjR0ZqYTJWMElHVnVaRDBpY2lJL1BqTUdUS3NBQUJ5SFNVUkJWSGphN0YwTGtGUlZlajc5bk81NTlEeVlFVWZFQVNFeFlKUkZDOE5LUUtna3UxdlI2R3JjRGV1anlrUnJUYlJpYXJkU2Nhd0tlV2g4c0JWZEg5RXN0VVFSRGJBR2pVdXh1MWhnc0dCVmxNSUhLakRvekRBNlBHWkdaMkJnR0thbkh6bi85Znc5L3oxOWJ2ZTkzYmRmekRsVnAzcW0rL2E5NS96OWYrZi96Lzg2bm1ReXlYVFRUYmZLYkY1TkF0MTAwd0RXVFRmZE5JQjEwMDAzSjgydlNhRGIyZFE4SGsvWmo5Rk51NU4vTWhQU2JXTHFwcHVXd05JNlFMR21meTdkaXNScnlyVmVBOWcrRVQwWkFKelVnTmF0UUR6bnNRQnlrdlN5NGoxL0dSTFJhMEZNSUZwQ0lxUUdzbTc1OHAySDhKM01lMG1KN3hMbEJtSi9HUkxSUjE1OUVuaGo0alZPM3ZOb0VPdVdJOThoWUpIWC9BcE1JSjlGQmQ4bFJBZjdTYkxVdGg1dm1ZRFhTd2dZRWoxQVZrV2YrRC9NZTVXNHprdkc3OUg4cUZzTzRLVzhWVVhCMjk3ZUhpSFgrZ2hQb29EeGVNckFVdXN0RS9CNkJYRkNPS1k5ZS9Zc0dCd2MvUEdwVTZjZTQ2L3RHemR1YkNOYVEwZ0JZdDEweTBYakE3NEx3djg3ZHV5NDVNeVpNK3U1WVAzcTRZY2Y3azRrRXA4RC96MzY2S1BONG5vRXVVOVN0MHZYd0kxU2lHNlRrRDVCdkdyZW02QnYzcno1OG1nMHVpZVozbUpEUTBPUHpwNDl1MFZjMnlna2NvQVFzMnptcjN0cHVrM0o2eGRnckVXKzYrdnIrd2ZnTVFYZkpUbVFCN2hBK1RaZXkzdU40RnRmTG56bjZueExTRWlxRmdNWW03WnYzLzZIUUt4a2huYjY5T24vSVNDT1NOTFlvd0dzQVd4VGFLVDQ3c2lSSS9ja3N6VE9sNlBBbjBSNFZPY3FQQ29kd1BJcUNDQnM0bXJLNzhiajhTK1NOaHBJWXJJYTFvcjcrRFNBZGJmSmQ3RG9Od0QvYk5teTVRb096bE4yK0c1OGZQekEwcVZMenhWOFZ5OEpqMGtGNERUVmVYUjA5RGRJS0E3a0kzenZzWWIzLzRLL1ZjVDg4TU1QLzh3TlZWb3ovYVFDTVBLZG9Ub0RHUGwyN1FQY29nME1ETnkvYXRXcTMydHZiNTl4K1BEaHV6bXdUOGg4Tnp3OC9QTjhWZWxLQjNEYUt0aloyWG1UaFlyY0JIL0RlMmtiNGxpc2k2eUdrVnlsc0diNlNRRmdwZlR0NysvL1I4Rk9ZMTFkWGJjU1lCcDl4NDRkVjZtMmRMdDI3Vm9tcm1rZ1VuaFNBSml1Z2pVSVVGQk5FTHlFZ0MyaUcvK3JRQXlHaDN6M0pKcnBKdzJBVFh3SGl6OXFkeUJ0SmI2YnlqdFlucHZlZi8vOVAxWFlZWDZaanhTdWRBQ2JWc0ZEaHc3ZGptcnpBdzg4TUV0YUJhY2dpRUd0a2RWcCtEL0Ruc1NXaVY4ei9hUUFjSnIwUmNQVm1UTm5YaVA4MWlqNHFKN3dYeE5zNVdRRkVQYk91VXJoU2dVdzlidWxMSUI4RC9JdVVLU25wK2VIaEpBUnNVK3BGUVF5VmtPNFJsNE5ZUUVnMzZzanhQVFprY2FhNmM5NkFNdVdaMFByNDF1d1Q0Ri9RRTBtUUt3UjE0U3Bpd2tFaTd3ZkJoc040VHVxL1pVT3dFVndvUHVvNVJuMkVtamRrMENJRVZjaFFraGpOZVRYN3FXRTVBdkFiOFhuelFUODFRVEVCWEcyYTdCVUhJQlRmUGZKSjU5Y0ozam5iU0o1YThRMUFSS1pWWWQ4QjhZcjJhMjBmUG55OHdqUDJyYkJ1RG5mWWtZeHlSRXdiTTZjT2RmRDY4REF3Q29TZHhvVE1hZTBZOHd6NisvdlgwVnZHZ2dFRnZJVnNoSGpVNG1xVkZNV2tUSzZsVnZrRld0cmE3c1JYbzhlUGZxY0ZPK2NrSGdPWSs4aE12QjUwMDA5bnRES2xTdXZFZi9hMHZiT2hsQktMeVZrYlczdDliQU5lZkxKSi85WGZENU9DSW1aSUtpYUdJUjg4TUVITjhGM3lEMTl0OTkrKzdVUWFza2wrcnpEaHcvL1lQZnUzWmVSUUJFTllOMVNmTWZWWjE5MWRmWFZuSWUrdlBmZWV6ZUx6Mk1LdmtzUUVMTmx5NWJ0NDlyZmUvU21VNmRPL1hOeS85S0VWaFpKaGFacVRDMUdYVWtXUGJRa0I4bUs1a2VMSWFqYnZiMjlmODFYemIrMzhnMWoyNzkvL3cxa2IrSmpXb1dlckNvMDViczZhbFVHd3hUWis1cmlDTVI5MEY1VExZVmJtdFJvWWtTbGF2Ulp0d2VtMW1mRHdnZE9jeUFDQU5MQ2lvd0FOcXlHWUMyMEV5M0R3ZDFIL01oaHB6NjZmQUNzVzluRjRLZnhIVVR4QVo5MGRIUXNWNFRqZXNoOTByNjdidDI2UzJWK2d3VkJza1puRlJobHRRZDJRRWhUa241ZFhkMVNlTjIyYmR0VzhWN0NBdmpHL25mRGhnMC81dmNkeVRZZXZySnUvT3l6eitJc3ZZckNaTmpqNWRJbkUyMVlPQnhlQUh2Y2wxNTZhVGRSbjYzNGhLclQ3S2FiYnVybFVyZVhYc0QzMDRzbE5iMnlWR2liQUVZMUJneEx6VE5uenB3SzZnZEVVd2svN3puRWVoeVVMSUhWd3NMY0ROSTZtd1FtYm9GNmxrZU1kSmxKWUZYbENGcjB3Ry9Sa1k1V24vdklka1ZWa2FMU0piQ1hrWkJkME15QTd5QjhrcG5EY09FYXIrSmVxRWJYRUovd0x5aS9jYzF3T3pNSGRXUjFKNVcxRmRvakdqT0hyL2tJUS9sV3IxNTlHVmp4UmtaRzNwWlVacC9FV01oY0lGRzlWMTU1NVF2ajQrTzdySjdORjRTT0pVdVdmS1NRNkpVa2JiSlZLUEZKQVBSbkFMS2Q5MzJLOTMzU3N5dFJZcWRabjE5ODhjWGZCNzZEZEZWSndscXR2a2xaQ3A4OGVYSTN2U0FZREY1V1NqN3p1Z2xhM2xUU0FhM0I2RXozY2JWakxueVA3NE1QU0o4RmhkUkVIekMrR2xLa3U3czdzV1hMbGgreHI4dWJwTFhqeDQrdlorWjZSaDdKOGwwNmE2RTlack9pbjk4Q3VETE5rRjZaT3IwV3YrL1BzakQ0eXB4K21laWE0dlBwMDZjYmZIZml4QW0wSmlja29GcUJPRlVMcTdlMzl3T0o5eU9iTjIrZVNUVE5vdExHbXkvVEVkRDZMRlo4Vk9OQ1FsMnA0dnZmK1hDRGpvNk96d2lBZlJMelVtWkpMUVRYWG50dDUxZGZmZlh2aXZIRU9iaGZWVWhmcndJSXZqSmdSaG0wMmVoSEY3V3crRHNvcWNneTBGVGRKOTA3U0g4YjhneVYrdTBySS9vNXBUUFlYUzZCMTg3T3pvOEpnQzNCbTV6UXlWTVMrTG5ubnVzUUdtR3F6ZVZOSVlHTFFoTi9IcXVhcktKNENOaThaRFZLKzlGcmFtcCtCMjV3K3ZUcDVLWk5tNWJObURHam1hc2k4ZWJtNXBtaFVLZ2FIOFQzSzBCRUQ3L3VXR3RyNitPQ29XTFhYWGZkMDIrODhjWjMvWDQvRW82TmpZMjlkZXV0dC9hU1JTbE1DQitYWHVWcWc4V3NjdW1VZmtwR1dMcDBhZkNSUng2WjA5allPSlV6Wml1OHgrazYyK2Z6MVdSNmVEd2U1enVYa2MrRU9uaDBhR2lvcjcyOWZUK25aNVRRenF0UUl5a05TMG0vWEdrTjZ1NXNlTjJ3WVVPWEJHQUsxa3lHTE04enp6d3o4dFJUVC9WNnZWNHM4Y1FhR2hvdTRpKy9Lc2xXdzJFMUE3b3ZvNnMzZ0s1T0dBVk1LVmszM0hERCtkdTNiNytXUzl0LzdlcnEyc3hWa0k4NEV5VjRUM0pKYW5UT1VFa09RSEFCcVNvaEdPKy8rKzY3MytQM204WTcrTjJhZCszYTlTZTBCTW9YWDN6eGQyanNFdGVjczNqeDRsWjVQR0tNZFdMTVZJbzVxbk9VWXpVSXgvU0RjRDF3VlVEcUcxL0lYZ0VEak4wRWRDY043Z24zaG1mQXMrQ1pKRlN3S1BSejJZaEY0KzZOc1hNK09nUkZJOGhjTEExWWtpRXJsY1hFdm5acGJyTVJGKzBweHR6OUR0VVFXZTN6TTZraUFVUzY4RDNCMHZQT08rK1B3dUh3WXI1U3pZM0ZZbUJnWW56aThOQXgvcDZITXd2SDdsZGIrYjcxQUpjY284ZU9IZHNiQ0FTaWZKVk0vUXEzM0hLTG9lbzgvL3p6bCt6ZnYzOVFySUpqd0N3TEZ5NThqKzlsVmtVaWtidkFHUGpFRTA5c291Tjk1NTEzdnJsZ3dZSlgrUSsyYjNSMGRPZVJJMGRldithYWE5NFFMaVpVRHpIU0prWlU3MElVOE02WmZsVExFRC8rR1REV2NmcUJLamZLRjc5OWZJN2podzhmaG9YUnBOb2gvY0I0WTNJSjhEWnQyclJMK0V1QTB4N3VIK1owdjRnLzZ5TCtHOHpqejcyK3BhV0ZyVisvbnIzd3dndmxRTDk4SmJCQlY4NTM1eE1qcU4weHBobTZPUDE3cTZxcXFDRnJkc21NcFE2VG9WRmkxRkpwQWRFb2tCQU5PYnRTMXNZWVg1MWU1MUwzSjIrKytlWWQ5OTkvLzdMSEgzOGNKR2R5Y0hBUUlyQWdmUkFNQUxEU1QwVlR2YUpQWVJQSkNqWENSVFRscnJ2dW1nNnJLa2dOY1ExK2YrcW5uMzc2bDJLbEhDTlM1Z1NNRWNaS0ltaFFxdFFTaVpLMXhsYU95ZVNPNlFkejRMUjZHRDZIZ244VzlIR3R3elBnV2ZETVl0UFBaUWxzeXY5ZHMyYk54VUphL29LWkF5OE1hWm5oZmhqUWtZckk0clQ1TjdtNEJFdlBEL1lXWSs1Mk16bjh4Q2ZiZ0lNRkFJRzZCZEZQSkJMcUN5NFpmM3Jnd0lIdkNSVVcvTHp3ZWdFQTlyWFhYcnNacnVNcittb0Izdk9GSDdpUm1kTUlheVNqVFJXeHVJWUZpSnNnYkJJcWVnandSdERYakdBR1JvT3h3SmhvelMwWU00d2Q1a0NJM3lEbVNNdUhldklBY0Y3MGswQkN3ZElvN3RNZzVod1JhbTBkb1YrdGVGNjE5QjVlaDkvRCt6U3FWUGhpMHE4QUFFNkY3dTdldmZ1UFlkeDhIazh5UlI2dkRRQ25VbUNoQUlBY1Vzbk1OZHJLQXNDMGNxU3BCQ2ZzamZncTlCTWlMV0pjemRvTVA3UkNjazRSQUlYOTYvUjkrL2JkTGZhcy95S0FmWTRBSXdWc1VBcm9rSDJYQ09RRzZYblVsUkpoRTRuWnFRNWpoTEhpL2hubUFIT1I5bnUxeEJLclpFSUhjYmo1MEE4WnJaNHNidFZzSW1kVjVScVNYVVFxVjVQc2NzTDdJZGlSZGczRnBKK0xBRTVMSWNTeVRiRG9zQXdobEJrQW5Db0dBR0dZc2cyQkxHUVlFMTFTQUZ2V3o0VWtCTDZQK0lSR29wRHFCTEtoQTFmOEJwVEVuMy8rK1FyNEhsZHgvMGFBbC83ZzJYeVBLdjh5TWw5QTRYNUJhVjByTXlPTUdjWk9LZzUrUXNxR3ltTktVd2V6QU5ndCt0VVFvRllwRmpjckY0K2Q3bGU0azJRL2ZGaU1JYzNBVmdqNnVReGdVOVZUU0lTQmNjSnJEZ0QyVVFDak5LY040cVNaemFTR1lnSFlKek1mVjN0L0JPb0M3cytrS2hwTlJKS0dKZlczVmtqaWxpKy8vUElSa1RIMEE2TDJwbzVTc2ZFRHFZSWV2TXc2eEpDcTNUV3lWQlpWUHNaUUZZSTVNaHNsYTIwQTJBMzZaZlB6cHNVMk82QmZwdkJNS3o5eFFlbFhTQUJqSmhHcDRGSkhGaGhQbG5zaWdPc1p5YVNqalN4ZTljVUVzRGVMNFFWTjZKRDgvRmV0cmEyUFFTZ2ErQUs3dTd2dmFHdHIyMGdzZFdPaXgwaVhrL0lUZ1VBQUNNZWkwZWdwWm4zeVd5YWpXMUw0N0t4NlF1cjRmQndUanRONEZzd0I1Z0xYd054Z2pqQlhOREJLWUhGaS9YU2JmZ1lOQVNla3B6Vzc5Sk85U05nbG1zbTBLeGI5WEEvaTRId1hFZkVDSXdvcnN5MTdMLzR4TWpJeUtuL1kwTkFRVVZtL1N4R0pKWjhiQXhsREY1MTc3cmtQNGdYRHc4TlBYWGpoaGI4aUV4c25EQmVUUVVzQjV2UDVRaUpJSTU0aDhvWGxBV1NtQUhOY0dsdE1qTm00SHViQzUvUU0zaHZtQ25NVy93WWNSaHk1U2o4WnFFWHdTcGlBWFFMNkZhUmhnQXZudTJnKzVCRy8zN2o4UVlpM1lvTTNVeWlsS1FoODRjS0ZmNHVTQk5wNzc3MzNNckgwSlNTd0ppUkFlYVFWREZReGlGc2VMcGFuTElOMFRtQTBHcC9UUytRN1FURm54bkxMWnNxYmZzVUNyTU9Gc2xqMEs0Z3ZHTm9aQ0ViSTAwZmQyZG1abHRicTlYcUQyWjVkaU9hM29RYXk2dXJxNzlBUHd1RndRQkdnWUl1UWZLSUJvY3BFblJKU1BzN1JCUWIzS09hRS95L05ZWTZGcEYvK25GeFo5SE56QVVkMUh2aHUxQW00U0daZGFnNWNoWTdiVmQxTEpZSGxTWmppYStmTW1YTWpCcVd3ekFrQ2xwTVlIQnc4WTVlQWloUkZQSi9WYmtBOXpVcVJqVnhHemFPNWMrZitoZlRjUmhlQjQ1aCtaTTU1Z3pZVC9VVFArQ3p5V1VubzU5SWlFeFdxdE04SjNSU0dQcnZhVjhrQlRFUEhPdWdIRUw3WTI5djdmZkZ2Z2xnclpiK3RaUXBhYTJ0cnhNRktLQjhDN2xNOHc0cHdxcXdmR2dvSUtXTGZyNnVydTVOK2ljdzUxNm9lcnREUExzamNvSi9xR1FyZ0Y0dCtoVkU1L2Y2Z0E4MVBSVGZXMHRJU3RBbmdnZ1BabTJYZm1CRFM4a1g1Z21uVHB2MUhmMzgvL2RFQ3hQVmhGWVRoamNmalkwUjlOMlhpcUJxNUJ2MlJOV3dpNkVQNURBWHhxRkVKQXd5TUJuT0F1Y2p6R3hvYVdxZllRenZkZDd0T1AwNFNud3pxVEMwWCtrbmZMd1g5Q3FGQ28ycGY0MUJ3WUlDTEgzOVBMbnhDOG9WOHdScVZ0cVpGa2NMWkFHeW9SNHNXTFhwT0xxa0pQelpmaVI2S1JxUC9CK1ZjQ2FGb3pHOFZrUzZHYnpFR1dRMHNaZGIzSzFReUs1K2t2NzI5UGJKdTNicnptVGs2SnNUTU1iZ3lrR25pQUJZZFl6Qm1HRHZNZ1VrK096N1hEMkhPUk0zTkZjQnUwRThGNkV3QkhHY0QvVndITUIvclNhRlIrR3grTDdWb0xWKytQQVR6eFU2MFI1VnhEQTEzNGFKSTRReXBXS2J3TVRoMkVZSzJyZExSNElRRWNPcEw4YnNZUmdraGs1QS9PZlBZc1dNL2crdmZldXN0Q09UQU9HaDRSaTB6aHdmUzRBSERHWTlWQVNHVUQ2cnJNM1hZWVEwekIwR2cxRWlkeFFSanRab0h6QkhteXRMalpiMVdkQ3NnL2VUb0xJeDlwcEpVRlZwWmtmUXJVQ0NIVVU0VzY2bVI0Qm5MUUE0Q1hxQ0JFZnFhN2VCNU9GMEUwakU1am5kQXBKWjRSb2dWT0FvdFd5UVJGZ1F6d3VqZ2pCZ1lZSmE4MHNGVHAwNnQ2Kzd1dm0zbHlwVVhFUURQNEgxV1YxZlhveUp5Qlp6L2tJMEVTUTdBdEMzTUhLU1BBZlo0WXB4eHdKbE1ORGlrU3BHM2lrSDFsSkdOejFSbnZwS3d4aDNrZ0RXNVRuVXVrVmg1MFE4T1BXZjJzb2dhRmJTck9Qb1ZLQmJhQURDZXF3WHpaVmxDS1NVQW04clJabXZTc2JjRm4zc21CcFNQWkV6Rnd2Sjl6MzEya3NvaEdYOWtaT1REdnI2K05YeFZ1dS9aWjUrOS91REJnMFlxMXQ2OWU5c0ZnTnZZUkZMRGxHek1hc1gwa0dWQzRsSHBTWE9ZMldUSmdEQVhtSlAwWGZuWVNLY0F6cHQrUWpKL0FFWElJVVFSVm5hTEpIdmJ2WnpwVnlBQUc2R3NrTFVHWTRWNjVNeEdMRFRaODllaUJrVlRLNjBhT1dlNG5rMUVvaFZzN2g3S2VMSUJVckVIU3FWSndYbEVkOTk5OXgwTkRRMTNXcmtNNE41UUZnZTJ2WndSWVc4RXljOXdwQXJVYis3bmFzMGJmcjgvT2pZMnRyZXFxaXJCcnpzMk9EaDRKSlBLZjhVVlYveGFoQ09xV3B5cmg1czZPanBXejU4L24xYXZqT00ralkrbkd3cVJpZkVOSFQ5K2ZOWFRUeis5ZXNXS0ZVUEVLaHhsNnVNMlRITlR1QjVjcFo5Vmk4ZmozWHdldzV5bVVJRXpPanc4YkNUdTg3bjNjUVk5V3FuMGM4bGxSL2VocVd3d3J2SE41Wkp4SjBTTTFkZlhyeEJ6R2hPdk1ka25MbHlVTkpzTVNqdXRobUlIVnMrR1lnR2N2Ni9HYlRIN09sb05nM1FLTTNlYlI0TFM0eGtqVENyNUFvSGllRWkzUXFVQTFTcDU4dVJKbzN3T1grbFIzVEwrNTZvSjdNbEEwaGdTMjYwR3B4aEMzaVk1cFNFbFFXQ3NNR2FGTkl1d2lUSXJHUStzY25pa2FzNzBLMVVyQmYwS21kQVAyeEZ4bE04ckxQMUlGVStXTkVKRGU5cXpaOCszYmRZa2IyUVp6Z3d1OXRFcVZCMmt4ZGJybVpSaXRuSGp4dmxRclFEUC9FVUFRNzByTG5GVGdEVlNjZmg3K0Q4VXR3TUFxMnBpNWRxZzlpOHhKcVJ5V3lVMWthcUsxU3c5aDlXdGlodzUwNjlVclJUMEswQk5MRncwRzhYaU15cHFRdE9pN3Nvc09JVWFibXp2ckg0YnFGVEMwcFA2QzU0TG5VbUZWa1d6cUFxT0t5c3ZyRm16cHZXcXE2NWF3TldWeTcxZTd6ZTRxanlmZzlid3dUVTFOUmxxTlZkbmpHZENIRGdFeVBCcklOUXlMNDBDMUVzdU9SNGhtVDZndm95SzhXR2FGNjFXaVZVVzQ4eEJUU2NiS3JRcjlPTzB1b3h2TDc0QkJjVGxpSzVDdEZMU3oyVVZtcnJSUUJwNnVPYndGdWV6Y3ppUHpTWnFia3lvMEFuRnZhZ2FIY0tnbFduVHB2Mm5OSmVSdFd2WC9zRnR0OTEybEUzVWJSc3Z5dmJCNGRFZzhva0xjdEo4dmNKd0F1VnRvTjdWZVk4OTl0aTN0bTdkZWc5ZnhmcjRhamplMmRscFZLbms2dldRVlZWS0IxVVZUMEMxQmNrTkUySG1Hc2NCbGw2dElzRE1TZWNlcDNRck1QMVNmZHUyYmQ4RU53NFl0S0FTSXFsU09laENWY3FTMDg5bENld2h3RE1rTU4rcS9RYm1TaXpsS1N0NWxtVCtsRFViNkVOTElJa3lQVDlsNlRXeGlsSk9LTmV6ZlR5S01MT2d3dmZZSUZTUHFjTFNERFd3WmgwL2Z0d295L25RUXc5ZEpTelIwOFhuc04rYUFnU0c0MFJwUjZLTGNpNm1iVFpZYWNtUFFvdXNVWlZPZFVSSnpzWEo4endieVFuOUhGdWFLNVYrQlFBd1N0OElkUVdSRXdWTkJRY3NBSngyekNndGFnZEgzWkp5T3ZWV2Z1OXlBN0FkWnNTeUxGakZvVmtBZFdaUFQ4K1RNUG1kTzNmK2tQaUNiYm1TNk9GU1VEVVJwQkpMcjJvaEYxYnpNcGRQNTNQeGNMTnM5S3NXTkt3bGU5SEdYTjFJNVV5L0FnRFlKRDNCdHk3cVl0Mm5BSnpIUmsyc2lPeFNJbjVsNnZjdVdrVk92d3NxZUpMc1BaSmszNFEvY0Z3eXBRZTR5Z3p1RHpacjFpd0lWUGkxK0d4YzJsUFJVd0k4Sk9aMG1POWxQanB3NE1BL1hYcnBwVHZKTlhGeWp4Z3J2eHJGdWRLUFpRR1AxWEVlU3ZxQis0blQ4S09EQncrdXVQamlpM2VTNzhXbDM4QkVQNnZVUXhjU3Bvb1JTbW53WGtkSHg3NFpNMlpBZXVjbEZuUzE0cEVFb1kvM3pqdnY3TC81NXB0ZnJhcXFtck5reVpMMTZFV3lzQU1VbklFS2RieW9YSmtpSkZiQ2x0V3JWODhIaGhnWkdka2kxT3VwekZ3UFNpNnNobGJiS1MrLy9QSUNvV3BqYnlZQkJ5RzdWbEEzNlZaZytxbk9UNUxQVGJLcVBrbnBaMGdQcWJaMG95SjgwclNmZFhpY1p6bEpZTmtTalc2d1FWTEgyU1ExTS93T1hqazBFMXhHSkJ5MW5tdzNzcFlQS29VVm1qbTFKa3Izb3RiV2FtSHQvQUNzcWx3S3orR3FUWnhZQk9QU0NrWXpsbXFJYncxUEJhQmdCZXNmcmJWVjBJWFBEV25rRkFTS2xFSlBCcXUzdkJDRWlSVVpKVXBTQ3JoSVpKSzRia25nSWxpaG1iVG9HY2tGbzZPai94MEtoYjZ6ZnYzNmVYQmd0d2c2d1pKR0NUcHZSUjQwZGxvMkZxMzBja1dhb3N6ZDZ3YkJWRjJoeHRCRHNzQVB2QXNpa0Y1NTVaWExpY3FZdWdic0E5Q1orVUN0VVdZdXFwWTZUSG5Sb2tVb2xjcFdYWFpDdnd4MHpWYkVUMVdVRHZ1STZLY0VMV2t0TGxQVWxJUHhsTHY2VFBrT0lnQ05DTE9sdkVsYmpHeDUwTFNQQytCSGhlQ3hCZHhDTkc4SmlHa1FjbUJnWUN1OHRyVzFMU2FSTXlwaUpxVTlubzhBTmRIVDAvTmR2aGk4MnRmWE4wNnVyYlREcUl0Qjk0VEMxcEJRZ1Bkc25qLzcrT09QWDRmWHBxYW1xeVcrVXhVMWtLM1FkSHNYWk9tUlZrVlBtL1NXaXBCcjE2NEZRc1pyYTJ1L3BUSW9XSlEwQ2FLazVzQzlZWHg4L0xjWFhIREJLZ2p0RTRkdXhUVndzOUkreVRJZkQzbzJ6anNsT0pZdFc3YVA3NE43Z3NIZ0VzaVBadW1Id0ROSmJVWkx0c2NDUDFVbDVUazNEQklPRmdzOFNjRndnMFNqMGJkaHp3RitTcGFlSVNJbmtodEdHRGdSZ0o1c0FBMk91bUFUZnIxQU1SWW1OdzA2azNKRktZNFJpMGs4WkFUS1FPQ0ZjQUZoRVhvYUYwMlRJRkxmVVozR0FCbE9iT0tZVXR2Vk44dk5EMng3dThla0pIZXNsZytCQkpKVnNJcFlXcXNZU1dlRGErVlVPQkp3SDlZQTFnQlc4SjNKSHd5K2I4eUhKaGI1T21ZdWFZUmVrelQvdWVDN0FjSjNvY2tDNExRTUVRZ3doM3hTRWdtRWdRU1lUSjdLcFlXSUZ6a2ZsUnl1ak1IcC9tS29OQnJBRlFYZ05PMFBDeXVRbzFib3dlVTFGTHlnOWNtNXdCRFZSYVIzVlZrQXVNQ0VwR3AwS2o1MWVIajQ1NUlVUmhEakVaaHczUlNWOUlVd1FPTFhySGRLeUVJeWt1Nmw2Vm0wdnlwVWllR1VSVVVvSksxdWtqcWlGcmQ2bE8ra3c4eUNrd1hBYWVxTXFOTUUyU0F4a2srSkIzcGpvSWJoT01jakxVa0sxeStaK21CbERXQU40SXphSDNUSWVRWSs0a0xrWjRTUGdPZncxRXc0a080ZWVlL0xCY2tMNVBwcXA5dTJTZ2R3bWpxRCt3dStHaDRpSzFzemdoZmVVeFdFSThZdjAySE41YURLNlY1V0FGWWFzekEyV21RVVBjMmt1SEZ4a0hkTVlyc3h3cU01OFYwbEExaFdaMUxWRW5GdkN5b055UlpwZ3IvaFBjVXF1STQ1U09IU0FKNzBBRlpLWVVqb29KVkJ3YkFLQmZBVVdWdEpxYVpXWTY1OGR6WUFPRTBLWTlWQWtxWjFDTHBWNVQreWI3RXNYYW9CckFHczREdlRYbGdJandHYlZVcmVKdm5TRWVJdEtablFLQVVoTFZkRDJWUnYwY1pJcVpkR3NnZko2UlE4emZTVEJzQ1U3MHpDQTdTOGJGVkN1ZEQ0bEpUNWJaUmNscE1Td0dsQkdyQzZXYWt1ZUFKOFoyZm5UU3c5NlR6bkl5dzEwMDhxQUZzS0R5aFlaNlh4Z1dwTml0Vm5ySGM5V1FBc3I0YXA0QTRtNmliTFJpdncyMG5KNTdTeXZsY0RXSGNIZkVkVjZWcmtLZGlXOFQzdVAwUGhPbkhLd25aeWtvTUt2TjVTQTloVHBMU3ViTVNrTWFlcHMydWdzTnU4ZWZQYXVOUTlldU9OTi9hUTcwRTJFczJpeVRtZVZ3ZGduRjNOQWQvSlZWQ3l1WUtBMTZKTWtibFZTcDRyQndBemxuNTBwVlZDZnNhcUVSckF1amxJY1ZTbEM2cHNLY2tNUEZkeW9lRXZNYjB4L1M5Qi9rOHdjM2FJaDZuelhrdDliS1Z1RlI3TktWNFRFbitwMGxrcHZ5V2s3NWUwK2N1TWtCNkpTS3BjeTdLdmM2VmJ4WUdZQ2hLYUM1eVVlSy9zZU01ZlpzUk1zdlJ5TUV4Qk9BMWMzUW9GNG1TVzY1Z0dzRDJDYXFEcVZrcmVxNGptMWIrWmJycFZidk5yRXVoMlZvblFTZVpWOEd0QzZxWmI1VGF0UXV1bW13YXdicnJwVm9yMi93SU1BQ1lybE9vMDZBYmVBQUFBQUVsRlRrU3VRbUNDJykgMnggKTtcbiAgICB3aWR0aDogNDBweDtcbiAgICBoZWlnaHQ6IDQycHg7XG4gICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgIHNwZWFrOiBub25lO1xuICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlO1xuICAgIG1hcmdpbi1yaWdodDogNHB4O1xuICAgIC13ZWJraXQtdHJhbnNpdGlvbjogb3BhY2l0eSAwLjI1cyBlYXNlO1xuICAgIHRyYW5zaXRpb246IG9wYWNpdHkgMC4yNXMgZWFzZTtcbn1cblxuLm0zNjAtc3Bpbi14IC5tMzYwLWhpbnQtbWVzc2FnZTpiZWZvcmUge1xuICAgIGJhY2tncm91bmQtcG9zaXRpb246IC00MHB4O1xufVxuXG4ubTM2MC1zcGluLXkgLm0zNjAtaGludC1tZXNzYWdlOmJlZm9yZSB7XG4gICAgYmFja2dyb3VuZC1wb3NpdGlvbjogLTgwcHg7XG59XG5cbi5tMzYwLWxvYWRlciB7XG4gICAgYm9yZGVyLXJhZGl1czogMTAwJTtcbiAgICBmb250LXNpemU6IDA7XG4gICAgb3BhY2l0eTogMDtcbiAgICBwYWRkaW5nOiAwO1xuICAgIHdpZHRoOiA1MHB4O1xuICAgIGhlaWdodDogNTBweDtcbiAgICBsZWZ0OiA4cHg7XG4gICAgYm90dG9tOiA4cHg7XG59XG5cbi5tMzYwLWxvYWRlcjphZnRlciB7XG4gICAgY29udGVudDogYXR0cihkYXRhLXByb2dyZXNzKTtcbiAgICBmb250LXNpemU6IDEycHg7XG4gICAgbGluZS1oZWlnaHQ6IDE7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIHRvcDogNTAlO1xuICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC01MCUpO1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgtNTAlKTtcbn1cblxuLm0zNjAtbG9hZGVyOmJlZm9yZSB7XG4gICAgY29udGVudDogJyc7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIHRvcDogMDtcbiAgICBib3R0b206IDA7XG4gICAgbGVmdDogMDtcbiAgICByaWdodDogMDtcbiAgICB3aWR0aDogNDRweDtcbiAgICBoZWlnaHQ6IDQ0cHg7XG4gICAgbWFyZ2luOiBhdXRvO1xuICAgIHRleHQtaW5kZW50OiAtOTk5OWVtO1xuICAgIGJvcmRlci1yYWRpdXM6IDUwJTtcbiAgICBib3JkZXI6IDJweCBzb2xpZCByZ2JhKDI1NSwgMjU1LCAyNTUsIDEpO1xuICAgIGJvcmRlci10b3AtY29sb3I6IHRyYW5zcGFyZW50O1xuICAgIGJveC1zaXppbmc6IGJvcmRlci1ib3g7XG59XG5cbi5tMzYwLWxvYWRlci5zaG93biB7XG4gICAgb3BhY2l0eTogMTtcbiAgICB6LWluZGV4OiAxMDAwO1xuICAgIC13ZWJraXQtdHJhbnNpdGlvbjogb3BhY2l0eSAwcztcbiAgICB0cmFuc2l0aW9uOiBvcGFjaXR5IDBzO1xufVxuXG4ubTM2MC1sb2FkZXIuc2hvd246YmVmb3JlIHtcbiAgICAtd2Via2l0LWFuaW1hdGlvbjogc3Bpbi1sb2FkaW5nIDJzIGluZmluaXRlIGxpbmVhcjtcbiAgICBhbmltYXRpb246IHNwaW4tbG9hZGluZyAycyBpbmZpbml0ZSBsaW5lYXI7XG59XG5cbkAtd2Via2l0LWtleWZyYW1lcyBzcGluLWxvYWRpbmcge1xuICAgIDAlIHtcbiAgICAgICAgLXdlYmtpdC10cmFuc2Zvcm06IHJvdGF0ZSgwZGVnKTtcbiAgICAgICAgdHJhbnNmb3JtOiByb3RhdGUoMGRlZyk7XG4gICAgfVxuXG4gICAgMTAwJSB7XG4gICAgICAgIC13ZWJraXQtdHJhbnNmb3JtOiByb3RhdGUoMzU5ZGVnKTtcbiAgICAgICAgdHJhbnNmb3JtOiByb3RhdGUoMzU5ZGVnKTtcbiAgICB9XG59XG5cbkBrZXlmcmFtZXMgc3Bpbi1sb2FkaW5nIHtcbiAgICAwJSB7XG4gICAgICAgIC13ZWJraXQtdHJhbnNmb3JtOiByb3RhdGUoMGRlZyk7XG4gICAgICAgIHRyYW5zZm9ybTogcm90YXRlKDBkZWcpO1xuICAgIH1cblxuICAgIDEwMCUge1xuICAgICAgICAtd2Via2l0LXRyYW5zZm9ybTogcm90YXRlKDM1OWRlZyk7XG4gICAgICAgIHRyYW5zZm9ybTogcm90YXRlKDM1OWRlZyk7XG4gICAgfVxufVxuXG4ubHQtaWUxMC1tYWdpYyAubTM2MC1sb2FkZXIge1xuICAgIGJvcmRlci1yYWRpdXM6IDJlbTtcbiAgICBmb250LXNpemU6IDE0cHg7XG4gICAgcGFkZGluZzogLjhlbSAxLjJlbTtcbiAgICB3aWR0aDogYXV0bztcbiAgICBoZWlnaHQ6IGF1dG87XG59XG5cbi5sdC1pZTEwLW1hZ2ljIC5tMzYwLWxvYWRlcjpiZWZvcmUge1xuICAgIGRpc3BsYXk6IG5vbmU7XG59XG5cbi5sdC1pZTEwLW1hZ2ljIC5tMzYwLWxvYWRlcjphZnRlciB7XG4gICAgY29udGVudDogJ0xvYWRpbmcuLi4gICAnIGF0dHIoZGF0YS1wcm9ncmVzcyk7XG4gICAgdGV4dC1hbGlnbjogY2VudGVyO1xufVxuXG4ubHQtaWU5LW1hZ2ljIC5tMzYwLWhpbnQtbWVzc2FnZSxcbi5sdC1pZTktbWFnaWMgLm0zNjAtbG9hZGVyLnNob3duIHtcbiAgICBiYWNrZ3JvdW5kOiB0cmFuc3BhcmVudCAhaW1wb3J0YW50O1xuICAgIGZpbHRlcjogcHJvZ2lkOkRYSW1hZ2VUcmFuc2Zvcm0uTWljcm9zb2Z0LmdyYWRpZW50KEdyYWRpZW50VHlwZT0wLFN0YXJ0Q29sb3JTdHI9JyM3YzMxMzMzRCcsIEVuZENvbG9yU3RyPScjN2MzMTMzM0QnKTtcbn1cblxuLmx0LWllOS1tYWdpYyAubTM2MC1oaW50LWhpZGRlbiB7XG4gICAgZmlsdGVyOiBhbHBoYShvcGFjaXR5PTApO1xufVxuXG4ubHQtaWU5LW1hZ2ljIC5tMzYwLWxvYWRlciB7XG4gICAgZmlsdGVyOiBhbHBoYShvcGFjaXR5PTApO1xuICAgIHJpZ2h0OiAwO1xuICAgIGxlZnQ6IDA7XG4gICAgd2lkdGg6IDk2cHg7XG4gICAgbWFyZ2luOiBhdXRvO1xufVxuXG4ubHQtaWU5LW1hZ2ljIC5NYWdpYzM2MC1mdWxsc2NyZWVuIC5tMzYwLWxvYWRlciB7XG4gICAgbGVmdDogOHB4O1xuICAgIHJpZ2h0OiBhdXRvO1xufVxuXG5cbi8qIE1hZ25pZmllciAqL1xuLk1hZ2ljMzYwLWNvbnRhaW5lciAubTM2MC1tYWduaWZpZXIsXG4uTWFnaWMzNjAtZnVsbHNjcmVlbiAubTM2MC1tYWduaWZpZXIge1xuICAgIGJveC1zaGFkb3c6IDAgMCAxMHB4ICNjY2M7XG4gICAgYm9yZGVyLWNvbGxhcHNlOiBzZXBhcmF0ZTtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjZmZmO1xuICAgIGN1cnNvcjogbm9uZTtcbiAgICBvdmVyZmxvdzogaGlkZGVuO1xuICAgIC13ZWJraXQtbWFzay1pbWFnZTogLXdlYmtpdC1yYWRpYWwtZ3JhZGllbnQoY2lyY2xlLCB3aGl0ZSwgYmxhY2spO1xufVxuXG4ubHQtaWU5LW1hZ2ljIC5tMzYwLW1hZ25pZmllciB7XG4gICAgYm9yZGVyOiAzcHggcmlkZ2UgI2U3ZTdlNztcbn1cblxuLmx0LWllOS1tYWdpYyAubTM2MC1tYWduaWZpZXIubTM2MC1tYWduaWZpZXItaW5uZXIge1xuICAgIGJvcmRlcjogbm9uZSAhaW1wb3J0YW50O1xufVxuXG4uTWFnaWMzNjAtY29udGFpbmVyLmRlc2t0b3AgLm0zNjAtbWFnbmlmaWVyLm0zNjAtbWFnbmlmaWVyLWlubmVyLFxuLk1hZ2ljMzYwLWZ1bGxzY3JlZW4uZGVza3RvcCAubTM2MC1tYWduaWZpZXIubTM2MC1tYWduaWZpZXItaW5uZXIge1xuICAgIGN1cnNvcjogcG9pbnRlcjtcbiAgICBjdXJzb3I6IC13ZWJraXQtem9vbS1vdXQ7XG4gICAgY3Vyc29yOiAtbW96LXpvb20tb3V0O1xuICAgIGN1cnNvcjogem9vbS1vdXQ7XG4gICAgYm94LXNoYWRvdzogbm9uZTtcbn1cblxuLm0zNjAtbWFnbmlmaWVyIGltZyB7XG4gICAgcG9zaXRpb246IGFic29sdXRlICFpbXBvcnRhbnQ7XG4gICAgbWF4LXdpZHRoOiBub25lICFpbXBvcnRhbnQ7XG4gICAgbWF4LWhlaWdodDogbm9uZSAhaW1wb3J0YW50O1xuICAgIG1pbi13aWR0aDogMCAhaW1wb3J0YW50O1xuICAgIG1pbi1oZWlnaHQ6IDAgIWltcG9ydGFudDtcbiAgICBib3JkZXI6IDAgIWltcG9ydGFudDtcbiAgICBwYWRkaW5nOiAwICFpbXBvcnRhbnQ7XG4gICAgbWFyZ2luOiAwICFpbXBvcnRhbnQ7XG4gICAgb3V0bGluZTogMCAhaW1wb3J0YW50O1xuICAgIGJveC1zaXppbmc6IGJvcmRlci1ib3g7XG4gICAgLXdlYmtpdC11c2VyLXNlbGVjdDogbm9uZTtcbiAgICAtbW96LXVzZXItc2VsZWN0OiBub25lO1xuICAgIC1tcy11c2VyLXNlbGVjdDogbm9uZTtcbiAgICB1c2VyLXNlbGVjdDogbm9uZTtcbiAgICAtd2Via2l0LXRvdWNoLWNhbGxvdXQ6IG5vbmU7XG4gICAgLXdlYmtpdC10YXAtaGlnaGxpZ2h0LWNvbG9yOiB0cmFuc3BhcmVudDtcbn1cblxuLm0zNjAtbWFnbmlmaWVyLWxvYWRlci1ob2xkZXIge1xuICAgIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xuICAgIGN1cnNvcjogZGVmYXVsdDtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgdG9wOiAwO1xuICAgIHotaW5kZXg6IDE7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgaGVpZ2h0OiAxMDAlO1xufVxuXG4uaWU5LW1hZ2ljIC5tMzYwLW1hZ25pZmllci1sb2FkZXItaG9sZGVyLFxuLmx0LWllOS1tYWdpYyAubTM2MC1tYWduaWZpZXItbG9hZGVyLWhvbGRlciB7XG4gICAgZmlsdGVyOiBhbHBoYShvcGFjaXR5PTYwKTtcbn1cblxuLm0zNjAtbWFnbmlmaWVyLWxvYWRlci1ob2xkZXIgLm0zNjAtbG9hZGVyIHtcbiAgICBvcGFjaXR5OiAxO1xuICAgIHRvcDogMDtcbiAgICBib3R0b206IDA7XG4gICAgbGVmdDogMDtcbiAgICByaWdodDogMDtcbiAgICBtYXJnaW46IGF1dG87XG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHNjYWxlKDAuOCk7XG4gICAgdHJhbnNmb3JtOiBzY2FsZSgwLjgpO1xufVxuXG4ubTM2MC1tYWduaWZpZXItbG9hZGVyLWhvbGRlciAubTM2MC1sb2FkZXI6YmVmb3JlIHtcbiAgICAtd2Via2l0LWFuaW1hdGlvbjogc3Bpbi1sb2FkaW5nIDJzIGluZmluaXRlIGxpbmVhcjtcbiAgICBhbmltYXRpb246IHNwaW4tbG9hZGluZyAycyBpbmZpbml0ZSBsaW5lYXI7XG59XG4iLCLvu78vKlxuXG5cbiAgIE1hZ2ljIFNjcm9sbCB2Mi4wLjI5IFxuICAgQ29weXJpZ2h0IDIwMTcgTWFnaWMgVG9vbGJveFxuICAgQnV5IGEgbGljZW5zZTogaHR0cHM6Ly93d3cubWFnaWN0b29sYm94LmNvbS9tYWdpY3Njcm9sbC9cbiAgIExpY2Vuc2UgYWdyZWVtZW50OiBodHRwczovL3d3dy5tYWdpY3Rvb2xib3guY29tL2xpY2Vuc2UvXG5cblxuKi9cbi5NYWdpY1Njcm9sbCxcbi5tY3MtY2FwdGlvbixcbi5tY3MtYnV0dG9uLFxuLm1jcy1pdGVtLFxuLm1jcy1pdGVtIGltZyxcbi5tY3MtaXRlbSA+ICosXG4ubWNzLWJ1bGxldCxcbi5tY3MtYnVsbGV0OmJlZm9yZSxcbi5tY3MtYnVsbGV0OmFmdGVyLFxuLm1jcy13cmFwcGVyLFxuLm1jcy1pdGVtcy1jb250YWluZXIge1xuICAgIG1hcmdpbjogMDtcbiAgICBwYWRkaW5nOiAwO1xuICAgIG91dGxpbmU6IDA7XG4gICAgLXdlYmtpdC1ib3gtc2l6aW5nOiBib3JkZXItYm94O1xuICAgIC1tb3otYm94LXNpemluZzogYm9yZGVyLWJveDtcbiAgICBib3gtc2l6aW5nOiBib3JkZXItYm94O1xufVxuXG4uTWFnaWNTY3JvbGwsXG4ubWNzLWl0ZW0sXG4ubWNzLWl0ZW0gYSxcbi5tY3MtaXRlbSBpbWcsXG4ubWNzLWl0ZW1zLWNvbnRhaW5lciB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xufVxuXG4uTWFnaWNTY3JvbGwsXG4ubWNzLWl0ZW0sXG4ubWNzLXdyYXBwZXIsXG4ubWNzLWl0ZW1zLWNvbnRhaW5lciB7XG4gICAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgICBkaXJlY3Rpb246IGx0cjtcbn1cblxuLm1jcy13cmFwcGVyLFxuLm1jcy1pdGVtIGltZyB7XG4gICAgbGluZS1oZWlnaHQ6IDEwMCU7XG59XG5cbi5NYWdpY1Njcm9sbCB7XG4gICAgei1pbmRleDogMTtcbiAgICBjdXJzb3I6IC13ZWJraXQtZ3JhYjtcbiAgICBjdXJzb3I6IC1vLWdyYWI7XG4gICAgY3Vyc29yOiAtbXMtZ3JhYjtcbiAgICBjdXJzb3I6IGdyYWI7XG4gICAgLW1vei11c2VyLXNlbGVjdDogbm9uZTtcbiAgICAtd2Via2l0LXVzZXItc2VsZWN0OiBub25lO1xuICAgIC13ZWJraXQtdG91Y2gtY2FsbG91dDogbm9uZTtcbiAgICAtd2Via2l0LXRhcC1oaWdobGlnaHQtY29sb3I6IHRyYW5zcGFyZW50O1xufVxuXG4uTWFnaWNTY3JvbGwuTWFnaWNTY3JvbGwtaG9yaXpvbnRhbCB7XG4gICAgLW1vei10b3VjaC1hY3Rpb246IHBhbi15O1xuICAgIC1tcy10b3VjaC1hY3Rpb246IHBhbi15O1xuICAgIHRvdWNoLWFjdGlvbjogcGFuLXk7XG59XG5cbi5NYWdpY1Njcm9sbC5NYWdpY1Njcm9sbC12ZXJ0aWNhbCB7XG4gICAgLW1vei10b3VjaC1hY3Rpb246IHBhbi14O1xuICAgIC1tcy10b3VjaC1hY3Rpb246IHBhbi14O1xuICAgIHRvdWNoLWFjdGlvbjogcGFuLXg7XG59XG5cbmJvZHkubWNzLWRyYWdnaW5nIHtcbiAgICBjdXJzb3I6IG1vdmU7XG4gICAgY3Vyc29yOiAtd2Via2l0LWdyYWJiaW5nO1xuICAgIGN1cnNvcjogLW8tZ3JhYmJpbmc7XG4gICAgY3Vyc29yOiAtbXMtZ3JhYmJpbmc7XG4gICAgY3Vyc29yOiBncmFiYmluZztcbn1cblxuYm9keS5tY3MtZHJhZ2dpbmcgLk1hZ2ljU2Nyb2xsLFxuYm9keS5tY3MtZHJhZ2dpbmcgYnV0dG9uLm1jcy1idXR0b24ubWNzLWhvcml6b250YWwubWNzLWJ1dHRvbi1hcnJvdyB7XG4gICAgY3Vyc29yOiBpbmhlcml0O1xufVxuXG4ubWNzLWl0ZW0sXG4uTWFnaWNTY3JvbGwgZmlndXJlLFxuLyoubWNzLWl0ZW0gaW1nLCovXG4ubWNzLWl0ZW0gLm1jcy1jYXB0aW9uIHtcbiAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG59XG5cbi5tY3MtaXRlbSBpbWcge1xuICAgIGRpc3BsYXk6IGlubGluZS1ibG9jayAhaW1wb3J0YW50O1xufVxuXG4uTWFnaWNTY3JvbGwgPiAqIHtcbiAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgbWF4LXdpZHRoOiAxMDAlO1xufVxuXG4uTWFnaWNTY3JvbGwgPiAqOmZpcnN0LWNoaWxkIHtcbiAgICB2aXNpYmlsaXR5OiBoaWRkZW47XG59XG5cbi5NYWdpY1Njcm9sbCA+ICo6bnRoLWNoaWxkKG4rMikge1xuICAgIGRpc3BsYXk6IG5vbmU7XG59XG5cbi5NYWdpY1Njcm9sbCA+IGEge1xuICAgIGxpbmUtaGVpZ2h0OiAxMDAlO1xufVxuXG4uTWFnaWNTY3JvbGwgaW1nIHtcbiAgICB2aXNpYmlsaXR5OiBoaWRkZW47XG59XG5cbi5NYWdpY1Njcm9sbCAubWNzLWl0ZW0gaW1nIHtcbiAgICB2aXNpYmlsaXR5OiB2aXNpYmxlO1xuICAgIGZsb2F0OiBub25lICFpbXBvcnRhbnQ7XG59XG5cbi5tY3MtYnV0dG9uLFxuLm1jcy1idWxsZXRzLFxuLm1jcy13cmFwcGVyIHtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG59XG5cbi5NYWdpY1Njcm9sbDpiZWZvcmUsXG4uTWFnaWNTY3JvbGwgZmlnY2FwdGlvbjpiZWZvcmUge1xuICAgIGNvbnRlbnQ6ICcnO1xuICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICB2ZXJ0aWNhbC1hbGlnbjogdG9wO1xuICAgIGhlaWdodDogMDtcbn1cblxuLm1jcy13cmFwcGVyIHtcbiAgICB0b3A6IDA7XG4gICAgcmlnaHQ6IDA7XG4gICAgYm90dG9tOiAwO1xuICAgIGxlZnQ6IDA7XG4gICAgdmVydGljYWwtYWxpZ246IHRvcDtcbiAgICB6LWluZGV4OiAxMDA7XG59XG5cbi5tY3MtaXRlbXMtY29udGFpbmVyIHtcbiAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgb3ZlcmZsb3c6IHZpc2libGU7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgaGVpZ2h0OiAxMDAlO1xufVxuXG4ubWNzLWl0ZW0ge1xuICAgIHRvcDogMDtcbiAgICBsZWZ0OiAwO1xuICAgIHpvb206IDE7XG4gICAgZm9udC1zaXplOiA5cHQgIWltcG9ydGFudDtcbiAgICBsaW5lLWhlaWdodDogMTAwJTtcbiAgICBtYXgtd2lkdGg6IDEwMCU7XG59XG5cbi5tY3MtaXRlbTphZnRlcixcbi5tY3MtaXRlbSA+IGE6YWZ0ZXIge1xuICAgIGNvbnRlbnQ6ICcnO1xuICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICBoZWlnaHQ6IDEwMCU7XG4gICAgdmVydGljYWwtYWxpZ246IG1pZGRsZTtcbn1cblxuLk1hZ2ljU2Nyb2xsLWhvcml6b250YWwgLm1jcy1pdGVtIHtcbiAgICBoZWlnaHQ6IDEwMCU7XG59XG5cbi5NYWdpY1Njcm9sbC12ZXJ0aWNhbCAubWNzLWl0ZW0ge1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIHdpZHRoOiAxMDAlO1xufVxuXG4ubWNzLWl0ZW0gPiBhLFxuLk1hZ2ljU2Nyb2xsLWhvcml6b250YWwgLm1jcy1pdGVtcy1jb250YWluZXIgPiAqIHtcbiAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG59XG5cbi5tY3MtaXRlbSBhLFxuLm1jcy1pdGVtIGltZyB7XG4gICAgYm9yZGVyOiBub25lO1xuICAgIG1heC13aWR0aDogMTAwJTtcbiAgICBtYXgtaGVpZ2h0OiAxMDAlO1xufVxuXG4ubWNzLWl0ZW0gYSB7XG4gICAgaGVpZ2h0OiAxMDAlO1xufVxuXG4ubWNzLWl0ZW0gaW1nIHtcbiAgICB3aWR0aDogYXV0bztcbiAgICBoZWlnaHQ6IGF1dG87XG4gICAgdmVydGljYWwtYWxpZ246IG1pZGRsZTtcbn1cblxuLk1hZ2ljU2Nyb2xsIGZpZ3VyZSB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7XG4gICAgZm9udC1zaXplOiAwO1xuICAgIG1hcmdpbjogMDtcbiAgICBtYXgtd2lkdGg6IDEwMCU7XG4gICAgbWF4LWhlaWdodDogMTAwJTtcbiAgICBsaW5lLWhlaWdodDogbm9ybWFsO1xufVxuXG4ubHQtaWU5LW1hZ2ljIC5tY3MtaXRlbSA+IGEgPiBpbWcge1xuICAgIHBvc2l0aW9uOiBzdGF0aWM7XG59XG5cbi5sdC1pZTktbWFnaWMgZmlnY2FwdGlvbiB7XG4gICAgZGlzcGxheTogYmxvY2s7XG59XG5cbi5sdC1pZTEwLW1hZ2ljIC5tY3MtaXRlbSBhIGltZyB7XG4gICAgYm9yZGVyOiBub25lO1xufVxuXG4uaWU3LW1hZ2ljIC5tY3MtaXRlbSBpbWcsXG4uaWU3LW1hZ2ljIC5NYWdpY1Njcm9sbC12ZXJ0aWNhbCAubWNzLWl0ZW0gYSB7XG4gICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xufVxuXG4uaWU3LW1hZ2ljIC5NYWdpY1Njcm9sbC1ob3Jpem9udGFsIC5tY3MtaXRlbSB7XG4gICAgZGlzcGxheTogaW5saW5lO1xufVxuXG4ubWNzLWJ1dHRvbiB7XG4gICAgZGlzcGxheTogYmxvY2s7XG59XG5cbi5NYWdpY1Njcm9sbCAubWNzLWhpZGRlbiB7XG4gICAgZGlzcGxheTogbm9uZSAhaW1wb3J0YW50O1xuICAgIHZpc2liaWxpdHk6IGhpZGRlbiAhaW1wb3J0YW50O1xufVxuXG4uaWUxMS1tYWdpYyAuTWFnaWNTY3JvbGxbZGF0YS1tb2RlPVwic2Nyb2xsXCJdIC5tY3MtaXRlbXMtY29udGFpbmVyLFxuLk1hZ2ljU2Nyb2xsW2RhdGEtbW9kZT1cImNhcm91c2VsXCJdIC5tY3MtaXRlbXMtY29udGFpbmVyLFxuLk1hZ2ljU2Nyb2xsW2RhdGEtbW9kZT1cImNvdmVyLWZsb3dcIl0gLm1jcy1pdGVtcy1jb250YWluZXIge1xuICAgIC13ZWJraXQtcGVyc3BlY3RpdmU6IDEwMDBweDtcbiAgICAtbW96LXBlcnNwZWN0aXZlOiAxMDAwcHg7XG4gICAgLW8tcGVyc3BlY3RpdmU6IDEwMDBweDtcbiAgICBwZXJzcGVjdGl2ZTogMTAwMHB4O1xuICAgIC13ZWJraXQtcGVyc3BlY3RpdmUtb3JpZ2luLXg6IDUwJTtcbiAgICAtd2Via2l0LXBlcnNwZWN0aXZlLW9yaWdpbi15OiA1MCU7XG59XG5cbi5NYWdpY1Njcm9sbFtkYXRhLW1vZGU9XCJjYXJvdXNlbFwiXSAubWNzLWl0ZW0sXG4uTWFnaWNTY3JvbGxbZGF0YS1tb2RlPVwiY292ZXItZmxvd1wiXSAubWNzLWl0ZW0ge1xuICAgIC13ZWJraXQtdHJhbnNmb3JtLXN0eWxlOiBwcmVzZXJ2ZS0zZDtcbiAgICAtbW96LXRyYW5zZm9ybS1zdHlsZTogcHJlc2VydmUtM2Q7XG4gICAgLW8tdHJhbnNmb3JtLXN0eWxlOiBwcmVzZXJ2ZS0zZDtcbiAgICB0cmFuc2Zvcm0tc3R5bGU6IHByZXNlcnZlLTNkO1xufVxuXG4uTWFnaWNTY3JvbGwgZmlnY2FwdGlvbiB7XG4gICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICBsZWZ0OiAwO1xuICAgIGZsb2F0OiBsZWZ0O1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIGxpbmUtaGVpZ2h0OiAxMDAlO1xuICAgIGNsZWFyOiBib3RoO1xuICAgIHotaW5kZXg6IDE1MDtcbn1cblxuLk1hZ2ljU2Nyb2xsIGZpZ2NhcHRpb24sXG4uTWFnaWNTY3JvbGxbZGF0YS1tb2RlPVwiY2Fyb3VzZWxcIl0gLm1jcy1pdGVtIC5tY3MtY2FwdGlvbixcbi5NYWdpY1Njcm9sbFtkYXRhLW1vZGU9XCJjb3Zlci1mbG93XCJdIC5tY3MtaXRlbSAubWNzLWNhcHRpb24ge1xuICAgIGxlZnQ6IDUwJTtcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlWigxcHgpIHRyYW5zbGF0ZVgoLTUwJSk7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVaKDFweCkgdHJhbnNsYXRlWCgtNTAlKTtcbiAgICAtd2Via2l0LWJveC1zaXppbmc6IGJvcmRlci1ib3g7XG4gICAgLW1vei1ib3gtc2l6aW5nOiBib3JkZXItYm94O1xuICAgIGJveC1zaXppbmc6IGJvcmRlci1ib3g7XG59XG5cblxuLmx0LWllOS1tYWdpYyAuTWFnaWNTY3JvbGwgZmlnY2FwdGlvbixcbi5sdC1pZTktbWFnaWMgLk1hZ2ljU2Nyb2xsIGZpZ3VyZSBpbWcge1xuICAgIGZsb2F0OiByaWdodDtcbn1cblxuLk1hZ2ljU2Nyb2xsIC5tY3MtcmVmbGVjdGlvbiB7XG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZVooLTFweCk7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICBsZWZ0OiAwcHg7XG4gICAgei1pbmRleDogMTtcbn1cblxuLk1hZ2ljU2Nyb2xsIC5tY3MtaXRlbS5tY3Mtbm9pbWcge1xuICAgIGJhY2tncm91bmQ6IHVybChcImRhdGE6aW1hZ2UvcG5nO2Jhc2U2NCxpVkJPUncwS0dnb0FBQUFOU1VoRVVnQUFBQjRBQUFBZUNBWUFBQUE3TUs2aUFBQUdCMGxFUVZSSVM1V1hhMndVVlJUSC8zZG1uMjEzNmI1YTJ1Mkxzb29nRWlHR0JHbmxZVUpNaUVwaTFNU1lHTkh2b0FqZk5FUS9pYUw0WFRBbXhrUVNFM3pGYUVTUXJaSVFJeEhsYVZ0SzIyMjczVWRodHQzblBEeDNabWM3dTl0dGRaTE43czZjZTM3bmY4ODU5OTVoK0c4WCt5WFVNU2hvNGw0d2JUdGppQURNWnd6VjVqUU53MHhqdnlsTStYWkhZanJLYjY3a2xpMW5jQlFRSGcrR0R6S1JIVy91NzRGM1F3VE5hN3JoRFBvZ05ybjBvVW8yajBKeURndTNKeUZkK3djTG8rUFFGTzNRMldUc0JJMVhHL2x2Q0k2R09sOW1nbmpLdjNVVDJoN2ZCcHVkWktTVFVLVzcwSEpaYUhKSjk4bm9BWE0zUWZDMmd2bUQ0TGRuejE1RSt0SVZhS3F5ZnpBeDljbFM4Q1hCRjlyQ2I3djh2amQ3WG53YVRvY0taV0pVaDlFVUc3QWFUK2E4MHBUclFZamQvU2dVQll4LzloWHk2YmwzSHB1TnZWVUxyd05IUStFVG5ranZnZTVuOXdCak42Rm03dWxBVnNZMW1xSUtuTkxMQXhBOHE0QytkUmcvL1FQbVI4WS9Ha3pFRGxyaFZYNml3YTUzdmV2Nmp2VHMyd0hseHArQVhLd0RtcXByRlhDWVhtcmxCNFFIYkE2STZ4L0crSm56eU53WWUyOGdPWG5FSEZjQjg1eTYyZ0tuK2w5NEFzcjF5d1RVZEdqdDlLNnN1QndBY1RtY2V4SFhiOEhvNTk4alA1dXE1RnozY3hvUXc2dTc1ZjZYbm9JWXV3R215QlZvT3BsRVJwSjBiMTZ2RjRGZzBNaHpPU0xObEVyM1VtUXJsVzA5Wk9zTEJBMjRhSU1TZmdDam4zNk4yTXlFN1RscUJoMGNEWVpmRHp6eTRQRlEyQUV0Y3hkQ1dXazZuVVltazBIN2x4ZDFXUHlaYmZCNlBBZ0dBbldGbWt5bElOWFllc2pXNS9OVFQ1RnVUeXNTc1NKU3YxODlOSmlNZmNEQmJLaTlTNDA4dnh0QzdKYWhWRmNFM0ptTVZhQW1TWWUzdENEa2E2M0FFM04zSWMzUEwybmJFdzdyZWVmSzFmQjlHUDdpSEFiaWt3SzdFRnk5dzdPbTUzdzQ0Z2FvWllReWxNUEhwdU4xemlyS201c1FXdVZGNHA0RWFTSGIwSzYzbzEydmNuMGxvVmFMRGVlUXVUMitrL0ZLWGozNDBCR3ZIRGVVV3NEcHpBSXl1VnhqdU5zTmFabm5IcmNMUGsrTERqWlVBNUt0SFRQUnY0NHg2dHRvMys2TkF3NXBTb2NLZXM4dTltMDZtNE9VTHpTRW0vbTNKcDJudytOMEl0RHNMbGMyS1M3REM5NU9qUDk4TmNxRzJzSXphN2YzdFFzTGN4YW9BVFpiS1pYTFF5cVUwSG5tVWwxUjFkNlkycmNWWHFjZEFWSnJLTlU3V3Y5d3VOcnN3OGl2WTNFQ2R4VWlXL3dPRlBOVmFzMHAxMXVIdHdxQnBaS00zdTh1TjRUZjJic1pYcnNOZmdMemEzR0tEVGdIdytIQzhCL3BvZzVldThIbFlKcTZMSmc3U3BVVVNMS0t5STkvMThHSDkyeUUxeVlnWUJjWFY2OUtiaGZCR2hNd2NpM1B3ZUdaN3Z1ZDdUYUJlczJTMzFyRmN5VVY4NHFLOWVkdU5sUjhmZGM2dElnQ1d1MjhOK29WOHhtUVZZYUpXNFc0WGx4dGtlWUJwNjFVRGJic1JGeGxqcUNiaGtaWHpQR1ZnWDY0Q2U0aDlZdndjcDRKWEpEdFNBeG5xYmlDWGNlOGZkN0RUUzVqMnpQWFlyTzRzZ1ROVTNJMlg3eFRCNzI4cmJmaGZTZTFSeE1GWUNETDdVUS9zM2szN28xbGp1a0xpQ3U0NnJ6SFg2aHFKeDVDZ2ZKZVhBYktuUmVXZVc0bkpTNnlNUXVMZjJmU1R1U1Q5M1lhUzJaYmwrcnBFU0ZTTVM3bW1SYXlGWnlhNEJJbHI5R01tR0NlWDRWT0o1a0pGVC9GSjhUS0p1RUlPSTQ3ZklwRk5jTlNEdm4wOGxFMnk4WXNrMWVGSE5mQ3VhMk5iTTNGb3pnbm9wZ3FWallKZlZ2c2JPK1dIUjBNZ25OUnRabFUweUYzWkt4dTFidXl2a0FRbkg5YmJhMjVWUXRBY1ZyRFZOeXlMWElET2dqc0Y5ejJrMkliTGVkVWtPYVVpL1REeEpncjBKS2x6YzlibHVMa200TENnOUVUVEw5bnFkQnlwVmNIRWxNbitmaXEwSG1GbzRVZEJ0L3J1Wk9hS3E4YllJbWc2c2hqcVdKOUdwTDBtZGVXUHZxWVB2aGhEMDNDQVNWSUM0clJpdnBsYmJPbEZGdmJ4bnhPVFFFeFNTT3o2dktIUFhNQVY2NDVjYmprSjNjT1E3bjFxdmxiOTlxZ0gzT0xnRDFOYVNxZ1NtbXRrRG9SUTZIT1Ywanl4M0l6VVBMUTZjRldIMER0SVAxWUt4TXd3MkJiNFBPdFZuSmFhMXNiZk5Yem84WXJ6R3RNWU8vTFZPMnlTNFBzTUlMUXpDVzFETE1WQ1phbkQxV3ZwbXB2MEN2TWh6VCsvNy9DV0NQZ0Fld0tkUXd3VFh5U01lMVJtdnExTlM5dEl4cTl0R2xNK2VaY1lucG9PYURwOTEvaHJzNFkycjdGRFFBQUFBQkpSVTVFcmtKZ2dnPT1cIikgY2VudGVyIGNlbnRlciBuby1yZXBlYXQ7XG59XG5cblxuLypcbiAqIENhcHRpb25cbiAqL1xuLm1jcy1pdGVtIC5tY3MtY2FwdGlvbiB7XG4gICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgIHZlcnRpY2FsLWFsaWduOiBib3R0b207XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIHotaW5kZXg6IDE1MDtcbn1cblxuLk1hZ2ljU2Nyb2xsW2RhdGEtbW9kZT1cImNvdmVyLWZsb3dcIl0gLm1jcy1pdGVtIGZpZ2NhcHRpb24ubWNzLWNhcHRpb24sXG4uTWFnaWNTY3JvbGxbZGF0YS1tb2RlPVwiY2Fyb3VzZWxcIl0gLm1jcy1pdGVtIGZpZ2NhcHRpb24ubWNzLWNhcHRpb24ge1xuICAgIHRvcDogMTAwJTtcbn1cblxuLk1hZ2ljU2Nyb2xsW2RhdGEtbW9kZT1cInNjcm9sbFwiXSAubWNzLWl0ZW0gZmlndXJlLFxuLk1hZ2ljU2Nyb2xsW2RhdGEtbW9kZT1cImFuaW1hdGlvblwiXSAubWNzLWl0ZW0gZmlndXJlIHtcbiAgICBvdmVyZmxvdzogaGlkZGVuO1xufVxuXG4uTWFnaWNTY3JvbGxbZGF0YS1tb2RlPVwic2Nyb2xsXCJdIC5tY3MtaXRlbSAubWNzLWNhcHRpb24sXG4uTWFnaWNTY3JvbGxbZGF0YS1tb2RlPVwiYW5pbWF0aW9uXCJdIC5tY3MtaXRlbSAubWNzLWNhcHRpb24ge1xuICAgIGxlZnQ6IDA7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgYm90dG9tOiAwO1xuICAgIC13ZWJraXQtdHJhbnNpdGlvbjogLXdlYmtpdC10cmFuc2Zvcm0gLjI1cztcbiAgICB0cmFuc2l0aW9uOiB0cmFuc2Zvcm0gLjI1cztcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlWSgxNTAlKTtcbiAgICAtbXMtdHJhbnNmb3JtOiB0cmFuc2xhdGUoMCwgMTUwJSk7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKDE1MCUpO1xufVxuXG4uTWFnaWNTY3JvbGxbZGF0YS1tb2RlPVwic2Nyb2xsXCJdIC5tY3MtaXRlbTpob3ZlciAubWNzLWNhcHRpb24sXG4uTWFnaWNTY3JvbGxbZGF0YS1tb2RlPVwiYW5pbWF0aW9uXCJdIC5tY3MtaXRlbTpob3ZlciAubWNzLWNhcHRpb24ge1xuICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGVZKDAlKTtcbiAgICAtbXMtdHJhbnNmb3JtOiB0cmFuc2xhdGUoMCwgMCUpO1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgwJSk7XG59XG5cbi5sdC1pZTktbWFnaWMgLk1hZ2ljU2Nyb2xsW2RhdGEtbW9kZT1cInNjcm9sbFwiXSAubWNzLWl0ZW0gLm1jcy1jYXB0aW9uLFxuLmx0LWllOS1tYWdpYyAuTWFnaWNTY3JvbGxbZGF0YS1tb2RlPVwiYW5pbWF0aW9uXCJdIC5tY3MtaXRlbSAubWNzLWNhcHRpb24ge1xuICAgIGJvdHRvbTogLTE1MCU7XG59XG5cbi5sdC1pZTktbWFnaWMgLk1hZ2ljU2Nyb2xsW2RhdGEtbW9kZT1cInNjcm9sbFwiXSAubWNzLWl0ZW06aG92ZXIgLm1jcy1jYXB0aW9uLFxuLmx0LWllOS1tYWdpYyAuTWFnaWNTY3JvbGxbZGF0YS1tb2RlPVwiYW5pbWF0aW9uXCJdIC5tY3MtaXRlbTpob3ZlciAubWNzLWNhcHRpb24ge1xuICAgIGJvdHRvbTogMCU7XG59XG5cbi8qKlxuICogQnV0dG9ucyAmIEFycm93c1xuICovXG4ubWNzLWJ1dHRvbiB7XG4gICAgY3Vyc29yOiBwb2ludGVyO1xuICAgIHotaW5kZXg6IDEwMDA7XG4gICAgYmFja2dyb3VuZC1yZXBlYXQ6IG5vLXJlcGVhdDtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcbiAgICBib3JkZXI6IDA7XG4gICAgYm9yZGVyLXJhZGl1czogMDtcbiAgICAtd2Via2l0LXRyYW5zaXRpb246IG9wYWNpdHkgLjI1cyBsaW5lYXI7XG4gICAgdHJhbnNpdGlvbjogb3BhY2l0eSAuMjVzIGxpbmVhcjtcbn1cblxuLk1hZ2ljU2Nyb2xsOmhvdmVyID4gLm1jcy1idXR0b246aG92ZXIge1xuICAgIG9wYWNpdHk6IDE7XG59XG5cbi5tY3MtYnV0dG9uLWFycm93IHtcbiAgICB6LWluZGV4OiAxMjA7XG59XG5cbi5NYWdpY1Njcm9sbC1ob3Jpem9udGFsIC5tY3MtYnV0dG9uLWFycm93IHtcbiAgICB3aWR0aDogNDBweDtcbiAgICBoZWlnaHQ6IDEwMCU7XG4gICAgdG9wOiAwO1xufVxuXG4uTWFnaWNTY3JvbGwtdmVydGljYWwgLm1jcy1idXR0b24tYXJyb3cge1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIGhlaWdodDogNDBweDtcbiAgICBsZWZ0OiAwO1xufVxuXG4uTWFnaWNTY3JvbGwtaG9yaXpvbnRhbCAubWNzLWJ1dHRvbi1hcnJvdy1wcmV2IHtcbiAgICBsZWZ0OiAwO1xuICAgIHJpZ2h0OiBhdXRvO1xuICAgIHRvcDogMDtcbiAgICBib3R0b206IDA7XG59XG5cbi5NYWdpY1Njcm9sbC1ob3Jpem9udGFsIC5tY3MtYnV0dG9uLWFycm93LW5leHQge1xuICAgIGxlZnQ6IGF1dG87XG4gICAgcmlnaHQ6IDA7XG4gICAgdG9wOiAwO1xuICAgIGJvdHRvbTogMDtcbn1cblxuLk1hZ2ljU2Nyb2xsLXZlcnRpY2FsIC5tY3MtYnV0dG9uLWFycm93LXByZXYge1xuICAgIHRvcDogMDtcbiAgICBib3R0b206IGF1dG87XG4gICAgbGVmdDogMDtcbiAgICByaWdodDogMDtcbn1cblxuLk1hZ2ljU2Nyb2xsLXZlcnRpY2FsIC5tY3MtYnV0dG9uLWFycm93LW5leHQge1xuICAgIHRvcDogYXV0bztcbiAgICBib3R0b206IDA7XG4gICAgbGVmdDogMDtcbiAgICByaWdodDogMDtcbn1cblxuXG4uTWFnaWNTY3JvbGxbZGF0YS1tb2RlPVwiY2Fyb3VzZWxcIl0gLm1jcy1pdGVtLFxuLk1hZ2ljU2Nyb2xsW2RhdGEtbW9kZT1cImNvdmVyLWZsb3dcIl0gLm1jcy1pdGVtIHtcbiAgICBvdmVyZmxvdzogdmlzaWJsZTtcbn1cblxuLypcbiAqIEJ1bGxldHNcbiAqL1xuLm1jcy1idWxsZXRzIHtcbiAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgZGlzcGxheTogaW5saW5lLWJsb2NrICFpbXBvcnRhbnQ7XG4gICAgb3BhY2l0eTogMDtcbiAgICB0b3A6IDEwMCU7XG59XG5cbi5tY3MtYnVsbGV0cy5zaG93IHtcbiAgICBvcGFjaXR5OiAxLjA7XG4gICAgLW1vei10cmFuc2l0aW9uOiBvcGFjaXR5IC41cztcbiAgICAtby10cmFuc2l0aW9uOiBvcGFjaXR5IC41cztcbiAgICB0cmFuc2l0aW9uOiBvcGFjaXR5IC41cztcbn1cblxuLk1hZ2ljU2Nyb2xsLWhvcml6b250YWwgLm1jcy1idWxsZXRzIHtcbiAgICB3aWR0aDogMTAwJTtcbiAgICBsZWZ0OiAwO1xufVxuXG4uTWFnaWNTY3JvbGwtdmVydGljYWwgLm1jcy1idWxsZXRzIHtcbiAgICB0b3A6IDA7XG4gICAgbGVmdDogMTAwJTtcbiAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgdmVydGljYWwtYWxpZ246IG1pZGRsZTtcbn1cblxuLm1jcy1idWxsZXQge1xuICAgIGJvcmRlci1yYWRpdXM6IDUwJTtcbiAgICBtYXJnaW46IDRweDtcbiAgICBjdXJzb3I6IHBvaW50ZXI7XG4gICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICB0ZXh0LWluZGVudDogOTk5OXB4O1xuICAgIHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7XG4gICAgZm9udDogMC8wIGE7XG4gICAgY29sb3I6IHRyYW5zcGFyZW50O1xuICAgIG91dGxpbmU6IG5vbmU7XG59XG5cbi5tY3MtYnVsbGV0LmFjdGl2ZSB7XG4gICAgY3Vyc29yOiBkZWZhdWx0O1xufVxuXG5cbi8qKlxuICogQW5pbWF0aW9uIG1vZGVcbiAqL1xuW2RhdGEtbW9kZT1cImFuaW1hdGlvblwiXSBkaXZbZGF0YS1hY3Rpb249XCJleGl0XCJdLFxuW2RhdGEtbW9kZT1cImFuaW1hdGlvblwiXSBkaXZbZGF0YS1hY3Rpb249XCJlbnRlclwiXSB7XG4gICAgLXdlYmtpdC1hbmltYXRpb24tZHVyYXRpb246IDAuMzVzO1xuICAgIGFuaW1hdGlvbi1kdXJhdGlvbjogMC4zNXM7XG4gICAgLXdlYmtpdC1hbmltYXRpb24tdGltaW5nLWZ1bmN0aW9uOiBlYXNlLWluO1xuICAgIGFuaW1hdGlvbi10aW1pbmctZnVuY3Rpb246IGVhc2UtaW47XG59XG5cbltkYXRhLW1vZGU9XCJhbmltYXRpb25cIl0gZGl2W2RhdGEtYWN0aW9uPVwiZW50ZXJcIl0ge1xuICAgIC13ZWJraXQtYW5pbWF0aW9uLXRpbWluZy1mdW5jdGlvbjogY3ViaWMtYmV6aWVyKC4xMiwuMzcsLjI1LDEpO1xuICAgIGFuaW1hdGlvbi10aW1pbmctZnVuY3Rpb246IGN1YmljLWJlemllciguMTIsLjM3LC4yNSwxKTtcbn1cblxuW2RhdGEtbW9kZT1cImFuaW1hdGlvblwiXSAubWNzLWl0ZW0ge1xuICAgIC13ZWJraXQtYW5pbWF0aW9uLWR1cmF0aW9uOiAwO1xuICAgIC13ZWJraXQtdHJhbnNmb3JtOiBub25lO1xuICAgIGFuaW1hdGlvbi1uYW1lOiBub25lO1xuICAgIGFuaW1hdGlvbi1kdXJhdGlvbjogMDtcbn1cblxuW2RhdGEtbW9kZT1cImFuaW1hdGlvblwiXSAubWNzLWl0ZW1bZGF0YS1hbmltYXRpb24tbnRoPVwiMVwiXSB7XG4gICAgLXdlYmtpdC1hbmltYXRpb24tZGVsYXk6IDAuMTVzO1xuICAgIGFuaW1hdGlvbi1kZWxheTogMC4xNXM7XG59XG5cbltkYXRhLW1vZGU9XCJhbmltYXRpb25cIl0gLm1jcy1pdGVtW2RhdGEtYW5pbWF0aW9uLW50aD1cIjJcIl0ge1xuICAgIC13ZWJraXQtYW5pbWF0aW9uLWRlbGF5OiAwLjJzO1xuICAgIGFuaW1hdGlvbi1kZWxheTogMC4ycztcbn1cblxuW2RhdGEtbW9kZT1cImFuaW1hdGlvblwiXSAubWNzLWl0ZW1bZGF0YS1hbmltYXRpb24tbnRoPVwiM1wiXSB7XG4gICAgLXdlYmtpdC1hbmltYXRpb24tZGVsYXk6IDAuMjVzO1xuICAgIGFuaW1hdGlvbi1kZWxheTogMC4yNXM7XG59XG5cbltkYXRhLW1vZGU9XCJhbmltYXRpb25cIl0gLm1jcy1pdGVtW2RhdGEtYW5pbWF0aW9uLW50aD1cIjRcIl0ge1xuICAgIC13ZWJraXQtYW5pbWF0aW9uLWRlbGF5OiAwLjNzO1xuICAgIGFuaW1hdGlvbi1kZWxheTogMC4zcztcbn1cblxuW2RhdGEtbW9kZT1cImFuaW1hdGlvblwiXSAubWNzLWl0ZW1bZGF0YS1hbmltYXRpb24tbnRoPVwiNVwiXSB7XG4gICAgLXdlYmtpdC1hbmltYXRpb24tZGVsYXk6IDAuMzVzO1xuICAgIGFuaW1hdGlvbi1kZWxheTogMC4zNXM7XG59XG5cbltkYXRhLW1vZGU9XCJhbmltYXRpb25cIl0gLm1jcy1pdGVtW2RhdGEtYW5pbWF0aW9uLW50aD1cIjZcIl0ge1xuICAgIC13ZWJraXQtYW5pbWF0aW9uLWRlbGF5OiAwLjRzO1xuICAgIGFuaW1hdGlvbi1kZWxheTogMC40cztcbn1cblxuW2RhdGEtbW9kZT1cImFuaW1hdGlvblwiXSAubWNzLWl0ZW1bZGF0YS1hbmltYXRpb24tbnRoPVwiN1wiXSB7XG4gICAgLXdlYmtpdC1hbmltYXRpb24tZGVsYXk6IDAuNDVzO1xuICAgIGFuaW1hdGlvbi1kZWxheTogMC40NXM7XG59XG5cbltkYXRhLW1vZGU9XCJhbmltYXRpb25cIl0gLm1jcy1pdGVtW2RhdGEtYW5pbWF0aW9uLW50aD1cIjhcIl0ge1xuICAgIC13ZWJraXQtYW5pbWF0aW9uLWRlbGF5OiAwLjVzO1xuICAgIGFuaW1hdGlvbi1kZWxheTogMC41cztcbn1cblxuW2RhdGEtbW9kZT1cImFuaW1hdGlvblwiXSAubWNzLWl0ZW1bZGF0YS1hbmltYXRpb24tbnRoPVwiOVwiXSB7XG4gICAgLXdlYmtpdC1hbmltYXRpb24tZGVsYXk6IDAuNTVzO1xuICAgIGFuaW1hdGlvbi1kZWxheTogMC41NXM7XG59XG5cbltkYXRhLW1vZGU9XCJhbmltYXRpb25cIl0gLm1jcy1pdGVtW2RhdGEtYW5pbWF0aW9uLW50aD1cIjEwXCJdIHtcbiAgICAtd2Via2l0LWFuaW1hdGlvbi1kZWxheTogMC42cztcbiAgICBhbmltYXRpb24tZGVsYXk6IDAuNnM7XG59XG5cbi5NYWdpY1Njcm9sbC1ob3Jpem9udGFsW2RhdGEtbW9kZT1cImFuaW1hdGlvblwiXSBbZGF0YS1mb3J3YXJkXSBbZGF0YS1lbnRlcmluZ10sXG4uTWFnaWNTY3JvbGwtaG9yaXpvbnRhbFtkYXRhLW1vZGU9XCJhbmltYXRpb25cIl0gW2RhdGEtZm9yd2FyZF0gW2RhdGEtZXhpdGVkXSB7XG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZVgoMTAwMDAwcHgpO1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWCgxMDAwMDBweCk7XG59XG5cbi5NYWdpY1Njcm9sbC1ob3Jpem9udGFsW2RhdGEtbW9kZT1cImFuaW1hdGlvblwiXSBbZGF0YS1iYWNrd2FyZF0gW2RhdGEtZW50ZXJpbmddLFxuLk1hZ2ljU2Nyb2xsLWhvcml6b250YWxbZGF0YS1tb2RlPVwiYW5pbWF0aW9uXCJdIFtkYXRhLWJhY2t3YXJkXSBbZGF0YS1leGl0ZWRdIHtcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlWCgtMTAwMDAwcHgpO1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWCgtMTAwMDAwcHgpO1xufVxuXG4uTWFnaWNTY3JvbGwtdmVydGljYWxbZGF0YS1tb2RlPVwiYW5pbWF0aW9uXCJdIFtkYXRhLWZvcndhcmRdIFtkYXRhLWVudGVyaW5nXSxcbi5NYWdpY1Njcm9sbC12ZXJ0aWNhbFtkYXRhLW1vZGU9XCJhbmltYXRpb25cIl0gW2RhdGEtZm9yd2FyZF0gW2RhdGEtZXhpdGVkXSB7XG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZVkoMTAwMDAwcHgpO1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgxMDAwMDBweCk7XG59XG5cbi5NYWdpY1Njcm9sbC12ZXJ0aWNhbFtkYXRhLW1vZGU9XCJhbmltYXRpb25cIl0gW2RhdGEtYmFja3dhcmRdIFtkYXRhLWVudGVyaW5nXSxcbi5NYWdpY1Njcm9sbC12ZXJ0aWNhbFtkYXRhLW1vZGU9XCJhbmltYXRpb25cIl0gW2RhdGEtYmFja3dhcmRdIFtkYXRhLWV4aXRlZF0ge1xuICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC0xMDAwMDBweCk7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC0xMDAwMDBweCk7XG59XG4vKipcbiAqIFNsaWRlSW4gYW5pbWF0aW9uXG4gKi9cbltkYXRhLW1vZGU9XCJhbmltYXRpb25cIl0gLm1jcy1pdGVtW2RhdGEtYWN0aW9uPVwiZXhpdFwiXSxcbi5tY3Mtc2xpZGVpbltkYXRhLW1vZGU9XCJhbmltYXRpb25cIl0gLm1jcy1pdGVtW2RhdGEtYWN0aW9uPVwiZXhpdFwiXSB7XG4gICAgLXdlYmtpdC1hbmltYXRpb24tdGltaW5nLWZ1bmN0aW9uOiBlYXNlLWluO1xuICAgIGFuaW1hdGlvbi10aW1pbmctZnVuY3Rpb246IGVhc2UtaW47XG4gICAgLXdlYmtpdC1hbmltYXRpb24tZHVyYXRpb246IDAuM3M7XG4gICAgYW5pbWF0aW9uLWR1cmF0aW9uOiAwLjNzO1xufVxuXG5bZGF0YS1tb2RlPVwiYW5pbWF0aW9uXCJdIC5tY3MtaXRlbVtkYXRhLWFjdGlvbj1cImVudGVyXCJdLFxuLm1jcy1zbGlkZWluW2RhdGEtbW9kZT1cImFuaW1hdGlvblwiXSAubWNzLWl0ZW1bZGF0YS1hY3Rpb249XCJlbnRlclwiXSB7XG4gICAgLXdlYmtpdC1hbmltYXRpb24tdGltaW5nLWZ1bmN0aW9uOiBjdWJpYy1iZXppZXIoLjEyLC4zNywuMjUsMSk7XG4gICAgYW5pbWF0aW9uLXRpbWluZy1mdW5jdGlvbjogY3ViaWMtYmV6aWVyKC4xMiwuMzcsLjI1LDEpO1xuICAgIC13ZWJraXQtYW5pbWF0aW9uLWR1cmF0aW9uOiAwLjM1cztcbiAgICBhbmltYXRpb24tZHVyYXRpb246IDAuMzVzO1xufVxuXG4vKiBIb3Jpem9udGFsIEZvcndhcmQgKi9cbi5NYWdpY1Njcm9sbC1ob3Jpem9udGFsW2RhdGEtbW9kZT1cImFuaW1hdGlvblwiXSBbZGF0YS1mb3J3YXJkXSAubWNzLWl0ZW1bZGF0YS1hY3Rpb249XCJleGl0XCJdLFxuLm1jcy1zbGlkZWluLk1hZ2ljU2Nyb2xsLWhvcml6b250YWxbZGF0YS1tb2RlPVwiYW5pbWF0aW9uXCJdIFtkYXRhLWZvcndhcmRdIC5tY3MtaXRlbVtkYXRhLWFjdGlvbj1cImV4aXRcIl0ge1xuICAgIC13ZWJraXQtYW5pbWF0aW9uLW5hbWU6IGgtZm9yd2FyZC1leGl0LXNsaWRlaW47XG4gICAgYW5pbWF0aW9uLW5hbWU6IGgtZm9yd2FyZC1leGl0LXNsaWRlaW47XG59XG5cbi5NYWdpY1Njcm9sbC1ob3Jpem9udGFsW2RhdGEtbW9kZT1cImFuaW1hdGlvblwiXSBbZGF0YS1mb3J3YXJkXSAubWNzLWl0ZW1bZGF0YS1hY3Rpb249XCJlbnRlclwiXSxcbi5tY3Mtc2xpZGVpbi5NYWdpY1Njcm9sbC1ob3Jpem9udGFsW2RhdGEtbW9kZT1cImFuaW1hdGlvblwiXSBbZGF0YS1mb3J3YXJkXSAubWNzLWl0ZW1bZGF0YS1hY3Rpb249XCJlbnRlclwiXSB7XG4gICAgLXdlYmtpdC1hbmltYXRpb24tbmFtZTogaC1mb3J3YXJkLWVudGVyLXNsaWRlaW47XG4gICAgYW5pbWF0aW9uLW5hbWU6IGgtZm9yd2FyZC1lbnRlci1zbGlkZWluO1xufVxuXG5ALXdlYmtpdC1rZXlmcmFtZXMgaC1mb3J3YXJkLWV4aXQtc2xpZGVpbiB7XG4gICAgMCUge1xuICAgICAgICBvcGFjaXR5OiAxO1xuICAgICAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlWCgwKTtcbiAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKDApO1xuICAgIH1cblxuICAgIDEwMCUge1xuICAgICAgICBvcGFjaXR5OiAwO1xuICAgICAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlWCgtNjAwcHgpO1xuICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoLTYwMHB4KTtcbiAgICB9XG59XG5cbkBrZXlmcmFtZXMgaC1mb3J3YXJkLWV4aXQtc2xpZGVpbiB7XG4gICAgMCUge1xuICAgICAgICBvcGFjaXR5OiAxO1xuICAgICAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlWCgwKTtcbiAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKDApO1xuICAgIH1cblxuICAgIDEwMCUge1xuICAgICAgICBvcGFjaXR5OiAwO1xuICAgICAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlWCgtNjAwcHgpO1xuICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoLTYwMHB4KTtcbiAgICB9XG59XG5cbkAtd2Via2l0LWtleWZyYW1lcyBoLWZvcndhcmQtZW50ZXItc2xpZGVpbiB7XG4gICAgMCUge1xuICAgICAgICBvcGFjaXR5OiAwO1xuICAgICAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlWCgxODBweCk7XG4gICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWCgxODBweCk7XG4gICAgfVxuXG4gICAgMTAwJSB7XG4gICAgICAgIG9wYWNpdHk6IDE7XG4gICAgICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGVYKDBweCk7XG4gICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWCgwcHgpO1xuICAgIH1cbn1cblxuQGtleWZyYW1lcyBoLWZvcndhcmQtZW50ZXItc2xpZGVpbiB7XG4gICAgMCUge1xuICAgICAgICBvcGFjaXR5OiAwO1xuICAgICAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlWCgxODBweCk7XG4gICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWCgxODBweCk7XG4gICAgfVxuXG4gICAgMTAwJSB7XG4gICAgICAgIG9wYWNpdHk6IDE7XG4gICAgICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGVYKDBweCk7XG4gICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWCgwcHgpO1xuICAgIH1cbn1cblxuLyogSG9yaXpvbnRhbCBCYWNrd2FyZCAqL1xuLk1hZ2ljU2Nyb2xsLWhvcml6b250YWxbZGF0YS1tb2RlPVwiYW5pbWF0aW9uXCJdIFtkYXRhLWJhY2t3YXJkXSAubWNzLWl0ZW1bZGF0YS1hY3Rpb249XCJleGl0XCJdLFxuLm1jcy1zbGlkZWluLk1hZ2ljU2Nyb2xsLWhvcml6b250YWxbZGF0YS1tb2RlPVwiYW5pbWF0aW9uXCJdIFtkYXRhLWJhY2t3YXJkXSAubWNzLWl0ZW1bZGF0YS1hY3Rpb249XCJleGl0XCJdIHtcbiAgICAtd2Via2l0LWFuaW1hdGlvbi1uYW1lOiBoLWJhY2t3YXJkLWV4aXQtc2xpZGVpbjtcbiAgICBhbmltYXRpb24tbmFtZTogaC1iYWNrd2FyZC1leGl0LXNsaWRlaW47XG59XG5cbi5NYWdpY1Njcm9sbC1ob3Jpem9udGFsW2RhdGEtbW9kZT1cImFuaW1hdGlvblwiXSBbZGF0YS1iYWNrd2FyZF0gLm1jcy1pdGVtW2RhdGEtYWN0aW9uPVwiZW50ZXJcIl0sXG4ubWNzLXNsaWRlaW4uTWFnaWNTY3JvbGwtaG9yaXpvbnRhbFtkYXRhLW1vZGU9XCJhbmltYXRpb25cIl0gW2RhdGEtYmFja3dhcmRdIC5tY3MtaXRlbVtkYXRhLWFjdGlvbj1cImVudGVyXCJdIHtcbiAgICAtd2Via2l0LWFuaW1hdGlvbi1uYW1lOiBoLWJhY2t3YXJkLWVudGVyLXNsaWRlaW47XG4gICAgYW5pbWF0aW9uLW5hbWU6IGgtYmFja3dhcmQtZW50ZXItc2xpZGVpbjtcbn1cblxuQC13ZWJraXQta2V5ZnJhbWVzIGgtYmFja3dhcmQtZXhpdC1zbGlkZWluIHtcbiAgICAwJSB7XG4gICAgICAgIG9wYWNpdHk6IDE7XG4gICAgICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGVYKDApO1xuICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoMCk7XG4gICAgfVxuXG4gICAgMTAwJSB7XG4gICAgICAgIG9wYWNpdHk6IDA7XG4gICAgICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGVYKDYwMHB4KTtcbiAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKDYwMHB4KTtcbiAgICB9XG59XG5cbkBrZXlmcmFtZXMgaC1iYWNrd2FyZC1leGl0LXNsaWRlaW4ge1xuICAgIDAlIHtcbiAgICAgICAgb3BhY2l0eTogMTtcbiAgICAgICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZVgoMCk7XG4gICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWCgwKTtcbiAgICB9XG5cbiAgICAxMDAlIHtcbiAgICAgICAgb3BhY2l0eTogMDtcbiAgICAgICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZVgoNjAwcHgpO1xuICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoNjAwcHgpO1xuICAgIH1cbn1cblxuQC13ZWJraXQta2V5ZnJhbWVzIGgtYmFja3dhcmQtZW50ZXItc2xpZGVpbiB7XG4gICAgMCUge1xuICAgICAgICBvcGFjaXR5OiAwO1xuICAgICAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlWCgtMTgwcHgpO1xuICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoLTE4MHB4KTtcbiAgICB9XG5cbiAgICAxMDAlIHtcbiAgICAgICAgb3BhY2l0eTogMTtcbiAgICAgICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZVgoMHB4KTtcbiAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKDBweCk7XG4gICAgfVxufVxuXG5Aa2V5ZnJhbWVzIGgtYmFja3dhcmQtZW50ZXItc2xpZGVpbiB7XG4gICAgMCUge1xuICAgICAgICBvcGFjaXR5OiAwO1xuICAgICAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlWCgtMTgwcHgpO1xuICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoLTE4MHB4KTtcbiAgICB9XG5cbiAgICAxMDAlIHtcbiAgICAgICAgb3BhY2l0eTogMTtcbiAgICAgICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZVgoMHB4KTtcbiAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKDBweCk7XG4gICAgfVxufVxuXG4vKiBWZXJ0aWNhbCBGb3J3YXJkICovXG4uTWFnaWNTY3JvbGwtdmVydGljYWxbZGF0YS1tb2RlPVwiYW5pbWF0aW9uXCJdIFtkYXRhLWZvcndhcmRdIC5tY3MtaXRlbVtkYXRhLWFjdGlvbj1cImV4aXRcIl0sXG4ubWNzLXNsaWRlaW4uTWFnaWNTY3JvbGwtdmVydGljYWxbZGF0YS1tb2RlPVwiYW5pbWF0aW9uXCJdIFtkYXRhLWZvcndhcmRdIC5tY3MtaXRlbVtkYXRhLWFjdGlvbj1cImV4aXRcIl0ge1xuICAgIC13ZWJraXQtYW5pbWF0aW9uLW5hbWU6IHYtZm9yd2FyZC1leGl0LXNsaWRlaW47XG4gICAgYW5pbWF0aW9uLW5hbWU6IHYtZm9yd2FyZC1leGl0LXNsaWRlaW47XG59XG5cbi5NYWdpY1Njcm9sbC12ZXJ0aWNhbFtkYXRhLW1vZGU9XCJhbmltYXRpb25cIl0gW2RhdGEtZm9yd2FyZF0gLm1jcy1pdGVtW2RhdGEtYWN0aW9uPVwiZW50ZXJcIl0sXG4ubWNzLXNsaWRlaW4uTWFnaWNTY3JvbGwtdmVydGljYWxbZGF0YS1tb2RlPVwiYW5pbWF0aW9uXCJdIFtkYXRhLWZvcndhcmRdIC5tY3MtaXRlbVtkYXRhLWFjdGlvbj1cImVudGVyXCJdIHtcbiAgICAtd2Via2l0LWFuaW1hdGlvbi1uYW1lOiB2LWZvcndhcmQtZW50ZXItc2xpZGVpbjtcbiAgICBhbmltYXRpb24tbmFtZTogdi1mb3J3YXJkLWVudGVyLXNsaWRlaW47XG59XG5cbkAtd2Via2l0LWtleWZyYW1lcyB2LWZvcndhcmQtZXhpdC1zbGlkZWluIHtcbiAgICAwJSB7XG4gICAgICAgIG9wYWNpdHk6IDE7XG4gICAgICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGVZKDApO1xuICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoMCk7XG4gICAgfVxuXG4gICAgMTAwJSB7XG4gICAgICAgIG9wYWNpdHk6IDA7XG4gICAgICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC02MDBweCk7XG4gICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgtNjAwcHgpO1xuICAgIH1cbn1cblxuQGtleWZyYW1lcyB2LWZvcndhcmQtZXhpdC1zbGlkZWluIHtcbiAgICAwJSB7XG4gICAgICAgIG9wYWNpdHk6IDE7XG4gICAgICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGVZKDApO1xuICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoMCk7XG4gICAgfVxuXG4gICAgMTAwJSB7XG4gICAgICAgIG9wYWNpdHk6IDA7XG4gICAgICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC02MDBweCk7XG4gICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgtNjAwcHgpO1xuICAgIH1cbn1cblxuQC13ZWJraXQta2V5ZnJhbWVzIHYtZm9yd2FyZC1lbnRlci1zbGlkZWluIHtcbiAgICAwJSB7XG4gICAgICAgIG9wYWNpdHk6IDA7XG4gICAgICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGVZKDE4MHB4KTtcbiAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKDE4MHB4KTtcbiAgICB9XG5cbiAgICAxMDAlIHtcbiAgICAgICAgb3BhY2l0eTogMTtcbiAgICAgICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZVkoMHB4KTtcbiAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKDBweCk7XG4gICAgfVxufVxuXG5Aa2V5ZnJhbWVzIHYtZm9yd2FyZC1lbnRlci1zbGlkZWluIHtcbiAgICAwJSB7XG4gICAgICAgIG9wYWNpdHk6IDA7XG4gICAgICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGVZKDE4MHB4KTtcbiAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKDE4MHB4KTtcbiAgICB9XG5cbiAgICAxMDAlIHtcbiAgICAgICAgb3BhY2l0eTogMTtcbiAgICAgICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZVkoMHB4KTtcbiAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKDBweCk7XG4gICAgfVxufVxuXG4vKiBWZXJ0aWNhbCBCYWNrd2FyZCAqL1xuLk1hZ2ljU2Nyb2xsLXZlcnRpY2FsW2RhdGEtbW9kZT1cImFuaW1hdGlvblwiXSBbZGF0YS1iYWNrd2FyZF0gLm1jcy1pdGVtW2RhdGEtYWN0aW9uPVwiZXhpdFwiXSxcbi5tY3Mtc2xpZGVpbi5NYWdpY1Njcm9sbC12ZXJ0aWNhbFtkYXRhLW1vZGU9XCJhbmltYXRpb25cIl0gW2RhdGEtYmFja3dhcmRdIC5tY3MtaXRlbVtkYXRhLWFjdGlvbj1cImV4aXRcIl0ge1xuICAgIC13ZWJraXQtYW5pbWF0aW9uLW5hbWU6IHYtYmFja3dhcmQtZXhpdC1zbGlkZWluO1xuICAgIGFuaW1hdGlvbi1uYW1lOiB2LWJhY2t3YXJkLWV4aXQtc2xpZGVpbjtcbn1cblxuLk1hZ2ljU2Nyb2xsLXZlcnRpY2FsW2RhdGEtbW9kZT1cImFuaW1hdGlvblwiXSBbZGF0YS1iYWNrd2FyZF0gLm1jcy1pdGVtW2RhdGEtYWN0aW9uPVwiZW50ZXJcIl0sXG4ubWNzLXNsaWRlaW4uTWFnaWNTY3JvbGwtdmVydGljYWxbZGF0YS1tb2RlPVwiYW5pbWF0aW9uXCJdIFtkYXRhLWJhY2t3YXJkXSAubWNzLWl0ZW1bZGF0YS1hY3Rpb249XCJlbnRlclwiXSB7XG4gICAgLXdlYmtpdC1hbmltYXRpb24tbmFtZTogdi1iYWNrd2FyZC1lbnRlci1zbGlkZWluO1xuICAgIGFuaW1hdGlvbi1uYW1lOiB2LWJhY2t3YXJkLWVudGVyLXNsaWRlaW47XG59XG5cbkAtd2Via2l0LWtleWZyYW1lcyB2LWJhY2t3YXJkLWV4aXQtc2xpZGVpbiB7XG4gICAgMCUge1xuICAgICAgICBvcGFjaXR5OiAxO1xuICAgICAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlWSgwKTtcbiAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKDApO1xuICAgIH1cblxuICAgIDEwMCUge1xuICAgICAgICBvcGFjaXR5OiAwO1xuICAgICAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlWSg2MDBweCk7XG4gICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSg2MDBweCk7XG4gICAgfVxufVxuXG5Aa2V5ZnJhbWVzIHYtYmFja3dhcmQtZXhpdC1zbGlkZWluIHtcbiAgICAwJSB7XG4gICAgICAgIG9wYWNpdHk6IDE7XG4gICAgICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGVZKDApO1xuICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoMCk7XG4gICAgfVxuXG4gICAgMTAwJSB7XG4gICAgICAgIG9wYWNpdHk6IDA7XG4gICAgICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGVZKDYwMHB4KTtcbiAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKDYwMHB4KTtcbiAgICB9XG59XG5cbkAtd2Via2l0LWtleWZyYW1lcyB2LWJhY2t3YXJkLWVudGVyLXNsaWRlaW4ge1xuICAgIDAlIHtcbiAgICAgICAgb3BhY2l0eTogMDtcbiAgICAgICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTE4MHB4KTtcbiAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC0xODBweCk7XG4gICAgfVxuXG4gICAgMTAwJSB7XG4gICAgICAgIG9wYWNpdHk6IDE7XG4gICAgICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGVZKDBweCk7XG4gICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgwcHgpO1xuICAgIH1cbn1cblxuQGtleWZyYW1lcyB2LWJhY2t3YXJkLWVudGVyLXNsaWRlaW4ge1xuICAgIDAlIHtcbiAgICAgICAgb3BhY2l0eTogMDtcbiAgICAgICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTE4MHB4KTtcbiAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC0xODBweCk7XG4gICAgfVxuXG4gICAgMTAwJSB7XG4gICAgICAgIG9wYWNpdHk6IDE7XG4gICAgICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGVZKDBweCk7XG4gICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgwcHgpO1xuICAgIH1cbn1cbi8qKlxuICogQm91bmNlIGFuaW1hdGlvblxuICovXG4ubWNzLWJvdW5jZVtkYXRhLW1vZGU9XCJhbmltYXRpb25cIl0gLm1jcy1pdGVtW2RhdGEtYWN0aW9uPVwiZXhpdFwiXSB7XG4gICAgLXdlYmtpdC1hbmltYXRpb24tdGltaW5nLWZ1bmN0aW9uOiBjdWJpYy1iZXppZXIoLjg0LDAsMSwxKTtcbiAgICBhbmltYXRpb24tdGltaW5nLWZ1bmN0aW9uOiBjdWJpYy1iZXppZXIoLjg0LDAsMSwxKTtcbiAgICAtd2Via2l0LWFuaW1hdGlvbi1kdXJhdGlvbjogMC40cztcbiAgICBhbmltYXRpb24tZHVyYXRpb246IDAuNHM7XG4gICAgLyotd2Via2l0LWFuaW1hdGlvbi1kZWxheTogMHM7XG4gICAgICAgICAgICBhbmltYXRpb24tZGVsYXk6IDBzOyovXG59XG5cbi5tY3MtYm91bmNlW2RhdGEtbW9kZT1cImFuaW1hdGlvblwiXSAubWNzLWl0ZW1bZGF0YS1hY3Rpb249XCJlbnRlclwiXSB7XG4gICAgLXdlYmtpdC1hbmltYXRpb24tdGltaW5nLWZ1bmN0aW9uOiBjdWJpYy1iZXppZXIoLjEyLC4zNywuMjUsMSk7XG4gICAgYW5pbWF0aW9uLXRpbWluZy1mdW5jdGlvbjogY3ViaWMtYmV6aWVyKC4xMiwuMzcsLjI1LDEpO1xuICAgIC13ZWJraXQtYW5pbWF0aW9uLWR1cmF0aW9uOiAwLjRzO1xuICAgIGFuaW1hdGlvbi1kdXJhdGlvbjogMC40cztcbn1cblxuLyogSG9yaXpvbnRhbCBGb3J3YXJkICovXG4ubWNzLWJvdW5jZS5NYWdpY1Njcm9sbC1ob3Jpem9udGFsW2RhdGEtbW9kZT1cImFuaW1hdGlvblwiXSBbZGF0YS1mb3J3YXJkXSAubWNzLWl0ZW1bZGF0YS1hY3Rpb249XCJleGl0XCJdIHtcbiAgICAtd2Via2l0LWFuaW1hdGlvbi1uYW1lOiBoLWZvcndhcmQtZXhpdC1ib3VuY2U7XG4gICAgYW5pbWF0aW9uLW5hbWU6IGgtZm9yd2FyZC1leGl0LWJvdW5jZTtcbn1cblxuLm1jcy1ib3VuY2UuTWFnaWNTY3JvbGwtaG9yaXpvbnRhbFtkYXRhLW1vZGU9XCJhbmltYXRpb25cIl0gW2RhdGEtZm9yd2FyZF0gLm1jcy1pdGVtW2RhdGEtYWN0aW9uPVwiZW50ZXJcIl0ge1xuICAgIC13ZWJraXQtYW5pbWF0aW9uLW5hbWU6IGgtZm9yd2FyZC1lbnRlci1ib3VuY2U7XG4gICAgYW5pbWF0aW9uLW5hbWU6IGgtZm9yd2FyZC1lbnRlci1ib3VuY2U7XG59XG5cbkAtd2Via2l0LWtleWZyYW1lcyBoLWZvcndhcmQtZXhpdC1ib3VuY2Uge1xuICAgIDAlIHtcbiAgICAgICAgb3BhY2l0eTogMTtcbiAgICAgICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZVgoMCk7XG4gICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWCgwKSB0cmFuc2xhdGVaKC0xcHgpO1xuICAgIH1cblxuICAgIDQwJSB7XG4gICAgICAgIG9wYWNpdHk6IDAuNjtcbiAgICB9XG5cbiAgICAxMDAlIHtcbiAgICAgICAgb3BhY2l0eTogMDtcbiAgICAgICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZVgoLTIwMDBweCk7XG4gICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWCgtMjAwMHB4KSB0cmFuc2xhdGVaKC0xcHgpO1xuICAgIH1cbn1cblxuQGtleWZyYW1lcyBoLWZvcndhcmQtZXhpdC1ib3VuY2Uge1xuICAgIDAlIHtcbiAgICAgICAgb3BhY2l0eTogMTtcbiAgICAgICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZVgoMCk7XG4gICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWCgwKSB0cmFuc2xhdGVaKC0xcHgpO1xuICAgIH1cblxuICAgIDQwJSB7XG4gICAgICAgIG9wYWNpdHk6IDAuNjtcbiAgICB9XG5cbiAgICAxMDAlIHtcbiAgICAgICAgb3BhY2l0eTogMDtcbiAgICAgICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZVgoLTIwMDBweCk7XG4gICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWCgtMjAwMHB4KSB0cmFuc2xhdGVaKC0xcHgpO1xuICAgIH1cbn1cblxuQC13ZWJraXQta2V5ZnJhbWVzIGgtZm9yd2FyZC1lbnRlci1ib3VuY2Uge1xuICAgIDAlIHtcbiAgICAgICAgb3BhY2l0eTogMDtcbiAgICAgICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZVgoMzAwMHB4KTtcbiAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKDMwMDBweCk7XG4gICAgfVxuXG4gICAgNjAlIHtcbiAgICAgICAgb3BhY2l0eTogMTtcbiAgICAgICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZVgoLTMwcHgpO1xuICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoLTMwcHgpO1xuICAgIH1cblxuICAgIDc1JSB7XG4gICAgICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGVYKDEwcHgpO1xuICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoMTBweCk7XG4gICAgfVxuXG4gICAgOTAlIHtcbiAgICAgICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZVgoLTVweCk7XG4gICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWCgtNXB4KTtcbiAgICB9XG5cbiAgICAxMDAlIHtcbiAgICAgICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZVgoMHB4KTtcbiAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKDBweCk7XG4gICAgfVxufVxuXG5Aa2V5ZnJhbWVzIGgtZm9yd2FyZC1lbnRlci1ib3VuY2Uge1xuICAgIDAlIHtcbiAgICAgICAgb3BhY2l0eTogMDtcbiAgICAgICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZVgoMzAwMHB4KTtcbiAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKDMwMDBweCk7XG4gICAgfVxuXG4gICAgNjAlIHtcbiAgICAgICAgb3BhY2l0eTogMTtcbiAgICAgICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZVgoLTMwcHgpO1xuICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoLTMwcHgpO1xuICAgIH1cblxuICAgIDc1JSB7XG4gICAgICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGVYKDEwcHgpO1xuICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoMTBweCk7XG4gICAgfVxuXG4gICAgOTAlIHtcbiAgICAgICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZVgoLTVweCk7XG4gICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWCgtNXB4KTtcbiAgICB9XG5cbiAgICAxMDAlIHtcbiAgICAgICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZVgoMHB4KTtcbiAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKDBweCk7XG4gICAgfVxufVxuXG4vKiBIb3Jpem9udGFsIEJhY2t3YXJkICovXG4ubWNzLWJvdW5jZS5NYWdpY1Njcm9sbC1ob3Jpem9udGFsW2RhdGEtbW9kZT1cImFuaW1hdGlvblwiXSBbZGF0YS1iYWNrd2FyZF0gLm1jcy1pdGVtW2RhdGEtYWN0aW9uPVwiZXhpdFwiXSB7XG4gICAgLXdlYmtpdC1hbmltYXRpb24tbmFtZTogaC1iYWNrd2FyZC1leGl0LWJvdW5jZTtcbiAgICBhbmltYXRpb24tbmFtZTogaC1iYWNrd2FyZC1leGl0LWJvdW5jZTtcbn1cblxuLm1jcy1ib3VuY2UuTWFnaWNTY3JvbGwtaG9yaXpvbnRhbFtkYXRhLW1vZGU9XCJhbmltYXRpb25cIl0gW2RhdGEtYmFja3dhcmRdIC5tY3MtaXRlbVtkYXRhLWFjdGlvbj1cImVudGVyXCJdIHtcbiAgICAtd2Via2l0LWFuaW1hdGlvbi1uYW1lOiBoLWJhY2t3YXJkLWVudGVyLWJvdW5jZTtcbiAgICBhbmltYXRpb24tbmFtZTogaC1iYWNrd2FyZC1lbnRlci1ib3VuY2U7XG59XG5cbkAtd2Via2l0LWtleWZyYW1lcyBoLWJhY2t3YXJkLWV4aXQtYm91bmNlIHtcbiAgICAwJSB7XG4gICAgICAgIG9wYWNpdHk6IDE7XG4gICAgICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGVYKDApO1xuICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoMCkgdHJhbnNsYXRlWigtMXB4KTtcbiAgICB9XG5cbiAgICA0MCUge1xuICAgICAgICBvcGFjaXR5OiAwLjY7XG4gICAgfVxuXG4gICAgMTAwJSB7XG4gICAgICAgIG9wYWNpdHk6IDA7XG4gICAgICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGVYKDIwMDBweCk7XG4gICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWCgyMDAwcHgpIHRyYW5zbGF0ZVooLTFweCk7XG4gICAgfVxufVxuXG5Aa2V5ZnJhbWVzIGgtYmFja3dhcmQtZXhpdC1ib3VuY2Uge1xuICAgIDAlIHtcbiAgICAgICAgb3BhY2l0eTogMTtcbiAgICAgICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZVgoMCk7XG4gICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWCgwKSB0cmFuc2xhdGVaKC0xcHgpO1xuICAgIH1cblxuICAgIDQwJSB7XG4gICAgICAgIG9wYWNpdHk6IDAuNjtcbiAgICB9XG5cbiAgICAxMDAlIHtcbiAgICAgICAgb3BhY2l0eTogMDtcbiAgICAgICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZVgoMjAwMHB4KTtcbiAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKDIwMDBweCkgdHJhbnNsYXRlWigtMXB4KTtcbiAgICB9XG59XG5cbkAtd2Via2l0LWtleWZyYW1lcyBoLWJhY2t3YXJkLWVudGVyLWJvdW5jZSB7XG4gICAgMCUge1xuICAgICAgICBvcGFjaXR5OiAwO1xuICAgICAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlWCgtMzAwMHB4KTtcbiAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKC0zMDAwcHgpO1xuICAgIH1cblxuICAgIDYwJSB7XG4gICAgICAgIG9wYWNpdHk6IDE7XG4gICAgICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGVYKDMwcHgpO1xuICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoMzBweCk7XG4gICAgfVxuXG4gICAgNzUlIHtcbiAgICAgICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZVgoLTEwcHgpO1xuICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoLTEwcHgpO1xuICAgIH1cblxuICAgIDkwJSB7XG4gICAgICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGVYKDVweCk7XG4gICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWCg1cHgpO1xuICAgIH1cblxuICAgIDEwMCUge1xuICAgICAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlWCgwcHgpO1xuICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoMHB4KTtcbiAgICB9XG59XG5cbkBrZXlmcmFtZXMgaC1iYWNrd2FyZC1lbnRlci1ib3VuY2Uge1xuICAgIDAlIHtcbiAgICAgICAgb3BhY2l0eTogMDtcbiAgICAgICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZVgoLTMwMDBweCk7XG4gICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWCgtMzAwMHB4KTtcbiAgICB9XG5cbiAgICA2MCUge1xuICAgICAgICBvcGFjaXR5OiAxO1xuICAgICAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlWCgzMHB4KTtcbiAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKDMwcHgpO1xuICAgIH1cblxuICAgIDc1JSB7XG4gICAgICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGVYKC0xMHB4KTtcbiAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKC0xMHB4KTtcbiAgICB9XG5cbiAgICA5MCUge1xuICAgICAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlWCg1cHgpO1xuICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoNXB4KTtcbiAgICB9XG5cbiAgICAxMDAlIHtcbiAgICAgICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZVgoMHB4KTtcbiAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKDBweCk7XG4gICAgfVxufVxuXG4vKiBWZXJ0aWNhbCBGb3J3YXJkICovXG4ubWNzLWJvdW5jZS5NYWdpY1Njcm9sbC12ZXJ0aWNhbFtkYXRhLW1vZGU9XCJhbmltYXRpb25cIl0gW2RhdGEtZm9yd2FyZF0gZGl2W2RhdGEtYWN0aW9uPVwiZXhpdFwiXSB7XG4gICAgLXdlYmtpdC1hbmltYXRpb24tbmFtZTogdi1mb3J3YXJkLWV4aXQtYm91bmNlO1xuICAgIGFuaW1hdGlvbi1uYW1lOiB2LWZvcndhcmQtZXhpdC1ib3VuY2U7XG59XG5cbi5tY3MtYm91bmNlLk1hZ2ljU2Nyb2xsLXZlcnRpY2FsW2RhdGEtbW9kZT1cImFuaW1hdGlvblwiXSBbZGF0YS1mb3J3YXJkXSBkaXZbZGF0YS1hY3Rpb249XCJlbnRlclwiXSB7XG4gICAgLXdlYmtpdC1hbmltYXRpb24tbmFtZTogdi1mb3J3YXJkLWVudGVyLWJvdW5jZTtcbiAgICBhbmltYXRpb24tbmFtZTogdi1mb3J3YXJkLWVudGVyLWJvdW5jZTtcbn1cblxuLm1jcy1ib3VuY2UuTWFnaWNTY3JvbGwtdmVydGljYWxbZGF0YS1tb2RlPVwiYW5pbWF0aW9uXCJdIFtkYXRhLWZvcndhcmRdIFtkYXRhLWVudGVyaW5nXSB7XG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZVkoMTAwMDAwcHgpO1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgxMDAwMDBweCk7XG59XG5cbi5tY3MtYm91bmNlLk1hZ2ljU2Nyb2xsLXZlcnRpY2FsW2RhdGEtbW9kZT1cImFuaW1hdGlvblwiXSBbZGF0YS1mb3J3YXJkXSBbZGF0YS1leGl0ZWRdIHtcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlWSgxMDAwMDBweCk7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKDEwMDAwMHB4KTtcbn1cblxuQC13ZWJraXQta2V5ZnJhbWVzIHYtZm9yd2FyZC1leGl0LWJvdW5jZSB7XG4gICAgMCUge1xuICAgICAgICBvcGFjaXR5OiAxO1xuICAgICAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlWSgwKTtcbiAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKDApO1xuICAgIH1cblxuICAgIDQwJSB7XG4gICAgICAgIG9wYWNpdHk6IDAuNjtcbiAgICB9XG5cbiAgICAxMDAlIHtcbiAgICAgICAgb3BhY2l0eTogMDtcbiAgICAgICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTIwMDBweCk7XG4gICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgtMjAwMHB4KTtcbiAgICB9XG59XG5cbkBrZXlmcmFtZXMgdi1mb3J3YXJkLWV4aXQtYm91bmNlIHtcbiAgICAwJSB7XG4gICAgICAgIG9wYWNpdHk6IDE7XG4gICAgICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGVZKDApO1xuICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoMCk7XG4gICAgfVxuXG4gICAgNDAlIHtcbiAgICAgICAgb3BhY2l0eTogMC42O1xuICAgIH1cblxuICAgIDEwMCUge1xuICAgICAgICBvcGFjaXR5OiAwO1xuICAgICAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlWSgtMjAwMHB4KTtcbiAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC0yMDAwcHgpO1xuICAgIH1cbn1cblxuQC13ZWJraXQta2V5ZnJhbWVzIHYtZm9yd2FyZC1lbnRlci1ib3VuY2Uge1xuICAgIDAlIHtcbiAgICAgICAgb3BhY2l0eTogMDtcbiAgICAgICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZVkoMzAwMHB4KTtcbiAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKDMwMDBweCk7XG4gICAgfVxuXG4gICAgNjAlIHtcbiAgICAgICAgb3BhY2l0eTogMTtcbiAgICAgICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTMwcHgpO1xuICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTMwcHgpO1xuICAgIH1cblxuICAgIDc1JSB7XG4gICAgICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGVZKDEwcHgpO1xuICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoMTBweCk7XG4gICAgfVxuXG4gICAgOTAlIHtcbiAgICAgICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTVweCk7XG4gICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgtNXB4KTtcbiAgICB9XG5cbiAgICAxMDAlIHtcbiAgICAgICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZVkoMHB4KTtcbiAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKDBweCk7XG4gICAgfVxufVxuXG5Aa2V5ZnJhbWVzIHYtZm9yd2FyZC1lbnRlci1ib3VuY2Uge1xuICAgIDAlIHtcbiAgICAgICAgb3BhY2l0eTogMDtcbiAgICAgICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZVkoMzAwMHB4KTtcbiAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKDMwMDBweCk7XG4gICAgfVxuXG4gICAgNjAlIHtcbiAgICAgICAgb3BhY2l0eTogMTtcbiAgICAgICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTMwcHgpO1xuICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTMwcHgpO1xuICAgIH1cblxuICAgIDc1JSB7XG4gICAgICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGVZKDEwcHgpO1xuICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoMTBweCk7XG4gICAgfVxuXG4gICAgOTAlIHtcbiAgICAgICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTVweCk7XG4gICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgtNXB4KTtcbiAgICB9XG5cbiAgICAxMDAlIHtcbiAgICAgICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZVkoMHB4KTtcbiAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKDBweCk7XG4gICAgfVxufVxuXG4vKiBWZXJ0aWNhbCBCYWNrd2FyZCAqL1xuLm1jcy1ib3VuY2UuTWFnaWNTY3JvbGwtdmVydGljYWxbZGF0YS1tb2RlPVwiYW5pbWF0aW9uXCJdIFtkYXRhLWJhY2t3YXJkXSBkaXZbZGF0YS1hY3Rpb249XCJleGl0XCJdIHtcbiAgICAtd2Via2l0LWFuaW1hdGlvbi1uYW1lOiB2LWJhY2t3YXJkLWV4aXQtYm91bmNlO1xuICAgIGFuaW1hdGlvbi1uYW1lOiB2LWJhY2t3YXJkLWV4aXQtYm91bmNlO1xufVxuXG4ubWNzLWJvdW5jZS5NYWdpY1Njcm9sbC12ZXJ0aWNhbFtkYXRhLW1vZGU9XCJhbmltYXRpb25cIl0gW2RhdGEtYmFja3dhcmRdIGRpdltkYXRhLWFjdGlvbj1cImVudGVyXCJdIHtcbiAgICAtd2Via2l0LWFuaW1hdGlvbi1uYW1lOiB2LWJhY2t3YXJkLWVudGVyLWJvdW5jZTtcbiAgICBhbmltYXRpb24tbmFtZTogdi1iYWNrd2FyZC1lbnRlci1ib3VuY2U7XG59XG5cbkAtd2Via2l0LWtleWZyYW1lcyB2LWJhY2t3YXJkLWV4aXQtYm91bmNlIHtcbiAgICAwJSB7XG4gICAgICAgIG9wYWNpdHk6IDE7XG4gICAgICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGVZKDApO1xuICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoMCk7XG4gICAgfVxuXG4gICAgNDAlIHtcbiAgICAgICAgb3BhY2l0eTogMC42O1xuICAgIH1cblxuICAgIDEwMCUge1xuICAgICAgICBvcGFjaXR5OiAwO1xuICAgICAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlWSgyMDAwcHgpO1xuICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoMjAwMHB4KTtcbiAgICB9XG59XG5cbkBrZXlmcmFtZXMgdi1iYWNrd2FyZC1leGl0LWJvdW5jZSB7XG4gICAgMCUge1xuICAgICAgICBvcGFjaXR5OiAxO1xuICAgICAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlWSgwKTtcbiAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKDApO1xuICAgIH1cblxuICAgIDQwJSB7XG4gICAgICAgIG9wYWNpdHk6IDAuNjtcbiAgICB9XG5cbiAgICAxMDAlIHtcbiAgICAgICAgb3BhY2l0eTogMDtcbiAgICAgICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZVkoMjAwMHB4KTtcbiAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKDIwMDBweCk7XG4gICAgfVxufVxuXG5ALXdlYmtpdC1rZXlmcmFtZXMgdi1iYWNrd2FyZC1lbnRlci1ib3VuY2Uge1xuICAgIDAlIHtcbiAgICAgICAgb3BhY2l0eTogMDtcbiAgICAgICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTMwMDBweCk7XG4gICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgtMzAwMHB4KTtcbiAgICB9XG5cbiAgICA2MCUge1xuICAgICAgICBvcGFjaXR5OiAxO1xuICAgICAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlWSgzMHB4KTtcbiAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKDMwcHgpO1xuICAgIH1cblxuICAgIDc1JSB7XG4gICAgICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC0xMHB4KTtcbiAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC0xMHB4KTtcbiAgICB9XG5cbiAgICA5MCUge1xuICAgICAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlWSg1cHgpO1xuICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoNXB4KTtcbiAgICB9XG5cbiAgICAxMDAlIHtcbiAgICAgICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZVkoMHB4KTtcbiAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKDBweCk7XG4gICAgfVxufVxuXG5Aa2V5ZnJhbWVzIHYtYmFja3dhcmQtZW50ZXItYm91bmNlIHtcbiAgICAwJSB7XG4gICAgICAgIG9wYWNpdHk6IDA7XG4gICAgICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC0zMDAwcHgpO1xuICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTMwMDBweCk7XG4gICAgfVxuXG4gICAgNjAlIHtcbiAgICAgICAgb3BhY2l0eTogMTtcbiAgICAgICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZVkoMzBweCk7XG4gICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgzMHB4KTtcbiAgICB9XG5cbiAgICA3NSUge1xuICAgICAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlWSgtMTBweCk7XG4gICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgtMTBweCk7XG4gICAgfVxuXG4gICAgOTAlIHtcbiAgICAgICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZVkoNXB4KTtcbiAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKDVweCk7XG4gICAgfVxuXG4gICAgMTAwJSB7XG4gICAgICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGVZKDBweCk7XG4gICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgwcHgpO1xuICAgIH1cbn1cbi8qXG4gKiBBcnJvd3NcbiAqL1xuLk1hZ2ljU2Nyb2xsLWhvcml6b250YWwgLm1jcy1idXR0b24tYXJyb3ctcHJldjpiZWZvcmUsXG4uTWFnaWNTY3JvbGwtaG9yaXpvbnRhbCAubWNzLWJ1dHRvbi1hcnJvdy1uZXh0OmJlZm9yZSxcbi5NYWdpY1Njcm9sbC12ZXJ0aWNhbCAubWNzLWJ1dHRvbi1hcnJvdy1wcmV2OmJlZm9yZSxcbi5NYWdpY1Njcm9sbC12ZXJ0aWNhbCAubWNzLWJ1dHRvbi1hcnJvdy1uZXh0OmJlZm9yZSB7XG4gICAgY29udGVudDogXCJcIjtcbiAgICB0b3A6IDUwJTtcbiAgICBsZWZ0OiA1MCU7XG4gICAgd2lkdGg6IDEycHg7XG4gICAgaGVpZ2h0OiAxMnB4O1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICBib3JkZXItd2lkdGg6IDNweDtcbiAgICBib3JkZXItY29sb3I6IHJnYmEoNDksNTEsNjEsMC42KTtcbiAgICBib3JkZXItc3R5bGU6IHNvbGlkO1xuICAgIGJvcmRlci1yaWdodDogbm9uZTtcbiAgICBib3JkZXItYm90dG9tOiBub25lO1xuICAgIC13ZWJraXQtdHJhbnNpdGlvbjogYm9yZGVyLWNvbG9yIC4xNXMgbGluZWFyO1xuICAgIHRyYW5zaXRpb246IGJvcmRlci1jb2xvciAuMTVzIGxpbmVhcjtcbn1cblxuLk1hZ2ljU2Nyb2xsLWhvcml6b250YWwgLm1jcy1idXR0b24tYXJyb3ctcHJldjpiZWZvcmUge1xuICAgIGxlZnQ6IDYyJTtcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlKC01MCUsIC01MCUpIHJvdGF0ZVooLTQ1ZGVnKTtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZSgtNTAlLCAtNTAlKSByb3RhdGVaKC00NWRlZyk7XG59XG5cbi5NYWdpY1Njcm9sbC1ob3Jpem9udGFsIC5tY3MtYnV0dG9uLWFycm93LW5leHQ6YmVmb3JlIHtcbiAgICBsZWZ0OiA0MCU7XG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZSgtNTAlLCAtNTAlKSByb3RhdGVaKDEzNWRlZyk7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUoLTUwJSwgLTUwJSkgcm90YXRlWigxMzVkZWcpO1xufVxuXG4uTWFnaWNTY3JvbGwtdmVydGljYWwgLm1jcy1idXR0b24tYXJyb3ctcHJldjpiZWZvcmUge1xuICAgIHRvcDogNjIlO1xuICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGUoLTUwJSwgLTUwJSkgcm90YXRlWig0NWRlZyk7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUoLTUwJSwgLTUwJSkgcm90YXRlWig0NWRlZyk7XG59XG5cbi5NYWdpY1Njcm9sbC12ZXJ0aWNhbCAubWNzLWJ1dHRvbi1hcnJvdy1uZXh0OmJlZm9yZSB7XG4gICAgdG9wOiA0MCU7XG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZSgtNTAlLCAtNTAlKSByb3RhdGVaKC0xMzVkZWcpO1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlKC01MCUsIC01MCUpIHJvdGF0ZVooLTEzNWRlZyk7XG59XG5cbi5tY3MtYnV0dG9uLWFycm93Lm1jcy1kaXNhYmxlZCB7XG4gICAgb3BhY2l0eTogMC4wMSAhaW1wb3J0YW50O1xufVxuXG4uTWFnaWNTY3JvbGwgPiAubWNzLWJ1dHRvbi1hcnJvdyB7XG4gICAgLypmb250LXNpemU6IDIwcHg7Ki9cbiAgICB3aWR0aDogMzBweDtcbiAgICBoZWlnaHQ6IDMwcHg7XG4gICAgbWFyZ2luOiBhdXRvO1xuICAgIG9wYWNpdHk6IDAuNjtcbiAgICAtd2Via2l0LXRyYW5zaXRpb246IG9wYWNpdHkgLjE1cyBsaW5lYXI7XG4gICAgdHJhbnNpdGlvbjogb3BhY2l0eSAuMTVzIGxpbmVhcjtcbn1cblxuLk1hZ2ljU2Nyb2xsLWhvcml6b250YWwgLm1jcy1idXR0b24tYXJyb3ctcHJldiB7XG4gICAgbGVmdDogMDtcbiAgICByaWdodDogYXV0bztcbiAgICB0b3A6IDA7XG4gICAgYm90dG9tOiAwO1xufVxuXG4uTWFnaWNTY3JvbGwtaG9yaXpvbnRhbCAubWNzLWJ1dHRvbi1hcnJvdy1uZXh0IHtcbiAgICBsZWZ0OiBhdXRvO1xuICAgIHJpZ2h0OiAwO1xuICAgIHRvcDogMDtcbiAgICBib3R0b206IDA7XG59XG5cbi5NYWdpY1Njcm9sbC12ZXJ0aWNhbCAubWNzLWJ1dHRvbi1hcnJvdy1wcmV2IHtcbiAgICB0b3A6IDA7XG4gICAgYm90dG9tOiBhdXRvO1xuICAgIGxlZnQ6IDA7XG4gICAgcmlnaHQ6IDA7XG59XG5cbi5NYWdpY1Njcm9sbC12ZXJ0aWNhbCAubWNzLWJ1dHRvbi1hcnJvdy1uZXh0IHtcbiAgICB0b3A6IGF1dG87XG4gICAgYm90dG9tOiAwO1xuICAgIGxlZnQ6IDA7XG4gICAgcmlnaHQ6IDA7XG59XG5cbi5NYWdpY1Njcm9sbDpob3ZlciA+IC5tY3MtYnV0dG9uLWFycm93OmhvdmVyOm5vdCgubWNzLWRpc2FibGVkKSB7XG4gICAgb3BhY2l0eTogMTtcbn1cblxuLk1hZ2ljU2Nyb2xsOmhvdmVyID4gLm1jcy1idXR0b24tYXJyb3c6aG92ZXI6bm90KC5tY3MtZGlzYWJsZWQpOmJlZm9yZSB7XG4gICAgYm9yZGVyLWNvbG9yOiByZ2JhKDQ5LDUxLDYxLDEpO1xufVxuXG4uTWFnaWNTY3JvbGwuTWFnaWNTY3JvbGwtYXJyb3dzLWluc2lkZSAubWNzLWJ1dHRvbi1hcnJvdyB7XG4gICAgd2lkdGg6IDI0cHg7XG4gICAgaGVpZ2h0OiAyNHB4O1xuICAgIGJvcmRlci1yYWRpdXM6IDNweDtcbiAgICBiYWNrZ3JvdW5kOiByZ2JhKDI1NSwgMjU1LCAyNTUsIC43NSk7XG4gICAgYm94LXNoYWRvdzogMCAwIDFweCByZ2JhKDE1MywgMTUzLCAxNTMsIC41KTtcbiAgICAtd2Via2l0LXRyYW5zaXRpb246IGJhY2tncm91bmQtY29sb3IgLjE1cyBsaW5lYXI7XG4gICAgdHJhbnNpdGlvbjogYmFja2dyb3VuZC1jb2xvciAuMTVzIGxpbmVhcjtcbn1cblxuLk1hZ2ljU2Nyb2xsLk1hZ2ljU2Nyb2xsLWFycm93cy1pbnNpZGUgLm1jcy1idXR0b24tYXJyb3c6YmVmb3JlIHtcbiAgICB3aWR0aDogOHB4O1xuICAgIGhlaWdodDogOHB4O1xufVxuXG4uTWFnaWNTY3JvbGwtaG9yaXpvbnRhbC5NYWdpY1Njcm9sbC1hcnJvd3MtaW5zaWRlOmhvdmVyID4gLm1jcy1idXR0b24tYXJyb3c6aG92ZXI6bm90KC5tY3MtZGlzYWJsZWQpIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiByZ2JhKDI1NSwgMjU1LCAyNTUsIC45Nik7XG59XG5cbi5NYWdpY1Njcm9sbC1ob3Jpem9udGFsLk1hZ2ljU2Nyb2xsLWFycm93cy1pbnNpZGUgLm1jcy1idXR0b24tYXJyb3ctcHJldiB7XG4gICAgbGVmdDogNXB4O1xufVxuXG4uTWFnaWNTY3JvbGwtaG9yaXpvbnRhbC5NYWdpY1Njcm9sbC1hcnJvd3MtaW5zaWRlIC5tY3MtYnV0dG9uLWFycm93LW5leHQge1xuICAgIHJpZ2h0OiA1cHg7XG59XG5cbi5NYWdpY1Njcm9sbC12ZXJ0aWNhbC5NYWdpY1Njcm9sbC1hcnJvd3MtaW5zaWRlIC5tY3MtYnV0dG9uLWFycm93LXByZXYge1xuICAgIHRvcDogNXB4O1xufVxuXG4uTWFnaWNTY3JvbGwtdmVydGljYWwuTWFnaWNTY3JvbGwtYXJyb3dzLWluc2lkZSAubWNzLWJ1dHRvbi1hcnJvdy1uZXh0IHtcbiAgICBib3R0b206IDVweDtcbn1cblxuLmx0LWllMTAtbWFnaWMgLk1hZ2ljU2Nyb2xsLk1hZ2ljU2Nyb2xsLWFycm93cy1pbnNpZGUgLm1jcy1idXR0b24tYXJyb3cge1xuICAgIGJvcmRlcjogMXB4IHNvbGlkIHJnYmEoMTUzLCAxNTMsIDE1MywgLjUpO1xufVxuXG4ubHQtaWU5LW1hZ2ljIC5tY3MtYnV0dG9uLWFycm93OmJlZm9yZSB7XG4gICAgYm9yZGVyLWNvbG9yOiAjODM4NThCO1xufVxuXG4ubHQtaWU5LW1hZ2ljIC5NYWdpY1Njcm9sbDpob3ZlciA+IC5tY3MtYnV0dG9uLWFycm93OmhvdmVyOmJlZm9yZSB7XG4gICAgYm9yZGVyLWNvbG9yOiAjMzEzMzNEO1xufVxuXG4ubHQtaWU5LW1hZ2ljIC5NYWdpY1Njcm9sbC5NYWdpY1Njcm9sbC1hcnJvd3MtaW5zaWRlIC5tY3MtYnV0dG9uLWFycm93OmJlZm9yZSB7XG4gICAgYm9yZGVyLWNvbG9yOiAjMzEzMzNEO1xufVxuXG4ubHQtaWU5LW1hZ2ljIC5NYWdpY1Njcm9sbC5NYWdpY1Njcm9sbC1hcnJvd3MtaW5zaWRlIC5tY3MtYnV0dG9uLWFycm93IHtcbiAgICBiYWNrZ3JvdW5kOiAjZmZmO1xuICAgIGJvcmRlcjogMXB4IHNvbGlkICM5OTk7XG4gICAgZmlsdGVyOiBhbHBoYShvcGFjaXR5ID0gNjApO1xufVxuXG4ubHQtaWU5LW1hZ2ljIC5NYWdpY1Njcm9sbC5NYWdpY1Njcm9sbC1hcnJvd3MtaW5zaWRlIC5tY3MtYnV0dG9uLWFycm93OmhvdmVyIHtcbiAgICBmaWx0ZXI6IGFscGhhKG9wYWNpdHkgPSA5Nik7XG59XG5cbi5sdC1pZTktbWFnaWMgLm1jcy1idXR0b24tYXJyb3cubWNzLWRpc2FibGVkIHtcbiAgICBmaWx0ZXI6IGFscGhhKG9wYWNpdHkgPSAwLjAxKSAhaW1wb3J0YW50O1xufVxuXG4vKlxuICogQnVsbGV0c1xuICovXG4uTWFnaWNTY3JvbGwtaG9yaXpvbnRhbCAubWNzLWJ1bGxldHMge1xuICAgIG1hcmdpbi10b3A6IDEwcHg7XG59XG5cbi5NYWdpY1Njcm9sbC1ob3Jpem9udGFsLk1hZ2ljU2Nyb2xsLWJ1bGxldHMge1xuICAgIG1hcmdpbi1ib3R0b206IDM1cHg7XG59XG5cbi5NYWdpY1Njcm9sbC12ZXJ0aWNhbCAubWNzLWJ1bGxldHMge1xuICAgIG1hcmdpbi1sZWZ0OiAxMHB4O1xuICAgIHRvcDogNTAlO1xuICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGUoMCwgLTUwJSk7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUoMCwgLTUwJSk7XG59XG5cbi5NYWdpY1Njcm9sbC12ZXJ0aWNhbC5NYWdpY1Njcm9sbC1idWxsZXRzIHtcbiAgICBtYXJnaW4tcmlnaHQ6IDM1cHg7XG59XG5cbi5tY3MtYnVsbGV0IHtcbiAgICB3aWR0aDogMTBweDtcbiAgICBoZWlnaHQ6IDEwcHg7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogIzgzODU4Qjtcbn1cblxuLm1jcy1idWxsZXQ6aG92ZXIge1xuICAgIGJhY2tncm91bmQtY29sb3I6ICM1YTVhNWE7XG59XG5cbi5tY3MtYnVsbGV0LmFjdGl2ZSB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gICAgYm9yZGVyOiAxcHggc29saWQgIzVhNWE1YTtcbn1cblxuXG4vKiBDYXB0aW9uICovXG4ubWNzLWl0ZW0gLm1jcy1jYXB0aW9uIHtcbiAgICBjb2xvcjogd2hpdGU7XG4gICAgcGFkZGluZzogNXB4IDA7XG4gICAgZm9udDogbm9ybWFsIDlwdC8xLjJlbSAnSGVsdmV0aWNhIE5ldWUnLCBIZWx2ZXRpY2EsICdMdWNpZGEgR3JhbmRlJywgJ0x1Y2lkYSBTYW5zIFVuaWNvZGUnLCBWZXJkYW5hLCBBcmlhbCwgc2Fucy1zZXJpZjtcbiAgICB0ZXh0LXJlbmRlcmluZzogZ2VvbWV0cmljUHJlY2lzaW9uO1xufVxuXG4uTWFnaWNTY3JvbGxbZGF0YS1tb2RlPVwic2Nyb2xsXCJdIC5tY3MtaXRlbSAubWNzLWNhcHRpb24sXG4uTWFnaWNTY3JvbGxbZGF0YS1tb2RlPVwiYW5pbWF0aW9uXCJdIC5tY3MtaXRlbSAubWNzLWNhcHRpb24ge1xuICAgIGJhY2tncm91bmQtY29sb3I6ICMzMTMzM0Q7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogcmdiYSg0OSw1MSw2MSwwLjcpO1xufVxuXG4ubHQtaWU5LW1hZ2ljIC5NYWdpY1Njcm9sbFtkYXRhLW1vZGU9XCJzY3JvbGxcIl0gLm1jcy1pdGVtIC5tY3MtY2FwdGlvbixcbi5sdC1pZTktbWFnaWMgLk1hZ2ljU2Nyb2xsW2RhdGEtbW9kZT1cImFuaW1hdGlvblwiXSAubWNzLWl0ZW0gLm1jcy1jYXB0aW9uIHtcbiAgICBmaWx0ZXI6IGFscGhhKG9wYWNpdHk9NjApO1xufVxuXG4vKiBDYXJvdXNlbCAmIENvdmVyIEZsb3cgKi9cbi5NYWdpY1Njcm9sbFtkYXRhLW1vZGU9XCJjYXJvdXNlbFwiXSxcbi5NYWdpY1Njcm9sbFtkYXRhLW1vZGU9XCJjb3Zlci1mbG93XCJdIHtcbiAgICBiYWNrZ3JvdW5kOiAjNGY0ZjRmO1xufVxuXG4uTWFnaWNTY3JvbGxbZGF0YS1tb2RlPVwiY2Fyb3VzZWxcIl0gaW1nLFxuLk1hZ2ljU2Nyb2xsW2RhdGEtbW9kZT1cImNvdmVyLWZsb3dcIl0gaW1nIHtcbiAgICBib3gtc2hhZG93OiAwcHggMTVweCAzMHB4IC0xMHB4ICMwMDA7XG59XG5cbi5NYWdpY1Njcm9sbFtkYXRhLW1vZGU9XCJjYXJvdXNlbFwiXSBmaWdjYXB0aW9uLFxuLk1hZ2ljU2Nyb2xsW2RhdGEtbW9kZT1cImNvdmVyLWZsb3dcIl0gZmlnY2FwdGlvbiB7XG4gICAgcGFkZGluZzogNHB4IDAgMDtcbiAgICBmb250LXNpemU6IDEwcHQ7XG4gICAgZm9udC1mYW1pbHk6ICdMdWNpZGEgR3JhbmRlJywgJ0x1Y2lkYSBTYW5zIFVuaWNvZGUnLCAnSGVsdmV0aWNhIE5ldWUnLCBBcmlhbCwgSGVsdmV0aWNhLCBzYW5zLXNlcmlmO1xufVxuXG5cbi8qIE1pc2MgKi9cbi5NYWdpY1Njcm9sbC5tY3Mtc2hhZG93cyB7XG4gICAgYm94LXNoYWRvdzogMCAxcHggNnB4IDFweCByZ2JhKDAsIDAsIDAsIDAuMTUpO1xufVxuXG4uTWFnaWNTY3JvbGwubWNzLWJvcmRlciAubWNzLWl0ZW0ge1xuICAgIGJhY2tncm91bmQ6ICNmZmY7XG4gICAgYm9yZGVyOiAxcHggc29saWQgI2VmZWZlZjtcbn1cblxuLk1hZ2ljU2Nyb2xsLWhvcml6b250YWwubWNzLWJvcmRlciAubWNzLWl0ZW0ge1xuICAgIG1hcmdpbjogMCAzcHg7XG59XG5cbi5NYWdpY1Njcm9sbC12ZXJ0aWNhbC5tY3MtYm9yZGVyIC5tY3MtaXRlbSB7XG4gICAgbWFyZ2luOiAzcHggMDtcbn1cbi8qXG4gKiBMb2FkZXJcbiAqL1xuLm1jcy1sb2FkZXIge1xuICAgIHBvaW50ZXItZXZlbnRzOiBub25lO1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICB6LWluZGV4OiAxMDAwO1xuICAgIHRvcDogMHB4O1xuICAgIGxlZnQ6IDBweDtcbiAgICByaWdodDogMHB4O1xuICAgIGJvdHRvbTogMHB4O1xufVxuXG4ubWNzLWxvYWRlciAubWNzLWxvYWRlci10ZXh0IHtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgdG9wOiA1MCU7XG4gICAgbGVmdDogNTAlO1xuICAgIG1hcmdpbi10b3A6IC0xMHB4O1xuICAgIG1hcmdpbi1sZWZ0OiAtMzVweDtcbiAgICB3aWR0aDogNzBweDtcbiAgICBoZWlnaHQ6IDIwcHg7XG59XG5cbi5tY3MtbG9hZGVyLWNpcmNsZXMge1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICB0b3A6IDA7XG4gICAgYm90dG9tOiAwO1xuICAgIGxlZnQ6IDA7XG4gICAgcmlnaHQ6IDA7XG4gICAgbWFyZ2luOiBhdXRvO1xuICAgIHdpZHRoOiA2MHB4O1xuICAgIGhlaWdodDogNjBweDtcbiAgICBvcGFjaXR5OiAxO1xuICAgIC13ZWJraXQtdHJhbnNmb3JtOiBzY2FsZSgwLjYpO1xuICAgIHRyYW5zZm9ybTogc2NhbGUoMC42KTtcbn1cblxuLm1jcy1sb2FkZXItY2lyY2xlIHtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogI2ZmZmZmZjtcbiAgICBoZWlnaHQ6IDExcHg7XG4gICAgd2lkdGg6IDExcHg7XG4gICAgYm9yZGVyLXJhZGl1czogNTAlO1xuICAgIC13ZWJraXQtYW5pbWF0aW9uLW5hbWU6IE1hZ2ljQ2lyY2xlO1xuICAgIC13ZWJraXQtYW5pbWF0aW9uLWR1cmF0aW9uOiAwLjQ4cztcbiAgICAtd2Via2l0LWFuaW1hdGlvbi1pdGVyYXRpb24tY291bnQ6IGluZmluaXRlO1xuICAgIC13ZWJraXQtYW5pbWF0aW9uLWRpcmVjdGlvbjogbGluZWFyO1xuICAgIGFuaW1hdGlvbi1uYW1lOiBNYWdpY0NpcmNsZTtcbiAgICBhbmltYXRpb24tZHVyYXRpb246IDAuNDhzO1xuICAgIGFuaW1hdGlvbi1pdGVyYXRpb24tY291bnQ6IGluZmluaXRlO1xuICAgIGFuaW1hdGlvbi1kaXJlY3Rpb246IGxpbmVhcjtcbn1cblxuLm1jcy1sb2FkZXItY2lyY2xlXzAxIHtcbiAgICBsZWZ0OiAwO1xuICAgIHRvcDogMjVweDtcbiAgICAtd2Via2l0LWFuaW1hdGlvbi1kZWxheTogMC4xOHM7XG4gICAgYW5pbWF0aW9uLWRlbGF5OiAwLjE4cztcbn1cblxuLm1jcy1sb2FkZXItY2lyY2xlXzAyIHtcbiAgICBsZWZ0OiA3cHg7XG4gICAgdG9wOiA3cHg7XG4gICAgLXdlYmtpdC1hbmltYXRpb24tZGVsYXk6IDAuMjRzO1xuICAgIGFuaW1hdGlvbi1kZWxheTogMC4yNHM7XG59XG5cbi5tY3MtbG9hZGVyLWNpcmNsZV8wMyB7XG4gICAgbGVmdDogMjVweDtcbiAgICB0b3A6IDA7XG4gICAgLXdlYmtpdC1hbmltYXRpb24tZGVsYXk6IDAuM3M7XG4gICAgYW5pbWF0aW9uLWRlbGF5OiAwLjNzO1xufVxuXG4ubWNzLWxvYWRlci1jaXJjbGVfMDQge1xuICAgIHJpZ2h0OiA3cHg7XG4gICAgdG9wOiA3cHg7XG4gICAgLXdlYmtpdC1hbmltYXRpb24tZGVsYXk6IDAuMzZzO1xuICAgIGFuaW1hdGlvbi1kZWxheTogMC4zNnM7XG59XG5cbi5tY3MtbG9hZGVyLWNpcmNsZV8wNSB7XG4gICAgcmlnaHQ6IDA7XG4gICAgdG9wOiAyNXB4O1xuICAgIC13ZWJraXQtYW5pbWF0aW9uLWRlbGF5OiAwLjQycztcbiAgICBhbmltYXRpb24tZGVsYXk6IDAuNDJzO1xufVxuXG4ubWNzLWxvYWRlci1jaXJjbGVfMDYge1xuICAgIHJpZ2h0OiA3cHg7XG4gICAgYm90dG9tOiA3cHg7XG4gICAgLXdlYmtpdC1hbmltYXRpb24tZGVsYXk6IDAuNDhzO1xuICAgIGFuaW1hdGlvbi1kZWxheTogMC40OHM7XG59XG5cbi5tY3MtbG9hZGVyLWNpcmNsZV8wNyB7XG4gICAgbGVmdDogMjVweDtcbiAgICBib3R0b206IDA7XG4gICAgLXdlYmtpdC1hbmltYXRpb24tZGVsYXk6IDAuNTRzO1xuICAgIGFuaW1hdGlvbi1kZWxheTogMC41NHM7XG59XG5cbi5tY3MtbG9hZGVyLWNpcmNsZV8wOCB7XG4gICAgbGVmdDogN3B4O1xuICAgIGJvdHRvbTogN3B4O1xuICAgIC13ZWJraXQtYW5pbWF0aW9uLWRlbGF5OiAwLjZzO1xuICAgIGFuaW1hdGlvbi1kZWxheTogMC42cztcbn1cblxuQC13ZWJraXQta2V5ZnJhbWVzIE1hZ2ljQ2lyY2xlIHtcbiAgICAwJSB7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6ICMwMDAwMDBcbiAgICB9XG5cbiAgICAxMDAlIHtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogI2ZmZmZmZlxuICAgIH1cbn1cblxuXG5Aa2V5ZnJhbWVzIE1hZ2ljQ2lyY2xlIHtcbiAgICAwJSB7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6ICMwMDAwMDBcbiAgICB9XG5cbiAgICAxMDAlIHtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogI2ZmZmZmZlxuICAgIH1cbn1cblxuLm1jcy1pdGVtLWxvYWRlciB7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIHRvcDogMDtcbiAgICBib3R0b206IDA7XG4gICAgbGVmdDogMDtcbiAgICByaWdodDogMDtcbiAgICBtYXJnaW46IGF1dG87XG4gICAgd2lkdGg6IDQwcHg7XG4gICAgaGVpZ2h0OiA0MHB4O1xuICAgIGJhY2tncm91bmQtc2l6ZTogY292ZXI7XG4gICAgYmFja2dyb3VuZC1yZXBlYXQ6IG5vLXJlcGVhdDtcbiAgICBiYWNrZ3JvdW5kOiB1cmwoJ2RhdGE6aW1hZ2UvZ2lmO2Jhc2U2NCxSMGxHT0RsaEtnQXFBT1p5QUZsV1YvWDA5RVJBUVMwcEt0N2Qzckt3c2NqSHlKeWFtM0J0Ym9hRGhPZm01dmYzOTlYVjFYTndjZGJXMXJXMHRJT0JnY1hFeEdKZllKU1NrajQ2Ty9iMjlwR1BqK1BqNDhqSHgvMzkvZURmMzl2YjI2U2lvN3U2dXF5cXE4ckp5Zkh4OGZuNSthMnJyTzNzN2MvT3orcnE2cWlucDBkRVJlTGk0bHRZV2JxNHVmRHc4SkNPai92NysvUHo4MjVzYk9qbzZJS0FnWldUbFBqNCtORFAwT2JsNXZYMTlmejgvUHI2K3Z6Nys5ZlcxK0hnNE96czdMZTJ0dVRrNUdkbFpZMkxqTnJaMmRqWDE4dkt5dWpuNTU2Y25hR2dvSmFVbGIyOHZNTEJ3akFzTGUvdjcrL3U3c1REdzg3TnplN3Q3ZVhsNWNHL3dOTFIwZDNkM2RuWTJIVnpjMzk4Zlc5dGJkVFQwNk9ob3JDdnJ6bzNPTFN5czdhMXRXUmhZbEJOVHVMaDRkSFEwS0tob2ZMeThybTR1SjJibk16THk4bkl5WGwyZDVpV2xwK2RuYWFrcFh4NmVvcUlpTUhBd2R6YzNNN096aUllSC8vLy93QUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQ0gvQzA1RlZGTkRRVkJGTWk0d0F3RUFBQUFoK1FRSkNnQnlBQ3dBQUFBQUtnQXFBQUFILzRCeWdvT0VoWWFIaUltS2hpcHhjU3FMa1pLQ0FJNEFrNWdNUHl3Z2haVnhsNFU0TXhtWWhSU09MSjZXb2dFQkZhYUVTbzV4RjRTZm9ZSVpyZ0Uyc1lORnRMbHl1SVFMdkMyL2c2aU9HSVBGZ2plOHNNcUNHTFFVejZ5Q0ZidzMxZHJOZ2d3VUZBelJ2QXVZT2lkYldZVVh0T2VIdTY2bGhDc2FLQ0dHVndQL0p6NFFVbEhGZzZJV0lYSVFxb0NDZ0VNWWhvNzhteWdCU3JVV0NoeHFaR0pvak1TSi81RDhDcUJ4NHoxRFVDU0FaUE9yUkVrRnlSWjlPUEZQeXk4WERsRlFtL1JCUjdVUU84RUpIVXBVVHBNR1NKTTIyQ0EwZ0lPblVCMDhFU1NncXRXcUtZU1NNTUMxSzFlcVY2MW1CYmZWYTFkQlI1VWlaUXJPYWRTblU5YUx5cDJiU1VPMUZUeE1NWGdCQUVDVVgyQUtGT2lRZDFFSkNIMzdwdm4xUWJEZ0NMNE9CZkNRT1BHUVh3b2NPeGFDd3hEbHloQktWTE1SUVhNQklZYUFKSDR4VDVDVU1tY1VCWEZqZHhDUERvNEZGdEx3d2t1WFFpTVFDUGVCYU1TQjR5NEtUZW5SWVFXbUNjSVJzQzJoUm8xb09UV09IM2d3ZEVQMEdJTkVXTEFnWXBBSjdUV0V4b2pPVm81NDhvT3lIemNCTGtyMENZVGVseC8wUUR1V2FtaEVOMEorNCswbmlBdmFpVkhOZWdqMFVJaCtoVGd4WHpVK2xORkRVTzRWV0VnSVRuUXdJRjBRMHBYSUcrTzlJZUtKZ2dRQ0FDSDVCQVVLQUhJQUxBQUFBQUFxQUNvQUFBZi9nSEtDZzRTRmhvZUlpWXFHS25GeEtvdVJrb0lBamdDVG1EcFhSMk9GbFhHWGhDQXNQd3lZaFNjREEwZWVsb1VzamhTbmhGdXFBMUNFbjZHQ0Y0NXhTck9EV2JZU3VhNkRuM0ZGd1lPcHFoL0l4M0lZdnJMTWdoKzJKOUdnZ3hTK0dOZURFcmJRY2d3VUZLYlR2cnVSR3lsZklvVlF0anFJREw0WGhTMDJGUm1HckFnWW1JSUdJU1JzdENqeVVBWFNvQnNWQWtpY1ljakl3SXNOaUZ6THNFQ2lSeHlHWEZpOE9MQkpzQndlUHlZaTBvQmttMkFoVWk0QXVJaEdpb0ZrZ3JXUVdPSEdLUm9iTnZvVVI3U28wVUZESUNoZENrRUQwUkFLb2twVkVJQVNnS3RZQWJ3Z2lvS0ExNjllcldhOXVsVmNWN0JmQlNWbHF0U3BPS2hUMnFOV1BVcTNMcVlOUHE0RkFIRnFRd3dFQ000RUsySEFBQW0raTBaTUFBeDRUYkFnaFFzN29IaW9RZy9HaktVRWV4STU4b1VjaGk1am5qRGkyZ3dIblEzc0sxU0djWXlnZzZoNENLTUlEQWtGb2toRURtTElSd3cwVVFvdFNVQWNCcUlWQlpMYktLVEFESW01a2pnUVQ3QkQwQWdUSmtyTDRaRzhRSVNpTzZiTEdQVGd3SUVIZ3pwMDUwRlV4dlRxZ3NxZkg4UTllUWR4SDZaeklDUWYvYUFJM1UxeERSRFRMY0dmZWY0SllrTjNQVnpqWGdKSkZOSmZJVUxZZHcwTUhpU3hnSVFJRm9LREVCK3NZSmNjRTQ2SWlBYm11V1hpaUlFQUFDSDVCQWtLQUhJQUxBRUFBUUFvQUNnQUFBZi9nSEtDZzRTRmcwZ0RBMGlHakkyT2hoS0pFbytVaGh0V1JpNkZrUU9UbFo5eUtRSUNScHVTb0o5Zm93SkVoSnllcUk4aXF3MnVwN0dVb3FNMGc2KzRsRFNyS2IyM3Y0NE5xN3h5T2ljbk9zWnlHaTllWFlWRXF4dS9SVW9VRElSQUFPRXYzb05OYldTNEdCUng3RCtFSHVIeEVDWFFGd0RzK0N5RUFmRHg0VU8vVk9ETEI4SlFDUWorMHZ5cU1oREFoVWNNWG9TTDhzc0RPd29ZUURIUUFJMUJSbWdnUTRxVUkyV0N5Wk1UZklUTXNLQ2x5d1U1RU1pY0tUTkd5QW9CY3VyTVNaT21UWkE0ZCtvc2lkS2tTcEFzWDdiTU1iS3AwMDg3WUVBTFVRSFVEaGtKRW9UNTVZSUFBUlJWSFMzaGtEVXJsMTh3dkhwVjBNTFFnaVJscHN0UytSVkFyVm9tR1FqQmpjdGhDYlFXQ3V3U1lQS3VySXdkaERSMENQS294SlFuaENxZ1VDdDFFQXdaUUQ0VWNuR2c4NGhHQVF5SW5sRm9oUVlVSVQ0OTZIeWdocUFWSFRxc0VBUkN0QUVISUd1d05qRW9Rb0VDRVFhUnNGM1FtQW5XcmdYNUJqNm90bWdTeHJDd2ZrQm9lZkJCRG13citDV0d0YWJldjY4TG1tSGJ6Sy9qQjV3VXNsN293dk5mSXpvNFNWMDlmS0VjRjRJRWVNcithU01GdjIySFN5QUFJZmtFQ1FvQWNnQXNBQUFBQUNvQUtnQUFCLytBY29LRGhJV0doNGlKaW9aTkFnSk5pNUdTZ2cyT0RaT1lHa0FlQVlXVkFwZUVZMGRYT3BpRkx3QUFIcDZXaFVjREF5ZW5oRjZxQUNXRW42R0NVTEVEVzdTRFhiY1F1cTZERXI5WndvT3BxZ3lEdTRNZnY3UE5nZ3kzTDlMSWNpZS9IOWlERUxmUmNoc3BLUnVDMWJFU21ENHhhRkdGSmJjYWlEcS9VSVZGU2hUT0VTcURvR0FNZG9PR3BLbVhTQXNiSklRd1VJaEQ4WWVoSGdVelRoaUI3UUlBaWlCWkdLcUFNV05CS2NKVWdBd0pBdEdJQ1NiWENLdXlFc0NGU0J0aUZEd2p6QU5GQ2hoT2JmQ0JqVUhRY1VpVEtoMUVoWVBUcHh4Z0lOVjI2NVlLUVFteWFzMHFBK25FbFNDeGJ0WGFkZHhYc0hFRU5ZWHFWT280cWxYWEFWeGRTcmN1cGhvY20yVzRjYXFHaVFNSGdnaHJFU0JBQmI2TFhEd0FETmlOc0JtRkN5L0lnQ2lFRThhTTg5SEtFVGt5amtPWE1UOXdnUzNEZ3M0QlBoZnF3TmhFRFVJS1BvQlI1S0pFcDBFM0trU2VZV2lFQ1RGWUN0a29RSHhGWlFMSVd4UnFZYU1DNVVrUmlCZmdJU2dBQ1JLM0t5QW5vQ0FwRCtrZEJqa3dZTURCSUJUYkt5RHRJSjI2b1BIbEIybEhqbUxjRk9rUkNNRTNQMGpCZHVQTjlDQ2REZnFSeDU4Z0xXeW5tVERzRlNCRUlmc1Z3Z1I5Mkt6d2dSQ3FpV2RnSVJrd0FVTUlkc2tSWVlpSVBFSGVFeVNtR0FnQUlma0VCUW9BY2dBc0FBQUFBQ29BS2dBQUIvK0Fjb0tEaElXR2g0aUppb1pEQUFCRGk1R1NnaENPRUpPWVBtVTlGWVdWQUplRUxrWldHNWlGTVFnSVBaNldoVVlDQWltbmhHaXFDQ09FbjZHQ1JMRUNYN1NEVWJjVHVxNkREYjhpd29PcHFxYVV5SEkwdjdQTmdodTNNWU83Z3ltL05OaURFN2ZSR2k4dkdvTFZzUTJZTURKQUg0VWp0ejZJRzc5RWhWbGJKem9NZVVoQVVNWU9RbExXbkZGRXBrMFRRaDlPREpoNHhWQVNnaGc1TE1FR1JjTEVqMGNNTGJpSWtTQVZZVWcrZ2h5RGFBbUhrbHlFc1ZFcEFVcWtIVElJaGhHbVplSUplcGgyd01DbUEraTRvMGlUQ3RMd29LblRCN25HTVhCRTFaRUtRUWV5YXMxcTRpaUZPR0REZ3NXNlZXdlhjVi9GaGwzNjFHbFViRlBUcTFwVlNyZnVLUjRyNEdLNDI2RkFBVERDUElDbHNIZVJqUWgrL1pJUTlrTXNnQXVJY0FoSm5GaUJNQlZxNDdBQVlXZ3k1UWcyc0YwQW9KYUZvUStKTy9BZzlDUklDVVV0UXVRZ2hDRnRuQitHVm5Ub01hWFFEQVBBQXlES0VLQjRoa0pGbEZCZ2dNa0JjQU9jNVlSQWdTS0VvQnZGQXl4QUN1TDVZa0VLQ0JDd0xLaEM5aHRIU1R5UExpZjgrRUhZaTNmQ3B1QzVBMEx1eVF0YWtMMEZOalBQellDZmVQckpRVnh4b1RXam5nR1FEZmdlSVRqSWgwMEFRVnd3bTRNRkNvTERETWZabFo5ZGlnUWdubkFnbGloSElBQWgrUVFKQ2dCeUFDd0JBQUVBS0FBb0FBQUgvNEJ5Z29PRWhZTlNDQWhTaG95TmpvWVRpUk9QbElZd0hra0xoWkVJazRRQkhrQWFsWVl5Q1FsSm01S0ZIZ0FBTDZTRlFLY0pTNFNjbm9JbHJnQmVzWVFmdEJ5M3E0TVF2RjIvaEthbk80TzRnd3k4c01xRE83UXl6OFZ5TDd3TTFZUWN0TTV5UGpFeFBvTFNyaENrSXlaaVdJVkx0RENOR3J3bGhTSmZLUnVFSFE0SU5GR0RFQlV1WVI1RlNUT0VFSTBVQWlKYUllUkVvTVVITHNBSkl0SWdva2NqaEVKVXRDaHdWTFVtSGo5bUxPVGlBVWszNE5xa2JFRGtVUTBUQW9PQUl4TXhCWTFZTlVab2xMUGg1OUNqU0pQS1VSQ2hxZE1JSzVEcWtFQzFxZ1FrQmJKcXpkb0I2WWtCWU1PQzNicTE2OUd2WXNNeWZkbzA2dEdwVnE2cElsRkt0eTRwRUFIc09nSkJ3b0FCZlhvSnpYRGcxKytVd0lKeVhDaGMrQWxpT1lzWk81anhXRTZRd2lSQWZJS3hzcEdIS2lwaUJTQmhSa0doRmdSU2gyakVJSTdyQzBnVnBDWlFRVkNHQ2hVeUNNTGdPZzZBb3hWbW94aTBJRUFBVFlJbzlNWXdGTVhzMm9LS0h4L0UyelVGalN0bW15WnVITGtnQUwyTGdOTXd1d1VoNmQ0aDkxWUN6amtCSm9YUUYySmhIVndJR0V4MG4rOWVDQVNMSDkvVUpWOWxnK1JnWEE3Z0JBSUFJZmtFQ1FvQWNnQXNBQUFBQUNvQUtnQUFCLytBY29LRGhJV0doNGlKaW9aVUNRbFVpNUdTZ2h5T0hKT1lJeDFPSVlXVkNaZUVGVDFsUHBpRkpnY0hUcDZXaFQwSUNER25oR0txQnk2RW42R0NJN0VJYUxTRFdMY1B1cTZERTc5UndvT3BxaldEdTRNYnY3UE5nalczSnRMSWNqRy9HOWlERDdmUmNqQXlNakNDMWJFVG1Dc2RQVk9GTHJjamlENi8rWVJkWGk4MEdQcFFvR0FISG9RMHVBbWk2TXdhS1lRWXZBQkFFWWdoSVFVelJyQ0JyUVFFaWlBOUdNS0JNV05CQmNLR2dBd1pBSkdOQ0NaSkNFdXpFa0tKU0R3NkZBUWpMQXJGRnd4TzhWaUJUVVBRY1VpVEtoMzB4SUhUcHc1YWp0dlFvS3JWQmswRUdkaktkYXZNY1NrRWlCMHJWbXRYcmwreGhTVTdWbEJUcUU3YXBXS2plclZxMXFWNDgyS3EwS21aamcrbktxQWdRQ0FYTFMwREJwd0F2S2lGQXNLRWI5SzZraml4QkNpSU1qQ0JERmt1SmlTVkt4OFpZMmd6WndVdHNFR1JFSHJBRVVNd0lLT29RQ2pIak5TSlBGUlJRZWpEaWNwWERJVkFvWUVvb1F3QmttZEF4Q0NPOHd1RnNtdzVvUVBUZ3VRQmJnaGlRSUhDVVF6TzR3QkllZ003YlVFQW5JOFhSQ0U4QnFRVnNHdEhyMzRRZU9jVXhyWEF2b0JRZXZIK2hWY0VOalpndDl3Zy82MG55QVhoS1lGTmZBSGdVRWlDaGJDQUh6WVp6Q0RoaFBVUkFnSUxQeHlWRjRWNkphS0NjN3lWcUtJY2dRQUFJZmtFQlFvQWNnQXNBQUFBQUNvQUtnQUFCLytBY29LRGhJV0doNGlKaW9ZYUJ3Y2FpNUdTZ2crT0Q1T1lLeDlDT0lXVkI1ZUVDMGtlTUppRkhRVUZRcDZXaFVrSkNUS25oRDJxQlRhRW42R0NTN0VKUUxTRFU3Y1J1cTZESEw4ZndvT3BxanlEdTRNN3Y3UE5nankzSGRMSWNqSy9POWlERWJmUmNpTW1KaU9DMWJFY21BRWtaZ3FGTnJjcmlEQy9TNFZSYURGOEdBcGlvQ0FKRUlRVWtBQ2pLQXdYS29RMnhFQkFzWXloQ3dVek9waUJiY1FFaWlCN0dNcUJNV1BCSjhLa2dBeFpBZEVNQnlhbkNGdXpjZ0s3UlNCSUZDd2g3QXpGR0J0T2dRaUF6VWZRY1VpVEtoMFVRSUhUcHdwQ0lOVUFvYXBWQ0VNRUVkaktkU3NLcEM4QWlCMHJWbXRYcmwvSGhTVTdWbEJUcUU3Y3BZNmplclZxMXFWNDgySzZrUUhiQmhxbmJsUUlFS0NGTURJQ0JLUUF2Q2pEQXNLRTVaNnlramh4QXlLSmNFQ0duRU5ZazhxVmpiZ3dwSG56Z3I3TmlEUUFMY0NJb1JtUUs5d2dwT0tIQjBWYTJDQWhSQ05GWlN1R01sU3dZWmpRaFRqSUdTRFNNYUE1bEVJaXZxUTRLZ2tBOGpnWUJER2dRRUc1bkEvTkIwaElpdUU2aFVIVzR3QVlkQ0k4czNFVXJtY1hsSDY5SVBETlQ0d3JjdDArZmVUK3lTRkJlRmxnbzhSMUZ4QlNIeUZRaExjRk52SEZ3VUloQ3hKeVJIN1lNUEFEQ3dncENHQWhZeHh4aFE1NnlWRmhpWWVvZ0p3S0tMWVlDQUFoK1FRSkNnQnlBQ3dCQUFFQUtBQW9BQUFILzRCeWdvT0VoWU1LQlFVS2hveU5qb1lSaVJHUGxJWUJRUmM1aFpFRms0UWhUaDBqbFlZa0JnWVhtNUtGVGdjSEpxU0ZacWNHTTRTY25vSXVyZ2Rpc1lRS3RBNjNxNE1QdkZpL2hLYW5JSU80Z3pXOHNNcURJTFFrejhWeUpydzExWVFPdE01eUt4MGRLNExTcmcra0lTZ2E2WVF6dEFHTkk3d3VoUjlBTWpDRU1BZ0lSRkdCMEpNcEpSNEZjYU9CMEE0WkNTSjZJTVJFb0VVRkxjQUpXc0lob3Nja2hESlV0Q2pRWGpVcUhqOHVNTlJDQWNtRTFiaWs1TERrVVFVVUF2VlZDeE5SeG81WUZVSm9sQVBqNTlDalNKUEt5YkdncWRNRkdaRDZtRUMxNmdRcEFiSnF6VnJ3YUF3RVlNT0MzYnExNjlDdllzTXlmZG8wNnRHcFZxYXBTbEZLdHk0cERBeUdhc2g3bDBLY09CT3JSUUVBNEFYZlJoY0EvUDFiQlJ3UXdvUWh3Q1FFZ3NYaXhTckFEWUVNMllOSlFaWXZBMGlsc1FRRXpnQUNDL3F4bUFLR2FtVGFOQ0hFNEFWa0lMUXBLQ2tDYm9PQTMwUUtkZkh5b3FGR0hTZE82QkJFNDdlQUJuWUZTUmd3UU1LZ0ZNNXBSSjllZlZEejN5bTJVN2MrcUlGekVYYTVreGRFeFBtWDlPTUxHUUVQdnpzaEYwYXNiS2kvUG5vaEpOUWhBVTRnQUNINUJBa0tBSElBTEFBQUFBQXFBQ29BQUFmL2dIS0NnNFNGaG9lSWlZcUdUd1lHVDR1UmtvSU9qZzZUbUNFd1RCbUZsUWFYaERoQ0h5dVloU2dFQkV5ZWxvVkNCUVVkcDRRYXFnUXRoSitoZ2pheEJUMjBneXUzQ3JxdWd4Ry9VOEtEcWFvVmc3dURQTCt6ellJVnR5alN5SElkdnp6WWd3cTMwWElCSkNRQmd0V3hFWmdaRlRhNWhDMjNJWWdydnphRldHSW1SaGlhRWFCZ2hSdUVBcFJ3b1FnTUNXT0RhcGc0UVBHYXFJSVlGM1JxNXVJQnhZOU9EdUhBaURHSE1BMGZRZVk3bEdFQnlaV24zS1I4d0hEUmpRb0Y2NTBLUXRGRWpWTTNOZ29iOFhPYzBhTklCNmtBd0xRcEFBWkdTNGlZU2xYRUcwRnhzbXJOU3NHb0dndGd3NExGdWxWcjEzRmZ4WVlWdE5RcFU2amowNlJXblhvMXFkMjdtRERBRlZiaXdpa01GTEo2RU1ZQXJCcS9peTRBMkZwRkdCZXhJa0FnQXNHaWJCd1Z3dDZvdFlCaGhxSEtXd0VnRmdaQ2hGb01objZZUlQwSXlSVXRpcUtrR1VMb1Fsb0xYQXd4b0tDa1NDRW9BNExyUUtTaGFZbENjTktvT1Q1SlF2QUJId1J0U0pGaWd5QUdUU0VjL2ZEOHhLQUdBZ1EwR1BTaTZkNW1KNTVIRndSZS9DRHNURitNeS9KY0FxSDI0d2RCYU5vRjI1Ym5VTndYWG42Q2xOQ1VGOWlrTjhBUmhlQlhpQWZ4WWFQREZVZU0wZUNBaFFUZ0FSQWE0Q1dIZ3g0aTBrUjRUWVJvWWlBQUlma0VCUW9BY2dBc0FBQUFBQ29BS2dBQUIvK0Fjb0tEaElXR2g0aUppb1lCQkFRQmk1R1NnZ3FPQ3BPWUdUTTRocFVFbDRRNUYwR1FtSVFWQVFHY2hKNmdneGNHQmlTbWhEYXBBUm1zbG9RenNRWm10SU10dHd1Nm40UU92cTdCcUtrM2c2MkRJTDZ6d1lNM3R4WFF1NElrdmlEV2hBdTN6M0loS0NnaGd0T3hEcGdNRkVwRmhSbTN1WWNCdmpPRlV6MGRLNForeEJsSUFVT29FQzBVbFpqeWhCQ1BEZ1VpZmpERVlxQkZBQmZDMllnUXNhTVFReUFxV2h5b0lwaUNqaDVYR2JvQVlHU1ZZQ1JRUnJBUkNRT0ZnUjZDZ1luWWdZY3BEQXpDcmZBWnJxalJvNGRVQUZqS0ZFRFFvaU1lU0ozNlFJT2drU01wR0RWeG9LdlhybGV4RXR6Njlhc2dwVTJYUGcwWGxhcFVxMGpWNDhvTjlrRkhPQmc3VEgwNE1XQ0FsbUJoRWlTUWtYY1JGQWw5KzdJSjVrR3dZQTVMRUkwNWtqZ3hrbUJVSER0T1Vxd1E1Y29Tb0lSYndrRnpnaVNHcmlRK01YRlFFeXRrRkoxWkk0WFFEaG1PY3hiU2NXSkxsa0pFQkFqZmdNZ0hndU1qQ24wQUlnTUdwZ2JDQmRBUXBPSEZDN2diamlPWWNKUkc5QlNESUN5Rk1DaUdkdUpGVTBTZkxrZzhBUEtDc2grUFVWUkU5QWFFM01NWE5FRjdsSEJmUkVkRWZ1TVJNb0oyYUlTam5nQkdGS0pmSVQzTUY4NEdWaGpoZ29NRm50SkRHVDdNMVY2R0hpSXl4RkpEaEdpaUlJRUFBQ0g1QkFVS0FISUFMQUVBQVFBb0FDZ0FBQWYvZ0hLQ2c0U0ZnemtCQVRtR2pJMk9oZ3VKQzQrVWhndy9MQ0NGa1FHVGhCbE1NQ0dWaGhSeGNTeWJrb1ZNQkFRb3BJVktwM0VYaEp5ZWdpMnVCQnF4aEVXMEFMZXJnd3E4SzcrRXBxY1lnN2lERmJ5d3lvTVl0QlRQeFhJb3ZCWFZoQUMwem5JWkZSVVpndEt1Q3VDRUY3UU1qU0c4TFlVS1ppUUJzU3BWSG84dVN1d2JCSUtFZ1lOQjNKR2E0ZUNnUTFzS0h6MXgrSEJSUkVkVEtEcVljWkZTaVlNa05IV3NGRURreUpNb0tTR1J3TEtsQkIwWFYwU1lTVE9DZ2dFNGMrSThjYkZEZ1o5QWYrclV5VE9pejZCQVY3cGtDVE9pekpvejI2V2NTblVRalEwS1I5U0lSU09GQUFGa3dBVTVjTURFVmtkRUduejkyZ1pjQjdKa3JSKzRNT1RDeU5xMVRjQnBnQXZYeWFoQmR1ODJJS0xReFFPK0I1d1FzckkyQlExQ1E0QkVlUlNHQ3hWQ05VekE3VUJvUTRvdklncVZBRURhRnlNWUNWSXZLWVJGaklrUnBDQ1FCaUJQam84WU1Yd0kycEU2QVllSURHYS9HRFFCQVlJSmcyVDAzcUh3eGV6YWNvb2ZIOFE3dFF4M1hXWkRJQ1FkK1NBT3ZUK0E4eks3QkhmajNnVXQ2UTBFbkhNQS84NVBKNVRFdWw0Z0hnWVNSNzhwaVFjWUtYVlhsU0ZTR0NjRk9JRUFBRHM9Jykgbm8tcmVwZWF0IGNlbnRlciBjZW50ZXI7XG59XG5cbi5NYWdpY1Njcm9sbC5tY3Mtcm91bmRlZCB7XG4gICAgYm9yZGVyOiAxcHggc29saWQgI2UxZTFlMTtcbiAgICBib3JkZXItcmFkaXVzOiAxMHB4O1xuICAgIG92ZXJmbG93OiBoaWRkZW4gIWltcG9ydGFudDtcbn1cblxuLk1hZ2ljU2Nyb2xsLm1jcy1yb3VuZGVkLk1hZ2ljU2Nyb2xsLWFycm93cy1pbnNpZGUge1xuICAgIG92ZXJmbG93OiBoaWRkZW4gIWltcG9ydGFudDtcbn1cblxuLk1hZ2ljU2Nyb2xsLm1jcy1yb3VuZGVkLk1hZ2ljU2Nyb2xsLWFycm93cy1vdXRzaWRlIHtcbiAgICBvdmVyZmxvdzogdmlzaWJsZSAhaW1wb3J0YW50O1xufVxuXG4uTWFnaWNTY3JvbGwubWNzLXJvdW5kZWQgLm1jcy1idXR0b24tYXJyb3cge1xuICAgIGNvbG9yOiByZ2JhKDQ5LDUxLDYxLDAuNik7XG4gICAgLXdlYmtpdC10cmFuc2l0aW9uOiBjb2xvciAuMTVzIGxpbmVhciwgYmFja2dyb3VuZC1jb2xvciAuMTVzIGxpbmVhcjtcbiAgICB0cmFuc2l0aW9uOiBjb2xvciAuMTVzIGxpbmVhciwgYmFja2dyb3VuZC1jb2xvciAuMTVzIGxpbmVhcjtcbn1cblxuLk1hZ2ljU2Nyb2xsLm1jcy1yb3VuZGVkLk1hZ2ljU2Nyb2xsLWhvcml6b250YWwgLm1jcy1idXR0b24tYXJyb3cge1xuICAgIHdpZHRoOiAzMHB4O1xuICAgIGhlaWdodDogMTAwJTtcbn1cblxuLk1hZ2ljU2Nyb2xsLm1jcy1yb3VuZGVkLk1hZ2ljU2Nyb2xsLXZlcnRpY2FsIC5tY3MtYnV0dG9uLWFycm93IHtcbiAgICB3aWR0aDogMTAwJTtcbiAgICBoZWlnaHQ6IDMwcHg7XG59XG5cbi5NYWdpY1Njcm9sbC5tY3Mtcm91bmRlZC5NYWdpY1Njcm9sbC1ob3Jpem9udGFsIC5tY3MtYnV0dG9uLWFycm93LXByZXYge1xuICAgIGxlZnQ6IDA7XG4gICAgYm9yZGVyLXJhZGl1czogMTBweCAwIDAgMTBweDtcbn1cblxuLk1hZ2ljU2Nyb2xsLm1jcy1yb3VuZGVkLk1hZ2ljU2Nyb2xsLWhvcml6b250YWwgLm1jcy1idXR0b24tYXJyb3ctbmV4dCB7XG4gICAgcmlnaHQ6IDA7XG4gICAgYm9yZGVyLXJhZGl1czogMCAxMHB4IDEwcHggMDtcbn1cblxuLk1hZ2ljU2Nyb2xsLm1jcy1yb3VuZGVkLk1hZ2ljU2Nyb2xsLXZlcnRpY2FsIC5tY3MtYnV0dG9uLWFycm93LXByZXYge1xuICAgIHRvcDogMDtcbiAgICBib3JkZXItcmFkaXVzOiAxMHB4IDEwcHggMCAwO1xufVxuXG4uTWFnaWNTY3JvbGwubWNzLXJvdW5kZWQuTWFnaWNTY3JvbGwtdmVydGljYWwgLm1jcy1idXR0b24tYXJyb3ctbmV4dCB7XG4gICAgYm90dG9tOiAwO1xuICAgIGJvcmRlci1yYWRpdXM6IDAgMCAxMHB4IDEwcHg7XG59XG5cbi5NYWdpY1Njcm9sbC5tY3Mtcm91bmRlZCAubWNzLWJ1dHRvbi1hcnJvdy5tY3MtZGlzYWJsZWQge1xuICAgIG9wYWNpdHk6IDEgIWltcG9ydGFudDtcbiAgICBjb2xvcjogcmdiYSg0OSw1MSw2MSwuMSk7XG4gICAgdGV4dC1zaGFkb3c6IG5vbmUgIWltcG9ydGFudDtcbn1cblxuLk1hZ2ljU2Nyb2xsLm1jcy1yb3VuZGVkLk1hZ2ljU2Nyb2xsLWFycm93cy1vdXRzaWRlIC5tY3MtYnV0dG9uLWFycm93IHtcbiAgICBiYWNrZ3JvdW5kOiAjZWZlZmVmO1xuICAgIG9wYWNpdHk6IDE7XG4gICAgYm94LXNoYWRvdzogMCAwIDFweCByZ2JhKDE1MywgMTUzLCAxNTMsIC41KTtcbn1cblxuLk1hZ2ljU2Nyb2xsLm1jcy1yb3VuZGVkLk1hZ2ljU2Nyb2xsLWFycm93cy1pbnNpZGUgLm1jcy1idXR0b24tYXJyb3c6aG92ZXI6bm90KC5tY3MtZGlzYWJsZWQpIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiByZ2JhKDI1NSwgMjU1LCAyNTUsIC45Nik7XG4gICAgY29sb3I6IHJnYmEoNDksNTEsNjEsMSk7XG59XG5cbi5NYWdpY1Njcm9sbC5tY3Mtcm91bmRlZC5NYWdpY1Njcm9sbC1hcnJvd3MtaW5zaWRlIC5tY3MtYnV0dG9uLWFycm93IHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiByZ2JhKDI1NSwgMjU1LCAyNTUsIC43NSk7XG4gICAgYm94LXNoYWRvdzogMCAwIDFweCByZ2JhKDE1MywgMTUzLCAxNTMsIC41KTtcbn1cblxuLmx0LWllMTAtbWFnaWMgLm1jcy1yb3VuZGVkLk1hZ2ljU2Nyb2xsLWhvcml6b250YWwuTWFnaWNTY3JvbGwtYXJyb3dzLWluc2lkZSAubWNzLWJ1dHRvbi1hcnJvdy1wcmV2IHtcbiAgICBib3JkZXItd2lkdGg6IDAgMXB4IDAgMDtcbn1cblxuLmx0LWllMTAtbWFnaWMgLm1jcy1yb3VuZGVkLk1hZ2ljU2Nyb2xsLWhvcml6b250YWwuTWFnaWNTY3JvbGwtYXJyb3dzLWluc2lkZSAubWNzLWJ1dHRvbi1hcnJvdy1uZXh0IHtcbiAgICBib3JkZXItd2lkdGg6IDAgMCAwIDFweDtcbn1cblxuLmx0LWllMTAtbWFnaWMgLm1jcy1yb3VuZGVkLk1hZ2ljU2Nyb2xsLXZlcnRpY2FsLk1hZ2ljU2Nyb2xsLWFycm93cy1pbnNpZGUgLm1jcy1idXR0b24tYXJyb3ctcHJldiB7XG4gICAgYm9yZGVyLXdpZHRoOiAwIDAgMXB4IDA7XG59XG5cbi5sdC1pZTEwLW1hZ2ljIC5tY3Mtcm91bmRlZC5NYWdpY1Njcm9sbC12ZXJ0aWNhbC5NYWdpY1Njcm9sbC1hcnJvd3MtaW5zaWRlIC5tY3MtYnV0dG9uLWFycm93LW5leHQge1xuICAgIGJvcmRlci13aWR0aDogMXB4IDAgMCAwO1xufVxuXG4ubHQtaWU5LW1hZ2ljIC5tY3Mtcm91bmRlZC5NYWdpY1Njcm9sbCAubWNzLWJ1dHRvbi1hcnJvdyB7XG4gICAgY29sb3I6ICM4Mzg1OEI7XG59XG5cbi5sdC1pZTktbWFnaWMgLm1jcy1yb3VuZGVkLk1hZ2ljU2Nyb2xsLk1hZ2ljU2Nyb2xsLWFycm93cy1pbnNpZGUgLm1jcy1idXR0b24tYXJyb3cge1xuICAgIGJhY2tncm91bmQ6ICNmZmY7XG4gICAgZmlsdGVyOiBhbHBoYShvcGFjaXR5ID0gNzUpO1xufVxuXG4ubHQtaWU5LW1hZ2ljIC5tY3Mtcm91bmRlZC5NYWdpY1Njcm9sbC5NYWdpY1Njcm9sbC1hcnJvd3MtaW5zaWRlIC5tY3MtYnV0dG9uLWFycm93OmhvdmVyIHtcbiAgICBmaWx0ZXI6IGFscGhhKG9wYWNpdHkgPSA5Nik7XG59XG5cbi5sdC1pZTktbWFnaWMgLk1hZ2ljU2Nyb2xsLm1jcy1yb3VuZGVkIC5tY3MtYnV0dG9uLWFycm93Lm1jcy1kaXNhYmxlZCB7XG4gICAgZmlsdGVyOiBhbHBoYShvcGFjaXR5ID0gNzUpICFpbXBvcnRhbnQ7XG4gICAgY29sb3I6ICNjY2M7XG59XG4iLCLvu78vKlxuXG5cbiAgIE1hZ2ljIFpvb20gUGx1cyB2NS4yLjQgXG4gICBDb3B5cmlnaHQgMjAxNyBNYWdpYyBUb29sYm94XG4gICBCdXkgYSBsaWNlbnNlOiBodHRwczovL3d3dy5tYWdpY3Rvb2xib3guY29tL21hZ2ljem9vbXBsdXMvXG4gICBMaWNlbnNlIGFncmVlbWVudDogaHR0cHM6Ly93d3cubWFnaWN0b29sYm94LmNvbS9saWNlbnNlL1xuXG5cbiovXG5cbi8qKlxuICogQ29yZSBzdHlsZXNcbiAqL1xuQGZvbnQtZmFjZSB7XG4gICAgZm9udC1mYW1pbHk6IFwibWFnaWN0b29sYm94LXRoaW5cIjtcbiAgICBmb250LXdlaWdodDogbm9ybWFsO1xuICAgIGZvbnQtc3R5bGU6IG5vcm1hbDtcbiAgICBzcmM6IHVybChcIi4uL21hZ2ljLXRvb2xib3gtZm9udHMvbWFnaWN0b29sYm94LXRoaW4uZW90PyNpZWZpeFwiKSBmb3JtYXQoXCJlbWJlZGRlZC1vcGVudHlwZVwiKSwgdXJsKFwiZGF0YTpmb250L29wZW50eXBlO2Jhc2U2NCxBQUVBQUFBTkFJQUFBd0JRUmtaVVRYSkxTRWdBQUFkQUFBQUFIRWRFUlVZQUtRQVBBQUFISUFBQUFCNVBVeTh5QWxZTDRRQUFBVmdBQUFCV1kyMWhjRUFZWTcwQUFBSFVBQUFCU21kaGMzRC8vd0FEQUFBSEdBQUFBQWhuYkhsbU1NVk9Kd0FBQXpRQUFBR0lhR1ZoWkFtV1VZTUFBQURjQUFBQU5taG9aV0VQOVFhbUFBQUJGQUFBQUNSb2JYUjRMMEVBUUFBQUFiQUFBQUFrYkc5allRR0dBZ0FBQUFNZ0FBQUFGRzFoZUhBQVVBQWNBQUFCT0FBQUFDQnVZVzFsNk1QZ2RBQUFCTHdBQUFIMWNHOXpkTGFUdXlJQUFBYTBBQUFBWkFBQkFBQUFBUUFBRVdkeHoxOFBQUFVBQ3dnQUFBQUFBTkR0Zy9NQUFBQUEwTzJEOHdBQS9nSUluQWFlQUFBQUNBQUNBQUFBQUFBQUFBRUFBQWFlL2dJQXVBaWJBQUQvL3dpY0FBRUFBQUFBQUFBQUFBQUFBQUFBQUFBSkFBRUFBQUFKQUJrQUJRQUFBQUFBQWdBQUFBRUFBUUFBQUVBQUFBQUFBQUFBQVFaZUFaQUFCUUFJQlRNRm1RQUFBUjRGTXdXWkFBQUQxd0JtQWhJQUFBQUFCUUFBQUFBQUFBQUFBQUFBQUFBQUFBQUNBQUFBQUFBQVVHWkZaQUJBb0FHZ0JnWm0vbVlBdUFhZUFmNEFBQUFCQUFBQUFBQUFCQUFBQUFBQUFBQUNxZ0FBQ0pzQUFBT2xBQUFEcFFBQUNKc0FBQWliQUFBSGZBQkFBQUFBQXdBQUFBTUFBQUFjQUFFQUFBQUFBRVFBQXdBQkFBQUFIQUFFQUNnQUFBQUdBQVFBQVFBQ0FBQ2dCdi8vQUFBQUFLQUIvLzhBQUdBQ0FBRUFBQUFBQUFBQUFBRUdBQUFCQUFBQUFBQUFBQUVDQUFBQUFnQUFBQUFBQUFBQUFBQUFBQUFBQUFFQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFxQUNvQUtnQk1BR0FBZEFDSUFKd0F4QUFGQUFBQUFBUUFCWm9BQWdBRkFBZ0FDd0FQQUFBVEVRa0JJUUUzQVJFSkFTRURFU0VSWmdGZC91RUN1UDZrUFFGZC9tWUJYUDFJcEFRQUJOZjc3QUlLL1prQ0Mxejk5Z1FVL2xJQ0N2ck5CWnI2WmdBQkFBRCtBZ2ljQnA0QUN3QUFDUUVIQ1FFbkNRRTNDUUVYQkhFRUt5UDcxZnZWSXdRcis5VWpCQ3NFS3lNQ1VQdlZJd1FyKzlVakJDc0VLeVA3MVFRckl3QUFBQUVBQVA0Q0E2WUduZ0FGQUFBUkFSY0pBUWNEaXh2OGlRTjFHd0pRQkU0WCs4bjd5UmNBQUFBQkFBRCtBZ09tQnA0QUJRQUFDUUVuQ1FFM0E2YjhkeHNEZC95SEd3SlErN0lYQkRjRU54Y0FBUUFBQURjSW5BUGRBQVVBQUNVQk53a0JGd1JPKzdJWEJEY0VOeGMzQTRvYS9Ja0RlUm9BQUFFQUFBQTNDSndEM1FBRkFBQUpBUWNKQVNjRVRnUk9GL3ZKKzhrWEE5MzhkeHNEZC95SEd3QUNBRUFBUUFIQUFjQUFEUUFZQUFBbEJ5Y0dJeUltTkRZeUZoVVVEd0VXTXpJMk5DWWlCaFVVQWNBWGNTazNQMWxaZmxraDF5YzVPRkJRY0ZCWEYzRWhXWDVaV1Q4MktRSW5VSEJRVURnNUFBQUFEQUNXQUFFQUFBQUFBQUVBRVFBa0FBRUFBQUFBQUFJQUJBQkFBQUVBQUFBQUFBTUFMUUNoQUFFQUFBQUFBQVFBRVFEekFBRUFBQUFBQUFVQUN3RWRBQUVBQUFBQUFBWUFFUUZOQUFNQUFRUUpBQUVBSWdBQUFBTUFBUVFKQUFJQUNBQTJBQU1BQVFRSkFBTUFXZ0JGQUFNQUFRUUpBQVFBSWdEUEFBTUFBUVFKQUFVQUZnRUZBQU1BQVFRSkFBWUFJZ0VwQUUwQVlRQm5BR2tBWXdCVUFHOEFid0JzQUdJQWJ3QjRBQzBBVkFCb0FHa0FiZ0FBVFdGbmFXTlViMjlzWW05NExWUm9hVzRBQUZRQWFBQnBBRzRBQUZSb2FXNEFBRVlBYndCdUFIUUFSZ0J2QUhJQVp3QmxBQ0FBTWdBdUFEQUFJQUE2QUNBQVRRQmhBR2NBYVFCakFGUUFid0J2QUd3QVlnQnZBSGdBTFFCVUFHZ0FhUUJ1QUNBQU9nQWdBRElBTndBdEFERUFMUUF5QURBQU1RQTFBQUJHYjI1MFJtOXlaMlVnTWk0d0lEb2dUV0ZuYVdOVWIyOXNZbTk0TFZSb2FXNGdPaUF5TnkweExUSXdNVFVBQUUwQVlRQm5BR2tBWXdCVUFHOEFid0JzQUdJQWJ3QjRBQzBBVkFCb0FHa0FiZ0FBVFdGbmFXTlViMjlzWW05NExWUm9hVzRBQUZZQVpRQnlBSE1BYVFCdkFHNEFJQUF4QUM0QU1BQUFWbVZ5YzJsdmJpQXhMakFBQUUwQVlRQm5BR2tBWXdCVUFHOEFid0JzQUdJQWJ3QjRBQzBBVkFCb0FHa0FiZ0FBVFdGbmFXTlViMjlzWW05NExWUm9hVzRBQUFBQUFBSUFBQUFBQUFEL21nQm1BQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQ1FBQUFBRUFBZ0VDQVFNQkJBRUZBUVlCQndkMWJtbEJNREF4QjNWdWFVRXdNRElIZFc1cFFUQXdNd2QxYm1sQk1EQTBCM1Z1YVVFd01EVUhkVzVwUVRBd05nQUFBQUgvL3dBQ0FBRUFBQUFNQUFBQUZnQUFBQUlBQVFBREFBZ0FBUUFFQUFBQUFnQUFBQUFBQUFBQkFBQUFBTkJ3UUdFQUFBQUEwTzJEOHdBQUFBRFE3WVB6XCIpO1xufVxuXG4uTWFnaWNab29tLFxuLm16LWZpZ3VyZSxcbi5tei1sZW5zLFxuLm16LXpvb20td2luZG93LFxuLm16LWxvYWRpbmcsXG4ubXotaGludCxcbi5tei1leHBhbmQgLm16LWV4cGFuZC1zdGFnZSxcbi5tei1leHBhbmQgLm16LWV4cGFuZC1zdGFnZSAubXotaW1hZ2Utc3RhZ2UsXG4ubXotZXhwYW5kIC5tei1pbWFnZS1zdGFnZSA+IGZpZ3VyZSAubXotY2FwdGlvbixcbi5tei10aHVtYiBpbWcsXG4ubXotZXhwYW5kLXRodW1ibmFpbHMsXG4ubXotZXhwYW5kLWNvbnRyb2xzLFxuLm16LWJ1dHRvbiB7XG4gICAgLXdlYmtpdC1ib3gtc2l6aW5nOiBib3JkZXItYm94O1xuICAgIGJveC1zaXppbmc6IGJvcmRlci1ib3g7XG59XG5cbi5NYWdpY1pvb20sXG4ubXotZmlndXJlIHtcbiAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgb3V0bGluZTogMCAhaW1wb3J0YW50O1xuICAgIGZvbnQtc2l6ZTogMCAhaW1wb3J0YW50O1xuICAgIGxpbmUtaGVpZ2h0OiAxMDAlICFpbXBvcnRhbnQ7XG4gICAgZGlyZWN0aW9uOiBsdHIgIWltcG9ydGFudDtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgei1pbmRleDogMTtcbiAgICBtYXJnaW46IDAgYXV0bztcbiAgICB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlO1xuICAgIC13ZWJraXQtdXNlci1zZWxlY3Q6IG5vbmU7XG4gICAgLW1vei11c2VyLXNlbGVjdDogbm9uZTtcbiAgICAtbXMtdXNlci1zZWxlY3Q6IG5vbmU7XG4gICAgdXNlci1zZWxlY3Q6IG5vbmU7XG4gICAgLXdlYmtpdC10b3VjaC1jYWxsb3V0OiBub25lO1xuICAgIC13ZWJraXQtdGFwLWhpZ2hsaWdodC1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gICAgLXdlYmtpdC1iYWNrZmFjZS12aXNpYmlsaXR5OiBoaWRkZW47XG4gICAgYmFja2ZhY2UtdmlzaWJpbGl0eTogaGlkZGVuO1xufVxuXG4uTWFnaWNab29tIHtcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwwLDApO1xuICAgIC1tcy10b3VjaC1hY3Rpb246IHBhbi15O1xuICAgIHRvdWNoLWFjdGlvbjogcGFuLXk7XG59XG5cbmZpZ3VyZS5tei1maWd1cmUge1xuICAgIG92ZXJmbG93OiBoaWRkZW47XG4gICAgbWFyZ2luOiAwICFpbXBvcnRhbnQ7XG4gICAgLXdlYmtpdC10cmFuc2Zvcm0tc3R5bGU6IHByZXNlcnZlLTNkO1xuICAgIHRyYW5zZm9ybS1zdHlsZTogcHJlc2VydmUtM2Q7XG59XG5cbi5NYWdpY1pvb20gaW1nLFxuLm16LWZpZ3VyZSBpbWcge1xuICAgIGJvcmRlcjogMCAhaW1wb3J0YW50O1xuICAgIG1hcmdpbjogMCAhaW1wb3J0YW50O1xuICAgIG91dGxpbmU6IDAgIWltcG9ydGFudDtcbiAgICBwYWRkaW5nOiAwICFpbXBvcnRhbnQ7XG59XG5cbi5NYWdpY1pvb20gPiBpbWcsXG4ubXotZmlndXJlID4gaW1nIHtcbiAgICB3aWR0aDogMTAwJTtcbiAgICBoZWlnaHQ6IGF1dG87XG59XG5cbi5pZTgtbWFnaWMgLk1hZ2ljWm9vbSA+IGltZyxcbi5pZTgtbWFnaWMgLm16LWZpZ3VyZSA+IGltZyB7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgbWF4LXdpZHRoOiBub25lICFpbXBvcnRhbnQ7XG59XG5cbi5tei1maWd1cmUubXotbm8tem9vbS5tei1uby1leHBhbmQsXG4ubXotZXhwYW5kIC5tei1maWd1cmUubXotbm8tem9vbSB7XG4gICAgY3Vyc29yOiBkZWZhdWx0ICFpbXBvcnRhbnQ7XG59XG5cbi5tei1maWd1cmUubXotYWN0aXZlLFxuLm16LWV4cGFuZCB7XG4gICAgLW1zLXRvdWNoLWFjdGlvbjogbm9uZTtcbiAgICB0b3VjaC1hY3Rpb246IG5vbmU7XG59XG5cbi5tei1sZW5zLFxuLm16LXpvb20td2luZG93IHtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGUgIWltcG9ydGFudDtcbiAgICBvdmVyZmxvdzogaGlkZGVuICFpbXBvcnRhbnQ7XG4gICAgcG9pbnRlci1ldmVudHM6IG5vbmUgIWltcG9ydGFudDtcbn1cblxuLm16LWxlbnMgaW1nLFxuLm16LXpvb20td2luZG93IGltZyB7XG4gICAgcG9zaXRpb246IGFic29sdXRlICFpbXBvcnRhbnQ7XG4gICAgbWF4LXdpZHRoOiBub25lICFpbXBvcnRhbnQ7XG4gICAgbWF4LWhlaWdodDogbm9uZSAhaW1wb3J0YW50O1xufVxuXG4ubXotbGVucyBpbWcge1xuICAgIC13ZWJraXQtdHJhbnNpdGlvbjogbm9uZSAhaW1wb3J0YW50O1xuICAgIHRyYW5zaXRpb246IG5vbmUgIWltcG9ydGFudDtcbn1cblxuLm16LXpvb20td2luZG93IHtcbiAgICB6LWluZGV4OiAyMDAwMDAwMDAwO1xuICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLDAsMCk7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLDAsMCk7XG59XG5cbi5tei16b29tLXdpbmRvdy5tei1tYWduaWZpZXIge1xuICAgIC13ZWJraXQtbWFzay1pbWFnZTogLXdlYmtpdC1yYWRpYWwtZ3JhZGllbnQoY2lyY2xlLCB3aGl0ZSwgYmxhY2spO1xuICAgIC13ZWJraXQtbWFzay1jbGlwOiBjb250ZW50O1xuICAgIGN1cnNvcjogbm9uZTtcbn1cblxuLm16LWZpZ3VyZS5tei1hY3RpdmUgLm16LXpvb20td2luZG93Lm16LW1hZ25pZmllciB7XG4gICAgcG9pbnRlci1ldmVudHM6IGF1dG8gIWltcG9ydGFudDtcbiAgICBjdXJzb3I6IGluaGVyaXQgIWltcG9ydGFudDtcbn1cblxuLm16LXpvb20td2luZG93Lm16LW1hZ25pZmllci5tei1leHBhbmRlZCB7XG4gICAgei1pbmRleDogMjE0NzQ4MzY0Nztcbn1cblxuLm16LXpvb20td2luZG93IGltZyB7XG4gICAgd2lkdGg6IGF1dG87XG4gICAgaGVpZ2h0OiBhdXRvO1xuICAgIGxlZnQ6IC0xMDAwJTtcbiAgICByaWdodDogLTEwMDAlO1xuICAgIHRvcDogLTEwMDAlO1xuICAgIGJvdHRvbTogLTEwMDAlO1xuICAgIG1hcmdpbjogYXV0byAhaW1wb3J0YW50O1xuICAgIC13ZWJraXQtdHJhbnNpdGlvbjogbm9uZSAhaW1wb3J0YW50O1xuICAgIHRyYW5zaXRpb246IG5vbmUgIWltcG9ydGFudDtcbiAgICAtd2Via2l0LXRyYW5zZm9ybS1vcmlnaW46IDUwJSA1MCUgIWltcG9ydGFudDtcbiAgICAtbXMtdHJhbnNmb3JtLW9yaWdpbjogNTAlIDUwJSAhaW1wb3J0YW50O1xuICAgIHRyYW5zZm9ybS1vcmlnaW46IDUwJSA1MCUgIWltcG9ydGFudDtcbn1cblxuLm16LXpvb20td2luZG93Lm16LXByZXZpZXcgaW1nIHtcbiAgICB0b3A6IDAgIWltcG9ydGFudDtcbiAgICBib3R0b206IDAgIWltcG9ydGFudDtcbiAgICBsZWZ0OiAwICFpbXBvcnRhbnQ7XG4gICAgcmlnaHQ6IDAgIWltcG9ydGFudDtcbiAgICBtYXJnaW46IDAgIWltcG9ydGFudDtcbiAgICB3aWR0aDogMTAwJSAhaW1wb3J0YW50O1xuICAgIGhlaWdodDogYXV0byAhaW1wb3J0YW50O1xuICAgIC13ZWJraXQtdHJhbnNmb3JtOiBub25lICFpbXBvcnRhbnQ7XG4gICAgdHJhbnNmb3JtOiBub25lICFpbXBvcnRhbnQ7XG59XG5cbi5sdC1pZTktbWFnaWMgLm16LXpvb20td2luZG93IGltZyB7XG4gICAgbWFyZ2luOiAwICFpbXBvcnRhbnQ7XG59XG5cbi5tei1leHBhbmQtY29udHJvbHMge1xuICAgIHotaW5kZXg6IDIxNDc0ODM2NDc7XG59XG5cbi5tei1mYWRlIHtcbiAgICAtd2Via2l0LXRyYW5zaXRpb246IG9wYWNpdHkgLjI1cztcbiAgICB0cmFuc2l0aW9uOiBvcGFjaXR5IC4yNXM7XG59XG5cbi5tei1oaWRkZW4ge1xuICAgIG9wYWNpdHk6IDA7XG59XG5cbi5tei12aXNpYmxlIHtcbiAgICBvcGFjaXR5OiAxO1xufVxuXG4ubW9iaWxlLW1hZ2ljIC5tei1leHBhbmQgLm16LWV4cGFuZC1iZyB7XG4gICAgLXdlYmtpdC10cmFuc2Zvcm0tc3R5bGU6IGZsYXQgIWltcG9ydGFudDtcbiAgICB0cmFuc2Zvcm0tc3R5bGU6IGZsYXQgIWltcG9ydGFudDtcbn1cblxuLm1vYmlsZS1tYWdpYyAubXotZXhwYW5kIC5tei1pbWFnZS1zdGFnZSA+IGZpZ3VyZSAubXotY2FwdGlvbiB7XG4gICAgZGlzcGxheTogbm9uZSAhaW1wb3J0YW50O1xufVxuXG4ubW9iaWxlLW1hZ2ljIC5tei1leHBhbmQtY29udHJvbHMubXotZmFkZSB7XG4gICAgdHJhbnNpdGlvbjogbm9uZSAhaW1wb3J0YW50O1xufVxuXG4ubW9iaWxlLW1hZ2ljIC5tei1leHBhbmQgPiAubXotem9vbS13aW5kb3cge1xuICAgIHRvcDogMCAhaW1wb3J0YW50O1xuICAgIGxlZnQ6IDAgIWltcG9ydGFudDtcbn1cblxuLm16LWV4cGFuZGVkLXZpZXctb3Blbixcbi5tei1leHBhbmRlZC12aWV3LW9wZW4gYm9keSB7XG4gICAgb3ZlcmZsb3c6IGhpZGRlbiAhaW1wb3J0YW50O1xufVxuXG4ubXotZXhwYW5kZWQtdmlldy1vcGVuIGJvZHkge1xuICAgIGhlaWdodDogYXV0byAhaW1wb3J0YW50O1xufVxuXG5cbi8qKlxuICogTWFpbiBmaWd1cmVcbiAqL1xuLm16LWZpZ3VyZS5tei1hY3RpdmUge1xuICAgIGJhY2tncm91bmQ6ICNmZmY7XG59XG5cbi5tei1maWd1cmUubXotbm8tem9vbSxcbi5tei1maWd1cmUubXotY2xpY2stem9vbSxcbi5tei1maWd1cmUubXotYWN0aXZlIHtcbiAgICBjdXJzb3I6IHBvaW50ZXI7XG4gICAgY3Vyc29yOiAtd2Via2l0LXpvb20taW47XG4gICAgY3Vyc29yOiAtbW96LXpvb20taW47XG4gICAgY3Vyc29yOiB6b29tLWluO1xufVxuXG4ubXotZmlndXJlLm16LWFjdGl2ZS5tei1uby1leHBhbmQge1xuICAgIGN1cnNvcjogY3Jvc3NoYWlyO1xufVxuXG4ubXotZmlndXJlLm16LWFjdGl2ZS5tei1jbGljay16b29tLm16LW5vLWV4cGFuZCB7XG4gICAgY3Vyc29yOiBjcm9zc2hhaXI7XG4gICAgY3Vyc29yOiAtd2Via2l0LXpvb20tb3V0O1xuICAgIGN1cnNvcjogLW1vei16b29tLW91dDtcbiAgICBjdXJzb3I6IHpvb20tb3V0O1xufVxuXG4ubXotZmlndXJlLm16LWFjdGl2ZS5tei1tYWduaWZpZXItem9vbS5tei1ob3Zlci16b29tLm16LW5vLWV4cGFuZCB7XG4gICAgY3Vyc29yOiBub25lO1xufVxuXG4ubXotZmlndXJlLm16LW1hZ25pZmllci16b29tLm16LWFjdGl2ZSB7XG4gICAgb3ZlcmZsb3c6IHZpc2libGUgIWltcG9ydGFudDtcbn1cblxuLm16LWZpZ3VyZS5tei1hY3RpdmUgPiBpbWcge1xuICAgIGZpbHRlcjogdXJsKFwiZGF0YTppbWFnZS9zdmcreG1sO3V0ZjgsPHN2ZyB4bWxucz1cXCdodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2Z1xcJz48ZmlsdGVyIGlkPVxcJ2dyYXlzY2FsZVxcJz48ZmVDb2xvck1hdHJpeCB0eXBlPVxcJ3NhdHVyYXRlXFwnIHZhbHVlcz1cXCcwXFwnLz48ZmVDb21wb25lbnRUcmFuc2Zlcj48ZmVGdW5jQSB0eXBlPVxcJ2xpbmVhclxcJyBzbG9wZT1cXCcwLjZcXCcvPjwvZmVDb21wb25lbnRUcmFuc2Zlcj48L2ZpbHRlcj48L3N2Zz4jZ3JheXNjYWxlXCIpO1xuICAgIC13ZWJraXQtZmlsdGVyOiBncmF5c2NhbGUoODAlKSBvcGFjaXR5KDYwJSk7XG4gICAgZmlsdGVyOiBncmF5c2NhbGUoODAlKSBvcGFjaXR5KDYwJSk7XG59XG5cbi5uby1jc3NmaWx0ZXJzLW1hZ2ljIC5tei1maWd1cmUubXotYWN0aXZlID4gaW1nIHtcbiAgICBvcGFjaXR5OiAwLjY7XG59XG5cbi5sdC1pZTEwLW1hZ2ljIC5tei1maWd1cmUubXotYWN0aXZlID4gaW1nIHtcbiAgICBvcGFjaXR5OiAxO1xuICAgIGZpbHRlcjogcHJvZ2lkOkRYSW1hZ2VUcmFuc2Zvcm0uTWljcm9zb2Z0LkJhc2ljSW1hZ2UoZ3JheVNjYWxlPTEsb3BhY2l0eT0wLjYpO1xufVxuXG4ubXotZmlndXJlLm16LWFjdGl2ZS5tei1pbm5lci16b29tLFxuLmx0LWllMTEtbWFnaWMgLm16LWV4cGFuZCAubXotZmlndXJlLm16LWFjdGl2ZS5tei1pbm5lci16b29tLFxuLmx0LWllMTEtbWFnaWMgLm16LWZpZ3VyZS5tei1hY3RpdmUubXotaW5uZXItem9vbSA+IGltZyB7XG4gICAgb3BhY2l0eTogMDtcbn1cblxuLmx0LWllMTEtbWFnaWMgLm16LWZpZ3VyZS5tei1hY3RpdmUubXotaW5uZXItem9vbSxcbi5sdC1pZTExLW1hZ2ljIC5tei1maWd1cmUubXotYWN0aXZlLm16LWlubmVyLXpvb20gPiAubXotem9vbS13aW5kb3cge1xuICAgIG9wYWNpdHk6IDE7XG59XG5cbi5sdC1pZTEwLW1hZ2ljIC5tei1leHBhbmQgLm16LWZpZ3VyZS5tei1hY3RpdmUubXotaW5uZXItem9vbSxcbi5sdC1pZTEwLW1hZ2ljIC5tei1maWd1cmUubXotYWN0aXZlLm16LWlubmVyLXpvb20gPiBpbWcge1xuICAgIGZpbHRlcjogYWxwaGEob3BhY2l0eT0wKTtcbn1cblxuLmllOS1tYWdpYyAubXotZXhwYW5kIC5tei1maWd1cmUubXotYWN0aXZlLm16LWlubmVyLXpvb20ge1xuICAgIGJhY2tncm91bmQ6IHRyYW5zcGFyZW50O1xufVxuXG4vKipcbiAqIFpvb20gbGVuc1xuICovXG4ubXotbGVucyB7XG4gICAgYm9yZGVyOiAxcHggc29saWQgI2FhYTtcbiAgICBib3JkZXItY29sb3I6IHJnYmEoMTcwLDE3MCwxNzAsMC43KTtcbiAgICBib3gtc2hhZG93OiAwIDAgNXB4IHJnYmEoMCwwLDAsLjMpO1xuICAgIGN1cnNvcjogbm9uZTtcbiAgICB6LWluZGV4OiAxMDtcbiAgICBvcGFjaXR5OiAwO1xufVxuXG4ubXotZmlndXJlLm16LWFjdGl2ZSAubXotbGVucyB7XG4gICAgb3BhY2l0eTogMTtcbiAgICAtd2Via2l0LXRyYW5zaXRpb246IG9wYWNpdHkgLjNzIGN1YmljLWJlemllcigwLjI1LCAwLjUsIDAuNSwgMC45KSAuMXM7XG4gICAgdHJhbnNpdGlvbjogb3BhY2l0eSAuM3MgY3ViaWMtYmV6aWVyKDAuMjUsIDAuNSwgMC41LCAwLjkpIC4xcztcbn1cblxuLm16LWZpZ3VyZS5tei1hY3RpdmUubXotbWFnbmlmaWVyLXpvb20gLm16LWxlbnMge1xuICAgIGJvcmRlci1yYWRpdXM6IDUwJTtcbiAgICBvcGFjaXR5OiAwO1xuICAgIGN1cnNvcjogbm9uZTtcbn1cblxuLyoqXG4gKiBab29tIHdpbmRvd1xuICovXG4ubXotem9vbS13aW5kb3cge1xuICAgIGJhY2tncm91bmQ6ICNmZmY7XG4gICAgYm94LXNoYWRvdzogMCAwIDNweCByZ2JhKDAsIDAsIDAsIC4yKTtcbn1cblxuLm16LXpvb20td2luZG93Lm16LW1hZ25pZmllciB7XG4gICAgYm9yZGVyLXJhZGl1czogMTAwJTtcbiAgICBib3JkZXI6IDA7XG4gICAgYmFja2dyb3VuZDogcmdiYSgyNTUsMjU1LDI1NSwuMyk7XG59XG5cbi5tei16b29tLXdpbmRvdy5tei1tYWduaWZpZXI6YmVmb3JlIHtcbiAgICBjb250ZW50OiBcIlwiO1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICB0b3A6IDA7XG4gICAgYm90dG9tOiAwO1xuICAgIGxlZnQ6IDA7XG4gICAgcmlnaHQ6IDA7XG4gICAgYm9yZGVyLXJhZGl1czogMTAwJTtcbiAgICBib3JkZXI6IDFweCBzb2xpZCByZ2JhKDE3MCwxNzAsMTcwLDAuNyk7XG4gICAgYm94LXNoYWRvdzogaW5zZXQgMCAwIDIwcHggMXB4IHJnYmEoMCwwLDAsLjMpO1xuICAgIGJhY2tncm91bmQ6IHRyYW5zcGFyZW50O1xuICAgIHotaW5kZXg6IDE7XG59XG5cbi5tei16b29tLXdpbmRvdy5tei1tYWduaWZpZXIubXotc3F1YXJlLFxuLm16LXpvb20td2luZG93Lm16LW1hZ25pZmllci5tei1zcXVhcmU6YmVmb3JlIHtcbiAgICBib3JkZXItcmFkaXVzOiAwICFpbXBvcnRhbnQ7XG59XG5cbi5sdC1pZTktbWFnaWMgLm16LXpvb20td2luZG93IHtcbiAgICBib3JkZXI6IDFweCBzb2xpZCAjZTVlNWU1O1xufVxuXG4ubXotem9vbS13aW5kb3cubXotaW5uZXIge1xuICAgIGJvcmRlcjogbm9uZTtcbiAgICBib3gtc2hhZG93OiBub25lO1xufVxuXG4vKiBDYXB0aW9uIGluIHpvb20gd2luZG93ICovXG4ubXotem9vbS13aW5kb3cgLm16LWNhcHRpb24ge1xuICAgIGJhY2tncm91bmQ6ICM3Nzc7XG4gICAgY29sb3I6ICNmZmY7XG4gICAgZm9udC1zaXplOiAxMHB0O1xuICAgIG9wYWNpdHk6IDAuODtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgdG9wOiAwO1xuICAgIHotaW5kZXg6IDE1MDtcbiAgICBwYWRkaW5nOiAzcHg7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgbGluZS1oZWlnaHQ6IG5vcm1hbCAhaW1wb3J0YW50O1xuICAgIHRleHQtYWxpZ246IGNlbnRlciAhaW1wb3J0YW50O1xufVxuXG4ubHQtaWU5LW1hZ2ljIC5tei16b29tLXdpbmRvdyAubXotY2FwdGlvbiB7XG4gICAgZmlsdGVyOiBhbHBoYShvcGFjaXR5PTgwKTtcbn1cblxuLm16LXpvb20td2luZG93LmNhcHRpb24tYm90dG9tIC5tei1jYXB0aW9uIHtcbiAgICB0b3A6IGF1dG87XG4gICAgYm90dG9tOiAwO1xufVxuXG4ubXotem9vbS13aW5kb3cubXotZXhwYW5kZWQgPiAubXotY2FwdGlvbiB7XG4gICAgZGlzcGxheTogbm9uZTtcbn1cblxuLyogWm9vbSB3aW5kb3cgYW5pbWF0aW9ucyAqL1xuLm16LXpvb20td2luZG93Lm16LWRlYWN0aXZhdGluZyxcbi5tei16b29tLXdpbmRvdy5tei1hY3RpdmF0aW5nIHtcbiAgICAtd2Via2l0LXRyYW5zaXRpb246IG9wYWNpdHkgMC4zcyBjdWJpYy1iZXppZXIoMC4yNSwgMC41LCAwLjUsIDAuOSksIC13ZWJraXQtdHJhbnNmb3JtIDAuM3MgY3ViaWMtYmV6aWVyKDAuMjUsIDAuNSwgMC41LCAwLjkpO1xuICAgIHRyYW5zaXRpb246IG9wYWNpdHkgMC4zcyBjdWJpYy1iZXppZXIoMC4yNSwgMC41LCAwLjUsIDAuOSksIHRyYW5zZm9ybSAwLjNzIGN1YmljLWJlemllcigwLjI1LCAwLjUsIDAuNSwgMC45KTtcbn1cblxuLm16LXpvb20td2luZG93Lm16LWRlYWN0aXZhdGluZyB7XG4gICAgLXdlYmtpdC10cmFuc2l0aW9uLWR1cmF0aW9uOiAuMjVzLCAuMjVzLCAuMjVzO1xuICAgIHRyYW5zaXRpb24tZHVyYXRpb246IC4yNXMsIC4yNXMsIC4yNXM7XG59XG5cbi5tei16b29tLXdpbmRvdy5tei1wLXJpZ2h0LFxuLm16LXpvb20td2luZG93Lm16LXAtbGVmdCxcbi5tei16b29tLXdpbmRvdy5tei1wLXRvcCxcbi5tei16b29tLXdpbmRvdy5tei1wLWJvdHRvbSB7XG4gICAgb3BhY2l0eTogMDtcbiAgICB6LWluZGV4OiAtMTAwO1xufVxuXG4ubXotem9vbS13aW5kb3cubXotcC1yaWdodCB7XG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKC0yMCUsIDAsIDApO1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoLTIwJSwgMCwgMCk7XG59XG5cbi5tei16b29tLXdpbmRvdy5tei1wLWxlZnQge1xuICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgyMCUsIDAsIDApO1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMjAlLCAwLCAwKTtcbn1cblxuLm16LXpvb20td2luZG93Lm16LXAtdG9wIHtcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwgMjAlLCAwKTtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsIDIwJSwgMCk7XG59XG5cbi5tei16b29tLXdpbmRvdy5tei1wLWJvdHRvbSB7XG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsIC0yMCUsIDApO1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwgLTIwJSwgMCk7XG59XG4vKiBJbm5lciBtb2RlIGFuaW1hdGlvbiAqL1xuLm16LXpvb20td2luZG93ID4gaW1nIHtcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwgMCwgMCkgc2NhbGUoMSk7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLCAwLCAwKSBzY2FsZSgxKTtcbiAgICAtd2Via2l0LWJhY2tmYWNlLXZpc2liaWxpdHk6IGhpZGRlbjtcbiAgICBiYWNrZmFjZS12aXNpYmlsaXR5OiBoaWRkZW47XG59XG5cbi5tei16b29tLXdpbmRvdy5tei1wLWlubmVyLm16LWRlYWN0aXZhdGluZyA+IGltZyxcbi5tei16b29tLXdpbmRvdy5tei1wLWlubmVyLm16LWFjdGl2YXRpbmcgPiBpbWcge1xuICAgIC13ZWJraXQtdHJhbnNpdGlvbjogLXdlYmtpdC10cmFuc2Zvcm0gLjIycyBjdWJpYy1iZXppZXIoMC4yNSwgMC41LCAwLjUsIDAuOSkgIWltcG9ydGFudDtcbiAgICB0cmFuc2l0aW9uOiB0cmFuc2Zvcm0gLjIycyBjdWJpYy1iZXppZXIoMC4yNSwgMC41LCAwLjUsIDAuOSkgIWltcG9ydGFudDtcbn1cbi8qIE1hZ25pZmllciBtb2RlIGFuaW1hdGlvbiAqL1xuLm16LXpvb20td2luZG93Lm16LXAtbWFnbmlmaWVyIHtcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogc2NhbGUoLjEpO1xuICAgIHRyYW5zZm9ybTogc2NhbGUoLjEpO1xufVxuLyogUHJldmlldyBtb2RlIGFuaW1hdGlvbiAqL1xuLm16LXpvb20td2luZG93Lm16LXByZXZpZXcubXotZGVhY3RpdmF0aW5nLFxuLm16LXpvb20td2luZG93Lm16LXByZXZpZXcubXotYWN0aXZhdGluZyxcbi5tei16b29tLXdpbmRvdy5tei1jdXN0b20ubXotZGVhY3RpdmF0aW5nLFxuLm16LXpvb20td2luZG93Lm16LWN1c3RvbS5tei1hY3RpdmF0aW5nIHtcbiAgICAtd2Via2l0LXRyYW5zaXRpb246IG9wYWNpdHkgMC4zcyBjdWJpYy1iZXppZXIoMC4yNSwgMC41LCAwLjUsIDAuOSk7XG4gICAgdHJhbnNpdGlvbjogb3BhY2l0eSAwLjNzIGN1YmljLWJlemllcigwLjI1LCAwLjUsIDAuNSwgMC45KTtcbn1cblxuLm16LXpvb20td2luZG93Lm16LXByZXZpZXcubXotZGVhY3RpdmF0aW5nLFxuLm16LXpvb20td2luZG93Lm16LWN1c3RvbS5tei1kZWFjdGl2YXRpbmcge1xuICAgIC13ZWJraXQtdHJhbnNpdGlvbi1kdXJhdGlvbjogLjJzO1xuICAgIHRyYW5zaXRpb24tZHVyYXRpb246IC4ycztcbn1cblxuLm16LXpvb20td2luZG93Lm16LXAtcHJldmlldyxcbi5tei16b29tLXdpbmRvdy5tei1wLWN1c3RvbSB7XG4gICAgb3BhY2l0eTogMDtcbn1cblxuXG4vKipcbiAqIEhpbnQgJiBMb2FkaW5nXG4gKi9cbi5tei1oaW50LFxuLm16LWxvYWRpbmcge1xuICAgIGNvbG9yOiAjZWVlO1xuICAgIGJhY2tncm91bmQ6IHJnYmEoNDksNTEsNjEsMC43KTtcbiAgICBmb250OiBub3JtYWwgMTJweC8xLjJlbSAnTHVjaWRhIEdyYW5kZScsICdMdWNpZGEgU2FucyBVbmljb2RlJywgVmVyZGFuYSwgJ0hlbHZldGljYSBOZXVlJywgQXJpYWwsIEhlbHZldGljYSwgc2Fucy1zZXJpZjtcbiAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG4gICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgIGRpcmVjdGlvbjogbHRyO1xuICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICBtYXJnaW46IDA7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIHotaW5kZXg6IDEwMDA7XG4gICAgcG9pbnRlci1ldmVudHM6IG5vbmU7XG4gICAgLXdlYmtpdC1mb250LXNtb290aGluZzogYW50aWFsaWFzZWQ7XG4gICAgLW1vei1vc3gtZm9udC1zbW9vdGhpbmc6IGdyYXlzY2FsZTtcbiAgICAtd2Via2l0LXRyYW5zaXRpb246IG9wYWNpdHkgMC4yNXMgZWFzZTtcbiAgICB0cmFuc2l0aW9uOiBvcGFjaXR5IDAuMjVzIGVhc2U7XG59XG5cbi5tei1oaW50IHtcbiAgICBib3R0b206IDhweDtcbiAgICBsZWZ0OiAwO1xuICAgIHJpZ2h0OiAwO1xuICAgIHBhZGRpbmc6IDAgMTAlO1xuICAgIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xuICAgIC13ZWJraXQtdHJhbnNpdGlvbjogb3BhY2l0eSAwLjI1cyBlYXNlLCB6LWluZGV4IDAuMjVzIGVhc2U7XG4gICAgdHJhbnNpdGlvbjogb3BhY2l0eSAwLjI1cyBlYXNlLCB6LWluZGV4IDAuMjVzIGVhc2U7XG59XG5cbi5tei1oaW50LW1lc3NhZ2Uge1xuICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICBiYWNrZ3JvdW5kOiByZ2JhKDQ5LDUxLDYxLDAuNyk7XG4gICAgYm9yZGVyLXJhZGl1czogMmVtO1xuICAgIHBhZGRpbmc6IC43ZW0gMS4xZW07XG59XG5cbi5tei1oaW50LW1lc3NhZ2U6YmVmb3JlIHtcbiAgICBjb250ZW50OiAnXFwwMjI5NSc7XG4gICAgZm9udC1mYW1pbHk6IHNlcmlmO1xuICAgIGZvbnQtc2l6ZTogMS41ZW07XG4gICAgc3BlYWs6IG5vbmU7XG4gICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgIHZlcnRpY2FsLWFsaWduOiAtMnB4O1xuICAgIG1hcmdpbi1yaWdodDogNnB4O1xuICAgIC13ZWJraXQtdHJhbnNpdGlvbjogb3BhY2l0eSAwLjI1cyBlYXNlO1xuICAgIHRyYW5zaXRpb246IG9wYWNpdHkgMC4yNXMgZWFzZTtcbn1cblxuLm1vYmlsZS1tYWdpYyAubXotaGludC1tZXNzYWdlOmJlZm9yZSB7XG4gICAgZGlzcGxheTogbm9uZTtcbn1cblxuLm16LWhpbnQtaGlkZGVuIHtcbiAgICBvcGFjaXR5OiAwO1xuICAgIHotaW5kZXg6IC0xO1xuICAgIC13ZWJraXQtdHJhbnNpdGlvbi1kZWxheTogLjZzO1xuICAgIHRyYW5zaXRpb24tZGVsYXk6IC42cztcbn1cbi8qIEhpbnQgaW4gdGhlIGV4cGFuZGVkIHZpZXcgb24gbW9iaWxlICovXG4ubXotZXhwYW5kIC5tei1oaW50IHtcbiAgICBmb250LXNpemU6IDE4cHg7XG4gICAgbGluZS1oZWlnaHQ6IDEuMWVtO1xuICAgIHRvcDogNTAlO1xuICAgIGJvdHRvbTogYXV0bztcbiAgICBtYXJnaW46IDA7XG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZSgwLC01MCUpO1xuICAgIC1tcy10cmFuc2Zvcm06IHRyYW5zbGF0ZSgwLC01MCUpO1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlKDAsLTUwJSk7XG59XG5cbi5tei1leHBhbmQgLm16LWhpbnQtbWVzc2FnZSB7XG4gICAgcGFkZGluZzogMS4xZW07XG59XG5cbi5tei1leHBhbmQgLm16LWhpbnQtbWVzc2FnZTpiZWZvcmUge1xuICAgIGRpc3BsYXk6IG5vbmU7XG59XG5cbi5tei1leHBhbmQgLm16LWhpbnQtaGlkZGVuIHtcbiAgICAtd2Via2l0LXRyYW5zaXRpb24tZGVsYXk6IDFzO1xuICAgIHRyYW5zaXRpb24tZGVsYXk6IDFzO1xuICAgIG9wYWNpdHk6IDA7XG59XG5cbi8qIExvYWRpbmcgaW5kaWNhdG9yICovXG4ubXotbG9hZGluZyB7XG4gICAgZm9udC1zaXplOiAwO1xuICAgIGJvcmRlci1yYWRpdXM6IDEwMCU7XG4gICAgb3BhY2l0eTogMDtcbiAgICBwYWRkaW5nOiAwO1xuICAgIHdpZHRoOiAzNnB4O1xuICAgIGhlaWdodDogMzZweDtcbiAgICB0b3A6IDUwJTtcbiAgICBsZWZ0OiA1MCU7XG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZSgtNTAlLCAtNTAlKTtcbiAgICAtbXMtdHJhbnNmb3JtOiB0cmFuc2xhdGUoLTUwJSwgLTUwJSk7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUoLTUwJSwgLTUwJSk7XG59XG5cbi5tei1sb2FkaW5nOmFmdGVyIHtcbiAgICBjb250ZW50OiAnJztcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgdG9wOiAwO1xuICAgIGJvdHRvbTogMDtcbiAgICBsZWZ0OiAwO1xuICAgIHJpZ2h0OiAwO1xuICAgIHdpZHRoOiAyNHB4O1xuICAgIGhlaWdodDogMjRweDtcbiAgICBtYXJnaW46IGF1dG87XG4gICAgdGV4dC1pbmRlbnQ6IC05OTk5ZW07XG4gICAgYm9yZGVyLXJhZGl1czogNTAlO1xuICAgIGJvcmRlcjogMnB4IHNvbGlkIHJnYmEoMjU1LCAyNTUsIDI1NSwgMSk7XG4gICAgYm9yZGVyLXRvcC1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gICAgYm94LXNpemluZzogYm9yZGVyLWJveDtcbn1cblxuLm16LWxvYWRpbmcuc2hvd24ge1xuICAgIG9wYWNpdHk6IDE7XG4gICAgei1pbmRleDogMTtcbiAgICAtd2Via2l0LXRyYW5zaXRpb246IG9wYWNpdHkgMHM7XG4gICAgdHJhbnNpdGlvbjogb3BhY2l0eSAwcztcbn1cblxuLm16LWxvYWRpbmcuc2hvd246YWZ0ZXIge1xuICAgIC13ZWJraXQtYW5pbWF0aW9uOiBzcGluLWxvYWRpbmcgLjlzIGluZmluaXRlIGxpbmVhcjtcbiAgICBhbmltYXRpb246IHNwaW4tbG9hZGluZyAuOXMgaW5maW5pdGUgbGluZWFyO1xufVxuXG5ALXdlYmtpdC1rZXlmcmFtZXMgc3Bpbi1sb2FkaW5nIHtcbiAgICAwJSB7XG4gICAgICAgIC13ZWJraXQtdHJhbnNmb3JtOiByb3RhdGUoMGRlZyk7XG4gICAgICAgIHRyYW5zZm9ybTogcm90YXRlKDBkZWcpO1xuICAgIH1cblxuICAgIDEwMCUge1xuICAgICAgICAtd2Via2l0LXRyYW5zZm9ybTogcm90YXRlKDM2MGRlZyk7XG4gICAgICAgIHRyYW5zZm9ybTogcm90YXRlKDM2MGRlZyk7XG4gICAgfVxufVxuXG5Aa2V5ZnJhbWVzIHNwaW4tbG9hZGluZyB7XG4gICAgMCUge1xuICAgICAgICAtd2Via2l0LXRyYW5zZm9ybTogcm90YXRlKDBkZWcpO1xuICAgICAgICB0cmFuc2Zvcm06IHJvdGF0ZSgwZGVnKTtcbiAgICB9XG5cbiAgICAxMDAlIHtcbiAgICAgICAgLXdlYmtpdC10cmFuc2Zvcm06IHJvdGF0ZSgzNjBkZWcpO1xuICAgICAgICB0cmFuc2Zvcm06IHJvdGF0ZSgzNjBkZWcpO1xuICAgIH1cbn1cblxuLmx0LWllMTAtbWFnaWMgLm16LWxvYWRpbmcge1xuICAgIGJvcmRlci1yYWRpdXM6IDJlbTtcbiAgICBmb250LXNpemU6IDEycHg7XG4gICAgcGFkZGluZzogLjdlbSAxLjFlbTtcbiAgICB3aWR0aDogYXV0bztcbiAgICBoZWlnaHQ6IGF1dG87XG59XG5cbi5sdC1pZTEwLW1hZ2ljIC5tei1sb2FkaW5nOmFmdGVyIHtcbiAgICBjb250ZW50OiAnTG9hZGluZy4uLic7XG4gICAgdGV4dC1pbmRlbnQ6IDA7XG4gICAgYm9yZGVyOiBub25lO1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbn1cblxuLmx0LWllOS1tYWdpYyAubXotbG9hZGluZyB7XG4gICAgZmlsdGVyOiBhbHBoYShvcGFjaXR5PTApO1xuICAgIHJpZ2h0OiAwO1xuICAgIGxlZnQ6IDA7XG4gICAgd2lkdGg6IDEyNnB4O1xuICAgIG1hcmdpbjogYXV0bztcbn1cblxuLmx0LWllOS1tYWdpYyAubXotaGludC1tZXNzYWdlLFxuLmx0LWllOS1tYWdpYyAubXotbG9hZGluZy5zaG93biB7XG4gICAgYmFja2dyb3VuZDogdHJhbnNwYXJlbnQgIWltcG9ydGFudDtcbiAgICBmaWx0ZXI6IHByb2dpZDpEWEltYWdlVHJhbnNmb3JtLk1pY3Jvc29mdC5ncmFkaWVudChHcmFkaWVudFR5cGU9MCxTdGFydENvbG9yU3RyPScjN2MzMTMzM0QnLCBFbmRDb2xvclN0cj0nIzdjMzEzMzNEJyk7XG59XG5cbi5sdC1pZTktbWFnaWMgLm16LWhpbnQtaGlkZGVuIHtcbiAgICBmaWx0ZXI6IGFscGhhKG9wYWNpdHk9MCk7XG59XG5cblxuXG4vKipcbiAqIEV4cGFuZGVkIHZpZXdcbiAqL1xuLm16LWV4cGFuZCxcbi5tei1leHBhbmQgLm16LWV4cGFuZC1iZyxcbi5tei1leHBhbmQgLm16LWV4cGFuZC1iZyA+IGltZyxcbi5tei1leHBhbmQgLm16LWV4cGFuZC1iZyA+IHN2Zyxcbi5tei1leHBhbmQgLm16LWV4cGFuZC1zdGFnZSxcbi5tei1leHBhbmQgLm16LWV4cGFuZC1zdGFnZSAubXotaW1hZ2Utc3RhZ2Uge1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICB0b3A6IDA7XG4gICAgYm90dG9tOiAwO1xuICAgIGxlZnQ6IDA7XG4gICAgcmlnaHQ6IDA7XG59XG5cbi5tei1leHBhbmQgLm16LWV4cGFuZC1iZyxcbi5tei1leHBhbmQgLm16LWV4cGFuZC1iZyA+IGltZyxcbi5tei1leHBhbmQgLm16LWV4cGFuZC1iZyA+IHN2ZyB7XG4gICAgd2lkdGg6IGF1dG8gIWltcG9ydGFudDtcbiAgICBoZWlnaHQ6IGF1dG8gIWltcG9ydGFudDtcbn1cblxuLm16LWV4cGFuZCAubXotZXhwYW5kLWJnLFxuLm16LWV4cGFuZCAubXotZXhwYW5kLWJnID4gc3ZnIHtcbiAgICBtaW4td2lkdGg6IDEwMCUgIWltcG9ydGFudDtcbiAgICBtaW4taGVpZ2h0OiAxMDAlICFpbXBvcnRhbnQ7XG59XG5cbi5tei1leHBhbmQge1xuICAgIGJhY2tncm91bmQtY29sb3I6IHJnYmEoMCwgMCwgMCwgMSk7XG4gICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgIHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgICB6LWluZGV4OiAyMTAwMDAwMDAwO1xuICAgIHBvc2l0aW9uOiBmaXhlZDtcbiAgICB3aWR0aDogYXV0bztcbiAgICBoZWlnaHQ6IGF1dG87XG4gICAgLXdlYmtpdC1wZXJzcGVjdGl2ZTogNjAwcHg7XG4gICAgcGVyc3BlY3RpdmU6IDYwMHB4O1xuICAgIC13ZWJraXQtdHJhbnNmb3JtLXN0eWxlOiBwcmVzZXJ2ZS0zZDtcbiAgICB0cmFuc2Zvcm0tc3R5bGU6IHByZXNlcnZlLTNkO1xuICAgIC13ZWJraXQtYmFja2ZhY2UtdmlzaWJpbGl0eTogaGlkZGVuO1xuICAgIGJhY2tmYWNlLXZpc2liaWxpdHk6IGhpZGRlbjtcbiAgICAtbXMtb3ZlcmZsb3ctc3R5bGU6IG5vbmU7XG59XG5cbi8qIEV4cGFuZGVkIHZpZXcgYmFja2dyb3VuZCAqL1xuLm16LWV4cGFuZCAubXotZXhwYW5kLWJnIHtcbiAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgdmVydGljYWwtYWxpZ246IG1pZGRsZTtcbiAgICBtYXJnaW46IGF1dG87XG4gICAgei1pbmRleDogLTEwMDtcbiAgICBtYXgtd2lkdGg6IG5vbmUgIWltcG9ydGFudDtcbiAgICBtYXgtaGVpZ2h0OiBub25lICFpbXBvcnRhbnQ7XG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsMCwwKSBzY2FsZSgxMCkgcm90YXRlKDAuMDFkZWcpO1xuICAgIC1tcy10cmFuc2Zvcm06IHRyYW5zbGF0ZSgwLDApIHNjYWxlKDEwLDEwKSByb3RhdGUoMC4wMWRlZyk7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLDAsMCkgc2NhbGUoMTApIHJvdGF0ZSgwLjAxZGVnKTtcbiAgICAtd2Via2l0LXBlcnNwZWN0aXZlOiA2MDBweDtcbiAgICBwZXJzcGVjdGl2ZTogNjAwcHg7XG4gICAgYmFja2dyb3VuZC1yZXBlYXQ6IG5vLXJlcGVhdDtcbiAgICBiYWNrZ3JvdW5kLXNpemU6IGNvdmVyO1xufVxuXG4ubXotZXhwYW5kIC5tei1leHBhbmQtYmcgPiBpbWcge1xuICAgIG1hcmdpbjogYXV0bztcbiAgICBmaWx0ZXI6IHVybChcImRhdGE6aW1hZ2Uvc3ZnK3htbDt1dGY4LDxzdmcgeG1sbnM9XFwnaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmdcXCc+PGZpbHRlciBpZD1cXCdibHVyXFwnPjxmZUdhdXNzaWFuQmx1ciBzdGREZXZpYXRpb249XFwnODBcXCcgaW49XFwnU291cmNlR3JhcGhpY1xcJz48L2ZlR2F1c3NpYW5CbHVyPjwvZmlsdGVyPjwvc3ZnPiNibHVyXCIpO1xuICAgIC13ZWJraXQtZmlsdGVyOiBibHVyKDIwcHgpIGJyaWdodG5lc3MoNjAlKTtcbiAgICBmaWx0ZXI6IGJsdXIoMjBweCkgYnJpZ2h0bmVzcyg2MCUpO1xuICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLDAsMCk7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLDAsMCk7XG4gICAgLXdlYmtpdC1iYWNrZmFjZS12aXNpYmlsaXR5OiBoaWRkZW47XG4gICAgYmFja2ZhY2UtdmlzaWJpbGl0eTogaGlkZGVuO1xufVxuXG4ubXotZXhwYW5kIC5tei1leHBhbmQtYmcgPiBzdmcge1xuICAgIG1hcmdpbjogYXV0bztcbiAgICBvcGFjaXR5OiAuNjtcbn1cblxuW2RhdGEtbWFnaWMtdWE9ZWRnZV0gLm16LWV4cGFuZCAubXotZXhwYW5kLWJnLFxuLmx0LWllMTAtbWFnaWMgLm16LWV4cGFuZCAubXotZXhwYW5kLWJnIHtcbiAgICBkaXNwbGF5OiBub25lICFpbXBvcnRhbnQ7XG59XG5cbi5sdC1pZTktbWFnaWMgLm16LWV4cGFuZCB7XG4gICAgYmFja2dyb3VuZDogIzFmMWYxZjtcbn1cblxuW2RhdGEtbWFnaWMtdWE9ZWRnZV0gLm16LWV4cGFuZCB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogcmdiYSgzMSwgMzEsIDMxLCAuOTYpO1xufVxuXG4vKiogUGxhaW4gYmFja2dyb3VuZHM6IGRhcmstYmcsIHdoaXRlLWJnICoqL1xuLm16LWV4cGFuZC5wbGFpbi1iZyAubXotZXhwYW5kLWJnLFxuLm16LWV4cGFuZC5kYXJrLWJnIC5tei1leHBhbmQtYmcsXG4ubXotZXhwYW5kLndoaXRlLWJnIC5tei1leHBhbmQtYmcge1xuICAgIGRpc3BsYXk6IG5vbmUgIWltcG9ydGFudDtcbn1cblxuLm16LWV4cGFuZC5kYXJrLWJnIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjMWYxZjFmO1xuICAgIGJhY2tncm91bmQtY29sb3I6IHJnYmEoMzEsIDMxLCAzMSwgLjk2KTtcbn1cblxuLm16LWV4cGFuZC53aGl0ZS1iZyB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogI2ZmZjtcbn1cblxuLyogRXhwYW5kZWQgdmlldyBzdGFnZSAqL1xuLm16LWV4cGFuZCAubXotZXhwYW5kLXN0YWdlIHtcbiAgICB6LWluZGV4OiAyMTAwMDAwMDAwO1xuICAgIHBhZGRpbmc6IDA7XG59XG5cbi5tei1leHBhbmQgLm16LWV4cGFuZC1zdGFnZSAubXotaW1hZ2Utc3RhZ2Uge1xuICAgIHotaW5kZXg6IDUwO1xuICAgIGxlZnQ6IDEyMHB4O1xuICAgIHJpZ2h0OiAxMjBweDtcbiAgICBwYWRkaW5nOiAyMHB4IDAgNDBweCAwO1xuICAgIG1hcmdpbjogMDtcbiAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgdmVydGljYWwtYWxpZ246IG1pZGRsZTtcbiAgICAtd2Via2l0LXBlcnNwZWN0aXZlOiA2MDBweDtcbiAgICBwZXJzcGVjdGl2ZTogNjAwcHg7XG4gICAgLXdlYmtpdC1iYWNrZmFjZS12aXNpYmlsaXR5OiBoaWRkZW47XG4gICAgYmFja2ZhY2UtdmlzaWJpbGl0eTogaGlkZGVuO1xufVxuXG4ubXotZXhwYW5kIC5tei1leHBhbmQtc3RhZ2Uud2l0aC10aHVtYnMgLm16LWltYWdlLXN0YWdlIHtcbiAgICBwYWRkaW5nLWJvdHRvbTogMTIwcHg7XG59XG5cbi5tei1leHBhbmQgLm16LWV4cGFuZC1zdGFnZS5tei16b29tLWluIC5tei1pbWFnZS1zdGFnZSB7XG4gICAgcGFkZGluZzogMCAhaW1wb3J0YW50O1xuICAgIGxlZnQ6IDA7XG4gICAgcmlnaHQ6IDA7XG59XG5cbi5tei1leHBhbmQgLm16LWltYWdlLXN0YWdlID4gZmlndXJlOmJlZm9yZSxcbi5tei1leHBhbmQgLm16LWltYWdlLXN0YWdlOmJlZm9yZSB7XG4gICAgY29udGVudDogJyc7XG4gICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgIHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7XG4gICAgaGVpZ2h0OiAxMDAlO1xuICAgIGZvbnQtc2l6ZTogMDtcbiAgICBsaW5lLWhlaWdodDogMTAwJTtcbiAgICB3aWR0aDogMDtcbn1cblxuLm16LWV4cGFuZCAubXotaW1hZ2Utc3RhZ2UgPiBmaWd1cmUge1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIG1heC13aWR0aDogMTAwJTtcbiAgICBtYXgtaGVpZ2h0OiAxMDAlO1xuICAgIHBhZGRpbmc6IDA7XG4gICAgbWFyZ2luOiAwO1xuICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlO1xuICAgIGZvbnQtc2l6ZTogMDtcbiAgICBsaW5lLWhlaWdodDogMTAwJTtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG59XG5cbi5tei1leHBhbmQgLm16LWZpZ3VyZSB7XG4gICAgb3ZlcmZsb3c6IHZpc2libGU7XG4gICAgbWF4LXdpZHRoOiAxMDAlICFpbXBvcnRhbnQ7XG59XG5cbi5tei1leHBhbmQgLm16LWZpZ3VyZSA+IGltZyB7XG4gICAgbWF4LXdpZHRoOiAxMDAlO1xuICAgIHdpZHRoOiBhdXRvO1xuICAgIGhlaWdodDogYXV0bztcbn1cblxuLm16LWV4cGFuZCAubXotem9vbS1pbiAubXotaW1hZ2Utc3RhZ2UgPiBmaWd1cmUsXG4ubXotZXhwYW5kIC5tei16b29tLWluIC5tei1pbWFnZS1zdGFnZSA+IGZpZ3VyZSAubXotZmlndXJlLm16LWFjdGl2YXRpbmcsXG4ubXotZXhwYW5kIC5tei16b29tLWluIC5tei1pbWFnZS1zdGFnZSA+IGZpZ3VyZSAubXotZmlndXJlLm16LWFjdGl2ZSB7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgaGVpZ2h0OiAxMDAlO1xufVxuXG4ubXotZXhwYW5kIC5tei1maWd1cmUge1xuICAgIGN1cnNvcjogcG9pbnRlcjtcbiAgICBjdXJzb3I6IC13ZWJraXQtem9vbS1pbjtcbiAgICBjdXJzb3I6IC1tb3otem9vbS1pbjtcbiAgICBjdXJzb3I6IHpvb20taW47XG59XG5cbi5tei1leHBhbmQgLm16LWZpZ3VyZS5tei1hY3RpdmUge1xuICAgIGN1cnNvcjogY3Jvc3NoYWlyO1xuICAgIGN1cnNvcjogLXdlYmtpdC16b29tLW91dDtcbiAgICBjdXJzb3I6IC1tb3otem9vbS1vdXQ7XG4gICAgY3Vyc29yOiB6b29tLW91dDtcbn1cbi8qIFdoZW4gaW5uZXIgem9vbSBpcyBhbHdheXMgc2hvd24gKi9cbi5tei1leHBhbmQgLm16LWV4cGFuZC1zdGFnZS5tei16b29tLWluLm16LWFsd2F5cy16b29tIC5tei1pbWFnZS1zdGFnZSA+IGZpZ3VyZSA+IGZpZ3VyZSA+IGltZyB7XG4gICAgei1pbmRleDogMTtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGUgIWltcG9ydGFudDtcbiAgICB0b3A6IC01MDAwcHggIWltcG9ydGFudDtcbiAgICBib3R0b206IC01MDAwcHggIWltcG9ydGFudDtcbiAgICBsZWZ0OiAtNTAwMHB4ICFpbXBvcnRhbnQ7XG4gICAgcmlnaHQ6IC01MDAwcHggIWltcG9ydGFudDtcbiAgICBtYXJnaW46IGF1dG8gIWltcG9ydGFudDtcbn1cblxuLmx0LWllMTAtbWFnaWMgLm16LXpvb20td2luZG93Lm16LWV4cGFuZGVkIGltZyB7XG4gICAgZmlsdGVyOiBhbHBoYShvcGFjaXR5PTEwMCk7XG59XG5cbi5sdC1pZTEwLW1hZ2ljIC5tei1leHBhbmQgLm16LWZpZ3VyZS5tei1tYWduaWZpZXItem9vbSB7XG4gICAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgICBmaWx0ZXI6IGFscGhhKG9wYWNpdHk9MTAwKTtcbn1cblxuXG4vKiBDYXB0aW9uIGluIGV4cGFuZGVkIHZpZXcgKi9cbi5tei1leHBhbmQgLm16LWNhcHRpb24ge1xuICAgIGNvbG9yOiAjZmZmO1xuICAgIHRleHQtc2hhZG93OiAwcHggMHB4IDQ2cHggIzAwMDtcbiAgICBwYWRkaW5nOiAxMHB4IDRweDtcbiAgICBmb250OiBub3JtYWwgMTBwdC8xZW0gJ0x1Y2lkYSBHcmFuZGUnLCAnTHVjaWRhIFNhbnMgVW5pY29kZScsIFZlcmRhbmEsICdIZWx2ZXRpY2EgTmV1ZScsIEFyaWFsLCBIZWx2ZXRpY2EsIHNhbnMtc2VyaWY7XG4gICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICBsZWZ0OiAwO1xuICAgIG9wYWNpdHk6IDA7XG59XG5cbi5tei1leHBhbmQgLm16LWNhcHRpb24ubXotc2hvdyB7XG4gICAgLXdlYmtpdC10cmFuc2l0aW9uOiBvcGFjaXR5IDAuMTVzIGVhc2Utb3V0O1xuICAgIHRyYW5zaXRpb246IG9wYWNpdHkgMC4xNXMgZWFzZS1vdXQ7XG4gICAgb3BhY2l0eTogMTtcbn1cblxuLm16LWV4cGFuZCAubXotY2FwdGlvbiBhIHtcbiAgICBjb2xvcjogaW5oZXJpdDtcbiAgICBjdXJzb3I6IHBvaW50ZXI7XG59XG5cbi5tei1leHBhbmQud2hpdGUtYmcgLm16LWNhcHRpb24ge1xuICAgIGNvbG9yOiAjNTU1O1xuICAgIHRleHQtc2hhZG93OiBub25lO1xufVxuXG4ubHQtaWU5LW1hZ2ljIC5tei1leHBhbmQgLm16LWNhcHRpb24ge1xuICAgIHRvcDogMTAwJTtcbn1cblxuLm16LWV4cGFuZCAubXotem9vbS13aW5kb3cge1xuICAgIGJveC1zaGFkb3c6IG5vbmU7XG4gICAgYmFja2dyb3VuZDogdHJhbnNwYXJlbnQ7XG59XG5cbi5sdC1pZTktbWFnaWMgLm16LWV4cGFuZCAubXotem9vbS13aW5kb3cge1xuICAgIGJvcmRlcjogMDtcbn1cblxuLyogRXhwYW5kZWQgdmlldyBvbiBtb2JpbGUgKi9cbi5tb2JpbGUtbWFnaWMgLm16LWV4cGFuZC1zdGFnZSAubXotZXhwYW5kLXRodW1ibmFpbHMsXG4ubW9iaWxlLW1hZ2ljIC5tei1leHBhbmQtc3RhZ2UgLm16LWltYWdlLXN0YWdlIHtcbiAgICBsZWZ0OiAwcHg7XG4gICAgcmlnaHQ6IDBweDtcbn1cblxuLm1vYmlsZS1tYWdpYyAubXotZXhwYW5kIC5tei1leHBhbmQtc3RhZ2Uud2l0aC10aHVtYnMge1xuICAgIGJvdHRvbTogMHB4O1xufVxuXG4ubW9iaWxlLW1hZ2ljIC5tei1leHBhbmQtc3RhZ2UgLm16LWltYWdlLXN0YWdlIHtcbiAgICBwYWRkaW5nOiAwO1xufVxuXG4ubW9iaWxlLW1hZ2ljIC5tei1leHBhbmQgLm16LWV4cGFuZC1zdGFnZS53aXRoLXRodW1icyAubXotaW1hZ2Utc3RhZ2Uge1xuICAgIHBhZGRpbmc6IDVweCAwIDYwcHg7XG59XG5cbi5tb2JpbGUtbWFnaWMgLm16LWV4cGFuZCAubXotZXhwYW5kLXN0YWdlLm16LXpvb20taW4gLm16LWltYWdlLXN0YWdlIHtcbiAgICBwYWRkaW5nLXRvcDogMDtcbn1cblxuLm1vYmlsZS1tYWdpYyAubXotZXhwYW5kIC5tei1leHBhbmQtdGh1bWJuYWlscyB7XG4gICAgcGFkZGluZzogMDtcbiAgICBoZWlnaHQ6IDYwcHg7XG59XG5cblxuLyoqXG4gKiBCdXR0b25zICYgQXJyb3dzXG4gKi9cbi5tei1leHBhbmQtY29udHJvbHMsXG5idXR0b24ubXotYnV0dG9uIHtcbiAgICBtYXJnaW46IDAgIWltcG9ydGFudDtcbiAgICBwYWRkaW5nOiAwICFpbXBvcnRhbnQ7XG4gICAgb3V0bGluZTogMCAhaW1wb3J0YW50O1xufVxuXG5idXR0b24ubXotYnV0dG9uIHtcbiAgICBjb2xvcjogI2I0YjRiNCAhaW1wb3J0YW50O1xuICAgIGZvbnQ6IDkwMCAzNHB4LzEgJ21hZ2ljdG9vbGJveC10aGluJyAhaW1wb3J0YW50O1xuICAgIGN1cnNvcjogcG9pbnRlcjtcbiAgICB6LWluZGV4OiA5MCAhaW1wb3J0YW50O1xuICAgIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50ICFpbXBvcnRhbnQ7XG4gICAgYm9yZGVyOiAxcHggc29saWQgcmdiYSgxODAsIDE4MCwgMTgwLCAwKSAhaW1wb3J0YW50O1xuICAgIGJvcmRlci1yYWRpdXM6IDEwMCUgIWltcG9ydGFudDtcbiAgICBib3gtc2hhZG93OiBub25lICFpbXBvcnRhbnQ7XG4gICAgcG9zaXRpb246IGFic29sdXRlICFpbXBvcnRhbnQ7XG4gICAgdGV4dC10cmFuc2Zvcm06IG5vbmUgIWltcG9ydGFudDtcbiAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgc3BlYWs6IG5vbmU7XG4gICAgLXdlYmtpdC1mb250LXNtb290aGluZzogYW50aWFsaWFzZWQ7XG4gICAgd2lkdGg6IDYwcHggIWltcG9ydGFudDtcbiAgICBoZWlnaHQ6IDYwcHggIWltcG9ydGFudDtcbiAgICBtaW4td2lkdGg6IDAgIWltcG9ydGFudDtcbiAgICBtaW4taGVpZ2h0OiAwICFpbXBvcnRhbnQ7XG4gICAgbWF4LXdpZHRoOiBub25lICFpbXBvcnRhbnQ7XG4gICAgbWF4LWhlaWdodDogbm9uZSAhaW1wb3J0YW50O1xufVxuXG5idXR0b24ubXotYnV0dG9uOmJlZm9yZSB7XG4gICAgZGlzcGxheTogaW5saW5lO1xuICAgIHBvc2l0aW9uOiBzdGF0aWM7XG4gICAgY29sb3I6IGluaGVyaXQgIWltcG9ydGFudDtcbiAgICBmb250OiBpbmhlcml0ICFpbXBvcnRhbnQ7XG4gICAgLXdlYmtpdC1mb250LXNtb290aGluZzogaW5oZXJpdCAhaW1wb3J0YW50O1xufVxuXG5idXR0b24ubXotYnV0dG9uLm16LWJ1dHRvbi1wcmV2LFxuYnV0dG9uLm16LWJ1dHRvbi5tei1idXR0b24tbmV4dCB7XG4gICAgbWFyZ2luOiBhdXRvIDEwcHggIWltcG9ydGFudDtcbiAgICB0b3A6IDAgIWltcG9ydGFudDtcbiAgICBib3R0b206IDAgIWltcG9ydGFudDtcbiAgICBvdmVyZmxvdzogaGlkZGVuICFpbXBvcnRhbnQ7XG59XG5cbmJ1dHRvbi5tei1idXR0b24ubXotYnV0dG9uLXByZXYge1xuICAgIGxlZnQ6IDAgIWltcG9ydGFudDtcbn1cblxuYnV0dG9uLm16LWJ1dHRvbi5tei1idXR0b24tbmV4dCB7XG4gICAgcmlnaHQ6IDAgIWltcG9ydGFudDtcbn1cblxuYnV0dG9uLm16LWJ1dHRvbi5tei1idXR0b24tY2xvc2Uge1xuICAgIGZvbnQtc2l6ZTogMjZweCAhaW1wb3J0YW50O1xuICAgIG1hcmdpbjogMTBweCAhaW1wb3J0YW50O1xuICAgIHRvcDogMCAhaW1wb3J0YW50O1xuICAgIHJpZ2h0OiAwICFpbXBvcnRhbnQ7XG4gICAgei1pbmRleDogOTUgIWltcG9ydGFudDtcbn1cblxuOnJvb3Q6bm90KC5tb2JpbGUtbWFnaWMpIGJ1dHRvbi5tei1idXR0b24ge1xuICAgIGNvbG9yOiByZ2JhKDE4MCwgMTgwLCAxODAsIC43NSkgIWltcG9ydGFudDtcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogc2NhbGUoLjg1KSAhaW1wb3J0YW50O1xuICAgIHRyYW5zZm9ybTogc2NhbGUoLjg1KSAhaW1wb3J0YW50O1xuICAgIC13ZWJraXQtdHJhbnNpdGlvbjogY29sb3IgLjI1cywgYm9yZGVyLWNvbG9yIC4yNXMsIC13ZWJraXQtdHJhbnNmb3JtIC4yNXMgIWltcG9ydGFudDtcbiAgICB0cmFuc2l0aW9uOiBjb2xvciAuMjVzLCBib3JkZXItY29sb3IgLjI1cywgdHJhbnNmb3JtIC4yNXMgIWltcG9ydGFudDtcbn1cblxuOnJvb3Q6bm90KC5tb2JpbGUtbWFnaWMpIGJ1dHRvbi5tei1idXR0b246aG92ZXIge1xuICAgIGNvbG9yOiByZ2JhKDE4MCwgMTgwLCAxODAsIDEpICFpbXBvcnRhbnQ7XG4gICAgYm9yZGVyLWNvbG9yOiByZ2JhKDE4MCwgMTgwLCAxODAsIC42KSAhaW1wb3J0YW50O1xuICAgIC13ZWJraXQtdHJhbnNmb3JtOiBzY2FsZSgxKSAhaW1wb3J0YW50O1xuICAgIHRyYW5zZm9ybTogc2NhbGUoMSkgIWltcG9ydGFudDtcbn1cblxuLm1vYmlsZS1tYWdpYyBidXR0b24ubXotYnV0dG9uIHtcbiAgICAtd2Via2l0LXRyYW5zaXRpb246IC13ZWJraXQtdHJhbnNmb3JtIC4xcyAhaW1wb3J0YW50O1xuICAgIHRyYW5zaXRpb246IHRyYW5zZm9ybSAuMXMgIWltcG9ydGFudDtcbn1cblxuLm1vYmlsZS1tYWdpYyBidXR0b24ubXotYnV0dG9uOmFjdGl2ZSB7XG4gICAgYm9yZGVyLWNvbG9yOiByZ2JhKDE4MCwgMTgwLCAxODAsIC42KSAhaW1wb3J0YW50O1xuICAgIC13ZWJraXQtdHJhbnNmb3JtOiBzY2FsZSguOTUpICFpbXBvcnRhbnQ7XG4gICAgdHJhbnNmb3JtOiBzY2FsZSguOTUpICFpbXBvcnRhbnQ7XG59XG5cbi8qYnV0dG9uLm16LWJ1dHRvbi5tei1idXR0b24tY2xvc2U6YmVmb3JlIHsgY29udGVudDogXCJcXGEwMDFcIjsgfVxuYnV0dG9uLm16LWJ1dHRvbi5tei1idXR0b24tcHJldjpiZWZvcmUgeyBjb250ZW50OiBcIlxcYTAwMlwiOyAgfVxuYnV0dG9uLm16LWJ1dHRvbi5tei1idXR0b24tbmV4dDpiZWZvcmUgeyBjb250ZW50OiBcIlxcYTAwM1wiOyB9Ki9cblxuYnV0dG9uLm16LWJ1dHRvbi5tei1idXR0b24tY2xvc2U6YmVmb3JlIHtcbiAgICBmb250LWZhbWlseTogRm9udEF3ZXNvbWUgIWltcG9ydGFudDtcbiAgICBjb250ZW50OiBcIlxcZjAwZFwiICFpbXBvcnRhbnQ7XG59XG5cbmJ1dHRvbi5tei1idXR0b24ubXotYnV0dG9uLXByZXY6YmVmb3JlIHtcbiAgICBmb250LWZhbWlseTogRm9udEF3ZXNvbWUgIWltcG9ydGFudDtcbiAgICBjb250ZW50OiBcIlxcZjEwNFwiICFpbXBvcnRhbnQ7XG59XG5cbmJ1dHRvbi5tei1idXR0b24ubXotYnV0dG9uLW5leHQ6YmVmb3JlIHtcbiAgICBmb250LWZhbWlseTogRm9udEF3ZXNvbWUgIWltcG9ydGFudDtcbiAgICBjb250ZW50OiBcIlxcZjEwNVwiICFpbXBvcnRhbnQ7XG59XG5cbkBtZWRpYSBzY3JlZW4gYW5kIChtYXgtZGV2aWNlLXdpZHRoOiA3NjdweCkge1xuICAgIGJ1dHRvbi5tei1idXR0b24tcHJldixcbiAgICBidXR0b24ubXotYnV0dG9uLW5leHQge1xuICAgICAgICBkaXNwbGF5OiBub25lICFpbXBvcnRhbnQ7XG4gICAgfVxuXG4gICAgLm1vYmlsZS1tYWdpYyAubXotZXhwYW5kIGJ1dHRvbi5tei1idXR0b24ge1xuICAgICAgICB3aWR0aDogNDRweCAhaW1wb3J0YW50O1xuICAgICAgICBoZWlnaHQ6IDQ0cHggIWltcG9ydGFudDtcbiAgICAgICAgZm9udC1zaXplOiAxOHB4ICFpbXBvcnRhbnQ7XG4gICAgICAgIGNvbG9yOiByZ2JhKDI1NSwgMjU1LCAyNTUsIDAuOCkgIWltcG9ydGFudDtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogcmdiYSg0OSw1MSw2MSwwLjMpICFpbXBvcnRhbnQ7XG4gICAgICAgIGJvcmRlci1jb2xvcjogdHJhbnNwYXJlbnQgIWltcG9ydGFudDtcbiAgICB9XG59XG5cbi5sdC1pZTktbWFnaWMgYnV0dG9uLm16LWJ1dHRvbiB7XG4gICAgYm9yZGVyOiAwO1xuICAgIGZpbHRlcjogYWxwaGEob3BhY2l0eT03NSk7XG59XG5cbi5sdC1pZTktbWFnaWMgYnV0dG9uLm16LWJ1dHRvbjpob3ZlciB7XG4gICAgZmlsdGVyOiBhbHBoYShvcGFjaXR5PTEwMCk7XG59XG5cblxuLyoqXG4gKiBUaHVtYm5haWxzXG4gKi9cblxuLyogVGh1bWJuYWlscyBvbiB0aGUgcGFnZSAqL1xuYVtkYXRhLXpvb20taWRdLFxuLm16LXRodW1iLCAubXotdGh1bWI6Zm9jdXMge1xuICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICBsaW5lLWhlaWdodDogMDtcbiAgICBvdXRsaW5lOiBub25lO1xufVxuXG5hW2RhdGEtem9vbS1pZF0gaW1nLFxuLm16LXRodW1iIGltZyB7XG4gICAgYm9yZGVyOiAwO1xuICAgIGJveC1zaGFkb3c6IDAgMCAxcHggMHB4IHJnYmEoMCwwLDAsMC4zKTtcbiAgICBib3gtc2l6aW5nOiBib3JkZXItYm94O1xufVxuXG4ubXotdGh1bWI6aG92ZXI6bm90KC5tei10aHVtYi1zZWxlY3RlZCkgaW1nIHtcbiAgICAtd2Via2l0LWZpbHRlcjogYnJpZ2h0bmVzcyg3NSUpO1xuICAgIGZpbHRlcjogYnJpZ2h0bmVzcyg3NSUpO1xufVxuXG4ubXotdGh1bWItc2VsZWN0ZWQgaW1nIHtcbiAgICAtd2Via2l0LWZpbHRlcjogYnJpZ2h0bmVzcyg2MCUpO1xuICAgIGZpbHRlcjogYnJpZ2h0bmVzcyg2MCUpO1xufVxuXG4ubm8tY3NzZmlsdGVycy1tYWdpYyAubXotdGh1bWI6aG92ZXIsXG4ubm8tY3NzZmlsdGVycy1tYWdpYyAubXotdGh1bWIubXotdGh1bWItc2VsZWN0ZWQge1xuICAgIGJhY2tncm91bmQ6ICMwMDA7XG59XG5cbi5uby1jc3NmaWx0ZXJzLW1hZ2ljIC5tei10aHVtYjpob3Zlcjpub3QoLm16LXRodW1iLXNlbGVjdGVkKSBpbWcge1xuICAgIG9wYWNpdHk6IC43NTtcbiAgICBmaWx0ZXI6IGFscGhhKG9wYWNpdHk9NzUpO1xufVxuXG4ubm8tY3NzZmlsdGVycy1tYWdpYyAubXotdGh1bWItc2VsZWN0ZWQgaW1nIHtcbiAgICBvcGFjaXR5OiAuNjtcbiAgICBmaWx0ZXI6IGFscGhhKG9wYWNpdHk9NjApO1xufVxuXG4uaWU5LW1hZ2ljIC5tei10aHVtYiBpbWcge1xuICAgIGJveC1zaGFkb3c6IDAgMCA0cHggMHB4IHJnYmEoMCwwLDAsMC4zKTtcbn1cblxuLyogVGh1bWJuYWlscyBpbiBleHBhbmRlZCB2aWV3ICovXG4ubXotZXhwYW5kLXRodW1ibmFpbHMge1xuICAgIHotaW5kZXg6IDUwO1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICBib3R0b206IDA7XG4gICAgbGVmdDogNjVweDtcbiAgICByaWdodDogNjVweDtcbiAgICBoZWlnaHQ6IDgwcHg7XG4gICAgcGFkZGluZzogMTBweCAwO1xuICAgIGJveC1zaXppbmc6IGJvcmRlci1ib3g7XG59XG5cbi5tei1leHBhbmQtdGh1bWJuYWlscyAubWFnaWMtdGh1bWJzIC5tYWdpYy10aHVtYiB7XG4gICAgcGFkZGluZzogMTBweCAycHg7XG59XG5cbi5tei1leHBhbmQtdGh1bWJuYWlscyAubWFnaWMtdGh1bWIgPiBpbWcge1xuICAgIGN1cnNvcjogcG9pbnRlcjtcbiAgICBoZWlnaHQ6IDQwcHg7XG4gICAgYm94LXNoYWRvdzogMCAwIDVweCAxcHggcmdiYSgwLDAsMCwwLjMpO1xufVxuXG4ubXotZXhwYW5kLXRodW1ibmFpbHMgLm1hZ2ljLXRodW1iOm5vdCgubWFnaWMtdGh1bWItc2VsZWN0ZWQpID4gaW1nOmhvdmVyIHtcbiAgICAtd2Via2l0LWZpbHRlcjogYnJpZ2h0bmVzcyg3MCUpO1xuICAgIGZpbHRlcjogYnJpZ2h0bmVzcyg3MCUpO1xufVxuXG4ubXotZXhwYW5kLXRodW1ibmFpbHMgLm1hZ2ljLXRodW1iLXNlbGVjdGVkIGltZyB7XG4gICAgLXdlYmtpdC1maWx0ZXI6IGJyaWdodG5lc3MoNTAlKTtcbiAgICBmaWx0ZXI6IGJyaWdodG5lc3MoNTAlKTtcbn1cblxuLm16LWV4cGFuZC10aHVtYm5haWxzIC5tYWdpYy10aHVtYnMgLm1hZ2ljLXRodW1icy1idXR0b24ge1xuICAgIGJveC1zaGFkb3c6IG5vbmU7XG59XG5cbi5tei1leHBhbmQtdGh1bWJuYWlscyAubWFnaWMtdGh1bWJzIC5tYWdpYy10aHVtYnMtYnV0dG9uLWRpc2FibGVkIHtcbiAgICBvcGFjaXR5OiAwO1xufVxuXG4ubm8tY3NzZmlsdGVycy1tYWdpYyAubXotZXhwYW5kLXRodW1ibmFpbHMgLm1hZ2ljLXRodW1iOmhvdmVyOm5vdCgubWFnaWMtdGh1bWItc2VsZWN0ZWQpIGltZyB7XG4gICAgb3BhY2l0eTogLjc7XG4gICAgZmlsdGVyOiBhbHBoYShvcGFjaXR5PTcwKTtcbn1cblxuLm5vLWNzc2ZpbHRlcnMtbWFnaWMgLm16LWV4cGFuZC10aHVtYm5haWxzIC5tYWdpYy10aHVtYi1zZWxlY3RlZCBpbWcge1xuICAgIG9wYWNpdHk6IC41O1xuICAgIGZpbHRlcjogYWxwaGEob3BhY2l0eT01MCk7XG59XG5cbi8qKiBIaWRlIHRodW1ibmFpbHMgaW4gZXhwYW5kZWQgdmlldyB3aXRoIC5uby1leHBhbmQtdGh1bWJuYWlscyBjbGFzcyAqKi9cbi5tei1leHBhbmQubm8tZXhwYW5kLXRodW1ibmFpbHMgLm16LWV4cGFuZC1zdGFnZS53aXRoLXRodW1icyAubXotaW1hZ2Utc3RhZ2Uge1xuICAgIHBhZGRpbmctYm90dG9tOiA0MHB4O1xufVxuXG4ubXotZXhwYW5kLm5vLWV4cGFuZC10aHVtYm5haWxzIC5tei1leHBhbmQtdGh1bWJuYWlscyB7XG4gICAgZGlzcGxheTogbm9uZTtcbn1cblxuLm1vYmlsZS1tYWdpYyAubXotZXhwYW5kLm5vLWV4cGFuZC10aHVtYm5haWxzIC5tei1leHBhbmQtc3RhZ2Uud2l0aC10aHVtYnMgLm16LWltYWdlLXN0YWdlIHtcbiAgICBwYWRkaW5nOiAwO1xufVxuXG4ubWFnaWMtdGh1bWJzLFxuLm1hZ2ljLXRodW1icyAubWFnaWMtdGh1bWJzLXdyYXBwZXIsXG4ubWFnaWMtdGh1bWJzIHVsLFxuLm1hZ2ljLXRodW1icyBsaSxcbi5tYWdpYy10aHVtYnMgbGk6YmVmb3JlLFxuLm1hZ2ljLXRodW1icyBsaTphZnRlcixcbi5tYWdpYy10aHVtYnMgbGkgaW1nLFxuLm1hZ2ljLXRodW1icyAubWFnaWMtdGh1bWJzLWJ1dHRvbiB7XG4gICAgbWFyZ2luOiAwO1xuICAgIHBhZGRpbmc6IDA7XG4gICAgb3V0bGluZTogMDtcbiAgICAtd2Via2l0LWJveC1zaXppbmc6IGJvcmRlci1ib3g7XG4gICAgYm94LXNpemluZzogYm9yZGVyLWJveDtcbn1cblxuLm1hZ2ljLXRodW1icyB7XG4gICAgZGlyZWN0aW9uOiBsdHI7XG4gICAgb3ZlcmZsb3c6IHZpc2libGU7XG4gICAgei1pbmRleDogMTAwO1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICBsZWZ0OiAwO1xuICAgIHRvcDogMDtcbiAgICBwYWRkaW5nOiAwIDMwcHg7XG4gICAgLXdlYmtpdC11c2VyLXNlbGVjdDogbm9uZTtcbiAgICAtbW96LXVzZXItc2VsZWN0OiBub25lO1xuICAgIC1tcy11c2VyLXNlbGVjdDogbm9uZTtcbiAgICB1c2VyLXNlbGVjdDogbm9uZTtcbiAgICAtd2Via2l0LXRvdWNoLWNhbGxvdXQ6IG5vbmU7XG4gICAgLXdlYmtpdC10YXAtaGlnaGxpZ2h0LWNvbG9yOiB0cmFuc3BhcmVudDtcbiAgICAtbXMtdG91Y2gtYWN0aW9uOiBub25lO1xuICAgIHRvdWNoLWFjdGlvbjogbm9uZTtcbn1cblxuLm1hZ2ljLXRodW1icyB7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgaGVpZ2h0OiAxMDAlO1xuICAgIHdoaXRlLXNwYWNlOiBub3dyYXA7XG59XG5cbi5tYWdpYy10aHVtYnMubm8tYnV0dG9ucyB7XG4gICAgcGFkZGluZzogMCAhaW1wb3J0YW50O1xufVxuXG4ubWFnaWMtdGh1bWJzLXdyYXBwZXIge1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIGhlaWdodDogMTAwJTtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG59XG5cbi5tYWdpYy10aHVtYnMgdWwge1xuICAgIGxpc3Qtc3R5bGU6IG5vbmU7XG4gICAgZm9udC1zaXplOiAwO1xuICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlO1xuICAgIGhlaWdodDogMTAwJTtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgd2hpdGUtc3BhY2U6IG5vd3JhcDtcbn1cblxuLm1hZ2ljLXRodW1icy5uby1idXR0b25zIHVsIHtcbiAgICBsZWZ0OiAwICFpbXBvcnRhbnQ7XG4gICAgcGFkZGluZzogMCAhaW1wb3J0YW50O1xuICAgIC13ZWJraXQtdHJhbnNpdGlvbjogbm9uZSAhaW1wb3J0YW50O1xuICAgIHRyYW5zaXRpb246IG5vbmUgIWltcG9ydGFudDtcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogbm9uZSAhaW1wb3J0YW50O1xuICAgIC1tcy10cmFuc2Zvcm06IG5vbmUgIWltcG9ydGFudDtcbiAgICB0cmFuc2Zvcm06IG5vbmUgIWltcG9ydGFudDtcbn1cblxuXG4ubWFnaWMtdGh1bWJzIHVsIGxpIHtcbiAgICBtYXJnaW46IDAgNHB4O1xuICAgIGhlaWdodDogMTAwJTtcbiAgICB3aWR0aDogYXV0bztcbiAgICB2ZXJ0aWNhbC1hbGlnbjogdG9wO1xuICAgIGxpbmUtaGVpZ2h0OiAwO1xuICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbn1cblxuLm1hZ2ljLXRodW1icyB1bCBsaTphZnRlciB7XG4gICAgY29udGVudDogJyc7XG4gICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgIHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7XG4gICAgaGVpZ2h0OiAxMDAlO1xuICAgIHdpZHRoOiAwO1xufVxuXG4ubWFnaWMtdGh1bWJzIHVsIGxpID4gaW1nIHtcbiAgICB3aWR0aDogYXV0bztcbiAgICBoZWlnaHQ6IGF1dG87XG4gICAgbWF4LXdpZHRoOiBub25lICFpbXBvcnRhbnQ7XG4gICAgbWF4LWhlaWdodDogMTAwJSAhaW1wb3J0YW50O1xuICAgIHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7XG59XG5cbi5pZTgtbWFnaWMgLm1hZ2ljLXRodW1icyB1bCBsaSA+IGltZyB7XG4gICAgbWF4LXdpZHRoOiBub25lICFpbXBvcnRhbnQ7XG4gICAgbWF4LWhlaWdodDogbm9uZSAhaW1wb3J0YW50O1xufVxuXG4vKiB2ZXJ0aWNhbCAqL1xuLm1hZ2ljLXRodW1icy5tYWdpYy10aHVtYnMtdmVydGljYWwge1xuICAgIGhlaWdodDogMTAwJTtcbn1cblxuLm1hZ2ljLXRodW1icy12ZXJ0aWNhbCB7XG4gICAgcGFkZGluZzogMzBweCAwO1xufVxuXG4ubWFnaWMtdGh1bWJzLXZlcnRpY2FsIHVsIHtcbiAgICBoZWlnaHQ6IGF1dG87XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgd2hpdGUtc3BhY2U6IG5vcm1hbDtcbn1cblxuLm1hZ2ljLXRodW1icy12ZXJ0aWNhbCB1bCBsaSB7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgaGVpZ2h0OiBhdXRvO1xufVxuXG4ubWFnaWMtdGh1bWJzLXZlcnRpY2FsIHVsIGxpIHtcbiAgICBtYXJnaW46IDRweCAwO1xufVxuXG4ubWFnaWMtdGh1bWJzLXZlcnRpY2FsIHVsIGxpID4gaW1nIHtcbiAgICBtYXgtd2lkdGg6IDEwMCUgIWltcG9ydGFudDtcbiAgICBtYXgtaGVpZ2h0OiBub25lICFpbXBvcnRhbnQ7XG59XG5cbi5pZTgtbWFnaWMgLm1hZ2ljLXRodW1icy12ZXJ0aWNhbCB1bCBsaSA+IGltZyB7XG4gICAgd2lkdGg6IDEwMCU7XG59XG5cbi8qKlxuICogQnV0dG9uc1xuICovXG4ubWFnaWMtdGh1bWJzIGJ1dHRvbi5tYWdpYy10aHVtYnMtYnV0dG9uIHtcbiAgICBjb2xvcjogI2I0YjRiNCAhaW1wb3J0YW50O1xuICAgIGZvbnQ6IDkwMCAyNHB4LzEgJ21hZ2ljdG9vbGJveC10aGluJyAhaW1wb3J0YW50O1xuICAgIGN1cnNvcjogcG9pbnRlcjtcbiAgICB6LWluZGV4OiA5MCAhaW1wb3J0YW50O1xuICAgIGJhY2tncm91bmQtcmVwZWF0OiBuby1yZXBlYXQ7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQgIWltcG9ydGFudDtcbiAgICBiYWNrZ3JvdW5kLWltYWdlOiBub25lO1xuICAgIGJvcmRlcjogMDtcbiAgICBib3JkZXItcmFkaXVzOiAwO1xuICAgIGJveC1zaGFkb3c6IG5vbmUgIWltcG9ydGFudDtcbiAgICBvdmVyZmxvdzogaGlkZGVuO1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICB0ZXh0LXRyYW5zZm9ybTogbm9uZSAhaW1wb3J0YW50O1xuICAgIHNwZWFrOiBub25lO1xuICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICAtd2Via2l0LWZvbnQtc21vb3RoaW5nOiBhbnRpYWxpYXNlZDtcbiAgICB3aWR0aDogMzBweDtcbiAgICBoZWlnaHQ6IDEwMCU7XG4gICAgdG9wOiAwO1xuICAgIGJvdHRvbTogMDtcbiAgICBtaW4td2lkdGg6IDAgIWltcG9ydGFudDtcbiAgICBtaW4taGVpZ2h0OiAwICFpbXBvcnRhbnQ7XG4gICAgbWF4LXdpZHRoOiBub25lICFpbXBvcnRhbnQ7XG4gICAgbWF4LWhlaWdodDogbm9uZSAhaW1wb3J0YW50O1xufVxuXG4ubWFnaWMtdGh1bWJzIGJ1dHRvbi5tYWdpYy10aHVtYnMtYnV0dG9uOmJlZm9yZSB7XG4gICAgZGlzcGxheTogaW5saW5lO1xuICAgIHBvc2l0aW9uOiBzdGF0aWM7XG4gICAgY29sb3I6IGluaGVyaXQgIWltcG9ydGFudDtcbiAgICBmb250OiBpbmhlcml0ICFpbXBvcnRhbnQ7XG4gICAgLXdlYmtpdC1mb250LXNtb290aGluZzogaW5oZXJpdCAhaW1wb3J0YW50O1xufVxuXG4ubWFnaWMtdGh1bWJzIC5tYWdpYy10aHVtYnMtYnV0dG9uLXByZXYge1xuICAgIGxlZnQ6IDA7XG59XG5cbi5tYWdpYy10aHVtYnMgLm1hZ2ljLXRodW1icy1idXR0b24tbmV4dCB7XG4gICAgcmlnaHQ6IDA7XG59XG5cbi5tYWdpYy10aHVtYnMgLm1hZ2ljLXRodW1icy1idXR0b24tcHJldjpiZWZvcmUge1xuICAgIGNvbnRlbnQ6IFwiXFxhMDAyXCI7XG59XG5cbi5tYWdpYy10aHVtYnMgLm1hZ2ljLXRodW1icy1idXR0b24tbmV4dDpiZWZvcmUge1xuICAgIGNvbnRlbnQ6IFwiXFxhMDAzXCI7XG59XG5cbjpyb290Om5vdCgubW9iaWxlLW1hZ2ljKSAubWFnaWMtdGh1bWJzIGJ1dHRvbi5tYWdpYy10aHVtYnMtYnV0dG9uIHtcbiAgICBjb2xvcjogcmdiYSgxODAsIDE4MCwgMTgwLCAuNzUpICFpbXBvcnRhbnQ7XG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHNjYWxlKC44NSkgIWltcG9ydGFudDtcbiAgICB0cmFuc2Zvcm06IHNjYWxlKC44NSkgIWltcG9ydGFudDtcbiAgICAtd2Via2l0LXRyYW5zaXRpb246IGNvbG9yIC4yNXMsIC13ZWJraXQtdHJhbnNmb3JtIC4yNXMgIWltcG9ydGFudDtcbiAgICB0cmFuc2l0aW9uOiBjb2xvciAuMjVzLCB0cmFuc2Zvcm0gLjI1cyAhaW1wb3J0YW50O1xufVxuXG46cm9vdDpub3QoLm1vYmlsZS1tYWdpYykgLm1hZ2ljLXRodW1icyBidXR0b24ubWFnaWMtdGh1bWJzLWJ1dHRvbjpob3ZlciB7XG4gICAgY29sb3I6IHJnYmEoMTgwLCAxODAsIDE4MCwgMSkgIWltcG9ydGFudDtcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogc2NhbGUoMSkgIWltcG9ydGFudDtcbiAgICB0cmFuc2Zvcm06IHNjYWxlKDEpICFpbXBvcnRhbnQ7XG59XG5cblxuLyogVmVydGljYWwgYnV0dG9ucyAqL1xuLm1hZ2ljLXRodW1icy12ZXJ0aWNhbCAubWFnaWMtdGh1bWJzLWJ1dHRvbiB7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgaGVpZ2h0OiAzMHB4O1xuICAgIGxlZnQ6IDA7XG4gICAgcmlnaHQ6IDA7XG4gICAgdG9wOiBhdXRvO1xuICAgIGJvdHRvbTogYXV0bztcbn1cblxuLm1hZ2ljLXRodW1icy12ZXJ0aWNhbCAubWFnaWMtdGh1bWJzLWJ1dHRvbi1wcmV2IHtcbiAgICB0b3A6IDA7XG59XG5cbi5tYWdpYy10aHVtYnMtdmVydGljYWwgLm1hZ2ljLXRodW1icy1idXR0b24tbmV4dCB7XG4gICAgYm90dG9tOiAwO1xufVxuXG4ubWFnaWMtdGh1bWJzLXZlcnRpY2FsIC5tYWdpYy10aHVtYnMtYnV0dG9uLXByZXY6YmVmb3JlIHtcbiAgICBjb250ZW50OiBcIlxcYTAwNVwiO1xufVxuXG4ubWFnaWMtdGh1bWJzLXZlcnRpY2FsIC5tYWdpYy10aHVtYnMtYnV0dG9uLW5leHQ6YmVmb3JlIHtcbiAgICBjb250ZW50OiBcIlxcYTAwNFwiO1xufVxuXG5cbi5tYWdpYy10aHVtYnMubm8tYnV0dG9ucyAubWFnaWMtdGh1bWJzLWJ1dHRvbiB7XG4gICAgZGlzcGxheTogbm9uZSAhaW1wb3J0YW50O1xufVxuXG4ubWFnaWMtdGh1bWJzLWJ1dHRvbi1kaXNhYmxlZCB7XG4gICAgb3BhY2l0eTogMC4yO1xuICAgIGZpbHRlcjogYWxwaGEob3BhY2l0eSA9IDIwKTtcbn1cbiIsIi8vICBGb3VuZGF0aW9uIGZvciBTaXRlcyBTZXR0aW5nc1xuLy8gIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG4vL1xuLy8gIFRhYmxlIG9mIENvbnRlbnRzOlxuLy9cbi8vICAgMS4gR2xvYmFsXG4vLyAgIDIuIEJyZWFrcG9pbnRzXG4vLyAgIDMuIFRoZSBHcmlkXG4vLyAgIDQuIEJhc2UgVHlwb2dyYXBoeVxuLy8gICA1LiBUeXBvZ3JhcGh5IEhlbHBlcnNcbi8vICAgNi4gQWJpZGVcbi8vICAgNy4gQWNjb3JkaW9uXG4vLyAgIDguIEFjY29yZGlvbiBNZW51XG4vLyAgIDkuIEJhZGdlXG4vLyAgMTAuIEJyZWFkY3J1bWJzXG4vLyAgMTEuIEJ1dHRvblxuLy8gIDEyLiBCdXR0b24gR3JvdXBcbi8vICAxMy4gQ2FsbG91dFxuLy8gIDE0LiBDYXJkXG4vLyAgMTUuIENsb3NlIEJ1dHRvblxuLy8gIDE2LiBEcmlsbGRvd25cbi8vICAxNy4gRHJvcGRvd25cbi8vICAxOC4gRHJvcGRvd24gTWVudVxuLy8gIDE5LiBGbGV4Ym94IFV0aWxpdGllc1xuLy8gIDIwLiBGb3Jtc1xuLy8gIDIxLiBMYWJlbFxuLy8gIDIyLiBNZWRpYSBPYmplY3Rcbi8vICAyMy4gTWVudVxuLy8gIDI0LiBNZXRlclxuLy8gIDI1LiBPZmYtY2FudmFzXG4vLyAgMjYuIE9yYml0XG4vLyAgMjcuIFBhZ2luYXRpb25cbi8vICAyOC4gUHJvZ3Jlc3MgQmFyXG4vLyAgMjkuIFByb3RvdHlwZSBBcnJvd1xuLy8gIDMwLiBQcm90b3R5cGUgQm9yZGVyLUJveFxuLy8gIDMxLiBQcm90b3R5cGUgQm9yZGVyLU5vbmVcbi8vICAzMi4gUHJvdG90eXBlIEJvcmRlcmVkXG4vLyAgMzMuIFByb3RvdHlwZSBEaXNwbGF5XG4vLyAgMzQuIFByb3RvdHlwZSBGb250LVN0eWxpbmdcbi8vICAzNS4gUHJvdG90eXBlIExpc3QtU3R5bGUtVHlwZVxuLy8gIDM2LiBQcm90b3R5cGUgT3ZlcmZsb3dcbi8vICAzNy4gUHJvdG90eXBlIFBvc2l0aW9uXG4vLyAgMzguIFByb3RvdHlwZSBSb3VuZGVkXG4vLyAgMzkuIFByb3RvdHlwZSBTZXBhcmF0b3Jcbi8vICA0MC4gUHJvdG90eXBlIFNoYWRvd1xuLy8gIDQxLiBQcm90b3R5cGUgU2l6aW5nXG4vLyAgNDIuIFByb3RvdHlwZSBTcGFjaW5nXG4vLyAgNDMuIFByb3RvdHlwZSBUZXh0LURlY29yYXRpb25cbi8vICA0NC4gUHJvdG90eXBlIFRleHQtVHJhbnNmb3JtYXRpb25cbi8vICA0NS4gUHJvdG90eXBlIFRleHQtVXRpbGl0aWVzXG4vLyAgNDYuIFJlc3BvbnNpdmUgRW1iZWRcbi8vICA0Ny4gUmV2ZWFsXG4vLyAgNDguIFNsaWRlclxuLy8gIDQ5LiBTd2l0Y2hcbi8vICA1MC4gVGFibGVcbi8vICA1MS4gVGFic1xuLy8gIDUyLiBUaHVtYm5haWxcbi8vICA1My4gVGl0bGUgQmFyXG4vLyAgNTQuIFRvb2x0aXBcbi8vICA1NS4gVG9wIEJhclxuLy8gIDU2LiBYeSBHcmlkXG5AaW1wb3J0ICd3d3dyb290L3NyYy9jc3MvdGhpcmQtcGFydHkvZm91bmRhdGlvbl9jb21wb25lbnRzL2ZvdW5kYXRpb24tc2l0ZXMvc2Nzcy91dGlsL3V0aWwnO1xuLy92LWNsb2FrIGZvciB2dWUuanNcblt2LWNsb2FrXSB7ZGlzcGxheTogbm9uZX1cbiRjb250cmFzdC13YXJuaW5nczogZmFsc2U7XG4vLyAxLiBHbG9iYWxcbi8vIC0tLS0tLS0tLVxuLy8kZ2xvYmFsLWZvbnQtc2l6ZTogMTAwJTtcbiRnbG9iYWwtZm9udC1zaXplOiAxNHB4O1xuJGdsb2JhbC13aWR0aDogcmVtLWNhbGMoMTMwMCk7XG4vLyRnbG9iYWwtbGluZWhlaWdodDogMS4zO1xuJGdsb2JhbC1saW5laGVpZ2h0OiAxLjY7XG4kZm91bmRhdGlvbi1wYWxldHRlOiAoIHByaW1hcnk6ICMxMTUzQUQsIHNlY29uZGFyeTogIzc2NzY3Niwgc3VjY2VzczogIzNhZGI3Niwgd2FybmluZzogI2ZmYWUwMCwgYWxlcnQ6ICNjYzRiMzcsICk7XG4vL2kuZSBzZWN0aW9uIGhlYWRpbmdzXG4kbGlnaHQtZ3JheTogI2U4ZTVlNTtcbi8vaS5lLiBib3JkZXJzXG4kbWVkaXVtLWdyYXk6ICNkZGRkZGQ7XG4vL2kuZSB0ZXh0XG4kZGFyay1ncmF5OiAjNzk3OTZBO1xuJG9mZi1ibGFjazogIzMxMzEzMTtcbiRibGFjazogIzBhMGEwYTtcbiRhY2NlbnQ6ICNGOUE1MTk7XG4kZ3JlZW46ICMyRjlGNDY7XG4kcmVkOiAjY2M0YjM3O1xuJHdoaXRlOiAjZmVmZWZlO1xuJGJvZHktYmFja2dyb3VuZDojZmZmO1xuJGJvZHktZm9udC1jb2xvcjogJGJsYWNrO1xuJGJvZHktZm9udC1mYW1pbHk6SGVsdmV0aWNhLFxuQXJpYWwsXG5zYW5zLXNlcmlmO1xuJGJvZHktYW50aWFsaWFzZWQ6IHRydWU7XG4kZ2xvYmFsLW1hcmdpbjogMXJlbTtcbiRnbG9iYWwtcGFkZGluZzogMXJlbTtcbiRnbG9iYWwtcG9zaXRpb246IDFyZW07XG4kZ2xvYmFsLXdlaWdodC1ub3JtYWw6IG5vcm1hbDtcbiRnbG9iYWwtd2VpZ2h0LWJvbGQ6IGJvbGQ7XG4kZ2xvYmFsLXJhZGl1czogMC4xOHJlbTtcbiRnbG9iYWwtbWVudS1wYWRkaW5nOiAwLjdyZW0gMXJlbTtcbiRnbG9iYWwtbWVudS1uZXN0ZWQtbWFyZ2luOiAxcmVtO1xuJGdsb2JhbC10ZXh0LWRpcmVjdGlvbjogbHRyO1xuJGdsb2JhbC1mbGV4Ym94OiBmYWxzZTtcbiRnbG9iYWwtcHJvdG90eXBlLWJyZWFrcG9pbnRzOiBmYWxzZTtcbiRnbG9iYWwtY29sb3ItcGljay1jb250cmFzdC10b2xlcmFuY2U6IDA7XG4kcHJpbnQtdHJhbnNwYXJlbnQtYmFja2dyb3VuZHM6IHRydWU7XG5AaW5jbHVkZSBhZGQtZm91bmRhdGlvbi1jb2xvcnM7XG4vLyAyLiBCcmVha3BvaW50c1xuLy8gLS0tLS0tLS0tLS0tLS1cbiRicmVha3BvaW50czogKCBzbWFsbDogMCwgbWVkaXVtOiA3NjhweCwgbGFyZ2U6IDEwMjRweCwgeGxhcmdlOiAxMjAwcHgsIHh4bGFyZ2U6IDE0NDBweCwgKTtcbiRwcmludC1icmVha3BvaW50OiBsYXJnZTtcbiRicmVha3BvaW50LWNsYXNzZXM6IChzbWFsbCBtZWRpdW0gbGFyZ2UgeGxhcmdlIHh4bGFyZ2UpO1xuLy8gMy4gVGhlIEdyaWRcbi8vIC0tLS0tLS0tLS0tXG4kZ3JpZC1yb3ctd2lkdGg6ICRnbG9iYWwtd2lkdGg7XG4kZ3JpZC1jb2x1bW4tY291bnQ6IDEyO1xuJGdyaWQtY29sdW1uLWd1dHRlcjogKCBzbWFsbDogMTBweCwgbWVkaXVtOiAxNnB4LCBsYXJnZTogMTZweCwgKTtcbiRncmlkLWNvbHVtbi1hbGlnbi1lZGdlOiB0cnVlO1xuJGdyaWQtY29sdW1uLWFsaWFzOiAnY29sdW1ucyc7XG4kYmxvY2stZ3JpZC1tYXg6IDEyO1xuLy8gNC4gQmFzZSBUeXBvZ3JhcGh5XG4vLyAtLS0tLS0tLS0tLS0tLS0tLS1cbiRoZWFkZXItZm9udC1mYW1pbHk6ICRib2R5LWZvbnQtZmFtaWx5O1xuJGhlYWRlci1mb250LXdlaWdodDogJGdsb2JhbC13ZWlnaHQtYm9sZDtcbiRoZWFkZXItZm9udC1zdHlsZTogbm9ybWFsO1xuJGZvbnQtZmFtaWx5LW1vbm9zcGFjZTogQ29uc29sYXMsXG4nTGliZXJhdGlvbiBNb25vJyxcbkNvdXJpZXIsXG5tb25vc3BhY2U7XG4kaGVhZGVyLWNvbG9yOiBpbmhlcml0O1xuJGhlYWRlci1saW5laGVpZ2h0OiAxLjM7XG4kaGVhZGVyLW1hcmdpbi1ib3R0b206IDAuNXJlbTtcbiRoZWFkZXItc3R5bGVzOiAoXG4gICAgc21hbGw6IChcbiAgICAgICAgJ2gxJzogKCdmb250LXNpemUnOiAxOCksXG4gICAgICAgICdoMic6ICgnZm9udC1zaXplJzogMTYpLFxuICAgICAgICAnaDMnOiAoJ2ZvbnQtc2l6ZSc6IDE0KSxcbiAgICAgICAgJ2g0JzogKCdmb250LXNpemUnOiAxNCksXG4gICAgICAgICdoNSc6ICgnZm9udC1zaXplJzogMTQpLFxuICAgICAgICAnaDYnOiAoJ2ZvbnQtc2l6ZSc6IDE0KSxcbiAgICApLFxuICAgIG1lZGl1bTogKFxuICAgICdoMSc6ICgnZm9udC1zaXplJzogMjApLFxuICAgICdoMic6ICgnZm9udC1zaXplJzogMTYpLFxuICAgICdoMyc6ICgnZm9udC1zaXplJzogMTQpLFxuICAgICdoNCc6ICgnZm9udC1zaXplJzogMTQpLFxuICAgICdoNSc6ICgnZm9udC1zaXplJzogMTQpLFxuICAgICdoNic6ICgnZm9udC1zaXplJzogMTQpLFxuICAgICksXG4gICAgbGFyZ2U6IChcbiAgICAnaDEnOiAoJ2ZvbnQtc2l6ZSc6IDIwKSxcbiAgICAnaDInOiAoJ2ZvbnQtc2l6ZSc6IDE2KSxcbiAgICAnaDMnOiAoJ2ZvbnQtc2l6ZSc6IDE0KSxcbiAgICAnaDQnOiAoJ2ZvbnQtc2l6ZSc6IDE0KSxcbiAgICAnaDUnOiAoJ2ZvbnQtc2l6ZSc6IDE0KSxcbiAgICAnaDYnOiAoJ2ZvbnQtc2l6ZSc6IDE0KSxcbiAgICApLFxuKTtcbiRoZWFkZXItdGV4dC1yZW5kZXJpbmc6IG9wdGltaXplTGVnaWJpbGl0eTtcbiRzbWFsbC1mb250LXNpemU6IDgwJTtcbiRoZWFkZXItc21hbGwtZm9udC1jb2xvcjogJG1lZGl1bS1ncmF5O1xuJHBhcmFncmFwaC1saW5laGVpZ2h0OiAxLjM7XG4kcGFyYWdyYXBoLW1hcmdpbi1ib3R0b206IDFyZW07XG4kcGFyYWdyYXBoLXRleHQtcmVuZGVyaW5nOiBvcHRpbWl6ZUxlZ2liaWxpdHk7XG4kY29kZS1jb2xvcjogJGJsYWNrO1xuJGNvZGUtZm9udC1mYW1pbHk6ICRmb250LWZhbWlseS1tb25vc3BhY2U7XG4kY29kZS1mb250LXdlaWdodDogJGdsb2JhbC13ZWlnaHQtbm9ybWFsO1xuJGNvZGUtYmFja2dyb3VuZDogJGxpZ2h0LWdyYXk7XG4kY29kZS1ib3JkZXI6IDFweCBzb2xpZCAkbWVkaXVtLWdyYXk7XG4kY29kZS1wYWRkaW5nOiByZW0tY2FsYygyIDUgMSk7XG4kYW5jaG9yLWNvbG9yOiAkcHJpbWFyeS1jb2xvcjtcbiRhbmNob3ItY29sb3ItaG92ZXI6IHNjYWxlLWNvbG9yKCRhbmNob3ItY29sb3IsICRsaWdodG5lc3M6IC0xNCUpO1xuJGFuY2hvci10ZXh0LWRlY29yYXRpb246IG5vbmU7XG4kYW5jaG9yLXRleHQtZGVjb3JhdGlvbi1ob3Zlcjogbm9uZTtcbiRoci13aWR0aDogJGdsb2JhbC13aWR0aDtcbiRoci1ib3JkZXI6IDFweCBzb2xpZCAkbWVkaXVtLWdyYXk7XG4kaHItbWFyZ2luOiByZW0tY2FsYygyMCkgYXV0bztcbiRsaXN0LWxpbmVoZWlnaHQ6ICRwYXJhZ3JhcGgtbGluZWhlaWdodDtcbiRsaXN0LW1hcmdpbi1ib3R0b206ICRwYXJhZ3JhcGgtbWFyZ2luLWJvdHRvbTtcbiRsaXN0LXN0eWxlLXR5cGU6IGRpc2M7XG4kbGlzdC1zdHlsZS1wb3NpdGlvbjogb3V0c2lkZTtcbiRsaXN0LXNpZGUtbWFyZ2luOiAxLjI1cmVtO1xuJGxpc3QtbmVzdGVkLXNpZGUtbWFyZ2luOiAxLjI1cmVtO1xuJGRlZm5saXN0LW1hcmdpbi1ib3R0b206IDFyZW07XG4kZGVmbmxpc3QtdGVybS13ZWlnaHQ6ICRnbG9iYWwtd2VpZ2h0LWJvbGQ7XG4kZGVmbmxpc3QtdGVybS1tYXJnaW4tYm90dG9tOiAwLjNyZW07XG4kYmxvY2txdW90ZS1jb2xvcjogJGRhcmstZ3JheTtcbiRibG9ja3F1b3RlLXBhZGRpbmc6IHJlbS1jYWxjKDkgMjAgMCAxOSk7XG4kYmxvY2txdW90ZS1ib3JkZXI6IDFweCBzb2xpZCAkbWVkaXVtLWdyYXk7XG4kY2l0ZS1mb250LXNpemU6IHJlbS1jYWxjKDEzKTtcbiRjaXRlLWNvbG9yOiAkZGFyay1ncmF5O1xuJGNpdGUtcHNldWRvLWNvbnRlbnQ6ICdcXDIwMTQgXFwwMDIwJztcbiRrZXlzdHJva2UtZm9udDogJGZvbnQtZmFtaWx5LW1vbm9zcGFjZTtcbiRrZXlzdHJva2UtY29sb3I6ICRibGFjaztcbiRrZXlzdHJva2UtYmFja2dyb3VuZDogJGxpZ2h0LWdyYXk7XG4ka2V5c3Ryb2tlLXBhZGRpbmc6IHJlbS1jYWxjKDIgNCAwKTtcbiRrZXlzdHJva2UtcmFkaXVzOiAkZ2xvYmFsLXJhZGl1cztcbiRhYmJyLXVuZGVybGluZTogMXB4IGRvdHRlZCAkYmxhY2s7XG4vLyA1LiBUeXBvZ3JhcGh5IEhlbHBlcnNcbi8vIC0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuJGxlYWQtZm9udC1zaXplOiAkZ2xvYmFsLWZvbnQtc2l6ZSAqIDEuMjU7XG4kbGVhZC1saW5laGVpZ2h0OiAxLjY7XG4kc3ViaGVhZGVyLWxpbmVoZWlnaHQ6IDEuNDtcbiRzdWJoZWFkZXItY29sb3I6ICRkYXJrLWdyYXk7XG4kc3ViaGVhZGVyLWZvbnQtd2VpZ2h0OiAkZ2xvYmFsLXdlaWdodC1ub3JtYWw7XG4kc3ViaGVhZGVyLW1hcmdpbi10b3A6IDAuMnJlbTtcbiRzdWJoZWFkZXItbWFyZ2luLWJvdHRvbTogMC41cmVtO1xuJHN0YXQtZm9udC1zaXplOiAyLjVyZW07XG4vLyA2LiBBYmlkZVxuLy8gLS0tLS0tLS1cbiRhYmlkZS1pbnB1dHM6IHRydWU7XG4kYWJpZGUtbGFiZWxzOiB0cnVlO1xuJGlucHV0LWJhY2tncm91bmQtaW52YWxpZDogZ2V0LWNvbG9yKGFsZXJ0KTtcbiRmb3JtLWxhYmVsLWNvbG9yLWludmFsaWQ6IGdldC1jb2xvcihhbGVydCk7XG4kaW5wdXQtZXJyb3ItY29sb3I6IGdldC1jb2xvcihhbGVydCk7XG4kaW5wdXQtZXJyb3ItZm9udC1zaXplOiByZW0tY2FsYygxMik7XG4kaW5wdXQtZXJyb3ItZm9udC13ZWlnaHQ6ICRnbG9iYWwtd2VpZ2h0LWJvbGQ7XG4vLyA3LiBBY2NvcmRpb25cbi8vIC0tLS0tLS0tLS0tLVxuJGFjY29yZGlvbi1iYWNrZ3JvdW5kOiAkd2hpdGU7XG4kYWNjb3JkaW9uLXBsdXNtaW51czogdHJ1ZTtcbiRhY2NvcmRpb24tdGl0bGUtZm9udC1zaXplOiByZW0tY2FsYygxMik7XG4kYWNjb3JkaW9uLWl0ZW0tY29sb3I6ICRwcmltYXJ5LWNvbG9yO1xuJGFjY29yZGlvbi1pdGVtLWJhY2tncm91bmQtaG92ZXI6ICRsaWdodC1ncmF5O1xuJGFjY29yZGlvbi1pdGVtLXBhZGRpbmc6IDEuMjVyZW0gMXJlbTtcbiRhY2NvcmRpb24tY29udGVudC1iYWNrZ3JvdW5kOiAkd2hpdGU7XG4kYWNjb3JkaW9uLWNvbnRlbnQtYm9yZGVyOiAxcHggc29saWQgJG1lZGl1bS1ncmF5O1xuJGFjY29yZGlvbi1jb250ZW50LWNvbG9yOiAkYm9keS1mb250LWNvbG9yO1xuJGFjY29yZGlvbi1jb250ZW50LXBhZGRpbmc6IDFyZW07XG4vLyA4LiBBY2NvcmRpb24gTWVudVxuLy8gLS0tLS0tLS0tLS0tLS0tLS1cbiRhY2NvcmRpb25tZW51LXBhZGRpbmc6ICRnbG9iYWwtbWVudS1wYWRkaW5nO1xuJGFjY29yZGlvbm1lbnUtbmVzdGVkLW1hcmdpbjogJGdsb2JhbC1tZW51LW5lc3RlZC1tYXJnaW47XG4kYWNjb3JkaW9ubWVudS1zdWJtZW51LXBhZGRpbmc6ICRhY2NvcmRpb25tZW51LXBhZGRpbmc7XG4kYWNjb3JkaW9ubWVudS1hcnJvd3M6IHRydWU7XG4kYWNjb3JkaW9ubWVudS1hcnJvdy1jb2xvcjogJHByaW1hcnktY29sb3I7XG4kYWNjb3JkaW9ubWVudS1pdGVtLWJhY2tncm91bmQ6IG51bGw7XG4kYWNjb3JkaW9ubWVudS1ib3JkZXI6IG51bGw7XG4kYWNjb3JkaW9ubWVudS1zdWJtZW51LXRvZ2dsZS1iYWNrZ3JvdW5kOiBudWxsO1xuJGFjY29yZGlvbi1zdWJtZW51LXRvZ2dsZS1ib3JkZXI6ICRhY2NvcmRpb25tZW51LWJvcmRlcjtcbiRhY2NvcmRpb25tZW51LXN1Ym1lbnUtdG9nZ2xlLXdpZHRoOiA0MHB4O1xuJGFjY29yZGlvbm1lbnUtc3VibWVudS10b2dnbGUtaGVpZ2h0OiAkYWNjb3JkaW9ubWVudS1zdWJtZW51LXRvZ2dsZS13aWR0aDtcbiRhY2NvcmRpb25tZW51LWFycm93LXNpemU6IDZweDtcbi8vIDkuIEJhZGdlXG4vLyAtLS0tLS0tLVxuJGJhZGdlLWJhY2tncm91bmQ6ICRwcmltYXJ5LWNvbG9yO1xuJGJhZGdlLWNvbG9yOiAkd2hpdGU7XG4kYmFkZ2UtY29sb3ItYWx0OiAkYmxhY2s7XG4vLyRiYWRnZS1wYWxldHRlOiAkZm91bmRhdGlvbi1wYWxldHRlO1xuJGJhZGdlLXBhbGV0dGU6IG1hcC1tZXJnZSgkZm91bmRhdGlvbi1wYWxldHRlLCAoXG4gICBvZmYtYmxhY2s6ICRvZmYtYmxhY2ssXG4gICAgYWNjZW50OiAkYWNjZW50LFxuICAgIGdyZWVuOiAkZ3JlZW4sXG4gICAgcmVkOiAkcmVkXG4pKSAhZGVmYXVsdDtcblxuJGJhZGdlLXBhZGRpbmc6IDAuM2VtO1xuJGJhZGdlLW1pbndpZHRoOiAyLjFlbTtcbiRiYWRnZS1mb250LXNpemU6IDAuNjVyZW07XG4vLyAxMC4gQnJlYWRjcnVtYnNcbi8vIC0tLS0tLS0tLS0tLS0tLVxuJGJyZWFkY3J1bWJzLW1hcmdpbjogMC41cmVtIDAgMC41cmVtIDA7XG4kYnJlYWRjcnVtYnMtaXRlbS1mb250LXNpemU6IHJlbS1jYWxjKDEzcHgpO1xuJGJyZWFkY3J1bWJzLWl0ZW0tY29sb3I6ICRvZmYtYmxhY2s7XG4kYnJlYWRjcnVtYnMtaXRlbS1jb2xvci1jdXJyZW50OiAkYmxhY2s7XG4kYnJlYWRjcnVtYnMtaXRlbS1jb2xvci1kaXNhYmxlZDogJG1lZGl1bS1ncmF5O1xuJGJyZWFkY3J1bWJzLWl0ZW0tbWFyZ2luOiAwLjI1cmVtO1xuJGJyZWFkY3J1bWJzLWl0ZW0tdXBwZXJjYXNlOiBmYWxzZTtcbiRicmVhZGNydW1icy1pdGVtLXNlcGFyYXRvcjogdHJ1ZTtcbiRicmVhZGNydW1icy1pdGVtLXNlcGFyYXRvci1pdGVtOiAnLyc7XG4kYnJlYWRjcnVtYnMtaXRlbS1zZXBhcmF0b3ItaXRlbS1ydGw6ICdcXFxcJztcbiRicmVhZGNydW1icy1pdGVtLXNlcGFyYXRvci1jb2xvcjogJGRhcmstZ3JheTtcbi8vIDExLiBCdXR0b25cbi8vIC0tLS0tLS0tLS1cbiRidXR0b24tZm9udC1mYW1pbHk6IGluaGVyaXQ7XG4kYnV0dG9uLXBhZGRpbmc6IDAuNmVtIDAuOTVlbTtcbiRidXR0b24tbWFyZ2luOiAwIDAgJGdsb2JhbC1tYXJnaW4gMDtcbiRidXR0b24tZmlsbDogc29saWQ7XG4kYnV0dG9uLWJhY2tncm91bmQ6ICRwcmltYXJ5LWNvbG9yO1xuJGJ1dHRvbi1iYWNrZ3JvdW5kLWhvdmVyOiBzY2FsZS1jb2xvcigkYnV0dG9uLWJhY2tncm91bmQsICRsaWdodG5lc3M6IC0xNSUpO1xuJGJ1dHRvbi1jb2xvcjogJHdoaXRlO1xuJGJ1dHRvbi1jb2xvci1hbHQ6ICR3aGl0ZTtcbiRidXR0b24tcmFkaXVzOiAkZ2xvYmFsLXJhZGl1cztcbiRidXR0b24taG9sbG93LWJvcmRlci13aWR0aDogMXB4O1xuJGJ1dHRvbi1zaXplczogKCB0aW55OiAwLjZyZW0sIHNtYWxsOiAwLjc1cmVtLCBkZWZhdWx0OiAxcmVtLCBsYXJnZTogMS4zNXJlbSwgKTtcbi8vJGJ1dHRvbi1wYWxldHRlOiAkZm91bmRhdGlvbi1wYWxldHRlO1xuXG4kYnV0dG9uLXBhbGV0dGU6IG1hcC1tZXJnZSgkZm91bmRhdGlvbi1wYWxldHRlLCAoXG4gICAgb2ZmLWJsYWNrOiAkb2ZmLWJsYWNrLFxuICAgIGxpZ2h0LWdyYXk6ICRsaWdodC1ncmF5LFxuICAgIGFjY2VudDogJGFjY2VudCxcbiAgICBncmVlbjogJGdyZWVuLFxuICAgIHJlZDogJHJlZFxuKSkgIWRlZmF1bHQ7XG5cbiRidXR0b24tb3BhY2l0eS1kaXNhYmxlZDogMC4yNTtcbiRidXR0b24tYmFja2dyb3VuZC1ob3Zlci1saWdodG5lc3M6IC0yMCU7XG4kYnV0dG9uLWhvbGxvdy1ob3Zlci1saWdodG5lc3M6IC01MCU7XG4kYnV0dG9uLXRyYW5zaXRpb246IGJhY2tncm91bmQtY29sb3IgMC4yNXMgZWFzZS1vdXQsXG5jb2xvciAwLjI1cyBlYXNlLW91dDtcbi8vIDEyLiBCdXR0b24gR3JvdXBcbi8vIC0tLS0tLS0tLS0tLS0tLS1cbiRidXR0b25ncm91cC1tYXJnaW46IDFyZW07XG4kYnV0dG9uZ3JvdXAtc3BhY2luZzogMXB4O1xuJGJ1dHRvbmdyb3VwLWNoaWxkLXNlbGVjdG9yOiAnLmJ1dHRvbic7XG4kYnV0dG9uZ3JvdXAtZXhwYW5kLW1heDogNjtcbiRidXR0b25ncm91cC1yYWRpdXMtb24tZWFjaDogdHJ1ZTtcbi8vIDEzLiBDYWxsb3V0XG4vLyAtLS0tLS0tLS0tLVxuJGNhbGxvdXQtYmFja2dyb3VuZDogJHdoaXRlO1xuJGNhbGxvdXQtYmFja2dyb3VuZC1mYWRlOiA4NSU7XG4kY2FsbG91dC1ib3JkZXI6IDFweCBzb2xpZCByZ2JhKCRibGFjaywgMC4yNSk7XG4kY2FsbG91dC1tYXJnaW46IDAgMCAxcmVtIDA7XG4kY2FsbG91dC1wYWRkaW5nOiAxcmVtO1xuJGNhbGxvdXQtZm9udC1jb2xvcjogJGJvZHktZm9udC1jb2xvcjtcbiRjYWxsb3V0LWZvbnQtY29sb3ItYWx0OiAkYm9keS1iYWNrZ3JvdW5kO1xuJGNhbGxvdXQtcmFkaXVzOiAkZ2xvYmFsLXJhZGl1cztcbiRjYWxsb3V0LWxpbmstdGludDogMzAlO1xuLy8gMTQuIENhcmRcbi8vIC0tLS0tLS0tXG4kY2FyZC1iYWNrZ3JvdW5kOiAkd2hpdGU7XG4kY2FyZC1mb250LWNvbG9yOiAkYm9keS1mb250LWNvbG9yO1xuJGNhcmQtZGl2aWRlci1iYWNrZ3JvdW5kOiAkbGlnaHQtZ3JheTtcbiRjYXJkLWJvcmRlcjogMXB4IHNvbGlkICRtZWRpdW0tZ3JheTtcbiRjYXJkLXNoYWRvdzogbm9uZTtcbiRjYXJkLWJvcmRlci1yYWRpdXM6ICRnbG9iYWwtcmFkaXVzO1xuJGNhcmQtcGFkZGluZzogJGdsb2JhbC1wYWRkaW5nO1xuJGNhcmQtbWFyZ2luLWJvdHRvbTogJGdsb2JhbC1tYXJnaW47XG4vLyAxNS4gQ2xvc2UgQnV0dG9uXG4vLyAtLS0tLS0tLS0tLS0tLS0tXG4kY2xvc2VidXR0b24tcG9zaXRpb246IHJpZ2h0IHRvcDtcbiRjbG9zZWJ1dHRvbi1vZmZzZXQtaG9yaXpvbnRhbDogKCBzbWFsbDogMC42NnJlbSwgbWVkaXVtOiAxcmVtLCApO1xuJGNsb3NlYnV0dG9uLW9mZnNldC12ZXJ0aWNhbDogKCBzbWFsbDogMC4zM2VtLCBtZWRpdW06IDAuNXJlbSwgKTtcbiRjbG9zZWJ1dHRvbi1zaXplOiAoIHNtYWxsOiAxLjVlbSwgbWVkaXVtOiAyZW0sICk7XG4kY2xvc2VidXR0b24tbGluZWhlaWdodDogMTtcbiRjbG9zZWJ1dHRvbi1jb2xvcjogJGRhcmstZ3JheTtcbiRjbG9zZWJ1dHRvbi1jb2xvci1ob3ZlcjogJGJsYWNrO1xuLy8gMTYuIERyaWxsZG93blxuLy8gLS0tLS0tLS0tLS0tLVxuJGRyaWxsZG93bi10cmFuc2l0aW9uOiB0cmFuc2Zvcm0gMC4xNXMgbGluZWFyO1xuJGRyaWxsZG93bi1hcnJvd3M6IHRydWU7XG4kZHJpbGxkb3duLXBhZGRpbmc6ICRnbG9iYWwtbWVudS1wYWRkaW5nO1xuJGRyaWxsZG93bi1uZXN0ZWQtbWFyZ2luOiAwO1xuJGRyaWxsZG93bi1iYWNrZ3JvdW5kOiAkd2hpdGU7XG4kZHJpbGxkb3duLXN1Ym1lbnUtcGFkZGluZzogJGRyaWxsZG93bi1wYWRkaW5nO1xuJGRyaWxsZG93bi1zdWJtZW51LWJhY2tncm91bmQ6ICR3aGl0ZTtcbiRkcmlsbGRvd24tYXJyb3ctY29sb3I6ICRwcmltYXJ5LWNvbG9yO1xuJGRyaWxsZG93bi1hcnJvdy1zaXplOiA2cHg7XG4vLyAxNy4gRHJvcGRvd25cbi8vIC0tLS0tLS0tLS0tLVxuJGRyb3Bkb3duLXBhZGRpbmc6IDFyZW07XG4kZHJvcGRvd24tYmFja2dyb3VuZDogJGJvZHktYmFja2dyb3VuZDtcbiRkcm9wZG93bi1ib3JkZXI6IDFweCBzb2xpZCAkbWVkaXVtLWdyYXk7XG4kZHJvcGRvd24tZm9udC1zaXplOiAxcmVtO1xuJGRyb3Bkb3duLXdpZHRoOiAzMDBweDtcbiRkcm9wZG93bi1yYWRpdXM6ICRnbG9iYWwtcmFkaXVzO1xuJGRyb3Bkb3duLXNpemVzOiAoIHRpbnk6IDEwMHB4LCBzbWFsbDogMjAwcHgsIGxhcmdlOiA0MDBweCwgKTtcbi8vIDE4LiBEcm9wZG93biBNZW51XG4vLyAtLS0tLS0tLS0tLS0tLS0tLVxuJGRyb3Bkb3dubWVudS1hcnJvd3M6IHRydWU7XG4kZHJvcGRvd25tZW51LWFycm93LWNvbG9yOiAkYW5jaG9yLWNvbG9yO1xuJGRyb3Bkb3dubWVudS1hcnJvdy1zaXplOiA2cHg7XG4kZHJvcGRvd25tZW51LWFycm93LXBhZGRpbmc6IDEuNXJlbTtcbiRkcm9wZG93bm1lbnUtbWluLXdpZHRoOiAyMDBweDtcbiRkcm9wZG93bm1lbnUtYmFja2dyb3VuZDogJHdoaXRlO1xuJGRyb3Bkb3dubWVudS1zdWJtZW51LWJhY2tncm91bmQ6ICRkcm9wZG93bm1lbnUtYmFja2dyb3VuZDtcbiRkcm9wZG93bm1lbnUtcGFkZGluZzogJGdsb2JhbC1tZW51LXBhZGRpbmc7XG4kZHJvcGRvd25tZW51LW5lc3RlZC1tYXJnaW46IDA7XG4kZHJvcGRvd25tZW51LXN1Ym1lbnUtcGFkZGluZzogJGRyb3Bkb3dubWVudS1wYWRkaW5nO1xuJGRyb3Bkb3dubWVudS1ib3JkZXI6IDFweCBzb2xpZCAkbWVkaXVtLWdyYXk7XG4kZHJvcGRvd24tbWVudS1pdGVtLWNvbG9yLWFjdGl2ZTogZ2V0LWNvbG9yKHByaW1hcnkpO1xuJGRyb3Bkb3duLW1lbnUtaXRlbS1iYWNrZ3JvdW5kLWFjdGl2ZTogdHJhbnNwYXJlbnQ7XG4vLyAxOS4gRmxleGJveCBVdGlsaXRpZXNcbi8vIC0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuJGZsZXgtc291cmNlLW9yZGVyaW5nLWNvdW50OiA2O1xuJGZsZXhib3gtcmVzcG9uc2l2ZS1icmVha3BvaW50czogdHJ1ZTtcbi8vIDIwLiBGb3Jtc1xuLy8gLS0tLS0tLS0tXG4kZmllbGRzZXQtYm9yZGVyOiAxcHggc29saWQgJG1lZGl1bS1ncmF5O1xuJGZpZWxkc2V0LXBhZGRpbmc6IHJlbS1jYWxjKDIwKTtcbiRmaWVsZHNldC1tYXJnaW46IHJlbS1jYWxjKDE4IDApO1xuJGxlZ2VuZC1wYWRkaW5nOiByZW0tY2FsYygwIDMpO1xuJGZvcm0tc3BhY2luZzogcmVtLWNhbGMoMTYpO1xuJGhlbHB0ZXh0LWNvbG9yOiAkYmxhY2s7XG4kaGVscHRleHQtZm9udC1zaXplOiByZW0tY2FsYygxMyk7XG4kaGVscHRleHQtZm9udC1zdHlsZTogaXRhbGljO1xuJGlucHV0LXByZWZpeC1jb2xvcjogJGJsYWNrO1xuJGlucHV0LXByZWZpeC1iYWNrZ3JvdW5kOiAkbGlnaHQtZ3JheTtcbiRpbnB1dC1wcmVmaXgtYm9yZGVyOiAxcHggc29saWQgJG1lZGl1bS1ncmF5O1xuJGlucHV0LXByZWZpeC1wYWRkaW5nOiAxcmVtO1xuJGZvcm0tbGFiZWwtY29sb3I6ICRibGFjaztcbiRmb3JtLWxhYmVsLWZvbnQtc2l6ZTogcmVtLWNhbGMoMTQpO1xuJGZvcm0tbGFiZWwtZm9udC13ZWlnaHQ6ICRnbG9iYWwtd2VpZ2h0LW5vcm1hbDtcbiRmb3JtLWxhYmVsLWxpbmUtaGVpZ2h0OiAkZ2xvYmFsLWxpbmVoZWlnaHQ7XG4kc2VsZWN0LWJhY2tncm91bmQ6ICR3aGl0ZTtcbiRzZWxlY3QtdHJpYW5nbGUtY29sb3I6ICRkYXJrLWdyYXk7XG4kc2VsZWN0LXJhZGl1czogJGdsb2JhbC1yYWRpdXM7XG4kaW5wdXQtY29sb3I6ICRibGFjaztcbiRpbnB1dC1wbGFjZWhvbGRlci1jb2xvcjogIzc5Nzk2QTtcbiRpbnB1dC1mb250LWZhbWlseTogaW5oZXJpdDtcbiRpbnB1dC1mb250LXNpemU6IHJlbS1jYWxjKDE0KTtcbiRpbnB1dC1mb250LXdlaWdodDogJGdsb2JhbC13ZWlnaHQtbm9ybWFsO1xuJGlucHV0LWxpbmUtaGVpZ2h0OiAkZ2xvYmFsLWxpbmVoZWlnaHQ7XG4kaW5wdXQtYmFja2dyb3VuZDogJHdoaXRlO1xuJGlucHV0LWJhY2tncm91bmQtZm9jdXM6ICR3aGl0ZTtcbiRpbnB1dC1iYWNrZ3JvdW5kLWRpc2FibGVkOiAkbGlnaHQtZ3JheTtcbiRpbnB1dC1ib3JkZXI6IDFweCBzb2xpZCAkbWVkaXVtLWdyYXk7XG4kaW5wdXQtYm9yZGVyLWZvY3VzOiAxcHggc29saWQgJG1lZGl1bS1ncmF5O1xuJGlucHV0LXBhZGRpbmc6ICRmb3JtLXNwYWNpbmcgLyAyO1xuJGlucHV0LXNoYWRvdzogaW5zZXQgMCAxcHggMnB4IHJnYmEoJGJsYWNrLCAwLjEpO1xuJGlucHV0LXNoYWRvdy1mb2N1czogMCAwIDVweCAkbWVkaXVtLWdyYXk7XG4kaW5wdXQtY3Vyc29yLWRpc2FibGVkOiBub3QtYWxsb3dlZDtcbiRpbnB1dC10cmFuc2l0aW9uOiBib3gtc2hhZG93IDAuNXMsXG5ib3JkZXItY29sb3IgMC4yNXMgZWFzZS1pbi1vdXQ7XG4kaW5wdXQtbnVtYmVyLXNwaW5uZXJzOiB0cnVlO1xuJGlucHV0LXJhZGl1czogJGdsb2JhbC1yYWRpdXM7XG4kZm9ybS1idXR0b24tcmFkaXVzOiAkZ2xvYmFsLXJhZGl1cztcbi8vIDIxLiBMYWJlbFxuLy8gLS0tLS0tLS0tXG4kbGFiZWwtYmFja2dyb3VuZDogJHByaW1hcnktY29sb3I7XG4kbGFiZWwtY29sb3I6ICR3aGl0ZTtcbiRsYWJlbC1jb2xvci1hbHQ6ICRibGFjaztcbiRsYWJlbC1wYWxldHRlOiAkZm91bmRhdGlvbi1wYWxldHRlO1xuJGxhYmVsLWZvbnQtc2l6ZTogMC44cmVtO1xuJGxhYmVsLXBhZGRpbmc6IDAuMzMzMzNyZW0gMC41cmVtO1xuJGxhYmVsLXJhZGl1czogJGdsb2JhbC1yYWRpdXM7XG4vLyAyMi4gTWVkaWEgT2JqZWN0XG4vLyAtLS0tLS0tLS0tLS0tLS0tXG4kbWVkaWFvYmplY3QtbWFyZ2luLWJvdHRvbTogJGdsb2JhbC1tYXJnaW47XG4kbWVkaWFvYmplY3Qtc2VjdGlvbi1wYWRkaW5nOiAkZ2xvYmFsLXBhZGRpbmc7XG4kbWVkaWFvYmplY3QtaW1hZ2Utd2lkdGgtc3RhY2tlZDogMTAwJTtcbi8vIDIzLiBNZW51XG4vLyAtLS0tLS0tLVxuJG1lbnUtbWFyZ2luOiAwO1xuJG1lbnUtbmVzdGVkLW1hcmdpbjogJGdsb2JhbC1tZW51LW5lc3RlZC1tYXJnaW47XG4kbWVudS1pdGVtcy1wYWRkaW5nOiAkZ2xvYmFsLW1lbnUtcGFkZGluZztcbiRtZW51LXNpbXBsZS1tYXJnaW46IDFyZW07XG4kbWVudS1pdGVtLWNvbG9yLWFjdGl2ZTogJHdoaXRlO1xuJG1lbnUtaXRlbS1iYWNrZ3JvdW5kLWFjdGl2ZTogZ2V0LWNvbG9yKHByaW1hcnkpO1xuJG1lbnUtaWNvbi1zcGFjaW5nOiAwLjI1cmVtO1xuJG1lbnUtaXRlbS1iYWNrZ3JvdW5kLWhvdmVyOiAkbGlnaHQtZ3JheTtcbiRtZW51LXN0YXRlLWJhY2stY29tcGF0OiB0cnVlO1xuJG1lbnUtY2VudGVyZWQtYmFjay1jb21wYXQ6IHRydWU7XG4vLyAyNC4gTWV0ZXJcbi8vIC0tLS0tLS0tLVxuJG1ldGVyLWhlaWdodDogMXJlbTtcbiRtZXRlci1yYWRpdXM6ICRnbG9iYWwtcmFkaXVzO1xuJG1ldGVyLWJhY2tncm91bmQ6ICRtZWRpdW0tZ3JheTtcbiRtZXRlci1maWxsLWdvb2Q6ICRzdWNjZXNzLWNvbG9yO1xuJG1ldGVyLWZpbGwtbWVkaXVtOiAkd2FybmluZy1jb2xvcjtcbiRtZXRlci1maWxsLWJhZDogJGFsZXJ0LWNvbG9yO1xuLy8gMjUuIE9mZi1jYW52YXNcbi8vIC0tLS0tLS0tLS0tLS0tXG4kb2ZmY2FudmFzLXNpemU6IDI1MHB4O1xuJG9mZmNhbnZhcy12ZXJ0aWNhbC1zaXplOiAyNTBweDtcbiRvZmZjYW52YXMtYmFja2dyb3VuZDogJGxpZ2h0LWdyYXk7XG4kb2ZmY2FudmFzLXNoYWRvdzogMCAwIDEwcHggcmdiYSgkYmxhY2ssIDAuNyk7XG4kb2ZmY2FudmFzLWlubmVyLXNoYWRvdy1zaXplOiAyMHB4O1xuJG9mZmNhbnZhcy1pbm5lci1zaGFkb3ctY29sb3I6IHJnYmEoJGJsYWNrLCAwLjI1KTtcbiRvZmZjYW52YXMtb3ZlcmxheS16aW5kZXg6IDExO1xuJG9mZmNhbnZhcy1wdXNoLXppbmRleDogMTI7XG4kb2ZmY2FudmFzLW92ZXJsYXAtemluZGV4OiAxMztcbiRvZmZjYW52YXMtcmV2ZWFsLXppbmRleDogMTI7XG4kb2ZmY2FudmFzLXRyYW5zaXRpb24tbGVuZ3RoOiAwLjVzO1xuJG9mZmNhbnZhcy10cmFuc2l0aW9uLXRpbWluZzogZWFzZTtcbiRvZmZjYW52YXMtZml4ZWQtcmV2ZWFsOiB0cnVlO1xuJG9mZmNhbnZhcy1leGl0LWJhY2tncm91bmQ6IHJnYmEoJHdoaXRlLCAwLjI1KTtcbiRtYWluY29udGVudC1jbGFzczogJ29mZi1jYW52YXMtY29udGVudCc7XG4vLyAyNi4gT3JiaXRcbi8vIC0tLS0tLS0tLVxuJG9yYml0LWJ1bGxldC1iYWNrZ3JvdW5kOiAkbWVkaXVtLWdyYXk7XG4kb3JiaXQtYnVsbGV0LWJhY2tncm91bmQtYWN0aXZlOiAkZGFyay1ncmF5O1xuJG9yYml0LWJ1bGxldC1kaWFtZXRlcjogMS4ycmVtO1xuJG9yYml0LWJ1bGxldC1tYXJnaW46IDAuMXJlbTtcbiRvcmJpdC1idWxsZXQtbWFyZ2luLXRvcDogMC44cmVtO1xuJG9yYml0LWJ1bGxldC1tYXJnaW4tYm90dG9tOiAwLjhyZW07XG4kb3JiaXQtY2FwdGlvbi1iYWNrZ3JvdW5kOiByZ2JhKCRibGFjaywgMC41KTtcbiRvcmJpdC1jYXB0aW9uLXBhZGRpbmc6IDFyZW07XG4kb3JiaXQtY29udHJvbC1iYWNrZ3JvdW5kLWhvdmVyOiByZ2JhKCRibGFjaywgMC41KTtcbiRvcmJpdC1jb250cm9sLXBhZGRpbmc6IDFyZW07XG4kb3JiaXQtY29udHJvbC16aW5kZXg6IDEwO1xuLy8gMjcuIFBhZ2luYXRpb25cbi8vIC0tLS0tLS0tLS0tLS0tXG4kcGFnaW5hdGlvbi1mb250LXNpemU6IHJlbS1jYWxjKDE0KTtcbiRwYWdpbmF0aW9uLW1hcmdpbi1ib3R0b206ICRnbG9iYWwtbWFyZ2luO1xuJHBhZ2luYXRpb24taXRlbS1jb2xvcjogJGJsYWNrO1xuJHBhZ2luYXRpb24taXRlbS1wYWRkaW5nOiByZW0tY2FsYygzIDEwKTtcbiRwYWdpbmF0aW9uLWl0ZW0tc3BhY2luZzogcmVtLWNhbGMoMSk7XG4kcGFnaW5hdGlvbi1yYWRpdXM6ICRnbG9iYWwtcmFkaXVzO1xuJHBhZ2luYXRpb24taXRlbS1iYWNrZ3JvdW5kLWhvdmVyOiAkbGlnaHQtZ3JheTtcbiRwYWdpbmF0aW9uLWl0ZW0tYmFja2dyb3VuZC1jdXJyZW50OiAkcHJpbWFyeS1jb2xvcjtcbiRwYWdpbmF0aW9uLWl0ZW0tY29sb3ItY3VycmVudDogJHdoaXRlO1xuJHBhZ2luYXRpb24taXRlbS1jb2xvci1kaXNhYmxlZDogJG1lZGl1bS1ncmF5O1xuJHBhZ2luYXRpb24tZWxsaXBzaXMtY29sb3I6ICRibGFjaztcbiRwYWdpbmF0aW9uLW1vYmlsZS1pdGVtczogZmFsc2U7XG4kcGFnaW5hdGlvbi1tb2JpbGUtY3VycmVudC1pdGVtOiBmYWxzZTtcbiRwYWdpbmF0aW9uLWFycm93czogdHJ1ZTtcbi8vIDI4LiBQcm9ncmVzcyBCYXJcbi8vIC0tLS0tLS0tLS0tLS0tLS1cbiRwcm9ncmVzcy1oZWlnaHQ6IDFyZW07XG4kcHJvZ3Jlc3MtYmFja2dyb3VuZDogJG1lZGl1bS1ncmF5O1xuJHByb2dyZXNzLW1hcmdpbi1ib3R0b206ICRnbG9iYWwtbWFyZ2luO1xuJHByb2dyZXNzLW1ldGVyLWJhY2tncm91bmQ6ICRwcmltYXJ5LWNvbG9yO1xuJHByb2dyZXNzLXJhZGl1czogJGdsb2JhbC1yYWRpdXM7XG4vLyAyOS4gUHJvdG90eXBlIEFycm93XG4vLyAtLS0tLS0tLS0tLS0tLS0tLS0tXG4kcHJvdG90eXBlLWFycm93LWRpcmVjdGlvbnM6ICggZG93biwgdXAsIHJpZ2h0LCBsZWZ0KTtcbiRwcm90b3R5cGUtYXJyb3ctc2l6ZTogMC40Mzc1cmVtO1xuJHByb3RvdHlwZS1hcnJvdy1jb2xvcjogJGJsYWNrO1xuLy8gMzAuIFByb3RvdHlwZSBCb3JkZXItQm94XG4vLyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cbiRwcm90b3R5cGUtYm9yZGVyLWJveC1icmVha3BvaW50czogJGdsb2JhbC1wcm90b3R5cGUtYnJlYWtwb2ludHM7XG4vLyAzMS4gUHJvdG90eXBlIEJvcmRlci1Ob25lXG4vLyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG4kcHJvdG90eXBlLWJvcmRlci1ub25lLWJyZWFrcG9pbnRzOiAkZ2xvYmFsLXByb3RvdHlwZS1icmVha3BvaW50cztcbi8vIDMyLiBQcm90b3R5cGUgQm9yZGVyZWRcbi8vIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cbiRwcm90b3R5cGUtYm9yZGVyZWQtYnJlYWtwb2ludHM6ICRnbG9iYWwtcHJvdG90eXBlLWJyZWFrcG9pbnRzO1xuJHByb3RvdHlwZS1ib3JkZXItd2lkdGg6IHJlbS1jYWxjKDEpO1xuJHByb3RvdHlwZS1ib3JkZXItdHlwZTogc29saWQ7XG4kcHJvdG90eXBlLWJvcmRlci1jb2xvcjogJG1lZGl1bS1ncmF5O1xuLy8gMzMuIFByb3RvdHlwZSBEaXNwbGF5XG4vLyAtLS0tLS0tLS0tLS0tLS0tLS0tLS1cbiRwcm90b3R5cGUtZGlzcGxheS1icmVha3BvaW50czogJGdsb2JhbC1wcm90b3R5cGUtYnJlYWtwb2ludHM7XG4kcHJvdG90eXBlLWRpc3BsYXk6ICggaW5saW5lLCBpbmxpbmUtYmxvY2ssIGJsb2NrLCB0YWJsZSwgdGFibGUtY2VsbCk7XG4vLyAzNC4gUHJvdG90eXBlIEZvbnQtU3R5bGluZ1xuLy8gLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cbiRwcm90b3R5cGUtZm9udC1icmVha3BvaW50czogJGdsb2JhbC1wcm90b3R5cGUtYnJlYWtwb2ludHM7XG4kcHJvdG90eXBlLXdpZGUtbGV0dGVyLXNwYWNpbmc6IHJlbS1jYWxjKDQpO1xuJHByb3RvdHlwZS1mb250LW5vcm1hbDogJGdsb2JhbC13ZWlnaHQtbm9ybWFsO1xuJHByb3RvdHlwZS1mb250LWJvbGQ6ICRnbG9iYWwtd2VpZ2h0LWJvbGQ7XG4vLyAzNS4gUHJvdG90eXBlIExpc3QtU3R5bGUtVHlwZVxuLy8gLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cbiRwcm90b3R5cGUtbGlzdC1icmVha3BvaW50czogJGdsb2JhbC1wcm90b3R5cGUtYnJlYWtwb2ludHM7XG4kcHJvdG90eXBlLXN0eWxlLXR5cGUtdW5vcmRlcmVkOiAoIGRpc2MsIGNpcmNsZSwgc3F1YXJlKTtcbiRwcm90b3R5cGUtc3R5bGUtdHlwZS1vcmRlcmVkOiAoIGRlY2ltYWwsIGxvd2VyLWFscGhhLCBsb3dlci1sYXRpbiwgbG93ZXItcm9tYW4sIHVwcGVyLWFscGhhLCB1cHBlci1sYXRpbiwgdXBwZXItcm9tYW4pO1xuLy8gMzYuIFByb3RvdHlwZSBPdmVyZmxvd1xuLy8gLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuJHByb3RvdHlwZS1vdmVyZmxvdy1icmVha3BvaW50czogJGdsb2JhbC1wcm90b3R5cGUtYnJlYWtwb2ludHM7XG4kcHJvdG90eXBlLW92ZXJmbG93OiAoIHZpc2libGUsIGhpZGRlbiwgc2Nyb2xsKTtcbi8vIDM3LiBQcm90b3R5cGUgUG9zaXRpb25cbi8vIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cbiRwcm90b3R5cGUtcG9zaXRpb24tYnJlYWtwb2ludHM6ICRnbG9iYWwtcHJvdG90eXBlLWJyZWFrcG9pbnRzO1xuJHByb3RvdHlwZS1wb3NpdGlvbjogKCBzdGF0aWMsIHJlbGF0aXZlLCBhYnNvbHV0ZSwgZml4ZWQpO1xuJHByb3RvdHlwZS1wb3NpdGlvbi16LWluZGV4OiA5NzU7XG4vLyAzOC4gUHJvdG90eXBlIFJvdW5kZWRcbi8vIC0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuJHByb3RvdHlwZS1yb3VuZGVkLWJyZWFrcG9pbnRzOiAkZ2xvYmFsLXByb3RvdHlwZS1icmVha3BvaW50cztcbiRwcm90b3R5cGUtYm9yZGVyLXJhZGl1czogcmVtLWNhbGMoMyk7XG4vLyAzOS4gUHJvdG90eXBlIFNlcGFyYXRvclxuLy8gLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cbiRwcm90b3R5cGUtc2VwYXJhdG9yLWJyZWFrcG9pbnRzOiAkZ2xvYmFsLXByb3RvdHlwZS1icmVha3BvaW50cztcbiRwcm90b3R5cGUtc2VwYXJhdG9yLWFsaWduOiBjZW50ZXI7XG4kcHJvdG90eXBlLXNlcGFyYXRvci1oZWlnaHQ6IHJlbS1jYWxjKDIpO1xuJHByb3RvdHlwZS1zZXBhcmF0b3Itd2lkdGg6IDNyZW07XG4kcHJvdG90eXBlLXNlcGFyYXRvci1iYWNrZ3JvdW5kOiAkcHJpbWFyeS1jb2xvcjtcbiRwcm90b3R5cGUtc2VwYXJhdG9yLW1hcmdpbi10b3A6ICRnbG9iYWwtbWFyZ2luO1xuLy8gNDAuIFByb3RvdHlwZSBTaGFkb3dcbi8vIC0tLS0tLS0tLS0tLS0tLS0tLS0tXG4kcHJvdG90eXBlLXNoYWRvdy1icmVha3BvaW50czogJGdsb2JhbC1wcm90b3R5cGUtYnJlYWtwb2ludHM7XG4kcHJvdG90eXBlLWJveC1zaGFkb3c6IDAgMnB4IDVweCAwIHJnYmEoMCwgMCwgMCwgLjE2KSxcbjAgMnB4IDEwcHggMCByZ2JhKDAsIDAsIDAsIC4xMik7XG4vLyA0MS4gUHJvdG90eXBlIFNpemluZ1xuLy8gLS0tLS0tLS0tLS0tLS0tLS0tLS1cbiRwcm90b3R5cGUtc2l6aW5nLWJyZWFrcG9pbnRzOiAkZ2xvYmFsLXByb3RvdHlwZS1icmVha3BvaW50cztcbiRwcm90b3R5cGUtc2l6aW5nOiAoIHdpZHRoLCBoZWlnaHQpO1xuJHByb3RvdHlwZS1zaXplczogKCAyNTogMjUlLCA1MDogNTAlLCA3NTogNzUlLCAxMDA6IDEwMCUpO1xuLy8gNDIuIFByb3RvdHlwZSBTcGFjaW5nXG4vLyAtLS0tLS0tLS0tLS0tLS0tLS0tLS1cbiRwcm90b3R5cGUtc3BhY2luZy1icmVha3BvaW50czogJGdsb2JhbC1wcm90b3R5cGUtYnJlYWtwb2ludHM7XG4kcHJvdG90eXBlLXNwYWNlcnMtY291bnQ6IDM7XG4vLyA0My4gUHJvdG90eXBlIFRleHQtRGVjb3JhdGlvblxuLy8gLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cbiRwcm90b3R5cGUtZGVjb3JhdGlvbi1icmVha3BvaW50czogJGdsb2JhbC1wcm90b3R5cGUtYnJlYWtwb2ludHM7XG4kcHJvdG90eXBlLXRleHQtZGVjb3JhdGlvbjogKCBvdmVybGluZSwgdW5kZXJsaW5lLCBsaW5lLXRocm91Z2gsICk7XG4vLyA0NC4gUHJvdG90eXBlIFRleHQtVHJhbnNmb3JtYXRpb25cbi8vIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuJHByb3RvdHlwZS10cmFuc2Zvcm1hdGlvbi1icmVha3BvaW50czogJGdsb2JhbC1wcm90b3R5cGUtYnJlYWtwb2ludHM7XG4kcHJvdG90eXBlLXRleHQtdHJhbnNmb3JtYXRpb246ICggbG93ZXJjYXNlLCB1cHBlcmNhc2UsIGNhcGl0YWxpemUpO1xuLy8gNDUuIFByb3RvdHlwZSBUZXh0LVV0aWxpdGllc1xuLy8gLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuJHByb3RvdHlwZS11dGlsaXRpZXMtYnJlYWtwb2ludHM6ICRnbG9iYWwtcHJvdG90eXBlLWJyZWFrcG9pbnRzO1xuJHByb3RvdHlwZS10ZXh0LW92ZXJmbG93OiBlbGxpcHNpcztcbi8vIDQ2LiBSZXNwb25zaXZlIEVtYmVkXG4vLyAtLS0tLS0tLS0tLS0tLS0tLS0tLVxuJHJlc3BvbnNpdmUtZW1iZWQtbWFyZ2luLWJvdHRvbTogcmVtLWNhbGMoMTYpO1xuJHJlc3BvbnNpdmUtZW1iZWQtcmF0aW9zOiAoIGRlZmF1bHQ6IDQgYnkgMywgd2lkZXNjcmVlbjogMTYgYnkgOSwgKTtcbi8vIDQ3LiBSZXZlYWxcbi8vIC0tLS0tLS0tLS1cbiRyZXZlYWwtYmFja2dyb3VuZDogJHdoaXRlO1xuJHJldmVhbC13aWR0aDogNjAwcHg7XG4kcmV2ZWFsLW1heC13aWR0aDogJGdsb2JhbC13aWR0aDtcbiRyZXZlYWwtcGFkZGluZzogJGdsb2JhbC1wYWRkaW5nO1xuJHJldmVhbC1ib3JkZXI6IG5vbmU7XG4kcmV2ZWFsLXJhZGl1czogM3B4O1xuJHJldmVhbC16aW5kZXg6IDEwMDU7XG4kcmV2ZWFsLW92ZXJsYXktYmFja2dyb3VuZDogcmdiYSgkYmxhY2ssIDAuNDUpO1xuLy8gNDguIFNsaWRlclxuLy8gLS0tLS0tLS0tLVxuJHNsaWRlci13aWR0aC12ZXJ0aWNhbDogMC41cmVtO1xuJHNsaWRlci10cmFuc2l0aW9uOiBhbGwgMC4ycyBlYXNlLWluLW91dDtcbiRzbGlkZXItaGVpZ2h0OiAwLjVyZW07XG4kc2xpZGVyLWJhY2tncm91bmQ6ICRsaWdodC1ncmF5O1xuJHNsaWRlci1maWxsLWJhY2tncm91bmQ6ICRtZWRpdW0tZ3JheTtcbiRzbGlkZXItaGFuZGxlLWhlaWdodDogMS40cmVtO1xuJHNsaWRlci1oYW5kbGUtd2lkdGg6IDEuNHJlbTtcbiRzbGlkZXItaGFuZGxlLWJhY2tncm91bmQ6ICRwcmltYXJ5LWNvbG9yO1xuJHNsaWRlci1vcGFjaXR5LWRpc2FibGVkOiAwLjI1O1xuJHNsaWRlci1yYWRpdXM6ICRnbG9iYWwtcmFkaXVzO1xuLy8gNDkuIFN3aXRjaFxuLy8gLS0tLS0tLS0tLVxuJHN3aXRjaC1iYWNrZ3JvdW5kOiAkbWVkaXVtLWdyYXk7XG4kc3dpdGNoLWJhY2tncm91bmQtYWN0aXZlOiAkcHJpbWFyeS1jb2xvcjtcbiRzd2l0Y2gtaGVpZ2h0OiAycmVtO1xuJHN3aXRjaC1oZWlnaHQtdGlueTogMS41cmVtO1xuJHN3aXRjaC1oZWlnaHQtc21hbGw6IDEuNzVyZW07XG4kc3dpdGNoLWhlaWdodC1sYXJnZTogMi41cmVtO1xuJHN3aXRjaC1yYWRpdXM6ICRnbG9iYWwtcmFkaXVzO1xuJHN3aXRjaC1tYXJnaW46ICRnbG9iYWwtbWFyZ2luO1xuJHN3aXRjaC1wYWRkbGUtYmFja2dyb3VuZDogJHdoaXRlO1xuJHN3aXRjaC1wYWRkbGUtb2Zmc2V0OiAwLjI1cmVtO1xuJHN3aXRjaC1wYWRkbGUtcmFkaXVzOiAkZ2xvYmFsLXJhZGl1cztcbiRzd2l0Y2gtcGFkZGxlLXRyYW5zaXRpb246IGFsbCAwLjI1cyBlYXNlLW91dDtcbi8vIDUwLiBUYWJsZVxuLy8gLS0tLS0tLS0tXG4kdGFibGUtYmFja2dyb3VuZDogJHdoaXRlO1xuJHRhYmxlLWNvbG9yLXNjYWxlOiA1JTtcbiR0YWJsZS1ib3JkZXI6IDFweCBzb2xpZCBzbWFydC1zY2FsZSgkdGFibGUtYmFja2dyb3VuZCwgJHRhYmxlLWNvbG9yLXNjYWxlKTtcbiR0YWJsZS1wYWRkaW5nOiByZW0tY2FsYyg2IDggOCk7XG4kdGFibGUtaG92ZXItc2NhbGU6IDIlO1xuJHRhYmxlLXJvdy1ob3ZlcjogZGFya2VuKCR0YWJsZS1iYWNrZ3JvdW5kLCAkdGFibGUtaG92ZXItc2NhbGUpO1xuJHRhYmxlLXJvdy1zdHJpcGUtaG92ZXI6IGRhcmtlbigkdGFibGUtYmFja2dyb3VuZCwgJHRhYmxlLWNvbG9yLXNjYWxlICsgJHRhYmxlLWhvdmVyLXNjYWxlKTtcbiR0YWJsZS1pcy1zdHJpcGVkOiBmYWxzZTtcbiR0YWJsZS1zdHJpcGVkLWJhY2tncm91bmQ6IHNtYXJ0LXNjYWxlKCR0YWJsZS1iYWNrZ3JvdW5kLCAkdGFibGUtY29sb3Itc2NhbGUpO1xuJHRhYmxlLXN0cmlwZTogZXZlbjtcbiR0YWJsZS1oZWFkLWJhY2tncm91bmQ6IHNtYXJ0LXNjYWxlKCR0YWJsZS1iYWNrZ3JvdW5kLCAkdGFibGUtY29sb3Itc2NhbGUgLyAyKTtcbiR0YWJsZS1oZWFkLXJvdy1ob3ZlcjogZGFya2VuKCR0YWJsZS1oZWFkLWJhY2tncm91bmQsICR0YWJsZS1ob3Zlci1zY2FsZSk7XG4kdGFibGUtZm9vdC1iYWNrZ3JvdW5kOiBzbWFydC1zY2FsZSgkdGFibGUtYmFja2dyb3VuZCwgJHRhYmxlLWNvbG9yLXNjYWxlKTtcbiR0YWJsZS1mb290LXJvdy1ob3ZlcjogZGFya2VuKCR0YWJsZS1mb290LWJhY2tncm91bmQsICR0YWJsZS1ob3Zlci1zY2FsZSk7XG4kdGFibGUtaGVhZC1mb250LWNvbG9yOiAkYm9keS1mb250LWNvbG9yO1xuJHRhYmxlLWZvb3QtZm9udC1jb2xvcjogJGJvZHktZm9udC1jb2xvcjtcbiRzaG93LWhlYWRlci1mb3Itc3RhY2tlZDogZmFsc2U7XG4kdGFibGUtc3RhY2stYnJlYWtwb2ludDogbWVkaXVtO1xuLy8gNTEuIFRhYnNcbi8vIC0tLS0tLS0tXG4kdGFiLW1hcmdpbjogMDtcbiR0YWItYmFja2dyb3VuZDogJHdoaXRlO1xuJHRhYi1jb2xvcjogJHByaW1hcnktY29sb3I7XG4kdGFiLWJhY2tncm91bmQtYWN0aXZlOiAkbGlnaHQtZ3JheTtcbiR0YWItYWN0aXZlLWNvbG9yOiAkcHJpbWFyeS1jb2xvcjtcbiR0YWItaXRlbS1mb250LXNpemU6IHJlbS1jYWxjKDEyKTtcbiR0YWItaXRlbS1iYWNrZ3JvdW5kLWhvdmVyOiAkd2hpdGU7XG4kdGFiLWl0ZW0tcGFkZGluZzogMS4yNXJlbSAxLjVyZW07XG4kdGFiLWV4cGFuZC1tYXg6IDY7XG4kdGFiLWNvbnRlbnQtYmFja2dyb3VuZDogJHdoaXRlO1xuJHRhYi1jb250ZW50LWJvcmRlcjogJG1lZGl1bS1ncmF5O1xuJHRhYi1jb250ZW50LWNvbG9yOiAkYm9keS1mb250LWNvbG9yO1xuJHRhYi1jb250ZW50LXBhZGRpbmc6IDFyZW07XG4vLyA1Mi4gVGh1bWJuYWlsXG4vLyAtLS0tLS0tLS0tLS0tXG4kdGh1bWJuYWlsLWJvcmRlcjogc29saWQgNHB4ICR3aGl0ZTtcbiR0aHVtYm5haWwtbWFyZ2luLWJvdHRvbTogJGdsb2JhbC1tYXJnaW47XG4kdGh1bWJuYWlsLXNoYWRvdzogMCAwIDAgMXB4IHJnYmEoJGJsYWNrLCAwLjIpO1xuJHRodW1ibmFpbC1zaGFkb3ctaG92ZXI6IDAgMCA2cHggMXB4IHJnYmEoJHByaW1hcnktY29sb3IsIDAuNSk7XG4kdGh1bWJuYWlsLXRyYW5zaXRpb246IGJveC1zaGFkb3cgMjAwbXMgZWFzZS1vdXQ7XG4kdGh1bWJuYWlsLXJhZGl1czogJGdsb2JhbC1yYWRpdXM7XG4vLyA1My4gVGl0bGUgQmFyXG4vLyAtLS0tLS0tLS0tLS0tXG4kdGl0bGViYXItYmFja2dyb3VuZDogJGJsYWNrO1xuJHRpdGxlYmFyLWNvbG9yOiAkd2hpdGU7XG4kdGl0bGViYXItcGFkZGluZzogMC41cmVtO1xuJHRpdGxlYmFyLXRleHQtZm9udC13ZWlnaHQ6IGJvbGQ7XG4kdGl0bGViYXItaWNvbi1jb2xvcjogJHdoaXRlO1xuJHRpdGxlYmFyLWljb24tY29sb3ItaG92ZXI6ICRtZWRpdW0tZ3JheTtcbiR0aXRsZWJhci1pY29uLXNwYWNpbmc6IDAuMjVyZW07XG4vLyA1NC4gVG9vbHRpcFxuLy8gLS0tLS0tLS0tLS1cbiRoYXMtdGlwLWN1cnNvcjogaGVscDtcbiRoYXMtdGlwLWZvbnQtd2VpZ2h0OiAkZ2xvYmFsLXdlaWdodC1ib2xkO1xuJGhhcy10aXAtYm9yZGVyLWJvdHRvbTogZG90dGVkIDFweCAkZGFyay1ncmF5O1xuJHRvb2x0aXAtYmFja2dyb3VuZC1jb2xvcjogJGJsYWNrO1xuJHRvb2x0aXAtY29sb3I6ICR3aGl0ZTtcbiR0b29sdGlwLXBhZGRpbmc6IDAuNzVyZW07XG4kdG9vbHRpcC1tYXgtd2lkdGg6IDEwcmVtO1xuJHRvb2x0aXAtZm9udC1zaXplOiAkc21hbGwtZm9udC1zaXplO1xuJHRvb2x0aXAtcGlwLXdpZHRoOiAwLjc1cmVtO1xuJHRvb2x0aXAtcGlwLWhlaWdodDogJHRvb2x0aXAtcGlwLXdpZHRoICogMC44NjY7XG4kdG9vbHRpcC1yYWRpdXM6ICRnbG9iYWwtcmFkaXVzO1xuLy8gNTUuIFRvcCBCYXJcbi8vIC0tLS0tLS0tLS0tXG4kdG9wYmFyLXBhZGRpbmc6IDAuNXJlbTtcbiR0b3BiYXItYmFja2dyb3VuZDogJGxpZ2h0LWdyYXk7XG4kdG9wYmFyLXN1Ym1lbnUtYmFja2dyb3VuZDogJHRvcGJhci1iYWNrZ3JvdW5kO1xuJHRvcGJhci10aXRsZS1zcGFjaW5nOiAwLjVyZW0gMXJlbSAwLjVyZW0gMDtcbiR0b3BiYXItaW5wdXQtd2lkdGg6IDIwMHB4O1xuJHRvcGJhci11bnN0YWNrLWJyZWFrcG9pbnQ6IG1lZGl1bTtcbi8vIDU2LiBYeSBHcmlkXG4vLyAtLS0tLS0tLS0tLVxuJHh5LWdyaWQ6IHRydWU7XG4kZ3JpZC1jb250YWluZXI6ICRnbG9iYWwtd2lkdGg7XG4kZ3JpZC1jb2x1bW5zOiAxMjtcbiRncmlkLW1hcmdpbi1ndXR0ZXJzOiAoIHNtYWxsOiAxMHB4LCBtZWRpdW06IDE2cHgpO1xuJGdyaWQtcGFkZGluZy1ndXR0ZXJzOiAkZ3JpZC1tYXJnaW4tZ3V0dGVycztcbiRibG9jay1ncmlkLW1heDogMTI7IiwiLyoqXG4gKiBGb3VuZGF0aW9uIGZvciBTaXRlcyBieSBaVVJCXG4gKiBWZXJzaW9uIDYuNC4xXG4gKiBmb3VuZGF0aW9uLnp1cmIuY29tXG4gKiBMaWNlbnNlZCB1bmRlciBNSVQgT3BlbiBTb3VyY2VcbiAqL1xuXG4vLyBEZXBlbmRlbmNpZXNcbkBpbXBvcnQgJy4uL192ZW5kb3Ivbm9ybWFsaXplLXNjc3Mvc2Fzcy9ub3JtYWxpemUnO1xuQGltcG9ydCAnLi4vX3ZlbmRvci9zYXNzeS1saXN0cy9zdHlsZXNoZWV0cy9oZWxwZXJzL21pc3NpbmctZGVwZW5kZW5jaWVzJztcbkBpbXBvcnQgJy4uL192ZW5kb3Ivc2Fzc3ktbGlzdHMvc3R5bGVzaGVldHMvaGVscGVycy90cnVlJztcbkBpbXBvcnQgJy4uL192ZW5kb3Ivc2Fzc3ktbGlzdHMvc3R5bGVzaGVldHMvZnVuY3Rpb25zL3B1cmdlJztcbkBpbXBvcnQgJy4uL192ZW5kb3Ivc2Fzc3ktbGlzdHMvc3R5bGVzaGVldHMvZnVuY3Rpb25zL3JlbW92ZSc7XG5AaW1wb3J0ICcuLi9fdmVuZG9yL3Nhc3N5LWxpc3RzL3N0eWxlc2hlZXRzL2Z1bmN0aW9ucy9yZXBsYWNlJztcbkBpbXBvcnQgJy4uL192ZW5kb3Ivc2Fzc3ktbGlzdHMvc3R5bGVzaGVldHMvZnVuY3Rpb25zL3RvLWxpc3QnO1xuXG4vLyBTZXR0aW5nc1xuLy8gaW1wb3J0IHlvdXIgb3duIGBzZXR0aW5nc2AgaGVyZSBvclxuLy8gaW1wb3J0IGFuZCBtb2RpZnkgdGhlIGRlZmF1bHQgc2V0dGluZ3MgdGhyb3VnaFxuLy8gQGltcG9ydCAnc2V0dGluZ3Mvc2V0dGluZ3MnO1xuXG4vLyBTYXNzIHV0aWxpdGllc1xuQGltcG9ydCAndXRpbC91dGlsJztcblxuLy8gR2xvYmFsIHZhcmlhYmxlcyBhbmQgc3R5bGVzXG5AaW1wb3J0ICdnbG9iYWwnO1xuXG4vLyBDb21wb25lbnRzXG5AaW1wb3J0ICdncmlkL2dyaWQnO1xuQGltcG9ydCAneHktZ3JpZC94eS1ncmlkJztcbkBpbXBvcnQgJ3R5cG9ncmFwaHkvdHlwb2dyYXBoeSc7XG5AaW1wb3J0ICdmb3Jtcy9mb3Jtcyc7XG5AaW1wb3J0ICdjb21wb25lbnRzL3Zpc2liaWxpdHknO1xuQGltcG9ydCAnY29tcG9uZW50cy9mbG9hdCc7XG5AaW1wb3J0ICdjb21wb25lbnRzL2J1dHRvbic7XG5AaW1wb3J0ICdjb21wb25lbnRzL2J1dHRvbi1ncm91cCc7XG5AaW1wb3J0ICdjb21wb25lbnRzL2FjY29yZGlvbi1tZW51JztcbkBpbXBvcnQgJ2NvbXBvbmVudHMvYWNjb3JkaW9uJztcbkBpbXBvcnQgJ2NvbXBvbmVudHMvYmFkZ2UnO1xuQGltcG9ydCAnY29tcG9uZW50cy9icmVhZGNydW1icyc7XG5AaW1wb3J0ICdjb21wb25lbnRzL2NhbGxvdXQnO1xuQGltcG9ydCAnY29tcG9uZW50cy9jYXJkJztcbkBpbXBvcnQgJ2NvbXBvbmVudHMvY2xvc2UtYnV0dG9uJztcbkBpbXBvcnQgJ2NvbXBvbmVudHMvZHJpbGxkb3duJztcbkBpbXBvcnQgJ2NvbXBvbmVudHMvZHJvcGRvd24tbWVudSc7XG5AaW1wb3J0ICdjb21wb25lbnRzL2Ryb3Bkb3duJztcbkBpbXBvcnQgJ2NvbXBvbmVudHMvZmxleCc7XG5AaW1wb3J0ICdjb21wb25lbnRzL3Jlc3BvbnNpdmUtZW1iZWQnO1xuQGltcG9ydCAnY29tcG9uZW50cy9sYWJlbCc7XG5AaW1wb3J0ICdjb21wb25lbnRzL21lZGlhLW9iamVjdCc7XG5AaW1wb3J0ICdjb21wb25lbnRzL21lbnUnO1xuQGltcG9ydCAnY29tcG9uZW50cy9tZW51LWljb24nO1xuQGltcG9ydCAnY29tcG9uZW50cy9vZmYtY2FudmFzJztcbkBpbXBvcnQgJ2NvbXBvbmVudHMvb3JiaXQnO1xuQGltcG9ydCAnY29tcG9uZW50cy9wYWdpbmF0aW9uJztcbkBpbXBvcnQgJ2NvbXBvbmVudHMvcHJvZ3Jlc3MtYmFyJztcbkBpbXBvcnQgJ2NvbXBvbmVudHMvcmV2ZWFsJztcbkBpbXBvcnQgJ2NvbXBvbmVudHMvc2xpZGVyJztcbkBpbXBvcnQgJ2NvbXBvbmVudHMvc3RpY2t5JztcbkBpbXBvcnQgJ2NvbXBvbmVudHMvc3dpdGNoJztcbkBpbXBvcnQgJ2NvbXBvbmVudHMvdGFibGUnO1xuQGltcG9ydCAnY29tcG9uZW50cy90YWJzJztcbkBpbXBvcnQgJ2NvbXBvbmVudHMvdGl0bGUtYmFyJztcbkBpbXBvcnQgJ2NvbXBvbmVudHMvdG9wLWJhcic7XG5AaW1wb3J0ICdjb21wb25lbnRzL3RodW1ibmFpbCc7XG5AaW1wb3J0ICdjb21wb25lbnRzL3Rvb2x0aXAnO1xuQGltcG9ydCAncHJvdG90eXBlL3Byb3RvdHlwZSc7XG5cbkBtaXhpbiBmb3VuZGF0aW9uLWV2ZXJ5dGhpbmcoXG4gICRmbGV4OiB0cnVlLFxuICAkcHJvdG90eXBlOiBmYWxzZVxuKSB7XG4gIEBpZiAkZmxleCB7XG4gICAgJGdsb2JhbC1mbGV4Ym94OiB0cnVlICFnbG9iYWw7XG4gIH1cblxuICBAaW5jbHVkZSBmb3VuZGF0aW9uLWdsb2JhbC1zdHlsZXM7XG4gIEBpZiBub3QgJGZsZXgge1xuICAgIEBpbmNsdWRlIGZvdW5kYXRpb24tZ3JpZDtcbiAgfVxuICBAZWxzZSB7XG4gICAgQGlmICR4eS1ncmlkIHtcbiAgICAgIEBpbmNsdWRlIGZvdW5kYXRpb24teHktZ3JpZC1jbGFzc2VzO1xuICAgIH1cbiAgICBAZWxzZSB7XG4gICAgICBAaW5jbHVkZSBmb3VuZGF0aW9uLWZsZXgtZ3JpZDtcbiAgICB9XG4gIH1cbiAgQGluY2x1ZGUgZm91bmRhdGlvbi10eXBvZ3JhcGh5O1xuICBAaW5jbHVkZSBmb3VuZGF0aW9uLWZvcm1zO1xuICBAaW5jbHVkZSBmb3VuZGF0aW9uLWJ1dHRvbjtcbiAgQGluY2x1ZGUgZm91bmRhdGlvbi1hY2NvcmRpb247XG4gIEBpbmNsdWRlIGZvdW5kYXRpb24tYWNjb3JkaW9uLW1lbnU7XG4gIEBpbmNsdWRlIGZvdW5kYXRpb24tYmFkZ2U7XG4gIEBpbmNsdWRlIGZvdW5kYXRpb24tYnJlYWRjcnVtYnM7XG4gIEBpbmNsdWRlIGZvdW5kYXRpb24tYnV0dG9uLWdyb3VwO1xuICBAaW5jbHVkZSBmb3VuZGF0aW9uLWNhbGxvdXQ7XG4gIEBpbmNsdWRlIGZvdW5kYXRpb24tY2FyZDtcbiAgQGluY2x1ZGUgZm91bmRhdGlvbi1jbG9zZS1idXR0b247XG4gIEBpbmNsdWRlIGZvdW5kYXRpb24tbWVudTtcbiAgQGluY2x1ZGUgZm91bmRhdGlvbi1tZW51LWljb247XG4gIEBpbmNsdWRlIGZvdW5kYXRpb24tZHJpbGxkb3duLW1lbnU7XG4gIEBpbmNsdWRlIGZvdW5kYXRpb24tZHJvcGRvd247XG4gIEBpbmNsdWRlIGZvdW5kYXRpb24tZHJvcGRvd24tbWVudTtcbiAgQGluY2x1ZGUgZm91bmRhdGlvbi1yZXNwb25zaXZlLWVtYmVkO1xuICBAaW5jbHVkZSBmb3VuZGF0aW9uLWxhYmVsO1xuICBAaW5jbHVkZSBmb3VuZGF0aW9uLW1lZGlhLW9iamVjdDtcbiAgQGluY2x1ZGUgZm91bmRhdGlvbi1vZmYtY2FudmFzO1xuICBAaW5jbHVkZSBmb3VuZGF0aW9uLW9yYml0O1xuICBAaW5jbHVkZSBmb3VuZGF0aW9uLXBhZ2luYXRpb247XG4gIEBpbmNsdWRlIGZvdW5kYXRpb24tcHJvZ3Jlc3MtYmFyO1xuICBAaW5jbHVkZSBmb3VuZGF0aW9uLXNsaWRlcjtcbiAgQGluY2x1ZGUgZm91bmRhdGlvbi1zdGlja3k7XG4gIEBpbmNsdWRlIGZvdW5kYXRpb24tcmV2ZWFsO1xuICBAaW5jbHVkZSBmb3VuZGF0aW9uLXN3aXRjaDtcbiAgQGluY2x1ZGUgZm91bmRhdGlvbi10YWJsZTtcbiAgQGluY2x1ZGUgZm91bmRhdGlvbi10YWJzO1xuICBAaW5jbHVkZSBmb3VuZGF0aW9uLXRodW1ibmFpbDtcbiAgQGluY2x1ZGUgZm91bmRhdGlvbi10aXRsZS1iYXI7XG4gIEBpbmNsdWRlIGZvdW5kYXRpb24tdG9vbHRpcDtcbiAgQGluY2x1ZGUgZm91bmRhdGlvbi10b3AtYmFyO1xuICBAaW5jbHVkZSBmb3VuZGF0aW9uLXZpc2liaWxpdHktY2xhc3NlcztcbiAgQGluY2x1ZGUgZm91bmRhdGlvbi1mbG9hdC1jbGFzc2VzO1xuXG4gIEBpZiAkZmxleCB7XG4gICAgQGluY2x1ZGUgZm91bmRhdGlvbi1mbGV4LWNsYXNzZXM7XG4gIH1cblxuICBAaWYgJHByb3RvdHlwZSB7XG4gICAgQGluY2x1ZGUgZm91bmRhdGlvbi1wcm90b3R5cGUtY2xhc3NlcztcbiAgfVxufVxuIiwiLy8gRm91bmRhdGlvbiBmb3IgU2l0ZXMgYnkgWlVSQlxuLy8gZm91bmRhdGlvbi56dXJiLmNvbVxuLy8gTGljZW5zZWQgdW5kZXIgTUlUIE9wZW4gU291cmNlXG5cbi8vLy9cbi8vLyBAZ3JvdXAgYnJlYWtwb2ludHNcbi8vLy9cblxuLy8vIEEgbGlzdCBvZiBuYW1lZCBicmVha3BvaW50cy4gWW91IGNhbiB1c2UgdGhlc2Ugd2l0aCB0aGUgYGJyZWFrcG9pbnQoKWAgbWl4aW4gdG8gcXVpY2tseSBjcmVhdGUgbWVkaWEgcXVlcmllcy5cbi8vLyBAdHlwZSBNYXBcbiRicmVha3BvaW50czogKFxuICBzbWFsbDogMCxcbiAgbWVkaXVtOiA2NDBweCxcbiAgbGFyZ2U6IDEwMjRweCxcbiAgeGxhcmdlOiAxMjAwcHgsXG4gIHh4bGFyZ2U6IDE0NDBweCxcbikgIWRlZmF1bHQ7XG5cbi8vLyBUaGUgbGFyZ2VzdCBuYW1lZCBicmVha3BvaW50IGluIHdoaWNoIHRvIGluY2x1ZGUgcHJpbnQgYXMgYSBtZWRpYSB0eXBlXG4vLy8gQHR5cGUgS2V5d29yZFxuJHByaW50LWJyZWFrcG9pbnQ6IGxhcmdlICFkZWZhdWx0O1xuXG4kLXpmLXplcm8tYnJlYWtwb2ludDogc21hbGwgIWRlZmF1bHQ7XG5cbiQtemYtYnJlYWtwb2ludHMta2V5czogbWFwLXRvLWxpc3QoJGJyZWFrcG9pbnRzLCAna2V5cycpO1xuXG5AaWYgbnRoKG1hcC12YWx1ZXMoJGJyZWFrcG9pbnRzKSwgMSkgIT0gMCB7XG4gIEBlcnJvciAnWW91ciBzbWFsbGVzdCBicmVha3BvaW50IChkZWZpbmVkIGluICRicmVha3BvaW50cykgbXVzdCBiZSBzZXQgdG8gXCIwXCIuJztcbn1cbkBlbHNlIHtcbiAgJC16Zi16ZXJvLWJyZWFrcG9pbnQ6IG50aChtYXAta2V5cygkYnJlYWtwb2ludHMpLCAxKTtcbn1cblxuLy8vIEFsbCBvZiB0aGUgbmFtZXMgaW4gdGhpcyBsaXN0IHdpbGwgYmUgb3V0cHV0IGFzIGNsYXNzZXMgaW4geW91ciBDU1MsIGxpa2UgYC5zbWFsbC0xMmAsIGAubWVkaXVtLTZgLCBhbmQgc28gb24uIEVhY2ggdmFsdWUgaW4gdGhpcyBsaXN0IG11c3QgYWxzbyBiZSBpbiB0aGUgYCRicmVha3BvaW50c2AgbWFwLlxuLy8vIEB0eXBlIExpc3RcbiRicmVha3BvaW50LWNsYXNzZXM6IChzbWFsbCBtZWRpdW0gbGFyZ2UpICFkZWZhdWx0O1xuXG4vLy8gR2VuZXJhdGVzIGEgbWVkaWEgcXVlcnkgc3RyaW5nIG1hdGNoaW5nIHRoZSBpbnB1dCB2YWx1ZS4gUmVmZXIgdG8gdGhlIGRvY3VtZW50YXRpb24gZm9yIHRoZSBgYnJlYWtwb2ludCgpYCBtaXhpbiB0byBzZWUgd2hhdCB0aGUgcG9zc2libGUgaW5wdXRzIGFyZS5cbi8vL1xuLy8vIEBwYXJhbSB7S2V5d29yZHxOdW1iZXJ9ICR2YWwgW3NtYWxsXSAtIEJyZWFrcG9pbnQgbmFtZSwgb3IgcHgsIHJlbSwgb3IgZW0gdmFsdWUgdG8gcHJvY2Vzcy5cbkBmdW5jdGlvbiBicmVha3BvaW50KCR2YWw6ICQtemYtemVyby1icmVha3BvaW50KSB7XG4gIC8vIFNpemUgb3Iga2V5d29yZFxuICAkYnA6IG50aCgkdmFsLCAxKTtcbiAgLy8gVmFsdWUgZm9yIG1heC13aWR0aCBtZWRpYSBxdWVyaWVzXG4gICRicC1tYXg6IDA7XG4gIC8vIERpcmVjdGlvbiBvZiBtZWRpYSBxdWVyeSAodXAsIGRvd24sIG9yIG9ubHkpXG4gICRkaXI6IGlmKGxlbmd0aCgkdmFsKSA+IDEsIG50aCgkdmFsLCAyKSwgdXApO1xuICAvLyBFdmVudHVhbCBvdXRwdXRcbiAgJHN0cjogJyc7XG4gIC8vIElzIGl0IGEgbmFtZWQgbWVkaWEgcXVlcnk/XG4gICRuYW1lZDogZmFsc2U7XG5cbiAgLy8gT3JpZW50YXRpb24gbWVkaWEgcXVlcmllcyBoYXZlIGEgdW5pcXVlIHN5bnRheFxuICBAaWYgJGJwID09ICdsYW5kc2NhcGUnIG9yICRicCA9PSAncG9ydHJhaXQnIHtcbiAgICBAcmV0dXJuICcob3JpZW50YXRpb246ICN7JGJwfSknO1xuICB9XG4gIEBlbHNlIGlmICRicCA9PSAncmV0aW5hJyB7XG4gICAgQHJldHVybiAnKC13ZWJraXQtbWluLWRldmljZS1waXhlbC1yYXRpbzogMiksIChtaW4tcmVzb2x1dGlvbjogMTkyZHBpKSc7XG4gIH1cblxuICAvLyBUcnkgdG8gcHVsbCBhIG5hbWVkIGJyZWFrcG9pbnQgb3V0IG9mIHRoZSAkYnJlYWtwb2ludHMgbWFwXG4gIEBpZiB0eXBlLW9mKCRicCkgPT0gJ3N0cmluZycge1xuICAgIEBpZiBtYXAtaGFzLWtleSgkYnJlYWtwb2ludHMsICRicCkge1xuICAgICAgQGlmICRkaXIgPT0gJ29ubHknIG9yICRkaXIgPT0gJ2Rvd24nIHtcbiAgICAgICAgJGJwLW1heDogLXpmLW1hcC1uZXh0KCRicmVha3BvaW50cywgJGJwKTtcbiAgICAgIH1cblxuICAgICAgJGJwOiBtYXAtZ2V0KCRicmVha3BvaW50cywgJGJwKTtcbiAgICAgICRuYW1lZDogdHJ1ZTtcbiAgICB9XG4gICAgQGVsc2Uge1xuICAgICAgJGJwOiAwO1xuICAgICAgQHdhcm4gJ2JyZWFrcG9pbnQoKTogXCIjeyR2YWx9XCIgaXMgbm90IGRlZmluZWQgaW4geW91ciAkYnJlYWtwb2ludHMgc2V0dGluZy4nO1xuICAgIH1cbiAgfVxuXG4gIC8vIENvbnZlcnQgYW55IHBpeGVsLCByZW0sIG9yIHVuaXRsZXNzIHZhbHVlIHRvIGVtXG4gICRicDogLXpmLWJwLXRvLWVtKCRicCk7XG4gIEBpZiAkYnAtbWF4IHtcbiAgICAkYnAtbWF4OiAtemYtYnAtdG8tZW0oJGJwLW1heCkgLSAoMS8xNik7XG4gIH1cblxuICAvLyBDb25kaXRpb25zIHRvIHNraXAgbWVkaWEgcXVlcnkgY3JlYXRpb25cbiAgLy8gLSBJdCdzIGEgbmFtZWQgYnJlYWtwb2ludCB0aGF0IHJlc29sdmVkIHRvIFwiMCBkb3duXCIgb3IgXCIwIHVwXCJcbiAgLy8gLSBJdCdzIGEgbnVtZXJpYyBicmVha3BvaW50IHRoYXQgcmVzb2x2ZWQgdG8gXCIwIFwiICsgYW55dGhpbmdcbiAgQGlmICRicCA+IDBlbSBvciAkZGlyID09ICdvbmx5JyBvciAkZGlyID09ICdkb3duJyB7XG4gICAgLy8gYG9ubHlgIHJhbmdlcyB1c2UgdGhlIGZvcm1hdCBgKG1pbi13aWR0aDogbikgYW5kIChtYXgtd2lkdGg6IG4pYFxuICAgIEBpZiAkZGlyID09ICdvbmx5JyB7XG4gICAgICAvLyBPbmx5IG5hbWVkIG1lZGlhIHF1ZXJpZXMgY2FuIGhhdmUgYW4gXCJvbmx5XCIgcmFuZ2VcbiAgICAgIEBpZiAkbmFtZWQgPT0gdHJ1ZSB7XG4gICAgICAgIC8vIE9ubHkgdXNlIFwibWluLXdpZHRoXCIgaWYgdGhlIGZsb29yIGlzIGdyZWF0ZXIgdGhhbiAwXG4gICAgICAgIEBpZiAkYnAgPiAwZW0ge1xuICAgICAgICAgICRzdHI6ICRzdHIgKyAnKG1pbi13aWR0aDogI3skYnB9KSc7XG5cbiAgICAgICAgICAvLyBPbmx5IGFkZCBcImFuZFwiIHRvIHRoZSBtZWRpYSBxdWVyeSBpZiB0aGVyZSdzIGEgY2VpbGluZ1xuICAgICAgICAgIEBpZiAkYnAtbWF4ICE9IG51bGwge1xuICAgICAgICAgICAgJHN0cjogJHN0ciArICcgYW5kICc7XG4gICAgICAgICAgfVxuICAgICAgICB9XG5cbiAgICAgICAgLy8gT25seSB1c2UgXCJtYXgtd2lkdGhcIiBpZiB0aGVyZSdzIGEgY2VpbGluZ1xuICAgICAgICBAaWYgJGJwLW1heCAhPSBudWxsIHtcbiAgICAgICAgICAkc3RyOiAkc3RyICsgJyhtYXgtd2lkdGg6ICN7JGJwLW1heH0pJztcbiAgICAgICAgfVxuICAgICAgfVxuICAgICAgQGVsc2Uge1xuICAgICAgICBAd2FybiAnYnJlYWtwb2ludCgpOiBPbmx5IG5hbWVkIG1lZGlhIHF1ZXJpZXMgY2FuIGhhdmUgYW4gYG9ubHlgIHJhbmdlLic7XG4gICAgICB9XG4gICAgfVxuXG4gICAgLy8gYGRvd25gIHJhbmdlcyB1c2UgdGhlIGZvcm1hdCBgKG1heC13aWR0aDogbilgXG4gICAgQGVsc2UgaWYgJGRpciA9PSAnZG93bicge1xuICAgICAgJG1heDogaWYoJG5hbWVkLCAkYnAtbWF4LCAkYnApO1xuXG4gICAgICAvLyBTa2lwIG1lZGlhIHF1ZXJ5IGNyZWF0aW9uIGlmIGlucHV0IHZhbHVlIGlzIGV4YWN0bHkgXCIwIGRvd25cIixcbiAgICAgIC8vIHVubGVzcyB0aGUgZnVuY3Rpb24gd2FzIGNhbGxlZCBhcyBcInNtYWxsIGRvd25cIiwgaW4gd2hpY2ggY2FzZSBpdCdzIGp1c3QgXCJzbWFsbCBvbmx5XCJcbiAgICAgIEBpZiAkbmFtZWQgb3IgJGJwID4gMGVtIHtcbiAgICAgICAgQGlmICRtYXggIT0gbnVsbCB7XG4gICAgICAgICAgJHN0cjogJHN0ciArICcobWF4LXdpZHRoOiAjeyRtYXh9KSc7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG5cbiAgICAvLyBgdXBgIHJhbmdlcyB1c2UgdGhlIGZvcm1hdCBgKG1pbi13aWR0aDogbilgXG4gICAgQGVsc2UgaWYgJGJwID4gMGVtIHtcbiAgICAgICRzdHI6ICRzdHIgKyAnKG1pbi13aWR0aDogI3skYnB9KSc7XG4gICAgfVxuICB9XG5cbiAgQHJldHVybiAkc3RyO1xufVxuXG4vLy8gV3JhcHMgYSBtZWRpYSBxdWVyeSBhcm91bmQgdGhlIGNvbnRlbnQgeW91IHB1dCBpbnNpZGUgdGhlIG1peGluLiBUaGlzIG1peGluIGFjY2VwdHMgYSBudW1iZXIgb2YgdmFsdWVzOlxuLy8vICAtIElmIGEgc3RyaW5nIGlzIHBhc3NlZCwgdGhlIG1peGluIHdpbGwgbG9vayBmb3IgaXQgaW4gdGhlIGAkYnJlYWtwb2ludHNgIG1hcCwgYW5kIHVzZSBhIG1lZGlhIHF1ZXJ5IHRoZXJlLlxuLy8vICAtIElmIGEgcGl4ZWwgdmFsdWUgaXMgcGFzc2VkLCBpdCB3aWxsIGJlIGNvbnZlcnRlZCB0byBhbiBlbSB2YWx1ZSB1c2luZyBgJGdsb2JhbC1mb250LXNpemVgIGFzIHRoZSBiYXNlLlxuLy8vICAtIElmIGEgcmVtIHZhbHVlIGlzIHBhc3NlZCwgdGhlIHVuaXQgd2lsbCBiZSBjaGFuZ2VkIHRvIGVtLlxuLy8vICAtIElmIGFuIGVtIHZhbHVlIGlzIHBhc3NlZCwgdGhlIHZhbHVlIHdpbGwgYmUgdXNlZCBhcy1pcy5cbi8vL1xuLy8vIEBwYXJhbSB7S2V5d29yZHxOdW1iZXJ9ICR2YWx1ZSAtIEJyZWFrcG9pbnQgbmFtZSwgb3IgcHgsIHJlbSwgb3IgZW0gdmFsdWUgdG8gcHJvY2Vzcy5cbi8vL1xuLy8vIEBvdXRwdXQgSWYgdGhlIGJyZWFrcG9pbnQgaXMgXCIwcHggYW5kIGxhcmdlclwiLCBvdXRwdXRzIHRoZSBjb250ZW50IGFzLWlzLiBPdGhlcndpc2UsIG91dHB1dHMgdGhlIGNvbnRlbnQgd3JhcHBlZCBpbiBhIG1lZGlhIHF1ZXJ5LlxuQG1peGluIGJyZWFrcG9pbnQoJHZhbHVlKSB7XG4gICRzdHI6IGJyZWFrcG9pbnQoJHZhbHVlKTtcbiAgJGJwOiBpbmRleCgkLXpmLWJyZWFrcG9pbnRzLWtleXMsICR2YWx1ZSk7XG4gICRwYnA6IGluZGV4KCQtemYtYnJlYWtwb2ludHMta2V5cywgJHByaW50LWJyZWFrcG9pbnQpO1xuXG4gIC8vIE1ha2UgYnJlYWtwb2ludCBzaXplIGF2YWlsYWJsZSBhcyBhIHZhcmlhYmxlXG4gICRvbGQtemYtc2l6ZTogJC16Zi16ZXJvLWJyZWFrcG9pbnQ7XG4gICQtemYtc2l6ZTogbnRoKCR2YWx1ZSwgMSkgIWdsb2JhbDsgLy8gZ2V0IHRoZSBmaXJzdCB2YWx1ZSB0byBhY2NvdW50IGZvciBgb25seWAgYW5kIGBkb3duYCBrZXl3b3Jkc1xuXG4gIC8vIElmICRzdHIgaXMgc3RpbGwgYW4gZW1wdHkgc3RyaW5nLCBubyBtZWRpYSBxdWVyeSBpcyBuZWVkZWRcbiAgQGlmICRzdHIgPT0gJycge1xuICAgIEBjb250ZW50O1xuICB9XG5cbiAgLy8gT3RoZXJ3aXNlLCB3cmFwIHRoZSBjb250ZW50IGluIGEgbWVkaWEgcXVlcnlcbiAgQGVsc2Uge1xuICAgIC8vIEZvciBuYW1lZCBicmVha3BvaW50cyBsZXNzIHRoYW4gb3IgZXF1YWwgdG8gJHByaW50LWJyZWFrcG9pbnQsIGFkZCBwcmludCB0byB0aGUgbWVkaWEgdHlwZXNcbiAgICBAaWYgJGJwICE9IG51bGwgYW5kICRicCA8PSAkcGJwIHtcbiAgICAgIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAjeyRzdHJ9IHtcbiAgICAgICAgQGNvbnRlbnQ7XG4gICAgICAgfVxuICAgIH1cbiAgICBAZWxzZSB7XG4gICAgICBAbWVkaWEgc2NyZWVuIGFuZCAjeyRzdHJ9IHtcbiAgICAgICAgQGNvbnRlbnQ7XG4gICAgICB9XG4gICAgfVxuICB9XG5cbiAgLy8gUmVzdG9yZSB0aGUgb2xkIGJyZWFrcG9pbnQgc2l6ZVxuICAkLXpmLXNpemU6ICRvbGQtemYtc2l6ZSAhZ2xvYmFsO1xufVxuXG4vLy8gQ29udmVycyB0aGUgYnJlYWtwb2ludHMgbWFwIHRvIGEgVVJMLWVuY29kZWQgc3RyaW5nLCBsaWtlIHRoaXM6IGBrZXkxPXZhbHVlMSZrZXkyPXZhbHVlMmAuIFRoZSB2YWx1ZSBpcyB0aGVuIGRyb3BwZWQgaW50byB0aGUgQ1NTIGZvciBhIHNwZWNpYWwgYDxtZXRhPmAgdGFnLCB3aGljaCBpcyByZWFkIGJ5IHRoZSBGb3VuZGF0aW9uIEphdmFTY3JpcHQuIFRoaXMgaXMgaG93IHdlIHRyYW5zZmVyIHZhbHVlcyBmcm9tIFNhc3MgdG8gSmF2YVNjcmlwdCwgc28gdGhleSBjYW4gYmUgZGVmaW5lZCBpbiBvbmUgcGxhY2UuXG4vLy8gQGFjY2VzcyBwcml2YXRlXG4vLy9cbi8vLyBAcGFyYW0ge01hcH0gJG1hcCAtIE1hcCB0byBjb252ZXJ0LlxuLy8vXG4vLy8gQHJldHVybnMge1N0cmluZ30gQSBzdHJpbmcgY29udGFpbmluZyB0aGUgbWFwJ3MgY29udGVudHMuXG5AZnVuY3Rpb24gLXpmLWJwLXNlcmlhbGl6ZSgkbWFwKSB7XG4gICRzdHI6ICcnO1xuICBAZWFjaCAka2V5LCAkdmFsdWUgaW4gJG1hcCB7XG4gICAgJHN0cjogJHN0ciArICRrZXkgKyAnPScgKyAtemYtYnAtdG8tZW0oJHZhbHVlKSArICcmJztcbiAgfVxuICAkc3RyOiBzdHItc2xpY2UoJHN0ciwgMSwgLTIpO1xuXG4gIEByZXR1cm4gJHN0cjtcbn1cblxuLy8vIEZpbmQgdGhlIG5leHQga2V5IGluIGEgbWFwLlxuLy8vIEBhY2Nlc3MgcHJpdmF0ZVxuLy8vXG4vLy8gQHBhcmFtIHtNYXB9ICRtYXAgLSBNYXAgdG8gdHJhdmVyc2UuXG4vLy8gQHBhcmFtIHtNaXhlZH0gJGtleSAtIEtleSB0byB1c2UgYXMgYSBzdGFydGluZyBwb2ludC5cbi8vL1xuLy8vIEByZXR1cm5zIHtNaXhlZH0gVGhlIHZhbHVlIGZvciB0aGUga2V5IGFmdGVyIGAka2V5YCwgaWYgYCRrZXlgIHdhcyBmb3VuZC4gSWYgYCRrZXlgIHdhcyBub3QgZm91bmQsIG9yIGAka2V5YCB3YXMgdGhlIGxhc3QgdmFsdWUgaW4gdGhlIG1hcCwgcmV0dXJucyBgbnVsbGAuXG5AZnVuY3Rpb24gLXpmLW1hcC1uZXh0KCRtYXAsICRrZXkpIHtcblxuICAvLyBTdG9yZSB0aGUga2V5cyBvZiB0aGUgbWFwIGFzIGEgbGlzdFxuICAkdmFsdWVzOiBtYXAta2V5cygkbWFwKTtcblxuICAkaTogMDtcblxuICAvLyBJZiB0aGUgS2V5IEV4aXN0cywgR2V0IHRoZSBpbmRleCBvZiB0aGUga2V5IHdpdGhpbiB0aGUgbWFwIGFuZCBhZGQgMSB0byBpdCBmb3IgdGhlIG5leHQgYnJlYWtwb2ludCBpbiB0aGUgbWFwXG4gIEBpZiAobWFwLWhhcy1rZXkoJG1hcCwgJGtleSkpIHtcbiAgICAkaTogaW5kZXgoJHZhbHVlcywgJGtleSkgKyAxO1xuICB9XG5cbiAgLy8gSWYgdGhlIGtleSBkb2Vzbid0IGV4aXN0LCBvciBpdCdzIHRoZSBsYXN0IGtleSBpbiB0aGUgbWFwLCByZXR1cm4gbnVsbFxuICBAaWYgKCRpID4gbGVuZ3RoKCRtYXApIG9yICRpID09IDApIHtcbiAgICBAcmV0dXJuIG51bGw7XG4gIH1cbiAgLy8gT3RoZXJ3aXNlLCByZXR1cm4gdGhlIHZhbHVlXG4gIEBlbHNlIHtcbiAgICBAcmV0dXJuIG1hcC1nZXQoJG1hcCwgbnRoKCR2YWx1ZXMsICRpKSk7XG4gIH1cblxufVxuXG4vLy8gUmV0dXJuIGEgbGlzdCBvZiBvdXIgbmFtZWQgYnJlYWtwb2ludHMgbGVzcyB0aGFuICRrZXkuIFVzZWZ1bCBmb3IgZGVhbGluZyB3aXRoXG4vLy8gcmVzcG9uc2l2ZSBndXR0ZXJzIGZvciB0aGUgZ3JpZC5cbi8vLyBAYWNjZXNzIHByaXZhdGVcbi8vL1xuLy8vIEBwYXJhbSB7U3RyaW5nfSAka2V5IC0gS2V5IHRvIHVzZSBhcyBsYXN0IGJyZWFrcG9pbnQuXG4vLy9cbi8vLyBAcmV0dXJucyB7QXJyYXl9IFRoZSBsaXN0IG9mIGJyZWFrcG9pbnRzIHVwIHRvIGFuZC4gSWYgJGtleSBpcyBhdXRvLCByZXR1cm5zIGJyZWFrcG9pbnRzIGFib3ZlIHRoZSB6ZXJvXG5AZnVuY3Rpb24gLXpmLWJyZWFrcG9pbnRzLWxlc3MtdGhhbigka2V5KSB7XG4gICRsaXN0OiAoKTtcbiAgJGZvdW5kX2tleTogZmFsc2U7XG5cbiAgQGVhY2ggJG5hbWUgaW4gJC16Zi1icmVha3BvaW50cy1rZXlzIHtcbiAgICBAaWYgKCRuYW1lID09ICRrZXkpIHtcbiAgICAgICRmb3VuZF9rZXk6IHRydWU7XG4gICAgfVxuICAgIEBpZiBub3QgJGZvdW5kX2tleSB7XG4gICAgICAkbGlzdDogYXBwZW5kKCRsaXN0LCAkbmFtZSk7XG4gICAgfVxuICB9XG4gIEByZXR1cm4gJGxpc3Q7XG59XG5cbi8vLyBSZXR1cm4gYSBsaXN0IG9mIG91ciBuYW1lZCBicmVha3BvaW50cyBsZXNzIHRoYW4gJGtleS4gVXNlZnVsIGZvciBkZWFsaW5nIHdpdGhcbi8vLyByZXNwb25zaXZlIGd1dHRlcnMgZm9yIHRoZSBncmlkLlxuLy8vIEBhY2Nlc3MgcHJpdmF0ZVxuLy8vXG4vLy8gQHBhcmFtIHtTdHJpbmd9ICRicmVha3BvaW5nIC0gYSBuYW1lZCBvciBub24tbmFtZWQgYnJlYWtwb2luZy5cbi8vL1xuLy8vIEByZXR1cm5zIHtBcnJheX0gVGhlIGxpc3Qgb2YgYnJlYWtwb2ludHMgdXAgdG8gYW5kLiBJZiAka2V5IGlzIGF1dG8sIHJldHVybnMgYnJlYWtwb2ludHMgYWJvdmUgdGhlIHplcm9cbkBmdW5jdGlvbiAtemYtY2xvc2VzdC1uYW1lZC1icmVha3BvaW50KCRicmVha3BvaW50KSB7XG4gICRsYXN0OiAkLXpmLXplcm8tYnJlYWtwb2ludDtcbiAgJGZvdW5kOiBmYWxzZTtcblxuICAkdmFsdWU6IHVuaXRsZXNzLWNhbGMoJGJyZWFrcG9pbnQsIDFweCk7XG4gIEBlYWNoICRrZXksICR2YWwgaW4gJGJyZWFrcG9pbnRzIHtcbiAgICBAaWYgbm90ICRmb3VuZCB7XG4gICAgICBAaWYgdW5pdGxlc3MtY2FsYygkdmFsKSA+ICR2YWx1ZSB7XG4gICAgICAgICRmb3VuZDogdHJ1ZTtcbiAgICAgIH0gQGVsc2Uge1xuICAgICAgICAkbGFzdDogJGtleTtcbiAgICAgIH1cbiAgICB9XG4gIH1cblxuICBAcmV0dXJuICRsYXN0O1xufVxuXG4vLy8gR2V0IGEgdmFsdWUgZm9yIGEgYnJlYWtwb2ludCBmcm9tIGEgcmVzcG9uc2l2ZSBjb25maWcgbWFwIG9yIHNpbmdsZSB2YWx1ZS5cbi8vLyAtIElmIHRoZSBjb25maWcgaXMgYSBzaW5nbGUgdmFsdWUsIHJldHVybiBpdCByZWdhcmRsZXNzIG9mIGAkdmFsdWVgLlxuLy8vIC0gSWYgdGhlIGNvbmZpZyBpcyBhIG1hcCBhbmQgaGFzIHRoZSBrZXkgYCR2YWx1ZWAsIHRoZSBleGFjdCBicmVha3BvaW50IHZhbHVlIGlzIHJldHVybmVkLlxuLy8vIC0gSWYgdGhlIGNvbmZpZyBpcyBhIG1hcCBhbmQgZG9lcyAqbm90KiBoYXZlIHRoZSBicmVha3BvaW50LCB0aGUgdmFsdWUgbWF0Y2hpbmcgdGhlIG5leHQgbG93ZXN0IGJyZWFrcG9pbnQgaW4gdGhlIGNvbmZpZyBtYXAgaXMgcmV0dXJuZWQuXG4vLy8gQGFjY2VzcyBwcml2YXRlXG4vLy9cbi8vLyBAcGFyYW0ge051bWJlcnxNYXB9ICRtYXAgLSBSZXNwb25zaXZlIGNvbmZpZyBtYXAgb3Igc2luZ2xlIHZhbHVlLlxuLy8vIEBwYXJhbSB7S2V5d29yZH0gJHZhbHVlIC0gQnJlYWtwb2ludCBuYW1lIHRvIHVzZS5cbi8vL1xuLy8vIEByZXR1cm4ge01peGVkfSBUaGUgY29ycmVzcG9uZGluZyBicmVha3BvaW50IHZhbHVlLlxuQGZ1bmN0aW9uIC16Zi1nZXQtYnAtdmFsKCRtYXAsICR2YWx1ZSkge1xuICAvLyBJZiB0aGUgZ2l2ZW4gbWFwIGlzIGEgc2luZ2xlIHZhbHVlLCByZXR1cm4gaXRcbiAgQGlmIHR5cGUtb2YoJG1hcCkgPT0gJ251bWJlcicge1xuICAgIEByZXR1cm4gJG1hcDtcbiAgfVxuXG5cbiAgLy8gQ2hlY2sgaWYgdGhlIGJyZWFrcG9pbnQgbmFtZSBleGlzdHMgZ2xvYmFsbHlcbiAgQGlmIG5vdCBtYXAtaGFzLWtleSgkYnJlYWtwb2ludHMsICR2YWx1ZSkge1xuICAgIEBpZiB0eXBlLW9mKCR2YWx1ZSkgPT0gJ251bWJlcicge1xuICAgICAgJHZhbHVlOiAtemYtY2xvc2VzdC1uYW1lZC1icmVha3BvaW50KCR2YWx1ZSk7XG4gICAgfSBAZWxzZSB7XG4gICAgICBAcmV0dXJuIG51bGw7XG4gICAgfVxuICB9XG4gIC8vIENoZWNrIGlmIHRoZSBicmVha3BvaW50IG5hbWUgZXhpc3RzIGluIHRoZSBsb2NhbCBjb25maWcgbWFwXG4gIEBlbHNlIGlmIG1hcC1oYXMta2V5KCRtYXAsICR2YWx1ZSkge1xuICAgIC8vIElmIGl0IGRvZXMsIGp1c3QgcmV0dXJuIHRoZSB2YWx1ZVxuICAgIEByZXR1cm4gbWFwLWdldCgkbWFwLCAkdmFsdWUpO1xuICB9XG4gIC8vIE90aGVyd2lzZSwgZmluZCB0aGUgbmV4dCBsb3dlc3QgYnJlYWtwb2ludCBhbmQgcmV0dXJuIHRoYXQgdmFsdWVcbiAgQGVsc2Uge1xuICAgICRhbmNob3I6IG51bGw7XG4gICAgJGZvdW5kOiBmYWxzZTtcblxuICAgIEBlYWNoICRrZXksICR2YWwgaW4gJGJyZWFrcG9pbnRzIHtcbiAgICAgIEBpZiBub3QgJGZvdW5kIHtcbiAgICAgICAgQGlmIG1hcC1oYXMta2V5KCRtYXAsICRrZXkpIHtcbiAgICAgICAgICAkYW5jaG9yOiAka2V5O1xuICAgICAgICB9XG4gICAgICAgIEBpZiAka2V5ID09ICR2YWx1ZSB7XG4gICAgICAgICAgJGZvdW5kOiB0cnVlO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuXG4gICAgQHJldHVybiBtYXAtZ2V0KCRtYXAsICRhbmNob3IpO1xuICB9XG59XG5cbkBpZiBtYXAtaGFzLWtleSgkYnJlYWtwb2ludHMsIHNtYWxsKSB7XG4gICRzbWFsbC11cDogc2NyZWVuO1xuICAkc21hbGwtb25seTogdW5xdW90ZSgnc2NyZWVuIGFuZCAje2JyZWFrcG9pbnQoc21hbGwgb25seSl9Jyk7XG59XG5cbkBpZiBtYXAtaGFzLWtleSgkYnJlYWtwb2ludHMsIG1lZGl1bSkge1xuICAkbWVkaXVtLXVwOiB1bnF1b3RlKCdzY3JlZW4gYW5kICN7YnJlYWtwb2ludChtZWRpdW0pfScpO1xuICAkbWVkaXVtLW9ubHk6IHVucXVvdGUoJ3NjcmVlbiBhbmQgI3ticmVha3BvaW50KG1lZGl1bSBvbmx5KX0nKTtcbn1cblxuQGlmIG1hcC1oYXMta2V5KCRicmVha3BvaW50cywgbGFyZ2UpIHtcbiAgJGxhcmdlLXVwOiB1bnF1b3RlKCdzY3JlZW4gYW5kICN7YnJlYWtwb2ludChsYXJnZSl9Jyk7XG4gICRsYXJnZS1vbmx5OiB1bnF1b3RlKCdzY3JlZW4gYW5kICN7YnJlYWtwb2ludChsYXJnZSBvbmx5KX0nKTtcbn1cblxuQGlmIG1hcC1oYXMta2V5KCRicmVha3BvaW50cywgeGxhcmdlKSB7XG4gICR4bGFyZ2UtdXA6IHVucXVvdGUoJ3NjcmVlbiBhbmQgI3ticmVha3BvaW50KHhsYXJnZSl9Jyk7XG4gICR4bGFyZ2Utb25seTogdW5xdW90ZSgnc2NyZWVuIGFuZCAje2JyZWFrcG9pbnQoeGxhcmdlIG9ubHkpfScpO1xufVxuXG5AaWYgbWFwLWhhcy1rZXkoJGJyZWFrcG9pbnRzLCB4eGxhcmdlKSB7XG4gICR4eGxhcmdlLXVwOiB1bnF1b3RlKCdzY3JlZW4gYW5kICN7YnJlYWtwb2ludCh4eGxhcmdlKX0nKTtcbn1cbiIsIi8vIEZvdW5kYXRpb24gZm9yIFNpdGVzIGJ5IFpVUkJcbi8vIGZvdW5kYXRpb24uenVyYi5jb21cbi8vIExpY2Vuc2VkIHVuZGVyIE1JVCBPcGVuIFNvdXJjZVxuXG4vLy8vXG4vLy8gQGdyb3VwIHJldmVhbFxuLy8vL1xuXG4vLy8gRGVmYXVsdCBiYWNrZ3JvdW5kIGNvbG9yIG9mIGEgbW9kYWwuXG4vLy8gQHR5cGUgQ29sb3JcbiRyZXZlYWwtYmFja2dyb3VuZDogJHdoaXRlICFkZWZhdWx0O1xuXG4vLy8gRGVmYXVsdCB3aWR0aCBvZiBhIG1vZGFsLCB3aXRoIG5vIGNsYXNzIGFwcGxpZWQuXG4vLy8gQHR5cGUgTnVtYmVyXG4kcmV2ZWFsLXdpZHRoOiA2MDBweCAhZGVmYXVsdDtcblxuLy8vIERlZmF1bHQgbWF4aW11bSB3aWR0aCBvZiBhIG1vZGFsLlxuLy8vIEB0eXBlIE51bWJlclxuJHJldmVhbC1tYXgtd2lkdGg6ICRnbG9iYWwtd2lkdGggIWRlZmF1bHQ7XG5cbi8vLyBEZWZhdWx0IHBhZGRpbmcgaW5zaWRlIGEgbW9kYWwuXG4vLy8gQHR5cGUgTnVtYmVyXG4kcmV2ZWFsLXBhZGRpbmc6ICRnbG9iYWwtcGFkZGluZyAhZGVmYXVsdDtcblxuLy8vIERlZmF1bHQgYm9yZGVyIGFyb3VuZCBhIG1vZGFsLlxuLy8vIEB0eXBlIE51bWJlclxuJHJldmVhbC1ib3JkZXI6IDFweCBzb2xpZCAkbWVkaXVtLWdyYXkgIWRlZmF1bHQ7XG5cbi8vLyBEZWZhdWx0IHJhZGl1cyBmb3IgbW9kYWwuXG4vLy8gQHR5cGUgTnVtYmVyXG4kcmV2ZWFsLXJhZGl1czogJGdsb2JhbC1yYWRpdXMgIWRlZmF1bHQ7XG5cbi8vLyB6LWluZGV4IGZvciBtb2RhbHMuIFRoZSBvdmVybGF5IHVzZXMgdGhpcyB2YWx1ZSwgd2hpbGUgdGhlIG1vZGFsIGl0c2VsZiB1c2VzIHRoaXMgdmFsdWUgcGx1cyBvbmUuXG4vLy8gQHR5cGUgTnVtYmVyXG4kcmV2ZWFsLXppbmRleDogMTAwNSAhZGVmYXVsdDtcblxuLy8vIEJhY2tncm91bmQgY29sb3Igb2YgbW9kYWwgb3ZlcmxheXMuXG4vLy8gQHR5cGUgQ29sb3JcbiRyZXZlYWwtb3ZlcmxheS1iYWNrZ3JvdW5kOiByZ2JhKCRibGFjaywgMC40NSkgIWRlZmF1bHQ7XG5cblxuLy8gUGxhY2Vob2xkZXIgc2VsZWN0b3IgZm9yIG1lZGl1bS1hbmQtdXAgbW9kYWxzXG4vLyBQcmV2ZW50cyBkdXBsaWNhdGUgQ1NTIHdoZW4gZGVmaW5pbmcgbXVsdGlwbGUgUmV2ZWFsIHNpemVzXG5AaW5jbHVkZSBicmVha3BvaW50KG1lZGl1bSkge1xuICAlcmV2ZWFsLWNlbnRlcmVkIHtcbiAgICByaWdodDogYXV0bztcbiAgICBsZWZ0OiBhdXRvO1xuICAgIG1hcmdpbjogMCBhdXRvO1xuICB9XG59XG5cblxuLy8vIEFkZHMgc3R5bGVzIGZvciBhIG1vZGFsIG92ZXJsYXkuXG4vLy8gQHBhcmFtIHtDb2xvcn0gJGJhY2tncm91bmQgWyRyZXZlYWwtb3ZlcmxheS1iYWNrZ3JvdW5kXSAtIEJhY2tncm91bmQgY29sb3Igb2YgdGhlIG92ZXJsYXkuXG5AbWl4aW4gcmV2ZWFsLW92ZXJsYXkoJGJhY2tncm91bmQ6ICRyZXZlYWwtb3ZlcmxheS1iYWNrZ3JvdW5kKSB7XG4gIHBvc2l0aW9uOiBmaXhlZDtcbiAgdG9wOiAwO1xuICByaWdodDogMDtcbiAgYm90dG9tOiAwO1xuICBsZWZ0OiAwO1xuICB6LWluZGV4OiAkcmV2ZWFsLXppbmRleDtcblxuICBkaXNwbGF5OiBub25lO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAkYmFja2dyb3VuZDtcbiAgb3ZlcmZsb3cteTogc2Nyb2xsO1xufVxuXG4vLy8gQWRkcyBiYXNlIHN0eWxlcyBmb3IgYSBtb2RhbC5cbkBtaXhpbiByZXZlYWwtbW9kYWwtYmFzZSB7XG4gIEBpbmNsdWRlIGRpc2FibGUtbW91c2Utb3V0bGluZTtcbiAgei1pbmRleDogJHJldmVhbC16aW5kZXggKyAxO1xuICAvLyBXb3JrYXJvdW5kIGFuZHJvaWQgYnJvd3NlciB6LWluZGV4IGJ1Z1xuICBiYWNrZmFjZS12aXNpYmlsaXR5OiBoaWRkZW47XG5cbiAgZGlzcGxheTogbm9uZTtcbiAgcGFkZGluZzogJHJldmVhbC1wYWRkaW5nO1xuXG4gIGJvcmRlcjogJHJldmVhbC1ib3JkZXI7XG4gIGJvcmRlci1yYWRpdXM6ICRyZXZlYWwtcmFkaXVzO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAkcmV2ZWFsLWJhY2tncm91bmQ7XG5cbiAgQGluY2x1ZGUgYnJlYWtwb2ludChtZWRpdW0pIHtcbiAgICBtaW4taGVpZ2h0OiAwO1xuICB9XG5cbiAgLy8gTWFrZSBzdXJlIHJvd3MgZG9uJ3QgaGF2ZSBhIG1pbi13aWR0aCBvbiB0aGVtXG4gIC5jb2x1bW4ge1xuICAgIG1pbi13aWR0aDogMDtcbiAgfVxuXG4gIC8vIFN0cmlwIG1hcmdpbnMgZnJvbSB0aGUgbGFzdCBpdGVtIGluIHRoZSBtb2RhbFxuICA+IDpsYXN0LWNoaWxkIHtcbiAgICBtYXJnaW4tYm90dG9tOiAwO1xuICB9XG59XG5cbi8vLyBBZGp1c3RzIHRoZSB3aWR0aCBvZiBhIG1vZGFsLlxuLy8vIEBwYXJhbSB7TnVtYmVyfSAkd2lkdGggLSBXaWR0aCBvZiB0aGUgbW9kYWwuIEdlbmVyYWxseSBhIHBlcmNlbnRhZ2UuXG4vLy8gQHBhcmFtIHtOdW1iZXJ9ICRtYXgtd2lkdGggWyRyZXZlYWwtbWF4LXdpZHRoXSAtIE1heGltdW0gd2lkdGggb2YgdGhlIG1vZGFsLlxuQG1peGluIHJldmVhbC1tb2RhbC13aWR0aChcbiAgJHdpZHRoOiAkcmV2ZWFsLXdpZHRoLFxuICAkbWF4LXdpZHRoOiAkcmV2ZWFsLW1heC13aWR0aFxuKSB7XG4gIEBpbmNsdWRlIGJyZWFrcG9pbnQobWVkaXVtKSB7XG4gICAgQGV4dGVuZCAlcmV2ZWFsLWNlbnRlcmVkO1xuICAgIHdpZHRoOiAkd2lkdGg7XG4gICAgbWF4LXdpZHRoOiAkbWF4LXdpZHRoO1xuICB9XG59XG5cbi8vLyBDcmVhdGVzIGEgZnVsbC1zY3JlZW4gbW9kYWwsIHdoaWNoIHN0cmV0Y2hlcyB0aGUgZnVsbCB3aWR0aCBhbmQgaGVpZ2h0IG9mIHRoZSB3aW5kb3cuXG5AbWl4aW4gcmV2ZWFsLW1vZGFsLWZ1bGxzY3JlZW4ge1xuICB0b3A6IDA7XG4gIGxlZnQ6IDA7XG5cbiAgd2lkdGg6IDEwMCU7XG4gIG1heC13aWR0aDogbm9uZTtcbiAgaGVpZ2h0OiAxMDAlO1xuICBoZWlnaHQ6IDEwMHZoOyAvLyBzYXNzLWxpbnQ6ZGlzYWJsZS1saW5lIG5vLWR1cGxpY2F0ZS1wcm9wZXJ0aWVzXG4gIG1pbi1oZWlnaHQ6IDEwMHZoO1xuICBtYXJnaW4tbGVmdDogMDtcblxuICBib3JkZXI6IDA7XG4gIGJvcmRlci1yYWRpdXM6IDA7XG59XG5cbkBtaXhpbiBmb3VuZGF0aW9uLXJldmVhbCB7XG4gIC8vIFtUT0RPXSBJcyB0aGlzIG5lY2Vzc2FyeT9cbiAgYm9keS5pcy1yZXZlYWwtb3BlbiB7IC8vIHNhc3MtbGludDpkaXNhYmxlLWxpbmUgbm8tcXVhbGlmeWluZy1lbGVtZW50c1xuICAgIG92ZXJmbG93OiBoaWRkZW47XG4gIH1cblxuICAvLyBodG1sIGdldHMgdGhpcyBjbGFzcyBvbmx5IGluIGlPU1xuICBodG1sLmlzLXJldmVhbC1vcGVuLFxuICBodG1sLmlzLXJldmVhbC1vcGVuIGJvZHkge1xuICAgIG1pbi1oZWlnaHQ6IDEwMCU7XG4gICAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgICBwb3NpdGlvbjogZml4ZWQ7XG4gICAgdXNlci1zZWxlY3Q6IG5vbmU7XG4gIH1cblxuICAvLyBPdmVybGF5XG4gIC5yZXZlYWwtb3ZlcmxheSB7XG4gICAgQGluY2x1ZGUgcmV2ZWFsLW92ZXJsYXk7XG4gIH1cblxuICAvLyBNb2RhbCBjb250YWluZXJcbiAgLnJldmVhbCB7XG4gICAgQGluY2x1ZGUgcmV2ZWFsLW1vZGFsLWJhc2U7XG4gICAgQGluY2x1ZGUgcmV2ZWFsLW1vZGFsLXdpZHRoKCRyZXZlYWwtd2lkdGgpO1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICB0b3A6IDEwMHB4O1xuICAgIG1hcmdpbi1yaWdodDogYXV0bztcbiAgICBtYXJnaW4tbGVmdDogYXV0bztcbiAgICBvdmVyZmxvdy15OiBhdXRvO1xuXG4gICAgLy8gUmVtb3ZlIHBhZGRpbmdcbiAgICAmLmNvbGxhcHNlIHtcbiAgICAgIHBhZGRpbmc6IDA7XG4gICAgfVxuXG4gICAgLy8gU2l6aW5nIGNsYXNzZXNcbiAgICAmLnRpbnkgIHsgQGluY2x1ZGUgcmV2ZWFsLW1vZGFsLXdpZHRoKDMwJSk7IH1cbiAgICAmLnNtYWxsIHsgQGluY2x1ZGUgcmV2ZWFsLW1vZGFsLXdpZHRoKDUwJSk7IH1cbiAgICAmLmxhcmdlIHsgQGluY2x1ZGUgcmV2ZWFsLW1vZGFsLXdpZHRoKDkwJSk7IH1cblxuICAgIC8vIEZ1bGwtc2NyZWVuIG1vZGVcbiAgICAmLmZ1bGwge1xuICAgICAgQGluY2x1ZGUgcmV2ZWFsLW1vZGFsLWZ1bGxzY3JlZW47XG4gICAgfVxuXG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludCgkLXpmLXplcm8tYnJlYWtwb2ludCBvbmx5KSB7XG4gICAgICBAaW5jbHVkZSByZXZlYWwtbW9kYWwtZnVsbHNjcmVlbjtcbiAgICB9XG5cbiAgICAmLndpdGhvdXQtb3ZlcmxheSB7XG4gICAgICBwb3NpdGlvbjogZml4ZWQ7XG4gICAgfVxuICB9XG59XG4iLCIvLyBIZWxwZXIgZnVuY3Rpb24gZm9yIHRoZSBub3JtYWxpemUoKSBtaXhpbi5cbkBmdW5jdGlvbiBfbm9ybWFsaXplLWluY2x1ZGUoJHNlY3Rpb24sICRleGNsdWRlOiBudWxsKSB7XG4gIC8vIEluaXRpYWxpemUgdGhlIGdsb2JhbCB2YXJpYWJsZXMgbmVlZGVkIGJ5IHRoaXMgZnVuY3Rpb24uXG4gIEBpZiBub3QgZ2xvYmFsX3ZhcmlhYmxlX2V4aXN0cyhfbm9ybWFsaXplLWluY2x1ZGUpIHtcbiAgICAkX25vcm1hbGl6ZS1pbmNsdWRlOiAoKSAhZ2xvYmFsO1xuICAgICRfbm9ybWFsaXplLWV4Y2x1ZGU6ICgpICFnbG9iYWw7XG4gIH1cbiAgLy8gU2luY2Ugd2UgYXJlIGdpdmVuIDIgcGFyYW1ldGVycywgc2V0IHRoZSBnbG9iYWwgdmFyaWFibGVzLlxuICBAaWYgJGV4Y2x1ZGUgIT0gbnVsbCB7XG4gICAgJGluY2x1ZGU6ICRzZWN0aW9uO1xuICAgIC8vIFNhc3MgZG9lc24ndCBoYXZlIHN0YXRpYyB2YXJpYWJsZXMsIHNvIHRoZSB3b3JrLWFyb3VuZCBpcyB0byBzdHVmZiB0aGVzZVxuICAgIC8vIHZhbHVlcyBpbnRvIGdsb2JhbCB2YXJpYWJsZXMgc28gd2UgY2FuIGFjY2VzcyB0aGVtIGluIGZ1dHVyZSBjYWxscy5cbiAgICAkX25vcm1hbGl6ZS1pbmNsdWRlOiBpZih0eXBlLW9mKCRpbmNsdWRlKSA9PSAnbGlzdCcsICRpbmNsdWRlLCAoJGluY2x1ZGUpKSAhZ2xvYmFsO1xuICAgICRfbm9ybWFsaXplLWV4Y2x1ZGU6IGlmKHR5cGUtb2YoJGV4Y2x1ZGUpID09ICdsaXN0JywgJGV4Y2x1ZGUsICgkZXhjbHVkZSkpICFnbG9iYWw7XG4gICAgQHJldHVybiB0cnVlO1xuICB9XG5cbiAgLy8gQ2hlY2sgaWYgJHNlY3Rpb24gaXMgaW4gdGhlICRpbmNsdWRlIGxpc3QuXG4gIEBpZiBpbmRleCgkX25vcm1hbGl6ZS1pbmNsdWRlLCAkc2VjdGlvbikge1xuICAgIEByZXR1cm4gdHJ1ZTtcbiAgfVxuICAvLyBJZiAkaW5jbHVkZSBpcyBzZXQgdG8gKGFsbCksIG1ha2Ugc3VyZSAkc2VjdGlvbiBpcyBub3QgaW4gJGV4Y2x1ZGUuXG4gIEBlbHNlIGlmIG5vdCBpbmRleCgkX25vcm1hbGl6ZS1leGNsdWRlLCAkc2VjdGlvbikgYW5kIGluZGV4KCRfbm9ybWFsaXplLWluY2x1ZGUsIGFsbCkge1xuICAgIEByZXR1cm4gdHJ1ZTtcbiAgfVxuICBAcmV0dXJuIGZhbHNlO1xufVxuXG5AbWl4aW4gbm9ybWFsaXplKCRpbmNsdWRlOiAoYWxsKSwgJGV4Y2x1ZGU6ICgpKSB7XG4gIC8vIEluaXRpYWxpemUgdGhlIGhlbHBlciBmdW5jdGlvbiBieSBwYXNzaW5nIGl0IHRoaXMgbWl4aW4ncyBwYXJhbWV0ZXJzLlxuICAkaW5pdDogX25vcm1hbGl6ZS1pbmNsdWRlKCRpbmNsdWRlLCAkZXhjbHVkZSk7XG5cbiAgLy8gSWYgd2UndmUgY3VzdG9taXplZCBhbnkgZm9udCB2YXJpYWJsZXMsIHdlJ2xsIG5lZWQgZXh0cmEgcHJvcGVydGllcy5cbiAgQGlmICRiYXNlLWZvbnQtc2l6ZSAhPSAxNnB4XG4gICAgb3IgJGJhc2UtbGluZS1oZWlnaHQgIT0gMjRweFxuICAgIG9yICRiYXNlLXVuaXQgIT0gJ2VtJ1xuICAgIG9yICRoMS1mb250LXNpemUgIT0gMiAgICAqICRiYXNlLWZvbnQtc2l6ZVxuICAgIG9yICRoMi1mb250LXNpemUgIT0gMS41ICAqICRiYXNlLWZvbnQtc2l6ZVxuICAgIG9yICRoMy1mb250LXNpemUgIT0gMS4xNyAqICRiYXNlLWZvbnQtc2l6ZVxuICAgIG9yICRoNC1mb250LXNpemUgIT0gMSAgICAqICRiYXNlLWZvbnQtc2l6ZVxuICAgIG9yICRoNS1mb250LXNpemUgIT0gMC44MyAqICRiYXNlLWZvbnQtc2l6ZVxuICAgIG9yICRoNi1mb250LXNpemUgIT0gMC42NyAqICRiYXNlLWZvbnQtc2l6ZSB7XG4gICAgJG5vcm1hbGl6ZS12ZXJ0aWNhbC1yaHl0aG06IHRydWUgIWdsb2JhbDtcbiAgfVxuXG4gIC8qISBub3JtYWxpemUtc2NzcyB8IE1JVC9HUEx2MiBMaWNlbnNlIHwgYml0Lmx5L25vcm1hbGl6ZS1zY3NzICovXG5cbiAgQGlmIF9ub3JtYWxpemUtaW5jbHVkZShkb2N1bWVudCkge1xuICAgIC8qIERvY3VtZW50XG4gICAgICAgPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cblxuICAgIC8qKlxuICAgICAqIDEuIENoYW5nZSB0aGUgZGVmYXVsdCBmb250IGZhbWlseSBpbiBhbGwgYnJvd3NlcnMgKG9waW5pb25hdGVkKS5cbiAgICAgKiAyLiBDb3JyZWN0IHRoZSBsaW5lIGhlaWdodCBpbiBhbGwgYnJvd3NlcnMuXG4gICAgICogMy4gUHJldmVudCBhZGp1c3RtZW50cyBvZiBmb250IHNpemUgYWZ0ZXIgb3JpZW50YXRpb24gY2hhbmdlcyBpblxuICAgICAqICAgIElFIG9uIFdpbmRvd3MgUGhvbmUgYW5kIGluIGlPUy5cbiAgICAgKi9cblxuICAgIGh0bWwge1xuICAgICAgZm9udC1mYW1pbHk6ICRiYXNlLWZvbnQtZmFtaWx5OyAvKiAxICovXG4gICAgICBAaWYgJG5vcm1hbGl6ZS12ZXJ0aWNhbC1yaHl0aG0ge1xuICAgICAgICAvLyBDb3JyZWN0IG9sZCBicm93c2VyIGJ1ZyB0aGF0IHByZXZlbnRlZCBhY2Nlc3NpYmxlIHJlc2l6aW5nIG9mIHRleHRcbiAgICAgICAgLy8gd2hlbiByb290IGZvbnQtc2l6ZSBpcyBzZXQgd2l0aCBweCBvciBlbS5cbiAgICAgICAgZm9udC1zaXplOiAoJGJhc2UtZm9udC1zaXplIC8gMTZweCkgKiAxMDAlO1xuICAgICAgICBsaW5lLWhlaWdodDogKCRiYXNlLWxpbmUtaGVpZ2h0IC8gJGJhc2UtZm9udC1zaXplKSAqIDFlbTsgLyogMiAqL1xuICAgICAgfVxuICAgICAgQGVsc2Uge1xuICAgICAgICBsaW5lLWhlaWdodDogMS4xNTsgLyogMiAqL1xuICAgICAgfVxuICAgICAgLW1zLXRleHQtc2l6ZS1hZGp1c3Q6IDEwMCU7IC8qIDMgKi9cbiAgICAgIC13ZWJraXQtdGV4dC1zaXplLWFkanVzdDogMTAwJTsgLyogMyAqL1xuICAgIH1cbiAgfVxuXG4gIEBpZiBfbm9ybWFsaXplLWluY2x1ZGUoc2VjdGlvbnMpIHtcbiAgICAvKiBTZWN0aW9uc1xuICAgICAgID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXG5cbiAgICAvKipcbiAgICAgKiBSZW1vdmUgdGhlIG1hcmdpbiBpbiBhbGwgYnJvd3NlcnMgKG9waW5pb25hdGVkKS5cbiAgICAgKi9cblxuICAgIGJvZHkge1xuICAgICAgbWFyZ2luOiAwO1xuICAgIH1cblxuICAgIC8qKlxuICAgICAqIEFkZCB0aGUgY29ycmVjdCBkaXNwbGF5IGluIElFIDktLlxuICAgICAqL1xuXG4gICAgYXJ0aWNsZSxcbiAgICBhc2lkZSxcbiAgICBmb290ZXIsXG4gICAgaGVhZGVyLFxuICAgIG5hdixcbiAgICBzZWN0aW9uIHtcbiAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIH1cblxuICAgIC8qKlxuICAgICAqIENvcnJlY3QgdGhlIGZvbnQgc2l6ZSBhbmQgbWFyZ2luIG9uIGBoMWAgZWxlbWVudHMgd2l0aGluIGBzZWN0aW9uYCBhbmRcbiAgICAgKiBgYXJ0aWNsZWAgY29udGV4dHMgaW4gQ2hyb21lLCBGaXJlZm94LCBhbmQgU2FmYXJpLlxuICAgICAqL1xuXG4gICAgaDEge1xuICAgICAgQGluY2x1ZGUgbm9ybWFsaXplLWZvbnQtc2l6ZSgkaDEtZm9udC1zaXplKTtcbiAgICAgIEBpZiAkbm9ybWFsaXplLXZlcnRpY2FsLXJoeXRobSB7XG4gICAgICAgIEBpbmNsdWRlIG5vcm1hbGl6ZS1saW5lLWhlaWdodCgkaDEtZm9udC1zaXplKTtcbiAgICAgIH1cblxuICAgICAgQGlmICRub3JtYWxpemUtdmVydGljYWwtcmh5dGhtIHtcbiAgICAgICAgLyogU2V0IDEgdW5pdCBvZiB2ZXJ0aWNhbCByaHl0aG0gb24gdGhlIHRvcCBhbmQgYm90dG9tIG1hcmdpbnMuICovXG4gICAgICAgIEBpbmNsdWRlIG5vcm1hbGl6ZS1tYXJnaW4oMSAwLCAkaDEtZm9udC1zaXplKTtcbiAgICAgIH1cbiAgICAgIEBlbHNlIHtcbiAgICAgICAgbWFyZ2luOiAwLjY3ZW0gMDtcbiAgICAgIH1cbiAgICB9XG5cbiAgICBAaWYgJG5vcm1hbGl6ZS12ZXJ0aWNhbC1yaHl0aG0ge1xuICAgICAgaDIge1xuICAgICAgICBAaW5jbHVkZSBub3JtYWxpemUtZm9udC1zaXplKCRoMi1mb250LXNpemUpO1xuICAgICAgICBAaW5jbHVkZSBub3JtYWxpemUtbGluZS1oZWlnaHQoJGgyLWZvbnQtc2l6ZSk7XG4gICAgICAgIEBpbmNsdWRlIG5vcm1hbGl6ZS1tYXJnaW4oMSAwLCAkaDItZm9udC1zaXplKTtcbiAgICAgIH1cblxuICAgICAgaDMge1xuICAgICAgICBAaW5jbHVkZSBub3JtYWxpemUtZm9udC1zaXplKCRoMy1mb250LXNpemUpO1xuICAgICAgICBAaW5jbHVkZSBub3JtYWxpemUtbGluZS1oZWlnaHQoJGgzLWZvbnQtc2l6ZSk7XG4gICAgICAgIEBpbmNsdWRlIG5vcm1hbGl6ZS1tYXJnaW4oMSAwLCAkaDMtZm9udC1zaXplKTtcbiAgICAgIH1cblxuICAgICAgaDQge1xuICAgICAgICBAaW5jbHVkZSBub3JtYWxpemUtZm9udC1zaXplKCRoNC1mb250LXNpemUpO1xuICAgICAgICBAaW5jbHVkZSBub3JtYWxpemUtbGluZS1oZWlnaHQoJGg0LWZvbnQtc2l6ZSk7XG4gICAgICAgIEBpbmNsdWRlIG5vcm1hbGl6ZS1tYXJnaW4oMSAwLCAkaDQtZm9udC1zaXplKTtcbiAgICAgIH1cblxuICAgICAgaDUge1xuICAgICAgICBAaW5jbHVkZSBub3JtYWxpemUtZm9udC1zaXplKCRoNS1mb250LXNpemUpO1xuICAgICAgICBAaW5jbHVkZSBub3JtYWxpemUtbGluZS1oZWlnaHQoJGg1LWZvbnQtc2l6ZSk7XG4gICAgICAgIEBpbmNsdWRlIG5vcm1hbGl6ZS1tYXJnaW4oMSAwLCAkaDUtZm9udC1zaXplKTtcbiAgICAgIH1cblxuICAgICAgaDYge1xuICAgICAgICBAaW5jbHVkZSBub3JtYWxpemUtZm9udC1zaXplKCRoNi1mb250LXNpemUpO1xuICAgICAgICBAaW5jbHVkZSBub3JtYWxpemUtbGluZS1oZWlnaHQoJGg2LWZvbnQtc2l6ZSk7XG4gICAgICAgIEBpbmNsdWRlIG5vcm1hbGl6ZS1tYXJnaW4oMSAwLCAkaDYtZm9udC1zaXplKTtcbiAgICAgIH1cbiAgICB9XG4gIH1cblxuICBAaWYgX25vcm1hbGl6ZS1pbmNsdWRlKGdyb3VwaW5nKSB7XG4gICAgLyogR3JvdXBpbmcgY29udGVudFxuICAgICAgID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXG5cbiAgICBAaWYgJG5vcm1hbGl6ZS12ZXJ0aWNhbC1yaHl0aG0ge1xuICAgICAgLyoqXG4gICAgICAgKiBTZXQgMSB1bml0IG9mIHZlcnRpY2FsIHJoeXRobSBvbiB0aGUgdG9wIGFuZCBib3R0b20gbWFyZ2luLlxuICAgICAgICovXG5cbiAgICAgIGJsb2NrcXVvdGUge1xuICAgICAgICBAaW5jbHVkZSBub3JtYWxpemUtbWFyZ2luKDEgJGluZGVudC1hbW91bnQpO1xuICAgICAgfVxuXG4gICAgICBkbCxcbiAgICAgIG9sLFxuICAgICAgdWwge1xuICAgICAgICBAaW5jbHVkZSBub3JtYWxpemUtbWFyZ2luKDEgMCk7XG4gICAgICB9XG5cbiAgICAgIC8qKlxuICAgICAgICogVHVybiBvZmYgbWFyZ2lucyBvbiBuZXN0ZWQgbGlzdHMuXG4gICAgICAgKi9cblxuICAgICAgb2wsXG4gICAgICB1bCB7XG4gICAgICAgIG9sLFxuICAgICAgICB1bCB7XG4gICAgICAgICAgbWFyZ2luOiAwO1xuICAgICAgICB9XG4gICAgICB9XG5cbiAgICAgIGRkIHtcbiAgICAgICAgbWFyZ2luOiAwIDAgMCAkaW5kZW50LWFtb3VudDtcbiAgICAgIH1cblxuICAgICAgb2wsXG4gICAgICB1bCB7XG4gICAgICAgIHBhZGRpbmc6IDAgMCAwICRpbmRlbnQtYW1vdW50O1xuICAgICAgfVxuICAgIH1cblxuICAgIC8qKlxuICAgICAqIEFkZCB0aGUgY29ycmVjdCBkaXNwbGF5IGluIElFIDktLlxuICAgICAqL1xuXG4gICAgZmlnY2FwdGlvbixcbiAgICBmaWd1cmUge1xuICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgfVxuXG4gICAgLyoqXG4gICAgICogQWRkIHRoZSBjb3JyZWN0IG1hcmdpbiBpbiBJRSA4LlxuICAgICAqL1xuXG4gICAgZmlndXJlIHtcbiAgICAgIEBpZiAkbm9ybWFsaXplLXZlcnRpY2FsLXJoeXRobSB7XG4gICAgICAgIEBpbmNsdWRlIG5vcm1hbGl6ZS1tYXJnaW4oMSAkaW5kZW50LWFtb3VudCk7XG4gICAgICB9XG4gICAgICBAZWxzZSB7XG4gICAgICAgIG1hcmdpbjogMWVtICRpbmRlbnQtYW1vdW50O1xuICAgICAgfVxuICAgIH1cblxuICAgIC8qKlxuICAgICAqIDEuIEFkZCB0aGUgY29ycmVjdCBib3ggc2l6aW5nIGluIEZpcmVmb3guXG4gICAgICogMi4gU2hvdyB0aGUgb3ZlcmZsb3cgaW4gRWRnZSBhbmQgSUUuXG4gICAgICovXG5cbiAgICBociB7XG4gICAgICBib3gtc2l6aW5nOiBjb250ZW50LWJveDsgLyogMSAqL1xuICAgICAgaGVpZ2h0OiAwOyAvKiAxICovXG4gICAgICBvdmVyZmxvdzogdmlzaWJsZTsgLyogMiAqL1xuICAgIH1cblxuICAgIC8qKlxuICAgICAqIEFkZCB0aGUgY29ycmVjdCBkaXNwbGF5IGluIElFLlxuICAgICAqL1xuXG4gICAgbWFpbiB7XG4gICAgICBkaXNwbGF5OiBibG9jaztcbiAgICB9XG5cbiAgICBAaWYgJG5vcm1hbGl6ZS12ZXJ0aWNhbC1yaHl0aG0ge1xuICAgICAgLyoqXG4gICAgICAgKiBTZXQgMSB1bml0IG9mIHZlcnRpY2FsIHJoeXRobSBvbiB0aGUgdG9wIGFuZCBib3R0b20gbWFyZ2luLlxuICAgICAgICovXG5cbiAgICAgIHAsXG4gICAgICBwcmUge1xuICAgICAgICBAaW5jbHVkZSBub3JtYWxpemUtbWFyZ2luKDEgMCk7XG4gICAgICB9XG4gICAgfVxuXG4gICAgLyoqXG4gICAgICogMS4gQ29ycmVjdCB0aGUgaW5oZXJpdGFuY2UgYW5kIHNjYWxpbmcgb2YgZm9udCBzaXplIGluIGFsbCBicm93c2Vycy5cbiAgICAgKiAyLiBDb3JyZWN0IHRoZSBvZGQgYGVtYCBmb250IHNpemluZyBpbiBhbGwgYnJvd3NlcnMuXG4gICAgICovXG5cbiAgICBwcmUge1xuICAgICAgZm9udC1mYW1pbHk6IG1vbm9zcGFjZSwgbW9ub3NwYWNlOyAvKiAxICovXG4gICAgICBmb250LXNpemU6IDFlbTsgLyogMiAqL1xuICAgIH1cbiAgfVxuXG4gIEBpZiBfbm9ybWFsaXplLWluY2x1ZGUobGlua3MpIHtcbiAgICAvKiBMaW5rc1xuICAgICAgID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXG5cbiAgICAvKipcbiAgICAgKiAxLiBSZW1vdmUgdGhlIGdyYXkgYmFja2dyb3VuZCBvbiBhY3RpdmUgbGlua3MgaW4gSUUgMTAuXG4gICAgICogMi4gUmVtb3ZlIGdhcHMgaW4gbGlua3MgdW5kZXJsaW5lIGluIGlPUyA4KyBhbmQgU2FmYXJpIDgrLlxuICAgICAqL1xuXG4gICAgYSB7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDsgLyogMSAqL1xuICAgICAgLXdlYmtpdC10ZXh0LWRlY29yYXRpb24tc2tpcDogb2JqZWN0czsgLyogMiAqL1xuICAgIH1cblxuICAgIC8qKlxuICAgICAqIFJlbW92ZSB0aGUgb3V0bGluZSBvbiBmb2N1c2VkIGxpbmtzIHdoZW4gdGhleSBhcmUgYWxzbyBhY3RpdmUgb3IgaG92ZXJlZFxuICAgICAqIGluIGFsbCBicm93c2VycyAob3BpbmlvbmF0ZWQpLlxuICAgICAqL1xuXG4gICAgYTphY3RpdmUsXG4gICAgYTpob3ZlciB7XG4gICAgICBvdXRsaW5lLXdpZHRoOiAwO1xuICAgIH1cbiAgfVxuXG4gIEBpZiBfbm9ybWFsaXplLWluY2x1ZGUodGV4dCkge1xuICAgIC8qIFRleHQtbGV2ZWwgc2VtYW50aWNzXG4gICAgICAgPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cblxuICAgIC8qKlxuICAgICAqIDEuIFJlbW92ZSB0aGUgYm90dG9tIGJvcmRlciBpbiBGaXJlZm94IDM5LS5cbiAgICAgKiAyLiBBZGQgdGhlIGNvcnJlY3QgdGV4dCBkZWNvcmF0aW9uIGluIENocm9tZSwgRWRnZSwgSUUsIE9wZXJhLCBhbmQgU2FmYXJpLlxuICAgICAqL1xuXG4gICAgYWJiclt0aXRsZV0ge1xuICAgICAgYm9yZGVyLWJvdHRvbTogbm9uZTsgLyogMSAqL1xuICAgICAgdGV4dC1kZWNvcmF0aW9uOiB1bmRlcmxpbmU7IC8qIDIgKi9cbiAgICAgIHRleHQtZGVjb3JhdGlvbjogdW5kZXJsaW5lIGRvdHRlZDsgLyogMiAqL1xuICAgIH1cblxuICAgIC8qKlxuICAgICAqIFByZXZlbnQgdGhlIGR1cGxpY2F0ZSBhcHBsaWNhdGlvbiBvZiBgYm9sZGVyYCBieSB0aGUgbmV4dCBydWxlIGluIFNhZmFyaSA2LlxuICAgICAqL1xuXG4gICAgYixcbiAgICBzdHJvbmcge1xuICAgICAgZm9udC13ZWlnaHQ6IGluaGVyaXQ7XG4gICAgfVxuXG4gICAgLyoqXG4gICAgICogQWRkIHRoZSBjb3JyZWN0IGZvbnQgd2VpZ2h0IGluIENocm9tZSwgRWRnZSwgYW5kIFNhZmFyaS5cbiAgICAgKi9cblxuICAgIGIsXG4gICAgc3Ryb25nIHtcbiAgICAgIGZvbnQtd2VpZ2h0OiBib2xkZXI7XG4gICAgfVxuXG4gICAgLyoqXG4gICAgICogMS4gQ29ycmVjdCB0aGUgaW5oZXJpdGFuY2UgYW5kIHNjYWxpbmcgb2YgZm9udCBzaXplIGluIGFsbCBicm93c2Vycy5cbiAgICAgKiAyLiBDb3JyZWN0IHRoZSBvZGQgYGVtYCBmb250IHNpemluZyBpbiBhbGwgYnJvd3NlcnMuXG4gICAgICovXG5cbiAgICBjb2RlLFxuICAgIGtiZCxcbiAgICBzYW1wIHtcbiAgICAgIGZvbnQtZmFtaWx5OiBtb25vc3BhY2UsIG1vbm9zcGFjZTsgLyogMSAqL1xuICAgICAgZm9udC1zaXplOiAxZW07IC8qIDIgKi9cbiAgICB9XG5cbiAgICAvKipcbiAgICAgKiBBZGQgdGhlIGNvcnJlY3QgZm9udCBzdHlsZSBpbiBBbmRyb2lkIDQuMy0uXG4gICAgICovXG5cbiAgICBkZm4ge1xuICAgICAgZm9udC1zdHlsZTogaXRhbGljO1xuICAgIH1cblxuICAgIC8qKlxuICAgICAqIEFkZCB0aGUgY29ycmVjdCBiYWNrZ3JvdW5kIGFuZCBjb2xvciBpbiBJRSA5LS5cbiAgICAgKi9cblxuICAgIG1hcmsge1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogI2ZmMDtcbiAgICAgIGNvbG9yOiAjMDAwO1xuICAgIH1cblxuICAgIC8qKlxuICAgICAqIEFkZCB0aGUgY29ycmVjdCBmb250IHNpemUgaW4gYWxsIGJyb3dzZXJzLlxuICAgICAqL1xuXG4gICAgc21hbGwge1xuICAgICAgZm9udC1zaXplOiA4MCU7XG4gICAgfVxuXG4gICAgLyoqXG4gICAgICogUHJldmVudCBgc3ViYCBhbmQgYHN1cGAgZWxlbWVudHMgZnJvbSBhZmZlY3RpbmcgdGhlIGxpbmUgaGVpZ2h0IGluXG4gICAgICogYWxsIGJyb3dzZXJzLlxuICAgICAqL1xuXG4gICAgc3ViLFxuICAgIHN1cCB7XG4gICAgICBmb250LXNpemU6IDc1JTtcbiAgICAgIGxpbmUtaGVpZ2h0OiAwO1xuICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgdmVydGljYWwtYWxpZ246IGJhc2VsaW5lO1xuICAgIH1cblxuICAgIHN1YiB7XG4gICAgICBib3R0b206IC0wLjI1ZW07XG4gICAgfVxuXG4gICAgc3VwIHtcbiAgICAgIHRvcDogLTAuNWVtO1xuICAgIH1cbiAgfVxuXG4gIEBpZiBfbm9ybWFsaXplLWluY2x1ZGUoZW1iZWRkZWQpIHtcbiAgICAvKiBFbWJlZGRlZCBjb250ZW50XG4gICAgICAgPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cblxuICAgIC8qKlxuICAgICAqIEFkZCB0aGUgY29ycmVjdCBkaXNwbGF5IGluIElFIDktLlxuICAgICAqL1xuXG4gICAgYXVkaW8sXG4gICAgdmlkZW8ge1xuICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgIH1cblxuICAgIC8qKlxuICAgICAqIEFkZCB0aGUgY29ycmVjdCBkaXNwbGF5IGluIGlPUyA0LTcuXG4gICAgICovXG5cbiAgICBhdWRpbzpub3QoW2NvbnRyb2xzXSkge1xuICAgICAgZGlzcGxheTogbm9uZTtcbiAgICAgIGhlaWdodDogMDtcbiAgICB9XG5cbiAgICAvKipcbiAgICAgKiBSZW1vdmUgdGhlIGJvcmRlciBvbiBpbWFnZXMgaW5zaWRlIGxpbmtzIGluIElFIDEwLS5cbiAgICAgKi9cblxuICAgIGltZyB7XG4gICAgICBib3JkZXItc3R5bGU6IG5vbmU7XG4gICAgfVxuXG4gICAgLyoqXG4gICAgICogSGlkZSB0aGUgb3ZlcmZsb3cgaW4gSUUuXG4gICAgICovXG5cbiAgICBzdmc6bm90KDpyb290KSB7XG4gICAgICBvdmVyZmxvdzogaGlkZGVuO1xuICAgIH1cbiAgfVxuXG4gIEBpZiBfbm9ybWFsaXplLWluY2x1ZGUoZm9ybXMpIHtcbiAgICAvKiBGb3Jtc1xuICAgICAgID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXG5cbiAgICAvKipcbiAgICAgKiAxLiBDaGFuZ2UgdGhlIGZvbnQgc3R5bGVzIGluIGFsbCBicm93c2VycyAob3BpbmlvbmF0ZWQpLlxuICAgICAqIDIuIFJlbW92ZSB0aGUgbWFyZ2luIGluIEZpcmVmb3ggYW5kIFNhZmFyaS5cbiAgICAgKi9cblxuICAgIGJ1dHRvbixcbiAgICBpbnB1dCxcbiAgICBvcHRncm91cCxcbiAgICBzZWxlY3QsXG4gICAgdGV4dGFyZWEge1xuICAgICAgZm9udC1mYW1pbHk6ICRiYXNlLWZvbnQtZmFtaWx5OyAvKiAxICovXG4gICAgICBmb250LXNpemU6IDEwMCU7IC8qIDEgKi9cbiAgICAgIEBpZiAkbm9ybWFsaXplLXZlcnRpY2FsLXJoeXRobSB7XG4gICAgICAgIGxpbmUtaGVpZ2h0OiAoJGJhc2UtbGluZS1oZWlnaHQgLyAkYmFzZS1mb250LXNpemUpICogMWVtOyAvKiAxICovXG4gICAgICB9XG4gICAgICBAZWxzZSB7XG4gICAgICAgIGxpbmUtaGVpZ2h0OiAxLjE1OyAvKiAxICovXG4gICAgICB9XG4gICAgICBtYXJnaW46IDA7IC8qIDIgKi9cbiAgICB9XG5cbiAgICAvKipcbiAgICAgKiBTaG93IHRoZSBvdmVyZmxvdyBpbiBJRS5cbiAgICAgKi9cblxuICAgIGJ1dHRvbiB7XG4gICAgICBvdmVyZmxvdzogdmlzaWJsZTtcbiAgICB9XG5cbiAgICAvKipcbiAgICAgKiBSZW1vdmUgdGhlIGluaGVyaXRhbmNlIG9mIHRleHQgdHJhbnNmb3JtIGluIEVkZ2UsIEZpcmVmb3gsIGFuZCBJRS5cbiAgICAgKiAxLiBSZW1vdmUgdGhlIGluaGVyaXRhbmNlIG9mIHRleHQgdHJhbnNmb3JtIGluIEZpcmVmb3guXG4gICAgICovXG5cbiAgICBidXR0b24sXG4gICAgc2VsZWN0IHsgLyogMSAqL1xuICAgICAgdGV4dC10cmFuc2Zvcm06IG5vbmU7XG4gICAgfVxuXG4gICAgLyoqXG4gICAgICogMS4gUHJldmVudCBhIFdlYktpdCBidWcgd2hlcmUgKDIpIGRlc3Ryb3lzIG5hdGl2ZSBgYXVkaW9gIGFuZCBgdmlkZW9gXG4gICAgICogICAgY29udHJvbHMgaW4gQW5kcm9pZCA0LlxuICAgICAqIDIuIENvcnJlY3QgdGhlIGluYWJpbGl0eSB0byBzdHlsZSBjbGlja2FibGUgdHlwZXMgaW4gaU9TIGFuZCBTYWZhcmkuXG4gICAgICovXG5cbiAgICBidXR0b24sXG4gICAgaHRtbCBbdHlwZT1cImJ1dHRvblwiXSwgLyogMSAqL1xuICAgIFt0eXBlPVwicmVzZXRcIl0sXG4gICAgW3R5cGU9XCJzdWJtaXRcIl0ge1xuICAgICAgLXdlYmtpdC1hcHBlYXJhbmNlOiBidXR0b247IC8qIDIgKi9cbiAgICB9XG5cbiAgICBidXR0b24sXG4gICAgW3R5cGU9XCJidXR0b25cIl0sXG4gICAgW3R5cGU9XCJyZXNldFwiXSxcbiAgICBbdHlwZT1cInN1Ym1pdFwiXSB7XG5cbiAgICAgIC8qKlxuICAgICAgICogUmVtb3ZlIHRoZSBpbm5lciBib3JkZXIgYW5kIHBhZGRpbmcgaW4gRmlyZWZveC5cbiAgICAgICAqL1xuXG4gICAgICAmOjotbW96LWZvY3VzLWlubmVyIHtcbiAgICAgICAgYm9yZGVyLXN0eWxlOiBub25lO1xuICAgICAgICBwYWRkaW5nOiAwO1xuICAgICAgfVxuXG4gICAgICAvKipcbiAgICAgICAqIFJlc3RvcmUgdGhlIGZvY3VzIHN0eWxlcyB1bnNldCBieSB0aGUgcHJldmlvdXMgcnVsZS5cbiAgICAgICAqL1xuXG4gICAgICAmOi1tb3otZm9jdXNyaW5nIHtcbiAgICAgICAgb3V0bGluZTogMXB4IGRvdHRlZCBCdXR0b25UZXh0O1xuICAgICAgfVxuICAgIH1cblxuICAgIC8qKlxuICAgICAqIFNob3cgdGhlIG92ZXJmbG93IGluIEVkZ2UuXG4gICAgICovXG5cbiAgICBpbnB1dCB7XG4gICAgICBvdmVyZmxvdzogdmlzaWJsZTtcbiAgICB9XG5cbiAgICAvKipcbiAgICAgKiAxLiBBZGQgdGhlIGNvcnJlY3QgYm94IHNpemluZyBpbiBJRSAxMC0uXG4gICAgICogMi4gUmVtb3ZlIHRoZSBwYWRkaW5nIGluIElFIDEwLS5cbiAgICAgKi9cblxuICAgIFt0eXBlPVwiY2hlY2tib3hcIl0sXG4gICAgW3R5cGU9XCJyYWRpb1wiXSB7XG4gICAgICBib3gtc2l6aW5nOiBib3JkZXItYm94OyAvKiAxICovXG4gICAgICBwYWRkaW5nOiAwOyAvKiAyICovXG4gICAgfVxuXG4gICAgLyoqXG4gICAgICogQ29ycmVjdCB0aGUgY3Vyc29yIHN0eWxlIG9mIGluY3JlbWVudCBhbmQgZGVjcmVtZW50IGJ1dHRvbnMgaW4gQ2hyb21lLlxuICAgICAqL1xuXG4gICAgW3R5cGU9XCJudW1iZXJcIl06Oi13ZWJraXQtaW5uZXItc3Bpbi1idXR0b24sXG4gICAgW3R5cGU9XCJudW1iZXJcIl06Oi13ZWJraXQtb3V0ZXItc3Bpbi1idXR0b24ge1xuICAgICAgaGVpZ2h0OiBhdXRvO1xuICAgIH1cblxuICAgIC8qKlxuICAgICAqIDEuIENvcnJlY3QgdGhlIG9kZCBhcHBlYXJhbmNlIGluIENocm9tZSBhbmQgU2FmYXJpLlxuICAgICAqIDIuIENvcnJlY3QgdGhlIG91dGxpbmUgc3R5bGUgaW4gU2FmYXJpLlxuICAgICAqL1xuXG4gICAgW3R5cGU9XCJzZWFyY2hcIl0ge1xuICAgICAgLXdlYmtpdC1hcHBlYXJhbmNlOiB0ZXh0ZmllbGQ7IC8qIDEgKi9cbiAgICAgIG91dGxpbmUtb2Zmc2V0OiAtMnB4OyAvKiAyICovXG5cbiAgICAgIC8qKlxuICAgICAgICogUmVtb3ZlIHRoZSBpbm5lciBwYWRkaW5nIGFuZCBjYW5jZWwgYnV0dG9ucyBpbiBDaHJvbWUgYW5kIFNhZmFyaSBvbiBtYWNPUy5cbiAgICAgICAqL1xuXG4gICAgICAmOjotd2Via2l0LXNlYXJjaC1jYW5jZWwtYnV0dG9uLFxuICAgICAgJjo6LXdlYmtpdC1zZWFyY2gtZGVjb3JhdGlvbiB7XG4gICAgICAgIC13ZWJraXQtYXBwZWFyYW5jZTogbm9uZTtcbiAgICAgIH1cbiAgICB9XG5cbiAgICAvKipcbiAgICAgKiAxLiBDb3JyZWN0IHRoZSBpbmFiaWxpdHkgdG8gc3R5bGUgY2xpY2thYmxlIHR5cGVzIGluIGlPUyBhbmQgU2FmYXJpLlxuICAgICAqIDIuIENoYW5nZSBmb250IHByb3BlcnRpZXMgdG8gYGluaGVyaXRgIGluIFNhZmFyaS5cbiAgICAgKi9cblxuICAgIDo6LXdlYmtpdC1maWxlLXVwbG9hZC1idXR0b24ge1xuICAgICAgLXdlYmtpdC1hcHBlYXJhbmNlOiBidXR0b247IC8qIDEgKi9cbiAgICAgIGZvbnQ6IGluaGVyaXQ7IC8qIDIgKi9cbiAgICB9XG5cbiAgICAvKipcbiAgICAgKiBDaGFuZ2UgdGhlIGJvcmRlciwgbWFyZ2luLCBhbmQgcGFkZGluZyBpbiBhbGwgYnJvd3NlcnMgKG9waW5pb25hdGVkKS5cbiAgICAgKi9cblxuICAgIGZpZWxkc2V0IHtcbiAgICAgIGJvcmRlcjogMXB4IHNvbGlkICNjMGMwYzA7XG4gICAgICBtYXJnaW46IDAgMnB4O1xuICAgICAgcGFkZGluZzogMC4zNWVtIDAuNjI1ZW0gMC43NWVtO1xuICAgIH1cblxuICAgIC8qKlxuICAgICAqIDEuIENvcnJlY3QgdGhlIHRleHQgd3JhcHBpbmcgaW4gRWRnZSBhbmQgSUUuXG4gICAgICogMi4gQ29ycmVjdCB0aGUgY29sb3IgaW5oZXJpdGFuY2UgZnJvbSBgZmllbGRzZXRgIGVsZW1lbnRzIGluIElFLlxuICAgICAqIDMuIFJlbW92ZSB0aGUgcGFkZGluZyBzbyBkZXZlbG9wZXJzIGFyZSBub3QgY2F1Z2h0IG91dCB3aGVuIHRoZXkgemVybyBvdXRcbiAgICAgKiAgICBgZmllbGRzZXRgIGVsZW1lbnRzIGluIGFsbCBicm93c2Vycy5cbiAgICAgKi9cblxuICAgIGxlZ2VuZCB7XG4gICAgICBib3gtc2l6aW5nOiBib3JkZXItYm94OyAvKiAxICovXG4gICAgICBkaXNwbGF5OiB0YWJsZTsgLyogMSAqL1xuICAgICAgbWF4LXdpZHRoOiAxMDAlOyAvKiAxICovXG4gICAgICBwYWRkaW5nOiAwOyAvKiAzICovXG4gICAgICBjb2xvcjogaW5oZXJpdDsgLyogMiAqL1xuICAgICAgd2hpdGUtc3BhY2U6IG5vcm1hbDsgLyogMSAqL1xuICAgIH1cblxuICAgIC8qKlxuICAgICAqIDEuIEFkZCB0aGUgY29ycmVjdCBkaXNwbGF5IGluIElFIDktLlxuICAgICAqIDIuIEFkZCB0aGUgY29ycmVjdCB2ZXJ0aWNhbCBhbGlnbm1lbnQgaW4gQ2hyb21lLCBGaXJlZm94LCBhbmQgT3BlcmEuXG4gICAgICovXG5cbiAgICBwcm9ncmVzcyB7XG4gICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7IC8qIDEgKi9cbiAgICAgIHZlcnRpY2FsLWFsaWduOiBiYXNlbGluZTsgLyogMiAqL1xuICAgIH1cblxuICAgIC8qKlxuICAgICAqIFJlbW92ZSB0aGUgZGVmYXVsdCB2ZXJ0aWNhbCBzY3JvbGxiYXIgaW4gSUUuXG4gICAgICovXG5cbiAgICB0ZXh0YXJlYSB7XG4gICAgICBvdmVyZmxvdzogYXV0bztcbiAgICB9XG4gIH1cblxuICBAaWYgX25vcm1hbGl6ZS1pbmNsdWRlKGludGVyYWN0aXZlKSB7XG4gICAgLyogSW50ZXJhY3RpdmVcbiAgICAgICA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xuXG4gICAgLypcbiAgICAgKiBBZGQgdGhlIGNvcnJlY3QgZGlzcGxheSBpbiBFZGdlLCBJRSwgYW5kIEZpcmVmb3guXG4gICAgICovXG5cbiAgICBkZXRhaWxzIHtcbiAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIH1cblxuICAgIC8qXG4gICAgICogQWRkIHRoZSBjb3JyZWN0IGRpc3BsYXkgaW4gYWxsIGJyb3dzZXJzLlxuICAgICAqL1xuXG4gICAgc3VtbWFyeSB7XG4gICAgICBkaXNwbGF5OiBsaXN0LWl0ZW07XG4gICAgfVxuXG4gICAgLypcbiAgICAgKiBBZGQgdGhlIGNvcnJlY3QgZGlzcGxheSBpbiBJRSA5LS5cbiAgICAgKi9cblxuICAgIG1lbnUge1xuICAgICAgZGlzcGxheTogYmxvY2s7XG5cbiAgICAgIEBpZiAkbm9ybWFsaXplLXZlcnRpY2FsLXJoeXRobSB7XG4gICAgICAgIC8qXG4gICAgICAgICAqIDEuIFNldCAxIHVuaXQgb2YgdmVydGljYWwgcmh5dGhtIG9uIHRoZSB0b3AgYW5kIGJvdHRvbSBtYXJnaW4uXG4gICAgICAgICAqIDIuIFNldCBjb25zaXN0ZW50IHNwYWNlIGZvciB0aGUgbGlzdCBzdHlsZSBpbWFnZS5cbiAgICAgICAgICovXG5cbiAgICAgICAgQGluY2x1ZGUgbm9ybWFsaXplLW1hcmdpbigxIDApOyAvKiAxICovXG4gICAgICAgIHBhZGRpbmc6IDAgMCAwICRpbmRlbnQtYW1vdW50OyAvKiAyICovXG5cbiAgICAgICAgLyoqXG4gICAgICAgICAqIFR1cm4gb2ZmIG1hcmdpbnMgb24gbmVzdGVkIGxpc3RzLlxuICAgICAgICAgKi9cblxuICAgICAgICBtZW51ICYsXG4gICAgICAgIG9sICYsXG4gICAgICAgIHVsICYge1xuICAgICAgICAgIG1hcmdpbjogMDtcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgfVxuXG4gIEBpZiBfbm9ybWFsaXplLWluY2x1ZGUoc2NyaXB0aW5nKSB7XG4gICAgLyogU2NyaXB0aW5nXG4gICAgICAgPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cblxuICAgIC8qKlxuICAgICAqIEFkZCB0aGUgY29ycmVjdCBkaXNwbGF5IGluIElFIDktLlxuICAgICAqL1xuXG4gICAgY2FudmFzIHtcbiAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICB9XG5cbiAgICAvKipcbiAgICAgKiBBZGQgdGhlIGNvcnJlY3QgZGlzcGxheSBpbiBJRS5cbiAgICAgKi9cblxuICAgIHRlbXBsYXRlIHtcbiAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgfVxuICB9XG5cbiAgQGlmIF9ub3JtYWxpemUtaW5jbHVkZShoaWRkZW4pIHtcbiAgICAvKiBIaWRkZW5cbiAgICAgICA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xuXG4gICAgLyoqXG4gICAgICogQWRkIHRoZSBjb3JyZWN0IGRpc3BsYXkgaW4gSUUgMTAtLlxuICAgICAqL1xuXG4gICAgW2hpZGRlbl0ge1xuICAgICAgZGlzcGxheTogbm9uZTtcbiAgICB9XG4gIH1cbn1cbiIsIi8vXG4vLyBWYXJpYWJsZXNcbi8vXG4vLyBZb3UgY2FuIG92ZXJyaWRlIHRoZSBkZWZhdWx0IHZhbHVlcyBieSBzZXR0aW5nIHRoZSB2YXJpYWJsZXMgaW4geW91ciBTYXNzXG4vLyBiZWZvcmUgaW1wb3J0aW5nIHRoZSBub3JtYWxpemUtc2NzcyBsaWJyYXJ5LlxuXG4vLyBUaGUgZm9udCBzaXplIHNldCBvbiB0aGUgcm9vdCBodG1sIGVsZW1lbnQuXG4kYmFzZS1mb250LXNpemU6IDE2cHggIWRlZmF1bHQ7XG5cbi8vIFRoZSBiYXNlIGxpbmUgaGVpZ2h0IGRldGVybWluZXMgdGhlIGJhc2ljIHVuaXQgb2YgdmVydGljYWwgcmh5dGhtLlxuJGJhc2UtbGluZS1oZWlnaHQ6IDI0cHggIWRlZmF1bHQ7XG5cbi8vIFRoZSBsZW5ndGggdW5pdCBpbiB3aGljaCB0byBvdXRwdXQgdmVydGljYWwgcmh5dGhtIHZhbHVlcy5cbi8vIFN1cHBvcnRlZCB2YWx1ZXM6IHB4LCBlbSwgcmVtLlxuJGJhc2UtdW5pdDogJ2VtJyAhZGVmYXVsdDtcblxuLy8gVGhlIGRlZmF1bHQgZm9udCBmYW1pbHkuXG4kYmFzZS1mb250LWZhbWlseTogc2Fucy1zZXJpZiAhZGVmYXVsdDtcblxuLy8gVGhlIGZvbnQgc2l6ZXMgZm9yIGgxLWg2LlxuJGgxLWZvbnQtc2l6ZTogMiAgICAqICRiYXNlLWZvbnQtc2l6ZSAhZGVmYXVsdDtcbiRoMi1mb250LXNpemU6IDEuNSAgKiAkYmFzZS1mb250LXNpemUgIWRlZmF1bHQ7XG4kaDMtZm9udC1zaXplOiAxLjE3ICogJGJhc2UtZm9udC1zaXplICFkZWZhdWx0O1xuJGg0LWZvbnQtc2l6ZTogMSAgICAqICRiYXNlLWZvbnQtc2l6ZSAhZGVmYXVsdDtcbiRoNS1mb250LXNpemU6IDAuODMgKiAkYmFzZS1mb250LXNpemUgIWRlZmF1bHQ7XG4kaDYtZm9udC1zaXplOiAwLjY3ICogJGJhc2UtZm9udC1zaXplICFkZWZhdWx0O1xuXG4vLyBUaGUgYW1vdW50IGxpc3RzIGFuZCBibG9ja3F1b3RlcyBhcmUgaW5kZW50ZWQuXG4kaW5kZW50LWFtb3VudDogNDBweCAhZGVmYXVsdDtcblxuLy8gVGhlIGZvbGxvd2luZyB2YXJpYWJsZSBjb250cm9scyB3aGV0aGVyIG5vcm1hbGl6ZS1zY3NzIHdpbGwgb3V0cHV0XG4vLyBmb250LXNpemVzLCBsaW5lLWhlaWdodHMgYW5kIGJsb2NrLWxldmVsIHRvcC9ib3R0b20gbWFyZ2lucyB0aGF0IGZvcm0gYSBiYXNpY1xuLy8gdmVydGljYWwgcmh5dGhtIG9uIHRoZSBwYWdlLCB3aGljaCBkaWZmZXJzIGZyb20gdGhlIG9yaWdpbmFsIE5vcm1hbGl6ZS5jc3MuXG4vLyBIb3dldmVyLCBjaGFuZ2luZyBhbnkgb2YgdGhlIHZhcmlhYmxlcyBhYm92ZSB3aWxsIGNhdXNlXG4vLyAkbm9ybWFsaXplLXZlcnRpY2FsLXJoeXRobSB0byBiZSBhdXRvbWF0aWNhbGx5IHNldCB0byB0cnVlLlxuJG5vcm1hbGl6ZS12ZXJ0aWNhbC1yaHl0aG06IGZhbHNlICFkZWZhdWx0O1xuIiwiLy9cbi8vIFZlcnRpY2FsIFJoeXRobVxuLy9cbi8vIFRoaXMgaXMgdGhlIG1pbmltYWwgYW1vdW50IG9mIGNvZGUgbmVlZGVkIHRvIGNyZWF0ZSB2ZXJ0aWNhbCByaHl0aG0gaW4gb3VyXG4vLyBDU1MuIElmIHlvdSBhcmUgbG9va2luZyBmb3IgYSByb2J1c3Qgc29sdXRpb24sIGxvb2sgYXQgdGhlIGV4Y2VsbGVudCBUeXBleVxuLy8gbGlicmFyeS4gQHNlZSBodHRwczovL2dpdGh1Yi5jb20vanB0YXJhbnRvL3R5cGV5XG5cbkBmdW5jdGlvbiBub3JtYWxpemUtcmh5dGhtKCR2YWx1ZSwgJHJlbGF0aXZlLXRvOiAkYmFzZS1mb250LXNpemUsICR1bml0OiAkYmFzZS11bml0KSB7XG4gIEBpZiB1bml0KCR2YWx1ZSkgIT0gcHgge1xuICAgIEBlcnJvciBcIlRoZSBub3JtYWxpemUgdmVydGljYWwtcmh5dGhtIG1vZHVsZSBvbmx5IHN1cHBvcnRzIHB4IGlucHV0cy4gVGhlIHR5cGV5IGxpYnJhcnkgaXMgYmV0dGVyLlwiO1xuICB9XG4gIEBpZiAkdW5pdCA9PSByZW0ge1xuICAgIEByZXR1cm4gKCR2YWx1ZSAvICRiYXNlLWZvbnQtc2l6ZSkgKiAxcmVtO1xuICB9XG4gIEBlbHNlIGlmICR1bml0ID09IGVtIHtcbiAgICBAcmV0dXJuICgkdmFsdWUgLyAkcmVsYXRpdmUtdG8pICogMWVtO1xuICB9XG4gIEBlbHNlIHsgLy8gJHVuaXQgPT0gcHhcbiAgICBAcmV0dXJuICR2YWx1ZTtcbiAgfVxufVxuXG5AbWl4aW4gbm9ybWFsaXplLWZvbnQtc2l6ZSgkdmFsdWUsICRyZWxhdGl2ZS10bzogJGJhc2UtZm9udC1zaXplKSB7XG4gIEBpZiB1bml0KCR2YWx1ZSkgIT0gJ3B4JyB7XG4gICAgQGVycm9yIFwibm9ybWFsaXplLWZvbnQtc2l6ZSgpIG9ubHkgc3VwcG9ydHMgcHggaW5wdXRzLiBUaGUgdHlwZXkgbGlicmFyeSBpcyBiZXR0ZXIuXCI7XG4gIH1cbiAgZm9udC1zaXplOiBub3JtYWxpemUtcmh5dGhtKCR2YWx1ZSwgJHJlbGF0aXZlLXRvKTtcbn1cblxuQG1peGluIG5vcm1hbGl6ZS1yaHl0aG0oJHByb3BlcnR5LCAkdmFsdWVzLCAkcmVsYXRpdmUtdG86ICRiYXNlLWZvbnQtc2l6ZSkge1xuICAkdmFsdWUtbGlzdDogJHZhbHVlcztcbiAgJHNlcDogc3BhY2U7XG4gIEBpZiB0eXBlLW9mKCR2YWx1ZXMpID09ICdsaXN0JyB7XG4gICAgJHNlcDogbGlzdC1zZXBhcmF0b3IoJHZhbHVlcyk7XG4gIH1cbiAgQGVsc2Uge1xuICAgICR2YWx1ZS1saXN0OiBhcHBlbmQoKCksICR2YWx1ZXMpO1xuICB9XG5cbiAgJG5vcm1hbGl6ZWQtdmFsdWVzOiAoKTtcbiAgQGVhY2ggJHZhbHVlIGluICR2YWx1ZS1saXN0IHtcbiAgICBAaWYgdW5pdGxlc3MoJHZhbHVlKSBhbmQgJHZhbHVlICE9IDAge1xuICAgICAgJHZhbHVlOiAkdmFsdWUgKiBub3JtYWxpemUtcmh5dGhtKCRiYXNlLWxpbmUtaGVpZ2h0LCAkcmVsYXRpdmUtdG8pO1xuICAgIH1cbiAgICAkbm9ybWFsaXplZC12YWx1ZXM6IGFwcGVuZCgkbm9ybWFsaXplZC12YWx1ZXMsICR2YWx1ZSwgJHNlcCk7XG4gIH1cbiAgI3skcHJvcGVydHl9OiAkbm9ybWFsaXplZC12YWx1ZXM7XG59XG5cbkBtaXhpbiBub3JtYWxpemUtbWFyZ2luKCR2YWx1ZXMsICRyZWxhdGl2ZS10bzogJGJhc2UtZm9udC1zaXplKSB7XG4gIEBpbmNsdWRlIG5vcm1hbGl6ZS1yaHl0aG0obWFyZ2luLCAkdmFsdWVzLCAkcmVsYXRpdmUtdG8pO1xufVxuXG5AbWl4aW4gbm9ybWFsaXplLWxpbmUtaGVpZ2h0KCRmb250LXNpemUsICRtaW4tbGluZS1wYWRkaW5nOiAycHgpIHtcbiAgJGxpbmVzOiBjZWlsKCRmb250LXNpemUgLyAkYmFzZS1saW5lLWhlaWdodCk7XG4gIC8vIElmIGxpbmVzIGFyZSBjcmFtcGVkIGluY2x1ZGUgc29tZSBleHRyYSBsZWFkaW5nLlxuICBAaWYgKCRsaW5lcyAqICRiYXNlLWxpbmUtaGVpZ2h0IC0gJGZvbnQtc2l6ZSkgPCAoJG1pbi1saW5lLXBhZGRpbmcgKiAyKSB7XG4gICAgJGxpbmVzOiAkbGluZXMgKyAxO1xuICB9XG4gIEBpbmNsdWRlIG5vcm1hbGl6ZS1yaHl0aG0obGluZS1oZWlnaHQsICRsaW5lcywgJGZvbnQtc2l6ZSk7XG59XG4iLCIvLyBGb3VuZGF0aW9uIGZvciBTaXRlcyBieSBaVVJCXG4vLyBmb3VuZGF0aW9uLnp1cmIuY29tXG4vLyBMaWNlbnNlZCB1bmRlciBNSVQgT3BlbiBTb3VyY2VcblxuLy8gc2Fzcy1saW50OmRpc2FibGUgZm9yY2UtYXR0cmlidXRlLW5lc3RpbmcsIGZvcmNlLXBzZXVkby1uZXN0aW5nLCBuby1jb2xvci1saXRlcmFscywgbm8tcXVhbGlmeWluZy1lbGVtZW50c1xuXG4vLy8vXG4vLy8gQGdyb3VwIGdsb2JhbFxuLy8vL1xuXG4vLy8gRm9udCBzaXplIGF0dHJpYnV0ZSBhcHBsaWVkIHRvIGA8aHRtbD5gIGFuZCBgPGJvZHk+YC4gV2UgdXNlIDEwMCUgYnkgZGVmYXVsdCBzbyB0aGUgdmFsdWUgaXMgaW5oZXJpdGVkIGZyb20gdGhlIHVzZXIncyBicm93c2VyIHNldHRpbmdzLlxuLy8vIEB0eXBlIE51bWJlclxuJGdsb2JhbC1mb250LXNpemU6IDEwMCUgIWRlZmF1bHQ7XG5cbi8vLyBHbG9iYWwgd2lkdGggb2YgeW91ciBzaXRlLiBVc2VkIGJ5IHRoZSBncmlkIHRvIGRldGVybWluZSByb3cgd2lkdGguXG4vLy8gQHR5cGUgTnVtYmVyXG4kZ2xvYmFsLXdpZHRoOiByZW0tY2FsYygxMjAwKSAhZGVmYXVsdDtcblxuLy8vIERlZmF1bHQgbGluZSBoZWlnaHQgZm9yIGFsbCB0eXBlLiBgJGdsb2JhbC1saW5laGVpZ2h0YCBpcyAyNHB4IHdoaWxlIGAkZ2xvYmFsLWZvbnQtc2l6ZWAgaXMgMTZweFxuLy8vIEB0eXBlIE51bWJlclxuJGdsb2JhbC1saW5laGVpZ2h0OiAxLjUgIWRlZmF1bHQ7XG5cbi8vLyBDb2xvcnMgdXNlZCBmb3IgYnV0dG9ucywgY2FsbG91dHMsIGxpbmtzLCBldGMuIFRoZXJlIG11c3QgYWx3YXlzIGJlIGEgY29sb3IgY2FsbGVkIGBwcmltYXJ5YC5cbi8vLyBAdHlwZSBNYXBcbiRmb3VuZGF0aW9uLXBhbGV0dGU6IChcbiAgcHJpbWFyeTogIzE3NzliYSxcbiAgc2Vjb25kYXJ5OiAjNzY3Njc2LFxuICBzdWNjZXNzOiAjM2FkYjc2LFxuICB3YXJuaW5nOiAjZmZhZTAwLFxuICBhbGVydDogI2NjNGIzNyxcbikgIWRlZmF1bHQ7XG5cbi8vLyBDb2xvciB1c2VkIGZvciBsaWdodCBncmF5IFVJIGl0ZW1zLlxuLy8vIEB0eXBlIENvbG9yXG4kbGlnaHQtZ3JheTogI2U2ZTZlNiAhZGVmYXVsdDtcblxuLy8vIENvbG9yIHVzZWQgZm9yIG1lZGl1bSBncmF5IFVJIGl0ZW1zLlxuLy8vIEB0eXBlIENvbG9yXG4kbWVkaXVtLWdyYXk6ICNjYWNhY2EgIWRlZmF1bHQ7XG5cbi8vLyBDb2xvciB1c2VkIGZvciBkYXJrIGdyYXkgVUkgaXRlbXMuXG4vLy8gQHR5cGUgQ29sb3JcbiRkYXJrLWdyYXk6ICM4YThhOGEgIWRlZmF1bHQ7XG5cbi8vLyBDb2xvciB1c2VkIGZvciBibGFjayB1aSBpdGVtcy5cbi8vLyBAdHlwZSBDb2xvclxuJGJsYWNrOiAjMGEwYTBhICFkZWZhdWx0O1xuXG4vLy8gQ29sb3IgdXNlZCBmb3Igd2hpdGUgdWkgaXRlbXMuXG4vLy8gQHR5cGUgQ29sb3JcbiR3aGl0ZTogI2ZlZmVmZSAhZGVmYXVsdDtcblxuLy8vIEJhY2tncm91bmQgY29sb3Igb2YgdGhlIGJvZHkuXG4vLy8gQHR5cGUgQ29sb3JcbiRib2R5LWJhY2tncm91bmQ6ICR3aGl0ZSAhZGVmYXVsdDtcblxuLy8vIFRleHQgY29sb3Igb2YgdGhlIGJvZHkuXG4vLy8gQHR5cGUgQ29sb3JcbiRib2R5LWZvbnQtY29sb3I6ICRibGFjayAhZGVmYXVsdDtcblxuLy8vIEZvbnQgc3RhY2sgb2YgdGhlIGJvZHkuXG4vLy8gQHR5cGUgTGlzdFxuJGJvZHktZm9udC1mYW1pbHk6ICdIZWx2ZXRpY2EgTmV1ZScsIEhlbHZldGljYSwgUm9ib3RvLCBBcmlhbCwgc2Fucy1zZXJpZiAhZGVmYXVsdDtcblxuLy8vIFNldCB0byBgdHJ1ZWAgdG8gZW5hYmxlIGFudGlhbGlhc2VkIHR5cGUsIHVzaW5nIHRoZSBgLXdlYmtpdC1mb250LXNtb290aGluZ2AgYW5kIGAtbW96LW9zeC1mb250LXNtb290aGluZ2AgQ1NTIHByb3BlcnRpZXMuXG4vLy8gQHR5cGUgQm9vbGVhblxuJGJvZHktYW50aWFsaWFzZWQ6IHRydWUgIWRlZmF1bHQ7XG5cbi8vLyBHbG9iYWwgdmFsdWUgdXNlZCBmb3IgbWFyZ2luIG9uIGNvbXBvbmVudHMuXG4vLy8gQHR5cGUgTnVtYmVyXG4kZ2xvYmFsLW1hcmdpbjogMXJlbSAhZGVmYXVsdDtcblxuLy8vIEdsb2JhbCB2YWx1ZSB1c2VkIGZvciBwYWRkaW5nIG9uIGNvbXBvbmVudHMuXG4vLy8gQHR5cGUgTnVtYmVyXG4kZ2xvYmFsLXBhZGRpbmc6IDFyZW0gIWRlZmF1bHQ7XG5cbi8vLyBHbG9iYWwgdmFsdWUgdXNlZCBmb3IgcG9zaXRpb25pbmcgb24gY29tcG9uZW50cy5cbi8vLyBAdHlwZSBOdW1iZXJcbiRnbG9iYWwtcG9zaXRpb246IDFyZW0gIWRlZmF1bHQ7XG5cbi8vLyBHbG9iYWwgZm9udCB3ZWlnaHQgdXNlZCBmb3Igbm9ybWFsIHR5cGUuXG4vLy8gQHR5cGUgS2V5d29yZCB8IE51bWJlclxuJGdsb2JhbC13ZWlnaHQtbm9ybWFsOiBub3JtYWwgIWRlZmF1bHQ7XG5cbi8vLyBHbG9iYWwgZm9udCB3ZWlnaHQgdXNlZCBmb3IgYm9sZCB0eXBlLlxuLy8vIEB0eXBlIEtleXdvcmQgfCBOdW1iZXJcbiRnbG9iYWwtd2VpZ2h0LWJvbGQ6IGJvbGQgIWRlZmF1bHQ7XG5cbi8vLyBHbG9iYWwgdmFsdWUgdXNlZCBmb3IgYWxsIGVsZW1lbnRzIHRoYXQgaGF2ZSBhIGJvcmRlciByYWRpdXMuXG4vLy8gQHR5cGUgTnVtYmVyXG4kZ2xvYmFsLXJhZGl1czogMCAhZGVmYXVsdDtcblxuLy8vIEdsb2JhbCB2YWx1ZSB1c2VkIGZvciBhbGwgbWVudSBzdHlsZXMuIENhbiBiZSBvdmVyd3JpdHRlbiBhdCBpbmRpdmlkdWFsIG1lbnUgY29tcG9uZW50IGxldmVsLlxuLy8vIEB0eXBlIE51bWJlclxuJGdsb2JhbC1tZW51LXBhZGRpbmc6IDAuN3JlbSAxcmVtICFkZWZhdWx0O1xuXG4vLy8gR2xvYmFsIHZhbHVlIHVzZWQgZm9yIGFsbCBtZW51IHN0eWxlcy4gTmVzdGVkIG1hcmdpbiBmb3Igc3VibWVudS5cbiRnbG9iYWwtbWVudS1uZXN0ZWQtbWFyZ2luOiAxcmVtICFkZWZhdWx0O1xuXG4vLy8gU2V0cyB0aGUgdGV4dCBkaXJlY3Rpb24gb2YgdGhlIENTUy4gQ2FuIGJlIGVpdGhlciBgbHRyYCBvciBgcnRsYC5cbi8vLyBAdHlwZSBLZXl3b3JkXG4kZ2xvYmFsLXRleHQtZGlyZWN0aW9uOiBsdHIgIWRlZmF1bHQ7XG5cbi8vLyBFbmFibGVzIGZsZXhib3ggZm9yIGNvbXBvbmVudHMgdGhhdCBzdXBwb3J0IGl0LlxuLy8vIEB0eXBlIEJvb2xlYW5cbiRnbG9iYWwtZmxleGJveDogdHJ1ZSAhZGVmYXVsdDtcblxuLy8vIEVuYWJsZWQgcmVzcG9uc2l2ZSBicmVha3BvaW50cyBmb3IgcHJvdG90eXBlcyBpZiBhcHBsaWNhYmxlXG4vLy8gQHR5cGUgQm9vbGVhblxuJGdsb2JhbC1wcm90b3R5cGUtYnJlYWtwb2ludHM6IGZhbHNlICFkZWZhdWx0O1xuXG5AaWYgbm90IG1hcC1oYXMta2V5KCRmb3VuZGF0aW9uLXBhbGV0dGUsIHByaW1hcnkpIHtcbiAgQGVycm9yICdJbiAkZm91bmRhdGlvbi1wYWxldHRlLCB5b3UgbXVzdCBoYXZlIGEgY29sb3IgbmFtZWQgXCJwcmltYXJ5XCIuJztcbn1cblxuLy8gSW50ZXJuYWwgdmFyaWFibGVzIHVzZWQgZm9yIHRleHQgZGlyZWN0aW9uXG4kZ2xvYmFsLWxlZnQ6IGlmKCRnbG9iYWwtdGV4dC1kaXJlY3Rpb24gPT0gcnRsLCByaWdodCwgbGVmdCk7XG4kZ2xvYmFsLXJpZ2h0OiBpZigkZ2xvYmFsLXRleHQtZGlyZWN0aW9uID09IHJ0bCwgbGVmdCwgcmlnaHQpO1xuXG4vLy8gR2xvYmFsIHRvbGVyYW5jZSBmb3IgY29sb3IgcGljayBjb250cmFzdC5cbi8vLyBAdHlwZSBOdW1iZXJcbiRnbG9iYWwtY29sb3ItcGljay1jb250cmFzdC10b2xlcmFuY2U6IDAgIWRlZmF1bHQ7XG5cbi8vIEludGVybmFsIHZhcmlhYmxlcyB1c2VkIGZvciBjb2xvcnNcbiRwcmltYXJ5LWNvbG9yOiBnZXQtY29sb3IocHJpbWFyeSk7XG4kc2Vjb25kYXJ5LWNvbG9yOiBnZXQtY29sb3Ioc2Vjb25kYXJ5KTtcbiRzdWNjZXNzLWNvbG9yOiBnZXQtY29sb3Ioc3VjY2Vzcyk7XG4kd2FybmluZy1jb2xvcjogZ2V0LWNvbG9yKHdhcm5pbmcpO1xuJGFsZXJ0LWNvbG9yOiBnZXQtY29sb3IoYWxlcnQpO1xuXG5AbWl4aW4gZm91bmRhdGlvbi1nbG9iYWwtc3R5bGVzIHtcbiAgQGluY2x1ZGUgLXpmLW5vcm1hbGl6ZTtcblxuICAvLyBUaGVzZSBzdHlsZXMgYXJlIGFwcGxpZWQgdG8gYSA8bWV0YT4gdGFnLCB3aGljaCBpcyByZWFkIGJ5IHRoZSBGb3VuZGF0aW9uIEphdmFTY3JpcHRcbiAgLmZvdW5kYXRpb24tbXEge1xuICAgIGZvbnQtZmFtaWx5OiAnI3stemYtYnAtc2VyaWFsaXplKCRicmVha3BvaW50cyl9JztcbiAgfVxuXG4gIGh0bWwge1xuICAgIGJveC1zaXppbmc6IGJvcmRlci1ib3g7XG4gICAgZm9udC1zaXplOiAkZ2xvYmFsLWZvbnQtc2l6ZTtcbiAgfVxuXG4gIC8vIFNldCBib3gtc2l6aW5nIGdsb2JhbGx5IHRvIGhhbmRsZSBwYWRkaW5nIGFuZCBib3JkZXIgd2lkdGhzXG4gICosXG4gICo6OmJlZm9yZSxcbiAgKjo6YWZ0ZXIge1xuICAgIGJveC1zaXppbmc6IGluaGVyaXQ7XG4gIH1cblxuICAvLyBEZWZhdWx0IGJvZHkgc3R5bGVzXG4gIGJvZHkge1xuICAgIG1hcmdpbjogMDtcbiAgICBwYWRkaW5nOiAwO1xuXG4gICAgYmFja2dyb3VuZDogJGJvZHktYmFja2dyb3VuZDtcblxuICAgIGZvbnQtZmFtaWx5OiAkYm9keS1mb250LWZhbWlseTtcbiAgICBmb250LXdlaWdodDogJGdsb2JhbC13ZWlnaHQtbm9ybWFsO1xuICAgIGxpbmUtaGVpZ2h0OiAkZ2xvYmFsLWxpbmVoZWlnaHQ7XG4gICAgY29sb3I6ICRib2R5LWZvbnQtY29sb3I7XG5cbiAgICBAaWYgKCRib2R5LWFudGlhbGlhc2VkKSB7XG4gICAgICAtd2Via2l0LWZvbnQtc21vb3RoaW5nOiBhbnRpYWxpYXNlZDtcbiAgICAgIC1tb3otb3N4LWZvbnQtc21vb3RoaW5nOiBncmF5c2NhbGU7XG4gICAgfVxuICB9XG5cbiAgaW1nIHtcbiAgICAvLyBHZXQgcmlkIG9mIGdhcCB1bmRlciBpbWFnZXMgYnkgbWFraW5nIHRoZW0gZGlzcGxheTogaW5saW5lLWJsb2NrOyBieSBkZWZhdWx0XG4gICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgIHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7XG5cbiAgICAvLyBHcmlkIGRlZmF1bHRzIHRvIGdldCBpbWFnZXMgYW5kIGVtYmVkcyB0byB3b3JrIHByb3Blcmx5XG4gICAgbWF4LXdpZHRoOiAxMDAlO1xuICAgIGhlaWdodDogYXV0bztcbiAgICAtbXMtaW50ZXJwb2xhdGlvbi1tb2RlOiBiaWN1YmljO1xuICB9XG5cbiAgLy8gTWFrZSBzdXJlIHRleHRhcmVhIHRha2VzIG9uIGhlaWdodCBhdXRvbWF0aWNhbGx5XG4gIHRleHRhcmVhIHtcbiAgICBoZWlnaHQ6IGF1dG87XG4gICAgbWluLWhlaWdodDogNTBweDtcbiAgICBib3JkZXItcmFkaXVzOiAkZ2xvYmFsLXJhZGl1cztcbiAgfVxuXG4gIC8vIE1ha2Ugc2VsZWN0IGVsZW1lbnRzIGFyZSAxMDAlIHdpZHRoIGJ5IGRlZmF1bHRcbiAgc2VsZWN0IHtcbiAgICBib3gtc2l6aW5nOiBib3JkZXItYm94O1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIGJvcmRlci1yYWRpdXM6ICRnbG9iYWwtcmFkaXVzO1xuICB9XG5cbiAgLy8gU3R5bGVzIEdvb2dsZSBNYXBzIGFuZCBNYXBRdWVzdCBlbWJlZHMgcHJvcGVybHlcbiAgLy8gc2Fzcy1saW50OmRpc2FibGUtbGluZSBuby1pZHNcbiAgLm1hcF9jYW52YXMsXG4gIC5tcWEtZGlzcGxheSB7XG4gICAgaW1nLFxuICAgIGVtYmVkLFxuICAgIG9iamVjdCB7XG4gICAgICBtYXgtd2lkdGg6IG5vbmUgIWltcG9ydGFudDtcbiAgICB9XG4gIH1cblxuICAvLyBSZXNldCA8YnV0dG9uPiBzdHlsZXMgY3JlYXRlZCBieSBtb3N0IGJyb3dzZXJzXG4gIGJ1dHRvbiB7XG4gICAgQGluY2x1ZGUgZGlzYWJsZS1tb3VzZS1vdXRsaW5lO1xuXG4gICAgcGFkZGluZzogMDtcblxuICAgIGFwcGVhcmFuY2U6IG5vbmU7XG4gICAgYm9yZGVyOiAwO1xuICAgIGJvcmRlci1yYWRpdXM6ICRnbG9iYWwtcmFkaXVzO1xuICAgIGJhY2tncm91bmQ6IHRyYW5zcGFyZW50O1xuXG4gICAgbGluZS1oZWlnaHQ6IDE7XG4gIH1cblxuICAvLyBQcmV2ZW50IHRleHQgb3ZlcmZsb3cgb24gcHJlXG4gIHByZSB7XG4gICAgb3ZlcmZsb3c6IGF1dG87XG4gIH1cblxuICAvLyBNYWtlIHJlc2V0IGluaGVyaXQgZm9udC1mYW1pbHkgaW5zdGVhZCBvZiBzZXR0aW5ncyBzYW5zLXNlcmlmXG4gIGJ1dHRvbixcbiAgaW5wdXQsXG4gIG9wdGdyb3VwLFxuICBzZWxlY3QsXG4gIHRleHRhcmVhIHtcbiAgICBmb250LWZhbWlseTogaW5oZXJpdDtcbiAgfVxuXG4gIC8vIEludGVybmFsIGNsYXNzZXMgdG8gc2hvdy9oaWRlIGVsZW1lbnRzIGluIEphdmFTY3JpcHRcbiAgLmlzLXZpc2libGUge1xuICAgIGRpc3BsYXk6IGJsb2NrICFpbXBvcnRhbnQ7XG4gIH1cblxuICAuaXMtaGlkZGVuIHtcbiAgICBkaXNwbGF5OiBub25lICFpbXBvcnRhbnQ7XG4gIH1cbn1cblxuLy8vIExvYWRzIG5vcm1hbGl6ZS5jc3MuXG4vLy8gQGFjY2VzcyBwcml2YXRlXG5AbWl4aW4gLXpmLW5vcm1hbGl6ZSB7XG4gIEBpbmNsdWRlIG5vcm1hbGl6ZSgpO1xufVxuIiwiLy8gRm91bmRhdGlvbiBmb3IgU2l0ZXMgYnkgWlVSQlxuLy8gZm91bmRhdGlvbi56dXJiLmNvbVxuLy8gTGljZW5zZWQgdW5kZXIgTUlUIE9wZW4gU291cmNlXG5cbi8vLy9cbi8vLyBAZ3JvdXAgZnVuY3Rpb25zXG4vLy8vXG5cbi8vLyBDcmVhdGVzIGFuIGlubmVyIGJveC1zaGFkb3cgZm9yIG9ubHkgb25lIHNpZGVcbi8vLyBcbi8vLyBAcGFyYW0ge0tleXdvcmR9ICRzaWRlIC0gU2lkZSB0aGUgc2hhZG93IGlzIHN1cHBvc2VkIHRvIGFwcGVhci4gQ2FuIGJlIGB0b3BgLCBgbGVmdGAsIGByaWdodGAgb3IgYGJvdHRvbWAuXG4vLy8gQHBhcmFtIHtOdW1iZXJ9ICRzaXplIC0gV2lkdGggZm9yIHRoZSB0YXJnZXQgc2lkZS5cbi8vLyBAcGFyYW0ge0NvbG9yfSAkY29sb3IgLSBDb2xvciBvZiB0aGUgc2hhZG93LlxuQG1peGluIGlubmVyLXNpZGUtc2hhZG93KFxuICAkc2lkZTogYm90dG9tLFxuICAkc2l6ZTogMjBweCxcbiAgJGNvbG9yOiByZ2JhKCRibGFjaywgMC4yNSlcbikge1xuXG4gICRoZWxwZXI6IHJvdW5kKCRzaXplICogMC42NSk7XG5cbiAgQGlmICgkc2lkZSA9PSB0b3ApIHtcbiAgICBib3gtc2hhZG93OiBpbnNldCAwICRoZWxwZXIgJHNpemUgKC0xKSokaGVscGVyICRjb2xvcjtcbiAgfVxuICBAZWxzZWlmICgkc2lkZSA9PSBsZWZ0KSB7XG4gICAgYm94LXNoYWRvdzogaW5zZXQgJGhlbHBlciAwICRzaXplICgtMSkqJGhlbHBlciAkY29sb3I7XG4gIH1cbiAgQGVsc2VpZiAoJHNpZGUgPT0gcmlnaHQpIHtcbiAgICBib3gtc2hhZG93OiBpbnNldCAoLTEpKiRoZWxwZXIgMCAkc2l6ZSAoLTEpKiRoZWxwZXIgJGNvbG9yO1xuICB9XG4gIEBlbHNlaWYgKCRzaWRlID09IGJvdHRvbSkge1xuICAgIGJveC1zaGFkb3c6IGluc2V0IDAgKC0xKSokaGVscGVyICRzaXplICgtMSkqJGhlbHBlciAkY29sb3I7XG4gIH1cbn1cblxuLy8vIENyZWF0ZXMgYSBDU1MgdHJpYW5nbGUsIHdoaWNoIGNhbiBiZSB1c2VkIGZvciBkcm9wZG93biBhcnJvd3MsIGRyb3Bkb3duIHBpcHMsIGFuZCBtb3JlLiBVc2UgdGhpcyBtaXhpbiBpbnNpZGUgYSBgJjo6YmVmb3JlYCBvciBgJjo6YWZ0ZXJgIHNlbGVjdG9yLCB0byBhdHRhY2ggdGhlIHRyaWFuZ2xlIHRvIGFuIGV4aXN0aW5nIGVsZW1lbnQuXG4vLy9cbi8vLyBAcGFyYW0ge051bWJlcn0gJHRyaWFuZ2xlLXNpemUgLSBXaWR0aCBvZiB0aGUgdHJpYW5nbGUuXG4vLy8gQHBhcmFtIHtDb2xvcn0gJHRyaWFuZ2xlLWNvbG9yIC0gQ29sb3Igb2YgdGhlIHRyaWFuZ2xlLlxuLy8vIEBwYXJhbSB7S2V5d29yZH0gJHRyaWFuZ2xlLWRpcmVjdGlvbiAtIERpcmVjdGlvbiB0aGUgdHJpYW5nbGUgcG9pbnRzLiBDYW4gYmUgYHVwYCwgYHJpZ2h0YCwgYGRvd25gLCBvciBgbGVmdGAuXG5AbWl4aW4gY3NzLXRyaWFuZ2xlKFxuICAkdHJpYW5nbGUtc2l6ZSxcbiAgJHRyaWFuZ2xlLWNvbG9yLFxuICAkdHJpYW5nbGUtZGlyZWN0aW9uXG4pIHtcbiAgZGlzcGxheTogYmxvY2s7XG4gIHdpZHRoOiAwO1xuICBoZWlnaHQ6IDA7XG5cbiAgYm9yZGVyOiBpbnNldCAkdHJpYW5nbGUtc2l6ZTtcblxuICBjb250ZW50OiAnJztcblxuICBAaWYgKCR0cmlhbmdsZS1kaXJlY3Rpb24gPT0gZG93bikge1xuICAgIGJvcmRlci1ib3R0b20td2lkdGg6IDA7XG4gICAgYm9yZGVyLXRvcC1zdHlsZTogc29saWQ7XG4gICAgYm9yZGVyLWNvbG9yOiAkdHJpYW5nbGUtY29sb3IgdHJhbnNwYXJlbnQgdHJhbnNwYXJlbnQ7XG4gIH1cbiAgQGlmICgkdHJpYW5nbGUtZGlyZWN0aW9uID09IHVwKSB7XG4gICAgYm9yZGVyLXRvcC13aWR0aDogMDtcbiAgICBib3JkZXItYm90dG9tLXN0eWxlOiBzb2xpZDtcbiAgICBib3JkZXItY29sb3I6IHRyYW5zcGFyZW50IHRyYW5zcGFyZW50ICR0cmlhbmdsZS1jb2xvcjtcbiAgfVxuICBAaWYgKCR0cmlhbmdsZS1kaXJlY3Rpb24gPT0gcmlnaHQpIHtcbiAgICBib3JkZXItcmlnaHQtd2lkdGg6IDA7XG4gICAgYm9yZGVyLWxlZnQtc3R5bGU6IHNvbGlkO1xuICAgIGJvcmRlci1jb2xvcjogdHJhbnNwYXJlbnQgdHJhbnNwYXJlbnQgdHJhbnNwYXJlbnQgJHRyaWFuZ2xlLWNvbG9yO1xuICB9XG4gIEBpZiAoJHRyaWFuZ2xlLWRpcmVjdGlvbiA9PSBsZWZ0KSB7XG4gICAgYm9yZGVyLWxlZnQtd2lkdGg6IDA7XG4gICAgYm9yZGVyLXJpZ2h0LXN0eWxlOiBzb2xpZDtcbiAgICBib3JkZXItY29sb3I6IHRyYW5zcGFyZW50ICR0cmlhbmdsZS1jb2xvciB0cmFuc3BhcmVudCB0cmFuc3BhcmVudDtcbiAgfVxufVxuXG4vLy8gQ3JlYXRlcyBhIG1lbnUgaWNvbiB3aXRoIGEgc2V0IHdpZHRoLCBoZWlnaHQsIG51bWJlciBvZiBiYXJzLCBhbmQgY29sb3JzLiBUaGUgbWl4aW4gdXNlcyB0aGUgaGVpZ2h0IG9mIHRoZSBpY29uIGFuZCB0aGUgd2VpZ2h0IG9mIHRoZSBiYXJzIHRvIGRldGVybWluZSBzcGFjaW5nLiA8ZGl2IGNsYXNzPVwiZG9jcy1leGFtcGxlLWJ1cmdlclwiPjwvZGl2PlxuLy8vXG4vLy8gQHBhcmFtIHtDb2xvcn0gJGNvbG9yIFskYmxhY2tdIC0gQ29sb3IgdG8gdXNlIGZvciB0aGUgaWNvbi5cbi8vLyBAcGFyYW0ge0NvbG9yfSAkY29sb3ItaG92ZXIgWyRkYXJrLWdyYXldIC0gQ29sb3IgdG8gdXNlIHdoZW4gdGhlIGljb24gaXMgaG92ZXJlZCBvdmVyLlxuLy8vIEBwYXJhbSB7TnVtYmVyfSAkd2lkdGggWzIwcHhdIC0gV2lkdGggb2YgdGhlIGljb24uXG4vLy8gQHBhcmFtIHtOdW1iZXJ9ICRoZWlnaHQgWzE2cHhdIC0gSGVpZ2h0IG9mIHRoZSBpY29uLlxuLy8vIEBwYXJhbSB7TnVtYmVyfSAkd2VpZ2h0IFsycHhdIC0gSGVpZ2h0IG9mIGluZGl2aWR1YWwgYmFycyBpbiB0aGUgaWNvbi5cbi8vLyBAcGFyYW0ge051bWJlcn0gJGJhcnMgWzNdIC0gTnVtYmVyIG9mIGJhcnMgaW4gdGhlIGljb24uXG5AbWl4aW4gaGFtYnVyZ2VyKFxuICAkY29sb3I6ICRibGFjayxcbiAgJGNvbG9yLWhvdmVyOiAkZGFyay1ncmF5LFxuICAkd2lkdGg6IDIwcHgsXG4gICRoZWlnaHQ6IDE2cHgsXG4gICR3ZWlnaHQ6IDJweCxcbiAgJGJhcnM6IDNcbikge1xuICAvLyBib3gtc2hhZG93IENTUyBvdXRwdXRcbiAgJHNoYWRvdzogKCk7XG4gICRob3Zlci1zaGFkb3c6ICgpO1xuXG4gIC8vIFNwYWNpbmcgYmV0d2VlbiBiYXJzIGlzIGNhbGN1bGF0ZWQgYmFzZWQgb24gdGhlIHRvdGFsIGhlaWdodCBvZiB0aGUgaWNvbiBhbmQgdGhlIHdlaWdodCBvZiBlYWNoIGJhclxuICAkc3BhY2luZzogKCRoZWlnaHQgLSAoJHdlaWdodCAqICRiYXJzKSkgLyAoJGJhcnMgLSAxKTtcblxuICBAaWYgdW5pdCgkc3BhY2luZykgPT0gJ3B4JyB7XG4gICAgJHNwYWNpbmc6IGZsb29yKCRzcGFjaW5nKTtcbiAgfVxuXG4gIEBmb3IgJGkgZnJvbSAyIHRocm91Z2ggJGJhcnMge1xuICAgICRvZmZzZXQ6ICgkd2VpZ2h0ICsgJHNwYWNpbmcpICogKCRpIC0gMSk7XG4gICAgJHNoYWRvdzogYXBwZW5kKCRzaGFkb3csIDAgJG9mZnNldCAwICRjb2xvciwgY29tbWEpO1xuICB9XG5cbiAgLy8gSWNvbiBjb250YWluZXJcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7XG4gIHdpZHRoOiAkd2lkdGg7XG4gIGhlaWdodDogJGhlaWdodDtcbiAgY3Vyc29yOiBwb2ludGVyO1xuXG4gIC8vIEljb24gYmFyc1xuICAmOjphZnRlciB7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIHRvcDogMDtcbiAgICBsZWZ0OiAwO1xuXG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgaGVpZ2h0OiAkd2VpZ2h0O1xuXG4gICAgYmFja2dyb3VuZDogJGNvbG9yO1xuICAgIGJveC1zaGFkb3c6ICRzaGFkb3c7XG5cbiAgICBjb250ZW50OiAnJztcbiAgfVxuXG4gIC8vIEhvdmVyIHN0YXRlXG4gIEBpZiAkY29sb3ItaG92ZXIge1xuICAgIC8vIEdlbmVyYXRlIENTU1xuICAgIEBmb3IgJGkgZnJvbSAyIHRocm91Z2ggJGJhcnMge1xuICAgICAgJG9mZnNldDogKCR3ZWlnaHQgKyAkc3BhY2luZykgKiAoJGkgLSAxKTtcbiAgICAgICRob3Zlci1zaGFkb3c6IGFwcGVuZCgkaG92ZXItc2hhZG93LCAwICRvZmZzZXQgMCAkY29sb3ItaG92ZXIsIGNvbW1hKTtcbiAgICB9XG5cbiAgICAmOmhvdmVyOjphZnRlciB7XG4gICAgICBiYWNrZ3JvdW5kOiAkY29sb3ItaG92ZXI7XG4gICAgICBib3gtc2hhZG93OiAkaG92ZXItc2hhZG93O1xuICAgIH1cbiAgfVxufVxuXG4vLy8gQWRkcyBhIGRvd253YXJkLWZhY2luZyB0cmlhbmdsZSBhcyBhIGJhY2tncm91bmQgaW1hZ2UgdG8gYW4gZWxlbWVudC4gVGhlIGltYWdlIGlzIGZvcm1hdHRlZCBhcyBhbiBTVkcsIG1ha2luZyBpdCBlYXN5IHRvIGNoYW5nZSB0aGUgY29sb3IuIEJlY2F1c2UgSW50ZXJuZXQgRXhwbG9yZXIgZG9lc24ndCBzdXBwb3J0IGVuY29kZWQgU1ZHcyBhcyBiYWNrZ3JvdW5kIGltYWdlcywgYSBQTkcgZmFsbGJhY2sgaXMgYWxzbyBpbmNsdWRlZC5cbi8vLyBUaGVyZSBhcmUgdHdvIFBORyBmYWxsYmFja3M6IGEgYmxhY2sgdHJpYW5nbGUgYW5kIGEgd2hpdGUgdHJpYW5nbGUuIFRoZSBvbmUgdXNlZCBkZXBlbmRzIG9uIHRoZSBsaWdodG5lc3Mgb2YgdGhlIGlucHV0IGNvbG9yLlxuLy8vXG4vLy8gQHBhcmFtIHtDb2xvcn0gJGNvbG9yIFskYmxhY2tdIC0gQ29sb3IgdG8gdXNlIGZvciB0aGUgdHJpYW5nbGUuXG5AbWl4aW4gYmFja2dyb3VuZC10cmlhbmdsZSgkY29sb3I6ICRibGFjaykge1xuICAkcmdiOiAncmdiJTI4I3tyb3VuZChyZWQoJGNvbG9yKSl9LCAje3JvdW5kKGdyZWVuKCRjb2xvcikpfSwgI3tyb3VuZChibHVlKCRjb2xvcikpfSUyOSc7XG5cbiAgYmFja2dyb3VuZC1pbWFnZTogdXJsKFwiZGF0YTppbWFnZS9zdmcreG1sO3V0ZjgsPHN2ZyB4bWxucz0naHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmcnIHZlcnNpb249JzEuMScgd2lkdGg9JzMyJyBoZWlnaHQ9JzI0JyB2aWV3Qm94PScwIDAgMzIgMjQnPjxwb2x5Z29uIHBvaW50cz0nMCwwIDMyLDAgMTYsMjQnIHN0eWxlPSdmaWxsOiAjeyRyZ2J9Jz48L3BvbHlnb24+PC9zdmc+XCIpO1xuXG4gIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6MFxcMCkge1xuICAgIEBpZiBsaWdodG5lc3MoJGNvbG9yKSA8IDYwJSB7XG4gICAgICAvLyBXaGl0ZSB0cmlhbmdsZVxuICAgICAgYmFja2dyb3VuZC1pbWFnZTogdXJsKCdkYXRhOmltYWdlL3BuZztiYXNlNjQsaVZCT1J3MEtHZ29BQUFBTlNVaEVVZ0FBQUNBQUFBQVlDQVlBQUFDYlUvODBBQUFBR1hSRldIUlRiMlowZDJGeVpRQkJaRzlpWlNCSmJXRm5aVkpsWVdSNWNjbGxQQUFBQUlwSlJFRlVlTnJFa2NrTmdEQU1CQmZSa0V0ME9iUkJCZHNHWFVEZ21RZks0WGhIMm04Y3pRQUF5MjdSM3RzdzRRZmUyeDh1T082b1lMYjZHbE9vcjNHRitzd1VSQU9tVUorUnd0RUpzOVd2VEdFWXhCWHFJMU1RQVpoQ2ZVUUtSekRNVmorVHdyQUlWNmp2U1VFa1lBcjFMU2tjeVRCYi9WK0tZZlg3eEFldXNxM3NMRHRHSDNrRUdBQ1BXSWZsTlpmaFJRQUFBQUJKUlU1RXJrSmdnZz09Jyk7XG4gICAgfVxuICAgIEBlbHNlIHtcbiAgICAgIC8vIEJsYWNrIHRyaWFuZ2xlXG4gICAgICBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoJ2RhdGE6aW1hZ2UvcG5nO2Jhc2U2NCxpVkJPUncwS0dnb0FBQUFOU1VoRVVnQUFBQ0FBQUFBWUNBWUFBQUNiVS84MEFBQUFHWFJGV0hSVGIyWjBkMkZ5WlFCQlpHOWlaU0JKYldGblpWSmxZV1I1Y2NsbFBBQUFBTUJKUkVGVWVOckVsbHNPaENBTVJWc3pDOUlselU3S0NtVkhUSnNvTVdZTVV0cHl2OUJnYnVYUUI1WlNkZ0JZWVk0eWNnQml2azhLWUZzUU1mTWlUVEJQNG8zblV6Q0t6T2FiTEpiTHkyL2czMWV2R2tBZ2luUjQvWmVnS0g1cVgzYkpDc2NBM3QweDNrZ081dFFGeWhoRmY1MHhScUZMYnlNVU5KUXpneWpHUy93Z0Nwdktxa1JCcHVXckU0VjlkKzFFNGRQVVhxSWcxMDdTUU9FLzJEUlF4TXdURHlnSUluVkRFVDlUM2xDb2ovNmovVkNtR2paT2wybEtwWjhBQXdEUVA3eklpbURHRlFBQUFBQkpSVTVFcmtKZ2dnPT0nKTtcbiAgICB9XG4gIH1cbn1cblxuLy8vIEFwcGxpZXMgdGhlIG1pY3JvIGNsZWFyZml4IGhhY2sgcG9wdWxhcml6ZWQgYnkgTmljb2xhcyBHYWxsYWdoZXIuIEluY2x1ZGUgdGhpcyBtaXhpbiBvbiBhIGNvbnRhaW5lciBpZiBpdHMgY2hpbGRyZW4gYXJlIGFsbCBmbG9hdGVkLCB0byBnaXZlIHRoZSBjb250YWluZXIgYSBwcm9wZXIgaGVpZ2h0LlxuLy8vIFRoZSBjbGVhcmZpeCBpcyBhdWdtZW50ZWQgd2l0aCBzcGVjaWZpYyBzdHlsZXMgdG8gcHJldmVudCBib3JkZXJzIGluIGZsZXhib3ggZW52aXJvbm1lbnRzXG4vLy8gQGxpbmsgaHR0cDovL25pY29sYXNnYWxsYWdoZXIuY29tL21pY3JvLWNsZWFyZml4LWhhY2svIE1pY3JvIENsZWFyZml4IEhhY2tcbi8vLyBAbGluayBodHRwOi8vZGFuaXNhZGVzaWduZXIuY29tL2Jsb2cvZmxleGJveC1jbGVhci1maXgtcHNldWRvLWVsZW1lbnRzLyBGbGV4Ym94IGZpeFxuQG1peGluIGNsZWFyZml4IHtcbiAgJjo6YmVmb3JlLFxuICAmOjphZnRlciB7XG4gICAgZGlzcGxheTogdGFibGU7XG4gICAgY29udGVudDogJyAnO1xuXG4gICAgQGlmICRnbG9iYWwtZmxleGJveCB7XG4gICAgICBmbGV4LWJhc2lzOiAwO1xuICAgICAgb3JkZXI6IDE7XG4gICAgfVxuICB9XG5cbiAgJjo6YWZ0ZXIge1xuICAgIGNsZWFyOiBib3RoO1xuICB9XG59XG5cbi8vLyBBZGRzIENTUyBmb3IgYSBcInF1YW50aXR5IHF1ZXJ5XCIgc2VsZWN0b3IgdGhhdCBhdXRvbWF0aWNhbGx5IHNpemVzIGVsZW1lbnRzIGJhc2VkIG9uIGhvdyBtYW55IHRoZXJlIGFyZSBpbnNpZGUgYSBjb250YWluZXIuXG4vLy8gQGxpbmsgaHR0cDovL2FsaXN0YXBhcnQuY29tL2FydGljbGUvcXVhbnRpdHktcXVlcmllcy1mb3ItY3NzIFF1YW50aXR5IFF1ZXJpZXMgZm9yIENTU1xuLy8vXG4vLy8gQHBhcmFtIHtOdW1iZXJ9ICRtYXggLSBNYXhpbXVtIG51bWJlciBvZiBpdGVtcyB0byBkZXRlY3QuIFRoZSBoaWdoZXIgdGhpcyBudW1iZXIgaXMsIHRoZSBtb3JlIENTUyB0aGF0J3MgcmVxdWlyZWQgdG8gY292ZXIgZWFjaCBudW1iZXIgb2YgaXRlbXMuXG4vLy8gQHBhcmFtIHtLZXl3b3JkfSAkZWxlbSBbbGldIC0gVGFnIHRvIHVzZSBmb3Igc2libGluZyBzZWxlY3RvcnMuXG5AbWl4aW4gYXV0by13aWR0aCgkbWF4LCAkZWxlbTogbGkpIHtcbiAgQGZvciAkaSBmcm9tIDIgdGhyb3VnaCAkbWF4IHtcbiAgICAmOm50aC1sYXN0LWNoaWxkKCN7JGl9KTpmaXJzdC1jaGlsZCxcbiAgICAmOm50aC1sYXN0LWNoaWxkKCN7JGl9KTpmaXJzdC1jaGlsZCB+ICN7JGVsZW19IHtcbiAgICAgIHdpZHRoOiBwZXJjZW50YWdlKDEgLyAkaSk7XG4gICAgfVxuICB9XG59XG5cbi8vLyBSZW1vdmVzIHRoZSBmb2N1cyByaW5nIGFyb3VuZCBhbiBlbGVtZW50IHdoZW4gYSBtb3VzZSBpbnB1dCBpcyBkZXRlY3RlZC5cbkBtaXhpbiBkaXNhYmxlLW1vdXNlLW91dGxpbmUge1xuICBbZGF0YS13aGF0aW5wdXQ9J21vdXNlJ10gJiB7XG4gICAgb3V0bGluZTogMDtcbiAgfVxufVxuXG4vLy8gTWFrZXMgYW4gZWxlbWVudCB2aXN1YWxseSBoaWRkZW4sIGJ1dCBzdGlsbCBhY2Nlc3NpYmxlIHRvIGtleWJvYXJkcyBhbmQgYXNzaXN0aXZlIGRldmljZXMuXG4vLy8gQGxpbmsgaHR0cDovL3Nub29rLmNhL2FyY2hpdmVzL2h0bWxfYW5kX2Nzcy9oaWRpbmctY29udGVudC1mb3ItYWNjZXNzaWJpbGl0eSBIaWRpbmcgQ29udGVudCBmb3IgQWNjZXNzaWJpbGl0eVxuLy8vIEBsaW5rIGh0dHA6Ly9odWdvZ2lyYXVkZWwuY29tLzIwMTYvMTAvMTMvY3NzLWhpZGUtYW5kLXNlZWsvXG5AbWl4aW4gZWxlbWVudC1pbnZpc2libGUge1xuICBwb3NpdGlvbjogYWJzb2x1dGUgIWltcG9ydGFudDtcbiAgd2lkdGg6IDFweDtcbiAgaGVpZ2h0OiAxcHg7XG4gIHBhZGRpbmc6IDA7XG4gIG92ZXJmbG93OiBoaWRkZW47XG4gIGNsaXA6IHJlY3QoMCwwLDAsMCk7XG4gIHdoaXRlLXNwYWNlOiBub3dyYXA7XG4gIGNsaXAtcGF0aDogaW5zZXQoNTAlKTtcbiAgYm9yZGVyOiAwO1xufVxuXG4vLy8gUmV2ZXJzZXMgdGhlIENTUyBvdXRwdXQgY3JlYXRlZCBieSB0aGUgYGVsZW1lbnQtaW52aXNpYmxlKClgIG1peGluLlxuQG1peGluIGVsZW1lbnQtaW52aXNpYmxlLW9mZiB7XG4gIHBvc2l0aW9uOiBzdGF0aWMgIWltcG9ydGFudDtcbiAgd2lkdGg6IGF1dG87XG4gIGhlaWdodDogYXV0bztcbiAgb3ZlcmZsb3c6IHZpc2libGU7XG4gIGNsaXA6IGF1dG87XG4gIHdoaXRlLXNwYWNlOiBub3JtYWw7XG4gIGNsaXAtcGF0aDogbm9uZTtcbn1cblxuLy8vIFZlcnRpY2FsbHkgY2VudGVycyB0aGUgZWxlbWVudCBpbnNpZGUgb2YgaXRzIGZpcnN0IG5vbi1zdGF0aWMgcGFyZW50LFxuLy8vIEBsaW5rIGh0dHA6Ly93d3cuc2l0ZXBvaW50LmNvbS9jZW50ZXJpbmctd2l0aC1zYXNzLyBDZW50ZXJpbmcgV2l0aCBTYXNzXG5AbWl4aW4gdmVydGljYWwtY2VudGVyIHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB0b3A6IDUwJTtcbiAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC01MCUpO1xufVxuXG4vLy8gSG9yaXpvbnRhbGx5IGNlbnRlcnMgdGhlIGVsZW1lbnQgaW5zaWRlIG9mIGl0cyBmaXJzdCBub24tc3RhdGljIHBhcmVudCxcbi8vLyBAbGluayBodHRwOi8vd3d3LnNpdGVwb2ludC5jb20vY2VudGVyaW5nLXdpdGgtc2Fzcy8gQ2VudGVyaW5nIFdpdGggU2Fzc1xuQG1peGluIGhvcml6b250YWwtY2VudGVyIHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICBsZWZ0OiA1MCU7XG4gIHRyYW5zZm9ybTogdHJhbnNsYXRlWCgtNTAlKTtcbn1cblxuLy8vIEFic29sdXRlbHkgY2VudGVycyB0aGUgZWxlbWVudCBpbnNpZGUgb2YgaXRzIGZpcnN0IG5vbi1zdGF0aWMgcGFyZW50LFxuLy8vIEBsaW5rIGh0dHA6Ly93d3cuc2l0ZXBvaW50LmNvbS9jZW50ZXJpbmctd2l0aC1zYXNzLyBDZW50ZXJpbmcgV2l0aCBTYXNzXG5AbWl4aW4gYWJzb2x1dGUtY2VudGVyIHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB0b3A6IDUwJTtcbiAgbGVmdDogNTAlO1xuICB0cmFuc2Zvcm06IHRyYW5zbGF0ZSgtNTAlLCAtNTAlKTtcbn1cblxuLy8vIEl0ZXJhdGVzIHRocm91Z2ggYnJlYWtwb2ludHMgZGVmaW5lZCBpbiBgJGJyZWFrcG9pbnQtY2xhc3Nlc2AgYW5kIHByaW50cyB0aGUgQ1NTIGluc2lkZSB0aGUgbWl4aW4gYXQgZWFjaCBicmVha3BvaW50J3MgbWVkaWEgcXVlcnkuIFVzZSB0aGlzIHdpdGggdGhlIGdyaWQsIG9yIGFueSBvdGhlciBjb21wb25lbnQgdGhhdCBoYXMgcmVzcG9uc2l2ZSBjbGFzc2VzLlxuLy8vXG4vLy8gQHBhcmFtIHtCb29sZWFufSAkc21hbGwgW3RydWVdIC0gSWYgYGZhbHNlYCwgdGhlIG1peGluIHdpbGwgc2tpcCB0aGUgYHNtYWxsYCBicmVha3BvaW50LiBVc2UgdGhpcyB3aXRoIGNvbXBvbmVudHMgdGhhdCBkb24ndCBwcmVmaXggY2xhc3NlcyB3aXRoIGBzbWFsbC1gLCBvbmx5IGBtZWRpdW0tYCBhbmQgdXAuXG4vLy8gQHBhcmFtIHtCb29sZWFufSAkYXV0by1pbnNlcnQtYnJlYWtwb2ludHMgW3RydWVdIC0gSWYgYGZhbHNlYCwgdGhlIG1peGluIHdpbGwgaXRlcmF0ZSBvdmVyIGJyZWFrcG9pbnRzIHdpdGhvdXQgZG9pbmcgdGhlIG1lZGlhIHF1ZXJ5IGl0c2VsZi4gVXNlZnVsIGZvciBtb3JlIGNvbXBsZXggbWVkaWEgcXVlcnkgZ2VuZXJhdGlvbiBhcyBpbiB0aGUgbWFyZ2luIGdyaWQuXG5AbWl4aW4gLXpmLWVhY2gtYnJlYWtwb2ludCgkc21hbGw6IHRydWUsICRhdXRvLWluc2VydC1icmVha3BvaW50czogdHJ1ZSkge1xuICAkbGlzdDogJGJyZWFrcG9pbnQtY2xhc3NlcztcblxuICBAaWYgbm90ICRzbWFsbCB7XG4gICAgJGxpc3Q6IHNsLXJlbW92ZSgkbGlzdCwgJC16Zi16ZXJvLWJyZWFrcG9pbnQpO1xuICB9XG5cbiAgQGVhY2ggJG5hbWUgaW4gJGxpc3Qge1xuICAgICQtemYtc2l6ZTogJG5hbWUgIWdsb2JhbDtcblxuICAgIEBpZiAkYXV0by1pbnNlcnQtYnJlYWtwb2ludHMge1xuICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludCgkbmFtZSkge1xuICAgICAgICBAY29udGVudDtcbiAgICAgIH1cbiAgICB9XG4gICAgQGVsc2Uge1xuICAgICAgQGNvbnRlbnQ7XG4gICAgfVxuICB9XG59XG5cbi8vLyBHZW5lcmF0ZSB0aGUgYEBjb250ZW50YCBwYXNzZWQgdG8gdGhlIG1peGluIHdpdGggYSB2YWx1ZSBgJC16Zi1icC12YWx1ZWAgcmVsYXRlZCB0byBhIGJyZWFrcG9pbnQsIGRlcGVuZGluZyBvbiB0aGUgYCRuYW1lYCBwYXJhbWV0ZXI6XG4vLy8gLSBGb3IgYSBzaW5nbGUgdmFsdWUsIGAkLXpmLWJwLXZhbHVlYCBpcyB0aGlzIHZhbHVlLlxuLy8vIC0gRm9yIGEgYnJlYWtwb2ludCBuYW1lLCBgJC16Zi1icC12YWx1ZWAgaXMgdGhlIGNvcnJlc3BvbmRpbmcgYnJlYWtwb2ludCB2YWx1ZSBpbiBgJG1hcGAuXG4vLy8gLSBGb3IgXCJhdXRvXCIsIGAkLXpmLWJwLXZhbHVlYCBpcyB0aGUgY29ycmVzcG9uZGluZyBicmVha3BvaW50IHZhbHVlIGluIGAkbWFwYCBhbmQgaXMgcGFzc2VkIHRvIGBAY29udGVudGAsIHdoaWNoIGlzIG1hZGUgcmVzcG9uc2l2ZSBmb3IgZWFjaCBicmVha3BvaW50IG9mIGAkbWFwYC5cbi8vLyBAcGFyYW0ge051bWJlcnxBcnJheXxLZXl3b3JkfSAkbmFtZSBbYXV0b10gLSBTaW5nbGUgdmFsdWUsIGJyZWFrcG9pbnQgbmFtZSwgb3IgbGlzdCBvZiBicmVha3BvaW50IG5hbWVzIHRvIHVzZS4gXCJhdXRvXCIgYnkgZGVmYXVsdC5cbi8vLyBAcGFyYW0ge051bWJlcnxNYXB9ICRtYXAgLSBNYXAgb2YgYnJlYWtwb2ludHMgYW5kIHZhbHVlcyBvciBzaW5nbGUgdmFsdWUgdG8gdXNlLlxuQG1peGluIC16Zi1icmVha3BvaW50LXZhbHVlKFxuICAkbmFtZTogYXV0byxcbiAgJG1hcDogbnVsbFxuKSB7XG4gIEBpZiAkbmFtZSA9PSBhdXRvIGFuZCB0eXBlLW9mKCRtYXApID09ICdtYXAnIHtcbiAgICAvLyBcImF1dG9cIlxuICAgIEBlYWNoICRrLCAkdiBpbiAkbWFwIHtcbiAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoJGspIHtcbiAgICAgICAgQGluY2x1ZGUgLXpmLWJyZWFrcG9pbnQtdmFsdWUoJHYsICRtYXApIHtcbiAgICAgICAgICBAY29udGVudDtcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgfVxuICBAZWxzZSB7XG4gICAgLy8gYnJlYWtwb2ludCBuYW1lXG4gICAgQGlmIHR5cGUtb2YoJG5hbWUpID09ICdzdHJpbmcnIHtcbiAgICAgICRuYW1lOiAtemYtZ2V0LWJwLXZhbCgkbWFwLCAkbmFtZSk7XG4gICAgfVxuXG4gICAgLy8gYnJlYWtwb2ludCB2YWx1ZVxuICAgICQtemYtYnAtdmFsdWU6ICRuYW1lICFnbG9iYWw7XG4gICAgQGNvbnRlbnQ7XG4gIH1cbn1cbiIsIi8vIEZvdW5kYXRpb24gZm9yIFNpdGVzIGJ5IFpVUkJcbi8vIGZvdW5kYXRpb24uenVyYi5jb21cbi8vIExpY2Vuc2VkIHVuZGVyIE1JVCBPcGVuIFNvdXJjZVxuXG4vLy8vXG4vLy8gQGdyb3VwIGdyaWRcbi8vLy9cblxuLy8vIE91dHB1dHMgQ1NTIGNsYXNzZXMgZm9yIHRoZSBncmlkLlxuLy8vIEBhY2Nlc3MgcHJpdmF0ZVxuQG1peGluIGZvdW5kYXRpb24tZ3JpZChcbiAgJHJvdzogJ3JvdycsXG4gICRjb2x1bW46ICdjb2x1bW4nLFxuICAkY29sdW1uLXJvdzogJ2NvbHVtbi1yb3cnLFxuICAkZ3V0dGVyOiAnZ3V0dGVyJyxcbiAgJHB1c2g6ICdwdXNoJyxcbiAgJHB1bGw6ICdwdWxsJyxcbiAgJGNlbnRlcjogJ2NlbnRlcmVkJyxcbiAgJHVuY2VudGVyOiAndW5jZW50ZXJlZCcsXG4gICRjb2xsYXBzZTogJ2NvbGxhcHNlJyxcbiAgJHVuY29sbGFwc2U6ICd1bmNvbGxhcHNlJyxcbiAgJG9mZnNldDogJ29mZnNldCcsXG4gICRlbmQ6ICdlbmQnLFxuICAkZXhwYW5kZWQ6ICdleHBhbmRlZCcsXG4gICRibG9jazogJ2Jsb2NrJ1xuKSB7XG4gIC8vIFJvd1xuICAuI3skcm93fSB7XG4gICAgQGluY2x1ZGUgZ3JpZC1yb3c7XG5cbiAgICAvLyBDb2xsYXBzaW5nXG4gICAgJi4jeyRjb2xsYXBzZX0ge1xuICAgICAgPiAuI3skY29sdW1ufSB7XG4gICAgICAgIEBpbmNsdWRlIGdyaWQtY29sLWNvbGxhcHNlO1xuICAgICAgfVxuICAgIH1cblxuICAgIC8vIE5lc3RpbmdcbiAgICAmIC4jeyRyb3d9IHtcbiAgICAgIEBpbmNsdWRlIGdyaWQtcm93LW5lc3QoJGdyaWQtY29sdW1uLWd1dHRlcik7XG5cbiAgICAgICYuI3skY29sbGFwc2V9IHtcbiAgICAgICAgbWFyZ2luLXJpZ2h0OiAwO1xuICAgICAgICBtYXJnaW4tbGVmdDogMDtcbiAgICAgIH1cbiAgICB9XG5cbiAgICAvLyBFeHBhbmRlZCAoZnVsbC13aWR0aCkgcm93XG4gICAgJi4jeyRleHBhbmRlZH0ge1xuICAgICAgQGluY2x1ZGUgZ3JpZC1yb3ctc2l6ZShleHBhbmQpO1xuXG4gICAgICAuI3skcm93fSB7XG4gICAgICAgIG1hcmdpbi1yaWdodDogYXV0bztcbiAgICAgICAgbWFyZ2luLWxlZnQ6IGF1dG87XG4gICAgICB9XG4gICAgfVxuXG4gICAgJjpub3QoLiN7JGV4cGFuZGVkfSkgLiN7JHJvd30ge1xuICAgICAgQGluY2x1ZGUgZ3JpZC1yb3ctc2l6ZShleHBhbmQpO1xuICAgIH1cblxuICAgIEBpZiB0eXBlLW9mKCRncmlkLWNvbHVtbi1ndXR0ZXIpID09ICdtYXAnIHtcbiAgICAgIC8vIFN0YXRpYyAodW5yZXNwb25zaXZlKSByb3cgZ3V0dGVyc1xuICAgICAgLy9cbiAgICAgIEBlYWNoICRicmVha3BvaW50LCAkdmFsdWUgaW4gJGdyaWQtY29sdW1uLWd1dHRlciB7XG4gICAgICAgICYuI3skZ3V0dGVyfS0jeyRicmVha3BvaW50fSB7XG4gICAgICAgICAgPiAuI3skY29sdW1ufSB7XG4gICAgICAgICAgICBAaW5jbHVkZSBncmlkLWNvbC1ndXR0ZXIoJHZhbHVlKTtcbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gIH1cblxuICAvLyBDb2x1bW5cbiAgLiN7JGNvbHVtbn0ge1xuICAgIEBpbmNsdWRlIGdyaWQtY29sO1xuXG4gICAgQGlmICRncmlkLWNvbHVtbi1hbGlnbi1lZGdlIHtcbiAgICAgICYuI3skZW5kfSB7XG4gICAgICAgIEBpbmNsdWRlIGdyaWQtY29sLWVuZDtcbiAgICAgIH1cbiAgICB9XG4gIH1cblxuICAvLyBDb2x1bW4gcm93XG4gIC8vIFRoZSBkb3VibGUgLnJvdyBjbGFzcyBpcyBuZWVkZWQgdG8gYnVtcCB1cCB0aGUgc3BlY2lmaWNpdHlcbiAgLiN7JGNvbHVtbn0uI3skcm93fS4jeyRyb3d9IHtcbiAgICBmbG9hdDogbm9uZTtcbiAgfVxuXG4gIC8vIFRvIHByb3Blcmx5IG5lc3QgYSBjb2x1bW4gcm93LCBwYWRkaW5nIGFuZCBtYXJnaW4gaXMgcmVtb3ZlZFxuICAuI3skcm93fSAuI3skY29sdW1ufS4jeyRyb3d9LiN7JHJvd30ge1xuICAgIG1hcmdpbi1yaWdodDogMDtcbiAgICBtYXJnaW4tbGVmdDogMDtcbiAgICBwYWRkaW5nLXJpZ2h0OiAwO1xuICAgIHBhZGRpbmctbGVmdDogMDtcbiAgfVxuXG4gIEBpbmNsdWRlIC16Zi1lYWNoLWJyZWFrcG9pbnQge1xuICAgIEBmb3IgJGkgZnJvbSAxIHRocm91Z2ggJGdyaWQtY29sdW1uLWNvdW50IHtcbiAgICAgIC8vIENvbHVtbiB3aWR0aFxuICAgICAgLiN7JC16Zi1zaXplfS0jeyRpfSB7XG4gICAgICAgIEBpbmNsdWRlIGdyaWQtY29sLXNpemUoJGkpO1xuICAgICAgfVxuXG4gICAgICAvLyBTb3VyY2Ugb3JkZXJpbmdcbiAgICAgIEBpZiAkaSA8ICRncmlkLWNvbHVtbi1jb3VudCB7XG4gICAgICAgIC4jeyQtemYtc2l6ZX0tI3skcHVzaH0tI3skaX0ge1xuICAgICAgICAgIEBpbmNsdWRlIGdyaWQtY29sLXBvcygkaSk7XG4gICAgICAgIH1cblxuICAgICAgICAuI3skLXpmLXNpemV9LSN7JHB1bGx9LSN7JGl9IHtcbiAgICAgICAgICBAaW5jbHVkZSBncmlkLWNvbC1wb3MoLSRpKTtcbiAgICAgICAgfVxuICAgICAgfVxuXG4gICAgICAvLyBPZmZzZXRzXG4gICAgICAkbzogJGkgLSAxO1xuXG4gICAgICAuI3skLXpmLXNpemV9LSN7JG9mZnNldH0tI3skb30ge1xuICAgICAgICBAaW5jbHVkZSBncmlkLWNvbC1vZmYoJG8pO1xuICAgICAgfVxuICAgIH1cblxuICAgIC8vIEJsb2NrIGdyaWRcbiAgICBAZm9yICRpIGZyb20gMSB0aHJvdWdoICRibG9jay1ncmlkLW1heCB7XG4gICAgICAuI3skLXpmLXNpemV9LXVwLSN7JGl9IHtcbiAgICAgICAgQGluY2x1ZGUgZ3JpZC1sYXlvdXQoJGksICcuI3skY29sdW1ufScpO1xuICAgICAgfVxuICAgIH1cblxuICAgIC8vIFJlc3BvbnNpdmUgY29sbGFwc2luZ1xuICAgIC4jeyQtemYtc2l6ZX0tI3skY29sbGFwc2V9IHtcbiAgICAgID4gLiN7JGNvbHVtbn0geyBAaW5jbHVkZSBncmlkLWNvbC1jb2xsYXBzZTsgfVxuXG4gICAgICAuI3skcm93fSB7XG4gICAgICAgIG1hcmdpbi1yaWdodDogMDtcbiAgICAgICAgbWFyZ2luLWxlZnQ6IDA7XG4gICAgICB9XG4gICAgfVxuXG4gICAgLiN7JGV4cGFuZGVkfS4jeyRyb3d9IC4jeyQtemYtc2l6ZX0tI3skY29sbGFwc2V9LiN7JHJvd30ge1xuICAgICAgbWFyZ2luLXJpZ2h0OiAwO1xuICAgICAgbWFyZ2luLWxlZnQ6IDA7XG4gICAgfVxuXG4gICAgLiN7JC16Zi1zaXplfS0jeyR1bmNvbGxhcHNlfSB7XG4gICAgICA+IC4jeyRjb2x1bW59IHsgQGluY2x1ZGUgZ3JpZC1jb2wtZ3V0dGVyKCQtemYtc2l6ZSk7IH1cbiAgICB9XG5cbiAgICAvLyBQb3NpdGlvbmluZ1xuICAgIC4jeyQtemYtc2l6ZX0tI3skY2VudGVyfSB7XG4gICAgICBAaW5jbHVkZSBncmlkLWNvbC1wb3MoY2VudGVyKTtcbiAgICB9XG5cbiAgICAvLyBHdXR0ZXIgYWRqdXN0bWVudFxuICAgIC4jeyQtemYtc2l6ZX0tI3skdW5jZW50ZXJ9LFxuICAgIC4jeyQtemYtc2l6ZX0tI3skcHVzaH0tMCxcbiAgICAuI3skLXpmLXNpemV9LSN7JHB1bGx9LTAge1xuICAgICAgQGluY2x1ZGUgZ3JpZC1jb2wtdW5wb3M7XG4gICAgfVxuICB9XG5cbiAgLy8gQmxvY2sgZ3JpZCBjb2x1bW5zXG4gIC4jeyRjb2x1bW59LSN7JGJsb2NrfSB7XG4gICAgQGluY2x1ZGUgZ3JpZC1jb2x1bW4tbWFyZ2luO1xuICB9XG5cbiAgQGlmICRjb2x1bW4gPT0gJ2NvbHVtbicgYW5kIGhhcy12YWx1ZSgkZ3JpZC1jb2x1bW4tYWxpYXMpIHtcbiAgICAuI3skZ3JpZC1jb2x1bW4tYWxpYXN9IHtcbiAgICAgIC8vIHNhc3MtbGludDpkaXNhYmxlLWJsb2NrIHBsYWNlaG9sZGVyLWluLWV4dGVuZFxuICAgICAgQGV4dGVuZCAuY29sdW1uO1xuICAgIH1cbiAgfVxufVxuIiwiLy8gRm91bmRhdGlvbiBmb3IgU2l0ZXMgYnkgWlVSQlxuLy8gZm91bmRhdGlvbi56dXJiLmNvbVxuLy8gTGljZW5zZWQgdW5kZXIgTUlUIE9wZW4gU291cmNlXG5cbi8vLy9cbi8vLyBAZ3JvdXAgZ3JpZFxuLy8vL1xuXG4vLy8gQ2hhbmdlIHRoZSBiZWhhdmlvciBvZiBjb2x1bW5zIGRlZmluZWQgaW5zaWRlIHRoaXMgbWl4aW4gdG8gdXNlIGEgZGlmZmVyZW50IGNvbHVtbiBjb3VudC5cbi8vLyBAY29udGVudFxuLy8vXG4vLy8gQHBhcmFtIHtOdW1iZXJ9ICRjb2x1bW5zIC0gTnVtYmVyIG9mIGNvbHVtbnMgdG8gdXNlLlxuLy8vIEBwYXJhbSB7Qm9vbGVhbn0gJHJvb3QgW2ZhbHNlXVxuLy8vICAgSWYgYGZhbHNlYCwgc2VsZWN0b3JzIGluc2lkZSB0aGlzIG1peGluIHdpbGwgbmVzdCBpbnNpZGUgdGhlIHBhcmVudCBzZWxlY3Rvci5cbi8vLyAgIElmIGB0cnVlYCwgc2VsZWN0b3JzIHdpbGwgbm90IG5lc3QuXG5AbWl4aW4gZ3JpZC1jb250ZXh0KFxuICAkY29sdW1ucyxcbiAgJHJvb3Q6IGZhbHNlXG4pIHtcbiAgLy8gU3RvcmUgdGhlIGN1cnJlbnQgY29sdW1uIGNvdW50IHNvIGl0IGNhbiBiZSByZS1zZXQgbGF0ZXJcbiAgJG9sZC1ncmlkLWNvbHVtbi1jb3VudDogJGdyaWQtY29sdW1uLWNvdW50O1xuICAkZ3JpZC1jb2x1bW4tY291bnQ6ICRjb2x1bW5zICFnbG9iYWw7XG5cbiAgQGlmICRyb290IHtcbiAgICBAYXQtcm9vdCB7IEBjb250ZW50OyB9XG4gIH1cbiAgQGVsc2Uge1xuICAgIEBjb250ZW50O1xuICB9XG5cbiAgLy8gUmVzdG9yZSB0aGUgb2xkIGNvbHVtbiBjb3VudFxuICAkZ3JpZC1jb2x1bW4tY291bnQ6ICRvbGQtZ3JpZC1jb2x1bW4tY291bnQgIWdsb2JhbDtcbn1cblxuLy8vIENyZWF0ZXMgYSBncmlkIHJvdy5cbi8vLyBAY29udGVudFxuLy8vXG4vLy8gQHBhcmFtIHtOdW1iZXJ9ICRjb2x1bW5zIFtudWxsXSAtIENvbHVtbiBjb3VudCBmb3IgdGhpcyByb3cuIGBudWxsYCB3aWxsIHVzZSB0aGUgZGVmYXVsdCBjb2x1bW4gY291bnQuXG4vLy8gQHBhcmFtIHtLZXl3b3Jkc30gJGJlaGF2aW9yIFtudWxsXVxuLy8vICAgTW9kaWZpY2F0aW9ucyB0byB0aGUgZGVmYXVsdCBncmlkIHN0eWxlcy4gYG5lc3RgIGluZGljYXRlcyB0aGUgcm93IHdpbGwgYmUgcGxhY2VkIGluc2lkZSBhbm90aGVyIHJvdy4gYGNvbGxhcHNlYCBpbmRpY2F0ZXMgdGhhdCB0aGUgY29sdW1ucyBpbnNpZGUgdGhpcyByb3cgd2lsbCBub3QgaGF2ZSBwYWRkaW5nLiBgbmVzdCBjb2xsYXBzZWAgY29tYmluZXMgYm90aCBiZWhhdmlvcnMuXG4vLy8gQHBhcmFtIHtLZXl3b3JkfE51bWJlcn0gJHNpemUgWyRncmlkLXJvdy13aWR0aF0gTWF4aW11bSBzaXplIG9mIHRoZSByb3cuIFNldCB0byBgZXhwYW5kYCB0byBtYWtlIHRoZSByb3cgdGFraW5nIHRoZSBmdWxsIHdpZHRoLlxuLy8vIEBwYXJhbSB7Qm9vbGVhbn0gJGNmIFt0cnVlXSAtIFdoZXRoZXIgb3Igbm90IHRvIGluY2x1ZGUgYSBjbGVhcmZpeC5cbi8vLyBAcGFyYW0ge051bWJlcnxNYXB9ICRndXR0ZXJzIFskZ3JpZC1jb2x1bW4tZ3V0dGVyXSAtIEd1dHRlciBtYXAgb3Igc2luZ2xlIHZhbHVlIHRvIHVzZSB3aGVuIGludmVydGluZyBtYXJnaW5zLiBSZXNwb25zaXZlIGd1dHRlciBzZXR0aW5ncyBieSBkZWZhdWx0LlxuQG1peGluIGdyaWQtcm93KFxuICAkY29sdW1uczogbnVsbCxcbiAgJGJlaGF2aW9yOiBudWxsLFxuICAkc2l6ZTogJGdyaWQtcm93LXdpZHRoLFxuICAkY2Y6IHRydWUsXG4gICRndXR0ZXJzOiAkZ3JpZC1jb2x1bW4tZ3V0dGVyXG4pIHtcbiAgJG1hcmdpbjogYXV0bztcblxuICBAaWYgaW5kZXgoJGJlaGF2aW9yLCBuZXN0KSAhPSBudWxsIHtcbiAgICBAaW5jbHVkZSBncmlkLXJvdy1uZXN0KCRndXR0ZXJzKTtcblxuICAgIEBpZiBpbmRleCgkYmVoYXZpb3IsIGNvbGxhcHNlKSAhPSBudWxsIHtcbiAgICAgIG1hcmdpbi1yaWdodDogMDtcbiAgICAgIG1hcmdpbi1sZWZ0OiAwO1xuICAgIH1cbiAgfVxuICBAZWxzZSB7XG4gICAgQGluY2x1ZGUgZ3JpZC1yb3ctc2l6ZSgkc2l6ZSk7XG4gICAgbWFyZ2luLXJpZ2h0OiBhdXRvO1xuICAgIG1hcmdpbi1sZWZ0OiBhdXRvO1xuICB9XG5cbiAgQGlmICRjZiB7XG4gICAgQGluY2x1ZGUgY2xlYXJmaXg7XG4gIH1cblxuICBAaWYgJGNvbHVtbnMgIT0gbnVsbCB7XG4gICAgQGluY2x1ZGUgZ3JpZC1jb250ZXh0KCRjb2x1bW5zKSB7XG4gICAgICBAY29udGVudDtcbiAgICB9XG4gIH1cbn1cblxuLy8vIEludmVydHMgdGhlIG1hcmdpbnMgb2YgYSByb3cgdG8gbmVzdCBpdCBpbnNpZGUgb2YgYSBjb2x1bW4uXG4vLy9cbi8vLyBAcGFyYW0ge051bWJlcnxNYXB9ICRndXR0ZXJzIFskZ3JpZC1jb2x1bW4tZ3V0dGVyXSAtIEd1dHRlciBtYXAgb3Igc2luZ2xlIHZhbHVlIHRvIHVzZSB3aGVuIGludmVydGluZyBtYXJnaW5zLiBSZXNwb25zaXZlIGd1dHRlciBzZXR0aW5ncyBieSBkZWZhdWx0LlxuQG1peGluIGdyaWQtcm93LW5lc3QoJGd1dHRlcnM6ICRncmlkLWNvbHVtbi1ndXR0ZXIpIHtcbiAgQGluY2x1ZGUgLXpmLWVhY2gtYnJlYWtwb2ludCB7XG4gICAgJG1hcmdpbjogcmVtLWNhbGMoLXpmLWdldC1icC12YWwoJGd1dHRlcnMsICQtemYtc2l6ZSkpIC8gMiAqIC0xO1xuXG4gICAgbWFyZ2luLXJpZ2h0OiAkbWFyZ2luO1xuICAgIG1hcmdpbi1sZWZ0OiAkbWFyZ2luO1xuICB9XG59XG5cbi8vLyBTZXQgYSBncmlkIHJvdyBzaXplXG4vLy9cbi8vLyBAcGFyYW0ge0tleXdvcmR8TnVtYmVyfSAkc2l6ZSBbJGdyaWQtcm93LXdpZHRoXSBNYXhpbXVtIHNpemUgb2YgdGhlIHJvdy4gU2V0IHRvIGBleHBhbmRgIHRvIG1ha2UgdGhlIHJvdyB0YWtpbmcgdGhlIGZ1bGwgd2lkdGguXG5AbWl4aW4gZ3JpZC1yb3ctc2l6ZSgkc2l6ZTogJGdyaWQtcm93LXdpZHRoKSB7XG4gIEBpZiAkc2l6ZSA9PSBleHBhbmQge1xuICAgICRzaXplOiBub25lO1xuICB9XG5cbiAgbWF4LXdpZHRoOiAkc2l6ZTtcbn1cbiIsIi8vIEZvdW5kYXRpb24gZm9yIFNpdGVzIGJ5IFpVUkJcbi8vIGZvdW5kYXRpb24uenVyYi5jb21cbi8vIExpY2Vuc2VkIHVuZGVyIE1JVCBPcGVuIFNvdXJjZVxuXG4vLy8vXG4vLy8gQGdyb3VwIGZ1bmN0aW9uc1xuLy8vL1xuXG4kZ2xvYmFsLWZvbnQtc2l6ZTogMTAwJSAhZGVmYXVsdDtcblxuLy8vIFJlbW92ZXMgdGhlIHVuaXQgKGUuZy4gcHgsIGVtLCByZW0pIGZyb20gYSB2YWx1ZSwgcmV0dXJuaW5nIHRoZSBudW1iZXIgb25seS5cbi8vL1xuLy8vIEBwYXJhbSB7TnVtYmVyfSAkbnVtIC0gTnVtYmVyIHRvIHN0cmlwIHVuaXQgZnJvbS5cbi8vL1xuLy8vIEByZXR1cm5zIHtOdW1iZXJ9IFRoZSBzYW1lIG51bWJlciwgc2FucyB1bml0LlxuQGZ1bmN0aW9uIHN0cmlwLXVuaXQoJG51bSkge1xuICBAcmV0dXJuICRudW0gLyAoJG51bSAqIDAgKyAxKTtcbn1cblxuLy8vIENvbnZlcnRzIG9uZSBvciBtb3JlIHBpeGVsIHZhbHVlcyBpbnRvIG1hdGNoaW5nIHJlbSB2YWx1ZXMuXG4vLy9cbi8vLyBAcGFyYW0ge051bWJlcnxMaXN0fSAkdmFsdWVzIC0gT25lIG9yIG1vcmUgdmFsdWVzIHRvIGNvbnZlcnQuIEJlIHN1cmUgdG8gc2VwYXJhdGUgdGhlbSB3aXRoIHNwYWNlcyBhbmQgbm90IGNvbW1hcy4gSWYgeW91IG5lZWQgdG8gY29udmVydCBhIGNvbW1hLXNlcGFyYXRlZCBsaXN0LCB3cmFwIHRoZSBsaXN0IGluIHBhcmVudGhlc2VzLlxuLy8vIEBwYXJhbSB7TnVtYmVyfSAkYmFzZSBbbnVsbF0gLSBUaGUgYmFzZSB2YWx1ZSB0byB1c2Ugd2hlbiBjYWxjdWxhdGluZyB0aGUgYHJlbWAuIElmIHlvdSdyZSB1c2luZyBGb3VuZGF0aW9uIG91dCBvZiB0aGUgYm94LCB0aGlzIGlzIDE2cHguIElmIHRoaXMgcGFyYW1ldGVyIGlzIGBudWxsYCwgdGhlIGZ1bmN0aW9uIHdpbGwgcmVmZXJlbmNlIHRoZSBgJGJhc2UtZm9udC1zaXplYCB2YXJpYWJsZSBhcyB0aGUgYmFzZS5cbi8vL1xuLy8vIEByZXR1cm5zIHtMaXN0fSBBIGxpc3Qgb2YgY29udmVydGVkIHZhbHVlcy5cbkBmdW5jdGlvbiByZW0tY2FsYygkdmFsdWVzLCAkYmFzZTogbnVsbCkge1xuICAkcmVtLXZhbHVlczogKCk7XG4gICRjb3VudDogbGVuZ3RoKCR2YWx1ZXMpO1xuXG4gIC8vIElmIG5vIGJhc2UgaXMgZGVmaW5lZCwgZGVmZXIgdG8gdGhlIGdsb2JhbCBmb250IHNpemVcbiAgQGlmICRiYXNlID09IG51bGwge1xuICAgICRiYXNlOiAkZ2xvYmFsLWZvbnQtc2l6ZTtcbiAgfVxuXG4gIC8vIElmIHRoZSBiYXNlIGZvbnQgc2l6ZSBpcyBhICUsIHRoZW4gbXVsdGlwbHkgaXQgYnkgMTZweFxuICAvLyBUaGlzIGlzIGJlY2F1c2UgMTAwJSBmb250IHNpemUgPSAxNnB4IGluIG1vc3QgYWxsIGJyb3dzZXJzXG4gIEBpZiB1bml0KCRiYXNlKSA9PSAnJScge1xuICAgICRiYXNlOiAoJGJhc2UgLyAxMDAlKSAqIDE2cHg7XG4gIH1cblxuICAvLyBVc2luZyByZW0gYXMgYmFzZSBhbGxvd3MgY29ycmVjdCBzY2FsaW5nXG4gIEBpZiB1bml0KCRiYXNlKSA9PSAncmVtJyB7XG4gICAgJGJhc2U6IHN0cmlwLXVuaXQoJGJhc2UpICogMTZweDtcbiAgfVxuXG4gIEBpZiAkY291bnQgPT0gMSB7XG4gICAgQHJldHVybiAtemYtdG8tcmVtKCR2YWx1ZXMsICRiYXNlKTtcbiAgfVxuXG4gIEBmb3IgJGkgZnJvbSAxIHRocm91Z2ggJGNvdW50IHtcbiAgICAkcmVtLXZhbHVlczogYXBwZW5kKCRyZW0tdmFsdWVzLCAtemYtdG8tcmVtKG50aCgkdmFsdWVzLCAkaSksICRiYXNlKSk7XG4gIH1cblxuICBAcmV0dXJuICRyZW0tdmFsdWVzO1xufVxuXG4vLyBDb252ZXJ0cyBhIHVuaXRsZXNzLCBwaXhlbCwgb3IgcmVtIHZhbHVlIHRvIGVtLCBmb3IgdXNlIGluIGJyZWFrcG9pbnRzLlxuQGZ1bmN0aW9uIC16Zi1icC10by1lbSgkdmFsdWUpIHtcbiAgLy8gUGl4ZWwgYW5kIHVuaXRsZXNzIHZhbHVlcyBhcmUgY29udmVydGVkIHRvIHJlbXNcbiAgQGlmIHVuaXQoJHZhbHVlKSA9PSAncHgnIG9yIHVuaXRsZXNzKCR2YWx1ZSkge1xuICAgICR2YWx1ZTogcmVtLWNhbGMoJHZhbHVlLCAkYmFzZTogMTZweCk7XG4gIH1cblxuICAvLyBUaGVuIHRoZSB2YWx1ZSBpcyBjb252ZXJ0ZWQgdG8gZW1zXG4gIEByZXR1cm4gc3RyaXAtdW5pdCgkdmFsdWUpICogMWVtO1xufVxuXG4vLy8gQ29udmVydHMgYSBwaXhlbCB2YWx1ZSB0byBtYXRjaGluZyByZW0gdmFsdWUuICpBbnkqIHZhbHVlIHBhc3NlZCwgcmVnYXJkbGVzcyBvZiB1bml0LCBpcyBhc3N1bWVkIHRvIGJlIGEgcGl4ZWwgdmFsdWUuIEJ5IGRlZmF1bHQsIHRoZSBiYXNlIHBpeGVsIHZhbHVlIHVzZWQgdG8gY2FsY3VsYXRlIHRoZSByZW0gdmFsdWUgaXMgdGFrZW4gZnJvbSB0aGUgYCRnbG9iYWwtZm9udC1zaXplYCB2YXJpYWJsZS5cbi8vLyBAYWNjZXNzIHByaXZhdGVcbi8vL1xuLy8vIEBwYXJhbSB7TnVtYmVyfSAkdmFsdWUgLSBQaXhlbCB2YWx1ZSB0byBjb252ZXJ0LlxuLy8vIEBwYXJhbSB7TnVtYmVyfSAkYmFzZSBbbnVsbF0gLSBCYXNlIGZvciBwaXhlbCBjb252ZXJzaW9uLlxuLy8vXG4vLy8gQHJldHVybnMge051bWJlcn0gQSBudW1iZXIgaW4gcmVtcywgY2FsY3VsYXRlZCBiYXNlZCBvbiB0aGUgZ2l2ZW4gdmFsdWUgYW5kIHRoZSBiYXNlIHBpeGVsIHZhbHVlLiByZW0gdmFsdWVzIGFyZSBwYXNzZWQgdGhyb3VnaCBhcyBpcy5cbkBmdW5jdGlvbiAtemYtdG8tcmVtKCR2YWx1ZSwgJGJhc2U6IG51bGwpIHtcbiAgLy8gQ2hlY2sgaWYgdGhlIHZhbHVlIGlzIGEgbnVtYmVyXG4gIEBpZiB0eXBlLW9mKCR2YWx1ZSkgIT0gJ251bWJlcicge1xuICAgIEB3YXJuIGluc3BlY3QoJHZhbHVlKSArICcgd2FzIHBhc3NlZCB0byByZW0tY2FsYygpLCB3aGljaCBpcyBub3QgYSBudW1iZXIuJztcbiAgICBAcmV0dXJuICR2YWx1ZTtcbiAgfVxuXG4gIC8vIFRyYW5zZm9ybSBlbSBpbnRvIHJlbSBpZiBzb21lb25lIGhhbmRzIG92ZXIgJ2VtJ3NcbiAgQGlmIHVuaXQoJHZhbHVlKSA9PSAnZW0nIHtcbiAgICAkdmFsdWU6IHN0cmlwLXVuaXQoJHZhbHVlKSAqIDFyZW07XG4gIH1cblxuICAvLyBDYWxjdWxhdGUgcmVtIGlmIHVuaXRzIGZvciAkdmFsdWUgaXMgbm90IHJlbSBvciBlbVxuICBAaWYgdW5pdCgkdmFsdWUpICE9ICdyZW0nIHtcbiAgICAkdmFsdWU6IHN0cmlwLXVuaXQoJHZhbHVlKSAvIHN0cmlwLXVuaXQoJGJhc2UpICogMXJlbTtcbiAgfVxuXG4gIC8vIFR1cm4gMHJlbSBpbnRvIDBcbiAgQGlmICR2YWx1ZSA9PSAwcmVtIHtcbiAgICAkdmFsdWU6IDA7XG4gIH1cblxuICBAcmV0dXJuICR2YWx1ZTtcbn1cblxuLy8vIENvbnZlcnRzIGEgcGl4ZWwsIHBlcmNlbnRhZ2UsIHJlbSBvciBlbSB2YWx1ZSB0byBhIHVuaXRsZXNzIHZhbHVlIGJhc2VkIG9uIGEgZ2l2ZW4gZm9udCBzaXplLiBJZGVhbCBmb3Igd29ya2luZyBvdXQgdW5pdGxlc3MgbGluZSBoZWlnaHRzLlxuLy8vXG4vLy8gQHBhcmFtIHtOdW1iZXJ9ICR2YWx1ZSAtIFZhbHVlIHRvIGNvbnZlcnQgdG8gYSB1bml0bGVzcyBsaW5lIGhlaWdodFxuLy8vIEBwYXJhbSB7TnVtYmVyfSAkYmFzZSAtIFRoZSBmb250IHNpemUgdG8gdXNlIHRvIHdvcmsgb3V0IHRoZSBsaW5lIGhlaWdodCAtIGRlZmF1bHRzIHRvICRnbG9iYWwtZm9udC1zaXplXG4vLy9cbi8vLyBAcmV0dXJuIHtOdW1iZXJ9IC0gVW5pdGxlc3MgbnVtYmVyXG5AZnVuY3Rpb24gdW5pdGxlc3MtY2FsYygkdmFsdWUsICRiYXNlOiBudWxsKSB7XG5cbiAgLy8gSWYgbm8gYmFzZSBpcyBkZWZpbmVkLCBkZWZlciB0byB0aGUgZ2xvYmFsIGZvbnQgc2l6ZVxuICBAaWYgJGJhc2UgPT0gbnVsbCB7XG4gICAgJGJhc2U6ICRnbG9iYWwtZm9udC1zaXplO1xuICB9XG5cbiAgLy8gRmlyc3QsIGxldHMgY29udmVydCBvdXIgJGJhc2UgdG8gcGl4ZWxzXG5cbiAgLy8gSWYgdGhlIGJhc2UgZm9udCBzaXplIGlzIGEgJSwgdGhlbiBtdWx0aXBseSBpdCBieSAxNnB4XG4gIEBpZiB1bml0KCRiYXNlKSA9PSAnJScge1xuICAgICRiYXNlOiAoJGJhc2UgLyAxMDAlKSAqIDE2cHg7XG4gIH1cblxuICBAaWYgdW5pdCgkYmFzZSkgPT0gJ3JlbScge1xuICAgICRiYXNlOiBzdHJpcC11bml0KCRiYXNlKSAqIDE2cHg7XG4gIH1cblxuICBAaWYgdW5pdCgkYmFzZSkgPT0gJ2VtJyB7XG4gICAgJGJhc2U6IHN0cmlwLXVuaXQoJGJhc2UpICogMTZweDtcbiAgfVxuXG4gIC8vIE5vdyBsZXRzIGNvbnZlcnQgb3VyIHZhbHVlIHRvIHBpeGVscyB0b29cbiAgQGlmIHVuaXQoJHZhbHVlKSA9PSAnJScge1xuICAgICR2YWx1ZTogKCR2YWx1ZSAvIDEwMCUpICogJGJhc2U7XG4gIH1cblxuICBAaWYgdW5pdCgkdmFsdWUpID09ICdyZW0nIHtcbiAgICAkdmFsdWU6IHN0cmlwLXVuaXQoJHZhbHVlKSAqICRiYXNlO1xuICB9XG5cbiAgQGlmIHVuaXQoJHZhbHVlKSA9PSAnZW0nIHtcbiAgICAkdmFsdWU6IHN0cmlwLXVuaXQoJHZhbHVlKSAqICRiYXNlO1xuICB9XG5cbiAgLy8gJ3B4J1xuICBAaWYgdW5pdCgkdmFsdWUpID09ICdweCcge1xuICAgIEByZXR1cm4gc3RyaXAtdW5pdCgkdmFsdWUpIC8gc3RyaXAtdW5pdCgkYmFzZSk7XG4gIH1cblxuICAvLyBhc3N1bWUgdGhhdCBsaW5lLWhlaWdodHMgZ3JlYXRlcm4gdGhlbiAxMCBhcmUgbWVhbnQgdG8gYmUgYWJzb2x1dGUgaW4gJ3B4J1xuICBAaWYgdW5pdGxlc3MoJHZhbHVlKSBhbmQgKCR2YWx1ZSA+IDEwKSB7XG4gICAgQHJldHVybiAkdmFsdWUgLyBzdHJpcC11bml0KCRiYXNlKTtcbiAgfVxuXG4gIEByZXR1cm4gJHZhbHVlO1xufVxuIiwiLy8gRm91bmRhdGlvbiBmb3IgU2l0ZXMgYnkgWlVSQlxuLy8gZm91bmRhdGlvbi56dXJiLmNvbVxuLy8gTGljZW5zZWQgdW5kZXIgTUlUIE9wZW4gU291cmNlXG5cbi8vLy9cbi8vLyBAZ3JvdXAgZ3JpZFxuLy8vL1xuXG4vLy8gU2V0IHRoZSBndXR0ZXJzIG9uIGEgY29sdW1uXG4vLy8gQHBhcmFtIHtOdW1iZXJ8S2V5d29yZH0gJGd1dHRlciBbYXV0b11cbi8vLyAgIFNwYWNpbmcgYmV0d2VlbiBjb2x1bW5zLCBhY2NlcHRzIG11bHRpcGxlIHZhbHVlczpcbi8vLyAgIC0gQSBzaW5nbGUgdmFsdWUgd2lsbCBtYWtlIHRoZSBndXR0ZXIgdGhhdCBleGFjdCBzaXplLlxuLy8vICAgLSBBIGJyZWFrcG9pbnQgbmFtZSB3aWxsIG1ha2UgdGhlIGd1dHRlciB0aGUgY29ycmVzcG9uZGluZyBzaXplIGluIHRoZSAkZ3V0dGVycyBtYXAuXG4vLy8gICAtIFwiYXV0b1wiIHdpbGwgbWFrZSB0aGUgZ3V0dGVyIHJlc3BvbnNpdmUsIHVzaW5nIHRoZSAkZ3V0dGVycyBtYXAgdmFsdWVzLlxuLy8vIEBwYXJhbSB7TnVtYmVyfE1hcH0gJGd1dHRlcnMgWyRncmlkLWNvbHVtbi1ndXR0ZXJdIC0gR3V0dGVyIG1hcCBvciBzaW5nbGUgdmFsdWUgdG8gdXNlLiBSZXNwb25zaXZlIGd1dHRlciBzZXR0aW5ncyBieSBkZWZhdWx0LlxuQG1peGluIGdyaWQtY29sdW1uLWd1dHRlcihcbiAgJGd1dHRlcjogYXV0byxcbiAgJGd1dHRlcnM6ICRncmlkLWNvbHVtbi1ndXR0ZXJcbikge1xuICBAaW5jbHVkZSAtemYtYnJlYWtwb2ludC12YWx1ZSgkZ3V0dGVyLCAkZ3V0dGVycykge1xuICAgICRwYWRkaW5nOiByZW0tY2FsYygkLXpmLWJwLXZhbHVlKSAvIDI7XG5cbiAgICBwYWRkaW5nLXJpZ2h0OiAkcGFkZGluZztcbiAgICBwYWRkaW5nLWxlZnQ6ICRwYWRkaW5nO1xuICB9XG59XG5cbi8vLyBDb2xsYXBzZSB0aGUgZ3V0dGVycyBvbiBhIGNvbHVtbiBieSByZW1vdmluZyB0aGUgcGFkZGluZy4gKipOb3RlOioqIG9ubHkgdXNlIHRoaXMgbWl4aW4gd2l0aGluIGEgYnJlYWtwb2ludC4gVG8gY29sbGFwc2UgYSBjb2x1bW4ncyBndXR0ZXJzIG9uIGFsbCBzY3JlZW4gc2l6ZXMsIHVzZSB0aGUgYCRndXR0ZXJgIHBhcmFtZXRlciBvZiB0aGUgYGdyaWQtY29sdW1uKClgIG1peGluIGluc3RlYWQuXG5AbWl4aW4gZ3JpZC1jb2x1bW4tY29sbGFwc2Uge1xuICBAaW5jbHVkZSBncmlkLWNvbHVtbi1ndXR0ZXIoMCk7XG59XG5cbi8vLyBVbi1jb2xsYXBzZSB0aGUgZ3V0dGVycyBvbiBhIGNvbHVtbiBieSByZS1hZGRpbmcgdGhlIHBhZGRpbmcuXG4vLy9cbi8vLyBAcGFyYW0ge051bWJlcn0gJGd1dHRlciBbJGdyaWQtY29sdW1uLWd1dHRlcl0gLSBTcGFjaW5nIGJldHdlZW4gY29sdW1ucy5cbkBtaXhpbiBncmlkLWNvbHVtbi11bmNvbGxhcHNlKCRndXR0ZXI6ICRncmlkLWNvbHVtbi1ndXR0ZXIpIHtcbiAgQHdhcm4gJ1RoaXMgbWl4aW4gaXMgYmVpbmcgcmVwbGFjZWQgYnkgZ3JpZC1jb2x1bW4tZ3V0dGVyKCkuIGdyaWQtY29sdW1uLXVuY29sbGFwc2UoKSB3aWxsIGJlIHJlbW92ZWQgaW4gRm91bmRhdGlvbiA2LjQuJztcbiAgQGluY2x1ZGUgZ3JpZC1jb2x1bW4tZ3V0dGVyKCRndXR0ZXJzOiAkZ3V0dGVyKTtcbn1cblxuLy8vIFNob3J0aGFuZCBmb3IgYGdyaWQtY29sdW1uLWd1dHRlcigpYC5cbi8vLyBAYWxpYXMgZ3JpZC1jb2x1bW4tZ3V0dGVyXG5AbWl4aW4gZ3JpZC1jb2wtZ3V0dGVyKFxuICAkZ3V0dGVyOiBhdXRvLFxuICAkZ3V0dGVyczogJGdyaWQtY29sdW1uLWd1dHRlclxuKSB7XG4gIEBpbmNsdWRlIGdyaWQtY29sdW1uLWd1dHRlcigkZ3V0dGVyLCAkZ3V0dGVycyk7XG59XG5cbi8vLyBTaG9ydGhhbmQgZm9yIGBncmlkLWNvbHVtbi1jb2xsYXBzZSgpYC5cbi8vLyBAYWxpYXMgZ3JpZC1jb2x1bW4tY29sbGFwc2VcbkBtaXhpbiBncmlkLWNvbC1jb2xsYXBzZSB7XG4gIEBpbmNsdWRlIGdyaWQtY29sdW1uLWNvbGxhcHNlO1xufVxuXG4vLy8gU2hvcnRoYW5kIGZvciBgZ3JpZC1jb2x1bW4tdW5jb2xsYXBzZSgpYC5cbi8vLyBAYWxpYXMgZ3JpZC1jb2x1bW4tdW5jb2xsYXBzZVxuQG1peGluIGdyaWQtY29sLXVuY29sbGFwc2UoJGd1dHRlcjogJGdyaWQtY29sdW1uLWd1dHRlcikge1xuICBAd2FybiAnVGhpcyBtaXhpbiBpcyBiZWluZyByZXBsYWNlZCBieSBncmlkLWNvbC1ndXR0ZXIoKS4gZ3JpZC1jb2wtdW5jb2xsYXBzZSgpIHdpbGwgYmUgcmVtb3ZlZCBpbiBGb3VuZGF0aW9uIDYuNC4nO1xuICBAaW5jbHVkZSBncmlkLWNvbHVtbi11bmNvbGxhcHNlKCRndXR0ZXIpO1xufVxuXG4vLy8gU2V0cyBib3R0b20gbWFyZ2luIG9uIGdyaWQgY29sdW1ucyB0byBtYXRjaCBndXR0ZXJzXG4vLy8gQHBhcmFtIHtOdW1iZXJ8S2V5d29yZH0gJG1hcmdpbiBbYXV0b11cbi8vLyAgIFRoZSBib3R0b20gbWFyZ2luIG9uIGdyaWQgY29sdW1ucywgYWNjZXB0cyBtdWx0aXBsZSB2YWx1ZXM6XG4vLy8gICAtIEEgc2luZ2xlIHZhbHVlIHdpbGwgbWFrZSB0aGUgbWFyZ2luIHRoYXQgZXhhY3Qgc2l6ZS5cbi8vLyAgIC0gQSBicmVha3BvaW50IG5hbWUgd2lsbCBtYWtlIHRoZSBtYXJnaW4gdGhlIGNvcnJlc3BvbmRpbmcgc2l6ZSBpbiB0aGUgJG1hcmdpbnMgbWFwLlxuLy8vICAgLSBcImF1dG9cIiB3aWxsIG1ha2UgdGhlIG1hcmdpbiByZXNwb25zaXZlLCB1c2luZyB0aGUgJG1hcmdpbnMgbWFwIHZhbHVlcy5cbi8vLyBAcGFyYW0ge051bWJlcnxNYXB9ICRtYXJnaW5zIFskZ3JpZC1jb2x1bW4tZ3V0dGVyXSAtIE1hcCBvciBzaW5nbGUgdmFsdWUgdG8gdXNlLiBSZXNwb25zaXZlIGd1dHRlciBzZXR0aW5ncyBieSBkZWZhdWx0LlxuQG1peGluIGdyaWQtY29sdW1uLW1hcmdpbiAoXG4gICRtYXJnaW46IGF1dG8sXG4gICRtYXJnaW5zOiAkZ3JpZC1jb2x1bW4tZ3V0dGVyXG4pIHtcbiAgQGluY2x1ZGUgLXpmLWJyZWFrcG9pbnQtdmFsdWUoJG1hcmdpbiwgJG1hcmdpbnMpIHtcbiAgICAkbWFyZ2luLWJvdHRvbTogcmVtLWNhbGMoJC16Zi1icC12YWx1ZSk7XG4gICAgbWFyZ2luLWJvdHRvbTogJG1hcmdpbi1ib3R0b207XG5cbiAgICA+IDpsYXN0LWNoaWxkIHtcbiAgICAgIG1hcmdpbi1ib3R0b206IDA7XG4gICAgfVxuICB9XG59XG4iLCIvLyBGb3VuZGF0aW9uIGZvciBTaXRlcyBieSBaVVJCXG4vLyBmb3VuZGF0aW9uLnp1cmIuY29tXG4vLyBMaWNlbnNlZCB1bmRlciBNSVQgT3BlbiBTb3VyY2VcblxuLy8vL1xuLy8vIEBncm91cCBncmlkXG4vLy8vXG5cbi8vLyBTZXQgdGhlIHdpZHRoIG9mIGEgZ3JpZCBjb2x1bW4uXG4vLy9cbi8vLyBAcGFyYW0ge051bWJlcnxMaXN0fSAkd2lkdGggWyRncmlkLWNvbHVtbi1jb3VudF0gLSBXaWR0aCB0byBtYWtlIHRoZSBjb2x1bW4uIFlvdSBjYW4gcGFzcyBpbiBhbnkgdmFsdWUgYWNjZXB0ZWQgYnkgdGhlIGBncmlkLWNvbHVtbigpYCBmdW5jdGlvbiwgc3VjaCBhcyBgNmAsIGA1MCVgLCBvciBgMSBvZiAyYC5cbkBtaXhpbiBncmlkLWNvbHVtbi1zaXplKFxuICAkY29sdW1uczogJGdyaWQtY29sdW1uLWNvdW50XG4pIHtcbiAgd2lkdGg6IGdyaWQtY29sdW1uKCRjb2x1bW5zKTtcbn1cblxuLy8vIFNob3J0aGFuZCBmb3IgYGdyaWQtY29sdW1uLXNpemUoKWAuXG4vLy8gQGFsaWFzIGdyaWQtY29sdW1uLXNpemVcbkBtaXhpbiBncmlkLWNvbC1zaXplKFxuICAkY29sdW1uczogJGdyaWQtY29sdW1uLWNvdW50XG4pIHtcbiAgQGluY2x1ZGUgZ3JpZC1jb2x1bW4tc2l6ZSgkY29sdW1ucyk7XG59XG4iLCIvLyBGb3VuZGF0aW9uIGZvciBTaXRlcyBieSBaVVJCXG4vLyBmb3VuZGF0aW9uLnp1cmIuY29tXG4vLyBMaWNlbnNlZCB1bmRlciBNSVQgT3BlbiBTb3VyY2VcblxuLy8vL1xuLy8vIEBncm91cCBncmlkXG4vLy8vXG5cbi8vLyBDYWxjdWxhdGVzIHRoZSB3aWR0aCBvZiBhIGNvbHVtbiBiYXNlZCBvbiBhIG51bWJlciBvZiBmYWN0b3JzLlxuLy8vXG4vLy8gQHBhcmFtIHtOdW1iZXJ8TGlzdH0gJGNvbHVtbnNcbi8vLyAgIFdpZHRoIG9mIHRoZSBjb2x1bW4uIEFjY2VwdHMgbXVsdGlwbGUgdmFsdWVzOlxuLy8vICAgLSBBIHBlcmNlbnRhZ2UgdmFsdWUgd2lsbCBtYWtlIHRoZSBjb2x1bW4gdGhhdCBleGFjdCBzaXplLlxuLy8vICAgLSBBIHNpbmdsZSBkaWdpdCB3aWxsIG1ha2UgdGhlIGNvbHVtbiBzcGFuIHRoYXQgbnVtYmVyIG9mIGNvbHVtbnMgd2lkZSwgdGFraW5nIGludG8gYWNjb3VudCB0aGUgY29sdW1uIGNvdW50IG9mIHRoZSBwYXJlbnQgcm93LlxuLy8vICAgLSBBIGxpc3Qgb2YgdGhlIGZvcm1hdCBcInggb2YgeVwiICh3aXRob3V0IHF1b3Rlcykgd2lsbCBtYWtlIGEgY29sdW1uIHRoYXQgaXMgKngqIGNvbHVtbnMgd2lkZSwgYXNzdW1pbmcgKnkqIHRvdGFsIGNvbHVtbnMgZm9yIHRoZSBwYXJlbnQuXG4vLy9cbi8vLyBAcmV0dXJucyB7TnVtYmVyfSBBIGNhbGN1bGF0ZWQgcGVyY2VudGFnZSB2YWx1ZS5cbkBmdW5jdGlvbiBncmlkLWNvbHVtbigkY29sdW1ucykge1xuICAkd2lkdGg6IDAlO1xuXG4gIC8vIFBhcnNpbmcgcGVyY2VudHMsIGRlY2ltYWxzLCBhbmQgY29sdW1uIGNvdW50c1xuICBAaWYgdHlwZS1vZigkY29sdW1ucykgPT0gJ251bWJlcicge1xuICAgIEBpZiB1bml0KCRjb2x1bW5zKSA9PSAnJScge1xuICAgICAgJHdpZHRoOiAkY29sdW1ucztcbiAgICB9XG4gICAgQGVsc2UgaWYgJGNvbHVtbnMgPCAxIHtcbiAgICAgICR3aWR0aDogcGVyY2VudGFnZSgkY29sdW1ucyk7XG4gICAgfVxuICAgIEBlbHNlIHtcbiAgICAgICR3aWR0aDogcGVyY2VudGFnZSgkY29sdW1ucyAvICRncmlkLWNvbHVtbi1jb3VudCk7XG4gICAgfVxuICB9XG5cbiAgLy8gUGFyc2luZyBcIm4gb2YgblwiIGV4cHJlc3Npb25zXG4gIEBlbHNlIGlmIHR5cGUtb2YoJGNvbHVtbnMpID09ICdsaXN0JyB7XG4gICAgQGlmIGxlbmd0aCgkY29sdW1ucykgIT0gMyB7XG4gICAgICBAZXJyb3IgJ1dyb25nIHN5bnRheCBmb3IgZ3JpZC1jb2x1bW4oKS4gVXNlIHRoZSBmb3JtYXQgXCJuIG9mIG5cIi4nO1xuICAgIH1cbiAgICBAZWxzZSB7XG4gICAgICAkd2lkdGg6IHBlcmNlbnRhZ2UobnRoKCRjb2x1bW5zLCAxKSAvIG50aCgkY29sdW1ucywgMykpO1xuICAgIH1cbiAgfVxuXG4gIC8vIEFueXRoaW5nIGVsc2UgaXMgaW5jb3JyZWN0XG4gIEBlbHNlIHtcbiAgICBAZXJyb3IgJ1dyb25nIHN5bnRheCBmb3IgZ3JpZC1jb2x1bW4oKS4gVXNlIGEgbnVtYmVyLCBkZWNpbWFsLCBwZXJjZW50YWdlLCBvciBcIm4gb2YgblwiLic7XG4gIH1cblxuICBAcmV0dXJuICR3aWR0aDtcbn1cblxuLy8vIENyZWF0ZXMgYSBncmlkIGNvbHVtbi5cbi8vL1xuLy8vIEBwYXJhbSB7TWl4ZWR9ICRjb2x1bW5zIFskZ3JpZC1jb2x1bW4tY291bnRdIC0gV2lkdGggb2YgdGhlIGNvbHVtbi4gUmVmZXIgdG8gdGhlIGBncmlkLWNvbHVtbigpYCBmdW5jdGlvbiB0byBzZWUgcG9zc2libGUgdmFsdWVzLlxuLy8vIEBwYXJhbSB7TWl4ZWR9ICRndXR0ZXJzIFskZ3JpZC1jb2x1bW4tZ3V0dGVyXSAtIFNwYWNpbmcgYmV0d2VlbiBjb2x1bW5zLiBSZWZlciB0byB0aGUgYGdyaWQtY29sdW1uLWd1dHRlcigpYCBmdW5jdGlvbiB0byBzZWUgcG9zc2libGUgdmFsdWVzLlxuQG1peGluIGdyaWQtY29sdW1uKFxuICAkY29sdW1uczogJGdyaWQtY29sdW1uLWNvdW50LFxuICAkZ3V0dGVyczogJGdyaWQtY29sdW1uLWd1dHRlclxuKSB7XG4gIEBpbmNsdWRlIGdyaWQtY29sdW1uLXNpemUoJGNvbHVtbnMpO1xuICBmbG9hdDogJGdsb2JhbC1sZWZ0O1xuXG4gIC8vIEd1dHRlcnNcbiAgQGluY2x1ZGUgZ3JpZC1jb2x1bW4tZ3V0dGVyKCRndXR0ZXJzOiAkZ3V0dGVycyk7XG5cbiAgLy8gTGFzdCBjb2x1bW4gYWxpZ25tZW50XG4gIEBpZiAkZ3JpZC1jb2x1bW4tYWxpZ24tZWRnZSB7XG4gICAgJjpsYXN0LWNoaWxkOm5vdCg6Zmlyc3QtY2hpbGQpIHtcbiAgICAgIGZsb2F0OiAkZ2xvYmFsLXJpZ2h0O1xuICAgIH1cbiAgfVxufVxuXG4vLy8gQ3JlYXRlcyBhIGdyaWQgY29sdW1uIHJvdy4gVGhpcyBpcyB0aGUgZXF1aXZhbGVudCBvZiBhZGRpbmcgYC5yb3dgIGFuZCBgLmNvbHVtbmAgdG8gdGhlIHNhbWUgZWxlbWVudC5cbi8vL1xuLy8vIEBwYXJhbSB7TWl4ZWR9ICRndXR0ZXJzIFskZ3JpZC1jb2x1bW4tZ3V0dGVyXSAtIFdpZHRoIG9mIHRoZSBndXR0ZXJzIG9uIGVpdGhlciBzaWRlIG9mIHRoZSBjb2x1bW4gcm93LiBSZWZlciB0byB0aGUgYGdyaWQtY29sdW1uLWd1dHRlcigpYCBmdW5jdGlvbiB0byBzZWUgcG9zc2libGUgdmFsdWVzLlxuQG1peGluIGdyaWQtY29sdW1uLXJvdyhcbiAgJGd1dHRlcnM6ICRncmlkLWNvbHVtbi1ndXR0ZXJcbikge1xuICBAaW5jbHVkZSBncmlkLXJvdztcbiAgQGluY2x1ZGUgZ3JpZC1jb2x1bW4oJGd1dHRlcnM6ICRndXR0ZXJzKTtcblxuICAmLFxuICAmOmxhc3QtY2hpbGQge1xuICAgIGZsb2F0OiBub25lO1xuICB9XG59XG5cbi8vLyBTaG9ydGhhbmQgZm9yIGBncmlkLWNvbHVtbigpYC5cbi8vLyBAYWxpYXMgZ3JpZC1jb2x1bW5cbkBmdW5jdGlvbiBncmlkLWNvbChcbiAgJGNvbHVtbnM6ICRncmlkLWNvbHVtbi1jb3VudFxuKSB7XG4gIEByZXR1cm4gZ3JpZC1jb2x1bW4oJGNvbHVtbnMpO1xufVxuXG4vLy8gU2hvcnRoYW5kIGZvciBgZ3JpZC1jb2x1bW4oKWAuXG4vLy8gQGFsaWFzIGdyaWQtY29sdW1uXG5AbWl4aW4gZ3JpZC1jb2woXG4gICRjb2x1bW5zOiAkZ3JpZC1jb2x1bW4tY291bnQsXG4gICRndXR0ZXJzOiAkZ3JpZC1jb2x1bW4tZ3V0dGVyXG4pIHtcbiAgQGluY2x1ZGUgZ3JpZC1jb2x1bW4oJGNvbHVtbnMsICRndXR0ZXJzKTtcbn1cblxuLy8vIFNob3J0aGFuZCBmb3IgYGdyaWQtY29sdW1uLXJvdygpYC5cbi8vLyBAYWxpYXMgZ3JpZC1jb2x1bW4tcm93XG5AbWl4aW4gZ3JpZC1jb2wtcm93KFxuICAkZ3V0dGVyczogJGdyaWQtY29sdW1uLWd1dHRlclxuKSB7XG4gIEBpbmNsdWRlIGdyaWQtY29sdW1uLXJvdygkZ3V0dGVycyk7XG59XG4iLCIvLyBGb3VuZGF0aW9uIGZvciBTaXRlcyBieSBaVVJCXG4vLyBmb3VuZGF0aW9uLnp1cmIuY29tXG4vLyBMaWNlbnNlZCB1bmRlciBNSVQgT3BlbiBTb3VyY2VcblxuLy8vL1xuLy8vIEBncm91cCBncmlkXG4vLy8vXG5cbi8vLyBSZXBvc2l0aW9uIGEgY29sdW1uLlxuLy8vXG4vLy8gQHBhcmFtIHtOdW1iZXJ8S2V5d29yZH0gJHBvc2l0aW9uIC0gRGlyZWN0aW9uIGFuZCBhbW91bnQgdG8gbW92ZS4gVGhlIGNvbHVtbiB3aWxsIG1vdmUgZXF1YWwgdG8gdGhlIHdpZHRoIG9mIHRoZSBjb2x1bW4gY291bnQgc3BlY2lmaWVkLiBBIHBvc2l0aXZlIG51bWJlciB3aWxsIHB1c2ggdGhlIGNvbHVtbiB0byB0aGUgcmlnaHQsIHdoaWxlIGEgbmVnYXRpdmUgbnVtYmVyIHdpbGwgcHVsbCBpdCB0byB0aGUgbGVmdC4gU2V0IHRvIGNlbnRlciB0byBjZW50ZXIgdGhlIGNvbHVtbi5cbkBtaXhpbiBncmlkLWNvbHVtbi1wb3NpdGlvbigkcG9zaXRpb24pIHtcbiAgQGlmIHR5cGUtb2YoJHBvc2l0aW9uKSA9PSAnbnVtYmVyJyB7XG4gICAgJG9mZnNldDogcGVyY2VudGFnZSgkcG9zaXRpb24gLyAkZ3JpZC1jb2x1bW4tY291bnQpO1xuXG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICN7JGdsb2JhbC1sZWZ0fTogJG9mZnNldDtcbiAgfVxuICBAZWxzZSBpZiAkcG9zaXRpb24gPT0gY2VudGVyIHtcbiAgICAmLCAmOmxhc3QtY2hpbGQ6bm90KDpmaXJzdC1jaGlsZCkge1xuICAgICAgZmxvYXQ6IG5vbmU7XG4gICAgICBjbGVhcjogYm90aDtcbiAgICB9XG4gICAgbWFyZ2luLXJpZ2h0OiBhdXRvO1xuICAgIG1hcmdpbi1sZWZ0OiBhdXRvO1xuICB9XG4gIEBlbHNlIHtcbiAgICBAd2FybiAnV3Jvbmcgc3ludGF4IGZvciBncmlkLWNvbHVtbi1wb3NpdGlvbigpLiBFbnRlciBhIHBvc2l0aXZlIG9yIG5lZ2F0aXZlIG51bWJlciwgb3IgY2VudGVyLic7XG4gIH1cbn1cblxuLy8vIFJlc2V0IGEgcG9zaXRpb24gZGVmaW5pdGlvbi5cbkBtaXhpbiBncmlkLWNvbHVtbi11bnBvc2l0aW9uIHtcbiAgcG9zaXRpb246IHN0YXRpYztcbiAgZmxvYXQ6IGxlZnQ7XG4gIG1hcmdpbi1yaWdodDogMDtcbiAgbWFyZ2luLWxlZnQ6IDA7XG59XG5cbi8vLyBPZmZzZXRzIGEgY29sdW1uIHRvIHRoZSByaWdodCBieSBgJG5gIGNvbHVtbnMuXG4vLy8gQHBhcmFtIHtOdW1iZXJ8TGlzdH0gJG4gLSBXaWR0aCB0byBvZmZzZXQgYnkuIFlvdSBjYW4gcGFzcyBpbiBhbnkgdmFsdWUgYWNjZXB0ZWQgYnkgdGhlIGBncmlkLWNvbHVtbigpYCBtaXhpbiwgc3VjaCBhcyBgNmAsIGA1MCVgLCBvciBgMSBvZiAyYC5cbkBtaXhpbiBncmlkLWNvbHVtbi1vZmZzZXQoJG4pIHtcbiAgbWFyZ2luLSN7JGdsb2JhbC1sZWZ0fTogZ3JpZC1jb2x1bW4oJG4pO1xufVxuXG4vLy8gRGlzYWJsZSB0aGUgZGVmYXVsdCBiZWhhdmlvciBvZiB0aGUgbGFzdCBjb2x1bW4gaW4gYSByb3cgYWxpZ25pbmcgdG8gdGhlIG9wcG9zaXRlIGVkZ2UuXG5AbWl4aW4gZ3JpZC1jb2x1bW4tZW5kIHtcbiAgLy8gVGhpcyBleHRyYSBzcGVjaWZpY2l0eSBpcyByZXF1aXJlZCBmb3IgdGhlIHByb3BlcnR5IHRvIGJlIGFwcGxpZWRcbiAgJjpsYXN0LWNoaWxkOmxhc3QtY2hpbGQge1xuICAgIGZsb2F0OiAkZ2xvYmFsLWxlZnQ7XG4gIH1cbn1cblxuLy8vIFNob3J0aGFuZCBmb3IgYGdyaWQtY29sdW1uLXBvc2l0aW9uKClgLlxuLy8vIEBhbGlhcyBncmlkLWNvbHVtbi1wb3NpdGlvblxuQG1peGluIGdyaWQtY29sLXBvcygkcG9zaXRpb24pIHtcbiAgQGluY2x1ZGUgZ3JpZC1jb2x1bW4tcG9zaXRpb24oJHBvc2l0aW9uKTtcbn1cblxuLy8vIFNob3J0aGFuZCBmb3IgYGdyaWQtY29sdW1uLXVucG9zaXRpb24oKWAuXG4vLy8gQGFsaWFzIGdyaWQtY29sdW1uLXVucG9zaXRpb25cbkBtaXhpbiBncmlkLWNvbC11bnBvcyB7XG4gIEBpbmNsdWRlIGdyaWQtY29sdW1uLXVucG9zaXRpb247XG59XG5cbi8vLyBTaG9ydGhhbmQgZm9yIGBncmlkLWNvbHVtbi1vZmZzZXQoKWAuXG4vLy8gQGFsaWFzIGdyaWQtY29sdW1uLW9mZnNldFxuQG1peGluIGdyaWQtY29sLW9mZigkbikge1xuICBAaW5jbHVkZSBncmlkLWNvbHVtbi1vZmZzZXQoJG4pO1xufVxuXG4vLy8gU2hvcnRoYW5kIGZvciBgZ3JpZC1jb2x1bW4tZW5kKClgLlxuLy8vIEBhbGlhcyBncmlkLWNvbHVtbi1lbmRcbkBtaXhpbiBncmlkLWNvbC1lbmQge1xuICBAaW5jbHVkZSBncmlkLWNvbHVtbi1lbmQ7XG59XG4iLCIvLyBGb3VuZGF0aW9uIGZvciBTaXRlcyBieSBaVVJCXG4vLyBmb3VuZGF0aW9uLnp1cmIuY29tXG4vLyBMaWNlbnNlZCB1bmRlciBNSVQgT3BlbiBTb3VyY2VcblxuLy8vL1xuLy8vIEBncm91cCBncmlkXG4vLy8vXG5cbi8vLyBTaXplcyBjaGlsZCBlbGVtZW50cyBzbyB0aGF0IGAkbmAgbnVtYmVyIG9mIGl0ZW1zIGFwcGVhciBvbiBlYWNoIHJvdy5cbi8vL1xuLy8vIEBwYXJhbSB7TnVtYmVyfSAkbiAtIE51bWJlciBvZiBlbGVtZW50cyB0byBkaXNwbGF5IHBlciByb3cuXG4vLy8gQHBhcmFtIHtTdHJpbmd9ICRzZWxlY3RvciBbJy5jb2x1bW4nXSAtIFNlbGVjdG9yKHMpIHRvIHVzZSBmb3IgY2hpbGQgZWxlbWVudHMuXG4vLy8gQHBhcmFtIHtOdW1iZXJ8TGlzdH0gJGd1dHRlclxuLy8vICAgVGhlIGd1dHRlciB0byBhcHBseSB0byBjaGlsZCBlbGVtZW50cy4gQWNjZXB0cyBtdWx0aXBsZSB2YWx1ZXM6XG4vLy8gICAtICRncmlkLWNvbHVtbi1ndXR0ZXIgd2lsbCB1c2UgdGhlIHZhbHVlcyBpbiB0aGUgJGdyaWQtY29sdW1uLWd1dHRlciBtYXAsIGluY2x1ZGluZyBicmVha3BvaW50IHNpemVzLlxuLy8vICAgLSBBIGZpeGVkIG51bWVyaWMgdmFsdWUgd2lsbCBhcHBseSB0aGlzIGd1dHRlciB0byBhbGwgYnJlYWtwb2ludHMuXG5AbWl4aW4gZ3JpZC1sYXlvdXQoXG4gICRuLFxuICAkc2VsZWN0b3I6ICcuY29sdW1uJyxcbiAgJGd1dHRlcjogbnVsbFxuKSB7XG4gICYgPiAjeyRzZWxlY3Rvcn0ge1xuICAgIGZsb2F0OiAkZ2xvYmFsLWxlZnQ7XG4gICAgd2lkdGg6IHBlcmNlbnRhZ2UoMS8kbik7XG5cbiAgICAvLyBJZiBhICRndXR0ZXIgdmFsdWUgaXMgcGFzc2VkXG4gICAgQGlmKCRndXR0ZXIpIHtcbiAgICAgIC8vIEd1dHRlcnNcbiAgICAgIEBpZiB0eXBlLW9mKCRndXR0ZXIpID09ICdtYXAnIHtcbiAgICAgICAgQGVhY2ggJGJyZWFrcG9pbnQsICR2YWx1ZSBpbiAkZ3V0dGVyIHtcbiAgICAgICAgICAkcGFkZGluZzogcmVtLWNhbGMoJHZhbHVlKSAvIDI7XG5cbiAgICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KCRicmVha3BvaW50KSB7XG4gICAgICAgICAgICBwYWRkaW5nLXJpZ2h0OiAkcGFkZGluZztcbiAgICAgICAgICAgIHBhZGRpbmctbGVmdDogJHBhZGRpbmc7XG4gICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICB9XG4gICAgICBAZWxzZSBpZiB0eXBlLW9mKCRndXR0ZXIpID09ICdudW1iZXInIGFuZCBzdHJpcC11bml0KCRndXR0ZXIpID4gMCB7XG4gICAgICAgICRwYWRkaW5nOiByZW0tY2FsYygkZ3V0dGVyKSAvIDI7XG4gICAgICAgIHBhZGRpbmctcmlnaHQ6ICRwYWRkaW5nO1xuICAgICAgICBwYWRkaW5nLWxlZnQ6ICRwYWRkaW5nO1xuICAgICAgfVxuICAgIH1cblxuICAgICY6bnRoLW9mLXR5cGUoMW4pIHtcbiAgICAgIGNsZWFyOiBub25lO1xuICAgIH1cblxuICAgICY6bnRoLW9mLXR5cGUoI3skbn1uKzEpIHtcbiAgICAgIGNsZWFyOiBib3RoO1xuICAgIH1cblxuICAgICY6bGFzdC1jaGlsZCB7XG4gICAgICBmbG9hdDogJGdsb2JhbC1sZWZ0O1xuICAgIH1cbiAgfVxufVxuXG4vLy8gQWRkcyBleHRyYSBDU1MgdG8gYmxvY2sgZ3JpZCBjaGlsZHJlbiBzbyB0aGUgbGFzdCBpdGVtcyBpbiB0aGUgcm93IGNlbnRlciBhdXRvbWF0aWNhbGx5LiBBcHBseSB0aGlzIHRvIHRoZSBjb2x1bW5zLCBub3QgdGhlIHJvdy5cbi8vL1xuLy8vIEBwYXJhbSB7TnVtYmVyfSAkbiAtIE51bWJlciBvZiBpdGVtcyB0aGF0IGFwcGVhciBpbiBlYWNoIHJvdy5cbkBtaXhpbiBncmlkLWxheW91dC1jZW50ZXItbGFzdCgkbikge1xuICBAZm9yICRpIGZyb20gMSB0byAkbiB7XG4gICAgQGlmICRpID09IDEge1xuICAgICAgJjpudGgtY2hpbGQoI3skbn1uKzEpOmxhc3QtY2hpbGQge1xuICAgICAgICBtYXJnaW4tbGVmdDogKDEwMCAtIDEwMC8kbiAqICRpKSAvIDIgKiAxJTtcbiAgICAgIH1cbiAgICB9XG4gICAgQGVsc2Uge1xuICAgICAgJjpudGgtY2hpbGQoI3skbn1uKzEpOm50aC1sYXN0LWNoaWxkKCN7JGl9KSB7XG4gICAgICAgIG1hcmdpbi1sZWZ0OiAoMTAwIC0gMTAwLyRuICogJGkpIC8gMiAqIDElO1xuICAgICAgfVxuICAgIH1cbiAgfVxufVxuIiwiLy8gRm91bmRhdGlvbiBmb3IgU2l0ZXMgYnkgWlVSQlxuLy8gZm91bmRhdGlvbi56dXJiLmNvbVxuLy8gTGljZW5zZWQgdW5kZXIgTUlUIE9wZW4gU291cmNlXG5cbi8vLy9cbi8vLyBAZ3JvdXAgdHlwb2dyYXBoeS1iYXNlXG4vLy8vXG5cbi8vIEJhc2UgVHlwb2dyYXBoeVxuLy8gLSAtIC0gLSAtIC0gLSAtIC0gLSAtIC0gLSAtIC1cbi8vIFRoZXNlIGFyZSBzdHlsZXMgYXBwbGllZCB0byBiYXNpYyBIVE1MIHRhZ3MsIGluY2x1ZGluZzpcbi8vICAgLSBQYXJhZ3JhcGhzIDxwPlxuLy8gICAtIEJvbGQvaXRhbGljcyA8Yj4gPHN0cm9uZz4gPGk+IDxlbT5cbi8vICAgLSBTbWFsbCB0ZXh0IDxzbWFsbD5cbi8vICAgLSBIZWFkaW5ncyA8aDE+LTxoNj5cbi8vICAgLSBBbmNob3JzIDxhPlxuLy8gICAtIERpdmlkZXJzIDxocj5cbi8vICAgLSBMaXN0cyA8dWw+IDxvbD4gPGRsPlxuLy8gICAtIEJsb2NrcXVvdGVzIDxibG9ja3F1b3RlPlxuLy8gICAtIENvZGUgYmxvY2tzIDxjb2RlPlxuLy8gICAtIEFiYnJldmlhdGlvbnMgPGFiYnI+XG4vLyAgIC0gQ2l0YXRpb25zIDxjaXRlPlxuLy8gICAtIEtleXN0cm9rZXMgPGtiZD5cblxuLy8vIEZvbnQgZmFtaWx5IGZvciBoZWFkZXIgZWxlbWVudHMuXG4vLy8gQHR5cGUgU3RyaW5nIHwgTGlzdFxuJGhlYWRlci1mb250LWZhbWlseTogJGJvZHktZm9udC1mYW1pbHkgIWRlZmF1bHQ7XG5cbi8vLyBGb250IHdlaWdodCBvZiBoZWFkZXJzLlxuLy8vIEB0eXBlIFN0cmluZ1xuJGhlYWRlci1mb250LXdlaWdodDogJGdsb2JhbC13ZWlnaHQtbm9ybWFsICFkZWZhdWx0O1xuXG4vLy8gRm9udCBzdHlsZSAoZS5nLiBpdGFsaWNpemVkKSBvZiBoZWFkZXJzLlxuLy8vIEB0eXBlIFN0cmluZ1xuJGhlYWRlci1mb250LXN0eWxlOiBub3JtYWwgIWRlZmF1bHQ7XG5cbi8vLyBGb250IHN0YWNrIHVzZWQgZm9yIGVsZW1lbnRzIHRoYXQgdXNlIG1vbm9zcGFjZWQgdHlwZSwgc3VjaCBhcyBjb2RlIHNhbXBsZXNcbi8vLyBAdHlwZSBTdHJpbmcgfCBMaXN0XG4kZm9udC1mYW1pbHktbW9ub3NwYWNlOiBDb25zb2xhcywgJ0xpYmVyYXRpb24gTW9ubycsIENvdXJpZXIsIG1vbm9zcGFjZSAhZGVmYXVsdDtcblxuLy8vIENvbG9yIG9mIGhlYWRlcnMuXG4vLy8gQHR5cGUgQ29sb3JcbiRoZWFkZXItY29sb3I6IGluaGVyaXQgIWRlZmF1bHQ7XG5cbi8vLyBMaW5lIGhlaWdodCBvZiBoZWFkZXJzLlxuLy8vIEB0eXBlIE51bWJlclxuJGhlYWRlci1saW5laGVpZ2h0OiAxLjQgIWRlZmF1bHQ7XG5cbi8vLyBCb3R0b20gbWFyZ2luIG9mIGhlYWRlcnMuXG4vLy8gQHR5cGUgTnVtYmVyXG4kaGVhZGVyLW1hcmdpbi1ib3R0b206IDAuNXJlbSAhZGVmYXVsdDtcblxuLy8vIFN0eWxlcyBmb3IgaGVhZGluZ3MgYXQgdmFyaW91cyBzY3JlZW4gc2l6ZXMuIEVhY2gga2V5IGlzIGEgYnJlYWtwb2ludCwgYW5kIGVhY2ggdmFsdWUgaXMgYSBtYXAgb2YgaGVhZGluZyBzdHlsZXMuXG4vLy8gQHR5cGUgTWFwXG4kaGVhZGVyLXN0eWxlczogKFxuICBzbWFsbDogKFxuICAgICdoMSc6ICgnZm9udC1zaXplJzogMjQpLFxuICAgICdoMic6ICgnZm9udC1zaXplJzogMjApLFxuICAgICdoMyc6ICgnZm9udC1zaXplJzogMTkpLFxuICAgICdoNCc6ICgnZm9udC1zaXplJzogMTgpLFxuICAgICdoNSc6ICgnZm9udC1zaXplJzogMTcpLFxuICAgICdoNic6ICgnZm9udC1zaXplJzogMTYpLFxuICApLFxuICBtZWRpdW06IChcbiAgICAnaDEnOiAoJ2ZvbnQtc2l6ZSc6IDQ4KSxcbiAgICAnaDInOiAoJ2ZvbnQtc2l6ZSc6IDQwKSxcbiAgICAnaDMnOiAoJ2ZvbnQtc2l6ZSc6IDMxKSxcbiAgICAnaDQnOiAoJ2ZvbnQtc2l6ZSc6IDI1KSxcbiAgICAnaDUnOiAoJ2ZvbnQtc2l6ZSc6IDIwKSxcbiAgICAnaDYnOiAoJ2ZvbnQtc2l6ZSc6IDE2KSxcbiAgKSxcbikgIWRlZmF1bHQ7XG5cbi8vICRoZWFkZXItc3R5bGVzIG1hcCBpcyBidWlsdCBmcm9tICRoZWFkZXItc2l6ZXMgaW4gb3JkZXIgdG8gZW5zdXJlIGRvd253YXJkIGNvbXBhdGliaWxpdHlcbi8vIHdoZW4gJGhlYWRlci1zaXplcyBpcyBkZXByZWNpYXRlZCwgJGhlYWRlci1zdHlsZXMgbmVlZHMgdG8gZ2V0ICFkZWZhdWx0IHZhbHVlcyBsaWtlIHNldHRpbmdzLnNjc3NcbkBmdW5jdGlvbiBidWlsZF9mcm9tX2hlYWRlci1zaXplcygkaGVhZGVyLXNpemVzKSB7XG4gIEB3YXJuICdOb3RlLCB0aGF0ICRoZWFkZXItc2l6ZXMgaGFzIGJlZW4gcmVwbGFjZWQgd2l0aCAkaGVhZGVyLXN0eWxlcy4gJGhlYWRlci1zaXplcyBzdGlsbCB3b3JrcywgYnV0IGl0IGlzIGdvaW5nIHRvIGJlIGRlcHJlY2lhdGVkLic7XG4gICRoZWFkZXItc3R5bGVzOiAoKTtcbiAgQGVhY2ggJHNpemUsICRoZWFkZXJzIGluICRoZWFkZXItc2l6ZXMge1xuICAgICRoZWFkZXItbWFwOiAoKTtcbiAgICBAZWFjaCAkaGVhZGVyLCAkZm9udC1zaXplIGluICRoZWFkZXJzIHtcbiAgICAgICRoZWFkZXItbWFwOiBtYXAtbWVyZ2UoJGhlYWRlci1tYXAsICgkaGVhZGVyOiAoJ2ZvbnQtc2l6ZSc6ICRmb250LXNpemUpKSk7ICBcbiAgICB9XG4gICAgJGhlYWRlci1zdHlsZXM6IG1hcC1tZXJnZSgkaGVhZGVyLXN0eWxlcywgKCRzaXplOiAkaGVhZGVyLW1hcCkpO1xuICB9XG4gIEByZXR1cm4gJGhlYWRlci1zdHlsZXM7XG59XG5cbi8vIElmIGl0IGV4aXN0cyAkaGVhZGVycy1zaXplcyBpcyB1c2VkIHRvIGJ1aWxkICRoZWFkZXItc3R5bGVzLiBTZWUgdGhlIGRvY3VtZW50YXRpb24uXG5AaWYgdmFyaWFibGUtZXhpc3RzKGhlYWRlci1zaXplcykge1xuICAkaGVhZGVyLXN0eWxlczogYnVpbGRfZnJvbV9oZWFkZXItc2l6ZXMoJGhlYWRlci1zaXplcyk7XG59XG5cbi8vLyBUZXh0IHJlbmRlcmluZyBtZXRob2Qgb2YgaGVhZGVycy5cbi8vLyBAdHlwZSBTdHJpbmdcbiRoZWFkZXItdGV4dC1yZW5kZXJpbmc6IG9wdGltaXplTGVnaWJpbGl0eSAhZGVmYXVsdDtcblxuLy8vIEZvbnQgc2l6ZSBvZiBgPHNtYWxsPmAgZWxlbWVudHMuXG4vLy8gQHR5cGUgTnVtYmVyXG4kc21hbGwtZm9udC1zaXplOiA4MCUgIWRlZmF1bHQ7XG5cbi8vLyBDb2xvciBvZiBgPHNtYWxsPmAgZWxlbWVudHMgd2hlbiBwbGFjZWQgaW5zaWRlIGhlYWRlcnMuXG4vLy8gQHR5cGUgQ29sb3JcbiRoZWFkZXItc21hbGwtZm9udC1jb2xvcjogJG1lZGl1bS1ncmF5ICFkZWZhdWx0O1xuXG4vLy8gTGluZSBoZWlnaHQgb2YgdGV4dCBpbnNpZGUgYDxwPmAgZWxlbWVudHMuXG4vLy8gQHR5cGUgTnVtYmVyXG4kcGFyYWdyYXBoLWxpbmVoZWlnaHQ6IDEuNiAhZGVmYXVsdDtcblxuLy8vIEJvdHRvbSBtYXJnaW4gb2YgcGFyYWdyYXBocy5cbi8vLyBAdHlwZSBOdW1iZXJcbiRwYXJhZ3JhcGgtbWFyZ2luLWJvdHRvbTogMXJlbSAhZGVmYXVsdDtcblxuLy8vIFRleHQgcmVuZGVyaW5nIG1ldGhvZCBmb3IgcGFyYWdyYXBoIHRleHQuXG4vLy8gQHR5cGUgU3RyaW5nXG4kcGFyYWdyYXBoLXRleHQtcmVuZGVyaW5nOiBvcHRpbWl6ZUxlZ2liaWxpdHkgIWRlZmF1bHQ7XG5cbi8vLyBUZXh0IGNvbG9yIG9mIGNvZGUgc2FtcGxlcy5cbi8vLyBAdHlwZSBDb2xvclxuJGNvZGUtY29sb3I6ICRibGFjayAhZGVmYXVsdDtcblxuLy8vIEZvbnQgZmFtaWx5IG9mIGNvZGUgc2FtcGxlcy5cbi8vLyBAdHlwZSBTdHJpbmcgfCBMaXN0XG4kY29kZS1mb250LWZhbWlseTogJGZvbnQtZmFtaWx5LW1vbm9zcGFjZSAhZGVmYXVsdDtcblxuLy8vIEZvbnQgd2VpZ2h0IG9mIHRleHQgaW4gY29kZSBzYW1wbGVzLlxuLy8vIEB0eXBlIFN0cmluZ1xuJGNvZGUtZm9udC13ZWlnaHQ6ICRnbG9iYWwtd2VpZ2h0LW5vcm1hbCAhZGVmYXVsdDtcblxuLy8vIEJhY2tncm91bmQgY29sb3Igb2YgY29kZSBzYW1wbGVzLlxuLy8vIEB0eXBlIENvbG9yXG4kY29kZS1iYWNrZ3JvdW5kOiAkbGlnaHQtZ3JheSAhZGVmYXVsdDtcblxuLy8vIEJvcmRlciBhcm91bmQgY29kZSBzYW1wbGVzLlxuLy8vIEB0eXBlIExpc3RcbiRjb2RlLWJvcmRlcjogMXB4IHNvbGlkICRtZWRpdW0tZ3JheSAhZGVmYXVsdDtcblxuLy8vIFBhZGRpbmcgYXJvdW5kIHRleHQgb2YgY29kZSBzYW1wbGVzLlxuLy8vIEB0eXBlIE51bWJlciB8IExpc3RcbiRjb2RlLXBhZGRpbmc6IHJlbS1jYWxjKDIgNSAxKSAhZGVmYXVsdDtcblxuLy8vIERlZmF1bHQgY29sb3IgZm9yIGxpbmtzLlxuLy8vIEB0eXBlIENvbG9yXG4kYW5jaG9yLWNvbG9yOiAkcHJpbWFyeS1jb2xvciAhZGVmYXVsdDtcblxuLy8vIERlZmF1bHQgY29sb3IgZm9yIGxpbmtzIG9uIGhvdmVyLlxuLy8vIEB0eXBlIENvbG9yXG4kYW5jaG9yLWNvbG9yLWhvdmVyOiBzY2FsZS1jb2xvcigkYW5jaG9yLWNvbG9yLCAkbGlnaHRuZXNzOiAtMTQlKSAhZGVmYXVsdDtcblxuLy8vIERlZmF1bHQgdGV4dCBkZW9jcmF0aW9uIGZvciBsaW5rcy5cbi8vLyBAdHlwZSBTdHJpbmdcbiRhbmNob3ItdGV4dC1kZWNvcmF0aW9uOiBub25lICFkZWZhdWx0O1xuXG4vLy8gRGVmYXVsdCB0ZXh0IGRlY29yYXRpb24gZm9yIGxpbmtzIG9uIGhvdmVyLlxuLy8vIEB0eXBlIFN0cmluZ1xuJGFuY2hvci10ZXh0LWRlY29yYXRpb24taG92ZXI6IG5vbmUgIWRlZmF1bHQ7XG5cbi8vLyBNYXhpbXVtIHdpZHRoIG9mIGEgZGl2aWRlci5cbi8vLyBAdHlwZSBOdW1iZXJcbiRoci13aWR0aDogJGdsb2JhbC13aWR0aCAhZGVmYXVsdDtcblxuLy8vIERlZmF1bHQgYm9yZGVyIGZvciBhIGRpdmlkZXIuXG4vLy8gQHR5cGUgTGlzdFxuJGhyLWJvcmRlcjogMXB4IHNvbGlkICRtZWRpdW0tZ3JheSAhZGVmYXVsdDtcblxuLy8vIERlZmF1bHQgbWFyZ2luIGZvciBhIGRpdmlkZXIuXG4vLy8gQHR5cGUgTnVtYmVyIHwgTGlzdFxuJGhyLW1hcmdpbjogcmVtLWNhbGMoMjApIGF1dG8gIWRlZmF1bHQ7XG5cbi8vLyBMaW5lIGhlaWdodCBmb3IgaXRlbXMgaW4gYSBsaXN0LlxuLy8vIEB0eXBlIE51bWJlclxuJGxpc3QtbGluZWhlaWdodDogJHBhcmFncmFwaC1saW5laGVpZ2h0ICFkZWZhdWx0O1xuXG4vLy8gQm90dG9tIG1hcmdpbiBmb3IgaXRlbXMgaW4gYSBsaXN0LlxuLy8vIEB0eXBlIE51bWJlclxuJGxpc3QtbWFyZ2luLWJvdHRvbTogJHBhcmFncmFwaC1tYXJnaW4tYm90dG9tICFkZWZhdWx0O1xuXG4vLy8gQnVsbGV0IHR5cGUgdG8gdXNlIGZvciB1bm9yZGVyZWQgbGlzdHMgKGUuZy4sIGBzcXVhcmVgLCBgY2lyY2xlYCwgYGRpc2NgKS5cbi8vLyBAdHlwZSBTdHJpbmdcbiRsaXN0LXN0eWxlLXR5cGU6IGRpc2MgIWRlZmF1bHQ7XG5cbi8vLyBQb3NpdGlvbmluZyBmb3IgYnVsbGV0cyBvbiB1bm9yZGVyZWQgbGlzdCBpdGVtcy5cbi8vLyBAdHlwZSBTdHJpbmdcbiRsaXN0LXN0eWxlLXBvc2l0aW9uOiBvdXRzaWRlICFkZWZhdWx0O1xuXG4vLy8gTGVmdCAob3IgcmlnaHQpIG1hcmdpbiBmb3IgbGlzdHMuXG4vLy8gQHR5cGUgTnVtYmVyXG4kbGlzdC1zaWRlLW1hcmdpbjogMS4yNXJlbSAhZGVmYXVsdDtcblxuLy8vIExlZnQgKG9yIHJpZ2h0KSBtYXJnaW4gZm9yIGEgbGlzdCBpbnNpZGUgYSBsaXN0LlxuLy8vIEB0eXBlIE51bWJlclxuJGxpc3QtbmVzdGVkLXNpZGUtbWFyZ2luOiAxLjI1cmVtICFkZWZhdWx0O1xuXG4vLy8gQm90dG9tIG1hcmdpbiBmb3IgYDxkbD5gIGVsZW1lbnRzLlxuLy8vIEB0eXBlIE51bWJlclxuJGRlZm5saXN0LW1hcmdpbi1ib3R0b206IDFyZW0gIWRlZmF1bHQ7XG5cbi8vLyBGb250IHdlaWdodCBmb3IgYDxkdD5gIGVsZW1lbnRzLlxuLy8vIEB0eXBlIFN0cmluZ1xuJGRlZm5saXN0LXRlcm0td2VpZ2h0OiAkZ2xvYmFsLXdlaWdodC1ib2xkICFkZWZhdWx0O1xuXG4vLy8gU3BhY2luZyBiZXR3ZWVuIGA8ZHQ+YCBhbmQgYDxkZD5gIGVsZW1lbnRzLlxuLy8vIEB0eXBlIE51bWJlclxuJGRlZm5saXN0LXRlcm0tbWFyZ2luLWJvdHRvbTogMC4zcmVtICFkZWZhdWx0O1xuXG4vLy8gVGV4dCBjb2xvciBvZiBgPGJsb2NrcXVvdGU+YCBlbGVtZW50cy5cbi8vLyBAdHlwZSBDb2xvclxuJGJsb2NrcXVvdGUtY29sb3I6ICRkYXJrLWdyYXkgIWRlZmF1bHQ7XG5cbi8vLyBQYWRkaW5nIGluc2lkZSBhIGA8YmxvY2txdW90ZT5gIGVsZW1lbnQuXG4vLy8gQHR5cGUgTnVtYmVyIHwgTGlzdFxuJGJsb2NrcXVvdGUtcGFkZGluZzogcmVtLWNhbGMoOSAyMCAwIDE5KSAhZGVmYXVsdDtcblxuLy8vIFNpZGUgYm9yZGVyIGZvciBgPGJsb2NrcXVvdGU+YCBlbGVtZW50cy5cbi8vLyBAdHlwZSBMaXN0XG4kYmxvY2txdW90ZS1ib3JkZXI6IDFweCBzb2xpZCAkbWVkaXVtLWdyYXkgIWRlZmF1bHQ7XG5cbi8vLyBGb250IHNpemUgZm9yIGA8Y2l0ZT5gIGVsZW1lbnRzLlxuLy8vIEB0eXBlIE51bWJlclxuJGNpdGUtZm9udC1zaXplOiByZW0tY2FsYygxMykgIWRlZmF1bHQ7XG5cbi8vLyBUZXh0IGNvbG9yIGZvciBgPGNpdGU+YCBlbGVtZW50cy5cbi8vLyBAdHlwZSBDb2xvclxuJGNpdGUtY29sb3I6ICRkYXJrLWdyYXkgIWRlZmF1bHQ7XG5cbi8vLyBQc2V1ZG8gY29udGVudCBmb3IgYDxjaXRlPmAgZWxlbWVudHMuXG4vLy8gQHR5cGUgU3RyaW5nXG4kY2l0ZS1wc2V1ZG8tY29udGVudDogJ1xcMjAxNCBcXDAwMjAnICFkZWZhdWx0O1xuXG4vLy8gRm9udCBmYW1pbHkgZm9yIGA8a2JkPmAgZWxlbWVudHMuXG4vLy8gQHR5cGUgU3RyaW5nIHwgTGlzdFxuJGtleXN0cm9rZS1mb250OiAkZm9udC1mYW1pbHktbW9ub3NwYWNlICFkZWZhdWx0O1xuXG4vLy8gVGV4dCBjb2xvciBmb3IgYDxrYmQ+YCBlbGVtZW50cy5cbi8vLyBAdHlwZSBDb2xvclxuJGtleXN0cm9rZS1jb2xvcjogJGJsYWNrICFkZWZhdWx0O1xuXG4vLy8gQmFja2dyb3VuZCBjb2xvciBmb3IgYDxrYmQ+YCBlbGVtZW50cy5cbi8vLyBAdHlwZSBDb2xvclxuJGtleXN0cm9rZS1iYWNrZ3JvdW5kOiAkbGlnaHQtZ3JheSAhZGVmYXVsdDtcblxuLy8vIFBhZGRpbmcgZm9yIGA8a2JkPmAgZWxlbWVudHMuXG4vLy8gQHR5cGUgTnVtYmVyIHwgTGlzdFxuJGtleXN0cm9rZS1wYWRkaW5nOiByZW0tY2FsYygyIDQgMCkgIWRlZmF1bHQ7XG5cbi8vLyBCb3JkZXIgcmFkaXVzIGZvciBgPGtiZD5gIGVsZW1lbnRzLlxuLy8vIEB0eXBlIE51bWJlciB8IExpc3RcbiRrZXlzdHJva2UtcmFkaXVzOiAkZ2xvYmFsLXJhZGl1cyAhZGVmYXVsdDtcblxuLy8vIEJvdHRvbSBib3JkZXIgc3R5bGUgZm9yIGA8YWJicj5gIGVsZW1lbnRzLlxuLy8vIEB0eXBlIExpc3RcbiRhYmJyLXVuZGVybGluZTogMXB4IGRvdHRlZCAkYmxhY2sgIWRlZmF1bHQ7XG5cbkBtaXhpbiBmb3VuZGF0aW9uLXR5cG9ncmFwaHktYmFzZSB7XG4gIC8vIFR5cG9ncmFwaHkgcmVzZXRzXG4gIGRpdixcbiAgZGwsXG4gIGR0LFxuICBkZCxcbiAgdWwsXG4gIG9sLFxuICBsaSxcbiAgaDEsXG4gIGgyLFxuICBoMyxcbiAgaDQsXG4gIGg1LFxuICBoNixcbiAgcHJlLFxuICBmb3JtLFxuICBwLFxuICBibG9ja3F1b3RlLFxuICB0aCxcbiAgdGQge1xuICAgIG1hcmdpbjogMDtcbiAgICBwYWRkaW5nOiAwO1xuICB9XG5cbiAgLy8gUGFyYWdyYXBoc1xuICBwIHtcbiAgICBtYXJnaW4tYm90dG9tOiAkcGFyYWdyYXBoLW1hcmdpbi1ib3R0b207XG5cbiAgICBmb250LXNpemU6IGluaGVyaXQ7XG4gICAgbGluZS1oZWlnaHQ6ICRwYXJhZ3JhcGgtbGluZWhlaWdodDtcbiAgICB0ZXh0LXJlbmRlcmluZzogJHBhcmFncmFwaC10ZXh0LXJlbmRlcmluZztcbiAgfVxuXG4gIC8vIEVtcGhhc2l6ZWQgdGV4dFxuICBlbSxcbiAgaSB7XG4gICAgZm9udC1zdHlsZTogaXRhbGljO1xuICAgIGxpbmUtaGVpZ2h0OiBpbmhlcml0O1xuICB9XG5cbiAgLy8gU3Ryb25nIHRleHRcbiAgc3Ryb25nLFxuICBiIHtcbiAgICBmb250LXdlaWdodDogJGdsb2JhbC13ZWlnaHQtYm9sZDtcbiAgICBsaW5lLWhlaWdodDogaW5oZXJpdDtcbiAgfVxuXG4gIC8vIFNtYWxsIHRleHRcbiAgc21hbGwge1xuICAgIGZvbnQtc2l6ZTogJHNtYWxsLWZvbnQtc2l6ZTtcbiAgICBsaW5lLWhlaWdodDogaW5oZXJpdDtcbiAgfVxuXG4gIC8vIEhlYWRpbmdzXG4gIGgxLFxuICBoMixcbiAgaDMsXG4gIGg0LFxuICBoNSxcbiAgaDYge1xuICAgIGZvbnQtZmFtaWx5OiAkaGVhZGVyLWZvbnQtZmFtaWx5O1xuICAgIGZvbnQtc3R5bGU6ICRoZWFkZXItZm9udC1zdHlsZTtcbiAgICBmb250LXdlaWdodDogJGhlYWRlci1mb250LXdlaWdodDtcbiAgICBjb2xvcjogJGhlYWRlci1jb2xvcjtcbiAgICB0ZXh0LXJlbmRlcmluZzogJGhlYWRlci10ZXh0LXJlbmRlcmluZztcblxuICAgIHNtYWxsIHtcbiAgICAgIGxpbmUtaGVpZ2h0OiAwO1xuICAgICAgY29sb3I6ICRoZWFkZXItc21hbGwtZm9udC1jb2xvcjtcbiAgICB9XG4gIH1cblxuICAvLyBIZWFkaW5nIHN0eWxlc1xuICBAZWFjaCAkc2l6ZSwgJGhlYWRlcnMgaW4gJGhlYWRlci1zdHlsZXMge1xuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoJHNpemUpIHtcbiAgICAgIEBlYWNoICRoZWFkZXIsICRoZWFkZXItZGVmcyBpbiAkaGVhZGVycyB7XG4gICAgICAgICRmb250LXNpemUtdGVtcDogMXJlbTtcbiAgICAgICAgI3skaGVhZGVyfSB7XG5cbiAgICAgICAgICBAaWYgbWFwLWhhcy1rZXkoJGhlYWRlci1kZWZzLCBmb250LXNpemUpIHtcbiAgICAgICAgICAgICRmb250LXNpemUtdGVtcDogcmVtLWNhbGMobWFwLWdldCgkaGVhZGVyLWRlZnMsIGZvbnQtc2l6ZSkpO1xuICAgICAgICAgICAgZm9udC1zaXplOiAkZm9udC1zaXplLXRlbXA7XG4gICAgICAgICAgfSBAZWxzZSBpZiBtYXAtaGFzLWtleSgkaGVhZGVyLWRlZnMsIGZzKSB7XG4gICAgICAgICAgICAkZm9udC1zaXplLXRlbXA6IHJlbS1jYWxjKG1hcC1nZXQoJGhlYWRlci1kZWZzLCBmcykpO1xuICAgICAgICAgICAgZm9udC1zaXplOiAkZm9udC1zaXplLXRlbXA7XG4gICAgICAgICAgfSBAZWxzZSBpZiAkc2l6ZSA9PSAkLXpmLXplcm8tYnJlYWtwb2ludCB7XG4gICAgICAgICAgICBmb250LXNpemU6ICRmb250LXNpemUtdGVtcDtcbiAgICAgICAgICB9XG4gICAgICAgICAgQGlmIG1hcC1oYXMta2V5KCRoZWFkZXItZGVmcywgbGluZS1oZWlnaHQpIHtcbiAgICAgICAgICAgIGxpbmUtaGVpZ2h0OiB1bml0bGVzcy1jYWxjKG1hcC1nZXQoJGhlYWRlci1kZWZzLCBsaW5lLWhlaWdodCksICRmb250LXNpemUtdGVtcCk7XG4gICAgICAgICAgfSBAZWxzZSBpZiBtYXAtaGFzLWtleSgkaGVhZGVyLWRlZnMsIGxoKSB7XG4gICAgICAgICAgICBsaW5lLWhlaWdodDogdW5pdGxlc3MtY2FsYyhtYXAtZ2V0KCRoZWFkZXItZGVmcywgbGgpLCAkZm9udC1zaXplLXRlbXApO1xuICAgICAgICAgIH0gQGVsc2UgaWYgJHNpemUgPT0gJC16Zi16ZXJvLWJyZWFrcG9pbnQge1xuICAgICAgICAgICAgbGluZS1oZWlnaHQ6IHVuaXRsZXNzLWNhbGMoJGhlYWRlci1saW5laGVpZ2h0LCAkZm9udC1zaXplLXRlbXApO1xuICAgICAgICAgIH1cblxuICAgICAgICAgIEBpZiBtYXAtaGFzLWtleSgkaGVhZGVyLWRlZnMsIG1hcmdpbi10b3ApIHtcbiAgICAgICAgICAgIG1hcmdpbi10b3A6IHJlbS1jYWxjKG1hcC1nZXQoJGhlYWRlci1kZWZzLCBtYXJnaW4tdG9wKSk7XG4gICAgICAgICAgfSBAZWxzZSBpZiBtYXAtaGFzLWtleSgkaGVhZGVyLWRlZnMsIG10KSB7XG4gICAgICAgICAgICBtYXJnaW4tdG9wOiByZW0tY2FsYyhtYXAtZ2V0KCRoZWFkZXItZGVmcywgbXQpKTtcbiAgICAgICAgICB9IEBlbHNlIGlmICRzaXplID09ICQtemYtemVyby1icmVha3BvaW50IHtcbiAgICAgICAgICAgIG1hcmdpbi10b3A6IDA7XG4gICAgICAgICAgfVxuICAgICAgICAgIEBpZiBtYXAtaGFzLWtleSgkaGVhZGVyLWRlZnMsIG1hcmdpbi1ib3R0b20pIHtcbiAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IHJlbS1jYWxjKG1hcC1nZXQoJGhlYWRlci1kZWZzLCBtYXJnaW4tYm90dG9tKSk7XG4gICAgICAgICAgfSBAZWxzZSBpZiBtYXAtaGFzLWtleSgkaGVhZGVyLWRlZnMsIG1iKSB7XG4gICAgICAgICAgICBtYXJnaW4tYm90dG9tOiByZW0tY2FsYyhtYXAtZ2V0KCRoZWFkZXItZGVmcywgbWIpKTtcbiAgICAgICAgICB9IEBlbHNlIGlmICRzaXplID09ICQtemYtemVyby1icmVha3BvaW50IHtcbiAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IHJlbS1jYWxjKCRoZWFkZXItbWFyZ2luLWJvdHRvbSk7XG4gICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICB9XG5cbiAgLy8gTGlua3NcbiAgYSB7XG4gICAgbGluZS1oZWlnaHQ6IGluaGVyaXQ7XG4gICAgY29sb3I6ICRhbmNob3ItY29sb3I7XG4gICAgdGV4dC1kZWNvcmF0aW9uOiAkYW5jaG9yLXRleHQtZGVjb3JhdGlvbjtcblxuICAgIGN1cnNvcjogcG9pbnRlcjtcblxuICAgICY6aG92ZXIsXG4gICAgJjpmb2N1cyB7XG4gICAgICBjb2xvcjogJGFuY2hvci1jb2xvci1ob3ZlcjtcbiAgICAgIEBpZiAkYW5jaG9yLXRleHQtZGVjb3JhdGlvbi1ob3ZlciAhPSAkYW5jaG9yLXRleHQtZGVjb3JhdGlvbiB7XG4gICAgICAgIHRleHQtZGVjb3JhdGlvbjogJGFuY2hvci10ZXh0LWRlY29yYXRpb24taG92ZXI7XG4gICAgICB9XG4gICAgfVxuXG4gICAgaW1nIHtcbiAgICAgIGJvcmRlcjogMDtcbiAgICB9XG4gIH1cblxuICAvLyBIb3Jpem9udGFsIHJ1bGVcbiAgaHIge1xuICAgIGNsZWFyOiBib3RoO1xuXG4gICAgbWF4LXdpZHRoOiAkaHItd2lkdGg7XG4gICAgaGVpZ2h0OiAwO1xuICAgIG1hcmdpbjogJGhyLW1hcmdpbjtcblxuICAgIGJvcmRlci10b3A6IDA7XG4gICAgYm9yZGVyLXJpZ2h0OiAwO1xuICAgIGJvcmRlci1ib3R0b206ICRoci1ib3JkZXI7XG4gICAgYm9yZGVyLWxlZnQ6IDA7XG4gIH1cblxuICAvLyBMaXN0c1xuICB1bCxcbiAgb2wsXG4gIGRsIHtcbiAgICBtYXJnaW4tYm90dG9tOiAkbGlzdC1tYXJnaW4tYm90dG9tO1xuICAgIGxpc3Qtc3R5bGUtcG9zaXRpb246ICRsaXN0LXN0eWxlLXBvc2l0aW9uO1xuICAgIGxpbmUtaGVpZ2h0OiAkbGlzdC1saW5laGVpZ2h0O1xuICB9XG5cbiAgLy8gTGlzdCBpdGVtc1xuICBsaSB7XG4gICAgZm9udC1zaXplOiBpbmhlcml0O1xuICB9XG5cbiAgLy8gVW5vcmRlcmVkIGxpc3RzXG4gIHVsIHtcbiAgICBtYXJnaW4tI3skZ2xvYmFsLWxlZnR9OiAkbGlzdC1zaWRlLW1hcmdpbjtcbiAgICBsaXN0LXN0eWxlLXR5cGU6ICRsaXN0LXN0eWxlLXR5cGU7XG4gIH1cblxuICAvLyBPcmRlcmVkIGxpc3RzXG4gIG9sIHtcbiAgICBtYXJnaW4tI3skZ2xvYmFsLWxlZnR9OiAkbGlzdC1zaWRlLW1hcmdpbjtcbiAgfVxuXG4gIC8vIE5lc3RlZCB1bm9yZGVyZWQvb3JkZXJlZCBsaXN0c1xuICB1bCwgb2wge1xuICAgICYgJiB7XG4gICAgICBtYXJnaW4tI3skZ2xvYmFsLWxlZnR9OiAkbGlzdC1uZXN0ZWQtc2lkZS1tYXJnaW47XG4gICAgICBtYXJnaW4tYm90dG9tOiAwO1xuICAgIH1cbiAgfVxuXG4gIC8vIERlZmluaXRpb24gbGlzdHNcbiAgZGwge1xuICAgIG1hcmdpbi1ib3R0b206ICRkZWZubGlzdC1tYXJnaW4tYm90dG9tO1xuXG4gICAgZHQge1xuICAgICAgbWFyZ2luLWJvdHRvbTogJGRlZm5saXN0LXRlcm0tbWFyZ2luLWJvdHRvbTtcbiAgICAgIGZvbnQtd2VpZ2h0OiAkZGVmbmxpc3QtdGVybS13ZWlnaHQ7XG4gICAgfVxuICB9XG5cbiAgLy8gQmxvY2txdW90ZXNcbiAgYmxvY2txdW90ZSB7XG4gICAgbWFyZ2luOiAwIDAgJHBhcmFncmFwaC1tYXJnaW4tYm90dG9tO1xuICAgIHBhZGRpbmc6ICRibG9ja3F1b3RlLXBhZGRpbmc7XG4gICAgYm9yZGVyLSN7JGdsb2JhbC1sZWZ0fTogJGJsb2NrcXVvdGUtYm9yZGVyO1xuXG4gICAgJiwgcCB7XG4gICAgICBsaW5lLWhlaWdodDogJHBhcmFncmFwaC1saW5laGVpZ2h0O1xuICAgICAgY29sb3I6ICRibG9ja3F1b3RlLWNvbG9yO1xuICAgIH1cbiAgfVxuXG4gIC8vIENpdGF0aW9uc1xuICBjaXRlIHtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICBmb250LXNpemU6ICRjaXRlLWZvbnQtc2l6ZTtcbiAgICBjb2xvcjogJGNpdGUtY29sb3I7XG5cbiAgICAmOmJlZm9yZSB7XG4gICAgICBjb250ZW50OiAkY2l0ZS1wc2V1ZG8tY29udGVudDtcbiAgICB9XG4gIH1cblxuICAvLyBBYmJyZXZpYXRpb25zXG4gIGFiYnIsIGFiYnJbdGl0bGVdIHtcbiAgICBib3JkZXItYm90dG9tOiAkYWJici11bmRlcmxpbmU7XG4gICAgY3Vyc29yOiBoZWxwO1xuICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgfVxuXG4gIC8vIEZpZ3VyZXNcbiAgZmlndXJlIHtcbiAgICBtYXJnaW46IDA7XG4gIH1cbiAgXG4gIC8vIENvZGVcbiAgY29kZSB7XG4gICAgcGFkZGluZzogJGNvZGUtcGFkZGluZztcblxuICAgIGJvcmRlcjogJGNvZGUtYm9yZGVyO1xuICAgIGJhY2tncm91bmQtY29sb3I6ICRjb2RlLWJhY2tncm91bmQ7XG5cbiAgICBmb250LWZhbWlseTogJGNvZGUtZm9udC1mYW1pbHk7XG4gICAgZm9udC13ZWlnaHQ6ICRjb2RlLWZvbnQtd2VpZ2h0O1xuICAgIGNvbG9yOiAkY29kZS1jb2xvcjtcbiAgfVxuXG4gIC8vIEtleXN0cm9rZXNcbiAga2JkIHtcbiAgICBtYXJnaW46IDA7XG4gICAgcGFkZGluZzogJGtleXN0cm9rZS1wYWRkaW5nO1xuXG4gICAgYmFja2dyb3VuZC1jb2xvcjogJGtleXN0cm9rZS1iYWNrZ3JvdW5kO1xuXG4gICAgZm9udC1mYW1pbHk6ICRrZXlzdHJva2UtZm9udDtcbiAgICBjb2xvcjogJGtleXN0cm9rZS1jb2xvcjtcblxuICAgIEBpZiBoYXMtdmFsdWUoJGtleXN0cm9rZS1yYWRpdXMpIHtcbiAgICAgIGJvcmRlci1yYWRpdXM6ICRrZXlzdHJva2UtcmFkaXVzO1xuICAgIH1cbiAgfVxufVxuIiwiLy8gRm91bmRhdGlvbiBmb3IgU2l0ZXMgYnkgWlVSQlxuLy8gZm91bmRhdGlvbi56dXJiLmNvbVxuLy8gTGljZW5zZWQgdW5kZXIgTUlUIE9wZW4gU291cmNlXG5cbi8vLy9cbi8vLyBAZ3JvdXAgdHlwb2dyYXBoeS1oZWxwZXJzXG4vLy8vXG5cbi8vLyBEZWZhdWx0IGZvbnQgc2l6ZSBmb3IgbGVhZCBwYXJhZ3JhcGhzLlxuLy8vIEB0eXBlIE51bWJlclxuJGxlYWQtZm9udC1zaXplOiAkZ2xvYmFsLWZvbnQtc2l6ZSAqIDEuMjUgIWRlZmF1bHQ7XG5cbi8vLyBEZWZhdWx0IGxpbmUgaGVpZ2h0IGZvciBsZWFkIHBhcmFncmFwaHMuXG4vLy8gQHR5cGUgU3RyaW5nXG4kbGVhZC1saW5laGVpZ2h0OiAxLjYgIWRlZmF1bHQ7XG5cbi8vLyBEZWZhdWx0IGxpbmUgaGVpZ2h0IGZvciBzdWJoZWFkZXJzLlxuLy8vIEB0eXBlIE51bWJlclxuJHN1YmhlYWRlci1saW5laGVpZ2h0OiAxLjQgIWRlZmF1bHQ7XG5cbi8vLyBEZWZhdWx0IGZvbnQgY29sb3IgZm9yIHN1YmhlYWRlcnMuXG4vLy8gQHR5cGUgQ29sb3JcbiRzdWJoZWFkZXItY29sb3I6ICRkYXJrLWdyYXkgIWRlZmF1bHQ7XG5cbi8vLyBEZWZhdWx0IGZvbnQgd2VpZ2h0IGZvciBzdWJoZWFkZXJzLlxuLy8vIEB0eXBlIFN0cmluZ1xuJHN1YmhlYWRlci1mb250LXdlaWdodDogJGdsb2JhbC13ZWlnaHQtbm9ybWFsICFkZWZhdWx0O1xuXG4vLy8gRGVmYXVsdCB0b3AgbWFyZ2luIGZvciBzdWJoaGVhZGVycy5cbi8vLyBAdHlwZSBOdW1iZXJcbiRzdWJoZWFkZXItbWFyZ2luLXRvcDogMC4ycmVtICFkZWZhdWx0O1xuXG4vLy8gRGVmYXVsdCBib3R0b20gbWFyZ2luIGZvciBzdWJoZWFkZXJzLlxuLy8vIEB0eXBlIE51bWJlclxuJHN1YmhlYWRlci1tYXJnaW4tYm90dG9tOiAwLjVyZW0gIWRlZmF1bHQ7XG5cbi8vLyBEZWZhdWx0IGZvbnQgc2l6ZSBmb3Igc3RhdGlzdGljIG51bWJlcnMuXG4vLy8gQHR5cGUgTnVtYmVyXG4kc3RhdC1mb250LXNpemU6IDIuNXJlbSAhZGVmYXVsdDtcblxuQG1peGluIGZvdW5kYXRpb24tdHlwb2dyYXBoeS1oZWxwZXJzIHtcbiAgLy8gVXNlIHRvIGNyZWF0ZSBhIHN1YmhlYWRpbmcgdW5kZXIgYSBtYWluIGhlYWRlclxuICAvLyBNYWtlIHN1cmUgeW91IHBhaXIgdGhlIHR3byBlbGVtZW50cyBpbiBhIDxoZWFkZXI+IGVsZW1lbnQsIGxpa2UgdGhpczpcbiAgLy8gPGhlYWRlcj5cbiAgLy8gICA8aDE+SGVhZGluZzwvaDE+XG4gIC8vICAgPGgyPlN1YmhlYWRpbmc8L2gyPlxuICAvLyA8L2hlYWRlcj5cbiAgLnN1YmhlYWRlciB7XG4gICAgbWFyZ2luLXRvcDogJHN1YmhlYWRlci1tYXJnaW4tdG9wO1xuICAgIG1hcmdpbi1ib3R0b206ICRzdWJoZWFkZXItbWFyZ2luLWJvdHRvbTtcblxuICAgIGZvbnQtd2VpZ2h0OiAkc3ViaGVhZGVyLWZvbnQtd2VpZ2h0O1xuICAgIGxpbmUtaGVpZ2h0OiAkc3ViaGVhZGVyLWxpbmVoZWlnaHQ7XG4gICAgY29sb3I6ICRzdWJoZWFkZXItY29sb3I7XG4gIH1cblxuICAvLyBVc2UgdG8gc3R5bGUgYW4gaW50cm9kdWN0b3J5IGxlYWQsIGRlY2ssIGJsdXJiLCBldGMuXG4gIC5sZWFkIHtcbiAgICBmb250LXNpemU6ICRsZWFkLWZvbnQtc2l6ZTtcbiAgICBsaW5lLWhlaWdodDogJGxlYWQtbGluZWhlaWdodDtcbiAgfVxuXG4gIC8vIFVzZSB0byBzdHlsZSBhIGxhcmdlIG51bWJlciB0byBkaXNwbGF5IGEgc3RhdGlzdGljXG4gIC5zdGF0IHtcbiAgICBmb250LXNpemU6ICRzdGF0LWZvbnQtc2l6ZTtcbiAgICBsaW5lLWhlaWdodDogMTtcblxuICAgIHAgKyAmIHtcbiAgICAgIG1hcmdpbi10b3A6IC0xcmVtO1xuICAgIH1cbiAgfVxuXG4gIHVsLCBvbCB7XG4gICAgLy8gVXNlIHRvIHJlbW92ZSBudW1iZXJzIGZyb20gb3JkZXJlZCBsaXN0ICYgYnVsbGV0cyBmcm9tIHVub3JkZXJlZCBsaXN0XG4gICAgJi5uby1idWxsZXQge1xuICAgICAgbWFyZ2luLSN7JGdsb2JhbC1sZWZ0fTogMDtcbiAgICAgIGxpc3Qtc3R5bGU6IG5vbmU7XG4gICAgfVxuICB9XG59XG4iLCIvLyBGb3VuZGF0aW9uIGZvciBTaXRlcyBieSBaVVJCXG4vLyBmb3VuZGF0aW9uLnp1cmIuY29tXG4vLyBMaWNlbnNlZCB1bmRlciBNSVQgT3BlbiBTb3VyY2VcblxuQG1peGluIGZvdW5kYXRpb24tdGV4dC1hbGlnbm1lbnQge1xuICBAZWFjaCAkc2l6ZSBpbiAkYnJlYWtwb2ludC1jbGFzc2VzIHtcbiAgICBAaW5jbHVkZSBicmVha3BvaW50KCRzaXplKSB7XG4gICAgICBAZWFjaCAkYWxpZ24gaW4gKGxlZnQsIHJpZ2h0LCBjZW50ZXIsIGp1c3RpZnkpIHtcbiAgICAgICAgQGlmICRzaXplICE9ICQtemYtemVyby1icmVha3BvaW50IHtcbiAgICAgICAgICAuI3skc2l6ZX0tdGV4dC0jeyRhbGlnbn0ge1xuICAgICAgICAgICAgdGV4dC1hbGlnbjogJGFsaWduO1xuICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgICBAZWxzZSB7XG4gICAgICAgICAgLnRleHQtI3skYWxpZ259IHtcbiAgICAgICAgICAgIHRleHQtYWxpZ246ICRhbGlnbjtcbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gIH1cbn1cbiIsIi8vIEZvdW5kYXRpb24gZm9yIFNpdGVzIGJ5IFpVUkJcbi8vIGZvdW5kYXRpb24uenVyYi5jb21cbi8vIExpY2Vuc2VkIHVuZGVyIE1JVCBPcGVuIFNvdXJjZVxuXG4vLy8gSWYgYHRydWVgLCBhbGwgZWxlbWVudHMgd2lsbCBoYXZlIHRyYW5zcGFyZW50IGJhY2tncm91bmRzIHdoZW4gcHJpbnRlZCwgdG8gc2F2ZSBvbiBpbmsuXG4vLy8gQHR5cGUgQm9vbGVhblxuLy8vIEBncm91cCBnbG9iYWxcbiRwcmludC10cmFuc3BhcmVudC1iYWNrZ3JvdW5kczogdHJ1ZSAhZGVmYXVsdDtcbiRwcmludC1ocmVmczogdHJ1ZSAhZGVmYXVsdDtcblxuLy8gc2Fzcy1saW50OmRpc2FibGUtYWxsXG5cbkBtaXhpbiBmb3VuZGF0aW9uLXByaW50LXN0eWxlcyB7XG4gIC5zaG93LWZvci1wcmludCB7IGRpc3BsYXk6IG5vbmUgIWltcG9ydGFudDsgfVxuXG4gIEBtZWRpYSBwcmludCB7XG4gICAgKiB7XG4gICAgICBAaWYgJHByaW50LXRyYW5zcGFyZW50LWJhY2tncm91bmRzIHtcbiAgICAgICAgYmFja2dyb3VuZDogdHJhbnNwYXJlbnQgIWltcG9ydGFudDtcbiAgICAgIH1cblxuICAgICAgYm94LXNoYWRvdzogbm9uZSAhaW1wb3J0YW50O1xuXG4gICAgICBjb2xvcjogYmxhY2sgIWltcG9ydGFudDsgLy8gQmxhY2sgcHJpbnRzIGZhc3RlcjogaDVicC5jb20vc1xuICAgICAgdGV4dC1zaGFkb3c6IG5vbmUgIWltcG9ydGFudDtcbiAgICB9XG5cbiAgICAuc2hvdy1mb3ItcHJpbnQgeyBkaXNwbGF5OiBibG9jayAhaW1wb3J0YW50OyB9XG4gICAgLmhpZGUtZm9yLXByaW50IHsgZGlzcGxheTogbm9uZSAhaW1wb3J0YW50OyB9XG5cbiAgICB0YWJsZS5zaG93LWZvci1wcmludCB7IGRpc3BsYXk6IHRhYmxlICFpbXBvcnRhbnQ7IH1cbiAgICB0aGVhZC5zaG93LWZvci1wcmludCB7IGRpc3BsYXk6IHRhYmxlLWhlYWRlci1ncm91cCAhaW1wb3J0YW50OyB9XG4gICAgdGJvZHkuc2hvdy1mb3ItcHJpbnQgeyBkaXNwbGF5OiB0YWJsZS1yb3ctZ3JvdXAgIWltcG9ydGFudDsgfVxuICAgIHRyLnNob3ctZm9yLXByaW50IHsgZGlzcGxheTogdGFibGUtcm93ICFpbXBvcnRhbnQ7IH1cbiAgICB0ZC5zaG93LWZvci1wcmludCB7IGRpc3BsYXk6IHRhYmxlLWNlbGwgIWltcG9ydGFudDsgfVxuICAgIHRoLnNob3ctZm9yLXByaW50IHsgZGlzcGxheTogdGFibGUtY2VsbCAhaW1wb3J0YW50OyB9XG5cbiAgICAvLyBEaXNwbGF5IHRoZSBVUkwgb2YgYSBsaW5rIGFmdGVyIHRoZSB0ZXh0XG4gICAgYSxcbiAgICBhOnZpc2l0ZWQgeyB0ZXh0LWRlY29yYXRpb246IHVuZGVybGluZTt9XG4gICAgQGlmICRwcmludC1ocmVmcyB7XG4gICAgICBhW2hyZWZdOmFmdGVyIHsgY29udGVudDogJyAoJyBhdHRyKGhyZWYpICcpJzsgfVxuICAgIH1cblxuICAgIC8vIERvbid0IGRpc3BsYXkgdGhlIFVSTCBmb3IgaW1hZ2VzIG9yIEphdmFTY3JpcHQvaW50ZXJuYWwgbGlua3NcbiAgICAuaXIgYTphZnRlcixcbiAgICBhW2hyZWZePSdqYXZhc2NyaXB0OiddOmFmdGVyLFxuICAgIGFbaHJlZl49JyMnXTphZnRlciB7IGNvbnRlbnQ6ICcnOyB9XG5cbiAgICAvLyBEaXNwbGF5IHdoYXQgYW4gYWJicmV2aWF0aW9uIHN0YW5kcyBmb3IgYWZ0ZXIgdGhlIHRleHRcbiAgICBhYmJyW3RpdGxlXTphZnRlciB7IGNvbnRlbnQ6ICcgKCcgYXR0cih0aXRsZSkgJyknOyB9XG5cbiAgICAvLyBQcmV2ZW50IHBhZ2UgYnJlYWtzIGluIHRoZSBtaWRkbGUgb2YgYSBibG9ja3F1b3RlIG9yIHByZWZvcm1hdHRlZCB0ZXh0IGJsb2NrXG4gICAgcHJlLFxuICAgIGJsb2NrcXVvdGUge1xuICAgICAgYm9yZGVyOiAxcHggc29saWQgJGRhcmstZ3JheTtcbiAgICAgIHBhZ2UtYnJlYWstaW5zaWRlOiBhdm9pZDtcbiAgICB9XG5cbiAgICAvLyBoNWJwLmNvbS90XG4gICAgdGhlYWQgeyBkaXNwbGF5OiB0YWJsZS1oZWFkZXItZ3JvdXA7IH1cblxuICAgIHRyLFxuICAgIGltZyB7IHBhZ2UtYnJlYWstaW5zaWRlOiBhdm9pZDsgfVxuXG4gICAgaW1nIHsgbWF4LXdpZHRoOiAxMDAlICFpbXBvcnRhbnQ7IH1cblxuICAgIEBwYWdlIHsgbWFyZ2luOiAwLjVjbTsgfVxuXG4gICAgcCxcbiAgICBoMixcbiAgICBoMyB7XG4gICAgICBvcnBoYW5zOiAzO1xuICAgICAgd2lkb3dzOiAzO1xuICAgIH1cblxuICAgIC8vIEF2b2lkIHBhZ2UgYnJlYWtzIGFmdGVyIGEgaGVhZGluZ1xuICAgIGgyLFxuICAgIGgzIHsgcGFnZS1icmVhay1hZnRlcjogYXZvaWQ7IH1cblxuICAgIC8vIEhlbHBlciB0byByZS1hbGxvdyBwYWdlIGJyZWFrcyBpbiB0aGUgbWlkZGxlIG9mIGNlcnRhaW4gZWxlbWVudHMgKGUuZy4gcHJlLCBibG9ja3F1b3RlLCB0cilcbiAgICAucHJpbnQtYnJlYWstaW5zaWRlIHtcbiAgICAgIHBhZ2UtYnJlYWstaW5zaWRlOiBhdXRvO1xuICAgIH1cbiAgfVxufVxuIiwiLy8gRm91bmRhdGlvbiBmb3IgU2l0ZXMgYnkgWlVSQlxuLy8gZm91bmRhdGlvbi56dXJiLmNvbVxuLy8gTGljZW5zZWQgdW5kZXIgTUlUIE9wZW4gU291cmNlXG5cbi8vLy9cbi8vLyBAZ3JvdXAgYnV0dG9uXG4vLy8vXG5cbi8vLyBGb250IGZhbWlseSBmb3IgYnV0dG9uIGVsZW1lbnRzLlxuLy8vIEB0eXBlIEZvbnRcbiRidXR0b24tZm9udC1mYW1pbHk6IGluaGVyaXQgIWRlZmF1bHQ7XG5cbi8vLyBQYWRkaW5nIGluc2lkZSBidXR0b25zLlxuLy8vIEB0eXBlIExpc3RcbiRidXR0b24tcGFkZGluZzogMC44NWVtIDFlbSAhZGVmYXVsdDtcblxuLy8vIE1hcmdpbiBhcm91bmQgYnV0dG9ucy5cbi8vLyBAdHlwZSBMaXN0XG4kYnV0dG9uLW1hcmdpbjogMCAwICRnbG9iYWwtbWFyZ2luIDAgIWRlZmF1bHQ7XG5cbi8vLyBEZWZhdWx0IGZpbGwgZm9yIGJ1dHRvbnMuIENhbiBlaXRoZXIgYmUgYHNvbGlkYCBvciBgaG9sbG93YC5cbi8vLyBAdHlwZSBLZXl3b3JkXG4kYnV0dG9uLWZpbGw6IHNvbGlkICFkZWZhdWx0O1xuXG4vLy8gRGVmYXVsdCBiYWNrZ3JvdW5kIGNvbG9yIGZvciBidXR0b25zLlxuLy8vIEB0eXBlIENvbG9yXG4kYnV0dG9uLWJhY2tncm91bmQ6ICRwcmltYXJ5LWNvbG9yICFkZWZhdWx0O1xuXG4vLy8gQmFja2dyb3VuZCBjb2xvciBvbiBob3ZlciBmb3IgYnV0dG9ucy5cbi8vLyBAdHlwZSBDb2xvclxuJGJ1dHRvbi1iYWNrZ3JvdW5kLWhvdmVyOiBzY2FsZS1jb2xvcigkYnV0dG9uLWJhY2tncm91bmQsICRsaWdodG5lc3M6IC0xNSUpICFkZWZhdWx0O1xuXG4vLy8gRm9udCBjb2xvciBmb3IgYnV0dG9ucy5cbi8vLyBAdHlwZSBMaXN0XG4kYnV0dG9uLWNvbG9yOiAkd2hpdGUgIWRlZmF1bHQ7XG5cbi8vLyBBbHRlcm5hdGl2ZSBmb250IGNvbG9yIGZvciBidXR0b25zLlxuLy8vIEB0eXBlIExpc3RcbiRidXR0b24tY29sb3ItYWx0OiAkYmxhY2sgIWRlZmF1bHQ7XG5cbi8vLyBCb3JkZXIgcmFkaXVzIGZvciBidXR0b25zLCBkZWZhdWx0ZWQgdG8gZ2xvYmFsLXJhZGl1cy5cbi8vLyBAdHlwZSBOdW1iZXJcbiRidXR0b24tcmFkaXVzOiAkZ2xvYmFsLXJhZGl1cyAhZGVmYXVsdDtcblxuLy8vIEJvcmRlciB3aWR0aCBmb3IgaG9sbG93IG91dGxpbmUgYnV0dG9uc1xuLy8vIEB0eXBlIE51bWJlclxuJGJ1dHRvbi1ob2xsb3ctYm9yZGVyLXdpZHRoOiAxcHggIWRlZmF1bHQ7XG5cbi8vLyBTaXplcyBmb3IgYnV0dG9ucy5cbi8vLyBAdHlwZSBNYXBcbiRidXR0b24tc2l6ZXM6IChcbiAgdGlueTogMC42cmVtLFxuICBzbWFsbDogMC43NXJlbSxcbiAgZGVmYXVsdDogMC45cmVtLFxuICBsYXJnZTogMS4yNXJlbSxcbikgIWRlZmF1bHQ7XG5cbi8vLyBDb2xvcmluZyBjbGFzc2VzLiBBIG1hcCBvZiBjbGFzc2VzIHRvIG91dHB1dCBpbiB5b3VyIENTUywgbGlrZSBgLnNlY29uZGFyeWAsIGAuc3VjY2Vzc2AsIGFuZCBzbyBvbi5cbi8vLyBAdHlwZSBNYXBcbiRidXR0b24tcGFsZXR0ZTogJGZvdW5kYXRpb24tcGFsZXR0ZSAhZGVmYXVsdDtcblxuLy8vIG9wYWNpdHkgZm9yIGEgZGlzYWJsZWQgYnV0dG9uLlxuLy8vIEB0eXBlIExpc3RcbiRidXR0b24tb3BhY2l0eS1kaXNhYmxlZDogMC4yNSAhZGVmYXVsdDtcblxuLy8vIEJhY2tncm91bmQgY29sb3IgbGlnaHRuZXNzIG9uIGhvdmVyIGZvciBidXR0b25zLlxuLy8vIEB0eXBlIE51bWJlclxuJGJ1dHRvbi1iYWNrZ3JvdW5kLWhvdmVyLWxpZ2h0bmVzczogLTIwJSAhZGVmYXVsdDtcblxuLy8vIENvbG9yIGxpZ2h0bmVzcyBvbiBob3ZlciBmb3IgaG9sbG93IGJ1dHRvbnMuXG4vLy8gQHR5cGUgTnVtYmVyXG4kYnV0dG9uLWhvbGxvdy1ob3Zlci1saWdodG5lc3M6IC01MCUgIWRlZmF1bHQ7XG5cbi8vIEludGVybmFsOiBmbGlwIGZyb20gbWFyZ2luLXJpZ2h0IHRvIG1hcmdpbi1sZWZ0IGZvciBkZWZhdWx0c1xuQGlmICRnbG9iYWwtdGV4dC1kaXJlY3Rpb24gPT0gJ3J0bCcge1xuICAkYnV0dG9uLW1hcmdpbjogMCAwICRnbG9iYWwtbWFyZ2luICRnbG9iYWwtbWFyZ2luICFkZWZhdWx0O1xufVxuXG4vLy8gdHJhbnNpdGlvbnMgZm9yIGJ1dHRvbnMuXG4vLy8gQHR5cGUgTGlzdFxuJGJ1dHRvbi10cmFuc2l0aW9uOiBiYWNrZ3JvdW5kLWNvbG9yIDAuMjVzIGVhc2Utb3V0LCBjb2xvciAwLjI1cyBlYXNlLW91dCAhZGVmYXVsdDtcblxuLy8gVE9ETzogRG9jdW1lbnQgYnV0dG9uLWJhc2UoKSBtaXhpblxuQG1peGluIGJ1dHRvbi1iYXNlIHtcbiAgQGluY2x1ZGUgZGlzYWJsZS1tb3VzZS1vdXRsaW5lO1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7XG4gIG1hcmdpbjogJGJ1dHRvbi1tYXJnaW47XG4gIGZvbnQtZmFtaWx5OiAkYnV0dG9uLWZvbnQtZmFtaWx5O1xuXG4gIEBpZiAodHlwZS1vZigkYnV0dG9uLXBhZGRpbmcpID09ICdtYXAnKSB7XG4gICAgQGVhY2ggJHNpemUsICRwYWRkaW5nIGluICRidXR0b24tcGFkZGluZyB7XG4gICAgICBAaW5jbHVkZSBicmVha3BvaW50KCRzaXplKSB7XG4gICAgICAgIHBhZGRpbmc6ICRwYWRkaW5nO1xuICAgICAgfVxuICAgIH1cbiAgfVxuICBAZWxzZSB7XG4gICAgcGFkZGluZzogJGJ1dHRvbi1wYWRkaW5nO1xuICB9XG5cbiAgLXdlYmtpdC1hcHBlYXJhbmNlOiBub25lO1xuICBib3JkZXI6IDFweCBzb2xpZCB0cmFuc3BhcmVudDtcbiAgYm9yZGVyLXJhZGl1czogJGJ1dHRvbi1yYWRpdXM7XG4gIHRyYW5zaXRpb246ICRidXR0b24tdHJhbnNpdGlvbjtcblxuICBmb250LXNpemU6IG1hcC1nZXQoJGJ1dHRvbi1zaXplcywgZGVmYXVsdCk7XG4gIGxpbmUtaGVpZ2h0OiAxO1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gIGN1cnNvcjogcG9pbnRlcjtcbn1cblxuLy8vIEV4cGFuZHMgYSBidXR0b24gdG8gbWFrZSBpdCBmdWxsLXdpZHRoLlxuLy8vIEBwYXJhbSB7Qm9vbGVhbn0gJGV4cGFuZCBbdHJ1ZV0gLSBTZXQgdG8gYHRydWVgIHRvIGVuYWJsZSB0aGUgZXhwYW5kIGJlaGF2aW9yLiBTZXQgdG8gYGZhbHNlYCB0byByZXZlcnNlIHRoaXMgYmVoYXZpb3IuXG5AbWl4aW4gYnV0dG9uLWV4cGFuZCgkZXhwYW5kOiB0cnVlKSB7XG4gIEBpZiAkZXhwYW5kIHtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICB3aWR0aDogMTAwJTtcbiAgICBtYXJnaW4tcmlnaHQ6IDA7XG4gICAgbWFyZ2luLWxlZnQ6IDA7XG4gIH1cbiAgQGVsc2Uge1xuICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICB3aWR0aDogYXV0bztcbiAgICBtYXJnaW46ICRidXR0b24tbWFyZ2luO1xuICB9XG59XG5cbi8vLyBTZXRzIHRoZSB2aXN1YWwgc3R5bGUgb2YgYSBidXR0b24uXG4vLy8gQHBhcmFtIHtDb2xvcn0gJGJhY2tncm91bmQgWyRidXR0b24tYmFja2dyb3VuZF0gLSBCYWNrZ3JvdW5kIGNvbG9yIG9mIHRoZSBidXR0b24uXG4vLy8gQHBhcmFtIHtDb2xvcn0gJGJhY2tncm91bmQtaG92ZXIgWyRidXR0b24tYmFja2dyb3VuZC1ob3Zlcl0gLSBCYWNrZ3JvdW5kIGNvbG9yIG9mIHRoZSBidXR0b24gb24gaG92ZXIuIFNldCB0byBgYXV0b2AgdG8gaGF2ZSB0aGUgbWl4aW4gYXV0b21hdGljYWxseSBnZW5lcmF0ZSBhIGhvdmVyIGNvbG9yLlxuLy8vIEBwYXJhbSB7Q29sb3J9ICRjb2xvciBbJGJ1dHRvbi1jb2xvcl0gLSBUZXh0IGNvbG9yIG9mIHRoZSBidXR0b24uIFNldCB0byBgYXV0b2AgdG8gYXV0b21hdGljYWxseSBnZW5lcmF0ZSBhIGNvbG9yIGJhc2VkIG9uIHRoZSBiYWNrZ3JvdW5kIGNvbG9yLlxuQG1peGluIGJ1dHRvbi1zdHlsZShcbiAgJGJhY2tncm91bmQ6ICRidXR0b24tYmFja2dyb3VuZCxcbiAgJGJhY2tncm91bmQtaG92ZXI6ICRidXR0b24tYmFja2dyb3VuZC1ob3ZlcixcbiAgJGNvbG9yOiAkYnV0dG9uLWNvbG9yLFxuICAkYmFja2dyb3VuZC1ob3Zlci1saWdodG5lc3M6ICRidXR0b24tYmFja2dyb3VuZC1ob3Zlci1saWdodG5lc3Ncbikge1xuICBAaWYgJGNvbG9yID09IGF1dG8ge1xuICAgICRjb2xvcjogY29sb3ItcGljay1jb250cmFzdCgkYmFja2dyb3VuZCwgKCRidXR0b24tY29sb3IsICRidXR0b24tY29sb3ItYWx0KSk7XG4gIH1cblxuICBAaWYgJGJhY2tncm91bmQtaG92ZXIgPT0gYXV0byB7XG4gICAgJGJhY2tncm91bmQtaG92ZXI6IHNjYWxlLWNvbG9yKCRiYWNrZ3JvdW5kLCAkbGlnaHRuZXNzOiAkYmFja2dyb3VuZC1ob3Zlci1saWdodG5lc3MpO1xuICB9XG5cbiAgYmFja2dyb3VuZC1jb2xvcjogJGJhY2tncm91bmQ7XG4gIGNvbG9yOiAkY29sb3I7XG5cbiAgJjpob3ZlciwgJjpmb2N1cyB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogJGJhY2tncm91bmQtaG92ZXI7XG4gICAgY29sb3I6ICRjb2xvcjtcbiAgfVxufVxuXG4vLy8gUmVtb3ZlcyBiYWNrZ3JvdW5kIGZpbGwgb24gaG92ZXIgYW5kIGZvY3VzIGZvciBob2xsb3cgYnV0dG9ucy5cbkBtaXhpbiBidXR0b24taG9sbG93IHtcbiAgJixcbiAgJjpob3ZlciwgJjpmb2N1cyB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gIH1cblxuICAmLmRpc2FibGVkLFxuICAmW2Rpc2FibGVkXSB7XG4gICAgJixcbiAgICAmOmhvdmVyLCAmOmZvY3VzIHtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xuICAgIH1cbiAgfVxufVxuXG5AbWl4aW4gYnV0dG9uLWhvbGxvdy1zdHlsZShcbiAgJGNvbG9yOiAkYnV0dG9uLWJhY2tncm91bmQsXG4gICRob3Zlci1saWdodG5lc3M6ICRidXR0b24taG9sbG93LWhvdmVyLWxpZ2h0bmVzcyxcbiAgJGJvcmRlci13aWR0aDogJGJ1dHRvbi1ob2xsb3ctYm9yZGVyLXdpZHRoXG4pIHtcbiAgJGNvbG9yLWhvdmVyOiBzY2FsZS1jb2xvcigkY29sb3IsICRsaWdodG5lc3M6ICRob3Zlci1saWdodG5lc3MpO1xuXG4gIGJvcmRlcjogJGJvcmRlci13aWR0aCBzb2xpZCAkY29sb3I7XG4gIGNvbG9yOiAkY29sb3I7XG5cbiAgJjpob3ZlciwgJjpmb2N1cyB7XG4gICAgYm9yZGVyLWNvbG9yOiAkY29sb3ItaG92ZXI7XG4gICAgY29sb3I6ICRjb2xvci1ob3ZlcjtcbiAgICAmLmRpc2FibGVkLFxuICAgICZbZGlzYWJsZWRdIHtcbiAgICAgIGJvcmRlcjogJGJvcmRlci13aWR0aCBzb2xpZCAkY29sb3I7XG4gICAgICBjb2xvcjogJGNvbG9yO1xuICAgIH1cbiAgfVxufVxuXG4vLy8gQWRkcyBkaXNhYmxlZCBzdHlsZXMgdG8gYSBidXR0b24gYnkgZmFkaW5nIHRoZSBlbGVtZW50LCByZXNldGluZyB0aGUgY3Vyc29yLCBhbmQgZGlzYWJsaW5nIHBvaW50ZXIgZXZlbnRzLlxuLy8vIEBwYXJhbSBbQ29sb3JdICRiYWNrZ3JvdW5kIFskYnV0dG9uLWJhY2tncm91bmRdIC0gQmFja2dyb3VuZCBjb2xvciBvZiB0aGUgZGlzYWJsZWQgYnV0dG9uLlxuLy8vIEBwYXJhbSBbQ29sb3JdICRjb2xvciBbJGJ1dHRvbi1jb2xvcl0gLSBUZXh0IGNvbG9yIG9mIHRoZSBkaXNhYmxlZCBidXR0b24uIFNldCB0byBgYXV0b2AgdG8gaGF2ZSB0aGUgbWl4aW4gYXV0b21hdGljYWxseSBnZW5lcmF0ZSBhIGNvbG9yIGJhc2VkIG9uIHRoZSBiYWNrZ3JvdW5kIGNvbG9yLlxuQG1peGluIGJ1dHRvbi1kaXNhYmxlZChcbiAgJGJhY2tncm91bmQ6ICRidXR0b24tYmFja2dyb3VuZCxcbiAgJGNvbG9yOiAkYnV0dG9uLWNvbG9yXG4pIHtcbiAgQGlmICRjb2xvciA9PSBhdXRvIHtcbiAgICAkY29sb3I6IGNvbG9yLXBpY2stY29udHJhc3QoJGJhY2tncm91bmQsICgkYnV0dG9uLWNvbG9yLCAkYnV0dG9uLWNvbG9yLWFsdCkpO1xuICB9XG5cbiAgb3BhY2l0eTogJGJ1dHRvbi1vcGFjaXR5LWRpc2FibGVkO1xuICBjdXJzb3I6IG5vdC1hbGxvd2VkO1xuXG4gICYsICY6aG92ZXIsICY6Zm9jdXMge1xuICAgIGJhY2tncm91bmQtY29sb3I6ICRiYWNrZ3JvdW5kO1xuICAgIGNvbG9yOiAkY29sb3I7XG4gIH1cbn1cblxuLy8vIEFkZHMgYSBkcm9wZG93biBhcnJvdyB0byBhIGJ1dHRvbi5cbi8vLyBAcGFyYW0ge051bWJlcn0gJHNpemUgWzAuNGVtXSAtIFNpemUgb2YgdGhlIGFycm93LiBXZSByZWNvbW1lbmQgdXNpbmcgYW4gYGVtYCB2YWx1ZSBzbyB0aGUgdHJpYW5nbGUgc2NhbGVzIHdoZW4gdXNlZCBpbnNpZGUgZGlmZmVyZW50IHNpemVzIG9mIGJ1dHRvbnMuXG4vLy8gQHBhcmFtIHtDb2xvcn0gJGNvbG9yIFt3aGl0ZV0gLSBDb2xvciBvZiB0aGUgYXJyb3cuXG4vLy8gQHBhcmFtIHtOdW1iZXJ9ICRvZmZzZXQgWyRidXR0b24tcGFkZGluZ10gLSBEaXN0YW5jZSBiZXR3ZWVuIHRoZSBhcnJvdyBhbmQgdGhlIHRleHQgb2YgdGhlIGJ1dHRvbi4gRGVmYXVsdHMgdG8gd2hhdGV2ZXIgdGhlIHJpZ2h0IHBhZGRpbmcgb2YgYSBidXR0b24gaXMuXG5AbWl4aW4gYnV0dG9uLWRyb3Bkb3duKFxuICAkc2l6ZTogMC40ZW0sXG4gICRjb2xvcjogJHdoaXRlLFxuICAkb2Zmc2V0OiBnZXQtc2lkZSgkYnV0dG9uLXBhZGRpbmcsIHJpZ2h0KVxuKSB7XG4gICY6OmFmdGVyIHtcbiAgICBAaW5jbHVkZSBjc3MtdHJpYW5nbGUoJHNpemUsICRjb2xvciwgZG93bik7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIHRvcDogMC40ZW07IC8vIEFsaWducyB0aGUgYXJyb3cgd2l0aCB0aGUgdGV4dCBvZiB0aGUgYnV0dG9uXG5cbiAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgZmxvYXQ6ICN7JGdsb2JhbC1yaWdodH07XG4gICAgbWFyZ2luLSN7JGdsb2JhbC1sZWZ0fTogJG9mZnNldDtcbiAgfVxufVxuXG4vLy8gQWRkcyBhbGwgc3R5bGVzIGZvciBhIGJ1dHRvbi4gRm9yIG1vcmUgZ3JhbnVsYXIgY29udHJvbCBvdmVyIHN0eWxlcywgdXNlIHRoZSBpbmRpdmlkdWFsIGJ1dHRvbiBtaXhpbnMuXG4vLy8gQHBhcmFtIHtCb29sZWFufSAkZXhwYW5kIFtmYWxzZV0gLSBTZXQgdG8gYHRydWVgIHRvIG1ha2UgdGhlIGJ1dHRvbiBmdWxsLXdpZHRoLlxuLy8vIEBwYXJhbSB7Q29sb3J9ICRiYWNrZ3JvdW5kIFskYnV0dG9uLWJhY2tncm91bmRdIC0gQmFja2dyb3VuZCBjb2xvciBvZiB0aGUgYnV0dG9uLlxuLy8vIEBwYXJhbSB7Q29sb3J9ICRiYWNrZ3JvdW5kLWhvdmVyIFskYnV0dG9uLWJhY2tncm91bmQtaG92ZXJdIC0gQmFja2dyb3VuZCBjb2xvciBvZiB0aGUgYnV0dG9uIG9uIGhvdmVyLiBTZXQgdG8gYGF1dG9gIHRvIGhhdmUgdGhlIG1peGluIGF1dG9tYXRpY2FsbHkgZ2VuZXJhdGUgYSBob3ZlciBjb2xvci5cbi8vLyBAcGFyYW0ge0NvbG9yfSAkY29sb3IgWyRidXR0b24tY29sb3JdIC0gVGV4dCBjb2xvciBvZiB0aGUgYnV0dG9uLiBTZXQgdG8gYGF1dG9gIHRvIGF1dG9tYXRpY2FsbHkgZ2VuZXJhdGUgYSBjb2xvciBiYXNlZCBvbiB0aGUgYmFja2dyb3VuZCBjb2xvci5cbi8vLyBAcGFyYW0ge0tleXdvcmR9ICRzdHlsZSBbc29saWRdIC0gU2V0IHRvIGBob2xsb3dgIHRvIGNyZWF0ZSBhIGhvbGxvdyBidXR0b24uIFRoZSBjb2xvciBkZWZpbmVkIGluIGAkYmFja2dyb3VuZGAgd2lsbCBiZSB1c2VkIGFzIHRoZSBwcmltYXJ5IGNvbG9yIG9mIHRoZSBidXR0b24uXG5AbWl4aW4gYnV0dG9uKFxuICAkZXhwYW5kOiBmYWxzZSxcbiAgJGJhY2tncm91bmQ6ICRidXR0b24tYmFja2dyb3VuZCxcbiAgJGJhY2tncm91bmQtaG92ZXI6ICRidXR0b24tYmFja2dyb3VuZC1ob3ZlcixcbiAgJGNvbG9yOiAkYnV0dG9uLWNvbG9yLFxuICAkc3R5bGU6ICRidXR0b24tZmlsbFxuKSB7XG4gIEBpbmNsdWRlIGJ1dHRvbi1iYXNlO1xuXG4gIEBpZiAkc3R5bGUgPT0gc29saWQge1xuICAgIEBpbmNsdWRlIGJ1dHRvbi1zdHlsZSgkYmFja2dyb3VuZCwgJGJhY2tncm91bmQtaG92ZXIsICRjb2xvcik7XG4gIH1cbiAgQGVsc2UgaWYgJHN0eWxlID09IGhvbGxvdyB7XG4gICAgQGluY2x1ZGUgYnV0dG9uLWhvbGxvdztcbiAgICBAaW5jbHVkZSBidXR0b24taG9sbG93LXN0eWxlKCRiYWNrZ3JvdW5kKTtcbiAgfVxuXG4gIEBpZiAkZXhwYW5kIHtcbiAgICBAaW5jbHVkZSBidXR0b24tZXhwYW5kO1xuICB9XG59XG5cbkBtaXhpbiBmb3VuZGF0aW9uLWJ1dHRvbiB7XG4gIC5idXR0b24ge1xuICAgIEBpbmNsdWRlIGJ1dHRvbjtcblxuICAgIC8vIFNpemVzXG4gICAgQGVhY2ggJHNpemUsICR2YWx1ZSBpbiBtYXAtcmVtb3ZlKCRidXR0b24tc2l6ZXMsIGRlZmF1bHQpIHtcbiAgICAgICYuI3skc2l6ZX0ge1xuICAgICAgICBmb250LXNpemU6ICR2YWx1ZTtcbiAgICAgIH1cbiAgICB9XG5cbiAgICAmLmV4cGFuZGVkIHsgQGluY2x1ZGUgYnV0dG9uLWV4cGFuZDsgfVxuXG4gICAgLy8gQ29sb3JzXG4gICAgQGVhY2ggJG5hbWUsICRjb2xvciBpbiAkYnV0dG9uLXBhbGV0dGUge1xuICAgICAgQGlmICRidXR0b24tZmlsbCAhPSBob2xsb3cge1xuICAgICAgICAmLiN7JG5hbWV9IHtcbiAgICAgICAgICBAaW5jbHVkZSBidXR0b24tc3R5bGUoJGNvbG9yLCBhdXRvLCBhdXRvKTtcbiAgICAgICAgfVxuICAgICAgfVxuICAgICAgQGVsc2Uge1xuICAgICAgICAmLiN7JG5hbWV9IHtcbiAgICAgICAgICBAaW5jbHVkZSBidXR0b24taG9sbG93LXN0eWxlKCRjb2xvcik7XG4gICAgICAgIH1cblxuICAgICAgICAmLiN7JG5hbWV9LmRyb3Bkb3duOjphZnRlciB7XG4gICAgICAgICAgYm9yZGVyLXRvcC1jb2xvcjogJGNvbG9yO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuXG4gICAgLy8gRGlzYWJsZWQgc3R5bGVcbiAgICAmLmRpc2FibGVkLFxuICAgICZbZGlzYWJsZWRdIHtcbiAgICAgIEBpbmNsdWRlIGJ1dHRvbi1kaXNhYmxlZDtcblxuICAgICAgQGVhY2ggJG5hbWUsICRjb2xvciBpbiAkYnV0dG9uLXBhbGV0dGUge1xuICAgICAgICAmLiN7JG5hbWV9IHtcbiAgICAgICAgICBAaW5jbHVkZSBidXR0b24tZGlzYWJsZWQoJGNvbG9yLCBhdXRvKTtcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cblxuICAgIC8vIEhvbGxvdyBzdHlsZVxuICAgIEBpZiAkYnV0dG9uLWZpbGwgIT0gaG9sbG93IHtcbiAgICAgICYuaG9sbG93IHtcbiAgICAgICAgQGluY2x1ZGUgYnV0dG9uLWhvbGxvdztcbiAgICAgICAgQGluY2x1ZGUgYnV0dG9uLWhvbGxvdy1zdHlsZTtcblxuICAgICAgICBAZWFjaCAkbmFtZSwgJGNvbG9yIGluICRidXR0b24tcGFsZXR0ZSB7XG4gICAgICAgICAgJi4jeyRuYW1lfSB7XG4gICAgICAgICAgICBAaW5jbHVkZSBidXR0b24taG9sbG93LXN0eWxlKCRjb2xvcik7XG4gICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuXG4gICAgLy8gQ2xlYXIgc3R5bGVcbiAgICBAaWYgJGJ1dHRvbi1maWxsICE9IGNsZWFyIHtcbiAgICAgICYuY2xlYXIge1xuICAgICAgICBAaW5jbHVkZSBidXR0b24taG9sbG93O1xuICAgICAgICBAaW5jbHVkZSBidXR0b24taG9sbG93LXN0eWxlO1xuXG4gICAgICAgICYsICY6aG92ZXIsICY6Zm9jdXMge1xuICAgICAgICAgICYsICYuZGlzYWJsZWQsICZbZGlzYWJsZWRdIHtcbiAgICAgICAgICAgIGJvcmRlci1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gICAgICAgICAgfVxuICAgICAgICB9XG5cbiAgICAgICAgQGVhY2ggJG5hbWUsICRjb2xvciBpbiAkYnV0dG9uLXBhbGV0dGUge1xuICAgICAgICAgICYuI3skbmFtZX0ge1xuICAgICAgICAgICAgQGluY2x1ZGUgYnV0dG9uLWhvbGxvdy1zdHlsZSgkY29sb3IpO1xuXG4gICAgICAgICAgICAmLCAmOmhvdmVyLFxuICAgICAgICAgICAgJjpmb2N1cyB7XG4gICAgICAgICAgICAgICYsXG4gICAgICAgICAgICAgICYuZGlzYWJsZWQsXG4gICAgICAgICAgICAgICZbZGlzYWJsZWRdIHtcbiAgICAgICAgICAgICAgICBib3JkZXItY29sb3I6IHRyYW5zcGFyZW50O1xuICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG4gICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuXG4gICAgLy8gRHJvcGRvd24gYXJyb3dcbiAgICAmLmRyb3Bkb3duIHtcbiAgICAgIEBpbmNsdWRlIGJ1dHRvbi1kcm9wZG93bjtcblxuICAgICAgQGlmICRidXR0b24tZmlsbCA9PSBob2xsb3cge1xuICAgICAgICAmOjphZnRlciB7XG4gICAgICAgICAgYm9yZGVyLXRvcC1jb2xvcjogJGJ1dHRvbi1iYWNrZ3JvdW5kO1xuICAgICAgICB9XG4gICAgICB9XG5cbiAgICAgICYuaG9sbG93IHtcbiAgICAgICAgJjo6YWZ0ZXIge1xuICAgICAgICAgIGJvcmRlci10b3AtY29sb3I6ICRidXR0b24tYmFja2dyb3VuZDtcbiAgICAgICAgfVxuXG4gICAgICAgIEBlYWNoICRuYW1lLCAkY29sb3IgaW4gJGJ1dHRvbi1wYWxldHRlIHtcbiAgICAgICAgICAmLiN7JG5hbWV9IHtcbiAgICAgICAgICAgICY6OmFmdGVyIHtcbiAgICAgICAgICAgICAgYm9yZGVyLXRvcC1jb2xvcjogJGNvbG9yO1xuICAgICAgICAgICAgfVxuICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cblxuICAgIC8vIEJ1dHRvbiB3aXRoIGRyb3Bkb3duIGFycm93IG9ubHlcbiAgICAmLmFycm93LW9ubHk6OmFmdGVyIHtcbiAgICAgIHRvcDogLTAuMWVtO1xuICAgICAgZmxvYXQ6IG5vbmU7XG4gICAgICBtYXJnaW4tI3skZ2xvYmFsLWxlZnR9OiAwO1xuICAgIH1cbiAgfVxufVxuIiwiLy8gRm91bmRhdGlvbiBmb3IgU2l0ZXMgYnkgWlVSQlxuLy8gZm91bmRhdGlvbi56dXJiLmNvbVxuLy8gTGljZW5zZWQgdW5kZXIgTUlUIE9wZW4gU291cmNlXG5cbi8vLy9cbi8vLyBAZ3JvdXAgZm9ybXNcbi8vLy9cblxuLy8vIEZvbnQgY29sb3Igb2YgdGV4dCBpbnB1dHMuXG4vLy8gQHR5cGUgQ29sb3JcbiRpbnB1dC1jb2xvcjogJGJsYWNrICFkZWZhdWx0O1xuXG4vLy8gRm9udCBjb2xvciBvZiBwbGFjZWhvbGRlciB0ZXh0IHdpdGhpbiB0ZXh0IGlucHV0cy5cbi8vLyBAdHlwZSBDb2xvclxuJGlucHV0LXBsYWNlaG9sZGVyLWNvbG9yOiAjNzk3OTZBICFkZWZhdWx0O1xuXG4vLy8gRm9udCBmYW1pbHkgb2YgdGV4dCBpbnB1dHMuXG4vLy8gQHR5cGUgRm9udFxuJGlucHV0LWZvbnQtZmFtaWx5OiBpbmhlcml0ICFkZWZhdWx0O1xuXG4vLy8gRm9udCBzaXplIG9mIHRleHQgaW5wdXRzLlxuLy8vIEB0eXBlIE51bWJlclxuJGlucHV0LWZvbnQtc2l6ZTogcmVtLWNhbGMoMTYpICFkZWZhdWx0O1xuXG4vLy8gRm9udCB3ZWlnaHQgb2YgdGV4dCBpbnB1dHMuXG4vLy8gQHR5cGUgS2V5d29yZFxuJGlucHV0LWZvbnQtd2VpZ2h0OiAkZ2xvYmFsLXdlaWdodC1ub3JtYWwgIWRlZmF1bHQ7XG5cbi8vLyBMaW5lIGhlaWdodCBvZiB0ZXh0IGlucHV0cy5cbi8vLyBAdHlwZSBLZXl3b3JkXG4kaW5wdXQtbGluZS1oZWlnaHQ6ICRnbG9iYWwtbGluZWhlaWdodCAhZGVmYXVsdDtcblxuLy8vIEJhY2tncm91bmQgY29sb3Igb2YgdGV4dCBpbnB1dHMuXG4vLy8gQHR5cGUgQ29sb3JcbiRpbnB1dC1iYWNrZ3JvdW5kOiAkd2hpdGUgIWRlZmF1bHQ7XG5cbi8vLyBCYWNrZ3JvdW5kIGNvbG9yIG9mIGZvY3VzZWQgb2YgdGV4dCBpbnB1dHMuXG4vLy8gQHR5cGUgQ29sb3JcbiRpbnB1dC1iYWNrZ3JvdW5kLWZvY3VzOiAkd2hpdGUgIWRlZmF1bHQ7XG5cbi8vLyBCYWNrZ3JvdW5kIGNvbG9yIG9mIGRpc2FibGVkIHRleHQgaW5wdXRzLlxuLy8vIEB0eXBlIENvbG9yXG4kaW5wdXQtYmFja2dyb3VuZC1kaXNhYmxlZDogJGxpZ2h0LWdyYXkgIWRlZmF1bHQ7XG5cbi8vLyBCb3JkZXIgYXJvdW5kIHRleHQgaW5wdXRzLlxuLy8vIEB0eXBlIEJvcmRlclxuJGlucHV0LWJvcmRlcjogMXB4IHNvbGlkICRtZWRpdW0tZ3JheSAhZGVmYXVsdDtcblxuLy8vIEJvcmRlciBhcm91bmQgZm9jdXNlZCB0ZXh0IGlucHV0cy5cbi8vLyBAdHlwZSBDb2xvclxuJGlucHV0LWJvcmRlci1mb2N1czogMXB4IHNvbGlkICRkYXJrLWdyYXkgIWRlZmF1bHQ7XG5cbi8vLyBQYWRkaW5nIG9mIHRleHQgaW5wdXRzLlxuLy8vIEB0eXBlIENvbG9yXG4kaW5wdXQtcGFkZGluZzogJGZvcm0tc3BhY2luZyAvIDIgIWRlZmF1bHQ7XG5cbi8vLyBCb3ggc2hhZG93IGluc2lkZSB0ZXh0IGlucHV0cyB3aGVuIG5vdCBmb2N1c2VkLlxuLy8vIEB0eXBlIFNoYWRvd1xuJGlucHV0LXNoYWRvdzogaW5zZXQgMCAxcHggMnB4IHJnYmEoJGJsYWNrLCAwLjEpICFkZWZhdWx0O1xuXG4vLy8gQm94IHNoYWRvdyBvdXRzaWRlIHRleHQgaW5wdXRzIHdoZW4gZm9jdXNlZC5cbi8vLyBAdHlwZSBTaGFkb3dcbiRpbnB1dC1zaGFkb3ctZm9jdXM6IDAgMCA1cHggJG1lZGl1bS1ncmF5ICFkZWZhdWx0O1xuXG4vLy8gQ3Vyc29yIHRvIHVzZSB3aGVuIGhvdmVyaW5nIG92ZXIgYSBkaXNhYmxlZCB0ZXh0IGlucHV0LlxuLy8vIEB0eXBlIEN1cnNvclxuJGlucHV0LWN1cnNvci1kaXNhYmxlZDogbm90LWFsbG93ZWQgIWRlZmF1bHQ7XG5cbi8vLyBQcm9wZXJ0aWVzIHRvIHRyYW5zaXRpb24gb24gdGV4dCBpbnB1dHMuXG4vLy8gQHR5cGUgVHJhbnNpdGlvblxuJGlucHV0LXRyYW5zaXRpb246IGJveC1zaGFkb3cgMC41cywgYm9yZGVyLWNvbG9yIDAuMjVzIGVhc2UtaW4tb3V0ICFkZWZhdWx0O1xuXG4vLy8gRW5hYmxlcyB0aGUgdXAvZG93biBidXR0b25zIHRoYXQgQ2hyb21lIGFuZCBGaXJlZm94IGFkZCB0byBgPGlucHV0IHR5cGU9J251bWJlcic+YCBlbGVtZW50cy5cbi8vLyBAdHlwZSBCb29sZWFuXG4kaW5wdXQtbnVtYmVyLXNwaW5uZXJzOiB0cnVlICFkZWZhdWx0O1xuXG4vLy8gUmFkaXVzIGZvciB0ZXh0IGlucHV0cy5cbi8vLyBAdHlwZSBCb3JkZXJcbiRpbnB1dC1yYWRpdXM6ICRnbG9iYWwtcmFkaXVzICFkZWZhdWx0O1xuXG4vLy8gQm9yZGVyIHJhZGl1cyBmb3IgZm9ybSBidXR0b25zLCBkZWZhdWx0ZWQgdG8gZ2xvYmFsLXJhZGl1cy5cbi8vLyBAdHlwZSBOdW1iZXJcbiRmb3JtLWJ1dHRvbi1yYWRpdXM6ICRnbG9iYWwtcmFkaXVzICFkZWZhdWx0O1xuXG5AbWl4aW4gZm9ybS1lbGVtZW50IHtcbiAgJGhlaWdodDogKCRpbnB1dC1mb250LXNpemUgKiB1bml0bGVzcy1jYWxjKCRpbnB1dC1saW5lLWhlaWdodCkpICsgKGdldC1zaWRlKCRpbnB1dC1wYWRkaW5nLCAndG9wJykgKyBnZXQtc2lkZSgkaW5wdXQtcGFkZGluZywgJ2JvdHRvbScpKSAtIHJlbS1jYWxjKDEpO1xuXG4gIGRpc3BsYXk6IGJsb2NrO1xuICBib3gtc2l6aW5nOiBib3JkZXItYm94O1xuICB3aWR0aDogMTAwJTtcbiAgaGVpZ2h0OiAkaGVpZ2h0O1xuICBtYXJnaW46IDAgMCAkZm9ybS1zcGFjaW5nO1xuICBwYWRkaW5nOiAkaW5wdXQtcGFkZGluZztcblxuICBib3JkZXI6ICRpbnB1dC1ib3JkZXI7XG4gIGJvcmRlci1yYWRpdXM6ICRpbnB1dC1yYWRpdXM7XG4gIGJhY2tncm91bmQtY29sb3I6ICRpbnB1dC1iYWNrZ3JvdW5kO1xuICBib3gtc2hhZG93OiAkaW5wdXQtc2hhZG93O1xuXG4gIGZvbnQtZmFtaWx5OiAkaW5wdXQtZm9udC1mYW1pbHk7XG4gIGZvbnQtc2l6ZTogJGlucHV0LWZvbnQtc2l6ZTtcbiAgZm9udC13ZWlnaHQ6ICRpbnB1dC1mb250LXdlaWdodDtcbiAgbGluZS1oZWlnaHQ6ICRpbnB1dC1saW5lLWhlaWdodDtcbiAgY29sb3I6ICRpbnB1dC1jb2xvcjtcblxuICBAaWYgaGFzLXZhbHVlKCRpbnB1dC10cmFuc2l0aW9uKSB7XG4gICAgdHJhbnNpdGlvbjogJGlucHV0LXRyYW5zaXRpb247XG4gIH1cblxuICAvLyBGb2N1cyBzdGF0ZVxuICAmOmZvY3VzIHtcbiAgICBvdXRsaW5lOiBub25lO1xuICAgIGJvcmRlcjogJGlucHV0LWJvcmRlci1mb2N1cztcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkaW5wdXQtYmFja2dyb3VuZC1mb2N1cztcbiAgICBib3gtc2hhZG93OiAkaW5wdXQtc2hhZG93LWZvY3VzO1xuXG4gICAgQGlmIGhhcy12YWx1ZSgkaW5wdXQtdHJhbnNpdGlvbikge1xuICAgICAgdHJhbnNpdGlvbjogJGlucHV0LXRyYW5zaXRpb247XG4gICAgfVxuICB9XG59XG5cbkBtaXhpbiBmb3VuZGF0aW9uLWZvcm0tdGV4dCB7XG4gIC8vIFRleHQgaW5wdXRzXG4gICN7dGV4dC1pbnB1dHMoKX0sXG4gIHRleHRhcmVhIHtcbiAgICBAaW5jbHVkZSBmb3JtLWVsZW1lbnQ7XG4gICAgYXBwZWFyYW5jZTogbm9uZTtcbiAgfVxuXG4gIC8vIFRleHQgYXJlYXNcbiAgdGV4dGFyZWEge1xuICAgIG1heC13aWR0aDogMTAwJTtcblxuICAgICZbcm93c10ge1xuICAgICAgaGVpZ2h0OiBhdXRvO1xuICAgIH1cbiAgfVxuXG4gIGlucHV0LFxuICB0ZXh0YXJlYSB7XG4gICAgLy8gUGxhY2Vob2xkZXIgdGV4dFxuICAgICY6OnBsYWNlaG9sZGVyIHtcbiAgICAgIGNvbG9yOiAkaW5wdXQtcGxhY2Vob2xkZXItY29sb3I7XG4gICAgfVxuXG4gICAgLy8gRGlzYWJsZWQvcmVhZG9ubHkgc3RhdGVcbiAgICAmOmRpc2FibGVkLFxuICAgICZbcmVhZG9ubHldIHtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6ICRpbnB1dC1iYWNrZ3JvdW5kLWRpc2FibGVkO1xuICAgICAgY3Vyc29yOiAkaW5wdXQtY3Vyc29yLWRpc2FibGVkO1xuICAgIH1cbiAgfVxuXG4gIC8vIFJlc2V0IHN0eWxlcyBvbiBidXR0b24tbGlrZSBpbnB1dHNcbiAgW3R5cGU9J3N1Ym1pdCddLFxuICBbdHlwZT0nYnV0dG9uJ10ge1xuICAgIGFwcGVhcmFuY2U6IG5vbmU7XG4gICAgYm9yZGVyLXJhZGl1czogJGZvcm0tYnV0dG9uLXJhZGl1cztcbiAgfVxuXG4gIC8vIFJlc2V0IE5vcm1hbGl6ZSBzZXR0aW5nIGNvbnRlbnQtYm94IHRvIHNlYXJjaCBlbGVtZW50c1xuICBpbnB1dFt0eXBlPSdzZWFyY2gnXSB7IC8vIHNhc3MtbGludDpkaXNhYmxlLWxpbmUgbm8tcXVhbGlmeWluZy1lbGVtZW50c1xuICAgIGJveC1zaXppbmc6IGJvcmRlci1ib3g7XG4gIH1cblxuICAvLyBOdW1iZXIgaW5wdXQgc3R5bGVzXG4gIFt0eXBlPSdudW1iZXInXSB7XG4gICAgQGlmIG5vdCAkaW5wdXQtbnVtYmVyLXNwaW5uZXJzIHtcbiAgICAgIC1tb3otYXBwZWFyYW5jZTogdGV4dGZpZWxkOyAvLyBzYXNzLWxpbnQ6ZGlzYWJsZS1saW5lIG5vLXZlbmRvci1wcmVmaXhcblxuICAgICAgJjo6LXdlYmtpdC1pbm5lci1zcGluLWJ1dHRvbixcbiAgICAgICY6Oi13ZWJraXQtb3V0ZXItc3Bpbi1idXR0b24ge1xuICAgICAgICAtd2Via2l0LWFwcGVhcmFuY2U6IG5vbmU7IC8vIHNhc3MtbGludDpkaXNhYmxlLWxpbmUgbm8tdmVuZG9yLXByZWZpeFxuICAgICAgICBtYXJnaW46IDA7XG4gICAgICB9XG4gICAgfVxuICB9XG59XG4iLCIvLyBGb3VuZGF0aW9uIGZvciBTaXRlcyBieSBaVVJCXG4vLyBmb3VuZGF0aW9uLnp1cmIuY29tXG4vLyBMaWNlbnNlZCB1bmRlciBNSVQgT3BlbiBTb3VyY2VcblxuLy8vL1xuLy8vIEBncm91cCBmb3Jtc1xuLy8vL1xuXG5AbWl4aW4gZm91bmRhdGlvbi1mb3JtLWNoZWNrYm94IHtcbiAgW3R5cGU9J2ZpbGUnXSxcbiAgW3R5cGU9J2NoZWNrYm94J10sXG4gIFt0eXBlPSdyYWRpbyddIHtcbiAgICBtYXJnaW46IDAgMCAkZm9ybS1zcGFjaW5nO1xuICB9XG5cbiAgLy8gU3R5bGVzIGZvciBpbnB1dC9sYWJlbCBzaWJsaW5nc1xuICBbdHlwZT0nY2hlY2tib3gnXSArIGxhYmVsLFxuICBbdHlwZT0ncmFkaW8nXSArIGxhYmVsIHtcbiAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgdmVydGljYWwtYWxpZ246IGJhc2VsaW5lO1xuXG4gICAgbWFyZ2luLSN7JGdsb2JhbC1sZWZ0fTogJGZvcm0tc3BhY2luZyAqIDAuNTtcbiAgICBtYXJnaW4tI3skZ2xvYmFsLXJpZ2h0fTogJGZvcm0tc3BhY2luZztcbiAgICBtYXJnaW4tYm90dG9tOiAwO1xuXG4gICAgJltmb3JdIHtcbiAgICAgIGN1cnNvcjogcG9pbnRlcjtcbiAgICB9XG4gIH1cblxuICAvLyBTdHlsZXMgZm9yIGlucHV0cyBpbnNpZGUgbGFiZWxzXG4gIGxhYmVsID4gW3R5cGU9J2NoZWNrYm94J10sXG4gIGxhYmVsID4gW3R5cGU9J3JhZGlvJ10ge1xuICAgIG1hcmdpbi0jeyRnbG9iYWwtcmlnaHR9OiAkZm9ybS1zcGFjaW5nICogMC41O1xuICB9XG5cbiAgLy8gTm9ybWFsaXplIGZpbGUgaW5wdXQgd2lkdGhcbiAgW3R5cGU9J2ZpbGUnXSB7XG4gICAgd2lkdGg6IDEwMCU7XG4gIH1cbn1cbiIsIi8vIEZvdW5kYXRpb24gZm9yIFNpdGVzIGJ5IFpVUkJcbi8vIGZvdW5kYXRpb24uenVyYi5jb21cbi8vIExpY2Vuc2VkIHVuZGVyIE1JVCBPcGVuIFNvdXJjZVxuXG4vLy8vXG4vLy8gQGdyb3VwIGZvcm1zXG4vLy8vXG5cbi8vLyBDb2xvciBmb3IgZm9ybSBsYWJlbHMuXG4vLy8gQHR5cGUgQ29sb3JcbiRmb3JtLWxhYmVsLWNvbG9yOiAkYmxhY2sgIWRlZmF1bHQ7XG5cbi8vLyBGb250IHNpemUgZm9yIGZvcm0gbGFiZWxzLlxuLy8vIEB0eXBlIE51bWJlclxuJGZvcm0tbGFiZWwtZm9udC1zaXplOiByZW0tY2FsYygxNCkgIWRlZmF1bHQ7XG5cbi8vLyBGb250IHdlaWdodCBmb3IgZm9ybSBsYWJlbHMuXG4vLy8gQHR5cGUgS2V5d29yZFxuJGZvcm0tbGFiZWwtZm9udC13ZWlnaHQ6ICRnbG9iYWwtd2VpZ2h0LW5vcm1hbCAhZGVmYXVsdDtcblxuLy8vIExpbmUgaGVpZ2h0IGZvciBmb3JtIGxhYmVscy4gVGhlIGhpZ2hlciB0aGUgbnVtYmVyLCB0aGUgbW9yZSBzcGFjZSBiZXR3ZWVuIHRoZSBsYWJlbCBhbmQgaXRzIGlucHV0IGZpZWxkLlxuLy8vIEB0eXBlIE51bWJlclxuJGZvcm0tbGFiZWwtbGluZS1oZWlnaHQ6IDEuOCAhZGVmYXVsdDtcblxuQG1peGluIGZvcm0tbGFiZWwge1xuICBkaXNwbGF5OiBibG9jaztcbiAgbWFyZ2luOiAwO1xuXG4gIGZvbnQtc2l6ZTogJGZvcm0tbGFiZWwtZm9udC1zaXplO1xuICBmb250LXdlaWdodDogJGZvcm0tbGFiZWwtZm9udC13ZWlnaHQ7XG4gIGxpbmUtaGVpZ2h0OiAkZm9ybS1sYWJlbC1saW5lLWhlaWdodDtcbiAgY29sb3I6ICRmb3JtLWxhYmVsLWNvbG9yO1xufVxuXG5AbWl4aW4gZm9ybS1sYWJlbC1taWRkbGUge1xuICAkaW5wdXQtYm9yZGVyLXdpZHRoOiBnZXQtYm9yZGVyLXZhbHVlKCRpbnB1dC1ib3JkZXIsIHdpZHRoKTtcblxuICBtYXJnaW46IDAgMCAkZm9ybS1zcGFjaW5nO1xuICBwYWRkaW5nOiAoJGZvcm0tc3BhY2luZyAvIDIgKyByZW0tY2FsYygkaW5wdXQtYm9yZGVyLXdpZHRoKSkgMDtcbn1cblxuQG1peGluIGZvdW5kYXRpb24tZm9ybS1sYWJlbCB7XG4gIGxhYmVsIHtcbiAgICBAaW5jbHVkZSBmb3JtLWxhYmVsO1xuXG4gICAgJi5taWRkbGUge1xuICAgICAgQGluY2x1ZGUgZm9ybS1sYWJlbC1taWRkbGU7XG4gICAgfVxuICB9XG59XG4iLCIvLyBGb3VuZGF0aW9uIGZvciBTaXRlcyBieSBaVVJCXG4vLyBmb3VuZGF0aW9uLnp1cmIuY29tXG4vLyBMaWNlbnNlZCB1bmRlciBNSVQgT3BlbiBTb3VyY2VcblxuLy8vL1xuLy8vIEBncm91cCBmb3Jtc1xuLy8vL1xuXG4vLy8gRGVmYXVsdCBjb2xvciBmb3IgaGVscCB0ZXh0LlxuLy8vIEB0eXBlIENvbG9yXG4kaGVscHRleHQtY29sb3I6ICRibGFjayAhZGVmYXVsdDtcblxuLy8vIERlZmF1bHQgZm9udCBzaXplIGZvciBoZWxwIHRleHQuXG4vLy8gQHR5cGUgTnVtYmVyXG4kaGVscHRleHQtZm9udC1zaXplOiByZW0tY2FsYygxMykgIWRlZmF1bHQ7XG5cbi8vLyBEZWZhdWx0IGZvbnQgc3R5bGUgZm9yIGhlbHAgdGV4dC5cbi8vLyBAdHlwZSBLZXl3b3JkXG4kaGVscHRleHQtZm9udC1zdHlsZTogaXRhbGljICFkZWZhdWx0O1xuXG5AbWl4aW4gZm91bmRhdGlvbi1mb3JtLWhlbHB0ZXh0IHtcbiAgLmhlbHAtdGV4dCB7XG4gICAgJG1hcmdpbi10b3A6ICgkZm9ybS1zcGFjaW5nICogMC41KSAqIC0xO1xuXG4gICAgbWFyZ2luLXRvcDogJG1hcmdpbi10b3A7XG4gICAgZm9udC1zaXplOiAkaGVscHRleHQtZm9udC1zaXplO1xuICAgIGZvbnQtc3R5bGU6ICRoZWxwdGV4dC1mb250LXN0eWxlO1xuICAgIGNvbG9yOiAkaGVscHRleHQtY29sb3I7XG4gIH1cbn1cbiIsIi8vIEZvdW5kYXRpb24gZm9yIFNpdGVzIGJ5IFpVUkJcbi8vIGZvdW5kYXRpb24uenVyYi5jb21cbi8vIExpY2Vuc2VkIHVuZGVyIE1JVCBPcGVuIFNvdXJjZVxuXG4vLy8vXG4vLy8gQGdyb3VwIGZvcm1zXG4vLy8vXG5cbi8vLyBDb2xvciBvZiBsYWJlbHMgcHJlZml4ZWQgdG8gYW4gaW5wdXQuXG4vLy8gQHR5cGUgQ29sb3JcbiRpbnB1dC1wcmVmaXgtY29sb3I6ICRibGFjayAhZGVmYXVsdDtcblxuLy8vIEJhY2tncm91bmQgY29sb3Igb2YgbGFiZWxzIHByZWZpeGVkIHRvIGFuIGlucHV0LlxuLy8vIEB0eXBlIENvbG9yXG4kaW5wdXQtcHJlZml4LWJhY2tncm91bmQ6ICRsaWdodC1ncmF5ICFkZWZhdWx0O1xuXG4vLy8gQm9yZGVyIGFyb3VuZCBsYWJlbHMgcHJlZml4ZWQgdG8gYW4gaW5wdXQuXG4vLy8gQHR5cGUgQm9yZGVyXG4kaW5wdXQtcHJlZml4LWJvcmRlcjogMXB4IHNvbGlkICRtZWRpdW0tZ3JheSAhZGVmYXVsdDtcblxuLy8vIExlZnQvcmlnaHQgcGFkZGluZyBvZiBhbiBwcmUvcG9zdGZpeGVkIGlucHV0IGxhYmVsXG4kaW5wdXQtcHJlZml4LXBhZGRpbmc6IDFyZW0gIWRlZmF1bHQ7XG5cbkBtaXhpbiBmb3VuZGF0aW9uLWZvcm0tcHJlcG9zdGZpeCB7XG4gICRoZWlnaHQ6ICgkaW5wdXQtZm9udC1zaXplICsgJGZvcm0tc3BhY2luZyAqIDEuNSk7XG5cbiAgLmlucHV0LWdyb3VwIHtcbiAgICBkaXNwbGF5OiBpZigkZ2xvYmFsLWZsZXhib3gsIGZsZXgsIHRhYmxlKTtcbiAgICB3aWR0aDogMTAwJTtcbiAgICBtYXJnaW4tYm90dG9tOiAkZm9ybS1zcGFjaW5nO1xuXG4gICAgQGlmICRnbG9iYWwtZmxleGJveCB7XG4gICAgICBhbGlnbi1pdGVtczogc3RyZXRjaDtcbiAgICB9XG5cbiAgICA+IDpmaXJzdC1jaGlsZCB7XG4gICAgICBib3JkZXItcmFkaXVzOiBpZigkZ2xvYmFsLXRleHQtZGlyZWN0aW9uID09IHJ0bCwgMCAkaW5wdXQtcmFkaXVzICRpbnB1dC1yYWRpdXMgMCwgJGlucHV0LXJhZGl1cyAwIDAgJGlucHV0LXJhZGl1cyk7XG4gICAgfVxuXG4gICAgPiA6bGFzdC1jaGlsZCB7XG4gICAgICA+ICoge1xuICAgICAgICBib3JkZXItcmFkaXVzOiBpZigkZ2xvYmFsLXRleHQtZGlyZWN0aW9uID09IHJ0bCwgJGlucHV0LXJhZGl1cyAwIDAgJGlucHV0LXJhZGl1cywgMCAkaW5wdXQtcmFkaXVzICRpbnB1dC1yYWRpdXMgMCk7XG4gICAgICB9XG4gICAgfVxuICB9XG5cbiAgJWlucHV0LWdyb3VwLWNoaWxkIHtcbiAgICBtYXJnaW46IDA7XG4gICAgd2hpdGUtc3BhY2U6IG5vd3JhcDtcblxuICAgIEBpZiBub3QgJGdsb2JhbC1mbGV4Ym94IHtcbiAgICAgIGRpc3BsYXk6IHRhYmxlLWNlbGw7XG4gICAgICB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlO1xuICAgIH1cbiAgfVxuXG4gIC5pbnB1dC1ncm91cC1sYWJlbCB7XG4gICAgQGV4dGVuZCAlaW5wdXQtZ3JvdXAtY2hpbGQ7XG4gICAgcGFkZGluZzogMCAkaW5wdXQtcHJlZml4LXBhZGRpbmc7XG4gICAgYm9yZGVyOiAkaW5wdXQtcHJlZml4LWJvcmRlcjtcbiAgICBiYWNrZ3JvdW5kOiAkaW5wdXQtcHJlZml4LWJhY2tncm91bmQ7XG5cbiAgICBjb2xvcjogJGlucHV0LXByZWZpeC1jb2xvcjtcbiAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgd2hpdGUtc3BhY2U6IG5vd3JhcDtcblxuICAgIEBpZiAkZ2xvYmFsLWZsZXhib3gge1xuICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgIGZsZXg6IDAgMCBhdXRvO1xuICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICB9XG4gICAgQGVsc2Uge1xuICAgICAgd2lkdGg6IDElO1xuICAgICAgaGVpZ2h0OiAxMDAlO1xuICAgIH1cblxuICAgIEBpZiBoYXMtdmFsdWUoJGlucHV0LXByZWZpeC1ib3JkZXIpIHtcbiAgICAgICY6Zmlyc3QtY2hpbGQge1xuICAgICAgICBib3JkZXItI3skZ2xvYmFsLXJpZ2h0fTogMDtcbiAgICAgIH1cblxuICAgICAgJjpsYXN0LWNoaWxkIHtcbiAgICAgICAgYm9yZGVyLSN7JGdsb2JhbC1sZWZ0fTogMDtcbiAgICAgIH1cbiAgICB9XG4gIH1cblxuICAuaW5wdXQtZ3JvdXAtZmllbGQge1xuICAgIEBleHRlbmQgJWlucHV0LWdyb3VwLWNoaWxkO1xuICAgIGJvcmRlci1yYWRpdXM6IDA7XG5cbiAgICBAaWYgJGdsb2JhbC1mbGV4Ym94IHtcbiAgICAgIGZsZXg6IDEgMSAwcHg7IC8vIHNhc3MtbGludDpkaXNhYmxlLWxpbmUgemVyby11bml0XG4gICAgICBoZWlnaHQ6IGF1dG87XG4gICAgICBtaW4td2lkdGg6IDA7XG4gICAgfVxuICAgIEBlbHNlIHtcbiAgICAgIGhlaWdodDogJGhlaWdodDtcbiAgICB9XG4gIH1cblxuICAuaW5wdXQtZ3JvdXAtYnV0dG9uIHtcbiAgICBAZXh0ZW5kICVpbnB1dC1ncm91cC1jaGlsZDtcbiAgICBwYWRkaW5nLXRvcDogMDtcbiAgICBwYWRkaW5nLWJvdHRvbTogMDtcbiAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG5cbiAgICBAaWYgJGdsb2JhbC1mbGV4Ym94IHtcbiAgICAgIGZsZXg6IDAgMCBhdXRvO1xuICAgIH1cbiAgICBAZWxzZSB7XG4gICAgICB3aWR0aDogMSU7XG4gICAgICBoZWlnaHQ6IDEwMCU7XG4gICAgfVxuXG4gICAgYSxcbiAgICBpbnB1dCxcbiAgICBidXR0b24sXG4gICAgbGFiZWwge1xuICAgICAgQGV4dGVuZCAlaW5wdXQtZ3JvdXAtY2hpbGQ7XG4gICAgICBoZWlnaHQ6ICRoZWlnaHQ7XG4gICAgICBwYWRkaW5nLXRvcDogMDtcbiAgICAgIHBhZGRpbmctYm90dG9tOiAwO1xuXG4gICAgICBmb250LXNpemU6ICRpbnB1dC1mb250LXNpemU7XG4gICAgfVxuICB9XG5cbiAgLy8gU3BlY2lmaWNpdHkgYnVtcCBuZWVkZWQgdG8gcHJldmVudCBvdmVycmlkZSBieSBidXR0b25zXG4gIEBpZiBub3QgJGdsb2JhbC1mbGV4Ym94IHtcbiAgICAgIC5pbnB1dC1ncm91cCAuaW5wdXQtZ3JvdXAtYnV0dG9uIHtcbiAgICAgICAgICBkaXNwbGF5OiB0YWJsZS1jZWxsO1xuICAgICAgfVxuICB9XG59XG4iLCIvLyBGb3VuZGF0aW9uIGZvciBTaXRlcyBieSBaVVJCXG4vLyBmb3VuZGF0aW9uLnp1cmIuY29tXG4vLyBMaWNlbnNlZCB1bmRlciBNSVQgT3BlbiBTb3VyY2VcblxuLy8vL1xuLy8vIEBncm91cCBmb3Jtc1xuLy8vL1xuXG4vLy8gRGVmYXVsdCBib3JkZXIgYXJvdW5kIGN1c3RvbSBmaWVsZHNldHMuXG4vLy8gQHR5cGUgQm9yZGVyXG4kZmllbGRzZXQtYm9yZGVyOiAxcHggc29saWQgJG1lZGl1bS1ncmF5ICFkZWZhdWx0O1xuXG4vLy8gRGVmYXVsdCBwYWRkaW5nIGluc2lkZSBjdXN0b20gZmllbGRzZXRzLlxuLy8vIEB0eXBlIE51bWJlclxuJGZpZWxkc2V0LXBhZGRpbmc6IHJlbS1jYWxjKDIwKSAhZGVmYXVsdDtcblxuLy8vIERlZmF1bHQgbWFyZ2luIGFyb3VuZCBjdXN0b20gZmllbGRzZXRzLlxuLy8vIEB0eXBlIE51bWJlclxuJGZpZWxkc2V0LW1hcmdpbjogcmVtLWNhbGMoMTggMCkgIWRlZmF1bHQ7XG5cbi8vLyBEZWZhdWx0IHBhZGRpbmcgYmV0d2VlbiB0aGUgbGVnZW5kIHRleHQgYW5kIGZpZWxkc2V0IGJvcmRlci5cbi8vLyBAdHlwZSBOdW1iZXJcbiRsZWdlbmQtcGFkZGluZzogcmVtLWNhbGMoMCAzKSAhZGVmYXVsdDtcblxuQG1peGluIGZpZWxkc2V0IHtcbiAgbWFyZ2luOiAkZmllbGRzZXQtbWFyZ2luO1xuICBwYWRkaW5nOiAkZmllbGRzZXQtcGFkZGluZztcbiAgYm9yZGVyOiAkZmllbGRzZXQtYm9yZGVyO1xuXG4gIGxlZ2VuZCB7XG4gICAgLy8gQ292ZXJzIHVwIHRoZSBmaWVsZHNldCdzIGJvcmRlciB0byBjcmVhdGUgYXJ0aWZpY2lhbCBwYWRkaW5nXG4gICAgbWFyZ2luOiAwO1xuICAgIG1hcmdpbi0jeyRnbG9iYWwtbGVmdH06IHJlbS1jYWxjKC0zKTtcbiAgICBwYWRkaW5nOiAkbGVnZW5kLXBhZGRpbmc7XG4gIH1cbn1cblxuQG1peGluIGZvdW5kYXRpb24tZm9ybS1maWVsZHNldCB7XG4gIGZpZWxkc2V0IHtcbiAgICBtYXJnaW46IDA7XG4gICAgcGFkZGluZzogMDtcbiAgICBib3JkZXI6IDA7XG4gIH1cblxuICBsZWdlbmQge1xuICAgIG1heC13aWR0aDogMTAwJTtcbiAgICBtYXJnaW4tYm90dG9tOiAkZm9ybS1zcGFjaW5nICogMC41O1xuICB9XG5cbiAgLmZpZWxkc2V0IHtcbiAgICBAaW5jbHVkZSBmaWVsZHNldDtcbiAgfVxufVxuIiwiLy8gRm91bmRhdGlvbiBmb3IgU2l0ZXMgYnkgWlVSQlxuLy8gZm91bmRhdGlvbi56dXJiLmNvbVxuLy8gTGljZW5zZWQgdW5kZXIgTUlUIE9wZW4gU291cmNlXG5cbi8vLy9cbi8vLyBAZ3JvdXAgZm9ybXNcbi8vLy9cblxuLy8vIEJhY2tncm91bmQgY29sb3IgZm9yIHNlbGVjdCBtZW51cy5cbi8vLyBAdHlwZSBDb2xvclxuJHNlbGVjdC1iYWNrZ3JvdW5kOiAkd2hpdGUgIWRlZmF1bHQ7XG5cbi8vLyBDb2xvciBvZiB0aGUgZHJvcGRvd24gdHJpYW5nbGUgaW5zaWRlIHNlbGVjdCBtZW51cy4gU2V0IHRvIGB0cmFuc3BhcmVudGAgdG8gcmVtb3ZlIGl0IGVudGlyZWx5LlxuLy8vIEB0eXBlIENvbG9yXG4kc2VsZWN0LXRyaWFuZ2xlLWNvbG9yOiAkZGFyay1ncmF5ICFkZWZhdWx0O1xuXG4vLy8gRGVmYXVsdCByYWRpdXMgZm9yIHNlbGVjdCBtZW51cy5cbi8vLyBAdHlwZSBDb2xvclxuJHNlbGVjdC1yYWRpdXM6ICRnbG9iYWwtcmFkaXVzICFkZWZhdWx0O1xuXG5AbWl4aW4gZm9ybS1zZWxlY3Qge1xuICAkaGVpZ2h0OiAoJGlucHV0LWZvbnQtc2l6ZSAqIHVuaXRsZXNzLWNhbGMoJGlucHV0LWxpbmUtaGVpZ2h0KSkgKyAoZ2V0LXNpZGUoJGlucHV0LXBhZGRpbmcsICd0b3AnKSArIGdldC1zaWRlKCRpbnB1dC1wYWRkaW5nLCAnYm90dG9tJykpIC0gcmVtLWNhbGMoMSk7XG5cbiAgaGVpZ2h0OiAkaGVpZ2h0O1xuICBtYXJnaW46IDAgMCAkZm9ybS1zcGFjaW5nO1xuICBwYWRkaW5nOiAkaW5wdXQtcGFkZGluZztcblxuICBhcHBlYXJhbmNlOiBub25lO1xuICBib3JkZXI6ICRpbnB1dC1ib3JkZXI7XG4gIGJvcmRlci1yYWRpdXM6ICRzZWxlY3QtcmFkaXVzO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAkc2VsZWN0LWJhY2tncm91bmQ7XG5cbiAgZm9udC1mYW1pbHk6ICRpbnB1dC1mb250LWZhbWlseTtcbiAgZm9udC1zaXplOiAkaW5wdXQtZm9udC1zaXplO1xuICBmb250LXdlaWdodDogJGlucHV0LWZvbnQtd2VpZ2h0O1xuICBsaW5lLWhlaWdodDogJGlucHV0LWxpbmUtaGVpZ2h0O1xuICBjb2xvcjogJGlucHV0LWNvbG9yO1xuXG4gIEBpZiAkc2VsZWN0LXRyaWFuZ2xlLWNvbG9yICE9IHRyYW5zcGFyZW50IHtcbiAgICBAaW5jbHVkZSBiYWNrZ3JvdW5kLXRyaWFuZ2xlKCRzZWxlY3QtdHJpYW5nbGUtY29sb3IpO1xuICAgIGJhY2tncm91bmQtb3JpZ2luOiBjb250ZW50LWJveDtcbiAgICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiAkZ2xvYmFsLXJpZ2h0ICgtJGZvcm0tc3BhY2luZykgY2VudGVyO1xuICAgIGJhY2tncm91bmQtcmVwZWF0OiBuby1yZXBlYXQ7XG4gICAgYmFja2dyb3VuZC1zaXplOiA5cHggNnB4O1xuXG4gICAgcGFkZGluZy0jeyRnbG9iYWwtcmlnaHR9OiAoJGZvcm0tc3BhY2luZyAqIDEuNSk7XG4gIH1cblxuICBAaWYgaGFzLXZhbHVlKCRpbnB1dC10cmFuc2l0aW9uKSB7XG4gICAgdHJhbnNpdGlvbjogJGlucHV0LXRyYW5zaXRpb247XG4gIH1cblxuICAvLyBGb2N1cyBzdGF0ZVxuICAmOmZvY3VzIHtcbiAgICBvdXRsaW5lOiBub25lO1xuICAgIGJvcmRlcjogJGlucHV0LWJvcmRlci1mb2N1cztcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkaW5wdXQtYmFja2dyb3VuZC1mb2N1cztcbiAgICBib3gtc2hhZG93OiAkaW5wdXQtc2hhZG93LWZvY3VzO1xuXG4gICAgQGlmIGhhcy12YWx1ZSgkaW5wdXQtdHJhbnNpdGlvbikge1xuICAgICAgdHJhbnNpdGlvbjogJGlucHV0LXRyYW5zaXRpb247XG4gICAgfVxuICB9XG5cbiAgLy8gRGlzYWJsZWQgc3RhdGVcbiAgJjpkaXNhYmxlZCB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogJGlucHV0LWJhY2tncm91bmQtZGlzYWJsZWQ7XG4gICAgY3Vyc29yOiAkaW5wdXQtY3Vyc29yLWRpc2FibGVkO1xuICB9XG5cbiAgLy8gSGlkZSB0aGUgZHJvcGRvd24gYXJyb3cgc2hvd24gaW4gbmV3ZXIgSUUgdmVyc2lvbnNcbiAgJjo6LW1zLWV4cGFuZCB7XG4gICAgZGlzcGxheTogbm9uZTtcbiAgfVxuXG4gICZbbXVsdGlwbGVdIHtcbiAgICBoZWlnaHQ6IGF1dG87XG4gICAgYmFja2dyb3VuZC1pbWFnZTogbm9uZTtcbiAgfVxufVxuXG5AbWl4aW4gZm91bmRhdGlvbi1mb3JtLXNlbGVjdCB7XG4gIHNlbGVjdCB7XG4gICAgQGluY2x1ZGUgZm9ybS1zZWxlY3Q7XG4gIH1cbn1cbiIsIi8vIEZvdW5kYXRpb24gZm9yIFNpdGVzIGJ5IFpVUkJcbi8vIGZvdW5kYXRpb24uenVyYi5jb21cbi8vIExpY2Vuc2VkIHVuZGVyIE1JVCBPcGVuIFNvdXJjZVxuXG4vLy8vXG4vLy8gQGdyb3VwIGFiaWRlXG4vLy8vXG5cbi8vLyBTZXRzIGlmIGVycm9yIHN0eWxlcyBzaG91bGQgYmUgYWRkZWQgdG8gaW5wdXRzLlxuLy8vIEB0eXBlIEJvb2xlYW5cbiRhYmlkZS1pbnB1dHM6IHRydWUgIWRlZmF1bHQ7XG5cbi8vLyBTZXRzIGlmIGVycm9yIHN0eWxlcyBzaG91bGQgYmUgYWRkZWQgdG8gbGFiZWxzLlxuLy8vIEB0eXBlIEJvb2xlYW5cbiRhYmlkZS1sYWJlbHM6IHRydWUgIWRlZmF1bHQ7XG5cbi8vLyBCYWNrZ3JvdW5kIGNvbG9yIHRvIHVzZSBmb3IgaW52YWxpZCB0ZXh0IGlucHV0cy5cbi8vLyBAdHlwZSBDb2xvclxuJGlucHV0LWJhY2tncm91bmQtaW52YWxpZDogZ2V0LWNvbG9yKGFsZXJ0KSAhZGVmYXVsdDtcblxuLy8vIENvbG9yIHRvIHVzZSBmb3IgbGFiZWxzIG9mIGludmFsaWQgaW5wdXRzLlxuLy8vIEB0eXBlIENvbG9yXG4kZm9ybS1sYWJlbC1jb2xvci1pbnZhbGlkOiBnZXQtY29sb3IoYWxlcnQpICFkZWZhdWx0O1xuXG4vLy8gRGVmYXVsdCBmb250IGNvbG9yIGZvciBmb3JtIGVycm9yIHRleHQuXG4vLy8gQHR5cGUgQ29sb3JcbiRpbnB1dC1lcnJvci1jb2xvcjogZ2V0LWNvbG9yKGFsZXJ0KSAhZGVmYXVsdDtcblxuLy8vIERlZmF1bHQgZm9udCBzaXplIGZvciBmb3JtIGVycm9yIHRleHQuXG4vLy8gQHR5cGUgTnVtYmVyXG4kaW5wdXQtZXJyb3ItZm9udC1zaXplOiByZW0tY2FsYygxMikgIWRlZmF1bHQ7XG5cbi8vLyBEZWZhdWx0IGZvbnQgd2VpZ2h0IGZvciBmb3JtIGVycm9yIHRleHQuXG4vLy8gQHR5cGUgS2V5d29yZFxuJGlucHV0LWVycm9yLWZvbnQtd2VpZ2h0OiAkZ2xvYmFsLXdlaWdodC1ib2xkICFkZWZhdWx0O1xuXG4vLy8gU3R5bGVzIHRoZSBiYWNrZ3JvdW5kIGFuZCBib3JkZXIgb2YgYW4gaW5wdXQgZmllbGQgdG8gaGF2ZSBhbiBlcnJvciBzdGF0ZS5cbi8vL1xuLy8vIEBwYXJhbSB7Q29sb3J9ICRiYWNrZ3JvdW5kIFskYWxlcnQtY29sb3JdIC0gQ29sb3IgdG8gdXNlIGZvciB0aGUgYmFja2dyb3VuZCBhbmQgYm9yZGVyLlxuLy8vIEBwYXJhbSB7TnVtYmVyfSAkYmFja2dyb3VuZC1saWdodGVuIFsxMCVdIC0gTGlnaHRuZXNzIGxldmVsIG9mIHRoZSBiYWNrZ3JvdW5kIGNvbG9yLlxuQG1peGluIGZvcm0taW5wdXQtZXJyb3IoXG4gICRiYWNrZ3JvdW5kOiAkaW5wdXQtYmFja2dyb3VuZC1pbnZhbGlkLFxuICAkYmFja2dyb3VuZC1saWdodGVuOiAxMCVcbikge1xuICAmOm5vdCg6Zm9jdXMpIHtcbiAgICBib3JkZXItY29sb3I6ICRiYWNrZ3JvdW5kO1xuICAgIGJhY2tncm91bmQtY29sb3I6IG1peCgkYmFja2dyb3VuZCwgJHdoaXRlLCAkYmFja2dyb3VuZC1saWdodGVuKTtcbiAgICAmOjpwbGFjZWhvbGRlciB7XG4gICAgICBjb2xvcjogJGJhY2tncm91bmQ7XG4gICAgfVxuICB9XG59XG5cbi8vLyBBZGRzIGVycm9yIHN0eWxlcyB0byBhIGZvcm0gZWxlbWVudCwgdXNpbmcgdGhlIHZhbHVlcyBpbiB0aGUgc2V0dGluZ3MgZmlsZS5cbkBtaXhpbiBmb3JtLWVycm9yIHtcbiAgZGlzcGxheTogbm9uZTtcbiAgbWFyZ2luLXRvcDogJGZvcm0tc3BhY2luZyAqIC0wLjU7XG4gIG1hcmdpbi1ib3R0b206ICRmb3JtLXNwYWNpbmc7XG5cbiAgZm9udC1zaXplOiAkaW5wdXQtZXJyb3ItZm9udC1zaXplO1xuICBmb250LXdlaWdodDogJGlucHV0LWVycm9yLWZvbnQtd2VpZ2h0O1xuICBjb2xvcjogJGlucHV0LWVycm9yLWNvbG9yO1xufVxuXG5AbWl4aW4gZm91bmRhdGlvbi1mb3JtLWVycm9yIHtcbiAgQGlmICRhYmlkZS1pbnB1dHMge1xuICAgIC8vIEVycm9yIGNsYXNzIGZvciBpbnZhbGlkIGlucHV0c1xuICAgIC5pcy1pbnZhbGlkLWlucHV0IHtcbiAgICAgIEBpbmNsdWRlIGZvcm0taW5wdXQtZXJyb3I7XG4gICAgfVxuICB9XG5cbiAgQGlmICRhYmlkZS1sYWJlbHMge1xuICAgIC8vIEVycm9yIGNsYXNzIGZvciBsYWJlbHMgb2YgaW52YWxpZCBvdXRwdXRzXG4gICAgLmlzLWludmFsaWQtbGFiZWwge1xuICAgICAgY29sb3I6ICRmb3JtLWxhYmVsLWNvbG9yLWludmFsaWQ7XG4gICAgfVxuICB9XG5cbiAgLy8gRm9ybSBlcnJvciBlbGVtZW50XG4gIC5mb3JtLWVycm9yIHtcbiAgICBAaW5jbHVkZSBmb3JtLWVycm9yO1xuXG4gICAgJi5pcy12aXNpYmxlIHtcbiAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIH1cbiAgfVxufVxuIiwiLy8gRm91bmRhdGlvbiBmb3IgU2l0ZXMgYnkgWlVSQlxuLy8gZm91bmRhdGlvbi56dXJiLmNvbVxuLy8gTGljZW5zZWQgdW5kZXIgTUlUIE9wZW4gU291cmNlXG5cbi8vLy9cbi8vLyBAZ3JvdXAgYWNjb3JkaW9uXG4vLy8vXG5cbi8vLyBEZWZhdWx0IGJhY2tncm91bmQgY29sb3Igb2YgYW4gYWNjb3JkaW9uIGdyb3VwLlxuLy8vIEB0eXBlIENvbG9yXG4kYWNjb3JkaW9uLWJhY2tncm91bmQ6ICR3aGl0ZSAhZGVmYXVsdDtcblxuLy8vIElmIGB0cnVlYCwgYWRkcyBwbHVzIGFuZCBtaW51cyBpY29ucyB0byB0aGUgc2lkZSBvZiBlYWNoIGFjY29yZGlvbiB0aXRsZS5cbi8vLyBAdHlwZSBCb29sZWFuXG4kYWNjb3JkaW9uLXBsdXNtaW51czogdHJ1ZSAhZGVmYXVsdDtcblxuLy8vIEZvbnQgc2l6ZSBvZiBhY2NvcmRpb24gdGl0bGVzLlxuLy8vIEB0eXBlIE51bWJlclxuJGFjY29yZGlvbi10aXRsZS1mb250LXNpemU6IHJlbS1jYWxjKDEyKSAhZGVmYXVsdDtcblxuLy8vIERlZmF1bHQgdGV4dCBjb2xvciBmb3IgaXRlbXMgaW4gYSBNZW51LlxuLy8vIEB0eXBlIENvbG9yXG4kYWNjb3JkaW9uLWl0ZW0tY29sb3I6ICRwcmltYXJ5LWNvbG9yICFkZWZhdWx0O1xuXG4vLy8gRGVmYXVsdCBiYWNrZ3JvdW5kIGNvbG9yIG9uIGhvdmVyIGZvciBpdGVtcyBpbiBhIE1lbnUuXG4vLy8gQHR5cGUgQ29sb3JcbiRhY2NvcmRpb24taXRlbS1iYWNrZ3JvdW5kLWhvdmVyOiAkbGlnaHQtZ3JheSAhZGVmYXVsdDtcblxuLy8vIERlZmF1bHQgcGFkZGluZyBvZiBhbiBhY2NvcmRpb24gaXRlbS5cbi8vLyBAdHlwZSBOdW1iZXIgfCBMaXN0XG4kYWNjb3JkaW9uLWl0ZW0tcGFkZGluZzogMS4yNXJlbSAxcmVtICFkZWZhdWx0O1xuXG4vLy8gRGVmYXVsdCBiYWNrZ3JvdW5kIGNvbG9yIG9mIHRhYiBjb250ZW50LlxuLy8vIEB0eXBlIENvbG9yXG4kYWNjb3JkaW9uLWNvbnRlbnQtYmFja2dyb3VuZDogJHdoaXRlICFkZWZhdWx0O1xuXG4vLy8gRGVmYXVsdCBib3JkZXIgY29sb3Igb2YgdGFiIGNvbnRlbnQuXG4vLy8gQHR5cGUgQ29sb3JcbiRhY2NvcmRpb24tY29udGVudC1ib3JkZXI6IDFweCBzb2xpZCAkbGlnaHQtZ3JheSAhZGVmYXVsdDtcblxuLy8vIERlZmF1bHQgdGV4dCBjb2xvciBvZiB0YWIgY29udGVudC5cbi8vLyBAdHlwZSBDb2xvclxuJGFjY29yZGlvbi1jb250ZW50LWNvbG9yOiAkYm9keS1mb250LWNvbG9yICFkZWZhdWx0O1xuXG4vLy8gRGVmYXVsdCBwYWRkaW5nIGZvciB0YWIgY29udGVudC5cbi8vLyBAdHlwZSBOdW1iZXIgfCBMaXN0XG4kYWNjb3JkaW9uLWNvbnRlbnQtcGFkZGluZzogMXJlbSAhZGVmYXVsdDtcblxuLy8vIEFkZHMgc3R5bGVzIGZvciBhbiBhY2NvcmRpb24gY29udGFpbmVyLiBBcHBseSB0aGlzIHRvIHRoZSBzYW1lIGVsZW1lbnQgdGhhdCBnZXRzIGBkYXRhLWFjY29yZGlvbmAuXG5AbWl4aW4gYWNjb3JkaW9uLWNvbnRhaW5lciAoXG4gICRiYWNrZ3JvdW5kOiAkYWNjb3JkaW9uLWJhY2tncm91bmRcbikge1xuICBtYXJnaW4tI3skZ2xvYmFsLWxlZnR9OiAwO1xuICBiYWNrZ3JvdW5kOiAkYmFja2dyb3VuZDtcbiAgbGlzdC1zdHlsZS10eXBlOiBub25lO1xuICAmW2Rpc2FibGVkXSB7XG4gICAgLmFjY29yZGlvbi10aXRsZSB7XG4gICAgICBjdXJzb3I6IG5vdC1hbGxvd2VkO1xuICAgIH1cbiAgfVxufVxuXG4vLy8gQWRkcyBzdHlsZXMgZm9yIHRoZSBhY2NvcmRpb24gaXRlbS4gQXBwbHkgdGhpcyB0byB0aGUgbGlzdCBpdGVtIHdpdGhpbiBhbiBhY2NvcmRpb24gdWwuXG5AbWl4aW4gYWNjb3JkaW9uLWl0ZW0ge1xuICAmOmZpcnN0LWNoaWxkID4gOmZpcnN0LWNoaWxkIHtcbiAgICBib3JkZXItcmFkaXVzOiAkZ2xvYmFsLXJhZGl1cyAkZ2xvYmFsLXJhZGl1cyAwIDA7XG4gIH1cblxuICAmOmxhc3QtY2hpbGQgPiA6bGFzdC1jaGlsZCB7XG4gICAgYm9yZGVyLXJhZGl1czogMCAwICRnbG9iYWwtcmFkaXVzICRnbG9iYWwtcmFkaXVzO1xuICB9XG59XG5cbi8vLyBBZGRzIHN0eWxlcyBmb3IgdGhlIHRpdGxlIG9mIGFuIGFjY29yZGlvbiBpdGVtLiBBcHBseSB0aGlzIHRvIHRoZSBsaW5rIHdpdGhpbiBhbiBhY2NvcmRpb24gaXRlbS5cbkBtaXhpbiBhY2NvcmRpb24tdGl0bGUgKFxuICAkcGFkZGluZzogJGFjY29yZGlvbi1pdGVtLXBhZGRpbmcsXG4gICRmb250LXNpemU6ICRhY2NvcmRpb24tdGl0bGUtZm9udC1zaXplLFxuICAkY29sb3I6ICRhY2NvcmRpb24taXRlbS1jb2xvcixcbiAgJGJvcmRlcjogJGFjY29yZGlvbi1jb250ZW50LWJvcmRlcixcbiAgJGJhY2tncm91bmQtaG92ZXI6ICRhY2NvcmRpb24taXRlbS1iYWNrZ3JvdW5kLWhvdmVyXG4pIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBkaXNwbGF5OiBibG9jaztcbiAgcGFkZGluZzogJHBhZGRpbmc7XG5cbiAgYm9yZGVyOiAkYm9yZGVyO1xuICBib3JkZXItYm90dG9tOiAwO1xuXG4gIGZvbnQtc2l6ZTogJGZvbnQtc2l6ZTtcbiAgbGluZS1oZWlnaHQ6IDE7XG4gIGNvbG9yOiAkY29sb3I7XG5cbiAgOmxhc3QtY2hpbGQ6bm90KC5pcy1hY3RpdmUpID4gJiB7XG4gICAgYm9yZGVyLWJvdHRvbTogJGJvcmRlcjtcbiAgICBib3JkZXItcmFkaXVzOiAwIDAgJGdsb2JhbC1yYWRpdXMgJGdsb2JhbC1yYWRpdXM7XG4gIH1cblxuICAmOmhvdmVyLFxuICAmOmZvY3VzIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkYmFja2dyb3VuZC1ob3ZlcjtcbiAgfVxuXG4gIEBpZiAkYWNjb3JkaW9uLXBsdXNtaW51cyB7XG4gICAgJjo6YmVmb3JlIHtcbiAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgIHRvcDogNTAlO1xuICAgICAgI3skZ2xvYmFsLXJpZ2h0fTogMXJlbTtcbiAgICAgIG1hcmdpbi10b3A6IC0wLjVyZW07XG4gICAgICBjb250ZW50OiAnKyc7XG4gICAgfVxuXG4gICAgLmlzLWFjdGl2ZSA+ICY6OmJlZm9yZSB7XG4gICAgICBjb250ZW50OiAnXFwyMDEzJztcbiAgICB9XG4gIH1cbn1cblxuLy8vIEFkZHMgc3R5bGVzIGZvciBhY2NvcmRpb24gY29udGVudC4gQXBwbHkgdGhpcyB0byB0aGUgY29udGVudCBwYW5lIGJlbG93IGFuIGFjY29yZGlvbiBpdGVtJ3MgdGl0bGUuXG5AbWl4aW4gYWNjb3JkaW9uLWNvbnRlbnQgKFxuICAkcGFkZGluZzogJGFjY29yZGlvbi1jb250ZW50LXBhZGRpbmcsXG4gICRib3JkZXI6ICRhY2NvcmRpb24tY29udGVudC1ib3JkZXIsXG4gICRiYWNrZ3JvdW5kOiAkYWNjb3JkaW9uLWNvbnRlbnQtYmFja2dyb3VuZCxcbiAgJGNvbG9yOiAkYWNjb3JkaW9uLWNvbnRlbnQtY29sb3Jcbikge1xuICBkaXNwbGF5OiBub25lO1xuICBwYWRkaW5nOiAkcGFkZGluZztcblxuICBib3JkZXI6ICRib3JkZXI7XG4gIGJvcmRlci1ib3R0b206IDA7XG4gIGJhY2tncm91bmQtY29sb3I6ICRiYWNrZ3JvdW5kO1xuXG4gIGNvbG9yOiAkY29sb3I7XG5cbiAgOmxhc3QtY2hpbGQgPiAmOmxhc3QtY2hpbGQge1xuICAgIGJvcmRlci1ib3R0b206ICRib3JkZXI7XG4gIH1cbn1cblxuQG1peGluIGZvdW5kYXRpb24tYWNjb3JkaW9uIHtcbiAgLmFjY29yZGlvbiB7XG4gICAgQGluY2x1ZGUgYWNjb3JkaW9uLWNvbnRhaW5lcjtcbiAgfVxuXG4gIC5hY2NvcmRpb24taXRlbSB7XG4gICAgQGluY2x1ZGUgYWNjb3JkaW9uLWl0ZW07XG4gIH1cblxuICAuYWNjb3JkaW9uLXRpdGxlIHtcbiAgICBAaW5jbHVkZSBhY2NvcmRpb24tdGl0bGU7XG4gIH1cblxuICAuYWNjb3JkaW9uLWNvbnRlbnQge1xuICAgIEBpbmNsdWRlIGFjY29yZGlvbi1jb250ZW50O1xuICB9XG59XG4iLCIvLy8vXG4vLy8gQGdyb3VwIGFjY29yZGlvbi1tZW51XG4vLy8vXG5cbi8vLyBTZXRzIGFjY29yZGlvbiBtZW51IHBhZGRpbmcuXG4vLy8gQHR5cGUgTnVtYmVyXG4kYWNjb3JkaW9ubWVudS1wYWRkaW5nOiAkZ2xvYmFsLW1lbnUtcGFkZGluZyAhZGVmYXVsdDtcblxuLy8vIFNldHMgYWNjb3JkaW9uIG1lbnUgbmVzdGVkIG1hcmdpblxuLy8vIEB0eXBlIE51bWJlclxuJGFjY29yZGlvbm1lbnUtbmVzdGVkLW1hcmdpbjogJGdsb2JhbC1tZW51LW5lc3RlZC1tYXJnaW4gIWRlZmF1bHQ7XG5cbi8vLyBTZXRzIGFjY29yZGlvbiBtZW51IHN1Ym1lbnUgcGFkZGluZy5cbi8vLyBAdHlwZSBOdW1iZXJcbiRhY2NvcmRpb25tZW51LXN1Ym1lbnUtcGFkZGluZzogJGFjY29yZGlvbm1lbnUtcGFkZGluZyAhZGVmYXVsdDtcblxuLy8vIFNldHMgaWYgYWNjb3JkaW9uIG1lbnVzIGhhdmUgdGhlIGRlZmF1bHQgYXJyb3cgc3R5bGVzLlxuLy8vIEB0eXBlIEJvb2xlYW5cbiRhY2NvcmRpb25tZW51LWFycm93czogdHJ1ZSAhZGVmYXVsdDtcblxuLy8vIFNldHMgYWNjb3JkaW9uIG1lbnUgYXJyb3cgY29sb3IgaWYgYXJyb3cgaXMgdXNlZC5cbi8vLyBAdHlwZSBDb2xvclxuJGFjY29yZGlvbm1lbnUtYXJyb3ctY29sb3I6ICRwcmltYXJ5LWNvbG9yICFkZWZhdWx0O1xuXG4vLy8gU2V0cyBhY2NvcmRpb24gbWVudSBpdGVtIHBhZGRpbmcuXG4vLy8gQHR5cGUgQ29sb3JcbiRhY2NvcmRpb25tZW51LWl0ZW0tYmFja2dyb3VuZDogbnVsbCAhZGVmYXVsdDtcblxuLy8vIFNldHMgYWNjb3JkaW9uIG1lbnUgaXRlbSBib3JkZXIuXG4vLy8gQHR5cGUgQ29sb3JcbiRhY2NvcmRpb25tZW51LWJvcmRlcjogbnVsbCAhZGVmYXVsdDtcblxuLy8vIFNldHMgYWNjb3JkaW9uIG1lbnUgaXRlbSBwYWRkaW5nLlxuLy8vIEB0eXBlIENvbG9yXG4kYWNjb3JkaW9ubWVudS1zdWJtZW51LXRvZ2dsZS1iYWNrZ3JvdW5kOiBudWxsICFkZWZhdWx0O1xuXG4vLy8gU2V0cyBhY2NvcmRpb24gbWVudSBpdGVtIHBhZGRpbmcuXG4vLy8gQHR5cGUgTGlzdFxuJGFjY29yZGlvbi1zdWJtZW51LXRvZ2dsZS1ib3JkZXI6ICRhY2NvcmRpb25tZW51LWJvcmRlciAhZGVmYXVsdDtcblxuLy8vIFNldHMgYWNjb3JkaW9uIG1lbnUgc3VibWVudSB0b2dnbGUgYmFja2dyb3VuZCB3aWR0aC5cbi8vLyBAdHlwZSBOdW1iZXJcbiRhY2NvcmRpb25tZW51LXN1Ym1lbnUtdG9nZ2xlLXdpZHRoOiA0MHB4ICFkZWZhdWx0O1xuXG4vLy8gU2V0cyBhY2NvcmRpb24gbWVudSBzdWJtZW51IHRvZ2dsZSBiYWNrZ3JvdW5kIGhlaWdodC5cbi8vLyBAdHlwZSBOdW1iZXJcbiRhY2NvcmRpb25tZW51LXN1Ym1lbnUtdG9nZ2xlLWhlaWdodDogJGFjY29yZGlvbm1lbnUtc3VibWVudS10b2dnbGUtd2lkdGggIWRlZmF1bHQ7XG5cbi8vLyBTZXRzIGFjY29yZGlvbiBtZW51IGFycm93IHNpemUgaWYgYXJyb3cgaXMgdXNlZC5cbi8vLyBAdHlwZSBMZW5ndGhcbiRhY2NvcmRpb25tZW51LWFycm93LXNpemU6IDZweCAhZGVmYXVsdDtcblxuQG1peGluIHpmLWFjY29yZGlvbi1tZW51LWxlZnQtcmlnaHQtYXJyb3dzIHtcbiAgLmlzLWFjY29yZGlvbi1zdWJtZW51LXBhcmVudDpub3QoLmhhcy1zdWJtZW51LXRvZ2dsZSkgPiBhIHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG5cbiAgICAmOjphZnRlciB7XG4gICAgICBAaW5jbHVkZSBjc3MtdHJpYW5nbGUoJGFjY29yZGlvbm1lbnUtYXJyb3ctc2l6ZSwgJGFjY29yZGlvbm1lbnUtYXJyb3ctY29sb3IsIGRvd24pO1xuICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgdG9wOiA1MCU7XG4gICAgICBtYXJnaW4tdG9wOiAtMSAqICgkYWNjb3JkaW9ubWVudS1hcnJvdy1zaXplIC8gMik7XG4gICAgICAjeyRnbG9iYWwtcmlnaHR9OiAxcmVtO1xuICAgIH1cbiAgfVxuICAmLmFsaWduLWxlZnQgLmlzLWFjY29yZGlvbi1zdWJtZW51LXBhcmVudCA+IGE6OmFmdGVyIHtcbiAgICBsZWZ0OiBhdXRvO1xuICAgIHJpZ2h0OiAxcmVtO1xuICB9XG4gICYuYWxpZ24tcmlnaHQgLmlzLWFjY29yZGlvbi1zdWJtZW51LXBhcmVudCA+IGE6OmFmdGVyIHtcbiAgICByaWdodDogYXV0bztcbiAgICBsZWZ0OiAxcmVtO1xuICB9XG59XG5AbWl4aW4gZm91bmRhdGlvbi1hY2NvcmRpb24tbWVudSB7XG5cbiAgLmFjY29yZGlvbi1tZW51IHtcbiAgICBAaWYgJGFjY29yZGlvbm1lbnUtYm9yZGVyIHtcbiAgICAgIGJvcmRlci1ib3R0b206ICRhY2NvcmRpb25tZW51LWJvcmRlcjtcbiAgICB9XG5cbiAgICBsaSB7XG4gICAgICBAaWYgJGFjY29yZGlvbm1lbnUtYm9yZGVyIHtcbiAgICAgICAgYm9yZGVyLXRvcDogJGFjY29yZGlvbm1lbnUtYm9yZGVyO1xuICAgICAgICBib3JkZXItcmlnaHQ6ICRhY2NvcmRpb25tZW51LWJvcmRlcjtcbiAgICAgICAgYm9yZGVyLWxlZnQ6ICRhY2NvcmRpb25tZW51LWJvcmRlcjtcbiAgICAgIH1cbiAgICAgIHdpZHRoOiAxMDAlO1xuICAgIH1cblxuICAgIGEge1xuICAgICAgQGlmICRhY2NvcmRpb25tZW51LWl0ZW0tYmFja2dyb3VuZCB7XG4gICAgICAgIGJhY2tncm91bmQ6ICRhY2NvcmRpb25tZW51LWl0ZW0tYmFja2dyb3VuZDtcbiAgICAgIH1cbiAgICAgIHBhZGRpbmc6ICRhY2NvcmRpb25tZW51LXBhZGRpbmc7XG4gICAgfVxuICAgIFxuICAgIC5pcy1hY2NvcmRpb24tc3VibWVudSBhIHtcbiAgICAgIHBhZGRpbmc6ICRhY2NvcmRpb25tZW51LXN1Ym1lbnUtcGFkZGluZztcbiAgICB9XG5cbiAgICAubmVzdGVkLmlzLWFjY29yZGlvbi1zdWJtZW51IHtcbiAgICAgIEBpbmNsdWRlIG1lbnUtbmVzdGVkKCRhY2NvcmRpb25tZW51LW5lc3RlZC1tYXJnaW4pO1xuICAgIH1cblxuICAgICYuYWxpZ24tI3skZ2xvYmFsLXJpZ2h0fSB7XG4gICAgICAubmVzdGVkLmlzLWFjY29yZGlvbi1zdWJtZW51IHtcbiAgICAgICAgQGluY2x1ZGUgbWVudS1uZXN0ZWQoJGFjY29yZGlvbm1lbnUtbmVzdGVkLW1hcmdpbiwgcmlnaHQpO1xuICAgICAgfVxuICAgIH1cblxuICAgIEBpZiAkYWNjb3JkaW9ubWVudS1hcnJvd3Mge1xuICAgICAgQGluY2x1ZGUgemYtYWNjb3JkaW9uLW1lbnUtbGVmdC1yaWdodC1hcnJvd3M7XG5cbiAgICAgIC5pcy1hY2NvcmRpb24tc3VibWVudS1wYXJlbnRbYXJpYS1leHBhbmRlZD0ndHJ1ZSddID4gYTo6YWZ0ZXIge1xuICAgICAgICB0cmFuc2Zvcm06IHJvdGF0ZSgxODBkZWcpO1xuICAgICAgICB0cmFuc2Zvcm0tb3JpZ2luOiA1MCUgNTAlO1xuICAgICAgfVxuICAgIH1cbiAgfVxuXG4gIC5pcy1hY2NvcmRpb24tc3VibWVudSBsaSB7XG4gICAgQGlmICRhY2NvcmRpb25tZW51LWJvcmRlciB7XG4gICAgICBib3JkZXItcmlnaHQ6IDA7XG4gICAgICBib3JkZXItbGVmdDogMDtcbiAgICB9XG4gIH1cblxuICAuaXMtYWNjb3JkaW9uLXN1Ym1lbnUtcGFyZW50IHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIH1cblxuICAuaGFzLXN1Ym1lbnUtdG9nZ2xlID4gYSB7XG4gICAgbWFyZ2luLSN7JGdsb2JhbC1yaWdodH06ICRhY2NvcmRpb25tZW51LXN1Ym1lbnUtdG9nZ2xlLXdpZHRoO1xuICB9XG5cbiAgLy8gU3VibWVudSB0b2dnbGVcbiAgLnN1Ym1lbnUtdG9nZ2xlIHtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgdG9wOiAwO1xuICAgICN7JGdsb2JhbC1yaWdodH06IDA7XG4gICAgY3Vyc29yOiBwb2ludGVyO1xuXG4gICAgd2lkdGg6ICRhY2NvcmRpb25tZW51LXN1Ym1lbnUtdG9nZ2xlLXdpZHRoO1xuICAgIGhlaWdodDogJGFjY29yZGlvbm1lbnUtc3VibWVudS10b2dnbGUtaGVpZ2h0O1xuXG4gICAgYm9yZGVyLSN7JGdsb2JhbC1sZWZ0fTogJGFjY29yZGlvbi1zdWJtZW51LXRvZ2dsZS1ib3JkZXI7XG5cbiAgICBAaWYgJGFjY29yZGlvbm1lbnUtc3VibWVudS10b2dnbGUtYmFja2dyb3VuZCB7XG4gICAgICBiYWNrZ3JvdW5kOiAkYWNjb3JkaW9ubWVudS1zdWJtZW51LXRvZ2dsZS1iYWNrZ3JvdW5kO1xuICAgIH1cblxuICAgIC8vIEFkZCB0aGUgYXJyb3cgdG8gdGhlIHRvZ2dsZVxuICAgICY6OmFmdGVyIHtcbiAgICAgIEBpbmNsdWRlIGNzcy10cmlhbmdsZSg2cHgsICRhY2NvcmRpb25tZW51LWFycm93LWNvbG9yLCBkb3duKTtcblxuICAgICAgdG9wOiAwO1xuICAgICAgYm90dG9tOiAwO1xuICAgICAgbWFyZ2luOiBhdXRvO1xuICAgIH1cbiAgfVxuXG4gIC8vIFJvdGF0ZSB0aGUgYXJyb3cgd2hlbiBtZW51IGlzIG9wZW5cbiAgLnN1Ym1lbnUtdG9nZ2xlW2FyaWEtZXhwYW5kZWQ9J3RydWUnXTo6YWZ0ZXIge1xuICAgIHRyYW5zZm9ybTogc2NhbGVZKC0xKTtcbiAgICB0cmFuc2Zvcm0tb3JpZ2luOiA1MCUgNTAlO1xuICB9XG5cbiAgLnN1Ym1lbnUtdG9nZ2xlLXRleHQge1xuICAgIEBpbmNsdWRlIGVsZW1lbnQtaW52aXNpYmxlO1xuICB9XG59XG4iLCIvLyBGb3VuZGF0aW9uIGZvciBTaXRlcyBieSBaVVJCXG4vLyBmb3VuZGF0aW9uLnp1cmIuY29tXG4vLyBMaWNlbnNlZCB1bmRlciBNSVQgT3BlbiBTb3VyY2VcblxuLy8vL1xuLy8vIEBncm91cCBtZW51XG4vLy8vXG5cbi8vLyBNYXJnaW4gb2YgYSBtZW51LlxuLy8vIEB0eXBlIE51bWJlclxuJG1lbnUtbWFyZ2luOiAwICFkZWZhdWx0O1xuXG4vLy8gTGVmdC1oYW5kIG1hcmdpbiBvZiBhIG5lc3RlZCBtZW51LlxuLy8vIEB0eXBlIE51bWJlclxuJG1lbnUtbmVzdGVkLW1hcmdpbjogJGdsb2JhbC1tZW51LW5lc3RlZC1tYXJnaW4gIWRlZmF1bHQ7XG5cbi8vLyBQYWRkaW5nIGZvciBpdGVtcyBpbiBhIHBpbGwgbWVudS5cbi8vLyBAdHlwZSBOdW1iZXJcbiRtZW51LWl0ZW1zLXBhZGRpbmc6ICRnbG9iYWwtbWVudS1wYWRkaW5nICFkZWZhdWx0O1xuXG4vLy8gbWFyZ2luIGZvciBpdGVtcyBpbiBhIHNpbXBsZSBtZW51LlxuLy8vIEB0eXBlIE51bWJlclxuJG1lbnUtc2ltcGxlLW1hcmdpbjogMXJlbSAhZGVmYXVsdDtcblxuLy8vIFRleHQgY29sb3Igb2YgYW4gYWN0aXZlIG1lbnUgaXRlbS5cbi8vLyBAdHlwZSBDb2xvclxuJG1lbnUtaXRlbS1jb2xvci1hY3RpdmU6ICR3aGl0ZSAhZGVmYXVsdDtcblxuLy8vIEJhY2tncm91bmQgY29sb3Igb2YgYW4gYWN0aXZlIG1lbnUgaXRlbS5cbi8vLyBAdHlwZSBDb2xvclxuJG1lbnUtaXRlbS1iYWNrZ3JvdW5kLWFjdGl2ZTogZ2V0LWNvbG9yKHByaW1hcnkpICFkZWZhdWx0O1xuXG4vLy8gU3BhY2luZyBiZXR3ZWVuIGFuIGljb24gYW5kIHRleHQgaW4gYSBtZW51IGl0ZW0uXG4vLy8gQHR5cGUgTnVtYmVyXG4kbWVudS1pY29uLXNwYWNpbmc6IDAuMjVyZW0gIWRlZmF1bHQ7XG5cbi8vLyBCYWNrZ3JvdW5kIGNvbG9yIGZvciBhbiBob3ZlcmVkIG1lbnUgaXRlbS5cbi8vLyBAdHlwZSBDb2xvclxuJG1lbnUtaXRlbS1iYWNrZ3JvdW5kLWhvdmVyOiAkbGlnaHQtZ3JheSAhZGVmYXVsdDtcblxuLy8vIEJhY2t3YXJkIGNvbXBhdGliaWxpdHkgZm9yIG1lbnUgc3RhdGUuIElmIHRydWUsIHRoaXMgZHVwbGljYXRlIGBhY3RpdmVgIHdpdGggYGlzLWFjdGl2ZWAuIFxuLy8vIEJ1dCBwbGVhc2Ugbm90ZSB0aGF0IGBhY3RpdmVgIHdpbGwgYmUgcmVtb3ZlZCBpbiB1cGNvbWluZyB2ZXJzaW9ucy5cbi8vLyBAdHlwZSBCb29sZWFuXG4kbWVudS1zdGF0ZS1iYWNrLWNvbXBhdDogdHJ1ZSAhZGVmYXVsdDtcblxuLy8vIEJhY2t3YXJkIGNvbXBhdGliaWxpdHkgZm9yIG1lbnUgY2VudGVyZWQuIElmIHRydWUsIHRoaXMgZHVwbGljYXRlIGAubWVudS1jZW50ZXJlZCA+IC5tZW51YCB3aXRoIGAubWVudS5hbGlnbi1jZW50ZXJgLiBcbi8vLyBCdXQgcGxlYXNlIG5vdGUgdGhhdCBgbWVudS1jZW50ZXJlZGAgd2lsbCBiZSByZW1vdmVkIGluIHVwY29taW5nIHZlcnNpb25zLlxuLy8vIEB0eXBlIEJvb2xlYW5cbiRtZW51LWNlbnRlcmVkLWJhY2stY29tcGF0OiB0cnVlICFkZWZhdWx0O1xuXG4vLy8gQ3JlYXRlcyB0aGUgYmFzZSBzdHlsZXMgZm9yIGEgTWVudS5cbkBtaXhpbiBtZW51LWJhc2Uge1xuICBwYWRkaW5nOiAwO1xuICBtYXJnaW46IDA7XG4gIGxpc3Qtc3R5bGU6IG5vbmU7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcblxuICBAaWYgJGdsb2JhbC1mbGV4Ym94IHtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIGZsZXgtd3JhcDogd3JhcDtcbiAgfVxuXG4gIGxpIHtcbiAgICBAaW5jbHVkZSBkaXNhYmxlLW1vdXNlLW91dGxpbmU7XG4gIH1cblxuICBhLFxuICAuYnV0dG9uIHtcbiAgICBsaW5lLWhlaWdodDogMTtcbiAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG4gICAgd2hpdGUtc3BhY2U6IG5vd3JhcDtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICBwYWRkaW5nOiAkbWVudS1pdGVtcy1wYWRkaW5nO1xuICB9XG5cbiAgLy8gUmVzZXQgc3R5bGVzIG9mIGlubmVyIGVsZW1lbnRzXG4gIGlucHV0LFxuICBzZWxlY3QsXG4gIGEsXG4gIGJ1dHRvbiB7XG4gICAgbWFyZ2luLWJvdHRvbTogMDtcbiAgfVxuXG4gIGlucHV0IHtcbiAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIH1cbn1cblxuLy8vIEV4cGFuZHMgdGhlIGl0ZW1zIG9mIGEgTWVudSwgc28gZWFjaCBpdGVtIGlzIHRoZSBzYW1lIHdpZHRoLlxuQG1peGluIG1lbnUtZXhwYW5kIHtcbiAgQGlmICRnbG9iYWwtZmxleGJveCB7XG4gICAgbGkge1xuICAgICAgZmxleDogMSAxIDBweDsgLy8gc2Fzcy1saW50OmRpc2FibGUtbGluZSB6ZXJvLXVuaXRcbiAgICB9XG4gIH1cbiAgQGVsc2Uge1xuICAgIGRpc3BsYXk6IHRhYmxlO1xuICAgIHdpZHRoOiAxMDAlO1xuXG4gICAgPiBsaSB7XG4gICAgICBkaXNwbGF5OiB0YWJsZS1jZWxsO1xuICAgICAgdmVydGljYWwtYWxpZ246IG1pZGRsZTtcbiAgICB9XG4gIH1cbn1cblxuLy8vIEFsaWduIG1lbnUgaXRlbXMuXG5AbWl4aW4gbWVudS1hbGlnbigkYWxpZ25tZW50KSB7XG4gIEBpZiAkYWxpZ25tZW50ID09IGxlZnQge1xuICAgIEBpZiAkZ2xvYmFsLWZsZXhib3gge1xuICAgICAganVzdGlmeS1jb250ZW50OiBmbGV4LXN0YXJ0O1xuICAgIH1cbiAgICBAZWxzZSB7XG4gICAgICB0ZXh0LWFsaWduOiAkZ2xvYmFsLWxlZnQ7XG4gICAgfVxuICB9XG4gIEBlbHNlIGlmICRhbGlnbm1lbnQgPT0gcmlnaHQge1xuICAgIEBpZiAkZ2xvYmFsLWZsZXhib3gge1xuICAgICAgbGkge1xuICAgICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgICBqdXN0aWZ5LWNvbnRlbnQ6IGZsZXgtZW5kO1xuXG4gICAgICAgIC5zdWJtZW51IGxpIHtcbiAgICAgICAgICBqdXN0aWZ5LWNvbnRlbnQ6IGZsZXgtc3RhcnQ7XG4gICAgICAgIH1cbiAgICAgIH1cblxuICAgICAgJi52ZXJ0aWNhbCBsaSB7XG4gICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICB0ZXh0LWFsaWduOiAkZ2xvYmFsLXJpZ2h0O1xuXG4gICAgICAgIC5zdWJtZW51IGxpIHtcbiAgICAgICAgICB0ZXh0LWFsaWduOiAkZ2xvYmFsLXJpZ2h0O1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICAgIEBlbHNlIHtcbiAgICAgIHRleHQtYWxpZ246ICRnbG9iYWwtcmlnaHQ7XG5cbiAgICAgIC5zdWJtZW51IGxpIHtcbiAgICAgICAgdGV4dC1hbGlnbjogJGdsb2JhbC1sZWZ0O1xuICAgICAgfVxuXG4gICAgICAmLnZlcnRpY2FsIHtcbiAgICAgICAgLnN1Ym1lbnUgbGkge1xuICAgICAgICAgIHRleHQtYWxpZ246ICRnbG9iYWwtcmlnaHQ7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gIH1cbiAgQGVsc2UgaWYgJGFsaWdubWVudCA9PSBjZW50ZXIge1xuICAgIEBpZiAkZ2xvYmFsLWZsZXhib3gge1xuICAgICAgbGkge1xuICAgICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcblxuICAgICAgICAuc3VibWVudSBsaSB7XG4gICAgICAgICAganVzdGlmeS1jb250ZW50OiBmbGV4LXN0YXJ0O1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICAgIEBlbHNlIHtcbiAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcblxuICAgICAgLnN1Ym1lbnUgbGkge1xuICAgICAgICB0ZXh0LWFsaWduOiAkZ2xvYmFsLWxlZnQ7XG4gICAgICB9XG4gICAgfVxuICB9XG59XG5cbi8vLyBTZXRzIHRoZSBkaXJlY3Rpb24gb2YgYSBNZW51LlxuLy8vIEBwYXJhbSB7S2V5d29yZH0gJGRpciBbaG9yaXpvbnRhbF0gLSBEaXJlY3Rpb24gb2YgdGhlIE1lbnUuIENhbiBiZSBgaG9yaXpvbnRhbGAgb3IgYHZlcnRpY2FsYC5cbkBtaXhpbiBtZW51LWRpcmVjdGlvbigkZGlyOiBob3Jpem9udGFsKSB7XG4gIEBpZiAkZGlyID09IGhvcml6b250YWwge1xuICAgIEBpZiAkZ2xvYmFsLWZsZXhib3gge1xuICAgICAgZmxleC13cmFwOiB3cmFwO1xuICAgICAgZmxleC1kaXJlY3Rpb246IHJvdztcbiAgICB9XG4gICAgQGVsc2Uge1xuICAgICAgbGkge1xuICAgICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgICB9XG4gICAgfVxuICB9XG4gIEBlbHNlIGlmICRkaXIgPT0gdmVydGljYWwge1xuICAgIEBpZiAkZ2xvYmFsLWZsZXhib3gge1xuICAgICAgZmxleC13cmFwOiBub3dyYXA7XG4gICAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuICAgIH1cbiAgICBAZWxzZSB7XG4gICAgICBsaSB7XG4gICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgfVxuICAgIH1cbiAgfVxuICBAZWxzZSB7XG4gICAgQHdhcm4gJ1RoZSBkaXJlY3Rpb24gdXNlZCBmb3IgbWVudS1kaXJlY3Rpb24oKSBtdXN0IGJlIGhvcml6b250YWwgb3IgdmVydGljYWwuJztcbiAgfVxufVxuXG4vLy8gQ3JlYXRlcyBhIHNpbXBsZSBNZW51LCB3aGljaCBoYXMgbm8gcGFkZGluZyBvciBob3ZlciBzdGF0ZS5cbi8vLyBAcGFyYW0ge0tleXdvcmR9ICRkaXIgWyRnbG9iYWwtbGVmdF0gLSBEaXJlY3Rpb24gb2YgdGhlIG1lbnUuIFRoaXMgZWZmZWN0cyB0aGUgc2lkZSBvZiB0aGUgYDxsaT5gIHRoYXQgcmVjZWl2ZXMgdGhlIG1hcmdpbi5cbi8vLyBAcGFyYW0ge051bWJlcn0gJG1hcmdpbiBbJG1lbnUtc2ltcGxlLW1hcmdpbl0gLSBUaGUgbWFyZ2luIHRvIGFwcGx5IHRvIGVhY2ggYDxsaT5gLlxuQG1peGluIG1lbnUtc2ltcGxlKCRkaXI6ICRnbG9iYWwtbGVmdCwgJG1hcmdpbjogJG1lbnUtc2ltcGxlLW1hcmdpbikge1xuICBAaWYgJGdsb2JhbC1mbGV4Ym94IHtcbiAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICB9XG5cbiAgbGkgKyBsaSB7XG4gICAgbWFyZ2luLSN7JGRpcn06ICRtYXJnaW47XG4gIH1cblxuICBhIHtcbiAgICBwYWRkaW5nOiAwO1xuICB9XG59XG5cbi8vLyBBZGRzIHN0eWxlcyBmb3IgYSBuZXN0ZWQgTWVudSwgYnkgYWRkaW5nIGBtYXJnaW4tbGVmdGAgdG8gdGhlIG1lbnUuXG4vLy8gQHBhcmFtIHtLZXl3b3JkfE51bWJlcn0gJG1hcmdpbiBbJG1lbnUtbmVzdGVkLW1hcmdpbl0gLSBMZW5ndGggb2YgdGhlIG1hcmdpbi5cbi8vLyBAcGFyYW0ge0tleXdvcmR9ICRuZXN0ZWQtYWxpZ25tZW50IFtsZWZ0XSAtIEFsaWdubWVudCBvZiB0aGUgbmVzdGVkIGNsYXNzXG5AbWl4aW4gbWVudS1uZXN0ZWQoXG4gICRtYXJnaW46ICRtZW51LW5lc3RlZC1tYXJnaW4sXG4gICRuZXN0ZWQtYWxpZ25tZW50OiBsZWZ0XG4pIHtcbiAgQGlmICRuZXN0ZWQtYWxpZ25tZW50ID09IHJpZ2h0IHtcbiAgICBtYXJnaW4tI3skZ2xvYmFsLXJpZ2h0fTogJG1hcmdpbjtcbiAgICBtYXJnaW4tI3skZ2xvYmFsLWxlZnR9OiAwO1xuICB9XG4gIEBlbHNlIHtcbiAgICBtYXJnaW4tI3skZ2xvYmFsLXJpZ2h0fTogMDtcbiAgICBtYXJnaW4tI3skZ2xvYmFsLWxlZnR9OiAkbWFyZ2luO1xuICB9XG5cbn1cblxuLy8vIEFkZHMgYmFzaWMgc3R5bGVzIGZvciBpY29ucyBpbiBtZW51cy5cbkBtaXhpbiBtZW51LWljb25zKCkge1xuICBAaWYgJGdsb2JhbC1mbGV4Ym94IHtcbiAgICBhIHtcbiAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgfVxuICB9XG4gIEBlbHNlIHtcbiAgICBpbWcsXG4gICAgaSxcbiAgICBzdmcge1xuICAgICAgdmVydGljYWwtYWxpZ246IG1pZGRsZTtcblxuICAgICAgKyBzcGFuIHtcbiAgICAgICAgdmVydGljYWwtYWxpZ246IG1pZGRsZTtcbiAgICAgIH1cbiAgICB9XG4gIH1cbn1cblxuLy8vIEFkZHMgcG9zaXRpb24gY2xhc3NlcyBmb3IgaWNvbnMgd2l0aGluIGEgbWVudS5cbkBtaXhpbiBtZW51LWljb24tcG9zaXRpb24oJHBvc2l0aW9uOiBsZWZ0LCAkc3BhY2luZzogJG1lbnUtaWNvbi1zcGFjaW5nKSB7XG4gIEBpZiAkcG9zaXRpb24gPT0gbGVmdCB7XG4gICAgbGkgYSB7XG4gICAgICBAaWYgJGdsb2JhbC1mbGV4Ym94IHtcbiAgICAgICAgZmxleC1mbG93OiByb3cgbm93cmFwO1xuICAgICAgfVxuXG4gICAgICBpbWcsXG4gICAgICBpLFxuICAgICAgc3ZnIHtcbiAgICAgICAgbWFyZ2luLSN7JGdsb2JhbC1yaWdodH06ICRzcGFjaW5nO1xuXG4gICAgICAgIEBpZiBub3QgJGdsb2JhbC1mbGV4Ym94IHtcbiAgICAgICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gIH1cbiAgQGVsc2UgaWYgJHBvc2l0aW9uID09IHJpZ2h0IHtcbiAgICBsaSBhIHtcbiAgICAgIEBpZiAkZ2xvYmFsLWZsZXhib3gge1xuICAgICAgICBmbGV4LWZsb3c6IHJvdyBub3dyYXA7XG4gICAgICB9XG5cbiAgICAgIGltZyxcbiAgICAgIGksXG4gICAgICBzdmcge1xuICAgICAgICBtYXJnaW4tI3skZ2xvYmFsLWxlZnR9OiAkc3BhY2luZztcblxuICAgICAgICBAaWYgbm90ICRnbG9iYWwtZmxleGJveCB7XG4gICAgICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICB9XG4gIEBlbHNlIGlmICRwb3NpdGlvbiA9PSB0b3Age1xuICAgIGxpIGEge1xuICAgICAgQGlmICRnbG9iYWwtZmxleGJveCB7XG4gICAgICAgIGZsZXgtZmxvdzogY29sdW1uIG5vd3JhcDtcbiAgICAgIH1cbiAgICAgIEBlbHNlIHtcbiAgICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgICAgfVxuXG4gICAgICBpbWcsXG4gICAgICBpLFxuICAgICAgc3ZnIHtcbiAgICAgICAgQGlmIG5vdCAkZ2xvYmFsLWZsZXhib3gge1xuICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICAgIG1hcmdpbjogMCBhdXRvICRzcGFjaW5nO1xuICAgICAgICB9XG4gICAgICAgIEBlbHNlIHtcbiAgICAgICAgICBhbGlnbi1zZWxmOiBzdHJldGNoO1xuICAgICAgICAgIG1hcmdpbi1ib3R0b206ICRzcGFjaW5nO1xuICAgICAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgfVxuICBAZWxzZSBpZiAkcG9zaXRpb24gPT0gYm90dG9tIHtcbiAgICBsaSBhIHtcbiAgICAgIEBpZiAkZ2xvYmFsLWZsZXhib3gge1xuICAgICAgICBmbGV4LWZsb3c6IGNvbHVtbiBub3dyYXA7XG4gICAgICB9XG4gICAgICBAZWxzZSB7XG4gICAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICAgIH1cblxuICAgICAgaW1nLFxuICAgICAgaSxcbiAgICAgIHN2ZyB7XG4gICAgICAgIEBpZiBub3QgJGdsb2JhbC1mbGV4Ym94IHtcbiAgICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgICBtYXJnaW46ICRzcGFjaW5nIGF1dG8gMDtcbiAgICAgICAgfVxuICAgICAgICBAZWxzZSB7XG4gICAgICAgICAgYWxpZ24tc2VsZjogc3RyZXRjaDtcbiAgICAgICAgICBtYXJnaW4tYm90dG9tOiAkc3BhY2luZztcbiAgICAgICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gIH1cbn1cblxuQG1peGluIG1lbnUtdGV4dCB7XG4gIHBhZGRpbmc6ICRnbG9iYWwtbWVudS1wYWRkaW5nO1xuXG4gIGZvbnQtd2VpZ2h0OiBib2xkO1xuICBsaW5lLWhlaWdodDogMTtcbiAgY29sb3I6IGluaGVyaXQ7XG59XG5cbkBtaXhpbiBtZW51LXN0YXRlLWFjdGl2ZSB7XG4gIGJhY2tncm91bmQ6ICRtZW51LWl0ZW0tYmFja2dyb3VuZC1hY3RpdmU7XG4gIGNvbG9yOiAkbWVudS1pdGVtLWNvbG9yLWFjdGl2ZTtcbn1cblxuQG1peGluIGZvdW5kYXRpb24tbWVudSB7XG4gIC5tZW51IHtcbiAgICBAaW5jbHVkZSBtZW51LWJhc2U7XG5cbiAgICAvLyBEZWZhdWx0IG9yaWVudGF0aW9uOiBob3Jpem9udGFsXG4gICAgJiwgJi5ob3Jpem9udGFsIHtcbiAgICAgIEBpbmNsdWRlIG1lbnUtZGlyZWN0aW9uKGhvcml6b250YWwpO1xuICAgIH1cblxuICAgIC8vIFZlcnRpY2FsIG9yaWVudGF0aW9uIG1vZGlmaWVyXG4gICAgJi52ZXJ0aWNhbCB7XG4gICAgICBAaW5jbHVkZSBtZW51LWRpcmVjdGlvbih2ZXJ0aWNhbCk7XG4gICAgfVxuXG4gICAgLy8gRXZlbi13aWR0aCBtb2RpZmllciBmb3IgaG9yaXpvbnRhbCBvcmllbnRhdGlvblxuICAgICYuZXhwYW5kZWQge1xuICAgICAgQGluY2x1ZGUgbWVudS1leHBhbmQ7XG4gICAgfVxuXG4gICAgLy8gU2ltcGxlXG4gICAgJi5zaW1wbGUge1xuICAgICAgQGluY2x1ZGUgbWVudS1zaW1wbGU7XG4gICAgfVxuXG4gICAgLy8gQnJlYWtwb2ludCBzcGVjaWZpYyB2ZXJzaW9uc1xuICAgIEBpbmNsdWRlIC16Zi1lYWNoLWJyZWFrcG9pbnQoJHNtYWxsOiBmYWxzZSkge1xuICAgICAgJi4jeyQtemYtc2l6ZX0taG9yaXpvbnRhbCB7XG4gICAgICAgIEBpbmNsdWRlIG1lbnUtZGlyZWN0aW9uKGhvcml6b250YWwpO1xuICAgICAgfVxuXG4gICAgICAmLiN7JC16Zi1zaXplfS12ZXJ0aWNhbCB7XG4gICAgICAgIEBpbmNsdWRlIG1lbnUtZGlyZWN0aW9uKHZlcnRpY2FsKTtcbiAgICAgIH1cblxuICAgICAgJi4jeyQtemYtc2l6ZX0tZXhwYW5kZWQge1xuICAgICAgICBAaW5jbHVkZSBtZW51LWV4cGFuZDtcbiAgICAgIH1cblxuICAgICAgJi4jeyQtemYtc2l6ZX0tc2ltcGxlIHtcbiAgICAgICAgQGluY2x1ZGUgbWVudS1leHBhbmQ7XG4gICAgICB9XG4gICAgfVxuXG4gICAgLy8gTmVzdGluZ1xuICAgICYubmVzdGVkIHtcbiAgICAgIEBpbmNsdWRlIG1lbnUtbmVzdGVkO1xuICAgIH1cblxuICAgIC8vIEljb24gQmFzZSBTdHlsZXNcbiAgICAmLmljb25zIHtcbiAgICAgIEBpbmNsdWRlIG1lbnUtaWNvbnM7XG4gICAgfVxuXG4gICAgLy8gSWNvbiBMZWZ0XG4gICAgJi5pY29uLWxlZnQge1xuICAgICAgQGluY2x1ZGUgbWVudS1pY29uLXBvc2l0aW9uKGxlZnQpO1xuICAgIH1cblxuICAgIC8vIEljb24gUmlnaHRcbiAgICAmLmljb24tcmlnaHQge1xuICAgICAgQGluY2x1ZGUgbWVudS1pY29uLXBvc2l0aW9uKHJpZ2h0KTtcbiAgICB9XG5cbiAgICAvLyBJY29uIFRvcFxuICAgICYuaWNvbi10b3Age1xuICAgICAgQGluY2x1ZGUgbWVudS1pY29uLXBvc2l0aW9uKHRvcCk7XG4gICAgfVxuXG4gICAgLy8gSWNvbiBCb3R0b21cbiAgICAmLmljb24tYm90dG9tIHtcbiAgICAgIEBpbmNsdWRlIG1lbnUtaWNvbi1wb3NpdGlvbihib3R0b20pO1xuICAgIH1cblxuICAgIC8vIEFjdGl2ZSBzdGF0ZVxuICAgIC5pcy1hY3RpdmUgPiBhIHtcbiAgICAgIEBpbmNsdWRlIG1lbnUtc3RhdGUtYWN0aXZlO1xuICAgIH1cbiAgICBcbiAgICAvLyBCYWNrd2FyZCBDb21wYXRpYmlsaXR5IGZvciBhY3RpdmUgc3RhdGVcbiAgICBAaWYgJG1lbnUtc3RhdGUtYmFjay1jb21wYXQge1xuICAgICAgLmFjdGl2ZSA+IGEge1xuICAgICAgICBAaW5jbHVkZSBtZW51LXN0YXRlLWFjdGl2ZTtcbiAgICAgIH1cbiAgICB9XG5cbiAgICAvLyBBbGlnbiBsZWZ0XG4gICAgJi5hbGlnbi0jeyRnbG9iYWwtbGVmdH0ge1xuICAgICAgQGluY2x1ZGUgbWVudS1hbGlnbihsZWZ0KTtcbiAgICB9XG5cbiAgICAvLyBBbGlnbiByaWdodFxuICAgICYuYWxpZ24tI3skZ2xvYmFsLXJpZ2h0fSB7XG4gICAgICBAaW5jbHVkZSBtZW51LWFsaWduKHJpZ2h0KTtcblxuICAgICAgLm5lc3RlZCB7XG4gICAgICAgIEBpbmNsdWRlIG1lbnUtbmVzdGVkKCRuZXN0ZWQtYWxpZ25tZW50OiByaWdodCk7XG4gICAgICB9XG4gICAgfVxuXG4gICAgLy8gQWxpZ24gY2VudGVyXG4gICAgJi5hbGlnbi1jZW50ZXIge1xuICAgICAgQGluY2x1ZGUgbWVudS1hbGlnbihjZW50ZXIpO1xuICAgIH1cblxuICAgIC5tZW51LXRleHQge1xuICAgICAgQGluY2x1ZGUgbWVudS10ZXh0O1xuICAgIH1cbiAgfVxuXG4gIEBpZiAkbWVudS1jZW50ZXJlZC1iYWNrLWNvbXBhdCB7XG4gICAgLm1lbnUtY2VudGVyZWQge1xuICAgICAgPiAubWVudSB7XG4gICAgICAgIEBpZiAkZ2xvYmFsLWZsZXhib3gge1xuICAgICAgICAgIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICAgICAgICB9XG4gICAgICAgIFxuICAgICAgICBAaW5jbHVkZSBtZW51LWFsaWduKGNlbnRlcik7XG4gICAgICB9XG4gICAgfVxuICB9XG5cbiAgLy8gUHJldmVudCBGT1VDIHdoZW4gdXNpbmcgdGhlIFJlc3BvbnNpdmUgTWVudSBwbHVnaW5cbiAgLm5vLWpzIFtkYXRhLXJlc3BvbnNpdmUtbWVudV0gdWwge1xuICAgIGRpc3BsYXk6IG5vbmU7XG4gIH1cbn1cbiIsIi8vIEZvdW5kYXRpb24gZm9yIFNpdGVzIGJ5IFpVUkJcbi8vIGZvdW5kYXRpb24uenVyYi5jb21cbi8vIExpY2Vuc2VkIHVuZGVyIE1JVCBPcGVuIFNvdXJjZVxuXG4vLy8vXG4vLy8gQGdyb3VwIGJhZGdlXG4vLy8vXG5cbi8vLyBEZWZhdWx0IGJhY2tncm91bmQgY29sb3IgZm9yIGJhZGdlcy5cbi8vLyBAdHlwZSBDb2xvclxuJGJhZGdlLWJhY2tncm91bmQ6ICRwcmltYXJ5LWNvbG9yICFkZWZhdWx0O1xuXG4vLy8gRGVmYXVsdCB0ZXh0IGNvbG9yIGZvciBiYWRnZXMuXG4vLy8gQHR5cGUgQ29sb3JcbiRiYWRnZS1jb2xvcjogJHdoaXRlICFkZWZhdWx0O1xuXG4vLy8gQWx0ZXJuYXRlIHRleHQgY29sb3IgZm9yIGJhZGdlcy5cbi8vLyBAdHlwZSBDb2xvclxuJGJhZGdlLWNvbG9yLWFsdDogJGJsYWNrICFkZWZhdWx0O1xuXG4vLy8gQ29sb3JpbmcgY2xhc3Nlcy4gQSBtYXAgb2YgY2xhc3NlcyB0byBvdXRwdXQgaW4geW91ciBDU1MsIGxpa2UgYC5zZWNvbmRhcnlgLCBgLnN1Y2Nlc3NgLCBhbmQgc28gb24uXG4vLy8gQHR5cGUgTWFwXG4kYmFkZ2UtcGFsZXR0ZTogJGZvdW5kYXRpb24tcGFsZXR0ZSAhZGVmYXVsdDtcblxuLy8vIERlZmF1bHQgcGFkZGluZyBpbnNpZGUgYmFkZ2VzLlxuLy8vIEB0eXBlIE51bWJlclxuJGJhZGdlLXBhZGRpbmc6IDAuM2VtICFkZWZhdWx0O1xuXG4vLy8gTWluaW11bSB3aWR0aCBvZiBhIGJhZGdlLlxuLy8vIEB0eXBlIE51bWJlclxuJGJhZGdlLW1pbndpZHRoOiAyLjFlbSAhZGVmYXVsdDtcblxuLy8vIERlZmF1bHQgZm9udCBzaXplIGZvciBiYWRnZXMuXG4vLy8gQHR5cGUgTnVtYmVyXG4kYmFkZ2UtZm9udC1zaXplOiAwLjZyZW0gIWRlZmF1bHQ7XG5cbi8vLyBHZW5lcmF0ZXMgdGhlIGJhc2Ugc3R5bGVzIGZvciBhIGJhZGdlLlxuQG1peGluIGJhZGdlIHtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICBtaW4td2lkdGg6ICRiYWRnZS1taW53aWR0aDtcbiAgcGFkZGluZzogJGJhZGdlLXBhZGRpbmc7XG5cbiAgYm9yZGVyLXJhZGl1czogNTAlO1xuXG4gIGZvbnQtc2l6ZTogJGJhZGdlLWZvbnQtc2l6ZTtcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xufVxuXG5AbWl4aW4gZm91bmRhdGlvbi1iYWRnZSB7XG4gIC5iYWRnZSB7XG4gICAgQGluY2x1ZGUgYmFkZ2U7XG5cbiAgICBiYWNrZ3JvdW5kOiAkYmFkZ2UtYmFja2dyb3VuZDtcbiAgICBjb2xvcjogJGJhZGdlLWNvbG9yO1xuXG4gICAgQGVhY2ggJG5hbWUsICRjb2xvciBpbiAkYmFkZ2UtcGFsZXR0ZSB7XG4gICAgICAmLiN7JG5hbWV9IHtcbiAgICAgICAgYmFja2dyb3VuZDogJGNvbG9yO1xuICAgICAgICBjb2xvcjogY29sb3ItcGljay1jb250cmFzdCgkY29sb3IsICgkYmFkZ2UtY29sb3IsICRiYWRnZS1jb2xvci1hbHQpKTtcbiAgICAgIH1cbiAgICB9XG4gIH1cbn1cbiIsIi8vIEZvdW5kYXRpb24gZm9yIFNpdGVzIGJ5IFpVUkJcbi8vIGZvdW5kYXRpb24uenVyYi5jb21cbi8vIExpY2Vuc2VkIHVuZGVyIE1JVCBPcGVuIFNvdXJjZVxuXG4vLy8vXG4vLy8gQGdyb3VwIGJyZWFkY3J1bWJzXG4vLy8vXG5cbi8vLyBNYXJnaW4gYXJvdW5kIGEgYnJlYWRjcnVtYnMgY29udGFpbmVyLlxuLy8vIEB0eXBlIE51bWJlclxuJGJyZWFkY3J1bWJzLW1hcmdpbjogMCAwICRnbG9iYWwtbWFyZ2luIDAgIWRlZmF1bHQ7XG5cbi8vLyBGb250IHNpemUgb2YgYnJlYWRjcnVtYiBsaW5rcy5cbi8vLyBAdHlwZSBOdW1iZXJcbiRicmVhZGNydW1icy1pdGVtLWZvbnQtc2l6ZTogcmVtLWNhbGMoMTEpICFkZWZhdWx0O1xuXG4vLy8gQ29sb3Igb2YgYnJlYWRjcnVtYiBsaW5rcy5cbi8vLyBAdHlwZSBDb2xvclxuJGJyZWFkY3J1bWJzLWl0ZW0tY29sb3I6ICRwcmltYXJ5LWNvbG9yICFkZWZhdWx0O1xuXG4vLy8gQ29sb3Igb2YgdGhlIGFjdGl2ZSBicmVhZGNydW1iIGxpbmsuXG4vLy8gQHR5cGUgQ29sb3JcbiRicmVhZGNydW1icy1pdGVtLWNvbG9yLWN1cnJlbnQ6ICRibGFjayAhZGVmYXVsdDtcblxuLy8vIE9wYWNpdHkgb2YgZGlzYWJsZWQgYnJlYWRjcnVtYiBsaW5rcy5cbi8vLyBAdHlwZSBOdW1iZXJcbiRicmVhZGNydW1icy1pdGVtLWNvbG9yLWRpc2FibGVkOiAkbWVkaXVtLWdyYXkgIWRlZmF1bHQ7XG5cbi8vLyBNYXJnaW4gYmV0d2VlbiBicmVhZGNydW1iIGl0ZW1zLlxuLy8vIEB0eXBlIE51bWJlclxuJGJyZWFkY3J1bWJzLWl0ZW0tbWFyZ2luOiAwLjc1cmVtICFkZWZhdWx0O1xuXG4vLy8gSWYgYHRydWVgLCBtYWtlcyBicmVhZGNydW1iIGxpbmtzIHVwcGVyY2FzZS5cbi8vLyBAdHlwZSBCb29sZWFuXG4kYnJlYWRjcnVtYnMtaXRlbS11cHBlcmNhc2U6IHRydWUgIWRlZmF1bHQ7XG5cbi8vLyBJZiBgdHJ1ZWAsIGFkZHMgYSBzZXBlcmF0b3IgYmV0d2VlbiBicmVhZGNydW1iIGxpbmtzLlxuLy8vIEB0eXBlIEJvb2xlYW5cbiRicmVhZGNydW1icy1pdGVtLXNlcGFyYXRvcjogdHJ1ZSAhZGVmYXVsdDtcblxuLy8gSWYgaXQgZXhpc3RzICRicmVhZGNydW1icy1pdGVtLXNsYXNoIGlzIHVzZWQgdG8gYnVpbGQgJGJyZWFkY3J1bWJzLWl0ZW0tc2VwYXJhdG9yLiBTZWUgdGhlIGRvY3VtZW50YXRpb24uXG5AaWYgdmFyaWFibGUtZXhpc3RzKGJyZWFkY3J1bWJzLWl0ZW0tc2xhc2gpIHtcbiAgJGJyZWFkY3J1bWJzLWl0ZW0tc2VwYXJhdG9yOiAkYnJlYWRjcnVtYnMtaXRlbS1zbGFzaDtcbn1cblxuLy8vIFVzZWQgY2hhcmFjdGVyIGZvciB0aGUgYnJlYWRjcnVtYiBzZXBhcmF0b3IuXG4vLy8gQHR5cGUgQ29udGVudFxuJGJyZWFkY3J1bWJzLWl0ZW0tc2VwYXJhdG9yLWl0ZW06ICcvJyAhZGVmYXVsdDtcblxuLy8vIFVzZWQgY2hhcmFjdGVyIGZvciB0aGUgYnJlYWRjcnVtYiBzZXBhcmF0b3IgaW4gcnRsIG1vZGUuXG4vLy8gQHR5cGUgQ29udGVudFxuJGJyZWFkY3J1bWJzLWl0ZW0tc2VwYXJhdG9yLWl0ZW0tcnRsOiAnXFxcXCcgIWRlZmF1bHQ7XG5cbi8vLyBDb2xvciBvZiBicmVhZGNydW1iIGl0ZW0uXG4vLy8gQHR5cGUgQ29sb3JcbiRicmVhZGNydW1icy1pdGVtLXNlcGFyYXRvci1jb2xvcjogJG1lZGl1bS1ncmF5ICFkZWZhdWx0O1xuXG4vLyBJZiBpdCBleGlzdHMgJGJyZWFkY3J1bWJzLWl0ZW0tc2xhc2gtY29sb3IgaXMgdXNlZCB0byBidWlsZCAkYnJlYWRjcnVtYnMtaXRlbS1zZXBhcmF0b3ItY29sb3IuIFNlZSB0aGUgZG9jdW1lbnRhdGlvbi5cbkBpZiB2YXJpYWJsZS1leGlzdHMoYnJlYWRjcnVtYnMtaXRlbS1zbGFzaC1jb2xvcikge1xuICAkYnJlYWRjcnVtYnMtaXRlbS1zZXBhcmF0b3ItY29sb3I6ICRicmVhZGNydW1icy1pdGVtLXNsYXNoLWNvbG9yO1xufVxuXG4vLy8gQWRkcyBzdHlsZXMgZm9yIGEgYnJlYWRjcnVtYnMgY29udGFpbmVyLCBhbG9uZyB3aXRoIHRoZSBzdHlsZXMgZm9yIHRoZSBgPGxpPmAgYW5kIGA8YT5gIGVsZW1lbnRzIGluc2lkZSBvZiBpdC5cbkBtaXhpbiBicmVhZGNydW1icy1jb250YWluZXIge1xuICBAaW5jbHVkZSBjbGVhcmZpeDtcbiAgbWFyZ2luOiAkYnJlYWRjcnVtYnMtbWFyZ2luO1xuICBsaXN0LXN0eWxlOiBub25lO1xuXG4gIC8vIEl0ZW0gd3JhcHBlclxuICBsaSB7XG4gICAgZmxvYXQ6ICN7JGdsb2JhbC1sZWZ0fTtcblxuICAgIGZvbnQtc2l6ZTogJGJyZWFkY3J1bWJzLWl0ZW0tZm9udC1zaXplO1xuICAgIGNvbG9yOiAkYnJlYWRjcnVtYnMtaXRlbS1jb2xvci1jdXJyZW50O1xuICAgIGN1cnNvcjogZGVmYXVsdDtcblxuICAgIEBpZiAkYnJlYWRjcnVtYnMtaXRlbS11cHBlcmNhc2Uge1xuICAgICAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbiAgICB9XG5cbiAgICBAaWYgJGJyZWFkY3J1bWJzLWl0ZW0tc2VwYXJhdG9yIHtcbiAgICAgIC8vIE5lZWQgdG8gZXNjYXBlIHRoZSBiYWNrc2xhc2hcbiAgICAgICRzZXBhcmF0b3I6IGlmKCRnbG9iYWwtdGV4dC1kaXJlY3Rpb24gPT0gJ2x0cicsICRicmVhZGNydW1icy1pdGVtLXNlcGFyYXRvci1pdGVtLCAkYnJlYWRjcnVtYnMtaXRlbS1zZXBhcmF0b3ItaXRlbS1ydGwpO1xuXG4gICAgICAmOm5vdCg6bGFzdC1jaGlsZCk6OmFmdGVyIHtcbiAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgICBtYXJnaW46IDAgJGJyZWFkY3J1bWJzLWl0ZW0tbWFyZ2luO1xuICAgICAgICBvcGFjaXR5OiAxO1xuICAgICAgICBjb250ZW50OiAkc2VwYXJhdG9yO1xuICAgICAgICBjb2xvcjogJGJyZWFkY3J1bWJzLWl0ZW0tc2VwYXJhdG9yLWNvbG9yO1xuICAgICAgfVxuICAgIH1cbiAgICBAZWxzZSB7XG4gICAgICBtYXJnaW4tI3skZ2xvYmFsLXJpZ2h0fTogJGJyZWFkY3J1bWJzLWl0ZW0tbWFyZ2luO1xuICAgIH1cbiAgfVxuXG4gIC8vIFBhZ2UgbGlua3NcbiAgYSB7XG4gICAgY29sb3I6ICRicmVhZGNydW1icy1pdGVtLWNvbG9yO1xuXG4gICAgJjpob3ZlciB7XG4gICAgICB0ZXh0LWRlY29yYXRpb246IHVuZGVybGluZTtcbiAgICB9XG4gIH1cbn1cblxuQG1peGluIGZvdW5kYXRpb24tYnJlYWRjcnVtYnMge1xuICAuYnJlYWRjcnVtYnMge1xuICAgIEBpbmNsdWRlIGJyZWFkY3J1bWJzLWNvbnRhaW5lcjtcblxuICAgIC5kaXNhYmxlZCB7XG4gICAgICBjb2xvcjogJGJyZWFkY3J1bWJzLWl0ZW0tY29sb3ItZGlzYWJsZWQ7XG4gICAgICBjdXJzb3I6IG5vdC1hbGxvd2VkO1xuICAgIH1cbiAgfVxufVxuIiwiLy8gRm91bmRhdGlvbiBmb3IgU2l0ZXMgYnkgWlVSQlxuLy8gZm91bmRhdGlvbi56dXJiLmNvbVxuLy8gTGljZW5zZWQgdW5kZXIgTUlUIE9wZW4gU291cmNlXG5cbi8vLy9cbi8vLyBAZ3JvdXAgYnV0dG9uLWdyb3VwXG4vLy8vXG5cbi8vLyBNYXJnaW4gZm9yIGJ1dHRvbiBncm91cHMuXG4vLy8gQHR5cGUgTnVtYmVyXG4kYnV0dG9uZ3JvdXAtbWFyZ2luOiAxcmVtICFkZWZhdWx0O1xuXG4vLy8gTWFyZ2luIGJldHdlZW4gYnV0dG9ucyBpbiBhIGJ1dHRvbiBncm91cC5cbi8vLyBAdHlwZSBOdW1iZXJcbiRidXR0b25ncm91cC1zcGFjaW5nOiAxcHggIWRlZmF1bHQ7XG5cbi8vLyBTZWxlY3RvciBmb3IgdGhlIGJ1dHRvbnMgaW5zaWRlIGEgYnV0dG9uIGdyb3VwLlxuLy8vIEB0eXBlIFN0cmluZ1xuJGJ1dHRvbmdyb3VwLWNoaWxkLXNlbGVjdG9yOiAnLmJ1dHRvbicgIWRlZmF1bHQ7XG5cbi8vLyBNYXhpbXVtIG51bWJlciBvZiBidXR0b25zIHRoYXQgY2FuIGJlIGluIGFuIGV2ZW4td2lkdGggYnV0dG9uIGdyb3VwLlxuLy8vIEB0eXBlIE51bWJlclxuJGJ1dHRvbmdyb3VwLWV4cGFuZC1tYXg6IDYgIWRlZmF1bHQ7XG5cbi8vLyBEZXRlcm1pbmVzIGlmICRidXR0b24tcmFkaXVzIGlzIGFwcGxpZWQgdG8gZWFjaCBidXR0b24gb3IgdGhlIGJ1dHRvbiBncm91cCBhcyBhIHdob2xlLiBVc2UgJGdsb2JhbC1yYWRpdXMgaW4gX3NldHRpbmdzLnNjc3MgdG8gY2hhbmdlIHJhZGl1cy5cbi8vLyBAdHlwZSBCb29sZWFuXG4kYnV0dG9uZ3JvdXAtcmFkaXVzLW9uLWVhY2g6IHRydWUgIWRlZmF1bHQ7XG5cbi8vLyBBZGQgc3R5bGVzIGZvciBhIGJ1dHRvbiBncm91cCBjb250YWluZXIuXG4vLy8gQHBhcmFtIHtTdHJpbmd9ICRjaGlsZC1zZWxlY3RvciBbJGJ1dHRvbmdyb3VwLWNoaWxkLXNlbGVjdG9yXSAtIFNlbGVjdG9yIGZvciB0aGUgYnV0dG9ucyBpbnNpZGUgYSBidXR0b24gZ3JvdXAuXG4vLy8gQHBhcmFtIHtOdW1iZXJ9ICRzcGFjaW5nIFskYnV0dG9uZ3JvdXAtc3BhY2luZ10gLSBTcGFjaW5nIGJldHdlZW4gYnV0dG9ucyBpbiBhIGJ1dHRvbiBncm91cC5cbkBtaXhpbiBidXR0b24tZ3JvdXAoXG4gICRjaGlsZC1zZWxlY3RvcjogJGJ1dHRvbmdyb3VwLWNoaWxkLXNlbGVjdG9yLFxuICAkc3BhY2luZzogJGJ1dHRvbmdyb3VwLXNwYWNpbmdcbikge1xuICBAaW5jbHVkZSBjbGVhcmZpeDtcbiAgbWFyZ2luLWJvdHRvbTogJGJ1dHRvbmdyb3VwLW1hcmdpbjtcblxuICBAaWYgJGdsb2JhbC1mbGV4Ym94IHtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIGZsZXgtd3JhcDogbm93cmFwO1xuICAgIGFsaWduLWl0ZW1zOiBzdHJldGNoO1xuICB9XG4gIEBlbHNlIHtcbiAgICBmb250LXNpemU6IDA7XG4gIH1cblxuICAjeyRjaGlsZC1zZWxlY3Rvcn0ge1xuICAgIG1hcmdpbjogMDtcbiAgICBtYXJnaW4tI3skZ2xvYmFsLXJpZ2h0fTogJHNwYWNpbmc7XG4gICAgbWFyZ2luLWJvdHRvbTogJHNwYWNpbmc7XG4gICAgZm9udC1zaXplOiBtYXAtZ2V0KCRidXR0b24tc2l6ZXMsIGRlZmF1bHQpO1xuXG4gICAgQGlmICRnbG9iYWwtZmxleGJveCB7XG4gICAgICBmbGV4OiAwIDAgYXV0bztcbiAgICB9XG5cbiAgICAmOmxhc3QtY2hpbGQge1xuICAgICAgbWFyZ2luLSN7JGdsb2JhbC1yaWdodH06IDA7XG4gICAgfVxuXG4gICAgQGlmIG5vdCAkYnV0dG9uZ3JvdXAtcmFkaXVzLW9uLWVhY2gge1xuICAgICAgYm9yZGVyLXJhZGl1czogMDtcblxuICAgICAgJjpmaXJzdC1jaGlsZCB7XG4gICAgICAgIGJvcmRlci10b3AtI3skZ2xvYmFsLWxlZnR9LXJhZGl1czogJGJ1dHRvbi1yYWRpdXM7XG4gICAgICAgIGJvcmRlci1ib3R0b20tI3skZ2xvYmFsLWxlZnR9LXJhZGl1czogJGJ1dHRvbi1yYWRpdXM7XG4gICAgICB9XG5cbiAgICAgICY6bGFzdC1jaGlsZCB7XG4gICAgICAgIGJvcmRlci10b3AtI3skZ2xvYmFsLXJpZ2h0fS1yYWRpdXM6ICRidXR0b24tcmFkaXVzO1xuICAgICAgICBib3JkZXItYm90dG9tLSN7JGdsb2JhbC1yaWdodH0tcmFkaXVzOiAkYnV0dG9uLXJhZGl1cztcbiAgICAgIH1cbiAgICB9XG5cbiAgfVxufVxuXG4vLy8gQ3JlYXRlcyBhIGZ1bGwtd2lkdGggYnV0dG9uIGdyb3VwLCBtYWtpbmcgZWFjaCBidXR0b24gZXF1YWwgd2lkdGguXG4vLy8gQHBhcmFtIHtTdHJpbmd9ICRzZWxlY3RvciBbJGJ1dHRvbmdyb3VwLWNoaWxkLXNlbGVjdG9yXSAtIFNlbGVjdG9yIGZvciB0aGUgYnV0dG9ucyBpbnNpZGUgYSBidXR0b24gZ3JvdXAuXG4vLy8gQHBhcmFtIHtOdW1iZXJ9ICRzcGFjaW5nIFskYnV0dG9uZ3JvdXAtc3BhY2luZ10gLSBTcGFjaW5nIGJldHdlZW4gYnV0dG9ucyBpbiBhIGJ1dHRvbiBncm91cC5cbkBtaXhpbiBidXR0b24tZ3JvdXAtZXhwYW5kKFxuICAkc2VsZWN0b3I6ICRidXR0b25ncm91cC1jaGlsZC1zZWxlY3RvcixcbiAgJHNwYWNpbmc6ICRidXR0b25ncm91cC1zcGFjaW5nLFxuICAkY291bnQ6IG51bGxcbikge1xuICBAaWYgbm90ICRnbG9iYWwtZmxleGJveCB7XG4gICAgbWFyZ2luLSN7JGdsb2JhbC1yaWdodH06IC0kc3BhY2luZztcblxuICAgICY6OmJlZm9yZSxcbiAgICAmOjphZnRlciB7XG4gICAgICBkaXNwbGF5OiBub25lO1xuICAgIH1cbiAgfVxuXG4gICN7JHNlbGVjdG9yfSB7XG4gICAgQGlmICRnbG9iYWwtZmxleGJveCB7XG4gICAgICBmbGV4OiAxIDEgMHB4OyAvLyBzYXNzLWxpbnQ6ZGlzYWJsZS1saW5lIHplcm8tdW5pdFxuICAgIH1cbiAgICBAZWxzZSB7XG4gICAgICAvLyBPbmUgY2hpbGRcbiAgICAgICY6Zmlyc3QtY2hpbGQ6bGFzdC1jaGlsZCB7XG4gICAgICAgIHdpZHRoOiAxMDAlXG4gICAgICB9XG5cbiAgICAgIC8vIFR3byBvciBtb3JlIGNoaWxkcmVlblxuICAgICAgQGZvciAkaSBmcm9tIDIgdGhyb3VnaCAkYnV0dG9uZ3JvdXAtZXhwYW5kLW1heCB7XG4gICAgICAgICY6Zmlyc3QtY2hpbGQ6bnRoLWxhc3QtY2hpbGQoI3skaX0pIHtcbiAgICAgICAgICAmLCAmOmZpcnN0LWNoaWxkOm50aC1sYXN0LWNoaWxkKCN7JGl9KSB+ICN7JHNlbGVjdG9yfSB7XG4gICAgICAgICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgICAgICAgICB3aWR0aDogY2FsYygje3BlcmNlbnRhZ2UoMSAvICRpKX0gLSAjeyRzcGFjaW5nfSk7XG4gICAgICAgICAgICBtYXJnaW4tI3skZ2xvYmFsLXJpZ2h0fTogJHNwYWNpbmc7XG5cbiAgICAgICAgICAgICY6bGFzdC1jaGlsZCB7XG4gICAgICAgICAgICAgIG1hcmdpbi0jeyRnbG9iYWwtcmlnaHR9OiAkc3BhY2luZyAqIC0kYnV0dG9uZ3JvdXAtZXhwYW5kLW1heDtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gIH1cbn1cblxuLy8vIFN0YWNrcyB0aGUgYnV0dG9ucyBpbiBhIGJ1dHRvbiBncm91cC5cbi8vLyBAcGFyYW0ge1N0cmluZ30gJHNlbGVjdG9yIFskYnV0dG9uZ3JvdXAtY2hpbGQtc2VsZWN0b3JdIC0gU2VsZWN0b3IgZm9yIHRoZSBidXR0b25zIGluc2lkZSB0aGUgYnV0dG9uIGdyb3VwLlxuQG1peGluIGJ1dHRvbi1ncm91cC1zdGFjayhcbiAgJHNlbGVjdG9yOiAkYnV0dG9uZ3JvdXAtY2hpbGQtc2VsZWN0b3Jcbikge1xuICBAaWYgJGdsb2JhbC1mbGV4Ym94IHtcbiAgICBmbGV4LXdyYXA6IHdyYXA7XG4gIH1cblxuICAjeyRzZWxlY3Rvcn0ge1xuICAgIEBpZiAkZ2xvYmFsLWZsZXhib3gge1xuICAgICAgZmxleDogMCAwIDEwMCU7XG4gICAgfVxuICAgIEBlbHNlIHtcbiAgICAgIHdpZHRoOiAxMDAlO1xuICAgIH1cblxuICAgICY6bGFzdC1jaGlsZCB7XG4gICAgICBtYXJnaW4tYm90dG9tOiAwO1xuICAgIH1cblxuXG4gICAgQGlmIG5vdCAkYnV0dG9uZ3JvdXAtcmFkaXVzLW9uLWVhY2gge1xuICAgICAgYm9yZGVyLXJhZGl1czogMDtcblxuICAgICAgJjpmaXJzdC1jaGlsZHtcbiAgICAgICAgYm9yZGVyLXRvcC0jeyRnbG9iYWwtbGVmdH0tcmFkaXVzOiAkZ2xvYmFsLXJhZGl1cztcbiAgICAgICAgYm9yZGVyLXRvcC0jeyRnbG9iYWwtcmlnaHR9LXJhZGl1czogJGdsb2JhbC1yYWRpdXM7XG4gICAgICB9XG5cbiAgICAgICY6bGFzdC1jaGlsZCB7XG4gICAgICAgIG1hcmdpbi1ib3R0b206IDA7XG4gICAgICAgIGJvcmRlci1ib3R0b20tI3skZ2xvYmFsLWxlZnR9LXJhZGl1czogJGdsb2JhbC1yYWRpdXM7XG4gICAgICAgIGJvcmRlci1ib3R0b20tI3skZ2xvYmFsLXJpZ2h0fS1yYWRpdXM6ICRnbG9iYWwtcmFkaXVzO1xuICAgICAgfVxuICAgIH1cblxuICB9XG59XG5cbi8vLyBVbi1zdGFja3MgdGhlIGJ1dHRvbnMgaW4gYSBidXR0b24gZ3JvdXAuXG4vLy8gQHBhcmFtIHtTdHJpbmd9ICRzZWxlY3RvciBbJGJ1dHRvbmdyb3VwLWNoaWxkLXNlbGVjdG9yXSAtIFNlbGVjdG9yIGZvciB0aGUgYnV0dG9ucyBpbnNpZGUgdGhlIGJ1dHRvbiBncm91cC5cbkBtaXhpbiBidXR0b24tZ3JvdXAtdW5zdGFjayhcbiAgJHNlbGVjdG9yOiAkYnV0dG9uZ3JvdXAtY2hpbGQtc2VsZWN0b3Jcbikge1xuICAjeyRzZWxlY3Rvcn0ge1xuICAgIEBpZiAkZ2xvYmFsLWZsZXhib3gge1xuICAgICAgZmxleDogMSAxIDBweDsgLy8gc2Fzcy1saW50OmRpc2FibGUtbGluZSB6ZXJvLXVuaXRcbiAgICB9XG4gICAgQGVsc2Uge1xuICAgICAgd2lkdGg6IGF1dG87XG4gICAgfVxuICAgIG1hcmdpbi1ib3R0b206IDA7XG5cbiAgICBAaWYgbm90ICRidXR0b25ncm91cC1yYWRpdXMtb24tZWFjaCB7XG4gICAgICAmOmZpcnN0LWNoaWxkIHtcbiAgICAgICAgYm9yZGVyLXRvcC0jeyRnbG9iYWwtbGVmdH0tcmFkaXVzOiAkZ2xvYmFsLXJhZGl1cztcbiAgICAgICAgYm9yZGVyLXRvcC0jeyRnbG9iYWwtcmlnaHR9LXJhZGl1czogMDtcbiAgICAgICAgYm9yZGVyLWJvdHRvbS0jeyRnbG9iYWwtbGVmdH0tcmFkaXVzOiAkZ2xvYmFsLXJhZGl1cztcbiAgICAgIH1cblxuICAgICAgJjpsYXN0LWNoaWxkIHtcbiAgICAgICAgYm9yZGVyLXRvcC0jeyRnbG9iYWwtcmlnaHR9LXJhZGl1czogJGdsb2JhbC1yYWRpdXM7XG4gICAgICAgIGJvcmRlci1ib3R0b20tI3skZ2xvYmFsLXJpZ2h0fS1yYWRpdXM6ICRnbG9iYWwtcmFkaXVzO1xuICAgICAgICBib3JkZXItYm90dG9tLSN7JGdsb2JhbC1sZWZ0fS1yYWRpdXM6IDA7XG4gICAgICB9XG4gICAgfVxuXG4gIH1cbn1cblxuQG1peGluIGZvdW5kYXRpb24tYnV0dG9uLWdyb3VwIHtcbiAgLmJ1dHRvbi1ncm91cCB7XG4gICAgQGluY2x1ZGUgYnV0dG9uLWdyb3VwO1xuXG4gICAgLy8gU2l6ZXNcbiAgICBAZWFjaCAkc2l6ZSwgJHZhbHVlIGluIG1hcC1yZW1vdmUoJGJ1dHRvbi1zaXplcywgZGVmYXVsdCkge1xuICAgICAgJi4jeyRzaXplfSAjeyRidXR0b25ncm91cC1jaGlsZC1zZWxlY3Rvcn0ge1xuICAgICAgICBmb250LXNpemU6ICR2YWx1ZTtcbiAgICAgIH1cbiAgICB9XG5cbiAgICAvLyBFdmVuLXdpZHRoIEdyb3VwXG4gICAgJi5leHBhbmRlZCB7IEBpbmNsdWRlIGJ1dHRvbi1ncm91cC1leHBhbmQ7IH1cblxuICAgIC8vIENvbG9yc1xuICAgIEBlYWNoICRuYW1lLCAkY29sb3IgaW4gJGZvdW5kYXRpb24tcGFsZXR0ZSB7XG4gICAgICBAaWYgJGJ1dHRvbi1maWxsICE9IGhvbGxvdyB7XG4gICAgICAgICYuI3skbmFtZX0gI3skYnV0dG9uZ3JvdXAtY2hpbGQtc2VsZWN0b3J9IHtcbiAgICAgICAgICBAaW5jbHVkZSBidXR0b24tc3R5bGUoJGNvbG9yLCBhdXRvLCBhdXRvKTtcbiAgICAgICAgfVxuICAgICAgfVxuICAgICAgQGVsc2Uge1xuICAgICAgICAmLiN7JG5hbWV9ICN7JGJ1dHRvbmdyb3VwLWNoaWxkLXNlbGVjdG9yfSB7XG4gICAgICAgICAgQGluY2x1ZGUgYnV0dG9uLWhvbGxvdztcbiAgICAgICAgICBAaW5jbHVkZSBidXR0b24taG9sbG93LXN0eWxlKCRjb2xvcik7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG5cbiAgICAmLnN0YWNrZWQsXG4gICAgJi5zdGFja2VkLWZvci1zbWFsbCxcbiAgICAmLnN0YWNrZWQtZm9yLW1lZGl1bSB7XG4gICAgICBAaW5jbHVkZSBidXR0b24tZ3JvdXAtc3RhY2s7XG4gICAgfVxuXG4gICAgJi5zdGFja2VkLWZvci1zbWFsbCB7XG4gICAgICBAaW5jbHVkZSBicmVha3BvaW50KG1lZGl1bSkge1xuICAgICAgICBAaW5jbHVkZSBidXR0b24tZ3JvdXAtdW5zdGFjaztcbiAgICAgIH1cbiAgICB9XG5cbiAgICAmLnN0YWNrZWQtZm9yLW1lZGl1bSB7XG4gICAgICBAaW5jbHVkZSBicmVha3BvaW50KGxhcmdlKSB7XG4gICAgICAgIEBpbmNsdWRlIGJ1dHRvbi1ncm91cC11bnN0YWNrO1xuICAgICAgfVxuICAgIH1cblxuICAgICYuc3RhY2tlZC1mb3Itc21hbGwuZXhwYW5kZWQgeyAvLyBzYXNzLWxpbnQ6ZGlzYWJsZS1saW5lIGZvcmNlLWVsZW1lbnQtbmVzdGluZ1xuICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludChzbWFsbCBvbmx5KSB7XG4gICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuXG4gICAgICAgICN7JGJ1dHRvbmdyb3VwLWNoaWxkLXNlbGVjdG9yfSB7XG4gICAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgICAgbWFyZ2luLSN7JGdsb2JhbC1yaWdodH06IDA7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gIH1cbn1cbiIsIi8vIEZvdW5kYXRpb24gZm9yIFNpdGVzIGJ5IFpVUkJcbi8vIGZvdW5kYXRpb24uenVyYi5jb21cbi8vIExpY2Vuc2VkIHVuZGVyIE1JVCBPcGVuIFNvdXJjZVxuXG4vLy8vXG4vLy8gQGdyb3VwIGNhbGxvdXRcbi8vLy9cblxuLy8vIERlZmF1bHQgYmFja2dyb3VuZCBjb2xvci5cbi8vLyBAdHlwZSBDb2xvclxuJGNhbGxvdXQtYmFja2dyb3VuZDogJHdoaXRlICFkZWZhdWx0O1xuXG4vLy8gRGVmYXVsdCBmYWRlIHZhbHVlIGZvciBjYWxsb3V0IGJhY2tncm91bmRzLlxuLy8vIEB0eXBlIE51bWJlclxuJGNhbGxvdXQtYmFja2dyb3VuZC1mYWRlOiA4NSUgIWRlZmF1bHQ7XG5cbi8vLyBEZWZhdWx0IGJvcmRlciBzdHlsZSBmb3IgY2FsbG91dHMuXG4vLy8gQHR5cGUgTGlzdFxuJGNhbGxvdXQtYm9yZGVyOiAxcHggc29saWQgcmdiYSgkYmxhY2ssIDAuMjUpICFkZWZhdWx0O1xuXG4vLy8gRGVmYXVsdCBib3R0b20gbWFyZ2luIGZvciBjYWxsb3V0cy5cbi8vLyBAdHlwZSBOdW1iZXJcbiRjYWxsb3V0LW1hcmdpbjogMCAwIDFyZW0gMCAhZGVmYXVsdDtcblxuLy8vIERlZmF1bHQgaW5uZXIgcGFkZGluZyBmb3IgY2FsbG91dHMuXG4vLy8gQHR5cGUgTnVtYmVyXG4kY2FsbG91dC1wYWRkaW5nOiAxcmVtICFkZWZhdWx0O1xuXG4vLy8gRGVmYXVsdCBmb250IGNvbG9yIGZvciBjYWxsb3V0cy5cbi8vLyBAdHlwZSBDb2xvclxuJGNhbGxvdXQtZm9udC1jb2xvcjogJGJvZHktZm9udC1jb2xvciAhZGVmYXVsdDtcblxuLy8vIERlZmF1bHQgZm9udCBjb2xvciBmb3IgY2FsbG91dHMsIGlmIHRoZSBjYWxsb3V0IGhhcyBhIGRhcmsgYmFja2dyb3VuZC5cbi8vLyBAdHlwZSBDb2xvclxuJGNhbGxvdXQtZm9udC1jb2xvci1hbHQ6ICRib2R5LWJhY2tncm91bmQgIWRlZmF1bHQ7XG5cbi8vLyBEZWZhdWx0IGJvcmRlciByYWRpdXMgZm9yIGNhbGxvdXRzLlxuLy8vIEB0eXBlIENvbG9yXG4kY2FsbG91dC1yYWRpdXM6ICRnbG9iYWwtcmFkaXVzICFkZWZhdWx0O1xuXG4vLy8gQW1vdW50IHRvIHRpbnQgbGlua3MgdXNlZCB3aXRoaW4gY29sb3JlZCBwYW5lbHMuIFNldCB0byBgZmFsc2VgIHRvIGRpc2FibGUgdGhpcyBmZWF0dXJlLlxuLy8vIEB0eXBlIE51bWJlciB8IEJvb2xlYW5cbiRjYWxsb3V0LWxpbmstdGludDogMzAlICFkZWZhdWx0O1xuXG4vLy8gQWRkcyBiYXNpYyBzdHlsZXMgZm9yIGEgY2FsbG91dCwgaW5jbHVkaW5nIHBhZGRpbmcgYW5kIG1hcmdpbi5cbkBtaXhpbiBjYWxsb3V0LWJhc2UoKSB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgbWFyZ2luOiAkY2FsbG91dC1tYXJnaW47XG4gIHBhZGRpbmc6ICRjYWxsb3V0LXBhZGRpbmc7XG5cbiAgYm9yZGVyOiAkY2FsbG91dC1ib3JkZXI7XG4gIGJvcmRlci1yYWRpdXM6ICRjYWxsb3V0LXJhZGl1cztcblxuICAvLyBSZXNwZWN0IHRoZSBwYWRkaW5nLCBmb29sLlxuICA+IDpmaXJzdC1jaGlsZCB7XG4gICAgbWFyZ2luLXRvcDogMDtcbiAgfVxuXG4gID4gOmxhc3QtY2hpbGQge1xuICAgIG1hcmdpbi1ib3R0b206IDA7XG4gIH1cbn1cblxuLy8vIEdlbmVyYXRlIHF1aWNrIHN0eWxlcyBmb3IgYSBjYWxsb3V0IHVzaW5nIGEgc2luZ2xlIGNvbG9yIGFzIGEgYmFzZWxpbmUuXG4vLy8gQHBhcmFtIHtDb2xvcn0gJGNvbG9yIFskY2FsbG91dC1iYWNrZ3JvdW5kXSAtIENvbG9yIHRvIHVzZS5cbkBtaXhpbiBjYWxsb3V0LXN0eWxlKCRjb2xvcjogJGNhbGxvdXQtYmFja2dyb3VuZCkge1xuICAkYmFja2dyb3VuZDogc2NhbGUtY29sb3IoJGNvbG9yLCAkbGlnaHRuZXNzOiAkY2FsbG91dC1iYWNrZ3JvdW5kLWZhZGUpO1xuXG4gIGJhY2tncm91bmQtY29sb3I6ICRiYWNrZ3JvdW5kO1xuICBjb2xvcjogY29sb3ItcGljay1jb250cmFzdCgkYmFja2dyb3VuZCwgKCRjYWxsb3V0LWZvbnQtY29sb3IsICRjYWxsb3V0LWZvbnQtY29sb3ItYWx0KSk7XG59XG5cbkBtaXhpbiBjYWxsb3V0LXNpemUoJHBhZGRpbmcpIHtcbiAgcGFkZGluZy10b3A6ICRwYWRkaW5nO1xuICBwYWRkaW5nLXJpZ2h0OiAkcGFkZGluZztcbiAgcGFkZGluZy1ib3R0b206ICRwYWRkaW5nO1xuICBwYWRkaW5nLWxlZnQ6ICRwYWRkaW5nO1xufVxuXG5cbi8vLyBBZGRzIHN0eWxlcyBmb3IgYSBjYWxsb3V0LlxuLy8vIEBwYXJhbSB7Q29sb3J9ICRjb2xvciBbJGNhbGxvdXQtYmFja2dyb3VuZF0gLSBDb2xvciB0byB1c2UuXG5AbWl4aW4gY2FsbG91dCgkY29sb3I6ICRjYWxsb3V0LWJhY2tncm91bmQpIHtcbiAgQGluY2x1ZGUgY2FsbG91dC1iYXNlO1xuICBAaW5jbHVkZSBjYWxsb3V0LXN0eWxlKCRjb2xvcik7XG59XG5cbkBtaXhpbiBmb3VuZGF0aW9uLWNhbGxvdXQge1xuICAuY2FsbG91dCB7XG4gICAgQGluY2x1ZGUgY2FsbG91dDtcblxuICAgIEBlYWNoICRuYW1lLCAkY29sb3IgaW4gJGZvdW5kYXRpb24tcGFsZXR0ZSB7XG4gICAgICAmLiN7JG5hbWV9IHtcbiAgICAgICAgQGluY2x1ZGUgY2FsbG91dC1zdHlsZSgkY29sb3IpO1xuICAgICAgfVxuICAgIH1cblxuICAgICYuc21hbGwge1xuICAgICAgQGluY2x1ZGUgY2FsbG91dC1zaXplKDAuNXJlbSk7XG4gICAgfVxuXG4gICAgJi5sYXJnZSB7XG4gICAgICBAaW5jbHVkZSBjYWxsb3V0LXNpemUoM3JlbSk7XG4gICAgfVxuICB9XG59XG4iLCIvLyBGb3VuZGF0aW9uIGZvciBTaXRlcyBieSBaVVJCXG4vLyBmb3VuZGF0aW9uLnp1cmIuY29tXG4vLyBMaWNlbnNlZCB1bmRlciBNSVQgT3BlbiBTb3VyY2VcblxuLy8vL1xuLy8vIEBncm91cCBjYXJkXG4vLy8vXG5cbi8vLyBEZWZ1YWx0IGJhY2tncm91bmQgY29sb3IuXG4vLy8gQHR5cGUgQ29sb3JcbiRjYXJkLWJhY2tncm91bmQ6ICR3aGl0ZSAhZGVmYXVsdDtcblxuLy8vIERlZmF1bHQgZm9udCBjb2xvciBmb3IgY2FyZHMuXG4vLy8gQHR5cGUgQ29sb3JcbiRjYXJkLWZvbnQtY29sb3I6ICRib2R5LWZvbnQtY29sb3IgIWRlZmF1bHQ7XG5cbi8vLyBEZWZhdWx0IGJhY2tncm91bmQuXG4vLy8gQHR5cGUgQ29sb3JcbiRjYXJkLWRpdmlkZXItYmFja2dyb3VuZDogJGxpZ2h0LWdyYXkgIWRlZmF1bHQ7XG5cbi8vLyBEZWZhdWx0IGJvcmRlciBzdHlsZS5cbi8vLyBAdHlwZSBMaXN0XG4kY2FyZC1ib3JkZXI6IDFweCBzb2xpZCAkbGlnaHQtZ3JheSAhZGVmYXVsdDtcblxuLy8vIERlZmF1bHQgY2FyZCBzaGFkb3cuXG4vLy8gQHR5cGUgTGlzdFxuJGNhcmQtc2hhZG93OiBub25lICFkZWZhdWx0O1xuXG4vLy8gRGVmYXVsdCBib3JkZXIgcmFkaXVzLlxuLy8vIEB0eXBlIExpc3RcbiRjYXJkLWJvcmRlci1yYWRpdXM6ICRnbG9iYWwtcmFkaXVzICFkZWZhdWx0O1xuXG4vLy8gRGVmYXVsdCBwYWRkaW5nLlxuLy8vIEB0eXBlIE51bWJlclxuJGNhcmQtcGFkZGluZzogJGdsb2JhbC1wYWRkaW5nICFkZWZhdWx0O1xuXG4vLy8gRGVmYXVsdCBib3R0b20gbWFyZ2luLlxuLy8vIEB0eXBlIG51bWJlclxuJGNhcmQtbWFyZ2luLWJvdHRvbTogJGdsb2JhbC1tYXJnaW4gIWRlZmF1bHQ7XG5cbi8vLyBBZGRzIHN0eWxlcyBmb3IgYSBjYXJkIGNvbnRhaW5lci5cbi8vLyBAcGFyYW0ge0NvbG9yfSAkYmFja2dyb3VuZCAtIEJhY2tncm91bmQgY29sb3Igb2YgdGhlIGNhcmQuXG4vLy8gQHBhcmFtIHtDb2xvcn0gJGNvbG9yIC0gZm9udCBjb2xvciBvZiB0aGUgY2FyZC5cbi8vLyBAcGFyYW0ge051bWJlcn0gJG1hcmdpbiAtIEJvdHRvbSBtYXJnaW4gb2YgdGhlIGNhcmQuXG4vLy8gQHBhcmFtIHtMaXN0fSAkYm9yZGVyIC0gQm9yZGVyIGFyb3VuZCB0aGUgY2FyZC5cbi8vLyBAcGFyYW0ge0xpc3R9ICRyYWRpdXMgLSBib3JkZXIgcmFkaXVzIG9mIHRoZSBjYXJkLlxuLy8vIEBwYXJhbSB7TGlzdH0gJHNoYWRvdyAtIGJveCBzaGFkb3cgb2YgdGhlIGNhcmQuXG5AbWl4aW4gY2FyZC1jb250YWluZXIoXG4gICRiYWNrZ3JvdW5kOiAkY2FyZC1iYWNrZ3JvdW5kLFxuICAkY29sb3I6ICRjYXJkLWZvbnQtY29sb3IsXG4gICRtYXJnaW46ICRjYXJkLW1hcmdpbi1ib3R0b20sXG4gICRib3JkZXI6ICRjYXJkLWJvcmRlcixcbiAgJHJhZGl1czogJGNhcmQtYm9yZGVyLXJhZGl1cyxcbiAgJHNoYWRvdzogJGNhcmQtc2hhZG93XG4pIHtcbiAgQGlmICRnbG9iYWwtZmxleGJveCB7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuICAgIGZsZXgtZ3JvdzogMTtcbiAgfVxuXG4gIG1hcmdpbi1ib3R0b206ICRtYXJnaW47XG5cbiAgYm9yZGVyOiAkYm9yZGVyO1xuICBib3JkZXItcmFkaXVzOiAkcmFkaXVzO1xuXG4gIGJhY2tncm91bmQ6ICRiYWNrZ3JvdW5kO1xuICBib3gtc2hhZG93OiAkc2hhZG93O1xuXG4gIG92ZXJmbG93OiBoaWRkZW47XG4gIGNvbG9yOiAkY29sb3I7XG5cbiAgJiA+IDpsYXN0LWNoaWxkIHtcbiAgICBtYXJnaW4tYm90dG9tOiAwO1xuICB9XG59XG5cbi8vLyBBZGRzIHN0eWxlcyBmb3IgYSBjYXJkIGRpdmlkZXIuXG5AbWl4aW4gY2FyZC1kaXZpZGVyKFxuICAkYmFja2dyb3VuZDogJGNhcmQtZGl2aWRlci1iYWNrZ3JvdW5kLFxuICAkcGFkZGluZzogJGNhcmQtcGFkZGluZ1xuKSB7XG4gIEBpZiAkZ2xvYmFsLWZsZXhib3gge1xuICAgIGZsZXg6IDAgMSBhdXRvO1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gIH1cblxuICBwYWRkaW5nOiAkcGFkZGluZztcbiAgYmFja2dyb3VuZDogJGJhY2tncm91bmQ7XG5cbiAgJiA+IDpsYXN0LWNoaWxkIHtcbiAgICBtYXJnaW4tYm90dG9tOiAwO1xuICB9XG59XG5cbi8vLyBBZGRzIHN0eWxlcyBmb3IgYSBjYXJkIHNlY3Rpb24uXG5AbWl4aW4gY2FyZC1zZWN0aW9uKFxuICAkcGFkZGluZzogJGNhcmQtcGFkZGluZ1xuKSB7XG4gIEBpZiAkZ2xvYmFsLWZsZXhib3gge1xuICAgIGZsZXg6IDEgMCBhdXRvO1xuICB9XG5cbiAgcGFkZGluZzogJHBhZGRpbmc7XG5cbiAgJiA+IDpsYXN0LWNoaWxkIHtcbiAgICBtYXJnaW4tYm90dG9tOiAwO1xuICB9XG59XG5cbkBtaXhpbiBmb3VuZGF0aW9uLWNhcmQge1xuICAuY2FyZCB7XG4gICAgQGluY2x1ZGUgY2FyZC1jb250YWluZXI7XG4gIH1cblxuICAuY2FyZC1kaXZpZGVyIHtcbiAgICBAaW5jbHVkZSBjYXJkLWRpdmlkZXI7XG4gIH1cblxuICAuY2FyZC1zZWN0aW9uIHtcbiAgICBAaW5jbHVkZSBjYXJkLXNlY3Rpb247XG4gIH1cblxuICAvLyBGb3IgSUUgMTEgLSBGbGV4YnVnXG4gIC8vIGh0dHBzOi8vZ2l0aHViLmNvbS9waGlsaXB3YWx0b24vZmxleGJ1Z3MvaXNzdWVzLzc1XG4gIC5jYXJkLWltYWdlIHtcbiAgICBtaW4taGVpZ2h0OiAxcHg7XG4gIH1cbn1cbiIsIi8vIEZvdW5kYXRpb24gZm9yIFNpdGVzIGJ5IFpVUkJcbi8vIGZvdW5kYXRpb24uenVyYi5jb21cbi8vIExpY2Vuc2VkIHVuZGVyIE1JVCBPcGVuIFNvdXJjZVxuXG4vLy8vXG4vLy8gQGdyb3VwIGNsb3NlLWJ1dHRvblxuLy8vL1xuXG4vLy8gRGVmYXVsdCBwb3NpdGlvbiBvZiB0aGUgY2xvc2UgYnV0dG9uLiBUaGUgZmlyc3QgdmFsdWUgc2hvdWxkIGJlIGByaWdodGAgb3IgYGxlZnRgLCBhbmQgdGhlIHNlY29uZCB2YWx1ZSBzaG91bGQgYmUgYHRvcGAgb3IgYGJvdHRvbWAuXG4vLy8gQHR5cGUgTGlzdFxuJGNsb3NlYnV0dG9uLXBvc2l0aW9uOiByaWdodCB0b3AgIWRlZmF1bHQ7XG5cbi8vLyBSaWdodCAob3IgbGVmdCkgb2Zmc2V0KHMpIGZvciBhIGNsb3NlIGJ1dHRvbi5cbi8vLyBAdHlwZSBOdW1iZXJ8TWFwXG4kY2xvc2VidXR0b24tb2Zmc2V0LWhvcml6b250YWw6IChcbiAgc21hbGw6IDAuNjZyZW0sXG4gIG1lZGl1bTogMXJlbSxcbikgIWRlZmF1bHQ7XG5cbi8vLyBUb3AgKG9yIGJvdHRvbSkgb2Zmc2V0KHMpIGZvciBhIGNsb3NlIGJ1dHRvbi5cbi8vLyBAdHlwZSBOdW1iZXJ8TWFwXG4kY2xvc2VidXR0b24tb2Zmc2V0LXZlcnRpY2FsOiAoXG4gIHNtYWxsOiAwLjMzZW0sXG4gIG1lZGl1bTogMC41cmVtLFxuKSAhZGVmYXVsdDtcblxuLy8vIERlZmF1bHQgZm9udCBzaXplKHMpIG9mIHRoZSBjbG9zZSBidXR0b24uXG4vLy8gQHR5cGUgTnVtYmVyfE1hcFxuJGNsb3NlYnV0dG9uLXNpemU6IChcbiAgc21hbGw6IDEuNWVtLFxuICBtZWRpdW06IDJlbSxcbikgIWRlZmF1bHQ7XG5cbi8vLyBUaGUgbGluZS1oZWlnaHQgb2YgdGhlIGNsb3NlIGJ1dHRvbi4gSXQgYWZmZWN0cyB0aGUgc3BhY2luZyBvZiB0aGUgZWxlbWVudC5cbi8vLyBAdHlwZSBOdW1iZXJcbiRjbG9zZWJ1dHRvbi1saW5laGVpZ2h0OiAxICFkZWZhdWx0O1xuXG4vLy8gRGVmYXVsdCBjb2xvciBvZiB0aGUgY2xvc2UgYnV0dG9uLlxuLy8vIEB0eXBlIENvbG9yXG4kY2xvc2VidXR0b24tY29sb3I6ICRkYXJrLWdyYXkgIWRlZmF1bHQ7XG5cbi8vLyBEZWZhdWx0IGNvbG9yIG9mIHRoZSBjbG9zZSBidXR0b24gd2hlbiBiZWluZyBob3ZlcmVkIG9uLlxuLy8vIEB0eXBlIENvbG9yXG4kY2xvc2VidXR0b24tY29sb3ItaG92ZXI6ICRibGFjayAhZGVmYXVsdDtcblxuXG4vLy8gR2V0IHRoZSBzaXplIGFuZCBwb3NpdGlvbiBmb3IgYSBjbG9zZSBidXR0b24uIElmIHRoZSBpbnB1dCB2YWx1ZSBpcyBhIG51bWJlciwgdGhlIG51bWJlciBpcyByZXR1cm5lZC4gSWYgdGhlIGlucHV0IHZhbHVlIGlzIGEgY29uZmlnIG1hcCBhbmQgdGhlIG1hcCBoYXMgdGhlIGtleSBgJHNpemVgLCB0aGUgdmFsdWUgaXMgcmV0dXJuZWQuXG4vLy9cbi8vLyBAcGFyYW0ge051bWJlcnxNYXB9ICR2YWx1ZSAtIEEgbnVtYmVyIG9yIG1hcCB0aGF0IHJlcHJlc2VudHMgdGhlIHNpemUgb3IgcG9zaXRpb24gdmFsdWUocykgb2YgdGhlIGNsb3NlIGJ1dHRvbi5cbi8vLyBAcGFyYW0ge0tleXdvcmR9ICRzaXplIC0gVGhlIHNpemUgb2YgdGhlIGNsb3NlIGJ1dHRvbiB0byB1c2UuXG4vLy9cbi8vLyBAcmV0dXJuIHtOdW1iZXJ9IFRoZSBnaXZlbiBudW1iZXIgb3IgdGhlIHZhbHVlIGZvdW5kIGluIHRoZSBtYXAuXG5AZnVuY3Rpb24gLXpmLWdldC1zaXplLXZhbCgkdmFsdWUsICRzaXplKSB7XG4gIC8vIENoZWNrIGlmIHRoZSB2YWx1ZSBpcyBhIG51bWJlclxuICBAaWYgdHlwZS1vZigkdmFsdWUpID09ICdudW1iZXInIHtcbiAgICAvLyBJZiBpdCBpcywganVzdCByZXR1cm4gdGhlIG51bWJlclxuICAgIEByZXR1cm4gJHZhbHVlO1xuICB9XG5cbiAgLy8gQ2hlY2sgaWYgdGhlIHNpemUgbmFtZSBleGlzdHMgaW4gdGhlIHZhbHVlIG1hcFxuICBAZWxzZSBpZiBtYXAtaGFzLWtleSgkdmFsdWUsICRzaXplKSB7XG4gICAgLy8gSWYgaXQgZG9lcywgcmV0dXJuIHRoZSB2YWx1ZVxuICAgIEByZXR1cm4gbWFwLWdldCgkdmFsdWUsICRzaXplKTtcbiAgfVxufVxuXG4vLy8gU2V0cyB0aGUgc2l6ZSBhbmQgcG9zaXRpb24gb2YgYSBjbG9zZSBidXR0b24uXG4vLy8gQHBhcmFtIHtLZXl3b3JkfSAkc2l6ZSBbbWVkaXVtXSAtIFRoZSBzaXplIHRvIHVzZS4gU2V0IHRvIGBzbWFsbGAgdG8gY3JlYXRlIGEgc21hbGwgY2xvc2UgYnV0dG9uLiBUaGUgJ21lZGl1bScgdmFsdWVzIGRlZmluZWQgaW4gYCRjbG9zZWJ1dHRvbi0qYCB2YXJpYWJsZXMgd2lsbCBiZSB1c2VkIGFzIHRoZSBkZWZhdWx0IHNpemUgYW5kIHBvc2l0aW9uIG9mIHRoZSBjbG9zZSBidXR0b24uXG5AbWl4aW4gY2xvc2UtYnV0dG9uLXNpemUoJHNpemUpIHtcbiAgJHg6IG50aCgkY2xvc2VidXR0b24tcG9zaXRpb24sIDEpO1xuICAkeTogbnRoKCRjbG9zZWJ1dHRvbi1wb3NpdGlvbiwgMik7XG5cbiAgI3skeH06IC16Zi1nZXQtc2l6ZS12YWwoJGNsb3NlYnV0dG9uLW9mZnNldC1ob3Jpem9udGFsLCAkc2l6ZSk7XG4gICN7JHl9OiAtemYtZ2V0LXNpemUtdmFsKCRjbG9zZWJ1dHRvbi1vZmZzZXQtdmVydGljYWwsICRzaXplKTtcbiAgZm9udC1zaXplOiAtemYtZ2V0LXNpemUtdmFsKCRjbG9zZWJ1dHRvbi1zaXplLCAkc2l6ZSk7XG4gIGxpbmUtaGVpZ2h0OiAtemYtZ2V0LXNpemUtdmFsKCRjbG9zZWJ1dHRvbi1saW5laGVpZ2h0LCAkc2l6ZSk7XG59XG5cbi8vLyBBZGRzIHN0eWxlcyBmb3IgYSBjbG9zZSBidXR0b24sIHVzaW5nIHRoZSBzdHlsZXMgaW4gdGhlIHNldHRpbmdzIHZhcmlhYmxlcy5cbkBtaXhpbiBjbG9zZS1idXR0b24ge1xuICAkeDogbnRoKCRjbG9zZWJ1dHRvbi1wb3NpdGlvbiwgMSk7XG4gICR5OiBudGgoJGNsb3NlYnV0dG9uLXBvc2l0aW9uLCAyKTtcblxuICBAaW5jbHVkZSBkaXNhYmxlLW1vdXNlLW91dGxpbmU7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgY29sb3I6ICRjbG9zZWJ1dHRvbi1jb2xvcjtcbiAgY3Vyc29yOiBwb2ludGVyO1xuXG4gICY6aG92ZXIsXG4gICY6Zm9jdXMge1xuICAgIGNvbG9yOiAkY2xvc2VidXR0b24tY29sb3ItaG92ZXI7XG4gIH1cbn1cblxuQG1peGluIGZvdW5kYXRpb24tY2xvc2UtYnV0dG9uIHtcbiAgLmNsb3NlLWJ1dHRvbiB7XG4gICAgQGluY2x1ZGUgY2xvc2UtYnV0dG9uO1xuXG4gICAgJi5zbWFsbCB7IEBpbmNsdWRlIGNsb3NlLWJ1dHRvbi1zaXplKHNtYWxsKSB9XG4gICAgJiwgJi5tZWRpdW0geyBAaW5jbHVkZSBjbG9zZS1idXR0b24tc2l6ZShtZWRpdW0pIH1cbiAgfVxufVxuIiwiQG1peGluIGZvdW5kYXRpb24tbWVudS1pY29uIHtcbiAgLm1lbnUtaWNvbiB7XG4gICAgQGluY2x1ZGUgaGFtYnVyZ2VyKCRjb2xvcjogJHRpdGxlYmFyLWljb24tY29sb3IsICRjb2xvci1ob3ZlcjogJHRpdGxlYmFyLWljb24tY29sb3ItaG92ZXIpO1xuICB9XG5cbiAgLm1lbnUtaWNvbi5kYXJrIHtcbiAgICBAaW5jbHVkZSBoYW1idXJnZXI7XG4gIH1cbn1cbiIsIi8vIEZvdW5kYXRpb24gZm9yIFNpdGVzIGJ5IFpVUkJcbi8vIGZvdW5kYXRpb24uenVyYi5jb21cbi8vIExpY2Vuc2VkIHVuZGVyIE1JVCBPcGVuIFNvdXJjZVxuXG4vLy8vXG4vLy8gQGdyb3VwIGRyaWxsZG93blxuLy8vL1xuXG4vLy8gVHJhbnNpdGlvbiBwcm9wZXJ0eSB0byB1c2UgZm9yIGFuaW1hdGluZyBtZW51cy5cbi8vLyBAdHlwZSBUcmFuc2l0aW9uXG4kZHJpbGxkb3duLXRyYW5zaXRpb246IHRyYW5zZm9ybSAwLjE1cyBsaW5lYXIgIWRlZmF1bHQ7XG5cbi8vLyBBZGRzIGFycm93cyB0byBkcmlsbGRvd24gaXRlbXMgd2l0aCBzdWJtZW51cywgYXMgd2VsbCBhcyB0aGUgYmFjayBidXR0b24uXG4vLy8gQHR5cGUgQm9vbGVhblxuJGRyaWxsZG93bi1hcnJvd3M6IHRydWUgIWRlZmF1bHQ7XG5cbi8vLyBTZXRzIGRyaWxsZG93biBtZW51IGl0ZW0gcGFkZGluZy5cbi8vLyBAdHlwZSBOdW1iZXJcbiRkcmlsbGRvd24tcGFkZGluZzogJGdsb2JhbC1tZW51LXBhZGRpbmcgIWRlZmF1bHQ7XG5cbi8vLyBTZXRzIGRyaWxsZG93biBtZW51IG5lc3RlZCBtYXJnaW5cbi8vLyBAdHlwZSBOdW1iZXJcbiRkcmlsbGRvd24tbmVzdGVkLW1hcmdpbjogMCAhZGVmYXVsdDtcblxuLy8vIEJhY2tncm91bmQgY29sb3IgZm9yIGRyaWxsZG93biB0b3AgbGV2ZWwgaXRlbXMuXG4vLy8gQHR5cGUgQ29sb3JcbiRkcmlsbGRvd24tYmFja2dyb3VuZDogJHdoaXRlICFkZWZhdWx0O1xuXG4vLy8gU2V0cyBkcmlsbGRvd24gbWVudSBpdGVtIHBhZGRpbmcgaW4gdGhlIHN1Ym1lbnUuXG4vLy8gQHR5cGUgTnVtYmVyXG4kZHJpbGxkb3duLXN1Ym1lbnUtcGFkZGluZzogJGRyaWxsZG93bi1wYWRkaW5nICFkZWZhdWx0O1xuXG4vLy8gQmFja2dyb3VuZCBjb2xvciBmb3IgZHJpbGxkb3duIHN1Ym1lbnVzLlxuLy8vIEB0eXBlIENvbG9yXG4kZHJpbGxkb3duLXN1Ym1lbnUtYmFja2dyb3VuZDogJHdoaXRlICFkZWZhdWx0O1xuXG4vLy8gU2V0cyBkcmlsbGRvd24gYXJyb3cgY29sb3IgaWYgYXJyb3cgaXMgdXNlZC5cbi8vLyBAdHlwZSBDb2xvclxuJGRyaWxsZG93bi1hcnJvdy1jb2xvcjogJHByaW1hcnktY29sb3IgIWRlZmF1bHQ7XG5cbi8vLyBTZXRzIGRyaWxsZG93biBhcnJvdyBzaXplIGlmIGFycm93IGlzIHVzZWQuXG4vLy8gQHR5cGUgTGVuZ3RoXG4kZHJpbGxkb3duLWFycm93LXNpemU6IDZweCAhZGVmYXVsdDtcblxuQG1peGluIHpmLWRyaWxsZG93bi1sZWZ0LXJpZ2h0LWFycm93cyB7XG4gIC5pcy1kcmlsbGRvd24tc3VibWVudS1wYXJlbnQgPiBhIHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgJjo6YWZ0ZXIge1xuICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgdG9wOiA1MCU7XG4gICAgICBtYXJnaW4tdG9wOiAtMSAqICRkcmlsbGRvd24tYXJyb3ctc2l6ZTtcbiAgICAgICN7JGdsb2JhbC1yaWdodH06IDFyZW07XG4gICAgICBAaW5jbHVkZSBjc3MtdHJpYW5nbGUoJGRyaWxsZG93bi1hcnJvdy1zaXplLCAkZHJpbGxkb3duLWFycm93LWNvbG9yLCAkZ2xvYmFsLXJpZ2h0KTtcbiAgICB9XG4gIH1cblxuICAmLmFsaWduLWxlZnQgLmlzLWRyaWxsZG93bi1zdWJtZW51LXBhcmVudCA+IGE6OmFmdGVyIHtcbiAgICBsZWZ0OiBhdXRvO1xuICAgIHJpZ2h0OiAxcmVtO1xuICAgIEBpbmNsdWRlIGNzcy10cmlhbmdsZSgkZHJvcGRvd25tZW51LWFycm93LXNpemUsICRkcm9wZG93bm1lbnUtYXJyb3ctY29sb3IsIHJpZ2h0KTtcbiAgfVxuXG4gICYuYWxpZ24tcmlnaHQgLmlzLWRyaWxsZG93bi1zdWJtZW51LXBhcmVudCA+IGE6OmFmdGVyIHtcbiAgICByaWdodDogYXV0bztcbiAgICBsZWZ0OiAxcmVtO1xuICAgIEBpbmNsdWRlIGNzcy10cmlhbmdsZSgkZHJvcGRvd25tZW51LWFycm93LXNpemUsICRkcm9wZG93bm1lbnUtYXJyb3ctY29sb3IsIGxlZnQpO1xuICB9XG5cbn1cblxuQG1peGluIGZvdW5kYXRpb24tZHJpbGxkb3duLW1lbnUge1xuICAvLyBBcHBsaWVkIHRvIHRoZSBNZW51IGNvbnRhaW5lclxuICAuaXMtZHJpbGxkb3duIHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgb3ZlcmZsb3c6IGhpZGRlbjtcblxuICAgIGxpIHtcbiAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIH1cblxuICAgICYuYW5pbWF0ZS1oZWlnaHQge1xuICAgICAgdHJhbnNpdGlvbjogaGVpZ2h0IDAuNXM7XG4gICAgfVxuICB9XG5cbiAgLy8gVGhlIHRvcCBsZXZlbCA8dWw+XG4gIC5kcmlsbGRvd24ge1xuICAgIGEge1xuICAgICAgcGFkZGluZzogJGRyaWxsZG93bi1wYWRkaW5nO1xuICAgICAgYmFja2dyb3VuZDogJGRyaWxsZG93bi1iYWNrZ3JvdW5kO1xuICAgIH1cblxuICAgIC8vIEFwcGxpZWQgdG8gc3VibWVudSA8dWw+c1xuICAgIC5pcy1kcmlsbGRvd24tc3VibWVudSB7XG4gICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICB0b3A6IDA7XG4gICAgICAjeyRnbG9iYWwtbGVmdH06IDEwMCU7XG4gICAgICB6LWluZGV4OiAtMTtcblxuICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICBiYWNrZ3JvdW5kOiAkZHJpbGxkb3duLXN1Ym1lbnUtYmFja2dyb3VuZDtcbiAgICAgIHRyYW5zaXRpb246ICRkcmlsbGRvd24tdHJhbnNpdGlvbjtcblxuICAgICAgJi5pcy1hY3RpdmUge1xuICAgICAgICB6LWluZGV4OiAxO1xuICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKGlmKCRnbG9iYWwtdGV4dC1kaXJlY3Rpb24gPT0gbHRyLCAtMTAwJSwgMTAwJSkpO1xuICAgICAgfVxuXG4gICAgICAmLmlzLWNsb3Npbmcge1xuICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoaWYoJGdsb2JhbC10ZXh0LWRpcmVjdGlvbiA9PSBsdHIsIDEwMCUsIC0xMDAlKSk7XG4gICAgICB9XG5cbiAgICAgIC8vIFN1Ym1lbnUgaXRlbSBwYWRkaW5nXG4gICAgICBhIHtcbiAgICAgICAgcGFkZGluZzogJGRyaWxsZG93bi1zdWJtZW51LXBhZGRpbmc7XG4gICAgICB9XG4gICAgfVxuXG4gICAgLm5lc3RlZC5pcy1kcmlsbGRvd24tc3VibWVudSB7XG4gICAgICBAaW5jbHVkZSBtZW51LW5lc3RlZCgkZHJpbGxkb3duLW5lc3RlZC1tYXJnaW4pO1xuICAgIH1cblxuICAgIC5kcmlsbGRvd24tc3VibWVudS1jb3Zlci1wcmV2aW91cyB7XG4gICAgICBtaW4taGVpZ2h0OiAxMDAlO1xuICAgIH1cblxuICAgIEBpZiAkZHJpbGxkb3duLWFycm93cyB7XG4gICAgICBAaW5jbHVkZSB6Zi1kcmlsbGRvd24tbGVmdC1yaWdodC1hcnJvd3M7XG5cbiAgICAgIC5qcy1kcmlsbGRvd24tYmFjayA+IGE6OmJlZm9yZSB7XG4gICAgICAgIEBpbmNsdWRlIGNzcy10cmlhbmdsZSgkZHJpbGxkb3duLWFycm93LXNpemUsICRkcmlsbGRvd24tYXJyb3ctY29sb3IsICRnbG9iYWwtbGVmdCk7XG4gICAgICAgIGJvcmRlci0jeyRnbG9iYWwtbGVmdH0td2lkdGg6IDA7XG4gICAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICAgICAgdmVydGljYWwtYWxpZ246IG1pZGRsZTtcbiAgICAgICAgbWFyZ2luLSN7JGdsb2JhbC1yaWdodH06IDAuNzVyZW07IC8vIENyZWF0ZXMgc3BhY2UgYmV0d2VlbiB0aGUgYXJyb3cgYW5kIHRoZSB0ZXh0XG5cbiAgICAgICAgYm9yZGVyLSN7JGdsb2JhbC1sZWZ0fS13aWR0aDogMDtcbiAgICAgIH1cbiAgICB9XG4gIH1cbn1cbiIsIi8vIEZvdW5kYXRpb24gZm9yIFNpdGVzIGJ5IFpVUkJcbi8vIGZvdW5kYXRpb24uenVyYi5jb21cbi8vIExpY2Vuc2VkIHVuZGVyIE1JVCBPcGVuIFNvdXJjZVxuXG4vLy8vXG4vLy8gQGdyb3VwIGRyb3Bkb3duXG4vLy8vXG5cbi8vLyBQYWRkaW5nIGZvciBkcm9wZG93biBwYW5lcy5cbi8vLyBAdHlwZSBMaXN0XG4kZHJvcGRvd24tcGFkZGluZzogMXJlbSAhZGVmYXVsdDtcblxuLy8vIEJhY2tncm91bmQgZm9yIGRyb3Bkb3duIHBhbmVzLlxuLy8vIEB0eXBlIENvbG9yXG4kZHJvcGRvd24tYmFja2dyb3VuZDogJGJvZHktYmFja2dyb3VuZCAhZGVmYXVsdDtcblxuLy8vIEJvcmRlciBmb3IgZHJvcGRvd24gcGFuZXMuXG4vLy8gQHR5cGUgTGlzdFxuJGRyb3Bkb3duLWJvcmRlcjogMXB4IHNvbGlkICRtZWRpdW0tZ3JheSAhZGVmYXVsdDtcblxuLy8vIEZvbnQgc2l6ZSBmb3IgZHJvcGRvd24gcGFuZXMuXG4vLy8gQHR5cGUgTGlzdFxuJGRyb3Bkb3duLWZvbnQtc2l6ZTogMXJlbSAhZGVmYXVsdDtcblxuLy8vIFdpZHRoIGZvciBkcm9wZG93biBwYW5lcy5cbi8vLyBAdHlwZSBOdW1iZXJcbiRkcm9wZG93bi13aWR0aDogMzAwcHggIWRlZmF1bHQ7XG5cbi8vLyBCb3JkZXIgcmFkaXVzIGRyb3Bkb3duIHBhbmVzLlxuLy8vIEB0eXBlIE51bWJlclxuJGRyb3Bkb3duLXJhZGl1czogJGdsb2JhbC1yYWRpdXMgIWRlZmF1bHQ7XG5cbi8vLyBTaXplcyBmb3IgZHJvcGRvd24gcGFuZXMuIEVhY2ggc2l6ZSBpcyBhIENTUyBjbGFzcyB5b3UgY2FuIGFwcGx5LlxuLy8vIEB0eXBlIE1hcFxuJGRyb3Bkb3duLXNpemVzOiAoXG4gIHRpbnk6IDEwMHB4LFxuICBzbWFsbDogMjAwcHgsXG4gIGxhcmdlOiA0MDBweCxcbikgIWRlZmF1bHQ7XG5cbi8vLyBBcHBsaWVzIHN0eWxlcyBmb3IgYSBiYXNpYyBkcm9wZG93bi5cbkBtaXhpbiBkcm9wZG93bi1jb250YWluZXIge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHotaW5kZXg6IDEwO1xuXG4gIHdpZHRoOiAkZHJvcGRvd24td2lkdGg7XG4gIHBhZGRpbmc6ICRkcm9wZG93bi1wYWRkaW5nO1xuXG4gIHZpc2liaWxpdHk6IGhpZGRlbjtcbiAgZGlzcGxheTogbm9uZTtcbiAgYm9yZGVyOiAkZHJvcGRvd24tYm9yZGVyO1xuICBib3JkZXItcmFkaXVzOiAkZHJvcGRvd24tcmFkaXVzO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAkZHJvcGRvd24tYmFja2dyb3VuZDtcblxuICBmb250LXNpemU6ICRkcm9wZG93bi1mb250LXNpemU7XG5cblxuICAvLyBBbGxvdyBhbiBpbnRlcm1pdHRlbnQgc3RhdGUgdG8gZG8gcG9zaXRpb25pbmcgYmVmb3JlIG1ha2luZyB2aXNpYmxlLlxuICAmLmlzLW9wZW5pbmcge1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICB9XG5cbiAgJi5pcy1vcGVuIHtcbiAgICB2aXNpYmlsaXR5OiB2aXNpYmxlO1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICB9XG59XG5cbkBtaXhpbiBmb3VuZGF0aW9uLWRyb3Bkb3duIHtcbiAgLmRyb3Bkb3duLXBhbmUge1xuICAgIEBpbmNsdWRlIGRyb3Bkb3duLWNvbnRhaW5lcjtcbiAgfVxuXG4gIEBlYWNoICRuYW1lLCAkc2l6ZSBpbiAkZHJvcGRvd24tc2l6ZXMge1xuICAgIC5kcm9wZG93bi1wYW5lLiN7JG5hbWV9IHtcbiAgICAgIHdpZHRoOiAkc2l6ZTtcbiAgICB9XG4gIH1cbn1cbiIsIi8vIEZvdW5kYXRpb24gZm9yIFNpdGVzIGJ5IFpVUkJcbi8vIGZvdW5kYXRpb24uenVyYi5jb21cbi8vIExpY2Vuc2VkIHVuZGVyIE1JVCBPcGVuIFNvdXJjZVxuXG4vLy8vXG4vLy8gQGdyb3VwIGRyb3Bkb3duLW1lbnVcbi8vLy9cblxuLy8vIEVuYWJsZXMgYXJyb3dzIGZvciBpdGVtcyB3aXRoIGRyb3Bkb3duIG1lbnVzLlxuLy8vIEB0eXBlIEJvb2xlYW5cbiRkcm9wZG93bm1lbnUtYXJyb3dzOiB0cnVlICFkZWZhdWx0O1xuXG4vLy8gU2V0cyBkcm9wZG93biBtZW51IGFycm93IGNvbG9yIGlmIGFycm93IGlzIHVzZWQuXG4vLy8gQHR5cGUgQ29sb3JcbiRkcm9wZG93bm1lbnUtYXJyb3ctY29sb3I6ICRhbmNob3ItY29sb3IgIWRlZmF1bHQ7XG5cbi8vLyBTZXRzIGRyb3Bkb3duIG1lbnUgYXJyb3cgc2l6ZSBpZiBhcnJvdyBpcyB1c2VkLlxuLy8vIEB0eXBlIExlbmd0aFxuJGRyb3Bkb3dubWVudS1hcnJvdy1zaXplOiA2cHggIWRlZmF1bHQ7XG5cbi8vLyBTZXRzIGRyb3Bkb3duIG1lbnUgYXJyb3cgcGFkZGluZyBmb3IgYWxpZ25pbmcgdGhlIGFycm93IGNvcnJlY3RseS5cbi8vLyBAdHlwZSBMZW5ndGhcbiRkcm9wZG93bm1lbnUtYXJyb3ctcGFkZGluZzogMS41cmVtICFkZWZhdWx0O1xuXG4vLy8gTWluaW11bSB3aWR0aCBvZiBkcm9wZG93biBzdWItbWVudXMuXG4vLy8gQHR5cGUgTGVuZ3RoXG4kZHJvcGRvd25tZW51LW1pbi13aWR0aDogMjAwcHggIWRlZmF1bHQ7XG5cbi8vLyBCYWNrZ3JvdW5kIGNvbG9yIGZvciB0b3AgbGV2ZWwgaXRlbXMuXG4vLy8gQHR5cGUgQ29sb3JcbiRkcm9wZG93bm1lbnUtYmFja2dyb3VuZDogJHdoaXRlICFkZWZhdWx0O1xuXG4vLy8gQmFja2dyb3VuZCBjb2xvciBmb3IgZHJvcGRvd25zLlxuLy8vIEB0eXBlIENvbG9yXG4kZHJvcGRvd25tZW51LXN1Ym1lbnUtYmFja2dyb3VuZDogJGRyb3Bkb3dubWVudS1iYWNrZ3JvdW5kICFkZWZhdWx0O1xuXG4vLy8gUGFkZGluZyBmb3IgdG9wIGxldmVsIGl0ZW1zLlxuLy8vIEB0eXBlIE51bWJlclxuJGRyb3Bkb3dubWVudS1wYWRkaW5nOiAkZ2xvYmFsLW1lbnUtcGFkZGluZyAhZGVmYXVsdDtcblxuLy8vIFNldHMgZHJvcGRvd24gbWVudSBuZXN0ZWQgbWFyZ2luXG4vLy8gQHR5cGUgTnVtYmVyXG4kZHJvcGRvd25tZW51LW5lc3RlZC1tYXJnaW46IDAgIWRlZmF1bHQ7XG5cbi8vLyBQYWRkaW5nIGZvciBzdWItbWVudSBpdGVtcy5cbi8vLyBAdHlwZSBOdW1iZXJcbiRkcm9wZG93bm1lbnUtc3VibWVudS1wYWRkaW5nOiAkZHJvcGRvd25tZW51LXBhZGRpbmcgIWRlZmF1bHQ7XG5cbi8vLyBCb3JkZXIgZm9yIGRyb3Bkb3duIHN1Yi1tZW51cy5cbi8vLyBAdHlwZSBMaXN0XG4kZHJvcGRvd25tZW51LWJvcmRlcjogMXB4IHNvbGlkICRtZWRpdW0tZ3JheSAhZGVmYXVsdDtcblxuLy8gQm9yZGVyIHdpZHRoIGZvciBkcm9wZG93biBzdWItbWVudXMuXG4vLyBVc2VkIHRvIGFkanVzdCB0b3AgbWFyZ2luIG9mIGEgc3ViLW1lbnUgaWYgYSBib3JkZXIgaXMgdXNlZC5cbi8vIEB0eXBlIExlbmd0aFxuJGRyb3Bkb3dubWVudS1ib3JkZXItd2lkdGg6IG50aCgkZHJvcGRvd25tZW51LWJvcmRlciwgMSk7XG5cbi8vLyBUZXh0IGNvbG9yIG9mIGFuIGFjdGl2ZSBkcm9wZG93biBtZW51IGl0ZW0uIEV4cGxpY2l0IG92ZXJyaWRlIGZvciBtZW51IGRlZmF1bHRzXG4vLy8gQHR5cGUgQ29sb3JcbiRkcm9wZG93bi1tZW51LWl0ZW0tY29sb3ItYWN0aXZlOiBnZXQtY29sb3IocHJpbWFyeSkgIWRlZmF1bHQ7XG5cbi8vLyBCYWNrZ3JvdW5kIGNvbG9yIG9mIGFuIGFjdGl2ZSBkcm9wZG93biBtZW51IGl0ZW0uIEV4cGxpY2l0IG92ZXJyaWRlIGZvciBtZW51IGRlZmF1bHRzXG4vLy8gQHR5cGUgQ29sb3JcbiRkcm9wZG93bi1tZW51LWl0ZW0tYmFja2dyb3VuZC1hY3RpdmU6IHRyYW5zcGFyZW50ICFkZWZhdWx0O1xuXG5AbWl4aW4gemYtZHJvcGRvd24tbGVmdC1yaWdodC1hcnJvd3Mge1xuICA+IGE6OmFmdGVyIHtcbiAgICAjeyRnbG9iYWwtcmlnaHR9OiAxNHB4O1xuICB9XG5cbiAgJi5vcGVucy1sZWZ0ID4gYTo6YWZ0ZXIge1xuICAgIHJpZ2h0OiBhdXRvO1xuICAgIGxlZnQ6IDVweDtcbiAgICBAaW5jbHVkZSBjc3MtdHJpYW5nbGUoJGRyb3Bkb3dubWVudS1hcnJvdy1zaXplLCAkZHJvcGRvd25tZW51LWFycm93LWNvbG9yLCBsZWZ0KTtcbiAgfVxuXG4gICYub3BlbnMtcmlnaHQgPiBhOjphZnRlciB7XG4gICAgQGluY2x1ZGUgY3NzLXRyaWFuZ2xlKCRkcm9wZG93bm1lbnUtYXJyb3ctc2l6ZSwgJGRyb3Bkb3dubWVudS1hcnJvdy1jb2xvciwgcmlnaHQpO1xuICB9XG59XG5cbkBtaXhpbiBkcm9wZG93bi1tZW51LWRpcmVjdGlvbigkZGlyOiBob3Jpem9udGFsKSB7XG4gIEBpZiAkZGlyID09IGhvcml6b250YWwge1xuICAgID4gbGkub3BlbnMtbGVmdCB7XG4gICAgICA+IC5pcy1kcm9wZG93bi1zdWJtZW51IHtcbiAgICAgICAgdG9wOiAxMDAlO1xuICAgICAgICByaWdodDogMDtcbiAgICAgICAgbGVmdDogYXV0bztcbiAgICAgIH1cbiAgICB9XG5cbiAgICA+IGxpLm9wZW5zLXJpZ2h0IHtcbiAgICAgID4gLmlzLWRyb3Bkb3duLXN1Ym1lbnUge1xuICAgICAgICB0b3A6IDEwMCU7XG4gICAgICAgIHJpZ2h0OiBhdXRvO1xuICAgICAgICBsZWZ0OiAwO1xuICAgICAgfVxuICAgIH1cblxuICAgIEBpZiAkZHJvcGRvd25tZW51LWFycm93cyB7XG4gICAgICA+IGxpLmlzLWRyb3Bkb3duLXN1Ym1lbnUtcGFyZW50ID4gYSB7XG4gICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgICAgcGFkZGluZy0jeyRnbG9iYWwtcmlnaHR9OiAkZHJvcGRvd25tZW51LWFycm93LXBhZGRpbmc7XG4gICAgICB9XG5cbiAgICAgID4gbGkuaXMtZHJvcGRvd24tc3VibWVudS1wYXJlbnQgPiBhOjphZnRlciB7XG4gICAgICAgIEBpbmNsdWRlIGNzcy10cmlhbmdsZSgkZHJvcGRvd25tZW51LWFycm93LXNpemUsICRkcm9wZG93bm1lbnUtYXJyb3ctY29sb3IsIGRvd24pO1xuICAgICAgICAjeyRnbG9iYWwtcmlnaHR9OiA1cHg7XG4gICAgICAgIG1hcmdpbi10b3A6IC0xICogKCRkcm9wZG93bm1lbnUtYXJyb3ctc2l6ZSAvIDIpO1xuICAgICAgfVxuICAgIH1cbiAgfVxuICBAZWxzZSBpZiAkZGlyID09IHZlcnRpY2FsIHtcbiAgICA+IGxpIHtcbiAgICAgIC5pcy1kcm9wZG93bi1zdWJtZW51IHtcbiAgICAgICAgdG9wOiAwO1xuICAgICAgfVxuXG4gICAgICAmLm9wZW5zLWxlZnQge1xuICAgICAgICA+IC5pcy1kcm9wZG93bi1zdWJtZW51IHtcbiAgICAgICAgICByaWdodDogMTAwJTtcbiAgICAgICAgICBsZWZ0OiBhdXRvO1xuICAgICAgICAgIHRvcDogMDtcbiAgICAgICAgfVxuICAgICAgfVxuXG4gICAgICAmLm9wZW5zLXJpZ2h0IHtcbiAgICAgICAgPiAuaXMtZHJvcGRvd24tc3VibWVudSB7XG4gICAgICAgICAgcmlnaHQ6IGF1dG87XG4gICAgICAgICAgbGVmdDogMTAwJTtcbiAgICAgICAgfVxuICAgICAgfVxuXG4gICAgICBAaWYgJGRyb3Bkb3dubWVudS1hcnJvd3Mge1xuICAgICAgICBAaW5jbHVkZSB6Zi1kcm9wZG93bi1sZWZ0LXJpZ2h0LWFycm93cztcbiAgICAgIH1cbiAgICB9XG4gIH1cbiAgQGVsc2Uge1xuICAgIEB3YXJuICdUaGUgZGlyZWN0aW9uIHVzZWQgZm9yIGRyb3Bkb3duLW1lbnUtZGlyZWN0aW9uKCkgbXVzdCBiZSBob3Jpem9udGFsIG9yIHZlcnRpY2FsLic7XG4gIH1cbn1cblxuQG1peGluIGZvdW5kYXRpb24tZHJvcGRvd24tbWVudSB7XG4gIC5kcm9wZG93bi5tZW51IHtcbiAgICBAaW5jbHVkZSBkcm9wZG93bi1tZW51LWRpcmVjdGlvbihob3Jpem9udGFsKTtcblxuICAgIGEge1xuICAgICAgQGluY2x1ZGUgZGlzYWJsZS1tb3VzZS1vdXRsaW5lO1xuICAgICAgcGFkZGluZzogJGRyb3Bkb3dubWVudS1wYWRkaW5nO1xuICAgIH1cblxuICAgIC8vIEFjdGl2ZSBzdGF0ZVxuICAgIC5pcy1hY3RpdmUgPiBhIHtcbiAgICAgIGJhY2tncm91bmQ6ICRkcm9wZG93bi1tZW51LWl0ZW0tYmFja2dyb3VuZC1hY3RpdmU7XG4gICAgICBjb2xvcjogJGRyb3Bkb3duLW1lbnUtaXRlbS1jb2xvci1hY3RpdmU7XG4gICAgfVxuXG4gICAgLm5vLWpzICYgdWwge1xuICAgICAgZGlzcGxheTogbm9uZTtcbiAgICB9XG5cbiAgICAubmVzdGVkLmlzLWRyb3Bkb3duLXN1Ym1lbnUge1xuICAgICAgQGluY2x1ZGUgbWVudS1uZXN0ZWQoJGRyb3Bkb3dubWVudS1uZXN0ZWQtbWFyZ2luKTtcbiAgICB9XG5cbiAgICAmLnZlcnRpY2FsIHtcbiAgICAgIEBpbmNsdWRlIGRyb3Bkb3duLW1lbnUtZGlyZWN0aW9uKHZlcnRpY2FsKTtcbiAgICB9XG5cbiAgICBAZWFjaCAkc2l6ZSBpbiAkYnJlYWtwb2ludC1jbGFzc2VzIHtcbiAgICAgIEBpZiAkc2l6ZSAhPSAkLXpmLXplcm8tYnJlYWtwb2ludCB7XG4gICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoJHNpemUpIHtcbiAgICAgICAgICAmLiN7JHNpemV9LWhvcml6b250YWwge1xuICAgICAgICAgICAgQGluY2x1ZGUgZHJvcGRvd24tbWVudS1kaXJlY3Rpb24oaG9yaXpvbnRhbCk7XG4gICAgICAgICAgfVxuXG4gICAgICAgICAgJi4jeyRzaXplfS12ZXJ0aWNhbCB7XG4gICAgICAgICAgICBAaW5jbHVkZSBkcm9wZG93bi1tZW51LWRpcmVjdGlvbih2ZXJ0aWNhbCk7XG4gICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuXG4gICAgJi5hbGlnbi1yaWdodCB7XG4gICAgICAuaXMtZHJvcGRvd24tc3VibWVudS5maXJzdC1zdWIge1xuICAgICAgICB0b3A6IDEwMCU7XG4gICAgICAgIHJpZ2h0OiAwO1xuICAgICAgICBsZWZ0OiBhdXRvO1xuICAgICAgfVxuICAgIH1cbiAgfVxuXG4gIC5pcy1kcm9wZG93bi1tZW51LnZlcnRpY2FsIHtcbiAgICB3aWR0aDogMTAwcHg7XG5cbiAgICAmLmFsaWduLXJpZ2h0IHtcbiAgICAgIGZsb2F0OiByaWdodDtcbiAgICB9XG4gIH1cblxuICAuaXMtZHJvcGRvd24tc3VibWVudS1wYXJlbnQge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcblxuICAgIGE6OmFmdGVyIHtcbiAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgIHRvcDogNTAlO1xuICAgICAgI3skZ2xvYmFsLXJpZ2h0fTogNXB4O1xuICAgICAgbWFyZ2luLXRvcDogLTEgKiAkZHJvcGRvd25tZW51LWFycm93LXNpemU7XG4gICAgfVxuXG4gICAgJi5vcGVucy1pbm5lciA+IC5pcy1kcm9wZG93bi1zdWJtZW51IHtcblxuICAgICAgdG9wOiAxMDAlO1xuICAgICAgQGlmICRnbG9iYWwtdGV4dC1kaXJlY3Rpb24gPT0gJ3J0bCcge1xuICAgICAgICByaWdodDogYXV0bztcbiAgICAgIH1cbiAgICAgIEBlbHNlIHtcbiAgICAgICAgbGVmdDogYXV0bztcbiAgICAgIH1cbiAgICB9XG5cbiAgICAmLm9wZW5zLWxlZnQgPiAuaXMtZHJvcGRvd24tc3VibWVudSB7XG4gICAgICByaWdodDogMTAwJTtcbiAgICAgIGxlZnQ6IGF1dG87XG4gICAgfVxuXG4gICAgJi5vcGVucy1yaWdodCA+IC5pcy1kcm9wZG93bi1zdWJtZW51IHtcbiAgICAgIHJpZ2h0OiBhdXRvO1xuICAgICAgbGVmdDogMTAwJTtcbiAgICB9XG4gIH1cblxuICAuaXMtZHJvcGRvd24tc3VibWVudSB7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIHRvcDogMDtcbiAgICAjeyRnbG9iYWwtbGVmdH06IDEwMCU7XG4gICAgei1pbmRleDogMTtcblxuICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgbWluLXdpZHRoOiAkZHJvcGRvd25tZW51LW1pbi13aWR0aDtcblxuICAgIGJvcmRlcjogJGRyb3Bkb3dubWVudS1ib3JkZXI7XG4gICAgYmFja2dyb3VuZDogJGRyb3Bkb3dubWVudS1zdWJtZW51LWJhY2tncm91bmQ7XG5cbiAgICAuZHJvcGRvd24gJiBhIHtcbiAgICAgIHBhZGRpbmc6ICRkcm9wZG93bm1lbnUtc3VibWVudS1wYWRkaW5nO1xuICAgIH1cblxuICAgIC5pcy1kcm9wZG93bi1zdWJtZW51LXBhcmVudCB7XG4gICAgICBAaWYgJGRyb3Bkb3dubWVudS1hcnJvd3Mge1xuICAgICAgICBAaW5jbHVkZSB6Zi1kcm9wZG93bi1sZWZ0LXJpZ2h0LWFycm93cztcbiAgICAgIH1cbiAgICB9XG5cbiAgICBAaWYgKHR5cGUtb2YoJGRyb3Bkb3dubWVudS1ib3JkZXItd2lkdGgpID09ICdudW1iZXInKSB7XG4gICAgICAuaXMtZHJvcGRvd24tc3VibWVudSB7XG4gICAgICAgIG1hcmdpbi10b3A6ICgtJGRyb3Bkb3dubWVudS1ib3JkZXItd2lkdGgpO1xuICAgICAgfVxuICAgIH1cblxuICAgID4gbGkge1xuICAgICAgd2lkdGg6IDEwMCU7XG4gICAgfVxuXG4gICAgLy8gW1RPRE9dIEN1dCBiYWNrIHNwZWNpZmljaXR5XG4gICAgLy8mOm5vdCguanMtZHJvcGRvd24tbm9ob3ZlcikgPiAuaXMtZHJvcGRvd24tc3VibWVudS1wYXJlbnQ6aG92ZXIgPiAmLCAvLyB3aHkgaXMgdGhpcyBsaW5lIG5lZWRlZD8gT3BlbmluZyBpcyBoYW5kbGVkIGJ5IEpTIGFuZCB0aGlzIGNhdXNlcyBzb21lIHVnbHkgZmxpY2tlcmluZyB3aGVuIHRoZSBzdWIgaXMgcmUtcG9zaXRpb25lZCBhdXRvbWF0aWNhbGx5Li4uXG4gICAgJi5qcy1kcm9wZG93bi1hY3RpdmUge1xuICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgfVxuICB9XG59XG4iLCIvLyBGb3VuZGF0aW9uIGZvciBTaXRlcyBieSBaVVJCXG4vLyBmb3VuZGF0aW9uLnp1cmIuY29tXG4vLyBMaWNlbnNlZCB1bmRlciBNSVQgT3BlbiBTb3VyY2VcblxuLy8vL1xuLy8vIEBncm91cCByZXNwb25zaXZlLWVtYmVkXG4vLy8vXG5cbi8vLyBNYXJnaW4gYmVsb3cgYSByZXNwb25zaXZlIGVtYmVkIGNvbnRhaW5lci5cbi8vLyBAdHlwZSBOdW1iZXJcbiRyZXNwb25zaXZlLWVtYmVkLW1hcmdpbi1ib3R0b206IHJlbS1jYWxjKDE2KSAhZGVmYXVsdDtcblxuLy8vIEFzcGVjdCByYXRpb3MgdXNlZCB0byBkZXRlcm1pbmUgcGFkZGluZy1ib3R0b20gb2YgcmVzcG9uc2l2ZSBlbWJlZCBjb250YWluZXJzLlxuLy8vIEB0eXBlIE1hcFxuJHJlc3BvbnNpdmUtZW1iZWQtcmF0aW9zOiAoXG4gIGRlZmF1bHQ6IDQgYnkgMyxcbiAgd2lkZXNjcmVlbjogMTYgYnkgOSxcbikgIWRlZmF1bHQ7XG5cbi8vIFdBUk5JTkc6IFdpbGwgYmUgcmVtb3ZlZCBpbiB2ZXJzaW9uIDYuNFxuJHJlc3BvbnNpdmUtZW1iZWQtcmF0aW86IGRlZmF1bHQ7XG5cbi8vLyBDcmVhdGVzIGEgcmVzcG9uc2l2ZSBlbWJlZCBjb250YWluZXIuXG4vLy8gQHBhcmFtIHtTdHJpbmd8TGlzdH0gJHJhdGlvIFtkZWZhdWx0XSAtIFJhdGlvIG9mIHRoZSBjb250YWluZXIuIENhbiBiZSBhIGtleSBmcm9tIHRoZSBgJHJlc3BvbnNpdmUtZW1iZWQtcmF0aW9zYCBtYXAgb3IgYSBsaXN0IGZvcm1hdHRlZCBhcyBgeCBieSB5YC5cbkBtaXhpbiByZXNwb25zaXZlLWVtYmVkKCRyYXRpbzogZGVmYXVsdCkge1xuICBAaWYgdHlwZS1vZigkcmF0aW8pID09ICdzdHJpbmcnIHtcbiAgICAkcmF0aW86IG1hcC1nZXQoJHJlc3BvbnNpdmUtZW1iZWQtcmF0aW9zLCAkcmF0aW8pO1xuICB9XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgaGVpZ2h0OiAwO1xuICBtYXJnaW4tYm90dG9tOiAkcmVzcG9uc2l2ZS1lbWJlZC1tYXJnaW4tYm90dG9tO1xuICBwYWRkaW5nLWJvdHRvbTogcmF0aW8tdG8tcGVyY2VudGFnZSgkcmF0aW8pO1xuICBvdmVyZmxvdzogaGlkZGVuO1xuXG4gIGlmcmFtZSxcbiAgb2JqZWN0LFxuICBlbWJlZCxcbiAgdmlkZW8ge1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICB0b3A6IDA7XG4gICAgI3skZ2xvYmFsLWxlZnR9OiAwO1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIGhlaWdodDogMTAwJTtcbiAgfVxufVxuXG5AbWl4aW4gZm91bmRhdGlvbi1yZXNwb25zaXZlLWVtYmVkIHtcbiAgLnJlc3BvbnNpdmUtZW1iZWQsXG4gIC5mbGV4LXZpZGVvIHtcbiAgICBAaW5jbHVkZSByZXNwb25zaXZlLWVtYmVkKCRyYXRpbzogZGVmYXVsdCk7XG5cbiAgICAkcmF0aW9zOiBtYXAtcmVtb3ZlKCRyZXNwb25zaXZlLWVtYmVkLXJhdGlvcyxkZWZhdWx0KTtcblxuICAgIEBlYWNoICRuYW1lLCAkcmF0aW8gaW4gJHJhdGlvcyB7XG4gICAgICAmLiN7JG5hbWV9IHtcbiAgICAgICAgcGFkZGluZy1ib3R0b206IHJhdGlvLXRvLXBlcmNlbnRhZ2UoJHJhdGlvKTtcbiAgICAgIH1cbiAgICB9XG4gIH1cbn1cblxuQG1peGluIGZvdW5kYXRpb24tZmxleC12aWRlbyB7XG4gIEB3YXJuICdUaGlzIG1peGluIGlzIGJlaW5nIHJlcGxhY2VkIGJ5IGZvdW5kYXRpb24tcmVzcG9uc2l2ZS1lbWJlZCgpLiBmb3VuZGF0aW9uLWZsZXgtdmlkZW8oKSB3aWxsIGJlIHJlbW92ZWQgaW4gRm91bmRhdGlvbiA2LjQuJztcbiAgQGluY2x1ZGUgZm91bmRhdGlvbi1yZXNwb25zaXZlLWVtYmVkO1xufVxuXG5AbWl4aW4gZmxleC12aWRlbygkcmF0aW86ICRyZXNwb25zaXZlLWVtYmVkLXJhdGlvKSB7XG4gIEB3YXJuICdUaGlzIG1peGluIGlzIGJlaW5nIHJlcGxhY2VkIGJ5IHJlc3BvbnNpdmUtZW1iZWQoKS4gZmxleC12aWRlbygpIHdpbGwgYmUgcmVtb3ZlZCBpbiBGb3VuZGF0aW9uIDYuNC4nO1xuICBAaW5jbHVkZSByZXNwb25zaXZlLWVtYmVkKCRyYXRpbyk7XG59XG4iLCIvLyBGb3VuZGF0aW9uIGZvciBTaXRlcyBieSBaVVJCXG4vLyBmb3VuZGF0aW9uLnp1cmIuY29tXG4vLyBMaWNlbnNlZCB1bmRlciBNSVQgT3BlbiBTb3VyY2VcblxuLy8vL1xuLy8vIEBncm91cCBmdW5jdGlvbnNcbi8vLy9cblxuLy8vIEZpbmRzIHRoZSBncmVhdGVzdCBjb21tb24gZGl2aXNvciBvZiB0d28gaW50ZWdlcnMuXG4vLy9cbi8vLyBAcGFyYW0ge051bWJlcn0gJGEgLSBGaXJzdCBudW1iZXIgdG8gY29tcGFyZS5cbi8vLyBAcGFyYW0ge051bWJlcn0gJGIgLSBTZWNvbmQgbnVtYmVyIHRvIGNvbXBhcmUuXG4vLy9cbi8vLyBAcmV0dXJucyB7TnVtYmVyfSBUaGUgZ3JlYXRlc3QgY29tbW9uIGRpdmlzb3IuXG5AZnVuY3Rpb24gZ2NkKCRhLCAkYikge1xuICAvLyBGcm9tOiBodHRwOi8vcm9zZXR0YWNvZGUub3JnL3dpa2kvR3JlYXRlc3RfY29tbW9uX2Rpdmlzb3IjSmF2YVNjcmlwdFxuICBAaWYgKCRiICE9IDApIHtcbiAgICBAcmV0dXJuIGdjZCgkYiwgJGEgJSAkYik7XG4gIH1cbiAgQGVsc2Uge1xuICAgIEByZXR1cm4gYWJzKCRhKTtcbiAgfVxufVxuXG4vLy8gSGFuZGxlcyBkZWNpbWFsIGV4cG9uZW50cyBieSB0cnlpbmcgdG8gY29udmVydCB0aGVtIGludG8gYSBmcmFjdGlvbiBhbmQgdGhlbiB1c2UgYSBudGgtcm9vdC1hbGdvcml0aG0gZm9yIHBhcnRzIG9mIHRoZSBjYWxjdWxhdGlvblxuLy8vXG4vLy8gQHBhcmFtIHtOdW1iZXJ9ICRiYXNlIC0gVGhlIGJhc2UgbnVtYmVyLlxuLy8vIEBwYXJhbSB7TnVtYmVyfSAkZXhwb25lbnQgLSBUaGUgZXhwb25lbnQuXG4vLy9cbi8vLyBAcmV0dXJucyB7TnVtYmVyfSBUaGUgcHJvZHVjdCBvZiB0aGUgZXhwb25lbnRpYXRpb24uXG5AZnVuY3Rpb24gcG93KCRiYXNlLCAkZXhwb25lbnQsICRwcmVjOiAxNikge1xuICBAaWYgKGZsb29yKCRleHBvbmVudCkgIT0gJGV4cG9uZW50KSB7XG4gICAgJHByZWMyIDogcG93KDEwLCAkcHJlYyk7XG4gICAgJGV4cG9uZW50OiByb3VuZCgkZXhwb25lbnQgKiAkcHJlYzIpO1xuICAgICRkZW5vbWluYXRvcjogZ2NkKCRleHBvbmVudCwgJHByZWMyKTtcbiAgICBAcmV0dXJuIG50aC1yb290KHBvdygkYmFzZSwgJGV4cG9uZW50IC8gJGRlbm9taW5hdG9yKSwgJHByZWMyIC8gJGRlbm9taW5hdG9yLCAkcHJlYyk7XG4gIH1cblxuICAkdmFsdWU6ICRiYXNlO1xuICBAaWYgJGV4cG9uZW50ID4gMSB7XG4gICAgQGZvciAkaSBmcm9tIDIgdGhyb3VnaCAkZXhwb25lbnQge1xuICAgICAgJHZhbHVlOiAkdmFsdWUgKiAkYmFzZTtcbiAgICB9XG4gIH1cbiAgQGVsc2UgaWYgJGV4cG9uZW50IDwgMSB7XG4gICAgQGZvciAkaSBmcm9tIDAgdGhyb3VnaCAtJGV4cG9uZW50IHtcbiAgICAgICR2YWx1ZTogJHZhbHVlIC8gJGJhc2U7XG4gICAgfVxuICB9XG5cbiAgQHJldHVybiAkdmFsdWU7XG59XG5cbkBmdW5jdGlvbiBudGgtcm9vdCgkbnVtLCAkbjogMiwgJHByZWM6IDEyKSB7XG4gIC8vIEZyb206IGh0dHA6Ly9yb3NldHRhY29kZS5vcmcvd2lraS9OdGhfcm9vdCNKYXZhU2NyaXB0XG4gICR4OiAxO1xuXG4gIEBmb3IgJGkgZnJvbSAwIHRocm91Z2ggJHByZWMge1xuICAgICR4OiAxIC8gJG4gKiAoKCRuIC0gMSkgKiAkeCArICgkbnVtIC8gcG93KCR4LCAkbiAtIDEpKSk7XG4gIH1cblxuICBAcmV0dXJuICR4O1xufVxuXG4vLy8gQ2FsY3VsYXRlcyB0aGUgaGVpZ2h0IGFzIGEgcGVyY2VudGFnZSBvZiB0aGUgd2lkdGggZm9yIGEgZ2l2ZW4gcmF0aW8uXG4vLy8gQHBhcmFtIHtMaXN0fSAkcmF0aW8gLSBSYXRpbyB0byB1c2UgdG8gY2FsY3VsYXRlIHRoZSBoZWlnaHQsIGZvcm1hdHRlZCBhcyBgeCBieSB5YC5cbi8vLyBAcmV0dXJuIHtOdW1iZXJ9IEEgcGVyY2VudGFnZSB2YWx1ZSBmb3IgdGhlIGhlaWdodCByZWxhdGl2ZSB0byB0aGUgd2lkdGggb2YgYSByZXNwb25zaXZlIGNvbnRhaW5lci5cbkBmdW5jdGlvbiByYXRpby10by1wZXJjZW50YWdlKCRyYXRpbykge1xuICAkdzogbnRoKCRyYXRpbywgMSk7XG4gICRoOiBudGgoJHJhdGlvLCAzKTtcbiAgQHJldHVybiAkaCAvICR3ICogMTAwJTtcbn1cbiIsIi8vIEZvdW5kYXRpb24gZm9yIFNpdGVzIGJ5IFpVUkJcbi8vIGZvdW5kYXRpb24uenVyYi5jb21cbi8vIExpY2Vuc2VkIHVuZGVyIE1JVCBPcGVuIFNvdXJjZVxuXG4vLy8vXG4vLy8gQGdyb3VwIGxhYmVsXG4vLy8vXG5cbi8vLyBEZWZhdWx0IGJhY2tncm91bmQgY29sb3IgZm9yIGxhYmVscy5cbi8vLyBAdHlwZSBDb2xvclxuJGxhYmVsLWJhY2tncm91bmQ6ICRwcmltYXJ5LWNvbG9yICFkZWZhdWx0O1xuXG4vLy8gRGVmYXVsdCB0ZXh0IGNvbG9yIGZvciBsYWJlbHMuXG4vLy8gQHR5cGUgQ29sb3JcbiRsYWJlbC1jb2xvcjogJHdoaXRlICFkZWZhdWx0O1xuXG4vLy8gQWx0ZXJuYXRlIHRleHQgY29sb3IgZm9yIGxhYmVscy5cbi8vLyBAdHlwZSBDb2xvclxuJGxhYmVsLWNvbG9yLWFsdDogJGJsYWNrICFkZWZhdWx0O1xuXG4vLy8gQ29sb3JpbmcgY2xhc3Nlcy4gQSBtYXAgb2YgY2xhc3NlcyB0byBvdXRwdXQgaW4geW91ciBDU1MsIGxpa2UgYC5zZWNvbmRhcnlgLCBgLnN1Y2Nlc3NgLCBhbmQgc28gb24uXG4vLy8gQHR5cGUgTWFwXG4kbGFiZWwtcGFsZXR0ZTogJGZvdW5kYXRpb24tcGFsZXR0ZSAhZGVmYXVsdDtcblxuLy8vIERlZmF1bHQgZm9udCBzaXplIGZvciBsYWJlbHMuXG4vLy8gQHR5cGUgTnVtYmVyXG4kbGFiZWwtZm9udC1zaXplOiAwLjhyZW0gIWRlZmF1bHQ7XG5cbi8vLyBEZWZhdWx0IHBhZGRpbmcgaW5zaWRlIGxhYmVscy5cbi8vLyBAdHlwZSBOdW1iZXJcbiRsYWJlbC1wYWRkaW5nOiAwLjMzMzMzcmVtIDAuNXJlbSAhZGVmYXVsdDtcblxuLy8vIERlZmF1bHQgcmFkaXVzIG9mIGxhYmVscy5cbi8vLyBAdHlwZSBOdW1iZXJcbiRsYWJlbC1yYWRpdXM6ICRnbG9iYWwtcmFkaXVzICFkZWZhdWx0O1xuXG4vLy8gR2VuZXJhdGVzIGJhc2Ugc3R5bGVzIGZvciBhIGxhYmVsLlxuQG1peGluIGxhYmVsIHtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICBwYWRkaW5nOiAkbGFiZWwtcGFkZGluZztcblxuICBib3JkZXItcmFkaXVzOiAkbGFiZWwtcmFkaXVzO1xuXG4gIGZvbnQtc2l6ZTogJGxhYmVsLWZvbnQtc2l6ZTtcbiAgbGluZS1oZWlnaHQ6IDE7XG4gIHdoaXRlLXNwYWNlOiBub3dyYXA7XG4gIGN1cnNvcjogZGVmYXVsdDtcbn1cblxuQG1peGluIGZvdW5kYXRpb24tbGFiZWwge1xuICAubGFiZWwge1xuICAgIEBpbmNsdWRlIGxhYmVsO1xuXG4gICAgYmFja2dyb3VuZDogJGxhYmVsLWJhY2tncm91bmQ7XG4gICAgY29sb3I6ICRsYWJlbC1jb2xvcjtcblxuICAgIEBlYWNoICRuYW1lLCAkY29sb3IgaW4gJGxhYmVsLXBhbGV0dGUge1xuICAgICAgJi4jeyRuYW1lfSB7XG4gICAgICAgIGJhY2tncm91bmQ6ICRjb2xvcjtcbiAgICAgICAgY29sb3I6IGNvbG9yLXBpY2stY29udHJhc3QoJGNvbG9yLCAoJGxhYmVsLWNvbG9yLCAkbGFiZWwtY29sb3ItYWx0KSk7XG4gICAgICB9XG4gICAgfVxuICB9XG59XG4iLCIvLyBGb3VuZGF0aW9uIGZvciBTaXRlcyBieSBaVVJCXG4vLyBmb3VuZGF0aW9uLnp1cmIuY29tXG4vLyBMaWNlbnNlZCB1bmRlciBNSVQgT3BlbiBTb3VyY2VcblxuLy8vL1xuLy8vIEBncm91cCBtZWRpYS1vYmplY3Rcbi8vLy9cblxuLy8vIEJvdHRvbSBtYXJnaW4gb2YgYSBtZWRpYSBvYmplY3QuXG4vLy8gQHR5cGUgTnVtYmVyXG4kbWVkaWFvYmplY3QtbWFyZ2luLWJvdHRvbTogJGdsb2JhbC1tYXJnaW4gIWRlZmF1bHQ7XG5cbi8vLyBMZWZ0IGFuZCByaWdodCBwYWRkaW5nIG9uIHNlY3Rpb25zIHdpdGhpbiBhIG1lZGlhIG9iamVjdC5cbi8vLyBAdHlwZSBOdW1iZXJcbiRtZWRpYW9iamVjdC1zZWN0aW9uLXBhZGRpbmc6ICRnbG9iYWwtcGFkZGluZyAhZGVmYXVsdDtcblxuLy8vIFdpZHRoIG9mIGltYWdlcyB3aXRoaW4gYSBtZWRpYSBvYmplY3QsIHdoZW4gdGhlIG9iamVjdCBpcyBzdGFja2VkIHZlcnRpY2FsbHkuIFNldCB0byAnYXV0bycgdG8gdXNlIHRoZSBpbWFnZSdzIG5hdHVyYWwgd2lkdGguXG4vLy8gQHR5cGUgTnVtYmVyXG4kbWVkaWFvYmplY3QtaW1hZ2Utd2lkdGgtc3RhY2tlZDogMTAwJSAhZGVmYXVsdDtcblxuLy8vIEFkZHMgc3R5bGVzIGZvciBhIG1lZGlhIG9iamVjdCBjb250YWluZXIuXG5AbWl4aW4gbWVkaWEtb2JqZWN0LWNvbnRhaW5lciB7XG4gIGRpc3BsYXk6IGlmKCRnbG9iYWwtZmxleGJveCwgZmxleCwgYmxvY2spO1xuICBtYXJnaW4tYm90dG9tOiAkbWVkaWFvYmplY3QtbWFyZ2luLWJvdHRvbTtcblxuICBAaWYgJGdsb2JhbC1mbGV4Ym94IHtcbiAgICBmbGV4LXdyYXA6IG5vd3JhcDtcbiAgfVxufVxuXG4vLy8gQWRkcyBzdHlsZXMgZm9yIHNlY3Rpb25zIHdpdGhpbiBhIG1lZGlhIG9iamVjdC5cbi8vLyBAcGFyYW0ge051bWJlcn0gJHBhZGRpbmcgWyRtZWRpYW9iamVjdC1zZWN0aW9uLXBhZGRpbmddIC0gUGFkZGluZyBiZXR3ZWVuIHNlY3Rpb25zLlxuQG1peGluIG1lZGlhLW9iamVjdC1zZWN0aW9uKCRwYWRkaW5nOiAkbWVkaWFvYmplY3Qtc2VjdGlvbi1wYWRkaW5nKSB7XG4gIEBpZiAkZ2xvYmFsLWZsZXhib3gge1xuICAgIGZsZXg6IDAgMSBhdXRvO1xuICB9XG4gIEBlbHNlIHtcbiAgICBkaXNwbGF5OiB0YWJsZS1jZWxsO1xuICAgIHZlcnRpY2FsLWFsaWduOiB0b3A7XG4gIH1cblxuICAmOmZpcnN0LWNoaWxkIHtcbiAgICBwYWRkaW5nLSN7JGdsb2JhbC1yaWdodH06ICRwYWRkaW5nO1xuICB9XG5cbiAgJjpsYXN0LWNoaWxkOm5vdCg6bnRoLWNoaWxkKDIpKSB7XG4gICAgcGFkZGluZy0jeyRnbG9iYWwtbGVmdH06ICRwYWRkaW5nO1xuICB9XG5cbiAgPiA6bGFzdC1jaGlsZCB7XG4gICAgbWFyZ2luLWJvdHRvbTogMDtcbiAgfVxufVxuXG4vLy8gQWRkcyBzdHlsZXMgdG8gc3RhY2sgc2VjdGlvbnMgb2YgYSBtZWRpYSBvYmplY3QuIEFwcGx5IHRoaXMgdG8gdGhlIHNlY3Rpb24gZWxlbWVudHMsIG5vdCB0aGUgY29udGFpbmVyLlxuQG1peGluIG1lZGlhLW9iamVjdC1zdGFjayB7XG4gIHBhZGRpbmc6IDA7XG4gIHBhZGRpbmctYm90dG9tOiAkbWVkaWFvYmplY3Qtc2VjdGlvbi1wYWRkaW5nO1xuXG4gIEBpZiAkZ2xvYmFsLWZsZXhib3gge1xuICAgIGZsZXgtYmFzaXM6IDEwMCU7XG4gICAgbWF4LXdpZHRoOiAxMDAlO1xuICB9XG4gIEBlbHNlIHtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgfVxuXG4gIGltZyB7XG4gICAgd2lkdGg6ICRtZWRpYW9iamVjdC1pbWFnZS13aWR0aC1zdGFja2VkO1xuICB9XG59XG5cbkBtaXhpbiBmb3VuZGF0aW9uLW1lZGlhLW9iamVjdCB7XG4gIC5tZWRpYS1vYmplY3Qge1xuICAgIEBpbmNsdWRlIG1lZGlhLW9iamVjdC1jb250YWluZXI7XG5cbiAgICBpbWcge1xuICAgICAgbWF4LXdpZHRoOiBub25lO1xuICAgIH1cblxuICAgIEBpZiAkZ2xvYmFsLWZsZXhib3gge1xuICAgICAgJi5zdGFjay1mb3ItI3skLXpmLXplcm8tYnJlYWtwb2ludH0ge1xuICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KCQtemYtemVyby1icmVha3BvaW50IG9ubHkpIHtcbiAgICAgICAgICBmbGV4LXdyYXA6IHdyYXA7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG5cbiAgICAmLnN0YWNrLWZvci0jeyQtemYtemVyby1icmVha3BvaW50fSAubWVkaWEtb2JqZWN0LXNlY3Rpb24ge1xuICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludCgkLXpmLXplcm8tYnJlYWtwb2ludCBvbmx5KSB7XG4gICAgICAgIEBpbmNsdWRlIG1lZGlhLW9iamVjdC1zdGFjaztcbiAgICAgIH1cbiAgICB9XG4gIH1cblxuICAubWVkaWEtb2JqZWN0LXNlY3Rpb24ge1xuICAgIEBpbmNsdWRlIG1lZGlhLW9iamVjdC1zZWN0aW9uO1xuXG4gICAgQGlmICRnbG9iYWwtZmxleGJveCB7XG4gICAgICAmLm1haW4tc2VjdGlvbiB7XG4gICAgICAgIGZsZXg6IDEgMSAwcHg7IC8vIHNhc3MtbGludDpkaXNhYmxlLWxpbmUgemVyby11bml0XG4gICAgICB9XG4gICAgfVxuICAgIEBlbHNlIHtcbiAgICAgICYubWlkZGxlIHtcbiAgICAgICAgdmVydGljYWwtYWxpZ246IG1pZGRsZTtcbiAgICAgIH1cblxuICAgICAgJi5ib3R0b20ge1xuICAgICAgICB2ZXJ0aWNhbC1hbGlnbjogYm90dG9tO1xuICAgICAgfVxuICAgIH1cbiAgfVxufVxuIiwiLy8gRm91bmRhdGlvbiBmb3IgU2l0ZXMgYnkgWlVSQlxuLy8gZm91bmRhdGlvbi56dXJiLmNvbVxuLy8gTGljZW5zZWQgdW5kZXIgTUlUIE9wZW4gU291cmNlXG5cbi8vLy9cbi8vLyBAZ3JvdXAgb2ZmLWNhbnZhc1xuLy8vL1xuXG4vLy8gV2lkdGggb2YgYSBsZWZ0L3JpZ2h0IG9mZi1jYW52YXMgcGFuZWwuXG4vLy8gQHR5cGUgTnVtYmVyXG4kb2ZmY2FudmFzLXNpemU6IDI1MHB4ICFkZWZhdWx0O1xuXG4vLy8gSGVpZ2h0IG9mIGEgdG9wL2JvdHRvbSBvZmYtY2FudmFzIHBhbmVsLlxuLy8vIEB0eXBlIE51bWJlclxuJG9mZmNhbnZhcy12ZXJ0aWNhbC1zaXplOiAyNTBweCAhZGVmYXVsdDtcblxuLy8vIEJhY2tncm91bmQgY29sb3Igb2YgYW4gb2ZmLWNhbnZhcyBwYW5lbC5cbi8vLyBAdHlwZSBDb2xvclxuJG9mZmNhbnZhcy1iYWNrZ3JvdW5kOiAkbGlnaHQtZ3JheSAhZGVmYXVsdDtcblxuLy8vIEJveCBzaGFkb3cgZm9yIHRoZSBvZmYtY2FudmFzIG92ZXJsYXAgcGFuZWwuXG4vLy8gQHR5cGUgU2hhZG93XG4kb2ZmY2FudmFzLXNoYWRvdzogMCAwIDEwcHggcmdiYSgkYmxhY2ssIDAuNykgIWRlZmF1bHQ7XG5cbi8vLyBJbm5lciBib3ggc2hhZG93IHNpemUgZm9yIHRoZSBvZmYtY2FudmFzIHB1c2ggcGFuZWwuXG4vLy8gQHR5cGUgTnVtYmVyXG4kb2ZmY2FudmFzLWlubmVyLXNoYWRvdy1zaXplOiAyMHB4ICFkZWZhdWx0O1xuXG4vLy8gSW5uZXIgYm94IHNoYWRvdyBjb2xvciBmb3IgdGhlIG9mZi1jYW52YXMgcHVzaCBwYW5lbC5cbi8vLyBAdHlwZSBDb2xvclxuJG9mZmNhbnZhcy1pbm5lci1zaGFkb3ctY29sb3I6IHJnYmEoJGJsYWNrLCAwLjI1KSAhZGVmYXVsdDtcblxuLy8vIFotaW5kZXggb2YgYW4gb2ZmLWNhbnZhcyBjb250ZW50IG92ZXJsYXkuXG4vLy8gQHR5cGUgTnVtYmVyXG4kb2ZmY2FudmFzLW92ZXJsYXktemluZGV4OiAxMSAhZGVmYXVsdDtcblxuLy8vIFotaW5kZXggb2YgYW4gb2ZmLWNhbnZhcyBwYW5lbCB3aXRoIHRoZSBgcHVzaGAgdHJhbnNpdGlvbi5cbi8vLyBAdHlwZSBOdW1iZXJcbiRvZmZjYW52YXMtcHVzaC16aW5kZXg6IDEyICFkZWZhdWx0O1xuXG4vLy8gWi1pbmRleCBvZiBhbiBvZmYtY2FudmFzIHBhbmVsIHdpdGggdGhlIGBvdmVybGFwYCB0cmFuc2l0aW9uLlxuLy8vIEB0eXBlIE51bWJlclxuJG9mZmNhbnZhcy1vdmVybGFwLXppbmRleDogMTMgIWRlZmF1bHQ7XG5cbi8vLyBaLWluZGV4IG9mIGFuIG9mZi1jYW52YXMgcGFuZWwgdXNpbmcgdGhlIGByZXZlYWwtZm9yLSpgIGNsYXNzZXMgb3IgbWl4aW4uXG4vLy8gQHR5cGUgTnVtYmVyXG4kb2ZmY2FudmFzLXJldmVhbC16aW5kZXg6IDEyICFkZWZhdWx0O1xuXG4vLy8gTGVuZ3RoIG9mIHRoZSBhbmltYXRpb24gb24gYW4gb2ZmLWNhbnZhcyBwYW5lbC5cbi8vLyBAdHlwZSBOdW1iZXJcbiRvZmZjYW52YXMtdHJhbnNpdGlvbi1sZW5ndGg6IDAuNXMgIWRlZmF1bHQ7XG5cbi8vLyBUaW1pbmcgZnVuY3Rpb24gb2YgdGhlIGFuaW1hdGlvbiBvbiBhbiBvZmYtY2FudmFzIHBhbmVsLlxuLy8vIEB0eXBlIEtleXdvcmRcbiRvZmZjYW52YXMtdHJhbnNpdGlvbi10aW1pbmc6IGVhc2UgIWRlZmF1bHQ7XG5cbi8vLyBJZiBgdHJ1ZWAsIGEgcmV2ZWFsZWQgb2ZmLWNhbnZhcyB3aWxsIGJlIGZpeGVkLXBvc2l0aW9uLCBhbmQgc2Nyb2xsIHdpdGggdGhlIHNjcmVlbi5cbi8vLyBAdHlwZSBCb29sXG4kb2ZmY2FudmFzLWZpeGVkLXJldmVhbDogdHJ1ZSAhZGVmYXVsdDtcblxuLy8vIEJhY2tncm91bmQgY29sb3IgZm9yIHRoZSBvdmVybGF5IHRoYXQgYXBwZWFycyB3aGVuIGFuIG9mZi1jYW52YXMgcGFuZWwgaXMgb3Blbi5cbi8vLyBAdHlwZSBDb2xvclxuJG9mZmNhbnZhcy1leGl0LWJhY2tncm91bmQ6IHJnYmEoJHdoaXRlLCAwLjI1KSAhZGVmYXVsdDtcblxuLy8vIENTUyBjbGFzcyB1c2VkIGZvciB0aGUgbWFpbiBjb250ZW50IGFyZWEuIFRoZSBvZmYtY2FudmFzIG1peGlucyB1c2UgdGhpcyB0byB0YXJnZXQgdGhlIHBhZ2UgY29udGVudC5cbiRtYWluY29udGVudC1jbGFzczogJ29mZi1jYW52YXMtY29udGVudCcgIWRlZmF1bHQ7XG5cbi8vLyBBZGRzIGJhc2VsaW5lIHN0eWxlcyBmb3Igb2ZmLWNhbnZhcy4gVGhpcyBDU1MgaXMgcmVxdWlyZWQgdG8gbWFrZSB0aGUgb3RoZXIgcGllY2VzIHdvcmsuXG5AbWl4aW4gb2ZmLWNhbnZhcy1iYXNpY3Mge1xuXG4gIC8vIENoZWNrcyB0aGUgei1pbmRleGVzIGFuZCBpbmNyZWFzZSB0aGVtIGR1ZSB0byBiYWNrd2FyZHMgY29tcGF0aWJpbGl0eS5cbiAgLy8gVGhpcyBpcyBuZWNlc3NhcnkgYmVjYXVzZSB0aGUgb3ZlcmxheSdzIHotaW5kZXggaXMgbmV3IHNpbmNlIHY2LjQgYW5kIG1heSBiZSBpZGVudGljYWwgdG8gdGhlIHVzZXIgY3VzdG9tIHNldHRpbmdzIG9mIHRoZSBwdXNoIHotaW5kZXguXG4gIEBpZiAkb2ZmY2FudmFzLXB1c2gtemluZGV4IDw9ICRvZmZjYW52YXMtb3ZlcmxheS16aW5kZXggeyAkb2ZmY2FudmFzLXB1c2gtemluZGV4OiAkb2ZmY2FudmFzLW92ZXJsYXktemluZGV4ICsgMSAhZ2xvYmFsOyB9XG4gIEBpZiAkb2ZmY2FudmFzLW92ZXJsYXAtemluZGV4IDw9ICRvZmZjYW52YXMtcHVzaC16aW5kZXggeyAkb2ZmY2FudmFzLW92ZXJsYXAtemluZGV4OiAkb2ZmY2FudmFzLXB1c2gtemluZGV4ICsgMSAhZ2xvYmFsOyB9XG4gIEBpZiAkb2ZmY2FudmFzLXJldmVhbC16aW5kZXggPD0gJG9mZmNhbnZhcy1vdmVybGF5LXppbmRleCB7ICRvZmZjYW52YXMtcmV2ZWFsLXppbmRleDogJG9mZmNhbnZhcy1vdmVybGF5LXppbmRleCArIDEgIWdsb2JhbDsgfVxuXG4gIC8vIEhpZGVzIG92ZXJmbG93IG9uIGJvZHkgd2hlbiBhbiBvZmYtY2FudmFzIHBhbmVsIGlzIG9wZW4uXG4gIC5pcy1vZmYtY2FudmFzLW9wZW4ge1xuICAgIG92ZXJmbG93OiBoaWRkZW47XG4gIH1cblxuICAvLyBPZmYtY2FudmFzIG92ZXJsYXkgKGdlbmVyYXRlZCBieSBKYXZhU2NyaXB0KVxuICAuanMtb2ZmLWNhbnZhcy1vdmVybGF5IHtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgdG9wOiAwO1xuICAgIGxlZnQ6IDA7XG4gICAgei1pbmRleDogJG9mZmNhbnZhcy1vdmVybGF5LXppbmRleDtcblxuICAgIHdpZHRoOiAxMDAlO1xuICAgIGhlaWdodDogMTAwJTtcblxuICAgIHRyYW5zaXRpb246IG9wYWNpdHkgJG9mZmNhbnZhcy10cmFuc2l0aW9uLWxlbmd0aCAkb2ZmY2FudmFzLXRyYW5zaXRpb24tdGltaW5nLCB2aXNpYmlsaXR5ICRvZmZjYW52YXMtdHJhbnNpdGlvbi1sZW5ndGggJG9mZmNhbnZhcy10cmFuc2l0aW9uLXRpbWluZztcblxuICAgIGJhY2tncm91bmQ6ICRvZmZjYW52YXMtZXhpdC1iYWNrZ3JvdW5kO1xuXG4gICAgb3BhY2l0eTogMDtcbiAgICB2aXNpYmlsaXR5OiBoaWRkZW47XG5cbiAgICBvdmVyZmxvdzogaGlkZGVuO1xuXG4gICAgJi5pcy12aXNpYmxlIHtcbiAgICAgIG9wYWNpdHk6IDE7XG4gICAgICB2aXNpYmlsaXR5OiB2aXNpYmxlO1xuICAgIH1cblxuICAgICYuaXMtY2xvc2FibGUge1xuICAgICAgY3Vyc29yOiBwb2ludGVyO1xuICAgIH1cblxuICAgICYuaXMtb3ZlcmxheS1hYnNvbHV0ZSB7XG4gICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgfVxuICAgIFxuICAgICYuaXMtb3ZlcmxheS1maXhlZCB7XG4gICAgICBwb3NpdGlvbjogZml4ZWQ7XG4gICAgfVxuICB9XG59XG5cbi8vIEFkZHMgYmFzaWMgc3R5bGVzIGZvciBhbiBvZmYtY2FudmFzIHdyYXBwZXIuXG5AbWl4aW4gb2ZmLWNhbnZhcy13cmFwcGVyKCkge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIG92ZXJmbG93OiBoaWRkZW47XG59XG5cbi8vLyBBZGRzIGJhc2ljIHN0eWxlcyBmb3IgYW4gb2ZmLWNhbnZhcyBwYW5lbC5cbkBtaXhpbiBvZmYtY2FudmFzLWJhc2UoXG4gICRiYWNrZ3JvdW5kOiAkb2ZmY2FudmFzLWJhY2tncm91bmQsXG4gICR0cmFuc2l0aW9uOiAkb2ZmY2FudmFzLXRyYW5zaXRpb24tbGVuZ3RoICRvZmZjYW52YXMtdHJhbnNpdGlvbi10aW1pbmcsXG4gICRmaXhlZDogdHJ1ZVxuKSB7XG4gIEBpbmNsdWRlIGRpc2FibGUtbW91c2Utb3V0bGluZTtcblxuICBAaWYgJGZpeGVkID09IHRydWUge1xuICAgIHBvc2l0aW9uOiBmaXhlZDtcbiAgfVxuICBAZWxzZSB7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICB9XG5cbiAgLy8gU2V0IHRoZSBvZmYtY2FudmFzIHotaW5kZXguXG4gIHotaW5kZXg6ICRvZmZjYW52YXMtcHVzaC16aW5kZXg7XG5cbiAgLy8gSW5jcmVhc2UgQ1NTIHNwZWNpZmljaXR5XG4gICYuaXMtdHJhbnNpdGlvbi1wdXNoIHtcbiAgICB6LWluZGV4OiAkb2ZmY2FudmFzLXB1c2gtemluZGV4O1xuICB9XG5cbiAgdHJhbnNpdGlvbjogdHJhbnNmb3JtICR0cmFuc2l0aW9uO1xuICBiYWNrZmFjZS12aXNpYmlsaXR5OiBoaWRkZW47XG5cbiAgYmFja2dyb3VuZDogJGJhY2tncm91bmQ7XG5cbiAgLy8gSGlkZSBpbmFjdGl2ZSBvZmYtY2FudmFzIHdpdGhpbiB0aGUgY29udGVudCB0aGF0IGhhdmUgdGhlIHNhbWUgcG9zaXRpb25cbiAgJi5pcy1jbG9zZWQge1xuICAgIHZpc2liaWxpdHk6IGhpZGRlbjtcbiAgfVxuXG4gIC8vIE92ZXJsYXAgb25seSBzdHlsZXMuXG4gICYuaXMtdHJhbnNpdGlvbi1vdmVybGFwIHtcbiAgICB6LWluZGV4OiAkb2ZmY2FudmFzLW92ZXJsYXAtemluZGV4O1xuXG4gICAgJi5pcy1vcGVuIHtcbiAgICAgIGJveC1zaGFkb3c6ICRvZmZjYW52YXMtc2hhZG93O1xuICAgIH1cbiAgfVxuXG4gIC8vIFNldHMgdHJhbnNmb3JtIHRvIDAgdG8gc2hvdyBhbiBvZmYtY2FudmFzIHBhbmVsLlxuICAmLmlzLW9wZW4ge1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlKDAsIDApO1xuICB9XG59XG5cbi8vLyBBZGRzIHN0eWxlcyB0byBwb3NpdGlvbiBhbiBvZmYtY2FudmFzIHBhbmVsIHRvIHRoZSBsZWZ0L3JpZ2h0L3RvcC9ib3R0b20uXG5AbWl4aW4gb2ZmLWNhbnZhcy1wb3NpdGlvbihcbiAgJHBvc2l0aW9uOiBsZWZ0LFxuICAkb3JpZW50YXRpb246IGhvcml6b250YWwsXG4gICRzaXplOiBpZigkb3JpZW50YXRpb24gPT0gaG9yaXpvbnRhbCwgJG9mZmNhbnZhcy1zaXplLCAkb2ZmY2FudmFzLXZlcnRpY2FsLXNpemUpXG4pIHtcbiAgQGlmICRwb3NpdGlvbiA9PSBsZWZ0IHtcbiAgICB0b3A6IDA7XG4gICAgbGVmdDogMDtcbiAgICB3aWR0aDogJHNpemU7XG4gICAgaGVpZ2h0OiAxMDAlO1xuXG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKC0kc2l6ZSk7XG4gICAgb3ZlcmZsb3cteTogYXV0bztcbiAgICBcbiAgICAvLyBTZXRzIHRoZSBwb3NpdGlvbiBmb3IgbmVzdGVkIG9mZi1jYW52YXMgZWxlbWVudFxuICAgIEBhdC1yb290IC4jeyRtYWluY29udGVudC1jbGFzc30gLm9mZi1jYW52YXMucG9zaXRpb24tI3skcG9zaXRpb259IHtcbiAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWCgtJHNpemUpO1xuICAgICAgJi5pcy10cmFuc2l0aW9uLW92ZXJsYXAuaXMtb3BlbiB7XG4gICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlKDAsIDApO1xuICAgICAgfVxuICAgIH1cblxuICAgIC8vIFNldHMgdGhlIG9wZW4gcG9zaXRpb24gZm9yIHRoZSBjb250ZW50XG4gICAgQGF0LXJvb3QgLiN7JG1haW5jb250ZW50LWNsYXNzfS5pcy1vcGVuLSN7JHBvc2l0aW9ufSB7XG4gICAgICAmLmhhcy10cmFuc2l0aW9uLXB1c2gge1xuICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoJHNpemUpO1xuICAgICAgfVxuICAgIH1cbiAgfVxuICBAZWxzZSBpZiAkcG9zaXRpb24gPT0gcmlnaHQge1xuICAgIHRvcDogMDtcbiAgICByaWdodDogMDtcbiAgICB3aWR0aDogJHNpemU7XG4gICAgaGVpZ2h0OiAxMDAlO1xuXG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKCRzaXplKTtcbiAgICBvdmVyZmxvdy15OiBhdXRvO1xuICAgIFxuICAgIC8vIFNldHMgdGhlIHBvc2l0aW9uIGZvciBuZXN0ZWQgb2ZmLWNhbnZhcyBlbGVtZW50XG4gICAgQGF0LXJvb3QgLiN7JG1haW5jb250ZW50LWNsYXNzfSAub2ZmLWNhbnZhcy5wb3NpdGlvbi0jeyRwb3NpdGlvbn0ge1xuICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKCRzaXplKTtcbiAgICAgICYuaXMtdHJhbnNpdGlvbi1vdmVybGFwLmlzLW9wZW4ge1xuICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZSgwLCAwKTtcbiAgICAgIH1cbiAgICB9XG5cbiAgICAvLyBTZXRzIHRoZSBvcGVuIHBvc2l0aW9uIGZvciB0aGUgY29udGVudFxuICAgIEBhdC1yb290IC4jeyRtYWluY29udGVudC1jbGFzc30uaXMtb3Blbi0jeyRwb3NpdGlvbn0ge1xuICAgICAgJi5oYXMtdHJhbnNpdGlvbi1wdXNoIHtcbiAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKC0kc2l6ZSk7XG4gICAgICB9XG4gICAgfVxuICB9XG4gIEBlbHNlIGlmICRwb3NpdGlvbiA9PSB0b3Age1xuICAgIHRvcDogMDtcbiAgICBsZWZ0OiAwO1xuXG4gICAgd2lkdGg6IDEwMCU7XG4gICAgaGVpZ2h0OiAkc2l6ZTtcblxuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgtJHNpemUpO1xuICAgIG92ZXJmbG93LXg6IGF1dG87XG4gICAgXG4gICAgLy8gU2V0cyB0aGUgcG9zaXRpb24gZm9yIG5lc3RlZCBvZmYtY2FudmFzIGVsZW1lbnRcbiAgICBAYXQtcm9vdCAuI3skbWFpbmNvbnRlbnQtY2xhc3N9IC5vZmYtY2FudmFzLnBvc2l0aW9uLSN7JHBvc2l0aW9ufSB7XG4gICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLSRzaXplKTtcbiAgICAgICYuaXMtdHJhbnNpdGlvbi1vdmVybGFwLmlzLW9wZW4ge1xuICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZSgwLCAwKTtcbiAgICAgIH1cbiAgICB9XG5cbiAgICAvLyBTZXRzIHRoZSBvcGVuIHBvc2l0aW9uIGZvciB0aGUgY29udGVudFxuICAgIEBhdC1yb290IC4jeyRtYWluY29udGVudC1jbGFzc30uaXMtb3Blbi0jeyRwb3NpdGlvbn0ge1xuICAgICAgJi5oYXMtdHJhbnNpdGlvbi1wdXNoIHtcbiAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKCRzaXplKTtcbiAgICAgIH1cbiAgICB9XG4gIH1cbiAgQGVsc2UgaWYgJHBvc2l0aW9uID09IGJvdHRvbSB7XG4gICAgYm90dG9tOiAwO1xuICAgIGxlZnQ6IDA7XG5cbiAgICB3aWR0aDogMTAwJTtcbiAgICBoZWlnaHQ6ICRzaXplO1xuXG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKCRzaXplKTtcbiAgICBvdmVyZmxvdy14OiBhdXRvO1xuICAgIFxuICAgIC8vIFNldHMgdGhlIHBvc2l0aW9uIGZvciBuZXN0ZWQgb2ZmLWNhbnZhcyBlbGVtZW50XG4gICAgQGF0LXJvb3QgLiN7JG1haW5jb250ZW50LWNsYXNzfSAub2ZmLWNhbnZhcy5wb3NpdGlvbi0jeyRwb3NpdGlvbn0ge1xuICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKCRzaXplKTtcbiAgICAgICYuaXMtdHJhbnNpdGlvbi1vdmVybGFwLmlzLW9wZW4ge1xuICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZSgwLCAwKTtcbiAgICAgIH1cbiAgICB9XG5cbiAgICAvLyBTZXRzIHRoZSBvcGVuIHBvc2l0aW9uIGZvciB0aGUgY29udGVudFxuICAgIEBhdC1yb290IC4jeyRtYWluY29udGVudC1jbGFzc30uaXMtb3Blbi0jeyRwb3NpdGlvbn0ge1xuICAgICAgJi5oYXMtdHJhbnNpdGlvbi1wdXNoIHtcbiAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC0kc2l6ZSk7XG4gICAgICB9XG4gICAgfVxuICB9XG5cbiAgLy8gSWYgJG9mZmNhbnZhcy1pbm5lci1zaGFkb3ctc2l6ZSBpcyBzZXQsIGFkZCBpbm5lciBib3gtc2hhZG93LlxuICAvLyBUaGlzIG1pbWljcyB0aGUgb2ZmLWNhbnZhcyBwYW5lbCBoYXZpbmcgYSBsb3dlciB6LWluZGV4LCB3aXRob3V0IGhhdmluZyB0byBoYXZlIG9uZS5cbiAgQGlmICRvZmZjYW52YXMtaW5uZXItc2hhZG93LXNpemUge1xuICAgICYuaXMtdHJhbnNpdGlvbi1wdXNoIHtcbiAgICAgIEBpZiAkcG9zaXRpb24gPT0gbGVmdCB7XG4gICAgICAgIEBpbmNsdWRlIGlubmVyLXNpZGUtc2hhZG93KHJpZ2h0LCAkb2ZmY2FudmFzLWlubmVyLXNoYWRvdy1zaXplLCAkb2ZmY2FudmFzLWlubmVyLXNoYWRvdy1jb2xvcik7XG4gICAgICB9XG4gICAgICBAZWxzZSBpZiAkcG9zaXRpb24gPT0gcmlnaHQge1xuICAgICAgICBAaW5jbHVkZSBpbm5lci1zaWRlLXNoYWRvdyhsZWZ0LCAkb2ZmY2FudmFzLWlubmVyLXNoYWRvdy1zaXplLCAkb2ZmY2FudmFzLWlubmVyLXNoYWRvdy1jb2xvcik7XG4gICAgICB9XG4gICAgICBAZWxzZSBpZiAkcG9zaXRpb24gPT0gdG9wIHtcbiAgICAgICAgQGluY2x1ZGUgaW5uZXItc2lkZS1zaGFkb3coYm90dG9tLCAkb2ZmY2FudmFzLWlubmVyLXNoYWRvdy1zaXplLCAkb2ZmY2FudmFzLWlubmVyLXNoYWRvdy1jb2xvcik7XG4gICAgICB9XG4gICAgICBAZWxzZSBpZiAkcG9zaXRpb24gPT0gYm90dG9tIHtcbiAgICAgICAgQGluY2x1ZGUgaW5uZXItc2lkZS1zaGFkb3codG9wLCAkb2ZmY2FudmFzLWlubmVyLXNoYWRvdy1zaXplLCAkb2ZmY2FudmFzLWlubmVyLXNoYWRvdy1jb2xvcik7XG4gICAgICB9XG4gICAgfSAgICBcbiAgfVxuXG59XG5cbi8vLyBTZXRzIHRoZSBzdHlsZXMgZm9yIHRoZSBjb250ZW50IGNvbnRhaW5lci5cbkBtaXhpbiBvZmYtY2FudmFzLWNvbnRlbnQoKSB7XG4gIHRyYW5zZm9ybTogbm9uZTtcbiAgdHJhbnNpdGlvbjogdHJhbnNmb3JtICRvZmZjYW52YXMtdHJhbnNpdGlvbi1sZW5ndGggJG9mZmNhbnZhcy10cmFuc2l0aW9uLXRpbWluZztcbiAgYmFja2ZhY2UtdmlzaWJpbGl0eTogaGlkZGVuO1xuXG4gIC8vIFRyYW5zZm9ybSBzY29wZSB1bnRpbCB0aGUgZWxlbWVudCBpcyBjbG9zZWQgKG1ha2VzIHN1cmUgdHJhbnNpdGlvbmVuZCBnZXRzIHRyaWdnZXJlZClcbiAgJi5oYXMtdHJhbnNpdGlvbi1wdXNoIHtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZSgwLCAwKTtcbiAgfVxuXG4gIC8vIENvbnNpZGVyIGVsZW1lbnQgJiBjb250ZW50LCBuZXN0ZWQgaW4gYW5vdGhlciBjb250ZW50XG4gIC5vZmYtY2FudmFzLmlzLW9wZW4ge1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlKDAsIDApO1xuICB9XG59XG5cbi8vLyBBZGRzIHN0eWxlcyB0aGF0IHJldmVhbCBhbiBvZmYtY2FudmFzIHBhbmVsLlxuQG1peGluIG9mZi1jYW52YXMtcmV2ZWFsKFxuJHBvc2l0aW9uOiBsZWZ0LFxuJHppbmRleDogJG9mZmNhbnZhcy1yZXZlYWwtemluZGV4LFxuJGNvbnRlbnQ6ICRtYWluY29udGVudC1jbGFzc1xuKSB7XG4gIHRyYW5zZm9ybTogbm9uZTtcbiAgei1pbmRleDogJHppbmRleDtcbiAgdHJhbnNpdGlvbjogbm9uZTtcbiAgdmlzaWJpbGl0eTogdmlzaWJsZTtcblxuICBAaWYgbm90ICRvZmZjYW52YXMtZml4ZWQtcmV2ZWFsIHtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIH1cblxuICAuY2xvc2UtYnV0dG9uIHtcbiAgICBkaXNwbGF5OiBub25lO1xuICB9XG5cbiAgLy8gQ29uc2lkZXIgcmV2ZWFsZWQgZWxlbWVudCBpcyBuZXN0ZWQgaW4gY29udGVudFxuICAuI3skbWFpbmNvbnRlbnQtY2xhc3N9ICYge1xuICAgIHRyYW5zZm9ybTogbm9uZTtcbiAgfVxuXG4gIEBhdC1yb290IC4jeyRjb250ZW50fS5oYXMtcmV2ZWFsLSN7JHBvc2l0aW9ufSB7XG4gICAgbWFyZ2luLSN7JHBvc2l0aW9ufTogJG9mZmNhbnZhcy1zaXplO1xuICB9XG5cbiAgLy8gYmFja3dhcmRzIGNvbXBhdGliaWxpdHkgKHByaW9yIHRvIHY2LjQpXG4gICYgfiAuI3skY29udGVudH0ge1xuICAgIG1hcmdpbi0jeyRwb3NpdGlvbn06ICRvZmZjYW52YXMtc2l6ZTtcbiAgfVxufVxuXG4vLy8gT3ZlcnJpZGVzIHRoZSBvZmYtY2FudmFzIHN0eWxlc1xuQG1peGluIGluLWNhbnZhcygpIHtcbiAgdmlzaWJpbGl0eTogdmlzaWJsZTtcbiAgaGVpZ2h0OiBhdXRvO1xuICBwb3NpdGlvbjogc3RhdGljO1xuICBiYWNrZ3JvdW5kOiBpbmhlcml0O1xuICB3aWR0aDogaW5oZXJpdDtcbiAgb3ZlcmZsb3c6IGluaGVyaXQ7XG4gIHRyYW5zaXRpb246IGluaGVyaXQ7XG5cbiAgLy8gSW5jcmVhc2UgQ1NTIHNwZWNpZmljaXR5XG4gICYucG9zaXRpb24tbGVmdCxcbiAgJi5wb3NpdGlvbi1yaWdodCxcbiAgJi5wb3NpdGlvbi10b3AsXG4gICYucG9zaXRpb24tYm90dG9tIHtcbiAgICBib3gtc2hhZG93OiBub25lO1xuICAgIHRyYW5zZm9ybTogbm9uZTtcbiAgfVxuXG4gIC5jbG9zZS1idXR0b24ge1xuICAgIGRpc3BsYXk6IG5vbmU7XG4gIH1cbn1cblxuQG1peGluIGZvdW5kYXRpb24tb2ZmLWNhbnZhcyB7XG4gIEBpbmNsdWRlIG9mZi1jYW52YXMtYmFzaWNzO1xuXG4gIC8vIE9mZi1jYW52YXMgd3JhcHBlclxuICAub2ZmLWNhbnZhcy13cmFwcGVyIHtcbiAgICBAaW5jbHVkZSBvZmYtY2FudmFzLXdyYXBwZXI7XG4gIH1cblxuICAvLyBPZmYtY2FudmFzIGNvbnRhaW5lclxuICAub2ZmLWNhbnZhcyB7XG4gICAgQGluY2x1ZGUgb2ZmLWNhbnZhcy1iYXNlO1xuXG4gICAgLy8gRm9yY2UgcG9zaXRpb24gYWJzb2x1dGUgZm9yIG5lc3RlZCBvZmYtY2FudmFzIGJlY2F1c2UgZml4ZWQgZG9lc24ndCB3b3JrIGZvciBwdXNoIHRyYW5zaXRpb24gd2l0aGluIHRoZSB0cmFuc2Zvcm0gc2NvcGUuXG4gICAgQGF0LXJvb3QgLiN7JG1haW5jb250ZW50LWNsYXNzfSAmIHtcbiAgICAgIC8vIE5PVEU6IHNpbmNlIG92ZXJsYXAgdHJhbnNpdGlvbiBpcyBjdXJyZW50bHkgZm9yY2VkIGlmIG5lc3RlZCwgdGhlcmUncyBubyBuZWVkIHRvIGZvcmNlIHBvc2l0aW9uIGFic29sdXRlIHVudGlsIG5lc3RlZCBwdXNoIHRyYW5zaXRpb24gaXMgc3VwcG9ydGVkLlxuICAgICAgLy8gcG9zaXRpb246IGFic29sdXRlO1xuICAgIH1cbiAgfVxuXG4gIC8vIE9mZi1jYW52YXMgY29udGFpbmVyIHdpdGggYWJzb2x1dGUgcG9zaXRpb25cbiAgLm9mZi1jYW52YXMtYWJzb2x1dGUge1xuICAgIEBpbmNsdWRlIG9mZi1jYW52YXMtYmFzZSgkZml4ZWQ6IGZhbHNlKTtcbiAgfVxuXG4gIC8vIE9mZi1jYW52YXMgcG9zaXRpb24gY2xhc3Nlc1xuICAucG9zaXRpb24tbGVmdCAgICB7IEBpbmNsdWRlIG9mZi1jYW52YXMtcG9zaXRpb24obGVmdCwgICBob3Jpem9udGFsKTsgfVxuICAucG9zaXRpb24tcmlnaHQgICB7IEBpbmNsdWRlIG9mZi1jYW52YXMtcG9zaXRpb24ocmlnaHQsICBob3Jpem9udGFsKTsgfVxuICAucG9zaXRpb24tdG9wICAgICB7IEBpbmNsdWRlIG9mZi1jYW52YXMtcG9zaXRpb24odG9wLCAgICB2ZXJ0aWNhbCk7IH1cbiAgLnBvc2l0aW9uLWJvdHRvbSAgeyBAaW5jbHVkZSBvZmYtY2FudmFzLXBvc2l0aW9uKGJvdHRvbSwgdmVydGljYWwpOyB9XG5cbiAgLm9mZi1jYW52YXMtY29udGVudCB7XG4gICAgQGluY2x1ZGUgb2ZmLWNhbnZhcy1jb250ZW50O1xuICB9XG5cbiAgLy8gUmV2ZWFsIG9mZi1jYW52YXMgcGFuZWwgb24gbGFyZ2VyIHNjcmVlbnNcbiAgQGVhY2ggJG5hbWUsICR2YWx1ZSBpbiAkYnJlYWtwb2ludC1jbGFzc2VzIHtcbiAgICBAaWYgJG5hbWUgIT0gJC16Zi16ZXJvLWJyZWFrcG9pbnQge1xuICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludCgkbmFtZSkge1xuICAgICAgICAucG9zaXRpb24tbGVmdC5yZXZlYWwtZm9yLSN7JG5hbWV9IHtcbiAgICAgICAgICBAaW5jbHVkZSBvZmYtY2FudmFzLXJldmVhbChsZWZ0KTtcbiAgICAgICAgfVxuXG4gICAgICAgIC5wb3NpdGlvbi1yaWdodC5yZXZlYWwtZm9yLSN7JG5hbWV9IHtcbiAgICAgICAgICBAaW5jbHVkZSBvZmYtY2FudmFzLXJldmVhbChyaWdodCk7XG4gICAgICAgIH1cblxuICAgICAgICAucG9zaXRpb24tdG9wLnJldmVhbC1mb3ItI3skbmFtZX0ge1xuICAgICAgICAgIEBpbmNsdWRlIG9mZi1jYW52YXMtcmV2ZWFsKHRvcCk7XG4gICAgICAgIH1cblxuICAgICAgICAucG9zaXRpb24tYm90dG9tLnJldmVhbC1mb3ItI3skbmFtZX0ge1xuICAgICAgICAgIEBpbmNsdWRlIG9mZi1jYW52YXMtcmV2ZWFsKGJvdHRvbSk7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gIH1cblxuICAvLyBNb3ZlIGluLWNhbnZhcyBmb3IgbGFyZ2VyIHNjcmVlbnNcbiAgQGVhY2ggJG5hbWUsICR2YWx1ZSBpbiAkYnJlYWtwb2ludC1jbGFzc2VzIHtcbiAgICBAaWYgJG5hbWUgIT0gJC16Zi16ZXJvLWJyZWFrcG9pbnQge1xuICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludCgkbmFtZSkge1xuICAgICAgICAub2ZmLWNhbnZhcy5pbi1jYW52YXMtZm9yLSN7JG5hbWV9IHtcbiAgICAgICAgICBAaW5jbHVkZSBpbi1jYW52YXM7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gIH1cbn1cblxuIiwiLy8gRm91bmRhdGlvbiBmb3IgU2l0ZXMgYnkgWlVSQlxuLy8gZm91bmRhdGlvbi56dXJiLmNvbVxuLy8gTGljZW5zZWQgdW5kZXIgTUlUIE9wZW4gU291cmNlXG5cbi8vLy9cbi8vLyBAZ3JvdXAgb3JiaXRcbi8vLy9cblxuLy8vIERlZmF1bHQgY29sb3IgZm9yIE9yYml0J3MgYnVsbGV0cy5cbi8vLyBAdHlwZSBDb2xvclxuJG9yYml0LWJ1bGxldC1iYWNrZ3JvdW5kOiAkbWVkaXVtLWdyYXkgIWRlZmF1bHQ7XG5cbi8vLyBEZWZhdWx0IGFjdGl2ZSBjb2xvciBmb3IgT3JiaXQncyBidWxsZXRzLlxuLy8vIEB0eXBlIENvbG9yXG4kb3JiaXQtYnVsbGV0LWJhY2tncm91bmQtYWN0aXZlOiAkZGFyay1ncmF5ICFkZWZhdWx0O1xuXG4vLy8gRGVmYXVsdCBkaWFtZXRlciBmb3IgT3JiaXQncyBidWxsZXRzLlxuLy8vIEB0eXBlIE51bWJlclxuJG9yYml0LWJ1bGxldC1kaWFtZXRlcjogMS4ycmVtICFkZWZhdWx0O1xuXG4vLy8gRGVmYXVsdCBtYXJnaW4gYmV0d2VlbiBPcmJpdCdzIGJ1bGxldHMuXG4vLy8gQHR5cGUgTnVtYmVyXG4kb3JiaXQtYnVsbGV0LW1hcmdpbjogMC4xcmVtICFkZWZhdWx0O1xuXG4vLy8gRGVmYXVsdCBkaXN0YW5jZSBmcm9tIHNsaWRlIHJlZ2lvbiBmb3IgT3JiaXQncyBidWxsZXRzLlxuLy8vIEB0eXBlIE51bWJlclxuJG9yYml0LWJ1bGxldC1tYXJnaW4tdG9wOiAwLjhyZW0gIWRlZmF1bHQ7XG5cbi8vLyBEZWZhdWx0IGJvdHRvbSBtYXJnaW4gZnJvbSBPcmJpdCdzIGJ1bGxldHMgdG8gd2hhdGV2ZXIgY29udGVudCBtYXkgbHVyayBiZWxvdyBpdC5cbi8vLyBAdHlwZSBOdW1iZXJcbiRvcmJpdC1idWxsZXQtbWFyZ2luLWJvdHRvbTogMC44cmVtICFkZWZhdWx0O1xuXG4vLy8gRGVmYXVsdCBiYWNrZ3JvdW5kIGNvbG9yIGZvciBPcmJpdCdzIGNhcHRpb24uXG4vLy8gQHR5cGUgQ29sb3JcbiRvcmJpdC1jYXB0aW9uLWJhY2tncm91bmQ6IHJnYmEoJGJsYWNrLCAwLjUpICFkZWZhdWx0O1xuXG4vLy8gRGVmYXVsdCBwYWRkaW5nIGZvciBPcmJpdCdzIGNhcHRpb24uXG4vLy8gQHR5cGUgTnVtYmVyXG4kb3JiaXQtY2FwdGlvbi1wYWRkaW5nOiAxcmVtICFkZWZhdWx0O1xuXG4vLy8gRGVmYXVsdCBiYWNrZ3JvdW5kIGNvbG9yIGZvciBPcmJpdCdzIGNvbnRyb2xzIHdoZW4gaG92ZXJlZC5cbi8vLyBAdHlwZSBDb2xvclxuJG9yYml0LWNvbnRyb2wtYmFja2dyb3VuZC1ob3ZlcjogcmdiYSgkYmxhY2ssIDAuNSkgIWRlZmF1bHQ7XG5cbi8vLyBEZWZhdWx0IHBhZGRpbmcgZm9yIE9yYml0J3MgY29udHJvbHMuXG4vLy8gQHR5cGUgTnVtYmVyXG4kb3JiaXQtY29udHJvbC1wYWRkaW5nOiAxcmVtICFkZWZhdWx0O1xuXG4vLy8gRGVmYXVsdCB6LWluZGV4IGZvciBPcmJpdCdzIGNvbnRyb2xzLlxuLy8vIEB0eXBlIE51bWJlclxuJG9yYml0LWNvbnRyb2wtemluZGV4OiAxMCAhZGVmYXVsdDtcblxuLy8vIEFkZHMgc3R5bGVzIGZvciB0aGUgb3V0ZXIgT3JiaXQgd3JhcHBlci4gVGhlc2Ugc3R5bGVzIGFyZSB1c2VkIG9uIHRoZSBgLm9yYml0YCBjbGFzcy5cbkBtaXhpbiBvcmJpdC13cmFwcGVyIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xufVxuXG4vLy8gQWRkcyBzdHlsZXMgZm9yIHRoZSBpbm5lciBPcmJpdCBzbGlkZSBjb250YWluZXIuIFRoZXNlIHN0eWxlcyBhcmUgdXNlZCBvbiB0aGUgYC5vcmJpdC1jb250YWluZXJgIGNsYXNzLlxuQG1peGluIG9yYml0LWNvbnRhaW5lciB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgaGVpZ2h0OiAwOyAvLyBQcmV2ZW50IEZPVUMgYnkgbm90IHNob3dpbmcgdW50aWwgSlMgc2V0cyBoZWlnaHRcbiAgbWFyZ2luOiAwO1xuICBsaXN0LXN0eWxlOiBub25lO1xuICBvdmVyZmxvdzogaGlkZGVuO1xufVxuXG4vLy8gQWRkcyBzdHlsZXMgZm9yIHRoZSBpbmRpdmlkdWFsIHNsaWRlcyBvZiBhbiBPcmJpdCBzbGlkZXIuIFRoZXNlIHN0eWxlcyBhcmUgdXNlZCBvbiB0aGUgYC5vcmJpdC1zbGlkZWAgY2xhc3MuXG5AbWl4aW4gb3JiaXQtc2xpZGUge1xuICB3aWR0aDogMTAwJTtcblxuICAmLm5vLW1vdGlvbnVpIHtcbiAgICAmLmlzLWFjdGl2ZSB7XG4gICAgICB0b3A6IDA7XG4gICAgICBsZWZ0OiAwO1xuICAgIH1cbiAgfVxufVxuXG5AbWl4aW4gb3JiaXQtZmlndXJlIHtcbiAgbWFyZ2luOiAwO1xufVxuXG4vLy8gQWRkcyBzdHlsZXMgZm9yIGEgc2xpZGUgY29udGFpbmluZyBhbiBpbWFnZS4gVGhlc2Ugc3R5bGVzIGFyZSB1c2VkIG9uIHRoZSBgLm9yYml0LWltYWdlYCBjbGFzcy5cbkBtaXhpbiBvcmJpdC1pbWFnZSB7XG4gIHdpZHRoOiAxMDAlO1xuICBtYXgtd2lkdGg6IDEwMCU7XG4gIG1hcmdpbjogMDtcbn1cblxuLy8vIEFkZHMgc3R5bGVzIGZvciBhbiBvcmJpdCBzbGlkZSBjYXB0aW9uLiBUaGVzZSBzdHlsZXMgYXJlIHVzZWQgb24gdGhlIGAub3JiaXQtY2FwdGlvbmAgY2xhc3MuXG5AbWl4aW4gb3JiaXQtY2FwdGlvbiB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgYm90dG9tOiAwO1xuICB3aWR0aDogMTAwJTtcbiAgbWFyZ2luLWJvdHRvbTogMDtcbiAgcGFkZGluZzogJG9yYml0LWNhcHRpb24tcGFkZGluZztcblxuICBiYWNrZ3JvdW5kLWNvbG9yOiAkb3JiaXQtY2FwdGlvbi1iYWNrZ3JvdW5kO1xuICBjb2xvcjogY29sb3ItcGljay1jb250cmFzdCgkb3JiaXQtY2FwdGlvbi1iYWNrZ3JvdW5kKTtcbn1cblxuLy8vIEFkZHMgYmFzZSBzdHlsZXMgZm9yIHRoZSBuZXh0L3ByZXZpb3VzIGJ1dHRvbnMgaW4gYW4gT3JiaXQgc2xpZGVyLiBUaGVzZSBzdHlsZXMgYXJlIHNoYXJlZCBiZXR3ZWVuIHRoZSBgLm9yYml0LW5leHRgIGFuZCBgLm9yYml0LXByZXZpb3VzYCBjbGFzc2VzIGluIHRoZSBkZWZhdWx0IENTUy5cbkBtaXhpbiBvcmJpdC1jb250cm9sIHtcbiAgQGluY2x1ZGUgZGlzYWJsZS1tb3VzZS1vdXRsaW5lO1xuICBAaW5jbHVkZSB2ZXJ0aWNhbC1jZW50ZXI7XG4gIHotaW5kZXg6ICRvcmJpdC1jb250cm9sLXppbmRleDtcbiAgcGFkZGluZzogJG9yYml0LWNvbnRyb2wtcGFkZGluZztcbiAgY29sb3I6ICR3aGl0ZTtcblxuICAmOmhvdmVyLFxuICAmOmFjdGl2ZSxcbiAgJjpmb2N1cyB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogJG9yYml0LWNvbnRyb2wtYmFja2dyb3VuZC1ob3ZlcjtcbiAgfVxufVxuXG4vLy8gQWRkcyBzdHlsZXMgZm9yIHRoZSBPcmJpdCBwcmV2aW91cyBidXR0b24uIFRoZXNlIHN0eWxlcyBhcmUgdXNlZCBvbiB0aGUgYC5vcmJpdC1wcmV2aW91c2AgY2xhc3MuXG5AbWl4aW4gb3JiaXQtcHJldmlvdXMge1xuICAjeyRnbG9iYWwtbGVmdH06IDA7XG59XG5cbi8vLyBBZGRzIHN0eWxlcyBmb3IgdGhlIE9yYml0IG5leHQgYnV0dG9uLiBUaGVzZSBzdHlsZXMgYXJlIHVzZWQgb24gdGhlIGAub3JiaXQtbmV4dGAgY2xhc3MuXG5AbWl4aW4gb3JiaXQtbmV4dCB7XG4gICN7JGdsb2JhbC1sZWZ0fTogYXV0bztcbiAgI3skZ2xvYmFsLXJpZ2h0fTogMDtcbn1cblxuLy8vIEFkZHMgc3R5bGVzIGZvciBhIGNvbnRhaW5lciBvZiBPcmJpdCBidWxsZXRzLiAvLy8gQWRkcyBzdHlsZXMgZm9yIHRoZSBPcmJpdCBwcmV2aW91cyBidXR0b24uIFRoZXNlIHN0eWxlcyBhcmUgdXNlZCBvbiB0aGUgYC5vcmJpdC1idWxsZXRzYCBjbGFzcy5cbkBtaXhpbiBvcmJpdC1idWxsZXRzIHtcbiAgQGluY2x1ZGUgZGlzYWJsZS1tb3VzZS1vdXRsaW5lO1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIG1hcmdpbi10b3A6ICRvcmJpdC1idWxsZXQtbWFyZ2luLXRvcDtcbiAgbWFyZ2luLWJvdHRvbTogJG9yYml0LWJ1bGxldC1tYXJnaW4tYm90dG9tO1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG5cbiAgYnV0dG9uIHtcbiAgICB3aWR0aDogJG9yYml0LWJ1bGxldC1kaWFtZXRlcjtcbiAgICBoZWlnaHQ6ICRvcmJpdC1idWxsZXQtZGlhbWV0ZXI7XG4gICAgbWFyZ2luOiAkb3JiaXQtYnVsbGV0LW1hcmdpbjtcblxuICAgIGJvcmRlci1yYWRpdXM6IDUwJTtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkb3JiaXQtYnVsbGV0LWJhY2tncm91bmQ7XG5cbiAgICAmOmhvdmVyIHtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6ICRvcmJpdC1idWxsZXQtYmFja2dyb3VuZC1hY3RpdmU7XG4gICAgfVxuXG4gICAgJi5pcy1hY3RpdmUge1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogJG9yYml0LWJ1bGxldC1iYWNrZ3JvdW5kLWFjdGl2ZTtcbiAgICB9XG4gIH1cbn1cblxuQG1peGluIGZvdW5kYXRpb24tb3JiaXQge1xuICAub3JiaXQge1xuICAgIEBpbmNsdWRlIG9yYml0LXdyYXBwZXI7XG4gIH1cblxuICAub3JiaXQtY29udGFpbmVyIHtcbiAgICBAaW5jbHVkZSBvcmJpdC1jb250YWluZXI7XG4gIH1cblxuICAub3JiaXQtc2xpZGUge1xuICAgIEBpbmNsdWRlIG9yYml0LXNsaWRlO1xuICB9XG5cbiAgLm9yYml0LWZpZ3VyZSB7XG4gICAgQGluY2x1ZGUgb3JiaXQtZmlndXJlO1xuICB9XG5cbiAgLm9yYml0LWltYWdlIHtcbiAgICBAaW5jbHVkZSBvcmJpdC1pbWFnZTtcbiAgfVxuXG4gIC5vcmJpdC1jYXB0aW9uIHtcbiAgICBAaW5jbHVkZSBvcmJpdC1jYXB0aW9uO1xuICB9XG5cbiAgJW9yYml0LWNvbnRyb2wge1xuICAgIEBpbmNsdWRlIG9yYml0LWNvbnRyb2w7XG4gIH1cblxuICAub3JiaXQtcHJldmlvdXMge1xuICAgIEBleHRlbmQgJW9yYml0LWNvbnRyb2w7XG4gICAgQGluY2x1ZGUgb3JiaXQtcHJldmlvdXM7XG4gIH1cblxuICAub3JiaXQtbmV4dCB7XG4gICAgQGV4dGVuZCAlb3JiaXQtY29udHJvbDtcbiAgICBAaW5jbHVkZSBvcmJpdC1uZXh0O1xuICB9XG5cbiAgLm9yYml0LWJ1bGxldHMge1xuICAgIEBpbmNsdWRlIG9yYml0LWJ1bGxldHM7XG4gIH1cbn1cbiIsIi8vIEZvdW5kYXRpb24gZm9yIFNpdGVzIGJ5IFpVUkJcbi8vIGZvdW5kYXRpb24uenVyYi5jb21cbi8vIExpY2Vuc2VkIHVuZGVyIE1JVCBPcGVuIFNvdXJjZVxuXG4vLy8vXG4vLy8gQGdyb3VwIHBhZ2luYXRpb25cbi8vLy9cblxuLy8vIEZvbnQgc2l6ZSBvZiBwYWdpbmF0aW9uIGl0ZW1zLlxuLy8vIEB0eXBlIE51bWJlclxuJHBhZ2luYXRpb24tZm9udC1zaXplOiByZW0tY2FsYygxNCkgIWRlZmF1bHQ7XG5cbi8vLyBEZWZhdWx0IGJvdHRvbSBtYXJnaW4gb2YgdGhlIHBhZ2luYXRpb24gb2JqZWN0LlxuLy8vIEB0eXBlIE51bWJlclxuJHBhZ2luYXRpb24tbWFyZ2luLWJvdHRvbTogJGdsb2JhbC1tYXJnaW4gIWRlZmF1bHQ7XG5cbi8vLyBUZXh0IGNvbG9yIG9mIHBhZ2luYXRpb24gaXRlbXMuXG4vLy8gQHR5cGUgQ29sb3JcbiRwYWdpbmF0aW9uLWl0ZW0tY29sb3I6ICRibGFjayAhZGVmYXVsdDtcblxuLy8vIFBhZGRpbmcgaW5zaWRlIG9mIHBhZ2luYXRpb24gaXRlbXMuXG4vLy8gQHR5cGUgTnVtYmVyXG4kcGFnaW5hdGlvbi1pdGVtLXBhZGRpbmc6IHJlbS1jYWxjKDMgMTApICFkZWZhdWx0O1xuXG4vLy8gUmlnaHQgbWFyZ2luIHRvIHNlcGFyYXRlIHBhZ2luYXRpb24gaXRlbXMuXG4vLy8gQHR5cGUgTnVtYmVyXG4kcGFnaW5hdGlvbi1pdGVtLXNwYWNpbmc6IHJlbS1jYWxjKDEpICFkZWZhdWx0O1xuXG4vLy8gRGVmYXVsdCByYWRpdXMgZm9yIHBhZ2luYXRpb24gaXRlbXMuXG4vLy8gQHR5cGUgTnVtYmVyXG4kcGFnaW5hdGlvbi1yYWRpdXM6ICRnbG9iYWwtcmFkaXVzICFkZWZhdWx0O1xuXG4vLy8gQmFja2dyb3VuZCBjb2xvciBvZiBwYWdpbmF0aW9uIGl0ZW1zIG9uIGhvdmVyLlxuLy8vIEB0eXBlIENvbG9yXG4kcGFnaW5hdGlvbi1pdGVtLWJhY2tncm91bmQtaG92ZXI6ICRsaWdodC1ncmF5ICFkZWZhdWx0O1xuXG4vLy8gQmFja2dyb3VuZCBjb2xvciBvZiBwYWdpbmF0aW9uIGl0ZW0gZm9yIHRoZSBjdXJyZW50IHBhZ2UuXG4vLy8gQHR5cGUgQ29sb3JcbiRwYWdpbmF0aW9uLWl0ZW0tYmFja2dyb3VuZC1jdXJyZW50OiAkcHJpbWFyeS1jb2xvciAhZGVmYXVsdDtcblxuLy8vIFRleHQgY29sb3Igb2YgdGhlIHBhZ2luYXRpb24gaXRlbSBmb3IgdGhlIGN1cnJlbnQgcGFnZS5cbi8vLyBAdHlwZSBDb2xvclxuJHBhZ2luYXRpb24taXRlbS1jb2xvci1jdXJyZW50OiAkd2hpdGUgIWRlZmF1bHQ7XG5cbi8vLyBUZXh0IGNvbG9yIG9mIGEgZGlzYWJsZWQgcGFnaW5hdGlvbiBpdGVtLlxuLy8vIEB0eXBlIENvbG9yXG4kcGFnaW5hdGlvbi1pdGVtLWNvbG9yLWRpc2FibGVkOiAkbWVkaXVtLWdyYXkgIWRlZmF1bHQ7XG5cbi8vLyBDb2xvciBvZiB0aGUgZWxsaXBzaXMgaW4gYSBwYWdpbmF0aW9uIG1lbnUuXG4vLy8gQHR5cGUgQ29sb3JcbiRwYWdpbmF0aW9uLWVsbGlwc2lzLWNvbG9yOiAkYmxhY2sgIWRlZmF1bHQ7XG5cbi8vLyBJZiBgZmFsc2VgLCBkb24ndCBkaXNwbGF5IHBhZ2UgbnVtYmVyIGxpbmtzIG9uIG1vYmlsZSwgb25seSBuZXh0L3ByZXZpb3VzIGxpbmtzXG4vLy8gYW5kIG9wdGlvbmFsbHkgY3VycmVudCBwYWdlIG51bWJlci5cbi8vLyBAdHlwZSBCb29sZWFuXG4kcGFnaW5hdGlvbi1tb2JpbGUtaXRlbXM6IGZhbHNlICFkZWZhdWx0O1xuXG4vLy8gSWYgYHRydWVgLCBkaXNwbGF5IHRoZSBjdXJyZW50IHBhZ2UgbnVtYmVyIG9uIG1vYmlsZSBldmVuIGlmIGAkcGFnaW5hdGlvbi1tb2JpbGUtaXRlbXNgIGlzIHNldCB0byBgZmFsc2VgLlxuLy8vIFRoaXMgcGFyYW1ldGVyIHdpbGwgb25seSBvdmVycmlkZSB0aGUgdmlzaWJpbGl0eSBzZXR0aW5nIG9mIHRoZSBjdXJyZW50IGl0ZW0gZm9yIGAkcGFnaW5hdGlvbi1tb2JpbGUtaXRlbXM6IGZhbHNlO2AsXG4vLy8gaXQgd2lsbCBub3QgYWZmZWN0IHRoZSBjdXJyZW50IHBhZ2UgbnVtYmVyIHZpc2liaWxpdHkgd2hlbiBgJHBhZ2luYXRpb24tbW9iaWxlLWl0ZW1zYCBpcyBzZXQgdG8gYHRydWVgLlxuLy8vIEB0eXBlIEJvb2xlYW5cbiRwYWdpbmF0aW9uLW1vYmlsZS1jdXJyZW50LWl0ZW06IGZhbHNlICFkZWZhdWx0O1xuXG4vLy8gSWYgYHRydWVgLCBhcnJvd3MgYXJlIGFkZGVkIHRvIHRoZSBuZXh0IGFuZCBwcmV2aW91cyBsaW5rcyBvZiBwYWdpbmF0aW9uLlxuLy8vIEB0eXBlIEJvb2xlYW5cbiRwYWdpbmF0aW9uLWFycm93czogdHJ1ZSAhZGVmYXVsdDtcblxuLy8vIEFkZHMgc3R5bGVzIGZvciBhIHBhZ2luYXRpb24gY29udGFpbmVyLiBBcHBseSB0aGlzIHRvIGEgYDx1bD5gLlxuQG1peGluIHBhZ2luYXRpb24tY29udGFpbmVyIChcbiAgJG1hcmdpbi1ib3R0b206ICRwYWdpbmF0aW9uLW1hcmdpbi1ib3R0b20sXG4gICRmb250LXNpemU6ICRwYWdpbmF0aW9uLWZvbnQtc2l6ZSxcbiAgJHNwYWNpbmc6ICRwYWdpbmF0aW9uLWl0ZW0tc3BhY2luZyxcbiAgJHJhZGl1czogJHBhZ2luYXRpb24tcmFkaXVzLFxuICAkY29sb3I6ICRwYWdpbmF0aW9uLWl0ZW0tY29sb3IsXG4gICRwYWRkaW5nOiAkcGFnaW5hdGlvbi1pdGVtLXBhZGRpbmcsXG4gICRiYWNrZ3JvdW5kLWhvdmVyOiAkcGFnaW5hdGlvbi1pdGVtLWJhY2tncm91bmQtaG92ZXJcbikge1xuICBAaW5jbHVkZSBjbGVhcmZpeDtcbiAgbWFyZ2luLSN7JGdsb2JhbC1sZWZ0fTogMDtcbiAgbWFyZ2luLWJvdHRvbTogJG1hcmdpbi1ib3R0b207XG5cbiAgLy8gTGlzdCBpdGVtXG4gIGxpIHtcbiAgICBtYXJnaW4tI3skZ2xvYmFsLXJpZ2h0fTogJHNwYWNpbmc7XG4gICAgYm9yZGVyLXJhZGl1czogJHJhZGl1cztcbiAgICBmb250LXNpemU6ICRmb250LXNpemU7XG5cbiAgICBAaWYgJHBhZ2luYXRpb24tbW9iaWxlLWl0ZW1zIHtcbiAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICB9XG4gICAgQGVsc2Uge1xuICAgICAgZGlzcGxheTogbm9uZTtcblxuICAgICAgJjpsYXN0LWNoaWxkLFxuICAgICAgJjpmaXJzdC1jaGlsZCB7XG4gICAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICAgIH1cblxuICAgICAgQGlmICRwYWdpbmF0aW9uLW1vYmlsZS1jdXJyZW50LWl0ZW0ge1xuICAgICAgICAmLmN1cnJlbnQge1xuICAgICAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICAgICAgfVxuICAgICAgfVxuXG4gICAgICBAaW5jbHVkZSBicmVha3BvaW50KG1lZGl1bSkge1xuICAgICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgICB9XG4gICAgfVxuICB9XG5cbiAgLy8gUGFnZSBsaW5rc1xuICBhLFxuICBidXR0b24ge1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIHBhZGRpbmc6ICRwYWRkaW5nO1xuICAgIGJvcmRlci1yYWRpdXM6ICRyYWRpdXM7XG4gICAgY29sb3I6ICRjb2xvcjtcblxuICAgICY6aG92ZXIge1xuICAgICAgYmFja2dyb3VuZDogJGJhY2tncm91bmQtaG92ZXI7XG4gICAgfVxuICB9XG59XG5cbi8vLyBBZGRzIHN0eWxlcyBmb3IgdGhlIGN1cnJlbnQgcGFnaW5hdGlvbiBpdGVtLiBBcHBseSB0aGlzIHRvIGFuIGA8YT5gLlxuQG1peGluIHBhZ2luYXRpb24taXRlbS1jdXJyZW50IChcbiAgJHBhZGRpbmc6ICRwYWdpbmF0aW9uLWl0ZW0tcGFkZGluZyxcbiAgJGJhY2tncm91bmQtY3VycmVudDogJHBhZ2luYXRpb24taXRlbS1iYWNrZ3JvdW5kLWN1cnJlbnQsXG4gICRjb2xvci1jdXJyZW50OiAkcGFnaW5hdGlvbi1pdGVtLWNvbG9yLWN1cnJlbnRcbikge1xuICBwYWRkaW5nOiAkcGFkZGluZztcbiAgYmFja2dyb3VuZDogJGJhY2tncm91bmQtY3VycmVudDtcbiAgY29sb3I6ICRjb2xvci1jdXJyZW50O1xuICBjdXJzb3I6IGRlZmF1bHQ7XG59XG5cbi8vLyBBZGRzIHN0eWxlcyBmb3IgYSBkaXNhYmxlZCBwYWdpbmF0aW9uIGl0ZW0uIEFwcGx5IHRoaXMgdG8gYW4gYDxhPmAuXG5AbWl4aW4gcGFnaW5hdGlvbi1pdGVtLWRpc2FibGVkIChcbiAgJHBhZGRpbmc6ICRwYWdpbmF0aW9uLWl0ZW0tcGFkZGluZyxcbiAgJGNvbG9yOiAkcGFnaW5hdGlvbi1pdGVtLWNvbG9yLWRpc2FibGVkXG4pIHtcbiAgcGFkZGluZzogJHBhZGRpbmc7XG4gIGNvbG9yOiAkY29sb3I7XG4gIGN1cnNvcjogbm90LWFsbG93ZWQ7XG5cbiAgJjpob3ZlciB7XG4gICAgYmFja2dyb3VuZDogdHJhbnNwYXJlbnQ7XG4gIH1cbn1cblxuLy8vIEFkZHMgc3R5bGVzIGZvciBhbiBlbGxpcHNpcyBmb3IgdXNlIGluIGEgcGFnaW5hdGlvbiBsaXN0LlxuQG1peGluIHBhZ2luYXRpb24tZWxsaXBzaXMgKFxuICAkcGFkZGluZzogJHBhZ2luYXRpb24taXRlbS1wYWRkaW5nLFxuICAkY29sb3I6ICRwYWdpbmF0aW9uLWVsbGlwc2lzLWNvbG9yXG4pIHtcbiAgcGFkZGluZzogJHBhZGRpbmc7XG4gIGNvbnRlbnQ6ICdcXDIwMjYnO1xuICBjb2xvcjogJGNvbG9yO1xufVxuXG5AbWl4aW4gZm91bmRhdGlvbi1wYWdpbmF0aW9uIHtcbiAgLnBhZ2luYXRpb24ge1xuICAgIEBpbmNsdWRlIHBhZ2luYXRpb24tY29udGFpbmVyO1xuXG4gICAgLmN1cnJlbnQge1xuICAgICAgQGluY2x1ZGUgcGFnaW5hdGlvbi1pdGVtLWN1cnJlbnQ7XG4gICAgfVxuXG4gICAgLmRpc2FibGVkIHtcbiAgICAgIEBpbmNsdWRlIHBhZ2luYXRpb24taXRlbS1kaXNhYmxlZDtcbiAgICB9XG5cbiAgICAuZWxsaXBzaXM6OmFmdGVyIHtcbiAgICAgIEBpbmNsdWRlIHBhZ2luYXRpb24tZWxsaXBzaXM7XG4gICAgfVxuICB9XG5cbiAgQGlmICRwYWdpbmF0aW9uLWFycm93cyB7XG4gICAgLnBhZ2luYXRpb24tcHJldmlvdXMgYTo6YmVmb3JlLFxuICAgIC5wYWdpbmF0aW9uLXByZXZpb3VzLmRpc2FibGVkOjpiZWZvcmUge1xuICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgICAgbWFyZ2luLSN7JGdsb2JhbC1yaWdodH06IDAuNXJlbTtcbiAgICAgIGNvbnRlbnQ6ICdcXDAwYWInO1xuICAgIH1cblxuICAgIC5wYWdpbmF0aW9uLW5leHQgYTo6YWZ0ZXIsXG4gICAgLnBhZ2luYXRpb24tbmV4dC5kaXNhYmxlZDo6YWZ0ZXIge1xuICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgICAgbWFyZ2luLSN7JGdsb2JhbC1sZWZ0fTogMC41cmVtO1xuICAgICAgY29udGVudDogJ1xcMDBiYic7XG4gICAgfVxuICB9XG59XG4iLCIvLyBGb3VuZGF0aW9uIGZvciBTaXRlcyBieSBaVVJCXG4vLyBmb3VuZGF0aW9uLnp1cmIuY29tXG4vLyBMaWNlbnNlZCB1bmRlciBNSVQgT3BlbiBTb3VyY2VcblxuLy8vIEFkZHMgc3R5bGVzIGZvciBhIHByb2dyZXNzIGJhciBjb250YWluZXIuXG5AbWl4aW4gcHJvZ3Jlc3MtY29udGFpbmVyIHtcbiAgaGVpZ2h0OiAkcHJvZ3Jlc3MtaGVpZ2h0O1xuICBtYXJnaW4tYm90dG9tOiAkcHJvZ3Jlc3MtbWFyZ2luLWJvdHRvbTtcbiAgYm9yZGVyLXJhZGl1czogJHByb2dyZXNzLXJhZGl1cztcbiAgYmFja2dyb3VuZC1jb2xvcjogJHByb2dyZXNzLWJhY2tncm91bmQ7XG59XG5cbi8vLyBBZGRzIHN0eWxlcyBmb3IgdGhlIGlubmVyIG1ldGVyIG9mIGEgcHJvZ3Jlc3MgYmFyLlxuQG1peGluIHByb2dyZXNzLW1ldGVyIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBkaXNwbGF5OiBibG9jaztcbiAgd2lkdGg6IDAlO1xuICBoZWlnaHQ6IDEwMCU7XG4gIGJhY2tncm91bmQtY29sb3I6ICRwcm9ncmVzcy1tZXRlci1iYWNrZ3JvdW5kO1xuXG4gIEBpZiBoYXMtdmFsdWUoJHByb2dyZXNzLXJhZGl1cykge1xuICAgIGJvcmRlci1yYWRpdXM6ICRnbG9iYWwtcmFkaXVzO1xuICB9XG59XG5cbi8vLyBBZGRzIHN0eWxlcyBmb3IgdGV4dCBpbiB0aGUgcHJvZ3Jlc3MgbWV0ZXIuXG5AbWl4aW4gcHJvZ3Jlc3MtbWV0ZXItdGV4dCB7XG4gIEBpbmNsdWRlIGFic29sdXRlLWNlbnRlcjtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICBtYXJnaW46IDA7XG4gIGZvbnQtc2l6ZTogMC43NXJlbTtcbiAgZm9udC13ZWlnaHQ6IGJvbGQ7XG4gIGNvbG9yOiAkd2hpdGU7XG4gIHdoaXRlLXNwYWNlOiBub3dyYXA7XG5cbiAgQGlmIGhhcy12YWx1ZSgkcHJvZ3Jlc3MtcmFkaXVzKSB7XG4gICAgYm9yZGVyLXJhZGl1czogJHByb2dyZXNzLXJhZGl1cztcbiAgfVxufVxuXG5AbWl4aW4gZm91bmRhdGlvbi1wcm9ncmVzcy1iYXIge1xuICAvLyBQcm9ncmVzcyBiYXJcbiAgLnByb2dyZXNzIHtcbiAgICBAaW5jbHVkZSBwcm9ncmVzcy1jb250YWluZXI7XG5cbiAgICBAZWFjaCAkbmFtZSwgJGNvbG9yIGluICRmb3VuZGF0aW9uLXBhbGV0dGUge1xuICAgICAgJi4jeyRuYW1lfSB7XG4gICAgICAgIC5wcm9ncmVzcy1tZXRlciB7XG4gICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJGNvbG9yO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICB9XG5cbiAgLy8gSW5uZXIgbWV0ZXJcbiAgLnByb2dyZXNzLW1ldGVyIHtcbiAgICBAaW5jbHVkZSBwcm9ncmVzcy1tZXRlcjtcbiAgfVxuXG4gIC8vIElubmVyIG1ldGVyIHRleHRcbiAgLnByb2dyZXNzLW1ldGVyLXRleHQge1xuICAgIEBpbmNsdWRlIHByb2dyZXNzLW1ldGVyLXRleHQ7XG4gIH1cbn1cbiIsIi8vIEZvdW5kYXRpb24gZm9yIFNpdGVzIGJ5IFpVUkJcbi8vIGZvdW5kYXRpb24uenVyYi5jb21cbi8vIExpY2Vuc2VkIHVuZGVyIE1JVCBPcGVuIFNvdXJjZVxuXG4vLyBbVE9ET10gQ2hlY2sgaG93IHBsdWdpbiBjb25maXJtcyBkaXNhYmxlZCBvciB2ZXJ0aWNhbCBzdGF0dXNcbi8vIFtUT0RPXSBDaGVjayBpZiB0cmFuc2l0aW9uOiBhbGw7IGlzIG5lY2Vzc2FyeVxuXG4vLy8vXG4vLy8gQGdyb3VwIHNsaWRlclxuLy8vL1xuXG4vLy8gRGVmYXVsdCBzbGlkZXIgd2lkdGggb2YgYSB2ZXJ0aWNhbCBzbGlkZXIuIChEb2Vzbid0IGFwcGx5IHRvIHRoZSBuYXRpdmUgc2xpZGVyLilcbi8vLyBAdHlwZSBOdW1iZXJcbiRzbGlkZXItd2lkdGgtdmVydGljYWw6IDAuNXJlbSAhZGVmYXVsdDtcblxuLy8vIFRyYW5zaXRpb24gcHJvcGVydGllcyB0byBhcHBseSB0byB0aGUgc2xpZGVyIGhhbmRsZSBhbmQgZmlsbC4gKERvZXNuJ3QgYXBwbHkgdG8gdGhlIG5hdGl2ZSBzbGlkZXIuKVxuLy8vIEB0eXBlIFRyYW5zaXRpb25cbiRzbGlkZXItdHJhbnNpdGlvbjogYWxsIDAuMnMgZWFzZS1pbi1vdXQgIWRlZmF1bHQ7XG5cbi8vLyBBZGRzIHRoZSBnZW5lcmFsIHN0eWxlcyBmb3Igc2xpZGVycy5cbkBtaXhpbiBzbGlkZXItY29udGFpbmVyIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBoZWlnaHQ6ICRzbGlkZXItaGVpZ2h0O1xuICBtYXJnaW4tdG9wOiAxLjI1cmVtO1xuICBtYXJnaW4tYm90dG9tOiAyLjI1cmVtO1xuXG4gIGJhY2tncm91bmQtY29sb3I6ICRzbGlkZXItYmFja2dyb3VuZDtcbiAgY3Vyc29yOiBwb2ludGVyO1xuICB1c2VyLXNlbGVjdDogbm9uZTtcbiAgdG91Y2gtYWN0aW9uOiBub25lO1xufVxuXG4vLy8gQWRkcyB0aGUgZ2VuZXJhbCBzdHlsZXMgZm9yIGFjdGl2ZSBmaWxsIGZvciBzbGlkZXJzLlxuQG1peGluIHNsaWRlci1maWxsIHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB0b3A6IDA7XG4gIGxlZnQ6IDA7XG5cbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICBtYXgtd2lkdGg6IDEwMCU7XG4gIGhlaWdodDogJHNsaWRlci1oZWlnaHQ7XG5cbiAgYmFja2dyb3VuZC1jb2xvcjogJHNsaWRlci1maWxsLWJhY2tncm91bmQ7XG4gIHRyYW5zaXRpb246ICRzbGlkZXItdHJhbnNpdGlvbjtcblxuICAmLmlzLWRyYWdnaW5nIHtcbiAgICB0cmFuc2l0aW9uOiBhbGwgMHMgbGluZWFyO1xuICB9XG59XG5cbi8vLyBBZGRzIHRoZSBnZW5lcmFsIHN0eWxlcyBmb3IgdGhlIHNsaWRlciBoYW5kbGVzLlxuQG1peGluIHNsaWRlci1oYW5kbGUge1xuICBAaW5jbHVkZSBkaXNhYmxlLW1vdXNlLW91dGxpbmU7XG4gIEBpbmNsdWRlIHZlcnRpY2FsLWNlbnRlcjtcbiAgbGVmdDogMDtcbiAgei1pbmRleDogMTtcblxuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIHdpZHRoOiAkc2xpZGVyLWhhbmRsZS13aWR0aDtcbiAgaGVpZ2h0OiAkc2xpZGVyLWhhbmRsZS1oZWlnaHQ7XG5cbiAgYm9yZGVyLXJhZGl1czogJHNsaWRlci1yYWRpdXM7XG4gIGJhY2tncm91bmQtY29sb3I6ICRzbGlkZXItaGFuZGxlLWJhY2tncm91bmQ7XG4gIHRyYW5zaXRpb246ICRzbGlkZXItdHJhbnNpdGlvbjtcbiAgdG91Y2gtYWN0aW9uOiBtYW5pcHVsYXRpb247XG5cbiAgJjpob3ZlciB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogc2NhbGUtY29sb3IoJHNsaWRlci1oYW5kbGUtYmFja2dyb3VuZCwgJGxpZ2h0bmVzczogLTE1JSk7XG4gIH1cblxuICAmLmlzLWRyYWdnaW5nIHtcbiAgICB0cmFuc2l0aW9uOiBhbGwgMHMgbGluZWFyO1xuICB9XG59XG5cbkBtaXhpbiBzbGlkZXItZGlzYWJsZWQge1xuICBvcGFjaXR5OiAkc2xpZGVyLW9wYWNpdHktZGlzYWJsZWQ7XG4gIGN1cnNvcjogbm90LWFsbG93ZWQ7XG59XG5cbkBtaXhpbiBzbGlkZXItdmVydGljYWwge1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIHdpZHRoOiAkc2xpZGVyLXdpZHRoLXZlcnRpY2FsO1xuICBoZWlnaHQ6IDEyLjVyZW07XG4gIG1hcmdpbjogMCAxLjI1cmVtO1xuICB0cmFuc2Zvcm06IHNjYWxlKDEsIC0xKTtcblxuICAuc2xpZGVyLWZpbGwge1xuICAgIHRvcDogMDtcbiAgICB3aWR0aDogJHNsaWRlci13aWR0aC12ZXJ0aWNhbDtcbiAgICBtYXgtaGVpZ2h0OiAxMDAlO1xuICB9XG5cbiAgLnNsaWRlci1oYW5kbGUge1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICB0b3A6IDA7XG4gICAgbGVmdDogNTAlO1xuICAgIHdpZHRoOiAkc2xpZGVyLWhhbmRsZS1oZWlnaHQ7XG4gICAgaGVpZ2h0OiAkc2xpZGVyLWhhbmRsZS13aWR0aDtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoLTUwJSk7XG4gIH1cbn1cblxuQG1peGluIGZvdW5kYXRpb24tc2xpZGVyIHtcbiAgLy8gQ29udGFpbmVyXG4gIC5zbGlkZXIge1xuICAgIEBpbmNsdWRlIHNsaWRlci1jb250YWluZXI7XG4gIH1cblxuICAvLyBGaWxsIGFyZWFcbiAgLnNsaWRlci1maWxsIHtcbiAgICBAaW5jbHVkZSBzbGlkZXItZmlsbDtcbiAgfVxuXG4gIC8vIERyYWdnYWJsZSBoYW5kbGVcbiAgLnNsaWRlci1oYW5kbGUge1xuICAgIEBpbmNsdWRlIHNsaWRlci1oYW5kbGU7XG4gIH1cblxuICAvLyBEaXNhYmxlZCBzdGF0ZVxuICAuc2xpZGVyLmRpc2FibGVkLFxuICAuc2xpZGVyW2Rpc2FibGVkXSB7XG4gICAgQGluY2x1ZGUgc2xpZGVyLWRpc2FibGVkO1xuICB9XG5cbiAgLy8gVmVydGljYWwgc2xpZGVyXG4gIC5zbGlkZXIudmVydGljYWwge1xuICAgIEBpbmNsdWRlIHNsaWRlci12ZXJ0aWNhbDtcbiAgfVxuXG4gIC8vIFJUTCBzdXBwb3J0XG4gIEBpZiAkZ2xvYmFsLXRleHQtZGlyZWN0aW9uID09IHJ0bCB7XG4gICAgLnNsaWRlcjpub3QoLnZlcnRpY2FsKSB7XG4gICAgICB0cmFuc2Zvcm06IHNjYWxlKC0xLCAxKTtcbiAgICB9XG4gIH1cbn1cbiIsIi8vIEZvdW5kYXRpb24gZm9yIFNpdGVzIGJ5IFpVUkJcbi8vIGZvdW5kYXRpb24uenVyYi5jb21cbi8vIExpY2Vuc2VkIHVuZGVyIE1JVCBPcGVuIFNvdXJjZVxuXG5AbWl4aW4gZm91bmRhdGlvbi1zdGlja3kge1xuICAuc3RpY2t5LWNvbnRhaW5lciB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICB9XG5cbiAgLnN0aWNreSB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIHotaW5kZXg6IDA7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLCAwLCAwKTtcbiAgfVxuXG4gIC5zdGlja3kuaXMtc3R1Y2sge1xuICAgIHBvc2l0aW9uOiBmaXhlZDtcbiAgICB6LWluZGV4OiA1O1xuICAgIHdpZHRoOiAxMDAlO1xuXG4gICAgJi5pcy1hdC10b3Age1xuICAgICAgdG9wOiAwO1xuICAgIH1cblxuICAgICYuaXMtYXQtYm90dG9tIHtcbiAgICAgIGJvdHRvbTogMDtcbiAgICB9XG4gIH1cblxuICAuc3RpY2t5LmlzLWFuY2hvcmVkIHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgcmlnaHQ6IGF1dG87XG4gICAgbGVmdDogYXV0bztcblxuICAgICYuaXMtYXQtYm90dG9tIHtcbiAgICAgIGJvdHRvbTogMDtcbiAgICB9XG4gIH1cbn1cbiIsIkBpbXBvcnQgJ3d3d3Jvb3Qvc3JjL2Nzcy90aGlyZC1wYXJ0eS9mb3VuZGF0aW9uX2NvbXBvbmVudHMvZm91bmRhdGlvbi1zaXRlcy9zY3NzL2ZvdW5kYXRpb24nO1xuQGltcG9ydCAnd3d3cm9vdC9zcmMvY3NzL3RoaXJkLXBhcnR5L2ZvdW5kYXRpb25fY29tcG9uZW50cy9tb3Rpb24tdWkvc3JjL21vdGlvbi11aSc7XG4vL2dsb2JhbCBpbmNsdWRlc1xuQGluY2x1ZGUgZm91bmRhdGlvbi1nbG9iYWwtc3R5bGVzO1xuQGluY2x1ZGUgZm91bmRhdGlvbi1ncmlkO1xuLy9AaW5jbHVkZSBmb3VuZGF0aW9uLWZsZXgtZ3JpZDtcbi8vQGluY2x1ZGUgZm91bmRhdGlvbi14eS1ncmlkLWNsYXNzZXM7XG5AaW5jbHVkZSBmb3VuZGF0aW9uLXR5cG9ncmFwaHk7XG5AaW5jbHVkZSBmb3VuZGF0aW9uLWJ1dHRvbjtcbkBpbmNsdWRlIGZvdW5kYXRpb24tZm9ybXM7XG4vL0BpbmNsdWRlIGZvdW5kYXRpb24tcmFuZ2UtaW5wdXQ7XG5AaW5jbHVkZSBmb3VuZGF0aW9uLWFjY29yZGlvbjtcbkBpbmNsdWRlIGZvdW5kYXRpb24tYWNjb3JkaW9uLW1lbnU7XG5AaW5jbHVkZSBmb3VuZGF0aW9uLWJhZGdlO1xuQGluY2x1ZGUgZm91bmRhdGlvbi1icmVhZGNydW1icztcbkBpbmNsdWRlIGZvdW5kYXRpb24tYnV0dG9uLWdyb3VwO1xuQGluY2x1ZGUgZm91bmRhdGlvbi1jYWxsb3V0O1xuQGluY2x1ZGUgZm91bmRhdGlvbi1jYXJkO1xuQGluY2x1ZGUgZm91bmRhdGlvbi1jbG9zZS1idXR0b247XG5AaW5jbHVkZSBmb3VuZGF0aW9uLW1lbnU7XG5AaW5jbHVkZSBmb3VuZGF0aW9uLW1lbnUtaWNvbjtcbkBpbmNsdWRlIGZvdW5kYXRpb24tZHJpbGxkb3duLW1lbnU7XG5AaW5jbHVkZSBmb3VuZGF0aW9uLWRyb3Bkb3duO1xuQGluY2x1ZGUgZm91bmRhdGlvbi1kcm9wZG93bi1tZW51O1xuQGluY2x1ZGUgZm91bmRhdGlvbi1yZXNwb25zaXZlLWVtYmVkO1xuQGluY2x1ZGUgZm91bmRhdGlvbi1sYWJlbDtcbkBpbmNsdWRlIGZvdW5kYXRpb24tbWVkaWEtb2JqZWN0O1xuQGluY2x1ZGUgZm91bmRhdGlvbi1vZmYtY2FudmFzO1xuQGluY2x1ZGUgZm91bmRhdGlvbi1vcmJpdDtcbkBpbmNsdWRlIGZvdW5kYXRpb24tcGFnaW5hdGlvbjtcbkBpbmNsdWRlIGZvdW5kYXRpb24tcHJvZ3Jlc3MtYmFyO1xuLy9AaW5jbHVkZSBmb3VuZGF0aW9uLXByb2dyZXNzLWVsZW1lbnQ7XG4vL0BpbmNsdWRlIGZvdW5kYXRpb24tcHJvZ3Jlc3MtZWxlbWVudDtcbi8vQGluY2x1ZGUgZm91bmRhdGlvbi1tZXRlci1lbGVtZW50O1xuQGluY2x1ZGUgZm91bmRhdGlvbi1zbGlkZXI7XG5AaW5jbHVkZSBmb3VuZGF0aW9uLXN0aWNreTtcbkBpbmNsdWRlIGZvdW5kYXRpb24tcmV2ZWFsO1xuLypAaW5jbHVkZSBmb3VuZGF0aW9uLXN3aXRjaDsqL1xuQGluY2x1ZGUgZm91bmRhdGlvbi10YWJsZTtcbkBpbmNsdWRlIGZvdW5kYXRpb24tdGFicztcbkBpbmNsdWRlIGZvdW5kYXRpb24tdGh1bWJuYWlsO1xuQGluY2x1ZGUgZm91bmRhdGlvbi10aXRsZS1iYXI7XG5AaW5jbHVkZSBmb3VuZGF0aW9uLXRvb2x0aXA7XG5AaW5jbHVkZSBmb3VuZGF0aW9uLXRvcC1iYXI7XG5AaW5jbHVkZSBmb3VuZGF0aW9uLXZpc2liaWxpdHktY2xhc3NlcztcbkBpbmNsdWRlIGZvdW5kYXRpb24tZmxvYXQtY2xhc3Nlcztcbi8vQGluY2x1ZGUgZm91bmRhdGlvbi1mbGV4LWNsYXNzZXM7XG4vL0BpbmNsdWRlIGZvdW5kYXRpb24tcHJvdG90eXBlLWNsYXNzZXM7XG5AaW5jbHVkZSBtb3Rpb24tdWktdHJhbnNpdGlvbnM7XG5AaW5jbHVkZSBtb3Rpb24tdWktYW5pbWF0aW9ucztcbi8vUmFwaWQgU0NTU1xuLy9CYXNlIFN0eWxlc1xuQGltcG9ydCAnYmFzZS9zcHJpdGUnO1xuQGltcG9ydCAnYmFzZS9zdHlsZUZpeGVzJztcbkBpbXBvcnQgJ2Jhc2Uvb3ZlcmxheSc7XG5AaW1wb3J0ICdiYXNlL3BvcHVwJztcbkBpbXBvcnQgJ2Jhc2Uvb2xkQ29sb3JDbGFzc2VzJztcbkBpbXBvcnQgJ2Jhc2UvYnJlYWRjcnVtYnMnO1xuLypAaW5jbHVkZSBzcHJpdGVzKCRzcHJpdGVzaGVldC1zcHJpdGVzKTsqL1xuLy9Nb2R1bGVzIC0gcmV1c2FibGUgc3R5bGVzIG5vbiBkZXBlbmRhbnQgb2YgY29udGFpbmVyXG5AaW1wb3J0ICdtb2R1bGUvYnJlYWRjcnVtYic7XG5AaW1wb3J0ICdtb2R1bGUvbWVudXMnO1xuQGltcG9ydCAnbW9kdWxlL2dsb2JhbEJ1aWxkaW5nQmxvY2tzJzsgXG5AaW1wb3J0ICdtb2R1bGUvZm9ybUVsZW1lbnRzJztcbkBpbXBvcnQgJ21vZHVsZS9tYWluSW1hZ2UnO1xuQGltcG9ydCAnbW9kdWxlL3Jldmlld1N0YXJzJztcbkBpbXBvcnQgJ21vZHVsZS9wcmljZVRhYmxlJztcbkBpbXBvcnQgJ21vZHVsZS9xdWlja0F0dHJpYnV0ZXMnO1xuQGltcG9ydCAnbW9kdWxlL3Byb2R1Y3RXaWRnZXQnO1xuQGltcG9ydCAnbW9kdWxlL3Byb2R1Y3QtdGlsZSc7XG5AaW1wb3J0ICdtb2R1bGUvcHJvZHVjdFJvd3MnO1xuQGltcG9ydCAnbW9kdWxlL2F0dHJpYnV0ZUZpbHRlcnMnO1xuQGltcG9ydCAnbW9kdWxlL3NlYXJjaFBhZ2luYXRpb24nO1xuQGltcG9ydCAnbW9kdWxlL3NlYXJjaFRpZXJzJztcbkBpbXBvcnQgJ21vZHVsZS9zZWFyY2hBdHRyaWJ1dGVzVGFibGUnO1xuQGltcG9ydCAnbW9kdWxlL2Jhc2tldEl0ZW1zJztcbkBpbXBvcnQgJ21vZHVsZS9hZGRyZXNzZXNCbG9jayc7XG5AaW1wb3J0ICdtb2R1bGUvbm90aWZpY2F0aW9uc1BhbmVsJztcbkBpbXBvcnQgJ21vZHVsZS9yZWNlbnRPcmRlcnMnO1xuQGltcG9ydCAnbW9kdWxlL3NsaWRlcic7XG4vL0xheW91dCAtIHN0eWxlcyBzcGVjaWZpYyBmb3IgZWFjaCBzZWN0aW9uL3BhZ2Ugbm90IHVzZWQgYW55d2hlcmUgZWxzZVxuQGltcG9ydCAnbGF5b3V0L2NoYW5nZVNpdGVQb3B1cCc7XG5AaW1wb3J0ICdsYXlvdXQvYWRkZWRUb0Jhc2tldFBvcHVwJztcbkBpbXBvcnQgJ2xheW91dC9jdXJyZW5jeVBvcHVwJztcbkBpbXBvcnQgJ2xheW91dC9jb29raWUtcG9saWN5JztcbkBpbXBvcnQgJ2xheW91dC9tYWluTmF2JztcbkBpbXBvcnQgJ2xheW91dC9mb290ZXJOYXYnO1xuQGltcG9ydCAnbGF5b3V0L2hlYWRlcic7XG5AaW1wb3J0ICdsYXlvdXQvbGl2ZS1jaGF0JztcbkBpbXBvcnQgJ2xheW91dC9zZWFyY2hTdWdnZXN0aW9ucyc7XG5AaW1wb3J0ICdsYXlvdXQvbXlBY2NvdW50JztcbkBpbXBvcnQgJ2xheW91dC9nbG9iYWxBZG1pbic7XG5AaW1wb3J0ICdsYXlvdXQvb3JkZXJzJztcbkBpbXBvcnQgJ2xheW91dC9fcHJvbW90aW9ucyc7XG5AaW1wb3J0ICdsYXlvdXQvc2t1JztcbkBpbXBvcnQgJ2xheW91dC9zdG9jay1tZXNzYWdlLWluZm8nO1xuQGltcG9ydCAnbGF5b3V0L3RpZXInO1xuQGltcG9ydCAnbGF5b3V0L3Rhc2tMaXN0JztcbkBpbXBvcnQgJ2xheW91dC9zZWFyY2gnO1xuQGltcG9ydCAnbGF5b3V0L2NvbXBhcmUnO1xuQGltcG9ydCAnbGF5b3V0L3NpZ25Jbic7XG5AaW1wb3J0ICdsYXlvdXQvYnJhbmRzJztcbkBpbXBvcnQgJ2xheW91dC9xdW90ZVBhZ2UnO1xuQGltcG9ydCAnbGF5b3V0L2Jhc2tldCc7XG5AaW1wb3J0ICdsYXlvdXQvY3V0UGFzdGUnO1xuQGltcG9ydCAnbGF5b3V0L2J1eUFyZWEnO1xuQGltcG9ydCAnbGF5b3V0L3JldHVybnMtZXJyb3JzJztcblxuOi1tcy1pbnB1dC1wbGFjZWhvbGRlciB7XG4gICAgY29sb3I6ICNjY2MgIWltcG9ydGFudDtcbiAgICBmb250LXdlaWdodDogNDAwICFpbXBvcnRhbnQ7XG59XG5cbnNlbGVjdCB7XG4gICAgLXdlYmtpdC1hcHBlYXJhbmNlOiBub25lO1xufVxuXG4uZmEge1xuICAgIGZvbnQtZmFtaWx5OiBGb250QXdlc29tZSAhaW1wb3J0YW50O1xufSIsIi8vIEZvdW5kYXRpb24gZm9yIFNpdGVzIGJ5IFpVUkJcbi8vIGZvdW5kYXRpb24uenVyYi5jb21cbi8vIExpY2Vuc2VkIHVuZGVyIE1JVCBPcGVuIFNvdXJjZVxuXG4vLyBzYXNzLWxpbnQ6ZGlzYWJsZSBmb3JjZS1lbGVtZW50LW5lc3RpbmcsIG5vLXF1YWxpZnlpbmctZWxlbWVudHNcblxuLy8vL1xuLy8vIEBncm91cCB0YWJsZVxuLy8vL1xuXG4vLy8gRGVmYXVsdCBjb2xvciBmb3IgdGFibGUgYmFja2dyb3VuZC5cbi8vLyBAdHlwZSBDb2xvclxuJHRhYmxlLWJhY2tncm91bmQ6ICR3aGl0ZSAgIWRlZmF1bHQ7XG5cbi8vLyBEZWZhdWx0IHNjYWxlIGZvciBkYXJrZW5pbmcgdGhlIHN0cmlwZWQgdGFibGUgcm93cyBhbmQgdGhlIHRhYmxlIGJvcmRlci5cbi8vLyBAdHlwZSBOdW1iZXJcbiR0YWJsZS1jb2xvci1zY2FsZTogNSUgIWRlZmF1bHQ7XG5cbi8vLyBEZWZhdWx0IHN0eWxlIGZvciB0YWJsZSBib3JkZXIuXG4vLy8gQHR5cGUgTGlzdFxuJHRhYmxlLWJvcmRlcjogMXB4IHNvbGlkIHNtYXJ0LXNjYWxlKCR0YWJsZS1iYWNrZ3JvdW5kLCAkdGFibGUtY29sb3Itc2NhbGUpICFkZWZhdWx0O1xuXG4vLy8gRGVmYXVsdCBwYWRkaW5nIGZvciB0YWJsZS5cbi8vLyBAdHlwZSBOdW1iZXJcbiR0YWJsZS1wYWRkaW5nOiByZW0tY2FsYyg4IDEwIDEwKSAhZGVmYXVsdDtcblxuLy8vIERlZmF1bHQgc2NhbGUgZm9yIGRhcmtlbmluZyB0aGUgdGFibGUgcm93cyBvbiBob3Zlci5cbi8vLyBAdHlwZSBOdW1iZXJcbiR0YWJsZS1ob3Zlci1zY2FsZTogMiUgIWRlZmF1bHQ7XG5cbi8vLyBEZWZhdWx0IGNvbG9yIG9mIHN0YW5kYXJkIHJvd3Mgb24gaG92ZXIuXG4vLy8gQHR5cGUgTGlzdFxuJHRhYmxlLXJvdy1ob3ZlcjogZGFya2VuKCR0YWJsZS1iYWNrZ3JvdW5kLCAkdGFibGUtaG92ZXItc2NhbGUpICFkZWZhdWx0O1xuXG4vLy8gRGVmYXVsdCBjb2xvciBvZiBzdHJpcGVkIHJvd3Mgb24gaG92ZXIuXG4vLy8gQHR5cGUgTGlzdFxuJHRhYmxlLXJvdy1zdHJpcGUtaG92ZXI6IGRhcmtlbigkdGFibGUtYmFja2dyb3VuZCwgJHRhYmxlLWNvbG9yLXNjYWxlICsgJHRhYmxlLWhvdmVyLXNjYWxlKSAhZGVmYXVsdDtcblxuLy8vIElmIGB0cnVlYCwgdGFibGVzIGFyZSBzdHJpcGVkIGJ5IGRlZmF1bHQgYW5kIGFuIC51bnN0cmlwZWQgY2xhc3MgaXMgY3JlYXRlZC4gSWYgYGZhbHNlYCwgYSAuc3RyaXBlZCBjbGFzcyBpcyBjcmVhdGVkLlxuLy8vIEB0eXBlIEJvb2xlYW5cbiR0YWJsZS1pcy1zdHJpcGVkOiB0cnVlICFkZWZhdWx0O1xuXG4vLy8gRGVmYXVsdCBiYWNrZ3JvdW5kIGNvbG9yIGZvciBzdHJpcGVkIHJvd3MuXG4vLy8gQHR5cGUgQ29sb3JcbiR0YWJsZS1zdHJpcGVkLWJhY2tncm91bmQ6IHNtYXJ0LXNjYWxlKCR0YWJsZS1iYWNrZ3JvdW5kLCAkdGFibGUtY29sb3Itc2NhbGUpICFkZWZhdWx0O1xuXG4vLy8gRGVmYXVsdCB2YWx1ZSBmb3Igc2hvd2luZyB0aGUgc3RyaXBlIG9uIHJvd3Mgb2YgdGhlIHRhYmxlcywgZXhjbHVkaW5nIHRoZSBoZWFkZXIgYW5kIGZvb3Rlci4gSWYgZXZlbiwgdGhlIGV2ZW4gcm93cyB3aWxsIGhhdmUgYSBiYWNrZ3JvdW5kIGNvbG9yLiBJZiBvZGQsIHRoZSBvZGQgcm93cyB3aWxsIGhhdmUgYSBiYWNrZ3JvdW5kIGNvbG9yLiBJZiBlbXB0eSwgb3IgYW55IG90aGVyIHZhbHVlLCB0aGUgdGFibGUgcm93cyB3aWxsIGhhdmUgbm8gc3RyaXBpbmcuXG4vLy8gQHR5cGUgS2V5d29yZFxuJHRhYmxlLXN0cmlwZTogZXZlbiAhZGVmYXVsdDtcblxuLy8vIERlZmF1bHQgY29sb3IgZm9yIGhlYWRlciBiYWNrZ3JvdW5kLlxuLy8vIEB0eXBlIENvbG9yXG4kdGFibGUtaGVhZC1iYWNrZ3JvdW5kOiBzbWFydC1zY2FsZSgkdGFibGUtYmFja2dyb3VuZCwgJHRhYmxlLWNvbG9yLXNjYWxlIC8gMikgIWRlZmF1bHQ7XG5cbi8vLyBEZWZhdWx0IGNvbG9yIG9mIGhlYWRlciByb3dzIG9uIGhvdmVyLlxuLy8vIEB0eXBlIExpc3RcbiR0YWJsZS1oZWFkLXJvdy1ob3ZlcjogZGFya2VuKCR0YWJsZS1oZWFkLWJhY2tncm91bmQsICR0YWJsZS1ob3Zlci1zY2FsZSkgIWRlZmF1bHQ7XG5cbi8vLyBEZWZhdWx0IGNvbG9yIGZvciBmb290ZXIgYmFja2dyb3VuZC5cbi8vLyBAdHlwZSBDb2xvclxuJHRhYmxlLWZvb3QtYmFja2dyb3VuZDogc21hcnQtc2NhbGUoJHRhYmxlLWJhY2tncm91bmQsICR0YWJsZS1jb2xvci1zY2FsZSkgIWRlZmF1bHQ7XG5cbi8vLyBEZWZhdWx0IGNvbG9yIG9mIGZvb3RlciByb3dzIG9uIGhvdmVyLlxuLy8vIEB0eXBlIExpc3RcbiR0YWJsZS1mb290LXJvdy1ob3ZlcjogZGFya2VuKCR0YWJsZS1mb290LWJhY2tncm91bmQsICR0YWJsZS1ob3Zlci1zY2FsZSkgIWRlZmF1bHQ7XG5cbi8vLyBEZWZhdWx0IGZvbnQgY29sb3IgZm9yIGhlYWRlci5cbi8vLyBAdHlwZSBDb2xvclxuJHRhYmxlLWhlYWQtZm9udC1jb2xvcjogJGJvZHktZm9udC1jb2xvciAhZGVmYXVsdDtcblxuLy8vIERlZmF1bHQgZm9udCBjb2xvciBmb3IgZm9vdGVyLlxuLy8vIEB0eXBlIENvbG9yXG4kdGFibGUtZm9vdC1mb250LWNvbG9yOiAkYm9keS1mb250LWNvbG9yICFkZWZhdWx0O1xuXG4vLy8gRGVmYXVsdCB2YWx1ZSBmb3Igc2hvd2luZyB0aGUgaGVhZGVyIHdoZW4gdXNpbmcgc3RhY2tlZCB0YWJsZXMuXG4vLy8gQHR5cGUgQm9vbGVhblxuJHNob3ctaGVhZGVyLWZvci1zdGFja2VkOiBmYWxzZSAhZGVmYXVsdDtcblxuLy8vIEJyZWFrcG9pbnQgYXQgd2hpY2ggc3RhY2tlZCB0YWJsZSBzd2l0Y2hlcyBmcm9tIG1vYmlsZSB0byBkZXNrdG9wIHZpZXcuXG4vLy8gQHR5cGUgQnJlYWtwb2ludFxuJHRhYmxlLXN0YWNrLWJyZWFrcG9pbnQ6IG1lZGl1bSAhZGVmYXVsdDtcblxuQG1peGluIC16Zi10YWJsZS1zdHJpcGUoJHN0cmlwZTogJHRhYmxlLXN0cmlwZSkge1xuICB0ciB7XG4gICAgLy8gSWYgc3RyaXBlIGlzIHNldCB0byBldmVuLCBkYXJrZW4gdGhlIGV2ZW4gcm93cy5cbiAgICBAaWYgJHN0cmlwZSA9PSBldmVuIHtcbiAgICAgICY6bnRoLWNoaWxkKGV2ZW4pIHtcbiAgICAgICAgYm9yZGVyLWJvdHRvbTogMDtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJHRhYmxlLXN0cmlwZWQtYmFja2dyb3VuZDtcbiAgICAgIH1cbiAgICB9XG5cbiAgICAvLyBJZiBzdHJpcGUgaXMgc2V0IHRvIG9kZCwgZGFya2VuIHRoZSBvZGQgcm93cy5cbiAgICBAZWxzZSBpZiAkc3RyaXBlID09IG9kZCB7XG4gICAgICAmOm50aC1jaGlsZChvZGQpIHtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJHRhYmxlLXN0cmlwZWQtYmFja2dyb3VuZDtcbiAgICAgIH1cbiAgICB9XG4gIH1cbn1cblxuQG1peGluIC16Zi10YWJsZS11bnN0cmlwZSgpIHtcbiAgdHIge1xuICAgIGJvcmRlci1ib3R0b206IDA7XG4gICAgYm9yZGVyLWJvdHRvbTogJHRhYmxlLWJvcmRlcjtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkdGFibGUtYmFja2dyb3VuZDtcbiAgfVxufVxuXG5AbWl4aW4gLXpmLXRhYmxlLWNoaWxkcmVuLXN0eWxlcygkc3RyaXBlOiAkdGFibGUtc3RyaXBlLCAkaXMtc3RyaXBlZDogJHRhYmxlLWlzLXN0cmlwZWQpIHtcbiAgdGhlYWQsXG4gIHRib2R5LFxuICB0Zm9vdCB7XG4gICAgYm9yZGVyOiAkdGFibGUtYm9yZGVyO1xuICAgIGJhY2tncm91bmQtY29sb3I6ICR0YWJsZS1iYWNrZ3JvdW5kO1xuICB9XG5cbiAgLy8gQ2FwdGlvblxuICBjYXB0aW9uIHtcbiAgICBwYWRkaW5nOiAkdGFibGUtcGFkZGluZztcbiAgICBmb250LXdlaWdodDogJGdsb2JhbC13ZWlnaHQtYm9sZDtcbiAgfVxuXG4gIC8vIFRhYmxlIGhlYWRcbiAgdGhlYWQge1xuICAgIGJhY2tncm91bmQ6ICR0YWJsZS1oZWFkLWJhY2tncm91bmQ7XG4gICAgY29sb3I6ICR0YWJsZS1oZWFkLWZvbnQtY29sb3I7XG4gIH1cblxuICAvLyBUYWJsZSBmb290XG4gIHRmb290IHtcbiAgICBiYWNrZ3JvdW5kOiAkdGFibGUtZm9vdC1iYWNrZ3JvdW5kO1xuICAgIGNvbG9yOiAkdGFibGUtZm9vdC1mb250LWNvbG9yO1xuICB9XG5cbiAgLy8gVGFibGUgaGVhZCBhbmQgZm9vdFxuICB0aGVhZCxcbiAgdGZvb3Qge1xuICAgIC8vIFJvd3Mgd2l0aGluIGhlYWQgYW5kIGZvb3RcbiAgICB0ciB7XG4gICAgICBiYWNrZ3JvdW5kOiB0cmFuc3BhcmVudDtcbiAgICB9XG5cbiAgICAvLyBDZWxscyB3aXRoaW4gaGVhZCBhbmQgZm9vdFxuICAgIHRoLFxuICAgIHRkIHtcbiAgICAgIHBhZGRpbmc6ICR0YWJsZS1wYWRkaW5nO1xuICAgICAgZm9udC13ZWlnaHQ6ICRnbG9iYWwtd2VpZ2h0LWJvbGQ7XG4gICAgICB0ZXh0LWFsaWduOiAjeyRnbG9iYWwtbGVmdH07XG4gICAgfVxuICB9XG5cbiAgLy8gVGFibGUgcm93c1xuICB0Ym9keSB7XG4gICAgdGgsXG4gICAgdGQge1xuICAgICAgcGFkZGluZzogJHRhYmxlLXBhZGRpbmc7XG4gICAgfVxuICB9XG5cbiAgLy8gSWYgdGFibGVzIGFyZSBzdHJpcGVkXG4gIEBpZiAkaXMtc3RyaXBlZCA9PSB0cnVlIHtcbiAgICB0Ym9keSB7XG4gICAgICBAaW5jbHVkZSAtemYtdGFibGUtc3RyaXBlKCRzdHJpcGUpO1xuICAgIH1cblxuICAgICYudW5zdHJpcGVkIHtcbiAgICAgIHRib2R5IHtcbiAgICAgICAgQGluY2x1ZGUgLXpmLXRhYmxlLXVuc3RyaXBlKCk7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6ICR0YWJsZS1iYWNrZ3JvdW5kO1xuICAgICAgfVxuICAgIH1cbiAgfVxuXG4gIC8vIElmIHRhYmxlcyBhcmUgbm90IHN0cmlwZWRcbiAgQGVsc2UgaWYgJGlzLXN0cmlwZWQgPT0gZmFsc2Uge1xuICAgIHRib2R5IHtcbiAgICAgIEBpbmNsdWRlIC16Zi10YWJsZS11bnN0cmlwZSgpO1xuICAgIH1cblxuICAgICYuc3RyaXBlZCB7XG4gICAgICB0Ym9keSB7XG4gICAgICAgIEBpbmNsdWRlIC16Zi10YWJsZS1zdHJpcGUoJHN0cmlwZSk7XG4gICAgICB9XG4gICAgfVxuICB9XG59XG5cbi8vLyBBZGRzIHRoZSBnZW5lcmFsIHN0eWxlcyBmb3IgdGFibGVzLlxuLy8vIEBwYXJhbSB7S2V5d29yZH0gJHN0cmlwZSBbJHRhYmxlLXN0cmlwZV0gLSBVc2VzIGtleXdvcmRzIGV2ZW4sIG9kZCwgb3Igbm9uZSB0byBkYXJrZW4gcm93cyBvZiB0aGUgdGFibGUuIFRoZSBkZWZhdWx0IHZhbHVlIGlzIGV2ZW4uXG5AbWl4aW4gdGFibGUoXG4gICRzdHJpcGU6ICR0YWJsZS1zdHJpcGUsXG4gICRuZXN0OiBmYWxzZVxuKSB7XG4gIGJvcmRlci1jb2xsYXBzZTogY29sbGFwc2U7XG4gIHdpZHRoOiAxMDAlO1xuICBtYXJnaW4tYm90dG9tOiAkZ2xvYmFsLW1hcmdpbjtcbiAgYm9yZGVyLXJhZGl1czogJGdsb2JhbC1yYWRpdXM7XG5cbiAgQGlmICRuZXN0IHtcbiAgICBAaW5jbHVkZSAtemYtdGFibGUtY2hpbGRyZW4tc3R5bGVzKCRzdHJpcGUpO1xuICB9XG4gIEBlbHNlIHtcbiAgICBAYXQtcm9vdCB7XG4gICAgICBAaW5jbHVkZSAtemYtdGFibGUtY2hpbGRyZW4tc3R5bGVzKCRzdHJpcGUpO1xuICAgIH1cbiAgfVxufVxuXG4vLy8gQWRkcyB0aGUgYWJpbGl0eSB0byBob3Jpem9udGFsbHkgc2Nyb2xsIHRoZSB0YWJsZSB3aGVuIHRoZSBjb250ZW50IG92ZXJmbG93cyBob3Jpem9udGFsbHkuXG5AbWl4aW4gdGFibGUtc2Nyb2xsIHtcbiAgZGlzcGxheTogYmxvY2s7XG4gIHdpZHRoOiAxMDAlO1xuICBvdmVyZmxvdy14OiBhdXRvO1xufVxuXG4vLy8gU2xpZ2h0bHkgZGFya2VucyB0aGUgdGFibGUgcm93cyBvbiBob3Zlci5cbkBtaXhpbiB0YWJsZS1ob3ZlciB7XG4gIHRoZWFkIHRyIHtcbiAgICAvL0RhcmtlbnMgdGhlIHRhYmxlIGhlYWRlciByb3dzIG9uIGhvdmVyLlxuICAgICY6aG92ZXIge1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogJHRhYmxlLWhlYWQtcm93LWhvdmVyO1xuICAgIH1cbiAgfVxuXG4gIHRmb290IHRyIHtcbiAgICAvL0RhcmtlbnMgdGhlIHRhYmxlIGZvb3RlciByb3dzIG9uIGhvdmVyLlxuICAgICY6aG92ZXIge1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogJHRhYmxlLWZvb3Qtcm93LWhvdmVyO1xuICAgIH1cbiAgfVxuXG4gIHRib2R5IHRyIHtcbiAgICAvL0RhcmtlbnMgdGhlIG5vbi1zdHJpcGVkIHRhYmxlIHJvd3Mgb24gaG92ZXIuXG4gICAgJjpob3ZlciB7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkdGFibGUtcm93LWhvdmVyO1xuICAgIH1cbiAgfVxuXG4gIEBpZiAkdGFibGUtaXMtc3RyaXBlZCA9PSB0cnVlIHtcbiAgICAvLyBEYXJrZW5zIHRoZSBldmVuIHN0cmlwZWQgdGFibGUgcm93cy5cbiAgICBAaWYoJHRhYmxlLXN0cmlwZSA9PSBldmVuKSB7XG4gICAgICAmOm5vdCgudW5zdHJpcGVkKSB0cjpudGgtb2YtdHlwZShldmVuKTpob3ZlciB7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6ICR0YWJsZS1yb3ctc3RyaXBlLWhvdmVyO1xuICAgICAgfVxuICAgIH1cblxuICAgIC8vIERhcmtlbnMgdGhlIG9kZCBzdHJpcGVkIHRhYmxlIHJvd3MuXG4gICAgQGVsc2VpZigkdGFibGUtc3RyaXBlID09IG9kZCkge1xuICAgICAgJjpub3QoLnVuc3RyaXBlZCkgdHI6bnRoLW9mLXR5cGUob2RkKTpob3ZlciB7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6ICR0YWJsZS1yb3ctc3RyaXBlLWhvdmVyO1xuICAgICAgfVxuICAgIH1cbiAgfVxuXG4gIEBlbHNlIGlmICR0YWJsZS1pcy1zdHJpcGVkID09IGZhbHNlIHtcbiAgICAvLyBEYXJrZW5zIHRoZSBldmVuIHN0cmlwZWQgdGFibGUgcm93cy5cbiAgICBAaWYoJHRhYmxlLXN0cmlwZSA9PSBldmVuKSB7XG4gICAgICAmLnN0cmlwZWQgdHI6bnRoLW9mLXR5cGUoZXZlbik6aG92ZXIge1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkdGFibGUtcm93LXN0cmlwZS1ob3ZlcjtcbiAgICAgIH1cbiAgICB9XG5cbiAgICAvLyBEYXJrZW5zIHRoZSBvZGQgc3RyaXBlZCB0YWJsZSByb3dzLlxuICAgIEBlbHNlaWYoJHRhYmxlLXN0cmlwZSA9PSBvZGQpIHtcbiAgICAgICYuc3RyaXBlZCB0cjpudGgtb2YtdHlwZShvZGQpOmhvdmVyIHtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJHRhYmxlLXJvdy1zdHJpcGUtaG92ZXI7XG4gICAgICB9XG4gICAgfVxuICB9XG59XG5cbi8vLyBBZGRzIHN0eWxlcyBmb3IgYSBzdGFja2VkIHRhYmxlLiBVc2VmdWwgZm9yIHNtYWxsLXNjcmVlbiBsYXlvdXRzLlxuLy8vIEBwYXJhbSB7Qm9vbGVhbn0gJGhlYWRlciBbJHNob3ctaGVhZGVyLWZvci1zdGFja2VkXSAtIFNob3cgdGhlIGZpcnN0IHRoIG9mIGhlYWRlciB3aGVuIHN0YWNrZWQuXG5AbWl4aW4gdGFibGUtc3RhY2soJGhlYWRlcjogJHNob3ctaGVhZGVyLWZvci1zdGFja2VkKSB7XG4gIEBpZiAkaGVhZGVyIHtcbiAgICB0aGVhZCB7XG4gICAgICB0aCB7XG4gICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgfVxuICAgIH1cbiAgfVxuICBAZWxzZSB7XG4gICAgdGhlYWQge1xuICAgICAgZGlzcGxheTogbm9uZTtcbiAgICB9XG4gIH1cblxuICB0Zm9vdCB7XG4gICAgZGlzcGxheTogbm9uZTtcbiAgfVxuXG4gIHRyLFxuICB0aCxcbiAgdGQge1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICB9XG5cbiAgdGQge1xuICAgIGJvcmRlci10b3A6IDA7XG4gIH1cbn1cblxuQG1peGluIGZvdW5kYXRpb24tdGFibGUoJG5lc3Q6IGZhbHNlKSB7XG4gIHRhYmxlIHtcbiAgICBAaW5jbHVkZSB0YWJsZSgkbmVzdDogJG5lc3QpO1xuICB9XG5cbiAgdGFibGUuc3RhY2sge1xuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoJHRhYmxlLXN0YWNrLWJyZWFrcG9pbnQgZG93bikge1xuICAgICAgQGluY2x1ZGUgdGFibGUtc3RhY2s7XG4gICAgfVxuICB9XG5cbiAgdGFibGUuc2Nyb2xsIHtcbiAgICBAaW5jbHVkZSB0YWJsZS1zY3JvbGw7XG4gIH1cblxuICB0YWJsZS5ob3ZlciB7XG4gICAgQGluY2x1ZGUgdGFibGUtaG92ZXI7XG4gIH1cblxuICAudGFibGUtc2Nyb2xsIHtcbiAgICBvdmVyZmxvdy14OiBhdXRvO1xuXG4gICAgdGFibGUge1xuICAgICAgd2lkdGg6IGF1dG87XG4gICAgfVxuICB9XG59XG5cblxuIiwiLy8gRm91bmRhdGlvbiBmb3IgU2l0ZXMgYnkgWlVSQlxuLy8gZm91bmRhdGlvbi56dXJiLmNvbVxuLy8gTGljZW5zZWQgdW5kZXIgTUlUIE9wZW4gU291cmNlXG5cbkBpbXBvcnQgJ21hdGgnO1xuXG4kY29udHJhc3Qtd2FybmluZ3M6IHRydWUgIWRlZmF1bHQ7XG5cbi8vLy9cbi8vLyBAZ3JvdXAgZnVuY3Rpb25zXG4vLy8vXG5cbi8vLyBDaGVja3MgdGhlIGx1bWluYW5jZSBvZiBgJGNvbG9yYC5cbi8vL1xuLy8vIEBwYXJhbSB7Q29sb3J9ICRjb2xvciAtIENvbG9yIHRvIGNoZWNrIHRoZSBsdW1pbmFuY2Ugb2YuXG4vLy9cbi8vLyBAcmV0dXJucyB7TnVtYmVyfSBUaGUgbHVtaW5hbmNlIG9mIGAkY29sb3JgLlxuQGZ1bmN0aW9uIGNvbG9yLWx1bWluYW5jZSgkY29sb3IpIHtcbiAgLy8gQWRhcHRlZCBmcm9tOiBodHRwczovL2dpdGh1Yi5jb20vTGVhVmVyb3UvY29udHJhc3QtcmF0aW8vYmxvYi9naC1wYWdlcy9jb2xvci5qc1xuICAvLyBGb3JtdWxhOiBodHRwOi8vd3d3LnczLm9yZy9UUi8yMDA4L1JFQy1XQ0FHMjAtMjAwODEyMTEvI3JlbGF0aXZlbHVtaW5hbmNlZGVmXG4gICRyZ2JhOiByZWQoJGNvbG9yKSwgZ3JlZW4oJGNvbG9yKSwgYmx1ZSgkY29sb3IpO1xuICAkcmdiYTI6ICgpO1xuXG4gIEBmb3IgJGkgZnJvbSAxIHRocm91Z2ggMyB7XG4gICAgJHJnYjogbnRoKCRyZ2JhLCAkaSk7XG4gICAgJHJnYjogJHJnYiAvIDI1NTtcblxuICAgICRyZ2I6IGlmKCRyZ2IgPCAwLjAzOTI4LCAkcmdiIC8gMTIuOTIsIHBvdygoJHJnYiArIDAuMDU1KSAvIDEuMDU1LCAyLjQpKTtcblxuICAgICRyZ2JhMjogYXBwZW5kKCRyZ2JhMiwgJHJnYik7XG4gIH1cblxuICBAcmV0dXJuIDAuMjEyNiAqIG50aCgkcmdiYTIsIDEpICsgMC43MTUyICogbnRoKCRyZ2JhMiwgMikgKyAwLjA3MjIgKiBudGgoJHJnYmEyLCAzKTtcbn1cblxuLy8vIENoZWNrcyB0aGUgY29udHJhc3QgcmF0aW8gb2YgdHdvIGNvbG9ycy5cbi8vL1xuLy8vIEBwYXJhbSB7Q29sb3J9ICRjb2xvcjEgLSBGaXJzdCBjb2xvciB0byBjb21wYXJlLlxuLy8vIEBwYXJhbSB7Q29sb3J9ICRjb2xvcjIgLSBTZWNvbmQgY29sb3IgdG8gY29tcGFyZS5cbi8vL1xuLy8vIEByZXR1cm5zIHtOdW1iZXJ9IFRoZSBjb250cmFzdCByYXRpbyBvZiB0aGUgY29tcGFyZWQgY29sb3JzLlxuQGZ1bmN0aW9uIGNvbG9yLWNvbnRyYXN0KCRjb2xvcjEsICRjb2xvcjIpIHtcbiAgLy8gQWRhcHRlZCBmcm9tOiBodHRwczovL2dpdGh1Yi5jb20vTGVhVmVyb3UvY29udHJhc3QtcmF0aW8vYmxvYi9naC1wYWdlcy9jb2xvci5qc1xuICAvLyBGb3JtdWxhOiBodHRwOi8vd3d3LnczLm9yZy9UUi8yMDA4L1JFQy1XQ0FHMjAtMjAwODEyMTEvI2NvbnRyYXN0LXJhdGlvZGVmXG4gICRsdW1pbmFuY2UxOiBjb2xvci1sdW1pbmFuY2UoJGNvbG9yMSkgKyAwLjA1O1xuICAkbHVtaW5hbmNlMjogY29sb3ItbHVtaW5hbmNlKCRjb2xvcjIpICsgMC4wNTtcbiAgJHJhdGlvOiAkbHVtaW5hbmNlMSAvICRsdW1pbmFuY2UyO1xuXG4gIEBpZiAkbHVtaW5hbmNlMiA+ICRsdW1pbmFuY2UxIHtcbiAgICAkcmF0aW86IDEgLyAkcmF0aW87XG4gIH1cblxuICAkcmF0aW86IHJvdW5kKCRyYXRpbyAqIDEwKSAvIDEwO1xuXG4gIEByZXR1cm4gJHJhdGlvO1xufVxuXG4vLy8gQ2hlY2tzIHRoZSBsdW1pbmFuY2Ugb2YgYCRiYXNlYCwgYW5kIHJldHVybnMgdGhlIGNvbG9yIGZyb20gYCRjb2xvcnNgIChsaXN0IG9mIGNvbG9ycykgdGhhdCBoYXMgdGhlIG1vc3QgY29udHJhc3QuXG4vLy9cbi8vLyBAcGFyYW0ge0NvbG9yfSAkYmFzZSAtIENvbG9yIHRvIGNoZWNrIGx1bWluYW5jZS5cbi8vLyBAcGFyYW0ge0xpc3R9ICRjb2xvcnMgWygkd2hpdGUsICRibGFjayldIC0gQ29sb3JzIHRvIGNvbXBhcmUuXG4vLy8gQHBhcmFtIHtOdW1iZXJ9ICR0b2xlcmFuY2UgWyRnbG9iYWwtY29sb3ItcGljay1jb250cmFzdC10b2xlcmFuY2VdIC0gQ29udHJhc3QgdG9sZXJhbmNlLlxuLy8vXG4vLy8gQHJldHVybnMge0NvbG9yfSB0aGUgY29sb3IgZnJvbSBgJGNvbG9yc2AgKGxpc3Qgb2YgY29sb3JzKSB0aGF0IGhhcyB0aGUgbW9zdCBjb250cmFzdC5cbkBmdW5jdGlvbiBjb2xvci1waWNrLWNvbnRyYXN0KCRiYXNlLCAkY29sb3JzOiAoJHdoaXRlLCAkYmxhY2spLCAkdG9sZXJhbmNlOiAkZ2xvYmFsLWNvbG9yLXBpY2stY29udHJhc3QtdG9sZXJhbmNlKSB7XG4gICRjb250cmFzdDogY29sb3ItY29udHJhc3QoJGJhc2UsIG50aCgkY29sb3JzLCAxKSk7XG4gICRiZXN0OiBudGgoJGNvbG9ycywgMSk7XG5cbiAgQGZvciAkaSBmcm9tIDIgdGhyb3VnaCBsZW5ndGgoJGNvbG9ycykge1xuICAgICRjdXJyZW50LWNvbnRyYXN0OiBjb2xvci1jb250cmFzdCgkYmFzZSwgbnRoKCRjb2xvcnMsICRpKSk7XG4gICAgQGlmICgkY3VycmVudC1jb250cmFzdCAtICRjb250cmFzdCA+ICR0b2xlcmFuY2UpIHtcbiAgICAgICRjb250cmFzdDogY29sb3ItY29udHJhc3QoJGJhc2UsIG50aCgkY29sb3JzLCAkaSkpO1xuICAgICAgJGJlc3Q6IG50aCgkY29sb3JzLCAkaSk7XG4gICAgfVxuICB9XG5cbiAgQGlmICgkY29udHJhc3Qtd2FybmluZ3MgYW5kICRjb250cmFzdCA8IDMpIHtcbiAgICBAd2FybiBcIkNvbnRyYXN0IHJhdGlvIG9mICN7JGJlc3R9IG9uICN7JGJhc2V9IGlzIHByZXR0eSBiYWQsIGp1c3QgI3skY29udHJhc3R9XCI7XG4gIH1cblxuICBAcmV0dXJuICRiZXN0O1xufVxuXG4vLy8gU2NhbGVzIGEgY29sb3IgdG8gYmUgZGFya2VyIGlmIGl0J3MgbGlnaHQsIG9yIGxpZ2h0ZXIgaWYgaXQncyBkYXJrLiBVc2UgdGhpcyBmdW5jdGlvbiB0byB0aW50IGEgY29sb3IgYXBwcm9wcmlhdGUgdG8gaXRzIGxpZ2h0bmVzcy5cbi8vL1xuLy8vIEBwYXJhbSB7Q29sb3J9ICRjb2xvciAtIENvbG9yIHRvIHNjYWxlLlxuLy8vIEBwYXJhbSB7UGVyY2VudGFnZX0gJHNjYWxlIFs1JV0gLSBBbW91bnQgdG8gc2NhbGUgdXAgb3IgZG93bi5cbi8vLyBAcGFyYW0ge1BlcmNlbnRhZ2V9ICR0aHJlc2hvbGQgWzQwJV0gLSBUaHJlc2hvbGQgb2YgbGlnaHRuZXNzIHRvIGNoZWNrIGFnYWluc3QuXG4vLy9cbi8vLyBAcmV0dXJucyB7Q29sb3J9IEEgc2NhbGVkIGNvbG9yLlxuQGZ1bmN0aW9uIHNtYXJ0LXNjYWxlKCRjb2xvciwgJHNjYWxlOiA1JSwgJHRocmVzaG9sZDogNDAlKSB7XG4gIEBpZiBsaWdodG5lc3MoJGNvbG9yKSA+ICR0aHJlc2hvbGQge1xuICAgICRzY2FsZTogLSRzY2FsZTtcbiAgfVxuICBAcmV0dXJuIHNjYWxlLWNvbG9yKCRjb2xvciwgJGxpZ2h0bmVzczogJHNjYWxlKTtcbn1cblxuLy8vIEdldCBjb2xvciBmcm9tIGZvdW5kYXRpb24tcGFsZXR0ZVxuLy8vXG4vLy8gQHBhcmFtIHtrZXl9IGNvbG9yIGtleSBmcm9tIGZvdW5kYXRpb24tcGFsZXR0ZVxuLy8vXG4vLy8gQHJldHVybnMge0NvbG9yfSBjb2xvciBmcm9tIGZvdW5kYXRpb24tcGFsZXR0ZVxuQGZ1bmN0aW9uIGdldC1jb2xvcigka2V5KSB7XG4gIEBpZiBtYXAtaGFzLWtleSgkZm91bmRhdGlvbi1wYWxldHRlLCAka2V5KSB7XG4gICAgQHJldHVybiBtYXAtZ2V0KCRmb3VuZGF0aW9uLXBhbGV0dGUsICRrZXkpO1xuICB9XG4gIEBlbHNlIHtcbiAgICBAZXJyb3IgJ2dpdmVuICRrZXkgaXMgbm90IGF2YWlsYWJsZSBpbiAkZm91bmRhdGlvbi1wYWxldHRlJztcbiAgfVxufVxuXG4vLy8gVHJhbnNmZXJzIHRoZSBjb2xvcnMgaW4gdGhlIGAkZm91bmRhdGlvbi1wYWxldHRlYG1hcCBpbnRvIHZhcmlhYmxlcywgc3VjaCBhcyBgJHByaW1hcnktY29sb3JgIGFuZCBgJHNlY29uZGFyeS1jb2xvcmAuIENhbGwgdGhpcyBtaXhpbiBiZWxvdyB0aGUgR2xvYmFsIHNlY3Rpb24gb2YgeW91ciBzZXR0aW5ncyBmaWxlIHRvIHByb3Blcmx5IG1pZ3JhdGUgeW91ciBjb2RlYmFzZS5cbkBtaXhpbiBhZGQtZm91bmRhdGlvbi1jb2xvcnMoKSB7XG4gIEBpZiBtYXAtaGFzLWtleSgkZm91bmRhdGlvbi1wYWxldHRlLCBwcmltYXJ5KSB7XG4gICAgJHByaW1hcnktY29sb3I6IG1hcC1nZXQoJGZvdW5kYXRpb24tcGFsZXR0ZSwgcHJpbWFyeSkgIWdsb2JhbDtcbiAgfVxuICBAaWYgbWFwLWhhcy1rZXkoJGZvdW5kYXRpb24tcGFsZXR0ZSwgc2Vjb25kYXJ5KSB7XG4gICAgJHNlY29uZGFyeS1jb2xvcjogbWFwLWdldCgkZm91bmRhdGlvbi1wYWxldHRlLCBzZWNvbmRhcnkpICFnbG9iYWw7XG4gIH1cbiAgQGlmIG1hcC1oYXMta2V5KCRmb3VuZGF0aW9uLXBhbGV0dGUsIHN1Y2Nlc3MpIHtcbiAgICAkc3VjY2Vzcy1jb2xvcjogbWFwLWdldCgkZm91bmRhdGlvbi1wYWxldHRlLCBzdWNjZXNzKSAhZ2xvYmFsO1xuICB9XG4gIEBpZiBtYXAtaGFzLWtleSgkZm91bmRhdGlvbi1wYWxldHRlLCB3YXJuaW5nKSB7XG4gICAgJHdhcm5pbmctY29sb3I6IG1hcC1nZXQoJGZvdW5kYXRpb24tcGFsZXR0ZSwgd2FybmluZykgIWdsb2JhbDtcbiAgfVxuICBAaWYgbWFwLWhhcy1rZXkoJGZvdW5kYXRpb24tcGFsZXR0ZSwgYWxlcnQpIHtcbiAgICAkYWxlcnQtY29sb3I6IG1hcC1nZXQoJGZvdW5kYXRpb24tcGFsZXR0ZSwgYWxlcnQpICFnbG9iYWw7XG4gIH1cbn1cbiIsIi8vIEZvdW5kYXRpb24gZm9yIFNpdGVzIGJ5IFpVUkJcbi8vIGZvdW5kYXRpb24uenVyYi5jb21cbi8vIExpY2Vuc2VkIHVuZGVyIE1JVCBPcGVuIFNvdXJjZVxuXG4vLy8vXG4vLy8gQGdyb3VwIHRhYnNcbi8vLy9cblxuLy8vIERlZmF1bHQgbWFyZ2luIG9mIHRoZSB0YWIgYmFyLlxuLy8vIEB0eXBlIE51bWJlclxuJHRhYi1tYXJnaW46IDAgIWRlZmF1bHQ7XG5cbi8vLyBEZWZhdWx0IGJhY2tncm91bmQgY29sb3Igb2YgYSB0YWIgYmFyLlxuLy8vIEB0eXBlIENvbG9yXG4kdGFiLWJhY2tncm91bmQ6ICR3aGl0ZSAhZGVmYXVsdDtcblxuLy8vIEZvbnQgY29sb3Igb2YgdGFiIGl0ZW0uXG4vLy8gQHR5cGUgQ29sb3JcbiR0YWItY29sb3I6ICRwcmltYXJ5LWNvbG9yICFkZWZhdWx0O1xuXG4vLy8gQWN0aXZlIGJhY2tncm91bmQgY29sb3Igb2YgYSB0YWIgYmFyLlxuLy8vIEB0eXBlIENvbG9yXG4kdGFiLWJhY2tncm91bmQtYWN0aXZlOiAkbGlnaHQtZ3JheSAhZGVmYXVsdDtcblxuLy8vIEFjdGl2ZSBmb250IGNvbG9yIG9mIHRhYiBpdGVtLlxuLy8vIEB0eXBlIENvbG9yXG4kdGFiLWFjdGl2ZS1jb2xvcjogJHByaW1hcnktY29sb3IgIWRlZmF1bHQ7XG5cbi8vLyBGb250IHNpemUgb2YgdGFiIGl0ZW1zLlxuLy8vIEB0eXBlIE51bWJlclxuJHRhYi1pdGVtLWZvbnQtc2l6ZTogcmVtLWNhbGMoMTIpICFkZWZhdWx0O1xuXG4vLy8gRGVmYXVsdCBiYWNrZ3JvdW5kIGNvbG9yIG9uIGhvdmVyIGZvciBpdGVtcyBpbiBhIE1lbnUuXG4kdGFiLWl0ZW0tYmFja2dyb3VuZC1ob3ZlcjogJHdoaXRlICFkZWZhdWx0O1xuXG4vLy8gRGVmYXVsdCBwYWRkaW5nIG9mIGEgdGFiIGl0ZW0uXG4vLy8gQHR5cGUgTnVtYmVyXG4kdGFiLWl0ZW0tcGFkZGluZzogMS4yNXJlbSAxLjVyZW0gIWRlZmF1bHQ7XG5cbi8vLyBNYXhpbXVtIG51bWJlciBvZiBgZXhwYW5kLW5gIGNsYXNzZXMgdG8gaW5jbHVkZSBpbiB0aGUgQ1NTLlxuLy8vIEB0eXBlIE51bWJlclxuJHRhYi1leHBhbmQtbWF4OiA2ICFkZWZhdWx0O1xuXG4vLy8gRGVmYXVsdCBiYWNrZ3JvdW5kIGNvbG9yIG9mIHRhYiBjb250ZW50LlxuLy8vIEB0eXBlIENvbG9yXG4kdGFiLWNvbnRlbnQtYmFja2dyb3VuZDogJHdoaXRlICFkZWZhdWx0O1xuXG4vLy8gRGVmYXVsdCBib3JkZXIgY29sb3Igb2YgdGFiIGNvbnRlbnQuXG4vLy8gQHR5cGUgQ29sb3JcbiR0YWItY29udGVudC1ib3JkZXI6ICRsaWdodC1ncmF5ICFkZWZhdWx0O1xuXG4vLy8gRGVmYXVsdCB0ZXh0IGNvbG9yIG9mIHRhYiBjb250ZW50LlxuLy8vIEB0eXBlIENvbG9yXG4kdGFiLWNvbnRlbnQtY29sb3I6ICRib2R5LWZvbnQtY29sb3IgIWRlZmF1bHQ7XG5cbi8vLyBEZWZhdWx0IHBhZGRpbmcgZm9yIHRhYiBjb250ZW50LlxuLy8vIEB0eXBlIE51bWJlciB8IExpc3RcbiR0YWItY29udGVudC1wYWRkaW5nOiAxcmVtICFkZWZhdWx0O1xuXG4vLy8gQWRkcyBzdHlsZXMgZm9yIGEgdGFiIGNvbnRhaW5lci4gQXBwbHkgdGhpcyB0byBhIGA8dWw+YC5cbkBtaXhpbiB0YWJzLWNvbnRhaW5lciAoXG4gICRtYXJnaW46ICR0YWItbWFyZ2luLFxuICAkYmFja2dyb3VuZDogJHRhYi1iYWNrZ3JvdW5kLFxuICAkYm9yZGVyLWNvbG9yOiAkdGFiLWNvbnRlbnQtYm9yZGVyXG4pIHtcbiAgQGluY2x1ZGUgY2xlYXJmaXg7XG4gIG1hcmdpbjogJG1hcmdpbjtcbiAgYm9yZGVyOiAxcHggc29saWQgJGJvcmRlci1jb2xvcjtcbiAgYmFja2dyb3VuZDogJGJhY2tncm91bmQ7XG4gIGxpc3Qtc3R5bGUtdHlwZTogbm9uZTtcbn1cblxuLy8vIEF1Z21lbnRzIGEgdGFiIGNvbnRhaW5lciB0byBoYXZlIHZlcnRpY2FsIHRhYnMuIFVzZSB0aGlzIGluIGNvbmp1bmN0aW9uIHdpdGggYHRhYnMtY29udGFpbmVyKClgLlxuQG1peGluIHRhYnMtY29udGFpbmVyLXZlcnRpY2FsIHtcbiAgPiBsaSB7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgZmxvYXQ6IG5vbmU7XG4gICAgd2lkdGg6IGF1dG87XG4gIH1cbn1cblxuLy8vIEFkZHMgc3R5bGVzIGZvciB0aGUgbGlua3Mgd2l0aGluIGEgdGFiIGNvbnRhaW5lci4gQXBwbHkgdGhpcyB0byB0aGUgYDxsaT5gIGVsZW1lbnRzIGluc2lkZSBhIHRhYiBjb250YWluZXIuXG5AbWl4aW4gdGFicy10aXRsZSAoXG4gICRwYWRkaW5nOiAkdGFiLWl0ZW0tcGFkZGluZyxcbiAgJGZvbnQtc2l6ZTogJHRhYi1pdGVtLWZvbnQtc2l6ZSxcbiAgJGNvbG9yOiAkdGFiLWNvbG9yLFxuICAkY29sb3ItYWN0aXZlOiAkdGFiLWFjdGl2ZS1jb2xvcixcbiAgJGJhY2tncm91bmQtaG92ZXI6ICR0YWItaXRlbS1iYWNrZ3JvdW5kLWhvdmVyLFxuICAkYmFja2dyb3VuZC1hY3RpdmU6ICR0YWItYmFja2dyb3VuZC1hY3RpdmVcbikge1xuICBmbG9hdDogI3skZ2xvYmFsLWxlZnR9O1xuXG4gID4gYSB7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgcGFkZGluZzogJHBhZGRpbmc7XG4gICAgZm9udC1zaXplOiAkZm9udC1zaXplO1xuICAgIGxpbmUtaGVpZ2h0OiAxO1xuICAgIGNvbG9yOiAkY29sb3I7XG5cbiAgICAmOmhvdmVyIHtcbiAgICAgIGJhY2tncm91bmQ6ICRiYWNrZ3JvdW5kLWhvdmVyO1xuICAgICAgY29sb3I6IHNjYWxlLWNvbG9yKCRjb2xvciwgJGxpZ2h0bmVzczogLTE0JSk7XG4gICAgfVxuXG4gICAgJjpmb2N1cyxcbiAgICAmW2FyaWEtc2VsZWN0ZWQ9J3RydWUnXSB7XG4gICAgICBiYWNrZ3JvdW5kOiAkYmFja2dyb3VuZC1hY3RpdmU7XG4gICAgICBjb2xvcjogJGNvbG9yLWFjdGl2ZTtcbiAgICB9XG4gIH1cbn1cblxuLy8vIEFkZHMgc3R5bGVzIGZvciB0aGUgd3JhcHBlciB0aGF0IHN1cnJvdW5kcyBhIHRhYiBncm91cCdzIGNvbnRlbnQgcGFuZXMuXG5AbWl4aW4gdGFicy1jb250ZW50IChcbiAgJGJhY2tncm91bmQ6ICR0YWItY29udGVudC1iYWNrZ3JvdW5kLFxuICAkY29sb3I6ICR0YWItY29udGVudC1jb2xvcixcbiAgJGJvcmRlci1jb2xvcjogJHRhYi1jb250ZW50LWJvcmRlclxuKSB7XG4gIGJvcmRlcjogMXB4IHNvbGlkICRib3JkZXItY29sb3I7XG4gIGJvcmRlci10b3A6IDA7XG4gIGJhY2tncm91bmQ6ICRiYWNrZ3JvdW5kO1xuICBjb2xvcjogJGNvbG9yO1xuICB0cmFuc2l0aW9uOiBhbGwgMC41cyBlYXNlO1xufVxuXG4vLy8gQXVnbWVudHMgYSB0YWIgY29udGVudCBjb250YWluZXIgdG8gaGF2ZSBhIHZlcnRpY2FsIHN0eWxlLCBieSBzaGlmdGluZyB0aGUgYm9yZGVyIGFyb3VuZC4gVXNlIHRoaXMgaW4gY29uanVuY3Rpb24gd2l0aCBgdGFicy1jb250ZW50KClgLlxuQG1peGluIHRhYnMtY29udGVudC12ZXJ0aWNhbCAoXG4gICRib3JkZXItY29sb3I6ICR0YWItY29udGVudC1ib3JkZXJcbikge1xuICBib3JkZXI6IDFweCBzb2xpZCAkYm9yZGVyLWNvbG9yO1xuICBib3JkZXItI3skZ2xvYmFsLWxlZnR9OiAwO1xufVxuXG4vLy8gQWRkcyBzdHlsZXMgZm9yIGFuIGluZGl2aWR1YWwgdGFiIGNvbnRlbnQgcGFuZWwgd2l0aGluIHRoZSB0YWIgY29udGVudCBjb250YWluZXIuXG5AbWl4aW4gdGFicy1wYW5lbCAoXG4gICRwYWRkaW5nOiAkdGFiLWNvbnRlbnQtcGFkZGluZ1xuKSB7XG4gIGRpc3BsYXk6IG5vbmU7XG4gIHBhZGRpbmc6ICRwYWRkaW5nO1xuXG4gICYuaXMtYWN0aXZlIHtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgfVxufVxuXG5AbWl4aW4gZm91bmRhdGlvbi10YWJzIHtcbiAgLnRhYnMge1xuICAgIEBpbmNsdWRlIHRhYnMtY29udGFpbmVyO1xuICB9XG5cbiAgLy8gVmVydGljYWxcbiAgLnRhYnMudmVydGljYWwge1xuICAgIEBpbmNsdWRlIHRhYnMtY29udGFpbmVyLXZlcnRpY2FsO1xuICB9XG5cbiAgLy8gU2ltcGxlXG4gIC50YWJzLnNpbXBsZSB7XG4gICAgPiBsaSA+IGEge1xuICAgICAgcGFkZGluZzogMDtcblxuICAgICAgJjpob3ZlciB7XG4gICAgICAgIGJhY2tncm91bmQ6IHRyYW5zcGFyZW50O1xuICAgICAgfVxuICAgIH1cbiAgfVxuXG4gIC8vIFByaW1hcnkgY29sb3JcbiAgLnRhYnMucHJpbWFyeSB7XG4gICAgYmFja2dyb3VuZDogJHByaW1hcnktY29sb3I7XG5cbiAgICA+IGxpID4gYSB7XG4gICAgICBjb2xvcjogY29sb3ItcGljay1jb250cmFzdCgkcHJpbWFyeS1jb2xvcik7XG5cbiAgICAgICY6aG92ZXIsXG4gICAgICAmOmZvY3VzIHtcbiAgICAgICAgYmFja2dyb3VuZDogc21hcnQtc2NhbGUoJHByaW1hcnktY29sb3IpO1xuICAgICAgfVxuICAgIH1cbiAgfVxuXG4gIC50YWJzLXRpdGxlIHtcbiAgICBAaW5jbHVkZSB0YWJzLXRpdGxlO1xuICB9XG5cbiAgLnRhYnMtY29udGVudCB7XG4gICAgQGluY2x1ZGUgdGFicy1jb250ZW50O1xuICB9XG5cbiAgLnRhYnMtY29udGVudC52ZXJ0aWNhbCB7XG4gICAgQGluY2x1ZGUgdGFicy1jb250ZW50LXZlcnRpY2FsO1xuICB9XG5cbiAgLnRhYnMtcGFuZWwge1xuICAgIEBpbmNsdWRlIHRhYnMtcGFuZWw7XG4gIH1cbn1cbiIsIi8vIEZvdW5kYXRpb24gZm9yIFNpdGVzIGJ5IFpVUkJcbi8vIGZvdW5kYXRpb24uenVyYi5jb21cbi8vIExpY2Vuc2VkIHVuZGVyIE1JVCBPcGVuIFNvdXJjZVxuXG4vLy8vXG4vLy8gQGdyb3VwIHRodW1ibmFpbFxuLy8vL1xuXG4vLy8gQm9yZGVyIGFyb3VuZCB0aHVtYm5haWwgaW1hZ2VzLlxuLy8vIEB0eXBlIEJvcmRlclxuJHRodW1ibmFpbC1ib3JkZXI6IHNvbGlkIDRweCAkd2hpdGUgIWRlZmF1bHQ7XG5cbi8vLyBCb3R0b20gbWFyZ2luIGZvciB0aHVtYm5haWwgaW1hZ2VzLlxuLy8vIEB0eXBlIExlbmd0aFxuJHRodW1ibmFpbC1tYXJnaW4tYm90dG9tOiAkZ2xvYmFsLW1hcmdpbiAhZGVmYXVsdDtcblxuLy8vIEJveCBzaGFkb3cgdW5kZXIgdGh1bWJuYWlsIGltYWdlcy5cbi8vLyBAdHlwZSBTaGFkb3dcbiR0aHVtYm5haWwtc2hhZG93OiAwIDAgMCAxcHggcmdiYSgkYmxhY2ssIDAuMikgIWRlZmF1bHQ7XG5cbi8vLyBCb3ggc2hhZG93IHVuZGVyIHRodW1ibmFpbCBpbWFnZXMuXG4vLy8gQHR5cGUgU2hhZG93XG4kdGh1bWJuYWlsLXNoYWRvdy1ob3ZlcjogMCAwIDZweCAxcHggcmdiYSgkcHJpbWFyeS1jb2xvciwgMC41KSAhZGVmYXVsdDtcblxuLy8vIFRyYW5zaXRpb24gcHJvcHJ0aWVzIGZvciB0aHVtYm5haWwgaW1hZ2VzLlxuLy8vIEB0eXBlIFRyYW5zaXRpb25cbiR0aHVtYm5haWwtdHJhbnNpdGlvbjogYm94LXNoYWRvdyAyMDBtcyBlYXNlLW91dCAhZGVmYXVsdDtcblxuLy8vIERlZmF1bHQgcmFkaXVzIGZvciB0aHVtYm5haWwgaW1hZ2VzLlxuLy8vIEB0eXBlIE51bWJlclxuJHRodW1ibmFpbC1yYWRpdXM6ICRnbG9iYWwtcmFkaXVzICFkZWZhdWx0O1xuXG4vLy8gQWRkcyB0aHVtYm5haWwgc3R5bGVzIHRvIGFuIGVsZW1lbnQuXG5AbWl4aW4gdGh1bWJuYWlsIHtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICBtYXgtd2lkdGg6IDEwMCU7XG4gIG1hcmdpbi1ib3R0b206ICR0aHVtYm5haWwtbWFyZ2luLWJvdHRvbTtcblxuICBib3JkZXI6ICR0aHVtYm5haWwtYm9yZGVyO1xuICBib3JkZXItcmFkaXVzOiAkdGh1bWJuYWlsLXJhZGl1cztcbiAgYm94LXNoYWRvdzogJHRodW1ibmFpbC1zaGFkb3c7XG5cbiAgbGluZS1oZWlnaHQ6IDA7XG59XG5cbkBtaXhpbiB0aHVtYm5haWwtbGluayB7XG4gIHRyYW5zaXRpb246ICR0aHVtYm5haWwtdHJhbnNpdGlvbjtcblxuICAmOmhvdmVyLFxuICAmOmZvY3VzIHtcbiAgICBib3gtc2hhZG93OiAkdGh1bWJuYWlsLXNoYWRvdy1ob3ZlcjtcbiAgfVxuXG4gIGltYWdlIHtcbiAgICBib3gtc2hhZG93OiBub25lO1xuICB9XG59XG5cbkBtaXhpbiBmb3VuZGF0aW9uLXRodW1ibmFpbCB7XG4gIC50aHVtYm5haWwge1xuICAgIEBpbmNsdWRlIHRodW1ibmFpbDtcbiAgfVxuXG4gIGEudGh1bWJuYWlsIHtcbiAgICBAaW5jbHVkZSB0aHVtYm5haWwtbGluaztcbiAgfVxufVxuIiwiLy8gRm91bmRhdGlvbiBmb3IgU2l0ZXMgYnkgWlVSQlxuLy8gZm91bmRhdGlvbi56dXJiLmNvbVxuLy8gTGljZW5zZWQgdW5kZXIgTUlUIE9wZW4gU291cmNlXG5cbi8vLy9cbi8vLyBAZ3JvdXAgdGl0bGUtYmFyXG4vLy8vXG5cbi8vLyBCYWNrZ3JvdW5kIGNvbG9yIG9mIGEgdGl0bGUgYmFyLlxuLy8vIEB0eXBlIENvbG9yXG4kdGl0bGViYXItYmFja2dyb3VuZDogJGJsYWNrICFkZWZhdWx0O1xuXG4vLy8gQ29sb3Igb2YgdGV4dCBpbnNpZGUgYSB0aXRsZSBiYXIuXG4vLy8gQHR5cGUgQ29sb3JcbiR0aXRsZWJhci1jb2xvcjogJHdoaXRlICFkZWZhdWx0O1xuXG4vLy8gUGFkZGluZyBpbnNpZGUgYSB0aXRsZSBiYXIuXG4vLy8gQHR5cGUgTGVuZ3RoXG4kdGl0bGViYXItcGFkZGluZzogMC41cmVtICFkZWZhdWx0O1xuXG4vLy8gRm9udCB3ZWlnaHQgb2YgdGV4dCBpbnNpZGUgYSB0aXRsZSBiYXIuXG4vLy8gQHR5cGUgV2VpZ2h0XG4kdGl0bGViYXItdGV4dC1mb250LXdlaWdodDogYm9sZCAhZGVmYXVsdDtcblxuLy8vIENvbG9yIG9mIG1lbnUgaWNvbnMgaW5zaWRlIGEgdGl0bGUgYmFyLlxuLy8vIEB0eXBlIENvbG9yXG4kdGl0bGViYXItaWNvbi1jb2xvcjogJHdoaXRlICFkZWZhdWx0O1xuXG4vLy8gQ29sb3Igb2YgbWVudSBpY29ucyBpbnNpZGUgYSB0aXRsZSBiYXIgb24gaG92ZXIuXG4vLy8gQHR5cGUgQ29sb3JcbiR0aXRsZWJhci1pY29uLWNvbG9yLWhvdmVyOiAkbWVkaXVtLWdyYXkgIWRlZmF1bHQ7XG5cbi8vLyBTcGFjaW5nIGJldHdlZW4gdGhlIG1lbnUgaWNvbiBhbmQgdGV4dCBpbnNpZGUgYSB0aXRsZSBiYXIuXG4vLy8gQHR5cGUgTGVuZ3RoXG4kdGl0bGViYXItaWNvbi1zcGFjaW5nOiAwLjI1cmVtICFkZWZhdWx0O1xuXG5AbWl4aW4gZm91bmRhdGlvbi10aXRsZS1iYXIge1xuICAudGl0bGUtYmFyIHtcbiAgICBwYWRkaW5nOiAkdGl0bGViYXItcGFkZGluZztcbiAgICBiYWNrZ3JvdW5kOiAkdGl0bGViYXItYmFja2dyb3VuZDtcbiAgICBjb2xvcjogJHRpdGxlYmFyLWNvbG9yO1xuXG4gICAgQGlmICRnbG9iYWwtZmxleGJveCB7XG4gICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAganVzdGlmeS1jb250ZW50OiBmbGV4LXN0YXJ0O1xuICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICB9XG4gICAgQGVsc2Uge1xuICAgICAgQGluY2x1ZGUgY2xlYXJmaXg7XG4gICAgfVxuXG4gICAgLm1lbnUtaWNvbiB7XG4gICAgICBtYXJnaW4tI3skZ2xvYmFsLWxlZnR9OiAkdGl0bGViYXItaWNvbi1zcGFjaW5nO1xuICAgICAgbWFyZ2luLSN7JGdsb2JhbC1yaWdodH06ICR0aXRsZWJhci1pY29uLXNwYWNpbmc7XG4gICAgfVxuICB9XG5cbiAgQGlmICRnbG9iYWwtZmxleGJveCB7XG4gICAgLnRpdGxlLWJhci1sZWZ0LFxuICAgIC50aXRsZS1iYXItcmlnaHQge1xuICAgICAgZmxleDogMSAxIDBweDsgLy8gc2Fzcy1saW50OmRpc2FibGUtbGluZSB6ZXJvLXVuaXRcbiAgICB9XG5cbiAgICAudGl0bGUtYmFyLXJpZ2h0IHtcbiAgICAgIHRleHQtYWxpZ246IHJpZ2h0O1xuICAgIH1cbiAgfVxuICBAZWxzZSB7XG4gICAgLnRpdGxlLWJhci1sZWZ0IHtcbiAgICAgIGZsb2F0OiBsZWZ0O1xuICAgIH1cblxuICAgIC50aXRsZS1iYXItcmlnaHQge1xuICAgICAgZmxvYXQ6IHJpZ2h0O1xuICAgICAgdGV4dC1hbGlnbjogcmlnaHQ7XG4gICAgfVxuICB9XG5cbiAgLnRpdGxlLWJhci10aXRsZSB7XG4gICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgIHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7XG4gICAgZm9udC13ZWlnaHQ6ICR0aXRsZWJhci10ZXh0LWZvbnQtd2VpZ2h0O1xuICB9XG59XG4iLCIvLyBGb3VuZGF0aW9uIGZvciBTaXRlcyBieSBaVVJCXG4vLyBmb3VuZGF0aW9uLnp1cmIuY29tXG4vLyBMaWNlbnNlZCB1bmRlciBNSVQgT3BlbiBTb3VyY2VcblxuLy8vL1xuLy8vIEBncm91cCB0b29sdGlwXG4vLy8vXG5cbi8vLyBEZWZhdWx0IGN1cnNvciBvZiB0aGUgZGVmaW5lZCB0ZXJtLlxuLy8vIEB0eXBlIEtleXdvcmRcbiRoYXMtdGlwLWN1cnNvcjogaGVscCAhZGVmYXVsdDtcblxuLy8vIERlZmF1bHQgZm9udCB3ZWlnaHQgb2YgdGhlIGRlZmluZWQgdGVybS5cbi8vLyBAdHlwZSBLZXl3b3JkIHwgTnVtYmVyXG4kaGFzLXRpcC1mb250LXdlaWdodDogJGdsb2JhbC13ZWlnaHQtYm9sZCAhZGVmYXVsdDtcblxuLy8vIERlZmF1bHQgYm9yZGVyIGJvdHRvbSBvZiB0aGUgZGVmaW5lZCB0ZXJtLlxuLy8vIEB0eXBlIExpc3RcbiRoYXMtdGlwLWJvcmRlci1ib3R0b206IGRvdHRlZCAxcHggJGRhcmstZ3JheSAhZGVmYXVsdDtcblxuLy8vIERlZmF1bHQgY29sb3Igb2YgdGhlIHRvb2x0aXAgYmFja2dyb3VuZC5cbi8vLyBAdHlwZSBDb2xvclxuJHRvb2x0aXAtYmFja2dyb3VuZC1jb2xvcjogJGJsYWNrICFkZWZhdWx0O1xuXG4vLy8gRGVmYXVsdCBjb2xvciBvZiB0aGUgdG9vbHRpcCBmb250LlxuLy8vIEB0eXBlIENvbG9yXG4kdG9vbHRpcC1jb2xvcjogJHdoaXRlICFkZWZhdWx0O1xuXG4vLy8gRGVmYXVsdCBwYWRkaW5nIG9mIHRoZSB0b29sdGlwIGJhY2tncm91bmQuXG4vLy8gQHR5cGUgTnVtYmVyXG4kdG9vbHRpcC1wYWRkaW5nOiAwLjc1cmVtICFkZWZhdWx0O1xuXG4vLy8gRGVmYXVsdCBtYXggd2lkdGggZm9yIHRvb2x0aXBzLlxuLy8vIEB0eXBlIE51bWJlclxuJHRvb2x0aXAtbWF4LXdpZHRoOiAxMHJlbSAhZGVmYXVsdDtcblxuLy8vIERlZmF1bHQgZm9udCBzaXplIG9mIHRoZSB0b29sdGlwIHRleHQuIEJ5IGRlZmF1bHQsIHdlIHJlY29tbWVuZCBhIHNtYWxsZXIgZm9udCBzaXplIHRoYW4gdGhlIGJvZHkgY29weS5cbi8vLyBAdHlwZSBOdW1iZXJcbiR0b29sdGlwLWZvbnQtc2l6ZTogJHNtYWxsLWZvbnQtc2l6ZSAhZGVmYXVsdDtcblxuLy8vIERlZmF1bHQgcGlwIHdpZHRoIGZvciB0b29sdGlwcy5cbi8vLyBAdHlwZSBOdW1iZXJcbiR0b29sdGlwLXBpcC13aWR0aDogMC43NXJlbSAhZGVmYXVsdDtcblxuLy8vIERlZmF1bHQgcGlwIGhlaWdodCBmb3IgdG9vbHRpcHMuIFRoaXMgaXMgaGVscGZ1bCBmb3IgY2FsY3VsYXRpbmcgdGhlIGRpc3RhbmNlIG9mIHRoZSB0b29sdGlwIGZyb20gdGhlIHRvb2x0aXAgd29yZC5cbi8vLyBAdHlwZSBOdW1iZXJcbiR0b29sdGlwLXBpcC1oZWlnaHQ6ICR0b29sdGlwLXBpcC13aWR0aCAqIDAuODY2ICFkZWZhdWx0O1xuXG4vLy8gRGVmYXVsdCByYWRpdXMgZm9yIHRvb2x0aXBzLlxuLy8vIEB0eXBlIE51bWJlclxuJHRvb2x0aXAtcmFkaXVzOiAkZ2xvYmFsLXJhZGl1cyAhZGVmYXVsdDtcblxuQG1peGluIGhhcy10aXAge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcblxuICBib3JkZXItYm90dG9tOiAkaGFzLXRpcC1ib3JkZXItYm90dG9tO1xuICBmb250LXdlaWdodDogJGhhcy10aXAtZm9udC13ZWlnaHQ7XG4gIGN1cnNvcjogJGhhcy10aXAtY3Vyc29yO1xufVxuXG5AbWl4aW4gdG9vbHRpcCB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgdG9wOiBjYWxjKDEwMCUgKyAjeyR0b29sdGlwLXBpcC1oZWlnaHR9KTtcbiAgei1pbmRleDogMTIwMDtcblxuICBtYXgtd2lkdGg6ICR0b29sdGlwLW1heC13aWR0aDtcbiAgcGFkZGluZzogJHRvb2x0aXAtcGFkZGluZztcblxuICBib3JkZXItcmFkaXVzOiAkdG9vbHRpcC1yYWRpdXM7XG4gIGJhY2tncm91bmQtY29sb3I6ICR0b29sdGlwLWJhY2tncm91bmQtY29sb3I7XG4gIGZvbnQtc2l6ZTogJHRvb2x0aXAtZm9udC1zaXplO1xuICBjb2xvcjogJHRvb2x0aXAtY29sb3I7XG5cbiAgJjo6YmVmb3JlIHtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIH1cblxuICAmLmJvdHRvbSB7XG4gICAgJjo6YmVmb3JlIHtcbiAgICAgIEBpbmNsdWRlIGNzcy10cmlhbmdsZSgkdG9vbHRpcC1waXAtd2lkdGgsICR0b29sdGlwLWJhY2tncm91bmQtY29sb3IsIHVwKTtcbiAgICAgIGJvdHRvbTogMTAwJTtcbiAgICB9XG5cbiAgICAmLmFsaWduLWNlbnRlcjo6YmVmb3JlIHtcbiAgICAgIGxlZnQ6IDUwJTtcbiAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWCgtNTAlKTtcbiAgICB9XG4gIH1cblxuICAmLnRvcCB7XG4gICAgJjo6YmVmb3JlIHtcbiAgICAgIEBpbmNsdWRlIGNzcy10cmlhbmdsZSgkdG9vbHRpcC1waXAtd2lkdGgsICR0b29sdGlwLWJhY2tncm91bmQtY29sb3IsIGRvd24pO1xuICAgICAgdG9wOiAxMDAlO1xuICAgICAgYm90dG9tOiBhdXRvO1xuICAgIH1cblxuICAgICYuYWxpZ24tY2VudGVyOjpiZWZvcmUge1xuICAgICAgbGVmdDogNTAlO1xuICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKC01MCUpO1xuICAgIH1cbiAgfVxuXG4gICYubGVmdCB7XG4gICAgJjo6YmVmb3JlIHtcbiAgICAgIEBpbmNsdWRlIGNzcy10cmlhbmdsZSgkdG9vbHRpcC1waXAtd2lkdGgsICR0b29sdGlwLWJhY2tncm91bmQtY29sb3IsIHJpZ2h0KTtcbiAgICAgIGxlZnQ6IDEwMCU7XG4gICAgfVxuXG4gICAgJi5hbGlnbi1jZW50ZXI6OmJlZm9yZSB7XG4gICAgICBib3R0b206IGF1dG87XG4gICAgICB0b3A6IDUwJTtcbiAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgtNTAlKTtcbiAgICB9XG4gIH1cblxuICAmLnJpZ2h0IHtcbiAgICAmOjpiZWZvcmUge1xuICAgICAgQGluY2x1ZGUgY3NzLXRyaWFuZ2xlKCR0b29sdGlwLXBpcC13aWR0aCwgJHRvb2x0aXAtYmFja2dyb3VuZC1jb2xvciwgbGVmdCk7XG4gICAgICByaWdodDogMTAwJTtcbiAgICAgIGxlZnQ6IGF1dG87XG4gICAgfVxuXG4gICAgJi5hbGlnbi1jZW50ZXI6OmJlZm9yZSB7XG4gICAgICBib3R0b206IGF1dG87XG4gICAgICB0b3A6IDUwJTtcbiAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgtNTAlKTtcbiAgICB9XG4gIH1cblxuICAmLmFsaWduLXRvcDo6YmVmb3JlIHtcbiAgICBib3R0b206IGF1dG87XG4gICAgdG9wOiAxMCU7XG4gIH1cblxuICAmLmFsaWduLWJvdHRvbTo6YmVmb3JlIHtcbiAgICBib3R0b206IDEwJTtcbiAgICB0b3A6IGF1dG87XG4gIH1cblxuICAmLmFsaWduLWxlZnQ6OmJlZm9yZSB7XG4gICAgbGVmdDogMTAlO1xuICAgIHJpZ2h0OiBhdXRvO1xuICB9XG5cbiAgJi5hbGlnbi1yaWdodDo6YmVmb3JlIHtcbiAgICBsZWZ0OiBhdXRvO1xuICAgIHJpZ2h0OiAxMCU7XG4gIH1cbn1cblxuQG1peGluIGZvdW5kYXRpb24tdG9vbHRpcCB7XG4gIC5oYXMtdGlwIHtcbiAgICBAaW5jbHVkZSBoYXMtdGlwO1xuICB9XG5cbiAgLnRvb2x0aXAge1xuICAgIEBpbmNsdWRlIHRvb2x0aXA7XG4gIH1cbn1cbiIsIi8vIEZvdW5kYXRpb24gZm9yIFNpdGVzIGJ5IFpVUkJcbi8vIGZvdW5kYXRpb24uenVyYi5jb21cbi8vIExpY2Vuc2VkIHVuZGVyIE1JVCBPcGVuIFNvdXJjZVxuXG4vLy8vXG4vLy8gQGdyb3VwIHRvcC1iYXJcbi8vLy9cblxuLy8vIFBhZGRpbmcgZm9yIHRoZSB0b3AgYmFyLlxuLy8vIEB0eXBlIE51bWJlclxuJHRvcGJhci1wYWRkaW5nOiAwLjVyZW0gIWRlZmF1bHQ7XG5cbi8vLyBCYWNrZ3JvdW5kIGNvbG9yIGZvciB0aGUgdG9wIGJhci4gVGhpcyBjb2xvciBhbHNvIGNhc2NhZGVzIHRvIG1lbnVzIHdpdGhpbiB0aGUgdG9wIGJhci5cbi8vLyBAdHlwZSBDb2xvclxuJHRvcGJhci1iYWNrZ3JvdW5kOiAkbGlnaHQtZ3JheSAhZGVmYXVsdDtcblxuLy8vIEJhY2tncm91bmQgY29sb3Igc3VibWVudXMgd2l0aGluIHRoZSB0b3AgYmFyLiBVc2VmdWxsIGlmICR0b3BiYXItYmFja2dyb3VuZCBpcyB0cmFuc3BhcmVudC5cbi8vLyBAdHlwZSBDb2xvclxuJHRvcGJhci1zdWJtZW51LWJhY2tncm91bmQ6ICR0b3BiYXItYmFja2dyb3VuZCAhZGVmYXVsdDtcblxuLy8vIFNwYWNpbmcgZm9yIHRoZSB0b3AgYmFyIHRpdGxlLlxuLy8vIEB0eXBlIE51bWJlclxuJHRvcGJhci10aXRsZS1zcGFjaW5nOiAwLjVyZW0gMXJlbSAwLjVyZW0gMCAhZGVmYXVsdDtcblxuLy8vIE1heGltdW0gd2lkdGggb2YgYDxpbnB1dD5gIGVsZW1lbnRzIGluc2lkZSB0aGUgdG9wIGJhci5cbi8vLyBAdHlwZSBOdW1iZXJcbiR0b3BiYXItaW5wdXQtd2lkdGg6IDIwMHB4ICFkZWZhdWx0O1xuXG4vLy8gQnJlYWtwb2ludCBhdCB3aGljaCB0b3AgYmFyIHN3aXRjaGVzIGZyb20gbW9iaWxlIHRvIGRlc2t0b3Agdmlldy5cbi8vLyBAdHlwZSBCcmVha3BvaW50XG4kdG9wYmFyLXVuc3RhY2stYnJlYWtwb2ludDogbWVkaXVtICFkZWZhdWx0O1xuXG4vLy8gQWRkcyBzdHlsZXMgZm9yIGEgdG9wIGJhciBjb250YWluZXIuXG5AbWl4aW4gdG9wLWJhci1jb250YWluZXIge1xuICBAaWYgJGdsb2JhbC1mbGV4Ym94IHtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIGZsZXgtd3JhcDogbm93cmFwO1xuICAgIGp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2VlbjtcbiAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICB9XG4gIEBlbHNlIHtcbiAgICBAaW5jbHVkZSBjbGVhcmZpeDtcbiAgfVxuXG4gIHBhZGRpbmc6ICR0b3BiYXItcGFkZGluZztcblxuICAmLFxuICB1bCB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogJHRvcGJhci1iYWNrZ3JvdW5kO1xuICB9XG5cbiAgLy8gQ2hlY2sgaWYgJHRvcGJhci1iYWNrZ3JvdW5kIGlzIGRpZmZlcm50IGZyb20gJHRvcGJhci1iYWNrZ3JvdW5kLXN1Ym1lbnVcbiAgQGlmICgkdG9wYmFyLWJhY2tncm91bmQgIT0gJHRvcGJhci1zdWJtZW51LWJhY2tncm91bmQpIHtcbiAgICB1bCB1bCB7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkdG9wYmFyLXN1Ym1lbnUtYmFja2dyb3VuZDtcbiAgICB9XG4gIH1cblxuICAvLyBSZXN0cmFpbiB3aWR0aCBvZiBpbnB1dHMgYnkgZGVmYXVsdCB0byBtYWtlIHRoZW0gZWFzaWVyIHRvIGFycmFuZ2VcbiAgaW5wdXQge1xuICAgIG1heC13aWR0aDogJHRvcGJhci1pbnB1dC13aWR0aDtcbiAgICBtYXJnaW4tI3skZ2xvYmFsLXJpZ2h0fTogMXJlbTtcbiAgfVxuXG4gIC8vIFRoZSBhYm92ZSBzdHlsZXMgc2hvdWxkbid0IGFwcGx5IHRvIGlucHV0IGdyb3VwIGZpZWxkc1xuICAuaW5wdXQtZ3JvdXAtZmllbGQge1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIG1hcmdpbi0jeyRnbG9iYWwtcmlnaHR9OiAwO1xuICB9XG5cbiAgaW5wdXQuYnV0dG9uIHsgLy8gc2Fzcy1saW50OmRpc2FibGUtbGluZSBuby1xdWFsaWZ5aW5nLWVsZW1lbnRzXG4gICAgd2lkdGg6IGF1dG87XG4gIH1cbn1cblxuLy8vIE1ha2VzIHNlY3Rpb25zIG9mIGEgdG9wIGJhciBzdGFjayBvbiB0b3Agb2YgZWFjaCBvdGhlci5cbkBtaXhpbiB0b3AtYmFyLXN0YWNrZWQge1xuICBAaWYgJGdsb2JhbC1mbGV4Ym94IHtcbiAgICBmbGV4LXdyYXA6IHdyYXA7XG5cbiAgICAvLyBTdWItc2VjdGlvbnNcbiAgICAudG9wLWJhci1sZWZ0LFxuICAgIC50b3AtYmFyLXJpZ2h0IHtcbiAgICAgIGZsZXg6IDAgMCAxMDAlO1xuICAgICAgbWF4LXdpZHRoOiAxMDAlO1xuICAgIH1cbiAgfVxuICBAZWxzZSB7XG4gICAgLy8gU3ViLXNlY3Rpb25zXG4gICAgLnRvcC1iYXItbGVmdCxcbiAgICAudG9wLWJhci1yaWdodCB7XG4gICAgICB3aWR0aDogMTAwJTtcbiAgICB9XG4gIH1cbn1cblxuLy8vIFVuZG9lcyB0aGUgQ1NTIGFwcGxpZWQgYnkgdGhlIGB0b3AtYmFyLXN0YWNrZWQoKWAgbWl4aW4uXG5AbWl4aW4gdG9wLWJhci11bnN0YWNrIHtcbiAgQGlmICRnbG9iYWwtZmxleGJveCB7XG4gICAgZmxleC13cmFwOiBub3dyYXA7XG5cbiAgICAudG9wLWJhci1sZWZ0IHtcbiAgICAgIGZsZXg6IDEgMSBhdXRvO1xuICAgICAgbWFyZ2luLXJpZ2h0OiBhdXRvO1xuICAgIH1cblxuICAgIC50b3AtYmFyLXJpZ2h0IHtcbiAgICAgIGZsZXg6IDAgMSBhdXRvO1xuICAgICAgbWFyZ2luLWxlZnQ6IGF1dG87XG4gICAgfVxuICB9XG4gIEBlbHNlIHtcbiAgICAudG9wLWJhci1sZWZ0LFxuICAgIC50b3AtYmFyLXJpZ2h0IHtcbiAgICAgIHdpZHRoOiBhdXRvO1xuICAgIH1cbiAgfVxufVxuXG5AbWl4aW4gZm91bmRhdGlvbi10b3AtYmFyIHtcbiAgLy8gVG9wIGJhciBjb250YWluZXJcbiAgLnRvcC1iYXIge1xuICAgIEBpbmNsdWRlIHRvcC1iYXItY29udGFpbmVyO1xuXG4gICAgLy8gU3RhY2sgb24gc21hbGwgc2NyZWVucyBieSBkZWZhdWx0XG4gICAgQGluY2x1ZGUgdG9wLWJhci1zdGFja2VkO1xuXG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludCgkdG9wYmFyLXVuc3RhY2stYnJlYWtwb2ludCkge1xuICAgICAgQGluY2x1ZGUgdG9wLWJhci11bnN0YWNrO1xuICAgIH1cblxuICAgIC8vIEdlbmVyYXRlIGNsYXNzZXMgZm9yIHN0YWNraW5nIG9uIGVhY2ggc2NyZWVuIHNpemUgKGRlZmluZWQgaW4gJGJyZWFrcG9pbnQtY2xhc3NlcylcbiAgICBAZWFjaCAkc2l6ZSBpbiAkYnJlYWtwb2ludC1jbGFzc2VzIHtcbiAgICAgIEBpZiAkc2l6ZSAhPSAkLXpmLXplcm8tYnJlYWtwb2ludCB7XG4gICAgICAgICYuc3RhY2tlZC1mb3ItI3skc2l6ZX0ge1xuICAgICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoJHNpemUgZG93bikge1xuICAgICAgICAgICAgQGluY2x1ZGUgdG9wLWJhci1zdGFja2VkO1xuICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgfVxuXG4gIC8vIFN1Yi1zZWN0aW9uc1xuICBAaWYgJGdsb2JhbC1mbGV4Ym94IHtcbiAgICAudG9wLWJhci10aXRsZSB7XG4gICAgICBmbGV4OiAwIDAgYXV0bztcbiAgICAgIG1hcmdpbjogJHRvcGJhci10aXRsZS1zcGFjaW5nO1xuICAgIH1cblxuICAgIC50b3AtYmFyLWxlZnQsXG4gICAgLnRvcC1iYXItcmlnaHQge1xuICAgICAgZmxleDogMCAwIGF1dG87XG4gICAgfVxuICB9XG4gIEBlbHNlIHtcbiAgICAudG9wLWJhci10aXRsZSB7XG4gICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgICBmbG9hdDogbGVmdDtcbiAgICAgIHBhZGRpbmc6ICR0b3BiYXItdGl0bGUtc3BhY2luZztcblxuICAgICAgLm1lbnUtaWNvbiB7XG4gICAgICAgIGJvdHRvbTogMnB4O1xuICAgICAgfVxuICAgIH1cblxuICAgIC50b3AtYmFyLWxlZnQge1xuICAgICAgZmxvYXQ6IGxlZnQ7XG4gICAgfVxuXG4gICAgLnRvcC1iYXItcmlnaHQge1xuICAgICAgZmxvYXQ6IHJpZ2h0O1xuICAgIH1cbiAgfVxufVxuIiwiLy8gRm91bmRhdGlvbiBmb3IgU2l0ZXMgYnkgWlVSQlxuLy8gZm91bmRhdGlvbi56dXJiLmNvbVxuLy8gTGljZW5zZWQgdW5kZXIgTUlUIE9wZW4gU291cmNlXG5cbi8vLyBIaWRlIGFuIGVsZW1lbnQgYnkgZGVmYXVsdCwgb25seSBkaXNwbGF5aW5nIGl0IGFib3ZlIGEgY2VydGFpbiBzY3JlZW4gc2l6ZS5cbi8vLyBAcGFyYW0ge0tleXdvcmR9ICRzaXplIC0gQnJlYWtwb2ludCB0byB1c2UuICoqTXVzdCBiZSBhIGJyZWFrcG9pbnQgZGVmaW5lZCBpbiBgJGJyZWFrcG9pbnRzYC4qKlxuQG1peGluIHNob3ctZm9yKCRzaXplKSB7XG4gICRzaXplOiBtYXAtZ2V0KCRicmVha3BvaW50cywgJHNpemUpO1xuICAkc2l6ZTogLXpmLWJwLXRvLWVtKCRzaXplKSAtICgxIC8gMTYpO1xuXG4gIEBpbmNsdWRlIGJyZWFrcG9pbnQoJHNpemUgZG93bikge1xuICAgIGRpc3BsYXk6IG5vbmUgIWltcG9ydGFudDtcbiAgfVxufVxuXG4vLy8gSGlkZSBhbiBlbGVtZW50IGJ5IGRlZmF1bHQsIG9ubHkgZGlzcGxheWluZyBpdCB3aXRoaW4gYSBjZXJ0YWluIGJyZWFrcG9pbnQuXG4vLy8gQHBhcmFtIHtLZXl3b3JkfSAkc2l6ZSAtIEJyZWFrcG9pbnQgdG8gdXNlLiAqKk11c3QgYmUgYSBicmVha3BvaW50IGRlZmluZWQgaW4gYCRicmVha3BvaW50c2AuKipcbkBtaXhpbiBzaG93LWZvci1vbmx5KCRzaXplKSB7XG4gICRsb3dlci1ib3VuZC1zaXplOiBtYXAtZ2V0KCRicmVha3BvaW50cywgJHNpemUpO1xuICAkdXBwZXItYm91bmQtc2l6ZTogLXpmLW1hcC1uZXh0KCRicmVha3BvaW50cywgJHNpemUpO1xuXG4gIC8vIG1vcmUgb2Z0ZW4gdGhhbiBub3QgdGhpcyB3aWxsIGJlIGNvcnJlY3QsIGp1c3Qgb25lIHRpbWUgcm91bmQgdGhlIGxvb3AgaXQgd29uJ3Qgc28gc2V0IGluIHNjb3BlIGhlcmVcbiAgJGxvd2VyLWJvdW5kOiAtemYtYnAtdG8tZW0oJGxvd2VyLWJvdW5kLXNpemUpIC0gKDEgLyAxNik7XG4gIC8vIHRlc3QgYWN0dWFsIGxvd2VyLWJvdW5kLXNpemUsIGlmIDAgc2V0IGl0IHRvIDBlbVxuICBAaWYgc3RyaXAtdW5pdCgkbG93ZXItYm91bmQtc2l6ZSkgPT0gMCB7XG4gICAgJGxvd2VyLWJvdW5kOiAtemYtYnAtdG8tZW0oJGxvd2VyLWJvdW5kLXNpemUpO1xuICB9XG5cbiAgQGlmICR1cHBlci1ib3VuZC1zaXplID09IG51bGwge1xuICAgIEBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6ICRsb3dlci1ib3VuZCkge1xuICAgICAgZGlzcGxheTogbm9uZSAhaW1wb3J0YW50O1xuICAgIH1cbiAgfVxuICBAZWxzZSB7XG4gICAgJHVwcGVyLWJvdW5kOiAtemYtYnAtdG8tZW0oJHVwcGVyLWJvdW5kLXNpemUpO1xuXG4gICAgQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogJGxvd2VyLWJvdW5kKSwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiAkdXBwZXItYm91bmQpIHtcbiAgICAgIGRpc3BsYXk6IG5vbmUgIWltcG9ydGFudDtcbiAgICB9XG4gIH1cbn1cblxuXG4vLy8gU2hvdyBhbiBlbGVtZW50IGJ5IGRlZmF1bHQsIGFuZCBoaWRlIGl0IGFib3ZlIGEgY2VydGFpbiBzY3JlZW4gc2l6ZS5cbi8vLyBAcGFyYW0ge0tleXdvcmR9ICRzaXplIC0gQnJlYWtwb2ludCB0byB1c2UuICoqTXVzdCBiZSBhIGJyZWFrcG9pbnQgZGVmaW5lZCBpbiBgJGJyZWFrcG9pbnRzYC4qKlxuQG1peGluIGhpZGUtZm9yKCRzaXplKSB7XG4gIEBpbmNsdWRlIGJyZWFrcG9pbnQoJHNpemUpIHtcbiAgICBkaXNwbGF5OiBub25lICFpbXBvcnRhbnQ7XG4gIH1cbn1cblxuLy8vIFNob3cgYW4gZWxlbWVudCBieSBkZWZhdWx0LCBhbmQgaGlkZSBpdCBhYm92ZSBhIGNlcnRhaW4gc2NyZWVuIHNpemUuXG4vLy8gQHBhcmFtIHtLZXl3b3JkfSAkc2l6ZSAtIEJyZWFrcG9pbnQgdG8gdXNlLiAqKk11c3QgYmUgYSBicmVha3BvaW50IGRlZmluZWQgaW4gYCRicmVha3BvaW50c2AuKipcbkBtaXhpbiBoaWRlLWZvci1vbmx5KCRzaXplKSB7XG4gIEBpbmNsdWRlIGJyZWFrcG9pbnQoJHNpemUgb25seSkge1xuICAgIGRpc3BsYXk6IG5vbmUgIWltcG9ydGFudDtcbiAgfVxufVxuXG5AbWl4aW4gZm91bmRhdGlvbi12aXNpYmlsaXR5LWNsYXNzZXMge1xuICAvLyBCYXNpYyBoaWRpbmcgY2xhc3Nlc1xuICAuaGlkZSB7XG4gICAgZGlzcGxheTogbm9uZSAhaW1wb3J0YW50O1xuICB9XG5cbiAgLmludmlzaWJsZSB7XG4gICAgdmlzaWJpbGl0eTogaGlkZGVuO1xuICB9XG5cbiAgLy8gUmVzcG9uc2l2ZSB2aXNpYmlsaXR5IGNsYXNzZXNcbiAgQGVhY2ggJHNpemUgaW4gJGJyZWFrcG9pbnQtY2xhc3NlcyB7XG4gICAgQGlmICRzaXplICE9ICQtemYtemVyby1icmVha3BvaW50IHtcbiAgICAgIC5oaWRlLWZvci0jeyRzaXplfSB7XG4gICAgICAgIEBpbmNsdWRlIGhpZGUtZm9yKCRzaXplKTtcbiAgICAgIH1cblxuICAgICAgLnNob3ctZm9yLSN7JHNpemV9IHtcbiAgICAgICAgQGluY2x1ZGUgc2hvdy1mb3IoJHNpemUpO1xuICAgICAgfVxuICAgIH1cblxuICAgIC5oaWRlLWZvci0jeyRzaXplfS1vbmx5IHtcbiAgICAgIEBpbmNsdWRlIGhpZGUtZm9yLW9ubHkoJHNpemUpO1xuICAgIH1cblxuICAgIC5zaG93LWZvci0jeyRzaXplfS1vbmx5IHtcbiAgICAgIEBpbmNsdWRlIHNob3ctZm9yLW9ubHkoJHNpemUpO1xuICAgIH1cbiAgfVxuXG4gIC8vIFNjcmVlbiByZWFkZXIgdmlzaWJpbGl0eSBjbGFzc2VzXG4gIC8vIE5lZWQgYSBcImhpZGUtZm9yLXNyXCIgY2xhc3M/IEFkZCBhcmlhLWhpZGRlbj0ndHJ1ZScgdG8gdGhlIGVsZW1lbnRcbiAgLnNob3ctZm9yLXNyLFxuICAuc2hvdy1vbi1mb2N1cyB7XG4gICAgQGluY2x1ZGUgZWxlbWVudC1pbnZpc2libGU7XG4gIH1cblxuICAvLyBPbmx5IGRpc3BsYXkgdGhlIGVsZW1lbnQgd2hlbiBpdCdzIGZvY3VzZWRcbiAgLnNob3ctb24tZm9jdXMge1xuICAgICY6YWN0aXZlLFxuICAgICY6Zm9jdXMge1xuICAgICAgQGluY2x1ZGUgZWxlbWVudC1pbnZpc2libGUtb2ZmO1xuICAgIH1cbiAgfVxuXG4gIC8vIExhbmRzY2FwZSBhbmQgcG9ydHJhaXQgdmlzaWJpbGl0eVxuICAuc2hvdy1mb3ItbGFuZHNjYXBlLFxuICAuaGlkZS1mb3ItcG9ydHJhaXQge1xuICAgIGRpc3BsYXk6IGJsb2NrICFpbXBvcnRhbnQ7XG5cbiAgICBAaW5jbHVkZSBicmVha3BvaW50KGxhbmRzY2FwZSkge1xuICAgICAgZGlzcGxheTogYmxvY2sgIWltcG9ydGFudDtcbiAgICB9XG5cbiAgICBAaW5jbHVkZSBicmVha3BvaW50KHBvcnRyYWl0KSB7XG4gICAgICBkaXNwbGF5OiBub25lICFpbXBvcnRhbnQ7XG4gICAgfVxuICB9XG5cbiAgLmhpZGUtZm9yLWxhbmRzY2FwZSxcbiAgLnNob3ctZm9yLXBvcnRyYWl0IHtcbiAgICBkaXNwbGF5OiBub25lICFpbXBvcnRhbnQ7XG5cbiAgICBAaW5jbHVkZSBicmVha3BvaW50KGxhbmRzY2FwZSkge1xuICAgICAgZGlzcGxheTogbm9uZSAhaW1wb3J0YW50O1xuICAgIH1cblxuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQocG9ydHJhaXQpIHtcbiAgICAgIGRpc3BsYXk6IGJsb2NrICFpbXBvcnRhbnQ7XG4gICAgfVxuICB9XG59XG4iLCIvLyBGb3VuZGF0aW9uIGZvciBTaXRlcyBieSBaVVJCXG4vLyBmb3VuZGF0aW9uLnp1cmIuY29tXG4vLyBMaWNlbnNlZCB1bmRlciBNSVQgT3BlbiBTb3VyY2VcblxuLy8vL1xuLy8vIEBncm91cCBmbG9hdFxuLy8vL1xuXG5AbWl4aW4gZm91bmRhdGlvbi1mbG9hdC1jbGFzc2VzIHtcbiAgLmZsb2F0LWxlZnQge1xuICAgIGZsb2F0OiBsZWZ0ICFpbXBvcnRhbnQ7XG4gIH1cblxuICAuZmxvYXQtcmlnaHQge1xuICAgIGZsb2F0OiByaWdodCAhaW1wb3J0YW50O1xuICB9XG5cbiAgLmZsb2F0LWNlbnRlciB7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgbWFyZ2luLXJpZ2h0OiBhdXRvO1xuICAgIG1hcmdpbi1sZWZ0OiBhdXRvO1xuICB9XG5cbiAgLmNsZWFyZml4IHtcbiAgICBAaW5jbHVkZSBjbGVhcmZpeDtcbiAgfVxufVxuIiwiLy8vIEFwcGxpZXMgYmFzaWMgdHJhbnNpdGlvbiBzZXR0aW5ncyB0byBhbiBlbGVtZW50LlxuLy8vIEBwYXJhbSB7RHVyYXRpb259ICRkdXJhdGlvbiBbbnVsbF0gLSBMZW5ndGggKHNwZWVkKSBvZiB0aGUgdHJhbnNpdGlvbi5cbi8vLyBAcGFyYW0ge0tleXdvcmR8RnVuY3Rpb259ICR0aW1pbmcgW251bGxdIC0gRWFzaW5nIG9mIHRoZSB0cmFuc2l0aW9uLlxuLy8vIEBwYXJhbSB7RHVyYXRpb259ICRkZWxheSBbbnVsbF0gLSBEZWxheSBpbiBzZWNvbmRzIG9yIG1pbGxpc2Vjb25kcyBiZWZvcmUgdGhlIHRyYW5zaXRpb24gc3RhcnRzLlxuQG1peGluIHRyYW5zaXRpb24tYmFzaWNzKFxuICAkZHVyYXRpb246IG51bGwsXG4gICR0aW1pbmc6IG51bGwsXG4gICRkZWxheTogbnVsbFxuKSB7XG4gIEBpbmNsdWRlIC1tb3Rpb24tdWktZGVmYXVsdHM7XG4gIHRyYW5zaXRpb24tZHVyYXRpb246ICRkdXJhdGlvbjtcbiAgdHJhbnNpdGlvbi10aW1pbmctZnVuY3Rpb246ICR0aW1pbmc7XG4gIHRyYW5zaXRpb24tZGVsYXk6ICRkZWxheTtcbn1cblxuLy8vIFdyYXBzIHRoZSBjb250ZW50IGluIHRoZSBzZXR1cCBjbGFzcyBmb3IgYSB0cmFuc2l0aW9uLlxuLy8vIEBwYXJhbSB7S2V5d29yZH0gJGRpciAtIFN0YXRlIHRvIHNldHVwIGZvciB0cmFuc2l0aW9uLlxuQG1peGluIHRyYW5zaXRpb24tc3RhcnQoJGRpcikge1xuICAkc2VsZWN0b3I6IC1tdWktYnVpbGQtc2VsZWN0b3IobWFwLWdldCgkbW90aW9uLXVpLXN0YXRlcywgJGRpcikpO1xuXG4gIEBhdC1yb290IHtcbiAgICAjeyRzZWxlY3Rvcn0ge1xuICAgICAgQGNvbnRlbnQ7XG4gICAgfVxuICB9XG59XG5cbi8vLyBXcmFwcyB0aGUgY29udGVudCBpbiB0aGUgYWN0aXZlIGNsYXNzIGZvciBhIHRyYW5zaXRpb24uXG4vLy8gQHBhcmFtIHtLZXl3b3JkfSAkZGlyIC0gU3RhdGUgdG8gYWN0aXZhdGUgYSB0cmFuc2l0aW9uIG9uLlxuQG1peGluIHRyYW5zaXRpb24tZW5kKCRkaXIpIHtcbiAgJHNlbGVjdG9yOiAtbXVpLWJ1aWxkLXNlbGVjdG9yKG1hcC1nZXQoJG1vdGlvbi11aS1zdGF0ZXMsICRkaXIpLCB0cnVlKTtcblxuICBAYXQtcm9vdCB7XG4gICAgI3skc2VsZWN0b3J9IHtcbiAgICAgIEBjb250ZW50O1xuICAgIH1cbiAgfVxufVxuXG4vLy8gQWRkcyBzdHlsZXMgZm9yIGEgc3RhZ2dlciBhbmltYXRpb24sIHdoaWNoIGNhbiBiZSB1c2VkIHdpdGggQW5ndWxhcidzIGBuZy1yZXBlYXRgLlxuLy8vIEBwYXJhbSB7RHVyYXRpb259ICRkZWxheS1hbW91bnQgLSBBbW91bnQgb2YgdGltZSBpbiBzZWNvbmRzIG9yIG1pbGxpc2Vjb25kcyB0byBhZGQgYmV0d2VlbiBlYWNoIGl0ZW0ncyBhbmltYXRpb24uXG5AbWl4aW4gc3RhZ2dlcigkZGVsYXktYW1vdW50KSB7XG4gIHRyYW5zaXRpb24tZGVsYXk6ICRkZWxheS1hbW91bnQ7XG4gIHRyYW5zaXRpb24tZHVyYXRpb246IDA7IC8vIFByZXZlbnQgYWNjaWRlbnRhbCBDU1MgaW5oZXJpdGFuY2Vcbn1cbiIsIi8vIHNjc3MtbGludDpkaXNhYmxlIEltcG9ydGFudFJ1bGUsIFNwYWNlQWZ0ZXJDb21tYSwgU2luZ2xlTGluZVBlclByb3BlcnR5XG5cbkBtaXhpbiAtbW90aW9uLXVpLWRlZmF1bHRzIHtcbiAgdHJhbnNpdGlvbi1kdXJhdGlvbjogbWFwLWdldCgkbW90aW9uLXVpLXNwZWVkcywgZGVmYXVsdCk7XG4gIHRyYW5zaXRpb24tdGltaW5nLWZ1bmN0aW9uOiBtYXAtZ2V0KCRtb3Rpb24tdWktZWFzaW5ncywgZGVmYXVsdCk7XG59XG5cbi8vIFRyYW5zaXRpb25zXG4vLyAtIC0gLSAtIC0gLSAtIC0gLSAtIC0gLSAtIC0gLVxuQG1peGluIG1vdGlvbi11aS10cmFuc2l0aW9ucyB7XG4gIC8vIFNsaWRlXG4gIC5zbGlkZS1pbi1kb3duICAgIHsgQGluY2x1ZGUgbXVpLXNsaWRlKGluLCAgZG93bik7IH1cbiAgLnNsaWRlLWluLWxlZnQgICAgeyBAaW5jbHVkZSBtdWktc2xpZGUoaW4sICByaWdodCk7IH1cbiAgLnNsaWRlLWluLXVwICAgICAgeyBAaW5jbHVkZSBtdWktc2xpZGUoaW4sICB1cCk7IH1cbiAgLnNsaWRlLWluLXJpZ2h0ICAgeyBAaW5jbHVkZSBtdWktc2xpZGUoaW4sICBsZWZ0KTsgfVxuICAuc2xpZGUtb3V0LWRvd24gICB7IEBpbmNsdWRlIG11aS1zbGlkZShvdXQsIGRvd24pOyB9XG4gIC5zbGlkZS1vdXQtcmlnaHQgIHsgQGluY2x1ZGUgbXVpLXNsaWRlKG91dCwgcmlnaHQpOyB9XG4gIC5zbGlkZS1vdXQtdXAgICAgIHsgQGluY2x1ZGUgbXVpLXNsaWRlKG91dCwgdXApOyB9XG4gIC5zbGlkZS1vdXQtbGVmdCAgIHsgQGluY2x1ZGUgbXVpLXNsaWRlKG91dCwgbGVmdCk7IH1cblxuICAvLyBGYWRlXG4gIC5mYWRlLWluICB7IEBpbmNsdWRlIG11aS1mYWRlKGluLCAgMCwgMSk7IH1cbiAgLmZhZGUtb3V0IHsgQGluY2x1ZGUgbXVpLWZhZGUob3V0LCAxLCAwKTsgfVxuXG4gIC8vIEhpbmdlXG4gIC5oaW5nZS1pbi1mcm9tLXRvcCAgICAgIHsgQGluY2x1ZGUgbXVpLWhpbmdlKGluLCAgdG9wKTsgfVxuICAuaGluZ2UtaW4tZnJvbS1yaWdodCAgICB7IEBpbmNsdWRlIG11aS1oaW5nZShpbiwgIHJpZ2h0KTsgfVxuICAuaGluZ2UtaW4tZnJvbS1ib3R0b20gICB7IEBpbmNsdWRlIG11aS1oaW5nZShpbiwgIGJvdHRvbSk7IH1cbiAgLmhpbmdlLWluLWZyb20tbGVmdCAgICAgeyBAaW5jbHVkZSBtdWktaGluZ2UoaW4sICBsZWZ0KTsgfVxuICAuaGluZ2UtaW4tZnJvbS1taWRkbGUteCAgeyBAaW5jbHVkZSBtdWktaGluZ2UoaW4sICB0b3AsICAgY2VudGVyKTsgfVxuICAuaGluZ2UtaW4tZnJvbS1taWRkbGUteSAgeyBAaW5jbHVkZSBtdWktaGluZ2UoaW4sICByaWdodCwgY2VudGVyKTsgfVxuICAuaGluZ2Utb3V0LWZyb20tdG9wICAgICB7IEBpbmNsdWRlIG11aS1oaW5nZShvdXQsIHRvcCk7IH1cbiAgLmhpbmdlLW91dC1mcm9tLXJpZ2h0ICAgeyBAaW5jbHVkZSBtdWktaGluZ2Uob3V0LCByaWdodCk7IH1cbiAgLmhpbmdlLW91dC1mcm9tLWJvdHRvbSAgeyBAaW5jbHVkZSBtdWktaGluZ2Uob3V0LCBib3R0b20pOyB9XG4gIC5oaW5nZS1vdXQtZnJvbS1sZWZ0ICAgIHsgQGluY2x1ZGUgbXVpLWhpbmdlKG91dCwgbGVmdCk7IH1cbiAgLmhpbmdlLW91dC1mcm9tLW1pZGRsZS14IHsgQGluY2x1ZGUgbXVpLWhpbmdlKG91dCwgdG9wLCAgIGNlbnRlcik7IH1cbiAgLmhpbmdlLW91dC1mcm9tLW1pZGRsZS15IHsgQGluY2x1ZGUgbXVpLWhpbmdlKG91dCwgcmlnaHQsIGNlbnRlcik7IH1cblxuICAvLyBTY2FsZVxuICAuc2NhbGUtaW4tdXAgICAgeyBAaW5jbHVkZSBtdWktem9vbShpbiwgIDAuNSwgMSk7IH1cbiAgLnNjYWxlLWluLWRvd24gIHsgQGluY2x1ZGUgbXVpLXpvb20oaW4sICAxLjUsIDEpOyB9XG4gIC5zY2FsZS1vdXQtdXAgICB7IEBpbmNsdWRlIG11aS16b29tKG91dCwgMSwgMS41KTsgfVxuICAuc2NhbGUtb3V0LWRvd24geyBAaW5jbHVkZSBtdWktem9vbShvdXQsIDEsIDAuNSk7IH1cblxuICAvLyBTcGluXG4gIC5zcGluLWluICAgICB7IEBpbmNsdWRlIG11aS1zcGluKGluLCAgY3cpOyB9XG4gIC5zcGluLW91dCAgICB7IEBpbmNsdWRlIG11aS1zcGluKG91dCwgY3cpOyB9XG4gIC5zcGluLWluLWNjdyAgeyBAaW5jbHVkZSBtdWktc3BpbihpbiwgIGNjdyk7IH1cbiAgLnNwaW4tb3V0LWNjdyB7IEBpbmNsdWRlIG11aS1zcGluKG91dCwgY2N3KTsgfVxuXG4gIC8vIFRyYW5zaXRpb24gTW9kaWZpZXJzXG4gIC8vIC0gLSAtIC0gLSAtIC0gLSAtIC0gLSAtIC0gLSAtXG5cbiAgQGVhY2ggJG5hbWUsICR2YWx1ZSBpbiAkbW90aW9uLXVpLXNwZWVkcyB7XG4gICAgQGlmICRuYW1lICE9IGRlZmF1bHQge1xuICAgICAgLiN7JG5hbWV9IHsgdHJhbnNpdGlvbi1kdXJhdGlvbjogJHZhbHVlICFpbXBvcnRhbnQ7IH1cbiAgICB9XG4gIH1cblxuICBAZWFjaCAkbmFtZSwgJHZhbHVlIGluICRtb3Rpb24tdWktZWFzaW5ncyB7XG4gICAgQGlmICRuYW1lICE9IGRlZmF1bHQge1xuICAgICAgLiN7JG5hbWV9IHsgdHJhbnNpdGlvbi10aW1pbmctZnVuY3Rpb246ICR2YWx1ZSAhaW1wb3J0YW50OyB9XG4gICAgfVxuICB9XG5cbiAgQGVhY2ggJG5hbWUsICR2YWx1ZSBpbiAkbW90aW9uLXVpLWRlbGF5cyB7XG4gICAgQGlmICRuYW1lICE9IGRlZmF1bHQge1xuICAgICAgLiN7JG5hbWV9LWRlbGF5IHsgdHJhbnNpdGlvbi1kZWxheTogJHZhbHVlICFpbXBvcnRhbnQ7IH1cbiAgICB9XG4gIH1cbn1cblxuLy8gQW5pbWF0aW9uc1xuLy8gLSAtIC0gLSAtIC0gLSAtIC0gLSAtIC0gLSAtIC1cbkBtaXhpbiBtb3Rpb24tdWktYW5pbWF0aW9ucyB7XG4gIC5zaGFrZSAgICB7IEBpbmNsdWRlIG11aS1hbmltYXRpb24oc2hha2UpOyB9XG4gIC5zcGluLWN3ICB7IEBpbmNsdWRlIG11aS1hbmltYXRpb24oc3Bpbik7IH1cbiAgLnNwaW4tY2N3IHsgQGluY2x1ZGUgbXVpLWFuaW1hdGlvbihzcGluKGNjdykpOyB9XG4gIC53aWdnbGUgICB7IEBpbmNsdWRlIG11aS1hbmltYXRpb24od2lnZ2xlKTsgfVxuXG4gIC5zaGFrZSxcbiAgLnNwaW4tY3csXG4gIC5zcGluLWNjdyxcbiAgLndpZ2dsZSB7XG4gICAgYW5pbWF0aW9uLWR1cmF0aW9uOiBtYXAtZ2V0KCRtb3Rpb24tdWktc3BlZWRzLCBkZWZhdWx0KTtcbiAgfVxuXG4gIC8vIEFuaW1hdGlvbiBNb2RpZmllcnNcbiAgLy8gLSAtIC0gLSAtIC0gLSAtIC0gLSAtIC0gLSAtIC1cbiAgLmluZmluaXRlIHsgYW5pbWF0aW9uLWl0ZXJhdGlvbi1jb3VudDogaW5maW5pdGU7IH1cblxuICBAZWFjaCAkbmFtZSwgJHZhbHVlIGluICRtb3Rpb24tdWktc3BlZWRzIHtcbiAgICBAaWYgJG5hbWUgIT0gZGVmYXVsdCB7XG4gICAgICAuI3skbmFtZX0geyBhbmltYXRpb24tZHVyYXRpb246ICR2YWx1ZSAhaW1wb3J0YW50OyB9XG4gICAgfVxuICB9XG5cbiAgQGVhY2ggJG5hbWUsICR2YWx1ZSBpbiAkbW90aW9uLXVpLWVhc2luZ3Mge1xuICAgIEBpZiAkbmFtZSAhPSBkZWZhdWx0IHtcbiAgICAgIC4jeyRuYW1lfSB7IGFuaW1hdGlvbi10aW1pbmctZnVuY3Rpb246ICR2YWx1ZSAhaW1wb3J0YW50OyB9XG4gICAgfVxuICB9XG5cbiAgQGVhY2ggJG5hbWUsICR2YWx1ZSBpbiAkbW90aW9uLXVpLWRlbGF5cyB7XG4gICAgQGlmICRuYW1lICE9IGRlZmF1bHQge1xuICAgICAgLiN7JG5hbWV9LWRlbGF5IHsgYW5pbWF0aW9uLWRlbGF5OiAkdmFsdWUgIWltcG9ydGFudDsgfVxuICAgIH1cbiAgfVxufVxuIiwiLy8vIEZvcm1hdCBmb3IgQ1NTIGNsYXNzZXMgY3JlYXRlZCB3aXRoIE1vdGlvbiBVSS5cbi8vLyBAdHlwZSBNYXBcbi8vLyBAcHJvcCB7Qm9vbGVhbn0gYXBwZW5kIFt0cnVlXSAtIERlZmluZXMgaWYgc2VsZWN0b3JzIGFyZSBjaGFpbmVkIHRvIHRoZSBzZWxlY3RvciAoYC5jbGFzcy5lbnRlcmApLCBvciBhcHBlbmRlZCBhcyBhIG5ldyBjbGFzcyAoYC5jbGFzcy1lbnRlcmApLlxuLy8vIEBwcm9wIHtTdHJpbmd9IHByZWZpeCBbJ211aS0nXSAtIFByZWZpeCB0byBhZGQgYmVmb3JlIHRoZSBzdGF0ZSBvZiBhIGNsYXNzLiBFbnRlciBhbiBlbXB0eSBzdHJpbmcgdG8gdXNlIG5vIHByZWZpeC5cbi8vLyBAcHJvcCB7U3RyaW5nfSBwcmVmaXggWyctYWN0aXZlJ10gLSBTdWZmaXggdG8gYWRkIHRvIHRoZSBhY3RpdmUgc3RhdGUgY2xhc3MuXG4kbW90aW9uLXVpLWNsYXNzZXM6IChcbiAgY2hhaW46IHRydWUsXG4gIHByZWZpeDogJ211aS0nLFxuICBhY3RpdmU6ICctYWN0aXZlJyxcbikgIWRlZmF1bHQ7XG5cbi8vLyBTdGF0ZSBuYW1lcyB0byByZWZlcmVuY2Ugd2hlbiB3cml0aW5nIG1vdGlvbiBjbGFzc2VzLiBUbyB1c2UgbXVsdGlwbGUgY2xhc3MgbmFtZXMgZm9yIG9uZSBzdGF0ZSwgZW50ZXIgYSBsaXN0IG9mIHN0cmluZ3MgaW5zdGVhZCBvZiBvbmUgc3RyaW5nLlxuLy8vIEB0eXBlIE1hcFxuJG1vdGlvbi11aS1zdGF0ZXM6IChcbiAgaW46ICdlbnRlcicsXG4gIG91dDogJ2xlYXZlJyxcbikgIWRlZmF1bHQ7XG5cbi8vLyBEZWZhdWx0IHNwZWVkIHRoYXQgdHJhbnNpdGlvbnMgYW5kIGFuaW1hdGlvbnMgcGxheSBhdCwgYWxvbmcgd2l0aCB2YWx1ZXMgZm9yIG1vZGlmaWVyIGNsYXNzZXMgdG8gY2hhbmdlIHRoZSBzcGVlZC5cbi8vLyBAdHlwZSBNYXBcbiRtb3Rpb24tdWktc3BlZWRzOiAoXG4gIGRlZmF1bHQ6IDUwMG1zLFxuICBzbG93OiA3NTBtcyxcbiAgZmFzdDogMjUwbXMsXG4pICFkZWZhdWx0O1xuXG4vLy8gRGVmYXVsdCBkZWxheSB0byBhZGQgYmVmb3JlIG1vdGlvbiwgYWxvbmcgd2l0aCB2YWx1ZXMgZm9yIG1vZGlmaWVyIGNsYXNzZXMgdG8gY2hhbmdlIHRoZSBkZWxheS5cbi8vLyBAdHlwZSBNYXBcbiRtb3Rpb24tdWktZGVsYXlzOiAoXG4gIGRlZmF1bHQ6IDAsXG4gIHNob3J0OiAzMDBtcyxcbiAgbG9uZzogNzAwbXMsXG4pICFkZWZhdWx0O1xuXG4vLy8gRGVmYXVsdCBlYXNpbmcgZm9yIHRyYW5zaXRpb25zIGFuZCBhbmltYXRpb25zLCBhbG9uZyB3aXRoIHZhbHVlcyBmb3IgbW9kaWZpZXIgY2xhc3NlcyB0byBjaGFuZ2UgdGhlIGVhc2luZy5cbi8vLyBAdHlwZSBNYXBcbiRtb3Rpb24tdWktZWFzaW5nczogKFxuICBkZWZhdWx0OiBsaW5lYXIsXG4gIGxpbmVhcjogbGluZWFyLFxuICBlYXNlOiBlYXNlLFxuICBlYXNlLWluOiBlYXNlLWluLFxuICBlYXNlLW91dDogZWFzZS1vdXQsXG4gIGVhc2UtaW4tb3V0OiBlYXNlLWluLW91dCxcbiAgYm91bmNlLWluOiBjdWJpYy1iZXppZXIoMC40ODUsIDAuMTU1LCAwLjI0LCAxLjI0NSksXG4gIGJvdW5jZS1vdXQ6IGN1YmljLWJlemllcigwLjQ4NSwgMC4xNTUsIDAuNTE1LCAwLjg0NSksXG4gIGJvdW5jZS1pbi1vdXQ6IGN1YmljLWJlemllcigwLjc2LCAtMC4yNDUsIDAuMjQsIDEuMjQ1KSxcbikgIWRlZmF1bHQ7XG5cbi8vLyBNaXNjZWxsYW5lb3VzIHNldHRpbmdzIHJlbGF0ZWQgdG8gTW90aW9uIFVJLlxuLy8vIEB0eXBlIE1hcFxuLy8vIEBwcm9wIHtCb29sZWFufSBzbGlkZS1hbmQtZmFkZSBbZmFsc2VdIC0gRGVmaW5lcyBpZiBzbGlkZSBtb3Rpb25zIHNob3VsZCBhbHNvIGZhZGUgaW4vb3V0LlxuLy8vIEBwcm9wIHtCb29sZWFufSBzbGlkZS1hbmQtZmFkZSBbdHJ1ZV0gLSBEZWZpbmVzIGlmIGhpbmdlIG1vdGlvbnMgc2hvdWxkIGFsc28gZmFkZSBpbi9vdXQuXG4vLy8gQHByb3Age0Jvb2xlYW59IHNsaWRlLWFuZC1mYWRlIFt0cnVlXSAtIERlZmluZXMgaWYgc2NhbGUgbW90aW9ucyBzaG91bGQgYWxzbyBmYWRlIGluL291dC5cbi8vLyBAcHJvcCB7Qm9vbGVhbn0gc2xpZGUtYW5kLWZhZGUgW3RydWVdIC0gRGVmaW5lcyBpZiBzcGluIG1vdGlvbnMgc2hvdWxkIGFsc28gZmFkZSBpbi9vdXQuXG4kbW90aW9uLXVpLXNldHRpbmdzOiAoXG4gIHNsaWRlLWFuZC1mYWRlOiBmYWxzZSxcbiAgaGluZ2UtYW5kLWZhZGU6IHRydWUsXG4gIHNjYWxlLWFuZC1mYWRlOiB0cnVlLFxuICBzcGluLWFuZC1mYWRlOiB0cnVlLFxuICBhY3RpdmF0ZS1xdWV1ZS1jbGFzczogJ2lzLWFuaW1hdGluZycsXG4pICFkZWZhdWx0O1xuIiwiLy8gSW50ZXJuYWwgY291bnRlciBmb3IgY3JlYXRpbmcgdW5pcXVlIGtleWZyYW1lIG5hbWVzXG4kLW11aS1jdXN0b206IDA7XG5cbi8vLyBDcmVhdGVzIGEga2V5ZnJhbWUgZnJvbSBvbmUgb3IgbW9yZSBlZmZlY3QgZnVuY3Rpb25zLiBVc2UgdGhpcyBmdW5jdGlvbiBpbnN0ZWFkIG9mIGBtdWktYW5pbWF0aW9uYCBpZiB5b3Ugd2FudCB0byBjcmVhdGUgYSBrZXlmcmFtZSBhbmltYXRpb24gKndpdGhvdXQqIGF1dG9tYXRpY2FsbHkgYXNzaWduaW5nIGl0IHRvIHRoZSBlbGVtZW50LlxuLy8vIEBwYXJhbSB7U3RyaW5nfSAkbmFtZSAtIE5hbWUgb2YgdGhlIGtleWZyYW1lLlxuLy8vIEBwYXJhbSB7RnVuY3Rpb259ICRlZmZlY3RzLi4uIC0gT25lIG9yIG1vcmUgZWZmZWN0IGZ1bmN0aW9ucyB0byBidWlsZCB0aGUga2V5ZnJhbWUgd2l0aC5cbkBtaXhpbiBtdWkta2V5ZnJhbWVzKCRuYW1lLCAkZWZmZWN0cy4uLikge1xuICAkb2JqOiAtbXVpLXByb2Nlc3MtYXJncygkZWZmZWN0cy4uLik7XG4gICRvYmo6IG1hcC1yZW1vdmUoJG9iaiwgbmFtZSk7XG5cbiAgQGtleWZyYW1lcyAjeyRuYW1lfSB7XG4gICAgLy8gTm93IGl0ZXJhdGUgdGhyb3VnaCBlYWNoIGtleWZyYW1lIHBlcmNlbnRhZ2VcbiAgICBAZWFjaCAkcGN0LCAkcHJvcHMgaW4gJG9iaiB7XG4gICAgICAjey1tdWkta2V5ZnJhbWUtcGN0KCRwY3QpfSB7XG4gICAgICAgIC8vIExhc3RseSwgaXRlcmF0ZSB0aHJvdWdoIGVhY2ggQ1NTIHByb3BlcnR5IHdpdGhpbiBhIHBlcmNlbnRhZ2UgYW5kIHByaW50IGl0IG91dFxuICAgICAgICBAZWFjaCAkcHJvcCwgJHZhbHVlIGluICRwcm9wcyB7XG4gICAgICAgICAgI3skcHJvcH06ICN7JHZhbHVlfTtcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgfVxufVxuXG4vLy8gQ3JlYXRlcyBhIHN0cmluZyBmb3IgYSBDU1Mga2V5ZnJhbWUsIGJ5IGNvbnZlcnRpbmcgYSBsaXN0IG9mIG51bWJlcnMgdG8gYSBjb21tYS1zZXBhcmF0ZWQgbGlzdCBvZiBwZXJjZW50YWdlIHZhbHVlcy5cbi8vLyBAcGFyYW0ge051bWJlcnxMaXN0fSAkaW5wdXQgLSBMaXN0IG9mIG51bWJlcnMgdG8gdXNlLlxuLy8vIEByZXR1cm4ge1N0cmluZ30gQSBzZXQgb2YgY29tbWEtc2VwYXJhdGVkIHBlcmNlbnRhZ2UgdmFsdWVzLlxuLy8vIEBhY2Nlc3MgcHJpdmF0ZVxuQGZ1bmN0aW9uIC1tdWkta2V5ZnJhbWUtcGN0KCRpbnB1dCkge1xuICAkb3V0cHV0OiAoKTtcblxuICBAaWYgdHlwZS1vZigkaW5wdXQpID09ICdudW1iZXInIHtcbiAgICAkb3V0cHV0OiAoJGlucHV0ICogMSUpO1xuICB9IEBlbHNlIGlmIHR5cGUtb2YoJGlucHV0KSA9PSAnbGlzdCcge1xuICAgIEBlYWNoICRpIGluICRpbnB1dCB7XG4gICAgICAkb3V0cHV0OiBhcHBlbmQoJG91dHB1dCwgKCRpICogMSUpLCBjb21tYSk7XG4gICAgfVxuICB9XG5cbiAgQHJldHVybiAkb3V0cHV0O1xufVxuXG4vLy8gUHJpbnRzIHRoZSBDU1MgcHJvcGVydGllcyBmcm9tIGEgc3BlY2lmaWMga2V5IGluIGEga2V5ZnJhbWVzIG1hcC4gVXNlZCB0byBib3Jyb3cgQ1NTIGZyb20ga2V5ZnJhbWUgZnVuY3Rpb25zIGZvciB1c2UgaW4gdHJhbnNpdGlvbnMuXG4vLy8gQHBhcmFtIHtNYXB9ICRrZiAtIEtleWZyYW1lIG1hcCB0byBleHRyYWN0IGZyb20uXG4vLy8gQHBhcmFtIHtOdW1iZXJ9ICRrZXkgLSBLZXkgaW4gdGhlIG1hcCB0byBwcmludCB0aGUgQ1NTIG9mLlxuLy8vIEBhY2Nlc3MgcHJpdmF0ZVxuQG1peGluIC1tdWkta2V5ZnJhbWUtZ2V0KCRrZiwgJGtleSkge1xuICAkbWFwOiBtYXAtZ2V0KCRrZiwgJGtleSk7XG5cbiAgQGVhY2ggJHByb3AsICR2YWx1ZSBpbiAkbWFwIG9yICgpIHtcbiAgICAvLyBTb21lIGtleWZyYW1lIG1hcHMgc3RvcmUgdHJhbnNmb3JtcyBhcyBxdW90ZWQgc3RyaW5nc1xuICAgIEBpZiB0eXBlLW9mKCR2YWx1ZSkgPT0gJ3N0cmluZycge1xuICAgICAgJHZhbHVlOiB1bnF1b3RlKCR2YWx1ZSk7XG4gICAgfVxuICAgICN7JHByb3B9OiAkdmFsdWU7XG4gIH1cbn1cblxuLy8vIFJlZm9ybWF0cyBhIG1hcCBjb250YWluaW5nIGtleXMgd2l0aCBhIGxpc3Qgb2YgdmFsdWVzLCBzbyB0aGF0IGVhY2gga2V5IGlzIGEgc2luZ2xlIHZhbHVlLlxuLy8vIEBwYXJhbSB7TWFwfSAkbWFwIC0gTWFwIHRvIHNwbGl0IHVwLlxuLy8vIEByZXR1cm4ge01hcH0gQSByZWZvcm1hdHRlZCBtYXAuXG4vLy8gQGFjY2VzcyBwcml2YXRlXG5AZnVuY3Rpb24gLW11aS1rZXlmcmFtZS1zcGxpdCgkbWFwKSB7XG4gICRuZXctbWFwOiAoKTtcblxuICAvLyBTcGxpdCBrZXlzIHdpdGggbXVsdGlwbGUgdmFsdWVzIGludG8gaW5kaXZpZHVhbCBrZXlzXG4gIEBlYWNoICRrZXksICRpdGVtIGluICRtYXAge1xuICAgICRrZXktdHlwZTogdHlwZS1vZigka2V5KTtcblxuICAgIEBpZiAka2V5LXR5cGUgPT0gJ251bWJlcicge1xuICAgICAgJG5ldy1tYXA6IG1hcC1tZXJnZSgkbmV3LW1hcCwgKCRrZXk6ICRpdGVtKSk7XG4gICAgfSBAZWxzZSBpZiAka2V5LXR5cGUgPT0gJ2xpc3QnIHtcbiAgICAgIEBlYWNoICRrIGluICRrZXkge1xuICAgICAgICAkbmV3LW1hcDogbWFwLW1lcmdlKCRuZXctbWFwLCAoJGs6ICRpdGVtKSk7XG4gICAgICB9XG4gICAgfVxuICB9XG5cbiAgQHJldHVybiAkbmV3LW1hcDtcbn1cblxuLy8vIENvbWJpbmVzIGEgc2VyaWVzIG9mIGtleWZyYW1lIG9iamVjdHMgaW50byBvbmUuXG4vLy8gQHBhcmFtIHtNYXB9ICRtYXBzLi4uIC0gQSBzZXJpZXMgb2YgbWFwcyB0byBtZXJnZSwgYXMgaW5kaXZpZHVhbCBwYXJhbWV0ZXJzLlxuLy8vIEByZXR1cm4ge01hcH0gQSBjb21iaW5lZCBrZXlmcmFtZSBvYmplY3QuXG4vLy8gQGFjY2VzcyBwcml2YXRlXG5AZnVuY3Rpb24gLW11aS1rZXlmcmFtZS1jb21iaW5lKCRtYXBzLi4uKSB7XG4gICRuZXctbWFwOiAoKTtcblxuICAvLyBJdGVyYXRlIHRocm91Z2ggZWFjaCBtYXAgcGFzc2VkIGluXG4gIEBlYWNoICRtYXAgaW4gJG1hcHMge1xuICAgIEBpZiB0eXBlLW9mKCRtYXApID09ICdzdHJpbmcnIHtcbiAgICAgICRtYXA6IGNhbGwoZ2V0LWZ1bmN0aW9uKCRtYXApKTtcbiAgICB9XG5cbiAgICAkbWFwOiAtbXVpLWtleWZyYW1lLXNwbGl0KCRtYXApO1xuXG4gICAgLy8gSXRlcmF0ZSB0aHJvdWdoIGVhY2gga2V5ZnJhbWUgaW4gdGhlIG1hcFxuICAgIC8vICRrZXkgaXMgdGhlIGtleWZyYW1lIHBlcmNlbnRhZ2VcbiAgICAvLyAkdmFsdWUgaXMgYSBtYXAgb2YgQ1NTIHByb3BlcnRpZXNcbiAgICBAZWFjaCAka2V5LCAkdmFsdWUgaW4gJG1hcCB7XG4gICAgICAkbmV3LXZhbHVlOiAoKTtcblxuICAgICAgQGlmIG1hcC1oYXMta2V5KCRuZXctbWFwLCAka2V5KSB7XG4gICAgICAgIC8vIElmIHRoZSBtYXAgYWxyZWFkeSBoYXMgdGhlIGtleWZyYW1lICUsIGFwcGVuZCB0aGUgbmV3IHByb3BlcnR5XG4gICAgICAgICRuZXctdmFsdWU6IC1tdWktbWVyZ2UtcHJvcGVydGllcyhtYXAtZ2V0KCRuZXctbWFwLCAka2V5KSwgJHZhbHVlKTtcbiAgICAgIH0gQGVsc2Uge1xuICAgICAgICAvLyBPdGhlcndpc2UsIGNyZWF0ZSBhIG5ldyBtYXAgd2l0aCB0aGUgbmV3IHByb3BlcnR5XG4gICAgICAgICRuZXctdmFsdWU6ICR2YWx1ZTtcbiAgICAgIH1cblxuICAgICAgLy8gRmluYWxseSwgbWVyZ2UgdGhlIG1vZGlmaWVkIGtleWZyYW1lIHZhbHVlIGludG8gdGhlIG91dHB1dCBtYXBcbiAgICAgICRuZXctbWFwOiBtYXAtbWVyZ2UoJG5ldy1tYXAsICgka2V5OiAkbmV3LXZhbHVlKSk7XG4gICAgfVxuICB9XG5cbiAgLy8gTWFrZSBhIG5hbWUgZm9yIHRoZSBrZXlmcmFtZXNcbiAgJC1tdWktY3VzdG9tOiAkLW11aS1jdXN0b20gKyAxICFnbG9iYWw7XG4gICRtYXAtbmFtZTogKG5hbWU6ICdjdXN0b20tI3skLW11aS1jdXN0b219Jyk7XG4gICRuZXctbWFwOiBtYXAtbWVyZ2UoJG5ldy1tYXAsICRtYXAtbmFtZSk7XG5cbiAgQHJldHVybiAkbmV3LW1hcDtcbn1cblxuLy8vIENvbWJpbmVzIHR3byBtYXBzIG9mIENTUyBwcm9wZXJ0aWVzIGludG8gb25lIG1hcC4gSWYgYm90aCBtYXBzIGhhdmUgYSB0cmFuc2Zvcm0gcHJvcGVydHksIHRoZSB2YWx1ZXMgZnJvbSBlYWNoIHdpbGwgYmUgY29tYmluZWQgaW50byBvbmUgcHJvcGVydHkuXG4vLy8gQHBhcmFtIHtNYXB9ICRvbmUgLSBGaXJzdCBtYXAgdG8gbWVyZ2UuXG4vLy8gQHBhcmFtIHtNYXB9ICR0d28gLSBTZWNvbmQgbWFwIHRvIG1lcmdlLlxuLy8vIEByZXR1cm4ge01hcH0gQSBjb21iaW5lZCBtYXAuXG4vLy8gQGFjY2VzcyBwcml2YXRlXG5AZnVuY3Rpb24gLW11aS1tZXJnZS1wcm9wZXJ0aWVzKCRvbmUsICR0d28pIHtcbiAgQGlmIG1hcC1oYXMta2V5KCRvbmUsIHRyYW5zZm9ybSkgYW5kIG1hcC1oYXMta2V5KCR0d28sIHRyYW5zZm9ybSkge1xuICAgICR0cmFuc2Zvcm06IGpvaW4obWFwLWdldCgkb25lLCB0cmFuc2Zvcm0pLCBtYXAtZ2V0KCR0d28sIHRyYW5zZm9ybSkpO1xuICAgICRvbmU6IG1hcC1tZXJnZSgkb25lLCAodHJhbnNmb3JtOiAkdHJhbnNmb3JtKSk7XG4gICAgJHR3bzogbWFwLXJlbW92ZSgkdHdvLCB0cmFuc2Zvcm0pO1xuICB9XG5cbiAgQHJldHVybiBtYXAtbWVyZ2UoJG9uZSwgJHR3byk7XG59XG4iLCIvLy8gQ3JlYXRlcyBhIHNsaWRpbmcgdHJhbnNpdGlvbiBieSB0cmFuc2xhdGluZyB0aGUgZWxlbWVudCBob3Jpem9udGFsbHkgb3IgdmVydGljYWxseS5cbi8vLyBAcGFyYW0ge0tleXdvcmR9ICRzdGF0ZSBbaW5dIC0gU3RhdGUgdG8gdHJhbnNpdGlvbiB0by5cbi8vLyBAcGFyYW0ge0tleXdvcmR9ICRkaXJlY3Rpb24gW2xlZnRdIC0gRGlyZWN0aW9uIHRvIHNsaWRlIHRvLiBDYW4gYmUgYHVwYCwgYHJpZ2h0YCwgYGRvd25gLCBvciBgbGVmdGAuXG4vLy8gQHBhcmFtIHtMZW5ndGh9ICRhbW91bnQgWzEwMCVdIC0gTGVuZ3RoIG9mIHRoZSBzbGlkZSBhcyBhIHBlcmNlbnRhZ2UgdmFsdWUuXG4vLy8gQHBhcmFtIHtCb29sZWFufSAkZmFkZSBbZmFsc2VdIC0gU2V0IHRvIGB0cnVlYCB0byBmYWRlIHRoZSBlbGVtZW50IGluIG9yIG91dCBzaW11bHRhbmVvdXNseS5cbi8vLyBAcGFyYW0ge0R1cmF0aW9ufSAkZHVyYXRpb24gW251bGxdIC0gTGVuZ3RoIChzcGVlZCkgb2YgdGhlIHRyYW5zaXRpb24uXG4vLy8gQHBhcmFtIHtLZXl3b3JkfEZ1bmN0aW9ufSAkdGltaW5nIFtudWxsXSAtIEVhc2luZyBvZiB0aGUgdHJhbnNpdGlvbi5cbi8vLyBAcGFyYW0ge0R1cmF0aW9ufSAkZGVsYXkgW251bGxdIC0gRGVsYXkgaW4gc2Vjb25kcyBvciBtaWxsaXNlY29uZHMgYmVmb3JlIHRoZSB0cmFuc2l0aW9uIHN0YXJ0cy5cbkBtaXhpbiBtdWktc2xpZGUgKFxuICAkc3RhdGU6IGluLFxuICAkZGlyZWN0aW9uOiBsZWZ0LFxuICAkYW1vdW50OiAxMDAlLFxuICAkZmFkZTogbWFwLWdldCgkbW90aW9uLXVpLXNldHRpbmdzLCBzbGlkZS1hbmQtZmFkZSksXG4gICRkdXJhdGlvbjogbnVsbCxcbiAgJHRpbWluZzogbnVsbCxcbiAgJGRlbGF5OiBudWxsXG4pIHtcbiAgJHNsaWRlOiBzbGlkZSgkc3RhdGUsICRkaXJlY3Rpb24sICRhbW91bnQpO1xuXG4gIC8vIENTUyBPdXRwdXRcbiAgQGluY2x1ZGUgdHJhbnNpdGlvbi1zdGFydCgkc3RhdGUpIHtcbiAgICBAaW5jbHVkZSB0cmFuc2l0aW9uLWJhc2ljcygkZHVyYXRpb24sICR0aW1pbmcsICRkZWxheSk7XG4gICAgQGluY2x1ZGUgLW11aS1rZXlmcmFtZS1nZXQoJHNsaWRlLCAwKTtcblxuICAgIEBpZiAkZmFkZSB7XG4gICAgICB0cmFuc2l0aW9uLXByb3BlcnR5OiB0cmFuc2Zvcm0sIG9wYWNpdHk7XG4gICAgICBvcGFjaXR5OiBpZigkc3RhdGUgPT0gaW4sIDAsIDEpO1xuICAgIH0gQGVsc2Uge1xuICAgICAgdHJhbnNpdGlvbi1wcm9wZXJ0eTogdHJhbnNmb3JtLCBvcGFjaXR5O1xuICAgIH1cblxuICAgIGJhY2tmYWNlLXZpc2liaWxpdHk6IGhpZGRlbjtcbiAgfVxuXG4gIEBpbmNsdWRlIHRyYW5zaXRpb24tZW5kKCRzdGF0ZSkge1xuICAgIEBpbmNsdWRlIC1tdWkta2V5ZnJhbWUtZ2V0KCRzbGlkZSwgMTAwKTtcblxuICAgIEBpZiAkZmFkZSB7XG4gICAgICBvcGFjaXR5OiBpZigkc3RhdGUgPT0gaW4sIDEsIDApO1xuICAgIH1cbiAgfVxufVxuIiwiLy8vIENyZWF0ZXMgYSBmYWRlIHRyYW5zaXRpb24gYnkgYWRqdXN0aW5nIHRoZSBvcGFjaXR5IG9mIHRoZSBlbGVtZW50LlxuLy8vIEBwYXJhbSB7S2V5d29yZH0gJHN0YXRlIFtpbl0gLSBTdGF0ZSB0byB0cmFuc2l0aW9uIHRvLlxuLy8vIEBwYXJhbSB7TnVtYmVyfSAkZnJvbSBbMF0gLSBPcGFjaXR5IHRvIHN0YXJ0IGF0LiBNdXN0IGJlIGEgbnVtYmVyIGJldHdlZW4gMCBhbmQgMS5cbi8vLyBAcGFyYW0ge051bWJlcn0gJHRvIFsxXSAtIE9wYWNpdHkgdG8gZW5kIG9uLlxuLy8vIEBwYXJhbSB7S2V5d29yZH0gJGR1cmF0aW9uIFtudWxsXSAtIExlbmd0aCAoc3BlZWQpIG9mIHRoZSB0cmFuc2l0aW9uLlxuLy8vIEBwYXJhbSB7S2V5d29yZHxGdW5jdGlvbn0gJHRpbWluZyBbbnVsbF0gLSBFYXNpbmcgb2YgdGhlIHRyYW5zaXRpb24uXG4vLy8gQHBhcmFtIHtEdXJhdGlvbn0gJGRlbGF5IFtudWxsXSAtIERlbGF5IGluIHNlY29uZHMgb3IgbWlsbGlzZWNvbmRzIGJlZm9yZSB0aGUgdHJhbnNpdGlvbiBzdGFydHMuXG5AbWl4aW4gbXVpLWZhZGUoXG4gICRzdGF0ZTogaW4sXG4gICRmcm9tOiAwLFxuICAkdG86IDEsXG4gICRkdXJhdGlvbjogbnVsbCxcbiAgJHRpbWluZzogbnVsbCxcbiAgJGRlbGF5OiBudWxsXG4pIHtcbiAgJGZhZGU6IGZhZGUoJGZyb20sICR0byk7XG5cbiAgQGluY2x1ZGUgdHJhbnNpdGlvbi1zdGFydCgkc3RhdGUpIHtcbiAgICBAaW5jbHVkZSB0cmFuc2l0aW9uLWJhc2ljcygkZHVyYXRpb24sICR0aW1pbmcsICRkZWxheSk7XG4gICAgQGluY2x1ZGUgLW11aS1rZXlmcmFtZS1nZXQoJGZhZGUsIDApO1xuXG4gICAgdHJhbnNpdGlvbi1wcm9wZXJ0eTogb3BhY2l0eTtcbiAgfVxuXG4gIEBpbmNsdWRlIHRyYW5zaXRpb24tZW5kKCRzdGF0ZSkge1xuICAgIEBpbmNsdWRlIC1tdWkta2V5ZnJhbWUtZ2V0KCRmYWRlLCAxMDApO1xuICB9XG59XG4iLCIvLy8gQ3JlYXRlcyBhIGhpbmdlIGVmZmVjdCBieSByb3RhdGluZyB0aGUgZWxlbWVudC5cbi8vLyBAcGFyYW0ge0tleXdvcmR9ICRzdGF0ZSBbaW5dIC0gU3RhdGUgdG8gdHJhbnNpdGlvbiB0by5cbi8vLyBAcGFyYW0ge0tleXdvcmR9ICRmcm9tIFtsZWZ0XSAtIEVkZ2Ugb2YgdGhlIGVsZW1lbnQgdG8gcm90YXRlIGZyb20uIENhbiBiZSBgdG9wYCwgYHJpZ2h0YCwgYGJvdHRvbWAsIG9yIGBsZWZ0YC5cbi8vLyBAcGFyYW0ge0tleXdvcmR9ICRheGlzIFtlZGdlXSAtIEF4aXMgb2YgdGhlIGVsZW1lbnQgdG8gcm90YXRlIG9uLiBDYW4gYmUgYGVkZ2VgIG9yIGBjZW50ZXJgLlxuLy8vIEBwYXJhbSB7TnVtYmVyfSAkcGVyc3BlY3RpdmUgWzIwMDBweF0gLSBQZXJjZWl2ZWQgZGlzdGFuY2UgYmV0d2VlbiB0aGUgdmlld2VyIGFuZCB0aGUgZWxlbWVudC4gQSBoaWdoZXIgbnVtYmVyIHdpbGwgbWFrZSB0aGUgcm90YXRpb24gZWZmZWN0IG1vcmUgcHJvbm91bmNlZC5cbi8vLyBAcGFyYW0ge0tleXdvcmR9ICR0dXJuLW9yaWdpbiBbZnJvbS1iYWNrXSAtIFNpZGUgb2YgdGhlIGVsZW1lbnQgdG8gc3RhcnQgdGhlIHJvdGF0aW9uIGZyb20uIENhbiBiZSBgZnJvbS1iYWNrYCBvciBgZnJvbS1mcm9udGAuXG5AZnVuY3Rpb24gaGluZ2UgKFxuICAkc3RhdGU6IGluLFxuICAkZnJvbTogbGVmdCxcbiAgJGF4aXM6IGVkZ2UsXG4gICRwZXJzcGVjdGl2ZTogMjAwMHB4LFxuICAkdHVybi1vcmlnaW46IGZyb20tYmFja1xuKSB7XG4gIC8vIFJvdGF0aW9uIGRpcmVjdGlvbnMgd2hlbiBoaW5naW5nIGZyb20gYmFjayB2cy4gZnJvbnRcbiAgJHJvdGF0aW9uLWFtb3VudDogOTBkZWc7XG4gICRyb3RhdGlvbnMtYmFjazogKFxuICAgIHRvcDogcm90YXRlWCgkcm90YXRpb24tYW1vdW50ICogLTEpLFxuICAgIHJpZ2h0OiByb3RhdGVZKCRyb3RhdGlvbi1hbW91bnQgKiAtMSksXG4gICAgYm90dG9tOiByb3RhdGVYKCRyb3RhdGlvbi1hbW91bnQpLFxuICAgIGxlZnQ6IHJvdGF0ZVkoJHJvdGF0aW9uLWFtb3VudCksXG4gICk7XG4gICRyb3RhdGlvbnMtZnJvbTogKFxuICAgIHRvcDogcm90YXRlWCgkcm90YXRpb24tYW1vdW50KSxcbiAgICByaWdodDogcm90YXRlWSgkcm90YXRpb24tYW1vdW50KSxcbiAgICBib3R0b206IHJvdGF0ZVgoJHJvdGF0aW9uLWFtb3VudCAqIC0xKSxcbiAgICBsZWZ0OiByb3RhdGVZKCRyb3RhdGlvbi1hbW91bnQgKiAtMSksXG4gICk7XG5cbiAgLy8gUm90YXRpb24gb3JpZ2luXG4gICRyb3RhdGlvbjogJyc7XG4gIEBpZiAkdHVybi1vcmlnaW4gPT0gZnJvbS1mcm9udCB7XG4gICAgJHJvdGF0aW9uOiBtYXAtZ2V0KCRyb3RhdGlvbnMtZnJvbSwgJGZyb20pO1xuICB9IEBlbHNlIGlmICR0dXJuLW9yaWdpbiA9PSBmcm9tLWJhY2sge1xuICAgICRyb3RhdGlvbjogbWFwLWdldCgkcm90YXRpb25zLWJhY2ssICRmcm9tKTtcbiAgfSBAZWxzZSB7XG4gICAgQHdhcm4gJyR0dXJuLW9yaWdpbiBtdXN0IGJlIGVpdGhlciBcImZyb20tYmFja1wiIG9yIFwiZnJvbS1mcm9udFwiJztcbiAgfVxuXG4gIC8vIFN0YXJ0IGFuZCBlbmQgc3RhdGVcbiAgJHN0YXJ0OiAnJztcbiAgJGVuZDogJyc7XG4gIEBpZiAkc3RhdGUgPT0gaW4ge1xuICAgICRzdGFydDogcGVyc3BlY3RpdmUoJHBlcnNwZWN0aXZlKSAkcm90YXRpb247XG4gICAgJGVuZDogcGVyc3BlY3RpdmUoJHBlcnNwZWN0aXZlKSByb3RhdGUoMGRlZyk7XG4gIH0gQGVsc2Uge1xuICAgICRzdGFydDogcGVyc3BlY3RpdmUoJHBlcnNwZWN0aXZlKSByb3RhdGUoMGRlZyk7XG4gICAgJGVuZDogcGVyc3BlY3RpdmUoJHBlcnNwZWN0aXZlKSAkcm90YXRpb247XG4gIH1cblxuICAvLyBUdXJuIGF4aXNcbiAgJG9yaWdpbjogJyc7XG4gIEBpZiAkYXhpcyA9PSBlZGdlIHtcbiAgICAkb3JpZ2luOiAkZnJvbTtcbiAgfSBAZWxzZSB7XG4gICAgJG9yaWdpbjogY2VudGVyO1xuICB9XG5cbiAgJGtleWZyYW1lczogKFxuICAgIG5hbWU6ICdoaW5nZS0jeyRzdGF0ZX0tI3skZnJvbX0tI3skYXhpc30tI3skdHVybi1vcmlnaW59JyxcbiAgICAwOiAodHJhbnNmb3JtOiAkc3RhcnQsIHRyYW5zZm9ybS1vcmlnaW46ICRvcmlnaW4pLFxuICAgIDEwMDogKHRyYW5zZm9ybTogJGVuZCksXG4gICk7XG5cbiAgQHJldHVybiAka2V5ZnJhbWVzO1xufVxuIiwiLy8vIENyZWF0ZXMgYSBoaW5nZSB0cmFuc2l0aW9uIGJ5IHJvdGF0aW5nIHRoZSBlbGVtZW50LlxuLy8vIEBwYXJhbSB7S2V5d29yZH0gJHN0YXRlIFtpbl0gLSBTdGF0ZSB0byB0cmFuc2l0aW9uIHRvLlxuLy8vIEBwYXJhbSB7S2V5d29yZH0gJGZyb20gW2xlZnRdIC0gRWRnZSBvZiB0aGUgZWxlbWVudCB0byByb3RhdGUgZnJvbS4gQ2FuIGJlIGB0b3BgLCBgcmlnaHRgLCBgYm90dG9tYCwgb3IgYGxlZnRgLlxuLy8vIEBwYXJhbSB7S2V5d29yZH0gJGF4aXMgW2VkZ2VdIC0gQXhpcyBvZiB0aGUgZWxlbWVudCB0byByb3RhdGUgb24uIENhbiBiZSBgZWRnZWAgb3IgYGNlbnRlcmAuXG4vLy8gQHBhcmFtIHtMZW5ndGh9ICRwZXJzcGVjdGl2ZSBbMjAwMHB4XSAtIFBlcmNlaXZlZCBkaXN0YW5jZSBiZXR3ZWVuIHRoZSB2aWV3ZXIgYW5kIHRoZSBlbGVtZW50LiBBIGhpZ2hlciBudW1iZXIgd2lsbCBtYWtlIHRoZSByb3RhdGlvbiBlZmZlY3QgbW9yZSBwcm9ub3VuY2VkLlxuLy8vIEBwYXJhbSB7S2V5d29yZH0gJHR1cm4tb3JpZ2luIFtmcm9tLWJhY2tdIC0gU2lkZSBvZiB0aGUgZWxlbWVudCB0byBzdGFydCB0aGUgcm90YXRpb24gZnJvbS4gQ2FuIGJlIGBmcm9tLWJhY2tgIG9yIGBmcm9tLWZyb250YC5cbi8vLyBAcGFyYW0ge0Jvb2xlYW59ICRmYWRlIFt0cnVlXSAtIFNldCB0byBgdHJ1ZWAgdG8gZmFkZSB0aGUgZWxlbWVudCBpbiBvciBvdXQgc2ltdWx0YW5lb3VzbHkuXG4vLy8gQHBhcmFtIHtEdXJhdGlvbn0gJGR1cmF0aW9uIFtudWxsXSAtIExlbmd0aCAoc3BlZWQpIG9mIHRoZSB0cmFuc2l0aW9uLlxuLy8vIEBwYXJhbSB7S2V5d29yZHxGdW5jdGlvbn0gJHRpbWluZyBbbnVsbF0gLSBFYXNpbmcgb2YgdGhlIHRyYW5zaXRpb24uXG4vLy8gQHBhcmFtIHtEdXJhdGlvbn0gJGRlbGF5IFtudWxsXSAtIERlbGF5IGluIHNlY29uZHMgb3IgbWlsbGlzZWNvbmRzIGJlZm9yZSB0aGUgdHJhbnNpdGlvbiBzdGFydHMuXG5AbWl4aW4gbXVpLWhpbmdlIChcbiAgJHN0YXRlOiBpbixcbiAgJGZyb206IGxlZnQsXG4gICRheGlzOiBlZGdlLFxuICAkcGVyc3BlY3RpdmU6IDIwMDBweCxcbiAgJHR1cm4tb3JpZ2luOiBmcm9tLWJhY2ssXG4gICRmYWRlOiBtYXAtZ2V0KCRtb3Rpb24tdWktc2V0dGluZ3MsIGhpbmdlLWFuZC1mYWRlKSxcbiAgJGR1cmF0aW9uOiBudWxsLFxuICAkdGltaW5nOiBudWxsLFxuICAkZGVsYXk6IG51bGxcbikge1xuICAkaGluZ2U6IGhpbmdlKCRzdGF0ZSwgJGZyb20sICRheGlzLCAkcGVyc3BlY3RpdmUsICR0dXJuLW9yaWdpbik7XG5cbiAgQGluY2x1ZGUgdHJhbnNpdGlvbi1zdGFydCgkc3RhdGUpIHtcbiAgICBAaW5jbHVkZSB0cmFuc2l0aW9uLWJhc2ljcygkZHVyYXRpb24sICR0aW1pbmcsICRkZWxheSk7XG4gICAgQGluY2x1ZGUgLW11aS1rZXlmcmFtZS1nZXQoJGhpbmdlLCAwKTtcblxuICAgIEBpZiAkZmFkZSB7XG4gICAgICB0cmFuc2l0aW9uLXByb3BlcnR5OiB0cmFuc2Zvcm0sIG9wYWNpdHk7XG4gICAgICBvcGFjaXR5OiBpZigkc3RhdGUgPT0gaW4sIDAsIDEpO1xuICAgIH0gQGVsc2Uge1xuICAgICAgdHJhbnNpdGlvbi1wcm9wZXJ0eTogdHJhbnNmb3JtLCBvcGFjaXR5O1xuICAgIH1cbiAgfVxuXG4gIEBpbmNsdWRlIHRyYW5zaXRpb24tZW5kKCRzdGF0ZSkge1xuICAgIEBpbmNsdWRlIC1tdWkta2V5ZnJhbWUtZ2V0KCRoaW5nZSwgMTAwKTtcblxuICAgIEBpZiAkZmFkZSB7XG4gICAgICBvcGFjaXR5OiBpZigkc3RhdGUgPT0gaW4sIDEsIDApO1xuICAgIH1cbiAgfVxufVxuIiwiLy8vIENyZWF0ZXMgYSBzY2FsaW5nIHRyYW5zaXRpb24uIEEgc2NhbGUgb2YgYDFgIG1lYW5zIHRoZSBlbGVtZW50IGlzIHRoZSBzYW1lIHNpemUuIExhcmdlciBudW1iZXJzIG1ha2UgdGhlIGVsZW1lbnQgYmlnZ2VyLCB3aGlsZSBudW1iZXJzIGxlc3MgdGhhbiAxIG1ha2UgdGhlIGVsZW1lbnQgc21hbGxlci5cbi8vLyBAcGFyYW0ge0tleXdvcmR9ICRzdGF0ZSBbaW5dIC0gU3RhdGUgdG8gdHJhbnNpdGlvbiB0by5cbi8vLyBAcGFyYW0ge051bWJlcn0gJGZyb20gWzEuNV0gLSBTaXplIHRvIHN0YXJ0IGF0LlxuLy8vIEBwYXJhbSB7TnVtYmVyfSAkZnJvbSBbMV0gLSBTaXplIHRvIGVuZCBhdC5cbi8vLyBAcGFyYW0ge0Jvb2xlYW59ICRmYWRlIFt0cnVlXSAtIFNldCB0byBgdHJ1ZWAgdG8gZmFkZSB0aGUgZWxlbWVudCBpbiBvciBvdXQgc2ltdWx0YW5lb3VzbHkuXG4vLy8gQHBhcmFtIHtEdXJhdGlvbn0gJGR1cmF0aW9uIFtudWxsXSAtIExlbmd0aCAoc3BlZWQpIG9mIHRoZSB0cmFuc2l0aW9uLlxuLy8vIEBwYXJhbSB7S2V5d29yZHxGdW5jdGlvbn0gJHRpbWluZyBbbnVsbF0gLSBFYXNpbmcgb2YgdGhlIHRyYW5zaXRpb24uXG4vLy8gQHBhcmFtIHtEdXJhdGlvbn0gJGRlbGF5IFtudWxsXSAtIERlbGF5IGluIHNlY29uZHMgb3IgbWlsbGlzZWNvbmRzIGJlZm9yZSB0aGUgdHJhbnNpdGlvbiBzdGFydHMuXG5AbWl4aW4gbXVpLXpvb20oXG4gICRzdGF0ZTogaW4sXG4gICRmcm9tOiAxLjUsXG4gICR0bzogMSxcbiAgJGZhZGU6IG1hcC1nZXQoJG1vdGlvbi11aS1zZXR0aW5ncywgc2NhbGUtYW5kLWZhZGUpLFxuICAkZHVyYXRpb246IG51bGwsXG4gICR0aW1pbmc6IG51bGwsXG4gICRkZWxheTogbnVsbFxuKSB7XG4gICRzY2FsZTogem9vbSgkZnJvbSwgJHRvKTtcblxuICBAaW5jbHVkZSB0cmFuc2l0aW9uLXN0YXJ0KCRzdGF0ZSkge1xuICAgIEBpbmNsdWRlIHRyYW5zaXRpb24tYmFzaWNzKCRkdXJhdGlvbiwgJHRpbWluZywgJGRlbGF5KTtcbiAgICBAaW5jbHVkZSAtbXVpLWtleWZyYW1lLWdldCgkc2NhbGUsIDApO1xuXG4gICAgQGlmICRmYWRlIHtcbiAgICAgIHRyYW5zaXRpb24tcHJvcGVydHk6IHRyYW5zZm9ybSwgb3BhY2l0eTtcbiAgICAgIG9wYWNpdHk6IGlmKCRzdGF0ZSA9PSBpbiwgMCwgMSk7XG4gICAgfSBAZWxzZSB7XG4gICAgICB0cmFuc2l0aW9uLXByb3BlcnR5OiB0cmFuc2Zvcm0sIG9wYWNpdHk7XG4gICAgfVxuICB9XG5cbiAgQGluY2x1ZGUgdHJhbnNpdGlvbi1lbmQoJHN0YXRlKSB7XG4gICAgQGluY2x1ZGUgLW11aS1rZXlmcmFtZS1nZXQoJHNjYWxlLCAxMDApO1xuXG4gICAgQGlmICRmYWRlIHtcbiAgICAgIG9wYWNpdHk6IGlmKCRzdGF0ZSA9PSBpbiwgMSwgMCk7XG4gICAgfVxuICB9XG59XG4iLCIvLy8gQ3JlYXRlcyBhIHNwaW5uaW5nIHRyYW5zaXRpb24gYnkgcm90YXRpbmcgdGhlIGVsZW1lbnQuIFRoZSBgdHVybmAgdW5pdCBpcyB1c2VkIHRvIHNwZWNpZnkgaG93IGZhciB0byByb3RhdGUuIGAxdHVybmAgaXMgZXF1YWwgdG8gYSAzNjAtZGVncmVlIHNwaW4uXG4vLy8gQHBhcmFtIHtLZXl3b3JkfSAkc3RhdGUgW2luXSAtIFN0YXRlIHRvIHRyYW5zaXRpb24gdG8uXG4vLy8gQHBhcmFtIHtCb29sZWFufSAkZGlyZWN0aW9uIFtjd10gLSBEaXJlY3Rpb24gdG8gc3Bpbi4gU2hvdWxkIGJlIGBjd2AgKGNsb2Nrd2lzZSkgb3IgYGNjd2AgKGNvdW50ZXJjbG9ja3dpc2UpLlxuLy8vIEBwYXJhbSB7TnVtYmVyfSAkYW1vdW50IFswLjc1dHVybl0gLSBBbW91bnQgdG8gZWxlbWVudCB0aGUgZWxlbWVudC5cbi8vLyBAcGFyYW0ge0Jvb2xlYW59ICRmYWRlIFtmYWxzZV0gLSBTZXQgdG8gYHRydWVgIHRvIGZhZGUgdGhlIGVsZW1lbnQgaW4gb3Igb3V0IHNpbXVsdGFuZW91c2x5LlxuLy8vIEBwYXJhbSB7RHVyYXRpb259ICRkdXJhdGlvbiBbbnVsbF0gLSBMZW5ndGggKHNwZWVkKSBvZiB0aGUgdHJhbnNpdGlvbi5cbi8vLyBAcGFyYW0ge0tleXdvcmR8RnVuY3Rpb259ICR0aW1pbmcgW251bGxdIC0gRWFzaW5nIG9mIHRoZSB0cmFuc2l0aW9uLlxuLy8vIEBwYXJhbSB7RHVyYXRpb259ICRkZWxheSBbbnVsbF0gLSBEZWxheSBpbiBzZWNvbmRzIG9yIG1pbGxpc2Vjb25kcyBiZWZvcmUgdGhlIHRyYW5zaXRpb24gc3RhcnRzLlxuQG1peGluIG11aS1zcGluKFxuICAkc3RhdGU6IGluLFxuICAkZGlyZWN0aW9uOiBjdyxcbiAgJGFtb3VudDogMC43NXR1cm4sXG4gICRmYWRlOiBtYXAtZ2V0KCRtb3Rpb24tdWktc2V0dGluZ3MsIHNwaW4tYW5kLWZhZGUpLFxuICAkZHVyYXRpb246IG51bGwsXG4gICR0aW1pbmc6IG51bGwsXG4gICRkZWxheTogbnVsbFxuKSB7XG4gICRzcGluOiBzcGluKCRzdGF0ZSwgJGRpcmVjdGlvbiwgJGFtb3VudCk7XG5cbiAgQGluY2x1ZGUgdHJhbnNpdGlvbi1zdGFydCgkc3RhdGUpIHtcbiAgICBAaW5jbHVkZSB0cmFuc2l0aW9uLWJhc2ljcygkZHVyYXRpb24sICR0aW1pbmcsICRkZWxheSk7XG4gICAgQGluY2x1ZGUgLW11aS1rZXlmcmFtZS1nZXQoJHNwaW4sIDApO1xuXG4gICAgQGlmICRmYWRlIHtcbiAgICAgIHRyYW5zaXRpb24tcHJvcGVydHk6IHRyYW5zZm9ybSwgb3BhY2l0eTtcbiAgICAgIG9wYWNpdHk6IGlmKCRzdGF0ZSA9PSBpbiwgMCwgMSk7XG4gICAgfSBAZWxzZSB7XG4gICAgICB0cmFuc2l0aW9uLXByb3BlcnR5OiB0cmFuc2Zvcm0sIG9wYWNpdHk7XG4gICAgfVxuICB9XG5cbiAgQGluY2x1ZGUgdHJhbnNpdGlvbi1lbmQoJHN0YXRlKSB7XG4gICAgQGluY2x1ZGUgLW11aS1rZXlmcmFtZS1nZXQoJHNwaW4sIDEwMCk7XG5cbiAgICBAaWYgJGZhZGUge1xuICAgICAgb3BhY2l0eTogaWYoJHN0YXRlID09IGluLCAxLCAwKTtcbiAgICB9XG4gIH1cbn1cbiIsIi8vLyBDcmVhdGVzIGEga2V5ZnJhbWUgZnJvbSBvbmUgb3IgbW9yZSBlZmZlY3QgZnVuY3Rpb25zIGFuZCBhc3NpZ25zIGl0IHRvIHRoZSBlbGVtZW50IGJ5IGFkZGluZyB0aGUgYGFuaW1hdGlvbi1uYW1lYCBwcm9wZXJ0eS5cbi8vLyBAcGFyYW0ge0Z1bmN0aW9ufSAkZWZmZWN0cy4uLiAtIE9uZSBvciBtb3JlIGVmZmVjdCBmdW5jdGlvbnMgdG8gYnVpbGQgdGhlIGtleWZyYW1lIHdpdGguXG5AbWl4aW4gbXVpLWFuaW1hdGlvbigkYXJncy4uLikge1xuICAkbmFtZTogbWFwLWdldCgtbXVpLXByb2Nlc3MtYXJncygkYXJncy4uLiksIG5hbWUpO1xuICBAaW5jbHVkZSBtdWkta2V5ZnJhbWVzKCRuYW1lLCAkYXJncy4uLik7XG4gIGFuaW1hdGlvbi1uYW1lOiB1bnF1b3RlKCRuYW1lKTtcbn1cbiIsIi8qXG5AaW1wb3J0IHRoaXMgZmlsZSBkaXJlY3RseSBpbnRvIHlvdXIgZXhpc3RpbmcgU2NzcyBmaWxlcyB0byB1c2UgdGhlc2UgbWl4aW5zXG4qL1xuQG1peGluIHNwcml0ZS1ic2lncmFwaGljKCkge1xuXHR3aWR0aDogMTg2cHg7XG5cdGhlaWdodDogOTJweDtcblx0ZGlzcGxheTogaW5saW5lLWJsb2NrO1xuXHRiYWNrZ3JvdW5kOiB1cmwoJy8vc3RhdGljLnJhcGlkb25saW5lLmNvbS9jc3Mvc3ByaXRlcy80LjcuMS9zcHJpdGUuc3ByaXRlLnBuZycpIC0xMHB4IC0xMHB4IG5vLXJlcGVhdDtcbn1cbkBtaXhpbiBzcHJpdGUtY2FsaWJyYXRpb24oKSB7XG5cdHdpZHRoOiA2MHB4O1xuXHRoZWlnaHQ6IDU2cHg7XG5cdGRpc3BsYXk6IGlubGluZS1ibG9jaztcblx0YmFja2dyb3VuZDogdXJsKCcvL3N0YXRpYy5yYXBpZG9ubGluZS5jb20vY3NzL3Nwcml0ZXMvNC43LjEvc3ByaXRlLnNwcml0ZS5wbmcnKSAtMjA2cHggLTEwcHggbm8tcmVwZWF0O1xufVxuQG1peGluIHNwcml0ZS1jYXJ0aWNvbigpIHtcblx0d2lkdGg6IDQ5cHg7XG5cdGhlaWdodDogNDVweDtcblx0ZGlzcGxheTogaW5saW5lLWJsb2NrO1xuXHRiYWNrZ3JvdW5kOiB1cmwoJy8vc3RhdGljLnJhcGlkb25saW5lLmNvbS9jc3Mvc3ByaXRlcy80LjcuMS9zcHJpdGUuc3ByaXRlLnBuZycpIC0yNzZweCAtMTBweCBuby1yZXBlYXQ7XG59XG5AbWl4aW4gc3ByaXRlLWNhcnRpY29uc21hbGwoKSB7XG5cdHdpZHRoOiAzNHB4O1xuXHRoZWlnaHQ6IDMycHg7XG5cdGRpc3BsYXk6IGlubGluZS1ibG9jaztcblx0YmFja2dyb3VuZDogdXJsKCcvL3N0YXRpYy5yYXBpZG9ubGluZS5jb20vY3NzL3Nwcml0ZXMvNC43LjEvc3ByaXRlLnNwcml0ZS5wbmcnKSAtMzM1cHggLTEwcHggbm8tcmVwZWF0O1xufVxuQG1peGluIHNwcml0ZS1jbGVhcmFuY2UoKSB7XG5cdHdpZHRoOiA0MHB4O1xuXHRoZWlnaHQ6IDU1cHg7XG5cdGRpc3BsYXk6IGlubGluZS1ibG9jaztcblx0YmFja2dyb3VuZDogdXJsKCcvL3N0YXRpYy5yYXBpZG9ubGluZS5jb20vY3NzL3Nwcml0ZXMvNC43LjEvc3ByaXRlLnNwcml0ZS5wbmcnKSAtMzc5cHggLTEwcHggbm8tcmVwZWF0O1xufVxuQG1peGluIHNwcml0ZS1jb25yYWRmb290ZXIoKSB7XG5cdHdpZHRoOiAyMDBweDtcblx0aGVpZ2h0OiAxOXB4O1xuXHRkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG5cdGJhY2tncm91bmQ6IHVybCgnLy9zdGF0aWMucmFwaWRvbmxpbmUuY29tL2Nzcy9zcHJpdGVzLzQuNy4xL3Nwcml0ZS5zcHJpdGUucG5nJykgLTQyOXB4IC0xMHB4IG5vLXJlcGVhdDtcbn1cbkBtaXhpbiBzcHJpdGUtZWR1Y2F0aW9ubG9nbygpIHtcblx0d2lkdGg6IDEyOXB4O1xuXHRoZWlnaHQ6IDQ1cHg7XG5cdGRpc3BsYXk6IGlubGluZS1ibG9jaztcblx0YmFja2dyb3VuZDogdXJsKCcvL3N0YXRpYy5yYXBpZG9ubGluZS5jb20vY3NzL3Nwcml0ZXMvNC43LjEvc3ByaXRlLnNwcml0ZS5wbmcnKSAtNjM5cHggLTEwcHggbm8tcmVwZWF0O1xufVxuQG1peGluIHNwcml0ZS1lZHVjYXRpb25sb2dvc21hbGwoKSB7XG5cdHdpZHRoOiAxMTZweDtcblx0aGVpZ2h0OiA0MHB4O1xuXHRkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG5cdGJhY2tncm91bmQ6IHVybCgnLy9zdGF0aWMucmFwaWRvbmxpbmUuY29tL2Nzcy9zcHJpdGVzLzQuNy4xL3Nwcml0ZS5zcHJpdGUucG5nJykgLTc3OHB4IC0xMHB4IG5vLXJlcGVhdDtcbn1cbkBtaXhpbiBzcHJpdGUtZmFjZWJvb2tpY29uKCkge1xuXHR3aWR0aDogMzZweDtcblx0aGVpZ2h0OiAzNnB4O1xuXHRkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG5cdGJhY2tncm91bmQ6IHVybCgnLy9zdGF0aWMucmFwaWRvbmxpbmUuY29tL2Nzcy9zcHJpdGVzLzQuNy4xL3Nwcml0ZS5zcHJpdGUucG5nJykgLTkwNHB4IC0xMHB4IG5vLXJlcGVhdDtcbn1cbkBtaXhpbiBzcHJpdGUtaWNvbl9ldWZsYWcoKSB7XG5cdHdpZHRoOiAxMDhweDtcblx0aGVpZ2h0OiA2M3B4O1xuXHRkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG5cdGJhY2tncm91bmQ6IHVybCgnLy9zdGF0aWMucmFwaWRvbmxpbmUuY29tL2Nzcy9zcHJpdGVzLzQuNy4xL3Nwcml0ZS5zcHJpdGUucG5nJykgLTk1MHB4IC0xMHB4IG5vLXJlcGVhdDtcbn1cbkBtaXhpbiBzcHJpdGUtaWNvbl9tb2R1bGVfM2RfcGRmbHJnKCkge1xuXHR3aWR0aDogNDBweDtcblx0aGVpZ2h0OiA0N3B4O1xuXHRkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG5cdGJhY2tncm91bmQ6IHVybCgnLy9zdGF0aWMucmFwaWRvbmxpbmUuY29tL2Nzcy9zcHJpdGVzLzQuNy4xL3Nwcml0ZS5zcHJpdGUucG5nJykgLTEwNjhweCAtMTBweCBuby1yZXBlYXQ7XG59XG5AbWl4aW4gc3ByaXRlLWljb25fbW9kdWxlX3RkX3BkZnNtKCkge1xuXHR3aWR0aDogMTRweDtcblx0aGVpZ2h0OiAxNnB4O1xuXHRkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG5cdGJhY2tncm91bmQ6IHVybCgnLy9zdGF0aWMucmFwaWRvbmxpbmUuY29tL2Nzcy9zcHJpdGVzLzQuNy4xL3Nwcml0ZS5zcHJpdGUucG5nJykgLTExMThweCAtMTBweCBuby1yZXBlYXQ7XG59XG5AbWl4aW4gc3ByaXRlLWljb25fbW9kdWxlX3RlY2huaWNhbC1zcGVjaWZpY2F0aW9uX3BkZmxyZygpIHtcblx0d2lkdGg6IDQwcHg7XG5cdGhlaWdodDogNDdweDtcblx0ZGlzcGxheTogaW5saW5lLWJsb2NrO1xuXHRiYWNrZ3JvdW5kOiB1cmwoJy8vc3RhdGljLnJhcGlkb25saW5lLmNvbS9jc3Mvc3ByaXRlcy80LjcuMS9zcHJpdGUuc3ByaXRlLnBuZycpIC0xMTQycHggLTEwcHggbm8tcmVwZWF0O1xufVxuQG1peGluIHNwcml0ZS1pY29uX3VrZmxhZygpIHtcblx0d2lkdGg6IDEwOHB4O1xuXHRoZWlnaHQ6IDYzcHg7XG5cdGRpc3BsYXk6IGlubGluZS1ibG9jaztcblx0YmFja2dyb3VuZDogdXJsKCcvL3N0YXRpYy5yYXBpZG9ubGluZS5jb20vY3NzL3Nwcml0ZXMvNC43LjEvc3ByaXRlLnNwcml0ZS5wbmcnKSAtMTE5MnB4IC0xMHB4IG5vLXJlcGVhdDtcbn1cbkBtaXhpbiBzcHJpdGUtaWNvbl91c2ZsYWcoKSB7XG5cdHdpZHRoOiAxMDhweDtcblx0aGVpZ2h0OiA2M3B4O1xuXHRkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG5cdGJhY2tncm91bmQ6IHVybCgnLy9zdGF0aWMucmFwaWRvbmxpbmUuY29tL2Nzcy9zcHJpdGVzLzQuNy4xL3Nwcml0ZS5zcHJpdGUucG5nJykgLTEzMTBweCAtMTBweCBuby1yZXBlYXQ7XG59XG5AbWl4aW4gc3ByaXRlLWluc3RhZ3JhbWljb24oKSB7XG5cdHdpZHRoOiAzNnB4O1xuXHRoZWlnaHQ6IDM2cHg7XG5cdGRpc3BsYXk6IGlubGluZS1ibG9jaztcblx0YmFja2dyb3VuZDogdXJsKCcvL3N0YXRpYy5yYXBpZG9ubGluZS5jb20vY3NzL3Nwcml0ZXMvNC43LjEvc3ByaXRlLnNwcml0ZS5wbmcnKSAtMTQyOHB4IC0xMHB4IG5vLXJlcGVhdDtcbn1cbkBtaXhpbiBzcHJpdGUtbGlua2VkaW5pY29uKCkge1xuXHR3aWR0aDogMzZweDtcblx0aGVpZ2h0OiAzNnB4O1xuXHRkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG5cdGJhY2tncm91bmQ6IHVybCgnLy9zdGF0aWMucmFwaWRvbmxpbmUuY29tL2Nzcy9zcHJpdGVzLzQuNy4xL3Nwcml0ZS5zcHJpdGUucG5nJykgLTE0NzRweCAtMTBweCBuby1yZXBlYXQ7XG59XG5AbWl4aW4gc3ByaXRlLW5ldygpIHtcblx0d2lkdGg6IDU1cHg7XG5cdGhlaWdodDogNTVweDtcblx0ZGlzcGxheTogaW5saW5lLWJsb2NrO1xuXHRiYWNrZ3JvdW5kOiB1cmwoJy8vc3RhdGljLnJhcGlkb25saW5lLmNvbS9jc3Mvc3ByaXRlcy80LjcuMS9zcHJpdGUuc3ByaXRlLnBuZycpIC0xNTIwcHggLTEwcHggbm8tcmVwZWF0O1xufVxuQG1peGluIHNwcml0ZS1wYXltZW50aWNvbnMoKSB7XG5cdHdpZHRoOiAyNTlweDtcblx0aGVpZ2h0OiAzMHB4O1xuXHRkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG5cdGJhY2tncm91bmQ6IHVybCgnLy9zdGF0aWMucmFwaWRvbmxpbmUuY29tL2Nzcy9zcHJpdGVzLzQuNy4xL3Nwcml0ZS5zcHJpdGUucG5nJykgLTE1ODVweCAtMTBweCBuby1yZXBlYXQ7XG59XG5AbWl4aW4gc3ByaXRlLXBheXBhbGxvZ28oKSB7XG5cdHdpZHRoOiAxNDVweDtcblx0aGVpZ2h0OiA0MnB4O1xuXHRkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG5cdGJhY2tncm91bmQ6IHVybCgnLy9zdGF0aWMucmFwaWRvbmxpbmUuY29tL2Nzcy9zcHJpdGVzLzQuNy4xL3Nwcml0ZS5zcHJpdGUucG5nJykgLTE4NTRweCAtMTBweCBuby1yZXBlYXQ7XG59XG5AbWl4aW4gc3ByaXRlLXJhcGlkYWNjb3VudCgpIHtcblx0d2lkdGg6IDEzNnB4O1xuXHRoZWlnaHQ6IDMycHg7XG5cdGRpc3BsYXk6IGlubGluZS1ibG9jaztcblx0YmFja2dyb3VuZDogdXJsKCcvL3N0YXRpYy5yYXBpZG9ubGluZS5jb20vY3NzL3Nwcml0ZXMvNC43LjEvc3ByaXRlLnNwcml0ZS5wbmcnKSAtMjAwOXB4IC0xMHB4IG5vLXJlcGVhdDtcbn1cbkBtaXhpbiBzcHJpdGUtcmFwaWRsb2dvKCkge1xuXHR3aWR0aDogMTQ3cHg7XG5cdGhlaWdodDogMzhweDtcblx0ZGlzcGxheTogaW5saW5lLWJsb2NrO1xuXHRiYWNrZ3JvdW5kOiB1cmwoJy8vc3RhdGljLnJhcGlkb25saW5lLmNvbS9jc3Mvc3ByaXRlcy80LjcuMS9zcHJpdGUuc3ByaXRlLnBuZycpIC0yMTU1cHggLTEwcHggbm8tcmVwZWF0O1xufVxuQG1peGluIHNwcml0ZS1yYXBpZGxvZ29zbWFsbCgpIHtcblx0d2lkdGg6IDExNnB4O1xuXHRoZWlnaHQ6IDQwcHg7XG5cdGRpc3BsYXk6IGlubGluZS1ibG9jaztcblx0YmFja2dyb3VuZDogdXJsKCcvL3N0YXRpYy5yYXBpZG9ubGluZS5jb20vY3NzL3Nwcml0ZXMvNC43LjEvc3ByaXRlLnNwcml0ZS5wbmcnKSAtMjMxMnB4IC0xMHB4IG5vLXJlcGVhdDtcbn1cbkBtaXhpbiBzcHJpdGUtc3BlY2lhbG9mZmVyKCkge1xuXHR3aWR0aDogNTVweDtcblx0aGVpZ2h0OiA1M3B4O1xuXHRkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG5cdGJhY2tncm91bmQ6IHVybCgnLy9zdGF0aWMucmFwaWRvbmxpbmUuY29tL2Nzcy9zcHJpdGVzLzQuNy4xL3Nwcml0ZS5zcHJpdGUucG5nJykgLTI0MzhweCAtMTBweCBuby1yZXBlYXQ7XG59XG5AbWl4aW4gc3ByaXRlLXR3aXR0ZXJpY29uKCkge1xuXHR3aWR0aDogMzZweDtcblx0aGVpZ2h0OiAzNnB4O1xuXHRkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG5cdGJhY2tncm91bmQ6IHVybCgnLy9zdGF0aWMucmFwaWRvbmxpbmUuY29tL2Nzcy9zcHJpdGVzLzQuNy4xL3Nwcml0ZS5zcHJpdGUucG5nJykgLTI1MDNweCAtMTBweCBuby1yZXBlYXQ7XG59XG5AbWl4aW4gc3ByaXRlLXVuaWxvZ28oKSB7XG5cdHdpZHRoOiAxMjlweDtcblx0aGVpZ2h0OiA0NXB4O1xuXHRkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG5cdGJhY2tncm91bmQ6IHVybCgnLy9zdGF0aWMucmFwaWRvbmxpbmUuY29tL2Nzcy9zcHJpdGVzLzQuNy4xL3Nwcml0ZS5zcHJpdGUucG5nJykgLTI1NDlweCAtMTBweCBuby1yZXBlYXQ7XG59XG5AbWl4aW4gc3ByaXRlLXVuaWxvZ29zbWFsbCgpIHtcblx0d2lkdGg6IDExNnB4O1xuXHRoZWlnaHQ6IDQwcHg7XG5cdGRpc3BsYXk6IGlubGluZS1ibG9jaztcblx0YmFja2dyb3VuZDogdXJsKCcvL3N0YXRpYy5yYXBpZG9ubGluZS5jb20vY3NzL3Nwcml0ZXMvNC43LjEvc3ByaXRlLnNwcml0ZS5wbmcnKSAtMjY4OHB4IC0xMHB4IG5vLXJlcGVhdDtcbn1cbkBtaXhpbiBzcHJpdGUteW91dHViZWljb24oKSB7XG5cdHdpZHRoOiAzNnB4O1xuXHRoZWlnaHQ6IDM2cHg7XG5cdGRpc3BsYXk6IGlubGluZS1ibG9jaztcblx0YmFja2dyb3VuZDogdXJsKCcvL3N0YXRpYy5yYXBpZG9ubGluZS5jb20vY3NzL3Nwcml0ZXMvNC43LjEvc3ByaXRlLnNwcml0ZS5wbmcnKSAtMjgxNHB4IC0xMHB4IG5vLXJlcGVhdDtcbn1cbiIsIkBpbXBvcnQgJy4uLy4uLy4uLy4uL3Nwcml0ZXMvc3ByaXRlLnNwcml0ZS5zY3NzJztcblxuLmJzaUdyYXBoaWMge1xuICAgIEBpbmNsdWRlIHNwcml0ZS1ic2lncmFwaGljKClcbn1cblxuLmNhbGlicmF0aW9uIHtcbiAgICBAaW5jbHVkZSBzcHJpdGUtY2FsaWJyYXRpb24oKVxufVxuXG4uY2FydGljb24ge1xuICAgIEBpbmNsdWRlIHNwcml0ZS1jYXJ0aWNvbigpXG59XG5cbi5jYXJ0SWNvblNtYWxsIHtcbiAgICBAaW5jbHVkZSBzcHJpdGUtY2FydGljb25zbWFsbCgpXG59XG5cbi5DbGVhcmFuY2Uge1xuICAgIEBpbmNsdWRlIHNwcml0ZS1jbGVhcmFuY2UoKVxufVxuXG4uY29ucmFkRm9vdGVyIHtcbiAgICBAaW5jbHVkZSBzcHJpdGUtY29ucmFkZm9vdGVyKClcbn1cblxuLmVkdWNhdGlvbkxvZ28ge1xuICAgIEBpbmNsdWRlIHNwcml0ZS1lZHVjYXRpb25sb2dvKClcbn1cblxuLmVkdWNhdGlvbkxvZ29TbWFsbCB7XG4gICAgQGluY2x1ZGUgc3ByaXRlLWVkdWNhdGlvbmxvZ29zbWFsbCgpXG59XG5cbi5lZHVjYXRpb25Mb2dvU21hbGwge1xuICAgIEBpbmNsdWRlIHNwcml0ZS1lZHVjYXRpb25sb2dvc21hbGwoKVxufVxuXG4uZmFjZWJvb2tJY29uIHtcbiAgICBAaW5jbHVkZSBzcHJpdGUtZmFjZWJvb2tpY29uKClcbn1cblxuLmljb25fZXVmbGFnIHtcbiAgICBAaW5jbHVkZSBzcHJpdGUtaWNvbl9ldWZsYWcoKVxufVxuXG4uaWNvbl9tb2R1bGVfM0RfcGRmbHJnIHtcbiAgICBAaW5jbHVkZSBzcHJpdGUtaWNvbl9tb2R1bGVfM2RfcGRmbHJnKClcbn1cblxuLmljb25fbW9kdWxlX3RkX3BkZnNtIHtcbiAgICBAaW5jbHVkZSBzcHJpdGUtaWNvbl9tb2R1bGVfdGRfcGRmc20oKVxufVxuXG4uaWNvbl9tb2R1bGVfVGVjaG5pY2FsLVNwZWNpZmljYXRpb25fcGRmbHJnIHtcbiAgICBAaW5jbHVkZSBzcHJpdGUtaWNvbl9tb2R1bGVfdGVjaG5pY2FsLXNwZWNpZmljYXRpb25fcGRmbHJnKClcbn1cblxuLmljb25fdWtmbGFnIHtcbiAgICBAaW5jbHVkZSBzcHJpdGUtaWNvbl91a2ZsYWcoKVxufVxuXG4uaWNvbl91c2ZsYWcge1xuICAgIEBpbmNsdWRlIHNwcml0ZS1pY29uX3VzZmxhZygpXG59XG5cbi5pbnN0YWdyYW1JY29uIHtcbiAgICBAaW5jbHVkZSBzcHJpdGUtaW5zdGFncmFtaWNvbigpXG59XG5cbi5saW5rZWRpbkljb24ge1xuICAgIEBpbmNsdWRlIHNwcml0ZS1saW5rZWRpbmljb24oKVxufVxuXG4uTmV3IHtcbiAgICBAaW5jbHVkZSBzcHJpdGUtbmV3KClcbn1cblxuLnBheW1lbnRJY29ucyB7XG4gICAgQGluY2x1ZGUgc3ByaXRlLXBheW1lbnRpY29ucygpXG59XG5cbi5wYXlwYWxsb2dvIHtcbiAgICBAaW5jbHVkZSBzcHJpdGUtcGF5cGFsbG9nbygpXG59XG5cbi5yYXBpZGFjY291bnQge1xuICAgIEBpbmNsdWRlIHNwcml0ZS1yYXBpZGFjY291bnQoKVxufVxuXG4ucmFwaWRMb2dvIHtcbiAgICBAaW5jbHVkZSBzcHJpdGUtcmFwaWRsb2dvKClcbn1cblxuLnJhcGlkTG9nb1NtYWxsIHtcbiAgICBAaW5jbHVkZSBzcHJpdGUtcmFwaWRsb2dvc21hbGwoKVxufVxuXG4uU3BlY2lhbE9mZmVyIHtcbiAgICBAaW5jbHVkZSBzcHJpdGUtc3BlY2lhbG9mZmVyKClcbn1cblxuLnR3aXR0ZXJJY29uIHtcbiAgICBAaW5jbHVkZSBzcHJpdGUtdHdpdHRlcmljb24oKVxufVxuXG4udW5pTG9nbyB7XG4gICAgQGluY2x1ZGUgc3ByaXRlLXVuaWxvZ28oKVxufVxuXG4udW5pTG9nb1NtYWxsIHtcbiAgICBAaW5jbHVkZSBzcHJpdGUtdW5pbG9nb3NtYWxsKClcbn1cblxuLnlvdXR1YmVJY29uIHtcbiAgICBAaW5jbHVkZSBzcHJpdGUteW91dHViZWljb24oKVxufVxuIiwi77u/XG5AbWVkaWEgc2NyZWVuIGFuZCAje2JyZWFrcG9pbnQobGFyZ2UpfSB7XG5cdC5maXhlZFdpZHRoIHtcblx0XHRtaW4taGVpZ2h0OjUwMHB4O1xuXHR9XG59XG5cbi5idXR0b24uYWNjZW50LCAuYnV0dG9uLmxpZ2h0LWdyYXkge1xuXHRjb2xvcjokYmxhY2s7XG59XG5cbi8qZHVwbGljYXRlcyBvZiBQREYgaWNvbiovIFxuXG4vKi5pY29uX21vZHVsZV9NYW51YWxfcGRmbHJnLCAuaWNvbl9tb2R1bGVfUkVBQ0gtQ2VydGlmaWNhdGVfcGRmbHJnLCAuaWNvbl9tb2R1bGVfSGVhbHRoLWFuZC1TYWZldHlfcGRmbHJnLCAuaWNvbl9tb2R1bGVfRG9jdW1lbnQtT2YtQ29uZm9ybWl0eV9wZGZscmcge1xuXHRAaW5jbHVkZSBzcHJpdGUoJGljb24tbW9kdWxlLXRlY2huaWNhbC1zcGVjaWZpY2F0aW9uLXBkZmxyZyk7ICBcbn0qL1xuXG4uaWNvbl9yb2hzZXhlbXB0IHtcblx0ZGlzcGxheTppbmxpbmUtYmxvY2s7XG5cdGJhY2tncm91bmQ6IGdyZWVuO1xuXHRjb2xvcjogI2ZmZjtcblx0Zm9udC1zaXplOiAxZW07XG5cdGZvbnQtd2VpZ2h0OiBib2xkO1xuXHRsaW5lLWhlaWdodDogMS40ZW07XG5cdGJvcmRlci1yYWRpdXM6IDNlbTtcblx0LW1vei1ib3JkZXItcmFkaXVzOiAzZW07XG5cdC13ZWJraXQtYm9yZGVyLXJhZGl1czogM2VtO1xuXHRtYXJnaW4tbGVmdDogM3B4O1xuXHR0ZXh0LWFsaWduOiBjZW50ZXI7IFxuXHRtaW4td2lkdGg6IDEuM2VtO1xuXHRtaW4taGVpZ2h0OiAxLjNlbTtcblx0dmVydGljYWwtYWxpZ246IG1pZGRsZTtcbn1cblxuXG5cbi5yZWFjaGFsZXJ0IHtcblx0ZGlzcGxheTppbmxpbmUtYmxvY2s7XG5cdGJhY2tncm91bmQ6ICMwMDAwODA7XG5cdGNvbG9yOiB5ZWxsb3c7XG5cdGZvbnQtc2l6ZTogMWVtO1xuXHRmb250LXdlaWdodDogYm9sZDtcblx0bGluZS1oZWlnaHQ6IDEuMmVtO1xuXHRib3JkZXItcmFkaXVzOiAzZW07XG5cdC1tb3otYm9yZGVyLXJhZGl1czogM2VtO1xuXHQtd2Via2l0LWJvcmRlci1yYWRpdXM6IDNlbTtcblx0bWFyZ2luLWxlZnQ6IDNweDtcblx0dGV4dC1hbGlnbjogY2VudGVyOyBcblx0bWluLXdpZHRoOiAxLjJlbTtcblx0bWluLWhlaWdodDogMS4yZW07XG5cdHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7XG59XG5cbkBtZWRpYSBwcmludCB7XG4gIGFbaHJlZl06YWZ0ZXIge1xuICAgIGNvbnRlbnQ6IG5vbmUgIWltcG9ydGFudDtcbiAgfVxufVxuXG4uZGlzYWJsZWRCdXR0b24ge1xuICAgIGN1cnNvcjogbm90LWFsbG93ZWQ7XG4gICAgYmFja2dyb3VuZDogZ3JleSAhaW1wb3J0YW50O1xuICAgIGNvbG9yOiBkYXJrZ3JleSAhaW1wb3J0YW50O1xufVxuXG4ubm8tamF2YXNjcmlwdCB7XG4gICAgdG9wOiAwO1xuICAgIGxlZnQ6IDA7XG4gICAgcmlnaHQ6IDA7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogZmlyZWJyaWNrO1xuICAgIGNvbG9yOiAjZmZmO1xuICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICBwYWRkaW5nOiAxMHB4O1xuICAgIGZvbnQtd2VpZ2h0OiBib2xkO1xuICAgIGJveC1zaGFkb3c6IDFweCAwIDNweCAjMDAwO1xufVxuXG4ubm8tamF2YXNjcmlwdCBhIHtcbiAgICB0ZXh0LWRlY29yYXRpb246IHVuZGVybGluZTtcbiAgICBjb2xvcjogI2ZmZjtcbn0iLCLvu78vKkdyZXkgT3ZlcmxheSovXG5cbi5hcHBfZ3JleU92ZXJsYXkge1xuICAgIHBvc2l0aW9uOiBmaXhlZDtcbiAgICB0b3A6IDA7XG4gICAgbGVmdDogMDtcbiAgICB3aWR0aDogMTAwJTtcbiAgICBoZWlnaHQ6IDEwMCU7XG4gICAgei1pbmRleDogMTAwMDQ7XG4gICAgZGlzcGxheTogbm9uZTtcbn1cblxuLnNob3dPdmVybGF5IHtcbiAgICBkaXNwbGF5OiBibG9jayAhaW1wb3J0YW50O1xuICAgIGJhY2tncm91bmQtY29sb3I6IHJnYmEoMTkyLCAxOTIsIDE5MiwgMC42KTtcbn1cblxuXG4ucmV2ZWFsLW92ZXJsYXkge1xuICAgIHotaW5kZXg6OTk5OTk7IFxufVxuXG4vKkZvciBvdmVyIDE4Ki8gXG4uc3RhY2stb3V0ZXIge1xuICBjb2xvcjpyZWQ7XG59XG4uZmEtcGx1czE4IHtcbiAgICBmb250LWZhbWlseTogJ0hlbHZldGljYSBOZXVlJywgSGVsdmV0aWNhLCBBcmlhbCwgc2Fucy1zZXJpZjtcbiAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgZm9udC1zaXplOiA4MCU7XG4gICAgZm9udC13ZWlnaHQ6IGJvbGQ7XG59XG5cbi5mYS1wbHVzMTg6YmVmb3JlIHtcbiAgICBjb250ZW50OiBcIjE4K1wiO1xuICAgIGNvbG9yOndoaXRlO1xufSIsIu+7vy5yZXZlYWwge1xuICAgIGJveC1zaGFkb3c6IDAgNXB4IDE1cHggcmdiYSgwLDAsMCwuNSk7XG4gICAgb3V0bGluZTogbm9uZTtcblxuICAgICY6Zm9jdXMge1xuICAgICAgICBvdXRsaW5lOiBub25lO1xuICAgIH1cbn1cblxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQ4ZW0pIHtcbiAgICAucmV2ZWFsIHtcbiAgICAgICAgd2lkdGg6IDY2MHB4O1xuICAgICAgICBtYXgtd2lkdGg6IDkyLjg1NzE0cmVtO1xuICAgIH1cbn1cbi5wb3B1cFRpdGxlIHtcbiAgICBmb250LXNpemU6IDE4cHg7XG4gICAgZm9udC13ZWlnaHQ6IDYwMDtcbiAgICBtYXJnaW4tdG9wOiAwcHg7XG4gICAgcGFkZGluZy10b3A6IDBweDtcbiAgICBtYXJnaW4tYm90dG9tOiAxNnB4O1xufVxuXG4uc2lkZVBsYXllciB7XG4gICAgZGlzcGxheTpub25lO1xufVxuXG5cbkBtZWRpYSBzY3JlZW4gYW5kICN7YnJlYWtwb2ludChsYXJnZSl9IHtcbiAgICAuc2lkZVBsYXllciB7XG4gICAgICAgIGRpc3BsYXk6YmxvY2s7XG4gICAgICAgIC13ZWJraXQtZm9udC1zbW9vdGhpbmc6IHN1YnBpeGVsLWFudGlhbGlhc2VkO1xuICAgICAgICAtd2Via2l0LXBlcnNwZWN0aXZlOiAxMDAwO1xuICAgICAgICAtd2Via2l0LXRyYW5zaXRpb246IGFsbCAxNTBtcyBlYXNlLWluLW91dDtcbiAgICAgICAgdHJhbnNpdGlvbjogYWxsIDE1MG1zIGVhc2UtaW4tb3V0O1xuICAgICAgICBwb3NpdGlvbjogZml4ZWQ7XG4gICAgICAgIHdpZHRoOiAxMjBweDtcbiAgICAgICAgcmlnaHQ6IDEwcHg7XG4gICAgICAgIGJvdHRvbTogMTBweDtcbiAgICAgICAgei1pbmRleDoxNTAwO1xuXG4gICAgICAgIC5jb250cm9sQmFyIHtcbiAgICAgICAgICAgIC5idXR0b24ge1xuICAgICAgICAgICAgICAgIG1hcmdpbjogMCAwIDAuMjVyZW0gMDtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuXG4gICAgICAgIC52aWRlb1RpdGxlQmFyIHtcbiAgICAgICAgICAgIHBhZGRpbmc6IHJlbS1jYWxjKDVweCA1cHggMCA1cHgpO1xuICAgICAgICAgICAgYmFja2dyb3VuZDogcmdiYSgkYmxhY2ssIDAuOTYpO1xuICAgICAgICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xuXG4gICAgICAgICAgICBoMyB7XG4gICAgICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogMDtcbiAgICAgICAgICAgICAgICBjb2xvcjogJHdoaXRlO1xuICAgICAgICAgICAgICAgIGxpbmUtaGVpZ2h0OiAxLjFyZW07XG4gICAgICAgICAgICAgICAgZm9udC1zaXplOiAwLjc1cmVtO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG5cbiAgICAgICAgLnJlc3BvbnNpdmUtZW1iZWQge1xuICAgICAgICAgICAgYm9yZGVyOiByZW0tY2FsYyg1cHgpIHNvbGlkIHJnYmEoJGJsYWNrLCAwLjk2KTtcbiAgICAgICAgICAgIGJveC1zaGFkb3c6IDAgNHB4IDhweCAwIHJnYmEoMCwgMCwgMCwgMC4yKSwgMCA2cHggMjBweCAwIHJnYmEoMCwgMCwgMCwgMC4xOSk7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAuc2lkZVBsYXllci5leHBhbmRlZCB7XG4gICAgICAgIHRvcDogNTAlO1xuICAgICAgICBib3R0b206IGF1dG87XG4gICAgICAgIGxlZnQ6IDUwJTtcbiAgICAgICAgd2lkdGg6IDY0MHB4O1xuICAgICAgICAtbXMtdHJhbnNmb3JtOiB0cmFuc2xhdGUoLTUwJSwgLTUwJSk7XG4gICAgICAgIC1tb3otdHJhbnNmb3JtOiB0cmFuc2xhdGUoLTUwJSwgLTUwJSk7XG4gICAgICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGUoLTUwJSwgLTUwJSk7XG4gICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlKC01MCUsIC01MCUpO1xuICAgICAgICB6LWluZGV4OiAxMDAxMDtcbiAgICAgICAgaDMge1xuICAgICAgICAgICAgbGluZS1oZWlnaHQ6IDEuM3JlbTtcbiAgICAgICAgICAgIGZvbnQtc2l6ZTogMXJlbTtcbiAgICAgICAgfVxuICAgIH1cbn1cblxuXG5AbWVkaWEgc2NyZWVuIGFuZCAje2JyZWFrcG9pbnQoeHhsYXJnZSl9IHtcbiAgICAuc2lkZVBsYXllciB7XG4gICAgICAgIHdpZHRoOiAxODBweDtcblxuICAgICAgICAudmlkZW9UaXRsZUJhciB7XG4gICAgICAgICAgICBoMyB7XG4gICAgICAgICAgICAgICAgbGluZS1oZWlnaHQ6IDEuM3JlbTtcbiAgICAgICAgICAgICAgICBmb250LXNpemU6IDFyZW07XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cblxuICAgICAgICAucmVzcG9uc2l2ZS1lbWJlZCB7XG4gICAgICAgICAgICBib3JkZXI6IHJlbS1jYWxjKDVweCkgc29saWQgcmdiYSgkYmxhY2ssIDAuOTYpO1xuICAgICAgICAgICAgYm94LXNoYWRvdzogMCA0cHggOHB4IDAgcmdiYSgwLCAwLCAwLCAwLjIpLCAwIDZweCAyMHB4IDAgcmdiYSgwLCAwLCAwLCAwLjE5KTtcbiAgICAgICAgfVxuICAgIH1cbn1cblxuLkVycm9yRGlzcGxheSB7XG4gICAgcG9zaXRpb246IGZpeGVkO1xuICAgIHRvcDogMnB4O1xuICAgIHotaW5kZXg6IDk5OTk5OTk7XG4gICAgbWFyZ2luOiAwIGF1dG87XG4gICAgZGlzcGxheTogbm9uZTtcbiAgICBtYXgtd2lkdGg6IDEzMDBweDtcbiAgICBsZWZ0OiAwcHg7XG4gICAgcmlnaHQ6IDBweDtcbiAgICBwYWRkaW5nOiAzcHg7XG4gICAgZm9udC13ZWlnaHQ6Ym9sZDtcbiAgICBmb250LXNpemU6cmVtLWNhbGMoMTZweCk7XG5cbiAgICAuY2FsbG91dC5zdWNjZXNzIHtcbiAgICAgICAgY29sb3I6ICMwYTBhMGE7XG4gICAgICAgIGJvcmRlci10b3A6MTBweCBzb2xpZCAjOGRjNThkO1xuICAgIH1cblxuICAgIC5jYWxsb3V0LmFsZXJ0IHtcbiAgICAgICAgY29sb3I6ICMwYTBhMGE7XG4gICAgICAgIGJvcmRlci10b3A6MTBweCBzb2xpZCAjZTIxZTFlO1xuICAgIH1cblxuICAgIC5jYWxsb3V0LnNlY29uZGFyeSB7XG4gICAgICAgIGNvbG9yOiAjMGEwYTBhO1xuICAgICAgICBib3JkZXItdG9wOjEwcHggc29saWQgIzc2NzY3NjtcbiAgICB9XG59Iiwi77u/LmdyZWVuLXRleHQge1xuICAgIGNvbG9yOiMwMDgwMDA7XG59XG5cbi5ibHVlLXRleHQge1xuICAgIGNvbG9yOiMxMDNjY2E7XG59XG5cbi5iaWctcmVkLXRleHQge1xuICAgIGNvbG9yOiBSZWQ7XG4gICAgZm9udC1zaXplOiAxNnB4O1xufVxuXG4ub3JhbmdlLXRleHQsIC5vcmFuZ2VUZXh0IHtcbiAgICBjb2xvcjogI2ZmYTUwMDtcbn1cblxuLnJlZC10ZXh0LCAucmVkVGV4dCB7XG4gICAgY29sb3I6ICNiMjIyMjIhaW1wb3J0YW50O1xufVxuXG4uZ3JheS10ZXh0IHtcbiAgICBjb2xvcjojNzk3OTZBO1xufVxuXG4uZ3JleS10ZXh0IHtcbiAgICBjb2xvcjogIzc5Nzk2QTtcbiAgICBmb250LXdlaWdodDogbm9ybWFsO1xufVxuXG4ucGFzdGVsLWJsdWUtdGV4dCB7XG4gICAgY29sb3I6ICM5MmFjZmY7XG59XG5cbi5wYXN0ZWwtZ3JlZW4tdGV4dCB7XG4gICAgY29sb3I6ICM4ZGY5ODE7XG59XG5cbi5wYXN0ZWwtcmVkLXRleHQge1xuICAgIGNvbG9yOiAjZmY3YjdiO1xufVxuXG4ucGFzdGVsLW9yYW5nZS10ZXh0IHtcbiAgICBjb2xvcjogI2ZmY2Q3Mjtcbn0iLCLvu79AbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA2My45Mzc1ZW0pIHtcbiAgICB1bC5icmVhZGNydW1icyB7XG4gICAgICAgIGJvcmRlci1ib3R0b206MXB4IHNvbGlkICRsaWdodC1ncmF5O1xuICAgICAgICBwYWRkaW5nOnJlbS1jYWxjKDNweCk7XG4gICAgICAgIGxpe1xuICAgICAgICAgICAgZGlzcGxheTpub25lO1xuICAgICAgICAgICAgZmxvYXQ6bm9uZTtcbiAgICAgICAgICAgIHBhZGRpbmc6cmVtLWNhbGMoM3B4KTtcbiAgICAgICAgICAgIGZvbnQtc2l6ZTpyZW0tY2FsYygxNXB4KTtcbiAgICAgICAgfVxuICAgICAgICBsaS5icmVhZGNydW1iU3RhZ2Uge1xuICAgICAgICAgICAgJjpob3ZlciB7XG4gICAgICAgICAgICAgICAgYmFja2dyb3VuZDokbGlnaHQtZ3JheTsgXG4gICAgICAgICAgICB9XG4gICAgICAgICAgICAmLmJyZWFkY3J1bWJFeHBhbmQge1xuICAgICAgICAgICAgICAgIGRpc3BsYXk6YmxvY2s7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgICAgbGkubGFzdEJyZWFkY3J1bWJ7XG4gICAgICAgICAgICBkaXNwbGF5OmJsb2NrO1xuICAgICAgICAgICAgZm9udC13ZWlnaHQ6Ym9sZDtcbiAgICAgICAgICAgIHBhZGRpbmctYm90dG9tOnJlbS1jYWxjKDhweCk7XG4gICAgICAgIH0gXG4gICAgfVxuICAgIC5icmVhZGNydW1iRXhwYW5kTGluayB7XG4gICAgICAgIHdpZHRoOjUwcHg7XG4gICAgICAgIGRpc3BsYXk6aW5saW5lLWJsb2NrO1xuICAgICAgICBib3JkZXItbGVmdDoxcHggc29saWQgJGxpZ2h0LWdyYXk7XG4gICAgICAgIGZsb2F0OnJpZ2h0O1xuICAgICAgICB0ZXh0LWFsaWduOmNlbnRlcjtcbiAgICAgICAgY3Vyc29yOnBvaW50ZXI7XG5cbiAgICAgICAgaSB7XG4gICAgICAgICAgICBjb2xvcjogJGRhcmstZ3JheTsgXG4gICAgICAgIH1cbiAgICB9XG59ICAgICAiLCLvu78uYnJlYWRjcnVtYkNvbnRhaW5lciB7XG4gICAgbWFyZ2luLXRvcDpyZW0tY2FsYygxMHB4KTtcbiAgICBtYXJnaW4tYm90dG9tOnJlbS1jYWxjKDEwcHgpO1xuXG4gICAgICAgIGEge1xuICAgICAgICAgICAgY29sb3I6JGRhcmstZ3JheTtcbiAgICAgICAgICAgIGZvbnQtc2l6ZTpyZW0tY2FsYygxNHB4KTtcbiAgICAgICAgICAgICAgICAmOmhvdmVyIHtcbiAgICAgICAgICAgICAgICAgICAgY29sb3I6JGJsYWNrO1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgfVxuIFxufSIsIu+7v0BtZWRpYSBzY3JlZW4gYW5kICN7YnJlYWtwb2ludChtZWRpdW0gZG93bil9IHtcbiAgICAgIC5tb2JpbGVNZW51IC52ZXJ0aWNhbC5tZW51IHtcbiAgICAgICAgYSB7XG4gICAgICAgICAgICBiYWNrZ3JvdW5kOiBub25lO1xuICAgICAgICAgICAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkICRtZWRpdW0tZ3JheTtcbiAgICAgICAgICAgIGZvbnQtd2VpZ2h0OmJvbGQ7XG4gICAgICAgIH1cbiAgICBcbiAgICAgICAgLypsaTpsYXN0LWNoaWxkIGEge1xuICAgICAgICAgICAgYm9yZGVyOjBweDtcbiAgICAgICAgfSovXG4gICAgfVxuXG4gICAgLm1vYmlsZU1lbnUgaDMge1xuICAgICAgICBib3JkZXItYm90dG9tOiAxcHggc29saWQgI2RkZGRkZDtcbiAgICAgICAgcGFkZGluZzogMTBweCA1cHg7XG4gICAgICAgIG1hcmdpbjogMDtcbiAgICAgICAgYmFja2dyb3VuZDokbGlnaHQtZ3JheTtcbiAgICB9XG59XG5cbi5tb2JpbGVNZW51IC52ZXJ0aWNhbC5tZW51IGEge1xuICAgIGNvbG9yOiRibGFjaztcbiAgICAmOmhvdmVyIHtcbiAgICAgICAgdGV4dC1kZWNvcmF0aW9uOnVuZGVybGluZTtcbiAgICAgICAgdGV4dC1kZWNvcmF0aW9uLWNvbG9yOmJsYWNrO1xuICAgIH1cbiAgICBAaW5jbHVkZSBicmVha3BvaW50KGxhcmdlKSB7IFxuICAgICAgICBwYWRkaW5nLWxlZnQ6MDtcbiAgICAgICAgcGFkZGluZy1yaWdodDowO1xuICAgIH1cbn1cblxuLm1vYmlsZU1lbnUgLmNvbHVtbi1ibG9jayB7XG4gICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobGFyZ2UpIHsgXG4gICAgICAgICBtaW4taGVpZ2h0OiByZW0tY2FsYygxMDBweCk7XG4gICAgfVxufSIsIi8qR3JheSBTZWN0aW9uIEhlYWRlciovXG5cbmgyLnNlY3Rpb25IZWFkZXIsIGgxLnNlY3Rpb25IZWFkZXIge1xuICAgIGJhY2tncm91bmQ6ICRsaWdodC1ncmF5O1xuICAgIHBhZGRpbmc6cmVtLWNhbGMoNnB4KTtcbn1cblxuaDIuc2VjdGlvbkhlYWRlclB1cmNoYXNlVGlwIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiBkYXJrb3JhbmdlO1xuICAgIHBhZGRpbmc6IHJlbS1jYWxjKDZweCk7XG4gICAgY29sb3I6ICNmZmY7XG4gICAgZm9udC1zaXplOiAxLjNlbTtcbiAgICBmb250LXdlaWdodDogbm9ybWFsO1xuICAgIHZlcnRpY2FsLWFsaWduOiBjZW50cmFsO1xufVxuXG4uc21hbGxQcm9kSW1hZ2Uge1xuICAgIHdpZHRoOnJlbS1jYWxjKDc1cHgpO1xuICAgIGhlaWdodDpyZW0tY2FsYyg3NXB4KTtcbiAgICBwYWRkaW5nOnJlbS1jYWxjKDVweCk7XG59XG5cbi5wcmljZXMtc3RyaWtldGhyb3VnaCB7XG4gICAgZm9udC1zaXplOiByZW0tY2FsYygxMnB4KTtcbiAgICBjb2xvcjogJGRhcmstZ3JheTtcbiAgICB0ZXh0LWRlY29yYXRpb246IGxpbmUtdGhyb3VnaDtcbn1cblxuLnNtYWxsTGFiZWwge1xuICAgIGNvbG9yOiRkYXJrLWdyYXk7XG4gICAgZm9udC1zaXplOnJlbS1jYWxjKDEzcHgpO1xufSAiLCIvKkluYyBWQVQgQ2hlY2tib3gqL1xuLmNoZWNrYm94IHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG59XG5cbi5jaGVja2JveCBpbnB1dFt0eXBlPVwiY2hlY2tib3hcIl0ge1xuICAgIHRvcDogMDtcbiAgICBsZWZ0OiAwO1xuICAgIHZpc2liaWxpdHk6IGhpZGRlbjtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG59XG5cbi5jaGVja2JveCAuY3VzdG9tLWNoZWNrYm94IHtcbiAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgdmVydGljYWwtYWxpZ246IHRvcDtcbiAgICBtYXJnaW46IDAgM3B4IDAgMDtcbiAgICB3aWR0aDogMThweDtcbiAgICBoZWlnaHQ6IDE4cHg7XG4gICAgYm9yZGVyOiAxcHggc29saWQgIzE1ODNjYztcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG59XG5cbi5jaGVja2JveCAuY3VzdG9tLWNoZWNrYm94IHtcbiAgICBiYWNrZ3JvdW5kOiAjMTU4M2NjO1xuICAgIGJveC1zaGFkb3c6IGluc2V0IDAgMCAwIDEycHggI2ZmZjtcbiAgICB0ZXh0LWFsaWduOiBsZWZ0O1xufVxuXG4uY2hlY2tib3ggLmljb24tY2hlY2sge1xuICAgIHdpZHRoOiAyMHB4O1xuICAgIGhlaWdodDogMjBweDtcbiAgICBiYWNrZ3JvdW5kLXNpemU6IGNvdmVyO1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICB0b3A6IDBweDtcbiAgICBsZWZ0OiAwcHg7XG4gICAgdHJhbnNmb3JtOiBzY2FsZSgwKTtcbiAgICB0cmFuc2l0aW9uOiBhbGwgMTgwbXMgZWFzZTtcbn1cblxuLmljb24tY2hlY2s6YmVmb3JlIHtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgY29udGVudDogJ1xcMjcxMyc7XG4gICAgd2lkdGg6IDEycHg7XG4gICAgZm9udC1zaXplOiAxMi42NjY2N3B4O1xuICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICBsaW5lLWhlaWdodDogMTZweDtcbiAgICBjb2xvcjogI2ZmZjtcbiAgICBmb250LXdlaWdodDogYm9sZDtcbn1cblxuLmNoZWNrYm94IGlucHV0W3R5cGU9XCJjaGVja2JveFwiXTpjaGVja2VkICsgLmN1c3RvbS1jaGVja2JveCB7XG4gICAgYm9yZGVyLWNvbG9yOiAjMjA5NUYwO1xuICAgIGJveC1zaGFkb3c6IG5vbmU7XG59XG5cbi5jaGVja2JveCBpbnB1dFt0eXBlPVwiY2hlY2tib3hcIl06Y2hlY2tlZCArIC5jdXN0b20tY2hlY2tib3ggLmljb24tY2hlY2sge1xuICAgIHRyYW5zZm9ybTogc2NhbGUoMSk7XG59XG5cbi5jaGVja2JveCAuYWNjZW50IHtcbiAgICBib3JkZXI6IDFweCBzb2xpZCAkYWNjZW50O1xufVxuXG4uY2hlY2tib3ggaW5wdXRbdHlwZT1cImNoZWNrYm94XCJdOmNoZWNrZWQgKyAuYWNjZW50IHtcbiAgICBiYWNrZ3JvdW5kOiAkYWNjZW50O1xuICAgIGJvcmRlcjogMXB4IHNvbGlkICRhY2NlbnQ7XG59XG5cbi8qc2VhcmNoIGZpZWxkIGJ1dHRvbiBncm91cCBpbnB1dCovXG5cbmlucHV0LnNlYXJjaElucHV0LCBpbnB1dC5zZWFyY2hJbnB1dDpmb2N1cyB7XG4gICAgYm9yZGVyOiAwcHg7XG59XG5cbi8qc2Nyb2xsIHRhYmxlIGxhcmdlIGJyZWFrcG9pbnQgZml4Ki9cblxuLnRhYmxlLXNjcm9sbCB0YWJsZSB7XG4gICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobGFyZ2UpIHtcbiAgICAgICAgd2lkdGg6IDEwMCU7XG4gIH0gXG59XG5cbmxhYmVsLmZpZWxkSGVhZGluZywgbGFiZWwuc21hbGxMYWJlbCB7XG4gICAgZm9udC1zaXplOnJlbS1jYWxjKDEycHgpO1xuICAgIGNvbG9yOiRkYXJrLWdyYXk7XG4gICAgJi5pbmxpbmUge1xuICAgICAgICBkaXNwbGF5OmlubGluZTtcbiAgICB9XG5cbiAgICAmLmFsdCB7XG4gICAgICAgIGNvbG9yOiRibGFjaztcbiAgICB9XG59XG5cbi5idXR0b24uaW5saW5lIHtcbiAgICBtYXJnaW4tYm90dG9tOjBweDtcbiAgICBtYXJnaW4tbGVmdDpyZW0tY2FsYyg1cHgpO1xuICAgIG1hcmdpbi1yaWdodDpyZW0tY2FsYyg1cHgpO1xufVxuXG4uYnV0dG9uIHtcbiAgICBmb250LXdlaWdodDpib2xkO1xufSIsIi5tYWluSW1nQ29udGFpbmVyIHtcbiAgICB0ZXh0LWFsaWduOmNlbnRlcjtcbiAgICBwb3NpdGlvbjpyZWxhdGl2ZTtcbiAgICAgQGluY2x1ZGUgYnJlYWtwb2ludChzbWFsbCBvbmx5KSB7IFxuICAgICAgICB3aWR0aDogNjUlO1xuICAgICAgICBtYXJnaW46IDAgYXV0bztcbiAgICAgfVxuXG4gICAgLmJhZGdlT3ZlcmxheSB7XG4gICAgICAgIHBvc2l0aW9uOmFic29sdXRlO1xuICAgICAgICBsZWZ0OjVweDtcbiAgICAgICAgdG9wOjVweDtcbiAgICAgICAgei1pbmRleDo1OyBcbiAgICB9XG4gICAgLk1hZ2ljMzYwLWNvbnRhaW5lciB7XG4gICAgICAgIGJvcmRlcjpub25lOyBcbiAgICB9XG59XG5cbi5NYWdpY1Njcm9sbCAubWNzLWl0ZW0gaW1nIHtcbiAgICBib3JkZXI6MXB4IHNvbGlkICRtZWRpdW0tZ3JheTtcbiAgICBib3gtc2hhZG93Om5vbmU7ICBcbn0gICIsIi5zdGFyT3V0ZXIge1xuICAgIGNvbG9yOiRkYXJrLWdyYXk7XG4gICAgcGFkZGluZzogMC4zNXJlbSAwO1xuICAgIGEge1xuICAgICAgICBjb2xvcjokZGFyay1ncmF5O1xuXG4gICAgICAgICY6aG92ZXIge1xuICAgICAgICAgICAgdGV4dC1kZWNvcmF0aW9uOnVuZGVybGluZTtcbiAgICAgICAgICAgIHRleHQtZGVjb3JhdGlvbi1jb2xvcjokZGFyay1ncmF5O1xuICAgICAgICB9XG4gICAgICAgIFxuICAgIH1cbiAgICBhLnJldmlld1N0YXJzIHtcbiAgICAgICAgdGV4dC1kZWNvcmF0aW9uOm5vbmU7IFxuICAgIH1cbiAgICAuZmEtc3RhciB7XG4gICAgICAgICAgICBjb2xvcjogI2ZiZDkyMztcbiAgICAgICAgfSBcbn0gIiwiLnByaWNlUGVySXRlbSB7XG4gICAgdGV4dC1hbGlnbjpyaWdodDtcbiAgICBjb2xvcjokZGFyay1ncmF5O1xuICAgIGZvbnQtc2l6ZTpyZW0tY2FsYygxNHB4KTtcbiAgICBmb250LXdlaWdodDogYm9sZDtcbn1cblxuLmxhcmdlUHJpY2VUYWJsZSB7XG4gICAgbWFyZ2luLWJvdHRvbTogLjI1cmVtO1xuICAgIG1hcmdpbi10b3A6IDAuNDVyZW07XG59XG5cbi5nZXRRdW90ZUxpbmsge1xuICAgIGNvbG9yOmJsYWNrO1xuICAgIGRpc3BsYXk6YmxvY2s7XG4gICAgdGV4dC1hbGlnbjpjZW50ZXI7XG4gICAgbWFyZ2luLXRvcDowLjZyZW07XG4gICAgbWFyZ2luLWJvdHRvbTowLjZyZW07IFxuXG4gICAgaDIge1xuICAgICAgICBmb250LXNpemU6IDEuMTJlbTtcbiAgICB9XG59XG5cbi5za3VQcm9tb0FwcGxpZWRMYWJlbCB7XG4gICAgZm9udC1zaXplOiAuODU3MTRyZW07XG4gICAgY29sb3I6ICM3OTc5NkE7XG4gICAgdGV4dC1hbGlnbjpyaWdodDtcbiAgICBkaXNwbGF5OmJsb2NrOyAgXG59XG5cbi5wcmljZVBhbmVsIHtcbiAgICBwYWRkaW5nOjBweCA3cHggNXB4IDdweDtcbiAgICBiYWNrZ3JvdW5kOiNmN2Y2ZjY7XG4gICAgYm9yZGVyOjNweCBzb2xpZCAjZThlNWU1O1xuICAgIC5pbnB1dC1ncm91cCB7XG4gICAgICAgIGRpc3BsYXk6IHRhYmxlO1xuICAgICAgICBtYXJnaW4tYm90dG9tOiAwLjRyZW07XG4gICAgfVxuXG4gICAgI29wdGlvbnMtdmF0IHtcbiAgICAgICAgcGFkZGluZzogLjVlbSAwIDA7XG4gICAgICAgIHRleHQtYWxpZ246IHJpZ2h0O1xuICAgIH1cbn0gIFxuXG4uc21hbGxQcmljZVRhYmxlIHtcbiAgICAucHJpY2VUYWJsZSB0YWJsZSB0aCwgLnByaWNlVGFibGUgdGFibGUgdGQgeyBcbiAgICAgICAgcGFkZGluZzogLjQyODU3cmVtIC4yNzE0M3JlbSAuNTcxNDNyZW07XG4gICAgICAgIHRleHQtYWxpZ246Y2VudGVyO1xuICAgIH1cbiAgICAucHJpY2VUYWJsZSB0YWJsZSB0ZCwgLnByaWNlVGFibGUgdGFibGUgdGgge1xuICAgICAgICBmb250LXNpemU6cmVtLWNhbGMoMTNweCk7IFxuICAgICAgICBsaW5lLWhlaWdodDoxLjFyZW07ICBcbiAgICB9XG4gICAgLmlucHV0LWdyb3VwIHtcbiAgICAgICAgbWFyZ2luLWJvdHRvbTpyZW0tY2FsYyg1KTtcbiAgICB9XG59IiwiLnByb2R1Y3RWYXJpYXRpb24ge1xuICAgIC8qYm9yZGVyOiAxcHggc29saWQgJGRhcmstZ3JheTsqL1xuICAgIGJvcmRlcjoxcHggc29saWQgJGxpZ2h0LWdyYXk7XG4gICAgYm94LXNpemluZzogYm9yZGVyLWJveDtcbiAgICBtYXJnaW4tYm90dG9tOiAyMHB4O1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAvKmJhY2tncm91bmQ6JGxpZ2h0LWdyYXk7Ki9cbiAgICBiYWNrZ3JvdW5kOiNmN2Y2ZjY7XG4gICAgcGFkZGluZzoxMHB4O1xuXG4gICAgdWwge1xuICAgICAgICBsaXN0LXN0eWxlLXR5cGU6bm9uZTtcbiAgICAgICAgbWFyZ2luOnJlbS1jYWxjKDNweCk7XG4gICAgfVxuICAgIHAge1xuICAgICAgICBmb250LXNpemU6IDE0cHg7XG4gICAgICAgIGZvbnQtd2VpZ2h0OiBib2xkO1xuICAgICAgICBtYXJnaW4tbGVmdDogMDtcbiAgICAgICAgcGFkZGluZy10b3A6MHB4O1xuICAgICAgICBtYXJnaW4tdG9wOjBweDtcbiAgICB9XG5cbiAgICBzcGFuIHtcbiAgICAgICAgYm9yZGVyOiAxcHggc29saWQgI2NjYztcbiAgICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgICAgICBwYWRkaW5nOiA1cHg7XG4gICAgICAgIGJvcmRlci1yYWRpdXM6IDRweDtcbiAgICAgICAgYmFja2dyb3VuZDogd2hpdGU7XG4gICAgICAgIG1hcmdpbjogNXB4IDA7XG4gICAgICAgIGN1cnNvcjpwb2ludGVyO1xuICAgICAgICAmLnNlbGVjdGVkIHtcbiAgICAgICAgICAgIGJvcmRlcjoxcHggc29saWQgI2I1N2U3ZTtcbiAgICAgICAgICAgIGN1cnNvcjpkZWZhdWx0O1xuICAgICAgICAgICAgJjpob3ZlciB7XG4gICAgICAgICAgICAgICAgYmFja2dyb3VuZDp3aGl0ZTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgICAmOmhvdmVyIHtcbiAgICAgICAgICAgIGJhY2tncm91bmQ6I2VlZTtcbiAgICAgICAgICAgIGJvcmRlcjoxcHggc29saWQgI2I1N2U3ZTtcbiAgICAgICAgfVxuICAgIH1cbn1cblxuXG5cbi5hcHBfQXR0cmlidXRlVmFyaWF0aW9uUHJvZHVjdHMgdWwge1xuICAgIGxpc3Qtc3R5bGUtdHlwZTpub25lO1xufVxuLmFwcF9BdHRyaWJ1dGVWYXJpYXRpb25Qcm9kdWN0cyB1bCBsaSB7XG4gICAgZGlzcGxheTpibG9jaztcbiAgICBib3JkZXItYm90dG9tOjAuNXB4IGRvdHRlZCBsaWdodGdyZXk7XG4gICAgcGFkZGluZzoxMHB4O1xufVxuXG4uYXBwX0F0dHJpYnV0ZVZhcmlhdGlvblByb2R1Y3RzIHVsIGxpOjphZnRlcntcbiAgICAgICAgY29udGVudDpcIlwiO1xuICAgICAgICBjbGVhcjpib3RoO1xuICAgICAgICBkaXNwbGF5OnRhYmxlO1xuICAgIH1cbi5hcHBfQXR0cmlidXRlVmFyaWF0aW9uUHJvZHVjdHMgc3BhbiB7XG4gICAgZGlzcGxheTppbmxpbmUtYmxvY2s7XG4gICAgZmxvYXQ6bGVmdDtcbiAgICBwYWRkaW5nOjVweDtcbiAgICBtYXJnaW46NXB4O1xuICAgIGJvcmRlcjogMnB4IHNvbGlkIGxpZ2h0Z3JleTtcbiAgICBjdXJzb3I6cG9pbnRlcjtcbiAgICBib3JkZXItcmFkaXVzOjVweDtcbn1cblxuLmFwcF9BdHRyaWJ1dGVWYXJpYXRpb25Qcm9kdWN0cyBzcGFuLnNlbGVjdGVkIHtcbiAgICBib3JkZXI6IDJweCBzb2xpZCBpbmRpYW5yZWQ7XG59XG5cbi5hcHBfQXR0cmlidXRlVmFyaWF0aW9uUHJvZHVjdHMgc3Bhbi5kaXNhYmxlZCB7XG4gICAgYm9yZGVyOiAycHggc29saWQgd2hpdGU7XG4gICAgdGV4dC1kZWNvcmF0aW9uOmxpbmUtdGhyb3VnaDtcbiAgICBjb2xvcjpsaWdodGdyYXk7ICAgIFxufVxuXG4iLCIucHJvZHVjdFdpZGdldCB7XG4gICAgbGlzdC1zdHlsZS10eXBlOm5vbmU7XG4gICAgYm9yZGVyOjFweCBzb2xpZCAkbGlnaHQtZ3JheTtcbiAgICBtYXJnaW46YXV0bztcbiAgICBib3JkZXItcmFkaXVzOiAycHg7XG5cbiAgICBsaSB7XG4gICAgICAgIHBhZGRpbmc6NXB4IDVweCAwIDVweDtcbiAgICAgICAgY2xlYXI6Ym90aDtcbiAgICAgICAgYm9yZGVyLWJvdHRvbToxcHggc29saWQgJGxpZ2h0LWdyYXk7XG4gICAgICAgIG92ZXJmbG93OmhpZGRlbjtcbiAgICAgICAgJjpsYXN0LWNoaWxkIHtcbiAgICAgICAgICAgIGJvcmRlci1ib3R0b206bm9uZTtcbiAgICAgICAgfSBcblxuICAgICAgICBhIHtcbiAgICAgICAgICAgIGRpc3BsYXk6YmxvY2s7XG4gICAgICAgICAgICBjb2xvcjpibGFjaztcbiAgICAgICAgfVxuICAgICAgICBwIHtcbiAgICAgICAgICAgIG1hcmdpbi1ib3R0b206cmVtLWNhbGMoNnB4KTtcbiAgICAgICAgfVxuICAgIH0gXG59XG5cbi53aWRnZXRIZWFkZXIge1xuICAgIGJhY2tncm91bmQ6ICRsaWdodC1ncmF5O1xuICAgIGNvbG9yOiRibGFjaztcbiAgICBmb250LXdlaWdodDpib2xkO1xuICAgIGZvbnQtc2l6ZTpyZW0tY2FsYygxNnB4KTtcbiAgICB0ZXh0LWFsaWduOmNlbnRlcjtcbiAgICBwYWRkaW5nOiByZW0tY2FsYyg4cHggNXB4IDlweCA1cHgpICFpbXBvcnRhbnQ7XG59XG5cblxuLndpZGdldFByb2R1Y3RMZWZ0IHtcbiAgICBmbG9hdDpsZWZ0OyBcbiAgICB3aWR0aDo0NSU7XG4gICAgdGV4dC1hbGlnbjpjZW50ZXI7XG4gICAgaW1nIHsgXG4gICAgICAgIHdpZHRoOjYwJTtcbiAgICB9XG59XG5cbi53aWRnZXRQcm9kdWN0UmlnaHQgeyBcbiAgICBmbG9hdDpsZWZ0O1xuICAgIHdpZHRoOjUzJTtcbn0gICIsIu+7vy5wcm9kdWN0LXRpbGUtY29udGFpbmVyIHtcbiAgICBkaXNwbGF5OiBncmlkO1xuICAgIGdyaWQtdGVtcGxhdGUtY29sdW1uczogcmVwZWF0KGF1dG8tZml0LCBtaW5tYXgoMjUwcHgsIDFmcikpO1xuICAgIGdyaWQtZ2FwOiAxMHB4O1xuICAgIGJveC1zaGFkb3c6ICR0aHVtYm5haWwtc2hhZG93O1xufVxuXG4ucHJvZHVjdC10aWxlIHtcbiAgICBtYXgtd2lkdGg6IDI1MHB4O1xuICAgIHBhZGRpbmc6IC41ZW07XG59XG5cbi5wcm9kdWN0LXRpbGUtLWRldGFpbHMge1xuICAgIGgzIHtcbiAgICAgICAgdGV4dC1vdmVyZmxvdzogZWxsaXBzaXM7XG4gICAgICAgIHdoaXRlLXNwYWNlOiBub3dyYXA7XG4gICAgICAgIG92ZXJmbG93OiBoaWRkZW47XG4gICAgfVxufVxuXG4ucHJvZHVjdC10aWxlLS1jb250cm9scyB7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWJldHdlZW47XG4gICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcblxuICAgIGJ1dHRvbiB7XG4gICAgICAgIG1hcmdpbjogMDtcbiAgICB9XG5cbiAgICBsYWJlbCB7XG4gICAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcblxuICAgICAgICBpbnB1dCB7XG4gICAgICAgICAgICBtYXJnaW46IDA7XG4gICAgICAgIH1cbiAgICB9XG59IiwiLnByb2R1Y3RJdGVtIHtcbiAgICBwb3NpdGlvbjpyZWxhdGl2ZTtcbiAgICBib3JkZXItYm90dG9tOjFweCBzb2xpZCAkbGlnaHQtZ3JheTtcbiAgICBtYXJnaW4tYm90dG9tOnJlbS1jYWxjKDUpO1xuICAgIG1pbi1oZWlnaHQ6MjAwcHg7XG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludChtZWRpdW0gZG93bikge1xuICAgICAgICB0ZXh0LWFsaWduOmNlbnRlcjsgXG4gICAgfVxuICAgIGgzIHtcbiAgICAgICAgY29sb3I6JGJsYWNrOyBcbiAgICB9XG59XG5cbi5vdGhlckNvbnRyb2xzIHtcbiAgICBwb3NpdGlvbjphYnNvbHV0ZTtcbiAgICBsZWZ0OjNweDtcbiAgICBib3R0b206NXB4O1xuICAgIHRleHQtYWxpZ246bGVmdDtcbiAgICBsYWJlbCB7XG4gICAgICAgIG1hcmdpbi1yaWdodDozcHg7XG4gICAgfVxuICAgIHNwYW4sIGxhYmVsLCBhIHtcbiAgICAgICAgZGlzcGxheTppbmxpbmUtYmxvY2s7XG4gICAgfVxufVxuXG4ucXVpY2tWaWV3TGluayB7XG4gICAgZm9udC1zaXplOiAxMnB4O1xuICAgIGJvcmRlcjogMXB4IHNvbGlkICNjY2M7XG4gICAgcGFkZGluZzogOHB4IDVweDtcbiAgICBib3gtc2hhZG93OiAwIDFweCAxcHggcmdiYSgwLDAsMCwuMjUpO1xuICAgIGJhY2tncm91bmQ6IHdoaXRlO1xuICAgIGNvbG9yOiAkYmxhY2s7ICBcbiAgICAmOmhvdmVyIHtcbiAgICAgICAgYmFja2dyb3VuZDokYWNjZW50OyBcbiAgICAgICAgY29sb3I6JGJsYWNrO1xuICAgIH1cbn0gIFxuXG4uc21hbGxJbWdDb250YWluZXIge1xuICAgIHRleHQtYWxpZ246Y2VudGVyO1xuICAgIG1hcmdpbjowIGF1dG87XG4gICAgcG9zaXRpb246cmVsYXRpdmU7IFxuICAgIGltZyB7XG4gICAgICAgIG1heC13aWR0aDoxNDBweDtcbiAgICB9XG59XG5cblxuLnNtYWxsQmFkZ2VPdmVybGF5IHtcbiAgICBwb3NpdGlvbjphYnNvbHV0ZTsgXG4gICAgcmlnaHQ6NXB4O1xuICAgIGJvdHRvbTo1cHg7IFxufVxuXG4uc21hbGxTdG9ja01lc3NhZ2Uge1xuICAgIGZvbnQtd2VpZ2h0OmJvbGQ7XG4gICAgdGV4dC1hbGlnbjpsZWZ0O1xuICAgIGZvbnQtc2l6ZTpyZW0tY2FsYygxNHB4KTsgXG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludChzbWFsbCBvbmx5KSB7XG4gICAgICAgIG1hcmdpbi1ib3R0b206cmVtLWNhbGMoMTYpO1xuICAgIH0gXG59XG5cblxuLnF1aWNrVmlld1BvcHVwQ29udGVudCB7XG4gICAgbWF4LWhlaWdodDo3NTBweDsgXG4gICAgb3ZlcmZsb3cteTphdXRvO1xufSAiLCLvu78uYXR0cmlidXRlRmlsdGVycyB7XHJcblx0bGlzdC1zdHlsZS10eXBlOm5vbmU7XHJcblx0Ym9yZGVyOjFweCBzb2xpZCAkbGlnaHQtZ3JheTtcclxuXHRtYXJnaW46YXV0bztcclxuXHRib3JkZXItcmFkaXVzOiAycHg7XHJcbiAgICB6LWluZGV4OiAxMDAwNjtcclxuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcclxuICAgIGJhY2tncm91bmQ6IHdoaXRlO1xyXG5cclxuXHRsaSB7XHJcblx0XHRwYWRkaW5nOjVweCA1cHggMCA1cHg7XHJcblx0XHRjbGVhcjpib3RoO1xyXG5cdFx0Ym9yZGVyLWJvdHRvbToxcHggc29saWQgJGxpZ2h0LWdyYXk7XHJcbiAgICAgICAgcG9zaXRpb246cmVsYXRpdmU7XHJcbiAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludChzbWFsbCBkb3duKSB7XHJcbiAgICAgICAgICAgIHBhZGRpbmc6MTBweCA1cHggMCAxMHB4O1xyXG4gICAgICAgIH1cclxuXHRcdCY6bGFzdC1jaGlsZCB7XHJcblx0XHRcdGJvcmRlci1ib3R0b206bm9uZTtcclxuXHRcdH0gXHJcblxyXG5cdFx0YSB7XHJcblx0XHRcdGRpc3BsYXk6YmxvY2s7XHJcblx0XHRcdGNvbG9yOmJsYWNrO1xyXG5cdFx0XHR3aWR0aDogOTUlO1xyXG5cdFx0XHRvdmVyZmxvdzogYXV0bztcclxuXHRcdFx0cGFkZGluZzogNXB4IDAgNXB4IDEwcHg7XHJcblx0XHRcdHBvc2l0aW9uOiByZWxhdGl2ZTtcclxuXHRcdFx0dGV4dC1kZWNvcmF0aW9uOiBub25lO1xyXG5cdFx0fVxyXG4gICAgICAgIC5hdHRyaWJ1dGVOYW1lIHtcclxuICAgICAgICAgICAgZGlzcGxheTpub25lO1xyXG4gICAgICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KG1lZGl1bSkge1xyXG4gICAgICAgICAgICAgICAgZGlzcGxheTpibG9jaztcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuXHRcdC5hdHRyaWJ1dGVMaXN0SG9sZGVyIHtcclxuICAgICAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludChtZWRpdW0pIHtcclxuICAgICAgICAgICAgICAgIHdpZHRoOnJlbS1jYWxjKDI4MHB4KTtcclxuXHRcdFx0ICAgIHRvcDogLTUwJTtcclxuXHRcdFx0ICAgIGxlZnQ6IDEwMCU7XHJcblx0XHRcdCAgICBwb3NpdGlvbjogYWJzb2x1dGU7XHJcblx0XHRcdCAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjZmZmO1xyXG5cdFx0XHQgICAgYm94LXNoYWRvdzogMnB4IDNweCAyMnB4IC01cHggcmdiYSgwLDAsMCwuNTgpO1xyXG4gICAgICAgICAgICAgICAgei1pbmRleDogMjAwMDAwMDAwMDtcclxuICAgICAgICAgICAgICAgIHBhZGRpbmc6IHJlbS1jYWxjKDEwcHgpO1xyXG4gICAgICAgICAgICB9XHJcblx0XHRcdGkge1xyXG4gICAgICAgICAgICAgICAgIGRpc3BsYXk6bm9uZTtcclxuICAgICAgICAgICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KG1lZGl1bSkge1xyXG5cdFx0XHRcdCAgICBwb3NpdGlvbjogYWJzb2x1dGU7XHJcblx0XHRcdFx0ICAgIHRvcDogN3B4O1xyXG5cdFx0XHRcdCAgICByaWdodDogN3B4O1xyXG4gICAgICAgICAgICAgICAgICAgIGRpc3BsYXk6YmxvY2s7XHJcbiAgICAgICAgICAgICAgICB9XHJcblx0XHRcdFx0Jjpob3ZlciB7XHJcblx0XHRcdFx0XHRjb2xvcjogZmlyZWJyaWNrO1xyXG5cdFx0XHRcdFx0Y3Vyc29yOiBwb2ludGVyO1xyXG5cdFx0XHRcdH1cclxuXHRcdFx0fVxyXG4gICAgICAgICAgICAuYXR0cmlidXRlTGlzdCB7XHJcbiAgICAgICAgICAgICAgICAgbGlzdC1zdHlsZTogbm9uZTtcclxuICAgICAgICAgICAgICAgIG1hcmdpbi1sZWZ0OiAwcHg7XHJcbiAgICAgICAgICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KHNtYWxsIGRvd24pIHtcclxuICAgICAgICAgICAgICAgICAgICBtYXgtaGVpZ2h0OnJlbS1jYWxjKDQwMCk7XHJcbiAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgIH1cclxuXHRcdH1cclxuXHR9IFxyXG59XHJcblxyXG5saS5zZWFyY2hfYXR0cmlidXRlc19yZWR1bmRhbnRfc2VjdGlvbiB7XHJcbiAgICBhIHtcclxuICAgICAgICBwb2ludGVyLWV2ZW50czogbm9uZTtcclxuICAgICAgICBjdXJzb3I6IGRlZmF1bHQ7XHJcbiAgICAgICAgY29sb3I6JGxpZ2h0LWdyYXk7XHJcbiAgICB9XHJcbn1cclxuXHJcbi5zZWFyY2hmaWx0ZXJUb3Age1xyXG5cdHBhZGRpbmc6IHJlbS1jYWxjKDBweCAwIDhweCAwKTtcclxuXHRzcGFuIHtcclxuXHRcdGZvbnQtd2VpZ2h0OiBib2xkO1xyXG5cdH1cclxuXHRkaXYge1xyXG5cdFx0d2lkdGg6IDQzJTtcclxuXHRcdG1hcmdpbjogMiU7XHJcblx0XHRkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XHJcblx0fVxyXG5cdHNlbGVjdCB7XHJcblx0XHR3aWR0aDogODYlO1xyXG5cdFx0bWFyZ2luOiAyJTtcclxuXHRcdHBhZGRpbmc6IDRweDtcclxuXHRcdGJvcmRlcjogMXB4IHNvbGlkICNjY2M7XHJcblx0fVxyXG59XHJcblxyXG4uc2VhcmNoZmlsdGVyTWlkZGxlIHtcclxuXHRwYWRkaW5nOiA4cHg7XHJcblx0Ym9yZGVyOiAxcHggc29saWQgI2NjYztcclxuXHRvdmVyZmxvdy15OiBhdXRvO1xyXG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludChtZWRpdW0pIHtcclxuXHQgICAgbWF4LWhlaWdodDogMzAwcHg7XHJcbiAgICB9XHJcbn1cclxuXHJcbi5zZWFyY2hmaWx0ZXJGb290ZXIgc3BhbiB7XHJcblx0bGluZS1oZWlnaHQ6IDQ0cHg7XHJcbiAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XHJcbiAgICBwYWRkaW5nOiAwcHg7XHJcbn1cclxuXHJcbi5zZWFyY2hmaWx0ZXJGb290ZXIgYnV0dG9uIHtcclxuXHRtYXJnaW4tYm90dG9tOiAwcHg7XHJcbiAgICBtYXJnaW4tdG9wOiAxMHB4O1xyXG5cdGZsb2F0OiByaWdodDtcclxufVxyXG5cclxuXHJcblxyXG4uYXR0cmlidXRlRmlsdGVyc0hlYWRlciB7XHJcblx0YmFja2dyb3VuZDogJGxpZ2h0LWdyYXk7XHJcblx0Y29sb3I6JGJsYWNrO1xyXG5cdGZvbnQtd2VpZ2h0OmJvbGQ7XHJcblx0Zm9udC1zaXplOnJlbS1jYWxjKDE2cHgpO1xyXG5cdHRleHQtYWxpZ246Y2VudGVyO1xyXG5cdHBhZGRpbmc6IHJlbS1jYWxjKDhweCA1cHggOXB4IDVweCkgIWltcG9ydGFudDtcclxufVxyXG5cclxuLmFwcGxpZWRGaWx0ZXJzIHtcclxuXHRvdmVyZmxvdy15OmF1dG87XHJcblx0bWF4LWhlaWdodDozMDBweDtcclxuXHRib3gtc2l6aW5nOmJvcmRlci1ib3g7XHJcbn1cclxuXHRcclxuLmZpbHRlclNlY3Rpb24ge1xyXG5cdHBhZGRpbmc6NXB4O1xyXG5cdGJveC1zaXppbmc6Ym9yZGVyLWJveDtcclxuXHRvdmVyZmxvdzpoaWRkZW47XHJcbn1cclxuLmZpbHRlclNlY3Rpb25IZWFkZXIge1xyXG5cdGJvcmRlci1ib3R0b206MXB4IHNvbGlkICNjY2M7XHJcblx0b3ZlcmZsb3c6aGlkZGVuO1xyXG5cdGxpbmUtaGVpZ2h0OjIwcHg7XHJcblx0bWFyZ2luLXRvcDoycHg7XHJcbn1cclxuXHRcclxuLmZpbHRlclNlY3Rpb25UaXRsZSB7XHJcblx0Y29sb3I6IzAwMDtcclxuXHRmb250LXdlaWdodDpib2xkO1xyXG5cdGZsb2F0OmxlZnQ7XHJcblx0bWFyZ2luOjNweDtcclxufVxyXG5cdFxyXG4ucmVtb3ZlRmlsdGVyU2VjdGlvbiB7XHJcblx0Y3Vyc29yOiBwb2ludGVyO1xyXG5cdGNvbG9yOiAjMzM3YWI3O1xyXG5cdHRleHQtZGVjb3JhdGlvbjogdW5kZXJsaW5lO1xyXG5cdGZvbnQtc2l6ZTogMTJweDtcclxuXHRsaW5lLWhlaWdodDoxNXB4O1xyXG5cdGZsb2F0OiByaWdodDtcclxuXHRtYXJnaW46M3B4O1xyXG59XHJcclxyLnNlYXJjaF9hdHRyaWJ1dGVzX3NlbGVjdGVkX3NlY3Rpb24gYSB7XHJcbiAgICBmb250LXdlaWdodDogNzAwO1xyXG59XHJcblxyXG4uc2VhcmNoVGFnIHtcclxuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcclxuICAgIGRpc3BsYXk6IHRhYmxlO1xyXG4gICAgYm9yZGVyLXJhZGl1czogNHB4O1xyXG4gICAgY29sb3I6ICNmZmY7XHJcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkYWNjZW50O1xyXG4gICAgYm9yZGVyOiAxcHggc29saWQgJGFjY2VudDtcclxuICAgIG1heC13aWR0aDogMTc2cHg7XHJcbiAgICBtYXJnaW46IDRweDtcclxuICAgIGZsb2F0OiBsZWZ0O1xyXG4gICAgJjpob3ZlciB7XHJcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogI0Q5NTM0RjtcclxuICAgICAgICBib3JkZXI6IDFweCBzb2xpZCAjZDQzZjNhO1xyXG4gICAgfVxyXG4gICAgc3BhbiB7XHJcbiAgICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xyXG4gICAgICAgIGRpc3BsYXk6IHRhYmxlLWNlbGw7XHJcbiAgICAgICAgdmVydGljYWwtYWxpZ246IG1pZGRsZTtcclxuICAgICAgICBwYWRkaW5nOiA0cHggOHB4O1xyXG4gICAgfVxyXG5cclxuICAgIC5yZW1vdmVUYWcge1xyXG4gICAgICAgIGNvbG9yOiAjZmZmO1xyXG4gICAgICAgIGJhY2tncm91bmQ6IHJnYmEoMCwwLDAsLjE1KTtcclxuICAgICAgICBjdXJzb3I6IHBvaW50ZXI7XHJcbiAgICAgICAgZGlzcGxheTogdGFibGUtY2VsbDtcclxuICAgICAgICB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlO1xyXG4gICAgICAgIHBhZGRpbmc6IDRweCA4cHg7XHJcbiAgICB9XHJcbn1cclxuXHJcbi5hdHRyaWJ1dGVGaWx0ZXJzIC5jaGVja2JveCB7XHJcbiAgICBjdXJzb3I6cG9pbnRlcjtcclxuICAgIGRpc3BsYXk6aW5saW5lLWJsb2NrO1xyXG4gICAgcGFkZGluZzpyZW0tY2FsYyg4cHggMCk7XHJcbn1cclxuXHJcbi8qUmFuZ2UgU2xpZGVyKi9cclxuXHJcbmlucHV0W3R5cGU9cmFuZ2VdLnJhbmdlU2xpZGVyIHtcclxuICAtd2Via2l0LWFwcGVhcmFuY2U6IG5vbmU7XHJcbiAgd2lkdGg6IDEwMCU7XHJcbiAgbWFyZ2luOiA2Ljg1cHggMDtcclxufVxyXG5pbnB1dFt0eXBlPXJhbmdlXS5yYW5nZVNsaWRlcjpmb2N1cyB7XHJcbiAgb3V0bGluZTogbm9uZTtcclxufVxyXG5pbnB1dFt0eXBlPXJhbmdlXS5yYW5nZVNsaWRlcjo6LXdlYmtpdC1zbGlkZXItcnVubmFibGUtdHJhY2sge1xyXG4gIHdpZHRoOiAxMDAlO1xyXG4gIGhlaWdodDogNC4zcHg7XHJcbiAgY3Vyc29yOiBwb2ludGVyO1xyXG4gIGJveC1zaGFkb3c6IDBweCAwcHggMHB4IHJnYmEoMCwgMCwgMCwgMCksIDBweCAwcHggMHB4IHJnYmEoMTMsIDEzLCAxMywgMCk7XHJcbiAgYmFja2dyb3VuZDogI2U4ZTVlNTtcclxuICBib3JkZXItcmFkaXVzOiAwcHg7XHJcbiAgYm9yZGVyOiAwLjJweCBzb2xpZCByZ2JhKDAsIDAsIDAsIDApO1xyXG59XHJcbmlucHV0W3R5cGU9cmFuZ2VdLnJhbmdlU2xpZGVyOjotd2Via2l0LXNsaWRlci10aHVtYiB7XHJcbiAgYm94LXNoYWRvdzogMHB4IDBweCAwcHggcmdiYSgxMDMsIDAsIDAsIDApLCAwcHggMHB4IDBweCByZ2JhKDEyOSwgMCwgMCwgMCk7XHJcbiAgYm9yZGVyOiAwcHggc29saWQgcmdiYSgwLCAwLCAwLCAwKTtcclxuICBoZWlnaHQ6IDE4cHg7XHJcbiAgd2lkdGg6IDEycHg7XHJcbiAgYm9yZGVyLXJhZGl1czogMHB4O1xyXG4gIGJhY2tncm91bmQ6ICNmOWE1MTk7XHJcbiAgY3Vyc29yOiBwb2ludGVyO1xyXG4gIC13ZWJraXQtYXBwZWFyYW5jZTogbm9uZTtcclxuICBtYXJnaW4tdG9wOiAtNy4wNXB4O1xyXG59XHJcbmlucHV0W3R5cGU9cmFuZ2VdLnJhbmdlU2xpZGVyOmZvY3VzOjotd2Via2l0LXNsaWRlci1ydW5uYWJsZS10cmFjayB7XHJcbiAgYmFja2dyb3VuZDogI2U4ZTVlNTtcclxufVxyXG5pbnB1dFt0eXBlPXJhbmdlXS5yYW5nZVNsaWRlcjo6LW1vei1yYW5nZS10cmFjayB7XHJcbiAgd2lkdGg6IDEwMCU7XHJcbiAgaGVpZ2h0OiA0LjNweDtcclxuICBjdXJzb3I6IHBvaW50ZXI7XHJcbiAgYm94LXNoYWRvdzogMHB4IDBweCAwcHggcmdiYSgwLCAwLCAwLCAwKSwgMHB4IDBweCAwcHggcmdiYSgxMywgMTMsIDEzLCAwKTtcclxuICBiYWNrZ3JvdW5kOiAjZThlNWU1O1xyXG4gIGJvcmRlci1yYWRpdXM6IDBweDtcclxuICBib3JkZXI6IDAuMnB4IHNvbGlkIHJnYmEoMCwgMCwgMCwgMCk7XHJcbn1cclxuaW5wdXRbdHlwZT1yYW5nZV0ucmFuZ2VTbGlkZXI6Oi1tb3otcmFuZ2UtdGh1bWIge1xyXG4gIGJveC1zaGFkb3c6IDBweCAwcHggMHB4IHJnYmEoMTAzLCAwLCAwLCAwKSwgMHB4IDBweCAwcHggcmdiYSgxMjksIDAsIDAsIDApO1xyXG4gIGJvcmRlcjogMHB4IHNvbGlkIHJnYmEoMCwgMCwgMCwgMCk7XHJcbiAgaGVpZ2h0OiAxOHB4O1xyXG4gIHdpZHRoOiAxMnB4O1xyXG4gIGJvcmRlci1yYWRpdXM6IDBweDtcclxuICBiYWNrZ3JvdW5kOiAjZjlhNTE5O1xyXG4gIGN1cnNvcjogcG9pbnRlcjtcclxufVxyXG5pbnB1dFt0eXBlPXJhbmdlXS5yYW5nZVNsaWRlcjo6LW1zLXRyYWNrIHtcclxuICB3aWR0aDogMTAwJTtcclxuICBoZWlnaHQ6IDQuM3B4O1xyXG4gIGN1cnNvcjogcG9pbnRlcjtcclxuICBiYWNrZ3JvdW5kOiB0cmFuc3BhcmVudDtcclxuICBib3JkZXItY29sb3I6IHRyYW5zcGFyZW50O1xyXG4gIGNvbG9yOiB0cmFuc3BhcmVudDtcclxufVxyXG5pbnB1dFt0eXBlPXJhbmdlXS5yYW5nZVNsaWRlcjo6LW1zLWZpbGwtbG93ZXIge1xyXG4gIGJhY2tncm91bmQ6ICNlOGU1ZTU7XHJcbiAgYm9yZGVyOiAwLjJweCBzb2xpZCByZ2JhKDAsIDAsIDAsIDApO1xyXG4gIGJvcmRlci1yYWRpdXM6IDBweDtcclxuICBib3gtc2hhZG93OiAwcHggMHB4IDBweCByZ2JhKDAsIDAsIDAsIDApLCAwcHggMHB4IDBweCByZ2JhKDEzLCAxMywgMTMsIDApO1xyXG59XHJcbmlucHV0W3R5cGU9cmFuZ2VdLnJhbmdlU2xpZGVyOjotbXMtZmlsbC11cHBlciB7XHJcbiAgYmFja2dyb3VuZDogI2U4ZTVlNTtcclxuICBib3JkZXI6IDAuMnB4IHNvbGlkIHJnYmEoMCwgMCwgMCwgMCk7XHJcbiAgYm9yZGVyLXJhZGl1czogMHB4O1xyXG4gIGJveC1zaGFkb3c6IDBweCAwcHggMHB4IHJnYmEoMCwgMCwgMCwgMCksIDBweCAwcHggMHB4IHJnYmEoMTMsIDEzLCAxMywgMCk7XHJcbn1cclxuaW5wdXRbdHlwZT1yYW5nZV0ucmFuZ2VTbGlkZXI6Oi1tcy10aHVtYiB7XHJcbiAgYm94LXNoYWRvdzogMHB4IDBweCAwcHggcmdiYSgxMDMsIDAsIDAsIDApLCAwcHggMHB4IDBweCByZ2JhKDEyOSwgMCwgMCwgMCk7XHJcbiAgYm9yZGVyOiAwcHggc29saWQgcmdiYSgwLCAwLCAwLCAwKTtcclxuICBoZWlnaHQ6IDE4cHg7XHJcbiAgd2lkdGg6IDEycHg7XHJcbiAgYm9yZGVyLXJhZGl1czogMHB4O1xyXG4gIGJhY2tncm91bmQ6ICNmOWE1MTk7XHJcbiAgY3Vyc29yOiBwb2ludGVyO1xyXG4gIGhlaWdodDogNC4zcHg7XHJcbn1cclxuaW5wdXRbdHlwZT1yYW5nZV0ucmFuZ2VTbGlkZXI6Zm9jdXM6Oi1tcy1maWxsLWxvd2VyIHtcclxuICBiYWNrZ3JvdW5kOiAjZThlNWU1O1xyXG59XHJcbmlucHV0W3R5cGU9cmFuZ2VdLnJhbmdlU2xpZGVyOmZvY3VzOjotbXMtZmlsbC11cHBlciB7XHJcbiAgYmFja2dyb3VuZDogI2U4ZTVlNTtcclxufVxyXG4iLCLvu78ucGFnaW5hdGlvbkJhciB7XG4gICAgYmFja2dyb3VuZDogJGxpZ2h0LWdyYXk7XG4gICAgbWFyZ2luLWJvdHRvbTpyZW0tY2FsYygxNXB4KTtcbiAgICBpbnB1dCwgc2VsZWN0IHtcbiAgICAgICAgbWFyZ2luOnJlbS1jYWxjKDVweCk7XG4gICAgfVxuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobWVkaXVtIGRvd24pIHtcbiAgICAgICAgdGV4dC1hbGlnbjpjZW50ZXI7XG4gICAgfVxufVxuXG4uc2VhcmNoUmVzdWx0c0NvdW50IHtcbiAgICBkaXNwbGF5OmlubGluZS1ibG9jaztcbiAgICBwYWRkaW5nOnJlbS1jYWxjKDgpO1xuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobWVkaXVtIGRvd24pIHtcbiAgICAgICAgdGV4dC1hbGlnbjpjZW50ZXI7XG4gICAgfVxufVxuXG5cbi5Qcm9kdWN0c1BhZ2luYXRpb24ge1xuICAgIG1hcmdpbi10b3A6cmVtLWNhbGMoMTMpO1xuICAgIG1hcmdpbi1yaWdodDpyZW0tY2FsYyg2KTtcbiAgICBkaXNwbGF5OmlubGluZS1ibG9jaztcbiAgICBAaW5jbHVkZSBicmVha3BvaW50KG1lZGl1bSBkb3duKSB7XG4gICAgICAgIHRleHQtYWxpZ246Y2VudGVyO1xuICAgICAgICBtYXJnaW4tYm90dG9tOnJlbS1jYWxjKDEwKTtcbiAgICB9XG4gICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobGFyZ2UpIHtcbiAgICAgICAgZmxvYXQ6cmlnaHQ7XG4gICAgfVxuXG4gICAgYSB7XG4gICAgICAgIHBhZGRpbmc6cmVtLWNhbGMoNSA5KTtcbiAgICAgICAgbWFyZ2luLWxlZnQ6cmVtLWNhbGMoNCk7XG4gICAgICAgIGNvbG9yOiAjNGY0ZjRmO1xuICAgICAgICBjdXJzb3I6cG9pbnRlcjtcbiAgICAgICAgYm9yZGVyLXJhZGl1czogM3B4O1xuICAgICAgICBiYWNrZ3JvdW5kOiNkNmQzZDM7XG4gICAgICAgICYuY3VycmVudFBhZ2Uge1xuICAgICAgICAgICAgYmFja2dyb3VuZDogJG9mZi1ibGFjaztcbiAgICAgICAgICAgIGNvbG9yOiAkd2hpdGU7XG4gICAgICAgIH1cbiAgICAgICAgJi5wYWdpbmcge1xuICAgICAgICAgICAgYmFja2dyb3VuZDojYWJhNmE2O1xuICAgICAgICAgICAgY29sb3I6JHdoaXRlO1xuICAgICAgICB9XG4gICAgICAgICY6aG92ZXIge1xuICAgICAgICAgICAgYmFja2dyb3VuZDokb2ZmLWJsYWNrO1xuICAgICAgICAgICAgY29sb3I6ICR3aGl0ZTtcbiAgICAgICAgfVxuICAgIH1cbn0iLCLvu78udGllcldyYXBwZXIge1xuICAgIG1hcmdpbi10b3A6cmVtLWNhbGMoMTApO1xuICAgIG1hcmdpbi1ib3R0b206cmVtLWNhbGMoMTApO1xufVxuXG4udGllckltYWdlIHtcbiAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG5cbiAgICBhIHtcbiAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgICAgICAgY29sb3I6ICRibGFjaztcblxuICAgICAgICAudGllckltYWdlVGV4dCB7XG4gICAgICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgICAgIGxpbmUtaGVpZ2h0OiAxLjI1cmVtO1xuICAgICAgICAgICAgbWFyZ2luLXRvcDogcmVtLWNhbGMoNSk7XG4gICAgICAgICAgICBmb250LXNpemU6IHJlbS1jYWxjKDEzKTtcbiAgICAgICAgfVxuXG4gICAgICAgIGkge1xuICAgICAgICAgICAgY29sb3I6ICRkYXJrLWdyYXk7XG4gICAgICAgICAgICBmb250LXNpemU6IHJlbS1jYWxjKDExKTtcbiAgICAgICAgfVxuICAgIH1cbn1cblxuLnRpZXJJbWFnZS5zZWFyY2hUaWVyU3RydWN0dXJlVGllckl0ZW0sIC50aWVySW1hZ2UucG9wdWxhckNhdGVnb3J5SXRlbSB7XG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludChzbWFsbCBvbmx5KSB7XG4gICAgICAgIHBhZGRpbmc6IHJlbS1jYWxjKDEwKTtcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogMHB4O1xuICAgICAgICBib3JkZXItYm90dG9tOiAxcHggc29saWQgJGxpZ2h0LWdyYXk7XG4gICAgICAgIHRleHQtYWxpZ246IGxlZnQ7XG5cbiAgICAgICAgaW1nIHtcbiAgICAgICAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgICAgIH1cblxuICAgICAgICAudGllckltYWdlVGV4dCB7XG4gICAgICAgICAgICBkaXNwbGF5OiBpbmxpbmU7XG4gICAgICAgIH1cbiAgICB9XG59XG5cbi5zZWFyY2hUaWVyU3RydWN0dXJlVGllckl0ZW06bGFzdC1jaGlsZCB7XG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludChzbWFsbCBvbmx5KSB7XG4gICAgICAgIG1hcmdpbi1ib3R0b206IDEwcHg7XG4gICAgfSAgXG59XG5cbi5zZWFyY2hUaWVyQmxvY2tMaXN0IHtcbiAgICBsaXN0LXN0eWxlOiBub25lO1xuICAgIG1hcmdpbi10b3A6IC41cmVtO1xuXG4gICAgLypAaW5jbHVkZSBicmVha3BvaW50KG1lZGl1bSkge1xuICAgICAgICBtYXJnaW4tdG9wOiByZW0tY2FsYygtMTApO1xuICAgIH0qL1xuXG4gICAgbWFyZ2luLWxlZnQ6IHJlbS1jYWxjKDgpO1xuXG4gICAgbGkge1xuICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KHNtYWxsIG9ubHkpIHtcbiAgICAgICAgICAgIHBhZGRpbmc6IHJlbS1jYWxjKDEwIDApO1xuICAgICAgICAgICAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkICRsaWdodC1ncmF5O1xuICAgICAgICB9XG5cbiAgICAgICAgY3Vyc29yOiBwb2ludGVyO1xuXG4gICAgICAgICY6aG92ZXIge1xuICAgICAgICAgICAgdGV4dC1kZWNvcmF0aW9uOiB1bmRlcmxpbmU7XG4gICAgICAgIH1cbiAgICB9XG59XG5cbi5zZWFyY2hCcmVhZGNydW1iIHtcbiAgICBmb250LXdlaWdodDogYm9sZDtcbiAgICBjb2xvcjogJGJsYWNrO1xuICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICBtYXJnaW4tYm90dG9tOiAuMnJlbTtcbiAgICBsaW5lLWhlaWdodDogMS4zO1xuICAgIH1cblxuYS5zZWFyY2hCcmVhZGNydW1iIHtcbiAgICB3aGl0ZS1zcGFjZTogaW5pdGlhbCAhaW1wb3J0YW50O1xuICAgIGNvbG9yOiAkYmxhY2s7XG59XG5cbiNzdWdnZXN0ZWRCcmVhZGNydW1iIHtcbiAgICBkaXNwbGF5OiBpbmxpbmUtZmxleDtcbiAgICBvdmVyZmxvdy14OiBhdXRvO1xuICAgIHdoaXRlLXNwYWNlOiBub3dyYXA7XG4gICAgbWF4LXdpZHRoOiAxMDAlICFpbXBvcnRhbnQ7XG59XG5cbi5hY2NvcmRpb25BIHtcbiAgICBjdXJzb3I6IHBvaW50ZXI7XG4gICAgYm9yZGVyOiBub25lO1xuICAgIGJvcmRlci1yYWRpdXM6IDA7XG4gICAgb3V0bGluZTogbm9uZTtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIGZsZXgtZGlyZWN0aW9uOiByb3c7XG4gICAganVzdGlmeS1jb250ZW50OiBzcGFjZS1iZXR3ZWVuO1xuICAgIHRleHQtYWxpZ246IGxlZnQ7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgcGFkZGluZzogLjRyZW07XG4gICAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkICNkZGQ7XG59XG5cbi5wYW5lbEEge1xuICAgIGJhY2tncm91bmQtY29sb3I6IHdoaXRlO1xuICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgb3ZlcmZsb3c6IGhpZGRlbjtcbn1cblxuLmNvbHVtbi5jb2x1bW4tYmxvY2sge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbn1cblxuLmFjY29yZGlvbkEgc3BhbjphZnRlciB7XG4gICAgZm9udC1mYW1pbHk6IFwiRm9udCBBd2Vzb21lIDUgRnJlZVwiO1xuICAgIGZvbnQtd2VpZ2h0OiA5MDA7XG4gICAgY29udGVudDogXCJcXGYxMDdcIjtcbiAgICBmb250LXNpemU6IDEuNHJlbTtcbiAgICBjb2xvcjogI2FhYTtcbn1cblxuLmFjdGl2ZSBzcGFuOmFmdGVyIHtcbiAgICBjb250ZW50OiBcIlxcZjEwNlwiO1xufVxuXG4udG9nZ2xlQ2F0ZWdvcnl7XG4gICAgZGlzcGxheTogbm9uZTtcbn0iLCLvu78uaW1hZ2VzVGFibGVXcmFwcGVyIHtcbiAgICBAaW5jbHVkZSBicmVha3BvaW50KGxhcmdlKSB7IFxuICAgICAgICBAaW5jbHVkZSBncmlkLWNvbHVtbig0LjQsIDApO1xuICAgICAgICBwYWRkaW5nLXJpZ2h0OjBweCAhaW1wb3J0YW50O1xuICAgIH1cbn1cblxuLmF0dHJpYnV0ZXNUYWJsZVdyYXBwZXIge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICBvdmVyZmxvdy14OiBhdXRvO1xuICAgICBAaW5jbHVkZSBicmVha3BvaW50KG1lZGl1bSBkb3duKSB7IFxuICAgICAgICAgZGlzcGxheTpub25lO1xuICAgICB9XG4gICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobGFyZ2UpIHsgXG4gICAgICAgIEBpbmNsdWRlIGdyaWQtY29sdW1uKDcuNiwwKTtcbiAgICAgfVxufVxuXG5cbi5jb21wYXJlUXVpY2tWaWV3IHtcbiAgICBsYWJlbCB7XG4gICAgICAgIG1hcmdpbi1yaWdodDozcHg7XG4gICAgfVxuICAgIHNwYW4sIGxhYmVsLCBhIHtcbiAgICAgICAgZGlzcGxheTppbmxpbmUtYmxvY2s7XG4gICAgfVxufVxuXG4uc2VhcmNoVGFibGVCcmFuZExvZ28ge1xuICAgIG1heC13aWR0aDogNjVweDtcbiAgICBtYXJnaW4tdG9wOiAtMjBweDtcbn1cblxuLmF0dHJpYnV0ZXNUYWJsZUhlYWRlciB7XG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludCh4bGFyZ2UgZG93bikge1xuICAgICAgICBmb250LXNpemU6cmVtLWNhbGMoMTIpO1xuICAgICAgICBsaW5lLWhlaWdodDpyZW0tY2FsYygxNCk7XG4gICAgfVxufVxuXG4uc2VhcmNoUmVzdWx0c1JvdyBoMyB7XG4gICAgY29sb3I6JGJsYWNrO1xufVxuXG4jdDEge1xuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobWVkaXVtIGRvd24pIHtcbiAgICAgICAgbWluLXdpZHRoOmF1dG8gIWltcG9ydGFudDtcbiAgICAgICAgdGV4dC1hbGlnbjpjZW50ZXI7XG4gICAgICAgIC5jb21wYXJlUXVpY2tWaWV3IHtcbiAgICAgICAgICAgIHRleHQtYWxpZ246bGVmdDtcbiAgICAgICAgICAgIHBvc2l0aW9uOmFic29sdXRlO1xuICAgICAgICAgICAgYm90dG9tOi00cHg7XG4gICAgICAgIH1cblxuICAgICAgICAuc2VhcmNoUmVzdWx0c1Byb2R1Y3REZXRhaWxzIHtcbiAgICAgICAgICAgIHBvc2l0aW9uOnJlbGF0aXZlO1xuICAgICAgICB9XG4gICAgfVxufVxuXG4jdDIge1xuICAgIHRleHQtYWxpZ246Y2VudGVyO1xuICAgIHRib2R5IHRkIHtcbiAgICAgICAgYm9yZGVyOjFweCBzb2xpZCAjZjFmMWYxO1xuICAgICAgICBib3JkZXItdG9wOiBub25lO1xuICAgICAgICBib3JkZXItbGVmdDogbm9uZTtcbiAgICB9XG59XG5cbi5mbG9hdFRoZWFkLXRhYmxlIHRoZWFkIHRoIHtcbiAgICB0ZXh0LWFsaWduOmNlbnRlcjtcbn1cblxuLnNlYXJjaFRhYmxlUHJvZHVjdEltYWdlQ29udGFpbmVyIHtcbiAgICBwb3NpdGlvbjpyZWxhdGl2ZTtcbn0iLCLvu78uYmFza2V0SXRlbXNPdXRlciB7XG4gICAgcGFkZGluZzpyZW0tY2FsYyg1KTtcbn1cblxubGFiZWwuYmFza2V0SGVhZGluZyB7XG4gICAgY29sb3I6ICM3OTc5NkE7XG4gICAgdGV4dC1hbGlnbjogbGVmdDtcbn1cblxuLmJhc2tldEl0ZW0ge1xuICAgIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCAkbGlnaHQtZ3JheTtcbiAgICBtYXJnaW4tYm90dG9tOiByZW0tY2FsYygxMCk7XG4gICAgcGFkZGluZzogcmVtLWNhbGMoNSk7XG5cbiAgICBoMyB7XG4gICAgICAgIGNvbG9yOiAkYmxhY2s7XG4gICAgfVxuICAgIFxuICAgIC51cGRhdGVJdGVtIHtcbiAgICAgICAgY3Vyc29yOnBvaW50ZXI7XG4gICAgfVxuXG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludChzbWFsbCBvbmx5KSB7XG4gICAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcblxuICAgICAgICBsYWJlbC5taWRkbGUge1xuICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogcmVtLWNhbGMoNSk7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAmLmludmFsaWQge1xuICAgICAgICAvKnRleHQtYWxpZ246IGNlbnRlcjsqL1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjZjdlNGUxO1xuICAgIH1cblxuICAgIC50b3RhbFByaWNlIHtcbiAgICAgICAgZm9udC13ZWlnaHQ6IGJvbGQ7XG4gICAgfVxufVxuXG4uYmFza2V0SXRlbVJlbW92ZSB7XG4gICAgQGluY2x1ZGUgZ3JpZC1jb2x1bW4oMTIgb2YgMTIpO1xuXG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludChtZWRpdW0pIHtcbiAgICAgICAgQGluY2x1ZGUgZ3JpZC1jb2x1bW4oMC41IG9mIDEyKTtcbiAgICB9XG59XG5cbi5iYXNrZXRJdGVtSW1nIHtcbiAgICBAaW5jbHVkZSBncmlkLWNvbHVtbigxMiBvZiAxMik7XG5cbiAgICBAaW5jbHVkZSBicmVha3BvaW50KG1lZGl1bSkge1xuICAgICAgICBAaW5jbHVkZSBncmlkLWNvbHVtbigwLjcgb2YgMTIpO1xuICAgIH1cbn1cblxuLmJhc2tldEl0ZW1EZXNjIHtcbiAgICBAaW5jbHVkZSBncmlkLWNvbHVtbigxMiBvZiAxMik7XG5cbiAgICBAaW5jbHVkZSBicmVha3BvaW50KG1lZGl1bSkge1xuICAgICAgICBAaW5jbHVkZSBncmlkLWNvbHVtbigzLjkgb2YgMTIpO1xuICAgIH1cbn1cblxuLmJhc2tldEl0ZW1RdHkge1xuICAgIEBpbmNsdWRlIGdyaWQtY29sdW1uKDEyIG9mIDEyKTtcblxuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobWVkaXVtKSB7XG4gICAgICAgIEBpbmNsdWRlIGdyaWQtY29sdW1uKDIuNSBvZiAxMik7XG4gICAgfVxufVxuXG4uYmFza2V0SXRlbVN0YXR1cyB7XG4gICAgQGluY2x1ZGUgZ3JpZC1jb2x1bW4oMTIgb2YgMTIpO1xuXG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludChtZWRpdW0pIHtcbiAgICAgICAgQGluY2x1ZGUgZ3JpZC1jb2x1bW4oMi40IG9mIDEyKTtcbiAgICB9XG59Iiwi77u/LmFkZHJlc3Nlc09wdGlvbiB7XG4gICAgdWwge1xuICAgICAgICBtYXgtd2lkdGg6IHJlbS1jYWxjKDExNSk7XG5cbiAgICAgICAgYSB7XG4gICAgICAgICAgICBjb2xvcjogJGJsYWNrO1xuICAgICAgICAgICAgZm9udC13ZWlnaHQ6IGJvbGQ7XG4gICAgICAgICAgICBwYWRkaW5nOiByZW0tY2FsYyg5IDQpO1xuICAgICAgICB9XG5cbiAgICAgICAgbGkge1xuICAgICAgICAgICAgLnN1YiB7XG4gICAgICAgICAgICAgICAgYm9yZGVyOiAxcHggc29saWQgJGxpZ2h0LWdyYXk7XG5cbiAgICAgICAgICAgICAgICBhIHtcbiAgICAgICAgICAgICAgICAgICAgcGFkZGluZzogMTVweCA4cHggIWltcG9ydGFudDtcbiAgICAgICAgICAgICAgICAgICAgZm9udC13ZWlnaHQ6IG5vcm1hbDtcbiAgICAgICAgICAgICAgICAgICAgY3Vyc29yOnBvaW50ZXI7XG5cbiAgICAgICAgICAgICAgICAgICAgJjpob3ZlciB7XG4gICAgICAgICAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kOiBsaWdodGdyZXk7XG4gICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAuYWNjb3JkaW9uLW1lbnUgLmlzLWFjY29yZGlvbi1zdWJtZW51LXBhcmVudDpub3QoLmhhcy1zdWJtZW51LXRvZ2dsZSkgPiBhOjphZnRlciB7XG4gICAgICAgIGJvcmRlci1jb2xvcjogJGJsYWNrIHRyYW5zcGFyZW50IHRyYW5zcGFyZW50O1xuICAgIH1cbn1cblxuLmFkZGRyZXNzQmxvY2sge1xuICAgIGN1cnNvcjogcG9pbnRlcjtcbiAgICBwYWRkaW5nOnJlbS1jYWxjKDUgOCk7XG4gICAgJjpob3ZlciB7XG4gICAgICAgIGJhY2tncm91bmQ6ICNmOWY5Zjk7XG4gICAgfVxufVxuIiwi77u/Lm5vdGlmaWNhdGlvbnNQYW5lbCB7XG4gICAgcG9zaXRpb246IGZpeGVkO1xuICAgIGxlZnQ6IDA7XG4gICAgYm90dG9tOiAwO1xuICAgIHotaW5kZXg6IDk5OTk5OTk5OTk5OTk7XG4gICAgYm94LXNoYWRvdzogMCAzcHggNnB4IDAgaHNsYSgwLCAwJSwgMCUsIDAuMik7XG4gICAgbWluLXdpZHRoOiAyNTBweDtcblxuICAgICYub3BlbiB7XG4gICAgICAgIHRvcDogMzBweDtcbiAgICAgICAgYm90dG9tOiA0MHB4O1xuICAgIH1cblxuICAgIC5ub3RpZmljYXRpb25QYW5lbENvdW50IHtcbiAgICAgICAgYmFja2dyb3VuZDogI0Y5NUE2MTtcbiAgICAgICAgY29sb3I6IHdoaXRlO1xuICAgICAgICBmb250LXdlaWdodDogbm9ybWFsO1xuICAgICAgICBmb250LXNpemU6IDE2cHg7XG4gICAgICAgIHBhZGRpbmc6IDVweDtcbiAgICAgICAgYm9yZGVyLXJhZGl1czogNXB4IDVweCAwIDA7XG4gICAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICAgICAgY3Vyc29yOiBwb2ludGVyO1xuICAgIH1cblxuICAgIC5ub3RpZmljYXRpb25MaXN0IHtcbiAgICAgICAgYmFja2dyb3VuZDogcmdiYSg0OSw0OSw0OSwgMC45KTtcbiAgICAgICAgY29sb3I6IHdoaXRlO1xuICAgICAgICBmb250LXdlaWdodDogbm9ybWFsO1xuICAgICAgICBvdmVyZmxvdy15OiBhdXRvO1xuICAgICAgICBoZWlnaHQ6IDEwMCU7XG4gICAgICAgIHBhZGRpbmc6IDVweDtcblxuICAgICAgICAucm93IHtcbiAgICAgICAgICAgIGN1cnNvcjogcG9pbnRlcjtcbiAgICAgICAgICAgIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCAkd2hpdGU7XG5cbiAgICAgICAgICAgIGkge1xuICAgICAgICAgICAgICAgIGZvbnQtc2l6ZTogcmVtLWNhbGMoMjApO1xuICAgICAgICAgICAgICAgIHBhZGRpbmctdG9wOiA1cHg7XG4gICAgICAgICAgICAgICAgdmlzaWJpbGl0eTogaGlkZGVuO1xuXG4gICAgICAgICAgICAgICAgJjpob3ZlciB7XG4gICAgICAgICAgICAgICAgICAgIGNvbG9yOiAjRjk1QTYxO1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgJjpob3ZlciB7XG4gICAgICAgICAgICAgICAgYmFja2dyb3VuZDogcmdiYSg0OSw0OSw0OSwgMC45KTtcblxuICAgICAgICAgICAgICAgIGkge1xuICAgICAgICAgICAgICAgICAgICB2aXNpYmlsaXR5OiB2aXNpYmxlO1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgLmNvbHVtbnMge1xuICAgICAgICAgICAgICAgIHBhZGRpbmctdG9wOiByZW0tY2FsYyg1KTtcbiAgICAgICAgICAgICAgICBwYWRkaW5nLWJvdHRvbTogcmVtLWNhbGMoNSk7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG59XG5cbi5vcGVuTGFiZWwge1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICBsZWZ0OiAtMTAwJTtcbiAgICB3aWR0aDogNDAlO1xuICAgIGhlaWdodDogMTAwJTtcbiAgICBiYWNrZ3JvdW5kOiAjYTlhOGE0O1xuICAgIHRyYW5zaXRpb246IDAuNHM7XG4gICAgcGFkZGluZzogNXB4O1xuICAgIHRleHQtYWxpZ246IGNlbnRlcjtcblxuICAgIGgzIHtcbiAgICAgICAgcGFkZGluZy10b3A6IHJlbS1jYWxjKDE1KTtcbiAgICB9XG59XG5cbi5ub3RpZmljYXRpb25JdGVtIHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG5cbiAgICAmOmhvdmVyIC5vcGVuTGFiZWwge1xuICAgICAgICB0cmFuc2l0aW9uOiAwLjRzO1xuICAgICAgICBsZWZ0OiAwO1xuICAgIH1cblxuICAgIHAge1xuICAgICAgICBtYXJnaW4tYm90dG9tOiByZW0tY2FsYyg1KTtcbiAgICB9XG5cbiAgICBsYWJlbCB7XG4gICAgICAgIHRleHQtYWxpZ246IHJpZ2h0O1xuICAgICAgICBmb250LXNpemU6IDEycHg7XG4gICAgICAgIGNvbG9yOndoaXRlO1xuICAgIH1cbn1cblxuLm5vdGlmaWNhdGlvblBhbmVsQ291bnQ6aG92ZXIgLmJvdW5jZURvd24ge1xuICAgIC1tb3otYW5pbWF0aW9uOiBib3VuY2VEb3duIDJzIGluZmluaXRlIGFsdGVybmF0ZSBlYXNlLWluLW91dDtcbiAgICAtd2Via2l0LWFuaW1hdGlvbjogYm91bmNlRG93biAycyBpbmZpbml0ZSBhbHRlcm5hdGUgZWFzZS1pbi1vdXQ7XG4gICAgYW5pbWF0aW9uOiBib3VuY2VEb3duIDJzIGluZmluaXRlIGFsdGVybmF0ZSBlYXNlLWluLW91dDtcbn1cblxuLm5vdGlmaWNhdGlvblBhbmVsQ291bnQ6aG92ZXIgLmJvdW5jZVVwIHtcbiAgICAtbW96LWFuaW1hdGlvbjogYm91bmNlVXAgMnMgaW5maW5pdGUgYWx0ZXJuYXRlIGVhc2UtaW4tb3V0O1xuICAgIC13ZWJraXQtYW5pbWF0aW9uOiBib3VuY2VVcCAycyBpbmZpbml0ZSBhbHRlcm5hdGUgZWFzZS1pbi1vdXQ7XG4gICAgYW5pbWF0aW9uOiBib3VuY2VVcCAycyBpbmZpbml0ZSBhbHRlcm5hdGUgZWFzZS1pbi1vdXQ7XG59XG5cbi5ub3RpZmljYXRpb25QYW5lbENvdW50IC5mYS1hbmdsZS1kb3duIHtcbiAgICBmbG9hdDogbGVmdDtcbiAgICBwYWRkaW5nLWxlZnQ6IDE1cHg7XG4gICAgbWFyZ2luLXJpZ2h0OiAtMTVweDtcbiAgICBmb250LXNpemU6IDMwcHg7XG4gICAgbGluZS1oZWlnaHQ6IDIzcHg7XG4gICAgZm9udC13ZWlnaHQ6IGJvbGQ7XG59XG5cbi5ub3RpZmljYXRpb25QYW5lbENvdW50IC5mYS1hbmdsZS11cCB7XG4gICAgZmxvYXQ6IGxlZnQ7XG4gICAgcGFkZGluZy1sZWZ0OiAxNXB4O1xuICAgIG1hcmdpbi1yaWdodDogLTE1cHg7XG4gICAgZm9udC1zaXplOiAzMHB4O1xuICAgIGxpbmUtaGVpZ2h0OiAyM3B4O1xuICAgIGZvbnQtd2VpZ2h0OiBib2xkO1xufVxuXG5ALW1vei1rZXlmcmFtZXMgYm91bmNlRG93biB7XG4gICAgMCUsIDIwJSwgNTAlLCA4MCUsIDEwMCUge1xuICAgICAgICAtbW96LXRyYW5zZm9ybTogdHJhbnNsYXRlWSgwKTtcbiAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKDApO1xuICAgIH1cblxuICAgIDQwJSB7XG4gICAgICAgIC1tb3otdHJhbnNmb3JtOiB0cmFuc2xhdGVZKDEwcHgpO1xuICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoMTBweCk7XG4gICAgfVxuXG4gICAgNjAlIHtcbiAgICAgICAgLW1vei10cmFuc2Zvcm06IHRyYW5zbGF0ZVkoMTJweCk7XG4gICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgxMnB4KTtcbiAgICB9XG59XG5cbkAtd2Via2l0LWtleWZyYW1lcyBib3VuY2VEb3duIHtcbiAgICAwJSwgMjAlLCA1MCUsIDgwJSwgMTAwJSB7XG4gICAgICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGVZKDApO1xuICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoMCk7XG4gICAgfVxuXG4gICAgNDAlIHtcbiAgICAgICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZVkoMTBweCk7XG4gICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgxMHB4KTtcbiAgICB9XG5cbiAgICA2MCUge1xuICAgICAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlWSgxMnB4KTtcbiAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKDEycHgpO1xuICAgIH1cbn1cblxuQGtleWZyYW1lcyBib3VuY2VEb3duIHtcbiAgICAwJSwgMjAlLCA1MCUsIDgwJSwgMTAwJSB7XG4gICAgICAgIC1tb3otdHJhbnNmb3JtOiB0cmFuc2xhdGVZKDApO1xuICAgICAgICAtbXMtdHJhbnNmb3JtOiB0cmFuc2xhdGVZKDApO1xuICAgICAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlWSgwKTtcbiAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKDApO1xuICAgIH1cblxuICAgIDQwJSB7XG4gICAgICAgIC1tb3otdHJhbnNmb3JtOiB0cmFuc2xhdGVZKDEwcHgpO1xuICAgICAgICAtbXMtdHJhbnNmb3JtOiB0cmFuc2xhdGVZKDEwcHgpO1xuICAgICAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlWSgxMHB4KTtcbiAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKDEwcHgpO1xuICAgIH1cblxuICAgIDYwJSB7XG4gICAgICAgIC1tb3otdHJhbnNmb3JtOiB0cmFuc2xhdGVZKDEycHgpO1xuICAgICAgICAtbXMtdHJhbnNmb3JtOiB0cmFuc2xhdGVZKDEycHgpO1xuICAgICAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlWSgxMnB4KTtcbiAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKDEycHgpO1xuICAgIH1cbn1cblxuQC1tb3ota2V5ZnJhbWVzIGJvdW5jZVVwIHtcbiAgICAwJSwgMjAlLCA1MCUsIDgwJSwgMTAwJSB7XG4gICAgICAgIC1tb3otdHJhbnNmb3JtOiB0cmFuc2xhdGVZKDApO1xuICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoMCk7XG4gICAgfVxuXG4gICAgNDAlIHtcbiAgICAgICAgLW1vei10cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTEwcHgpO1xuICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTEwcHgpO1xuICAgIH1cblxuICAgIDYwJSB7XG4gICAgICAgIC1tb3otdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC0xMnB4KTtcbiAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC0xMnB4KTtcbiAgICB9XG59XG5cbkAtd2Via2l0LWtleWZyYW1lcyBib3VuY2VVcCB7XG4gICAgMCUsIDIwJSwgNTAlLCA4MCUsIDEwMCUge1xuICAgICAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlWSgwKTtcbiAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKDApO1xuICAgIH1cblxuICAgIDQwJSB7XG4gICAgICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC0xMHB4KTtcbiAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC0xMHB4KTtcbiAgICB9XG5cbiAgICA2MCUge1xuICAgICAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlWSgtMTJweCk7XG4gICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgtMTJweCk7XG4gICAgfVxufVxuXG5Aa2V5ZnJhbWVzIGJvdW5jZVVwIHtcbiAgICAwJSwgMjAlLCA1MCUsIDgwJSwgMTAwJSB7XG4gICAgICAgIC1tb3otdHJhbnNmb3JtOiB0cmFuc2xhdGVZKDApO1xuICAgICAgICAtbXMtdHJhbnNmb3JtOiB0cmFuc2xhdGVZKDApO1xuICAgICAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlWSgwKTtcbiAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKDApO1xuICAgIH1cblxuICAgIDQwJSB7XG4gICAgICAgIC1tb3otdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC0xMHB4KTtcbiAgICAgICAgLW1zLXRyYW5zZm9ybTogdHJhbnNsYXRlWSgtMTBweCk7XG4gICAgICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC0xMHB4KTtcbiAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC0xMHB4KTtcbiAgICB9XG5cbiAgICA2MCUge1xuICAgICAgICAtbW96LXRyYW5zZm9ybTogdHJhbnNsYXRlWSgtMTJweCk7XG4gICAgICAgIC1tcy10cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTEycHgpO1xuICAgICAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlWSgtMTJweCk7XG4gICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgtMTJweCk7XG4gICAgfVxufVxuXG4vKk1vdmUgdG8gbWVzc2FnZXMqL1xuXG4ubm90aWZpY2F0aW9uSXRlbVJvdyB7XG4gICAgcGFkZGluZy10b3A6IHJlbS1jYWxjKDkpO1xuICAgIHBhZGRpbmctYm90dG9tOiByZW0tY2FsYyg5KTtcbiAgICBwYWRkaW5nLWxlZnQ6IHJlbS1jYWxjKDgpO1xuICAgIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCAjRUNFRkYxO1xuICAgIGN1cnNvcjogcG9pbnRlcjtcblxuICAgICY6aG92ZXIge1xuICAgICAgICBiYWNrZ3JvdW5kOiByZ2JhKDQ5LDQ5LDQ5LCAwLjAzKTtcbiAgICB9XG5cbiAgICBoMyB7XG4gICAgICAgIG1hcmdpbi1ib3R0b206IDA7XG4gICAgICAgIHBhZGRpbmc6IDJweCAwO1xuICAgIH1cblxuICAgIHAge1xuICAgICAgICBtYXJnaW4tYm90dG9tOiAwO1xuICAgICAgICBwYWRkaW5nOiAycHggMDtcbiAgICB9XG5cbiAgICBsYWJlbCB7XG4gICAgICAgIG1hcmdpbi1ib3R0b206IDA7XG4gICAgICAgIHBhZGRpbmc6IDJweCAwO1xuICAgIH1cblxuICAgIC51bnJlYWROb3RpZmljYXRpb24ge1xuICAgICAgICBib3JkZXItbGVmdDogM3B4IHNvbGlkICNGOTVBNjE7XG4gICAgfVxufVxuXG4ubWVzc2FnZUJvZHlDb2wge1xuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobWVkaXVtKSB7XG4gICAgICAgIHBhZGRpbmctbGVmdDogcmVtLWNhbGMoMTApO1xuICAgIH1cblxuICAgIC5jbG9zZUJhciB7XG4gICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgICAgaGVpZ2h0OiAzMnB4O1xuICAgICAgICBiYWNrZ3JvdW5kOiAjZmJmYmZiO1xuICAgICAgICBib3JkZXItcmFkaXVzOiA1cHg7XG4gICAgICAgIG1hcmdpbi1ib3R0b206IDE1cHg7XG5cbiAgICAgICAgLmNsb3NlLWJ1dHRvbiB7XG4gICAgICAgICAgICByaWdodDogMC41cmVtO1xuICAgICAgICAgICAgdG9wOiAwLjI1cmVtO1xuICAgICAgICB9XG4gICAgfVxufVxuXG4ubm9XaWR0aCB7XG4gICAgd2lkdGg6IDAlO1xuICAgIC8vc29tZSBoYWNrIHRvIG1ha2UgaXQgbm90IHB1c2ggb3V0IHRoZSBwYWdlLi4uZXZlbiB0aG91Z2ggaXQgaGFzIG5vIHdpZHRoXG4gICAgZGlzcGxheTogaW5saW5lO1xufVxuLm5vdFZpc2libGUge1xuICAgIG9wYWNpdHk6IDA7XG4gICAgdmlzaWJpbGl0eTogaGlkZGVuO1xufVxuXG4udHJhbnNpdGlvbiB7XG4gICAgdHJhbnNpdGlvbjogMC40cztcbiAgICBvcGFjaXR5OiAxO1xuICAgIHZpc2liaWxpdHk6IHZpc2libGU7XG59XG5cbmgyLnVucmVhZENvdW50IHtcbiAgICBjb2xvcjogI0Y5NUE2MTtcbn1cblxuLm1vcmVJbmZvIHtcbiAgICB0ZXh0LWFsaWduOmNlbnRlcjtcbiAgICBtYXJnaW4tdG9wOjI1cHg7XG59Iiwi77u/LnJlY2VudE9yZGVycyB7XG4gICAgbGFiZWwge1xuICAgICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgfVxuXG4gICAgPiAucm93IHtcbiAgICAgICAgYm9yZGVyLWJvdHRvbToxcHggc29saWQgJGxpZ2h0LWdyYXk7XG4gICAgICAgIHBhZGRpbmctdG9wOiByZW0tY2FsYyg2KTtcbiAgICAgICAgcGFkZGluZy1ib3R0b206IHJlbS1jYWxjKDYpO1xuICAgICAgICBjdXJzb3I6cG9pbnRlcjtcbiAgICAgICAgJjpob3ZlciB7XG4gICAgICAgICAgICBiYWNrZ3JvdW5kOiRsaWdodC1ncmF5O1xuICAgICAgICB9XG4gICAgfVxufVxuIiwiI3NsaWRlci1jb250YWluZXIge1xuICAgIGJhY2tncm91bmQtc2l6ZTogY29udGFpbjtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG59XG5cbi5zbGlkZXItaW1nIHtcbiAgICB3aWR0aDogMTAwJTtcbn1cblxuLnNsaWRlci1uYXYge1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICB0b3A6IDQwJTtcbiAgICBjb2xvcjogI2ZmZmZmZmNjO1xuICAgIGZvbnQtc2l6ZTogNTBweDtcbiAgICBjdXJzb3I6IHBvaW50ZXI7XG4gICAgZGlzcGxheTogbm9uZTtcbn0iLCLvu79cbi5zaXRlVHlwZVBvcFVwIHtcbiAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG59XG5cbi5zaXRlVHlwZVBvcFVwIGgyIHtcbiAgICBmb250LXNpemU6IDE4cHg7XG4gICAgbGluZS1oZWlnaHQ6IDIycHg7XG4gICAgY29sb3I6ICM0ZjRmNGY7XG4gICAgcGFkZGluZy10b3A6IDVweDtcbn1cblxuLnNpdGVUeXBlUG9wVXAgYSwgLnNpdGVUeXBlUG9wVXAgcCB7XG4gICAgZm9udC1zaXplOiAxNnB4O1xuICAgIGxpbmUtaGVpZ2h0OiAyMnB4O1xuICAgIGNvbG9yOmJsYWNrO1xufVxuXG4uc2l0ZVR5cGVQb3BVcCBhOmhvdmVyIHtcbiAgICB0ZXh0LWRlY29yYXRpb246IHVuZGVybGluZTtcbiAgICB0ZXh0LWRlY29yYXRpb24tY29sb3I6ICMwNjNjN2M7XG59XG5cbi5zaXRlVHlwZVBvcFVwIHVsIHtcbiAgICB0ZXh0LWFsaWduOmxlZnQ7XG59XG5cbi5jb29raWVNZXNzYWdlIHAge1xuICAgIGNvbG9yOiAjM2EzNjM2O1xuICAgIGZvbnQtc2l6ZTogMTFweDtcbiAgICBtYXJnaW4tdG9wOiAyMHB4O1xufVxuIiwi77u/LnBvcC1ib3gtaG9sZCB7XG4gICAgZGlzcGxheTogbm9uZTtcblx0b3BhY2l0eTogMTtcblx0cG9zaXRpb246IGZpeGVkO1xuXHRyaWdodDogMjJweDtcblx0dG9wOiAyMnB4O1xuXHR6LWluZGV4OiA5OTk5OTk5OTk7XG5cdHBhZGRpbmc6IDE1cHg7XG5cdHdpZHRoOiAyNzBweDtcblx0Ym9yZGVyLXJhZGl1czogM3B4O1xuXHRib3JkZXItYm90dG9tOiAxcHggc29saWQgcmdiYSgwLCAwLCAwLCAwLjIpO1xuXHRib3gtc2hhZG93OiAwIDFweCA1cHggcmdiYSgwLCAwLCAwLCAwLjE1KTtcblx0YmFja2dyb3VuZC1jb2xvcjogI2ZmZjtcbiAgICBjb2xvcjpibGFjaztcbn1cblxuLnBvcC1ib3gtaG9sZCBoMiB7XG4gICAgY29sb3I6IGJsYWNrO1xuICAgIGZvbnQtc2l6ZTogMTVweDtcbiAgICBtYXJnaW46IDA7XG4gICAgcGFkZGluZy10b3A6MHB4O1xuICAgIHBhZGRpbmctYm90dG9tOiA1cHg7XG5cbn1cblxuLnBvcC1ib3gtaG9sZCBzcGFuLCAucG9wLWJveC1ob2xkIGEsIC5wb3AtYm94LWhvbGQgcCB7XG4gICAgY29sb3I6YmxhY2sgIWltcG9ydGFudDtcbn1cblxuLmNhcnQtZGV0YWlsIHtcblx0bWFyZ2luLXRvcDogMTVweDtcbiAgICB0ZXh0LWFsaWduOnJpZ2h0O1xufVxuXG4uY2FydC1kZXRhaWwgYSB7XG4gICAgbWFyZ2luLXRvcDogMTBweCAhaW1wb3J0YW50O1xuICAgIG1hcmdpbi1ib3R0b206IDNweCAhaW1wb3J0YW50O1xufVxuXG5cbi5wb3AtYm94LWhvbGQgLmJ1dHRvbi5ncmVlbiwgLnBvcC1ib3gtaG9sZCAuYnV0dG9uLmdyZWVuOmhvdmVyIHtcbiAgICBiYWNrZ3JvdW5kOiMyRjlGNDY7XG4gICAgY29sb3I6d2hpdGUgIWltcG9ydGFudDtcbn1cblxuLmNhcnQtcHJpY2Uge1xuZm9udC1zaXplOjE4cHg7XG59XG5cbi5yZWQtdGV4dCwgLnJlZFRleHQge1xuICAgIGNvbG9yOiAjYjIyMjIyICFpbXBvcnRhbnQ7XG59Iiwi77u/LmN1cnJlbmN5RmxhZ3Mge1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbn1cblxuLmN1cnJlbmN5RmxhZ3MgYnV0dG9uIHtcbiAgICBib3JkZXI6IDA7XG4gICAgY3Vyc29yOnBvaW50ZXI7XG59IiwiXG4uY29va2llLXBvbGljeS13cmFwIHtcbiAgICBwb3NpdGlvbjogZml4ZWQ7XG4gICAgdG9wOiAwO1xuICAgIHJpZ2h0OiAwO1xuICAgIGJvdHRvbTogMDtcbiAgICBsZWZ0OiAwO1xuICAgIHotaW5kZXg6IDEwMDA5O1xuICAgIGJhY2tncm91bmQtY29sb3I6IHJnYmEoMTAsIDEwLCAxMCwgMC40NSk7XG4gICAgZGlzcGxheTpub25lO1xuICAgIH1cblxuXG5cblxuXG4uY29va2llLXBvbGljeSB7XG4gICAgZm9udC1zaXplOiAxNnB4O1xuICAgIHBvc2l0aW9uOiBmaXhlZDtcbiAgICB0b3A6IDUwJTtcbiAgICBsZWZ0OiA1MCU7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUoLTUwJSwgLTUwJSk7XG4gICAgei1pbmRleDogOTk5OTk7XG4gICAgd2lkdGg6IDkwJTtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjZmZmZmZmO1xuICAgIHBhZGRpbmc6IDJlbTtcbiAgICBib3JkZXI6IG5vbmU7XG4gICAgYm94LXNoYWRvdzogMCAxcHggNHB4IDAgcmdiYSgwLDAsMCwuNCk7XG4gICAgY29sb3I6ICMwMDAwMDA7XG4gICAgZm9udC13ZWlnaHQ6IG5vcm1hbDtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIGp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2VlbjtcbiAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG4gICAgYm9yZGVyLXJhZGl1czogM3B4O1xuXG4gICAgW2NsYXNzXj1cImNvb2tpZS1wb2xpY3ktXCJdIHtcbiAgICAgICAgbWFyZ2luLXRvcDogMWVtO1xuXG4gICAgICAgICY6Zmlyc3QtY2hpbGQge1xuICAgICAgICAgICAgbWFyZ2luLXRvcDogMDtcbiAgICAgICAgfVxuICAgIH1cblxuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobGFyZ2UpIHtcbiAgICAgICAgbWF4LXdpZHRoOiA5MjBweDtcbiAgICB9XG5cbiAgICAuY29va2llLXBvbGljeS0tdGV4dCB7XG4gICAgICAgIGZvbnQtc2l6ZTogMWVtO1xuXG4gICAgICAgIGEge1xuICAgICAgICAgICAgZm9udC13ZWlnaHQ6IG5vcm1hbDtcbiAgICAgICAgICAgIGNvbG9yOiBkYXJrZW4oI0Y5QTUxOSwgNTAlKTtcbiAgICAgICAgICAgIHRleHQtZGVjb3JhdGlvbjogdW5kZXJsaW5lO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgLmNvb2tpZS1wb2xpY3ktLWJ0bnMge1xuICAgICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuXG4gICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobWVkaXVtKSB7XG4gICAgICAgICAgICBmbGV4LWRpcmVjdGlvbjogcm93O1xuICAgICAgICB9XG5cblxuXG4gICAgICAgIC5idXR0b24ge1xuICAgICAgICAgICAgbWFyZ2luOiAuNWVtIC41ZW0gMDtcblxuICAgICAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludChtZWRpdW0pIHtcbiAgICAgICAgICAgICAgICBtYXJnaW4tdG9wOiAwO1xuICAgICAgICAgICAgICAgIG1hcmdpbjogMWVtIDFlbTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuXG4gICAgICAgIC5idXR0b24tb3V0bGluZSB7XG4gICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB3aGl0ZTtcbiAgICAgICAgICAgIGNvbG9yOiBibGFjaztcbiAgICAgICAgICAgIGJvcmRlci1jb2xvcjogI2QzZDNkMztcbiAgICAgICAgfVxuICAgIH1cbn0iLCJcbi8qVmVydGljYWwgTWVudSBUcmlnZ2VyKi9cblxuLnZlcnRpY2FsTWVudS10cmlnZ2VyOmhvdmVyIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkYmxhY2s7XG4gICAgY29sb3I6ICNmZWZlZmU7XG59XG5cbmEudmVydGljYWxNZW51LXRyaWdnZXIge1xuICAgIHBhZGRpbmctcmlnaHQ6cmVtLWNhbGMoMzZweCk7XG59XG5cbmEudmVydGljYWxNZW51LXRyaWdnZXIsIGEudmVydGljYWxNZW51LXRyaWdnZXI6Zm9jdXMsIGEudmVydGljYWxNZW51LXRyaWdnZXI6aG92ZXIge1xuICAgIGNvbG9yOiAjZmVmZWZlO1xufVxuXG4udmVydGljYWxNZW51LXRyaWdnZXI6OmJlZm9yZSxcbi52ZXJ0aWNhbE1lbnUtdHJpZ2dlcjo6YWZ0ZXIge1xuICAgIGNvbnRlbnQ6ICcnO1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICB0b3A6IDUwJTtcbiAgICBtYXJnaW4tdG9wOiAtMXB4O1xuICAgIGhlaWdodDogMnB4O1xuICAgIHdpZHRoOiA5cHg7XG4gICAgYmFja2dyb3VuZDogI2ZmZmZmZjtcbiAgICAtd2Via2l0LWJhY2tmYWNlLXZpc2liaWxpdHk6IGhpZGRlbjtcbiAgICBiYWNrZmFjZS12aXNpYmlsaXR5OiBoaWRkZW47XG4gICAgLXdlYmtpdC10cmFuc2l0aW9uOiB3aWR0aCAwLjNzLCAtd2Via2l0LXRyYW5zZm9ybSAwLjNzO1xuICAgIC1tb3otdHJhbnNpdGlvbjogd2lkdGggMC4zcywgLW1vei10cmFuc2Zvcm0gMC4zcztcbiAgICB0cmFuc2l0aW9uOiB3aWR0aCAwLjNzLCB0cmFuc2Zvcm0gMC4zcztcbn1cblxuLnZlcnRpY2FsTWVudS10cmlnZ2VyOjpiZWZvcmUge1xuICAgIHJpZ2h0OiAyMnB4O1xuICAgIC13ZWJraXQtdHJhbnNmb3JtOiByb3RhdGUoNDVkZWcpO1xuICAgIC1tb3otdHJhbnNmb3JtOiByb3RhdGUoNDVkZWcpO1xuICAgIC1tcy10cmFuc2Zvcm06IHJvdGF0ZSg0NWRlZyk7XG4gICAgLW8tdHJhbnNmb3JtOiByb3RhdGUoNDVkZWcpO1xuICAgIHRyYW5zZm9ybTogcm90YXRlKDQ1ZGVnKTtcbn1cblxuLnZlcnRpY2FsTWVudS10cmlnZ2VyOjphZnRlciB7XG4gICAgcmlnaHQ6IDE3cHg7XG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHJvdGF0ZSgtNDVkZWcpO1xuICAgIC1tb3otdHJhbnNmb3JtOiByb3RhdGUoLTQ1ZGVnKTtcbiAgICAtbXMtdHJhbnNmb3JtOiByb3RhdGUoLTQ1ZGVnKTtcbiAgICAtby10cmFuc2Zvcm06IHJvdGF0ZSgtNDVkZWcpO1xuICAgIHRyYW5zZm9ybTogcm90YXRlKC00NWRlZyk7XG59XG5cblxuLnZlcnRpY2FsTWVudS10cmlnZ2VyLmRyb3Bkb3duLWlzLWFjdGl2ZTo6YmVmb3JlLFxuLnZlcnRpY2FsTWVudS10cmlnZ2VyLmRyb3Bkb3duLWlzLWFjdGl2ZTo6YWZ0ZXIge1xuICAgIHdpZHRoOiAxNHB4O1xufVxuXG4udmVydGljYWxNZW51LXRyaWdnZXIuZHJvcGRvd24taXMtYWN0aXZlOjpiZWZvcmUge1xuICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGVYKDVweCkgcm90YXRlKC00NWRlZyk7XG4gICAgLW1vei10cmFuc2Zvcm06IHRyYW5zbGF0ZVgoNXB4KSByb3RhdGUoLTQ1ZGVnKTtcbiAgICAtbXMtdHJhbnNmb3JtOiB0cmFuc2xhdGVYKDVweCkgcm90YXRlKC00NWRlZyk7XG4gICAgLW8tdHJhbnNmb3JtOiB0cmFuc2xhdGVYKDVweCkgcm90YXRlKC00NWRlZyk7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKDVweCkgcm90YXRlKC00NWRlZyk7XG59XG5cbi52ZXJ0aWNhbE1lbnUtdHJpZ2dlci5kcm9wZG93bi1pcy1hY3RpdmU6OmFmdGVyIHtcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogcm90YXRlKDQ1ZGVnKTtcbiAgICAtbW96LXRyYW5zZm9ybTogcm90YXRlKDQ1ZGVnKTtcbiAgICAtbXMtdHJhbnNmb3JtOiByb3RhdGUoNDVkZWcpO1xuICAgIC1vLXRyYW5zZm9ybTogcm90YXRlKDQ1ZGVnKTtcbn1cblxuLnZlcnRpY2FsTWVudS10cmlnZ2VyLmRyb3Bkb3duLWlzLWFjdGl2ZSB7XG4gICAgYmFja2dyb3VuZDogJGFjY2VudDtcbiAgICBjb2xvcjokYmxhY2s7XG59XG5cbi52ZXJ0aWNhbE1lbnUtdHJpZ2dlciB7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIHBhZGRpbmc6IDAgMzZweCAwIDIwcHg7XG4gICAgbGluZS1oZWlnaHQ6IDQwcHg7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogJG9mZi1ibGFjaztcbiAgICBjb2xvcjogI2ZlZmVmZTtcbiAgICBmb250LXNpemU6IDE0cHg7XG4gICAgYm9yZGVyOiBub25lO1xuICAgIGZvbnQtd2VpZ2h0OiA3MDA7XG4gICAgei1pbmRleDogMjAwMDA7XG59IFxuXG5cbi5kaXNwbGF5QmxvY2sge1xuICAgIGRpc3BsYXk6YmxvY2sgIWltcG9ydGFudDtcbn1cblxuLlRpZXJNZW51IHtcbiAgICBkaXNwbGF5OiBub25lO1xufSBcblxuLlRpZXJNZW51LmRyb3Bkb3duLWlzLWFjdGl2ZSB7XG4gICAgZGlzcGxheTpibG9jaztcbiAgICBvcGFjaXR5OiAxO1xuICAgIHotaW5kZXg6IDk5OTk5OTk7XG59XG5cbi50b3AtYmFyLCAudG9wLWJhciB1bCB7XG4gICAgYmFja2dyb3VuZDpub25lO1xufVxuXG4udG9wLWJhciB7XG4gICAgcGFkZGluZzogLjA1cmVtO1xufVxuXG4udGl0bGUtYmFyIHtcbiAgICBkaXNwbGF5OmJsb2NrO1xuICAgIGZsb2F0Om5vbmU7XG4gICAgcGFkZGluZzogMC4xcmVtIDAuNnJlbTtcbiAgICBiYWNrZ3JvdW5kOm5vbmU7XG59XG5cbi50aXRsZS1iYXIgLm1lbnUtaWNvbiB7XG4gICAgYm90dG9tOiByZW0tY2FsYygtNXB4KTtcbn1cblxuLm1haW5OYXYgLmlzLWRyaWxsZG93biB7XG4gICAgbWF4LXdpZHRoOjEyMDBweCAhaW1wb3J0YW50O1xuICAgIG1hcmdpbi10b3A6IHJlbS1jYWxjKDEwcHgpO1xuICAgIGRpc3BsYXk6bm9uZTtcbn1cblxuLnNob3ctZHJpbGxkb3duIC5pcy1kcmlsbGRvd24ge1xuICAgIGRpc3BsYXk6YmxvY2s7XG4gICAgbWFyZ2luLWJvdHRvbToxNXB4O1xufVxuXG5cbi5tYWluTmF2IC5kcmlsbGRvd24gYSB7XG4gICAgYmFja2dyb3VuZDpub25lO1xuICAgIGJvcmRlci1ib3R0b206MXB4IHNvbGlkICRkYXJrLWdyYXk7XG59XG5cbi5UaWVyTWVudSBsaS50aWVySGVhZGVyIHtcbiAgICBmb250LXNpemU6IHJlbS1jYWxjKDE0cHgpO1xuICAgIGxpbmUtaGVpZ2h0OiAyMHB4O1xuICAgIHBhZGRpbmc6IDVweCAxMHB4O1xuICAgIGZvbnQtd2VpZ2h0OiA3MDA7XG4gICAgYmFja2dyb3VuZDogJGJsYWNrO1xufVxuXG5cbi5tYWluTmF2IC5kcmlsbGRvd24gLmlzLWRyaWxsZG93bi1zdWJtZW51LXBhcmVudD5hOjphZnRlciB7XG4gICAgYm9yZGVyLWNvbG9yOiB0cmFuc3BhcmVudCB0cmFuc3BhcmVudCB0cmFuc3BhcmVudCAkd2hpdGU7XG59XG5cbi5tYWluTmF2IC5kcmlsbGRvd24gLmlzLWRyaWxsZG93bi1zdWJtZW51IHtcbiAgICBiYWNrZ3JvdW5kOiRvZmYtYmxhY2s7XG4gICAgbWluLWhlaWdodDoxMDAlO1xufVxuXG5cbkBtZWRpYSBzY3JlZW4gYW5kICN7YnJlYWtwb2ludChtZWRpdW0gZG93bil9IHtcblxuICAgIC5UaWVyTWVudS13cmFwcGVyLmV4cGFuZGVkIC5tZW51IGxpIHtcbiAgICAgICAgZGlzcGxheTpibG9jaztcbiAgICB9XG5cbiAgICAuVGllck1lbnUtd3JhcHBlciAuZHJpbGxkb3duIC5qcy1kcmlsbGRvd24tYmFjaz5hOjpiZWZvcmUge1xuICAgICAgICBib3JkZXItY29sb3I6IHRyYW5zcGFyZW50ICR3aGl0ZSB0cmFuc3BhcmVudCB0cmFuc3BhcmVudDtcbiAgICB9XG5cbiAgICAuaGlkZS1vbi1jYXQtb3BlbiB7XG4gICAgICAgIGRpc3BsYXk6bm9uZSAhaW1wb3J0YW50O1xuICAgIH1cblxuXG4gICAgLm1haW5OYXYge1xuICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICAgIHdpZHRoOiAxMDAlO1xuXG4gICAgfVxuXG4gICAgLm1haW5OYXYgLnRvcC1iYXItbGVmdCB7XG4gICAgICAgIGRpc3BsYXk6bm9uZTtcbiAgICAgICAgd2lkdGg6MTAwJTtcbiAgICAgICAgYm9yZGVyLXRvcDoxcHggc29saWQgJG1lZGl1bS1ncmF5O1xuICAgIH1cblxuXG4gICAgLlRpZXJNZW51LXdyYXBwZXIuZXhwYW5kZWQge1xuICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICBiYWNrZ3JvdW5kOiRvZmYtYmxhY2s7XG4gICAgfVxuXG4gICAgLmhlYWRlcldyYXBwZXIgLlRpZXJNZW51IGxhYmVsIHtcbiAgICAgICAgcGFkZGluZzogOHB4O1xuICAgICAgICBiYWNrZ3JvdW5kOiBibGFjaztcbiAgICB9XG5cbiAgICAudGllckhlYWRlciB7XG4gICAgICAgIGZvbnQtd2VpZ2h0OmJvbGQ7XG4gICAgfVxuXG4gICAgLnRpZXJUaHJlZU1hcmdpbiB7XG4gICAgICAgIHBhZGRpbmctbGVmdDogcmVtLWNhbGMoMjVweCk7XG4gICAgfVxuXG59XG5AbWVkaWEgc2NyZWVuIGFuZCAje2JyZWFrcG9pbnQobGFyZ2UpfSB7XG5cbiAgICAuVGllck1lbnUge1xuICAgICAgICBwb3NpdGlvbjphYnNvbHV0ZTtcbiAgICAgICAgdG9wOiAxMDAlO1xuICAgICAgICByaWdodDogYXV0bztcbiAgICAgICAgbGVmdDogMDtcbiAgICB9IFxuXG4gICAgLm5lYXJCb3R0b20gPiB1bCB7XG4gICAgICAgIHRvcDogYXV0byAhaW1wb3J0YW50O1xuICAgICAgICBib3R0b206IDBweDtcbiAgICAgICAgaGVpZ2h0OiBhdXRvO1xuICAgIH1cblxuICAgIC5yZWxhdGl2ZSB7XG4gICAgICAgIHBvc2l0aW9uOnJlbGF0aXZlO1xuICAgIH1cblxuICAgIC5UaWVyTWVudS5kcm9wZG93bi1pcy1hY3RpdmUge1xuICAgICAgICBiYWNrZ3JvdW5kOndoaXRlO1xuICAgIH1cblxuXG4gICAgLm1haW5OYXYgLnZlcnRpY2FsLm1lbnUubmVzdGVkIHtcbiAgICAgICAgYmFja2dyb3VuZDogd2hpdGU7XG4gICAgICAgIGJveC1zaGFkb3c6IDAgNHB4IDEycHggcmdiYSgwLDAsMCwuMSk7XG4gICAgfVxuXG4gICAgLm1haW5OYXYgLnZlcnRpY2FsLm1lbnUgYSB7XG4gICAgICAgIGNvbG9yOiRibGFjayAhaW1wb3J0YW50O1xuICAgIH1cbn1cblxuLm5vLWpzIHtcbiAgQGluY2x1ZGUgYnJlYWtwb2ludChzbWFsbCBvbmx5KSB7XG4gICAgLnRvcC1iYXIge1xuICAgICAgZGlzcGxheTogbm9uZTtcbiAgICB9XG4gIH1cblxuICBAaW5jbHVkZSBicmVha3BvaW50KGxhcmdlKSB7XG4gICAgLnRpdGxlLWJhciB7XG4gICAgICBkaXNwbGF5OiBub25lO1xuICAgIH1cbiAgfVxufVxuXG4vKlRpZXIgTWVudSBDb250ZW50Ki9cblxuQG1lZGlhIHNjcmVlbiBhbmQgI3ticmVha3BvaW50KGxhcmdlKX0ge1xuICAgIC50aXRsZS1iYXIge1xuICAgICAgZGlzcGxheTogbm9uZTtcbiAgICB9XG5cbiAgICAubWFpbk5hdiAuaXMtZHJpbGxkb3duIHtcbiAgICAgICAgZGlzcGxheTpub25lO1xuICAgIH1cblxuICAgIC5oaWRlLW9uLWNhdC1vcGVuIHtcbiAgICAgICAgZGlzcGxheTppbmxpbmUtYmxvY2s7XG4gICAgfVxuXG4gICAgLlRpZXJNZW51IHtcbiAgICAgICAgbWluLXdpZHRoOjMyMHB4O1xuICAgIH1cblxuICAgIC5UaWVyTWVudSBsaS50aWVySGVhZGVyIHtcbiAgICAgICAgZm9udC1zaXplOiByZW0tY2FsYygxNHB4KTtcbiAgICAgICAgbGluZS1oZWlnaHQ6IHJlbS1jYWxjKDIwcHgpO1xuICAgICAgICBwYWRkaW5nOiByZW0tY2FsYyg1cHggMTBweCk7XG4gICAgICAgIGZvbnQtd2VpZ2h0OiA3MDA7XG4gICAgICAgIGNvbG9yOiAjMDAwO1xuICAgICAgICBiYWNrZ3JvdW5kOiAjZjRmNGY0O1xuICAgIH1cblxuICAgIC5UaWVyTWVudSA+IGxpIHtcbiAgICAgICAgYm9yZGVyLXRvcDogMXB4IHNvbGlkICNlYmViZWI7XG4gICAgfVxuXG4gICAgLlRpZXJNZW51ID4gbGkgPiBhIHtcbiAgICAgICAgbGluZS1oZWlnaHQ6IHJlbS1jYWxjKDIwcHgpO1xuICAgICAgICBwYWRkaW5nLXRvcDogcmVtLWNhbGMoNXB4KSAhaW1wb3J0YW50O1xuICAgICAgICBwYWRkaW5nLWJvdHRvbTpyZW0tY2FsYyg1cHgpICFpbXBvcnRhbnQ7XG4gICAgICAgIGZvbnQtc2l6ZTpyZW0tY2FsYygxMnB4KTtcbiAgICB9XG5cbiAgICAuVGllck1lbnUuZHJvcGRvd24ubWVudS52ZXJ0aWNhbD5saS5vcGVucy1yaWdodD5hOjphZnRlciB7XG4gICAgICAgIGJvcmRlci1jb2xvcjogdHJhbnNwYXJlbnQgdHJhbnNwYXJlbnQgdHJhbnNwYXJlbnQgJGRhcmstZ3JheTtcbiAgICB9XG5cbiAgICAuVGllck1lbnUuZHJvcGRvd24ubWVudSAuaXMtYWN0aXZlID4gYSAge1xuICAgICAgICBib3JkZXItbGVmdDpzb2xpZCAzcHg7XG4gICAgICAgIGJvcmRlci1jb2xvcjokYmxhY2s7XG4gICAgICAgIHBhZGRpbmctbGVmdDowLjhyZW07XG4gICAgfVxuXG4gICAgLlRpZXJNZW51LmRyb3Bkb3duLm1lbnUudmVydGljYWw+bGkub3BlbnMtcmlnaHQ+LmlzLWRyb3Bkb3duLXN1Ym1lbnUge1xuICAgICAgICB3aWR0aDo1MTVweDtcbiAgICAgICAgcGFkZGluZzo1cHg7XG4gICAgfVxuXG4gICAgLm1haW5OYXYgLnZlcnRpY2FsLm1lbnUubmVzdGVkIGRpdiBhIHtcbiAgICAgICAgd2hpdGUtc3BhY2U6IGluaGVyaXQ7XG4gICAgICAgIGxpbmUtaGVpZ2h0OiAxLjNyZW07XG4gICAgICAgIGZvbnQtd2VpZ2h0OiA0MDA7XG4gICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICBwYWRkaW5nLWxlZnQ6MDtcbiAgICAgICAgcGFkZGluZy1ib3R0b206IHJlbS1jYWxjKDBweCk7XG4gICAgICAgIGZvbnQtc2l6ZTogcmVtLWNhbGMoMTJweCk7XG4gICAgICAgICYudGllclRocmVlTWFyZ2luIHtcbiAgICAgICAgICAgIHBhZGRpbmctbGVmdDpyZW0tY2FsYyg4cHgpO1xuICAgICAgICB9XG4gICAgfVxuXG5cblxuICAgIC50aWVyT25lSGVhZGVyIHtcbiAgICAgICAgY29sb3I6ICRibGFjayAhaW1wb3J0YW50O1xuICAgICAgICBmb250LXNpemU6IHJlbS1jYWxjKDE2cHgpO1xuICAgICAgICBmb250LXdlaWdodDogNzAwO1xuICAgICAgICBwYWRkaW5nLWJvdHRvbTogNXB4O1xuICAgICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgfVxuXG4gICAgLmhlYWRlcldyYXBwZXIgLlRpZXJNZW51IGxhYmVsIHtcbiAgICAgICAgY29sb3I6JGJsYWNrO1xuICAgIH1cblxuICAgIC5tYWluTmF2IC52ZXJ0aWNhbC5tZW51Lm5lc3RlZCBkaXYgYS50aWVySGVhZGVyLCAubWFpbk5hdiAudmVydGljYWwubWVudS5uZXN0ZWQgZGl2IGxhYmVsIHtcbiAgICAgICAgZm9udC13ZWlnaHQ6IDcwMDtcbiAgICAgICAgZm9udC1zaXplOiByZW0tY2FsYygxNHB4KTtcbiAgICAgICAgbGluZS1oZWlnaHQ6IHJlbS1jYWxjKDIwcHgpO1xuICAgIH1cblxuICAgIC50aWVyRG9jQ291bnQge1xuICAgICAgICBjb2xvcjogJGRhcmstZ3JheTtcbiAgICAgICAgZm9udC1zaXplOiByZW0tY2FsYyg5cHgpO1xuICAgIH1cbiAgICAubWFpbk5hdiAudmVydGljYWwubWVudS5uZXN0ZWQgbGkge1xuICAgICAgICBkaXNwbGF5OmJsb2NrO1xuICAgIH1cblxuICAgIC5tYWluTmF2IC52ZXJ0aWNhbC5tZW51Lm5lc3RlZCBkaXYge1xuICAgICAgICBmbG9hdDogbGVmdDtcbiAgICAgICAgd2lkdGg6IDI0NXB4O1xuICAgICAgICBoZWlnaHQ6IGF1dG87XG4gICAgICAgIHBhZGRpbmc6IDRweCA4cHg7XG4gICAgICAgIGNvbG9yOiAjMzMzO1xuICAgIH1cbn0iLCIuZm9vdGVyQ29udGFpbmVyIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkb2ZmLWJsYWNrO1xufVxuXG4uZm9vdGVyQm90dG9tIHtcbiAgICBAaW5jbHVkZSBncmlkLXJvdztcblxuICAgIHRleHQtYWxpZ246IGNlbnRlcjtcblxuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobGFyZ2UpIHtcbiAgICAgICAgLmZvb3Rlci1jb2wge1xuICAgICAgICAgICAgdGV4dC1hbGlnbjogbGVmdDtcbiAgICAgICAgfVxuICAgIH1cbn1cblxuLmZvb3RlckNvbnRhaW5lciBhLCAuZm9vdGVyQ29udGFpbmVyIHAsIC5mb290ZXJDb250YWluZXIgbGksIC5mb290ZXJDb250YWluZXIgbGFiZWwge1xuICAgIGNvbG9yOiAkd2hpdGU7XG4gICAgZm9udC1zaXplOnJlbS1jYWxjKDE0cHgpO1xufVxuXG4uZm9vdGVyQ29udGFpbmVyIGE6aG92ZXIge1xuICAgIHRleHQtZGVjb3JhdGlvbjp1bmRlcmxpbmU7XG4gICAgdGV4dC1kZWNvcmF0aW9uLWNvbG9yOiNmZWZlZmU7XG59XG5cbi5jb25yYWRGb290ZXIge1xuICAgIG1hcmdpbjowIGF1dG87XG59XG5cbi50ZXJtc1ByaXZhY3kge1xuICAgIEBpbmNsdWRlIGdyaWQtY29sdW1uO1xuICAgIHBhZGRpbmctYm90dG9tOiAwLjM1NzE0cmVtO1xuICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbn1cblxuLnJlZ2lzdGVyTmV3c2xldHRlciB7XG4gICAgQGluY2x1ZGUgZ3JpZC1jb2x1bW47XG5cbiAgICBidXR0b24ge1xuICAgICAgICBmb250LXdlaWdodDogYm9sZDtcbiAgICB9XG59XG5cbi5mb290ZXJCb3R0b20gLmNlcnRpZmljYXRlLXdyYXAge1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gICAgXG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludChsYXJnZSkge1xuICAgICAgICBqdXN0aWZ5LWNvbnRlbnQ6IGZsZXgtc3RhcnQ7XG4gICAgfVxufVxuXG4uZm9vdGVyQ29udGFpbmVyIC5ic2lHcmFwaGljIHtcbiAgICBtYXJnaW46IDAgYXV0bztcbn1cblxuLmNvcHlyaWdodENvbnRlbnQge1xuICAgIEBpbmNsdWRlIGdyaWQtY29sdW1uO1xuICAgIHRleHQtYWxpZ246Y2VudGVyO1xufVxuXG4uYnNpQ29udGVudCB7XG4gICAgQGluY2x1ZGUgZ3JpZC1jb2x1bW4gKDYgb2YgMTIpO1xuXG4gICAgaW1nIHtcbiAgICAgICAgbWF4LWhlaWdodDogMTAwcHg7XG4gICAgICAgIG1hcmdpbi1sZWZ0OiAwLjI1cmVtO1xuICAgIH1cbn1cblxuLnBheW1lbnRMb2dvQ29udGVudCB7XG4gICAgQGluY2x1ZGUgZ3JpZC1jb2x1bW47XG4gICAgbWFyZ2luLXRvcDogMC41cmVtO1xuICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbn1cblxuLnNvY2lhbEljb25Db250ZW50IHtcbiAgICBAaW5jbHVkZSBncmlkLWNvbHVtbjtcbiAgICBtYXJnaW4tdG9wOiAwLjVyZW07XG4gICAgdGV4dC1hbGlnbjogY2VudGVyO1xufVxuXG5cbi50cnVzdFBpbG90Q29udGVudCB7XG4gICAgQGluY2x1ZGUgZ3JpZC1jb2x1bW4oMTIgb2YgMTIpO1xuXG4gICAgLnRydXN0cGlsb3Qtd2lkZ2V0IGlmcmFtZSB7XG4gICAgICAgIG1heC1oZWlnaHQ6IDEzMHB4O1xuICAgICAgICB3aWR0aDogODAlO1xuICAgIH1cbn1cblxuLmZvb3RlckNvbnRhaW5lciAuYWNjb3JkaW9uLCAuZm9vdGVyQ29udGFpbmVyIC5hY2NvcmRpb24tY29udGVudCB7XG4gICAgYmFja2dyb3VuZDogJG9mZi1ibGFjaztcbiAgICBib3JkZXItbGVmdDpub25lO1xuICAgIGJvcmRlci1yaWdodDpub25lO1xufVxuXG4uZm9vdGVyQ29udGFpbmVyIC5hY2NvcmRpb24tdGl0bGU6OmJlZm9yZSB7XG4gICAgdG9wOiA0NSU7XG4gICAgZm9udC13ZWlnaHQ6IGJvbGQ7XG4gICAgZm9udC1zaXplOiAxLjNyZW07XG59XG5cbi5mb290ZXJDb250YWluZXIgLmFjY29yZGlvbi10aXRsZTpob3ZlciwgLmFjY29yZGlvbi10aXRsZTpmb2N1cyB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogJGJsYWNrO1xufVxuXG4uZm9vdGVyQ29udGFpbmVyIC5hY2NvcmRpb24tdGl0bGUge1xuICAgIGZvbnQtc2l6ZTpyZW0tY2FsYygxNnB4KTtcbiAgICBib3JkZXItbGVmdDpub25lO1xuICAgIGJvcmRlci1yaWdodDpub25lO1xufVxuXG4uZm9vdGVyQ29udGFpbmVyIC5hY2NvcmRpb24taXRlbTpsYXN0LWNoaWxkPjpsYXN0LWNoaWxkIHtcbiAgICBib3JkZXItcmFkaXVzOiAwcHg7XG59XG5cbjpsYXN0LWNoaWxkOm5vdCguaXMtYWN0aXZlKT4uYWNjb3JkaW9uLXRpdGxlIHtcbiAgICBib3JkZXItcmFkaXVzOiAwcHg7XG59XG5cbi5mb290ZXJDb250YWluZXIgLmFjY29yZGlvbi1jb250ZW50IHVsIHtcbiAgICBtYXJnaW4tbGVmdDowcHg7XG4gICAgbGkge1xuICAgICAgICBsaXN0LXN0eWxlOm5vbmU7XG4gICAgICAgIHRleHQtaW5kZW50OnVuc2V0O1xuICAgICAgICBsaW5lLWhlaWdodDpyZW0tY2FsYygyMnB4KTtcbiAgICB9XG59XG5cbi5mb290ZXJDb250YWluZXIgLnNvY2lhbEljb25Db250YWluZXIge1xuICAgIGRpc3BsYXk6aW5saW5lLWJsb2NrO1xuICAgIG1hcmdpbjowIGF1dG87XG59XG5cbi5mb290ZXJDb250YWluZXIgLnNvY2lhbEljb25Db250YWluZXIgYSB7XG4gICAgbWFyZ2luOjAuNXJlbTtcbn1cblxuXG5AbWVkaWEgc2NyZWVuIGFuZCAje2JyZWFrcG9pbnQobGFyZ2UpfVxue1xuXG4gICAgI2Zvb3RlckFjY29yZGlvbiA+IGxpID4gYS5kaXNhYmxlZCB7XG4gICAgICAgIHBvaW50ZXItZXZlbnRzOiBub25lO1xuICAgICAgICBjdXJzb3I6IGRlZmF1bHQ7XG4gICAgICAgIG1hcmdpbi10b3A6IHJlbS1jYWxjKDEwcHgpO1xuICAgICAgICBtYXJnaW4tYm90dG9tOiByZW0tY2FsYygxNXB4KTtcbiAgICAgICAgZm9udC13ZWlnaHQ6IGJvbGQ7XG4gICAgfVxuXG4gICAgI2Zvb3RlckFjY29yZGlvbiA+IGxpID4gYVtkaXNhYmxlZF0ge1xuICAgICAgICBwb2ludGVyLWV2ZW50czogbm9uZTtcbiAgICAgICAgY3Vyc29yOiBkZWZhdWx0O1xuICAgICAgICBtYXJnaW4tdG9wOiByZW0tY2FsYygxMHB4KTtcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogcmVtLWNhbGMoMTVweCk7XG4gICAgICAgIGZvbnQtd2VpZ2h0OiBib2xkO1xuICAgIH1cblxuICAgIDpsYXN0LWNoaWxkID4gLmFjY29yZGlvbi1jb250ZW50Omxhc3QtY2hpbGQge1xuICAgICAgICBib3JkZXItYm90dG9tOiBub25lO1xuICAgIH1cblxuICAgIC5mb290ZXJDb250YWluZXIgdWwuYWNjb3JkaW9uIHtcbiAgICAgICAgQGluY2x1ZGUgZ3JpZC1yb3c7XG4gICAgICAgIGJhY2tncm91bmQ6IG5vbmU7XG4gICAgfVxuXG4gICAgI2Zvb3RlckFjY29yZGlvbiAuYWNjb3JkaW9uLWNvbnRlbnQge1xuICAgICAgICBkaXNwbGF5OiBibG9jayAhaW1wb3J0YW50O1xuICAgIH1cblxuICAgIC5mb290ZXJDb250YWluZXIgLmFjY29yZGlvbi1jb250ZW50IHtcbiAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgIHBhZGRpbmc6IDA7XG4gICAgICAgIGJvcmRlcjogbm9uZTtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogcmdiYSgkY29sb3I6ICR3aGl0ZSwgJGFscGhhOiAwKTtcbiAgICAgICAgY29sb3I6ICR3aGl0ZTtcbiAgICB9XG5cbiAgICAuZm9vdGVyQ29udGFpbmVyIGxpLmFjY29yZGlvbi1pdGVtIHtcbiAgICAgICAgQGluY2x1ZGUgZ3JpZC1jb2x1bW4oMSBvZiA0KTtcbiAgICB9XG5cbiAgICAuZm9vdGVyQ29udGFpbmVyIGxpLmFjY29yZGlvbi1pdGVtOmxhc3QtY2hpbGQ6bm90KDpmaXJzdC1jaGlsZCkge1xuICAgICAgICBmbG9hdDogbGVmdDtcbiAgICB9XG5cbiAgICAuZm9vdGVyQ29udGFpbmVyID4gdWwgPiBsaSA+IGEge1xuICAgICAgICAmOmhvdmVyIHtcbiAgICAgICAgICAgIGNvbG9yOiAkd2hpdGU7XG4gICAgICAgIH1cblxuICAgICAgICAmOmZvY3VzIHtcbiAgICAgICAgICAgIGNvbG9yOiAkd2hpdGU7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAuZm9vdGVyQ29udGFpbmVyIGxpID4gYS5hY2NvcmRpb24tdGl0bGUge1xuICAgICAgICBib3JkZXItYm90dG9tOiBub25lICFpbXBvcnRhbnQ7XG4gICAgfVxuXG4gICAgLmZvb3RlckNvbnRhaW5lciAuYWNjb3JkaW9uLXRpdGxlIHtcbiAgICAgICAgcG9zaXRpb246IGluaXRpYWw7XG4gICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICBwYWRkaW5nOiAwO1xuICAgICAgICBib3JkZXI6IG5vbmU7XG4gICAgICAgIGJvcmRlci1ib3R0b206IG5vbmU7XG4gICAgICAgIGxpbmUtaGVpZ2h0OiBub3JtYWw7XG4gICAgICAgIGxpbmUtaGVpZ2h0OiBpbml0aWFsO1xuICAgICAgICBjb2xvcjogJHdoaXRlO1xuXG4gICAgICAgICY6aG92ZXIge1xuICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogcmdiYSgkY29sb3I6ICR3aGl0ZSwgJGFscGhhOiAwKTtcbiAgICAgICAgfVxuXG4gICAgICAgICY6Zm9jdXMge1xuICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogcmdiYSgkY29sb3I6ICR3aGl0ZSwgJGFscGhhOiAwKTtcbiAgICAgICAgfVxuXG4gICAgICAgICY6OmJlZm9yZSB7XG4gICAgICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgICAgICB0b3A6IDUwJTtcbiAgICAgICAgICAgIHJpZ2h0OiAxcmVtO1xuICAgICAgICAgICAgbWFyZ2luLXRvcDogLTAuNXJlbTtcbiAgICAgICAgICAgIGNvbnRlbnQ6ICcnO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgLnJlZ2lzdGVyTmV3c2xldHRlciB7XG4gICAgICAgIEBpbmNsdWRlIGdyaWQtY29sdW1uKDEgb2YgMyk7XG4gICAgfVxuXG4gICAgLnRlcm1zUHJpdmFjeSB7XG4gICAgICAgIEBpbmNsdWRlIGdyaWQtY29sdW1uKDEgb2YgMyk7XG4gICAgICAgIHRleHQtYWxpZ246IGxlZnQ7XG4gICAgICAgIGZsb2F0OiByaWdodDtcbiAgICB9XG5cbiAgICAuY29weXJpZ2h0Q29udGVudCB7XG4gICAgICAgIEBpbmNsdWRlIGdyaWQtY29sdW1uKDEgb2YgMik7XG4gICAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICAgICAgdGV4dC1hbGlnbjogbGVmdDtcbiAgICB9XG5cbiAgICAucGF5bWVudExvZ29Db250ZW50IHtcbiAgICAgICAgQGluY2x1ZGUgZ3JpZC1jb2x1bW4oMSBvZiA0KTtcbiAgICAgICAgbWFyZ2luLXRvcDogcmVtLWNhbGMoMTJweCk7XG4gICAgICAgIC8qLnBheW1lbnRJY29ucyB7XG4gICAgICAgICAgICBmbG9hdDogcmlnaHQ7XG4gICAgICAgICAgICBtYXJnaW46IDBweDtcbiAgICAgICAgfSovXG4gICAgICAgIGltZyB7XG4gICAgICAgICAgICBmbG9hdDogbGVmdDtcbiAgICAgICAgICAgIG1hcmdpbi1sZWZ0OiAxLjYyNXJlbTtcbiAgICAgICAgfVxuICAgIH1cblxuICAgIC5ic2lDb250ZW50IHtcbiAgICAgICAgQGluY2x1ZGUgZ3JpZC1jb2x1bW4oMiBvZiAxMik7XG4gICAgICAgIG1hcmdpbi1yaWdodDogNnJlbTtcbiAgICB9XG5cblxuICAgIC50cnVzdFBpbG90Q29udGVudCB7XG4gICAgICAgIEBpbmNsdWRlIGdyaWQtY29sdW1uKDEgb2YgNCk7XG4gICAgfVxuXG4gICAgLnNvY2lhbEljb25Db250ZW50IHtcbiAgICAgICAgQGluY2x1ZGUgZ3JpZC1jb2x1bW4oMSBvZiA0KTtcblxuICAgICAgICAuc29jaWFsSWNvbkNvbnRhaW5lciB7XG4gICAgICAgICAgICBmbG9hdDogbGVmdDtcbiAgICAgICAgfVxuICAgIH1cbn0iLCIvKkNhcnQgSWNvbiovXG5cbi5zaG9wcGluZ0NhcnRJY29uIHtcbiAgICBAaW5jbHVkZSBzcHJpdGUtY2FydGljb25zbWFsbCgpO1xuXG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludChsYXJnZSkge1xuICAgICAgICBAaW5jbHVkZSBzcHJpdGUtY2FydGljb24oKTtcbiAgICB9XG59XG5cblxuLnNob3BwaW5nQ2FydEljb24ge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICBtYXJnaW4tcmlnaHQ6IHJlbS1jYWxjKDE1cHgpO1xufVxuXG4uc2hvcHBpbmdDYXJ0SWNvbiAuYmFkZ2Uge1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICB0b3A6IC04cHg7XG4gICAgcmlnaHQ6IC04cHg7XG4gICAgZm9udC13ZWlnaHQ6IGJvbGQ7XG4gICAgY29sb3I6ICRibGFjaztcbiAgICBmb250LXNpemU6cmVtLWNhbGMoMTFweCk7XG4gICAgbWluLXdpZHRoOjIuMmVtO1xufVxuXG4vKkVuZCBDYXJ0IEljb24qL1xuXG4vKkhlYWRlciBMYXlvdXQqL1xuXG4udG9wSGVhZGVyQ29udGVudCwgLm1haW5IZWFkZXJDb250ZW50IHtcbiAgICBAaW5jbHVkZSBncmlkLXJvdztcbiAgICBAaW5jbHVkZSBncmlkLXJvdy1zaXplKGV4cGFuZCk7XG4gICAgYmFja2dyb3VuZDogJGJsYWNrO1xuICAgIHBvc2l0aW9uOnJlbGF0aXZlO1xufVxuXG4udG9wSGVhZGVyQ29udGVudCwgLnRvcEhlYWRlckNvbnRlbnQgYSwgLnRvcEhlYWRlckNvbnRlbnQgaW5wdXQge1xuICAgIGxpbmUtaGVpZ2h0OiByZW0tY2FsYygyOHB4KTtcbiAgICBmb250LXNpemU6IHJlbS1jYWxjKDE0cHgpO1xuICAgIG1hcmdpbjogMHB4O1xufVxuXG4ubWFpbkhlYWRlckNvbnRlbnQge1xuICAgIHBhZGRpbmctdG9wOiByZW0tY2FsYygxOHB4KTtcbn1cblxuLm1haW5IZWFkZXJDb250ZW50LCAubWFpbkhlYWRlckNvbnRlbnQgYSB7XG4gICAgZm9udC1zaXplOiByZW0tY2FsYygxNHB4KTtcbn1cblxuLm1haW5OYXYsIC5tYWluTmF2IGEge1xuICAgIGZvbnQtc2l6ZTogcmVtLWNhbGMoMTRweCk7XG59XG5cbi50b3BIZWFkZXJDb250ZW50IC5jaGFuZ2VTaXRlIHtcbiAgICBAaW5jbHVkZSBncmlkLWNvbHVtbigxIG9mIDMpO1xufVxuXG4udG9wSGVhZGVyQ29udGVudCAudG9wQmFza2V0T3B0aW9ucyB7XG4gICAgQGluY2x1ZGUgZ3JpZC1jb2x1bW4oMiBvZiAzKTtcblxuICAgIC5hY2Nlc3Mtd3JhcCB7XG4gICAgICAgIG1hcmdpbi1yaWdodDogMWVtO1xuICAgICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG5cbiAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludChtZWRpdW0pIHtcbiAgICAgICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgICAgfVxuXG4gICAgICAgIC5hY2Nlc3MtdG9nZ2xlIHtcbiAgICAgICAgICAgIGkge1xuICAgICAgICAgICAgICAgIGZvbnQtc2l6ZTogMS4yZW07XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cblxuICAgICAgICAuYWNjZXNzLXBvcHVwIHtcbiAgICAgICAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICAgICAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbiAgICAgICAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAgICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgICAgICB3aWR0aDogMjQwcHg7XG4gICAgICAgICAgICBoZWlnaHQ6IDUwcHg7XG4gICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkb2ZmLWJsYWNrO1xuICAgICAgICAgICAgei1pbmRleDogMTtcbiAgICAgICAgICAgIGJvcmRlci1yYWRpdXM6IDAgMCA0cHggNHB4O1xuICAgICAgICAgICAgdG9wOiAyOHB4O1xuICAgICAgICAgICAgcmlnaHQ6IDUwJTtcblxuICAgICAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludChzbWFsbCBvbmx5KSB7XG4gICAgICAgICAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKDUwJSk7XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobWVkaXVtKSB7XG4gICAgICAgICAgICAgICAgcmlnaHQ6IGNhbGMoMTAwJSArIDFlbSk7XG4gICAgICAgICAgICAgICAgdG9wOiAwO1xuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICBsYWJlbCB7XG4gICAgICAgICAgICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgICAgICAgICAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbiAgICAgICAgICAgICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuXG4gICAgICAgICAgICAgICAgLmN1c3RvbS1jaGVja2JveCB7XG4gICAgICAgICAgICAgICAgICAgIG1hcmdpbi1yaWdodDogLjVlbTtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG59XG5cbi50b3BIZWFkZXJDb250ZW50IC50aGNfU2VjdGlvbjpsYXN0LWNoaWxkIHtcbiAgICB0ZXh0LWFsaWduOiByaWdodDtcbn1cbiBcbi50b3BIZWFkZXJDb250ZW50IC50aGNfU2VjdGlvbiBzcGFuIHtcbiAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgdGV4dC1kZWNvcmF0aW9uOm5vbmU7XG4gICAgY29sb3I6JHdoaXRlO1xuXG4gICAgPiBzcGFuIHtcbiAgICAgICAgbWFyZ2luLWxlZnQ6IDFlbTtcbiAgICB9XG59XG5cbi50b3BIZWFkZXJDb250ZW50IC50aGNfU2VjdGlvbi5yaWdodCBzcGFuIHtcbiAgICBjdXJzb3I6cG9pbnRlcjtcbn1cblxuLmhlYWRlckJhc2tldENvbnRlbnQge1xuICAgIGZsb2F0OiByaWdodDtcbn1cblxuLmhlYWRlckxvZ2luQ29udGVudHtcbiAgICBmbG9hdDogbGVmdDtcbiAgICBtYXJnaW4tcmlnaHQ6cmVtLWNhbGMoMTBweCk7XG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludChtZWRpdW0gZG93bikge1xuICAgICAgICBmbG9hdDpyaWdodDtcbiAgICB9XG59XG5cbi5sb2dvU2VjdGlvbiB7XG4gICAgQGluY2x1ZGUgZ3JpZC1jb2x1bW4oMiBvZiA1KTtcbn1cblxuLmxvZ2luU2VjdGlvbiB7XG4gICAgQGluY2x1ZGUgZ3JpZC1jb2x1bW4oMyBvZiA1KTtcbn1cblxuLnNlYXJjaEJhclNlY3Rpb24ge1xuICAgIEBpbmNsdWRlIGdyaWQtY29sdW1uKDMgb2YgMyk7XG4gICAgbWFyZ2luLXRvcDogcmVtLWNhbGMoMjBweCk7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuXG4gICAgJi50ZW1wRml4IHtcbiAgICAgICAgei1pbmRleDogYXV0byAhaW1wb3J0YW50O1xuICAgIH1cbn1cblxuXG5cbkBtZWRpYSBzY3JlZW4gYW5kICN7YnJlYWtwb2ludChsYXJnZSl9XG57XG5cbiAgICAubWFpbkhlYWRlckNvbnRlbnQge1xuICAgICAgICBwYWRkaW5nLWJvdHRvbTogcmVtLWNhbGMoMThweCk7XG4gICAgfVxuXG4gICAgLnRvcEhlYWRlckNvbnRlbnQgLmNoYW5nZVNpdGUge1xuICAgICAgICBAaW5jbHVkZSBncmlkLWNvbHVtbigxIG9mIDQpO1xuICAgIH1cblxuICAgIC50b3BIZWFkZXJDb250ZW50IC5jb250YWN0VG9wIHtcbiAgICAgICAgQGluY2x1ZGUgZ3JpZC1jb2x1bW4oMiBvZiA0KTtcbiAgICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgIH1cblxuICAgIC50b3BIZWFkZXJDb250ZW50IC50b3BCYXNrZXRPcHRpb25zIHtcbiAgICAgICAgQGluY2x1ZGUgZ3JpZC1jb2x1bW4oMSBvZiA0KTtcbiAgICB9XG5cblxuICAgIC5sb2dvU2VjdGlvbiB7XG4gICAgICAgIEBpbmNsdWRlIGdyaWQtY29sdW1uKDIgb2YgMTIpO1xuICAgIH1cblxuICAgIC5zZWFyY2hCYXJTZWN0aW9uIHtcbiAgICAgICAgQGluY2x1ZGUgZ3JpZC1jb2x1bW4oNiBvZiAxMik7XG4gICAgICAgIEBpbmNsdWRlIGdyaWQtY29sLXBvcygtNCk7XG4gICAgICAgIG1hcmdpbi10b3A6IDBweDtcblxuICAgICAgICAmLnRlbXBGaXgge1xuICAgICAgICAgICAgei1pbmRleDogYXV0byAhaW1wb3J0YW50O1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgLmxvZ2luU2VjdGlvbiB7XG4gICAgICAgIEBpbmNsdWRlIGdyaWQtY29sdW1uKDQgb2YgMTIpO1xuICAgICAgICBAaW5jbHVkZSBncmlkLWNvbC1wb3MoNik7XG4gICAgfVxufVxuXG5cblxuQG1lZGlhIHNjcmVlbiBhbmQgI3ticmVha3BvaW50KHhsYXJnZSl9IHtcblxuICAgIC5sb2dvU2VjdGlvbiB7XG4gICAgICAgIEBpbmNsdWRlIGdyaWQtY29sdW1uKDEgb2YgOCk7XG4gICAgfVxuXG4gICAgLnNlYXJjaEJhclNlY3Rpb24ge1xuICAgICAgICBAaW5jbHVkZSBncmlkLWNvbHVtbig0Ljcgb2YgOCk7XG4gICAgICAgIEBpbmNsdWRlIGdyaWQtY29sLXBvcygtMy40NSk7XG4gICAgfVxuXG4gICAgLmxvZ2luU2VjdGlvbiB7XG4gICAgICAgIEBpbmNsdWRlIGdyaWQtY29sdW1uKDIuMjggb2YgOCk7XG4gICAgICAgIEBpbmNsdWRlIGdyaWQtY29sLXBvcyg3LjA1KTtcbiAgICB9XG59XG5cbkBtZWRpYSBzY3JlZW4gYW5kICN7YnJlYWtwb2ludCh4eGxhcmdlKX0ge1xuXG4gICAgLmxvZ29TZWN0aW9uIHtcbiAgICAgICAgQGluY2x1ZGUgZ3JpZC1jb2x1bW4oMS40IG9mIDkpO1xuICAgIH1cblxuICAgIC5zZWFyY2hCYXJTZWN0aW9uIHtcbiAgICAgICAgQGluY2x1ZGUgZ3JpZC1jb2x1bW4oNS40IG9mIDkpO1xuICAgICAgICBAaW5jbHVkZSBncmlkLWNvbC1wb3MoLTMuNCk7XG4gICAgfVxuXG4gICAgLmxvZ2luU2VjdGlvbiB7XG4gICAgICAgIEBpbmNsdWRlIGdyaWQtY29sdW1uKDIuMiBvZiA5KTtcbiAgICAgICAgQGluY2x1ZGUgZ3JpZC1jb2wtcG9zKDcpO1xuICAgIH1cbn1cblxuLmhlYWRlcldyYXBwZXIge1xuICAgIHBvc2l0aW9uOnJlbGF0aXZlO1xufVxuXG4uaGVhZGVyV3JhcHBlciwgLmhlYWRlcldyYXBwZXIgYSwgLmhlYWRlcldyYXBwZXIgbGFiZWwge1xuICAgIGNvbG9yOiAkd2hpdGU7XG59XG5cbi50b3BIZWFkZXJDb250ZW50IHtcbiAgICBib3JkZXItYm90dG9tOiAxcHggc29saWQgJG9mZi1ibGFjaztcbn1cblxuXG4vKkVORCBIZWFkZXIgTGF5b3V0Ki9cblxuXG4vKlNpdGVUeXBlIFRhYnMqL1xuXG4uc2l0ZVNlbGVjdFRhYnMge1xuICAgIGN1cnNvcjogcG9pbnRlcjtcbiAgICAtbW96LWJveC1zaGFkb3c6IGluc2V0IDAgMCAxMHB4ICMwMDA7XG4gICAgLXdlYmtpdC1ib3gtc2hhZG93OiBpbnNldCAwIDAgMTBweCAjMDAwO1xuICAgIGJveC1zaGFkb3c6IGluc2V0IDAgMCAxMHB4ICMwMDA7XG59XG5cbi5zaXRlU2VsZWN0VGFicyBzcGFuLmFjdGl2ZVNUIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkYWNjZW50O1xufVxuXG4uc2l0ZVNlbGVjdFRhYnMgc3Bhbi5hY3RpdmVTVCBhIHtcbiAgICBjb2xvcjogJGJsYWNrO1xuICAgIGZvbnQtd2VpZ2h0OiBib2xkO1xufVxuXG4uc2l0ZVNlbGVjdFRhYnMgc3BhbiB7XG4gICAgcGFkZGluZzogMCA1cHg7XG4gICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgIGJveC1zaXppbmc6IGJvcmRlci1ib3g7XG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludChtZWRpdW0gZG93bikge1xuICAgICAgICAmOmxhc3QtY2hpbGQgeyBcbiAgICAgICAgICAgIHBhZGRpbmctbGVmdDowcHg7XG4gICAgICAgICAgICBzcGFuIHtcbiAgICAgICAgICAgICAgICBwYWRkaW5nOjBweDtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cbn1cblxuLypFTkQgU2l0ZVR5cGUgVGFicyovXG5cblxuXG4uYmFza2V0SGVhZGVyVG90YWwge1xuICAgIGxpbmUtaGVpZ2h0OiByZW0tY2FsYyg0MHB4KTtcbiAgICBmbG9hdDogbGVmdDtcbn1cblxuXG5cblxuLypNeSBBY2NvdW50L0xvZ2luIE1lbnUqL1xuXG5hLm15QWNjb3VudExpbmsge1xuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobWVkaXVtIGRvd24pIHsgXG4gICAgICAgIHBhZGRpbmctbGVmdDpyZW0tY2FsYyg0cHgpICFpbXBvcnRhbnQ7XG4gICAgfVxufVxuXG5hLm15QWNjb3VudExpbms6aG92ZXIsIC5teUFjY291bnRMaW5rIGE6aG92ZXIge1xuICAgIHRleHQtZGVjb3JhdGlvbjp1bmRlcmxpbmU7XG4gICAgdGV4dC1kZWNvcmF0aW9uLWNvbG9yOndoaXRlOyBcbn1cblxuYS5teUFjY291bnRMaW5rLCAubXlBY2NvdW50TGluayBhLCAuZHJvcGRvd24ubWVudSBhLm15QWNjb3VudExpbmsge1xuICAgIGZvbnQtd2VpZ2h0OiBib2xkO1xuICAgIGxpbmUtaGVpZ2h0OiByZW0tY2FsYyg0MHB4KTtcbiAgICBmb250LXNpemU6IHJlbS1jYWxjKDE2cHgpO1xuICAgIHBhZGRpbmc6IDAgMC40NXJlbTsgIFxufVxuXG4uZHJvcGRvd24ubWVudS5teUFjY291bnRNZW51ID4gbGkuaXMtZHJvcGRvd24tc3VibWVudS1wYXJlbnQgPiBhOjphZnRlciB7XG4gICAgYm9yZGVyLWNvbG9yOiAkd2hpdGUgdHJhbnNwYXJlbnQgdHJhbnNwYXJlbnQ7XG59XG5cbi5tZW51Lm15QWNjb3VudE1lbnUgLmlzLWFjdGl2ZSA+IGEge1xuICAgIGNvbG9yOiAkd2hpdGU7XG59XG5cbi5kcm9wZG93bi5tZW51Lm15QWNjb3VudE1lbnUgPiBsaSAubWVudSB7XG4gICAgYm9yZGVyOiAxcHggc29saWQgJG1lZGl1bS1ncmF5O1xuICAgIHotaW5kZXg6IDk5OTk5O1xufVxuXG4uZHJvcGRvd24ubWVudS5teUFjY291bnRNZW51ID4gbGkgLm1lbnUgYSB7XG4gICAgY29sb3I6ICRibGFjaztcbn1cblxuLmRyb3Bkb3duLm1lbnUubXlBY2NvdW50TWVudSA+IGxpIC5tZW51IGE6aG92ZXIge1xuICAgIGJhY2tncm91bmQtY29sb3I6ICRhY2NlbnQ7XG59XG5cbi8qRU5EIE15IEFjY291bnQvTG9naW4gTWVudSovXG5cblxuLm1haW5OYXYge1xuICAgIGJhY2tncm91bmQ6ICRvZmYtYmxhY2s7XG4gICAgei1pbmRleDogMTAwMDg7XG4gICAgcG9zaXRpb246cmVsYXRpdmU7XG59XG5cblxuXG4vKkNoYXQgTGluayovXG5cbnNwYW4uY2hhdExpbmssIHNwYW4uY2hhdExpbmsgc3BhbiB7XG4gICAgY3Vyc29yOnBvaW50ZXI7XG59XG5cbiNzaXRlLWRvbWFpbi1oZWFkZXIge1xuICAgIGJhY2tncm91bmQtY29sb3I6ICRncmVlbjtcblxuXG4gICAgLnN0aWNreSB7XG4gICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICB6LWluZGV4OiA5OTk5OTk5OTtcblxuICAgICAgICAuc2l0ZS1kb21haW4ge1xuICAgICAgICAgICAgd2lkdGg6IDkwJTtcbiAgICAgICAgICAgIG1hcmdpbjogMCBhdXRvO1xuICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJGdyZWVuO1xuICAgICAgICAgICAgcGFkZGluZzogNXB4O1xuICAgICAgICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgICAgICAgICAgYm9yZGVyLXJhZGl1czogMCAwIDVweCA1cHg7XG4gICAgICAgICAgICB0cmFuc2l0aW9uOiBib3gtc2hhZG93IC4xcyBlYXNlLWluLW91dDtcblxuICAgICAgICAgICAgJi5zdGljayB7XG4gICAgICAgICAgICAgICAgYm94LXNoYWRvdzogMHB4IDFweCA1cHggMHB4IHJnYmEoMCwwLDAsMC40KTtcbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludChsYXJnZSkge1xuICAgICAgICAgICAgICAgIHdpZHRoOiAzMy4zMyU7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cblxuXG4gICAgICAgIGgyIHtcbiAgICAgICAgICAgIGNvbG9yOiB3aGl0ZTtcbiAgICAgICAgICAgIGZvbnQtd2VpZ2h0OiBub3JtYWw7XG4gICAgICAgICAgICBtYXJnaW46IDA7XG5cbiAgICAgICAgICAgIGEge1xuICAgICAgICAgICAgICAgIHRleHQtZGVjb3JhdGlvbjogdW5kZXJsaW5lO1xuICAgICAgICAgICAgICAgIGNvbG9yOiB3aGl0ZTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cbn0iLCLvu78ubGl2ZS1jaGF0LXdyYXAge1xuICAgIHBvc2l0aW9uOiBmaXhlZDtcbiAgICBib3R0b206IDEuNWVtO1xuICAgIHJpZ2h0OiAxLjVlbTtcbiAgICB6LWluZGV4OiAxO1xuICAgIHRyYW5zaXRpb246IGFsbCBlYXNlLWluLW91dCAuMnM7XG5cbiAgICAmOmhvdmVyIHtcbiAgICAgICAgdHJhbnNmb3JtOiBzY2FsZSgxLjEpO1xuICAgIH1cblxuICAgIC5saXZlLWNoYXQge1xuICAgICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgICBjdXJzb3I6IHBvaW50ZXI7XG4gICAgICAgIGJvcmRlci1yYWRpdXM6IDIuNWVtO1xuXG4gICAgICAgIC5idWJibGUtdGV4dCB7XG4gICAgICAgICAgICBkaXNwbGF5OiBub25lO1xuICAgICAgICB9XG5cbiAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludChtZWRpdW0pIHtcbiAgICAgICAgICAgIGFuaW1hdGlvbjogd29iYmxlLWhvci1ib3R0b20gOHMgYm90aCAyO1xuICAgICAgICAgICAgYW5pbWF0aW9uLWRlbGF5OiA4cztcblxuICAgICAgICAgICAgLmJ1YmJsZS10ZXh0IHtcbiAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjZDY4ODA2O1xuICAgICAgICAgICAgICAgIGJvcmRlci1yYWRpdXM6IDJlbTtcbiAgICAgICAgICAgICAgICBkaXNwbGF5OiBpbmxpbmUtZmxleDtcbiAgICAgICAgICAgICAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbiAgICAgICAgICAgICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgICAgICAgICAgICAgIHdpZHRoOiAxMGVtO1xuICAgICAgICAgICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgICAgICAgICAgICBjb2xvcjogd2hpdGU7XG4gICAgICAgICAgICAgICAgYW5pbWF0aW9uOiBmbGlwLWluLXZlci1yaWdodCAwLjVzIGN1YmljLWJlemllcigwLjI1MCwgMC40NjAsIDAuNDUwLCAwLjk0MCkgYm90aDtcbiAgICAgICAgICAgICAgICBhbmltYXRpb24tZGVsYXk6IDJzO1xuICAgICAgICAgICAgICAgIHRyYW5zZm9ybS1vcmlnaW46IHJpZ2h0O1xuXG4gICAgICAgICAgICAgICAgJjphZnRlciB7XG4gICAgICAgICAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6ICNkNjg4MDY7XG4gICAgICAgICAgICAgICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgICAgICAgICAgICAgdG9wOiAwO1xuICAgICAgICAgICAgICAgICAgICBib3R0b206IDA7XG4gICAgICAgICAgICAgICAgICAgIHJpZ2h0OiAtMnJlbTtcbiAgICAgICAgICAgICAgICAgICAgd2lkdGg6IDRyZW07XG4gICAgICAgICAgICAgICAgICAgIGNvbnRlbnQ6ICcnO1xuICAgICAgICAgICAgICAgICAgICB6LWluZGV4OiAtMTtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cblxuICAgICAgICAuYnViYmxlIHtcbiAgICAgICAgICAgIGJhY2tncm91bmQ6ICNGOUE1MTk7XG4gICAgICAgICAgICBib3JkZXItcmFkaXVzOiAyZW07XG4gICAgICAgICAgICBoZWlnaHQ6IDRlbTtcbiAgICAgICAgICAgIHdpZHRoOiA0ZW07XG4gICAgICAgICAgICBkaXNwbGF5OiBpbmxpbmUtZmxleDtcbiAgICAgICAgICAgIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICAgICAgICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICAgICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgICAgICAgIHBhZGRpbmc6IDFlbTtcbiAgICAgICAgICAgIGJveC1zaGFkb3c6IDAgMXB4IDRweCAwIHJnYmEoMCwwLDAsLjQpO1xuICAgICAgICAgICAgYW5pbWF0aW9uOiBoZWFydGJlYXQgNHMgZWFzZS1pbi1vdXQgaW5maW5pdGUgYm90aDtcbiAgICAgICAgICAgIGFuaW1hdGlvbi1kZWxheTogMnM7XG5cbiAgICAgICAgICAgIGkge1xuICAgICAgICAgICAgICAgIGZvbnQtc2l6ZTogMmVtO1xuICAgICAgICAgICAgICAgIGNvbG9yOiB3aGl0ZTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cbn1cblxuQGtleWZyYW1lcyB3b2JibGUtaG9yLWJvdHRvbSB7XG4gICAgMCUsIDIwJSB7XG4gICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWCgwJSk7XG4gICAgICAgIHRyYW5zZm9ybS1vcmlnaW46IDUwJSA1MCU7XG4gICAgfVxuXG4gICAgMyUge1xuICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoLTE1cHgpIHJvdGF0ZSgtM2RlZyk7XG4gICAgfVxuXG4gICAgNiUge1xuICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoN3B4KSByb3RhdGUoM2RlZyk7XG4gICAgfVxuXG4gICAgOSUge1xuICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoLTdweCkgcm90YXRlKC0xLjhkZWcpO1xuICAgIH1cblxuICAgIDEyJSB7XG4gICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWCg0cHgpIHJvdGF0ZSgxLjJkZWcpO1xuICAgIH1cblxuICAgIDE1JSB7XG4gICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWCgtM3B4KSByb3RhdGUoLTAuNmRlZyk7XG4gICAgfVxuXG4gICAgMjAlIHtcbiAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKDApIHJvdGF0ZSgwKTtcbiAgICB9XG5cbiAgICAxMDAlIHtcbiAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKDApIHJvdGF0ZSgwKTtcbiAgICB9XG59XG5cbkBrZXlmcmFtZXMgZmxpcC1pbi12ZXItcmlnaHQge1xuICAgIDAlIHtcbiAgICAgICAgdHJhbnNmb3JtOiByb3RhdGVZKC04MGRlZyk7XG4gICAgICAgIG9wYWNpdHk6IDA7XG4gICAgfVxuXG4gICAgMTAwJSB7XG4gICAgICAgIHRyYW5zZm9ybTogcm90YXRlWSgwKTtcbiAgICAgICAgb3BhY2l0eTogMTtcbiAgICB9XG59XG5cbkBrZXlmcmFtZXMgaGVhcnRiZWF0IHtcbiAgICBmcm9tIHtcbiAgICAgICAgdHJhbnNmb3JtOiBzY2FsZSgxKTtcbiAgICAgICAgdHJhbnNmb3JtLW9yaWdpbjogY2VudGVyIGNlbnRlcjtcbiAgICAgICAgYW5pbWF0aW9uLXRpbWluZy1mdW5jdGlvbjogZWFzZS1vdXQ7XG4gICAgfVxuXG4gICAgNiUge1xuICAgICAgICB0cmFuc2Zvcm06IHNjYWxlKDEuMDkpO1xuICAgICAgICBhbmltYXRpb24tdGltaW5nLWZ1bmN0aW9uOiBlYXNlLWluO1xuICAgIH1cblxuICAgIDEyJSB7XG4gICAgICAgIHRyYW5zZm9ybTogc2NhbGUoMS4wMik7XG4gICAgICAgIGFuaW1hdGlvbi10aW1pbmctZnVuY3Rpb246IGVhc2Utb3V0O1xuICAgIH1cblxuICAgIDE4JSB7XG4gICAgICAgIHRyYW5zZm9ybTogc2NhbGUoMS4xMyk7XG4gICAgICAgIGFuaW1hdGlvbi10aW1pbmctZnVuY3Rpb246IGVhc2UtaW47XG4gICAgfVxuXG4gICAgMjQlIHtcbiAgICAgICAgdHJhbnNmb3JtOiBzY2FsZSgxKTtcbiAgICAgICAgYW5pbWF0aW9uLXRpbWluZy1mdW5jdGlvbjogZWFzZS1vdXQ7XG4gICAgfVxuXG4gICAgMTAwJSB7XG4gICAgICAgIHRyYW5zZm9ybTogc2NhbGUoMSk7XG4gICAgfVxufVxuIiwi77u/I3N1Z2dlc3RMYXllciB7XG5cdGhlaWdodDogMXB4O1xuXHR6LWluZGV4OiA5OTk5OTtcblx0YmFja2dyb3VuZDogdHJhbnNwYXJlbnQ7XG4gICAgcG9zaXRpb246YWJzb2x1dGU7XG4gICAgbWFyZ2luLXRvcDotMTBweDtcbiAgICBsZWZ0OjA7XG4gICAgcmlnaHQ6MDtcbiAgICBAaW5jbHVkZSBncmlkLWNvbHVtbigzIG9mIDMpO1xufVxuXG51bC5zdWdnZXN0TGF5ZXJCbG9ja1RleHQge1xuICAgIG1hcmdpbjpyZW0tY2FsYygxMHB4KTtcbn1cblxudWwuc3VnZ2VzdExheWVyQmxvY2ssIGRpdi5zdWdnZXN0TGF5ZXJCbG9jayB7XG5cdGxpc3Qtc3R5bGU6IG5vbmU7XG5cdGNvbG9yOiAkYmxhY2s7XG5cdGJhY2tncm91bmQtY29sb3I6ICR3aGl0ZTtcblx0Y3Vyc29yOiBwb2ludGVyO1xuXHRib3JkZXItYm90dG9tOiAxcHggc29saWQgcmdiYSgwLCAwLCAwLCAwLjIpO1xuXHRib3gtc2hhZG93OiAwIDFweCA1cHggcmdiYSgwLCAwLCAwLCAwLjE1KTtcbiAgICBib3gtc2l6aW5nOmJvcmRlci1ib3g7XG59XG5cbnVsLnN1Z2dlc3RMYXllckJsb2NrIGxpLCB1bC5zdWdnZXN0TGF5ZXJCbG9ja1RleHQgbGkge1xuXHRsaXN0LXN0eWxlOiBub25lO1xuXHRkaXNwbGF5OiBibG9jaztcbn1cblxuXG5cbmxpLnN1Z2dlc3RIZWFkZXIge1xuXG5cdGZvbnQtd2VpZ2h0OiBib2xkO1xuXHRib3JkZXItYm90dG9tOiAxcHggc29saWQgJG1lZGl1bS1ncmF5O1xuXHRwYWRkaW5nOiAzcHggMTBweCAzcHggNXB4O1xufVxuXG5cbnNwYW4uc3VnZ2VzdFRleHRRdWVyeSB7XG5cdGRpc3BsYXk6YmxvY2s7XG4gICAgcGFkZGluZzpyZW0tY2FsYyg1cHgpO1xuICAgIG1hcmdpbjpyZW0tY2FsYygzcHgpO1xufVxuXG5saS5zdWdnZXN0Um93IDpob3ZlciB7XG5cdGJhY2tncm91bmQtY29sb3I6JG1lZGl1bS1ncmF5O1xufVxuXG4uaGlnaGxpZ2h0IHtcbiAgICBiYWNrZ3JvdW5kOiAjRThFNUU1O1xufVxuIiwi77u/XG4ucl9NeUFjY291bnRfTXlBY2NvdW50X1NlY3Rpb24ge1xuICAgIGhlaWdodDogMTUwcHg7XG4gICAgYSB7XG4gICAgZGlzcGxheTpibG9jaztcbiAgICB9XG59XG5cbi5hY2NvdW50LWluZm8tYm94IHtcbiAgICBib3JkZXI6IGRvdHRlZCAycHggI2QwY2RjZDtcbiAgICBwYWRkaW5nOiA1cHggMTVweCA1cHggMTVweDtcbiAgICBib3JkZXItcmFkaXVzOiA3cHg7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogSW5mb0JhY2tncm91bmQ7XG4gICAgbWFyZ2luLXRvcDogNXB4O1xufVxuXG4uZmxleC1hY2NvdW50LWJveCB7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBib3JkZXI6IHNvbGlkIDFweCAjZDBjZGNkO1xuICAgIHBhZGRpbmc6IDVweDtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjZjJmMGYwO1xuICAgIGNvbG9yOiAjNDk0ODQ4ICFpbXBvcnRhbnQ7XG4gICAgbWluLWhlaWdodDogOTBweDtcbiAgICBwYWRkaW5nLXRvcDogMTBweDtcbn1cblxuLmZsZXgtYWNjb3VudC1ib3g6aG92ZXIge1xuICAgIGJhY2tncm91bmQtY29sb3I6ICMzMTMxMzE7XG4gICAgY29sb3I6ICNmZmYgIWltcG9ydGFudDtcbiAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG4gICAgYm9yZGVyOiBzb2xpZCAxcHggI2QwY2RjZDtcbiAgICBjdXJzb3I6IHBvaW50ZXI7XG59XG5cbi5mbGV4LWFjY291bnQtYm94LWNoaWxkIHtcbiAgICBmbGV4OiA2O1xuICAgIG1hcmdpbi1yaWdodDogMjBweDtcbn1cblxuLmZsZXgtYWNjb3VudC1ib3gtZGVzY3JpcHRpb24ge1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIGZvbnQtc2l6ZTogOTAlO1xufVxuXG5AbWVkaWEgb25seSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDYwMHB4KSB7XG4gICAgLmZsZXgtYWNjb3VudC1ib3gtZGVzY3JpcHRpb24ge1xuICAgICAgICBkaXNwbGF5OiBub25lO1xuICAgIH1cbn1cblxuLmZsZXgtYWNjb3VudC1ib3gtaW5mbGlnaHQge1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgYm9yZGVyOiBzb2xpZCAxcHggI2QwY2RjZDtcbiAgICBwYWRkaW5nOiA1cHg7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogI2JhZWZkODtcbiAgICBjb2xvcjogIzQ5NDg0OCAhaW1wb3J0YW50O1xufVxuXG4uZmxleC1hY2NvdW50LWJveC1pbmZsaWdodDpob3ZlciB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogIzMxMzEzMTtcbiAgICBjb2xvcjogI2ZmZiAhaW1wb3J0YW50O1xuICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgICBib3JkZXI6IHNvbGlkIDFweCAjZDBjZGNkO1xuICAgIGN1cnNvcjogcG9pbnRlcjtcbn1cblxuLmdyaWQtY29udGFpbmVyIHtcbiAgICBkaXNwbGF5OiBncmlkO1xuICAgIGdyaWQtdGVtcGxhdGUtY29sdW1uczogMWZyIDFmcjtcbiAgICBncmlkLWdhcDogMTBweDtcbn1cblxuLmZhLXN0YWNrW2RhdGEtY291bnRdOmFmdGVyIHtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgcmlnaHQ6IDI1JTtcbiAgICB0b3A6IDUlO1xuICAgIGNvbnRlbnQ6IGF0dHIoZGF0YS1jb3VudCk7XG4gICAgZm9udC1zaXplOiAzNSU7XG4gICAgcGFkZGluZzogLjk5ZW07XG4gICAgYm9yZGVyLXJhZGl1czogOTk5cHg7XG4gICAgbGluZS1oZWlnaHQ6IC45OWVtO1xuICAgIGNvbG9yOiB3aGl0ZTtcbiAgICBiYWNrZ3JvdW5kOiByZ2JhKDI1NSwwLDAsMTAwKTtcbiAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgbWluLXdpZHRoOiAzZW07XG4gICAgZm9udC13ZWlnaHQ6IGJvbGQ7XG59Iiwi77u/aDEubWFpbkhlYWRpbmcge1xuICAgIGJvcmRlci1ib3R0b206MXB4IHNvbGlkICRtZWRpdW0tZ3JheTtcbiAgICBtYXJnaW4tYm90dG9tOnJlbS1jYWxjKDEwKTtcbn1cblxudGFibGUuZXhwYW5kVGFibGUgdGJvZHkgdHIuZGV0YWlsUm93Om50aC1jaGlsZCg0bi0xKSB7XG4gICAgYm9yZGVyLWJvdHRvbTogMDtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkbGlnaHQtZ3JheTtcbn1cblxuLmFkbWluVGFibGVMaW5rIHtcbiAgICBjb2xvcjogIzExNTNBRDtcbiAgICB0ZXh0LWRlY29yYXRpb246IHVuZGVybGluZTtcbiAgICB0ZXh0LWRlY29yYXRpb24tY29sb3I6ICMxMTUzQUQ7XG4gICAgY3Vyc29yOiBwb2ludGVyO1xufVxuXG4uZXhwYW5kZWRSb3cge1xuICAgIGJvcmRlci1ib3R0b206IDA7XG4gICAgLypiYWNrZ3JvdW5kLWNvbG9yOiAkbGlnaHQtZ3JheTsqL1xufVxuXG4uaGlkZGVuVGFibGVDb250ZW50IHtcbiAgICBwYWRkaW5nOiByZW0tY2FsYyg1KTtcbiAgICBwYWRkaW5nLXRvcDpyZW0tY2FsYygxMCk7XG4gICAgYm9yZGVyOiAxcHggc29saWQgI2UzZTNlMztcbiAgICBiYWNrZ3JvdW5kOiAkd2hpdGU7XG4gICAgLXdlYmtpdC1ib3gtc2hhZG93OiBpbnNldCAwIDFweCAxcHggcmdiYSgwLDAsMCwuMDUpO1xuICAgIGJveC1zaGFkb3c6IGluc2V0IDAgMXB4IDFweCByZ2JhKDAsMCwwLC4wNSk7XG59XG5cbi5ncmFwaC13cmFwIHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgcGFkZGluZy1ib3R0b206IGNhbGMoMTAgLyAxNiAqIDEwMCUpO1xuXG4gICAgLmdyYXBoIHtcbiAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgaGVpZ2h0OiAxMDAlO1xuICAgICAgICBsZWZ0OiAwO1xuICAgICAgICByaWdodDogMDtcbiAgICAgICAgdG9wOiAwO1xuICAgICAgICBib3R0b206IDA7XG4gICAgfVxufVxuXG4vLyBDaGFydCBKUyBDU1NcbkBrZXlmcmFtZXMgY2hhcnRqcy1yZW5kZXItYW5pbWF0aW9ue2Zyb217b3BhY2l0eTouOTl9dG97b3BhY2l0eToxfX0uY2hhcnRqcy1yZW5kZXItbW9uaXRvcnthbmltYXRpb246Y2hhcnRqcy1yZW5kZXItYW5pbWF0aW9uIDFtc30uY2hhcnRqcy1zaXplLW1vbml0b3IsLmNoYXJ0anMtc2l6ZS1tb25pdG9yLWV4cGFuZCwuY2hhcnRqcy1zaXplLW1vbml0b3Itc2hyaW5re3Bvc2l0aW9uOmFic29sdXRlO2RpcmVjdGlvbjpsdHI7bGVmdDowO3RvcDowO3JpZ2h0OjA7Ym90dG9tOjA7b3ZlcmZsb3c6aGlkZGVuO3BvaW50ZXItZXZlbnRzOm5vbmU7dmlzaWJpbGl0eTpoaWRkZW47ei1pbmRleDotMX0uY2hhcnRqcy1zaXplLW1vbml0b3ItZXhwYW5kPmRpdntwb3NpdGlvbjphYnNvbHV0ZTt3aWR0aDoxMDAwMDAwcHg7aGVpZ2h0OjEwMDAwMDBweDtsZWZ0OjA7dG9wOjB9LmNoYXJ0anMtc2l6ZS1tb25pdG9yLXNocmluaz5kaXZ7cG9zaXRpb246YWJzb2x1dGU7d2lkdGg6MjAwJTtoZWlnaHQ6MjAwJTtsZWZ0OjA7dG9wOjB9Iiwi77u/XG4ub3JkZXJTdW1tYXJ5VGFibGUge1xuICAgIGRpc3BsYXk6dGFibGU7XG59XG5cbi5vcmRlclN1bW1hcnlUYWJsZSB0ciB7XG4gICAgZGlzcGxheTp0YWJsZS1yb3cgIWltcG9ydGFudDtcbn1cblxuLm9yZGVyU3VtbWFyeVRhYmxlIHRkIHtcbiAgICBkaXNwbGF5OnRhYmxlLWNlbGwgIWltcG9ydGFudDtcbn1cblxuLm9yZGVyU3VtbWFyeVRhYmxlIHRyID4gdGQ6bnRoLW9mLXR5cGUoMikge1xuXHRiYWNrZ3JvdW5kLWNvbG9yOiAkbGlnaHQtZ3JheTtcblx0d2lkdGg6IHJlbS1jYWxjKDEyNXB4KTtcblx0dGV4dC1hbGlnbjogY2VudGVyO1xufVxuXG4ub3JkZXJTdW1tYXJ5VGFibGUgdHIgPiB0ZDpudGgtb2YtdHlwZSgxKSB7XG5cdGZvbnQtd2VpZ2h0OiBib2xkO1xuXHRwYWRkaW5nLXJpZ2h0OiByZW0tY2FsYyg1cHgpO1xuXHR0ZXh0LWFsaWduOiByaWdodDtcblx0d2lkdGg6IHJlbS1jYWxjKDExMHB4KTtcbn1cblxuLnRvdGFsUHJpY2VDb2wge1xuICAgIGJhY2tncm91bmQ6JGxpZ2h0LWdyYXk7XG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludChtZWRpdW0gZG93bikge1xuICAgICAgICBkaXNwbGF5Om5vbmUgIWltcG9ydGFudDtcbiAgICB9XG5cbn1cblxudGZvb3QgLnRvdGFsUHJpY2VDb2wge1xuICAgIGZvbnQtc2l6ZTpyZW0tY2FsYygxOHB4KTtcbn0iLCLvu78ucHJvbW8tYWNjb3JkaW9uLXdyYXAge1xuICAgIGJvcmRlci1yYWRpdXM6IDVweDtcbiAgICBvdmVyZmxvdzogaGlkZGVuO1xuICAgIGJveC1zaGFkb3c6IDBweCAxcHggNXB4IDBweCByZ2JhKDAsMCwwLDAuNCk7XG59XG5cbltjbGFzc3w9XCJwcm9tby1hY2NvcmRpb24taXRlbVwiXSB7XG4gICAgcGFkZGluZzogMXJlbTtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkbGlnaHQtZ3JheTtcbiAgICAvL2JvcmRlcjogMXB4IHNvbGlkICRsaWdodC1ncmF5O1xuICAgIGNvbG9yOiAkb2ZmLWJsYWNrO1xuICAgIGZvbnQtc2l6ZTogMS4zZW07XG4gICAgY3Vyc29yOiBwb2ludGVyO1xuICAgIHRyYW5zaXRpb246IGJhY2tncm91bmQtY29sb3IgLjFzIGVhc2UtaW4tb3V0O1xuXG4gICAgJi5vcGVuLFxuICAgICY6aG92ZXIge1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiBkYXJrZW4oJGxpZ2h0LWdyYXksIDMlKTtcbiAgICB9XG5cbiAgICAmOmJlZm9yZSB7XG4gICAgICAgIGNvbnRlbnQ6IFwiXFxmMDU0XCI7XG4gICAgICAgIGZvbnQtZmFtaWx5OiBGb250QXdlc29tZTtcbiAgICAgICAgbWFyZ2luLXJpZ2h0OiAxZW07XG4gICAgfVxuXG4gICAgJi5vcGVuIHtcbiAgICAgICAgJjpiZWZvcmUge1xuICAgICAgICAgICAgY29udGVudDogXCJcXGYwNzhcIjtcbiAgICAgICAgfVxuICAgIH1cblxuICAgICYuZGlzYWJsZWQge1xuICAgICAgICBjb2xvcjogcmdiYSgkb2ZmLWJsYWNrLCAwLjQpO1xuICAgICAgICBjdXJzb3I6IG5vdC1hbGxvd2VkO1xuXG4gICAgICAgICY6aG92ZXIge1xuICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJGxpZ2h0LWdyYXkgIWltcG9ydGFudDtcbiAgICAgICAgfVxuICAgIH1cbn1cblxuW2NsYXNzfD1cInByb21vLWNvbnRlbnRcIl0ge1xuICAgIG1heC1oZWlnaHQ6IDEwMHZoO1xuICAgIHRyYW5zaXRpb246IG1heC1oZWlnaHQgLjVzIGVhc2UtaW4tb3V0O1xuXG4gICAgJi5jbG9zZWQge1xuICAgICAgICBtYXgtaGVpZ2h0OiAwO1xuICAgICAgICB0cmFuc2l0aW9uOiBub25lO1xuICAgICAgICBvdmVyZmxvdzogaGlkZGVuO1xuICAgIH1cblxuICAgIC5wcm9tby1vcHRpb25zIHtcbiAgICAgICAgcGFkZGluZzogMWVtO1xuICAgIH1cbn1cblxuLmJ1dHRvbi1ncm91cCB7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBtYXJnaW4tYm90dG9tOiAwO1xuICAgIG1hcmdpbi10b3A6IDFyZW07XG4gICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcblxuICAgICYuc2F2ZSB7XG4gICAgICAgIC5idXR0b24ge1xuICAgICAgICAgICAgbWFyZ2luLWxlZnQ6IGF1dG87XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAucHJvbW8taW5mb19wZXJzaXN0ZW50IHtcbiAgICAgICAgbWFyZ2luLWxlZnQ6IGF1dG87XG4gICAgICAgIG1hcmdpbi1yaWdodDogMTBweDtcbiAgICAgICAgcGFkZGluZzogNnB4IDEwcHg7XG4gICAgfVxuXG4gICAgLmJ1dHRvbiB7XG4gICAgICAgIG1hcmdpbi1yaWdodDogMTBweDtcblxuICAgICAgICAmOmxhc3QtY2hpbGQge1xuICAgICAgICAgICAgbWFyZ2luLXJpZ2h0OiAwO1xuICAgICAgICB9XG4gICAgfVxufVxuXG4uYnV0dG9uLWdyb3VwLWxlZnQge1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICBtYXJnaW4tYm90dG9tOiAxMHB4O1xuXG4gICAgLmJ1dHRvbiB7XG4gICAgICAgIG1hcmdpbjogMCAxMHB4IDAgMDtcbiAgICB9XG5cbiAgICAubmIge1xuICAgICAgICBtYXJnaW4tcmlnaHQ6IGF1dG87XG4gICAgICAgIFxuICAgICAgICAucHJvbW8taW5mb19wZXJzaXN0ZW50IHtcbiAgICAgICAgICAgIHBhZGRpbmc6IDVweCAxMHB4O1xuICAgICAgICB9XG4gICAgfVxufVxuXG4ucHJvbW8taW5mbyB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuXG4gICAgJi5ob3ZlcixcbiAgICAmLmZvY3VzIHtcbiAgICAgICAgLnByb21vLWluZm9fYm94IHtcbiAgICAgICAgICAgIG9wYWNpdHk6IDE7XG4gICAgICAgICAgICB2aXNpYmlsaXR5OiB2aXNpYmxlO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgLnByb21vLWluZm9fYm94IHtcbiAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgIGJvcmRlci1yYWRpdXM6IDNweDtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJGdyZWVuO1xuICAgICAgICBjb2xvcjogJHdoaXRlO1xuICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgIHJpZ2h0OiAwO1xuICAgICAgICBib3R0b206IDEwMCU7XG4gICAgICAgIGhlaWdodDogYXV0bztcbiAgICAgICAgcGFkZGluZzogMTBweDtcbiAgICAgICAgZm9udC1zaXplOiAuOXJlbTtcbiAgICAgICAgdGV4dC1hbGlnbjogbGVmdDtcbiAgICAgICAgdHJhbnNpdGlvbjogZWFzZS1pbi1vdXQgLjNzIGFsbDtcbiAgICAgICAgb3BhY2l0eTogMDtcbiAgICAgICAgdmlzaWJpbGl0eTogaGlkZGVuO1xuICAgICAgICBib3gtc2hhZG93OiAwcHggMXB4IDVweCAwcHggcmdiYSgwLDAsMCwwLjQpO1xuICAgICAgICB6LWluZGV4OiAxO1xuICAgICAgICBwb2ludGVyLWV2ZW50czogbm9uZTtcbiAgICAgICAgdXNlci1zZWxlY3Q6IG5vbmU7XG5cbiAgICAgICAgJjpob3ZlciB7XG4gICAgICAgICAgICBjdXJzb3I6IGRlZmF1bHQ7XG4gICAgICAgIH1cbiAgICB9XG59XG5cbi5wcm9tby1pbmZvX3BlcnNpc3RlbnQge1xuICAgIGZvbnQtc3R5bGU6IGl0YWxpYztcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICBib3JkZXItcmFkaXVzOiAzcHg7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogbGlnaHRlbigkb2ZmLWJsYWNrLCAxNSUpO1xuICAgIGNvbG9yOiAkd2hpdGU7XG4gICAgZm9udC1zaXplOiAuOXJlbTtcbiAgICBwYWRkaW5nOiAxMHB4O1xuICAgIGJveC1zaGFkb3c6IDBweCAxcHggNXB4IDBweCByZ2JhKDAsMCwwLDAuNCk7XG4gICAgcG9pbnRlci1ldmVudHM6IG5vbmU7XG4gICAgdXNlci1zZWxlY3Q6IG5vbmU7XG5cbiAgICAmLmRhcmsge1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkb2ZmLWJsYWNrO1xuICAgIH1cbn1cblxuXG5cblxuLnN3aXRjaC10b2dnbGUge1xuICAgIGRpc3BsYXk6IGZsZXg7XG5cbiAgICAuc3dpdGNoIHtcbiAgICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgICAgICBtYXJnaW4tbGVmdDogYXV0bztcbiAgICAgICAgaGVpZ2h0OiAzNHB4O1xuICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICAgIHdpZHRoOiA2MHB4O1xuICAgICAgICBjdXJzb3I6IHBvaW50ZXI7XG5cbiAgICAgICAgJi5kaXNhYmxlZCB7XG4gICAgICAgICAgICBjdXJzb3I6IG5vdC1hbGxvd2VkO1xuXG4gICAgICAgICAgICAuc2xpZGVyLXRvZ2dsZSB7XG4gICAgICAgICAgICAgICAgJjpiZWZvcmUge1xuICAgICAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiBkYXJrZW4oJGxpZ2h0LWdyYXksIDMlKTtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cblxuICAgICAgICBpbnB1dCB7XG4gICAgICAgICAgICBkaXNwbGF5OiBub25lO1xuXG4gICAgICAgICAgICAmOmNoZWNrZWQge1xuICAgICAgICAgICAgICAgICsgLnNsaWRlci10b2dnbGUge1xuICAgICAgICAgICAgICAgICAgICAvL2JhY2tncm91bmQtY29sb3I6ICM2NmJiNmE7XG4gICAgICAgICAgICAgICAgICAgICY6YmVmb3JlIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWCgyNnB4KTtcbiAgICAgICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgICAgICY6YWZ0ZXIge1xuICAgICAgICAgICAgICAgICAgICAgICAgY29udGVudDogXCIlXCI7XG4gICAgICAgICAgICAgICAgICAgICAgICBsZWZ0OiBjYWxjKDI2cHggLyAyKTtcbiAgICAgICAgICAgICAgICAgICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWCgyNnB4KTtcbiAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuXG4gICAgICAgIC5zbGlkZXItdG9nZ2xlIHtcbiAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6IGRhcmtlbigkbGlnaHQtZ3JheSwgMyUpO1xuICAgICAgICAgICAgYm90dG9tOiAwO1xuICAgICAgICAgICAgbGVmdDogMDtcbiAgICAgICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgICAgIHJpZ2h0OiAwO1xuICAgICAgICAgICAgdG9wOiAwO1xuICAgICAgICAgICAgdHJhbnNpdGlvbjogLjRzO1xuXG4gICAgICAgICAgICAmLnJvdW5kIHtcbiAgICAgICAgICAgICAgICBib3JkZXItcmFkaXVzOiAzNHB4O1xuXG4gICAgICAgICAgICAgICAgJjpiZWZvcmUge1xuICAgICAgICAgICAgICAgICAgICBib3JkZXItcmFkaXVzOiA1MCU7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAmOmJlZm9yZSB7XG4gICAgICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogI2ZmZjtcbiAgICAgICAgICAgICAgICBib3R0b206IDRweDtcbiAgICAgICAgICAgICAgICBjb250ZW50OiBcIlwiO1xuICAgICAgICAgICAgICAgIGhlaWdodDogMjZweDtcbiAgICAgICAgICAgICAgICBsZWZ0OiA0cHg7XG4gICAgICAgICAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICAgICAgICAgIHRyYW5zaXRpb246IC40cztcbiAgICAgICAgICAgICAgICB3aWR0aDogMjZweDtcbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgJjphZnRlciB7XG4gICAgICAgICAgICAgICAgY29udGVudDogXCLCo1wiO1xuICAgICAgICAgICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgICAgICAgICBsZWZ0OiBjYWxjKDIycHggLyAyKTtcbiAgICAgICAgICAgICAgICB0b3A6IDVweDtcbiAgICAgICAgICAgICAgICB0cmFuc2l0aW9uOiAuNHM7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG59IiwiLnNrdVRvcCB7XG4gICAgbWFyZ2luLXRvcDogMXJlbTtcbiAgICBtYXJnaW4tYm90dG9tOiAxcmVtO1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbn1cblxuLnByb2RLZXlEZXRhaWxzIHtcbiAgICBjb2xvcjogJGJsYWNrO1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIHBhZGRpbmc6IHJlbS1jYWxjKDVweCAwKTtcblxuICAgIGEge1xuICAgICAgICBjb2xvcjogJGJsYWNrO1xuICAgIH1cbn1cblxuLnByb2RCcmFuZExvZ28ge1xuICAgIGZsb2F0OiByaWdodDtcbiAgICBtYXJnaW4tcmlnaHQ6IDQwJTtcbn1cblxuLm9yZGVyQ29kZSB7XG4gICAgY29sb3I6ICRibGFjaztcblxuICAgIHNwYW4ge1xuICAgICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgfVxuXG4gICAgaDIge1xuICAgICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgICAgIGZvbnQtc2l6ZTogMXJlbTtcbiAgICB9XG5cbiAgICBhIHtcbiAgICAgICAgY29sb3I6ICRibGFjaztcblxuICAgICAgICAmOmhvdmVyIHtcbiAgICAgICAgICAgIHRleHQtZGVjb3JhdGlvbjogdW5kZXJsaW5lO1xuICAgICAgICAgICAgdGV4dC1kZWNvcmF0aW9uLWNvbG9yOiAkYmxhY2s7XG4gICAgICAgIH1cbiAgICB9XG59XG5cbi5jb21wbGlhbmNlTGlzdCB7XG4gICAgbGlzdC1zdHlsZTogbm9uZTtcbiAgICBtYXJnaW4tbGVmdDogMDtcbiAgICBtYXJnaW4tdG9wOiByZW0tY2FsYyg1cHgpO1xuICAgIGNvbG9yOiAkYmxhY2s7XG5cbiAgICBsaSB7XG4gICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICBwYWRkaW5nOiByZW0tY2FsYyg1cHggMCk7XG5cbiAgICAgICAgYSB7XG4gICAgICAgICAgICBjb2xvcjogJGJsYWNrO1xuICAgICAgICB9XG4gICAgfVxufVxuXG5oMS5wcm9kVGl0bGUge1xuICAgIG1hcmdpbi10b3A6IDAuNjVyZW07XG59XG5cbi5yZXBvcnRFcnJvckxpbmsge1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIHRleHQtYWxpZ246IHJpZ2h0O1xuICAgIGNvbG9yOiBibGFjaztcbiAgICBtYXJnaW4tdG9wOiAtMTJweDtcbiAgICBwYWRkaW5nLWJvdHRvbTogNHB4O1xuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobWVkaXVtIGRvd24pIHtcbiAgICAgICAgbWFyZ2luLWJvdHRvbTpyZW0tY2FsYygxMyk7XG4gICAgICAgIHRleHQtYWxpZ246IGxlZnQ7XG4gICAgICAgIGRpc3BsYXk6aW5saW5lLWJsb2NrO1xuICAgIH1cbiAgICAmOmhvdmVyIHtcbiAgICAgICAgdGV4dC1kZWNvcmF0aW9uOiB1bmRlcmxpbmU7XG4gICAgICAgIHRleHQtZGVjb3JhdGlvbi1jb2xvcjogYmxhY2s7XG4gICAgICAgIGNvbG9yOiAkYmxhY2s7XG4gICAgfVxufVxuXG4uc3RvY2tNZXNzYWdlIHtcbiAgICBmb250LXdlaWdodDogYm9sZDtcbiAgICB0ZXh0LWFsaWduOiBsZWZ0O1xuICAgIGZvbnQtc2l6ZTogcmVtLWNhbGMoMTRweCk7XG4gICAgbGluZS1oZWlnaHQ6IHJlbS1jYWxjKDIwcHgpO1xufVxuXG4ucHJvZHVjdC1tb3EtdGV4dCB7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgdGV4dC1hbGlnbjogcmlnaHQ7XG59XG5cbkBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwZW0pIHtcbiAgICAuc2t1U3RpY2tUb0JvdHRvbSB7XG4gICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgYm90dG9tOiA1cHg7XG4gICAgICAgIHdpZHRoOiA5NyU7XG4gICAgfVxufVxuXG4uc3RvY2tOb3RpZmljYXRpb24ge1xuICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbn1cblxuLmRhdGFTaGVldEl0ZW0ge1xuICAgIGZsb2F0OiBsZWZ0O1xuICAgIHBhZGRpbmc6IDVweDtcbiAgICBtYXJnaW46IDEwcHg7XG59XG5cbi50YWJzLXBhbmVsIHtcbiAgICBvdmVyZmxvdzogYXV0bztcbn1cblxuLnNrdVRhYnMge1xuICAgIGJhY2tncm91bmQ6I2Y3ZjZmNjtcbiAgICAudGFicy10aXRsZSB7XG4gICAgICAgIGJvcmRlci1yaWdodDoxcHggc29saWQgJGxpZ2h0LWdyYXk7XG4gICAgICAgICY6bGFzdC1jaGlsZCB7XG4gICAgICAgICAgICBib3JkZXItcmlnaHQ6bm9uZTtcbiAgICAgICAgfVxuICAgICAgICAmOmhvdmVyIHtcbiAgICAgICAgICAgIGJhY2tncm91bmQ6ICRsaWdodC1ncmF5O1xuICAgICAgICB9XG4gICAgICAgIGEge1xuICAgICAgICAgICAgcGFkZGluZzogMS4yNXJlbSAwLjg1cmVtO1xuICAgICAgICAgICAgZm9udC1zaXplOiAxLjFyZW07XG4gICAgICAgICAgICBjb2xvcjogJGJsYWNrO1xuICAgICAgICAgICAgICY6aG92ZXIge1xuICAgICAgICAgICAgICAgIGJhY2tncm91bmQ6ICRsaWdodC1ncmF5O1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG5cbiAgICAgICAgJi5pcy1hY3RpdmUge1xuICAgICAgICAgICAgYSB7XG4gICAgICAgICAgICAgICAgY29sb3I6ICRibGFjaztcbiAgICAgICAgICAgICAgICBmb250LXdlaWdodDogYm9sZDtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cbiAgICAuYWNjb3JkaW9uLXRpdGxlIHtcbiAgICAgICAgY29sb3I6JGJsYWNrO1xuICAgICAgICBmb250LXNpemU6IHJlbS1jYWxjKDE2cHgpO1xuICAgIH1cblxuICAgIC5hY2NvcmRpb24tdGl0bGU6Zm9jdXMsIC5mb290ZXJDb250YWluZXIgLmFjY29yZGlvbi10aXRsZTpob3ZlciB7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6ICR3aGl0ZTtcbiAgICB9XG5cbiAgICAuYWNjb3JkaW9uLWNvbnRlbnQge1xuICAgICAgICBvdmVyZmxvdzphdXRvO1xuICAgIH1cblxuICAgIC5hY2NvcmRpb24taXRlbS5pcy1hY3RpdmUge1xuICAgICAgICAuYWNjb3JkaW9uLXRpdGxlIHtcbiAgICAgICAgICAgIGNvbG9yOiRibGFjaztcbiAgICAgICAgICAgIGZvbnQtd2VpZ2h0OmJvbGQ7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICBpZnJhbWUgeyBcbiAgICAgICAgd2lkdGg6NTAlOyBcbiAgICAgICAgbWFyZ2luOjAgYXV0bzsgXG4gICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoc21hbGwgb25seSkgeyBcbiAgICAgICAgICAgIHdpZHRoOjk1JTsgXG4gICAgICAgIH1cbiAgICB9XG59IFxuXG4udmlld0Z1bGxSYW5nZSB7XG4gICAgZm9udC1zaXplOiByZW0tY2FsYygxNXB4KTtcblxuICAgICY6aG92ZXIge1xuICAgICAgICB0ZXh0LWRlY29yYXRpb246IHVuZGVybGluZTtcbiAgICB9XG59XG5cbi5za3VUZWNoIHtcbiAgICB0aCB7XG4gICAgICAgIGJhY2tncm91bmQ6ICNmN2Y2ZjY7XG4gICAgICAgIGZvbnQtd2VpZ2h0OiBub3JtYWw7XG4gICAgICAgIHdpZHRoOjMzJTtcbiAgICB9XG59XG5cbi5wcm9kdWN0LWF0dHJpYnV0ZXMtdGFibGUge1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgbWFyZ2luOiAxcmVtIDA7XG5cbiAgICB0Ym9keSB7XG4gICAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICAgIGZsZXgtd3JhcDogd3JhcDtcbiAgICAgICAgd2lkdGg6IDEwMCU7XG5cbiAgICAgICAgdHIge1xuICAgICAgICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgICAgICAgIHdpZHRoOiAxMDAlO1xuXG4gICAgICAgICAgICB0aCB7XG4gICAgICAgICAgICAgICAgd2lkdGg6IDQwJTtcbiAgICAgICAgICAgICAgICB0ZXh0LWFsaWduOiBsZWZ0O1xuICAgICAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6ICRsaWdodC1ncmF5O1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxuXG4gICAgJi5zdGFnZ2VyLXRhYmxlIHtcbiAgICAgICAgdGJvZHkgdHIge1xuICAgICAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludChsYXJnZSB1cCkge1xuICAgICAgICAgICAgICAgIHdpZHRoOiA1MCU7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG59Iiwi77u/LnN0b2NrTWVzc2FnZSB7XG4gICAgYWxpZ24taXRlbXM6IGZsZXgtc3RhcnQ7XG5cbiAgICAuc3RvY2stbWVzc2FnZS1pbmZvICsgZGl2LFxuICAgIC5zdG9jay1tZXNzYWdlLWluZm8gKyBkaXYgPiBzcGFuIHtcbiAgICAgICAgLy9tYXJnaW4tbGVmdDogYXV0bztcbiAgICB9XG5cbiAgICAuc3RvY2stbWVzc2FnZS1pbmZvX2JveCB7XG4gICAgICAgIC8vYm90dG9tOiAyMHB4O1xuICAgIH1cbn1cblxuLnNtYWxsU3RvY2tNZXNzYWdlIHtcbiAgICBhbGlnbi1pdGVtczogZmxleC1zdGFydDtcblxuICAgIC5zdG9jay1tZXNzYWdlLWluZm8gKyBkaXYsXG4gICAgLnN0b2NrLW1lc3NhZ2UtaW5mbyArIGRpdiA+IHNwYW4ge1xuICAgICAgICAvL21hcmdpbi1sZWZ0OiBhdXRvO1xuICAgIH1cblxuICAgIC5zdG9jay1tZXNzYWdlLWluZm9fYm94IHtcbiAgICAgICAgLypib3R0b206IDEwMCU7XG4gICAgICAgIHRvcDogYXV0bzsqL1xuICAgIH1cbn1cblxuLnN0b2NrTWVzc2FnZSxcbi5zbWFsbFN0b2NrTWVzc2FnZSxcbi5zdG9jay1tZXNzYWdlLWJhc2tldCB7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBqdXN0aWZ5LWNvbnRlbnQ6IGZsZXgtZW5kO1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcblxuICAgIHNwYW4ge1xuICAgICAgICBkaXNwbGF5OiBibG9jaztcblxuICAgICAgICAmOm50aC1jaGlsZCgyKSB7XG4gICAgICAgICAgICBmb250LXdlaWdodDogbm9ybWFsO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgLnN0b2NrLW1lc3NhZ2UtdGV4dCB7XG4gICAgICAgIHRleHQtYWxpZ246IHJpZ2h0O1xuXG4gICAgICAgIGEge1xuICAgICAgICAgICAgY29sb3I6IGluaGVyaXQ7XG4gICAgICAgICAgICB0ZXh0LWRlY29yYXRpb246IHVuZGVybGluZTtcbiAgICAgICAgfVxuICAgIH1cblxuICAgIC5zdG9jay1tZXNzYWdlLWluZm8ge1xuICAgICAgICBjb2xvcjogJGRhcmstZ3JheTtcbiAgICAgICAgLy9iYWNrZ3JvdW5kLWNvbG9yOiAkbGlnaHQtZ3JheTtcbiAgICAgICAgd2lkdGg6IDE5cHg7XG4gICAgICAgIGhlaWdodDogMTlweDtcbiAgICAgICAgZm9udC1zaXplOiAxOHB4O1xuICAgICAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbiAgICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICAgICAgY3Vyc29yOiBwb2ludGVyO1xuICAgICAgICBkaXNwbGF5OiBpbmxpbmUtZmxleDtcbiAgICAgICAgZm9udC13ZWlnaHQ6IDQwMDtcbiAgICAgICAgbWFyZ2luLXJpZ2h0OiAuMmVtO1xuICAgICAgICBtYXJnaW4tdG9wOiAuMmVtO1xuICAgICAgICAvL21hcmdpbi1sZWZ0OiBhdXRvO1xuICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KGxhcmdlKSB7XG4gICAgICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAuc3RvY2stbWVzc2FnZS1pbmZvX2JveCB7XG4gICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICBib3JkZXItcmFkaXVzOiAzcHg7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6ICRvZmYtYmxhY2s7XG4gICAgICAgIGNvbG9yOiAkd2hpdGU7XG4gICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgd2lkdGg6IDMwMHB4O1xuICAgICAgICBoZWlnaHQ6IGF1dG87XG4gICAgICAgIHBhZGRpbmc6IDEwcHg7XG4gICAgICAgIGZvbnQtc2l6ZTogLjY1ZW07XG4gICAgICAgIHRleHQtYWxpZ246IGxlZnQ7XG4gICAgICAgIHRyYW5zaXRpb246IGVhc2UtaW4tb3V0IC4zcyBhbGw7XG4gICAgICAgIG9wYWNpdHk6IDA7XG4gICAgICAgIHZpc2liaWxpdHk6IGhpZGRlbjtcbiAgICAgICAgYm94LXNoYWRvdzogMCAycHggOHB4IDBweCByZ2JhKDAsIDAsIDAsIDAuNDApO1xuICAgICAgICB6LWluZGV4OiAxO1xuICAgICAgICB0b3A6IGNhbGMoMTAwJSArIC4yZW0pO1xuICAgICAgICBib3R0b206IGF1dG87XG4gICAgICAgIHJpZ2h0OiAwO1xuXG4gICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobWVkaXVtKSB7XG4gICAgICAgICAgICByaWdodDogMDtcbiAgICAgICAgICAgIHRvcDogY2FsYygxMDAlICsgLjJlbSk7XG4gICAgICAgICAgICBib3R0b206IGF1dG87XG4gICAgICAgIH1cblxuICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KGxhcmdlKSB7XG4gICAgICAgICAgICByaWdodDogY2FsYygxMDAlICsgLjJlbSk7XG4gICAgICAgICAgICB0b3A6IDA7XG4gICAgICAgICAgICBib3R0b206IGF1dG87XG4gICAgICAgIH1cblxuICAgICAgICAmLmFjdGl2ZSB7XG4gICAgICAgICAgICBvcGFjaXR5OiAxO1xuICAgICAgICAgICAgdmlzaWJpbGl0eTogdmlzaWJsZTtcbiAgICAgICAgfVxuXG4gICAgICAgICY6aG92ZXIge1xuICAgICAgICAgICAgY3Vyc29yOiBkZWZhdWx0O1xuICAgICAgICB9XG4gICAgfVxufVxuXG4uc3RvY2stbWVzc2FnZS1zZWFyY2gge1xuICAgIC5zdG9jay1tZXNzYWdlLWluZm8ge1xuICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KGxhcmdlKSB7XG4gICAgICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICAgIH1cbiAgICB9XG59XG5cbi5zdG9jay1tZXNzYWdlLWJhc2tldCB7XG4gICAgYWxpZ24taXRlbXM6IGZsZXgtc3RhcnQ7XG4gICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG5cbiAgICBAaW5jbHVkZSBicmVha3BvaW50KG1lZGl1bSkge1xuICAgICAgICBqdXN0aWZ5LWNvbnRlbnQ6IGZsZXgtZW5kO1xuICAgIH1cblxuICAgIC5zdG9jay1tZXNzYWdlLXRleHQge1xuICAgICAgICB0ZXh0LWFsaWduOiBsZWZ0O1xuICAgICAgICBtYXJnaW4tYm90dG9tOiAyZW07XG5cbiAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludChtZWRpdW0pIHtcbiAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IDA7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAuc3RvY2stbWVzc2FnZS1pbmZvIHtcbiAgICAgICAgbWFyZ2luLWxlZnQ6IDA7XG4gICAgfVxuXG4gICAgLnN0b2NrLW1lc3NhZ2UtaW5mb19ib3gge1xuICAgICAgICB0b3A6IGNhbGMoMTAwJSArIC4yZW0gLSAyZW0pO1xuICAgICAgICBib3R0b206IGF1dG87XG4gICAgICAgIGxlZnQ6IDA7XG4gICAgICAgIHJpZ2h0OiBhdXRvO1xuXG4gICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobWVkaXVtKSB7XG4gICAgICAgICAgICB0b3A6IGF1dG87XG4gICAgICAgICAgICBib3R0b206IGNhbGMoMTAwJSArIC4yZW0pO1xuICAgICAgICAgICAgbGVmdDogMDtcbiAgICAgICAgICAgIHJpZ2h0OiBhdXRvO1xuICAgICAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKC01MCUpO1xuICAgICAgICB9XG5cbiAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludChsYXJnZSkge1xuICAgICAgICAgICAgdHJhbnNmb3JtOiBub25lO1xuICAgICAgICB9XG4gICAgfVxufVxuXG4uc3RvY2stbWVzc2FnZS1tZXJnZSB7XG4gICAgLnN0b2NrLW1lc3NhZ2UtaW5mb19ib3gge1xuICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KGxhcmdlKSB7XG4gICAgICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoLTUwJSk7XG4gICAgICAgIH1cbiAgICB9XG59XG5cbi5zdG9jay1tZXNzYWdlLXRhYmxlIHtcbiAgICA+IGRpdiB7XG4gICAgICAgIC8vbWFyZ2luLWxlZnQ6IGF1dG87XG4gICAgfVxuXG4gICAgLnN0b2NrLW1lc3NhZ2UtaW5mbyB7XG4gICAgICAgIG1hcmdpbi1yaWdodDogMDtcbiAgICAgICAgbWFyZ2luLWxlZnQ6IC4yZW07XG5cbiAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludChsYXJnZSkge1xuICAgICAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgLnN0b2NrLW1lc3NhZ2UtaW5mb19ib3gge1xuICAgICAgICByaWdodDogMDtcbiAgICAgICAgbGVmdDogYXV0bztcbiAgICAgICAgdG9wOiBjYWxjKDEwMCUgKyAuMmVtKTtcbiAgICAgICAgYm90dG9tOiBhdXRvO1xuXG4gICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobGFyZ2UpIHtcbiAgICAgICAgICAgIHJpZ2h0OiBhdXRvO1xuICAgICAgICAgICAgbGVmdDogY2FsYygxMDAlICsgLjJlbSk7XG4gICAgICAgICAgICB0b3A6IDA7XG4gICAgICAgIH1cbiAgICB9XG59XG5cbi5sZWdhY3ktc3RvY2stbWVzc2FnZSB7XG4gICAgdGV4dC1hbGlnbjogcmlnaHQ7XG5cbiAgICBzcGFuIHtcbiAgICAgICAgLy9tYXJnaW4tbGVmdDogYXV0bztcbiAgICB9XG59Iiwi77u/XG4udGllckhlYWRpbmcge1xuICAgIG1hcmdpbi10b3A6cmVtLWNhbGMoNSk7XG4gICAgaDEge1xuICAgICAgICBmbG9hdDpsZWZ0O1xuICAgIH1cbn1cbi50aWVyTmF2U2VjdGlvbiB7XG4gICBAaW5jbHVkZSBncmlkLWNvbHVtbigxMik7XG4gfVxuXG4udGllck1pZGRsZVdpZGUgeyBcbiAgIEBpbmNsdWRlIGdyaWQtY29sdW1uKDEyKTtcbn1cblxuLnRpZXJNaWRkbGVNZWRpdW0ge1xuICAgQGluY2x1ZGUgZ3JpZC1jb2x1bW4oMTIpO1xufVxuXG4udGllck1pZGRsZVNtYWxsIHtcbiAgIEBpbmNsdWRlIGdyaWQtY29sdW1uKDEyKTtcbn1cblxuXG5AbWVkaWEgc2NyZWVuIGFuZCAje2JyZWFrcG9pbnQobWVkaXVtKX0ge1xuICAvLyBNZWRpdW0gYW5kIHVwIHN0eWxlc1xuICAudGllck5hdlNlY3Rpb24ge1xuICAgICAgICBAaW5jbHVkZSBncmlkLWNvbHVtbigyLjg4KTtcbiAgICAgICAgXG5cbiAgICAgICAgLyomLnRpZXJhbmRTaWRlIHtcbiAgICAgICAgICAgIEBpbmNsdWRlIGdyaWQtY29sLXBvcygtOS4xMik7XG4gICAgICAgIH1cblxuICAgICAgICAgJi50aWVyc09ubHkge1xuICAgICAgICAgICAgIEBpbmNsdWRlIGdyaWQtY29sLXBvcygtOS4xMik7XG4gICAgICAgIH0qL1xuXG4gICAgfVxuXG4gICAgLnRpZXJNaWRkbGVXaWRlIHtcbiAgICAgICAgQGluY2x1ZGUgZ3JpZC1jb2x1bW4oMTIpO1xuICAgIH1cblxuICAgIC50aWVyTWlkZGxlTWVkaXVtIHtcbiAgICAgICAgQGluY2x1ZGUgZ3JpZC1jb2x1bW4oOS4xMik7XG4gICAgICAgIC8qQGluY2x1ZGUgZ3JpZC1jb2wtcG9zKDIuODgpOyovXG4gICAgfVxuXG4gICAgLnRpZXJNaWRkbGVTbWFsbCB7XG4gICAgICAgIEBpbmNsdWRlIGdyaWQtY29sdW1uKDkuMTIpO1xuICAgICAgICAvKkBpbmNsdWRlIGdyaWQtY29sLXBvcygyLjg4KTsqL1xuICAgIH1cblxuICAgIC50aWVyUmlnaHRTZWN0aW9uIHtcbiAgICAgICAgZGlzcGxheTpub25lO1xuICAgIH1cblxufVxuXG5cbkBtZWRpYSBzY3JlZW4gYW5kICN7YnJlYWtwb2ludChsYXJnZSl9IHtcbiAgLy8gTGFyZ2UgYW5kIHVwIHN0eWxlc1xuICAudGllck5hdlNlY3Rpb24ge1xuICAgICAgICBAaW5jbHVkZSBncmlkLWNvbHVtbigyLjg4KTtcbiAgICAgICAgXG5cbiAgICAgICAgLyomLnRpZXJhbmRTaWRlIHtcbiAgICAgICAgICAgIEBpbmNsdWRlIGdyaWQtY29sLXBvcygtNi42KTtcbiAgICAgICAgfVxuXG4gICAgICAgICAmLnRpZXJzT25seSB7XG4gICAgICAgICAgICAgQGluY2x1ZGUgZ3JpZC1jb2wtcG9zKC05LjEyKTtcbiAgICAgICAgfSovXG5cbiAgICB9XG5cbiAgICAudGllck1pZGRsZVdpZGUge1xuICAgICAgICBAaW5jbHVkZSBncmlkLWNvbHVtbigxMik7XG4gICAgfVxuXG4gICAgLnRpZXJNaWRkbGVNZWRpdW0ge1xuICAgICAgICBAaW5jbHVkZSBncmlkLWNvbHVtbig5LjEyKTtcbiAgICAgICAgLypAaW5jbHVkZSBncmlkLWNvbC1wb3MoMi44OCk7Ki9cbiAgICB9XG5cbiAgICAudGllck1pZGRsZVNtYWxsIHtcbiAgICAgICAgQGluY2x1ZGUgZ3JpZC1jb2x1bW4oNi42KTtcbiAgICAgICAgLypAaW5jbHVkZSBncmlkLWNvbC1wb3MoMi44OCk7Ki9cbiAgICB9XG5cbiAgICAudGllclJpZ2h0U2VjdGlvbiB7XG4gICAgICAgIGRpc3BsYXk6YmxvY2s7XG4gICAgICAgIEBpbmNsdWRlIGdyaWQtY29sdW1uKDIuNTIpO1xuICAgIH1cblxufVxuXG51bC50aWVycGFnZU5hdiB7XG4gICAgbGlzdC1zdHlsZTpub25lO1xuICAgIG1hcmdpbi1sZWZ0OjBweDtcbiAgICBwYWRkaW5nLWxlZnQ6cmVtLWNhbGMoNCk7XG4gICAgbGkge1xuICAgICAgICBtYXJnaW46cmVtLWNhbGMoNXB4IDApO1xuICAgICAgICBwYWRkaW5nOnJlbS1jYWxjKDVweCAwKTtcbiAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludChtZWRpdW0pIHtcbiAgICAgICAgICAgIG1hcmdpbjpyZW0tY2FsYygwKTtcbiAgICAgICAgICAgIHBhZGRpbmc6cmVtLWNhbGMoNC4yIDApO1xuICAgICAgICB9XG4gICAgICAgIGJvcmRlci1ib3R0b206MXB4IHNvbGlkICRsaWdodC1ncmF5O1xuICAgICAgICAmOmxhc3QtY2hpbGQge1xuICAgICAgICAgICAgYm9yZGVyLWJvdHRvbTpub25lO1xuICAgICAgICB9XG4gICAgICAgIGEge1xuICAgICAgICAgICAgY29sb3I6YmxhY2s7XG4gICAgICAgICAgICBmb250LXNpemU6cmVtLWNhbGMoMTZweCk7XG4gICAgICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KG1lZGl1bSkge1xuICAgICAgICAgICAgICAgIGZvbnQtc2l6ZTpyZW0tY2FsYygxNC43KTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgICY6aG92ZXIge1xuICAgICAgICAgICAgICAgIHRleHQtZGVjb3JhdGlvbjp1bmRlcmxpbmU7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG59XG5cbi50aWVyVGV4dCB7XG4gICAgXG59XG5cbi5icmFuZFNlY3Rpb24ge1xuICAgIHRleHQtYWxpZ246Y2VudGVyO1xuICAgIGgyIHtcbiAgICAgICAgICAgIHRleHQtYWxpZ246bGVmdDtcbiAgICAgICAgfVxuICAgIGEge1xuICAgICAgICBkaXNwbGF5OmlubGluZS1ibG9jaztcbiAgICAgICAgcGFkZGluZzowcHggMjBweCA1cHggMjBweDtcbiAgICAgICAgaW1nIHtcbiAgICAgICAgICAgIHBhZGRpbmctYm90dG9tOjJweDtcbiAgICAgICAgICAgIHdpZHRoOjEwMHB4O1xuICAgICAgICAgICAgaW1hZ2UtcmVuZGVyaW5nOi1tb3otY3Jpc3AtZWRnZXM7XG4gICAgICAgICAgICBpbWFnZS1yZW5kZXJpbmc6LW8tY3Jpc3AtZWRnZXM7ICAgXG4gICAgICAgICAgICBpbWFnZS1yZW5kZXJpbmc6LXdlYmtpdC1vcHRpbWl6ZS1jb250cmFzdDtcbiAgICAgICAgICAgIGltYWdlLXJlbmRlcmluZzpvcHRpbWl6ZS1jb250cmFzdDsgIFxuICAgICAgICB9XG4gICAgICAgIGgzIHtcbiAgICAgICAgICAgIGNvbG9yOiRkYXJrLWdyYXk7XG4gICAgICAgICAgICBmb250LXdlaWdodDpub3JtYWw7XG4gICAgICAgIH1cbiAgICAgICAgJjpob3ZlciB7XG4gICAgICAgICAgICAgICAgaDMge1xuICAgICAgICAgICAgICAgIGNvbG9yOiRibGFjaztcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH0gICAgXG59XG5cbmEudG9wQnJhbmRzVmlld0FsbCB7XG4gICAgcGFkZGluZy10b3A6cmVtLWNhbGMoMTApO1xuICAgIHRleHQtYWxpZ246cmlnaHQ7XG4gICAgZGlzcGxheTpibG9jaztcbiAgICBjb2xvcjokZGFyay1ncmF5O1xuICAgICY6aG92ZXIge1xuICAgICAgICBjb2xvcjpibGFjaztcbiAgICB9XG59XG5cbi50aWVyQWR2ZXJ0cyB7XG4gICAgLmNvbHVtbiB7XG4gICAgICAgIGltZyB7XG4gICAgICAgICAgICBtYXJnaW4tYm90dG9tOnJlbS1jYWxjKDEwKTtcbiAgICAgICAgICAgIGltYWdlLXJlbmRlcmluZzogLW1vei1jcmlzcC1lZGdlczsgICAgICAgICAvKiBGaXJlZm94ICovXG4gICAgICAgICAgICBpbWFnZS1yZW5kZXJpbmc6ICAgLW8tY3Jpc3AtZWRnZXM7ICAgICAgICAgLyogT3BlcmEgKi9cbiAgICAgICAgICAgIGltYWdlLXJlbmRlcmluZzogLXdlYmtpdC1vcHRpbWl6ZS1jb250cmFzdDsvKiBXZWJraXQgKG5vbi1zdGFuZGFyZCBuYW1pbmcpICovXG4gICAgICAgICAgICBpbWFnZS1yZW5kZXJpbmc6IGNyaXNwLWVkZ2VzO1xuICAgICAgICAgICAgLW1zLWludGVycG9sYXRpb24tbW9kZTogbmVhcmVzdC1uZWlnaGJvcjsgIC8qIElFIChub24tc3RhbmRhcmQgcHJvcGVydHkpICovXG4gICAgICAgIH1cbiAgICAgICAgYSB7XG4gICAgICAgICAgICBjb2xvcjokYmxhY2s7XG4gICAgICAgIH1cbiAgICB9XG59XG5cblxuLm1vZHVsZVZpZXcge1xuICAgIC5tb2R1bGVCbG9jayB7XG4gICAgICAgIHRleHQtYWxpZ246Y2VudGVyO1xuICAgICAgICBwYWRkaW5nOnJlbS1jYWxjKDEwcHgpO1xuICAgICAgICBhIHtcbiAgICAgICAgICAgIGNvbG9yOmJsYWNrO1xuICAgICAgICAgICAgZGlzcGxheTpibG9jaztcbiAgICAgICAgICAgIGxpbmUtaGVpZ2h0OnJlbS1jYWxjKDE4cHgpO1xuICAgICAgICAgICAgaW1nIHtcbiAgICAgICAgICAgICAgICB3aWR0aDo1MCU7XG4gICAgICAgICAgICAgICAgcGFkZGluZy1ib3R0b206NXB4O1xuICAgICAgICAgICAgICAgIG1hcmdpbjogMCBhdXRvO1xuICAgICAgICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICAgICAgfVxuICAgICAgICAgICAgJjpob3ZlciB7XG4gICAgICAgICAgICAgICAgY29sb3I6YmxhY2s7XG4gICAgICAgICAgICAgICAgdGV4dC1kZWNvcmF0aW9uOnVuZGVybGluZTtcbiAgICAgICAgICAgICAgICBpbWcge1xuICAgICAgICAgICAgICAgICAgICB0ZXh0LWRlY29yYXRpb246bm9uZTtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG59XG5cbi5wYXJhbWV0cmljU2VhcmNoQnV0dG9uIHtcbiAgICBwb3NpdGlvbjphYnNvbHV0ZTtcbiAgICByaWdodDoxMHB4O1xuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoc21hbGwgb25seSkge1xuICAgIHBvc2l0aW9uOnJlbGF0aXZlO1xuICAgIGRpc3BsYXk6aW5saW5lLWJsb2NrO1xuICAgIGZsb2F0OnJpZ2h0O1xuICAgICY6YWZ0ZXIge1xuICAgICAgICBjbGVhcjpib3RoO1xuICAgIH1cbiAgfVxufSIsIu+7vyRtYWluVGV4dDojM2MzYzNjO1xuJGxpZ2h0ZXJHcmV5OiNiZGMzYzc7XG5cbi5idXR0b24uaG9sbG93LmxpZ2h0ZXJHcmF5IHtcbiAgICBib3JkZXI6IDFweCBzb2xpZCAkbGlnaHRlckdyZXk7XG4gICAgY29sb3I6ICRsaWdodGVyR3JleTtcbn1cblxuLmJ1dHRvbi5saWdodGVyR3JheSB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogJGxpZ2h0ZXJHcmV5O1xuICAgIGNvbG9yOiAkd2hpdGU7XG4gICAgJjpmb2N1cyB7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6ICRvZmYtYmxhY2s7XG4gICAgICAgIGNvbG9yOiAkd2hpdGU7XG4gICAgfVxuICAgICY6aG92ZXIge1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkb2ZmLWJsYWNrO1xuICAgICAgICBjb2xvcjogJHdoaXRlO1xuICAgIH1cbn1cblxuLmJ1dHRvbi5ob2xsb3cubGlnaHRlckdyYXkge1xuICAgIGJvcmRlcjogMXB4IHNvbGlkICRsaWdodGVyR3JleTtcbiAgICBjb2xvcjogJGxpZ2h0ZXJHcmV5O1xuICAgIGJhY2tncm91bmQ6bm9uZTtcbiAgICAmOmZvY3VzIHtcbiAgICAgICAgYm9yZGVyLWNvbG9yOiAkb2ZmLWJsYWNrO1xuICAgICAgICBjb2xvcjogJG9mZi1ibGFjaztcbiAgICB9XG4gICAgJjpob3ZlciB7XG4gICAgICAgIGJvcmRlci1jb2xvcjogJG9mZi1ibGFjaztcbiAgICAgICAgY29sb3I6ICRvZmYtYmxhY2s7XG4gICAgfVxufVxuXG4ucXVpY2tUYXNrRmlsdGVycyB7XG4gICAgbGlzdC1zdHlsZTpub25lO1xuICAgIG1hcmdpbi1sZWZ0OnJlbS1jYWxjKDApO1xuICAgIGxhYmVsLCBhIHtcbiAgICAgICAgY29sb3I6JG1haW5UZXh0O1xuICAgICAgICAvKmZvbnQtd2VpZ2h0OmJvbGQ7Ki9cbiAgICAgICAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbiAgICAgICAgZm9udC1zaXplOjEuMXJlbTtcbiAgICB9XG4gICAgbGkge1xuICAgICAgICBmb250LXNpemU6cmVtLWNhbGMoMTUpO1xuICAgICAgICBwYWRkaW5nOnJlbS1jYWxjKDExIDIpO1xuICAgICAgICBjdXJzb3I6cG9pbnRlcjtcbiAgICAgICAgJi50YXNrRmlsdGVyRGl2aWRlciB7XG4gICAgICAgICAgICBib3JkZXItYm90dG9tOjFweCBzb2xpZCAkbGlnaHQtZ3JheTtcbiAgICAgICAgICAgIGxpbmUtaGVpZ2h0OiAwcHg7XG4gICAgICAgICAgICBwYWRkaW5nOiAwcHg7XG4gICAgICAgICAgICAmOmhvdmVyIHtcbiAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kOm5vbmU7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgICAgc2VsZWN0IHtcbiAgICAgICAgICAgIGJvcmRlcjpub25lO1xuICAgICAgICAgICAgJjpmb2N1cyB7XG4gICAgICAgICAgICAgICAgYm9yZGVyOm5vbmU7XG4gICAgICAgICAgICAgICAgYm94LXNoYWRvdzpub25lO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICAgIGkge1xuICAgICAgICAgICAgZm9udC1zaXplOjIwcHggIWltcG9ydGFudDtcbiAgICAgICAgICAgIHBhZGRpbmctcmlnaHQ6NXB4O1xuICAgICAgICB9XG4gICAgICAgIHNwYW4ge1xuICAgICAgICAgICAgY29sb3I6JG1haW5UZXh0O1xuICAgICAgICAgICAgZm9udC1zaXplOnJlbS1jYWxjKDExKTtcbiAgICAgICAgfVxuICAgICAgICBzZWxlY3Qge1xuICAgICAgICAgICAgbWFyZ2luLXRvcDpyZW0tY2FsYygxMik7XG4gICAgICAgIH1cbiAgICB9XG59XG5cbi50YXNrRmlsdGVyc0NvbCB7XG4gICAgLypAaW5jbHVkZSBncmlkLWNvbHVtbjsqL1xuICAgIC8qYmFja2dyb3VuZDojRjlGQUZFICFpbXBvcnRhbnQ7Ki9cbiAgICBiYWNrZ3JvdW5kOiNFRkVGRjQgIWltcG9ydGFudDtcbiAgICAmLm9mZi1jYW52YXMuaW4tY2FudmFzLWZvci1sYXJnZSB7XG4gICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobWVkaXVtIGRvd24pIHtcbiAgICAgICAgICAgIHotaW5kZXg6IDk5OTk5OSAhaW1wb3J0YW50O1xuICAgICAgICAgICAgcGFkZGluZzpyZW0tY2FsYyg1KTtcbiAgICAgICAgfVxuICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KGxhcmdlKSB7XG4gICAgICAgICAgICBAaW5jbHVkZSBncmlkLWNvbHVtbigyIG9mIDEyKTtcbiAgICAgICAgICAgIC8vdG8gbWF0Y2ggaGVpZ2h0IG9mIHBhcmVudCAtIG9ubHkgd29ya3MgYXMgcGFnZSBpcyAyIGNvbHVtbnMgc28gcmlnaHQgY29sIGlzIGZsb2F0ZWQgcmlnaHQuXG4gICAgICAgICAgICBoZWlnaHQ6MTAwJSAgIWltcG9ydGFudDtcbiAgICAgICAgICAgIHBvc2l0aW9uOmFic29sdXRlICFpbXBvcnRhbnQ7XG4gICAgICAgICAgICBib3JkZXItcmlnaHQ6MXB4IHNvbGlkICRsaWdodC1ncmF5O1xuICAgICAgICAgfVxuICAgIH1cbiAgICAgLypAaW5jbHVkZSBicmVha3BvaW50KGxhcmdlKSB7XG4gICAgICAgIEBpbmNsdWRlIGdyaWQtY29sdW1uKDIgb2YgMTIpO1xuICAgICAgICAvL3RvIG1hdGNoIGhlaWdodCBvZiBwYXJlbnQgLSBvbmx5IHdvcmtzIGFzIHBhZ2UgaXMgMiBjb2x1bW5zIHNvIHJpZ2h0IGNvbCBpcyBmbG9hdGVkIHJpZ2h0LlxuICAgICAgICBoZWlnaHQ6MTAwJSAgIWltcG9ydGFudDtcbiAgICAgICAgcG9zaXRpb246YWJzb2x1dGUgIWltcG9ydGFudDtcbiAgICAgICAgYm9yZGVyLXJpZ2h0OjFweCBzb2xpZCAkbGlnaHQtZ3JheTtcbiAgICAgfSovXG59XG5cbi50YXNrU3dpdGNoIHtcbiAgICBwYWRkaW5nOiAzcHggMHB4O1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIHRleHQtYWxpZ246Y2VudGVyO1xuICAgICY6aG92ZXIge1xuICAgICAgICBjb2xvcjokd2hpdGU7XG4gICAgICAgIGJhY2tncm91bmQ6JGxpZ2h0ZXJHcmV5O1xuICAgIH1cbn1cbi50YXNrUGFnZUNvbnQge1xuICAgIHNwYW4ubGFiZWwge1xuICAgICAgICBib3JkZXItcmFkaXVzOiByZW0tY2FsYygxMCk7XG4gICAgICAgIG1hcmdpbjogMi41cHggNXB4IDIuNXB4O1xuXG4gICAgICAgIC5zZWNvbmRhcnkge1xuICAgICAgICAgICAgYmFja2dyb3VuZDogI0ExQUFCMjtcbiAgICAgICAgfVxuICAgIH1cbn1cblxuLnRhc2tSb3cge1xuICAgIG1heC1oZWlnaHQ6IDIwMHB4O1xuXHRvdmVyZmxvdzogaGlkZGVuO1xuICAgIC13ZWJraXQtdHJhbnNpdGlvbjogbWF4LWhlaWdodCAxLjJzO1xuXHQtbW96LXRyYW5zaXRpb246IG1heC1oZWlnaHQgMS4ycztcblx0dHJhbnNpdGlvbjogbWF4LWhlaWdodCAxLjJzO1xuICAgICYub3BlbiB7XG4gICAgICAgICBtYXgtaGVpZ2h0OiAxNDUwcHg7XG4gICAgICAgICBvdmVyZmxvdzp2aXNpYmxlO1xuICAgIH1cbn1cblxuLnJlc3VsdHNDb3VudCB7XG4gICAgbWFyZ2luOiA3cHggMHB4O1xuICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbn1cblxuaDEudGFza1BhZ2VUaXRsZSB7XG4gICAgZGlzcGxheTppbmxpbmUtYmxvY2s7XG4gICAgbWFyZ2luOnJlbS1jYWxjKDhweCAwIDAgMCk7XG4gICAgY29sb3I6JG1haW5UZXh0O1xuICAgIGZvbnQtc2l6ZToxLjM1cmVtO1xufVxuXG4udGFza0RldGFpbHMge1xuICAgIGJhY2tncm91bmQ6I0Y5RjlGOTtcbiAgICBwYWRkaW5nOnJlbS1jYWxjKDcpO1xuICAgIC13ZWJraXQtdHJhbnNpdGlvbjogYWxsIDAuNXMgZWFzZS1pbi1vdXQ7XG4gIC1tb3otdHJhbnNpdGlvbjogYWxsIDAuNXMgZWFzZS1pbi1vdXQ7XG4gIC1tcy10cmFuc2l0aW9uOiBhbGwgMC41cyBlYXNlLWluLW91dDtcbiAgdHJhbnNpdGlvbjogYWxsIDAuNXMgZWFzZS1pbi1vdXQ7XG4gICAgbGFiZWwge1xuICAgICAgICBmb250LXNpemU6cmVtLWNhbGMoMTUpO1xuICAgICAgICBjb2xvcjokZGFyay1ncmF5O1xuICAgICAgICBzcGFuIHtcbiAgICAgICAgICAgIGNvbG9yOiRkYXJrLWdyYXk7XG4gICAgICAgICAgICBmb250LXNpemU6cmVtLWNhbGMoMTEpO1xuICAgICAgICB9XG4gICAgfVxufVxuXG4uc2hvdy1xdWlja1Rhc2tGaWx0ZXJzIHtcbiAgICBkaXNwbGF5OmJsb2NrICFpbXBvcnRhbnQ7XG59XG5cbi50YXNrSGVhZGVyQmFyIHtcbiAgICBtaW4taGVpZ2h0OnJlbS1jYWxjKDUxKTtcbiAgICBiYWNrZ3JvdW5kOlx0I2ZmZmZmMjtcbiAgICBib3JkZXItYm90dG9tOjFweCBzb2xpZCAkbGlnaHQtZ3JheTtcbiAgICAvKmJveC1zaGFkb3c6IDAgMXB4IDNweCByZ2JhKDAsMCwwLDAuMTIpLCAwIDFweCAycHggcmdiYSgwLDAsMCwwLjI0KTsqL1xuICAgIHBhZGRpbmc6cmVtLWNhbGMoNiAwKTtcbiAgICAmLnJvdy5leHBhbmRlZCB7XG4gICAgICAgIG1hcmdpbi1yaWdodDogLS41NzE0M3JlbTtcbiAgICAgICAgbWFyZ2luLWxlZnQ6IC0uNTcxNDNyZW07XG4gICAgfVxuICAgIC5idXR0b24ge1xuICAgICAgICBtYXJnaW46IDAuMjVyZW0gMC4yNXJlbSAwLjI1cmVtO1xuICAgICAgICBwYWRkaW5nOiAuNTVlbSAuNzVlbTtcbiAgICB9XG59XG5cbi50YXNrUGFnZUNvbnQge1xuICAgIG92ZXJmbG93OiBoaWRkZW47XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIG1hcmdpbi1ib3R0b206cmVtLWNhbGMoLTIyKTtcbiAgICBwYWRkaW5nLWJvdHRvbTpyZW0tY2FsYygxMCk7XG4gICAgbWluLWhlaWdodDpyZW0tY2FsYyg0OTUpO1xuICAgIC8qYmFja2dyb3VuZDojRjVGNUY2OyovXG4gICAgYmFja2dyb3VuZDojRkFGQUZBO1xufVxuXG4udGFza3NDb250YWluZXIge1xuICAgIC8qYm9yZGVyOjFweCBzb2xpZCAkbGlnaHQtZ3JheTsqL1xuICAgIG1hcmdpbi10b3A6cmVtLWNhbGMoMTApO1xuICAgIG1heC13aWR0aDogcmVtLWNhbGMoMTE1MCk7XG4gICAgcGFkZGluZzpyZW0tY2FsYyg2KTtcbiAgICBiYWNrZ3JvdW5kOiB3aGl0ZTtcbiAgICBib3gtc2hhZG93OiAwIDFweCAzcHggcmdiYSgwLDAsMCwuMTIpLCAwIDFweCAycHggcmdiYSgwLDAsMCwuMjQpO1xuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobWVkaXVtKSB7XG4gICAgICAgIG1hcmdpbi1sZWZ0OnJlbS1jYWxjKDExKTtcbiAgICAgICAgbWFyZ2luLXJpZ2h0OnJlbS1jYWxjKDExKTtcbiAgICB9XG59XG5cbi50YXNrUm93IHtcbiAgICBib3JkZXItYm90dG9tOiAxcHggc29saWQgJGxpZ2h0LWdyYXk7XG5cbiAgICAmOmxhc3QtY2hpbGQge1xuICAgICAgICBib3JkZXItYm90dG9tOiBub25lO1xuICAgICAgICBwYWRkaW5nLWJvdHRvbTogMDtcbiAgICB9XG5cbiAgICAmOmhvdmVyIHtcbiAgICAgICAgYmFja2dyb3VuZDogI2U4ZTVlNTtcbiAgICB9XG5cbiAgICAubm9uRWRpdGFibGUge1xuICAgICAgICBtYXJnaW46IDVweDtcbiAgICAgICAgY3Vyc29yOiBwb2ludGVyO1xuXG4gICAgICAgIHNwYW4ge1xuICAgICAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludChzbWFsbCBvbmx5KSB7XG4gICAgICAgICAgICAgICAgcGFkZGluZy10b3A6IHJlbS1jYWxjKDMpO1xuICAgICAgICAgICAgICAgIHBhZGRpbmctYm90dG9tOiByZW0tY2FsYygzKTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuXG4gICAgICAgIC5mYS1zdGFyIHtcbiAgICAgICAgICAgIGNvbG9yOiAjZTgxMjEyO1xuICAgICAgICB9XG5cbiAgICAgICAgLmhvbGxvdy1zcWF1cmUtbm90aWZpY2F0aW9uIHtcbiAgICAgICAgICAgIGJvcmRlcjogMXB4IHNvbGlkICMzMTMxMzE7XG4gICAgICAgICAgICBjb2xvcjogIzMxMzEzMTtcbiAgICAgICAgICAgIG1hcmdpbjogMDtcbiAgICAgICAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICAgICAgICAgIGJvcmRlci1yYWRpdXM6IC4xOHJlbTtcbiAgICAgICAgICAgIHBhZGRpbmc6IDAgLjU1ZW07XG4gICAgICAgICAgICBmb250LXdlaWdodDogYm9sZDtcbiAgICAgICAgICAgIGZsb2F0OiByaWdodDtcbiAgICAgICAgfVxuXG4gICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobWVkaXVtKSB7XG4gICAgICAgICAgICBsaW5lLWhlaWdodDogcmVtLWNhbGMoMzEpO1xuICAgICAgICB9XG5cbiAgICAgICAgaDIge1xuICAgICAgICAgICAgZm9udC13ZWlnaHQ6IG5vcm1hbDtcbiAgICAgICAgICAgIHBhZGRpbmc6IDAuNXJlbSAwO1xuICAgICAgICAgICAgbWFyZ2luOiAwO1xuICAgICAgICAgICAgY29sb3I6ICRtYWluVGV4dDtcbiAgICAgICAgfVxuXG4gICAgICAgIC5lZGl0QnRuIHtcbiAgICAgICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoc21hbGwgb25seSkge1xuICAgICAgICAgICAgICAgIG1hcmdpbjogcmVtLWNhbGMoMTApIGF1dG87XG4gICAgICAgICAgICAgICAgZmxvYXQ6IHJpZ2h0O1xuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICBkaXNwbGF5OiBub25lO1xuICAgICAgICAgICAgbWluLXdpZHRoOiByZW0tY2FsYyg3MCk7XG4gICAgICAgICAgICBib3JkZXI6IDFweCBzb2xpZCAkbGlnaHQtZ3JheTtcbiAgICAgICAgICAgIGJvcmRlci1yYWRpdXM6IDNweDtcbiAgICAgICAgICAgIGJhY2tncm91bmQ6ICR3aGl0ZTtcblxuICAgICAgICAgICAgLmJ0bkljb24ge1xuICAgICAgICAgICAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kOiAkYWNjZW50O1xuXG4gICAgICAgICAgICAgICAgaSB7XG4gICAgICAgICAgICAgICAgICAgIHBhZGRpbmc6IHJlbS1jYWxjKDUpO1xuICAgICAgICAgICAgICAgICAgICBmb250LXNpemU6IHJlbS1jYWxjKDE4KTtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIC5idG5UZXh0IHtcbiAgICAgICAgICAgICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgICAgICAgICAgICAgcGFkZGluZzogcmVtLWNhbGMoMCA2KTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuXG4gICAgICAgICY6aG92ZXIge1xuICAgICAgICAgICAgLmVkaXRCdG4ge1xuICAgICAgICAgICAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICAgICAgICAgICAgICBjdXJzb3I6IHBvaW50ZXI7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG59XG5cblxuLnRhYnNBcmVhIHtcbiAgICAudGFicy1jb250ZW50IHtcbiAgICAgICAgYmFja2dyb3VuZDogbm9uZTtcbiAgICAgICAgYm9yZGVyOiBub25lO1xuXG4gICAgICAgIC50YWJzLXBhbmVsIHtcbiAgICAgICAgICAgIHBhZGRpbmc6IDBweDtcbiAgICAgICAgICAgIG92ZXJmbG93OiB2aXNpYmxlO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgLnRhYnMge1xuICAgICAgICBib3JkZXI6IG5vbmU7XG4gICAgICAgIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCAkbGlnaHQtZ3JheTtcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogcmVtLWNhbGMoMTApO1xuICAgICAgICBiYWNrZ3JvdW5kOiBub25lO1xuXG4gICAgICAgIC50YWJzLXRpdGxlIHtcbiAgICAgICAgICAgIHdpZHRoOiAzMSU7XG4gICAgICAgICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgICAgICAgICBwYWRkaW5nLWJvdHRvbTogNHB4O1xuICAgICAgICAgICAgbWFyZ2luLXJpZ2h0OiAzcHg7XG4gICAgICAgICAgICBiYWNrZ3JvdW5kOiAjZjhmOWZhO1xuXG4gICAgICAgICAgICAmOmhvdmVyIHtcbiAgICAgICAgICAgICAgICBwYWRkaW5nLWJvdHRvbTogMHB4O1xuICAgICAgICAgICAgICAgIGJvcmRlci1ib3R0b206IDRweCBzb2xpZCAkbGlnaHQtZ3JheTtcbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgYSB7XG4gICAgICAgICAgICAgICAgcGFkZGluZzogcmVtLWNhbGMoOCk7XG5cbiAgICAgICAgICAgICAgICAmOmZvY3VzIHtcbiAgICAgICAgICAgICAgICAgICAgYmFja2dyb3VuZDogbm9uZTtcbiAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICAmOmhvdmVyIHtcbiAgICAgICAgICAgICAgICAgICAgYmFja2dyb3VuZDogbm9uZTtcbiAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICBsYWJlbCB7XG4gICAgICAgICAgICAgICAgICAgIGZvbnQtc2l6ZTogcmVtLWNhbGMoMTYpO1xuICAgICAgICAgICAgICAgICAgICBjdXJzb3I6IHBvaW50ZXI7XG4gICAgICAgICAgICAgICAgICAgIGZvbnQtd2VpZ2h0OiBub3JtYWw7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAmLmlzLWFjdGl2ZSB7XG4gICAgICAgICAgICAgICAgcGFkZGluZy1ib3R0b206IDBweDtcbiAgICAgICAgICAgICAgICBib3JkZXItYm90dG9tOiA0cHggc29saWQgJGFjY2VudDtcbiAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kOiAjZjVmN2Y4O1xuXG4gICAgICAgICAgICAgICAgYSB7XG4gICAgICAgICAgICAgICAgICAgIGxhYmVsIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIGZvbnQtd2VpZ2h0OiBib2xkO1xuICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxufVxuXG5cbi50b2RvQ29udGFpbmVyLCAudGFza05vdGVzQ29udGFpbmVyIHtcbiAgICBiYWNrZ3JvdW5kOiAkd2hpdGU7XG4gICAgcGFkZGluZzogcmVtLWNhbGMoMCAxMCk7XG4gICAgb3ZlcmZsb3cteTogYXV0bztcbiAgICBib3JkZXI6IDFweCBzb2xpZCAkbGlnaHQtZ3JheTtcbiAgICBib3JkZXItcmFkaXVzOiA0cHg7XG4gICAgaGVpZ2h0OiByZW0tY2FsYygzMTUpO1xuICAgIG1hcmdpbi1ib3R0b206IHJlbS1jYWxjKDEwKTtcbn1cblxuLnRvZG9Db250YWluZXIge1xuICAgIC5mYS1zdGFyIHtcbiAgICAgICAgY29sb3I6ICNlODEyMTI7XG4gICAgfVxufVxuXG4ucXVpbGwtb3V0ZXIge1xuICAgIC5xbC10b29sdGlwLCAucWwtY2xpcGJvYXJkIHtcbiAgICAgICAgei1pbmRleDogOTk5OTk5O1xuICAgIH1cblxuICAgIC5xdWlsbC1lZGl0b3Ige1xuICAgICAgICBiYWNrZ3JvdW5kOiAkd2hpdGU7XG5cbiAgICAgICAgLnFsLXRvb2xiYXIucWwtc25vdywgLnFsLWNvbnRhaW5lci5xbC1zbm93IHtcbiAgICAgICAgICAgIGJvcmRlcjogMXB4IHNvbGlkICRsaWdodC1ncmF5O1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgYnV0dG9uIHtcbiAgICAgICAgbWFyZ2luOiAxMHB4IDBweCAwcHggMHB4O1xuICAgIH1cblxuICAgIC5xbC1jb250YWluZXIge1xuICAgICAgICBoZWlnaHQ6IHJlbS1jYWxjKDIyMCk7XG4gICAgfVxufVxuXG4udG9kb1JvdyB7XG4gICBib3JkZXItYm90dG9tOjFweCBzb2xpZCAkbGlnaHQtZ3JheTtcbiAgIC5sYWJlbCB7XG4gICAgICAgbGluZS1oZWlnaHQ6MS4zcmVtO1xuICAgfVxuICAgY3Vyc29yOnBvaW50ZXI7XG4gICBwYWRkaW5nOnJlbS1jYWxjKDUgMCk7XG4gICBwIHtcbiAgICAgICBtYXJnaW4tYm90dG9tOnJlbS1jYWxjKDIpO1xuICAgfVxuICAgJjpob3ZlciB7XG4gICAgICAgYmFja2dyb3VuZDokbGlnaHQtZ3JheTtcbiAgIH1cbn1cblxuLm5vdGVSb3cge1xuICAgIGJvcmRlci1ib3R0b206MXB4IHNvbGlkICRsaWdodC1ncmF5O1xuICAgIHAge1xuICAgICAgICBtYXJnaW4tYm90dG9tOnJlbS1jYWxjKC0yKTtcbiAgICAgICAgbWFyZ2luLXRvcDpyZW0tY2FsYygzKTtcbiAgICB9XG4gICAgLm5vdGVEYXRlIHtcbiAgICAgICAgY29sb3I6JGRhcmstZ3JheTtcbiAgICAgICAgZm9udC1zaXplOnJlbS1jYWxjKDEyKTtcblxuICAgIH1cbn1cblxuLnRhc2tTYXZlIHtcbiAgICBmbG9hdDpyaWdodDtcbiAgICBtYXJnaW4tYm90dG9tOnJlbS1jYWxjKDUpO1xufVxuXG4vKnRvZG8gbWVudSB0cmFuc2l0aW9uKi9cbi5wYW5lbC1zbGlkZXIge1xuICAgIHBvc2l0aW9uOnJlbGF0aXZlO1xuXHRtYXgtaGVpZ2h0OiAwO1xuXHR0cmFuc2l0aW9uLXByb3BlcnR5OiBhbGw7XG5cdHRyYW5zaXRpb24tZHVyYXRpb246IC40cztcblx0dHJhbnNpdGlvbi10aW1pbmctZnVuY3Rpb246IGN1YmljLWJlemllcigxLCAwLCAwLjUsIDApO1xuICAgIGJhY2tncm91bmQ6I0VGRUZGNDtcbn1cblxuLnBhbmVsLXNsaWRlci5vcGVuIHtcblx0bWF4LWhlaWdodDogNTAwcHg7XG4gICAgbWFyZ2luLXRvcDo4cHg7XG4gICAgcGFkZGluZzpyZW0tY2FsYyg1KTtcbiAgICBib3JkZXItcmFkaXVzOnJlbS1jYWxjKDQpO1xuICAgIC5idXR0b24ge1xuICAgICAgICBtYXJnaW46cmVtLWNhbGMoNSAwKTtcbiAgICB9XG59XG5cbi5wYW5lbC1zbGlkZXIub3Blbjo6YmVmb3JlIHtcbiAgICBib3JkZXItcmlnaHQ6IHNvbGlkIDE1cHggdHJhbnNwYXJlbnQ7XG4gICAgYm9yZGVyLWxlZnQ6IHNvbGlkIDE1cHggdHJhbnNwYXJlbnQ7XG4gICAgYm9yZGVyLWJvdHRvbTogc29saWQgMTVweCAjRUZFRkY0O1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWCgtNTAlKTtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgY29udGVudDogJyc7XG4gICAgdG9wOiAtMTVweDtcbiAgICBsZWZ0OiA1MCU7XG4gICAgaGVpZ2h0OiAwO1xuICAgIHdpZHRoOiAwO1xufVxuXG4udG9kb0F0dGF0Y2htZW50cyB7XG4gICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgIHBhZGRpbmc6IHJlbS1jYWxjKDE1KTtcbiAgICBiYWNrZ3JvdW5kOiAjRjZGN0Y4O1xuXG4gICAgaDIsIGgzIHtcbiAgICAgICAgY29sb3I6ICM2ZjZmNmY7XG4gICAgfVxuXG4gICAgaSB7XG4gICAgICAgIGNvbG9yOiAjYzBjMmMzO1xuICAgIH1cblxuICAgIFt0eXBlPSdmaWxlJ10ge1xuICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KGxhcmdlKSB7XG4gICAgICAgICAgICB3aWR0aDogNDAlO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgaHIge1xuICAgICAgICBtYXJnaW46cmVtLWNhbGMoNSk7XG4gICAgfVxufVxuXG4uYmRtRmlsZVVwbG9hZHMge1xuICAgIG1heC1oZWlnaHQ6IHJlbS1jYWxjKDE0NSk7XG4gICAgb3ZlcmZsb3cteTogYXV0bztcblxuICAgIC5saW5rIHtcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogcmVtLWNhbGMoNCk7XG4gICAgICAgIGN1cnNvcjogcG9pbnRlcjtcblxuICAgICAgICAmOmhvdmVyIHtcbiAgICAgICAgICAgIGJhY2tncm91bmQ6ICNkNmQ4ZGE7XG4gICAgICAgIH1cbiAgICB9XG59XG5cbi5iZG1Mb2FkaW5nIHtcbiAgICBwb3NpdGlvbjogZml4ZWQ7XG4gICAgei1pbmRleDogOTk5OTk5OTk5OTtcbiAgICBoZWlnaHQ6IDJlbTtcbiAgICB3aWR0aDogMmVtO1xuICAgIG92ZXJmbG93OiB2aXNpYmxlO1xuICAgIG1hcmdpbjogYXV0bztcbiAgICB0b3A6IDA7XG4gICAgbGVmdDogMDtcbiAgICBib3R0b206IDA7XG4gICAgcmlnaHQ6IDA7XG59XG5cbi8qIFRyYW5zcGFyZW50IE92ZXJsYXkgKi9cbi5iZG1Mb2FkaW5nOmJlZm9yZSB7XG4gICAgY29udGVudDogJyc7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgcG9zaXRpb246IGZpeGVkO1xuICAgIHRvcDogMDtcbiAgICBsZWZ0OiAwO1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIGhlaWdodDogMTAwJTtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiByZ2JhKDAsMCwwLDAuMyk7XG59XG5cbi8qIDpub3QoOnJlcXVpcmVkKSBoaWRlcyB0aGVzZSBydWxlcyBmcm9tIElFOSBhbmQgYmVsb3cgKi9cbi5iZG1Mb2FkaW5nOm5vdCg6cmVxdWlyZWQpIHtcbiAgICAvKiBoaWRlIFwiYmRtTG9hZGluZy4uLlwiIHRleHQgKi9cbiAgICBmb250OiAwLzAgYTtcbiAgICBjb2xvcjogdHJhbnNwYXJlbnQ7XG4gICAgdGV4dC1zaGFkb3c6IG5vbmU7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gICAgYm9yZGVyOiAwO1xufVxuXG4uYmRtTG9hZGluZzpub3QoOnJlcXVpcmVkKTphZnRlciB7XG4gICAgY29udGVudDogJyc7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgZm9udC1zaXplOiAxMHB4O1xuICAgIHdpZHRoOiAxZW07XG4gICAgaGVpZ2h0OiAxZW07XG4gICAgbWFyZ2luLXRvcDogLTAuNWVtO1xuICAgIC13ZWJraXQtYW5pbWF0aW9uOiBzcGlubmVyIDE1MDBtcyBpbmZpbml0ZSBsaW5lYXI7XG4gICAgLW1vei1hbmltYXRpb246IHNwaW5uZXIgMTUwMG1zIGluZmluaXRlIGxpbmVhcjtcbiAgICAtbXMtYW5pbWF0aW9uOiBzcGlubmVyIDE1MDBtcyBpbmZpbml0ZSBsaW5lYXI7XG4gICAgLW8tYW5pbWF0aW9uOiBzcGlubmVyIDE1MDBtcyBpbmZpbml0ZSBsaW5lYXI7XG4gICAgYW5pbWF0aW9uOiBzcGlubmVyIDE1MDBtcyBpbmZpbml0ZSBsaW5lYXI7XG4gICAgYm9yZGVyLXJhZGl1czogMC41ZW07XG4gICAgLXdlYmtpdC1ib3gtc2hhZG93OiByZ2JhKDAsIDAsIDAsIDAuNzUpIDEuNWVtIDAgMCAwLCByZ2JhKDAsIDAsIDAsIDAuNzUpIDEuMWVtIDEuMWVtIDAgMCwgcmdiYSgwLCAwLCAwLCAwLjc1KSAwIDEuNWVtIDAgMCwgcmdiYSgwLCAwLCAwLCAwLjc1KSAtMS4xZW0gMS4xZW0gMCAwLCByZ2JhKDAsIDAsIDAsIDAuNSkgLTEuNWVtIDAgMCAwLCByZ2JhKDAsIDAsIDAsIDAuNSkgLTEuMWVtIC0xLjFlbSAwIDAsIHJnYmEoMCwgMCwgMCwgMC43NSkgMCAtMS41ZW0gMCAwLCByZ2JhKDAsIDAsIDAsIDAuNzUpIDEuMWVtIC0xLjFlbSAwIDA7XG4gICAgYm94LXNoYWRvdzogcmdiYSgwLCAwLCAwLCAwLjc1KSAxLjVlbSAwIDAgMCwgcmdiYSgwLCAwLCAwLCAwLjc1KSAxLjFlbSAxLjFlbSAwIDAsIHJnYmEoMCwgMCwgMCwgMC43NSkgMCAxLjVlbSAwIDAsIHJnYmEoMCwgMCwgMCwgMC43NSkgLTEuMWVtIDEuMWVtIDAgMCwgcmdiYSgwLCAwLCAwLCAwLjc1KSAtMS41ZW0gMCAwIDAsIHJnYmEoMCwgMCwgMCwgMC43NSkgLTEuMWVtIC0xLjFlbSAwIDAsIHJnYmEoMCwgMCwgMCwgMC43NSkgMCAtMS41ZW0gMCAwLCByZ2JhKDAsIDAsIDAsIDAuNzUpIDEuMWVtIC0xLjFlbSAwIDA7XG59XG5cbi8qIEFuaW1hdGlvbiAqL1xuXG5ALXdlYmtpdC1rZXlmcmFtZXMgc3Bpbm5lciB7XG4gICAgMCUge1xuICAgICAgICAtd2Via2l0LXRyYW5zZm9ybTogcm90YXRlKDBkZWcpO1xuICAgICAgICAtbW96LXRyYW5zZm9ybTogcm90YXRlKDBkZWcpO1xuICAgICAgICAtbXMtdHJhbnNmb3JtOiByb3RhdGUoMGRlZyk7XG4gICAgICAgIC1vLXRyYW5zZm9ybTogcm90YXRlKDBkZWcpO1xuICAgICAgICB0cmFuc2Zvcm06IHJvdGF0ZSgwZGVnKTtcbiAgICB9XG5cbiAgICAxMDAlIHtcbiAgICAgICAgLXdlYmtpdC10cmFuc2Zvcm06IHJvdGF0ZSgzNjBkZWcpO1xuICAgICAgICAtbW96LXRyYW5zZm9ybTogcm90YXRlKDM2MGRlZyk7XG4gICAgICAgIC1tcy10cmFuc2Zvcm06IHJvdGF0ZSgzNjBkZWcpO1xuICAgICAgICAtby10cmFuc2Zvcm06IHJvdGF0ZSgzNjBkZWcpO1xuICAgICAgICB0cmFuc2Zvcm06IHJvdGF0ZSgzNjBkZWcpO1xuICAgIH1cbn1cblxuQC1tb3ota2V5ZnJhbWVzIHNwaW5uZXIge1xuICAgIDAlIHtcbiAgICAgICAgLXdlYmtpdC10cmFuc2Zvcm06IHJvdGF0ZSgwZGVnKTtcbiAgICAgICAgLW1vei10cmFuc2Zvcm06IHJvdGF0ZSgwZGVnKTtcbiAgICAgICAgLW1zLXRyYW5zZm9ybTogcm90YXRlKDBkZWcpO1xuICAgICAgICAtby10cmFuc2Zvcm06IHJvdGF0ZSgwZGVnKTtcbiAgICAgICAgdHJhbnNmb3JtOiByb3RhdGUoMGRlZyk7XG4gICAgfVxuXG4gICAgMTAwJSB7XG4gICAgICAgIC13ZWJraXQtdHJhbnNmb3JtOiByb3RhdGUoMzYwZGVnKTtcbiAgICAgICAgLW1vei10cmFuc2Zvcm06IHJvdGF0ZSgzNjBkZWcpO1xuICAgICAgICAtbXMtdHJhbnNmb3JtOiByb3RhdGUoMzYwZGVnKTtcbiAgICAgICAgLW8tdHJhbnNmb3JtOiByb3RhdGUoMzYwZGVnKTtcbiAgICAgICAgdHJhbnNmb3JtOiByb3RhdGUoMzYwZGVnKTtcbiAgICB9XG59XG5cbkAtby1rZXlmcmFtZXMgc3Bpbm5lciB7XG4gICAgMCUge1xuICAgICAgICAtd2Via2l0LXRyYW5zZm9ybTogcm90YXRlKDBkZWcpO1xuICAgICAgICAtbW96LXRyYW5zZm9ybTogcm90YXRlKDBkZWcpO1xuICAgICAgICAtbXMtdHJhbnNmb3JtOiByb3RhdGUoMGRlZyk7XG4gICAgICAgIC1vLXRyYW5zZm9ybTogcm90YXRlKDBkZWcpO1xuICAgICAgICB0cmFuc2Zvcm06IHJvdGF0ZSgwZGVnKTtcbiAgICB9XG5cbiAgICAxMDAlIHtcbiAgICAgICAgLXdlYmtpdC10cmFuc2Zvcm06IHJvdGF0ZSgzNjBkZWcpO1xuICAgICAgICAtbW96LXRyYW5zZm9ybTogcm90YXRlKDM2MGRlZyk7XG4gICAgICAgIC1tcy10cmFuc2Zvcm06IHJvdGF0ZSgzNjBkZWcpO1xuICAgICAgICAtby10cmFuc2Zvcm06IHJvdGF0ZSgzNjBkZWcpO1xuICAgICAgICB0cmFuc2Zvcm06IHJvdGF0ZSgzNjBkZWcpO1xuICAgIH1cbn1cblxuQGtleWZyYW1lcyBzcGlubmVyIHtcbiAgICAwJSB7XG4gICAgICAgIC13ZWJraXQtdHJhbnNmb3JtOiByb3RhdGUoMGRlZyk7XG4gICAgICAgIC1tb3otdHJhbnNmb3JtOiByb3RhdGUoMGRlZyk7XG4gICAgICAgIC1tcy10cmFuc2Zvcm06IHJvdGF0ZSgwZGVnKTtcbiAgICAgICAgLW8tdHJhbnNmb3JtOiByb3RhdGUoMGRlZyk7XG4gICAgICAgIHRyYW5zZm9ybTogcm90YXRlKDBkZWcpO1xuICAgIH1cblxuICAgIDEwMCUge1xuICAgICAgICAtd2Via2l0LXRyYW5zZm9ybTogcm90YXRlKDM2MGRlZyk7XG4gICAgICAgIC1tb3otdHJhbnNmb3JtOiByb3RhdGUoMzYwZGVnKTtcbiAgICAgICAgLW1zLXRyYW5zZm9ybTogcm90YXRlKDM2MGRlZyk7XG4gICAgICAgIC1vLXRyYW5zZm9ybTogcm90YXRlKDM2MGRlZyk7XG4gICAgICAgIHRyYW5zZm9ybTogcm90YXRlKDM2MGRlZyk7XG4gICAgfVxufVxuXG4uYmRtU2VhcmNoIHtcbiAgICAuYmRtU2VhcmNoQ2xvc2Uge1xuICAgICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgICAgIHBhZGRpbmc6IHJlbS1jYWxjKDAgMyk7XG4gICAgICAgIGZsb2F0OiByaWdodDtcblxuICAgICAgICBpIHtcbiAgICAgICAgICAgIGNvbG9yOiAjRUZFRkY0O1xuICAgICAgICAgICAgY3Vyc29yOiBwb2ludGVyO1xuXG4gICAgICAgICAgICAmOmhvdmVyIHtcbiAgICAgICAgICAgICAgICBjb2xvcjogI2EyOWU5ZTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cblxuICAgIGgyIHtcbiAgICAgICAgcGFkZGluZy10b3A6cmVtLWNhbGMoNSk7XG4gICAgfVxuXG4gICAgLmhpZ2hsaWdodCB7XG4gICAgICAgIGJhY2tncm91bmQ6IHllbGxvdztcbiAgICB9XG5cbiAgICAuc2VhcmNoUmVzdWx0IHtcbiAgICAgICAgbWFyZ2luOiByZW0tY2FsYyg0IDApO1xuICAgICAgICBib3JkZXItYm90dG9tOiAxcHggc29saWQgJGxpZ2h0LWdyYXk7XG4gICAgICAgIGN1cnNvcjogcG9pbnRlcjtcbiAgICAgICAgcGFkZGluZzogcmVtLWNhbGMoNiA0KTtcblxuICAgICAgICBwIHtcbiAgICAgICAgICAgIG1hcmdpbjogMHB4O1xuICAgICAgICB9XG5cbiAgICAgICAgJjpob3ZlciB7XG4gICAgICAgICAgICBiYWNrZ3JvdW5kOiAjZTRlNGU0O1xuICAgICAgICB9XG4gICAgfVxufVxuXG4udG9kb0Zvcm0ge1xuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobGFyZ2UpIHtcbiAgICAgICAgbWF4LWhlaWdodDogcmVtLWNhbGMoNTAwKTtcbiAgICAgICAgb3ZlcmZsb3cteTogYXV0bztcblxuICAgICAgICB0aGVhZCB7XG4gICAgICAgICAgICBbY2xhc3N8PVwidG9kb1wiXSB7XG4gICAgICAgICAgICAgICAgbWluLWhlaWdodDogODVweDtcbiAgICAgICAgICAgICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgICAgICAgICAgIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICAgICAgICAgICAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cblxuICAgICAgICBbY2xhc3N8PVwidG9kb1wiXSB7XG4gICAgICAgICAgICBmbG9hdDogbGVmdDtcbiAgICAgICAgICAgIHdpZHRoOiA5LjA5JTtcbiAgICAgICAgICAgIC8vd2lkdGg6IGNhbGMoMTAwJSAvIDExKTsgLSBEb2Vzbid0IHdvcmsgcHJvcGVybHkgd2l0aCBJRVxuICAgICAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgICB9XG5cbiAgICAgICAgLnRvZG8tZGlyZWN0IHtcbiAgICAgICAgICAgIC8vd2lkdGg6IDcwcHg7XG4gICAgICAgIH1cblxuICAgICAgICAudG9kby1jb21tZW50cyB7XG4gICAgICAgICAgICB3aWR0aDogY2FsYygxMDAlIC0gMTQwcHggLSAzMnB4KTtcbiAgICAgICAgICAgIGJvcmRlci1ib3R0b206IDAgIWltcG9ydGFudDtcbiAgICAgICAgfVxuXG4gICAgICAgIC50b2RvLWR1cGxpY2F0ZSB7XG4gICAgICAgICAgICB3aWR0aDogMTQwcHg7XG5cbiAgICAgICAgICAgIC5idXR0b24ge1xuICAgICAgICAgICAgICAgIG1hcmdpbjogMDtcbiAgICAgICAgICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgICAgICAgICBoZWlnaHQ6IDEwMCU7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cblxuICAgICAgICAudG9kby1kZWxldGUge1xuICAgICAgICAgICAgd2lkdGg6IDMycHg7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAuY3Jvc3MtY29udGFpbiB7XG4gICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICB0ZXh0LWFsaWduOiBsZWZ0O1xuICAgICAgICBwYWRkaW5nOiAzMCUgMDtcbiAgICB9XG5cbiAgICB0YWJsZS5xdW90ZURldGFpbCB7XG4gICAgICAgIHRoZWFkIHtcbiAgICAgICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobGFyZ2UpIHtcbiAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiBsaWdodGVuKCRhY2NlbnQsIDIwJSk7XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIHRoIHtcbiAgICAgICAgICAgICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIHRyIHtcbiAgICAgICAgICAgICAgICBib3JkZXI6IHNvbGlkIDFweCBkYXJrZW4oI2UzZTNlNCwgMTUlKTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuXG4gICAgICAgIHRib2R5IHtcblxuICAgICAgICAgICAgdGQge1xuICAgICAgICAgICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobGFyZ2UpIHtcbiAgICAgICAgICAgICAgICAgICAgaGVpZ2h0OiA1MnB4O1xuICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgIGlucHV0LFxuICAgICAgICAgICAgICAgIHNlbGVjdCB7XG4gICAgICAgICAgICAgICAgICAgIG1hcmdpbjogMDtcbiAgICAgICAgICAgICAgICAgICAgdHJhbnNpdGlvbjogYmFja2dyb3VuZC1jb2xvciAuM3MgZWFzZS1pbi1vdXQ7XG5cbiAgICAgICAgICAgICAgICAgICAgJjo6cGxhY2hvbGRlciB7XG4gICAgICAgICAgICAgICAgICAgICAgICBjb2xvcjogYmxhY2s7XG4gICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICAuaW5wdXQtZXhwYW5kLXdyYXAge1xuICAgICAgICAgICAgICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG5cbiAgICAgICAgICAgICAgICAgICAgJi5leHBhbmRlZCB7XG4gICAgICAgICAgICAgICAgICAgICAgICBwb3NpdGlvbjogZml4ZWQ7XG4gICAgICAgICAgICAgICAgICAgICAgICB6LWluZGV4OiAyO1xuICAgICAgICAgICAgICAgICAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgICAgICAgICAgICAgICAgICBtYXgtd2lkdGg6IGNhbGMoOTIuODU3MTRyZW0gLSAxMCUpO1xuICAgICAgICAgICAgICAgICAgICAgICAgbGVmdDogNTAlO1xuICAgICAgICAgICAgICAgICAgICAgICAgdG9wOiAzMCU7XG4gICAgICAgICAgICAgICAgICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoLTUwJSk7XG5cblxuICAgICAgICAgICAgICAgICAgICAgICAgaW5wdXRbdHlwZT10ZXh0XSxcbiAgICAgICAgICAgICAgICAgICAgICAgIGlucHV0W3R5cGU9bnVtYmVyXSB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgLy93aWR0aDogNzAlO1xuICAgICAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgaW5wdXRbdHlwZT10ZXh0XSxcbiAgICAgICAgICAgICAgICBpbnB1dFt0eXBlPW51bWJlcl0ge1xuICAgICAgICAgICAgICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICAgICAgICAgICAgICAgIHRyYW5zaXRpb246IC4zcyBlYXNlLWluLW91dCBhbGw7XG5cbiAgICAgICAgICAgICAgICAgICAgJjpob3ZlciB7XG4gICAgICAgICAgICAgICAgICAgICAgICArIC5pbnB1dC1leHBhbmQtaWNvbiB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgICAgICArIC5pbnB1dC1leHBhbmQtaWNvbiB7XG4gICAgICAgICAgICAgICAgICAgICAgICBkaXNwbGF5OiBub25lO1xuICAgICAgICAgICAgICAgICAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICAgICAgICAgICAgICAgICAgcmlnaHQ6IDA7XG4gICAgICAgICAgICAgICAgICAgICAgICB0b3A6IDA7XG4gICAgICAgICAgICAgICAgICAgICAgICB6LWluZGV4OiAxO1xuICAgICAgICAgICAgICAgICAgICAgICAgZm9udC1zaXplOiAxMnB4O1xuXG4gICAgICAgICAgICAgICAgICAgICAgICAmOmhvdmVyIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBjdXJzb3I6IHBvaW50ZXI7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIHRyIHtcbiAgICAgICAgICAgICAgICBib3JkZXI6IHNvbGlkIDFweCBkYXJrZW4oI2UzZTNlNCwgMTUlKTtcbiAgICAgICAgICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG5cbiAgICAgICAgICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KGxhcmdlKSB7XG4gICAgICAgICAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6IGxpZ2h0ZW4oJGFjY2VudCwgMjAlKTtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobGFyZ2UpIHtcbiAgICAgICAgICAgICAgICAudG9kby1kZWxldGUge1xuICAgICAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjZmZmO1xuICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgIC50b2RvLWRpcmVjdCB7XG4gICAgICAgICAgICAgICAgICAgIHBhZGRpbmc6IDE2cHggNXB4O1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cblxuICAgIC5jYXQtcXVvdGVzIHtcbiAgICAgICAgYmFja2dyb3VuZDogI2UzZTNlNDtcbiAgICB9XG5cbiAgICB0aC5jYXQtcXVvdGVzLFxuICAgIHRkLmNhdC1xdW90ZXMge1xuICAgICAgICBib3JkZXItYm90dG9tOiBzb2xpZCAxcHggI2JjYmNiZTtcblxuICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KGxhcmdlKSB7XG4gICAgICAgICAgICBib3JkZXItcmlnaHQ6IG5vbmU7XG4gICAgICAgIH1cblxuICAgICAgICAmOm50aC1jaGlsZCgzKSB7XG4gICAgICAgICAgICBib3JkZXItYm90dG9tOiBzb2xpZCAzcHggI2JjYmNiZTtcblxuICAgICAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludChsYXJnZSkge1xuICAgICAgICAgICAgICAgIGJvcmRlci1yaWdodDogc29saWQgM3B4IGRhcmtlbigjZTNlM2U0LCAxNSUpO1xuICAgICAgICAgICAgICAgIGJvcmRlci1ib3R0b206IHNvbGlkIDFweCAjYmNiY2JlO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxuXG4gICAgLmNhdC1wcm8ge1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiBsaWdodGVuKCRhY2NlbnQsIDIwJSk7XG4gICAgfVxuXG4gICAgdGguY2F0LXBybyxcbiAgICB0ZC5jYXQtcHJvIHtcbiAgICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgICAgICBib3JkZXItYm90dG9tOiBzb2xpZCAxcHggI2JjYmNiZTtcblxuICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KGxhcmdlKSB7XG4gICAgICAgICAgICBib3JkZXItcmlnaHQ6IG5vbmU7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICB0ciAuZGVsZXRlLXJvdyB7XG4gICAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICAgICAgYm9yZGVyLWJvdHRvbTogc29saWQgNXB4ICNiY2JjYmU7XG5cbiAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludChsYXJnZSkge1xuICAgICAgICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgICAgICAgICAgYm9yZGVyLWJvdHRvbTogMCAhaW1wb3J0YW50O1xuICAgICAgICAgICAgcGFkZGluZzogMTVweCA1cHg7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICB0cjpsYXN0LWNoaWxkIC5kZWxldGUtcm93IHtcbiAgICAgICAgYm9yZGVyLWJvdHRvbTogc29saWQgMXB4ICNiY2JjYmU7XG4gICAgfVxuXG4gICAgLm1pc3NpbmctcmVxdWlyZWQge1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiBsaWdodGVuKCNjYzRiMzcsIDIwJSk7XG4gICAgICAgIGJvcmRlci1jb2xvcjogI2NjNGIzNztcblxuICAgICAgICAmOmZvY3VzIHtcbiAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6IGxpZ2h0ZW4oI2NjNGIzNywgMjAlKTtcbiAgICAgICAgICAgIGJvcmRlci1jb2xvcjogI2NjNGIzNyAhaW1wb3J0YW50O1xuICAgICAgICB9XG4gICAgfVxufVxuXG4ucmV2ZWFsLmZ1bGwge1xuICAgIHRvcDogMCAhaW1wb3J0YW50O1xuXG4gICAgLnJvdyB7XG4gICAgICAgIG1heC13aWR0aDogMTAwJTtcbiAgICB9XG5cbiAgICAudG9kb0Zvcm0ge1xuICAgICAgICBtYXgtaGVpZ2h0OiA4M3ZoO1xuICAgIH1cbn1cblxuaW5wdXRbaWQkPVwiZHVwbGljYXRlZFwiXSB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogbGlnaHRlbigkZ3JlZW4sIDMwJSk7XG5cbiAgICAmOmZvY3VzIHtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogbGlnaHRlbigkZ3JlZW4sIDMwJSk7XG4gICAgfVxufVxuXG4jZXhwYW5kZWQtb3ZlcmxheSB7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIGxlZnQ6IDA7XG4gICAgcmlnaHQ6IDA7XG4gICAgdG9wOiAwO1xuICAgIGJvdHRvbTogMDtcbiAgICB6LWluZGV4OiAxO1xuICAgIGJhY2tncm91bmQtY29sb3I6IHJnYmEoMTAsIDEwLCAxMCwgMC40NSk7XG4gICAgdmlzaWJpbGl0eTogaGlkZGVuO1xufVxuXG4ubGluZXMtd3JhcCB7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBqdXN0aWZ5LWNvbnRlbnQ6IGZsZXgtc3RhcnQ7XG4gICAgbWFyZ2luLWJvdHRvbTogMC41ZW07XG4gICAgXG4gICAgaDIge1xuICAgICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgfVxuXG4gICAgYnV0dG9uIHtcbiAgICAgICAgbWFyZ2luOiAwIDEwcHggMCBhdXRvO1xuICAgIH1cbn1cblxuLnF1aWNrLXZpZXctcG9wdXAge1xuICAgIG1hcmdpbi1ib3R0b206IDAuNWVtO1xuXG4gICAgLnF1aWNrLXZpZXctY29sdW1uIHtcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogMS41ZW07XG5cbiAgICAgICAgLypAaW5jbHVkZSBicmVha3BvaW50KG1lZGl1bSkge1xuICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogMDtcbiAgICAgICAgfSovXG4gICAgfVxufVxuXG4udHJ1bmNhdGVkLXN0cmluZyB7XG4gICAgdGV4dC1vdmVyZmxvdzogZWxsaXBzaXM7XG4gICAgd2hpdGUtc3BhY2U6IG5vd3JhcDtcbiAgICBvdmVyZmxvdzogaGlkZGVuO1xuICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICB3aWR0aDogMTAwJTtcbiAgICBsaW5lLWhlaWdodDogMWVtO1xufVxuXG4udGFzay10b2RvLWl0ZW0ge1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcblxuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobWVkaXVtKSB7XG4gICAgICAgIGZsZXgtZGlyZWN0aW9uOiByb3c7XG4gICAgfVxufVxuXG4udGFzay10b2RvLWl0ZW1fdGl0bGUsXG4udGFzay10b2RvLWl0ZW1faW5mbyxcbi50YXNrLXRvZG8taXRlbV9ncm91cCB7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgIHdpZHRoOiAxMDAlO1xuXG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludChtZWRpdW0pIHtcbiAgICAgICAgd2lkdGg6IDUwJTtcbiAgICB9XG59XG5cbi50YXNrLXRvZG8taXRlbV9ncm91cCB7XG4gICAgd2lkdGg6IDcwJTtcblxuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobWVkaXVtKSB7XG4gICAgICAgIHdpZHRoOiA2MCU7XG4gICAgfVxufVxuXG4udGFzay10b2RvLWl0ZW1fdGl0bGUge1xufVxuXG4udGFzay10b2RvLWl0ZW1faW5mbyB7XG4gICAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcbiAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbiAgICBhbGlnbi1pdGVtczogZmxleC1zdGFydFxufVxuXG4udG9kb1JvdyB7XG4gICAgJi50YXNrLXRvZG8taXRlbSB7XG4gICAgICAgIGZsZXgtZGlyZWN0aW9uOiByb3c7XG4gICAgfVxuXG4gICAgLnRhc2stdG9kby1pdGVtX3RpdGxlIHtcbiAgICAgICAgd2lkdGg6IDMwJTtcblxuICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KG1lZGl1bSkge1xuICAgICAgICAgICAgd2lkdGg6IDQwJTtcbiAgICAgICAgfVxuICAgIH1cblxuICAgIC50YXNrLXRvZG8taXRlbV9pbmZvIHtcbiAgICAgICAgd2lkdGg6IDgwJTtcbiAgICB9XG59XG5cbi50YXNrLXRvZG8taXRlbV9kdXBsaWNhdGUge1xuICAgIHdpZHRoOiAyMCU7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbiAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuXG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludChtZWRpdW0pIHtcbiAgICAgICAgd2lkdGg6IDEwJTtcbiAgICB9XG59Iiwi77u/LnNlYXJjaEF0dHJpYnV0ZXNDb2wge1xuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobWVkaXVtKSB7XG4gICAgICAgIEBpbmNsdWRlIGdyaWQtY29sdW1uKDQuMik7XG4gICAgfVxuICAgICBAaW5jbHVkZSBicmVha3BvaW50KGxhcmdlKSB7XG4gICAgICAgIEBpbmNsdWRlIGdyaWQtY29sdW1uKDIpO1xuICAgIH1cbn1cblxuLnJlc3VsdHNTZWN0aW9uIC5vZmYtY2FudmFzLmluLWNhbnZhcy1mb3ItbWVkaXVtIHtcbiAgICBAaW5jbHVkZSBicmVha3BvaW50KG1lZGl1bSkge1xuICAgICAgICBAaW5jbHVkZSBncmlkLWNvbHVtbig0LjIpO1xuICAgIH1cbiAgICBAaW5jbHVkZSBicmVha3BvaW50KGxhcmdlKSB7XG4gICAgICAgIEBpbmNsdWRlIGdyaWQtY29sdW1uKDIpO1xuICAgIH1cbiAgICBAaW5jbHVkZSBicmVha3BvaW50KHNtYWxsIGRvd24pIHtcbiAgICAgICAgei1pbmRleDogMjAwMDAwMDAwMDA7XG4gICAgICAgIGJhY2tncm91bmQ6IHdoaXRlO1xuICAgIH1cbn1cblxuLnNlYXJjaFJlc3VsdHNDb2wge1xuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoc21hbGwgZG93bikge1xuICAgICAgICBAaW5jbHVkZSBncmlkLWNvbHVtbigxMik7XG4gICAgfVxuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobWVkaXVtKSB7XG4gICAgICAgIEBpbmNsdWRlIGdyaWQtY29sdW1uKDcuOCk7XG4gICAgfVxuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobGFyZ2UpIHtcbiAgICAgICAgQGluY2x1ZGUgZ3JpZC1jb2x1bW4oMTApO1xuICAgIH1cbn0gXG5cbi5zZWFyY2hIZWFkaW5nIHtcbiAgICBwYWRkaW5nLXRvcDpyZW0tY2FsYygxMCk7XG4gICAgaDEge1xuICAgICAgICBmbG9hdDpsZWZ0O1xuICAgIH1cbn0iLCLvu790YWJsZS5jb21wYXJlVGFibGUge1xuICAgIHRkIHtcbiAgICAgICAgYm9yZGVyLWxlZnQ6MXB4IHNvbGlkICRsaWdodC1ncmF5O1xuICAgIH1cblxuICAgIHRyIHRkOm5vdCg6Zmlyc3QtY2hpbGQpIHtcbiAgICAgICAgbWF4LXdpZHRoOjIwMHB4O1xuICAgICAgICBtaW4td2lkdGg6MTUwcHg7XG4gICAgICAgIHRleHQtYWxpZ246Y2VudGVyO1xuICAgICAgICBhIHtcbiAgICAgICAgICAgIGNvbG9yOiRibGFjaztcbiAgICAgICAgfVxuICAgIH1cbiAgICB0ci5hbGlnblRvcCB7XG4gICAgICAgIHZlcnRpY2FsLWFsaWduOnRvcDtcbiAgICB9XG4gICAgdHIuYWxpZ25Cb3R0b20ge1xuICAgICAgICB2ZXJ0aWNhbC1hbGlnbjpib3R0b207XG4gICAgfVxuICAgIC5nZXRRdW90ZUxpbmsge1xuICAgICAgICBkaXNwbGF5Om5vbmU7XG4gICAgfVxuICAgIHVsIHtcbiAgICAgICAgbGlzdC1zdHlsZTpub25lO1xuICAgIH1cbn1cblxudGFibGUuY29tcGFyZVRhYmxlIHRyIHRkOmZpcnN0LWNoaWxkIHtcbiAgICBiYWNrZ3JvdW5kOiRsaWdodC1ncmF5O1xuICAgIGZvbnQtd2VpZ2h0OmJvbGQ7XG4gICAgbWF4LXdpZHRoOjEyMHB4O1xuICAgIHZlcnRpY2FsLWFsaWduOnRvcDtcbn1cblxudGFibGUuY29tcGFyZVRhYmxlIHRyIHRkIHRhYmxlLmxhcmdlUHJpY2VUYWJsZSB7XG4gICAgdGgge1xuICAgICAgICB0ZXh0LWFsaWduOmNlbnRlcjtcbiAgICB9XG4gICAgdGQge1xuICAgICAgICBtaW4td2lkdGg6YXV0bztcbiAgICAgICAgbWF4LXdpZHRoOmF1dG87XG4gICAgfVxufVxuXG50YWJsZS5jb21wYXJlVGFibGUgdHIgdGQgdGFibGUubGFyZ2VQcmljZVRhYmxlIHRib2R5IHRyIHRkOmZpcnN0LWNoaWxkIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOmluaGVyaXQ7XG4gICAgZm9udC13ZWlnaHQ6bm9ybWFsO1xufVxuXG4uY29tcGFyZU9wdGlvbnMge1xuICAgIHRleHQtYWxpZ246cmlnaHQ7XG4gICAgYSB7XG4gICAgICAgIGNvbG9yOiRibGFjaztcbiAgICAgICAgZm9udC1zaXplOnJlbS1jYWxjKDE2KTtcbiAgICB9XG59XG5cbkBtZWRpYSBwcmludCB7XG4gICAgdGFibGUuY29tcGFyZVRhYmxlIHRyIHRkOmZpcnN0LWNoaWxkIHtcbiAgICAgICAgZGlzcGxheTpub25lO1xuICAgIH1cblxuICAgIHRhYmxlLmNvbXBhcmVUYWJsZSB7XG4gICAgICAgIHRyIHRkIHtcbiAgICAgICAgICAgIHdpZHRoOjEyMHB4ICFpbXBvcnRhbnQ7XG4gICAgICAgICAgICBtYXgtd2lkdGg6MTIwcHggIWltcG9ydGFudDtcbiAgICAgICAgICAgIHBhZGRpbmc6cmVtLWNhbGMoNSk7XG4gICAgICAgIH1cbiAgICB9XG59Iiwi77u/LnNpZ25JbkxlZnQge1xuICAgIGJhY2tncm91bmQ6IHVybCgnLy9zdGF0aWMucmFwaWRvbmxpbmUuY29tL2ltZy9zaWduaW4vc2lnbmluLmpwZycpIG5vLXJlcGVhdDtcbiAgICBiYWNrZ3JvdW5kLXNpemU6Y292ZXI7XG4gICAgYmFja2dyb3VuZC1wb3NpdGlvbjp0b3AgcmlnaHQ7XG4gICAgcG9zaXRpb246cmVsYXRpdmU7XG4gICAgLnRydXN0cGlsb3Qtd2lkZ2V0IHtcbiAgICAgICAgcG9zaXRpb246IGFic29sdXRlIWltcG9ydGFudDtcbiAgICAgICAgYm90dG9tOiAwcHg7XG4gICAgICAgIGxlZnQ6IDBweDtcbiAgICAgICAgcmlnaHQ6IDBweDtcbiAgICAgICAgYmFja2dyb3VuZDogcmdiYSgwLDAsMCwwLjUpO1xuICAgICAgICBwYWRkaW5nOiAxMHB4IDA7XG4gICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoc21hbGwgb25seSkge1xuICAgICAgICAgICAgZGlzcGxheTpub25lO1xuICAgICAgICB9XG4gICAgfVxufVxuXG4uc2lnbkluUmlnaHQge1xuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobGFyZ2UpIHtcbiAgICAgICAgcGFkZGluZy1sZWZ0OnJlbS1jYWxjKDgwKTtcbiAgICAgICAgcGFkZGluZy1yaWdodDpyZW0tY2FsYyg4MCk7XG4gICAgfVxufVxuXG4uc2lnbkluR3JheVRleHQge1xuICAgIGNvbG9yOiRkYXJrLWdyYXk7XG59XG5cbi5zaWduSW5SZWdpc3Rlckxpbmsge1xuICAgIGNvbG9yOiRibGFjaztcbiAgICBmb250LXNpemU6cmVtLWNhbGMoMTUpO1xuICAgICY6aG92ZXIge1xuICAgICAgICBjb2xvcjppbmhlcml0O1xuICAgICAgICB0ZXh0LWRlY29yYXRpb246dW5kZXJsaW5lO1xuICAgICAgICB0ZXh0LWRlY29yYXRpb24tY29sb3I6JGJsYWNrO1xuICAgIH1cbn1cblxuLnJlZ2lzdGVyQmVuZWZpdHMge1xuICAgIGJhY2tncm91bmQ6JG9mZi1ibGFjaztcbiAgICBwYWRkaW5nOnJlbS1jYWxjKDE1KTtcbiAgICBoMyB7XG4gICAgICAgIGNvbG9yOiR3aGl0ZTtcbiAgICB9XG4gICAgc3BhbiB7XG4gICAgICAgIGNvbG9yOiR3aGl0ZTtcbiAgICAgICAgZGlzcGxheTpibG9jaztcbiAgICAgICAgaSB7XG4gICAgICAgICAgICBjb2xvcjokd2hpdGU7XG4gICAgICAgIH1cbiAgICB9XG59Iiwi77u/LmJyYW5kSXRlbSB7XG4gICAgdGV4dC1hbGlnbjpjZW50ZXI7XG4gICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobWVkaXVtKSB7XG4gICAgICAgIG1hcmdpbi1ib3R0b206cmVtLWNhbGMoMjApO1xuICAgICAgICBtYXJnaW4tdG9wOnJlbS1jYWxjKDIwKTtcbiAgICB9XG4gICAgIGltZyB7XG4gICAgICAgICBtYXJnaW4tYm90dG9tOnJlbS1jYWxjKDEwKTtcbiAgICAgfVxuICAgICBhIHtcbiAgICAgICAgIGNvbG9yOiRkYXJrLWdyYXk7XG4gICAgICAgICBkaXNwbGF5OmlubGluZS1ibG9jaztcbiAgICAgICAgICY6aG92ZXIge1xuICAgICAgICAgICAgIGNvbG9yOiRibGFjaztcbiAgICAgICAgIH1cbiAgICAgfVxuICAgICBoMyB7XG4gICAgICAgICBmb250LXdlaWdodDpub3JtYWw7XG4gICAgIH1cbn1cblxuLmJyYW5kc0hlYWRpbmcge1xuICAgIGZvbnQtc2l6ZToxLjI4cmVtO1xufVxuXG51bC5icmFuZE5hdiB7XG4gICAgbWFyZ2luLWxlZnQ6IDA7XG4gICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgIG1hcmdpbjogcmVtLWNhbGMoMTUgMCAxMCAwKTtcbiAgICAmOjpiZWZvcmUge1xuICAgICAgICBkaXNwbGF5OiB0YWJsZTtcbiAgICAgICAgY29udGVudDogJyAnO1xuICAgIH1cbiAgICAmOjphZnRlciB7XG4gICAgICAgIGRpc3BsYXk6IHRhYmxlO1xuICAgICAgICBjb250ZW50OiAnICc7XG4gICAgfVxuICAgIGxpIHtcbiAgICAgICAgZGlzcGxheTppbmxpbmUtYmxvY2s7XG4gICAgICAgIG1hcmdpbi1yaWdodDogLjA3MTQzcmVtO1xuICAgICAgICBtYXJnaW4tYm90dG9tOnJlbS1jYWxjKDEwKTtcbiAgICAgICAgZm9udC1zaXplOiAxcmVtO1xuICAgICAgICBhIHtcbiAgICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICAgICAgY29sb3I6ICMwYTBhMGE7XG4gICAgICAgICAgICBiYWNrZ3JvdW5kOiAkbGlnaHQtZ3JheTtcbiAgICAgICAgICAgIHBhZGRpbmc6IHJlbS1jYWxjKDYgMTQpO1xuICAgICAgICAgICAgJjpob3ZlciB7XG4gICAgICAgICAgICAgICAgYmFja2dyb3VuZDogJGFjY2VudDtcbiAgICAgICAgICAgICAgICBjb2xvcjokd2hpdGU7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG59XG5cbiIsIi5xdW90ZUl0ZW0ge1xuICAgIGJvcmRlci1ib3R0b206MXB4IHNvbGlkICRsaWdodC1ncmF5O1xuICAgIG1hcmdpbi1ib3R0b206cmVtLWNhbGMoMTApO1xuICAgIGgzIHtcbiAgICAgICAgY29sb3I6JGJsYWNrOyBcbiAgICB9XG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludChzbWFsbCBvbmx5KSB7XG4gICAgICAgIHRleHQtYWxpZ246Y2VudGVyOyBcbiAgICAgICAgbGFiZWwubWlkZGxlIHtcbiAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IHJlbS1jYWxjKDUpO1xuICAgICAgICB9XG4gICAgfVxufVxuXG4uc21hbGxRdW90ZUltZ0NvbnRhaW5lciB7XG4gICAgdGV4dC1hbGlnbjpjZW50ZXI7XG4gICAgbWFyZ2luOjAgYXV0bztcbiAgICBwb3NpdGlvbjpyZWxhdGl2ZTsgXG4gICAgaW1nIHtcbiAgICAgICAgbWF4LXdpZHRoOjExMHB4OyBcbiAgICB9XG59XG5cbi5zbWFsbFF1b3RlU3RvY2tNZXNzYWdlIHtcbiAgICBmb250LXdlaWdodDpib2xkO1xuICAgIHRleHQtYWxpZ246cmlnaHQ7XG4gICAgZm9udC1zaXplOnJlbS1jYWxjKDE0cHgpOyBcbiAgICBAaW5jbHVkZSBicmVha3BvaW50KHNtYWxsIG9ubHkpIHtcbiAgICAgICAgbWFyZ2luLWJvdHRvbTpyZW0tY2FsYygxNik7XG4gICAgfSBcbn1cblxudWwucXVvdGVzU2VydmljZXMge1xuICAgIG1hcmdpbi1sZWZ0OnJlbS1jYWxjKDI1KTtcbiAgICBsaSB7XG4gICAgICAgIHBhZGRpbmctdG9wOnJlbS1jYWxjKDUpO1xuICAgICAgICBwYWRkaW5nLWJvdHRvbTpyZW0tY2FsYyg1KTtcbiAgICB9XG59XG5cbi5xdW90ZXNUZWFtSW5mbyBoMyB7XG4gICAgbWFyZ2luLWJvdHRvbToxNXB4O1xufVxuXG4udmlkZW9Db2wgLnJlc3BvbnNpdmUtZW1iZWQge1xuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobWVkaXVtKSB7XG4gICAgICAgIG1hcmdpbi10b3A6cmVtLWNhbGMoNzApO1xuICAgIH0gXG59XG4iLCLvu78uYmFza2V0UGFnZSB7XG4gICAgcGFkZGluZy10b3A6cmVtLWNhbGMoMTApO1xufVxuLmJhc2tldE9wdGlvbnMge1xuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobWVkaXVtKSB7XG4gICAgICAgIHBhZGRpbmctdG9wOiByZW0tY2FsYygzMCk7XG4gICAgfVxuXG4gICAgYSB7XG4gICAgICAgIG1hcmdpbi1sZWZ0OiByZW0tY2FsYyg1KTtcbiAgICAgICAgbWFyZ2luLXJpZ2h0OiByZW0tY2FsYyg1KTtcbiAgICAgICAgY29sb3I6JGJsYWNrO1xuICAgIH1cbn1cblxuLnByb21vQ29kZUxpbmUge1xuICAgIGRpc3BsYXk6aW5saW5lLWJsb2NrO1xufVxuXG4uYmFza2V0QWRkcmVzc09wdGlvbnMge1xuICAgIHBvc2l0aW9uOmFic29sdXRlO1xuICAgIGJvdHRvbTowO1xuICAgIGEge1xuICAgICAgICBtYXJnaW4tYm90dG9tOjA7XG4gICAgfVxuICAgIHNlbGVjdCB7XG4gICAgICAgIG1hcmdpbi1ib3R0b206MDtcbiAgICB9XG59XG5cbi5iYXNrZXRBZHJlc3NCbG9jayB7XG4gICAgcGFkZGluZy1ib3R0b206IDUwcHg7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xufVxuXG4uYmFza2V0Q2hlY2tIZWFkaW5nIHtcbiAgICBmb250LXNpemU6cmVtLWNhbGMoMTYpO1xuICAgIGZvbnQtd2VpZ2h0OmJvbGQ7XG59XG5cbi5wYXltZW50T3B0aW9ucyB7XG4gICAgLmNvbHVtbnMge1xuICAgICAgICBwYWRkaW5nLWJvdHRvbTogcmVtLWNhbGMoMTUpO1xuICAgIH1cblxuICAgIGxhYmVsID4gW3R5cGU9cmFkaW9dIHtcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogMDtcbiAgICAgICAgbWFyZ2luLXRvcDogMTBweDtcbiAgICB9XG59XG5cbi5wYXlwYWxsb2dvLmRpc2FibGVkIHtcbiAgICBvcGFjaXR5OiAuNTtcbiAgICBjdXJzb3I6IG5vdC1hbGxvd2VkO1xufVxuXG4uaG9yaXpvbnRhbFJlbGF0ZWRQcm9kdWN0cyB7XG4gICAgLnByb2R1Y3RXaWRnZXQgbGkge1xuICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KG1lZGl1bSkge1xuICAgICAgICAgICAgZmxvYXQ6IGxlZnQ7XG4gICAgICAgICAgICB3aWR0aDogMjAlO1xuICAgICAgICAgICAgYm9yZGVyOiBub25lO1xuICAgICAgICAgICAgY2xlYXI6IG5vbmU7XG5cbiAgICAgICAgICAgICYud2lkZ2V0SGVhZGVyIHtcbiAgICAgICAgICAgICAgICBwYWRkaW5nOiA1cHggIWltcG9ydGFudDtcbiAgICAgICAgICAgICAgICB0ZXh0LWFsaWduOiBsZWZ0O1xuICAgICAgICAgICAgICAgIHdpZHRoOiBhdXRvO1xuICAgICAgICAgICAgICAgIGZsb2F0OiBub25lO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxufVxuXG4jUGF5bWVudEJ1dHRvbiB7XG4gICAgc3BhbiB7XG4gICAgICAgIGRpc3BsYXk6YmxvY2s7XG4gICAgICAgIGZvbnQtc2l6ZTpyZW0tY2FsYygyMCk7XG4gICAgfVxufSIsIu+7vy5wYXN0ZUFyZWEge1xuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoc21hbGwgb25seSkge1xuICAgICAgICBtYXJnaW4tdG9wOiByZW0tY2FsYygxMCk7XG4gICAgfVxufSIsIi5pbnB1dC1ncm91cC1sYWJlbC51bml0LWxhYmVsIHtcbiAgICBib3JkZXI6IG5vbmU7XG4gICAgYmFja2dyb3VuZDogbm9uZTtcbn0iLCLvu78vKiBDdXN0b21pemUgdGhlIGxhYmVsICh0aGUgY29udGFpbmVyKSAqL1xuLnJhZGlvLWNvbnRhaW5lciB7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIHBhZGRpbmctbGVmdDogMzVweDtcbiAgICBtYXJnaW4tYm90dG9tOiAxMnB4O1xuICAgIGN1cnNvcjogcG9pbnRlcjtcbiAgICBmb250LXNpemU6IDE2cHg7XG4gICAgLXdlYmtpdC11c2VyLXNlbGVjdDogbm9uZTtcbiAgICAtbW96LXVzZXItc2VsZWN0OiBub25lO1xuICAgIC1tcy11c2VyLXNlbGVjdDogbm9uZTtcbiAgICB1c2VyLXNlbGVjdDogbm9uZTtcbn1cblxuLyogSGlkZSB0aGUgYnJvd3NlcidzIGRlZmF1bHQgcmFkaW8gYnV0dG9uICovXG4ucmFkaW8tY29udGFpbmVyIGlucHV0IHtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgb3BhY2l0eTogMDtcbiAgICBjdXJzb3I6IHBvaW50ZXI7XG4gICAgaGVpZ2h0OiAwO1xuICAgIHdpZHRoOiAwO1xufVxuXG4vKiBDcmVhdGUgYSBjdXN0b20gcmFkaW8gYnV0dG9uICovXG4uY2hlY2ttYXJrIHtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgdG9wOiAwO1xuICAgIGxlZnQ6IDA7XG4gICAgaGVpZ2h0OiAyMHB4O1xuICAgIHdpZHRoOiAyMHB4O1xuICAgIGJhY2tncm91bmQtY29sb3I6ICNlZWU7XG4gICAgYm9yZGVyLXJhZGl1czogMjUlO1xufVxuXG4vKiBPbiBtb3VzZS1vdmVyLCBhZGQgYSBncmV5IGJhY2tncm91bmQgY29sb3IgKi9cbi5yYWRpby1jb250YWluZXI6aG92ZXIgaW5wdXQgfiAuY2hlY2ttYXJrIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjY2NjO1xufVxuXG4vKiBXaGVuIHRoZSByYWRpbyBidXR0b24gaXMgY2hlY2tlZCwgYWRkIGEgYmx1ZSBiYWNrZ3JvdW5kICovXG4ucmFkaW8tY29udGFpbmVyIGlucHV0OmNoZWNrZWQgfiAuY2hlY2ttYXJrIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiBkYXJrb3JhbmdlO1xufVxuXG4vKiBDcmVhdGUgdGhlIGluZGljYXRvciAodGhlIGRvdC9jaXJjbGUgLSBoaWRkZW4gd2hlbiBub3QgY2hlY2tlZCkgKi9cbi5jaGVja21hcms6YWZ0ZXIge1xuICAgIGNvbnRlbnQ6IFwiXCI7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIGRpc3BsYXk6IG5vbmU7XG59XG5cbi8qIFNob3cgdGhlIGluZGljYXRvciAoZG90L2NpcmNsZSkgd2hlbiBjaGVja2VkICovXG4ucmFkaW8tY29udGFpbmVyIGlucHV0OmNoZWNrZWQgfiAuY2hlY2ttYXJrOmFmdGVyIHtcbiAgICBkaXNwbGF5OiBibG9jaztcbn1cblxuLyogU3R5bGUgdGhlIGluZGljYXRvciAoZG90L2NpcmNsZSkgKi9cbi5yYWRpby1jb250YWluZXIgLmNoZWNrbWFyazphZnRlciB7XG4gICAgdG9wOiA2cHg7XG4gICAgbGVmdDogNnB4O1xuICAgIHdpZHRoOiA4cHg7XG4gICAgaGVpZ2h0OiA4cHg7XG4gICAgYm9yZGVyLXJhZGl1czogNTAlO1xuICAgIGJhY2tncm91bmQ6IHdoaXRlO1xufVxuIiwiLypMb2dvKi9cbi5yYXBpZExvZ28ge1xuICAgIEBpbmNsdWRlIHNwcml0ZS1yYXBpZGxvZ29zbWFsbCgpO1xufVxuXG5AbWVkaWEgc2NyZWVuIGFuZCAje2JyZWFrcG9pbnQobGFyZ2UpfSB7IFxuICAgIC5yYXBpZExvZ28ge1xuICAgICAgICBAaW5jbHVkZSBzcHJpdGUtcmFwaWRsb2dvOyAgICAgIFxuICAgIH1cbiAgICAgXG59XG5cbi8qRW5kIExvZ28qL1xuIiwiLmhvbWUzQ29sIHtcbiAgICBiYWNrZ3JvdW5kOiAjRUVFO1xuICAgIG1hcmdpbi10b3A6IHJlbS1jYWxjKDEwKTtcbiAgICBtYXJnaW4tYm90dG9tOiByZW0tY2FsYygyMCk7XG5cbiAgICAuaG9tZTNDb2xTZWN0aW9uIHtcbiAgICAgICAgcGFkZGluZzogcmVtLWNhbGMoMTUgMzApO1xuICAgICAgICBtYXJnaW46IHJlbS1jYWxjKDE1IDApO1xuICAgICAgICBiYWNrZ3JvdW5kOiAkd2hpdGU7XG5cbiAgICAgICAgJi5wdW5jaG91dC1jb250YWN0IHtcbiAgICAgICAgICAgIHBhZGRpbmctbGVmdDogMXJlbTtcbiAgICAgICAgICAgIHBhZGRpbmctcmlnaHQ6IDFyZW07XG4gICAgICAgIH1cblxuICAgICAgICAucHVuY2hvdXRfY29udGFjdHMtd3JhcCB7XG4gICAgICAgICAgICAucHVuY2hvdXRfY29udGFjdHMtaXRlbSB7XG4gICAgICAgICAgICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgICAgICAgICAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuICAgICAgICAgICAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAgICAgICAgICAgICAgbWFyZ2luLXRvcDogMXJlbTtcblxuICAgICAgICAgICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobGFyZ2UpIHtcbiAgICAgICAgICAgICAgICAgICAgZmxleC1kaXJlY3Rpb246IHJvdztcbiAgICAgICAgICAgICAgICAgICAgYWxpZ24taXRlbXM6IGZsZXgtc3RhcnQ7XG4gICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgLnB1bmNob3V0X2NvbnRhY3QtaW1nIHtcbiAgICAgICAgICAgICAgICAgICAgd2lkdGg6IDUwJTtcblxuICAgICAgICAgICAgICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KGxhcmdlKSB7XG4gICAgICAgICAgICAgICAgICAgICAgICB3aWR0aDogMzUlO1xuICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgLnB1bmNob3V0X2NvbnRhY3QtZGV0YWlscyB7XG4gICAgICAgICAgICAgICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICAgICAgICAgICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgICAgICAgICAgICAgICAgIG1hcmdpbi10b3A6IDFyZW07XG5cbiAgICAgICAgICAgICAgICAgICAgLmdyZXktdGV4dCB7XG4gICAgICAgICAgICAgICAgICAgICAgICBmb250LXdlaWdodDogYm9sZGVyO1xuICAgICAgICAgICAgICAgICAgICAgICAgLy8gZm9udC1zaXplOiAuOWVtO1xuICAgICAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludChsYXJnZSkge1xuICAgICAgICAgICAgICAgICAgICAgICAgdGV4dC1hbGlnbjogbGVmdDtcbiAgICAgICAgICAgICAgICAgICAgICAgIG1hcmdpbi10b3A6IDA7XG4gICAgICAgICAgICAgICAgICAgICAgICBtYXJnaW4tbGVmdDogMXJlbTtcbiAgICAgICAgICAgICAgICAgICAgICAgIHdpZHRoOiBjYWxjKDY1JSAtIDFyZW0pO1xuICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICB9XG5cbiAgICB9XG5cbiAgICB1bCB7XG4gICAgICAgIGxpc3Qtc3R5bGUtdHlwZTogbm9uZTtcblxuICAgICAgICBsaSB7XG4gICAgICAgICAgICBmb250LXdlaWdodDogNzAwO1xuICAgICAgICAgICAgcGFkZGluZzogMTBweCAwO1xuICAgICAgICAgICAgbWFyZ2luOiAyMHB4IDA7XG4gICAgICAgICAgICBmb250LXNpemU6IDE1cHg7XG4gICAgICAgICAgICBsaW5lLWhlaWdodDogMjBweDtcbiAgICAgICAgICAgIGNvbG9yOiAjMDAwO1xuICAgICAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgIH1cblxuICAgICAgICBhIHtcbiAgICAgICAgICAgIGNvbG9yOiAjMDAwO1xuICAgICAgICAgICAgZm9udC1zaXplOiAxNXB4O1xuICAgICAgICAgICAgbGluZS1oZWlnaHQ6IDIwcHg7XG4gICAgICAgIH1cbiAgICB9XG59XG5cblxudWwucmFwaWRCZW5lZml0cyB7XG4gICAgbWFyZ2luLWxlZnQ6IDNweDtcblxuICAgIGxpIHtcblxuICAgICAgICAmOmJlZm9yZSB7XG4gICAgICAgICAgICBmb250LWZhbWlseTogRm9udEF3ZXNvbWU7XG4gICAgICAgICAgICBtYXJnaW46IDAgM3B4IDAgLTJweDtcbiAgICAgICAgICAgIGNvbnRlbnQ6IFwiXFxmMDBjXCI7XG4gICAgICAgICAgICBjb2xvcjogIzA2M2M3YztcbiAgICAgICAgfVxuICAgIH1cbn1cblxuLmJsYWNrTGFyZ2VIZWFkaW5nSDEge1xuICAgIG1hcmdpbi10b3A6IHJlbS1jYWxjKDEwKTtcbiAgICBiYWNrZ3JvdW5kOiAjMzEzMTMxO1xuICAgIHBhZGRpbmc6IHJlbS1jYWxjKDE1KTtcbiAgICBib3JkZXItcmFkaXVzOiA0cHg7XG4gICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgIGNvbG9yOiAkd2hpdGU7XG5cbiAgICBhIHtcbiAgICAgICAgY29sb3I6ICR3aGl0ZTtcblxuICAgICAgICAmOmhvdmVyIHtcbiAgICAgICAgICAgIHRleHQtZGVjb3JhdGlvbjogdW5kZXJsaW5lO1xuICAgICAgICB9XG4gICAgfVxufVxuXG4uYmxhY2tMYXJnZUhlYWRpbmcge1xuICAgIGNvbG9yOiAjMDAwO1xuICAgIG1hcmdpbjogNXB4O1xuICAgIGxpbmUtaGVpZ2h0OiAyNHB4O1xuICAgIGZvbnQtc2l6ZTogMjBweDtcbiAgICBmb250LXdlaWdodDogNzAwO1xuICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbn1cblxudGFibGUucXVpY2tPcmRlcldpZGdldCB7XG4gICAgdGFibGUtbGF5b3V0OiBmaXhlZDtcblxuICAgIHRib2R5LCB0Zm9vdCwgdGhlYWQge1xuICAgICAgICBib3JkZXI6IG5vbmU7XG4gICAgICAgIGJhY2tncm91bmQ6IG5vbmU7XG4gICAgfVxuXG4gICAgdGJvZHkgdHIge1xuICAgICAgICBib3JkZXItYm90dG9tOiAwO1xuICAgIH1cblxuICAgIHRyIHRkOmZpcnN0LWNoaWxkIHtcbiAgICAgICAgd2lkdGg6IDYwJTtcblxuICAgICAgICBpbnB1dCB7XG4gICAgICAgICAgICB3aWR0aDogOTAlO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgdGQge1xuICAgICAgICBwYWRkaW5nOiAwcHg7XG5cbiAgICAgICAgaW5wdXQge1xuICAgICAgICAgICAgYm9yZGVyOiAxcHggc29saWQgI2NjYztcbiAgICAgICAgICAgIHBhZGRpbmc6IDVweDtcbiAgICAgICAgICAgIGZvbnQtc2l6ZTogMTRweDtcbiAgICAgICAgICAgIGxpbmUtaGVpZ2h0OiAxNnB4O1xuICAgICAgICB9XG4gICAgfVxufVxuXG4uaG9tZU5ld3NTZWN0aW9uIHtcbiAgICBAaW5jbHVkZSBicmVha3BvaW50KG1lZGl1bSkge1xuICAgICAgICBib3JkZXItcmlnaHQ6IDFweCBzb2xpZCAkbGlnaHQtZ3JheTtcbiAgICB9XG5cbiAgICBpbWcge1xuICAgICAgICBtYXJnaW4tYm90dG9tOiByZW0tY2FsYygxMCk7XG4gICAgICAgIG1hcmdpbi10b3A6IHJlbS1jYWxjKDUpO1xuICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICB9XG59XG5cbi5zZWN0aW9uSGVhZGVyIHtcbiAgICBtYXJnaW4tdG9wOnJlbS1jYWxjKDE1KTtcbiAgICBhIHtcbiAgICAgICAgY29sb3I6IGJsYWNrO1xuICAgIH1cbn1cblxuLmhvbWUyQ29sIHtcbiAgICBpbWcge1xuICAgICAgICB3aWR0aDoxMDAlO1xuICAgIH1cbn1cblxuLmhvbWUtcmlnaHRBZHZlcnRzIHtcbiAgICBhIHtcbiAgICAgICAgZGlzcGxheTpibG9jaztcbiAgICAgICAgJjpmaXJzdC1jaGlsZCB7XG4gICAgICAgICAgICBtYXJnaW4tYm90dG9tOnJlbS1jYWxjKDIwKTtcbiAgICAgICAgfVxuICAgIH1cbn0iXX0= */
