/*!****************************************************************************************************************************************************************************************************************************************************************************************************************!*\
  !*** css ./node_modules/@symfony/webpack-encore/node_modules/css-loader/dist/cjs.js??ruleSet[1].rules[4].oneOf[1].use[1]!./node_modules/resolve-url-loader/index.js??ruleSet[1].rules[4].oneOf[1].use[2]!./node_modules/sass-loader/dist/cjs.js??ruleSet[1].rules[4].oneOf[1].use[3]!./assets/scss/login.scss ***!
  \****************************************************************************************************************************************************************************************************************************************************************************************************************/
@import url(https://fonts.googleapis.com/css?family=Roboto:300,400,500,700,900);
/*!********************************************************************************************************************************************************************************************************************************************************************************************************************!*\
  !*** css ./node_modules/@symfony/webpack-encore/node_modules/css-loader/dist/cjs.js??ruleSet[1].rules[4].oneOf[1].use[1]!./node_modules/resolve-url-loader/index.js??ruleSet[1].rules[4].oneOf[1].use[2]!./node_modules/sass-loader/dist/cjs.js??ruleSet[1].rules[4].oneOf[1].use[3]!./assets/scss/login.scss (1) ***!
  \********************************************************************************************************************************************************************************************************************************************************************************************************************/
/* Theme IMPORTS
========================================================================== */
/* #BOOTSTRAP AND MIXINS - Base Unmodified Bootstrap file with theme mixins
========================================================================== */
/*---------------------------------------------------
    SASS ELements (based on LESS Elements 0.9 http://lesselements.com) 
  -------------------------------- -------------------
    LESS ELEMENTS made by Dmitry Fadeyev (http://fadeyev.net)
    SASS port by Samuel Beek (http://samuelbeek.com) 
  ---------------------------------------------------*/
/*------------------------
    Usage

    h1 {
      font-size: rem(32);
    }

    OR:

    h1 {
      font-size: rem(32px);
    }
------------------------*/
/*------------------------
  FADE IN
  e.g. @include fadeIn( 2s );
------------------------*/
/*------------------------
mixin that calculates if text needs to be light or dark
depending on the background color passed.

From this W3C document: http://www.webmasterworld.com/r.cgi?f=88&d=9769&url=http://www.w3.org/TR/AERT#color-contrast

usage:
@include text-contrast($bgcolor)

Color brightness is determined by the following formula: 
((Red value X 299) + (Green value X 587) + (Blue value X 114)) / 1000
------------------------*/
/*------------------------
 color factory 
  eg: @include paint($blue-grey-50, bg-blue-grey-50);
------------------------*/
/* backface visibility */
/* generate theme button */
/* #BASE - Base Variable file along with font library, and colors.
========================================================================== */
/*  THEME COLORs
========================================================================== */
/* Looks good on chrome default color profile */
/* #THEME COLOR (variable overrides)
========================================================================== */
/* #GLOBAL IMPORTS
========================================================================== */
/* #Reset userselect
========================================================================== */
#myapp-0 {
  box-shadow: none !important;
}

#myapp-12 {
  box-shadow: 0 0 0 3px #000000;
}

