@charset "UTF-8";
/*
  ##     ##    ###    #### ##    ## 
  ###   ###   ## ##    ##  ###   ## 
  #### ####  ##   ##   ##  ####  ## 
  ## ### ## ##     ##  ##  ## ## ## 
  ##     ## #########  ##  ##  #### 
  ##     ## ##     ##  ##  ##   ### 
  ##     ## ##     ## #### ##    ## 
*/
/*
   Use the WebAIM Color Contrast Checker to check all the text colors 
   are WCAG AA compliant. If some colors aren't compliant and will be 
   used throughout the site for content purposes then generate an 
   alternative version in the 'W3C Compliant Adjustments' section.

   Some colors fail standard WCAG AA for regular font size but pass 
   for larger type sizes = 24px and larger

   http://webaim.org/resources/contrastchecker/
*/
.l-grid-home-header, .l-grid-header, .l-grid-boxes, .l-grid-footer, .l-grid-priority, .l-grid-priorities-header, .l-grid-priority-down, .l-grid-ceo-intro, .l-grid-count, .l-grid-strategy-intro, .l-grid-principles-intro, .l-grid-standard-header, .l-grid-standard-under-three, .l-grid-standard-under, .l-grid-partners {
	*zoom: 1;
}

.l-grid-home-header:before, .l-grid-header:before, .l-grid-boxes:before, .l-grid-footer:before, .l-grid-priority:before, .l-grid-priorities-header:before, .l-grid-priority-down:before, .l-grid-ceo-intro:before, .l-grid-count:before, .l-grid-strategy-intro:before, .l-grid-principles-intro:before, .l-grid-standard-header:before, .l-grid-standard-under-three:before, .l-grid-standard-under:before, .l-grid-partners:before, .l-grid-home-header:after, .l-grid-header:after, .l-grid-boxes:after, .l-grid-footer:after, .l-grid-priority:after, .l-grid-priorities-header:after, .l-grid-priority-down:after, .l-grid-ceo-intro:after, .l-grid-count:after, .l-grid-strategy-intro:after, .l-grid-principles-intro:after, .l-grid-standard-header:after, .l-grid-standard-under-three:after, .l-grid-standard-under:after, .l-grid-partners:after {
	content: " ";
	display: table;
}

.l-grid-home-header:after, .l-grid-header:after, .l-grid-boxes:after, .l-grid-footer:after, .l-grid-priority:after, .l-grid-priorities-header:after, .l-grid-priority-down:after, .l-grid-ceo-intro:after, .l-grid-count:after, .l-grid-strategy-intro:after, .l-grid-principles-intro:after, .l-grid-standard-header:after, .l-grid-standard-under-three:after, .l-grid-standard-under:after, .l-grid-partners:after {
	clear: both;
}

/*
   Example: div { @extend %clearfix; }
*/
header .site-logo {
	display: block;
	margin-left: auto;
	margin-right: auto;
}

/*
   Example: div { @extend %center-block; }
*/
/*
   Example: div { @extend %pull-left; }
*/
/* 
   When you hide an element with display: none, that prevents screen 
   readers from reading it to the user. Sometimes that’s fine, but in 
   other cases this will make the site hard to use for people with 
   screen readers. 
   
   Thus, we have to use another technique for hiding elements while at 
   the same time make them accessible.
   
   Using the Sass placeholder selector since the output will always be 
   the same, which enables us to reduce repetetive code in the output.
*/
/*
   Example: div { @extend %visuallyhidden; }
*/
/*
	 #####                                                                   
	#     #  ####    ##   ###### ######  ####  #      #####  # #    #  ####  
	#       #    #  #  #  #      #      #    # #      #    # # ##   # #    # 
	 #####  #      #    # #####  #####  #    # #      #    # # # #  # #      
		  # #      ###### #      #      #    # #      #    # # #  # # #  ### 
	#     # #    # #    # #      #      #    # #      #    # # #   ## #    # 
	 #####   ####  #    # #      #       ####  ###### #####  # #    #  ####  
*/
@font-face {
	font-family: 'Sensibility';
	src: url("../fonts/Sensibility/Sensibility.eot");
	src: url("../fonts/Sensibility/Sensibility.eot?#iefix") format("embedded-opentype"), url("../fonts/Sensibility/Sensibility.woff2") format("woff2"), url("../fonts/Sensibility/Sensibility.woff") format("woff"), url("../fonts/Sensibility/Sensibility.svg#Sensibility") format("svg");
	font-weight: normal;
	font-style: normal;
}

@font-face {
	font-family: 'Sensibility';
	src: url("../fonts/Sensibility/Sensibility-Italic.eot");
	src: url("../fonts/Sensibility/Sensibility-Italic.eot?#iefix") format("embedded-opentype"), url("../fonts/Sensibility/Sensibility-Italic.woff2") format("woff2"), url("../fonts/Sensibility/Sensibility-Italic.woff") format("woff"), url("../fonts/Sensibility/Sensibility-Italic.svg#Sensibility") format("svg");
	font-weight: normal;
	font-style: italic;
}

@font-face {
	font-family: 'Sensibility';
	src: url("../fonts/Sensibility/Sensibility-Bold.eot");
	src: url("../fonts/Sensibility/Sensibility-Bold.eot?#iefix") format("embedded-opentype"), url("../fonts/Sensibility/Sensibility-Bold.woff2") format("woff2"), url("../fonts/Sensibility/Sensibility-Bold.woff") format("woff"), url("../fonts/Sensibility/Sensibility-Bold.svg#Sensibility") format("svg");
	font-weight: bold;
	font-style: normal;
}

@font-face {
	font-family: 'Sensibility';
	src: url("../fonts/Sensibility/Sensibility-BoldItalic.eot");
	src: url("../fonts/Sensibility/Sensibility-BoldItalic.eot?#iefix") format("embedded-opentype"), url("../fonts/Sensibility/Sensibility-BoldItalic.woff2") format("woff2"), url("../fonts/Sensibility/Sensibility-BoldItalic.woff") format("woff"), url("../fonts/Sensibility/Sensibility-BoldItalic.svg#Sensibility") format("svg");
	font-weight: bold;
	font-style: italic;
}

@font-face {
	font-family: 'Bebas Neue';
	src: url("../fonts/BebasNeue/BebasNeueBold.eot");
	src: url("../fonts/BebasNeue/BebasNeueBold.eot?#iefix") format("embedded-opentype"), url("../fonts/BebasNeue/BebasNeueBold.woff2") format("woff2"), url("../fonts/BebasNeue/BebasNeueBold.woff") format("woff"), url("../fonts/BebasNeue/BebasNeueBold.svg#BebasNeueBold") format("svg");
	font-weight: bold;
	font-style: normal;
}

/*
   #     #                                      
   ##   ## ###### #####  #   ##                 
   # # # # #      #    # #  #  #                
   #  #  # #####  #    # # #    #               
   #     # #      #    # # ######               
   #     # #      #    # # #    #               
   #     # ###### #####  # #    #               
												
	#####                                       
   #     # #    # ###### #####  # ######  ####  
   #     # #    # #      #    # # #      #      
   #     # #    # #####  #    # # #####   ####  
   #   # # #    # #      #####  # #           # 
   #    #  #    # #      #   #  # #      #    # 
	#### #  ####  ###### #    # # ######  ####  
*/
/*
   See this article for explanation on why using "em" is a better and 
   more reliable solution than "px":

   https://zellwk.com/blog/media-query-units/
*/
/*
	#####                     #                                        
   #     # #####  # #####     #         ##   #   #  ####  #    # ##### 
   #       #    # # #    #    #        #  #   # #  #    # #    #   #   
   #  #### #    # # #    #    #       #    #   #   #    # #    #   #   
   #     # #####  # #    #    #       ######   #   #    # #    #   #   
   #     # #   #  # #    #    #       #    #   #   #    # #    #   #   
	#####  #    # # #####     ####### #    #   #    ####   ####    #   
*/
/*
  To calculate the grids we use percentages and the SASS calc feature.
  
  The calculations work as follows:
	- The width starts at 100% of the parent container minus the 
	  left + right side margin. 
	- Multiply this result by the amount of columns the child container 
	  should cover divided by the amount of columns in the grid.

  1. 100% - (left margin + right margin)
  2. * (total columns / number of columns required to cover)
  3. / by same number that is the result in step 2


  Example 1: 12 grid layout

  The first child container should cover 3 columns.
  We have already deterimed the margin left and right. For this example 
  they are 10px each.

  width: calc((100% - 30px * 4) / 4); = 3 columns


  Example 2: 16 column grid layout
 
  The first child container should cover 3 columns.
  We have already deterimed the margin left and right. For this example 
  they are 10px each.

  width: calc((100% - 30px * 5.3333333333) / 5.3333333333); = 3 columns
*/
/*
	#     #                                           
	#     # ###### #    # #####   ####  #####   ####  
	#     # #      ##   # #    # #    # #    # #      
	#     # #####  # #  # #    # #    # #    #  ####  
	 #   #  #      #  # # #    # #    # #####       # 
	  # #   #      #   ## #    # #    # #   #  #    # 
	   #    ###### #    # #####   ####  #    #  ####  
*/
/*
	######                                          #######                      
	#     # #####  #  ####  #####  # ##### #   #       #      ##   #####   ####  
	#     # #    # # #    # #    # #   #    # #        #     #  #  #    # #      
	######  #    # # #    # #    # #   #     #         #    #    # #####   ####  
	#       #####  # #    # #####  #   #     #         #    ###### #    #      # 
	#       #   #  # #    # #   #  #   #     #         #    #    # #    # #    # 
	#       #    # #  ####  #    # #   #     #         #    #    # #####   ####  
*/
/*
  Most of the secondary colors are just ~10-13% darker than primary ones
  We're hardcoding secondary colors to make sure it fit's the design
  In case you need to add new color, feel free to use darken(#XXXXXX, 11%) on primary color;
*/
/*
     #####                                     
    #     #  ####  #    # #    #  ####  #    # 
    #       #    # ##  ## ##  ## #    # ##   # 
    #       #    # # ## # # ## # #    # # #  # 
    #       #    # #    # #    # #    # #  # # 
    #     # #    # #    # #    # #    # #   ## 
     #####   ####  #    # #    #  ####  #    # 
											   
     #####                                     
    #     # ##### #   # #      ######  ####    
    #         #    # #  #      #      #        
     #####    #     #   #      #####   ####    
          #   #     #   #      #           #   
    #     #   #     #   #      #      #    #   
     #####    #     #   ###### ######  ####    
*/
/*
    #     #                                      
    ##   ## ###### #####  #   ##                 
    # # # # #      #    # #  #  #                
    #  #  # #####  #    # # #    #               
    #     # #      #    # # ######               
    #     # #      #    # # #    #               
    #     # ###### #####  # #    #               
												 
     #####                                       
    #     # #    # ###### #####  # ######  ####  
    #     # #    # #      #    # # #      #      
    #     # #    # #####  #    # # #####   ####  
    #   # # #    # #      #####  # #           # 
    #    #  #    # #      #   #  # #      #    # 
     #### #  ####  ###### #    # # ######  ####  
*/
/*
  #######                                           
  #       #      ###### #    # #####   ####  #    # 
  #       #      #       #  #  #    # #    #  #  #  
  #####   #      #####    ##   #####  #    #   ##   
  #       #      #        ##   #    # #    #   ##   
  #       #      #       #  #  #    # #    #  #  #  
  #       ###### ###### #    # #####   ####  #    # 
*/
/*
   Useful guide to Flexbox can be found at:
   https://css-tricks.com/snippets/css/a-guide-to-flexbox/
   
   Flexbox playground and code generator:
   http://the-echoplex.net/flexyboxes/

*/
/*
   This defines a flex container; inline or block depending on the 
   given value. It enables a flex context for all its direct children.
*/
/* 
   This establishes the main-axis, thus defining the direction flex 
   items are placed in the flex container. Flexbox is (aside from 
   optional wrapping) a single-direction layout concept. 

   Think of flex items as primarily laying out either in horizontal 
   rows or vertical columns.
*/
/*
   By default, flex items will all try to fit onto one line. You can 
   change that and allow the items to wrap as needed with this 
   property. 
   
   Direction also plays a role here, determining the direction new 
   lines are stacked in.
*/
/*
   This defines the alignment along the main axis. It helps distribute 
   extra free space left over when either all the flex items on a line 
   are inflexible, or are flexible but have reached their maximum size. 

   It also exerts some control over the alignment of items when they 
   overflow the line.
*/
/*
   This defines the default behaviour for how flex items are laid out 
   along the cross axis on the current line. Think of it as the 
   justify-content version for the cross-axis (perpendicular to the 
   main-axis).
*/
/*
   This aligns a flex container's lines within when there is extra 
   space in the cross-axis, similar to how justify-content aligns 
   individual items within the main-axis.

   Note: this property has no effect when there is only one line of 
   flex items.
*/
/*
   By default, flex items are laid out in the source order. However, 
   the order property controls the order in which they appear in the 
   flex container.
*/
/* 
   Flex:

   This is the shorthand for flex-grow, flex-shrink and flex-basis 
   combined. The second and third parameters (flex-shrink and 
   flex-basis) are optional. Default is 0 1 auto.

   Negative numbers are invalid.

   
   flex-grow:

   This defines the ability for a flex item to grow if necessary. It 
   accepts a unitless value that serves as a proportion. It dictates 
   what amount of the available space inside the flex container the 
   item should take up.
   
   If all items have flex-grow set to 1, the remaining space in the 
   container will be distributed equally to all children. If one of 
   the children has a value of 2, the remaining space would take up 
   twice as much space as the others (or it will try to, at least).

   
   flex-shrink:

   This defines the ability for a flex item to shrink if necessary.

   
   flex-basis:

   This defines the default size of an element before the remaining 
   space is distributed. It can be a length (e.g. 20%, 5rem, etc.) 
   or a keyword. The auto keyword means "look at my width or height 
   property" (which was temporarily done by the main-size keyword 
   until deprecated). The content keyword means "size it based on the 
   item's content" - this keyword isn't well supported yet, so it's 
   hard to test and harder to know what its brethren max-content, 
   min-content, and fit-content do.
*/
/*
   This allows the default alignment (or the one specified by 
   align-items) to be overridden for individual flex items.

   See the align-items explanation to understand the available values.

   Note that "float", "clear" and "vertical-align" have no effect on a 
   flex item.
*/
/*
     #####                      #####                                   
    #     # #####  # #####     #     # #   #  ####  ##### ###### #    # 
    #       #    # # #    #    #        # #  #        #   #      ##  ## 
    #  #### #    # # #    #     #####    #    ####    #   #####  # ## # 
    #     # #####  # #    #          #   #        #   #   #      #    # 
    #     # #   #  # #    #    #     #   #   #    #   #   #      #    # 
     #####  #    # # #####      #####    #    ####    #   ###### #    # 
*/
/*
	#     #                       
	#     # #    # # #####  ####  
	#     # ##   # #   #   #      
	#     # # #  # #   #    ####  
	#     # #  # # #   #        # 
	#     # #   ## #   #   #    # 
	 #####  #    # #   #    ####  
*/
/*
 #######                                                 #####                  
    #    #####  #   ##   #    #  ####  #      ######    #     # # #####  ###### 
    #    #    # #  #  #  ##   # #    # #      #         #       # #    # #      
    #    #    # # #    # # #  # #      #      #####      #####  # #    # #####  
    #    #####  # ###### #  # # #  ### #      #               # # #    # #      
    #    #   #  # #    # #   ## #    # #      #         #     # # #    # #      
    #    #    # # #    # #    #  ####  ###### ######     #####  # #####  ###### 
*/
/*
 ######                                          #######                      
 #     # #####  #  ####  #####  # ##### #   #       #      ##   #####   ####  
 #     # #    # # #    # #    # #   #    # #        #     #  #  #    # #      
 ######  #    # # #    # #    # #   #     #         #    #    # #####   ####  
 #       #####  # #    # #####  #   #     #         #    ###### #    #      # 
 #       #   #  # #    # #   #  #   #     #         #    #    # #    # #    # 
 #       #    # #  ####  #    # #   #     #         #    #    # #####   ####  
*/
body {
	margin: 0 auto 0 auto;
	position: relative;
	background-color: #FFF;
	color: #555555;
	font-size: 18px;
	font-line-height: 1.5;
	font-family: "Sensibility", "Helvetica Neue", Helvetica, Arial, sans-serif;
	font-weight: 400;
	max-width: 1600px;
}

a, a:link {
	color: #0071CE;
	text-decoration: underline;
	-webkit-transition: all 0.2s ease-in-out;
	transition: all 0.2s ease-in-out;
}

a:hover, a:active, a:link:hover, a:link:active {
	color: #5E7E3E;
	text-decoration: none;
}

a:visited, a:link:visited {
	color: #813D97;
}

a:visited:hover, a:visited:active, a:link:visited:hover, a:link:visited:active {
	color: #AC6120;
}

a.link--new-window:after {
	content: "";
	padding-right: 1.5em;
	width: auto;
	height: 1em;
	background-image: url(../images/icons/icon--link-external-01.svg);
	background-position: right 3px;
	background-repeat: no-repeat;
	background-size: auto 1em;
	text-decoration: none;
}

li a[href$=".pdf"]:after,
li a[href$=".doc"]:after,
li a[href$=".xlsx"]:after,
li a[href$=".xls"]:after,
li a[href$=".ppt"]:after,
li.link--new-window:after {
	content: " ";
	width: auto;
	height: 1em;
	background-position: 0.25em 1px;
	background-repeat: no-repeat;
	background-size: auto 1em;
}

/* The images break formatting in the footer, so only show these in the side navigation bar */
.bottom-area li a[href$=".pdf"]:after {
	background-image: url(../images/icons/icon--pdf-01.svg);
}

.bottom-area li a[href$=".doc"]:after {
	background-image: url(../images/icons/icon--word-01.svg);
}

.bottom-area li a[href$=".xlsx"]:after {
	background-image: url(../images/icons/icon--excel-01.svg);
}

.bottom-area li a[href$=".xls"]:after {
	background-image: url(../images/icons/icon--excel-01.svg);
}

.bottom-area li a[href$=".ppt"]:after {
	background-image: url(../images/icons/icon--powerpoint-01.svg);
}

.bottom-area li.link--new-window:after {
	background-image: url(../images/icons/icon--link-external-01.svg);
}

p, li, dt, dd, address {
	line-height: 1.5;
}

dt {
	font-weight: bold;
}

blockquote {
	font-size: 110px;
}

@media (min-width: 26.66667em) {
	blockquote {
		font-size: 130px;
	}
}

blockquote footer,
blockquote small,
blockquote .small {
	font-font-size: 67%;
	font-line-height: 1.5;
	color: #555555;
}

address {
	font-style: normal;
}

::-moz-selection {
	/* Code for Firefox */
	background-color: #555555;
	color: #FFF;
}

::selection {
	background-color: #555555;
	color: #FFF;
}

h1, .h1 {
	font-family: "Bebas Neue", "Helvetica Neue", Helvetica, Arial, sans-serif;
	font-weight: normal !important;
	letter-spacing: 1px;
}

h2, h3, h4, h5, h6,
.h2, .h3, .h4, .h5, .h6 {
	font-family: "Sensibility", "Helvetica Neue", Helvetica, Arial, sans-serif;
	font-weight: normal;
}

h1, h2, h3, h4, h5, h6,
.h1, .h2, .h3, .h4, .h5, .h6 {
	line-height: 1.1;
	color: #0071CE;
	-webkit-transition: all 0.2s ease-in-out;
	transition: all 0.2s ease-in-out;
}

h1, .h1 {
	margin-top: 40.5px;
	margin-bottom: 40.5px;
}

h2, .h2,
h3, .h3 {
	margin-top: 40.5px;
	margin-bottom: 27px;
}

h4, .h4,
h5, .h5,
h6, .h6 {
	margin-top: 13.5px;
	margin-bottom: 13.5px;
}

h1 small,
h1 .small, h2 small,
h2 .small, h3 small,
h3 .small, h4 small,
h4 .small, h5 small,
h5 .small, h6 small,
h6 .small,
.h1 small,
.h1 .small, .h2 small,
.h2 .small, .h3 small,
.h3 .small, .h4 small,
.h4 .small, .h5 small,
.h5 .small, .h6 small,
.h6 .small {
	font-weight: normal;
	line-height: 1;
}

h1 small,
h1 .small, .h1 small,
.h1 .small,
h2 small,
h2 .small, .h2 small,
.h2 .small,
h3 small,
h3 .small, .h3 small,
.h3 .small {
	font-size: 65%;
}

h4 small,
h4 .small, .h4 small,
.h4 .small,
h5 small,
h5 .small, .h5 small,
.h5 .small,
h6 small,
h6 .small, .h6 small,
.h6 .small {
	font-size: 75%;
}

h1, .h1 {
	font-size: 54px;
}

@media (min-width: 26.66667em) {
	h1, .h1 {
		font-size: 77px;
	}
}

@media (min-width: 42.66667em) {
	h1, .h1 {
		font-size: 115px;
	}
}

h2, .h2 {
	font-size: 40px;
}

@media (min-width: 42.66667em) {
	h2, .h2 {
		font-size: 46px;
	}
}

h3, .h3 {
	font-size: 37px;
}

@media (min-width: 42.66667em) {
	h3, .h3 {
		font-size: 42px;
	}
}

h4, .h4 {
	font-size: 31px;
}

@media (min-width: 42.66667em) {
	h4, .h4 {
		font-size: 38px;
	}
}

h5, .h5 {
	font-size: 31px;
}

@media (min-width: 42.66667em) {
	h5, .h5 {
		font-size: 38px;
	}
}

h6, .h6 {
	font-size: 31px;
}

@media (min-width: 42.66667em) {
	h6, .h6 {
		font-size: 38px;
	}
}

h1 + h2 {
	margin-top: -0.5em;
}

p {
	margin: 0 0 27px;
}

.lead {
	margin-bottom: 40.5px;
	font-size: 25px;
	font-weight: normal;
	line-height: 1.7;
}

.ceo-introduction .bottomText{
	margin-bottom: 40.5px;
	font-size: 2.0em;
	font-weight: normal;
	line-height: 1.7;
}

.ceo-introduction .bottomBottomText{
	margin-bottom: 0;
}

small,
.small {
	font-size: 88%;
}

mark,
.mark {
	padding: .2em;
	background-color: #FF0;
	color: #000;
}

.text--left {
	text-align: left;
}

.text--right {
	text-align: right;
}

.text--center {
	text-align: center;
}

.text--justify {
	text-align: justify;
}

.text--nowrap {
	white-space: nowrap;
}

.text--lowercase {
	text-transform: lowercase;
}

.text--uppercase, .initialism {
	text-transform: uppercase;
}

.text--capitalize {
	text-transform: capitalize;
}

.page-header {
	padding-bottom: 12.5px;
	margin: 54px 0 27px;
	border-bottom: 1px solid #555555;
}

ul,
ol {
	margin-top: 0;
	margin-bottom: 13.5px;
}

ul li,
ol li {
	padding-bottom: 13.5px;
}

ul ul,
ul ol,
ol ul,
ol ol {
	margin-bottom: 0;
}

ol li {
	padding-left: 10px;
}

.list--unstyled {
	padding-left: 0;
	list-style: none;
}

.list--unstyled li {
	padding-bottom: 0;
}

.list--inline {
	padding-left: 0;
	list-style: none;
	margin-left: -5px;
}

.list--inline > li {
	display: inline-block;
	padding-left: 5px;
	padding-right: 5px;
}

dl {
	margin-top: 0;
	margin-bottom: 27px;
}

dt {
	padding-bottom: 13.5px;
}

dd {
	padding-bottom: 13.5px;
}

abbr[title],
abbr[data-original-title] {
	cursor: help;
	border-bottom: 1px dotted #555555;
}

.initialism {
	font-size: 90%;
}

blockquote {
	padding: 0;
	margin: 1.75em 0.5em 2em;
	color: #0071CE;
	font-weight: normal;
	font-family: "Sensibility", "Helvetica Neue", Helvetica, Arial, sans-serif;
	font-size: 34px;
	font-style: italic;
}

@media (min-width: 26.66667em) {
	blockquote {
		margin: 1.75em 1.5em 2em;
	}
}

blockquote p {
	margin: 0 0 0.5em;
	line-height: 1.3em;
}

blockquote p:last-child,
blockquote ul:last-child,
blockquote ol:last-child {
	margin-bottom: 2em;
}

blockquote footer,
blockquote small,
blockquote .small {
	display: block;
	font-size: 18px;
	font-style: italic;
	font-family: "Sensibility", "Helvetica Neue", Helvetica, Arial, sans-serif;
	font-weight: normal;
}

pre {
	word-break: break-all;
	word-wrap: break-word;
	white-space: pre;
	white-space: -moz-pre-wrap;
	white-space: pre-wrap;
	white-space: pre\9;
}

code {
	color: #C83446;
}

address {
	margin-bottom: 27px;
}

@media (min-width: 26.66667em) and (max-width: 42.66667em) {
	h2 {
		font-size: 36px;
	}
}

@media (max-width: 26.66667em) {
	h2 {
		font-size: 32px;
	}
}

@media (max-width: 42.66667em) {
	.lead {
		line-height: normal;
	}
}

.sr-only {
	position: absolute;
	width: 1px;
	height: 1px;
	padding: 0;
	margin: -1px;
	overflow: hidden;
	clip: rect(0, 0, 0, 0);
	border: 0;
}

.text--muted {
	margin-top: 27px;
	margin-bottom: 27px;
	color: #666666;
}

.text--positive {
	margin-top: 27px;
	margin-bottom: 27px;
	color: #5E7E3E;
}

.text--negative {
	margin-top: 27px;
	margin-bottom: 27px;
	color: #C83446;
}

.bg--muted {
	margin-top: 27px;
	margin-bottom: 27px;
	padding: 15px 15px 18px;
	border: 1px solid #555555;
	background-color: #f2f2f2;
	color: #666666;
}

.bg--positive {
	margin-top: 27px;
	margin-bottom: 27px;
	padding: 15px 15px 18px;
	border: 1px solid #5E7E3E;
	background-color: #dee9d2;
	color: #516d36;
}

.bg--negative {
	margin-top: 27px;
	margin-bottom: 27px;
	padding: 15px 15px 18px;
	border: 1px solid #C83446;
	background-color: #f9e8ea;
	color: #b42f3f;
}

.relative {
	position: relative;
}

html {
	-webkit-box-sizing: border-box;
	box-sizing: border-box;
}

*,
*:before,
*:after {
	-webkit-box-sizing: border-box;
	box-sizing: border-box;
}

.l-wrap {
	position: relative;
	max-width: 1600px;
	margin: 0 auto 0 auto;
}

.l-wrap-fluid {
	position: relative;
	width: 100%;
}

.grid-item {
	margin-left: 15px;
	margin-right: 15px;
}

.grid-row {
	margin-left: -15px;
	margin-right: -15px;
	position: relative;
}

/*
   #                                        
   #         ##   #   #  ####  #    # ##### 
   #        #  #   # #  #    # #    #   #   
   #       #    #   #   #    # #    #   #   
   #       ######   #   #    # #    #   #   
   #       #    #   #   #    # #    #   #   
   ####### #    #   #    ####   ####    #   
											
    #####                                   
   #     # #####  # #####   ####            
   #       #    # # #    # #                
   #  #### #    # # #    #  ####            
   #     # #####  # #    #      #           
   #     # #   #  # #    # #    #           
    #####  #    # # #####   ####                                                  
*/
/*
   Set up a Grid template for each content template on the site. 
   There should be the same number of layouts per content type.
   
   When defining the amount of columns each grid container should cover 
   use the mixins developed in the _mixins.scss file.
*/
.l-grid-home-header .grid-item-2 {
	width: calc((100% - 30px * 1) / 1);
}

.l-grid-home-header .grid-item-3 {
	width: calc((100% - 30px * 1) / 1);
}

@media (min-width: 66.66667em) {
	.l-grid-home-header {
		-ms-flex-wrap: nowrap;
		flex-wrap: nowrap;
		display: -webkit-box;
		display: -ms-flexbox;
		display: flex;
	}
	.l-grid-home-header .grid-item-1 {
		width: calc((100% - 30px * 3) / 3);
	}
	.l-grid-home-header .grid-item-2 {
		width: calc((100% - 30px * 1.5) / 1.5);
	}
	.l-grid-home-header .grid-item-3 {
		margin-left: calc((100% / 12) + 15px);
		width: calc((100% - 30px * 1.2) / 1.2);
	}
}

.l-grid-header .grid-item-1 {
	width: calc((100% - 30px * 2) / 2);
}

.l-grid-header .grid-item-2 {
	width: calc((100% - 30px * 2) / 2);
	text-align: right;
}

@media (min-width: 42.66667em) {
	.l-grid-header {
		display: -webkit-box;
		display: -ms-flexbox;
		display: flex;
	}
	.l-grid-header .grid-item-1 {
		width: calc((100% - 30px * 3) / 3);
	}
	.l-grid-header .grid-item-2 {
		width: calc((100% - 30px * 1.5) / 1.5);
		text-align: right;
	}
}

@media (min-width: 53.33333em) {
	.l-grid-header {
		-ms-flex-wrap: nowrap;
		flex-wrap: nowrap;
	}
	.l-grid-header .grid-item-1 {
		width: calc((100% - 30px * 4) / 4);
	}
	.l-grid-header .grid-item-2 {
		width: calc((100% - 30px * 1.3333333333) / 1.3333333333);
	}
}

.l-grid-boxes .grid-item-1 {
	width: calc((100% - 30px * 1) / 1);
}

@media (min-width: 42.66667em) {
	.l-grid-boxes {
		display: -webkit-box;
		display: -ms-flexbox;
		display: flex;
	}
	.l-grid-boxes .grid-item-1 {
		width: 100%;
	}
}

@media (min-width: 66.66667em) {
	.l-grid-boxes {
		-ms-flex-wrap: nowrap;
		flex-wrap: nowrap;
	}
	.l-grid-boxes .grid-item-1 {
		width: 100%;
	}
}

.l-grid-footer .grid-item-1 {
	width: calc((100% - 30px * 1) / 1);
}

@media (min-width: 42.66667em) {
	.l-grid-footer {
		display: -webkit-box;
		display: -ms-flexbox;
		display: flex;
		padding-left: 10%;
	}
}

@media (min-width: 42.66667em) {
	.l-grid-footer {
		-ms-flex-wrap: wrap;
		flex-wrap: wrap;
	}
	.l-grid-footer .grid-item-1 {
		width: calc((100% - 30px * 2) / 2);
	}
}

@media (min-width: 66.66667em) {
	.l-grid-footer {
		-ms-flex-wrap: nowrap;
		flex-wrap: nowrap;
	}
	.l-grid-footer .grid-item-1 {
		width: calc((100% - 30px * 4) / 4);
	}
}

.l-grid-priority .grid-item-1 {
	font-family: "Bebas Neue", "Helvetica Neue", Helvetica, Arial, sans-serif;
	font-size: 2.875rem;
	line-height: 0.95652;
	width: calc((100% - 30px * 1) / 1);
}

.l-grid-priority .grid-item-2 {
	width: calc((100% - 30px * 1) / 1);
}

.l-grid-priority .grid-item-3 {
	width: calc((100% - 30px * 1) / 1);
}

.l-grid-priority .grid-item-4 {
	width: calc((100% - 30px * 1) / 1);
}

@media (min-width: 53.33333em) {
	.l-grid-priority {
		display: -webkit-box;
		display: -ms-flexbox;
		display: flex;
	}
	.l-grid-priority .grid-item-1 {
		width: calc((100% - 30px * 4) / 4);
	}
	.l-grid-priority .grid-item-2 {
		width: calc((100% - 30px * 1.7142857143) / 1.7142857143);
	}
	.l-grid-priority .grid-item-3 {
		width: calc((100% - 30px * 6) / 6);
	}
	.l-grid-priority .grid-item-4 {
		width: calc((100% - 30px * 1.3333333333) / 1.3333333333);
	}
}

@media (min-width: 66.66667em) {
	.l-grid-priority {
		display: -webkit-box;
		display: -ms-flexbox;
		display: flex;
	}
	.l-grid-priority .grid-item-1 {
		margin-left: calc(100% / 12 + 15px);
		width: calc((100% - 30px * 6) / 6);
	}
	.l-grid-priority .grid-item-2 {
		width: calc((100% - 30px * 1.7142857143) / 1.7142857143);
	}
	.l-grid-priority .grid-item-3 {
		width: calc((100% - 30px * 6) / 6);
	}
	.l-grid-priority .grid-item-4 {
		width: calc((100% - 30px * 1.5) / 1.5);
	}
}

.l-grid-priorities-header .grid-item-1 {
	width: calc((100% - 30px * 1) / 1);
}

@media (min-width: 42.66667em) {
	.l-grid-priorities-header {
		display: -webkit-box;
		display: -ms-flexbox;
		display: flex;
	}
}

@media (min-width: 66.66667em) {
	.l-grid-priorities-header {
		-ms-flex-wrap: nowrap;
		flex-wrap: nowrap;
	}
	.l-grid-priorities-header .grid-item-1 {
		margin-left: calc(100% / 12 + 15px);
		width: calc((100% - 30px * 1.2) / 1.2);
	}
}

.l-grid-priority-down {
	-ms-flex-wrap: wrap;
	flex-wrap: wrap;
}

.l-grid-priority-down .grid-item-1 {
	width: calc((100% - 30px * 1) / 1);
}

.l-grid-priority-down .grid-item-2 {
	width: calc((100% - 30px * 1) / 1);
}

@media (min-width: 42.66667em) {
	.l-grid-priority-down {
		display: -webkit-box;
		display: -ms-flexbox;
		display: flex;
	}
}

@media (min-width: 53.33333em) {
	.l-grid-priority-down {
		-ms-flex-wrap: nowrap;
		flex-wrap: nowrap;
	}
	.l-grid-priority-down .grid-item-1 {
		width: calc((100% - 30px * 4) / 4);
	}
	.l-grid-priority-down .grid-item-2 {
		width: calc((100% - 30px * 1.5) / 1.5);
	}
}

.l-grid-ceo-intro .grid-item-1 {
	width: calc((100% - 30px * 1) / 1);
}

@media (min-width: 53.33333em) {
	.l-grid-ceo-intro {
		-ms-flex-wrap: nowrap;
		flex-wrap: nowrap;
	}
	.l-grid-ceo-intro .grid-item-1 {
		margin-left: calc((100% / 12) * 1 + 15px);
		width: calc((100% - 30px * 1.2) / 1.2);
	}
}

.l-grid-count .grid-item-1 {
	width: calc((100% - 30px * 1) / 1);
}

.l-grid-count .grid-item-2 {
	width: calc((100% - 30px * 1) / 1);
}

@media (min-width: 42.66667em) {
	.l-grid-count {
		display: -webkit-box;
		display: -ms-flexbox;
		display: flex;
	}
	.l-grid-count .grid-item-1 {
		width: calc((100% - 30px * 1) / 1);
	}
}

@media (min-width: 53.33333em) {
	.l-grid-count {
		-ms-flex-wrap: nowrap;
		flex-wrap: nowrap;
	}
	.l-grid-count .grid-item-1 {
		width: calc((100% - 30px * 3) / 3);
	}
}

.l-grid-strategy-intro .grid-item-1 {
	width: calc((100% - 30px * 1) / 1);
}

@media (min-width: 53.33333em) {
	.l-grid-strategy-intro {
		-ms-flex-wrap: nowrap;
		flex-wrap: nowrap;
	}
	.l-grid-strategy-intro .grid-item-1 {
		margin-left: calc(100% / 12 + 15px);
		width: calc((100% - 30px * 1.2) / 1.2);
	}
}

.l-grid-principles-intro .grid-item-1 {
	width: calc((100% - 30px * 1) / 1);
}

.l-grid-principles-intro .grid-item-2 {
	width: calc((100% - 30px * 1) / 1);
}

@media (min-width: 42.66667em) {
	.l-grid-principles-intro {
		display: -webkit-box;
		display: -ms-flexbox;
		display: flex;
	}
}

@media (min-width: 53.33333em) {
	.l-grid-principles-intro {
		-ms-flex-wrap: nowrap;
		flex-wrap: nowrap;
	}
	.l-grid-principles-intro .grid-item-2 {
		width: calc((100% - 30px * 3) / 3);
	}
}

@media (min-width: 42.66667em) {
	.l-grid-standard-header {
		display: -webkit-box;
		display: -ms-flexbox;
		display: flex;
	}
}

@media (min-width: 53.33333em) {
	.l-grid-standard-header {
		-ms-flex-wrap: nowrap;
		flex-wrap: nowrap;
	}
	.l-grid-standard-header .grid-item-1 {
		margin-left: calc(100% / 12 + 15px);
		width: calc((100% - 30px * 1.3333333333) / 1.3333333333);
	}
}

.l-grid-standard-under-three {
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-ms-flex-wrap: wrap;
	flex-wrap: wrap;
}

.l-grid-standard-under-three .grid-item-4 {
	width: calc((100% - 30px * 1) / 1);
}

@media (min-width: 66.66667em) {
	.l-grid-standard-under-three {
		-ms-flex-wrap: wrap;
		flex-wrap: wrap;
	}
	.l-grid-standard-under-three .grid-item-4 {
		width: calc((100% - 30px * 3) / 3);
	}
}

.l-grid-standard-under {
	-ms-flex-wrap: wrap;
	flex-wrap: wrap;
}

.l-grid-standard-under .grid-item-1 {
	width: calc((100% - 30px * 1) / 1);
}

.l-grid-standard-under .grid-item-2 {
	width: calc((100% - 30px * 1) / 1);
}

.l-grid-standard-under .grid-item-box {
	width: calc((100% - 30px * 1) / 1);
}

.l-grid-standard-under .grid-item-box-extended {
	width: calc((100% - 30px * 1) / 1);
	margin-left:9%;
	margin-right: 5%;
}

@media (min-width: 42.66667em) {
	.l-grid-standard-under {
		display: -webkit-box;
		display: -ms-flexbox;
		display: flex;
	}
}

@media (min-width: 53.33333em) {
	.l-grid-standard-under {
		-ms-flex-wrap: wrap;
		flex-wrap: wrap;
	}
	.l-grid-standard-under .grid-item-1 {
		margin-left: calc(100% / 12 + 15px);
		width: calc((100% - 30px * 1.7142857143) / 1.7142857143);
	}
	.l-grid-standard-under .grid-item-2 {
		width: calc((100% - 30px * 4) / 4);
	}
	.l-grid-standard-under .grid-item-3 {
		margin-left: calc(100% / 12 + 15px);
		width: calc((100% - 30px * 1.2) / 1.2);
	}
}

@media (min-width: 66.66667em) {
	.l-grid-standard-under {
		-ms-flex-wrap: wrap;
		flex-wrap: wrap;
	}
	.l-grid-standard-under .grid-item-box {
		width: calc((100% - 30px * 4) / 4);
	}
	.l-grid-standard-under .grid-item-box-extended {
		width: calc((100% - 30px * 3) / 3);
	}
	.l-grid-standard-under .grid-item-box.first, .l-grid-standard-under .grid-item-box-extended.first {
		margin-right: 7%;
	}
}

.l-grid-partners {
	-ms-flex-wrap: wrap;
	flex-wrap: wrap;
}

.l-grid-partners .grid-item-1 {
	width: calc((100% - 30px * 1) / 1);
}

.l-grid-partners .grid-item-2 {
	width: calc((100% - 30px * 1) / 1);
}

.l-grid-partners .grid-item-3 {
	width: calc((100% - 30px * 1) / 1);
}

@media (min-width: 66.66667em) {
	.l-grid-partners {
		display: -webkit-box;
		display: -ms-flexbox;
		display: flex;
	}
	.l-grid-partners .grid-item-1 {
		margin-left: calc(100% / 12 + 15px);
		width: calc((100% - 30px * 1.2) / 1.2);
	}
	.l-grid-partners .grid-item-2 {
		margin-left: calc(100% / 12 + 15px);
		width: calc((100% - 30px * 2.4) / 2.4);
	}
	.l-grid-partners .grid-item-3 {
		width: calc((100% - 30px * 2.4) / 2.4);
	}
}

.debug {
	position: absolute;
	width: 100%;
	height: 10000px;
	z-index: -100;
}

.debug .column {
	background-color: rgba(255, 0, 0, 0.1);
	height: 10000px;
	width: calc((100% - 30px * 12) / 12);
	float: left;
	margin: 0 15px;
}

header {
	position: fixed;
	left: 0;
	top: 0;
	right: 0;
	background: white;
	z-index: 90;
}

header:after {
	content: '';
	height: 3px;
	background: #cacaca;
	left: 0;
	right: 0;
	width: 0;
	position: absolute;
	bottom: 0;
	display: block;
	margin: 0 auto;
}

header .box-logo {
	position: relative;
	display: inline-block;
	width: 297px;
	height: 175px;
	border: none;
	border-bottom-left-radius: 7px;
	border-bottom-right-radius: 7px;
	float: left;
	-webkit-transition-duration: 0.2s;
	transition-duration: 0.2s;
}

header .site-logo {
	width: 213px;
	position: absolute;
	left: 0;
	right: 0;
	top: 0;
	bottom: -3px;
	margin: auto;
	-webkit-transition-duration: 0.2s;
	transition-duration: 0.2s;
}

@media (min-width: 66.66667em) {
	header.scrolled:after {
		width: 100%;
		-webkit-transition: 1.5s width cubic-bezier(0, 0, 0.2, 1);
		transition: 1.5s width cubic-bezier(0, 0, 0.2, 1);
	}
	header.scrolled .site-logo {
		width: 165px;
		bottom: 0;
	}
	header.scrolled .box-logo {
		width: 240px;
		height: 120px;
	}
}

@media (min-width: 66.66667em) and (max-width: 88.88889em) {
	header .site-logo {
		width: 190px;
		bottom: 0;
	}
	header .box-logo {
		width: 274px;
		height: 145px;
	}
}

@media (min-width: 53.33333em) and (max-width: 66.66667em) {
	header .site-logo {
		width: 180px;
		bottom: 0;
	}
	header .box-logo {
		width: 262px;
		height: 134px;
	}
}

@media (min-width: 42.66667em) and (max-width: 53.33333em) {
	header .site-logo {
		width: 165px;
		bottom: 0;
	}
	header .box-logo {
		width: 240px;
		height: 120px;
	}
}

@media (min-width: 26.66667em) and (max-width: 42.66667em) {
	header .site-logo {
		width: 145px;
		bottom: 0;
	}
	header .box-logo {
		width: 220px;
		height: 110px;
	}
}

@media (max-width: 26.66667em) {
	header .site-logo {
		width: 128px;
		bottom: 0;
	}
	header .box-logo {
		width: 190px;
		height: 100px;
	}
}

@media (max-width: 66.66667em) {
	header {
		position: absolute;
	}
}

.main {
	padding-top: 175px;
}

@media (min-width: 66.66667em) and (max-width: 88.88889em) {
	.main {
		padding-top: 145px;
	}
	html {
		font-size: 14px;
	}
}

@media (min-width: 53.33333em) and (max-width: 66.66667em) {
	.main {
		padding-top: 134px;
	}
	html {
		font-size: 12px;
	}
}

@media (min-width: 42.66667em) and (max-width: 53.33333em) {
	.main {
		padding-top: 120px;
	}
	html {
		font-size: 10px;
	}
}

@media (min-width: 26.66667em) and (max-width: 42.66667em) {
	.main {
		padding-top: 110px;
	}
	html {
		font-size: 8px;
	}
}

@media (max-width: 26.66667em) {
	.main {
		padding-top: 100px;
	}
	html {
		font-size: 6px;
	}
}

footer#main-footer {
	background: #555555;
	padding: 3.35em 0 2em;
	color: white;
}

footer#main-footer a, footer#main-footer a:hover, footer#main-footer a:focus, footer#main-footer a:visited {
	color: inherit;
	text-decoration: none;
}

footer#main-footer ul {
	margin: 0;
	padding: 0;
}

footer#main-footer img.footer-logo {
	margin: 0;
	max-width: 234px;
}

footer#main-footer p {
	color: white;
	font-size: 16px;
	font-family: "Sensibility", "Helvetica Neue", Helvetica, Arial, sans-serif;
	margin: 2em 0 0;
}

footer#main-footer p b {
	display: block;
	-webkit-font-feature-settings: "lnum";
	font-feature-settings: "lnum";
	margin-top: 1px;
}

footer#main-footer .sm {
	margin-top: 1.86em;
}

footer#main-footer .sm li {
	margin: 0 1.5em 0 0;
}

footer#main-footer .sm li.fb {
	margin-right: 1.84em;
	margin-left: 0.1em;
}

footer#main-footer .sm li.tw {
	margin-top: 0.14em;
	margin-right: 1.25em;
}

footer#main-footer .sm li.yt {
	margin-top: 0.05em;
}

footer#main-footer .footer-nav {
	margin-top: 1.4em;
}

footer#main-footer .footer-nav li {
	list-style-type: none;
	color: white;
	text-transform: uppercase;
	font-family: "Sensibility", "Helvetica Neue", Helvetica, Arial, sans-serif;
	font-size: 24px;
	margin: 0 0 1.67em;
	padding: 0;
	line-height: 1;
}

footer#main-footer .footer-nav li:last-child {
	margin-bottom: 0;
}

footer#main-footer .footer-nav li ul > li {
	margin: 1.08em 0 1.08em 0.82em;
}

footer#main-footer .footer-nav li a:hover {
	color: #b3b3b3;
}

footer#main-footer .footer-nav .icon-download {
	width: 32px;
	height: 24px;
	position: absolute;
	margin-left: 13px;
}

footer#main-footer #bot {
	font-family: "Sensibility", "Helvetica Neue", Helvetica, Arial, sans-serif;
	color: white;
	font-size: 16px;
	margin-top: 6.4em;
}

footer#main-footer #bot ul {
	padding: 0;
	margin: 0;
	display: inline-block;
}

footer#main-footer #bot ul li {
	text-transform: uppercase;
	position: relative;
	margin-left: 9px;
	display: inline-block;
	padding: 0 0 0 15px;
}

footer#main-footer #bot ul li:before {
	content: '';
	background: white;
	width: 2px;
	height: 14px;
	position: absolute;
	top: 0;
	left: 0;
	bottom: 0;
	margin: auto;
}

footer#main-footer #bot ul li a:hover {
	color: #b3b3b3;
}

footer#main-footer #bot p {
	font-size: inherit;
}

footer#main-footer #back-to-top {
	position: fixed;
	z-index: 100;
	right: 3.125rem;
	bottom: 3.125rem;
	width: 80px;
	height: 80px;
	border-radius: 100%;
	opacity: 0;
	-webkit-transition: 0.2s opacity;
	transition: 0.2s opacity;
}

footer#main-footer #back-to-top.active {
	opacity: 1;
	-webkit-transition: 0.3s opacity 0.5s;
	transition: 0.3s opacity 0.5s;
}

footer#main-footer #back-to-top img {
	border-radius: 100%;
	max-width: 100%;
	-webkit-box-shadow: 0 0 0 2px rgba(45, 45, 45, 0.1);
	box-shadow: 0 0 0 2px rgba(45, 45, 45, 0.1);
	-webkit-transition: 0.15s -webkit-box-shadow;
	transition: 0.15s -webkit-box-shadow;
	transition: 0.15s box-shadow;
	transition: 0.15s box-shadow, 0.15s -webkit-box-shadow;
}

footer#main-footer #back-to-top img:hover {
	-webkit-box-shadow: 0 0 0 6px rgba(45, 45, 45, 0.1);
	box-shadow: 0 0 0 6px rgba(45, 45, 45, 0.1);
	-webkit-transition: 0.4s -webkit-box-shadow;
	transition: 0.4s -webkit-box-shadow;
	transition: 0.4s box-shadow;
	transition: 0.4s box-shadow, 0.4s -webkit-box-shadow;
	cursor: pointer;
}

@media (max-width: 1700px) and (min-width: 1422px) {
	footer#main-footer {
		font-size: 16px;
	}
	footer#main-footer .footer-nav li {
		font-size: 19px;
	}
	footer#main-footer .footer-nav .icon-download {
		width: 22px;
		height: 18px;
		position: absolute;
		margin-left: 9px;
	}
}

@media (min-width: 66.66667em) and (max-width: 88.88889em) {
	footer#main-footer {
		font-size: 14px;
	}
	footer#main-footer .footer-nav li {
		font-size: 15px;
	}
	footer#main-footer .footer-nav .icon-download {
		width: 20px;
		height: 16px;
		margin-left: 6px;
	}
	footer#main-footer p {
		font-size: 15px;
	}
	footer#main-footer img.footer-logo {
		max-width: 215px;
	}
	footer#main-footer #bot {
		font-size: 14px;
	}
}

@media (min-width: 53.33333em) and (max-width: 66.66667em) {
	footer#main-footer .footer-nav li {
		font-size: 18px;
	}
	footer#main-footer .footer-nav .icon-download {
		width: 20px;
		height: 18px;
		margin-left: 1px;
		margin-bottom: -3px;
	}
	footer#main-footer p {
		font-size: 16px;
	}
	footer#main-footer img.footer-logo {
		max-width: 215px;
	}
	footer#main-footer #bot {
		font-size: 16px;
	}
}

@media (min-width: 42.66667em) and (max-width: 53.33333em) {
	footer#main-footer .footer-nav li {
		font-size: 16px;
	}
	footer#main-footer p {
		font-size: 15px;
	}
	footer#main-footer img.footer-logo {
		max-width: 185px;
	}
	footer#main-footer #bot {
		font-size: 14px;
	}
}

@media (min-width: 26.66667em) and (max-width: 42.66667em) {
	footer#main-footer .footer-nav li {
		font-size: 17px;
	}
	footer#main-footer p {
		font-size: 16px;
	}
	footer#main-footer img.footer-logo {
		max-width: 200px;
	}
	footer#main-footer #bot {
		font-size: 14px;
	}
	footer#main-footer .grid-item {
		margin-bottom: 3em;
	}
	footer#main-footer .grid-item:last-child {
		margin-bottom: 0;
	}
}

@media (max-width: 26.66667em) {
	footer#main-footer .footer-nav li {
		font-size: 16px;
	}
	footer#main-footer p {
		font-size: 15px;
	}
	footer#main-footer img.footer-logo {
		max-width: 185px;
	}
	footer#main-footer #bot {
		font-size: 12px;
	}
	footer#main-footer .grid-item {
		margin-bottom: 2.5em;
	}
	footer#main-footer .grid-item:last-child {
		margin-bottom: 0;
	}
	footer#main-footer #bot ul {
		display: block;
	}
	footer#main-footer #bot ul li {
		display: block;
		padding: 0;
		margin: 8px 0 0;
	}
	footer#main-footer #bot ul li:before {
		display: none;
	}
}

@media (max-width: 66.66667em) {
	footer#main-footer {
		text-align: center;
	}
	footer#main-footer .sm ul {
		display: inline-block;
	}
	footer#main-footer .sm ul li {
		margin-right: 1em !important;
	}
	footer#main-footer ul li:last-child {
		margin-right: 0 !important;
	}
	footer#main-footer .footer-nav .icon-download {
		position: static;
		width: 20px;
		height: 18px;
		margin-left: 1px;
		margin-bottom: -3px;
	}
	footer#main-footer .footer-nav li ul > li {
		margin-left: 0;
	}
	footer#main-footer #back-to-top {
		width: 60px;
		height: 60px;
	}
}

@media (max-width: 42.66667em) {
	footer#main-footer #back-to-top {
		width: 50px;
		height: 50px;
	}
}

.btn,
a.btn {
	display: inline-block;
	padding: 16px 19px;
	height: auto;
	vertical-align: middle;
	width: 100%;
	border: 2px solid #555555;
	background-color: #FFF;
	background-image: none;
	text-align: center;
	text-transform: uppercase;
	text-decoration: none;
	font-size: 18px;
	font-line-height: 1.5;
	font-family: "Sensibility", "Helvetica Neue", Helvetica, Arial, sans-serif;
	font-weight: bold;
	color: #555555;
	white-space: no-wrap;
	cursor: pointer;
	-ms-touch-action: manipulation;
	touch-action: manipulation;
	-webkit-user-select: none;
	-moz-user-select: none;
	-ms-user-select: none;
	user-select: none;
	-webkit-transition: all 0.2s ease-in-out;
	transition: all 0.2s ease-in-out;
}

@media (min-width: 26.66667em) {
	.btn,
	a.btn {
		width: auto;
	}
}

.btn:hover, .btn:active,
a.btn:hover,
a.btn:active {
	background-color: #cccccc;
	color: #333333;
}

.btn.btn--disabled,
a.btn.btn--disabled {
	border-color: #a6a6a6;
	background-color: #f2f2f2;
	color: gray;
}

.btn.btn--disabled:hover, .btn.btn--disabled:active,
a.btn.btn--disabled:hover,
a.btn.btn--disabled:active {
	border-color: #a6a6a6;
	background-color: #f2f2f2;
}

.btn.btn--priority-1,
a.btn.btn--priority-1 {
	border-color: #005D9A;
	background-color: #005D9A;
	color: #FFF;
}

.btn.btn--priority-1:hover, .btn.btn--priority-1:active,
a.btn.btn--priority-1:hover,
a.btn.btn--priority-1:active {
	border-color: #0071CE;
	background-color: #0071CE;
}

.btn.btn--priority-2,
a.btn.btn--priority-2 {
	border-color: #AC6120;
	background-color: #AC6120;
	color: #FFF;
}

.btn.btn--priority-2:hover, .btn.btn--priority-2:active,
a.btn.btn--priority-2:hover,
a.btn.btn--priority-2:active {
	border-color: #F68D2D;
	background-color: #F68D2D;
}

.btn.btn--priority-3,
a.btn.btn--priority-3 {
	border-color: #5E7E3E;
	background-color: #5E7E3E;
	color: #FFF;
}

.btn.btn--priority-3:hover, .btn.btn--priority-3:active,
a.btn.btn--priority-3:hover,
a.btn.btn--priority-3:active {
	border-color: #73994B;
	background-color: #73994B;
}

.btn.btn--priority-4,
a.btn.btn--priority-4 {
	border-color: #C83446;
	background-color: #C83446;
	color: #FFF;
}

.btn.btn--priority-4:hover, .btn.btn--priority-4:active,
a.btn.btn--priority-4:hover,
a.btn.btn--priority-4:active {
	border-color: #E93C51;
	background-color: #E93C51;
}

.btn.btn--priority-5,
a.btn.btn--priority-5 {
	border-color: #6A327C;
	background-color: #6A327C;
	color: #FFF;
}

.btn.btn--priority-5:hover, .btn.btn--priority-5:active,
a.btn.btn--priority-5:hover,
a.btn.btn--priority-5:active {
	border-color: #813D97;
	background-color: #813D97;
}

.btn.default-inverse,
a.btn.default-inverse {
	border-color: #FFF;
	color: #FFF;
	background-color: transparent;
}

.btn.default-inverse:hover, .btn.default-inverse:active,
a.btn.default-inverse:hover,
a.btn.default-inverse:active {
	background-color: rgba(255, 255, 255, 0.25);
}

.btn a:visited, .btn a:hover, .btn a:link,
a.btn a:visited,
a.btn a:hover,
a.btn a:link {
	color: inherit;
	text-decoration: none;
}

.btn--lg,
a.btn--lg {
	font-size: 25px;
}

.btn--sm,
a.btn--sm {
	padding: 15.42857px 21.6px;
	font-size: 16px;
}

.btn--xs,
a.btn--xs {
	padding: 10.8px 15.42857px;
	font-size: 16px;
}

.btn--download:before,
a.btn--download:before {
	content: "";
	padding-left: 27px;
	width: auto;
	height: 1em;
	background-position: left 3px;
	background-repeat: no-repeat;
	background-size: auto 1em;
	text-decoration: none;
}

@media (min-width: 26.66667em) {
	.btn--download:before,
	a.btn--download:before {
		text-align: centre;
	}
}

.btn--download:after,
a.btn--download:after {
	content: "";
	padding-right: 0;
	width: auto;
	height: 0;
	background-image: none;
}

@media (min-width: 26.66667em) {
	.btn--download:after,
	a.btn--download:after {
		text-align: center;
	}
}

.btn--download:before,
a.btn--download:before {
	background-image: url(../images/icons/icon--arrow-down-01.svg);
}

.btn--download:hover:before,
.btn--download:active:before,
a.btn--download:hover:before,
a.btn--download:active:before {
	background-image: url(../images/icons/icon--arrow-down-01.svg);
}

.btn--disabled.btn--download:before,
a.btn--disabled.btn--download:before {
	background-image: url(../images/icons/icon--arrow-down-01--disabled.svg);
}

.btn--disabled.btn--download:hover:before,
.btn--disabled.btn--download:active:before,
a.btn--disabled.btn--download:hover:before,
a.btn--disabled.btn--download:active:before {
	background-image: url(../images/icons/icon--arrow-down-01--disabled.svg);
}

@media (min-width: 66.66667em) and (max-width: 88.88889em) {
	.btn,
	a.btn {
		font-size: 22px;
	}
	.btn--lg,
	a.btn--lg {
		font-size: 23px;
	}
}

@media (min-width: 53.33333em) and (max-width: 66.66667em) {
	.btn,
	a.btn {
		font-size: 20px;
	}
	.btn--lg,
	a.btn--lg {
		font-size: 21px;
	}
}

@media (min-width: 42.66667em) and (max-width: 53.33333em) {
	.btn,
	a.btn {
		font-size: 18px;
	}
	.btn--lg,
	a.btn--lg {
		font-size: 19px;
	}
}

@media (min-width: 26.66667em) and (max-width: 42.66667em) {
	.btn,
	a.btn {
		font-size: 16px;
	}
	.btn--lg,
	a.btn--lg {
		font-size: 17px;
	}
}

@media (max-width: 42.66667em) {
	.btn,
	a.btn {
		padding: 14px 19px 15px;
	}
	
	.abt-btn {
		margin-left: 22%;
	}
}

@media (max-width: 26.66667em) {
	.btn,
	a.btn {
		font-size: 14px;
		padding: 6px 11px;
		width: auto;
	}
	.btn--lg,
	a.btn--lg {
		font-size: 15px;
	}
	.btn.btn--lg {
		width: 100%;
	}
}

form {
	display: block;
}

form div {
	display: block;
}

form .form-item,
form .form-actions {
	margin-bottom: 2em;
}

form label {
	display: inline-block;
	margin-bottom: 0.5em;
	max-width: 100%;
	font-weight: 700;
}

form input,
form textarea {
	padding: 6px 12px;
	border: 1px solid #555555;
	background-color: #FFF;
	background-image: none;
	-webkit-box-sizing: border-box;
	box-sizing: border-box;
	-webkit-transition: border-color 0.2s ease-in-out;
	transition: border-color 0.2s ease-in-out;
	-webkit-transition: box-shadow 0.2s ease-in-out;
	-webkit-transition: -webkit-box-shadow 0.2s ease-in-out;
	transition: -webkit-box-shadow 0.2s ease-in-out;
	transition: box-shadow 0.2s ease-in-out;
	transition: box-shadow 0.2s ease-in-out, -webkit-box-shadow 0.2s ease-in-out;
}

form input[type="text"], form input[type="email"], form input[type="password"],
form textarea[type="text"],
form textarea[type="email"],
form textarea[type="password"] {
	display: block;
	width: 100%;
	font-family: "Sensibility", "Helvetica Neue", Helvetica, Arial, sans-serif;
}

form input:focus,
form textarea:focus {
	outline: 0;
	border-color: #0071CE;
	-webkit-box-shadow: 0px 0px 5px #0071CE;
	box-shadow: 0px 0px 5px #0071CE;
}

form input {
	height: 2.7em;
}

form textarea {
	display: block;
	width: 100%;
}

form input.checked {
	border-color: #5E7E3E;
}

form input.error {
	border-color: #C83446;
}

form input.checked,
form input.error {
	background-position: right center;
	background-repeat: no-repeat;
	background-size: 30px auto;
	padding-right: 40px;
}

form input.checked {
	background-image: url(../images/icons/icon--checked-01.svg);
}

form input.error {
	background-image: url(../images/icons/icon--cancel-01.svg);
}

form label.control {
	position: relative;
	display: block;
	margin-bottom: 15px;
	padding-left: 30px;
	font-weight: 400;
	cursor: pointer;
	/* Hover and focus states */
	/* Checked state */
	/* Hover state whilst checked */
	/* Disabled state */
	/* Show check mark */
	/* Checkbox tick */
	/* Disabled tick colour */
	/* Radio button inner circle */
	/* Disabled circle colour */
}

form label.control input {
	position: absolute;
	z-index: -1;
	opacity: 0;
	filter: alpha(opacity=0);
}

form label.control .control__indicator {
	position: absolute;
	top: -1px;
	left: 0;
	width: 20px;
	height: 20px;
	border: 1px solid #555555;
	background: #f2f2f2;
	/* Check mark */
}

form label.control .control__indicator:after {
	position: absolute;
	display: none;
	content: '';
}

form label.control.control--radio .control__indicator {
	border-radius: 50%;
}

form label.control:hover input ~ .control__indicator,
form label.control input:focus ~ .control__indicator {
	background: #f7f7f7;
}

form label.control input:checked ~ .control__indicator {
	border-color: #5E7E3E;
	background: #5E7E3E;
}

form label.control:hover input:not([disabled]):checked ~ .control__indicator,
form label.control input:checked:focus ~ .control__indicator {
	border-color: #516d36;
	background: #516d36;
}

form label.control input:disabled ~ .control__indicator {
	pointer-events: none;
	border-color: #555555;
	background: #f2f2f2;
	opacity: 0.5;
	filter: alpha(opacity=50);
}

form label.control input:checked ~ .control__indicator:after {
	display: block;
}

form label.control.control--checkbox .control__indicator:after {
	top: 4px;
	left: 8px;
	width: 3px;
	height: 8px;
	-webkit-transform: rotate(45deg);
	-ms-transform: rotate(45deg);
	transform: rotate(45deg);
	border: solid #FFF;
	border-width: 0 2px 2px 0;
}

form label.control.control--checkbox input:disabled ~ .control__indicator:after {
	border-color: #666666;
}

form label.control.control--radio .control__indicator:after {
	top: 6px;
	left: 6px;
	width: 6px;
	height: 6px;
	background: #FFF;
	border-radius: 50%;
}

form label.control.control--radio input:disabled ~ .control__indicator:after {
	background: #666666;
}

form .select {
	position: relative;
	display: inline-block;
	width: 100%;
	margin-bottom: 15px;
}

form .select select {
	display: inline-block;
	padding: 10px 15px;
	width: 100%;
	border: 1px solid #555555;
	background-color: #FFF;
	color: #555555;
	outline: 0;
	cursor: pointer;
	appearance: none;
	-webkit-appearance: none;
	-moz-appearance: none;
	border-radius: 0px;
}

form .select select::-ms-expand {
	display: none;
}

form .select select:hover,
form .select select:focus {
	background-color: #f2f2f2;
}

form .select select:disabled {
	pointer-events: none;
	opacity: 0.5;
	filter: alpha(opacity=50);
}

form .select .select__arrow {
	position: absolute;
	top: 16px;
	right: 15px;
	width: 0;
	height: 0;
	pointer-events: none;
	border-width: 8px 5px 0 5px;
	border-style: solid;
	border-color: #666666 transparent transparent transparent;
}

form .select select:hover ~ .select__arrow,
form .select select:focus ~ .select__arrow {
	border-top-color: #555555;
}

form .select select:disabled ~ .select__arrow {
	opacity: 0.5;
	filter: alpha(opacity=50);
}

form input[type="submit"],
form input[type="reset"] {
	display: inline-block;
	margin-bottom: 18px;
	padding: 18px 27px;
	height: auto;
	width: 100%;
	border: 2px solid #555555;
	background-color: #FFF;
	background-image: none;
	text-align: center;
	text-transform: uppercase;
	text-decoration: none;
	font-size: 18px;
	font-line-height: 1.5;
	font-family: "Sensibility", "Helvetica Neue", Helvetica, Arial, sans-serif;
	font-weight: bold;
	white-space: no-wrap;
	cursor: pointer;
	-ms-touch-action: manipulation;
	touch-action: manipulation;
	-webkit-user-select: none;
	-moz-user-select: none;
	-ms-user-select: none;
	user-select: none;
	-webkit-transition: all 0.2s ease-in-out;
	transition: all 0.2s ease-in-out;
}

@media (min-width: 42.66667em) {
	form input[type="submit"],
	form input[type="reset"] {
		width: auto;
	}
}

form input[type="submit"] {
	border-color: #5E7E3E;
	background-color: #5E7E3E;
	color: #FFF;
}

form input[type="submit"]:hover, form input[type="submit"]:active {
	border-color: #455c2d;
	background-color: #455c2d;
}

form input[type="reset"] {
	border-color: #555555;
	background-color: #FFF;
	color: #555555;
}

form input[type="reset"]:hover, form input[type="reset"]:active {
	background-color: #cccccc;
	color: #333333;
}

table {
	display: table;
	margin-bottom: 2em;
	width: 100%;
	max-width: 100%;
	border-spacing: 0;
	border-collapse: collapse;
	border-color: #a6a6a6;
	background-color: transparent;
	font-size: 18px;
	font-family: "Sensibility", "Helvetica Neue", Helvetica, Arial, sans-serif;
	font-weight: normal;
	line-height: 1.5;
}

table caption {
	padding: 8px 0;
	text-align: left;
}

table thead {
	display: table-header-group;
	vertical-align: top;
	border-color: inherit;
}

table tbody {
	display: table-row-group;
	vertical-align: top;
	border-color: inherit;
}

table tr {
	display: table-row;
	vertical-align: inherit;
	border-color: inherit;
}

table th {
	display: table-cell;
	text-align: left;
	font-weight: bold;
}

table td {
	display: table-cell;
	border: 1px solid #a6a6a6;
}

table thead > tr > th,
table tbody > tr > th,
table tbody > tr > td {
	padding: 12px 10px;
	border: 1px solid #a6a6a6;
	vertical-align: top;
}

table thead > tr > th {
	border-bottom: 2px solid #a6a6a6;
}

table tbody > tr:hover,
table tbody > tr:active {
	background-color: #fdead8;
}

.table--no-border td {
	border: none;
	border-top: 1px solid #a6a6a6;
}

.table--no-border tbody > tr > th,
.table--no-border tbody > tr > td {
	border: none;
	border-top: 1px solid #a6a6a6;
}

.table--no-border thead > tr > th {
	border: none;
	border-bottom: 2px solid #a6a6a6;
}

.table--no-border tbody > tr:last-of-type {
	border-bottom: 1px solid #a6a6a6;
}

table.table--invisible thead {
	color: inherit;
}

table.table--invisible td {
	border: none;
}

table.table--invisible thead > tr > th,
table.table--invisible tbody > tr > th,
table.table--invisible tbody > tr > td {
	padding-left: 0;
	border: none;
}

table.table--invisible thead > tr {
	background-color: inherit;
}

table.table--invisible thead > tr > th {
	border: none;
}

table.table--invisible tbody > tr:nth-of-type(even) {
	background-color: inherit;
}

table.table--invisible tbody > tr:hover,
table.table--invisible tbody > tr:active {
	background-color: #fdead8;
}

table.table--stripes tbody > tr:nth-of-type(even) {
	background-color: #f2f2f2;
}

table.table--stripes tbody > tr:hover,
table.table--stripes tbody > tr:active {
	background-color: #fdead8;
}

/* Horizontal scroll */
div.table_scroll {
	overflow-x: auto;
}

.breadcrumb {
	display: block;
	overflow: hidden;
	font-size: 16px;
}

.breadcrumb ul {
	margin: 0;
	padding: 0;
	list-style: none;
	list-image: none;
}

.breadcrumb li {
	display: inline;
	margin: 0;
	padding: 0;
	padding-left: 3px;
}

.breadcrumb a,
.breadcrumb a:link,
.breadcrumb a:visited {
	padding-right: 5px;
	color: #555555;
	-webkit-transition: all 0.2s ease-in-out;
	transition: all 0.2s ease-in-out;
}

.breadcrumb a:first-child,
.breadcrumb a:link:first-child,
.breadcrumb a:visited:first-child {
	padding-left: 0;
}

.breadcrumb a:hover, .breadcrumb a:focus,
.breadcrumb a:link:hover,
.breadcrumb a:link:focus,
.breadcrumb a:visited:hover,
.breadcrumb a:visited:focus {
	color: #555555;
}

.img-responsive {
	max-width: 100%;
	display: block;
	height: auto;
}

main img {
	margin-bottom: 27px;
	max-width: 100%;
	height: auto;
}

figure {
	margin: 0;
	margin-bottom: 27px;
	padding: 0 0 20px;
	border-bottom: 1px solid #a6a6a6;
}

figure img {
	margin-bottom: 0;
	padding-bottom: 1em;
}

figcaption {
	font-size: 16px;
	font-style: italic;
}

.video-wrapper {
	position: relative;
	padding-bottom: 56.25%;
	/* 16:9 */
	padding-top: 25px;
	height: 0;
}

.video-wrapper iframe {
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
}

.hamburger {
	position: absolute;
	right: 16px;
	top: 0;
	bottom: 0;
	z-index: 99;
}

.hamburger .hamburger-inner, .hamburger .hamburger-inner::before, .hamburger .hamburger-inner::after {
	width: 37px;
	height: 6px;
	background-color: #555555;
}

.hamburger.is-active {
	-webkit-transition: 0.4s opacity;
	transition: 0.4s opacity;
}

.side-menu {
	position: fixed;
	top: 0;
	right: 0;
	bottom: 0;
	width: 100%;
	max-width: 460px;
	z-index: 101;
	background: #f5f5f5;
	overflow: hidden;
	-webkit-transform: translateX(100%);
	-ms-transform: translateX(100%);
	transform: translateX(100%);
	-webkit-transition: 0.5s -webkit-transform cubic-bezier(0.4, 0, 0.2, 1) 0.5s;
	transition: 0.5s -webkit-transform cubic-bezier(0.4, 0, 0.2, 1) 0.5s;
	transition: 0.5s transform cubic-bezier(0.4, 0, 0.2, 1) 0.5s;
	transition: 0.5s transform cubic-bezier(0.4, 0, 0.2, 1) 0.5s, 0.5s -webkit-transform cubic-bezier(0.4, 0, 0.2, 1) 0.5s;
}

.side-menu .menu-content {
	width: 100%;
	font-family: "Sensibility", "Helvetica Neue", Helvetica, Arial, sans-serif;
	padding: 3.445em 30px 3.445em 0;
	text-transform: uppercase;
}

.side-menu .menu-content ul {
	margin: 0;
	padding: 0;
	list-style-type: none;
}

.side-menu .menu-content a, .side-menu .menu-content a:hover, .side-menu .menu-content a:focus, .side-menu .menu-content a:visited {
	color: inherit;
	text-decoration: none;
}

.side-menu .menu-content .hamburger {
	display: block;
	position: static;
	margin-left: 1.36em;
	padding: 0.61em;
	font-size: 18px;
}

.side-menu .menu-content .navigation-area {
	padding: 1.2em 0 0 0;
}

.side-menu .menu-content .navigation-area li {
	font-size: 24px;
	color: #555555;
	line-height: 1.2;
	margin-bottom: 0.21em;
	position: relative;
	overflow: hidden;
	padding: 0.485em 0 0.486em 1.6em;
}

.side-menu .menu-content .navigation-area li strong {
	position: relative;
}

.side-menu .menu-content .navigation-area li a {
	display: block;
	padding: 0.485em 0 0.486em 1.6em;
	color: #555555;
}

.side-menu .menu-content .navigation-area li a:hover {
	color: #868686;
}

.side-menu .menu-content .navigation-area li.item {
	padding: 0;
}

.side-menu .menu-content .navigation-area li.item:before, .side-menu .menu-content .navigation-area li.item:after {
	background: whitesmoke;
	content: '';
	width: 1.18em;
	height: 51%;
	-webkit-transition: 0.1s background ease-out;
	transition: 0.1s background ease-out;
	position: absolute;
	left: -7px;
}

.side-menu .menu-content .navigation-area li.item:before {
	-webkit-transform: skewX(15deg);
	-ms-transform: skewX(15deg);
	transform: skewX(15deg);
	top: 0;
}

.side-menu .menu-content .navigation-area li.item:after {
	bottom: 0;
	-webkit-transform: skewX(-15deg);
	-ms-transform: skewX(-15deg);
	transform: skewX(-15deg);
}

.side-menu .menu-content .navigation-area li.item.active {
	background: #0071CE;
}

.side-menu .menu-content .navigation-area li.item.active a {
	color: #fff;
}

.side-menu .menu-content .navigation-area li.item.active a:hover {
	color: gainsboro;
}

.side-menu .menu-content .navigation-area li.item.active:before, .side-menu .menu-content .navigation-area li.item.active:after {
	background: #005d9a;
}

.side-menu .menu-content .navigation-area li.item:hover:before, .side-menu .menu-content .navigation-area li.item:hover:after {
	background: #005d9a;
	-webkit-transition: 0.35s background ease-out;
	transition: 0.35s background ease-out;
}

.side-menu .menu-content .navigation-area li:last-child {
	margin-bottom: 0;
}

.side-menu .menu-content .navigation-area ul.withSub {
	margin: 0.25em 0 1em;
}

.side-menu .menu-content .navigation-area ul.withSub > li:first-child {
	margin-bottom: 0.1em;
}

.side-menu .menu-content .navigation-area ul.withSub > li.child {
	margin-bottom: 0.1em;
	margin-left: 1.6em;
	padding-left: 0.9em;
}

.side-menu .menu-content .navigation-area ul.withSub > li.child a {
	padding: 0.48em 0 0.48em 0.7em;
}

.side-menu .bottom-area {
	position: relative;
	margin-top: 0.3em;
	padding: 2.30em 0 0 2.1em;
}

.side-menu .bottom-area:before {
	content: '';
	max-width: 19.612em;
	width: 100%;
	height: 3px;
	top: 0;
	background: #0071CE;
	position: absolute;
}

.side-menu .bottom-area li {
	color: #0071CE;
	font-size: 22px;
	font-family: "Sensibility", "Helvetica Neue", Helvetica, Arial, sans-serif;
	margin-bottom: 0.6em;
	font-weight: 700;
}

.side-menu .bottom-area li a {
	display: block;
}

.side-menu .bottom-area li .icon-download {
	width: 22px;
	height: auto;
	margin: 0 0 -1px 2px;
}

.side-menu .bottom-area li:last-child {
	margin-bottom: 0;
}

.side-menu .bottom-area li a:hover {
	color: #249bff;
}

.side-menu .bottom-area .sm {
	margin-top: 0.8em;
}

.side-menu .bottom-area .sm li {
	margin: 0 1.3em 0 0;
}

.side-menu .bottom-area .sm li.tw {
	margin-top: 5px;
	margin-right: 0.9em;
}

.side-menu .bottom-area .sm li.yt {
	margin-top: 3px;
}

.side-menu.active {
	-webkit-transform: translateX(0%);
	-ms-transform: translateX(0%);
	transform: translateX(0%);
	-webkit-transition: 0.5s -webkit-transform cubic-bezier(0.4, 0, 0.2, 1) 0.5s;
	transition: 0.5s -webkit-transform cubic-bezier(0.4, 0, 0.2, 1) 0.5s;
	transition: 0.5s transform cubic-bezier(0.4, 0, 0.2, 1) 0.5s;
	transition: 0.5s transform cubic-bezier(0.4, 0, 0.2, 1) 0.5s, 0.5s -webkit-transform cubic-bezier(0.4, 0, 0.2, 1) 0.5s;
}

@media (min-width: 66.66667em) and (max-width: 88.88889em) {
	.side-menu {
		max-width: 430px;
	}
	.side-menu .menu-content {
		font-size: 14px;
	}
	.side-menu .menu-content .navigation-area li {
		font-size: 24px;
	}
	.side-menu .bottom-area li {
		font-size: 22px;
	}
	.side-menu .bottom-area {
		padding: 2.30em 0 0 2.76em;
	}
		.jumbotron .solidLine{
		margin: 0% 0% 0% 0%;
	}
}

@media (min-width: 53.33333em) and (max-width: 66.66667em) {
	.side-menu .menu-content {
		font-size: 13px;
	}
	.side-menu {
		max-width: 400px;
	}
	.side-menu .menu-content .navigation-area li {
		font-size: 23px;
	}
	.side-menu .bottom-area li {
		font-size: 20px;
	}
	.side-menu .bottom-area li .icon-download {
		width: 20px;
		margin: 0 0 0 2px;
	}
}

@media (min-width: 42.66667em) and (max-width: 53.33333em) {
	.side-menu .menu-content .hamburger {
		font-size: 11px;
	}
	.side-menu .menu-content {
		font-size: 11px;
	}
	.side-menu {
		max-width: 360px;
	}
	.side-menu .menu-content .navigation-area li {
		font-size: 22px;
		padding: 0.485em 0 0.486em 1.1em;
	}
	.side-menu .bottom-area li {
		font-size: 18px;
	}
	.side-menu .bottom-area li .icon-download {
		width: 19px;
		margin: 0 0 -1px 2px;
	}
}

@media (min-width: 26.66667em) and (max-width: 42.66667em) {
	.side-menu .menu-content .hamburger {
		font-size: 9px;
	}
	.side-menu .menu-content {
		font-size: 11px;
	}
	.side-menu {
		max-width: 320px;
	}
	.side-menu .menu-content .navigation-area li {
		font-size: 20px;
		padding: 0.485em 0 0.486em 1.1em;
	}
	.side-menu .bottom-area li {
		font-size: 16px;
	}
	.side-menu .bottom-area li .icon-download {
		width: 18px;
		height: auto;
		margin: 0 0 -1px 2px;
	}
}

@media (max-width: 26.66667em) {
	.side-menu .menu-content .hamburger {
		font-size: 8px;
	}
	.side-menu .menu-content {
		font-size: 9px;
	}
	.side-menu {
		max-width: 260px;
	}
	.side-menu .menu-content .navigation-area li {
		font-size: 18px;
		padding: 0.485em 0 0.486em 1.1em;
	}
	.side-menu .bottom-area li {
		font-size: 14px;
	}
	.side-menu .bottom-area li .icon-download {
		width: 16px;
		margin: 0 0 -1px 2px;
	}
	.side-menu .menu-content .navigation-area li {
		line-height: 1.16;
	}
}

@-moz-document url-prefix() {
	.side-menu .menu-content .navigation-area li {
		line-height: 1.19;
	}
}

@media (max-width: 66.66667em) {
	.side-menu {
		position: absolute;
	}
	.side-menu-container {
		overflow: hidden;
		position: absolute;
		left: 0;
		right: 0;
		top: 0;
		bottom: 0;
		margin: auto;
	}
}

@media (max-width: 53.33333em) {
	.side-menu .menu-content .navigation-area li.item:before, .side-menu .menu-content .navigation-area li.item:after {
		width: 1.05em;
	}
	.side-menu .menu-content .navigation-area ul.withSub > li.child {
		margin-left: 1.1em;
	}
	.side-menu .menu-content .navigation-area ul.withSub > li.child a {
		padding: 0.48em 0 0.48em 0.2em;
	}
	.side-menu .menu-content .navigation-area li a {
		padding: 0.485em 0 0.486em 1.1em;
	}
}

.jumbotron {
	text-align: left;
	margin: 0.7em 0 4em;
}

.jumbotron h1, .jumbotron .h1 {
	line-height: 0.896;
	font-size: 100px;
	margin: 0;
	letter-spacing: 0.5px;
	font-weight: normal;
}

.jumbotron h2, .jumbotron .h2 {
	line-height: 1.30435;
	font-size: 46px;
}

.jumbotron h1 + h2 {
	margin: 0.68em 0 0 0.84em;
}

.jumbotron h4, .jumbotron .h4 {
	font-size: 50px;
	font-weight: bold;
}

.jumbotron .lead {
	font-size: 2.0em;
	line-height: 1.375;
	letter-spacing: -0.19px;
	margin: 0.8em 0 0.85em;
}

.jumbotron .solidLine{
  border-top: 3px solid #0071CE;
  margin: 0% 33% 0% 0%
}

}

.jumbotron .btn.btn--download {
	padding: 15px 19px 15px 16px;
}

.jumbotron .btn--download:before, .jumbotron a.btn--download:before {
	margin-right: 5px;
}

.jumbotron .desktop-img {
	height: 360px;
	width: auto;
	background: url(../images/hero-banner_1.png) no-repeat;
	margin: 0px 0px 0px auto;
	background-size: contain;
	background-position: center center;
}

.jumbotron .mobile-img {
	display: none;
	height: 94px;
	width: auto;
	background: url(../images/home-header-mobile.png) no-repeat center;
	margin: 0 auto;
	background-size: contain;
}

@media (min-width: 1422px) and (max-width: 1600px) {
	.jumbotron {
		font-size: 17px;
	}
	.jumbotron h1 {
		font-size: 100px;
	}
	.jumbotron h4 {
		font-size: 45px;
	}
	.jumbotron .solidLine{
		margin-right: 36%;
	}
}

@media (min-width: 66.66667em) and (max-width: 88.88889em) {
	.jumbotron {
		font-size: 15px;
	}
	.jumbotron h1 {
		font-size: 92px;
	}
	.jumbotron h2 {
		font-size: 38px;
	}
	.jumbotron .desktop-img {
		height: 224px;
	}
}

@media (min-width: 53.33333em) and (max-width: 66.66667em) {
	.jumbotron {
		font-size: 13px;
	}
	.jumbotron h1 {
		font-size: 88px;
		text-align: left;
	}
	.jumbotron h2 {
		font-size: 34px;
	}
	.jumbotron .btn--download:before, .jumbotron a.btn--download:before {
		margin-right: 0;
	}
	.jumbotron .desktop-img {
		height: 184px;
	}
	.jumbotron h4{
		font-size: 40px;
	}
	.jumbotron .solidLine{
		margin: 0% 0% 0% 0%;
	}
}

@media (min-width: 42.66667em) and (max-width: 53.33333em) {
	.jumbotron {
		font-size: 11px;
	}
	.jumbotron h1 {
		font-size: 76px;
		text-align: left;
	}
	.jumbotron h2 {
		font-size: 30px;
	}
	.jumbotron .lead {
		font-size: 2.2em;
	}
	.jumbotron .btn.btn--download {
		padding: 0.695em 0.695em 0.695em 0.60em;
	}
	.jumbotron .btn--download:before, .jumbotron a.btn--download:before {
		margin-right: 0;
	}
	.jumbotron h4{
		font-size: 40px;
	}
	.jumbotron .solidLine{
		margin: 0% 0% 0% 0%;
	}
	.btn--download:before,
	a.btn--download:before {
		padding-left: 22px;
	}
}

@media (min-width: 26.66667em) and (max-width: 42.66667em) {
	.jumbotron {
		font-size: 9px;
		margin-left: 15px;
		margin-right: 15px;
	}
	.jumbotron h1 {
		font-size: 54px;
		text-align: left;
	}
	.jumbotron h2 {
		font-size: 24px;
	}
	.jumbotron .lead {
		font-size: 2.2em;
	}
	.jumbotron .btn.btn--download {
		padding: 0.695em 0.695em 0.695em 0.60em;
	}
	.jumbotron .btn--download:before, .jumbotron a.btn--download:before {
		margin-right: 0;
	}
	.jumbotron h4{
		font-size: 40px;
	}
	.jumbotron .solidLine{
		margin: 0% 0% 0% 0% !important;
	}
	.btn--download:before,
	a.btn--download:before {
		padding-left: 22px;
		background-position: left 2px;
	}
}

@media (max-width: 26.66667em) {
	.jumbotron {
		font-size: 7px;
		margin-left: 15px;
		margin-right: 15px;
	}
	.jumbotron h1 {
		font-size: 58px;
	}
	.jumbotron h2 {
		font-size: 22px;
	}
	.jumbotron .lead {
		font-size: 2.2em;
	}
	.jumbotron .btn.btn--download {
		padding: 0.695em 0.695em 0.695em 0.60em;
	}
	.jumbotron .btn--download:before, .jumbotron a.btn--download:before {
		margin-right: 0;
	}
	.btn--download:before,
	a.btn--download:before {
		padding-left: 22px;
		background-position: left 2px;
	}
	
	.jumbotron .solidLine{
		margin: 0% 0% 0% 0%;
	}
}

@media (max-width: 66.66667em) {
	.jumbotron .desktop-img {
		height:100px;
	}
	.jumbotron .mobile-img {
		display: block;
		margin-top: 30px;
	}
	.jumbotron .grid-item-2 {
		text-align: center;
	}
	.jumbotron h1 + h2 {
		margin: 0;
	}
	.jumbotron .solidLine{
		margin: 0% 0% 0% 0%;
	}
}

.priority-tabs--header {
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-ms-flex-align: start;
	-webkit-box-align: start;
	align-items: flex-start;
	position: relative;
	z-index: 20;
}

.priority-tabs--content {
	clear: both;
	display: block;
	margin-top: 1rem;
	position: relative;
}

.priority-tabs--content .l-grid-priority {
	margin-left: -23px;
	margin-right: -23px;
}

.priority-tabs--content .l-grid-priority.withPadding {
	padding-bottom: 2.15em;
}

.priority-tabs--content .priority-content--title {
	letter-spacing: -0.3px;
	line-height: 0.96;
}

.priority-tabs-out {
	margin-top: 6.13rem;
}

.priority-tabs-out .priority-tabs {
	margin-top: 3.5rem;
}

.priority-tab {
	cursor: pointer;
	position: relative;
	display: block;
	float: left;
	width: calc((100% - 30px * 6) / 6);
	padding: 0.8125rem 0 0;
	border-left: 15px solid #fff;
	border-right: 15px solid #fff;
	text-align: center;
	font-size: 1.875rem;
	line-height: 0;
	color: #FFF;
	-webkit-box-sizing: content-box;
	box-sizing: content-box;
	-webkit-transition: padding-top .3s ease, line-height .3s linear;
	transition: padding-top .3s ease, line-height .3s linear;
}

@media (min-width: 66.66667em) {
	.priority-tab:first-of-type {
		margin-left: 8.334%;
	}
}

@media (min-width: 42.66667em) {
	.priority-tab:hover, .priority-tab.active {
		line-height: 0.93333;
		/*padding-top: 2rem;*/
	}
	.priority-tab:hover .priority-icon, .priority-tab.active .priority-icon {
		height: 4.3125rem;
	}
	.priority-tab:hover .priority-label, .priority-tab.active .priority-label {
		padding-bottom: 0;
	}
	.priority-tab:hover .priority-label .priority-tab--chevron, .priority-tab.active .priority-label .priority-tab--chevron {
		margin-top: -11px;
	}
	.priority-tab:hover .priority-tab--chevron, .priority-tab.active .priority-tab--chevron {
		height:100px;
		-webkit-transition: height 0.3s;
		transition: height 0.3s;
	}
}

.priority-label {
	display: block;
	min-height: 0.93333em;
	padding-top: 0.3125rem;
	padding-bottom: 0.2rem;
	margin-top: 1.125rem;
	position: relative;
	-webkit-transition: background-color 0.1s ease, padding-bottom .3s ease;
	transition: background-color 0.1s ease, padding-bottom .3s ease;
}

.priority-label--text {
	position: relative;
	z-index: 2;
	font-family: "Sensibility", "Helvetica Neue", Helvetica, Arial, sans-serif;
	line-height: 0.94;
	text-transform: uppercase;
	font-weight: normal;
}

.priority-icon {
	position: relative;
    z-index: 1;
	vertical-align: top;
	display: inline-block;
	width: auto;
	height: 0;
	margin: 0.8rem 0 -0.1em;
	-webkit-transition: height .3s ease;
	transition: height .3s ease;
}

.priority-tab--chevron {
	margin-top: -10px;
	position: absolute;
	left: 0;
	top: 100%;
	-webkit-transition: color 0.3s ease;
	transition: color 0.3s ease;
	max-width: 100%;
	width:266px;
	height:58px; 

}

.priority-content {
	margin: 0;
	overflow: hidden;
	opacity: 0;
	height: 0;
	visibility: hidden;
	border-width: 0 !important;
}

.priority-content.active {
	border-width: 8px !important;
	height: auto;
	-webkit-box-ordinal-group: 10000;
	-ms-flex-order: 9999;
	order: 9999;
	padding: 6.9375rem 0 5.1875rem;
	visibility: visible;
	opacity: 1;
	-webkit-transition: 0.6s opacity cubic-bezier(0.68, -0.55, 0.27, 1.55);
	transition: 0.6s opacity cubic-bezier(0.68, -0.55, 0.27, 1.55);
}

.priority-content--main p {
	font-size: 1.875rem;
	line-height: 1.4;
	margin: -6px 0 0;
	letter-spacing: -0.05px;
}

.btn.priority-content--link {
	width: 8.25rem;
	margin-left: 31px;
	margin-top: 2px;
	font-size: 1.875rem;
	line-height: 1;
	display: inline-block;
	padding: 29px 0 27px;
}

.under-priorities .btn {
	margin-top: 2em;
	padding: 14px 19px 15px;
}

.priority-color-1.priority-content {
	border: 8px solid #0071CE;
}

.priority-color-1.priority-tab {
	background-color: #0071CE;
}
.priority-color-1.priority-tab::selection {
    color: none;
    background: none;
}

.priority-color-1 .priority-label {
	background-color: #005D9A;
}

.priority-color-1 .priority-tab--chevron {
	color: #005D9A;
}

.priority-color-1 .priority-content--title {
	color: #0071CE;
}

.priority-color-1:hover .priority-tab--chevron, .priority-color-1.active .priority-tab--chevron {
	color: #0071CE;
}

.priority-color-1:hover .priority-label, .priority-color-1.active .priority-label {
	background-color: #0071CE;
}

.priority-color-1 .l-grid-priority-down {
	background: #005D9A;
}

.priority-color-2.priority-content {
	border: 8px solid #F68D2D;
}

.priority-color-2.priority-tab {
	background-color: #F68D2D;
}

.priority-color-2 .priority-label {
	background-color: #AC6120;
}

.priority-color-2 .priority-tab--chevron {
	color: #AC6120;
}

.priority-color-2 .priority-content--title {
	color: #F68D2D;
}

.priority-color-2:hover .priority-tab--chevron, .priority-color-2.active .priority-tab--chevron {
	color: #F68D2D;
}

.priority-color-2:hover .priority-label, .priority-color-2.active .priority-label {
	background-color: #F68D2D;
}

.priority-color-2 .l-grid-priority-down {
	background: #AC6120;
}

.priority-color-3.priority-content {
	border: 8px solid #73994B;
}

.priority-color-3.priority-tab {
	background-color: #73994B;
}

.priority-color-3 .priority-label {
	background-color: #5E7E3E;
}

.priority-color-3 .priority-tab--chevron {
	color: #5E7E3E;
}

.priority-color-3 .priority-content--title {
	color: #73994B;
}

.priority-color-3:hover .priority-tab--chevron, .priority-color-3.active .priority-tab--chevron {
	color: #73994B;
}

.priority-color-3:hover .priority-label, .priority-color-3.active .priority-label {
	background-color: #73994B;
}

.priority-color-3 .l-grid-priority-down {
	background: #5E7E3E;
}

.priority-color-4.priority-content {
	border: 8px solid #E93C51;
}

.priority-color-4.priority-tab {
	background-color: #E93C51;
}

.priority-color-4 .priority-label {
	background-color: #C83446;
}

.priority-color-4 .priority-tab--chevron {
	color: #C83446;
}

.priority-color-4 .priority-content--title {
	color: #E93C51;
}

.priority-color-4:hover .priority-tab--chevron, .priority-color-4.active .priority-tab--chevron {
	color: #E93C51;
}

.priority-color-4:hover .priority-label, .priority-color-4.active .priority-label {
	background-color: #E93C51;
}

.priority-color-4 .l-grid-priority-down {
	background: #C83446;
}

.priority-color-5.priority-content {
	border: 8px solid #813D97;
}

.priority-color-5.priority-tab {
	background-color: #813D97;
}

.priority-color-5 .priority-label {
	background-color: #6A327C;
}

.priority-color-5 .priority-tab--chevron {
	color: #6A327C;
}

.priority-color-5 .priority-content--title {
	color: #813D97;
}

.priority-color-5:hover .priority-tab--chevron, .priority-color-5.active .priority-tab--chevron {
	color: #813D97;
}

.priority-color-5:hover .priority-label, .priority-color-5.active .priority-label {
	background-color: #813D97;
}

.priority-color-5 .l-grid-priority-down {
	background: #6A327C;
}

@media (min-width: 1422px) and (max-width: 1600px) {
	.priority-tab {
		font-size: 28px;
	}
}

@media (min-width: 66.66667em) and (max-width: 88.88889em) {
	.priority-tab {
		font-size: 24px;
	}
	.btn.priority-content--link {
		margin-left: 0;
	}
	.l-grid-priority .grid-item-3 {
		text-align: center;
	}
	.priority-content {
		padding-left: 15px !important;
		padding-right: 15px !important;
	}
}

@media (min-width: 53.33333em) and (max-width: 66.66667em) {
	.priority-tab {
		width: calc(100% / 5);
	}
	.priority-tabs--header {
		margin: 0 23px;
	}
	.btn.priority-content--link {
		margin-left: 0;
	}
	.l-grid-priority .grid-item-3 {
		text-align: center;
	}
}

@media (min-width: 26.66667em) and (max-width: 42.66667em) {
	.btn.priority-content--link {
		width: 15.25rem;
		padding: 10px 0;
		margin: 1.4rem 0 0;
		font-size: 2.2rem;
	}
}

@media (max-width: 66.66667em) {
	.priority-content {
		padding-left: 30px !important;
		padding-right: 30px !important;
	}
}

@media (max-width: 53.33333em) {
	.priority-tab {
		width: calc(100% / 5);
		border-left-width: 8px;
		border-right-width: 8px;
	}
	.priority-tabs--header {
		margin: 0 23px;
	}
	.btn.priority-content--link {
		width: 15.25rem;
		padding: 17px 0;
		margin: 1.4rem 0 0;
	}
	.priority-content--main p {
		margin-top: 1rem !important;
	}
	.priority-content--title {
		font-size: 4rem;
	}
}

@media (max-width: 42.66667em) {
	.priority-tab {
		padding: 1.8rem 0 0;
		width: calc(100% / 5);
		-webkit-transition: 0s padding-top;
		transition: 0s padding-top;
	}
	.priority-tab .priority-icon {
		height: 6rem;
		position: relative;
		z-index: 3;
		margin: 0 0 -0.3em;
	}
	.priority-tab .priority-label {
		padding-bottom: 2.75rem;
		display: none;
	}
	.priority-tab .priority-label--text {
		display: none;
	}
	.priority-tab.active, .priority-tab:hover {
		line-height: 6;
		-webkit-transition: 0.2s line-height;
		transition: 0.2s line-height;
	}
	.priority-tab.active .priority-tab--chevron, .priority-tab:hover .priority-tab--chevron {
		margin-top: -5px;
		-webkit-transition: 0.2s margin-top;
		transition: 0.2s margin-top;
	}
	.priority-tabs .priority-content.active {
		border-width: 5px !important;
	}
	.priority-tabs .priority-tabs--header {
		margin: 0 20px;
	}
	.priority-content--main p {
		font-size: 18px;
	}
	.priority-tabs--content .priority-content--title {
		font-size: 34px;
	}
	/* Chevron colors */
	.priority-color-1 .priority-label{
		background-color: #0071CE;
	}
	.priority-color-1 .priority-tab--chevron {
		color: #0071CE;
	}
	
	.priority-color-2 .priority-label{
		background-color: #F68D2D;
	}
	.priority-color-2 .priority-tab--chevron {
		color: #F68D2D;
	}
	
	.priority-color-3 .priority-label{
		background-color: #73994B;
	}
	.priority-color-3 .priority-tab--chevron {
		color: #73994B;
	}
	
	.priority-color-4 .priority-label{
		background-color: #E93C51;
	}
	.priority-color-4 .priority-tab--chevron {
		color: #E93C51;
	}
	
	.priority-color-5 .priority-label{
		background-color: #813D97;
	}
	.priority-color-5 .priority-tab--chevron {
		color: #813D97;
	}
}

@media (max-width: 26.66667em) {
	.btn.priority-content--link {
		width: 100%;
		padding: 10px 0;
		font-size: 2.2rem;
	}
	.under-priorities {
		padding: 0 30px;
	}
	.under-priorities .btn {
		padding: 10px 0 11px;
	}
	.priority-tab .priority-icon {
		margin: 0 0 -0.45em;
	}
	.priority-tabs--content .priority-content--title {
		font-size: 28px;
	}
}

/*
 * Not sure what this meant to do but it disables parallax on IE for sure
@media screen and (min-width:0\0) and (min-resolution: +72dpi) {
    // IE9+ CSS
    .standard-bg {
        background-attachment: scroll!important;
    }
}*/
@supports (-ms-ime-align: auto) {
	.priority-tab {
		margin-right: -1px;
	}
}

.ceo-introduction {
	position: relative;
	padding: 4em 0 6.92em;
	width: 100%;
}

.ceo-introduction .person {
	z-index: -1;
	position: absolute;
	bottom: 0;
}

.ceo-introduction .person img {
	margin: 0;
	display: block;
}

.ceo-introduction .person.person-1 {
	left: 0;
}

.ceo-introduction .person.person-2 {
	right: 0;
}

.ceo-introduction .text-wrap h2 {
	font-size: 50px;
	font-weight: 700;
	color: #555555;
	line-height: 1.08;
	letter-spacing: -0.2px;
}

.ceo-introduction .text-wrap h2 span {
	color: #0071CE;
}

.ceo-introduction .text-wrap .btn {
	margin-top: 0.8em;
}

@media (min-width: 66.66667em) and (max-width: 88.88889em) {
	.ceo-introduction {
		font-size: 16px;
	}
	.ceo-introduction .text-wrap h2 {
		font-size: 43px;
	}
}

@media (min-width: 53.33333em) and (max-width: 66.66667em) {
	.ceo-introduction {
		font-size: 14px;
	}
	.ceo-introduction .text-wrap h2 {
		font-size: 39px;
	}
}

@media (min-width: 42.66667em) and (max-width: 53.33333em) {
	.ceo-introduction {
		font-size: 12px;
	}
	.ceo-introduction .text-wrap h2 {
		font-size: 36px;
	}
}

@media (min-width: 26.66667em) and (max-width: 42.66667em) {
	.ceo-introduction {
		font-size: 10px;
	}
	.ceo-introduction .text-wrap h2 {
		font-size: 28px;
	}
}

@media (max-width: 26.66667em) {
	.ceo-introduction {
		font-size: 8px;
	}
	.ceo-introduction .text-wrap h2 {
		font-size: 26px;
	}
}

@media (max-width: 53.33333em) {
	.ceo-introduction {
		margin-bottom: -2px;
	}
	.ceo-introduction .text-wrap {
		padding: 0 15px;
	}
}

@media (max-width: 42.66667em) {
	.ceo-introduction br {
		display: none;
	}
	.ceo-introduction .text-wrap h2 {
		margin-bottom: 10px;
	}
}

.numbers {
	background: #0071CE;
	text-align: center;
	padding: 3.8em 0 4.4em;
}

.numbers .icon-holder {
	min-height: 157px;
	position: relative;
}

.numbers .icon-holder.icon-1 img {
	top: 20px;
}

.numbers .icon-holder.icon-2 img {
	left: -8px;
}

.numbers .icon-holder.icon-3 img {
	top: -8px;
}

.numbers img {
	display: block;
	margin: auto;
	position: absolute;
	bottom: 0;
	left: 0;
	right: 0;
	top: 0;
}

.numbers h3.count {
	display: block;
	font-family: "Bebas Neue", "Helvetica Neue", Helvetica, Arial, sans-serif;
	font-size: 9.375rem;
	color: #a8d2eb;
	margin-top: 0.125em;
	line-height: 0.9;
}

.numbers p {
	color: #FFF;
	font-size: 30px;
	margin: -0.3em 0 0;
}

.numbers .btn {
	margin-top: 2.35em;
}

@media (min-width: 66.66667em) and (max-width: 88.88889em) {
	.numbers p {
		font-size: 28px;
	}
}

@media (min-width: 53.33333em) and (max-width: 66.66667em) {
	.numbers p {
		font-size: 24px;
	}
	.numbers {
		font-size: 14px;
	}
}

@media (min-width: 42.66667em) and (max-width: 53.33333em) {
	.numbers p {
		font-size: 22px;
	}
	.numbers {
		font-size: 12px;
	}
}

@media (min-width: 26.66667em) and (max-width: 42.66667em) {
	.numbers {
		font-size: 10px;
	}
	.numbers p {
		font-size: 22px;
	}
	.numbers .grid-item-1 {
		margin-bottom: 3.5em;
	}
	.numbers .grid-item-1:last-child {
		margin-bottom: 0;
	}
	.numbers .icon-holder {
		min-height: 0;
	}
	.numbers .icon-holder img {
		position: static;
		max-height: 90px;
	}
}

@media (max-width: 26.66667em) {
	.numbers {
		font-size: 8px;
	}
	.numbers p {
		font-size: 20px;
		line-height: 1;
		margin-top: 0.05em;
	}
	.numbers .grid-item-1 {
		margin-bottom: 3em;
	}
	.numbers .grid-item-1:last-child {
		margin-bottom: 0;
	}
	.numbers .icon-holder {
		min-height: 0;
	}
	.numbers .icon-holder img {
		position: static;
		max-height: 85px;
	}
}

.strategy-introduction {
	padding: 3.545em 0 0;
}

.strategy-introduction .text-holder {
	padding: 0 25px;
}

.strategy-introduction .text-holder h2 {
	margin-bottom: 0.95em;
}

.strategy-introduction .text-holder p {
	font-size: 30px;
	line-height: 1.4;
}

.strategy-introduction .text-holder .btn {
	margin-top: 1.2em;
}

.principles-introduction .bg {
	background: url(../images/hero-banner-03-v2.jpg) no-repeat center center;
	height: 650px;
	margin-top: 6.05em;
}

@media (min-width: 66.66667em) and (max-width: 88.88889em) {
	.principles-introduction .bg {
		font-size: 16px;
		height: 650px;
		max-width: 100%;
		background-size: cover;
	}
	.principles-introduction {
		font-size: 16px;
	}
	.principles-introduction .text-holder p {
		font-size: 26px;
	}
}

@media (min-width: 53.33333em) and (max-width: 66.66667em) {
	.principles-introduction .bg {
		font-size: 14px;
		height: 550px;
		max-width: 100%;
		background-size: cover;
	}
	.strategy-introduction {
		font-size: 14px;
	}
	.strategy-introduction .text-holder p {
		font-size: 24px;
	}
}

@media (min-width: 42.66667em) and (max-width: 53.33333em) {
	.principles-introduction .bg {
		font-size: 12px;
		height: 450px;
		display: none;
	}
	.strategy-introduction {
		font-size: 12px;
	}
	.strategy-introduction .text-holder p {
		font-size: 22px;
	}
}

@media (min-width: 26.66667em) and (max-width: 42.66667em) {
	.principles-introduction .bg {
		font-size: 10px;
		height: 350px;
		display: none;
	}
	.strategy-introduction {
		font-size: 10px;
	}
	.strategy-introduction .text-holder p {
		font-size: 20px;
	}
}

@media (max-width: 26.66667em) {
	.principles-introduction .bg {
		font-size: 8px;
		height: 300px;
		display: none;
	}
	.strategy-introduction {
		font-size: 8px;
	}
	.strategy-introduction .text-holder p {
		font-size: 18px;
	}
}

.principles-introduction {
	padding: 3.5em 0 6em;
}

.principles-introduction .icon-holder {
	min-height: 168px;
	position: relative;
	margin-top: 21px;
}

.principles-introduction .icon-holder.icon-2 img {
	left: -42px;
	bottom: 6px;
}

.principles-introduction .icon-holder.icon-3 img {
	bottom: 16px;
}

.principles-introduction img {
	display: block;
	margin: auto;
	position: absolute;
	bottom: 0;
	left: 0;
	right: 0;
	top: 0;
}

.principles-introduction h4 {
	font-weight: 700;
	font-size: 30px;
	margin: 0.4em 0 0;
	line-height: 1.4;
	letter-spacing: 0.2px;
	font-family: "Sensibility", "Helvetica Neue", Helvetica, Arial, sans-serif;
	color: #555555;
}

.principles-introduction a.btn {
	margin-top: 2.8em;
}

@media (min-width: 66.66667em) and (max-width: 88.88889em) {
	.principles-introduction {
		font-size: 16px;
	}
	.principles-introduction h4 {
		font-size: 24px;
	}
}

@media (min-width: 53.33333em) and (max-width: 66.66667em) {
	.principles-introduction {
		font-size: 14px;
	}
	.principles-introduction h4 {
		font-size: 20px;
	}
}

@media (min-width: 42.66667em) and (max-width: 53.33333em) {
	.principles-introduction {
		font-size: 10px;
	}
	.principles-introduction h4 {
		font-size: 18px;
	}
}

@media (min-width: 26.66667em) and (max-width: 42.66667em) {
	.principles-introduction {
		font-size: 8px;
	}
	.principles-introduction img {
		max-height: 90px;
	}
	.principles-introduction .icon-holder {
		min-height: 90px;
	}
	.principles-introduction h4 {
		font-size: 22px;
	}
}

@media (max-width: 26.66667em) {
	.principles-introduction {
		font-size: 8px;
	}
	.principles-introduction img {
		max-height: 85px;
	}
	.principles-introduction .icon-holder {
		min-height: 85px;
	}
	.principles-introduction h4 {
		font-size: 20px;
	}
}

@media (max-width: 42.66667em) {
	.principles-introduction h4 {
		max-width: 400px;
		margin-left: auto;
		margin-right: auto;
	}
	.principles-introduction .icon-holder.icon-2 img {
		left: -24px;
	}
	.principles-introduction .icon-holder img {
		bottom: 0 !important;
	}
}

.boxes {
	width: 100%;
}

.boxes .box {
	padding-top: 25.06%;
	float: left;
	position: relative;
	background-size: cover;
	background-repeat: no-repeat;
	background-position: center !important;
}

.boxes .box:after {
	content: '';
	display: block;
	clear: both;
}

.boxes .box .box-content {
	position: absolute;
	top: 50%;
	-webkit-transform: translateY(-50%);
	-ms-transform: translateY(-50%);
	transform: translateY(-50%);
	left: 0;
	right: 0;
	margin-top: -4px;
}

.boxes .box .box-content h3 {
	font-family: "Bebas Neue", "Helvetica Neue", Helvetica, Arial, sans-serif;
	color: #FFF;
	font-size: 65px;
	margin: 0 0 20px;
}

@media (min-width: 66.66667em) and (max-width: 88.88889em) {
	.boxes .box .box-content h3 {
		font-size: 54px;
	}
}

@media (max-width: 26.66667em) {
	.boxes .box .box-content h3 {
		font-size: 54px;
	}
}

@media (max-width: 66.66667em) {
	.boxes .box {
		float: none;
		width: 100%;
		padding-top: 47.19%;
	}
}

.sm li {
	display: block;
	padding: 0;
	float: left;
}

.sm li:hover img {
	opacity: 0.7;
	-webkit-transition: 0.3s opacity;
	transition: 0.3s opacity;
}

.sm img {
	margin: 0;
	float: left;
}

.sm ul:after {
	content: '';
	display: block;
	clear: both;
}

.ss-wrapper {
	overflow: hidden;
	width: 100%;
	height: 100%;
	position: relative;
	z-index: 1;
	float: left;
}

.ss-content {
	height: 100%;
	width: calc(100% + 18px);
	padding: 0 0 0 0;
	position: relative;
	overflow: auto;
	-webkit-box-sizing: border-box;
	box-sizing: border-box;
}

.ss-content.rtl {
	width: calc(100% + 18px);
	right: auto;
}

.ss-scroll {
	position: relative;
	background: rgba(90, 84, 84, 0.35);
	width: 9px;
	border-radius: 4px;
	top: 0;
	z-index: 2;
	cursor: pointer;
	opacity: 0.5;
	-webkit-transition: opacity 0.25s linear;
	transition: opacity 0.25s linear;
}

.ss-hidden {
	display: none;
}

.ss-container:hover .ss-scroll,
.ss-container:active .ss-scroll {
	opacity: 1;
}

.ss-grabbed {
	-o-user-select: none;
	-ms-user-select: none;
	-moz-user-select: none;
	-webkit-user-select: none;
	user-select: none;
}

/*
   For each specific page layout make a copy of this file and name it 
   specifically for the page you are styling.

   Example: _events.scss
*/
.l-grid-priorities-header h1 {
	margin: 0.8em 0 0;
	letter-spacing: -0.1px;
}

.l-grid-priorities-header h1 + h2 {
	margin-top: -0.25em;
}

.priorities-header + .priority-tabs {
	margin-top: -6px;
}

.priorities-header + .priority-tabs .priority-content--main p {
	margin: 0 0 1.68em;
}

@media (min-width: 88.88889em) {
	.priorities-header + .priority-tabs .priority-content--main p {
		font-size: 25px;
		line-height: 1.7;
		letter-spacing: 0.13px;
	}
}

.priorities-header + .priority-tabs .priority-content--main p:first-child {
	margin: -0.5rem 0 3.2rem;
}

.priorities-header + .priority-tabs .priority-content--main p:last-child {
	margin-bottom: 0;
}

.priorities-header + .priority-tabs .priority-content--main p + strong {
	display: block;
	margin: 0 0 0.26em;
	font-weight: 700;
	font-size: 25px;
}

.priorities-header + .priority-tabs .priority-content--main p + strong + p {
	letter-spacing: -0.08px;
}

.priorities-header + .priority-tabs .priority-content--main p + strong + p + p {
	letter-spacing: 0.045px;
}

.priorities-header + .priority-tabs .priority-tabs--header .priority-tab a {
	position: absolute;
	left: -15px;
	top: 0;
	right: -15px;
	bottom: -34px;
	margin: auto;
	z-index: 4;
}

.priorities-header + .priority-tabs .priority-content {
	padding-bottom: 0;
}

.l-grid-priority-down .accomplish-arrow {
	position: absolute;
	left: -15px;
	top: 0;
	bottom: 0;
	margin: auto;
	background: #cccccc;
	max-width: 283px;
	width: 100%;
}

.l-grid-priority-down .accomplish-arrow svg {
	width: 3.625rem;
	position: absolute;
	height: 100%;
	right: -3.625rem;
}

.l-grid-priority-down .accomplish-arrow span {
	font-family: "Bebas Neue", "Helvetica Neue", Helvetica, Arial, sans-serif;
	display: block;
	z-index: 2;
	position: absolute;
	top: 50%;
	left: 58px;
	right: 0;
	-webkit-transform: translateY(-50%);
	-ms-transform: translateY(-50%);
	transform: translateY(-50%);
	text-transform: uppercase;
	font-size: 40px;
	font-weight: 700;
	line-height: 1.02;
	letter-spacing: 0.3px;
	bottom: auto;
	margin: 12px auto 0;
}

.l-grid-priority-down .accomplish-arrow span b {
	display: block;
	margin-top: -7px;
	font-size: 135px;
	letter-spacing: normal;
}

.l-grid-priority-down .accomplish-list {
	padding: 2.7em 0 2.7em 1.4em;
}

.l-grid-priority-down ol {
	padding: 0;
	margin: 0;
}

.l-grid-priority-down ol li {
	color: white;
	font-size: 25px;
	line-height: 1.72;
	margin: 0 0 1.68em;
	padding: 0;
	letter-spacing: 0.16px;
}

.l-grid-priority-down ol li:last-child {
	margin-bottom: 0;
}

.strategic.standard-under {
	padding: 6.25em 0 7.16em;
}

@media (max-width: 88.88889em) {
	.l-grid-priorities-header h1 br {
		display: none;
	}
}

@media (max-width: 66.66667em) {
	.priorities-header + .priority-tabs .priority-content--main p + strong {
		font-size: 1.875rem;
		line-height: 1.4;
	}
	.l-grid-priority-down ol li {
		font-size: 1.875rem;
	}
	.l-grid-priorities-header h1 {
		line-height: 0.83;
		margin-bottom: 0.14em;
	}
}

@media (max-width: 53.33333em) {
	.priorities-header + .priority-tabs .priority-content--main p + strong {
		margin-bottom: -1rem;
	}
	.l-grid-priority-down .accomplish-arrow {
		position: static;
		width: 100%;
		max-width: none;
		margin: 0;
	}
	.l-grid-priority-down .accomplish-arrow span {
		position: static;
		-webkit-transform: none;
        -ms-transform: none;
		transform: none;
		margin: 0;
		margin: 0 -15px;
		background: #cccccc;
		padding: 0.7em 0 0.1em;
		text-align: center;
	}
	.l-grid-priority-down .accomplish-arrow svg {
		display: none;
	}
}

@media (min-width: 88.88889em) {
	.l-grid-priority-down ol li {
		font-size: 1.5rem;
	}
}

@media (min-width: 66.66667em) and (max-width: 88.88889em) {
	.priorities-header p.lead {
		font-size: 24px;
	}
	.l-grid-priority-down {
		margin-left: -15px;
		margin-right: -15px;
	}
	.l-grid-priority-down .accomplish-list {
		padding: 2.7em 0 2.7em 3em;
	}
	.l-grid-priority-down .accomplish-arrow span {
		left: 30px;
	}
}

@media (min-width: 53.33333em) and (max-width: 66.66667em) {
	.priorities-header p.lead {
		font-size: 23px;
	}
	.l-grid-priority-down .accomplish-list {
		padding: 2.2em 0 2.2em 3em;
	}
	.l-grid-priority-down .accomplish-arrow span {
		left: 0;
		text-align: center;
		font-size: 30px;
	}
	.l-grid-priority-down .accomplish-arrow span b {
		font-size: 96px;
	}
	.l-grid-priority-down ol li {
		font-size: 1.6rem;
		margin: 0 0 1.3em;
	}
}

@media (min-width: 42.66667em) and (max-width: 53.33333em) {
	.priorities-header p.lead {
		font-size: 21px;
	}
	.l-grid-priority-down .accomplish-arrow span {
		font-size: 30px;
	}
	.l-grid-priority-down .accomplish-arrow span b {
		font-size: 115px;
	}
	.l-grid-priority-down ol li {
		margin-bottom: 1.4em;
	}
	.l-grid-priority-down ol {
		padding-left: 1em;
	}
	.l-grid-priority-down .accomplish-list {
		padding: 1.5em 22px;
	}
}

@media (min-width: 26.66667em) and (max-width: 42.66667em) {
	.priorities-header p.lead {
		font-size: 20px;
	}
	.l-grid-priority-down .accomplish-arrow span {
		font-size: 28px;
	}
	.l-grid-priority-down .accomplish-arrow span b {
		font-size: 110px;
	}
	.l-grid-priority-down ol li {
		margin-bottom: 1.3em;
	}
}

@media (max-width: 26.66667em) {
	.priorities-header p.lead {
		font-size: 18px;
	}
	.l-grid-priority-down .accomplish-arrow span {
		font-size: 28px;
	}
	.l-grid-priority-down .accomplish-arrow span b {
		font-size: 110px;
	}
	.l-grid-priority-down ol li {
		margin-bottom: 1.2em;
	}
}

@media (max-width: 66.66667em) {
	.l-grid-priority-down {
		margin-left: -30px;
		margin-right: -30px;
	}
}

@media (max-width: 42.66667em) {
	.priorities-header + .priority-tabs .priority-content--main p + strong {
		font-size: 18px;
	}
	.l-grid-priority-down ol {
		padding-left: 18px;
	}
	.l-grid-priority-down ol li {
		font-size: 18px;
		line-height: normal;
	}
	.l-grid-priority-down .accomplish-list {
		padding: 20px 15px;
	}
	.priority-tabs--content .l-grid-priority {
		margin: 0 -30px;
	}
}

.standard-header {
	padding-bottom: 5.5em;
}

.standard-header h1 {
	margin: 0.93em 0 0;
	line-height: 0.83;
	letter-spacing: -0.03px;
}

.standard-header h1 + h2 {
	margin: 0.1em 0 0;
}

.standard-header .lead {
	margin: 1.76em 0 0;
	line-height: 1.55;
	letter-spacing: 0.07px;
}

.standard-header h1 + .lead {
	margin-top: 1.58em;
	margin-bottom: 0.04em;
}

.standard-header.withoutBg {
	padding-bottom: 0;
}

.standard-bg {
	height: 800px;
	background-size: cover;
	background-position: center !important;
}

.standard-under {
	padding: 5.98em 0 5.72em;
}

.standard-under .l-grid-standard-under-three {
	margin: 0 -15px;
}

.standard-under .l-grid-standard-under-three .grid-item-4 {
	margin-top: 1.5em;
}

.standard-under .l-grid-standard-under-three .grid-item-4 h3 {
	margin: -0.35em 0 0.44em;
}

.standard-under .l-grid-standard-under .half {
	float: left;
	width: 50%;
}

.standard-under .l-grid-standard-under .half p {
	display: inline-block;
	text-align: left;
}

.standard-under .l-grid-standard-under h2 {
	margin: -0.25em 0 0.44em;
	letter-spacing: -0.08px;
	line-height: 1.32;
}

.standard-under .l-grid-standard-under .grid-item p:first-child {
	margin-top: -0.25em;
}

.standard-under .l-grid-standard-under p {
	line-height: 1.45;
	letter-spacing: -0.05px;
	margin: 0 0 1.38em;
}

.standard-under .l-grid-standard-under p.withBigBreak {
	margin-bottom: 4.23em;
}

.standard-under .l-grid-standard-under p:last-child {
	margin-bottom: 0;
}

.standard-under .l-grid-standard-under p + h2 {
	margin-top: 1.45em;
}

.standard-under .l-grid-standard-under ul {
	padding: 0;
}

.standard-under .l-grid-standard-under ul li {
	padding: 0 0 6px 18px;
	position: relative;
	list-style-type: none;
}

.standard-under .l-grid-standard-under ul li:before {
	content: '';
	position: absolute;
	background: #555555;
	width: 6px;
	height: 6px;
	top: 11px;
	border-radius: 2px;
	margin: auto;
	left: 4px;
}

.standard-under .l-grid-standard-under blockquote {
	margin: 2.64em 2em 2.44em;
	font-size: 30px;
}

.standard-under .l-grid-standard-under blockquote p {
	font-size: 30px;
	line-height: 1.4;
	letter-spacing: -0.14px;
}

.standard-under .l-grid-standard-under figure {
	border: 0;
}

.standard-under .l-grid-standard-under figure img {
	padding-bottom: 0.48em;
}

.standard-under .l-grid-standard-under figure figcaption {
	line-height: 1.64;
	letter-spacing: -0.08px;
}

.standard-under .l-grid-standard-under + .l-grid-standard-under {
	padding-top: 5.45em;
}

.standard-under .l-grid-standard-under + .l-grid-standard-under.smallerPadding {
	padding-top: 4.3em;
}

.standard-under.strategic .l-grid-standard-under + .l-grid-standard-under {
	padding-top: 4.76em;
}

.standard-under.background .image-additional-margin {
	margin-top: 4.25em;
}

.standard-under.about .box-layout {
	padding-bottom: 1.5em;
	justify-content: center !important;
}

.standard-under .box-layout .grid-item {
	margin-bottom: 25px;
}

.standard-under .box-layout img {
}

.standard-under .box-layout .grid-item-box {
	position: relative;
}

.standard-under .box-layout .number-container {
	position: relative;
	padding-top: 96.75%;
	background: #0071ce;
}

.standard-under .box-layout .number {
	text-align: center;
	position: absolute;
	left: 0;
	right: 0;
	top: 0;
	margin: 0;
	bottom: 0;
}

.standard-under .box-layout .number .icon-container {
	position: relative;
	height: 161px;
}

.standard-under .box-layout .number .icon-container img {
	position: absolute;
	left: 0;
	right: 0;
	bottom: 12px;
	margin: auto;
}

.standard-under .box-layout .number h3 {
	color: #a8d2eb;
	line-height: 1;
	margin: 0 0 -0.02em;
	letter-spacing: 0;
	font-family: "Bebas Neue", "Helvetica Neue", Helvetica, Arial, sans-serif;
	font-size: 115px;
}

.standard-under .box-layout .number span {
	display: block;
	color: white;
	font-size: 26px;
	font-weight: 400;
}

.standard-under .box-layout h3 {
	margin: -0.24em 0 0.48em;
	line-height: 1.35;
	letter-spacing: 0.36px;
}

.standard-under .box-layout p {
	letter-spacing: -0.08px;
}

.standard-under .box-layout p.info {
	margin: -0.78em 0 0;
	letter-spacing: -0.01px;
}

.standard-partners {
	background: #f5f5f5;
	padding: 2.8em 0 5.78em;
}

.standard-partners h2 {
	font-weight: 700;
	margin: 0 0 0.2em;
}

.standard-partners h3 {
	font-size: 30px;
	font-weight: 700;
	font-family: "Sensibility", "Helvetica Neue", Helvetica, Arial, sans-serif;
	margin: 0.9em 0 0;
}

.standard-partners p {
	line-height: 1.45;
	margin: 1.5em 0 0;
	letter-spacing: 0.08px;
}

@media (max-width: 88.88889em) {
	.standard-under .l-grid-standard-under h2 {
		line-height: 1.1;
		margin: -0.15em 0 0.44em;
	}
	.standard-header h1 br {
		display: none;
	}
}

@media (max-width: 66.66667em) {
	.standard-under .l-grid-standard-under p.withBigBreak {
		margin-bottom: 2.23em;
	}
	.l-grid-priorities-header h1 {
		margin-bottom: 0.14em;
	}
	.standard-bg {
		background-attachment: scroll;
	}
	.standard-under .box-layout .number-container {
		padding: 0;
	}
	.standard-under .box-layout .number {
		position: static;
	}
	.standard-under .box-layout .number .icon-container {
		height: auto;
		padding: 20px 0;
	}
	.standard-under .box-layout .number .icon-container img {
		position: static;
	}
	.standard-under .box-layout .number span {
		padding-bottom: 20px;
	}
	.grid-item-box {
		text-align: center;
	}
}

@media (max-width: 53.33333em) {
	.standard-under .l-grid-standard-under figure {
		max-width: 500px;
		margin: 30px auto 0;
		text-align: center;
	}
	.standard-under.background .image-additional-margin {
		margin-top: 0;
	}
}

@media (max-width: 42.66667em) {
	.standard-under .l-grid-standard-under .half {
		float: none;
		width: 100%;
		margin-bottom: 10px;
	}
	.standard-under .l-grid-standard-under .half:last-child {
		margin-bottom: 0;
	}
	.standard-under .l-grid-standard-under .half.text--right {
		text-align: left;
	}
}

@media (min-width: 66.66667em) and (max-width: 88.88889em) {
	.strategic.standard-under, .standard-under {
		padding: 5.25em 0 6.16em;
	}
	.standard-header p.lead {
		font-size: 24px;
	}
	.standard-bg {
		font-size: 16px;
		height: 650px;
	}
	.standard-under .l-grid-standard-under blockquote {
		font-size: 24px;
	}
	.standard-under .l-grid-standard-under blockquote p {
		font-size: 28px;
	}
	.standard-header {
		padding-bottom: 5.25em;
	}
	.standard-under .l-grid-standard-under + .l-grid-standard-under {
		padding-top: 4.5em;
	}
	.standard-under .l-grid-standard-under + .l-grid-standard-under.smallerPadding {
		padding-top: 3.35em;
	}
}

@media (min-width: 53.33333em) and (max-width: 66.66667em) {
	.strategic.standard-under, .standard-under {
		padding: 4.5em 0 5.5em;
	}
	.standard-header p.lead {
		font-size: 23px;
	}
	.standard-bg {
		font-size: 14px;
		height: 550px;
	}
	.standard-under .l-grid-standard-under blockquote {
		font-size: 17px;
	}
	.standard-under .l-grid-standard-under blockquote p {
		font-size: 23px;
	}
	.standard-header {
		padding-bottom: 4.5em;
	}
	.standard-under .l-grid-standard-under + .l-grid-standard-under {
		padding-top: 4em;
	}
	.standard-under .l-grid-standard-under + .l-grid-standard-under.smallerPadding {
		padding-top: 2.85em;
	}
	.standard-partners h3 {
		font-size: 26px;
	}
}

@media (min-width: 42.66667em) and (max-width: 53.33333em) {
	.strategic.standard-under, .standard-under {
		padding: 4em 0 5em;
	}
	.standard-header p.lead {
		font-size: 21px;
	}
	.standard-bg {
		font-size: 12px;
		height: 450px;
	}
	.standard-under .l-grid-standard-under blockquote {
		font-size: 22px;
	}
	.standard-under .l-grid-standard-under blockquote p {
		font-size: 26px;
	}
	.standard-header {
		padding-bottom: 4em;
	}
	.standard-under .l-grid-standard-under + .l-grid-standard-under {
		padding-top: 3.5em;
	}
	.standard-under .l-grid-standard-under + .l-grid-standard-under.smallerPadding {
		padding-top: 2.35em;
	}
	.standard-partners h3 {
		font-size: 24px;
	}
	.standard-under .l-grid-standard-under-three .grid-item-4 h3 {
		font-size: 38px;
	}
}

@media (min-width: 26.66667em) and (max-width: 42.66667em) {
	.strategic.standard-under, .standard-under {
		padding: 3.5em 0 4.5em;
	}
	.standard-header p.lead {
		font-size: 20px;
	}
	.standard-bg {
		font-size: 10px;
		height: 350px;
	}
	.standard-under .l-grid-standard-under blockquote {
		font-size: 18px;
	}
	.standard-under .l-grid-standard-under blockquote p {
		font-size: 22px;
	}
	.standard-header {
		padding-bottom: 3.5em;
	}
	.standard-under .l-grid-standard-under + .l-grid-standard-under {
		padding-top: 3em;
	}
	.standard-under .l-grid-standard-under + .l-grid-standard-under.smallerPadding {
		padding-top: 1.85em;
	}
	.standard-partners h3 {
		font-size: 23px;
	}
	.standard-under .l-grid-standard-under-three .grid-item-4 h3 {
		font-size: 34px;
	}
	.standard-under .box-layout .number h3 {
		font-size: 77px;
	}
}

@media (max-width: 26.66667em) {
	.strategic.standard-under, .standard-under {
		padding: 3em 0 4em;
	}
	.standard-header p.lead {
		font-size: 18px;
	}
	.standard-bg {
		font-size: 8px;
		height: 300px;
	}
	.standard-under .l-grid-standard-under blockquote {
		font-size: 10px;
	}
	.standard-under .l-grid-standard-under blockquote p {
		font-size: 20px;
	}
	.standard-header {
		padding-bottom: 3em;
	}
	.standard-under .l-grid-standard-under + .l-grid-standard-under {
		padding-top: 2.5em;
	}
	.standard-under .l-grid-standard-under + .l-grid-standard-under.smallerPadding {
		padding-top: 1.35em;
	}
	.standard-partners h3 {
		font-size: 22px;
	}
	.standard-under .l-grid-standard-under-three .grid-item-4 h3 {
		font-size: 30px;
	}
	.standard-under .box-layout .number h3 {
		font-size: 54px;
	}
}

@media (max-width: 1596px) and (min-width: 88.88889em) {
	.standard-under .box-layout .number {
		bottom: auto;
		top: 50%;
		-webkit-transform: translateY(-50%);
        -ms-transform: translateY(-50%);
		transform: translateY(-50%);
	}
	.standard-under .box-layout .number .icon-container {
		height: 112px;
	}
	.standard-under .box-layout .number .icon-container img {
		max-height: 100px;
	}
	.standard-under .box-layout .number h3 {
		font-size: 88px;
	}
	.standard-under .box-layout .number span {
		font-size: 24px;
	}
	.standard-under .box-layout h3 {
		font-size: 38px;
		line-height: 1.1;
	}
	.standard-under .l-grid-standard-under p {
		font-size: 17px;
	}
}

@media (max-width: 88.88889em) and (min-width: 66.66667em) {
	.standard-under .box-layout .number {
		bottom: auto;
		top: 50%;
		-webkit-transform: translateY(-50%);
        -ms-transform: translateY(-50%);
		transform: translateY(-50%);
	}
	.standard-under .box-layout .number .icon-container {
		height: 92px;
	}
	.standard-under .box-layout .number .icon-container img {
		max-height: 80px;
	}
	.standard-under .box-layout .number h3 {
		font-size: 70px;
	}
	.standard-under .box-layout .number span {
		font-size: 20px;
	}
	.standard-under .box-layout h3 {
		font-size: 34px;
		line-height: 1.1;
	}
	.standard-under .l-grid-standard-under p {
		font-size: 16px;
	}
}

@media screen and (min-width: 0\0) and (-webkit-min-device-pixel-ratio: 0.75), screen and (min-width: 0\0) and (min-resolution: 72dpi) {
	.standard-under .l-grid-standard-under-three {
		display: block;
	}
	.standard-under .l-grid-standard-under-three .grid-item.grid-item-4 {
		float: left;
		width: 33.333334%;
		margin: 0;
		padding: 0 15px;
	}
}

@media (min-width: 53.33333em) {
	.standard-under .l-grid-standard-under figure {
		margin: 0;
		padding: 0;
	}
	.standard-under .l-grid-standard-under figure img {
		padding: 0;
	}
	.standard-under .l-grid-standard-under figure img + figcaption {
		margin-top: 0.48em;
	}
}

.icon {
	display: inline-block;
	margin: 0;
}

.icon-download {
	width: 25px;
	height: 26px;
}

.preload *, .preload *:before, .preload *:after {
	-webkit-transition: none !important;
	-moz-transition: none !important;
	-ms-transition: none !important;
	-o-transition: none !important;
}

.clearfix:after {
	content: '';
	display: block;
	clear: both;
}

/*!
 * Hamburgers
 * @description Tasty CSS-animated hamburgers
 * @author Jonathan Suh @jonsuh
 * @site https://jonsuh.com/hamburgers
 * @link https://github.com/jonsuh/hamburgers
 */
.hamburger {
	padding: 11px 11px;
	display: inline-block;
	cursor: pointer;
	-webkit-transition-property: opacity, -webkit-filter;
	transition-property: opacity, -webkit-filter;
	transition-property: opacity, filter;
	transition-property: opacity, filter, -webkit-filter;
	-webkit-transition-duration: 0.15s;
	transition-duration: 0.15s;
	-webkit-transition-timing-function: ease;
	transition-timing-function: ease;
	font: inherit;
	color: inherit;
	text-transform: none;
	background-color: transparent;
	border: 0;
	margin: 0;
	overflow: visible;
}

.hamburger:hover {
	opacity: 0.7;
}

.hamburger:focus {
	outline: none;
}

.hamburger-box {
	width: 36px;
	height: 25px;
	display: inline-block;
	position: relative;
}

.hamburger-inner {
	display: block;
	top: 50%;
	margin-top: -2.5px;
}

.hamburger-inner, .hamburger-inner::before, .hamburger-inner::after {
	width: 36px;
	height: 5px;
	background-color: #555;
	border-radius: 0;
	position: absolute;
	-webkit-transition-property: -webkit-transform;
	transition-property: -webkit-transform;
	transition-property: transform;
	transition-property: transform, -webkit-transform;
	-webkit-transition-duration: 0.15s;
	transition-duration: 0.15s;
	-webkit-transition-timing-function: ease;
	transition-timing-function: ease;
}

.hamburger-inner::before, .hamburger-inner::after {
	content: "";
	display: block;
}

.hamburger-inner::before {
	top: -10px;
}

.hamburger-inner::after {
	bottom: -10px;
}

/*
   * Spin
   */
.hamburger--spin .hamburger-inner {
	-webkit-transition-duration: 0.22s;
	transition-duration: 0.22s;
	-webkit-transition-timing-function: cubic-bezier(0.55, 0.055, 0.675, 0.19);
	transition-timing-function: cubic-bezier(0.55, 0.055, 0.675, 0.19);
}

.hamburger--spin .hamburger-inner::before {
	-webkit-transition: top 0.1s 0.25s ease-in,
		opacity 0.1s ease-in;
	transition: top 0.1s 0.25s ease-in,
		opacity 0.1s ease-in;
}

.hamburger--spin .hamburger-inner::after {
	-webkit-transition: bottom 0.1s 0.25s ease-in, -webkit-transform 0.22s cubic-bezier(0.55, 0.055, 0.675, 0.19);
	transition: bottom 0.1s 0.25s ease-in, -webkit-transform 0.22s cubic-bezier(0.55, 0.055, 0.675, 0.19);
	transition: bottom 0.1s 0.25s ease-in, transform 0.22s cubic-bezier(0.55, 0.055, 0.675, 0.19);
	transition: bottom 0.1s 0.25s ease-in, transform 0.22s cubic-bezier(0.55, 0.055, 0.675, 0.19), -webkit-transform 0.22s cubic-bezier(0.55, 0.055, 0.675, 0.19);
}

.hamburger--spin.is-active .hamburger-inner {
	-webkit-transform: rotate(225deg);
	-ms-transform: rotate(225deg);
	transform: rotate(225deg);
	-webkit-transition-delay: 0.12s;
	transition-delay: 0.12s;
	-webkit-transition-timing-function: cubic-bezier(0.215, 0.61, 0.355, 1);
	transition-timing-function: cubic-bezier(0.215, 0.61, 0.355, 1);
}

.hamburger--spin.is-active .hamburger-inner::before {
	top: 0;
	opacity: 0;
	-webkit-transition: top 0.1s ease-out,
		opacity 0.1s 0.12s ease-out;
	transition: top 0.1s ease-out,
		opacity 0.1s 0.12s ease-out;
}

.hamburger--spin.is-active .hamburger-inner::after {
	bottom: 0;
	-webkit-transform: rotate(-90deg);
	-ms-transform: rotate(-90deg);
	transform: rotate(-90deg);
	-webkit-transition: bottom 0.1s ease-out, -webkit-transform 0.22s 0.12s cubic-bezier(0.215, 0.61, 0.355, 1);
	transition: bottom 0.1s ease-out, -webkit-transform 0.22s 0.12s cubic-bezier(0.215, 0.61, 0.355, 1);
	transition: bottom 0.1s ease-out, transform 0.22s 0.12s cubic-bezier(0.215, 0.61, 0.355, 1);
	transition: bottom 0.1s ease-out, transform 0.22s 0.12s cubic-bezier(0.215, 0.61, 0.355, 1), -webkit-transform 0.22s 0.12s cubic-bezier(0.215, 0.61, 0.355, 1);
}

/*# sourceMappingURL=data:application/json;charset=utf8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIm1haW4uY3NzIiwibWFpbi5zY3NzIiwidXRpbGl0aWVzL19jb2xvcnMuc2NzcyIsInV0aWxpdGllcy9fZXh0ZW5kcy5zY3NzIiwidXRpbGl0aWVzL192YXJpYWJsZXMuc2NzcyIsInV0aWxpdGllcy9fbWl4aW5zLnNjc3MiLCJwYXJ0aWFscy9fc2NhZmZvbGRpbmcuc2NzcyIsInBhcnRpYWxzL190eXBvZ3JhcGh5LnNjc3MiLCJwYXJ0aWFscy9faGVscGVycy5zY3NzIiwibGF5b3V0L19ncmlkLnNjc3MiLCJsYXlvdXQvX2hlYWRlci5zY3NzIiwibGF5b3V0L19tYWluLnNjc3MiLCJsYXlvdXQvX2Zvb3Rlci5zY3NzIiwiY29tcG9uZW50cy9fYnV0dG9ucy5zY3NzIiwiY29tcG9uZW50cy9fZm9ybXMuc2NzcyIsImNvbXBvbmVudHMvX3RhYmxlcy5zY3NzIiwiY29tcG9uZW50cy9fYnJlYWRjcnVtYnMuc2NzcyIsImNvbXBvbmVudHMvX2ltYWdlcy5zY3NzIiwiY29tcG9uZW50cy9fdmlkZW8uc2NzcyIsImNvbXBvbmVudHMvX2hhbWJ1cmdlci5zY3NzIiwiY29tcG9uZW50cy9fc2lkZS1tZW51LnNjc3MiLCJjb21wb25lbnRzL19qdW1ib3Ryb24uc2NzcyIsImNvbXBvbmVudHMvX3ByaW9yaXR5LXRhYnMuc2NzcyIsImNvbXBvbmVudHMvX2Nlby1pbnRyb2R1Y3Rpb24uc2NzcyIsImNvbXBvbmVudHMvX251bWJlcnMuc2NzcyIsImNvbXBvbmVudHMvX3N0cmF0ZWd5LWludHJvZHVjdGlvbi5zY3NzIiwiY29tcG9uZW50cy9fcHJpbmNpcGxlcy1pbnRyb2R1Y3Rpb24uc2NzcyIsImNvbXBvbmVudHMvX2JveGVzLnNjc3MiLCJjb21wb25lbnRzL19zbS5zY3NzIiwiY29tcG9uZW50cy9fc2Nyb2xsYmFyLnNjc3MiLCJwYWdlcy9faW5kaXZpZHVhbC5zY3NzIiwicGFnZXMvX3N0cmF0ZWdpYy5zY3NzIiwicGFnZXMvX3N0YW5kYXJkLnNjc3MiLCJ0aGVtZXMvX3RoZW1lLnNjc3MiLCJ2ZW5kb3JzL19oYW1idXJnZXJzLnNjc3MiLCJ2ZW5kb3JzL2hhbWJ1cmdlcnMvX2Jhc2Uuc2NzcyIsInZlbmRvcnMvaGFtYnVyZ2Vycy90eXBlcy9fc3Bpbi5zY3NzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLGlCQUFpQjtBQ0FqQjs7Ozs7Ozs7RUFRRTtBQ0pGOzs7Ozs7Ozs7O0VBVUU7QUNORjtHQUNDLFFBQVE7Q0FVUjs7QUFSQTtFQUVDLGFBQVk7RUFDWixlQUFjO0NBQ2Q7O0FBQ0Q7RUFDQyxZQUFXO0NBQ1g7O0FBR0Y7O0VBRUU7QUFNRjtFQUNDLGVBQWM7RUFDZCxrQkFBaUI7RUFDakIsbUJBQWtCO0NBQ2xCOztBQUVEOztFQUVFO0FBU0Y7O0VBRUU7QUFLRjs7Ozs7Ozs7Ozs7RUFXRTtBQVlGOztFQUVFO0FDekVGOzs7Ozs7OztFQVFFO0FBU0Y7RUFDQywyQkFBMEI7RUFDMUIsaURBQWdEO0VBQ2hELHVSQUd1RTtFQUN2RSxvQkFBbUI7RUFDbkIsbUJBQWtCO0NKaURsQjs7QUk5Q0Q7RUFDQywyQkFBMEI7RUFDMUIsd0RBQXVEO0VBQ3ZELG1UQUc4RTtFQUM5RSxvQkFBbUI7RUFDbkIsbUJBQWtCO0NKOENsQjs7QUkzQ0Q7RUFDQywyQkFBMEI7RUFDMUIsc0RBQXFEO0VBQ3JELDJTQUc0RTtFQUM1RSxrQkFBaUI7RUFDakIsbUJBQWtCO0NKMkNsQjs7QUl4Q0Q7RUFDQywyQkFBMEI7RUFDMUIsNERBQTJEO0VBQzNELG1VQUdrRjtFQUNsRixrQkFBaUI7RUFDakIsbUJBQWtCO0NKd0NsQjs7QUlyQ0Q7RUFDQywwQkFBeUI7RUFDekIsaURBQWdEO0VBQ2hELHlSQUd5RTtFQUN6RSxrQkFBaUI7RUFDakIsbUJBQWtCO0NKcUNsQjs7QUlzSUQ7Ozs7Ozs7Ozs7Ozs7Ozs7RUFnQkU7QUFHRjs7Ozs7RUFLRTtBQVVGOzs7Ozs7OztFQVFFO0FBR0Y7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7OztFQThCRTtBQTRDRjs7Ozs7Ozs7RUFRRTtBQXNCRjs7Ozs7Ozs7RUFRRTtBQU9GOzs7O0VBSUU7QUN4WkY7Ozs7Ozs7Ozs7Ozs7Ozs7RUFnQkU7QUF5R0Q7Ozs7Ozs7Ozs7Ozs7Ozs7RUFnQkM7QUEwSEY7Ozs7Ozs7O0VBUUU7QUFHRjs7Ozs7OztFQU9FO0FBT0Y7OztFQUdFO0FBeUJGOzs7Ozs7O0dBT0c7QUF5Q0g7Ozs7Ozs7RUFPRTtBQTRCRjs7Ozs7OztFQU9FO0FBc0NGOzs7OztFQUtFO0FBc0NGOzs7Ozs7O0VBT0U7QUEyQ0Y7Ozs7RUFJRTtBQWlCRjs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7RUFzQ0U7QUFpQkY7Ozs7Ozs7O0VBUUU7QUF3Q0Y7Ozs7Ozs7O0VBUUU7QUEyQ0Y7Ozs7Ozs7O0VBUUU7QUFxQkY7Ozs7Ozs7O0VBUUU7QUFrQ0Y7Ozs7Ozs7O0VBUUU7QUNoeEJGO0VBQ0MsVUFBUztFQUNULG1CQUFpQjtFQUNkLHVCSnNDaUI7RUlyQ3BCLGVKUXlDO0VJTnhDLGdCRm9FNEI7RUVuRTVCLHNCRjBFMkI7RUV6RTNCLDJFRjhEcUY7RUU3RHJGLGlCQUFXO0NBRVo7O0FBTUQ7RUFDQyxlSkx5QztFSU16QywyQkZnRm9DO0VDcENwQyx5Q0FBNkM7RUFHckMsaUNBQXFDO0NDOUI3Qzs7QUFuQkQ7RUFPRSxlSkh3QztFSUl4QyxzQkY0RThCO0NFM0U5Qjs7QUFURjtFQVlFLGVKSHdDO0NJU3hDOztBQWxCRjtFQWdCRyxlSmZ1QztDSWdCdkM7O0FBTUg7RUFDQyxZQUFXO0VBQ1gscUJBQW9CO0VBQ3BCLFlBQVc7RUFDWCxZQUFXO0VBQ1gsZ0VBQStEO0VBQy9ELCtCQUE4QjtFQUM5Qiw2QkFBNEI7RUFDNUIsMEJBQXlCO0VBQ3pCLHNCQUFxQjtDQUNyQjs7QUFJRDs7Ozs7O0VBTUMsYUFBWTtFQUNaLHFCQUFvQjtFQUNwQixZQUFXO0VBQ1gsWUFBVztFQUNYLGdDQUErQjtFQUMvQiw2QkFBNEI7RUFDNUIsMEJBQXlCO0NBQ3pCOztBQUVEO0VBQ0Msc0RBQXFEO0NBQ3JEOztBQUVEO0VBQ0MsdURBQXNEO0NBQ3REOztBQUVEO0VBQ0Msd0RBQXVEO0NBQ3ZEOztBQUVEO0VBQ0Msd0RBQXVEO0NBQ3ZEOztBQUVEO0VBQ0MsNkRBQTREO0NBQzVEOztBQUVEO0VBQ0MsZ0VBQStEO0NBQy9EOztBQU9EO0VBQXlCLGlCRmpCSTtDRWlCOEI7O0FBRTNEO0VBQUssa0JBQWlCO0NBQUk7O0FBRTFCO0VBRUMsaUJBQWlEO0NBZWpEOztBRCtCQTtFQ2hERDtJQUtFLGlCRmtEd0Q7R0V0Q3pEO0NOa1dBOztBTW5YRDs7O0VBWUcsb0JBQWM7RUFDZCxzQkZsQzBCO0VFb0MzQixlSnpHd0M7Q0kwR3hDOztBQUdGO0VBQ0MsbUJBQWtCO0NBQ2xCOztBQU1EO0VBQW9CLHNCQUFzQjtFQUN6QywwQkp0SHlDO0VJdUh6QyxZSjFGb0I7Q0kyRnBCOztBQUVEO0VBQ0MsMEJKM0h5QztFSTRIekMsWUovRm9CO0NJZ0dwQjs7QUN6SUQ7RUFFRSwwRUhxRW9GO0VHcEVwRixrQkFBWTtFQUViLG9CQUFtQjtDQUNuQjs7QUFFRDs7RUFHRSwyRUgyRHFGO0VHMURyRixvQkFBYztDQUVmOztBQUVEOztFQUVDLGlCSCtGNEI7RUc5RjVCLGVMTnlDO0VHa0R6Qyx5Q0FBNkM7RUFHckMsaUNBQXFDO0NFN0M3Qzs7QUFyQkQ7RUF3QkMsbUJBQXlDO0VBQ3pDLHNCQUE0QztDQUM1Qzs7QUFFRDs7RUFFQyxtQkFBeUM7RUFDekMsb0JIcURxRTtDR3BEckU7O0FBRUQ7OztFQUdDLG1CQUF1QztFQUN2QyxzQkFBMEM7Q0FDMUM7O0FBRUQ7Ozs7Ozs7Ozs7Ozs7O0VBSUUsb0JBQW1CO0VBQ25CLGVBQWM7Q0FDZDs7QUFHRjs7Ozs7Ozs7O0VBS0UsZUFBYztDQUNkOztBQUdGOzs7Ozs7Ozs7RUFLSSxlQUFjO0NBQ2Y7O0FBakVIO0VBcUVDLGdCQUF1QztDQVN2Qzs7QUZ3RUE7RUV0SkQ7SUF3RUUsZ0JBQXNDO0dBTXZDO0NQOGZBOztBSzlaQTtFRTlLRDtJQTRFRSxpQkh3Q3NEO0dHdEN2RDtDUG9nQkE7O0FPbmdCRDtFQUNDLGdCQUF1QztDQUt2Qzs7QUZ5RkE7RUUvRkQ7SUFJRSxnQkhrQ3NEO0dHaEN2RDtDUHVnQkE7O0FPdGdCRDtFQUNDLGdCQUF1QztDQUt2Qzs7QUZrRkE7RUV4RkQ7SUFJRSxnQkg0QnFEO0dHMUJ0RDtDUDBnQkE7O0FPemdCRDtFQUNDLGdCQUF1QztDQUt2Qzs7QUYyRUE7RUVqRkQ7SUFJRSxnQkhzQnFEO0dHcEJ0RDtDUDZnQkE7O0FPNWdCRDtFQUNDLGdCQUF1QztDQUt2Qzs7QUZvRUE7RUUxRUQ7SUFJRSxnQkhnQnFEO0dHZHREO0NQZ2hCQTs7QU85Z0JEO0VBQ0MsZ0JBQXVDO0NBS3ZDOztBRjREQTtFRWxFRDtJQUlFLGdCSFNxRDtHR1B0RDtDUGtoQkE7O0FPaGhCRDtFQUNDLG1CQUFrQjtDQUNsQjs7QUFNRDtFQUNDLGlCSHpDcUU7Q0cwQ3JFOztBQUVEO0VBQ0Msc0JBQTRDO0VBRTNDLGdCSHREdUQ7RUd1RHZELG9CQUFjO0VBRWYsaUJBQWdCO0NBQ2hCOztBQU9EOztFQUVDLGVBQTZEO0NBQzdEOztBQUVEOztFQUVDLGNBQWE7RUFDYix1QkhpQmdCO0VHaEJoQixZTHRIb0I7Q0t1SHBCOztBQUdEO0VBQXdCLGlCQUFnQjtDQUFJOztBQUM1QztFQUF3QixrQkFBaUI7Q0FBSTs7QUFDN0M7RUFBd0IsbUJBQWtCO0NBQUk7O0FBQzlDO0VBQXdCLG9CQUFtQjtDQUFJOztBQUMvQztFQUF3QixvQkFBbUI7Q0FBSTs7QUFHL0M7RUFBd0IsMEJBQXlCO0NBQUk7O0FBQ3JEO0VBQXdCLDBCQUF5QjtDQUFJOztBQUNyRDtFQUF3QiwyQkFBMEI7Q0FBSTs7QUFNdEQ7RUFDQyx1QkFBaUQ7RUFDakQsb0JIeEZxRTtFR3lGckUsaUNMakt5QztDS2tLekM7O0FBT0Q7O0VBRUMsY0FBYTtFQUNiLHNCQUEwQztDQVUxQzs7QUFiRDs7RUFNRSx1QkFBMkM7Q0FDM0M7O0FBUEY7Ozs7RUFXRSxpQkFBZ0I7Q0FDaEI7O0FBR0Y7RUFDQyxtQkFBa0I7Q0FDbEI7O0FBR0Q7RUZ6RkMsZ0JBQWU7RUFDZixpQkFBZ0I7Q0U4RmhCOztBQU5EO0VBSUUsa0JBQWlCO0NBQ2pCOztBQUlGO0VGbEdDLGdCQUFlO0VBQ2YsaUJBQWdCO0VFbUdoQixrQkFBaUI7Q0FPakI7O0FBVEQ7RUFLRSxzQkFBcUI7RUFDckIsa0JBQWlCO0VBQ2pCLG1CQUFrQjtDQUNsQjs7QUFJRjtFQUNDLGNBQWE7RUFDYixvQkg1SXFFO0NHNklyRTs7QUQ3SEQ7RUNnSUMsdUJBQTJDO0NBQzNDOztBQUVEO0VBQ0MsdUJBQTJDO0NBQzNDOztBQU1EOztFQUlDLGFBQVk7RUFDWixrQ0x4T3lDO0NLeU96Qzs7QUFFRDtFQUNDLGVBQWM7Q0FFZDs7QURwSkQ7RUMySkMsV0FBVTtFQUNWLHlCQUF3QjtFQUN4QixlTHRQeUM7RUt3UHhDLG9CQUFjO0VBQ2QsMkVIaE1xRjtFR2lNckYsZ0JIekx1RDtFRzBMdkQsbUJBQWE7Q0FtQ2Q7O0FGckpBO0VDaEREO0lDc0tFLHlCQUF3QjtHQStCekI7Q1A0ZUE7O0FPdmhCRDtFQW9CRSxrQkFBaUI7RUFDakIsbUJBQWtCO0NBQ2xCOztBQXRCRjs7O0VBNEJHLG1CQUFrQjtDQUNsQjs7QUR2TEg7OztFQzZMRSxlQUFjO0VBRWIsZ0JIM04yQjtFRzROM0IsbUJBQWE7RUFDYiwyRUhqT29GO0VHa09wRixvQkFBYztDQUVmOztBQU9GO0VBQ0Msc0JBQXFCO0VBQ3JCLHNCQUFxQjtFQUNyQixpQkFBZ0I7RUFDaEIsMkJBQTBCO0VBQzFCLHNCQUFxQjtFQUNyQixtQkFBa0I7Q0FDbEI7O0FBRUQ7RUFDQyxlTG5TeUM7Q0tvU3pDOztBRG5NRDtFQzBNQyxvQkgvT3FFO0NHZ1ByRTs7QUZsS0E7RUVzS0c7SUFDSSxnQkFBYztHQUNqQjtDUHlmSjs7QUt2ckJHO0VFNExBO0lBT0ksZ0JBQWM7R0FDakI7Q1B5Zko7O0FPdGZEO0VBbk5BO0lBcU5RLG9CQUFrQjtHQUNyQjtDUHlmSjs7QVFuMUJEO0VBQ0MsbUJBQWtCO0VBQ2xCLFdBQVU7RUFDVixZQUFXO0VBQ1gsV0FBVTtFQUNWLGFBQVk7RUFDWixpQkFBZ0I7RUFDaEIsdUJBQW1CO0VBQ25CLFVBQVM7Q0FDVDs7QUFNRDtFQUNDLGlCQUF1QztFQUN2QyxvQkFBMEM7RUFDMUMsZU5zQjBDO0NNckIxQzs7QUFFRDtFQUNDLGlCQUF1QztFQUN2QyxvQkFBMEM7RUFDMUMsZU5DeUM7Q01BekM7O0FBRUQ7RUFDQyxpQkFBdUM7RUFDdkMsb0JBQTBDO0VBQzFDLGVORnlDO0NNR3pDOztBQWtCRDtFQUNDLGlCQUF1QztFQUN2QyxvQkFBMEM7RUFDMUMsd0JBQXVCO0VBQ3ZCLDBCTnJDeUM7RU1zQ3pDLDBCTlYwQztFTVcxQyxlTmYwQztDTWdCMUM7O0FBRUQ7RUFDQyxpQkFBdUM7RUFDdkMsb0JBQTBDO0VBQzFDLHdCQUF1QjtFQUN2QiwwQk5yQ3lDO0VNc0N6QywwQk5Yb0U7RU1ZcEUsZUFBMEM7Q0FDMUM7O0FBRUQ7RUFDQyxpQkFBdUM7RUFDdkMsb0JBQTBDO0VBQzFDLHdCQUF1QjtFQUN2QiwwQk4zQ3lDO0VNNEN6QywwQk5sQm9FO0VNbUJwRSxlQUEwQztDQUMxQzs7QUFvQkQ7RUFDSSxtQkFBaUI7Q0FDcEI7O0FDNUZEO0VKcUJDLCtCQUE4QjtFQUV0Qix1QkFBc0I7Q0lyQjlCOztBQUVEOzs7RUFHQywrQkFBc0I7VUFBdEIsdUJBQXNCO0NBQ3RCOztBQU1EO0VBQ0MsbUJBQWtCO0VBQ2xCLGtCQUFpQjtFQUNqQixtQkFBa0I7RUFDbEIsc0JKbXNCdUM7Q0lsc0J2Qzs7QUFDRDtFQUNJLG1CQUFrQjtFQUNsQixZQUFVO0NBQ2I7O0FBS0Q7RUFDQyxrQkFBaUI7RUFDakIsbUJBQWtCO0NBQ2xCOztBQUNEO0VBQ0ksbUJBQWlCO0VBQ2pCLG9CQUFrQjtFQUNsQixtQkFBaUI7Q0FDcEI7O0FBSUQ7Ozs7Ozs7Ozs7Ozs7Ozs7RUFnQkU7QUFHRjs7Ozs7O0dBTUc7QUFRSDtFSitsQjhCLG1DRDlWZ0I7Q0szUHpDOztBQU5MO0VKK2xCOEIsbUNEOVZnQjtDS3ZQekM7O0FBR0Q7RUFiSjtJSmtUTSxzQkFBcUI7SUFDakIsa0JBQWlCO0lBdkZ6QixxQkFBb0I7SUFFcEIscUJBQW9CO0lBRXBCLGNBQWE7R0luTWQ7RUE3QkQ7SUp1bEI4QixtQ0Q5VmdCO0dLdE9yQztFQW5CVDtJSjJsQjhCLHVDRDlWb0I7R0t0T3pDO0VBdkJUO0lBeUJZLHNDQUFxQztJSm9rQm5CLHVDRDlWb0I7R0twT3pDO0NUaTRCUjs7QVM3M0JEO0VKMGpCOEIsbUNEOVZnQjtDS3ZOekM7O0FBTEw7RUowakI4QixtQ0Q5VmdCO0VLbk50QyxrQkFBaUI7Q0FDcEI7O0FKNERKO0VJdEVEO0lKNkxFLHFCQUFvQjtJQUVwQixxQkFBb0I7SUFFcEIsY0FBYTtHSTNKZDtFQXRDRDtJSndqQjhCLG1DRDlWZ0I7R0t4TTNDO0VBbEJIO0lKNGpCOEIsdUNEOVZvQjtJS3hNL0Msa0JBQWlCO0dBQ2pCO0NUZzRCRjs7QUt6ekJBO0VJOUZEO0lKbVJNLHNCQUFxQjtJQUNqQixrQkFBaUI7R0k5TzFCO0VBdENEO0lKdWpCOEIsbUNEOVZnQjtHS3pMckM7RUFoQ1Q7SUo2akI4Qix5REQ5VnNDO0dLM0wzRDtDVGk0QlI7O0FTNzNCRDtFSndoQjhCLG1DRDlWZ0I7Q0t2TE07O0FKMkJuRDtFSTlCRDtJSnFKRSxxQkFBb0I7SUFFcEIscUJBQW9CO0lBRXBCLGNBQWE7R0lwSWQ7RUFyQkQ7SUFVWSxtQkFBaUI7R0FDcEI7Q1RtNEJSOztBS2gwQkE7RUk5RUQ7SUoyT00sc0JBQXFCO0lBQ2pCLGtCQUFpQjtHSXZOMUI7RUFyQkQ7SUFrQlksbUJBQWlCO0dBQ3BCO0NUczRCUjs7QVNsNEJEO0VKaWdCOEIsbUNEOVZnQjtDS2hLSTs7QUpJakQ7RUlQRDtJSjhIRSxxQkFBb0I7SUFFcEIscUJBQW9CO0lBRXBCLGNBQWE7R0l2R2Q7Q1RxM0JBOztBS3o0QkE7RUlQRDtJSjBNTSxvQkFBbUI7SUFDZixnQkFBZTtHSWhMeEI7RUEzQkQ7SUoyZjhCLG1DRDlWZ0I7R0s1SXJDO0NUMDRCUjs7QUtwMkJBO0VJdkREO0lKb05NLHNCQUFxQjtJQUNqQixrQkFBaUI7R0kxTDFCO0VBM0JEO0lKd2Y4QixtQ0Q5VmdCO0dLaklyQztDVDY0QlI7O0FTcjRCRDtFQUlRLDBFTHJJOEU7RUtzSTlFLG9CSjRnQmlDO0VJM2dCakMscUJBQWdCO0VKMGRNLG1DRDlWZ0I7Q0sxSHpDOztBQVJMO0VKZ2U4QixtQ0Q5VmdCO0NLekhDOztBQVQvQztFSmdlOEIsbUNEOVZnQjtDS3hIQzs7QUFWL0M7RUpnZThCLG1DRDlWZ0I7Q0t2SEM7O0FKYjlDO0VJRUQ7SUo2RkUscUJBQW9CO0lBRXBCLHFCQUFvQjtJQUVwQixjQUFhO0dJMUNkO0VBdkREO0lKdWQ4QixtQ0Q5VmdCO0dLckdyQztFQXBCVDtJSjJkOEIseUREOVZzQztHS3JHM0Q7RUF4QlQ7SUpzZDhCLG1DRDlWZ0I7R0s1RnJDO0VBNUJUO0lKNmQ4Qix5REQ5VnNDO0dLL0YzRDtDVDg0QlI7O0FLeDVCQTtFSXRCRDtJSjZGRSxxQkFBb0I7SUFFcEIscUJBQW9CO0lBRXBCLGNBQWE7R0kxQ2Q7RUF2REQ7SUFzQ1ksb0NBQW1DO0lKZ2JqQixtQ0Q5VmdCO0dLaEZyQztFQXhDVDtJSjJkOEIseUREOVZzQztHS2pGM0Q7RUE1Q1Q7SUpzZDhCLG1DRDlWZ0I7R0t4RXJDO0VBaERUO0lKNGQ4Qix1Q0Q5Vm9CO0dLMUV6QztDVGk1QlI7O0FTejRCRDtFSm9hOEIsbUNEOVZnQjtDS2pFekM7O0FKM0ZKO0VJc0ZEO0lKaUNFLHFCQUFvQjtJQUVwQixxQkFBb0I7SUFFcEIsY0FBYTtHSWJkO0NUKzNCQTs7QUs3N0JBO0VJc0NEO0lKdUhNLHNCQUFxQjtJQUNqQixrQkFBaUI7R0loRzFCO0VBeEJEO0lBa0JZLG9DQUFtQztJSmdaakIsdUNEOVZvQjtHS2hEekM7Q1QrNEJSOztBU3Q0QkQ7RUpnRk0sb0JBQW1CO0VBQ2YsZ0JBQWU7Q0lyRHhCOztBQTVCRDtFSnVZOEIsbUNEOVZnQjtDS3RDSTs7QUFIbEQ7RUp1WThCLG1DRDlWZ0I7Q0tyQ0k7O0FKdkhqRDtFSW1IRDtJSklFLHFCQUFvQjtJQUVwQixxQkFBb0I7SUFFcEIsY0FBYTtHSW9CZDtDVGs0QkE7O0FLei9CQTtFSTJGRDtJSjBGTSxzQkFBcUI7SUFDakIsa0JBQWlCO0dJL0QxQjtFQTVCRDtJSjhYOEIsbUNEOVZnQjtHS1pyQztFQXBCVDtJSm1ZOEIsdUNEOVZvQjtHS2J6QztDVG81QlI7O0FTejRCRDtFSm9XOEIsbUNEOVZnQjtDS0hJOztBSmpJakQ7RUk4SEQ7SUp1RE0sc0JBQXFCO0lBQ2pCLGtCQUFpQjtHSXZDMUI7RUFqQkQ7SUFZWSwwQ0FBeUM7SUpzVnZCLHVDRDlWb0I7R0tVekM7Q1QyNEJSOztBU2w0QkQ7RUo2VThCLG1DRDlWZ0I7Q0tvQks7O0FBSG5EO0VKNlU4QixtQ0Q5VmdCO0NLcUJJOztBSmpMakQ7RUk2S0Q7SUp0REUscUJBQW9CO0lBRXBCLHFCQUFvQjtJQUVwQixjQUFhO0dJMEVkO0VBeEJEO0lKNlU4QixtQ0Q5VmdCO0dLNEJyQztDVDQ0QlI7O0FLNWlDQTtFSXFKRDtJSmdDTSxzQkFBcUI7SUFDakIsa0JBQWlCO0dJVDFCO0VBeEJEO0lKcVU4QixtQ0Q5VmdCO0dLOENyQztDVDY0QlI7O0FTcDRCRDtFSitTOEIsbUNEOVZnQjtDS2tESzs7QUp0TGxEO0VJbUxEO0lKRU0sc0JBQXFCO0lBQ2pCLGtCQUFpQjtHSVkxQjtFQWZEO0lBVVksb0NBQW1DO0lKbVNqQix1Q0Q5Vm9CO0dLNkR6QztDVHc0QlI7O0FTOTNCRDtFSnlSOEIsbUNEOVZnQjtDS3dFSzs7QUFIbkQ7RUp5UjhCLG1DRDlWZ0I7Q0t5RUs7O0FKck9sRDtFSWlPRDtJSjFHRSxxQkFBb0I7SUFFcEIscUJBQW9CO0lBRXBCLGNBQWE7R0k2SGQ7Q1R5M0JBOztBS3psQ0E7RUl5TUQ7SUpwQk0sc0JBQXFCO0lBQ2pCLGtCQUFpQjtHSTBDMUI7RUF2QkQ7SUppUjhCLG1DRDlWZ0I7R0tpR3JDO0NUdTRCUjs7QUs1bkNBO0VJOFBEO0lKdklFLHFCQUFvQjtJQUVwQixxQkFBb0I7SUFFcEIsY0FBYTtHSTRKZDtDVCsyQkE7O0FLOW1DQTtFSXNPRDtJSmpETSxzQkFBcUI7SUFDakIsa0JBQWlCO0dJeUUxQjtFQXpCRDtJQW9CWSxvQ0FBbUM7SUpxT2pCLHlERDlWc0M7R0sySDNEO0NUODNCUjs7QVN0M0JEO0VKcktFLHFCQUFvQjtFQUVwQixxQkFBb0I7RUFFcEIsY0FBYTtFQXdFVCxvQkFBbUI7RUFDZixnQkFBZTtDSXVHeEI7O0FBZkQ7RUo4TjhCLG1DRDlWZ0I7Q0tzSXpDOztBSmxQSjtFSTRPRDtJSnpGTSxvQkFBbUI7SUFDZixnQkFBZTtHSXVHeEI7RUFmRDtJSnNOOEIsbUNEOVZnQjtHS29KckM7Q1RvNEJSOztBU2g0QkQ7RUp6R00sb0JBQW1CO0VBQ2YsZ0JBQWU7Q0lnS3hCOztBQXhERDtFSjhNOEIsbUNEOVZnQjtDS3FKekM7O0FBTEw7RUo4TThCLG1DRDlWZ0I7Q0t3SnpDOztBQVJMO0VKOE04QixtQ0Q5VmdCO0NLNEp6Qzs7QUFaTDtFSjhNOEIsbUNEOVZnQjtDSytKekM7O0FKM1RKO0VJNFNEO0lKckxFLHFCQUFvQjtJQUVwQixxQkFBb0I7SUFFcEIsY0FBYTtHSXlPZDtDVHcyQkE7O0FLcHJDQTtFSW9SRDtJSnpHTSxvQkFBbUI7SUFDZixnQkFBZTtHSWdLeEI7RUF4REQ7SUE4Qlksb0NBQW1DO0lKMktqQix5REQ5VnNDO0dLcUwzRDtFQWhDVDtJSnFNOEIsbUNEOVZnQjtHSzRMckM7RUFuQ1Q7SUFxQ1ksb0NBQW1DO0lKdUtqQix1Q0Q5Vm9CO0dLeUx6QztDVDQ0QlI7O0FLL3FDQTtFSTRQRDtJSnpHTSxvQkFBbUI7SUFDZixnQkFBZTtHSWdLeEI7RUF4REQ7SUpxTThCLG1DRDlWZ0I7R0t1TXJDO0VBOUNUO0lKc004QixtQ0Q5VmdCO0dLeU1yQztFQWpEVDtJQW9EZ0Isb0NBQW1DO0dBQ3RDO0NUKzRCWjs7QVN0NEJEO0VKdktNLG9CQUFtQjtFQUNmLGdCQUFlO0NJc014Qjs7QUFoQ0Q7RUpnSjhCLG1DRDlWZ0I7Q0ttTnpDOztBQUxMO0VKZ0o4QixtQ0Q5VmdCO0NLc056Qzs7QUFSTDtFSmdKOEIsbUNEOVZnQjtDS3lOekM7O0FKclVKO0VJMFREO0lKblBFLHFCQUFvQjtJQUVwQixxQkFBb0I7SUFFcEIsY0FBYTtHSStRZDtFQWhDRDtJQW9CWSxvQ0FBbUM7SUowSGpCLHVDRDlWb0I7R0tzT3pDO0VBdEJUO0lBd0JZLG9DQUFtQztJSmlI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K0JBQTBCO01BQTFCLDJCQUEwQjtFQUMxQiwwQkFBaUI7S0FBakIsdUJBQWlCO01BQWpCLHNCQUFpQjtVQUFqQixrQkFBaUI7RVJ3Q2pCLHlDQUE2QztFQUdyQyxpQ0FBcUM7Q1E4RTdDOztBUk1BO0VRdEpEOztJQTJCRSxZQUFXO0dBcUhaO0NidzFEQTs7QWF4K0REOzs7RUFnQ0UsMEJYT3lDO0VXTnpDLGVYRXlDO0NXRHpDOztBQWxDRjs7RUFxQ0Usc0JYQ3lDO0VXQXpDLDBCWEV5QztFV0R6QyxZWEZ5QztDV1N6Qzs7QUE5Q0Y7OztFQTJDRyxzQlhMd0M7RVdNeEMsMEJYSndDO0NXS3hDOztBQTdDSDs7RUFpREUsc0JYbkN3QztFV29DeEMsMEJYcEN3QztFV3FDeEMsWVhWbUI7Q1dpQm5COztBQTFERjs7O0VBdURHLHNCWDFDdUM7RVcyQ3ZDLDBCWDNDdUM7Q1c0Q3ZDOztBQXpESDs7RUE2REUsc0JYM0N3QztFVzRDeEMsMEJYNUN3QztFVzZDeEMsWVh0Qm1CO0NXNkJuQjs7QUF0RUY7OztFQW1FRyxzQlhsRHVDO0VXbUR2QywwQlhuRHVDO0NXb0R2Qzs7QUFyRUg7O0VBeUVFLHNCWHBEd0M7RVdxRHhDLDBCWHJEd0M7RVdzRHhDLFlYbENtQjtDV3lDbkI7O0FBbEZGOzs7RUErRUcsc0JYM0R1QztFVzREdkMsMEJYNUR1QztDVzZEdkM7O0FBakZIOztFQXFGRSxzQlg3RHdDO0VXOER4QywwQlg5RHdDO0VXK0R4QyxZWDlDbUI7Q1dxRG5COztBQTlGRjs7O0VBMkZHLHNCWHBFdUM7RVdxRXZDLDBCWHJFdUM7Q1dzRXZDOztBQTdGSDs7RUFpR0Usc0JYdEV3QztFV3VFeEMsMEJYdkV3QztFV3dFeEMsWVgxRG1CO0NXaUVuQjs7QUExR0Y7OztFQXVHRyxzQlg3RXVDO0VXOEV2QywwQlg5RXVDO0NXK0V2Qzs7QUF6R0g7O0VBNEdRLG1CWG5FYTtFV29FYixZWHBFYTtFV3FFYiw4QkFBNEI7Q0FLL0I7O0FBbkhMOzs7RUFpSFksNENYeEVTO0NXeUVaOztBQWxIVDs7OztFQXNIUSxlQUFhO0VBQ2Isc0JB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RUQ7Q3BDa3hLTjs7QUFFRDtFb0Mvd0tPLDhHQUFBO0VBQUEsc0dBQUE7RUFBQSw4RkFBQTtFQUFBLDhKQUFBO0NwQ2l4S047O0FBRUQ7RW9DN3dLUSxrQ0FBdUI7TUFBdkIsOEJBQXVCO1VBQXZCLDBCQUF1QjtFQUN2QixnQ0FBQTtVQUFBLHdCQUFBO0VBZUQsd0VBQUE7VUFBQSxnRUFBQTtDcENpd0tOOztBQUVEO0VvQzl3S1UsT0FBTztFQUNQLFdBQVU7RUFFWCxvRXBDK3dLb0I7RW9DL3dLcEIsNERwQyt3S29CO0NvQzF5SzNCOztBcEM2eUtGO0VvQzd3S1UsVUFBVTtFQUVYLGtDQUFBO01BQUEsOEJBQUE7VUFBQSwwQkFBQTtFcEM4d0tQLDRHQUE0RjtFQUE1RixvR0FBNEY7RUFBNUYsNEZBQTRGO0VBQTVGLCtKQUE0RjtDQUM3RiIsImZpbGUiOiJtYWluLmNzcyIsInNvdXJjZXNDb250ZW50IjpbIkBjaGFyc2V0IFwiVVRGLThcIjtcbi8qXHJcbiAgIyMgICAgICMjICAgICMjIyAgICAjIyMjICMjICAgICMjIFxyXG4gICMjIyAgICMjIyAgICMjICMjICAgICMjICAjIyMgICAjIyBcclxuICAjIyMjICMjIyMgICMjICAgIyMgICAjIyAgIyMjIyAgIyMgXHJcbiAgIyMgIyMjICMjICMjICAgICAjIyAgIyMgICMjICMjICMjIFxyXG4gICMjICAgICAjIyAjIyMjIyMjIyMgICMjICAjIyAgIyMjIyBcclxuICAjIyAgICAgIyMgIyMgICAgICMjICAjIyAgIyMgICAjIyMgXHJcbiAgIyMgICAgICMjICMjICAgICAjIyAjIyMjICMjICAgICMjIFxyXG4qL1xuLypcclxuICAgVXNlIHRoZSBXZWJBSU0gQ29sb3IgQ29udHJhc3QgQ2hlY2tlciB0byBjaGVjayBhbGwgdGhlIHRleHQgY29sb3JzIFxyXG4gICBhcmUgV0NBRyBBQSBjb21wbGlhbnQuIElmIHNvbWUgY29sb3JzIGFyZW4ndCBjb21wbGlhbnQgYW5kIHdpbGwgYmUgXHJcbiAgIHVzZWQgdGhyb3VnaG91dCB0aGUgc2l0ZSBmb3IgY29udGVudCBwdXJwb3NlcyB0aGVuIGdlbmVyYXRlIGFuIFxyXG4gICBhbHRlcm5hdGl2ZSB2ZXJzaW9uIGluIHRoZSAnVzNDIENvbXBsaWFudCBBZGp1c3RtZW50cycgc2VjdGlvbi5cclxuXHJcbiAgIFNvbWUgY29sb3JzIGZhaWwgc3RhbmRhcmQgV0NBRyBBQSBmb3IgcmVndWxhciBmb250IHNpemUgYnV0IHBhc3MgXHJcbiAgIGZvciBsYXJnZXIgdHlwZSBzaXplcyA9IDI0cHggYW5kIGxhcmdlclxyXG5cclxuICAgaHR0cDovL3dlYmFpbS5vcmcvcmVzb3VyY2VzL2NvbnRyYXN0Y2hlY2tlci9cclxuKi9cbi5sLWdyaWQtaG9tZS1oZWFkZXIsIC5sLWdyaWQtaGVhZGVyLCAubC1ncmlkLWJveGVzLCAubC1ncmlkLWZvb3RlciwgLmwtZ3JpZC1wcmlvcml0eSwgLmwtZ3JpZC1wcmlvcml0aWVzLWhlYWRlciwgLmwtZ3JpZC1wcmlvcml0eS1kb3duLCAubC1ncmlkLWNlby1pbnRybywgLmwtZ3JpZC1jb3VudCwgLmwtZ3JpZC1zdHJhdGVneS1pbnRybywgLmwtZ3JpZC1wcmluY2lwbGVzLWludHJvLCAubC1ncmlkLXN0YW5kYXJkLWhlYWRlciwgLmwtZ3JpZC1zdGFuZGFyZC11bmRlci10aHJlZSwgLmwtZ3JpZC1zdGFuZGFyZC11bmRlciwgLmwtZ3JpZC1wYXJ0bmVycyB7XG4gICp6b29tOiAxO1xufVxuXG4ubC1ncmlkLWhvbWUtaGVhZGVyOmJlZm9yZSwgLmwtZ3JpZC1oZWFkZXI6YmVmb3JlLCAubC1ncmlkLWJveGVzOmJlZm9yZSwgLmwtZ3JpZC1mb290ZXI6YmVmb3JlLCAubC1ncmlkLXByaW9yaXR5OmJlZm9yZSwgLmwtZ3JpZC1wcmlvcml0aWVzLWhlYWRlcjpiZWZvcmUsIC5sLWdyaWQtcHJpb3JpdHktZG93bjpiZWZvcmUsIC5sLWdyaWQtY2VvLWludHJvOmJlZm9yZSwgLmwtZ3JpZC1jb3VudDpiZWZvcmUsIC5sLWdyaWQtc3RyYXRlZ3ktaW50cm86YmVmb3JlLCAubC1ncmlkLXByaW5jaXBsZXMtaW50cm86YmVmb3JlLCAubC1ncmlkLXN0YW5kYXJkLWhlYWRlcjpiZWZvcmUsIC5sLWdyaWQtc3RhbmRhcmQtdW5kZXItdGhyZWU6YmVmb3JlLCAubC1ncmlkLXN0YW5kYXJkLXVuZGVyOmJlZm9yZSwgLmwtZ3JpZC1wYXJ0bmVyczpiZWZvcmUsIC5sLWdyaWQtaG9tZS1oZWFkZXI6YWZ0ZXIsIC5sLWdyaWQtaGVhZGVyOmFmdGVyLCAubC1ncmlkLWJveGVzOmFmdGVyLCAubC1ncmlkLWZvb3RlcjphZnRlciwgLmwtZ3JpZC1wcmlvcml0eTphZnRlciwgLmwtZ3JpZC1wcmlvcml0aWVzLWhlYWRlcjphZnRlciwgLmwtZ3JpZC1wcmlvcml0eS1kb3duOmFmdGVyLCAubC1ncmlkLWNlby1pbnRybzphZnRlciwgLmwtZ3JpZC1jb3VudDphZnRlciwgLmwtZ3JpZC1zdHJhdGVneS1pbnRybzphZnRlciwgLmwtZ3JpZC1wcmluY2lwbGVzLWludHJvOmFmdGVyLCAubC1ncmlkLXN0YW5kYXJkLWhlYWRlcjphZnRlciwgLmwtZ3JpZC1zdGFuZGFyZC11bmRlci10aHJlZTphZnRlciwgLmwtZ3JpZC1zdGFuZGFyZC11bmRlcjphZnRlciwgLmwtZ3JpZC1wYXJ0bmVyczphZnRlciB7XG4gIGNvbnRlbnQ6IFwiIFwiO1xuICBkaXNwbGF5OiB0YWJsZTtcbn1cblxuLmwtZ3JpZC1ob21lLWhlYWRlcjphZnRlciwgLmwtZ3JpZC1oZWFkZXI6YWZ0ZXIsIC5sLWdyaWQtYm94ZXM6YWZ0ZXIsIC5sLWdyaWQtZm9vdGVyOmFmdGVyLCAubC1ncmlkLXByaW9yaXR5OmFmdGVyLCAubC1ncmlkLXByaW9yaXRpZXMtaGVhZGVyOmFmdGVyLCAubC1ncmlkLXByaW9yaXR5LWRvd246YWZ0ZXIsIC5sLWdyaWQtY2VvLWludHJvOmFmdGVyLCAubC1ncmlkLWNvdW50OmFmdGVyLCAubC1ncmlkLXN0cmF0ZWd5LWludHJvOmFmdGVyLCAubC1ncmlkLXByaW5jaXBsZXMtaW50cm86YWZ0ZXIsIC5sLWdyaWQtc3RhbmRhcmQtaGVhZGVyOmFmdGVyLCAubC1ncmlkLXN0YW5kYXJkLXVuZGVyLXRocmVlOmFmdGVyLCAubC1ncmlkLXN0YW5kYXJkLXVuZGVyOmFmdGVyLCAubC1ncmlkLXBhcnRuZXJzOmFmdGVyIHtcbiAgY2xlYXI6IGJvdGg7XG59XG5cbi8qXHJcbiAgIEV4YW1wbGU6IGRpdiB7IEBleHRlbmQgJWNsZWFyZml4OyB9XHJcbiovXG5oZWFkZXIgLnNpdGUtbG9nbyB7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBtYXJnaW4tbGVmdDogYXV0bztcbiAgbWFyZ2luLXJpZ2h0OiBhdXRvO1xufVxuXG4vKlxyXG4gICBFeGFtcGxlOiBkaXYgeyBAZXh0ZW5kICVjZW50ZXItYmxvY2s7IH1cclxuKi9cbi8qXHJcbiAgIEV4YW1wbGU6IGRpdiB7IEBleHRlbmQgJXB1bGwtbGVmdDsgfVxyXG4qL1xuLyogXHJcbiAgIFdoZW4geW91IGhpZGUgYW4gZWxlbWVudCB3aXRoIGRpc3BsYXk6IG5vbmUsIHRoYXQgcHJldmVudHMgc2NyZWVuIFxyXG4gICByZWFkZXJzIGZyb20gcmVhZGluZyBpdCB0byB0aGUgdXNlci4gU29tZXRpbWVzIHRoYXTigJlzIGZpbmUsIGJ1dCBpbiBcclxuICAgb3RoZXIgY2FzZXMgdGhpcyB3aWxsIG1ha2UgdGhlIHNpdGUgaGFyZCB0byB1c2UgZm9yIHBlb3BsZSB3aXRoIFxyXG4gICBzY3JlZW4gcmVhZGVycy4gXHJcbiAgIFxyXG4gICBUaHVzLCB3ZSBoYXZlIHRvIHVzZSBhbm90aGVyIHRlY2huaXF1ZSBmb3IgaGlkaW5nIGVsZW1lbnRzIHdoaWxlIGF0IFxyXG4gICB0aGUgc2FtZSB0aW1lIG1ha2UgdGhlbSBhY2Nlc3NpYmxlLlxyXG4gICBcclxuICAgVXNpbmcgdGhlIFNhc3MgcGxhY2Vob2xkZXIgc2VsZWN0b3Igc2luY2UgdGhlIG91dHB1dCB3aWxsIGFsd2F5cyBiZSBcclxuICAgdGhlIHNhbWUsIHdoaWNoIGVuYWJsZXMgdXMgdG8gcmVkdWNlIHJlcGV0ZXRpdmUgY29kZSBpbiB0aGUgb3V0cHV0LlxyXG4qL1xuLypcclxuICAgRXhhbXBsZTogZGl2IHsgQGV4dGVuZCAldmlzdWFsbHloaWRkZW47IH1cclxuKi9cbi8qXHJcblx0ICMjIyMjICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFxyXG5cdCMgICAgICMgICMjIyMgICAgIyMgICAjIyMjIyMgIyMjIyMjICAjIyMjICAjICAgICAgIyMjIyMgICMgIyAgICAjICAjIyMjICBcclxuXHQjICAgICAgICMgICAgIyAgIyAgIyAgIyAgICAgICMgICAgICAjICAgICMgIyAgICAgICMgICAgIyAjICMjICAgIyAjICAgICMgXHJcblx0ICMjIyMjICAjICAgICAgIyAgICAjICMjIyMjICAjIyMjIyAgIyAgICAjICMgICAgICAjICAgICMgIyAjICMgICMgIyAgICAgIFxyXG5cdFx0ICAjICMgICAgICAjIyMjIyMgIyAgICAgICMgICAgICAjICAgICMgIyAgICAgICMgICAgIyAjICMgICMgIyAjICAjIyMgXHJcblx0IyAgICAgIyAjICAgICMgIyAgICAjICMgICAgICAjICAgICAgIyAgICAjICMgICAgICAjICAgICMgIyAjICAgIyMgIyAgICAjIFxyXG5cdCAjIyMjIyAgICMjIyMgICMgICAgIyAjICAgICAgIyAgICAgICAjIyMjICAjIyMjIyMgIyMjIyMgICMgIyAgICAjICAjIyMjICBcclxuKi9cbkBmb250LWZhY2Uge1xuICBmb250LWZhbWlseTogJ1NlbnNpYmlsaXR5JztcbiAgc3JjOiB1cmwoXCIuLi9mb250cy9TZW5zaWJpbGl0eS9TZW5zaWJpbGl0eS5lb3RcIik7XG4gIHNyYzogdXJsKFwiLi4vZm9udHMvU2Vuc2liaWxpdHkvU2Vuc2liaWxpdHkuZW90PyNpZWZpeFwiKSBmb3JtYXQoXCJlbWJlZGRlZC1vcGVudHlwZVwiKSwgdXJsKFwiLi4vZm9udHMvU2Vuc2liaWxpdHkvU2Vuc2liaWxpdHkud29mZjJcIikgZm9ybWF0KFwid29mZjJcIiksIHVybChcIi4uL2ZvbnRzL1NlbnNpYmlsaXR5L1NlbnNpYmlsaXR5LndvZmZcIikgZm9ybWF0KFwid29mZlwiKSwgdXJsKFwiLi4vZm9udHMvU2Vuc2liaWxpdHkvU2Vuc2liaWxpdHkuc3ZnI1NlbnNpYmlsaXR5XCIpIGZvcm1hdChcInN2Z1wiKTtcbiAgZm9udC13ZWlnaHQ6IG5vcm1hbDtcbiAgZm9udC1zdHlsZTogbm9ybWFsO1xufVxuXG5AZm9udC1mYWNlIHtcbiAgZm9udC1mYW1pbHk6ICdTZW5zaWJpbGl0eSc7XG4gIHNyYzogdXJsKFwiLi4vZm9udHMvU2Vuc2liaWxpdHkvU2Vuc2liaWxpdHktSXRhbGljLmVvdFwiKTtcbiAgc3JjOiB1cmwoXCIuLi9mb250cy9TZW5zaWJpbGl0eS9TZW5zaWJpbGl0eS1JdGFsaWMuZW90PyNpZWZpeFwiKSBmb3JtYXQoXCJlbWJlZGRlZC1vcGVudHlwZVwiKSwgdXJsKFwiLi4vZm9udHMvU2Vuc2liaWxpdHkvU2Vuc2liaWxpdHktSXRhbGljLndvZmYyXCIpIGZvcm1hdChcIndvZmYyXCIpLCB1cmwoXCIuLi9mb250cy9TZW5zaWJpbGl0eS9TZW5zaWJpbGl0eS1JdGFsaWMud29mZlwiKSBmb3JtYXQoXCJ3b2ZmXCIpLCB1cmwoXCIuLi9mb250cy9TZW5zaWJpbGl0eS9TZW5zaWJpbGl0eS1JdGFsaWMuc3ZnI1NlbnNpYmlsaXR5XCIpIGZvcm1hdChcInN2Z1wiKTtcbiAgZm9udC13ZWlnaHQ6IG5vcm1hbDtcbiAgZm9udC1zdHlsZTogaXRhbGljO1xufVxuXG5AZm9udC1mYWNlIHtcbiAgZm9udC1mYW1pbHk6ICdTZW5zaWJpbGl0eSc7XG4gIHNyYzogdXJsKFwiLi4vZm9udHMvU2Vuc2liaWxpdHkvU2Vuc2liaWxpdHktQm9sZC5lb3RcIik7XG4gIHNyYzogdXJsKFwiLi4vZm9udHMvU2Vuc2liaWxpdHkvU2Vuc2liaWxpdHktQm9sZC5lb3Q/I2llZml4XCIpIGZvcm1hdChcImVtYmVkZGVkLW9wZW50eXBlXCIpLCB1cmwoXCIuLi9mb250cy9TZW5zaWJpbGl0eS9TZW5zaWJpbGl0eS1Cb2xkLndvZmYyXCIpIGZvcm1hdChcIndvZmYyXCIpLCB1cmwoXCIuLi9mb250cy9TZW5zaWJpbGl0eS9TZW5zaWJpbGl0eS1Cb2xkLndvZmZcIikgZm9ybWF0KFwid29mZlwiKSwgdXJsKFwiLi4vZm9udHMvU2Vuc2liaWxpdHkvU2Vuc2liaWxpdHktQm9sZC5zdmcjU2Vuc2liaWxpdHlcIikgZm9ybWF0KFwic3ZnXCIpO1xuICBmb250LXdlaWdodDogYm9sZDtcbiAgZm9udC1zdHlsZTogbm9ybWFsO1xufVxuXG5AZm9udC1mYWNlIHtcbiAgZm9udC1mYW1pbHk6ICdTZW5zaWJpbGl0eSc7XG4gIHNyYzogdXJsKFwiLi4vZm9udHMvU2Vuc2liaWxpdHkvU2Vuc2liaWxpdHktQm9sZEl0YWxpYy5lb3RcIik7XG4gIHNyYzogdXJsKFwiLi4vZm9udHMvU2Vuc2liaWxpdHkvU2Vuc2liaWxpdHktQm9sZEl0YWxpYy5lb3Q/I2llZml4XCIpIGZvcm1hdChcImVtYmVkZGVkLW9wZW50eXBlXCIpLCB1cmwoXCIuLi9mb250cy9TZW5zaWJpbGl0eS9TZW5zaWJpbGl0eS1Cb2xkSXRhbGljLndvZmYyXCIpIGZvcm1hdChcIndvZmYyXCIpLCB1cmwoXCIuLi9mb250cy9TZW5zaWJpbGl0eS9TZW5zaWJpbGl0eS1Cb2xkSXRhbGljLndvZmZcIikgZm9ybWF0KFwid29mZlwiKSwgdXJsKFwiLi4vZm9udHMvU2Vuc2liaWxpdHkvU2Vuc2liaWxpdHktQm9sZEl0YWxpYy5zdmcjU2Vuc2liaWxpdHlcIikgZm9ybWF0KFwic3ZnXCIpO1xuICBmb250LXdlaWdodDogYm9sZDtcbiAgZm9udC1zdHlsZTogaXRhbGljO1xufVxuXG5AZm9udC1mYWNlIHtcbiAgZm9udC1mYW1pbHk6ICdCZWJhcyBOZXVlJztcbiAgc3JjOiB1cmwoXCIuLi9mb250cy9CZWJhc05ldWUvQmViYXNOZXVlQm9sZC5lb3RcIik7XG4gIHNyYzogdXJsKFwiLi4vZm9udHMvQmViYXNOZXVlL0JlYmFzTmV1ZUJvbGQuZW90PyNpZWZpeFwiKSBmb3JtYXQoXCJlbWJlZGRlZC1vcGVudHlwZVwiKSwgdXJsKFwiLi4vZm9udHMvQmViYXNOZXVlL0JlYmFzTmV1ZUJvbGQud29mZjJcIikgZm9ybWF0KFwid29mZjJcIiksIHVybChcIi4uL2ZvbnRzL0JlYmFzTmV1ZS9CZWJhc05ldWVCb2xkLndvZmZcIikgZm9ybWF0KFwid29mZlwiKSwgdXJsKFwiLi4vZm9udHMvQmViYXNOZXVlL0JlYmFzTmV1ZUJvbGQuc3ZnI0JlYmFzTmV1ZUJvbGRcIikgZm9ybWF0KFwic3ZnXCIpO1xuICBmb250LXdlaWdodDogYm9sZDtcbiAgZm9udC1zdHlsZTogbm9ybWFsO1xufVxuXG4vKlxyXG4gICAjICAgICAjICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBcclxuICAgIyMgICAjIyAjIyMjIyMgIyMjIyMgICMgICAjIyAgICAgICAgICAgICAgICAgXHJcbiAgICMgIyAjICMgIyAgICAgICMgICAgIyAjICAjICAjICAgICAgICAgICAgICAgIFxyXG4gICAjICAjICAjICMjIyMjICAjICAgICMgIyAjICAgICMgICAgICAgICAgICAgICBcclxuICAgIyAgICAgIyAjICAgICAgIyAgICAjICMgIyMjIyMjICAgICAgICAgICAgICAgXHJcbiAgICMgICAgICMgIyAgICAgICMgICAgIyAjICMgICAgIyAgICAgICAgICAgICAgIFxyXG4gICAjICAgICAjICMjIyMjIyAjIyMjIyAgIyAjICAgICMgICAgICAgICAgICAgICBcclxuXHRcdFx0XHRcdFx0XHRcdFx0XHRcdFx0XHJcblx0IyMjIyMgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBcclxuICAgIyAgICAgIyAjICAgICMgIyMjIyMjICMjIyMjICAjICMjIyMjIyAgIyMjIyAgXHJcbiAgICMgICAgICMgIyAgICAjICMgICAgICAjICAgICMgIyAjICAgICAgIyAgICAgIFxyXG4gICAjICAgICAjICMgICAgIyAjIyMjIyAgIyAgICAjICMgIyMjIyMgICAjIyMjICBcclxuICAgIyAgICMgIyAjICAgICMgIyAgICAgICMjIyMjICAjICMgICAgICAgICAgICMgXHJcbiAgICMgICAgIyAgIyAgICAjICMgICAgICAjICAgIyAgIyAjICAgICAgIyAgICAjIFxyXG5cdCMjIyMgIyAgIyMjIyAgIyMjIyMjICMgICAgIyAjICMjIyMjIyAgIyMjIyAgXHJcbiovXG4vKlxyXG4gICBTZWUgdGhpcyBhcnRpY2xlIGZvciBleHBsYW5hdGlvbiBvbiB3aHkgdXNpbmcgXCJlbVwiIGlzIGEgYmV0dGVyIGFuZCBcclxuICAgbW9yZSByZWxpYWJsZSBzb2x1dGlvbiB0aGFuIFwicHhcIjpcclxuXHJcbiAgIGh0dHBzOi8vemVsbHdrLmNvbS9ibG9nL21lZGlhLXF1ZXJ5LXVuaXRzL1xyXG4qL1xuLypcclxuXHQjIyMjIyAgICAgICAgICAgICAgICAgICAgICMgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgXHJcbiAgICMgICAgICMgIyMjIyMgICMgIyMjIyMgICAgICMgICAgICAgICAjIyAgICMgICAjICAjIyMjICAjICAgICMgIyMjIyMgXHJcbiAgICMgICAgICAgIyAgICAjICMgIyAgICAjICAgICMgICAgICAgICMgICMgICAjICMgICMgICAgIyAjICAgICMgICAjICAgXHJcbiAgICMgICMjIyMgIyAgICAjICMgIyAgICAjICAgICMgICAgICAgIyAgICAjICAgIyAgICMgICAgIyAjICAgICMgICAjICAgXHJcbiAgICMgICAgICMgIyMjIyMgICMgIyAgICAjICAgICMgICAgICAgIyMjIyMjICAgIyAgICMgICAgIyAjICAgICMgICAjICAgXHJcbiAgICMgICAgICMgIyAgICMgICMgIyAgICAjICAgICMgICAgICAgIyAgICAjICAgIyAgICMgICAgIyAjICAgICMgICAjICAgXHJcblx0IyMjIyMgICMgICAgIyAjICMjIyMjICAgICAjIyMjIyMjICMgICAgIyAgICMgICAgIyMjIyAgICMjIyMgICAgIyAgIFxyXG4qL1xuLypcclxuICBUbyBjYWxjdWxhdGUgdGhlIGdyaWRzIHdlIHVzZSBwZXJjZW50YWdlcyBhbmQgdGhlIFNBU1MgY2FsYyBmZWF0dXJlLlxyXG4gIFxyXG4gIFRoZSBjYWxjdWxhdGlvbnMgd29yayBhcyBmb2xsb3dzOlxyXG5cdC0gVGhlIHdpZHRoIHN0YXJ0cyBhdCAxMDAlIG9mIHRoZSBwYXJlbnQgY29udGFpbmVyIG1pbnVzIHRoZSBcclxuXHQgIGxlZnQgKyByaWdodCBzaWRlIG1hcmdpbi4gXHJcblx0LSBNdWx0aXBseSB0aGlzIHJlc3VsdCBieSB0aGUgYW1vdW50IG9mIGNvbHVtbnMgdGhlIGNoaWxkIGNvbnRhaW5lciBcclxuXHQgIHNob3VsZCBjb3ZlciBkaXZpZGVkIGJ5IHRoZSBhbW91bnQgb2YgY29sdW1ucyBpbiB0aGUgZ3JpZC5cclxuXHJcbiAgMS4gMTAwJSAtIChsZWZ0IG1hcmdpbiArIHJpZ2h0IG1hcmdpbilcclxuICAyLiAqICh0b3RhbCBjb2x1bW5zIC8gbnVtYmVyIG9mIGNvbHVtbnMgcmVxdWlyZWQgdG8gY292ZXIpXHJcbiAgMy4gLyBieSBzYW1lIG51bWJlciB0aGF0IGlzIHRoZSByZXN1bHQgaW4gc3RlcCAyXHJcblxyXG5cclxuICBFeGFtcGxlIDE6IDEyIGdyaWQgbGF5b3V0XHJcblxyXG4gIFRoZSBmaXJzdCBjaGlsZCBjb250YWluZXIgc2hvdWxkIGNvdmVyIDMgY29sdW1ucy5cclxuICBXZSBoYXZlIGFscmVhZHkgZGV0ZXJpbWVkIHRoZSBtYXJnaW4gbGVmdCBhbmQgcmlnaHQuIEZvciB0aGlzIGV4YW1wbGUgXHJcbiAgdGhleSBhcmUgMTBweCBlYWNoLlxyXG5cclxuICB3aWR0aDogY2FsYygoMTAwJSAtIDMwcHggKiA0KSAvIDQpOyA9IDMgY29sdW1uc1xyXG5cclxuXHJcbiAgRXhhbXBsZSAyOiAxNiBjb2x1bW4gZ3JpZCBsYXlvdXRcclxuIFxyXG4gIFRoZSBmaXJzdCBjaGlsZCBjb250YWluZXIgc2hvdWxkIGNvdmVyIDMgY29sdW1ucy5cclxuICBXZSBoYXZlIGFscmVhZHkgZGV0ZXJpbWVkIHRoZSBtYXJnaW4gbGVmdCBhbmQgcmlnaHQuIEZvciB0aGlzIGV4YW1wbGUgXHJcbiAgdGhleSBhcmUgMTBweCBlYWNoLlxyXG5cclxuICB3aWR0aDogY2FsYygoMTAwJSAtIDMwcHggKiA1LjMzMzMzMzMzMzMpIC8gNS4zMzMzMzMzMzMzKTsgPSAzIGNvbHVtbnNcclxuKi9cbi8qXHJcblx0IyAgICAgIyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBcclxuXHQjICAgICAjICMjIyMjIyAjICAgICMgIyMjIyMgICAjIyMjICAjIyMjIyAgICMjIyMgIFxyXG5cdCMgICAgICMgIyAgICAgICMjICAgIyAjICAgICMgIyAgICAjICMgICAgIyAjICAgICAgXHJcblx0IyAgICAgIyAjIyMjIyAgIyAjICAjICMgICAgIyAjICAgICMgIyAgICAjICAjIyMjICBcclxuXHQgIyAgICMgICMgICAgICAjICAjICMgIyAgICAjICMgICAgIyAjIyMjIyAgICAgICAjIFxyXG5cdCAgIyAjICAgIyAgICAgICMgICAjIyAjICAgICMgIyAgICAjICMgICAjICAjICAgICMgXHJcblx0ICAgIyAgICAjIyMjIyMgIyAgICAjICMjIyMjICAgIyMjIyAgIyAgICAjICAjIyMjICBcclxuKi9cbi8qXHJcblx0IyMjIyMjICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIyMjIyMjIyAgICAgICAgICAgICAgICAgICAgICBcclxuXHQjICAgICAjICMjIyMjICAjICAjIyMjICAjIyMjIyAgIyAjIyMjIyAjICAgIyAgICAgICAjICAgICAgIyMgICAjIyMjIyAgICMjIyMgIFxyXG5cdCMgICAgICMgIyAgICAjICMgIyAgICAjICMgICAgIyAjICAgIyAgICAjICMgICAgICAgICMgICAgICMgICMgICMgICAgIyAjICAgICAgXHJcblx0IyMjIyMjICAjICAgICMgIyAjICAgICMgIyAgICAjICMgICAjICAgICAjICAgICAgICAgIyAgICAjICAgICMgIyMjIyMgICAjIyMjICBcclxuXHQjICAgICAgICMjIyMjICAjICMgICAgIyAjIyMjIyAgIyAgICMgICAgICMgICAgICAgICAjICAgICMjIyMjIyAjICAgICMgICAgICAjIFxyXG5cdCMgICAgICAgIyAgICMgICMgIyAgICAjICMgICAjICAjICAgIyAgICAgIyAgICAgICAgICMgICAgIyAgICAjICMgICAgIyAjICAgICMgXHJcblx0IyAgICAgICAjICAgICMgIyAgIyMjIyAgIyAgICAjICMgICAjICAgICAjICAgICAgICAgIyAgICAjICAgICMgIyMjIyMgICAjIyMjICBcclxuKi9cbi8qXHJcbiAgTW9zdCBvZiB0aGUgc2Vjb25kYXJ5IGNvbG9ycyBhcmUganVzdCB+MTAtMTMlIGRhcmtlciB0aGFuIHByaW1hcnkgb25lc1xyXG4gIFdlJ3JlIGhhcmRjb2Rpbmcgc2Vjb25kYXJ5IGNvbG9ycyB0byBtYWtlIHN1cmUgaXQgZml0J3MgdGhlIGRlc2lnblxyXG4gIEluIGNhc2UgeW91IG5lZWQgdG8gYWRkIG5ldyBjb2xvciwgZmVlbCBmcmVlIHRvIHVzZSBkYXJrZW4oI1hYWFhYWCwgMTElKSBvbiBwcmltYXJ5IGNvbG9yO1xyXG4qL1xuLypcclxuICAgICAjIyMjIyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBcclxuICAgICMgICAgICMgICMjIyMgICMgICAgIyAjICAgICMgICMjIyMgICMgICAgIyBcclxuICAgICMgICAgICAgIyAgICAjICMjICAjIyAjIyAgIyMgIyAgICAjICMjICAgIyBcclxuICAgICMgICAgICAgIyAgICAjICMgIyMgIyAjICMjICMgIyAgICAjICMgIyAgIyBcclxuICAgICMgICAgICAgIyAgICAjICMgICAgIyAjICAgICMgIyAgICAjICMgICMgIyBcclxuICAgICMgICAgICMgIyAgICAjICMgICAgIyAjICAgICMgIyAgICAjICMgICAjIyBcclxuICAgICAjIyMjIyAgICMjIyMgICMgICAgIyAjICAgICMgICMjIyMgICMgICAgIyBcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBcclxuICAgICAjIyMjIyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBcclxuICAgICMgICAgICMgIyMjIyMgIyAgICMgIyAgICAgICMjIyMjIyAgIyMjIyAgICBcclxuICAgICMgICAgICAgICAjICAgICMgIyAgIyAgICAgICMgICAgICAjICAgICAgICBcclxuICAgICAjIyMjIyAgICAjICAgICAjICAgIyAgICAgICMjIyMjICAgIyMjIyAgICBcclxuICAgICAgICAgICMgICAjICAgICAjICAgIyAgICAgICMgICAgICAgICAgICMgICBcclxuICAgICMgICAgICMgICAjICAgICAjICAgIyAgICAgICMgICAgICAjICAgICMgICBcclxuICAgICAjIyMjIyAgICAjICAgICAjICAgIyMjIyMjICMjIyMjIyAgIyMjIyAgICBcclxuKi9cbi8qXHJcbiAgICAjICAgICAjICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBcclxuICAgICMjICAgIyMgIyMjIyMjICMjIyMjICAjICAgIyMgICAgICAgICAgICAgICAgIFxyXG4gICAgIyAjICMgIyAjICAgICAgIyAgICAjICMgICMgICMgICAgICAgICAgICAgICAgXHJcbiAgICAjICAjICAjICMjIyMjICAjICAgICMgIyAjICAgICMgICAgICAgICAgICAgICBcclxuICAgICMgICAgICMgIyAgICAgICMgICAgIyAjICMjIyMjIyAgICAgICAgICAgICAgIFxyXG4gICAgIyAgICAgIyAjICAgICAgIyAgICAjICMgIyAgICAjICAgICAgICAgICAgICAgXHJcbiAgICAjICAgICAjICMjIyMjIyAjIyMjIyAgIyAjICAgICMgICAgICAgICAgICAgICBcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFxyXG4gICAgICMjIyMjICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgXHJcbiAgICAjICAgICAjICMgICAgIyAjIyMjIyMgIyMjIyMgICMgIyMjIyMjICAjIyMjICBcclxuICAgICMgICAgICMgIyAgICAjICMgICAgICAjICAgICMgIyAjICAgICAgIyAgICAgIFxyXG4gICAgIyAgICAgIyAjICAgICMgIyMjIyMgICMgICAgIyAjICMjIyMjICAgIyMjIyAgXHJcbiAgICAjICAgIyAjICMgICAgIyAjICAgICAgIyMjIyMgICMgIyAgICAgICAgICAgIyBcclxuICAgICMgICAgIyAgIyAgICAjICMgICAgICAjICAgIyAgIyAjICAgICAgIyAgICAjIFxyXG4gICAgICMjIyMgIyAgIyMjIyAgIyMjIyMjICMgICAgIyAjICMjIyMjIyAgIyMjIyAgXHJcbiovXG4vKlxyXG4gICMjIyMjIyMgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgXHJcbiAgIyAgICAgICAjICAgICAgIyMjIyMjICMgICAgIyAjIyMjIyAgICMjIyMgICMgICAgIyBcclxuICAjICAgICAgICMgICAgICAjICAgICAgICMgICMgICMgICAgIyAjICAgICMgICMgICMgIFxyXG4gICMjIyMjICAgIyAgICAgICMjIyMjICAgICMjICAgIyMjIyMgICMgICAgIyAgICMjICAgXHJcbiAgIyAgICAgICAjICAgICAgIyAgICAgICAgIyMgICAjICAgICMgIyAgICAjICAgIyMgICBcclxuICAjICAgICAgICMgICAgICAjICAgICAgICMgICMgICMgICAgIyAjICAgICMgICMgICMgIFxyXG4gICMgICAgICAgIyMjIyMjICMjIyMjIyAjICAgICMgIyMjIyMgICAjIyMjICAjICAgICMgXHJcbiovXG4vKlxyXG4gICBVc2VmdWwgZ3VpZGUgdG8gRmxleGJveCBjYW4gYmUgZm91bmQgYXQ6XHJcbiAgIGh0dHBzOi8vY3NzLXRyaWNrcy5jb20vc25pcHBldHMvY3NzL2EtZ3VpZGUtdG8tZmxleGJveC9cclxuICAgXHJcbiAgIEZsZXhib3ggcGxheWdyb3VuZCBhbmQgY29kZSBnZW5lcmF0b3I6XHJcbiAgIGh0dHA6Ly90aGUtZWNob3BsZXgubmV0L2ZsZXh5Ym94ZXMvXHJcblxyXG4qL1xuLypcclxuICAgVGhpcyBkZWZpbmVzIGEgZmxleCBjb250YWluZXI7IGlubGluZSBvciBibG9jayBkZXBlbmRpbmcgb24gdGhlIFxyXG4gICBnaXZlbiB2YWx1ZS4gSXQgZW5hYmxlcyBhIGZsZXggY29udGV4dCBmb3IgYWxsIGl0cyBkaXJlY3QgY2hpbGRyZW4uXHJcbiovXG4vKiBcclxuICAgVGhpcyBlc3RhYmxpc2hlcyB0aGUgbWFpbi1heGlzLCB0aHVzIGRlZmluaW5nIHRoZSBkaXJlY3Rpb24gZmxleCBcclxuICAgaXRlbXMgYXJlIHBsYWNlZCBpbiB0aGUgZmxleCBjb250YWluZXIuIEZsZXhib3ggaXMgKGFzaWRlIGZyb20gXHJcbiAgIG9wdGlvbmFsIHdyYXBwaW5nKSBhIHNpbmdsZS1kaXJlY3Rpb24gbGF5b3V0IGNvbmNlcHQuIFxyXG5cclxuICAgVGhpbmsgb2YgZmxleCBpdGVtcyBhcyBwcmltYXJpbHkgbGF5aW5nIG91dCBlaXRoZXIgaW4gaG9yaXpvbnRhbCBcclxuICAgcm93cyBvciB2ZXJ0aWNhbCBjb2x1bW5zLlxyXG4gKi9cbi8qXHJcbiAgIEJ5IGRlZmF1bHQsIGZsZXggaXRlbXMgd2lsbCBhbGwgdHJ5IHRvIGZpdCBvbnRvIG9uZSBsaW5lLiBZb3UgY2FuIFxyXG4gICBjaGFuZ2UgdGhhdCBhbmQgYWxsb3cgdGhlIGl0ZW1zIHRvIHdyYXAgYXMgbmVlZGVkIHdpdGggdGhpcyBcclxuICAgcHJvcGVydHkuIFxyXG4gICBcclxuICAgRGlyZWN0aW9uIGFsc28gcGxheXMgYSByb2xlIGhlcmUsIGRldGVybWluaW5nIHRoZSBkaXJlY3Rpb24gbmV3IFxyXG4gICBsaW5lcyBhcmUgc3RhY2tlZCBpbi5cclxuKi9cbi8qXHJcbiAgIFRoaXMgZGVmaW5lcyB0aGUgYWxpZ25tZW50IGFsb25nIHRoZSBtYWluIGF4aXMuIEl0IGhlbHBzIGRpc3RyaWJ1dGUgXHJcbiAgIGV4dHJhIGZyZWUgc3BhY2UgbGVmdCBvdmVyIHdoZW4gZWl0aGVyIGFsbCB0aGUgZmxleCBpdGVtcyBvbiBhIGxpbmUgXHJcbiAgIGFyZSBpbmZsZXhpYmxlLCBvciBhcmUgZmxleGlibGUgYnV0IGhhdmUgcmVhY2hlZCB0aGVpciBtYXhpbXVtIHNpemUuIFxyXG5cclxuICAgSXQgYWxzbyBleGVydHMgc29tZSBjb250cm9sIG92ZXIgdGhlIGFsaWdubWVudCBvZiBpdGVtcyB3aGVuIHRoZXkgXHJcbiAgIG92ZXJmbG93IHRoZSBsaW5lLlxyXG4qL1xuLypcclxuICAgVGhpcyBkZWZpbmVzIHRoZSBkZWZhdWx0IGJlaGF2aW91ciBmb3IgaG93IGZsZXggaXRlbXMgYXJlIGxhaWQgb3V0IFxyXG4gICBhbG9uZyB0aGUgY3Jvc3MgYXhpcyBvbiB0aGUgY3VycmVudCBsaW5lLiBUaGluayBvZiBpdCBhcyB0aGUgXHJcbiAgIGp1c3RpZnktY29udGVudCB2ZXJzaW9uIGZvciB0aGUgY3Jvc3MtYXhpcyAocGVycGVuZGljdWxhciB0byB0aGUgXHJcbiAgIG1haW4tYXhpcykuXHJcbiovXG4vKlxyXG4gICBUaGlzIGFsaWducyBhIGZsZXggY29udGFpbmVyJ3MgbGluZXMgd2l0aGluIHdoZW4gdGhlcmUgaXMgZXh0cmEgXHJcbiAgIHNwYWNlIGluIHRoZSBjcm9zcy1heGlzLCBzaW1pbGFyIHRvIGhvdyBqdXN0aWZ5LWNvbnRlbnQgYWxpZ25zIFxyXG4gICBpbmRpdmlkdWFsIGl0ZW1zIHdpdGhpbiB0aGUgbWFpbi1heGlzLlxyXG5cclxuICAgTm90ZTogdGhpcyBwcm9wZXJ0eSBoYXMgbm8gZWZmZWN0IHdoZW4gdGhlcmUgaXMgb25seSBvbmUgbGluZSBvZiBcclxuICAgZmxleCBpdGVtcy5cclxuKi9cbi8qXHJcbiAgIEJ5IGRlZmF1bHQsIGZsZXggaXRlbXMgYXJlIGxhaWQgb3V0IGluIHRoZSBzb3VyY2Ugb3JkZXIuIEhvd2V2ZXIsIFxyXG4gICB0aGUgb3JkZXIgcHJvcGVydHkgY29udHJvbHMgdGhlIG9yZGVyIGluIHdoaWNoIHRoZXkgYXBwZWFyIGluIHRoZSBcclxuICAgZmxleCBjb250YWluZXIuXHJcbiovXG4vKiBcclxuICAgRmxleDpcclxuXHJcbiAgIFRoaXMgaXMgdGhlIHNob3J0aGFuZCBmb3IgZmxleC1ncm93LCBmbGV4LXNocmluayBhbmQgZmxleC1iYXNpcyBcclxuICAgY29tYmluZWQuIFRoZSBzZWNvbmQgYW5kIHRoaXJkIHBhcmFtZXRlcnMgKGZsZXgtc2hyaW5rIGFuZCBcclxuICAgZmxleC1iYXNpcykgYXJlIG9wdGlvbmFsLiBEZWZhdWx0IGlzIDAgMSBhdXRvLlxyXG5cclxuICAgTmVnYXRpdmUgbnVtYmVycyBhcmUgaW52YWxpZC5cclxuXHJcbiAgIFxyXG4gICBmbGV4LWdyb3c6XHJcblxyXG4gICBUaGlzIGRlZmluZXMgdGhlIGFiaWxpdHkgZm9yIGEgZmxleCBpdGVtIHRvIGdyb3cgaWYgbmVjZXNzYXJ5LiBJdCBcclxuICAgYWNjZXB0cyBhIHVuaXRsZXNzIHZhbHVlIHRoYXQgc2VydmVzIGFzIGEgcHJvcG9ydGlvbi4gSXQgZGljdGF0ZXMgXHJcbiAgIHdoYXQgYW1vdW50IG9mIHRoZSBhdmFpbGFibGUgc3BhY2UgaW5zaWRlIHRoZSBmbGV4IGNvbnRhaW5lciB0aGUgXHJcbiAgIGl0ZW0gc2hvdWxkIHRha2UgdXAuXHJcbiAgIFxyXG4gICBJZiBhbGwgaXRlbXMgaGF2ZSBmbGV4LWdyb3cgc2V0IHRvIDEsIHRoZSByZW1haW5pbmcgc3BhY2UgaW4gdGhlIFxyXG4gICBjb250YWluZXIgd2lsbCBiZSBkaXN0cmlidXRlZCBlcXVhbGx5IHRvIGFsbCBjaGlsZHJlbi4gSWYgb25lIG9mIFxyXG4gICB0aGUgY2hpbGRyZW4gaGFzIGEgdmFsdWUgb2YgMiwgdGhlIHJlbWFpbmluZyBzcGFjZSB3b3VsZCB0YWtlIHVwIFxyXG4gICB0d2ljZSBhcyBtdWNoIHNwYWNlIGFzIHRoZSBvdGhlcnMgKG9yIGl0IHdpbGwgdHJ5IHRvLCBhdCBsZWFzdCkuXHJcblxyXG4gICBcclxuICAgZmxleC1zaHJpbms6XHJcblxyXG4gICBUaGlzIGRlZmluZXMgdGhlIGFiaWxpdHkgZm9yIGEgZmxleCBpdGVtIHRvIHNocmluayBpZiBuZWNlc3NhcnkuXHJcblxyXG4gICBcclxuICAgZmxleC1iYXNpczpcclxuXHJcbiAgIFRoaXMgZGVmaW5lcyB0aGUgZGVmYXVsdCBzaXplIG9mIGFuIGVsZW1lbnQgYmVmb3JlIHRoZSByZW1haW5pbmcgXHJcbiAgIHNwYWNlIGlzIGRpc3RyaWJ1dGVkLiBJdCBjYW4gYmUgYSBsZW5ndGggKGUuZy4gMjAlLCA1cmVtLCBldGMuKSBcclxuICAgb3IgYSBrZXl3b3JkLiBUaGUgYXV0byBrZXl3b3JkIG1lYW5zIFwibG9vayBhdCBteSB3aWR0aCBvciBoZWlnaHQgXHJcbiAgIHByb3BlcnR5XCIgKHdoaWNoIHdhcyB0ZW1wb3JhcmlseSBkb25lIGJ5IHRoZSBtYWluLXNpemUga2V5d29yZCBcclxuICAgdW50aWwgZGVwcmVjYXRlZCkuIFRoZSBjb250ZW50IGtleXdvcmQgbWVhbnMgXCJzaXplIGl0IGJhc2VkIG9uIHRoZSBcclxuICAgaXRlbSdzIGNvbnRlbnRcIiAtIHRoaXMga2V5d29yZCBpc24ndCB3ZWxsIHN1cHBvcnRlZCB5ZXQsIHNvIGl0J3MgXHJcbiAgIGhhcmQgdG8gdGVzdCBhbmQgaGFyZGVyIHRvIGtub3cgd2hhdCBpdHMgYnJldGhyZW4gbWF4LWNvbnRlbnQsIFxyXG4gICBtaW4tY29udGVudCwgYW5kIGZpdC1jb250ZW50IGRvLlxyXG4qL1xuLypcclxuICAgVGhpcyBhbGxvd3MgdGhlIGRlZmF1bHQgYWxpZ25tZW50IChvciB0aGUgb25lIHNwZWNpZmllZCBieSBcclxuICAgYWxpZ24taXRlbXMpIHRvIGJlIG92ZXJyaWRkZW4gZm9yIGluZGl2aWR1YWwgZmxleCBpdGVtcy5cclxuXHJcbiAgIFNlZSB0aGUgYWxpZ24taXRlbXMgZXhwbGFuYXRpb24gdG8gdW5kZXJzdGFuZCB0aGUgYXZhaWxhYmxlIHZhbHVlcy5cclxuXHJcbiAgIE5vdGUgdGhhdCBcImZsb2F0XCIsIFwiY2xlYXJcIiBhbmQgXCJ2ZXJ0aWNhbC1hbGlnblwiIGhhdmUgbm8gZWZmZWN0IG9uIGEgXHJcbiAgIGZsZXggaXRlbS5cclxuKi9cbi8qXHJcbiAgICAgIyMjIyMgICAgICAgICAgICAgICAgICAgICAgIyMjIyMgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFxyXG4gICAgIyAgICAgIyAjIyMjIyAgIyAjIyMjIyAgICAgIyAgICAgIyAjICAgIyAgIyMjIyAgIyMjIyMgIyMjIyMjICMgICAgIyBcclxuICAgICMgICAgICAgIyAgICAjICMgIyAgICAjICAgICMgICAgICAgICMgIyAgIyAgICAgICAgIyAgICMgICAgICAjIyAgIyMgXHJcbiAgICAjICAjIyMjICMgICAgIyAjICMgICAgIyAgICAgIyMjIyMgICAgIyAgICAjIyMjICAgICMgICAjIyMjIyAgIyAjIyAjIFxyXG4gICAgIyAgICAgIyAjIyMjIyAgIyAjICAgICMgICAgICAgICAgIyAgICMgICAgICAgICMgICAjICAgIyAgICAgICMgICAgIyBcclxuICAgICMgICAgICMgIyAgICMgICMgIyAgICAjICAgICMgICAgICMgICAjICAgIyAgICAjICAgIyAgICMgICAgICAjICAgICMgXHJcbiAgICAgIyMjIyMgICMgICAgIyAjICMjIyMjICAgICAgIyMjIyMgICAgIyAgICAjIyMjICAgICMgICAjIyMjIyMgIyAgICAjIFxyXG4qL1xuLypcclxuXHQjICAgICAjICAgICAgICAgICAgICAgICAgICAgICBcclxuXHQjICAgICAjICMgICAgIyAjICMjIyMjICAjIyMjICBcclxuXHQjICAgICAjICMjICAgIyAjICAgIyAgICMgICAgICBcclxuXHQjICAgICAjICMgIyAgIyAjICAgIyAgICAjIyMjICBcclxuXHQjICAgICAjICMgICMgIyAjICAgIyAgICAgICAgIyBcclxuXHQjICAgICAjICMgICAjIyAjICAgIyAgICMgICAgIyBcclxuXHQgIyMjIyMgICMgICAgIyAjICAgIyAgICAjIyMjICBcclxuKi9cbi8qXHJcbiAjIyMjIyMjICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICMjIyMjICAgICAgICAgICAgICAgICAgXHJcbiAgICAjICAgICMjIyMjICAjICAgIyMgICAjICAgICMgICMjIyMgICMgICAgICAjIyMjIyMgICAgIyAgICAgIyAjICMjIyMjICAjIyMjIyMgXHJcbiAgICAjICAgICMgICAgIyAjICAjICAjICAjIyAgICMgIyAgICAjICMgICAgICAjICAgICAgICAgIyAgICAgICAjICMgICAgIyAjICAgICAgXHJcbiAgICAjICAgICMgICAgIyAjICMgICAgIyAjICMgICMgIyAgICAgICMgICAgICAjIyMjIyAgICAgICMjIyMjICAjICMgICAgIyAjIyMjIyAgXHJcbiAgICAjICAgICMjIyMjICAjICMjIyMjIyAjICAjICMgIyAgIyMjICMgICAgICAjICAgICAgICAgICAgICAgIyAjICMgICAgIyAjICAgICAgXHJcbiAgICAjICAgICMgICAjICAjICMgICAgIyAjICAgIyMgIyAgICAjICMgICAgICAjICAgICAgICAgIyAgICAgIyAjICMgICAgIyAjICAgICAgXHJcbiAgICAjICAgICMgICAgIyAjICMgICAgIyAjICAgICMgICMjIyMgICMjIyMjIyAjIyMjIyMgICAgICMjIyMjICAjICMjIyMjICAjIyMjIyMgXHJcbiovXG4vKlxyXG4gIyMjIyMjICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIyMjIyMjIyAgICAgICAgICAgICAgICAgICAgICBcclxuICMgICAgICMgIyMjIyMgICMgICMjIyMgICMjIyMjICAjICMjIyMjICMgICAjICAgICAgICMgICAgICAjIyAgICMjIyMjICAgIyMjIyAgXHJcbiAjICAgICAjICMgICAgIyAjICMgICAgIyAjICAgICMgIyAgICMgICAgIyAjICAgICAgICAjICAgICAjICAjICAjICAgICMgIyAgICAgIFxyXG4gIyMjIyMjICAjICAgICMgIyAjICAgICMgIyAgICAjICMgICAjICAgICAjICAgICAgICAgIyAgICAjICAgICMgIyMjIyMgICAjIyMjICBcclxuICMgICAgICAgIyMjIyMgICMgIyAgICAjICMjIyMjICAjICAgIyAgICAgIyAgICAgICAgICMgICAgIyMjIyMjICMgICAgIyAgICAgICMgXHJcbiAjICAgICAgICMgICAjICAjICMgICAgIyAjICAgIyAgIyAgICMgICAgICMgICAgICAgICAjICAgICMgICAgIyAjICAgICMgIyAgICAjIFxyXG4gIyAgICAgICAjICAgICMgIyAgIyMjIyAgIyAgICAjICMgICAjICAgICAjICAgICAgICAgIyAgICAjICAgICMgIyMjIyMgICAjIyMjICBcclxuKi9cbmJvZHkge1xuICBtYXJnaW46IDA7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgYmFja2dyb3VuZC1jb2xvcjogI0ZGRjtcbiAgY29sb3I6ICM1NTU1NTU7XG4gIGZvbnQtc2l6ZTogMThweDtcbiAgZm9udC1saW5lLWhlaWdodDogMS41O1xuICBmb250LWZhbWlseTogXCJTZW5zaWJpbGl0eVwiLCBcIkhlbHZldGljYSBOZXVlXCIsIEhlbHZldGljYSwgQXJpYWwsIHNhbnMtc2VyaWY7XG4gIGZvbnQtd2VpZ2h0OiA0MDA7XG59XG5cbmEsIGE6bGluayB7XG4gIGNvbG9yOiAjMDA3MUNFO1xuICB0ZXh0LWRlY29yYXRpb246IHVuZGVybGluZTtcbiAgLXdlYmtpdC10cmFuc2l0aW9uOiBhbGwgMC4ycyBlYXNlLWluLW91dDtcbiAgLW1vei10cmFuc2l0aW9uOiBhbGwgMC4ycyBlYXNlLWluLW91dDtcbiAgLW8tdHJhbnNpdGlvbjogYWxsIDAuMnMgZWFzZS1pbi1vdXQ7XG4gIHRyYW5zaXRpb246IGFsbCAwLjJzIGVhc2UtaW4tb3V0O1xufVxuXG5hOmhvdmVyLCBhOmFjdGl2ZSwgYTpsaW5rOmhvdmVyLCBhOmxpbms6YWN0aXZlIHtcbiAgY29sb3I6ICM1RTdFM0U7XG4gIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbn1cblxuYTp2aXNpdGVkLCBhOmxpbms6dmlzaXRlZCB7XG4gIGNvbG9yOiAjODEzRDk3O1xufVxuXG5hOnZpc2l0ZWQ6aG92ZXIsIGE6dmlzaXRlZDphY3RpdmUsIGE6bGluazp2aXNpdGVkOmhvdmVyLCBhOmxpbms6dmlzaXRlZDphY3RpdmUge1xuICBjb2xvcjogI0FDNjEyMDtcbn1cblxuYS5saW5rLS1uZXctd2luZG93OmFmdGVyIHtcbiAgY29udGVudDogXCJcIjtcbiAgcGFkZGluZy1yaWdodDogMS41ZW07XG4gIHdpZHRoOiBhdXRvO1xuICBoZWlnaHQ6IDFlbTtcbiAgYmFja2dyb3VuZC1pbWFnZTogdXJsKC9pbWFnZXMvaWNvbnMvaWNvbi0tbGluay1leHRlcm5hbC0wMS5zdmcpO1xuICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiByaWdodCAzcHg7XG4gIGJhY2tncm91bmQtcmVwZWF0OiBuby1yZXBlYXQ7XG4gIGJhY2tncm91bmQtc2l6ZTogYXV0byAxZW07XG4gIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbn1cblxubGkgYVtocmVmJD1cIi5wZGZcIl06YWZ0ZXIsXG5saSBhW2hyZWYkPVwiLmRvY1wiXTphZnRlcixcbmxpIGFbaHJlZiQ9XCIueGxzeFwiXTphZnRlcixcbmxpIGFbaHJlZiQ9XCIueGxzXCJdOmFmdGVyLFxubGkgYVtocmVmJD1cIi5wcHRcIl06YWZ0ZXIsXG5saS5saW5rLS1uZXctd2luZG93OmFmdGVyIHtcbiAgY29udGVudDogXCIgXCI7XG4gIHBhZGRpbmctcmlnaHQ6IDEuNWVtO1xuICB3aWR0aDogYXV0bztcbiAgaGVpZ2h0OiAxZW07XG4gIGJhY2tncm91bmQtcG9zaXRpb246IDAuMjVlbSAxcHg7XG4gIGJhY2tncm91bmQtcmVwZWF0OiBuby1yZXBlYXQ7XG4gIGJhY2tncm91bmQtc2l6ZTogYXV0byAxZW07XG59XG5cbmxpIGFbaHJlZiQ9XCIucGRmXCJdOmFmdGVyIHtcbiAgYmFja2dyb3VuZC1pbWFnZTogdXJsKC9pbWFnZXMvaWNvbnMvaWNvbi0tcGRmLTAxLnN2Zyk7XG59XG5cbmxpIGFbaHJlZiQ9XCIuZG9jXCJdOmFmdGVyIHtcbiAgYmFja2dyb3VuZC1pbWFnZTogdXJsKC9pbWFnZXMvaWNvbnMvaWNvbi0td29yZC0wMS5zdmcpO1xufVxuXG5saSBhW2hyZWYkPVwiLnhsc3hcIl06YWZ0ZXIge1xuICBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoL2ltYWdlcy9pY29ucy9pY29uLS1leGNlbC0wMS5zdmcpO1xufVxuXG5saSBhW2hyZWYkPVwiLnhsc1wiXTphZnRlciB7XG4gIGJhY2tncm91bmQtaW1hZ2U6IHVybCgvaW1hZ2VzL2ljb25zL2ljb24tLWV4Y2VsLTAxLnN2Zyk7XG59XG5cbmxpIGFbaHJlZiQ9XCIucHB0XCJdOmFmdGVyIHtcbiAgYmFja2dyb3VuZC1pbWFnZTogdXJsKC9pbWFnZXMvaWNvbnMvaWNvbi0tcG93ZXJwb2ludC0wMS5zdmcpO1xufVxuXG5saS5saW5rLS1uZXctd2luZG93OmFmdGVyIHtcbiAgYmFja2dyb3VuZC1pbWFnZTogdXJsKC9pbWFnZXMvaWNvbnMvaWNvbi0tbGluay1leHRlcm5hbC0wMS5zdmcpO1xufVxuXG5wLCBsaSwgZHQsIGRkLCBhZGRyZXNzIHtcbiAgbGluZS1oZWlnaHQ6IDEuNTtcbn1cblxuZHQge1xuICBmb250LXdlaWdodDogYm9sZDtcbn1cblxuYmxvY2txdW90ZSB7XG4gIGZvbnQtc2l6ZTogMTEwcHg7XG59XG5cbkBtZWRpYSAobWluLXdpZHRoOiAyNi42NjY2N2VtKSB7XG4gIGJsb2NrcXVvdGUge1xuICAgIGZvbnQtc2l6ZTogMTMwcHg7XG4gIH1cbn1cblxuYmxvY2txdW90ZSBmb290ZXIsXG5ibG9ja3F1b3RlIHNtYWxsLFxuYmxvY2txdW90ZSAuc21hbGwge1xuICBmb250LWZvbnQtc2l6ZTogNjclO1xuICBmb250LWxpbmUtaGVpZ2h0OiAxLjU7XG4gIGNvbG9yOiAjNTU1NTU1O1xufVxuXG5hZGRyZXNzIHtcbiAgZm9udC1zdHlsZTogbm9ybWFsO1xufVxuXG46Oi1tb3otc2VsZWN0aW9uIHtcbiAgLyogQ29kZSBmb3IgRmlyZWZveCAqL1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjNTU1NTU1O1xuICBjb2xvcjogI0ZGRjtcbn1cblxuOjpzZWxlY3Rpb24ge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjNTU1NTU1O1xuICBjb2xvcjogI0ZGRjtcbn1cblxuaDEsIC5oMSB7XG4gIGZvbnQtZmFtaWx5OiBcIkJlYmFzIE5ldWVcIiwgXCJIZWx2ZXRpY2EgTmV1ZVwiLCBIZWx2ZXRpY2EsIEFyaWFsLCBzYW5zLXNlcmlmO1xuICBmb250LXdlaWdodDogYm9sZDtcbiAgbGV0dGVyLXNwYWNpbmc6IDFweDtcbn1cblxuaDIsIGgzLCBoNCwgaDUsIGg2LFxuLmgyLCAuaDMsIC5oNCwgLmg1LCAuaDYge1xuICBmb250LWZhbWlseTogXCJTZW5zaWJpbGl0eVwiLCBcIkhlbHZldGljYSBOZXVlXCIsIEhlbHZldGljYSwgQXJpYWwsIHNhbnMtc2VyaWY7XG4gIGZvbnQtd2VpZ2h0OiBub3JtYWw7XG59XG5cbmgxLCBoMiwgaDMsIGg0LCBoNSwgaDYsXG4uaDEsIC5oMiwgLmgzLCAuaDQsIC5oNSwgLmg2IHtcbiAgbGluZS1oZWlnaHQ6IDEuMTtcbiAgY29sb3I6ICMwMDcxQ0U7XG4gIC13ZWJraXQtdHJhbnNpdGlvbjogYWxsIDAuMnMgZWFzZS1pbi1vdXQ7XG4gIC1tb3otdHJhbnNpdGlvbjogYWxsIDAuMnMgZWFzZS1pbi1vdXQ7XG4gIC1vLXRyYW5zaXRpb246IGFsbCAwLjJzIGVhc2UtaW4tb3V0O1xuICB0cmFuc2l0aW9uOiBhbGwgMC4ycyBlYXNlLWluLW91dDtcbn1cblxuaDEsIC5oMSB7XG4gIG1hcmdpbi10b3A6IDQwLjVweDtcbiAgbWFyZ2luLWJvdHRvbTogNDAuNXB4O1xufVxuXG5oMiwgLmgyLFxuaDMsIC5oMyB7XG4gIG1hcmdpbi10b3A6IDQwLjVweDtcbiAgbWFyZ2luLWJvdHRvbTogMjdweDtcbn1cblxuaDQsIC5oNCxcbmg1LCAuaDUsXG5oNiwgLmg2IHtcbiAgbWFyZ2luLXRvcDogMTMuNXB4O1xuICBtYXJnaW4tYm90dG9tOiAxMy41cHg7XG59XG5cbmgxIHNtYWxsLFxuaDEgLnNtYWxsLCBoMiBzbWFsbCxcbmgyIC5zbWFsbCwgaDMgc21hbGwsXG5oMyAuc21hbGwsIGg0IHNtYWxsLFxuaDQgLnNtYWxsLCBoNSBzbWFsbCxcbmg1IC5zbWFsbCwgaDYgc21hbGwsXG5oNiAuc21hbGwsXG4uaDEgc21hbGwsXG4uaDEgLnNtYWxsLCAuaDIgc21hbGwsXG4uaDIgLnNtYWxsLCAuaDMgc21hbGwsXG4uaDMgLnNtYWxsLCAuaDQgc21hbGwsXG4uaDQgLnNtYWxsLCAuaDUgc21hbGwsXG4uaDUgLnNtYWxsLCAuaDYgc21hbGwsXG4uaDYgLnNtYWxsIHtcbiAgZm9udC13ZWlnaHQ6IG5vcm1hbDtcbiAgbGluZS1oZWlnaHQ6IDE7XG59XG5cbmgxIHNtYWxsLFxuaDEgLnNtYWxsLCAuaDEgc21hbGwsXG4uaDEgLnNtYWxsLFxuaDIgc21hbGwsXG5oMiAuc21hbGwsIC5oMiBzbWFsbCxcbi5oMiAuc21hbGwsXG5oMyBzbWFsbCxcbmgzIC5zbWFsbCwgLmgzIHNtYWxsLFxuLmgzIC5zbWFsbCB7XG4gIGZvbnQtc2l6ZTogNjUlO1xufVxuXG5oNCBzbWFsbCxcbmg0IC5zbWFsbCwgLmg0IHNtYWxsLFxuLmg0IC5zbWFsbCxcbmg1IHNtYWxsLFxuaDUgLnNtYWxsLCAuaDUgc21hbGwsXG4uaDUgLnNtYWxsLFxuaDYgc21hbGwsXG5oNiAuc21hbGwsIC5oNiBzbWFsbCxcbi5oNiAuc21hbGwge1xuICBmb250LXNpemU6IDc1JTtcbn1cblxuaDEsIC5oMSB7XG4gIGZvbnQtc2l6ZTogNTRweDtcbn1cblxuQG1lZGlhIChtaW4td2lkdGg6IDI2LjY2NjY3ZW0pIHtcbiAgaDEsIC5oMSB7XG4gICAgZm9udC1zaXplOiA3N3B4O1xuICB9XG59XG5cbkBtZWRpYSAobWluLXdpZHRoOiA0Mi42NjY2N2VtKSB7XG4gIGgxLCAuaDEge1xuICAgIGZvbnQtc2l6ZTogMTE1cHg7XG4gIH1cbn1cblxuaDIsIC5oMiB7XG4gIGZvbnQtc2l6ZTogNDBweDtcbn1cblxuQG1lZGlhIChtaW4td2lkdGg6IDQyLjY2NjY3ZW0pIHtcbiAgaDIsIC5oMiB7XG4gICAgZm9udC1zaXplOiA0NnB4O1xuICB9XG59XG5cbmgzLCAuaDMge1xuICBmb250LXNpemU6IDM3cHg7XG59XG5cbkBtZWRpYSAobWluLXdpZHRoOiA0Mi42NjY2N2VtKSB7XG4gIGgzLCAuaDMge1xuICAgIGZvbnQtc2l6ZTogNDJweDtcbiAgfVxufVxuXG5oNCwgLmg0IHtcbiAgZm9udC1zaXplOiAzMXB4O1xufVxuXG5AbWVkaWEgKG1pbi13aWR0aDogNDIuNjY2NjdlbSkge1xuICBoNCwgLmg0IHtcbiAgICBmb250LXNpemU6IDM4cHg7XG4gIH1cbn1cblxuaDUsIC5oNSB7XG4gIGZvbnQtc2l6ZTogMzFweDtcbn1cblxuQG1lZGlhIChtaW4td2lkdGg6IDQyLjY2NjY3ZW0pIHtcbiAgaDUsIC5oNSB7XG4gICAgZm9udC1zaXplOiAzOHB4O1xuICB9XG59XG5cbmg2LCAuaDYge1xuICBmb250LXNpemU6IDMxcHg7XG59XG5cbkBtZWRpYSAobWluLXdpZHRoOiA0Mi42NjY2N2VtKSB7XG4gIGg2LCAuaDYge1xuICAgIGZvbnQtc2l6ZTogMzhweDtcbiAgfVxufVxuXG5oMSArIGgyIHtcbiAgbWFyZ2luLXRvcDogLTAuNWVtO1xufVxuXG5wIHtcbiAgbWFyZ2luOiAwIDAgMjdweDtcbn1cblxuLmxlYWQge1xuICBtYXJnaW4tYm90dG9tOiA0MC41cHg7XG4gIGZvbnQtc2l6ZTogMjVweDtcbiAgZm9udC13ZWlnaHQ6IG5vcm1hbDtcbiAgbGluZS1oZWlnaHQ6IDEuNztcbn1cblxuc21hbGwsXG4uc21hbGwge1xuICBmb250LXNpemU6IDg4JTtcbn1cblxubWFyayxcbi5tYXJrIHtcbiAgcGFkZGluZzogLjJlbTtcbiAgYmFja2dyb3VuZC1jb2xvcjogI0ZGMDtcbiAgY29sb3I6ICMwMDA7XG59XG5cbi50ZXh0LS1sZWZ0IHtcbiAgdGV4dC1hbGlnbjogbGVmdDtcbn1cblxuLnRleHQtLXJpZ2h0IHtcbiAgdGV4dC1hbGlnbjogcmlnaHQ7XG59XG5cbi50ZXh0LS1jZW50ZXIge1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG59XG5cbi50ZXh0LS1qdXN0aWZ5IHtcbiAgdGV4dC1hbGlnbjoganVzdGlmeTtcbn1cblxuLnRleHQtLW5vd3JhcCB7XG4gIHdoaXRlLXNwYWNlOiBub3dyYXA7XG59XG5cbi50ZXh0LS1sb3dlcmNhc2Uge1xuICB0ZXh0LXRyYW5zZm9ybTogbG93ZXJjYXNlO1xufVxuXG4udGV4dC0tdXBwZXJjYXNlLCAuaW5pdGlhbGlzbSB7XG4gIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG59XG5cbi50ZXh0LS1jYXBpdGFsaXplIHtcbiAgdGV4dC10cmFuc2Zvcm06IGNhcGl0YWxpemU7XG59XG5cbi5wYWdlLWhlYWRlciB7XG4gIHBhZGRpbmctYm90dG9tOiAxMi41cHg7XG4gIG1hcmdpbjogNTRweCAwIDI3cHg7XG4gIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCAjNTU1NTU1O1xufVxuXG51bCxcbm9sIHtcbiAgbWFyZ2luLXRvcDogMDtcbiAgbWFyZ2luLWJvdHRvbTogMTMuNXB4O1xufVxuXG51bCBsaSxcbm9sIGxpIHtcbiAgcGFkZGluZy1ib3R0b206IDEzLjVweDtcbn1cblxudWwgdWwsXG51bCBvbCxcbm9sIHVsLFxub2wgb2wge1xuICBtYXJnaW4tYm90dG9tOiAwO1xufVxuXG5vbCBsaSB7XG4gIHBhZGRpbmctbGVmdDogMTBweDtcbn1cblxuLmxpc3QtLXVuc3R5bGVkIHtcbiAgcGFkZGluZy1sZWZ0OiAwO1xuICBsaXN0LXN0eWxlOiBub25lO1xufVxuXG4ubGlzdC0tdW5zdHlsZWQgbGkge1xuICBwYWRkaW5nLWJvdHRvbTogMDtcbn1cblxuLmxpc3QtLWlubGluZSB7XG4gIHBhZGRpbmctbGVmdDogMDtcbiAgbGlzdC1zdHlsZTogbm9uZTtcbiAgbWFyZ2luLWxlZnQ6IC01cHg7XG59XG5cbi5saXN0LS1pbmxpbmUgPiBsaSB7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgcGFkZGluZy1sZWZ0OiA1cHg7XG4gIHBhZGRpbmctcmlnaHQ6IDVweDtcbn1cblxuZGwge1xuICBtYXJnaW4tdG9wOiAwO1xuICBtYXJnaW4tYm90dG9tOiAyN3B4O1xufVxuXG5kdCB7XG4gIHBhZGRpbmctYm90dG9tOiAxMy41cHg7XG59XG5cbmRkIHtcbiAgcGFkZGluZy1ib3R0b206IDEzLjVweDtcbn1cblxuYWJiclt0aXRsZV0sXG5hYmJyW2RhdGEtb3JpZ2luYWwtdGl0bGVdIHtcbiAgY3Vyc29yOiBoZWxwO1xuICBib3JkZXItYm90dG9tOiAxcHggZG90dGVkICM1NTU1NTU7XG59XG5cbi5pbml0aWFsaXNtIHtcbiAgZm9udC1zaXplOiA5MCU7XG59XG5cbmJsb2NrcXVvdGUge1xuICBwYWRkaW5nOiAwO1xuICBtYXJnaW46IDEuNzVlbSAwLjVlbSAyZW07XG4gIGNvbG9yOiAjMDA3MUNFO1xuICBmb250LXdlaWdodDogbm9ybWFsO1xuICBmb250LWZhbWlseTogXCJTZW5zaWJpbGl0eVwiLCBcIkhlbHZldGljYSBOZXVlXCIsIEhlbHZldGljYSwgQXJpYWwsIHNhbnMtc2VyaWY7XG4gIGZvbnQtc2l6ZTogMzRweDtcbiAgZm9udC1zdHlsZTogaXRhbGljO1xufVxuXG5AbWVkaWEgKG1pbi13aWR0aDogMjYuNjY2NjdlbSkge1xuICBibG9ja3F1b3RlIHtcbiAgICBtYXJnaW46IDEuNzVlbSAxLjVlbSAyZW07XG4gIH1cbn1cblxuYmxvY2txdW90ZSBwIHtcbiAgbWFyZ2luOiAwIDAgMC41ZW07XG4gIGxpbmUtaGVpZ2h0OiAxLjNlbTtcbn1cblxuYmxvY2txdW90ZSBwOmxhc3QtY2hpbGQsXG5ibG9ja3F1b3RlIHVsOmxhc3QtY2hpbGQsXG5ibG9ja3F1b3RlIG9sOmxhc3QtY2hpbGQge1xuICBtYXJnaW4tYm90dG9tOiAyZW07XG59XG5cbmJsb2NrcXVvdGUgZm9vdGVyLFxuYmxvY2txdW90ZSBzbWFsbCxcbmJsb2NrcXVvdGUgLnNtYWxsIHtcbiAgZGlzcGxheTogYmxvY2s7XG4gIGZvbnQtc2l6ZTogMThweDtcbiAgZm9udC1zdHlsZTogaXRhbGljO1xuICBmb250LWZhbWlseTogXCJTZW5zaWJpbGl0eVwiLCBcIkhlbHZldGljYSBOZXVlXCIsIEhlbHZldGljYSwgQXJpYWwsIHNhbnMtc2VyaWY7XG4gIGZvbnQtd2VpZ2h0OiBub3JtYWw7XG59XG5cbnByZSB7XG4gIHdvcmQtYnJlYWs6IGJyZWFrLWFsbDtcbiAgd29yZC13cmFwOiBicmVhay13b3JkO1xuICB3aGl0ZS1zcGFjZTogcHJlO1xuICB3aGl0ZS1zcGFjZTogLW1vei1wcmUtd3JhcDtcbiAgd2hpdGUtc3BhY2U6IHByZS13cmFwO1xuICB3aGl0ZS1zcGFjZTogcHJlXFw5O1xufVxuXG5jb2RlIHtcbiAgY29sb3I6ICNDODM0NDY7XG59XG5cbmFkZHJlc3Mge1xuICBtYXJnaW4tYm90dG9tOiAyN3B4O1xufVxuXG5AbWVkaWEgKG1pbi13aWR0aDogMjYuNjY2NjdlbSkgYW5kIChtYXgtd2lkdGg6IDQyLjY2NjY3ZW0pIHtcbiAgaDIge1xuICAgIGZvbnQtc2l6ZTogMzZweDtcbiAgfVxufVxuXG5AbWVkaWEgKG1heC13aWR0aDogMjYuNjY2NjdlbSkge1xuICBoMiB7XG4gICAgZm9udC1zaXplOiAzMnB4O1xuICB9XG59XG5cbkBtZWRpYSAobWF4LXdpZHRoOiA0Mi42NjY2N2VtKSB7XG4gIC5sZWFkIHtcbiAgICBsaW5lLWhlaWdodDogbm9ybWFsO1xuICB9XG59XG5cbi5zci1vbmx5IHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB3aWR0aDogMXB4O1xuICBoZWlnaHQ6IDFweDtcbiAgcGFkZGluZzogMDtcbiAgbWFyZ2luOiAtMXB4O1xuICBvdmVyZmxvdzogaGlkZGVuO1xuICBjbGlwOiByZWN0KDAsIDAsIDAsIDApO1xuICBib3JkZXI6IDA7XG59XG5cbi50ZXh0LS1tdXRlZCB7XG4gIG1hcmdpbi10b3A6IDI3cHg7XG4gIG1hcmdpbi1ib3R0b206IDI3cHg7XG4gIGNvbG9yOiAjNjY2NjY2O1xufVxuXG4udGV4dC0tcG9zaXRpdmUge1xuICBtYXJnaW4tdG9wOiAyN3B4O1xuICBtYXJnaW4tYm90dG9tOiAyN3B4O1xuICBjb2xvcjogIzVFN0UzRTtcbn1cblxuLnRleHQtLW5lZ2F0aXZlIHtcbiAgbWFyZ2luLXRvcDogMjdweDtcbiAgbWFyZ2luLWJvdHRvbTogMjdweDtcbiAgY29sb3I6ICNDODM0NDY7XG59XG5cbi5iZy0tbXV0ZWQge1xuICBtYXJnaW4tdG9wOiAyN3B4O1xuICBtYXJnaW4tYm90dG9tOiAyN3B4O1xuICBwYWRkaW5nOiAxNXB4IDE1cHggMThweDtcbiAgYm9yZGVyOiAxcHggc29saWQgIzU1NTU1NTtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2YyZjJmMjtcbiAgY29sb3I6ICM2NjY2NjY7XG59XG5cbi5iZy0tcG9zaXRpdmUge1xuICBtYXJnaW4tdG9wOiAyN3B4O1xuICBtYXJnaW4tYm90dG9tOiAyN3B4O1xuICBwYWRkaW5nOiAxNXB4IDE1cHggMThweDtcbiAgYm9yZGVyOiAxcHggc29saWQgIzVFN0UzRTtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2RlZTlkMjtcbiAgY29sb3I6ICM1MTZkMzY7XG59XG5cbi5iZy0tbmVnYXRpdmUge1xuICBtYXJnaW4tdG9wOiAyN3B4O1xuICBtYXJnaW4tYm90dG9tOiAyN3B4O1xuICBwYWRkaW5nOiAxNXB4IDE1cHggMThweDtcbiAgYm9yZGVyOiAxcHggc29saWQgI0M4MzQ0NjtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2Y5ZThlYTtcbiAgY29sb3I6ICNiNDJmM2Y7XG59XG5cbi5yZWxhdGl2ZSB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbn1cblxuaHRtbCB7XG4gIC13ZWJraXQtYm94LXNpemluZzogYm9yZGVyLWJveDtcbiAgLW1vei1ib3gtc2l6aW5nOiBib3JkZXItYm94O1xuICBib3gtc2l6aW5nOiBib3JkZXItYm94O1xufVxuXG4qLFxuKjpiZWZvcmUsXG4qOmFmdGVyIHtcbiAgYm94LXNpemluZzogYm9yZGVyLWJveDtcbn1cblxuLmwtd3JhcCB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgbWFyZ2luLWxlZnQ6IGF1dG87XG4gIG1hcmdpbi1yaWdodDogYXV0bztcbiAgbWF4LXdpZHRoOiA4OC42NjY2N2VtO1xufVxuXG4ubC13cmFwLWZsdWlkIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICB3aWR0aDogMTAwJTtcbn1cblxuLmdyaWQtaXRlbSB7XG4gIG1hcmdpbi1sZWZ0OiAxNXB4O1xuICBtYXJnaW4tcmlnaHQ6IDE1cHg7XG59XG5cbi5ncmlkLXJvdyB7XG4gIG1hcmdpbi1sZWZ0OiAtMTVweDtcbiAgbWFyZ2luLXJpZ2h0OiAtMTVweDtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xufVxuXG4vKlxyXG4gICAjICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFxyXG4gICAjICAgICAgICAgIyMgICAjICAgIyAgIyMjIyAgIyAgICAjICMjIyMjIFxyXG4gICAjICAgICAgICAjICAjICAgIyAjICAjICAgICMgIyAgICAjICAgIyAgIFxyXG4gICAjICAgICAgICMgICAgIyAgICMgICAjICAgICMgIyAgICAjICAgIyAgIFxyXG4gICAjICAgICAgICMjIyMjIyAgICMgICAjICAgICMgIyAgICAjICAgIyAgIFxyXG4gICAjICAgICAgICMgICAgIyAgICMgICAjICAgICMgIyAgICAjICAgIyAgIFxyXG4gICAjIyMjIyMjICMgICAgIyAgICMgICAgIyMjIyAgICMjIyMgICAgIyAgIFxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFxyXG4gICAgIyMjIyMgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFxyXG4gICAjICAgICAjICMjIyMjICAjICMjIyMjICAgIyMjIyAgICAgICAgICAgIFxyXG4gICAjICAgICAgICMgICAgIyAjICMgICAgIyAjICAgICAgICAgICAgICAgIFxyXG4gICAjICAjIyMjICMgICAgIyAjICMgICAgIyAgIyMjIyAgICAgICAgICAgIFxyXG4gICAjICAgICAjICMjIyMjICAjICMgICAgIyAgICAgICMgICAgICAgICAgIFxyXG4gICAjICAgICAjICMgICAjICAjICMgICAgIyAjICAgICMgICAgICAgICAgIFxyXG4gICAgIyMjIyMgICMgICAgIyAjICMjIyMjICAgIyMjIyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgXHJcbiovXG4vKlxyXG4gICBTZXQgdXAgYSBHcmlkIHRlbXBsYXRlIGZvciBlYWNoIGNvbnRlbnQgdGVtcGxhdGUgb24gdGhlIHNpdGUuIFxyXG4gICBUaGVyZSBzaG91bGQgYmUgdGhlIHNhbWUgbnVtYmVyIG9mIGxheW91dHMgcGVyIGNvbnRlbnQgdHlwZS5cclxuICAgXHJcbiAgIFdoZW4gZGVmaW5pbmcgdGhlIGFtb3VudCBvZiBjb2x1bW5zIGVhY2ggZ3JpZCBjb250YWluZXIgc2hvdWxkIGNvdmVyIFxyXG4gICB1c2UgdGhlIG1peGlucyBkZXZlbG9wZWQgaW4gdGhlIF9taXhpbnMuc2NzcyBmaWxlLlxyXG4gKi9cbi5sLWdyaWQtaG9tZS1oZWFkZXIgLmdyaWQtaXRlbS0yIHtcbiAgd2lkdGg6IGNhbGMoKDEwMCUgLSAzMHB4ICogMSkgLyAxKTtcbn1cblxuLmwtZ3JpZC1ob21lLWhlYWRlciAuZ3JpZC1pdGVtLTMge1xuICB3aWR0aDogY2FsYygoMTAwJSAtIDMwcHggKiAxKSAvIDEpO1xufVxuXG5AbWVkaWEgKG1pbi13aWR0aDogNjYuNjY2NjdlbSkge1xuICAubC1ncmlkLWhvbWUtaGVhZGVyIHtcbiAgICAtd2Via2l0LWZsZXgtd3JhcDogbm93cmFwO1xuICAgIC1tcy1mbGV4LXdyYXA6IG5vd3JhcDtcbiAgICBmbGV4LXdyYXA6IG5vd3JhcDtcbiAgICBkaXNwbGF5OiAtd2Via2l0LWJveDtcbiAgICBkaXNwbGF5OiAtbW96LWJveDtcbiAgICBkaXNwbGF5OiAtbXMtZmxleGJveDtcbiAgICBkaXNwbGF5OiAtd2Via2l0LWZsZXg7XG4gICAgZGlzcGxheTogZmxleDtcbiAgfVxuICAubC1ncmlkLWhvbWUtaGVhZGVyIC5ncmlkLWl0ZW0tMSB7XG4gICAgd2lkdGg6IGNhbGMoKDEwMCUgLSAzMHB4ICogMykgLyAzKTtcbiAgfVxuICAubC1ncmlkLWhvbWUtaGVhZGVyIC5ncmlkLWl0ZW0tMiB7XG4gICAgd2lkdGg6IGNhbGMoKDEwMCUgLSAzMHB4ICogMS41KSAvIDEuNSk7XG4gIH1cbiAgLmwtZ3JpZC1ob21lLWhlYWRlciAuZ3JpZC1pdGVtLTMge1xuICAgIG1hcmdpbi1sZWZ0OiBjYWxjKCgxMDAlIC8gMTIpICsgMTVweCk7XG4gICAgd2lkdGg6IGNhbGMoKDEwMCUgLSAzMHB4ICogMS4yKSAvIDEuMik7XG4gIH1cbn1cblxuLmwtZ3JpZC1oZWFkZXIgLmdyaWQtaXRlbS0xIHtcbiAgd2lkdGg6IGNhbGMoKDEwMCUgLSAzMHB4ICogMikgLyAyKTtcbn1cblxuLmwtZ3JpZC1oZWFkZXIgLmdyaWQtaXRlbS0yIHtcbiAgd2lkdGg6IGNhbGMoKDEwMCUgLSAzMHB4ICogMikgLyAyKTtcbiAgdGV4dC1hbGlnbjogcmlnaHQ7XG59XG5cbkBtZWRpYSAobWluLXdpZHRoOiA0Mi42NjY2N2VtKSB7XG4gIC5sLWdyaWQtaGVhZGVyIHtcbiAgICBkaXNwbGF5OiAtd2Via2l0LWJveDtcbiAgICBkaXNwbGF5OiAtbW96LWJveDtcbiAgICBkaXNwbGF5OiAtbXMtZmxleGJveDtcbiAgICBkaXNwbGF5OiAtd2Via2l0LWZsZXg7XG4gICAgZGlzcGxheTogZmxleDtcbiAgfVxuICAubC1ncmlkLWhlYWRlciAuZ3JpZC1pdGVtLTEge1xuICAgIHdpZHRoOiBjYWxjKCgxMDAlIC0gMzBweCAqIDMpIC8gMyk7XG4gIH1cbiAgLmwtZ3JpZC1oZWFkZXIgLmdyaWQtaXRlbS0yIHtcbiAgICB3aWR0aDogY2FsYygoMTAwJSAtIDMwcHggKiAxLjUpIC8gMS41KTtcbiAgICB0ZXh0LWFsaWduOiByaWdodDtcbiAgfVxufVxuXG5AbWVkaWEgKG1pbi13aWR0aDogNTMuMzMzMzNlbSkge1xuICAubC1ncmlkLWhlYWRlciB7XG4gICAgLXdlYmtpdC1mbGV4LXdyYXA6IG5vd3JhcDtcbiAgICAtbXMtZmxleC13cmFwOiBub3dyYXA7XG4gICAgZmxleC13cmFwOiBub3dyYXA7XG4gIH1cbiAgLmwtZ3JpZC1oZWFkZXIgLmdyaWQtaXRlbS0xIHtcbiAgICB3aWR0aDogY2FsYygoMTAwJSAtIDMwcHggKiA0KSAvIDQpO1xuICB9XG4gIC5sLWdyaWQtaGVhZGVyIC5ncmlkLWl0ZW0tMiB7XG4gICAgd2lkdGg6IGNhbGMoKDEwMCUgLSAzMHB4ICogMS4zMzMzMzMzMzMzKSAvIDEuMzMzMzMzMzMzMyk7XG4gIH1cbn1cblxuLmwtZ3JpZC1ib3hlcyAuZ3JpZC1pdGVtLTEge1xuICB3aWR0aDogY2FsYygoMTAwJSAtIDMwcHggKiAxKSAvIDEpO1xufVxuXG5AbWVkaWEgKG1pbi13aWR0aDogNDIuNjY2NjdlbSkge1xuICAubC1ncmlkLWJveGVzIHtcbiAgICBkaXNwbGF5OiAtd2Via2l0LWJveDtcbiAgICBkaXNwbGF5OiAtbW96LWJveDtcbiAgICBkaXNwbGF5OiAtbXMtZmxleGJveDtcbiAgICBkaXNwbGF5OiAtd2Via2l0LWZsZXg7XG4gICAgZGlzcGxheTogZmxleDtcbiAgfVxuICAubC1ncmlkLWJveGVzIC5ncmlkLWl0ZW0tMSB7XG4gICAgd2lkdGg6IDMzLjMzMzMzMzQlO1xuICB9XG59XG5cbkBtZWRpYSAobWluLXdpZHRoOiA2Ni42NjY2N2VtKSB7XG4gIC5sLWdyaWQtYm94ZXMge1xuICAgIC13ZWJraXQtZmxleC13cmFwOiBub3dyYXA7XG4gICAgLW1zLWZsZXgtd3JhcDogbm93cmFwO1xuICAgIGZsZXgtd3JhcDogbm93cmFwO1xuICB9XG4gIC5sLWdyaWQtYm94ZXMgLmdyaWQtaXRlbS0xIHtcbiAgICB3aWR0aDogMzMuMzMzMzMzNCU7XG4gIH1cbn1cblxuLmwtZ3JpZC1mb290ZXIgLmdyaWQtaXRlbS0xIHtcbiAgd2lkdGg6IGNhbGMoKDEwMCUgLSAzMHB4ICogMSkgLyAxKTtcbn1cblxuQG1lZGlhIChtaW4td2lkdGg6IDQyLjY2NjY3ZW0pIHtcbiAgLmwtZ3JpZC1mb290ZXIge1xuICAgIGRpc3BsYXk6IC13ZWJraXQtYm94O1xuICAgIGRpc3BsYXk6IC1tb3otYm94O1xuICAgIGRpc3BsYXk6IC1tcy1mbGV4Ym94O1xuICAgIGRpc3BsYXk6IC13ZWJraXQtZmxleDtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICB9XG59XG5cbkBtZWRpYSAobWluLXdpZHRoOiA0Mi42NjY2N2VtKSB7XG4gIC5sLWdyaWQtZm9vdGVyIHtcbiAgICAtd2Via2l0LWZsZXgtd3JhcDogd3JhcDtcbiAgICAtbXMtZmxleC13cmFwOiB3cmFwO1xuICAgIGZsZXgtd3JhcDogd3JhcDtcbiAgfVxuICAubC1ncmlkLWZvb3RlciAuZ3JpZC1pdGVtLTEge1xuICAgIHdpZHRoOiBjYWxjKCgxMDAlIC0gMzBweCAqIDIpIC8gMik7XG4gIH1cbn1cblxuQG1lZGlhIChtaW4td2lkdGg6IDY2LjY2NjY3ZW0pIHtcbiAgLmwtZ3JpZC1mb290ZXIge1xuICAgIC13ZWJraXQtZmxleC13cmFwOiBub3dyYXA7XG4gICAgLW1zLWZsZXgtd3JhcDogbm93cmFwO1xuICAgIGZsZXgtd3JhcDogbm93cmFwO1xuICB9XG4gIC5sLWdyaWQtZm9vdGVyIC5ncmlkLWl0ZW0tMSB7XG4gICAgd2lkdGg6IGNhbGMoKDEwMCUgLSAzMHB4ICogNCkgLyA0KTtcbiAgfVxufVxuXG4ubC1ncmlkLXByaW9yaXR5IC5ncmlkLWl0ZW0tMSB7XG4gIGZvbnQtZmFtaWx5OiBcIkJlYmFzIE5ldWVcIiwgXCJIZWx2ZXRpY2EgTmV1ZVwiLCBIZWx2ZXRpY2EsIEFyaWFsLCBzYW5zLXNlcmlmO1xuICBmb250LXNpemU6IDIuODc1cmVtO1xuICBsaW5lLWhlaWdodDogMC45NTY1MjtcbiAgd2lkdGg6IGNhbGMoKDEwMCUgLSAzMHB4ICogMSkgLyAxKTtcbn1cblxuLmwtZ3JpZC1wcmlvcml0eSAuZ3JpZC1pdGVtLTIge1xuICB3aWR0aDogY2FsYygoMTAwJSAtIDMwcHggKiAxKSAvIDEpO1xufVxuXG4ubC1ncmlkLXByaW9yaXR5IC5ncmlkLWl0ZW0tMyB7XG4gIHdpZHRoOiBjYWxjKCgxMDAlIC0gMzBweCAqIDEpIC8gMSk7XG59XG5cbi5sLWdyaWQtcHJpb3JpdHkgLmdyaWQtaXRlbS00IHtcbiAgd2lkdGg6IGNhbGMoKDEwMCUgLSAzMHB4ICogMSkgLyAxKTtcbn1cblxuQG1lZGlhIChtaW4td2lkdGg6IDUzLjMzMzMzZW0pIHtcbiAgLmwtZ3JpZC1wcmlvcml0eSB7XG4gICAgZGlzcGxheTogLXdlYmtpdC1ib3g7XG4gICAgZGlzcGxheTogLW1vei1ib3g7XG4gICAgZGlzcGxheTogLW1zLWZsZXhib3g7XG4gICAgZGlzcGxheTogLXdlYmtpdC1mbGV4O1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gIH1cbiAgLmwtZ3JpZC1wcmlvcml0eSAuZ3JpZC1pdGVtLTEge1xuICAgIHdpZHRoOiBjYWxjKCgxMDAlIC0gMzBweCAqIDQpIC8gNCk7XG4gIH1cbiAgLmwtZ3JpZC1wcmlvcml0eSAuZ3JpZC1pdGVtLTIge1xuICAgIHdpZHRoOiBjYWxjKCgxMDAlIC0gMzBweCAqIDEuNzE0Mjg1NzE0MykgLyAxLjcxNDI4NTcxNDMpO1xuICB9XG4gIC5sLWdyaWQtcHJpb3JpdHkgLmdyaWQtaXRlbS0zIHtcbiAgICB3aWR0aDogY2FsYygoMTAwJSAtIDMwcHggKiA2KSAvIDYpO1xuICB9XG4gIC5sLWdyaWQtcHJpb3JpdHkgLmdyaWQtaXRlbS00IHtcbiAgICB3aWR0aDogY2FsYygoMTAwJSAtIDMwcHggKiAxLjMzMzMzMzMzMzMpIC8gMS4zMzMzMzMzMzMzKTtcbiAgfVxufVxuXG5AbWVkaWEgKG1pbi13aWR0aDogNjYuNjY2NjdlbSkge1xuICAubC1ncmlkLXByaW9yaXR5IHtcbiAgICBkaXNwbGF5OiAtd2Via2l0LWJveDtcbiAgICBkaXNwbGF5OiAtbW96LWJveDtcbiAgICBkaXNwbGF5OiAtbXMtZmxleGJveDtcbiAgICBkaXNwbGF5OiAtd2Via2l0LWZsZXg7XG4gICAgZGlzcGxheTogZmxleDtcbiAgfVxuICAubC1ncmlkLXByaW9yaXR5IC5ncmlkLWl0ZW0tMSB7XG4gICAgbWFyZ2luLWxlZnQ6IGNhbGMoMTAwJSAvIDEyICsgMTVweCk7XG4gICAgd2lkdGg6IGNhbGMoKDEwMCUgLSAzMHB4ICogNikgLyA2KTtcbiAgfVxuICAubC1ncmlkLXByaW9yaXR5IC5ncmlkLWl0ZW0tMiB7XG4gICAgd2lkdGg6IGNhbGMoKDEwMCUgLSAzMHB4ICogMS43MTQyODU3MTQzKSAvIDEuNzE0Mjg1NzE0Myk7XG4gIH1cbiAgLmwtZ3JpZC1wcmlvcml0eSAuZ3JpZC1pdGVtLTMge1xuICAgIHdpZHRoOiBjYWxjKCgxMDAlIC0gMzBweCAqIDYpIC8gNik7XG4gIH1cbiAgLmwtZ3JpZC1wcmlvcml0eSAuZ3JpZC1pdGVtLTQge1xuICAgIHdpZHRoOiBjYWxjKCgxMDAlIC0gMzBweCAqIDEuNSkgLyAxLjUpO1xuICB9XG59XG5cbi5sLWdyaWQtcHJpb3JpdGllcy1oZWFkZXIgLmdyaWQtaXRlbS0xIHtcbiAgd2lkdGg6IGNhbGMoKDEwMCUgLSAzMHB4ICogMSkgLyAxKTtcbn1cblxuQG1lZGlhIChtaW4td2lkdGg6IDQyLjY2NjY3ZW0pIHtcbiAgLmwtZ3JpZC1wcmlvcml0aWVzLWhlYWRlciB7XG4gICAgZGlzcGxheTogLXdlYmtpdC1ib3g7XG4gICAgZGlzcGxheTogLW1vei1ib3g7XG4gICAgZGlzcGxheTogLW1zLWZsZXhib3g7XG4gICAgZGlzcGxheTogLXdlYmtpdC1mbGV4O1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gIH1cbn1cblxuQG1lZGlhIChtaW4td2lkdGg6IDY2LjY2NjY3ZW0pIHtcbiAgLmwtZ3JpZC1wcmlvcml0aWVzLWhlYWRlciB7XG4gICAgLXdlYmtpdC1mbGV4LXdyYXA6IG5vd3JhcDtcbiAgICAtbXMtZmxleC13cmFwOiBub3dyYXA7XG4gICAgZmxleC13cmFwOiBub3dyYXA7XG4gIH1cbiAgLmwtZ3JpZC1wcmlvcml0aWVzLWhlYWRlciAuZ3JpZC1pdGVtLTEge1xuICAgIG1hcmdpbi1sZWZ0OiBjYWxjKDEwMCUgLyAxMiArIDE1cHgpO1xuICAgIHdpZHRoOiBjYWxjKCgxMDAlIC0gMzBweCAqIDEuMikgLyAxLjIpO1xuICB9XG59XG5cbi5sLWdyaWQtcHJpb3JpdHktZG93biB7XG4gIC13ZWJraXQtZmxleC13cmFwOiB3cmFwO1xuICAtbXMtZmxleC13cmFwOiB3cmFwO1xuICBmbGV4LXdyYXA6IHdyYXA7XG59XG5cbi5sLWdyaWQtcHJpb3JpdHktZG93biAuZ3JpZC1pdGVtLTEge1xuICB3aWR0aDogY2FsYygoMTAwJSAtIDMwcHggKiAxKSAvIDEpO1xufVxuXG4ubC1ncmlkLXByaW9yaXR5LWRvd24gLmdyaWQtaXRlbS0yIHtcbiAgd2lkdGg6IGNhbGMoKDEwMCUgLSAzMHB4ICogMSkgLyAxKTtcbn1cblxuQG1lZGlhIChtaW4td2lkdGg6IDQyLjY2NjY3ZW0pIHtcbiAgLmwtZ3JpZC1wcmlvcml0eS1kb3duIHtcbiAgICBkaXNwbGF5OiAtd2Via2l0LWJveDtcbiAgICBkaXNwbGF5OiAtbW96LWJveDtcbiAgICBkaXNwbGF5OiAtbXMtZmxleGJveDtcbiAgICBkaXNwbGF5OiAtd2Via2l0LWZsZXg7XG4gICAgZGlzcGxheTogZmxleDtcbiAgfVxufVxuXG5AbWVkaWEgKG1pbi13aWR0aDogNTMuMzMzMzNlbSkge1xuICAubC1ncmlkLXByaW9yaXR5LWRvd24ge1xuICAgIC13ZWJraXQtZmxleC13cmFwOiBub3dyYXA7XG4gICAgLW1zLWZsZXgtd3JhcDogbm93cmFwO1xuICAgIGZsZXgtd3JhcDogbm93cmFwO1xuICB9XG4gIC5sLWdyaWQtcHJpb3JpdHktZG93biAuZ3JpZC1pdGVtLTEge1xuICAgIHdpZHRoOiBjYWxjKCgxMDAlIC0gMzBweCAqIDQpIC8gNCk7XG4gIH1cbiAgLmwtZ3JpZC1wcmlvcml0eS1kb3duIC5ncmlkLWl0ZW0tMiB7XG4gICAgd2lkdGg6IGNhbGMoKDEwMCUgLSAzMHB4ICogMS41KSAvIDEuNSk7XG4gIH1cbn1cblxuLmwtZ3JpZC1jZW8taW50cm8gLmdyaWQtaXRlbS0xIHtcbiAgd2lkdGg6IGNhbGMoKDEwMCUgLSAzMHB4ICogMSkgLyAxKTtcbn1cblxuQG1lZGlhIChtaW4td2lkdGg6IDUzLjMzMzMzZW0pIHtcbiAgLmwtZ3JpZC1jZW8taW50cm8ge1xuICAgIC13ZWJraXQtZmxleC13cmFwOiBub3dyYXA7XG4gICAgLW1zLWZsZXgtd3JhcDogbm93cmFwO1xuICAgIGZsZXgtd3JhcDogbm93cmFwO1xuICB9XG4gIC5sLWdyaWQtY2VvLWludHJvIC5ncmlkLWl0ZW0tMSB7XG4gICAgbWFyZ2luLWxlZnQ6IGNhbGMoKDEwMCUgLyAxMikgKiAxICsgMTVweCk7XG4gICAgd2lkdGg6IGNhbGMoKDEwMCUgLSAzMHB4ICogMS4yKSAvIDEuMik7XG4gIH1cbn1cblxuLmwtZ3JpZC1jb3VudCAuZ3JpZC1pdGVtLTEge1xuICB3aWR0aDogY2FsYygoMTAwJSAtIDMwcHggKiAxKSAvIDEpO1xufVxuXG4ubC1ncmlkLWNvdW50IC5ncmlkLWl0ZW0tMiB7XG4gIHdpZHRoOiBjYWxjKCgxMDAlIC0gMzBweCAqIDEpIC8gMSk7XG59XG5cbkBtZWRpYSAobWluLXdpZHRoOiA0Mi42NjY2N2VtKSB7XG4gIC5sLWdyaWQtY291bnQge1xuICAgIGRpc3BsYXk6IC13ZWJraXQtYm94O1xuICAgIGRpc3BsYXk6IC1tb3otYm94O1xuICAgIGRpc3BsYXk6IC1tcy1mbGV4Ym94O1xuICAgIGRpc3BsYXk6IC13ZWJraXQtZmxleDtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICB9XG4gIC5sLWdyaWQtY291bnQgLmdyaWQtaXRlbS0xIHtcbiAgICB3aWR0aDogY2FsYygoMTAwJSAtIDMwcHggKiAxKSAvIDEpO1xuICB9XG59XG5cbkBtZWRpYSAobWluLXdpZHRoOiA1My4zMzMzM2VtKSB7XG4gIC5sLWdyaWQtY291bnQge1xuICAgIC13ZWJraXQtZmxleC13cmFwOiBub3dyYXA7XG4gICAgLW1zLWZsZXgtd3JhcDogbm93cmFwO1xuICAgIGZsZXgtd3JhcDogbm93cmFwO1xuICB9XG4gIC5sLWdyaWQtY291bnQgLmdyaWQtaXRlbS0xIHtcbiAgICB3aWR0aDogY2FsYygoMTAwJSAtIDMwcHggKiAzKSAvIDMpO1xuICB9XG59XG5cbi5sLWdyaWQtc3RyYXRlZ3ktaW50cm8gLmdyaWQtaXRlbS0xIHtcbiAgd2lkdGg6IGNhbGMoKDEwMCUgLSAzMHB4ICogMSkgLyAxKTtcbn1cblxuQG1lZGlhIChtaW4td2lkdGg6IDUzLjMzMzMzZW0pIHtcbiAgLmwtZ3JpZC1zdHJhdGVneS1pbnRybyB7XG4gICAgLXdlYmtpdC1mbGV4LXdyYXA6IG5vd3JhcDtcbiAgICAtbXMtZmxleC13cmFwOiBub3dyYXA7XG4gICAgZmxleC13cmFwOiBub3dyYXA7XG4gIH1cbiAgLmwtZ3JpZC1zdHJhdGVneS1pbnRybyAuZ3JpZC1pdGVtLTEge1xuICAgIG1hcmdpbi1sZWZ0OiBjYWxjKDEwMCUgLyAxMiArIDE1cHgpO1xuICAgIHdpZHRoOiBjYWxjKCgxMDAlIC0gMzBweCAqIDEuMikgLyAxLjIpO1xuICB9XG59XG5cbi5sLWdyaWQtcHJpbmNpcGxlcy1pbnRybyAuZ3JpZC1pdGVtLTEge1xuICB3aWR0aDogY2FsYygoMTAwJSAtIDMwcHggKiAxKSAvIDEpO1xufVxuXG4ubC1ncmlkLXByaW5jaXBsZXMtaW50cm8gLmdyaWQtaXRlbS0yIHtcbiAgd2lkdGg6IGNhbGMoKDEwMCUgLSAzMHB4ICogMSkgLyAxKTtcbn1cblxuQG1lZGlhIChtaW4td2lkdGg6IDQyLjY2NjY3ZW0pIHtcbiAgLmwtZ3JpZC1wcmluY2lwbGVzLWludHJvIHtcbiAgICBkaXNwbGF5OiAtd2Via2l0LWJveDtcbiAgICBkaXNwbGF5OiAtbW96LWJveDtcbiAgICBkaXNwbGF5OiAtbXMtZmxleGJveDtcbiAgICBkaXNwbGF5OiAtd2Via2l0LWZsZXg7XG4gICAgZGlzcGxheTogZmxleDtcbiAgfVxufVxuXG5AbWVkaWEgKG1pbi13aWR0aDogNTMuMzMzMzNlbSkge1xuICAubC1ncmlkLXByaW5jaXBsZXMtaW50cm8ge1xuICAgIC13ZWJraXQtZmxleC13cmFwOiBub3dyYXA7XG4gICAgLW1zLWZsZXgtd3JhcDogbm93cmFwO1xuICAgIGZsZXgtd3JhcDogbm93cmFwO1xuICB9XG4gIC5sLWdyaWQtcHJpbmNpcGxlcy1pbnRybyAuZ3JpZC1pdGVtLTIge1xuICAgIHdpZHRoOiBjYWxjKCgxMDAlIC0gMzBweCAqIDMpIC8gMyk7XG4gIH1cbn1cblxuQG1lZGlhIChtaW4td2lkdGg6IDQyLjY2NjY3ZW0pIHtcbiAgLmwtZ3JpZC1zdGFuZGFyZC1oZWFkZXIge1xuICAgIGRpc3BsYXk6IC13ZWJraXQtYm94O1xuICAgIGRpc3BsYXk6IC1tb3otYm94O1xuICAgIGRpc3BsYXk6IC1tcy1mbGV4Ym94O1xuICAgIGRpc3BsYXk6IC13ZWJraXQtZmxleDtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICB9XG59XG5cbkBtZWRpYSAobWluLXdpZHRoOiA1My4zMzMzM2VtKSB7XG4gIC5sLWdyaWQtc3RhbmRhcmQtaGVhZGVyIHtcbiAgICAtd2Via2l0LWZsZXgtd3JhcDogbm93cmFwO1xuICAgIC1tcy1mbGV4LXdyYXA6IG5vd3JhcDtcbiAgICBmbGV4LXdyYXA6IG5vd3JhcDtcbiAgfVxuICAubC1ncmlkLXN0YW5kYXJkLWhlYWRlciAuZ3JpZC1pdGVtLTEge1xuICAgIG1hcmdpbi1sZWZ0OiBjYWxjKDEwMCUgLyAxMiArIDE1cHgpO1xuICAgIHdpZHRoOiBjYWxjKCgxMDAlIC0gMzBweCAqIDEuMzMzMzMzMzMzMykgLyAxLjMzMzMzMzMzMzMpO1xuICB9XG59XG5cbi5sLWdyaWQtc3RhbmRhcmQtdW5kZXItdGhyZWUge1xuICBkaXNwbGF5OiAtd2Via2l0LWJveDtcbiAgZGlzcGxheTogLW1vei1ib3g7XG4gIGRpc3BsYXk6IC1tcy1mbGV4Ym94O1xuICBkaXNwbGF5OiAtd2Via2l0LWZsZXg7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIC13ZWJraXQtZmxleC13cmFwOiB3cmFwO1xuICAtbXMtZmxleC13cmFwOiB3cmFwO1xuICBmbGV4LXdyYXA6IHdyYXA7XG59XG5cbi5sLWdyaWQtc3RhbmRhcmQtdW5kZXItdGhyZWUgLmdyaWQtaXRlbS00IHtcbiAgd2lkdGg6IGNhbGMoKDEwMCUgLSAzMHB4ICogMSkgLyAxKTtcbn1cblxuQG1lZGlhIChtaW4td2lkdGg6IDY2LjY2NjY3ZW0pIHtcbiAgLmwtZ3JpZC1zdGFuZGFyZC11bmRlci10aHJlZSB7XG4gICAgLXdlYmtpdC1mbGV4LXdyYXA6IHdyYXA7XG4gICAgLW1zLWZsZXgtd3JhcDogd3JhcDtcbiAgICBmbGV4LXdyYXA6IHdyYXA7XG4gIH1cbiAgLmwtZ3JpZC1zdGFuZGFyZC11bmRlci10aHJlZSAuZ3JpZC1pdGVtLTQge1xuICAgIHdpZHRoOiBjYWxjKCgxMDAlIC0gMzBweCAqIDMpIC8gMyk7XG4gIH1cbn1cblxuLmwtZ3JpZC1zdGFuZGFyZC11bmRlciB7XG4gIC13ZWJraXQtZmxleC13cmFwOiB3cmFwO1xuICAtbXMtZmxleC13cmFwOiB3cmFwO1xuICBmbGV4LXdyYXA6IHdyYXA7XG59XG5cbi5sLWdyaWQtc3RhbmRhcmQtdW5kZXIgLmdyaWQtaXRlbS0xIHtcbiAgd2lkdGg6IGNhbGMoKDEwMCUgLSAzMHB4ICogMSkgLyAxKTtcbn1cblxuLmwtZ3JpZC1zdGFuZGFyZC11bmRlciAuZ3JpZC1pdGVtLTIge1xuICB3aWR0aDogY2FsYygoMTAwJSAtIDMwcHggKiAxKSAvIDEpO1xufVxuXG4ubC1ncmlkLXN0YW5kYXJkLXVuZGVyIC5ncmlkLWl0ZW0tYm94IHtcbiAgd2lkdGg6IGNhbGMoKDEwMCUgLSAzMHB4ICogMSkgLyAxKTtcbn1cblxuLmwtZ3JpZC1zdGFuZGFyZC11bmRlciAuZ3JpZC1pdGVtLWJveC1leHRlbmRlZCB7XG4gIHdpZHRoOiBjYWxjKCgxMDAlIC0gMzBweCAqIDEpIC8gMSk7XG59XG5cbkBtZWRpYSAobWluLXdpZHRoOiA0Mi42NjY2N2VtKSB7XG4gIC5sLWdyaWQtc3RhbmRhcmQtdW5kZXIge1xuICAgIGRpc3BsYXk6IC13ZWJraXQtYm94O1xuICAgIGRpc3BsYXk6IC1tb3otYm94O1xuICAgIGRpc3BsYXk6IC1tcy1mbGV4Ym94O1xuICAgIGRpc3BsYXk6IC13ZWJraXQtZmxleDtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICB9XG59XG5cbkBtZWRpYSAobWluLXdpZHRoOiA1My4zMzMzM2VtKSB7XG4gIC5sLWdyaWQtc3RhbmRhcmQtdW5kZXIge1xuICAgIC13ZWJraXQtZmxleC13cmFwOiB3cmFwO1xuICAgIC1tcy1mbGV4LXdyYXA6IHdyYXA7XG4gICAgZmxleC13cmFwOiB3cmFwO1xuICB9XG4gIC5sLWdyaWQtc3RhbmRhcmQtdW5kZXIgLmdyaWQtaXRlbS0xIHtcbiAgICBtYXJnaW4tbGVmdDogY2FsYygxMDAlIC8gMTIgKyAxNXB4KTtcbiAgICB3aWR0aDogY2FsYygoMTAwJSAtIDMwcHggKiAxLjcxNDI4NTcxNDMpIC8gMS43MTQyODU3MTQzKTtcbiAgfVxuICAubC1ncmlkLXN0YW5kYXJkLXVuZGVyIC5ncmlkLWl0ZW0tMiB7XG4gICAgd2lkdGg6IGNhbGMoKDEwMCUgLSAzMHB4ICogNCkgLyA0KTtcbiAgfVxuICAubC1ncmlkLXN0YW5kYXJkLXVuZGVyIC5ncmlkLWl0ZW0tMyB7XG4gICAgbWFyZ2luLWxlZnQ6IGNhbGMoMTAwJSAvIDEyICsgMTVweCk7XG4gICAgd2lkdGg6IGNhbGMoKDEwMCUgLSAzMHB4ICogMS4yKSAvIDEuMik7XG4gIH1cbn1cblxuQG1lZGlhIChtaW4td2lkdGg6IDY2LjY2NjY3ZW0pIHtcbiAgLmwtZ3JpZC1zdGFuZGFyZC11bmRlciB7XG4gICAgLXdlYmtpdC1mbGV4LXdyYXA6IHdyYXA7XG4gICAgLW1zLWZsZXgtd3JhcDogd3JhcDtcbiAgICBmbGV4LXdyYXA6IHdyYXA7XG4gIH1cbiAgLmwtZ3JpZC1zdGFuZGFyZC11bmRlciAuZ3JpZC1pdGVtLWJveCB7XG4gICAgd2lkdGg6IGNhbGMoKDEwMCUgLSAzMHB4ICogNCkgLyA0KTtcbiAgfVxuICAubC1ncmlkLXN0YW5kYXJkLXVuZGVyIC5ncmlkLWl0ZW0tYm94LWV4dGVuZGVkIHtcbiAgICB3aWR0aDogY2FsYygoMTAwJSAtIDMwcHggKiAzKSAvIDMpO1xuICB9XG4gIC5sLWdyaWQtc3RhbmRhcmQtdW5kZXIgLmdyaWQtaXRlbS1ib3guZmlyc3QsIC5sLWdyaWQtc3RhbmRhcmQtdW5kZXIgLmdyaWQtaXRlbS1ib3gtZXh0ZW5kZWQuZmlyc3Qge1xuICAgIG1hcmdpbi1sZWZ0OiBjYWxjKDEwMCUgLyAxMiArIDE1cHgpO1xuICB9XG59XG5cbi5sLWdyaWQtcGFydG5lcnMge1xuICAtd2Via2l0LWZsZXgtd3JhcDogd3JhcDtcbiAgLW1zLWZsZXgtd3JhcDogd3JhcDtcbiAgZmxleC13cmFwOiB3cmFwO1xufVxuXG4ubC1ncmlkLXBhcnRuZXJzIC5ncmlkLWl0ZW0tMSB7XG4gIHdpZHRoOiBjYWxjKCgxMDAlIC0gMzBweCAqIDEpIC8gMSk7XG59XG5cbi5sLWdyaWQtcGFydG5lcnMgLmdyaWQtaXRlbS0yIHtcbiAgd2lkdGg6IGNhbGMoKDEwMCUgLSAzMHB4ICogMSkgLyAxKTtcbn1cblxuLmwtZ3JpZC1wYXJ0bmVycyAuZ3JpZC1pdGVtLTMge1xuICB3aWR0aDogY2FsYygoMTAwJSAtIDMwcHggKiAxKSAvIDEpO1xufVxuXG5AbWVkaWEgKG1pbi13aWR0aDogNjYuNjY2NjdlbSkge1xuICAubC1ncmlkLXBhcnRuZXJzIHtcbiAgICBkaXNwbGF5OiAtd2Via2l0LWJveDtcbiAgICBkaXNwbGF5OiAtbW96LWJveDtcbiAgICBkaXNwbGF5OiAtbXMtZmxleGJveDtcbiAgICBkaXNwbGF5OiAtd2Via2l0LWZsZXg7XG4gICAgZGlzcGxheTogZmxleDtcbiAgfVxuICAubC1ncmlkLXBhcnRuZXJzIC5ncmlkLWl0ZW0tMSB7XG4gICAgbWFyZ2luLWxlZnQ6IGNhbGMoMTAwJSAvIDEyICsgMTVweCk7XG4gICAgd2lkdGg6IGNhbGMoKDEwMCUgLSAzMHB4ICogMS4yKSAvIDEuMik7XG4gIH1cbiAgLmwtZ3JpZC1wYXJ0bmVycyAuZ3JpZC1pdGVtLTIge1xuICAgIG1hcmdpbi1sZWZ0OiBjYWxjKDEwMCUgLyAxMiArIDE1cHgpO1xuICAgIHdpZHRoOiBjYWxjKCgxMDAlIC0gMzBweCAqIDIuNCkgLyAyLjQpO1xuICB9XG4gIC5sLWdyaWQtcGFydG5lcnMgLmdyaWQtaXRlbS0zIHtcbiAgICB3aWR0aDogY2FsYygoMTAwJSAtIDMwcHggKiAyLjQpIC8gMi40KTtcbiAgfVxufVxuXG4uZGVidWcge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHdpZHRoOiAxMDAlO1xuICBoZWlnaHQ6IDEwMDAwcHg7XG4gIHotaW5kZXg6IC0xMDA7XG59XG5cbi5kZWJ1ZyAuY29sdW1uIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogcmdiYSgyNTUsIDAsIDAsIDAuMSk7XG4gIGhlaWdodDogMTAwMDBweDtcbiAgd2lkdGg6IGNhbGMoKDEwMCUgLSAzMHB4ICogMTIpIC8gMTIpO1xuICBmbG9hdDogbGVmdDtcbiAgbWFyZ2luOiAwIDE1cHg7XG59XG5cbmhlYWRlciB7XG4gIHBvc2l0aW9uOiBmaXhlZDtcbiAgbGVmdDogMDtcbiAgdG9wOiAwO1xuICByaWdodDogMDtcbiAgYmFja2dyb3VuZDogd2hpdGU7XG4gIHotaW5kZXg6IDkwO1xufVxuXG5oZWFkZXI6YWZ0ZXIge1xuICBjb250ZW50OiAnJztcbiAgaGVpZ2h0OiAzcHg7XG4gIGJhY2tncm91bmQ6ICNjYWNhY2E7XG4gIGxlZnQ6IDA7XG4gIHJpZ2h0OiAwO1xuICB3aWR0aDogMDtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICBib3R0b206IDA7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBtYXJnaW46IDAgYXV0bztcbn1cblxuaGVhZGVyIC5ib3gtbG9nbyB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICB3aWR0aDogMjk3cHg7XG4gIGhlaWdodDogMTc1cHg7XG4gIGJvcmRlcjogbm9uZTtcbiAgYm9yZGVyLWJvdHRvbS1sZWZ0LXJhZGl1czogN3B4O1xuICBib3JkZXItYm90dG9tLXJpZ2h0LXJhZGl1czogN3B4O1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjMDA3MUNFO1xuICBmbG9hdDogbGVmdDtcbiAgdHJhbnNpdGlvbi1kdXJhdGlvbjogMC4ycztcbn1cblxuaGVhZGVyIC5zaXRlLWxvZ28ge1xuICB3aWR0aDogMjEzcHg7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgbGVmdDogMDtcbiAgcmlnaHQ6IDA7XG4gIHRvcDogMDtcbiAgYm90dG9tOiAtM3B4O1xuICBtYXJnaW46IGF1dG87XG4gIHRyYW5zaXRpb24tZHVyYXRpb246IDAuMnM7XG59XG5cbkBtZWRpYSAobWluLXdpZHRoOiA2Ni42NjY2N2VtKSB7XG4gIGhlYWRlci5zY3JvbGxlZDphZnRlciB7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgdHJhbnNpdGlvbjogMS41cyB3aWR0aCBjdWJpYy1iZXppZXIoMCwgMCwgMC4yLCAxKTtcbiAgfVxuICBoZWFkZXIuc2Nyb2xsZWQgLnNpdGUtbG9nbyB7XG4gICAgd2lkdGg6IDE2NXB4O1xuICAgIGJvdHRvbTogMDtcbiAgfVxuICBoZWFkZXIuc2Nyb2xsZWQgLmJveC1sb2dvIHtcbiAgICB3aWR0aDogMjQwcHg7XG4gICAgaGVpZ2h0OiAxMjBweDtcbiAgfVxufVxuXG5AbWVkaWEgKG1pbi13aWR0aDogNjYuNjY2NjdlbSkgYW5kIChtYXgtd2lkdGg6IDg4Ljg4ODg5ZW0pIHtcbiAgaGVhZGVyIC5zaXRlLWxvZ28ge1xuICAgIHdpZHRoOiAxOTBweDtcbiAgICBib3R0b206IDA7XG4gIH1cbiAgaGVhZGVyIC5ib3gtbG9nbyB7XG4gICAgd2lkdGg6IDI3NHB4O1xuICAgIGhlaWdodDogMTQ1cHg7XG4gIH1cbn1cblxuQG1lZGlhIChtaW4td2lkdGg6IDUzLjMzMzMzZW0pIGFuZCAobWF4LXdpZHRoOiA2Ni42NjY2N2VtKSB7XG4gIGhlYWRlciAuc2l0ZS1sb2dvIHtcbiAgICB3aWR0aDogMTgwcHg7XG4gICAgYm90dG9tOiAwO1xuICB9XG4gIGhlYWRlciAuYm94LWxvZ28ge1xuICAgIHdpZHRoOiAyNjJweDtcbiAgICBoZWlnaHQ6IDEzNHB4O1xuICB9XG59XG5cbkBtZWRpYSAobWluLXdpZHRoOiA0Mi42NjY2N2VtKSBhbmQgKG1heC13aWR0aDogNTMuMzMzMzNlbSkge1xuICBoZWFkZXIgLnNpdGUtbG9nbyB7XG4gICAgd2lkdGg6IDE2NXB4O1xuICAgIGJvdHRvbTogMDtcbiAgfVxuICBoZWFkZXIgLmJveC1sb2dvIHtcbiAgICB3aWR0aDogMjQwcHg7XG4gICAgaGVpZ2h0OiAxMjBweDtcbiAgfVxufVxuXG5AbWVkaWEgKG1pbi13aWR0aDogMjYuNjY2NjdlbSkgYW5kIChtYXgtd2lkdGg6IDQyLjY2NjY3ZW0pIHtcbiAgaGVhZGVyIC5zaXRlLWxvZ28ge1xuICAgIHdpZHRoOiAxNDVweDtcbiAgICBib3R0b206IDA7XG4gIH1cbiAgaGVhZGVyIC5ib3gtbG9nbyB7XG4gICAgd2lkdGg6IDIyMHB4O1xuICAgIGhlaWdodDogMTEwcHg7XG4gIH1cbn1cblxuQG1lZGlhIChtYXgtd2lkdGg6IDI2LjY2NjY3ZW0pIHtcbiAgaGVhZGVyIC5zaXRlLWxvZ28ge1xuICAgIHdpZHRoOiAxMjhweDtcbiAgICBib3R0b206IDA7XG4gIH1cbiAgaGVhZGVyIC5ib3gtbG9nbyB7XG4gICAgd2lkdGg6IDE5MHB4O1xuICAgIGhlaWdodDogMTAwcHg7XG4gIH1cbn1cblxuQG1lZGlhIChtYXgtd2lkdGg6IDY2LjY2NjY3ZW0pIHtcbiAgaGVhZGVyIHtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIH1cbn1cblxuLm1haW4ge1xuICBwYWRkaW5nLXRvcDogMTc1cHg7XG59XG5cbkBtZWRpYSAobWluLXdpZHRoOiA2Ni42NjY2N2VtKSBhbmQgKG1heC13aWR0aDogODguODg4ODllbSkge1xuICAubWFpbiB7XG4gICAgcGFkZGluZy10b3A6IDE0NXB4O1xuICB9XG4gIGh0bWwge1xuICAgIGZvbnQtc2l6ZTogMTRweDtcbiAgfVxufVxuXG5AbWVkaWEgKG1pbi13aWR0aDogNTMuMzMzMzNlbSkgYW5kIChtYXgtd2lkdGg6IDY2LjY2NjY3ZW0pIHtcbiAgLm1haW4ge1xuICAgIHBhZGRpbmctdG9wOiAxMzRweDtcbiAgfVxuICBodG1sIHtcbiAgICBmb250LXNpemU6IDEycHg7XG4gIH1cbn1cblxuQG1lZGlhIChtaW4td2lkdGg6IDQyLjY2NjY3ZW0pIGFuZCAobWF4LXdpZHRoOiA1My4zMzMzM2VtKSB7XG4gIC5tYWluIHtcbiAgICBwYWRkaW5nLXRvcDogMTIwcHg7XG4gIH1cbiAgaHRtbCB7XG4gICAgZm9udC1zaXplOiAxMHB4O1xuICB9XG59XG5cbkBtZWRpYSAobWluLXdpZHRoOiAyNi42NjY2N2VtKSBhbmQgKG1heC13aWR0aDogNDIuNjY2NjdlbSkge1xuICAubWFpbiB7XG4gICAgcGFkZGluZy10b3A6IDExMHB4O1xuICB9XG4gIGh0bWwge1xuICAgIGZvbnQtc2l6ZTogOHB4O1xuICB9XG59XG5cbkBtZWRpYSAobWF4LXdpZHRoOiAyNi42NjY2N2VtKSB7XG4gIC5tYWluIHtcbiAgICBwYWRkaW5nLXRvcDogMTAwcHg7XG4gIH1cbiAgaHRtbCB7XG4gICAgZm9udC1zaXplOiA2cHg7XG4gIH1cbn1cblxuZm9vdGVyI21haW4tZm9vdGVyIHtcbiAgYmFja2dyb3VuZDogIzU1NTU1NTtcbiAgcGFkZGluZzogMy4zNWVtIDAgMmVtO1xuICBjb2xvcjogd2hpdGU7XG59XG5cbmZvb3RlciNtYWluLWZvb3RlciBhLCBmb290ZXIjbWFpbi1mb290ZXIgYTpob3ZlciwgZm9vdGVyI21haW4tZm9vdGVyIGE6Zm9jdXMsIGZvb3RlciNtYWluLWZvb3RlciBhOnZpc2l0ZWQge1xuICBjb2xvcjogaW5oZXJpdDtcbiAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xufVxuXG5mb290ZXIjbWFpbi1mb290ZXIgdWwge1xuICBtYXJnaW46IDA7XG4gIHBhZGRpbmc6IDA7XG59XG5cbmZvb3RlciNtYWluLWZvb3RlciBpbWcuZm9vdGVyLWxvZ28ge1xuICBtYXJnaW46IDA7XG4gIG1heC13aWR0aDogMjM0cHg7XG59XG5cbmZvb3RlciNtYWluLWZvb3RlciBwIHtcbiAgY29sb3I6IHdoaXRlO1xuICBmb250LXNpemU6IDE2cHg7XG4gIGZvbnQtZmFtaWx5OiBcIlNlbnNpYmlsaXR5XCIsIFwiSGVsdmV0aWNhIE5ldWVcIiwgSGVsdmV0aWNhLCBBcmlhbCwgc2Fucy1zZXJpZjtcbiAgbWFyZ2luOiAyZW0gMCAwO1xufVxuXG5mb290ZXIjbWFpbi1mb290ZXIgcCBiIHtcbiAgZGlzcGxheTogYmxvY2s7XG4gIC1tb3otZm9udC1mZWF0dXJlLXNldHRpbmdzOiBcImxudW1cIjtcbiAgLXdlYmtpdC1mb250LWZlYXR1cmUtc2V0dGluZ3M6IFwibG51bVwiO1xuICBmb250LWZlYXR1cmUtc2V0dGluZ3M6IFwibG51bVwiO1xuICBtYXJnaW4tdG9wOiAxcHg7XG59XG5cbmZvb3RlciNtYWluLWZvb3RlciAuc20ge1xuICBtYXJnaW4tdG9wOiAxLjg2ZW07XG59XG5cbmZvb3RlciNtYWluLWZvb3RlciAuc20gbGkge1xuICBtYXJnaW46IDAgMS41ZW0gMCAwO1xufVxuXG5mb290ZXIjbWFpbi1mb290ZXIgLnNtIGxpLmZiIHtcbiAgbWFyZ2luLXJpZ2h0OiAxLjg0ZW07XG4gIG1hcmdpbi1sZWZ0OiAwLjFlbTtcbn1cblxuZm9vdGVyI21haW4tZm9vdGVyIC5zbSBsaS50dyB7XG4gIG1hcmdpbi10b3A6IDAuMTRlbTtcbiAgbWFyZ2luLXJpZ2h0OiAxLjI1ZW07XG59XG5cbmZvb3RlciNtYWluLWZvb3RlciAuc20gbGkueXQge1xuICBtYXJnaW4tdG9wOiAwLjA1ZW07XG59XG5cbmZvb3RlciNtYWluLWZvb3RlciAuZm9vdGVyLW5hdiB7XG4gIG1hcmdpbjogMS40ZW0gMCAwO1xufVxuXG5mb290ZXIjbWFpbi1mb290ZXIgLmZvb3Rlci1uYXYgbGkge1xuICBsaXN0LXN0eWxlLXR5cGU6IG5vbmU7XG4gIGNvbG9yOiB3aGl0ZTtcbiAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbiAgZm9udC1mYW1pbHk6IFwiU2Vuc2liaWxpdHlcIiwgXCJIZWx2ZXRpY2EgTmV1ZVwiLCBIZWx2ZXRpY2EsIEFyaWFsLCBzYW5zLXNlcmlmO1xuICBmb250LXNpemU6IDI0cHg7XG4gIG1hcmdpbjogMCAwIDEuNjdlbTtcbiAgcGFkZGluZzogMDtcbiAgbGluZS1oZWlnaHQ6IDE7XG59XG5cbmZvb3RlciNtYWluLWZvb3RlciAuZm9vdGVyLW5hdiBsaTpsYXN0LWNoaWxkIHtcbiAgbWFyZ2luLWJvdHRvbTogMDtcbn1cblxuZm9vdGVyI21haW4tZm9vdGVyIC5mb290ZXItbmF2IGxpIHVsID4gbGkge1xuICBtYXJnaW46IDEuMDhlbSAwIDEuMDhlbSAwLjgyZW07XG59XG5cbmZvb3RlciNtYWluLWZvb3RlciAuZm9vdGVyLW5hdiBsaSBhOmhvdmVyIHtcbiAgY29sb3I6ICNiM2IzYjM7XG59XG5cbmZvb3RlciNtYWluLWZvb3RlciAuZm9vdGVyLW5hdiAuaWNvbi1kb3dubG9hZCB7XG4gIHdpZHRoOiAzMnB4O1xuICBoZWlnaHQ6IDI0cHg7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgbWFyZ2luLWxlZnQ6IDEzcHg7XG59XG5cbmZvb3RlciNtYWluLWZvb3RlciAjYm90IHtcbiAgZm9udC1mYW1pbHk6IFwiU2Vuc2liaWxpdHlcIiwgXCJIZWx2ZXRpY2EgTmV1ZVwiLCBIZWx2ZXRpY2EsIEFyaWFsLCBzYW5zLXNlcmlmO1xuICBjb2xvcjogd2hpdGU7XG4gIGZvbnQtc2l6ZTogMTZweDtcbiAgbWFyZ2luLXRvcDogNi40ZW07XG59XG5cbmZvb3RlciNtYWluLWZvb3RlciAjYm90IHVsIHtcbiAgcGFkZGluZzogMDtcbiAgbWFyZ2luOiAwO1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG59XG5cbmZvb3RlciNtYWluLWZvb3RlciAjYm90IHVsIGxpIHtcbiAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBtYXJnaW4tbGVmdDogOXB4O1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIHBhZGRpbmc6IDAgMCAwIDE1cHg7XG59XG5cbmZvb3RlciNtYWluLWZvb3RlciAjYm90IHVsIGxpOmJlZm9yZSB7XG4gIGNvbnRlbnQ6ICcnO1xuICBiYWNrZ3JvdW5kOiB3aGl0ZTtcbiAgd2lkdGg6IDJweDtcbiAgaGVpZ2h0OiAxNHB4O1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHRvcDogMDtcbiAgbGVmdDogMDtcbiAgYm90dG9tOiAwO1xuICBtYXJnaW46IGF1dG87XG59XG5cbmZvb3RlciNtYWluLWZvb3RlciAjYm90IHVsIGxpIGE6aG92ZXIge1xuICBjb2xvcjogI2IzYjNiMztcbn1cblxuZm9vdGVyI21haW4tZm9vdGVyICNib3QgcCB7XG4gIGZvbnQtc2l6ZTogaW5oZXJpdDtcbn1cblxuZm9vdGVyI21haW4tZm9vdGVyICNiYWNrLXRvLXRvcCB7XG4gIHBvc2l0aW9uOiBmaXhlZDtcbiAgei1pbmRleDogMTAwO1xuICByaWdodDogMy4xMjVyZW07XG4gIGJvdHRvbTogMy4xMjVyZW07XG4gIHdpZHRoOiA4MHB4O1xuICBoZWlnaHQ6IDgwcHg7XG4gIGJvcmRlci1yYWRpdXM6IDEwMCU7XG4gIG9wYWNpdHk6IDA7XG4gIHRyYW5zaXRpb246IDAuMnMgb3BhY2l0eTtcbn1cblxuZm9vdGVyI21haW4tZm9vdGVyICNiYWNrLXRvLXRvcC5hY3RpdmUge1xuICBvcGFjaXR5OiAxO1xuICB0cmFuc2l0aW9uOiAwLjNzIG9wYWNpdHkgMC41cztcbn1cblxuZm9vdGVyI21haW4tZm9vdGVyICNiYWNrLXRvLXRvcCBpbWcge1xuICBib3JkZXItcmFkaXVzOiAxMDAlO1xuICBtYXgtd2lkdGg6IDEwMCU7XG4gIGJveC1zaGFkb3c6IDAgMCAwIDJweCByZ2JhKDQ1LCA0NSwgNDUsIDAuMSk7XG4gIHRyYW5zaXRpb246IDAuMTVzIGJveC1zaGFkb3c7XG59XG5cbmZvb3RlciNtYWluLWZvb3RlciAjYmFjay10by10b3AgaW1nOmhvdmVyIHtcbiAgYm94LXNoYWRvdzogMCAwIDAgNnB4IHJnYmEoNDUsIDQ1LCA0NSwgMC4xKTtcbiAgdHJhbnNpdGlvbjogMC40cyBib3gtc2hhZG93O1xuICBjdXJzb3I6IHBvaW50ZXI7XG59XG5cbkBtZWRpYSAobWF4LXdpZHRoOiAxNzAwcHgpIGFuZCAobWluLXdpZHRoOiAxNDIycHgpIHtcbiAgZm9vdGVyI21haW4tZm9vdGVyIHtcbiAgICBmb250LXNpemU6IDE2cHg7XG4gIH1cbiAgZm9vdGVyI21haW4tZm9vdGVyIC5mb290ZXItbmF2IGxpIHtcbiAgICBmb250LXNpemU6IDE5cHg7XG4gIH1cbiAgZm9vdGVyI21haW4tZm9vdGVyIC5mb290ZXItbmF2IC5pY29uLWRvd25sb2FkIHtcbiAgICB3aWR0aDogMjJweDtcbiAgICBoZWlnaHQ6IDE4cHg7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIG1hcmdpbi1sZWZ0OiA5cHg7XG4gIH1cbn1cblxuQG1lZGlhIChtaW4td2lkdGg6IDY2LjY2NjY3ZW0pIGFuZCAobWF4LXdpZHRoOiA4OC44ODg4OWVtKSB7XG4gIGZvb3RlciNtYWluLWZvb3RlciB7XG4gICAgZm9udC1zaXplOiAxNHB4O1xuICB9XG4gIGZvb3RlciNtYWluLWZvb3RlciAuZm9vdGVyLW5hdiBsaSB7XG4gICAgZm9udC1zaXplOiAxNXB4O1xuICB9XG4gIGZvb3RlciNtYWluLWZvb3RlciAuZm9vdGVyLW5hdiAuaWNvbi1kb3dubG9hZCB7XG4gICAgd2lkdGg6IDIwcHg7XG4gICAgaGVpZ2h0OiAxNnB4O1xuICAgIG1hcmdpbi1sZWZ0OiA2cHg7XG4gIH1cbiAgZm9vdGVyI21haW4tZm9vdGVyIHAge1xuICAgIGZvbnQtc2l6ZTogMTVweDtcbiAgfVxuICBmb290ZXIjbWFpbi1mb290ZXIgaW1nLmZvb3Rlci1sb2dvIHtcbiAgICBtYXgtd2lkdGg6IDIxNXB4O1xuICB9XG4gIGZvb3RlciNtYWluLWZvb3RlciAjYm90IHtcbiAgICBmb250LXNpemU6IDE0cHg7XG4gIH1cbn1cblxuQG1lZGlhIChtaW4td2lkdGg6IDUzLjMzMzMzZW0pIGFuZCAobWF4LXdpZHRoOiA2Ni42NjY2N2VtKSB7XG4gIGZvb3RlciNtYWluLWZvb3RlciAuZm9vdGVyLW5hdiBsaSB7XG4gICAgZm9udC1zaXplOiAxOHB4O1xuICB9XG4gIGZvb3RlciNtYWluLWZvb3RlciAuZm9vdGVyLW5hdiAuaWNvbi1kb3dubG9hZCB7XG4gICAgd2lkdGg6IDIwcHg7XG4gICAgaGVpZ2h0OiAxOHB4O1xuICAgIG1hcmdpbi1sZWZ0OiAxcHg7XG4gICAgbWFyZ2luLWJvdHRvbTogLTNweDtcbiAgfVxuICBmb290ZXIjbWFpbi1mb290ZXIgcCB7XG4gICAgZm9udC1zaXplOiAxNnB4O1xuICB9XG4gIGZvb3RlciNtYWluLWZvb3RlciBpbWcuZm9vdGVyLWxvZ28ge1xuICAgIG1heC13aWR0aDogMjE1cHg7XG4gIH1cbiAgZm9vdGVyI21haW4tZm9vdGVyICNib3Qge1xuICAgIGZvbnQtc2l6ZTogMTZweDtcbiAgfVxufVxuXG5AbWVkaWEgKG1pbi13aWR0aDogNDIuNjY2NjdlbSkgYW5kIChtYXgtd2lkdGg6IDUzLjMzMzMzZW0pIHtcbiAgZm9vdGVyI21haW4tZm9vdGVyIC5mb290ZXItbmF2IGxpIHtcbiAgICBmb250LXNpemU6IDE2cHg7XG4gIH1cbiAgZm9vdGVyI21haW4tZm9vdGVyIHAge1xuICAgIGZvbnQtc2l6ZTogMTVweDtcbiAgfVxuICBmb290ZXIjbWFpbi1mb290ZXIgaW1nLmZvb3Rlci1sb2dvIHtcbiAgICBtYXgtd2lkdGg6IDE4NXB4O1xuICB9XG4gIGZvb3RlciNtYWluLWZvb3RlciAjYm90IHtcbiAgICBmb250LXNpemU6IDE0cHg7XG4gIH1cbn1cblxuQG1lZGlhIChtaW4td2lkdGg6IDI2LjY2NjY3ZW0pIGFuZCAobWF4LXdpZHRoOiA0Mi42NjY2N2VtKSB7XG4gIGZvb3RlciNtYWluLWZvb3RlciAuZm9vdGVyLW5hdiBsaSB7XG4gICAgZm9udC1zaXplOiAxN3B4O1xuICB9XG4gIGZvb3RlciNtYWluLWZvb3RlciBwIHtcbiAgICBmb250LXNpemU6IDE2cHg7XG4gIH1cbiAgZm9vdGVyI21haW4tZm9vdGVyIGltZy5mb290ZXItbG9nbyB7XG4gICAgbWF4LXdpZHRoOiAyMDBweDtcbiAgfVxuICBmb290ZXIjbWFpbi1mb290ZXIgI2JvdCB7XG4gICAgZm9udC1zaXplOiAxNHB4O1xuICB9XG4gIGZvb3RlciNtYWluLWZvb3RlciAuZ3JpZC1pdGVtIHtcbiAgICBtYXJnaW4tYm90dG9tOiAzZW07XG4gIH1cbiAgZm9vdGVyI21haW4tZm9vdGVyIC5ncmlkLWl0ZW06bGFzdC1jaGlsZCB7XG4gICAgbWFyZ2luLWJvdHRvbTogMDtcbiAgfVxufVxuXG5AbWVkaWEgKG1heC13aWR0aDogMjYuNjY2NjdlbSkge1xuICBmb290ZXIjbWFpbi1mb290ZXIgLmZvb3Rlci1uYXYgbGkge1xuICAgIGZvbnQtc2l6ZTogMTZweDtcbiAgfVxuICBmb290ZXIjbWFpbi1mb290ZXIgcCB7XG4gICAgZm9udC1zaXplOiAxNXB4O1xuICB9XG4gIGZvb3RlciNtYWluLWZvb3RlciBpbWcuZm9vdGVyLWxvZ28ge1xuICAgIG1heC13aWR0aDogMTg1cHg7XG4gIH1cbiAgZm9vdGVyI21haW4tZm9vdGVyICNib3Qge1xuICAgIGZvbnQtc2l6ZTogMTJweDtcbiAgfVxuICBmb290ZXIjbWFpbi1mb290ZXIgLmdyaWQtaXRlbSB7XG4gICAgbWFyZ2luLWJvdHRvbTogMi41ZW07XG4gIH1cbiAgZm9vdGVyI21haW4tZm9vdGVyIC5ncmlkLWl0ZW06bGFzdC1jaGlsZCB7XG4gICAgbWFyZ2luLWJvdHRvbTogMDtcbiAgfVxuICBmb290ZXIjbWFpbi1mb290ZXIgI2JvdCB1bCB7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gIH1cbiAgZm9vdGVyI21haW4tZm9vdGVyICNib3QgdWwgbGkge1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIHBhZGRpbmc6IDA7XG4gICAgbWFyZ2luOiA4cHggMCAwO1xuICB9XG4gIGZvb3RlciNtYWluLWZvb3RlciAjYm90IHVsIGxpOmJlZm9yZSB7XG4gICAgZGlzcGxheTogbm9uZTtcbiAgfVxufVxuXG5AbWVkaWEgKG1heC13aWR0aDogNjYuNjY2NjdlbSkge1xuICBmb290ZXIjbWFpbi1mb290ZXIge1xuICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgfVxuICBmb290ZXIjbWFpbi1mb290ZXIgLnNtIHVsIHtcbiAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIH1cbiAgZm9vdGVyI21haW4tZm9vdGVyIC5zbSB1bCBsaSB7XG4gICAgbWFyZ2luLXJpZ2h0OiAxZW0gIWltcG9ydGFudDtcbiAgfVxuICBmb290ZXIjbWFpbi1mb290ZXIgdWwgbGk6bGFzdC1jaGlsZCB7XG4gICAgbWFyZ2luLXJpZ2h0OiAwICFpbXBvcnRhbnQ7XG4gIH1cbiAgZm9vdGVyI21haW4tZm9vdGVyIC5mb290ZXItbmF2IC5pY29uLWRvd25sb2FkIHtcbiAgICBwb3NpdGlvbjogc3RhdGljO1xuICAgIHdpZHRoOiAyMHB4O1xuICAgIGhlaWdodDogMThweDtcbiAgICBtYXJnaW4tbGVmdDogMXB4O1xuICAgIG1hcmdpbi1ib3R0b206IC0zcHg7XG4gIH1cbiAgZm9vdGVyI21haW4tZm9vdGVyIC5mb290ZXItbmF2IGxpIHVsID4gbGkge1xuICAgIG1hcmdpbi1sZWZ0OiAwO1xuICB9XG4gIGZvb3RlciNtYWluLWZvb3RlciAjYmFjay10by10b3Age1xuICAgIHdpZHRoOiA2MHB4O1xuICAgIGhlaWdodDogNjBweDtcbiAgfVxufVxuXG5AbWVkaWEgKG1heC13aWR0aDogNDIuNjY2NjdlbSkge1xuICBmb290ZXIjbWFpbi1mb290ZXIgI2JhY2stdG8tdG9wIHtcbiAgICB3aWR0aDogNTBweDtcbiAgICBoZWlnaHQ6IDUwcHg7XG4gIH1cbn1cblxuLmJ0bixcbmEuYnRuIHtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICBwYWRkaW5nOiAxNnB4IDE5cHg7XG4gIGhlaWdodDogYXV0bztcbiAgdmVydGljYWwtYWxpZ246IG1pZGRsZTtcbiAgd2lkdGg6IDEwMCU7XG4gIGJvcmRlcjogMnB4IHNvbGlkICM1NTU1NTU7XG4gIGJhY2tncm91bmQtY29sb3I6ICNGRkY7XG4gIGJhY2tncm91bmQtaW1hZ2U6IG5vbmU7XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbiAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICBmb250LXNpemU6IDE4cHg7XG4gIGZvbnQtbGluZS1oZWlnaHQ6IDEuNTtcbiAgZm9udC1mYW1pbHk6IFwiU2Vuc2liaWxpdHlcIiwgXCJIZWx2ZXRpY2EgTmV1ZVwiLCBIZWx2ZXRpY2EsIEFyaWFsLCBzYW5zLXNlcmlmO1xuICBmb250LXdlaWdodDogYm9sZDtcbiAgY29sb3I6ICM1NTU1NTU7XG4gIHdoaXRlLXNwYWNlOiBuby13cmFwO1xuICBjdXJzb3I6IHBvaW50ZXI7XG4gIHRvdWNoLWFjdGlvbjogbWFuaXB1bGF0aW9uO1xuICB1c2VyLXNlbGVjdDogbm9uZTtcbiAgLXdlYmtpdC10cmFuc2l0aW9uOiBhbGwgMC4ycyBlYXNlLWluLW91dDtcbiAgLW1vei10cmFuc2l0aW9uOiBhbGwgMC4ycyBlYXNlLWluLW91dDtcbiAgLW8tdHJhbnNpdGlvbjogYWxsIDAuMnMgZWFzZS1pbi1vdXQ7XG4gIHRyYW5zaXRpb246IGFsbCAwLjJzIGVhc2UtaW4tb3V0O1xufVxuXG5AbWVkaWEgKG1pbi13aWR0aDogMjYuNjY2NjdlbSkge1xuICAuYnRuLFxuICBhLmJ0biB7XG4gICAgd2lkdGg6IGF1dG87XG4gIH1cbn1cblxuLmJ0bjpob3ZlciwgLmJ0bjphY3RpdmUsXG5hLmJ0bjpob3ZlcixcbmEuYnRuOmFjdGl2ZSB7XG4gIGJhY2tncm91bmQtY29sb3I6ICNjY2NjY2M7XG4gIGNvbG9yOiAjMzMzMzMzO1xufVxuXG4uYnRuLmJ0bi0tZGlzYWJsZWQsXG5hLmJ0bi5idG4tLWRpc2FibGVkIHtcbiAgYm9yZGVyLWNvbG9yOiAjYTZhNmE2O1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZjJmMmYyO1xuICBjb2xvcjogZ3JheTtcbn1cblxuLmJ0bi5idG4tLWRpc2FibGVkOmhvdmVyLCAuYnRuLmJ0bi0tZGlzYWJsZWQ6YWN0aXZlLFxuYS5idG4uYnRuLS1kaXNhYmxlZDpob3ZlcixcbmEuYnRuLmJ0bi0tZGlzYWJsZWQ6YWN0aXZlIHtcbiAgYm9yZGVyLWNvbG9yOiAjYTZhNmE2O1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZjJmMmYyO1xufVxuXG4uYnRuLmJ0bi0tcHJpb3JpdHktMSxcbmEuYnRuLmJ0bi0tcHJpb3JpdHktMSB7XG4gIGJvcmRlci1jb2xvcjogIzAwNUQ5QTtcbiAgYmFja2dyb3VuZC1jb2xvcjogIzAwNUQ5QTtcbiAgY29sb3I6ICNGRkY7XG59XG5cbi5idG4uYnRuLS1wcmlvcml0eS0xOmhvdmVyLCAuYnRuLmJ0bi0tcHJpb3JpdHktMTphY3RpdmUsXG5hLmJ0bi5idG4tLXByaW9yaXR5LTE6aG92ZXIsXG5hLmJ0bi5idG4tLXByaW9yaXR5LTE6YWN0aXZlIHtcbiAgYm9yZGVyLWNvbG9yOiAjMDA3MUNFO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjMDA3MUNFO1xufVxuXG4uYnRuLmJ0bi0tcHJpb3JpdHktMixcbmEuYnRuLmJ0bi0tcHJpb3JpdHktMiB7XG4gIGJvcmRlci1jb2xvcjogI0FDNjEyMDtcbiAgYmFja2dyb3VuZC1jb2xvcjogI0FDNjEyMDtcbiAgY29sb3I6ICNGRkY7XG59XG5cbi5idG4uYnRuLS1wcmlvcml0eS0yOmhvdmVyLCAuYnRuLmJ0bi0tcHJpb3JpdHktMjphY3RpdmUsXG5hLmJ0bi5idG4tLXByaW9yaXR5LTI6aG92ZXIsXG5hLmJ0bi5idG4tLXByaW9yaXR5LTI6YWN0aXZlIHtcbiAgYm9yZGVyLWNvbG9yOiAjRjY4RDJEO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjRjY4RDJEO1xufVxuXG4uYnRuLmJ0bi0tcHJpb3JpdHktMyxcbmEuYnRuLmJ0bi0tcHJpb3JpdHktMyB7XG4gIGJvcmRlci1jb2xvcjogIzVFN0UzRTtcbiAgYmFja2dyb3VuZC1jb2xvcjogIzVFN0UzRTtcbiAgY29sb3I6ICNGRkY7XG59XG5cbi5idG4uYnRuLS1wcmlvcml0eS0zOmhvdmVyLCAuYnRuLmJ0bi0tcHJpb3JpdHktMzphY3RpdmUsXG5hLmJ0bi5idG4tLXByaW9yaXR5LTM6aG92ZXIsXG5hLmJ0bi5idG4tLXByaW9yaXR5LTM6YWN0aXZlIHtcbiAgYm9yZGVyLWNvbG9yOiAjNzM5OTRCO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjNzM5OTRCO1xufVxuXG4uYnRuLmJ0bi0tcHJpb3JpdHktNCxcbmEuYnRuLmJ0bi0tcHJpb3JpdHktNCB7XG4gIGJvcmRlci1jb2xvcjogI0M4MzQ0NjtcbiAgYmFja2dyb3VuZC1jb2xvcjogI0M4MzQ0NjtcbiAgY29sb3I6ICNGRkY7XG59XG5cbi5idG4uYnRuLS1wcmlvcml0eS00OmhvdmVyLCAuYnRuLmJ0bi0tcHJpb3JpdHktNDphY3RpdmUsXG5hLmJ0bi5idG4tLXByaW9yaXR5LTQ6aG92ZXIsXG5hLmJ0bi5idG4tLXByaW9yaXR5LTQ6YWN0aXZlIHtcbiAgYm9yZGVyLWNvbG9yOiAjRTkzQzUxO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjRTkzQzUxO1xufVxuXG4uYnRuLmJ0bi0tcHJpb3JpdHktNSxcbmEuYnRuLmJ0bi0tcHJpb3JpdHktNSB7XG4gIGJvcmRlci1jb2xvcjogIzZBMzI3QztcbiAgYmFja2dyb3VuZC1jb2xvcjogIzZBMzI3QztcbiAgY29sb3I6ICNGRkY7XG59XG5cbi5idG4uYnRuLS1wcmlvcml0eS01OmhvdmVyLCAuYnRuLmJ0bi0tcHJpb3JpdHktNTphY3RpdmUsXG5hLmJ0bi5idG4tLXByaW9yaXR5LTU6aG92ZXIsXG5hLmJ0bi5idG4tLXByaW9yaXR5LTU6YWN0aXZlIHtcbiAgYm9yZGVyLWNvbG9yOiAjODEzRDk3O1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjODEzRDk3O1xufVxuXG4uYnRuLmRlZmF1bHQtaW52ZXJzZSxcbmEuYnRuLmRlZmF1bHQtaW52ZXJzZSB7XG4gIGJvcmRlci1jb2xvcjogI0ZGRjtcbiAgY29sb3I6ICNGRkY7XG4gIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xufVxuXG4uYnRuLmRlZmF1bHQtaW52ZXJzZTpob3ZlciwgLmJ0bi5kZWZhdWx0LWludmVyc2U6YWN0aXZlLFxuYS5idG4uZGVmYXVsdC1pbnZlcnNlOmhvdmVyLFxuYS5idG4uZGVmYXVsdC1pbnZlcnNlOmFjdGl2ZSB7XG4gIGJhY2tncm91bmQtY29sb3I6IHJnYmEoMjU1LCAyNTUsIDI1NSwgMC4yNSk7XG59XG5cbi5idG4gYTp2aXNpdGVkLCAuYnRuIGE6aG92ZXIsIC5idG4gYTpsaW5rLFxuYS5idG4gYTp2aXNpdGVkLFxuYS5idG4gYTpob3ZlcixcbmEuYnRuIGE6bGluayB7XG4gIGNvbG9yOiBpbmhlcml0O1xuICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG59XG5cbi5idG4tLWxnLFxuYS5idG4tLWxnIHtcbiAgZm9udC1zaXplOiAyNXB4O1xufVxuXG4uYnRuLS1zbSxcbmEuYnRuLS1zbSB7XG4gIHBhZGRpbmc6IDE1LjQyODU3cHggMjEuNnB4O1xuICBmb250LXNpemU6IDE2cHg7XG59XG5cbi5idG4tLXhzLFxuYS5idG4tLXhzIHtcbiAgcGFkZGluZzogMTAuOHB4IDE1LjQyODU3cHg7XG4gIGZvbnQtc2l6ZTogMTZweDtcbn1cblxuLmJ0bi0tZG93bmxvYWQ6YmVmb3JlLFxuYS5idG4tLWRvd25sb2FkOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXCI7XG4gIHBhZGRpbmctbGVmdDogMjdweDtcbiAgd2lkdGg6IGF1dG87XG4gIGhlaWdodDogMWVtO1xuICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiBsZWZ0IDNweDtcbiAgYmFja2dyb3VuZC1yZXBlYXQ6IG5vLXJlcGVhdDtcbiAgYmFja2dyb3VuZC1zaXplOiBhdXRvIDFlbTtcbiAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xufVxuXG5AbWVkaWEgKG1pbi13aWR0aDogMjYuNjY2NjdlbSkge1xuICAuYnRuLS1kb3dubG9hZDpiZWZvcmUsXG4gIGEuYnRuLS1kb3dubG9hZDpiZWZvcmUge1xuICAgIHRleHQtYWxpZ246IGNlbnRyZTtcbiAgfVxufVxuXG4uYnRuLS1kb3dubG9hZDphZnRlcixcbmEuYnRuLS1kb3dubG9hZDphZnRlciB7XG4gIGNvbnRlbnQ6IFwiXCI7XG4gIHBhZGRpbmctcmlnaHQ6IDA7XG4gIHdpZHRoOiBhdXRvO1xuICBoZWlnaHQ6IDA7XG4gIGJhY2tncm91bmQtaW1hZ2U6IG5vbmU7XG59XG5cbkBtZWRpYSAobWluLXdpZHRoOiAyNi42NjY2N2VtKSB7XG4gIC5idG4tLWRvd25sb2FkOmFmdGVyLFxuICBhLmJ0bi0tZG93bmxvYWQ6YWZ0ZXIge1xuICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgfVxufVxuXG4uYnRuLS1kb3dubG9hZDpiZWZvcmUsXG5hLmJ0bi0tZG93bmxvYWQ6YmVmb3JlIHtcbiAgYmFja2dyb3VuZC1pbWFnZTogdXJsKC4uL2ltYWdlcy9pY29ucy9pY29uLS1hcnJvdy1kb3duLTAxLnN2Zyk7XG59XG5cbi5idG4tLWRvd25sb2FkOmhvdmVyOmJlZm9yZSxcbi5idG4tLWRvd25sb2FkOmFjdGl2ZTpiZWZvcmUsXG5hLmJ0bi0tZG93bmxvYWQ6aG92ZXI6YmVmb3JlLFxuYS5idG4tLWRvd25sb2FkOmFjdGl2ZTpiZWZvcmUge1xuICBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoLi4vaW1hZ2VzL2ljb25zL2ljb24tLWFycm93LWRvd24tMDEuc3ZnKTtcbn1cblxuLmJ0bi0tZGlzYWJsZWQuYnRuLS1kb3dubG9hZDpiZWZvcmUsXG5hLmJ0bi0tZGlzYWJsZWQuYnRuLS1kb3dubG9hZDpiZWZvcmUge1xuICBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoLi4vaW1hZ2VzL2ljb25zL2ljb24tLWFycm93LWRvd24tMDEtLWRpc2FibGVkLnN2Zyk7XG59XG5cbi5idG4tLWRpc2FibGVkLmJ0bi0tZG93bmxvYWQ6aG92ZXI6YmVmb3JlLFxuLmJ0bi0tZGlzYWJsZWQuYnRuLS1kb3dubG9hZDphY3RpdmU6YmVmb3JlLFxuYS5idG4tLWRpc2FibGVkLmJ0bi0tZG93bmxvYWQ6aG92ZXI6YmVmb3JlLFxuYS5idG4tLWRpc2FibGVkLmJ0bi0tZG93bmxvYWQ6YWN0aXZlOmJlZm9yZSB7XG4gIGJhY2tncm91bmQtaW1hZ2U6IHVybCguLi9pbWFnZXMvaWNvbnMvaWNvbi0tYXJyb3ctZG93bi0wMS0tZGlzYWJsZWQuc3ZnKTtcbn1cblxuQG1lZGlhIChtaW4td2lkdGg6IDY2LjY2NjY3ZW0pIGFuZCAobWF4LXdpZHRoOiA4OC44ODg4OWVtKSB7XG4gIC5idG4sXG4gIGEuYnRuIHtcbiAgICBmb250LXNpemU6IDIycHg7XG4gIH1cbiAgLmJ0bi0tbGcsXG4gIGEuYnRuLS1sZyB7XG4gICAgZm9udC1zaXplOiAyM3B4O1xuICB9XG59XG5cbkBtZWRpYSAobWluLXdpZHRoOiA1My4zMzMzM2VtKSBhbmQgKG1heC13aWR0aDogNjYuNjY2NjdlbSkge1xuICAuYnRuLFxuICBhLmJ0biB7XG4gICAgZm9udC1zaXplOiAyMHB4O1xuICB9XG4gIC5idG4tLWxnLFxuICBhLmJ0bi0tbGcge1xuICAgIGZvbnQtc2l6ZTogMjFweDtcbiAgfVxufVxuXG5AbWVkaWEgKG1pbi13aWR0aDogNDIuNjY2NjdlbSkgYW5kIChtYXgtd2lkdGg6IDUzLjMzMzMzZW0pIHtcbiAgLmJ0bixcbiAgYS5idG4ge1xuICAgIGZvbnQtc2l6ZTogMThweDtcbiAgfVxuICAuYnRuLS1sZyxcbiAgYS5idG4tLWxnIHtcbiAgICBmb250LXNpemU6IDE5cHg7XG4gIH1cbn1cblxuQG1lZGlhIChtaW4td2lkdGg6IDI2LjY2NjY3ZW0pIGFuZCAobWF4LXdpZHRoOiA0Mi42NjY2N2VtKSB7XG4gIC5idG4sXG4gIGEuYnRuIHtcbiAgICBmb250LXNpemU6IDE2cHg7XG4gIH1cbiAgLmJ0bi0tbGcsXG4gIGEuYnRuLS1sZyB7XG4gICAgZm9udC1zaXplOiAxN3B4O1xuICB9XG59XG5cbkBtZWRpYSAobWF4LXdpZHRoOiA0Mi42NjY2N2VtKSB7XG4gIC5idG4sXG4gIGEuYnRuIHtcbiAgICBwYWRkaW5nOiAxNHB4IDE5cHggMTVweDtcbiAgfVxufVxuXG5AbWVkaWEgKG1heC13aWR0aDogMjYuNjY2NjdlbSkge1xuICAuYnRuLFxuICBhLmJ0biB7XG4gICAgZm9udC1zaXplOiAxNHB4O1xuICAgIHBhZGRpbmc6IDZweCAxMXB4O1xuICAgIHdpZHRoOiBhdXRvO1xuICB9XG4gIC5idG4tLWxnLFxuICBhLmJ0bi0tbGcge1xuICAgIGZvbnQtc2l6ZTogMTVweDtcbiAgfVxuICAuYnRuLmJ0bi0tbGcge1xuICAgIHdpZHRoOiAxMDAlO1xuICB9XG59XG5cbmZvcm0ge1xuICBkaXNwbGF5OiBibG9jaztcbn1cblxuZm9ybSBkaXYge1xuICBkaXNwbGF5OiBibG9jaztcbn1cblxuZm9ybSAuZm9ybS1pdGVtLFxuZm9ybSAuZm9ybS1hY3Rpb25zIHtcbiAgbWFyZ2luLWJvdHRvbTogMmVtO1xufVxuXG5mb3JtIGxhYmVsIHtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICBtYXJnaW4tYm90dG9tOiAwLjVlbTtcbiAgbWF4LXdpZHRoOiAxMDAlO1xuICBmb250LXdlaWdodDogNzAwO1xufVxuXG5mb3JtIGlucHV0LFxuZm9ybSB0ZXh0YXJlYSB7XG4gIHBhZGRpbmc6IDZweCAxMnB4O1xuICBib3JkZXI6IDFweCBzb2xpZCAjNTU1NTU1O1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjRkZGO1xuICBiYWNrZ3JvdW5kLWltYWdlOiBub25lO1xuICAtd2Via2l0LWJveC1zaXppbmc6IGJvcmRlci1ib3g7XG4gIC1tb3otYm94LXNpemluZzogYm9yZGVyLWJveDtcbiAgYm94LXNpemluZzogYm9yZGVyLWJveDtcbiAgLXdlYmtpdC10cmFuc2l0aW9uOiBib3JkZXItY29sb3IgMC4ycyBlYXNlLWluLW91dDtcbiAgLW1vei10cmFuc2l0aW9uOiBib3JkZXItY29sb3IgMC4ycyBlYXNlLWluLW91dDtcbiAgLW8tdHJhbnNpdGlvbjogYm9yZGVyLWNvbG9yIDAuMnMgZWFzZS1pbi1vdXQ7XG4gIHRyYW5zaXRpb246IGJvcmRlci1jb2xvciAwLjJzIGVhc2UtaW4tb3V0O1xuICAtd2Via2l0LXRyYW5zaXRpb246IGJveC1zaGFkb3cgMC4ycyBlYXNlLWluLW91dDtcbiAgLW1vei10cmFuc2l0aW9uOiBib3gtc2hhZG93IDAuMnMgZWFzZS1pbi1vdXQ7XG4gIC1vLXRyYW5zaXRpb246IGJveC1zaGFkb3cgMC4ycyBlYXNlLWluLW91dDtcbiAgdHJhbnNpdGlvbjogYm94LXNoYWRvdyAwLjJzIGVhc2UtaW4tb3V0O1xufVxuXG5mb3JtIGlucHV0W3R5cGU9XCJ0ZXh0XCJdLCBmb3JtIGlucHV0W3R5cGU9XCJlbWFpbFwiXSwgZm9ybSBpbnB1dFt0eXBlPVwicGFzc3dvcmRcIl0sXG5mb3JtIHRleHRhcmVhW3R5cGU9XCJ0ZXh0XCJdLFxuZm9ybSB0ZXh0YXJlYVt0eXBlPVwiZW1haWxcIl0sXG5mb3JtIHRleHRhcmVhW3R5cGU9XCJwYXNzd29yZFwiXSB7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICB3aWR0aDogMTAwJTtcbiAgZm9udC1mYW1pbHk6IFwiU2Vuc2liaWxpdHlcIiwgXCJIZWx2ZXRpY2EgTmV1ZVwiLCBIZWx2ZXRpY2EsIEFyaWFsLCBzYW5zLXNlcmlmO1xufVxuXG5mb3JtIGlucHV0OmZvY3VzLFxuZm9ybSB0ZXh0YXJlYTpmb2N1cyB7XG4gIG91dGxpbmU6IDA7XG4gIGJvcmRlci1jb2xvcjogIzAwNzFDRTtcbiAgLXdlYmtpdC1ib3gtc2hhZG93OiAwcHggMHB4IDVweCAjMDA3MUNFO1xuICAtbW96LWJveC1zaGFkb3c6IDBweCAwcHggNXB4ICMwMDcxQ0U7XG4gIGJveC1zaGFkb3c6IDBweCAwcHggNXB4ICMwMDcxQ0U7XG59XG5cbmZvcm0gaW5wdXQge1xuICBoZWlnaHQ6IDIuN2VtO1xufVxuXG5mb3JtIHRleHRhcmVhIHtcbiAgZGlzcGxheTogYmxvY2s7XG4gIHdpZHRoOiAxMDAlO1xufVxuXG5mb3JtIGlucHV0LmNoZWNrZWQge1xuICBib3JkZXItY29sb3I6ICM1RTdFM0U7XG59XG5cbmZvcm0gaW5wdXQuZXJyb3Ige1xuICBib3JkZXItY29sb3I6ICNDODM0NDY7XG59XG5cbmZvcm0gaW5wdXQuY2hlY2tlZCxcbmZvcm0gaW5wdXQuZXJyb3Ige1xuICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiByaWdodCBjZW50ZXI7XG4gIGJhY2tncm91bmQtcmVwZWF0OiBuby1yZXBlYXQ7XG4gIGJhY2tncm91bmQtc2l6ZTogMzBweCBhdXRvO1xuICBwYWRkaW5nLXJpZ2h0OiA0MHB4O1xufVxuXG5mb3JtIGlucHV0LmNoZWNrZWQge1xuICBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoL2ltYWdlcy9pY29ucy9pY29uLS1jaGVja2VkLTAxLnN2Zyk7XG59XG5cbmZvcm0gaW5wdXQuZXJyb3Ige1xuICBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoL2ltYWdlcy9pY29ucy9pY29uLS1jYW5jZWwtMDEuc3ZnKTtcbn1cblxuZm9ybSBsYWJlbC5jb250cm9sIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBkaXNwbGF5OiBibG9jaztcbiAgbWFyZ2luLWJvdHRvbTogMTVweDtcbiAgcGFkZGluZy1sZWZ0OiAzMHB4O1xuICBmb250LXdlaWdodDogNDAwO1xuICBjdXJzb3I6IHBvaW50ZXI7XG4gIC8qIEhvdmVyIGFuZCBmb2N1cyBzdGF0ZXMgKi9cbiAgLyogQ2hlY2tlZCBzdGF0ZSAqL1xuICAvKiBIb3ZlciBzdGF0ZSB3aGlsc3QgY2hlY2tlZCAqL1xuICAvKiBEaXNhYmxlZCBzdGF0ZSAqL1xuICAvKiBTaG93IGNoZWNrIG1hcmsgKi9cbiAgLyogQ2hlY2tib3ggdGljayAqL1xuICAvKiBEaXNhYmxlZCB0aWNrIGNvbG91ciAqL1xuICAvKiBSYWRpbyBidXR0b24gaW5uZXIgY2lyY2xlICovXG4gIC8qIERpc2FibGVkIGNpcmNsZSBjb2xvdXIgKi9cbn1cblxuZm9ybSBsYWJlbC5jb250cm9sIGlucHV0IHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB6LWluZGV4OiAtMTtcbiAgb3BhY2l0eTogMDtcbiAgZmlsdGVyOiBhbHBoYShvcGFjaXR5PTApO1xufVxuXG5mb3JtIGxhYmVsLmNvbnRyb2wgLmNvbnRyb2xfX2luZGljYXRvciB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgdG9wOiAtMXB4O1xuICBsZWZ0OiAwO1xuICB3aWR0aDogMjBweDtcbiAgaGVpZ2h0OiAyMHB4O1xuICBib3JkZXI6IDFweCBzb2xpZCAjNTU1NTU1O1xuICBiYWNrZ3JvdW5kOiAjZjJmMmYyO1xuICAvKiBDaGVjayBtYXJrICovXG59XG5cbmZvcm0gbGFiZWwuY29udHJvbCAuY29udHJvbF9faW5kaWNhdG9yOmFmdGVyIHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICBkaXNwbGF5OiBub25lO1xuICBjb250ZW50OiAnJztcbn1cblxuZm9ybSBsYWJlbC5jb250cm9sLmNvbnRyb2wtLXJhZGlvIC5jb250cm9sX19pbmRpY2F0b3Ige1xuICAtd2Via2l0LWJvcmRlci1yYWRpdXM6IDUwJTtcbiAgLW1vei1ib3JkZXItcmFkaXVzOiA1MCU7XG4gIGJvcmRlci1yYWRpdXM6IDUwJTtcbn1cblxuZm9ybSBsYWJlbC5jb250cm9sOmhvdmVyIGlucHV0IH4gLmNvbnRyb2xfX2luZGljYXRvcixcbmZvcm0gbGFiZWwuY29udHJvbCBpbnB1dDpmb2N1cyB+IC5jb250cm9sX19pbmRpY2F0b3Ige1xuICBiYWNrZ3JvdW5kOiAjZjdmN2Y3O1xufVxuXG5mb3JtIGxhYmVsLmNvbnRyb2wgaW5wdXQ6Y2hlY2tlZCB+IC5jb250cm9sX19pbmRpY2F0b3Ige1xuICBib3JkZXItY29sb3I6ICM1RTdFM0U7XG4gIGJhY2tncm91bmQ6ICM1RTdFM0U7XG59XG5cbmZvcm0gbGFiZWwuY29udHJvbDpob3ZlciBpbnB1dDpub3QoW2Rpc2FibGVkXSk6Y2hlY2tlZCB+IC5jb250cm9sX19pbmRpY2F0b3IsXG5mb3JtIGxhYmVsLmNvbnRyb2wgaW5wdXQ6Y2hlY2tlZDpmb2N1cyB+IC5jb250cm9sX19pbmRpY2F0b3Ige1xuICBib3JkZXItY29sb3I6ICM1MTZkMzY7XG4gIGJhY2tncm91bmQ6ICM1MTZkMzY7XG59XG5cbmZvcm0gbGFiZWwuY29udHJvbCBpbnB1dDpkaXNhYmxlZCB+IC5jb250cm9sX19pbmRpY2F0b3Ige1xuICBwb2ludGVyLWV2ZW50czogbm9uZTtcbiAgYm9yZGVyLWNvbG9yOiAjNTU1NTU1O1xuICBiYWNrZ3JvdW5kOiAjZjJmMmYyO1xuICBvcGFjaXR5OiAwLjU7XG4gIGZpbHRlcjogYWxwaGEob3BhY2l0eT01MCk7XG59XG5cbmZvcm0gbGFiZWwuY29udHJvbCBpbnB1dDpjaGVja2VkIH4gLmNvbnRyb2xfX2luZGljYXRvcjphZnRlciB7XG4gIGRpc3BsYXk6IGJsb2NrO1xufVxuXG5mb3JtIGxhYmVsLmNvbnRyb2wuY29udHJvbC0tY2hlY2tib3ggLmNvbnRyb2xfX2luZGljYXRvcjphZnRlciB7XG4gIHRvcDogNHB4O1xuICBsZWZ0OiA4cHg7XG4gIHdpZHRoOiAzcHg7XG4gIGhlaWdodDogOHB4O1xuICB0cmFuc2Zvcm06IHJvdGF0ZSg0NWRlZyk7XG4gIGJvcmRlcjogc29saWQgI0ZGRjtcbiAgYm9yZGVyLXdpZHRoOiAwIDJweCAycHggMDtcbn1cblxuZm9ybSBsYWJlbC5jb250cm9sLmNvbnRyb2wtLWNoZWNrYm94IGlucHV0OmRpc2FibGVkIH4gLmNvbnRyb2xfX2luZGljYXRvcjphZnRlciB7XG4gIGJvcmRlci1jb2xvcjogIzY2NjY2Njtcbn1cblxuZm9ybSBsYWJlbC5jb250cm9sLmNvbnRyb2wtLXJhZGlvIC5jb250cm9sX19pbmRpY2F0b3I6YWZ0ZXIge1xuICB0b3A6IDZweDtcbiAgbGVmdDogNnB4O1xuICB3aWR0aDogNnB4O1xuICBoZWlnaHQ6IDZweDtcbiAgYmFja2dyb3VuZDogI0ZGRjtcbiAgLXdlYmtpdC1ib3JkZXItcmFkaXVzOiA1MCU7XG4gIC1tb3otYm9yZGVyLXJhZGl1czogNTAlO1xuICBib3JkZXItcmFkaXVzOiA1MCU7XG59XG5cbmZvcm0gbGFiZWwuY29udHJvbC5jb250cm9sLS1yYWRpbyBpbnB1dDpkaXNhYmxlZCB+IC5jb250cm9sX19pbmRpY2F0b3I6YWZ0ZXIge1xuICBiYWNrZ3JvdW5kOiAjNjY2NjY2O1xufVxuXG5mb3JtIC5zZWxlY3Qge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgd2lkdGg6IDEwMCU7XG4gIG1hcmdpbi1ib3R0b206IDE1cHg7XG59XG5cbmZvcm0gLnNlbGVjdCBzZWxlY3Qge1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIHBhZGRpbmc6IDEwcHggMTVweDtcbiAgd2lkdGg6IDEwMCU7XG4gIGJvcmRlcjogMXB4IHNvbGlkICM1NTU1NTU7XG4gIGJhY2tncm91bmQtY29sb3I6ICNGRkY7XG4gIGNvbG9yOiAjNTU1NTU1O1xuICBvdXRsaW5lOiAwO1xuICBjdXJzb3I6IHBvaW50ZXI7XG4gIGFwcGVhcmFuY2U6IG5vbmU7XG4gIC13ZWJraXQtYXBwZWFyYW5jZTogbm9uZTtcbiAgLW1vei1hcHBlYXJhbmNlOiBub25lO1xuICAtd2Via2l0LWJvcmRlci1yYWRpdXM6IDBweDtcbiAgLW1vei1ib3JkZXItcmFkaXVzOiAwcHg7XG4gIGJvcmRlci1yYWRpdXM6IDBweDtcbn1cblxuZm9ybSAuc2VsZWN0IHNlbGVjdDo6LW1zLWV4cGFuZCB7XG4gIGRpc3BsYXk6IG5vbmU7XG59XG5cbmZvcm0gLnNlbGVjdCBzZWxlY3Q6aG92ZXIsXG5mb3JtIC5zZWxlY3Qgc2VsZWN0OmZvY3VzIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2YyZjJmMjtcbn1cblxuZm9ybSAuc2VsZWN0IHNlbGVjdDpkaXNhYmxlZCB7XG4gIHBvaW50ZXItZXZlbnRzOiBub25lO1xuICBvcGFjaXR5OiAwLjU7XG4gIGZpbHRlcjogYWxwaGEob3BhY2l0eT01MCk7XG59XG5cbmZvcm0gLnNlbGVjdCAuc2VsZWN0X19hcnJvdyB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgdG9wOiAxNnB4O1xuICByaWdodDogMTVweDtcbiAgd2lkdGg6IDA7XG4gIGhlaWdodDogMDtcbiAgcG9pbnRlci1ldmVudHM6IG5vbmU7XG4gIGJvcmRlci13aWR0aDogOHB4IDVweCAwIDVweDtcbiAgYm9yZGVyLXN0eWxlOiBzb2xpZDtcbiAgYm9yZGVyLWNvbG9yOiAjNjY2NjY2IHRyYW5zcGFyZW50IHRyYW5zcGFyZW50IHRyYW5zcGFyZW50O1xufVxuXG5mb3JtIC5zZWxlY3Qgc2VsZWN0OmhvdmVyIH4gLnNlbGVjdF9fYXJyb3csXG5mb3JtIC5zZWxlY3Qgc2VsZWN0OmZvY3VzIH4gLnNlbGVjdF9fYXJyb3cge1xuICBib3JkZXItdG9wLWNvbG9yOiAjNTU1NTU1O1xufVxuXG5mb3JtIC5zZWxlY3Qgc2VsZWN0OmRpc2FibGVkIH4gLnNlbGVjdF9fYXJyb3cge1xuICBvcGFjaXR5OiAwLjU7XG4gIGZpbHRlcjogYWxwaGEob3BhY2l0eT01MCk7XG59XG5cbmZvcm0gaW5wdXRbdHlwZT1cInN1Ym1pdFwiXSxcbmZvcm0gaW5wdXRbdHlwZT1cInJlc2V0XCJdIHtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICBtYXJnaW4tYm90dG9tOiAxOHB4O1xuICBwYWRkaW5nOiAxOHB4IDI3cHg7XG4gIGhlaWdodDogYXV0bztcbiAgd2lkdGg6IDEwMCU7XG4gIGJvcmRlcjogMnB4IHNvbGlkICM1NTU1NTU7XG4gIGJhY2tncm91bmQtY29sb3I6ICNGRkY7XG4gIGJhY2tncm91bmQtaW1hZ2U6IG5vbmU7XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbiAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICBmb250LXNpemU6IDE4cHg7XG4gIGZvbnQtbGluZS1oZWlnaHQ6IDEuNTtcbiAgZm9udC1mYW1pbHk6IFwiU2Vuc2liaWxpdHlcIiwgXCJIZWx2ZXRpY2EgTmV1ZVwiLCBIZWx2ZXRpY2EsIEFyaWFsLCBzYW5zLXNlcmlmO1xuICBmb250LXdlaWdodDogYm9sZDtcbiAgd2hpdGUtc3BhY2U6IG5vLXdyYXA7XG4gIGN1cnNvcjogcG9pbnRlcjtcbiAgdG91Y2gtYWN0aW9uOiBtYW5pcHVsYXRpb247XG4gIHVzZXItc2VsZWN0OiBub25lO1xuICAtd2Via2l0LXRyYW5zaXRpb246IGFsbCAwLjJzIGVhc2UtaW4tb3V0O1xuICAtbW96LXRyYW5zaXRpb246IGFsbCAwLjJzIGVhc2UtaW4tb3V0O1xuICAtby10cmFuc2l0aW9uOiBhbGwgMC4ycyBlYXNlLWluLW91dDtcbiAgdHJhbnNpdGlvbjogYWxsIDAuMnMgZWFzZS1pbi1vdXQ7XG59XG5cbkBtZWRpYSAobWluLXdpZHRoOiA0Mi42NjY2N2VtKSB7XG4gIGZvcm0gaW5wdXRbdHlwZT1cInN1Ym1pdFwiXSxcbiAgZm9ybSBpbnB1dFt0eXBlPVwicmVzZXRcIl0ge1xuICAgIHdpZHRoOiBhdXRvO1xuICB9XG59XG5cbmZvcm0gaW5wdXRbdHlwZT1cInN1Ym1pdFwiXSB7XG4gIGJvcmRlci1jb2xvcjogIzVFN0UzRTtcbiAgYmFja2dyb3VuZC1jb2xvcjogIzVFN0UzRTtcbiAgY29sb3I6ICNGRkY7XG59XG5cbmZvcm0gaW5wdXRbdHlwZT1cInN1Ym1pdFwiXTpob3ZlciwgZm9ybSBpbnB1dFt0eXBlPVwic3VibWl0XCJdOmFjdGl2ZSB7XG4gIGJvcmRlci1jb2xvcjogIzQ1NWMyZDtcbiAgYmFja2dyb3VuZC1jb2xvcjogIzQ1NWMyZDtcbn1cblxuZm9ybSBpbnB1dFt0eXBlPVwicmVzZXRcIl0ge1xuICBib3JkZXItY29sb3I6ICM1NTU1NTU7XG4gIGJhY2tncm91bmQtY29sb3I6ICNGRkY7XG4gIGNvbG9yOiAjNTU1NTU1O1xufVxuXG5mb3JtIGlucHV0W3R5cGU9XCJyZXNldFwiXTpob3ZlciwgZm9ybSBpbnB1dFt0eXBlPVwicmVzZXRcIl06YWN0aXZlIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2NjY2NjYztcbiAgY29sb3I6ICMzMzMzMzM7XG59XG5cbnRhYmxlIHtcbiAgZGlzcGxheTogdGFibGU7XG4gIG1hcmdpbi1ib3R0b206IDJlbTtcbiAgd2lkdGg6IDEwMCU7XG4gIG1heC13aWR0aDogMTAwJTtcbiAgYm9yZGVyLXNwYWNpbmc6IDA7XG4gIGJvcmRlci1jb2xsYXBzZTogY29sbGFwc2U7XG4gIGJvcmRlci1jb2xvcjogI2E2YTZhNjtcbiAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gIGZvbnQtc2l6ZTogMThweDtcbiAgZm9udC1mYW1pbHk6IFwiU2Vuc2liaWxpdHlcIiwgXCJIZWx2ZXRpY2EgTmV1ZVwiLCBIZWx2ZXRpY2EsIEFyaWFsLCBzYW5zLXNlcmlmO1xuICBmb250LXdlaWdodDogbm9ybWFsO1xuICBsaW5lLWhlaWdodDogMS41O1xufVxuXG50YWJsZSBjYXB0aW9uIHtcbiAgcGFkZGluZzogOHB4IDA7XG4gIHRleHQtYWxpZ246IGxlZnQ7XG59XG5cbnRhYmxlIHRoZWFkIHtcbiAgZGlzcGxheTogdGFibGUtaGVhZGVyLWdyb3VwO1xuICB2ZXJ0aWNhbC1hbGlnbjogdG9wO1xuICBib3JkZXItY29sb3I6IGluaGVyaXQ7XG59XG5cbnRhYmxlIHRib2R5IHtcbiAgZGlzcGxheTogdGFibGUtcm93LWdyb3VwO1xuICB2ZXJ0aWNhbC1hbGlnbjogdG9wO1xuICBib3JkZXItY29sb3I6IGluaGVyaXQ7XG59XG5cbnRhYmxlIHRyIHtcbiAgZGlzcGxheTogdGFibGUtcm93O1xuICB2ZXJ0aWNhbC1hbGlnbjogaW5oZXJpdDtcbiAgYm9yZGVyLWNvbG9yOiBpbmhlcml0O1xufVxuXG50YWJsZSB0aCB7XG4gIGRpc3BsYXk6IHRhYmxlLWNlbGw7XG4gIHRleHQtYWxpZ246IGxlZnQ7XG4gIGZvbnQtd2VpZ2h0OiBib2xkO1xufVxuXG50YWJsZSB0ZCB7XG4gIGRpc3BsYXk6IHRhYmxlLWNlbGw7XG4gIGJvcmRlcjogMXB4IHNvbGlkICNhNmE2YTY7XG59XG5cbnRhYmxlIHRoZWFkID4gdHIgPiB0aCxcbnRhYmxlIHRib2R5ID4gdHIgPiB0aCxcbnRhYmxlIHRib2R5ID4gdHIgPiB0ZCB7XG4gIHBhZGRpbmc6IDEycHggMTBweDtcbiAgYm9yZGVyOiAxcHggc29saWQgI2E2YTZhNjtcbiAgdmVydGljYWwtYWxpZ246IHRvcDtcbn1cblxudGFibGUgdGhlYWQgPiB0ciA+IHRoIHtcbiAgYm9yZGVyLWJvdHRvbTogMnB4IHNvbGlkICNhNmE2YTY7XG59XG5cbnRhYmxlIHRib2R5ID4gdHI6aG92ZXIsXG50YWJsZSB0Ym9keSA+IHRyOmFjdGl2ZSB7XG4gIGJhY2tncm91bmQtY29sb3I6ICNmZGVhZDg7XG59XG5cbi50YWJsZS0tbm8tYm9yZGVyIHRkIHtcbiAgYm9yZGVyOiBub25lO1xuICBib3JkZXItdG9wOiAxcHggc29saWQgI2E2YTZhNjtcbn1cblxuLnRhYmxlLS1uby1ib3JkZXIgdGJvZHkgPiB0ciA+IHRoLFxuLnRhYmxlLS1uby1ib3JkZXIgdGJvZHkgPiB0ciA+IHRkIHtcbiAgYm9yZGVyOiBub25lO1xuICBib3JkZXItdG9wOiAxcHggc29saWQgI2E2YTZhNjtcbn1cblxuLnRhYmxlLS1uby1ib3JkZXIgdGhlYWQgPiB0ciA+IHRoIHtcbiAgYm9yZGVyOiBub25lO1xuICBib3JkZXItYm90dG9tOiAycHggc29saWQgI2E2YTZhNjtcbn1cblxuLnRhYmxlLS1uby1ib3JkZXIgdGJvZHkgPiB0cjpsYXN0LW9mLXR5cGUge1xuICBib3JkZXItYm90dG9tOiAxcHggc29saWQgI2E2YTZhNjtcbn1cblxudGFibGUudGFibGUtLWludmlzaWJsZSB0aGVhZCB7XG4gIGNvbG9yOiBpbmhlcml0O1xufVxuXG50YWJsZS50YWJsZS0taW52aXNpYmxlIHRkIHtcbiAgYm9yZGVyOiBub25lO1xufVxuXG50YWJsZS50YWJsZS0taW52aXNpYmxlIHRoZWFkID4gdHIgPiB0aCxcbnRhYmxlLnRhYmxlLS1pbnZpc2libGUgdGJvZHkgPiB0ciA+IHRoLFxudGFibGUudGFibGUtLWludmlzaWJsZSB0Ym9keSA+IHRyID4gdGQge1xuICBwYWRkaW5nLWxlZnQ6IDA7XG4gIGJvcmRlcjogbm9uZTtcbn1cblxudGFibGUudGFibGUtLWludmlzaWJsZSB0aGVhZCA+IHRyIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogaW5oZXJpdDtcbn1cblxudGFibGUudGFibGUtLWludmlzaWJsZSB0aGVhZCA+IHRyID4gdGgge1xuICBib3JkZXI6IG5vbmU7XG59XG5cbnRhYmxlLnRhYmxlLS1pbnZpc2libGUgdGJvZHkgPiB0cjpudGgtb2YtdHlwZShldmVuKSB7XG4gIGJhY2tncm91bmQtY29sb3I6IGluaGVyaXQ7XG59XG5cbnRhYmxlLnRhYmxlLS1pbnZpc2libGUgdGJvZHkgPiB0cjpob3ZlcixcbnRhYmxlLnRhYmxlLS1pbnZpc2libGUgdGJvZHkgPiB0cjphY3RpdmUge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZmRlYWQ4O1xufVxuXG50YWJsZS50YWJsZS0tc3RyaXBlcyB0Ym9keSA+IHRyOm50aC1vZi10eXBlKGV2ZW4pIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2YyZjJmMjtcbn1cblxudGFibGUudGFibGUtLXN0cmlwZXMgdGJvZHkgPiB0cjpob3ZlcixcbnRhYmxlLnRhYmxlLS1zdHJpcGVzIHRib2R5ID4gdHI6YWN0aXZlIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2ZkZWFkODtcbn1cblxuLyogSG9yaXpvbnRhbCBzY3JvbGwgKi9cbmRpdi50YWJsZV9zY3JvbGwge1xuICBvdmVyZmxvdy14OiBhdXRvO1xufVxuXG4uYnJlYWRjcnVtYiB7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBvdmVyZmxvdzogaGlkZGVuO1xuICBmb250LXNpemU6IDE2cHg7XG59XG5cbi5icmVhZGNydW1iIHVsIHtcbiAgbWFyZ2luOiAwO1xuICBwYWRkaW5nOiAwO1xuICBsaXN0LXN0eWxlOiBub25lO1xuICBsaXN0LWltYWdlOiBub25lO1xufVxuXG4uYnJlYWRjcnVtYiBsaSB7XG4gIGRpc3BsYXk6IGlubGluZTtcbiAgbWFyZ2luOiAwO1xuICBwYWRkaW5nOiAwO1xuICBwYWRkaW5nLWxlZnQ6IDNweDtcbn1cblxuLmJyZWFkY3J1bWIgYSxcbi5icmVhZGNydW1iIGE6bGluayxcbi5icmVhZGNydW1iIGE6dmlzaXRlZCB7XG4gIHBhZGRpbmctcmlnaHQ6IDVweDtcbiAgY29sb3I6ICM1NTU1NTU7XG4gIC13ZWJraXQtdHJhbnNpdGlvbjogYWxsIDAuMnMgZWFzZS1pbi1vdXQ7XG4gIC1tb3otdHJhbnNpdGlvbjogYWxsIDAuMnMgZWFzZS1pbi1vdXQ7XG4gIC1vLXRyYW5zaXRpb246IGFsbCAwLjJzIGVhc2UtaW4tb3V0O1xuICB0cmFuc2l0aW9uOiBhbGwgMC4ycyBlYXNlLWluLW91dDtcbn1cblxuLmJyZWFkY3J1bWIgYTpmaXJzdC1jaGlsZCxcbi5icmVhZGNydW1iIGE6bGluazpmaXJzdC1jaGlsZCxcbi5icmVhZGNydW1iIGE6dmlzaXRlZDpmaXJzdC1jaGlsZCB7XG4gIHBhZGRpbmctbGVmdDogMDtcbn1cblxuLmJyZWFkY3J1bWIgYTpob3ZlciwgLmJyZWFkY3J1bWIgYTpmb2N1cyxcbi5icmVhZGNydW1iIGE6bGluazpob3Zlcixcbi5icmVhZGNydW1iIGE6bGluazpmb2N1cyxcbi5icmVhZGNydW1iIGE6dmlzaXRlZDpob3Zlcixcbi5icmVhZGNydW1iIGE6dmlzaXRlZDpmb2N1cyB7XG4gIGNvbG9yOiAjNTU1NTU1O1xufVxuXG4uaW1nLXJlc3BvbnNpdmUge1xuICBtYXgtd2lkdGg6IDEwMCU7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBoZWlnaHQ6IGF1dG87XG59XG5cbm1haW4gaW1nIHtcbiAgbWFyZ2luLWJvdHRvbTogMjdweDtcbiAgbWF4LXdpZHRoOiAxMDAlO1xuICBoZWlnaHQ6IGF1dG87XG59XG5cbmZpZ3VyZSB7XG4gIG1hcmdpbjogMDtcbiAgbWFyZ2luLWJvdHRvbTogMjdweDtcbiAgcGFkZGluZzogMCAwIDIwcHg7XG4gIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCAjYTZhNmE2O1xufVxuXG5maWd1cmUgaW1nIHtcbiAgbWFyZ2luLWJvdHRvbTogMDtcbiAgcGFkZGluZy1ib3R0b206IDFlbTtcbn1cblxuZmlnY2FwdGlvbiB7XG4gIGZvbnQtc2l6ZTogMTZweDtcbiAgZm9udC1zdHlsZTogaXRhbGljO1xufVxuXG4udmlkZW8td3JhcHBlciB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgcGFkZGluZy1ib3R0b206IDU2LjI1JTtcbiAgLyogMTY6OSAqL1xuICBwYWRkaW5nLXRvcDogMjVweDtcbiAgaGVpZ2h0OiAwO1xufVxuXG4udmlkZW8td3JhcHBlciBpZnJhbWUge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHRvcDogMDtcbiAgbGVmdDogMDtcbiAgd2lkdGg6IDEwMCU7XG4gIGhlaWdodDogMTAwJTtcbn1cblxuLmhhbWJ1cmdlciB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgcmlnaHQ6IDE2cHg7XG4gIHRvcDogMDtcbiAgYm90dG9tOiAwO1xuICB6LWluZGV4OiA5OTtcbn1cblxuLmhhbWJ1cmdlciAuaGFtYnVyZ2VyLWlubmVyLCAuaGFtYnVyZ2VyIC5oYW1idXJnZXItaW5uZXI6OmJlZm9yZSwgLmhhbWJ1cmdlciAuaGFtYnVyZ2VyLWlubmVyOjphZnRlciB7XG4gIHdpZHRoOiAzN3B4O1xuICBoZWlnaHQ6IDZweDtcbiAgYmFja2dyb3VuZC1jb2xvcjogIzU1NTU1NTtcbn1cblxuLmhhbWJ1cmdlci5pcy1hY3RpdmUge1xuICB0cmFuc2l0aW9uOiAwLjRzIG9wYWNpdHk7XG59XG5cbi5zaWRlLW1lbnUge1xuICBwb3NpdGlvbjogZml4ZWQ7XG4gIHRvcDogMDtcbiAgcmlnaHQ6IDA7XG4gIGJvdHRvbTogMDtcbiAgd2lkdGg6IDEwMCU7XG4gIG1heC13aWR0aDogNDYwcHg7XG4gIHotaW5kZXg6IDEwMTtcbiAgYmFja2dyb3VuZDogI2Y1ZjVmNTtcbiAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKDEwMCUpO1xuICB0cmFuc2l0aW9uOiAwLjVzIHRyYW5zZm9ybSBjdWJpYy1iZXppZXIoMC40LCAwLCAwLjIsIDEpIDAuNXM7XG59XG5cbi5zaWRlLW1lbnUgLm1lbnUtY29udGVudCB7XG4gIHdpZHRoOiAxMDAlO1xuICBmb250LWZhbWlseTogXCJTZW5zaWJpbGl0eVwiLCBcIkhlbHZldGljYSBOZXVlXCIsIEhlbHZldGljYSwgQXJpYWwsIHNhbnMtc2VyaWY7XG4gIHBhZGRpbmc6IDMuNDQ1ZW0gMzBweCAzLjQ0NWVtIDA7XG4gIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG59XG5cbi5zaWRlLW1lbnUgLm1lbnUtY29udGVudCB1bCB7XG4gIG1hcmdpbjogMDtcbiAgcGFkZGluZzogMDtcbiAgbGlzdC1zdHlsZS10eXBlOiBub25lO1xufVxuXG4uc2lkZS1tZW51IC5tZW51LWNvbnRlbnQgYSwgLnNpZGUtbWVudSAubWVudS1jb250ZW50IGE6aG92ZXIsIC5zaWRlLW1lbnUgLm1lbnUtY29udGVudCBhOmZvY3VzLCAuc2lkZS1tZW51IC5tZW51LWNvbnRlbnQgYTp2aXNpdGVkIHtcbiAgY29sb3I6IGluaGVyaXQ7XG4gIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbn1cblxuLnNpZGUtbWVudSAubWVudS1jb250ZW50IC5oYW1idXJnZXIge1xuICBkaXNwbGF5OiBibG9jaztcbiAgcG9zaXRpb246IHN0YXRpYztcbiAgbWFyZ2luLWxlZnQ6IDEuMzZlbTtcbiAgcGFkZGluZzogMC42MWVtO1xuICBmb250LXNpemU6IDE4cHg7XG59XG5cbi5zaWRlLW1lbnUgLm1lbnUtY29udGVudCAubmF2aWdhdGlvbi1hcmVhIHtcbiAgcGFkZGluZzogMS4yZW0gMCAwIDA7XG59XG5cbi5zaWRlLW1lbnUgLm1lbnUtY29udGVudCAubmF2aWdhdGlvbi1hcmVhIGxpIHtcbiAgZm9udC1zaXplOiAyNHB4O1xuICBjb2xvcjogIzU1NTU1NTtcbiAgbGluZS1oZWlnaHQ6IDEuMjtcbiAgbWFyZ2luLWJvdHRvbTogMC4yMWVtO1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIG92ZXJmbG93OiBoaWRkZW47XG4gIHBhZGRpbmc6IDAuNDg1ZW0gMCAwLjQ4NmVtIDEuNmVtO1xufVxuXG4uc2lkZS1tZW51IC5tZW51LWNvbnRlbnQgLm5hdmlnYXRpb24tYXJlYSBsaSBzdHJvbmcge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG59XG5cbi5zaWRlLW1lbnUgLm1lbnUtY29udGVudCAubmF2aWdhdGlvbi1hcmVhIGxpIGEge1xuICBkaXNwbGF5OiBibG9jaztcbiAgcGFkZGluZzogMC40ODVlbSAwIDAuNDg2ZW0gMS42ZW07XG4gIGNvbG9yOiAjNTU1NTU1O1xufVxuXG4uc2lkZS1tZW51IC5tZW51LWNvbnRlbnQgLm5hdmlnYXRpb24tYXJlYSBsaSBhOmhvdmVyIHtcbiAgY29sb3I6ICM4Njg2ODY7XG59XG5cbi5zaWRlLW1lbnUgLm1lbnUtY29udGVudCAubmF2aWdhdGlvbi1hcmVhIGxpLml0ZW0ge1xuICBwYWRkaW5nOiAwO1xufVxuXG4uc2lkZS1tZW51IC5tZW51LWNvbnRlbnQgLm5hdmlnYXRpb24tYXJlYSBsaS5pdGVtOmJlZm9yZSwgLnNpZGUtbWVudSAubWVudS1jb250ZW50IC5uYXZpZ2F0aW9uLWFyZWEgbGkuaXRlbTphZnRlciB7XG4gIGJhY2tncm91bmQ6IHdoaXRlc21va2U7XG4gIGNvbnRlbnQ6ICcnO1xuICB3aWR0aDogMS4xOGVtO1xuICBoZWlnaHQ6IDUxJTtcbiAgdHJhbnNpdGlvbjogMC4xcyBiYWNrZ3JvdW5kIGVhc2Utb3V0O1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIGxlZnQ6IC03cHg7XG59XG5cbi5zaWRlLW1lbnUgLm1lbnUtY29udGVudCAubmF2aWdhdGlvbi1hcmVhIGxpLml0ZW06YmVmb3JlIHtcbiAgdHJhbnNmb3JtOiBza2V3WCgxNWRlZyk7XG4gIHRvcDogMDtcbn1cblxuLnNpZGUtbWVudSAubWVudS1jb250ZW50IC5uYXZpZ2F0aW9uLWFyZWEgbGkuaXRlbTphZnRlciB7XG4gIGJvdHRvbTogMDtcbiAgdHJhbnNmb3JtOiBza2V3WCgtMTVkZWcpO1xufVxuXG4uc2lkZS1tZW51IC5tZW51LWNvbnRlbnQgLm5hdmlnYXRpb24tYXJlYSBsaS5pdGVtLmFjdGl2ZSB7XG4gIGJhY2tncm91bmQ6ICMwMDcxQ0U7XG59XG5cbi5zaWRlLW1lbnUgLm1lbnUtY29udGVudCAubmF2aWdhdGlvbi1hcmVhIGxpLml0ZW0uYWN0aXZlIGEge1xuICBjb2xvcjogI2ZmZjtcbn1cblxuLnNpZGUtbWVudSAubWVudS1jb250ZW50IC5uYXZpZ2F0aW9uLWFyZWEgbGkuaXRlbS5hY3RpdmUgYTpob3ZlciB7XG4gIGNvbG9yOiBnYWluc2Jvcm87XG59XG5cbi5zaWRlLW1lbnUgLm1lbnUtY29udGVudCAubmF2aWdhdGlvbi1hcmVhIGxpLml0ZW0uYWN0aXZlOmJlZm9yZSwgLnNpZGUtbWVudSAubWVudS1jb250ZW50IC5uYXZpZ2F0aW9uLWFyZWEgbGkuaXRlbS5hY3RpdmU6YWZ0ZXIge1xuICBiYWNrZ3JvdW5kOiAjMDA1ZDlhO1xufVxuXG4uc2lkZS1tZW51IC5tZW51LWNvbnRlbnQgLm5hdmlnYXRpb24tYXJlYSBsaS5pdGVtOmhvdmVyOmJlZm9yZSwgLnNpZGUtbWVudSAubWVudS1jb250ZW50IC5uYXZpZ2F0aW9uLWFyZWEgbGkuaXRlbTpob3ZlcjphZnRlciB7XG4gIGJhY2tncm91bmQ6ICMwMDVkOWE7XG4gIHRyYW5zaXRpb246IDAuMzVzIGJhY2tncm91bmQgZWFzZS1vdXQ7XG59XG5cbi5zaWRlLW1lbnUgLm1lbnUtY29udGVudCAubmF2aWdhdGlvbi1hcmVhIGxpOmxhc3QtY2hpbGQge1xuICBtYXJnaW4tYm90dG9tOiAwO1xufVxuXG4uc2lkZS1tZW51IC5tZW51LWNvbnRlbnQgLm5hdmlnYXRpb24tYXJlYSB1bC53aXRoU3ViIHtcbiAgbWFyZ2luOiAwLjI1ZW0gMCAxZW07XG59XG5cbi5zaWRlLW1lbnUgLm1lbnUtY29udGVudCAubmF2aWdhdGlvbi1hcmVhIHVsLndpdGhTdWIgPiBsaTpmaXJzdC1jaGlsZCB7XG4gIG1hcmdpbi1ib3R0b206IDAuMWVtO1xufVxuXG4uc2lkZS1tZW51IC5tZW51LWNvbnRlbnQgLm5hdmlnYXRpb24tYXJlYSB1bC53aXRoU3ViID4gbGkuY2hpbGQge1xuICBtYXJnaW4tYm90dG9tOiAwLjFlbTtcbiAgbWFyZ2luLWxlZnQ6IDEuNmVtO1xuICBwYWRkaW5nLWxlZnQ6IDAuOWVtO1xufVxuXG4uc2lkZS1tZW51IC5tZW51LWNvbnRlbnQgLm5hdmlnYXRpb24tYXJlYSB1bC53aXRoU3ViID4gbGkuY2hpbGQgYSB7XG4gIHBhZGRpbmc6IDAuNDhlbSAwIDAuNDhlbSAwLjdlbTtcbn1cblxuLnNpZGUtbWVudSAuYm90dG9tLWFyZWEge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIG1hcmdpbi10b3A6IDAuM2VtO1xuICBwYWRkaW5nOiAyLjMwZW0gMCAwIDIuMWVtO1xufVxuXG4uc2lkZS1tZW51IC5ib3R0b20tYXJlYTpiZWZvcmUge1xuICBjb250ZW50OiAnJztcbiAgbWF4LXdpZHRoOiAxOS42MTJlbTtcbiAgd2lkdGg6IDEwMCU7XG4gIGhlaWdodDogM3B4O1xuICB0b3A6IDA7XG4gIGJhY2tncm91bmQ6ICMwMDcxQ0U7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbn1cblxuLnNpZGUtbWVudSAuYm90dG9tLWFyZWEgbGkge1xuICBjb2xvcjogIzAwNzFDRTtcbiAgZm9udC1zaXplOiAyMnB4O1xuICBmb250LWZhbWlseTogXCJTZW5zaWJpbGl0eVwiLCBcIkhlbHZldGljYSBOZXVlXCIsIEhlbHZldGljYSwgQXJpYWwsIHNhbnMtc2VyaWY7XG4gIG1hcmdpbi1ib3R0b206IDAuNmVtO1xuICBmb250LXdlaWdodDogNzAwO1xufVxuXG4uc2lkZS1tZW51IC5ib3R0b20tYXJlYSBsaSBhIHtcbiAgZGlzcGxheTogYmxvY2s7XG59XG5cbi5zaWRlLW1lbnUgLmJvdHRvbS1hcmVhIGxpIC5pY29uLWRvd25sb2FkIHtcbiAgd2lkdGg6IDIycHg7XG4gIGhlaWdodDogYXV0bztcbiAgbWFyZ2luOiAwIDAgLTFweCAycHg7XG59XG5cbi5zaWRlLW1lbnUgLmJvdHRvbS1hcmVhIGxpOmxhc3QtY2hpbGQge1xuICBtYXJnaW4tYm90dG9tOiAwO1xufVxuXG4uc2lkZS1tZW51IC5ib3R0b20tYXJlYSBsaSBhOmhvdmVyIHtcbiAgY29sb3I6ICMyNDliZmY7XG59XG5cbi5zaWRlLW1lbnUgLmJvdHRvbS1hcmVhIC5zbSB7XG4gIG1hcmdpbi10b3A6IDAuOGVtO1xufVxuXG4uc2lkZS1tZW51IC5ib3R0b20tYXJlYSAuc20gbGkge1xuICBtYXJnaW46IDAgMS4zZW0gMCAwO1xufVxuXG4uc2lkZS1tZW51IC5ib3R0b20tYXJlYSAuc20gbGkudHcge1xuICBtYXJnaW4tdG9wOiA1cHg7XG4gIG1hcmdpbi1yaWdodDogMC45ZW07XG59XG5cbi5zaWRlLW1lbnUgLmJvdHRvbS1hcmVhIC5zbSBsaS55dCB7XG4gIG1hcmdpbi10b3A6IDNweDtcbn1cblxuLnNpZGUtbWVudS5hY3RpdmUge1xuICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoMCUpO1xuICB0cmFuc2l0aW9uOiAwLjVzIHRyYW5zZm9ybSBjdWJpYy1iZXppZXIoMC40LCAwLCAwLjIsIDEpIDAuNXM7XG59XG5cbkBtZWRpYSAobWluLXdpZHRoOiA2Ni42NjY2N2VtKSBhbmQgKG1heC13aWR0aDogODguODg4ODllbSkge1xuICAuc2lkZS1tZW51IHtcbiAgICBtYXgtd2lkdGg6IDQzMHB4O1xuICB9XG4gIC5zaWRlLW1lbnUgLm1lbnUtY29udGVudCB7XG4gICAgZm9udC1zaXplOiAxNHB4O1xuICB9XG4gIC5zaWRlLW1lbnUgLm1lbnUtY29udGVudCAubmF2aWdhdGlvbi1hcmVhIGxpIHtcbiAgICBmb250LXNpemU6IDI0cHg7XG4gIH1cbiAgLnNpZGUtbWVudSAuYm90dG9tLWFyZWEgbGkge1xuICAgIGZvbnQtc2l6ZTogMjJweDtcbiAgfVxuICAuc2lkZS1tZW51IC5ib3R0b20tYXJlYSB7XG4gICAgcGFkZGluZzogMi4zMGVtIDAgMCAyLjc2ZW07XG4gIH1cbn1cblxuQG1lZGlhIChtaW4td2lkdGg6IDUzLjMzMzMzZW0pIGFuZCAobWF4LXdpZHRoOiA2Ni42NjY2N2VtKSB7XG4gIC5zaWRlLW1lbnUgLm1lbnUtY29udGVudCB7XG4gICAgZm9udC1zaXplOiAxM3B4O1xuICB9XG4gIC5zaWRlLW1lbnUge1xuICAgIG1heC13aWR0aDogNDAwcHg7XG4gIH1cbiAgLnNpZGUtbWVudSAubWVudS1jb250ZW50IC5uYXZpZ2F0aW9uLWFyZWEgbGkge1xuICAgIGZvbnQtc2l6ZTogMjNweDtcbiAgfVxuICAuc2lkZS1tZW51IC5ib3R0b20tYXJlYSBsaSB7XG4gICAgZm9udC1zaXplOiAyMHB4O1xuICB9XG4gIC5zaWRlLW1lbnUgLmJvdHRvbS1hcmVhIGxpIC5pY29uLWRvd25sb2FkIHtcbiAgICB3aWR0aDogMjBweDtcbiAgICBtYXJnaW46IDAgMCAwIDJweDtcbiAgfVxufVxuXG5AbWVkaWEgKG1pbi13aWR0aDogNDIuNjY2NjdlbSkgYW5kIChtYXgtd2lkdGg6IDUzLjMzMzMzZW0pIHtcbiAgLnNpZGUtbWVudSAubWVudS1jb250ZW50IC5oYW1idXJnZXIge1xuICAgIGZvbnQtc2l6ZTogMTFweDtcbiAgfVxuICAuc2lkZS1tZW51IC5tZW51LWNvbnRlbnQge1xuICAgIGZvbnQtc2l6ZTogMTFweDtcbiAgfVxuICAuc2lkZS1tZW51IHtcbiAgICBtYXgtd2lkdGg6IDM2MHB4O1xuICB9XG4gIC5zaWRlLW1lbnUgLm1lbnUtY29udGVudCAubmF2aWdhdGlvbi1hcmVhIGxpIHtcbiAgICBmb250LXNpemU6IDIycHg7XG4gICAgcGFkZGluZzogMC40ODVlbSAwIDAuNDg2ZW0gMS4xZW07XG4gIH1cbiAgLnNpZGUtbWVudSAuYm90dG9tLWFyZWEgbGkge1xuICAgIGZvbnQtc2l6ZTogMThweDtcbiAgfVxuICAuc2lkZS1tZW51IC5ib3R0b20tYXJlYSBsaSAuaWNvbi1kb3dubG9hZCB7XG4gICAgd2lkdGg6IDE5cHg7XG4gICAgbWFyZ2luOiAwIDAgLTFweCAycHg7XG4gIH1cbn1cblxuQG1lZGlhIChtaW4td2lkdGg6IDI2LjY2NjY3ZW0pIGFuZCAobWF4LXdpZHRoOiA0Mi42NjY2N2VtKSB7XG4gIC5zaWRlLW1lbnUgLm1lbnUtY29udGVudCAuaGFtYnVyZ2VyIHtcbiAgICBmb250LXNpemU6IDlweDtcbiAgfVxuICAuc2lkZS1tZW51IC5tZW51LWNvbnRlbnQge1xuICAgIGZvbnQtc2l6ZTogMTFweDtcbiAgfVxuICAuc2lkZS1tZW51IHtcbiAgICBtYXgtd2lkdGg6IDMyMHB4O1xuICB9XG4gIC5zaWRlLW1lbnUgLm1lbnUtY29udGVudCAubmF2aWdhdGlvbi1hcmVhIGxpIHtcbiAgICBmb250LXNpemU6IDIwcHg7XG4gICAgcGFkZGluZzogMC40ODVlbSAwIDAuNDg2ZW0gMS4xZW07XG4gIH1cbiAgLnNpZGUtbWVudSAuYm90dG9tLWFyZWEgbGkge1xuICAgIGZvbnQtc2l6ZTogMTZweDtcbiAgfVxuICAuc2lkZS1tZW51IC5ib3R0b20tYXJlYSBsaSAuaWNvbi1kb3dubG9hZCB7XG4gICAgd2lkdGg6IDE4cHg7XG4gICAgaGVpZ2h0OiBhdXRvO1xuICAgIG1hcmdpbjogMCAwIC0xcHggMnB4O1xuICB9XG59XG5cbkBtZWRpYSAobWF4LXdpZHRoOiAyNi42NjY2N2VtKSB7XG4gIC5zaWRlLW1lbnUgLm1lbnUtY29udGVudCAuaGFtYnVyZ2VyIHtcbiAgICBmb250LXNpemU6IDhweDtcbiAgfVxuICAuc2lkZS1tZW51IC5tZW51LWNvbnRlbnQge1xuICAgIGZvbnQtc2l6ZTogOXB4O1xuICB9XG4gIC5zaWRlLW1lbnUge1xuICAgIG1heC13aWR0aDogMjYwcHg7XG4gIH1cbiAgLnNpZGUtbWVudSAubWVudS1jb250ZW50IC5uYXZpZ2F0aW9uLWFyZWEgbGkge1xuICAgIGZvbnQtc2l6ZTogMThweDtcbiAgICBwYWRkaW5nOiAwLjQ4NWVtIDAgMC40ODZlbSAxLjFlbTtcbiAgfVxuICAuc2lkZS1tZW51IC5ib3R0b20tYXJlYSBsaSB7XG4gICAgZm9udC1zaXplOiAxNHB4O1xuICB9XG4gIC5zaWRlLW1lbnUgLmJvdHRvbS1hcmVhIGxpIC5pY29uLWRvd25sb2FkIHtcbiAgICB3aWR0aDogMTZweDtcbiAgICBtYXJnaW46IDAgMCAtMXB4IDJweDtcbiAgfVxuICAuc2lkZS1tZW51IC5tZW51LWNvbnRlbnQgLm5hdmlnYXRpb24tYXJlYSBsaSB7XG4gICAgbGluZS1oZWlnaHQ6IDEuMTY7XG4gIH1cbn1cblxuQC1tb3otZG9jdW1lbnQgdXJsLXByZWZpeCgpIHtcbiAgLnNpZGUtbWVudSAubWVudS1jb250ZW50IC5uYXZpZ2F0aW9uLWFyZWEgbGkge1xuICAgIGxpbmUtaGVpZ2h0OiAxLjE5O1xuICB9XG59XG5cbkBtZWRpYSAobWF4LXdpZHRoOiA2Ni42NjY2N2VtKSB7XG4gIC5zaWRlLW1lbnUge1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgfVxuICAuc2lkZS1tZW51LWNvbnRhaW5lciB7XG4gICAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgbGVmdDogMDtcbiAgICByaWdodDogMDtcbiAgICB0b3A6IDA7XG4gICAgYm90dG9tOiAwO1xuICAgIG1hcmdpbjogYXV0bztcbiAgfVxufVxuXG5AbWVkaWEgKG1heC13aWR0aDogNTMuMzMzMzNlbSkge1xuICAuc2lkZS1tZW51IC5tZW51LWNvbnRlbnQgLm5hdmlnYXRpb24tYXJlYSBsaS5pdGVtOmJlZm9yZSwgLnNpZGUtbWVudSAubWVudS1jb250ZW50IC5uYXZpZ2F0aW9uLWFyZWEgbGkuaXRlbTphZnRlciB7XG4gICAgd2lkdGg6IDEuMDVlbTtcbiAgfVxuICAuc2lkZS1tZW51IC5tZW51LWNvbnRlbnQgLm5hdmlnYXRpb24tYXJlYSB1bC53aXRoU3ViID4gbGkuY2hpbGQge1xuICAgIG1hcmdpbi1sZWZ0OiAxLjFlbTtcbiAgfVxuICAuc2lkZS1tZW51IC5tZW51LWNvbnRlbnQgLm5hdmlnYXRpb24tYXJlYSB1bC53aXRoU3ViID4gbGkuY2hpbGQgYSB7XG4gICAgcGFkZGluZzogMC40OGVtIDAgMC40OGVtIDAuMmVtO1xuICB9XG4gIC5zaWRlLW1lbnUgLm1lbnUtY29udGVudCAubmF2aWdhdGlvbi1hcmVhIGxpIGEge1xuICAgIHBhZGRpbmc6IDAuNDg1ZW0gMCAwLjQ4NmVtIDEuMWVtO1xuICB9XG59XG5cbi5qdW1ib3Ryb24ge1xuICB0ZXh0LWFsaWduOiBsZWZ0O1xuICBtYXJnaW46IDUuN2VtIDAgNGVtO1xufVxuXG4uanVtYm90cm9uIGgxLCAuanVtYm90cm9uIC5oMSB7XG4gIGxpbmUtaGVpZ2h0OiAwLjg5NjtcbiAgZm9udC1zaXplOiAxMjVweDtcbiAgbWFyZ2luOiAwO1xuICBsZXR0ZXItc3BhY2luZzogMC4ycHg7XG59XG5cbi5qdW1ib3Ryb24gaDIsIC5qdW1ib3Ryb24gLmgyIHtcbiAgbGluZS1oZWlnaHQ6IDEuMzA0MzU7XG4gIGZvbnQtc2l6ZTogNDZweDtcbn1cblxuLmp1bWJvdHJvbiBoMSArIGgyIHtcbiAgbWFyZ2luOiAwLjY4ZW0gMCAwIDAuODRlbTtcbn1cblxuLmp1bWJvdHJvbiAubGVhZCB7XG4gIGZvbnQtc2l6ZTogMi4yMjIyMmVtO1xuICBsaW5lLWhlaWdodDogMS4zNzU7XG4gIGxldHRlci1zcGFjaW5nOiAtMC4xOXB4O1xuICBtYXJnaW46IDAuOGVtIDAgMC44NWVtO1xufVxuXG4uanVtYm90cm9uIC5idG4uYnRuLS1kb3dubG9hZCB7XG4gIHBhZGRpbmc6IDE1cHggMTlweCAxNXB4IDE2cHg7XG59XG5cbi5qdW1ib3Ryb24gLmJ0bi0tZG93bmxvYWQ6YmVmb3JlLCAuanVtYm90cm9uIGEuYnRuLS1kb3dubG9hZDpiZWZvcmUge1xuICBtYXJnaW4tcmlnaHQ6IDVweDtcbn1cblxuLmp1bWJvdHJvbiAuZGVza3RvcC1pbWcge1xuICBoZWlnaHQ6IDMxMHB4O1xuICB3aWR0aDogYXV0bztcbiAgYmFja2dyb3VuZDogdXJsKC4uL2ltYWdlcy9ob21lLWhlYWRlci1kZXNrdG9wLnBuZykgbm8tcmVwZWF0IHRvcCByaWdodDtcbiAgbWFyZ2luOiA2cHggLTFweCAwIGF1dG87XG4gIGJhY2tncm91bmQtc2l6ZTogY29udGFpbjtcbn1cblxuLmp1bWJvdHJvbiAubW9iaWxlLWltZyB7XG4gIGRpc3BsYXk6IG5vbmU7XG4gIGhlaWdodDogOTRweDtcbiAgd2lkdGg6IGF1dG87XG4gIGJhY2tncm91bmQ6IHVybCguLi9pbWFnZXMvaG9tZS1oZWFkZXItbW9iaWxlLnBuZykgbm8tcmVwZWF0IGNlbnRlcjtcbiAgbWFyZ2luOiAwIGF1dG87XG4gIGJhY2tncm91bmQtc2l6ZTogY29udGFpbjtcbn1cblxuQG1lZGlhIChtaW4td2lkdGg6IDE0MjJweCkgYW5kIChtYXgtd2lkdGg6IDE2MDBweCkge1xuICAuanVtYm90cm9uIHtcbiAgICBmb250LXNpemU6IDE3cHg7XG4gIH1cbiAgLmp1bWJvdHJvbiBoMSB7XG4gICAgZm9udC1zaXplOiAxMjZweDtcbiAgfVxufVxuXG5AbWVkaWEgKG1pbi13aWR0aDogNjYuNjY2NjdlbSkgYW5kIChtYXgtd2lkdGg6IDg4Ljg4ODg5ZW0pIHtcbiAgLmp1bWJvdHJvbiB7XG4gICAgZm9udC1zaXplOiAxNXB4O1xuICB9XG4gIC5qdW1ib3Ryb24gaDEge1xuICAgIGZvbnQtc2l6ZTogOTJweDtcbiAgfVxuICAuanVtYm90cm9uIGgyIHtcbiAgICBmb250LXNpemU6IDM4cHg7XG4gIH1cbiAgLmp1bWJvdHJvbiAuZGVza3RvcC1pbWcge1xuICAgIGhlaWdodDogMjI0cHg7XG4gIH1cbn1cblxuQG1lZGlhIChtaW4td2lkdGg6IDUzLjMzMzMzZW0pIGFuZCAobWF4LXdpZHRoOiA2Ni42NjY2N2VtKSB7XG4gIC5qdW1ib3Ryb24ge1xuICAgIGZvbnQtc2l6ZTogMTNweDtcbiAgfVxuICAuanVtYm90cm9uIGgxIHtcbiAgICBmb250LXNpemU6IDg4cHg7XG4gIH1cbiAgLmp1bWJvdHJvbiBoMiB7XG4gICAgZm9udC1zaXplOiAzNHB4O1xuICB9XG4gIC5qdW1ib3Ryb24gLmJ0bi0tZG93bmxvYWQ6YmVmb3JlLCAuanVtYm90cm9uIGEuYnRuLS1kb3dubG9hZDpiZWZvcmUge1xuICAgIG1hcmdpbi1yaWdodDogMDtcbiAgfVxuICAuanVtYm90cm9uIC5kZXNrdG9wLWltZyB7XG4gICAgaGVpZ2h0OiAxODRweDtcbiAgfVxufVxuXG5AbWVkaWEgKG1pbi13aWR0aDogNDIuNjY2NjdlbSkgYW5kIChtYXgtd2lkdGg6IDUzLjMzMzMzZW0pIHtcbiAgLmp1bWJvdHJvbiB7XG4gICAgZm9udC1zaXplOiAxMXB4O1xuICB9XG4gIC5qdW1ib3Ryb24gaDEge1xuICAgIGZvbnQtc2l6ZTogNzZweDtcbiAgfVxuICAuanVtYm90cm9uIGgyIHtcbiAgICBmb250LXNpemU6IDMwcHg7XG4gIH1cbiAgLmp1bWJvdHJvbiAubGVhZCB7XG4gICAgZm9udC1zaXplOiAyLjJlbTtcbiAgfVxuICAuanVtYm90cm9uIC5idG4uYnRuLS1kb3dubG9hZCB7XG4gICAgcGFkZGluZzogMC42OTVlbSAwLjY5NWVtIDAuNjk1ZW0gMC42MGVtO1xuICB9XG4gIC5qdW1ib3Ryb24gLmJ0bi0tZG93bmxvYWQ6YmVmb3JlLCAuanVtYm90cm9uIGEuYnRuLS1kb3dubG9hZDpiZWZvcmUge1xuICAgIG1hcmdpbi1yaWdodDogMDtcbiAgfVxuICAuYnRuLS1kb3dubG9hZDpiZWZvcmUsXG4gIGEuYnRuLS1kb3dubG9hZDpiZWZvcmUge1xuICAgIHBhZGRpbmctbGVmdDogMjJweDtcbiAgfVxufVxuXG5AbWVkaWEgKG1pbi13aWR0aDogMjYuNjY2NjdlbSkgYW5kIChtYXgtd2lkdGg6IDQyLjY2NjY3ZW0pIHtcbiAgLmp1bWJvdHJvbiB7XG4gICAgZm9udC1zaXplOiA5cHg7XG4gICAgbWFyZ2luLWxlZnQ6IDE1cHg7XG4gICAgbWFyZ2luLXJpZ2h0OiAxNXB4O1xuICB9XG4gIC5qdW1ib3Ryb24gaDEge1xuICAgIGZvbnQtc2l6ZTogNjRweDtcbiAgfVxuICAuanVtYm90cm9uIGgyIHtcbiAgICBmb250LXNpemU6IDI0cHg7XG4gIH1cbiAgLmp1bWJvdHJvbiAubGVhZCB7XG4gICAgZm9udC1zaXplOiAyLjJlbTtcbiAgfVxuICAuanVtYm90cm9uIC5idG4uYnRuLS1kb3dubG9hZCB7XG4gICAgcGFkZGluZzogMC42OTVlbSAwLjY5NWVtIDAuNjk1ZW0gMC42MGVtO1xuICB9XG4gIC5qdW1ib3Ryb24gLmJ0bi0tZG93bmxvYWQ6YmVmb3JlLCAuanVtYm90cm9uIGEuYnRuLS1kb3dubG9hZDpiZWZvcmUge1xuICAgIG1hcmdpbi1yaWdodDogMDtcbiAgfVxuICAuYnRuLS1kb3dubG9hZDpiZWZvcmUsXG4gIGEuYnRuLS1kb3dubG9hZDpiZWZvcmUge1xuICAgIHBhZGRpbmctbGVmdDogMjJweDtcbiAgICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiBsZWZ0IDJweDtcbiAgfVxufVxuXG5AbWVkaWEgKG1heC13aWR0aDogMjYuNjY2NjdlbSkge1xuICAuanVtYm90cm9uIHtcbiAgICBmb250LXNpemU6IDdweDtcbiAgICBtYXJnaW4tbGVmdDogMTVweDtcbiAgICBtYXJnaW4tcmlnaHQ6IDE1cHg7XG4gIH1cbiAgLmp1bWJvdHJvbiBoMSB7XG4gICAgZm9udC1zaXplOiA1OHB4O1xuICB9XG4gIC5qdW1ib3Ryb24gaDIge1xuICAgIGZvbnQtc2l6ZTogMjJweDtcbiAgfVxuICAuanVtYm90cm9uIC5sZWFkIHtcbiAgICBmb250LXNpemU6IDIuMmVtO1xuICB9XG4gIC5qdW1ib3Ryb24gLmJ0bi5idG4tLWRvd25sb2FkIHtcbiAgICBwYWRkaW5nOiAwLjY5NWVtIDAuNjk1ZW0gMC42OTVlbSAwLjYwZW07XG4gIH1cbiAgLmp1bWJvdHJvbiAuYnRuLS1kb3dubG9hZDpiZWZvcmUsIC5qdW1ib3Ryb24gYS5idG4tLWRvd25sb2FkOmJlZm9yZSB7XG4gICAgbWFyZ2luLXJpZ2h0OiAwO1xuICB9XG4gIC5idG4tLWRvd25sb2FkOmJlZm9yZSxcbiAgYS5idG4tLWRvd25sb2FkOmJlZm9yZSB7XG4gICAgcGFkZGluZy1sZWZ0OiAyMnB4O1xuICAgIGJhY2tncm91bmQtcG9zaXRpb246IGxlZnQgMnB4O1xuICB9XG59XG5cbkBtZWRpYSAobWF4LXdpZHRoOiA2Ni42NjY2N2VtKSB7XG4gIC5qdW1ib3Ryb24gLmRlc2t0b3AtaW1nIHtcbiAgICBkaXNwbGF5OiBub25lO1xuICB9XG4gIC5qdW1ib3Ryb24gLm1vYmlsZS1pbWcge1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIG1hcmdpbi10b3A6IDMwcHg7XG4gIH1cbiAgLmp1bWJvdHJvbiAuZ3JpZC1pdGVtLTIge1xuICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgfVxuICAuanVtYm90cm9uIGgxICsgaDIge1xuICAgIG1hcmdpbjogMDtcbiAgfVxufVxuXG4ucHJpb3JpdHktdGFicy0taGVhZGVyIHtcbiAgZGlzcGxheTogLXdlYmtpdC1ib3g7XG4gIGRpc3BsYXk6IC1tb3otYm94O1xuICBkaXNwbGF5OiAtbXMtZmxleGJveDtcbiAgZGlzcGxheTogLXdlYmtpdC1mbGV4O1xuICBkaXNwbGF5OiBmbGV4O1xuICAtd2Via2l0LWFsaWduLWl0ZW1zOiBmbGV4LXN0YXJ0O1xuICAtbXMtZmxleC1hbGlnbjogc3RhcnQ7XG4gIGFsaWduLWl0ZW1zOiBmbGV4LXN0YXJ0O1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIHotaW5kZXg6IDIwO1xufVxuXG4ucHJpb3JpdHktdGFicy0tY29udGVudCB7XG4gIGNsZWFyOiBib3RoO1xuICBkaXNwbGF5OiBibG9jaztcbiAgbWFyZ2luLXRvcDogLTIuMnJlbTtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xufVxuXG4ucHJpb3JpdHktdGFicy0tY29udGVudCAubC1ncmlkLXByaW9yaXR5IHtcbiAgbWFyZ2luLWxlZnQ6IC0yM3B4O1xuICBtYXJnaW4tcmlnaHQ6IC0yM3B4O1xufVxuXG4ucHJpb3JpdHktdGFicy0tY29udGVudCAubC1ncmlkLXByaW9yaXR5LndpdGhQYWRkaW5nIHtcbiAgcGFkZGluZy1ib3R0b206IDIuMTVlbTtcbn1cblxuLnByaW9yaXR5LXRhYnMtLWNvbnRlbnQgLnByaW9yaXR5LWNvbnRlbnQtLXRpdGxlIHtcbiAgbGV0dGVyLXNwYWNpbmc6IC0wLjNweDtcbiAgbGluZS1oZWlnaHQ6IDAuOTY7XG59XG5cbi5wcmlvcml0eS10YWJzLW91dCB7XG4gIG1hcmdpbi10b3A6IDYuMTNyZW07XG59XG5cbi5wcmlvcml0eS10YWJzLW91dCAucHJpb3JpdHktdGFicyB7XG4gIG1hcmdpbi10b3A6IDMuNXJlbTtcbn1cblxuLnByaW9yaXR5LXRhYiB7XG4gIGN1cnNvcjogcG9pbnRlcjtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBkaXNwbGF5OiBibG9jaztcbiAgZmxvYXQ6IGxlZnQ7XG4gIHdpZHRoOiBjYWxjKCgxMDAlIC0gMzBweCAqIDYpIC8gNik7XG4gIHBhZGRpbmc6IDAuODEyNXJlbSAwIDA7XG4gIGJvcmRlci1sZWZ0OiAxNXB4IHNvbGlkICNmZmY7XG4gIGJvcmRlci1yaWdodDogMTVweCBzb2xpZCAjZmZmO1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gIGZvbnQtc2l6ZTogMS44NzVyZW07XG4gIGxpbmUtaGVpZ2h0OiAwO1xuICBjb2xvcjogI0ZGRjtcbiAgYm94LXNpemluZzogY29udGVudC1ib3g7XG4gIHRyYW5zaXRpb246IHBhZGRpbmctdG9wIC4zcyBlYXNlLCBsaW5lLWhlaWdodCAuM3MgbGluZWFyO1xufVxuXG5AbWVkaWEgKG1pbi13aWR0aDogNjYuNjY2NjdlbSkge1xuICAucHJpb3JpdHktdGFiOmZpcnN0LW9mLXR5cGUge1xuICAgIG1hcmdpbi1sZWZ0OiA4LjMzNCU7XG4gIH1cbn1cblxuQG1lZGlhIChtaW4td2lkdGg6IDQyLjY2NjY3ZW0pIHtcbiAgLnByaW9yaXR5LXRhYjpob3ZlciwgLnByaW9yaXR5LXRhYi5hY3RpdmUge1xuICAgIGxpbmUtaGVpZ2h0OiAwLjkzMzMzO1xuICAgIHBhZGRpbmctdG9wOiAycmVtO1xuICB9XG4gIC5wcmlvcml0eS10YWI6aG92ZXIgLnByaW9yaXR5LWljb24sIC5wcmlvcml0eS10YWIuYWN0aXZlIC5wcmlvcml0eS1pY29uIHtcbiAgICBoZWlnaHQ6IDUuMzEyNXJlbTtcbiAgfVxuICAucHJpb3JpdHktdGFiOmhvdmVyIC5wcmlvcml0eS1sYWJlbCwgLnByaW9yaXR5LXRhYi5hY3RpdmUgLnByaW9yaXR5LWxhYmVsIHtcbiAgICBwYWRkaW5nLWJvdHRvbTogMDtcbiAgfVxuICAucHJpb3JpdHktdGFiOmhvdmVyIC5wcmlvcml0eS1sYWJlbCAucHJpb3JpdHktdGFiLS1jaGV2cm9uLCAucHJpb3JpdHktdGFiLmFjdGl2ZSAucHJpb3JpdHktbGFiZWwgLnByaW9yaXR5LXRhYi0tY2hldnJvbiB7XG4gICAgbWFyZ2luLXRvcDogLTExcHg7XG4gIH1cbn1cblxuLnByaW9yaXR5LWxhYmVsIHtcbiAgZGlzcGxheTogYmxvY2s7XG4gIG1pbi1oZWlnaHQ6IDAuOTMzMzNlbTtcbiAgcGFkZGluZy10b3A6IDAuMzEyNXJlbTtcbiAgcGFkZGluZy1ib3R0b206IDAuNzVyZW07XG4gIG1hcmdpbi10b3A6IDEuMTI1cmVtO1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIHRyYW5zaXRpb246IGJhY2tncm91bmQtY29sb3IgLjNzIGVhc2UsIHBhZGRpbmctYm90dG9tIC4zcyBlYXNlO1xufVxuXG4ucHJpb3JpdHktbGFiZWwtLXRleHQge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIHotaW5kZXg6IDI7XG4gIGZvbnQtZmFtaWx5OiBcIlNlbnNpYmlsaXR5XCIsIFwiSGVsdmV0aWNhIE5ldWVcIiwgSGVsdmV0aWNhLCBBcmlhbCwgc2Fucy1zZXJpZjtcbiAgbGluZS1oZWlnaHQ6IDAuOTQ7XG4gIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG4gIGZvbnQtd2VpZ2h0OiBub3JtYWw7XG59XG5cbi5wcmlvcml0eS1pY29uIHtcbiAgdmVydGljYWwtYWxpZ246IHRvcDtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICB3aWR0aDogYXV0bztcbiAgaGVpZ2h0OiAwO1xuICBtYXJnaW46IDAgMCAtMC4xZW07XG4gIHRyYW5zaXRpb246IGhlaWdodCAuM3MgZWFzZTtcbn1cblxuLnByaW9yaXR5LXRhYi0tY2hldnJvbiB7XG4gIG1hcmdpbi10b3A6IC0xMnB4O1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIGxlZnQ6IDA7XG4gIHRvcDogMTAwJTtcbiAgdHJhbnNpdGlvbjogY29sb3IgLjNzIGVhc2U7XG4gIG1heC13aWR0aDogMTAwJTtcbn1cblxuLnByaW9yaXR5LWNvbnRlbnQge1xuICBtYXJnaW46IDA7XG4gIG92ZXJmbG93OiBoaWRkZW47XG4gIG9wYWNpdHk6IDA7XG4gIGhlaWdodDogMDtcbiAgdmlzaWJpbGl0eTogaGlkZGVuO1xuICBib3JkZXItd2lkdGg6IDAgIWltcG9ydGFudDtcbn1cblxuLnByaW9yaXR5LWNvbnRlbnQuYWN0aXZlIHtcbiAgYm9yZGVyLXdpZHRoOiA4cHggIWltcG9ydGFudDtcbiAgaGVpZ2h0OiBhdXRvO1xuICBvcmRlcjogOTk5OTtcbiAgcGFkZGluZzogNS45Mzc1cmVtIDAgNS4xODc1cmVtO1xuICB2aXNpYmlsaXR5OiB2aXNpYmxlO1xuICBvcGFjaXR5OiAxO1xuICB0cmFuc2l0aW9uOiAwLjZzIG9wYWNpdHkgY3ViaWMtYmV6aWVyKDAuNjgsIC0wLjU1LCAwLjI3LCAxLjU1KTtcbn1cblxuLnByaW9yaXR5LWNvbnRlbnQtLW1haW4gcCB7XG4gIGZvbnQtc2l6ZTogMS44NzVyZW07XG4gIGxpbmUtaGVpZ2h0OiAxLjQ7XG4gIG1hcmdpbjogLTZweCAwIDA7XG4gIGxldHRlci1zcGFjaW5nOiAtMC4wNXB4O1xufVxuXG4uYnRuLnByaW9yaXR5LWNvbnRlbnQtLWxpbmsge1xuICB3aWR0aDogOC4yNXJlbTtcbiAgbWFyZ2luLWxlZnQ6IDMxcHg7XG4gIG1hcmdpbi10b3A6IDJweDtcbiAgZm9udC1zaXplOiAxLjg3NXJlbTtcbiAgbGluZS1oZWlnaHQ6IDE7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgcGFkZGluZzogMjlweCAwIDI3cHg7XG59XG5cbi51bmRlci1wcmlvcml0aWVzIC5idG4ge1xuICBtYXJnaW4tdG9wOiAyZW07XG4gIHBhZGRpbmc6IDE0cHggMTlweCAxNXB4O1xufVxuXG4ucHJpb3JpdHktY29sb3ItMS5wcmlvcml0eS1jb250ZW50IHtcbiAgYm9yZGVyOiA4cHggc29saWQgIzAwNzFDRTtcbn1cblxuLnByaW9yaXR5LWNvbG9yLTEucHJpb3JpdHktdGFiIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogIzAwNzFDRTtcbn1cblxuLnByaW9yaXR5LWNvbG9yLTEgLnByaW9yaXR5LWxhYmVsIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogIzAwNUQ5QTtcbn1cblxuLnByaW9yaXR5LWNvbG9yLTEgLnByaW9yaXR5LXRhYi0tY2hldnJvbiB7XG4gIGNvbG9yOiAjMDA1RDlBO1xufVxuXG4ucHJpb3JpdHktY29sb3ItMSAucHJpb3JpdHktY29udGVudC0tdGl0bGUge1xuICBjb2xvcjogIzAwNzFDRTtcbn1cblxuLnByaW9yaXR5LWNvbG9yLTE6aG92ZXIgLnByaW9yaXR5LXRhYi0tY2hldnJvbiwgLnByaW9yaXR5LWNvbG9yLTEuYWN0aXZlIC5wcmlvcml0eS10YWItLWNoZXZyb24ge1xuICBjb2xvcjogIzAwNzFDRTtcbn1cblxuLnByaW9yaXR5LWNvbG9yLTE6aG92ZXIgLnByaW9yaXR5LWxhYmVsLCAucHJpb3JpdHktY29sb3ItMS5hY3RpdmUgLnByaW9yaXR5LWxhYmVsIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogIzAwNzFDRTtcbn1cblxuLnByaW9yaXR5LWNvbG9yLTEgLmwtZ3JpZC1wcmlvcml0eS1kb3duIHtcbiAgYmFja2dyb3VuZDogIzAwNUQ5QTtcbn1cblxuLnByaW9yaXR5LWNvbG9yLTIucHJpb3JpdHktY29udGVudCB7XG4gIGJvcmRlcjogOHB4IHNvbGlkICNGNjhEMkQ7XG59XG5cbi5wcmlvcml0eS1jb2xvci0yLnByaW9yaXR5LXRhYiB7XG4gIGJhY2tncm91bmQtY29sb3I6ICNGNjhEMkQ7XG59XG5cbi5wcmlvcml0eS1jb2xvci0yIC5wcmlvcml0eS1sYWJlbCB7XG4gIGJhY2tncm91bmQtY29sb3I6ICNBQzYxMjA7XG59XG5cbi5wcmlvcml0eS1jb2xvci0yIC5wcmlvcml0eS10YWItLWNoZXZyb24ge1xuICBjb2xvcjogI0FDNjEyMDtcbn1cblxuLnByaW9yaXR5LWNvbG9yLTIgLnByaW9yaXR5LWNvbnRlbnQtLXRpdGxlIHtcbiAgY29sb3I6ICNGNjhEMkQ7XG59XG5cbi5wcmlvcml0eS1jb2xvci0yOmhvdmVyIC5wcmlvcml0eS10YWItLWNoZXZyb24sIC5wcmlvcml0eS1jb2xvci0yLmFjdGl2ZSAucHJpb3JpdHktdGFiLS1jaGV2cm9uIHtcbiAgY29sb3I6ICNGNjhEMkQ7XG59XG5cbi5wcmlvcml0eS1jb2xvci0yOmhvdmVyIC5wcmlvcml0eS1sYWJlbCwgLnByaW9yaXR5LWNvbG9yLTIuYWN0aXZlIC5wcmlvcml0eS1sYWJlbCB7XG4gIGJhY2tncm91bmQtY29sb3I6ICNGNjhEMkQ7XG59XG5cbi5wcmlvcml0eS1jb2xvci0yIC5sLWdyaWQtcHJpb3JpdHktZG93biB7XG4gIGJhY2tncm91bmQ6ICNBQzYxMjA7XG59XG5cbi5wcmlvcml0eS1jb2xvci0zLnByaW9yaXR5LWNvbnRlbnQge1xuICBib3JkZXI6IDhweCBzb2xpZCAjNzM5OTRCO1xufVxuXG4ucHJpb3JpdHktY29sb3ItMy5wcmlvcml0eS10YWIge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjNzM5OTRCO1xufVxuXG4ucHJpb3JpdHktY29sb3ItMyAucHJpb3JpdHktbGFiZWwge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjNUU3RTNFO1xufVxuXG4ucHJpb3JpdHktY29sb3ItMyAucHJpb3JpdHktdGFiLS1jaGV2cm9uIHtcbiAgY29sb3I6ICM1RTdFM0U7XG59XG5cbi5wcmlvcml0eS1jb2xvci0zIC5wcmlvcml0eS1jb250ZW50LS10aXRsZSB7XG4gIGNvbG9yOiAjNzM5OTRCO1xufVxuXG4ucHJpb3JpdHktY29sb3ItMzpob3ZlciAucHJpb3JpdHktdGFiLS1jaGV2cm9uLCAucHJpb3JpdHktY29sb3ItMy5hY3RpdmUgLnByaW9yaXR5LXRhYi0tY2hldnJvbiB7XG4gIGNvbG9yOiAjNzM5OTRCO1xufVxuXG4ucHJpb3JpdHktY29sb3ItMzpob3ZlciAucHJpb3JpdHktbGFiZWwsIC5wcmlvcml0eS1jb2xvci0zLmFjdGl2ZSAucHJpb3JpdHktbGFiZWwge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjNzM5OTRCO1xufVxuXG4ucHJpb3JpdHktY29sb3ItMyAubC1ncmlkLXByaW9yaXR5LWRvd24ge1xuICBiYWNrZ3JvdW5kOiAjNUU3RTNFO1xufVxuXG4ucHJpb3JpdHktY29sb3ItNC5wcmlvcml0eS1jb250ZW50IHtcbiAgYm9yZGVyOiA4cHggc29saWQgI0U5M0M1MTtcbn1cblxuLnByaW9yaXR5LWNvbG9yLTQucHJpb3JpdHktdGFiIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogI0U5M0M1MTtcbn1cblxuLnByaW9yaXR5LWNvbG9yLTQgLnByaW9yaXR5LWxhYmVsIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogI0M4MzQ0Njtcbn1cblxuLnByaW9yaXR5LWNvbG9yLTQgLnByaW9yaXR5LXRhYi0tY2hldnJvbiB7XG4gIGNvbG9yOiAjQzgzNDQ2O1xufVxuXG4ucHJpb3JpdHktY29sb3ItNCAucHJpb3JpdHktY29udGVudC0tdGl0bGUge1xuICBjb2xvcjogI0U5M0M1MTtcbn1cblxuLnByaW9yaXR5LWNvbG9yLTQ6aG92ZXIgLnByaW9yaXR5LXRhYi0tY2hldnJvbiwgLnByaW9yaXR5LWNvbG9yLTQuYWN0aXZlIC5wcmlvcml0eS10YWItLWNoZXZyb24ge1xuICBjb2xvcjogI0U5M0M1MTtcbn1cblxuLnByaW9yaXR5LWNvbG9yLTQ6aG92ZXIgLnByaW9yaXR5LWxhYmVsLCAucHJpb3JpdHktY29sb3ItNC5hY3RpdmUgLnByaW9yaXR5LWxhYmVsIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogI0U5M0M1MTtcbn1cblxuLnByaW9yaXR5LWNvbG9yLTQgLmwtZ3JpZC1wcmlvcml0eS1kb3duIHtcbiAgYmFja2dyb3VuZDogI0M4MzQ0Njtcbn1cblxuLnByaW9yaXR5LWNvbG9yLTUucHJpb3JpdHktY29udGVudCB7XG4gIGJvcmRlcjogOHB4IHNvbGlkICM4MTNEOTc7XG59XG5cbi5wcmlvcml0eS1jb2xvci01LnByaW9yaXR5LXRhYiB7XG4gIGJhY2tncm91bmQtY29sb3I6ICM4MTNEOTc7XG59XG5cbi5wcmlvcml0eS1jb2xvci01IC5wcmlvcml0eS1sYWJlbCB7XG4gIGJhY2tncm91bmQtY29sb3I6ICM2QTMyN0M7XG59XG5cbi5wcmlvcml0eS1jb2xvci01IC5wcmlvcml0eS10YWItLWNoZXZyb24ge1xuICBjb2xvcjogIzZBMzI3Qztcbn1cblxuLnByaW9yaXR5LWNvbG9yLTUgLnByaW9yaXR5LWNvbnRlbnQtLXRpdGxlIHtcbiAgY29sb3I6ICM4MTNEOTc7XG59XG5cbi5wcmlvcml0eS1jb2xvci01OmhvdmVyIC5wcmlvcml0eS10YWItLWNoZXZyb24sIC5wcmlvcml0eS1jb2xvci01LmFjdGl2ZSAucHJpb3JpdHktdGFiLS1jaGV2cm9uIHtcbiAgY29sb3I6ICM4MTNEOTc7XG59XG5cbi5wcmlvcml0eS1jb2xvci01OmhvdmVyIC5wcmlvcml0eS1sYWJlbCwgLnByaW9yaXR5LWNvbG9yLTUuYWN0aXZlIC5wcmlvcml0eS1sYWJlbCB7XG4gIGJhY2tncm91bmQtY29sb3I6ICM4MTNEOTc7XG59XG5cbi5wcmlvcml0eS1jb2xvci01IC5sLWdyaWQtcHJpb3JpdHktZG93biB7XG4gIGJhY2tncm91bmQ6ICM2QTMyN0M7XG59XG5cbkBtZWRpYSAobWluLXdpZHRoOiAxNDIycHgpIGFuZCAobWF4LXdpZHRoOiAxNjAwcHgpIHtcbiAgLnByaW9yaXR5LXRhYiB7XG4gICAgZm9udC1zaXplOiAyOHB4O1xuICB9XG59XG5cbkBtZWRpYSAobWluLXdpZHRoOiA2Ni42NjY2N2VtKSBhbmQgKG1heC13aWR0aDogODguODg4ODllbSkge1xuICAucHJpb3JpdHktdGFiIHtcbiAgICBmb250LXNpemU6IDI0cHg7XG4gIH1cbiAgLmJ0bi5wcmlvcml0eS1jb250ZW50LS1saW5rIHtcbiAgICBtYXJnaW4tbGVmdDogMDtcbiAgfVxuICAubC1ncmlkLXByaW9yaXR5IC5ncmlkLWl0ZW0tMyB7XG4gICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICB9XG4gIC5wcmlvcml0eS1jb250ZW50IHtcbiAgICBwYWRkaW5nLWxlZnQ6IDE1cHggIWltcG9ydGFudDtcbiAgICBwYWRkaW5nLXJpZ2h0OiAxNXB4ICFpbXBvcnRhbnQ7XG4gIH1cbn1cblxuQG1lZGlhIChtaW4td2lkdGg6IDUzLjMzMzMzZW0pIGFuZCAobWF4LXdpZHRoOiA2Ni42NjY2N2VtKSB7XG4gIC5wcmlvcml0eS10YWIge1xuICAgIHdpZHRoOiBjYWxjKDEwMCUgLyA1KTtcbiAgfVxuICAucHJpb3JpdHktdGFicy0taGVhZGVyIHtcbiAgICBtYXJnaW46IDAgMjNweDtcbiAgfVxuICAuYnRuLnByaW9yaXR5LWNvbnRlbnQtLWxpbmsge1xuICAgIG1hcmdpbi1sZWZ0OiAwO1xuICB9XG4gIC5sLWdyaWQtcHJpb3JpdHkgLmdyaWQtaXRlbS0zIHtcbiAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gIH1cbn1cblxuQG1lZGlhIChtaW4td2lkdGg6IDI2LjY2NjY3ZW0pIGFuZCAobWF4LXdpZHRoOiA0Mi42NjY2N2VtKSB7XG4gIC5idG4ucHJpb3JpdHktY29udGVudC0tbGluayB7XG4gICAgd2lkdGg6IDE1LjI1cmVtO1xuICAgIHBhZGRpbmc6IDEwcHggMDtcbiAgICBtYXJnaW46IDEuNHJlbSAwIDA7XG4gICAgZm9udC1zaXplOiAyLjJyZW07XG4gIH1cbn1cblxuQG1lZGlhIChtYXgtd2lkdGg6IDY2LjY2NjY3ZW0pIHtcbiAgLnByaW9yaXR5LWNvbnRlbnQge1xuICAgIHBhZGRpbmctbGVmdDogMzBweCAhaW1wb3J0YW50O1xuICAgIHBhZGRpbmctcmlnaHQ6IDMwcHggIWltcG9ydGFudDtcbiAgfVxufVxuXG5AbWVkaWEgKG1heC13aWR0aDogNTMuMzMzMzNlbSkge1xuICAucHJpb3JpdHktdGFiIHtcbiAgICB3aWR0aDogY2FsYygxMDAlIC8gNSk7XG4gICAgYm9yZGVyLWxlZnQtd2lkdGg6IDhweDtcbiAgICBib3JkZXItcmlnaHQtd2lkdGg6IDhweDtcbiAgfVxuICAucHJpb3JpdHktdGFicy0taGVhZGVyIHtcbiAgICBtYXJnaW46IDAgMjNweDtcbiAgfVxuICAuYnRuLnByaW9yaXR5LWNvbnRlbnQtLWxpbmsge1xuICAgIHdpZHRoOiAxNS4yNXJlbTtcbiAgICBwYWRkaW5nOiAxN3B4IDA7XG4gICAgbWFyZ2luOiAxLjRyZW0gMCAwO1xuICB9XG4gIC5wcmlvcml0eS1jb250ZW50LS1tYWluIHAge1xuICAgIG1hcmdpbi10b3A6IDFyZW0gIWltcG9ydGFudDtcbiAgfVxuICAucHJpb3JpdHktY29udGVudC0tdGl0bGUge1xuICAgIGZvbnQtc2l6ZTogNHJlbTtcbiAgfVxufVxuXG5AbWVkaWEgKG1heC13aWR0aDogNDIuNjY2NjdlbSkge1xuICAucHJpb3JpdHktdGFiIHtcbiAgICBwYWRkaW5nOiAxLjhyZW0gMCAwO1xuICAgIHdpZHRoOiBjYWxjKDEwMCUgLyA1KTtcbiAgICBib3JkZXItbGVmdC13aWR0aDogNnB4O1xuICAgIGJvcmRlci1yaWdodC13aWR0aDogNnB4O1xuICAgIHRyYW5zaXRpb246IDBzIHBhZGRpbmctdG9wO1xuICB9XG4gIC5wcmlvcml0eS10YWIgLnByaW9yaXR5LWljb24ge1xuICAgIGhlaWdodDogNXJlbTtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgei1pbmRleDogMztcbiAgICBtYXJnaW46IDAgMCAtMC4zZW07XG4gIH1cbiAgLnByaW9yaXR5LXRhYiAucHJpb3JpdHktbGFiZWwge1xuICAgIG1hcmdpbi10b3A6IC00Ljg3NXJlbTtcbiAgICBwYWRkaW5nLWJvdHRvbTogMy43NXJlbTtcbiAgfVxuICAucHJpb3JpdHktdGFiIC5wcmlvcml0eS1sYWJlbC0tdGV4dCB7XG4gICAgZGlzcGxheTogbm9uZTtcbiAgfVxuICAucHJpb3JpdHktdGFiLmFjdGl2ZSwgLnByaW9yaXR5LXRhYjpob3ZlciB7XG4gICAgbGluZS1oZWlnaHQ6IDY7XG4gICAgdHJhbnNpdGlvbjogMC4ycyBsaW5lLWhlaWdodDtcbiAgfVxuICAucHJpb3JpdHktdGFiLmFjdGl2ZSAucHJpb3JpdHktdGFiLS1jaGV2cm9uLCAucHJpb3JpdHktdGFiOmhvdmVyIC5wcmlvcml0eS10YWItLWNoZXZyb24ge1xuICAgIG1hcmdpbi10b3A6IC0yMnB4O1xuICAgIHRyYW5zaXRpb246IDAuMnMgbWFyZ2luLXRvcDtcbiAgfVxuICAucHJpb3JpdHktdGFicyAucHJpb3JpdHktY29udGVudC5hY3RpdmUge1xuICAgIGJvcmRlci13aWR0aDogNXB4ICFpbXBvcnRhbnQ7XG4gIH1cbiAgLnByaW9yaXR5LXRhYnMgLnByaW9yaXR5LXRhYnMtLWhlYWRlciB7XG4gICAgbWFyZ2luOiAwIDIwcHg7XG4gIH1cbiAgLnByaW9yaXR5LWNvbnRlbnQtLW1haW4gcCB7XG4gICAgZm9udC1zaXplOiAxOHB4O1xuICB9XG4gIC5wcmlvcml0eS10YWJzLS1jb250ZW50IC5wcmlvcml0eS1jb250ZW50LS10aXRsZSB7XG4gICAgZm9udC1zaXplOiAzNHB4O1xuICB9XG59XG5cbkBtZWRpYSAobWF4LXdpZHRoOiAyNi42NjY2N2VtKSB7XG4gIC5idG4ucHJpb3JpdHktY29udGVudC0tbGluayB7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgcGFkZGluZzogMTBweCAwO1xuICAgIGZvbnQtc2l6ZTogMi4ycmVtO1xuICB9XG4gIC51bmRlci1wcmlvcml0aWVzIHtcbiAgICBwYWRkaW5nOiAwIDMwcHg7XG4gIH1cbiAgLnVuZGVyLXByaW9yaXRpZXMgLmJ0biB7XG4gICAgcGFkZGluZzogMTBweCAwIDExcHg7XG4gIH1cbiAgLnByaW9yaXR5LXRhYiAucHJpb3JpdHktaWNvbiB7XG4gICAgbWFyZ2luOiAwIDAgLTAuNDVlbTtcbiAgfVxuICAucHJpb3JpdHktdGFicy0tY29udGVudCAucHJpb3JpdHktY29udGVudC0tdGl0bGUge1xuICAgIGZvbnQtc2l6ZTogMjhweDtcbiAgfVxufVxuXG4vKlxyXG4gKiBOb3Qgc3VyZSB3aGF0IHRoaXMgbWVhbnQgdG8gZG8gYnV0IGl0IGRpc2FibGVzIHBhcmFsbGF4IG9uIElFIGZvciBzdXJlXHJcbkBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6MFxcMCkgYW5kIChtaW4tcmVzb2x1dGlvbjogKzcyZHBpKSB7XHJcbiAgICAvLyBJRTkrIENTU1xyXG4gICAgLnN0YW5kYXJkLWJnIHtcclxuICAgICAgICBiYWNrZ3JvdW5kLWF0dGFjaG1lbnQ6IHNjcm9sbCFpbXBvcnRhbnQ7XHJcbiAgICB9XHJcbn0qL1xuQHN1cHBvcnRzICgtbXMtaW1lLWFsaWduOiBhdXRvKSB7XG4gIC5wcmlvcml0eS10YWIge1xuICAgIG1hcmdpbi1yaWdodDogLTFweDtcbiAgfVxufVxuXG4uY2VvLWludHJvZHVjdGlvbiB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgcGFkZGluZzogNGVtIDAgNi45MmVtO1xuICB3aWR0aDogMTAwJTtcbn1cblxuLmNlby1pbnRyb2R1Y3Rpb24gLnBlcnNvbiB7XG4gIHotaW5kZXg6IC0xO1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIGJvdHRvbTogMDtcbn1cblxuLmNlby1pbnRyb2R1Y3Rpb24gLnBlcnNvbiBpbWcge1xuICBtYXJnaW46IDA7XG4gIGRpc3BsYXk6IGJsb2NrO1xufVxuXG4uY2VvLWludHJvZHVjdGlvbiAucGVyc29uLnBlcnNvbi0xIHtcbiAgbGVmdDogMDtcbn1cblxuLmNlby1pbnRyb2R1Y3Rpb24gLnBlcnNvbi5wZXJzb24tMiB7XG4gIHJpZ2h0OiAwO1xufVxuXG4uY2VvLWludHJvZHVjdGlvbiAudGV4dC13cmFwIGgyIHtcbiAgZm9udC1zaXplOiA1MHB4O1xuICBmb250LXdlaWdodDogNzAwO1xuICBjb2xvcjogIzU1NTU1NTtcbiAgbGluZS1oZWlnaHQ6IDEuMDg7XG4gIGxldHRlci1zcGFjaW5nOiAtMC4ycHg7XG59XG5cbi5jZW8taW50cm9kdWN0aW9uIC50ZXh0LXdyYXAgaDIgc3BhbiB7XG4gIGNvbG9yOiAjMDA3MUNFO1xufVxuXG4uY2VvLWludHJvZHVjdGlvbiAudGV4dC13cmFwIC5idG4ge1xuICBtYXJnaW4tdG9wOiAwLjhlbTtcbn1cblxuQG1lZGlhIChtaW4td2lkdGg6IDY2LjY2NjY3ZW0pIGFuZCAobWF4LXdpZHRoOiA4OC44ODg4OWVtKSB7XG4gIC5jZW8taW50cm9kdWN0aW9uIHtcbiAgICBmb250LXNpemU6IDE2cHg7XG4gIH1cbiAgLmNlby1pbnRyb2R1Y3Rpb24gLnRleHQtd3JhcCBoMiB7XG4gICAgZm9udC1zaXplOiA0M3B4O1xuICB9XG59XG5cbkBtZWRpYSAobWluLXdpZHRoOiA1My4zMzMzM2VtKSBhbmQgKG1heC13aWR0aDogNjYuNjY2NjdlbSkge1xuICAuY2VvLWludHJvZHVjdGlvbiB7XG4gICAgZm9udC1zaXplOiAxNHB4O1xuICB9XG4gIC5jZW8taW50cm9kdWN0aW9uIC50ZXh0LXdyYXAgaDIge1xuICAgIGZvbnQtc2l6ZTogMzlweDtcbiAgfVxufVxuXG5AbWVkaWEgKG1pbi13aWR0aDogNDIuNjY2NjdlbSkgYW5kIChtYXgtd2lkdGg6IDUzLjMzMzMzZW0pIHtcbiAgLmNlby1pbnRyb2R1Y3Rpb24ge1xuICAgIGZvbnQtc2l6ZTogMTJweDtcbiAgfVxuICAuY2VvLWludHJvZHVjdGlvbiAudGV4dC13cmFwIGgyIHtcbiAgICBmb250LXNpemU6IDM2cHg7XG4gIH1cbn1cblxuQG1lZGlhIChtaW4td2lkdGg6IDI2LjY2NjY3ZW0pIGFuZCAobWF4LXdpZHRoOiA0Mi42NjY2N2VtKSB7XG4gIC5jZW8taW50cm9kdWN0aW9uIHtcbiAgICBmb250LXNpemU6IDEwcHg7XG4gIH1cbiAgLmNlby1pbnRyb2R1Y3Rpb24gLnRleHQtd3JhcCBoMiB7XG4gICAgZm9udC1zaXplOiAyOHB4O1xuICB9XG59XG5cbkBtZWRpYSAobWF4LXdpZHRoOiAyNi42NjY2N2VtKSB7XG4gIC5jZW8taW50cm9kdWN0aW9uIHtcbiAgICBmb250LXNpemU6IDhweDtcbiAgfVxuICAuY2VvLWludHJvZHVjdGlvbiAudGV4dC13cmFwIGgyIHtcbiAgICBmb250LXNpemU6IDI2cHg7XG4gIH1cbn1cblxuQG1lZGlhIChtYXgtd2lkdGg6IDUzLjMzMzMzZW0pIHtcbiAgLmNlby1pbnRyb2R1Y3Rpb24ge1xuICAgIG1hcmdpbi1ib3R0b206IC0ycHg7XG4gIH1cbiAgLmNlby1pbnRyb2R1Y3Rpb24gLnRleHQtd3JhcCB7XG4gICAgcGFkZGluZzogMCAxNXB4O1xuICB9XG59XG5cbkBtZWRpYSAobWF4LXdpZHRoOiA0Mi42NjY2N2VtKSB7XG4gIC5jZW8taW50cm9kdWN0aW9uIGJyIHtcbiAgICBkaXNwbGF5OiBub25lO1xuICB9XG4gIC5jZW8taW50cm9kdWN0aW9uIC50ZXh0LXdyYXAgaDIge1xuICAgIG1hcmdpbi1ib3R0b206IDEwcHg7XG4gIH1cbn1cblxuLm51bWJlcnMge1xuICBiYWNrZ3JvdW5kOiAjMDA3MUNFO1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gIHBhZGRpbmc6IDMuOGVtIDAgNC40ZW07XG59XG5cbi5udW1iZXJzIC5pY29uLWhvbGRlciB7XG4gIG1pbi1oZWlnaHQ6IDE1N3B4O1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG59XG5cbi5udW1iZXJzIC5pY29uLWhvbGRlci5pY29uLTEgaW1nIHtcbiAgdG9wOiAyMHB4O1xufVxuXG4ubnVtYmVycyAuaWNvbi1ob2xkZXIuaWNvbi0yIGltZyB7XG4gIGxlZnQ6IC04cHg7XG59XG5cbi5udW1iZXJzIC5pY29uLWhvbGRlci5pY29uLTMgaW1nIHtcbiAgdG9wOiAtOHB4O1xufVxuXG4ubnVtYmVycyBpbWcge1xuICBkaXNwbGF5OiBibG9jaztcbiAgbWFyZ2luOiBhdXRvO1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIGJvdHRvbTogMDtcbiAgbGVmdDogMDtcbiAgcmlnaHQ6IDA7XG4gIHRvcDogMDtcbn1cblxuLm51bWJlcnMgaDMuY291bnQge1xuICBkaXNwbGF5OiBibG9jaztcbiAgZm9udC1mYW1pbHk6IFwiQmViYXMgTmV1ZVwiLCBcIkhlbHZldGljYSBOZXVlXCIsIEhlbHZldGljYSwgQXJpYWwsIHNhbnMtc2VyaWY7XG4gIGZvbnQtc2l6ZTogOS4zNzVyZW07XG4gIGNvbG9yOiAjYThkMmViO1xuICBtYXJnaW4tdG9wOiAwLjEyNWVtO1xuICBsaW5lLWhlaWdodDogMC45O1xufVxuXG4ubnVtYmVycyBwIHtcbiAgY29sb3I6ICNGRkY7XG4gIGZvbnQtc2l6ZTogMzBweDtcbiAgbWFyZ2luOiAtMC4zZW0gMCAwO1xufVxuXG4ubnVtYmVycyAuYnRuIHtcbiAgbWFyZ2luLXRvcDogMi4zNWVtO1xufVxuXG5AbWVkaWEgKG1pbi13aWR0aDogNjYuNjY2NjdlbSkgYW5kIChtYXgtd2lkdGg6IDg4Ljg4ODg5ZW0pIHtcbiAgLm51bWJlcnMgcCB7XG4gICAgZm9udC1zaXplOiAyOHB4O1xuICB9XG59XG5cbkBtZWRpYSAobWluLXdpZHRoOiA1My4zMzMzM2VtKSBhbmQgKG1heC13aWR0aDogNjYuNjY2NjdlbSkge1xuICAubnVtYmVycyBwIHtcbiAgICBmb250LXNpemU6IDI0cHg7XG4gIH1cbiAgLm51bWJlcnMge1xuICAgIGZvbnQtc2l6ZTogMTRweDtcbiAgfVxufVxuXG5AbWVkaWEgKG1pbi13aWR0aDogNDIuNjY2NjdlbSkgYW5kIChtYXgtd2lkdGg6IDUzLjMzMzMzZW0pIHtcbiAgLm51bWJlcnMgcCB7XG4gICAgZm9udC1zaXplOiAyMnB4O1xuICB9XG4gIC5udW1iZXJzIHtcbiAgICBmb250LXNpemU6IDEycHg7XG4gIH1cbn1cblxuQG1lZGlhIChtaW4td2lkdGg6IDI2LjY2NjY3ZW0pIGFuZCAobWF4LXdpZHRoOiA0Mi42NjY2N2VtKSB7XG4gIC5udW1iZXJzIHtcbiAgICBmb250LXNpemU6IDEwcHg7XG4gIH1cbiAgLm51bWJlcnMgcCB7XG4gICAgZm9udC1zaXplOiAyMnB4O1xuICB9XG4gIC5udW1iZXJzIC5ncmlkLWl0ZW0tMSB7XG4gICAgbWFyZ2luLWJvdHRvbTogMy41ZW07XG4gIH1cbiAgLm51bWJlcnMgLmdyaWQtaXRlbS0xOmxhc3QtY2hpbGQge1xuICAgIG1hcmdpbi1ib3R0b206IDA7XG4gIH1cbiAgLm51bWJlcnMgLmljb24taG9sZGVyIHtcbiAgICBtaW4taGVpZ2h0OiAwO1xuICB9XG4gIC5udW1iZXJzIC5pY29uLWhvbGRlciBpbWcge1xuICAgIHBvc2l0aW9uOiBzdGF0aWM7XG4gICAgbWF4LWhlaWdodDogOTBweDtcbiAgfVxufVxuXG5AbWVkaWEgKG1heC13aWR0aDogMjYuNjY2NjdlbSkge1xuICAubnVtYmVycyB7XG4gICAgZm9udC1zaXplOiA4cHg7XG4gIH1cbiAgLm51bWJlcnMgcCB7XG4gICAgZm9udC1zaXplOiAyMHB4O1xuICAgIGxpbmUtaGVpZ2h0OiAxO1xuICAgIG1hcmdpbi10b3A6IDAuMDVlbTtcbiAgfVxuICAubnVtYmVycyAuZ3JpZC1pdGVtLTEge1xuICAgIG1hcmdpbi1ib3R0b206IDNlbTtcbiAgfVxuICAubnVtYmVycyAuZ3JpZC1pdGVtLTE6bGFzdC1jaGlsZCB7XG4gICAgbWFyZ2luLWJvdHRvbTogMDtcbiAgfVxuICAubnVtYmVycyAuaWNvbi1ob2xkZXIge1xuICAgIG1pbi1oZWlnaHQ6IDA7XG4gIH1cbiAgLm51bWJlcnMgLmljb24taG9sZGVyIGltZyB7XG4gICAgcG9zaXRpb246IHN0YXRpYztcbiAgICBtYXgtaGVpZ2h0OiA4NXB4O1xuICB9XG59XG5cbi5zdHJhdGVneS1pbnRyb2R1Y3Rpb24ge1xuICBwYWRkaW5nOiAzLjU0NWVtIDAgMDtcbn1cblxuLnN0cmF0ZWd5LWludHJvZHVjdGlvbiAudGV4dC1ob2xkZXIge1xuICBwYWRkaW5nOiAwIDI1cHg7XG59XG5cbi5zdHJhdGVneS1pbnRyb2R1Y3Rpb24gLnRleHQtaG9sZGVyIGgyIHtcbiAgbWFyZ2luLWJvdHRvbTogMC45NWVtO1xufVxuXG4uc3RyYXRlZ3ktaW50cm9kdWN0aW9uIC50ZXh0LWhvbGRlciBwIHtcbiAgZm9udC1zaXplOiAzMHB4O1xuICBsaW5lLWhlaWdodDogMS40O1xufVxuXG4uc3RyYXRlZ3ktaW50cm9kdWN0aW9uIC50ZXh0LWhvbGRlciAuYnRuIHtcbiAgbWFyZ2luLXRvcDogMS4yZW07XG59XG5cbi5zdHJhdGVneS1pbnRyb2R1Y3Rpb24gLmJnIHtcbiAgYmFja2dyb3VuZDogdXJsKC4uL2ltYWdlcy9pbmRleHN0cmF0ZWd5LWJnLmpwZykgYm90dG9tIGNlbnRlciBmaXhlZCBuby1yZXBlYXQ7XG4gIGJhY2tncm91bmQtc2l6ZTogY292ZXI7XG4gIGhlaWdodDogNzUwcHg7XG4gIG1hcmdpbi10b3A6IDYuMDVlbTtcbn1cblxuQG1lZGlhIChtaW4td2lkdGg6IDY2LjY2NjY3ZW0pIGFuZCAobWF4LXdpZHRoOiA4OC44ODg4OWVtKSB7XG4gIC5zdHJhdGVneS1pbnRyb2R1Y3Rpb24gLmJnIHtcbiAgICBmb250LXNpemU6IDE2cHg7XG4gICAgaGVpZ2h0OiA2NTBweDtcbiAgfVxuICAuc3RyYXRlZ3ktaW50cm9kdWN0aW9uIHtcbiAgICBmb250LXNpemU6IDE2cHg7XG4gIH1cbiAgLnN0cmF0ZWd5LWludHJvZHVjdGlvbiAudGV4dC1ob2xkZXIgcCB7XG4gICAgZm9udC1zaXplOiAyNnB4O1xuICB9XG59XG5cbkBtZWRpYSAobWluLXdpZHRoOiA1My4zMzMzM2VtKSBhbmQgKG1heC13aWR0aDogNjYuNjY2NjdlbSkge1xuICAuc3RyYXRlZ3ktaW50cm9kdWN0aW9uIC5iZyB7XG4gICAgZm9udC1zaXplOiAxNHB4O1xuICAgIGhlaWdodDogNTUwcHg7XG4gIH1cbiAgLnN0cmF0ZWd5LWludHJvZHVjdGlvbiB7XG4gICAgZm9udC1zaXplOiAxNHB4O1xuICB9XG4gIC5zdHJhdGVneS1pbnRyb2R1Y3Rpb24gLnRleHQtaG9sZGVyIHAge1xuICAgIGZvbnQtc2l6ZTogMjRweDtcbiAgfVxufVxuXG5AbWVkaWEgKG1pbi13aWR0aDogNDIuNjY2NjdlbSkgYW5kIChtYXgtd2lkdGg6IDUzLjMzMzMzZW0pIHtcbiAgLnN0cmF0ZWd5LWludHJvZHVjdGlvbiAuYmcge1xuICAgIGZvbnQtc2l6ZTogMTJweDtcbiAgICBoZWlnaHQ6IDQ1MHB4O1xuICB9XG4gIC5zdHJhdGVneS1pbnRyb2R1Y3Rpb24ge1xuICAgIGZvbnQtc2l6ZTogMTJweDtcbiAgfVxuICAuc3RyYXRlZ3ktaW50cm9kdWN0aW9uIC50ZXh0LWhvbGRlciBwIHtcbiAgICBmb250LXNpemU6IDIycHg7XG4gIH1cbn1cblxuQG1lZGlhIChtaW4td2lkdGg6IDI2LjY2NjY3ZW0pIGFuZCAobWF4LXdpZHRoOiA0Mi42NjY2N2VtKSB7XG4gIC5zdHJhdGVneS1pbnRyb2R1Y3Rpb24gLmJnIHtcbiAgICBmb250LXNpemU6IDEwcHg7XG4gICAgaGVpZ2h0OiAzNTBweDtcbiAgfVxuICAuc3RyYXRlZ3ktaW50cm9kdWN0aW9uIHtcbiAgICBmb250LXNpemU6IDEwcHg7XG4gIH1cbiAgLnN0cmF0ZWd5LWludHJvZHVjdGlvbiAudGV4dC1ob2xkZXIgcCB7XG4gICAgZm9udC1zaXplOiAyMHB4O1xuICB9XG59XG5cbkBtZWRpYSAobWF4LXdpZHRoOiAyNi42NjY2N2VtKSB7XG4gIC5zdHJhdGVneS1pbnRyb2R1Y3Rpb24gLmJnIHtcbiAgICBmb250LXNpemU6IDhweDtcbiAgICBoZWlnaHQ6IDMwMHB4O1xuICB9XG4gIC5zdHJhdGVneS1pbnRyb2R1Y3Rpb24ge1xuICAgIGZvbnQtc2l6ZTogOHB4O1xuICB9XG4gIC5zdHJhdGVneS1pbnRyb2R1Y3Rpb24gLnRleHQtaG9sZGVyIHAge1xuICAgIGZvbnQtc2l6ZTogMThweDtcbiAgfVxufVxuXG5AbWVkaWEgKG1heC13aWR0aDogNjYuNjY2NjdlbSkge1xuICAuc3RyYXRlZ3ktaW50cm9kdWN0aW9uIC50ZXh0LWhvbGRlciB7XG4gICAgcGFkZGluZzogMDtcbiAgfVxuICAuc3RyYXRlZ3ktaW50cm9kdWN0aW9uIC5iZyB7XG4gICAgYmFja2dyb3VuZC1hdHRhY2htZW50OiBzY3JvbGw7XG4gIH1cbn1cblxuQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogMFxcMCkgYW5kIChtaW4tcmVzb2x1dGlvbjogNzJkcGkpIHtcbiAgLnN0cmF0ZWd5LWludHJvZHVjdGlvbiAuYmcge1xuICAgIGJhY2tncm91bmQtYXR0YWNobWVudDogc2Nyb2xsICFpbXBvcnRhbnQ7XG4gIH1cbn1cblxuLnByaW5jaXBsZXMtaW50cm9kdWN0aW9uIHtcbiAgcGFkZGluZzogMy41ZW0gMCA2ZW07XG59XG5cbi5wcmluY2lwbGVzLWludHJvZHVjdGlvbiAuaWNvbi1ob2xkZXIge1xuICBtaW4taGVpZ2h0OiAxNjhweDtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBtYXJnaW4tdG9wOiAyMXB4O1xufVxuXG4ucHJpbmNpcGxlcy1pbnRyb2R1Y3Rpb24gLmljb24taG9sZGVyLmljb24tMiBpbWcge1xuICBsZWZ0OiAtNDJweDtcbiAgYm90dG9tOiA2cHg7XG59XG5cbi5wcmluY2lwbGVzLWludHJvZHVjdGlvbiAuaWNvbi1ob2xkZXIuaWNvbi0zIGltZyB7XG4gIGJvdHRvbTogMTZweDtcbn1cblxuLnByaW5jaXBsZXMtaW50cm9kdWN0aW9uIGltZyB7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBtYXJnaW46IGF1dG87XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgYm90dG9tOiAwO1xuICBsZWZ0OiAwO1xuICByaWdodDogMDtcbiAgdG9wOiAwO1xufVxuXG4ucHJpbmNpcGxlcy1pbnRyb2R1Y3Rpb24gaDQge1xuICBmb250LXdlaWdodDogNzAwO1xuICBmb250LXNpemU6IDMwcHg7XG4gIG1hcmdpbjogMC40ZW0gMCAwO1xuICBsaW5lLWhlaWdodDogMS40O1xuICBsZXR0ZXItc3BhY2luZzogMC4ycHg7XG4gIGZvbnQtZmFtaWx5OiBcIlNlbnNpYmlsaXR5XCIsIFwiSGVsdmV0aWNhIE5ldWVcIiwgSGVsdmV0aWNhLCBBcmlhbCwgc2Fucy1zZXJpZjtcbiAgY29sb3I6ICM1NTU1NTU7XG59XG5cbi5wcmluY2lwbGVzLWludHJvZHVjdGlvbiBhLmJ0biB7XG4gIG1hcmdpbi10b3A6IDIuOGVtO1xufVxuXG5AbWVkaWEgKG1pbi13aWR0aDogNjYuNjY2NjdlbSkgYW5kIChtYXgtd2lkdGg6IDg4Ljg4ODg5ZW0pIHtcbiAgLnByaW5jaXBsZXMtaW50cm9kdWN0aW9uIHtcbiAgICBmb250LXNpemU6IDE2cHg7XG4gIH1cbiAgLnByaW5jaXBsZXMtaW50cm9kdWN0aW9uIGg0IHtcbiAgICBmb250LXNpemU6IDI0cHg7XG4gIH1cbn1cblxuQG1lZGlhIChtaW4td2lkdGg6IDUzLjMzMzMzZW0pIGFuZCAobWF4LXdpZHRoOiA2Ni42NjY2N2VtKSB7XG4gIC5wcmluY2lwbGVzLWludHJvZHVjdGlvbiB7XG4gICAgZm9udC1zaXplOiAxNHB4O1xuICB9XG4gIC5wcmluY2lwbGVzLWludHJvZHVjdGlvbiBoNCB7XG4gICAgZm9udC1zaXplOiAyMHB4O1xuICB9XG59XG5cbkBtZWRpYSAobWluLXdpZHRoOiA0Mi42NjY2N2VtKSBhbmQgKG1heC13aWR0aDogNTMuMzMzMzNlbSkge1xuICAucHJpbmNpcGxlcy1pbnRyb2R1Y3Rpb24ge1xuICAgIGZvbnQtc2l6ZTogMTBweDtcbiAgfVxuICAucHJpbmNpcGxlcy1pbnRyb2R1Y3Rpb24gaDQge1xuICAgIGZvbnQtc2l6ZTogMThweDtcbiAgfVxufVxuXG5AbWVkaWEgKG1pbi13aWR0aDogMjYuNjY2NjdlbSkgYW5kIChtYXgtd2lkdGg6IDQyLjY2NjY3ZW0pIHtcbiAgLnByaW5jaXBsZXMtaW50cm9kdWN0aW9uIHtcbiAgICBmb250LXNpemU6IDhweDtcbiAgfVxuICAucHJpbmNpcGxlcy1pbnRyb2R1Y3Rpb24gaW1nIHtcbiAgICBtYXgtaGVpZ2h0OiA5MHB4O1xuICB9XG4gIC5wcmluY2lwbGVzLWludHJvZHVjdGlvbiAuaWNvbi1ob2xkZXIge1xuICAgIG1pbi1oZWlnaHQ6IDkwcHg7XG4gIH1cbiAgLnByaW5jaXBsZXMtaW50cm9kdWN0aW9uIGg0IHtcbiAgICBmb250LXNpemU6IDIycHg7XG4gIH1cbn1cblxuQG1lZGlhIChtYXgtd2lkdGg6IDI2LjY2NjY3ZW0pIHtcbiAgLnByaW5jaXBsZXMtaW50cm9kdWN0aW9uIHtcbiAgICBmb250LXNpemU6IDhweDtcbiAgfVxuICAucHJpbmNpcGxlcy1pbnRyb2R1Y3Rpb24gaW1nIHtcbiAgICBtYXgtaGVpZ2h0OiA4NXB4O1xuICB9XG4gIC5wcmluY2lwbGVzLWludHJvZHVjdGlvbiAuaWNvbi1ob2xkZXIge1xuICAgIG1pbi1oZWlnaHQ6IDg1cHg7XG4gIH1cbiAgLnByaW5jaXBsZXMtaW50cm9kdWN0aW9uIGg0IHtcbiAgICBmb250LXNpemU6IDIwcHg7XG4gIH1cbn1cblxuQG1lZGlhIChtYXgtd2lkdGg6IDQyLjY2NjY3ZW0pIHtcbiAgLnByaW5jaXBsZXMtaW50cm9kdWN0aW9uIGg0IHtcbiAgICBtYXgtd2lkdGg6IDQwMHB4O1xuICAgIG1hcmdpbi1sZWZ0OiBhdXRvO1xuICAgIG1hcmdpbi1yaWdodDogYXV0bztcbiAgfVxuICAucHJpbmNpcGxlcy1pbnRyb2R1Y3Rpb24gLmljb24taG9sZGVyLmljb24tMiBpbWcge1xuICAgIGxlZnQ6IC0yNHB4O1xuICB9XG4gIC5wcmluY2lwbGVzLWludHJvZHVjdGlvbiAuaWNvbi1ob2xkZXIgaW1nIHtcbiAgICBib3R0b206IDAgIWltcG9ydGFudDtcbiAgfVxufVxuXG4uYm94ZXMge1xuICB3aWR0aDogMTAwJTtcbn1cblxuLmJveGVzIC5ib3gge1xuICBwYWRkaW5nLXRvcDogMjUuMDYlO1xuICBmbG9hdDogbGVmdDtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBiYWNrZ3JvdW5kLXNpemU6IGNvdmVyO1xuICBiYWNrZ3JvdW5kLXJlcGVhdDogbm8tcmVwZWF0O1xuICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiBjZW50ZXI7XG59XG5cbi5ib3hlcyAuYm94LmJveC0xIHtcbiAgYmFja2dyb3VuZC1pbWFnZTogdXJsKC4uL2ltYWdlcy9pbmRleGJveC0xLmpwZyk7XG59XG5cbi5ib3hlcyAuYm94LmJveC0yIHtcbiAgYmFja2dyb3VuZC1pbWFnZTogdXJsKC4uL2ltYWdlcy9pbmRleGJveC0yLmpwZyk7XG59XG5cbi5ib3hlcyAuYm94LmJveC0zIHtcbiAgYmFja2dyb3VuZC1pbWFnZTogdXJsKC4uL2ltYWdlcy9pbmRleGJveC0zLmpwZyk7XG59XG5cbi5ib3hlcyAuYm94OmFmdGVyIHtcbiAgY29udGVudDogJyc7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBjbGVhcjogYm90aDtcbn1cblxuLmJveGVzIC5ib3ggLmJveC1jb250ZW50IHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB0b3A6IDUwJTtcbiAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTUwJSk7XG4gIC1tcy10cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTUwJSk7XG4gIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgtNTAlKTtcbiAgbGVmdDogMDtcbiAgcmlnaHQ6IDA7XG4gIG1hcmdpbi10b3A6IC00cHg7XG59XG5cbi5ib3hlcyAuYm94IC5ib3gtY29udGVudCBoMyB7XG4gIGZvbnQtZmFtaWx5OiBcIkJlYmFzIE5ldWVcIiwgXCJIZWx2ZXRpY2EgTmV1ZVwiLCBIZWx2ZXRpY2EsIEFyaWFsLCBzYW5zLXNlcmlmO1xuICBjb2xvcjogI0ZGRjtcbiAgZm9udC1zaXplOiA2NXB4O1xuICBtYXJnaW46IDAgMCAyMHB4O1xufVxuXG5AbWVkaWEgKG1pbi13aWR0aDogNjYuNjY2NjdlbSkgYW5kIChtYXgtd2lkdGg6IDg4Ljg4ODg5ZW0pIHtcbiAgLmJveGVzIC5ib3ggLmJveC1jb250ZW50IGgzIHtcbiAgICBmb250LXNpemU6IDU0cHg7XG4gIH1cbn1cblxuQG1lZGlhIChtYXgtd2lkdGg6IDI2LjY2NjY3ZW0pIHtcbiAgLmJveGVzIC5ib3ggLmJveC1jb250ZW50IGgzIHtcbiAgICBmb250LXNpemU6IDU0cHg7XG4gIH1cbn1cblxuQG1lZGlhIChtYXgtd2lkdGg6IDY2LjY2NjY3ZW0pIHtcbiAgLmJveGVzIC5ib3gge1xuICAgIGZsb2F0OiBub25lO1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIHBhZGRpbmctdG9wOiA3NS4xOSU7XG4gIH1cbn1cblxuLnNtIGxpIHtcbiAgZGlzcGxheTogYmxvY2s7XG4gIHBhZGRpbmc6IDA7XG4gIGZsb2F0OiBsZWZ0O1xufVxuXG4uc20gbGk6aG92ZXIgaW1nIHtcbiAgb3BhY2l0eTogMC43O1xuICB0cmFuc2l0aW9uOiAwLjNzIG9wYWNpdHk7XG59XG5cbi5zbSBpbWcge1xuICBtYXJnaW46IDA7XG4gIGZsb2F0OiBsZWZ0O1xufVxuXG4uc20gdWw6YWZ0ZXIge1xuICBjb250ZW50OiAnJztcbiAgZGlzcGxheTogYmxvY2s7XG4gIGNsZWFyOiBib3RoO1xufVxuXG4uc3Mtd3JhcHBlciB7XG4gIG92ZXJmbG93OiBoaWRkZW47XG4gIHdpZHRoOiAxMDAlO1xuICBoZWlnaHQ6IDEwMCU7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgei1pbmRleDogMTtcbiAgZmxvYXQ6IGxlZnQ7XG59XG5cbi5zcy1jb250ZW50IHtcbiAgaGVpZ2h0OiAxMDAlO1xuICB3aWR0aDogY2FsYygxMDAlICsgMThweCk7XG4gIHBhZGRpbmc6IDAgMCAwIDA7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgb3ZlcmZsb3c6IGF1dG87XG4gIGJveC1zaXppbmc6IGJvcmRlci1ib3g7XG59XG5cbi5zcy1jb250ZW50LnJ0bCB7XG4gIHdpZHRoOiBjYWxjKDEwMCUgKyAxOHB4KTtcbiAgcmlnaHQ6IGF1dG87XG59XG5cbi5zcy1zY3JvbGwge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIGJhY2tncm91bmQ6IHJnYmEoOTAsIDg0LCA4NCwgMC4zNSk7XG4gIHdpZHRoOiA5cHg7XG4gIGJvcmRlci1yYWRpdXM6IDRweDtcbiAgdG9wOiAwO1xuICB6LWluZGV4OiAyO1xuICBjdXJzb3I6IHBvaW50ZXI7XG4gIG9wYWNpdHk6IDAuNTtcbiAgdHJhbnNpdGlvbjogb3BhY2l0eSAwLjI1cyBsaW5lYXI7XG59XG5cbi5zcy1oaWRkZW4ge1xuICBkaXNwbGF5OiBub25lO1xufVxuXG4uc3MtY29udGFpbmVyOmhvdmVyIC5zcy1zY3JvbGwsXG4uc3MtY29udGFpbmVyOmFjdGl2ZSAuc3Mtc2Nyb2xsIHtcbiAgb3BhY2l0eTogMTtcbn1cblxuLnNzLWdyYWJiZWQge1xuICAtby11c2VyLXNlbGVjdDogbm9uZTtcbiAgLW1zLXVzZXItc2VsZWN0OiBub25lO1xuICAtbW96LXVzZXItc2VsZWN0OiBub25lO1xuICAtd2Via2l0LXVzZXItc2VsZWN0OiBub25lO1xuICB1c2VyLXNlbGVjdDogbm9uZTtcbn1cblxuLypcclxuICAgRm9yIGVhY2ggc3BlY2lmaWMgcGFnZSBsYXlvdXQgbWFrZSBhIGNvcHkgb2YgdGhpcyBmaWxlIGFuZCBuYW1lIGl0IFxyXG4gICBzcGVjaWZpY2FsbHkgZm9yIHRoZSBwYWdlIHlvdSBhcmUgc3R5bGluZy5cclxuXHJcbiAgIEV4YW1wbGU6IF9ldmVudHMuc2Nzc1xyXG4qL1xuLmwtZ3JpZC1wcmlvcml0aWVzLWhlYWRlciBoMSB7XG4gIG1hcmdpbjogMC44ZW0gMCAwO1xuICBsZXR0ZXItc3BhY2luZzogLTAuMXB4O1xufVxuXG4ubC1ncmlkLXByaW9yaXRpZXMtaGVhZGVyIGgxICsgaDIge1xuICBtYXJnaW4tdG9wOiAtMC4yNWVtO1xufVxuXG4ucHJpb3JpdGllcy1oZWFkZXIgKyAucHJpb3JpdHktdGFicyB7XG4gIG1hcmdpbi10b3A6IC02cHg7XG59XG5cbi5wcmlvcml0aWVzLWhlYWRlciArIC5wcmlvcml0eS10YWJzIC5wcmlvcml0eS1jb250ZW50LS1tYWluIHAge1xuICBtYXJnaW46IDAgMCAxLjY4ZW07XG59XG5cbkBtZWRpYSAobWluLXdpZHRoOiA4OC44ODg4OWVtKSB7XG4gIC5wcmlvcml0aWVzLWhlYWRlciArIC5wcmlvcml0eS10YWJzIC5wcmlvcml0eS1jb250ZW50LS1tYWluIHAge1xuICAgIGZvbnQtc2l6ZTogMjVweDtcbiAgICBsaW5lLWhlaWdodDogMS43O1xuICAgIGxldHRlci1zcGFjaW5nOiAwLjEzcHg7XG4gIH1cbn1cblxuLnByaW9yaXRpZXMtaGVhZGVyICsgLnByaW9yaXR5LXRhYnMgLnByaW9yaXR5LWNvbnRlbnQtLW1haW4gcDpmaXJzdC1jaGlsZCB7XG4gIG1hcmdpbjogLTAuNXJlbSAwIDMuMnJlbTtcbn1cblxuLnByaW9yaXRpZXMtaGVhZGVyICsgLnByaW9yaXR5LXRhYnMgLnByaW9yaXR5LWNvbnRlbnQtLW1haW4gcDpsYXN0LWNoaWxkIHtcbiAgbWFyZ2luLWJvdHRvbTogMDtcbn1cblxuLnByaW9yaXRpZXMtaGVhZGVyICsgLnByaW9yaXR5LXRhYnMgLnByaW9yaXR5LWNvbnRlbnQtLW1haW4gcCArIHN0cm9uZyB7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBtYXJnaW46IDAgMCAwLjI2ZW07XG4gIGZvbnQtd2VpZ2h0OiA3MDA7XG4gIGZvbnQtc2l6ZTogMjVweDtcbn1cblxuLnByaW9yaXRpZXMtaGVhZGVyICsgLnByaW9yaXR5LXRhYnMgLnByaW9yaXR5LWNvbnRlbnQtLW1haW4gcCArIHN0cm9uZyArIHAge1xuICBsZXR0ZXItc3BhY2luZzogLTAuMDhweDtcbn1cblxuLnByaW9yaXRpZXMtaGVhZGVyICsgLnByaW9yaXR5LXRhYnMgLnByaW9yaXR5LWNvbnRlbnQtLW1haW4gcCArIHN0cm9uZyArIHAgKyBwIHtcbiAgbGV0dGVyLXNwYWNpbmc6IDAuMDQ1cHg7XG59XG5cbi5wcmlvcml0aWVzLWhlYWRlciArIC5wcmlvcml0eS10YWJzIC5wcmlvcml0eS10YWJzLS1oZWFkZXIgLnByaW9yaXR5LXRhYiBhIHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICBsZWZ0OiAtMTVweDtcbiAgdG9wOiAwO1xuICByaWdodDogLTE1cHg7XG4gIGJvdHRvbTogLTM0cHg7XG4gIG1hcmdpbjogYXV0bztcbiAgei1pbmRleDogNDtcbn1cblxuLnByaW9yaXRpZXMtaGVhZGVyICsgLnByaW9yaXR5LXRhYnMgLnByaW9yaXR5LWNvbnRlbnQge1xuICBwYWRkaW5nLWJvdHRvbTogMDtcbn1cblxuLmwtZ3JpZC1wcmlvcml0eS1kb3duIC5hY2NvbXBsaXNoLWFycm93IHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICBsZWZ0OiAtMTVweDtcbiAgdG9wOiAwO1xuICBib3R0b206IDA7XG4gIG1hcmdpbjogYXV0bztcbiAgYmFja2dyb3VuZDogI2NjY2NjYztcbiAgbWF4LXdpZHRoOiAyODNweDtcbiAgd2lkdGg6IDEwMCU7XG59XG5cbi5sLWdyaWQtcHJpb3JpdHktZG93biAuYWNjb21wbGlzaC1hcnJvdyBzdmcge1xuICB3aWR0aDogMy42MjVyZW07XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgaGVpZ2h0OiAxMDAlO1xuICByaWdodDogLTMuNjI1cmVtO1xufVxuXG4ubC1ncmlkLXByaW9yaXR5LWRvd24gLmFjY29tcGxpc2gtYXJyb3cgc3BhbiB7XG4gIGZvbnQtZmFtaWx5OiBcIkJlYmFzIE5ldWVcIiwgXCJIZWx2ZXRpY2EgTmV1ZVwiLCBIZWx2ZXRpY2EsIEFyaWFsLCBzYW5zLXNlcmlmO1xuICBkaXNwbGF5OiBibG9jaztcbiAgei1pbmRleDogMjtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB0b3A6IDUwJTtcbiAgbGVmdDogNThweDtcbiAgcmlnaHQ6IDA7XG4gIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgtNTAlKTtcbiAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbiAgZm9udC1zaXplOiA0MHB4O1xuICBmb250LXdlaWdodDogNzAwO1xuICBsaW5lLWhlaWdodDogMS4wMjtcbiAgbGV0dGVyLXNwYWNpbmc6IDAuM3B4O1xuICBib3R0b206IGF1dG87XG4gIG1hcmdpbjogMTJweCBhdXRvIDA7XG59XG5cbi5sLWdyaWQtcHJpb3JpdHktZG93biAuYWNjb21wbGlzaC1hcnJvdyBzcGFuIGIge1xuICBkaXNwbGF5OiBibG9jaztcbiAgbWFyZ2luLXRvcDogLTdweDtcbiAgZm9udC1zaXplOiAxMzVweDtcbiAgbGV0dGVyLXNwYWNpbmc6IG5vcm1hbDtcbn1cblxuLmwtZ3JpZC1wcmlvcml0eS1kb3duIC5hY2NvbXBsaXNoLWxpc3Qge1xuICBwYWRkaW5nOiAyLjdlbSAwIDIuN2VtIDEuNGVtO1xufVxuXG4ubC1ncmlkLXByaW9yaXR5LWRvd24gb2wge1xuICBwYWRkaW5nOiAwO1xuICBtYXJnaW46IDA7XG59XG5cbi5sLWdyaWQtcHJpb3JpdHktZG93biBvbCBsaSB7XG4gIGNvbG9yOiB3aGl0ZTtcbiAgZm9udC1zaXplOiAyNXB4O1xuICBsaW5lLWhlaWdodDogMS43MjtcbiAgbWFyZ2luOiAwIDAgMS42OGVtO1xuICBwYWRkaW5nOiAwO1xuICBsZXR0ZXItc3BhY2luZzogMC4xNnB4O1xufVxuXG4ubC1ncmlkLXByaW9yaXR5LWRvd24gb2wgbGk6bGFzdC1jaGlsZCB7XG4gIG1hcmdpbi1ib3R0b206IDA7XG59XG5cbi5zdHJhdGVnaWMuc3RhbmRhcmQtdW5kZXIge1xuICBwYWRkaW5nOiA2LjI1ZW0gMCA3LjE2ZW07XG59XG5cbkBtZWRpYSAobWF4LXdpZHRoOiA4OC44ODg4OWVtKSB7XG4gIC5sLWdyaWQtcHJpb3JpdGllcy1oZWFkZXIgaDEgYnIge1xuICAgIGRpc3BsYXk6IG5vbmU7XG4gIH1cbn1cblxuQG1lZGlhIChtYXgtd2lkdGg6IDY2LjY2NjY3ZW0pIHtcbiAgLnByaW9yaXRpZXMtaGVhZGVyICsgLnByaW9yaXR5LXRhYnMgLnByaW9yaXR5LWNvbnRlbnQtLW1haW4gcCArIHN0cm9uZyB7XG4gICAgZm9udC1zaXplOiAxLjg3NXJlbTtcbiAgICBsaW5lLWhlaWdodDogMS40O1xuICB9XG4gIC5sLWdyaWQtcHJpb3JpdHktZG93biBvbCBsaSB7XG4gICAgZm9udC1zaXplOiAxLjg3NXJlbTtcbiAgfVxuICAubC1ncmlkLXByaW9yaXRpZXMtaGVhZGVyIGgxIHtcbiAgICBsaW5lLWhlaWdodDogMC44MztcbiAgICBtYXJnaW4tYm90dG9tOiAwLjE0ZW07XG4gIH1cbn1cblxuQG1lZGlhIChtYXgtd2lkdGg6IDUzLjMzMzMzZW0pIHtcbiAgLnByaW9yaXRpZXMtaGVhZGVyICsgLnByaW9yaXR5LXRhYnMgLnByaW9yaXR5LWNvbnRlbnQtLW1haW4gcCArIHN0cm9uZyB7XG4gICAgbWFyZ2luLWJvdHRvbTogLTFyZW07XG4gIH1cbiAgLmwtZ3JpZC1wcmlvcml0eS1kb3duIC5hY2NvbXBsaXNoLWFycm93IHtcbiAgICBwb3NpdGlvbjogc3RhdGljO1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIG1heC13aWR0aDogbm9uZTtcbiAgICBtYXJnaW46IDA7XG4gIH1cbiAgLmwtZ3JpZC1wcmlvcml0eS1kb3duIC5hY2NvbXBsaXNoLWFycm93IHNwYW4ge1xuICAgIHBvc2l0aW9uOiBzdGF0aWM7XG4gICAgdHJhbnNmb3JtOiBub25lO1xuICAgIG1hcmdpbjogMDtcbiAgICBtYXJnaW46IDAgLTE1cHg7XG4gICAgYmFja2dyb3VuZDogI2NjY2NjYztcbiAgICBwYWRkaW5nOiAwLjdlbSAwIDAuMWVtO1xuICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgfVxuICAubC1ncmlkLXByaW9yaXR5LWRvd24gLmFjY29tcGxpc2gtYXJyb3cgc3ZnIHtcbiAgICBkaXNwbGF5OiBub25lO1xuICB9XG59XG5cbkBtZWRpYSAobWluLXdpZHRoOiA4OC44ODg4OWVtKSB7XG4gIC5sLWdyaWQtcHJpb3JpdHktZG93biBvbCBsaSB7XG4gICAgZm9udC1zaXplOiAxLjVyZW07XG4gIH1cbn1cblxuQG1lZGlhIChtaW4td2lkdGg6IDY2LjY2NjY3ZW0pIGFuZCAobWF4LXdpZHRoOiA4OC44ODg4OWVtKSB7XG4gIC5wcmlvcml0aWVzLWhlYWRlciBwLmxlYWQge1xuICAgIGZvbnQtc2l6ZTogMjRweDtcbiAgfVxuICAubC1ncmlkLXByaW9yaXR5LWRvd24ge1xuICAgIG1hcmdpbi1sZWZ0OiAtMTVweDtcbiAgICBtYXJnaW4tcmlnaHQ6IC0xNXB4O1xuICB9XG4gIC5sLWdyaWQtcHJpb3JpdHktZG93biAuYWNjb21wbGlzaC1saXN0IHtcbiAgICBwYWRkaW5nOiAyLjdlbSAwIDIuN2VtIDNlbTtcbiAgfVxuICAubC1ncmlkLXByaW9yaXR5LWRvd24gLmFjY29tcGxpc2gtYXJyb3cgc3BhbiB7XG4gICAgbGVmdDogMzBweDtcbiAgfVxufVxuXG5AbWVkaWEgKG1pbi13aWR0aDogNTMuMzMzMzNlbSkgYW5kIChtYXgtd2lkdGg6IDY2LjY2NjY3ZW0pIHtcbiAgLnByaW9yaXRpZXMtaGVhZGVyIHAubGVhZCB7XG4gICAgZm9udC1zaXplOiAyM3B4O1xuICB9XG4gIC5sLWdyaWQtcHJpb3JpdHktZG93biAuYWNjb21wbGlzaC1saXN0IHtcbiAgICBwYWRkaW5nOiAyLjJlbSAwIDIuMmVtIDNlbTtcbiAgfVxuICAubC1ncmlkLXByaW9yaXR5LWRvd24gLmFjY29tcGxpc2gtYXJyb3cgc3BhbiB7XG4gICAgbGVmdDogMDtcbiAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgZm9udC1zaXplOiAzMHB4O1xuICB9XG4gIC5sLWdyaWQtcHJpb3JpdHktZG93biAuYWNjb21wbGlzaC1hcnJvdyBzcGFuIGIge1xuICAgIGZvbnQtc2l6ZTogOTZweDtcbiAgfVxuICAubC1ncmlkLXByaW9yaXR5LWRvd24gb2wgbGkge1xuICAgIGZvbnQtc2l6ZTogMS42cmVtO1xuICAgIG1hcmdpbjogMCAwIDEuM2VtO1xuICB9XG59XG5cbkBtZWRpYSAobWluLXdpZHRoOiA0Mi42NjY2N2VtKSBhbmQgKG1heC13aWR0aDogNTMuMzMzMzNlbSkge1xuICAucHJpb3JpdGllcy1oZWFkZXIgcC5sZWFkIHtcbiAgICBmb250LXNpemU6IDIxcHg7XG4gIH1cbiAgLmwtZ3JpZC1wcmlvcml0eS1kb3duIC5hY2NvbXBsaXNoLWFycm93IHNwYW4ge1xuICAgIGZvbnQtc2l6ZTogMzBweDtcbiAgfVxuICAubC1ncmlkLXByaW9yaXR5LWRvd24gLmFjY29tcGxpc2gtYXJyb3cgc3BhbiBiIHtcbiAgICBmb250LXNpemU6IDExNXB4O1xuICB9XG4gIC5sLWdyaWQtcHJpb3JpdHktZG93biBvbCBsaSB7XG4gICAgbWFyZ2luLWJvdHRvbTogMS40ZW07XG4gIH1cbiAgLmwtZ3JpZC1wcmlvcml0eS1kb3duIG9sIHtcbiAgICBwYWRkaW5nLWxlZnQ6IDFlbTtcbiAgfVxuICAubC1ncmlkLXByaW9yaXR5LWRvd24gLmFjY29tcGxpc2gtbGlzdCB7XG4gICAgcGFkZGluZzogMS41ZW0gMjJweDtcbiAgfVxufVxuXG5AbWVkaWEgKG1pbi13aWR0aDogMjYuNjY2NjdlbSkgYW5kIChtYXgtd2lkdGg6IDQyLjY2NjY3ZW0pIHtcbiAgLnByaW9yaXRpZXMtaGVhZGVyIHAubGVhZCB7XG4gICAgZm9udC1zaXplOiAyMHB4O1xuICB9XG4gIC5sLWdyaWQtcHJpb3JpdHktZG93biAuYWNjb21wbGlzaC1hcnJvdyBzcGFuIHtcbiAgICBmb250LXNpemU6IDI4cHg7XG4gIH1cbiAgLmwtZ3JpZC1wcmlvcml0eS1kb3duIC5hY2NvbXBsaXNoLWFycm93IHNwYW4gYiB7XG4gICAgZm9udC1zaXplOiAxMTBweDtcbiAgfVxuICAubC1ncmlkLXByaW9yaXR5LWRvd24gb2wgbGkge1xuICAgIG1hcmdpbi1ib3R0b206IDEuM2VtO1xuICB9XG59XG5cbkBtZWRpYSAobWF4LXdpZHRoOiAyNi42NjY2N2VtKSB7XG4gIC5wcmlvcml0aWVzLWhlYWRlciBwLmxlYWQge1xuICAgIGZvbnQtc2l6ZTogMThweDtcbiAgfVxuICAubC1ncmlkLXByaW9yaXR5LWRvd24gLmFjY29tcGxpc2gtYXJyb3cgc3BhbiB7XG4gICAgZm9udC1zaXplOiAyOHB4O1xuICB9XG4gIC5sLWdyaWQtcHJpb3JpdHktZG93biAuYWNjb21wbGlzaC1hcnJvdyBzcGFuIGIge1xuICAgIGZvbnQtc2l6ZTogMTEwcHg7XG4gIH1cbiAgLmwtZ3JpZC1wcmlvcml0eS1kb3duIG9sIGxpIHtcbiAgICBtYXJnaW4tYm90dG9tOiAxLjJlbTtcbiAgfVxufVxuXG5AbWVkaWEgKG1heC13aWR0aDogNjYuNjY2NjdlbSkge1xuICAubC1ncmlkLXByaW9yaXR5LWRvd24ge1xuICAgIG1hcmdpbi1sZWZ0OiAtMzBweDtcbiAgICBtYXJnaW4tcmlnaHQ6IC0zMHB4O1xuICB9XG59XG5cbkBtZWRpYSAobWF4LXdpZHRoOiA0Mi42NjY2N2VtKSB7XG4gIC5wcmlvcml0aWVzLWhlYWRlciArIC5wcmlvcml0eS10YWJzIC5wcmlvcml0eS1jb250ZW50LS1tYWluIHAgKyBzdHJvbmcge1xuICAgIGZvbnQtc2l6ZTogMThweDtcbiAgfVxuICAubC1ncmlkLXByaW9yaXR5LWRvd24gb2wge1xuICAgIHBhZGRpbmctbGVmdDogMThweDtcbiAgfVxuICAubC1ncmlkLXByaW9yaXR5LWRvd24gb2wgbGkge1xuICAgIGZvbnQtc2l6ZTogMThweDtcbiAgICBsaW5lLWhlaWdodDogbm9ybWFsO1xuICB9XG4gIC5sLWdyaWQtcHJpb3JpdHktZG93biAuYWNjb21wbGlzaC1saXN0IHtcbiAgICBwYWRkaW5nOiAyMHB4IDE1cHg7XG4gIH1cbiAgLnByaW9yaXR5LXRhYnMtLWNvbnRlbnQgLmwtZ3JpZC1wcmlvcml0eSB7XG4gICAgbWFyZ2luOiAwIC0zMHB4O1xuICB9XG59XG5cbi5zdGFuZGFyZC1oZWFkZXIge1xuICBwYWRkaW5nLWJvdHRvbTogNS41ZW07XG59XG5cbi5zdGFuZGFyZC1oZWFkZXIgaDEge1xuICBtYXJnaW46IDAuOTNlbSAwIDA7XG4gIGxpbmUtaGVpZ2h0OiAwLjgzO1xuICBsZXR0ZXItc3BhY2luZzogLTAuMDNweDtcbn1cblxuLnN0YW5kYXJkLWhlYWRlciBoMSArIGgyIHtcbiAgbWFyZ2luOiAwLjFlbSAwIDA7XG59XG5cbi5zdGFuZGFyZC1oZWFkZXIgLmxlYWQge1xuICBtYXJnaW46IDEuNzZlbSAwIDA7XG4gIGxpbmUtaGVpZ2h0OiAxLjU1O1xuICBsZXR0ZXItc3BhY2luZzogMC4wN3B4O1xufVxuXG4uc3RhbmRhcmQtaGVhZGVyIGgxICsgLmxlYWQge1xuICBtYXJnaW4tdG9wOiAxLjU4ZW07XG4gIG1hcmdpbi1ib3R0b206IDAuMDRlbTtcbn1cblxuLnN0YW5kYXJkLWhlYWRlci53aXRob3V0Qmcge1xuICBwYWRkaW5nLWJvdHRvbTogMDtcbn1cblxuLnN0YW5kYXJkLWJnIHtcbiAgaGVpZ2h0OiA3NTBweDtcbiAgYmFja2dyb3VuZC1zaXplOiBjb3ZlcjtcbiAgYmFja2dyb3VuZC1wb3NpdGlvbjogdG9wIGNlbnRlcjtcbiAgYmFja2dyb3VuZC1hdHRhY2htZW50OiBmaXhlZDtcbn1cblxuLnN0YW5kYXJkLXVuZGVyIHtcbiAgcGFkZGluZzogNS45OGVtIDAgNS43MmVtO1xufVxuXG4uc3RhbmRhcmQtdW5kZXIgLmwtZ3JpZC1zdGFuZGFyZC11bmRlci10aHJlZSB7XG4gIG1hcmdpbjogMCAtMTVweDtcbn1cblxuLnN0YW5kYXJkLXVuZGVyIC5sLWdyaWQtc3RhbmRhcmQtdW5kZXItdGhyZWUgLmdyaWQtaXRlbS00IHtcbiAgbWFyZ2luLXRvcDogMS41ZW07XG59XG5cbi5zdGFuZGFyZC11bmRlciAubC1ncmlkLXN0YW5kYXJkLXVuZGVyLXRocmVlIC5ncmlkLWl0ZW0tNCBoMyB7XG4gIG1hcmdpbjogLTAuMzVlbSAwIDAuNDRlbTtcbn1cblxuLnN0YW5kYXJkLXVuZGVyIC5sLWdyaWQtc3RhbmRhcmQtdW5kZXIgLmhhbGYge1xuICBmbG9hdDogbGVmdDtcbiAgd2lkdGg6IDUwJTtcbn1cblxuLnN0YW5kYXJkLXVuZGVyIC5sLWdyaWQtc3RhbmRhcmQtdW5kZXIgLmhhbGYgcCB7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgdGV4dC1hbGlnbjogbGVmdDtcbn1cblxuLnN0YW5kYXJkLXVuZGVyIC5sLWdyaWQtc3RhbmRhcmQtdW5kZXIgaDIge1xuICBtYXJnaW46IC0wLjI1ZW0gMCAwLjQ0ZW07XG4gIGxldHRlci1zcGFjaW5nOiAtMC4wOHB4O1xuICBsaW5lLWhlaWdodDogMS4zMjtcbn1cblxuLnN0YW5kYXJkLXVuZGVyIC5sLWdyaWQtc3RhbmRhcmQtdW5kZXIgLmdyaWQtaXRlbSBwOmZpcnN0LWNoaWxkIHtcbiAgbWFyZ2luLXRvcDogLTAuMjVlbTtcbn1cblxuLnN0YW5kYXJkLXVuZGVyIC5sLWdyaWQtc3RhbmRhcmQtdW5kZXIgcCB7XG4gIGxpbmUtaGVpZ2h0OiAxLjQ1O1xuICBsZXR0ZXItc3BhY2luZzogLTAuMDVweDtcbiAgbWFyZ2luOiAwIDAgMS4zOGVtO1xufVxuXG4uc3RhbmRhcmQtdW5kZXIgLmwtZ3JpZC1zdGFuZGFyZC11bmRlciBwLndpdGhCaWdCcmVhayB7XG4gIG1hcmdpbi1ib3R0b206IDQuMjNlbTtcbn1cblxuLnN0YW5kYXJkLXVuZGVyIC5sLWdyaWQtc3RhbmRhcmQtdW5kZXIgcDpsYXN0LWNoaWxkIHtcbiAgbWFyZ2luLWJvdHRvbTogMDtcbn1cblxuLnN0YW5kYXJkLXVuZGVyIC5sLWdyaWQtc3RhbmRhcmQtdW5kZXIgcCArIGgyIHtcbiAgbWFyZ2luLXRvcDogMS40NWVtO1xufVxuXG4uc3RhbmRhcmQtdW5kZXIgLmwtZ3JpZC1zdGFuZGFyZC11bmRlciB1bCB7XG4gIHBhZGRpbmc6IDA7XG59XG5cbi5zdGFuZGFyZC11bmRlciAubC1ncmlkLXN0YW5kYXJkLXVuZGVyIHVsIGxpIHtcbiAgcGFkZGluZzogMCAwIDZweCAxOHB4O1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIGxpc3Qtc3R5bGUtdHlwZTogbm9uZTtcbn1cblxuLnN0YW5kYXJkLXVuZGVyIC5sLWdyaWQtc3RhbmRhcmQtdW5kZXIgdWwgbGk6YmVmb3JlIHtcbiAgY29udGVudDogJyc7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgYmFja2dyb3VuZDogIzU1NTU1NTtcbiAgd2lkdGg6IDZweDtcbiAgaGVpZ2h0OiA2cHg7XG4gIHRvcDogMTFweDtcbiAgYm9yZGVyLXJhZGl1czogMnB4O1xuICBtYXJnaW46IGF1dG87XG4gIGxlZnQ6IDRweDtcbn1cblxuLnN0YW5kYXJkLXVuZGVyIC5sLWdyaWQtc3RhbmRhcmQtdW5kZXIgYmxvY2txdW90ZSB7XG4gIG1hcmdpbjogMi42NGVtIDJlbSAyLjQ0ZW07XG4gIGZvbnQtc2l6ZTogMzBweDtcbn1cblxuLnN0YW5kYXJkLXVuZGVyIC5sLWdyaWQtc3RhbmRhcmQtdW5kZXIgYmxvY2txdW90ZSBwIHtcbiAgZm9udC1zaXplOiAzMHB4O1xuICBsaW5lLWhlaWdodDogMS40O1xuICBsZXR0ZXItc3BhY2luZzogLTAuMTRweDtcbn1cblxuLnN0YW5kYXJkLXVuZGVyIC5sLWdyaWQtc3RhbmRhcmQtdW5kZXIgZmlndXJlIHtcbiAgYm9yZGVyOiAwO1xufVxuXG4uc3RhbmRhcmQtdW5kZXIgLmwtZ3JpZC1zdGFuZGFyZC11bmRlciBmaWd1cmUgaW1nIHtcbiAgcGFkZGluZy1ib3R0b206IDAuNDhlbTtcbn1cblxuLnN0YW5kYXJkLXVuZGVyIC5sLWdyaWQtc3RhbmRhcmQtdW5kZXIgZmlndXJlIGZpZ2NhcHRpb24ge1xuICBsaW5lLWhlaWdodDogMS42NDtcbiAgbGV0dGVyLXNwYWNpbmc6IC0wLjA4cHg7XG59XG5cbi5zdGFuZGFyZC11bmRlciAubC1ncmlkLXN0YW5kYXJkLXVuZGVyICsgLmwtZ3JpZC1zdGFuZGFyZC11bmRlciB7XG4gIHBhZGRpbmctdG9wOiA1LjQ1ZW07XG59XG5cbi5zdGFuZGFyZC11bmRlciAubC1ncmlkLXN0YW5kYXJkLXVuZGVyICsgLmwtZ3JpZC1zdGFuZGFyZC11bmRlci5zbWFsbGVyUGFkZGluZyB7XG4gIHBhZGRpbmctdG9wOiA0LjNlbTtcbn1cblxuLnN0YW5kYXJkLXVuZGVyLnN0cmF0ZWdpYyAubC1ncmlkLXN0YW5kYXJkLXVuZGVyICsgLmwtZ3JpZC1zdGFuZGFyZC11bmRlciB7XG4gIHBhZGRpbmctdG9wOiA0Ljc2ZW07XG59XG5cbi5zdGFuZGFyZC11bmRlci5iYWNrZ3JvdW5kIC5pbWFnZS1hZGRpdGlvbmFsLW1hcmdpbiB7XG4gIG1hcmdpbi10b3A6IDQuMjVlbTtcbn1cblxuLnN0YW5kYXJkLXVuZGVyLmFib3V0IHtcbiAgcGFkZGluZy1ib3R0b206IDEuNWVtO1xufVxuXG4uc3RhbmRhcmQtdW5kZXIgLmJveC1sYXlvdXQgLmdyaWQtaXRlbSB7XG4gIG1hcmdpbi1ib3R0b206IDI1cHg7XG59XG5cbi5zdGFuZGFyZC11bmRlciAuYm94LWxheW91dCBpbWcge1xuICBtYXJnaW46IDA7XG59XG5cbi5zdGFuZGFyZC11bmRlciAuYm94LWxheW91dCAuZ3JpZC1pdGVtLWJveCB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbn1cblxuLnN0YW5kYXJkLXVuZGVyIC5ib3gtbGF5b3V0IC5udW1iZXItY29udGFpbmVyIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBwYWRkaW5nLXRvcDogOTYuNzUlO1xuICBiYWNrZ3JvdW5kOiAjMDA3MWNlO1xufVxuXG4uc3RhbmRhcmQtdW5kZXIgLmJveC1sYXlvdXQgLm51bWJlciB7XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICBsZWZ0OiAwO1xuICByaWdodDogMDtcbiAgdG9wOiAwO1xuICBtYXJnaW46IDA7XG4gIGJvdHRvbTogMDtcbn1cblxuLnN0YW5kYXJkLXVuZGVyIC5ib3gtbGF5b3V0IC5udW1iZXIgLmljb24tY29udGFpbmVyIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBoZWlnaHQ6IDE2MXB4O1xufVxuXG4uc3RhbmRhcmQtdW5kZXIgLmJveC1sYXlvdXQgLm51bWJlciAuaWNvbi1jb250YWluZXIgaW1nIHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICBsZWZ0OiAwO1xuICByaWdodDogMDtcbiAgYm90dG9tOiAxMnB4O1xuICBtYXJnaW46IGF1dG87XG59XG5cbi5zdGFuZGFyZC11bmRlciAuYm94LWxheW91dCAubnVtYmVyIGgzIHtcbiAgY29sb3I6ICNhOGQyZWI7XG4gIGxpbmUtaGVpZ2h0OiAxO1xuICBtYXJnaW46IDAgMCAtMC4wMmVtO1xuICBsZXR0ZXItc3BhY2luZzogMDtcbiAgZm9udC1mYW1pbHk6IFwiQmViYXMgTmV1ZVwiLCBcIkhlbHZldGljYSBOZXVlXCIsIEhlbHZldGljYSwgQXJpYWwsIHNhbnMtc2VyaWY7XG4gIGZvbnQtc2l6ZTogMTE1cHg7XG59XG5cbi5zdGFuZGFyZC11bmRlciAuYm94LWxheW91dCAubnVtYmVyIHNwYW4ge1xuICBkaXNwbGF5OiBibG9jaztcbiAgY29sb3I6IHdoaXRlO1xuICBmb250LXNpemU6IDI2cHg7XG4gIGZvbnQtd2VpZ2h0OiA0MDA7XG59XG5cbi5zdGFuZGFyZC11bmRlciAuYm94LWxheW91dCBoMyB7XG4gIG1hcmdpbjogLTAuMjRlbSAwIDAuNDhlbTtcbiAgbGluZS1oZWlnaHQ6IDEuMzU7XG4gIGxldHRlci1zcGFjaW5nOiAwLjM2cHg7XG59XG5cbi5zdGFuZGFyZC11bmRlciAuYm94LWxheW91dCBwIHtcbiAgbGV0dGVyLXNwYWNpbmc6IC0wLjA4cHg7XG59XG5cbi5zdGFuZGFyZC11bmRlciAuYm94LWxheW91dCBwLmluZm8ge1xuICBtYXJnaW46IC0wLjc4ZW0gMCAwO1xuICBsZXR0ZXItc3BhY2luZzogLTAuMDFweDtcbn1cblxuLnN0YW5kYXJkLXBhcnRuZXJzIHtcbiAgYmFja2dyb3VuZDogI2Y1ZjVmNTtcbiAgcGFkZGluZzogMi44ZW0gMCA1Ljc4ZW07XG59XG5cbi5zdGFuZGFyZC1wYXJ0bmVycyBoMiB7XG4gIGZvbnQtd2VpZ2h0OiA3MDA7XG4gIG1hcmdpbjogMCAwIDAuMmVtO1xufVxuXG4uc3RhbmRhcmQtcGFydG5lcnMgaDMge1xuICBmb250LXNpemU6IDMwcHg7XG4gIGZvbnQtd2VpZ2h0OiA3MDA7XG4gIGZvbnQtZmFtaWx5OiBcIlNlbnNpYmlsaXR5XCIsIFwiSGVsdmV0aWNhIE5ldWVcIiwgSGVsdmV0aWNhLCBBcmlhbCwgc2Fucy1zZXJpZjtcbiAgbWFyZ2luOiAwLjllbSAwIDA7XG59XG5cbi5zdGFuZGFyZC1wYXJ0bmVycyBwIHtcbiAgbGluZS1oZWlnaHQ6IDEuNDU7XG4gIG1hcmdpbjogMS41ZW0gMCAwO1xuICBsZXR0ZXItc3BhY2luZzogMC4wOHB4O1xufVxuXG5AbWVkaWEgKG1heC13aWR0aDogODguODg4ODllbSkge1xuICAuc3RhbmRhcmQtdW5kZXIgLmwtZ3JpZC1zdGFuZGFyZC11bmRlciBoMiB7XG4gICAgbGluZS1oZWlnaHQ6IDEuMTtcbiAgICBtYXJnaW46IC0wLjE1ZW0gMCAwLjQ0ZW07XG4gIH1cbiAgLnN0YW5kYXJkLWhlYWRlciBoMSBiciB7XG4gICAgZGlzcGxheTogbm9uZTtcbiAgfVxufVxuXG5AbWVkaWEgKG1heC13aWR0aDogNjYuNjY2NjdlbSkge1xuICAuc3RhbmRhcmQtdW5kZXIgLmwtZ3JpZC1zdGFuZGFyZC11bmRlciBwLndpdGhCaWdCcmVhayB7XG4gICAgbWFyZ2luLWJvdHRvbTogMi4yM2VtO1xuICB9XG4gIC5sLWdyaWQtcHJpb3JpdGllcy1oZWFkZXIgaDEge1xuICAgIG1hcmdpbi1ib3R0b206IDAuMTRlbTtcbiAgfVxuICAuc3RhbmRhcmQtYmcge1xuICAgIGJhY2tncm91bmQtYXR0YWNobWVudDogc2Nyb2xsO1xuICB9XG4gIC5zdGFuZGFyZC11bmRlciAuYm94LWxheW91dCAubnVtYmVyLWNvbnRhaW5lciB7XG4gICAgcGFkZGluZzogMDtcbiAgfVxuICAuc3RhbmRhcmQtdW5kZXIgLmJveC1sYXlvdXQgLm51bWJlciB7XG4gICAgcG9zaXRpb246IHN0YXRpYztcbiAgfVxuICAuc3RhbmRhcmQtdW5kZXIgLmJveC1sYXlvdXQgLm51bWJlciAuaWNvbi1jb250YWluZXIge1xuICAgIGhlaWdodDogYXV0bztcbiAgICBwYWRkaW5nOiAyMHB4IDA7XG4gIH1cbiAgLnN0YW5kYXJkLXVuZGVyIC5ib3gtbGF5b3V0IC5udW1iZXIgLmljb24tY29udGFpbmVyIGltZyB7XG4gICAgcG9zaXRpb246IHN0YXRpYztcbiAgfVxuICAuc3RhbmRhcmQtdW5kZXIgLmJveC1sYXlvdXQgLm51bWJlciBzcGFuIHtcbiAgICBwYWRkaW5nLWJvdHRvbTogMjBweDtcbiAgfVxuICAuZ3JpZC1pdGVtLWJveCB7XG4gICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICB9XG59XG5cbkBtZWRpYSAobWF4LXdpZHRoOiA1My4zMzMzM2VtKSB7XG4gIC5zdGFuZGFyZC11bmRlciAubC1ncmlkLXN0YW5kYXJkLXVuZGVyIGZpZ3VyZSB7XG4gICAgbWF4LXdpZHRoOiA1MDBweDtcbiAgICBtYXJnaW46IDMwcHggYXV0byAwO1xuICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgfVxuICAuc3RhbmRhcmQtdW5kZXIuYmFja2dyb3VuZCAuaW1hZ2UtYWRkaXRpb25hbC1tYXJnaW4ge1xuICAgIG1hcmdpbi10b3A6IDA7XG4gIH1cbn1cblxuQG1lZGlhIChtYXgtd2lkdGg6IDQyLjY2NjY3ZW0pIHtcbiAgLnN0YW5kYXJkLXVuZGVyIC5sLWdyaWQtc3RhbmRhcmQtdW5kZXIgLmhhbGYge1xuICAgIGZsb2F0OiBub25lO1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIG1hcmdpbi1ib3R0b206IDEwcHg7XG4gIH1cbiAgLnN0YW5kYXJkLXVuZGVyIC5sLWdyaWQtc3RhbmRhcmQtdW5kZXIgLmhhbGY6bGFzdC1jaGlsZCB7XG4gICAgbWFyZ2luLWJvdHRvbTogMDtcbiAgfVxuICAuc3RhbmRhcmQtdW5kZXIgLmwtZ3JpZC1zdGFuZGFyZC11bmRlciAuaGFsZi50ZXh0LS1yaWdodCB7XG4gICAgdGV4dC1hbGlnbjogbGVmdDtcbiAgfVxufVxuXG5AbWVkaWEgKG1pbi13aWR0aDogNjYuNjY2NjdlbSkgYW5kIChtYXgtd2lkdGg6IDg4Ljg4ODg5ZW0pIHtcbiAgLnN0cmF0ZWdpYy5zdGFuZGFyZC11bmRlciwgLnN0YW5kYXJkLXVuZGVyIHtcbiAgICBwYWRkaW5nOiA1LjI1ZW0gMCA2LjE2ZW07XG4gIH1cbiAgLnN0YW5kYXJkLWhlYWRlciBwLmxlYWQge1xuICAgIGZvbnQtc2l6ZTogMjRweDtcbiAgfVxuICAuc3RhbmRhcmQtYmcge1xuICAgIGZvbnQtc2l6ZTogMTZweDtcbiAgICBoZWlnaHQ6IDY1MHB4O1xuICB9XG4gIC5zdGFuZGFyZC11bmRlciAubC1ncmlkLXN0YW5kYXJkLXVuZGVyIGJsb2NrcXVvdGUge1xuICAgIGZvbnQtc2l6ZTogMjRweDtcbiAgfVxuICAuc3RhbmRhcmQtdW5kZXIgLmwtZ3JpZC1zdGFuZGFyZC11bmRlciBibG9ja3F1b3RlIHAge1xuICAgIGZvbnQtc2l6ZTogMjhweDtcbiAgfVxuICAuc3RhbmRhcmQtaGVhZGVyIHtcbiAgICBwYWRkaW5nLWJvdHRvbTogNS4yNWVtO1xuICB9XG4gIC5zdGFuZGFyZC11bmRlciAubC1ncmlkLXN0YW5kYXJkLXVuZGVyICsgLmwtZ3JpZC1zdGFuZGFyZC11bmRlciB7XG4gICAgcGFkZGluZy10b3A6IDQuNWVtO1xuICB9XG4gIC5zdGFuZGFyZC11bmRlciAubC1ncmlkLXN0YW5kYXJkLXVuZGVyICsgLmwtZ3JpZC1zdGFuZGFyZC11bmRlci5zbWFsbGVyUGFkZGluZyB7XG4gICAgcGFkZGluZy10b3A6IDMuMzVlbTtcbiAgfVxufVxuXG5AbWVkaWEgKG1pbi13aWR0aDogNTMuMzMzMzNlbSkgYW5kIChtYXgtd2lkdGg6IDY2LjY2NjY3ZW0pIHtcbiAgLnN0cmF0ZWdpYy5zdGFuZGFyZC11bmRlciwgLnN0YW5kYXJkLXVuZGVyIHtcbiAgICBwYWRkaW5nOiA0LjVlbSAwIDUuNWVtO1xuICB9XG4gIC5zdGFuZGFyZC1oZWFkZXIgcC5sZWFkIHtcbiAgICBmb250LXNpemU6IDIzcHg7XG4gIH1cbiAgLnN0YW5kYXJkLWJnIHtcbiAgICBmb250LXNpemU6IDE0cHg7XG4gICAgaGVpZ2h0OiA1NTBweDtcbiAgfVxuICAuc3RhbmRhcmQtdW5kZXIgLmwtZ3JpZC1zdGFuZGFyZC11bmRlciBibG9ja3F1b3RlIHtcbiAgICBmb250LXNpemU6IDE3cHg7XG4gIH1cbiAgLnN0YW5kYXJkLXVuZGVyIC5sLWdyaWQtc3RhbmRhcmQtdW5kZXIgYmxvY2txdW90ZSBwIHtcbiAgICBmb250LXNpemU6IDIzcHg7XG4gIH1cbiAgLnN0YW5kYXJkLWhlYWRlciB7XG4gICAgcGFkZGluZy1ib3R0b206IDQuNWVtO1xuICB9XG4gIC5zdGFuZGFyZC11bmRlciAubC1ncmlkLXN0YW5kYXJkLXVuZGVyICsgLmwtZ3JpZC1zdGFuZGFyZC11bmRlciB7XG4gICAgcGFkZGluZy10b3A6IDRlbTtcbiAgfVxuICAuc3RhbmRhcmQtdW5kZXIgLmwtZ3JpZC1zdGFuZGFyZC11bmRlciArIC5sLWdyaWQtc3RhbmRhcmQtdW5kZXIuc21hbGxlclBhZGRpbmcge1xuICAgIHBhZGRpbmctdG9wOiAyLjg1ZW07XG4gIH1cbiAgLnN0YW5kYXJkLXBhcnRuZXJzIGgzIHtcbiAgICBmb250LXNpemU6IDI2cHg7XG4gIH1cbn1cblxuQG1lZGlhIChtaW4td2lkdGg6IDQyLjY2NjY3ZW0pIGFuZCAobWF4LXdpZHRoOiA1My4zMzMzM2VtKSB7XG4gIC5zdHJhdGVnaWMuc3RhbmRhcmQtdW5kZXIsIC5zdGFuZGFyZC11bmRlciB7XG4gICAgcGFkZGluZzogNGVtIDAgNWVtO1xuICB9XG4gIC5zdGFuZGFyZC1oZWFkZXIgcC5sZWFkIHtcbiAgICBmb250LXNpemU6IDIxcHg7XG4gIH1cbiAgLnN0YW5kYXJkLWJnIHtcbiAgICBmb250LXNpemU6IDEycHg7XG4gICAgaGVpZ2h0OiA0NTBweDtcbiAgfVxuICAuc3RhbmRhcmQtdW5kZXIgLmwtZ3JpZC1zdGFuZGFyZC11bmRlciBibG9ja3F1b3RlIHtcbiAgICBmb250LXNpemU6IDIycHg7XG4gIH1cbiAgLnN0YW5kYXJkLXVuZGVyIC5sLWdyaWQtc3RhbmRhcmQtdW5kZXIgYmxvY2txdW90ZSBwIHtcbiAgICBmb250LXNpemU6IDI2cHg7XG4gIH1cbiAgLnN0YW5kYXJkLWhlYWRlciB7XG4gICAgcGFkZGluZy1ib3R0b206IDRlbTtcbiAgfVxuICAuc3RhbmRhcmQtdW5kZXIgLmwtZ3JpZC1zdGFuZGFyZC11bmRlciArIC5sLWdyaWQtc3RhbmRhcmQtdW5kZXIge1xuICAgIHBhZGRpbmctdG9wOiAzLjVlbTtcbiAgfVxuICAuc3RhbmRhcmQtdW5kZXIgLmwtZ3JpZC1zdGFuZGFyZC11bmRlciArIC5sLWdyaWQtc3RhbmRhcmQtdW5kZXIuc21hbGxlclBhZGRpbmcge1xuICAgIHBhZGRpbmctdG9wOiAyLjM1ZW07XG4gIH1cbiAgLnN0YW5kYXJkLXBhcnRuZXJzIGgzIHtcbiAgICBmb250LXNpemU6IDI0cHg7XG4gIH1cbiAgLnN0YW5kYXJkLXVuZGVyIC5sLWdyaWQtc3RhbmRhcmQtdW5kZXItdGhyZWUgLmdyaWQtaXRlbS00IGgzIHtcbiAgICBmb250LXNpemU6IDM4cHg7XG4gIH1cbn1cblxuQG1lZGlhIChtaW4td2lkdGg6IDI2LjY2NjY3ZW0pIGFuZCAobWF4LXdpZHRoOiA0Mi42NjY2N2VtKSB7XG4gIC5zdHJhdGVnaWMuc3RhbmRhcmQtdW5kZXIsIC5zdGFuZGFyZC11bmRlciB7XG4gICAgcGFkZGluZzogMy41ZW0gMCA0LjVlbTtcbiAgfVxuICAuc3RhbmRhcmQtaGVhZGVyIHAubGVhZCB7XG4gICAgZm9udC1zaXplOiAyMHB4O1xuICB9XG4gIC5zdGFuZGFyZC1iZyB7XG4gICAgZm9udC1zaXplOiAxMHB4O1xuICAgIGhlaWdodDogMzUwcHg7XG4gIH1cbiAgLnN0YW5kYXJkLXVuZGVyIC5sLWdyaWQtc3RhbmRhcmQtdW5kZXIgYmxvY2txdW90ZSB7XG4gICAgZm9udC1zaXplOiAxOHB4O1xuICB9XG4gIC5zdGFuZGFyZC11bmRlciAubC1ncmlkLXN0YW5kYXJkLXVuZGVyIGJsb2NrcXVvdGUgcCB7XG4gICAgZm9udC1zaXplOiAyMnB4O1xuICB9XG4gIC5zdGFuZGFyZC1oZWFkZXIge1xuICAgIHBhZGRpbmctYm90dG9tOiAzLjVlbTtcbiAgfVxuICAuc3RhbmRhcmQtdW5kZXIgLmwtZ3JpZC1zdGFuZGFyZC11bmRlciArIC5sLWdyaWQtc3RhbmRhcmQtdW5kZXIge1xuICAgIHBhZGRpbmctdG9wOiAzZW07XG4gIH1cbiAgLnN0YW5kYXJkLXVuZGVyIC5sLWdyaWQtc3RhbmRhcmQtdW5kZXIgKyAubC1ncmlkLXN0YW5kYXJkLXVuZGVyLnNtYWxsZXJQYWRkaW5nIHtcbiAgICBwYWRkaW5nLXRvcDogMS44NWVtO1xuICB9XG4gIC5zdGFuZGFyZC1wYXJ0bmVycyBoMyB7XG4gICAgZm9udC1zaXplOiAyM3B4O1xuICB9XG4gIC5zdGFuZGFyZC11bmRlciAubC1ncmlkLXN0YW5kYXJkLXVuZGVyLXRocmVlIC5ncmlkLWl0ZW0tNCBoMyB7XG4gICAgZm9udC1zaXplOiAzNHB4O1xuICB9XG4gIC5zdGFuZGFyZC11bmRlciAuYm94LWxheW91dCAubnVtYmVyIGgzIHtcbiAgICBmb250LXNpemU6IDc3cHg7XG4gIH1cbn1cblxuQG1lZGlhIChtYXgtd2lkdGg6IDI2LjY2NjY3ZW0pIHtcbiAgLnN0cmF0ZWdpYy5zdGFuZGFyZC11bmRlciwgLnN0YW5kYXJkLXVuZGVyIHtcbiAgICBwYWRkaW5nOiAzZW0gMCA0ZW07XG4gIH1cbiAgLnN0YW5kYXJkLWhlYWRlciBwLmxlYWQge1xuICAgIGZvbnQtc2l6ZTogMThweDtcbiAgfVxuICAuc3RhbmRhcmQtYmcge1xuICAgIGZvbnQtc2l6ZTogOHB4O1xuICAgIGhlaWdodDogMzAwcHg7XG4gIH1cbiAgLnN0YW5kYXJkLXVuZGVyIC5sLWdyaWQtc3RhbmRhcmQtdW5kZXIgYmxvY2txdW90ZSB7XG4gICAgZm9udC1zaXplOiAxMHB4O1xuICB9XG4gIC5zdGFuZGFyZC11bmRlciAubC1ncmlkLXN0YW5kYXJkLXVuZGVyIGJsb2NrcXVvdGUgcCB7XG4gICAgZm9udC1zaXplOiAyMHB4O1xuICB9XG4gIC5zdGFuZGFyZC1oZWFkZXIge1xuICAgIHBhZGRpbmctYm90dG9tOiAzZW07XG4gIH1cbiAgLnN0YW5kYXJkLXVuZGVyIC5sLWdyaWQtc3RhbmRhcmQtdW5kZXIgKyAubC1ncmlkLXN0YW5kYXJkLXVuZGVyIHtcbiAgICBwYWRkaW5nLXRvcDogMi41ZW07XG4gIH1cbiAgLnN0YW5kYXJkLXVuZGVyIC5sLWdyaWQtc3RhbmRhcmQtdW5kZXIgKyAubC1ncmlkLXN0YW5kYXJkLXVuZGVyLnNtYWxsZXJQYWRkaW5nIHtcbiAgICBwYWRkaW5nLXRvcDogMS4zNWVtO1xuICB9XG4gIC5zdGFuZGFyZC1wYXJ0bmVycyBoMyB7XG4gICAgZm9udC1zaXplOiAyMnB4O1xuICB9XG4gIC5zdGFuZGFyZC11bmRlciAubC1ncmlkLXN0YW5kYXJkLXVuZGVyLXRocmVlIC5ncmlkLWl0ZW0tNCBoMyB7XG4gICAgZm9udC1zaXplOiAzMHB4O1xuICB9XG4gIC5zdGFuZGFyZC11bmRlciAuYm94LWxheW91dCAubnVtYmVyIGgzIHtcbiAgICBmb250LXNpemU6IDU0cHg7XG4gIH1cbn1cblxuQG1lZGlhIChtYXgtd2lkdGg6IDE1OTZweCkgYW5kIChtaW4td2lkdGg6IDg4Ljg4ODg5ZW0pIHtcbiAgLnN0YW5kYXJkLXVuZGVyIC5ib3gtbGF5b3V0IC5udW1iZXIge1xuICAgIGJvdHRvbTogYXV0bztcbiAgICB0b3A6IDUwJTtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTUwJSk7XG4gIH1cbiAgLnN0YW5kYXJkLXVuZGVyIC5ib3gtbGF5b3V0IC5udW1iZXIgLmljb24tY29udGFpbmVyIHtcbiAgICBoZWlnaHQ6IDExMnB4O1xuICB9XG4gIC5zdGFuZGFyZC11bmRlciAuYm94LWxheW91dCAubnVtYmVyIC5pY29uLWNvbnRhaW5lciBpbWcge1xuICAgIG1heC1oZWlnaHQ6IDEwMHB4O1xuICB9XG4gIC5zdGFuZGFyZC11bmRlciAuYm94LWxheW91dCAubnVtYmVyIGgzIHtcbiAgICBmb250LXNpemU6IDg4cHg7XG4gIH1cbiAgLnN0YW5kYXJkLXVuZGVyIC5ib3gtbGF5b3V0IC5udW1iZXIgc3BhbiB7XG4gICAgZm9udC1zaXplOiAyNHB4O1xuICB9XG4gIC5zdGFuZGFyZC11bmRlciAuYm94LWxheW91dCBoMyB7XG4gICAgZm9udC1zaXplOiAzOHB4O1xuICAgIGxpbmUtaGVpZ2h0OiAxLjE7XG4gIH1cbiAgLnN0YW5kYXJkLXVuZGVyIC5sLWdyaWQtc3RhbmRhcmQtdW5kZXIgcCB7XG4gICAgZm9udC1zaXplOiAxN3B4O1xuICB9XG59XG5cbkBtZWRpYSAobWF4LXdpZHRoOiA4OC44ODg4OWVtKSBhbmQgKG1pbi13aWR0aDogNjYuNjY2NjdlbSkge1xuICAuc3RhbmRhcmQtdW5kZXIgLmJveC1sYXlvdXQgLm51bWJlciB7XG4gICAgYm90dG9tOiBhdXRvO1xuICAgIHRvcDogNTAlO1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgtNTAlKTtcbiAgfVxuICAuc3RhbmRhcmQtdW5kZXIgLmJveC1sYXlvdXQgLm51bWJlciAuaWNvbi1jb250YWluZXIge1xuICAgIGhlaWdodDogOTJweDtcbiAgfVxuICAuc3RhbmRhcmQtdW5kZXIgLmJveC1sYXlvdXQgLm51bWJlciAuaWNvbi1jb250YWluZXIgaW1nIHtcbiAgICBtYXgtaGVpZ2h0OiA4MHB4O1xuICB9XG4gIC5zdGFuZGFyZC11bmRlciAuYm94LWxheW91dCAubnVtYmVyIGgzIHtcbiAgICBmb250LXNpemU6IDcwcHg7XG4gIH1cbiAgLnN0YW5kYXJkLXVuZGVyIC5ib3gtbGF5b3V0IC5udW1iZXIgc3BhbiB7XG4gICAgZm9udC1zaXplOiAyMHB4O1xuICB9XG4gIC5zdGFuZGFyZC11bmRlciAuYm94LWxheW91dCBoMyB7XG4gICAgZm9udC1zaXplOiAzNHB4O1xuICAgIGxpbmUtaGVpZ2h0OiAxLjE7XG4gIH1cbiAgLnN0YW5kYXJkLXVuZGVyIC5sLWdyaWQtc3RhbmRhcmQtdW5kZXIgcCB7XG4gICAgZm9udC1zaXplOiAxNnB4O1xuICB9XG59XG5cbkBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDBcXDApIGFuZCAobWluLXJlc29sdXRpb246IDcyZHBpKSB7XG4gIC5zdGFuZGFyZC11bmRlciAubC1ncmlkLXN0YW5kYXJkLXVuZGVyLXRocmVlIHtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgfVxuICAuc3RhbmRhcmQtdW5kZXIgLmwtZ3JpZC1zdGFuZGFyZC11bmRlci10aHJlZSAuZ3JpZC1pdGVtLmdyaWQtaXRlbS00IHtcbiAgICBmbG9hdDogbGVmdDtcbiAgICB3aWR0aDogMzMuMzMzMzM0JTtcbiAgICBtYXJnaW46IDA7XG4gICAgcGFkZGluZzogMCAxNXB4O1xuICB9XG59XG5cbkBtZWRpYSAobWluLXdpZHRoOiA1My4zMzMzM2VtKSB7XG4gIC5zdGFuZGFyZC11bmRlciAubC1ncmlkLXN0YW5kYXJkLXVuZGVyIGZpZ3VyZSB7XG4gICAgbWFyZ2luOiAwO1xuICAgIHBhZGRpbmc6IDA7XG4gIH1cbiAgLnN0YW5kYXJkLXVuZGVyIC5sLWdyaWQtc3RhbmRhcmQtdW5kZXIgZmlndXJlIGltZyB7XG4gICAgcGFkZGluZzogMDtcbiAgfVxuICAuc3RhbmRhcmQtdW5kZXIgLmwtZ3JpZC1zdGFuZGFyZC11bmRlciBmaWd1cmUgaW1nICsgZmlnY2FwdGlvbiB7XG4gICAgbWFyZ2luLXRvcDogMC40OGVtO1xuICB9XG59XG5cbi5pY29uIHtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICBtYXJnaW46IDA7XG59XG5cbi5pY29uLWRvd25sb2FkIHtcbiAgd2lkdGg6IDI1cHg7XG4gIGhlaWdodDogMjZweDtcbn1cblxuLnByZWxvYWQgKiwgLnByZWxvYWQgKjpiZWZvcmUsIC5wcmVsb2FkICo6YWZ0ZXIge1xuICAtd2Via2l0LXRyYW5zaXRpb246IG5vbmUgIWltcG9ydGFudDtcbiAgLW1vei10cmFuc2l0aW9uOiBub25lICFpbXBvcnRhbnQ7XG4gIC1tcy10cmFuc2l0aW9uOiBub25lICFpbXBvcnRhbnQ7XG4gIC1vLXRyYW5zaXRpb246IG5vbmUgIWltcG9ydGFudDtcbn1cblxuLmNsZWFyZml4OmFmdGVyIHtcbiAgY29udGVudDogJyc7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBjbGVhcjogYm90aDtcbn1cblxuLyohXHJcbiAqIEhhbWJ1cmdlcnNcclxuICogQGRlc2NyaXB0aW9uIFRhc3R5IENTUy1hbmltYXRlZCBoYW1idXJnZXJzXHJcbiAqIEBhdXRob3IgSm9uYXRoYW4gU3VoIEBqb25zdWhcclxuICogQHNpdGUgaHR0cHM6Ly9qb25zdWguY29tL2hhbWJ1cmdlcnNcclxuICogQGxpbmsgaHR0cHM6Ly9naXRodWIuY29tL2pvbnN1aC9oYW1idXJnZXJzXHJcbiAqL1xuLmhhbWJ1cmdlciB7XG4gIHBhZGRpbmc6IDExcHggMTFweDtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICBjdXJzb3I6IHBvaW50ZXI7XG4gIHRyYW5zaXRpb24tcHJvcGVydHk6IG9wYWNpdHksIGZpbHRlcjtcbiAgdHJhbnNpdGlvbi1kdXJhdGlvbjogMC4xNXM7XG4gIHRyYW5zaXRpb24tdGltaW5nLWZ1bmN0aW9uOiBlYXNlO1xuICBmb250OiBpbmhlcml0O1xuICBjb2xvcjogaW5oZXJpdDtcbiAgdGV4dC10cmFuc2Zvcm06IG5vbmU7XG4gIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xuICBib3JkZXI6IDA7XG4gIG1hcmdpbjogMDtcbiAgb3ZlcmZsb3c6IHZpc2libGU7XG59XG5cbi5oYW1idXJnZXI6aG92ZXIge1xuICBvcGFjaXR5OiAwLjc7XG59XG5cbi5oYW1idXJnZXI6Zm9jdXMge1xuICBvdXRsaW5lOiBub25lO1xufVxuXG4uaGFtYnVyZ2VyLWJveCB7XG4gIHdpZHRoOiAzNnB4O1xuICBoZWlnaHQ6IDI1cHg7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xufVxuXG4uaGFtYnVyZ2VyLWlubmVyIHtcbiAgZGlzcGxheTogYmxvY2s7XG4gIHRvcDogNTAlO1xuICBtYXJnaW4tdG9wOiAtMi41cHg7XG59XG5cbi5oYW1idXJnZXItaW5uZXIsIC5oYW1idXJnZXItaW5uZXI6OmJlZm9yZSwgLmhhbWJ1cmdlci1pbm5lcjo6YWZ0ZXIge1xuICB3aWR0aDogMzZweDtcbiAgaGVpZ2h0OiA1cHg7XG4gIGJhY2tncm91bmQtY29sb3I6ICM1NTU7XG4gIGJvcmRlci1yYWRpdXM6IDA7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgdHJhbnNpdGlvbi1wcm9wZXJ0eTogdHJhbnNmb3JtO1xuICB0cmFuc2l0aW9uLWR1cmF0aW9uOiAwLjE1cztcbiAgdHJhbnNpdGlvbi10aW1pbmctZnVuY3Rpb246IGVhc2U7XG59XG5cbi5oYW1idXJnZXItaW5uZXI6OmJlZm9yZSwgLmhhbWJ1cmdlci1pbm5lcjo6YWZ0ZXIge1xuICBjb250ZW50OiBcIlwiO1xuICBkaXNwbGF5OiBibG9jaztcbn1cblxuLmhhbWJ1cmdlci1pbm5lcjo6YmVmb3JlIHtcbiAgdG9wOiAtMTBweDtcbn1cblxuLmhhbWJ1cmdlci1pbm5lcjo6YWZ0ZXIge1xuICBib3R0b206IC0xMHB4O1xufVxuXG4vKlxyXG4gICAqIFNwaW5cclxuICAgKi9cbi5oYW1idXJnZXItLXNwaW4gLmhhbWJ1cmdlci1pbm5lciB7XG4gIHRyYW5zaXRpb24tZHVyYXRpb246IDAuMjJzO1xuICB0cmFuc2l0aW9uLXRpbWluZy1mdW5jdGlvbjogY3ViaWMtYmV6aWVyKDAuNTUsIDAuMDU1LCAwLjY3NSwgMC4xOSk7XG59XG5cbi5oYW1idXJnZXItLXNwaW4gLmhhbWJ1cmdlci1pbm5lcjo6YmVmb3JlIHtcbiAgdHJhbnNpdGlvbjogdG9wIDAuMXMgMC4yNXMgZWFzZS1pbixcciBvcGFjaXR5IDAuMXMgZWFzZS1pbjtcbn1cblxuLmhhbWJ1cmdlci0tc3BpbiAuaGFtYnVyZ2VyLWlubmVyOjphZnRlciB7XG4gIHRyYW5zaXRpb246IGJvdHRvbSAwLjFzIDAuMjVzIGVhc2UtaW4sIHRyYW5zZm9ybSAwLjIycyBjdWJpYy1iZXppZXIoMC41NSwgMC4wNTUsIDAuNjc1LCAwLjE5KTtcbn1cblxuLmhhbWJ1cmdlci0tc3Bpbi5pcy1hY3RpdmUgLmhhbWJ1cmdlci1pbm5lciB7XG4gIHRyYW5zZm9ybTogcm90YXRlKDIyNWRlZyk7XG4gIHRyYW5zaXRpb24tZGVsYXk6IDAuMTJzO1xuICB0cmFuc2l0aW9uLXRpbWluZy1mdW5jdGlvbjogY3ViaWMtYmV6aWVyKDAuMjE1LCAwLjYxLCAwLjM1NSwgMSk7XG59XG5cbi5oYW1idXJnZXItLXNwaW4uaXMtYWN0aXZlIC5oYW1idXJnZXItaW5uZXI6OmJlZm9yZSB7XG4gIHRvcDogMDtcbiAgb3BhY2l0eTogMDtcbiAgdHJhbnNpdGlvbjogdG9wIDAuMXMgZWFzZS1vdXQsXHIgb3BhY2l0eSAwLjFzIDAuMTJzIGVhc2Utb3V0O1xufVxuXG4uaGFtYnVyZ2VyLS1zcGluLmlzLWFjdGl2ZSAuaGFtYnVyZ2VyLWlubmVyOjphZnRlciB7XG4gIGJvdHRvbTogMDtcbiAgdHJhbnNmb3JtOiByb3RhdGUoLTkwZGVnKTtcbiAgdHJhbnNpdGlvbjogYm90dG9tIDAuMXMgZWFzZS1vdXQsIHRyYW5zZm9ybSAwLjIycyAwLjEycyBjdWJpYy1iZXppZXIoMC4yMTUsIDAuNjEsIDAuMzU1LCAxKTtcbn1cbiIsIi8qXHJcbiAgIyMgICAgICMjICAgICMjIyAgICAjIyMjICMjICAgICMjIFxyXG4gICMjIyAgICMjIyAgICMjICMjICAgICMjICAjIyMgICAjIyBcclxuICAjIyMjICMjIyMgICMjICAgIyMgICAjIyAgIyMjIyAgIyMgXHJcbiAgIyMgIyMjICMjICMjICAgICAjIyAgIyMgICMjICMjICMjIFxyXG4gICMjICAgICAjIyAjIyMjIyMjIyMgICMjICAjIyAgIyMjIyBcclxuICAjIyAgICAgIyMgIyMgICAgICMjICAjIyAgIyMgICAjIyMgXHJcbiAgIyMgICAgICMjICMjICAgICAjIyAjIyMjICMjICAgICMjIFxyXG4qL1xyXG5cclxuLy8gLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxyXG4gICAvLyBVdGlsaXRpZXNcclxuLy8gLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxyXG5cclxuQGltcG9ydCBcInV0aWxpdGllcy9jb2xvcnNcIjtcclxuQGltcG9ydCBcInV0aWxpdGllcy9leHRlbmRzXCI7XHJcbkBpbXBvcnQgXCJ1dGlsaXRpZXMvdmFyaWFibGVzXCI7XHJcbkBpbXBvcnQgXCJ1dGlsaXRpZXMvbWl4aW5zXCI7XHJcblxyXG4vLyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXHJcbiAgIC8vIFBhcnRpYWxzXHJcbi8vIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cclxuXHJcbkBpbXBvcnQgXCJwYXJ0aWFscy9zY2FmZm9sZGluZ1wiO1xyXG5AaW1wb3J0IFwicGFydGlhbHMvdHlwb2dyYXBoeVwiO1xyXG5AaW1wb3J0IFwicGFydGlhbHMvaGVscGVyc1wiO1xyXG5AaW1wb3J0IFwicGFydGlhbHMvcHJpbnRcIjtcclxuXHJcbi8vIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cclxuICAgLy8gTGF5b3V0XHJcbi8vIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cclxuXHJcbkBpbXBvcnQgXCJsYXlvdXQvZ3JpZFwiO1xyXG5AaW1wb3J0IFwibGF5b3V0L2hlYWRlclwiO1xyXG5AaW1wb3J0IFwibGF5b3V0L21haW5cIjtcclxuQGltcG9ydCBcImxheW91dC9mb290ZXJcIjtcclxuQGltcG9ydCBcImxheW91dC9zaWRlYmFyXCI7XHJcblxyXG4vLyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXHJcbiAgIC8vIENvbXBvbmVudHNcclxuLy8gLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxyXG5cclxuQGltcG9ydCBcImNvbXBvbmVudHMvYnV0dG9uc1wiOyBcclxuQGltcG9ydCBcImNvbXBvbmVudHMvY2Fyb3VzZWxcIjtcclxuQGltcG9ydCBcImNvbXBvbmVudHMvY292ZXJcIjtcclxuQGltcG9ydCBcImNvbXBvbmVudHMvZHJvcGRvd25cIjtcclxuQGltcG9ydCBcImNvbXBvbmVudHMvZm9ybXNcIjtcclxuQGltcG9ydCBcImNvbXBvbmVudHMvdGFibGVzXCI7XHJcbkBpbXBvcnQgXCJjb21wb25lbnRzL25hdmlnYXRpb25cIjtcclxuQGltcG9ydCBcImNvbXBvbmVudHMvYnJlYWRjcnVtYnNcIjtcclxuQGltcG9ydCBcImNvbXBvbmVudHMvaW1hZ2VzXCI7XHJcbkBpbXBvcnQgXCJjb21wb25lbnRzL3ZpZGVvXCI7XHJcbkBpbXBvcnQgXCJjb21wb25lbnRzL2hhbWJ1cmdlclwiO1xyXG5AaW1wb3J0IFwiY29tcG9uZW50cy9zaWRlLW1lbnVcIjtcclxuQGltcG9ydCBcImNvbXBvbmVudHMvanVtYm90cm9uXCI7XHJcbkBpbXBvcnQgXCJjb21wb25lbnRzL3ByaW9yaXR5LXRhYnNcIjtcclxuQGltcG9ydCBcImNvbXBvbmVudHMvY2VvLWludHJvZHVjdGlvblwiO1xyXG5AaW1wb3J0IFwiY29tcG9uZW50cy9udW1iZXJzXCI7XHJcbkBpbXBvcnQgXCJjb21wb25lbnRzL3N0cmF0ZWd5LWludHJvZHVjdGlvblwiO1xyXG5AaW1wb3J0IFwiY29tcG9uZW50cy9wcmluY2lwbGVzLWludHJvZHVjdGlvblwiO1xyXG5AaW1wb3J0IFwiY29tcG9uZW50cy9ib3hlc1wiO1xyXG5AaW1wb3J0IFwiY29tcG9uZW50cy9zbVwiO1xyXG5AaW1wb3J0IFwiY29tcG9uZW50cy9zY3JvbGxiYXJcIjtcclxuXHJcbi8vIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cclxuICAgLy8gUGFnZXNcclxuLy8gLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxyXG5cclxuQGltcG9ydCBcInBhZ2VzL2hvbWVcIjtcclxuQGltcG9ydCBcInBhZ2VzL2luZGl2aWR1YWxcIjtcclxuQGltcG9ydCBcInBhZ2VzL3N0cmF0ZWdpY1wiO1xyXG5AaW1wb3J0IFwicGFnZXMvc3RhbmRhcmRcIjtcclxuXHJcbi8vIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cclxuICAgLy8gVGhlbWVzXHJcbi8vIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cclxuXHJcbkBpbXBvcnQgXCJ0aGVtZXMvdGhlbWVcIjtcclxuQGltcG9ydCBcInRoZW1lcy9hZG1pblwiO1xyXG5cclxuLy8gLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxyXG4gICAvLyBWZW5kb3JcclxuLy8gLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxyXG5cclxuQGltcG9ydCBcInZlbmRvcnMvaGFtYnVyZ2Vyc1wiO1xyXG4iLCIvLyA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XHJcbiAgIC8vIHV0aWxpdGllcy9fY29sb3JzLnNjc3NcclxuLy8gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxyXG5cclxuLypcclxuICAgVXNlIHRoZSBXZWJBSU0gQ29sb3IgQ29udHJhc3QgQ2hlY2tlciB0byBjaGVjayBhbGwgdGhlIHRleHQgY29sb3JzIFxyXG4gICBhcmUgV0NBRyBBQSBjb21wbGlhbnQuIElmIHNvbWUgY29sb3JzIGFyZW4ndCBjb21wbGlhbnQgYW5kIHdpbGwgYmUgXHJcbiAgIHVzZWQgdGhyb3VnaG91dCB0aGUgc2l0ZSBmb3IgY29udGVudCBwdXJwb3NlcyB0aGVuIGdlbmVyYXRlIGFuIFxyXG4gICBhbHRlcm5hdGl2ZSB2ZXJzaW9uIGluIHRoZSAnVzNDIENvbXBsaWFudCBBZGp1c3RtZW50cycgc2VjdGlvbi5cclxuXHJcbiAgIFNvbWUgY29sb3JzIGZhaWwgc3RhbmRhcmQgV0NBRyBBQSBmb3IgcmVndWxhciBmb250IHNpemUgYnV0IHBhc3MgXHJcbiAgIGZvciBsYXJnZXIgdHlwZSBzaXplcyA9IDI0cHggYW5kIGxhcmdlclxyXG5cclxuICAgaHR0cDovL3dlYmFpbS5vcmcvcmVzb3VyY2VzL2NvbnRyYXN0Y2hlY2tlci9cclxuKi9cclxuXHJcbi8vIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cclxuICAgLy8gQnJhbmQgQ29sb3JzXHJcbi8vIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cclxuXHJcbiRjb2xvci1icmFuZC1wcmltYXJ5LTE6ICAgICAgICAgICAgIzU1NTU1NSAhZGVmYXVsdDtcclxuJGNvbG9yLWJyYW5kLXByaW1hcnktMjogICAgICAgICAgICAjMDA3MUNFICFkZWZhdWx0O1xyXG4kY29sb3ItYnJhbmQtcHJpbWFyeS0yLWRhcms6ICAgICAgICMwMDVEOUEgIWRlZmF1bHQ7XHJcbiRjb2xvci1icmFuZC1wcmltYXJ5LTItZGFyay1hbHQ6ICAgZGFya2VuKCRjb2xvci1icmFuZC1wcmltYXJ5LTItZGFyaywgMSUpICFkZWZhdWx0O1xyXG5cclxuJGNvbG9yLWJyYW5kLXNlY29uZGFyeS0xOiAgICAgICAgICAjRjY4RDJEICFkZWZhdWx0O1xyXG4kY29sb3ItYnJhbmQtc2Vjb25kYXJ5LTEtZGFyazogICAgICNBQzYxMjAgIWRlZmF1bHQ7XHJcbiRjb2xvci1icmFuZC1zZWNvbmRhcnktMS1kYXJrLWFsdDogZGFya2VuKCRjb2xvci1icmFuZC1zZWNvbmRhcnktMS1kYXJrLCAxMCUpICFkZWZhdWx0O1xyXG4kY29sb3ItYnJhbmQtc2Vjb25kYXJ5LTI6ICAgICAgICAgICM3Mzk5NEIgIWRlZmF1bHQ7XHJcbiRjb2xvci1icmFuZC1zZWNvbmRhcnktMi1kYXJrOiAgICAgIzVFN0UzRSAhZGVmYXVsdDtcclxuJGNvbG9yLWJyYW5kLXNlY29uZGFyeS0yLWRhcmstYWx0OiBkYXJrZW4oJGNvbG9yLWJyYW5kLXNlY29uZGFyeS0yLWRhcmssIDklKSAhZGVmYXVsdDtcclxuJGNvbG9yLWJyYW5kLXNlY29uZGFyeS0zOiAgICAgICAgICAjRTkzQzUxICFkZWZhdWx0O1xyXG4kY29sb3ItYnJhbmQtc2Vjb25kYXJ5LTMtZGFyazogICAgICNDODM0NDYgIWRlZmF1bHQ7XHJcbiRjb2xvci1icmFuZC1zZWNvbmRhcnktMy1kYXJrLWFsdDogZGFya2VuKCRjb2xvci1icmFuZC1zZWNvbmRhcnktMy1kYXJrLCA5JSkgIWRlZmF1bHQ7XHJcbiRjb2xvci1icmFuZC1zZWNvbmRhcnktNDogICAgICAgICAgIzgxM0Q5NyAhZGVmYXVsdDtcclxuJGNvbG9yLWJyYW5kLXNlY29uZGFyeS00LWRhcms6ICAgICAjNkEzMjdDICFkZWZhdWx0O1xyXG5cclxuLy8gLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxyXG4gICAvLyBOZXV0cmFsIENvbG9yc1xyXG4vLyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXHJcblxyXG4kY29sb3ItYmxhY2s6ICAgICMwMDAgIWRlZmF1bHQ7XHJcbiRjb2xvci1ncmV5LTc6ICAgbGlnaHRlbigkY29sb3ItYmxhY2ssIDEzLjUlKSAhZGVmYXVsdDsgLy8gIzIyMlxyXG4kY29sb3ItZ3JleS02OiAgIGxpZ2h0ZW4oJGNvbG9yLWJsYWNrLCAyMCUpICFkZWZhdWx0OyAgIC8vICMzMzNcclxuJGNvbG9yLWdyZXktNTogICBsaWdodGVuKCRjb2xvci1ibGFjaywgNDAlKSAhZGVmYXVsdDsgICAvLyAjNjY2XHJcbiRjb2xvci1ncmV5LTQ6ICAgbGlnaHRlbigkY29sb3ItYmxhY2ssIDUwJSkgIWRlZmF1bHQ7ICAgLy8gI1xyXG4kY29sb3ItZ3JleS0zOiAgIGxpZ2h0ZW4oJGNvbG9yLWJsYWNrLCA2NSUpICFkZWZhdWx0OyAgIC8vICNcclxuJGNvbG9yLWdyZXktMjogICBsaWdodGVuKCRjb2xvci1ibGFjaywgODAlKSAhZGVmYXVsdDsgICAvLyAjQ0NDXHJcbiRjb2xvci1ncmV5LTE6ICAgbGlnaHRlbigkY29sb3ItYmxhY2ssIDk1JSkgIWRlZmF1bHQ7ICAgLy8gI1xyXG4kY29sb3ItcmV2ZXJzZWQ6ICNGRkYgIWRlZmF1bHQ7XHJcblxyXG4vLyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXHJcbiAgIC8vIFV0aWxpdHkgQ29sb3JzXHJcbi8vIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cclxuXHJcbiRjb2xvci11dGlsaXR5LXBvc2l0aXZlOiAgICAgICAgJGNvbG9yLWJyYW5kLXNlY29uZGFyeS0yLWRhcmsgIWRlZmF1bHQ7XHJcbiRjb2xvci11dGlsaXR5LXBvc2l0aXZlLXN1YnRsZTogbGlnaHRlbigkY29sb3ItdXRpbGl0eS1wb3NpdGl2ZSwgNTAlKSAhZGVmYXVsdDtcclxuJGNvbG9yLXV0aWxpdHktbmVnYXRpdmU6ICAgICAgICAkY29sb3ItYnJhbmQtc2Vjb25kYXJ5LTMtZGFyayAhZGVmYXVsdDtcclxuJGNvbG9yLXV0aWxpdHktbmVnYXRpdmUtc3VidGxlOiBsaWdodGVuKCRjb2xvci11dGlsaXR5LW5lZ2F0aXZlLCA0NSUpICFkZWZhdWx0O1xyXG5cclxuJGNvbG9yLWNvdW50LW51bWJlcjogI2E4ZDJlYiFkZWZhdWx0OyIsIi8vID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cclxuICAgLy8gdGhlbWVzL19leHRlbmRzLnNjc3NcclxuLy8gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxyXG5cclxuLy8gLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxyXG4gICAvLyBDbGVhcmZpeFxyXG4vLyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXHJcblxyXG4lY2xlYXJmaXgge1xyXG5cdCp6b29tOiAxO1xyXG5cclxuXHQmOmJlZm9yZSxcclxuXHQmOmFmdGVyIHtcclxuXHRcdGNvbnRlbnQ6IFwiIFwiO1xyXG5cdFx0ZGlzcGxheTogdGFibGU7XHJcblx0fVxyXG5cdCY6YWZ0ZXIge1xyXG5cdFx0Y2xlYXI6IGJvdGg7XHJcblx0fVxyXG59XHJcblxyXG4vKlxyXG4gICBFeGFtcGxlOiBkaXYgeyBAZXh0ZW5kICVjbGVhcmZpeDsgfVxyXG4qL1xyXG5cclxuLy8gLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxyXG4gICAvLyBDZW50ZXIgQmxvY2tzXHJcbi8vIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cclxuXHJcbiVjZW50ZXItYmxvY2sge1xyXG5cdGRpc3BsYXk6IGJsb2NrO1xyXG5cdG1hcmdpbi1sZWZ0OiBhdXRvO1xyXG5cdG1hcmdpbi1yaWdodDogYXV0bztcclxufVxyXG5cclxuLypcclxuICAgRXhhbXBsZTogZGl2IHsgQGV4dGVuZCAlY2VudGVyLWJsb2NrOyB9XHJcbiovXHJcblxyXG4vLyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXHJcbiAgIC8vIFF1aWNrIEZsb2F0c1xyXG4vLyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXHJcblxyXG4lcHVsbC1sZWZ0ICB7IGZsb2F0OiBsZWZ0OyB9XHJcbiVwdWxsLXJpZ2h0IHsgZmxvYXQ6IHJpZ2h0OyB9XHJcblxyXG4vKlxyXG4gICBFeGFtcGxlOiBkaXYgeyBAZXh0ZW5kICVwdWxsLWxlZnQ7IH1cclxuKi9cclxuXHJcbi8vIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cclxuICAgLy8gVmlzdWFsbHkgSGlkZSBFbGVtZW50c1xyXG4vLyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXHJcbi8qIFxyXG4gICBXaGVuIHlvdSBoaWRlIGFuIGVsZW1lbnQgd2l0aCBkaXNwbGF5OiBub25lLCB0aGF0IHByZXZlbnRzIHNjcmVlbiBcclxuICAgcmVhZGVycyBmcm9tIHJlYWRpbmcgaXQgdG8gdGhlIHVzZXIuIFNvbWV0aW1lcyB0aGF04oCZcyBmaW5lLCBidXQgaW4gXHJcbiAgIG90aGVyIGNhc2VzIHRoaXMgd2lsbCBtYWtlIHRoZSBzaXRlIGhhcmQgdG8gdXNlIGZvciBwZW9wbGUgd2l0aCBcclxuICAgc2NyZWVuIHJlYWRlcnMuIFxyXG4gICBcclxuICAgVGh1cywgd2UgaGF2ZSB0byB1c2UgYW5vdGhlciB0ZWNobmlxdWUgZm9yIGhpZGluZyBlbGVtZW50cyB3aGlsZSBhdCBcclxuICAgdGhlIHNhbWUgdGltZSBtYWtlIHRoZW0gYWNjZXNzaWJsZS5cclxuICAgXHJcbiAgIFVzaW5nIHRoZSBTYXNzIHBsYWNlaG9sZGVyIHNlbGVjdG9yIHNpbmNlIHRoZSBvdXRwdXQgd2lsbCBhbHdheXMgYmUgXHJcbiAgIHRoZSBzYW1lLCB3aGljaCBlbmFibGVzIHVzIHRvIHJlZHVjZSByZXBldGV0aXZlIGNvZGUgaW4gdGhlIG91dHB1dC5cclxuKi9cclxuLy8gLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxyXG5cclxuJXZpc3VhbGx5aGlkZGVuIHtcclxuXHRwb3NpdGlvbjogYWJzb2x1dGU7XHJcblx0d2lkdGg6IDFweDtcclxuXHRoZWlnaHQ6IDFweDtcclxuXHRvdmVyZmxvdzogaGlkZGVuO1xyXG5cdGNsaXA6IHJlY3QoMCwgMCwgMCwgMCk7XHJcblx0d2hpdGUtc3BhY2U6IG5vd3JhcDtcclxufVxyXG5cclxuLypcclxuICAgRXhhbXBsZTogZGl2IHsgQGV4dGVuZCAldmlzdWFsbHloaWRkZW47IH1cclxuKi9cclxuIiwiLy8gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxyXG4gICAvLyB1dGlsaXRpZXMvX3ZhcmlhYmxlcy5zY3NzXHJcbi8vID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cclxuXHJcbi8vIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cclxuLypcclxuXHQgIyMjIyMgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgXHJcblx0IyAgICAgIyAgIyMjIyAgICAjIyAgICMjIyMjIyAjIyMjIyMgICMjIyMgICMgICAgICAjIyMjIyAgIyAjICAgICMgICMjIyMgIFxyXG5cdCMgICAgICAgIyAgICAjICAjICAjICAjICAgICAgIyAgICAgICMgICAgIyAjICAgICAgIyAgICAjICMgIyMgICAjICMgICAgIyBcclxuXHQgIyMjIyMgICMgICAgICAjICAgICMgIyMjIyMgICMjIyMjICAjICAgICMgIyAgICAgICMgICAgIyAjICMgIyAgIyAjICAgICAgXHJcblx0XHQgICMgIyAgICAgICMjIyMjIyAjICAgICAgIyAgICAgICMgICAgIyAjICAgICAgIyAgICAjICMgIyAgIyAjICMgICMjIyBcclxuXHQjICAgICAjICMgICAgIyAjICAgICMgIyAgICAgICMgICAgICAjICAgICMgIyAgICAgICMgICAgIyAjICMgICAjIyAjICAgICMgXHJcblx0ICMjIyMjICAgIyMjIyAgIyAgICAjICMgICAgICAjICAgICAgICMjIyMgICMjIyMjIyAjIyMjIyAgIyAjICAgICMgICMjIyMgIFxyXG4qL1xyXG4vLyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXHJcblxyXG4vLyBTZXR0aW5ncyBmb3Igc29tZSBvZiB0aGUgbW9zdCBnbG9iYWwgc3R5bGVzLlxyXG5cclxuLy8gLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxyXG4gICAvLyBGb250IFN0YWNrc1xyXG4vLyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXHJcblxyXG5AZm9udC1mYWNlIHtcclxuXHRmb250LWZhbWlseTogJ1NlbnNpYmlsaXR5JztcclxuXHRzcmM6IHVybCgnLi4vZm9udHMvU2Vuc2liaWxpdHkvU2Vuc2liaWxpdHkuZW90Jyk7XHJcblx0c3JjOiB1cmwoJy4uL2ZvbnRzL1NlbnNpYmlsaXR5L1NlbnNpYmlsaXR5LmVvdD8jaWVmaXgnKSBmb3JtYXQoJ2VtYmVkZGVkLW9wZW50eXBlJyksXHJcblx0XHQgdXJsKCcuLi9mb250cy9TZW5zaWJpbGl0eS9TZW5zaWJpbGl0eS53b2ZmMicpIGZvcm1hdCgnd29mZjInKSxcclxuXHRcdCB1cmwoJy4uL2ZvbnRzL1NlbnNpYmlsaXR5L1NlbnNpYmlsaXR5LndvZmYnKSBmb3JtYXQoJ3dvZmYnKSxcclxuXHRcdCB1cmwoJy4uL2ZvbnRzL1NlbnNpYmlsaXR5L1NlbnNpYmlsaXR5LnN2ZyNTZW5zaWJpbGl0eScpIGZvcm1hdCgnc3ZnJyk7XHJcblx0Zm9udC13ZWlnaHQ6IG5vcm1hbDtcclxuXHRmb250LXN0eWxlOiBub3JtYWw7XHJcbn1cclxuXHJcbkBmb250LWZhY2Uge1xyXG5cdGZvbnQtZmFtaWx5OiAnU2Vuc2liaWxpdHknO1xyXG5cdHNyYzogdXJsKCcuLi9mb250cy9TZW5zaWJpbGl0eS9TZW5zaWJpbGl0eS1JdGFsaWMuZW90Jyk7XHJcblx0c3JjOiB1cmwoJy4uL2ZvbnRzL1NlbnNpYmlsaXR5L1NlbnNpYmlsaXR5LUl0YWxpYy5lb3Q/I2llZml4JykgZm9ybWF0KCdlbWJlZGRlZC1vcGVudHlwZScpLFxyXG5cdFx0IHVybCgnLi4vZm9udHMvU2Vuc2liaWxpdHkvU2Vuc2liaWxpdHktSXRhbGljLndvZmYyJykgZm9ybWF0KCd3b2ZmMicpLFxyXG5cdFx0IHVybCgnLi4vZm9udHMvU2Vuc2liaWxpdHkvU2Vuc2liaWxpdHktSXRhbGljLndvZmYnKSBmb3JtYXQoJ3dvZmYnKSxcclxuXHRcdCB1cmwoJy4uL2ZvbnRzL1NlbnNpYmlsaXR5L1NlbnNpYmlsaXR5LUl0YWxpYy5zdmcjU2Vuc2liaWxpdHknKSBmb3JtYXQoJ3N2ZycpO1xyXG5cdGZvbnQtd2VpZ2h0OiBub3JtYWw7XHJcblx0Zm9udC1zdHlsZTogaXRhbGljO1xyXG59XHJcblxyXG5AZm9udC1mYWNlIHtcclxuXHRmb250LWZhbWlseTogJ1NlbnNpYmlsaXR5JztcclxuXHRzcmM6IHVybCgnLi4vZm9udHMvU2Vuc2liaWxpdHkvU2Vuc2liaWxpdHktQm9sZC5lb3QnKTtcclxuXHRzcmM6IHVybCgnLi4vZm9udHMvU2Vuc2liaWxpdHkvU2Vuc2liaWxpdHktQm9sZC5lb3Q/I2llZml4JykgZm9ybWF0KCdlbWJlZGRlZC1vcGVudHlwZScpLFxyXG5cdFx0IHVybCgnLi4vZm9udHMvU2Vuc2liaWxpdHkvU2Vuc2liaWxpdHktQm9sZC53b2ZmMicpIGZvcm1hdCgnd29mZjInKSxcclxuXHRcdCB1cmwoJy4uL2ZvbnRzL1NlbnNpYmlsaXR5L1NlbnNpYmlsaXR5LUJvbGQud29mZicpIGZvcm1hdCgnd29mZicpLFxyXG5cdFx0IHVybCgnLi4vZm9udHMvU2Vuc2liaWxpdHkvU2Vuc2liaWxpdHktQm9sZC5zdmcjU2Vuc2liaWxpdHknKSBmb3JtYXQoJ3N2ZycpO1xyXG5cdGZvbnQtd2VpZ2h0OiBib2xkO1xyXG5cdGZvbnQtc3R5bGU6IG5vcm1hbDtcclxufVxyXG5cclxuQGZvbnQtZmFjZSB7XHJcblx0Zm9udC1mYW1pbHk6ICdTZW5zaWJpbGl0eSc7XHJcblx0c3JjOiB1cmwoJy4uL2ZvbnRzL1NlbnNpYmlsaXR5L1NlbnNpYmlsaXR5LUJvbGRJdGFsaWMuZW90Jyk7XHJcblx0c3JjOiB1cmwoJy4uL2ZvbnRzL1NlbnNpYmlsaXR5L1NlbnNpYmlsaXR5LUJvbGRJdGFsaWMuZW90PyNpZWZpeCcpIGZvcm1hdCgnZW1iZWRkZWQtb3BlbnR5cGUnKSxcclxuXHRcdCB1cmwoJy4uL2ZvbnRzL1NlbnNpYmlsaXR5L1NlbnNpYmlsaXR5LUJvbGRJdGFsaWMud29mZjInKSBmb3JtYXQoJ3dvZmYyJyksXHJcblx0XHQgdXJsKCcuLi9mb250cy9TZW5zaWJpbGl0eS9TZW5zaWJpbGl0eS1Cb2xkSXRhbGljLndvZmYnKSBmb3JtYXQoJ3dvZmYnKSxcclxuXHRcdCB1cmwoJy4uL2ZvbnRzL1NlbnNpYmlsaXR5L1NlbnNpYmlsaXR5LUJvbGRJdGFsaWMuc3ZnI1NlbnNpYmlsaXR5JykgZm9ybWF0KCdzdmcnKTtcclxuXHRmb250LXdlaWdodDogYm9sZDtcclxuXHRmb250LXN0eWxlOiBpdGFsaWM7XHJcbn1cclxuXHJcbkBmb250LWZhY2Uge1xyXG5cdGZvbnQtZmFtaWx5OiAnQmViYXMgTmV1ZSc7XHJcblx0c3JjOiB1cmwoJy4uL2ZvbnRzL0JlYmFzTmV1ZS9CZWJhc05ldWVCb2xkLmVvdCcpO1xyXG5cdHNyYzogdXJsKCcuLi9mb250cy9CZWJhc05ldWUvQmViYXNOZXVlQm9sZC5lb3Q/I2llZml4JykgZm9ybWF0KCdlbWJlZGRlZC1vcGVudHlwZScpLFxyXG5cdFx0IHVybCgnLi4vZm9udHMvQmViYXNOZXVlL0JlYmFzTmV1ZUJvbGQud29mZjInKSBmb3JtYXQoJ3dvZmYyJyksXHJcblx0XHQgdXJsKCcuLi9mb250cy9CZWJhc05ldWUvQmViYXNOZXVlQm9sZC53b2ZmJykgZm9ybWF0KCd3b2ZmJyksXHJcblx0XHQgdXJsKCcuLi9mb250cy9CZWJhc05ldWUvQmViYXNOZXVlQm9sZC5zdmcjQmViYXNOZXVlQm9sZCcpIGZvcm1hdCgnc3ZnJyk7XHJcblx0Zm9udC13ZWlnaHQ6IGJvbGQ7XHJcblx0Zm9udC1zdHlsZTogbm9ybWFsO1xyXG59XHJcblxyXG4vLyBGb250IHN0YWNrXHJcbiRmb250LXByaW1hcnk6ICAgICAgICAgICAgJ1NlbnNpYmlsaXR5JywgJ0hlbHZldGljYSBOZXVlJywgSGVsdmV0aWNhLCBBcmlhbCwgc2Fucy1zZXJpZiAhZGVmYXVsdDtcclxuJGZvbnQtc2Vjb25kYXJ5OiAgICAgICAgICAnQmViYXMgTmV1ZScsICdIZWx2ZXRpY2EgTmV1ZScsIEhlbHZldGljYSwgQXJpYWwsIHNhbnMtc2VyaWYgIWRlZmF1bHQ7XHJcbiRmb250LWZhbWlseS1tb25vc3BhY2U6ICAgTWVubG8sIE1vbmFjbywgQ29uc29sYXMsIFwiQ291cmllciBOZXdcIiwgbW9ub3NwYWNlICFkZWZhdWx0O1xyXG5cclxuJGZvbnQtc2l6ZS1iYXNlOiAgICAgICAgICAxOHB4ICFkZWZhdWx0OyAvLyAxNnB4XHJcbiRmb250LXNpemUtc21hbGw6ICAgICAgICAgY2VpbCgoJGZvbnQtc2l6ZS1iYXNlICogMC44NzUpKTsgLy8gfjE0cHhcclxuJGZvbnQtc2l6ZS1tZWQ6ICAgICAgICAgICBjZWlsKCgkZm9udC1zaXplLWJhc2UgKiAxLjEyNSkpOyAvLyB+MThweFxyXG4kZm9udC1zaXplLWxhcmdlOiAgICAgICAgIGNlaWwoKCRmb250LXNpemUtYmFzZSAqIDEuMzc1KSk7IC8vIH4yMnB4XHJcbiRmb250LXNpemUteGxhcmdlOiAgICAgICAgY2VpbCgoJGZvbnQtc2l6ZS1iYXNlICogMS44NzUpKTsgLy8gfjMwcHhcclxuXHJcbi8vIFVuaXQtbGVzcyBgbGluZS1oZWlnaHRgIGZvciB1c2UgaW4gY29tcG9uZW50cyBsaWtlIGJ1dHRvbnMuXHJcbiRsaW5lLWhlaWdodC1iYXNlOiAgICAgICAgMS41ICFkZWZhdWx0OyAvLyAyNy8xNlxyXG5cclxuLy8gQ29tcHV0ZWQgXCJsaW5lLWhlaWdodFwiIChgZm9udC1zaXplYCAqIGBsaW5lLWhlaWdodGApIGZvciB1c2Ugd2l0aCBgbWFyZ2luYCwgYHBhZGRpbmdgLCBldGMuXHJcbiRsaW5lLWhlaWdodC1jb21wdXRlZDogICAgZmxvb3IoKCRmb250LXNpemUtYmFzZSAqICRsaW5lLWhlaWdodC1iYXNlKSkgIWRlZmF1bHQ7IC8vIH4yNHB4XHJcblxyXG5cclxuLy8gLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxyXG4gICAvLyBHbG9iYWwgdGV4dCBjb2xvciBvbiBgPGJvZHk+YFxyXG4vLyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXHJcblxyXG4kdGV4dC1jb2xvcjogJGNvbG9yLWJyYW5kLXByaW1hcnktMSAhZGVmYXVsdDsgXHJcblxyXG5cclxuLy8gLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxyXG4gICAvLyBMaW5rc1xyXG4vLyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXHJcblxyXG4kbGluay1jb2xvcjogICAgICAgICAgICAgICAgJGNvbG9yLWJyYW5kLXByaW1hcnktMiAhZGVmYXVsdDtcclxuJGxpbmstZGVjb3JhdGlvbjogICAgICAgICAgIHVuZGVybGluZSAhZGVmYXVsdDtcclxuJGxpbmstaG92ZXItY29sb3I6ICAgICAgICAgICRjb2xvci1icmFuZC1zZWNvbmRhcnktMi1kYXJrICFkZWZhdWx0O1xyXG4kbGluay1ob3Zlci1kZWNvcmF0aW9uOiAgICAgbm9uZSAhZGVmYXVsdDtcclxuJGxpbmstdmlzaXRlZC1jb2xvcjogICAgICAgICRjb2xvci1icmFuZC1zZWNvbmRhcnktNCAhZGVmYXVsdDtcclxuJGxpbmstdmlzaXRlZC1ob3Zlci1jb2xvcjogICRjb2xvci1icmFuZC1zZWNvbmRhcnktMS1kYXJrICFkZWZhdWx0O1xyXG5cclxuXHJcbi8vIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cclxuICAgLy8gSGVhZGVyc1xyXG4vLyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXHJcblxyXG4vLyoqIEJ5IGRlZmF1bHQsIHRoaXMgaW5oZXJpdHMgZnJvbSB0aGUgYDxib2R5PmAuXHJcbi8vICRoZWFkaW5ncy1mb250LWZhbWlseTogICAgJGZvbnQtc2Vjb25kYXJ5ICFkZWZhdWx0O1xyXG4vLyAkaGVhZGluZ3MtZm9udC13ZWlnaHQ6ICAgIGJvbGQgIWRlZmF1bHQ7XHJcbiRoZWFkaW5ncy1saW5lLWhlaWdodDogICAgMS4xICFkZWZhdWx0O1xyXG4kaGVhZGluZ3MtY29sb3I6ICAgICAgICAgICRjb2xvci1icmFuZC1wcmltYXJ5LTIgIWRlZmF1bHQ7XHJcblxyXG4kZm9udC1zaXplLWgxOiAgICAgICAgICAgIGZsb29yKCgkZm9udC1zaXplLWJhc2UgKiA2LjQpKSAhZGVmYXVsdDsgLy8gfjExNXB4XHJcbiRmb250LXNpemUtaDI6ICAgICAgICAgICAgZmxvb3IoKCRmb250LXNpemUtYmFzZSAqIDIuNikpICFkZWZhdWx0OyAvLyB+NDZweFxyXG4kZm9udC1zaXplLWgzOiAgICAgICAgICAgIGNlaWwoKCRmb250LXNpemUtYmFzZSAqIDIuMykpICFkZWZhdWx0OyAvLyB+NDJweFxyXG4kZm9udC1zaXplLWg0OiAgICAgICAgICAgIGNlaWwoKCRmb250LXNpemUtYmFzZSAqIDIuMSkpICFkZWZhdWx0OyAgLy8gfjM4cHhcclxuJGZvbnQtc2l6ZS1oNTogICAgICAgICAgICBjZWlsKCgkZm9udC1zaXplLWJhc2UgKiAyLjEpKSAhZGVmYXVsdDsgIC8vIH4zOHB4XHJcbiRmb250LXNpemUtaDY6ICAgICAgICAgICAgY2VpbCgoJGZvbnQtc2l6ZS1iYXNlICogMi4xKSkgIWRlZmF1bHQ7ICAvLyB+MzhweFxyXG5cclxuXHJcbi8vIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cclxuICAgLy8gQmFja2dyb3VuZCBjb2xvcnNcclxuLy8gLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxyXG5cclxuJGNvbG9yLWJnOiAgICAgICAgICAgICAgICAgJGNvbG9yLXJldmVyc2VkICFkZWZhdWx0O1xyXG4kY29sb3ItYmctYWx0OiAgICAgICAgICAgICAkY29sb3ItZ3JleS0yICFkZWZhdWx0O1xyXG5cclxuJGNvbG9yLWJnLW11dGVkOiAgICAgICAgICAgJGNvbG9yLWdyZXktMSAhZGVmYXVsdDtcclxuJGNvbG9yLWJnLXByaW1hcnk6ICAgICAgICAgJGNvbG9yLWJyYW5kLXByaW1hcnktMSAhZGVmYXVsdDtcclxuJGNvbG9yLWJnLXNlY29uZGFyeTogICAgICAgJGNvbG9yLWJyYW5kLXNlY29uZGFyeS0xICFkZWZhdWx0O1xyXG4kY29sb3ItYmctcG9zaXRpdmU6ICAgICAgICAkY29sb3ItdXRpbGl0eS1wb3NpdGl2ZSAhZGVmYXVsdDtcclxuJGNvbG9yLWJnLXBvc2l0aXZlLXN1YnRsZTogJGNvbG9yLXV0aWxpdHktcG9zaXRpdmUtc3VidGxlICFkZWZhdWx0O1xyXG4kY29sb3ItYmctbmVnYXRpdmU6ICAgICAgICAkY29sb3ItdXRpbGl0eS1uZWdhdGl2ZSAhZGVmYXVsdDtcclxuJGNvbG9yLWJnLW5lZ2F0aXZlLXN1YnRsZTogJGNvbG9yLXV0aWxpdHktbmVnYXRpdmUtc3VidGxlICFkZWZhdWx0O1xyXG4vLyAkY29sb3ItYmctY2F1dGlvbjogICAgICAgICAkY29sb3ItdXRpbGl0eS1jYXV0aW9uICFkZWZhdWx0O1xyXG4vLyAkY29sb3ItYmctY2F1dGlvbi1zdWJ0bGU6ICAkY29sb3ItdXRpbGl0eS1jYXV0aW9uLXN1YnRsZSAhZGVmYXVsdDtcclxuLy8gJGNvbG9yLWJnLW5ldXRyYWw6ICAgICAgICAgJGNvbG9yLXV0aWxpdHktbmV1dHJhbCAhZGVmYXVsdDtcclxuLy8gJGNvbG9yLWJnLW5ldXRyYWwtc3VidGxlOiAgJGNvbG9yLXV0aWxpdHktbmV1dHJhbC1zdWJ0bGUgIWRlZmF1bHQ7XHJcblxyXG5cclxuLy8gLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxyXG4gICAvLyBCb3JkZXJzXHJcbi8vIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cclxuXHJcbiRib3JkZXItY29sb3I6ICAgICAgICRjb2xvci1icmFuZC1wcmltYXJ5LTEgIWRlZmF1bHQ7XHJcbiRib3JkZXItY29sb3ItbGlnaHQ6ICRjb2xvci1ncmV5LTMgIWRlZmF1bHQ7XHJcbiRib3JkZXItY29sb3ItZGFyazogICRjb2xvci1ncmV5LTUgIWRlZmF1bHQ7XHJcblxyXG5cclxuLy8gLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxyXG4gICAvLyBCbG9ja3F1b3Rlc1xyXG4vLyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXHJcblxyXG4kYmxvY2txdW90ZS1mb250LXNpemU6ICAgIGNlaWwoKCRmb250LXNpemUtYmFzZSAqIDcuMTg3NSkpICFkZWZhdWx0OyAvLyB+MTE1cHhcclxuLy8gJGJsb2NrcXVvdGUtYm9yZGVyLWNvbG9yOiAkY29sb3ItYnJhbmQtcHJpbWFyeS0yICFkZWZhdWx0O1xyXG4kYmxvY2txdW90ZS1zbWFsbC1jb2xvcjogICR0ZXh0LWNvbG9yICFkZWZhdWx0O1xyXG4vLyAkYmxvY2txdW90ZS1iZzogICAgICAgICAgICRjb2xvci1icmFuZC1wcmltYXJ5LTEtLTEwICFkZWZhdWx0O1xyXG5cclxuXHJcbi8vIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cclxuICAgLy8gTWFya1xyXG4vLyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXHJcblxyXG4kbWFyay1jb2xvcjogI0ZGMCAhZGVmYXVsdDtcclxuXHJcblxyXG4vLyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXHJcbiAgIC8vIFRhYmxlc1xyXG4vLyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXHJcblxyXG4kdGFibGUtYm9yZGVyLWNvbG9yOiAkYm9yZGVyLWNvbG9yLWxpZ2h0ICFkZWZhdWx0O1xyXG4kdGFibGUtc3RyaXBlZC1iZzogICAkY29sb3ItZ3JleS0xICFkZWZhdWx0O1xyXG4kdGFibGUtcm93LWhvdmVyOiAgICBsaWdodGVuKCRjb2xvci1icmFuZC1zZWNvbmRhcnktMSwgMzUlKSAhZGVmYXVsdDtcclxuXHJcbi8vIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cclxuICAgLy8gRm9ybXNcclxuLy8gLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxyXG5cclxuJGZvcm0tdGV4dGFyZWEtYmc6ICAgICAgICAgICAgICRjb2xvci1yZXZlcnNlZCAhZGVmYXVsdDtcclxuJGZvcm0taW5wdXQtYmc6ICAgICAgICAgICAgICAgICRjb2xvci1ncmV5LTEgIWRlZmF1bHQ7XHJcbiRmb3JtLWlucHV0LWJnLWhvdmVyOiAgICAgICAgICBsaWdodGVuKCRmb3JtLWlucHV0LWJnLCAyJSkgIWRlZmF1bHQ7IFxyXG4kZm9ybS1pbnB1dC1iZy1jaGVja2VkOiAgICAgICAgJGNvbG9yLXV0aWxpdHktcG9zaXRpdmUgIWRlZmF1bHQ7XHJcbiRmb3JtLWlucHV0LWJnLWNoZWNrZWQtaG92ZXI6ICBkYXJrZW4oJGZvcm0taW5wdXQtYmctY2hlY2tlZCwgNSUpICFkZWZhdWx0O1xyXG5cclxuJGZvcm0tYm9yZGVyOiAgICAgICAgICAgICAgICAgICRib3JkZXItY29sb3IgIWRlZmF1bHQ7XHJcbiRmb3JtLWJvcmRlci1mb2N1czogICAgICAgICAgICAkY29sb3ItYnJhbmQtcHJpbWFyeS0yICFkZWZhdWx0O1xyXG4kZm9ybS1ib3JkZXItY2hlY2tlZDogICAgICAgICAgJGNvbG9yLXV0aWxpdHktcG9zaXRpdmUgIWRlZmF1bHQ7IFxyXG4kZm9ybS1ib3JkZXItY2hlY2tlZC1ob3ZlcjogICAgZGFya2VuKCRmb3JtLWJvcmRlci1jaGVja2VkLCA1JSkgIWRlZmF1bHQ7XHJcblxyXG4kZm9ybS10aWNrOiAgICAgICAgICAgICAgICAgICAgJGNvbG9yLXJldmVyc2VkICFkZWZhdWx0O1xyXG4kZm9ybS10aWNrLWRpc2FibGVkOiAgICAgICAgICAgJGNvbG9yLWdyZXktNSAhZGVmYXVsdDtcclxuXHJcbiRmb3JtLXNlbGVjdC1iZzogICAgICAgICAgICAgICAkY29sb3ItcmV2ZXJzZWQgIWRlZmF1bHQ7XHJcbiRmb3JtLXNlbGVjdC1iZy1ob3ZlcjogICAgICAgICAkY29sb3ItZ3JleS0xICFkZWZhdWx0O1xyXG5cclxuLy8gJGZvcm0tYnV0dG9uLWJvcmRlcjogICAgICAgICAgIGRhcmtlbigkY29sb3ItdXRpbGl0eS1wb3NpdGl2ZSwgMTAlKSAhZGVmYXVsdDtcclxuLy8gJGZvcm0tYnV0dG9uLWJnOiAgICAgICAgICAgICAgICRjb2xvci11dGlsaXR5LXBvc2l0aXZlICFkZWZhdWx0O1xyXG4vLyAkZm9ybS1idXR0b24tdGV4dC1zaGFkb3c6ICAgICAgZGFya2VuKCRjb2xvci11dGlsaXR5LXBvc2l0aXZlLCAyMCUpICFkZWZhdWx0O1xyXG5cclxuLy8gLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxyXG4gICAvLyBCdXR0b25zXHJcbi8vIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cclxuXHJcbiRidXR0b24tYmc6ICAgICAgICAgICAgICAgICAgICAkY29sb3ItcmV2ZXJzZWQgIWRlZmF1bHQ7XHJcbiRidXR0b24tYmctZGlzYWJsZWQ6ICAgICAgICAgICAkY29sb3ItYmctbXV0ZWQgIWRlZmF1bHQ7XHJcbiRidXR0b24tYmctcG9zaXRpdmU6ICAgICAgICAgICAkY29sb3ItdXRpbGl0eS1wb3NpdGl2ZSAhZGVmYXVsdDtcclxuLy8gJGJ1dHRvbi1iZy1uZWdhdGl2ZTogICAgICAgICAgICRjb2xvci11dGlsaXR5LW5lZ2F0aXZlICFkZWZhdWx0O1xyXG4vLyAkYnV0dG9uLWJnLWNhdXRpb246ICAgICAgICAgICAgJGNvbG9yLXV0aWxpdHktY2F1dGlvbiAhZGVmYXVsdDtcclxuLy8gJGJ1dHRvbi1iZy1uZXV0cmFsOiAgICAgICAgICAgIGRhcmtlbigkY29sb3ItdXRpbGl0eS1uZXV0cmFsLCAxMCUpICFkZWZhdWx0O1xyXG5cclxuJGJ1dHRvbi1iZy1ob3ZlcjogICAgICAgICAgICAgICRjb2xvci1ncmV5LTIgIWRlZmF1bHQ7XHJcbiRidXR0b24tYmctZGlzYWJsZWQtaG92ZXI6ICAgICAkYnV0dG9uLWJnLWRpc2FibGVkICFkZWZhdWx0O1xyXG4kYnV0dG9uLWJnLXBvc2l0aXZlLWhvdmVyOiAgICAgZGFya2VuKCRidXR0b24tYmctcG9zaXRpdmUsIDEwJSkgIWRlZmF1bHQ7XHJcbi8vICRidXR0b24tYmctbmVnYXRpdmUtaG92ZXI6ICAgICBkYXJrZW4oJGJ1dHRvbi1iZy1uZWdhdGl2ZSwgMTAlKSAhZGVmYXVsdDtcclxuLy8gJGJ1dHRvbi1iZy1jYXV0aW9uLWhvdmVyOiAgICAgIGRhcmtlbigkYnV0dG9uLWJnLWNhdXRpb24sIDEwJSkgIWRlZmF1bHQ7XHJcbi8vICRidXR0b24tYmctbmV1dHJhbC1ob3ZlcjogICAgICBkYXJrZW4oJGNvbG9yLXV0aWxpdHktbmV1dHJhbCwgMjAlKSAhZGVmYXVsdDtcclxuXHJcbiRidXR0b24tYm9yZGVyOiAgICAgICAgICAgICAgICAkYm9yZGVyLWNvbG9yICFkZWZhdWx0O1xyXG4kYnV0dG9uLWJvcmRlci1kaXNhYmxlZDogICAgICAgJGJvcmRlci1jb2xvci1saWdodCAhZGVmYXVsdDtcclxuJGJ1dHRvbi1ib3JkZXItcG9zaXRpdmU6ICAgICAgICRjb2xvci11dGlsaXR5LXBvc2l0aXZlICFkZWZhdWx0O1xyXG4vLyAkYnV0dG9uLWJvcmRlci1uZWdhdGl2ZTogICAgICAgJGNvbG9yLXV0aWxpdHktbmVnYXRpdmUgIWRlZmF1bHQ7XHJcbi8vICRidXR0b24tYm9yZGVyLWNhdXRpb246ICAgICAgICAkY29sb3ItdXRpbGl0eS1jYXV0aW9uICFkZWZhdWx0O1xyXG4vLyAkYnV0dG9uLWJvcmRlci1uZXV0cmFsOiAgICAgICAgZGFya2VuKCRjb2xvci11dGlsaXR5LW5ldXRyYWwsIDEwJSkgIWRlZmF1bHQ7XHJcblxyXG4kYnV0dG9uLWJvcmRlci1ob3ZlcjogICAgICAgICAgJGJvcmRlci1jb2xvciAhZGVmYXVsdDtcclxuJGJ1dHRvbi1ib3JkZXItZGlzYWJsZWQtaG92ZXI6ICRidXR0b24tYm9yZGVyLWRpc2FibGVkICFkZWZhdWx0O1xyXG4kYnV0dG9uLWJvcmRlci1wb3NpdGl2ZS1ob3ZlcjogZGFya2VuKCRidXR0b24tYm9yZGVyLXBvc2l0aXZlLCAxMCUpICFkZWZhdWx0O1xyXG4vLyAkYnV0dG9uLWJvcmRlci1uZWdhdGl2ZS1ob3ZlcjogZGFya2VuKCRidXR0b24tYm9yZGVyLW5lZ2F0aXZlLCAxMCUpICFkZWZhdWx0O1xyXG4vLyAkYnV0dG9uLWJvcmRlci1jYXV0aW9uLWhvdmVyOiAgZGFya2VuKCRidXR0b24tYm9yZGVyLWNhdXRpb24sIDEwJSkgIWRlZmF1bHQ7XHJcbi8vICRidXR0b24tYm9yZGVyLW5ldXRyYWwtaG92ZXI6ICBkYXJrZW4oJGNvbG9yLXV0aWxpdHktbmV1dHJhbCwgMjAlKSAhZGVmYXVsdDtcclxuXHJcblxyXG4vLyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXHJcbi8qXHJcbiAgICMgICAgICMgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFxyXG4gICAjIyAgICMjICMjIyMjIyAjIyMjIyAgIyAgICMjICAgICAgICAgICAgICAgICBcclxuICAgIyAjICMgIyAjICAgICAgIyAgICAjICMgICMgICMgICAgICAgICAgICAgICAgXHJcbiAgICMgICMgICMgIyMjIyMgICMgICAgIyAjICMgICAgIyAgICAgICAgICAgICAgIFxyXG4gICAjICAgICAjICMgICAgICAjICAgICMgIyAjIyMjIyMgICAgICAgICAgICAgICBcclxuICAgIyAgICAgIyAjICAgICAgIyAgICAjICMgIyAgICAjICAgICAgICAgICAgICAgXHJcbiAgICMgICAgICMgIyMjIyMjICMjIyMjICAjICMgICAgIyAgICAgICAgICAgICAgIFxyXG5cdFx0XHRcdFx0XHRcdFx0XHRcdFx0XHRcclxuXHQjIyMjIyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFxyXG4gICAjICAgICAjICMgICAgIyAjIyMjIyMgIyMjIyMgICMgIyMjIyMjICAjIyMjICBcclxuICAgIyAgICAgIyAjICAgICMgIyAgICAgICMgICAgIyAjICMgICAgICAjICAgICAgXHJcbiAgICMgICAgICMgIyAgICAjICMjIyMjICAjICAgICMgIyAjIyMjIyAgICMjIyMgIFxyXG4gICAjICAgIyAjICMgICAgIyAjICAgICAgIyMjIyMgICMgIyAgICAgICAgICAgIyBcclxuICAgIyAgICAjICAjICAgICMgIyAgICAgICMgICAjICAjICMgICAgICAjICAgICMgXHJcblx0IyMjIyAjICAjIyMjICAjIyMjIyMgIyAgICAjICMgIyMjIyMjICAjIyMjICBcclxuKi8gICBcclxuLy8gLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxyXG5cclxuLypcclxuICAgU2VlIHRoaXMgYXJ0aWNsZSBmb3IgZXhwbGFuYXRpb24gb24gd2h5IHVzaW5nIFwiZW1cIiBpcyBhIGJldHRlciBhbmQgXHJcbiAgIG1vcmUgcmVsaWFibGUgc29sdXRpb24gdGhhbiBcInB4XCI6XHJcblxyXG4gICBodHRwczovL3plbGx3ay5jb20vYmxvZy9tZWRpYS1xdWVyeS11bml0cy9cclxuKi9cclxuXHJcbiRkZXZpY2UteHNtLXdpZHRoOiAyNi42NjY2NjY2NjdlbTsgIC8vIDQ4MHB4IC8gMThweCAoYmFzZSBmb250IHNpemUpXHJcbiRkZXZpY2Utc20td2lkdGg6ICA0Mi42NjY2NjY2NjdlbTsgIC8vIDc2OHB4IC8gMThweCAoYmFzZSBmb250IHNpemUpXHJcbiRkZXZpY2UtbWQtd2lkdGg6ICA1My4zMzMzMzMzMzNlbTsgIC8vIDk2MHB4IC8gMThweCAoYmFzZSBmb250IHNpemUpXHJcbiRkZXZpY2UtbGctd2lkdGg6ICA2Ni42NjY2NjY2NjdlbTsgIC8vIDEyMDBweCAvIDE4cHggKGJhc2UgZm9udCBzaXplKVxyXG4kZGV2aWNlLXhsZy13aWR0aDogODguODg4ODg4ODg5ZW07IC8vIDE2MDBweCAvIDE4cHggKGJhc2UgZm9udCBzaXplKVxyXG5cclxuXHJcbi8vIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cclxuLypcclxuXHQjIyMjIyAgICAgICAgICAgICAgICAgICAgICMgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgXHJcbiAgICMgICAgICMgIyMjIyMgICMgIyMjIyMgICAgICMgICAgICAgICAjIyAgICMgICAjICAjIyMjICAjICAgICMgIyMjIyMgXHJcbiAgICMgICAgICAgIyAgICAjICMgIyAgICAjICAgICMgICAgICAgICMgICMgICAjICMgICMgICAgIyAjICAgICMgICAjICAgXHJcbiAgICMgICMjIyMgIyAgICAjICMgIyAgICAjICAgICMgICAgICAgIyAgICAjICAgIyAgICMgICAgIyAjICAgICMgICAjICAgXHJcbiAgICMgICAgICMgIyMjIyMgICMgIyAgICAjICAgICMgICAgICAgIyMjIyMjICAgIyAgICMgICAgIyAjICAgICMgICAjICAgXHJcbiAgICMgICAgICMgIyAgICMgICMgIyAgICAjICAgICMgICAgICAgIyAgICAjICAgIyAgICMgICAgIyAjICAgICMgICAjICAgXHJcblx0IyMjIyMgICMgICAgIyAjICMjIyMjICAgICAjIyMjIyMjICMgICAgIyAgICMgICAgIyMjIyAgICMjIyMgICAgIyAgIFxyXG4qLyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBcclxuLy8gLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxyXG5cclxuLypcclxuICBUbyBjYWxjdWxhdGUgdGhlIGdyaWRzIHdlIHVzZSBwZXJjZW50YWdlcyBhbmQgdGhlIFNBU1MgY2FsYyBmZWF0dXJlLlxyXG4gIFxyXG4gIFRoZSBjYWxjdWxhdGlvbnMgd29yayBhcyBmb2xsb3dzOlxyXG5cdC0gVGhlIHdpZHRoIHN0YXJ0cyBhdCAxMDAlIG9mIHRoZSBwYXJlbnQgY29udGFpbmVyIG1pbnVzIHRoZSBcclxuXHQgIGxlZnQgKyByaWdodCBzaWRlIG1hcmdpbi4gXHJcblx0LSBNdWx0aXBseSB0aGlzIHJlc3VsdCBieSB0aGUgYW1vdW50IG9mIGNvbHVtbnMgdGhlIGNoaWxkIGNvbnRhaW5lciBcclxuXHQgIHNob3VsZCBjb3ZlciBkaXZpZGVkIGJ5IHRoZSBhbW91bnQgb2YgY29sdW1ucyBpbiB0aGUgZ3JpZC5cclxuXHJcbiAgMS4gMTAwJSAtIChsZWZ0IG1hcmdpbiArIHJpZ2h0IG1hcmdpbilcclxuICAyLiAqICh0b3RhbCBjb2x1bW5zIC8gbnVtYmVyIG9mIGNvbHVtbnMgcmVxdWlyZWQgdG8gY292ZXIpXHJcbiAgMy4gLyBieSBzYW1lIG51bWJlciB0aGF0IGlzIHRoZSByZXN1bHQgaW4gc3RlcCAyXHJcblxyXG5cclxuICBFeGFtcGxlIDE6IDEyIGdyaWQgbGF5b3V0XHJcblxyXG4gIFRoZSBmaXJzdCBjaGlsZCBjb250YWluZXIgc2hvdWxkIGNvdmVyIDMgY29sdW1ucy5cclxuICBXZSBoYXZlIGFscmVhZHkgZGV0ZXJpbWVkIHRoZSBtYXJnaW4gbGVmdCBhbmQgcmlnaHQuIEZvciB0aGlzIGV4YW1wbGUgXHJcbiAgdGhleSBhcmUgMTBweCBlYWNoLlxyXG5cclxuICB3aWR0aDogY2FsYygoMTAwJSAtIDMwcHggKiA0KSAvIDQpOyA9IDMgY29sdW1uc1xyXG5cclxuXHJcbiAgRXhhbXBsZSAyOiAxNiBjb2x1bW4gZ3JpZCBsYXlvdXRcclxuIFxyXG4gIFRoZSBmaXJzdCBjaGlsZCBjb250YWluZXIgc2hvdWxkIGNvdmVyIDMgY29sdW1ucy5cclxuICBXZSBoYXZlIGFscmVhZHkgZGV0ZXJpbWVkIHRoZSBtYXJnaW4gbGVmdCBhbmQgcmlnaHQuIEZvciB0aGlzIGV4YW1wbGUgXHJcbiAgdGhleSBhcmUgMTBweCBlYWNoLlxyXG5cclxuICB3aWR0aDogY2FsYygoMTAwJSAtIDMwcHggKiA1LjMzMzMzMzMzMzMpIC8gNS4zMzMzMzMzMzMzKTsgPSAzIGNvbHVtbnNcclxuKi9cclxuXHJcbi8vIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cclxuICAgLy8gMTIgQ29sdW1uIEdyaWQgdy8gMTVweCBtYXJnaW4gbGVmdCBhbmQgcmlnaHRcclxuICAgLy8gRWRpdCB0aGUgbWFyZ2lucyBhY2NvcmRpbmdseVxyXG4vLyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXHJcblxyXG4kbC1ncmlkLTEyLWNvbC0xOiAgY2FsYygoMTAwJSAtIDMwcHggKiAxMikgLyAxMik7XHJcbiRsLWdyaWQtMTItY29sLTI6ICBjYWxjKCgxMDAlIC0gMzBweCAqIDYpIC8gNik7XHJcbiRsLWdyaWQtMTItY29sLTM6ICBjYWxjKCgxMDAlIC0gMzBweCAqIDQpIC8gNCk7XHJcbiRsLWdyaWQtMTItY29sLTQ6ICBjYWxjKCgxMDAlIC0gMzBweCAqIDMpIC8gMyk7XHJcbiRsLWdyaWQtMTItY29sLTU6ICBjYWxjKCgxMDAlIC0gMzBweCAqIDIuNCkgLyAyLjQpO1xyXG4kbC1ncmlkLTEyLWNvbC02OiAgY2FsYygoMTAwJSAtIDMwcHggKiAyKSAvIDIpO1xyXG4kbC1ncmlkLTEyLWNvbC03OiAgY2FsYygoMTAwJSAtIDMwcHggKiAxLjcxNDI4NTcxNDMpIC8gMS43MTQyODU3MTQzKTtcclxuJGwtZ3JpZC0xMi1jb2wtODogIGNhbGMoKDEwMCUgLSAzMHB4ICogMS41KSAvIDEuNSk7XHJcbiRsLWdyaWQtMTItY29sLTk6ICBjYWxjKCgxMDAlIC0gMzBweCAqIDEuMzMzMzMzMzMzMykgLyAxLjMzMzMzMzMzMzMpO1xyXG4kbC1ncmlkLTEyLWNvbC0xMDogY2FsYygoMTAwJSAtIDMwcHggKiAxLjIpIC8gMS4yKTtcclxuJGwtZ3JpZC0xMi1jb2wtMTE6IGNhbGMoKDEwMCUgLSAzMHB4ICogMS4wOTA5MDkwOTA5KSAvIDEuMDkwOTA5MDkwOSk7XHJcbiRsLWdyaWQtMTItY29sLTEyOiBjYWxjKCgxMDAlIC0gMzBweCAqIDEpIC8gMSk7XHJcblxyXG4vLyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXHJcbiAgIC8vIDE2IENvbHVtbiBHcmlkIHcvIDE1cHggbWFyZ2luIGxlZnQgYW5kIHJpZ2h0XHJcbiAgIC8vIEVkaXQgdGhlIG1hcmdpbnMgYWNjb3JkaW5nbHlcclxuLy8gLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxyXG5cclxuJGwtZ3JpZC0xNi1jb2wtMTogIGNhbGMoKDEwMCUgLSAzMHB4ICogMTYpIC8gMTYpO1xyXG4kbC1ncmlkLTE2LWNvbC0yOiAgY2FsYygoMTAwJSAtIDMwcHggKiA4KSAvIDgpO1xyXG4kbC1ncmlkLTE2LWNvbC0zOiAgY2FsYygoMTAwJSAtIDMwcHggKiA1LjMzMzMzMzMzMzMpIC8gNS4zMzMzMzMzMzMzKTtcclxuJGwtZ3JpZC0xNi1jb2wtNDogIGNhbGMoKDEwMCUgLSAzMHB4ICogNCkgLyA0KTtcclxuJGwtZ3JpZC0xNi1jb2wtNTogIGNhbGMoKDEwMCUgLSAzMHB4ICogMy4yKSAvIDMuMik7XHJcbiRsLWdyaWQtMTYtY29sLTY6ICBjYWxjKCgxMDAlIC0gMzBweCAqIDIuNjY2NjY2NjY2NykgLyAyLjY2NjY2NjY2NjcpO1xyXG4kbC1ncmlkLTE2LWNvbC03OiAgY2FsYygoMTAwJSAtIDMwcHggKiAyLjI4NTcxNDI4NTcpIC8gMi4yODU3MTQyODU3KTtcclxuJGwtZ3JpZC0xNi1jb2wtODogIGNhbGMoKDEwMCUgLSAzMHB4ICogMikgLyAyKTtcclxuJGwtZ3JpZC0xNi1jb2wtOTogIGNhbGMoKDEwMCUgLSAzMHB4ICogMS43Nzc3Nzc3Nzc4KSAvIDEuNzc3Nzc3Nzc3OCk7XHJcbiRsLWdyaWQtMTYtY29sLTEwOiBjYWxjKCgxMDAlIC0gMzBweCAqIDEuNikgLyAxLjYpO1xyXG4kbC1ncmlkLTE2LWNvbC0xMTogY2FsYygoMTAwJSAtIDMwcHggKiAxLjQ1NDU0NTQ1NDUpIC8gMS40NTQ1NDU0NTQ1KTtcclxuJGwtZ3JpZC0xNi1jb2wtMTI6IGNhbGMoKDEwMCUgLSAzMHB4ICogMS4zMzMzMzMzMzMzKSAvIDEuMzMzMzMzMzMzMyk7XHJcbiRsLWdyaWQtMTYtY29sLTEzOiBjYWxjKCgxMDAlIC0gMzBweCAqIDEuMjMwNzY5MjMwOCkgLyAxLjIzMDc2OTIzMDgpO1xyXG4kbC1ncmlkLTE2LWNvbC0xNDogY2FsYygoMTAwJSAtIDMwcHggKiAxLjE0Mjg1NzE0MjkpIC8gMS4xNDI4NTcxNDI5KTtcclxuJGwtZ3JpZC0xNi1jb2wtMTU6IGNhbGMoKDEwMCUgLSAzMHB4ICogMS4wNjY2NjY2NjY3KSAvIDEuMDY2NjY2NjY2Nyk7XHJcbiRsLWdyaWQtMTYtY29sLTE2OiBjYWxjKCgxMDAlIC0gMzBweCAqIDEpIC8gMSk7XHJcblxyXG5cclxuLy8gLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxyXG4vKlxyXG5cdCMgICAgICMgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgXHJcblx0IyAgICAgIyAjIyMjIyMgIyAgICAjICMjIyMjICAgIyMjIyAgIyMjIyMgICAjIyMjICBcclxuXHQjICAgICAjICMgICAgICAjIyAgICMgIyAgICAjICMgICAgIyAjICAgICMgIyAgICAgIFxyXG5cdCMgICAgICMgIyMjIyMgICMgIyAgIyAjICAgICMgIyAgICAjICMgICAgIyAgIyMjIyAgXHJcblx0ICMgICAjICAjICAgICAgIyAgIyAjICMgICAgIyAjICAgICMgIyMjIyMgICAgICAgIyBcclxuXHQgICMgIyAgICMgICAgICAjICAgIyMgIyAgICAjICMgICAgIyAjICAgIyAgIyAgICAjIFxyXG5cdCAgICMgICAgIyMjIyMjICMgICAgIyAjIyMjIyAgICMjIyMgICMgICAgIyAgIyMjIyAgXHJcbiovICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFxyXG4vLyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXHJcblxyXG4vLyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXHJcbiAgIC8vIEhhbWJ1cmdlciBzZXR0aW5nc1xyXG4vLyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXHJcblxyXG4kaGFtYnVyZ2VyLXR5cGVzOiAoXHJcblx0c3BpblxyXG4pO1xyXG5cclxuJGhhbWJ1cmdlci1wYWRkaW5nLXggICAgICAgICAgICAgICAgICAgICAgIDogMTFweDtcclxuJGhhbWJ1cmdlci1wYWRkaW5nLXkgICAgICAgICAgICAgICAgICAgICAgIDogMTFweDtcclxuJGhhbWJ1cmdlci1sYXllci13aWR0aCAgICAgICAgICAgICAgICAgICAgIDogMzZweDtcclxuJGhhbWJ1cmdlci1sYXllci1oZWlnaHQgICAgICAgICAgICAgICAgICAgIDogNXB4O1xyXG4kaGFtYnVyZ2VyLWxheWVyLXNwYWNpbmcgICAgICAgICAgICAgICAgICAgOiA1cHg7XHJcbiRoYW1idXJnZXItbGF5ZXItY29sb3IgICAgICAgICAgICAgICAgICAgICA6ICM1NTU7XHJcbiRoYW1idXJnZXItbGF5ZXItYm9yZGVyLXJhZGl1cyAgICAgICAgICAgICA6IDA7XHJcbiRoYW1idXJnZXItaG92ZXItdHJhbnNpdGlvbi10aW1pbmctZnVuY3Rpb246IGVhc2U7XHJcblxyXG5cclxuLy8gLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxyXG4vKlxyXG5cdCMjIyMjIyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICMjIyMjIyMgICAgICAgICAgICAgICAgICAgICAgXHJcblx0IyAgICAgIyAjIyMjIyAgIyAgIyMjIyAgIyMjIyMgICMgIyMjIyMgIyAgICMgICAgICAgIyAgICAgICMjICAgIyMjIyMgICAjIyMjICBcclxuXHQjICAgICAjICMgICAgIyAjICMgICAgIyAjICAgICMgIyAgICMgICAgIyAjICAgICAgICAjICAgICAjICAjICAjICAgICMgIyAgICAgIFxyXG5cdCMjIyMjIyAgIyAgICAjICMgIyAgICAjICMgICAgIyAjICAgIyAgICAgIyAgICAgICAgICMgICAgIyAgICAjICMjIyMjICAgIyMjIyAgXHJcblx0IyAgICAgICAjIyMjIyAgIyAjICAgICMgIyMjIyMgICMgICAjICAgICAjICAgICAgICAgIyAgICAjIyMjIyMgIyAgICAjICAgICAgIyBcclxuXHQjICAgICAgICMgICAjICAjICMgICAgIyAjICAgIyAgIyAgICMgICAgICMgICAgICAgICAjICAgICMgICAgIyAjICAgICMgIyAgICAjIFxyXG5cdCMgICAgICAgIyAgICAjICMgICMjIyMgICMgICAgIyAjICAgIyAgICAgIyAgICAgICAgICMgICAgIyAgICAjICMjIyMjICAgIyMjIyAgXHJcbiovICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFxyXG4vLyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXHJcblxyXG4vLyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXHJcbiAgIC8vIFRhYiBjb2xvcnNcclxuLy8gLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxyXG5cclxuLypcclxuICBNb3N0IG9mIHRoZSBzZWNvbmRhcnkgY29sb3JzIGFyZSBqdXN0IH4xMC0xMyUgZGFya2VyIHRoYW4gcHJpbWFyeSBvbmVzXHJcbiAgV2UncmUgaGFyZGNvZGluZyBzZWNvbmRhcnkgY29sb3JzIHRvIG1ha2Ugc3VyZSBpdCBmaXQncyB0aGUgZGVzaWduXHJcbiAgSW4gY2FzZSB5b3UgbmVlZCB0byBhZGQgbmV3IGNvbG9yLCBmZWVsIGZyZWUgdG8gdXNlIGRhcmtlbigjWFhYWFhYLCAxMSUpIG9uIHByaW1hcnkgY29sb3I7XHJcbiovXHJcblxyXG4kcHJpb3JpdHktdGFiLWNvbG9yczogKFxyXG5cdChwcmltYXJ5OiAkY29sb3ItYnJhbmQtcHJpbWFyeS0yLCBzZWNvbmRhcnk6ICRjb2xvci1icmFuZC1wcmltYXJ5LTItZGFyayksXHJcblx0KHByaW1hcnk6ICRjb2xvci1icmFuZC1zZWNvbmRhcnktMSwgc2Vjb25kYXJ5OiAkY29sb3ItYnJhbmQtc2Vjb25kYXJ5LTEtZGFyayksXHJcblx0KHByaW1hcnk6ICRjb2xvci1icmFuZC1zZWNvbmRhcnktMiwgc2Vjb25kYXJ5OiAkY29sb3ItYnJhbmQtc2Vjb25kYXJ5LTItZGFyayksXHJcblx0KHByaW1hcnk6ICRjb2xvci1icmFuZC1zZWNvbmRhcnktMywgc2Vjb25kYXJ5OiAkY29sb3ItYnJhbmQtc2Vjb25kYXJ5LTMtZGFyayksXHJcblx0KHByaW1hcnk6ICRjb2xvci1icmFuZC1zZWNvbmRhcnktNCwgc2Vjb25kYXJ5OiAkY29sb3ItYnJhbmQtc2Vjb25kYXJ5LTQtZGFyaylcclxuKTtcclxuXHJcblxyXG4vLyBTaWRlIG1lbnVcclxuJHNpdGUtbWVudS1iYWNrZ3JvdW5kOiNmNWY1ZjU7IiwiLy8gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxyXG4gICAvLyB0aGVtZXMvX21peGlucy5zY3NzXHJcbi8vID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cclxuXHJcbi8vIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cclxuLypcclxuICAgICAjIyMjIyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBcclxuICAgICMgICAgICMgICMjIyMgICMgICAgIyAjICAgICMgICMjIyMgICMgICAgIyBcclxuICAgICMgICAgICAgIyAgICAjICMjICAjIyAjIyAgIyMgIyAgICAjICMjICAgIyBcclxuICAgICMgICAgICAgIyAgICAjICMgIyMgIyAjICMjICMgIyAgICAjICMgIyAgIyBcclxuICAgICMgICAgICAgIyAgICAjICMgICAgIyAjICAgICMgIyAgICAjICMgICMgIyBcclxuICAgICMgICAgICMgIyAgICAjICMgICAgIyAjICAgICMgIyAgICAjICMgICAjIyBcclxuICAgICAjIyMjIyAgICMjIyMgICMgICAgIyAjICAgICMgICMjIyMgICMgICAgIyBcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBcclxuICAgICAjIyMjIyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBcclxuICAgICMgICAgICMgIyMjIyMgIyAgICMgIyAgICAgICMjIyMjIyAgIyMjIyAgICBcclxuICAgICMgICAgICAgICAjICAgICMgIyAgIyAgICAgICMgICAgICAjICAgICAgICBcclxuICAgICAjIyMjIyAgICAjICAgICAjICAgIyAgICAgICMjIyMjICAgIyMjIyAgICBcclxuICAgICAgICAgICMgICAjICAgICAjICAgIyAgICAgICMgICAgICAgICAgICMgICBcclxuICAgICMgICAgICMgICAjICAgICAjICAgIyAgICAgICMgICAgICAjICAgICMgICBcclxuICAgICAjIyMjIyAgICAjICAgICAjICAgIyMjIyMjICMjIyMjIyAgIyMjIyAgICBcclxuKi9cclxuLy8gLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxyXG5cclxuLy8gLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxyXG4gICAvLyBCb3ggU2l6aW5nXHJcbi8vIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cclxuXHJcbkBtaXhpbiBib3gtc2l6aW5nIHtcclxuXHQtd2Via2l0LWJveC1zaXppbmc6IGJvcmRlci1ib3g7XHJcblx0ICAgLW1vei1ib3gtc2l6aW5nOiBib3JkZXItYm94O1xyXG5cdCAgICAgICAgYm94LXNpemluZzogYm9yZGVyLWJveDtcclxufVxyXG5cclxuLy8gRXhhbXBsZTogZGl2IHsgQGluY2x1ZGUgYm94LXNpemluZygpOyB9XHJcblxyXG4vLyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXHJcbiAgIC8vIEJveCBTaGFkb3dcclxuLy8gLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxyXG5cclxuQG1peGluIHNoYWRvdygkeCwgJHksICRibHVyLCAkY29sb3IpIHtcclxuXHQtd2Via2l0LWJveC1zaGFkb3c6ICR4ICR5ICRibHVyICRjb2xvcjtcclxuXHQgICAtbW96LWJveC1zaGFkb3c6ICR4ICR5ICRibHVyICRjb2xvcjtcclxuXHQgICAgICAgIGJveC1zaGFkb3c6ICR4ICR5ICRibHVyICRjb2xvcjtcclxufVxyXG5cclxuQG1peGluIHNoYWRvdy1pbnNldCgkeCwgJHksICRibHVyLCAkY29sb3IpIHtcclxuXHQtd2Via2l0LWJveC1zaGFkb3c6IGluc2V0ICR4ICR5ICRibHVyICRjb2xvcjtcclxuXHQgICAtbW96LWJveC1zaGFkb3c6IGluc2V0ICR4ICR5ICRibHVyICRjb2xvcjtcclxuXHQgICAgICAgIGJveC1zaGFkb3c6IGluc2V0ICR4ICR5ICRibHVyICRjb2xvcjtcclxufVxyXG5cclxuLy8gRXhhbXBsZTogZGl2IHsgQGluY2x1ZGUgc2hhZG93KDBweCwgMHB4LCA4cHgsICMzMzMpOyB9XHJcblxyXG4vLyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXHJcbiAgIC8vIEJvcmRlciBSYWRpdXNcclxuLy8gLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxyXG5cclxuQG1peGluIHJvdW5kZWQoJHJhZGl1cykge1xyXG5cdC13ZWJraXQtYm9yZGVyLXJhZGl1czogJHJhZGl1cztcclxuXHQgICAtbW96LWJvcmRlci1yYWRpdXM6ICRyYWRpdXM7XHJcblx0ICAgICAgICBib3JkZXItcmFkaXVzOiAkcmFkaXVzO1xyXG59XHJcblxyXG4vLyBFeGFtcGxlIGRpdiB7IEBpbmNsdWRlIHJvdW5kZWQoNnB4KTsgfVxyXG5cclxuLy8gLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxyXG4gICAvLyBUcmFuc2l0aW9uc1xyXG4vLyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXHJcblxyXG5AbWl4aW4gdHJhbnNpdGlvbigkcHJvcGVydHkpIHtcclxuXHQtd2Via2l0LXRyYW5zaXRpb246ICRwcm9wZXJ0eSAuMnMgZWFzZS1pbi1vdXQ7XHJcblx0ICAgLW1vei10cmFuc2l0aW9uOiAkcHJvcGVydHkgLjJzIGVhc2UtaW4tb3V0O1xyXG5cdCAgICAgLW8tdHJhbnNpdGlvbjogJHByb3BlcnR5IC4ycyBlYXNlLWluLW91dDtcclxuXHQgICAgICAgIHRyYW5zaXRpb246ICRwcm9wZXJ0eSAuMnMgZWFzZS1pbi1vdXQ7XHJcbn1cclxuXHJcbi8vIEV4YW1wbGUgMTogZGl2IHsgQGluY2x1ZGUgdHJhbnNpdGlvbiAoYm9yZGVyLWNvbG9yKTsgfVxyXG4vLyBFeGFtcGxlIDI6IGRpdiB7IEBpbmNsdWRlIHRyYW5zaXRpb24gKGJveC1zaGFkb3cpOyB9XHJcblxyXG4vLyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXHJcbiAgIC8vIE9wYWNpdHlcclxuLy8gLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxyXG5cclxuQG1peGluIG9wYWNpdHkoJG9wYWNpdHkpIHtcclxuXHRvcGFjaXR5OiAkb3BhY2l0eTtcclxuXHQkb3BhY2l0eS1pZTogJG9wYWNpdHkgKiAxMDA7XHJcblx0ZmlsdGVyOiBhbHBoYShvcGFjaXR5PSRvcGFjaXR5LWllKTsgLy9JRThcclxufVxyXG5cclxuLy8gRXhhbXBsZTogZGl2IHsgQGluY2x1ZGUgb3BhY2l0eSguNSk7IH1cclxuXHJcbi8vIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cclxuICAgLy8gTGluZWFyIEdyYWRpZW50XHJcbi8vIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cclxuXHJcbkBtaXhpbiBsaW5lYXItZ3JhZGllbnQoJGZyb20sICR0bykge1xyXG5cdC8qIEZhbGxiYWNrIGZvciBzYWQgYnJvd3NlcnMgKi9cclxuXHRiYWNrZ3JvdW5kLWNvbG9yOiAkdG87XHJcblx0LyogTW96aWxsYSBGaXJlZm94ICovXHJcblx0YmFja2dyb3VuZC1pbWFnZTogLW1vei1saW5lYXItZ3JhZGllbnQoJGZyb20sICR0byk7XHJcblx0LyogT3BlcmEgKi9cclxuXHRiYWNrZ3JvdW5kLWltYWdlOiAtby1saW5lYXItZ3JhZGllbnQoJGZyb20sICR0byk7XHJcblx0LyogV2Via2l0IChTYWZhcmkgNCssIENocm9tZSAxKykgKi9cclxuXHRiYWNrZ3JvdW5kLWltYWdlOiAtd2Via2l0LWdyYWRpZW50KGxpbmVhciwgbGVmdCB0b3AsIGxlZnQgYm90dG9tLCBjb2xvci1zdG9wKDAsICRmcm9tKSwgY29sb3Itc3RvcCgxLCAkdG8pKTtcclxuXHQvKiBXZWJraXQgKENocm9tZSAxMSspICovXHJcblx0YmFja2dyb3VuZC1pbWFnZTogLXdlYmtpdC1saW5lYXItZ3JhZGllbnQoJGZyb20sICR0byk7XHJcblx0LyogSUUxMCAqL1xyXG5cdGJhY2tncm91bmQtaW1hZ2U6IC1tcy1saW5lYXItZ3JhZGllbnQoJGZyb20sICR0byk7XHJcblx0LyogVzNDICovXHJcblx0YmFja2dyb3VuZC1pbWFnZTogbGluZWFyLWdyYWRpZW50KCRmcm9tLCAkdG8pO1xyXG59XHJcblxyXG4vLyBFeGFtcGxlOiBkaXYgeyBAaW5jbHVkZSBsaW5lYXItZ3JhZGllbnQoIzY2NiwgIzMzMyk7IH1cclxuXHJcbi8vIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cclxuICAgLy8gTGlzdHNcclxuLy8gLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxyXG5cclxuQG1peGluIGxpc3QtdW5zdHlsZWQge1xyXG5cdHBhZGRpbmctbGVmdDogMDtcclxuXHRsaXN0LXN0eWxlOiBub25lO1xyXG59XHJcblxyXG5cclxuLy8gLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxyXG4gLypcclxuICAgICMgICAgICMgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFxyXG4gICAgIyMgICAjIyAjIyMjIyMgIyMjIyMgICMgICAjIyAgICAgICAgICAgICAgICAgXHJcbiAgICAjICMgIyAjICMgICAgICAjICAgICMgIyAgIyAgIyAgICAgICAgICAgICAgICBcclxuICAgICMgICMgICMgIyMjIyMgICMgICAgIyAjICMgICAgIyAgICAgICAgICAgICAgIFxyXG4gICAgIyAgICAgIyAjICAgICAgIyAgICAjICMgIyMjIyMjICAgICAgICAgICAgICAgXHJcbiAgICAjICAgICAjICMgICAgICAjICAgICMgIyAjICAgICMgICAgICAgICAgICAgICBcclxuICAgICMgICAgICMgIyMjIyMjICMjIyMjICAjICMgICAgIyAgICAgICAgICAgICAgIFxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgXHJcbiAgICAgIyMjIyMgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBcclxuICAgICMgICAgICMgIyAgICAjICMjIyMjIyAjIyMjIyAgIyAjIyMjIyMgICMjIyMgIFxyXG4gICAgIyAgICAgIyAjICAgICMgIyAgICAgICMgICAgIyAjICMgICAgICAjICAgICAgXHJcbiAgICAjICAgICAjICMgICAgIyAjIyMjIyAgIyAgICAjICMgIyMjIyMgICAjIyMjICBcclxuICAgICMgICAjICMgIyAgICAjICMgICAgICAjIyMjIyAgIyAjICAgICAgICAgICAjIFxyXG4gICAgIyAgICAjICAjICAgICMgIyAgICAgICMgICAjICAjICMgICAgICAjICAgICMgXHJcbiAgICAgIyMjIyAjICAjIyMjICAjIyMjIyMgIyAgICAjICMgIyMjIyMjICAjIyMjICBcclxuKi8gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgXHJcbi8vIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cclxuLy8gLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxyXG4vLyBNYXggNDc5cHhcclxuLy8gLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxyXG5AbWl4aW4gZGV2aWNlLXhzbS1kb3duIHtcclxuICAgIEBtZWRpYSAobWF4LXdpZHRoOiAjeyRkZXZpY2UteHNtLXdpZHRofSkge1xyXG4gICAgICAgIEBjb250ZW50O1xyXG4gICAgfVxyXG59XHJcblxyXG4vLyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXHJcbiAgIC8vIE1pbmltdW0gNDgwcHggYW5kIHdpZGVyXHJcbi8vIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cclxuXHJcbkBtaXhpbiBkZXZpY2UteHNtIHsgXHJcblx0QG1lZGlhIChtaW4td2lkdGg6ICN7JGRldmljZS14c20td2lkdGh9KSB7XHJcblx0XHRAY29udGVudDtcclxuXHR9XHJcbn1cclxuXHJcbi8vIEV4YW1wbGU6IGRpdiB7IEBpbmNsdWRlIGRldmljZS14c20gfTtcclxuXHJcbi8vIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cclxuICAgLy8gTWluaW11bSA0ODBweCB0byA3NjdweCBvbmx5XHJcbi8vIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cclxuXHJcbkBtaXhpbiBkZXZpY2UteHNtLW9ubHkge1xyXG5cdEBtZWRpYSAobWluLXdpZHRoOiAjeyRkZXZpY2UteHNtLXdpZHRofSkgYW5kIChtYXgtd2lkdGg6ICN7JGRldmljZS1zbS13aWR0aH0pIHsgLy8gMXB4IC8gMTZweCAoYmFzZSBmb250IHNpemUpXHJcblx0XHRAY29udGVudDtcclxuXHR9XHJcbn1cclxuXHJcbi8vIEV4YW1wbGU6IGRpdiB7IEBpbmNsdWRlIGRldmljZS14c20tb25seSB9O1xyXG5cclxuLy8gLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxyXG4gICAvLyBNaW5pbXVtIDc2OHB4IGFuZCB3aWRlclxyXG4vLyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXHJcblxyXG5AbWl4aW4gZGV2aWNlLXNtIHtcclxuXHRAbWVkaWEgKG1pbi13aWR0aDogI3skZGV2aWNlLXNtLXdpZHRofSkge1xyXG5cdFx0QGNvbnRlbnQ7XHJcblx0fVxyXG59XHJcblxyXG4vLyBFeGFtcGxlOiBkaXYgeyBAaW5jbHVkZSBkZXZpY2Utc20gfTtcclxuXHJcbi8vIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cclxuICAgLy8gTWluaW11bSA3NjhweCB0byA5NTlweCBvbmx5XHJcbi8vIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cclxuXHJcbkBtaXhpbiBkZXZpY2Utc20tb25seSB7XHJcblx0QG1lZGlhIChtaW4td2lkdGg6ICN7JGRldmljZS1zbS13aWR0aH0pIGFuZCAobWF4LXdpZHRoOiAjeyRkZXZpY2UtbWQtd2lkdGh9KSB7IC8vIDFweCAvIDE2cHggKGJhc2UgZm9udCBzaXplKVxyXG5cdFx0QGNvbnRlbnQ7XHJcblx0fVxyXG59XHJcblxyXG4vLyBFeGFtcGxlOiBkaXYgeyBAaW5jbHVkZSBkZXZpY2Utc20tb25seSB9O1xyXG5cclxuLy8gLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxyXG4gICAvLyBNaW5pbXVtIDk2MHB4IGFuZCB3aWRlclxyXG4vLyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXHJcblxyXG5AbWl4aW4gZGV2aWNlLW1kIHtcclxuXHRAbWVkaWEgKG1pbi13aWR0aDogI3skZGV2aWNlLW1kLXdpZHRofSkge1xyXG5cdFx0QGNvbnRlbnQ7XHJcblx0fVxyXG59XHJcblxyXG4vLyBFeGFtcGxlOiBkaXYgeyBAaW5jbHVkZSBkZXZpY2UtbWQgfTtcclxuXHJcbi8vIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cclxuICAgLy8gTWluaW11bSA5NjBweCB0byAxMTk5cHggb25seVxyXG4vLyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXHJcblxyXG5AbWl4aW4gZGV2aWNlLW1kLW9ubHkge1xyXG5cdEBtZWRpYSAobWluLXdpZHRoOiAjeyRkZXZpY2UtbWQtd2lkdGh9KSBhbmQgKG1heC13aWR0aDogI3skZGV2aWNlLWxnLXdpZHRoIH0pIHsgLy8gMXB4IC8gMTZweCAoYmFzZSBmb250IHNpemUpXHJcblx0XHRAY29udGVudDtcclxuXHR9XHJcbn1cclxuXHJcbi8vIEV4YW1wbGU6IGRpdiB7IEBpbmNsdWRlIGRldmljZS1tZC1vbmx5IH07XHJcblxyXG4vLyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXHJcbiAgIC8vIE1pbmltdW0gMTIwMHB4IGFuZCB3aWRlclxyXG4vLyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXHJcblxyXG5AbWl4aW4gZGV2aWNlLWxnIHtcclxuXHRAbWVkaWEgKG1pbi13aWR0aDogI3skZGV2aWNlLWxnLXdpZHRofSkge1xyXG5cdFx0QGNvbnRlbnQ7XHJcblx0fVxyXG59XHJcblxyXG4vLyBFeGFtcGxlOiBkaXYgeyBAaW5jbHVkZSBkZXZpY2UtbGcgfTtcclxuXHJcbi8vIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cclxuICAgLy8gTWluaW11bSAxMjAwcHggdG8gMTU5OXB4IG9ubHlcclxuLy8gLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxyXG5cclxuQG1peGluIGRldmljZS1sZy1vbmx5IHtcclxuXHRAbWVkaWEgKG1pbi13aWR0aDogI3skZGV2aWNlLWxnLXdpZHRofSkgYW5kIChtYXgtd2lkdGg6ICN7JGRldmljZS14bGctd2lkdGh9KSB7IC8vIDFweCAvIDE2cHggKGJhc2UgZm9udCBzaXplKVxyXG5cdFx0QGNvbnRlbnQ7XHJcblx0fVxyXG59XHJcblxyXG4vLyBFeGFtcGxlOiBkaXYgeyBAaW5jbHVkZSBkZXZpY2UtbGctb25seSB9O1xyXG5cclxuLy8gLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxyXG4gICAvLyBNaW5pbXVtIDE2MDBweCBhbmQgd2lkZXJcclxuLy8gLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxyXG5cclxuQG1peGluIGRldmljZS14bGcge1xyXG5cdEBtZWRpYSAobWluLXdpZHRoOiAjeyRkZXZpY2UteGxnLXdpZHRofSkge1xyXG5cdFx0QGNvbnRlbnQ7XHJcblx0fVxyXG59XHJcblxyXG5cclxuLy8gRXhhbXBsZTogZGl2IHsgQGluY2x1ZGUgZGV2aWNlLXhsZyB9O1xyXG5cclxuXHJcbi8vIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cclxuLypcclxuICAjIyMjIyMjICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFxyXG4gICMgICAgICAgIyAgICAgICMjIyMjIyAjICAgICMgIyMjIyMgICAjIyMjICAjICAgICMgXHJcbiAgIyAgICAgICAjICAgICAgIyAgICAgICAjICAjICAjICAgICMgIyAgICAjICAjICAjICBcclxuICAjIyMjIyAgICMgICAgICAjIyMjIyAgICAjIyAgICMjIyMjICAjICAgICMgICAjIyAgIFxyXG4gICMgICAgICAgIyAgICAgICMgICAgICAgICMjICAgIyAgICAjICMgICAgIyAgICMjICAgXHJcbiAgIyAgICAgICAjICAgICAgIyAgICAgICAjICAjICAjICAgICMgIyAgICAjICAjICAjICBcclxuICAjICAgICAgICMjIyMjIyAjIyMjIyMgIyAgICAjICMjIyMjICAgIyMjIyAgIyAgICAjIFxyXG4qL1xyXG4vLyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXHJcblxyXG4vKlxyXG4gICBVc2VmdWwgZ3VpZGUgdG8gRmxleGJveCBjYW4gYmUgZm91bmQgYXQ6XHJcbiAgIGh0dHBzOi8vY3NzLXRyaWNrcy5jb20vc25pcHBldHMvY3NzL2EtZ3VpZGUtdG8tZmxleGJveC9cclxuICAgXHJcbiAgIEZsZXhib3ggcGxheWdyb3VuZCBhbmQgY29kZSBnZW5lcmF0b3I6XHJcbiAgIGh0dHA6Ly90aGUtZWNob3BsZXgubmV0L2ZsZXh5Ym94ZXMvXHJcblxyXG4qL1xyXG5cclxuLy8gLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxyXG4gICAvLyBEaXNwbGF5XHJcbiAgIC8vIFtmbGV4IGNvbnRhaW5lcl1cclxuLy8gLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxyXG5cclxuLypcclxuICAgVGhpcyBkZWZpbmVzIGEgZmxleCBjb250YWluZXI7IGlubGluZSBvciBibG9jayBkZXBlbmRpbmcgb24gdGhlIFxyXG4gICBnaXZlbiB2YWx1ZS4gSXQgZW5hYmxlcyBhIGZsZXggY29udGV4dCBmb3IgYWxsIGl0cyBkaXJlY3QgY2hpbGRyZW4uXHJcbiovXHJcblxyXG5AbWl4aW4gZmxleC1kaXNwbGF5KCRmbGV4KSB7XHJcblx0QGlmICRmbGV4ID09IGlubGluZSB7XHJcblx0XHRkaXNwbGF5OiAtbXMtaW5saW5lLWZsZXhib3g7XHJcblx0XHRkaXNwbGF5OiAtd2Via2l0LWlubGluZS1mbGV4O1xyXG5cdFx0ZGlzcGxheTogaW5saW5lLWZsZXg7XHJcblx0fVxyXG5cdEBlbHNlIHtcclxuXHRcdGRpc3BsYXk6IC13ZWJraXQtYm94OyAgLy8gb2xkXHJcblx0XHRkaXNwbGF5OiAtbW96LWJveDsgICAgIC8vIG9sZFxyXG5cdFx0ZGlzcGxheTogLW1zLWZsZXhib3g7ICAvLyBpZVxyXG5cdFx0ZGlzcGxheTogLXdlYmtpdC1mbGV4OyAvLyBuZXdcclxuXHRcdGRpc3BsYXk6IGZsZXg7ICAgICAgICAgLy8gbmV3XHJcblx0fVxyXG59XHJcblxyXG4vLyBFeGFtcGxlIDE6IGRpdiB7IEBpbmNsdWRlIGZsZXgtZGlzcGxheShmbGV4KTsgfVxyXG4vLyBFeGFtcGxlIDI6IGRpdiB7IEBpbmNsdWRlIGZsZXgtZGlzcGxheShpbmxpbmUpOyB9XHJcblxyXG4vLyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXHJcbiAgIC8vIEZsZXggRGlyZWN0aW9uIFxyXG4gICAvLyBbZmxleCBjb250YWluZXJdXHJcbi8vIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cclxuXHJcbi8qIFxyXG4gICBUaGlzIGVzdGFibGlzaGVzIHRoZSBtYWluLWF4aXMsIHRodXMgZGVmaW5pbmcgdGhlIGRpcmVjdGlvbiBmbGV4IFxyXG4gICBpdGVtcyBhcmUgcGxhY2VkIGluIHRoZSBmbGV4IGNvbnRhaW5lci4gRmxleGJveCBpcyAoYXNpZGUgZnJvbSBcclxuICAgb3B0aW9uYWwgd3JhcHBpbmcpIGEgc2luZ2xlLWRpcmVjdGlvbiBsYXlvdXQgY29uY2VwdC4gXHJcblxyXG4gICBUaGluayBvZiBmbGV4IGl0ZW1zIGFzIHByaW1hcmlseSBsYXlpbmcgb3V0IGVpdGhlciBpbiBob3Jpem9udGFsIFxyXG4gICByb3dzIG9yIHZlcnRpY2FsIGNvbHVtbnMuXHJcbiAqL1xyXG5cclxuQG1peGluIGZsZXgtZGlyZWN0aW9uKCRyb3cpIHtcclxuXHRAaWYgJHJvdyA9PSBjb2x1bW4ge1xyXG5cdFx0LXdlYmtpdC1mbGV4LWRpcmVjdGlvbjogdmVydGljYWw7XHJcblx0XHQgICAtbW96LWZsZXgtZGlyZWN0aW9uOiB2ZXJ0aWNhbDtcclxuXHRcdCAgICAtbXMtZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcclxuXHRcdC13ZWJraXQtZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcclxuXHRcdCAgICAgICAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcclxuXHR9XHJcblx0QGVsc2UgaWYgJHJvdyA9PSBjb2x1bW4tcmV2ZXJzZSB7XHJcblx0XHQtd2Via2l0LWZsZXgtZGlyZWN0aW9uOiB2ZXJ0aWNhbC1yZXZlcnNlO1xyXG5cdFx0ICAgLW1vei1mbGV4LWRpcmVjdGlvbjogdmVydGljYWwtcmV2ZXJzZTtcclxuXHRcdCAgICAtbXMtZmxleC1kaXJlY3Rpb246IGNvbHVtbi1yZXZlcnNlO1xyXG5cdFx0LXdlYmtpdC1mbGV4LWRpcmVjdGlvbjogY29sdW1uLXJldmVyc2U7XHJcblx0XHQgICAgICAgIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW4tcmV2ZXJzZTtcclxuXHR9XHJcblx0QGVsc2UgaWYgJHJvdyA9PSByb3ctcmV2ZXJzZSB7XHJcblx0XHQtd2Via2l0LWZsZXgtZGlyZWN0aW9uOiBob3Jpem9udGFsLXJldmVyc2U7XHJcblx0XHQgICAtbW96LWZsZXgtZGlyZWN0aW9uOiBob3Jpem9udGFsLXJldmVyc2U7XHJcblx0XHQgICAgLW1zLWZsZXgtZGlyZWN0aW9uOiByb3ctcmV2ZXJzZTtcclxuXHRcdC13ZWJraXQtZmxleC1kaXJlY3Rpb246IHJvdy1yZXZlcnNlO1xyXG5cdFx0ICAgICAgICBmbGV4LWRpcmVjdGlvbjogcm93LXJldmVyc2U7XHJcblx0fVxyXG5cdEBlbHNlIHtcclxuXHRcdC13ZWJraXQtZmxleC1kaXJlY3Rpb246IGhvcml6b250YWw7XHJcblx0XHQgICAtbW96LWZsZXgtZGlyZWN0aW9uOiBob3Jpem9udGFsO1xyXG5cdFx0ICAgIC1tcy1mbGV4LWRpcmVjdGlvbjogcm93O1xyXG5cdFx0LXdlYmtpdC1mbGV4LWRpcmVjdGlvbjogcm93O1xyXG5cdFx0ICAgICAgICBmbGV4LWRpcmVjdGlvbjogcm93O1xyXG5cdH1cclxufVxyXG5cclxuLy8gRXhhbXBsZSAxOiBkaXYgeyBAaW5jbHVkZSBmbGV4LWRpcmVjdGlvbihyb3cpOyB9XHJcbi8vIEV4YW1wbGUgMjogZGl2IHsgQGluY2x1ZGUgZmxleC1kaXJlY3Rpb24oY29sdW1uKTsgfVxyXG5cclxuLy8gLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxyXG4gICAvLyBGbGV4IFdyYXAgXHJcbiAgIC8vIFtmbGV4IGNvbnRhaW5lcl1cclxuLy8gLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxyXG5cclxuLypcclxuICAgQnkgZGVmYXVsdCwgZmxleCBpdGVtcyB3aWxsIGFsbCB0cnkgdG8gZml0IG9udG8gb25lIGxpbmUuIFlvdSBjYW4gXHJcbiAgIGNoYW5nZSB0aGF0IGFuZCBhbGxvdyB0aGUgaXRlbXMgdG8gd3JhcCBhcyBuZWVkZWQgd2l0aCB0aGlzIFxyXG4gICBwcm9wZXJ0eS4gXHJcbiAgIFxyXG4gICBEaXJlY3Rpb24gYWxzbyBwbGF5cyBhIHJvbGUgaGVyZSwgZGV0ZXJtaW5pbmcgdGhlIGRpcmVjdGlvbiBuZXcgXHJcbiAgIGxpbmVzIGFyZSBzdGFja2VkIGluLlxyXG4qL1xyXG5cclxuQG1peGluIGZsZXgtd3JhcCgkbm93cmFwKSB7XHJcblx0QGlmICRub3dyYXAgPT0gd3JhcCB7XHJcblx0XHQtd2Via2l0LWZsZXgtd3JhcDogd3JhcDtcclxuXHRcdCAgICAtbXMtZmxleC13cmFwOiB3cmFwO1xyXG5cdFx0ICAgICAgICBmbGV4LXdyYXA6IHdyYXA7XHJcblx0fVxyXG5cdEBlbHNlIGlmICRub3dyYXAgPT0gd3JhcC1yZXZlcnNlIHtcclxuXHRcdC13ZWJraXQtZmxleC13cmFwOiB3cmFwLXJldmVyc2U7XHJcblx0XHQgICAgLW1zLWZsZXgtd3JhcDogd3JhcC1yZXZlcnNlO1xyXG5cdFx0ICAgICAgICBmbGV4LXdyYXA6IHdyYXAtcmV2ZXJzZTtcclxuXHR9XHJcblx0QGVsc2Uge1xyXG5cdFx0LXdlYmtpdC1mbGV4LXdyYXA6IG5vd3JhcDtcclxuXHRcdCAgICAtbXMtZmxleC13cmFwOiBub3dyYXA7XHJcblx0XHQgICAgICAgIGZsZXgtd3JhcDogbm93cmFwO1xyXG5cdH1cclxufVxyXG5cclxuLy8gRXhhbXBsZSAxOiBkaXYgeyBAaW5jbHVkZSBmbGV4LXdyYXAobm93cmFwKTsgfVxyXG4vLyBFeGFtcGxlIDI6IGRpdiB7IEBpbmNsdWRlIGZsZXgtd3JhcCh3cmFwKTsgfVxyXG5cclxuLy8gLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxyXG4gICAvLyBKdXN0aWZ5IENvbnRlbnRcclxuICAgLy8gW2ZsZXggY29udGFpbmVyXVxyXG4vLyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXHJcblxyXG4vKlxyXG4gICBUaGlzIGRlZmluZXMgdGhlIGFsaWdubWVudCBhbG9uZyB0aGUgbWFpbiBheGlzLiBJdCBoZWxwcyBkaXN0cmlidXRlIFxyXG4gICBleHRyYSBmcmVlIHNwYWNlIGxlZnQgb3ZlciB3aGVuIGVpdGhlciBhbGwgdGhlIGZsZXggaXRlbXMgb24gYSBsaW5lIFxyXG4gICBhcmUgaW5mbGV4aWJsZSwgb3IgYXJlIGZsZXhpYmxlIGJ1dCBoYXZlIHJlYWNoZWQgdGhlaXIgbWF4aW11bSBzaXplLiBcclxuXHJcbiAgIEl0IGFsc28gZXhlcnRzIHNvbWUgY29udHJvbCBvdmVyIHRoZSBhbGlnbm1lbnQgb2YgaXRlbXMgd2hlbiB0aGV5IFxyXG4gICBvdmVyZmxvdyB0aGUgbGluZS5cclxuKi9cclxuXHJcbkBtaXhpbiBmbGV4LWp1c3RpZnktY29udGVudCgkZmxleC1zdGFydCkge1xyXG5cdEBpZiAkZmxleC1zdGFydCA9PSBmbGV4LWVuZCB7XHJcblx0XHQtd2Via2l0LWp1c3RpZnktY29udGVudDogZmxleC1lbmQ7XHJcblx0XHQgICAgICAgICAgLW1zLWZsZXgtcGFjazogZW5kO1xyXG5cdFx0ICAgICAgICBqdXN0aWZ5LWNvbnRlbnQ6IGZsZXgtZW5kO1xyXG5cdH1cclxuXHRAZWxzZSBpZiAkZmxleC1zdGFydCA9PSBmbGV4LWNlbnRlciB7XHJcblx0XHQtd2Via2l0LWp1c3RpZnktY29udGVudDogY2VudGVyO1xyXG5cdFx0ICAgICAgICAgIC1tcy1mbGV4LXBhY2s6IGNlbnRlcjtcclxuXHRcdCAgICAgICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XHJcblx0fVxyXG5cdEBlbHNlIGlmICRmbGV4LXN0YXJ0ID09IHNwYWNlLWJldHdlZW4ge1xyXG5cdFx0LXdlYmtpdC1qdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWJldHdlZW47XHJcblx0XHQgICAgICAgICAgLW1zLWZsZXgtcGFjazoganVzdGlmeTtcclxuXHRcdCAgICAgICAganVzdGlmeS1jb250ZW50OiBzcGFjZS1iZXR3ZWVuO1xyXG5cdH1cclxuXHRAZWxzZSBpZiAkZmxleC1zdGFydCA9PSBzcGFjZS1hcm91bmQge1xyXG5cdFx0LXdlYmtpdC1qdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWFyb3VuZDtcclxuXHRcdCAgICAgICAgICAtbXMtZmxleC1wYWNrOiBkaXN0cmlidXRlO1xyXG5cdFx0ICAgICAgICBqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWFyb3VuZDtcclxuXHR9XHJcblx0QGVsc2Uge1xyXG5cdFx0LXdlYmtpdC1qdXN0aWZ5LWNvbnRlbnQ6IGZsZXgtc3RhcnQ7XHJcblx0XHQgICAgICAgICAgLW1zLWZsZXgtcGFjazogc3RhcnQ7XHJcblx0XHQgICAgICAgIGp1c3RpZnktY29udGVudDogZmxleC1zdGFydDtcclxuXHR9XHJcbn1cclxuXHJcbi8vIEV4YW1wbGUgMTogZGl2IHsgQGluY2x1ZGUgZmxleC1qdXN0aWZ5KGZsZXgtc3RhcnQpOyB9XHJcbi8vIEV4YW1wbGUgMjogZGl2IHsgQGluY2x1ZGUgZmxleC1qdXN0aWZ5KGFsaWduLWVuZCk7IH1cclxuXHJcbi8vIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cclxuICAgLy8gQWxpZ24gSXRlbXMgKG1haW4gYXhpcyBsZWZ0IHRvIHJpZ2h0KVxyXG4gICAvLyBbZmxleCBjb250YWluZXJdXHJcbi8vIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cclxuXHJcbi8qXHJcbiAgIFRoaXMgZGVmaW5lcyB0aGUgZGVmYXVsdCBiZWhhdmlvdXIgZm9yIGhvdyBmbGV4IGl0ZW1zIGFyZSBsYWlkIG91dCBcclxuICAgYWxvbmcgdGhlIGNyb3NzIGF4aXMgb24gdGhlIGN1cnJlbnQgbGluZS4gVGhpbmsgb2YgaXQgYXMgdGhlIFxyXG4gICBqdXN0aWZ5LWNvbnRlbnQgdmVyc2lvbiBmb3IgdGhlIGNyb3NzLWF4aXMgKHBlcnBlbmRpY3VsYXIgdG8gdGhlIFxyXG4gICBtYWluLWF4aXMpLlxyXG4qL1xyXG5cclxuQG1peGluIGZsZXgtYWxpZ24taXRlbXMoJGZsZXgtc3RhcnQpIHtcclxuXHRAaWYgJGZsZXgtc3RhcnQgPT0gZmxleC1lbmQge1xyXG5cdFx0LXdlYmtpdC1hbGlnbi1pdGVtczogZmxleC1lbmQ7XHJcblx0XHQgICAgIC1tcy1mbGV4LWFsaWduOiBlbmQ7XHJcblx0XHQgICAgICAgIGFsaWduLWl0ZW1zOiBmbGV4LWVuZDtcclxuXHR9XHJcblx0QGVsc2UgaWYgJGZsZXgtc3RhcnQgPT0gZmxleC1jZW50ZXIge1xyXG5cdFx0LXdlYmtpdC1hbGlnbi1pdGVtczogY2VudGVyO1xyXG5cdFx0ICAgICAtbXMtZmxleC1hbGlnbjogY2VudGVyO1xyXG5cdFx0ICAgICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xyXG5cdH1cclxuXHRAZWxzZSBpZiAkZmxleC1zdGFydCA9PSBiYXNlbGluZSB7XHJcblx0XHQtd2Via2l0LWFsaWduLWl0ZW1zOiBiYXNlbGluZTtcclxuXHRcdCAgICAgLW1zLWZsZXgtYWxpZ246IGJhc2VsaW5lO1xyXG5cdFx0ICAgICAgICBhbGlnbi1pdGVtczogYmFzZWxpbmU7XHJcblx0fVxyXG5cdEBlbHNlIGlmICRmbGV4LXN0YXJ0ID09IHN0cmV0Y2gge1xyXG5cdFx0LXdlYmtpdC1hbGlnbi1pdGVtczogc3RyZXRjaDtcclxuXHRcdCAgICAgLW1zLWZsZXgtYWxpZ246IHN0cmV0Y2g7XHJcblx0XHQgICAgICAgIGFsaWduLWl0ZW1zOiBzdHJldGNoO1xyXG5cdH1cclxuXHRAZWxzZSB7XHJcblx0XHQtd2Via2l0LWFsaWduLWl0ZW1zOiBmbGV4LXN0YXJ0O1xyXG5cdFx0ICAgICAtbXMtZmxleC1hbGlnbjogc3RhcnQ7XHJcblx0XHQgICAgICAgIGFsaWduLWl0ZW1zOiBmbGV4LXN0YXJ0O1xyXG5cdH1cclxufVxyXG5cclxuLy8gRXhhbXBsZSAxOiBkaXYgeyBAaW5jbHVkZSBmbGV4LWFsaWduLWl0ZW1zKGZsZXgtc3RhcnQpOyB9XHJcbi8vIEV4YW1wbGUgMjogZGl2IHsgQGluY2x1ZGUgZmxleC1hbGlnbi1pdGVtcyhmbGV4LWVuZCk7IH1cclxuXHJcbi8vIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cclxuICAgLy8gRmxleCBBbGlnbiBDb250ZW50IChjcm9zcyBheGlzIHRvcCB0byBib3R0b20pXHJcbiAgIC8vIFtmbGV4IGNvbnRhaW5lcl1cclxuLy8gLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxyXG5cclxuLypcclxuICAgVGhpcyBhbGlnbnMgYSBmbGV4IGNvbnRhaW5lcidzIGxpbmVzIHdpdGhpbiB3aGVuIHRoZXJlIGlzIGV4dHJhIFxyXG4gICBzcGFjZSBpbiB0aGUgY3Jvc3MtYXhpcywgc2ltaWxhciB0byBob3cganVzdGlmeS1jb250ZW50IGFsaWducyBcclxuICAgaW5kaXZpZHVhbCBpdGVtcyB3aXRoaW4gdGhlIG1haW4tYXhpcy5cclxuXHJcbiAgIE5vdGU6IHRoaXMgcHJvcGVydHkgaGFzIG5vIGVmZmVjdCB3aGVuIHRoZXJlIGlzIG9ubHkgb25lIGxpbmUgb2YgXHJcbiAgIGZsZXggaXRlbXMuXHJcbiovXHJcblxyXG5AbWl4aW4gZmxleC1hbGlnbi1jb250ZW50KCRmbGV4LXN0YXJ0KSB7XHJcblx0QGlmICRmbGV4LXN0YXJ0ID09IGZsZXgtZW5kIHtcclxuXHRcdC13ZWJraXQtYWxpZ24tY29udGVudDogZmxleC1lbmQ7XHJcblx0XHQgICAtbXMtZmxleC1saW5lLXBhY2s6IGVuZDtcclxuXHRcdCAgICAgICAgYWxpZ24tY29udGVudDogZmxleC1lbmQ7XHJcblx0fVxyXG5cdEBlbHNlIGlmICRmbGV4LXN0YXJ0ID09IGZsZXgtY2VudGVyIHtcclxuXHRcdC13ZWJraXQtYWxpZ24tY29udGVudDogY2VudGVyO1xyXG5cdFx0ICAgLW1zLWZsZXgtbGluZS1wYWNrOiBjZW50ZXI7XHJcblx0XHQgICAgICAgIGFsaWduLWNvbnRlbnQ6IGNlbnRlcjtcclxuXHR9XHJcblx0QGVsc2UgaWYgJGZsZXgtc3RhcnQgPT0gc3BhY2UtYmV0d2VlbiB7XHJcblx0XHQtd2Via2l0LWFsaWduLWNvbnRlbnQ6IHNwYWNlLWJldHdlZW47XHJcblx0XHQgICAtbXMtZmxleC1saW5lLXBhY2s6IGp1c3RpZnk7XHJcblx0XHQgICAgICAgIGFsaWduLWNvbnRlbnQ6IHNwYWNlLWJldHdlZW47XHJcblx0fVxyXG5cdEBlbHNlIGlmICRmbGV4LXN0YXJ0ID09IHNwYWNlLWFyb3VuZCB7XHJcblx0XHQtd2Via2l0LWFsaWduLWNvbnRlbnQ6IHNwYWNlLWFyb3VuZDtcclxuXHRcdCAgIC1tcy1mbGV4LWxpbmUtcGFjazogZGlzdHJpYnV0ZTtcclxuXHRcdCAgICAgICAgYWxpZ24tY29udGVudDogc3BhY2UtYXJvdW5kO1xyXG5cdH1cclxuXHRAZWxzZSBpZiAkZmxleC1zdGFydCA9PSBzdHJldGNoIHtcclxuXHRcdC13ZWJraXQtYWxpZ24tY29udGVudDogc3RyZXRjaDtcclxuXHRcdCAgIC1tcy1mbGV4LWxpbmUtcGFjazogc3RyZXRjaDtcclxuXHRcdCAgICAgICAgYWxpZ24tY29udGVudDogc3RyZXRjaDtcclxuXHR9XHJcblx0QGVsc2Uge1xyXG5cdFx0LXdlYmtpdC1hbGlnbi1jb250ZW50OiBmbGV4LXN0YXJ0O1xyXG5cdFx0ICAgLW1zLWZsZXgtbGluZS1wYWNrOiBzdGFydDtcclxuXHRcdCAgICAgICAgYWxpZ24tY29udGVudDogZmxleC1zdGFydDtcclxuXHR9XHJcbn1cclxuXHJcbi8vIEV4YW1wbGUgMTogZGl2IHsgQGluY2x1ZGUgZmxleC1hbGlnbi1jb250ZW50KGZsZXgtc3RhcnQpOyB9XHJcbi8vIEV4YW1wbGUgMjogZGl2IHsgQGluY2x1ZGUgZmxleC1hbGlnbi1jb250ZW50KGZsZXgtZW5kKTsgfVxyXG5cclxuLy8gLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxyXG4gICAvLyBGbGV4IE9yZGVyIFxyXG4gICAvLyBbZmxleCBpdGVtXVxyXG4vLyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXHJcblxyXG4vKlxyXG4gICBCeSBkZWZhdWx0LCBmbGV4IGl0ZW1zIGFyZSBsYWlkIG91dCBpbiB0aGUgc291cmNlIG9yZGVyLiBIb3dldmVyLCBcclxuICAgdGhlIG9yZGVyIHByb3BlcnR5IGNvbnRyb2xzIHRoZSBvcmRlciBpbiB3aGljaCB0aGV5IGFwcGVhciBpbiB0aGUgXHJcbiAgIGZsZXggY29udGFpbmVyLlxyXG4qL1xyXG5cclxuQG1peGluIGZsZXgtb3JkZXIoJG9yZGVyKSB7XHJcblx0LXdlYmtpdC1ib3gtb3JkaW5hbC1ncm91cDogJG9yZGVyOyAvLyBvbGRcclxuXHQgICAtbW96LWJveC1vcmRpbmFsLWdyb3VwOiAkb3JkZXI7IC8vIG9sZFxyXG5cdCAgICAgICAgICAgLW1zLWZsZXgtb3JkZXI6ICRvcmRlcjsgLy8gaWVcclxuXHQgICAgICAgICAgICAtd2Via2l0LW9yZGVyOiAkb3JkZXI7IC8vIG5ld1xyXG5cdCAgICAgICAgICAgICAgICAgICAgb3JkZXI6ICRvcmRlcjsgLy8gbmV3XHJcbn1cclxuXHJcbi8vIEV4YW1wbGU6IGRpdiB7IEBpbmNsdWRlIGZsZXgtb3JkZXIoMyk7IH1cclxuXHJcbi8vIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cclxuICAgLy8gRmxleCAoZmxleC1ncm93IHwgZmxleC1zaHJpbmsgfCBmbGV4LWJhc2lzKVxyXG4gICAvLyBbZmxleCBpdGVtXVxyXG4vLyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXHJcblxyXG4vKiBcclxuICAgRmxleDpcclxuXHJcbiAgIFRoaXMgaXMgdGhlIHNob3J0aGFuZCBmb3IgZmxleC1ncm93LCBmbGV4LXNocmluayBhbmQgZmxleC1iYXNpcyBcclxuICAgY29tYmluZWQuIFRoZSBzZWNvbmQgYW5kIHRoaXJkIHBhcmFtZXRlcnMgKGZsZXgtc2hyaW5rIGFuZCBcclxuICAgZmxleC1iYXNpcykgYXJlIG9wdGlvbmFsLiBEZWZhdWx0IGlzIDAgMSBhdXRvLlxyXG5cclxuICAgTmVnYXRpdmUgbnVtYmVycyBhcmUgaW52YWxpZC5cclxuXHJcbiAgIFxyXG4gICBmbGV4LWdyb3c6XHJcblxyXG4gICBUaGlzIGRlZmluZXMgdGhlIGFiaWxpdHkgZm9yIGEgZmxleCBpdGVtIHRvIGdyb3cgaWYgbmVjZXNzYXJ5LiBJdCBcclxuICAgYWNjZXB0cyBhIHVuaXRsZXNzIHZhbHVlIHRoYXQgc2VydmVzIGFzIGEgcHJvcG9ydGlvbi4gSXQgZGljdGF0ZXMgXHJcbiAgIHdoYXQgYW1vdW50IG9mIHRoZSBhdmFpbGFibGUgc3BhY2UgaW5zaWRlIHRoZSBmbGV4IGNvbnRhaW5lciB0aGUgXHJcbiAgIGl0ZW0gc2hvdWxkIHRha2UgdXAuXHJcbiAgIFxyXG4gICBJZiBhbGwgaXRlbXMgaGF2ZSBmbGV4LWdyb3cgc2V0IHRvIDEsIHRoZSByZW1haW5pbmcgc3BhY2UgaW4gdGhlIFxyXG4gICBjb250YWluZXIgd2lsbCBiZSBkaXN0cmlidXRlZCBlcXVhbGx5IHRvIGFsbCBjaGlsZHJlbi4gSWYgb25lIG9mIFxyXG4gICB0aGUgY2hpbGRyZW4gaGFzIGEgdmFsdWUgb2YgMiwgdGhlIHJlbWFpbmluZyBzcGFjZSB3b3VsZCB0YWtlIHVwIFxyXG4gICB0d2ljZSBhcyBtdWNoIHNwYWNlIGFzIHRoZSBvdGhlcnMgKG9yIGl0IHdpbGwgdHJ5IHRvLCBhdCBsZWFzdCkuXHJcblxyXG4gICBcclxuICAgZmxleC1zaHJpbms6XHJcblxyXG4gICBUaGlzIGRlZmluZXMgdGhlIGFiaWxpdHkgZm9yIGEgZmxleCBpdGVtIHRvIHNocmluayBpZiBuZWNlc3NhcnkuXHJcblxyXG4gICBcclxuICAgZmxleC1iYXNpczpcclxuXHJcbiAgIFRoaXMgZGVmaW5lcyB0aGUgZGVmYXVsdCBzaXplIG9mIGFuIGVsZW1lbnQgYmVmb3JlIHRoZSByZW1haW5pbmcgXHJcbiAgIHNwYWNlIGlzIGRpc3RyaWJ1dGVkLiBJdCBjYW4gYmUgYSBsZW5ndGggKGUuZy4gMjAlLCA1cmVtLCBldGMuKSBcclxuICAgb3IgYSBrZXl3b3JkLiBUaGUgYXV0byBrZXl3b3JkIG1lYW5zIFwibG9vayBhdCBteSB3aWR0aCBvciBoZWlnaHQgXHJcbiAgIHByb3BlcnR5XCIgKHdoaWNoIHdhcyB0ZW1wb3JhcmlseSBkb25lIGJ5IHRoZSBtYWluLXNpemUga2V5d29yZCBcclxuICAgdW50aWwgZGVwcmVjYXRlZCkuIFRoZSBjb250ZW50IGtleXdvcmQgbWVhbnMgXCJzaXplIGl0IGJhc2VkIG9uIHRoZSBcclxuICAgaXRlbSdzIGNvbnRlbnRcIiAtIHRoaXMga2V5d29yZCBpc24ndCB3ZWxsIHN1cHBvcnRlZCB5ZXQsIHNvIGl0J3MgXHJcbiAgIGhhcmQgdG8gdGVzdCBhbmQgaGFyZGVyIHRvIGtub3cgd2hhdCBpdHMgYnJldGhyZW4gbWF4LWNvbnRlbnQsIFxyXG4gICBtaW4tY29udGVudCwgYW5kIGZpdC1jb250ZW50IGRvLlxyXG4qL1xyXG5cclxuQG1peGluIGZsZXgoJHZhbHVlcykge1xyXG5cdC13ZWJraXQtYm94LWZsZXg6ICR2YWx1ZXM7XHJcblx0ICAgLW1vei1ib3gtZmxleDogJHZhbHVlcztcclxuXHQgICAgICAgIC1tcy1mbGV4OiAkdmFsdWVzO1xyXG5cdCAgICAtd2Via2l0LWZsZXg6ICR2YWx1ZXM7XHJcblx0ICAgICAgICAgICAgZmxleDogJHZhbHVlcztcclxufVxyXG5cclxuLy8gRXhhbXBsZTogZGl2IHsgQGluY2x1ZGUgZmxleCgxIDEgYXV0byk7IH1cclxuXHJcbi8vIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cclxuICAgLy8gQWxpZ24gU2VsZlxyXG4gICAvLyBbZmxleCBpdGVtXVxyXG4vLyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXHJcblxyXG4vKlxyXG4gICBUaGlzIGFsbG93cyB0aGUgZGVmYXVsdCBhbGlnbm1lbnQgKG9yIHRoZSBvbmUgc3BlY2lmaWVkIGJ5IFxyXG4gICBhbGlnbi1pdGVtcykgdG8gYmUgb3ZlcnJpZGRlbiBmb3IgaW5kaXZpZHVhbCBmbGV4IGl0ZW1zLlxyXG5cclxuICAgU2VlIHRoZSBhbGlnbi1pdGVtcyBleHBsYW5hdGlvbiB0byB1bmRlcnN0YW5kIHRoZSBhdmFpbGFibGUgdmFsdWVzLlxyXG5cclxuICAgTm90ZSB0aGF0IFwiZmxvYXRcIiwgXCJjbGVhclwiIGFuZCBcInZlcnRpY2FsLWFsaWduXCIgaGF2ZSBubyBlZmZlY3Qgb24gYSBcclxuICAgZmxleCBpdGVtLlxyXG4qL1xyXG5cclxuQG1peGluIGZsZXgtYWxpZ24tc2VsZigkZmxleC1hdXRvKSB7XHJcblx0QGlmICRmbGV4LWF1dG8gPT0gZmxleC1zdGFydCB7XHJcblx0XHQgLXdlYmtpdC1hbGlnbi1zZWxmOiBmbGV4LXN0YXJ0O1xyXG5cdFx0LW1zLWZsZXgtaXRlbS1hbGlnbjogc3RhcnQ7XHJcblx0XHQgICAgICAgICBhbGlnbi1zZWxmOiBmbGV4LXN0YXJ0O1xyXG5cdH1cclxuXHRAZWxzZSBpZiAkZmxleC1hdXRvID09IGZsZXgtZW5kIHtcclxuXHRcdCAtd2Via2l0LWFsaWduLXNlbGY6IGZsZXgtZW5kO1xyXG5cdFx0LW1zLWZsZXgtaXRlbS1hbGlnbjogZW5kO1xyXG5cdFx0ICAgICAgICAgYWxpZ24tc2VsZjogZmxleC1lbmQ7XHJcblx0fVxyXG5cdEBlbHNlIGlmICRmbGV4LWF1dG8gPT0gZmxleC1jZW50ZXIge1xyXG5cdFx0IC13ZWJraXQtYWxpZ24tc2VsZjogY2VudGVyO1xyXG5cdFx0LW1zLWZsZXgtaXRlbS1hbGlnbjogY2VudGVyO1xyXG5cdFx0ICAgICAgICAgYWxpZ24tc2VsZjogY2VudGVyO1xyXG5cdH1cclxuXHRAZWxzZSBpZiAkZmxleC1hdXRvID09IGJhc2VsaW5lIHtcclxuXHRcdCAtd2Via2l0LWFsaWduLXNlbGY6IGJhc2VsaW5lO1xyXG5cdFx0LW1zLWZsZXgtaXRlbS1hbGlnbjogYmFzZWxpbmU7XHJcblx0XHQgICAgICAgICBhbGlnbi1zZWxmOiBiYXNlbGluZTtcclxuXHR9XHJcblx0QGVsc2UgaWYgJGZsZXgtYXV0byA9PSBzdHJldGNoIHtcclxuXHRcdCAtd2Via2l0LWFsaWduLXNlbGY6IHN0cmV0Y2g7XHJcblx0XHQtbXMtZmxleC1pdGVtLWFsaWduOiBzdHJldGNoO1xyXG5cdFx0ICAgICAgICAgYWxpZ24tc2VsZjogc3RyZXRjaDtcclxuXHR9XHJcblx0QGVsc2Uge1xyXG5cdFx0IC13ZWJraXQtYWxpZ24tc2VsZjogYXV0bztcclxuXHRcdC1tcy1mbGV4LWl0ZW0tYWxpZ246IGF1dG87XHJcblx0XHQgICAgICAgICBhbGlnbi1zZWxmOiBhdXRvO1xyXG5cdH1cclxufVxyXG5cclxuLy8gRXhhbXBsZSAxOiBkaXYgeyBAaW5jbHVkZSBmbGV4LWFsaWduLXNlbGYoZmxleC1hdXRvKTsgfVxyXG4vLyBFeGFtcGxlIDI6IGRpdiB7IEBpbmNsdWRlIGZsZXgtYWxpZ24tc2VsZihmbGV4LWVuZCk7IH1cclxuXHJcblxyXG4vLyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXHJcbi8qXHJcbiAgICAgIyMjIyMgICAgICAgICAgICAgICAgICAgICAgIyMjIyMgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFxyXG4gICAgIyAgICAgIyAjIyMjIyAgIyAjIyMjIyAgICAgIyAgICAgIyAjICAgIyAgIyMjIyAgIyMjIyMgIyMjIyMjICMgICAgIyBcclxuICAgICMgICAgICAgIyAgICAjICMgIyAgICAjICAgICMgICAgICAgICMgIyAgIyAgICAgICAgIyAgICMgICAgICAjIyAgIyMgXHJcbiAgICAjICAjIyMjICMgICAgIyAjICMgICAgIyAgICAgIyMjIyMgICAgIyAgICAjIyMjICAgICMgICAjIyMjIyAgIyAjIyAjIFxyXG4gICAgIyAgICAgIyAjIyMjIyAgIyAjICAgICMgICAgICAgICAgIyAgICMgICAgICAgICMgICAjICAgIyAgICAgICMgICAgIyBcclxuICAgICMgICAgICMgIyAgICMgICMgIyAgICAjICAgICMgICAgICMgICAjICAgIyAgICAjICAgIyAgICMgICAgICAjICAgICMgXHJcbiAgICAgIyMjIyMgICMgICAgIyAjICMjIyMjICAgICAgIyMjIyMgICAgIyAgICAjIyMjICAgICMgICAjIyMjIyMgIyAgICAjIFxyXG4qL1xyXG4vLyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXHJcblxyXG4vLyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXHJcbiAgIC8vIDEyIENvbHVtbiBHcmlkXHJcbi8vIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cclxuXHJcbkBtaXhpbiBsLWdyaWQtMTItY29sdW1ucy0xICB7IHdpZHRoOiAkbC1ncmlkLTEyLWNvbC0xOyB9XHJcbkBtaXhpbiBsLWdyaWQtMTItY29sdW1ucy0yICB7IHdpZHRoOiAkbC1ncmlkLTEyLWNvbC0yOyB9XHJcbkBtaXhpbiBsLWdyaWQtMTItY29sdW1ucy0zICB7IHdpZHRoOiAkbC1ncmlkLTEyLWNvbC0zOyB9XHJcbkBtaXhpbiBsLWdyaWQtMTItY29sdW1ucy00ICB7IHdpZHRoOiAkbC1ncmlkLTEyLWNvbC00OyB9XHJcbkBtaXhpbiBsLWdyaWQtMTItY29sdW1ucy01ICB7IHdpZHRoOiAkbC1ncmlkLTEyLWNvbC01OyB9XHJcbkBtaXhpbiBsLWdyaWQtMTItY29sdW1ucy02ICB7IHdpZHRoOiAkbC1ncmlkLTEyLWNvbC02OyB9XHJcbkBtaXhpbiBsLWdyaWQtMTItY29sdW1ucy03ICB7IHdpZHRoOiAkbC1ncmlkLTEyLWNvbC03OyB9XHJcbkBtaXhpbiBsLWdyaWQtMTItY29sdW1ucy04ICB7IHdpZHRoOiAkbC1ncmlkLTEyLWNvbC04OyB9XHJcbkBtaXhpbiBsLWdyaWQtMTItY29sdW1ucy05ICB7IHdpZHRoOiAkbC1ncmlkLTEyLWNvbC05OyB9XHJcbkBtaXhpbiBsLWdyaWQtMTItY29sdW1ucy0xMCB7IHdpZHRoOiAkbC1ncmlkLTEyLWNvbC0xMDsgfVxyXG5AbWl4aW4gbC1ncmlkLTEyLWNvbHVtbnMtMTEgeyB3aWR0aDogJGwtZ3JpZC0xMi1jb2wtMTE7IH1cclxuQG1peGluIGwtZ3JpZC0xMi1jb2x1bW5zLTEyIHsgd2lkdGg6ICRsLWdyaWQtMTItY29sLTEyOyB9XHJcblxyXG4vLyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXHJcbiAgIC8vIDE2IENvbHVtbiBHcmlkXHJcbi8vIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cclxuXHJcbkBtaXhpbiBsLWdyaWQtMTYtY29sdW1ucy0xICB7IHdpZHRoOiAkbC1ncmlkLTE2LWNvbC0xOyB9XHJcbkBtaXhpbiBsLWdyaWQtMTYtY29sdW1ucy0yICB7IHdpZHRoOiAkbC1ncmlkLTE2LWNvbC0yOyB9XHJcbkBtaXhpbiBsLWdyaWQtMTYtY29sdW1ucy0zICB7IHdpZHRoOiAkbC1ncmlkLTE2LWNvbC0zOyB9XHJcbkBtaXhpbiBsLWdyaWQtMTYtY29sdW1ucy00ICB7IHdpZHRoOiAkbC1ncmlkLTE2LWNvbC00OyB9XHJcbkBtaXhpbiBsLWdyaWQtMTYtY29sdW1ucy01ICB7IHdpZHRoOiAkbC1ncmlkLTE2LWNvbC01OyB9XHJcbkBtaXhpbiBsLWdyaWQtMTYtY29sdW1ucy02ICB7IHdpZHRoOiAkbC1ncmlkLTE2LWNvbC02OyB9XHJcbkBtaXhpbiBsLWdyaWQtMTYtY29sdW1ucy03ICB7IHdpZHRoOiAkbC1ncmlkLTE2LWNvbC03OyB9XHJcbkBtaXhpbiBsLWdyaWQtMTYtY29sdW1ucy04ICB7IHdpZHRoOiAkbC1ncmlkLTE2LWNvbC04OyB9XHJcbkBtaXhpbiBsLWdyaWQtMTYtY29sdW1ucy05ICB7IHdpZHRoOiAkbC1ncmlkLTE2LWNvbC05OyB9XHJcbkBtaXhpbiBsLWdyaWQtMTYtY29sdW1ucy0xMCB7IHdpZHRoOiAkbC1ncmlkLTE2LWNvbC0xMDsgfVxyXG5AbWl4aW4gbC1ncmlkLTE2LWNvbHVtbnMtMTEgeyB3aWR0aDogJGwtZ3JpZC0xNi1jb2wtMTE7IH1cclxuQG1peGluIGwtZ3JpZC0xNi1jb2x1bW5zLTEyIHsgd2lkdGg6ICRsLWdyaWQtMTYtY29sLTEyOyB9XHJcbkBtaXhpbiBsLWdyaWQtMTYtY29sdW1ucy0xMyB7IHdpZHRoOiAkbC1ncmlkLTE2LWNvbC0xMzsgfVxyXG5AbWl4aW4gbC1ncmlkLTE2LWNvbHVtbnMtMTQgeyB3aWR0aDogJGwtZ3JpZC0xNi1jb2wtMTQ7IH1cclxuQG1peGluIGwtZ3JpZC0xNi1jb2x1bW5zLTE1IHsgd2lkdGg6ICRsLWdyaWQtMTYtY29sLTE1OyB9XHJcbkBtaXhpbiBsLWdyaWQtMTYtY29sdW1ucy0xNiB7IHdpZHRoOiAkbC1ncmlkLTE2LWNvbC0xNjsgfVxyXG5cclxuXHJcbi8vIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cclxuLypcclxuXHQjICAgICAjICAgICAgICAgICAgICAgICAgICAgICBcclxuXHQjICAgICAjICMgICAgIyAjICMjIyMjICAjIyMjICBcclxuXHQjICAgICAjICMjICAgIyAjICAgIyAgICMgICAgICBcclxuXHQjICAgICAjICMgIyAgIyAjICAgIyAgICAjIyMjICBcclxuXHQjICAgICAjICMgICMgIyAjICAgIyAgICAgICAgIyBcclxuXHQjICAgICAjICMgICAjIyAjICAgIyAgICMgICAgIyBcclxuXHQgIyMjIyMgICMgICAgIyAjICAgIyAgICAjIyMjICBcclxuKi9cclxuLy8gLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxyXG5cclxuLy8gLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxyXG4gICAvLyBSZW1zXHJcbi8vIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cclxuXHJcbkBmdW5jdGlvbiBzdHJpcC11bml0cygkbnVtYmVyKSB7XHJcblx0QHJldHVybiAkbnVtYmVyIC8gKCRudW1iZXIgKiAwICsgMSk7XHJcbn1cclxuXHJcbkBmdW5jdGlvbiBlbSgkc2l6ZSwgJGJhc2U6IDE2cHgpIHtcclxuXHRAcmV0dXJuIHN0cmlwLXVuaXRzKCRzaXplIC8gJGJhc2UpICsgZW07XHJcbn1cclxuXHJcbkBmdW5jdGlvbiByZW0oJHNpemUsICRiYXNlOiAxNnB4KSB7XHJcblx0QHJldHVybiBzdHJpcC11bml0cygkc2l6ZSAvICRiYXNlKSArIHJlbTtcclxufVxyXG5cclxuXHJcbi8vIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cclxuLypcclxuICMjIyMjIyMgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIyMjIyMgICAgICAgICAgICAgICAgICBcclxuICAgICMgICAgIyMjIyMgICMgICAjIyAgICMgICAgIyAgIyMjIyAgIyAgICAgICMjIyMjIyAgICAjICAgICAjICMgIyMjIyMgICMjIyMjIyBcclxuICAgICMgICAgIyAgICAjICMgICMgICMgICMjICAgIyAjICAgICMgIyAgICAgICMgICAgICAgICAjICAgICAgICMgIyAgICAjICMgICAgICBcclxuICAgICMgICAgIyAgICAjICMgIyAgICAjICMgIyAgIyAjICAgICAgIyAgICAgICMjIyMjICAgICAgIyMjIyMgICMgIyAgICAjICMjIyMjICBcclxuICAgICMgICAgIyMjIyMgICMgIyMjIyMjICMgICMgIyAjICAjIyMgIyAgICAgICMgICAgICAgICAgICAgICAjICMgIyAgICAjICMgICAgICBcclxuICAgICMgICAgIyAgICMgICMgIyAgICAjICMgICAjIyAjICAgICMgIyAgICAgICMgICAgICAgICAjICAgICAjICMgIyAgICAjICMgICAgICBcclxuICAgICMgICAgIyAgICAjICMgIyAgICAjICMgICAgIyAgIyMjIyAgIyMjIyMjICMjIyMjIyAgICAgIyMjIyMgICMgIyMjIyMgICMjIyMjIyBcclxuKi9cclxuLy8gLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxyXG5cclxuLy8gLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxyXG4gICAvLyBCYXNpYyBtaXhpblxyXG4vLyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXHJcblxyXG5AbWl4aW4gZXF1aWxhdGVyYWwtdHJpYW5nbGUoJGRpcmVjdGlvbiwgJGNvbG9yLCAkc2l6ZSwgJGJhc2Utc2l6ZTogJGZvbnQtc2l6ZS1iYXNlKSB7XHJcbiAgICB3aWR0aDogMDtcclxuICAgIGhlaWdodDogMDtcclxuICAgIEBpZiAkZGlyZWN0aW9uID09ICd1cCcge1xyXG4gICAgICAgIGJvcmRlci1sZWZ0OiBlbSgkc2l6ZSwgJGJhc2Utc2l6ZSkgc29saWQgdHJhbnNwYXJlbnQ7XHJcbiAgICAgICAgYm9yZGVyLXJpZ2h0OiBlbSgkc2l6ZSwgJGJhc2Utc2l6ZSkgc29saWQgdHJhbnNwYXJlbnQ7XHJcbiAgICAgICAgYm9yZGVyLWJvdHRvbTogZW0oJHNpemUsICRiYXNlLXNpemUpIHNvbGlkICRjb2xvcjtcclxuICAgIH1cclxuICAgIEBlbHNlIGlmICRkaXJlY3Rpb24gPT0gJ2Rvd24nIHtcclxuICAgICAgICBib3JkZXItbGVmdDogZW0oJHNpemUsICRiYXNlLXNpemUpIHNvbGlkIHRyYW5zcGFyZW50O1xyXG4gICAgICAgIGJvcmRlci1yaWdodDogZW0oJHNpemUsICRiYXNlLXNpemUpIHNvbGlkIHRyYW5zcGFyZW50O1xyXG4gICAgICAgIGJvcmRlci10b3A6IGVtKCRzaXplICogMzIgLyAxMDAsICRiYXNlLXNpemUpIHNvbGlkICRjb2xvcjtcclxuICAgIH1cclxuICAgIEBlbHNlIGlmICRkaXJlY3Rpb24gPT0gJ3JpZ2h0JyB7XHJcbiAgICAgICAgYm9yZGVyLXRvcDogZW0oJHNpemUsICRiYXNlLXNpemUpIHNvbGlkIHRyYW5zcGFyZW50O1xyXG4gICAgICAgIGJvcmRlci1ib3R0b206IGVtKCRzaXplLCAkYmFzZS1zaXplKSBzb2xpZCB0cmFuc3BhcmVudDtcclxuICAgICAgICBib3JkZXItbGVmdDogZW0oJHNpemUsICRiYXNlLXNpemUpIHNvbGlkICRjb2xvcjtcclxuICAgIH1cclxuICAgIEBlbHNlIGlmICRkaXJlY3Rpb24gPT0gJ2xlZnQnIHtcclxuICAgICAgICBib3JkZXItdG9wOiBlbSgkc2l6ZSwgJGJhc2Utc2l6ZSkgc29saWQgdHJhbnNwYXJlbnQ7XHJcbiAgICAgICAgYm9yZGVyLWJvdHRvbTogZW0oJHNpemUsICRiYXNlLXNpemUpIHNvbGlkIHRyYW5zcGFyZW50O1xyXG4gICAgICAgIGJvcmRlci1yaWdodDogZW0oJHNpemUsICRiYXNlLXNpemUpIHNvbGlkICRjb2xvcjtcclxuICAgIH1cclxufVxyXG5cclxuXHJcbi8vIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cclxuLypcclxuICMjIyMjIyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICMjIyMjIyMgICAgICAgICAgICAgICAgICAgICAgXHJcbiAjICAgICAjICMjIyMjICAjICAjIyMjICAjIyMjIyAgIyAjIyMjIyAjICAgIyAgICAgICAjICAgICAgIyMgICAjIyMjIyAgICMjIyMgIFxyXG4gIyAgICAgIyAjICAgICMgIyAjICAgICMgIyAgICAjICMgICAjICAgICMgIyAgICAgICAgIyAgICAgIyAgIyAgIyAgICAjICMgICAgICBcclxuICMjIyMjIyAgIyAgICAjICMgIyAgICAjICMgICAgIyAjICAgIyAgICAgIyAgICAgICAgICMgICAgIyAgICAjICMjIyMjICAgIyMjIyAgXHJcbiAjICAgICAgICMjIyMjICAjICMgICAgIyAjIyMjIyAgIyAgICMgICAgICMgICAgICAgICAjICAgICMjIyMjIyAjICAgICMgICAgICAjIFxyXG4gIyAgICAgICAjICAgIyAgIyAjICAgICMgIyAgICMgICMgICAjICAgICAjICAgICAgICAgIyAgICAjICAgICMgIyAgICAjICMgICAgIyBcclxuICMgICAgICAgIyAgICAjICMgICMjIyMgICMgICAgIyAjICAgIyAgICAgIyAgICAgICAgICMgICAgIyAgICAjICMjIyMjICAgIyMjIyAgXHJcbiovXHJcbi8vIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cclxuXHJcbi8vIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cclxuICAgLy8gU2luZ2xlIHByaW9yaXR5IHRhYiBjb2xvclxyXG4vLyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXHJcblxyXG5AbWl4aW4gcHJpb3JpdHktdGFiLWNvbG9yKCRpbmRleCwgJGNvbG9yLCAkY29sb3ItZGFyaykge1xyXG5cdC5wcmlvcml0eS1jb2xvci0jeyRpbmRleH0ge1xyXG5cdFx0Ji5wcmlvcml0eS1jb250ZW50IHtcclxuXHRcdFx0Ym9yZGVyOiA4cHggc29saWQgJGNvbG9yO1xyXG5cdFx0fVxyXG5cdFx0XHJcblx0XHQmLnByaW9yaXR5LXRhYiB7XHJcblx0XHRcdGJhY2tncm91bmQtY29sb3I6ICRjb2xvcjtcclxuXHRcdH1cclxuXHRcdFxyXG5cdFx0LnByaW9yaXR5LWxhYmVsIHtcclxuXHRcdFx0YmFja2dyb3VuZC1jb2xvcjogJGNvbG9yLWRhcms7XHJcblx0XHR9XHJcblx0XHRcclxuXHRcdC5wcmlvcml0eS10YWItLWNoZXZyb24ge1xyXG5cdFx0XHRjb2xvcjogJGNvbG9yLWRhcms7XHJcblx0XHR9XHJcblx0XHRcclxuXHRcdC5wcmlvcml0eS1jb250ZW50LS10aXRsZSB7XHJcblx0XHRcdGNvbG9yOiAkY29sb3I7XHJcblx0XHR9XHJcblx0XHRcclxuXHRcdCY6aG92ZXIsXHJcblx0XHQmLmFjdGl2ZSB7XHJcblx0XHRcdC5wcmlvcml0eS10YWItLWNoZXZyb24ge1xyXG5cdFx0XHRcdGNvbG9yOiAkY29sb3I7XHJcblx0XHRcdH1cclxuXHRcdFxyXG5cdFx0XHQucHJpb3JpdHktbGFiZWwge1xyXG5cdFx0XHRcdGJhY2tncm91bmQtY29sb3I6ICRjb2xvcjtcclxuXHRcdFx0fVxyXG5cdFx0fVxyXG4gICAgICAgIC5sLWdyaWQtcHJpb3JpdHktZG93biB7XHJcbiAgICAgICAgICAgIGJhY2tncm91bmQ6JGNvbG9yLWRhcms7XHJcbiAgICAgICAgfVxyXG5cdH1cclxufVxyXG5cclxuLy8gLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxyXG4gICAvLyBUYWIgY29sb3JzIGZvciBhbGwgZGVmaW5lZCBjb2xvcnMgaW4gJHByaW9yaXR5LXRhYi1jb2xvcnNcclxuLy8gLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxyXG5cclxuQG1peGluIHByaW9yaXR5LXRhYi1jb2xvcnMge1xyXG5cdEBlYWNoICR0YWItY29sb3JzIGluICRwcmlvcml0eS10YWItY29sb3JzIHtcclxuXHRcdEBpbmNsdWRlIHByaW9yaXR5LXRhYi1jb2xvcihpbmRleCgkcHJpb3JpdHktdGFiLWNvbG9ycywgJHRhYi1jb2xvcnMpLCBtYXAtZ2V0KCR0YWItY29sb3JzLCBwcmltYXJ5KSwgbWFwLWdldCgkdGFiLWNvbG9ycywgc2Vjb25kYXJ5KSk7XHJcblx0fVxyXG59XHJcbiIsIi8vID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cclxuICAgLy8gcGFydGlhbHMvX3NjYWZmb2xkaW5nLnNjc3NcclxuLy8gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxyXG5cclxuLy8gLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxyXG4gICAvLyBCYXNlIEJvZHkgU3R5bGVcclxuLy8gLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxyXG5cclxuYm9keSB7XHJcblx0bWFyZ2luOiAwO1xyXG5cdHBvc2l0aW9uOnJlbGF0aXZlO1xyXG4gICAgYmFja2dyb3VuZC1jb2xvcjogJGNvbG9yLWJnO1xyXG5cdGNvbG9yOiAkdGV4dC1jb2xvcjtcclxuXHRmb250OiB7XHJcblx0XHRzaXplOiAkZm9udC1zaXplLWJhc2U7XHJcblx0XHRsaW5lLWhlaWdodDogJGxpbmUtaGVpZ2h0LWJhc2U7XHJcblx0XHRmYW1pbHk6ICRmb250LXByaW1hcnk7XHJcblx0XHR3ZWlnaHQ6IDQwMDtcclxuXHR9XHJcbn1cclxuXHJcbi8vIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cclxuICAgLy8gTGlua3NcclxuLy8gLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxyXG5cclxuYSwgYTpsaW5rIHtcclxuXHRjb2xvcjogJGxpbmstY29sb3I7XHJcblx0dGV4dC1kZWNvcmF0aW9uOiAkbGluay1kZWNvcmF0aW9uO1xyXG5cdEBpbmNsdWRlIHRyYW5zaXRpb24oYWxsKTtcclxuXHJcblx0Jjpob3ZlcixcclxuXHQmOmFjdGl2ZSB7XHJcblx0XHRjb2xvcjogJGxpbmstaG92ZXItY29sb3I7XHJcblx0XHR0ZXh0LWRlY29yYXRpb246ICRsaW5rLWhvdmVyLWRlY29yYXRpb247XHJcblx0fVxyXG5cclxuXHQmOnZpc2l0ZWQge1xyXG5cdFx0Y29sb3I6ICRsaW5rLXZpc2l0ZWQtY29sb3I7XHJcblxyXG5cdFx0Jjpob3ZlcixcclxuXHRcdCY6YWN0aXZlIHtcclxuXHRcdFx0Y29sb3I6ICRsaW5rLXZpc2l0ZWQtaG92ZXItY29sb3I7XHJcblx0XHR9XHJcblx0fVxyXG59XHJcblxyXG4vLyBBZGQgZXh0ZXJuYWwgbGluayBpY29uIHdoZW4gb3BlbmluZyBhIG5ldyB0YWIsIG9yIHdpbmRvd1xyXG5cclxuYS5saW5rLS1uZXctd2luZG93OmFmdGVyIHtcclxuXHRjb250ZW50OiBcIlwiO1xyXG5cdHBhZGRpbmctcmlnaHQ6IDEuNWVtO1xyXG5cdHdpZHRoOiBhdXRvO1xyXG5cdGhlaWdodDogMWVtO1xyXG5cdGJhY2tncm91bmQtaW1hZ2U6IHVybCgvaW1hZ2VzL2ljb25zL2ljb24tLWxpbmstZXh0ZXJuYWwtMDEuc3ZnKTtcclxuXHRiYWNrZ3JvdW5kLXBvc2l0aW9uOiByaWdodCAzcHg7XHJcblx0YmFja2dyb3VuZC1yZXBlYXQ6IG5vLXJlcGVhdDtcclxuXHRiYWNrZ3JvdW5kLXNpemU6IGF1dG8gMWVtO1xyXG5cdHRleHQtZGVjb3JhdGlvbjogbm9uZTtcclxufVxyXG5cclxuLy8gQWRkIGV4dGVybmFsIGxpbmsgaWNvbiB3aGVuIGxpbmtpbmcgdG8gZG93bmxvYWRhYmxlIGRvY3VtZW50cyBpbiBhIGxpc3RcclxuXHJcbmxpIGFbaHJlZiQ9IFwiLnBkZlwiXTphZnRlcixcclxubGkgYVtocmVmJD0gXCIuZG9jXCJdOmFmdGVyLFxyXG5saSBhW2hyZWYkPSBcIi54bHN4XCJdOmFmdGVyLFxyXG5saSBhW2hyZWYkPSBcIi54bHNcIl06YWZ0ZXIsXHJcbmxpIGFbaHJlZiQ9IFwiLnBwdFwiXTphZnRlcixcclxubGkubGluay0tbmV3LXdpbmRvdzphZnRlciB7XHJcblx0Y29udGVudDogXCIgXCI7XHJcblx0cGFkZGluZy1yaWdodDogMS41ZW07XHJcblx0d2lkdGg6IGF1dG87XHJcblx0aGVpZ2h0OiAxZW07XHJcblx0YmFja2dyb3VuZC1wb3NpdGlvbjogMC4yNWVtIDFweDtcclxuXHRiYWNrZ3JvdW5kLXJlcGVhdDogbm8tcmVwZWF0O1xyXG5cdGJhY2tncm91bmQtc2l6ZTogYXV0byAxZW07XHJcbn1cclxuXHJcbmxpIGFbaHJlZiQ9IFwiLnBkZlwiXTphZnRlciB7XHJcblx0YmFja2dyb3VuZC1pbWFnZTogdXJsKC9pbWFnZXMvaWNvbnMvaWNvbi0tcGRmLTAxLnN2Zyk7XHJcbn1cclxuXHJcbmxpIGFbaHJlZiQ9IFwiLmRvY1wiXTphZnRlciB7XHJcblx0YmFja2dyb3VuZC1pbWFnZTogdXJsKC9pbWFnZXMvaWNvbnMvaWNvbi0td29yZC0wMS5zdmcpO1xyXG59XHJcblxyXG5saSBhW2hyZWYkPSBcIi54bHN4XCJdOmFmdGVyIHtcclxuXHRiYWNrZ3JvdW5kLWltYWdlOiB1cmwoL2ltYWdlcy9pY29ucy9pY29uLS1leGNlbC0wMS5zdmcpO1xyXG59XHJcblxyXG5saSBhW2hyZWYkPSBcIi54bHNcIl06YWZ0ZXIge1xyXG5cdGJhY2tncm91bmQtaW1hZ2U6IHVybCgvaW1hZ2VzL2ljb25zL2ljb24tLWV4Y2VsLTAxLnN2Zyk7XHJcbn1cclxuXHJcbmxpIGFbaHJlZiQ9IFwiLnBwdFwiXTphZnRlciB7XHJcblx0YmFja2dyb3VuZC1pbWFnZTogdXJsKC9pbWFnZXMvaWNvbnMvaWNvbi0tcG93ZXJwb2ludC0wMS5zdmcpO1xyXG59XHJcblxyXG5saS5saW5rLS1uZXctd2luZG93OmFmdGVyIHtcclxuXHRiYWNrZ3JvdW5kLWltYWdlOiB1cmwoL2ltYWdlcy9pY29ucy9pY29uLS1saW5rLWV4dGVybmFsLTAxLnN2Zyk7XHJcbn1cclxuXHJcblxyXG4vLyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXHJcbiAgIC8vIEdlbmVyYWwgVHlwZSBTdHlsZXNcclxuLy8gLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxyXG5cclxucCwgbGksIGR0LCBkZCwgYWRkcmVzcyB7IGxpbmUtaGVpZ2h0OiAkbGluZS1oZWlnaHQtYmFzZTsgfVxyXG5cclxuZHQgeyBmb250LXdlaWdodDogYm9sZDsgfVxyXG5cclxuYmxvY2txdW90ZSB7XHJcblx0Ly8gZm9udC1zaXplOiAkYmxvY2txdW90ZS1mb250LXNpemU7XHJcblx0Zm9udC1zaXplOiBmbG9vcigoJGJsb2NrcXVvdGUtZm9udC1zaXplIC8gMS4xNzUpKTtcclxuXHJcblx0QGluY2x1ZGUgZGV2aWNlLXhzbSB7XHJcblx0XHRmb250LXNpemU6ICRibG9ja3F1b3RlLWZvbnQtc2l6ZTtcclxuXHR9XHJcblxyXG5cdGZvb3RlcixcclxuXHRzbWFsbCxcclxuXHQuc21hbGwge1xyXG5cdFx0Zm9udDoge1xyXG5cdFx0XHRmb250LXNpemU6IDY3JTsgLy8gYmFjayB0byBkZWZhdWx0IGZvbnQtc2l6ZVxyXG5cdFx0XHRsaW5lLWhlaWdodDogJGxpbmUtaGVpZ2h0LWJhc2U7XHJcblx0XHR9XHJcblx0XHRjb2xvcjogJGJsb2NrcXVvdGUtc21hbGwtY29sb3I7XHJcblx0fVxyXG59XHJcblxyXG5hZGRyZXNzIHtcclxuXHRmb250LXN0eWxlOiBub3JtYWw7XHJcbn1cclxuXHJcbi8vIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cclxuICAgLy8gU2VsZWN0aW9uIEhpZ2hsaWdodFxyXG4vLyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXHJcblxyXG46Oi1tb3otc2VsZWN0aW9uLCB7IC8qIENvZGUgZm9yIEZpcmVmb3ggKi9cclxuXHRiYWNrZ3JvdW5kLWNvbG9yOiAkY29sb3ItYnJhbmQtcHJpbWFyeS0xO1xyXG5cdGNvbG9yOiAkY29sb3ItcmV2ZXJzZWQ7XHJcbn1cclxuXHJcbjo6c2VsZWN0aW9uIHtcclxuXHRiYWNrZ3JvdW5kLWNvbG9yOiAkY29sb3ItYnJhbmQtcHJpbWFyeS0xO1xyXG5cdGNvbG9yOiAkY29sb3ItcmV2ZXJzZWQ7XHJcbn1cclxuIiwiLy8gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxyXG4gICAvLyBwYXJ0aWFscy9fdHlwb2dyYXBoeS5zY3NzXHJcbi8vID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cclxuXHJcbi8vIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cclxuICAgLy8gSGVhZGluZ3NcclxuLy8gLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxyXG5cclxuaDEsIC5oMSB7XHJcblx0Zm9udDoge1xyXG5cdFx0ZmFtaWx5OiAkZm9udC1zZWNvbmRhcnk7XHJcblx0XHR3ZWlnaHQ6IGJvbGQ7XHJcblx0fVxyXG5cdGxldHRlci1zcGFjaW5nOiAxcHg7XHJcbn1cclxuXHJcbmgyLCBoMywgaDQsIGg1LCBoNixcclxuLmgyLCAuaDMsIC5oNCwgLmg1LCAuaDYge1xyXG5cdGZvbnQ6IHtcclxuXHRcdGZhbWlseTogJGZvbnQtcHJpbWFyeTtcclxuXHRcdHdlaWdodDogbm9ybWFsO1xyXG5cdH1cclxufVxyXG5cclxuaDEsIGgyLCBoMywgaDQsIGg1LCBoNixcclxuLmgxLCAuaDIsIC5oMywgLmg0LCAuaDUsIC5oNiB7XHJcblx0bGluZS1oZWlnaHQ6ICRoZWFkaW5ncy1saW5lLWhlaWdodDtcclxuXHRjb2xvcjogJGhlYWRpbmdzLWNvbG9yO1xyXG5cdEBpbmNsdWRlIHRyYW5zaXRpb24oYWxsKTtcclxufVxyXG5cclxuaDEsIC5oMSB7XHJcblx0bWFyZ2luLXRvcDogKCRsaW5lLWhlaWdodC1jb21wdXRlZCAqIDEuNSk7XHJcblx0bWFyZ2luLWJvdHRvbTogKCRsaW5lLWhlaWdodC1jb21wdXRlZCAqIDEuNSk7XHJcbn1cclxuXHJcbmgyLCAuaDIsXHJcbmgzLCAuaDMge1xyXG5cdG1hcmdpbi10b3A6ICgkbGluZS1oZWlnaHQtY29tcHV0ZWQgKiAxLjUpO1xyXG5cdG1hcmdpbi1ib3R0b206ICRsaW5lLWhlaWdodC1jb21wdXRlZDtcclxufVxyXG5cclxuaDQsIC5oNCxcclxuaDUsIC5oNSxcclxuaDYsIC5oNiB7XHJcblx0bWFyZ2luLXRvcDogKCRsaW5lLWhlaWdodC1jb21wdXRlZCAvIDIpO1xyXG5cdG1hcmdpbi1ib3R0b206ICgkbGluZS1oZWlnaHQtY29tcHV0ZWQgLyAyKTtcclxufVxyXG5cclxuaDEsIGgyLCBoMywgaDQsIGg1LCBoNixcclxuLmgxLCAuaDIsIC5oMywgLmg0LCAuaDUsIC5oNiB7XHJcblx0c21hbGwsXHJcblx0LnNtYWxsIHtcclxuXHRcdGZvbnQtd2VpZ2h0OiBub3JtYWw7XHJcblx0XHRsaW5lLWhlaWdodDogMTtcclxuXHR9XHJcbn1cclxuXHJcbmgxLCAuaDEsXHJcbmgyLCAuaDIsXHJcbmgzLCAuaDMge1xyXG5cdHNtYWxsLFxyXG5cdC5zbWFsbCB7XHJcblx0XHRmb250LXNpemU6IDY1JTtcclxuXHR9XHJcbn1cclxuXHJcbmg0LCAuaDQsXHJcbmg1LCAuaDUsXHJcbmg2LCAuaDYge1xyXG5cdHNtYWxsLFxyXG5cdC5zbWFsbCB7XHJcbiAgICBmb250LXNpemU6IDc1JTtcclxuICB9XHJcbn1cclxuXHJcbmgxLCAuaDEgeyBcclxuXHRmb250LXNpemU6IGNlaWwoKCRmb250LXNpemUtaDEgLyAyLjE1KSk7IFxyXG5cclxuXHRAaW5jbHVkZSBkZXZpY2UteHNtIHtcclxuXHRcdGZvbnQtc2l6ZTogY2VpbCgoJGZvbnQtc2l6ZS1oMSAvIDEuNSkpO1xyXG5cdH1cclxuXHJcblx0QGluY2x1ZGUgZGV2aWNlLXNtIHtcclxuXHRcdGZvbnQtc2l6ZTogJGZvbnQtc2l6ZS1oMTtcclxuXHR9XHJcbn1cclxuaDIsIC5oMiB7IFxyXG5cdGZvbnQtc2l6ZTogY2VpbCgoJGZvbnQtc2l6ZS1oMiAvIDEuMTUpKTsgXHJcblxyXG5cdEBpbmNsdWRlIGRldmljZS1zbSB7XHJcblx0XHRmb250LXNpemU6ICRmb250LXNpemUtaDI7XHJcblx0fVxyXG59XHJcbmgzLCAuaDMgeyBcclxuXHRmb250LXNpemU6IGNlaWwoKCRmb250LXNpemUtaDMgLyAxLjE1KSk7IFxyXG5cclxuXHRAaW5jbHVkZSBkZXZpY2Utc20ge1xyXG5cdFx0Zm9udC1zaXplOiAkZm9udC1zaXplLWgzO1xyXG5cdH1cclxufVxyXG5oNCwgLmg0IHsgXHJcblx0Zm9udC1zaXplOiBjZWlsKCgkZm9udC1zaXplLWg2IC8gMS4yNSkpO1xyXG5cclxuXHRAaW5jbHVkZSBkZXZpY2Utc20ge1xyXG5cdFx0Zm9udC1zaXplOiAkZm9udC1zaXplLWg0O1xyXG5cdH1cclxufVxyXG5oNSwgLmg1IHsgXHJcblx0Zm9udC1zaXplOiBjZWlsKCgkZm9udC1zaXplLWg2IC8gMS4yNSkpO1xyXG5cclxuXHRAaW5jbHVkZSBkZXZpY2Utc20ge1xyXG5cdFx0Zm9udC1zaXplOiAkZm9udC1zaXplLWg1O1xyXG5cdH1cclxufVxyXG5cclxuaDYsIC5oNiB7IFxyXG5cdGZvbnQtc2l6ZTogY2VpbCgoJGZvbnQtc2l6ZS1oNiAvIDEuMjUpKTtcclxuXHJcblx0QGluY2x1ZGUgZGV2aWNlLXNtIHtcclxuXHRcdGZvbnQtc2l6ZTogJGZvbnQtc2l6ZS1oNjtcclxuXHR9XHJcbn1cclxuXHJcbmgxICsgaDIge1xyXG5cdG1hcmdpbi10b3A6IC0wLjVlbTtcclxufVxyXG5cclxuLy8gLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxyXG4gICAvLyBCb2R5IFRleHRcclxuLy8gLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxyXG5cclxucCB7XHJcblx0bWFyZ2luOiAwIDAgJGxpbmUtaGVpZ2h0LWNvbXB1dGVkO1xyXG59XHJcblxyXG4ubGVhZCB7XHJcblx0bWFyZ2luLWJvdHRvbTogKCRsaW5lLWhlaWdodC1jb21wdXRlZCAqIDEuNSk7XHJcblx0Zm9udDoge1xyXG5cdFx0c2l6ZTogJGZvbnQtc2l6ZS1sYXJnZTtcclxuXHRcdHdlaWdodDogbm9ybWFsO1xyXG5cdH1cclxuXHRsaW5lLWhlaWdodDogMS43O1xyXG59XHJcblxyXG4vLyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXHJcbiAgIC8vIEVtcGhhc2lzICYgTWlzY1xyXG4vLyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXHJcblxyXG4vLyBFeDogKDEycHggc21hbGwgZm9udCAvIDE2cHggYmFzZSBmb250KSAqIDEwMCUgPSBhYm91dCA3NSVcclxuc21hbGwsXHJcbi5zbWFsbCB7XHJcblx0Zm9udC1zaXplOiBmbG9vcigoMTAwJSAqICRmb250LXNpemUtc21hbGwgLyAkZm9udC1zaXplLWJhc2UpKTtcclxufVxyXG5cclxubWFyayxcclxuLm1hcmsge1xyXG5cdHBhZGRpbmc6IC4yZW07XHJcblx0YmFja2dyb3VuZC1jb2xvcjogJG1hcmstY29sb3I7XHJcblx0Y29sb3I6ICRjb2xvci1ibGFjaztcclxufVxyXG5cclxuLy8gQWxpZ25tZW50XHJcbi50ZXh0LS1sZWZ0ICAgICAgICAgICB7IHRleHQtYWxpZ246IGxlZnQ7IH1cclxuLnRleHQtLXJpZ2h0ICAgICAgICAgIHsgdGV4dC1hbGlnbjogcmlnaHQ7IH1cclxuLnRleHQtLWNlbnRlciAgICAgICAgIHsgdGV4dC1hbGlnbjogY2VudGVyOyB9XHJcbi50ZXh0LS1qdXN0aWZ5ICAgICAgICB7IHRleHQtYWxpZ246IGp1c3RpZnk7IH1cclxuLnRleHQtLW5vd3JhcCAgICAgICAgIHsgd2hpdGUtc3BhY2U6IG5vd3JhcDsgfVxyXG5cclxuLy8gVHJhbnNmb3JtYXRpb25cclxuLnRleHQtLWxvd2VyY2FzZSAgICAgIHsgdGV4dC10cmFuc2Zvcm06IGxvd2VyY2FzZTsgfVxyXG4udGV4dC0tdXBwZXJjYXNlICAgICAgeyB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlOyB9XHJcbi50ZXh0LS1jYXBpdGFsaXplICAgICB7IHRleHQtdHJhbnNmb3JtOiBjYXBpdGFsaXplOyB9XHJcblxyXG4vLyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXHJcbiAgIC8vIFBhZ2UgSGVhZGVyXHJcbi8vIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cclxuXHJcbi5wYWdlLWhlYWRlciB7XHJcblx0cGFkZGluZy1ib3R0b206ICgoJGxpbmUtaGVpZ2h0LWNvbXB1dGVkIC8gMikgLSAxKTtcclxuXHRtYXJnaW46ICgkbGluZS1oZWlnaHQtY29tcHV0ZWQgKiAyKSAwICRsaW5lLWhlaWdodC1jb21wdXRlZDtcclxuXHRib3JkZXItYm90dG9tOiAxcHggc29saWQgJHRleHQtY29sb3I7XHJcbn1cclxuXHJcbi8vIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cclxuICAgLy8gTGlzdHNcclxuLy8gLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxyXG5cclxuLy8gVW5vcmRlcmVkIGFuZCBPcmRlcmVkIGxpc3RzXHJcbnVsLFxyXG5vbCB7XHJcblx0bWFyZ2luLXRvcDogMDtcclxuXHRtYXJnaW4tYm90dG9tOiAoJGxpbmUtaGVpZ2h0LWNvbXB1dGVkIC8gMik7XHJcblxyXG5cdGxpIHtcclxuXHRcdHBhZGRpbmctYm90dG9tOiAoJGxpbmUtaGVpZ2h0LWNvbXB1dGVkIC8gMik7XHJcblx0fVxyXG5cclxuXHR1bCxcclxuXHRvbCB7XHJcblx0XHRtYXJnaW4tYm90dG9tOiAwO1xyXG5cdH1cclxufVxyXG5cclxub2wgbGkge1xyXG5cdHBhZGRpbmctbGVmdDogMTBweDtcclxufVxyXG5cclxuLy8gVW5zdHlsZWQgbGlzdFxyXG4ubGlzdC0tdW5zdHlsZWQge1xyXG4gIEBpbmNsdWRlIGxpc3QtdW5zdHlsZWQ7XHJcbiAgXHJcbiAgbGkge1xyXG5cdFx0cGFkZGluZy1ib3R0b206IDA7XHJcblx0fVxyXG59XHJcblxyXG4vLyBJbmxpbmUgdHVybnMgbGlzdCBpdGVtcyBpbnRvIGlubGluZS1ibG9ja1xyXG4ubGlzdC0taW5saW5lIHtcclxuXHRAaW5jbHVkZSBsaXN0LXVuc3R5bGVkO1xyXG5cdG1hcmdpbi1sZWZ0OiAtNXB4O1xyXG5cclxuXHQ+IGxpIHtcclxuXHRcdGRpc3BsYXk6IGlubGluZS1ibG9jaztcclxuXHRcdHBhZGRpbmctbGVmdDogNXB4O1xyXG5cdFx0cGFkZGluZy1yaWdodDogNXB4O1xyXG5cdH1cclxufVxyXG5cclxuLy8gRGVzY3JpcHRpb24gTGlzdHNcclxuZGwge1xyXG5cdG1hcmdpbi10b3A6IDA7XHJcblx0bWFyZ2luLWJvdHRvbTogJGxpbmUtaGVpZ2h0LWNvbXB1dGVkO1xyXG59XHJcblxyXG5kdCB7XHJcblx0cGFkZGluZy1ib3R0b206ICgkbGluZS1oZWlnaHQtY29tcHV0ZWQgLyAyKTtcclxufVxyXG5cclxuZGQge1xyXG5cdHBhZGRpbmctYm90dG9tOiAoJGxpbmUtaGVpZ2h0LWNvbXB1dGVkIC8gMik7XHJcbn1cclxuXHJcbi8vIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cclxuICAgLy8gQWJicmV2aWF0aW9ucyBhbmQgQWNyb255bXNcclxuLy8gLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxyXG5cclxuYWJiclt0aXRsZV0sXHJcbi8vIEFkZCBkYXRhLSogYXR0cmlidXRlIHRvIGhlbHAgb3V0IG91ciB0b29sdGlwIHBsdWdpbiwgXHJcbi8vIHBlciBodHRwczovL2dpdGh1Yi5jb20vdHdicy9ib290c3RyYXAvaXNzdWVzLzUyNTdcclxuYWJicltkYXRhLW9yaWdpbmFsLXRpdGxlXSB7XHJcblx0Y3Vyc29yOiBoZWxwO1xyXG5cdGJvcmRlci1ib3R0b206IDFweCBkb3R0ZWQgJHRleHQtY29sb3I7XHJcbn1cclxuXHJcbi5pbml0aWFsaXNtIHtcclxuXHRmb250LXNpemU6IDkwJTtcclxuXHRAZXh0ZW5kIC50ZXh0LS11cHBlcmNhc2U7XHJcbn1cclxuXHJcbi8vIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cclxuICAgLy8gQmxvY2txdW90ZXNcclxuLy8gLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxyXG5cclxuYmxvY2txdW90ZSB7XHJcblx0cGFkZGluZzogMDtcclxuXHRtYXJnaW46IDEuNzVlbSAwLjVlbSAyZW07XHJcblx0Y29sb3I6ICRjb2xvci1icmFuZC1wcmltYXJ5LTI7XHJcblx0Zm9udDoge1xyXG5cdFx0d2VpZ2h0OiBub3JtYWw7XHJcblx0XHRmYW1pbHk6ICRmb250LXByaW1hcnk7XHJcblx0XHRzaXplOiAkZm9udC1zaXplLXhsYXJnZTtcclxuXHRcdHN0eWxlOiBpdGFsaWM7XHJcblx0fVxyXG5cclxuXHRAaW5jbHVkZSBkZXZpY2UteHNtIHtcclxuXHRcdG1hcmdpbjogMS43NWVtIDEuNWVtIDJlbTtcclxuXHR9XHJcblxyXG5cdC8vIEBpbmNsdWRlIGRldmljZS14c20ge1xyXG5cdC8vIFx0bWFyZ2luOiAoJGxpbmUtaGVpZ2h0LWNvbXB1dGVkICogMikgMCAoJGxpbmUtaGVpZ2h0LWNvbXB1dGVkICogMi4yNSkgKCRsaW5lLWhlaWdodC1jb21wdXRlZCAqIDEuNSk7XHRcclxuXHQvLyB9XHJcblxyXG5cdHAge1xyXG5cdFx0bWFyZ2luOiAwIDAgMC41ZW07XHJcblx0XHRsaW5lLWhlaWdodDogMS4zZW07XHJcblx0fVxyXG5cclxuXHRwLFxyXG5cdHVsLFxyXG5cdG9sIHtcclxuXHRcdCY6bGFzdC1jaGlsZCB7XHJcblx0XHRcdG1hcmdpbi1ib3R0b206IDJlbTtcclxuXHRcdH1cclxuXHR9XHJcblxyXG5cdGZvb3RlcixcclxuXHRzbWFsbCxcclxuXHQuc21hbGwge1xyXG5cdFx0ZGlzcGxheTogYmxvY2s7XHJcblx0XHRmb250OiB7XHJcblx0XHRcdHNpemU6ICRmb250LXNpemUtYmFzZTtcclxuXHRcdFx0c3R5bGU6IGl0YWxpYztcclxuXHRcdFx0ZmFtaWx5OiAkZm9udC1wcmltYXJ5O1xyXG5cdFx0XHR3ZWlnaHQ6IG5vcm1hbDtcclxuXHRcdH1cclxuXHR9XHJcbn1cclxuXHJcbi8vIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cclxuICAgLy8gUHJlIENvZGUgYW5kIEtleWJvYXJkIElucHV0XHJcbi8vIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cclxuXHJcbnByZSB7XHJcblx0d29yZC1icmVhazogYnJlYWstYWxsOyBcclxuXHR3b3JkLXdyYXA6IGJyZWFrLXdvcmQ7XHJcblx0d2hpdGUtc3BhY2U6IHByZTtcclxuXHR3aGl0ZS1zcGFjZTogLW1vei1wcmUtd3JhcDtcclxuXHR3aGl0ZS1zcGFjZTogcHJlLXdyYXA7XHJcblx0d2hpdGUtc3BhY2U6IHByZVxcOTsgXHJcbn1cclxuXHJcbmNvZGUge1xyXG5cdGNvbG9yOiAkY29sb3ItdXRpbGl0eS1uZWdhdGl2ZTtcclxufVxyXG5cclxuLy8gLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxyXG4gICAvLyBBZGRyZXNzZXNcclxuLy8gLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxyXG5cclxuYWRkcmVzcyB7XHJcblx0bWFyZ2luLWJvdHRvbTogJGxpbmUtaGVpZ2h0LWNvbXB1dGVkO1xyXG59XHJcblxyXG5cclxuQGluY2x1ZGUgZGV2aWNlLXhzbS1vbmx5ICB7XHJcbiAgICBoMiB7XHJcbiAgICAgICAgZm9udC1zaXplOjM2cHg7XHJcbiAgICB9XHJcbn1cclxuXHJcbkBpbmNsdWRlIGRldmljZS14c20tZG93biB7XHJcbiAgICBoMiB7XHJcbiAgICAgICAgZm9udC1zaXplOjMycHg7XHJcbiAgICB9XHJcbn1cclxuXHJcbkBtZWRpYSAobWF4LXdpZHRoOiAkZGV2aWNlLXNtLXdpZHRoKSB7XHJcbiAgICAubGVhZCB7XHJcbiAgICAgICAgbGluZS1oZWlnaHQ6bm9ybWFsO1xyXG4gICAgfVxyXG59IiwiLy8gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxyXG4gICAvLyBwYXJ0aWFscy9faGVscGVycy5zY3NzXHJcbi8vID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cclxuXHJcbi5zci1vbmx5IHtcclxuXHRwb3NpdGlvbjogYWJzb2x1dGU7XHJcblx0d2lkdGg6IDFweDtcclxuXHRoZWlnaHQ6IDFweDtcclxuXHRwYWRkaW5nOiAwO1xyXG5cdG1hcmdpbjogLTFweDtcclxuXHRvdmVyZmxvdzogaGlkZGVuO1xyXG5cdGNsaXA6IHJlY3QoMCwwLDAsMCk7XHJcblx0Ym9yZGVyOiAwO1xyXG59XHJcblxyXG4vLyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXHJcbiAgIC8vIENvbnRleHR1YWwgY29sb3Vyc1xyXG4vLyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXHJcblxyXG4udGV4dC0tbXV0ZWQge1xyXG5cdG1hcmdpbi10b3A6ICgkbGluZS1oZWlnaHQtY29tcHV0ZWQgLyAxKTtcclxuXHRtYXJnaW4tYm90dG9tOiAoJGxpbmUtaGVpZ2h0LWNvbXB1dGVkIC8gMSk7XHJcblx0Y29sb3I6ICRjb2xvci1ncmV5LTU7XHJcbn1cclxuXHJcbi50ZXh0LS1wb3NpdGl2ZSB7XHJcblx0bWFyZ2luLXRvcDogKCRsaW5lLWhlaWdodC1jb21wdXRlZCAvIDEpO1xyXG5cdG1hcmdpbi1ib3R0b206ICgkbGluZS1oZWlnaHQtY29tcHV0ZWQgLyAxKTtcclxuXHRjb2xvcjogJGNvbG9yLXV0aWxpdHktcG9zaXRpdmU7XHJcbn1cclxuXHJcbi50ZXh0LS1uZWdhdGl2ZSB7XHJcblx0bWFyZ2luLXRvcDogKCRsaW5lLWhlaWdodC1jb21wdXRlZCAvIDEpO1xyXG5cdG1hcmdpbi1ib3R0b206ICgkbGluZS1oZWlnaHQtY29tcHV0ZWQgLyAxKTtcclxuXHRjb2xvcjogJGNvbG9yLXV0aWxpdHktbmVnYXRpdmU7XHJcbn1cclxuXHJcbi8vIC50ZXh0LS1jYXV0aW9uIHtcclxuLy8gXHRtYXJnaW4tdG9wOiAoJGxpbmUtaGVpZ2h0LWNvbXB1dGVkIC8gMSk7XHJcbi8vIFx0bWFyZ2luLWJvdHRvbTogKCRsaW5lLWhlaWdodC1jb21wdXRlZCAvIDEpO1xyXG4vLyBcdGNvbG9yOiAkY29sb3ItdXRpbGl0eS1jYXV0aW9uO1xyXG4vLyB9XHJcblxyXG4vLyAudGV4dC0tbmV1dHJhbCB7XHJcbi8vIFx0bWFyZ2luLXRvcDogKCRsaW5lLWhlaWdodC1jb21wdXRlZCAvIDEpO1xyXG4vLyBcdG1hcmdpbi1ib3R0b206ICgkbGluZS1oZWlnaHQtY29tcHV0ZWQgLyAxKTtcclxuLy8gXHRjb2xvcjogJGNvbG9yLXV0aWxpdHktbmV1dHJhbDtcclxuLy8gfVxyXG5cclxuLy8gLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxyXG4gICAvLyBDb250ZXh0dWFsIGJhY2tncm91bmRzXHJcbi8vIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cclxuXHJcbi5iZy0tbXV0ZWQge1xyXG5cdG1hcmdpbi10b3A6ICgkbGluZS1oZWlnaHQtY29tcHV0ZWQgLyAxKTtcclxuXHRtYXJnaW4tYm90dG9tOiAoJGxpbmUtaGVpZ2h0LWNvbXB1dGVkIC8gMSk7XHJcblx0cGFkZGluZzogMTVweCAxNXB4IDE4cHg7XHJcblx0Ym9yZGVyOiAxcHggc29saWQgJGJvcmRlci1jb2xvcjtcclxuXHRiYWNrZ3JvdW5kLWNvbG9yOiAkY29sb3ItYmctbXV0ZWQ7XHJcblx0Y29sb3I6ICRjb2xvci1ncmV5LTU7XHJcbn1cclxuXHJcbi5iZy0tcG9zaXRpdmUge1xyXG5cdG1hcmdpbi10b3A6ICgkbGluZS1oZWlnaHQtY29tcHV0ZWQgLyAxKTtcclxuXHRtYXJnaW4tYm90dG9tOiAoJGxpbmUtaGVpZ2h0LWNvbXB1dGVkIC8gMSk7XHJcblx0cGFkZGluZzogMTVweCAxNXB4IDE4cHg7XHJcblx0Ym9yZGVyOiAxcHggc29saWQgJGNvbG9yLWJnLXBvc2l0aXZlO1xyXG5cdGJhY2tncm91bmQtY29sb3I6ICRjb2xvci11dGlsaXR5LXBvc2l0aXZlLXN1YnRsZTtcclxuXHRjb2xvcjogZGFya2VuKCRjb2xvci11dGlsaXR5LXBvc2l0aXZlLCA1JSk7XHJcbn1cclxuXHJcbi5iZy0tbmVnYXRpdmUge1xyXG5cdG1hcmdpbi10b3A6ICgkbGluZS1oZWlnaHQtY29tcHV0ZWQgLyAxKTtcclxuXHRtYXJnaW4tYm90dG9tOiAoJGxpbmUtaGVpZ2h0LWNvbXB1dGVkIC8gMSk7XHJcblx0cGFkZGluZzogMTVweCAxNXB4IDE4cHg7XHJcblx0Ym9yZGVyOiAxcHggc29saWQgJGNvbG9yLWJnLW5lZ2F0aXZlO1xyXG5cdGJhY2tncm91bmQtY29sb3I6ICRjb2xvci11dGlsaXR5LW5lZ2F0aXZlLXN1YnRsZTtcclxuXHRjb2xvcjogZGFya2VuKCRjb2xvci11dGlsaXR5LW5lZ2F0aXZlLCA1JSk7XHJcbn1cclxuXHJcbi8vIC5iZy0tY2F1dGlvbiB7XHJcbi8vIFx0bWFyZ2luLXRvcDogKCRsaW5lLWhlaWdodC1jb21wdXRlZCAvIDEpO1xyXG4vLyBcdG1hcmdpbi1ib3R0b206ICgkbGluZS1oZWlnaHQtY29tcHV0ZWQgLyAxKTtcclxuLy8gXHRwYWRkaW5nOiAxNXB4IDE1cHggMThweDtcclxuLy8gXHRib3JkZXI6IDFweCBzb2xpZCAkY29sb3ItYmctY2F1dGlvbjtcclxuLy8gXHRiYWNrZ3JvdW5kLWNvbG9yOiAkY29sb3ItdXRpbGl0eS1jYXV0aW9uLXN1YnRsZTtcclxuLy8gXHRjb2xvcjogZGFya2VuKCRjb2xvci11dGlsaXR5LWNhdXRpb24sIDglKTtcclxuLy8gfVxyXG5cclxuLy8gLmJnLS1uZXV0cmFsIHtcclxuLy8gXHRtYXJnaW4tdG9wOiAoJGxpbmUtaGVpZ2h0LWNvbXB1dGVkIC8gMSk7XHJcbi8vIFx0bWFyZ2luLWJvdHRvbTogKCRsaW5lLWhlaWdodC1jb21wdXRlZCAvIDEpO1xyXG4vLyBcdHBhZGRpbmc6IDE1cHggMTVweCAxOHB4O1xyXG4vLyBcdGJvcmRlcjogMXB4IHNvbGlkICRjb2xvci1iZy1uZXV0cmFsO1xyXG4vLyBcdGJhY2tncm91bmQtY29sb3I6ICRjb2xvci11dGlsaXR5LW5ldXRyYWwtc3VidGxlO1xyXG4vLyBcdGNvbG9yOiBkYXJrZW4oJGNvbG9yLXV0aWxpdHktbmV1dHJhbCwgNSUpO1xyXG4vLyB9XHJcblxyXG4ucmVsYXRpdmUge1xyXG4gICAgcG9zaXRpb246cmVsYXRpdmU7XHJcbn0iLCIvLyA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XHJcbiAgIC8vIGxheW91dC9fZ3JpZC5zY3NzXHJcbi8vID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cclxuXHJcbi8vIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cclxuICAgLy8gQmFzaWMgU2V0dXBcclxuLy8gLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxyXG5cclxuaHRtbCB7XHJcblx0QGluY2x1ZGUgYm94LXNpemluZygpO1xyXG59XHJcblxyXG4qLFxyXG4qOmJlZm9yZSxcclxuKjphZnRlciB7XHJcblx0Ym94LXNpemluZzogYm9yZGVyLWJveDtcclxufVxyXG5cclxuLy8gLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxyXG4gICAvLyBMYXlvdXQgV3JhcFxyXG4vLyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXHJcblxyXG4ubC13cmFwIHtcclxuXHRwb3NpdGlvbjogcmVsYXRpdmU7XHJcblx0bWFyZ2luLWxlZnQ6IGF1dG87XHJcblx0bWFyZ2luLXJpZ2h0OiBhdXRvO1xyXG5cdG1heC13aWR0aDogZW0oMTU5NiwgJGZvbnQtc2l6ZS1iYXNlKTsgLy8gMTYwMCAgLyAxOHB4IChiYXNlIGZvbnQgc2l6ZSlcclxufVxyXG4ubC13cmFwLWZsdWlkIHtcclxuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcclxuICAgIHdpZHRoOjEwMCU7XHJcbn1cclxuLy8gLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxyXG4gICAvLyBHZW5lcmljIEdyaWQgSXRlbSBTdHlsZXNcclxuLy8gLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxyXG5cclxuLmdyaWQtaXRlbSB7XHJcblx0bWFyZ2luLWxlZnQ6IDE1cHg7XHJcblx0bWFyZ2luLXJpZ2h0OiAxNXB4O1xyXG59XHJcbi5ncmlkLXJvdyB7XHJcbiAgICBtYXJnaW4tbGVmdDotMTVweDtcclxuICAgIG1hcmdpbi1yaWdodDotMTVweDtcclxuICAgIHBvc2l0aW9uOnJlbGF0aXZlO1xyXG59XHJcblxyXG5cclxuLy8gLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxyXG4vKlxyXG4gICAjICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFxyXG4gICAjICAgICAgICAgIyMgICAjICAgIyAgIyMjIyAgIyAgICAjICMjIyMjIFxyXG4gICAjICAgICAgICAjICAjICAgIyAjICAjICAgICMgIyAgICAjICAgIyAgIFxyXG4gICAjICAgICAgICMgICAgIyAgICMgICAjICAgICMgIyAgICAjICAgIyAgIFxyXG4gICAjICAgICAgICMjIyMjIyAgICMgICAjICAgICMgIyAgICAjICAgIyAgIFxyXG4gICAjICAgICAgICMgICAgIyAgICMgICAjICAgICMgIyAgICAjICAgIyAgIFxyXG4gICAjIyMjIyMjICMgICAgIyAgICMgICAgIyMjIyAgICMjIyMgICAgIyAgIFxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFxyXG4gICAgIyMjIyMgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFxyXG4gICAjICAgICAjICMjIyMjICAjICMjIyMjICAgIyMjIyAgICAgICAgICAgIFxyXG4gICAjICAgICAgICMgICAgIyAjICMgICAgIyAjICAgICAgICAgICAgICAgIFxyXG4gICAjICAjIyMjICMgICAgIyAjICMgICAgIyAgIyMjIyAgICAgICAgICAgIFxyXG4gICAjICAgICAjICMjIyMjICAjICMgICAgIyAgICAgICMgICAgICAgICAgIFxyXG4gICAjICAgICAjICMgICAjICAjICMgICAgIyAjICAgICMgICAgICAgICAgIFxyXG4gICAgIyMjIyMgICMgICAgIyAjICMjIyMjICAgIyMjIyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgXHJcbiovXHJcbi8vIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cclxuXHJcbi8qXHJcbiAgIFNldCB1cCBhIEdyaWQgdGVtcGxhdGUgZm9yIGVhY2ggY29udGVudCB0ZW1wbGF0ZSBvbiB0aGUgc2l0ZS4gXHJcbiAgIFRoZXJlIHNob3VsZCBiZSB0aGUgc2FtZSBudW1iZXIgb2YgbGF5b3V0cyBwZXIgY29udGVudCB0eXBlLlxyXG4gICBcclxuICAgV2hlbiBkZWZpbmluZyB0aGUgYW1vdW50IG9mIGNvbHVtbnMgZWFjaCBncmlkIGNvbnRhaW5lciBzaG91bGQgY292ZXIgXHJcbiAgIHVzZSB0aGUgbWl4aW5zIGRldmVsb3BlZCBpbiB0aGUgX21peGlucy5zY3NzIGZpbGUuXHJcbiAqL1xyXG5cclxuIC8vIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cclxuICAgIC8vIEJhc2ljIFRlbXBsYXRlXHJcbiAvLyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXHJcblxyXG5cclxuXHJcbi5sLWdyaWQtaG9tZS1oZWFkZXIge1xyXG4gICAgQGV4dGVuZCAlY2xlYXJmaXg7XHJcblxyXG4gICAgLmdyaWQtaXRlbS0yIHtcclxuICAgICAgICBAaW5jbHVkZSBsLWdyaWQtMTItY29sdW1ucy0xMjtcclxuXHJcbiAgICB9XHJcbiAgICAuZ3JpZC1pdGVtLTMge1xyXG4gICAgICAgIEBpbmNsdWRlIGwtZ3JpZC0xMi1jb2x1bW5zLTEyO1xyXG5cclxuICAgIH1cclxuXHJcbiAgICAvLyA5NjBweCBhbmQgYWJvdmVcclxuICAgIEBtZWRpYSAobWluLXdpZHRoOiA2Ni42NjY2N2VtKSB7XHJcbiAgICAgICAgQGluY2x1ZGUgZmxleC13cmFwKG5vd3JhcCk7XHJcbiAgICAgICAgQGluY2x1ZGUgZmxleC1kaXNwbGF5KGZsZXgpO1xyXG5cclxuICAgICAgICAuZ3JpZC1pdGVtLTEge1xyXG4gICAgICAgICAgICBAaW5jbHVkZSBsLWdyaWQtMTItY29sdW1ucy00O1xyXG4gICAgICAgIH1cclxuXHJcbiAgICAgICAgLmdyaWQtaXRlbS0yIHtcclxuICAgICAgICAgICAgQGluY2x1ZGUgbC1ncmlkLTEyLWNvbHVtbnMtODtcclxuICAgICAgICB9XHJcbiAgICAgICAgLmdyaWQtaXRlbS0zIHtcclxuICAgICAgICAgICAgbWFyZ2luLWxlZnQ6IGNhbGMoKDEwMCUgLyAxMikgKyAxNXB4KTtcclxuICAgICAgICAgICAgQGluY2x1ZGUgbC1ncmlkLTEyLWNvbHVtbnMtMTA7XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG59XHJcblxyXG4ubC1ncmlkLWhlYWRlciB7XHJcblx0QGV4dGVuZCAlY2xlYXJmaXg7XHJcblxyXG4gICAgLmdyaWQtaXRlbS0xIHtcclxuICAgICAgICBAaW5jbHVkZSBsLWdyaWQtMTItY29sdW1ucy02O1xyXG4gICAgfVxyXG5cclxuICAgIC5ncmlkLWl0ZW0tMiB7XHJcbiAgICAgICAgQGluY2x1ZGUgbC1ncmlkLTEyLWNvbHVtbnMtNjtcclxuICAgICAgICB0ZXh0LWFsaWduOiByaWdodDtcclxuICAgIH1cclxuXHRcclxuXHQvLyA3NjhweCBhbmQgYWJvdmVcclxuXHRAaW5jbHVkZSBkZXZpY2Utc20ge1xyXG5cdFx0QGluY2x1ZGUgZmxleC1kaXNwbGF5KGZsZXgpO1xyXG5cclxuXHRcdC5ncmlkLWl0ZW0tMSB7XHJcblx0XHRcdEBpbmNsdWRlIGwtZ3JpZC0xMi1jb2x1bW5zLTQ7XHJcblx0XHR9XHJcblxyXG5cdFx0LmdyaWQtaXRlbS0yIHtcclxuXHRcdFx0QGluY2x1ZGUgbC1ncmlkLTEyLWNvbHVtbnMtODtcclxuXHRcdFx0dGV4dC1hbGlnbjogcmlnaHQ7XHJcblx0XHR9XHJcblx0fVxyXG5cclxuXHQvLyA5NjBweCBhbmQgYWJvdmVcclxuXHRAaW5jbHVkZSBkZXZpY2UtbWQge1xyXG5cdFx0QGluY2x1ZGUgZmxleC13cmFwKG5vd3JhcCk7XHJcblxyXG4gICAgICAgIC5ncmlkLWl0ZW0tMSB7XHJcbiAgICAgICAgICAgIEBpbmNsdWRlIGwtZ3JpZC0xMi1jb2x1bW5zLTM7XHJcbiAgICAgICAgfVxyXG5cclxuICAgICAgICAuZ3JpZC1pdGVtLTIge1xyXG4gICAgICAgICAgICBAaW5jbHVkZSBsLWdyaWQtMTItY29sdW1ucy05O1xyXG4gICAgICAgIH1cclxuXHR9XHJcbn1cclxuXHJcbi5sLWdyaWQtYm94ZXMge1xyXG4gICAgQGV4dGVuZCAlY2xlYXJmaXg7XHJcblxyXG4gICAgLmdyaWQtaXRlbS0xIHsgIEBpbmNsdWRlIGwtZ3JpZC0xMi1jb2x1bW5zLTEyO31cclxuXHJcbiAgICAvLyA3NjhweCBhbmQgYWJvdmVcclxuICAgIEBpbmNsdWRlIGRldmljZS1zbSB7XHJcbiAgICAgICAgQGluY2x1ZGUgZmxleC1kaXNwbGF5KGZsZXgpO1xyXG5cclxuICAgICAgICAuZ3JpZC1pdGVtLTEge1xyXG4gICAgICAgICAgICB3aWR0aDozMy4zMzMzMzM0JTtcclxuICAgICAgICB9XHJcbiAgICB9XHJcblxyXG4gICAgQGluY2x1ZGUgZGV2aWNlLWxnIHtcclxuICAgICAgICBAaW5jbHVkZSBmbGV4LXdyYXAobm93cmFwKTtcclxuXHJcbiAgICAgICAgLmdyaWQtaXRlbS0xIHtcclxuICAgICAgICAgICAgd2lkdGg6MzMuMzMzMzMzNCU7XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG59XHJcblxyXG4ubC1ncmlkLWZvb3RlciB7XHJcbiAgICBAZXh0ZW5kICVjbGVhcmZpeDtcclxuXHJcbiAgICAuZ3JpZC1pdGVtLTEge0BpbmNsdWRlIGwtZ3JpZC0xMi1jb2x1bW5zLTEyO31cclxuXHJcbiAgICAvLyA3NjhweCBhbmQgYWJvdmVcclxuICAgIEBpbmNsdWRlIGRldmljZS1zbSB7XHJcbiAgICAgICAgQGluY2x1ZGUgZmxleC1kaXNwbGF5KGZsZXgpO1xyXG5cclxuXHJcbiAgICB9XHJcblxyXG4gICAgQGluY2x1ZGUgZGV2aWNlLXNtIHtcclxuICAgICAgICBAaW5jbHVkZSBmbGV4LXdyYXAod3JhcCk7XHJcblxyXG4gICAgICAgIC5ncmlkLWl0ZW0tMSB7XHJcbiAgICAgICAgICAgIEBpbmNsdWRlIGwtZ3JpZC0xMi1jb2x1bW5zLTY7XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG5cclxuICAgIEBpbmNsdWRlIGRldmljZS1sZyB7XHJcbiAgICAgICAgQGluY2x1ZGUgZmxleC13cmFwKG5vd3JhcCk7XHJcblxyXG4gICAgICAgIC5ncmlkLWl0ZW0tMSB7XHJcbiAgICAgICAgICAgIEBpbmNsdWRlIGwtZ3JpZC0xMi1jb2x1bW5zLTM7XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG59XHJcblxyXG4vLyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXHJcbiAgIC8vIFN0cmF0ZWdpYyBwcmlvcml0aWVzIHRhYnMgY29udGVudCBncmlkXHJcbi8vIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cclxuXHJcbi5sLWdyaWQtcHJpb3JpdHkge1xyXG5cdEBleHRlbmQgJWNsZWFyZml4O1xyXG5cclxuXHQuZ3JpZC1pdGVtLTEge1xyXG4gICAgICAgIGZvbnQtZmFtaWx5OiAkZm9udC1zZWNvbmRhcnk7XHJcbiAgICAgICAgZm9udC1zaXplOiByZW0oNDYpO1xyXG4gICAgICAgIGxpbmUtaGVpZ2h0OiAoNDQgLyA0Nik7XHJcbiAgICAgICAgQGluY2x1ZGUgbC1ncmlkLTEyLWNvbHVtbnMtMTI7XHJcbiAgICB9XHJcblx0LmdyaWQtaXRlbS0yIHtAaW5jbHVkZSBsLWdyaWQtMTItY29sdW1ucy0xMjt9XHJcblx0LmdyaWQtaXRlbS0zIHtAaW5jbHVkZSBsLWdyaWQtMTItY29sdW1ucy0xMjt9XHJcblx0LmdyaWQtaXRlbS00IHtAaW5jbHVkZSBsLWdyaWQtMTItY29sdW1ucy0xMjt9XHJcblxyXG5cclxuICAgIEBpbmNsdWRlIGRldmljZS1tZCB7XHJcbiAgICAgICAgQGluY2x1ZGUgZmxleC1kaXNwbGF5KGZsZXgpO1xyXG5cclxuXHJcbiAgICAgICAgLmdyaWQtaXRlbS0xIHtcclxuICAgICAgICAgICAgQGluY2x1ZGUgbC1ncmlkLTEyLWNvbHVtbnMtMztcclxuICAgICAgICB9XHJcblxyXG4gICAgICAgIC5ncmlkLWl0ZW0tMiB7XHJcbiAgICAgICAgICAgIEBpbmNsdWRlIGwtZ3JpZC0xMi1jb2x1bW5zLTc7XHJcbiAgICAgICAgfVxyXG5cclxuICAgICAgICAuZ3JpZC1pdGVtLTMge1xyXG4gICAgICAgICAgICBAaW5jbHVkZSBsLWdyaWQtMTItY29sdW1ucy0yO1xyXG4gICAgICAgIH1cclxuXHJcbiAgICAgICAgLmdyaWQtaXRlbS00IHtcclxuICAgICAgICAgICAgQGluY2x1ZGUgbC1ncmlkLTEyLWNvbHVtbnMtOTtcclxuICAgICAgICB9XHJcbiAgICB9XHJcbiAgICBAaW5jbHVkZSBkZXZpY2UtbGcge1xyXG4gICAgICAgIEBpbmNsdWRlIGZsZXgtZGlzcGxheShmbGV4KTtcclxuXHJcbiAgICAgICAgLmdyaWQtaXRlbS0xIHtcclxuICAgICAgICAgICAgbWFyZ2luLWxlZnQ6IGNhbGMoMTAwJSAvIDEyICsgMTVweCk7XHJcbiAgICAgICAgICAgIEBpbmNsdWRlIGwtZ3JpZC0xMi1jb2x1bW5zLTI7XHJcbiAgICAgICAgfVxyXG5cclxuICAgICAgICAuZ3JpZC1pdGVtLTIge1xyXG4gICAgICAgICAgICBAaW5jbHVkZSBsLWdyaWQtMTItY29sdW1ucy03O1xyXG4gICAgICAgIH1cclxuXHJcbiAgICAgICAgLmdyaWQtaXRlbS0zIHtcclxuICAgICAgICAgICAgQGluY2x1ZGUgbC1ncmlkLTEyLWNvbHVtbnMtMjtcclxuICAgICAgICB9XHJcblxyXG4gICAgICAgIC5ncmlkLWl0ZW0tNCB7XHJcbiAgICAgICAgICAgIEBpbmNsdWRlIGwtZ3JpZC0xMi1jb2x1bW5zLTg7XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG5cclxufVxyXG5cclxuLy8gLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxyXG4vLyBTdHJhdGVnaWMgcHJpb3JpdGllcyBoZWFkZXIgY29udGVudCBncmlkXHJcbi8vIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cclxuLmwtZ3JpZC1wcmlvcml0aWVzLWhlYWRlciB7XHJcbiAgICBAZXh0ZW5kICVjbGVhcmZpeDtcclxuXHJcbiAgICAuZ3JpZC1pdGVtLTEge1xyXG4gICAgICAgIEBpbmNsdWRlIGwtZ3JpZC0xMi1jb2x1bW5zLTEyO1xyXG4gICAgfVxyXG5cclxuICAgIC8vIDc2OHB4IGFuZCBhYm92ZVxyXG4gICAgQGluY2x1ZGUgZGV2aWNlLXNtIHtcclxuICAgICAgICBAaW5jbHVkZSBmbGV4LWRpc3BsYXkoZmxleCk7XHJcblxyXG5cclxuICAgIH1cclxuXHJcbiAgICBAaW5jbHVkZSBkZXZpY2UtbGcge1xyXG4gICAgICAgIEBpbmNsdWRlIGZsZXgtd3JhcChub3dyYXApO1xyXG5cclxuICAgICAgICAuZ3JpZC1pdGVtLTEge1xyXG4gICAgICAgICAgICBtYXJnaW4tbGVmdDogY2FsYygxMDAlIC8gMTIgKyAxNXB4KTtcclxuICAgICAgICAgICAgQGluY2x1ZGUgbC1ncmlkLTEyLWNvbHVtbnMtMTA7XHJcbiAgICAgICAgfVxyXG5cclxuXHJcbiAgICB9XHJcbn1cclxuXHJcbi8vIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cclxuLy8gU3RyYXRlZ2ljIHByaW9yaXRpZXMgZXh0ZW5kZWQgdGFicyBjb250ZW50IGdyaWRcclxuLy8gLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxyXG4ubC1ncmlkLXByaW9yaXR5LWRvd24ge1xyXG4gICAgQGV4dGVuZCAlY2xlYXJmaXg7XHJcblxyXG4gICAgLmdyaWQtaXRlbS0xIHtAaW5jbHVkZSBsLWdyaWQtMTItY29sdW1ucy0xMjt9XHJcbiAgICAuZ3JpZC1pdGVtLTIge0BpbmNsdWRlIGwtZ3JpZC0xMi1jb2x1bW5zLTEyO31cclxuICAgIEBpbmNsdWRlIGZsZXgtd3JhcCh3cmFwKTtcclxuXHJcbiAgICAvLyA3NjhweCBhbmQgYWJvdmVcclxuICAgIEBpbmNsdWRlIGRldmljZS1zbSB7XHJcbiAgICAgICAgQGluY2x1ZGUgZmxleC1kaXNwbGF5KGZsZXgpO1xyXG5cclxuXHJcbiAgICB9XHJcblxyXG4gICAgLy8gOTYwcHggYW5kIGFib3ZlXHJcbiAgICBAaW5jbHVkZSBkZXZpY2UtbWQge1xyXG4gICAgICAgIEBpbmNsdWRlIGZsZXgtd3JhcChub3dyYXApO1xyXG5cclxuICAgICAgICAuZ3JpZC1pdGVtLTEge1xyXG4gICAgICAgICAgICBAaW5jbHVkZSBsLWdyaWQtMTItY29sdW1ucy0zO1xyXG4gICAgICAgIH1cclxuXHJcbiAgICAgICAgLmdyaWQtaXRlbS0yIHtcclxuICAgICAgICAgICAgQGluY2x1ZGUgbC1ncmlkLTEyLWNvbHVtbnMtODtcclxuICAgICAgICB9XHJcblxyXG5cclxuICAgIH1cclxufVxyXG5cclxuXHJcbi8vIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cclxuLy8gQ2VvIGludHJvZHVjdGlvbiBjb250ZW50IGdyaWRcclxuLy8gLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxyXG5cclxuLmwtZ3JpZC1jZW8taW50cm8ge1xyXG4gICAgQGV4dGVuZCAlY2xlYXJmaXg7XHJcblxyXG4gICAgLmdyaWQtaXRlbS0xIHtAaW5jbHVkZSBsLWdyaWQtMTItY29sdW1ucy0xMjt9XHJcblxyXG5cclxuXHJcbiAgICAvLyA5NjBweCBhbmQgYWJvdmVcclxuICAgIEBpbmNsdWRlIGRldmljZS1tZCB7XHJcbiAgICAgICAgQGluY2x1ZGUgZmxleC13cmFwKG5vd3JhcCk7XHJcblxyXG4gICAgICAgIC5ncmlkLWl0ZW0tMSB7XHJcbiAgICAgICAgICAgIG1hcmdpbi1sZWZ0OiBjYWxjKCgxMDAlIC8gMTIpICogMSArIDE1cHgpO1xyXG4gICAgICAgICAgICBAaW5jbHVkZSBsLWdyaWQtMTItY29sdW1ucy0xMDtcclxuICAgICAgICB9XHJcblxyXG4gICAgfVxyXG59XHJcblxyXG4vLyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXHJcbi8vIENvdW50IGNvbnRlbnQgZ3JpZFxyXG4vLyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXHJcblxyXG4ubC1ncmlkLWNvdW50IHtcclxuICAgIEBleHRlbmQgJWNsZWFyZml4O1xyXG5cclxuICAgIC5ncmlkLWl0ZW0tMSB7IEBpbmNsdWRlIGwtZ3JpZC0xMi1jb2x1bW5zLTEyO31cclxuICAgIC5ncmlkLWl0ZW0tMnsgQGluY2x1ZGUgbC1ncmlkLTEyLWNvbHVtbnMtMTI7fVxyXG5cclxuICAgIC8vIDc2OHB4IGFuZCBhYm92ZVxyXG4gICAgQGluY2x1ZGUgZGV2aWNlLXNtIHtcclxuICAgICAgICBAaW5jbHVkZSBmbGV4LWRpc3BsYXkoZmxleCk7XHJcbiAgICAgICAgLmdyaWQtaXRlbS0xIHtcclxuICAgICAgICAgICAgQGluY2x1ZGUgbC1ncmlkLTEyLWNvbHVtbnMtMTI7XHJcbiAgICAgICAgfVxyXG5cclxuICAgIH1cclxuXHJcbiAgICAvLyA5NjBweCBhbmQgYWJvdmVcclxuICAgIEBpbmNsdWRlIGRldmljZS1tZCB7XHJcbiAgICAgICAgQGluY2x1ZGUgZmxleC13cmFwKG5vd3JhcCk7XHJcblxyXG4gICAgICAgIC5ncmlkLWl0ZW0tMSB7XHJcbiAgICAgICAgICAgIEBpbmNsdWRlIGwtZ3JpZC0xMi1jb2x1bW5zLTQ7XHJcbiAgICAgICAgfVxyXG5cclxuICAgIH1cclxufVxyXG5cclxuLy8gLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxyXG4vLyBTdHJhdGVneSBpbnRyb2R1Y3Rpb24gZ3JpZFxyXG4vLyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXHJcblxyXG4ubC1ncmlkLXN0cmF0ZWd5LWludHJvIHtcclxuICAgIEBleHRlbmQgJWNsZWFyZml4O1xyXG5cclxuICAgIC5ncmlkLWl0ZW0tMSB7IEBpbmNsdWRlIGwtZ3JpZC0xMi1jb2x1bW5zLTEyO31cclxuXHJcbiAgICAvLyA5NjBweCBhbmQgYWJvdmVcclxuICAgIEBpbmNsdWRlIGRldmljZS1tZCB7XHJcbiAgICAgICAgQGluY2x1ZGUgZmxleC13cmFwKG5vd3JhcCk7XHJcblxyXG4gICAgICAgIC5ncmlkLWl0ZW0tMSB7XHJcbiAgICAgICAgICAgIG1hcmdpbi1sZWZ0OiBjYWxjKDEwMCUgLyAxMiArIDE1cHgpO1xyXG4gICAgICAgICAgICBAaW5jbHVkZSBsLWdyaWQtMTItY29sdW1ucy0xMDtcclxuICAgICAgICB9XHJcblxyXG4gICAgfVxyXG59XHJcblxyXG5cclxuLy8gLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxyXG4vLyBQcmluY2lwbGVzIGludHJvZHVjdGlvbiBncmlkXHJcbi8vIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cclxuXHJcbi5sLWdyaWQtcHJpbmNpcGxlcy1pbnRybyB7XHJcbiAgICBAZXh0ZW5kICVjbGVhcmZpeDtcclxuXHJcbiAgICAuZ3JpZC1pdGVtLTEgeyBAaW5jbHVkZSBsLWdyaWQtMTItY29sdW1ucy0xMjt9XHJcbiAgICAuZ3JpZC1pdGVtLTIgeyBAaW5jbHVkZSBsLWdyaWQtMTItY29sdW1ucy0xMjt9XHJcblxyXG4gICAgLy8gNzY4cHggYW5kIGFib3ZlXHJcbiAgICBAaW5jbHVkZSBkZXZpY2Utc20ge1xyXG4gICAgICAgIEBpbmNsdWRlIGZsZXgtZGlzcGxheShmbGV4KTtcclxuXHJcblxyXG4gICAgfVxyXG5cclxuXHJcbiAgICBAaW5jbHVkZSBkZXZpY2UtbWQge1xyXG4gICAgICAgIEBpbmNsdWRlIGZsZXgtd3JhcChub3dyYXApO1xyXG5cclxuXHJcbiAgICAgICAgLmdyaWQtaXRlbS0yIHtcclxuICAgICAgICAgICAgQGluY2x1ZGUgbC1ncmlkLTEyLWNvbHVtbnMtNDtcclxuICAgICAgICB9XHJcblxyXG4gICAgfVxyXG59XHJcblxyXG4vLyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXHJcbi8vIFN0YW5kYXJkIGhlYWRlciBncmlkXHJcbi8vIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cclxuXHJcbi5sLWdyaWQtc3RhbmRhcmQtaGVhZGVyIHtcclxuICAgIEBleHRlbmQgJWNsZWFyZml4O1xyXG5cclxuICAgIC5ncmlkLWl0ZW0tMSB7XHJcblxyXG4gICAgfVxyXG5cclxuICAgIC8vIDc2OHB4IGFuZCBhYm92ZVxyXG4gICAgQGluY2x1ZGUgZGV2aWNlLXNtIHtcclxuICAgICAgICBAaW5jbHVkZSBmbGV4LWRpc3BsYXkoZmxleCk7XHJcblxyXG5cclxuICAgIH1cclxuXHJcbiAgICAvLyA5NjBweCBhbmQgYWJvdmVcclxuICAgIEBpbmNsdWRlIGRldmljZS1tZCB7XHJcbiAgICAgICAgQGluY2x1ZGUgZmxleC13cmFwKG5vd3JhcCk7XHJcblxyXG5cclxuICAgICAgICAuZ3JpZC1pdGVtLTEge1xyXG4gICAgICAgICAgICBtYXJnaW4tbGVmdDogY2FsYygxMDAlIC8gMTIgKyAxNXB4KTtcclxuICAgICAgICAgICAgQGluY2x1ZGUgbC1ncmlkLTEyLWNvbHVtbnMtOTtcclxuICAgICAgICB9XHJcblxyXG4gICAgfVxyXG59XHJcblxyXG4vLyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXHJcbi8vIFN0YW5kYXJkIHRleHQgdW5kZXIgZ3JpZFxyXG4vLyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXHJcbi5sLWdyaWQtc3RhbmRhcmQtdW5kZXItdGhyZWUge1xyXG4gICAgQGV4dGVuZCAlY2xlYXJmaXg7XHJcbiAgICBAaW5jbHVkZSBmbGV4LWRpc3BsYXkoZmxleCk7XHJcbiAgICBAaW5jbHVkZSBmbGV4LXdyYXAod3JhcCk7XHJcbiAgICAuZ3JpZC1pdGVtLTQge1xyXG4gICAgICAgIEBpbmNsdWRlIGwtZ3JpZC0xMi1jb2x1bW5zLTEyO1xyXG4gICAgfVxyXG4gICAgQGluY2x1ZGUgZGV2aWNlLWxnIHtcclxuICAgICAgICBAaW5jbHVkZSBmbGV4LXdyYXAod3JhcCk7XHJcblxyXG4gICAgICAgIC5ncmlkLWl0ZW0tNCB7XHJcbiAgICAgICAgICAgIEBpbmNsdWRlIGwtZ3JpZC0xMi1jb2x1bW5zLTQ7XHJcbiAgICAgICAgfVxyXG5cclxuICAgIH1cclxufVxyXG4ubC1ncmlkLXN0YW5kYXJkLXVuZGVyIHtcclxuICAgIEBleHRlbmQgJWNsZWFyZml4O1xyXG5cclxuICAgIC5ncmlkLWl0ZW0tMSB7XHJcbiAgICAgICAgQGluY2x1ZGUgbC1ncmlkLTEyLWNvbHVtbnMtMTI7XHJcbiAgICB9XHJcbiAgICAuZ3JpZC1pdGVtLTIge1xyXG4gICAgICAgIEBpbmNsdWRlIGwtZ3JpZC0xMi1jb2x1bW5zLTEyO1xyXG4gICAgfUBpbmNsdWRlIGZsZXgtd3JhcCh3cmFwKTtcclxuXHJcbiAgICAuZ3JpZC1pdGVtLWJveCB7XHJcbiAgICAgICAgQGluY2x1ZGUgbC1ncmlkLTEyLWNvbHVtbnMtMTI7XHJcbiAgICB9XHJcbiAgICAuZ3JpZC1pdGVtLWJveC1leHRlbmRlZCB7XHJcbiAgICAgICAgQGluY2x1ZGUgbC1ncmlkLTEyLWNvbHVtbnMtMTI7XHJcbiAgICB9XHJcblxyXG4gICAgLy8gNzY4cHggYW5kIGFib3ZlXHJcbiAgICBAaW5jbHVkZSBkZXZpY2Utc20ge1xyXG4gICAgICAgIEBpbmNsdWRlIGZsZXgtZGlzcGxheShmbGV4KTtcclxuXHJcblxyXG4gICAgfVxyXG5cclxuICAgIC8vIDk2MHB4IGFuZCBhYm92ZVxyXG4gICAgQGluY2x1ZGUgZGV2aWNlLW1kIHtcclxuICAgICAgICBAaW5jbHVkZSBmbGV4LXdyYXAod3JhcCk7XHJcblxyXG5cclxuICAgICAgICAuZ3JpZC1pdGVtLTEge1xyXG4gICAgICAgICAgICBtYXJnaW4tbGVmdDogY2FsYygxMDAlIC8gMTIgKyAxNXB4KTtcclxuICAgICAgICAgICAgQGluY2x1ZGUgbC1ncmlkLTEyLWNvbHVtbnMtNztcclxuICAgICAgICB9XHJcbiAgICAgICAgLmdyaWQtaXRlbS0yIHtcclxuICAgICAgICAgICAgQGluY2x1ZGUgbC1ncmlkLTEyLWNvbHVtbnMtMztcclxuICAgICAgICB9XHJcbiAgICAgICAgLmdyaWQtaXRlbS0zIHtcclxuICAgICAgICAgICAgbWFyZ2luLWxlZnQ6IGNhbGMoMTAwJSAvIDEyICsgMTVweCk7XHJcbiAgICAgICAgICAgIEBpbmNsdWRlIGwtZ3JpZC0xMi1jb2x1bW5zLTEwO1xyXG4gICAgICAgIH1cclxuXHJcbiAgICB9XHJcbiAgICBAaW5jbHVkZSBkZXZpY2UtbGcge1xyXG4gICAgICAgIEBpbmNsdWRlIGZsZXgtd3JhcCh3cmFwKTtcclxuICAgICAgICAuZ3JpZC1pdGVtLWJveCB7XHJcbiAgICAgICAgICAgIEBpbmNsdWRlIGwtZ3JpZC0xMi1jb2x1bW5zLTM7XHJcbiAgICAgICAgfVxyXG4gICAgICAgIC5ncmlkLWl0ZW0tYm94LWV4dGVuZGVkIHtcclxuICAgICAgICAgICAgQGluY2x1ZGUgbC1ncmlkLTEyLWNvbHVtbnMtNDtcclxuICAgICAgICB9XHJcbiAgICAgICAgLmdyaWQtaXRlbS1ib3gsIC5ncmlkLWl0ZW0tYm94LWV4dGVuZGVkIHtcclxuICAgICAgICAgICAgJi5maXJzdCB7XHJcbiAgICAgICAgICAgICAgICBtYXJnaW4tbGVmdDogY2FsYygxMDAlIC8gMTIgKyAxNXB4KTtcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuICAgIH1cclxufVxyXG5cclxuICAgIC8vIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cclxuICAgIC8vIFN0YW5kYXJkIHRleHQgdW5kZXIgZ3JpZFxyXG4gICAgLy8gLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxyXG5cclxuLmwtZ3JpZC1wYXJ0bmVycyB7XHJcbiAgICBAZXh0ZW5kICVjbGVhcmZpeDtcclxuICAgIEBpbmNsdWRlIGZsZXgtd3JhcCh3cmFwKTtcclxuICAgIC5ncmlkLWl0ZW0tMSB7XHJcbiAgICAgICAgQGluY2x1ZGUgbC1ncmlkLTEyLWNvbHVtbnMtMTI7XHJcbiAgICB9XHJcbiAgICAuZ3JpZC1pdGVtLTIge1xyXG4gICAgICAgIEBpbmNsdWRlIGwtZ3JpZC0xMi1jb2x1bW5zLTEyO1xyXG4gICAgfVxyXG4gICAgLmdyaWQtaXRlbS0zIHtcclxuICAgICAgICBAaW5jbHVkZSBsLWdyaWQtMTItY29sdW1ucy0xMjtcclxuICAgIH1cclxuXHJcblxyXG4gICAgLy8gOTYwcHggYW5kIGFib3ZlXHJcbiAgICBAaW5jbHVkZSBkZXZpY2UtbGcge1xyXG4gICAgICAgIEBpbmNsdWRlIGZsZXgtZGlzcGxheShmbGV4KTtcclxuXHJcblxyXG4gICAgICAgIC5ncmlkLWl0ZW0tMSB7XHJcbiAgICAgICAgICAgIG1hcmdpbi1sZWZ0OiBjYWxjKDEwMCUgLyAxMiArIDE1cHgpO1xyXG4gICAgICAgICAgICBAaW5jbHVkZSBsLWdyaWQtMTItY29sdW1ucy0xMDtcclxuICAgICAgICB9XHJcbiAgICAgICAgLmdyaWQtaXRlbS0yIHtcclxuICAgICAgICAgICAgbWFyZ2luLWxlZnQ6IGNhbGMoMTAwJSAvIDEyICsgMTVweCk7XHJcbiAgICAgICAgICAgIEBpbmNsdWRlIGwtZ3JpZC0xMi1jb2x1bW5zLTU7XHJcbiAgICAgICAgfVxyXG4gICAgICAgIC5ncmlkLWl0ZW0tMyB7XHJcbiAgICAgICAgICAgIEBpbmNsdWRlIGwtZ3JpZC0xMi1jb2x1bW5zLTU7XHJcbiAgICAgICAgfVxyXG5cclxuICAgIH1cclxufVxyXG5cclxuLy8gLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxyXG4gICAvLyBEZWJ1ZyAxMiBjb2x1bW4gZ3JpZFxyXG4vLyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXHJcblxyXG4uZGVidWcge1xyXG5cdHBvc2l0aW9uOiBhYnNvbHV0ZTtcclxuXHR3aWR0aDogMTAwJTtcclxuXHRoZWlnaHQ6IDEwMDAwcHg7XHJcblx0ei1pbmRleDogLTEwMDtcclxuXHJcblx0LmNvbHVtbiB7XHJcblx0XHRiYWNrZ3JvdW5kLWNvbG9yOiByZ2JhKDI1NSwgMCwgMCwgMC4xKTtcclxuICAgICAgICBoZWlnaHQ6MTAwMDBweDtcclxuICAgICAgICBAaW5jbHVkZSBsLWdyaWQtMTItY29sdW1ucy0xO1xyXG4gICAgICAgIGZsb2F0OmxlZnQ7XHJcbiAgICAgICAgbWFyZ2luOjAgMTVweDtcclxuXHR9XHJcbn1cclxuXHJcblxyXG4iLCIvLyA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XHJcbi8vIGxheW91dC9faGVhZGVyLnNjc3NcclxuLy8gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxyXG5cclxuLy8gLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxyXG4vLyBCYXNpYyBTZXR1cFxyXG4vLyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXHJcblxyXG5oZWFkZXIge1xyXG4gICAgcG9zaXRpb246Zml4ZWQ7XHJcbiAgICBsZWZ0OjA7XHJcbiAgICB0b3A6MDtcclxuICAgIHJpZ2h0OjA7XHJcbiAgICBiYWNrZ3JvdW5kOndoaXRlO1xyXG4gICAgei1pbmRleDo5MDtcclxuXHRcclxuICAgICY6YWZ0ZXIge1xyXG4gICAgICAgIGNvbnRlbnQ6ICcnO1xyXG4gICAgICAgIGhlaWdodDogM3B4O1xyXG4gICAgICAgIGJhY2tncm91bmQ6ICNjYWNhY2E7XHJcbiAgICAgICAgbGVmdDogMDtcclxuICAgICAgICByaWdodDogMDtcclxuICAgICAgICB3aWR0aDogMDtcclxuICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XHJcbiAgICAgICAgYm90dG9tOiAwO1xyXG4gICAgICAgIGRpc3BsYXk6IGJsb2NrO1xyXG4gICAgICAgIG1hcmdpbjogMCBhdXRvO1xyXG4gICAgfVxyXG5cdFxyXG5cdC5ib3gtbG9nbyB7XHJcblx0XHRwb3NpdGlvbjpyZWxhdGl2ZTtcclxuXHRcdGRpc3BsYXk6IGlubGluZS1ibG9jaztcclxuXHRcdHdpZHRoOiAyOTdweDtcclxuXHRcdGhlaWdodDogMTc1cHg7XHJcblx0XHRib3JkZXI6IG5vbmU7XHJcblx0XHRib3JkZXItYm90dG9tLWxlZnQtcmFkaXVzOiA3cHg7XHJcblx0XHRib3JkZXItYm90dG9tLXJpZ2h0LXJhZGl1czogN3B4O1xyXG5cdFx0YmFja2dyb3VuZC1jb2xvcjogJGNvbG9yLWJyYW5kLXByaW1hcnktMjtcclxuXHRcdGZsb2F0OmxlZnQ7XHJcblx0XHR0cmFuc2l0aW9uLWR1cmF0aW9uOiAwLjJzO1xyXG5cdH1cclxuXHJcblx0LnNpdGUtbG9nbyB7XHJcblx0XHRAZXh0ZW5kICVjZW50ZXItYmxvY2s7XHJcblx0XHR3aWR0aDogMjEzcHg7XHJcblx0XHRwb3NpdGlvbjogYWJzb2x1dGU7XHJcblx0XHRsZWZ0OiAwO1xyXG5cdFx0cmlnaHQ6IDA7XHJcblx0XHR0b3A6IDA7XHJcblx0XHRib3R0b206IC0zcHg7XHJcblx0XHRtYXJnaW46IGF1dG87XHJcblx0XHR0cmFuc2l0aW9uLWR1cmF0aW9uOiAwLjJzO1xyXG5cdH1cclxuXHJcbiAgICBAaW5jbHVkZSBkZXZpY2UtbGcge1xyXG4gICAgICAgICYuc2Nyb2xsZWQge1xyXG4gICAgICAgICAgICAmOmFmdGVyIHtcclxuICAgICAgICAgICAgICAgIHdpZHRoOjEwMCU7XHJcbiAgICAgICAgICAgICAgICB0cmFuc2l0aW9uOjEuNXMgd2lkdGggY3ViaWMtYmV6aWVyKDAsIDAsIDAuMiwgMSk7O1xyXG4gICAgICAgICAgICB9XHJcblx0XHRcdFxyXG5cdFx0XHQuc2l0ZS1sb2dvIHtcclxuXHRcdFx0XHR3aWR0aDoxNjVweDtcclxuXHRcdFx0XHRib3R0b206MDtcclxuXHRcdFx0fVxyXG5cdFx0XHQuYm94LWxvZ28ge1xyXG5cdFx0XHRcdHdpZHRoOiAyNDBweDtcclxuXHRcdFx0XHRoZWlnaHQ6IDEyMHB4O1xyXG5cdFx0XHR9XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG59XHJcblxyXG5AaW5jbHVkZSBkZXZpY2UtbGctb25seSAge1xyXG4gICAgaGVhZGVyICB7XHJcbiAgICAgICAgLnNpdGUtbG9nbyB7XHJcbiAgICAgICAgICAgIHdpZHRoOjE5MHB4O1xyXG4gICAgICAgICAgICBib3R0b206MDtcclxuICAgICAgICB9XHJcbiAgICAgICAgLmJveC1sb2dvIHtcclxuICAgICAgICAgICAgd2lkdGg6IDI3NHB4O1xyXG4gICAgICAgICAgICBoZWlnaHQ6IDE0NXB4O1xyXG4gICAgICAgIH1cclxuICAgIH1cclxuXHJcbn1cclxuXHJcbkBpbmNsdWRlIGRldmljZS1tZC1vbmx5ICB7XHJcbiAgICBoZWFkZXIgIHtcclxuICAgICAgICAuc2l0ZS1sb2dvIHtcclxuICAgICAgICAgICAgd2lkdGg6MTgwcHg7XHJcbiAgICAgICAgICAgIGJvdHRvbTowO1xyXG4gICAgICAgIH1cclxuICAgICAgICAuYm94LWxvZ28ge1xyXG4gICAgICAgICAgICB3aWR0aDogMjYycHg7XHJcbiAgICAgICAgICAgIGhlaWdodDogMTM0cHg7XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG59XHJcblxyXG5AaW5jbHVkZSBkZXZpY2Utc20tb25seSAge1xyXG4gICAgaGVhZGVyICB7XHJcbiAgICAgICAgLnNpdGUtbG9nbyB7XHJcbiAgICAgICAgICAgIHdpZHRoOjE2NXB4O1xyXG4gICAgICAgICAgICBib3R0b206MDtcclxuICAgICAgICB9XHJcbiAgICAgICAgLmJveC1sb2dvIHtcclxuICAgICAgICAgICAgd2lkdGg6IDI0MHB4O1xyXG4gICAgICAgICAgICBoZWlnaHQ6IDEyMHB4O1xyXG4gICAgICAgIH1cclxuICAgIH1cclxufVxyXG5cclxuQGluY2x1ZGUgZGV2aWNlLXhzbS1vbmx5ICB7XHJcbiAgICBoZWFkZXIgIHtcclxuICAgICAgICAuc2l0ZS1sb2dvIHtcclxuICAgICAgICAgICAgd2lkdGg6MTQ1cHg7XHJcbiAgICAgICAgICAgIGJvdHRvbTowO1xyXG4gICAgICAgIH1cclxuICAgICAgICAuYm94LWxvZ28ge1xyXG4gICAgICAgICAgICB3aWR0aDogMjIwcHg7XHJcbiAgICAgICAgICAgIGhlaWdodDogMTEwcHg7XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG59XHJcblxyXG5AaW5jbHVkZSBkZXZpY2UteHNtLWRvd24ge1xyXG4gICAgaGVhZGVyICB7XHJcbiAgICAgICAgLnNpdGUtbG9nbyB7XHJcbiAgICAgICAgICAgIHdpZHRoOjEyOHB4O1xyXG4gICAgICAgICAgICBib3R0b206MDtcclxuICAgICAgICB9XHJcbiAgICAgICAgLmJveC1sb2dvIHtcclxuICAgICAgICAgICAgd2lkdGg6IDE5MHB4O1xyXG4gICAgICAgICAgICBoZWlnaHQ6IDEwMHB4O1xyXG4gICAgICAgIH1cclxuICAgIH1cclxufVxyXG5cclxuQG1lZGlhIChtYXgtd2lkdGg6JGRldmljZS1sZy13aWR0aCkge1xyXG4gICAgaGVhZGVyIHtcclxuICAgICAgICBwb3NpdGlvbjphYnNvbHV0ZTtcclxuICAgIH1cclxufVxyXG4iLCIvLyA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XHJcbiAgIC8vIGxheW91dC9fbWFpbi5zY3NzXHJcbi8vID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cclxuXHJcbi8vIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cclxuICAgLy8gQmFzaWMgU2V0dXBcclxuLy8gLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxyXG5cclxuLm1haW4ge1xyXG4gICAgcGFkZGluZy10b3A6MTc1cHg7XHJcbn1cclxuXHJcbkBpbmNsdWRlIGRldmljZS1sZy1vbmx5ICB7XHJcbiAgLm1haW4ge1xyXG4gICAgICBwYWRkaW5nLXRvcDoxNDVweDtcclxuICB9XHJcbiAgICBodG1sIHtcclxuICAgICAgICBmb250LXNpemU6IDE0cHg7XHJcbiAgICB9XHJcblxyXG59XHJcblxyXG5AaW5jbHVkZSBkZXZpY2UtbWQtb25seSAge1xyXG4gICAgLm1haW4ge1xyXG4gICAgICAgIHBhZGRpbmctdG9wOjEzNHB4O1xyXG4gICAgfVxyXG4gICAgaHRtbCB7XHJcbiAgICAgICAgZm9udC1zaXplOiAxMnB4O1xyXG4gICAgfVxyXG59XHJcbkBpbmNsdWRlIGRldmljZS1zbS1vbmx5ICB7XHJcbiAgICAubWFpbiB7XHJcbiAgICAgICAgcGFkZGluZy10b3A6MTIwcHg7XHJcbiAgICB9XHJcbiAgICBodG1sIHtcclxuICAgICAgICBmb250LXNpemU6IDEwcHg7XHJcbiAgICB9XHJcbn1cclxuXHJcbkBpbmNsdWRlIGRldmljZS14c20tb25seSAge1xyXG4gICAgLm1haW4ge1xyXG4gICAgICAgIHBhZGRpbmctdG9wOjExMHB4O1xyXG4gICAgfVxyXG4gICAgaHRtbCB7XHJcbiAgICAgICAgZm9udC1zaXplOiA4cHg7XHJcbiAgICB9XHJcbn1cclxuXHJcbkBpbmNsdWRlIGRldmljZS14c20tZG93biB7XHJcbiAgICAubWFpbiB7XHJcbiAgICAgICAgcGFkZGluZy10b3A6MTAwcHg7XHJcbiAgICB9XHJcbiAgICBodG1sIHtcclxuICAgICAgICBmb250LXNpemU6IDZweDtcclxuICAgIH1cclxufSIsIi8vID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cclxuICAgLy8gbGF5b3V0L19mb290ZXIuc2Nzc1xyXG4vLyA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XHJcblxyXG4vLyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXHJcbiAgIC8vIEJhc2ljIFNldHVwXHJcbi8vIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cclxuXHJcbiBmb290ZXIjbWFpbi1mb290ZXIge1xyXG4gICAgIGJhY2tncm91bmQ6ICRjb2xvci1icmFuZC1wcmltYXJ5LTE7XHJcbiAgICAgcGFkZGluZzogMy4zNWVtIDAgMmVtO1xyXG4gICAgIGNvbG9yOndoaXRlO1xyXG4gICAgIGEsYTpob3ZlcixhOmZvY3VzLGE6dmlzaXRlZCB7XHJcbiAgICAgICAgIGNvbG9yOmluaGVyaXQ7XHJcbiAgICAgICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcclxuICAgICB9XHJcbiAgICAgdWwge1xyXG4gICAgICAgICBtYXJnaW46MDtcclxuICAgICAgICAgcGFkZGluZzowO1xyXG4gICAgIH1cclxuICAgICBpbWcuZm9vdGVyLWxvZ28ge1xyXG4gICAgICAgICBtYXJnaW46MDtcclxuICAgICAgICAgbWF4LXdpZHRoOjIzNHB4O1xyXG4gICAgIH1cclxuICAgICBwIHtcclxuICAgICAgICAgY29sb3I6d2hpdGU7XHJcbiAgICAgICAgIGZvbnQtc2l6ZToxNnB4O1xyXG4gICAgICAgICBmb250LWZhbWlseTogJGZvbnQtcHJpbWFyeTtcclxuICAgICAgICAgbWFyZ2luOiAyZW0gMCAwO1xyXG4gICAgICAgICBiIHtcclxuICAgICAgICAgICAgIGRpc3BsYXk6YmxvY2s7XHJcbiAgICAgICAgICAgICAtbW96LWZvbnQtZmVhdHVyZS1zZXR0aW5nczogXCJsbnVtXCI7XHJcbiAgICAgICAgICAgICAtd2Via2l0LWZvbnQtZmVhdHVyZS1zZXR0aW5nczogXCJsbnVtXCI7XHJcbiAgICAgICAgICAgICBmb250LWZlYXR1cmUtc2V0dGluZ3M6IFwibG51bVwiO1xyXG4gICAgICAgICAgICAgbWFyZ2luLXRvcDoxcHg7XHJcbiAgICAgICAgIH1cclxuICAgICB9XHJcbiAgICAgLnNtIHtcclxuICAgICAgICAgbWFyZ2luLXRvcDogMS44NmVtO1xyXG4gICAgICAgICBsaSB7XHJcbiAgICAgICAgICAgICBtYXJnaW46IDAgMS41ZW0gMCAwO1xyXG4gICAgICAgICAgICAgJi5mYiB7XHJcbiAgICAgICAgICAgICAgICAgbWFyZ2luLXJpZ2h0OiAxLjg0ZW07XHJcbiAgICAgICAgICAgICAgICAgbWFyZ2luLWxlZnQ6IDAuMWVtO1xyXG4gICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAgJi50dyB7XHJcbiAgICAgICAgICAgICAgICAgbWFyZ2luLXRvcDogMC4xNGVtO1xyXG4gICAgICAgICAgICAgICAgIG1hcmdpbi1yaWdodDogMS4yNWVtO1xyXG4gICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAgJi55dCB7XHJcbiAgICAgICAgICAgICAgICAgbWFyZ2luLXRvcDogMC4wNWVtO1xyXG4gICAgICAgICAgICAgfVxyXG4gICAgICAgICB9XHJcbiAgICAgfVxyXG4gICAgIC5mb290ZXItbmF2IHtcclxuICAgICAgICAgbWFyZ2luOiAxLjRlbSAwIDA7XHJcblxyXG5cclxuICAgICAgICAgbGkge1xyXG4gICAgICAgICAgICAgbGlzdC1zdHlsZS10eXBlOiBub25lO1xyXG4gICAgICAgICAgICAgY29sb3I6d2hpdGU7XHJcbiAgICAgICAgICAgICB0ZXh0LXRyYW5zZm9ybTp1cHBlcmNhc2U7XHJcbiAgICAgICAgICAgICBmb250LWZhbWlseTokZm9udC1wcmltYXJ5O1xyXG4gICAgICAgICAgICAgZm9udC1zaXplOjI0cHg7XHJcbiAgICAgICAgICAgICBtYXJnaW46IDAgMCAxLjY3ZW07XHJcbiAgICAgICAgICAgICBwYWRkaW5nOjA7XHJcbiAgICAgICAgICAgICBsaW5lLWhlaWdodDogMTtcclxuICAgICAgICAgICAgICY6bGFzdC1jaGlsZCB7XHJcbiAgICAgICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTowO1xyXG4gICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAgdWwgPiBsaSB7XHJcbiAgICAgICAgICAgICAgICAgbWFyZ2luOiAxLjA4ZW0gMCAxLjA4ZW0gMC44MmVtO1xyXG4gICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAgYTpob3ZlciB7XHJcbiAgICAgICAgICAgICAgICAgY29sb3I6I2IzYjNiMztcclxuICAgICAgICAgICAgIH1cclxuICAgICAgICAgfVxyXG4gICAgICAgICAuaWNvbi1kb3dubG9hZCB7XHJcbiAgICAgICAgICAgICB3aWR0aDogMzJweDtcclxuICAgICAgICAgICAgIGhlaWdodDogMjRweDtcclxuICAgICAgICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcclxuICAgICAgICAgICAgIG1hcmdpbi1sZWZ0OiAxM3B4O1xyXG4gICAgICAgICB9XHJcbiAgICAgfVxyXG4gICAgICNib3Qge1xyXG4gICAgICAgICBmb250LWZhbWlseTokZm9udC1wcmltYXJ5O1xyXG4gICAgICAgICBjb2xvcjp3aGl0ZTtcclxuICAgICAgICAgZm9udC1zaXplOjE2cHg7XHJcbiAgICAgICAgIG1hcmdpbi10b3A6IDYuNGVtO1xyXG4gICAgICAgICB1bCB7XHJcbiAgICAgICAgICAgICBwYWRkaW5nOjA7XHJcbiAgICAgICAgICAgICBtYXJnaW46MDtcclxuICAgICAgICAgICAgIGRpc3BsYXk6aW5saW5lLWJsb2NrO1xyXG4gICAgICAgICAgICAgbGkge1xyXG4gICAgICAgICAgICAgICAgIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XHJcbiAgICAgICAgICAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xyXG4gICAgICAgICAgICAgICAgIG1hcmdpbi1sZWZ0OiA5cHg7XHJcbiAgICAgICAgICAgICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xyXG4gICAgICAgICAgICAgICAgIHBhZGRpbmc6IDAgMCAwIDE1cHg7XHJcbiAgICAgICAgICAgICAgICAgJjpiZWZvcmUge1xyXG4gICAgICAgICAgICAgICAgICAgICBjb250ZW50OicnO1xyXG4gICAgICAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kOndoaXRlO1xyXG4gICAgICAgICAgICAgICAgICAgICB3aWR0aDoycHg7XHJcbiAgICAgICAgICAgICAgICAgICAgIGhlaWdodDoxNHB4O1xyXG4gICAgICAgICAgICAgICAgICAgICBwb3NpdGlvbjphYnNvbHV0ZTtcclxuICAgICAgICAgICAgICAgICAgICAgdG9wOjA7XHJcbiAgICAgICAgICAgICAgICAgICAgIGxlZnQ6MDtcclxuICAgICAgICAgICAgICAgICAgICAgYm90dG9tOjA7XHJcbiAgICAgICAgICAgICAgICAgICAgIG1hcmdpbjphdXRvO1xyXG4gICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICAgICBhOmhvdmVyIHtcclxuICAgICAgICAgICAgICAgICAgICAgY29sb3I6I2IzYjNiMztcclxuICAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICB9XHJcbiAgICAgICAgIH1cclxuICAgICAgICAgcCB7XHJcbiAgICAgICAgICAgICBmb250LXNpemU6aW5oZXJpdDtcclxuICAgICAgICAgfVxyXG4gICAgIH1cclxuICAgICAjYmFjay10by10b3Age1xyXG4gICAgICAgICBwb3NpdGlvbjpmaXhlZDtcclxuICAgICAgICAgei1pbmRleDogMTAwO1xyXG4gICAgICAgICByaWdodDogMy4xMjVyZW07XHJcbiAgICAgICAgIGJvdHRvbTogMy4xMjVyZW07XHJcbiAgICAgICAgIHdpZHRoOjgwcHg7XHJcbiAgICAgICAgIGhlaWdodDo4MHB4O1xyXG4gICAgICAgICBib3JkZXItcmFkaXVzOjEwMCU7XHJcbiAgICAgICAgIG9wYWNpdHk6MDtcclxuICAgICAgICAgdHJhbnNpdGlvbjowLjJzIG9wYWNpdHk7XHJcbiAgICAgICAgICYuYWN0aXZlIHtcclxuICAgICAgICAgICAgIG9wYWNpdHk6MTtcclxuICAgICAgICAgICAgIHRyYW5zaXRpb246MC4zcyBvcGFjaXR5IDAuNXM7XHJcbiAgICAgICAgIH1cclxuICAgICAgICAgaW1nIHtcclxuICAgICAgICAgICAgIGJvcmRlci1yYWRpdXM6MTAwJTtcclxuICAgICAgICAgICAgIG1heC13aWR0aDoxMDAlO1xyXG4gICAgICAgICAgICAgYm94LXNoYWRvdzogMCAwIDAgMnB4IHJnYmEoNDUsIDQ1LCA0NSwgMC4xKTtcclxuICAgICAgICAgICAgIHRyYW5zaXRpb246MC4xNXMgYm94LXNoYWRvdztcclxuICAgICAgICAgICAgICY6aG92ZXIge1xyXG4gICAgICAgICAgICAgICAgIGJveC1zaGFkb3c6MCAwIDAgNnB4IHJnYmEoNDUsIDQ1LCA0NSwgMC4xKTtcclxuICAgICAgICAgICAgICAgICB0cmFuc2l0aW9uOjAuNHMgYm94LXNoYWRvdztcclxuICAgICAgICAgICAgICAgICBjdXJzb3I6cG9pbnRlcjtcclxuICAgICAgICAgICAgIH1cclxuICAgICAgICAgfVxyXG5cclxuICAgICB9XHJcbiB9XHJcblxyXG5AbWVkaWEgKG1heC13aWR0aDoxNzAwcHgpIGFuZCAobWluLXdpZHRoOjE0MjJweCkge1xyXG4gICAgZm9vdGVyI21haW4tZm9vdGVyIHtcclxuICAgICAgICBmb250LXNpemU6MTZweDtcclxuICAgIH1cclxuICAgIGZvb3RlciNtYWluLWZvb3RlciAuZm9vdGVyLW5hdiBsaSB7XHJcbiAgICAgICAgZm9udC1zaXplOjE5cHg7XHJcbiAgICB9XHJcbiAgICBmb290ZXIjbWFpbi1mb290ZXIgLmZvb3Rlci1uYXYgLmljb24tZG93bmxvYWQge1xyXG4gICAgICAgIHdpZHRoOiAyMnB4O1xyXG4gICAgICAgIGhlaWdodDogMThweDtcclxuICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XHJcbiAgICAgICAgbWFyZ2luLWxlZnQ6IDlweDtcclxuICAgIH1cclxufVxyXG5cclxuQGluY2x1ZGUgZGV2aWNlLWxnLW9ubHkgIHtcclxuICAgIGZvb3RlciNtYWluLWZvb3RlciB7XHJcbiAgICAgICAgZm9udC1zaXplOjE0cHg7XHJcbiAgICB9XHJcbiAgICBmb290ZXIjbWFpbi1mb290ZXIgLmZvb3Rlci1uYXYgbGkge1xyXG4gICAgICAgIGZvbnQtc2l6ZToxNXB4O1xyXG4gICAgfVxyXG4gICAgZm9vdGVyI21haW4tZm9vdGVyIC5mb290ZXItbmF2IC5pY29uLWRvd25sb2FkIHtcclxuICAgICAgICB3aWR0aDogMjBweDtcclxuICAgICAgICBoZWlnaHQ6IDE2cHg7XHJcbiAgICAgICAgbWFyZ2luLWxlZnQ6IDZweDtcclxuICAgIH1cclxuICAgIGZvb3RlciNtYWluLWZvb3RlciBwIHtcclxuICAgICAgICBmb250LXNpemU6MTVweDtcclxuICAgIH1cclxuICAgIGZvb3RlciNtYWluLWZvb3RlciBpbWcuZm9vdGVyLWxvZ28ge1xyXG4gICAgICAgIG1heC13aWR0aDoyMTVweDtcclxuICAgIH1cclxuICAgIGZvb3RlciNtYWluLWZvb3RlciAjYm90IHtcclxuICAgICAgICBmb250LXNpemU6MTRweDtcclxuICAgIH1cclxufVxyXG5cclxuQGluY2x1ZGUgZGV2aWNlLW1kLW9ubHkgIHtcclxuXHJcbiAgICBmb290ZXIjbWFpbi1mb290ZXIgLmZvb3Rlci1uYXYgbGkge1xyXG4gICAgICAgIGZvbnQtc2l6ZToxOHB4O1xyXG4gICAgfVxyXG4gICAgZm9vdGVyI21haW4tZm9vdGVyIC5mb290ZXItbmF2IC5pY29uLWRvd25sb2FkIHtcclxuICAgICAgICB3aWR0aDogMjBweDtcclxuICAgICAgICBoZWlnaHQ6IDE4cHg7XHJcbiAgICAgICAgbWFyZ2luLWxlZnQ6IDFweDtcclxuICAgICAgICBtYXJnaW4tYm90dG9tOiAtM3B4O1xyXG4gICAgfVxyXG4gICAgZm9vdGVyI21haW4tZm9vdGVyIHAge1xyXG4gICAgICAgIGZvbnQtc2l6ZToxNnB4O1xyXG4gICAgfVxyXG4gICAgZm9vdGVyI21haW4tZm9vdGVyIGltZy5mb290ZXItbG9nbyB7XHJcbiAgICAgICAgbWF4LXdpZHRoOjIxNXB4O1xyXG4gICAgfVxyXG4gICAgZm9vdGVyI21haW4tZm9vdGVyICNib3Qge1xyXG4gICAgICAgIGZvbnQtc2l6ZToxNnB4O1xyXG4gICAgfVxyXG59XHJcbkBpbmNsdWRlIGRldmljZS1zbS1vbmx5ICB7XHJcbiAgICBmb290ZXIjbWFpbi1mb290ZXIgLmZvb3Rlci1uYXYgbGkge1xyXG4gICAgICAgIGZvbnQtc2l6ZToxNnB4O1xyXG4gICAgfVxyXG5cclxuICAgIGZvb3RlciNtYWluLWZvb3RlciBwIHtcclxuICAgICAgICBmb250LXNpemU6MTVweDtcclxuICAgIH1cclxuICAgIGZvb3RlciNtYWluLWZvb3RlciBpbWcuZm9vdGVyLWxvZ28ge1xyXG4gICAgICAgIG1heC13aWR0aDoxODVweDtcclxuICAgIH1cclxuICAgIGZvb3RlciNtYWluLWZvb3RlciAjYm90IHtcclxuICAgICAgICBmb250LXNpemU6MTRweDtcclxuICAgIH1cclxufVxyXG5cclxuQGluY2x1ZGUgZGV2aWNlLXhzbS1vbmx5ICB7XHJcbiAgICBmb290ZXIjbWFpbi1mb290ZXIgLmZvb3Rlci1uYXYgbGkge1xyXG4gICAgICAgIGZvbnQtc2l6ZToxN3B4O1xyXG4gICAgfVxyXG4gICAgZm9vdGVyI21haW4tZm9vdGVyIC5mb290ZXItbmF2IC5pY29uLWRvd25sb2FkIHtcclxuXHJcbiAgICB9XHJcbiAgICBmb290ZXIjbWFpbi1mb290ZXIgcCB7XHJcbiAgICAgICAgZm9udC1zaXplOjE2cHg7XHJcbiAgICB9XHJcbiAgICBmb290ZXIjbWFpbi1mb290ZXIgaW1nLmZvb3Rlci1sb2dvIHtcclxuICAgICAgICBtYXgtd2lkdGg6MjAwcHg7XHJcbiAgICB9XHJcbiAgICBmb290ZXIjbWFpbi1mb290ZXIgI2JvdCB7XHJcbiAgICAgICAgZm9udC1zaXplOjE0cHg7XHJcbiAgICB9XHJcbiAgICBmb290ZXIjbWFpbi1mb290ZXIgLmdyaWQtaXRlbSB7XHJcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogM2VtO1xyXG4gICAgICAgICY6bGFzdC1jaGlsZCB7XHJcbiAgICAgICAgICAgIG1hcmdpbi1ib3R0b206MDtcclxuICAgICAgICB9XHJcbiAgICB9XHJcbn1cclxuXHJcbkBpbmNsdWRlIGRldmljZS14c20tZG93biB7XHJcbiAgICBmb290ZXIjbWFpbi1mb290ZXIgLmZvb3Rlci1uYXYgbGkge1xyXG4gICAgICAgIGZvbnQtc2l6ZToxNnB4O1xyXG4gICAgfVxyXG5cclxuICAgIGZvb3RlciNtYWluLWZvb3RlciBwIHtcclxuICAgICAgICBmb250LXNpemU6MTVweDtcclxuICAgIH1cclxuICAgIGZvb3RlciNtYWluLWZvb3RlciBpbWcuZm9vdGVyLWxvZ28ge1xyXG4gICAgICAgIG1heC13aWR0aDoxODVweDtcclxuICAgIH1cclxuICAgIGZvb3RlciNtYWluLWZvb3RlciAjYm90IHtcclxuICAgICAgICBmb250LXNpemU6MTJweDtcclxuICAgIH1cclxuICAgIGZvb3RlciNtYWluLWZvb3RlciAuZ3JpZC1pdGVtIHtcclxuICAgICAgICBtYXJnaW4tYm90dG9tOiAyLjVlbTtcclxuICAgICAgICAmOmxhc3QtY2hpbGQge1xyXG4gICAgICAgICAgICBtYXJnaW4tYm90dG9tOjA7XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG4gICAgZm9vdGVyI21haW4tZm9vdGVyICNib3QgdWwge1xyXG4gICAgICAgIGRpc3BsYXk6YmxvY2s7XHJcbiAgICAgICAgbGkge1xyXG4gICAgICAgICAgICBkaXNwbGF5OmJsb2NrO1xyXG4gICAgICAgICAgICBwYWRkaW5nOjA7XHJcbiAgICAgICAgICAgIG1hcmdpbjo4cHggMCAwO1xyXG4gICAgICAgICAgICAmOmJlZm9yZSB7XHJcbiAgICAgICAgICAgICAgICBkaXNwbGF5Om5vbmU7XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICB9XHJcbiAgICB9XHJcbn1cclxuXHJcbkBtZWRpYSAobWF4LXdpZHRoOiRkZXZpY2UtbGctd2lkdGggKSB7XHJcbiAgICBmb290ZXIjbWFpbi1mb290ZXIge1xyXG4gICAgICAgIHRleHQtYWxpZ246Y2VudGVyO1xyXG4gICAgfVxyXG4gICAgZm9vdGVyI21haW4tZm9vdGVyIC5zbSB1bCB7XHJcbiAgICAgICAgZGlzcGxheTppbmxpbmUtYmxvY2s7XHJcbiAgICAgICAgbGkge1xyXG4gICAgICAgICAgICBtYXJnaW4tcmlnaHQ6MWVtIWltcG9ydGFudDtcclxuICAgICAgICB9XHJcbiAgICB9XHJcbiAgICBmb290ZXIjbWFpbi1mb290ZXIgdWwgbGk6bGFzdC1jaGlsZCB7XHJcbiAgICAgICAgbWFyZ2luLXJpZ2h0OjAhaW1wb3J0YW50O1xyXG4gICAgfVxyXG4gICAgZm9vdGVyI21haW4tZm9vdGVyIC5mb290ZXItbmF2IC5pY29uLWRvd25sb2FkIHtcclxuICAgICAgICBwb3NpdGlvbjpzdGF0aWM7XHJcbiAgICAgICAgd2lkdGg6IDIwcHg7XHJcbiAgICAgICAgaGVpZ2h0OiAxOHB4O1xyXG4gICAgICAgIG1hcmdpbi1sZWZ0OiAxcHg7XHJcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogLTNweDtcclxuICAgIH1cclxuICAgIGZvb3RlciNtYWluLWZvb3RlciAuZm9vdGVyLW5hdiBsaSB1bCA+IGxpIHtcclxuICAgICAgICBtYXJnaW4tbGVmdDowO1xyXG4gICAgfVxyXG4gICAgZm9vdGVyI21haW4tZm9vdGVyICNiYWNrLXRvLXRvcCB7XHJcbiAgICAgICAgd2lkdGg6NjBweDtcclxuICAgICAgICBoZWlnaHQ6NjBweDtcclxuICAgIH1cclxuXHJcbn1cclxuXHJcbkBtZWRpYSAobWF4LXdpZHRoOiRkZXZpY2Utc20td2lkdGgpIHtcclxuICAgIGZvb3RlciNtYWluLWZvb3RlciAjYmFjay10by10b3Age1xyXG4gICAgICAgIHdpZHRoOjUwcHg7XHJcbiAgICAgICAgaGVpZ2h0OjUwcHg7XHJcbiAgICB9XHJcbn0iLCIvLyA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XHJcbiAgIC8vIGNvbXBvbmVudHMvX2J1dHRvbnMuc2Nzc1xyXG4vLyA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XHJcblxyXG4vLyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXHJcbiAgIC8vIEJhc2ljIFNldHVwXHJcbi8vIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cclxuXHJcbi5idG4sXHJcbmEuYnRuIHsgXHJcblx0ZGlzcGxheTogaW5saW5lLWJsb2NrO1xyXG4gICAgcGFkZGluZzogMTZweCAxOXB4O1xyXG5cdGhlaWdodDogYXV0bztcclxuXHR2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlO1xyXG5cdHdpZHRoOiAxMDAlO1xyXG5cdGJvcmRlcjogMnB4IHNvbGlkICRidXR0b24tYm9yZGVyO1xyXG5cdGJhY2tncm91bmQtY29sb3I6ICRidXR0b24tYmc7XHJcblx0YmFja2dyb3VuZC1pbWFnZTogbm9uZTtcclxuXHR0ZXh0LWFsaWduOiBjZW50ZXI7XHJcblx0dGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcclxuXHR0ZXh0LWRlY29yYXRpb246IG5vbmU7XHJcblx0Zm9udDoge1xyXG5cdFx0c2l6ZTogJGZvbnQtc2l6ZS1iYXNlO1xyXG5cdFx0bGluZS1oZWlnaHQ6ICRsaW5lLWhlaWdodC1iYXNlO1xyXG5cdFx0ZmFtaWx5OiAkZm9udC1wcmltYXJ5O1xyXG5cdFx0d2VpZ2h0OiBib2xkO1xyXG5cdH1cclxuXHRjb2xvcjogJHRleHQtY29sb3I7XHJcblx0d2hpdGUtc3BhY2U6IG5vLXdyYXA7XHJcblx0Y3Vyc29yOiBwb2ludGVyO1xyXG5cdHRvdWNoLWFjdGlvbjogbWFuaXB1bGF0aW9uO1xyXG5cdHVzZXItc2VsZWN0OiBub25lO1xyXG5cdEBpbmNsdWRlIHRyYW5zaXRpb24oYWxsKTtcclxuXHJcblx0QGluY2x1ZGUgZGV2aWNlLXhzbSB7XHJcblx0XHR3aWR0aDogYXV0bztcclxuXHR9XHJcblxyXG5cdCY6aG92ZXIsXHJcblx0JjphY3RpdmUge1xyXG5cdFx0YmFja2dyb3VuZC1jb2xvcjogJGJ1dHRvbi1iZy1ob3ZlcjtcclxuXHRcdGNvbG9yOiAkY29sb3ItZ3JleS02O1xyXG5cdH1cclxuXHJcblx0Ji5idG4tLWRpc2FibGVkIHtcclxuXHRcdGJvcmRlci1jb2xvcjogJGJ1dHRvbi1ib3JkZXItZGlzYWJsZWQ7XHJcblx0XHRiYWNrZ3JvdW5kLWNvbG9yOiAkYnV0dG9uLWJnLWRpc2FibGVkO1xyXG5cdFx0Y29sb3I6ICRjb2xvci1ncmV5LTQ7XHJcblxyXG5cdFx0Jjpob3ZlcixcclxuXHRcdCY6YWN0aXZlIHtcclxuXHRcdFx0Ym9yZGVyLWNvbG9yOiAkYnV0dG9uLWJvcmRlci1kaXNhYmxlZC1ob3ZlcjtcclxuXHRcdFx0YmFja2dyb3VuZC1jb2xvcjogJGJ1dHRvbi1iZy1kaXNhYmxlZC1ob3ZlcjtcclxuXHRcdH1cclxuXHR9XHJcblxyXG5cdCYuYnRuLS1wcmlvcml0eS0xIHtcclxuXHRcdGJvcmRlci1jb2xvcjogJGNvbG9yLWJyYW5kLXByaW1hcnktMi1kYXJrO1xyXG5cdFx0YmFja2dyb3VuZC1jb2xvcjogJGNvbG9yLWJyYW5kLXByaW1hcnktMi1kYXJrO1xyXG5cdFx0Y29sb3I6ICRjb2xvci1yZXZlcnNlZDtcclxuXHJcblx0XHQmOmhvdmVyLFxyXG5cdFx0JjphY3RpdmUge1xyXG5cdFx0XHRib3JkZXItY29sb3I6ICRjb2xvci1icmFuZC1wcmltYXJ5LTI7XHJcblx0XHRcdGJhY2tncm91bmQtY29sb3I6ICRjb2xvci1icmFuZC1wcmltYXJ5LTI7XHJcblx0XHR9XHJcblx0fVxyXG5cclxuXHQmLmJ0bi0tcHJpb3JpdHktMiB7XHJcblx0XHRib3JkZXItY29sb3I6ICRjb2xvci1icmFuZC1zZWNvbmRhcnktMS1kYXJrO1xyXG5cdFx0YmFja2dyb3VuZC1jb2xvcjogJGNvbG9yLWJyYW5kLXNlY29uZGFyeS0xLWRhcms7XHJcblx0XHRjb2xvcjogJGNvbG9yLXJldmVyc2VkO1xyXG5cclxuXHRcdCY6aG92ZXIsXHJcblx0XHQmOmFjdGl2ZSB7XHJcblx0XHRcdGJvcmRlci1jb2xvcjogJGNvbG9yLWJyYW5kLXNlY29uZGFyeS0xO1xyXG5cdFx0XHRiYWNrZ3JvdW5kLWNvbG9yOiAkY29sb3ItYnJhbmQtc2Vjb25kYXJ5LTE7XHJcblx0XHR9XHJcblx0fVxyXG5cclxuXHQmLmJ0bi0tcHJpb3JpdHktMyB7XHJcblx0XHRib3JkZXItY29sb3I6ICRjb2xvci1icmFuZC1zZWNvbmRhcnktMi1kYXJrO1xyXG5cdFx0YmFja2dyb3VuZC1jb2xvcjogJGNvbG9yLWJyYW5kLXNlY29uZGFyeS0yLWRhcms7XHJcblx0XHRjb2xvcjogJGNvbG9yLXJldmVyc2VkO1xyXG5cclxuXHRcdCY6aG92ZXIsXHJcblx0XHQmOmFjdGl2ZSB7XHJcblx0XHRcdGJvcmRlci1jb2xvcjogJGNvbG9yLWJyYW5kLXNlY29uZGFyeS0yO1xyXG5cdFx0XHRiYWNrZ3JvdW5kLWNvbG9yOiAkY29sb3ItYnJhbmQtc2Vjb25kYXJ5LTI7XHJcblx0XHR9XHJcblx0fVxyXG5cclxuXHQmLmJ0bi0tcHJpb3JpdHktNCB7XHJcblx0XHRib3JkZXItY29sb3I6ICRjb2xvci1icmFuZC1zZWNvbmRhcnktMy1kYXJrO1xyXG5cdFx0YmFja2dyb3VuZC1jb2xvcjogJGNvbG9yLWJyYW5kLXNlY29uZGFyeS0zLWRhcms7XHJcblx0XHRjb2xvcjogJGNvbG9yLXJldmVyc2VkO1xyXG5cclxuXHRcdCY6aG92ZXIsXHJcblx0XHQmOmFjdGl2ZSB7XHJcblx0XHRcdGJvcmRlci1jb2xvcjogJGNvbG9yLWJyYW5kLXNlY29uZGFyeS0zO1xyXG5cdFx0XHRiYWNrZ3JvdW5kLWNvbG9yOiAkY29sb3ItYnJhbmQtc2Vjb25kYXJ5LTM7XHJcblx0XHR9XHJcblx0fVxyXG5cclxuXHQmLmJ0bi0tcHJpb3JpdHktNSB7XHJcblx0XHRib3JkZXItY29sb3I6ICRjb2xvci1icmFuZC1zZWNvbmRhcnktNC1kYXJrO1xyXG5cdFx0YmFja2dyb3VuZC1jb2xvcjogJGNvbG9yLWJyYW5kLXNlY29uZGFyeS00LWRhcms7XHJcblx0XHRjb2xvcjogJGNvbG9yLXJldmVyc2VkO1xyXG5cclxuXHRcdCY6aG92ZXIsXHJcblx0XHQmOmFjdGl2ZSB7XHJcblx0XHRcdGJvcmRlci1jb2xvcjogJGNvbG9yLWJyYW5kLXNlY29uZGFyeS00O1xyXG5cdFx0XHRiYWNrZ3JvdW5kLWNvbG9yOiAkY29sb3ItYnJhbmQtc2Vjb25kYXJ5LTQ7XHJcblx0XHR9XHJcblx0fVxyXG4gICAgJi5kZWZhdWx0LWludmVyc2Uge1xyXG4gICAgICAgIGJvcmRlci1jb2xvcjokY29sb3ItcmV2ZXJzZWQ7XHJcbiAgICAgICAgY29sb3I6JGNvbG9yLXJldmVyc2VkO1xyXG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6dHJhbnNwYXJlbnQ7XHJcbiAgICAgICAgJjpob3ZlcixcclxuICAgICAgICAmOmFjdGl2ZSB7XHJcbiAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6IHJnYmEoJGNvbG9yLXJldmVyc2VkLCAwLjI1KTtcclxuICAgICAgICB9XHJcbiAgICB9XHJcblxyXG4gICAgYTp2aXNpdGVkLCBhOmhvdmVyLCBhOmxpbmsge1xyXG4gICAgICAgIGNvbG9yOmluaGVyaXQ7XHJcbiAgICAgICAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xyXG4gICAgfVxyXG5cdC8vICYuYnRuLS1uZWdhdGl2ZSB7XHJcblx0Ly8gXHRib3JkZXItY29sb3I6ICRidXR0b24tYm9yZGVyLW5lZ2F0aXZlO1xyXG5cdC8vIFx0YmFja2dyb3VuZC1jb2xvcjogJGJ1dHRvbi1iZy1uZWdhdGl2ZTtcclxuXHQvLyBcdGNvbG9yOiAkY29sb3ItcmV2ZXJzZWQ7XHJcblxyXG5cdC8vIFx0Jjpob3ZlcixcclxuXHQvLyBcdCY6YWN0aXZlIHtcclxuXHQvLyBcdFx0Ym9yZGVyLWNvbG9yOiAkYnV0dG9uLWJvcmRlci1uZWdhdGl2ZS1ob3ZlcjtcclxuXHQvLyBcdFx0YmFja2dyb3VuZC1jb2xvcjogJGJ1dHRvbi1iZy1uZWdhdGl2ZS1ob3ZlcjtcclxuXHQvLyBcdH1cclxuXHQvLyB9XHJcblxyXG5cdC8vICYuYnRuLS1saW5rIHtcclxuXHQvLyBcdGJvcmRlci1jb2xvcjogdHJhbnNwYXJlbnQ7XHJcblx0Ly8gXHRiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcclxuXHQvLyBcdGNvbG9yOiAkbGluay1jb2xvcjtcclxuXHJcblx0Ly8gXHQmOmhvdmVyLFxyXG5cdC8vIFx0JjphY3RpdmUge1xyXG5cdC8vIFx0XHRjb2xvcjogJGxpbmstaG92ZXItY29sb3I7XHJcblx0Ly8gXHRcdHRleHQtZGVjb3JhdGlvbjogdW5kZXJsaW5lO1xyXG5cdC8vIFx0fVxyXG5cdC8vIH1cclxufVxyXG5cclxuLy8gLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxyXG4gICAvLyBMYXJnZVxyXG4vLyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXHJcblxyXG4uYnRuLS1sZyxcclxuYS5idG4tLWxnIHtcclxuXHRmb250LXNpemU6ICRmb250LXNpemUtbGFyZ2U7XHJcbn1cclxuXHJcbi8vIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cclxuICAgLy8gU21hbGxcclxuLy8gLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSBcclxuXHJcbi5idG4tLXNtLFxyXG5hLmJ0bi0tc20ge1xyXG5cdHBhZGRpbmc6ICgkbGluZS1oZWlnaHQtY29tcHV0ZWQgLyAxLjc1KSAoJGxpbmUtaGVpZ2h0LWNvbXB1dGVkIC8gMS4yNSk7XHJcblx0Zm9udC1zaXplOiAkZm9udC1zaXplLXNtYWxsO1xyXG59XHJcblxyXG4vLyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXHJcbiAgIC8vIEV4dHJhIFNtYWxsXHJcbi8vIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0gXHJcblxyXG4uYnRuLS14cyxcclxuYS5idG4tLXhzIHtcclxuXHRwYWRkaW5nOiAoJGxpbmUtaGVpZ2h0LWNvbXB1dGVkIC8gMi41KSAoJGxpbmUtaGVpZ2h0LWNvbXB1dGVkIC8gMS43NSk7XHJcblx0Zm9udC1zaXplOiAkZm9udC1zaXplLXNtYWxsO1xyXG59XHJcblxyXG4vLyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXHJcbiAgIC8vIEljb25zXHJcbi8vIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cclxuXHJcbi8vIERvd25sb2FkXHJcblxyXG4uYnRuLS1kb3dubG9hZCxcclxuYS5idG4tLWRvd25sb2FkIHtcclxuXHJcblx0JjpiZWZvcmUge1xyXG5cdFx0Y29udGVudDogXCJcIjtcclxuXHRcdHBhZGRpbmctbGVmdDogKCRsaW5lLWhlaWdodC1jb21wdXRlZCAqIDEpO1xyXG5cdFx0d2lkdGg6IGF1dG87XHJcblx0XHRoZWlnaHQ6IDFlbTtcclxuXHRcdGJhY2tncm91bmQtcG9zaXRpb246IGxlZnQgM3B4O1xyXG5cdFx0YmFja2dyb3VuZC1yZXBlYXQ6IG5vLXJlcGVhdDtcclxuXHRcdGJhY2tncm91bmQtc2l6ZTogYXV0byAxZW07XHJcblx0XHR0ZXh0LWRlY29yYXRpb246IG5vbmU7XHJcblxyXG5cdFx0QGluY2x1ZGUgZGV2aWNlLXhzbSB7XHJcblx0XHRcdHRleHQtYWxpZ246IGNlbnRyZTtcclxuXHRcdH1cclxuXHR9XHJcblxyXG5cdCY6YWZ0ZXIge1xyXG5cdFx0Y29udGVudDogXCJcIjtcclxuXHRcdHBhZGRpbmctcmlnaHQ6IDA7XHJcblx0XHR3aWR0aDogYXV0bztcclxuXHRcdGhlaWdodDogMDtcclxuXHRcdGJhY2tncm91bmQtaW1hZ2U6IG5vbmU7XHJcblxyXG5cdFx0QGluY2x1ZGUgZGV2aWNlLXhzbSB7XHJcblx0XHRcdHRleHQtYWxpZ246IGNlbnRlcjtcclxuXHRcdH1cclxuXHR9XHJcbn1cclxuXHJcbi5idG4tLWRvd25sb2FkOmJlZm9yZSxcclxuYS5idG4tLWRvd25sb2FkOmJlZm9yZSB7XHJcblx0YmFja2dyb3VuZC1pbWFnZTogdXJsKC4uL2ltYWdlcy9pY29ucy9pY29uLS1hcnJvdy1kb3duLTAxLnN2Zyk7XHJcbn1cclxuLmJ0bi0tZG93bmxvYWQ6aG92ZXI6YmVmb3JlLFxyXG4uYnRuLS1kb3dubG9hZDphY3RpdmU6YmVmb3JlLFxyXG5hLmJ0bi0tZG93bmxvYWQ6aG92ZXI6YmVmb3JlLFxyXG5hLmJ0bi0tZG93bmxvYWQ6YWN0aXZlOmJlZm9yZSB7XHJcblx0YmFja2dyb3VuZC1pbWFnZTogdXJsKC4uL2ltYWdlcy9pY29ucy9pY29uLS1hcnJvdy1kb3duLTAxLnN2Zyk7XHJcbn1cclxuXHJcbi5idG4tLWRpc2FibGVkLmJ0bi0tZG93bmxvYWQ6YmVmb3JlLFxyXG5hLmJ0bi0tZGlzYWJsZWQuYnRuLS1kb3dubG9hZDpiZWZvcmUge1xyXG5cdGJhY2tncm91bmQtaW1hZ2U6IHVybCguLi9pbWFnZXMvaWNvbnMvaWNvbi0tYXJyb3ctZG93bi0wMS0tZGlzYWJsZWQuc3ZnKTtcclxufVxyXG4uYnRuLS1kaXNhYmxlZC5idG4tLWRvd25sb2FkOmhvdmVyOmJlZm9yZSxcclxuLmJ0bi0tZGlzYWJsZWQuYnRuLS1kb3dubG9hZDphY3RpdmU6YmVmb3JlLFxyXG5hLmJ0bi0tZGlzYWJsZWQuYnRuLS1kb3dubG9hZDpob3ZlcjpiZWZvcmUsXHJcbmEuYnRuLS1kaXNhYmxlZC5idG4tLWRvd25sb2FkOmFjdGl2ZTpiZWZvcmUge1xyXG5cdGJhY2tncm91bmQtaW1hZ2U6IHVybCguLi9pbWFnZXMvaWNvbnMvaWNvbi0tYXJyb3ctZG93bi0wMS0tZGlzYWJsZWQuc3ZnKTtcclxufVxyXG5cclxuQGluY2x1ZGUgZGV2aWNlLWxnLW9ubHkgIHtcclxuICAgIC5idG4sIGEuYnRuIHtcclxuICAgICAgICBmb250LXNpemU6MjJweDtcclxuICAgIH1cclxuICAgIC5idG4tLWxnLCBhLmJ0bi0tbGcge1xyXG4gICAgICAgIGZvbnQtc2l6ZToyM3B4O1xyXG4gICAgfVxyXG59XHJcblxyXG5AaW5jbHVkZSBkZXZpY2UtbWQtb25seSAge1xyXG4gICAgLmJ0biwgYS5idG4ge1xyXG4gICAgICAgIGZvbnQtc2l6ZToyMHB4O1xyXG4gICAgfVxyXG4gICAgLmJ0bi0tbGcsIGEuYnRuLS1sZyB7XHJcbiAgICAgICAgZm9udC1zaXplOjIxcHg7XHJcbiAgICB9XHJcbn1cclxuQGluY2x1ZGUgZGV2aWNlLXNtLW9ubHkgIHtcclxuICAgIC5idG4sIGEuYnRuIHtcclxuICAgICAgICBmb250LXNpemU6MThweDtcclxuICAgIH1cclxuICAgIC5idG4tLWxnLCBhLmJ0bi0tbGcge1xyXG4gICAgICAgIGZvbnQtc2l6ZToxOXB4O1xyXG4gICAgfVxyXG5cclxufVxyXG5cclxuQGluY2x1ZGUgZGV2aWNlLXhzbS1vbmx5ICB7XHJcbiAgICAuYnRuLCBhLmJ0biB7XHJcbiAgICAgICAgZm9udC1zaXplOjE2cHg7XHJcbiAgICB9XHJcbiAgICAuYnRuLS1sZywgYS5idG4tLWxnIHtcclxuICAgICAgICBmb250LXNpemU6MTdweDtcclxuICAgIH1cclxuXHJcbn1cclxuQG1lZGlhIChtYXgtd2lkdGg6JGRldmljZS1zbS13aWR0aCkge1xyXG4gICAgLmJ0biwgYS5idG4ge1xyXG4gICAgICAgIHBhZGRpbmc6IDE0cHggMTlweCAxNXB4O1xyXG4gICAgfVxyXG59XHJcblxyXG5AaW5jbHVkZSBkZXZpY2UteHNtLWRvd24ge1xyXG4gICAgLmJ0biwgYS5idG4ge1xyXG4gICAgICAgIGZvbnQtc2l6ZToxNHB4O1xyXG4gICAgICAgIHBhZGRpbmc6IDZweCAxMXB4O1xyXG4gICAgICAgIHdpZHRoOiBhdXRvO1xyXG4gICAgfVxyXG4gICAgLmJ0bi0tbGcsIGEuYnRuLS1sZyB7XHJcbiAgICAgICAgZm9udC1zaXplOjE1cHg7XHJcbiAgICB9XHJcbiAgICAuYnRuLmJ0bi0tbGcge1xyXG4gICAgICAgIHdpZHRoOjEwMCU7XHJcbiAgICB9XHJcbn1cclxuXHJcbiIsIi8vID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cclxuICAgLy8gY29tcG9uZW50cy9fZm9ybXMuc2Nzc1xyXG4vLyA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XHJcblxyXG4vLyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXHJcbiAgIC8vIEJhc2ljIFNldHVwXHJcbi8vIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cclxuXHJcbmZvcm0ge1xyXG5cdGRpc3BsYXk6IGJsb2NrO1xyXG5cclxuXHRkaXYge1xyXG5cdFx0ZGlzcGxheTogYmxvY2s7IFxyXG5cdH1cclxuXHJcblx0LmZvcm0taXRlbSxcclxuXHQuZm9ybS1hY3Rpb25zIHtcclxuXHRcdG1hcmdpbi1ib3R0b206IDJlbTtcclxuXHR9XHJcblxyXG5cdGxhYmVsIHtcclxuXHRcdGRpc3BsYXk6IGlubGluZS1ibG9jaztcclxuXHRcdG1hcmdpbi1ib3R0b206IDAuNWVtO1xyXG5cdFx0bWF4LXdpZHRoOiAxMDAlO1xyXG5cdFx0Zm9udC13ZWlnaHQ6IDcwMDtcclxuXHR9XHJcbn1cclxuXHJcbi8vIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cclxuICAgLy8gSW5wdXRzIGFuZCBUZXh0IEFyZWFcclxuLy8gLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxyXG5cclxuZm9ybSBpbnB1dCxcclxuZm9ybSB0ZXh0YXJlYSB7XHJcblx0cGFkZGluZzogNnB4IDEycHg7XHJcblx0Ym9yZGVyOiAxcHggc29saWQgJGZvcm0tYm9yZGVyO1xyXG5cdGJhY2tncm91bmQtY29sb3I6ICRmb3JtLXRleHRhcmVhLWJnO1xyXG5cdGJhY2tncm91bmQtaW1hZ2U6IG5vbmU7XHJcblx0QGluY2x1ZGUgYm94LXNpemluZygpO1xyXG5cdEBpbmNsdWRlIHRyYW5zaXRpb24gKGJvcmRlci1jb2xvcik7XHJcblx0QGluY2x1ZGUgdHJhbnNpdGlvbiAoYm94LXNoYWRvdyk7XHJcblxyXG5cdCZbdHlwZT1cInRleHRcIl0sXHJcblx0Jlt0eXBlPVwiZW1haWxcIl0sXHJcblx0Jlt0eXBlPVwicGFzc3dvcmRcIl0ge1xyXG5cdFx0ZGlzcGxheTogYmxvY2s7XHJcblx0XHR3aWR0aDogMTAwJTtcclxuXHRcdGZvbnQ6IHtcclxuXHRcdFx0ZmFtaWx5OiAkZm9udC1wcmltYXJ5O1xyXG5cdFx0fVxyXG5cdH1cclxuXHJcblx0Jjpmb2N1cyB7XHJcblx0XHRvdXRsaW5lOiAwO1xyXG5cdFx0Ym9yZGVyLWNvbG9yOiAkZm9ybS1ib3JkZXItZm9jdXM7XHJcblx0XHRAaW5jbHVkZSBzaGFkb3coMHB4LCAwcHgsIDVweCwgJGZvcm0tYm9yZGVyLWZvY3VzKTtcclxuXHR9XHJcbn1cclxuXHJcbmZvcm0gaW5wdXQge1xyXG5cdGhlaWdodDogMi43ZW07XHJcbn1cclxuXHJcbmZvcm0gdGV4dGFyZWEge1xyXG5cdGRpc3BsYXk6IGJsb2NrOyBcclxuXHR3aWR0aDogMTAwJTtcclxufVxyXG5cclxuLy8gQWxlcnRzXHJcblxyXG5mb3JtIGlucHV0LmNoZWNrZWQge1xyXG5cdGJvcmRlci1jb2xvcjogJGNvbG9yLXV0aWxpdHktcG9zaXRpdmU7XHJcbn1cclxuXHJcbmZvcm0gaW5wdXQuZXJyb3Ige1xyXG5cdGJvcmRlci1jb2xvcjogJGNvbG9yLXV0aWxpdHktbmVnYXRpdmU7XHJcbn1cclxuXHJcbmZvcm0gaW5wdXQuY2hlY2tlZCxcclxuZm9ybSBpbnB1dC5lcnJvciB7XHJcblx0YmFja2dyb3VuZC1wb3NpdGlvbjogcmlnaHQgY2VudGVyO1xyXG5cdGJhY2tncm91bmQtcmVwZWF0OiBuby1yZXBlYXQ7XHJcblx0YmFja2dyb3VuZC1zaXplOiAzMHB4IGF1dG87XHJcblx0cGFkZGluZy1yaWdodDogNDBweDtcclxufVxyXG5cclxuZm9ybSBpbnB1dC5jaGVja2VkIHtcclxuXHRiYWNrZ3JvdW5kLWltYWdlOiB1cmwoL2ltYWdlcy9pY29ucy9pY29uLS1jaGVja2VkLTAxLnN2Zyk7XHJcbn1cclxuXHJcbmZvcm0gaW5wdXQuZXJyb3Ige1xyXG5cdGJhY2tncm91bmQtaW1hZ2U6IHVybCgvaW1hZ2VzL2ljb25zL2ljb24tLWNhbmNlbC0wMS5zdmcpO1xyXG59XHJcblxyXG4vLyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXHJcbiAgIC8vIENoZWNrYm94ZXMgYW5kIFJhZGlvIEJ1dHRvbnNcclxuICAgLy8gc2VlOiBodHRwczovL2t5dXN1Zi5jb20vcG9zdC9jb21wbGV0ZWx5LWNzcy1jdXN0b20tY2hlY2tib3gtcmFkaW8tYnV0dG9ucy1hbmQtc2VsZWN0LWJveGVzXHJcbi8vIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cclxuXHJcbmZvcm0gbGFiZWwuY29udHJvbCB7XHJcblx0cG9zaXRpb246IHJlbGF0aXZlO1xyXG5cdGRpc3BsYXk6IGJsb2NrO1xyXG5cdG1hcmdpbi1ib3R0b206IDE1cHg7XHJcblx0cGFkZGluZy1sZWZ0OiAzMHB4O1xyXG5cdGZvbnQtd2VpZ2h0OiA0MDA7XHJcblx0Y3Vyc29yOiBwb2ludGVyO1xyXG5cclxuXHRpbnB1dCB7XHJcblx0XHRwb3NpdGlvbjogYWJzb2x1dGU7XHJcblx0XHR6LWluZGV4OiAtMTtcclxuXHRcdEBpbmNsdWRlIG9wYWNpdHkoMCk7XHJcblx0fVxyXG5cclxuXHQuY29udHJvbF9faW5kaWNhdG9yIHtcclxuXHRcdHBvc2l0aW9uOiBhYnNvbHV0ZTtcclxuXHRcdHRvcDogLTFweDtcclxuXHRcdGxlZnQ6IDA7XHJcblx0XHR3aWR0aDogMjBweDtcclxuXHRcdGhlaWdodDogMjBweDtcclxuXHRcdGJvcmRlcjogMXB4IHNvbGlkICRmb3JtLWJvcmRlcjtcclxuXHRcdGJhY2tncm91bmQ6ICRmb3JtLWlucHV0LWJnO1xyXG5cclxuXHRcdC8qIENoZWNrIG1hcmsgKi9cclxuXHRcdCY6YWZ0ZXIge1xyXG5cdFx0XHRwb3NpdGlvbjogYWJzb2x1dGU7XHJcblx0XHRcdGRpc3BsYXk6IG5vbmU7XHJcblx0XHRcdGNvbnRlbnQ6ICcnO1xyXG5cdFx0fVxyXG5cdH1cclxuXHJcblx0Ji5jb250cm9sLS1yYWRpbyAuY29udHJvbF9faW5kaWNhdG9yIHtcclxuXHRcdEBpbmNsdWRlIHJvdW5kZWQoNTAlKTtcclxuXHR9XHJcblx0XHJcblx0LyogSG92ZXIgYW5kIGZvY3VzIHN0YXRlcyAqL1xyXG5cdCY6aG92ZXIgaW5wdXQgfiAuY29udHJvbF9faW5kaWNhdG9yLFxyXG5cdGlucHV0OmZvY3VzIH4gLmNvbnRyb2xfX2luZGljYXRvciB7XHJcblx0XHRiYWNrZ3JvdW5kOiAkZm9ybS1pbnB1dC1iZy1ob3ZlcjtcclxuXHR9XHJcblxyXG5cdC8qIENoZWNrZWQgc3RhdGUgKi9cclxuXHRpbnB1dDpjaGVja2VkIH4gLmNvbnRyb2xfX2luZGljYXRvciB7XHJcblx0XHRib3JkZXItY29sb3I6ICRmb3JtLWJvcmRlci1jaGVja2VkO1xyXG5cdFx0YmFja2dyb3VuZDogJGZvcm0taW5wdXQtYmctY2hlY2tlZDtcclxuXHR9XHJcblxyXG5cdC8qIEhvdmVyIHN0YXRlIHdoaWxzdCBjaGVja2VkICovXHJcblx0Jjpob3ZlciBpbnB1dDpub3QoW2Rpc2FibGVkXSk6Y2hlY2tlZCB+IC5jb250cm9sX19pbmRpY2F0b3IsXHJcblx0aW5wdXQ6Y2hlY2tlZDpmb2N1cyB+IC5jb250cm9sX19pbmRpY2F0b3Ige1xyXG5cdFx0Ym9yZGVyLWNvbG9yOiAkZm9ybS1ib3JkZXItY2hlY2tlZC1ob3ZlcjtcclxuXHRcdGJhY2tncm91bmQ6ICRmb3JtLWlucHV0LWJnLWNoZWNrZWQtaG92ZXI7XHJcblx0fVxyXG5cclxuXHQvKiBEaXNhYmxlZCBzdGF0ZSAqL1xyXG5cdGlucHV0OmRpc2FibGVkIH4gLmNvbnRyb2xfX2luZGljYXRvciB7XHJcblx0XHRwb2ludGVyLWV2ZW50czogbm9uZTtcclxuXHRcdGJvcmRlci1jb2xvcjogJGZvcm0tYm9yZGVyO1xyXG5cdFx0YmFja2dyb3VuZDogJGZvcm0taW5wdXQtYmc7XHJcblx0XHRAaW5jbHVkZSBvcGFjaXR5KC41KTtcclxuXHR9XHJcblxyXG5cdC8qIFNob3cgY2hlY2sgbWFyayAqL1xyXG5cdGlucHV0OmNoZWNrZWQgfiAuY29udHJvbF9faW5kaWNhdG9yOmFmdGVyIHtcclxuXHRcdGRpc3BsYXk6IGJsb2NrO1xyXG5cdH1cclxuXHJcblx0LyogQ2hlY2tib3ggdGljayAqL1xyXG5cdCYuY29udHJvbC0tY2hlY2tib3ggLmNvbnRyb2xfX2luZGljYXRvcjphZnRlciB7XHJcblx0XHR0b3A6IDRweDtcclxuXHRcdGxlZnQ6IDhweDtcclxuXHRcdHdpZHRoOiAzcHg7XHJcblx0XHRoZWlnaHQ6IDhweDtcclxuXHRcdHRyYW5zZm9ybTogcm90YXRlKDQ1ZGVnKTtcclxuXHRcdGJvcmRlcjogc29saWQgJGZvcm0tdGljaztcclxuXHRcdGJvcmRlci13aWR0aDogMCAycHggMnB4IDA7XHJcblx0fVxyXG5cclxuXHQvKiBEaXNhYmxlZCB0aWNrIGNvbG91ciAqL1xyXG5cdCYuY29udHJvbC0tY2hlY2tib3ggaW5wdXQ6ZGlzYWJsZWQgfiAuY29udHJvbF9faW5kaWNhdG9yOmFmdGVyIHtcclxuXHRcdGJvcmRlci1jb2xvcjogJGZvcm0tdGljay1kaXNhYmxlZDtcclxuXHR9XHJcblx0XHJcblx0LyogUmFkaW8gYnV0dG9uIGlubmVyIGNpcmNsZSAqL1xyXG5cdCYuY29udHJvbC0tcmFkaW8gLmNvbnRyb2xfX2luZGljYXRvcjphZnRlciB7XHJcblx0XHR0b3A6IDZweDtcclxuXHRcdGxlZnQ6IDZweDtcclxuXHRcdHdpZHRoOiA2cHg7XHJcblx0XHRoZWlnaHQ6IDZweDtcclxuXHRcdGJhY2tncm91bmQ6ICRmb3JtLXRpY2s7XHJcblx0XHRAaW5jbHVkZSByb3VuZGVkKDUwJSk7XHJcblx0fVxyXG5cclxuXHQvKiBEaXNhYmxlZCBjaXJjbGUgY29sb3VyICovXHJcblx0Ji5jb250cm9sLS1yYWRpbyBpbnB1dDpkaXNhYmxlZCB+IC5jb250cm9sX19pbmRpY2F0b3I6YWZ0ZXIge1xyXG5cdFx0YmFja2dyb3VuZDogJGZvcm0tdGljay1kaXNhYmxlZDtcclxuXHR9XHJcbn1cclxuXHJcbi8vIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cclxuICAgLy8gU2VsZWN0IEJveGVzXHJcbi8vIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cclxuXHJcbmZvcm0gLnNlbGVjdCB7XHJcblx0cG9zaXRpb246IHJlbGF0aXZlO1xyXG5cdGRpc3BsYXk6IGlubGluZS1ibG9jaztcclxuXHR3aWR0aDogMTAwJTtcclxuXHRtYXJnaW4tYm90dG9tOiAxNXB4O1xyXG5cclxuXHRzZWxlY3Qge1xyXG5cdFx0ZGlzcGxheTogaW5saW5lLWJsb2NrO1xyXG5cdFx0cGFkZGluZzogMTBweCAxNXB4O1xyXG5cdFx0d2lkdGg6IDEwMCU7XHJcblx0XHRib3JkZXI6IDFweCBzb2xpZCAkZm9ybS1ib3JkZXI7XHJcblx0XHRiYWNrZ3JvdW5kLWNvbG9yOiAkZm9ybS1zZWxlY3QtYmc7XHJcblx0XHRjb2xvcjogJHRleHQtY29sb3I7XHJcblx0XHRvdXRsaW5lOiAwO1xyXG5cdFx0Y3Vyc29yOiBwb2ludGVyO1xyXG5cdFx0YXBwZWFyYW5jZTogbm9uZTtcclxuXHRcdC13ZWJraXQtYXBwZWFyYW5jZTogbm9uZTtcclxuXHRcdC1tb3otYXBwZWFyYW5jZTogbm9uZTtcclxuXHRcdEBpbmNsdWRlIHJvdW5kZWQoMHB4KTtcclxuXHR9XHJcblxyXG5cdHNlbGVjdDo6LW1zLWV4cGFuZCB7XHJcblx0XHRkaXNwbGF5OiBub25lO1xyXG5cdH1cclxuXHJcblx0c2VsZWN0OmhvdmVyLFxyXG5cdHNlbGVjdDpmb2N1cyB7XHJcblx0XHRiYWNrZ3JvdW5kLWNvbG9yOiAkZm9ybS1zZWxlY3QtYmctaG92ZXI7XHJcblx0fVxyXG5cclxuXHRzZWxlY3Q6ZGlzYWJsZWQge1xyXG5cdFx0cG9pbnRlci1ldmVudHM6IG5vbmU7XHJcblx0XHRAaW5jbHVkZSBvcGFjaXR5KC41KTtcclxuXHR9XHJcblxyXG5cdC5zZWxlY3RfX2Fycm93IHtcclxuXHRcdHBvc2l0aW9uOiBhYnNvbHV0ZTtcclxuXHRcdHRvcDogMTZweDtcclxuXHRcdHJpZ2h0OiAxNXB4O1xyXG5cdFx0d2lkdGg6IDA7XHJcblx0XHRoZWlnaHQ6IDA7XHJcblx0XHRwb2ludGVyLWV2ZW50czogbm9uZTtcclxuXHRcdGJvcmRlci13aWR0aDogOHB4IDVweCAwIDVweDtcclxuXHRcdGJvcmRlci1zdHlsZTogc29saWQ7XHJcblx0XHRib3JkZXItY29sb3I6ICRjb2xvci1ncmV5LTUgdHJhbnNwYXJlbnQgdHJhbnNwYXJlbnQgdHJhbnNwYXJlbnQ7XHJcblx0fVxyXG5cclxuXHRzZWxlY3Q6aG92ZXIgfiAuc2VsZWN0X19hcnJvdyxcclxuXHRzZWxlY3Q6Zm9jdXMgfiAuc2VsZWN0X19hcnJvdyB7XHJcblx0XHRib3JkZXItdG9wLWNvbG9yOiAkdGV4dC1jb2xvcjtcclxuXHR9XHJcblxyXG5cdHNlbGVjdDpkaXNhYmxlZCB+IC5zZWxlY3RfX2Fycm93IHtcclxuXHRcdEBpbmNsdWRlIG9wYWNpdHkoLjUpO1xyXG5cdH1cclxufVxyXG5cclxuLy8gLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxyXG4gICAvLyBGb3JtIFN1Ym1pdCBCdXR0b25zXHJcbi8vIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cclxuXHJcbmZvcm0gaW5wdXRbdHlwZT1cInN1Ym1pdFwiXSxcclxuZm9ybSBpbnB1dFt0eXBlPVwicmVzZXRcIl0ge1xyXG5cdGRpc3BsYXk6IGlubGluZS1ibG9jaztcclxuXHRtYXJnaW4tYm90dG9tOiAoJGxpbmUtaGVpZ2h0LWNvbXB1dGVkIC8gMS41KTtcclxuXHRwYWRkaW5nOiAoJGxpbmUtaGVpZ2h0LWNvbXB1dGVkIC8gMS41KSAoJGxpbmUtaGVpZ2h0LWNvbXB1dGVkIC8gMSk7XHJcblx0aGVpZ2h0OiBhdXRvO1xyXG5cdHdpZHRoOiAxMDAlO1xyXG5cdGJvcmRlcjogMnB4IHNvbGlkICRidXR0b24tYm9yZGVyO1xyXG5cdGJhY2tncm91bmQtY29sb3I6ICRidXR0b24tYmc7XHJcblx0YmFja2dyb3VuZC1pbWFnZTogbm9uZTtcclxuXHR0ZXh0LWFsaWduOiBjZW50ZXI7XHJcblx0dGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcclxuXHR0ZXh0LWRlY29yYXRpb246IG5vbmU7XHJcblx0Zm9udDoge1xyXG5cdFx0c2l6ZTogJGZvbnQtc2l6ZS1iYXNlO1xyXG5cdFx0bGluZS1oZWlnaHQ6ICRsaW5lLWhlaWdodC1iYXNlO1xyXG5cdFx0ZmFtaWx5OiAkZm9udC1wcmltYXJ5O1xyXG5cdFx0d2VpZ2h0OiBib2xkO1xyXG5cdH1cclxuXHR3aGl0ZS1zcGFjZTogbm8td3JhcDtcclxuXHRjdXJzb3I6IHBvaW50ZXI7XHJcblx0dG91Y2gtYWN0aW9uOiBtYW5pcHVsYXRpb247XHJcblx0dXNlci1zZWxlY3Q6IG5vbmU7XHJcblx0QGluY2x1ZGUgdHJhbnNpdGlvbihhbGwpO1xyXG5cclxuXHRAaW5jbHVkZSBkZXZpY2Utc20ge1xyXG5cdFx0d2lkdGg6IGF1dG87XHJcblx0fVxyXG59XHJcblxyXG5mb3JtIGlucHV0W3R5cGU9XCJzdWJtaXRcIl0ge1xyXG5cdGJvcmRlci1jb2xvcjogJGJ1dHRvbi1ib3JkZXItcG9zaXRpdmU7XHJcblx0YmFja2dyb3VuZC1jb2xvcjogJGJ1dHRvbi1iZy1wb3NpdGl2ZTtcclxuXHRjb2xvcjogJGNvbG9yLXJldmVyc2VkO1xyXG5cclxuXHQmOmhvdmVyLFxyXG5cdCY6YWN0aXZlIHtcclxuXHRcdGJvcmRlci1jb2xvcjogJGJ1dHRvbi1ib3JkZXItcG9zaXRpdmUtaG92ZXI7XHJcblx0XHRiYWNrZ3JvdW5kLWNvbG9yOiAkYnV0dG9uLWJnLXBvc2l0aXZlLWhvdmVyO1xyXG5cdH1cclxufVxyXG5cclxuZm9ybSBpbnB1dFt0eXBlPVwicmVzZXRcIl0ge1xyXG5cdGJvcmRlci1jb2xvcjogJGJ1dHRvbi1ib3JkZXI7XHJcblx0YmFja2dyb3VuZC1jb2xvcjogJGJ1dHRvbi1iZztcclxuXHRjb2xvcjogJHRleHQtY29sb3I7XHJcblxyXG5cdCY6aG92ZXIsXHJcblx0JjphY3RpdmUge1xyXG5cdFx0YmFja2dyb3VuZC1jb2xvcjogJGJ1dHRvbi1iZy1ob3ZlcjtcclxuXHRcdGNvbG9yOiAkY29sb3ItZ3JleS02O1xyXG5cdH1cclxufSIsIi8vID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cclxuICAgLy8gY29tcG9uZW50cy9fdGFibGVzLnNjc3NcclxuLy8gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxyXG5cclxuLy8gLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxyXG4gICAvLyBCYXNpYyBTZXR1cFxyXG4vLyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXHJcblxyXG50YWJsZSB7XHJcblx0ZGlzcGxheTogdGFibGU7XHJcblx0bWFyZ2luLWJvdHRvbTogMmVtO1xyXG5cdHdpZHRoOiAxMDAlO1xyXG5cdG1heC13aWR0aDogMTAwJTtcclxuXHRib3JkZXItc3BhY2luZzogMDtcclxuXHRib3JkZXItY29sbGFwc2U6IGNvbGxhcHNlO1xyXG5cdGJvcmRlci1jb2xvcjogJHRhYmxlLWJvcmRlci1jb2xvcjtcclxuXHRiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcclxuXHRmb250OiB7XHJcblx0XHRzaXplOiAkZm9udC1zaXplLWJhc2U7XHJcblx0XHRmYW1pbHk6ICRmb250LXByaW1hcnk7XHJcblx0XHR3ZWlnaHQ6IG5vcm1hbDtcclxuXHR9XHJcblx0bGluZS1oZWlnaHQ6ICRsaW5lLWhlaWdodC1iYXNlO1xyXG5cclxuXHRjYXB0aW9uIHtcclxuXHRcdHBhZGRpbmc6IDhweCAwO1xyXG5cdFx0dGV4dC1hbGlnbjogbGVmdDtcclxuXHR9XHJcblxyXG5cdHRoZWFkIHtcclxuXHRcdGRpc3BsYXk6IHRhYmxlLWhlYWRlci1ncm91cDtcclxuXHRcdHZlcnRpY2FsLWFsaWduOiB0b3A7XHJcblx0XHRib3JkZXItY29sb3I6IGluaGVyaXQ7XHJcblx0fVxyXG5cclxuXHR0Ym9keSB7XHJcblx0XHRkaXNwbGF5OiB0YWJsZS1yb3ctZ3JvdXA7XHJcblx0XHR2ZXJ0aWNhbC1hbGlnbjogdG9wO1xyXG5cdFx0Ym9yZGVyLWNvbG9yOiBpbmhlcml0OyBcclxuXHR9XHJcblxyXG5cdHRyIHtcclxuXHRcdGRpc3BsYXk6IHRhYmxlLXJvdztcclxuXHRcdHZlcnRpY2FsLWFsaWduOiBpbmhlcml0O1xyXG5cdFx0Ym9yZGVyLWNvbG9yOiBpbmhlcml0O1xyXG5cdH1cclxuXHJcblx0dGgge1xyXG5cdFx0ZGlzcGxheTogdGFibGUtY2VsbDtcclxuXHRcdHRleHQtYWxpZ246IGxlZnQ7XHJcblx0XHRmb250LXdlaWdodDogYm9sZDtcclxuXHR9XHJcblxyXG5cdHRkIHtcclxuXHRcdGRpc3BsYXk6IHRhYmxlLWNlbGw7XHJcblx0XHRib3JkZXI6IDFweCBzb2xpZCAkdGFibGUtYm9yZGVyLWNvbG9yO1xyXG5cdH1cclxuXHJcblx0dGhlYWQ+dHI+dGgsXHJcblx0dGJvZHk+dHI+dGgsXHJcblx0dGJvZHk+dHI+dGQge1xyXG5cdFx0cGFkZGluZzogMTJweCAxMHB4O1xyXG5cdFx0Ym9yZGVyOiAxcHggc29saWQgJHRhYmxlLWJvcmRlci1jb2xvcjtcclxuXHRcdHZlcnRpY2FsLWFsaWduOiB0b3A7XHJcblx0fVxyXG5cclxuXHR0aGVhZD50cj50aCB7XHJcblx0XHRib3JkZXItYm90dG9tOiAycHggc29saWQgJHRhYmxlLWJvcmRlci1jb2xvcjtcclxuXHR9XHJcblxyXG5cdHRib2R5PnRyOmhvdmVyLFxyXG5cdHRib2R5PnRyOmFjdGl2ZSB7XHJcblx0XHRiYWNrZ3JvdW5kLWNvbG9yOiAkdGFibGUtcm93LWhvdmVyO1xyXG5cdH1cclxufVxyXG5cclxuLy8gLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxyXG4gICAvLyBObyBCb3JkZXIgVGFibGUgXHJcbi8vIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cclxuXHJcbi50YWJsZS0tbm8tYm9yZGVyIHtcclxuXHJcblx0dGQge1xyXG5cdFx0Ym9yZGVyOiBub25lO1xyXG5cdFx0Ym9yZGVyLXRvcDogMXB4IHNvbGlkICR0YWJsZS1ib3JkZXItY29sb3I7XHJcblx0fVxyXG5cclxuXHR0Ym9keT50cj50aCxcclxuXHR0Ym9keT50cj50ZCB7XHJcblx0XHRib3JkZXI6IG5vbmU7XHJcblx0XHRib3JkZXItdG9wOiAxcHggc29saWQgJHRhYmxlLWJvcmRlci1jb2xvcjtcclxuXHR9XHJcblxyXG5cdHRoZWFkPnRyPnRoIHtcclxuXHRcdGJvcmRlcjogbm9uZTtcclxuXHRcdGJvcmRlci1ib3R0b206IDJweCBzb2xpZCAkdGFibGUtYm9yZGVyLWNvbG9yO1xyXG5cdH1cclxuXHJcblx0dGJvZHk+dHI6bGFzdC1vZi10eXBlIHtcclxuXHRcdGJvcmRlci1ib3R0b206IDFweCBzb2xpZCAkdGFibGUtYm9yZGVyLWNvbG9yO1xyXG5cdH1cclxufVxyXG5cclxuLy8gLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxyXG4gICAvLyBJbnZpc2libGVcclxuLy8gLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxyXG5cclxudGFibGUudGFibGUtLWludmlzaWJsZSB7XHJcblxyXG5cdHRoZWFkIHtcclxuXHRcdGNvbG9yOiBpbmhlcml0O1xyXG5cdH1cclxuXHJcblx0dGQge1xyXG5cdFx0Ym9yZGVyOiBub25lO1xyXG5cdH1cclxuXHJcblx0dGhlYWQ+dHI+dGgsXHJcblx0dGJvZHk+dHI+dGgsXHJcblx0dGJvZHk+dHI+dGQge1xyXG5cdFx0cGFkZGluZy1sZWZ0OiAwO1xyXG5cdFx0Ym9yZGVyOiBub25lO1xyXG5cdH1cclxuXHJcblx0dGhlYWQ+dHIge1xyXG5cdFx0YmFja2dyb3VuZC1jb2xvcjogaW5oZXJpdDtcclxuXHR9XHJcblxyXG5cdHRoZWFkPnRyPnRoIHtcclxuXHRcdGJvcmRlcjogbm9uZTtcclxuXHR9XHJcblxyXG5cdHRib2R5PnRyOm50aC1vZi10eXBlKGV2ZW4pIHtcclxuXHRcdGJhY2tncm91bmQtY29sb3I6IGluaGVyaXQ7XHJcblx0fVxyXG5cclxuXHR0Ym9keT50cjpob3ZlcixcclxuXHR0Ym9keT50cjphY3RpdmUge1xyXG5cdFx0YmFja2dyb3VuZC1jb2xvcjogJHRhYmxlLXJvdy1ob3ZlcjtcclxuXHR9XHJcblxyXG59XHJcblxyXG4vLyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXHJcbiAgIC8vIFN0cmlwZWQgRWZmZWN0XHJcbi8vIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cclxuXHJcbnRhYmxlLnRhYmxlLS1zdHJpcGVzIHtcclxuXHRcclxuXHR0Ym9keT50cjpudGgtb2YtdHlwZShldmVuKSB7XHJcblx0XHRiYWNrZ3JvdW5kLWNvbG9yOiAkdGFibGUtc3RyaXBlZC1iZztcclxuXHR9XHJcblxyXG5cdHRib2R5PnRyOmhvdmVyLFxyXG5cdHRib2R5PnRyOmFjdGl2ZSB7XHJcblx0XHRiYWNrZ3JvdW5kLWNvbG9yOiAkdGFibGUtcm93LWhvdmVyO1xyXG5cdH1cclxufVxyXG5cclxuLy8gLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxyXG4gICAvLyBIb3Jpem9udGFsIHNjcm9sbCBmb3Igc21hbGxlciBzY3JlZW5zXHJcbi8vIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cclxuXHJcbi8qIEhvcml6b250YWwgc2Nyb2xsICovXHJcblxyXG5kaXYudGFibGVfc2Nyb2xsIHtcclxuXHRvdmVyZmxvdy14OiBhdXRvO1xyXG59XHJcbiIsIi8vID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cclxuICAgLy8gY29tcG9uZW50cy9fYnJlYWRjcnVtYnMuc2Nzc1xyXG4vLyA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XHJcblxyXG4vLyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXHJcbiAgIC8vIEJhc2ljIFNldHVwXHJcbi8vIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cclxuXHJcbi8vIEV4YW1wbGUgdGFrZW4gZnJvbTogaHR0cHM6Ly9jb2RlcGVuLmlvL2Fya2V2L3Blbi9EekNLRlxyXG5cclxuLmJyZWFkY3J1bWIge1xyXG5cdGRpc3BsYXk6IGJsb2NrO1xyXG5cdG92ZXJmbG93OiBoaWRkZW47XHJcblx0Zm9udC1zaXplOiAkZm9udC1zaXplLXNtYWxsO1xyXG5cclxuXHR1bCB7XHJcblx0XHRtYXJnaW46IDA7XHJcblx0XHRwYWRkaW5nOiAwO1xyXG5cdFx0bGlzdC1zdHlsZTogbm9uZTtcclxuXHRcdGxpc3QtaW1hZ2U6IG5vbmU7XHJcblx0fVxyXG5cclxuXHRsaSB7XHJcblx0XHRkaXNwbGF5OiBpbmxpbmU7XHJcblx0XHRtYXJnaW46IDA7XHJcblx0XHRwYWRkaW5nOiAwO1xyXG5cdFx0cGFkZGluZy1sZWZ0OiAzcHg7XHJcblx0fVxyXG5cclxuXHRhLFxyXG5cdGE6bGluayxcclxuXHRhOnZpc2l0ZWQge1xyXG5cdFx0cGFkZGluZy1yaWdodDogNXB4O1xyXG5cdFx0Y29sb3I6ICR0ZXh0LWNvbG9yO1xyXG5cdFx0QGluY2x1ZGUgdHJhbnNpdGlvbiAoYWxsKTtcclxuXHJcblx0XHQmOmZpcnN0LWNoaWxkIHtcclxuXHRcdFx0cGFkZGluZy1sZWZ0OiAwO1xyXG5cdFx0fVxyXG5cclxuXHRcdCY6aG92ZXIsXHJcblx0XHQmOmZvY3VzIHtcclxuXHRcdFx0Y29sb3I6ICR0ZXh0LWNvbG9yO1xyXG5cdFx0fVxyXG5cdH1cclxufVxyXG4iLCIvLyA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XHJcbiAgIC8vIGNvbXBvbmVudHMvaW1hZ2VzLnNjc3NcclxuLy8gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxyXG5cclxuLy8gLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxyXG4gICAvLyBJbWFnZXNcclxuLy8gLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxyXG5cclxuLmltZy1yZXNwb25zaXZlIHtcclxuICBtYXgtd2lkdGg6MTAwJTtcclxuICBkaXNwbGF5OmJsb2NrO1xyXG4gIGhlaWdodDphdXRvO1xyXG59XHJcblxyXG5tYWluIGltZyB7XHJcblx0bWFyZ2luLWJvdHRvbTogJGxpbmUtaGVpZ2h0LWNvbXB1dGVkO1xyXG5cdG1heC13aWR0aDogMTAwJTtcclxuXHRoZWlnaHQ6IGF1dG87XHJcbn1cclxuXHJcbi8vIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cclxuICAgLy8gSW1hZ2Ugd2l0aCBDYXB0aW9uXHJcbi8vIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cclxuXHJcbmZpZ3VyZSB7XHJcblx0bWFyZ2luOiAwO1xyXG5cdG1hcmdpbi1ib3R0b206ICRsaW5lLWhlaWdodC1jb21wdXRlZDtcclxuXHRwYWRkaW5nOiAwIDAgMjBweDtcclxuXHRib3JkZXItYm90dG9tOiAxcHggc29saWQgJGJvcmRlci1jb2xvci1saWdodDtcclxuXHJcblx0aW1nIHtcclxuXHRcdG1hcmdpbi1ib3R0b206IDA7XHJcblx0XHRwYWRkaW5nLWJvdHRvbTogMWVtO1xyXG5cdH1cclxufVxyXG5cclxuZmlnY2FwdGlvbiB7XHJcblx0Zm9udDoge1xyXG5cdFx0c2l6ZTogJGZvbnQtc2l6ZS1zbWFsbDtcclxuXHRcdHN0eWxlOiBpdGFsaWM7XHJcblx0fVxyXG59IiwiLy8gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxyXG4gICAvLyBjb21wb25lbnRzL3ZpZGVvLnNjc3NcclxuLy8gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxyXG5cclxuLy8gLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxyXG4gICAvLyBWaWRlbyBXcmFwcGVyXHJcbi8vIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cclxuXHJcbi52aWRlby13cmFwcGVyIHtcclxuXHRwb3NpdGlvbjogcmVsYXRpdmU7XHJcblx0cGFkZGluZy1ib3R0b206IDU2LjI1JTsgLyogMTY6OSAqL1xyXG5cdHBhZGRpbmctdG9wOiAyNXB4O1xyXG5cdGhlaWdodDogMDtcclxufVxyXG5cclxuLnZpZGVvLXdyYXBwZXIgaWZyYW1lIHtcclxuXHRwb3NpdGlvbjogYWJzb2x1dGU7XHJcblx0dG9wOiAwO1xyXG5cdGxlZnQ6IDA7XHJcblx0d2lkdGg6IDEwMCU7XHJcblx0aGVpZ2h0OiAxMDAlO1xyXG59IiwiLy8gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxyXG4vLyBjb21wb25lbnRzL19oYW1idXJnZXIuc2Nzc1xyXG4vLyA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XHJcblxyXG4vLyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXHJcbi8vIEJhc2ljIFNldHVwXHJcbi8vIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cclxuXHJcblxyXG4uaGFtYnVyZ2VyIHtcclxuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcclxuICAgIHJpZ2h0OiAxNnB4O1xyXG4gICAgdG9wOiAwO1xyXG4gICAgYm90dG9tOiAwO1xyXG4gICAgei1pbmRleDogOTk7XHJcbiAgICAuaGFtYnVyZ2VyLWlubmVyLCAuaGFtYnVyZ2VyLWlubmVyOjpiZWZvcmUsIC5oYW1idXJnZXItaW5uZXI6OmFmdGVyIHtcclxuICAgICAgICB3aWR0aDogMzdweDtcclxuICAgICAgICBoZWlnaHQ6IDZweDtcclxuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiM1NTU1NTU7XHJcbiAgICB9XHJcbiAgICAmLmlzLWFjdGl2ZSB7XHJcbiAgICAgICAgdHJhbnNpdGlvbjogMC40cyBvcGFjaXR5O1xyXG4gICAgfVxyXG59IiwiLnNpZGUtbWVudSB7XHJcbiAgICBwb3NpdGlvbjogZml4ZWQ7XHJcbiAgICB0b3A6IDA7XHJcbiAgICByaWdodDogMDtcclxuICAgIGJvdHRvbTogMDtcclxuICAgIHdpZHRoOiAxMDAlO1xyXG4gICAgbWF4LXdpZHRoOjQ2MHB4O1xyXG4gICAgei1pbmRleDoxMDE7XHJcbiAgICBiYWNrZ3JvdW5kOiRzaXRlLW1lbnUtYmFja2dyb3VuZDtcclxuICAgIG92ZXJmbG93OmhpZGRlbjtcclxuICAgIHRyYW5zZm9ybTp0cmFuc2xhdGVYKDEwMCUpO1xyXG4gICAgdHJhbnNpdGlvbjowLjVzIHRyYW5zZm9ybSBjdWJpYy1iZXppZXIoMC40LCAwLCAwLjIsIDEpIDAuNXM7XHJcbiAgICAubWVudS1jb250ZW50IHtcclxuICAgICAgICB3aWR0aDoxMDAlO1xyXG4gICAgICAgIGZvbnQtZmFtaWx5OiRmb250LXByaW1hcnk7XHJcbiAgICAgICAgcGFkZGluZzogMy40NDVlbSAzMHB4IDMuNDQ1ZW0gMDtcclxuICAgICAgICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xyXG5cclxuICAgICAgICB1bCB7XHJcbiAgICAgICAgICAgIG1hcmdpbjogMDtcclxuICAgICAgICAgICAgcGFkZGluZzogMDtcclxuICAgICAgICAgICAgbGlzdC1zdHlsZS10eXBlOm5vbmU7XHJcbiAgICAgICAgfVxyXG4gICAgICAgIGEsYTpob3ZlcixhOmZvY3VzLGE6dmlzaXRlZCB7XHJcbiAgICAgICAgICAgIGNvbG9yOmluaGVyaXQ7XHJcbiAgICAgICAgICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcclxuICAgICAgICB9XHJcblxyXG4gICAgICAgIC5oYW1idXJnZXIge1xyXG4gICAgICAgICAgICBkaXNwbGF5OmJsb2NrO1xyXG4gICAgICAgICAgICBwb3NpdGlvbjpzdGF0aWM7XHJcbiAgICAgICAgICAgIG1hcmdpbi1sZWZ0OiAxLjM2ZW07XHJcbiAgICAgICAgICAgIHBhZGRpbmc6IDAuNjFlbTtcclxuICAgICAgICAgICAgZm9udC1zaXplOjE4cHg7XHJcbiAgICAgICAgfVxyXG4gICAgICAgIC5uYXZpZ2F0aW9uLWFyZWEge1xyXG4gICAgICAgICAgICBwYWRkaW5nOiAxLjJlbSAwIDAgMDtcclxuICAgICAgICAgICAgbGkge1xyXG4gICAgICAgICAgICAgICAgZm9udC1zaXplOjI0cHg7XHJcbiAgICAgICAgICAgICAgICBjb2xvcjokY29sb3ItYnJhbmQtcHJpbWFyeS0xO1xyXG4gICAgICAgICAgICAgICAgbGluZS1oZWlnaHQ6IDEuMjtcclxuICAgICAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IDAuMjFlbTtcclxuXHJcbiAgICAgICAgICAgICAgICBwb3NpdGlvbjpyZWxhdGl2ZTtcclxuICAgICAgICAgICAgICAgIG92ZXJmbG93OiBoaWRkZW47XHJcbiAgICAgICAgICAgICAgICBwYWRkaW5nOiAwLjQ4NWVtIDAgMC40ODZlbSAxLjZlbTtcclxuICAgICAgICAgICAgICAgIHN0cm9uZyB7XHJcbiAgICAgICAgICAgICAgICAgICAgcG9zaXRpb246cmVsYXRpdmU7XHJcbiAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICAgICBhIHtcclxuICAgICAgICAgICAgICAgICAgICBkaXNwbGF5OmJsb2NrO1xyXG4gICAgICAgICAgICAgICAgICAgIHBhZGRpbmc6IDAuNDg1ZW0gMCAwLjQ4NmVtIDEuNmVtO1xyXG4gICAgICAgICAgICAgICAgICAgIGNvbG9yOiRjb2xvci1icmFuZC1wcmltYXJ5LTE7XHJcbiAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICAgICBhOmhvdmVyIHtcclxuICAgICAgICAgICAgICAgICAgICBjb2xvcjogIzg2ODY4NjtcclxuICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICAgICYuaXRlbSB7XHJcbiAgICAgICAgICAgICAgICAgICAgcGFkZGluZzowO1xyXG4gICAgICAgICAgICAgICAgICAgICY6YmVmb3JlLCY6YWZ0ZXIge1xyXG4gICAgICAgICAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kOndoaXRlc21va2U7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIGNvbnRlbnQ6ICcnO1xyXG4gICAgICAgICAgICAgICAgICAgICAgICB3aWR0aDogMS4xOGVtO1xyXG4gICAgICAgICAgICAgICAgICAgICAgICBoZWlnaHQ6IDUxJTtcclxuICAgICAgICAgICAgICAgICAgICAgICAgdHJhbnNpdGlvbjowLjFzIGJhY2tncm91bmQgZWFzZS1vdXQ7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcclxuICAgICAgICAgICAgICAgICAgICAgICAgbGVmdDogLTdweDtcclxuICAgICAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICAgICAgICAgJjpiZWZvcmUge1xyXG4gICAgICAgICAgICAgICAgICAgICAgICB0cmFuc2Zvcm06IHNrZXdYKDE1ZGVnKTtcclxuICAgICAgICAgICAgICAgICAgICAgICAgdG9wOjA7XHJcbiAgICAgICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAgICAgICAgICY6YWZ0ZXIge1xyXG4gICAgICAgICAgICAgICAgICAgICAgICBib3R0b206MDtcclxuICAgICAgICAgICAgICAgICAgICAgICAgdHJhbnNmb3JtOiBza2V3WCgtMTVkZWcpO1xyXG4gICAgICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICAgICAgICAmLmFjdGl2ZSB7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIGJhY2tncm91bmQ6JGNvbG9yLWJyYW5kLXByaW1hcnktMjtcclxuICAgICAgICAgICAgICAgICAgICAgICAgYSB7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBjb2xvcjojZmZmO1xyXG4gICAgICAgICAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIGE6aG92ZXIge1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgY29sb3I6Z2FpbnNib3JvO1xyXG4gICAgICAgICAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICY6YmVmb3JlLCY6YWZ0ZXIge1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgYmFja2dyb3VuZDogIzAwNWQ5YTtcclxuICAgICAgICAgICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICAgICAgICAmOmhvdmVyIHtcclxuICAgICAgICAgICAgICAgICAgICAgICAgJjpiZWZvcmUsJjphZnRlciB7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kOiAjMDA1ZDlhO1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgdHJhbnNpdGlvbjowLjM1cyBiYWNrZ3JvdW5kIGVhc2Utb3V0O1xyXG4gICAgICAgICAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAgICAgJjpsYXN0LWNoaWxkIHtcclxuICAgICAgICAgICAgICAgICAgICBtYXJnaW4tYm90dG9tOjA7XHJcbiAgICAgICAgICAgICAgICB9XHJcblxyXG5cclxuICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICB1bC53aXRoU3ViIHtcclxuICAgICAgICAgICAgICAgIG1hcmdpbjowLjI1ZW0gMCAxZW07XHJcbiAgICAgICAgICAgICAgICA+IGxpIHtcclxuICAgICAgICAgICAgICAgICAgICAmOmZpcnN0LWNoaWxkIHtcclxuICAgICAgICAgICAgICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTowLjFlbTtcclxuICAgICAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICAgICAgICAgJi5jaGlsZCB7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IDAuMWVtO1xyXG4gICAgICAgICAgICAgICAgICAgICAgICBtYXJnaW4tbGVmdDogMS42ZW07XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIHBhZGRpbmctbGVmdDowLjllbTtcclxuICAgICAgICAgICAgICAgICAgICAgICAgYSB7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBwYWRkaW5nOiAwLjQ4ZW0gMCAwLjQ4ZW0gMC43ZW07XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIH1cclxuXHJcbiAgICAgICAgICAgICAgICAgICAgfVxyXG5cclxuICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuXHJcblxyXG4gICAgfVxyXG4gICAgLmJvdHRvbS1hcmVhIHtcclxuICAgICAgICBwb3NpdGlvbjpyZWxhdGl2ZTtcclxuICAgICAgICBtYXJnaW4tdG9wOiAwLjNlbTtcclxuICAgICAgICBwYWRkaW5nOiAyLjMwZW0gMCAwIDIuMWVtO1xyXG4gICAgICAgICY6YmVmb3JlIHtcclxuICAgICAgICAgICAgY29udGVudDonJztcclxuICAgICAgICAgICAgbWF4LXdpZHRoOiAxOS42MTJlbTtcclxuICAgICAgICAgICAgd2lkdGg6MTAwJTtcclxuICAgICAgICAgICAgaGVpZ2h0OjNweDtcclxuICAgICAgICAgICAgdG9wOjA7XHJcbiAgICAgICAgICAgIGJhY2tncm91bmQ6JGNvbG9yLWJyYW5kLXByaW1hcnktMjtcclxuICAgICAgICAgICAgcG9zaXRpb246YWJzb2x1dGU7XHJcbiAgICAgICAgfVxyXG4gICAgICAgIGxpIHtcclxuICAgICAgICAgICAgY29sb3I6JGNvbG9yLWJyYW5kLXByaW1hcnktMjtcclxuICAgICAgICAgICAgZm9udC1zaXplOjIycHg7XHJcbiAgICAgICAgICAgIGZvbnQtZmFtaWx5OiRmb250LXByaW1hcnk7XHJcbiAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IDAuNmVtO1xyXG4gICAgICAgICAgICBmb250LXdlaWdodDo3MDA7XHJcbiAgICAgICAgICAgIGEge1xyXG4gICAgICAgICAgICAgICAgZGlzcGxheTpibG9jaztcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAuaWNvbi1kb3dubG9hZCB7XHJcbiAgICAgICAgICAgICAgICB3aWR0aDogMjJweDtcclxuICAgICAgICAgICAgICAgIGhlaWdodDogYXV0bztcclxuICAgICAgICAgICAgICAgIG1hcmdpbjogMCAwIC0xcHggMnB4O1xyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICY6bGFzdC1jaGlsZCB7XHJcbiAgICAgICAgICAgICAgICBtYXJnaW4tYm90dG9tOjA7XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgYTpob3ZlciB7XHJcbiAgICAgICAgICAgICAgICBjb2xvcjojMjQ5YmZmO1xyXG4gICAgICAgICAgICB9XHJcblxyXG4gICAgICAgIH1cclxuICAgICAgICAuc20ge1xyXG4gICAgICAgICAgICBtYXJnaW4tdG9wOiAwLjhlbTtcclxuICAgICAgICAgICAgbGkge1xyXG4gICAgICAgICAgICAgICAgbWFyZ2luOiAwIDEuM2VtIDAgMDtcclxuICAgICAgICAgICAgICAgICYudHcge1xyXG4gICAgICAgICAgICAgICAgICAgIG1hcmdpbi10b3A6IDVweDtcclxuICAgICAgICAgICAgICAgICAgICBtYXJnaW4tcmlnaHQ6IDAuOWVtO1xyXG4gICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAgICAgJi55dCB7XHJcbiAgICAgICAgICAgICAgICAgICAgbWFyZ2luLXRvcDozcHg7XHJcbiAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgIH1cclxuXHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG5cclxuICAgICYuYWN0aXZlIHtcclxuICAgICAgICB0cmFuc2Zvcm06dHJhbnNsYXRlWCgwJSk7XHJcbiAgICAgICAgdHJhbnNpdGlvbjowLjVzIHRyYW5zZm9ybSBjdWJpYy1iZXppZXIoMC40LCAwLCAwLjIsIDEpIDAuNXM7XHJcbiAgICB9XHJcblxyXG59XHJcblxyXG5cclxuQGluY2x1ZGUgZGV2aWNlLWxnLW9ubHkgIHtcclxuXHJcbiAgICAuc2lkZS1tZW51IHtcclxuICAgICAgICBtYXgtd2lkdGg6NDMwcHg7XHJcbiAgICB9XHJcbiAgICAuc2lkZS1tZW51IC5tZW51LWNvbnRlbnQge1xyXG4gICAgICAgIGZvbnQtc2l6ZToxNHB4O1xyXG4gICAgfVxyXG4gICAgLnNpZGUtbWVudSAubWVudS1jb250ZW50IC5uYXZpZ2F0aW9uLWFyZWEgbGkge1xyXG4gICAgICAgIGZvbnQtc2l6ZToyNHB4O1xyXG4gICAgfVxyXG4gICAgLnNpZGUtbWVudSAuYm90dG9tLWFyZWEgbGkge1xyXG4gICAgICAgIGZvbnQtc2l6ZToyMnB4O1xyXG5cclxuICAgIH1cclxuICAgIC5zaWRlLW1lbnUgLmJvdHRvbS1hcmVhIHtcclxuICAgICAgICBwYWRkaW5nOiAyLjMwZW0gMCAwIDIuNzZlbTtcclxuICAgIH1cclxufVxyXG5cclxuQGluY2x1ZGUgZGV2aWNlLW1kLW9ubHkgIHtcclxuICAgIC5zaWRlLW1lbnUgLm1lbnUtY29udGVudCB7XHJcbiAgICAgICAgZm9udC1zaXplOjEzcHg7XHJcbiAgICB9XHJcbiAgICAuc2lkZS1tZW51IHtcclxuICAgICAgICBtYXgtd2lkdGg6NDAwcHg7XHJcbiAgICB9XHJcbiAgICAuc2lkZS1tZW51IC5tZW51LWNvbnRlbnQgLm5hdmlnYXRpb24tYXJlYSBsaSB7XHJcbiAgICAgICAgZm9udC1zaXplOjIzcHg7XHJcbiAgICB9XHJcbiAgICAuc2lkZS1tZW51IC5ib3R0b20tYXJlYSBsaSB7XHJcbiAgICAgICAgZm9udC1zaXplOjIwcHg7XHJcbiAgICB9XHJcbiAgICAuc2lkZS1tZW51IC5ib3R0b20tYXJlYSBsaSAuaWNvbi1kb3dubG9hZCB7XHJcbiAgICAgICAgd2lkdGg6IDIwcHg7XHJcbiAgICAgICAgbWFyZ2luOiAwIDAgMCAycHg7XHJcbiAgICB9XHJcbn1cclxuQGluY2x1ZGUgZGV2aWNlLXNtLW9ubHkgIHtcclxuICAgIC5zaWRlLW1lbnUgLm1lbnUtY29udGVudCAuaGFtYnVyZ2VyIHtcclxuICAgICAgICBmb250LXNpemU6MTFweDtcclxuICAgIH1cclxuICAgIC5zaWRlLW1lbnUgLm1lbnUtY29udGVudCB7XHJcbiAgICAgICAgZm9udC1zaXplOjExcHg7XHJcbiAgICB9XHJcbiAgICAuc2lkZS1tZW51IHtcclxuICAgICAgICBtYXgtd2lkdGg6MzYwcHg7XHJcbiAgICB9XHJcbiAgICAuc2lkZS1tZW51IC5tZW51LWNvbnRlbnQgLm5hdmlnYXRpb24tYXJlYSBsaSB7XHJcbiAgICAgICAgZm9udC1zaXplOjIycHg7XHJcbiAgICAgICAgcGFkZGluZzogMC40ODVlbSAwIDAuNDg2ZW0gMS4xZW07XHJcblxyXG4gICAgfVxyXG4gICAgLnNpZGUtbWVudSAuYm90dG9tLWFyZWEgbGkge1xyXG4gICAgICAgIGZvbnQtc2l6ZToxOHB4O1xyXG4gICAgICAgIC5pY29uLWRvd25sb2FkIHtcclxuICAgICAgICAgICAgd2lkdGg6IDE5cHg7XHJcbiAgICAgICAgICAgIG1hcmdpbjogMCAwIC0xcHggMnB4O1xyXG4gICAgICAgIH1cclxuICAgIH1cclxuXHJcbn1cclxuXHJcbkBpbmNsdWRlIGRldmljZS14c20tb25seSAge1xyXG4gICAgLnNpZGUtbWVudSAubWVudS1jb250ZW50IC5oYW1idXJnZXIge1xyXG4gICAgICAgIGZvbnQtc2l6ZTo5cHg7XHJcbiAgICB9XHJcbiAgICAuc2lkZS1tZW51IC5tZW51LWNvbnRlbnQge1xyXG4gICAgICAgIGZvbnQtc2l6ZToxMXB4O1xyXG4gICAgfVxyXG4gICAgLnNpZGUtbWVudSB7XHJcbiAgICAgICAgbWF4LXdpZHRoOjMyMHB4O1xyXG4gICAgfVxyXG4gICAgLnNpZGUtbWVudSAubWVudS1jb250ZW50IC5uYXZpZ2F0aW9uLWFyZWEgbGkge1xyXG4gICAgICAgIGZvbnQtc2l6ZToyMHB4O1xyXG4gICAgICAgIHBhZGRpbmc6IDAuNDg1ZW0gMCAwLjQ4NmVtIDEuMWVtO1xyXG4gICAgfVxyXG5cclxuICAgIC5zaWRlLW1lbnUgLmJvdHRvbS1hcmVhIGxpIHtcclxuICAgICAgICBmb250LXNpemU6MTZweDtcclxuICAgIH1cclxuICAgIC5zaWRlLW1lbnUgLmJvdHRvbS1hcmVhIGxpIHtcclxuICAgICAgICAuaWNvbi1kb3dubG9hZCB7XHJcbiAgICAgICAgICAgIHdpZHRoOiAxOHB4O1xyXG4gICAgICAgICAgICBoZWlnaHQ6IGF1dG87XHJcbiAgICAgICAgICAgIG1hcmdpbjogMCAwIC0xcHggMnB4O1xyXG4gICAgICAgIH1cclxuICAgIH1cclxuXHJcbn1cclxuXHJcbkBpbmNsdWRlIGRldmljZS14c20tZG93biB7XHJcbiAgICAuc2lkZS1tZW51IC5tZW51LWNvbnRlbnQgLmhhbWJ1cmdlciB7XHJcbiAgICAgICAgZm9udC1zaXplOjhweDtcclxuICAgIH1cclxuICAgIC5zaWRlLW1lbnUgLm1lbnUtY29udGVudCB7XHJcbiAgICAgICAgZm9udC1zaXplOjlweDtcclxuICAgIH1cclxuICAgIC5zaWRlLW1lbnUge1xyXG4gICAgICAgIG1heC13aWR0aDoyNjBweDtcclxuICAgIH1cclxuICAgIC5zaWRlLW1lbnUgLm1lbnUtY29udGVudCAubmF2aWdhdGlvbi1hcmVhIGxpIHtcclxuICAgICAgICBmb250LXNpemU6MThweDtcclxuICAgICAgICBwYWRkaW5nOiAwLjQ4NWVtIDAgMC40ODZlbSAxLjFlbTtcclxuICAgIH1cclxuICAgIC5zaWRlLW1lbnUgLmJvdHRvbS1hcmVhIGxpIHtcclxuICAgICAgICBmb250LXNpemU6MTRweDtcclxuICAgIH1cclxuICAgIC5zaWRlLW1lbnUgLmJvdHRvbS1hcmVhIGxpIHtcclxuICAgICAgICAuaWNvbi1kb3dubG9hZCB7XHJcbiAgICAgICAgICAgIHdpZHRoOiAxNnB4O1xyXG4gICAgICAgICAgICBtYXJnaW46IDAgMCAtMXB4IDJweDtcclxuICAgICAgICB9XHJcbiAgICB9XHJcbiAgICAuc2lkZS1tZW51IC5tZW51LWNvbnRlbnQgLm5hdmlnYXRpb24tYXJlYSBsaSB7XHJcbiAgICAgICAgbGluZS1oZWlnaHQ6MS4xNjtcclxuICAgIH1cclxufVxyXG5cclxuXHJcblxyXG5ALW1vei1kb2N1bWVudCB1cmwtcHJlZml4KCkge1xyXG4gICAgLnNpZGUtbWVudSAubWVudS1jb250ZW50IC5uYXZpZ2F0aW9uLWFyZWEgbGkge1xyXG4gICAgICAgIGxpbmUtaGVpZ2h0OjEuMTk7XHJcbiAgICB9XHJcbn1cclxuXHJcbkBtZWRpYSAobWF4LXdpZHRoOiRkZXZpY2UtbGctd2lkdGgpIHtcclxuICAgIC5zaWRlLW1lbnUge1xyXG4gICAgICAgIHBvc2l0aW9uOmFic29sdXRlO1xyXG4gICAgfVxyXG4gICAgLnNpZGUtbWVudS1jb250YWluZXIge1xyXG4gICAgICAgIG92ZXJmbG93OiBoaWRkZW47XHJcbiAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xyXG4gICAgICAgIGxlZnQ6IDA7XHJcbiAgICAgICAgcmlnaHQ6IDA7XHJcbiAgICAgICAgdG9wOiAwO1xyXG4gICAgICAgIGJvdHRvbTogMDtcclxuICAgICAgICBtYXJnaW46IGF1dG87XHJcbiAgICB9XHJcbn1cclxuQG1lZGlhIChtYXgtd2lkdGg6JGRldmljZS1tZC13aWR0aCkge1xyXG4gICAgLnNpZGUtbWVudSAubWVudS1jb250ZW50IC5uYXZpZ2F0aW9uLWFyZWEgbGkuaXRlbTpiZWZvcmUsIC5zaWRlLW1lbnUgLm1lbnUtY29udGVudCAubmF2aWdhdGlvbi1hcmVhIGxpLml0ZW06YWZ0ZXIge1xyXG4gICAgICAgIHdpZHRoOjEuMDVlbTtcclxuICAgIH1cclxuICAgIC5zaWRlLW1lbnUgLm1lbnUtY29udGVudCAubmF2aWdhdGlvbi1hcmVhIHVsLndpdGhTdWIgPiBsaS5jaGlsZCB7XHJcbiAgICAgICAgbWFyZ2luLWxlZnQ6IDEuMWVtO1xyXG4gICAgICAgIGEge1xyXG4gICAgICAgICAgICBwYWRkaW5nOiAwLjQ4ZW0gMCAwLjQ4ZW0gMC4yZW07XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG4gICAgLnNpZGUtbWVudSAubWVudS1jb250ZW50IC5uYXZpZ2F0aW9uLWFyZWEgbGkge1xyXG4gICAgICAgIGEge1xyXG4gICAgICAgICAgICBwYWRkaW5nOiAwLjQ4NWVtIDAgMC40ODZlbSAxLjFlbTtcclxuICAgICAgICB9XHJcbiAgICB9XHJcbn0iLCIvLyA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XHJcbiAgIC8vIGNvbXBvbmVudHMvX2p1bWJvdHJvbi5zY3NzXHJcbi8vID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cclxuXHJcbi8vIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cclxuICAgLy8gQmFzaWMgU2V0dXBcclxuLy8gLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxyXG5cclxuLmp1bWJvdHJvbiB7XHJcblx0dGV4dC1hbGlnbjogbGVmdDtcclxuICAgIG1hcmdpbjogNS43ZW0gMCA0ZW07XHJcblx0aDEsIC5oMSB7XHJcblx0XHRsaW5lLWhlaWdodDogKDExMiAvIDEyNSk7XHJcblx0XHRmb250LXNpemU6IDEyNXB4O1xyXG4gICAgICAgIG1hcmdpbjowO1xyXG4gICAgICAgIGxldHRlci1zcGFjaW5nOiAwLjJweDtcclxuXHR9XHJcblx0XHJcblx0aDIsIC5oMiB7XHJcblx0XHRsaW5lLWhlaWdodDogKDYwIC8gNDYpO1xyXG5cdFx0Zm9udC1zaXplOiA0NnB4O1xyXG5cdH1cclxuICAgIGgxICsgaDIge1xyXG4gICAgICAgIG1hcmdpbjogMC42OGVtIDAgMCAwLjg0ZW07XHJcbiAgICB9XHJcblx0XHJcblx0LmxlYWQge1xyXG5cdFx0Zm9udC1zaXplOiBlbSg0MCwgJGZvbnQtc2l6ZS1iYXNlKTtcclxuXHRcdGxpbmUtaGVpZ2h0OiAoNTUgLyA0MCk7XHJcbiAgICAgICAgbGV0dGVyLXNwYWNpbmc6IC0wLjE5cHg7XHJcbiAgICAgICAgbWFyZ2luOiAwLjhlbSAwIDAuODVlbTtcclxuICAgIH1cclxuICAuYnRuLmJ0bi0tZG93bmxvYWQge1xyXG4gICAgcGFkZGluZzogMTVweCAxOXB4IDE1cHggMTZweDtcclxuICB9XHJcbiAgLmJ0bi0tZG93bmxvYWQ6YmVmb3JlLCBhLmJ0bi0tZG93bmxvYWQ6YmVmb3JlIHtcclxuICAgIG1hcmdpbi1yaWdodDo1cHg7XHJcbiAgfVxyXG4gICAgLmRlc2t0b3AtaW1nIHtcclxuICAgICAgICBoZWlnaHQ6MzEwcHg7XHJcbiAgICAgICAgd2lkdGg6YXV0bztcclxuICAgICAgICBiYWNrZ3JvdW5kOnVybCguLi9pbWFnZXMvaG9tZS1oZWFkZXItZGVza3RvcC5wbmcpIG5vLXJlcGVhdCB0b3AgcmlnaHQ7XHJcbiAgICAgICAgbWFyZ2luOiA2cHggLTFweCAwIGF1dG87XHJcbiAgICAgICAgYmFja2dyb3VuZC1zaXplOmNvbnRhaW47XHJcbiAgICB9XHJcbiAgICAubW9iaWxlLWltZyB7XHJcbiAgICAgICAgZGlzcGxheTpub25lO1xyXG4gICAgICAgIGhlaWdodDo5NHB4O1xyXG4gICAgICAgIHdpZHRoOmF1dG87XHJcbiAgICAgICAgYmFja2dyb3VuZDp1cmwoLi4vaW1hZ2VzL2hvbWUtaGVhZGVyLW1vYmlsZS5wbmcpIG5vLXJlcGVhdCBjZW50ZXI7XHJcbiAgICAgICAgbWFyZ2luOjAgYXV0bztcclxuICAgICAgICBiYWNrZ3JvdW5kLXNpemU6Y29udGFpbjtcclxuICAgIH1cclxufVxyXG5cclxuXHJcbkBtZWRpYSAobWluLXdpZHRoOjE0MjJweCkgYW5kIChtYXgtd2lkdGg6MTYwMHB4KSB7XHJcbiAgICAuanVtYm90cm9uIHtcclxuICAgICAgICBmb250LXNpemU6MTdweDtcclxuICAgIH1cclxuICAgIC5qdW1ib3Ryb24gIGgxe1xyXG4gICAgICAgIGZvbnQtc2l6ZTogMTI2cHg7XHJcbiAgICB9XHJcbn1cclxuQGluY2x1ZGUgZGV2aWNlLWxnLW9ubHkgIHtcclxuICAgIC5qdW1ib3Ryb24ge1xyXG4gICAgICAgIGZvbnQtc2l6ZToxNXB4O1xyXG4gICAgfVxyXG4gICAgLmp1bWJvdHJvbiAgaDF7XHJcbiAgICAgICAgZm9udC1zaXplOiA5MnB4O1xyXG4gICAgfVxyXG4gICAgLmp1bWJvdHJvbiBoMiB7XHJcbiAgICAgICAgZm9udC1zaXplOjM4cHg7XHJcbiAgICB9XHJcbiAgICAuanVtYm90cm9uIC5kZXNrdG9wLWltZyB7XHJcbiAgICAgICAgaGVpZ2h0OjIyNHB4O1xyXG4gICAgfVxyXG59XHJcblxyXG5AaW5jbHVkZSBkZXZpY2UtbWQtb25seSAge1xyXG4gICAgLmp1bWJvdHJvbiB7XHJcbiAgICAgICAgZm9udC1zaXplOjEzcHg7XHJcbiAgICB9XHJcbiAgICAuanVtYm90cm9uICBoMXtcclxuICAgICAgICBmb250LXNpemU6IDg4cHg7XHJcbiAgICB9XHJcbiAgICAuanVtYm90cm9uIGgyIHtcclxuICAgICAgICBmb250LXNpemU6MzRweDtcclxuICAgIH1cclxuICAgIC5qdW1ib3Ryb24gLmJ0bi0tZG93bmxvYWQ6YmVmb3JlLCAuanVtYm90cm9uIGEuYnRuLS1kb3dubG9hZDpiZWZvcmUge1xyXG4gICAgICAgIG1hcmdpbi1yaWdodDowO1xyXG4gICAgfVxyXG4gICAgLmp1bWJvdHJvbiAuZGVza3RvcC1pbWcge1xyXG4gICAgICAgIGhlaWdodDoxODRweDtcclxuICAgIH1cclxufVxyXG5AaW5jbHVkZSBkZXZpY2Utc20tb25seSAge1xyXG4gICAgLmp1bWJvdHJvbiB7XHJcbiAgICAgICAgZm9udC1zaXplOjExcHg7XHJcblxyXG4gICAgfVxyXG4gICAgLmp1bWJvdHJvbiAgaDF7XHJcbiAgICAgICAgZm9udC1zaXplOiA3NnB4O1xyXG4gICAgfVxyXG4gICAgLmp1bWJvdHJvbiBoMiB7XHJcbiAgICAgICAgZm9udC1zaXplOjMwcHg7XHJcbiAgICB9XHJcbiAgICAuanVtYm90cm9uIC5sZWFkIHtcclxuICAgICAgICBmb250LXNpemU6Mi4yZW07XHJcbiAgICB9XHJcbiAgICAuanVtYm90cm9uIC5idG4uYnRuLS1kb3dubG9hZCB7XHJcbiAgICAgICAgcGFkZGluZzogMC42OTVlbSAwLjY5NWVtIDAuNjk1ZW0gMC42MGVtO1xyXG4gICAgfVxyXG4gICAgLmp1bWJvdHJvbiAuYnRuLS1kb3dubG9hZDpiZWZvcmUsIC5qdW1ib3Ryb24gYS5idG4tLWRvd25sb2FkOmJlZm9yZSB7XHJcbiAgICAgICAgbWFyZ2luLXJpZ2h0OjA7XHJcbiAgICB9XHJcbiAgICAuYnRuLS1kb3dubG9hZDpiZWZvcmUsIGEuYnRuLS1kb3dubG9hZDpiZWZvcmUge1xyXG4gICAgICAgIHBhZGRpbmctbGVmdDoyMnB4O1xyXG4gICAgfVxyXG59XHJcblxyXG5AaW5jbHVkZSBkZXZpY2UteHNtLW9ubHkgIHtcclxuICAgIC5qdW1ib3Ryb24ge1xyXG4gICAgICAgIGZvbnQtc2l6ZTo5cHg7XHJcbiAgICAgICAgbWFyZ2luLWxlZnQ6MTVweDtcclxuICAgICAgICBtYXJnaW4tcmlnaHQ6MTVweDtcclxuICAgIH1cclxuICAgIC5qdW1ib3Ryb24gIGgxe1xyXG4gICAgICAgIGZvbnQtc2l6ZTogNjRweDtcclxuICAgIH1cclxuICAgIC5qdW1ib3Ryb24gaDIge1xyXG4gICAgICAgIGZvbnQtc2l6ZToyNHB4O1xyXG4gICAgfVxyXG4gICAgLmp1bWJvdHJvbiAubGVhZCB7XHJcbiAgICAgICAgZm9udC1zaXplOjIuMmVtO1xyXG4gICAgfVxyXG4gICAgLmp1bWJvdHJvbiAuYnRuLmJ0bi0tZG93bmxvYWQge1xyXG4gICAgICAgIHBhZGRpbmc6IDAuNjk1ZW0gMC42OTVlbSAwLjY5NWVtIDAuNjBlbTtcclxuICAgIH1cclxuICAgIC5qdW1ib3Ryb24gLmJ0bi0tZG93bmxvYWQ6YmVmb3JlLCAuanVtYm90cm9uIGEuYnRuLS1kb3dubG9hZDpiZWZvcmUge1xyXG4gICAgICAgIG1hcmdpbi1yaWdodDowO1xyXG4gICAgfVxyXG4gICAgLmJ0bi0tZG93bmxvYWQ6YmVmb3JlLCBhLmJ0bi0tZG93bmxvYWQ6YmVmb3JlIHtcclxuICAgICAgICBwYWRkaW5nLWxlZnQ6MjJweDtcclxuICAgICAgICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiBsZWZ0IDJweDtcclxuICAgIH1cclxufVxyXG5cclxuQGluY2x1ZGUgZGV2aWNlLXhzbS1kb3duIHtcclxuICAgIC5qdW1ib3Ryb24ge1xyXG4gICAgICAgIGZvbnQtc2l6ZTo3cHg7XHJcbiAgICAgICAgbWFyZ2luLWxlZnQ6MTVweDtcclxuICAgICAgICBtYXJnaW4tcmlnaHQ6MTVweDtcclxuICAgIH1cclxuICAgIC5qdW1ib3Ryb24gIGgxe1xyXG4gICAgICAgIGZvbnQtc2l6ZTogNThweDtcclxuICAgIH1cclxuICAgIC5qdW1ib3Ryb24gaDIge1xyXG4gICAgICAgIGZvbnQtc2l6ZToyMnB4O1xyXG4gICAgfVxyXG4gICAgLmp1bWJvdHJvbiAubGVhZCB7XHJcbiAgICAgICAgZm9udC1zaXplOjIuMmVtO1xyXG4gICAgfVxyXG4gICAgLmp1bWJvdHJvbiAuYnRuLmJ0bi0tZG93bmxvYWQge1xyXG4gICAgICAgIHBhZGRpbmc6IDAuNjk1ZW0gMC42OTVlbSAwLjY5NWVtIDAuNjBlbTtcclxuICAgIH1cclxuICAgIC5qdW1ib3Ryb24gLmJ0bi0tZG93bmxvYWQ6YmVmb3JlLCAuanVtYm90cm9uIGEuYnRuLS1kb3dubG9hZDpiZWZvcmUge1xyXG4gICAgICAgIG1hcmdpbi1yaWdodDowO1xyXG4gICAgfVxyXG4gICAgLmJ0bi0tZG93bmxvYWQ6YmVmb3JlLCBhLmJ0bi0tZG93bmxvYWQ6YmVmb3JlIHtcclxuICAgICAgICBwYWRkaW5nLWxlZnQ6MjJweDtcclxuICAgICAgICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiBsZWZ0IDJweDtcclxuICAgIH1cclxuXHJcbn1cclxuXHJcbkBtZWRpYSAobWF4LXdpZHRoOiA2Ni42NjY2N2VtKSB7XHJcbiAgICAuanVtYm90cm9uIC5kZXNrdG9wLWltZyB7XHJcbiAgICAgICAgZGlzcGxheTpub25lO1xyXG4gICAgfVxyXG4gICAgLmp1bWJvdHJvbiAubW9iaWxlLWltZyB7XHJcbiAgICAgICAgZGlzcGxheTpibG9jaztcclxuICAgICAgICBtYXJnaW4tdG9wOjMwcHg7XHJcbiAgICB9XHJcbiAgICAuanVtYm90cm9uIC5ncmlkLWl0ZW0tMiB7XHJcbiAgICAgICAgdGV4dC1hbGlnbjpjZW50ZXI7XHJcbiAgICB9XHJcbiAgICAuanVtYm90cm9uIGgxICsgaDIge1xyXG4gICAgICAgIG1hcmdpbjowO1xyXG4gICAgfVxyXG59IiwiLy8gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxyXG4gICAvLyBjb21wb25lbnRzL19wcmlvcml0eS10YWJzLnNjc3NcclxuLy8gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxyXG5cclxuLy8gLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxyXG4gICAvLyBCYXNpYyBTZXR1cFxyXG4vLyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXHJcblxyXG4ucHJpb3JpdHktdGFicy0taGVhZGVyIHtcclxuXHRAaW5jbHVkZSBmbGV4LWRpc3BsYXkoZmxleCk7XHJcblx0QGluY2x1ZGUgZmxleC1hbGlnbi1pdGVtcyhmbGV4LXN0YXJ0KTtcclxuXHRwb3NpdGlvbjogcmVsYXRpdmU7XHJcblx0ei1pbmRleDogMjA7XHJcbn1cclxuXHJcbi5wcmlvcml0eS10YWJzLS1jb250ZW50IHtcclxuXHRjbGVhcjogYm90aDtcclxuXHRkaXNwbGF5OiBibG9jaztcclxuICAgIG1hcmdpbi10b3A6IC0yLjJyZW07XHJcblx0cG9zaXRpb246cmVsYXRpdmU7XHJcblx0LmwtZ3JpZC1wcmlvcml0eSB7XHJcblx0XHRtYXJnaW4tbGVmdDogLTIzcHg7XHJcblx0XHRtYXJnaW4tcmlnaHQ6IC0yM3B4O1xyXG4gICAgICAgICYud2l0aFBhZGRpbmcge1xyXG4gICAgICAgICAgICBwYWRkaW5nLWJvdHRvbTogMi4xNWVtO1xyXG4gICAgICAgIH1cclxuXHR9XHJcbiAgICAucHJpb3JpdHktY29udGVudC0tdGl0bGUge1xyXG4gICAgICAgIGxldHRlci1zcGFjaW5nOiAtMC4zcHg7XHJcbiAgICAgICAgbGluZS1oZWlnaHQ6IDAuOTY7XHJcbiAgICB9XHJcbn1cclxuXHJcbi5wcmlvcml0eS10YWJzLW91dCB7XHJcbiAgICBtYXJnaW4tdG9wOiA2LjEzcmVtO1xyXG4gIC5wcmlvcml0eS10YWJzIHtcclxuICAgICAgbWFyZ2luLXRvcDogMy41cmVtO1xyXG4gIH1cclxufVxyXG5cclxuLnByaW9yaXR5LXRhYiB7XHJcblx0Y3Vyc29yOiBwb2ludGVyO1xyXG4gICAgcG9zaXRpb246cmVsYXRpdmU7XHJcblx0ZGlzcGxheTogYmxvY2s7XHJcblx0ZmxvYXQ6IGxlZnQ7XHJcblx0d2lkdGg6ICRsLWdyaWQtMTItY29sLTI7XHJcblx0cGFkZGluZzogcmVtKDEzKSAwIDA7XHJcblx0Ym9yZGVyLWxlZnQ6IDE1cHggc29saWQgI2ZmZjtcclxuXHRib3JkZXItcmlnaHQ6IDE1cHggc29saWQgI2ZmZjtcclxuXHR0ZXh0LWFsaWduOiBjZW50ZXI7XHJcblx0Zm9udC1zaXplOiByZW0oMzApO1xyXG5cdGxpbmUtaGVpZ2h0OiAwO1xyXG5cdGNvbG9yOiAkY29sb3ItcmV2ZXJzZWQ7XHJcblx0Ym94LXNpemluZzogY29udGVudC1ib3g7XHJcblx0dHJhbnNpdGlvbjogcGFkZGluZy10b3AgLjNzIGVhc2UsIGxpbmUtaGVpZ2h0IC4zcyBsaW5lYXI7XHJcblx0XHJcblx0JjpmaXJzdC1vZi10eXBlIHtcclxuXHRcdEBpbmNsdWRlIGRldmljZS1sZyB7XHJcbiAgICAgICAgICBtYXJnaW4tbGVmdDogOC4zMzQlO1xyXG5cdFx0fVxyXG5cdH1cclxuXHJcblxyXG4gICAgJjpob3ZlcixcclxuICAgICYuYWN0aXZlIHtcclxuICAgICAgICBAaW5jbHVkZSBkZXZpY2Utc20ge1xyXG4gICAgICAgICAgICBsaW5lLWhlaWdodDogKDI4IC8gMzApO1xyXG4gICAgICAgICAgICBwYWRkaW5nLXRvcDogcmVtKDMyKTtcclxuXHJcblxyXG4gICAgICAgICAgICAucHJpb3JpdHktaWNvbiB7XHJcbiAgICAgICAgICAgICAgICBoZWlnaHQ6IHJlbSg4NSk7XHJcbiAgICAgICAgICAgIH1cclxuXHJcbiAgICAgICAgICAgIC5wcmlvcml0eS1sYWJlbCB7XHJcbiAgICAgICAgICAgICAgICBwYWRkaW5nLWJvdHRvbTowO1xyXG4gICAgICAgICAgICAgICAgLnByaW9yaXR5LXRhYi0tY2hldnJvbiB7XHJcbiAgICAgICAgICAgICAgICAgICAgbWFyZ2luLXRvcDotMTFweDtcclxuICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuXHJcbiAgICB9XHJcblxyXG5cclxuXHJcbn1cclxuXHJcbi5wcmlvcml0eS1sYWJlbCB7XHJcblx0ZGlzcGxheTogYmxvY2s7XHJcblx0bWluLWhlaWdodDogZW0oMjgsIDMwKTsgLy8gPSBsaW5lIGhlaWdodCBcclxuXHRwYWRkaW5nLXRvcDogcmVtKDUpO1xyXG5cdHBhZGRpbmctYm90dG9tOiByZW0oMTIpO1xyXG5cdG1hcmdpbi10b3A6IHJlbSgxOCk7XHJcblx0cG9zaXRpb246IHJlbGF0aXZlO1xyXG5cdHRyYW5zaXRpb246IGJhY2tncm91bmQtY29sb3IgLjNzIGVhc2UsIHBhZGRpbmctYm90dG9tIC4zcyBlYXNlO1xyXG59XHJcblxyXG4ucHJpb3JpdHktbGFiZWwtLXRleHQge1xyXG5cdHBvc2l0aW9uOiByZWxhdGl2ZTtcclxuXHR6LWluZGV4OiAyO1xyXG5cdGZvbnQtZmFtaWx5OiAkZm9udC1wcmltYXJ5O1xyXG5cdGxpbmUtaGVpZ2h0OiAwLjk0O1xyXG5cdHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XHJcblx0Zm9udC13ZWlnaHQ6IG5vcm1hbDtcclxufVxyXG5cclxuLnByaW9yaXR5LWljb24ge1xyXG4gICAgdmVydGljYWwtYWxpZ246IHRvcDtcclxuXHRkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XHJcblx0d2lkdGg6IGF1dG87XHJcblx0aGVpZ2h0OiAwO1xyXG4gICAgbWFyZ2luOiAwIDAgLTAuMWVtO1xyXG5cdHRyYW5zaXRpb246IGhlaWdodCAuM3MgZWFzZTtcclxufVxyXG5cclxuLnByaW9yaXR5LXRhYi0tY2hldnJvbiB7XHJcblx0bWFyZ2luLXRvcDogLTEycHg7XHJcblx0cG9zaXRpb246IGFic29sdXRlO1xyXG4gICAgbGVmdDowO1xyXG5cdHRvcDogMTAwJTtcclxuXHR0cmFuc2l0aW9uOiBjb2xvciAuM3MgZWFzZTtcclxuICAgIG1heC13aWR0aDogMTAwJTtcclxuXHJcbn1cclxuXHJcbi5wcmlvcml0eS1jb250ZW50IHtcclxuXHRtYXJnaW46IDA7XHJcbiAgICBvdmVyZmxvdzogaGlkZGVuO1xyXG4gICAgb3BhY2l0eTowO1xyXG4gICAgaGVpZ2h0OjA7XHJcbiAgICB2aXNpYmlsaXR5OmhpZGRlbjtcclxuICAgIGJvcmRlci13aWR0aDowIWltcG9ydGFudDtcclxuXHJcblx0Ji5hY3RpdmUge1xyXG4gICAgICAgIGJvcmRlci13aWR0aDo4cHghaW1wb3J0YW50O1xyXG4gICAgICAgIGhlaWdodDphdXRvO1xyXG5cdFx0b3JkZXI6IDk5OTk7XHJcbiAgICAgICAgcGFkZGluZzogcmVtKDk1KSAwIHJlbSg4Myk7XHJcbiAgICAgICAgdmlzaWJpbGl0eTogdmlzaWJsZTtcclxuICAgICAgICBvcGFjaXR5OjE7XHJcbiAgICAgICAgdHJhbnNpdGlvbjogMC42cyBvcGFjaXR5IGN1YmljLWJlemllcigwLjY4LCAtMC41NSwgMC4yNywgMS41NSk7XHJcbiAgICB9XHJcbn1cclxuXHJcbi5wcmlvcml0eS1jb250ZW50LS1tYWluIHtcclxuXHRwIHtcclxuICAgICAgICBmb250LXNpemU6IHJlbSgzMCk7XHJcbiAgICAgICAgbGluZS1oZWlnaHQ6IDEuNDtcclxuICAgICAgICBtYXJnaW46IC02cHggMCAwO1xyXG4gICAgICAgIGxldHRlci1zcGFjaW5nOiAtMC4wNXB4O1xyXG4gICAgfVxyXG59XHJcblxyXG4uYnRuLnByaW9yaXR5LWNvbnRlbnQtLWxpbmsge1xyXG5cdHdpZHRoOiByZW0oMTMyKTtcclxuICAgIG1hcmdpbi1sZWZ0OiAzMXB4O1xyXG4gICAgbWFyZ2luLXRvcDogMnB4O1xyXG5cdGZvbnQtc2l6ZTogcmVtKDMwKTtcclxuXHRsaW5lLWhlaWdodDogMTtcclxuICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcclxuICAgIHBhZGRpbmc6IDI5cHggMCAyN3B4O1xyXG59XHJcblxyXG4udW5kZXItcHJpb3JpdGllcyAuYnRue1xyXG4gICAgbWFyZ2luLXRvcDogMmVtO1xyXG4gICAgcGFkZGluZzogMTRweCAxOXB4IDE1cHg7XHJcbn1cclxuXHJcbkBpbmNsdWRlIHByaW9yaXR5LXRhYi1jb2xvcnMoKTtcclxuXHJcblxyXG5cclxuQG1lZGlhIChtaW4td2lkdGg6MTQyMnB4KSBhbmQgKG1heC13aWR0aDoxNjAwcHgpIHtcclxuICAgIC5wcmlvcml0eS10YWIge1xyXG4gICAgICAgIGZvbnQtc2l6ZTogMjhweDtcclxuICAgIH1cclxufVxyXG5cclxuQGluY2x1ZGUgZGV2aWNlLWxnLW9ubHkgIHtcclxuICAgIC5wcmlvcml0eS10YWIge1xyXG4gICAgICAgIGZvbnQtc2l6ZTogMjRweDtcclxuICAgIH1cclxuICAgIC5idG4ucHJpb3JpdHktY29udGVudC0tbGluayB7XHJcbiAgICAgICAgbWFyZ2luLWxlZnQ6MDtcclxuICAgIH1cclxuICAgIC5sLWdyaWQtcHJpb3JpdHkgIC5ncmlkLWl0ZW0tMyB7XHJcbiAgICAgICAgdGV4dC1hbGlnbjpjZW50ZXI7XHJcbiAgICB9XHJcbiAgICAucHJpb3JpdHktY29udGVudCB7XHJcbiAgICAgICAgcGFkZGluZy1sZWZ0OjE1cHghaW1wb3J0YW50O1xyXG4gICAgICAgIHBhZGRpbmctcmlnaHQ6MTVweCFpbXBvcnRhbnQ7XHJcbiAgICB9XHJcbn1cclxuXHJcbkBpbmNsdWRlIGRldmljZS1tZC1vbmx5ICB7XHJcbiAgICAucHJpb3JpdHktdGFiIHtcclxuICAgICAgICB3aWR0aDpjYWxjKDEwMCUgLyA1KTtcclxuICAgIH1cclxuICAgIC5wcmlvcml0eS10YWJzLS1oZWFkZXIge1xyXG4gICAgICAgIG1hcmdpbjogMCAyM3B4O1xyXG4gICAgfVxyXG4gICAgLmJ0bi5wcmlvcml0eS1jb250ZW50LS1saW5rIHtcclxuICAgICAgICBtYXJnaW4tbGVmdDowO1xyXG4gICAgfVxyXG4gICAgLmwtZ3JpZC1wcmlvcml0eSAgLmdyaWQtaXRlbS0zIHtcclxuICAgICAgICB0ZXh0LWFsaWduOmNlbnRlcjtcclxuICAgIH1cclxuXHJcbn1cclxuXHJcblxyXG5AaW5jbHVkZSBkZXZpY2UteHNtLW9ubHkgIHtcclxuXHJcbiAgICAuYnRuLnByaW9yaXR5LWNvbnRlbnQtLWxpbmsge1xyXG4gICAgICAgIHdpZHRoOiAxNS4yNXJlbTtcclxuICAgICAgICBwYWRkaW5nOiAxMHB4IDA7XHJcbiAgICAgICAgbWFyZ2luOiAxLjRyZW0gMCAwO1xyXG4gICAgICAgIGZvbnQtc2l6ZTogMi4ycmVtO1xyXG4gICAgfVxyXG5cclxufVxyXG5cclxuXHJcbkBtZWRpYSAobWF4LXdpZHRoOiRkZXZpY2UtbGctd2lkdGgpIHtcclxuICAgIC5wcmlvcml0eS1jb250ZW50IHtcclxuICAgICAgICBwYWRkaW5nLWxlZnQ6MzBweCFpbXBvcnRhbnQ7XHJcbiAgICAgICAgcGFkZGluZy1yaWdodDozMHB4IWltcG9ydGFudDtcclxuICAgIH1cclxufVxyXG5cclxuQG1lZGlhIChtYXgtd2lkdGg6JGRldmljZS1tZC13aWR0aCApIHtcclxuICAgIC5wcmlvcml0eS10YWIge1xyXG4gICAgICAgIHdpZHRoOmNhbGMoMTAwJSAvIDUpO1xyXG4gICAgICAgIGJvcmRlci1sZWZ0LXdpZHRoOjhweDtcclxuICAgICAgICBib3JkZXItcmlnaHQtd2lkdGg6OHB4O1xyXG4gICAgfVxyXG4gICAgLnByaW9yaXR5LXRhYnMtLWhlYWRlciB7XHJcbiAgICAgICAgbWFyZ2luOiAwIDIzcHg7XHJcbiAgICB9XHJcblxyXG4gICAgLmJ0bi5wcmlvcml0eS1jb250ZW50LS1saW5rIHtcclxuICAgICAgICB3aWR0aDogMTUuMjVyZW07XHJcbiAgICAgICAgcGFkZGluZzogMTdweCAwO1xyXG4gICAgICAgIG1hcmdpbjogMS40cmVtIDAgMDtcclxuICAgIH1cclxuICAgIC5wcmlvcml0eS1jb250ZW50LS1tYWluIHAge1xyXG4gICAgICAgIG1hcmdpbi10b3A6IDFyZW0haW1wb3J0YW50O1xyXG4gICAgfVxyXG4gICAgLnByaW9yaXR5LWNvbnRlbnQtLXRpdGxlIHtcclxuICAgICAgICBmb250LXNpemU6IDRyZW07XHJcbiAgICB9XHJcbn1cclxuXHJcbkBtZWRpYSAgKG1heC13aWR0aDokZGV2aWNlLXNtLXdpZHRoICkge1xyXG4gICAgLnByaW9yaXR5LXRhYiB7XHJcbiAgICAgICAgcGFkZGluZzogMS44cmVtIDAgMDtcclxuICAgICAgICB3aWR0aDpjYWxjKDEwMCUgLyA1KTtcclxuICAgICAgICBib3JkZXItbGVmdC13aWR0aDo2cHg7XHJcbiAgICAgICAgYm9yZGVyLXJpZ2h0LXdpZHRoOjZweDtcclxuICAgICAgICB0cmFuc2l0aW9uOjBzIHBhZGRpbmctdG9wO1xyXG4gICAgICAgIC5wcmlvcml0eS1pY29uIHtcclxuICAgICAgICAgICAgaGVpZ2h0OjVyZW07XHJcbiAgICAgICAgICAgIHBvc2l0aW9uOnJlbGF0aXZlO1xyXG4gICAgICAgICAgICB6LWluZGV4OjM7XHJcbiAgICAgICAgICAgIG1hcmdpbjogMCAwIC0wLjNlbTtcclxuICAgICAgICB9XHJcbiAgICAgICAgLnByaW9yaXR5LWxhYmVsIHtcclxuICAgICAgICAgICAgbWFyZ2luLXRvcDogLTQuODc1cmVtO1xyXG4gICAgICAgICAgICBwYWRkaW5nLWJvdHRvbTogMy43NXJlbTtcclxuICAgICAgICB9XHJcblxyXG4gICAgICAgIC5wcmlvcml0eS1sYWJlbC0tdGV4dCB7XHJcbiAgICAgICAgICAgIGRpc3BsYXk6bm9uZTtcclxuICAgICAgICB9XHJcbiAgICAgICAgJi5hY3RpdmUsICY6aG92ZXIge1xyXG4gICAgICAgICAgICBsaW5lLWhlaWdodDogNjtcclxuICAgICAgICAgICAgdHJhbnNpdGlvbjowLjJzIGxpbmUtaGVpZ2h0O1xyXG4gICAgICAgICAgICAucHJpb3JpdHktdGFiLS1jaGV2cm9uIHtcclxuICAgICAgICAgICAgICAgIG1hcmdpbi10b3A6LTIycHg7XHJcbiAgICAgICAgICAgICAgICB0cmFuc2l0aW9uOjAuMnMgbWFyZ2luLXRvcDtcclxuICAgICAgICAgICAgfVxyXG5cclxuICAgICAgICB9XHJcbiAgICB9XHJcbiAgICAucHJpb3JpdHktdGFicyB7XHJcbiAgICAgICAgLnByaW9yaXR5LWNvbnRlbnQuYWN0aXZlIHtcclxuICAgICAgICAgICAgYm9yZGVyLXdpZHRoOiA1cHggIWltcG9ydGFudDtcclxuICAgICAgICB9XHJcbiAgICAgICAgLnByaW9yaXR5LXRhYnMtLWhlYWRlciB7XHJcbiAgICAgICAgICAgIG1hcmdpbjowIDIwcHg7XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG5cclxuICAgIC5wcmlvcml0eS1jb250ZW50LS1tYWluIHAge1xyXG4gICAgICAgIGZvbnQtc2l6ZToxOHB4O1xyXG4gICAgfVxyXG5cclxuICAgIC5wcmlvcml0eS10YWJzLS1jb250ZW50IC5wcmlvcml0eS1jb250ZW50LS10aXRsZSB7XHJcbiAgICAgICAgZm9udC1zaXplOjM0cHg7XHJcbiAgICB9XHJcblxyXG59XHJcblxyXG5cclxuXHJcbkBpbmNsdWRlIGRldmljZS14c20tZG93biB7XHJcbiAgICAuYnRuLnByaW9yaXR5LWNvbnRlbnQtLWxpbmsge1xyXG4gICAgICAgIHdpZHRoOiAxMDAlO1xyXG4gICAgICAgIHBhZGRpbmc6IDEwcHggMDtcclxuICAgICAgICBmb250LXNpemU6IDIuMnJlbTtcclxuICAgIH1cclxuICAgIC51bmRlci1wcmlvcml0aWVzIHtcclxuICAgICAgICBwYWRkaW5nOjAgMzBweDtcclxuICAgICAgICAuYnRuIHtcclxuICAgICAgICAgICAgcGFkZGluZzogMTBweCAwIDExcHg7XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG4gICAgLnByaW9yaXR5LXRhYiAucHJpb3JpdHktaWNvbiB7XHJcbiAgICAgICAgbWFyZ2luOiAwIDAgLTAuNDVlbTtcclxuICAgIH1cclxuICAgIC5wcmlvcml0eS10YWJzLS1jb250ZW50IC5wcmlvcml0eS1jb250ZW50LS10aXRsZSB7XHJcbiAgICAgICAgZm9udC1zaXplOjI4cHg7XHJcbiAgICB9XHJcblxyXG59XHJcblxyXG4vKlxyXG4gKiBOb3Qgc3VyZSB3aGF0IHRoaXMgbWVhbnQgdG8gZG8gYnV0IGl0IGRpc2FibGVzIHBhcmFsbGF4IG9uIElFIGZvciBzdXJlXHJcbkBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6MFxcMCkgYW5kIChtaW4tcmVzb2x1dGlvbjogKzcyZHBpKSB7XHJcbiAgICAvLyBJRTkrIENTU1xyXG4gICAgLnN0YW5kYXJkLWJnIHtcclxuICAgICAgICBiYWNrZ3JvdW5kLWF0dGFjaG1lbnQ6IHNjcm9sbCFpbXBvcnRhbnQ7XHJcbiAgICB9XHJcbn0qL1xyXG5cclxuQHN1cHBvcnRzICgtbXMtaW1lLWFsaWduOiBhdXRvKSB7XHJcbiAgICAucHJpb3JpdHktdGFiIHttYXJnaW4tcmlnaHQ6LTFweDt9XHJcbn1cclxuIiwiLy8gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxyXG4vLyBjb21wb25lbnRzL19jZW8taW50cm9kdWN0aW9uLnNjc3NcclxuLy8gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxyXG5cclxuLy8gLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxyXG4vLyBCYXNpYyBTZXR1cFxyXG4vLyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXHJcblxyXG4uY2VvLWludHJvZHVjdGlvbiB7XHJcbiAgICBwb3NpdGlvbjpyZWxhdGl2ZTtcclxuICAgIHBhZGRpbmc6IDRlbSAwIDYuOTJlbTtcclxuICAgIHdpZHRoOjEwMCU7XHJcbiAgICAucGVyc29uIHtcclxuICAgICAgICB6LWluZGV4Oi0xO1xyXG4gICAgICAgIHBvc2l0aW9uOmFic29sdXRlO1xyXG4gICAgICAgIGJvdHRvbTowO1xyXG4gICAgICAgIGltZyB7XHJcbiAgICAgICAgICAgIG1hcmdpbjowO1xyXG4gICAgICAgICAgICBkaXNwbGF5OmJsb2NrO1xyXG4gICAgICAgIH1cclxuICAgICAgICAmLnBlcnNvbi0xIHtcclxuICAgICAgICAgICAgbGVmdDowO1xyXG4gICAgICAgIH1cclxuICAgICAgICAmLnBlcnNvbi0yIHtcclxuICAgICAgICAgICAgcmlnaHQ6MDtcclxuICAgICAgICB9XHJcbiAgICB9XHJcbiAgICAudGV4dC13cmFwIHtcclxuICAgICAgICBoMiB7XHJcbiAgICAgICAgICAgIGZvbnQtc2l6ZTo1MHB4O1xyXG4gICAgICAgICAgICBmb250LXdlaWdodDo3MDA7XHJcbiAgICAgICAgICAgIGNvbG9yOiRjb2xvci1icmFuZC1wcmltYXJ5LTE7XHJcbiAgICAgICAgICAgIGxpbmUtaGVpZ2h0OiAxLjA4O1xyXG4gICAgICAgICAgICBsZXR0ZXItc3BhY2luZzogLTAuMnB4O1xyXG4gICAgICAgICAgICBzcGFuIHtcclxuICAgICAgICAgICAgICAgIGNvbG9yOiAkaGVhZGluZ3MtY29sb3I7XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICB9XHJcbiAgICAgICAgLmJ0biB7XHJcbiAgICAgICAgICAgIG1hcmdpbi10b3A6IDAuOGVtO1xyXG4gICAgICAgIH1cclxuXHJcbiAgICB9XHJcblxyXG59XHJcblxyXG5cclxuQGluY2x1ZGUgZGV2aWNlLWxnLW9ubHkgIHtcclxuICAgIC5jZW8taW50cm9kdWN0aW9uIHtcclxuICAgICAgICBmb250LXNpemU6IDE2cHg7XHJcbiAgICAgICAgLnRleHQtd3JhcCBoMiB7XHJcbiAgICAgICAgICAgIGZvbnQtc2l6ZTo0M3B4O1xyXG4gICAgICAgIH1cclxuICAgIH1cclxufVxyXG5cclxuQGluY2x1ZGUgZGV2aWNlLW1kLW9ubHkgIHtcclxuICAgIC5jZW8taW50cm9kdWN0aW9uIHtcclxuICAgICAgICBmb250LXNpemU6IDE0cHg7XHJcbiAgICAgICAgLnRleHQtd3JhcCBoMiB7XHJcbiAgICAgICAgICAgIGZvbnQtc2l6ZTozOXB4O1xyXG4gICAgICAgIH1cclxuICAgIH1cclxufVxyXG5cclxuXHJcbkBpbmNsdWRlIGRldmljZS1zbS1vbmx5ICB7XHJcbiAgICAuY2VvLWludHJvZHVjdGlvbiB7XHJcbiAgICAgICAgZm9udC1zaXplOiAxMnB4O1xyXG4gICAgICAgIC50ZXh0LXdyYXAgaDIge1xyXG4gICAgICAgICAgICBmb250LXNpemU6MzZweDtcclxuXHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG59XHJcblxyXG5AaW5jbHVkZSBkZXZpY2UteHNtLW9ubHkgIHtcclxuICAgIC5jZW8taW50cm9kdWN0aW9uIHtcclxuICAgICAgICBmb250LXNpemU6IDEwcHg7XHJcbiAgICAgICAgLnRleHQtd3JhcCBoMiB7XHJcbiAgICAgICAgICAgIGZvbnQtc2l6ZToyOHB4O1xyXG5cclxuICAgICAgICB9XHJcbiAgICB9XHJcbn1cclxuXHJcbkBpbmNsdWRlIGRldmljZS14c20tZG93biB7XHJcbiAgICAuY2VvLWludHJvZHVjdGlvbiB7XHJcbiAgICAgICAgZm9udC1zaXplOiA4cHg7XHJcbiAgICAgICAgLnRleHQtd3JhcCBoMiB7XHJcbiAgICAgICAgICAgIGZvbnQtc2l6ZToyNnB4O1xyXG5cclxuICAgICAgICB9XHJcbiAgICB9XHJcbn1cclxuXHJcbkBtZWRpYSAobWF4LXdpZHRoOiRkZXZpY2UtbWQtd2lkdGgpIHtcclxuICAgIC5jZW8taW50cm9kdWN0aW9uIHtcclxuICAgICAgICBtYXJnaW4tYm90dG9tOi0ycHg7XHJcbiAgICAgICAgLnRleHQtd3JhcCB7XHJcbiAgICAgICAgICAgIHBhZGRpbmc6MCAxNXB4O1xyXG4gICAgICAgIH1cclxuXHJcblxyXG4gICAgfVxyXG5cclxufVxyXG5AbWVkaWEgKG1heC13aWR0aDokZGV2aWNlLXNtLXdpZHRoKSB7XHJcbiAgICAuY2VvLWludHJvZHVjdGlvbiB7XHJcbiAgICAgICAgYnIge1xyXG4gICAgICAgICAgICBkaXNwbGF5Om5vbmU7XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG4gICAgLmNlby1pbnRyb2R1Y3Rpb24gLnRleHQtd3JhcCBoMiB7XHJcbiAgICAgICAgbWFyZ2luLWJvdHRvbToxMHB4O1xyXG4gICAgfVxyXG5cclxufSIsIi8vID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cclxuLy8gY29tcG9uZW50cy9fbnVtYmVycy5zY3NzXHJcbi8vID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cclxuXHJcbi8vIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cclxuLy8gQmFzaWMgU2V0dXBcclxuLy8gLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxyXG5cclxuXHJcbi5udW1iZXJzIHtcclxuICAgIGJhY2tncm91bmQ6JGNvbG9yLWJyYW5kLXByaW1hcnktMjtcclxuICAgIHRleHQtYWxpZ246Y2VudGVyO1xyXG4gICAgcGFkZGluZzogMy44ZW0gMCA0LjRlbTtcclxuICAgIC5pY29uLWhvbGRlciB7XHJcbiAgICAgICAgbWluLWhlaWdodDoxNTdweDtcclxuICAgICAgICBwb3NpdGlvbjpyZWxhdGl2ZTtcclxuICAgICAgICAmLmljb24tMSBpbWd7XHJcbiAgICAgICAgICAgIHRvcDoyMHB4O1xyXG4gICAgICAgIH1cclxuICAgICAgICAmLmljb24tMiBpbWd7XHJcbiAgICAgICAgICAgIGxlZnQ6LThweDtcclxuICAgICAgICB9XHJcbiAgICAgICAgJi5pY29uLTMgaW1ne1xyXG4gICAgICAgICAgICB0b3A6LThweDtcclxuICAgICAgICB9XHJcbiAgICB9XHJcbiAgICBpbWcge1xyXG4gICAgICAgIGRpc3BsYXk6YmxvY2s7XHJcbiAgICAgICAgbWFyZ2luOmF1dG87XHJcbiAgICAgICAgcG9zaXRpb246YWJzb2x1dGU7XHJcbiAgICAgICAgYm90dG9tOjA7XHJcbiAgICAgICAgbGVmdDowO1xyXG4gICAgICAgIHJpZ2h0OjA7XHJcbiAgICAgICAgdG9wOjA7XHJcbiAgICB9XHJcblxyXG4gICAgaDMuY291bnQge1xyXG4gICAgICAgIGRpc3BsYXk6YmxvY2s7XHJcbiAgICAgICAgZm9udC1mYW1pbHk6ICRmb250LXNlY29uZGFyeTtcclxuICAgICAgICBmb250LXNpemU6IHJlbSgxNTApO1xyXG4gICAgICAgIGNvbG9yOiRjb2xvci1jb3VudC1udW1iZXI7XHJcbiAgICAgICAgbWFyZ2luLXRvcDogMC4xMjVlbTtcclxuICAgICAgICBsaW5lLWhlaWdodDogMC45XHJcbiAgICB9XHJcbiAgICBwIHtcclxuICAgICAgICBjb2xvcjogJGNvbG9yLXJldmVyc2VkO1xyXG4gICAgICAgIGZvbnQtc2l6ZTogMzBweDtcclxuICAgICAgICBtYXJnaW46IC0wLjNlbSAwIDA7XHJcbiAgICB9XHJcbiAgICAuYnRuIHtcclxuICAgICAgICBtYXJnaW4tdG9wOiAyLjM1ZW07XHJcbiAgICB9XHJcbn1cclxuXHJcblxyXG5cclxuQGluY2x1ZGUgZGV2aWNlLWxnLW9ubHkgIHtcclxuICAgIC5udW1iZXJzIHAge1xyXG4gICAgICAgIGZvbnQtc2l6ZToyOHB4O1xyXG4gICAgfVxyXG59XHJcblxyXG5AaW5jbHVkZSBkZXZpY2UtbWQtb25seSAge1xyXG4gICAgLm51bWJlcnMgcCB7XHJcbiAgICAgICAgZm9udC1zaXplOjI0cHg7XHJcbiAgICB9XHJcbiAgICAubnVtYmVycyB7XHJcbiAgICAgICAgZm9udC1zaXplOjE0cHg7XHJcbiAgICB9XHJcbn1cclxuQGluY2x1ZGUgZGV2aWNlLXNtLW9ubHkgIHtcclxuICAgIC5udW1iZXJzIHAge1xyXG4gICAgICAgIGZvbnQtc2l6ZToyMnB4O1xyXG4gICAgfVxyXG4gICAgLm51bWJlcnMge1xyXG4gICAgICAgIGZvbnQtc2l6ZToxMnB4O1xyXG5cclxuICAgIH1cclxuXHJcblxyXG59XHJcblxyXG5AaW5jbHVkZSBkZXZpY2UteHNtLW9ubHkgIHtcclxuXHJcbi5udW1iZXJzIHtcclxuICAgIGZvbnQtc2l6ZToxMHB4O1xyXG4gICAgcCB7XHJcbiAgICAgICAgZm9udC1zaXplOjIycHg7XHJcbiAgICB9XHJcbiAgICAuZ3JpZC1pdGVtLTEge1xyXG4gICAgICAgIG1hcmdpbi1ib3R0b206My41ZW07XHJcbiAgICAgICAgJjpsYXN0LWNoaWxkIHtcclxuICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTowO1xyXG4gICAgICAgIH1cclxuICAgIH1cclxuXHJcbn1cclxuICAgIC5udW1iZXJzIC5pY29uLWhvbGRlciB7XHJcbiAgICAgICAgbWluLWhlaWdodDowO1xyXG4gICAgICAgIGltZyB7XHJcbiAgICAgICAgICAgIHBvc2l0aW9uOnN0YXRpYztcclxuICAgICAgICAgICAgbWF4LWhlaWdodDo5MHB4O1xyXG4gICAgICAgIH1cclxuICAgIH1cclxuXHJcbn1cclxuXHJcbkBpbmNsdWRlIGRldmljZS14c20tZG93biB7XHJcbiAgICAubnVtYmVycyB7XHJcbiAgICAgICAgZm9udC1zaXplOjhweDtcclxuICAgICAgICBwIHtcclxuICAgICAgICAgICAgZm9udC1zaXplOjIwcHg7XHJcbiAgICAgICAgICAgIGxpbmUtaGVpZ2h0OiAxO1xyXG4gICAgICAgICAgICBtYXJnaW4tdG9wOiAwLjA1ZW07XHJcbiAgICAgICAgfVxyXG4gICAgICAgIC5ncmlkLWl0ZW0tMSB7XHJcbiAgICAgICAgICAgIG1hcmdpbi1ib3R0b206M2VtO1xyXG4gICAgICAgICAgICAmOmxhc3QtY2hpbGQge1xyXG4gICAgICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTowO1xyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG4gICAgICAgLmljb24taG9sZGVyIHtcclxuICAgICAgICAgICAgbWluLWhlaWdodDowO1xyXG4gICAgICAgICAgICBpbWcge1xyXG4gICAgICAgICAgICAgICAgcG9zaXRpb246c3RhdGljO1xyXG4gICAgICAgICAgICAgICAgbWF4LWhlaWdodDo4NXB4O1xyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG59IiwiLy8gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxyXG4vLyBjb21wb25lbnRzL19zdHJhdGVneS1pbnRyb2R1Y3Rpb24uc2Nzc1xyXG4vLyA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XHJcblxyXG4vLyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXHJcbi8vIEJhc2ljIFNldHVwXHJcbi8vIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cclxuXHJcbi5zdHJhdGVneS1pbnRyb2R1Y3Rpb24ge1xyXG4gICAgcGFkZGluZzogMy41NDVlbSAwIDA7XHJcbiAgICAudGV4dC1ob2xkZXIge1xyXG4gICAgICAgIHBhZGRpbmc6MCAyNXB4O1xyXG4gICAgICAgIGgyIHtcclxuICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogMC45NWVtO1xyXG4gICAgICAgIH1cclxuICAgICAgICBwIHtcclxuICAgICAgICAgICAgZm9udC1zaXplOjMwcHg7XHJcbiAgICAgICAgICAgIGxpbmUtaGVpZ2h0OiAxLjQ7XHJcbiAgICAgICAgfVxyXG4gICAgICAgIC5idG4ge1xyXG4gICAgICAgICAgICBtYXJnaW4tdG9wOiAxLjJlbTtcclxuICAgICAgICB9XHJcbiAgICB9XHJcbiAgICAuYmcge1xyXG4gICAgICAgIGJhY2tncm91bmQ6dXJsKC4uL2ltYWdlcy9pbmRleHN0cmF0ZWd5LWJnLmpwZykgYm90dG9tIGNlbnRlciBmaXhlZCBuby1yZXBlYXQ7XHJcbiAgICAgICAgYmFja2dyb3VuZC1zaXplOmNvdmVyO1xyXG4gICAgICAgIGhlaWdodDo3NTBweDtcclxuICAgICAgICBtYXJnaW4tdG9wOiA2LjA1ZW07XHJcbiAgICB9XHJcblxyXG59XHJcblxyXG5AaW5jbHVkZSBkZXZpY2UtbGctb25seSAge1xyXG4gICAgLnN0cmF0ZWd5LWludHJvZHVjdGlvbiAuYmcge1xyXG4gICAgICAgIGZvbnQtc2l6ZToxNnB4O1xyXG4gICAgICAgIGhlaWdodDo2NTBweDtcclxuICAgIH1cclxuICAgIC5zdHJhdGVneS1pbnRyb2R1Y3Rpb24ge1xyXG4gICAgICAgIGZvbnQtc2l6ZToxNnB4O1xyXG4gICAgfVxyXG4gICAgLnN0cmF0ZWd5LWludHJvZHVjdGlvbiAudGV4dC1ob2xkZXIgcCB7XHJcbiAgICAgICAgZm9udC1zaXplOjI2cHg7XHJcbiAgICB9XHJcblxyXG59XHJcblxyXG5AaW5jbHVkZSBkZXZpY2UtbWQtb25seSAge1xyXG4gICAgLnN0cmF0ZWd5LWludHJvZHVjdGlvbiAuYmcge1xyXG4gICAgICAgIGZvbnQtc2l6ZToxNHB4O1xyXG4gICAgICAgIGhlaWdodDo1NTBweDtcclxuICAgIH1cclxuICAgIC5zdHJhdGVneS1pbnRyb2R1Y3Rpb24ge1xyXG4gICAgICAgIGZvbnQtc2l6ZToxNHB4O1xyXG4gICAgfVxyXG4gICAgLnN0cmF0ZWd5LWludHJvZHVjdGlvbiAudGV4dC1ob2xkZXIgcCB7XHJcbiAgICAgICAgZm9udC1zaXplOjI0cHg7XHJcbiAgICB9XHJcbn1cclxuQGluY2x1ZGUgZGV2aWNlLXNtLW9ubHkgIHtcclxuICAgIC5zdHJhdGVneS1pbnRyb2R1Y3Rpb24gLmJnIHtcclxuICAgICAgICBmb250LXNpemU6MTJweDtcclxuICAgICAgICBoZWlnaHQ6NDUwcHg7XHJcbiAgICB9XHJcbiAgICAuc3RyYXRlZ3ktaW50cm9kdWN0aW9uIHtcclxuICAgICAgICBmb250LXNpemU6MTJweDtcclxuICAgIH1cclxuICAgIC5zdHJhdGVneS1pbnRyb2R1Y3Rpb24gLnRleHQtaG9sZGVyIHAge1xyXG4gICAgICAgIGZvbnQtc2l6ZToyMnB4O1xyXG4gICAgfVxyXG59XHJcblxyXG5AaW5jbHVkZSBkZXZpY2UteHNtLW9ubHkgIHtcclxuICAgIC5zdHJhdGVneS1pbnRyb2R1Y3Rpb24gLmJnIHtcclxuICAgICAgICBmb250LXNpemU6MTBweDtcclxuICAgICAgICBoZWlnaHQ6MzUwcHg7XHJcbiAgICB9XHJcbiAgICAuc3RyYXRlZ3ktaW50cm9kdWN0aW9uIHtcclxuICAgICAgICBmb250LXNpemU6MTBweDtcclxuICAgIH1cclxuICAgIC5zdHJhdGVneS1pbnRyb2R1Y3Rpb24gLnRleHQtaG9sZGVyIHAge1xyXG4gICAgICAgIGZvbnQtc2l6ZToyMHB4O1xyXG4gICAgfVxyXG59XHJcblxyXG5AaW5jbHVkZSBkZXZpY2UteHNtLWRvd24ge1xyXG4gICAgLnN0cmF0ZWd5LWludHJvZHVjdGlvbiAuYmcge1xyXG4gICAgICAgIGZvbnQtc2l6ZTo4cHg7XHJcbiAgICAgICAgaGVpZ2h0OjMwMHB4O1xyXG4gICAgfVxyXG4gICAgLnN0cmF0ZWd5LWludHJvZHVjdGlvbiB7XHJcbiAgICAgICAgZm9udC1zaXplOjhweDtcclxuICAgIH1cclxuICAgIC5zdHJhdGVneS1pbnRyb2R1Y3Rpb24gLnRleHQtaG9sZGVyIHAge1xyXG4gICAgICAgIGZvbnQtc2l6ZToxOHB4O1xyXG4gICAgfVxyXG5cclxufVxyXG5cclxuQG1lZGlhIChtYXgtd2lkdGg6JGRldmljZS1sZy13aWR0aCkge1xyXG4gICAgLnN0cmF0ZWd5LWludHJvZHVjdGlvbiAudGV4dC1ob2xkZXIge1xyXG4gICAgICAgIHBhZGRpbmc6MDtcclxuICAgIH1cclxuICAgIC5zdHJhdGVneS1pbnRyb2R1Y3Rpb24gLmJnIHtcclxuICAgICAgICBiYWNrZ3JvdW5kLWF0dGFjaG1lbnQ6IHNjcm9sbDtcclxuICAgIH1cclxufVxyXG5cclxuQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDowXFwwKSBhbmQgKG1pbi1yZXNvbHV0aW9uOiArNzJkcGkpIHtcclxuICAgIC8vIElFOSsgQ1NTXHJcbiAgICAuc3RyYXRlZ3ktaW50cm9kdWN0aW9uIC5iZyB7XHJcbiAgICAgICAgYmFja2dyb3VuZC1hdHRhY2htZW50OiBzY3JvbGwhaW1wb3J0YW50O1xyXG4gICAgfVxyXG59IiwiLy8gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxyXG4vLyBjb21wb25lbnRzL19wcmluY2lwbGVzLWludHJvZHVjdGlvbi5zY3NzXHJcbi8vID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cclxuXHJcbi8vIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cclxuLy8gQmFzaWMgU2V0dXBcclxuLy8gLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxyXG5cclxuXHJcbi5wcmluY2lwbGVzLWludHJvZHVjdGlvbiB7XHJcbiAgICBwYWRkaW5nOiAzLjVlbSAwIDZlbTtcclxuICAgIC5pY29uLWhvbGRlciB7XHJcbiAgICAgICAgbWluLWhlaWdodDogMTY4cHg7XHJcbiAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xyXG4gICAgICAgIG1hcmdpbi10b3A6IDIxcHg7XHJcbiAgICAgICAgJi5pY29uLTIgaW1ne1xyXG4gICAgICAgICAgICBsZWZ0OiAtNDJweDtcclxuICAgICAgICAgICAgYm90dG9tOiA2cHg7XHJcbiAgICAgICAgfVxyXG4gICAgICAgICYuaWNvbi0zIGltZ3tcclxuICAgICAgICAgICAgYm90dG9tOiAxNnB4O1xyXG4gICAgICAgIH1cclxuICAgIH1cclxuICAgIGltZyB7XHJcbiAgICAgICAgZGlzcGxheTpibG9jaztcclxuICAgICAgICBtYXJnaW46YXV0bztcclxuICAgICAgICBwb3NpdGlvbjphYnNvbHV0ZTtcclxuICAgICAgICBib3R0b206MDtcclxuICAgICAgICBsZWZ0OjA7XHJcbiAgICAgICAgcmlnaHQ6MDtcclxuICAgICAgICB0b3A6MDtcclxuICAgIH1cclxuICAgIGg0IHtcclxuICAgICAgICBmb250LXdlaWdodDogNzAwO1xyXG4gICAgICAgIGZvbnQtc2l6ZTogMzBweDtcclxuICAgICAgICBtYXJnaW46IDAuNGVtIDAgMDtcclxuICAgICAgICBsaW5lLWhlaWdodDogMS40O1xyXG4gICAgICAgIGxldHRlci1zcGFjaW5nOiAwLjJweDtcclxuICAgICAgICBmb250LWZhbWlseTokZm9udC1wcmltYXJ5O1xyXG4gICAgICAgIGNvbG9yOiM1NTU1NTU7XHJcbiAgICB9XHJcbiAgICBhLmJ0biB7XHJcbiAgICAgICAgbWFyZ2luLXRvcDogMi44ZW07XHJcbiAgICB9XHJcbn1cclxuXHJcbkBpbmNsdWRlIGRldmljZS1sZy1vbmx5ICB7XHJcbiAgICAucHJpbmNpcGxlcy1pbnRyb2R1Y3Rpb24ge1xyXG4gICAgICAgIGZvbnQtc2l6ZToxNnB4O1xyXG4gICAgfVxyXG4gICAgLnByaW5jaXBsZXMtaW50cm9kdWN0aW9uIGg0IHtcclxuICAgICAgICBmb250LXNpemU6MjRweDtcclxuICAgIH1cclxuXHJcbn1cclxuXHJcbkBpbmNsdWRlIGRldmljZS1tZC1vbmx5ICB7XHJcbiAgICAucHJpbmNpcGxlcy1pbnRyb2R1Y3Rpb24ge1xyXG4gICAgICAgIGZvbnQtc2l6ZToxNHB4O1xyXG4gICAgfVxyXG4gICAgLnByaW5jaXBsZXMtaW50cm9kdWN0aW9uIGg0IHtcclxuICAgICAgICBmb250LXNpemU6MjBweDtcclxuXHJcbiAgICB9XHJcblxyXG59XHJcbkBpbmNsdWRlIGRldmljZS1zbS1vbmx5ICB7XHJcbiAgICAucHJpbmNpcGxlcy1pbnRyb2R1Y3Rpb24ge1xyXG4gICAgICAgIGZvbnQtc2l6ZToxMHB4O1xyXG4gICAgfVxyXG4gICAgLnByaW5jaXBsZXMtaW50cm9kdWN0aW9uIGg0IHtcclxuICAgICAgICBmb250LXNpemU6MThweDtcclxuXHJcbiAgICB9XHJcbn1cclxuXHJcbkBpbmNsdWRlIGRldmljZS14c20tb25seSAge1xyXG4gICAgLnByaW5jaXBsZXMtaW50cm9kdWN0aW9uIHtcclxuICAgICAgICBmb250LXNpemU6OHB4O1xyXG4gICAgfVxyXG4gICAgLnByaW5jaXBsZXMtaW50cm9kdWN0aW9uIGltZyB7XHJcbiAgICAgICAgbWF4LWhlaWdodDo5MHB4O1xyXG4gICAgfVxyXG4gICAgLnByaW5jaXBsZXMtaW50cm9kdWN0aW9uIC5pY29uLWhvbGRlciB7XHJcbiAgICAgICAgbWluLWhlaWdodDo5MHB4O1xyXG4gICAgfVxyXG4gICAgLnByaW5jaXBsZXMtaW50cm9kdWN0aW9uIGg0IHtcclxuICAgICAgICBmb250LXNpemU6MjJweDtcclxuICAgIH1cclxufVxyXG5cclxuQGluY2x1ZGUgZGV2aWNlLXhzbS1kb3duIHtcclxuICAgIC5wcmluY2lwbGVzLWludHJvZHVjdGlvbiB7XHJcbiAgICAgICAgZm9udC1zaXplOjhweDtcclxuICAgIH1cclxuICAgIC5wcmluY2lwbGVzLWludHJvZHVjdGlvbiBpbWcge1xyXG4gICAgICAgIG1heC1oZWlnaHQ6ODVweDtcclxuICAgIH1cclxuICAgIC5wcmluY2lwbGVzLWludHJvZHVjdGlvbiAuaWNvbi1ob2xkZXIge1xyXG4gICAgICAgIG1pbi1oZWlnaHQ6ODVweDtcclxuICAgIH1cclxuICAgIC5wcmluY2lwbGVzLWludHJvZHVjdGlvbiBoNCB7XHJcbiAgICAgICAgZm9udC1zaXplOjIwcHg7XHJcbiAgICB9XHJcbn1cclxuXHJcbkBtZWRpYSAobWF4LXdpZHRoOiRkZXZpY2Utc20td2lkdGggKSB7XHJcbiAgICAucHJpbmNpcGxlcy1pbnRyb2R1Y3Rpb24gaDQge1xyXG4gICAgICAgIG1heC13aWR0aDo0MDBweDtcclxuICAgICAgICBtYXJnaW4tbGVmdDphdXRvO1xyXG4gICAgICAgIG1hcmdpbi1yaWdodDphdXRvO1xyXG4gICAgfVxyXG5cclxuICAgIC5wcmluY2lwbGVzLWludHJvZHVjdGlvbiAuaWNvbi1ob2xkZXIuaWNvbi0yIGltZyB7XHJcbiAgICAgICAgbGVmdDotMjRweDtcclxuICAgIH1cclxuICAgIC5wcmluY2lwbGVzLWludHJvZHVjdGlvbiAuaWNvbi1ob2xkZXIgaW1nIHtcclxuICAgICAgICBib3R0b206MCFpbXBvcnRhbnQ7XHJcbiAgICB9XHJcbn0iLCIuYm94ZXMge1xyXG4gICAgd2lkdGg6MTAwJTtcclxuICAgIC5ib3gge1xyXG4gICAgICAgIHBhZGRpbmctdG9wOiAyNS4wNiU7XHJcbiAgICAgICAgZmxvYXQ6bGVmdDtcclxuICAgICAgICBwb3NpdGlvbjpyZWxhdGl2ZTtcclxuICAgICAgICBiYWNrZ3JvdW5kLXNpemU6Y292ZXI7XHJcbiAgICAgICAgYmFja2dyb3VuZC1yZXBlYXQ6bm8tcmVwZWF0O1xyXG4gICAgICAgIGJhY2tncm91bmQtcG9zaXRpb246Y2VudGVyO1xyXG4gICAgICAgICYuYm94LTEge1xyXG4gICAgICAgICAgIGJhY2tncm91bmQtaW1hZ2U6dXJsKC4uL2ltYWdlcy9pbmRleGJveC0xLmpwZyk7XHJcbiAgICAgICAgfVxyXG4gICAgICAgICYuYm94LTIge1xyXG4gICAgICAgICAgICBiYWNrZ3JvdW5kLWltYWdlOnVybCguLi9pbWFnZXMvaW5kZXhib3gtMi5qcGcpO1xyXG4gICAgICAgIH1cclxuICAgICAgICAmLmJveC0zIHtcclxuICAgICAgICAgICAgYmFja2dyb3VuZC1pbWFnZTp1cmwoLi4vaW1hZ2VzL2luZGV4Ym94LTMuanBnKTtcclxuICAgICAgICB9XHJcbiAgICAgICAgJjphZnRlciB7XHJcbiAgICAgICAgICAgIGNvbnRlbnQ6Jyc7XHJcbiAgICAgICAgICAgIGRpc3BsYXk6YmxvY2s7XHJcbiAgICAgICAgICAgIGNsZWFyOmJvdGg7XHJcbiAgICAgICAgfVxyXG4gICAgICAgIC5ib3gtY29udGVudCB7XHJcbiAgICAgICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcclxuICAgICAgICAgICAgdG9wOiA1MCU7XHJcbiAgICAgICAgICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC01MCUpO1xyXG4gICAgICAgICAgICAtbXMtdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC01MCUpO1xyXG4gICAgICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTUwJSk7XHJcbiAgICAgICAgICAgIGxlZnQ6IDA7XHJcbiAgICAgICAgICAgIHJpZ2h0OiAwO1xyXG4gICAgICAgICAgICBtYXJnaW4tdG9wOi00cHg7XHJcbiAgICAgICAgICAgIGgzIHtcclxuICAgICAgICAgICAgICAgIGZvbnQtZmFtaWx5OiAkZm9udC1zZWNvbmRhcnk7XHJcbiAgICAgICAgICAgICAgICBjb2xvcjokY29sb3ItcmV2ZXJzZWQ7XHJcbiAgICAgICAgICAgICAgICBmb250LXNpemU6IDY1cHg7XHJcbiAgICAgICAgICAgICAgICBtYXJnaW46MCAwIDIwcHg7XHJcbiAgICAgICAgICAgIH1cclxuXHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG5cclxufVxyXG5cclxuXHJcbkBpbmNsdWRlIGRldmljZS1sZy1vbmx5ICB7XHJcblxyXG4gICAgLmJveGVzIC5ib3ggLmJveC1jb250ZW50IGgzIHtcclxuICAgICAgICBmb250LXNpemU6NTRweDtcclxuICAgIH1cclxuXHJcblxyXG59XHJcblxyXG5cclxuQGluY2x1ZGUgZGV2aWNlLXhzbS1kb3duIHtcclxuICAgIC5ib3hlcyAuYm94IC5ib3gtY29udGVudCBoMyB7XHJcbiAgICAgICAgZm9udC1zaXplOjU0cHg7XHJcbiAgICB9XHJcbn1cclxuXHJcbkBtZWRpYSAobWF4LXdpZHRoOiRkZXZpY2UtbGctd2lkdGggKSB7XHJcbiAgICAuYm94ZXMgLmJveCB7XHJcblxyXG4gICAgICAgIGZsb2F0Om5vbmU7XHJcbiAgICAgICAgd2lkdGg6MTAwJTtcclxuICAgICAgICBwYWRkaW5nLXRvcDogNzUuMTklO1xyXG4gICAgfVxyXG59XHJcbiIsIi5zbSB7XHJcbiAgICBsaSB7XHJcbiAgICAgICAgZGlzcGxheTogYmxvY2s7XHJcbiAgICAgICAgcGFkZGluZzogMDtcclxuICAgICAgICBmbG9hdDogbGVmdDtcclxuICAgICAgICAmOmhvdmVyIGltZyB7XHJcbiAgICAgICAgICAgIG9wYWNpdHk6MC43O1xyXG4gICAgICAgICAgICB0cmFuc2l0aW9uOjAuM3Mgb3BhY2l0eTtcclxuICAgICAgICB9XHJcbiAgICB9XHJcbiAgICBpbWcge1xyXG4gICAgICAgIG1hcmdpbjogMDtcclxuICAgICAgICBmbG9hdDogbGVmdDtcclxuICAgIH1cclxuICAgIHVsIHtcclxuICAgICAgICAmOmFmdGVyIHtcclxuICAgICAgICAgICAgY29udGVudDonJztcclxuICAgICAgICAgICAgZGlzcGxheTpibG9jaztcclxuICAgICAgICAgICAgY2xlYXI6Ym90aDtcclxuICAgICAgICB9XHJcbiAgICB9XHJcblxyXG59IiwiLnNzLXdyYXBwZXIge1xyXG4gICAgb3ZlcmZsb3c6IGhpZGRlbjtcclxuICAgIHdpZHRoOiAxMDAlO1xyXG4gICAgaGVpZ2h0OiAxMDAlO1xyXG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xyXG4gICAgei1pbmRleDogMTtcclxuICAgIGZsb2F0OiBsZWZ0O1xyXG59XHJcblxyXG4uc3MtY29udGVudCB7XHJcbiAgICBoZWlnaHQ6IDEwMCU7XHJcbiAgICB3aWR0aDogY2FsYygxMDAlICsgMThweCk7XHJcbiAgICBwYWRkaW5nOiAwIDAgMCAwO1xyXG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xyXG4gICAgb3ZlcmZsb3c6IGF1dG87XHJcbiAgICBib3gtc2l6aW5nOiBib3JkZXItYm94O1xyXG59XHJcblxyXG4uc3MtY29udGVudC5ydGwge1xyXG4gICAgd2lkdGg6IGNhbGMoMTAwJSArIDE4cHgpO1xyXG4gICAgcmlnaHQ6IGF1dG87XHJcbn1cclxuXHJcbi5zcy1zY3JvbGwge1xyXG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xyXG4gICAgYmFja2dyb3VuZDogcmdiYSg5MCwgODQsIDg0LCAwLjM1KTtcclxuICAgIHdpZHRoOiA5cHg7XHJcbiAgICBib3JkZXItcmFkaXVzOiA0cHg7XHJcbiAgICB0b3A6IDA7XHJcbiAgICB6LWluZGV4OiAyO1xyXG4gICAgY3Vyc29yOiBwb2ludGVyO1xyXG4gICAgb3BhY2l0eTogMC41O1xyXG4gICAgdHJhbnNpdGlvbjogb3BhY2l0eSAwLjI1cyBsaW5lYXI7XHJcbn1cclxuXHJcbi5zcy1oaWRkZW4ge1xyXG4gICAgZGlzcGxheTogbm9uZTtcclxufVxyXG5cclxuLnNzLWNvbnRhaW5lcjpob3ZlciAuc3Mtc2Nyb2xsLFxyXG4uc3MtY29udGFpbmVyOmFjdGl2ZSAuc3Mtc2Nyb2xsIHtcclxuICAgIG9wYWNpdHk6IDE7XHJcbn1cclxuXHJcbi5zcy1ncmFiYmVkIHtcclxuICAgIC1vLXVzZXItc2VsZWN0OiBub25lO1xyXG4gICAgLW1zLXVzZXItc2VsZWN0OiBub25lO1xyXG4gICAgLW1vei11c2VyLXNlbGVjdDogbm9uZTtcclxuICAgIC13ZWJraXQtdXNlci1zZWxlY3Q6IG5vbmU7XHJcbiAgICB1c2VyLXNlbGVjdDogbm9uZTtcclxufSIsIi8vID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cclxuICAgLy8gcGFnZXMvX2luZGl2aWR1YWwuc2Nzc1xyXG4vLyA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XHJcblxyXG4vKlxyXG4gICBGb3IgZWFjaCBzcGVjaWZpYyBwYWdlIGxheW91dCBtYWtlIGEgY29weSBvZiB0aGlzIGZpbGUgYW5kIG5hbWUgaXQgXHJcbiAgIHNwZWNpZmljYWxseSBmb3IgdGhlIHBhZ2UgeW91IGFyZSBzdHlsaW5nLlxyXG5cclxuICAgRXhhbXBsZTogX2V2ZW50cy5zY3NzXHJcbiovXHJcblxyXG4vLyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXHJcbiAgIC8vIEJhc2ljIFNldHVwXHJcbi8vIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0iLCIvLyA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XHJcbi8vIHBhZ2VzL19zdHJhdGVnaWMuc2Nzc1xyXG4vLyA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XHJcblxyXG4vLyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXHJcbi8vIEJhc2ljIFNldHVwXHJcbi8vIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cclxuXHJcblxyXG5cclxuLy8gLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxyXG4vLyBTVFJBVEVHSUMgUFJJT1JJVElFUyBQQUdFXHJcbi8vIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cclxuXHJcbi5sLWdyaWQtcHJpb3JpdGllcy1oZWFkZXIge1xyXG4gICAgaDEge1xyXG4gICAgICAgIG1hcmdpbjogMC44ZW0gMCAwO1xyXG4gICAgICAgIGxldHRlci1zcGFjaW5nOiAtMC4xcHg7XHJcbiAgICB9XHJcbiAgICBoMStoMiB7XHJcbiAgICAgICAgbWFyZ2luLXRvcDogLTAuMjVlbTtcclxuICAgIH1cclxufVxyXG4ucHJpb3JpdGllcy1oZWFkZXIgKyAucHJpb3JpdHktdGFicyB7XHJcblxyXG4gICAgbWFyZ2luLXRvcDogLTZweDtcclxuICAgIC5wcmlvcml0eS1jb250ZW50LS1tYWluIHAge1xyXG4gICAgICAgIG1hcmdpbjogMCAwIDEuNjhlbTtcclxuICAgICAgICBAaW5jbHVkZSBkZXZpY2UteGxnIHtcclxuICAgICAgICAgICAgZm9udC1zaXplOjI1cHg7XHJcbiAgICAgICAgICAgIGxpbmUtaGVpZ2h0OiAxLjc7XHJcbiAgICAgICAgICAgIGxldHRlci1zcGFjaW5nOiAwLjEzcHg7XHJcblxyXG4gICAgICAgIH1cclxuXHJcbiAgICAgICAgJjpmaXJzdC1jaGlsZCB7XHJcbiAgICAgICAgICAgIG1hcmdpbjogLTAuNXJlbSAwIDMuMnJlbTtcclxuICAgICAgICB9XHJcbiAgICAgICAgJjpsYXN0LWNoaWxkIHtcclxuICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTowO1xyXG4gICAgICAgIH1cclxuICAgICAgICAmICsgc3Ryb25nIHtcclxuICAgICAgICAgICAgZGlzcGxheTpibG9jaztcclxuICAgICAgICAgICAgbWFyZ2luOiAwIDAgMC4yNmVtO1xyXG4gICAgICAgICAgICBmb250LXdlaWdodDo3MDA7XHJcbiAgICAgICAgICAgIGZvbnQtc2l6ZToyNXB4O1xyXG4gICAgICAgICAgICAmICsgcCB7XHJcbiAgICAgICAgICAgICAgICBsZXR0ZXItc3BhY2luZzogLTAuMDhweDtcclxuICAgICAgICAgICAgICAgICYgKyBwIHtcclxuICAgICAgICAgICAgICAgICAgICBsZXR0ZXItc3BhY2luZzogMC4wNDVweDtcclxuICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuICAgIH1cclxuICAgIC5wcmlvcml0eS10YWJzLS1oZWFkZXIgLnByaW9yaXR5LXRhYiB7XHJcbiAgICAgICAgYSB7XHJcbiAgICAgICAgICAgIHBvc2l0aW9uOmFic29sdXRlO1xyXG4gICAgICAgICAgICBsZWZ0Oi0xNXB4O1xyXG4gICAgICAgICAgICB0b3A6MDtcclxuICAgICAgICAgICAgcmlnaHQ6LTE1cHg7XHJcbiAgICAgICAgICAgIGJvdHRvbTogLTM0cHg7XHJcbiAgICAgICAgICAgIG1hcmdpbjphdXRvO1xyXG4gICAgICAgICAgICB6LWluZGV4OjQ7XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG4gICAgLnByaW9yaXR5LWNvbnRlbnQge1xyXG4gICAgICAgIHBhZGRpbmctYm90dG9tOjA7XHJcbiAgICB9XHJcbn1cclxuXHJcbi5sLWdyaWQtcHJpb3JpdHktZG93biB7XHJcbiAgICAuYWNjb21wbGlzaC1hcnJvdyB7XHJcbiAgICAgICAgcG9zaXRpb246YWJzb2x1dGU7XHJcbiAgICAgICAgbGVmdDotMTVweDtcclxuICAgICAgICB0b3A6MDtcclxuICAgICAgICBib3R0b206MDtcclxuICAgICAgICBtYXJnaW46YXV0bztcclxuICAgICAgICBiYWNrZ3JvdW5kOiNjY2NjY2M7XHJcbiAgICAgICAgbWF4LXdpZHRoOjI4M3B4O1xyXG4gICAgICAgIHdpZHRoOiAxMDAlO1xyXG4gICAgICAgIHN2ZyB7XHJcbiAgICAgICAgICAgIHdpZHRoOjMuNjI1cmVtO1xyXG4gICAgICAgICAgICBwb3NpdGlvbjphYnNvbHV0ZTtcclxuICAgICAgICAgICAgaGVpZ2h0OjEwMCU7XHJcbiAgICAgICAgICAgIHJpZ2h0OiAtMy42MjVyZW07XHJcbiAgICAgICAgfVxyXG4gICAgICAgIHNwYW4ge1xyXG4gICAgICAgICAgICBmb250LWZhbWlseTokZm9udC1zZWNvbmRhcnk7XHJcbiAgICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xyXG4gICAgICAgICAgICB6LWluZGV4OiAyO1xyXG4gICAgICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XHJcbiAgICAgICAgICAgIHRvcDogNTAlO1xyXG4gICAgICAgICAgICBsZWZ0OiA1OHB4O1xyXG4gICAgICAgICAgICByaWdodDogMDtcclxuICAgICAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC01MCUpO1xyXG4gICAgICAgICAgICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xyXG4gICAgICAgICAgICBmb250LXNpemU6IDQwcHg7XHJcbiAgICAgICAgICAgIGZvbnQtd2VpZ2h0OiA3MDA7XHJcbiAgICAgICAgICAgIGxpbmUtaGVpZ2h0OiAxLjAyO1xyXG4gICAgICAgICAgICBsZXR0ZXItc3BhY2luZzogMC4zcHg7XHJcbiAgICAgICAgICAgIGJvdHRvbTogYXV0bztcclxuICAgICAgICAgICAgbWFyZ2luOiAxMnB4IGF1dG8gMDtcclxuICAgICAgICAgICAgYiB7XHJcbiAgICAgICAgICAgICAgICBkaXNwbGF5OmJsb2NrO1xyXG4gICAgICAgICAgICAgICAgbWFyZ2luLXRvcDogLTdweDtcclxuICAgICAgICAgICAgICAgIGZvbnQtc2l6ZToxMzVweDtcclxuICAgICAgICAgICAgICAgIGxldHRlci1zcGFjaW5nOm5vcm1hbDtcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuICAgIH1cclxuICAgIC5hY2NvbXBsaXNoLWxpc3Qge1xyXG4gICAgICAgIHBhZGRpbmc6IDIuN2VtIDAgMi43ZW0gMS40ZW07XHJcblxyXG4gICAgfVxyXG4gICAgb2wge1xyXG4gICAgICAgIHBhZGRpbmc6MDtcclxuICAgICAgICBtYXJnaW46MDtcclxuXHJcbiAgICAgICAgbGkge1xyXG4gICAgICAgICAgICBjb2xvcjp3aGl0ZTtcclxuICAgICAgICAgICAgZm9udC1zaXplOjI1cHg7XHJcbiAgICAgICAgICAgIGxpbmUtaGVpZ2h0OjEuNzI7XHJcbiAgICAgICAgICAgIG1hcmdpbjowIDAgMS42OGVtO1xyXG4gICAgICAgICAgICBwYWRkaW5nOjA7XHJcbiAgICAgICAgICAgIGxldHRlci1zcGFjaW5nOiAwLjE2cHg7XHJcbiAgICAgICAgICAgICY6bGFzdC1jaGlsZCB7XHJcbiAgICAgICAgICAgICAgICBtYXJnaW4tYm90dG9tOjA7XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICB9XHJcbiAgICB9XHJcbn1cclxuLy8gLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxyXG4vLyBTVFJBVEVHSUMgUFJJT1JJVElFUyBURVhUIFVOREVSIFRBQlNcclxuLy8gLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxyXG5cclxuLnN0cmF0ZWdpYy5zdGFuZGFyZC11bmRlciB7XHJcbiAgICBwYWRkaW5nOiA2LjI1ZW0gMCA3LjE2ZW07XHJcbn1cclxuXHJcbkBtZWRpYSAobWF4LXdpZHRoOiRkZXZpY2UteGxnLXdpZHRoKXtcclxuICAgIC5sLWdyaWQtcHJpb3JpdGllcy1oZWFkZXIgaDEge1xyXG4gICAgICAgIGJyIHtcclxuICAgICAgICAgICAgZGlzcGxheTpub25lO1xyXG4gICAgICAgIH1cclxuICAgIH1cclxufVxyXG5cclxuXHJcbkBtZWRpYSAobWF4LXdpZHRoOiRkZXZpY2UtbGctd2lkdGgpe1xyXG4gICAgLnByaW9yaXRpZXMtaGVhZGVyICsgLnByaW9yaXR5LXRhYnMgLnByaW9yaXR5LWNvbnRlbnQtLW1haW4gcCArIHN0cm9uZyB7XHJcbiAgICAgICAgZm9udC1zaXplOiAxLjg3NXJlbTtcclxuICAgICAgICBsaW5lLWhlaWdodDogMS40O1xyXG4gICAgfVxyXG4gICAgLmwtZ3JpZC1wcmlvcml0eS1kb3duIG9sIGxpIHtcclxuICAgICAgICBmb250LXNpemU6IDEuODc1cmVtO1xyXG4gICAgfVxyXG4gICAgLmwtZ3JpZC1wcmlvcml0aWVzLWhlYWRlciBoMSB7XHJcbiAgICAgICAgbGluZS1oZWlnaHQ6IDAuODM7XHJcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogMC4xNGVtO1xyXG4gICAgfVxyXG5cclxufVxyXG5AbWVkaWEgKG1heC13aWR0aDokZGV2aWNlLW1kLXdpZHRoKXtcclxuICAgIC5wcmlvcml0aWVzLWhlYWRlciArIC5wcmlvcml0eS10YWJzIC5wcmlvcml0eS1jb250ZW50LS1tYWluIHAgKyBzdHJvbmcge1xyXG4gICAgICAgIG1hcmdpbi1ib3R0b206IC0xcmVtO1xyXG4gICAgfVxyXG4gICAgLmwtZ3JpZC1wcmlvcml0eS1kb3duIC5hY2NvbXBsaXNoLWFycm93IHtcclxuICAgICAgICBwb3NpdGlvbjpzdGF0aWM7XHJcbiAgICAgICAgd2lkdGg6MTAwJTtcclxuICAgICAgICBtYXgtd2lkdGg6IG5vbmU7XHJcbiAgICAgICAgbWFyZ2luOjA7XHJcbiAgICB9XHJcbiAgICAubC1ncmlkLXByaW9yaXR5LWRvd24gLmFjY29tcGxpc2gtYXJyb3cgc3BhbiB7XHJcbiAgICAgICAgcG9zaXRpb246c3RhdGljO1xyXG4gICAgICAgIHRyYW5zZm9ybTpub25lO1xyXG4gICAgICAgIG1hcmdpbjowO1xyXG4gICAgICAgIG1hcmdpbjogMCAtMTVweDtcclxuICAgICAgICBiYWNrZ3JvdW5kOiNjY2NjY2M7XHJcbiAgICAgICAgcGFkZGluZzogMC43ZW0gMCAwLjFlbTtcclxuICAgICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XHJcbiAgICB9XHJcbiAgICAubC1ncmlkLXByaW9yaXR5LWRvd24gLmFjY29tcGxpc2gtYXJyb3cgc3ZnIHtcclxuICAgICAgICBkaXNwbGF5Om5vbmU7XHJcbiAgICB9XHJcblxyXG59XHJcblxyXG5AaW5jbHVkZSBkZXZpY2UteGxnIHtcclxuICAgIC5sLWdyaWQtcHJpb3JpdHktZG93biBvbCBsaSB7XHJcbiAgICAgICAgZm9udC1zaXplOiAxLjVyZW07XHJcbiAgICB9XHJcbn1cclxuXHJcbkBpbmNsdWRlIGRldmljZS1sZy1vbmx5ICB7XHJcbiAgLnByaW9yaXRpZXMtaGVhZGVyIHtcclxuICAgICAgcC5sZWFkIHtcclxuICAgICAgICAgIGZvbnQtc2l6ZToyNHB4O1xyXG4gICAgICB9XHJcbiAgfVxyXG4gICAgLmwtZ3JpZC1wcmlvcml0eS1kb3duIHtcclxuICAgICAgICBtYXJnaW4tbGVmdDotMTVweDtcclxuICAgICAgICBtYXJnaW4tcmlnaHQ6LTE1cHg7XHJcbiAgICB9XHJcbiAgICAubC1ncmlkLXByaW9yaXR5LWRvd24gLmFjY29tcGxpc2gtbGlzdCB7XHJcbiAgICAgICAgcGFkZGluZzoyLjdlbSAwIDIuN2VtIDNlbTtcclxuICAgIH1cclxuICAgIC5sLWdyaWQtcHJpb3JpdHktZG93biAuYWNjb21wbGlzaC1hcnJvdyBzcGFuIHtcclxuICAgICAgICBsZWZ0OjMwcHg7XHJcbiAgICB9XHJcblxyXG5cclxuXHJcbn1cclxuXHJcbkBpbmNsdWRlIGRldmljZS1tZC1vbmx5ICB7XHJcbiAgICAucHJpb3JpdGllcy1oZWFkZXIge1xyXG4gICAgICAgIHAubGVhZCB7XHJcbiAgICAgICAgICAgIGZvbnQtc2l6ZToyM3B4O1xyXG4gICAgICAgIH1cclxuICAgIH1cclxuICAgIC5sLWdyaWQtcHJpb3JpdHktZG93biAuYWNjb21wbGlzaC1saXN0IHtcclxuICAgICAgICBwYWRkaW5nOjIuMmVtIDAgMi4yZW0gM2VtO1xyXG5cclxuICAgIH1cclxuICAgIC5sLWdyaWQtcHJpb3JpdHktZG93biAuYWNjb21wbGlzaC1hcnJvdyBzcGFuIHtcclxuICAgICAgICBsZWZ0OjA7XHJcbiAgICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xyXG4gICAgICAgIGZvbnQtc2l6ZTozMHB4O1xyXG4gICAgfVxyXG4gICAgLmwtZ3JpZC1wcmlvcml0eS1kb3duIC5hY2NvbXBsaXNoLWFycm93IHNwYW4gYiB7XHJcbiAgICAgICAgZm9udC1zaXplOjk2cHg7XHJcbiAgICB9XHJcbiAgICAubC1ncmlkLXByaW9yaXR5LWRvd24gb2wgbGkge1xyXG4gICAgICAgIGZvbnQtc2l6ZTogMS42cmVtO1xyXG4gICAgICAgIG1hcmdpbjogMCAwIDEuM2VtO1xyXG4gICAgfVxyXG5cclxufVxyXG5cclxuQGluY2x1ZGUgZGV2aWNlLXNtLW9ubHkge1xyXG4gICAgLnByaW9yaXRpZXMtaGVhZGVyIHtcclxuICAgICAgICBwLmxlYWQge1xyXG4gICAgICAgICAgICBmb250LXNpemU6MjFweDtcclxuICAgICAgICB9XHJcbiAgICB9XHJcbiAgICAubC1ncmlkLXByaW9yaXR5LWRvd24gLmFjY29tcGxpc2gtYXJyb3cgc3BhbiB7XHJcbiAgICAgICAgZm9udC1zaXplOjMwcHg7XHJcblxyXG4gICAgfVxyXG4gICAgLmwtZ3JpZC1wcmlvcml0eS1kb3duIC5hY2NvbXBsaXNoLWFycm93IHNwYW4gYiB7XHJcbiAgICAgICAgZm9udC1zaXplOjExNXB4O1xyXG4gICAgfVxyXG4gICAgLmwtZ3JpZC1wcmlvcml0eS1kb3duIG9sIGxpIHtcclxuICAgICAgICBtYXJnaW4tYm90dG9tOjEuNGVtO1xyXG4gICAgfVxyXG4gICAgLmwtZ3JpZC1wcmlvcml0eS1kb3duIG9sIHtcclxuICAgICAgICBwYWRkaW5nLWxlZnQ6IDFlbTtcclxuICAgIH1cclxuICAgIC5sLWdyaWQtcHJpb3JpdHktZG93biAuYWNjb21wbGlzaC1saXN0IHtcclxuICAgICAgICBwYWRkaW5nOiAxLjVlbSAyMnB4O1xyXG4gICAgfVxyXG59XHJcblxyXG5AaW5jbHVkZSBkZXZpY2UteHNtLW9ubHkgIHtcclxuICAgIC5wcmlvcml0aWVzLWhlYWRlciB7XHJcbiAgICAgICAgcC5sZWFkIHtcclxuICAgICAgICAgICAgZm9udC1zaXplOjIwcHg7XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG4gICAgLmwtZ3JpZC1wcmlvcml0eS1kb3duIC5hY2NvbXBsaXNoLWFycm93IHNwYW4ge1xyXG4gICAgICAgIGZvbnQtc2l6ZToyOHB4O1xyXG5cclxuICAgIH1cclxuICAgIC5sLWdyaWQtcHJpb3JpdHktZG93biAuYWNjb21wbGlzaC1hcnJvdyBzcGFuIGIge1xyXG4gICAgICAgIGZvbnQtc2l6ZToxMTBweDtcclxuICAgIH1cclxuXHJcbiAgICAubC1ncmlkLXByaW9yaXR5LWRvd24gb2wgbGkge1xyXG4gICAgICAgIG1hcmdpbi1ib3R0b206MS4zZW07XHJcbiAgICB9XHJcbn1cclxuQGluY2x1ZGUgZGV2aWNlLXhzbS1kb3duIHtcclxuICAgIC5wcmlvcml0aWVzLWhlYWRlciB7XHJcbiAgICAgICAgcC5sZWFkIHtcclxuICAgICAgICAgICAgZm9udC1zaXplOjE4cHg7XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG4gICAgLmwtZ3JpZC1wcmlvcml0eS1kb3duIC5hY2NvbXBsaXNoLWFycm93IHNwYW4ge1xyXG4gICAgICAgIGZvbnQtc2l6ZToyOHB4O1xyXG5cclxuICAgIH1cclxuICAgIC5sLWdyaWQtcHJpb3JpdHktZG93biAuYWNjb21wbGlzaC1hcnJvdyBzcGFuIGIge1xyXG4gICAgICAgIGZvbnQtc2l6ZToxMTBweDtcclxuICAgIH1cclxuXHJcbiAgICAubC1ncmlkLXByaW9yaXR5LWRvd24gb2wgbGkge1xyXG4gICAgICAgIG1hcmdpbi1ib3R0b206MS4yZW07XHJcbiAgICB9XHJcbn1cclxuXHJcbkBtZWRpYSAobWF4LXdpZHRoOiRkZXZpY2UtbGctd2lkdGgpIHtcclxuICAgIC5sLWdyaWQtcHJpb3JpdHktZG93biB7XHJcbiAgICAgICAgbWFyZ2luLWxlZnQ6LTMwcHg7XHJcbiAgICAgICAgbWFyZ2luLXJpZ2h0Oi0zMHB4O1xyXG4gICAgfVxyXG5cclxufVxyXG5cclxuQG1lZGlhIChtYXgtd2lkdGg6JGRldmljZS1zbS13aWR0aCkge1xyXG4gICAgLnByaW9yaXRpZXMtaGVhZGVyICsgLnByaW9yaXR5LXRhYnMgLnByaW9yaXR5LWNvbnRlbnQtLW1haW4gcCArIHN0cm9uZyB7XHJcbiAgICAgICAgZm9udC1zaXplOjE4cHg7XHJcbiAgICB9XHJcbiAgICAubC1ncmlkLXByaW9yaXR5LWRvd24gb2wge1xyXG4gICAgICAgIHBhZGRpbmctbGVmdDoxOHB4O1xyXG4gICAgfVxyXG4gICAgLmwtZ3JpZC1wcmlvcml0eS1kb3duIG9sIGxpIHtcclxuICAgICAgICBmb250LXNpemU6MThweDtcclxuICAgICAgICBsaW5lLWhlaWdodDogbm9ybWFsO1xyXG4gICAgfVxyXG4gICAgLmwtZ3JpZC1wcmlvcml0eS1kb3duIC5hY2NvbXBsaXNoLWxpc3Qge1xyXG4gICAgICAgIHBhZGRpbmc6IDIwcHggMTVweDtcclxuICAgIH1cclxuICAgIC5wcmlvcml0eS10YWJzLS1jb250ZW50IC5sLWdyaWQtcHJpb3JpdHkge1xyXG4gICAgICAgIG1hcmdpbjowIC0zMHB4O1xyXG4gICAgfVxyXG59IiwiLy8gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxyXG4vLyBwYWdlcy9fc3RhbmRhcmQuc2Nzc1xyXG4vLyA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XHJcblxyXG4vLyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXHJcbi8vIEJhc2ljIFNldHVwXHJcbi8vIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cclxuXHJcbi5zdGFuZGFyZC1oZWFkZXIge1xyXG4gICAgaDEge1xyXG4gICAgICAgIG1hcmdpbjogMC45M2VtIDAgMDtcclxuICAgICAgICBsaW5lLWhlaWdodDogMC44MztcclxuICAgICAgICBsZXR0ZXItc3BhY2luZzogLTAuMDNweDtcclxuICAgICAgICAmICsgaDIge1xyXG4gICAgICAgICAgICBtYXJnaW46IDAuMWVtIDAgMDtcclxuICAgICAgICB9XHJcbiAgICB9XHJcbiAgICAubGVhZCB7XHJcbiAgICAgICAgbWFyZ2luOiAxLjc2ZW0gMCAwO1xyXG4gICAgICAgIGxpbmUtaGVpZ2h0OiAxLjU1O1xyXG4gICAgICAgIGxldHRlci1zcGFjaW5nOiAwLjA3cHg7XHJcbiAgICB9XHJcbiAgICBoMSArIC5sZWFkIHtcclxuICAgICAgICBtYXJnaW4tdG9wOjEuNThlbTtcclxuICAgICAgICBtYXJnaW4tYm90dG9tOiAwLjA0ZW07XHJcbiAgICB9XHJcbiAgICBwYWRkaW5nLWJvdHRvbTogNS41ZW07XHJcbiAgICAmLndpdGhvdXRCZyB7XHJcbiAgICAgICAgcGFkZGluZy1ib3R0b206MDtcclxuICAgIH1cclxufVxyXG5cclxuXHJcbi5zdGFuZGFyZC1iZyB7XHJcbiAgICBoZWlnaHQ6NzUwcHg7XHJcbiAgICBiYWNrZ3JvdW5kLXNpemU6Y292ZXI7XHJcbiAgICBiYWNrZ3JvdW5kLXBvc2l0aW9uOnRvcCBjZW50ZXI7XHJcbiAgICBiYWNrZ3JvdW5kLWF0dGFjaG1lbnQ6IGZpeGVkO1xyXG5cclxufVxyXG5cclxuLnN0YW5kYXJkLXVuZGVyIHtcclxuICAgIHBhZGRpbmc6IDUuOThlbSAwIDUuNzJlbTtcclxuICAgIC5sLWdyaWQtc3RhbmRhcmQtdW5kZXItdGhyZWUge1xyXG4gICAgICAgIG1hcmdpbjogMCAtMTVweDtcclxuICAgICAgICAuZ3JpZC1pdGVtLTQge1xyXG4gICAgICAgICAgICBtYXJnaW4tdG9wOjEuNWVtO1xyXG4gICAgICAgICAgICBoMyB7XHJcbiAgICAgICAgICAgICAgICBtYXJnaW46IC0wLjM1ZW0gMCAwLjQ0ZW07XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICB9XHJcbiAgICB9XHJcbiAgICAubC1ncmlkLXN0YW5kYXJkLXVuZGVyIHtcclxuICAgICAgICAuaGFsZiB7XHJcbiAgICAgICAgICAgIGZsb2F0OmxlZnQ7XHJcbiAgICAgICAgICAgIHdpZHRoOjUwJTtcclxuICAgICAgICAgICAgcCB7XHJcbiAgICAgICAgICAgICAgICBkaXNwbGF5OmlubGluZS1ibG9jaztcclxuICAgICAgICAgICAgICAgIHRleHQtYWxpZ246bGVmdDtcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuICAgICAgICBoMiB7XHJcbiAgICAgICAgICAgIG1hcmdpbjogLTAuMjVlbSAwIDAuNDRlbTtcclxuICAgICAgICAgICAgbGV0dGVyLXNwYWNpbmc6IC0wLjA4cHg7XHJcbiAgICAgICAgICAgIGxpbmUtaGVpZ2h0OiAxLjMyO1xyXG4gICAgICAgIH1cclxuICAgICAgICAuZ3JpZC1pdGVtIHA6Zmlyc3QtY2hpbGQge1xyXG4gICAgICAgICAgICBtYXJnaW4tdG9wOiAtMC4yNWVtO1xyXG4gICAgICAgIH1cclxuICAgICAgICBwIHtcclxuICAgICAgICAgICAgbGluZS1oZWlnaHQ6IDEuNDU7XHJcbiAgICAgICAgICAgIGxldHRlci1zcGFjaW5nOiAtMC4wNXB4O1xyXG4gICAgICAgICAgICBtYXJnaW46IDAgMCAxLjM4ZW07XHJcbiAgICAgICAgICAgICYud2l0aEJpZ0JyZWFrIHtcclxuICAgICAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IDQuMjNlbTtcclxuXHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgJjpsYXN0LWNoaWxkIHtcclxuICAgICAgICAgICAgICAgIG1hcmdpbi1ib3R0b206MDtcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAmICsgaDIge1xyXG4gICAgICAgICAgICAgICAgbWFyZ2luLXRvcDogMS40NWVtO1xyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG4gICAgICAgIHVsIHtcclxuICAgICAgICAgICAgcGFkZGluZzowO1xyXG4gICAgICAgICAgICBsaSB7XHJcbiAgICAgICAgICAgICAgICBwYWRkaW5nOjAgMCA2cHggMThweDtcclxuICAgICAgICAgICAgICAgIHBvc2l0aW9uOnJlbGF0aXZlO1xyXG4gICAgICAgICAgICAgICAgbGlzdC1zdHlsZS10eXBlOm5vbmU7XHJcbiAgICAgICAgICAgICAgICAmOmJlZm9yZSB7XHJcbiAgICAgICAgICAgICAgICAgICAgY29udGVudDonJztcclxuICAgICAgICAgICAgICAgICAgICBwb3NpdGlvbjphYnNvbHV0ZTtcclxuICAgICAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kOiM1NTU1NTU7XHJcbiAgICAgICAgICAgICAgICAgICAgd2lkdGg6NnB4O1xyXG4gICAgICAgICAgICAgICAgICAgIGhlaWdodDo2cHg7XHJcbiAgICAgICAgICAgICAgICAgICAgdG9wOiAxMXB4O1xyXG4gICAgICAgICAgICAgICAgICAgIGJvcmRlci1yYWRpdXM6IDJweDtcclxuICAgICAgICAgICAgICAgICAgICBtYXJnaW46YXV0bztcclxuICAgICAgICAgICAgICAgICAgICBsZWZ0OjRweDtcclxuICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuICAgICAgICBibG9ja3F1b3RlIHtcclxuICAgICAgICAgICAgbWFyZ2luOiAyLjY0ZW0gMmVtIDIuNDRlbTtcclxuICAgICAgICAgICAgZm9udC1zaXplOiAzMHB4O1xyXG4gICAgICAgICAgICBwIHtcclxuICAgICAgICAgICAgICAgIGZvbnQtc2l6ZTogMzBweDtcclxuICAgICAgICAgICAgICAgIGxpbmUtaGVpZ2h0OiAxLjQ7XHJcbiAgICAgICAgICAgICAgICBsZXR0ZXItc3BhY2luZzogLTAuMTRweDtcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuICAgICAgICBmaWd1cmUge1xyXG4gICAgICAgICAgICBib3JkZXI6MDtcclxuICAgICAgICB9XHJcbiAgICAgICAgZmlndXJlIGltZyB7XHJcbiAgICAgICAgICAgIHBhZGRpbmctYm90dG9tOiAwLjQ4ZW07XHJcbiAgICAgICAgfVxyXG4gICAgICAgIGZpZ3VyZSBmaWdjYXB0aW9uIHtcclxuICAgICAgICAgICAgbGluZS1oZWlnaHQ6IDEuNjQ7XHJcbiAgICAgICAgICAgIGxldHRlci1zcGFjaW5nOiAtMC4wOHB4O1xyXG4gICAgICAgIH1cclxuICAgICAgICAmICsgLmwtZ3JpZC1zdGFuZGFyZC11bmRlciB7XHJcbiAgICAgICAgICAgIHBhZGRpbmctdG9wOiA1LjQ1ZW07XHJcbiAgICAgICAgICAgICYuc21hbGxlclBhZGRpbmcge1xyXG4gICAgICAgICAgICAgICAgcGFkZGluZy10b3A6NC4zZW07XHJcbiAgICAgICAgICAgIH1cclxuXHJcbiAgICAgICAgfVxyXG5cclxuICAgIH1cclxuICAgICYuc3RyYXRlZ2ljIHtcclxuICAgICAgICAubC1ncmlkLXN0YW5kYXJkLXVuZGVyIHtcclxuICAgICAgICAgICAgJiArIC5sLWdyaWQtc3RhbmRhcmQtdW5kZXIge1xyXG4gICAgICAgICAgICAgICAgcGFkZGluZy10b3A6IDQuNzZlbTtcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuICAgIH1cclxuICAgICYuYmFja2dyb3VuZCB7XHJcbiAgICAgICAgLmltYWdlLWFkZGl0aW9uYWwtbWFyZ2luIHtcclxuICAgICAgICAgICAgbWFyZ2luLXRvcDogNC4yNWVtO1xyXG4gICAgICAgIH1cclxuICAgIH1cclxuICAgICYuYWJvdXQge1xyXG4gICAgICAgIHBhZGRpbmctYm90dG9tOiAxLjVlbTtcclxuICAgIH1cclxuXHJcbiAgICAuYm94LWxheW91dCB7XHJcbiAgICAgICAgLmdyaWQtaXRlbSB7XHJcbiAgICAgICAgICAgIG1hcmdpbi1ib3R0b206MjVweDtcclxuICAgICAgICB9XHJcbiAgICAgICAgaW1nIHtcclxuICAgICAgICAgICAgbWFyZ2luOjA7XHJcbiAgICAgICAgfVxyXG4gICAgICAgIC5ncmlkLWl0ZW0tYm94IHtcclxuICAgICAgICAgICAgcG9zaXRpb246cmVsYXRpdmU7XHJcbiAgICAgICAgfVxyXG4gICAgICAgIC5udW1iZXItY29udGFpbmVyIHtcclxuICAgICAgICAgICAgcG9zaXRpb246cmVsYXRpdmU7XHJcbiAgICAgICAgICAgIHBhZGRpbmctdG9wOiA5Ni43NSU7XHJcbiAgICAgICAgICAgIGJhY2tncm91bmQ6IzAwNzFjZTtcclxuICAgICAgICB9XHJcbiAgICAgICAgLm51bWJlciB7XHJcblxyXG4gICAgICAgICAgICB0ZXh0LWFsaWduOmNlbnRlcjtcclxuICAgICAgICAgICAgcG9zaXRpb246YWJzb2x1dGU7XHJcbiAgICAgICAgICAgIGxlZnQ6MDtcclxuICAgICAgICAgICAgcmlnaHQ6MDtcclxuICAgICAgICAgICAgdG9wOiAwO1xyXG4gICAgICAgICAgICBtYXJnaW46IDA7XHJcbiAgICAgICAgICAgIGJvdHRvbTowO1xyXG4gICAgICAgICAgICAuaWNvbi1jb250YWluZXIge1xyXG4gICAgICAgICAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xyXG4gICAgICAgICAgICAgICAgaGVpZ2h0OiAxNjFweDtcclxuICAgICAgICAgICAgICAgIGltZyB7XHJcbiAgICAgICAgICAgICAgICAgICAgcG9zaXRpb246YWJzb2x1dGU7XHJcbiAgICAgICAgICAgICAgICAgICAgbGVmdDowO1xyXG4gICAgICAgICAgICAgICAgICAgIHJpZ2h0OjA7XHJcbiAgICAgICAgICAgICAgICAgICAgYm90dG9tOjEycHg7XHJcbiAgICAgICAgICAgICAgICAgICAgbWFyZ2luOmF1dG87XHJcbiAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgaDMge1xyXG4gICAgICAgICAgICAgICAgY29sb3I6ICNhOGQyZWI7XHJcbiAgICAgICAgICAgICAgICBsaW5lLWhlaWdodDogMTtcclxuICAgICAgICAgICAgICAgIG1hcmdpbjogMCAwIC0wLjAyZW07XHJcbiAgICAgICAgICAgICAgICBsZXR0ZXItc3BhY2luZzowO1xyXG4gICAgICAgICAgICAgICAgZm9udC1mYW1pbHk6JGZvbnQtc2Vjb25kYXJ5O1xyXG4gICAgICAgICAgICAgICAgZm9udC1zaXplOjExNXB4O1xyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgICAgIHNwYW4ge1xyXG4gICAgICAgICAgICAgICAgZGlzcGxheTpibG9jaztcclxuICAgICAgICAgICAgICAgIGNvbG9yOndoaXRlO1xyXG4gICAgICAgICAgICAgICAgZm9udC1zaXplOjI2cHg7XHJcbiAgICAgICAgICAgICAgICBmb250LXdlaWdodDo0MDA7XHJcblxyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG4gICAgICAgIGgzIHtcclxuICAgICAgICAgICAgbWFyZ2luOiAtMC4yNGVtIDAgMC40OGVtO1xyXG4gICAgICAgICAgICBsaW5lLWhlaWdodDogMS4zNTtcclxuICAgICAgICAgICAgbGV0dGVyLXNwYWNpbmc6IDAuMzZweDtcclxuICAgICAgICB9XHJcbiAgICAgICAgcCB7XHJcbiAgICAgICAgICAgIGxldHRlci1zcGFjaW5nOiAtMC4wOHB4O1xyXG4gICAgICAgICAgICAmLmluZm8ge1xyXG4gICAgICAgICAgICAgICAgbWFyZ2luOiAtMC43OGVtIDAgMDtcclxuICAgICAgICAgICAgICAgIGxldHRlci1zcGFjaW5nOiAtMC4wMXB4O1xyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG5cclxuXHJcbn1cclxuXHJcbi5zdGFuZGFyZC1wYXJ0bmVycyB7XHJcbiAgICBiYWNrZ3JvdW5kOiAjZjVmNWY1O1xyXG4gICAgcGFkZGluZzogMi44ZW0gMCA1Ljc4ZW07XHJcbiAgICBoMiB7XHJcbiAgICAgICAgZm9udC13ZWlnaHQ6NzAwO1xyXG4gICAgICAgIG1hcmdpbjowIDAgMC4yZW07XHJcbiAgICB9XHJcbiAgICBoMyB7XHJcbiAgICAgICAgZm9udC1zaXplOjMwcHg7XHJcbiAgICAgICAgZm9udC13ZWlnaHQ6NzAwO1xyXG4gICAgICAgIGZvbnQtZmFtaWx5OiRmb250LXByaW1hcnk7XHJcbiAgICAgICAgbWFyZ2luOiAwLjllbSAwIDA7XHJcbiAgICB9XHJcbiAgICBwIHtcclxuICAgICAgICBsaW5lLWhlaWdodDogMS40NTtcclxuICAgICAgICBtYXJnaW46IDEuNWVtIDAgMDtcclxuICAgICAgICBsZXR0ZXItc3BhY2luZzogMC4wOHB4O1xyXG4gICAgfVxyXG59XHJcblxyXG5AbWVkaWEgKG1heC13aWR0aDokZGV2aWNlLXhsZy13aWR0aCkge1xyXG4gICAgLnN0YW5kYXJkLXVuZGVyIC5sLWdyaWQtc3RhbmRhcmQtdW5kZXIgaDIge1xyXG4gICAgICAgIGxpbmUtaGVpZ2h0OiAxLjE7XHJcbiAgICAgICAgbWFyZ2luOiAtMC4xNWVtIDAgMC40NGVtO1xyXG4gICAgfVxyXG4gICAgLnN0YW5kYXJkLWhlYWRlciBoMSBiciB7XHJcbiAgICAgICAgICAgZGlzcGxheTpub25lO1xyXG4gICAgfVxyXG59XHJcblxyXG5cclxuQG1lZGlhIChtYXgtd2lkdGg6JGRldmljZS1sZy13aWR0aCl7XHJcblxyXG4gICAgLnN0YW5kYXJkLXVuZGVyIC5sLWdyaWQtc3RhbmRhcmQtdW5kZXIgcC53aXRoQmlnQnJlYWsge1xyXG4gICAgICAgIG1hcmdpbi1ib3R0b206IDIuMjNlbTtcclxuICAgIH1cclxuICAgIC5sLWdyaWQtcHJpb3JpdGllcy1oZWFkZXIgaDEge1xyXG4gICAgICAgIG1hcmdpbi1ib3R0b206IDAuMTRlbTtcclxuICAgIH1cclxuICAgIC5zdGFuZGFyZC1iZyB7XHJcbiAgICAgICAgYmFja2dyb3VuZC1hdHRhY2htZW50OiBzY3JvbGw7XHJcbiAgICB9XHJcbiAgICAuc3RhbmRhcmQtdW5kZXIgLmJveC1sYXlvdXQgLm51bWJlci1jb250YWluZXIge1xyXG4gICAgICAgIHBhZGRpbmc6MDtcclxuICAgIH1cclxuICAgIC5zdGFuZGFyZC11bmRlciAuYm94LWxheW91dCAubnVtYmVyIHtcclxuICAgICAgICBwb3NpdGlvbjpzdGF0aWM7XHJcbiAgICB9XHJcbiAgICAuc3RhbmRhcmQtdW5kZXIgLmJveC1sYXlvdXQgLm51bWJlciAuaWNvbi1jb250YWluZXIge1xyXG4gICAgICAgIGhlaWdodDogYXV0bztcclxuICAgICAgICBwYWRkaW5nOiAyMHB4IDA7XHJcbiAgICAgICAgaW1nIHtcclxuICAgICAgICAgICAgcG9zaXRpb246c3RhdGljO1xyXG4gICAgICAgIH1cclxuICAgIH1cclxuICAgIC5zdGFuZGFyZC11bmRlciAuYm94LWxheW91dCAubnVtYmVyIHNwYW4ge1xyXG4gICAgICAgIHBhZGRpbmctYm90dG9tOjIwcHg7XHJcbiAgICB9XHJcbiAgICAuZ3JpZC1pdGVtLWJveCB7XHJcbiAgICAgICAgdGV4dC1hbGlnbjpjZW50ZXI7XHJcbiAgICB9XHJcbn1cclxuQG1lZGlhIChtYXgtd2lkdGg6JGRldmljZS1tZC13aWR0aCkge1xyXG5cclxuICAgIC5zdGFuZGFyZC11bmRlciAubC1ncmlkLXN0YW5kYXJkLXVuZGVyIGZpZ3VyZSB7XHJcbiAgICAgICAgbWF4LXdpZHRoOiA1MDBweDtcclxuICAgICAgICBtYXJnaW46MzBweCBhdXRvIDA7XHJcbiAgICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xyXG4gICAgfVxyXG4gICAgLnN0YW5kYXJkLXVuZGVyLmJhY2tncm91bmQgLmltYWdlLWFkZGl0aW9uYWwtbWFyZ2luIHtcclxuICAgICAgICBtYXJnaW4tdG9wOjA7XHJcbiAgICB9XHJcbn1cclxuQG1lZGlhIChtYXgtd2lkdGg6JGRldmljZS1zbS13aWR0aCkge1xyXG4gICAgLnN0YW5kYXJkLXVuZGVyIC5sLWdyaWQtc3RhbmRhcmQtdW5kZXIgLmhhbGYge1xyXG4gICAgICAgIGZsb2F0Om5vbmU7XHJcbiAgICAgICAgd2lkdGg6MTAwJTtcclxuICAgICAgICBtYXJnaW4tYm90dG9tOjEwcHg7XHJcbiAgICAgICAgJjpsYXN0LWNoaWxkIHtcclxuICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTowO1xyXG4gICAgICAgIH1cclxuICAgICAgICAmLnRleHQtLXJpZ2h0IHtcclxuICAgICAgICAgICAgdGV4dC1hbGlnbjpsZWZ0O1xyXG4gICAgICAgIH1cclxuICAgIH1cclxufVxyXG5cclxuXHJcbkBpbmNsdWRlIGRldmljZS1sZy1vbmx5ICB7XHJcblxyXG4gICAgLnN0cmF0ZWdpYy5zdGFuZGFyZC11bmRlciwgLnN0YW5kYXJkLXVuZGVyIHtcclxuICAgICAgICBwYWRkaW5nOiA1LjI1ZW0gMCA2LjE2ZW07XHJcbiAgICB9XHJcblxyXG4gICAgLnN0YW5kYXJkLWhlYWRlciB7XHJcbiAgICAgICAgcC5sZWFkIHtcclxuICAgICAgICAgICAgZm9udC1zaXplOjI0cHg7XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG4gICAgLnN0YW5kYXJkLWJnIHtcclxuICAgICAgICBmb250LXNpemU6MTZweDtcclxuICAgICAgICBoZWlnaHQ6NjUwcHg7XHJcbiAgICB9XHJcbiAgICAuc3RhbmRhcmQtdW5kZXIgLmwtZ3JpZC1zdGFuZGFyZC11bmRlciBibG9ja3F1b3RlIHtcclxuICAgICAgICBmb250LXNpemU6MjRweDtcclxuICAgIH1cclxuICAgIC5zdGFuZGFyZC11bmRlciAubC1ncmlkLXN0YW5kYXJkLXVuZGVyIGJsb2NrcXVvdGUgcCB7XHJcbiAgICAgICAgZm9udC1zaXplOjI4cHg7XHJcbiAgICB9XHJcbiAgICAuc3RhbmRhcmQtaGVhZGVyIHtcclxuICAgICAgICBwYWRkaW5nLWJvdHRvbTo1LjI1ZW07XHJcbiAgICB9XHJcbiAgICAuc3RhbmRhcmQtdW5kZXIgLmwtZ3JpZC1zdGFuZGFyZC11bmRlciArIC5sLWdyaWQtc3RhbmRhcmQtdW5kZXIge1xyXG4gICAgICAgIHBhZGRpbmctdG9wOiA0LjVlbTtcclxuICAgICAgICAmLnNtYWxsZXJQYWRkaW5nIHtcclxuICAgICAgICAgICAgcGFkZGluZy10b3A6My4zNWVtO1xyXG4gICAgICAgIH1cclxuICAgIH1cclxufVxyXG5AaW5jbHVkZSBkZXZpY2UtbWQtb25seSAge1xyXG5cclxuICAgIC5zdHJhdGVnaWMuc3RhbmRhcmQtdW5kZXIsIC5zdGFuZGFyZC11bmRlciB7XHJcbiAgICAgICAgcGFkZGluZzogNC41ZW0gMCA1LjVlbTtcclxuICAgIH1cclxuICAgIC5zdGFuZGFyZC1oZWFkZXIge1xyXG4gICAgICAgIHAubGVhZCB7XHJcbiAgICAgICAgICAgIGZvbnQtc2l6ZToyM3B4O1xyXG4gICAgICAgIH1cclxuICAgIH1cclxuICAgIC5zdGFuZGFyZC1iZyB7XHJcbiAgICAgICAgZm9udC1zaXplOjE0cHg7XHJcbiAgICAgICAgaGVpZ2h0OjU1MHB4O1xyXG4gICAgfVxyXG4gICAgLnN0YW5kYXJkLXVuZGVyIC5sLWdyaWQtc3RhbmRhcmQtdW5kZXIgYmxvY2txdW90ZSB7XHJcbiAgICAgICAgZm9udC1zaXplOjE3cHg7XHJcbiAgICB9XHJcbiAgICAuc3RhbmRhcmQtdW5kZXIgLmwtZ3JpZC1zdGFuZGFyZC11bmRlciBibG9ja3F1b3RlIHAge1xyXG4gICAgICAgIGZvbnQtc2l6ZToyM3B4O1xyXG4gICAgfVxyXG4gICAgLnN0YW5kYXJkLWhlYWRlciB7XHJcbiAgICAgICAgcGFkZGluZy1ib3R0b206NC41ZW07XHJcbiAgICB9XHJcbiAgICAuc3RhbmRhcmQtdW5kZXIgLmwtZ3JpZC1zdGFuZGFyZC11bmRlciArIC5sLWdyaWQtc3RhbmRhcmQtdW5kZXIge1xyXG4gICAgICAgIHBhZGRpbmctdG9wOiA0ZW07XHJcbiAgICAgICAgJi5zbWFsbGVyUGFkZGluZyB7XHJcbiAgICAgICAgICAgIHBhZGRpbmctdG9wOjIuODVlbTtcclxuICAgICAgICB9XHJcbiAgICB9XHJcbiAgICAuc3RhbmRhcmQtcGFydG5lcnMgaDMge1xyXG4gICAgICAgIGZvbnQtc2l6ZToyNnB4O1xyXG4gICAgfVxyXG5cclxufVxyXG5cclxuQGluY2x1ZGUgZGV2aWNlLXNtLW9ubHkgIHtcclxuXHJcbiAgICAuc3RyYXRlZ2ljLnN0YW5kYXJkLXVuZGVyLCAuc3RhbmRhcmQtdW5kZXIge1xyXG4gICAgICAgIHBhZGRpbmc6IDRlbSAwIDVlbTtcclxuICAgIH1cclxuICAgIC5zdGFuZGFyZC1oZWFkZXIge1xyXG4gICAgICAgIHAubGVhZCB7XHJcbiAgICAgICAgICAgIGZvbnQtc2l6ZToyMXB4O1xyXG4gICAgICAgIH1cclxuICAgIH1cclxuICAgIC5zdGFuZGFyZC1iZyB7XHJcbiAgICAgICAgZm9udC1zaXplOjEycHg7XHJcbiAgICAgICAgaGVpZ2h0OjQ1MHB4O1xyXG4gICAgfVxyXG4gICAgLnN0YW5kYXJkLXVuZGVyIC5sLWdyaWQtc3RhbmRhcmQtdW5kZXIgYmxvY2txdW90ZSB7XHJcbiAgICAgICAgZm9udC1zaXplOjIycHg7XHJcbiAgICB9XHJcbiAgICAuc3RhbmRhcmQtdW5kZXIgLmwtZ3JpZC1zdGFuZGFyZC11bmRlciBibG9ja3F1b3RlIHAge1xyXG4gICAgICAgIGZvbnQtc2l6ZToyNnB4O1xyXG4gICAgfVxyXG4gICAgLnN0YW5kYXJkLWhlYWRlciB7XHJcbiAgICAgICAgcGFkZGluZy1ib3R0b206NGVtO1xyXG4gICAgfVxyXG4gICAgLnN0YW5kYXJkLXVuZGVyIC5sLWdyaWQtc3RhbmRhcmQtdW5kZXIgKyAubC1ncmlkLXN0YW5kYXJkLXVuZGVyIHtcclxuICAgICAgICBwYWRkaW5nLXRvcDogMy41ZW07XHJcbiAgICAgICAgJi5zbWFsbGVyUGFkZGluZyB7XHJcbiAgICAgICAgICAgIHBhZGRpbmctdG9wOjIuMzVlbTtcclxuICAgICAgICB9XHJcbiAgICB9XHJcbiAgICAuc3RhbmRhcmQtcGFydG5lcnMgaDMge1xyXG4gICAgICAgIGZvbnQtc2l6ZToyNHB4O1xyXG4gICAgfVxyXG4gICAgLnN0YW5kYXJkLXVuZGVyIC5sLWdyaWQtc3RhbmRhcmQtdW5kZXItdGhyZWUgLmdyaWQtaXRlbS00IGgzIHtcclxuICAgICAgICBmb250LXNpemU6MzhweDtcclxuICAgIH1cclxufVxyXG5cclxuQGluY2x1ZGUgZGV2aWNlLXhzbS1vbmx5ICB7XHJcblxyXG4gICAgLnN0cmF0ZWdpYy5zdGFuZGFyZC11bmRlciwgLnN0YW5kYXJkLXVuZGVyIHtcclxuICAgICAgICBwYWRkaW5nOiAzLjVlbSAwIDQuNWVtO1xyXG4gICAgfVxyXG4gICAgLnN0YW5kYXJkLWhlYWRlciB7XHJcbiAgICAgICAgcC5sZWFkIHtcclxuICAgICAgICAgICAgZm9udC1zaXplOjIwcHg7XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG4gICAgLnN0YW5kYXJkLWJnIHtcclxuICAgICAgICBmb250LXNpemU6MTBweDtcclxuICAgICAgICBoZWlnaHQ6MzUwcHg7XHJcbiAgICB9XHJcbiAgICAuc3RhbmRhcmQtdW5kZXIgLmwtZ3JpZC1zdGFuZGFyZC11bmRlciBibG9ja3F1b3RlIHtcclxuICAgICAgICBmb250LXNpemU6MThweDtcclxuICAgIH1cclxuICAgIC5zdGFuZGFyZC11bmRlciAubC1ncmlkLXN0YW5kYXJkLXVuZGVyIGJsb2NrcXVvdGUgcCB7XHJcbiAgICAgICAgZm9udC1zaXplOjIycHg7XHJcbiAgICB9XHJcbiAgICAuc3RhbmRhcmQtaGVhZGVyIHtcclxuICAgICAgICBwYWRkaW5nLWJvdHRvbTozLjVlbTtcclxuICAgIH1cclxuICAgIC5zdGFuZGFyZC11bmRlciAubC1ncmlkLXN0YW5kYXJkLXVuZGVyICsgLmwtZ3JpZC1zdGFuZGFyZC11bmRlciB7XHJcbiAgICAgICAgcGFkZGluZy10b3A6IDNlbTtcclxuICAgICAgICAmLnNtYWxsZXJQYWRkaW5nIHtcclxuICAgICAgICAgICAgcGFkZGluZy10b3A6MS44NWVtO1xyXG4gICAgICAgIH1cclxuICAgIH1cclxuICAgIC5zdGFuZGFyZC1wYXJ0bmVycyBoMyB7XHJcbiAgICAgICAgZm9udC1zaXplOjIzcHg7XHJcbiAgICB9XHJcbiAgICAuc3RhbmRhcmQtdW5kZXIgLmwtZ3JpZC1zdGFuZGFyZC11bmRlci10aHJlZSAuZ3JpZC1pdGVtLTQgaDMge1xyXG4gICAgICAgIGZvbnQtc2l6ZTozNHB4O1xyXG4gICAgfVxyXG4gICAgLnN0YW5kYXJkLXVuZGVyIC5ib3gtbGF5b3V0IC5udW1iZXIgaDMge1xyXG4gICAgICAgIGZvbnQtc2l6ZTo3N3B4O1xyXG4gICAgfVxyXG59XHJcbkBpbmNsdWRlIGRldmljZS14c20tZG93biAge1xyXG5cclxuICAgIC5zdHJhdGVnaWMuc3RhbmRhcmQtdW5kZXIsIC5zdGFuZGFyZC11bmRlciB7XHJcbiAgICAgICAgcGFkZGluZzogM2VtIDAgNGVtO1xyXG4gICAgfVxyXG4gICAgLnN0YW5kYXJkLWhlYWRlciB7XHJcbiAgICAgICAgcC5sZWFkIHtcclxuICAgICAgICAgICAgZm9udC1zaXplOjE4cHg7XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG4gICAgLnN0YW5kYXJkLWJnIHtcclxuICAgICAgICBmb250LXNpemU6OHB4O1xyXG4gICAgICAgIGhlaWdodDozMDBweDtcclxuICAgIH1cclxuICAgIC5zdGFuZGFyZC11bmRlciAubC1ncmlkLXN0YW5kYXJkLXVuZGVyIGJsb2NrcXVvdGUge1xyXG4gICAgICAgIGZvbnQtc2l6ZToxMHB4O1xyXG4gICAgfVxyXG4gICAgLnN0YW5kYXJkLXVuZGVyIC5sLWdyaWQtc3RhbmRhcmQtdW5kZXIgYmxvY2txdW90ZSBwIHtcclxuICAgICAgICBmb250LXNpemU6MjBweDtcclxuICAgIH1cclxuICAgIC5zdGFuZGFyZC1oZWFkZXIge1xyXG4gICAgICAgIHBhZGRpbmctYm90dG9tOjNlbTtcclxuICAgIH1cclxuICAgIC5zdGFuZGFyZC11bmRlciAubC1ncmlkLXN0YW5kYXJkLXVuZGVyICsgLmwtZ3JpZC1zdGFuZGFyZC11bmRlciB7XHJcbiAgICAgICAgcGFkZGluZy10b3A6IDIuNWVtO1xyXG4gICAgICAgICYuc21hbGxlclBhZGRpbmcge1xyXG4gICAgICAgICAgICBwYWRkaW5nLXRvcDoxLjM1ZW07XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG4gICAgLnN0YW5kYXJkLXBhcnRuZXJzIGgzIHtcclxuICAgICAgICBmb250LXNpemU6MjJweDtcclxuICAgIH1cclxuICAgIC5zdGFuZGFyZC11bmRlciAubC1ncmlkLXN0YW5kYXJkLXVuZGVyLXRocmVlIC5ncmlkLWl0ZW0tNCBoMyB7XHJcbiAgICAgICAgZm9udC1zaXplOjMwcHg7XHJcbiAgICB9XHJcbiAgICAuc3RhbmRhcmQtdW5kZXIgLmJveC1sYXlvdXQgLm51bWJlciBoMyB7XHJcbiAgICAgICAgZm9udC1zaXplOjU0cHg7XHJcbiAgICB9XHJcbn1cclxuXHJcbkBtZWRpYSAobWF4LXdpZHRoOjE1OTZweCkgYW5kIChtaW4td2lkdGg6JGRldmljZS14bGctd2lkdGgpIHtcclxuICAgIC5zdGFuZGFyZC11bmRlciAuYm94LWxheW91dCAubnVtYmVyIHtcclxuICAgICAgICBib3R0b206YXV0bztcclxuICAgICAgICB0b3A6NTAlO1xyXG4gICAgICAgIHRyYW5zZm9ybTp0cmFuc2xhdGVZKC01MCUpO1xyXG4gICAgfVxyXG4gICAgLnN0YW5kYXJkLXVuZGVyIC5ib3gtbGF5b3V0IC5udW1iZXIgLmljb24tY29udGFpbmVyIHtcclxuICAgICAgICBoZWlnaHQ6MTEycHg7XHJcbiAgICAgICAgaW1nIHtcclxuICAgICAgICAgICAgbWF4LWhlaWdodDogMTAwcHg7XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG4gICAgLnN0YW5kYXJkLXVuZGVyIC5ib3gtbGF5b3V0IC5udW1iZXIgaDMge1xyXG4gICAgICAgIGZvbnQtc2l6ZTo4OHB4O1xyXG4gICAgfVxyXG4gICAgLnN0YW5kYXJkLXVuZGVyIC5ib3gtbGF5b3V0IC5udW1iZXIgc3BhbiB7XHJcbiAgICAgICAgZm9udC1zaXplOjI0cHg7XHJcbiAgICB9XHJcbiAgICAuc3RhbmRhcmQtdW5kZXIgLmJveC1sYXlvdXQgaDMge1xyXG4gICAgICAgIGZvbnQtc2l6ZTozOHB4O1xyXG4gICAgICAgIGxpbmUtaGVpZ2h0OiAxLjE7XHJcbiAgICB9XHJcbiAgICAuc3RhbmRhcmQtdW5kZXIgLmwtZ3JpZC1zdGFuZGFyZC11bmRlciBwIHtcclxuICAgICAgICBmb250LXNpemU6MTdweDtcclxuICAgIH1cclxufVxyXG5AbWVkaWEgKG1heC13aWR0aDokZGV2aWNlLXhsZy13aWR0aCkgYW5kIChtaW4td2lkdGg6JGRldmljZS1sZy13aWR0aCkge1xyXG4gICAgLnN0YW5kYXJkLXVuZGVyIC5ib3gtbGF5b3V0IC5udW1iZXIge1xyXG4gICAgICAgIGJvdHRvbTphdXRvO1xyXG4gICAgICAgIHRvcDo1MCU7XHJcbiAgICAgICAgdHJhbnNmb3JtOnRyYW5zbGF0ZVkoLTUwJSk7XHJcbiAgICB9XHJcbiAgICAuc3RhbmRhcmQtdW5kZXIgLmJveC1sYXlvdXQgLm51bWJlciAuaWNvbi1jb250YWluZXIge1xyXG4gICAgICAgIGhlaWdodDo5MnB4O1xyXG4gICAgICAgIGltZyB7XHJcbiAgICAgICAgICAgIG1heC1oZWlnaHQ6IDgwcHg7XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG4gICAgLnN0YW5kYXJkLXVuZGVyIC5ib3gtbGF5b3V0IC5udW1iZXIgaDMge1xyXG4gICAgICAgIGZvbnQtc2l6ZTo3MHB4O1xyXG4gICAgfVxyXG4gICAgLnN0YW5kYXJkLXVuZGVyIC5ib3gtbGF5b3V0IC5udW1iZXIgc3BhbiB7XHJcbiAgICAgICAgZm9udC1zaXplOjIwcHg7XHJcbiAgICB9XHJcbiAgICAuc3RhbmRhcmQtdW5kZXIgLmJveC1sYXlvdXQgaDMge1xyXG4gICAgICAgIGZvbnQtc2l6ZTozNHB4O1xyXG4gICAgICAgIGxpbmUtaGVpZ2h0OiAxLjE7XHJcbiAgICB9XHJcbiAgICAuc3RhbmRhcmQtdW5kZXIgLmwtZ3JpZC1zdGFuZGFyZC11bmRlciBwIHtcclxuICAgICAgICBmb250LXNpemU6MTZweDtcclxuICAgIH1cclxufVxyXG5cclxuQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDowXFwwKSBhbmQgKG1pbi1yZXNvbHV0aW9uOiArNzJkcGkpIHtcclxuICAgIC8vIElFOSsgQ1NTXHJcbiAgICAuc3RhbmRhcmQtdW5kZXIgLmwtZ3JpZC1zdGFuZGFyZC11bmRlci10aHJlZSB7XHJcbiAgICAgICAgZGlzcGxheTpibG9jaztcclxuICAgICAgICAuZ3JpZC1pdGVtLmdyaWQtaXRlbS00IHtcclxuICAgICAgICAgICAgZmxvYXQ6bGVmdDtcclxuICAgICAgICAgICAgd2lkdGg6MzMuMzMzMzM0JTtcclxuICAgICAgICAgICAgbWFyZ2luOjA7XHJcbiAgICAgICAgICAgIHBhZGRpbmc6MCAxNXB4O1xyXG4gICAgICAgIH1cclxuICAgfVxyXG59XHJcbkBtZWRpYSAobWluLXdpZHRoOiRkZXZpY2UtbWQtd2lkdGgpIHtcclxuICAgIC5zdGFuZGFyZC11bmRlciAubC1ncmlkLXN0YW5kYXJkLXVuZGVyIGZpZ3VyZSB7XHJcbiAgICAgICAgbWFyZ2luOjA7XHJcbiAgICAgICAgcGFkZGluZzowO1xyXG4gICAgfVxyXG4gICAgLnN0YW5kYXJkLXVuZGVyIC5sLWdyaWQtc3RhbmRhcmQtdW5kZXIgZmlndXJlIGltZyB7XHJcbiAgICAgICAgcGFkZGluZzowO1xyXG4gICAgfVxyXG4gICAgLnN0YW5kYXJkLXVuZGVyIC5sLWdyaWQtc3RhbmRhcmQtdW5kZXIgZmlndXJlIGltZyArIGZpZ2NhcHRpb24ge1xyXG4gICAgICAgIG1hcmdpbi10b3A6IDAuNDhlbTtcclxuICAgIH1cclxufSIsIi8vID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cclxuICAgLy8gdGhlbWVzL190aGVtZS5zY3NzXHJcbi8vID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cclxuXHJcbi8vIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cclxuICAgLy8gQmFzaWMgU2V0dXBcclxuLy8gLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxyXG5cclxuXHJcblxyXG4uaWNvbiB7XHJcbiAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XHJcbiAgICBtYXJnaW46MDtcclxufVxyXG5cclxuLmljb24tZG93bmxvYWQge1xyXG4gICAgd2lkdGg6IDI1cHg7XHJcbiAgICBoZWlnaHQ6IDI2cHg7XHJcbn1cclxuXHJcbi5wcmVsb2FkICosIC5wcmVsb2FkICo6YmVmb3JlLCAucHJlbG9hZCAqOmFmdGVyIHtcclxuICAgIC13ZWJraXQtdHJhbnNpdGlvbjogbm9uZSAhaW1wb3J0YW50O1xyXG4gICAgLW1vei10cmFuc2l0aW9uOiBub25lICFpbXBvcnRhbnQ7XHJcbiAgICAtbXMtdHJhbnNpdGlvbjogbm9uZSAhaW1wb3J0YW50O1xyXG4gICAgLW8tdHJhbnNpdGlvbjogbm9uZSAhaW1wb3J0YW50O1xyXG59XHJcblxyXG4uY2xlYXJmaXg6YWZ0ZXIge1xyXG4gICAgY29udGVudDonJztcclxuICAgIGRpc3BsYXk6YmxvY2s7XHJcbiAgICBjbGVhcjpib3RoO1xyXG59IiwiQGNoYXJzZXQgXCJVVEYtOFwiO1xyXG4vKiFcclxuICogSGFtYnVyZ2Vyc1xyXG4gKiBAZGVzY3JpcHRpb24gVGFzdHkgQ1NTLWFuaW1hdGVkIGhhbWJ1cmdlcnNcclxuICogQGF1dGhvciBKb25hdGhhbiBTdWggQGpvbnN1aFxyXG4gKiBAc2l0ZSBodHRwczovL2pvbnN1aC5jb20vaGFtYnVyZ2Vyc1xyXG4gKiBAbGluayBodHRwczovL2dpdGh1Yi5jb20vam9uc3VoL2hhbWJ1cmdlcnNcclxuICovXHJcblxyXG4vLyBTZXR0aW5nc1xyXG4vLyA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxyXG4kaGFtYnVyZ2VyLXBhZGRpbmcteCAgICAgICAgICAgICAgICAgICAgICAgOiAxNXB4ICFkZWZhdWx0O1xyXG4kaGFtYnVyZ2VyLXBhZGRpbmcteSAgICAgICAgICAgICAgICAgICAgICAgOiAxNXB4ICFkZWZhdWx0O1xyXG4kaGFtYnVyZ2VyLWxheWVyLXdpZHRoICAgICAgICAgICAgICAgICAgICAgOiA0MHB4ICFkZWZhdWx0O1xyXG4kaGFtYnVyZ2VyLWxheWVyLWhlaWdodCAgICAgICAgICAgICAgICAgICAgOiA0cHggIWRlZmF1bHQ7XHJcbiRoYW1idXJnZXItbGF5ZXItc3BhY2luZyAgICAgICAgICAgICAgICAgICA6IDZweCAhZGVmYXVsdDtcclxuJGhhbWJ1cmdlci1sYXllci1jb2xvciAgICAgICAgICAgICAgICAgICAgIDogIzAwMCAhZGVmYXVsdDtcclxuJGhhbWJ1cmdlci1sYXllci1ib3JkZXItcmFkaXVzICAgICAgICAgICAgIDogNHB4ICFkZWZhdWx0O1xyXG4kaGFtYnVyZ2VyLWhvdmVyLW9wYWNpdHkgICAgICAgICAgICAgICAgICAgOiAwLjcgIWRlZmF1bHQ7XHJcbiRoYW1idXJnZXItaG92ZXItdHJhbnNpdGlvbi1kdXJhdGlvbiAgICAgICA6IDAuMTVzICFkZWZhdWx0O1xyXG4kaGFtYnVyZ2VyLWhvdmVyLXRyYW5zaXRpb24tdGltaW5nLWZ1bmN0aW9uOiBsaW5lYXIgIWRlZmF1bHQ7XHJcblxyXG4vLyBUbyB1c2UgQ1NTIGZpbHRlcnMgYXMgdGhlIGhvdmVyIGVmZmVjdCBpbnN0ZWFkIG9mIG9wYWNpdHksXHJcbi8vIHNldCAkaGFtYnVyZ2VyLWhvdmVyLXVzZS1maWx0ZXIgYXMgdHJ1ZSBhbmRcclxuLy8gY2hhbmdlIHRoZSB2YWx1ZSBvZiAkaGFtYnVyZ2VyLWhvdmVyLWZpbHRlciBhY2NvcmRpbmdseS5cclxuJGhhbWJ1cmdlci1ob3Zlci11c2UtZmlsdGVyOiBmYWxzZSAhZGVmYXVsdDtcclxuJGhhbWJ1cmdlci1ob3Zlci1maWx0ZXIgICAgOiBvcGFjaXR5KDUwJSkgIWRlZmF1bHQ7XHJcblxyXG4vLyBUeXBlcyAoUmVtb3ZlIG9yIGNvbW1lbnQgb3V0IHdoYXQgeW91IGRvbuKAmXQgbmVlZClcclxuLy8gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cclxuJGhhbWJ1cmdlci10eXBlczogKFxyXG4gIDNkeCxcclxuICAzZHgtcixcclxuICAzZHksXHJcbiAgM2R5LXIsXHJcbiAgM2R4eSxcclxuICAzZHh5LXIsXHJcbiAgYXJyb3csXHJcbiAgYXJyb3ctcixcclxuICBhcnJvd2FsdCxcclxuICBhcnJvd2FsdC1yLFxyXG4gIGFycm93dHVybixcclxuICBhcnJvd3R1cm4tcixcclxuICBib3JpbmcsXHJcbiAgY29sbGFwc2UsXHJcbiAgY29sbGFwc2UtcixcclxuICBlbGFzdGljLFxyXG4gIGVsYXN0aWMtcixcclxuICBlbXBoYXRpYyxcclxuICBlbXBoYXRpYy1yLFxyXG4gIG1pbnVzLFxyXG4gIHNsaWRlcixcclxuICBzbGlkZXItcixcclxuICBzcGluLFxyXG4gIHNwaW4tcixcclxuICBzcHJpbmcsXHJcbiAgc3ByaW5nLXIsXHJcbiAgc3RhbmQsXHJcbiAgc3RhbmQtcixcclxuICBzcXVlZXplLFxyXG4gIHZvcnRleCxcclxuICB2b3J0ZXgtclxyXG4pICFkZWZhdWx0O1xyXG5cclxuLy8gQmFzZSBIYW1idXJnZXIgKFdlIG5lZWQgdGhpcylcclxuLy8gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cclxuQGltcG9ydCBcImhhbWJ1cmdlcnMvYmFzZVwiO1xyXG5cclxuLy8gSGFtYnVyZ2VyIHR5cGVzXHJcbi8vID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XHJcbkBpbXBvcnQgXCJoYW1idXJnZXJzL3R5cGVzLzNkeFwiO1xyXG5AaW1wb3J0IFwiaGFtYnVyZ2Vycy90eXBlcy8zZHgtclwiO1xyXG5AaW1wb3J0IFwiaGFtYnVyZ2Vycy90eXBlcy8zZHlcIjtcclxuQGltcG9ydCBcImhhbWJ1cmdlcnMvdHlwZXMvM2R5LXJcIjtcclxuQGltcG9ydCBcImhhbWJ1cmdlcnMvdHlwZXMvM2R4eVwiO1xyXG5AaW1wb3J0IFwiaGFtYnVyZ2Vycy90eXBlcy8zZHh5LXJcIjtcclxuQGltcG9ydCBcImhhbWJ1cmdlcnMvdHlwZXMvYXJyb3dcIjtcclxuQGltcG9ydCBcImhhbWJ1cmdlcnMvdHlwZXMvYXJyb3ctclwiO1xyXG5AaW1wb3J0IFwiaGFtYnVyZ2Vycy90eXBlcy9hcnJvd2FsdFwiO1xyXG5AaW1wb3J0IFwiaGFtYnVyZ2Vycy90eXBlcy9hcnJvd2FsdC1yXCI7XHJcbkBpbXBvcnQgXCJoYW1idXJnZXJzL3R5cGVzL2Fycm93dHVyblwiO1xyXG5AaW1wb3J0IFwiaGFtYnVyZ2Vycy90eXBlcy9hcnJvd3R1cm4tclwiO1xyXG5AaW1wb3J0IFwiaGFtYnVyZ2Vycy90eXBlcy9ib3JpbmdcIjtcclxuQGltcG9ydCBcImhhbWJ1cmdlcnMvdHlwZXMvY29sbGFwc2VcIjtcclxuQGltcG9ydCBcImhhbWJ1cmdlcnMvdHlwZXMvY29sbGFwc2UtclwiO1xyXG5AaW1wb3J0IFwiaGFtYnVyZ2Vycy90eXBlcy9lbGFzdGljXCI7XHJcbkBpbXBvcnQgXCJoYW1idXJnZXJzL3R5cGVzL2VsYXN0aWMtclwiO1xyXG5AaW1wb3J0IFwiaGFtYnVyZ2Vycy90eXBlcy9lbXBoYXRpY1wiO1xyXG5AaW1wb3J0IFwiaGFtYnVyZ2Vycy90eXBlcy9lbXBoYXRpYy1yXCI7XHJcbkBpbXBvcnQgXCJoYW1idXJnZXJzL3R5cGVzL21pbnVzXCI7XHJcbkBpbXBvcnQgXCJoYW1idXJnZXJzL3R5cGVzL3NsaWRlclwiO1xyXG5AaW1wb3J0IFwiaGFtYnVyZ2Vycy90eXBlcy9zbGlkZXItclwiO1xyXG5AaW1wb3J0IFwiaGFtYnVyZ2Vycy90eXBlcy9zcGluXCI7XHJcbkBpbXBvcnQgXCJoYW1idXJnZXJzL3R5cGVzL3NwaW4tclwiO1xyXG5AaW1wb3J0IFwiaGFtYnVyZ2Vycy90eXBlcy9zcHJpbmdcIjtcclxuQGltcG9ydCBcImhhbWJ1cmdlcnMvdHlwZXMvc3ByaW5nLXJcIjtcclxuQGltcG9ydCBcImhhbWJ1cmdlcnMvdHlwZXMvc3RhbmRcIjtcclxuQGltcG9ydCBcImhhbWJ1cmdlcnMvdHlwZXMvc3RhbmQtclwiO1xyXG5AaW1wb3J0IFwiaGFtYnVyZ2Vycy90eXBlcy9zcXVlZXplXCI7XHJcbkBpbXBvcnQgXCJoYW1idXJnZXJzL3R5cGVzL3ZvcnRleFwiO1xyXG5AaW1wb3J0IFwiaGFtYnVyZ2Vycy90eXBlcy92b3J0ZXgtclwiO1xyXG5cclxuLy8gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cclxuLy8gQ29va2luZyB1cCBhZGRpdGlvbmFsIHR5cGVzOlxyXG4vL1xyXG4vLyBUaGUgU2FzcyBmb3IgZWFjaCBoYW1idXJnZXIgdHlwZSBzaG91bGQgYmUgbmVzdGVkXHJcbi8vIGluc2lkZSBhbiBAaWYgZGlyZWN0aXZlIHRvIGNoZWNrIHdoZXRoZXIgb3Igbm90XHJcbi8vIGl0IGV4aXN0cyBpbiAkaGFtYnVyZ2VyLXR5cGVzIHNvIG9ubHkgdGhlIENTUyBmb3JcclxuLy8gaW5jbHVkZWQgdHlwZXMgYXJlIGdlbmVyYXRlZC5cclxuLy9cclxuLy8gZS5nLiBoYW1idXJnZXJzL3R5cGVzL19uZXctdHlwZS5zY3NzXHJcbi8vXHJcbi8vIEBpZiBpbmRleCgkaGFtYnVyZ2VyLXR5cGVzLCBuZXctdHlwZSkge1xyXG4vLyAgIC5oYW1idXJnZXItLW5ldy10eXBlIHtcclxuLy8gICAgIC4uLlxyXG4vLyAgIH1cclxuLy8gfVxyXG4iLCIvLyBIYW1idXJnZXJcclxuLy8gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cclxuLmhhbWJ1cmdlciB7XHJcbiAgcGFkZGluZzogJGhhbWJ1cmdlci1wYWRkaW5nLXkgJGhhbWJ1cmdlci1wYWRkaW5nLXg7XHJcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xyXG4gIGN1cnNvcjogcG9pbnRlcjtcclxuXHJcbiAgdHJhbnNpdGlvbi1wcm9wZXJ0eTogb3BhY2l0eSwgZmlsdGVyO1xyXG4gIHRyYW5zaXRpb24tZHVyYXRpb246ICRoYW1idXJnZXItaG92ZXItdHJhbnNpdGlvbi1kdXJhdGlvbjtcclxuICB0cmFuc2l0aW9uLXRpbWluZy1mdW5jdGlvbjogJGhhbWJ1cmdlci1ob3Zlci10cmFuc2l0aW9uLXRpbWluZy1mdW5jdGlvbjtcclxuXHJcbiAgLy8gTm9ybWFsaXplICg8YnV0dG9uPilcclxuICBmb250OiBpbmhlcml0O1xyXG4gIGNvbG9yOiBpbmhlcml0O1xyXG4gIHRleHQtdHJhbnNmb3JtOiBub25lO1xyXG4gIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xyXG4gIGJvcmRlcjogMDtcclxuICBtYXJnaW46IDA7XHJcbiAgb3ZlcmZsb3c6IHZpc2libGU7XHJcblxyXG4gICY6aG92ZXIge1xyXG4gICAgQGlmICRoYW1idXJnZXItaG92ZXItdXNlLWZpbHRlciA9PSB0cnVlIHtcclxuICAgICAgZmlsdGVyOiAkaGFtYnVyZ2VyLWhvdmVyLWZpbHRlcjtcclxuICAgIH1cclxuICAgIEBlbHNlIHtcclxuICAgICAgb3BhY2l0eTogJGhhbWJ1cmdlci1ob3Zlci1vcGFjaXR5O1xyXG4gICAgfVxyXG4gIH1cclxuICAmOmZvY3VzIHtcclxuICAgIG91dGxpbmU6bm9uZTtcclxuICB9XHJcbn1cclxuXHJcbi5oYW1idXJnZXItYm94IHtcclxuICB3aWR0aDogJGhhbWJ1cmdlci1sYXllci13aWR0aDtcclxuICBoZWlnaHQ6ICRoYW1idXJnZXItbGF5ZXItaGVpZ2h0ICogMyArICRoYW1idXJnZXItbGF5ZXItc3BhY2luZyAqIDI7XHJcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xyXG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcclxufVxyXG5cclxuLmhhbWJ1cmdlci1pbm5lciB7XHJcbiAgZGlzcGxheTogYmxvY2s7XHJcbiAgdG9wOiA1MCU7XHJcbiAgbWFyZ2luLXRvcDogJGhhbWJ1cmdlci1sYXllci1oZWlnaHQgLyAtMjtcclxuXHJcbiAgJixcclxuICAmOjpiZWZvcmUsXHJcbiAgJjo6YWZ0ZXIge1xyXG4gICAgd2lkdGg6ICRoYW1idXJnZXItbGF5ZXItd2lkdGg7XHJcbiAgICBoZWlnaHQ6ICRoYW1idXJnZXItbGF5ZXItaGVpZ2h0O1xyXG4gICAgYmFja2dyb3VuZC1jb2xvcjogJGhhbWJ1cmdlci1sYXllci1jb2xvcjtcclxuICAgIGJvcmRlci1yYWRpdXM6ICRoYW1idXJnZXItbGF5ZXItYm9yZGVyLXJhZGl1cztcclxuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcclxuICAgIHRyYW5zaXRpb24tcHJvcGVydHk6IHRyYW5zZm9ybTtcclxuICAgIHRyYW5zaXRpb24tZHVyYXRpb246IDAuMTVzO1xyXG4gICAgdHJhbnNpdGlvbi10aW1pbmctZnVuY3Rpb246IGVhc2U7XHJcbiAgfVxyXG5cclxuICAmOjpiZWZvcmUsXHJcbiAgJjo6YWZ0ZXIge1xyXG4gICAgY29udGVudDogXCJcIjtcclxuICAgIGRpc3BsYXk6IGJsb2NrO1xyXG4gIH1cclxuXHJcbiAgJjo6YmVmb3JlIHtcclxuICAgIHRvcDogKCRoYW1idXJnZXItbGF5ZXItc3BhY2luZyArICRoYW1idXJnZXItbGF5ZXItaGVpZ2h0KSAqIC0xO1xyXG4gIH1cclxuXHJcbiAgJjo6YWZ0ZXIge1xyXG4gICAgYm90dG9tOiAoJGhhbWJ1cmdlci1sYXllci1zcGFjaW5nICsgJGhhbWJ1cmdlci1sYXllci1oZWlnaHQpICogLTE7XHJcbiAgfVxyXG59XHJcbiIsIkBpZiBpbmRleCgkaGFtYnVyZ2VyLXR5cGVzLCBzcGluKSB7XHJcbiAgLypcclxuICAgKiBTcGluXHJcbiAgICovXHJcbiAgLmhhbWJ1cmdlci0tc3BpbiB7XHJcbiAgICAuaGFtYnVyZ2VyLWlubmVyIHtcclxuICAgICAgdHJhbnNpdGlvbi1kdXJhdGlvbjogMC4yMnM7XHJcbiAgICAgIHRyYW5zaXRpb24tdGltaW5nLWZ1bmN0aW9uOiBjdWJpYy1iZXppZXIoMC41NSwgMC4wNTUsIDAuNjc1LCAwLjE5KTtcclxuXHJcbiAgICAgICY6OmJlZm9yZSB7XHJcbiAgICAgICAgdHJhbnNpdGlvbjogdG9wIDAuMXMgMC4yNXMgZWFzZS1pbixcclxuICAgICAgICAgICAgICAgICAgICBvcGFjaXR5IDAuMXMgZWFzZS1pbjtcclxuICAgICAgfVxyXG5cclxuICAgICAgJjo6YWZ0ZXIge1xyXG4gICAgICAgIHRyYW5zaXRpb246IGJvdHRvbSAwLjFzIDAuMjVzIGVhc2UtaW4sXHJcbiAgICAgICAgICAgICAgICAgICAgdHJhbnNmb3JtIDAuMjJzIGN1YmljLWJlemllcigwLjU1LCAwLjA1NSwgMC42NzUsIDAuMTkpO1xyXG4gICAgICB9XHJcbiAgICB9XHJcblxyXG4gICAgJi5pcy1hY3RpdmUge1xyXG4gICAgICAuaGFtYnVyZ2VyLWlubmVyIHtcclxuICAgICAgICB0cmFuc2Zvcm06IHJvdGF0ZSgyMjVkZWcpO1xyXG4gICAgICAgIHRyYW5zaXRpb24tZGVsYXk6IDAuMTJzO1xyXG4gICAgICAgIHRyYW5zaXRpb24tdGltaW5nLWZ1bmN0aW9uOiBjdWJpYy1iZXppZXIoMC4yMTUsIDAuNjEsIDAuMzU1LCAxKTtcclxuXHJcbiAgICAgICAgJjo6YmVmb3JlIHtcclxuICAgICAgICAgIHRvcDogMDtcclxuICAgICAgICAgIG9wYWNpdHk6IDA7XHJcbiAgICAgICAgICB0cmFuc2l0aW9uOiB0b3AgMC4xcyBlYXNlLW91dCxcclxuICAgICAgICAgICAgICAgICAgICAgIG9wYWNpdHkgMC4xcyAwLjEycyBlYXNlLW91dDtcclxuICAgICAgICB9XHJcblxyXG4gICAgICAgICY6OmFmdGVyIHtcclxuICAgICAgICAgIGJvdHRvbTogMDtcclxuICAgICAgICAgIHRyYW5zZm9ybTogcm90YXRlKC05MGRlZyk7XHJcbiAgICAgICAgICB0cmFuc2l0aW9uOiBib3R0b20gMC4xcyBlYXNlLW91dCxcclxuICAgICAgICAgICAgICAgICAgICAgIHRyYW5zZm9ybSAwLjIycyAwLjEycyBjdWJpYy1iZXppZXIoMC4yMTUsIDAuNjEsIDAuMzU1LCAxKTtcclxuICAgICAgICB9XHJcbiAgICAgIH1cclxuICAgIH1cclxuICB9XHJcbn1cclxuIl19 */