/* looks good in sRGB but washed up on chrome default
$color-primary:						#826bb0;
$color-success:						#31cb55;
$color-info:						#5e93ec;
$color-warning:						#eec559;
$color-danger:						#dc4b92;
$color-fusion:						darken(desaturate(adjust-hue($color-primary, 5), 80%), 25%); */
/*  Color Polarity
========================================================================== */
/*  PAINTBUCKET MIXER
========================================================================== */
/* the grays */
/* the sapphires */
/* the emeralds */
/* the amethyths */
/* the topaz */
/* the rubies */
/* the graphites */
/* the emeralds */
/* the amethyths */
/* the topaz */
/* the rubies */
/*  Define universal border difition (div outlines, etc)
========================================================================== */
/*  MOBILE BREAKPOINT & GUTTERS (contains some bootstrap responsive overrides)
========================================================================== */
/* define when mobile menu activates, here we are declearing (lg) so it targets the one after it */
/* bootstrap reference xs: 0,  sm: 544px, md: 768px, lg: 992px, xl: 1200px*/
/* global var used for spacing*/
/* Uniform Padding variable */
/* Heads up! This is a global scoped variable - changing may impact the whole template */
/*   BOOTSTRAP OVERRIDES (bootstrap variables)
========================================================================== */
/* usage: theme-colors("primary"); */
/* forms */
/*$input-height:							calc(2.25rem + 1px); //I had to add this because the input gruops was having improper height for some reason... */
/* links */
/* checkbox */
/*$custom-file-height-inner:				calc(2.25rem - 1px);*/
/* not part of bootstrap variable */
/* custom checkbox */
/* custom range */
/* select */
/* badge */
/* cards */
/*border radius*/
/* alert */
/* toast */
/* breadcrumb */
/* input button */
/* nav link */
/* nav, tabs, pills */
/* tables */
/* dropdowns */
/* dropdowns sizes */
/* popovers */
/* tooltips */
/* modal */
/* reference guide
http://www.standardista.com/px-to-rem-conversion-if-root-font-size-is-16px/
8px = 0.5rem
9px = 0.5625rem
10px = 0.625rem
11px = 0.6875rem
12px = 0.75rem
13px = 0.8125rem
14px = 0.875rem
15px = 0.9375rem
16px = 1rem (base)
17px = 1.0625rem
18px = 1.125rem
19px = 1.1875rem
20px = 1.25rem
21px = 1.3125rem
22px = 1.375rem
24px = 1.5rem
25px = 1.5625rem
26px = 1.625rem
28px = 1.75rem
30px = 1.875rem
32px = 2rem
34px = 2.125rem
36px = 2.25rem
38px = 2.375rem
40px = 2.5rem
*/
/* Fonts */
/* carousel */
/*  BASE VARS
========================================================================== */
/* font vars below will auto change to rem values using function rem($value)*/
/* 11px   */
/* 12px   */
/* 12.5px */
/* 14px   */
/* 15px   */
/* 16px   */
/* 28px   */
/*  Font Family
========================================================================== */
/*hint: you can also try the font called 'Poppins' by replacing the font 'Roboto' */
/*  ANIMATIONS
========================================================================== */
/* this addresses all animation related to nav hide to nav minify */
/*  Z-INDEX declearation
========================================================================== */
/* we adjust bootstrap z-index to be higher than our higest z-index*/
/*  CUSTOM ICON PREFIX 
========================================================================== */
/*  PRINT CSS (landscape or portrait)
========================================================================== */
/* landscape or portrait */
/* auto, letter */
/*  Common Element Variables
========================================================================== */
/* Z-index decleartion "birds eye view"
========================================================================== */
/*  Components
========================================================================== */
/*  PAGE HEADER STUFF
========================================================================== */
/* colors */
/* height */
/* logo */
/* try not to go beywond the width of $main_nav_width value */
/* you may need to change this depending on your logo design */
/* adjust this as you see fit : left, right, center */
/* icon font size (not button) */
/* search input box */
/* suggestion: #ccced0*/
/* btn */
/* dropdown: app list */
/* badge */
/* COMPONENTS & MODS */
/*  NAVIGATION STUFF

Guide:

aside.page-sidebar ($nav-width, $nav-background)
	.page-logo
	.primary-nav
		.info-card
		ul.nav-menu
			li
				a (parent level-0..., $nav-link-color, $nav-link-hover-color, $nav-link-hover-bg-color, $nav-link-hover-left-border-color)
					icon 
					span
					collapse-sign 

				ul.nav-menu-sub-one  
					li
						a ($nav-level-1... $nav-sub-link-height)
							span
							collapse-sign

						ul.nav-menu-sub-two
							li
								a ($nav-level-2... $nav-sub-link-height)
									span

		p.nav-title ($nav-title-*...)


========================================================================== */
/* main navigation */
/* left panel */
/* nav parent level-0 */
/* nav icon sizes */
/* badge default */
/* all child */
/* nav title */
/* nav Minify */
/* when the menu pops on hover */
/* navigation Width */
/* partial visibility of the menu */
/* top navigation */
/* nav Info Card (appears below the logo) */
/* width is auto */
/* nav DL labels for all child */
/* will be pulled to left as a negative value */
/*   MISC Settings
========================================================================== */
/* List Table */
/*   PAGE SETTINGS
========================================================================== */
/*   PAGE BREADCRUMB 
========================================================================== */
/*   PAGE COMPONENT PANELS 
========================================================================== */
/*   PAGE COMPONENT PROGRESSBARS 
========================================================================== */
/*   PAGE COMPONENT MESSENGER 
========================================================================== */
/*   FOOTER
========================================================================== */
/*   GLOBALS
========================================================================== */
/* ACCESSIBILITIES */
body {
  font-family: "Roboto", "Helvetica Neue", Helvetica, Arial;
  font-size: 0.8125rem;
  letter-spacing: 0.1px;
}

.page-content {
  color: #666666;
}

h1, h2, h3, h4, h5, h6 {
  line-height: 1.3;
  font-weight: 400;
}

strong {
  font-weight: 500;
}

h1 small,
h2 small,
h3 small,
h4 small,
h5 small,
h6 small,
.h1 small,
.h2 small,
.h3 small,
.h4 small,
.h5 small,
.h6 small {
  font-weight: 300;
  display: block;
  font-size: 0.9375rem;
  line-height: 1.5;
  margin: 2px 0 1.5rem;
}

h2 small,
h3 small,
.h2 small,
.h3 small {
  font-size: 0.9375rem;
}

h4 small,
.h4 small {
  font-size: 0.875rem;
}

h5 small,
h6 small,
.h5 small,
.h6 small {
  font-size: 0.8125rem;
}

/* contrast text */
.text-contrast {
  color: #333333;
}

/* text-gradient */
.text-gradient {
  background: -webkit-linear-gradient(180deg, rgb(71.1898734177, 88.9873417722, 150.8101265823) 25%, rgb(63.0126582278, 78.7658227848, 133.4873417722) 50%, rgb(11.5384615385, 197.1153846154, 213.4615384615) 75%, rgb(8.9230769231, 152.4358974359, 165.0769230769) 100%);
  background: linear-gradient(180deg, rgb(71.1898734177, 88.9873417722, 150.8101265823) 25%, rgb(63.0126582278, 78.7658227848, 133.4873417722) 50%, rgb(11.5384615385, 197.1153846154, 213.4615384615) 75%, rgb(8.9230769231, 152.4358974359, 165.0769230769) 100%);
  color: #5e71b3;
  background-clip: text;
  text-fill-color: transparent;
  -webkit-background-clip: text;
  -webkit-text-fill-color: transparent;
  text-shadow: none;
}

/* looking for font size? Check _helpers.scss */
/* PLACEHOLDER 
============================================= 

EXAMPLE:

%bg-image {
		width: 100%;
		background-position: center center;
		background-size: cover;
		background-repeat: no-repeat;
}

.image-one {
		@extend %bg-image;
		background-image:url(/img/image-one.jpg");
}

RESULT:

.image-one, .image-two {
		width: 100%;
		background-position: center center;
		background-size: cover;
		background-repeat: no-repeat;
}

*/
/*
%shadow-hover {
	box-shadow: 0 1px 3px rgba(0,0,0,0.12), 0 0 2px rgba(0,0,0,0.24);
	transition: all 0.2s ease-in-out;

	&:hover {
		box-shadow: 0 10px 20px rgba(0,0,0,0.19), 0 -1px 6px rgba(0,0,0,0.23);
	}
}
*/
/*%fixed-header-shadow {
	@include box-shadow(0 2px 2px -1px rgba(0,0,0,.1));
}*/
/*  %selected-dot {
		&:before {
			content: " ";
			display: block;
			border-radius: 50%;
			background: inherit;
			background-image: none;
			border: 2px solid rgba(0,0,0,0.2);
			position: absolute;
			top: 15px;
			left: 15px;
			height: 20px;
			width: 20px;
		}
		&:after {
			content: " ";
			height: inherit;
			width: inherit;
			border: 5px solid rgba(0,0,0,0.1);
			position: absolute;
			left: 0;
			top: 0;
			border-radius: 50%;
		} 
	}*/
/* patterns */
/* Page Layout Starts below...
========================================================================== */
html body {
  background: rgb(239.0802753165, 240.7588581162, 246.5897246835);
  /* NEW*/
}
html body .blankpage-logo {
  padding: 20px 0 30px;
}
html body .blankpage-form-field-width-extranet {
  width: 365px !important;
}
html body .blankpage-form-field {
  position: fixed;
  top: 45%;
  left: 50%;
  width: 730px;
  height: auto;
  -moz-transform: translate(-50%, -50%);
  -o-transform: translate(-50%, -50%);
  -ms-transform: translate(-50%, -50%);
  -webkit-transform: translate(-50%, -50%);
  transform: translate(-50%, -50%);
}
html body .blankpage-form-field .card {
  margin: 0;
  padding: 13.5px 20px 15.5px;
  box-shadow: 0 2px 10px rgba(0, 0, 0, 0.2);
}
html body .blankpage-form-field .blankpage-btn {
  font-size: 1rem;
  font-weight: 400;
  padding: 10px 15px;
  margin: 10px 0 5px;
}
html body .blankpage-footer {
  padding: 10px 0;
  font-size: 0.75rem;
  color: rgb(79.7368765823, 95.6513317573, 150.9331234177);
}
html body .login-footer {
  color: rgba(255, 255, 255, 0.9);
  font-size: 0.6875rem;
}
html body video {
  position: fixed;
  top: 50%;
  left: 50%;
  min-width: 100%;
  min-height: 100%;
  width: auto;
  height: auto;
  z-index: -100;
  transform: translateX(-50%) translateY(-50%);
  background: url(/build/images/clouds.757c0c3e.png) no-repeat;
  background-size: cover;
  transition: 1s opacity;
}
@media screen and (max-device-width: 800px) {
  html body html {
    background: url(/build/images/clouds.757c0c3e.png) #FFF no-repeat center center fixed;
  }
  html body #bgvid {
    display: none;
  }
}
@media screen and (max-width: 768px) {
  html body .blankpage-form-field {
    width: 355px;
  }
}

.page-footer {
  height: 2.8125rem;
  display: flex;
  flex: 0 0 auto;
  align-items: center;
  background: #fff;
  color: rgb(76.5, 76.5, 76.5);
  font-size: 0.8125rem;
  padding: 0 2rem;
  order: 4;
}

.bottom-footer {
  position: fixed;
  bottom: 0;
  width: 100%;
}

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