/* Minification failed. Returning unminified contents.
(28132,1): run-time error CSS1019: Unexpected token, found '@import'
(28132,9): run-time error CSS1019: Unexpected token, found 'url(../Content/Flaticon/flaticon.css)'
(32499,1): run-time error CSS1019: Unexpected token, found '@keyframes'
(32500,8): run-time error CSS1035: Expected colon, found '{'
(34664,1): run-time error CSS1019: Unexpected token, found '@keyframes'
(34665,3): run-time error CSS1062: Expected semicolon or closing curly-brace, found '0%'
(34672,1): run-time error CSS1019: Unexpected token, found '@keyframes'
(34673,3): run-time error CSS1062: Expected semicolon or closing curly-brace, found '0%'
(34699,1): run-time error CSS1019: Unexpected token, found '@keyframes'
(34700,3): run-time error CSS1062: Expected semicolon or closing curly-brace, found '0%'
(34707,1): run-time error CSS1019: Unexpected token, found '@keyframes'
(34708,3): run-time error CSS1062: Expected semicolon or closing curly-brace, found '0%'
(34860,1): run-time error CSS1019: Unexpected token, found '@keyframes'
(34861,3): run-time error CSS1062: Expected semicolon or closing curly-brace, found '0%'
(34868,1): run-time error CSS1019: Unexpected token, found '@keyframes'
(34869,3): run-time error CSS1062: Expected semicolon or closing curly-brace, found '0%'
(36994,1): run-time error CSS1019: Unexpected token, found '@keyframes'
(36995,3): run-time error CSS1062: Expected semicolon or closing curly-brace, found '0%'
 */
@font-face {
	font-family: "Flaticon";
	src: url(/content/Flaticon/flaticon.eot);
	src: url(/content/Flaticon/flaticon.eot#iefix) format("embedded-opentype"),
	url(/content/Flaticon/flaticon.woff) format("woff"),
	url(/content/Flaticon/flaticon.ttf) format("truetype"),
	url(/content/Flaticon/flaticon.svg) format("svg");
	font-weight: normal;
	font-style: normal;
}
[class^="flaticon-"]:before, [class*=" flaticon-"]:before,
[class^="flaticon-"]:after, [class*=" flaticon-"]:after {   
	font-family: Flaticon;
        font-size: 20px;
font-style: normal;
margin-left: 20px;
}.flaticon-arrow180:before {
	content: "\e000";
}
.flaticon-building104:before {
	content: "\e001";
}
.flaticon-circular116:before {
	content: "\e002";
}
.flaticon-clock148:before {
	content: "\e003";
}
.flaticon-delete30:before {
	content: "\e004";
}
.flaticon-edit45:before {
	content: "\e005";
}
.flaticon-email103:before {
	content: "\e006";
}
.flaticon-email19:before {
	content: "\e007";
}
.flaticon-home78:before {
	content: "\e008";
}
.flaticon-man316:before {
	content: "\e009";
}
.flaticon-men16:before {
	content: "\e00a";
}
.flaticon-menu57:before {
	content: "\e00b";
}
.flaticon-phone322:before {
	content: "\e00c";
}
.flaticon-phone60:before {
	content: "\e00d";
}
.flaticon-savings1:before {
	content: "\e00e";
}
.flaticon-tool1512:before {
	content: "\e00f";
}
.flaticon-walk4:before {
	content: "\e010";
}
.flaticon-weekly3:before {
	content: "\e011";
}

/*animations*/

/******************
* Bounce in right *
*******************/


.animated { 
    -webkit-animation-duration: 1s; 
    animation-duration: 1s; 
    -webkit-animation-fill-mode: both; 
    animation-fill-mode: both; 
} 
.slow{
     -webkit-animation-duration: 1.5s; 
    animation-duration: 1.5s; 
    -webkit-animation-fill-mode: both; 
    animation-fill-mode: both; 
}
.slower{
     -webkit-animation-duration: 2s; 
    animation-duration: 2s; 
    -webkit-animation-fill-mode: both; 
    animation-fill-mode: both; 
}
.slowest{
     -webkit-animation-duration: 3s; 
    animation-duration: 3s; 
    -webkit-animation-fill-mode: both; 
    animation-fill-mode: both; 
}

/* Added by Andy Meetan */
.delay-250 {
    -webkit-animation-delay:0.25s;
    -moz-animation-delay:0.25s;
    -o-animation-delay:0.25s;
    animation-delay:0.25s;
}
.delay-500 {
    -webkit-animation-delay:0.5s;
    -moz-animation-delay:0.5s;
    -o-animation-delay:0.5s;
    animation-delay:0.5s;
}
.delay-750 {
    -webkit-animation-delay:0.75s;
    -moz-animation-delay:0.75s;
    -o-animation-delay:0.75s;
    animation-delay:0.75s;
}
.delay-1000 {
    -webkit-animation-delay:1.0s;
    -moz-animation-delay:1.0s;
    -o-animation-delay:1.0s;
    animation-delay:1.0s;
}
.delay-1250 {
    -webkit-animation-delay:1.25s;
    -moz-animation-delay:1.25s;
    -o-animation-delay:1.25s;
    animation-delay:1.25s;
}
.delay-1500 {
    -webkit-animation-delay:1.5s;
    -moz-animation-delay:1.5s;
    -o-animation-delay:1.5s;
    animation-delay:1.5s;
}
.delay-1750 {
    -webkit-animation-delay:1.75s;
    -moz-animation-delay:1.75s;
    -o-animation-delay:1.75s;
    animation-delay:1.75s;
}
.delay-2000 {
    -webkit-animation-delay:2.0s;
    -moz-animation-delay:2.0s;
    -o-animation-delay:2.0s;
    animation-delay:2.0s;
}
.delay-2500 {
    -webkit-animation-delay:2.5s;
    -moz-animation-delay:2.5s;
    -o-animation-delay:2.5s;
    animation-delay:2.5s;
}
.delay-2000 {
    -webkit-animation-delay:2.0s;
    -moz-animation-delay:2.0s;
    -o-animation-delay:2.0s;
    animation-delay:2.0s;
}
.delay-2500 {
    -webkit-animation-delay:2.5s;
    -moz-animation-delay:2.5s;
    -o-animation-delay:2.5s;
    animation-delay:2.5s;
}
.delay-3000 {
    -webkit-animation-delay:3.0s;
    -moz-animation-delay:3.0s;
    -o-animation-delay:3.0s;
    animation-delay:3.0s;
}
.delay-3500 {
    -webkit-animation-delay:3.5s;
    -moz-animation-delay:3.5s;
    -o-animation-delay:3.5s;
    animation-delay:3.5s;
}

.bounceInRight, .bounceInLeft, .bounceInUp, .bounceInDown{
    opacity:0;
    -webkit-transform: translateX(400px); 
    transform: translateX(400px); 
}
.fadeInRight, .fadeInLeft, .fadeInUp, .fadeInDown{
    opacity:0;
    -webkit-transform: translateX(400px); 
    transform: translateX(400px); 
}

.flipInX, .flipInY, .rotateIn, .rotateInUpLeft, .rotateInUpRight, .rotateInDownLeft, .rotateDownUpRight, .rollIn{
    opacity:0;
}

.lightSpeedInRight, .lightSpeedInLeft{
    opacity:0;
    -webkit-transform: translateX(400px); 
    transform: translateX(400px); 
}

/***********
* bounceIn *
************/
@-webkit-keyframes bounceIn { 
    0% { 
        opacity: 0; 
        -webkit-transform: scale(.3); 
    } 

    50% { 
        opacity: 1; 
        -webkit-transform: scale(1.05); 
    } 

    70% { 
        -webkit-transform: scale(.9); 
    } 

    100% { 
         -webkit-transform: scale(1); 
    } 
} 

@keyframes bounceIn { 
    0% { 
        opacity: 0; 
        transform: scale(.3); 
    } 

    50% { 
        opacity: 1; 
        transform: scale(1.05); 
    } 

    70% { 
        transform: scale(.9); 
    } 

    100% { 
        transform: scale(1); 
    } 
} 

.bounceIn.go { 
    -webkit-animation-name: bounceIn; 
    animation-name: bounceIn; 
}

/****************
* bounceInRight *
****************/

@-webkit-keyframes bounceInRight { 
    0% { 
        opacity: 0; 
        
        -webkit-transform: translateX(400px); 
    } 
    60% { 
        
        -webkit-transform: translateX(-30px); 
    } 
    80% { 
        -webkit-transform: translateX(10px); 
    } 
    100% {
    opacity: 1;
     
        -webkit-transform: translateX(0); 
    } 
} 

@keyframes bounceInRight { 
    0% { 
        opacity: 0; 
        
        transform: translateX(400px); 
    } 
    60% { 
        
        transform: translateX(-30px); 
    } 
    80% { 
        transform: translateX(10px); 
    } 
    100% {
    opacity: 1;
     
        transform: translateX(0); 
    } 
} 


.bounceInRight.go { 
    -webkit-animation-name: bounceInRight; 
    animation-name: bounceInRight; 
}

/******************
* Bounce in left *
*******************/

@-webkit-keyframes bounceInLeft { 
    0% { 
        opacity: 0; 
        
        -webkit-transform: translateX(-400px); 
    } 
    60% { 
       
        -webkit-transform: translateX(30px); 
    } 
    80% { 
        -webkit-transform: translateX(-10px); 
    } 
    100% {
        opacity: 1;
         
        -webkit-transform: translateX(0); 
    } 
} 

@keyframes bounceInLeft { 
    0% { 
        opacity: 0; 
        
        transform: translateX(-400px); 
    } 
    60% { 
       
        transform: translateX(30px); 
    } 
    80% { 
        transform: translateX(-10px); 
    } 
    100% {
        opacity: 1;
         
        transform: translateX(0); 
    } 
} 

.bounceInLeft.go { 
    -webkit-animation-name: bounceInLeft; 
    animation-name: bounceInLeft; 
}

/******************
* Bounce in up *
*******************/

@-webkit-keyframes bounceInUp { 
    0% { 
        opacity: 0; 
        
        -webkit-transform: translateY(400px); 
    } 
    60% { 
       
        -webkit-transform: translateY(-30px); 
    } 
    80% { 
        -webkit-transform: translateY(10px); 
    } 
    100% {
        opacity: 1;
         
        -webkit-transform: translateY(0); 
    } 
} 

@keyframes bounceInUp { 
    0% { 
        opacity: 0; 
        
        transform: translateY(400px); 
    } 
    60% { 
       
        transform: translateY(-30px); 
    } 
    80% { 
        transform: translateY(10px); 
    } 
    100% {
        opacity: 1;
         
        transform: translateY(0); 
    } 
} 

.bounceInUp.go { 
    -webkit-animation-name: bounceInUp; 
    animation-name: bounceInUp; 
}


/******************
* Bounce in down *
*******************/

@-webkit-keyframes bounceInDown { 
    0% { 
        opacity: 0; 
        
        -webkit-transform: translateY(-400px); 
    } 
    60% { 
       
        -webkit-transform: translateY(30px); 
    } 
    80% { 
        -webkit-transform: translateY(-10px); 
    } 
    100% {
        opacity: 1;
         
        -webkit-transform: translateY(0); 
    } 
} 

@keyframes bounceInDown { 
    0% { 
        opacity: 0; 
        
        transform: translateY(-400px); 
    } 
    60% { 
       
        transform: translateY(30px); 
    } 
    80% { 
        transform: translateY(-10px); 
    } 
    100% {
        opacity: 1;
         
        transform: translateY(0); 
    } 
} 

.bounceInDown.go { 
    -webkit-animation-name: bounceInDown; 
    animation-name: bounceInDown; 
}


/**********
* Fade In *
**********/ 
@-webkit-keyframes fadeIn { 
    0% {opacity: 0;} 
    100% {opacity: 1;
        display:block;} 
} 
@keyframes fadeIn { 
    0% {opacity: 0;} 
    100% {opacity: 1;
        display:block;} 
}
.fadeIn{
    opacity:0;
}
.fadeIn.go { 
    -webkit-animation-name: fadeIn; 
    animation-name: fadeIn; 
}

/**********
* Grow in *
***********/

@-webkit-keyframes growIn { 
    0% { 
        -webkit-transform: scale(0.2); 
        opacity:0;
    } 
    50% { 
        -webkit-transform: scale(1.2); 
        
    } 
    100% { 
        -webkit-transform: scale(1); 
        opacity:1;
    } 
} 
@keyframes growIn { 
    0% { 
        transform: scale(0.2); 
        opacity:0;
    } 
    50% { 
        transform: scale(1.2); 
        
    } 
    100% { 
        transform: scale(1); 
        opacity:1;
    } 
} 
.growIn { 

    -webkit-transform: scale(0.2);
    transform: scale(0.2);
    opacity:0;
}
.growIn.go{
    -webkit-animation-name: growIn; 
    animation-name: growIn; 
}

/********
* Shake *
********/
@-webkit-keyframes shake { 
    0%, 100% {-webkit-transform: translateX(0);} 
    10%, 30%, 50%, 70%, 90% {-webkit-transform: translateX(-10px);} 
    20%, 40%, 60%, 80% {-webkit-transform: translateX(10px);} 
} 
@keyframes shake { 
    0%, 100% {transform: translateX(0);} 
    10%, 30%, 50%, 70%, 90% {transform: translateX(-10px);} 
    20%, 40%, 60%, 80% {transform: translateX(10px);} 
} 
.shake.go { 
    -webkit-animation-name: shake; 
    animation-name: shake; 
}

/********
* ShakeUp *
********/
@-webkit-keyframes shakeUp { 
    0%, 100% {-webkit-transform: translateX(0);} 
    10%, 30%, 50%, 70%, 90% {-webkit-transform: translateY(-10px);} 
    20%, 40%, 60%, 80% {-webkit-transform: translateY(10px);} 
} 
@keyframes shakeUp { 
    0%, 100% {transform: translateY(0);} 
    10%, 30%, 50%, 70%, 90% {transform: translateY(-10px);} 
    20%, 40%, 60%, 80% {transform: translateY(10px);} 
} 
.shakeUp.go { 
    -webkit-animation-name: shakeUp; 
    animation-name: shakeUp; 
}

/*************
* FadeInLeft *
*************/

@-webkit-keyframes fadeInLeft { 
    0% { 
        opacity: 0; 
        -webkit-transform: translateX(-400px); 
    } 
    50%{
       opacity: 0.3; 
    }
    100% { 
        opacity: 1; 
        -webkit-transform: translateX(0); 
    } 
} 
@keyframes fadeInLeft { 
    0% { 
        opacity: 0; 
        transform: translateX(-400px); 
    } 
    50%{
       opacity: 0.3; 
    }
    100% { 
        opacity: 1; 
        transform: translateX(0); 
    } 
} 
.fadeInLeft{ 
    opacity: 0; 
    -webkit-transform: translateX(-400px); 
    transform: translateX(-400px);
}
.fadeInLeft.go { 
    -webkit-animation-name: fadeInLeft; 
    animation-name: fadeInLeft; 
}


/*************
* FadeInRight *
*************/

@-webkit-keyframes fadeInRight { 
    0% { 
        opacity: 0; 
        -webkit-transform: translateX(400px); 
    } 
    50%{
       opacity: 0.3; 
    }
    100% { 
        opacity: 1; 
        -webkit-transform: translateX(0); 
    } 
} 
@keyframes fadeInRight { 
    0% { 
        opacity: 0; 
        transform: translateX(400px); 
    } 
    50%{
       opacity: 0.3; 
    }
    100% { 
        opacity: 1; 
        transform: translateX(0); 
    } 
} 
.fadeInRight{ 
    opacity: 0; 
    -webkit-transform: translateX(400px); 
    transform: translateX(400px);
}
.fadeInRight.go { 
    -webkit-animation-name: fadeInRight; 
    animation-name: fadeInRight; 
}

/*************
* FadeInUp *
*************/

@-webkit-keyframes fadeInUp { 
    0% { 
        opacity: 0; 
        -webkit-transform: translateY(400px); 
    } 
    50%{
       opacity: 0.3; 
    }
    100% { 
        opacity: 1; 
        -webkit-transform: translateY(0); 
    } 
} 
@keyframes fadeInUp { 
    0% { 
        opacity: 0; 
        transform: translateY(400px); 
    } 
    50%{
       opacity: 0.3; 
    }
    100% { 
        opacity: 1; 
        transform: translateY(0); 
    } 
} 
.fadeInUp{ 
    opacity: 0; 
    -webkit-transform: translateY(400px); 
    transform: translateY(400px);
}
.fadeInUp.go { 
    -webkit-animation-name: fadeInUp; 
    animation-name: fadeInUp; 
}

/*************
* FadeInDown *
*************/

@-webkit-keyframes fadeInDown { 
    0% { 
        opacity: 0; 
        -webkit-transform: translateY(-400px); 
    } 
    50%{
       opacity: 0.3; 
    }
    100% { 
        opacity: 1; 
        -webkit-transform: translateY(0); 
    } 
} 
@keyframes fadeInDown { 
    0% { 
        opacity: 0; 
        transform: translateY(-400px); 
    } 
    50%{
       opacity: 0.3; 
    }
    100% { 
        opacity: 1; 
        transform: translateY(0); 
    } 
} 
.fadeInDown{ 
    opacity: 0; 
    -webkit-transform: translateY(-400px); 
    transform: translateY(-400px);
}
.fadeInDown.go { 
    -webkit-animation-name: fadeInDown; 
    animation-name: fadeInDown; 
}

/*****************
* rotateIn *
*****************/
@-webkit-keyframes rotateIn { 
    0% { 
        -webkit-transform-origin: center center; 
        -webkit-transform: rotate(-200deg); 
        opacity: 0; 
    } 
    100% { 
        -webkit-transform-origin: center center; 
        -webkit-transform: rotate(0); 
        opacity: 1; 
    } 
} 
@keyframes rotateIn { 
    0% { 
        transform-origin: center center; 
        transform: rotate(-200deg); 
        opacity: 0; 
    } 
    100% { 
        transform-origin: center center; 
        transform: rotate(0); 
        opacity: 1; 
    } 
} 
.rotateIn.go { 
    -webkit-animation-name: rotateIn; 
    animation-name: rotateIn; 
}

/*****************
* rotateInUpLeft *
*****************/

@-webkit-keyframes rotateInUpLeft { 
    0% { 
        -webkit-transform-origin: left bottom; 
        -webkit-transform: rotate(90deg); 
        opacity: 0; 
    } 
    100% { 
        -webkit-transform-origin: left bottom; 
        -webkit-transform: rotate(0); 
        opacity: 1; 
    } 
} 
@keyframes rotateInUpLeft { 
    0% { 
        transform-origin: left bottom; 
        transform: rotate(90deg); 
        opacity: 0; 
    } 
    100% { 
        transform-origin: left bottom; 
        transform: rotate(0); 
        opacity: 1; 
    } 
} 
.rotateInUpLeft.go { 
    -webkit-animation-name: rotateInUpLeft; 
    animation-name: rotateInUpLeft; 
}

/*******************
* rotateInDownLeft *
*******************/
@-webkit-keyframes rotateInDownLeft { 
    0% { 
        -webkit-transform-origin: left bottom; 
        -webkit-transform: rotate(-90deg); 
        opacity: 0; 
    } 
    100% { 
        -webkit-transform-origin: left bottom; 
        -webkit-transform: rotate(0); 
        opacity: 1; 
    } 
} 
@keyframes rotateInDownLeft { 
    0% { 
        transform-origin: left bottom; 
        transform: rotate(-90deg); 
        opacity: 0; 
    } 
    100% { 
        transform-origin: left bottom; 
        transform: rotate(0); 
        opacity: 1; 
    } 
} 
.rotateInDownLeft.go { 
    -webkit-animation-name: rotateInDownLeft; 
    animation-name: rotateInDownLeft; 
}

/******************
* rotateInUpRight *
*******************/

@-webkit-keyframes rotateInUpRight { 
    0% { 
        -webkit-transform-origin: right bottom; 
        -webkit-transform: rotate(-90deg); 
        opacity: 0; 
    } 
    100% { 
        -webkit-transform-origin: right bottom; 
        -webkit-transform: rotate(0); 
        opacity: 1; 
    } 
} 
@keyframes rotateInUpRight { 
    0% { 
        transform-origin: right bottom; 
        transform: rotate(-90deg); 
        opacity: 0; 
    } 
    100% { 
        transform-origin: right bottom; 
        transform: rotate(0); 
        opacity: 1; 
    } 
} 
.rotateInUpRight.go { 
    -webkit-animation-name: rotateInUpRight; 
    animation-name: rotateInUpRight; 
}

/********************
* rotateInDownRight *
********************/

@-webkit-keyframes rotateInDownRight { 
    0% { 
        -webkit-transform-origin: right bottom; 
        -webkit-transform: rotate(90deg); 
        opacity: 0; 
    } 
    100% { 
        -webkit-transform-origin: right bottom; 
        -webkit-transform: rotate(0); 
        opacity: 1; 
    } 
} 
@keyframes rotateInDownRight { 
    0% { 
        transform-origin: right bottom; 
        transform: rotate(90deg); 
        opacity: 0; 
    } 
    100% { 
        transform-origin: right bottom; 
        transform: rotate(0); 
        opacity: 1; 
    } 
} 
.rotateInDownRight.go { 
    -webkit-animation-name: rotateInDownRight; 
    animation-name: rotateInDownRight; 
}

/*********
* rollIn *
**********/

@-webkit-keyframes rollIn { 
    0% { opacity: 0; -webkit-transform: translateX(-100%) rotate(-120deg); } 
    100% { opacity: 1; -webkit-transform: translateX(0px) rotate(0deg); } 
} 
@keyframes rollIn { 
    0% { opacity: 0; transform: translateX(-100%) rotate(-120deg); } 
    100% { opacity: 1; transform: translateX(0px) rotate(0deg); } 
} 
.rollIn.go { 
    -webkit-animation-name: rollIn; 
    animation-name: rollIn; 
}

/*********
* wiggle *
**********/

@-webkit-keyframes wiggle { 
    0% { -webkit-transform: skewX(9deg); } 
    10% { -webkit-transform: skewX(-8deg); } 
    20% { -webkit-transform: skewX(7deg); } 
    30% { -webkit-transform: skewX(-6deg); } 
    40% { -webkit-transform: skewX(5deg); } 
    50% { -webkit-transform: skewX(-4deg); } 
    60% { -webkit-transform: skewX(3deg); } 
    70% { -webkit-transform: skewX(-2deg); } 
    80% { -webkit-transform: skewX(1deg); } 
    90% { -webkit-transform: skewX(0deg); } 
    100% { -webkit-transform: skewX(0deg); } 
} 
@keyframes wiggle { 
    0% { transform: skewX(9deg); } 
    10% { transform: skewX(-8deg); } 
    20% { transform: skewX(7deg); } 
    30% { transform: skewX(-6deg); } 
    40% { transform: skewX(5deg); } 
    50% { transform: skewX(-4deg); } 
    60% { transform: skewX(3deg); } 
    70% { transform: skewX(-2deg); } 
    80% { transform: skewX(1deg); } 
    90% { transform: skewX(0deg); } 
    100% { transform: skewX(0deg); } 
} 
.wiggle.go { 
    -webkit-animation-name: wiggle; 
    animation-name: wiggle; 
    -webkit-animation-timing-function: ease-in; 
    animation-timing-function: ease-in; 
} 

/********
* swing *
*********/

@-webkit-keyframes swing { 
    20%, 40%, 60%, 80%, 100% { -webkit-transform-origin: top center; } 
    20% { -webkit-transform: rotate(15deg); } 
    40% { -webkit-transform: rotate(-10deg); } 
    60% { -webkit-transform: rotate(5deg); } 
    80% { -webkit-transform: rotate(-5deg); } 
    100% { -webkit-transform: rotate(0deg); } 
} 
@keyframes swing { 
    20% { transform: rotate(15deg); } 
    40% { transform: rotate(-10deg); } 
    60% { transform: rotate(5deg); } 
    80% { transform: rotate(-5deg); } 
    100% { transform: rotate(0deg); } 
} 
.swing.go { 
    -webkit-transform-origin: top center; 
    transform-origin: top center; 
    -webkit-animation-name: swing; 
    animation-name: swing; 
}

/*******
* tada *
********/

@-webkit-keyframes tada { 
    0% {-webkit-transform: scale(1);} 
    10%, 20% {-webkit-transform: scale(0.9) rotate(-3deg);} 
    30%, 50%, 70%, 90% {-webkit-transform: scale(1.1) rotate(3deg);} 
    40%, 60%, 80% {-webkit-transform: scale(1.1) rotate(-3deg);} 
    100% {-webkit-transform: scale(1) rotate(0);} 
} 
@keyframes tada { 
    0% {transform: scale(1);} 
    10%, 20% {transform: scale(0.9) rotate(-3deg);} 
    30%, 50%, 70%, 90% {transform: scale(1.1) rotate(3deg);} 
    40%, 60%, 80% {transform: scale(1.1) rotate(-3deg);} 
    100% {transform: scale(1) rotate(0);} 
} 
.tada.go { 
    -webkit-animation-name: tada; 
    animation-name: tada; 
}

/*********
* wobble *
**********/

@-webkit-keyframes wobble { 
  0% { -webkit-transform: translateX(0%); } 
  15% { -webkit-transform: translateX(-25%) rotate(-5deg); } 
  30% { -webkit-transform: translateX(20%) rotate(3deg); } 
  45% { -webkit-transform: translateX(-15%) rotate(-3deg); } 
  60% { -webkit-transform: translateX(10%) rotate(2deg); } 
  75% { -webkit-transform: translateX(-5%) rotate(-1deg); } 
  100% { -webkit-transform: translateX(0%); } 
} 
@keyframes wobble { 
  0% { transform: translateX(0%); } 
  15% { transform: translateX(-25%) rotate(-5deg); } 
  30% { transform: translateX(20%) rotate(3deg); } 
  45% { transform: translateX(-15%) rotate(-3deg); } 
  60% { transform: translateX(10%) rotate(2deg); } 
  75% { transform: translateX(-5%) rotate(-1deg); } 
  100% { transform: translateX(0%); } 
} 
.wobble.go { 
    -webkit-animation-name: wobble; 
    animation-name: wobble; 
}

/********
* pulse *
*********/

@-webkit-keyframes pulse { 
    0% { -webkit-transform: scale(1); } 
    50% { -webkit-transform: scale(1.1); } 
    100% { -webkit-transform: scale(1); } 
} 
@keyframes pulse { 
    0% { transform: scale(1); } 
    50% { transform: scale(1.1); } 
    100% { transform: scale(1); } 
} 
.pulse.go { 
    -webkit-animation-name: pulse; 
    animation-name: pulse; 
}

/***************
* lightSpeedInRight *
****************/
@-webkit-keyframes lightSpeedInRight { 
   0% { -webkit-transform: translateX(100%) skewX(-30deg); opacity: 0; } 
    60% { -webkit-transform: translateX(-20%) skewX(30deg); opacity: 1; } 
    80% { -webkit-transform: translateX(0%) skewX(-15deg); opacity: 1; } 
    100% { -webkit-transform: translateX(0%) skewX(0deg); opacity: 1; } 
} 
@keyframes lightSpeedInRight { 
    0% { transform: translateX(100%) skewX(-30deg); opacity: 0; } 
    60% { transform: translateX(-20%) skewX(30deg); opacity: 1; } 
    80% { transform: translateX(0%) skewX(-15deg); opacity: 1; } 
    100% { transform: translateX(0%) skewX(0deg); opacity: 1; } 
} 
.lightSpeedInRight.go { 
    -webkit-animation-name: lightSpeedInRight; 
    animation-name: lightSpeedInRight; 
    -webkit-animation-timing-function: ease-out; 
    animation-timing-function: ease-out; 
} 

/***************
* lightSpeedInLeft *
****************/
@-webkit-keyframes lightSpeedInLeft { 
   0% { -webkit-transform: translateX(-100%) skewX(30deg); opacity: 0; } 
    60% { -webkit-transform: translateX(20%) skewX(-30deg); opacity: 1; } 
    80% { -webkit-transform: translateX(0%) skewX(15deg); opacity: 1; } 
    100% { -webkit-transform: translateX(0%) skewX(0deg); opacity: 1; } 
} 
@keyframes lightSpeedInLeft { 
    0% { transform: translateX(-100%) skewX(30deg); opacity: 0; } 
    60% { transform: translateX(20%) skewX(-30deg); opacity: 1; } 
    80% { transform: translateX(0%) skewX(15deg); opacity: 1; } 
    100% { transform: translateX(0%) skewX(0deg); opacity: 1; } 
} 
.lightSpeedInLeft.go { 
    -webkit-animation-name: lightSpeedInLeft; 
    animation-name: lightSpeedInLeft; 
    -webkit-animation-timing-function: ease-out; 
    animation-timing-function: ease-out; 
} 


/*******
* Flip *
*******/
@-webkit-keyframes flip { 
    0% { 
        -webkit-transform: perspective(400px) rotateY(0); 
        -webkit-animation-timing-function: ease-out; 
    } 
    40% { 
        -webkit-transform: perspective(400px) translateZ(150px) rotateY(170deg); 
        -webkit-animation-timing-function: ease-out; 
    } 
    50% { 
        -webkit-transform: perspective(400px) translateZ(150px) rotateY(190deg) scale(1); 
        -webkit-animation-timing-function: ease-in; 
    } 
    80% { 
        -webkit-transform: perspective(400px) rotateY(360deg) scale(.95); 
        -webkit-animation-timing-function: ease-in; 
    } 
    100% { 
        -webkit-transform: perspective(400px) scale(1); 
        -webkit-animation-timing-function: ease-in; 
    } 
}
@keyframes flip { 
    0% { 
        transform: perspective(400px) rotateY(0); 
        animation-timing-function: ease-out; 
    } 
    40% { 
        transform: perspective(400px) translateZ(150px) rotateY(170deg); 
        animation-timing-function: ease-out; 
    } 
    50% { 
        transform: perspective(400px) translateZ(150px) rotateY(190deg) scale(1); 
        animation-timing-function: ease-in; 
    } 
    80% { 
        transform: perspective(400px) rotateY(360deg) scale(.95); 
        animation-timing-function: ease-in; 
    } 
    100% { 
        transform: perspective(400px) scale(1); 
        animation-timing-function: ease-in; 
    } 
} 
.flip.go { 
    -webkit-backface-visibility: visible !important; 
    -webkit-animation-name: flip; 
    backface-visibility: visible !important; 
    animation-name: flip; 
}

/**********
* flipInX *
**********/
@-webkit-keyframes flipInX { 
    0% { 
        -webkit-transform: perspective(400px) rotateX(90deg); 
        opacity: 0; 
    } 
    40% { 
        -webkit-transform: perspective(400px) rotateX(-10deg); 
    } 
    70% { 
        -webkit-transform: perspective(400px) rotateX(10deg); 
    } 
    100% { 
        -webkit-transform: perspective(400px) rotateX(0deg); 
        opacity: 1; 
    } 
} 
@keyframes flipInX { 
    0% { 
        transform: perspective(400px) rotateX(90deg); 
        opacity: 0; 
    } 
    40% { 
        transform: perspective(400px) rotateX(-10deg); 
    } 
    70% { 
        transform: perspective(400px) rotateX(10deg); 
    } 
    100% { 
        transform: perspective(400px) rotateX(0deg); 
        opacity: 1; 
    } 
} 
.flipInX.go { 
    -webkit-backface-visibility: visible !important; 
    -webkit-animation-name: flipInX; 
    backface-visibility: visible !important; 
    animation-name: flipInX; 
}

/**********
* flipInY *
**********/

@-webkit-keyframes flipInY { 
    0% { 
        -webkit-transform: perspective(400px) rotateY(90deg); 
        opacity: 0; 
    } 
    40% { 
        -webkit-transform: perspective(400px) rotateY(-10deg); 
    } 
    70% { 
        -webkit-transform: perspective(400px) rotateY(10deg); 
    } 
    100% { 
        -webkit-transform: perspective(400px) rotateY(0deg); 
        opacity: 1; 
    } 
} 
@keyframes flipInY { 
    0% { 
        transform: perspective(400px) rotateY(90deg); 
        opacity: 0; 
    } 
    40% { 
        transform: perspective(400px) rotateY(-10deg); 
    } 
    70% { 
        transform: perspective(400px) rotateY(10deg); 
    } 
    100% { 
        transform: perspective(400px) rotateY(0deg); 
        opacity: 1; 
    } 
} 
.flipInY.go { 
    -webkit-backface-visibility: visible !important; 
    -webkit-animation-name: flipInY; 
    backface-visibility: visible !important; 
    animation-name: flipInY; 
}

/*****************
* Out animations *
*****************/


/************
* bounceOut *
*************/
@-webkit-keyframes bounceOut { 
    0% { 
        -webkit-transform: scale(1); 
    } 
    25% { 
        -webkit-transform: scale(.95); 
    } 
    50% { 
        opacity: 1; 
        -webkit-transform: scale(1.1); 
    } 
    100% { 
        opacity: 0; 
        -webkit-transform: scale(.3); 
    } 
} 
@keyframes bounceOut { 
    0% { 
        transform: scale(1); 
    } 
    25% { 
        transform: scale(.95); 
    } 
    50% { 
        opacity: 1; 
        transform: scale(1.1); 
    } 
    100% { 
        opacity: 0; 
        transform: scale(.3); 
    } 
} 
.bounceOut.goAway { 
    -webkit-animation-name: bounceOut; 
    animation-name: bounceOut; 
}

/************
* bounceOutUp *
*************/
@-webkit-keyframes bounceOutUp { 
    0% { 
        -webkit-transform: translateY(0); 
    } 
    20% { 
        opacity: 1; 
        -webkit-transform: translateY(20px); 
    } 
    100% { 
        opacity: 0; 
        -webkit-transform: translateY(-2000px); 
    } 
} 
@keyframes bounceOutUp { 
    0% { 
        transform: translateY(0); 
    } 
    20% { 
        opacity: 1; 
        transform: translateY(20px); 
    } 
    100% { 
        opacity: 0; 
        transform: translateY(-2000px); 
    } 
} 
.bounceOutUp.goAway { 
    -webkit-animation-name: bounceOutUp; 
    animation-name: bounceOutUp; 
}

/************
* bounceOutDown *
*************/
@-webkit-keyframes bounceOutDown { 
    0% { 
        -webkit-transform: translateY(0); 
    } 
    20% { 
        opacity: 1; 
        -webkit-transform: translateY(-20px); 
    } 
    100% { 
        opacity: 0; 
        -webkit-transform: translateY(2000px); 
    } 
} 
@keyframes bounceOutDown { 
    0% { 
        transform: translateY(0); 
    } 
    20% { 
        opacity: 1; 
        transform: translateY(-20px); 
    } 
    100% { 
        opacity: 0; 
        transform: translateY(2000px); 
    } 
} 
.bounceOutDown.goAway { 
    -webkit-animation-name: bounceOutDown; 
    animation-name: bounceOutDown; 
}


/************
* bounceOutLeft *
*************/
@-webkit-keyframes bounceOutLeft { 
    0% { 
        -webkit-transform: translateX(0); 
    } 
    20% { 
        opacity: 1; 
        -webkit-transform: translateX(20px); 
    } 
    100% { 
        opacity: 0; 
        -webkit-transform: translateX(-2000px); 
    } 
} 
@keyframes bounceOutLeft { 
    0% { 
        transform: translateX(0); 
    } 
    20% { 
        opacity: 1; 
        transform: translateX(20px); 
    } 
    100% { 
        opacity: 0; 
        transform: translateX(-2000px); 
    } 
} 
.bounceOutLeft.goAway { 
    -webkit-animation-name: bounceOutLeft; 
    animation-name: bounceOutLeft; 
}

/************
* bounceOutRight *
*************/
@-webkit-keyframes bounceOutRight { 
    0% { 
        -webkit-transform: translateX(0); 
    } 
    20% { 
        opacity: 1; 
        -webkit-transform: translateX(-20px); 
    } 
    100% { 
        opacity: 0; 
        -webkit-transform: translateX(2000px); 
    } 
} 
@keyframes bounceOutRight { 
    0% { 
        transform: translateX(0); 
    } 
    20% { 
        opacity: 1; 
        transform: translateX(-20px); 
    } 
    100% { 
        opacity: 0; 
        transform: translateX(2000px); 
    } 
} 
.bounceOutRight.goAway { 
    -webkit-animation-name: bounceOutRight; 
    animation-name: bounceOutRight; 
}

/************
* fadeOut *
*************/
@-webkit-keyframes fadeOut { 
    0% {opacity: 1;} 
    100% {opacity: 0;} 
} 
@keyframes fadeOut { 
    0% {opacity: 1;} 
    100% {opacity: 0;} 
} 
.fadeOut.goAway { 
    -webkit-animation-name: fadeOut; 
    animation-name: fadeOut; 
}

/************
* fadeOutUp *
*************/
@-webkit-keyframes fadeOutUp { 
    0% { 
        opacity: 1; 
        -webkit-transform: translateY(0); 
    } 
    100% { 
        opacity: 0; 
        -webkit-transform: translateY(-2000px); 
    } 
} 
@keyframes fadeOutUp { 
    0% { 
        opacity: 1; 
        transform: translateY(0); 
    } 
    100% { 
        opacity: 0; 
        transform: translateY(-2000px); 
    } 
} 
.fadeOutUp.goAway { 
    -webkit-animation-name: fadeOutUp; 
    animation-name: fadeOutUp; 
}

/************
* fadeOutDown *
*************/
@-webkit-keyframes fadeOutDown { 
    0% { 
        opacity: 1; 
        -webkit-transform: translateY(0); 
    } 
    100% { 
        opacity: 0; 
        -webkit-transform: translateY(2000px); 
    } 
} 
@keyframes fadeOutDown { 
    0% { 
        opacity: 1; 
        transform: translateY(0); 
    } 
    100% { 
        opacity: 0; 
        transform: translateY(2000px); 
    } 
} 
.fadeOutDown.goAway { 
    -webkit-animation-name: fadeOutDown; 
    animation-name: fadeOutDown; 
}

/************
* fadeOutLeft *
*************/
@-webkit-keyframes fadeOutLeft { 
    0% { 
        opacity: 1; 
        -webkit-transform: translateX(0); 
    } 
    100% { 
        opacity: 0; 
        -webkit-transform: translateX(-2000px); 
    } 
} 
@keyframes fadeOutLeft { 
    0% { 
        opacity: 1; 
        transform: translateX(0); 
    } 
    100% { 
        opacity: 0; 
        transform: translateX(-2000px); 
    } 
} 
.fadeOutLeft.goAway { 
    -webkit-animation-name: fadeOutLeft; 
    animation-name: fadeOutLeft; 
}

/************
* fadeOutRight *
*************/
@-webkit-keyframes fadeOutRight { 
    0% { 
        opacity: 1; 
        -webkit-transform: translateX(0); 
    } 
    100% { 
        opacity: 0; 
        -webkit-transform: translateX(2000px); 
    } 
} 
@keyframes fadeOutRight { 
    0% { 
        opacity: 1; 
        transform: translateX(0); 
    } 
    100% { 
        opacity: 0; 
        transform: translateX(2000px); 
    } 
} 
.fadeOutRight.goAway { 
    -webkit-animation-name: fadeOutRight; 
    animation-name: fadeOutRight; 
}
/************
* flipOutX *
*************/
@-webkit-keyframes flipOutX { 
    0% { 
        -webkit-transform: perspective(400px) rotateX(0deg); 
        opacity: 1; 
    } 
    100% { 
        -webkit-transform: perspective(400px) rotateX(90deg); 
        opacity: 0; 
    } 
} 
@keyframes flipOutX { 
    0% { 
        transform: perspective(400px) rotateX(0deg); 
        opacity: 1; 
    } 
    100% { 
        transform: perspective(400px) rotateX(90deg); 
        opacity: 0; 
    } 
} 
.flipOutX.goAway { 
    -webkit-animation-name: flipOutX; 
    -webkit-backface-visibility: visible !important; 
    animation-name: flipOutX; 
    backface-visibility: visible !important; 
}

/************
* flipOutY *
*************/
@-webkit-keyframes flipOutY { 
    0% { 
        -webkit-transform: perspective(400px) rotateY(0deg); 
        opacity: 1; 
    } 
    100% { 
        -webkit-transform: perspective(400px) rotateY(90deg); 
        opacity: 0; 
    } 
} 
@keyframes flipOutY { 
    0% { 
        transform: perspective(400px) rotateY(0deg); 
        opacity: 1; 
    } 
    100% { 
        transform: perspective(400px) rotateY(90deg); 
        opacity: 0; 
    } 
} 
.flipOutY { 
    -webkit-backface-visibility: visible !important; 
    -webkit-animation-name: flipOutY; 
    backface-visibility: visible !important; 
    animation-name: flipOutY; 
}

/************
* lightSpeedOutRight *
*************/
@-webkit-keyframes lightSpeedOutRight { 
    0% { -webkit-transform: translateX(0%) skewX(0deg); opacity: 1; } 
    100% { -webkit-transform: translateX(100%) skewX(-30deg); opacity: 0; } 
} 
@keyframes lightSpeedOutRight { 
    0% { transform: translateX(0%) skewX(0deg); opacity: 1; } 
    100% { transform: translateX(100%) skewX(-30deg); opacity: 0; } 
} 
.lightSpeedOutRight.goAway { 
    -webkit-animation-name: lightSpeedOutRight; 
    animation-name: lightSpeedOutRight; 
    -webkit-animation-timing-function: ease-in; 
    animation-timing-function: ease-in; 
} 


/************
* lightSpeedOutLeft *
*************/
@-webkit-keyframes lightSpeedOutLeft { 
    0% { -webkit-transform: translateX(0%) skewX(0deg); opacity: 1; } 
    100% { -webkit-transform: translateX(-100%) skewX(30deg); opacity: 0; } 
} 
@keyframes lightSpeedOutLeft { 
    0% { transform: translateX(0%) skewX(0deg); opacity: 1; } 
    100% { transform: translateX(-100%) skewX(30deg); opacity: 0; } 
} 
.lightSpeedOutLeft.goAway { 
    -webkit-animation-name: lightSpeedOutLeft; 
    animation-name: lightSpeedOutLeft; 
    -webkit-animation-timing-function: ease-in; 
    animation-timing-function: ease-in; 

} 

/************
* rotateOut *
*************/
@-webkit-keyframes rotateOut { 
    0% { 
        -webkit-transform-origin: center center; 
        -webkit-transform: rotate(0); 
        opacity: 1; 
    } 
    100% { 
        -webkit-transform-origin: center center; 
        -webkit-transform: rotate(200deg); 
        opacity: 0; 
    } 
} 
@keyframes rotateOut { 
    0% { 
        transform-origin: center center; 
        transform: rotate(0); 
        opacity: 1; 
    } 
    100% { 
        transform-origin: center center; 
        transform: rotate(200deg); 
        opacity: 0; 
    } 
} 
.rotateOut.goAway { 
    -webkit-animation-name: rotateOut; 
    animation-name: rotateOut; 
}


/************
* rotateOutUpLeft *
*************/
@-webkit-keyframes rotateOutUpLeft { 
    0% { 
        -webkit-transform-origin: left bottom; 
        -webkit-transform: rotate(0); 
        opacity: 1; 
    } 
    100% { 
        -webkit-transform-origin: left bottom; 
        -webkit-transform: rotate(-90deg); 
        opacity: 0; 
    } 
} 
@keyframes rotateOutUpLeft { 
    0% { 
        transform-origin: left bottom; 
        transform: rotate(0); 
        opacity: 1; 
    } 
    100% { 
        -transform-origin: left bottom; 
        -transform: rotate(-90deg); 
        opacity: 0; 
    } 
} 
.rotateOutUpLeft.goAway { 
    -webkit-animation-name: rotateOutUpLeft; 
    animation-name: rotateOutUpLeft; 
}

/************
* rotateOutDownLeft *
*************/

@-webkit-keyframes rotateOutDownLeft { 
    0% { 
        -webkit-transform-origin: left bottom; 
        -webkit-transform: rotate(0); 
        opacity: 1; 
    } 
    100% { 
        -webkit-transform-origin: left bottom; 
        -webkit-transform: rotate(90deg); 
        opacity: 0; 
    } 
} 
@keyframes rotateOutDownLeft { 
    0% { 
        transform-origin: left bottom; 
        transform: rotate(0); 
        opacity: 1; 
    } 
    100% { 
        transform-origin: left bottom; 
        transform: rotate(90deg); 
        opacity: 0; 
    } 
} 
.rotateOutDownLeft.goAway { 
    -webkit-animation-name: rotateOutDownLeft; 
    animation-name: rotateOutDownLeft; 
}
/************
* rotateOutUpRight *
*************/

@-webkit-keyframes rotateOutUpRight { 
    0% { 
        -webkit-transform-origin: right bottom; 
        -webkit-transform: rotate(0); 
        opacity: 1; 
    } 
    100% { 
        -webkit-transform-origin: right bottom; 
        -webkit-transform: rotate(90deg); 
        opacity: 0; 
    } 
} 
@keyframes rotateOutUpRight { 
    0% { 
        transform-origin: right bottom; 
        transform: rotate(0); 
        opacity: 1; 
    } 
    100% { 
        transform-origin: right bottom; 
        transform: rotate(90deg); 
        opacity: 0; 
    } 
} 
.rotateOutUpRight.goAway { 
    -webkit-animation-name: rotateOutUpRight; 
    animation-name: rotateOutUpRight; 
}

/************
* rollOut *
*************/
@-webkit-keyframes rollOut { 
    0% { 
        opacity: 1; 
        -webkit-transform: translateX(0px) rotate(0deg); 
    } 
    100% { 
        opacity: 0; 
        -webkit-transform: translateX(100%) rotate(120deg); 
    } 
} 
@keyframes rollOut { 
    0% { 
        opacity: 1; 
        transform: translateX(0px) rotate(0deg); 
    } 
    100% { 
        opacity: 0; 
        transform: translateX(100%) rotate(120deg); 
    } 
} 
.rollOut.goAway { 
    -webkit-animation-name: rollOut; 
    animation-name: rollOut; 
}
/*****************
* Short Animations
*******************/

/*********************
* fadeInUpShort
*********************/
@-webkit-keyframes fadeInUpShort { 
    0% { 
        opacity: 0; 
        -webkit-transform: translateY(20px); 
    } 
    100% { 
        opacity: 1; 
        -webkit-transform: translateY(0); 
    } 
} 

@keyframes fadeInUpShort { 
    0% { 
        opacity: 0; 
        transform: translateY(20px); 
    } 
    100% { 
        opacity: 1; 
        transform: translateY(0); 
    } 
} 
.fadeInUpShort{
    opacity: 0; 
    -webkit-transform: translateY(20px); 
    transform: translateY(20px); 
}
.fadeInUpShort.go { 
    -webkit-animation-name: fadeInUpShort; 
    animation-name: fadeInUpShort; 
}

/*********************
* fadeInDownShort
*********************/
@-webkit-keyframes fadeInDownShort { 
    0% { 
        opacity: 0; 
        -webkit-transform: translateY(-20px); 
    } 
    100% { 
        opacity: 1; 
        -webkit-transform: translateY(0); 
    } 
} 

@keyframes fadeInDownShort { 
    0% { 
        opacity: 0; 
        transform: translateY(-20px); 
    } 
    100% { 
        opacity: 1; 
        transform: translateY(0); 
    } 
} 
.fadeInDownShort{
    opacity: 0; 
    -webkit-transform: translateY(-20px); 
    transform: translateY(-20px); 
}
.fadeInDownShort.go { 
    -webkit-animation-name: fadeInDownShort; 
    animation-name: fadeInDownShort; 
}

/*********************
* fadeInRightShort 
*********************/
@-webkit-keyframes fadeInRightShort { 
    0% { 
        opacity: 0; 
        -webkit-transform: translateX(20px); 
    } 
    100% { 
        opacity: 1; 
        -webkit-transform: translateX(0); 
    } 
} 
@keyframes fadeInRightShort { 
    0% { 
        opacity: 0; 
        transform: translateX(20px); 
    } 
    100% { 
        opacity: 1; 
        transform: translateX(0); 
    } 
} 
.fadeInRightShort { 
    opacity: 0; 
    -webkit-transform: translateX(20px);  
    transform: translateX(20px); 
}
.fadeInRightShort.go { 
    -webkit-animation-name: fadeInRightShort; 
    animation-name: fadeInRightShort; 
}

/*********************
* fadeInLeftShort 
*********************/
@-webkit-keyframes fadeInLeftShort { 
    0% { 
        opacity: 0; 
        -webkit-transform: translateX(-20px); 
    } 
    100% { 
        opacity: 1; 
        -webkit-transform: translateX(0); 
    } 
} 
@keyframes fadeInLeftShort { 
    0% { 
        opacity: 0; 
        transform: translateX(-20px); 
    } 
    100% { 
        opacity: 1; 
        transform: translateX(0); 
    } 
} 
.fadeInLeftShort { 
    opacity: 0; 
    -webkit-transform: translateX(-20px);  
    transform: translateX(-20px); 
}
.fadeInLeftShort.go { 
    -webkit-animation-name: fadeInLeftShort; 
    animation-name: fadeInLeftShort; 
}

/*
* Kendo UI v2015.2.624 (http://www.telerik.com/kendo-ui)
* Copyright 2015 Telerik AD. All rights reserved.
*
* Kendo UI commercial licenses may be obtained at
* http://www.telerik.com/purchase/license-agreement/kendo-ui-complete
* If you do not own a commercial license, this file shall be governed by the trial license terms.
*/
/* Kendo base CSS */
.fake {
  color: red;
}
.k-reset {
  margin: 0;
  padding: 0;
  border: 0;
  outline: 0;
  text-decoration: none;
  font-size: 100%;
  list-style: none;
}
.k-floatwrap:after,
.k-slider-items:after,
.k-grid-toolbar:after {
  content: "";
  display: block;
  clear: both;
  visibility: hidden;
  height: 0;
  overflow: hidden;
}
.k-floatwrap,
.k-slider-items,
.k-grid-toolbar {
  display: inline-block;
}
.k-floatwrap,
.k-slider-items,
.k-grid-toolbar {
  display: block;
}
/* main gradient */
.k-block,
.k-button,
.k-header,
.k-grid-header,
.k-toolbar,
.k-grouping-header,
.k-tooltip,
.k-pager-wrap,
.k-tabstrip-items .k-item,
.k-link.k-state-hover,
.k-textbox,
.k-textbox:hover,
.k-autocomplete,
.k-dropdown-wrap,
.k-picker-wrap,
.k-numeric-wrap,
.k-autocomplete.k-state-hover,
.k-dropdown-wrap.k-state-hover,
.k-picker-wrap.k-state-hover,
.k-numeric-wrap.k-state-hover,
.k-draghandle {
  background-repeat: repeat;
  background-position: 0 center;
}
.k-link:hover {
  text-decoration: none;
}
.k-state-highlight > .k-link {
  color: inherit;
}
/* widget */
.k-textbox > input,
.k-input[type="text"],
.k-input[type="number"],
.k-textbox,
.k-picker-wrap .k-input,
.k-button {
  font-size: 100%;
  font-family: inherit;
  border-style: solid;
  border-width: 1px;
  -webkit-appearance: none;
}
.k-widget,
.k-block,
.k-inline-block,
.k-draghandle {
  border-style: solid;
  border-width: 1px;
  -webkit-appearance: none;
}
.k-block,
.k-widget {
  line-height: normal;
  outline: 0;
}
/* Block */
.k-block {
  padding: 2px;
}
/* button */
.k-button {
  display: inline-block;
  margin: 0;
  padding: 2px 7px 2px;
  font-family: inherit;
  line-height: 1.72em;
  text-align: center;
  cursor: pointer;
  text-decoration: none;
}
.k-button[disabled],
.k-button.k-state-disabled,
.k-state-disabled .k-button,
.k-state-disabled .k-button:hover,
.k-button.k-state-disabled:hover,
.k-state-disabled .k-button:active,
.k-button.k-state-disabled:active {
  cursor: default;
}
.k-ie7 .k-button {
  line-height: normal;
}
a.k-button {
  -khtml-user-select: none;
  -webkit-user-select: none;
  -moz-user-select: -moz-none;
  -ms-user-select: none;
  user-select: none;
  text-decoration: none;
}
/* Override the important default line-height in Firefox 4+ */
.k-ff input.k-button {
  padding-bottom: 0.37em;
  padding-top: 0.37em;
}
.k-ie7 .k-button {
  overflow: visible;
  margin-right: 4px;
}
.k-ie7 a.k-button {
  line-height: 1.6;
  padding-left: 7px;
  padding-right: 7px;
  /*+1*/
}
.k-ie7 .k-slider a.k-button {
  height: 22px;
  line-height: 22px;
  padding: 0;
}
.k-ie7 .k-button-expand {
  margin-left: 0;
  margin-right: 0;
}
button.k-button::-moz-focus-inner,
input.k-button::-moz-focus-inner {
  padding: 0;
  border: 0;
}
a.k-button-expand {
  display: block;
}
button.k-button-expand,
input[type="submit"].k-button-expand,
input[type="button"].k-button-expand,
input[type="reset"].k-button-expand {
  width: 100%;
}
body .k-button-icon,
body .k-split-button-arrow {
  padding-left: .4em;
  padding-right: .4em;
}
.k-ie7 a.k-button-icon {
  padding-left: 5px;
  padding-right: 5px;
  /*+1*/
}
.k-button-icontext {
  overflow: visible;
  /*IE9*/
}
.k-toolbar .k-button-icontext {
  padding-right: .8em;
}
.k-button-icontext .k-icon,
.k-button-icontext .k-image {
  margin-right: 3px;
  margin-right: .3rem;
  margin-left: -3px;
  margin-left: -0.3rem;
}
.k-button.k-button-icontext .k-icon,
.k-button.k-button-icontext .k-image {
  vertical-align: text-top;
}
html body .k-button-bare {
  background: none !important;
  /*spares long selectors*/
  color: inherit;
  border-width: 0;
}
html body .k-button-bare.k-upload-button:hover {
  color: inherit;
}
/* link */
.k-link {
  cursor: pointer;
  outline: 0;
  text-decoration: none;
}
.k-grid-header span.k-link {
  cursor: default;
}
/* states */
.k-state-disabled,
.k-state-disabled .k-link,
.k-state-disabled .k-icon,
.k-state-disabled .k-button,
.k-state-disabled .k-draghandle,
.k-state-disabled .k-upload-button input {
  cursor: default !important;
  outline: 0;
}
@media print {
  .k-state-disabled,
  .k-state-disabled .k-input {
    opacity: 1 !important;
  }
}
.k-state-error {
  border-style: ridge;
}
.k-state-empty {
  font-style: italic;
}
/* icons */
.k-icon,
.k-sprite,
.k-button-group .k-tool-icon {
  display: inline-block;
  width: 16px;
  height: 16px;
  overflow: hidden;
  background-repeat: no-repeat;
  font-size: 0;
  line-height: 0;
  text-align: center;
  -ms-high-contrast-adjust: none;
}
.k-icon.k-i-none {
  background-image: none !important;
  /* should never be a background on these */
}
/* In IE7 vertical align: middle can't be overridden */
.k-ie8 .k-icon,
.k-ie8 .k-sprite,
.k-ie8 .k-button-group .k-tool-icon {
  vertical-align: middle;
}
:root * > .k-icon,
:root * > .k-sprite,
:root * > .k-button-group .k-tool-icon {
  vertical-align: middle;
}
.k-icon,
.k-sprite {
  background-color: transparent;
}
.k-ie7 .k-icon,
.k-ie7 .k-sprite {
  text-indent: 0;
}
.k-numerictextbox .k-select .k-link span.k-i-arrow-n {
  background-position: 0 -3px;
}
.k-numerictextbox .k-select .k-link span.k-i-arrow-s {
  background-position: 0 -35px;
}
.k-state-selected .k-i-arrow-n {
  background-position: -16px 0px;
}
.k-link:not(.k-state-disabled):hover > .k-state-selected .k-i-arrow-n,
.k-state-hover > .k-state-selected .k-i-arrow-n,
.k-state-hover > * > .k-state-selected .k-i-arrow-n,
.k-button:not(.k-state-disabled):hover .k-state-selected .k-i-arrow-n,
.k-textbox:hover .k-state-selected .k-i-arrow-n,
.k-button:active .k-state-selected .k-i-arrow-n {
  background-position: -32px 0px;
}
.k-numerictextbox .k-link.k-state-selected span.k-i-arrow-n,
.k-numerictextbox .k-state-hover .k-link span.k-i-arrow-n {
  background-position: -16px -3px;
}
.k-state-selected .k-i-arrow-s {
  background-position: -16px -32px;
}
.k-link:not(.k-state-disabled):hover > .k-state-selected .k-i-arrow-s,
.k-state-hover > .k-state-selected .k-i-arrow-s,
.k-state-hover > * > .k-state-selected .k-i-arrow-s,
.k-button:not(.k-state-disabled):hover .k-state-selected .k-i-arrow-s,
.k-textbox:hover .k-state-selected .k-i-arrow-s,
.k-button:active .k-state-selected .k-i-arrow-s {
  background-position: -32px -32px;
}
.k-numerictextbox .k-link.k-state-selected span.k-i-arrow-s,
.k-numerictextbox .k-state-hover .k-link span.k-i-arrow-s {
  background-position: -16px -35px;
}
.k-grid-header th > .k-link:hover span.k-i-arrow-n {
  background-position: 0px 0px;
}
.k-grid-header th > .k-link:hover span.k-i-arrow-s {
  background-position: 0px -32px;
}
.k-group-indicator .k-link:hover span.k-si-arrow-n {
  background-position: 0 -129px;
}
.k-group-indicator .k-link:hover span.k-si-arrow-s {
  background-position: 0 -159px;
}
.k-group-indicator .k-button:hover span.k-group-delete {
  background-position: -32px -16px;
}
.k-scheduler .k-scheduler-toolbar .k-nav-current .k-link .k-i-calendar {
  background-position: -32px -176px;
}
.k-i-arrow-n {
  background-position: 0px 0px;
}
.k-link:not(.k-state-disabled):hover > .k-i-arrow-n,
.k-state-hover > .k-i-arrow-n,
.k-state-hover > * > .k-i-arrow-n,
.k-button:not(.k-state-disabled):hover .k-i-arrow-n,
.k-textbox:hover .k-i-arrow-n,
.k-button:active .k-i-arrow-n {
  background-position: -16px 0px;
}
.k-i-arrow-e {
  background-position: 0px -16px;
}
.k-link:not(.k-state-disabled):hover > .k-i-arrow-e,
.k-state-hover > .k-i-arrow-e,
.k-state-hover > * > .k-i-arrow-e,
.k-button:not(.k-state-disabled):hover .k-i-arrow-e,
.k-textbox:hover .k-i-arrow-e,
.k-button:active .k-i-arrow-e {
  background-position: -16px -16px;
}
.k-rtl .k-i-arrow-w {
  background-position: 0px -16px;
}
.k-rtl .k-link:not(.k-state-disabled):hover > .k-i-arrow-w,
.k-rtl .k-state-hover > .k-i-arrow-w,
.k-rtl .k-state-hover > * > .k-i-arrow-w,
.k-rtl .k-button:not(.k-state-disabled):hover .k-i-arrow-w,
.k-rtl .k-textbox:hover .k-i-arrow-w,
.k-rtl .k-button:active .k-i-arrow-w {
  background-position: -16px -16px;
}
.k-i-arrow-s {
  background-position: 0px -32px;
}
.k-link:not(.k-state-disabled):hover > .k-i-arrow-s,
.k-state-hover > .k-i-arrow-s,
.k-state-hover > * > .k-i-arrow-s,
.k-button:not(.k-state-disabled):hover .k-i-arrow-s,
.k-textbox:hover .k-i-arrow-s,
.k-button:active .k-i-arrow-s {
  background-position: -16px -32px;
}
.k-i-arrow-w {
  background-position: 0px -48px;
}
.k-link:not(.k-state-disabled):hover > .k-i-arrow-w,
.k-state-hover > .k-i-arrow-w,
.k-state-hover > * > .k-i-arrow-w,
.k-button:not(.k-state-disabled):hover .k-i-arrow-w,
.k-textbox:hover .k-i-arrow-w,
.k-button:active .k-i-arrow-w {
  background-position: -16px -48px;
}
.k-rtl .k-i-arrow-e {
  background-position: 0px -48px;
}
.k-rtl .k-link:not(.k-state-disabled):hover > .k-i-arrow-e,
.k-rtl .k-state-hover > .k-i-arrow-e,
.k-rtl .k-state-hover > * > .k-i-arrow-e,
.k-rtl .k-button:not(.k-state-disabled):hover .k-i-arrow-e,
.k-rtl .k-textbox:hover .k-i-arrow-e,
.k-rtl .k-button:active .k-i-arrow-e {
  background-position: -16px -48px;
}
.k-i-seek-n {
  background-position: 0px -64px;
}
.k-link:not(.k-state-disabled):hover > .k-i-seek-n,
.k-state-hover > .k-i-seek-n,
.k-state-hover > * > .k-i-seek-n,
.k-button:not(.k-state-disabled):hover .k-i-seek-n,
.k-textbox:hover .k-i-seek-n,
.k-button:active .k-i-seek-n {
  background-position: -16px -64px;
}
.k-i-seek-e {
  background-position: 0px -80px;
}
.k-link:not(.k-state-disabled):hover > .k-i-seek-e,
.k-state-hover > .k-i-seek-e,
.k-state-hover > * > .k-i-seek-e,
.k-button:not(.k-state-disabled):hover .k-i-seek-e,
.k-textbox:hover .k-i-seek-e,
.k-button:active .k-i-seek-e {
  background-position: -16px -80px;
}
.k-rtl .k-i-seek-w {
  background-position: 0px -80px;
}
.k-rtl .k-link:not(.k-state-disabled):hover > .k-i-seek-w,
.k-rtl .k-state-hover > .k-i-seek-w,
.k-rtl .k-state-hover > * > .k-i-seek-w,
.k-rtl .k-button:not(.k-state-disabled):hover .k-i-seek-w,
.k-rtl .k-textbox:hover .k-i-seek-w,
.k-rtl .k-button:active .k-i-seek-w {
  background-position: -16px -80px;
}
.k-i-seek-s {
  background-position: 0px -96px;
}
.k-link:not(.k-state-disabled):hover > .k-i-seek-s,
.k-state-hover > .k-i-seek-s,
.k-state-hover > * > .k-i-seek-s,
.k-button:not(.k-state-disabled):hover .k-i-seek-s,
.k-textbox:hover .k-i-seek-s,
.k-button:active .k-i-seek-s {
  background-position: -16px -96px;
}
.k-i-seek-w {
  background-position: 0px -112px;
}
.k-link:not(.k-state-disabled):hover > .k-i-seek-w,
.k-state-hover > .k-i-seek-w,
.k-state-hover > * > .k-i-seek-w,
.k-button:not(.k-state-disabled):hover .k-i-seek-w,
.k-textbox:hover .k-i-seek-w,
.k-button:active .k-i-seek-w {
  background-position: -16px -112px;
}
.k-rtl .k-i-seek-e {
  background-position: 0px -112px;
}
.k-rtl .k-link:not(.k-state-disabled):hover > .k-i-seek-e,
.k-rtl .k-state-hover > .k-i-seek-e,
.k-rtl .k-state-hover > * > .k-i-seek-e,
.k-rtl .k-button:not(.k-state-disabled):hover .k-i-seek-e,
.k-rtl .k-textbox:hover .k-i-seek-e,
.k-rtl .k-button:active .k-i-seek-e {
  background-position: -16px -112px;
}
.k-si-arrow-n {
  background-position: 0 -129px;
}
.k-link:not(.k-state-disabled):hover > .k-si-arrow-n,
.k-state-hover > .k-si-arrow-n,
.k-state-hover > * > .k-si-arrow-n,
.k-button:not(.k-state-disabled):hover .k-si-arrow-n,
.k-textbox:hover .k-si-arrow-n,
.k-button:active .k-si-arrow-n {
  background-position: -16px -129px;
}
.k-si-arrow-e {
  background-position: 0px -144px;
}
.k-link:not(.k-state-disabled):hover > .k-si-arrow-e,
.k-state-hover > .k-si-arrow-e,
.k-state-hover > * > .k-si-arrow-e,
.k-button:not(.k-state-disabled):hover .k-si-arrow-e,
.k-textbox:hover .k-si-arrow-e,
.k-button:active .k-si-arrow-e {
  background-position: -16px -144px;
}
.k-si-arrow-s {
  background-position: 0 -159px;
}
.k-link:not(.k-state-disabled):hover > .k-si-arrow-s,
.k-state-hover > .k-si-arrow-s,
.k-state-hover > * > .k-si-arrow-s,
.k-button:not(.k-state-disabled):hover .k-si-arrow-s,
.k-textbox:hover .k-si-arrow-s,
.k-button:active .k-si-arrow-s {
  background-position: -16px -159px;
}
.k-si-arrow-w {
  background-position: 0px -176px;
}
.k-link:not(.k-state-disabled):hover > .k-si-arrow-w,
.k-state-hover > .k-si-arrow-w,
.k-state-hover > * > .k-si-arrow-w,
.k-button:not(.k-state-disabled):hover .k-si-arrow-w,
.k-textbox:hover .k-si-arrow-w,
.k-button:active .k-si-arrow-w {
  background-position: -16px -176px;
}
.k-i-arrowhead-n {
  background-position: 0px -256px;
}
.k-link:not(.k-state-disabled):hover > .k-i-arrowhead-n,
.k-state-hover > .k-i-arrowhead-n,
.k-state-hover > * > .k-i-arrowhead-n,
.k-button:not(.k-state-disabled):hover .k-i-arrowhead-n,
.k-textbox:hover .k-i-arrowhead-n,
.k-button:active .k-i-arrowhead-n {
  background-position: -16px -256px;
}
.k-i-arrowhead-e {
  background-position: 0px -272px;
}
.k-link:not(.k-state-disabled):hover > .k-i-arrowhead-e,
.k-state-hover > .k-i-arrowhead-e,
.k-state-hover > * > .k-i-arrowhead-e,
.k-button:not(.k-state-disabled):hover .k-i-arrowhead-e,
.k-textbox:hover .k-i-arrowhead-e,
.k-button:active .k-i-arrowhead-e {
  background-position: -16px -272px;
}
.k-i-arrowhead-s {
  background-position: 0px -288px;
}
.k-link:not(.k-state-disabled):hover > .k-i-arrowhead-s,
.k-state-hover > .k-i-arrowhead-s,
.k-state-hover > * > .k-i-arrowhead-s,
.k-button:not(.k-state-disabled):hover .k-i-arrowhead-s,
.k-textbox:hover .k-i-arrowhead-s,
.k-button:active .k-i-arrowhead-s {
  background-position: -16px -288px;
}
.k-i-arrowhead-w {
  background-position: 0px -304px;
}
.k-link:not(.k-state-disabled):hover > .k-i-arrowhead-w,
.k-state-hover > .k-i-arrowhead-w,
.k-state-hover > * > .k-i-arrowhead-w,
.k-button:not(.k-state-disabled):hover .k-i-arrowhead-w,
.k-textbox:hover .k-i-arrowhead-w,
.k-button:active .k-i-arrowhead-w {
  background-position: -16px -304px;
}
.k-i-expand,
.k-plus,
.k-plus-disabled {
  background-position: 0px -192px;
}
.k-link:not(.k-state-disabled):hover > .k-i-expand,
.k-link:not(.k-state-disabled):hover > .k-plus,
.k-link:not(.k-state-disabled):hover > .k-plus-disabled,
.k-state-hover > .k-i-expand,
.k-state-hover > .k-plus,
.k-state-hover > .k-plus-disabled,
.k-state-hover > * > .k-i-expand,
.k-state-hover > * > .k-plus,
.k-state-hover > * > .k-plus-disabled,
.k-button:not(.k-state-disabled):hover .k-i-expand,
.k-button:not(.k-state-disabled):hover .k-plus,
.k-button:not(.k-state-disabled):hover .k-plus-disabled,
.k-textbox:hover .k-i-expand,
.k-textbox:hover .k-plus,
.k-textbox:hover .k-plus-disabled,
.k-button:active .k-i-expand,
.k-button:active .k-plus,
.k-button:active .k-plus-disabled {
  background-position: -16px -192px;
}
.k-i-expand-w,
.k-rtl .k-i-expand,
.k-rtl .k-plus,
.k-rtl .k-plus-disabled {
  background-position: 0px -208px;
}
.k-link:not(.k-state-disabled):hover > .k-i-expand-w,
.k-link:not(.k-state-disabled):hover > .k-rtl .k-i-expand,
.k-link:not(.k-state-disabled):hover > .k-rtl .k-plus,
.k-link:not(.k-state-disabled):hover > .k-rtl .k-plus-disabled,
.k-state-hover > .k-i-expand-w,
.k-state-hover > .k-rtl .k-i-expand,
.k-state-hover > .k-rtl .k-plus,
.k-state-hover > .k-rtl .k-plus-disabled,
.k-state-hover > * > .k-i-expand-w,
.k-state-hover > * > .k-rtl .k-i-expand,
.k-state-hover > * > .k-rtl .k-plus,
.k-state-hover > * > .k-rtl .k-plus-disabled,
.k-button:not(.k-state-disabled):hover .k-i-expand-w,
.k-button:not(.k-state-disabled):hover .k-rtl .k-i-expand,
.k-button:not(.k-state-disabled):hover .k-rtl .k-plus,
.k-button:not(.k-state-disabled):hover .k-rtl .k-plus-disabled,
.k-textbox:hover .k-i-expand-w,
.k-textbox:hover .k-rtl .k-i-expand,
.k-textbox:hover .k-rtl .k-plus,
.k-textbox:hover .k-rtl .k-plus-disabled,
.k-button:active .k-i-expand-w,
.k-button:active .k-rtl .k-i-expand,
.k-button:active .k-rtl .k-plus,
.k-button:active .k-rtl .k-plus-disabled {
  background-position: -16px -208px;
}
.k-i-collapse,
.k-minus,
.k-minus-disabled {
  background-position: 0px -224px;
}
.k-link:not(.k-state-disabled):hover > .k-i-collapse,
.k-link:not(.k-state-disabled):hover > .k-minus,
.k-link:not(.k-state-disabled):hover > .k-minus-disabled,
.k-state-hover > .k-i-collapse,
.k-state-hover > .k-minus,
.k-state-hover > .k-minus-disabled,
.k-state-hover > * > .k-i-collapse,
.k-state-hover > * > .k-minus,
.k-state-hover > * > .k-minus-disabled,
.k-button:not(.k-state-disabled):hover .k-i-collapse,
.k-button:not(.k-state-disabled):hover .k-minus,
.k-button:not(.k-state-disabled):hover .k-minus-disabled,
.k-textbox:hover .k-i-collapse,
.k-textbox:hover .k-minus,
.k-textbox:hover .k-minus-disabled,
.k-button:active .k-i-collapse,
.k-button:active .k-minus,
.k-button:active .k-minus-disabled {
  background-position: -16px -224px;
}
.k-i-collapse-w,
.k-rtl .k-i-collapse,
.k-rtl .k-minus,
.k-rtl .k-minus-disabled {
  background-position: 0px -240px;
}
.k-link:not(.k-state-disabled):hover > .k-i-collapse-w,
.k-link:not(.k-state-disabled):hover > .k-rtl .k-i-collapse,
.k-link:not(.k-state-disabled):hover > .k-rtl .k-minus,
.k-link:not(.k-state-disabled):hover > .k-rtl .k-minus-disabled,
.k-state-hover > .k-i-collapse-w,
.k-state-hover > .k-rtl .k-i-collapse,
.k-state-hover > .k-rtl .k-minus,
.k-state-hover > .k-rtl .k-minus-disabled,
.k-state-hover > * > .k-i-collapse-w,
.k-state-hover > * > .k-rtl .k-i-collapse,
.k-state-hover > * > .k-rtl .k-minus,
.k-state-hover > * > .k-rtl .k-minus-disabled,
.k-button:not(.k-state-disabled):hover .k-i-collapse-w,
.k-button:not(.k-state-disabled):hover .k-rtl .k-i-collapse,
.k-button:not(.k-state-disabled):hover .k-rtl .k-minus,
.k-button:not(.k-state-disabled):hover .k-rtl .k-minus-disabled,
.k-textbox:hover .k-i-collapse-w,
.k-textbox:hover .k-rtl .k-i-collapse,
.k-textbox:hover .k-rtl .k-minus,
.k-textbox:hover .k-rtl .k-minus-disabled,
.k-button:active .k-i-collapse-w,
.k-button:active .k-rtl .k-i-collapse,
.k-button:active .k-rtl .k-minus,
.k-button:active .k-rtl .k-minus-disabled {
  background-position: -16px -240px;
}
.k-i-pencil,
.k-edit {
  background-position: -32px 0px;
}
.k-link:not(.k-state-disabled):hover > .k-i-pencil,
.k-link:not(.k-state-disabled):hover > .k-edit,
.k-state-hover > .k-i-pencil,
.k-state-hover > .k-edit,
.k-state-hover > * > .k-i-pencil,
.k-state-hover > * > .k-edit,
.k-button:not(.k-state-disabled):hover .k-i-pencil,
.k-button:not(.k-state-disabled):hover .k-edit,
.k-textbox:hover .k-i-pencil,
.k-textbox:hover .k-edit,
.k-button:active .k-i-pencil,
.k-button:active .k-edit {
  background-position: -48px 0px;
}
.k-i-close,
.k-delete,
.k-group-delete {
  background-position: -32px -16px;
}
.k-link:not(.k-state-disabled):hover > .k-i-close,
.k-link:not(.k-state-disabled):hover > .k-delete,
.k-link:not(.k-state-disabled):hover > .k-group-delete,
.k-state-hover > .k-i-close,
.k-state-hover > .k-delete,
.k-state-hover > .k-group-delete,
.k-state-hover > * > .k-i-close,
.k-state-hover > * > .k-delete,
.k-state-hover > * > .k-group-delete,
.k-button:not(.k-state-disabled):hover .k-i-close,
.k-button:not(.k-state-disabled):hover .k-delete,
.k-button:not(.k-state-disabled):hover .k-group-delete,
.k-textbox:hover .k-i-close,
.k-textbox:hover .k-delete,
.k-textbox:hover .k-group-delete,
.k-button:active .k-i-close,
.k-button:active .k-delete,
.k-button:active .k-group-delete {
  background-position: -48px -16px;
}
.k-si-close {
  background-position: -160px -80px;
}
.k-link:not(.k-state-disabled):hover > .k-si-close,
.k-state-hover > .k-si-close,
.k-state-hover > * > .k-si-close,
.k-button:not(.k-state-disabled):hover .k-si-close,
.k-textbox:hover .k-si-close,
.k-button:active .k-si-close {
  background-position: -176px -80px;
}
.k-multiselect .k-delete {
  background-position: -160px -80px;
}
.k-multiselect .k-state-hover .k-delete {
  background-position: -176px -80px;
}
.k-i-tick,
.k-insert,
.k-update {
  background-position: -32px -32px;
}
.k-link:not(.k-state-disabled):hover > .k-i-tick,
.k-link:not(.k-state-disabled):hover > .k-insert,
.k-link:not(.k-state-disabled):hover > .k-update,
.k-state-hover > .k-i-tick,
.k-state-hover > .k-insert,
.k-state-hover > .k-update,
.k-state-hover > * > .k-i-tick,
.k-state-hover > * > .k-insert,
.k-state-hover > * > .k-update,
.k-button:not(.k-state-disabled):hover .k-i-tick,
.k-button:not(.k-state-disabled):hover .k-insert,
.k-button:not(.k-state-disabled):hover .k-update,
.k-textbox:hover .k-i-tick,
.k-textbox:hover .k-insert,
.k-textbox:hover .k-update,
.k-button:active .k-i-tick,
.k-button:active .k-insert,
.k-button:active .k-update {
  background-position: -48px -32px;
}
.k-check:checked,
.k-mobile-list .k-edit-field [type=checkbox],
.k-mobile-list .k-edit-field [type=radio] {
  background-position: -32px -32px;
}
.k-link:not(.k-state-disabled):hover > .k-check:checked,
.k-link:not(.k-state-disabled):hover > .k-mobile-list .k-edit-field [type=checkbox],
.k-link:not(.k-state-disabled):hover > .k-mobile-list .k-edit-field [type=radio],
.k-state-hover > .k-check:checked,
.k-state-hover > .k-mobile-list .k-edit-field [type=checkbox],
.k-state-hover > .k-mobile-list .k-edit-field [type=radio],
.k-state-hover > * > .k-check:checked,
.k-state-hover > * > .k-mobile-list .k-edit-field [type=checkbox],
.k-state-hover > * > .k-mobile-list .k-edit-field [type=radio],
.k-button:not(.k-state-disabled):hover .k-check:checked,
.k-button:not(.k-state-disabled):hover .k-mobile-list .k-edit-field [type=checkbox],
.k-button:not(.k-state-disabled):hover .k-mobile-list .k-edit-field [type=radio],
.k-textbox:hover .k-check:checked,
.k-textbox:hover .k-mobile-list .k-edit-field [type=checkbox],
.k-textbox:hover .k-mobile-list .k-edit-field [type=radio],
.k-button:active .k-check:checked,
.k-button:active .k-mobile-list .k-edit-field [type=checkbox],
.k-button:active .k-mobile-list .k-edit-field [type=radio] {
  background-position: -48px -32px;
}
.k-i-cancel,
.k-cancel,
.k-denied {
  background-position: -32px -48px;
}
.k-link:not(.k-state-disabled):hover > .k-i-cancel,
.k-link:not(.k-state-disabled):hover > .k-cancel,
.k-link:not(.k-state-disabled):hover > .k-denied,
.k-state-hover > .k-i-cancel,
.k-state-hover > .k-cancel,
.k-state-hover > .k-denied,
.k-state-hover > * > .k-i-cancel,
.k-state-hover > * > .k-cancel,
.k-state-hover > * > .k-denied,
.k-button:not(.k-state-disabled):hover .k-i-cancel,
.k-button:not(.k-state-disabled):hover .k-cancel,
.k-button:not(.k-state-disabled):hover .k-denied,
.k-textbox:hover .k-i-cancel,
.k-textbox:hover .k-cancel,
.k-textbox:hover .k-denied,
.k-button:active .k-i-cancel,
.k-button:active .k-cancel,
.k-button:active .k-denied {
  background-position: -48px -48px;
}
.k-i-plus,
.k-add {
  background-position: -32px -64px;
}
.k-link:not(.k-state-disabled):hover > .k-i-plus,
.k-link:not(.k-state-disabled):hover > .k-add,
.k-state-hover > .k-i-plus,
.k-state-hover > .k-add,
.k-state-hover > * > .k-i-plus,
.k-state-hover > * > .k-add,
.k-button:not(.k-state-disabled):hover .k-i-plus,
.k-button:not(.k-state-disabled):hover .k-add,
.k-textbox:hover .k-i-plus,
.k-textbox:hover .k-add,
.k-button:active .k-i-plus,
.k-button:active .k-add {
  background-position: -48px -64px;
}
.k-i-funnel,
.k-filter {
  background-position: -32px -80px;
}
.k-link:not(.k-state-disabled):hover > .k-i-funnel,
.k-link:not(.k-state-disabled):hover > .k-filter,
.k-state-hover > .k-i-funnel,
.k-state-hover > .k-filter,
.k-state-hover > * > .k-i-funnel,
.k-state-hover > * > .k-filter,
.k-button:not(.k-state-disabled):hover .k-i-funnel,
.k-button:not(.k-state-disabled):hover .k-filter,
.k-textbox:hover .k-i-funnel,
.k-textbox:hover .k-filter,
.k-button:active .k-i-funnel,
.k-button:active .k-filter {
  background-position: -48px -80px;
}
.k-i-funnel-clear,
.k-clear-filter {
  background-position: -32px -96px;
}
.k-link:not(.k-state-disabled):hover > .k-i-funnel-clear,
.k-link:not(.k-state-disabled):hover > .k-clear-filter,
.k-state-hover > .k-i-funnel-clear,
.k-state-hover > .k-clear-filter,
.k-state-hover > * > .k-i-funnel-clear,
.k-state-hover > * > .k-clear-filter,
.k-button:not(.k-state-disabled):hover .k-i-funnel-clear,
.k-button:not(.k-state-disabled):hover .k-clear-filter,
.k-textbox:hover .k-i-funnel-clear,
.k-textbox:hover .k-clear-filter,
.k-button:active .k-i-funnel-clear,
.k-button:active .k-clear-filter {
  background-position: -48px -96px;
}
.k-i-lock {
  background-position: -64px 0px;
}
.k-link:not(.k-state-disabled):hover > .k-i-lock,
.k-state-hover > .k-i-lock,
.k-state-hover > * > .k-i-lock,
.k-button:not(.k-state-disabled):hover .k-i-lock,
.k-textbox:hover .k-i-lock,
.k-button:active .k-i-lock {
  background-position: -80px 0px;
}
.k-i-unlock {
  background-position: -64px -16px;
}
.k-link:not(.k-state-disabled):hover > .k-i-unlock,
.k-state-hover > .k-i-unlock,
.k-state-hover > * > .k-i-unlock,
.k-button:not(.k-state-disabled):hover .k-i-unlock,
.k-textbox:hover .k-i-unlock,
.k-button:active .k-i-unlock {
  background-position: -80px -16px;
}
.k-i-refresh {
  background-position: -32px -112px;
}
.k-link:not(.k-state-disabled):hover > .k-i-refresh,
.k-state-hover > .k-i-refresh,
.k-state-hover > * > .k-i-refresh,
.k-button:not(.k-state-disabled):hover .k-i-refresh,
.k-textbox:hover .k-i-refresh,
.k-button:active .k-i-refresh {
  background-position: -48px -112px;
}
.k-i-exception {
  background-position: -160px -304px;
}
.k-link:not(.k-state-disabled):hover > .k-i-exception,
.k-state-hover > .k-i-exception,
.k-state-hover > * > .k-i-exception,
.k-button:not(.k-state-disabled):hover .k-i-exception,
.k-textbox:hover .k-i-exception,
.k-button:active .k-i-exception {
  background-position: -176px -304px;
}
.k-i-restore {
  background-position: -32px -128px;
}
.k-link:not(.k-state-disabled):hover > .k-i-restore,
.k-state-hover > .k-i-restore,
.k-state-hover > * > .k-i-restore,
.k-button:not(.k-state-disabled):hover .k-i-restore,
.k-textbox:hover .k-i-restore,
.k-button:active .k-i-restore {
  background-position: -48px -128px;
}
.k-i-maximize {
  background-position: -32px -144px;
}
.k-link:not(.k-state-disabled):hover > .k-i-maximize,
.k-state-hover > .k-i-maximize,
.k-state-hover > * > .k-i-maximize,
.k-button:not(.k-state-disabled):hover .k-i-maximize,
.k-textbox:hover .k-i-maximize,
.k-button:active .k-i-maximize {
  background-position: -48px -144px;
}
.k-i-minimize {
  background-position: -64px -288px;
}
.k-link:not(.k-state-disabled):hover > .k-i-minimize,
.k-state-hover > .k-i-minimize,
.k-state-hover > * > .k-i-minimize,
.k-button:not(.k-state-disabled):hover .k-i-minimize,
.k-textbox:hover .k-i-minimize,
.k-button:active .k-i-minimize {
  background-position: -80px -288px;
}
.k-i-pin {
  background-position: -160px -256px;
}
.k-link:not(.k-state-disabled):hover > .k-i-pin,
.k-state-hover > .k-i-pin,
.k-state-hover > * > .k-i-pin,
.k-button:not(.k-state-disabled):hover .k-i-pin,
.k-textbox:hover .k-i-pin,
.k-button:active .k-i-pin {
  background-position: -176px -256px;
}
.k-i-unpin {
  background-position: -160px -272px;
}
.k-link:not(.k-state-disabled):hover > .k-i-unpin,
.k-state-hover > .k-i-unpin,
.k-state-hover > * > .k-i-unpin,
.k-button:not(.k-state-disabled):hover .k-i-unpin,
.k-textbox:hover .k-i-unpin,
.k-button:active .k-i-unpin {
  background-position: -176px -272px;
}
.k-resize-se {
  background-position: -32px -160px;
}
.k-link:not(.k-state-disabled):hover > .k-resize-se,
.k-state-hover > .k-resize-se,
.k-state-hover > * > .k-resize-se,
.k-button:not(.k-state-disabled):hover .k-resize-se,
.k-textbox:hover .k-resize-se,
.k-button:active .k-resize-se {
  background-position: -48px -160px;
}
.k-i-calendar {
  background-position: -32px -176px;
}
.k-link:not(.k-state-disabled):hover > .k-i-calendar,
.k-state-hover > .k-i-calendar,
.k-state-hover > * > .k-i-calendar,
.k-button:not(.k-state-disabled):hover .k-i-calendar,
.k-textbox:hover .k-i-calendar,
.k-button:active .k-i-calendar {
  background-position: -48px -176px;
}
.k-i-clock {
  background-position: -32px -192px;
}
.k-link:not(.k-state-disabled):hover > .k-i-clock,
.k-state-hover > .k-i-clock,
.k-state-hover > * > .k-i-clock,
.k-button:not(.k-state-disabled):hover .k-i-clock,
.k-textbox:hover .k-i-clock,
.k-button:active .k-i-clock {
  background-position: -48px -192px;
}
.k-si-plus {
  background-position: -32px -208px;
}
.k-link:not(.k-state-disabled):hover > .k-si-plus,
.k-state-hover > .k-si-plus,
.k-state-hover > * > .k-si-plus,
.k-button:not(.k-state-disabled):hover .k-si-plus,
.k-textbox:hover .k-si-plus,
.k-button:active .k-si-plus {
  background-position: -48px -208px;
}
.k-si-minus {
  background-position: -32px -224px;
}
.k-link:not(.k-state-disabled):hover > .k-si-minus,
.k-state-hover > .k-si-minus,
.k-state-hover > * > .k-si-minus,
.k-button:not(.k-state-disabled):hover .k-si-minus,
.k-textbox:hover .k-si-minus,
.k-button:active .k-si-minus {
  background-position: -48px -224px;
}
.k-i-search {
  background-position: -32px -240px;
}
.k-link:not(.k-state-disabled):hover > .k-i-search,
.k-state-hover > .k-i-search,
.k-state-hover > * > .k-i-search,
.k-button:not(.k-state-disabled):hover .k-i-search,
.k-textbox:hover .k-i-search,
.k-button:active .k-i-search {
  background-position: -48px -240px;
}
.k-i-custom {
  background-position: -115px -113px;
}
.k-link:not(.k-state-disabled):hover > .k-i-custom,
.k-state-hover > .k-i-custom,
.k-state-hover > * > .k-i-custom,
.k-button:not(.k-state-disabled):hover .k-i-custom,
.k-textbox:hover .k-i-custom,
.k-button:active .k-i-custom {
  background-position: -141px -113px;
}
.k-editor .k-i-custom {
  background-position: -111px -109px;
}
.k-viewHtml {
  background-position: -288px -120px;
}
.k-i-insert-n,
.k-insert-top {
  background-position: -160px -32px;
}
.k-link:not(.k-state-disabled):hover > .k-i-insert-n,
.k-link:not(.k-state-disabled):hover > .k-insert-top,
.k-state-hover > .k-i-insert-n,
.k-state-hover > .k-insert-top,
.k-state-hover > * > .k-i-insert-n,
.k-state-hover > * > .k-insert-top,
.k-button:not(.k-state-disabled):hover .k-i-insert-n,
.k-button:not(.k-state-disabled):hover .k-insert-top,
.k-textbox:hover .k-i-insert-n,
.k-textbox:hover .k-insert-top,
.k-button:active .k-i-insert-n,
.k-button:active .k-insert-top {
  background-position: -176px -32px;
}
.k-i-insert-m,
.k-insert-middle {
  background-position: -160px -48px;
}
.k-link:not(.k-state-disabled):hover > .k-i-insert-m,
.k-link:not(.k-state-disabled):hover > .k-insert-middle,
.k-state-hover > .k-i-insert-m,
.k-state-hover > .k-insert-middle,
.k-state-hover > * > .k-i-insert-m,
.k-state-hover > * > .k-insert-middle,
.k-button:not(.k-state-disabled):hover .k-i-insert-m,
.k-button:not(.k-state-disabled):hover .k-insert-middle,
.k-textbox:hover .k-i-insert-m,
.k-textbox:hover .k-insert-middle,
.k-button:active .k-i-insert-m,
.k-button:active .k-insert-middle {
  background-position: -176px -48px;
}
.k-i-insert-s,
.k-insert-bottom {
  background-position: -160px -64px;
}
.k-link:not(.k-state-disabled):hover > .k-i-insert-s,
.k-link:not(.k-state-disabled):hover > .k-insert-bottom,
.k-state-hover > .k-i-insert-s,
.k-state-hover > .k-insert-bottom,
.k-state-hover > * > .k-i-insert-s,
.k-state-hover > * > .k-insert-bottom,
.k-button:not(.k-state-disabled):hover .k-i-insert-s,
.k-button:not(.k-state-disabled):hover .k-insert-bottom,
.k-textbox:hover .k-i-insert-s,
.k-textbox:hover .k-insert-bottom,
.k-button:active .k-i-insert-s,
.k-button:active .k-insert-bottom {
  background-position: -176px -64px;
}
.k-drop-hint {
  background-position: 0 -326px;
}
.k-i-note,
.k-warning {
  background-position: -160px -240px;
}
.k-link:not(.k-state-disabled):hover > .k-i-note,
.k-link:not(.k-state-disabled):hover > .k-warning,
.k-state-hover > .k-i-note,
.k-state-hover > .k-warning,
.k-state-hover > * > .k-i-note,
.k-state-hover > * > .k-warning,
.k-button:not(.k-state-disabled):hover .k-i-note,
.k-button:not(.k-state-disabled):hover .k-warning,
.k-textbox:hover .k-i-note,
.k-textbox:hover .k-warning,
.k-button:active .k-i-note,
.k-button:active .k-warning {
  background-position: -176px -240px;
}
.k-i-sort-asc {
  background-position: -112px -240px;
}
.k-link:not(.k-state-disabled):hover > .k-i-sort-asc,
.k-state-hover > .k-i-sort-asc,
.k-state-hover > * > .k-i-sort-asc,
.k-button:not(.k-state-disabled):hover .k-i-sort-asc,
.k-textbox:hover .k-i-sort-asc,
.k-button:active .k-i-sort-asc {
  background-position: -128px -240px;
}
.k-i-sort-desc {
  background-position: -112px -256px;
}
.k-link:not(.k-state-disabled):hover > .k-i-sort-desc,
.k-state-hover > .k-i-sort-desc,
.k-state-hover > * > .k-i-sort-desc,
.k-button:not(.k-state-disabled):hover .k-i-sort-desc,
.k-textbox:hover .k-i-sort-desc,
.k-button:active .k-i-sort-desc {
  background-position: -128px -256px;
}
.k-i-group {
  background-position: -112px -272px;
}
.k-link:not(.k-state-disabled):hover > .k-i-group,
.k-state-hover > .k-i-group,
.k-state-hover > * > .k-i-group,
.k-button:not(.k-state-disabled):hover .k-i-group,
.k-textbox:hover .k-i-group,
.k-button:active .k-i-group {
  background-position: -128px -272px;
}
.k-i-ungroup {
  background-position: -112px -288px;
}
.k-link:not(.k-state-disabled):hover > .k-i-ungroup,
.k-state-hover > .k-i-ungroup,
.k-state-hover > * > .k-i-ungroup,
.k-button:not(.k-state-disabled):hover .k-i-ungroup,
.k-textbox:hover .k-i-ungroup,
.k-button:active .k-i-ungroup {
  background-position: -128px -288px;
}
.k-i-columns {
  background-position: -112px -304px;
}
.k-link:not(.k-state-disabled):hover > .k-i-columns,
.k-state-hover > .k-i-columns,
.k-state-hover > * > .k-i-columns,
.k-button:not(.k-state-disabled):hover .k-i-columns,
.k-textbox:hover .k-i-columns,
.k-button:active .k-i-columns {
  background-position: -128px -304px;
}
.k-i-hbars {
  background-position: -64px -32px;
}
.k-link:not(.k-state-disabled):hover > .k-i-hbars,
.k-state-hover > .k-i-hbars,
.k-state-hover > * > .k-i-hbars,
.k-button:not(.k-state-disabled):hover .k-i-hbars,
.k-textbox:hover .k-i-hbars,
.k-button:active .k-i-hbars {
  background-position: -80px -32px;
}
.k-i-vbars {
  background-position: -64px -48px;
}
.k-link:not(.k-state-disabled):hover > .k-i-vbars,
.k-state-hover > .k-i-vbars,
.k-state-hover > * > .k-i-vbars,
.k-button:not(.k-state-disabled):hover .k-i-vbars,
.k-textbox:hover .k-i-vbars,
.k-button:active .k-i-vbars {
  background-position: -80px -48px;
}
.k-i-sum {
  background-position: -64px -64px;
}
.k-link:not(.k-state-disabled):hover > .k-i-sum,
.k-state-hover > .k-i-sum,
.k-state-hover > * > .k-i-sum,
.k-button:not(.k-state-disabled):hover .k-i-sum,
.k-textbox:hover .k-i-sum,
.k-button:active .k-i-sum {
  background-position: -80px -64px;
}
.k-i-pdf {
  background-position: -64px -80px;
}
.k-link:not(.k-state-disabled):hover > .k-i-pdf,
.k-state-hover > .k-i-pdf,
.k-state-hover > * > .k-i-pdf,
.k-button:not(.k-state-disabled):hover .k-i-pdf,
.k-textbox:hover .k-i-pdf,
.k-button:active .k-i-pdf {
  background-position: -80px -80px;
}
.k-i-excel {
  background-position: -64px -96px;
}
.k-link:not(.k-state-disabled):hover > .k-i-excel,
.k-state-hover > .k-i-excel,
.k-state-hover > * > .k-i-excel,
.k-button:not(.k-state-disabled):hover .k-i-excel,
.k-textbox:hover .k-i-excel,
.k-button:active .k-i-excel {
  background-position: -80px -96px;
}
.k-i-rotatecw {
  background-position: -64px -112px;
}
.k-link:not(.k-state-disabled):hover > .k-i-rotatecw,
.k-state-hover > .k-i-rotatecw,
.k-state-hover > * > .k-i-rotatecw,
.k-button:not(.k-state-disabled):hover .k-i-rotatecw,
.k-textbox:hover .k-i-rotatecw,
.k-button:active .k-i-rotatecw {
  background-position: -80px -112px;
}
.k-i-rotateccw {
  background-position: -64px -128px;
}
.k-link:not(.k-state-disabled):hover > .k-i-rotateccw,
.k-state-hover > .k-i-rotateccw,
.k-state-hover > * > .k-i-rotateccw,
.k-button:not(.k-state-disabled):hover .k-i-rotateccw,
.k-textbox:hover .k-i-rotateccw,
.k-button:active .k-i-rotateccw {
  background-position: -80px -128px;
}
.k-i-undo {
  background-position: -64px -160px;
}
.k-link:not(.k-state-disabled):hover > .k-i-undo,
.k-state-hover > .k-i-undo,
.k-state-hover > * > .k-i-undo,
.k-button:not(.k-state-disabled):hover .k-i-undo,
.k-textbox:hover .k-i-undo,
.k-button:active .k-i-undo {
  background-position: -80px -160px;
}
.k-i-redo {
  background-position: -64px -144px;
}
.k-link:not(.k-state-disabled):hover > .k-i-redo,
.k-state-hover > .k-i-redo,
.k-state-hover > * > .k-i-redo,
.k-button:not(.k-state-disabled):hover .k-i-redo,
.k-textbox:hover .k-i-redo,
.k-button:active .k-i-redo {
  background-position: -80px -144px;
}
.k-i-shape {
  background-position: -64px -176px;
}
.k-link:not(.k-state-disabled):hover > .k-i-shape,
.k-state-hover > .k-i-shape,
.k-state-hover > * > .k-i-shape,
.k-button:not(.k-state-disabled):hover .k-i-shape,
.k-textbox:hover .k-i-shape,
.k-button:active .k-i-shape {
  background-position: -80px -176px;
}
.k-i-connector {
  background-position: -64px -192px;
}
.k-link:not(.k-state-disabled):hover > .k-i-connector,
.k-state-hover > .k-i-connector,
.k-state-hover > * > .k-i-connector,
.k-button:not(.k-state-disabled):hover .k-i-connector,
.k-textbox:hover .k-i-connector,
.k-button:active .k-i-connector {
  background-position: -80px -192px;
}
.k-i-kpi {
  background-position: -64px -208px;
}
.k-link:not(.k-state-disabled):hover > .k-i-kpi,
.k-state-hover > .k-i-kpi,
.k-state-hover > * > .k-i-kpi,
.k-button:not(.k-state-disabled):hover .k-i-kpi,
.k-textbox:hover .k-i-kpi,
.k-button:active .k-i-kpi {
  background-position: -80px -208px;
}
.k-i-dimension {
  background-position: -64px -224px;
}
.k-link:not(.k-state-disabled):hover > .k-i-dimension,
.k-state-hover > .k-i-dimension,
.k-state-hover > * > .k-i-dimension,
.k-button:not(.k-state-disabled):hover .k-i-dimension,
.k-textbox:hover .k-i-dimension,
.k-button:active .k-i-dimension {
  background-position: -80px -224px;
}
.k-file {
  background-position: 0px 0px;
}
.k-link:not(.k-state-disabled):hover > .k-file,
.k-state-hover > .k-file,
.k-state-hover > * > .k-file,
.k-button:not(.k-state-disabled):hover .k-file,
.k-textbox:hover .k-file,
.k-button:active .k-file {
  background-position: -16px 0px;
}
.k-i-folder-add,
.k-addfolder {
  background-position: -32px -272px;
}
.k-link:not(.k-state-disabled):hover > .k-i-folder-add,
.k-link:not(.k-state-disabled):hover > .k-addfolder,
.k-state-hover > .k-i-folder-add,
.k-state-hover > .k-addfolder,
.k-state-hover > * > .k-i-folder-add,
.k-state-hover > * > .k-addfolder,
.k-button:not(.k-state-disabled):hover .k-i-folder-add,
.k-button:not(.k-state-disabled):hover .k-addfolder,
.k-textbox:hover .k-i-folder-add,
.k-textbox:hover .k-addfolder,
.k-button:active .k-i-folder-add,
.k-button:active .k-addfolder {
  background-position: -48px -272px;
}
.k-i-folder-up,
.k-goup {
  background-position: -32px -288px;
}
.k-link:not(.k-state-disabled):hover > .k-i-folder-up,
.k-link:not(.k-state-disabled):hover > .k-goup,
.k-state-hover > .k-i-folder-up,
.k-state-hover > .k-goup,
.k-state-hover > * > .k-i-folder-up,
.k-state-hover > * > .k-goup,
.k-button:not(.k-state-disabled):hover .k-i-folder-up,
.k-button:not(.k-state-disabled):hover .k-goup,
.k-textbox:hover .k-i-folder-up,
.k-textbox:hover .k-goup,
.k-button:active .k-i-folder-up,
.k-button:active .k-goup {
  background-position: -48px -288px;
}
.k-i-more {
  background-position: -64px -32px;
}
.k-link:not(.k-state-disabled):hover > .k-i-more,
.k-state-hover > .k-i-more,
.k-state-hover > * > .k-i-more,
.k-button:not(.k-state-disabled):hover .k-i-more,
.k-textbox:hover .k-i-more,
.k-button:active .k-i-more {
  background-position: -80px -32px;
}
.k-file > .k-icon {
  background-position: -115px -91px;
}
.k-image {
  border: 0;
}
.k-breadcrumbs:hover .k-i-arrow-n {
  background-position: 0 0;
}
.k-breadcrumbs:hover .k-i-arrow-e {
  background-position: 0 -16px;
}
/* Dropdown icon in k-scheduler-views */
.k-pager-numbers .k-current-page .k-link:after,
.k-scheduler-toolbar > ul.k-scheduler-views > li.k-current-view .k-link:after {
  background-position: 0px -32px;
}
.k-link:not(.k-state-disabled):hover > .k-pager-numbers .k-current-page .k-link:after,
.k-link:not(.k-state-disabled):hover > .k-scheduler-toolbar > ul.k-scheduler-views > li.k-current-view .k-link:after,
.k-state-hover > .k-pager-numbers .k-current-page .k-link:after,
.k-state-hover > .k-scheduler-toolbar > ul.k-scheduler-views > li.k-current-view .k-link:after,
.k-state-hover > * > .k-pager-numbers .k-current-page .k-link:after,
.k-state-hover > * > .k-scheduler-toolbar > ul.k-scheduler-views > li.k-current-view .k-link:after,
.k-button:not(.k-state-disabled):hover .k-pager-numbers .k-current-page .k-link:after,
.k-button:not(.k-state-disabled):hover .k-scheduler-toolbar > ul.k-scheduler-views > li.k-current-view .k-link:after,
.k-textbox:hover .k-pager-numbers .k-current-page .k-link:after,
.k-textbox:hover .k-scheduler-toolbar > ul.k-scheduler-views > li.k-current-view .k-link:after,
.k-button:active .k-pager-numbers .k-current-page .k-link:after,
.k-button:active .k-scheduler-toolbar > ul.k-scheduler-views > li.k-current-view .k-link:after {
  background-position: -16px -32px;
}
/* Colors */
html .k-success-colored {
  color: #507f50;
  border-color: #d0dfd0;
  background-color: #f0fff0;
}
html .k-info-colored {
  color: #50607f;
  border-color: #d0d9df;
  background-color: #f0f9ff;
}
html .k-error-colored {
  color: #7f5050;
  border-color: #dfd0d0;
  background-color: #fff0f0;
}
.k-inline-block {
  padding: 0 2px;
}
/* loading */
.k-loading,
.k-loading-image {
  background-color: transparent;
  background-repeat: no-repeat;
  background-position: center center;
}
.k-loading-mask,
.k-loading-image,
.k-loading-text {
  position: absolute;
}
.k-loading-mask {
  z-index: 100;
}
.k-loading-text {
  text-indent: -4000px;
  text-align: center;
  /*rtl*/
}
.k-loading-image,
.k-loading-color {
  width: 100%;
  height: 100%;
}
.k-loading-image {
  top: 0;
  left: 0;
  z-index: 2;
}
.k-loading-color {
  filter: alpha(opacity=30);
  opacity: .3;
}
.k-content-frame {
  border: 0;
  width: 100%;
  height: 100%;
}
.k-pane > .k-splitter-overlay {
  filter: alpha(opacity=0);
  opacity: 0;
  position: absolute;
}
/* drag n drop */
.k-drag-clue {
  position: absolute;
  z-index: 10003;
  border-style: solid;
  border-width: 1px;
  font-size: .9em;
  padding: .2em .4em;
  white-space: nowrap;
  cursor: default;
}
.k-drag-status {
  margin-top: -3px;
  margin-right: 4px;
  vertical-align: middle;
}
.k-reorder-cue {
  position: absolute;
  width: 1px;
  overflow: visible;
}
.k-reorder-cue .k-icon {
  position: absolute;
  left: -4px;
  width: 8px;
  height: 4px;
}
.k-reorder-cue .k-i-arrow-s {
  top: -4px;
  background-position: -4px -166px;
}
.k-reorder-cue .k-i-arrow-n {
  bottom: -4px;
  background-position: -4px -134px;
}
/* virtual scrollbar */
.k-scrollbar {
  position: absolute;
  overflow: scroll;
}
.k-scrollbar-vertical {
  top: 0;
  right: 0;
  width: 17px;
  /* scrollbar width */
  height: 100%;
  overflow-x: hidden;
}
.k-touch-scrollbar {
  display: none;
  position: absolute;
  z-index: 200000;
  height: 8px;
  width: 8px;
  border: 1px solid #8a8a8a;
  background-color: #858585;
}
@media only screen and (-webkit-min-device-pixel-ratio: 2) {
  body .k-touch-scrollbar {
    height: 12px;
    width: 12px;
    border-radius: 7px;
  }
}
.k-virtual-scrollable-wrap {
  overflow-x: auto;
  /*needed by IE8*/
}
/* current time indicator */
.k-current-time {
  background: #f00;
  position: absolute;
}
/* override box sizing for grid layout framework integration (Bootstrap 3, Foundation 4) */
.k-animation-container,
.k-widget,
.k-widget *,
.k-animation-container *,
.k-widget *:before,
.k-animation-container *:after,
.k-block .k-header,
.k-list-container {
  -webkit-box-sizing: content-box;
  -moz-box-sizing: content-box;
  box-sizing: content-box;
}
.k-button,
.k-textbox,
.k-autocomplete,
div.k-window-content,
.k-tabstrip > .k-content > .km-scroll-container,
.k-block,
.k-edit-cell .k-widget,
.k-grid-edit-row .k-widget,
.k-grid-edit-row .text-box,
.km-actionsheet > li,
.km-shim {
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  box-sizing: border-box;
}
/* Fix for Bootstrap 3 */
.input-group .form-control {
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  box-sizing: border-box;
}
.form-control.k-widget {
  padding: 0;
}
a.k-button:hover {
  text-decoration: none;
}
/* override iOS styles in mobile Kendo */
.k-widget,
.k-widget * {
  -moz-background-clip: border-box;
  -webkit-background-clip: border-box;
  background-clip: border-box;
}
input.k-checkbox,
.k-radio {
  display: inline;
  opacity: 0;
  width: 0;
  margin: 0;
  position: absolute;
}
.k-checkbox-label {
  position: relative;
  padding-left: 1.5em;
  vertical-align: middle;
  line-height: 0.875em;
  cursor: pointer;
}
.k-checkbox-label:before {
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  width: 1em;
  height: 1em;
  border-width: 1px;
  border-style: solid;
}
.k-checkbox-label:after {
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  width: 1em;
  height: 1em;
  border-width: 1px;
  border-style: solid;
}
.k-checkbox:checked + .k-checkbox-label:after {
  content: "\2713";
  width: 1em;
  height: 1em;
  position: absolute;
  top: 0;
  left: 0;
  border-width: 1px;
  border-style: solid;
  text-align: center;
}
.k-checkbox:disabled + .k-checkbox-label {
  cursor: auto;
}
.k-radio-label {
  position: relative;
  padding-left: 1.5em;
  vertical-align: middle;
  line-height: 0.875em;
  cursor: pointer;
}
.k-radio-label:before {
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  width: 14px;
  height: 14px;
  border-style: solid;
}
.k-radio:checked + .k-radio-label:after {
  content: "";
  width: 10px;
  height: 10px;
  position: absolute;
  top: 3px;
  left: 3px;
}
.k-radio:disabled + .k-radio-label {
  cursor: auto;
}
.k-ie8 input.k-checkbox,
.k-ie8 .k-radio {
  display: inline-block;
  width: auto;
}
.k-ie8 .k-checkbox-label,
.k-ie8 .k-radio-label {
  padding-left: 0;
}
.k-ie8 .k-checkbox-label:before,
.k-ie8 .k-checkbox-label:after,
.k-ie8 .k-radio-label:before,
.k-ie8 .k-radio-label:after {
  display: none;
}
/* RTL for checkboxes and radio buttons */
.k-rtl .k-checkbox-label,
.k-rtl .k-radio-label {
  padding-right: 1.5em;
}
.k-rtl .k-checkbox-label:before,
.k-rtl .k-checkbox-label:after,
.k-rtl .k-radio-label:before {
  right: 0;
}
.k-rtl .k-radio:checked + .k-radio-label:after {
  right: 3px;
}
input.k-checkbox + label {
  -webkit-user-select: none;
  user-select: none;
}
/* Off-screen container used during export */
.k-pdf-export-shadow {
  position: absolute;
  overflow: hidden;
  left: -15000px;
  width: 14400px;
}
/* responsive panel */
.k-rpanel-left {
  -webkit-transform: translateX(-100%) translateZ(0);
  -ms-transform: translateX(-100%) translateZ(0);
  transform: translateX(-100%) translateZ(0);
  left: 0;
}
.k-rpanel-right {
  -webkit-transform: translateX(100%) translateZ(0);
  -ms-transform: translateX(100%) translateZ(0);
  transform: translateX(100%) translateZ(0);
  right: 0;
}
.k-rpanel-left,
.k-rpanel-right {
  position: fixed;
  display: block;
  overflow: auto;
  min-width: 320px;
  height: 100%;
  top: 0;
}
.k-rpanel-left.k-rpanel-expanded,
.k-rpanel-right.k-rpanel-expanded {
  -webkit-transform: translateX(0) translateZ(0);
  -ms-transform: translateX(0) translateZ(0);
  transform: translateX(0) translateZ(0);
}
.k-rpanel-left + *,
.k-rpanel-right + * {
  overflow: auto;
}
.k-rpanel-top {
  position: static;
  overflow: hidden;
  max-height: 0;
}
.k-rpanel-top.k-rpanel-expanded {
  max-height: 568px;
}
.k-edit-form {
  margin: 0;
  padding: 0;
}
.k-window > div.k-popup-edit-form {
  padding: 1em 0;
}
.k-grid-edit-row .k-edit-form td {
  border-bottom-width: 0;
}
.k-edit-form-container {
  position: relative;
  width: 400px;
}
.k-edit-label,
.k-edit-form-container .editor-label {
  float: left;
  clear: both;
  width: 30%;
  padding: .4em 0 1em;
  margin-left: 2%;
  text-align: right;
}
.k-edit-field,
.k-edit-form-container .editor-field {
  float: right;
  clear: right;
  width: 60%;
  margin-right: 2%;
  padding: 0 0 .6em;
}
.k-edit-field > input[type="checkbox"],
.k-edit-field > input[type="radio"] {
  margin-top: .4em;
}
.k-edit-form-container .k-button {
  margin: 0 .16em;
}
.k-edit-field > input[type="checkbox"]:first-child,
.k-edit-field > input[type="radio"]:first-child,
.k-edit-field > label:first-child > input[type="checkbox"],
.k-edit-field > .k-button:first-child {
  margin-left: 0;
}
.k-edit-form-container .k-edit-buttons {
  clear: both;
  text-align: right;
  border-width: 1px 0 0;
  border-style: solid;
  position: relative;
  bottom: -1em;
  padding: .6em;
}
/* Window */
div.k-window {
  display: inline-block;
  position: absolute;
  z-index: 10001;
  border-style: solid;
  border-width: 1px;
  padding-top: 2em;
}
.k-block > .k-header,
.k-window-titlebar {
  position: absolute;
  width: 100%;
  height: 1.1em;
  border-bottom-style: solid;
  border-bottom-width: 1px;
  margin-top: -2em;
  padding: .4em 0;
  font-size: 1.2em;
  white-space: nowrap;
  min-height: 16px;
  /* icon size */
}
.k-block > .k-header {
  position: relative;
  margin: -2px 0 10px -2px;
  padding: .3em 2px;
}
.k-window-title {
  position: absolute;
  left: .44em;
  right: .44em;
  overflow: hidden;
  cursor: default;
  text-overflow: ellipsis;
}
.k-window-title .k-image {
  margin: 0 5px 0 0;
  vertical-align: middle;
}
div.k-window-titleless {
  padding-top: 0;
}
div.k-window-content {
  position: relative;
  height: 100%;
  padding: .58em;
  overflow: auto;
  outline: 0;
}
div.k-window-iframecontent {
  padding: 0;
  overflow: visible;
}
.k-window-content > .km-scroll-container {
  height: 100%;
}
/* Compensate for content padding in IE7 */
.k-ie7 .k-window {
  padding-bottom: 1.16em;
}
.k-ie7 .k-window-titleless {
  padding-bottom: 0;
}
.k-window-titlebar .k-window-actions {
  position: absolute;
  top: 0;
  right: .3em;
  padding-top: .3em;
  white-space: nowrap;
}
.k-window-titlebar .k-window-action {
  display: inline-block;
  width: 16px;
  height: 16px;
  padding: 2px;
  text-decoration: none;
  vertical-align: middle;
  opacity: .7;
}
.k-window-titlebar .k-state-hover {
  border-style: solid;
  border-width: 1px;
  padding: 1px;
  opacity: 1;
}
.k-window-action .k-icon {
  margin: 0;
  vertical-align: top;
}
.k-window > .k-resize-handle {
  position: absolute;
  z-index: 1;
  background-color: #fff;
  font-size: 0;
  line-height: 6px;
  filter: alpha(opacity=0);
  opacity: 0;
  zoom: 1;
}
.k-resize-n {
  top: -3px;
  left: 0;
  width: 100%;
  height: 6px;
  cursor: n-resize;
}
.k-resize-e {
  top: 0;
  right: -3px;
  width: 6px;
  height: 100%;
  cursor: e-resize;
}
.k-resize-s {
  bottom: -3px;
  left: 0;
  width: 100%;
  height: 6px;
  cursor: s-resize;
}
.k-resize-w {
  top: 0;
  left: -3px;
  width: 6px;
  height: 100%;
  cursor: w-resize;
}
.k-resize-se {
  bottom: -3px;
  right: -3px;
  width: 16px;
  height: 16px;
  cursor: se-resize;
}
.k-resize-sw {
  bottom: -3px;
  left: -3px;
  width: 6px;
  height: 6px;
  cursor: sw-resize;
}
.k-resize-ne {
  top: -3px;
  right: -3px;
  width: 6px;
  height: 6px;
  cursor: ne-resize;
}
.k-resize-nw {
  top: -3px;
  left: -3px;
  width: 6px;
  height: 6px;
  cursor: nw-resize;
}
.k-overlay {
  position: fixed;
  top: 0;
  left: 0;
  z-index: 10001;
  width: 100%;
  height: 100%;
  background-color: #000;
  filter: alpha(opacity=50);
  opacity: .5;
}
.k-window .k-overlay {
  position: absolute;
  width: 100%;
  height: 100%;
  background-color: #fff;
  filter: alpha(opacity=0);
  opacity: 0;
}
/* TabStrip */
.k-tabstrip {
  margin: 0;
  padding: 0;
  zoom: 1;
  position: relative;
}
.k-tabstrip-scrollable .k-tabstrip-items {
  padding: 0.3em 0.3em 0;
  white-space: nowrap;
  overflow: hidden;
}
.k-tabstrip > .k-button {
  position: absolute;
  top: .4em;
  z-index: 2;
  -moz-user-select: -moz-none;
  -khtml-user-select: none;
  -webkit-user-select: none;
  -ms-user-select: none;
  user-select: none;
}
.k-tabstrip-bottom > .k-button {
  top: auto;
  bottom: .4em;
}
.k-tabstrip-prev {
  left: .4em;
}
.k-tabstrip-next {
  right: .4em;
}
.k-tabstrip-items .k-item,
.k-panelbar .k-tabstrip-items .k-item {
  list-style-type: none;
  display: inline-block;
  position: relative;
  border-style: solid;
  border-width: 1px 1px 0;
  margin: 0 -1px 0 0;
  padding: 0;
  vertical-align: top;
}
.k-tabstrip-items .k-tab-on-top,
.k-tabstrip-items .k-state-active,
.k-panelbar .k-tabstrip-items .k-state-active {
  margin-bottom: -1px;
  padding-bottom: 1px;
}
.k-tabstrip-items .k-tab-on-top {
  z-index: 1;
}
.k-tabstrip-items .k-link,
.k-panelbar .k-tabstrip-items .k-link {
  display: inline-block;
  border-bottom-width: 0;
  padding: .5em .92em;
}
.k-tabstrip-items .k-icon,
.k-panelbar .k-tabstrip-items .k-icon {
  margin: -1px 4px 0 -3px;
  vertical-align: top;
}
.k-tabstrip-items .k-item .k-image,
.k-tabstrip-items .k-item .k-sprite,
.k-panelbar .k-tabstrip-items .k-item .k-image,
.k-panelbar .k-tabstrip-items .k-item .k-sprite {
  margin: -3px 3px 0 -6px;
  vertical-align: middle;
}
.k-ie7 .k-tabstrip-items .k-item .k-image,
.k-ie7 .k-tabstrip-items .k-item .k-sprite {
  margin-top: -1px;
  vertical-align: top;
}
/* TabStrip Loading Progress */
.k-tabstrip-items .k-loading {
  top: 0;
  left: 0;
  height: 0;
  width: 20%;
  position: absolute;
  background: transparent;
  border-top: 1px solid transparent;
  border-color: inherit;
  -webkit-transition: width 200ms linear;
  -moz-transition: width 200ms linear;
  -o-transition: width 200ms linear;
  transition: width 200ms linear;
  -webkit-transition: "width 200ms linear";
  -moz-transition: "width 200ms linear";
  -ms-transition: "width 200ms linear";
  -o-transition: "width 200ms linear";
  transition: "width 200ms linear";
  animation: k-tab-loader 1s ease-in-out infinite;
  -moz-animation: k-tab-loader 1s ease-in-out infinite;
  -webkit-animation: k-tab-loader 1s ease-in-out infinite;
}
.k-tabstrip-items .k-progress {
  animation: none;
  -moz-animation: none;
  -webkit-animation: none;
}
.k-tabstrip-items .k-loading.k-complete {
  width: 100%;
  animation: none;
  -moz-animation: none;
  -webkit-animation: none;
}
.k-tabstrip > .k-content,
.k-panelbar .k-tabstrip > .k-content {
  position: static;
  border-style: solid;
  border-width: 1px;
  margin: 0 .286em .3em;
  padding: .3em .92em;
  zoom: 1;
}
.k-tabstrip > .k-content {
  display: none;
  overflow: auto;
}
.k-tabstrip > .k-content.km-scroll-wrapper {
  padding: 0;
}
.k-tabstrip > .k-content > .km-scroll-container {
  padding: .3em .92em;
}
@-webkit-keyframes k-tab-loader {
  0% {
    left: 0;
  }
  50% {
    left: 80%;
  }
  100% {
    left: 0;
  }
}
@-moz-keyframes k-tab-loader {
  0% {
    left: 0;
  }
  50% {
    left: 80%;
  }
  100% {
    left: 0;
  }
}
@keyframes k-tab-loader {
  0% {
    left: 0;
  }
  50% {
    left: 80%;
  }
  100% {
    left: 0;
  }
}
/* left and right tabs */
.k-tabstrip-left > div.k-content,
.k-tabstrip-right > div.k-content {
  margin: .286em .3em;
}
.k-tabstrip-left > .k-tabstrip-items .k-item,
.k-tabstrip-right > .k-tabstrip-items .k-item {
  display: block;
  margin-bottom: -1px;
}
.k-tabstrip-left > .k-tabstrip-items .k-link,
.k-tabstrip-right > .k-tabstrip-items .k-link {
  display: block;
}
.k-tabstrip-left > .k-tabstrip-items .k-tab-on-top,
.k-tabstrip-right > .k-tabstrip-items .k-tab-on-top,
.k-tabstrip-left > .k-tabstrip-items .k-state-active,
.k-tabstrip-right > .k-tabstrip-items .k-state-active,
.k-panelbar .k-tabstrip-left > .k-tabstrip-items .k-state-active,
.k-panelbar .k-tabstrip-right > .k-tabstrip-items .k-state-active {
  margin-bottom: -1px;
  padding-bottom: 0;
}
/* left tabs */
.k-tabstrip-left > .k-tabstrip-items {
  float: left;
  padding: .25em 0 .3em .3em;
}
.k-tabstrip-left > .k-tabstrip-items .k-item {
  border-width: 1px 0 1px 1px;
  border-radius: 3px 0 0 3px;
}
.k-tabstrip-left > .k-tabstrip-items .k-state-active {
  border-width: 1px 0 1px 1px;
}
.k-tabstrip-left > .k-tabstrip-items .k-tab-on-top,
.k-tabstrip-left > .k-tabstrip-items .k-state-active,
.k-panelbar .k-tabstrip-left > .k-tabstrip-items .k-state-active {
  margin-right: -2px;
  padding-right: 1px;
}
/* right tabs */
.k-tabstrip-right > .k-tabstrip-items {
  float: right;
  padding: .25em .3em .3em 0;
}
.k-tabstrip-right > .k-tabstrip-items .k-item {
  border-width: 1px 1px 1px 0;
  border-radius: 0 3px 3px 0;
}
.k-tabstrip-right > .k-tabstrip-items .k-state-active {
  border-width: 1px 1px 1px 0;
}
.k-tabstrip-right > .k-tabstrip-items .k-tab-on-top,
.k-tabstrip-right > .k-tabstrip-items .k-state-active,
.k-panelbar .k-tabstrip-right > .k-tabstrip-items .k-state-active {
  margin-left: -1px;
  padding-left: 1px;
}
/* bottom tabs */
.k-tabstrip-bottom > .k-tabstrip-items {
  margin-top: -1px;
  padding: 0 .3em .3em;
}
.k-tabstrip-bottom > .k-content,
.k-panelbar .k-tabstrip-bottom > .k-content {
  margin: .3em .286em 0;
  z-index: 1;
  position: relative;
}
.k-tabstrip-bottom > .k-tabstrip-items .k-item {
  border-width: 0 1px 1px;
  border-radius: 0 0 4px 4px;
}
.k-tabstrip-bottom > .k-tabstrip-items .k-state-active {
  margin-bottom: 0;
  padding-bottom: 0;
}
.k-tabstrip-bottom > .k-content {
  min-height: 100px;
}
.k-tabstrip-bottom > .k-tabstrip-items .k-loading {
  top: auto;
  bottom: 0;
}
/* PanelBar */
.k-panelbar {
  zoom: 1;
}
.k-panelbar > .k-item,
.k-panel > .k-item {
  list-style-type: none;
  display: block;
  border-width: 0;
  margin: 0;
  zoom: 1;
  border-radius: 0;
}
.k-panelbar .k-image,
.k-panelbar .k-sprite {
  float: left;
  margin-top: 4px;
  margin-right: 5px;
  vertical-align: middle;
}
.k-panelbar > .k-item > .k-link,
.k-panel > .k-item > .k-link {
  display: block;
  position: relative;
  border-bottom-style: solid;
  border-bottom-width: 1px;
  padding: 0 1em;
  line-height: 2.34em;
  text-decoration: none;
  zoom: 1;
}
.k-panelbar-expand,
.k-panelbar-collapse {
  position: absolute;
  top: 50%;
  right: 4px;
  margin-top: -8px;
}
.k-panelbar .k-panel,
.k-panelbar .k-content {
  position: relative;
  border-bottom-style: solid;
  border-bottom-width: 1px;
  margin: 0;
  padding: 0;
  zoom: 1;
}
.k-panel > .k-item > .k-link {
  border-bottom: 0;
  font-size: .95em;
  line-height: 2.2;
}
.k-panel .k-panel > .k-item > .k-link {
  padding-left: 2em;
}
.k-panelbar .k-i-seek-e .k-link {
  border-bottom: 0;
}
.k-panel .k-panel {
  border-bottom: 0;
}
/* Menu */
.k-menu {
  cursor: default;
}
.k-menu,
.k-menu .k-menu-group {
  list-style: none;
  margin: 0;
  padding: 0;
  zoom: 1;
}
.k-menu:after {
  content: '';
  display: block;
  width: 99%;
  height: 0;
  float: inherit;
  clear: both;
}
.k-menu .k-item {
  -webkit-user-select: none;
  -moz-user-select: -moz-none;
  user-select: none;
}
.k-menu .k-item div {
  -webkit-user-select: default;
  -moz-user-select: default;
  user-select: default;
}
.k-menu .k-item .k-item,
ul.k-menu-vertical > .k-item {
  display: block;
  float: none;
  border-width: 0;
}
.k-ie7 .k-menu .k-item .k-item {
  zoom: normal;
}
.k-menu .k-item > .k-link > .k-icon,
.k-menu .k-image,
.k-menu .k-sprite {
  margin: -2px 4px 0 -4px;
  vertical-align: middle;
}
.k-menu .k-item > .k-link > .k-icon {
  margin: -2px 0 0;
}
.k-ie7 .k-menu .k-item > .k-link > .k-i-arrow-s,
.k-ie7 .k-menu .k-image,
.k-ie7 .k-menu .k-sprite {
  margin-top: 0;
}
.k-menu .k-item > .k-link {
  display: block;
  padding: 0.5em 1.1em 0.4em;
  line-height: 1.34em;
  -khtml-user-select: none;
  -webkit-user-select: none;
  -moz-user-select: -moz-none;
  -ms-user-select: none;
  user-select: none;
}
.k-menu .k-menu-group {
  display: none;
  border-style: solid;
  border-width: 1px;
  overflow: visible;
  white-space: nowrap;
}
.k-menu .k-menu-group > .k-item {
  display: block;
  border-width: 0;
}
.k-menu .k-item,
.k-widget.k-menu-horizontal > .k-item {
  position: relative;
  float: left;
  border-style: solid;
  border-width: 0 1px 0 0;
  vertical-align: top;
  zoom: 1;
  -webkit-box-sizing: content-box;
  -moz-box-sizing: content-box;
  box-sizing: content-box;
}
.k-context-menu.k-menu-vertical > .k-item > .k-link,
.k-menu .k-menu-group .k-item > .k-link {
  padding: .28em 1.8em .38em .9em;
}
.k-context-menu.k-menu-horizontal > .k-separator {
  display: none;
}
.k-context-menu.k-menu-horizontal > .k-item {
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  box-sizing: border-box;
}
.k-context-menu.k-menu-horizontal > .k-last {
  border: 0;
}
.k-ie7 .k-menu .k-menu-group .k-link {
  width: 100%;
}
.k-menu .k-item > .k-link > .k-i-arrow-s {
  margin-right: -8px;
}
.k-menu .k-item > .k-link > .k-i-arrow-e {
  position: absolute;
  top: 50%;
  margin-top: -8px;
  right: 2px;
  right: .2rem;
}
.k-menu .k-animation-container {
  border: 0;
}
.k-menu .k-animation-container,
.k-menu .k-menu-group {
  position: absolute;
  left: 0;
}
.k-menu .k-animation-container .k-animation-container,
.k-menu .k-menu-group .k-menu-group,
.k-menu-vertical .k-animation-container,
.k-menu-vertical .k-menu-group {
  top: 0;
  left: 0;
}
.k-menu .k-animation-container .k-menu-group {
  top: auto;
  left: auto;
  margin-left: -1px;
}
.k-menu .k-animation-container,
.k-popup .k-animation-container {
  margin-top: -1px;
  padding-left: 1px;
}
.k-ie .k-menu .k-animation-container,
.k-ie .k-popup .k-animation-container {
  margin-top: -2px;
}
.k-popup .k-animation-container .k-popup {
  margin-left: -1px;
}
ul.k-menu .k-separator {
  padding: 0.25em 0;
  height: 100%;
  width: 1px;
  font-size: 0;
  line-height: 0;
  border-width: 0 1px 0 0;
}
ul.k-menu-vertical .k-separator,
.k-menu .k-menu-group .k-separator {
  padding: 0;
  height: 1px;
  width: 100%;
  border-width: 1px 0 0;
}
/* Context Menu */
.k-context-menu {
  border: 0;
  -webkit-user-select: none;
  -moz-user-select: -moz-none;
  user-select: none;
}
/* Grid */
.k-grid,
.k-listview {
  position: relative;
  zoom: 1;
}
.k-grid table {
  width: 100%;
  margin: 0;
  /* override CSS libraries */
  max-width: none;
  border-collapse: separate;
  border-spacing: 0;
  empty-cells: show;
  border-width: 0;
  outline: none;
}
.k-header.k-drag-clue {
  overflow: hidden;
}
.k-grid-header th.k-header,
.k-filter-row th {
  overflow: hidden;
  border-style: solid;
  border-width: 0 0 1px 1px;
  padding: .5em .6em .4em .6em;
  font-weight: normal;
  white-space: nowrap;
  text-overflow: ellipsis;
  text-align: left;
}
.k-grid-header th.k-header {
  vertical-align: bottom;
}
.k-filtercell,
.k-filtercell > span,
.k-filtercell .k-widget {
  display: block;
  width: auto;
}
.k-filtercell > span {
  padding-right: 4.8em;
  position: relative;
  min-height: 2em;
  line-height: 2em;
}
.k-filtercell > .k-operator-hidden {
  padding-right: 2.3em;
}
.k-filtercell > span > .k-button,
.k-filter-row .k-dropdown-operator {
  position: absolute;
  top: 0;
  right: 0;
}
.k-filter-row .k-dropdown-operator {
  width: 2.1em;
  right: 2.5em;
}
.k-filtercell > span > label {
  vertical-align: middle;
}
.k-filter-row label > input[type="radio"] {
  vertical-align: middle;
  position: relative;
  bottom: 2px;
}
.k-ie10 .k-grid-header a:active {
  background-color: transparent;
  /*remove gray background*/
}
.k-grid-header th.k-header > .k-link {
  display: block;
  min-height: 18px;
  line-height: 18px;
  /* due to sorting icons*/
  margin: -0.5em -0.6em -0.4em -0.6em;
  padding: .5em .6em .4em .6em;
  overflow: hidden;
  text-overflow: ellipsis;
}
.k-grid-header th.k-with-icon .k-link {
  margin-right: 18px;
}
.k-grid-header th.k-header .k-icon {
  position: static;
}
.k-grid-header th > .k-link > .k-icon {
  vertical-align: text-top;
}
.k-grid .k-state-hover {
  cursor: pointer;
}
.k-grid-column-resizing th,
.k-grid-column-resizing td {
  -webkit-transform: translateZ(0);
}
.k-grid-column-resizing,
.k-grid-column-resizing .k-grid-filter,
.k-grid-column-resizing .k-link,
.k-grid-column-resizing .k-button,
.k-grid-column-resizing .k-grid-toolbar {
  cursor: col-resize;
}
.k-grid td {
  border-style: solid;
  border-width: 0 0 0 1px;
  padding: .4em .6em;
  overflow: hidden;
  line-height: 1.6em;
  vertical-align: middle;
  text-overflow: ellipsis;
}
.k-grid .k-grouping-row td,
.k-grid .k-hierarchy-cell {
  overflow: visible;
}
.k-grid-edit-row td {
  text-overflow: clip;
}
.k-grid-edit-row .k-textbox,
.k-grid-edit-row .text-box {
  /*reset default webkit styles*/
  margin-top: 0;
  margin-bottom: 0;
}
.k-grid-header-wrap,
.k-grid-footer-wrap {
  position: relative;
  width: 100%;
  overflow: hidden;
  border-style: solid;
  border-width: 0 1px 0 0;
  zoom: 1;
}
div.k-grid-header,
div.k-grid-footer {
  padding-right: 17px;
  /* scrollbar width; may vary; can be calculated */
  border-bottom-style: solid;
  border-bottom-width: 1px;
  zoom: 1;
}
.k-grid-header-wrap > table,
.k-grid-header-locked > table {
  margin-bottom: -1px;
}
.k-grid-content {
  position: relative;
  width: 100%;
  overflow: auto;
  overflow-x: auto;
  overflow-y: scroll;
  zoom: 1;
  min-height: 0%;
  /* IE9 bug workaround - expanding Grid on hover */
}
.k-mobile .k-grid tbody {
  -webkit-backface-visibility: hidden;
}
.k-mobile .k-grid-backface tbody {
  -webkit-backface-visibility: visible;
}
.k-grid-content-expander {
  position: absolute;
  visibility: hidden;
  height: 1px;
}
.k-grid-norecords {
  width: 100%;
  height: 100%;
}
.k-grid-norecords-template {
  width: 20em;
  height: 4em;
  top: 50%;
  left: 50%;
  margin-left: -10em;
  margin-top: -2em;
  line-height: 4em;
  vertical-align: middle;
  text-align: center;
  position: absolute;
}
@media print {
  .k-grid {
    height: auto !important;
  }
  .k-grid-header {
    padding: 0 !important;
  }
  .k-grid-header-wrap,
  .k-grid-content {
    overflow: visible;
    height: auto !important;
  }
}
.k-virtual-scrollable-wrap {
  height: 100%;
  overflow-y: hidden;
  position: relative;
}
.k-grid-header table,
.k-grid-content table,
.k-grid-footer table,
.k-grid-content-locked > table {
  table-layout: fixed;
}
.k-ie7 .k-grid-content table {
  width: auto;
}
/* Grid :: locked columns */
.k-grid-lockedcolumns {
  white-space: nowrap;
}
.k-grid-content-locked,
.k-grid-content,
.k-pager-wrap {
  white-space: normal;
}
.k-grid-header-locked,
.k-grid-content-locked,
.k-grid-footer-locked {
  display: inline-block;
  vertical-align: top;
  overflow: hidden;
  /* generally uneeded */
  position: relative;
  border-style: solid;
  border-width: 0 1px 0 0;
}
.k-grid-header-locked + .k-grid-header-wrap,
.k-grid-content-locked + .k-grid-content,
.k-grid-footer-locked + .k-grid-footer-wrap {
  display: inline-block;
  vertical-align: top;
}
.k-grid-toolbar {
  border-style: solid;
  border-width: 1px 0 0;
}
.k-grid-header th.k-header:first-child,
.k-grid tbody td:first-child,
.k-grid tfoot td:first-child,
.k-filter-row > th:first-child {
  border-left-width: 0;
}
.k-grid-header th.k-header.k-first {
  border-left-width: 1px;
}
.k-grid-toolbar:first-child,
.k-grouping-header + .k-grid-toolbar {
  border-width: 0 0 1px;
}
/* Grid :: footer */
.k-footer-template td {
  border-style: solid;
  border-width: 1px 0 0 1px;
}
.k-group-footer td {
  border-style: solid;
  border-width: 1px 0;
}
.k-group-footer .k-group-cell + td {
  border-left-width: 1px;
}
.k-grid-footer {
  border-style: solid;
  border-width: 1px 0 0;
}
.k-grid-footer td {
  border-top-width: 0;
}
.k-grid-footer > td {
  border-top-width: 1px;
}
/* Grid :: paging */
.k-pager-wrap {
  clear: both;
  overflow: hidden;
  position: relative;
  border-style: solid;
  border-width: 1px;
  line-height: 2.0em;
  padding: 0.333em 0 0.333em 0.250em;
}
.k-grid-pager {
  border-width: 1px 0 0;
}
.k-grid .k-pager-numbers,
.k-pager-numbers .k-link,
.k-pager-numbers .k-state-selected {
  display: inline-block;
  vertical-align: top;
  margin-right: 1px;
}
.k-pager-numbers {
  margin: 0 2px;
}
.k-pager-numbers .k-state-selected {
  vertical-align: top;
}
.k-pager-numbers .k-current-page {
  display: none;
}
.k-pager-numbers li,
.k-pager-input {
  float: left;
}
.k-grid .k-pager-numbers {
  float: left;
  cursor: default;
}
.k-pager-info {
  float: right;
  padding: 0 1.333em;
}
.k-pager-numbers .k-link {
  text-decoration: none;
}
.k-pager-wrap > .k-link,
.k-pager-numbers .k-link,
.k-pager-numbers .k-state-selected {
  min-width: 2em;
}
.k-pager-wrap > .k-link {
  float: left;
  margin: 0 0.08333em;
  height: 2em;
  /*IE7*/
  line-height: 2em;
  /*IE7*/
  border-radius: 1.0833em;
  cursor: pointer;
  text-align: center;
}
.k-pager-wrap > a.k-state-disabled:hover {
  background: none;
  cursor: default;
}
.k-pager-numbers .k-link {
  text-align: center;
  line-height: 2em;
  border-style: solid;
  border-width: 1px;
  border-radius: 1.0833em;
}
.k-pager-wrap > .k-link {
  border-style: solid;
  border-width: 1px;
}
.k-pager-wrap .k-pager-refresh {
  float: right;
  margin-right: 0.5em;
  border-width: 0;
  border-radius: 0;
}
.k-pager-numbers .k-state-selected {
  border-style: solid;
  border-width: 1px;
  text-align: center;
  border-radius: 1.0833em;
}
.k-pager-wrap .k-textbox {
  width: 3.333em;
}
.k-ie7 .k-pager-wrap .k-textbox {
  height: 1.3333em;
  margin-top: 0.16666em;
  display: inline;
}
.k-pager-wrap .k-dropdown {
  width: 4.500em;
}
.k-pager-refresh {
  float: right;
}
.k-pager-input,
.k-pager-sizes {
  padding: 0 1.4166em;
}
.k-pager-sizes {
  display: inline-block;
  padding-top: 1px;
}
.k-pager-sizes .k-widget.k-dropdown {
  margin-top: -2px;
}
.k-ie7 .k-pager-sizes {
  float: left;
}
.k-pager-wrap .k-textbox,
.k-pager-wrap .k-widget {
  margin: 0 .4em 0;
}
/* Grid :: filtering */
.k-header > .k-grid-filter,
.k-header > .k-header-column-menu {
  float: right;
  margin: -0.5em -0.6em -0.4em;
  padding: .5em .2em .4em;
  position: relative;
  z-index: 1;
  /*mvc site.css*/
}
.k-grid .k-animation-container {
  position: absolute;
}
.k-filter-menu {
  padding: .5em;
}
form.k-filter-menu .k-widget,
form.k-filter-menu .k-textbox {
  display: block;
}
.k-filter-help-text,
.k-filter-menu .k-widget,
.k-filter-menu .k-textbox {
  margin: .19em 0 0;
}
.k-filter-menu span.k-filter-and {
  width: 6em;
  margin: .5em 0 .5em;
}
.k-filter-menu .k-button {
  width: 48%;
  margin: .5em 4% 0 0;
}
.k-filter-menu .k-button + .k-button {
  margin-right: 0;
}
.k-multicheck-wrap {
  overflow: auto;
  overflow-x: hidden;
  white-space: nowrap;
  max-height: 300px;
}
.k-multicheck-wrap .k-item {
  line-height: 2.2em;
}
/* Grid :: grouping */
.k-grouping-row .k-icon {
  margin: -3px 4px 0 2px;
}
.k-grouping-row p {
  display: inline-block;
  vertical-align: middle;
  margin-left: -0.6em;
  padding: 0 .6em;
}
.k-grouping-row + tr td {
  border-top-width: 1px;
}
.k-grouping-row .k-group-cell,
.k-grouping-row + tr .k-group-cell {
  border-top-width: 0;
  text-overflow: none;
}
.k-grid .k-hierarchy-cell + td {
  border-left-width: 0;
}
.k-grid .k-group-col,
.k-grid .k-hierarchy-col {
  width: 27px;
}
.k-grouping-header {
  border-bottom-style: solid;
  border-bottom-width: 1px;
}
.k-grouping-header {
  line-height: 2;
}
.k-grouping-dropclue {
  position: absolute;
  width: 6px;
  height: 25px;
  background-repeat: no-repeat;
  background-position: -165px -148px;
}
.k-grouping-header .k-group-indicator {
  display: inline-block;
  border-style: solid;
  border-width: 1px;
  margin: 0 3px;
  padding: .15em .15em .15em .4em;
  line-height: 1.5em;
}
.k-grouping-header .k-link {
  display: inline-block;
  border-width: 0;
  padding: 0;
  line-height: normal;
  text-decoration: none;
}
.k-grouping-header .k-button {
  border: 0;
  padding: 0;
  background: transparent;
  line-height: 1;
}
.k-grouping-header .k-link .k-icon {
  margin: 0 0 0 -3px;
}
.k-grouping-header .k-button .k-icon {
  margin: 0 0 0 3px;
}
.k-grouping-header a,
.k-grouping-header .k-button {
  display: inline-block;
  vertical-align: middle;
}
/* Grid :: editing */
.k-dirty-cell:before {
  content: "\a0";
  display: inline-block;
  width: 0;
  float: left;
}
.k-ie7 .k-dirty-cell {
  position: relative;
}
.k-ie7 .k-dirty {
  top: 5px;
}
.k-dirty {
  position: absolute;
  width: 0;
  height: 0;
  border-style: solid;
  border-width: 3px;
  border-color: #f00 transparent transparent #f00;
  margin: -0.45em 0 0 -0.6em;
  padding: 0;
  overflow: hidden;
  vertical-align: top;
}
.k-grouping-header,
.k-grid-toolbar {
  margin: 0;
  padding: 0.22em 0.2em 0.28em;
  cursor: default;
}
.k-grid .k-edit-container {
  padding: 0;
}
.k-grid .field-validation-error {
  display: block;
}
.k-grid .input-validation-error {
  border-style: ridge;
  border-color: #f00;
  background-color: #ffc0cb;
}
.k-grid-toolbar .k-button {
  vertical-align: middle;
}
.k-grid-actions {
  display: inline-block;
}
.k-ie7 .k-grid-actions {
  vertical-align: bottom;
}
.k-grid .k-button {
  margin: 0 .16em;
}
.k-grid tbody .k-button,
.k-ie8 .k-grid tbody button.k-button {
  min-width: 64px;
}
.k-grid tbody button.k-button {
  min-width: 78px;
  /* for all except IE8 */
}
.k-ie7 .k-grid tbody a.k-button {
  min-width: 62px;
  /* for IE7 link buttons */
}
html body .k-grid tbody .k-button-icon {
  width: auto;
  min-width: 0;
}
.k-detail-row {
  position: relative;
}
.k-grid .k-detail-cell {
  overflow: visible;
}
.k-grid .k-edit-cell {
  padding: 0 .3em;
  white-space: nowrap;
}
.k-grid .k-edit-cell .k-tooltip {
  white-space: normal;
}
.k-edit-cell > .k-textbox,
.k-edit-cell > .k-widget,
.k-grid-edit-row > td > .k-textbox,
.k-grid-edit-row > td > .k-widget,
.k-grid-edit-row > td > .text-box {
  width: 100%;
}
.k-ie7 .k-edit-cell > .text-box,
.k-ie7 .k-edit-cell > .k-textbox,
.k-ie7 .k-edit-cell > .k-widget,
.k-ie7 .k-grid-edit-row > td > .k-textbox,
.k-ie7 .k-grid-edit-row > td > .k-widget,
.k-ie7 .k-grid-edit-row > td > .text-box {
  display: block;
  width: 90%;
}
html .k-edit-cell .k-tooltip,
html .k-grid-edit-row .k-tooltip {
  width: auto;
  max-width: 300px;
}
.k-edit-cell input[type="checkbox"] {
  margin-left: .6em;
}
.k-grid tbody td > .k-grid-delete {
  margin-top: -0.2em;
  margin-bottom: -0.2em;
}
/* Grid :: resizing */
.k-grid-resize-indicator {
  position: absolute;
  width: 2px;
  background-color: #aaa;
}
.k-grid-header .k-resize-handle,
.k-grid > .k-resize-handle {
  position: absolute;
  height: 25px;
  cursor: col-resize;
  z-index: 2;
}
.k-marquee {
  position: absolute;
  z-index: 100000;
}
.k-marquee-color,
.k-marquee-text {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
}
.k-marquee-color {
  filter: alpha(opacity=60);
  opacity: .6;
}
.k-ie9 .k-column-menu {
  width: 160px;
  /*fix flicker on item hover*/
}
.k-ie8 .k-grid-filter,
.k-ie8 .k-header-column-menu {
  font-size: 100%;
  /* Fix small menus in IE8 */
}
.k-column-menu {
  min-width: 160px;
}
.k-column-menu .k-sprite {
  margin-right: 10px;
}
.k-column-menu > .k-menu {
  border-width: 0;
}
.k-columns-item .k-group {
  max-height: 200px;
  overflow: auto;
}
/* Remove Grid scrollbar during built-in export */
.k-pdf-export-shadow .k-grid {
  float: left;
  width: auto !important;
}
/* Remove all sizes and scrolling */
.k-pdf-export-shadow .k-grid,
.k-pdf-export-shadow .k-grid-content {
  height: auto !important;
  overflow: visible;
}
/* Remove empty space reserved above the scrollbar */
.k-pdf-export-shadow .k-grid-header {
  padding-right: 0 !important;
}
.k-loading-pdf-mask {
  position: absolute;
  width: 100%;
  height: 100%;
  top: 0;
  left: 0;
  z-index: 100;
}
.k-loading-pdf-mask .k-loading-color {
  filter: alpha(opacity=50);
  opacity: 0.5;
}
.k-loading-pdf-mask .k-loading-pdf-progress {
  margin: auto;
  position: absolute;
  top: 0;
  bottom: 0;
  left: 0;
  right: 0;
}
.k-pdf-export .k-loading-pdf-mask {
  display: none;
}
/* responsive styles  */
.k-autofitting {
  width: auto !important;
  table-layout: auto !important;
}
.k-autofitting th.k-header,
.k-autofitting td {
  white-space: nowrap !important;
}
.k-autofitting .k-detail-row {
  display: none !important;
}
@media only screen and (max-width: 1024px) {
  .k-webkit .k-pager-wrap,
  .k-ff .k-pager-wrap,
  .k-ie11 .k-pager-wrap,
  .k-safari .k-pager-wrap {
    overflow: visible;
  }
  .k-webkit .k-pager-wrap .k-pager-nav,
  .k-ff .k-pager-wrap .k-pager-nav,
  .k-ie11 .k-pager-wrap .k-pager-nav,
  .k-safari .k-pager-wrap .k-pager-nav,
  .k-webkit .k-pager-input,
  .k-ff .k-pager-input,
  .k-ie11 .k-pager-input,
  .k-safari .k-pager-input {
    float: none;
    display: inline-block;
    vertical-align: top;
  }
  .k-webkit .k-pager-numbers,
  .k-ff .k-pager-numbers,
  .k-ie11 .k-pager-numbers,
  .k-safari .k-pager-numbers,
  .k-webkit .k-grid .k-pager-numbers,
  .k-ff .k-grid .k-pager-numbers,
  .k-ie11 .k-grid .k-pager-numbers,
  .k-safari .k-grid .k-pager-numbers {
    position: absolute;
    left: 4.8em;
    display: -moz-inline-flex;
    display: -webkit-inline-flex;
    display: inline-flex;
    -webkit-flex-direction: column-reverse;
    flex-direction: column-reverse;
    -webkit-transform: translatey(-100%);
    -moz-transform: translatey(-100%);
    transform: translatey(-100%);
    overflow: visible;
    height: auto;
  }
  .k-webkit .km-pane-wrapper .k-pager-numbers,
  .k-ff .km-pane-wrapper .k-pager-numbers,
  .k-ie11 .km-pane-wrapper .k-pager-numbers,
  .k-safari .km-pane-wrapper .k-pager-numbers,
  .k-webkit .km-pane-wrapper .k-grid .k-pager-numbers,
  .k-ff .km-pane-wrapper .k-grid .k-pager-numbers,
  .k-ie11 .km-pane-wrapper .k-grid .k-pager-numbers,
  .k-safari .km-pane-wrapper .k-grid .k-pager-numbers {
    left: 5.8em;
  }
  .k-webkit .km-pane-wrapper .k-pager-numbers .k-link,
  .k-ff .km-pane-wrapper .k-pager-numbers .k-link,
  .k-ie11 .km-pane-wrapper .k-pager-numbers .k-link,
  .k-safari .km-pane-wrapper .k-pager-numbers .k-link,
  .k-webkit .km-pane-wrapper .k-pager-numbers .k-state-selected,
  .k-ff .km-pane-wrapper .k-pager-numbers .k-state-selected,
  .k-ie11 .km-pane-wrapper .k-pager-numbers .k-state-selected,
  .k-safari .km-pane-wrapper .k-pager-numbers .k-state-selected,
  .k-webkit .km-pane-wrapper .k-pager-wrap > .k-link,
  .k-ff .km-pane-wrapper .k-pager-wrap > .k-link,
  .k-ie11 .km-pane-wrapper .k-pager-wrap > .k-link,
  .k-safari .km-pane-wrapper .k-pager-wrap > .k-link,
  .k-webkit .km-pane-wrapper .k-pager-wrap > .k-pager-info,
  .k-ff .km-pane-wrapper .k-pager-wrap > .k-pager-info,
  .k-ie11 .km-pane-wrapper .k-pager-wrap > .k-pager-info,
  .k-safari .km-pane-wrapper .k-pager-wrap > .k-pager-info {
    padding-top: 0;
    padding-bottom: 0;
  }
  .k-webkit .k-rtl .k-pager-numbers,
  .k-ff .k-rtl .k-pager-numbers,
  .k-ie11 .k-rtl .k-pager-numbers,
  .k-safari .k-rtl .k-pager-numbers,
  .k-webkit .k-rtl .k-grid .k-pager-numbers,
  .k-ff .k-rtl .k-grid .k-pager-numbers,
  .k-ie11 .k-rtl .k-grid .k-pager-numbers,
  .k-safari .k-rtl .k-grid .k-pager-numbers {
    left: auto;
    right: 4.8em;
    width: 4.5em;
  }
  .k-webkit .k-rtl .km-pane-wrapper .k-pager-numbers,
  .k-ff .k-rtl .km-pane-wrapper .k-pager-numbers,
  .k-ie11 .k-rtl .km-pane-wrapper .k-pager-numbers,
  .k-safari .k-rtl .km-pane-wrapper .k-pager-numbers,
  .k-webkit .k-rtl .km-pane-wrapper .k-grid .k-pager-numbers,
  .k-ff .k-rtl .km-pane-wrapper .k-grid .k-pager-numbers,
  .k-ie11 .k-rtl .km-pane-wrapper .k-grid .k-pager-numbers,
  .k-safari .k-rtl .km-pane-wrapper .k-grid .k-pager-numbers {
    right: 5.8em;
  }
  .k-webkit .k-pager-numbers .k-current-page,
  .k-ff .k-pager-numbers .k-current-page,
  .k-ie11 .k-pager-numbers .k-current-page,
  .k-safari .k-pager-numbers .k-current-page,
  .k-webkit .k-grid .k-pager-numbers .k-current-page,
  .k-ff .k-grid .k-pager-numbers .k-current-page,
  .k-ie11 .k-grid .k-pager-numbers .k-current-page,
  .k-safari .k-grid .k-pager-numbers .k-current-page {
    display: block;
    border-left: 0;
    -webkit-transform: translatey(100%);
    -moz-transform: translatey(100%);
    transform: translatey(100%);
  }
  .k-webkit .k-pager-numbers li:not(.k-current-page),
  .k-ff .k-pager-numbers li:not(.k-current-page),
  .k-ie11 .k-pager-numbers li:not(.k-current-page),
  .k-safari .k-pager-numbers li:not(.k-current-page) {
    display: none;
  }
  .k-webkit .k-pager-numbers .k-current-page .k-link,
  .k-ff .k-pager-numbers .k-current-page .k-link,
  .k-ie11 .k-pager-numbers .k-current-page .k-link,
  .k-safari .k-pager-numbers .k-current-page .k-link {
    width: 3.2em;
    padding: 0 .429em 0 .714em;
    border-radius: 1.0833em;
  }
  .k-webkit .k-pager-numbers + .k-link,
  .k-ff .k-pager-numbers + .k-link,
  .k-ie11 .k-pager-numbers + .k-link,
  .k-safari .k-pager-numbers + .k-link {
    margin-left: 4.8em;
  }
  .k-webkit .k-rtl .k-pager-numbers + .k-link,
  .k-ff .k-rtl .k-pager-numbers + .k-link,
  .k-ie11 .k-rtl .k-pager-numbers + .k-link,
  .k-safari .k-rtl .k-pager-numbers + .k-link {
    margin-right: 5.1em;
    margin-left: 0;
  }
  .k-webkit .k-pager-numbers .k-state-selected,
  .k-ff .k-pager-numbers .k-state-selected,
  .k-ie11 .k-pager-numbers .k-state-selected,
  .k-safari .k-pager-numbers .k-state-selected,
  .k-webkit .k-pager-numbers .k-link,
  .k-ff .k-pager-numbers .k-link,
  .k-ie11 .k-pager-numbers .k-link,
  .k-safari .k-pager-numbers .k-link {
    display: block;
    margin-right: 0;
    padding: 1px 5px 1px 5px;
    text-align: left;
  }
  .k-webkit .k-pager-numbers.k-state-expanded,
  .k-ff .k-pager-numbers.k-state-expanded,
  .k-ie11 .k-pager-numbers.k-state-expanded,
  .k-safari .k-pager-numbers.k-state-expanded {
    box-sizing: border-box;
    padding: 2px 2px 0;
  }
  .k-webkit .k-pager-numbers.k-state-expanded .k-current-page,
  .k-ff .k-pager-numbers.k-state-expanded .k-current-page,
  .k-ie11 .k-pager-numbers.k-state-expanded .k-current-page,
  .k-safari .k-pager-numbers.k-state-expanded .k-current-page {
    margin: -2em -3px 0;
    padding: 0;
  }
  .k-webkit .k-pager-numbers.k-state-expanded .k-current-page .k-link,
  .k-ff .k-pager-numbers.k-state-expanded .k-current-page .k-link,
  .k-ie11 .k-pager-numbers.k-state-expanded .k-current-page .k-link,
  .k-safari .k-pager-numbers.k-state-expanded .k-current-page .k-link {
    border-radius: 0 0 1.0833em 1.0833em;
  }
  .k-webkit .k-pager-numbers.k-state-expanded li,
  .k-ff .k-pager-numbers.k-state-expanded li,
  .k-ie11 .k-pager-numbers.k-state-expanded li,
  .k-safari .k-pager-numbers.k-state-expanded li {
    display: inline-block;
  }
}
@media only screen and (max-width: 640px) {
  .k-webkit .k-pager-info,
  .k-ff .k-pager-info,
  .k-ie11 .k-pager-info,
  .k-safari .k-pager-info {
    display: none;
  }
}
@media only screen and (max-width: 480px) {
  .k-webkit .k-pager-sizes,
  .k-ff .k-pager-sizes,
  .k-ie11 .k-pager-sizes,
  .k-safari .k-pager-sizes {
    display: none;
  }
}
.k-treelist .k-status {
  padding: .4em .6em;
  line-height: 1.6em;
}
.k-treelist .k-status .k-loading {
  vertical-align: baseline;
  margin-right: 5px;
}
.k-treelist tr.k-hidden {
  display: none;
}
.k-treelist.k-treelist-dragging,
.k-treelist.k-treelist-dragging .k-state-hover {
  cursor: default;
}
.k-treelist .k-drop-hint {
  position: absolute;
  z-index: 10000;
  visibility: hidden;
  width: 80px;
  height: 5px;
  margin-top: -3px;
  background-color: transparent;
  background-repeat: no-repeat;
}
.k-drag-separator {
  display: inline-block;
  border-right: 1px solid;
  height: 1em;
  vertical-align: top;
  margin: 0 .5em;
}
/* Gantt Chart start */
/* Gantt Main Layout */
.k-gantt {
  white-space: nowrap;
  position: relative;
}
.k-gantt-layout {
  display: inline-block;
  white-space: normal;
  vertical-align: top;
}
.k-gantt .k-splitbar {
  position: relative;
  cursor: e-resize;
  width: 5px;
  border-width: 0 1px;
  background-repeat: repeat-y;
}
.k-gantt .k-gantt-layout th {
  vertical-align: bottom;
}
.k-gantt td {
  overflow: hidden;
  white-space: nowrap;
  vertical-align: top;
}
.k-gantt .k-grid .k-edit-cell {
  vertical-align: middle;
}
.k-gantt-treelist > .k-treelist,
.k-gantt-timeline > .k-timeline {
  border-width: 0;
  height: 100%;
}
/* Gantt Toolbar, footer */
.k-gantt-toolbar {
  border-style: solid;
  border-width: 0 0 1px;
  line-height: 2.4em;
  padding: .5em;
}
.k-gantt-layout + .k-gantt-toolbar {
  border-width: 1px 0 0;
}
.k-gantt-actions,
.k-gantt-toolbar > ul {
  float: left;
  margin-right: .6em;
}
.k-gantt-toolbar > .k-gantt-views {
  float: right;
  margin-right: 0;
}
.k-gantt-toolbar > ul > li {
  display: inline-block;
  border-style: solid;
  border-width: 1px 1px 1px 0;
}
.k-gantt-toolbar > ul > li:first-child {
  border-left-width: 1px;
}
.k-gantt-toolbar .k-link {
  display: inline-block;
  padding: 0 1.1em;
}
.k-gantt-toolbar li:first-child,
.k-gantt-toolbar li:first-child > .k-link {
  border-top-left-radius: 4px;
  border-bottom-left-radius: 4px;
}
.k-gantt-toolbar li:last-child,
.k-gantt-toolbar li:last-child > .k-link {
  border-top-right-radius: 4px;
  border-bottom-right-radius: 4px;
}
.k-gantt-toolbar li.k-button {
  line-height: inherit;
  padding-top: 0;
  padding-bottom: 0;
}
/* Gantt TreeList */
.k-gantt-treelist .k-grid-header tr {
  height: 5em;
}
.k-gantt .k-treelist .k-grid-header {
  padding: 0 !important;
}
.k-gantt .k-treelist .k-grid-content {
  overflow-y: hidden;
  overflow-x: scroll;
}
.k-treelist-group > tr > span {
  font-weight: bold;
}
.k-treelist-group .k-widget {
  font-weight: normal;
}
/* Gantt TimeLine */
.k-gantt-timeline .k-grid-header tr {
  height: 2.5em;
}
.k-gantt-tasks {
  /*needed for RTL*/
  position: relative;
}
.k-gantt-rows tr,
.k-gantt-tasks tr,
.k-gantt .k-grid-content tr {
  height: 2.3em;
}
.k-gantt .k-gantt-tasks td:after {
  content: "\a0";
}
.k-gantt-timeline {
  background: transparent;
}
.k-gantt-rows,
.k-gantt-columns,
.k-gantt-dependencies {
  position: absolute;
  top: 0;
  left: 0;
}
.k-gantt-tables {
  position: relative;
}
.k-gantt .k-gantt-timeline th {
  text-align: center;
}
.k-gantt .k-gantt-timeline tr:first-child th {
  border-bottom-width: 1px;
}
/* Gantt TimeLine objects */
/* Summary */
.k-task-summary {
  height: 10px;
  display: inline-block;
  vertical-align: top;
  margin-top: 3px;
}
.k-task-summary-complete {
  height: 10px;
  position: relative;
  z-index: 2;
}
.k-task-summary-progress {
  height: 15px;
  overflow: hidden;
}
.k-task-summary:before,
.k-task-summary-complete:before,
.k-task-summary:after,
.k-task-summary-complete:after {
  content: "";
  position: absolute;
  top: 0;
  width: 0;
  height: 0;
  border-style: solid;
  border-width: 8px;
  border-color: transparent;
}
.k-task-summary:before,
.k-task-summary-complete:before {
  left: 0;
  border-left-color: inherit;
}
.k-task-summary:after,
.k-task-summary-complete:after {
  right: 0;
  border-right-color: inherit;
}
/* Lines */
.k-line-h,
.k-line-v {
  position: absolute;
}
.k-line-h {
  height: 2px;
}
.k-line-v {
  width: 2px;
}
.k-arrow-e,
.k-arrow-w {
  position: absolute;
  top: -4px;
  width: 0;
  height: 0;
  border-style: solid;
  border-width: 5px;
}
.k-arrow-e {
  right: -6px;
  border-top-color: transparent;
  border-bottom-color: transparent;
  border-right-color: transparent;
}
.k-arrow-w {
  left: -6px;
  border-top-color: transparent;
  border-bottom-color: transparent;
  border-left-color: transparent;
}
/* Milestone */
.k-task-milestone {
  width: 13px;
  height: 13px;
  margin-top: 3px;
  border-style: solid;
  border-width: 1px;
  -webkit-transform: rotate(45deg);
  transform: rotate(45deg);
}
.k-ie8 .k-task-milestone,
.k-ie7 .k-task-milestone {
  margin-left: 1px;
}
/* Button */
.k-gantt .k-gantt-treelist .k-button,
.k-gantt .k-gantt-tasks .k-button-icon {
  padding-top: 0;
  padding-bottom: 0;
}
.k-gantt .k-gantt-tasks .k-button-icon {
  margin-top: 4px;
}
.k-gantt .k-gantt-treelist .k-button {
  margin-top: -4px;
  margin-bottom: -2px;
}
.k-gantt .k-gantt-tasks .k-button-icon {
  padding-left: 2px;
  padding-right: 2px;
}
.k-gantt .k-gantt-treelist .k-button .k-icon,
.k-gantt .k-gantt-tasks .k-button .k-icon {
  vertical-align: text-top;
}
.k-rel .k-button-icon {
  position: absolute;
  left: 200px;
}
/* Tasks */
.k-rel {
  position: relative;
  height: 0;
  top: -0.3em;
}
.k-task-wrap {
  position: absolute;
  padding: 0 23px 5px;
  margin: -1px -23px 0;
  z-index: 2;
}
.k-task-wrap:hover,
.k-line.k-state-selected {
  z-index: 3;
}
.k-milestone-wrap {
  margin: 0 -13px 0 -27px;
}
.k-task-content {
  position: relative;
  z-index: 2;
}
.k-task-complete {
  position: absolute;
  top: 0;
  bottom: 0;
  left: 0;
  width: 20%;
  z-index: 1;
}
.k-task-dot {
  position: absolute;
  top: 0;
  width: 16px;
  height: 16px;
  line-height: 16px;
  display: none;
  cursor: pointer;
}
.k-task-dot.k-state-hover {
  background-color: transparent;
}
.k-task-single + .k-task-dot,
.k-task-single + .k-task-dot + .k-task-dot {
  top: .2em;
}
.k-task-wrap:hover .k-task-dot,
.k-task-wrap-active .k-task-dot {
  display: block;
}
.k-task-dot:before {
  content: "\a0";
  display: inline-block;
  width: 0;
  height: 16px;
}
.k-task-dot:after {
  content: "";
  display: inline-block;
  vertical-align: middle;
  width: 8px;
  height: 8px;
  border-radius: 4px;
  margin-left: 4px;
}
.k-task-dot:hover:after,
.k-task-dot.k-state-hover:after,
.k-task-wrap-active .k-task-dot:after {
  border-style: solid;
  border-width: 1px;
  margin-left: 3px;
}
.k-task-start {
  left: 0;
}
.k-task-end {
  right: 0;
}
.k-task-single {
  border-style: solid;
  border-width: 1px;
  text-align: left;
  overflow: hidden;
  cursor: default;
  min-height: 1.3em;
  white-space: nowrap;
}
.k-task-template {
  padding: .2em 1.4em .2em .6em;
  line-height: normal;
}
.k-task-actions,
.k-task-content > .k-link {
  position: absolute;
  top: 0;
  right: 4px;
  white-space: nowrap;
}
.k-task-actions {
  z-index: 1;
}
.k-task-actions:first-child {
  position: static;
  float: left;
  margin: 4px 2px 0 4px;
}
.k-webkit .k-task-actions:first-child {
  margin-top: 3px;
}
.k-task-actions:first-child > .k-link {
  display: inline-block;
}
.k-task-delete {
  display: none;
}
.k-task-wrap:hover .k-task-delete,
.k-task-wrap-active .k-task-delete {
  display: inline-block;
}
.k-task-single .k-resize-handle {
  position: absolute;
  visibility: hidden;
  z-index: 2;
  height: auto;
}
.k-task-single:hover .k-resize-handle,
.k-task-wrap-active .k-resize-handle {
  visibility: visible;
}
.k-task-single .k-resize-handle:after {
  content: "";
  position: absolute;
  filter: alpha(opacity=50);
  opacity: .5;
}
.k-task-content > .k-resize-e {
  right: 0;
  top: 0;
  bottom: 0;
  width: .4em;
}
.k-task-content > .k-resize-w {
  left: 0;
  top: 0;
  bottom: 0;
  width: .4em;
}
.k-task-content > .k-resize-e:after,
.k-task-content > .k-resize-w:after {
  left: 1px;
  top: 50%;
  margin-top: -0.7em;
  height: 1.4em;
  width: 1px;
}
.k-task-content > .k-resize-e:after {
  left: auto;
  right: 1px;
}
.k-task-draghandle {
  position: absolute;
  bottom: 0;
  width: 0;
  height: 0;
  margin-left: 16px;
  border-width: 5px;
  border-style: solid;
  border-top-color: transparent;
  border-left-color: transparent;
  border-right-color: transparent;
  display: none;
  cursor: e-resize;
}
.k-task-wrap:hover .k-task-draghandle,
.k-task-wrap-active .k-task-draghandle {
  display: block;
}
.k-dependency-hint {
  z-index: 4;
}
/*Task Hover Tooltip*/
.k-task-details {
  padding: .4em;
  text-align: left;
  white-space: nowrap;
}
.k-task-details > strong {
  font-size: 120%;
  display: block;
}
.k-task-pct {
  margin: .5em 0 .1em;
  font-size: 170%;
}
.k-task-details > ul {
  line-height: 1.2;
}
/*Resources*/
.k-resources-wrap {
  position: absolute;
  z-index: 2;
  zoom: 1;
  margin-left: 20px;
  margin-top: -2px;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}
.k-resources-wrap .k-resource {
  margin: 0px 5px;
}
/* Gantt Edit form */
.k-gantt-edit-form > .k-edit-form-container {
  width: 430px;
}
.k-gantt-edit-form > .k-resources-form-container {
  width: 506px;
}
.k-resources-form-container > .k-grid {
  margin: 0 .9em;
}
.k-gantt-edit-form > .k-edit-form-container .k-textbox,
.k-gantt-edit-form > .k-edit-form-container .k-numerictextbox {
  width: 15em;
}
.k-gantt-edit-form .k-edit-buttons .k-gantt-delete {
  float: left;
}
/* Gantt Chart PDF export */
.k-pdf-export-shadow .k-gantt {
  float: left;
}
/* Remove all sizes and scrolling */
.k-pdf-export-shadow .k-gantt,
.k-pdf-export-shadow .k-gantt-timeline,
.k-pdf-export-shadow .k-gantt .k-grid-content {
  width: auto !important;
  height: auto !important;
  overflow: visible !important;
}
.k-pdf-export-shadow .k-gantt-treelist {
  height: auto !important;
  overflow: visible !important;
}
/* Remove empty space reserved above the scrollbar */
.k-pdf-export-shadow .k-gantt-timeline .k-grid-header {
  padding: 0 !important;
}
/* Hide the splitter */
.k-pdf-export-shadow .k-gantt .k-splitbar,
.k-pdf-export-shadow .k-pdf-export {
  display: none;
}
/* Gantt Chart end */
/* Pivot start */
.k-pivot {
  position: relative;
}
.k-pivot-toolbar {
  padding: .2em;
  border-bottom-width: 1px;
  border-bottom-style: solid;
}
.k-pivot .k-pivot-toolbar {
  padding: .6em;
}
.k-pivot-toolbar .k-button {
  margin-right: .4em;
  line-height: 1.2em;
  font-size: .9em;
  text-align: left;
  position: relative;
  padding: .3em 5em .3em .3em;
}
.k-field-actions {
  position: absolute;
  right: 2px;
  top: 3px;
}
/*IE7 requires the following style to be applied to cells directly*/
.k-pivot .k-grid td {
  white-space: nowrap;
}
.k-pivot-layout {
  border-spacing: 0;
  table-layout: auto;
}
.k-pivot-layout > tbody > tr > td {
  vertical-align: top;
  padding: 0;
}
.k-pivot td {
  vertical-align: top;
}
.k-pivot-rowheaders > .k-grid,
.k-pivot-table > .k-grid {
  border-width: 0;
}
.k-pivot-rowheaders > .k-grid td:first-child,
.k-pivot-table .k-grid-header .k-header.k-first {
  border-left-width: 1px;
}
.k-pivot-rowheaders > .k-grid td.k-first {
  border-left-width: 0;
}
.k-pivot-rowheaders > .k-grid {
  overflow: hidden;
}
.k-pivot-table {
  border-left-width: 1px;
  border-left-style: solid;
}
.k-pivot-table .k-grid-header-wrap > table {
  height: 100%;
}
.k-pivot .k-grid-header .k-header {
  vertical-align: top;
}
.k-header.k-alt,
td.k-alt {
  font-weight: bold;
}
.k-header.k-alt {
  background-image: none;
}
.k-pivot-layout .k-grid td {
  border-bottom-width: 1px;
}
.k-pivot-layout .k-grid-footer > td {
  border-top-width: 0;
}
.k-pivot-filter-window .k-treeview {
  max-height: 600px;
}
/* selector */
.k-fieldselector .k-edit-buttons {
  bottom: auto;
}
.k-fieldselector .k-edit-label {
  width: 16%;
}
.k-fieldselector .k-edit-field {
  width: 77%;
}
.k-fieldselector .k-edit-field > .k-widget,
.k-fieldselector .k-edit-field > .k-textbox {
  width: 99%;
}
.k-fieldselector .k-edit-buttons > input,
.k-fieldselector .k-edit-buttons > label {
  float: left;
  margin-top: .4em;
}
.k-fieldselector p {
  margin: 0 0 .2em .5em;
  text-transform: uppercase;
}
.k-fieldselector p .k-icon {
  margin: 0 5px 0 0;
}
.k-fieldselector .k-columns {
  border-style: solid;
  border-width: 0;
}
.k-fieldselector .k-columns > div {
  overflow: auto;
  padding: .6em;
  border-style: solid;
  border-width: 0 0 0 1px;
  float: left;
  width: 45%;
}
.k-fieldselector .k-columns > div:first-child {
  border-width: 0;
  margin-right: -1px;
}
.k-fieldselector .k-columns > div + div {
  float: right;
  border-width: 0;
}
.k-fieldselector div.k-treeview {
  border-width: 0;
  margin-right: -1px;
  padding-left: 4px;
  overflow: visible;
}
.k-fieldselector .k-list-container {
  margin-left: .5em;
  margin-bottom: 1em;
  padding: .2em 0 0;
  border-style: solid;
  border-width: 1px;
}
.k-fieldselector .k-list {
  padding-bottom: 2em;
}
.k-fieldselector .k-list li.k-item {
  padding: .3em 3.3em .3em .3em;
  margin: 0 .2em.2em;
  position: relative;
  font-size: .9em;
  line-height: 1.2em;
  min-height: 1em;
}
/* KPI icons */
.k-i-kpi-decrease {
  background-position: 0 0;
}
.k-i-kpi-denied {
  background-position: -16px 0;
}
.k-i-kpi-equal {
  background-position: -32px 0;
}
.k-i-kpi-hold {
  background-position: -48px 0;
}
.k-i-kpi-increase {
  background-position: -64px 0;
}
.k-i-kpi-open {
  background-position: -80px 0;
}
/* Pivot PDF Export styles */
.k-pdf-export-shadow .k-pivot .k-grid-content {
  overflow: visible !important;
}
.k-pdf-export-shadow .k-pivot .k-pivot-rowheaders .k-grid,
.k-pdf-export-shadow .k-pivot .k-grid-content {
  height: 100% !important;
}
.k-pdf-export-shadow .k-pivot .k-grid-header {
  padding-right: 0 !important;
}
.k-pdf-export-shadow .k-pivot {
  width: auto !important;
  height: auto !important;
}
.k-pdf-export-shadow .k-pivot .k-grid-header-wrap > table,
.k-pdf-export-shadow .k-pivot .k-grid-content > table {
  width: 100% !important;
  height: auto !important;
}
/* Pivot end */
/* Calendar */
.k-calendar {
  position: relative;
  display: inline-block;
  width: 16.917em;
  overflow: hidden;
}
.k-calendar td,
.k-calendar .k-link {
  text-decoration: none;
}
.k-calendar .k-action-link {
  text-decoration: underline;
}
.k-calendar .k-header,
.k-calendar .k-footer {
  position: relative;
  text-align: center;
  zoom: 1;
}
.k-widget.k-calendar .k-nav-prev,
.k-widget.k-calendar .k-nav-next {
  position: absolute;
  top: 0.16666em;
  line-height: 1.8333em;
  height: 1.8333em;
}
.k-widget.k-calendar .k-nav-prev {
  left: 1%;
}
.k-widget.k-calendar .k-nav-next {
  right: 1%;
}
.k-calendar .k-content {
  float: left;
  border-spacing: 0;
  width: 100%;
  height: 14.167em;
  border-width: 0;
  margin: 0;
  table-layout: fixed;
  outline: 0;
}
.k-calendar .k-content,
.k-calendar .k-content th {
  text-align: right;
}
.k-calendar .k-animation-container .k-content {
  height: 100%;
}
.k-widget.k-calendar .k-nav-fast {
  display: inline-block;
  width: 75%;
  height: 1.8333em;
  line-height: 1.8333em;
  margin: 0.16666em -0.08333em 0.3333em 0;
}
.k-calendar .k-header .k-icon {
  vertical-align: middle;
}
.k-calendar .k-header .k-link.k-nav-prev,
.k-calendar .k-header .k-link.k-nav-next {
  height: 1.8333em;
  width: 1.8333em;
}
.k-calendar th {
  border-bottom-style: solid;
  border-bottom-width: 1px;
  padding: .4em .45em .4em .1em;
  font-weight: normal;
  cursor: default;
}
.k-calendar td {
  padding: 0.08333em;
  cursor: pointer;
}
.k-calendar .k-state-focus {
  border-style: dotted;
  border-width: 0.08333em;
  padding: 0;
}
.k-calendar .k-content .k-link {
  display: block;
  overflow: hidden;
  min-height: 1.8333em;
  line-height: 1.8333em;
  padding: 0 .45em 0 .1em;
}
.k-calendar .k-meta-view .k-link {
  padding: .25em 0 .3em;
  text-align: center;
}
.k-calendar .k-footer {
  clear: both;
}
.k-calendar .k-footer .k-nav-today,
.k-calendar .k-footer > .k-state-disabled {
  display: block;
  height: 100%;
  padding: .5em 0;
}
.k-calendar .k-nav-today:hover {
  text-decoration: underline;
}
/* TreeView */
div.k-treeview {
  /* due to k-widget */
  border-width: 0;
  background: none;
  overflow: auto;
  white-space: nowrap;
}
.k-treeview .k-item {
  display: block;
  border-width: 0;
  margin: 0;
  padding: 0 0 0 16px;
}
.k-treeview > .k-group,
.k-treeview .k-item > .k-group,
.k-treeview .k-content {
  margin: 0;
  padding: 0;
  background: none;
  list-style-type: none;
  position: relative;
}
.k-treeview .k-icon,
.k-treeview .k-image,
.k-treeview .k-sprite,
.k-treeview .k-checkbox,
.k-treeview .k-in {
  display: inline-block;
  vertical-align: top;
}
.k-treeview .k-checkbox {
  margin-top: .2em;
}
.k-treeview .k-icon,
.k-treeview .k-in {
  vertical-align: middle;
}
.k-treeview .k-request-retry {
  vertical-align: baseline;
}
.k-treeview .k-plus,
.k-treeview .k-minus,
.k-treeview .k-plus-disabled,
.k-treeview .k-minus-disabled {
  margin-top: 0.25em;
  margin-left: -16px;
  cursor: pointer;
}
.k-treeview .k-plus-disabled,
.k-treeview .k-minus-disabled {
  cursor: default;
}
.k-treeview .k-sprite,
.k-treeview .k-image {
  margin-right: 3px;
}
.k-treeview .k-in {
  margin: 1px 0 1px 0.16666em;
  padding: 1px 0.3333em 1px 0.25em;
  line-height: 1.3333em;
  text-decoration: none;
  border-style: solid;
  border-width: 1px;
}
.k-treeview span.k-in {
  cursor: default;
}
.k-treeview .k-drop-hint {
  position: absolute;
  z-index: 10000;
  visibility: hidden;
  width: 80px;
  height: 5px;
  margin-top: -3px;
  background-color: transparent;
  background-repeat: no-repeat;
}
/* ComboBox & DropDownList */
span.k-datepicker,
span.k-timepicker,
span.k-datetimepicker,
span.k-colorpicker,
span.k-numerictextbox,
span.k-combobox,
span.k-dropdown,
.k-toolbar .k-split-button {
  background-image: none;
}
.k-autocomplete,
.k-combobox,
.k-datepicker,
.k-timepicker,
.k-datetimepicker,
.k-colorpicker,
.k-numerictextbox,
.k-dropdown,
.k-selectbox,
.k-textbox,
.k-toolbar .k-split-button {
  position: relative;
  display: inline-block;
  width: 12.4em;
  overflow: visible;
  border-width: 0;
  vertical-align: middle;
}
.k-filter-menu .k-combobox,
.k-filter-menu .k-datepicker,
.k-filter-menu .k-timepicker,
.k-filter-menu .k-datetimepicker,
.k-filter-menu .k-numerictextbox,
.k-filter-menu .k-dropdown,
.k-filter-menu .k-textbox {
  width: 13.2em;
}
.k-autocomplete,
.k-combobox,
.k-datepicker,
.k-timepicker,
.k-datetimepicker,
.k-colorpicker,
.k-numerictextbox,
.k-dropdown,
.k-selectbox,
.k-toolbar .k-split-button {
  white-space: nowrap;
}
.k-colorpicker,
.k-toolbar .k-split-button {
  width: auto;
}
.k-datetimepicker {
  width: 15em;
}
.k-autocomplete,
.k-picker-wrap,
.k-numeric-wrap {
  position: relative;
  cursor: default;
}
.k-dropdown-wrap {
  position: relative;
}
.k-dropdown-wrap,
.k-picker-wrap,
.k-numeric-wrap {
  display: block;
}
.k-block,
.k-widget,
.k-grid,
.k-slider,
.k-splitter,
.k-treeview,
.k-panelbar,
.k-content,
.k-header-column-menu {
  outline: 0;
  -webkit-tap-highlight-color: rgba(0, 0, 0, 0);
}
.k-block,
.k-slider,
.k-splitbar,
.k-calendar,
.k-treeview,
.k-pager-wrap,
.k-grid-header .k-link,
.k-header-column-menu {
  -webkit-touch-callout: none;
}
.k-popup.k-list-container,
.k-popup.k-calendar-container {
  -webkit-touch-callout: none;
  -webkit-tap-highlight-color: rgba(0, 0, 0, 0);
  padding: 2px;
  border-width: 1px;
  border-style: solid;
}
.k-list-container.k-state-border-down,
.k-autocomplete.k-state-border-down,
.k-dropdown-wrap.k-state-border-down,
.k-picker-wrap.k-state-border-down,
.k-numeric-wrap.k-state-border-down {
  border-bottom-width: 0;
  padding-bottom: 1px;
}
.k-list-container .km-scroll-container {
  padding-bottom: 6px;
}
.k-textbox,
.k-autocomplete,
.k-dropdown-wrap,
.k-picker-wrap,
.k-numeric-wrap {
  border-width: 1px;
  border-style: solid;
  padding: 0 1.9em 0 0;
}
.k-numeric-wrap.k-expand-padding {
  padding-right: 0;
}
.k-textbox,
.k-autocomplete {
  padding: 0;
}
.k-textbox.k-space-left {
  padding-left: 1.9em;
}
.k-textbox.k-space-right {
  padding-right: 1.9em;
}
.k-textbox .k-icon {
  top: 50%;
  margin: -8px 0 0;
  position: absolute;
}
.k-space-left .k-icon {
  left: 3px;
}
.k-space-right .k-icon {
  right: 3px;
}
.k-autocomplete,
.k-dropdown-wrap.k-state-focused,
.k-dropdown-wrap.k-state-hover,
.k-picker-wrap.k-state-focused,
.k-picker-wrap.k-state-hover,
.k-numeric-wrap.k-state-focused,
.k-numeric-wrap.k-state-hover {
  -webkit-transition: box-shadow .15s ease-out;
  -moz-transition: box-shadow .15s ease-out;
  -o-transition: box-shadow .15s ease-out;
  transition: box-shadow .15s ease-out;
  -webkit-transition: "box-shadow .15s ease-out";
  -moz-transition: "box-shadow .15s ease-out";
  -ms-transition: "box-shadow .15s ease-out";
  -o-transition: "box-shadow .15s ease-out";
  transition: "box-shadow .15s ease-out";
}
.k-textbox > input,
.k-picker-wrap .k-input,
.k-numeric-wrap .k-input,
.k-combobox .k-input {
  width: 100%;
  vertical-align: top;
}
.k-picker-wrap .k-input,
.k-numeric-wrap .k-input,
.k-dropdown-wrap .k-input,
.k-selectbox .k-input {
  font-family: inherit;
  border-width: 0;
  outline: 0;
}
.k-dropdown .k-input,
.k-selectbox .k-input {
  background: transparent;
}
.k-ie7 .k-picker-wrap .k-input,
.k-ie7 .k-numeric-wrap .k-input,
.k-ie7 .k-combobox .k-input {
  margin: -1px 0;
}
/* removes excessive spacing */
.k-picker-wrap .k-select,
.k-numeric-wrap .k-select,
.k-dropdown-wrap .k-select {
  position: absolute;
  /* icon positioning */
  top: 0;
  right: 0;
  display: inline-block;
  vertical-align: top;
  text-decoration: none;
}
.k-combobox .k-select,
.k-picker-wrap .k-select,
.k-numeric-wrap .k-select {
  border-style: solid;
  border-width: 0 0 0 1px;
  border-color: inherit;
  /* skin-related, inherit does not work in ie7- */
}
span.k-datetimepicker .k-select,
span.k-datetimepicker .k-select + .k-select {
  right: 0;
}
.k-textbox > input,
.k-autocomplete .k-input {
  display: block;
}
.k-combobox .k-icon {
  /*margin-top: 1px;*/
}
.k-dropdown .k-select,
.k-selectbox .k-select {
  overflow: hidden;
  border: 0;
  text-decoration: none;
  font: inherit;
  color: inherit;
}
.k-dropdown .k-input,
.k-selectbox .k-input {
  display: block;
  overflow: hidden;
  text-overflow: ellipsis;
}
.k-textbox > input,
.k-autocomplete .k-input,
.k-picker-wrap .k-input,
.k-numeric-wrap .k-input,
.k-dropdown-wrap .k-input,
.k-selectbox .k-input {
  height: 1.65em;
  line-height: 1.65em;
  padding: 0.177em 0;
  text-indent: 0.33em;
  border: 0;
  margin: 0;
}
.k-combobox .k-dropdown-wrap:before,
.k-picker-wrap:before,
.k-numeric-wrap:before {
  content: "\a0";
  display: inline-block;
  width: 0;
  height: 1.65em;
  padding-bottom: 0.3em;
}
/* fix missing bottom border on browser zoom in Chrome */
.k-webkit .k-combobox .k-dropdown-wrap:before,
.k-webkit .k-picker-wrap:before,
.k-webkit .k-numeric-wrap:before {
  padding-bottom: 0.38em;
}
/* above style breaks NumericTextBox layout due display:block style applied to the input */
.km.root .k-combobox .k-dropdown-wrap:before,
.km.root .k-picker-wrap:before,
.km.root .k-numeric-wrap:before {
  content: none;
}
.k-combobox .k-input,
.k-picker-wrap .k-input,
.k-numeric-wrap .k-input {
  display: inline;
}
.k-ie7 .k-autocomplete .k-input,
.k-ie7 .k-picker-wrap .k-input,
.k-ie7 .k-numeric-wrap .k-input,
.k-ie7 .k-dropdown-wrap .k-input,
.k-ie7 .k-selectbox .k-input {
  text-indent: 0;
}
.k-picker-wrap .k-select,
.k-numeric-wrap .k-select,
.k-dropdown-wrap .k-select {
  min-height: 1.65em;
  line-height: 2em;
  vertical-align: middle;
  -moz-box-sizing: border-box;
  text-align: center;
  width: 1.9em;
  height: 100%;
}
.k-numeric-wrap .k-select {
  padding: 0;
}
body .k-datetimepicker .k-select {
  border-radius: 0;
}
.k-ie7 .k-picker-wrap .k-icon,
.k-ie7 .k-dropdown-wrap .k-icon {
  line-height: 2em;
  font-size: 1em;
  padding-top: 16px;
  height: 0;
}
.k-combobox .k-icon,
.k-dropdown,
.k-selectbox .k-icon {
  cursor: pointer;
}
.k-popup {
  border-style: solid;
  border-width: 1px;
}
.k-popup .k-item,
.k-list-optionlabel {
  cursor: default;
}
.k-popup .k-calendar {
  border: 0;
}
.k-list {
  height: 100%;
}
.k-popup .k-list .k-item,
.k-fieldselector .k-list .k-item,
.k-list-optionlabel,
.k-popup > .k-group-header,
.k-popup > .k-virtual-wrap > .k-group-header {
  padding: 1px 5px 1px 5px;
  line-height: 1.8em;
  min-height: 1.8em;
}
.k-popup > .k-group-header,
.k-popup > .k-virtual-wrap > .k-group-header {
  padding-right: 22px;
}
.k-overflow-container .k-item {
  padding: 1px;
}
.k-overflow-container > .k-state-disabled .k-button,
.k-overflow-container .k-button.k-state-disabled,
.k-overflow-container .k-button.k-state-disabled:hover {
  border: 0 ;
  background: none;
}
.k-popup .k-list .k-state-hover,
.k-popup .k-list .k-state-focused,
.k-popup .k-list .k-state-selected,
.k-overflow-container .k-state-hover,
.k-overflow-container .k-state-focused,
.k-overflow-container .k-state-selected,
.k-fieldselector .k-list .k-item,
.k-list-optionlabel.k-state-focused,
.k-list-optionlabel.k-state-selected {
  padding: 0 4px;
  border-width: 1px;
  border-style: solid;
}
.k-list-filter {
  position: relative;
}
.k-list-filter > .k-textbox {
  padding-right: 20px;
  width: 100%;
}
.k-list-filter > .k-icon {
  position: absolute;
  right: 6px;
  top: 1px;
}
/* MultiSelect */
.k-multiselect-wrap {
  position: relative;
  border-width: 0px;
  border-style: solid;
  border-radius: 4px;
  border-color: #C5C5C5;
  background-color: #FFF;
  min-height: 2.04em;
}
.k-multiselect-wrap .k-input {
  background-color: transparent;
  height: 1.31em;
  line-height: 1.31em;
  padding: 0.18em 0;
  text-indent: 0.33em;
  border: 0;
  margin: 1px 0 0;
  float: left;
}
.k-multiselect-wrap li {
  margin: 1px 0 1px 1px;
  padding: .1em 1.6em .1em .4em;
  line-height: 1.5em;
  float: left;
  position: relative;
}
.k-autocomplete .k-loading,
.k-multiselect .k-loading {
  position: absolute;
  right: 3px;
  bottom: 4px;
}
.k-multiselect .k-loading-hidden {
  visibility: hidden;
}
.k-multiselect-wrap .k-select {
  position: absolute;
  top: 0;
  bottom: 0;
  right: 0;
  padding: .1em .2em;
}
/* Date/Time Pickers */
.k-datetimepicker .k-picker-wrap {
  padding-right: 3.8em;
}
.k-datetimepicker .k-select {
  width: 3.8em;
}
.k-datetimepicker .k-picker-wrap .k-icon {
  margin: 0 2px;
}
.k-picker-wrap .k-icon {
  cursor: pointer;
}
.k-button,
.k-textbox,
.k-timepicker,
.k-datepicker,
.k-datetimepicker {
  display: inline-block;
  vertical-align: middle;
}
.k-picker-wrap .k-input {
  margin: 0;
}
.k-time-popup .k-item {
  padding: 1px 3px;
}
/* inputs */
.k-input {
  padding: 0.25em 0;
}
.k-input,
.k-textbox > input {
  outline: 0;
  -webkit-tap-highlight-color: rgba(0, 0, 0, 0);
}
.k-textbox {
  outline: 0;
}
input.k-textbox,
textarea.k-textbox {
  padding: 2px .3em;
}
input.k-textbox {
  height: 2.13em;
  text-indent: 0.33em;
  line-height: 1.6em;
}
.k-ie input.k-textbox {
  text-indent: 0.165em;
}
.k-ff input.k-textbox {
  height: 2.17em;
}
.k-ie7 input.k-textbox {
  line-height: 1.72em;
  height: 1.72em;
  text-indent: 0.33em;
}
textarea.k-textbox {
  height: auto;
}
.k-ie7 .k-textbox {
  padding: 1px 0;
  text-indent: 0;
}
/* NumericTextBox */
span.k-numerictextbox {
  background-color: transparent;
}
.k-numerictextbox .k-input {
  margin: 0;
}
.k-numerictextbox .k-link {
  display: block;
  height: 1em;
  line-height: 1em;
  vertical-align: middle;
  border-width: 0;
  padding: 0;
}
.k-numerictextbox .k-icon {
  height: 11px;
}
.k-numeric-wrap .k-input::-webkit-inner-spin-button {
  -webkit-appearance: none;
}
/* ColorPicker */
.k-colorpicker .k-picker-wrap {
  line-height: 2em;
}
.k-colorpicker .k-selected-color {
  vertical-align: top;
  line-height: 0;
  display: inline-block;
  height: 2em;
  width: 2em;
}
.k-colorpicker .k-tool-icon {
  position: relative;
  top: -2px;
  display: inline-block;
  padding: 3px 3px 2px;
  font-size: 0;
  line-height: 0;
  margin-right: 3px;
  margin-left: 2px;
  margin-bottom: 3px;
  background-repeat: no-repeat;
  vertical-align: middle;
  width: 16px;
  height: 16px;
  -ms-high-contrast-adjust: none;
}
.k-colorpicker .k-tool-icon .k-selected-color {
  display: block;
  height: 3px;
  width: 16px;
  position: absolute;
  left: 3px;
  bottom: -3px;
  border-radius: 0 !important;
}
.k-colorpicker .k-icon {
  cursor: pointer;
}
.k-disabled-overlay {
  position: absolute;
  left: 0;
  top: 0;
  width: 100%;
  height: 100%;
  background-color: #fff;
  opacity: 0.5;
  filter: alpha(opacity=50);
}
.k-colorpalette {
  position: relative;
  line-height: 0;
  border-width: 0;
  display: inline-block;
}
.k-colorpalette .k-palette {
  border-collapse: collapse;
  position: relative;
  width: 100%;
  height: 100%;
}
.k-colorpalette .k-item {
  width: 14px;
  height: 14px;
  overflow: hidden;
  -ms-high-contrast-adjust: none;
}
.k-colorpalette .k-item.k-state-selected {
  z-index: 100;
  background: transparent;
  box-shadow: 0 1px 4px #000, inset 0 0 3px #fff;
  position: relative;
}
.k-flatcolorpicker {
  position: relative;
  display: inline-block;
  width: 250px;
  padding-bottom: 5px;
}
div.k-flatcolorpicker {
  background-color: transparent;
  background-image: none;
}
.k-flatcolorpicker .k-selected-color {
  background-image: url("textures/transtexture.png");
  background-position: 50% 50%;
  text-align: right;
}
.k-flatcolorpicker .k-selected-color input.k-color-value {
  font-family: Consolas, "Ubuntu Mono", "Lucida Console", "Courier New", monospace;
  padding: .75em .3em .65em 1em;
  border: 0;
  margin: 0;
  width: 70%;
}
.k-flatcolorpicker .k-hsv-rectangle {
  position: relative;
  -khtml-user-select: none;
  -webkit-user-select: none;
  -moz-user-select: -moz-none;
  -ms-user-select: none;
  user-select: none;
  -ms-touch-action: pinch-zoom double-tap-zoom;
}
.k-flatcolorpicker .k-hsv-rectangle .k-draghandle {
  cursor: pointer;
  position: absolute;
  z-index: 10;
  left: 50%;
  top: 50%;
  width: 8px;
  height: 8px;
  border: 1px solid #eee;
  margin-left: -5px;
  margin-top: -5px;
  border-radius: 6px;
  -webkit-box-shadow: 0 1px 2px #444444;
  box-shadow: 0 1px 2px #444444;
  background: transparent;
}
.k-flatcolorpicker .k-hsv-rectangle .k-draghandle:hover,
.k-flatcolorpicker .k-hsv-rectangle .k-draghandle:focus {
  background: transparent;
  border-color: #fff;
  -webkit-box-shadow: 0 1px 5px #000000;
  box-shadow: 0 1px 5px #000000;
}
.k-flatcolorpicker .k-hsv-rectangle.k-dragging,
.k-flatcolorpicker .k-hsv-rectangle.k-dragging * {
  cursor: none;
}
.k-flatcolorpicker .k-slider-horizontal {
  height: 20px;
  width: 90%;
  margin: 0 5%;
}
.k-flatcolorpicker .k-slider-horizontal .k-slider-track {
  -webkit-box-shadow: 0 1px 0 #fff, 0 -1px 0 #999;
  box-shadow: 0 1px 0 #fff, 0 -1px 0 #999;
}
.k-flatcolorpicker .k-hue-slider,
.k-flatcolorpicker .k-transparency-slider {
  display: block;
}
.k-flatcolorpicker .k-hue-slider .k-slider-selection,
.k-flatcolorpicker .k-transparency-slider .k-slider-selection {
  background: transparent;
}
.k-flatcolorpicker .k-hue-slider .k-draghandle,
.k-flatcolorpicker .k-transparency-slider .k-draghandle {
  background: transparent;
  border: 3px solid #eee;
  margin-top: 1px;
  height: 8px;
  width: 8px;
  -webkit-box-shadow: 0 1px 4px #444444;
  box-shadow: 0 1px 4px #444444;
}
.k-flatcolorpicker .k-hue-slider .k-draghandle:hover,
.k-flatcolorpicker .k-transparency-slider .k-draghandle:hover,
.k-flatcolorpicker .k-hue-slider .k-draghandle:focus,
.k-flatcolorpicker .k-transparency-slider .k-draghandle:focus {
  background: transparent;
  border-color: #fff;
  -webkit-box-shadow: 0 1px 5px #000000;
  box-shadow: 0 1px 5px #000000;
  border-width: 2px;
  padding: 1px;
}
.k-flatcolorpicker .k-hue-slider .k-slider-track {
  background: -moz-linear-gradient(left, #ff0000 0%, #ffff00 16%, #00ff00 33%, #00ffff 50%, #0000ff 67%, #ff00ff 84%, #ff0004 100%);
  /* FF3.6+ */
  background: -webkit-gradient(linear, left top, right top, color-stop(0%, #ff0000), color-stop(16%, #ffff00), color-stop(33%, #00ff00), color-stop(50%, #00ffff), color-stop(67%, #0000ff), color-stop(84%, #ff00ff), color-stop(100%, #ff0004));
  /* Chrome,Safari4+ */
  background: -webkit-linear-gradient(left, #ff0000 0%, #ffff00 16%, #00ff00 33%, #00ffff 50%, #0000ff 67%, #ff00ff 84%, #ff0004 100%);
  /* Chrome10+,Safari5.1+ */
  background: -o-linear-gradient(left, #ff0000 0%, #ffff00 16%, #00ff00 33%, #00ffff 50%, #0000ff 67%, #ff00ff 84%, #ff0004 100%);
  /* Opera 11.10+ */
  background: -ms-linear-gradient(left, #ff0000 0%, #ffff00 16%, #00ff00 33%, #00ffff 50%, #0000ff 67%, #ff00ff 84%, #ff0004 100%);
  /* IE10+ */
  background: -left-linear-gradient(left,#ff0000 0%,#ffff00 16%,#00ff00 33%,#00ffff 50%,#0000ff 67%,#ff00ff 84%,#ff0004 100%);
  /* W3C */
}
.k-flatcolorpicker .k-transparency-slider .k-slider-track {
  background-image: url("textures/transparency.png");
  background-size: 100% auto;
  background-position: 100% 50%;
  background-repeat: no-repeat;
}
.k-flatcolorpicker .k-controls {
  margin-top: 10px;
  margin-bottom: 5px;
  text-align: center;
  font-size: 90%;
}
.k-flatcolorpicker .k-controls .k-button {
  width: 6em;
}
.k-flatcolorpicker .k-hsv-gradient {
  background: -moz-linear-gradient(top, rgba(0, 0, 0, 0) 0%, #000000 100%), /* FF3.6+ */ -moz-linear-gradient(left, #ffffff 0%, rgba(255, 255, 255, 0) 100%);
  /* FF3.6+ */
  background: -webkit-gradient(linear, left top, left bottom, color-stop(0%, rgba(0, 0, 0, 0)), color-stop(100%, #000000)), /* Chrome,Safari4+ */ -webkit-gradient(linear, left top, right top, color-stop(0%, #ffffff), color-stop(100%, rgba(255, 255, 255, 0)));
  /* Chrome,Safari4+ */
  background: -webkit-linear-gradient(top, rgba(0, 0, 0, 0) 0%, #000000 100%), /* Chrome10+,Safari5.1+ */ -webkit-linear-gradient(left, #ffffff 0%, rgba(255, 255, 255, 0) 100%);
  /* Chrome10+,Safari5.1+ */
  background: -o-linear-gradient(top, rgba(0, 0, 0, 0) 0%, #000000 100%), /* Opera 11.10+ */ -o-linear-gradient(left, #ffffff 0%, rgba(255, 255, 255, 0) 100%);
  /* Opera 11.10+ */
  background: -ms-linear-gradient(top, rgba(0, 0, 0, 0) 0%, #000000 100%), /* IE10+ */ -ms-linear-gradient(left, #ffffff 0%, rgba(255, 255, 255, 0) 100%);
  /* IE10+ */
  background: -top-linear-gradient(top,rgba(0,0,0,0) 0%,#000000 100%), /* W3C */ -left-linear-gradient(left,#ffffff 0%,rgba(255,255,255,0) 100%);
  /* W3C */
  height: 180px;
  margin-bottom: 5px;
}
.k-ie9 .k-flatcolorpicker .k-hue-slider .k-slider-track {
  background: url(data:image/svg+xml;base64,PD94bWwgdmVyc2lvbj0iMS4wIiA/Pgo8c3ZnIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyIgd2lkdGg9IjEwMCUiIGhlaWdodD0iMTAwJSIgdmlld0JveD0iMCAwIDEgMSIgcHJlc2VydmVBc3BlY3RSYXRpbz0ibm9uZSI+CiAgPGxpbmVhckdyYWRpZW50IGlkPSJncmFkLXVjZ2ctZ2VuZXJhdGVkIiBncmFkaWVudFVuaXRzPSJ1c2VyU3BhY2VPblVzZSIgeDE9IjAlIiB5MT0iMCUiIHgyPSIxMDAlIiB5Mj0iMCUiPgogICAgPHN0b3Agb2Zmc2V0PSIwJSIgc3RvcC1jb2xvcj0iI2ZmMDAwMCIgc3RvcC1vcGFjaXR5PSIxIi8+CiAgICA8c3RvcCBvZmZzZXQ9IjE2JSIgc3RvcC1jb2xvcj0iI2ZmZmYwMCIgc3RvcC1vcGFjaXR5PSIxIi8+CiAgICA8c3RvcCBvZmZzZXQ9IjMzJSIgc3RvcC1jb2xvcj0iIzAwZmYwMCIgc3RvcC1vcGFjaXR5PSIxIi8+CiAgICA8c3RvcCBvZmZzZXQ9IjUwJSIgc3RvcC1jb2xvcj0iIzAwZmZmZiIgc3RvcC1vcGFjaXR5PSIxIi8+CiAgICA8c3RvcCBvZmZzZXQ9IjY3JSIgc3RvcC1jb2xvcj0iIzAwMDBmZiIgc3RvcC1vcGFjaXR5PSIxIi8+CiAgICA8c3RvcCBvZmZzZXQ9Ijg0JSIgc3RvcC1jb2xvcj0iI2ZmMDBmZiIgc3RvcC1vcGFjaXR5PSIxIi8+CiAgICA8c3RvcCBvZmZzZXQ9IjEwMCUiIHN0b3AtY29sb3I9IiNmZjAwMDQiIHN0b3Atb3BhY2l0eT0iMSIvPgogIDwvbGluZWFyR3JhZGllbnQ+CiAgPHJlY3QgeD0iMCIgeT0iMCIgd2lkdGg9IjEiIGhlaWdodD0iMSIgZmlsbD0idXJsKCNncmFkLXVjZ2ctZ2VuZXJhdGVkKSIgLz4KPC9zdmc+);
}
.k-ie9 .k-flatcolorpicker .k-hsv-gradient {
  background: url(data:image/svg+xml;base64,PD94bWwgdmVyc2lvbj0iMS4wIiA/Pgo8c3ZnIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyIgd2lkdGg9IjEwMCUiIGhlaWdodD0iMTAwJSIgdmlld0JveD0iMCAwIDEgMSIgcHJlc2VydmVBc3BlY3RSYXRpbz0ibm9uZSI+CiAgPGxpbmVhckdyYWRpZW50IGlkPSJncmFkLXVjZ2ctZ2VuZXJhdGVkIiBncmFkaWVudFVuaXRzPSJ1c2VyU3BhY2VPblVzZSIgeDE9IjAlIiB5MT0iMCUiIHgyPSIwJSIgeTI9IjEwMCUiPgogICAgPHN0b3Agb2Zmc2V0PSIwJSIgc3RvcC1jb2xvcj0iIzAwMDAwMCIgc3RvcC1vcGFjaXR5PSIwIi8+CiAgICA8c3RvcCBvZmZzZXQ9IjEwMCUiIHN0b3AtY29sb3I9IiMwMDAwMDAiIHN0b3Atb3BhY2l0eT0iMSIvPgogIDwvbGluZWFyR3JhZGllbnQ+CiAgPHJlY3QgeD0iMCIgeT0iMCIgd2lkdGg9IjEiIGhlaWdodD0iMSIgZmlsbD0idXJsKCNncmFkLXVjZ2ctZ2VuZXJhdGVkKSIgLz4KPC9zdmc+), url(data:image/svg+xml;base64,PD94bWwgdmVyc2lvbj0iMS4wIiA/Pgo8c3ZnIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyIgd2lkdGg9IjEwMCUiIGhlaWdodD0iMTAwJSIgdmlld0JveD0iMCAwIDEgMSIgcHJlc2VydmVBc3BlY3RSYXRpbz0ibm9uZSI+CiAgPGxpbmVhckdyYWRpZW50IGlkPSJncmFkLXVjZ2ctZ2VuZXJhdGVkIiBncmFkaWVudFVuaXRzPSJ1c2VyU3BhY2VPblVzZSIgeDE9IjAlIiB5MT0iMCUiIHgyPSIxMDAlIiB5Mj0iMCUiPgogICAgPHN0b3Agb2Zmc2V0PSIwJSIgc3RvcC1jb2xvcj0iI2ZmZmZmZiIgc3RvcC1vcGFjaXR5PSIxIi8+CiAgICA8c3RvcCBvZmZzZXQ9IjEwMCUiIHN0b3AtY29sb3I9IiNmZmZmZmYiIHN0b3Atb3BhY2l0eT0iMCIvPgogIDwvbGluZWFyR3JhZGllbnQ+CiAgPHJlY3QgeD0iMCIgeT0iMCIgd2lkdGg9IjEiIGhlaWdodD0iMSIgZmlsbD0idXJsKCNncmFkLXVjZ2ctZ2VuZXJhdGVkKSIgLz4KPC9zdmc+);
}
.k-ie7 .k-flatcolorpicker .k-hue-slider .k-slider-track,
.k-ie8 .k-flatcolorpicker .k-hue-slider .k-slider-track {
  background: url("textures/hue.png") repeat 0 50%;
}
.k-ie7 .k-flatcolorpicker .k-transparency-slider .k-slider-track,
.k-ie8 .k-flatcolorpicker .k-transparency-slider .k-slider-track {
  background: url("textures/transparency.png") repeat 0 50%;
}
.k-ie7 .k-flatcolorpicker .k-hsv-gradient,
.k-ie8 .k-flatcolorpicker .k-hsv-gradient {
  filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#ffffffff',endColorstr='#00ffffff',GradientType=1) progid:DXImageTransform.Microsoft.gradient(startColorstr='#00000000',endColorstr='#ff000000',GradientType=0);
}
/* Editor */
table.k-editor {
  width: 100%;
  height: 250px;
  table-layout: fixed;
  border-style: solid;
  border-width: 1px;
  border-collapse: separate;
  border-spacing: 4px;
  font-size: 100%;
  vertical-align: top;
  position: relative;
}
.k-editor-inline {
  border-width: 2px;
  padding: .3em .5em;
  word-wrap: break-word;
}
.k-editortoolbar-dragHandle {
  cursor: move;
  padding-left: 0;
  padding-right: 3px;
  box-shadow: none !important;
}
.k-editor .k-editor-toolbar-wrap {
  border: 0;
  padding: 0;
}
.k-editor-toolbar {
  margin: 0;
  padding: .1em 0;
  list-style-type: none;
  line-height: 1.3em;
  cursor: default;
  word-wrap: break-word;
  /* allow tools to wrap properly in IE */
}
.k-editor-toolbar li {
  display: inline-block;
  vertical-align: middle;
}
.k-ie7 .k-editor-toolbar li {
  display: inline;
  /* mandatory for IE7. Floats and the inline-block hack break it */
}
.k-webkit .k-editor-toolbar,
.k-ff .k-editor-toolbar,
.k-ie9 .k-editor-toolbar {
  padding: 0;
}
.k-webkit .k-editor-toolbar li,
.k-safari .k-editor-toolbar li,
.k-ff .k-editor-toolbar li,
.k-ie9 .k-editor-toolbar li,
.k-ie10 .k-editor-toolbar li {
  display: inline-block;
  padding: .1em 0;
}
.k-editor-toolbar .k-editor-widget,
.k-editor-toolbar > li {
  margin-right: 6px;
}
.k-group-start.k-group-end .k-editor-widget {
  margin-right: 0;
}
.k-editor-toolbar .k-editor-dropdown {
  position: relative;
}
.k-select-overlay {
  -webkit-appearance: none;
  opacity: 0;
  z-index: 11000;
  top: 0;
  left: 0;
  position: absolute;
  height: 26px;
  width: 100%;
  margin: -4px 0 0;
}
.k-editor-toolbar .k-separator {
  position: relative;
  top: 1px;
  border-style: solid;
  border-width: 0 1px 0 0;
  margin: 0 .3em 0 .1em;
  padding: 0 0 0 1px;
  font-size: 1.3em;
}
.k-editor-toolbar .k-break {
  display: block;
  height: 1px;
  font-size: 0;
  line-height: 0;
}
.k-editor-toolbar .k-dropdown,
.k-editor-toolbar .k-combobox,
.k-editor-toolbar .k-selectbox,
.k-editor-toolbar .k-colorpicker {
  vertical-align: middle;
}
.k-button-group {
  white-space: nowrap;
}
.k-button-group .k-tool {
  display: inline-block;
  vertical-align: middle;
  margin: 1px 0;
  width: 2em;
  height: 2em;
  line-height: 2em;
}
.k-button-group .k-tool-icon {
  width: 24px;
  height: 24px;
  vertical-align: middle;
  -ms-high-contrast-adjust: none;
}
.k-i-move {
  background-position: -160px -288px;
}
.k-bold {
  background-position: -240px 0;
}
.k-state-hover .k-bold,
.k-state-selected .k-bold {
  background-position: -264px 0;
}
.k-italic {
  background-position: -240px -24px;
}
.k-state-hover .k-italic,
.k-state-selected .k-italic {
  background-position: -264px -24px;
}
.k-underline {
  background-position: -240px -48px;
}
.k-state-hover .k-underline,
.k-state-selected .k-underline {
  background-position: -264px -48px;
}
.k-strikethrough {
  background-position: -240px -72px;
}
.k-state-hover .k-strikethrough,
.k-state-selected .k-strikethrough {
  background-position: -264px -72px;
}
.k-foreColor {
  background-position: -240px -96px;
}
.k-state-hover .k-foreColor,
.k-state-selected .k-foreColor {
  background-position: -264px -96px;
}
.k-backColor {
  background-position: -240px -120px;
}
.k-state-hover .k-backColor,
.k-state-selected .k-backColor {
  background-position: -264px -120px;
}
.k-colorpicker .k-foreColor {
  background-position: -240px -96px;
}
.k-colorpicker .k-backColor {
  background-position: -240px -120px;
}
.k-justifyLeft {
  background-position: -240px -144px;
}
.k-state-hover .k-justifyLeft,
.k-state-selected .k-justifyLeft {
  background-position: -264px -144px;
}
.k-justifyCenter {
  background-position: -240px -168px;
}
.k-state-hover .k-justifyCenter,
.k-state-selected .k-justifyCenter {
  background-position: -264px -168px;
}
.k-justifyRight {
  background-position: -240px -192px;
}
.k-state-hover .k-justifyRight,
.k-state-selected .k-justifyRight {
  background-position: -264px -192px;
}
.k-justifyFull {
  background-position: -240px -216px;
}
.k-state-hover .k-justifyFull,
.k-state-selected .k-justifyFull {
  background-position: -264px -216px;
}
.k-insertUnorderedList {
  background-position: -240px -264px;
}
.k-state-hover .k-insertUnorderedList,
.k-state-selected .k-insertUnorderedList {
  background-position: -264px -264px;
}
.k-insertOrderedList {
  background-position: -240px -288px;
}
.k-state-hover .k-insertOrderedList,
.k-state-selected .k-insertOrderedList {
  background-position: -264px -288px;
}
.k-indent,
.k-rtl .k-outdent {
  background-position: -288px 0;
}
.k-state-hover .k-indent,
.k-state-hover .k-rtl .k-outdent,
.k-state-selected .k-indent,
.k-state-selected .k-rtl .k-outdent {
  background-position: -312px 0;
}
.k-outdent,
.k-rtl .k-indent {
  background-position: -288px -24px;
}
.k-state-hover .k-outdent,
.k-state-hover .k-rtl .k-indent,
.k-state-selected .k-outdent,
.k-state-selected .k-rtl .k-indent {
  background-position: -312px -24px;
}
.k-createLink {
  background-position: -288px -48px;
}
.k-state-hover .k-createLink,
.k-state-selected .k-createLink {
  background-position: -312px -48px;
}
.k-unlink {
  background-position: -288px -72px;
}
.k-state-hover .k-unlink,
.k-state-selected .k-unlink {
  background-position: -312px -72px;
}
.k-insertImage {
  background-position: -288px -96px;
}
.k-state-hover .k-insertImage,
.k-state-selected .k-insertImage {
  background-position: -312px -96px;
}
.k-insertFile {
  background-position: -288px -216px;
}
.k-state-hover .k-insertFile,
.k-state-selected .k-insertFile {
  background-position: -312px -216px;
}
.k-subscript {
  background-position: -288px -144px;
}
.k-state-hover .k-subscript,
.k-state-selected .k-subscript {
  background-position: -312px -144px;
}
.k-superscript {
  background-position: -288px -168px;
}
.k-state-hover .k-superscript,
.k-state-selected .k-superscript {
  background-position: -312px -168px;
}
.k-cleanFormatting {
  background-position: -288px -192px;
}
.k-state-hover .k-cleanFormatting,
.k-state-selected .k-cleanFormatting {
  background-position: -312px -192px;
}
.k-createTable {
  background-position: -192px 0;
}
.k-state-hover .k-createTable,
.k-state-selected .k-createTable {
  background-position: -216px 0;
}
.k-addColumnLeft {
  background-position: -192px -24px;
}
.k-state-hover .k-addColumnLeft,
.k-state-selected .k-addColumnLeft {
  background-position: -216px -24px;
}
.k-addColumnRight {
  background-position: -192px -48px;
}
.k-state-hover .k-addColumnRight,
.k-state-selected .k-addColumnRight {
  background-position: -216px -48px;
}
.k-addRowAbove {
  background-position: -192px -72px;
}
.k-state-hover .k-addRowAbove,
.k-state-selected .k-addRowAbove {
  background-position: -216px -72px;
}
.k-addRowBelow {
  background-position: -192px -96px;
}
.k-state-hover .k-addRowBelow,
.k-state-selected .k-addRowBelow {
  background-position: -216px -96px;
}
.k-deleteRow {
  background-position: -192px -120px;
}
.k-state-hover .k-deleteRow,
.k-state-selected .k-deleteRow {
  background-position: -216px -120px;
}
.k-deleteColumn {
  background-position: -192px -144px;
}
.k-state-hover .k-deleteColumn,
.k-state-selected .k-deleteColumn {
  background-position: -216px -144px;
}
.k-mergeCells {
  background-position: -192px -168px;
}
.k-state-hover .k-mergeCells,
.k-state-selected .k-mergeCells {
  background-position: -216px -168px;
}
.k-pdf {
  background-position: -288px -240px;
}
.k-state-hover .k-pdf,
.k-state-selected .k-pdf {
  background-position: -312px -240px;
}
.k-print {
  background-position: -288px -264px;
}
.k-state-hover .k-print,
.k-state-selected .k-print {
  background-position: -312px -264px;
}
/* default tool widths */
.k-fontName {
  width: 110px;
}
.k-fontSize {
  width: 124px;
}
.k-formatBlock {
  width: 147px;
}
.k-editortoolbar-dragHandle {
  float: left;
  margin: 1px 0 0;
}
.k-editor-toolbar .k-button-group {
  padding: 1px;
}
.k-editor .k-editor-toolbar .k-row-break {
  display: block;
  height: 0;
  font-size: 0;
  line-height: 0;
}
.k-button-group .k-tool {
  border-style: solid;
  border-width: 1px;
  margin-right: -1px;
}
.k-button-group .k-tool.k-state-hover,
.k-button-group .k-tool:focus {
  position: relative;
  z-index: 1;
}
.k-rtl .k-button-group .k-tool {
  border-style: solid;
  border-width: 1px;
}
.k-button-group .k-tool.k-group-end {
  border-right-width: 1px;
}
.k-rtl .k-button-group .k-tool.k-group-end {
  border-left-width: 1px;
}
.k-button-group .k-state-disabled {
  display: none;
}
.k-button-group .k-state-hover,
.k-button-group .k-state-active {
  vertical-align: middle;
}
.k-button-group .k-state-disabled {
  filter: alpha(opacity=30);
  opacity: .3;
}
.k-editor .k-editable-area {
  width: 100%;
  height: 100%;
  border-style: solid;
  border-width: 1px;
  outline: 0;
}
.k-editor .k-content {
  display: block;
  width: 100%;
  height: 100%;
  border: 0;
  margin: 0;
  padding: 0;
  background: #fff;
}
.k-editor .k-tool {
  outline: 0;
}
.k-editor iframe.k-content {
  display: inline;
  vertical-align: top;
  /*fixes missing top border caused by the inline display*/
}
.k-editor .k-raw-content {
  border: 0;
  margin: 0;
  padding: 0;
}
.k-editor .k-raw-content,
.k-editor-dialog .k-editor-textarea {
  font-size: inherit;
  font-family: consolas, "courier new", monospace;
}
.k-editor-dialog {
  padding: 1em;
  width: 400px;
}
.k-editor-dialog .k-edit-label {
  width: 25%;
}
.k-editor-dialog .k-edit-field {
  width: 66%;
}
.k-editor-dialog .k-edit-field .k-textbox {
  width: 96%;
}
.k-viewhtml-dialog {
  width: auto;
}
.k-filebrowser-dialog {
  width: auto;
  min-width: 350px;
}
.k-filebrowser-dialog .k-filebrowser {
  margin: 0 1em 0;
}
.k-filebrowser-dialog .k-edit-label {
  width: 18%;
}
.k-filebrowser-dialog .k-edit-field {
  width: 75%;
}
.k-filebrowser-dialog .k-edit-field .k-textbox {
  width: 70%;
}
#k-editor-image-width,
#k-editor-image-height {
  width: 5em;
}
.k-editor-dialog .k-button {
  display: inline-block;
}
.k-editor-dialog .k-editor-textarea {
  width: 600px;
  height: 350px;
  padding: .2em .2em .2em .4em;
  border-width: 1px;
  border-style: solid;
  overflow: auto;
}
.k-button-wrapper .k-link:hover {
  text-decoration: underline;
}
.k-ct-popup {
  width: 180.39999999999998px;
  padding: .65em .5em .5em;
}
.k-ct-popup .k-status {
  margin: .3em 0;
}
.k-ct-cell {
  border-width: 1px;
  border-style: solid;
  width: 18px;
  height: 18px;
  margin: 1px;
  vertical-align: top;
  display: inline-block;
  overflow: hidden;
  -ms-high-contrast-adjust: none;
}
.k-editor .k-resize-handle {
  position: absolute;
  padding: 5px;
  right: 0;
  bottom: 0;
}
.k-editor .k-overlay {
  position: absolute;
  background-color: #fff;
  opacity: 0;
}
.k-toolbar-resizable {
  min-height: 2.4375em;
  position: relative;
}
.k-overflow-tools {
  position: absolute;
  right: 0;
  top: 0;
}
.k-editor-overflow-popup .k-tool {
  width: auto;
  height: auto;
  display: block;
  text-align: left;
  text-decoration: initial;
  border: 0;
  padding-right: 0.5em;
  margin: 0;
  padding: 0 6px;
}
.k-editor-overflow-popup .k-tool.k-state-disabled {
  display: none;
}
.k-editor-toolbar .k-tool-text {
  display: none;
}
/* Notification */
.k-notification-wrap {
  padding: .6em .5em;
  cursor: default;
  position: relative;
  white-space: nowrap;
}
.k-notification-button .k-notification-wrap {
  padding-right: 20px;
}
.k-notification-wrap > .k-i-note {
  vertical-align: text-bottom;
  margin-right: 4px;
}
.k-notification-wrap > .k-i-close {
  position: absolute;
  top: 7px;
  right: 4px;
  display: none;
}
.k-notification-button .k-notification-wrap > .k-i-close {
  display: block;
}
/* Progressbar */
.k-progressbar {
  display: inline-block;
  position: relative;
  vertical-align: middle;
}
.k-progressbar {
  border-radius: 4px;
}
.k-progressbar-horizontal {
  width: 27em;
  height: 1.9em;
}
.k-progressbar-vertical {
  width: 1.9em;
  height: 27em;
}
.k-progressbar > .k-state-selected {
  position: absolute;
  border-style: solid;
  border-width: 1px;
  overflow: hidden;
}
.k-progressbar-horizontal > .k-state-selected,
.k-rtl .k-progressbar-horizontal.k-progressbar-reverse > .k-state-selected {
  left: -1px;
  right: auto;
  top: -1px;
  height: 100%;
  border-radius: 4px 0 0 4px;
}
.k-progressbar-horizontal.k-progressbar-reverse > .k-state-selected,
.k-rtl .k-progressbar-horizontal > .k-state-selected {
  left: auto;
  right: -1px;
  border-radius: 0 4px 4px 0;
}
.k-progressbar-vertical > .k-state-selected {
  left: -1px;
  bottom: -1px;
  width: 100%;
  border-radius: 0 0 4px 4px;
}
.k-progressbar-vertical.k-progressbar-reverse > .k-state-selected {
  bottom: auto;
  top: -1px;
  border-radius: 4px 4px 0 0;
}
.k-progressbar > .k-state-selected.k-complete,
.k-rtl .k-progressbar > .k-state-selected.k-complete {
  border-radius: 4px;
}
.k-progressbar > .k-reset {
  list-style: none;
  margin: 0;
  padding: 0;
  position: absolute;
  left: -1px;
  top: -1px;
  width: 100%;
  height: 100%;
  border-radius: 4px;
  white-space: nowrap;
}
.k-progressbar-horizontal .k-item {
  display: inline-block;
  height: 100%;
  border-style: solid;
  margin-left: -1px;
}
.k-progressbar-horizontal .k-item.k-first {
  margin-left: 0;
}
.k-progressbar-horizontal .k-item.k-last {
  border-right-width: 0;
}
.k-progressbar-horizontal .k-item,
.k-rtl .k-progressbar-horizontal.k-progressbar-reverse .k-item {
  border-width: 1px 1px 1px 0;
}
.k-progressbar-horizontal.k-progressbar-reverse .k-item,
.k-rtl .k-progressbar-horizontal .k-item {
  border-width: 1px 0 1px 1px;
}
.k-progressbar-horizontal .k-first,
.k-rtl .k-progressbar-horizontal .k-last,
.k-rtl .k-progressbar-horizontal.k-progressbar-reverse .k-last {
  border-radius: 4px 0 0 4px;
  border-left-width: 1px;
}
.k-progressbar-horizontal .k-last,
.k-rtl .k-progressbar-horizontal .k-first {
  border-radius: 0 4px 4px 0;
}
.k-progressbar-horizontal.k-progressbar-reverse .k-last,
.k-rtl .k-progressbar-horizontal .k-first {
  border-right-width: 1px;
}
.k-progressbar-vertical .k-item {
  width: 100%;
  border-style: solid;
  border-width: 1px 1px 0 1px;
  margin-top: -1px;
}
.k-progressbar-vertical .k-item.k-first {
  margin-top: 0;
}
.k-progressbar-vertical li.k-item.k-last {
  border-bottom-width: 0;
}
.k-progressbar-vertical .k-first {
  border-radius: 4px 4px 0 0;
}
.k-progressbar-vertical .k-last {
  border-radius: 0 0 4px 4px;
  border-bottom-width: 1px;
}
.k-progressbar-vertical.k-progressbar-reverse .k-item {
  border-width: 0 1px 1px 1px;
}
.k-progressbar-vertical.k-progressbar-reverse .k-first {
  border-top-width: 1px;
}
.k-progress-status-wrap {
  position: absolute;
  top: -1px;
  border: 1px solid transparent;
  line-height: 2em;
  width: 100%;
  height: 100%;
}
.k-progress-status-wrap,
.k-rtl .k-progressbar-horizontal.k-progressbar-reverse .k-progress-status-wrap {
  left: -1px;
  right: auto;
  text-align: right;
}
.k-progressbar-horizontal.k-progressbar-reverse .k-progress-status-wrap,
.k-rtl .k-progressbar-horizontal .k-progress-status-wrap {
  left: auto;
  right: -1px;
  text-align: left;
}
.k-progressbar-vertical .k-progress-status-wrap {
  top: auto;
  bottom: -1px;
}
.k-progressbar-vertical.k-progressbar-reverse .k-progress-status-wrap {
  bottom: auto;
  top: -1px;
}
.k-progress-status {
  display: inline-block;
  padding: 0 .5em;
  min-width: 10px;
  white-space: nowrap;
}
.k-progressbar-vertical.k-progressbar-reverse .k-progress-status {
  position: absolute;
  bottom: 0;
  left: 0;
}
.k-progressbar-vertical .k-progress-status {
  -webkit-transform: rotate(-90deg) translateX(-100%);
  -moz-transform: rotate(-90deg) translateX(-100%);
  -ms-transform: rotate(-90deg) translateX(-100%);
  -o-transform: rotate(-90deg) translateX(-100%);
  transform: rotate(-90deg) translateX(-100%);
  -webkit-transform-origin: 0 0;
  -moz-transform-origin: 0 0;
  -ms-transform-origin: 0 0;
  -o-transform-origin: 0 0;
  transform-origin: 0 0;
}
.k-progressbar-vertical.k-progressbar-reverse .k-progress-status {
  -webkit-transform: rotate(90deg) translateX(-100%);
  -moz-transform: rotate(90deg) translateX(-100%);
  -ms-transform: rotate(90deg) translateX(-100%);
  -o-transform: rotate(90deg) translateX(-100%);
  transform: rotate(90deg) translateX(-100%);
  -webkit-transform-origin: 0 100%;
  -moz-transform-origin: 0 100%;
  -ms-transform-origin: 0 100%;
  -o-transform-origin: 0 100%;
  transform-origin: 0 100%;
}
.k-ie7 .k-progressbar-vertical .k-progress-status {
  writing-mode: tb-rl;
  padding: .5em 0;
}
.k-ie8 .k-progressbar-vertical .k-progress-status {
  writing-mode: bt-lr;
  padding: .5em 0;
}
/* Slider */
div.k-slider {
  position: relative;
  border-width: 0;
  background-color: transparent;
  -khtml-user-select: none;
  -webkit-user-select: none;
  -moz-user-select: -moz-none;
  -ms-user-select: none;
  user-select: none;
}
.k-slider-vertical {
  width: 26px;
  height: 200px;
  /* default height */
}
.k-slider-horizontal {
  display: inline-block;
  width: 200px;
  /* default width */
  height: 26px;
}
.k-slider-wrap {
  width: 100%;
  height: 100%;
}
.k-slider .k-button,
.k-grid .k-slider .k-button {
  position: absolute;
  top: 0;
  width: 24px;
  min-width: 0;
  height: 24px;
  margin: 0;
  padding: 0;
  outline: 0;
}
.k-slider .k-button .k-icon {
  margin-top: 3px;
  vertical-align: top;
}
.k-state-disabled .k-slider-wrap {
  filter: alpha(opacity=60);
  opacity: .6;
}
.k-state-disabled .k-slider-wrap .k-slider-items {
  color: #333;
}
.k-slider .k-button-decrease {
  left: 0;
}
.k-slider-vertical .k-button-decrease,
.k-grid .k-slider-vertical .k-button-decrease {
  top: auto;
  bottom: 0;
}
.k-slider .k-button-increase {
  right: 0;
}
.k-slider .k-icon,
.k-slider-track,
.k-slider .k-tick {
  cursor: pointer;
}
.k-ie7 .k-slider .k-icon {
  margin-top: 2px;
}
.k-slider-track,
.k-slider-selection {
  position: absolute;
  margin: 0;
  padding: 0;
}
.k-slider-horizontal .k-slider-track,
.k-slider-horizontal .k-slider-selection {
  top: 50%;
  left: 0;
  height: 8px;
  margin-top: -4px;
  background-repeat: repeat-x;
}
.k-slider-horizontal .k-slider-buttons .k-slider-track {
  left: 34px;
}
.k-slider-vertical .k-slider-track,
.k-slider-vertical .k-slider-selection {
  left: 50%;
  bottom: 0;
  width: 8px;
  margin-left: -4px;
  background-repeat: repeat-y;
}
.k-slider-vertical .k-slider-buttons .k-slider-track {
  bottom: 34px;
}
.k-draghandle {
  position: absolute;
  background-repeat: no-repeat;
  background-color: transparent;
  text-indent: -3333px;
  overflow: hidden;
  text-decoration: none;
  text-align: center;
  outline: 0;
}
.k-slider-horizontal .k-draghandle {
  top: -4px;
  width: 13px;
  height: 14px;
}
.k-slider-vertical .k-draghandle {
  left: -4px;
  width: 14px;
  height: 13px;
}
.k-slider-buttons .k-slider-items {
  margin-left: 34px;
}
.k-slider-horizontal .k-slider-items {
  height: 100%;
}
.k-slider-vertical .k-slider-items {
  padding-top: 1px;
}
.k-slider-vertical .k-slider-buttons .k-slider-items {
  padding-top: 0;
}
.k-slider-vertical .k-slider-buttons .k-slider-items {
  margin: 0;
  padding-top: 35px;
}
.k-slider .k-tick {
  position: relative;
  margin: 0;
  padding: 0;
  background-color: transparent;
  background-repeat: no-repeat;
  background-position: center center;
}
.k-slider-horizontal .k-tick {
  float: left;
  height: 100%;
  text-align: center;
}
/* fixes ticks position and removes spacing between them in IE7 */
.k-ie7 .k-slider-vertical .k-tick {
  float: left;
  clear: left;
  width: 100%;
}
.k-slider-horizontal .k-tick {
  background-position: center -92px;
}
.k-slider-horizontal .k-slider-topleft .k-tick {
  background-position: center -122px;
}
.k-slider-horizontal .k-slider-bottomright .k-tick {
  background-position: center -152px;
}
.k-slider-horizontal .k-tick-large {
  background-position: center -2px;
}
.k-slider-horizontal .k-slider-topleft .k-tick-large {
  background-position: center -32px;
}
.k-slider-horizontal .k-slider-bottomright .k-tick-large {
  background-position: center -62px;
}
.k-slider-vertical .k-tick {
  background-position: -92px center;
}
.k-slider-vertical .k-slider-topleft .k-tick {
  background-position: -122px center;
}
.k-slider-vertical .k-slider-bottomright .k-tick {
  background-position: -152px center;
}
.k-slider-vertical .k-tick-large {
  background-position: -2px center;
}
.k-slider-vertical .k-slider-topleft .k-tick-large {
  background-position: -32px center;
}
.k-slider-vertical .k-slider-bottomright .k-tick-large {
  background-position: -62px center;
}
.k-slider-horizontal .k-first {
  background-position: 0 -92px;
}
.k-slider-horizontal .k-tick-large.k-first {
  background-position: 0 -2px;
}
.k-slider-horizontal .k-slider-topleft .k-first {
  background-position: 0 -122px;
}
.k-slider-horizontal .k-slider-topleft .k-tick-large.k-first {
  background-position: 0 -32px;
}
.k-slider-horizontal .k-slider-bottomright .k-first {
  background-position: 0 -152px;
}
.k-slider-horizontal .k-slider-bottomright .k-tick-large.k-first {
  background-position: 0 -62px;
}
.k-slider-horizontal .k-last {
  background-position: 100% -92px;
}
.k-slider-horizontal .k-tick-large.k-last {
  background-position: 100% -2px;
}
.k-slider-horizontal .k-slider-topleft .k-last {
  background-position: 100% -122px;
}
.k-slider-horizontal .k-slider-topleft .k-tick-large.k-last {
  background-position: 100% -32px;
}
.k-slider-horizontal .k-slider-bottomright .k-last {
  background-position: 100% -152px;
}
.k-slider-horizontal .k-slider-bottomright .k-tick-large.k-last {
  background-position: 100% -62px;
}
.k-slider-vertical .k-first {
  background-position: -92px 100%;
}
.k-slider-vertical .k-tick-large.k-first {
  background-position: -2px 100%;
}
.k-slider-vertical .k-slider-topleft .k-first {
  background-position: -122px 100%;
}
.k-slider-vertical .k-slider-topleft .k-tick-large.k-first {
  background-position: -32px 100%;
}
.k-slider-vertical .k-slider-bottomright .k-first {
  background-position: -152px 100%;
}
.k-slider-vertical .k-slider-bottomright .k-tick-large.k-first {
  background-position: -62px 100%;
}
.k-slider-vertical .k-last {
  background-position: -92px 0;
}
.k-slider-vertical .k-tick-large.k-last {
  background-position: -2px 0;
}
.k-slider-vertical .k-slider-topleft .k-last {
  background-position: -122px 0;
}
.k-slider-vertical .k-slider-topleft .k-tick-large.k-last {
  background-position: -32px 0;
}
.k-slider-vertical .k-slider-bottomright .k-last {
  background-position: -152px 0;
}
.k-slider-vertical .k-slider-bottomright .k-tick-large.k-last {
  background-position: -62px 0;
}
.k-slider-vertical .k-tick {
  text-align: right;
}
.k-slider-vertical .k-slider-topleft .k-tick {
  text-align: left;
}
.k-slider .k-label {
  position: absolute;
  white-space: nowrap;
  font-size: .92em;
}
.k-slider-horizontal .k-label {
  left: 0;
  width: 100%;
  line-height: 1;
}
.k-slider-horizontal .k-first .k-label {
  left: -50%;
}
.k-slider-horizontal .k-last .k-label {
  left: auto;
  right: -50%;
}
.k-slider-horizontal .k-label {
  bottom: -1.2em;
}
.k-slider-horizontal .k-slider-topleft .k-label {
  top: -1.2em;
}
.k-slider-vertical .k-label {
  left: 120%;
  display: block;
  text-align: left;
}
.k-slider-vertical .k-last .k-label {
  top: -0.5em;
}
.k-slider-vertical .k-first .k-label {
  bottom: -0.5em;
}
.k-slider-vertical .k-slider-topleft .k-label {
  left: auto;
  right: 120%;
}
.k-slider-tooltip {
  top: -4444px;
  /*prevent window resize in IE8 when appending*/
}
/* Scheduler */
.k-scheduler-toolbar,
.k-scheduler-footer {
  border-style: solid;
}
.k-scheduler-toolbar,
.k-scheduler-footer {
  line-height: 28px;
  padding: 6px;
}
.k-scheduler-toolbar {
  position: relative;
  border-width: 0 0 1px;
}
.k-edit-field.k-scheduler-toolbar {
  border-width: 0;
  padding-top: 0;
  padding-left: 0;
  padding-right: 0;
}
.k-scheduler-header {
  text-align: center;
}
.k-scheduler-footer {
  border-width: 1px 0 0;
}
.k-scheduler-toolbar > ul {
  float: right;
}
.k-scheduler-toolbar > ul:first-child {
  float: left;
}
.k-scheduler-toolbar > .k-scheduler-tools {
  float: left;
  margin-bottom: .5em;
}
.k-scheduler-tools + .k-scheduler-navigation {
  float: left;
  clear: left;
}
.k-scheduler-toolbar > ul > li,
.k-scheduler-footer > ul > li {
  display: inline-block;
  border-style: solid;
  border-width: 1px 1px 1px 0;
}
.k-scheduler .k-scheduler-toolbar .k-nav-current,
.k-scheduler .k-scheduler-toolbar .k-scheduler-tools > li {
  border-width: 0;
}
.k-scheduler-toolbar > ul > li:first-child,
.k-scheduler-toolbar > ul.k-scheduler-views > li:first-child + li {
  border-left-width: 1px;
}
.k-scheduler div.k-scheduler-footer ul li {
  margin-right: .6em;
  border-width: 1px;
}
.k-scheduler-toolbar .k-link,
.k-scheduler-footer .k-link {
  display: inline-block;
  padding: 0 1.1em;
}
.k-scheduler-toolbar .k-nav-prev .k-link,
.k-scheduler-toolbar .k-nav-next .k-link {
  padding-left: .6em;
  padding-right: .6em;
}
.k-ie7 .k-scheduler-toolbar .k-nav-prev .k-link,
.k-ie7 .k-scheduler-toolbar .k-nav-next .k-link {
  height: 2.3em;
  margin-top: -1px;
  vertical-align: middle;
}
.k-ie7 .k-scheduler-toolbar .k-nav-prev .k-link .k-icon,
.k-ie7 .k-scheduler-toolbar .k-nav-next .k-link .k-icon {
  margin-top: .5em;
}
.k-scheduler-toolbar .k-nav-current .k-link {
  padding: 0;
}
.k-scheduler-toolbar .k-nav-current {
  margin: 0 1.1em;
}
.k-scheduler div.k-scheduler-toolbar > ul > li.k-nav-current,
.k-scheduler .k-nav-current > .k-state-active {
  background: none;
}
.k-scheduler-phone .k-scheduler-toolbar + .k-scheduler-toolbar .k-scheduler-navigation {
  width: 100%;
  text-align: center;
}
.k-scheduler-phone .k-scheduler-toolbar + .k-scheduler-toolbar .k-scheduler-navigation > li {
  background: none;
  border: 0;
}
.k-scheduler-phone .k-toolbar .k-nav-next {
  float: right;
}
.k-scheduler-phone .k-toolbar .k-nav-prev {
  float: left;
}
.k-scheduler-toolbar .k-i-calendar,
.k-scheduler-footer .k-icon {
  margin: -2px 6px 0 0;
}
.k-scheduler-header,
.k-scheduler-header-wrap {
  overflow: hidden;
}
.k-scheduler-header-wrap {
  position: relative;
  border-style: solid;
  border-width: 0;
}
.k-scheduler .k-scrollbar-v .k-scheduler-header-wrap {
  border-right-width: 1px;
}
.k-scheduler-times,
.k-scheduler-content {
  position: relative;
}
.k-scheduler-times {
  overflow: hidden;
  border-style: solid;
  border-width: 0;
}
.k-scheduler-content {
  overflow: auto;
}
.k-scheduler-layout,
.k-scheduler-table {
  border-spacing: 0;
  width: 100%;
  margin: 0;
  border-collapse: separate;
}
.k-ie7 .k-scheduler-content .k-scheduler-table {
  width: auto;
}
.k-scheduler-layout > tbody > tr > td {
  padding: 0;
  vertical-align: top;
}
/* fix smashed second layout column in iPad */
.k-safari .k-scheduler-layout > tbody > tr > td + td {
  width: 100%;
}
.k-scheduler-table {
  table-layout: fixed;
  max-width: none;
}
.k-scheduler-times .k-scheduler-table {
  table-layout: auto;
}
.k-scheduler-monthview .k-scheduler-content .k-scheduler-table {
  height: 100%;
}
.k-scheduler-table td,
.k-scheduler-table th {
  height: 1.5em;
  padding: .334em .5em;
  font-size: 100%;
}
.k-scheduler .k-scheduler-table td,
.k-scheduler .k-scheduler-table th {
  -webkit-box-sizing: content-box;
  -moz-box-sizing: content-box;
  box-sizing: content-box;
}
.k-scheduler-monthview .k-hidden,
.k-scheduler-monthview .k-hidden > div {
  width: 0 !important;
  overflow: hidden !important;
}
.k-scheduler-monthview .k-hidden {
  padding-left: 0 !important;
  padding-right: 0 !important;
  border-right-width: 0 !important;
}
.k-scheduler-monthview > tbody > tr:first-child .k-scheduler-times {
  margin-right: 1px;
}
.k-scheduler-monthview > tbody > tr:first-child .k-scheduler-times .k-hidden {
  height: auto;
}
.k-scheduler-monthview .k-scheduler-table td,
.k-scheduler-monthview .k-hidden {
  height: 80px;
  text-align: right;
}
.k-scheduler-phone .k-scheduler-monthview .k-scheduler-table td,
.k-scheduler-phone .k-scheduler-monthview .k-hidden {
  height: 40px;
}
.k-scheduler-table td,
.k-slot-cell {
  vertical-align: top;
}
/* separate due to old IEs */
.k-scheduler-layout tr + tr .k-scheduler-times th:last-child {
  vertical-align: top;
}
.k-scheduler-phone .k-scheduler-monthview .k-scheduler-table td {
  text-align: center;
  vertical-align: middle;
}
.k-scheduler-phone .k-scheduler-monthview .k-scheduler-table td span {
  font-size: 1.5em;
}
.k-scheduler-header th {
  overflow: hidden;
  text-overflow: ellipsis;
}
.k-scheduler-table td,
.k-scheduler-header th {
  border-style: solid;
  border-width: 0 0 1px 1px;
}
.k-scheduler-table td:first-child,
.k-scheduler-header th:first-child {
  border-left-width: 0;
}
.k-scheduler-agendaview .k-scheduler-table td:first-child {
  border-left-width: 1px;
}
.k-scheduler-agendaview .k-scheduler-table td.k-first {
  border-left-width: 0;
}
.k-scheduler-layout tr + tr .k-scheduler-times tr:last-child > th,
.k-scheduler-layout tr + tr .k-scheduler-table > tbody > tr:last-child > td,
.k-scheduler-table > tbody > tr > .k-last {
  border-bottom-width: 0;
}
.k-scrollbar-h tr + tr .k-scheduler-times,
.k-scrollbar-h .k-scheduler-content .k-scheduler-table > tbody > tr:last-child > td,
.k-scheduler-agendaview.k-scrollbar-h .k-scheduler-table > tbody > tr > td.k-last {
  border-bottom-width: 1px;
}
.k-scheduler-times th {
  text-align: right;
  padding-right: .6em;
  border-style: solid;
  border-width: 0 1px 1px 0;
  border-color: transparent;
  white-space: nowrap;
}
.k-scheduler-layout tr + tr .k-scheduler-times th {
  border-bottom-color: transparent;
}
.k-scheduler-layout tr + tr .k-scheduler-times th.k-slot-cell,
.k-scheduler-layout tr + tr .k-scheduler-times th.k-scheduler-times-all-day {
  border-bottom-color: inherit;
}
.k-scheduler .k-middle-row td {
  border-bottom-style: dotted;
}
.k-scheduler-now-arrow,
.k-scheduler-now-line {
  position: absolute;
}
.k-scheduler-now-arrow {
  width: 0;
  height: 0;
  border: solid 5px transparent;
  left: 0;
}
.k-scheduler-now-line {
  left: 5px;
  right: 0;
  height: 1px;
}
.k-task {
  position: relative;
}
div.k-more-events {
  text-align: center;
  font-size: 18px;
  line-height: 1.2;
  padding: 0;
}
.k-more-events > span {
  display: block;
  margin-top: -0.6em;
}
.k-event,
.k-more-events {
  position: absolute;
  border-style: solid;
  border-width: 1px;
  text-align: left;
  overflow: hidden;
}
.k-event {
  cursor: default;
  min-height: 1.3em;
}
.k-event-drag-hint {
  filter: alpha(opacity=60);
  opacity: .6;
  cursor: -webkit-grabbing;
  cursor: -moz-grabbing;
}
.k-scheduler-header .k-event {
  white-space: nowrap;
}
.k-event-template {
  padding: .3em 1.4em .3em .6em;
}
.k-event-time {
  display: none;
  padding-bottom: 0;
  font-size: .9em;
}
.k-event-drag-hint .k-event-time {
  display: block;
}
.k-event-actions,
.k-event > .k-link,
.k-task > .k-link {
  position: absolute;
  top: 3px;
  right: 4px;
  white-space: nowrap;
}
.k-event-actions {
  z-index: 1;
}
.k-scheduler-agendaview .k-task > .k-link {
  top: 0;
  right: 0;
}
.k-event-actions:first-child {
  position: static;
  float: left;
  margin: 4px 2px 0 4px;
}
.k-webkit .k-event-actions:first-child {
  margin-top: 3px;
}
.k-event-actions:first-child > .k-link {
  display: inline-block;
}
.k-event-delete {
  display: none;
}
.k-event:hover .k-event-delete,
tr:hover > td > .k-task .k-event-delete {
  display: inline-block;
}
.k-event .k-event-top-actions,
.k-event .k-event-bottom-actions {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  text-align: center;
}
.k-event .k-event-bottom-actions {
  top: auto;
  bottom: 0;
}
.k-event .k-resize-handle,
.k-scheduler-mobile .k-event:hover .k-resize-handle {
  position: absolute;
  visibility: hidden;
  z-index: 2;
}
.k-event:hover .k-resize-handle,
.k-event-active .k-resize-handle,
.k-scheduler-mobile .k-event-active:hover .k-resize-handle {
  visibility: visible;
}
.k-event .k-resize-handle:after {
  content: "";
  position: absolute;
  filter: alpha(opacity=50);
  opacity: .5;
}
.k-scheduler-mobile .k-event .k-resize-handle:after {
  filter: none;
  opacity: 1;
}
.k-event > .k-resize-n {
  top: 0;
  left: 0;
  right: 0;
  height: .4em;
}
.k-event > .k-resize-s {
  bottom: 0;
  left: 0;
  right: 0;
  height: .4em;
}
.k-event > .k-resize-e {
  right: 0;
  top: 0;
  bottom: 0;
  width: .4em;
}
.k-event > .k-resize-w {
  left: 0;
  top: 0;
  bottom: 0;
  width: .4em;
}
.k-event > .k-resize-n:after,
.k-event > .k-resize-s:after {
  top: 1px;
  left: 50%;
  margin-left: -1em;
  width: 2em;
  height: 1px;
}
.k-event > .k-resize-s:after {
  top: auto;
  bottom: 1px;
}
.k-event > .k-resize-e:after,
.k-event > .k-resize-w:after {
  left: 1px;
  top: 50%;
  margin-top: -0.7em;
  height: 1.4em;
  width: 1px;
}
.k-event > .k-resize-e:after {
  left: auto;
  right: 1px;
}
.k-scheduler-mobile .k-event > .k-resize-n,
.k-scheduler-mobile .k-event > .k-resize-s {
  height: .6em;
}
.k-scheduler-mobile .k-event > .k-resize-e,
.k-scheduler-mobile .k-event > .k-resize-w {
  width: .6em;
}
.k-scheduler-mobile .k-event > .k-resize-n:after,
.k-scheduler-mobile .k-event > .k-resize-s:after {
  top: 0;
  margin-left: -3em;
  width: 4em;
  height: .6em;
}
.k-scheduler-mobile .k-event > .k-resize-s:after {
  bottom: 0;
}
.k-scheduler-mobile .k-event > .k-resize-e:after,
.k-scheduler-mobile .k-event > .k-resize-w:after {
  left: 0;
  margin-top: -0.7em;
  height: 1.4em;
  width: .6em;
}
.k-scheduler-mobile .k-event > .k-resize-e:after {
  right: 0;
}
.k-scheduler-mobile .k-event > .k-resize-n:after {
  border-radius: 0 0 4px 4px;
}
.k-scheduler-mobile .k-event > .k-resize-s:after {
  border-radius: 4px 4px 0 0;
}
.k-scheduler-mobile .k-event > .k-resize-w:after {
  border-radius: 0 4px 4px 0;
}
.k-scheduler-mobile .k-event > .k-resize-e:after {
  border-radius: 4px 0 0 4px;
}
.k-scheduler-phone .k-scheduler-monthview .k-events-container {
  position: absolute;
  text-align: center;
  height: 6px;
  line-height: 6px;
}
.k-scheduler-phone .k-scheduler-monthview .k-event {
  position: static;
  display: inline-block;
  width: 4px;
  height: 4px;
  min-height: 0;
  margin: 1px;
}
.k-scheduler-marquee {
  border-style: solid;
  border-width: 0;
}
.k-scheduler-marquee.k-first:before,
.k-scheduler-marquee.k-last:after {
  content: "";
  position: absolute;
  width: 0;
  height: 0;
  border-style: solid;
  border-width: 3px;
}
div.k-scheduler-marquee:before {
  top: 0;
  left: 0;
  border-right-color: transparent;
  border-bottom-color: transparent;
}
div.k-scheduler-marquee:after {
  bottom: 0;
  right: 0;
  border-top-color: transparent;
  border-left-color: transparent;
}
.k-scheduler-marquee .k-label-top {
  position: absolute;
  top: .3em;
  left: .8em;
  font-size: .8em;
}
.k-scheduler-marquee .k-label-bottom {
  position: absolute;
  bottom: .3em;
  right: .81em;
  font-size: .8em;
}
.k-scheduler-quickedit .k-textbox {
  width: 200px;
}
.k-tooltip-bottom {
  text-align: left;
}
.k-tooltip-bottom .k-button {
  float: left;
  margin-right: .3em;
}
.k-tooltip-bottom .k-quickedit-details {
  float: right;
  margin-right: 0;
}
.k-scheduler-agendaview .k-scheduler-table th,
.k-scheduler-agendaview .k-scheduler-table td {
  text-align: left;
}
.k-scheduler-times .k-slot-cell,
.k-scheduler-groupcolumn {
  width: 6em;
}
.k-scheduler-datecolumn {
  width: 12em;
}
.k-scheduler-timecolumn {
  width: 11em;
}
.k-scheduler-timecolumn > div {
  position: relative;
  vertical-align: top;
}
.k-webkit .k-scheduler-timecolumn > div > .k-icon {
  vertical-align: top;
}
.k-scheduler-timecolumn > div > .k-i-arrow-e {
  position: absolute;
  right: -4px;
}
.k-scheduler-timecolumn .k-i-arrow-w {
  margin-left: -4px;
}
.k-scheduler-mark {
  display: inline-block;
  width: 1em;
  height: 1em;
  vertical-align: middle;
  margin-right: .5em;
}
.k-scheduler-agendaday {
  float: left;
  margin: 0 .2em 0 0;
  font-size: 3em;
  font-weight: normal;
}
.k-scheduler-agendaweek {
  display: block;
  margin: .4em 0 0;
  font-size: 1.1em;
  font-style: normal;
}
.k-scheduler-agendadate {
  font-size: .8em;
}
.k-scheduler-timecolumn {
  white-space: nowrap;
}
.k-scheduler-edit-form .k-edit-form-container,
.k-scheduler-timezones .k-edit-form-container {
  width: 520px;
}
.k-scheduler-edit-form .k-edit-label {
  width: 17%;
}
.k-scheduler-edit-form .k-edit-field {
  width: 77%;
}
.k-scheduler-edit-form .k-textbox[name="title"],
.k-scheduler-edit-form textarea.k-textbox {
  width: 100%;
}
.k-scheduler-edit-form textarea.k-textbox {
  min-height: 4em;
  resize: vertical;
}
.k-scheduler-edit-form > .k-edit-box:first-child .k-datetimepicker {
  margin-right: 1em;
}
.km-pane-wrapper .k-scheduler-edit-form .k-edit-buttons {
  clear: right;
  margin-right: 2%;
  margin-left: 2%;
  padding: 0 0 .6em;
}
.k-edit-box {
  float: left;
}
.k-edit-box + .k-edit-box {
  float: right;
}
.k-scheduler-edit-form label + input {
  margin-left: 1em;
}
.k-edit-field > ul.k-reset > li {
  margin: .2em 0 .4em;
  line-height: 2.4;
}
.k-edit-field > ul.k-reset.k-toolbar > li {
  margin: 0;
}
.k-edit-field > ul.k-reset .k-widget {
  margin-left: .8em;
}
.k-edit-field > ul.k-reset .k-numerictextbox,
.k-edit-field span.k-recur-interval {
  width: 5em;
}
.k-edit-field > ul.k-reset .k-dropdown,
.k-edit-field > ul.k-reset .k-datepicker,
div[name="recurrenceRule"] > .k-dropdown {
  width: 9em;
}
.k-scheduler-edit-form .k-edit-buttons .k-scheduler-delete {
  float: left;
}
.k-popup-message {
  margin: 0;
  padding: 1em 0 2em;
  text-align: center;
}
.k-scheduler-timezones .k-dropdown:first-child {
  width: 100%;
}
.k-scheduler-timezones .k-dropdown + .k-dropdown {
  margin: .5em 0 .7em;
}
.k-scheduler-toolbar > ul.k-scheduler-views > li.k-current-view {
  display: none;
}
.k-scheduler-toolbar li.k-nav-current .k-sm-date-format {
  display: none;
}
.k-scheduler-refresh {
  float: right;
  padding: 0 .5em;
}
/* Responsive styles  */
@media only screen and (max-width: 1024px) {
  .k-webkit .k-scheduler-toolbar > ul.k-scheduler-views,
  .k-ff .k-scheduler-toolbar > ul.k-scheduler-views,
  .k-ie11 .k-scheduler-toolbar > ul.k-scheduler-views,
  .k-safari .k-scheduler-toolbar > ul.k-scheduler-views {
    position: absolute;
    right: 6px;
    top: 6px;
    z-index: 10000;
  }
  .k-webkit .k-rtl .k-scheduler-toolbar > ul.k-scheduler-views,
  .k-ff .k-rtl .k-scheduler-toolbar > ul.k-scheduler-views,
  .k-ie11 .k-rtl .k-scheduler-toolbar > ul.k-scheduler-views,
  .k-safari .k-rtl .k-scheduler-toolbar > ul.k-scheduler-views {
    right: auto;
    left: 6px;
  }
  .k-webkit .k-scheduler-toolbar > ul.k-scheduler-views > li:not(.k-current-view),
  .k-ff .k-scheduler-toolbar > ul.k-scheduler-views > li:not(.k-current-view),
  .k-ie11 .k-scheduler-toolbar > ul.k-scheduler-views > li:not(.k-current-view),
  .k-safari .k-scheduler-toolbar > ul.k-scheduler-views > li:not(.k-current-view) {
    display: none;
  }
  .k-webkit .k-scheduler-toolbar li.k-nav-current .k-lg-date-format,
  .k-ff .k-scheduler-toolbar li.k-nav-current .k-lg-date-format,
  .k-ie11 .k-scheduler-toolbar li.k-nav-current .k-lg-date-format,
  .k-safari .k-scheduler-toolbar li.k-nav-current .k-lg-date-format {
    display: none;
  }
  .k-webkit .k-scheduler-toolbar li.k-nav-current .k-sm-date-format,
  .k-ff .k-scheduler-toolbar li.k-nav-current .k-sm-date-format,
  .k-ie11 .k-scheduler-toolbar li.k-nav-current .k-sm-date-format,
  .k-safari .k-scheduler-toolbar li.k-nav-current .k-sm-date-format {
    display: inline;
  }
  .k-webkit .k-scheduler-toolbar > ul.k-scheduler-views > li.k-current-view,
  .k-ff .k-scheduler-toolbar > ul.k-scheduler-views > li.k-current-view,
  .k-ie11 .k-scheduler-toolbar > ul.k-scheduler-views > li.k-current-view,
  .k-safari .k-scheduler-toolbar > ul.k-scheduler-views > li.k-current-view {
    display: block;
    border-width: 1px;
  }
  .k-webkit .k-rtl .k-scheduler-toolbar > ul.k-scheduler-views > li.k-current-view,
  .k-ff .k-rtl .k-scheduler-toolbar > ul.k-scheduler-views > li.k-current-view,
  .k-ie11 .k-rtl .k-scheduler-toolbar > ul.k-scheduler-views > li.k-current-view,
  .k-safari .k-rtl .k-scheduler-toolbar > ul.k-scheduler-views > li.k-current-view {
    text-align: left;
    padding-left: 1em;
  }
  .k-webkit .k-scheduler-toolbar > ul.k-scheduler-views > li.k-current-view > .k-link,
  .k-ff .k-scheduler-toolbar > ul.k-scheduler-views > li.k-current-view > .k-link,
  .k-ie11 .k-scheduler-toolbar > ul.k-scheduler-views > li.k-current-view > .k-link,
  .k-safari .k-scheduler-toolbar > ul.k-scheduler-views > li.k-current-view > .k-link {
    display: block;
    position: relative;
    padding-right: 2.5em;
    padding-left: 1em;
  }
  .k-webkit .k-rtl .k-scheduler-toolbar > ul.k-scheduler-views > li.k-current-view > .k-link,
  .k-ff .k-rtl .k-scheduler-toolbar > ul.k-scheduler-views > li.k-current-view > .k-link,
  .k-ie11 .k-rtl .k-scheduler-toolbar > ul.k-scheduler-views > li.k-current-view > .k-link,
  .k-safari .k-rtl .k-scheduler-toolbar > ul.k-scheduler-views > li.k-current-view > .k-link {
    padding-left: 0;
  }
  .k-webkit .k-scheduler-toolbar > ul.k-scheduler-views > li.k-current-view > .k-link:after,
  .k-ff .k-scheduler-toolbar > ul.k-scheduler-views > li.k-current-view > .k-link:after,
  .k-ie11 .k-scheduler-toolbar > ul.k-scheduler-views > li.k-current-view > .k-link:after,
  .k-safari .k-scheduler-toolbar > ul.k-scheduler-views > li.k-current-view > .k-link:after {
    display: block;
    content: "";
    position: absolute;
    top: 50%;
    margin-top: -0.6em;
    right: 0.333em;
    width: 1.333em;
    height: 1.333em;
  }
  .k-webkit .k-scheduler-toolbar > ul.k-scheduler-views.k-state-expanded > li,
  .k-ff .k-scheduler-toolbar > ul.k-scheduler-views.k-state-expanded > li,
  .k-ie11 .k-scheduler-toolbar > ul.k-scheduler-views.k-state-expanded > li,
  .k-safari .k-scheduler-toolbar > ul.k-scheduler-views.k-state-expanded > li,
  .k-webkit .k-scheduler-toolbar > ul.k-scheduler-views.k-state-expanded > li:first-child + li,
  .k-ff .k-scheduler-toolbar > ul.k-scheduler-views.k-state-expanded > li:first-child + li,
  .k-ie11 .k-scheduler-toolbar > ul.k-scheduler-views.k-state-expanded > li:first-child + li,
  .k-safari .k-scheduler-toolbar > ul.k-scheduler-views.k-state-expanded > li:first-child + li {
    display: block;
    border: 0;
    border-radius: 0;
  }
  .k-webkit .k-scheduler-toolbar > ul.k-scheduler-views.k-state-expanded,
  .k-ff .k-scheduler-toolbar > ul.k-scheduler-views.k-state-expanded,
  .k-ie11 .k-scheduler-toolbar > ul.k-scheduler-views.k-state-expanded,
  .k-safari .k-scheduler-toolbar > ul.k-scheduler-views.k-state-expanded {
    border: 1px solid #c5c5c5;
    background-color: #fff;
    background-image: none;
    box-shadow: 0 2px 2px 0 rgba(0, 0, 0, 0.3);
  }
  .k-webkit .k-rtl .k-scheduler-toolbar > ul.k-scheduler-views.k-state-expanded,
  .k-ff .k-rtl .k-scheduler-toolbar > ul.k-scheduler-views.k-state-expanded,
  .k-ie11 .k-rtl .k-scheduler-toolbar > ul.k-scheduler-views.k-state-expanded,
  .k-safari .k-rtl .k-scheduler-toolbar > ul.k-scheduler-views.k-state-expanded {
    text-align: left;
  }
}
@media only screen and (max-width: 480px) {
  .k-webkit .k-scheduler-toolbar li.k-nav-current .k-sm-date-format,
  .k-ff .k-scheduler-toolbar li.k-nav-current .k-sm-date-format,
  .k-ie11 .k-scheduler-toolbar li.k-nav-current .k-sm-date-format,
  .k-safari .k-scheduler-toolbar li.k-nav-current .k-sm-date-format {
    display: none;
  }
  .k-webkit .k-scheduler-timecolumn,
  .k-ff .k-scheduler-timecolumn,
  .k-ie11 .k-scheduler-timecolumn,
  .k-safari .k-scheduler-timecolumn {
    width: 5em;
  }
  .k-webkit .k-scheduler-datecolumn,
  .k-ff .k-scheduler-datecolumn,
  .k-ie11 .k-scheduler-datecolumn,
  .k-safari .k-scheduler-datecolumn {
    width: 6em;
    overflow: hidden;
  }
  .k-webkit .k-scheduler-timecolumn > div,
  .k-ff .k-scheduler-timecolumn > div,
  .k-ie11 .k-scheduler-timecolumn > div,
  .k-safari .k-scheduler-timecolumn > div,
  .k-webkit .k-scheduler-datecolumn > div,
  .k-ff .k-scheduler-datecolumn > div,
  .k-ie11 .k-scheduler-datecolumn > div,
  .k-safari .k-scheduler-datecolumn > div {
    white-space: normal;
  }
}
/* Remove scrollbars during PDF export */
.k-scheduler-pdf-export {
  overflow: hidden;
}
.k-pdf-export-shadow .k-scheduler,
.k-scheduler-pdf-export .k-scheduler-content,
.k-scheduler-pdf-export .k-scheduler-times {
  height: auto !important;
  overflow: visible !important;
}
.k-scheduler-pdf-export .k-scheduler-header {
  padding: 0 !important;
}
.k-scheduler-pdf-export .k-scheduler-header-wrap {
  border-width: 0 !important;
}
.k-scheduler-pdf-export .k-scheduler-header .k-scheduler-table,
.k-scheduler-pdf-export .k-scheduler-content .k-scheduler-table {
  width: 100% !important;
}
/* Tooltip */
.k-tooltip {
  position: absolute;
  z-index: 12000;
  border-style: solid;
  border-width: 1px;
  padding: 4px 5px 4px 6px;
  background-repeat: repeat-x;
  min-width: 20px;
  /*slider tooltip only*/
  text-align: center;
  /*slider tooltip only*/
}
.k-tooltip-button {
  text-align: right;
  height: 0;
}
.k-tooltip-content {
  height: 100%;
}
.k-tooltip-closable .k-tooltip-content {
  padding-right: 20px;
}
span.k-tooltip {
  position: static;
  display: inline-block;
  border-width: 1px;
  padding: 2px 5px 1px 6px;
}
.k-invalid-msg {
  display: none;
}
.k-callout {
  position: absolute;
  width: 0;
  height: 0;
  border-style: solid;
  border-width: 6px;
  border-color: transparent;
}
.k-callout-n {
  top: -13px;
  left: 50%;
}
.k-callout-w {
  top: 50%;
  left: -13px;
}
.k-callout-s {
  left: 50%;
  bottom: -13px;
}
.k-callout-e {
  top: 50%;
  right: -13px;
}
.k-slider-tooltip .k-callout-n,
.k-slider-tooltip .k-callout-s {
  margin-left: -6px;
}
.k-slider-tooltip .k-callout-w,
.k-slider-tooltip .k-callout-e {
  margin-top: -6px;
}
.k-tooltip-validation .k-warning {
  vertical-align: text-top;
  margin-right: 3px;
}
.k-tooltip-validation {
  z-index: 9999;
}
/* Toolbar */
.k-toolbar {
  position: relative;
  display: block;
  vertical-align: middle;
  line-height: 2.9em;
}
.k-toolbar .k-button .k-icon,
.k-toolbar .k-button .k-sprite,
.k-overflow-container .k-button .k-icon,
.k-overflow-container .k-button .k-sprite {
  vertical-align: middle;
  margin-top: -7px;
  margin-bottom: -5px;
}
.k-toolbar .k-input {
  line-height: inherit;
  height: inherit;
  padding-top: 2px;
  padding-bottom: 2px;
}
.k-toolbar .k-input:before {
  content: "\a0";
  display: inline-block;
  width: 0;
}
.k-ie .k-toolbar .k-input {
  height: 1.65em;
}
.k-toolbar .k-combobox .k-dropdown-wrap:before,
.k-toolbar .k-picker-wrap:before,
.k-toolbar .k-numeric-wrap:before {
  display: none;
}
.k-overflow-container .k-sprite {
  margin-left: -4px;
}
.k-toolbar-resizable {
  overflow: hidden;
  white-space: nowrap;
}
.k-toolbar > .k-align-left {
  float: none;
}
.k-toolbar > .k-align-right {
  float: right;
}
.k-toolbar > *,
.k-toolbar .k-button {
  display: inline-block;
  vertical-align: middle;
  line-height: 1.72em;
}
.k-toolbar .k-separator {
  border-width: 0 0 0 1px;
  border-style: solid;
  width: 1px;
  line-height: inherit;
}
.k-toolbar .k-button-group {
  list-style-type: none;
}
.k-toolbar .k-button-group > li {
  display: inline-block;
}
.k-toolbar .k-button-group .k-button {
  margin: 0 0 0 -1px;
  border-radius: 0;
}
.k-toolbar .k-button,
.k-toolbar .k-split-button,
.k-toolbar .k-button-group,
.k-toolbar .k-widget,
.k-toolbar .k-textbox,
.k-toolbar label,
.k-toolbar .k-separator {
  margin: 0 .2em;
  line-height: 1.72em;
  vertical-align: middle;
}
.k-toolbar .k-split-button {
  padding-left: 0;
}
.k-toolbar .k-split-button .k-button,
.k-toolbar .k-button-group .k-group-start {
  margin: 0;
}
.k-toolbar .k-split-button .k-split-button-arrow {
  margin: 0 0 0 -1px;
}
.k-toolbar .k-overflow-anchor {
  border-width: 0 0 0 1px;
  border-style: solid;
  height: 3em;
  width: 3em;
  line-height: inherit;
  padding: 0 .5em;
  margin: 0;
  position: relative;
  float: right;
  border-radius: 0;
}
.k-overflow-container .k-item {
  float: none;
  border: 0;
}
.k-overflow-container .k-separator {
  border-width: 0 0 1px;
  border-style: solid;
  height: 1px;
  line-height: 0;
  font-size: 0;
  padding: 0;
}
.k-overflow-container .k-overflow-button,
.k-split-container .k-button {
  text-align: left;
  display: block;
  background: none;
  border-color: transparent;
  white-space: nowrap;
}
.k-split-container {
  margin-top: -1px;
}
.k-overflow-container .k-button-group {
  padding: 0;
}
.k-overflow-container .k-button-group > li {
  display: block;
}
.k-overflow-container .k-overflow-group {
  border-width: 1px 0;
  border-style: solid;
  border-radius: 0;
  padding: 2px 0;
  margin: 1px 0;
}
.k-overflow-container .k-overflow-hidden {
  display: none;
}
.k-overflow-container .k-toolbar-first-visible,
.k-overflow-container .k-overflow-group + .k-overflow-group,
.k-overflow-container .k-separator + .k-overflow-group {
  border-top: 0;
  margin-top: 0;
  padding-top: 1px;
}
.k-overflow-container .k-overflow-group + .k-separator {
  display: none;
}
.k-overflow-container .k-toolbar-last-visible {
  border-bottom: 0;
  margin-bottom: 0;
  padding-bottom: 1px;
}
/* Splitter */
.k-splitter {
  position: relative;
  height: 300px;
}
.k-pane > .k-splitter {
  border-width: 0;
  overflow: hidden;
}
.k-splitter .k-pane {
  overflow: hidden;
}
.k-splitter .k-scrollable {
  overflow: auto;
}
.k-splitter .k-pane-loading {
  position: absolute;
  top: 50%;
  left: 50%;
  margin: -8px 0 0 -8px;
}
.k-ghost-splitbar,
.k-splitbar {
  position: absolute;
  border-style: solid;
  font-size: 0;
  outline: 0;
  -khtml-user-select: none;
  -webkit-user-select: none;
  -moz-user-select: -moz-none;
  -ms-user-select: none;
  user-select: none;
}
.k-splitter .k-ghost-splitbar-horizontal,
.k-splitter .k-splitbar-horizontal {
  top: 0;
  width: 5px;
  border-width: 0 1px;
  background-repeat: repeat-y;
}
.k-ghost-splitbar-vertical,
.k-splitbar-vertical {
  left: 0;
  height: 5px;
  border-width: 1px 0;
  background-repeat: repeat-x;
}
.k-splitbar-draggable-horizontal {
  cursor: w-resize;
}
.k-splitbar-draggable-vertical {
  cursor: n-resize;
}
.k-splitbar .k-resize-handle {
  display: none;
}
.k-restricted-size-horizontal,
.k-restricted-size-vertical {
  background-color: #f00;
}
.k-splitbar-horizontal .k-icon {
  position: absolute;
  top: 50%;
  width: 5px;
  height: 20px;
  margin-top: -10px;
}
.k-collapse-prev,
.k-collapse-next,
.k-expand-prev,
.k-expand-next {
  cursor: pointer;
}
.k-splitbar-horizontal .k-collapse-prev {
  margin-top: -31px;
}
.k-splitbar-horizontal .k-collapse-next {
  margin-top: 11px;
}
.k-splitbar-static-horizontal {
  width: 1px;
}
.k-splitbar-static-vertical {
  height: 1px;
}
.k-splitbar-vertical .k-icon {
  position: absolute;
  left: 50%;
  width: 20px;
  height: 5px;
  margin-left: -10px;
}
.k-splitbar-vertical .k-collapse-prev {
  margin-left: -31px;
}
.k-splitbar-vertical .k-collapse-next {
  margin-left: 11px;
}
.k-splitbar-draggable-vertical .k-resize-handle,
.k-splitbar-draggable-horizontal .k-resize-handle {
  display: inline-block;
}
.k-splitbar-horizontal .k-resize-handle {
  background-position: -165px -6px;
}
.k-splitbar-horizontal-hover > .k-resize-handle {
  background-position: -181px -6px;
}
.k-splitbar-horizontal .k-collapse-prev,
.k-splitbar-horizontal .k-expand-next {
  background-position: -6px -174px;
}
.k-splitbar-horizontal-hover > .k-collapse-prev,
.k-splitbar-horizontal-hover > .k-expand-next {
  background-position: -22px -174px;
}
.k-splitbar-horizontal .k-collapse-next,
.k-splitbar-horizontal .k-expand-prev {
  background-position: -5px -142px;
}
.k-splitbar-horizontal-hover > .k-collapse-next,
.k-splitbar-horizontal-hover > .k-expand-prev {
  background-position: -21px -142px;
}
.k-splitbar-vertical .k-resize-handle {
  background-position: -38px -309px;
}
.k-splitbar-vertical-hover > .k-resize-handle {
  background-position: -70px -309px;
}
.k-splitbar-vertical .k-collapse-prev,
.k-splitbar-vertical .k-expand-next {
  background-position: 2px -134px;
}
.k-splitbar-vertical-hover > .k-collapse-prev,
.k-splitbar-vertical-hover > .k-expand-next {
  background-position: -14px -134px;
}
.k-splitbar-vertical .k-collapse-next,
.k-splitbar-vertical .k-expand-prev {
  background-position: 2px -165px;
}
.k-splitbar-vertical-hover > .k-collapse-next,
.k-splitbar-vertical-hover > .k-expand-prev {
  background-position: -14px -165px;
}
.k-splitter-resizing {
  overflow: hidden;
}
/* Upload */
html .k-upload {
  position: relative;
}
.k-dropzone em,
.k-upload-button {
  vertical-align: middle;
}
.k-ie7 .k-dropzone em,
.k-ie7 .k-upload-button {
  vertical-align: baseline;
}
.k-dropzone,
.k-file {
  position: relative;
}
.k-dropzone {
  border-style: solid;
  border-width: 0;
  padding: .8em;
  background-color: transparent;
}
.k-dropzone em {
  visibility: hidden;
  margin-left: .6em;
}
.k-dropzone-active em {
  visibility: visible;
}
.k-upload-button {
  position: relative;
  min-width: 7.167em;
  overflow: hidden !important;
  /* important required by IE7 */
  direction: ltr;
}
.k-upload-sync .k-upload-button,
.k-ie7 .k-upload-button,
.k-ie8 .k-upload-button,
.k-ie9 .k-upload-button {
  margin: .8em;
}
.k-upload-button input {
  position: absolute;
  top: 0;
  right: 0;
  z-index: 1;
  font: 170px monospace !important;
  /* critical for correct operation; larger values lead to ignoring or text layout problems in IE */
  filter: alpha(opacity=0);
  opacity: 0;
  margin: 0;
  padding: 0;
  cursor: pointer;
}
.k-upload-files {
  margin: 0 0 .6em;
  line-height: 2.66;
  border-style: solid;
  border-width: 1px 0 0;
}
.k-upload-files .k-button {
  padding: 0;
}
.k-upload-files .k-button,
.k-upload-status-total .k-icon {
  margin-left: 8px;
}
.k-ie7 .k-upload-files .k-button {
  line-height: 1;
}
/*IE7*/
.k-upload .k-fail {
  background-position: -161px -111px;
}
.k-si-refresh {
  background-position: -160px -128px;
}
.k-link:not(.k-state-disabled):hover > .k-si-refresh,
.k-state-hover > .k-si-refresh,
.k-state-hover > * > .k-si-refresh,
.k-button:not(.k-state-disabled):hover .k-si-refresh,
.k-textbox:hover .k-si-refresh,
.k-button:active .k-si-refresh {
  background-position: -176px -128px;
}
.k-si-tick,
.k-success {
  background-position: -160px -96px;
}
.k-link:not(.k-state-disabled):hover > .k-si-tick,
.k-link:not(.k-state-disabled):hover > .k-success,
.k-state-hover > .k-si-tick,
.k-state-hover > .k-success,
.k-state-hover > * > .k-si-tick,
.k-state-hover > * > .k-success,
.k-button:not(.k-state-disabled):hover .k-si-tick,
.k-button:not(.k-state-disabled):hover .k-success,
.k-textbox:hover .k-si-tick,
.k-textbox:hover .k-success,
.k-button:active .k-si-tick,
.k-button:active .k-success {
  background-position: -176px -96px;
}
.k-si-cancel {
  background-position: -160px -112px;
}
.k-link:not(.k-state-disabled):hover > .k-si-cancel,
.k-state-hover > .k-si-cancel,
.k-state-hover > * > .k-si-cancel,
.k-button:not(.k-state-disabled):hover .k-si-cancel,
.k-textbox:hover .k-si-cancel,
.k-button:active .k-si-cancel {
  background-position: -176px -112px;
}
.k-file {
  border-style: solid;
  border-width: 0 0 1px;
  padding: .167em .167em .167em .8em;
}
.k-file .k-icon {
  position: relative;
}
.k-file > .k-icon {
  background-position: -112px -288px;
}
.k-link:not(.k-state-disabled):hover > .k-file > .k-icon,
.k-state-hover > .k-file > .k-icon,
.k-state-hover > * > .k-file > .k-icon,
.k-button:not(.k-state-disabled):hover .k-file > .k-icon,
.k-textbox:hover .k-file > .k-icon,
.k-button:active .k-file > .k-icon {
  background-position: -128px -288px;
}
.k-filename {
  position: relative;
  display: inline-block;
  min-width: 10em;
  max-width: 16.667em;
  vertical-align: middle;
  margin-left: 1em;
  padding-bottom: 0.167em;
  overflow: hidden;
  text-overflow: ellipsis;
  -o-text-overflow: ellipsis;
  white-space: nowrap;
}
.k-upload-status {
  position: absolute;
  right: 12px;
  top: .6em;
  line-height: .7em;
}
.k-upload-status .k-button,
.k-upload-status .k-warning {
  vertical-align: text-bottom;
}
.k-dropzone .k-upload-status {
  line-height: 2.4;
}
.k-upload-pct {
  line-height: 20px;
}
.k-ie8 .k-upload-status-total {
  line-height: 29px;
}
.k-progress {
  position: absolute;
  top: 0;
  bottom: 0;
  left: 0;
}
.k-upload-selected {
  min-width: 7.167em;
  margin: 0.25em 0 0;
  -webkit-box-sizing: content-box;
  -moz-box-sizing: content-box;
  box-sizing: content-box;
}
.k-ie7 .k-upload-selected {
  min-width: 100px;
}
.k-upload-selected,
.k-upload-cancel {
  margin-bottom: .8em;
}
.k-upload-selected {
  margin-left: .8em;
  margin-right: .2em;
}
/* ImageBrowser */
.k-toolbar-wrap .k-dropzone em,
.k-toolbar-wrap .k-upload-files {
  display: none;
}
.k-toolbar-wrap .k-dropzone {
  border: 0;
  padding: 0;
}
.k-toolbar-wrap .k-dropzone-active {
  text-align: center;
}
.k-toolbar-wrap .k-dropzone-active em {
  display: inline;
  margin: 0;
  font-size: 5em;
  font-style: normal;
}
.k-toolbar-wrap .k-dropzone-active .k-upload-button {
  display: none;
}
.k-filebrowser-dropzone {
  z-index: 10010;
  filter: alpha(opacity=40);
  opacity: .4;
  position: fixed;
}
.k-search-wrap {
  position: relative;
  float: right;
  width: 20%;
  padding: 0;
}
.k-search-wrap label {
  position: absolute;
  top: 0;
  left: 4px;
  line-height: 20px;
  font-style: italic;
}
.k-search-wrap input.k-input {
  padding-left: 0;
  padding-right: 0;
}
.k-search-wrap .k-search {
  position: absolute;
  top: 4px;
  right: 2px;
  margin: 0;
}
.k-breadcrumbs {
  position: relative;
  float: left;
  width: 79%;
}
.k-breadcrumbs-wrap {
  position: absolute;
  top: 3px;
  left: 0;
  z-index: 1;
  padding-left: 5px;
  line-height: 18px;
}
.k-breadcrumbs > .k-input {
  width: 100%;
  font-size: inherit;
  font-family: inherit;
  border: 0;
}
.k-breadcrumbs .k-link,
.k-breadcrumbs-wrap .k-icon {
  margin-top: 0;
  text-decoration: none;
  vertical-align: middle;
  position: static;
}
.k-breadcrumbs .k-link:hover {
  text-decoration: underline;
}
.k-filebrowser .k-breadcrumbs .k-i-seek-w {
  text-decoration: none;
  cursor: default;
}
.k-filebrowser .k-filebrowser-toolbar {
  border-style: solid;
  border-width: 1px;
  margin: 8px 0 0;
  padding: .25em;
  line-height: 23px;
  white-space: nowrap;
  /*required by WebKit*/
}
.k-filebrowser .k-filebrowser-toolbar .k-button.k-state-disabled {
  display: none;
}
.k-filebrowser .k-toolbar-wrap {
  float: left;
}
.k-filebrowser .k-tiles-arrange {
  float: right;
}
.k-filebrowser .k-tiles-arrange .k-dropdown {
  width: 75px;
}
.k-filebrowser .k-upload {
  float: left;
  z-index: 10010;
  border-width: 0;
  background-color: transparent;
}
.k-filebrowser .k-upload .k-upload-status {
  display: none;
}
.k-filebrowser .k-upload .k-upload-button {
  width: auto;
  margin-left: 0;
  vertical-align: top;
}
.k-filebrowser .k-upload .k-icon {
  vertical-align: bottom;
}
.k-ie7 .k-filebrowser .k-upload-button,
.k-ie7 .k-filebrowser .k-upload .k-icon {
  vertical-align: baseline;
  position: relative;
  top: 1px;
}
.k-ie7 .k-filebrowser .k-upload .k-icon {
  top: 2px;
}
.k-ie7 .k-filebrowser .k-filebrowser-toolbar .k-button-icon {
  vertical-align: middle;
}
.k-tiles {
  clear: both;
  height: 390px;
  border-style: solid;
  border-width: 1px;
  border-top-width: 0;
  margin: 0 0 1.4em;
  padding: 9px;
  overflow: auto;
  line-height: 1.2;
}
.k-tile {
  float: left;
  width: 223px;
  height: 88px;
  overflow: hidden;
  border-style: solid;
  border-width: 1px;
  margin: 1px;
  padding: 0 0 4px;
  background-position: 0 100px;
  background-repeat: repeat-x;
  cursor: pointer;
}
.k-tiles li.k-state-hover,
.k-tiles li.k-state-selected {
  background-position: 0 center;
}
.k-filebrowser .k-thumb {
  float: left;
  display: inline;
  width: 80px;
  height: 80px;
  margin: 4px 10px 0 4px;
  -khtml-user-select: none;
  -webkit-user-select: none;
  -moz-user-select: -moz-none;
  -ms-user-select: none;
  user-select: none;
}
.k-filebrowser .k-file {
  width: 80px;
  height: 80px;
}
.k-filebrowser .k-image {
  margin: 2px 0 0 2px;
}
.k-filebrowser .k-folder {
  width: 80px;
  height: 80px;
  background-position: 0 -200px;
  background-repeat: no-repeat;
}
.k-filebrowser .k-loading {
  margin: 35px 0 0 33px;
}
.k-tile strong,
.k-tile input {
  margin: 10px 0 4px;
  font-weight: normal;
}
.k-tile strong {
  float: left;
  width: 120px;
  overflow: hidden;
  text-overflow: ellipsis;
}
.k-tile input {
  width: 100px;
}
.k-tile strong,
.k-tile input,
.k-tile .k-filesize {
  display: block;
}
.k-filebrowser .k-form-text-row {
  text-align: right;
}
.k-filebrowser .k-form-text-row label {
  width: 14%;
}
.k-filebrowser .k-form-text-row input {
  width: 80%;
}
.k-tile-empty {
  margin: 160px 0 0;
}
.k-tile-empty .k-dialog-upload {
  font-weight: bold;
  font-size: 120%;
}
.k-tile-empty strong {
  display: block;
  margin: 0 0 0.2em;
  font-size: 3em;
  font-weight: normal;
}
.k-tile-empty,
.k-tile-empty .k-button-wrapper {
  text-align: center;
}
.k-chart,
.k-gauge,
.k-sparkline,
.k-stockchart {
  -webkit-touch-callout: none;
  -webkit-tap-highlight-color: rgba(0, 0, 0, 0);
}
.k-chart,
.k-stockchart {
  height: 400px;
}
div.k-chart,
div.k-gauge,
span.k-sparkline,
.k-stockchart {
  background-color: transparent;
}
.k-gauge {
  text-align: left;
  position: relative;
}
.k-baseline-marker {
  zoom: 1;
  *display: inline;
}
.k-chart-tooltip {
  -moz-border-radius: 4px;
  -webkit-border-radius: 4px;
  border-radius: 4px;
  padding: 6px;
  white-space: nowrap;
  z-index: 12000;
  line-height: normal;
  background-repeat: repeat-x;
  background-position: 0 0;
  background-image: url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABQAAAAWCAYAAADAQbwGAAAAGXRFWHRTb2Z0d2FyZQBBZG9iZSBJbWFnZVJlYWR5ccllPAAAADNJREFUeNpi/P//vwMDFQELEP8beQb+HTWQYgP/DHoD/466cAR4edRAyg38P6hLbIAAAwCnWhhVsxvdCAAAAABJRU5ErkJggg==);
  color: #fff;
}
.k-chart-tooltip-inverse {
  color: #000;
}
.k-chart-tooltip table {
  border-spacing: 0;
  border-collapse: collapse;
}
.k-chart-tooltip th {
  width: auto;
  text-align: center;
  padding: 1px;
}
.k-chart-tooltip td {
  width: auto;
  text-align: left;
  padding: .1em .2em;
}
/*Stock Charts*/
/* Selection */
.k-selector {
  position: absolute;
  -webkit-transform: translateZ(0);
}
.k-selection {
  position: absolute;
  border-width: 1px;
  border-style: solid;
  border-color: #d2d2d2;
  border-bottom: 0;
  height: 100%;
}
.k-selection-bg {
  position: absolute;
  width: 100%;
  height: 100%;
  background-color: #fff;
  background-color: rgba(255, 255, 255, 0.01);
  filter: alpha(opacity=1);
}
.k-handle {
  background: #d2d2d2;
  width: 7px;
  height: 26px;
  cursor: e-resize;
  z-index: 1;
  -moz-border-radius: 6px;
  -webkit-border-radius: 6px;
  border-radius: 6px;
  position: absolute;
}
.k-handle div {
  width: 100%;
  height: 100%;
  background-color: transparent;
}
.k-leftHandle {
  left: -4px;
}
.k-rightHandle {
  right: -4px;
}
.k-leftHandle div {
  margin: -20px 0 0 -15px;
  padding: 40px 30px 0 0;
}
.k-rightHandle div {
  margin: -20px 0 0 -15px;
  padding: 40px 0 0 30px;
}
.k-mask {
  position: absolute;
  height: 100%;
  background-color: #fff;
  filter: alpha(opacity=80);
  -moz-opacity: 0.80;
  opacity: 0.80;
}
.k-border {
  background: #d2d2d2;
  width: 1px;
  height: 100%;
  position: absolute;
}
/* Navigator hint */
.k-navigator-hint div {
  position: absolute;
}
.k-navigator-hint .k-scroll {
  position: absolute;
  height: 4px;
  -moz-border-radius: 4px;
  -webkit-border-radius: 4px;
  border-radius: 4px;
  background: #d2d2d2;
}
.k-navigator-hint .k-tooltip {
  margin-top: 20px;
  min-width: 160px;
  opacity: 1;
  text-align: center;
  border: 0;
  box-shadow: 0 1px 2px rgba(0, 0, 0, 0.5);
  background: #fff;
}
/* Sparklines */
.k-sparkline,
.k-sparkline span {
  display: inline-block;
  *display: inline;
  zoom: 1;
  vertical-align: top;
}
.k-sparkline span {
  height: 100%;
  width: 100%;
}
/* Map */
.k-map,
.k-diagram {
  height: 600px;
}
.k-map .km-scroll-wrapper,
.k-diagram .km-scroll-wrapper {
  padding-bottom: 0;
  -moz-user-select: none;
  -webkit-user-select: none;
  -ms-user-select: none;
}
.k-map .km-scroll-wrapper,
.k-diagram .km-scroll-wrapper,
.k-map .km-scroll-container,
.k-diagram .km-scroll-container {
  position: absolute;
  width: 100%;
  height: 100%;
}
.k-map .k-layer,
.k-diagram .k-layer {
  position: absolute;
  left: 0;
  top: 0;
}
.k-map .km-touch-scrollbar,
.k-diagram .km-touch-scrollbar {
  display: none;
}
.k-map .k-marker {
  position: absolute;
  width: 28px;
  height: 40px;
  margin: -40px 0 0 -14px;
  cursor: pointer;
}
.k-map .k-marker-pin {
  background-position: 0px 40px;
}
.k-map .k-marker-pin-target {
  background-position: 0px 0px;
}
@media only screen and (-webkit-min-device-pixel-ratio: 2), only screen and (min-device-pixel-ratio: 2) {
  .k-map .k-marker {
    width: 56px;
    height: 80px;
    margin: -80px 0 0 -28px;
  }
  .k-map .k-marker-pin {
    background-position: 0px 80px;
  }
}
/* Control positions */
.k-map .k-pos-top {
  top: 0;
}
.k-map .k-pos-bottom {
  bottom: 0;
}
.k-map .k-pos-left {
  left: 0;
}
.k-map .k-pos-right {
  right: 0;
}
.k-map-controls {
  position: absolute;
}
.k-map-controls.k-pos-left .k-widget:first-child {
  margin-right: 0;
}
.k-map-controls.k-pos-right .k-widget:first-child {
  margin-left: 0;
}
/* Map navigator */
.k-navigator {
  width: 50px;
  height: 50px;
  margin: 20px;
  border-radius: 80px;
  position: relative;
  display: inline-block;
  vertical-align: middle;
}
.k-ie7 .k-navigator {
  zoom: 1;
  display: inline;
}
.k-pdf-export .k-navigator {
  display: none;
}
.k-navigator > button {
  border-color: transparent;
  background: none;
}
.k-ie7 .k-navigator > button {
  border-width: 0;
  display: block;
}
.k-ie7 .k-navigator > button > span {
  vertical-align: top;
  display: block;
}
div.k-navigator > .k-button {
  margin: 0;
  padding: 0;
  line-height: 10px;
  border-radius: 16px;
  position: absolute;
  font-size: 1px;
  /*IE7*/
  line-height: 1px;
}
div.k-navigator .k-navigator-n {
  top: 2px;
  left: 50%;
  margin-left: -9px;
}
div.k-navigator .k-navigator-e {
  right: 2px;
  top: 50%;
  margin-top: -9px;
}
div.k-navigator .k-navigator-s {
  bottom: 2px;
  left: 50%;
  margin-left: -9px;
}
div.k-navigator .k-navigator-w {
  left: 2px;
  top: 50%;
  margin-top: -9px;
}
.k-ie7 div.k-navigator .k-navigator-n,
.k-ie7 div.k-navigator .k-navigator-s {
  margin-left: -8px;
}
.k-ie7 div.k-navigator .k-navigator-w,
.k-ie7 div.k-navigator .k-navigator-e {
  margin-top: -8px;
}
/* Attribution */
.k-map .k-attribution {
  background-color: rgba(255, 255, 255, 0.8);
  font-size: 10px;
  padding: 2px 4px;
  z-index: 1000;
}
/* Zoom */
.k-zoom-control {
  margin: 14px;
  vertical-align: middle;
}
.k-pdf-export .k-zoom-control {
  display: none;
}
.k-button-wrap {
  border-radius: 4px;
  display: inline-block;
}
.k-ie7 .k-button-wrap {
  zoom: 1;
  display: inline;
}
.k-button-wrap .k-button {
  position: relative;
  font: bold 17px/1.18 monospace;
}
.k-ie7 .k-button-wrap .k-button {
  margin: 0;
}
.k-buttons-horizontal :first-child {
  border-radius: 4px 0 0 4px;
}
.k-buttons-horizontal :first-child + .k-zoom-in {
  border-radius: 0;
  margin-left: -1px;
}
.k-buttons-horizontal .k-zoom-out {
  border-radius: 0 4px 4px 0;
  margin-left: -1px;
}
.k-button-wrap .k-button:hover {
  z-index: 1;
}
.k-buttons-vertical .k-button {
  display: block;
}
.k-buttons-vertical :first-child {
  border-radius: 4px 4px 0 0;
}
.k-buttons-vertical .k-zoom-out {
  border-radius: 0 0 4px 4px;
  margin-top: -1px;
}
.k-zoom-text {
  margin: 0;
  width: 4.3em;
  vertical-align: top;
}
/* RTL */
.k-rtl .k-buttons-horizontal :first-child {
  border-radius: 0 4px 4px 0;
}
.k-rtl .k-buttons-horizontal :first-child + .k-zoom-in {
  border-radius: 0;
  margin-left: 0;
  margin-right: -1px;
}
.k-rtl .k-buttons-horizontal .k-zoom-out {
  border-radius: 4px 0 0 4px;
  margin-left: 0;
  margin-right: -1px;
}
/* Diagram */
.k-diagram {
  height: 600px;
}
.k-diagram .km-scroll-wrapper {
  width: 100%;
  height: 100%;
  position: relative;
}
.k-diagram .km-scroll-wrapper {
  width: 100%;
  height: 100%;
  position: relative;
}
.k-canvas-container {
  width: 100%;
  height: 100%;
}
/* IE8- */
.k-diagram img {
  box-sizing: content-box;
}
/* TreeMap start */
.k-treemap {
  overflow: hidden;
  height: 400px;
}
.k-treemap-tile {
  box-sizing: border-box;
  border-style: solid;
  border-width: 1px;
  position: absolute;
  margin: -1px 0 0 -1px;
  overflow: hidden;
}
.k-treemap-tile.k-leaf {
  padding: .6em;
}
.k-treemap-wrap.k-last > .k-treemap-tile {
  padding: .3em;
}
.k-treemap-tile.k-state-hover {
  z-index: 2;
  background-image: none;
}
/* ie7 - start */
.k-ie7 .k-treemap .k-treemap-tile {
  border-width: 0;
  padding: 0;
}
.k-ie7 .k-treemap .k-leaf > div {
  padding: 7px;
}
.k-ie7 .k-treemap .k-leaf.k-state-hover {
  border-width: 1px;
}
.k-ie7 .k-treemap .k-leaf.k-state-hover > div {
  padding: 6px;
}
/* ie7 - end */
.k-treemap > .k-treemap-tile {
  position: relative;
  height: 100%;
}
.k-treemap-title {
  box-sizing: border-box;
  overflow: hidden;
  text-overflow: ellipsis;
  line-height: 2.42em;
  height: 2.42em;
  padding: 0 .6em;
  white-space: nowrap;
}
.k-treemap-wrap .k-treemap-title {
  border-width: 0 0 1px;
  border-style: solid;
}
.k-treemap-wrap {
  position: absolute;
  top: 0;
  left: 0;
  bottom: 0;
  right: 0;
}
.k-treemap-title + .k-treemap-wrap {
  top: 2.42em;
}
.k-treemap-title-vertical {
  box-sizing: border-box;
  text-overflow: ellipsis;
  position: absolute;
  top: 0;
  bottom: 0;
  width: 2.42em;
  line-height: 2.42em;
  overflow: hidden;
  padding: .6em 0;
  white-space: nowrap;
}
.k-treemap-title-vertical > div {
  position: absolute;
  top: 0;
  right: 1.23em;
  transform-origin: right;
  -webkit-transform-origin: right;
  -webkit-transform: rotate(-90deg);
  transform: rotate(-90deg);
}
.k-treemap-title-vertical + .k-treemap-wrap {
  left: 2.42em;
}
/* TreeMap end */
/* IE7 inline-block behavior */
.k-ie7 .k-button,
.k-ie7 .k-grid-filter,
.k-ie7 .k-header-column-menu,
.k-ie7 .k-grid .k-pager-numbers,
.k-ie7 .k-grid .k-status-text,
.k-ie7 .k-pager-numbers .k-link,
.k-ie7 .k-pager-numbers span,
.k-ie7 .k-pager-numbers input,
.k-ie7 .k-grouping-row p,
.k-ie7 .k-grouping-header a,
.k-ie7 .k-grouping-header .k-group-indicator,
.k-ie7 .k-grouping-header .k-link,
.k-ie7 .k-grouping-header .k-button,
.k-ie7 .k-grid-actions,
.k-ie7 .k-edit-label,
.k-ie7 .k-edit-field,
.k-ie7 .k-edit-form-container .editor-label,
.k-ie7 .k-edit-form-container .editor-field,
.k-ie7 .k-combobox,
.k-ie7 .k-dropdown,
.k-ie7 .k-selectbox,
.k-ie7 .k-picker-wrap .k-select,
.k-ie7 .k-dropdown-wrap .k-select,
.k-ie7 .k-numerictextbox,
.k-ie7 .k-timepicker,
.k-ie7 .k-datepicker,
.k-ie7 .k-datetimepicker,
.k-ie7 .k-colorpicker,
.k-ie7 .k-calendar,
.k-ie7 .k-calendar .k-nav-fast,
.k-ie7 .k-treeview .k-icon,
.k-ie7 .k-treeview .k-image,
.k-ie7 .k-treeview .k-sprite,
.k-ie7 .k-treeview .k-in,
.k-ie7 .k-colorpicker,
.k-ie7 .k-colorpicker .k-tool-icon,
.k-ie7 .k-palette.k-reset,
.k-ie7 .k-editor-dialog .k-button,
.k-ie7 .k-form-text-row label,
.k-ie7 .k-tabstrip-items .k-item,
.k-ie7 .k-tabstrip-items .k-link,
.k-ie7 .k-slider-horizontal,
.k-ie7 .k-splitbar-draggable-vertical .k-resize-handle,
.k-ie7 .k-splitbar-draggable-horizontal .k-resize-handle,
.k-ie7 .t-filename,
.k-ie7 div.k-window,
.k-ie7 .k-window-titlebar .k-window-action,
.k-ie7 .k-scheduler-toolbar > ul > li,
.k-ie7 .k-scheduler-footer > ul > li,
.k-ie7 .k-scheduler-toolbar > ul > li,
.k-ie7 .k-scheduler-footer > ul > li,
.k-ie7 .k-event:hover .k-event-delete,
.k-ie7 tr:hover > td > .k-task .k-event-delete,
.k-ie7 .k-progressbar,
.k-ie7 .k-progressbar-horizontal .k-item,
.k-ie7 .k-progress-status,
.k-ie7 .k-grid-header-locked,
.k-ie7 .k-grid-content-locked,
.k-ie7 .k-grid-header-locked + .k-grid-header-wrap,
.k-ie7 .k-grid-content-locked + .k-grid-content,
.k-ie7 .k-grid-footer-locked,
.k-ie7 .k-gantt-layout,
.k-ie7 .k-gantt-toolbar > ul > li,
.k-ie7 .k-gantt-toolbar .k-link,
.k-ie7 .k-task-summary,
.k-ie7 .k-task-actions:first-child > .k-link,
.k-ie7 .k-task-wrap:hover .k-task-delete,
.k-ie7 .k-task-wrap-active .k-task-delete {
  display: inline;
  zoom: 1;
}
.k-ie7 .k-treeview .k-item,
.k-ie7 .k-treeview .k-group {
  zoom: 1;
}
.k-ie7 .k-edit-field > .k-textbox {
  text-indent: 0;
}
/* common mobile css */
.km-root,
.km-pane,
.km-pane-wrapper {
  width: 100%;
  height: 100%;
  -ms-touch-action: none;
  -ms-content-zooming: none;
  -ms-user-select: none;
  -webkit-user-select: none;
  -webkit-text-size-adjust: none;
  -moz-text-size-adjust: none;
  text-size-adjust: none;
}
.km-pane-wrapper {
  position: absolute;
  width: 100%;
  height: 100%;
}
.km-pane,
.km-shim {
  font-family: sans-serif;
}
.km-pane {
  overflow-x: hidden;
}
.km-view {
  top: 0;
  left: 0;
  position: absolute;
  display: -moz-box;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  height: 100%;
  width: 100%;
  -moz-box-orient: vertical;
  -webkit-box-orient: vertical;
  -ms-box-orient: vertical;
  box-orient: vertical;
  -webkit-flex-direction: column;
  -ms-flex-direction: column;
  flex-direction: column;
  -webkit-align-items: stretch;
  align-items: stretch;
  -webkit-align-content: stretch;
  align-content: stretch;
  vertical-align: top;
}
.k-ff .km-view,
.k-ff .km-pane {
  overflow: hidden;
}
.k-ff18 .km-view,
.k-ff18 .km-pane,
.k-ff19 .km-view,
.k-ff19 .km-pane,
.k-ff20 .km-view,
.k-ff20 .km-pane,
.k-ff21 .km-view,
.k-ff21 .km-pane {
  position: relative;
}
.k-ff .km-view {
  display: -moz-inline-box;
  display: flex;
}
.km-content {
  min-height: 1px;
  -moz-box-flex: 1;
  -webkit-box-flex: 1;
  -webkit-flex: 1;
  -ms-flex: 1;
  flex: 1;
  -moz-box-align: stretch;
  -webkit-box-align: stretch;
  -ms-flex-align: stretch;
  flex-align: stretch;
  display: block;
  width: auto;
  overflow: hidden;
  position: relative;
}
.km-actionsheet > li {
  list-style-type: none;
  padding: inherit 1em;
  line-height: 2em;
}
.km-actionsheet {
  padding: 0;
  margin: 0;
}
.km-shim {
  left: 0;
  bottom: 0;
  position: fixed;
  width: 100%;
  height: 100%;
  background: rgba(0, 0, 0, 0.6);
  z-index: 10001;
}
.km-shim .k-animation-container,
.km-actionsheet-wrapper {
  width: 100%;
  -webkit-box-shadow: none;
  box-shadow: none;
  border: 0;
}
.km-shim .k-animation-container {
  width: auto;
}
/* /common mobile css */
.km-pane-wrapper .k-grid-edit-form > .km-header,
.km-pane-wrapper .k-grid-column-menu > .km-header,
.km-pane-wrapper .k-grid-filter-menu > .km-header,
.km-pane-wrapper .k-scheduler-edit-form > .km-header {
  border-style: solid;
  border-width: 1px;
  padding: .3em .6em;
  text-align: center;
  width: auto;
  line-height: 2em;
}
.k-ie .km-pane-wrapper .k-scheduler > .k-scheduler-toolbar,
.k-ie .km-pane-wrapper .k-scheduler > .k-scheduler-footer {
  line-height: 2em;
}
.km-pane-wrapper .k-grid-edit-form .k-multiselect,
.km-pane-wrapper .k-scheduler-edit-form .k-multiselect {
  width: 15em;
}
.km-pane-wrapper .k-grid-edit-form .k-dropdown-wrap,
.km-pane-wrapper .k-scheduler-edit-form .k-dropdown-wrap {
  display: block;
}
.km-pane-wrapper .k-grid-column-menu .k-done,
.km-pane-wrapper .k-grid-filter-menu .k-submit,
.km-pane-wrapper .k-grid-edit-form .k-grid-update,
.km-pane-wrapper .k-scheduler-edit-form .k-scheduler-update {
  float: right;
}
.km-pane-wrapper .k-grid-filter-menu .k-cancel,
.km-pane-wrapper .k-grid-edit-form .k-grid-cancel,
.km-pane-wrapper .k-scheduler-edit-form .k-scheduler-cancel {
  float: left;
}
/* Actiosheet Styles */
.km-pane-wrapper .k-scheduler-edit-form .k-scheduler-delete,
*:not(.km-pane) > .km-shim .km-actionsheet .k-button {
  display: block;
  text-align: center;
}
*:not(.km-pane) > .km-shim .km-actionsheet .k-button {
  font-size: 1.4em;
  margin: .3em 1em;
}
*:not(.km-pane) > .km-shim .km-actionsheet-title {
  text-align: center;
  line-height: 3em;
  margin-bottom: -0.3em;
}
*:not(.km-pane) > .km-shim > .k-animation-container {
  margin: 0 !important;
  padding: 0 !important;
  left: 0 !important;
}
/* Adaptive Grid */
.km-pane-wrapper > div.km-pane {
  -webkit-box-shadow: none;
  box-shadow: none;
  font-weight: normal;
}
.km-pane-wrapper .k-popup-edit-form .km-content > .km-scroll-container,
.km-pane-wrapper .k-grid-edit-form .km-content > .km-scroll-container,
.km-pane-wrapper .k-grid-column-menu .km-content > .km-scroll-container,
.km-pane-wrapper .k-grid-filter-menu .km-content > .km-scroll-container {
  position: absolute;
  width: 100%;
  min-height: 100%;
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  box-sizing: border-box;
}
.km-pane-wrapper .k-mobile-list .k-edit-field {
  width: 74%;
}
.km-pane-wrapper .k-grid-edit-form .k-popup-edit-form,
.km-pane-wrapper .k-grid-edit-form .k-edit-form-container {
  width: auto;
}
.km-pane-wrapper .k-filter-menu .k-button {
  width: 100%;
  margin: 0;
}
.k-grid-mobile {
  border-width: 0;
}
.k-grid-mobile .k-resize-handle-inner {
  position: absolute;
  top: 50%;
  margin-top: -10px;
  left: -7px;
  width: 17px;
  height: 17px;
  border-style: solid;
  border-width: 2px;
  border-radius: 10px;
}
.k-grid-mobile .k-resize-handle-inner:before {
  content: "";
  position: absolute;
  top: 50%;
  margin-top: -3px;
  left: 1px;
  width: 6px;
  height: 6px;
  background-position: -5px -53px;
}
.k-grid-mobile .k-resize-handle-inner:after {
  content: "";
  position: absolute;
  top: 50%;
  margin-top: -3px;
  right: 1px;
  width: 6px;
  height: 6px;
  background-position: -5px -21px;
}
/* Adaptive Grid & Scheduler */
.km-pane-wrapper .km-pane * {
  -webkit-background-clip: border-box;
  background-clip: border-box;
}
.km-pane-wrapper .km-pane .k-mobile-list,
.km-pane-wrapper .k-mobile-list ul {
  padding: 0;
  margin: 0;
  list-style-type: none;
  border-radius: 0;
  background: none;
}
.km-pane-wrapper .km-switch {
  top: 50%;
  right: .8rem;
  position: absolute;
  margin-top: -1.1rem;
}
.km-pane-wrapper .k-mobile-list .k-state-disabled {
  opacity: 1;
}
.km-pane-wrapper .k-mobile-list .k-state-disabled > * {
  opacity: .7;
}
.km-pane-wrapper .k-mobile-list .k-item,
.km-pane-wrapper .k-mobile-list .k-item > .k-link,
.km-pane-wrapper .k-mobile-list .k-item > .k-label,
.km-pane-wrapper .k-mobile-list .k-edit-label {
  display: block;
  position: relative;
  list-style-type: none;
  vertical-align: middle;
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  box-sizing: border-box;
  padding: .5em 0 .5em 1em;
  font-size: 1em;
}
.km-pane-wrapper .k-edit-form-container,
.km-pane-wrapper .k-scheduler-edit-form .km-scroll-container {
  padding-top: 1em;
  width: 100%;
}
.km-pane-wrapper .k-mobile-list .k-edit-label {
  position: absolute;
  margin: 0;
  float: none;
  clear: none;
  width: 100%;
}
.km-pane-wrapper .k-mobile-list .k-edit-field,
.km-pane-wrapper .k-mobile-list .k-edit-label label {
  display: block;
  text-align: left;
  overflow: hidden;
  text-overflow: ellipsis;
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  box-sizing: border-box;
  padding: .1em 0;
  margin: 0;
}
.km-pane-wrapper .k-mobile-list .k-item,
.km-pane-wrapper .k-mobile-list .k-edit-field,
.km-pane-wrapper .k-mobile-list .k-edit-label {
  font-size: 1em;
  line-height: 1.6em;
  overflow: hidden;
}
.km-pane-wrapper .k-mobile-list .k-edit-field,
.km-pane-wrapper .k-mobile-list .k-edit-label {
  width: 100%;
  float: none;
  clear: none;
  min-height: 2.7em;
}
.km-pane-wrapper .km-header .k-icon,
.km-pane-wrapper .k-grid-toolbar .k-icon,
.km-pane-wrapper .k-grid-edit .k-icon,
.km-pane-wrapper .k-grid-delete .k-icon {
  display: none;
}
.km-pane-wrapper .k-mobile-list .k-edit-field {
  padding: .5em 0;
}
.km-pane-wrapper .k-mobile-list .k-scheduler-toolbar {
  padding: .3em 0;
}
.km-pane-wrapper .k-mobile-list .k-scheduler-toolbar ul li {
  line-height: 2em;
}
.km-pane-wrapper .k-mobile-list .k-item > * {
  line-height: normal;
}
.km-pane-wrapper .k-mobile-list .k-edit-buttons,
.km-pane-wrapper .k-mobile-list .k-button-container {
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  box-sizing: border-box;
  padding: .5em 1em;
  margin: 0;
}
.km-pane-wrapper .k-mobile-list > ul > li > .k-link,
.km-pane-wrapper .k-mobile-list .k-filter-help-text > li > .k-link,
.km-pane-wrapper .k-mobile-list .k-recur-view > .k-edit-label:nth-child(3),
.km-pane-wrapper #recurrence .km-scroll-container > .k-edit-label:first-child {
  display: block;
  padding: .2em 1em;
  font-size: .95em;
  position: -webkit-sticky;
  margin: 0;
  font-weight: normal;
  line-height: 2em;
  background: transparent;
  border-top: 1em solid transparent;
}
.km-pane-wrapper .k-mobile-list .k-recur-view > .k-edit-label:nth-child(3),
.km-pane-wrapper #recurrence .km-scroll-container > .k-edit-label:first-child {
  position: relative;
}
.km-pane-wrapper .k-mobile-list .k-item:first-child {
  border-top: 0;
}
.km-pane-wrapper .k-mobile-list .k-item:last-child {
  border-bottom: 0;
}
.km-pane-wrapper .k-mobile-list .k-item > .k-link,
.km-pane-wrapper .k-mobile-list .k-item > .k-label {
  line-height: inherit;
  text-decoration: none;
  margin: -0.5em 0 -0.5em -1em;
}
/* Mobile list form elements */
.k-check[type=checkbox],
.k-check[type=radio],
.k-mobile-list .k-edit-field [type=checkbox],
.k-mobile-list .k-edit-field [type=radio] {
  appearance: none;
  -moz-appearance: none;
  -webkit-appearance: none;
  background-color: transparent;
}
.km-pane-wrapper .k-mobile-list .k-link .k-check,
.km-pane-wrapper .k-mobile-list .k-label .k-check,
.k-mobile-list .k-edit-field [type=checkbox],
.k-mobile-list .k-edit-field [type=radio] {
  border: 0;
  font-size: inherit;
  width: 13px;
  height: 13px;
  margin: .26em 1em .26em 0;
}
.k-ie .km-pane-wrapper .k-icon,
.k-ie .km-pane-wrapper .k-mobile-list .k-link .k-check,
.k-ie .km-pane-wrapper .k-mobile-list .k-label .k-check,
.k-ie .k-mobile-list .k-edit-field [type=checkbox],
.k-ie .k-mobile-list .k-edit-field [type=radio] {
  font-size: inherit;
  text-indent: -9999px;
  width: 1.01em;
  height: 1em;
}
/* IE Adaptive icons in em */
@media screen and (-ms-high-contrast: active) and (-ms-high-contrast: none) {
  .km-pane-wrapper .k-numerictextbox .k-select .k-link span.k-i-arrow-n {
    background-position: 0em 0em;
  }
  .k-link:not(.k-state-disabled):hover > .km-pane-wrapper .k-numerictextbox .k-select .k-link span.k-i-arrow-n,
  .k-state-hover > .km-pane-wrapper .k-numerictextbox .k-select .k-link span.k-i-arrow-n,
  .k-state-hover > * > .km-pane-wrapper .k-numerictextbox .k-select .k-link span.k-i-arrow-n,
  .k-button:not(.k-state-disabled):hover .km-pane-wrapper .k-numerictextbox .k-select .k-link span.k-i-arrow-n,
  .k-textbox:hover .km-pane-wrapper .k-numerictextbox .k-select .k-link span.k-i-arrow-n,
  .k-button:active .km-pane-wrapper .k-numerictextbox .k-select .k-link span.k-i-arrow-n {
    background-position: -1em 0em;
  }
  .km-pane-wrapper .k-numerictextbox .k-select .k-link span.k-i-arrow-s {
    background-position: 0em -2em;
  }
  .k-link:not(.k-state-disabled):hover > .km-pane-wrapper .k-numerictextbox .k-select .k-link span.k-i-arrow-s,
  .k-state-hover > .km-pane-wrapper .k-numerictextbox .k-select .k-link span.k-i-arrow-s,
  .k-state-hover > * > .km-pane-wrapper .k-numerictextbox .k-select .k-link span.k-i-arrow-s,
  .k-button:not(.k-state-disabled):hover .km-pane-wrapper .k-numerictextbox .k-select .k-link span.k-i-arrow-s,
  .k-textbox:hover .km-pane-wrapper .k-numerictextbox .k-select .k-link span.k-i-arrow-s,
  .k-button:active .km-pane-wrapper .k-numerictextbox .k-select .k-link span.k-i-arrow-s {
    background-position: -1em -2em;
  }
  .km-pane-wrapper .k-state-selected .k-i-arrow-n {
    background-position: -1em 0em;
  }
  .k-link:not(.k-state-disabled):hover > .km-pane-wrapper .k-state-selected .k-i-arrow-n,
  .k-state-hover > .km-pane-wrapper .k-state-selected .k-i-arrow-n,
  .k-state-hover > * > .km-pane-wrapper .k-state-selected .k-i-arrow-n,
  .k-button:not(.k-state-disabled):hover .km-pane-wrapper .k-state-selected .k-i-arrow-n,
  .k-textbox:hover .km-pane-wrapper .k-state-selected .k-i-arrow-n,
  .k-button:active .km-pane-wrapper .k-state-selected .k-i-arrow-n {
    background-position: -2em 0em;
  }
  .km-pane-wrapper .k-numerictextbox .k-link.k-state-selected span.k-i-arrow-n,
  .km-pane-wrapper .k-numerictextbox .k-state-hover .k-link span.k-i-arrow-n {
    background-position: -1em 0em;
  }
  .k-link:not(.k-state-disabled):hover > .km-pane-wrapper .k-numerictextbox .k-link.k-state-selected span.k-i-arrow-n,
  .k-link:not(.k-state-disabled):hover > .km-pane-wrapper .k-numerictextbox .k-state-hover .k-link span.k-i-arrow-n,
  .k-state-hover > .km-pane-wrapper .k-numerictextbox .k-link.k-state-selected span.k-i-arrow-n,
  .k-state-hover > .km-pane-wrapper .k-numerictextbox .k-state-hover .k-link span.k-i-arrow-n,
  .k-state-hover > * > .km-pane-wrapper .k-numerictextbox .k-link.k-state-selected span.k-i-arrow-n,
  .k-state-hover > * > .km-pane-wrapper .k-numerictextbox .k-state-hover .k-link span.k-i-arrow-n,
  .k-button:not(.k-state-disabled):hover .km-pane-wrapper .k-numerictextbox .k-link.k-state-selected span.k-i-arrow-n,
  .k-button:not(.k-state-disabled):hover .km-pane-wrapper .k-numerictextbox .k-state-hover .k-link span.k-i-arrow-n,
  .k-textbox:hover .km-pane-wrapper .k-numerictextbox .k-link.k-state-selected span.k-i-arrow-n,
  .k-textbox:hover .km-pane-wrapper .k-numerictextbox .k-state-hover .k-link span.k-i-arrow-n,
  .k-button:active .km-pane-wrapper .k-numerictextbox .k-link.k-state-selected span.k-i-arrow-n,
  .k-button:active .km-pane-wrapper .k-numerictextbox .k-state-hover .k-link span.k-i-arrow-n {
    background-position: -2em 0em;
  }
  .km-pane-wrapper .k-state-selected .k-i-arrow-s {
    background-position: -1em -2em;
  }
  .k-link:not(.k-state-disabled):hover > .km-pane-wrapper .k-state-selected .k-i-arrow-s,
  .k-state-hover > .km-pane-wrapper .k-state-selected .k-i-arrow-s,
  .k-state-hover > * > .km-pane-wrapper .k-state-selected .k-i-arrow-s,
  .k-button:not(.k-state-disabled):hover .km-pane-wrapper .k-state-selected .k-i-arrow-s,
  .k-textbox:hover .km-pane-wrapper .k-state-selected .k-i-arrow-s,
  .k-button:active .km-pane-wrapper .k-state-selected .k-i-arrow-s {
    background-position: -2em -2em;
  }
  .km-pane-wrapper .k-numerictextbox .k-link.k-state-selected span.k-i-arrow-s,
  .km-pane-wrapper .k-numerictextbox .k-state-hover .k-link span.k-i-arrow-s {
    background-position: -1em -2em;
  }
  .k-link:not(.k-state-disabled):hover > .km-pane-wrapper .k-numerictextbox .k-link.k-state-selected span.k-i-arrow-s,
  .k-link:not(.k-state-disabled):hover > .km-pane-wrapper .k-numerictextbox .k-state-hover .k-link span.k-i-arrow-s,
  .k-state-hover > .km-pane-wrapper .k-numerictextbox .k-link.k-state-selected span.k-i-arrow-s,
  .k-state-hover > .km-pane-wrapper .k-numerictextbox .k-state-hover .k-link span.k-i-arrow-s,
  .k-state-hover > * > .km-pane-wrapper .k-numerictextbox .k-link.k-state-selected span.k-i-arrow-s,
  .k-state-hover > * > .km-pane-wrapper .k-numerictextbox .k-state-hover .k-link span.k-i-arrow-s,
  .k-button:not(.k-state-disabled):hover .km-pane-wrapper .k-numerictextbox .k-link.k-state-selected span.k-i-arrow-s,
  .k-button:not(.k-state-disabled):hover .km-pane-wrapper .k-numerictextbox .k-state-hover .k-link span.k-i-arrow-s,
  .k-textbox:hover .km-pane-wrapper .k-numerictextbox .k-link.k-state-selected span.k-i-arrow-s,
  .k-textbox:hover .km-pane-wrapper .k-numerictextbox .k-state-hover .k-link span.k-i-arrow-s,
  .k-button:active .km-pane-wrapper .k-numerictextbox .k-link.k-state-selected span.k-i-arrow-s,
  .k-button:active .km-pane-wrapper .k-numerictextbox .k-state-hover .k-link span.k-i-arrow-s {
    background-position: -2em -2em;
  }
  .km-pane-wrapper .k-i-arrow-n {
    background-position: 0em 0em;
  }
  .k-link:not(.k-state-disabled):hover > .km-pane-wrapper .k-i-arrow-n,
  .k-state-hover > .km-pane-wrapper .k-i-arrow-n,
  .k-state-hover > * > .km-pane-wrapper .k-i-arrow-n,
  .k-button:not(.k-state-disabled):hover .km-pane-wrapper .k-i-arrow-n,
  .k-textbox:hover .km-pane-wrapper .k-i-arrow-n,
  .k-button:active .km-pane-wrapper .k-i-arrow-n {
    background-position: -1em 0em;
  }
  .km-pane-wrapper .k-i-arrow-e {
    background-position: 0em -1em;
  }
  .k-link:not(.k-state-disabled):hover > .km-pane-wrapper .k-i-arrow-e,
  .k-state-hover > .km-pane-wrapper .k-i-arrow-e,
  .k-state-hover > * > .km-pane-wrapper .k-i-arrow-e,
  .k-button:not(.k-state-disabled):hover .km-pane-wrapper .k-i-arrow-e,
  .k-textbox:hover .km-pane-wrapper .k-i-arrow-e,
  .k-button:active .km-pane-wrapper .k-i-arrow-e {
    background-position: -1em -1em;
  }
  .k-rtl .km-pane-wrapper .k-i-arrow-w {
    background-position: 0em -1em;
  }
  .k-rtl .k-link:not(.k-state-disabled):hover > .km-pane-wrapper .k-i-arrow-w,
  .k-rtl .k-state-hover > .km-pane-wrapper .k-i-arrow-w,
  .k-rtl .k-state-hover > * > .km-pane-wrapper .k-i-arrow-w,
  .k-rtl .k-button:not(.k-state-disabled):hover .km-pane-wrapper .k-i-arrow-w,
  .k-rtl .k-textbox:hover .km-pane-wrapper .k-i-arrow-w,
  .k-rtl .k-button:active .km-pane-wrapper .k-i-arrow-w {
    background-position: -1em -1em;
  }
  .km-pane-wrapper .k-i-arrow-s {
    background-position: 0em -2em;
  }
  .k-link:not(.k-state-disabled):hover > .km-pane-wrapper .k-i-arrow-s,
  .k-state-hover > .km-pane-wrapper .k-i-arrow-s,
  .k-state-hover > * > .km-pane-wrapper .k-i-arrow-s,
  .k-button:not(.k-state-disabled):hover .km-pane-wrapper .k-i-arrow-s,
  .k-textbox:hover .km-pane-wrapper .k-i-arrow-s,
  .k-button:active .km-pane-wrapper .k-i-arrow-s {
    background-position: -1em -2em;
  }
  .km-pane-wrapper .k-i-arrow-w {
    background-position: 0em -3em;
  }
  .k-link:not(.k-state-disabled):hover > .km-pane-wrapper .k-i-arrow-w,
  .k-state-hover > .km-pane-wrapper .k-i-arrow-w,
  .k-state-hover > * > .km-pane-wrapper .k-i-arrow-w,
  .k-button:not(.k-state-disabled):hover .km-pane-wrapper .k-i-arrow-w,
  .k-textbox:hover .km-pane-wrapper .k-i-arrow-w,
  .k-button:active .km-pane-wrapper .k-i-arrow-w {
    background-position: -1em -3em;
  }
  .k-rtl .km-pane-wrapper .k-i-arrow-e {
    background-position: 0em -3em;
  }
  .k-rtl .k-link:not(.k-state-disabled):hover > .km-pane-wrapper .k-i-arrow-e,
  .k-rtl .k-state-hover > .km-pane-wrapper .k-i-arrow-e,
  .k-rtl .k-state-hover > * > .km-pane-wrapper .k-i-arrow-e,
  .k-rtl .k-button:not(.k-state-disabled):hover .km-pane-wrapper .k-i-arrow-e,
  .k-rtl .k-textbox:hover .km-pane-wrapper .k-i-arrow-e,
  .k-rtl .k-button:active .km-pane-wrapper .k-i-arrow-e {
    background-position: -1em -3em;
  }
  .km-pane-wrapper .k-i-seek-n {
    background-position: 0em -4em;
  }
  .k-link:not(.k-state-disabled):hover > .km-pane-wrapper .k-i-seek-n,
  .k-state-hover > .km-pane-wrapper .k-i-seek-n,
  .k-state-hover > * > .km-pane-wrapper .k-i-seek-n,
  .k-button:not(.k-state-disabled):hover .km-pane-wrapper .k-i-seek-n,
  .k-textbox:hover .km-pane-wrapper .k-i-seek-n,
  .k-button:active .km-pane-wrapper .k-i-seek-n {
    background-position: -1em -4em;
  }
  .km-pane-wrapper .k-i-seek-e {
    background-position: 0em -5em;
  }
  .k-link:not(.k-state-disabled):hover > .km-pane-wrapper .k-i-seek-e,
  .k-state-hover > .km-pane-wrapper .k-i-seek-e,
  .k-state-hover > * > .km-pane-wrapper .k-i-seek-e,
  .k-button:not(.k-state-disabled):hover .km-pane-wrapper .k-i-seek-e,
  .k-textbox:hover .km-pane-wrapper .k-i-seek-e,
  .k-button:active .km-pane-wrapper .k-i-seek-e {
    background-position: -1em -5em;
  }
  .k-rtl .km-pane-wrapper .k-i-seek-w {
    background-position: 0em -5em;
  }
  .k-rtl .k-link:not(.k-state-disabled):hover > .km-pane-wrapper .k-i-seek-w,
  .k-rtl .k-state-hover > .km-pane-wrapper .k-i-seek-w,
  .k-rtl .k-state-hover > * > .km-pane-wrapper .k-i-seek-w,
  .k-rtl .k-button:not(.k-state-disabled):hover .km-pane-wrapper .k-i-seek-w,
  .k-rtl .k-textbox:hover .km-pane-wrapper .k-i-seek-w,
  .k-rtl .k-button:active .km-pane-wrapper .k-i-seek-w {
    background-position: -1em -5em;
  }
  .km-pane-wrapper .k-i-seek-s {
    background-position: 0em -6em;
  }
  .k-link:not(.k-state-disabled):hover > .km-pane-wrapper .k-i-seek-s,
  .k-state-hover > .km-pane-wrapper .k-i-seek-s,
  .k-state-hover > * > .km-pane-wrapper .k-i-seek-s,
  .k-button:not(.k-state-disabled):hover .km-pane-wrapper .k-i-seek-s,
  .k-textbox:hover .km-pane-wrapper .k-i-seek-s,
  .k-button:active .km-pane-wrapper .k-i-seek-s {
    background-position: -1em -6em;
  }
  .km-pane-wrapper .k-i-seek-w {
    background-position: 0em -7em;
  }
  .k-link:not(.k-state-disabled):hover > .km-pane-wrapper .k-i-seek-w,
  .k-state-hover > .km-pane-wrapper .k-i-seek-w,
  .k-state-hover > * > .km-pane-wrapper .k-i-seek-w,
  .k-button:not(.k-state-disabled):hover .km-pane-wrapper .k-i-seek-w,
  .k-textbox:hover .km-pane-wrapper .k-i-seek-w,
  .k-button:active .km-pane-wrapper .k-i-seek-w {
    background-position: -1em -7em;
  }
  .k-rtl .km-pane-wrapper .k-i-seek-e {
    background-position: 0em -7em;
  }
  .k-rtl .k-link:not(.k-state-disabled):hover > .km-pane-wrapper .k-i-seek-e,
  .k-rtl .k-state-hover > .km-pane-wrapper .k-i-seek-e,
  .k-rtl .k-state-hover > * > .km-pane-wrapper .k-i-seek-e,
  .k-rtl .k-button:not(.k-state-disabled):hover .km-pane-wrapper .k-i-seek-e,
  .k-rtl .k-textbox:hover .km-pane-wrapper .k-i-seek-e,
  .k-rtl .k-button:active .km-pane-wrapper .k-i-seek-e {
    background-position: -1em -7em;
  }
  .km-pane-wrapper .k-i-arrowhead-n {
    background-position: 0em -16em;
  }
  .k-link:not(.k-state-disabled):hover > .km-pane-wrapper .k-i-arrowhead-n,
  .k-state-hover > .km-pane-wrapper .k-i-arrowhead-n,
  .k-state-hover > * > .km-pane-wrapper .k-i-arrowhead-n,
  .k-button:not(.k-state-disabled):hover .km-pane-wrapper .k-i-arrowhead-n,
  .k-textbox:hover .km-pane-wrapper .k-i-arrowhead-n,
  .k-button:active .km-pane-wrapper .k-i-arrowhead-n {
    background-position: -1em -16em;
  }
  .km-pane-wrapper .k-i-arrowhead-e {
    background-position: 0em -17em;
  }
  .k-link:not(.k-state-disabled):hover > .km-pane-wrapper .k-i-arrowhead-e,
  .k-state-hover > .km-pane-wrapper .k-i-arrowhead-e,
  .k-state-hover > * > .km-pane-wrapper .k-i-arrowhead-e,
  .k-button:not(.k-state-disabled):hover .km-pane-wrapper .k-i-arrowhead-e,
  .k-textbox:hover .km-pane-wrapper .k-i-arrowhead-e,
  .k-button:active .km-pane-wrapper .k-i-arrowhead-e {
    background-position: -1em -17em;
  }
  .km-pane-wrapper .k-i-arrowhead-s {
    background-position: 0em -18em;
  }
  .k-link:not(.k-state-disabled):hover > .km-pane-wrapper .k-i-arrowhead-s,
  .k-state-hover > .km-pane-wrapper .k-i-arrowhead-s,
  .k-state-hover > * > .km-pane-wrapper .k-i-arrowhead-s,
  .k-button:not(.k-state-disabled):hover .km-pane-wrapper .k-i-arrowhead-s,
  .k-textbox:hover .km-pane-wrapper .k-i-arrowhead-s,
  .k-button:active .km-pane-wrapper .k-i-arrowhead-s {
    background-position: -1em -18em;
  }
  .km-pane-wrapper .k-i-arrowhead-w {
    background-position: 0em -19em;
  }
  .k-link:not(.k-state-disabled):hover > .km-pane-wrapper .k-i-arrowhead-w,
  .k-state-hover > .km-pane-wrapper .k-i-arrowhead-w,
  .k-state-hover > * > .km-pane-wrapper .k-i-arrowhead-w,
  .k-button:not(.k-state-disabled):hover .km-pane-wrapper .k-i-arrowhead-w,
  .k-textbox:hover .km-pane-wrapper .k-i-arrowhead-w,
  .k-button:active .km-pane-wrapper .k-i-arrowhead-w {
    background-position: -1em -19em;
  }
  .km-pane-wrapper .k-i-expand,
  .km-pane-wrapper .k-plus,
  .km-pane-wrapper .k-plus-disabled {
    background-position: 0em -12em;
  }
  .k-link:not(.k-state-disabled):hover > .km-pane-wrapper .k-i-expand,
  .k-link:not(.k-state-disabled):hover > .km-pane-wrapper .k-plus,
  .k-link:not(.k-state-disabled):hover > .km-pane-wrapper .k-plus-disabled,
  .k-state-hover > .km-pane-wrapper .k-i-expand,
  .k-state-hover > .km-pane-wrapper .k-plus,
  .k-state-hover > .km-pane-wrapper .k-plus-disabled,
  .k-state-hover > * > .km-pane-wrapper .k-i-expand,
  .k-state-hover > * > .km-pane-wrapper .k-plus,
  .k-state-hover > * > .km-pane-wrapper .k-plus-disabled,
  .k-button:not(.k-state-disabled):hover .km-pane-wrapper .k-i-expand,
  .k-button:not(.k-state-disabled):hover .km-pane-wrapper .k-plus,
  .k-button:not(.k-state-disabled):hover .km-pane-wrapper .k-plus-disabled,
  .k-textbox:hover .km-pane-wrapper .k-i-expand,
  .k-textbox:hover .km-pane-wrapper .k-plus,
  .k-textbox:hover .km-pane-wrapper .k-plus-disabled,
  .k-button:active .km-pane-wrapper .k-i-expand,
  .k-button:active .km-pane-wrapper .k-plus,
  .k-button:active .km-pane-wrapper .k-plus-disabled {
    background-position: -1em -12em;
  }
  .km-pane-wrapper .k-i-expand-w,
  .k-rtl .km-pane-wrapper .k-i-expand,
  .k-rtl .km-pane-wrapper .k-plus,
  .k-rtl .km-pane-wrapper .k-plus-disabled {
    background-position: 0em -13em;
  }
  .k-link:not(.k-state-disabled):hover > .km-pane-wrapper .k-i-expand-w,
  .k-link:not(.k-state-disabled):hover > .k-rtl .km-pane-wrapper .k-i-expand,
  .k-link:not(.k-state-disabled):hover > .k-rtl .km-pane-wrapper .k-plus,
  .k-link:not(.k-state-disabled):hover > .k-rtl .km-pane-wrapper .k-plus-disabled,
  .k-state-hover > .km-pane-wrapper .k-i-expand-w,
  .k-state-hover > .k-rtl .km-pane-wrapper .k-i-expand,
  .k-state-hover > .k-rtl .km-pane-wrapper .k-plus,
  .k-state-hover > .k-rtl .km-pane-wrapper .k-plus-disabled,
  .k-state-hover > * > .km-pane-wrapper .k-i-expand-w,
  .k-state-hover > * > .k-rtl .km-pane-wrapper .k-i-expand,
  .k-state-hover > * > .k-rtl .km-pane-wrapper .k-plus,
  .k-state-hover > * > .k-rtl .km-pane-wrapper .k-plus-disabled,
  .k-button:not(.k-state-disabled):hover .km-pane-wrapper .k-i-expand-w,
  .k-button:not(.k-state-disabled):hover .k-rtl .km-pane-wrapper .k-i-expand,
  .k-button:not(.k-state-disabled):hover .k-rtl .km-pane-wrapper .k-plus,
  .k-button:not(.k-state-disabled):hover .k-rtl .km-pane-wrapper .k-plus-disabled,
  .k-textbox:hover .km-pane-wrapper .k-i-expand-w,
  .k-textbox:hover .k-rtl .km-pane-wrapper .k-i-expand,
  .k-textbox:hover .k-rtl .km-pane-wrapper .k-plus,
  .k-textbox:hover .k-rtl .km-pane-wrapper .k-plus-disabled,
  .k-button:active .km-pane-wrapper .k-i-expand-w,
  .k-button:active .k-rtl .km-pane-wrapper .k-i-expand,
  .k-button:active .k-rtl .km-pane-wrapper .k-plus,
  .k-button:active .k-rtl .km-pane-wrapper .k-plus-disabled {
    background-position: -1em -13em;
  }
  .km-pane-wrapper .k-i-collapse,
  .km-pane-wrapper .k-minus,
  .km-pane-wrapper .k-minus-disabled {
    background-position: 0em -14em;
  }
  .k-link:not(.k-state-disabled):hover > .km-pane-wrapper .k-i-collapse,
  .k-link:not(.k-state-disabled):hover > .km-pane-wrapper .k-minus,
  .k-link:not(.k-state-disabled):hover > .km-pane-wrapper .k-minus-disabled,
  .k-state-hover > .km-pane-wrapper .k-i-collapse,
  .k-state-hover > .km-pane-wrapper .k-minus,
  .k-state-hover > .km-pane-wrapper .k-minus-disabled,
  .k-state-hover > * > .km-pane-wrapper .k-i-collapse,
  .k-state-hover > * > .km-pane-wrapper .k-minus,
  .k-state-hover > * > .km-pane-wrapper .k-minus-disabled,
  .k-button:not(.k-state-disabled):hover .km-pane-wrapper .k-i-collapse,
  .k-button:not(.k-state-disabled):hover .km-pane-wrapper .k-minus,
  .k-button:not(.k-state-disabled):hover .km-pane-wrapper .k-minus-disabled,
  .k-textbox:hover .km-pane-wrapper .k-i-collapse,
  .k-textbox:hover .km-pane-wrapper .k-minus,
  .k-textbox:hover .km-pane-wrapper .k-minus-disabled,
  .k-button:active .km-pane-wrapper .k-i-collapse,
  .k-button:active .km-pane-wrapper .k-minus,
  .k-button:active .km-pane-wrapper .k-minus-disabled {
    background-position: -1em -14em;
  }
  .km-pane-wrapper .k-i-collapse-w,
  .k-rtl .km-pane-wrapper .k-i-collapse,
  .k-rtl .km-pane-wrapper .k-minus,
  .k-rtl .km-pane-wrapper .k-minus-disabled {
    background-position: 0em -15em;
  }
  .k-link:not(.k-state-disabled):hover > .km-pane-wrapper .k-i-collapse-w,
  .k-link:not(.k-state-disabled):hover > .k-rtl .km-pane-wrapper .k-i-collapse,
  .k-link:not(.k-state-disabled):hover > .k-rtl .km-pane-wrapper .k-minus,
  .k-link:not(.k-state-disabled):hover > .k-rtl .km-pane-wrapper .k-minus-disabled,
  .k-state-hover > .km-pane-wrapper .k-i-collapse-w,
  .k-state-hover > .k-rtl .km-pane-wrapper .k-i-collapse,
  .k-state-hover > .k-rtl .km-pane-wrapper .k-minus,
  .k-state-hover > .k-rtl .km-pane-wrapper .k-minus-disabled,
  .k-state-hover > * > .km-pane-wrapper .k-i-collapse-w,
  .k-state-hover > * > .k-rtl .km-pane-wrapper .k-i-collapse,
  .k-state-hover > * > .k-rtl .km-pane-wrapper .k-minus,
  .k-state-hover > * > .k-rtl .km-pane-wrapper .k-minus-disabled,
  .k-button:not(.k-state-disabled):hover .km-pane-wrapper .k-i-collapse-w,
  .k-button:not(.k-state-disabled):hover .k-rtl .km-pane-wrapper .k-i-collapse,
  .k-button:not(.k-state-disabled):hover .k-rtl .km-pane-wrapper .k-minus,
  .k-button:not(.k-state-disabled):hover .k-rtl .km-pane-wrapper .k-minus-disabled,
  .k-textbox:hover .km-pane-wrapper .k-i-collapse-w,
  .k-textbox:hover .k-rtl .km-pane-wrapper .k-i-collapse,
  .k-textbox:hover .k-rtl .km-pane-wrapper .k-minus,
  .k-textbox:hover .k-rtl .km-pane-wrapper .k-minus-disabled,
  .k-button:active .km-pane-wrapper .k-i-collapse-w,
  .k-button:active .k-rtl .km-pane-wrapper .k-i-collapse,
  .k-button:active .k-rtl .km-pane-wrapper .k-minus,
  .k-button:active .k-rtl .km-pane-wrapper .k-minus-disabled {
    background-position: -1em -15em;
  }
  .km-pane-wrapper .k-i-pencil,
  .km-pane-wrapper .k-edit {
    background-position: -2em 0em;
  }
  .k-link:not(.k-state-disabled):hover > .km-pane-wrapper .k-i-pencil,
  .k-link:not(.k-state-disabled):hover > .km-pane-wrapper .k-edit,
  .k-state-hover > .km-pane-wrapper .k-i-pencil,
  .k-state-hover > .km-pane-wrapper .k-edit,
  .k-state-hover > * > .km-pane-wrapper .k-i-pencil,
  .k-state-hover > * > .km-pane-wrapper .k-edit,
  .k-button:not(.k-state-disabled):hover .km-pane-wrapper .k-i-pencil,
  .k-button:not(.k-state-disabled):hover .km-pane-wrapper .k-edit,
  .k-textbox:hover .km-pane-wrapper .k-i-pencil,
  .k-textbox:hover .km-pane-wrapper .k-edit,
  .k-button:active .km-pane-wrapper .k-i-pencil,
  .k-button:active .km-pane-wrapper .k-edit {
    background-position: -3em 0em;
  }
  .km-pane-wrapper .k-i-close,
  .km-pane-wrapper .k-delete,
  .km-pane-wrapper .k-group-delete {
    background-position: -2em -1em;
  }
  .k-link:not(.k-state-disabled):hover > .km-pane-wrapper .k-i-close,
  .k-link:not(.k-state-disabled):hover > .km-pane-wrapper .k-delete,
  .k-link:not(.k-state-disabled):hover > .km-pane-wrapper .k-group-delete,
  .k-state-hover > .km-pane-wrapper .k-i-close,
  .k-state-hover > .km-pane-wrapper .k-delete,
  .k-state-hover > .km-pane-wrapper .k-group-delete,
  .k-state-hover > * > .km-pane-wrapper .k-i-close,
  .k-state-hover > * > .km-pane-wrapper .k-delete,
  .k-state-hover > * > .km-pane-wrapper .k-group-delete,
  .k-button:not(.k-state-disabled):hover .km-pane-wrapper .k-i-close,
  .k-button:not(.k-state-disabled):hover .km-pane-wrapper .k-delete,
  .k-button:not(.k-state-disabled):hover .km-pane-wrapper .k-group-delete,
  .k-textbox:hover .km-pane-wrapper .k-i-close,
  .k-textbox:hover .km-pane-wrapper .k-delete,
  .k-textbox:hover .km-pane-wrapper .k-group-delete,
  .k-button:active .km-pane-wrapper .k-i-close,
  .k-button:active .km-pane-wrapper .k-delete,
  .k-button:active .km-pane-wrapper .k-group-delete {
    background-position: -3em -1em;
  }
  .km-pane-wrapper .k-si-close {
    background-position: -10em -5em;
  }
  .k-link:not(.k-state-disabled):hover > .km-pane-wrapper .k-si-close,
  .k-state-hover > .km-pane-wrapper .k-si-close,
  .k-state-hover > * > .km-pane-wrapper .k-si-close,
  .k-button:not(.k-state-disabled):hover .km-pane-wrapper .k-si-close,
  .k-textbox:hover .km-pane-wrapper .k-si-close,
  .k-button:active .km-pane-wrapper .k-si-close {
    background-position: -11em -5em;
  }
  .km-pane-wrapper .k-multiselect .k-delete {
    background-position: -10em -5em;
  }
  .km-pane-wrapper .k-multiselect .k-state-hover .k-delete {
    background-position: -11em -5em;
  }
  .km-pane-wrapper .k-i-tick,
  .km-pane-wrapper .k-insert,
  .km-pane-wrapper .k-update {
    background-position: -2em -2em;
  }
  .k-link:not(.k-state-disabled):hover > .km-pane-wrapper .k-i-tick,
  .k-link:not(.k-state-disabled):hover > .km-pane-wrapper .k-insert,
  .k-link:not(.k-state-disabled):hover > .km-pane-wrapper .k-update,
  .k-state-hover > .km-pane-wrapper .k-i-tick,
  .k-state-hover > .km-pane-wrapper .k-insert,
  .k-state-hover > .km-pane-wrapper .k-update,
  .k-state-hover > * > .km-pane-wrapper .k-i-tick,
  .k-state-hover > * > .km-pane-wrapper .k-insert,
  .k-state-hover > * > .km-pane-wrapper .k-update,
  .k-button:not(.k-state-disabled):hover .km-pane-wrapper .k-i-tick,
  .k-button:not(.k-state-disabled):hover .km-pane-wrapper .k-insert,
  .k-button:not(.k-state-disabled):hover .km-pane-wrapper .k-update,
  .k-textbox:hover .km-pane-wrapper .k-i-tick,
  .k-textbox:hover .km-pane-wrapper .k-insert,
  .k-textbox:hover .km-pane-wrapper .k-update,
  .k-button:active .km-pane-wrapper .k-i-tick,
  .k-button:active .km-pane-wrapper .k-insert,
  .k-button:active .km-pane-wrapper .k-update {
    background-position: -3em -2em;
  }
  .km-pane-wrapper .k-check:checked,
  .km-pane-wrapper .k-mobile-list .k-edit-field [type=checkbox],
  .km-pane-wrapper .k-mobile-list .k-edit-field [type=radio] {
    background-position: -2em -2em;
  }
  .k-link:not(.k-state-disabled):hover > .km-pane-wrapper .k-check:checked,
  .k-link:not(.k-state-disabled):hover > .km-pane-wrapper .k-mobile-list .k-edit-field [type=checkbox],
  .k-link:not(.k-state-disabled):hover > .km-pane-wrapper .k-mobile-list .k-edit-field [type=radio],
  .k-state-hover > .km-pane-wrapper .k-check:checked,
  .k-state-hover > .km-pane-wrapper .k-mobile-list .k-edit-field [type=checkbox],
  .k-state-hover > .km-pane-wrapper .k-mobile-list .k-edit-field [type=radio],
  .k-state-hover > * > .km-pane-wrapper .k-check:checked,
  .k-state-hover > * > .km-pane-wrapper .k-mobile-list .k-edit-field [type=checkbox],
  .k-state-hover > * > .km-pane-wrapper .k-mobile-list .k-edit-field [type=radio],
  .k-button:not(.k-state-disabled):hover .km-pane-wrapper .k-check:checked,
  .k-button:not(.k-state-disabled):hover .km-pane-wrapper .k-mobile-list .k-edit-field [type=checkbox],
  .k-button:not(.k-state-disabled):hover .km-pane-wrapper .k-mobile-list .k-edit-field [type=radio],
  .k-textbox:hover .km-pane-wrapper .k-check:checked,
  .k-textbox:hover .km-pane-wrapper .k-mobile-list .k-edit-field [type=checkbox],
  .k-textbox:hover .km-pane-wrapper .k-mobile-list .k-edit-field [type=radio],
  .k-button:active .km-pane-wrapper .k-check:checked,
  .k-button:active .km-pane-wrapper .k-mobile-list .k-edit-field [type=checkbox],
  .k-button:active .km-pane-wrapper .k-mobile-list .k-edit-field [type=radio] {
    background-position: -3em -2em;
  }
  .km-pane-wrapper .k-i-cancel,
  .km-pane-wrapper .k-cancel,
  .km-pane-wrapper .k-denied {
    background-position: -2em -3em;
  }
  .k-link:not(.k-state-disabled):hover > .km-pane-wrapper .k-i-cancel,
  .k-link:not(.k-state-disabled):hover > .km-pane-wrapper .k-cancel,
  .k-link:not(.k-state-disabled):hover > .km-pane-wrapper .k-denied,
  .k-state-hover > .km-pane-wrapper .k-i-cancel,
  .k-state-hover > .km-pane-wrapper .k-cancel,
  .k-state-hover > .km-pane-wrapper .k-denied,
  .k-state-hover > * > .km-pane-wrapper .k-i-cancel,
  .k-state-hover > * > .km-pane-wrapper .k-cancel,
  .k-state-hover > * > .km-pane-wrapper .k-denied,
  .k-button:not(.k-state-disabled):hover .km-pane-wrapper .k-i-cancel,
  .k-button:not(.k-state-disabled):hover .km-pane-wrapper .k-cancel,
  .k-button:not(.k-state-disabled):hover .km-pane-wrapper .k-denied,
  .k-textbox:hover .km-pane-wrapper .k-i-cancel,
  .k-textbox:hover .km-pane-wrapper .k-cancel,
  .k-textbox:hover .km-pane-wrapper .k-denied,
  .k-button:active .km-pane-wrapper .k-i-cancel,
  .k-button:active .km-pane-wrapper .k-cancel,
  .k-button:active .km-pane-wrapper .k-denied {
    background-position: -3em -3em;
  }
  .km-pane-wrapper .k-i-plus,
  .km-pane-wrapper .k-add {
    background-position: -2em -4em;
  }
  .k-link:not(.k-state-disabled):hover > .km-pane-wrapper .k-i-plus,
  .k-link:not(.k-state-disabled):hover > .km-pane-wrapper .k-add,
  .k-state-hover > .km-pane-wrapper .k-i-plus,
  .k-state-hover > .km-pane-wrapper .k-add,
  .k-state-hover > * > .km-pane-wrapper .k-i-plus,
  .k-state-hover > * > .km-pane-wrapper .k-add,
  .k-button:not(.k-state-disabled):hover .km-pane-wrapper .k-i-plus,
  .k-button:not(.k-state-disabled):hover .km-pane-wrapper .k-add,
  .k-textbox:hover .km-pane-wrapper .k-i-plus,
  .k-textbox:hover .km-pane-wrapper .k-add,
  .k-button:active .km-pane-wrapper .k-i-plus,
  .k-button:active .km-pane-wrapper .k-add {
    background-position: -3em -4em;
  }
  .km-pane-wrapper .k-i-funnel,
  .km-pane-wrapper .k-filter {
    background-position: -2em -5em;
  }
  .k-link:not(.k-state-disabled):hover > .km-pane-wrapper .k-i-funnel,
  .k-link:not(.k-state-disabled):hover > .km-pane-wrapper .k-filter,
  .k-state-hover > .km-pane-wrapper .k-i-funnel,
  .k-state-hover > .km-pane-wrapper .k-filter,
  .k-state-hover > * > .km-pane-wrapper .k-i-funnel,
  .k-state-hover > * > .km-pane-wrapper .k-filter,
  .k-button:not(.k-state-disabled):hover .km-pane-wrapper .k-i-funnel,
  .k-button:not(.k-state-disabled):hover .km-pane-wrapper .k-filter,
  .k-textbox:hover .km-pane-wrapper .k-i-funnel,
  .k-textbox:hover .km-pane-wrapper .k-filter,
  .k-button:active .km-pane-wrapper .k-i-funnel,
  .k-button:active .km-pane-wrapper .k-filter {
    background-position: -3em -5em;
  }
  .km-pane-wrapper .k-i-funnel-clear,
  .km-pane-wrapper .k-clear-filter {
    background-position: -2em -6em;
  }
  .k-link:not(.k-state-disabled):hover > .km-pane-wrapper .k-i-funnel-clear,
  .k-link:not(.k-state-disabled):hover > .km-pane-wrapper .k-clear-filter,
  .k-state-hover > .km-pane-wrapper .k-i-funnel-clear,
  .k-state-hover > .km-pane-wrapper .k-clear-filter,
  .k-state-hover > * > .km-pane-wrapper .k-i-funnel-clear,
  .k-state-hover > * > .km-pane-wrapper .k-clear-filter,
  .k-button:not(.k-state-disabled):hover .km-pane-wrapper .k-i-funnel-clear,
  .k-button:not(.k-state-disabled):hover .km-pane-wrapper .k-clear-filter,
  .k-textbox:hover .km-pane-wrapper .k-i-funnel-clear,
  .k-textbox:hover .km-pane-wrapper .k-clear-filter,
  .k-button:active .km-pane-wrapper .k-i-funnel-clear,
  .k-button:active .km-pane-wrapper .k-clear-filter {
    background-position: -3em -6em;
  }
  .km-pane-wrapper .k-i-refresh {
    background-position: -2em -7em;
  }
  .k-link:not(.k-state-disabled):hover > .km-pane-wrapper .k-i-refresh,
  .k-state-hover > .km-pane-wrapper .k-i-refresh,
  .k-state-hover > * > .km-pane-wrapper .k-i-refresh,
  .k-button:not(.k-state-disabled):hover .km-pane-wrapper .k-i-refresh,
  .k-textbox:hover .km-pane-wrapper .k-i-refresh,
  .k-button:active .km-pane-wrapper .k-i-refresh {
    background-position: -3em -7em;
  }
  .km-pane-wrapper .k-i-exception {
    background-position: -10em -19em;
  }
  .k-link:not(.k-state-disabled):hover > .km-pane-wrapper .k-i-exception,
  .k-state-hover > .km-pane-wrapper .k-i-exception,
  .k-state-hover > * > .km-pane-wrapper .k-i-exception,
  .k-button:not(.k-state-disabled):hover .km-pane-wrapper .k-i-exception,
  .k-textbox:hover .km-pane-wrapper .k-i-exception,
  .k-button:active .km-pane-wrapper .k-i-exception {
    background-position: -11em -19em;
  }
  .km-pane-wrapper .k-i-restore {
    background-position: -2em -8em;
  }
  .k-link:not(.k-state-disabled):hover > .km-pane-wrapper .k-i-restore,
  .k-state-hover > .km-pane-wrapper .k-i-restore,
  .k-state-hover > * > .km-pane-wrapper .k-i-restore,
  .k-button:not(.k-state-disabled):hover .km-pane-wrapper .k-i-restore,
  .k-textbox:hover .km-pane-wrapper .k-i-restore,
  .k-button:active .km-pane-wrapper .k-i-restore {
    background-position: -3em -8em;
  }
  .km-pane-wrapper .k-i-maximize {
    background-position: -2em -9em;
  }
  .k-link:not(.k-state-disabled):hover > .km-pane-wrapper .k-i-maximize,
  .k-state-hover > .km-pane-wrapper .k-i-maximize,
  .k-state-hover > * > .km-pane-wrapper .k-i-maximize,
  .k-button:not(.k-state-disabled):hover .km-pane-wrapper .k-i-maximize,
  .k-textbox:hover .km-pane-wrapper .k-i-maximize,
  .k-button:active .km-pane-wrapper .k-i-maximize {
    background-position: -3em -9em;
  }
  .km-pane-wrapper .k-i-minimize {
    background-position: -4em -18em;
  }
  .k-link:not(.k-state-disabled):hover > .km-pane-wrapper .k-i-minimize,
  .k-state-hover > .km-pane-wrapper .k-i-minimize,
  .k-state-hover > * > .km-pane-wrapper .k-i-minimize,
  .k-button:not(.k-state-disabled):hover .km-pane-wrapper .k-i-minimize,
  .k-textbox:hover .km-pane-wrapper .k-i-minimize,
  .k-button:active .km-pane-wrapper .k-i-minimize {
    background-position: -5em -18em;
  }
  .km-pane-wrapper .k-i-pin {
    background-position: -10em -16em;
  }
  .k-link:not(.k-state-disabled):hover > .km-pane-wrapper .k-i-pin,
  .k-state-hover > .km-pane-wrapper .k-i-pin,
  .k-state-hover > * > .km-pane-wrapper .k-i-pin,
  .k-button:not(.k-state-disabled):hover .km-pane-wrapper .k-i-pin,
  .k-textbox:hover .km-pane-wrapper .k-i-pin,
  .k-button:active .km-pane-wrapper .k-i-pin {
    background-position: -11em -16em;
  }
  .km-pane-wrapper .k-i-unpin {
    background-position: -10em -17em;
  }
  .k-link:not(.k-state-disabled):hover > .km-pane-wrapper .k-i-unpin,
  .k-state-hover > .km-pane-wrapper .k-i-unpin,
  .k-state-hover > * > .km-pane-wrapper .k-i-unpin,
  .k-button:not(.k-state-disabled):hover .km-pane-wrapper .k-i-unpin,
  .k-textbox:hover .km-pane-wrapper .k-i-unpin,
  .k-button:active .km-pane-wrapper .k-i-unpin {
    background-position: -11em -17em;
  }
  .km-pane-wrapper .k-resize-se {
    background-position: -2em -10em;
  }
  .k-link:not(.k-state-disabled):hover > .km-pane-wrapper .k-resize-se,
  .k-state-hover > .km-pane-wrapper .k-resize-se,
  .k-state-hover > * > .km-pane-wrapper .k-resize-se,
  .k-button:not(.k-state-disabled):hover .km-pane-wrapper .k-resize-se,
  .k-textbox:hover .km-pane-wrapper .k-resize-se,
  .k-button:active .km-pane-wrapper .k-resize-se {
    background-position: -3em -10em;
  }
  .km-pane-wrapper .k-i-calendar {
    background-position: -2em -11em;
  }
  .k-link:not(.k-state-disabled):hover > .km-pane-wrapper .k-i-calendar,
  .k-state-hover > .km-pane-wrapper .k-i-calendar,
  .k-state-hover > * > .km-pane-wrapper .k-i-calendar,
  .k-button:not(.k-state-disabled):hover .km-pane-wrapper .k-i-calendar,
  .k-textbox:hover .km-pane-wrapper .k-i-calendar,
  .k-button:active .km-pane-wrapper .k-i-calendar {
    background-position: -3em -11em;
  }
  .km-pane-wrapper .k-i-clock {
    background-position: -2em -12em;
  }
  .k-link:not(.k-state-disabled):hover > .km-pane-wrapper .k-i-clock,
  .k-state-hover > .km-pane-wrapper .k-i-clock,
  .k-state-hover > * > .km-pane-wrapper .k-i-clock,
  .k-button:not(.k-state-disabled):hover .km-pane-wrapper .k-i-clock,
  .k-textbox:hover .km-pane-wrapper .k-i-clock,
  .k-button:active .km-pane-wrapper .k-i-clock {
    background-position: -3em -12em;
  }
  .km-pane-wrapper .k-si-plus {
    background-position: -2em -13em;
  }
  .k-link:not(.k-state-disabled):hover > .km-pane-wrapper .k-si-plus,
  .k-state-hover > .km-pane-wrapper .k-si-plus,
  .k-state-hover > * > .km-pane-wrapper .k-si-plus,
  .k-button:not(.k-state-disabled):hover .km-pane-wrapper .k-si-plus,
  .k-textbox:hover .km-pane-wrapper .k-si-plus,
  .k-button:active .km-pane-wrapper .k-si-plus {
    background-position: -3em -13em;
  }
  .km-pane-wrapper .k-si-minus {
    background-position: -2em -14em;
  }
  .k-link:not(.k-state-disabled):hover > .km-pane-wrapper .k-si-minus,
  .k-state-hover > .km-pane-wrapper .k-si-minus,
  .k-state-hover > * > .km-pane-wrapper .k-si-minus,
  .k-button:not(.k-state-disabled):hover .km-pane-wrapper .k-si-minus,
  .k-textbox:hover .km-pane-wrapper .k-si-minus,
  .k-button:active .km-pane-wrapper .k-si-minus {
    background-position: -3em -14em;
  }
}
.km-pane-wrapper .km-pane .k-mobile-list input:not([type="checkbox"]):not([type="radio"]),
.km-pane-wrapper .km-pane .k-mobile-list select:not([multiple]),
.km-pane-wrapper .km-pane .k-mobile-list textarea,
.km-pane-wrapper .k-mobile-list .k-widget,
.km-pane-wrapper .k-edit-field > *:not([type="checkbox"]):not([type="radio"]):not(.k-button) {
  text-indent: 0;
  font-size: 1em;
  line-height: 1.6em;
  vertical-align: middle;
  height: auto;
  padding: 0;
  border: 0;
  margin: 0;
  background: transparent;
  -webkit-box-shadow: none;
  box-shadow: none;
  border-radius: 0;
}
.km-pane-wrapper .k-mobile-list .k-widget {
  border: 0;
  border-radius: 0;
}
.k-ie .km-pane-wrapper .k-mobile-list .k-widget {
  height: initial;
}
.km-pane-wrapper .k-mobile-list .k-widget .k-input,
.km-pane-wrapper .k-mobile-list .k-widget .k-state-default {
  border: 0;
  background: transparent;
}
.km-pane-wrapper *:not(.k-state-default):not(.k-pager-input) > input:not([type="checkbox"]):not([type="radio"]),
.km-pane-wrapper .k-mobile-list select:not([multiple]),
.km-pane-wrapper .k-mobile-list textarea,
.km-pane-wrapper .k-mobile-list .k-widget,
.km-pane-wrapper .k-edit-field > *:not([type="checkbox"]):not([type="radio"]):not(.k-button) {
  width: 80%;
  padding: .6em 0;
  margin: -0.5em 0;
}
.km-pane-wrapper .km-pane .k-mobile-list input,
.km-pane-wrapper .km-pane .k-mobile-list select:not([multiple]),
.km-pane-wrapper .km-pane .k-mobile-list textarea,
.km-pane-wrapper .k-mobile-list .k-widget,
.km-pane-wrapper .k-mobile-list .k-edit-field > * {
  -webkit-appearance: none;
  -moz-appearance: none;
  appearance: none;
  float: right;
  z-index: 1;
  position: relative;
}
.km-pane-wrapper .k-scheduler-views {
  width: 18em;
}
.km-pane-wrapper .k-mobile-list .k-edit-field.k-scheduler-toolbar {
  background: transparent;
  border: 0;
  -webkit-box-shadow: none;
  box-shadow: none;
  padding: .5em 1em;
}
.km-pane-wrapper #recurrence .k-scheduler-navigation {
  width: 100%;
}
.km-pane-wrapper .k-scheduler-views,
.km-pane-wrapper .k-mobile-list .k-scheduler-navigation {
  display: table;
  table-layout: fixed;
}
.km-pane-wrapper .k-scheduler-views li,
.km-pane-wrapper .k-mobile-list .k-scheduler-navigation li {
  display: table-cell;
  text-align: center;
}
.km-pane-wrapper .k-mobile-list .k-recur-view > .k-edit-field .k-check {
  margin: 0;
  padding-left: 1em;
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  box-sizing: border-box;
}
.km-pane-wrapper .k-mobile-list .k-recur-view > .k-edit-field .k-check:first-child {
  margin-top: -0.5em;
}
.km-pane-wrapper .k-mobile-list .k-recur-view > .k-edit-field .k-check:last-child {
  margin-bottom: -0.5em;
}
.km-pane-wrapper .k-mobile-list .k-scheduler-timezones .k-edit-field label.k-check {
  text-indent: 1em;
}
.km-pane-wrapper .k-mobile-list .k-edit-field > .k-button {
  margin-left: 20%;
  float: left;
}
.km-pane-wrapper .k-mobile-list .k-picker-wrap,
.km-pane-wrapper .k-mobile-list .k-numeric-wrap,
.km-pane-wrapper .k-mobile-list .k-dropdown-wrap {
  position: static;
  -webkit-box-shadow: none;
  box-shadow: none;
}
.km-pane-wrapper .k-mobile-list .k-datepicker .k-select,
.km-pane-wrapper .k-mobile-list .k-datetimepicker .k-select,
.km-pane-wrapper .k-mobile-list .k-numerictextbox .k-select {
  position: absolute;
  top: 0;
  right: 0;
  line-height: auto;
}
.km-pane-wrapper .k-mobile-list .k-datepicker .k-select:before,
.km-pane-wrapper .k-mobile-list .k-datetimepicker .k-select:before {
  content: "\a0";
  display: inline-block;
  width: 0;
  height: 100%;
  vertical-align: middle;
}
.km-pane-wrapper .k-mobile-list .k-numerictextbox .k-link {
  height: 50%;
}
.km-pane-wrapper .k-grid .k-button,
.km-pane-wrapper .k-edit-form-container .k-button {
  margin: 0;
}
.km-pane-wrapper .k-grid .k-button + .k-button,
.km-pane-wrapper .k-edit-form-container .k-button + .k-button {
  margin: 0 0 0 .18em;
}
.km-pane-wrapper .k-pager-numbers .k-link,
.km-pane-wrapper .k-pager-numbers .k-state-selected,
.km-pane-wrapper .k-pager-wrap > .k-link {
  width: 2.4em;
  height: 2.4em;
  line-height: 2.1em;
  border-radius: 2em;
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  box-sizing: border-box;
}
.km-pane-wrapper .k-pager-numbers .k-link,
.km-pane-wrapper .k-pager-numbers .k-state-selected {
  width: auto;
  line-height: 2.2em;
  padding: 0 .86em;
  min-width: .7em;
}
.km-pane-wrapper .k-pager-wrap {
  line-height: 2.4em;
}
@media all and (max-width: 699px), (-ms-high-contrast: active) and (-ms-high-contrast: none) and (max-width: 800px) {
  .km-pane-wrapper *:not(.k-state-default):not(.k-pager-input) > input:not([type="checkbox"]):not([type="radio"]),
  .km-pane-wrapper .k-mobile-list select:not([multiple]),
  .km-pane-wrapper .k-mobile-list textarea,
  .km-pane-wrapper .k-mobile-list .k-widget,
  .km-pane-wrapper .k-edit-field > *:not([type="checkbox"]):not([type="radio"]):not(.k-button) {
    width: 50%;
  }
  .km-pane-wrapper .k-mobile-list .k-edit-field > .k-button {
    margin-left: 50%;
  }
  .km-pane-wrapper .k-mobile-list .k-edit-field > .k-timezone-button {
    margin-left: 1em;
  }
  .km-pane-wrapper .k-nav-today a {
    padding-left: .6em;
    padding-right: .6em;
  }
  .km-pane-wrapper li.k-nav-current {
    margin-left: 0;
    margin-right: 0;
  }
  .km-pane-wrapper .k-pager-wrap {
    position: relative;
  }
  .km-pane-wrapper .k-pager-numbers {
    width: auto;
    display: block;
    overflow: hidden;
    margin-right: 5.5em;
    float: none;
    text-overflow: ellipsis;
    height: 2.4em;
    text-align: center;
  }
  .km-pane-wrapper .k-pager-numbers li {
    float: none;
    display: inline-block;
  }
  .km-pane-wrapper .k-pager-nav {
    float: left;
  }
  .km-pane-wrapper .k-pager-nav + .k-pager-nav ~ .k-pager-nav {
    position: absolute;
    right: .3em;
    top: .3em;
  }
  .km-pane-wrapper .k-pager-wrap .k-pager-numbers + .k-pager-nav,
  .km-pane-wrapper .k-pager-nav:first-child + .k-pager-nav + .k-pager-nav {
    right: 3em;
  }
  .km-pane-wrapper .k-pager-info {
    display: none;
  }
}
.km-pane-wrapper .k-mobile-list .k-recur-view > .k-edit-field .k-check,
.km-pane-wrapper .k-mobile-list .k-edit-field > * > select:not([multiple]),
.km-pane-wrapper .k-mobile-list .k-scheduler-timezones .k-edit-field label.k-check {
  width: 100%;
}
/* Mobile Scroller */
.km-scroll-container {
  -khtml-user-select: none;
  -webkit-user-select: none;
  -moz-user-select: -moz-none;
  -ms-user-select: none;
  user-select: none;
  -webkit-margin-collapse: separate;
  -webkit-transform: translatez(0);
}
.k-widget .km-scroll-wrapper {
  position: relative;
  padding-bottom: 0;
}
.km-touch-scrollbar {
  position: absolute;
  visibility: hidden;
  z-index: 200000;
  height: .3em;
  width: .3em;
  background-color: rgba(0, 0, 0, 0.7);
  opacity: 0;
  -webkit-transition: opacity 0.3s linear;
  -moz-transition: opacity 0.3s linear;
  -o-transition: opacity 0.3s linear;
  transition: opacity 0.3s linear;
  -webkit-transition: "opacity 0.3s linear";
  -moz-transition: "opacity 0.3s linear";
  -ms-transition: "opacity 0.3s linear";
  -o-transition: "opacity 0.3s linear";
  transition: "opacity 0.3s linear";
}
.km-vertical-scrollbar {
  height: 100%;
  right: 2px;
  top: 2px;
}
.km-horizontal-scrollbar {
  width: 100%;
  left: 2px;
  bottom: 2px;
}
/* Responsive styles  */
@media only screen and (max-width: 1024px) {
  .k-scheduler-toolbar > ul.k-scheduler-views {
    position: absolute;
    right: 6px;
    top: 6px;
    z-index: 10000;
  }
  .k-rtl .k-scheduler-toolbar > ul.k-scheduler-views {
    right: auto;
    left: 6px;
  }
  .k-scheduler-toolbar > ul.k-scheduler-views > li:not(.k-current-view) {
    display: none;
  }
  .k-scheduler-toolbar li.k-nav-current .k-lg-date-format {
    display: none;
  }
  .k-scheduler-toolbar li.k-nav-current .k-sm-date-format {
    display: inline;
  }
  .k-scheduler-toolbar > ul.k-scheduler-views > li.k-current-view {
    display: block;
    border-width: 1px;
  }
  .k-rtl .k-scheduler-toolbar > ul.k-scheduler-views > li.k-current-view {
    text-align: left;
    padding-left: 1em;
  }
  .k-scheduler-toolbar > ul.k-scheduler-views > li.k-current-view > .k-link {
    display: block;
    position: relative;
    padding-right: 2.5em;
    padding-left: 1em;
    box-sizing: border-box;
  }
  .k-rtl .k-scheduler-toolbar > ul.k-scheduler-views > li.k-current-view > .k-link {
    padding-left: 0;
  }
  .k-scheduler-toolbar > ul.k-scheduler-views > li.k-current-view > .k-link:after {
    display: block;
    content: "";
    position: absolute;
    top: 50%;
    margin-top: -0.6em;
    right: 0.333em;
    width: 1.333em;
    height: 1.333em;
  }
  .k-scheduler-toolbar > ul.k-scheduler-views.k-state-expanded > li,
  .k-scheduler-toolbar > ul.k-scheduler-views.k-state-expanded > li:first-child + li {
    display: block;
    border: 0;
    border-radius: 0;
  }
  .k-scheduler-toolbar > ul.k-scheduler-views.k-state-expanded {
    border: 1px solid #c5c5c5;
    background-color: #fff;
    background-image: none;
    box-shadow: 0 2px 2px 0 rgba(0, 0, 0, 0.3);
  }
  .k-rtl .k-scheduler-toolbar > ul.k-scheduler-views.k-state-expanded {
    text-align: left;
  }
}
/* animation classes */
.k-fx-end .k-fx-next,
.k-fx-end .k-fx-current {
  -webkit-transition: all 350ms ease-out;
  -moz-transition: all 350ms ease-out;
  -ms-transition: all 350ms ease-out;
  -o-transition: all 350ms ease-out;
  transition: all 350ms ease-out;
}
.k-fx {
  position: relative;
}
.k-fx .k-fx-current {
  z-index: 0;
}
.k-fx .k-fx-next {
  z-index: 1;
}
.k-fx-hidden,
.k-fx-hidden * {
  visibility: hidden !important;
}
.k-fx-reverse .k-fx-current {
  z-index: 1;
}
.k-fx-reverse .k-fx-next {
  z-index: 0;
}
/* Zoom */
.k-fx-zoom.k-fx-start .k-fx-next {
  -webkit-transform: scale(0) !important;
  -moz-transform: scale(0) !important;
  -ms-transform: scale(0) !important;
  -o-transform: scale(0) !important;
  transform: scale(0) !important;
}
.k-fx-zoom.k-fx-end .k-fx-next {
  -webkit-transform: scale(1) !important;
  -moz-transform: scale(1) !important;
  -ms-transform: scale(1) !important;
  -o-transform: scale(1) !important;
  transform: scale(1) !important;
}
.k-fx-zoom.k-fx-reverse.k-fx-start .k-fx-next,
.k-fx-zoom.k-fx-reverse.k-fx-end .k-fx-next {
  -webkit-transform: scale(1) !important;
  -moz-transform: scale(1) !important;
  -ms-transform: scale(1) !important;
  -o-transform: scale(1) !important;
  transform: scale(1) !important;
}
.k-fx-zoom.k-fx-reverse.k-fx-start .k-fx-current {
  -webkit-transform: scale(1) !important;
  -moz-transform: scale(1) !important;
  -ms-transform: scale(1) !important;
  -o-transform: scale(1) !important;
  transform: scale(1) !important;
}
.k-fx-zoom.k-fx-reverse.k-fx-end .k-fx-current {
  -webkit-transform: scale(0) !important;
  -moz-transform: scale(0) !important;
  -ms-transform: scale(0) !important;
  -o-transform: scale(0) !important;
  transform: scale(0) !important;
}
/* Fade */
.k-fx-fade.k-fx-start .k-fx-next {
  will-change: opacity;
  opacity: 0;
}
.k-fx-fade.k-fx-end .k-fx-next {
  opacity: 1;
}
.k-fx-fade.k-fx-reverse.k-fx-start .k-fx-current {
  will-change: opacity;
  opacity: 1;
}
.k-fx-fade.k-fx-reverse.k-fx-end .k-fx-current {
  opacity: 0;
}
/* Slide */
.k-fx-slide {
  /* left */
  /* left reverse */
  /* right */
}
.k-fx-slide.k-fx-end .k-fx-next .km-content,
.k-fx-slide.k-fx-end .k-fx-next .km-header,
.k-fx-slide.k-fx-end .k-fx-next .km-footer,
.k-fx-slide.k-fx-end .k-fx-current .km-content,
.k-fx-slide.k-fx-end .k-fx-current .km-header,
.k-fx-slide.k-fx-end .k-fx-current .km-footer {
  -webkit-transition: all 350ms ease-out;
  -moz-transition: all 350ms ease-out;
  -ms-transition: all 350ms ease-out;
  -o-transition: all 350ms ease-out;
  transition: all 350ms ease-out;
}
.k-fx-slide.k-fx-start .k-fx-next .km-content {
  will-change: transform;
  -webkit-transform: translatex(100%);
  -moz-transform: translatex(100%);
  -ms-transform: translatex(100%);
  -o-transform: translatex(100%);
  transform: translatex(100%);
}
.k-fx-slide.k-fx-start .k-fx-next .km-header,
.k-fx-slide.k-fx-start .k-fx-next .km-footer {
  will-change: opacity;
  opacity: 0;
}
.k-fx-slide.k-fx-end .k-fx-current .km-content {
  -webkit-transform: translatex(-100%);
  -moz-transform: translatex(-100%);
  -ms-transform: translatex(-100%);
  -o-transform: translatex(-100%);
  transform: translatex(-100%);
}
.k-fx-slide.k-fx-end .k-fx-next .km-header,
.k-fx-slide.k-fx-end .k-fx-next .km-footer {
  opacity: 1;
}
.k-fx-slide.k-fx-reverse.k-fx-start .k-fx-current .km-content {
  will-change: transform;
  -webkit-transform: translatex(0);
  -moz-transform: translatex(0);
  -ms-transform: translatex(0);
  -o-transform: translatex(0);
  transform: translatex(0);
}
.k-fx-slide.k-fx-reverse.k-fx-end .k-fx-current .km-content {
  -webkit-transform: translatex(100%);
  -moz-transform: translatex(100%);
  -ms-transform: translatex(100%);
  -o-transform: translatex(100%);
  transform: translatex(100%);
}
.k-fx-slide.k-fx-reverse.k-fx-start .k-fx-next .km-content {
  -webkit-transform: translatex(-100%);
  -moz-transform: translatex(-100%);
  -ms-transform: translatex(-100%);
  -o-transform: translatex(-100%);
  transform: translatex(-100%);
}
.k-fx-slide.k-fx-reverse.k-fx-end .k-fx-next .km-content {
  -webkit-transform: translatex(0);
  -moz-transform: translatex(0);
  -ms-transform: translatex(0);
  -o-transform: translatex(0);
  transform: translatex(0);
}
.k-fx-slide.k-fx-reverse.k-fx-start .k-fx-current .km-header,
.k-fx-slide.k-fx-reverse.k-fx-start .k-fx-current .km-footer {
  will-change: opacity;
  opacity: 1;
}
.k-fx-slide.k-fx-reverse.k-fx-start .k-fx-next .km-header,
.k-fx-slide.k-fx-reverse.k-fx-start .k-fx-next .km-footer {
  opacity: 1;
}
.k-fx-slide.k-fx-reverse.k-fx-end .k-fx-current .km-header,
.k-fx-slide.k-fx-reverse.k-fx-end .k-fx-current .km-footer {
  opacity: 0;
}
.k-fx-slide.k-fx-reverse.k-fx-end .k-fx-next .km-header,
.k-fx-slide.k-fx-reverse.k-fx-end .k-fx-next .km-footer {
  opacity: 1;
}
.k-fx-slide.k-fx-right {
  /* right reverse */
}
.k-fx-slide.k-fx-right.k-fx-start .k-fx-next .km-content {
  -webkit-transform: translatex(-100%);
  -moz-transform: translatex(-100%);
  -ms-transform: translatex(-100%);
  -o-transform: translatex(-100%);
  transform: translatex(-100%);
}
.k-fx-slide.k-fx-right.k-fx-end .k-fx-current .km-content {
  -webkit-transform: translatex(100%);
  -moz-transform: translatex(100%);
  -ms-transform: translatex(100%);
  -o-transform: translatex(100%);
  transform: translatex(100%);
}
.k-fx-slide.k-fx-right.k-fx-reverse.k-fx-start .k-fx-current .km-content {
  -webkit-transform: translatex(0);
  -moz-transform: translatex(0);
  -ms-transform: translatex(0);
  -o-transform: translatex(0);
  transform: translatex(0);
}
.k-fx-slide.k-fx-right.k-fx-reverse.k-fx-end .k-fx-current .km-content {
  -webkit-transform: translatex(-100%);
  -moz-transform: translatex(-100%);
  -ms-transform: translatex(-100%);
  -o-transform: translatex(-100%);
  transform: translatex(-100%);
}
.k-fx-slide.k-fx-right.k-fx-reverse.k-fx-start .k-fx-next .km-content {
  -webkit-transform: translatex(100%);
  -moz-transform: translatex(100%);
  -ms-transform: translatex(100%);
  -o-transform: translatex(100%);
  transform: translatex(100%);
}
.k-fx-slide.k-fx-right.k-fx-reverse.k-fx-end .k-fx-next .km-content {
  -webkit-transform: translatex(0%);
  -moz-transform: translatex(0%);
  -ms-transform: translatex(0%);
  -o-transform: translatex(0%);
  transform: translatex(0%);
}
/* Tile */
.k-fx-tile {
  /* left */
  /* left reverse */
  /* right */
}
.k-fx-tile.k-fx-start .k-fx-next {
  will-change: transform;
  -webkit-transform: translatex(100%);
  -moz-transform: translatex(100%);
  -ms-transform: translatex(100%);
  -o-transform: translatex(100%);
  transform: translatex(100%);
}
.k-fx-tile.k-fx-end .k-fx-current {
  -webkit-transform: translatex(-100%);
  -moz-transform: translatex(-100%);
  -ms-transform: translatex(-100%);
  -o-transform: translatex(-100%);
  transform: translatex(-100%);
}
.k-fx-tile.k-fx-reverse.k-fx-start .k-fx-current {
  will-change: transform;
  -webkit-transform: translatex(0);
  -moz-transform: translatex(0);
  -ms-transform: translatex(0);
  -o-transform: translatex(0);
  transform: translatex(0);
}
.k-fx-tile.k-fx-reverse.k-fx-end .k-fx-current {
  -webkit-transform: translatex(100%);
  -moz-transform: translatex(100%);
  -ms-transform: translatex(100%);
  -o-transform: translatex(100%);
  transform: translatex(100%);
}
.k-fx-tile.k-fx-reverse.k-fx-start .k-fx-next {
  -webkit-transform: translatex(-100%);
  -moz-transform: translatex(-100%);
  -ms-transform: translatex(-100%);
  -o-transform: translatex(-100%);
  transform: translatex(-100%);
}
.k-fx-tile.k-fx-reverse.k-fx-end .k-fx-next {
  -webkit-transform: translatex(0);
  -moz-transform: translatex(0);
  -ms-transform: translatex(0);
  -o-transform: translatex(0);
  transform: translatex(0);
}
.k-fx-tile.k-fx-right {
  /* right reverse */
}
.k-fx-tile.k-fx-right.k-fx-start .k-fx-next {
  -webkit-transform: translatex(-100%);
  -moz-transform: translatex(-100%);
  -ms-transform: translatex(-100%);
  -o-transform: translatex(-100%);
  transform: translatex(-100%);
}
.k-fx-tile.k-fx-right.k-fx-end .k-fx-current {
  -webkit-transform: translatex(100%);
  -moz-transform: translatex(100%);
  -ms-transform: translatex(100%);
  -o-transform: translatex(100%);
  transform: translatex(100%);
}
.k-fx-tile.k-fx-right.k-fx-reverse.k-fx-start .k-fx-current {
  -webkit-transform: translatex(0);
  -moz-transform: translatex(0);
  -ms-transform: translatex(0);
  -o-transform: translatex(0);
  transform: translatex(0);
}
.k-fx-tile.k-fx-right.k-fx-reverse.k-fx-end .k-fx-current {
  -webkit-transform: translatex(-100%);
  -moz-transform: translatex(-100%);
  -ms-transform: translatex(-100%);
  -o-transform: translatex(-100%);
  transform: translatex(-100%);
}
.k-fx-tile.k-fx-right.k-fx-reverse.k-fx-start .k-fx-next {
  -webkit-transform: translatex(100%);
  -moz-transform: translatex(100%);
  -ms-transform: translatex(100%);
  -o-transform: translatex(100%);
  transform: translatex(100%);
}
.k-fx-tile.k-fx-right.k-fx-reverse.k-fx-end .k-fx-next {
  -webkit-transform: translatex(0%);
  -moz-transform: translatex(0%);
  -ms-transform: translatex(0%);
  -o-transform: translatex(0%);
  transform: translatex(0%);
}
/* Tile */
.k-fx-tile {
  /* left */
  /* left reverse */
  /* right */
}
.k-fx-tile.k-fx-start .k-fx-next {
  will-change: transform;
  -webkit-transform: translatex(100%);
  -moz-transform: translatex(100%);
  -ms-transform: translatex(100%);
  -o-transform: translatex(100%);
  transform: translatex(100%);
}
.k-fx-tile.k-fx-end .k-fx-current {
  -webkit-transform: translatex(-100%);
  -moz-transform: translatex(-100%);
  -ms-transform: translatex(-100%);
  -o-transform: translatex(-100%);
  transform: translatex(-100%);
}
.k-fx-tile.k-fx-reverse.k-fx-start .k-fx-current {
  will-change: transform;
  -webkit-transform: translatex(0);
  -moz-transform: translatex(0);
  -ms-transform: translatex(0);
  -o-transform: translatex(0);
  transform: translatex(0);
}
.k-fx-tile.k-fx-reverse.k-fx-end .k-fx-current {
  -webkit-transform: translatex(100%);
  -moz-transform: translatex(100%);
  -ms-transform: translatex(100%);
  -o-transform: translatex(100%);
  transform: translatex(100%);
}
.k-fx-tile.k-fx-reverse.k-fx-start .k-fx-next {
  -webkit-transform: translatex(-100%);
  -moz-transform: translatex(-100%);
  -ms-transform: translatex(-100%);
  -o-transform: translatex(-100%);
  transform: translatex(-100%);
}
.k-fx-tile.k-fx-reverse.k-fx-end .k-fx-next {
  -webkit-transform: translatex(0);
  -moz-transform: translatex(0);
  -ms-transform: translatex(0);
  -o-transform: translatex(0);
  transform: translatex(0);
}
.k-fx-tile.k-fx-right {
  /* right reverse */
}
.k-fx-tile.k-fx-right.k-fx-start .k-fx-next {
  -webkit-transform: translatex(-100%);
  -moz-transform: translatex(-100%);
  -ms-transform: translatex(-100%);
  -o-transform: translatex(-100%);
  transform: translatex(-100%);
}
.k-fx-tile.k-fx-right.k-fx-end .k-fx-current {
  -webkit-transform: translatex(100%);
  -moz-transform: translatex(100%);
  -ms-transform: translatex(100%);
  -o-transform: translatex(100%);
  transform: translatex(100%);
}
.k-fx-tile.k-fx-right.k-fx-reverse.k-fx-start .k-fx-current {
  -webkit-transform: translatex(0);
  -moz-transform: translatex(0);
  -ms-transform: translatex(0);
  -o-transform: translatex(0);
  transform: translatex(0);
}
.k-fx-tile.k-fx-right.k-fx-reverse.k-fx-end .k-fx-current {
  -webkit-transform: translatex(-100%);
  -moz-transform: translatex(-100%);
  -ms-transform: translatex(-100%);
  -o-transform: translatex(-100%);
  transform: translatex(-100%);
}
.k-fx-tile.k-fx-right.k-fx-reverse.k-fx-start .k-fx-next {
  -webkit-transform: translatex(100%);
  -moz-transform: translatex(100%);
  -ms-transform: translatex(100%);
  -o-transform: translatex(100%);
  transform: translatex(100%);
}
.k-fx-tile.k-fx-right.k-fx-reverse.k-fx-end .k-fx-next {
  -webkit-transform: translatex(0%);
  -moz-transform: translatex(0%);
  -ms-transform: translatex(0%);
  -o-transform: translatex(0%);
  transform: translatex(0%);
}
/* Overlay */
.k-fx.k-fx-overlay.k-fx-start .k-fx-next,
.k-fx.k-fx-overlay.k-fx-left.k-fx-start .k-fx-next {
  will-change: transform;
  -webkit-transform: translatex(100%);
  -moz-transform: translatex(100%);
  -ms-transform: translatex(100%);
  -o-transform: translatex(100%);
  transform: translatex(100%);
}
.k-fx.k-fx-overlay.k-fx-right.k-fx-start .k-fx-next {
  -webkit-transform: translatex(-100%);
  -moz-transform: translatex(-100%);
  -ms-transform: translatex(-100%);
  -o-transform: translatex(-100%);
  transform: translatex(-100%);
}
.k-fx.k-fx-overlay.k-fx-up.k-fx-start .k-fx-next {
  -webkit-transform: translatey(100%);
  -moz-transform: translatey(100%);
  -ms-transform: translatey(100%);
  -o-transform: translatey(100%);
  transform: translatey(100%);
}
.k-fx.k-fx-overlay.k-fx-down.k-fx-start .k-fx-next {
  -webkit-transform: translatey(-100%);
  -moz-transform: translatey(-100%);
  -ms-transform: translatey(-100%);
  -o-transform: translatey(-100%);
  transform: translatey(-100%);
}
.k-fx.k-fx-overlay.k-fx-reverse.k-fx-start .k-fx-next {
  -webkit-transform: none;
  -moz-transform: none;
  -ms-transform: none;
  -o-transform: none;
  transform: none;
}
.k-fx.k-fx-overlay.k-fx-reverse.k-fx-start .k-fx-current {
  will-change: transform;
  -webkit-transform: none;
  -moz-transform: none;
  -ms-transform: none;
  -o-transform: none;
  transform: none;
}
.k-fx.k-fx-overlay.k-fx-reverse.k-fx-end .k-fx-current,
.k-fx.k-fx-overlay.k-fx-reverse.k-fx-left.k-fx-end .k-fx-current {
  -webkit-transform: translatex(100%);
  -moz-transform: translatex(100%);
  -ms-transform: translatex(100%);
  -o-transform: translatex(100%);
  transform: translatex(100%);
}
.k-fx.k-fx-overlay.k-fx-reverse.k-fx-right.k-fx-end .k-fx-current {
  -webkit-transform: translatex(-100%);
  -moz-transform: translatex(-100%);
  -ms-transform: translatex(-100%);
  -o-transform: translatex(-100%);
  transform: translatex(-100%);
}
.k-fx.k-fx-overlay.k-fx-reverse.k-fx-up.k-fx-end .k-fx-current {
  -webkit-transform: translatey(100%);
  -moz-transform: translatey(100%);
  -ms-transform: translatey(100%);
  -o-transform: translatey(100%);
  transform: translatey(100%);
}
.k-fx.k-fx-overlay.k-fx-reverse.k-fx-down.k-fx-end .k-fx-current {
  -webkit-transform: translatey(-100%);
  -moz-transform: translatey(-100%);
  -ms-transform: translatey(-100%);
  -o-transform: translatey(-100%);
  transform: translatey(-100%);
}
/* Virtual List */
.k-virtual-wrap {
  position: relative;
}
.k-virtual-wrap .k-list.k-virtual-list {
  height: auto;
}
.k-virtual-content {
  overflow-y: scroll;
  /* has to be scroll, not auto */
  -webkit-overflow-scrolling: touch;
  position: relative;
}
.k-virtual-list > .k-virtual-content {
  position: absolute;
  top: 0;
  width: 100%;
  margin: 0;
  padding: 0;
  list-style-type: none;
}
.k-virtual-option-label {
  width: 100%;
  margin: 0;
  padding: 0;
  list-style-type: none;
}
.k-virtual-wrap > .k-virtual-header {
  text-align: right;
}
.k-popup .k-item.k-first {
  position: relative;
}
.k-virtual-content > .k-virtual-list > .k-virtual-item {
  position: absolute;
  width: 100%;
  box-sizing: border-box;
  overflow: hidden;
  white-space: nowrap;
}
.k-popup .k-list .k-item > .k-group,
.k-popup > .k-group-header,
.k-popup > .k-virtual-wrap > .k-group-header {
  text-transform: uppercase;
  font-size: .857em;
}
.k-popup .k-list .k-item > .k-group {
  position: absolute;
  top: 0;
  right: 0;
  padding: 0 .5em;
  line-height: 1.8;
}
.k-popup .k-state-hover > .k-group {
  right: -1px;
}
.k-virtual-item.k-first,
.k-group-header + .k-list > .k-item.k-first,
.k-static-header + .k-list > .k-item.k-first {
  border-top-style: solid;
  border-top-width: 1px;
  padding-top: 0;
}
.k-popup > .k-group-header,
.k-popup > .k-virtual-wrap > .k-group-header {
  text-align: right;
}
/* Default fonts for PDF export */
/* sans-serif */
@font-face {
  font-family: "DejaVu Sans";
  src: url("fonts/DejaVu/DejaVuSans.ttf") format("truetype");
}
@font-face {
  font-family: "DejaVu Sans";
  font-weight: bold;
  src: url("fonts/DejaVu/DejaVuSans-Bold.ttf") format("truetype");
}
@font-face {
  font-family: "DejaVu Sans";
  font-style: italic;
  src: url("fonts/DejaVu/DejaVuSans-Oblique.ttf") format("truetype");
}
@font-face {
  font-family: "DejaVu Sans";
  font-weight: bold;
  font-style: italic;
  src: url("fonts/DejaVu/DejaVuSans-BoldOblique.ttf") format("truetype");
}
/* serif */
@font-face {
  font-family: "DejaVu Serif";
  src: url("fonts/DejaVu/DejaVuSerif.ttf") format("truetype");
}
@font-face {
  font-family: "DejaVu Serif";
  font-weight: bold;
  src: url("fonts/DejaVu/DejaVuSerif-Bold.ttf") format("truetype");
}
@font-face {
  font-family: "DejaVu Serif";
  font-style: italic;
  src: url("fonts/DejaVu/DejaVuSerif-Italic.ttf") format("truetype");
}
@font-face {
  font-family: "DejaVu Serif";
  font-weight: bold;
  font-style: italic;
  src: url("fonts/DejaVu/DejaVuSerif-BoldItalic.ttf") format("truetype");
}
/* monospace */
@font-face {
  font-family: "DejaVu Mono";
  src: url("fonts/DejaVu/DejaVuSansMono.ttf") format("truetype");
}
@font-face {
  font-family: "DejaVu Mono";
  font-weight: bold;
  src: url("fonts/DejaVu/DejaVuSansMono-Bold.ttf") format("truetype");
}
@font-face {
  font-family: "DejaVu Mono";
  font-style: italic;
  src: url("fonts/DejaVu/DejaVuSansMono-Oblique.ttf") format("truetype");
}
@font-face {
  font-family: "DejaVu Mono";
  font-weight: bold;
  font-style: italic;
  src: url("fonts/DejaVu/DejaVuSansMono-BoldOblique.ttf") format("truetype");
}

/*
* Kendo UI v2015.3.1002 (http://www.telerik.com/kendo-ui)
* Copyright 2015 Telerik AD. All rights reserved.
*
* Kendo UI commercial licenses may be obtained at
* http://www.telerik.com/purchase/license-agreement/kendo-ui-complete
* If you do not own a commercial license, this file shall be governed by the trial license terms.
*/
/* Kendo base CSS */
.fake {
  color: red;
}
.k-reset {
  margin: 0;
  padding: 0;
  border: 0;
  outline: 0;
  text-decoration: none;
  font-size: 100%;
  list-style: none;
}
.k-floatwrap:after,
.k-slider-items:after,
.k-grid-toolbar:after {
  content: "";
  display: block;
  clear: both;
  visibility: hidden;
  height: 0;
  overflow: hidden;
}
.k-floatwrap,
.k-slider-items,
.k-grid-toolbar {
  display: inline-block;
}
.k-floatwrap,
.k-slider-items,
.k-grid-toolbar {
  display: block;
}
/* main gradient */
.k-block,
.k-button,
.k-header,
.k-grid-header,
.k-toolbar,
.k-grouping-header,
.k-tooltip,
.k-pager-wrap,
.k-tabstrip-items .k-item,
.k-link.k-state-hover,
.k-textbox,
.k-textbox:hover,
.k-autocomplete,
.k-dropdown-wrap,
.k-picker-wrap,
.k-numeric-wrap,
.k-autocomplete.k-state-hover,
.k-dropdown-wrap.k-state-hover,
.k-picker-wrap.k-state-hover,
.k-numeric-wrap.k-state-hover,
.k-draghandle {
  background-repeat: repeat;
  background-position: 0 center;
}
.k-link:hover {
  text-decoration: none;
}
.k-state-highlight > .k-link {
  color: inherit;
}
/* widget */
.k-textbox > input,
.k-input[type="text"],
.k-input[type="number"],
.k-textbox,
.k-picker-wrap .k-input,
.k-button {
  font-size: 100%;
  font-family: inherit;
  border-style: solid;
  border-width: 1px;
  -webkit-appearance: none;
}
.k-widget,
.k-block,
.k-inline-block,
.k-draghandle {
  border-style: solid;
  border-width: 1px;
  -webkit-appearance: none;
}
.k-block,
.k-widget {
  line-height: normal;
  outline: 0;
}
/* Block */
.k-block {
  padding: 2px;
}
/* button */
.k-button {
  display: inline-block;
  margin: 0;
  padding: 10px 14px;
  font-family: inherit;
  line-height: 1.72em;
  text-align: center;
  cursor: pointer;
  text-decoration: none;
}
.k-button[disabled],
.k-button.k-state-disabled,
.k-state-disabled .k-button,
.k-state-disabled .k-button:hover,
.k-button.k-state-disabled:hover,
.k-state-disabled .k-button:active,
.k-button.k-state-disabled:active {
  cursor: default;
}
a.k-button {
  -webkit-user-select: none;
     -moz-user-select: none;
      -ms-user-select: none;
          user-select: none;
  text-decoration: none;
}
/* Override the important default line-height in Firefox 4+ */
.k-ff input.k-button {
  padding-bottom: 0.37em;
  padding-top: 0.37em;
}
button.k-button::-moz-focus-inner,
input.k-button::-moz-focus-inner {
  padding: 0;
  border: 0;
}
a.k-button-expand {
  display: block;
}
button.k-button-expand,
input[type="submit"].k-button-expand,
input[type="button"].k-button-expand,
input[type="reset"].k-button-expand {
  width: 100%;
}
body .k-button-icon,
body .k-split-button-arrow {
  padding-left: .4em;
  padding-right: .4em;
}
.k-button-icontext {
  overflow: visible;
  /*IE9*/
}
.k-toolbar .k-button-icontext {
  padding-right: .8em;
}
.k-button-icontext .k-icon,
.k-button-icontext .k-image {
  margin-right: 3px;
  margin-right: .3rem;
  margin-left: -3px;
  margin-left: -0.3rem;
}
.k-button.k-button-icontext .k-icon,
.k-button.k-button-icontext .k-image {
  vertical-align: text-top;
}
html body .k-button-bare {
  background: none !important;
  /*spares long selectors*/
  color: inherit;
  border-width: 0;
}
html body .k-button-bare.k-upload-button:hover {
  color: inherit;
}
/* link */
.k-link {
  cursor: pointer;
  outline: 0;
  text-decoration: none;
}
.k-grid-header span.k-link {
  cursor: default;
}
/* states */
.k-state-disabled,
.k-state-disabled .k-link,
.k-state-disabled .k-icon,
.k-state-disabled .k-button,
.k-state-disabled .k-draghandle,
.k-state-disabled .k-upload-button input {
  cursor: default !important;
  outline: 0;
}
@media print {
  .k-state-disabled,
  .k-state-disabled .k-input {
    opacity: 1 !important;
  }
}
.k-state-error {
  border-style: ridge;
}
.k-state-empty {
  font-style: italic;
}
/* icons */
.k-icon,
.k-sprite,
.k-button-group .k-tool-icon {
  display: inline-block;
  width: 16px;
  height: 16px;
  overflow: hidden;
  background-repeat: no-repeat;
  font-size: 0;
  line-height: 0;
  text-align: center;
  -ms-high-contrast-adjust: none;
}
.k-icon.k-i-none {
  background-image: none !important;
  /* should never be a background on these */
}
/* In IE7 vertical align: middle can't be overridden */
.k-ie8 .k-icon,
.k-ie8 .k-sprite,
.k-ie8 .k-button-group .k-tool-icon {
  vertical-align: middle;
}
:root * > .k-icon,
:root * > .k-sprite,
:root * > .k-button-group .k-tool-icon {
  vertical-align: middle;
}
.k-icon,
.k-sprite {
  background-color: transparent;
}
.k-numerictextbox .k-select .k-link span.k-i-arrow-n {
  background-position: 0 -3px;
}
.k-numerictextbox .k-select .k-link span.k-i-arrow-s {
  background-position: 0 -35px;
}
.k-state-selected .k-i-arrow-n {
  background-position: -16px 0px;
}
.k-link:not(.k-state-disabled):hover > .k-state-selected .k-i-arrow-n,
.k-state-hover > .k-state-selected .k-i-arrow-n,
.k-state-hover > * > .k-state-selected .k-i-arrow-n,
.k-button:not(.k-state-disabled):hover .k-state-selected .k-i-arrow-n,
.k-textbox:hover .k-state-selected .k-i-arrow-n,
.k-button:active .k-state-selected .k-i-arrow-n {
  background-position: -16px 0px;
}
.k-numerictextbox .k-link.k-state-selected span.k-i-arrow-n,
.k-numerictextbox .k-state-hover .k-link span.k-i-arrow-n {
  background-position: -16px -3px;
}
.k-state-selected .k-i-arrow-s {
  background-position: -16px -32px;
}
.k-link:not(.k-state-disabled):hover > .k-state-selected .k-i-arrow-s,
.k-state-hover > .k-state-selected .k-i-arrow-s,
.k-state-hover > * > .k-state-selected .k-i-arrow-s,
.k-button:not(.k-state-disabled):hover .k-state-selected .k-i-arrow-s,
.k-textbox:hover .k-state-selected .k-i-arrow-s,
.k-button:active .k-state-selected .k-i-arrow-s {
  background-position: -16px -32px;
}
.k-numerictextbox .k-link.k-state-selected span.k-i-arrow-s,
.k-numerictextbox .k-state-hover .k-link span.k-i-arrow-s {
  background-position: -16px -35px;
}
.k-grid-header th > .k-link:hover span.k-i-arrow-n {
  background-position: 0px 0px;
}
.k-grid-header th > .k-link:hover span.k-i-arrow-s {
  background-position: 0px -32px;
}
.k-group-indicator .k-link:hover span.k-si-arrow-n {
  background-position: 0 -129px;
}
.k-group-indicator .k-link:hover span.k-si-arrow-s {
  background-position: 0 -159px;
}
.k-group-indicator .k-button:hover span.k-group-delete {
  background-position: -32px -16px;
}
.k-scheduler .k-scheduler-toolbar .k-nav-current .k-link .k-i-calendar {
  background-position: -32px -176px;
}
.k-i-arrow-n {
  background-position: 0px 0px;
}
.k-link:not(.k-state-disabled):hover > .k-i-arrow-n,
.k-state-hover > .k-i-arrow-n,
.k-state-hover > * > .k-i-arrow-n,
.k-button:not(.k-state-disabled):hover .k-i-arrow-n,
.k-textbox:hover .k-i-arrow-n,
.k-button:active .k-i-arrow-n {
  background-position: 0px 0px;
}
.k-i-arrow-e {
  background-position: 0px -16px;
}
.k-link:not(.k-state-disabled):hover > .k-i-arrow-e,
.k-state-hover > .k-i-arrow-e,
.k-state-hover > * > .k-i-arrow-e,
.k-button:not(.k-state-disabled):hover .k-i-arrow-e,
.k-textbox:hover .k-i-arrow-e,
.k-button:active .k-i-arrow-e {
  background-position: 0px -16px;
}
.k-rtl .k-i-arrow-w {
  background-position: 0px -16px;
}
.k-rtl .k-link:not(.k-state-disabled):hover > .k-i-arrow-w,
.k-rtl .k-state-hover > .k-i-arrow-w,
.k-rtl .k-state-hover > * > .k-i-arrow-w,
.k-rtl .k-button:not(.k-state-disabled):hover .k-i-arrow-w,
.k-rtl .k-textbox:hover .k-i-arrow-w,
.k-rtl .k-button:active .k-i-arrow-w {
  background-position: -16px -16px;
  background-position: 0px -16px;
}
.k-i-arrow-s {
  background-position: 0px -32px;
}
.k-link:not(.k-state-disabled):hover > .k-i-arrow-s,
.k-state-hover > .k-i-arrow-s,
.k-state-hover > * > .k-i-arrow-s,
.k-button:not(.k-state-disabled):hover .k-i-arrow-s,
.k-textbox:hover .k-i-arrow-s,
.k-button:active .k-i-arrow-s {
  background-position: 0px -32px;
}
.k-i-arrow-w {
  background-position: 0px -48px;
}
.k-link:not(.k-state-disabled):hover > .k-i-arrow-w,
.k-state-hover > .k-i-arrow-w,
.k-state-hover > * > .k-i-arrow-w,
.k-button:not(.k-state-disabled):hover .k-i-arrow-w,
.k-textbox:hover .k-i-arrow-w,
.k-button:active .k-i-arrow-w {
  background-position: 0px -48px;
}
.k-rtl .k-i-arrow-e {
  background-position: 0px -48px;
}
.k-rtl .k-link:not(.k-state-disabled):hover > .k-i-arrow-e,
.k-rtl .k-state-hover > .k-i-arrow-e,
.k-rtl .k-state-hover > * > .k-i-arrow-e,
.k-rtl .k-button:not(.k-state-disabled):hover .k-i-arrow-e,
.k-rtl .k-textbox:hover .k-i-arrow-e,
.k-rtl .k-button:active .k-i-arrow-e {
  background-position: -16px -48px;
  background-position: 0px -48px;
}
.k-i-seek-n {
  background-position: 0px -64px;
}
.k-link:not(.k-state-disabled):hover > .k-i-seek-n,
.k-state-hover > .k-i-seek-n,
.k-state-hover > * > .k-i-seek-n,
.k-button:not(.k-state-disabled):hover .k-i-seek-n,
.k-textbox:hover .k-i-seek-n,
.k-button:active .k-i-seek-n {
  background-position: 0px -64px;
}
.k-i-seek-e {
  background-position: 0px -80px;
}
.k-link:not(.k-state-disabled):hover > .k-i-seek-e,
.k-state-hover > .k-i-seek-e,
.k-state-hover > * > .k-i-seek-e,
.k-button:not(.k-state-disabled):hover .k-i-seek-e,
.k-textbox:hover .k-i-seek-e,
.k-button:active .k-i-seek-e {
  background-position: 0px -80px;
}
.k-rtl .k-i-seek-w {
  background-position: 0px -80px;
}
.k-rtl .k-link:not(.k-state-disabled):hover > .k-i-seek-w,
.k-rtl .k-state-hover > .k-i-seek-w,
.k-rtl .k-state-hover > * > .k-i-seek-w,
.k-rtl .k-button:not(.k-state-disabled):hover .k-i-seek-w,
.k-rtl .k-textbox:hover .k-i-seek-w,
.k-rtl .k-button:active .k-i-seek-w {
  background-position: -16px -80px;
  background-position: 0px -80px;
}
.k-i-seek-s {
  background-position: 0px -96px;
}
.k-link:not(.k-state-disabled):hover > .k-i-seek-s,
.k-state-hover > .k-i-seek-s,
.k-state-hover > * > .k-i-seek-s,
.k-button:not(.k-state-disabled):hover .k-i-seek-s,
.k-textbox:hover .k-i-seek-s,
.k-button:active .k-i-seek-s {
  background-position: 0px -96px;
}
.k-i-seek-w {
  background-position: 0px -112px;
}
.k-link:not(.k-state-disabled):hover > .k-i-seek-w,
.k-state-hover > .k-i-seek-w,
.k-state-hover > * > .k-i-seek-w,
.k-button:not(.k-state-disabled):hover .k-i-seek-w,
.k-textbox:hover .k-i-seek-w,
.k-button:active .k-i-seek-w {
  background-position: 0px -112px;
}
.k-rtl .k-i-seek-e {
  background-position: 0px -112px;
}
.k-rtl .k-link:not(.k-state-disabled):hover > .k-i-seek-e,
.k-rtl .k-state-hover > .k-i-seek-e,
.k-rtl .k-state-hover > * > .k-i-seek-e,
.k-rtl .k-button:not(.k-state-disabled):hover .k-i-seek-e,
.k-rtl .k-textbox:hover .k-i-seek-e,
.k-rtl .k-button:active .k-i-seek-e {
  background-position: -16px -112px;
  background-position: 0px -112px;
}
.k-si-arrow-n {
  background-position: 0 -129px;
}
.k-link:not(.k-state-disabled):hover > .k-si-arrow-n,
.k-state-hover > .k-si-arrow-n,
.k-state-hover > * > .k-si-arrow-n,
.k-button:not(.k-state-disabled):hover .k-si-arrow-n,
.k-textbox:hover .k-si-arrow-n,
.k-button:active .k-si-arrow-n {
  background-position: -16px -129px;
}
.k-si-arrow-e {
  background-position: 0px -144px;
}
.k-link:not(.k-state-disabled):hover > .k-si-arrow-e,
.k-state-hover > .k-si-arrow-e,
.k-state-hover > * > .k-si-arrow-e,
.k-button:not(.k-state-disabled):hover .k-si-arrow-e,
.k-textbox:hover .k-si-arrow-e,
.k-button:active .k-si-arrow-e {
  background-position: 0px -144px;
}
.k-si-arrow-s {
  background-position: 0 -159px;
}
.k-link:not(.k-state-disabled):hover > .k-si-arrow-s,
.k-state-hover > .k-si-arrow-s,
.k-state-hover > * > .k-si-arrow-s,
.k-button:not(.k-state-disabled):hover .k-si-arrow-s,
.k-textbox:hover .k-si-arrow-s,
.k-button:active .k-si-arrow-s {
  background-position: -16px -159px;
}
.k-si-arrow-w {
  background-position: 0px -176px;
}
.k-link:not(.k-state-disabled):hover > .k-si-arrow-w,
.k-state-hover > .k-si-arrow-w,
.k-state-hover > * > .k-si-arrow-w,
.k-button:not(.k-state-disabled):hover .k-si-arrow-w,
.k-textbox:hover .k-si-arrow-w,
.k-button:active .k-si-arrow-w {
  background-position: 0px -176px;
}
.k-i-arrowhead-n {
  background-position: 0px -256px;
}
.k-link:not(.k-state-disabled):hover > .k-i-arrowhead-n,
.k-state-hover > .k-i-arrowhead-n,
.k-state-hover > * > .k-i-arrowhead-n,
.k-button:not(.k-state-disabled):hover .k-i-arrowhead-n,
.k-textbox:hover .k-i-arrowhead-n,
.k-button:active .k-i-arrowhead-n {
  background-position: 0px -256px;
}
.k-i-arrowhead-e {
  background-position: 0px -272px;
}
.k-link:not(.k-state-disabled):hover > .k-i-arrowhead-e,
.k-state-hover > .k-i-arrowhead-e,
.k-state-hover > * > .k-i-arrowhead-e,
.k-button:not(.k-state-disabled):hover .k-i-arrowhead-e,
.k-textbox:hover .k-i-arrowhead-e,
.k-button:active .k-i-arrowhead-e {
  background-position: 0px -272px;
}
.k-i-arrowhead-s {
  background-position: 0px -288px;
}
.k-link:not(.k-state-disabled):hover > .k-i-arrowhead-s,
.k-state-hover > .k-i-arrowhead-s,
.k-state-hover > * > .k-i-arrowhead-s,
.k-button:not(.k-state-disabled):hover .k-i-arrowhead-s,
.k-textbox:hover .k-i-arrowhead-s,
.k-button:active .k-i-arrowhead-s {
  background-position: 0px -288px;
}
.k-i-arrowhead-w {
  background-position: 0px -304px;
}
.k-link:not(.k-state-disabled):hover > .k-i-arrowhead-w,
.k-state-hover > .k-i-arrowhead-w,
.k-state-hover > * > .k-i-arrowhead-w,
.k-button:not(.k-state-disabled):hover .k-i-arrowhead-w,
.k-textbox:hover .k-i-arrowhead-w,
.k-button:active .k-i-arrowhead-w {
  background-position: 0px -304px;
}
.k-i-expand,
.k-plus,
.k-plus-disabled {
  background-position: 0px -192px;
}
.k-link:not(.k-state-disabled):hover > .k-i-expand,
.k-link:not(.k-state-disabled):hover > .k-plus,
.k-link:not(.k-state-disabled):hover > .k-plus-disabled,
.k-state-hover > .k-i-expand,
.k-state-hover > .k-plus,
.k-state-hover > .k-plus-disabled,
.k-state-hover > * > .k-i-expand,
.k-state-hover > * > .k-plus,
.k-state-hover > * > .k-plus-disabled,
.k-button:not(.k-state-disabled):hover .k-i-expand,
.k-button:not(.k-state-disabled):hover .k-plus,
.k-button:not(.k-state-disabled):hover .k-plus-disabled,
.k-textbox:hover .k-i-expand,
.k-textbox:hover .k-plus,
.k-textbox:hover .k-plus-disabled,
.k-button:active .k-i-expand,
.k-button:active .k-plus,
.k-button:active .k-plus-disabled {
  background-position: 0px -192px;
}
.k-i-expand-w,
.k-rtl .k-i-expand,
.k-rtl .k-plus,
.k-rtl .k-plus-disabled {
  background-position: 0px -208px;
}
.k-link:not(.k-state-disabled):hover > .k-i-expand-w,
.k-link:not(.k-state-disabled):hover > .k-rtl .k-i-expand,
.k-link:not(.k-state-disabled):hover > .k-rtl .k-plus,
.k-link:not(.k-state-disabled):hover > .k-rtl .k-plus-disabled,
.k-state-hover > .k-i-expand-w,
.k-state-hover > .k-rtl .k-i-expand,
.k-state-hover > .k-rtl .k-plus,
.k-state-hover > .k-rtl .k-plus-disabled,
.k-state-hover > * > .k-i-expand-w,
.k-state-hover > * > .k-rtl .k-i-expand,
.k-state-hover > * > .k-rtl .k-plus,
.k-state-hover > * > .k-rtl .k-plus-disabled,
.k-button:not(.k-state-disabled):hover .k-i-expand-w,
.k-button:not(.k-state-disabled):hover .k-rtl .k-i-expand,
.k-button:not(.k-state-disabled):hover .k-rtl .k-plus,
.k-button:not(.k-state-disabled):hover .k-rtl .k-plus-disabled,
.k-textbox:hover .k-i-expand-w,
.k-textbox:hover .k-rtl .k-i-expand,
.k-textbox:hover .k-rtl .k-plus,
.k-textbox:hover .k-rtl .k-plus-disabled,
.k-button:active .k-i-expand-w,
.k-button:active .k-rtl .k-i-expand,
.k-button:active .k-rtl .k-plus,
.k-button:active .k-rtl .k-plus-disabled {
  background-position: 0px -208px;
}
.k-i-collapse,
.k-minus,
.k-minus-disabled {
  background-position: 0px -224px;
}
.k-link:not(.k-state-disabled):hover > .k-i-collapse,
.k-link:not(.k-state-disabled):hover > .k-minus,
.k-link:not(.k-state-disabled):hover > .k-minus-disabled,
.k-state-hover > .k-i-collapse,
.k-state-hover > .k-minus,
.k-state-hover > .k-minus-disabled,
.k-state-hover > * > .k-i-collapse,
.k-state-hover > * > .k-minus,
.k-state-hover > * > .k-minus-disabled,
.k-button:not(.k-state-disabled):hover .k-i-collapse,
.k-button:not(.k-state-disabled):hover .k-minus,
.k-button:not(.k-state-disabled):hover .k-minus-disabled,
.k-textbox:hover .k-i-collapse,
.k-textbox:hover .k-minus,
.k-textbox:hover .k-minus-disabled,
.k-button:active .k-i-collapse,
.k-button:active .k-minus,
.k-button:active .k-minus-disabled {
  background-position: 0px -224px;
}
.k-i-collapse-w,
.k-rtl .k-i-collapse,
.k-rtl .k-minus,
.k-rtl .k-minus-disabled {
  background-position: 0px -240px;
}
.k-link:not(.k-state-disabled):hover > .k-i-collapse-w,
.k-link:not(.k-state-disabled):hover > .k-rtl .k-i-collapse,
.k-link:not(.k-state-disabled):hover > .k-rtl .k-minus,
.k-link:not(.k-state-disabled):hover > .k-rtl .k-minus-disabled,
.k-state-hover > .k-i-collapse-w,
.k-state-hover > .k-rtl .k-i-collapse,
.k-state-hover > .k-rtl .k-minus,
.k-state-hover > .k-rtl .k-minus-disabled,
.k-state-hover > * > .k-i-collapse-w,
.k-state-hover > * > .k-rtl .k-i-collapse,
.k-state-hover > * > .k-rtl .k-minus,
.k-state-hover > * > .k-rtl .k-minus-disabled,
.k-button:not(.k-state-disabled):hover .k-i-collapse-w,
.k-button:not(.k-state-disabled):hover .k-rtl .k-i-collapse,
.k-button:not(.k-state-disabled):hover .k-rtl .k-minus,
.k-button:not(.k-state-disabled):hover .k-rtl .k-minus-disabled,
.k-textbox:hover .k-i-collapse-w,
.k-textbox:hover .k-rtl .k-i-collapse,
.k-textbox:hover .k-rtl .k-minus,
.k-textbox:hover .k-rtl .k-minus-disabled,
.k-button:active .k-i-collapse-w,
.k-button:active .k-rtl .k-i-collapse,
.k-button:active .k-rtl .k-minus,
.k-button:active .k-rtl .k-minus-disabled {
  background-position: 0px -240px;
}
.k-i-pencil,
.k-edit {
  background-position: -32px 0px;
}
.k-link:not(.k-state-disabled):hover > .k-i-pencil,
.k-link:not(.k-state-disabled):hover > .k-edit,
.k-state-hover > .k-i-pencil,
.k-state-hover > .k-edit,
.k-state-hover > * > .k-i-pencil,
.k-state-hover > * > .k-edit,
.k-button:not(.k-state-disabled):hover .k-i-pencil,
.k-button:not(.k-state-disabled):hover .k-edit,
.k-textbox:hover .k-i-pencil,
.k-textbox:hover .k-edit,
.k-button:active .k-i-pencil,
.k-button:active .k-edit {
  background-position: -32px 0px;
}
.k-i-close,
.k-delete,
.k-group-delete {
  background-position: -32px -16px;
}
.k-link:not(.k-state-disabled):hover > .k-i-close,
.k-link:not(.k-state-disabled):hover > .k-delete,
.k-link:not(.k-state-disabled):hover > .k-group-delete,
.k-state-hover > .k-i-close,
.k-state-hover > .k-delete,
.k-state-hover > .k-group-delete,
.k-state-hover > * > .k-i-close,
.k-state-hover > * > .k-delete,
.k-state-hover > * > .k-group-delete,
.k-button:not(.k-state-disabled):hover .k-i-close,
.k-button:not(.k-state-disabled):hover .k-delete,
.k-button:not(.k-state-disabled):hover .k-group-delete,
.k-textbox:hover .k-i-close,
.k-textbox:hover .k-delete,
.k-textbox:hover .k-group-delete,
.k-button:active .k-i-close,
.k-button:active .k-delete,
.k-button:active .k-group-delete {
  background-position: -32px -16px;
}
.k-si-close {
  background-position: -160px -80px;
}
.k-link:not(.k-state-disabled):hover > .k-si-close,
.k-state-hover > .k-si-close,
.k-state-hover > * > .k-si-close,
.k-button:not(.k-state-disabled):hover .k-si-close,
.k-textbox:hover .k-si-close,
.k-button:active .k-si-close {
  background-position: -160px -80px;
}
.k-multiselect .k-delete {
  background-position: -160px -80px;
}
.k-multiselect .k-state-hover .k-delete {
  background-position: -176px -80px;
}
.k-i-tick,
.k-insert,
.k-update {
  background-position: -32px -32px;
}
.k-link:not(.k-state-disabled):hover > .k-i-tick,
.k-link:not(.k-state-disabled):hover > .k-insert,
.k-link:not(.k-state-disabled):hover > .k-update,
.k-state-hover > .k-i-tick,
.k-state-hover > .k-insert,
.k-state-hover > .k-update,
.k-state-hover > * > .k-i-tick,
.k-state-hover > * > .k-insert,
.k-state-hover > * > .k-update,
.k-button:not(.k-state-disabled):hover .k-i-tick,
.k-button:not(.k-state-disabled):hover .k-insert,
.k-button:not(.k-state-disabled):hover .k-update,
.k-textbox:hover .k-i-tick,
.k-textbox:hover .k-insert,
.k-textbox:hover .k-update,
.k-button:active .k-i-tick,
.k-button:active .k-insert,
.k-button:active .k-update {
  background-position: -32px -32px;
}
.k-check:checked,
.k-mobile-list .k-edit-field [type=checkbox],
.k-mobile-list .k-edit-field [type=radio] {
  background-position: -32px -32px;
}
.k-link:not(.k-state-disabled):hover > .k-check:checked,
.k-link:not(.k-state-disabled):hover > .k-mobile-list .k-edit-field [type=checkbox],
.k-link:not(.k-state-disabled):hover > .k-mobile-list .k-edit-field [type=radio],
.k-state-hover > .k-check:checked,
.k-state-hover > .k-mobile-list .k-edit-field [type=checkbox],
.k-state-hover > .k-mobile-list .k-edit-field [type=radio],
.k-state-hover > * > .k-check:checked,
.k-state-hover > * > .k-mobile-list .k-edit-field [type=checkbox],
.k-state-hover > * > .k-mobile-list .k-edit-field [type=radio],
.k-button:not(.k-state-disabled):hover .k-check:checked,
.k-button:not(.k-state-disabled):hover .k-mobile-list .k-edit-field [type=checkbox],
.k-button:not(.k-state-disabled):hover .k-mobile-list .k-edit-field [type=radio],
.k-textbox:hover .k-check:checked,
.k-textbox:hover .k-mobile-list .k-edit-field [type=checkbox],
.k-textbox:hover .k-mobile-list .k-edit-field [type=radio],
.k-button:active .k-check:checked,
.k-button:active .k-mobile-list .k-edit-field [type=checkbox],
.k-button:active .k-mobile-list .k-edit-field [type=radio] {
  background-position: -32px -32px;
}
.k-i-cancel,
.k-cancel,
.k-denied {
  background-position: -32px -48px;
}
.k-link:not(.k-state-disabled):hover > .k-i-cancel,
.k-link:not(.k-state-disabled):hover > .k-cancel,
.k-link:not(.k-state-disabled):hover > .k-denied,
.k-state-hover > .k-i-cancel,
.k-state-hover > .k-cancel,
.k-state-hover > .k-denied,
.k-state-hover > * > .k-i-cancel,
.k-state-hover > * > .k-cancel,
.k-state-hover > * > .k-denied,
.k-button:not(.k-state-disabled):hover .k-i-cancel,
.k-button:not(.k-state-disabled):hover .k-cancel,
.k-button:not(.k-state-disabled):hover .k-denied,
.k-textbox:hover .k-i-cancel,
.k-textbox:hover .k-cancel,
.k-textbox:hover .k-denied,
.k-button:active .k-i-cancel,
.k-button:active .k-cancel,
.k-button:active .k-denied {
  background-position: -32px -48px;
}
.k-i-plus,
.k-add {
  background-position: -32px -64px;
}
.k-link:not(.k-state-disabled):hover > .k-i-plus,
.k-link:not(.k-state-disabled):hover > .k-add,
.k-state-hover > .k-i-plus,
.k-state-hover > .k-add,
.k-state-hover > * > .k-i-plus,
.k-state-hover > * > .k-add,
.k-button:not(.k-state-disabled):hover .k-i-plus,
.k-button:not(.k-state-disabled):hover .k-add,
.k-textbox:hover .k-i-plus,
.k-textbox:hover .k-add,
.k-button:active .k-i-plus,
.k-button:active .k-add {
  background-position: -32px -64px;
}
.k-i-funnel,
.k-filter {
  background-position: -32px -80px;
}
.k-link:not(.k-state-disabled):hover > .k-i-funnel,
.k-link:not(.k-state-disabled):hover > .k-filter,
.k-state-hover > .k-i-funnel,
.k-state-hover > .k-filter,
.k-state-hover > * > .k-i-funnel,
.k-state-hover > * > .k-filter,
.k-button:not(.k-state-disabled):hover .k-i-funnel,
.k-button:not(.k-state-disabled):hover .k-filter,
.k-textbox:hover .k-i-funnel,
.k-textbox:hover .k-filter,
.k-button:active .k-i-funnel,
.k-button:active .k-filter {
  background-position: -32px -80px;
}
.k-i-funnel-clear,
.k-clear-filter {
  background-position: -32px -96px;
}
.k-link:not(.k-state-disabled):hover > .k-i-funnel-clear,
.k-link:not(.k-state-disabled):hover > .k-clear-filter,
.k-state-hover > .k-i-funnel-clear,
.k-state-hover > .k-clear-filter,
.k-state-hover > * > .k-i-funnel-clear,
.k-state-hover > * > .k-clear-filter,
.k-button:not(.k-state-disabled):hover .k-i-funnel-clear,
.k-button:not(.k-state-disabled):hover .k-clear-filter,
.k-textbox:hover .k-i-funnel-clear,
.k-textbox:hover .k-clear-filter,
.k-button:active .k-i-funnel-clear,
.k-button:active .k-clear-filter {
  background-position: -32px -96px;
}
.k-i-lock {
  background-position: -64px 0px;
}
.k-link:not(.k-state-disabled):hover > .k-i-lock,
.k-state-hover > .k-i-lock,
.k-state-hover > * > .k-i-lock,
.k-button:not(.k-state-disabled):hover .k-i-lock,
.k-textbox:hover .k-i-lock,
.k-button:active .k-i-lock {
  background-position: -64px 0px;
}
.k-i-unlock {
  background-position: -64px -16px;
}
.k-link:not(.k-state-disabled):hover > .k-i-unlock,
.k-state-hover > .k-i-unlock,
.k-state-hover > * > .k-i-unlock,
.k-button:not(.k-state-disabled):hover .k-i-unlock,
.k-textbox:hover .k-i-unlock,
.k-button:active .k-i-unlock {
  background-position: -64px -16px;
}
.k-i-refresh {
  background-position: -32px -112px;
}
.k-link:not(.k-state-disabled):hover > .k-i-refresh,
.k-state-hover > .k-i-refresh,
.k-state-hover > * > .k-i-refresh,
.k-button:not(.k-state-disabled):hover .k-i-refresh,
.k-textbox:hover .k-i-refresh,
.k-button:active .k-i-refresh {
  background-position: -32px -112px;
}
.k-i-exception {
  background-position: -160px -304px;
}
.k-link:not(.k-state-disabled):hover > .k-i-exception,
.k-state-hover > .k-i-exception,
.k-state-hover > * > .k-i-exception,
.k-button:not(.k-state-disabled):hover .k-i-exception,
.k-textbox:hover .k-i-exception,
.k-button:active .k-i-exception {
  background-position: -160px -304px;
}
.k-i-restore {
  background-position: -32px -128px;
}
.k-link:not(.k-state-disabled):hover > .k-i-restore,
.k-state-hover > .k-i-restore,
.k-state-hover > * > .k-i-restore,
.k-button:not(.k-state-disabled):hover .k-i-restore,
.k-textbox:hover .k-i-restore,
.k-button:active .k-i-restore {
  background-position: -32px -128px;
}
.k-i-maximize {
  background-position: -32px -144px;
}
.k-link:not(.k-state-disabled):hover > .k-i-maximize,
.k-state-hover > .k-i-maximize,
.k-state-hover > * > .k-i-maximize,
.k-button:not(.k-state-disabled):hover .k-i-maximize,
.k-textbox:hover .k-i-maximize,
.k-button:active .k-i-maximize {
  background-position: -32px -144px;
}
.k-i-minimize {
  background-position: -64px -288px;
}
.k-link:not(.k-state-disabled):hover > .k-i-minimize,
.k-state-hover > .k-i-minimize,
.k-state-hover > * > .k-i-minimize,
.k-button:not(.k-state-disabled):hover .k-i-minimize,
.k-textbox:hover .k-i-minimize,
.k-button:active .k-i-minimize {
  background-position: -64px -288px;
}
.k-i-pin {
  background-position: -160px -256px;
}
.k-link:not(.k-state-disabled):hover > .k-i-pin,
.k-state-hover > .k-i-pin,
.k-state-hover > * > .k-i-pin,
.k-button:not(.k-state-disabled):hover .k-i-pin,
.k-textbox:hover .k-i-pin,
.k-button:active .k-i-pin {
  background-position: -160px -256px;
}
.k-i-unpin {
  background-position: -160px -272px;
}
.k-link:not(.k-state-disabled):hover > .k-i-unpin,
.k-state-hover > .k-i-unpin,
.k-state-hover > * > .k-i-unpin,
.k-button:not(.k-state-disabled):hover .k-i-unpin,
.k-textbox:hover .k-i-unpin,
.k-button:active .k-i-unpin {
  background-position: -160px -272px;
}
.k-resize-se {
  background-position: -32px -160px;
}
.k-link:not(.k-state-disabled):hover > .k-resize-se,
.k-state-hover > .k-resize-se,
.k-state-hover > * > .k-resize-se,
.k-button:not(.k-state-disabled):hover .k-resize-se,
.k-textbox:hover .k-resize-se,
.k-button:active .k-resize-se {
  background-position: -32px -160px;
}
.k-i-calendar {
  background-position: -32px -176px;
}
.k-link:not(.k-state-disabled):hover > .k-i-calendar,
.k-state-hover > .k-i-calendar,
.k-state-hover > * > .k-i-calendar,
.k-button:not(.k-state-disabled):hover .k-i-calendar,
.k-textbox:hover .k-i-calendar,
.k-button:active .k-i-calendar {
  background-position: -32px -176px;
}
.k-i-clock {
  background-position: -32px -192px;
}
.k-link:not(.k-state-disabled):hover > .k-i-clock,
.k-state-hover > .k-i-clock,
.k-state-hover > * > .k-i-clock,
.k-button:not(.k-state-disabled):hover .k-i-clock,
.k-textbox:hover .k-i-clock,
.k-button:active .k-i-clock {
  background-position: -32px -192px;
}
.k-si-plus {
  background-position: -32px -208px;
}
.k-link:not(.k-state-disabled):hover > .k-si-plus,
.k-state-hover > .k-si-plus,
.k-state-hover > * > .k-si-plus,
.k-button:not(.k-state-disabled):hover .k-si-plus,
.k-textbox:hover .k-si-plus,
.k-button:active .k-si-plus {
  background-position: -32px -208px;
}
.k-si-minus {
  background-position: -32px -224px;
}
.k-link:not(.k-state-disabled):hover > .k-si-minus,
.k-state-hover > .k-si-minus,
.k-state-hover > * > .k-si-minus,
.k-button:not(.k-state-disabled):hover .k-si-minus,
.k-textbox:hover .k-si-minus,
.k-button:active .k-si-minus {
  background-position: -32px -224px;
}
.k-i-search {
  background-position: -32px -240px;
}
.k-link:not(.k-state-disabled):hover > .k-i-search,
.k-state-hover > .k-i-search,
.k-state-hover > * > .k-i-search,
.k-button:not(.k-state-disabled):hover .k-i-search,
.k-textbox:hover .k-i-search,
.k-button:active .k-i-search {
  background-position: -32px -240px;
}
.k-i-custom {
  background-position: -115px -113px;
}
.k-link:not(.k-state-disabled):hover > .k-i-custom,
.k-state-hover > .k-i-custom,
.k-state-hover > * > .k-i-custom,
.k-button:not(.k-state-disabled):hover .k-i-custom,
.k-textbox:hover .k-i-custom,
.k-button:active .k-i-custom {
  background-position: -141px -113px;
}
.k-editor .k-i-custom {
  background-position: -111px -109px;
}
.k-viewHtml {
  background-position: -288px -120px;
}
.k-i-insert-n,
.k-insert-top {
  background-position: -160px -32px;
}
.k-link:not(.k-state-disabled):hover > .k-i-insert-n,
.k-link:not(.k-state-disabled):hover > .k-insert-top,
.k-state-hover > .k-i-insert-n,
.k-state-hover > .k-insert-top,
.k-state-hover > * > .k-i-insert-n,
.k-state-hover > * > .k-insert-top,
.k-button:not(.k-state-disabled):hover .k-i-insert-n,
.k-button:not(.k-state-disabled):hover .k-insert-top,
.k-textbox:hover .k-i-insert-n,
.k-textbox:hover .k-insert-top,
.k-button:active .k-i-insert-n,
.k-button:active .k-insert-top {
  background-position: -160px -32px;
}
.k-i-insert-m,
.k-insert-middle {
  background-position: -160px -48px;
}
.k-link:not(.k-state-disabled):hover > .k-i-insert-m,
.k-link:not(.k-state-disabled):hover > .k-insert-middle,
.k-state-hover > .k-i-insert-m,
.k-state-hover > .k-insert-middle,
.k-state-hover > * > .k-i-insert-m,
.k-state-hover > * > .k-insert-middle,
.k-button:not(.k-state-disabled):hover .k-i-insert-m,
.k-button:not(.k-state-disabled):hover .k-insert-middle,
.k-textbox:hover .k-i-insert-m,
.k-textbox:hover .k-insert-middle,
.k-button:active .k-i-insert-m,
.k-button:active .k-insert-middle {
  background-position: -160px -48px;
}
.k-i-insert-s,
.k-insert-bottom {
  background-position: -160px -64px;
}
.k-link:not(.k-state-disabled):hover > .k-i-insert-s,
.k-link:not(.k-state-disabled):hover > .k-insert-bottom,
.k-state-hover > .k-i-insert-s,
.k-state-hover > .k-insert-bottom,
.k-state-hover > * > .k-i-insert-s,
.k-state-hover > * > .k-insert-bottom,
.k-button:not(.k-state-disabled):hover .k-i-insert-s,
.k-button:not(.k-state-disabled):hover .k-insert-bottom,
.k-textbox:hover .k-i-insert-s,
.k-textbox:hover .k-insert-bottom,
.k-button:active .k-i-insert-s,
.k-button:active .k-insert-bottom {
  background-position: -160px -64px;
}
.k-drop-hint {
  background-position: 0 -326px;
}
.k-i-note,
.k-warning {
  background-position: -160px -240px;
}
.k-link:not(.k-state-disabled):hover > .k-i-note,
.k-link:not(.k-state-disabled):hover > .k-warning,
.k-state-hover > .k-i-note,
.k-state-hover > .k-warning,
.k-state-hover > * > .k-i-note,
.k-state-hover > * > .k-warning,
.k-button:not(.k-state-disabled):hover .k-i-note,
.k-button:not(.k-state-disabled):hover .k-warning,
.k-textbox:hover .k-i-note,
.k-textbox:hover .k-warning,
.k-button:active .k-i-note,
.k-button:active .k-warning {
  background-position: -160px -240px;
}
.k-i-sort-asc {
  background-position: -112px -240px;
}
.k-link:not(.k-state-disabled):hover > .k-i-sort-asc,
.k-state-hover > .k-i-sort-asc,
.k-state-hover > * > .k-i-sort-asc,
.k-button:not(.k-state-disabled):hover .k-i-sort-asc,
.k-textbox:hover .k-i-sort-asc,
.k-button:active .k-i-sort-asc {
  background-position: -112px -240px;
}
.k-i-sort-desc {
  background-position: -112px -256px;
}
.k-link:not(.k-state-disabled):hover > .k-i-sort-desc,
.k-state-hover > .k-i-sort-desc,
.k-state-hover > * > .k-i-sort-desc,
.k-button:not(.k-state-disabled):hover .k-i-sort-desc,
.k-textbox:hover .k-i-sort-desc,
.k-button:active .k-i-sort-desc {
  background-position: -112px -256px;
}
.k-i-group {
  background-position: -112px -272px;
}
.k-link:not(.k-state-disabled):hover > .k-i-group,
.k-state-hover > .k-i-group,
.k-state-hover > * > .k-i-group,
.k-button:not(.k-state-disabled):hover .k-i-group,
.k-textbox:hover .k-i-group,
.k-button:active .k-i-group {
  background-position: -112px -272px;
}
.k-i-ungroup {
  background-position: -112px -288px;
}
.k-link:not(.k-state-disabled):hover > .k-i-ungroup,
.k-state-hover > .k-i-ungroup,
.k-state-hover > * > .k-i-ungroup,
.k-button:not(.k-state-disabled):hover .k-i-ungroup,
.k-textbox:hover .k-i-ungroup,
.k-button:active .k-i-ungroup {
  background-position: -112px -288px;
}
.k-i-columns {
  background-position: -112px -304px;
}
.k-link:not(.k-state-disabled):hover > .k-i-columns,
.k-state-hover > .k-i-columns,
.k-state-hover > * > .k-i-columns,
.k-button:not(.k-state-disabled):hover .k-i-columns,
.k-textbox:hover .k-i-columns,
.k-button:active .k-i-columns {
  background-position: -112px -304px;
}
.k-i-hbars {
  background-position: -64px -32px;
}
.k-link:not(.k-state-disabled):hover > .k-i-hbars,
.k-state-hover > .k-i-hbars,
.k-state-hover > * > .k-i-hbars,
.k-button:not(.k-state-disabled):hover .k-i-hbars,
.k-textbox:hover .k-i-hbars,
.k-button:active .k-i-hbars {
  background-position: -64px -32px;
}
.k-i-vbars {
  background-position: -64px -48px;
}
.k-link:not(.k-state-disabled):hover > .k-i-vbars,
.k-state-hover > .k-i-vbars,
.k-state-hover > * > .k-i-vbars,
.k-button:not(.k-state-disabled):hover .k-i-vbars,
.k-textbox:hover .k-i-vbars,
.k-button:active .k-i-vbars {
  background-position: -64px -48px;
}
.k-i-sum {
  background-position: -64px -64px;
}
.k-link:not(.k-state-disabled):hover > .k-i-sum,
.k-state-hover > .k-i-sum,
.k-state-hover > * > .k-i-sum,
.k-button:not(.k-state-disabled):hover .k-i-sum,
.k-textbox:hover .k-i-sum,
.k-button:active .k-i-sum {
  background-position: -64px -64px;
}
.k-i-pdf {
  background-position: -64px -80px;
}
.k-link:not(.k-state-disabled):hover > .k-i-pdf,
.k-state-hover > .k-i-pdf,
.k-state-hover > * > .k-i-pdf,
.k-button:not(.k-state-disabled):hover .k-i-pdf,
.k-textbox:hover .k-i-pdf,
.k-button:active .k-i-pdf {
  background-position: -64px -80px;
}
.k-i-excel {
  background-position: -64px -96px;
}
.k-link:not(.k-state-disabled):hover > .k-i-excel,
.k-state-hover > .k-i-excel,
.k-state-hover > * > .k-i-excel,
.k-button:not(.k-state-disabled):hover .k-i-excel,
.k-textbox:hover .k-i-excel,
.k-button:active .k-i-excel {
  background-position: -64px -96px;
}
.k-i-rotatecw {
  background-position: -64px -112px;
}
.k-link:not(.k-state-disabled):hover > .k-i-rotatecw,
.k-state-hover > .k-i-rotatecw,
.k-state-hover > * > .k-i-rotatecw,
.k-button:not(.k-state-disabled):hover .k-i-rotatecw,
.k-textbox:hover .k-i-rotatecw,
.k-button:active .k-i-rotatecw {
  background-position: -64px -112px;
}
.k-i-rotateccw {
  background-position: -64px -128px;
}
.k-link:not(.k-state-disabled):hover > .k-i-rotateccw,
.k-state-hover > .k-i-rotateccw,
.k-state-hover > * > .k-i-rotateccw,
.k-button:not(.k-state-disabled):hover .k-i-rotateccw,
.k-textbox:hover .k-i-rotateccw,
.k-button:active .k-i-rotateccw {
  background-position: -64px -128px;
}
.k-i-undo {
  background-position: -64px -160px;
}
.k-link:not(.k-state-disabled):hover > .k-i-undo,
.k-state-hover > .k-i-undo,
.k-state-hover > * > .k-i-undo,
.k-button:not(.k-state-disabled):hover .k-i-undo,
.k-textbox:hover .k-i-undo,
.k-button:active .k-i-undo {
  background-position: -64px -160px;
}
.k-i-redo {
  background-position: -64px -144px;
}
.k-link:not(.k-state-disabled):hover > .k-i-redo,
.k-state-hover > .k-i-redo,
.k-state-hover > * > .k-i-redo,
.k-button:not(.k-state-disabled):hover .k-i-redo,
.k-textbox:hover .k-i-redo,
.k-button:active .k-i-redo {
  background-position: -64px -144px;
}
.k-i-shape {
  background-position: -64px -176px;
}
.k-link:not(.k-state-disabled):hover > .k-i-shape,
.k-state-hover > .k-i-shape,
.k-state-hover > * > .k-i-shape,
.k-button:not(.k-state-disabled):hover .k-i-shape,
.k-textbox:hover .k-i-shape,
.k-button:active .k-i-shape {
  background-position: -64px -176px;
}
.k-i-connector {
  background-position: -64px -192px;
}
.k-link:not(.k-state-disabled):hover > .k-i-connector,
.k-state-hover > .k-i-connector,
.k-state-hover > * > .k-i-connector,
.k-button:not(.k-state-disabled):hover .k-i-connector,
.k-textbox:hover .k-i-connector,
.k-button:active .k-i-connector {
  background-position: -64px -192px;
}
.k-i-kpi {
  background-position: -64px -208px;
}
.k-link:not(.k-state-disabled):hover > .k-i-kpi,
.k-state-hover > .k-i-kpi,
.k-state-hover > * > .k-i-kpi,
.k-button:not(.k-state-disabled):hover .k-i-kpi,
.k-textbox:hover .k-i-kpi,
.k-button:active .k-i-kpi {
  background-position: -64px -208px;
}
.k-i-dimension {
  background-position: -64px -224px;
}
.k-link:not(.k-state-disabled):hover > .k-i-dimension,
.k-state-hover > .k-i-dimension,
.k-state-hover > * > .k-i-dimension,
.k-button:not(.k-state-disabled):hover .k-i-dimension,
.k-textbox:hover .k-i-dimension,
.k-button:active .k-i-dimension {
  background-position: -64px -224px;
}
.k-file {
  background-position: 0px 0px;
}
.k-link:not(.k-state-disabled):hover > .k-file,
.k-state-hover > .k-file,
.k-state-hover > * > .k-file,
.k-button:not(.k-state-disabled):hover .k-file,
.k-textbox:hover .k-file,
.k-button:active .k-file {
  background-position: 0px 0px;
}
.k-i-folder-add,
.k-addfolder {
  background-position: -32px -272px;
}
.k-link:not(.k-state-disabled):hover > .k-i-folder-add,
.k-link:not(.k-state-disabled):hover > .k-addfolder,
.k-state-hover > .k-i-folder-add,
.k-state-hover > .k-addfolder,
.k-state-hover > * > .k-i-folder-add,
.k-state-hover > * > .k-addfolder,
.k-button:not(.k-state-disabled):hover .k-i-folder-add,
.k-button:not(.k-state-disabled):hover .k-addfolder,
.k-textbox:hover .k-i-folder-add,
.k-textbox:hover .k-addfolder,
.k-button:active .k-i-folder-add,
.k-button:active .k-addfolder {
  background-position: -32px -272px;
}
.k-i-folder-up,
.k-goup {
  background-position: -32px -288px;
}
.k-link:not(.k-state-disabled):hover > .k-i-folder-up,
.k-link:not(.k-state-disabled):hover > .k-goup,
.k-state-hover > .k-i-folder-up,
.k-state-hover > .k-goup,
.k-state-hover > * > .k-i-folder-up,
.k-state-hover > * > .k-goup,
.k-button:not(.k-state-disabled):hover .k-i-folder-up,
.k-button:not(.k-state-disabled):hover .k-goup,
.k-textbox:hover .k-i-folder-up,
.k-textbox:hover .k-goup,
.k-button:active .k-i-folder-up,
.k-button:active .k-goup {
  background-position: -32px -288px;
}
.k-i-more {
  background-position: -64px -32px;
}
.k-link:not(.k-state-disabled):hover > .k-i-more,
.k-state-hover > .k-i-more,
.k-state-hover > * > .k-i-more,
.k-button:not(.k-state-disabled):hover .k-i-more,
.k-textbox:hover .k-i-more,
.k-button:active .k-i-more {
  background-position: -64px -32px;
}
.k-i-gantt-toggle {
  background-position: -64px -240px;
}
.k-link:not(.k-state-disabled):hover > .k-i-gantt-toggle,
.k-state-hover > .k-i-gantt-toggle,
.k-state-hover > * > .k-i-gantt-toggle,
.k-button:not(.k-state-disabled):hover .k-i-gantt-toggle,
.k-textbox:hover .k-i-gantt-toggle,
.k-button:active .k-i-gantt-toggle {
  background-position: -64px -240px;
}
.k-file > .k-icon {
  background-position: -115px -91px;
}
.k-image {
  border: 0;
}
.k-breadcrumbs:hover .k-i-arrow-n {
  background-position: 0 0;
}
.k-breadcrumbs:hover .k-i-arrow-e {
  background-position: 0 -16px;
}
/* Dropdown icon in k-scheduler-views */
.k-pager-numbers .k-current-page .k-link:after,
.k-scheduler-toolbar > ul.k-scheduler-views > li.k-current-view .k-link:after,
.k-gantt-views > .k-current-view > .k-link:after {
  background-position: 0px -32px;
}
.k-link:not(.k-state-disabled):hover > .k-pager-numbers .k-current-page .k-link:after,
.k-link:not(.k-state-disabled):hover > .k-scheduler-toolbar > ul.k-scheduler-views > li.k-current-view .k-link:after,
.k-link:not(.k-state-disabled):hover > .k-gantt-views > .k-current-view > .k-link:after,
.k-state-hover > .k-pager-numbers .k-current-page .k-link:after,
.k-state-hover > .k-scheduler-toolbar > ul.k-scheduler-views > li.k-current-view .k-link:after,
.k-state-hover > .k-gantt-views > .k-current-view > .k-link:after,
.k-state-hover > * > .k-pager-numbers .k-current-page .k-link:after,
.k-state-hover > * > .k-scheduler-toolbar > ul.k-scheduler-views > li.k-current-view .k-link:after,
.k-state-hover > * > .k-gantt-views > .k-current-view > .k-link:after,
.k-button:not(.k-state-disabled):hover .k-pager-numbers .k-current-page .k-link:after,
.k-button:not(.k-state-disabled):hover .k-scheduler-toolbar > ul.k-scheduler-views > li.k-current-view .k-link:after,
.k-button:not(.k-state-disabled):hover .k-gantt-views > .k-current-view > .k-link:after,
.k-textbox:hover .k-pager-numbers .k-current-page .k-link:after,
.k-textbox:hover .k-scheduler-toolbar > ul.k-scheduler-views > li.k-current-view .k-link:after,
.k-textbox:hover .k-gantt-views > .k-current-view > .k-link:after,
.k-button:active .k-pager-numbers .k-current-page .k-link:after,
.k-button:active .k-scheduler-toolbar > ul.k-scheduler-views > li.k-current-view .k-link:after,
.k-button:active .k-gantt-views > .k-current-view > .k-link:after {
  background-position: 0px -32px;
}
/* Colors */
html .k-success-colored {
  color: #507f50;
  border-color: #d0dfd0;
  background-color: #f0fff0;
}
html .k-info-colored {
  color: #50607f;
  border-color: #d0d9df;
  background-color: #f0f9ff;
}
html .k-error-colored {
  color: #7f5050;
  border-color: #dfd0d0;
  background-color: #fff0f0;
}
.k-inline-block {
  padding: 0 2px;
}
/* loading */
.k-loading,
.k-loading-image {
  background-color: transparent;
  background-repeat: no-repeat;
  background-position: center center;
}
.k-loading-mask,
.k-loading-image,
.k-loading-text {
  position: absolute;
}
.k-loading-mask {
  z-index: 100;
}
.k-loading-text {
  text-indent: -4000px;
  text-align: center;
  /*rtl*/
}
.k-loading-image,
.k-loading-color {
  width: 100%;
  height: 100%;
}
.k-loading-image {
  top: 0;
  left: 0;
  z-index: 2;
}
.k-loading-color {
  filter: alpha(opacity=30);
  opacity: .3;
}
.k-content-frame {
  border: 0;
  width: 100%;
  height: 100%;
}
.k-pane > .k-splitter-overlay {
  filter: alpha(opacity=0);
  opacity: 0;
  position: absolute;
}
/* drag n drop */
.k-drag-clue {
  position: absolute;
  z-index: 10003;
  border-style: solid;
  border-width: 1px;
  font-size: .9em;
  padding: .2em .4em;
  white-space: nowrap;
  cursor: default;
}
.k-drag-status {
  margin-top: -3px;
  margin-right: 4px;
  vertical-align: middle;
}
.k-reorder-cue {
  position: absolute;
  width: 1px;
  overflow: visible;
}
.k-reorder-cue .k-icon {
  position: absolute;
  left: -4px;
  width: 8px;
  height: 4px;
}
.k-reorder-cue .k-i-arrow-s {
  top: -4px;
  background-position: -4px -166px;
}
.k-reorder-cue .k-i-arrow-n {
  bottom: -4px;
  background-position: -4px -134px;
}
/* virtual scrollbar */
.k-scrollbar {
  position: absolute;
  overflow: scroll;
}
.k-scrollbar-vertical {
  top: 0;
  right: 0;
  width: 17px;
  /* scrollbar width */
  height: 100%;
  overflow-x: hidden;
}
.k-touch-scrollbar {
  display: none;
  position: absolute;
  z-index: 200000;
  height: 8px;
  width: 8px;
  border: 1px solid #8a8a8a;
  background-color: #858585;
}
@media only screen and (-webkit-min-device-pixel-ratio: 2) {
  body .k-touch-scrollbar {
    height: 12px;
    width: 12px;
    border-radius: 7px;
  }
}
.k-virtual-scrollable-wrap {
  overflow-x: auto;
  /*needed by IE8*/
}
/* current time indicator */
.k-current-time {
  background: #f00;
  position: absolute;
}
/* override box sizing for grid layout framework integration (Bootstrap 3, Foundation 4) */
.k-animation-container,
.k-widget,
.k-widget *,
.k-animation-container *,
.k-widget *:before,
.k-animation-container *:after,
.k-block .k-header,
.k-list-container {
  -webkit-box-sizing: content-box;
          box-sizing: content-box;
}
.k-button,
.k-textbox,
.k-autocomplete,
div.k-window-content,
.k-tabstrip > .k-content > .km-scroll-container,
.k-block,
.k-edit-cell .k-widget,
.k-grid-edit-row .k-widget,
.k-grid-edit-row .text-box,
.km-actionsheet > li,
.km-shim {
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
}
/* Fix for Bootstrap 3 */
.input-group .form-control {
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
}
.form-control.k-widget {
  padding: 0;
}
a.k-button:hover {
  text-decoration: none;
}
/* override iOS styles in mobile Kendo */
.km-widget,
.km-widget * {
  -webkit-background-clip: border-box;
  background-clip: border-box;
}
input.k-checkbox,
.k-radio {
  display: inline;
  opacity: 0;
  width: 0;
  margin: 0;
  position: absolute;
}
.k-checkbox-label {
  position: relative;
  padding-left: 1.5em;
  vertical-align: middle;
  line-height: 0.875em;
  cursor: pointer;
}
.k-checkbox-label:before {
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  width: 1em;
  height: 1em;
  border-width: 1px;
  border-style: solid;
}
.k-checkbox-label:after {
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  width: 1em;
  height: 1em;
  border-width: 1px;
  border-style: solid;
}
.k-checkbox:checked + .k-checkbox-label:after {
  content: "\2713";
  width: 1em;
  height: 1em;
  position: absolute;
  top: 0;
  left: 0;
  border-width: 1px;
  border-style: solid;
  text-align: center;
}
.k-checkbox:disabled + .k-checkbox-label {
  cursor: auto;
}
.k-radio-label {
  position: relative;
  padding-left: 1.5em;
  vertical-align: middle;
  line-height: 0.875em;
  cursor: pointer;
}
.k-radio-label:before {
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  width: 14px;
  height: 14px;
  border-style: solid;
}
.k-radio:checked + .k-radio-label:after {
  content: "";
  width: 10px;
  height: 10px;
  position: absolute;
  top: 3px;
  left: 3px;
}
.k-radio:disabled + .k-radio-label {
  cursor: auto;
}
.k-ie8 input.k-checkbox,
.k-ie8 .k-radio {
  display: inline-block;
  width: auto;
}
.k-ie8 .k-checkbox-label,
.k-ie8 .k-radio-label {
  padding-left: 0;
}
.k-ie8 .k-checkbox-label:before,
.k-ie8 .k-checkbox-label:after,
.k-ie8 .k-radio-label:before,
.k-ie8 .k-radio-label:after {
  display: none;
}
/* RTL for checkboxes and radio buttons */
.k-rtl .k-checkbox-label,
.k-rtl .k-radio-label {
  padding-right: 1.5em;
}
.k-rtl .k-checkbox-label:before,
.k-rtl .k-checkbox-label:after,
.k-rtl .k-radio-label:before {
  right: 0;
}
.k-rtl .k-radio:checked + .k-radio-label:after {
  right: 3px;
}
input.k-checkbox + label {
  -webkit-user-select: none;
}
/* Off-screen container used during export */
.k-pdf-export-shadow {
  position: absolute;
  overflow: hidden;
  left: -15000px;
  width: 14400px;
}
.km-native-scroller {
  overflow: auto;
  -webkit-overflow-scrolling: touch;
  -ms-touch-action: pan-x pan-y;
  -ms-overflow-style: -ms-autohiding-scrollbar;
  -ms-scroll-snap-type: proximity;
}
/* responsive panel */
.k-rpanel-left {
  -webkit-transform: translateX(-100%) translateZ(0);
  -ms-transform: translateX(-100%) translateZ(0);
  transform: translateX(-100%) translateZ(0);
  left: 0;
}
.k-rpanel-right {
  -webkit-transform: translateX(100%) translateZ(0);
  -ms-transform: translateX(100%) translateZ(0);
  transform: translateX(100%) translateZ(0);
  right: 0;
}
.k-rpanel-left,
.k-rpanel-right {
  position: fixed;
  display: block;
  overflow: auto;
  min-width: 320px;
  height: 100%;
  top: 0;
}
.k-rpanel-left.k-rpanel-expanded,
.k-rpanel-right.k-rpanel-expanded {
  -webkit-transform: translateX(0) translateZ(0);
  -ms-transform: translateX(0) translateZ(0);
  transform: translateX(0) translateZ(0);
}
.k-rpanel-left + *,
.k-rpanel-right + * {
  overflow: auto;
}
.k-rpanel-top {
  position: static;
  max-height: 0;
}
.k-rpanel-top.k-rpanel-expanded {
  max-height: 568px;
  overflow: visible !important;
}
.k-edit-form {
  margin: 0;
  padding: 0;
}
.k-window > div.k-popup-edit-form {
  padding: 1em 0;
}
.k-grid-edit-row .k-edit-form td {
  border-bottom-width: 0;
}
.k-edit-form-container {
  position: relative;
  width: 400px;
}
.k-edit-label,
.k-edit-form-container .editor-label {
  float: left;
  clear: both;
  width: 30%;
  padding: .4em 0 1em;
  margin-left: 2%;
  text-align: right;
}
.k-edit-field,
.k-edit-form-container .editor-field {
  float: right;
  clear: right;
  width: 60%;
  margin-right: 2%;
  padding: 0 0 .6em;
}
.k-edit-field > input[type="checkbox"],
.k-edit-field > input[type="radio"] {
  margin-top: .4em;
}
.k-edit-form-container .k-button {
  margin: 0 .16em;
}
.k-edit-field > input[type="checkbox"]:first-child,
.k-edit-field > input[type="radio"]:first-child,
.k-edit-field > label:first-child > input[type="checkbox"],
.k-edit-field > .k-button:first-child {
  margin-left: 0;
}
.k-edit-form-container .k-edit-buttons {
  clear: both;
  text-align: right;
  border-width: 1px 0 0;
  border-style: solid;
  position: relative;
  bottom: -1em;
  padding: .6em;
}
/* Window */
div.k-window {
  display: inline-block;
  position: absolute;
  z-index: 10001;
  border-style: solid;
  border-width: 1px;
  padding-top: 2em;
}
.k-block > .k-header,
.k-window-titlebar {
  position: absolute;
  width: 100%;
  height: 1.1em;
  border-bottom-style: solid;
  border-bottom-width: 1px;
  margin-top: -2em;
  padding: .4em 0;
  font-size: 1.2em;
  white-space: nowrap;
  min-height: 16px;
  /* icon size */
}
.k-block > .k-header {
  position: relative;
  margin: -2px 0 10px -2px;
  padding: .3em 2px;
}
.k-window-title {
  position: absolute;
  left: .44em;
  right: .44em;
  overflow: hidden;
  cursor: default;
  text-overflow: ellipsis;
}
.k-window-title .k-image {
  margin: 0 5px 0 0;
  vertical-align: middle;
}
div.k-window-titleless {
  padding-top: 0;
}
div.k-window-content {
  position: relative;
  height: 100%;
  padding: .58em;
  overflow: auto;
  outline: 0;
}
div.k-window-iframecontent {
  padding: 0;
  overflow: visible;
}
.k-window-content > .km-scroll-container {
  height: 100%;
}
.k-window-titlebar .k-window-actions {
  position: absolute;
  top: 0;
  right: .3em;
  padding-top: .3em;
  white-space: nowrap;
}
.k-window-titlebar .k-window-action {
  display: inline-block;
  width: 16px;
  height: 16px;
  padding: 2px;
  text-decoration: none;
  vertical-align: middle;
  opacity: .7;
}
.k-window-titlebar .k-state-hover {
  border-style: solid;
  border-width: 1px;
  padding: 1px;
  opacity: 1;
}
.k-window-action .k-icon {
  margin: 0;
  vertical-align: top;
}
.k-window > .k-resize-handle {
  position: absolute;
  z-index: 1;
  background-color: #fff;
  font-size: 0;
  line-height: 6px;
  filter: alpha(opacity=0);
  opacity: 0;
  zoom: 1;
}
.k-resize-n {
  top: -3px;
  left: 0;
  width: 100%;
  height: 6px;
  cursor: n-resize;
}
.k-resize-e {
  top: 0;
  right: -3px;
  width: 6px;
  height: 100%;
  cursor: e-resize;
}
.k-resize-s {
  bottom: -3px;
  left: 0;
  width: 100%;
  height: 6px;
  cursor: s-resize;
}
.k-resize-w {
  top: 0;
  left: -3px;
  width: 6px;
  height: 100%;
  cursor: w-resize;
}
.k-resize-se {
  bottom: -3px;
  right: -3px;
  width: 16px;
  height: 16px;
  cursor: se-resize;
}
.k-resize-sw {
  bottom: -3px;
  left: -3px;
  width: 6px;
  height: 6px;
  cursor: sw-resize;
}
.k-resize-ne {
  top: -3px;
  right: -3px;
  width: 6px;
  height: 6px;
  cursor: ne-resize;
}
.k-resize-nw {
  top: -3px;
  left: -3px;
  width: 6px;
  height: 6px;
  cursor: nw-resize;
}
.k-overlay {
  position: fixed;
  top: 0;
  left: 0;
  z-index: 10001;
  width: 100%;
  height: 100%;
  background-color: #000;
  filter: alpha(opacity=50);
  opacity: .5;
}
.k-window .k-overlay {
  position: absolute;
  width: 100%;
  height: 100%;
  background-color: #fff;
  filter: alpha(opacity=0);
  opacity: 0;
}
.k-action-buttons {
  clear: both;
  text-align: right;
  border-width: 1px 0 0;
  border-style: solid;
  position: relative;
  bottom: -1em;
  padding: .6em;
  margin: 0 -1em;
}
.k-action-buttons .k-button {
  display: inline-block;
  margin: 0 0 0 6px;
  min-width: 75px;
}
/* TabStrip */
.k-tabstrip {
  margin: 0;
  padding: 0;
  zoom: 1;
  position: relative;
}
.k-tabstrip-items {
  padding: 0.3em 0.3em 0;
}
.k-tabstrip-scrollable .k-tabstrip-items {
  white-space: nowrap;
  overflow: hidden;
}
.k-tabstrip > .k-button {
  position: absolute;
  top: .4em;
  z-index: 2;
  -webkit-user-select: none;
     -moz-user-select: none;
      -ms-user-select: none;
          user-select: none;
}
.k-tabstrip-bottom > .k-button {
  top: auto;
  bottom: .4em;
}
.k-tabstrip-prev {
  left: .4em;
}
.k-tabstrip-next {
  right: .4em;
}
.k-tabstrip-items .k-item,
.k-panelbar .k-tabstrip-items .k-item {
  list-style-type: none;
  display: inline-block;
  position: relative;
  border-style: solid;
  border-width: 1px 1px 0;
  margin: 0 -1px 0 0;
  padding: 0;
  vertical-align: top;
}
.k-tabstrip-items .k-tab-on-top,
.k-tabstrip-items .k-state-active,
.k-panelbar .k-tabstrip-items .k-state-active {
  margin-bottom: -1px;
  padding-bottom: 1px;
}
.k-tabstrip-items .k-tab-on-top {
  z-index: 1;
}
.k-tabstrip-items .k-link,
.k-panelbar .k-tabstrip-items .k-link {
  display: inline-block;
  border-bottom-width: 0;
  padding: .5em .92em;
}
.k-tabstrip-items .k-icon,
.k-panelbar .k-tabstrip-items .k-icon {
  margin: -1px 4px 0 -3px;
  vertical-align: top;
}
.k-tabstrip-items .k-item .k-image,
.k-tabstrip-items .k-item .k-sprite,
.k-panelbar .k-tabstrip-items .k-item .k-image,
.k-panelbar .k-tabstrip-items .k-item .k-sprite {
  margin: -3px 3px 0 -6px;
  vertical-align: middle;
}
/* TabStrip Loading Progress */
.k-tabstrip-items .k-loading {
  top: 0;
  left: 0;
  height: 0;
  width: 20%;
  position: absolute;
  background: transparent;
  border-top: 1px solid transparent;
  border-color: inherit;
  -webkit-transition: width 200ms linear;
          transition: width 200ms linear;
  -webkit-transition: "width 200ms linear";
          transition: "width 200ms linear";
  -webkit-animation: k-tab-loader 1s ease-in-out infinite;
          animation: k-tab-loader 1s ease-in-out infinite;
}
.k-tabstrip-items .k-progress {
  -webkit-animation: none;
          animation: none;
}
.k-tabstrip-items .k-loading.k-complete {
  width: 100%;
  -webkit-animation: none;
          animation: none;
}
.k-tabstrip > .k-content,
.k-panelbar .k-tabstrip > .k-content {
  position: static;
  border-style: solid;
  border-width: 1px;
  margin: 0 .286em .3em;
  padding: .3em .92em;
  zoom: 1;
}
.k-tabstrip > .k-content {
  display: none;
  overflow: auto;
}
.k-tabstrip > .k-content.km-scroll-wrapper {
  padding: 0;
}
.k-tabstrip > .k-content > .km-scroll-container {
  padding: .3em .92em;
}
@-webkit-keyframes k-tab-loader {
  0% {
    left: 0;
  }
  50% {
    left: 80%;
  }
  100% {
    left: 0;
  }
}
@keyframes k-tab-loader {
  0% {
    left: 0;
  }
  50% {
    left: 80%;
  }
  100% {
    left: 0;
  }
}
/* left and right tabs */
.k-tabstrip-left > div.k-content,
.k-tabstrip-right > div.k-content {
  margin: .286em .3em;
}
.k-tabstrip-left > .k-tabstrip-items .k-item,
.k-tabstrip-right > .k-tabstrip-items .k-item {
  display: block;
  margin-bottom: -1px;
}
.k-tabstrip-left > .k-tabstrip-items .k-link,
.k-tabstrip-right > .k-tabstrip-items .k-link {
  display: block;
}
.k-tabstrip-left > .k-tabstrip-items .k-tab-on-top,
.k-tabstrip-right > .k-tabstrip-items .k-tab-on-top,
.k-tabstrip-left > .k-tabstrip-items .k-state-active,
.k-tabstrip-right > .k-tabstrip-items .k-state-active,
.k-panelbar .k-tabstrip-left > .k-tabstrip-items .k-state-active,
.k-panelbar .k-tabstrip-right > .k-tabstrip-items .k-state-active {
  margin-bottom: -1px;
  padding-bottom: 0;
}
/* left tabs */
.k-tabstrip-left > .k-tabstrip-items {
  float: left;
  padding: .25em 0 .3em .3em;
}
.k-tabstrip-left > .k-tabstrip-items .k-item {
  border-width: 1px 0 1px 1px;
  border-radius: 3px 0 0 3px;
}
.k-tabstrip-left > .k-tabstrip-items .k-state-active {
  border-width: 1px 0 1px 1px;
}
.k-tabstrip-left > .k-tabstrip-items .k-tab-on-top,
.k-tabstrip-left > .k-tabstrip-items .k-state-active,
.k-panelbar .k-tabstrip-left > .k-tabstrip-items .k-state-active {
  margin-right: -2px;
  padding-right: 1px;
}
/* right tabs */
.k-tabstrip-right > .k-tabstrip-items {
  float: right;
  padding: .25em .3em .3em 0;
}
.k-tabstrip-right > .k-tabstrip-items .k-item {
  border-width: 1px 1px 1px 0;
  border-radius: 0 3px 3px 0;
}
.k-tabstrip-right > .k-tabstrip-items .k-state-active {
  border-width: 1px 1px 1px 0;
}
.k-tabstrip-right > .k-tabstrip-items .k-tab-on-top,
.k-tabstrip-right > .k-tabstrip-items .k-state-active,
.k-panelbar .k-tabstrip-right > .k-tabstrip-items .k-state-active {
  margin-left: -1px;
  padding-left: 1px;
}
/* bottom tabs */
.k-tabstrip-bottom > .k-tabstrip-items {
  margin-top: -1px;
  padding: 0 .3em .3em;
}
.k-tabstrip-bottom > .k-content,
.k-panelbar .k-tabstrip-bottom > .k-content {
  margin: .3em .286em 0;
  z-index: 1;
  position: relative;
}
.k-tabstrip-bottom > .k-tabstrip-items .k-item {
  border-width: 0 1px 1px;
  border-radius: 0 0 4px 4px;
}
.k-tabstrip-bottom > .k-tabstrip-items .k-state-active {
  margin-bottom: 0;
  padding-bottom: 0;
}
.k-tabstrip-bottom > .k-content {
  min-height: 100px;
}
.k-tabstrip-bottom > .k-tabstrip-items .k-loading {
  top: auto;
  bottom: 0;
}
/* PanelBar */
.k-panelbar {
  zoom: 1;
}
.k-panelbar > .k-item,
.k-panel > .k-item {
  list-style-type: none;
  display: block;
  border-width: 0;
  margin: 0;
  zoom: 1;
  border-radius: 0;
}
.k-panelbar .k-link > .k-image,
.k-panelbar .k-link > .k-sprite {
  float: left;
  margin-top: 4px;
  margin-right: 5px;
  vertical-align: middle;
}
.k-panelbar > .k-item > .k-link,
.k-panel > .k-item > .k-link {
  display: block;
  position: relative;
  border-bottom-style: solid;
  border-bottom-width: 1px;
  padding: 0 1em;
  line-height: 2.34em;
  text-decoration: none;
  zoom: 1;
}
.k-panelbar-expand,
.k-panelbar-collapse {
  position: absolute;
  top: 50%;
  right: 4px;
  margin-top: -8px;
}
.k-panelbar .k-panel,
.k-panelbar .k-content {
  position: relative;
  border-bottom-style: solid;
  border-bottom-width: 1px;
  margin: 0;
  padding: 0;
  zoom: 1;
}
.k-panel > .k-item > .k-link {
  border-bottom: 0;
  font-size: .95em;
  line-height: 2.2;
}
.k-panel .k-panel > .k-item > .k-link {
  padding-left: 2em;
}
.k-panelbar .k-i-seek-e .k-link {
  border-bottom: 0;
}
.k-panel .k-panel {
  border-bottom: 0;
}
/* Menu */
.k-menu {
  cursor: default;
}
.k-menu,
.k-menu .k-menu-group {
  list-style: none;
  margin: 0;
  padding: 0;
  zoom: 1;
}
.k-menu:after {
  content: '';
  display: block;
  width: 99%;
  height: 0;
  float: inherit;
  clear: both;
}
.k-menu .k-item {
  -webkit-user-select: none;
  -moz-user-select: -moz-none;
  -ms-user-select: none;
      user-select: none;
}
.k-menu .k-item div {
  -webkit-user-select: default;
     -moz-user-select: default;
      -ms-user-select: default;
          user-select: default;
}
.k-menu .k-item .k-item,
ul.k-menu-vertical > .k-item {
  display: block;
  float: none;
  border-width: 0;
}
.k-menu .k-item > .k-link > .k-icon,
.k-menu .k-image,
.k-menu .k-sprite {
  margin: -2px 4px 0 -4px;
  vertical-align: middle;
}
.k-menu .k-item > .k-link > .k-icon {
  margin: -2px 0 0;
}
.k-menu .k-item > .k-link {
  display: block;
  padding: 1.071em;
  line-height: 1.34em;
  -webkit-user-select: none;
     -moz-user-select: none;
      -ms-user-select: none;
          user-select: none;
}
.k-menu .k-menu-group {
  display: none;
  border-style: solid;
  border-width: 1px;
  overflow: visible;
  white-space: nowrap;
}
.k-menu .k-menu-group > .k-item {
  display: block;
  border-width: 0;
}
.k-menu .k-item,
.k-widget.k-menu-horizontal > .k-item {
  position: relative;
  float: left;
  border-style: solid;
  border-width: 0 1px 0 0;
  vertical-align: top;
  zoom: 1;
  -webkit-box-sizing: content-box;
          box-sizing: content-box;
}
.k-context-menu.k-menu-vertical > .k-item > .k-link,
.k-menu .k-menu-group .k-item > .k-link {
  padding: .28em 1.8em .38em .9em;
}
.k-context-menu.k-menu-horizontal > .k-separator {
  display: none;
}
.k-context-menu.k-menu-horizontal > .k-item {
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
}
.k-context-menu.k-menu-horizontal > .k-last {
  border: 0;
}
.k-menu .k-item > .k-link > .k-i-arrow-s {
  margin-right: -8px;
}
.k-menu .k-item > .k-link > .k-i-arrow-e {
  position: absolute;
  top: 50%;
  margin-top: -8px;
  right: 2px;
  right: .2rem;
}
.k-menu .k-animation-container {
  border: 0;
}
.k-menu .k-animation-container,
.k-menu .k-menu-group {
  position: absolute;
  left: 0;
}
.k-menu .k-animation-container .k-animation-container,
.k-menu .k-menu-group .k-menu-group,
.k-menu-vertical .k-animation-container,
.k-menu-vertical .k-menu-group {
  top: 0;
  left: 0;
}
.k-menu .k-animation-container .k-menu-group {
  top: auto;
  left: auto;
  margin-left: -1px;
}
.k-menu .k-animation-container,
.k-popup .k-animation-container {
  margin-top: -1px;
  padding-left: 1px;
}
.k-ie .k-menu .k-animation-container,
.k-ie .k-popup .k-animation-container {
  margin-top: -2px;
}
.k-popup .k-animation-container .k-popup {
  margin-left: -1px;
}
ul.k-menu .k-separator {
  padding: 0.25em 0;
  height: 100%;
  width: 1px;
  font-size: 0;
  line-height: 0;
  border-width: 0 1px 0 0;
}
ul.k-menu-vertical .k-separator,
.k-menu .k-menu-group .k-separator {
  padding: 0;
  height: 1px;
  width: 100%;
  border-width: 1px 0 0;
}
/* Context Menu */
.k-context-menu {
  border: 0;
  -webkit-user-select: none;
     -moz-user-select: none;
      -ms-user-select: none;
          user-select: none;
}
/* Grid */
.k-grid,
.k-listview {
  position: relative;
  zoom: 1;
}
.k-grid table {
  width: 100%;
  margin: 0;
  /* override CSS libraries */
  max-width: none;
  border-collapse: separate;
  border-spacing: 0;
  empty-cells: show;
  border-width: 0;
  outline: none;
}
.k-header.k-drag-clue {
  overflow: hidden;
}
.k-grid-header th.k-header,
.k-filter-row th {
  overflow: hidden;
  border-style: solid;
  border-width: 0 0 1px 1px;
  padding: .5em .6em .4em .6em;
  font-weight: normal;
  white-space: nowrap;
  text-overflow: ellipsis;
  text-align: left;
}
.k-grid-header th.k-header {
  vertical-align: bottom;
}
.k-filtercell,
.k-filtercell > span,
.k-filtercell .k-widget {
  display: block;
  width: auto;
}
.k-filtercell > span {
  padding-right: 4.8em;
  position: relative;
  min-height: 2em;
  line-height: 2em;
}
.k-filtercell > .k-operator-hidden {
  padding-right: 2.3em;
}
.k-filtercell > span > .k-button,
.k-filter-row .k-dropdown-operator {
  position: absolute;
  top: 0;
  right: 0;
}
.k-filter-row .k-dropdown-operator {
  width: 2.1em;
  right: 2.5em;
}
.k-filtercell > span > label {
  vertical-align: middle;
}
.k-filter-row label > input[type="radio"] {
  vertical-align: middle;
  position: relative;
  bottom: 2px;
}
.k-ie10 .k-grid-header a:active {
  background-color: transparent;
  /*remove gray background*/
}
.k-grid-header th.k-header > .k-link {
  display: block;
  min-height: 18px;
  line-height: 18px;
  /* due to sorting icons*/
  margin: -0.5em -0.6em -0.4em -0.6em;
  padding: .5em .6em .4em .6em;
  overflow: hidden;
  text-overflow: ellipsis;
}
.k-grid-header th.k-with-icon .k-link {
  margin-right: 18px;
}
.k-grid-header th.k-header .k-icon {
  position: static;
}
.k-grid-header th > .k-link > .k-icon {
  vertical-align: text-top;
}
.k-grid .k-state-hover {
  cursor: pointer;
}
.k-grid-column-resizing th,
.k-grid-column-resizing td {
  -webkit-transform: translateZ(0);
}
.k-grid-column-resizing,
.k-grid-column-resizing .k-grid-filter,
.k-grid-column-resizing .k-link,
.k-grid-column-resizing .k-button,
.k-grid-column-resizing .k-grid-toolbar {
  cursor: col-resize;
}
.k-grid td {
  border-style: solid;
  border-width: 0 0 0 1px;
  padding: .4em .6em;
  overflow: hidden;
  line-height: 1.6em;
  vertical-align: middle;
  text-overflow: ellipsis;
}
.k-grid .k-grouping-row td,
.k-grid .k-hierarchy-cell {
  overflow: visible;
}
.k-grid-edit-row td {
  text-overflow: clip;
}
.k-grid-edit-row .k-textbox,
.k-grid-edit-row .text-box {
  /*reset default webkit styles*/
  margin-top: 0;
  margin-bottom: 0;
}
.k-grid-header-wrap,
.k-grid-footer-wrap {
  position: relative;
  width: 100%;
  overflow: hidden;
  border-style: solid;
  border-width: 0 1px 0 0;
  zoom: 1;
}
div.k-grid-header,
div.k-grid-footer {
  padding-right: 17px;
  /* scrollbar width; may vary; can be calculated */
  border-bottom-style: solid;
  border-bottom-width: 1px;
  zoom: 1;
}
.k-grid-header-wrap > table,
.k-grid-header-locked > table {
  margin-bottom: -1px;
}
.k-grid-content {
  position: relative;
  width: 100%;
  overflow: auto;
  overflow-x: auto;
  overflow-y: scroll;
  zoom: 1;
  min-height: 0%;
  /* IE9 bug workaround - expanding Grid on hover */
}
.k-mobile .k-grid tbody {
  -webkit-backface-visibility: hidden;
}
.k-mobile .k-grid-backface tbody {
  -webkit-backface-visibility: visible;
}
.k-grid-content-expander {
  position: absolute;
  visibility: hidden;
  height: 1px;
}
.k-grid-norecords {
  width: 100%;
  height: 100%;
  text-align: center;
}
.k-grid-norecords-template {
  width: 20em;
  height: 4em;
  line-height: 4em;
  vertical-align: middle;
  margin: 0 auto;
}
.k-grid-content > .k-grid-norecords > .k-grid-norecords-template {
  top: 50%;
  left: 50%;
  margin-left: -10em;
  margin-top: -2em;
  position: absolute;
}
@media print {
  .k-grid {
    height: auto !important;
  }
  .k-grid-header {
    padding: 0 !important;
  }
  .k-grid-header-wrap,
  .k-grid-content {
    overflow: visible;
    height: auto !important;
  }
}
.k-grid .k-scrollbar {
  -ms-overflow-style: scrollbar;
}
.k-virtual-scrollable-wrap {
  height: 100%;
  overflow-y: hidden;
  position: relative;
}
.k-grid-header table,
.k-grid-content table,
.k-grid-footer table,
.k-grid-content-locked > table {
  table-layout: fixed;
}
/* Grid :: locked columns */
.k-grid-lockedcolumns {
  white-space: nowrap;
}
.k-grid-content-locked,
.k-grid-content,
.k-pager-wrap {
  white-space: normal;
}
.k-grid-header-locked,
.k-grid-content-locked,
.k-grid-footer-locked {
  display: inline-block;
  vertical-align: top;
  overflow: hidden;
  /* generally uneeded */
  position: relative;
  border-style: solid;
  border-width: 0 1px 0 0;
}
.k-grid-header-locked + .k-grid-header-wrap,
.k-grid-content-locked + .k-grid-content,
.k-grid-footer-locked + .k-grid-footer-wrap {
  display: inline-block;
  vertical-align: top;
}
.k-grid-toolbar {
  border-style: solid;
  border-width: 1px 0 0;
}
.k-grid-header th.k-header:first-child,
.k-grid tbody td:first-child,
.k-grid tfoot td:first-child,
.k-filter-row > th:first-child {
  border-left-width: 0;
}
.k-grid-header th.k-header.k-first {
  border-left-width: 1px;
}
.k-grid-toolbar:first-child,
.k-grouping-header + .k-grid-toolbar {
  border-width: 0 0 1px;
}
/* Grid :: footer */
.k-footer-template td {
  border-style: solid;
  border-width: 1px 0 0 1px;
}
.k-group-footer td {
  border-style: solid;
  border-width: 1px 0;
}
.k-group-footer .k-group-cell + td {
  border-left-width: 1px;
}
.k-grid-footer {
  border-style: solid;
  border-width: 1px 0 0;
}
.k-grid-footer td {
  border-top-width: 0;
}
.k-grid-footer > td {
  border-top-width: 1px;
}
/* Grid :: paging */
.k-pager-wrap {
  clear: both;
  overflow: hidden;
  position: relative;
  border-style: solid;
  border-width: 1px;
  line-height: 2.0em;
  padding: 0.333em 0 0.333em 0.250em;
}
.k-grid-pager {
  border-width: 1px 0 0;
}
.k-grid .k-pager-numbers,
.k-pager-numbers .k-link,
.k-pager-numbers .k-state-selected {
  display: inline-block;
  vertical-align: top;
  margin-right: 1px;
}
.k-pager-numbers {
  margin: 0 2px;
}
.k-pager-numbers .k-state-selected {
  vertical-align: top;
}
.k-pager-numbers .k-current-page {
  display: none;
}
.k-pager-numbers li,
.k-pager-input {
  float: left;
}
.k-grid .k-pager-numbers {
  float: left;
  cursor: default;
}
.k-pager-info {
  float: right;
  padding: 0 1.333em;
}
.k-pager-numbers .k-link {
  text-decoration: none;
}
.k-pager-wrap > .k-link,
.k-pager-numbers .k-link,
.k-pager-numbers .k-state-selected {
  min-width: 2em;
}
.k-pager-wrap > .k-link {
  float: left;
  margin: 0 0.08333em;
  height: 2em;
  /*IE7*/
  line-height: 2em;
  /*IE7*/
  border-radius: 1.0833em;
  cursor: pointer;
  text-align: center;
}
.k-pager-wrap > a.k-state-disabled:hover {
  background: none;
  cursor: default;
}
.k-pager-numbers .k-link {
  text-align: center;
  line-height: 2em;
  border-style: solid;
  border-width: 1px;
  border-radius: 1.0833em;
}
.k-pager-wrap > .k-link {
  border-style: solid;
  border-width: 1px;
}
.k-pager-wrap .k-pager-refresh {
  float: right;
  margin-right: 0.5em;
  border-width: 0;
  border-radius: 0;
}
.k-pager-numbers .k-state-selected {
  border-style: solid;
  border-width: 1px;
  text-align: center;
  border-radius: 1.0833em;
}
.k-pager-wrap .k-textbox {
  width: 3.333em;
}
.k-pager-wrap .k-dropdown {
  width: 4.500em;
}
.k-pager-refresh {
  float: right;
}
.k-pager-input,
.k-pager-sizes {
  padding: 0 1.4166em;
}
.k-pager-sizes {
  display: inline-block;
  padding-top: 1px;
}
.k-pager-sizes .k-widget.k-dropdown {
  margin-top: -2px;
}
.k-pager-wrap .k-textbox,
.k-pager-wrap .k-widget {
  margin: 0 .4em 0;
}
/* Grid :: filtering */
.k-header > .k-grid-filter,
.k-header > .k-header-column-menu {
  float: right;
  margin: -0.5em -0.6em -0.4em;
  padding: .5em .2em .4em;
  position: relative;
  z-index: 1;
  /*mvc site.css*/
}
.k-grid .k-animation-container {
  position: absolute;
}
.k-filter-menu {
  padding: .5em;
}
form.k-filter-menu .k-widget,
form.k-filter-menu .k-textbox {
  display: block;
}
.k-filter-help-text,
.k-filter-menu .k-widget,
.k-filter-menu .k-textbox {
  margin: .19em 0 0;
}
.k-filter-menu span.k-filter-and {
  width: 6em;
  margin: .5em 0 .5em;
}
.k-filter-menu .k-button {
  width: 48%;
  margin: .5em 4% 0 0;
}
.k-filter-menu .k-button + .k-button {
  margin-right: 0;
}
.k-multicheck-wrap {
  overflow: auto;
  overflow-x: hidden;
  white-space: nowrap;
  max-height: 300px;
}
.k-multicheck-wrap .k-item {
  line-height: 2.2em;
}
/* Grid :: grouping */
.k-grouping-row .k-icon {
  margin: -3px 4px 0 2px;
}
.k-grouping-row p {
  display: inline-block;
  vertical-align: middle;
  margin-left: -0.6em;
  padding: 0 .6em;
}
.k-grouping-row + tr td {
  border-top-width: 1px;
}
.k-grouping-row .k-group-cell,
.k-grouping-row + tr .k-group-cell {
  border-top-width: 0;
  text-overflow: none;
}
.k-grid .k-hierarchy-cell + td {
  border-left-width: 0;
}
.k-grid .k-group-col,
.k-grid .k-hierarchy-col {
  width: 27px;
}
.k-grouping-header {
  border-bottom-style: solid;
  border-bottom-width: 1px;
}
.k-grouping-header {
  line-height: 2;
}
.k-grouping-dropclue {
  position: absolute;
  width: 6px;
  height: 25px;
  background-repeat: no-repeat;
  background-position: -165px -148px;
}
.k-grouping-header .k-group-indicator {
  display: inline-block;
  border-style: solid;
  border-width: 1px;
  margin: 0 3px;
  padding: .15em .15em .15em .4em;
  line-height: 1.5em;
}
.k-grouping-header .k-link {
  display: inline-block;
  border-width: 0;
  padding: 0;
  line-height: normal;
  text-decoration: none;
}
.k-grouping-header .k-button {
  border: 0;
  padding: 0;
  background: transparent;
  line-height: 1;
}
.k-grouping-header .k-link .k-icon {
  margin: 0 0 0 -3px;
}
.k-grouping-header .k-button .k-icon {
  margin: 0 0 0 3px;
}
.k-grouping-header a,
.k-grouping-header .k-button {
  display: inline-block;
  vertical-align: middle;
}
/* Grid :: editing */
.k-dirty-cell:before {
  content: "\a0";
  display: inline-block;
  width: 0;
  float: left;
}
.k-dirty {
  position: absolute;
  width: 0;
  height: 0;
  border-style: solid;
  border-width: 3px;
  border-color: #f00 transparent transparent #f00;
  margin: -0.45em 0 0 -0.6em;
  padding: 0;
  overflow: hidden;
  vertical-align: top;
}
.k-grouping-header,
.k-grid-toolbar {
  margin: 0;
  padding: 0.429em 0.2em 0.429em 1em;
  cursor: default;
}
.k-grid .k-edit-container {
  padding: 0;
}
.k-grid .field-validation-error {
  display: block;
}
.k-grid .input-validation-error {
  border-style: ridge;
  border-color: #f00;
  background-color: #ffc0cb;
}
.k-grid-toolbar .k-button {
  vertical-align: middle;
}
.k-grid-actions {
  display: inline-block;
}
.k-grid .k-button {
  margin: 0 .16em;
}
.k-grid tbody .k-button,
.k-ie8 .k-grid tbody button.k-button {
  min-width: 64px;
}
.k-grid tbody button.k-button {
  min-width: 78px;
  /* for all except IE8 */
}
html body .k-grid tbody .k-button-icon {
  width: auto;
  min-width: 0;
}
.k-detail-row {
  position: relative;
}
.k-grid .k-detail-cell {
  overflow: visible;
}
.k-grid .k-edit-cell {
  padding: 0 .3em;
  white-space: nowrap;
}
.k-grid .k-edit-cell .k-tooltip {
  white-space: normal;
}
.k-edit-cell > .k-textbox,
.k-edit-cell > .k-widget,
.k-grid-edit-row > td > .k-textbox,
.k-grid-edit-row > td > .k-widget,
.k-grid-edit-row > td > .text-box {
  width: 100%;
}
html .k-edit-cell .k-tooltip,
html .k-grid-edit-row .k-tooltip {
  width: auto;
  max-width: 300px;
}
.k-edit-cell input[type="checkbox"] {
  margin-left: .6em;
}
.k-grid tbody td > .k-grid-delete {
  margin-top: -0.2em;
  margin-bottom: -0.2em;
}
/* Grid :: resizing */
.k-grid-resize-indicator {
  position: absolute;
  width: 2px;
  background-color: #aaa;
}
.k-grid-header .k-resize-handle,
.k-grid > .k-resize-handle {
  position: absolute;
  height: 25px;
  cursor: col-resize;
  z-index: 2;
}
.k-marquee {
  position: absolute;
  z-index: 100000;
}
.k-marquee-color,
.k-marquee-text {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
}
.k-marquee-color {
  filter: alpha(opacity=60);
  opacity: .6;
}
.k-ie9 .k-column-menu {
  width: 160px;
  /*fix flicker on item hover*/
}
.k-ie8 .k-grid-filter,
.k-ie8 .k-header-column-menu {
  font-size: 100%;
  /* Fix small menus in IE8 */
}
.k-column-menu {
  min-width: 160px;
}
.k-column-menu .k-sprite {
  margin-right: 10px;
}
.k-column-menu > .k-menu {
  border-width: 0;
}
.k-columns-item .k-group {
  max-height: 200px;
  overflow: auto;
}
/* Remove Grid scrollbar during built-in export */
.k-pdf-export-shadow .k-grid {
  float: left;
  width: auto !important;
}
/* Remove all sizes and scrolling */
.k-pdf-export-shadow .k-grid,
.k-pdf-export-shadow .k-grid-content,
.k-pdf-export-shadow .k-grid-content-locked {
  height: auto !important;
  overflow: visible;
}
.k-pdf-export-shadow .k-grid-header-locked + .k-grid-header-wrap,
.k-pdf-export-shadow .k-grid-content-locked + .k-grid-content,
.k-pdf-export-shadow .k-grid-footer-locked + .k-grid-footer-wrap {
  width: auto !important;
}
/* Remove empty space reserved above the scrollbar */
.k-pdf-export-shadow .k-grid-header,
.k-pdf-export-shadow .k-grid-footer {
  padding: 0 !important;
}
.k-loading-pdf-mask {
  position: absolute;
  width: 100%;
  height: 100%;
  top: 0;
  left: 0;
  z-index: 100;
}
.k-loading-pdf-mask .k-loading-color {
  filter: alpha(opacity=50);
  opacity: 0.5;
}
.k-loading-pdf-mask .k-loading-pdf-progress {
  margin: auto;
  position: absolute;
  top: 0;
  bottom: 0;
  left: 0;
  right: 0;
}
.k-pdf-export .k-loading-pdf-mask {
  display: none;
}
/* responsive styles  */
.k-autofitting {
  width: auto !important;
  table-layout: auto !important;
}
.k-autofitting th.k-header,
.k-autofitting td {
  white-space: nowrap !important;
}
.k-autofitting .k-detail-row {
  display: none !important;
}
@media only screen and (max-width: 1024px) {
  .k-webkit .k-pager-wrap,
  .k-ff .k-pager-wrap,
  .k-ie11 .k-pager-wrap,
  .k-safari .k-pager-wrap {
    overflow: visible;
  }
  .k-webkit .k-pager-wrap .k-pager-nav,
  .k-ff .k-pager-wrap .k-pager-nav,
  .k-ie11 .k-pager-wrap .k-pager-nav,
  .k-safari .k-pager-wrap .k-pager-nav,
  .k-webkit .k-pager-input,
  .k-ff .k-pager-input,
  .k-ie11 .k-pager-input,
  .k-safari .k-pager-input {
    display: inline-block;
    vertical-align: top;
  }
  .k-webkit .k-pager-numbers,
  .k-ff .k-pager-numbers,
  .k-ie11 .k-pager-numbers,
  .k-safari .k-pager-numbers,
  .k-webkit .k-grid .k-pager-numbers,
  .k-ff .k-grid .k-pager-numbers,
  .k-ie11 .k-grid .k-pager-numbers,
  .k-safari .k-grid .k-pager-numbers {
    position: absolute;
    left: 4.8em;
    display: -webkit-inline-box;
    display: -webkit-inline-flex;
    display: -ms-inline-flexbox;
    display: inline-flex;
    -webkit-box-orient: vertical;
    -webkit-box-direction: reverse;
    -webkit-flex-direction: column-reverse;
        -ms-flex-direction: column-reverse;
            flex-direction: column-reverse;
    overflow: visible;
    height: auto;
  }
  .k-webkit .k-pager-numbers.k-state-expanded,
  .k-ff .k-pager-numbers.k-state-expanded,
  .k-ie11 .k-pager-numbers.k-state-expanded,
  .k-safari .k-pager-numbers.k-state-expanded,
  .k-webkit .k-grid .k-pager-numbers.k-state-expanded,
  .k-ff .k-grid .k-pager-numbers.k-state-expanded,
  .k-ie11 .k-grid .k-pager-numbers.k-state-expanded,
  .k-safari .k-grid .k-pager-numbers.k-state-expanded {
    -ms-transform: translatey(-100%);
        transform: translatey(-100%);
    -webkit-transform: translatey(-100%);
  }
  .k-webkit .km-pane-wrapper .k-pager-numbers,
  .k-ff .km-pane-wrapper .k-pager-numbers,
  .k-ie11 .km-pane-wrapper .k-pager-numbers,
  .k-safari .km-pane-wrapper .k-pager-numbers,
  .k-webkit .km-pane-wrapper .k-grid .k-pager-numbers,
  .k-ff .km-pane-wrapper .k-grid .k-pager-numbers,
  .k-ie11 .km-pane-wrapper .k-grid .k-pager-numbers,
  .k-safari .km-pane-wrapper .k-grid .k-pager-numbers {
    left: 50%;
    -ms-transform: translate(-50%, -100%);
        transform: translate(-50%, -100%);
    -webkit-transform: translate(-50%, -100%);
  }
  .k-webkit .km-pane-wrapper .k-pager-numbers .k-link,
  .k-ff .km-pane-wrapper .k-pager-numbers .k-link,
  .k-ie11 .km-pane-wrapper .k-pager-numbers .k-link,
  .k-safari .km-pane-wrapper .k-pager-numbers .k-link,
  .k-webkit .km-pane-wrapper .k-pager-numbers .k-state-selected,
  .k-ff .km-pane-wrapper .k-pager-numbers .k-state-selected,
  .k-ie11 .km-pane-wrapper .k-pager-numbers .k-state-selected,
  .k-safari .km-pane-wrapper .k-pager-numbers .k-state-selected,
  .k-webkit .km-pane-wrapper .k-pager-wrap > .k-link,
  .k-ff .km-pane-wrapper .k-pager-wrap > .k-link,
  .k-ie11 .km-pane-wrapper .k-pager-wrap > .k-link,
  .k-safari .km-pane-wrapper .k-pager-wrap > .k-link,
  .k-webkit .km-pane-wrapper .k-pager-wrap > .k-pager-info,
  .k-ff .km-pane-wrapper .k-pager-wrap > .k-pager-info,
  .k-ie11 .km-pane-wrapper .k-pager-wrap > .k-pager-info,
  .k-safari .km-pane-wrapper .k-pager-wrap > .k-pager-info {
    padding-top: 0;
    padding-bottom: 0;
  }
  .k-webkit .k-rtl .k-pager-numbers,
  .k-ff .k-rtl .k-pager-numbers,
  .k-ie11 .k-rtl .k-pager-numbers,
  .k-safari .k-rtl .k-pager-numbers,
  .k-webkit .k-rtl .k-grid .k-pager-numbers,
  .k-ff .k-rtl .k-grid .k-pager-numbers,
  .k-ie11 .k-rtl .k-grid .k-pager-numbers,
  .k-safari .k-rtl .k-grid .k-pager-numbers {
    left: auto;
    right: 4.8em;
    width: 4.5em;
  }
  .k-webkit .k-rtl .km-pane-wrapper .k-pager-numbers,
  .k-ff .k-rtl .km-pane-wrapper .k-pager-numbers,
  .k-ie11 .k-rtl .km-pane-wrapper .k-pager-numbers,
  .k-safari .k-rtl .km-pane-wrapper .k-pager-numbers,
  .k-webkit .k-rtl .km-pane-wrapper .k-grid .k-pager-numbers,
  .k-ff .k-rtl .km-pane-wrapper .k-grid .k-pager-numbers,
  .k-ie11 .k-rtl .km-pane-wrapper .k-grid .k-pager-numbers,
  .k-safari .k-rtl .km-pane-wrapper .k-grid .k-pager-numbers {
    right: 5.8em;
  }
  .k-webkit .k-pager-numbers .k-current-page,
  .k-ff .k-pager-numbers .k-current-page,
  .k-ie11 .k-pager-numbers .k-current-page,
  .k-safari .k-pager-numbers .k-current-page,
  .k-webkit .k-grid .k-pager-numbers .k-current-page,
  .k-ff .k-grid .k-pager-numbers .k-current-page,
  .k-ie11 .k-grid .k-pager-numbers .k-current-page,
  .k-safari .k-grid .k-pager-numbers .k-current-page {
    display: block;
    border-left: 0;
  }
  .k-webkit .k-pager-numbers.k-state-expanded .k-current-page,
  .k-ff .k-pager-numbers.k-state-expanded .k-current-page,
  .k-ie11 .k-pager-numbers.k-state-expanded .k-current-page,
  .k-safari .k-pager-numbers.k-state-expanded .k-current-page,
  .k-webkit .k-grid .k-pager-number.k-state-expanded .k-current-page,
  .k-ff .k-grid .k-pager-number.k-state-expanded .k-current-page,
  .k-ie11 .k-grid .k-pager-number.k-state-expanded .k-current-page,
  .k-safari .k-grid .k-pager-number.k-state-expanded .k-current-page {
    -ms-transform: translatey(100%);
        transform: translatey(100%);
    -webkit-transform: translatey(100%);
  }
  .k-webkit .k-pager-numbers li:not(.k-current-page),
  .k-ff .k-pager-numbers li:not(.k-current-page),
  .k-ie11 .k-pager-numbers li:not(.k-current-page),
  .k-safari .k-pager-numbers li:not(.k-current-page) {
    display: none;
  }
  .k-webkit .k-pager-numbers .k-current-page .k-link,
  .k-ff .k-pager-numbers .k-current-page .k-link,
  .k-ie11 .k-pager-numbers .k-current-page .k-link,
  .k-safari .k-pager-numbers .k-current-page .k-link {
    width: 3.2em;
    padding: 0 .429em 0 .714em;
    border-radius: 1.0833em;
  }
  .k-webkit .k-pager-numbers + .k-link,
  .k-ff .k-pager-numbers + .k-link,
  .k-ie11 .k-pager-numbers + .k-link,
  .k-safari .k-pager-numbers + .k-link {
    margin-left: 4.8em;
  }
  .k-webkit .k-rtl .k-pager-numbers + .k-link,
  .k-ff .k-rtl .k-pager-numbers + .k-link,
  .k-ie11 .k-rtl .k-pager-numbers + .k-link,
  .k-safari .k-rtl .k-pager-numbers + .k-link {
    margin-right: 5.1em;
    margin-left: 0;
  }
  .k-webkit .k-pager-numbers .k-state-selected,
  .k-ff .k-pager-numbers .k-state-selected,
  .k-ie11 .k-pager-numbers .k-state-selected,
  .k-safari .k-pager-numbers .k-state-selected,
  .k-webkit .k-pager-numbers .k-link,
  .k-ff .k-pager-numbers .k-link,
  .k-ie11 .k-pager-numbers .k-link,
  .k-safari .k-pager-numbers .k-link {
    display: block;
    margin-right: 0;
    padding: 1px 5px 1px 5px;
    text-align: left;
  }
  .k-webkit .k-pager-numbers.k-state-expanded,
  .k-ff .k-pager-numbers.k-state-expanded,
  .k-ie11 .k-pager-numbers.k-state-expanded,
  .k-safari .k-pager-numbers.k-state-expanded {
    -webkit-box-sizing: border-box;
            box-sizing: border-box;
    padding: 2px 2px 0;
  }
  .k-webkit .k-pager-numbers.k-state-expanded .k-current-page,
  .k-ff .k-pager-numbers.k-state-expanded .k-current-page,
  .k-ie11 .k-pager-numbers.k-state-expanded .k-current-page,
  .k-safari .k-pager-numbers.k-state-expanded .k-current-page {
    margin: -2em -3px 0;
    padding: 0;
  }
  .k-webkit .k-pager-numbers.k-state-expanded .k-current-page .k-link,
  .k-ff .k-pager-numbers.k-state-expanded .k-current-page .k-link,
  .k-ie11 .k-pager-numbers.k-state-expanded .k-current-page .k-link,
  .k-safari .k-pager-numbers.k-state-expanded .k-current-page .k-link {
    border-radius: 0 0 1.0833em 1.0833em;
  }
  .k-webkit .k-pager-numbers.k-state-expanded li,
  .k-ff .k-pager-numbers.k-state-expanded li,
  .k-ie11 .k-pager-numbers.k-state-expanded li,
  .k-safari .k-pager-numbers.k-state-expanded li {
    display: inline-block;
  }
}
@media only screen and (max-width: 640px) {
  .k-webkit .k-pager-info,
  .k-ff .k-pager-info,
  .k-ie11 .k-pager-info,
  .k-safari .k-pager-info {
    display: none;
  }
}
@media only screen and (max-width: 480px) {
  .k-webkit .k-pager-sizes,
  .k-ff .k-pager-sizes,
  .k-ie11 .k-pager-sizes,
  .k-safari .k-pager-sizes {
    display: none;
  }
}
.k-treelist .k-status {
  padding: .4em .6em;
  line-height: 1.6em;
}
.k-treelist .k-status .k-loading {
  vertical-align: baseline;
  margin-right: 5px;
}
.k-treelist tr.k-hidden {
  display: none;
}
.k-treelist.k-treelist-dragging,
.k-treelist.k-treelist-dragging .k-state-hover {
  cursor: default;
}
.k-treelist .k-drop-hint {
  position: absolute;
  z-index: 10000;
  visibility: hidden;
  width: 80px;
  height: 5px;
  margin-top: -3px;
  background-color: transparent;
  background-repeat: no-repeat;
}
.k-drag-separator {
  display: inline-block;
  border-right: 1px solid;
  height: 1em;
  vertical-align: top;
  margin: 0 .5em;
}
/* Gantt Chart start */
/* Gantt Main Layout */
.k-gantt {
  white-space: nowrap;
  position: relative;
}
.k-gantt-layout {
  display: inline-block;
  white-space: normal;
  vertical-align: top;
}
.k-gantt .k-splitbar {
  position: relative;
  cursor: e-resize;
  width: 5px;
  border-width: 0 1px;
  background-repeat: repeat-y;
}
.k-gantt .k-gantt-layout th {
  vertical-align: bottom;
}
.k-gantt td {
  overflow: hidden;
  white-space: nowrap;
  vertical-align: top;
}
.k-gantt .k-grid .k-edit-cell {
  vertical-align: middle;
}
.k-gantt-treelist > .k-treelist,
.k-gantt-timeline > .k-timeline {
  border-width: 0;
  height: 100%;
}
/* Gantt Toolbar, footer */
.k-gantt-toolbar {
  border-style: solid;
  border-width: 0 0 1px;
  line-height: 2.4em;
  padding: .5em;
}
.k-gantt-layout + .k-gantt-toolbar {
  border-width: 1px 0 0;
}
.k-gantt-actions,
.k-gantt-toolbar > ul {
  float: left;
  margin-right: .6em;
}
.k-gantt-actions > .k-button {
  margin-right: .5em;
  vertical-align: top;
}
.k-gantt-toolbar > .k-gantt-views {
  float: right;
  margin-right: 0;
}
.k-gantt-toolbar > .k-gantt-views > li.k-current-view {
  display: none;
}
.k-gantt-toolbar > ul > li {
  display: inline-block;
  border-style: solid;
  border-width: 1px 1px 1px 0;
}
.k-gantt-toolbar > ul > li:first-child + li {
  border-left-width: 1px;
}
.k-gantt-toolbar .k-link {
  display: inline-block;
  padding: 0 1.1em;
}
.k-gantt-toolbar li:first-child + li,
.k-gantt-toolbar li:first-child + li > .k-link {
  border-top-left-radius: 4px;
  border-bottom-left-radius: 4px;
}
.k-gantt-toolbar li:last-child,
.k-gantt-toolbar li:last-child > .k-link {
  border-top-right-radius: 4px;
  border-bottom-right-radius: 4px;
}
.k-gantt-toolbar li.k-button {
  line-height: inherit;
  padding-top: 0;
  padding-bottom: 0;
}
/* Gantt TreeList */
.k-gantt-treelist .k-grid-header tr {
  height: 5em;
}
.k-gantt .k-treelist .k-grid-header {
  padding: 0 !important;
}
.k-gantt .k-treelist .k-grid-content {
  overflow-y: hidden;
  overflow-x: scroll;
}
.k-treelist-group > tr > span {
  font-weight: bold;
}
.k-treelist-group .k-widget {
  font-weight: normal;
}
/* Gantt TimeLine */
.k-gantt-timeline .k-grid-header tr {
  height: 2.5em;
}
.k-gantt-tasks {
  /*needed for RTL*/
  position: relative;
}
.k-gantt-rows tr,
.k-gantt-tasks tr,
.k-gantt .k-grid-content tr {
  height: 2.3em;
}
.k-gantt .k-gantt-tasks td:after {
  content: "\a0";
}
.k-gantt-timeline {
  background: transparent;
}
.k-gantt-rows,
.k-gantt-columns,
.k-gantt-dependencies {
  position: absolute;
  top: 0;
  left: 0;
}
.k-gantt-tables {
  position: relative;
}
.k-gantt .k-timeline .k-grid-content {
  overflow-x: scroll;
}
.k-gantt .k-gantt-timeline th {
  text-align: center;
}
.k-gantt .k-gantt-timeline tr:first-child th {
  border-bottom-width: 1px;
}
/* Gantt TimeLine objects */
/* Summary */
.k-task-summary {
  height: 10px;
  display: inline-block;
  vertical-align: top;
  margin-top: 3px;
}
.k-task-summary-complete {
  height: 10px;
  position: relative;
  z-index: 2;
}
.k-task-summary-progress {
  height: 15px;
  overflow: hidden;
}
.k-task-summary:before,
.k-task-summary-complete:before,
.k-task-summary:after,
.k-task-summary-complete:after {
  content: "";
  position: absolute;
  top: 0;
  width: 0;
  height: 0;
  border-style: solid;
  border-width: 8px;
  border-color: transparent;
}
.k-task-summary:before,
.k-task-summary-complete:before {
  left: 0;
  border-left-color: inherit;
}
.k-task-summary:after,
.k-task-summary-complete:after {
  right: 0;
  border-right-color: inherit;
}
/* Lines */
.k-line-h,
.k-line-v {
  position: absolute;
}
.k-line-h {
  height: 2px;
}
.k-line-v {
  width: 2px;
}
.k-arrow-e,
.k-arrow-w {
  position: absolute;
  top: -4px;
  width: 0;
  height: 0;
  border-style: solid;
  border-width: 5px;
}
.k-arrow-e {
  right: -6px;
  border-top-color: transparent;
  border-bottom-color: transparent;
  border-right-color: transparent;
}
.k-arrow-w {
  left: -6px;
  border-top-color: transparent;
  border-bottom-color: transparent;
  border-left-color: transparent;
}
/* Milestone */
.k-task-milestone {
  width: 13px;
  height: 13px;
  margin-top: 3px;
  border-style: solid;
  border-width: 1px;
  -webkit-transform: rotate(45deg);
      -ms-transform: rotate(45deg);
          transform: rotate(45deg);
}
.k-ie8 .k-task-milestone {
  margin-left: 1px;
}
/* Button */
.k-gantt .k-gantt-treelist .k-button,
.k-gantt .k-gantt-tasks .k-button-icon {
  padding-top: 0;
  padding-bottom: 0;
}
.k-gantt .k-gantt-tasks .k-button-icon {
  margin-top: 4px;
}
.k-gantt .k-gantt-treelist .k-button {
  margin-top: -4px;
  margin-bottom: -2px;
}
.k-gantt .k-gantt-tasks .k-button-icon {
  padding-left: 2px;
  padding-right: 2px;
}
.k-gantt .k-gantt-treelist .k-button .k-icon,
.k-gantt .k-gantt-tasks .k-button .k-icon {
  vertical-align: text-top;
}
.k-rel .k-button-icon {
  position: absolute;
  left: 200px;
}
/* Tasks */
.k-rel {
  position: relative;
  height: 0;
  top: -0.3em;
}
.k-task-wrap {
  position: absolute;
  padding: 0 23px 5px;
  margin: -1px -23px 0;
  z-index: 2;
}
.k-task-wrap:hover,
.k-line.k-state-selected {
  z-index: 3;
}
.k-milestone-wrap {
  margin: 0 -13px 0 -27px;
}
.k-task-content {
  position: relative;
  z-index: 2;
}
.k-task-complete {
  position: absolute;
  top: 0;
  bottom: 0;
  left: 0;
  width: 20%;
  z-index: 1;
}
.k-task-dot {
  position: absolute;
  top: 0;
  width: 16px;
  height: 16px;
  line-height: 16px;
  display: none;
  cursor: pointer;
}
.k-task-dot.k-state-hover {
  background-color: transparent;
}
.k-task-single + .k-task-dot,
.k-task-single + .k-task-dot + .k-task-dot {
  top: .2em;
}
.k-task-wrap:hover .k-task-dot,
.k-task-wrap-active .k-task-dot {
  display: block;
}
.k-task-dot:before {
  content: "\a0";
  display: inline-block;
  width: 0;
  height: 16px;
}
.k-task-dot:after {
  content: "";
  display: inline-block;
  vertical-align: middle;
  width: 8px;
  height: 8px;
  border-radius: 4px;
  margin-left: 4px;
}
.k-task-dot:hover:after,
.k-task-dot.k-state-hover:after,
.k-task-wrap-active .k-task-dot:after {
  border-style: solid;
  border-width: 1px;
  margin-left: 3px;
}
.k-task-start {
  left: 0;
}
.k-task-end {
  right: 0;
}
.k-task-single {
  border-style: solid;
  border-width: 1px;
  text-align: left;
  overflow: hidden;
  cursor: default;
  min-height: 1.3em;
  white-space: nowrap;
}
.k-task-template {
  padding: .2em 1.4em .2em .6em;
  line-height: normal;
}
.k-task-actions,
.k-task-content > .k-link {
  position: absolute;
  top: 0;
  right: 4px;
  white-space: nowrap;
}
.k-task-actions {
  z-index: 1;
}
.k-task-actions:first-child {
  position: static;
  float: left;
  margin: 4px 2px 0 4px;
}
.k-webkit .k-task-actions:first-child {
  margin-top: 3px;
}
.k-task-actions:first-child > .k-link {
  display: inline-block;
}
.k-task-delete {
  display: none;
}
.k-task-wrap:hover .k-task-delete,
.k-task-wrap-active .k-task-delete {
  display: inline-block;
}
.k-task-single .k-resize-handle {
  position: absolute;
  visibility: hidden;
  z-index: 2;
  height: auto;
}
.k-task-single:hover .k-resize-handle,
.k-task-wrap-active .k-resize-handle {
  visibility: visible;
}
.k-task-single .k-resize-handle:after {
  content: "";
  position: absolute;
  filter: alpha(opacity=50);
  opacity: .5;
}
.k-task-content > .k-resize-e {
  right: 0;
  top: 0;
  bottom: 0;
  width: .4em;
}
.k-task-content > .k-resize-w {
  left: 0;
  top: 0;
  bottom: 0;
  width: .4em;
}
.k-task-content > .k-resize-e:after,
.k-task-content > .k-resize-w:after {
  left: 1px;
  top: 50%;
  margin-top: -0.7em;
  height: 1.4em;
  width: 1px;
}
.k-task-content > .k-resize-e:after {
  left: auto;
  right: 1px;
}
.k-task-draghandle {
  position: absolute;
  bottom: 0;
  width: 0;
  height: 0;
  margin-left: 16px;
  border-width: 5px;
  border-style: solid;
  border-top-color: transparent;
  border-left-color: transparent;
  border-right-color: transparent;
  display: none;
  cursor: e-resize;
}
.k-task-wrap:hover .k-task-draghandle,
.k-task-wrap-active .k-task-draghandle {
  display: block;
}
.k-dependency-hint {
  z-index: 4;
}
/* Higher row height styles */
.k-gantt-rowheight .k-task-summary,
.k-gantt-rowheight .k-task-milestone,
.k-gantt-rowheight .k-task-dot,
.k-gantt-rowheight .k-task-single + .k-task-dot,
.k-gantt-rowheight .k-task-single + .k-task-dot + .k-task-dot {
  top: 50%;
}
.k-gantt-rowheight .k-task-summary,
.k-gantt-rowheight .k-task-milestone {
  margin-top: -6px;
}
.k-gantt-rowheight .k-task-dot,
.k-gantt-rowheight .k-task-single + .k-task-dot,
.k-gantt-rowheight .k-task-single + .k-task-dot + .k-task-dot {
  margin-top: -11px;
}
.k-gantt-rowheight .k-task-single {
  height: -webkit-calc(98%);
  height: calc(98%);
}
.k-ie .k-gantt-rowheight .k-task-single {
  height: 99%;
}
.k-gantt-rowheight .k-task-content {
  height: 100%;
}
.k-gantt-rowheight .k-task-content > .k-resize-e:after,
.k-gantt-rowheight .k-task-content > .k-resize-w:after {
  top: 0;
  margin-top: 0;
  height: 100%;
}
/*Task Hover Tooltip*/
.k-task-details {
  padding: .4em;
  text-align: left;
  white-space: nowrap;
}
.k-task-details > strong {
  font-size: 120%;
  display: block;
}
.k-task-pct {
  margin: .5em 0 .1em;
  font-size: 170%;
}
.k-task-details > ul {
  line-height: 1.2;
}
/*Resources*/
.k-resources-wrap {
  position: absolute;
  z-index: 2;
  zoom: 1;
  margin-left: 20px;
  margin-top: -2px;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}
.k-resources-wrap .k-resource {
  margin: 0px 5px;
}
/* Gantt Edit form */
.k-gantt-edit-form > .k-edit-form-container {
  width: 430px;
}
.k-gantt-edit-form > .k-resources-form-container {
  width: 506px;
}
.k-resources-form-container > .k-grid {
  margin: 0 .9em;
}
.k-gantt-edit-form > .k-edit-form-container .k-textbox,
.k-gantt-edit-form > .k-edit-form-container .k-numerictextbox {
  width: 15em;
}
.k-gantt-edit-form .k-edit-buttons .k-gantt-delete {
  float: left;
}
/* Gantt Chart PDF export */
.k-pdf-export-shadow .k-gantt {
  float: left;
}
/* Remove all sizes and scrolling */
.k-pdf-export-shadow .k-gantt,
.k-pdf-export-shadow .k-gantt-timeline,
.k-pdf-export-shadow .k-gantt .k-grid-content {
  width: auto !important;
  height: auto !important;
  overflow: visible !important;
}
.k-pdf-export-shadow .k-gantt-treelist {
  height: auto !important;
  overflow: visible !important;
}
/* Remove empty space reserved above the scrollbar */
.k-pdf-export-shadow .k-gantt-timeline .k-grid-header {
  padding: 0 !important;
}
/* Hide the splitter */
.k-pdf-export-shadow .k-gantt .k-splitbar,
.k-pdf-export-shadow .k-pdf-export {
  display: none;
}
/* Responsive styles  */
button.k-gantt-toggle {
  display: none;
  float: left;
  margin-right: .5em;
}
.k-rtl button.k-gantt-toggle {
  float: right;
  margin-right: 0;
  margin-left: .5em;
}
@media only screen and (max-width: 1024px) {
  .k-gantt-toolbar > ul.k-gantt-views {
    position: absolute;
    right: 6px;
    top: 6px;
    z-index: 10000;
  }
  .k-rtl .k-gantt-toolbar > ul.k-gantt-views {
    right: auto;
    left: 6px;
  }
  .k-gantt-toolbar > ul.k-gantt-views > li:not(.k-current-view) {
    display: none;
  }
  .k-gantt-toolbar > ul.k-gantt-views > li.k-current-view {
    display: block;
    border-width: 1px;
  }
  .k-rtl .k-gantt-toolbar > ul.k-gantt-views > li.k-current-view {
    text-align: left;
    padding-left: 1em;
  }
  .k-gantt-toolbar > ul.k-gantt-views > li.k-current-view > .k-link {
    display: block;
    position: relative;
    padding-right: 2.5em;
    padding-left: 1em;
  }
  .k-rtl .k-gantt-toolbar > ul.k-gantt-views > li.k-current-view > .k-link {
    padding-left: 0;
  }
  .k-gantt-toolbar > ul.k-gantt-views > li.k-current-view > .k-link:after {
    display: block;
    content: "";
    position: absolute;
    top: 50%;
    margin-top: -0.6em;
    right: 0.333em;
    width: 16px;
    height: 16px;
  }
  .k-gantt-toolbar > ul.k-gantt-views.k-state-expanded > li,
  .k-gantt-toolbar > ul.k-gantt-views.k-state-expanded > li:first-child + li {
    display: block;
    border: 0;
    border-radius: 0;
  }
  .k-gantt-toolbar > ul.k-gantt-views.k-state-expanded {
    border: 1px solid #c5c5c5;
    background-color: #fff;
    background-image: none;
    -webkit-box-shadow: 0 2px 2px 0 rgba(0, 0, 0, 0.3);
            box-shadow: 0 2px 2px 0 rgba(0, 0, 0, 0.3);
  }
  .k-rtl .k-gantt-toolbar > ul.k-gantt-views.k-state-expanded {
    text-align: left;
  }
}
@media only screen and (max-width: 480px) {
  button.k-gantt-toggle {
    display: inline-block;
  }
  .k-gantt-create span + span,
  .k-gantt-pdf span + span {
    display: none;
  }
  .k-gantt-create .k-icon,
  .k-gantt-pdf .k-icon {
    margin: 0;
  }
  .k-gantt .k-splitbar {
    display: none;
    width: 0;
    border-width: 0;
  }
  .k-gantt .k-gantt-treelist {
    display: none;
    max-width: 0;
  }
  .k-gantt .k-treelist .k-grid-content {
    overflow-y: scroll;
  }
  .k-gantt .k-gantt-timeline {
    width: 100%;
  }
}
/* Gantt Chart end */
/* Pivot start */
.k-pivot {
  position: relative;
}
.k-pivot-toolbar {
  padding: .2em;
  border-bottom-width: 1px;
  border-bottom-style: solid;
}
.k-pivot .k-pivot-toolbar {
  padding: .6em;
}
.k-pivot-toolbar .k-button {
  margin-right: .4em;
  line-height: 1.2em;
  font-size: .9em;
  text-align: left;
  position: relative;
  padding: .3em 5em .3em .3em;
}
.k-field-actions {
  position: absolute;
  right: 2px;
  top: 3px;
}
/*IE7 requires the following style to be applied to cells directly*/
.k-pivot .k-grid td {
  white-space: nowrap;
}
.k-pivot-layout {
  border-spacing: 0;
  table-layout: auto;
}
.k-pivot-layout > tbody > tr > td {
  vertical-align: top;
  padding: 0;
}
.k-pivot td {
  vertical-align: top;
}
.k-pivot-rowheaders > .k-grid,
.k-pivot-table > .k-grid {
  border-width: 0;
}
.k-pivot-rowheaders > .k-grid td:first-child,
.k-pivot-table .k-grid-header .k-header.k-first {
  border-left-width: 1px;
}
.k-pivot-rowheaders > .k-grid td.k-first {
  border-left-width: 0;
}
.k-pivot-rowheaders > .k-grid {
  overflow: hidden;
}
.k-pivot-table {
  border-left-width: 1px;
  border-left-style: solid;
}
.k-pivot-table .k-grid-header-wrap > table {
  height: 100%;
}
.k-pivot .k-grid-header .k-header {
  vertical-align: top;
}
.k-header.k-alt,
td.k-alt {
  font-weight: bold;
}
.k-header.k-alt {
  background-image: none;
}
.k-pivot-layout .k-grid td {
  border-bottom-width: 1px;
}
.k-pivot-layout .k-grid-footer > td {
  border-top-width: 0;
}
.k-pivot-filter-window .k-treeview {
  max-height: 600px;
}
/* selector */
.k-fieldselector .k-edit-buttons {
  bottom: auto;
}
.k-fieldselector .k-edit-label {
  width: 16%;
}
.k-fieldselector .k-edit-field {
  width: 77%;
}
.k-fieldselector .k-edit-field > .k-widget,
.k-fieldselector .k-edit-field > .k-textbox {
  width: 99%;
}
.k-fieldselector .k-edit-buttons > input,
.k-fieldselector .k-edit-buttons > label {
  float: left;
  margin-top: .4em;
}
.k-fieldselector p {
  margin: 0 0 .2em .5em;
  text-transform: uppercase;
}
.k-fieldselector p .k-icon {
  margin: 0 5px 0 0;
}
.k-fieldselector .k-columns {
  border-style: solid;
  border-width: 0;
}
.k-fieldselector .k-columns > div {
  overflow: auto;
  padding: .6em;
  border-style: solid;
  border-width: 0 0 0 1px;
  float: left;
  width: 45%;
}
.k-fieldselector .k-columns > div:first-child {
  border-width: 0;
  margin-right: -1px;
}
.k-fieldselector .k-columns > div + div {
  float: right;
  border-width: 0;
}
.k-fieldselector div.k-treeview {
  border-width: 0;
  margin-right: -1px;
  padding-left: 4px;
  overflow: visible;
}
.k-fieldselector .k-list-container {
  margin-left: .5em;
  margin-bottom: 1em;
  padding: .2em 0 0;
  border-style: solid;
  border-width: 1px;
}
.k-fieldselector .k-list {
  padding-bottom: 2em;
}
.k-fieldselector .k-list li.k-item {
  padding: .3em 3.3em .3em .3em;
  margin: 0 .2em.2em;
  position: relative;
  font-size: .9em;
  line-height: 1.2em;
  min-height: 1em;
}
/* KPI icons */
.k-i-kpi-decrease {
  background-position: 0 0;
}
.k-i-kpi-denied {
  background-position: -16px 0;
}
.k-i-kpi-equal {
  background-position: -32px 0;
}
.k-i-kpi-hold {
  background-position: -48px 0;
}
.k-i-kpi-increase {
  background-position: -64px 0;
}
.k-i-kpi-open {
  background-position: -80px 0;
}
/* Pivot PDF Export styles */
.k-pdf-export-shadow .k-pivot .k-grid-content {
  overflow: visible !important;
}
.k-pdf-export-shadow .k-pivot .k-pivot-rowheaders .k-grid,
.k-pdf-export-shadow .k-pivot .k-grid-content {
  height: 100% !important;
}
.k-pdf-export-shadow .k-pivot .k-grid-header {
  padding-right: 0 !important;
}
.k-pdf-export-shadow .k-pivot {
  width: auto !important;
  height: auto !important;
}
.k-pdf-export-shadow .k-pivot .k-grid-header-wrap > table,
.k-pdf-export-shadow .k-pivot .k-grid-content > table {
  width: 100% !important;
  height: auto !important;
}
/* Pivot end */
/* Calendar */
.k-calendar {
  position: relative;
  display: inline-block;
  width: 16.917em;
  overflow: hidden;
}
.k-calendar td,
.k-calendar .k-link {
  text-decoration: none;
}
.k-calendar .k-action-link {
  text-decoration: underline;
}
.k-calendar .k-header,
.k-calendar .k-footer {
  position: relative;
  text-align: center;
  zoom: 1;
}
.k-widget.k-calendar .k-nav-prev,
.k-widget.k-calendar .k-nav-next {
  position: absolute;
  top: 0.16666em;
  line-height: 1.8333em;
  height: 1.8333em;
}
.k-widget.k-calendar .k-nav-prev {
  left: 1%;
}
.k-widget.k-calendar .k-nav-next {
  right: 1%;
}
.k-calendar .k-content {
  float: left;
  border-spacing: 0;
  width: 100%;
  height: 14.167em;
  border-width: 0;
  margin: 0;
  table-layout: fixed;
  outline: 0;
}
.k-calendar .k-content,
.k-calendar .k-content th {
  text-align: right;
}
.k-calendar .k-animation-container .k-content {
  height: 100%;
}
.k-widget.k-calendar .k-nav-fast {
  display: inline-block;
  width: 75%;
  height: 1.8333em;
  line-height: 1.8333em;
  margin: 0.16666em -0.08333em 0.3333em 0;
}
.k-calendar .k-header .k-icon {
  vertical-align: middle;
}
.k-calendar .k-header .k-link.k-nav-prev,
.k-calendar .k-header .k-link.k-nav-next {
  height: 1.8333em;
  width: 1.8333em;
}
.k-calendar th {
  border-bottom-style: solid;
  border-bottom-width: 1px;
  padding: .4em .45em .4em .1em;
  font-weight: normal;
  cursor: default;
}
.k-calendar td {
  padding: 0.08333em;
  cursor: pointer;
}
.k-calendar .k-state-focus {
  border-style: dotted;
  border-width: 0.08333em;
  padding: 0;
}
.k-calendar .k-content .k-link {
  display: block;
  overflow: hidden;
  min-height: 1.8333em;
  line-height: 1.8333em;
  padding: 0 .45em 0 .1em;
}
.k-calendar .k-meta-view .k-link {
  padding: .25em 0 .3em;
  text-align: center;
}
.k-calendar .k-footer {
  clear: both;
}
.k-calendar .k-footer .k-nav-today,
.k-calendar .k-footer > .k-state-disabled {
  display: block;
  height: 100%;
  padding: .5em 0;
}
.k-calendar .k-nav-today:hover {
  text-decoration: underline;
}
/* TreeView */
div.k-treeview {
  /* due to k-widget */
  border-width: 0;
  background: none;
  overflow: auto;
  white-space: nowrap;
}
.k-treeview .k-item {
  display: block;
  border-width: 0;
  margin: 0;
  padding: 0 0 0 16px;
}
.k-treeview > .k-group,
.k-treeview .k-item > .k-group,
.k-treeview .k-content {
  margin: 0;
  padding: 0;
  background: none;
  list-style-type: none;
  position: relative;
}
.k-treeview .k-icon,
.k-treeview .k-image,
.k-treeview .k-sprite,
.k-treeview .k-checkbox,
.k-treeview .k-in {
  display: inline-block;
  vertical-align: top;
}
.k-treeview .k-checkbox {
  margin-top: .2em;
}
.k-treeview .k-icon,
.k-treeview .k-in {
  vertical-align: middle;
}
.k-treeview .k-request-retry {
  vertical-align: baseline;
}
.k-treeview .k-plus,
.k-treeview .k-minus,
.k-treeview .k-plus-disabled,
.k-treeview .k-minus-disabled {
  margin-top: 0.25em;
  margin-left: -16px;
  cursor: pointer;
}
.k-treeview .k-plus-disabled,
.k-treeview .k-minus-disabled {
  cursor: default;
}
.k-treeview .k-sprite,
.k-treeview .k-image {
  margin-right: 3px;
}
.k-treeview .k-in {
  margin: 1px 0 1px 0.3333em;
  padding: 0.429em 0.6667em 0.429em 0.5833em;
  line-height: 1.3333em;
  text-decoration: none;
  border-style: solid;
  border-width: 1px;
}
.k-treeview span.k-in {
  cursor: default;
}
.k-treeview .k-drop-hint {
  position: absolute;
  z-index: 10000;
  visibility: hidden;
  width: 80px;
  height: 5px;
  margin-top: -3px;
  background-color: transparent;
  background-repeat: no-repeat;
}
/* ComboBox & DropDownList */
span.k-datepicker,
span.k-timepicker,
span.k-datetimepicker,
span.k-colorpicker,
span.k-numerictextbox,
span.k-combobox,
span.k-dropdown,
.k-toolbar .k-split-button {
  background-image: none;
}
.k-autocomplete,
.k-combobox,
.k-datepicker,
.k-timepicker,
.k-datetimepicker,
.k-colorpicker,
.k-numerictextbox,
.k-dropdown,
.k-selectbox,
.k-textbox,
.k-toolbar .k-split-button {
  position: relative;
  display: inline-block;
  width: 12.4em;
  overflow: visible;
  border-width: 0;
  vertical-align: middle;
}
.k-filter-menu .k-combobox,
.k-filter-menu .k-datepicker,
.k-filter-menu .k-timepicker,
.k-filter-menu .k-datetimepicker,
.k-filter-menu .k-numerictextbox,
.k-filter-menu .k-dropdown,
.k-filter-menu .k-textbox {
  width: 13.2em;
}
.k-autocomplete,
.k-combobox,
.k-datepicker,
.k-timepicker,
.k-datetimepicker,
.k-colorpicker,
.k-numerictextbox,
.k-dropdown,
.k-selectbox,
.k-toolbar .k-split-button {
  white-space: nowrap;
}
.k-colorpicker,
.k-toolbar .k-split-button {
  width: auto;
}
.k-datetimepicker {
  width: 15em;
}
.k-autocomplete,
.k-picker-wrap,
.k-numeric-wrap {
  position: relative;
  cursor: default;
}
.k-dropdown-wrap {
  position: relative;
}
.k-dropdown-wrap,
.k-picker-wrap,
.k-numeric-wrap {
  display: block;
}
.k-block,
.k-widget,
.k-grid,
.k-slider,
.k-splitter,
.k-treeview,
.k-panelbar,
.k-content,
.k-header-column-menu {
  outline: 0;
  -webkit-tap-highlight-color: rgba(0, 0, 0, 0);
}
.k-block,
.k-slider,
.k-splitbar,
.k-calendar,
.k-treeview,
.k-pager-wrap,
.k-grid-header .k-link,
.k-header-column-menu {
  -webkit-touch-callout: none;
}
.k-popup.k-list-container,
.k-popup.k-calendar-container {
  -webkit-touch-callout: none;
  -webkit-tap-highlight-color: rgba(0, 0, 0, 0);
  padding: 2px;
  border-width: 1px;
  border-style: solid;
}
.k-list-container.k-state-border-down,
.k-autocomplete.k-state-border-down,
.k-dropdown-wrap.k-state-border-down,
.k-picker-wrap.k-state-border-down,
.k-numeric-wrap.k-state-border-down {
  border-bottom-width: 0;
  padding-bottom: 1px;
}
.k-list-container .km-scroll-container {
  padding-bottom: 6px;
}
.k-textbox,
.k-autocomplete,
.k-dropdown-wrap,
.k-picker-wrap,
.k-numeric-wrap {
  border-width: 1px;
  border-style: solid;
  padding: 0 1.9em 0 0;
}
.k-numeric-wrap.k-expand-padding {
  padding-right: 0;
}
.k-textbox,
.k-autocomplete {
  padding: 0;
}
.k-textbox.k-space-left {
  padding-left: 1.9em;
}
.k-textbox.k-space-right {
  padding-right: 1.9em;
}
.k-textbox .k-icon {
  top: 50%;
  margin: -8px 0 0;
  position: absolute;
}
.k-space-left .k-icon {
  left: 3px;
}
.k-space-right .k-icon {
  right: 3px;
}
/*prevent missing bottom border at some zoom levels*/
span.k-textbox:after {
  content: "\a0";
  display: block;
  height: .4px;
  overflow: hidden;
}
.k-autocomplete,
.k-dropdown-wrap.k-state-focused,
.k-dropdown-wrap.k-state-hover,
.k-picker-wrap.k-state-focused,
.k-picker-wrap.k-state-hover,
.k-numeric-wrap.k-state-focused,
.k-numeric-wrap.k-state-hover {
  -webkit-transition: -webkit-box-shadow .15s ease-out;
          transition: box-shadow .15s ease-out;
  -webkit-transition: "box-shadow .15s ease-out";
          transition: "box-shadow .15s ease-out";
}
.k-textbox > input,
.k-picker-wrap .k-input,
.k-numeric-wrap .k-input,
.k-combobox .k-input {
  width: 100%;
  vertical-align: top;
}
.k-picker-wrap .k-input,
.k-numeric-wrap .k-input,
.k-dropdown-wrap .k-input,
.k-selectbox .k-input {
  font-family: inherit;
  border-width: 0;
  outline: 0;
}
.k-dropdown .k-input,
.k-selectbox .k-input {
  background: transparent;
}
.k-picker-wrap .k-select,
.k-numeric-wrap .k-select,
.k-dropdown-wrap .k-select {
  position: absolute;
  /* icon positioning */
  top: 0;
  right: 0;
  display: inline-block;
  vertical-align: top;
  text-decoration: none;
}
.k-combobox .k-select,
.k-picker-wrap .k-select,
.k-numeric-wrap .k-select {
  border-style: solid;
  border-width: 0 0 0 1px;
  border-color: inherit;
  /* skin-related, inherit does not work in ie7- */
}
span.k-datetimepicker .k-select,
span.k-datetimepicker .k-select + .k-select {
  right: 0;
}
.k-textbox > input,
.k-autocomplete .k-input {
  display: block;
}
.k-combobox .k-icon {
  /*margin-top: 1px;*/
}
.k-dropdown .k-select,
.k-selectbox .k-select {
  overflow: hidden;
  border: 0;
  text-decoration: none;
  font: inherit;
  color: inherit;
}
.k-dropdown .k-input,
.k-selectbox .k-input {
  display: block;
  overflow: hidden;
  text-overflow: ellipsis;
}
.k-textbox > input,
.k-autocomplete .k-input,
.k-picker-wrap .k-input,
.k-numeric-wrap .k-input,
.k-dropdown-wrap .k-input,
.k-selectbox .k-input {
  height: 2.214em;
  line-height: 2.214em;
  padding: 0.177em 0;
  text-indent: 0.8em;
  border: 0;
  margin: 0;
}
.k-combobox .k-dropdown-wrap:before,
.k-picker-wrap:before,
.k-numeric-wrap:before {
  content: "\a0";
  display: inline-block;
  width: 0;
  height: 2.214em;
  padding-bottom: 0.3em;
}
/* fix missing bottom border on browser zoom in Chrome */
.k-webkit .k-combobox .k-dropdown-wrap:before,
.k-webkit .k-picker-wrap:before,
.k-webkit .k-numeric-wrap:before {
  padding-bottom: 0.38em;
}
/* above style breaks NumericTextBox layout due display:block style applied to the input */
.km.root .k-combobox .k-dropdown-wrap:before,
.km.root .k-picker-wrap:before,
.km.root .k-numeric-wrap:before {
  content: none;
}
.k-combobox .k-input,
.k-picker-wrap .k-input,
.k-numeric-wrap .k-input {
  display: inline;
}
.k-picker-wrap .k-select,
.k-numeric-wrap .k-select,
.k-dropdown-wrap .k-select {
  min-height: 2.214em;
  line-height: 2.564em;
  vertical-align: middle;
  -moz-box-sizing: border-box;
  text-align: center;
  width: 1.9em;
  height: 100%;
}
.k-numeric-wrap .k-select {
  padding: 0;
}
body .k-datetimepicker .k-select {
  border-radius: 0;
}
.k-combobox .k-icon,
.k-dropdown,
.k-selectbox .k-icon {
  cursor: pointer;
}
.k-popup {
  border-style: solid;
  border-width: 1px;
}
.k-popup .k-item,
.k-list-optionlabel {
  cursor: default;
}
.k-popup .k-calendar {
  border: 0;
}
.k-list {
  height: 100%;
}
.k-popup .k-list .k-item,
.k-fieldselector .k-list .k-item,
.k-list-optionlabel,
.k-popup > .k-group-header,
.k-popup > .k-virtual-wrap > .k-group-header {
  padding: 1px 5px 1px 5px;
  line-height: 1.8em;
  min-height: 1.8em;
}
.k-popup > .k-group-header,
.k-popup > .k-virtual-wrap > .k-group-header {
  padding-right: 22px;
}
.k-overflow-container .k-item {
  padding: 1px;
}
.k-overflow-container > .k-state-disabled .k-button,
.k-overflow-container .k-button.k-state-disabled,
.k-overflow-container .k-button.k-state-disabled:hover {
  border: 0 ;
  background: none;
}
.k-popup .k-list .k-state-hover,
.k-popup .k-list .k-state-focused,
.k-popup .k-list .k-state-selected,
.k-overflow-container .k-state-hover,
.k-overflow-container .k-state-focused,
.k-overflow-container .k-state-selected,
.k-fieldselector .k-list .k-item,
.k-list-optionlabel.k-state-focused,
.k-list-optionlabel.k-state-selected {
  padding: 0 4px;
  border-width: 1px;
  border-style: solid;
}
.k-list-filter {
  position: relative;
}
.k-list-filter > .k-textbox {
  padding-right: 20px;
  width: 100%;
}
.k-list-filter > .k-icon {
  position: absolute;
  right: 6px;
  top: 1px;
}
/* MultiSelect */
.k-multiselect-wrap {
  position: relative;
  border-width: 0px;
  border-style: solid;
  border-radius: 4px;
  border-color: #C5C5C5;
  background-color: #FFF;
  min-height: 2.04em;
}
.k-multiselect-wrap .k-input {
  background-color: transparent;
  height: 1.31em;
  line-height: 1.31em;
  padding: 0.18em 0;
  text-indent: 0.8em;
  border: 0;
  margin: 1px 0 0;
  float: left;
}
.k-multiselect-wrap .k-input::-ms-clear {
  display: none;
}
.k-multiselect-wrap li {
  margin: 1px 0 1px 1px;
  padding: .1em 1.6em .1em .4em;
  line-height: 2.064em;
  float: left;
  position: relative;
}
.k-autocomplete .k-loading,
.k-multiselect .k-loading {
  position: absolute;
  right: 3px;
  bottom: 4px;
}
.k-multiselect .k-loading-hidden {
  visibility: hidden;
}
.k-multiselect-wrap .k-select {
  position: absolute;
  top: 0;
  bottom: 0;
  right: 0;
  padding: .1em .2em;
}
/* Date/Time Pickers */
.k-datetimepicker .k-picker-wrap {
  padding-right: 3.8em;
}
.k-datetimepicker .k-select {
  width: 3.8em;
}
.k-datetimepicker .k-picker-wrap .k-icon {
  margin: 0 2px;
}
.k-picker-wrap .k-icon {
  cursor: pointer;
}
.k-button,
.k-textbox,
.k-timepicker,
.k-datepicker,
.k-datetimepicker {
  display: inline-block;
  vertical-align: middle;
}
.k-picker-wrap .k-input {
  margin: 0;
}
.k-time-popup .k-item {
  padding: 1px 3px;
}
/* inputs */
.k-input {
  padding: 0.25em 0;
}
.k-input,
.k-textbox > input {
  outline: 0;
  -webkit-tap-highlight-color: rgba(0, 0, 0, 0);
}
.k-textbox {
  outline: 0;
}
input.k-textbox,
textarea.k-textbox {
  padding: 2px .3em;
}
input.k-textbox {
  height: 2.694em;
  text-indent: 0.8em;
  line-height: 1.6em;
}
.k-ie input.k-textbox {
  text-indent: 0.4em;
}
.k-ff input.k-textbox {
  height: 2.17em;
}
textarea.k-textbox {
  height: auto;
}
/* NumericTextBox */
span.k-numerictextbox {
  background-color: transparent;
}
.k-numerictextbox .k-input {
  margin: 0;
}
.k-numerictextbox .k-link {
  display: block;
  height: 1em;
  line-height: 1em;
  vertical-align: middle;
  border-width: 0;
  padding: 0;
}
.k-numerictextbox .k-icon {
  height: 11px;
}
.k-numeric-wrap .k-input::-webkit-inner-spin-button {
  -webkit-appearance: none;
}
/* ColorPicker */
.k-colorpicker .k-picker-wrap {
  line-height: 2em;
}
.k-colorpicker .k-selected-color {
  vertical-align: top;
  line-height: 0;
  display: inline-block;
  height: 2em;
  width: 2em;
}
.k-colorpicker .k-tool-icon {
  position: relative;
  top: -2px;
  display: inline-block;
  padding: 3px 3px 2px;
  font-size: 0;
  line-height: 0;
  margin-right: 3px;
  margin-left: 2px;
  margin-bottom: 3px;
  background-repeat: no-repeat;
  vertical-align: middle;
  width: 16px;
  height: 16px;
  -ms-high-contrast-adjust: none;
}
.k-colorpicker .k-tool-icon .k-selected-color {
  display: block;
  height: 3px;
  width: 16px;
  position: absolute;
  left: 3px;
  bottom: -3px;
  border-radius: 0 !important;
}
.k-colorpicker .k-select {
  cursor: pointer;
}
.k-disabled-overlay {
  position: absolute;
  left: 0;
  top: 0;
  width: 100%;
  height: 100%;
  background-color: #fff;
  opacity: 0.5;
  filter: alpha(opacity=50);
}
.k-colorpalette {
  position: relative;
  line-height: 0;
  border-width: 0;
  display: inline-block;
}
.k-colorpalette .k-palette {
  border-collapse: collapse;
  position: relative;
  width: 100%;
  height: 100%;
}
.k-colorpalette .k-item {
  width: 14px;
  height: 14px;
  overflow: hidden;
  -ms-high-contrast-adjust: none;
}
.k-colorpalette .k-item.k-state-selected,
.k-colorpalette .k-item.k-state-selected:hover {
  z-index: 100;
  background: transparent;
  -webkit-box-shadow: 0 1px 3px 1px rgba(0, 0, 0, 0.7), inset 0 0 0 1px rgba(255, 255, 255, 0.45);
          box-shadow: 0 1px 3px 1px rgba(0, 0, 0, 0.7), inset 0 0 0 1px rgba(255, 255, 255, 0.45);
  position: relative;
}
.k-colorpalette .k-item:hover {
  z-index: 101;
  position: relative;
  -webkit-box-shadow: 0 1px 3px 1px rgba(0, 0, 0, 0.5), inset 0 0 0 1px rgba(255, 255, 255, 0.3);
          box-shadow: 0 1px 3px 1px rgba(0, 0, 0, 0.5), inset 0 0 0 1px rgba(255, 255, 255, 0.3);
}
.k-flatcolorpicker {
  position: relative;
  display: inline-block;
  width: 250px;
  padding-bottom: 5px;
}
div.k-flatcolorpicker {
  background-color: transparent;
  background-image: none;
}
.k-flatcolorpicker .k-selected-color {
  background-image: url("textures/transtexture.png");
  background-position: 50% 50%;
  text-align: right;
}
.k-flatcolorpicker .k-selected-color input.k-color-value {
  font-family: Consolas, "Ubuntu Mono", "Lucida Console", "Courier New", monospace;
  padding: .75em .3em .65em 1em;
  border: 0;
  margin: 0;
  width: 70%;
}
.k-flatcolorpicker .k-hsv-rectangle {
  position: relative;
  -webkit-user-select: none;
     -moz-user-select: none;
      -ms-user-select: none;
          user-select: none;
  -ms-touch-action: pinch-zoom double-tap-zoom;
}
.k-flatcolorpicker .k-hsv-rectangle .k-draghandle {
  cursor: pointer;
  position: absolute;
  z-index: 10;
  left: 50%;
  top: 50%;
  width: 8px;
  height: 8px;
  border: 1px solid #eee;
  margin-left: -5px;
  margin-top: -5px;
  border-radius: 6px;
  -webkit-box-shadow: 0 1px 2px #444444;
          box-shadow: 0 1px 2px #444444;
  background: transparent;
}
.k-flatcolorpicker .k-hsv-rectangle .k-draghandle:hover,
.k-flatcolorpicker .k-hsv-rectangle .k-draghandle:focus {
  background: transparent;
  border-color: #fff;
  -webkit-box-shadow: 0 1px 5px #000000;
          box-shadow: 0 1px 5px #000000;
}
.k-flatcolorpicker .k-hsv-rectangle.k-dragging,
.k-flatcolorpicker .k-hsv-rectangle.k-dragging * {
  cursor: none;
}
.k-flatcolorpicker .k-slider-horizontal {
  height: 20px;
  width: 90%;
  margin: 0 5%;
}
.k-flatcolorpicker .k-slider-horizontal .k-slider-track {
  -webkit-box-shadow: 0 1px 0 #fff, 0 -1px 0 #999;
          box-shadow: 0 1px 0 #fff, 0 -1px 0 #999;
}
.k-flatcolorpicker .k-hue-slider,
.k-flatcolorpicker .k-transparency-slider {
  display: block;
}
.k-flatcolorpicker .k-hue-slider .k-slider-selection,
.k-flatcolorpicker .k-transparency-slider .k-slider-selection {
  background: transparent;
}
.k-flatcolorpicker .k-hue-slider .k-draghandle,
.k-flatcolorpicker .k-transparency-slider .k-draghandle {
  background: transparent;
  border: 3px solid #eee;
  margin-top: 1px;
  height: 8px;
  width: 8px;
  -webkit-box-shadow: 0 1px 4px #444444;
          box-shadow: 0 1px 4px #444444;
}
.k-flatcolorpicker .k-hue-slider .k-draghandle:hover,
.k-flatcolorpicker .k-transparency-slider .k-draghandle:hover,
.k-flatcolorpicker .k-hue-slider .k-draghandle:focus,
.k-flatcolorpicker .k-transparency-slider .k-draghandle:focus {
  background: transparent;
  border-color: #fff;
  -webkit-box-shadow: 0 1px 5px #000000;
          box-shadow: 0 1px 5px #000000;
  border-width: 2px;
  padding: 1px;
}
.k-flatcolorpicker .k-hue-slider .k-slider-track {
  background: -webkit-gradient(linear, left top, right top, from(#ff0000), color-stop(16%, #ffff00), color-stop(33%, #00ff00), color-stop(50%, #00ffff), color-stop(67%, #0000ff), color-stop(84%, #ff00ff), to(#ff0004));
  background: -webkit-linear-gradient(left, #ff0000 0%, #ffff00 16%, #00ff00 33%, #00ffff 50%, #0000ff 67%, #ff00ff 84%, #ff0004 100%);
  background: linear-gradient(to right, #ff0000 0%, #ffff00 16%, #00ff00 33%, #00ffff 50%, #0000ff 67%, #ff00ff 84%, #ff0004 100%);
}
.k-flatcolorpicker .k-transparency-slider .k-slider-track {
  background-image: url("textures/transparency.png");
  -webkit-background-size: 100% auto;
          background-size: 100% auto;
  background-position: 100% 50%;
  background-repeat: no-repeat;
}
.k-flatcolorpicker .k-controls {
  margin-top: 10px;
  margin-bottom: 5px;
  text-align: center;
  font-size: 90%;
}
.k-flatcolorpicker .k-controls .k-button {
  width: 6em;
}
.k-flatcolorpicker .k-hsv-gradient {
  background: -webkit-gradient(linear, left top, left bottom, from(rgba(0, 0, 0, 0)), to(#000000)), -webkit-gradient(linear, left top, right top, from(#ffffff), to(rgba(255, 255, 255, 0)));
  background: -webkit-linear-gradient(top, rgba(0, 0, 0, 0) 0%, #000000 100%), -webkit-linear-gradient(left, #ffffff 0%, rgba(255, 255, 255, 0) 100%);
  background: linear-gradient(to bottom, rgba(0, 0, 0, 0) 0%, #000000 100%), linear-gradient(to right, #ffffff 0%, rgba(255, 255, 255, 0) 100%);
  height: 180px;
  margin-bottom: 5px;
}
.k-ie9 .k-flatcolorpicker .k-hue-slider .k-slider-track {
  background: url(data:image/svg+xml;base64,PD94bWwgdmVyc2lvbj0iMS4wIiA/Pgo8c3ZnIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyIgd2lkdGg9IjEwMCUiIGhlaWdodD0iMTAwJSIgdmlld0JveD0iMCAwIDEgMSIgcHJlc2VydmVBc3BlY3RSYXRpbz0ibm9uZSI+CiAgPGxpbmVhckdyYWRpZW50IGlkPSJncmFkLXVjZ2ctZ2VuZXJhdGVkIiBncmFkaWVudFVuaXRzPSJ1c2VyU3BhY2VPblVzZSIgeDE9IjAlIiB5MT0iMCUiIHgyPSIxMDAlIiB5Mj0iMCUiPgogICAgPHN0b3Agb2Zmc2V0PSIwJSIgc3RvcC1jb2xvcj0iI2ZmMDAwMCIgc3RvcC1vcGFjaXR5PSIxIi8+CiAgICA8c3RvcCBvZmZzZXQ9IjE2JSIgc3RvcC1jb2xvcj0iI2ZmZmYwMCIgc3RvcC1vcGFjaXR5PSIxIi8+CiAgICA8c3RvcCBvZmZzZXQ9IjMzJSIgc3RvcC1jb2xvcj0iIzAwZmYwMCIgc3RvcC1vcGFjaXR5PSIxIi8+CiAgICA8c3RvcCBvZmZzZXQ9IjUwJSIgc3RvcC1jb2xvcj0iIzAwZmZmZiIgc3RvcC1vcGFjaXR5PSIxIi8+CiAgICA8c3RvcCBvZmZzZXQ9IjY3JSIgc3RvcC1jb2xvcj0iIzAwMDBmZiIgc3RvcC1vcGFjaXR5PSIxIi8+CiAgICA8c3RvcCBvZmZzZXQ9Ijg0JSIgc3RvcC1jb2xvcj0iI2ZmMDBmZiIgc3RvcC1vcGFjaXR5PSIxIi8+CiAgICA8c3RvcCBvZmZzZXQ9IjEwMCUiIHN0b3AtY29sb3I9IiNmZjAwMDQiIHN0b3Atb3BhY2l0eT0iMSIvPgogIDwvbGluZWFyR3JhZGllbnQ+CiAgPHJlY3QgeD0iMCIgeT0iMCIgd2lkdGg9IjEiIGhlaWdodD0iMSIgZmlsbD0idXJsKCNncmFkLXVjZ2ctZ2VuZXJhdGVkKSIgLz4KPC9zdmc+);
}
.k-ie9 .k-flatcolorpicker .k-hsv-gradient {
  background: url(data:image/svg+xml;base64,PD94bWwgdmVyc2lvbj0iMS4wIiA/Pgo8c3ZnIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyIgd2lkdGg9IjEwMCUiIGhlaWdodD0iMTAwJSIgdmlld0JveD0iMCAwIDEgMSIgcHJlc2VydmVBc3BlY3RSYXRpbz0ibm9uZSI+CiAgPGxpbmVhckdyYWRpZW50IGlkPSJncmFkLXVjZ2ctZ2VuZXJhdGVkIiBncmFkaWVudFVuaXRzPSJ1c2VyU3BhY2VPblVzZSIgeDE9IjAlIiB5MT0iMCUiIHgyPSIwJSIgeTI9IjEwMCUiPgogICAgPHN0b3Agb2Zmc2V0PSIwJSIgc3RvcC1jb2xvcj0iIzAwMDAwMCIgc3RvcC1vcGFjaXR5PSIwIi8+CiAgICA8c3RvcCBvZmZzZXQ9IjEwMCUiIHN0b3AtY29sb3I9IiMwMDAwMDAiIHN0b3Atb3BhY2l0eT0iMSIvPgogIDwvbGluZWFyR3JhZGllbnQ+CiAgPHJlY3QgeD0iMCIgeT0iMCIgd2lkdGg9IjEiIGhlaWdodD0iMSIgZmlsbD0idXJsKCNncmFkLXVjZ2ctZ2VuZXJhdGVkKSIgLz4KPC9zdmc+), url(data:image/svg+xml;base64,PD94bWwgdmVyc2lvbj0iMS4wIiA/Pgo8c3ZnIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyIgd2lkdGg9IjEwMCUiIGhlaWdodD0iMTAwJSIgdmlld0JveD0iMCAwIDEgMSIgcHJlc2VydmVBc3BlY3RSYXRpbz0ibm9uZSI+CiAgPGxpbmVhckdyYWRpZW50IGlkPSJncmFkLXVjZ2ctZ2VuZXJhdGVkIiBncmFkaWVudFVuaXRzPSJ1c2VyU3BhY2VPblVzZSIgeDE9IjAlIiB5MT0iMCUiIHgyPSIxMDAlIiB5Mj0iMCUiPgogICAgPHN0b3Agb2Zmc2V0PSIwJSIgc3RvcC1jb2xvcj0iI2ZmZmZmZiIgc3RvcC1vcGFjaXR5PSIxIi8+CiAgICA8c3RvcCBvZmZzZXQ9IjEwMCUiIHN0b3AtY29sb3I9IiNmZmZmZmYiIHN0b3Atb3BhY2l0eT0iMCIvPgogIDwvbGluZWFyR3JhZGllbnQ+CiAgPHJlY3QgeD0iMCIgeT0iMCIgd2lkdGg9IjEiIGhlaWdodD0iMSIgZmlsbD0idXJsKCNncmFkLXVjZ2ctZ2VuZXJhdGVkKSIgLz4KPC9zdmc+);
}
.k-ie8 .k-flatcolorpicker .k-hue-slider .k-slider-track {
  background: url("textures/hue.png") repeat 0 50%;
}
.k-ie8 .k-flatcolorpicker .k-transparency-slider .k-slider-track {
  background: url("textures/transparency.png") repeat 0 50%;
}
.k-ie8 .k-flatcolorpicker .k-hsv-gradient {
  filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#ffffffff',endColorstr='#00ffffff',GradientType=1) progid:DXImageTransform.Microsoft.gradient(startColorstr='#00000000',endColorstr='#ff000000',GradientType=0);
}
/* Editor */
table.k-editor {
  width: 100%;
  height: 250px;
  table-layout: fixed;
  border-style: solid;
  border-width: 1px;
  border-collapse: separate;
  border-spacing: 4px;
  font-size: 100%;
  vertical-align: top;
  position: relative;
}
.k-editor-inline {
  border-width: 2px;
  padding: .3em .5em;
  word-wrap: break-word;
  overflow: auto;
}
.k-editortoolbar-dragHandle {
  cursor: move;
  padding-left: 0;
  padding-right: 3px;
  -webkit-box-shadow: none !important;
          box-shadow: none !important;
}
.k-editor-widget > .k-window-content {
  overflow: hidden;
}
.k-editor .k-editor-toolbar-wrap {
  border: 0;
  padding: 0;
}
.k-editor-toolbar {
  margin: 0;
  padding: .1em 0;
  list-style-type: none;
  line-height: 1.3em;
  cursor: default;
  word-wrap: break-word;
  /* allow tools to wrap properly in IE */
}
.k-editor-toolbar li {
  display: inline-block;
  vertical-align: middle;
}
.k-webkit .k-editor-toolbar,
.k-ff .k-editor-toolbar,
.k-ie9 .k-editor-toolbar {
  padding: 0;
}
.k-webkit .k-editor-toolbar li,
.k-safari .k-editor-toolbar li,
.k-ff .k-editor-toolbar li,
.k-ie9 .k-editor-toolbar li,
.k-ie10 .k-editor-toolbar li {
  display: inline-block;
  padding: .1em 0;
}
.k-editor-toolbar .k-editor-widget,
.k-editor-toolbar > li {
  margin-right: 6px;
}
.k-group-start.k-group-end .k-editor-widget {
  margin-right: 0;
}
.k-editor-toolbar .k-editor-dropdown {
  position: relative;
}
.k-select-overlay {
  -webkit-appearance: none;
  opacity: 0;
  z-index: 11000;
  top: 0;
  left: 0;
  position: absolute;
  height: 26px;
  width: 100%;
  margin: -4px 0 0;
}
.k-editor-toolbar .k-separator {
  position: relative;
  top: 1px;
  border-style: solid;
  border-width: 0 1px 0 0;
  margin: 0 .3em 0 .1em;
  padding: 0 0 0 1px;
  font-size: 1.3em;
}
.k-editor-toolbar .k-break {
  display: block;
  height: 1px;
  font-size: 0;
  line-height: 0;
}
.k-editor-toolbar .k-dropdown,
.k-editor-toolbar .k-combobox,
.k-editor-toolbar .k-selectbox,
.k-editor-toolbar .k-colorpicker {
  vertical-align: middle;
}
.k-button-group {
  white-space: nowrap;
}
.k-button-group .k-tool {
  display: inline-block;
  vertical-align: middle;
  margin: 1px 0;
  width: 36px;
  height: 36px;
  line-height: 36px;
}
.k-button-group .k-tool-icon {
  width: 24px;
  height: 24px;
  vertical-align: middle;
  -ms-high-contrast-adjust: none;
}
.k-i-move {
  background-position: -160px -288px;
}
.k-bold {
  background-position: -240px 0;
}
.k-state-hover .k-bold,
.k-state-selected .k-bold {
  background-position: -264px 0;
  background-position: -240px 0;
}
.k-state-hover .k-bold,
.k-state-selected .k-bold {
  background-position: -240px 0;
}
.k-italic {
  background-position: -240px -24px;
}
.k-state-hover .k-italic,
.k-state-selected .k-italic {
  background-position: -264px -24px;
  background-position: -240px -24px;
}
.k-state-hover .k-italic,
.k-state-selected .k-italic {
  background-position: -240px -24px;
}
.k-underline {
  background-position: -240px -48px;
}
.k-state-hover .k-underline,
.k-state-selected .k-underline {
  background-position: -264px -48px;
  background-position: -240px -48px;
}
.k-state-hover .k-underline,
.k-state-selected .k-underline {
  background-position: -240px -48px;
}
.k-strikethrough {
  background-position: -240px -72px;
}
.k-state-hover .k-strikethrough,
.k-state-selected .k-strikethrough {
  background-position: -264px -72px;
  background-position: -240px -72px;
}
.k-state-hover .k-strikethrough,
.k-state-selected .k-strikethrough {
  background-position: -240px -72px;
}
.k-foreColor {
  background-position: -240px -96px;
}
.k-state-hover .k-foreColor,
.k-state-selected .k-foreColor {
  background-position: -264px -96px;
  background-position: -240px -96px;
}
.k-state-hover .k-foreColor,
.k-state-selected .k-foreColor {
  background-position: -240px -96px;
}
.k-backColor {
  background-position: -240px -120px;
}
.k-state-hover .k-backColor,
.k-state-selected .k-backColor {
  background-position: -264px -120px;
  background-position: -240px -120px;
}
.k-state-hover .k-backColor,
.k-state-selected .k-backColor {
  background-position: -240px -120px;
}
.k-colorpicker .k-foreColor {
  background-position: -240px -96px;
}
.k-colorpicker .k-backColor {
  background-position: -240px -120px;
}
.k-justifyLeft {
  background-position: -240px -144px;
}
.k-state-hover .k-justifyLeft,
.k-state-selected .k-justifyLeft {
  background-position: -264px -144px;
  background-position: -240px -144px;
}
.k-state-hover .k-justifyLeft,
.k-state-selected .k-justifyLeft {
  background-position: -240px -144px;
}
.k-justifyCenter {
  background-position: -240px -168px;
}
.k-state-hover .k-justifyCenter,
.k-state-selected .k-justifyCenter {
  background-position: -264px -168px;
  background-position: -240px -168px;
}
.k-state-hover .k-justifyCenter,
.k-state-selected .k-justifyCenter {
  background-position: -240px -168px;
}
.k-justifyRight {
  background-position: -240px -192px;
}
.k-state-hover .k-justifyRight,
.k-state-selected .k-justifyRight {
  background-position: -264px -192px;
  background-position: -240px -192px;
}
.k-state-hover .k-justifyRight,
.k-state-selected .k-justifyRight {
  background-position: -240px -192px;
}
.k-justifyFull {
  background-position: -240px -216px;
}
.k-state-hover .k-justifyFull,
.k-state-selected .k-justifyFull {
  background-position: -264px -216px;
  background-position: -240px -216px;
}
.k-state-hover .k-justifyFull,
.k-state-selected .k-justifyFull {
  background-position: -240px -216px;
}
.k-insertUnorderedList {
  background-position: -240px -264px;
}
.k-state-hover .k-insertUnorderedList,
.k-state-selected .k-insertUnorderedList {
  background-position: -264px -264px;
  background-position: -240px -264px;
}
.k-state-hover .k-insertUnorderedList,
.k-state-selected .k-insertUnorderedList {
  background-position: -240px -264px;
}
.k-insertOrderedList {
  background-position: -240px -288px;
}
.k-state-hover .k-insertOrderedList,
.k-state-selected .k-insertOrderedList {
  background-position: -264px -288px;
  background-position: -240px -288px;
}
.k-state-hover .k-insertOrderedList,
.k-state-selected .k-insertOrderedList {
  background-position: -240px -288px;
}
.k-indent,
.k-rtl .k-outdent {
  background-position: -288px 0;
}
.k-state-hover .k-indent,
.k-state-hover .k-rtl .k-outdent,
.k-state-selected .k-indent,
.k-state-selected .k-rtl .k-outdent {
  background-position: -312px 0;
  background-position: -288px 0;
}
.k-state-hover .k-indent,
.k-state-hover .k-rtl .k-outdent,
.k-state-selected .k-indent,
.k-state-selected .k-rtl .k-outdent {
  background-position: -288px 0;
}
.k-outdent,
.k-rtl .k-indent {
  background-position: -288px -24px;
}
.k-state-hover .k-outdent,
.k-state-hover .k-rtl .k-indent,
.k-state-selected .k-outdent,
.k-state-selected .k-rtl .k-indent {
  background-position: -312px -24px;
  background-position: -288px -24px;
}
.k-state-hover .k-outdent,
.k-state-hover .k-rtl .k-indent,
.k-state-selected .k-outdent,
.k-state-selected .k-rtl .k-indent {
  background-position: -288px -24px;
}
.k-createLink {
  background-position: -288px -48px;
}
.k-state-hover .k-createLink,
.k-state-selected .k-createLink {
  background-position: -312px -48px;
  background-position: -288px -48px;
}
.k-state-hover .k-createLink,
.k-state-selected .k-createLink {
  background-position: -288px -48px;
}
.k-unlink {
  background-position: -288px -72px;
}
.k-state-hover .k-unlink,
.k-state-selected .k-unlink {
  background-position: -312px -72px;
  background-position: -288px -72px;
}
.k-state-hover .k-unlink,
.k-state-selected .k-unlink {
  background-position: -288px -72px;
}
.k-insertImage {
  background-position: -288px -96px;
}
.k-state-hover .k-insertImage,
.k-state-selected .k-insertImage {
  background-position: -312px -96px;
  background-position: -288px -96px;
}
.k-state-hover .k-insertImage,
.k-state-selected .k-insertImage {
  background-position: -288px -96px;
}
.k-insertFile {
  background-position: -288px -216px;
}
.k-state-hover .k-insertFile,
.k-state-selected .k-insertFile {
  background-position: -312px -216px;
  background-position: -288px -216px;
}
.k-state-hover .k-insertFile,
.k-state-selected .k-insertFile {
  background-position: -288px -216px;
}
.k-subscript {
  background-position: -288px -144px;
}
.k-state-hover .k-subscript,
.k-state-selected .k-subscript {
  background-position: -312px -144px;
  background-position: -288px -144px;
}
.k-state-hover .k-subscript,
.k-state-selected .k-subscript {
  background-position: -288px -144px;
}
.k-superscript {
  background-position: -288px -168px;
}
.k-state-hover .k-superscript,
.k-state-selected .k-superscript {
  background-position: -312px -168px;
  background-position: -288px -168px;
}
.k-state-hover .k-superscript,
.k-state-selected .k-superscript {
  background-position: -288px -168px;
}
.k-cleanFormatting {
  background-position: -288px -192px;
}
.k-state-hover .k-cleanFormatting,
.k-state-selected .k-cleanFormatting {
  background-position: -312px -192px;
  background-position: -288px -192px;
}
.k-state-hover .k-cleanFormatting,
.k-state-selected .k-cleanFormatting {
  background-position: -288px -192px;
}
.k-createTable {
  background-position: -192px 0;
}
.k-state-hover .k-createTable,
.k-state-selected .k-createTable {
  background-position: -216px 0;
  background-position: -192px 0;
}
.k-state-hover .k-createTable,
.k-state-selected .k-createTable {
  background-position: -192px 0;
}
.k-addColumnLeft {
  background-position: -192px -24px;
}
.k-state-hover .k-addColumnLeft,
.k-state-selected .k-addColumnLeft {
  background-position: -216px -24px;
  background-position: -192px -24px;
}
.k-state-hover .k-addColumnLeft,
.k-state-selected .k-addColumnLeft {
  background-position: -192px -24px;
}
.k-addColumnRight {
  background-position: -192px -48px;
}
.k-state-hover .k-addColumnRight,
.k-state-selected .k-addColumnRight {
  background-position: -216px -48px;
  background-position: -192px -48px;
}
.k-state-hover .k-addColumnRight,
.k-state-selected .k-addColumnRight {
  background-position: -192px -48px;
}
.k-addRowAbove {
  background-position: -192px -72px;
}
.k-state-hover .k-addRowAbove,
.k-state-selected .k-addRowAbove {
  background-position: -216px -72px;
  background-position: -192px -72px;
}
.k-state-hover .k-addRowAbove,
.k-state-selected .k-addRowAbove {
  background-position: -192px -72px;
}
.k-addRowBelow {
  background-position: -192px -96px;
}
.k-state-hover .k-addRowBelow,
.k-state-selected .k-addRowBelow {
  background-position: -216px -96px;
  background-position: -192px -96px;
}
.k-state-hover .k-addRowBelow,
.k-state-selected .k-addRowBelow {
  background-position: -192px -96px;
}
.k-deleteRow {
  background-position: -192px -120px;
}
.k-state-hover .k-deleteRow,
.k-state-selected .k-deleteRow {
  background-position: -216px -120px;
  background-position: -192px -120px;
}
.k-state-hover .k-deleteRow,
.k-state-selected .k-deleteRow {
  background-position: -192px -120px;
}
.k-deleteColumn {
  background-position: -192px -144px;
}
.k-state-hover .k-deleteColumn,
.k-state-selected .k-deleteColumn {
  background-position: -216px -144px;
  background-position: -192px -144px;
}
.k-state-hover .k-deleteColumn,
.k-state-selected .k-deleteColumn {
  background-position: -192px -144px;
}
.k-mergeCells {
  background-position: -192px -168px;
}
.k-state-hover .k-mergeCells,
.k-state-selected .k-mergeCells {
  background-position: -216px -168px;
  background-position: -192px -168px;
}
.k-state-hover .k-mergeCells,
.k-state-selected .k-mergeCells {
  background-position: -192px -168px;
}
.k-pdf {
  background-position: -288px -240px;
}
.k-state-hover .k-pdf,
.k-state-selected .k-pdf {
  background-position: -312px -240px;
  background-position: -288px -240px;
}
.k-state-hover .k-pdf,
.k-state-selected .k-pdf {
  background-position: -288px -240px;
}
.k-print {
  background-position: -288px -264px;
}
.k-state-hover .k-print,
.k-state-selected .k-print {
  background-position: -312px -264px;
  background-position: -288px -264px;
}
.k-state-hover .k-print,
.k-state-selected .k-print {
  background-position: -288px -264px;
}
/* default tool widths */
.k-fontName {
  width: 110px;
}
.k-fontSize {
  width: 124px;
}
.k-formatBlock {
  width: 147px;
}
.k-editortoolbar-dragHandle {
  float: left;
  margin: 1px 0 0;
}
.k-editor-toolbar .k-button-group {
  padding: 1px;
}
.k-editor .k-editor-toolbar .k-row-break {
  display: block;
  height: 0;
  font-size: 0;
  line-height: 0;
}
.k-button-group .k-tool {
  border-style: solid;
  border-width: 1px;
  margin-right: -1px;
}
.k-button-group .k-tool.k-state-hover,
.k-button-group .k-tool:focus {
  position: relative;
  z-index: 1;
}
.k-rtl .k-button-group .k-tool {
  border-style: solid;
  border-width: 1px;
}
.k-button-group .k-tool.k-group-end {
  border-right-width: 1px;
}
.k-rtl .k-button-group .k-tool.k-group-end {
  border-left-width: 1px;
}
.k-button-group .k-state-disabled {
  display: none;
}
.k-button-group .k-state-hover,
.k-button-group .k-state-active {
  vertical-align: middle;
}
.k-button-group .k-state-disabled {
  filter: alpha(opacity=30);
  opacity: .3;
}
.k-editor .k-editable-area {
  width: 100%;
  height: 100%;
  border-style: solid;
  border-width: 1px;
  outline: 0;
}
.k-editor .k-content {
  display: block;
  width: 100%;
  height: 100%;
  border: 0;
  margin: 0;
  padding: 0;
  background: #fff;
}
.k-editor .k-tool {
  outline: 0;
}
.k-editor iframe.k-content {
  display: inline;
  vertical-align: top;
  /*fixes missing top border caused by the inline display*/
}
.k-editor .k-raw-content {
  border: 0;
  margin: 0;
  padding: 0;
}
.k-editor .k-raw-content,
.k-editor-dialog .k-editor-textarea {
  font-size: inherit;
  font-family: consolas, "courier new", monospace;
}
.k-editor-dialog {
  padding: 1em;
  width: 400px;
}
.k-editor-dialog .k-edit-label {
  width: 25%;
}
.k-editor-dialog .k-edit-field {
  width: 66%;
}
.k-editor-dialog .k-edit-field .k-textbox {
  width: 96%;
}
.k-viewhtml-dialog {
  width: auto;
}
.k-filebrowser-dialog {
  width: auto;
  min-width: 350px;
}
.k-filebrowser-dialog .k-filebrowser {
  margin: 0 1em 0;
}
.k-filebrowser-dialog .k-edit-label {
  width: 18%;
}
.k-filebrowser-dialog .k-edit-field {
  width: 75%;
}
.k-filebrowser-dialog .k-edit-field .k-textbox {
  width: 70%;
}
#k-editor-image-width,
#k-editor-image-height {
  width: 5em;
}
.k-editor-dialog .k-button {
  display: inline-block;
}
.k-editor-dialog .k-editor-textarea {
  width: 600px;
  height: 350px;
  padding: .2em .2em .2em .4em;
  border-width: 1px;
  border-style: solid;
  overflow: auto;
}
.k-button-wrapper .k-link:hover {
  text-decoration: underline;
}
.k-ct-popup {
  width: 180.4px;
  padding: .65em .5em .5em;
}
.k-ct-popup .k-status {
  margin: .3em 0;
}
.k-ct-cell {
  border-width: 1px;
  border-style: solid;
  width: 18px;
  height: 18px;
  margin: 1px;
  vertical-align: top;
  display: inline-block;
  overflow: hidden;
  -ms-high-contrast-adjust: none;
}
.k-editor .k-resize-handle {
  position: absolute;
  padding: 5px;
  right: 0;
  bottom: 0;
}
.k-editor .k-overlay {
  position: absolute;
  background-color: #fff;
  opacity: 0;
}
.k-toolbar-resizable {
  min-height: 2.4375em;
  position: relative;
}
.k-overflow-tools {
  position: absolute;
  right: 0;
  top: 0;
}
.k-editor-overflow-popup .k-tool {
  width: auto;
  height: auto;
  display: block;
  text-align: left;
  text-decoration: initial;
  border: 0;
  padding-right: 0.5em;
  margin: 0;
  padding: 0 6px;
}
.k-editor-overflow-popup .k-tool.k-state-disabled {
  display: none;
}
.k-editor-toolbar .k-tool-text {
  display: none;
}
/* Notification */
.k-notification-wrap {
  padding: .6em .5em;
  cursor: default;
  position: relative;
  white-space: nowrap;
}
.k-notification-button .k-notification-wrap {
  padding-right: 20px;
}
.k-notification-wrap > .k-i-note {
  vertical-align: text-bottom;
  margin-right: 4px;
}
.k-notification-wrap > .k-i-close {
  position: absolute;
  top: 7px;
  right: 4px;
  display: none;
}
.k-notification-button .k-notification-wrap > .k-i-close {
  display: block;
}
/* Progressbar */
.k-progressbar {
  display: inline-block;
  position: relative;
  vertical-align: middle;
}
.k-progressbar {
  border-radius: 4px;
}
.k-progressbar-horizontal {
  width: 27em;
  height: 1.9em;
}
.k-progressbar-vertical {
  width: 1.9em;
  height: 27em;
}
.k-progressbar > .k-state-selected {
  position: absolute;
  border-style: solid;
  border-width: 1px;
  overflow: hidden;
}
.k-progressbar-horizontal > .k-state-selected,
.k-rtl .k-progressbar-horizontal.k-progressbar-reverse > .k-state-selected {
  left: -1px;
  right: auto;
  top: -1px;
  height: 100%;
  border-radius: 4px 0 0 4px;
}
.k-progressbar-horizontal.k-progressbar-reverse > .k-state-selected,
.k-rtl .k-progressbar-horizontal > .k-state-selected {
  left: auto;
  right: -1px;
  border-radius: 0 4px 4px 0;
}
.k-progressbar-vertical > .k-state-selected {
  left: -1px;
  bottom: -1px;
  width: 100%;
  border-radius: 0 0 4px 4px;
}
.k-progressbar-vertical.k-progressbar-reverse > .k-state-selected {
  bottom: auto;
  top: -1px;
  border-radius: 4px 4px 0 0;
}
.k-progressbar > .k-state-selected.k-complete,
.k-rtl .k-progressbar > .k-state-selected.k-complete {
  border-radius: 4px;
}
.k-progressbar > .k-reset {
  list-style: none;
  margin: 0;
  padding: 0;
  position: absolute;
  left: -1px;
  top: -1px;
  width: 100%;
  height: 100%;
  border-radius: 4px;
  white-space: nowrap;
}
.k-progressbar-horizontal .k-item {
  display: inline-block;
  height: 100%;
  border-style: solid;
  margin-left: -1px;
}
.k-progressbar-horizontal .k-item.k-first {
  margin-left: 0;
}
.k-progressbar-horizontal .k-item.k-last {
  border-right-width: 0;
}
.k-progressbar-horizontal .k-item,
.k-rtl .k-progressbar-horizontal.k-progressbar-reverse .k-item {
  border-width: 1px 0 1px 1px;
}
.k-progressbar-horizontal.k-progressbar-reverse .k-item,
.k-rtl .k-progressbar-horizontal .k-item {
  border-width: 1px 0 1px 1px;
}
.k-progressbar-horizontal .k-first,
.k-rtl .k-progressbar-horizontal .k-last,
.k-rtl .k-progressbar-horizontal.k-progressbar-reverse .k-last {
  border-top-left-radius: 4px;
  border-bottom-left-radius: 4px;
  border-left-width: 1px;
}
.k-progressbar-horizontal .k-last,
.k-rtl .k-progressbar-horizontal .k-first {
  border-top-right-radius: 4px;
  border-bottom-right-radius: 4px;
}
.k-progressbar-horizontal.k-progressbar-reverse .k-last,
.k-rtl .k-progressbar-horizontal .k-first {
  border-right-width: 1px;
}
.k-progressbar-horizontal .k-last.k-state-selected {
  border-right-width: 1px;
}
.k-progressbar-vertical .k-item {
  width: 100%;
  border-style: solid;
  border-width: 1px 1px 0 1px;
  margin-top: -1px;
}
.k-progressbar-vertical .k-item.k-first {
  margin-top: 0;
}
.k-progressbar-vertical li.k-item.k-last {
  border-bottom-width: 0;
}
.k-progressbar-vertical .k-first {
  border-top-left-radius: 4px;
  border-top-right-radius: 4px;
}
.k-progressbar-vertical .k-last {
  border-bottom-left-radius: 4px;
  border-bottom-right-radius: 4px;
  border-bottom-width: 1px;
}
.k-progressbar-vertical.k-progressbar-reverse .k-item {
  border-width: 0 1px 1px 1px;
}
.k-progressbar-vertical.k-progressbar-reverse .k-first {
  border-top-width: 1px;
}
.k-progress-status-wrap {
  position: absolute;
  top: -1px;
  border: 1px solid transparent;
  line-height: 2em;
  width: 100%;
  height: 100%;
}
.k-progress-status-wrap,
.k-rtl .k-progressbar-horizontal.k-progressbar-reverse .k-progress-status-wrap {
  left: -1px;
  right: auto;
  text-align: right;
}
.k-progressbar-horizontal.k-progressbar-reverse .k-progress-status-wrap,
.k-rtl .k-progressbar-horizontal .k-progress-status-wrap {
  left: auto;
  right: -1px;
  text-align: left;
}
.k-progressbar-vertical .k-progress-status-wrap {
  top: auto;
  bottom: -1px;
}
.k-progressbar-vertical.k-progressbar-reverse .k-progress-status-wrap {
  bottom: auto;
  top: -1px;
}
.k-progress-status {
  display: inline-block;
  padding: 0 .5em;
  min-width: 10px;
  white-space: nowrap;
}
.k-progressbar-vertical.k-progressbar-reverse .k-progress-status {
  position: absolute;
  bottom: 0;
  left: 0;
}
.k-progressbar-vertical .k-progress-status {
  -webkit-transform: rotate(-90deg) translateX(-100%);
      -ms-transform: rotate(-90deg) translateX(-100%);
          transform: rotate(-90deg) translateX(-100%);
  -webkit-transform-origin: 0 0;
      -ms-transform-origin: 0 0;
          transform-origin: 0 0;
}
.k-progressbar-vertical.k-progressbar-reverse .k-progress-status {
  -webkit-transform: rotate(90deg) translateX(-100%);
      -ms-transform: rotate(90deg) translateX(-100%);
          transform: rotate(90deg) translateX(-100%);
  -webkit-transform-origin: 0 100%;
      -ms-transform-origin: 0 100%;
          transform-origin: 0 100%;
}
.k-ie8 .k-progressbar-vertical .k-progress-status {
  writing-mode: bt-lr;
  padding: .5em 0;
}
/* Slider */
div.k-slider {
  position: relative;
  border-width: 0;
  background-color: transparent;
  -webkit-user-select: none;
     -moz-user-select: none;
      -ms-user-select: none;
          user-select: none;
}
.k-slider-vertical {
  width: 26px;
  height: 200px;
  /* default height */
}
.k-slider-horizontal {
  display: inline-block;
  width: 200px;
  /* default width */
  height: 26px;
}
.k-slider-wrap {
  width: 100%;
  height: 100%;
}
.k-slider .k-button,
.k-grid .k-slider .k-button {
  position: absolute;
  top: 0;
  width: 24px;
  min-width: 0;
  height: 24px;
  margin: 0;
  padding: 0;
  outline: 0;
}
.k-slider .k-button .k-icon {
  margin-top: 3px;
  vertical-align: top;
}
.k-state-disabled .k-slider-wrap {
  filter: alpha(opacity=60);
  opacity: .6;
}
.k-state-disabled .k-slider-wrap .k-slider-items {
  color: #333;
}
.k-slider .k-button-decrease {
  left: 0;
}
.k-slider-vertical .k-button-decrease,
.k-grid .k-slider-vertical .k-button-decrease {
  top: auto;
  bottom: 0;
}
.k-slider .k-button-increase {
  right: 0;
}
.k-slider .k-icon,
.k-slider-track,
.k-slider .k-tick {
  cursor: pointer;
}
.k-slider-track,
.k-slider-selection {
  position: absolute;
  margin: 0;
  padding: 0;
}
.k-slider-horizontal .k-slider-track,
.k-slider-horizontal .k-slider-selection {
  top: 50%;
  left: 0;
  height: 8px;
  margin-top: -4px;
  background-repeat: repeat-x;
}
.k-slider-horizontal .k-slider-buttons .k-slider-track {
  left: 34px;
}
.k-slider-vertical .k-slider-track,
.k-slider-vertical .k-slider-selection {
  left: 50%;
  bottom: 0;
  width: 8px;
  margin-left: -4px;
  background-repeat: repeat-y;
}
.k-slider-vertical .k-slider-buttons .k-slider-track {
  bottom: 34px;
}
.k-draghandle {
  position: absolute;
  background-repeat: no-repeat;
  background-color: transparent;
  text-indent: -3333px;
  overflow: hidden;
  text-decoration: none;
  text-align: center;
  outline: 0;
}
.k-slider-horizontal .k-draghandle {
  top: -4px;
  width: 13px;
  height: 14px;
}
.k-slider-vertical .k-draghandle {
  left: -4px;
  width: 14px;
  height: 13px;
}
.k-slider-buttons .k-slider-items {
  margin-left: 34px;
}
.k-slider-horizontal .k-slider-items {
  height: 100%;
}
.k-slider-vertical .k-slider-items {
  padding-top: 1px;
}
.k-slider-vertical .k-slider-buttons .k-slider-items {
  padding-top: 0;
}
.k-slider-vertical .k-slider-buttons .k-slider-items {
  margin: 0;
  padding-top: 35px;
}
.k-slider .k-tick {
  position: relative;
  margin: 0;
  padding: 0;
  background-color: transparent;
  background-repeat: no-repeat;
  background-position: center center;
}
.k-slider-horizontal .k-tick {
  float: left;
  height: 100%;
  text-align: center;
}
.k-slider-horizontal .k-tick {
  background-position: center -92px;
}
.k-slider-horizontal .k-slider-topleft .k-tick {
  background-position: center -122px;
}
.k-slider-horizontal .k-slider-bottomright .k-tick {
  background-position: center -152px;
}
.k-slider-horizontal .k-tick-large {
  background-position: center -2px;
}
.k-slider-horizontal .k-slider-topleft .k-tick-large {
  background-position: center -32px;
}
.k-slider-horizontal .k-slider-bottomright .k-tick-large {
  background-position: center -62px;
}
.k-slider-vertical .k-tick {
  background-position: -92px center;
}
.k-slider-vertical .k-slider-topleft .k-tick {
  background-position: -122px center;
}
.k-slider-vertical .k-slider-bottomright .k-tick {
  background-position: -152px center;
}
.k-slider-vertical .k-tick-large {
  background-position: -2px center;
}
.k-slider-vertical .k-slider-topleft .k-tick-large {
  background-position: -32px center;
}
.k-slider-vertical .k-slider-bottomright .k-tick-large {
  background-position: -62px center;
}
.k-slider-horizontal .k-first {
  background-position: 0 -92px;
}
.k-slider-horizontal .k-tick-large.k-first {
  background-position: 0 -2px;
}
.k-slider-horizontal .k-slider-topleft .k-first {
  background-position: 0 -122px;
}
.k-slider-horizontal .k-slider-topleft .k-tick-large.k-first {
  background-position: 0 -32px;
}
.k-slider-horizontal .k-slider-bottomright .k-first {
  background-position: 0 -152px;
}
.k-slider-horizontal .k-slider-bottomright .k-tick-large.k-first {
  background-position: 0 -62px;
}
.k-slider-horizontal .k-last {
  background-position: 100% -92px;
}
.k-slider-horizontal .k-tick-large.k-last {
  background-position: 100% -2px;
}
.k-slider-horizontal .k-slider-topleft .k-last {
  background-position: 100% -122px;
}
.k-slider-horizontal .k-slider-topleft .k-tick-large.k-last {
  background-position: 100% -32px;
}
.k-slider-horizontal .k-slider-bottomright .k-last {
  background-position: 100% -152px;
}
.k-slider-horizontal .k-slider-bottomright .k-tick-large.k-last {
  background-position: 100% -62px;
}
.k-slider-vertical .k-first {
  background-position: -92px 100%;
}
.k-slider-vertical .k-tick-large.k-first {
  background-position: -2px 100%;
}
.k-slider-vertical .k-slider-topleft .k-first {
  background-position: -122px 100%;
}
.k-slider-vertical .k-slider-topleft .k-tick-large.k-first {
  background-position: -32px 100%;
}
.k-slider-vertical .k-slider-bottomright .k-first {
  background-position: -152px 100%;
}
.k-slider-vertical .k-slider-bottomright .k-tick-large.k-first {
  background-position: -62px 100%;
}
.k-slider-vertical .k-last {
  background-position: -92px 0;
}
.k-slider-vertical .k-tick-large.k-last {
  background-position: -2px 0;
}
.k-slider-vertical .k-slider-topleft .k-last {
  background-position: -122px 0;
}
.k-slider-vertical .k-slider-topleft .k-tick-large.k-last {
  background-position: -32px 0;
}
.k-slider-vertical .k-slider-bottomright .k-last {
  background-position: -152px 0;
}
.k-slider-vertical .k-slider-bottomright .k-tick-large.k-last {
  background-position: -62px 0;
}
.k-slider-vertical .k-tick {
  text-align: right;
}
.k-slider-vertical .k-slider-topleft .k-tick {
  text-align: left;
}
.k-slider .k-label {
  position: absolute;
  white-space: nowrap;
  font-size: .92em;
}
.k-slider-horizontal .k-label {
  left: 0;
  width: 100%;
  line-height: 1;
}
.k-slider-horizontal .k-first .k-label {
  left: -50%;
}
.k-slider-horizontal .k-last .k-label {
  left: auto;
  right: -50%;
}
.k-slider-horizontal .k-label {
  bottom: -1.2em;
}
.k-slider-horizontal .k-slider-topleft .k-label {
  top: -1.2em;
}
.k-slider-vertical .k-label {
  left: 120%;
  display: block;
  text-align: left;
}
.k-slider-vertical .k-last .k-label {
  top: -0.5em;
}
.k-slider-vertical .k-first .k-label {
  bottom: -0.5em;
}
.k-slider-vertical .k-slider-topleft .k-label {
  left: auto;
  right: 120%;
}
.k-slider-tooltip {
  top: -4444px;
  /*prevent window resize in IE8 when appending*/
}
/* Scheduler */
.k-scheduler-toolbar,
.k-scheduler-footer {
  border-style: solid;
}
.k-scheduler-toolbar,
.k-scheduler-footer {
  line-height: 28px;
  padding: 6px;
}
.k-scheduler-toolbar {
  position: relative;
  border-width: 0 0 1px;
}
.k-edit-field.k-scheduler-toolbar {
  border-width: 0;
  padding-top: 0;
  padding-left: 0;
  padding-right: 0;
}
.k-scheduler-header {
  text-align: center;
}
.k-scheduler-footer {
  border-width: 1px 0 0;
}
.k-scheduler-toolbar > ul {
  float: right;
}
.k-scheduler-toolbar > ul:first-child {
  float: left;
}
.k-scheduler-toolbar > .k-scheduler-tools {
  float: left;
  margin-bottom: .5em;
}
.k-scheduler-tools + .k-scheduler-navigation {
  float: left;
  clear: left;
}
.k-scheduler-toolbar > ul > li,
.k-scheduler-footer > ul > li {
  display: inline-block;
  border-style: solid;
  border-width: 1px 1px 1px 0;
}
.k-scheduler .k-scheduler-toolbar .k-nav-current,
.k-scheduler .k-scheduler-toolbar .k-scheduler-tools > li {
  border-width: 0;
}
.k-scheduler-toolbar > ul > li:first-child,
.k-scheduler-toolbar > ul.k-scheduler-views > li:first-child + li {
  border-left-width: 1px;
}
.k-scheduler div.k-scheduler-footer ul li {
  margin-right: .6em;
  border-width: 1px;
}
.k-scheduler-toolbar .k-link,
.k-scheduler-footer .k-link {
  display: inline-block;
  padding: 0 1.1em;
}
.k-scheduler-toolbar .k-nav-prev .k-link,
.k-scheduler-toolbar .k-nav-next .k-link {
  padding-left: .6em;
  padding-right: .6em;
}
.k-scheduler-toolbar .k-nav-current .k-link {
  padding: 0;
}
.k-scheduler-toolbar .k-nav-current {
  margin: 0 1.1em;
}
.k-scheduler div.k-scheduler-toolbar > ul > li.k-nav-current,
.k-scheduler .k-nav-current > .k-state-active {
  background: none;
}
.k-scheduler-phone .k-scheduler-toolbar + .k-scheduler-toolbar .k-scheduler-navigation {
  width: 100%;
  text-align: center;
}
.k-scheduler-phone .k-scheduler-toolbar + .k-scheduler-toolbar .k-scheduler-navigation > li {
  background: none;
  border: 0;
}
.k-scheduler-phone .k-toolbar .k-nav-next {
  float: right;
}
.k-scheduler-phone .k-toolbar .k-nav-prev {
  float: left;
}
.k-scheduler-toolbar .k-i-calendar,
.k-scheduler-footer .k-icon {
  margin: -2px 6px 0 0;
}
.k-scheduler-header,
.k-scheduler-header-wrap {
  overflow: hidden;
}
.k-scheduler-header-wrap {
  position: relative;
  border-style: solid;
  border-width: 0;
}
.k-scheduler .k-scrollbar-v .k-scheduler-header-wrap {
  border-right-width: 1px;
}
.k-scheduler-times,
.k-scheduler-content {
  position: relative;
}
.k-scheduler-times {
  overflow: hidden;
  border-style: solid;
  border-width: 0;
}
.k-scheduler-content {
  overflow: auto;
}
.k-scheduler-layout,
.k-scheduler-table {
  border-spacing: 0;
  width: 100%;
  margin: 0;
  border-collapse: separate;
}
.k-scheduler-layout > tbody > tr > td {
  padding: 0;
  vertical-align: top;
}
/* fix smashed second layout column in iPad */
.k-safari .k-scheduler-layout > tbody > tr > td + td {
  width: 100%;
}
.k-scheduler-table {
  table-layout: fixed;
  max-width: none;
}
.k-scheduler-times .k-scheduler-table {
  table-layout: auto;
}
.k-scheduler-monthview .k-scheduler-content .k-scheduler-table {
  height: 100%;
}
.k-scheduler-table td,
.k-scheduler-table th {
  height: 1.5em;
  padding: .334em .5em;
  font-size: 100%;
}
.k-scheduler .k-scheduler-table td,
.k-scheduler .k-scheduler-table th {
  -webkit-box-sizing: content-box;
          box-sizing: content-box;
}
.k-scheduler-monthview .k-hidden,
.k-scheduler-monthview .k-hidden > div {
  width: 0 !important;
  overflow: hidden !important;
}
.k-scheduler-monthview .k-hidden {
  padding-left: 0 !important;
  padding-right: 0 !important;
  border-right-width: 0 !important;
}
.k-scheduler-monthview > tbody > tr:first-child .k-scheduler-times {
  margin-right: 1px;
}
.k-scheduler-monthview > tbody > tr:first-child .k-scheduler-times .k-hidden {
  height: auto;
}
.k-scheduler-monthview .k-scheduler-table td,
.k-scheduler-monthview .k-hidden {
  height: 80px;
  text-align: right;
}
.k-scheduler-phone .k-scheduler-monthview .k-scheduler-table td,
.k-scheduler-phone .k-scheduler-monthview .k-hidden {
  height: 40px;
}
.k-scheduler-table td,
.k-slot-cell {
  vertical-align: top;
}
/* separate due to old IEs */
.k-scheduler-layout tr + tr .k-scheduler-times th:last-child {
  vertical-align: top;
}
.k-scheduler-phone .k-scheduler-monthview .k-scheduler-table td {
  text-align: center;
  vertical-align: middle;
}
.k-scheduler-phone .k-scheduler-monthview .k-scheduler-table td span {
  font-size: 1.5em;
}
.k-scheduler-header th {
  overflow: hidden;
  text-overflow: ellipsis;
}
.k-scheduler-table td,
.k-scheduler-header th {
  border-style: solid;
  border-width: 0 0 1px 1px;
}
.k-scheduler-table td:first-child,
.k-scheduler-header th:first-child {
  border-left-width: 0;
}
.k-scheduler-agendaview .k-scheduler-table td:first-child {
  border-left-width: 1px;
}
.k-scheduler-agendaview .k-scheduler-table td.k-first {
  border-left-width: 0;
}
.k-scheduler-layout tr + tr .k-scheduler-times tr:last-child > th,
.k-scheduler-layout tr + tr .k-scheduler-table > tbody > tr:last-child > td,
.k-scheduler-table > tbody > tr > .k-last {
  border-bottom-width: 0;
}
.k-scrollbar-h tr + tr .k-scheduler-times,
.k-scrollbar-h .k-scheduler-content .k-scheduler-table > tbody > tr:last-child > td,
.k-scheduler-agendaview.k-scrollbar-h .k-scheduler-table > tbody > tr > td.k-last {
  border-bottom-width: 1px;
}
.k-scheduler-times th {
  text-align: right;
  padding-right: .6em;
  border-style: solid;
  border-width: 0 1px 1px 0;
  border-color: transparent;
  white-space: nowrap;
}
.k-scheduler-layout tr + tr .k-scheduler-times th {
  border-bottom-color: transparent;
}
.k-scheduler-layout tr + tr .k-scheduler-times th.k-slot-cell,
.k-scheduler-layout tr + tr .k-scheduler-times th.k-scheduler-times-all-day {
  border-bottom-color: inherit;
}
.k-scheduler .k-middle-row td {
  border-bottom-style: dotted;
}
.k-scheduler-now-arrow,
.k-scheduler-now-line {
  position: absolute;
}
.k-scheduler-now-arrow {
  width: 0;
  height: 0;
  border: solid 5px transparent;
  left: 0;
}
.k-scheduler-now-line {
  left: 5px;
  right: 0;
  height: 1px;
}
.k-task {
  position: relative;
}
div.k-more-events {
  text-align: center;
  font-size: 18px;
  line-height: 1.2;
  padding: 0;
}
.k-more-events > span {
  display: block;
  margin-top: -0.6em;
}
.k-event,
.k-more-events {
  position: absolute;
  border-style: solid;
  border-width: 1px;
  text-align: left;
  overflow: hidden;
}
.k-event {
  cursor: default;
  min-height: 1.3em;
}
.k-event-drag-hint {
  filter: alpha(opacity=60);
  opacity: .6;
  cursor: -webkit-grabbing;
  cursor: -moz-grabbing;
}
.k-scheduler-header .k-event {
  white-space: nowrap;
}
.k-event-template {
  padding: .3em 1.4em .3em .6em;
}
.k-event-time {
  display: none;
  padding-bottom: 0;
  font-size: .9em;
}
.k-event-drag-hint .k-event-time {
  display: block;
}
.k-event-actions,
.k-event > .k-link,
.k-task > .k-link {
  position: absolute;
  top: 3px;
  right: 4px;
  white-space: nowrap;
}
.k-event-actions {
  z-index: 1;
}
.k-scheduler-agendaview .k-task > .k-link {
  top: 0;
  right: 0;
}
.k-event-actions:first-child {
  position: static;
  float: left;
  margin: 4px 2px 0 4px;
}
.k-webkit .k-event-actions:first-child {
  margin-top: 3px;
}
.k-event-actions:first-child > .k-link {
  display: inline-block;
}
.k-event-delete {
  display: none;
}
.k-event:hover .k-event-delete,
tr:hover > td > .k-task .k-event-delete {
  display: inline-block;
}
.k-event .k-event-top-actions,
.k-event .k-event-bottom-actions {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  text-align: center;
}
.k-event .k-event-bottom-actions {
  top: auto;
  bottom: 0;
}
.k-event .k-resize-handle,
.k-scheduler-mobile .k-event:hover .k-resize-handle {
  position: absolute;
  visibility: hidden;
  z-index: 2;
}
.k-event:hover .k-resize-handle,
.k-event-active .k-resize-handle,
.k-scheduler-mobile .k-event-active:hover .k-resize-handle {
  visibility: visible;
}
.k-event .k-resize-handle:after {
  content: "";
  position: absolute;
  filter: alpha(opacity=50);
  opacity: .5;
}
.k-scheduler-mobile .k-event .k-resize-handle:after {
  -webkit-filter: none;
          filter: none;
  opacity: 1;
}
.k-event > .k-resize-n {
  top: 0;
  left: 0;
  right: 0;
  height: .4em;
}
.k-event > .k-resize-s {
  bottom: 0;
  left: 0;
  right: 0;
  height: .4em;
}
.k-event > .k-resize-e {
  right: 0;
  top: 0;
  bottom: 0;
  width: .4em;
}
.k-event > .k-resize-w {
  left: 0;
  top: 0;
  bottom: 0;
  width: .4em;
}
.k-event > .k-resize-n:after,
.k-event > .k-resize-s:after {
  top: 1px;
  left: 50%;
  margin-left: -1em;
  width: 2em;
  height: 1px;
}
.k-event > .k-resize-s:after {
  top: auto;
  bottom: 1px;
}
.k-event > .k-resize-e:after,
.k-event > .k-resize-w:after {
  left: 1px;
  top: 50%;
  margin-top: -0.7em;
  height: 1.4em;
  width: 1px;
}
.k-event > .k-resize-e:after {
  left: auto;
  right: 1px;
}
.k-scheduler-mobile .k-event > .k-resize-n,
.k-scheduler-mobile .k-event > .k-resize-s {
  height: .6em;
}
.k-scheduler-mobile .k-event > .k-resize-e,
.k-scheduler-mobile .k-event > .k-resize-w {
  width: .6em;
}
.k-scheduler-mobile .k-event > .k-resize-n:after,
.k-scheduler-mobile .k-event > .k-resize-s:after {
  top: 0;
  margin-left: -3em;
  width: 4em;
  height: .6em;
}
.k-scheduler-mobile .k-event > .k-resize-s:after {
  bottom: 0;
}
.k-scheduler-mobile .k-event > .k-resize-e:after,
.k-scheduler-mobile .k-event > .k-resize-w:after {
  left: 0;
  margin-top: -0.7em;
  height: 1.4em;
  width: .6em;
}
.k-scheduler-mobile .k-event > .k-resize-e:after {
  right: 0;
}
.k-scheduler-mobile .k-event > .k-resize-n:after {
  border-radius: 0 0 4px 4px;
}
.k-scheduler-mobile .k-event > .k-resize-s:after {
  border-radius: 4px 4px 0 0;
}
.k-scheduler-mobile .k-event > .k-resize-w:after {
  border-radius: 0 4px 4px 0;
}
.k-scheduler-mobile .k-event > .k-resize-e:after {
  border-radius: 4px 0 0 4px;
}
.k-scheduler-phone .k-scheduler-monthview .k-events-container {
  position: absolute;
  text-align: center;
  height: 6px;
  line-height: 6px;
}
.k-scheduler-phone .k-scheduler-monthview .k-event {
  position: static;
  display: inline-block;
  width: 4px;
  height: 4px;
  min-height: 0;
  margin: 1px;
}
.k-scheduler-marquee {
  border-style: solid;
  border-width: 0;
}
.k-scheduler-marquee.k-first:before,
.k-scheduler-marquee.k-last:after {
  content: "";
  position: absolute;
  width: 0;
  height: 0;
  border-style: solid;
  border-width: 3px;
}
div.k-scheduler-marquee:before {
  top: 0;
  left: 0;
  border-right-color: transparent;
  border-bottom-color: transparent;
}
div.k-scheduler-marquee:after {
  bottom: 0;
  right: 0;
  border-top-color: transparent;
  border-left-color: transparent;
}
.k-scheduler-marquee .k-label-top {
  position: absolute;
  top: .3em;
  left: .8em;
  font-size: .8em;
}
.k-scheduler-marquee .k-label-bottom {
  position: absolute;
  bottom: .3em;
  right: .81em;
  font-size: .8em;
}
.k-scheduler-quickedit .k-textbox {
  width: 200px;
}
.k-tooltip-bottom {
  text-align: left;
}
.k-tooltip-bottom .k-button {
  float: left;
  margin-right: .3em;
}
.k-tooltip-bottom .k-quickedit-details {
  float: right;
  margin-right: 0;
}
.k-scheduler-agendaview .k-scheduler-table th,
.k-scheduler-agendaview .k-scheduler-table td {
  text-align: left;
}
.k-scheduler-times .k-slot-cell,
.k-scheduler-groupcolumn {
  width: 6em;
}
.k-scheduler-datecolumn {
  width: 12em;
}
.k-scheduler-timecolumn {
  width: 11em;
}
.k-scheduler-timecolumn > div {
  position: relative;
  vertical-align: top;
}
.k-webkit .k-scheduler-timecolumn > div > .k-icon {
  vertical-align: top;
}
.k-scheduler-timecolumn > div > .k-i-arrow-e {
  position: absolute;
  right: -4px;
}
.k-scheduler-timecolumn .k-i-arrow-w {
  margin-left: -4px;
}
.k-scheduler-mark {
  display: inline-block;
  width: 1em;
  height: 1em;
  vertical-align: middle;
  margin-right: .5em;
}
.k-scheduler-agendaday {
  float: left;
  margin: 0 .2em 0 0;
  font-size: 3em;
  font-weight: normal;
}
.k-scheduler-agendaweek {
  display: block;
  margin: .4em 0 0;
  font-size: 1.1em;
  font-style: normal;
}
.k-scheduler-agendadate {
  font-size: .8em;
}
.k-scheduler-timecolumn {
  white-space: nowrap;
}
.k-scheduler-edit-form .k-edit-form-container,
.k-scheduler-timezones .k-edit-form-container {
  width: 520px;
}
.k-scheduler-edit-form .k-edit-label {
  width: 17%;
}
.k-scheduler-edit-form .k-edit-field {
  width: 77%;
}
.k-scheduler-edit-form .k-textbox[name="title"],
.k-scheduler-edit-form textarea.k-textbox {
  width: 100%;
}
.k-scheduler-edit-form textarea.k-textbox {
  min-height: 4em;
  resize: vertical;
}
.k-scheduler-edit-form > .k-edit-box:first-child .k-datetimepicker {
  margin-right: 1em;
}
.km-pane-wrapper .k-scheduler-edit-form .k-edit-buttons {
  clear: right;
  margin-right: 2%;
  margin-left: 2%;
  padding: 0 0 .6em;
}
.k-edit-box {
  float: left;
}
.k-edit-box + .k-edit-box {
  float: right;
}
.k-scheduler-edit-form label + input {
  margin-left: 1em;
}
.k-edit-field > ul.k-reset > li {
  margin: .2em 0 .4em;
  line-height: 2.4;
}
.k-edit-field > ul.k-reset.k-toolbar > li {
  margin: 0;
}
.k-edit-field > ul.k-reset .k-widget {
  margin-left: .8em;
}
.k-edit-field > ul.k-reset .k-numerictextbox,
.k-edit-field span.k-recur-interval {
  width: 5em;
}
.k-edit-field > ul.k-reset .k-dropdown,
.k-edit-field > ul.k-reset .k-datepicker,
div[name="recurrenceRule"] > .k-dropdown {
  width: 9em;
}
.k-scheduler-edit-form .k-edit-buttons .k-scheduler-delete {
  float: left;
}
.k-popup-message {
  margin: 0;
  padding: 1em 0 2em;
  text-align: center;
}
.k-scheduler-timezones .k-dropdown:first-child {
  width: 100%;
}
.k-scheduler-timezones .k-dropdown + .k-dropdown {
  margin: .5em 0 .7em;
}
.k-scheduler-toolbar > ul.k-scheduler-views > li.k-current-view {
  display: none;
}
.k-scheduler-toolbar li.k-nav-current .k-sm-date-format {
  display: none;
}
.k-scheduler-refresh {
  float: right;
  padding: 0 .5em;
}
/* Responsive styles  */
@media only screen and (max-width: 1024px) {
  .k-webkit .k-scheduler-toolbar > ul.k-scheduler-views,
  .k-ff .k-scheduler-toolbar > ul.k-scheduler-views,
  .k-ie11 .k-scheduler-toolbar > ul.k-scheduler-views,
  .k-safari .k-scheduler-toolbar > ul.k-scheduler-views {
    position: absolute;
    right: 6px;
    top: 6px;
    z-index: 10000;
  }
  .k-webkit .k-rtl .k-scheduler-toolbar > ul.k-scheduler-views,
  .k-ff .k-rtl .k-scheduler-toolbar > ul.k-scheduler-views,
  .k-ie11 .k-rtl .k-scheduler-toolbar > ul.k-scheduler-views,
  .k-safari .k-rtl .k-scheduler-toolbar > ul.k-scheduler-views {
    right: auto;
    left: 6px;
  }
  .k-webkit .k-scheduler-toolbar > ul.k-scheduler-views > li:not(.k-current-view),
  .k-ff .k-scheduler-toolbar > ul.k-scheduler-views > li:not(.k-current-view),
  .k-ie11 .k-scheduler-toolbar > ul.k-scheduler-views > li:not(.k-current-view),
  .k-safari .k-scheduler-toolbar > ul.k-scheduler-views > li:not(.k-current-view) {
    display: none;
  }
  .k-webkit .k-scheduler-toolbar li.k-nav-current .k-lg-date-format,
  .k-ff .k-scheduler-toolbar li.k-nav-current .k-lg-date-format,
  .k-ie11 .k-scheduler-toolbar li.k-nav-current .k-lg-date-format,
  .k-safari .k-scheduler-toolbar li.k-nav-current .k-lg-date-format {
    display: none;
  }
  .k-webkit .k-scheduler-toolbar li.k-nav-current .k-sm-date-format,
  .k-ff .k-scheduler-toolbar li.k-nav-current .k-sm-date-format,
  .k-ie11 .k-scheduler-toolbar li.k-nav-current .k-sm-date-format,
  .k-safari .k-scheduler-toolbar li.k-nav-current .k-sm-date-format {
    display: inline;
  }
  .k-webkit .k-scheduler-toolbar > ul.k-scheduler-views > li.k-current-view,
  .k-ff .k-scheduler-toolbar > ul.k-scheduler-views > li.k-current-view,
  .k-ie11 .k-scheduler-toolbar > ul.k-scheduler-views > li.k-current-view,
  .k-safari .k-scheduler-toolbar > ul.k-scheduler-views > li.k-current-view {
    display: block;
    border-width: 1px;
  }
  .k-webkit .k-rtl .k-scheduler-toolbar > ul.k-scheduler-views > li.k-current-view,
  .k-ff .k-rtl .k-scheduler-toolbar > ul.k-scheduler-views > li.k-current-view,
  .k-ie11 .k-rtl .k-scheduler-toolbar > ul.k-scheduler-views > li.k-current-view,
  .k-safari .k-rtl .k-scheduler-toolbar > ul.k-scheduler-views > li.k-current-view {
    text-align: left;
    padding-left: 1em;
  }
  .k-webkit .k-scheduler-toolbar > ul.k-scheduler-views > li.k-current-view > .k-link,
  .k-ff .k-scheduler-toolbar > ul.k-scheduler-views > li.k-current-view > .k-link,
  .k-ie11 .k-scheduler-toolbar > ul.k-scheduler-views > li.k-current-view > .k-link,
  .k-safari .k-scheduler-toolbar > ul.k-scheduler-views > li.k-current-view > .k-link {
    display: block;
    position: relative;
    padding-right: 2.5em;
    padding-left: 1em;
  }
  .k-webkit .k-rtl .k-scheduler-toolbar > ul.k-scheduler-views > li.k-current-view > .k-link,
  .k-ff .k-rtl .k-scheduler-toolbar > ul.k-scheduler-views > li.k-current-view > .k-link,
  .k-ie11 .k-rtl .k-scheduler-toolbar > ul.k-scheduler-views > li.k-current-view > .k-link,
  .k-safari .k-rtl .k-scheduler-toolbar > ul.k-scheduler-views > li.k-current-view > .k-link {
    padding-left: 0;
  }
  .k-webkit .k-scheduler-toolbar > ul.k-scheduler-views > li.k-current-view > .k-link:after,
  .k-ff .k-scheduler-toolbar > ul.k-scheduler-views > li.k-current-view > .k-link:after,
  .k-ie11 .k-scheduler-toolbar > ul.k-scheduler-views > li.k-current-view > .k-link:after,
  .k-safari .k-scheduler-toolbar > ul.k-scheduler-views > li.k-current-view > .k-link:after {
    display: block;
    content: "";
    position: absolute;
    top: 50%;
    margin-top: -0.6em;
    right: 0.333em;
    width: 1.333em;
    height: 1.333em;
  }
  .k-webkit .k-scheduler-toolbar > ul.k-scheduler-views.k-state-expanded > li,
  .k-ff .k-scheduler-toolbar > ul.k-scheduler-views.k-state-expanded > li,
  .k-ie11 .k-scheduler-toolbar > ul.k-scheduler-views.k-state-expanded > li,
  .k-safari .k-scheduler-toolbar > ul.k-scheduler-views.k-state-expanded > li,
  .k-webkit .k-scheduler-toolbar > ul.k-scheduler-views.k-state-expanded > li:first-child + li,
  .k-ff .k-scheduler-toolbar > ul.k-scheduler-views.k-state-expanded > li:first-child + li,
  .k-ie11 .k-scheduler-toolbar > ul.k-scheduler-views.k-state-expanded > li:first-child + li,
  .k-safari .k-scheduler-toolbar > ul.k-scheduler-views.k-state-expanded > li:first-child + li {
    display: block;
    border: 0;
    border-radius: 0;
  }
  .k-webkit .k-scheduler-toolbar > ul.k-scheduler-views.k-state-expanded,
  .k-ff .k-scheduler-toolbar > ul.k-scheduler-views.k-state-expanded,
  .k-ie11 .k-scheduler-toolbar > ul.k-scheduler-views.k-state-expanded,
  .k-safari .k-scheduler-toolbar > ul.k-scheduler-views.k-state-expanded {
    border: 1px solid #c5c5c5;
    background-color: #fff;
    background-image: none;
    -webkit-box-shadow: 0 2px 2px 0 rgba(0, 0, 0, 0.3);
            box-shadow: 0 2px 2px 0 rgba(0, 0, 0, 0.3);
  }
  .k-webkit .k-rtl .k-scheduler-toolbar > ul.k-scheduler-views.k-state-expanded,
  .k-ff .k-rtl .k-scheduler-toolbar > ul.k-scheduler-views.k-state-expanded,
  .k-ie11 .k-rtl .k-scheduler-toolbar > ul.k-scheduler-views.k-state-expanded,
  .k-safari .k-rtl .k-scheduler-toolbar > ul.k-scheduler-views.k-state-expanded {
    text-align: left;
  }
}
@media only screen and (max-width: 480px) {
  .k-webkit .k-scheduler-toolbar li.k-nav-current .k-sm-date-format,
  .k-ff .k-scheduler-toolbar li.k-nav-current .k-sm-date-format,
  .k-ie11 .k-scheduler-toolbar li.k-nav-current .k-sm-date-format,
  .k-safari .k-scheduler-toolbar li.k-nav-current .k-sm-date-format {
    display: none;
  }
  .k-webkit .k-scheduler-timecolumn,
  .k-ff .k-scheduler-timecolumn,
  .k-ie11 .k-scheduler-timecolumn,
  .k-safari .k-scheduler-timecolumn {
    width: 5em;
  }
  .k-webkit .k-scheduler-datecolumn,
  .k-ff .k-scheduler-datecolumn,
  .k-ie11 .k-scheduler-datecolumn,
  .k-safari .k-scheduler-datecolumn {
    width: 6em;
    overflow: hidden;
  }
  .k-webkit .k-scheduler-timecolumn > div,
  .k-ff .k-scheduler-timecolumn > div,
  .k-ie11 .k-scheduler-timecolumn > div,
  .k-safari .k-scheduler-timecolumn > div,
  .k-webkit .k-scheduler-datecolumn > div,
  .k-ff .k-scheduler-datecolumn > div,
  .k-ie11 .k-scheduler-datecolumn > div,
  .k-safari .k-scheduler-datecolumn > div {
    white-space: normal;
  }
}
/* Remove scrollbars during PDF export */
.k-scheduler-pdf-export {
  overflow: hidden;
}
.k-pdf-export-shadow .k-scheduler,
.k-scheduler-pdf-export .k-scheduler-content,
.k-scheduler-pdf-export .k-scheduler-times {
  height: auto !important;
  overflow: visible !important;
}
.k-scheduler-pdf-export .k-scheduler-header {
  padding: 0 !important;
}
.k-scheduler-pdf-export .k-scheduler-header-wrap {
  border-width: 0 !important;
}
.k-scheduler-pdf-export .k-scheduler-header .k-scheduler-table,
.k-scheduler-pdf-export .k-scheduler-content .k-scheduler-table {
  width: 100% !important;
}
/* Tooltip */
.k-tooltip {
  position: absolute;
  z-index: 12000;
  border-style: solid;
  border-width: 0;
  padding: 5px 5px 5px 6px;
  background-repeat: repeat-x;
  min-width: 20px;
  /*slider tooltip only*/
  text-align: center;
  /*slider tooltip only*/
}
.k-tooltip-button {
  text-align: right;
  height: 0;
}
.k-tooltip-content {
  height: 100%;
}
.k-tooltip-closable .k-tooltip-content {
  padding-right: 20px;
}
span.k-tooltip {
  position: static;
  display: inline-block;
  border-width: 1px;
  padding: 2px 5px 1px 6px;
}
.k-invalid-msg {
  display: none;
}
.k-callout {
  position: absolute;
  width: 0;
  height: 0;
  border-style: solid;
  border-width: 6px;
  border-color: transparent;
}
.k-callout-n {
  top: -12px;
  left: 50%;
}
.k-callout-w {
  top: 50%;
  left: -12px;
}
.k-callout-s {
  left: 50%;
  bottom: -12px;
}
.k-callout-e {
  top: 50%;
  right: -12px;
}
.k-slider-tooltip .k-callout-n,
.k-slider-tooltip .k-callout-s {
  margin-left: -6px;
}
.k-slider-tooltip .k-callout-w,
.k-slider-tooltip .k-callout-e {
  margin-top: -6px;
}
.k-tooltip-validation .k-warning {
  vertical-align: text-top;
  margin-right: 3px;
}
.k-tooltip-validation {
  z-index: 9999;
}
/* Toolbar */
.k-toolbar {
  position: relative;
  display: block;
  vertical-align: middle;
  line-height: 2.9em;
}
.k-toolbar .k-button .k-icon,
.k-toolbar .k-button .k-sprite,
.k-overflow-container .k-button .k-icon,
.k-overflow-container .k-button .k-sprite {
  vertical-align: middle;
  margin-top: -7px;
  margin-bottom: -5px;
}
.k-toolbar .k-input {
  line-height: inherit;
  height: inherit;
  padding-top: 2px;
  padding-bottom: 2px;
}
.k-toolbar .k-input:before {
  content: "\a0";
  display: inline-block;
  width: 0;
}
.k-ie .k-toolbar .k-input {
  height: 1.65em;
}
.k-toolbar .k-combobox .k-dropdown-wrap:before,
.k-toolbar .k-picker-wrap:before,
.k-toolbar .k-numeric-wrap:before {
  display: none;
}
.k-overflow-container .k-sprite {
  margin-left: -4px;
}
.k-toolbar-resizable {
  overflow: hidden;
  white-space: nowrap;
}
.k-toolbar > .k-align-left {
  float: none;
}
.k-toolbar > .k-align-right {
  float: right;
}
.k-toolbar > *,
.k-toolbar .k-button {
  display: inline-block;
  vertical-align: middle;
  line-height: 1.72em;
}
.k-toolbar .k-separator {
  border-width: 0 0 0 1px;
  border-style: solid;
  width: 1px;
  line-height: inherit;
}
.k-toolbar .k-button-group {
  list-style-type: none;
}
.k-toolbar .k-button-group > li {
  display: inline-block;
}
.k-toolbar .k-button-group .k-button {
  margin: 0 0 0 -1px;
  border-radius: 0;
}
.k-toolbar .k-button,
.k-toolbar .k-split-button,
.k-toolbar .k-button-group,
.k-toolbar .k-widget,
.k-toolbar .k-textbox,
.k-toolbar label,
.k-toolbar .k-separator {
  margin: 0 .2em;
  line-height: 1.72em;
  vertical-align: middle;
}
.k-toolbar .k-split-button {
  padding-left: 0;
}
.k-toolbar .k-split-button .k-button,
.k-toolbar .k-button-group .k-group-start {
  margin: 0;
}
.k-toolbar .k-split-button .k-split-button-arrow {
  margin: 0 0 0 -1px;
}
.k-toolbar .k-overflow-anchor {
  border-width: 0 0 0 1px;
  border-style: solid;
  height: 3em;
  width: 3em;
  line-height: inherit;
  padding: 0 .5em;
  margin: 0;
  position: relative;
  float: right;
  border-radius: 0;
}
.k-overflow-container .k-item {
  float: none;
  border: 0;
}
.k-overflow-container .k-separator {
  border-width: 0 0 1px;
  border-style: solid;
  height: 1px;
  line-height: 0;
  font-size: 0;
  padding: 0;
}
.k-overflow-container .k-overflow-button,
.k-split-container .k-button {
  text-align: left;
  display: block;
  background: none;
  border-color: transparent;
  white-space: nowrap;
}
.k-split-container {
  margin-top: -1px;
}
.k-overflow-container .k-button-group {
  padding: 0;
}
.k-overflow-container .k-button-group > li {
  display: block;
}
.k-overflow-container .k-overflow-group {
  border-width: 1px 0;
  border-style: solid;
  border-radius: 0;
  padding: 2px 0;
  margin: 1px 0;
}
.k-overflow-container .k-overflow-hidden {
  display: none;
}
.k-overflow-container .k-toolbar-first-visible,
.k-overflow-container .k-overflow-group + .k-overflow-group,
.k-overflow-container .k-separator + .k-overflow-group {
  border-top: 0;
  margin-top: 0;
  padding-top: 1px;
}
.k-overflow-container .k-overflow-group + .k-separator {
  display: none;
}
.k-overflow-container .k-toolbar-last-visible {
  border-bottom: 0;
  margin-bottom: 0;
  padding-bottom: 1px;
}
/* Splitter */
.k-splitter {
  position: relative;
  height: 300px;
}
.k-pane > .k-splitter {
  border-width: 0;
  overflow: hidden;
}
.k-splitter .k-pane {
  overflow: hidden;
}
.k-splitter .k-scrollable {
  overflow: auto;
}
.k-splitter .k-pane-loading {
  position: absolute;
  top: 50%;
  left: 50%;
  margin: -8px 0 0 -8px;
}
.k-ghost-splitbar,
.k-splitbar {
  position: absolute;
  border-style: solid;
  font-size: 0;
  outline: 0;
  -webkit-user-select: none;
     -moz-user-select: none;
      -ms-user-select: none;
          user-select: none;
}
.k-splitter .k-ghost-splitbar-horizontal,
.k-splitter .k-splitbar-horizontal {
  top: 0;
  width: 5px;
  border-width: 0 1px;
  background-repeat: repeat-y;
}
.k-ghost-splitbar-vertical,
.k-splitbar-vertical {
  left: 0;
  height: 5px;
  border-width: 1px 0;
  background-repeat: repeat-x;
}
.k-splitbar-draggable-horizontal {
  cursor: w-resize;
}
.k-splitbar-draggable-vertical {
  cursor: n-resize;
}
.k-splitbar .k-resize-handle {
  display: none;
}
.k-restricted-size-horizontal,
.k-restricted-size-vertical {
  background-color: #f00;
}
.k-splitbar-horizontal .k-icon {
  position: absolute;
  top: 50%;
  width: 5px;
  height: 20px;
  margin-top: -10px;
}
.k-collapse-prev,
.k-collapse-next,
.k-expand-prev,
.k-expand-next {
  cursor: pointer;
}
.k-splitbar-horizontal .k-collapse-prev {
  margin-top: -31px;
}
.k-splitbar-horizontal .k-collapse-next {
  margin-top: 11px;
}
.k-splitbar-static-horizontal {
  width: 1px;
}
.k-splitbar-static-vertical {
  height: 1px;
}
.k-splitbar-vertical .k-icon {
  position: absolute;
  left: 50%;
  width: 20px;
  height: 5px;
  margin-left: -10px;
}
.k-splitbar-vertical .k-collapse-prev {
  margin-left: -31px;
}
.k-splitbar-vertical .k-collapse-next {
  margin-left: 11px;
}
.k-splitbar-draggable-vertical .k-resize-handle,
.k-splitbar-draggable-horizontal .k-resize-handle {
  display: inline-block;
}
.k-splitbar-horizontal .k-resize-handle {
  background-position: -165px -6px;
}
.k-splitbar-horizontal-hover > .k-resize-handle {
  background-position: -181px -6px;
}
.k-splitbar-horizontal .k-collapse-prev,
.k-splitbar-horizontal .k-expand-next {
  background-position: -6px -174px;
}
.k-splitbar-horizontal-hover > .k-collapse-prev,
.k-splitbar-horizontal-hover > .k-expand-next {
  background-position: -22px -174px;
}
.k-splitbar-horizontal .k-collapse-next,
.k-splitbar-horizontal .k-expand-prev {
  background-position: -5px -142px;
}
.k-splitbar-horizontal-hover > .k-collapse-next,
.k-splitbar-horizontal-hover > .k-expand-prev {
  background-position: -21px -142px;
}
.k-splitbar-vertical .k-resize-handle {
  background-position: -38px -309px;
}
.k-splitbar-vertical-hover > .k-resize-handle {
  background-position: -70px -309px;
}
.k-splitbar-vertical .k-collapse-prev,
.k-splitbar-vertical .k-expand-next {
  background-position: 2px -134px;
}
.k-splitbar-vertical-hover > .k-collapse-prev,
.k-splitbar-vertical-hover > .k-expand-next {
  background-position: -14px -134px;
}
.k-splitbar-vertical .k-collapse-next,
.k-splitbar-vertical .k-expand-prev {
  background-position: 2px -165px;
}
.k-splitbar-vertical-hover > .k-collapse-next,
.k-splitbar-vertical-hover > .k-expand-prev {
  background-position: -14px -165px;
}
.k-splitter-resizing {
  overflow: hidden;
}
/* Upload */
html .k-upload {
  position: relative;
}
.k-dropzone em,
.k-upload-button {
  vertical-align: middle;
}
.k-dropzone,
.k-file {
  position: relative;
}
.k-dropzone {
  border-style: solid;
  border-width: 0;
  padding: .8em;
  background-color: transparent;
}
.k-dropzone em {
  visibility: hidden;
  margin-left: .6em;
}
.k-dropzone-active em {
  visibility: visible;
}
.k-upload-button {
  position: relative;
  min-width: 7.167em;
  overflow: hidden !important;
  /* important required by IE7 */
  direction: ltr;
}
.k-upload-sync .k-upload-button,
.k-ie8 .k-upload-button,
.k-ie9 .k-upload-button {
  margin: .8em;
}
.k-upload-button input {
  position: absolute;
  top: 0;
  right: 0;
  z-index: 1;
  font: 170px monospace !important;
  /* critical for correct operation; larger values lead to ignoring or text layout problems in IE */
  filter: alpha(opacity=0);
  opacity: 0;
  margin: 0;
  padding: 0;
  cursor: pointer;
}
.k-upload-files {
  margin: 0 0 .6em;
  line-height: 2.66;
  border-style: solid;
  border-width: 1px 0 0;
}
.k-upload-files .k-button {
  padding: 0;
}
.k-upload-files .k-button,
.k-upload-status-total .k-icon {
  margin-left: 8px;
}
.k-upload .k-fail {
  background-position: -161px -111px;
}
.k-si-refresh {
  background-position: -160px -128px;
}
.k-link:not(.k-state-disabled):hover > .k-si-refresh,
.k-state-hover > .k-si-refresh,
.k-state-hover > * > .k-si-refresh,
.k-button:not(.k-state-disabled):hover .k-si-refresh,
.k-textbox:hover .k-si-refresh,
.k-button:active .k-si-refresh {
  background-position: -160px -128px;
}
.k-si-tick,
.k-success {
  background-position: -160px -96px;
}
.k-link:not(.k-state-disabled):hover > .k-si-tick,
.k-link:not(.k-state-disabled):hover > .k-success,
.k-state-hover > .k-si-tick,
.k-state-hover > .k-success,
.k-state-hover > * > .k-si-tick,
.k-state-hover > * > .k-success,
.k-button:not(.k-state-disabled):hover .k-si-tick,
.k-button:not(.k-state-disabled):hover .k-success,
.k-textbox:hover .k-si-tick,
.k-textbox:hover .k-success,
.k-button:active .k-si-tick,
.k-button:active .k-success {
  background-position: -160px -96px;
}
.k-si-cancel {
  background-position: -160px -112px;
}
.k-link:not(.k-state-disabled):hover > .k-si-cancel,
.k-state-hover > .k-si-cancel,
.k-state-hover > * > .k-si-cancel,
.k-button:not(.k-state-disabled):hover .k-si-cancel,
.k-textbox:hover .k-si-cancel,
.k-button:active .k-si-cancel {
  background-position: -160px -112px;
}
.k-file {
  border-style: solid;
  border-width: 0 0 1px;
  padding: .167em .167em .167em .8em;
}
.k-file .k-icon {
  position: relative;
}
.k-file > .k-icon {
  background-position: -112px -288px;
}
.k-link:not(.k-state-disabled):hover > .k-file > .k-icon,
.k-state-hover > .k-file > .k-icon,
.k-state-hover > * > .k-file > .k-icon,
.k-button:not(.k-state-disabled):hover .k-file > .k-icon,
.k-textbox:hover .k-file > .k-icon,
.k-button:active .k-file > .k-icon {
  background-position: -112px -288px;
}
.k-filename {
  position: relative;
  display: inline-block;
  min-width: 10em;
  max-width: 16.667em;
  vertical-align: middle;
  margin-left: 1em;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}
.k-upload-status {
  position: absolute;
  right: 12px;
}
.k-upload-status .k-button,
.k-upload-status .k-warning {
  vertical-align: text-bottom;
}
.k-dropzone .k-upload-status {
  line-height: 2.4;
}
.k-ie8 .k-upload-status-total {
  line-height: 29px;
}
.k-upload-action {
  line-height: normal;
}
.k-progress {
  position: absolute;
  top: 0;
  bottom: 0;
  left: 0;
}
.k-upload-selected {
  min-width: 7.167em;
  margin: 0.25em 0 0;
  -webkit-box-sizing: content-box;
          box-sizing: content-box;
}
.k-upload-selected,
.k-upload-cancel {
  margin-bottom: .8em;
}
.k-upload-selected {
  margin-left: .8em;
  margin-right: .2em;
}
/* ImageBrowser */
.k-toolbar-wrap .k-dropzone em,
.k-toolbar-wrap .k-upload-files {
  display: none;
}
.k-toolbar-wrap .k-dropzone {
  border: 0;
  padding: 0;
}
.k-toolbar-wrap .k-dropzone-active {
  text-align: center;
}
.k-toolbar-wrap .k-dropzone-active em {
  display: inline;
  margin: 0;
  font-size: 5em;
  font-style: normal;
}
.k-toolbar-wrap .k-dropzone-active .k-upload-button {
  display: none;
}
.k-filebrowser-dropzone {
  z-index: 10010;
  filter: alpha(opacity=40);
  opacity: .4;
  position: fixed;
}
.k-search-wrap {
  position: relative;
  float: right;
  width: 20%;
  padding: 0;
}
.k-search-wrap label {
  position: absolute;
  top: 0;
  left: 4px;
  line-height: 20px;
  font-style: italic;
}
.k-search-wrap input.k-input {
  padding-left: 0;
  padding-right: 0;
}
.k-search-wrap .k-search {
  position: absolute;
  top: 4px;
  right: 2px;
  margin: 0;
}
.k-breadcrumbs {
  position: relative;
  float: left;
  width: 79%;
}
.k-breadcrumbs-wrap {
  position: absolute;
  top: 3px;
  left: 0;
  z-index: 1;
  padding-left: 5px;
  line-height: 18px;
}
.k-breadcrumbs > .k-input {
  width: 100%;
  font-size: inherit;
  font-family: inherit;
  border: 0;
}
.k-breadcrumbs .k-link,
.k-breadcrumbs-wrap .k-icon {
  margin-top: 0;
  text-decoration: none;
  vertical-align: middle;
  position: static;
}
.k-breadcrumbs .k-link:hover {
  text-decoration: underline;
}
.k-filebrowser .k-breadcrumbs .k-i-seek-w {
  text-decoration: none;
  cursor: default;
}
.k-filebrowser .k-filebrowser-toolbar {
  border-style: solid;
  border-width: 1px;
  margin: 8px 0 0;
  padding: .25em;
  line-height: 23px;
  white-space: nowrap;
  /*required by WebKit*/
}
.k-filebrowser .k-filebrowser-toolbar .k-button.k-state-disabled {
  display: none;
}
.k-filebrowser .k-toolbar-wrap {
  float: left;
}
.k-filebrowser .k-tiles-arrange {
  float: right;
}
.k-filebrowser .k-tiles-arrange .k-dropdown {
  width: 75px;
}
.k-filebrowser .k-upload {
  float: left;
  z-index: 10010;
  border-width: 0;
  background-color: transparent;
}
.k-filebrowser .k-upload .k-upload-status {
  display: none;
}
.k-filebrowser .k-upload .k-upload-button {
  width: auto;
  margin-left: 0;
  vertical-align: top;
}
.k-filebrowser .k-upload .k-icon {
  vertical-align: bottom;
}
.k-tiles {
  clear: both;
  height: 390px;
  border-style: solid;
  border-width: 1px;
  border-top-width: 0;
  margin: 0 0 1.4em;
  padding: 9px;
  overflow: auto;
  line-height: 1.2;
}
.k-tile {
  float: left;
  width: 223px;
  height: 88px;
  overflow: hidden;
  border-style: solid;
  border-width: 1px;
  margin: 1px;
  padding: 0 0 4px;
  background-position: 0 100px;
  background-repeat: repeat-x;
  cursor: pointer;
}
.k-tiles li.k-state-hover,
.k-tiles li.k-state-selected {
  background-position: 0 center;
}
.k-filebrowser .k-thumb {
  float: left;
  display: inline;
  width: 80px;
  height: 80px;
  margin: 4px 10px 0 4px;
  -webkit-user-select: none;
     -moz-user-select: none;
      -ms-user-select: none;
          user-select: none;
}
.k-filebrowser .k-file {
  width: 80px;
  height: 80px;
}
.k-filebrowser .k-image {
  margin: 2px 0 0 2px;
}
.k-filebrowser .k-folder {
  width: 80px;
  height: 80px;
  background-position: 0 -200px;
  background-repeat: no-repeat;
}
.k-filebrowser .k-loading {
  margin: 35px 0 0 33px;
}
.k-tile strong,
.k-tile input {
  margin: 10px 0 4px;
  font-weight: normal;
}
.k-tile strong {
  float: left;
  width: 120px;
  overflow: hidden;
  text-overflow: ellipsis;
}
.k-tile input {
  width: 100px;
}
.k-tile strong,
.k-tile input,
.k-tile .k-filesize {
  display: block;
}
.k-filebrowser .k-form-text-row {
  text-align: right;
}
.k-filebrowser .k-form-text-row label {
  width: 14%;
}
.k-filebrowser .k-form-text-row input {
  width: 80%;
}
.k-tile-empty {
  margin: 160px 0 0;
}
.k-tile-empty .k-dialog-upload {
  font-weight: bold;
  font-size: 120%;
}
.k-tile-empty strong {
  display: block;
  margin: 0 0 0.2em;
  font-size: 3em;
  font-weight: normal;
}
.k-tile-empty,
.k-tile-empty .k-button-wrapper {
  text-align: center;
}
.k-chart,
.k-gauge,
.k-sparkline,
.k-stockchart {
  -webkit-touch-callout: none;
  -webkit-tap-highlight-color: rgba(0, 0, 0, 0);
}
.k-chart,
.k-stockchart {
  height: 400px;
}
div.k-chart,
div.k-gauge,
span.k-sparkline,
.k-stockchart {
  background-color: transparent;
}
.k-gauge {
  text-align: left;
  position: relative;
}
.k-baseline-marker {
  zoom: 1;
  *display: inline;
}
.k-chart-tooltip {
  border-radius: 4px;
  padding: 6px;
  white-space: nowrap;
  z-index: 12000;
  line-height: normal;
  background-repeat: repeat-x;
  background-position: 0 0;
  background-image: url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABQAAAAWCAYAAADAQbwGAAAAGXRFWHRTb2Z0d2FyZQBBZG9iZSBJbWFnZVJlYWR5ccllPAAAADNJREFUeNpi/P//vwMDFQELEP8beQb+HTWQYgP/DHoD/466cAR4edRAyg38P6hLbIAAAwCnWhhVsxvdCAAAAABJRU5ErkJggg==);
  color: #fff;
}
.k-chart-tooltip-inverse {
  color: #000;
}
.k-chart-tooltip table {
  border-spacing: 0;
  border-collapse: collapse;
}
.k-chart-tooltip th {
  width: auto;
  text-align: center;
  padding: 1px;
}
.k-chart-tooltip td {
  width: auto;
  text-align: left;
  padding: .1em .2em;
}
/*Stock Charts*/
/* Selection */
.k-selector {
  position: absolute;
  -webkit-transform: translateZ(0);
}
.k-selection {
  position: absolute;
  border-width: 1px;
  border-style: solid;
  border-color: #d2d2d2;
  border-bottom: 0;
  height: 100%;
}
.k-selection-bg {
  position: absolute;
  width: 100%;
  height: 100%;
  background-color: #fff;
  background-color: rgba(255, 255, 255, 0.01);
  filter: alpha(opacity=1);
}
.k-handle {
  background: #d2d2d2;
  width: 7px;
  height: 26px;
  cursor: e-resize;
  z-index: 1;
  border-radius: 6px;
  position: absolute;
}
.k-handle div {
  width: 100%;
  height: 100%;
  background-color: transparent;
}
.k-leftHandle {
  left: -4px;
}
.k-rightHandle {
  right: -4px;
}
.k-leftHandle div {
  margin: -20px 0 0 -15px;
  padding: 40px 30px 0 0;
}
.k-rightHandle div {
  margin: -20px 0 0 -15px;
  padding: 40px 0 0 30px;
}
.k-mask {
  position: absolute;
  height: 100%;
  background-color: #fff;
  filter: alpha(opacity=80);
  opacity: 0.80;
}
.k-border {
  background: #d2d2d2;
  width: 1px;
  height: 100%;
  position: absolute;
}
/* Navigator hint */
.k-navigator-hint div {
  position: absolute;
}
.k-navigator-hint .k-scroll {
  position: absolute;
  height: 4px;
  border-radius: 4px;
  background: #d2d2d2;
}
.k-navigator-hint .k-tooltip {
  margin-top: 20px;
  min-width: 160px;
  opacity: 1;
  text-align: center;
  border: 0;
  -webkit-box-shadow: 0 1px 2px rgba(0, 0, 0, 0.5);
          box-shadow: 0 1px 2px rgba(0, 0, 0, 0.5);
  background: #fff;
}
/* Sparklines */
.k-sparkline,
.k-sparkline span {
  display: inline-block;
  vertical-align: top;
}
.k-sparkline span {
  height: 100%;
  width: 100%;
}
/* Map */
.k-map,
.k-diagram {
  height: 600px;
}
.k-map .km-scroll-wrapper,
.k-diagram .km-scroll-wrapper {
  padding-bottom: 0;
  -webkit-user-select: none;
     -moz-user-select: none;
      -ms-user-select: none;
          user-select: none;
}
.k-map .km-scroll-wrapper,
.k-diagram .km-scroll-wrapper,
.k-map .km-scroll-container,
.k-diagram .km-scroll-container {
  position: absolute;
  width: 100%;
  height: 100%;
}
.k-map .k-layer,
.k-diagram .k-layer {
  position: absolute;
  left: 0;
  top: 0;
}
.k-map .km-touch-scrollbar,
.k-diagram .km-touch-scrollbar {
  display: none;
}
.k-map .k-marker {
  position: absolute;
  width: 28px;
  height: 40px;
  margin: -40px 0 0 -14px;
  cursor: pointer;
}
.k-map .k-marker-pin {
  background-position: 0px 40px;
}
.k-map .k-marker-pin-target {
  background-position: 0px 0px;
}
@media only screen and (-webkit-min-device-pixel-ratio: 2), only screen and (min-device-pixel-ratio: 2) {
  .k-map .k-marker {
    width: 56px;
    height: 80px;
    margin: -80px 0 0 -28px;
  }
  .k-map .k-marker-pin {
    background-position: 0px 80px;
  }
}
/* Control positions */
.k-map .k-pos-top {
  top: 0;
}
.k-map .k-pos-bottom {
  bottom: 0;
}
.k-map .k-pos-left {
  left: 0;
}
.k-map .k-pos-right {
  right: 0;
}
.k-map-controls {
  position: absolute;
}
.k-map-controls.k-pos-left .k-widget:first-child {
  margin-right: 0;
}
.k-map-controls.k-pos-right .k-widget:first-child {
  margin-left: 0;
}
/* Map navigator */
.k-navigator {
  width: 50px;
  height: 50px;
  margin: 20px;
  border-radius: 80px;
  position: relative;
  display: inline-block;
  vertical-align: middle;
}
.k-pdf-export .k-navigator {
  display: none;
}
.k-navigator > button {
  border-color: transparent;
  background: none;
}
div.k-navigator > .k-button {
  margin: 0;
  padding: 0;
  line-height: 10px;
  border-radius: 16px;
  position: absolute;
  font-size: 1px;
  /*IE7*/
  line-height: 1px;
}
div.k-navigator .k-navigator-n {
  top: 2px;
  left: 50%;
  margin-left: -9px;
}
div.k-navigator .k-navigator-e {
  right: 2px;
  top: 50%;
  margin-top: -9px;
}
div.k-navigator .k-navigator-s {
  bottom: 2px;
  left: 50%;
  margin-left: -9px;
}
div.k-navigator .k-navigator-w {
  left: 2px;
  top: 50%;
  margin-top: -9px;
}
/* Attribution */
.k-map .k-attribution {
  background-color: rgba(255, 255, 255, 0.8);
  font-size: 10px;
  padding: 2px 4px;
  z-index: 1000;
}
/* Zoom */
.k-zoom-control {
  margin: 14px;
  vertical-align: middle;
}
.k-pdf-export .k-zoom-control {
  display: none;
}
.k-button-wrap {
  border-radius: 4px;
  display: inline-block;
}
.k-button-wrap .k-button {
  position: relative;
  font: bold 17px/1.18 monospace;
}
.k-buttons-horizontal :first-child {
  border-radius: 4px 0 0 4px;
}
.k-buttons-horizontal :first-child + .k-zoom-in {
  border-radius: 0;
  margin-left: -1px;
}
.k-buttons-horizontal .k-zoom-out {
  border-radius: 0 4px 4px 0;
  margin-left: -1px;
}
.k-button-wrap .k-button:hover {
  z-index: 1;
}
.k-buttons-vertical .k-button {
  display: block;
}
.k-buttons-vertical :first-child {
  border-radius: 4px 4px 0 0;
}
.k-buttons-vertical .k-zoom-out {
  border-radius: 0 0 4px 4px;
  margin-top: -1px;
}
.k-zoom-text {
  margin: 0;
  width: 4.3em;
  vertical-align: top;
}
/* RTL */
.k-rtl .k-buttons-horizontal :first-child {
  border-radius: 0 4px 4px 0;
}
.k-rtl .k-buttons-horizontal :first-child + .k-zoom-in {
  border-radius: 0;
  margin-left: 0;
  margin-right: -1px;
}
.k-rtl .k-buttons-horizontal .k-zoom-out {
  border-radius: 4px 0 0 4px;
  margin-left: 0;
  margin-right: -1px;
}
/* Diagram */
.k-diagram {
  height: 600px;
}
.k-diagram .km-scroll-wrapper {
  width: 100%;
  height: 100%;
  position: relative;
}
.k-diagram .km-scroll-wrapper {
  width: 100%;
  height: 100%;
  position: relative;
}
.k-canvas-container {
  width: 100%;
  height: 100%;
}
/* IE8- */
.k-diagram img {
  -webkit-box-sizing: content-box;
          box-sizing: content-box;
}
/* TreeMap start */
.k-treemap {
  overflow: hidden;
  height: 400px;
}
.k-treemap-tile {
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  border-style: solid;
  border-width: 1px;
  position: absolute;
  margin: -1px 0 0 -1px;
  overflow: hidden;
}
.k-treemap-tile.k-leaf {
  padding: .6em;
}
.k-treemap-wrap.k-last > .k-treemap-tile {
  padding: .3em;
}
.k-treemap-tile.k-state-hover {
  z-index: 2;
  background-image: none;
}
.k-treemap > .k-treemap-tile {
  position: relative;
  height: 100%;
}
.k-treemap-title {
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  overflow: hidden;
  text-overflow: ellipsis;
  line-height: 2.42em;
  height: 2.42em;
  padding: 0 .6em;
  white-space: nowrap;
}
.k-treemap-wrap .k-treemap-title {
  border-width: 0 0 1px;
  border-style: solid;
}
.k-treemap-wrap {
  position: absolute;
  top: 0;
  left: 0;
  bottom: 0;
  right: 0;
}
.k-treemap-title + .k-treemap-wrap {
  top: 2.42em;
}
.k-treemap-title-vertical {
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  text-overflow: ellipsis;
  position: absolute;
  top: 0;
  bottom: 0;
  width: 2.42em;
  line-height: 2.42em;
  overflow: hidden;
  padding: .6em 0;
  white-space: nowrap;
}
.k-treemap-title-vertical > div {
  position: absolute;
  top: 0;
  right: 1.23em;
  -webkit-transform-origin: right;
      -ms-transform-origin: right;
          transform-origin: right;
  -webkit-transform: rotate(-90deg);
      -ms-transform: rotate(-90deg);
          transform: rotate(-90deg);
}
.k-treemap-title-vertical + .k-treemap-wrap {
  left: 2.42em;
}
/* TreeMap end */
/* IE7 inline-block behavior */
.k-ie7 .k-button,
.k-ie7 .k-grid-filter,
.k-ie7 .k-header-column-menu,
.k-ie7 .k-grid .k-pager-numbers,
.k-ie7 .k-grid .k-status-text,
.k-ie7 .k-pager-numbers .k-link,
.k-ie7 .k-pager-numbers span,
.k-ie7 .k-pager-numbers input,
.k-ie7 .k-grouping-row p,
.k-ie7 .k-grouping-header a,
.k-ie7 .k-grouping-header .k-group-indicator,
.k-ie7 .k-grouping-header .k-link,
.k-ie7 .k-grouping-header .k-button,
.k-ie7 .k-grid-actions,
.k-ie7 .k-edit-label,
.k-ie7 .k-edit-field,
.k-ie7 .k-edit-form-container .editor-label,
.k-ie7 .k-edit-form-container .editor-field,
.k-ie7 .k-combobox,
.k-ie7 .k-dropdown,
.k-ie7 .k-selectbox,
.k-ie7 .k-picker-wrap .k-select,
.k-ie7 .k-dropdown-wrap .k-select,
.k-ie7 .k-numerictextbox,
.k-ie7 .k-timepicker,
.k-ie7 .k-datepicker,
.k-ie7 .k-datetimepicker,
.k-ie7 .k-colorpicker,
.k-ie7 .k-calendar,
.k-ie7 .k-calendar .k-nav-fast,
.k-ie7 .k-treeview .k-icon,
.k-ie7 .k-treeview .k-image,
.k-ie7 .k-treeview .k-sprite,
.k-ie7 .k-treeview .k-in,
.k-ie7 .k-colorpicker,
.k-ie7 .k-colorpicker .k-tool-icon,
.k-ie7 .k-palette.k-reset,
.k-ie7 .k-editor-dialog .k-button,
.k-ie7 .k-form-text-row label,
.k-ie7 .k-tabstrip-items .k-item,
.k-ie7 .k-tabstrip-items .k-link,
.k-ie7 .k-slider-horizontal,
.k-ie7 .k-splitbar-draggable-vertical .k-resize-handle,
.k-ie7 .k-splitbar-draggable-horizontal .k-resize-handle,
.k-ie7 .t-filename,
.k-ie7 div.k-window,
.k-ie7 .k-window-titlebar .k-window-action,
.k-ie7 .k-scheduler-toolbar > ul > li,
.k-ie7 .k-scheduler-footer > ul > li,
.k-ie7 .k-scheduler-toolbar > ul > li,
.k-ie7 .k-scheduler-footer > ul > li,
.k-ie7 .k-event:hover .k-event-delete,
.k-ie7 tr:hover > td > .k-task .k-event-delete,
.k-ie7 .k-progressbar,
.k-ie7 .k-progressbar-horizontal .k-item,
.k-ie7 .k-progress-status,
.k-ie7 .k-grid-header-locked,
.k-ie7 .k-grid-content-locked,
.k-ie7 .k-grid-header-locked + .k-grid-header-wrap,
.k-ie7 .k-grid-content-locked + .k-grid-content,
.k-ie7 .k-grid-footer-locked,
.k-ie7 .k-gantt-layout,
.k-ie7 .k-gantt-toolbar > ul > li,
.k-ie7 .k-gantt-toolbar .k-link,
.k-ie7 .k-task-summary,
.k-ie7 .k-task-actions:first-child > .k-link,
.k-ie7 .k-task-wrap:hover .k-task-delete,
.k-ie7 .k-task-wrap-active .k-task-delete,
.k-ie7 .k-navigator,
.k-ie7 .k-zoom-control,
.k-ie7 .k-sparkline,
.k-ie7 .k-sparkline span {
  display: inline;
  zoom: 1;
}
/* IE7 zooms */
.k-ie7 .k-treeview .k-item,
.k-ie7 .k-treeview .k-group {
  zoom: 1;
}
/* IE7 textboxes */
.k-ie7 .k-edit-field > .k-textbox {
  text-indent: 0;
}
/* IE7 icons */
.k-ie7 .k-icon,
.k-ie7 .k-sprite {
  text-indent: 0;
}
/* IE7 disabled state */
.k-ie7 .k-state-disabled {
  filter: alpha(opacity=70);
}
/* IE7 Button */
.k-ie7 .k-button {
  line-height: normal;
  overflow: visible;
  margin-right: 4px;
}
.k-ie7 a.k-button {
  line-height: 1.6;
  padding-left: 7px;
  padding-right: 7px;
  /*+1*/
}
.k-ie7 .k-button-expand {
  margin-left: 0;
  margin-right: 0;
}
.k-ie7 a.k-button-icon {
  padding-left: 5px;
  padding-right: 5px;
  /*+1*/
}
/* IE7 input widgets */
.k-ie7 .k-picker-wrap .k-input,
.k-ie7 .k-numeric-wrap .k-input,
.k-ie7 .k-combobox .k-input {
  margin: -1px 0;
}
/* removes excessive spacing */
.k-ie7 .k-autocomplete .k-input,
.k-ie7 .k-picker-wrap .k-input,
.k-ie7 .k-numeric-wrap .k-input,
.k-ie7 .k-dropdown-wrap .k-input,
.k-ie7 .k-selectbox .k-input {
  text-indent: 0;
}
.k-ie7 .k-picker-wrap .k-icon,
.k-ie7 .k-dropdown-wrap .k-icon {
  /*use alternative approach for vertical expansion, instead of min-height and height*/
  line-height: 2em;
  font-size: 1em;
  padding-top: 16px;
  height: 0;
}
.k-ie7 input.k-textbox {
  line-height: 1.72em;
  height: 1.72em;
  text-indent: .33em;
}
.k-ie7 .k-textbox {
  padding: 1px 0;
  text-indent: 0;
}
/*IE7 ColorPicker*/
.k-ie7 .k-flatcolorpicker .k-hue-slider .k-slider-track {
  background: url("textures/hue.png") repeat 0 50%;
}
.k-ie7 .k-flatcolorpicker .k-transparency-slider .k-slider-track {
  background: url("textures/transparency.png") repeat 0 50%;
}
.k-ie7 .k-flatcolorpicker .k-hsv-gradient {
  filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#ffffffff',endColorstr='#00ffffff',GradientType=1) progid:DXImageTransform.Microsoft.gradient(startColorstr='#00000000',endColorstr='#ff000000',GradientType=0);
}
/*IE7 Editor*/
.k-ie7 .k-editor-toolbar li {
  display: inline;
  /* required. Floats and the inline-block hack break it */
}
.k-ie7 .k-filebrowser .k-upload-button,
.k-ie7 .k-filebrowser .k-upload .k-icon {
  vertical-align: baseline;
  position: relative;
  top: 1px;
}
.k-ie7 .k-filebrowser .k-upload .k-icon {
  top: 2px;
}
.k-ie7 .k-filebrowser .k-filebrowser-toolbar .k-button-icon {
  vertical-align: middle;
}
/*IE7 Gantt*/
.k-ie7 .k-task-milestone {
  margin-left: 1px;
  /*+1*/
}
/* IE7 Grid */
.k-ie7 .k-grid-content table {
  width: auto;
}
.k-ie7 .k-pager-wrap .k-textbox {
  height: 1.3333em;
  margin-top: 0.16666em;
  display: inline;
}
.k-ie7 .k-pager-sizes {
  float: left;
}
.k-ie7 .k-dirty-cell {
  position: relative;
}
.k-ie7 .k-dirty {
  top: 5px;
}
.k-ie7 .k-grid-actions {
  vertical-align: bottom;
}
.k-ie7 .k-grid tbody a.k-button {
  min-width: 62px;
  /*-2*/
}
.k-ie7 .k-edit-cell > .text-box,
.k-ie7 .k-edit-cell > .k-textbox,
.k-ie7 .k-edit-cell > .k-widget,
.k-ie7 .k-grid-edit-row > td > .k-textbox,
.k-ie7 .k-grid-edit-row > td > .k-widget,
.k-ie7 .k-grid-edit-row > td > .text-box {
  display: block;
  width: 90%;
}
.k-ie7 .k-multicheck-wrap {
  position: relative;
}
/*IE7 Menu*/
.k-ie7 .k-menu .k-item .k-item {
  zoom: normal;
}
.k-ie7 .k-menu .k-item > .k-link > .k-i-arrow-s,
.k-ie7 .k-menu .k-image,
.k-ie7 .k-menu .k-sprite {
  margin-top: 0;
  /*+2*/
}
.k-ie7 .k-menu .k-menu-group .k-link {
  width: 100%;
}
/*IE7 ProgressBar */
.k-ie7 .k-progressbar-vertical .k-progress-status {
  /*instead of transforms*/
  writing-mode: tb-rl;
  padding: .5em 0;
}
/*IE7 Scheduler*/
.k-ie7 .k-scheduler-toolbar .k-nav-prev .k-link,
.k-ie7 .k-scheduler-toolbar .k-nav-next .k-link {
  height: 2.3em;
  margin-top: -1px;
  vertical-align: middle;
}
.k-ie7 .k-scheduler-toolbar .k-nav-prev .k-link .k-icon,
.k-ie7 .k-scheduler-toolbar .k-nav-next .k-link .k-icon {
  margin-top: .5em;
}
.k-ie7 .k-scheduler-content .k-scheduler-table {
  width: auto;
}
/* IE7 Slider */
.k-ie7 .k-slider .k-icon {
  margin-top: 2px;
}
/* fixes ticks position and removes spacing between them in IE7 */
.k-ie7 .k-slider-vertical .k-tick {
  float: left;
  clear: left;
  width: 100%;
}
.k-ie7 .k-slider a.k-button {
  height: 22px;
  line-height: 22px;
  padding: 0;
}
/*IE7 TabStrip */
.k-ie7 .k-tabstrip-items .k-item .k-image,
.k-ie7 .k-tabstrip-items .k-item .k-sprite {
  margin-top: -1px;
  vertical-align: top;
}
/* IE7 Upload */
.k-ie7 .k-dropzone em,
.k-ie7 .k-upload-button {
  vertical-align: baseline;
}
.k-ie7 .k-upload-button {
  margin: .8em;
}
.k-ie7 .k-upload-files .k-button {
  line-height: 1;
}
/*IE7*/
.k-ie7 .k-upload-selected {
  min-width: 100px;
}
/* IE7 Window */
/* Compensate for content padding in IE7 */
.k-ie7 .k-window {
  padding-bottom: 1.16em;
}
.k-ie7 .k-window-titleless {
  padding-bottom: 0;
}
/* IE7 Map */
.k-ie7 .k-navigator > button {
  border-width: 0;
  display: block;
}
.k-ie7 .k-navigator > button > span {
  vertical-align: top;
  display: block;
}
.k-ie7 div.k-navigator .k-navigator-n,
.k-ie7 div.k-navigator .k-navigator-s {
  margin-left: -8px;
  /*+1*/
}
.k-ie7 div.k-navigator .k-navigator-w,
.k-ie7 div.k-navigator .k-navigator-e {
  margin-top: -8px;
  /*+1*/
}
.k-ie7 .k-zoom-control .k-button {
  margin: 0;
  /*-14*/
}
/*IE7 TreeMap */
.k-ie7 .k-treemap .k-treemap-tile {
  border-width: 0;
  padding: 0;
}
.k-ie7 .k-treemap .k-leaf > div {
  padding: 7px;
}
.k-ie7 .k-treemap .k-leaf.k-state-hover {
  border-width: 1px;
}
.k-ie7 .k-treemap .k-leaf.k-state-hover > div {
  padding: 6px;
}
/* common mobile css */
.km-root,
.km-pane,
.km-pane-wrapper {
  width: 100%;
  height: 100%;
  -ms-touch-action: none;
  -ms-content-zooming: none;
  -webkit-user-select: none;
     -moz-user-select: none;
      -ms-user-select: none;
          user-select: none;
  -webkit-text-size-adjust: none;
      -ms-text-size-adjust: none;
          text-size-adjust: none;
}
.km-pane-wrapper {
  position: absolute;
  width: 100%;
  height: 100%;
}
.km-pane,
.km-shim {
  font-family: sans-serif;
}
.km-pane {
  overflow-x: hidden;
}
.km-view {
  top: 0;
  left: 0;
  position: absolute;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  height: 100%;
  width: 100%;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -webkit-flex-direction: column;
      -ms-flex-direction: column;
          flex-direction: column;
  -webkit-box-align: stretch;
  -webkit-align-items: stretch;
      -ms-flex-align: stretch;
          align-items: stretch;
  -webkit-align-content: stretch;
      -ms-flex-line-pack: stretch;
          align-content: stretch;
  vertical-align: top;
}
.k-ff .km-view,
.k-ff .km-pane {
  overflow: hidden;
}
.k-ff18 .km-view,
.k-ff18 .km-pane,
.k-ff19 .km-view,
.k-ff19 .km-pane,
.k-ff20 .km-view,
.k-ff20 .km-pane,
.k-ff21 .km-view,
.k-ff21 .km-pane {
  position: relative;
}
.k-ff .km-view {
  display: -moz-inline-box;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
}
.km-content {
  min-height: 1px;
  -webkit-box-flex: 1;
  -webkit-flex: 1;
      -ms-flex: 1;
          flex: 1;
  flex-align: stretch;
  display: block;
  width: auto;
  overflow: hidden;
  position: relative;
}
.km-actionsheet > li {
  list-style-type: none;
  padding: inherit 1em;
  line-height: 2em;
}
.km-actionsheet {
  padding: 0;
  margin: 0;
}
.km-shim {
  left: 0;
  bottom: 0;
  position: fixed;
  width: 100%;
  height: 100%;
  background: rgba(0, 0, 0, 0.6);
  z-index: 10001;
}
.km-shim .k-animation-container,
.km-actionsheet-wrapper {
  width: 100%;
  -webkit-box-shadow: none;
          box-shadow: none;
  border: 0;
}
.km-shim .k-animation-container {
  width: auto;
}
/* /common mobile css */
.km-pane-wrapper .k-grid-edit-form > .km-header,
.km-pane-wrapper .k-grid-column-menu > .km-header,
.km-pane-wrapper .k-grid-filter-menu > .km-header,
.km-pane-wrapper .k-scheduler-edit-form > .km-header {
  border-style: solid;
  border-width: 1px;
  padding: .3em .6em;
  text-align: center;
  width: auto;
  line-height: 2em;
}
.k-ie .km-pane-wrapper .k-scheduler > .k-scheduler-toolbar,
.k-ie .km-pane-wrapper .k-scheduler > .k-scheduler-footer {
  line-height: 2em;
}
.km-pane-wrapper .k-grid-edit-form .k-multiselect,
.km-pane-wrapper .k-scheduler-edit-form .k-multiselect {
  width: 15em;
}
.km-pane-wrapper .k-grid-edit-form .k-dropdown-wrap,
.km-pane-wrapper .k-scheduler-edit-form .k-dropdown-wrap {
  display: block;
}
.km-pane-wrapper .k-grid-column-menu .k-done,
.km-pane-wrapper .k-grid-filter-menu .k-submit,
.km-pane-wrapper .k-grid-edit-form .k-grid-update,
.km-pane-wrapper .k-scheduler-edit-form .k-scheduler-update {
  float: right;
}
.km-pane-wrapper .k-grid-filter-menu .k-cancel,
.km-pane-wrapper .k-grid-edit-form .k-grid-cancel,
.km-pane-wrapper .k-scheduler-edit-form .k-scheduler-cancel {
  float: left;
}
/* Actiosheet Styles */
.km-pane-wrapper .k-scheduler-edit-form .k-scheduler-delete,
*:not(.km-pane) > .km-shim .km-actionsheet .k-button {
  display: block;
  text-align: center;
}
*:not(.km-pane) > .km-shim .km-actionsheet .k-button {
  font-size: 1.4em;
  margin: .3em 1em;
}
*:not(.km-pane) > .km-shim .km-actionsheet-title {
  text-align: center;
  line-height: 3em;
  margin-bottom: -0.3em;
}
*:not(.km-pane) > .km-shim > .k-animation-container {
  margin: 0 !important;
  padding: 0 !important;
  left: 0 !important;
}
/* Adaptive Grid */
.km-pane-wrapper > div.km-pane {
  -webkit-box-shadow: none;
          box-shadow: none;
  font-weight: normal;
}
.km-pane-wrapper .k-popup-edit-form .km-content > .km-scroll-container,
.km-pane-wrapper .k-grid-edit-form .km-content > .km-scroll-container,
.km-pane-wrapper .k-grid-column-menu .km-content > .km-scroll-container,
.km-pane-wrapper .k-grid-filter-menu .km-content > .km-scroll-container {
  position: absolute;
  width: 100%;
  min-height: 100%;
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
}
.km-pane-wrapper .k-mobile-list .k-edit-field {
  width: 74%;
}
.km-pane-wrapper .k-grid-edit-form .k-popup-edit-form,
.km-pane-wrapper .k-grid-edit-form .k-edit-form-container {
  width: auto;
}
.km-pane-wrapper .k-filter-menu .k-button {
  width: 100%;
  margin: 0;
}
.k-grid-mobile {
  border-width: 0;
}
.k-grid-mobile .k-resize-handle-inner {
  position: absolute;
  top: 50%;
  margin-top: -10px;
  left: -7px;
  width: 17px;
  height: 17px;
  border-style: solid;
  border-width: 2px;
  border-radius: 10px;
}
.k-grid-mobile .k-resize-handle-inner:before {
  content: "";
  position: absolute;
  top: 50%;
  margin-top: -3px;
  left: 1px;
  width: 6px;
  height: 6px;
  background-position: -5px -53px;
}
.k-grid-mobile .k-resize-handle-inner:after {
  content: "";
  position: absolute;
  top: 50%;
  margin-top: -3px;
  right: 1px;
  width: 6px;
  height: 6px;
  background-position: -5px -21px;
}
/* Adaptive Grid & Scheduler */
.km-pane-wrapper .km-pane * {
  -webkit-background-clip: border-box;
          background-clip: border-box;
}
.km-pane-wrapper .km-pane .k-mobile-list,
.km-pane-wrapper .k-mobile-list ul {
  padding: 0;
  margin: 0;
  list-style-type: none;
  border-radius: 0;
  background: none;
}
.km-pane-wrapper .km-switch {
  top: 50%;
  right: .8rem;
  position: absolute;
  margin-top: -1.1rem;
}
.km-pane-wrapper .k-mobile-list .k-state-disabled {
  opacity: 1;
}
.km-pane-wrapper .k-mobile-list .k-state-disabled > * {
  opacity: .7;
}
.km-pane-wrapper .k-mobile-list .k-item,
.km-pane-wrapper .k-mobile-list .k-item > .k-link,
.km-pane-wrapper .k-mobile-list .k-item > .k-label,
.km-pane-wrapper .k-mobile-list .k-edit-label {
  display: block;
  position: relative;
  list-style-type: none;
  vertical-align: middle;
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  padding: .5em 0 .5em 1em;
  font-size: 1em;
}
.km-pane-wrapper .k-edit-form-container,
.km-pane-wrapper .k-scheduler-edit-form .km-scroll-container {
  padding-top: 1em;
  width: 100%;
}
.km-pane-wrapper .k-mobile-list .k-edit-label {
  position: absolute;
  margin: 0;
  float: none;
  clear: none;
  width: 100%;
}
.km-pane-wrapper .k-mobile-list .k-edit-field,
.km-pane-wrapper .k-mobile-list .k-edit-label label {
  display: block;
  text-align: left;
  overflow: hidden;
  text-overflow: ellipsis;
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  padding: .1em 0;
  margin: 0;
}
.km-pane-wrapper .k-mobile-list .k-item,
.km-pane-wrapper .k-mobile-list .k-edit-field,
.km-pane-wrapper .k-mobile-list .k-edit-label {
  font-size: 1em;
  line-height: 1.6em;
  overflow: hidden;
}
.km-pane-wrapper .k-mobile-list .k-edit-field,
.km-pane-wrapper .k-mobile-list .k-edit-label {
  width: 100%;
  float: none;
  clear: none;
  min-height: 2.7em;
}
.km-pane-wrapper .km-header .k-icon,
.km-pane-wrapper .k-grid-toolbar .k-icon,
.km-pane-wrapper .k-grid-edit .k-icon,
.km-pane-wrapper .k-grid-delete .k-icon {
  display: none;
}
.km-pane-wrapper .k-mobile-list .k-edit-field {
  padding: .5em 0;
}
.km-pane-wrapper .k-mobile-list .k-scheduler-toolbar {
  padding: .3em 0;
}
.km-pane-wrapper .k-mobile-list .k-scheduler-toolbar ul li {
  line-height: 2em;
}
.km-pane-wrapper .k-mobile-list .k-item > * {
  line-height: normal;
}
.km-pane-wrapper .k-mobile-list .k-edit-buttons,
.km-pane-wrapper .k-mobile-list .k-button-container {
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  padding: .5em 1em;
  margin: 0;
}
.km-pane-wrapper .k-mobile-list > ul > li > .k-link,
.km-pane-wrapper .k-mobile-list .k-filter-help-text > li > .k-link,
.km-pane-wrapper .k-mobile-list .k-recur-view > .k-edit-label:nth-child(3),
.km-pane-wrapper #recurrence .km-scroll-container > .k-edit-label:first-child {
  display: block;
  padding: .2em 1em;
  font-size: .95em;
  position: -webkit-sticky;
  margin: 0;
  font-weight: normal;
  line-height: 2em;
  background: transparent;
  border-top: 1em solid transparent;
}
.km-pane-wrapper .k-mobile-list .k-recur-view > .k-edit-label:nth-child(3),
.km-pane-wrapper #recurrence .km-scroll-container > .k-edit-label:first-child {
  position: relative;
}
.km-pane-wrapper .k-mobile-list .k-item:first-child {
  border-top: 0;
}
.km-pane-wrapper .k-mobile-list .k-item:last-child {
  border-bottom: 0;
}
.km-pane-wrapper .k-mobile-list .k-item > .k-link,
.km-pane-wrapper .k-mobile-list .k-item > .k-label {
  line-height: inherit;
  text-decoration: none;
  margin: -0.5em 0 -0.5em -1em;
}
/* Mobile list form elements */
.k-check[type=checkbox],
.k-check[type=radio],
.k-mobile-list .k-edit-field [type=checkbox],
.k-mobile-list .k-edit-field [type=radio] {
  -webkit-appearance: none;
     -moz-appearance: none;
          appearance: none;
  background-color: transparent;
}
.km-pane-wrapper .k-mobile-list .k-link .k-check,
.km-pane-wrapper .k-mobile-list .k-label .k-check,
.k-mobile-list .k-edit-field [type=checkbox],
.k-mobile-list .k-edit-field [type=radio] {
  border: 0;
  font-size: inherit;
  width: 13px;
  height: 13px;
  margin: .26em 1em .26em 0;
}
.k-ie .km-pane-wrapper .k-icon,
.k-ie .km-pane-wrapper .k-mobile-list .k-link .k-check,
.k-ie .km-pane-wrapper .k-mobile-list .k-label .k-check,
.k-ie .k-mobile-list .k-edit-field [type=checkbox],
.k-ie .k-mobile-list .k-edit-field [type=radio] {
  font-size: inherit;
  text-indent: -9999px;
  width: 1.01em;
  height: 1em;
}
/* IE Adaptive icons in em */
@media screen and (-ms-high-contrast: active) and (-ms-high-contrast: none) {
  .km-pane-wrapper .k-numerictextbox .k-select .k-link span.k-i-arrow-n {
    background-position: 0em 0em;
  }
  .k-link:not(.k-state-disabled):hover > .km-pane-wrapper .k-numerictextbox .k-select .k-link span.k-i-arrow-n,
  .k-state-hover > .km-pane-wrapper .k-numerictextbox .k-select .k-link span.k-i-arrow-n,
  .k-state-hover > * > .km-pane-wrapper .k-numerictextbox .k-select .k-link span.k-i-arrow-n,
  .k-button:not(.k-state-disabled):hover .km-pane-wrapper .k-numerictextbox .k-select .k-link span.k-i-arrow-n,
  .k-textbox:hover .km-pane-wrapper .k-numerictextbox .k-select .k-link span.k-i-arrow-n,
  .k-button:active .km-pane-wrapper .k-numerictextbox .k-select .k-link span.k-i-arrow-n {
    background-position: 0em 0em;
  }
  .km-pane-wrapper .k-numerictextbox .k-select .k-link span.k-i-arrow-s {
    background-position: 0em -2em;
  }
  .k-link:not(.k-state-disabled):hover > .km-pane-wrapper .k-numerictextbox .k-select .k-link span.k-i-arrow-s,
  .k-state-hover > .km-pane-wrapper .k-numerictextbox .k-select .k-link span.k-i-arrow-s,
  .k-state-hover > * > .km-pane-wrapper .k-numerictextbox .k-select .k-link span.k-i-arrow-s,
  .k-button:not(.k-state-disabled):hover .km-pane-wrapper .k-numerictextbox .k-select .k-link span.k-i-arrow-s,
  .k-textbox:hover .km-pane-wrapper .k-numerictextbox .k-select .k-link span.k-i-arrow-s,
  .k-button:active .km-pane-wrapper .k-numerictextbox .k-select .k-link span.k-i-arrow-s {
    background-position: 0em -2em;
  }
  .km-pane-wrapper .k-state-selected .k-i-arrow-n {
    background-position: -1em 0em;
  }
  .k-link:not(.k-state-disabled):hover > .km-pane-wrapper .k-state-selected .k-i-arrow-n,
  .k-state-hover > .km-pane-wrapper .k-state-selected .k-i-arrow-n,
  .k-state-hover > * > .km-pane-wrapper .k-state-selected .k-i-arrow-n,
  .k-button:not(.k-state-disabled):hover .km-pane-wrapper .k-state-selected .k-i-arrow-n,
  .k-textbox:hover .km-pane-wrapper .k-state-selected .k-i-arrow-n,
  .k-button:active .km-pane-wrapper .k-state-selected .k-i-arrow-n {
    background-position: -1em 0em;
  }
  .km-pane-wrapper .k-numerictextbox .k-link.k-state-selected span.k-i-arrow-n,
  .km-pane-wrapper .k-numerictextbox .k-state-hover .k-link span.k-i-arrow-n {
    background-position: -1em 0em;
  }
  .k-link:not(.k-state-disabled):hover > .km-pane-wrapper .k-numerictextbox .k-link.k-state-selected span.k-i-arrow-n,
  .k-link:not(.k-state-disabled):hover > .km-pane-wrapper .k-numerictextbox .k-state-hover .k-link span.k-i-arrow-n,
  .k-state-hover > .km-pane-wrapper .k-numerictextbox .k-link.k-state-selected span.k-i-arrow-n,
  .k-state-hover > .km-pane-wrapper .k-numerictextbox .k-state-hover .k-link span.k-i-arrow-n,
  .k-state-hover > * > .km-pane-wrapper .k-numerictextbox .k-link.k-state-selected span.k-i-arrow-n,
  .k-state-hover > * > .km-pane-wrapper .k-numerictextbox .k-state-hover .k-link span.k-i-arrow-n,
  .k-button:not(.k-state-disabled):hover .km-pane-wrapper .k-numerictextbox .k-link.k-state-selected span.k-i-arrow-n,
  .k-button:not(.k-state-disabled):hover .km-pane-wrapper .k-numerictextbox .k-state-hover .k-link span.k-i-arrow-n,
  .k-textbox:hover .km-pane-wrapper .k-numerictextbox .k-link.k-state-selected span.k-i-arrow-n,
  .k-textbox:hover .km-pane-wrapper .k-numerictextbox .k-state-hover .k-link span.k-i-arrow-n,
  .k-button:active .km-pane-wrapper .k-numerictextbox .k-link.k-state-selected span.k-i-arrow-n,
  .k-button:active .km-pane-wrapper .k-numerictextbox .k-state-hover .k-link span.k-i-arrow-n {
    background-position: -1em 0em;
  }
  .km-pane-wrapper .k-state-selected .k-i-arrow-s {
    background-position: -1em -2em;
  }
  .k-link:not(.k-state-disabled):hover > .km-pane-wrapper .k-state-selected .k-i-arrow-s,
  .k-state-hover > .km-pane-wrapper .k-state-selected .k-i-arrow-s,
  .k-state-hover > * > .km-pane-wrapper .k-state-selected .k-i-arrow-s,
  .k-button:not(.k-state-disabled):hover .km-pane-wrapper .k-state-selected .k-i-arrow-s,
  .k-textbox:hover .km-pane-wrapper .k-state-selected .k-i-arrow-s,
  .k-button:active .km-pane-wrapper .k-state-selected .k-i-arrow-s {
    background-position: -1em -2em;
  }
  .km-pane-wrapper .k-numerictextbox .k-link.k-state-selected span.k-i-arrow-s,
  .km-pane-wrapper .k-numerictextbox .k-state-hover .k-link span.k-i-arrow-s {
    background-position: -1em -2em;
  }
  .k-link:not(.k-state-disabled):hover > .km-pane-wrapper .k-numerictextbox .k-link.k-state-selected span.k-i-arrow-s,
  .k-link:not(.k-state-disabled):hover > .km-pane-wrapper .k-numerictextbox .k-state-hover .k-link span.k-i-arrow-s,
  .k-state-hover > .km-pane-wrapper .k-numerictextbox .k-link.k-state-selected span.k-i-arrow-s,
  .k-state-hover > .km-pane-wrapper .k-numerictextbox .k-state-hover .k-link span.k-i-arrow-s,
  .k-state-hover > * > .km-pane-wrapper .k-numerictextbox .k-link.k-state-selected span.k-i-arrow-s,
  .k-state-hover > * > .km-pane-wrapper .k-numerictextbox .k-state-hover .k-link span.k-i-arrow-s,
  .k-button:not(.k-state-disabled):hover .km-pane-wrapper .k-numerictextbox .k-link.k-state-selected span.k-i-arrow-s,
  .k-button:not(.k-state-disabled):hover .km-pane-wrapper .k-numerictextbox .k-state-hover .k-link span.k-i-arrow-s,
  .k-textbox:hover .km-pane-wrapper .k-numerictextbox .k-link.k-state-selected span.k-i-arrow-s,
  .k-textbox:hover .km-pane-wrapper .k-numerictextbox .k-state-hover .k-link span.k-i-arrow-s,
  .k-button:active .km-pane-wrapper .k-numerictextbox .k-link.k-state-selected span.k-i-arrow-s,
  .k-button:active .km-pane-wrapper .k-numerictextbox .k-state-hover .k-link span.k-i-arrow-s {
    background-position: -1em -2em;
  }
  .km-pane-wrapper .k-i-arrow-n {
    background-position: 0em 0em;
  }
  .k-link:not(.k-state-disabled):hover > .km-pane-wrapper .k-i-arrow-n,
  .k-state-hover > .km-pane-wrapper .k-i-arrow-n,
  .k-state-hover > * > .km-pane-wrapper .k-i-arrow-n,
  .k-button:not(.k-state-disabled):hover .km-pane-wrapper .k-i-arrow-n,
  .k-textbox:hover .km-pane-wrapper .k-i-arrow-n,
  .k-button:active .km-pane-wrapper .k-i-arrow-n {
    background-position: 0em 0em;
  }
  .km-pane-wrapper .k-i-arrow-e {
    background-position: 0em -1em;
  }
  .k-link:not(.k-state-disabled):hover > .km-pane-wrapper .k-i-arrow-e,
  .k-state-hover > .km-pane-wrapper .k-i-arrow-e,
  .k-state-hover > * > .km-pane-wrapper .k-i-arrow-e,
  .k-button:not(.k-state-disabled):hover .km-pane-wrapper .k-i-arrow-e,
  .k-textbox:hover .km-pane-wrapper .k-i-arrow-e,
  .k-button:active .km-pane-wrapper .k-i-arrow-e {
    background-position: 0em -1em;
  }
  .k-rtl .km-pane-wrapper .k-i-arrow-w {
    background-position: 0em -1em;
  }
  .k-rtl .k-link:not(.k-state-disabled):hover > .km-pane-wrapper .k-i-arrow-w,
  .k-rtl .k-state-hover > .km-pane-wrapper .k-i-arrow-w,
  .k-rtl .k-state-hover > * > .km-pane-wrapper .k-i-arrow-w,
  .k-rtl .k-button:not(.k-state-disabled):hover .km-pane-wrapper .k-i-arrow-w,
  .k-rtl .k-textbox:hover .km-pane-wrapper .k-i-arrow-w,
  .k-rtl .k-button:active .km-pane-wrapper .k-i-arrow-w {
    background-position: -1em -1em;
    background-position: 0px -16px;
  }
  .km-pane-wrapper .k-i-arrow-s {
    background-position: 0em -2em;
  }
  .k-link:not(.k-state-disabled):hover > .km-pane-wrapper .k-i-arrow-s,
  .k-state-hover > .km-pane-wrapper .k-i-arrow-s,
  .k-state-hover > * > .km-pane-wrapper .k-i-arrow-s,
  .k-button:not(.k-state-disabled):hover .km-pane-wrapper .k-i-arrow-s,
  .k-textbox:hover .km-pane-wrapper .k-i-arrow-s,
  .k-button:active .km-pane-wrapper .k-i-arrow-s {
    background-position: 0em -2em;
  }
  .km-pane-wrapper .k-i-arrow-w {
    background-position: 0em -3em;
  }
  .k-link:not(.k-state-disabled):hover > .km-pane-wrapper .k-i-arrow-w,
  .k-state-hover > .km-pane-wrapper .k-i-arrow-w,
  .k-state-hover > * > .km-pane-wrapper .k-i-arrow-w,
  .k-button:not(.k-state-disabled):hover .km-pane-wrapper .k-i-arrow-w,
  .k-textbox:hover .km-pane-wrapper .k-i-arrow-w,
  .k-button:active .km-pane-wrapper .k-i-arrow-w {
    background-position: 0em -3em;
  }
  .k-rtl .km-pane-wrapper .k-i-arrow-e {
    background-position: 0em -3em;
  }
  .k-rtl .k-link:not(.k-state-disabled):hover > .km-pane-wrapper .k-i-arrow-e,
  .k-rtl .k-state-hover > .km-pane-wrapper .k-i-arrow-e,
  .k-rtl .k-state-hover > * > .km-pane-wrapper .k-i-arrow-e,
  .k-rtl .k-button:not(.k-state-disabled):hover .km-pane-wrapper .k-i-arrow-e,
  .k-rtl .k-textbox:hover .km-pane-wrapper .k-i-arrow-e,
  .k-rtl .k-button:active .km-pane-wrapper .k-i-arrow-e {
    background-position: -1em -3em;
    background-position: 0px -48px;
  }
  .km-pane-wrapper .k-i-seek-n {
    background-position: 0em -4em;
  }
  .k-link:not(.k-state-disabled):hover > .km-pane-wrapper .k-i-seek-n,
  .k-state-hover > .km-pane-wrapper .k-i-seek-n,
  .k-state-hover > * > .km-pane-wrapper .k-i-seek-n,
  .k-button:not(.k-state-disabled):hover .km-pane-wrapper .k-i-seek-n,
  .k-textbox:hover .km-pane-wrapper .k-i-seek-n,
  .k-button:active .km-pane-wrapper .k-i-seek-n {
    background-position: 0em -4em;
  }
  .km-pane-wrapper .k-i-seek-e {
    background-position: 0em -5em;
  }
  .k-link:not(.k-state-disabled):hover > .km-pane-wrapper .k-i-seek-e,
  .k-state-hover > .km-pane-wrapper .k-i-seek-e,
  .k-state-hover > * > .km-pane-wrapper .k-i-seek-e,
  .k-button:not(.k-state-disabled):hover .km-pane-wrapper .k-i-seek-e,
  .k-textbox:hover .km-pane-wrapper .k-i-seek-e,
  .k-button:active .km-pane-wrapper .k-i-seek-e {
    background-position: 0em -5em;
  }
  .k-rtl .km-pane-wrapper .k-i-seek-w {
    background-position: 0em -5em;
  }
  .k-rtl .k-link:not(.k-state-disabled):hover > .km-pane-wrapper .k-i-seek-w,
  .k-rtl .k-state-hover > .km-pane-wrapper .k-i-seek-w,
  .k-rtl .k-state-hover > * > .km-pane-wrapper .k-i-seek-w,
  .k-rtl .k-button:not(.k-state-disabled):hover .km-pane-wrapper .k-i-seek-w,
  .k-rtl .k-textbox:hover .km-pane-wrapper .k-i-seek-w,
  .k-rtl .k-button:active .km-pane-wrapper .k-i-seek-w {
    background-position: -1em -5em;
    background-position: 0px -80px;
  }
  .km-pane-wrapper .k-i-seek-s {
    background-position: 0em -6em;
  }
  .k-link:not(.k-state-disabled):hover > .km-pane-wrapper .k-i-seek-s,
  .k-state-hover > .km-pane-wrapper .k-i-seek-s,
  .k-state-hover > * > .km-pane-wrapper .k-i-seek-s,
  .k-button:not(.k-state-disabled):hover .km-pane-wrapper .k-i-seek-s,
  .k-textbox:hover .km-pane-wrapper .k-i-seek-s,
  .k-button:active .km-pane-wrapper .k-i-seek-s {
    background-position: 0em -6em;
  }
  .km-pane-wrapper .k-i-seek-w {
    background-position: 0em -7em;
  }
  .k-link:not(.k-state-disabled):hover > .km-pane-wrapper .k-i-seek-w,
  .k-state-hover > .km-pane-wrapper .k-i-seek-w,
  .k-state-hover > * > .km-pane-wrapper .k-i-seek-w,
  .k-button:not(.k-state-disabled):hover .km-pane-wrapper .k-i-seek-w,
  .k-textbox:hover .km-pane-wrapper .k-i-seek-w,
  .k-button:active .km-pane-wrapper .k-i-seek-w {
    background-position: 0em -7em;
  }
  .k-rtl .km-pane-wrapper .k-i-seek-e {
    background-position: 0em -7em;
  }
  .k-rtl .k-link:not(.k-state-disabled):hover > .km-pane-wrapper .k-i-seek-e,
  .k-rtl .k-state-hover > .km-pane-wrapper .k-i-seek-e,
  .k-rtl .k-state-hover > * > .km-pane-wrapper .k-i-seek-e,
  .k-rtl .k-button:not(.k-state-disabled):hover .km-pane-wrapper .k-i-seek-e,
  .k-rtl .k-textbox:hover .km-pane-wrapper .k-i-seek-e,
  .k-rtl .k-button:active .km-pane-wrapper .k-i-seek-e {
    background-position: -1em -7em;
    background-position: 0px -112px;
  }
  .km-pane-wrapper .k-i-arrowhead-n {
    background-position: 0em -16em;
  }
  .k-link:not(.k-state-disabled):hover > .km-pane-wrapper .k-i-arrowhead-n,
  .k-state-hover > .km-pane-wrapper .k-i-arrowhead-n,
  .k-state-hover > * > .km-pane-wrapper .k-i-arrowhead-n,
  .k-button:not(.k-state-disabled):hover .km-pane-wrapper .k-i-arrowhead-n,
  .k-textbox:hover .km-pane-wrapper .k-i-arrowhead-n,
  .k-button:active .km-pane-wrapper .k-i-arrowhead-n {
    background-position: 0em -16em;
  }
  .km-pane-wrapper .k-i-arrowhead-e {
    background-position: 0em -17em;
  }
  .k-link:not(.k-state-disabled):hover > .km-pane-wrapper .k-i-arrowhead-e,
  .k-state-hover > .km-pane-wrapper .k-i-arrowhead-e,
  .k-state-hover > * > .km-pane-wrapper .k-i-arrowhead-e,
  .k-button:not(.k-state-disabled):hover .km-pane-wrapper .k-i-arrowhead-e,
  .k-textbox:hover .km-pane-wrapper .k-i-arrowhead-e,
  .k-button:active .km-pane-wrapper .k-i-arrowhead-e {
    background-position: 0em -17em;
  }
  .km-pane-wrapper .k-i-arrowhead-s {
    background-position: 0em -18em;
  }
  .k-link:not(.k-state-disabled):hover > .km-pane-wrapper .k-i-arrowhead-s,
  .k-state-hover > .km-pane-wrapper .k-i-arrowhead-s,
  .k-state-hover > * > .km-pane-wrapper .k-i-arrowhead-s,
  .k-button:not(.k-state-disabled):hover .km-pane-wrapper .k-i-arrowhead-s,
  .k-textbox:hover .km-pane-wrapper .k-i-arrowhead-s,
  .k-button:active .km-pane-wrapper .k-i-arrowhead-s {
    background-position: 0em -18em;
  }
  .km-pane-wrapper .k-i-arrowhead-w {
    background-position: 0em -19em;
  }
  .k-link:not(.k-state-disabled):hover > .km-pane-wrapper .k-i-arrowhead-w,
  .k-state-hover > .km-pane-wrapper .k-i-arrowhead-w,
  .k-state-hover > * > .km-pane-wrapper .k-i-arrowhead-w,
  .k-button:not(.k-state-disabled):hover .km-pane-wrapper .k-i-arrowhead-w,
  .k-textbox:hover .km-pane-wrapper .k-i-arrowhead-w,
  .k-button:active .km-pane-wrapper .k-i-arrowhead-w {
    background-position: 0em -19em;
  }
  .km-pane-wrapper .k-i-expand,
  .km-pane-wrapper .k-plus,
  .km-pane-wrapper .k-plus-disabled {
    background-position: 0em -12em;
  }
  .k-link:not(.k-state-disabled):hover > .km-pane-wrapper .k-i-expand,
  .k-link:not(.k-state-disabled):hover > .km-pane-wrapper .k-plus,
  .k-link:not(.k-state-disabled):hover > .km-pane-wrapper .k-plus-disabled,
  .k-state-hover > .km-pane-wrapper .k-i-expand,
  .k-state-hover > .km-pane-wrapper .k-plus,
  .k-state-hover > .km-pane-wrapper .k-plus-disabled,
  .k-state-hover > * > .km-pane-wrapper .k-i-expand,
  .k-state-hover > * > .km-pane-wrapper .k-plus,
  .k-state-hover > * > .km-pane-wrapper .k-plus-disabled,
  .k-button:not(.k-state-disabled):hover .km-pane-wrapper .k-i-expand,
  .k-button:not(.k-state-disabled):hover .km-pane-wrapper .k-plus,
  .k-button:not(.k-state-disabled):hover .km-pane-wrapper .k-plus-disabled,
  .k-textbox:hover .km-pane-wrapper .k-i-expand,
  .k-textbox:hover .km-pane-wrapper .k-plus,
  .k-textbox:hover .km-pane-wrapper .k-plus-disabled,
  .k-button:active .km-pane-wrapper .k-i-expand,
  .k-button:active .km-pane-wrapper .k-plus,
  .k-button:active .km-pane-wrapper .k-plus-disabled {
    background-position: 0em -12em;
  }
  .km-pane-wrapper .k-i-expand-w,
  .k-rtl .km-pane-wrapper .k-i-expand,
  .k-rtl .km-pane-wrapper .k-plus,
  .k-rtl .km-pane-wrapper .k-plus-disabled {
    background-position: 0em -13em;
  }
  .k-link:not(.k-state-disabled):hover > .km-pane-wrapper .k-i-expand-w,
  .k-link:not(.k-state-disabled):hover > .k-rtl .km-pane-wrapper .k-i-expand,
  .k-link:not(.k-state-disabled):hover > .k-rtl .km-pane-wrapper .k-plus,
  .k-link:not(.k-state-disabled):hover > .k-rtl .km-pane-wrapper .k-plus-disabled,
  .k-state-hover > .km-pane-wrapper .k-i-expand-w,
  .k-state-hover > .k-rtl .km-pane-wrapper .k-i-expand,
  .k-state-hover > .k-rtl .km-pane-wrapper .k-plus,
  .k-state-hover > .k-rtl .km-pane-wrapper .k-plus-disabled,
  .k-state-hover > * > .km-pane-wrapper .k-i-expand-w,
  .k-state-hover > * > .k-rtl .km-pane-wrapper .k-i-expand,
  .k-state-hover > * > .k-rtl .km-pane-wrapper .k-plus,
  .k-state-hover > * > .k-rtl .km-pane-wrapper .k-plus-disabled,
  .k-button:not(.k-state-disabled):hover .km-pane-wrapper .k-i-expand-w,
  .k-button:not(.k-state-disabled):hover .k-rtl .km-pane-wrapper .k-i-expand,
  .k-button:not(.k-state-disabled):hover .k-rtl .km-pane-wrapper .k-plus,
  .k-button:not(.k-state-disabled):hover .k-rtl .km-pane-wrapper .k-plus-disabled,
  .k-textbox:hover .km-pane-wrapper .k-i-expand-w,
  .k-textbox:hover .k-rtl .km-pane-wrapper .k-i-expand,
  .k-textbox:hover .k-rtl .km-pane-wrapper .k-plus,
  .k-textbox:hover .k-rtl .km-pane-wrapper .k-plus-disabled,
  .k-button:active .km-pane-wrapper .k-i-expand-w,
  .k-button:active .k-rtl .km-pane-wrapper .k-i-expand,
  .k-button:active .k-rtl .km-pane-wrapper .k-plus,
  .k-button:active .k-rtl .km-pane-wrapper .k-plus-disabled {
    background-position: 0em -13em;
  }
  .km-pane-wrapper .k-i-collapse,
  .km-pane-wrapper .k-minus,
  .km-pane-wrapper .k-minus-disabled {
    background-position: 0em -14em;
  }
  .k-link:not(.k-state-disabled):hover > .km-pane-wrapper .k-i-collapse,
  .k-link:not(.k-state-disabled):hover > .km-pane-wrapper .k-minus,
  .k-link:not(.k-state-disabled):hover > .km-pane-wrapper .k-minus-disabled,
  .k-state-hover > .km-pane-wrapper .k-i-collapse,
  .k-state-hover > .km-pane-wrapper .k-minus,
  .k-state-hover > .km-pane-wrapper .k-minus-disabled,
  .k-state-hover > * > .km-pane-wrapper .k-i-collapse,
  .k-state-hover > * > .km-pane-wrapper .k-minus,
  .k-state-hover > * > .km-pane-wrapper .k-minus-disabled,
  .k-button:not(.k-state-disabled):hover .km-pane-wrapper .k-i-collapse,
  .k-button:not(.k-state-disabled):hover .km-pane-wrapper .k-minus,
  .k-button:not(.k-state-disabled):hover .km-pane-wrapper .k-minus-disabled,
  .k-textbox:hover .km-pane-wrapper .k-i-collapse,
  .k-textbox:hover .km-pane-wrapper .k-minus,
  .k-textbox:hover .km-pane-wrapper .k-minus-disabled,
  .k-button:active .km-pane-wrapper .k-i-collapse,
  .k-button:active .km-pane-wrapper .k-minus,
  .k-button:active .km-pane-wrapper .k-minus-disabled {
    background-position: 0em -14em;
  }
  .km-pane-wrapper .k-i-collapse-w,
  .k-rtl .km-pane-wrapper .k-i-collapse,
  .k-rtl .km-pane-wrapper .k-minus,
  .k-rtl .km-pane-wrapper .k-minus-disabled {
    background-position: 0em -15em;
  }
  .k-link:not(.k-state-disabled):hover > .km-pane-wrapper .k-i-collapse-w,
  .k-link:not(.k-state-disabled):hover > .k-rtl .km-pane-wrapper .k-i-collapse,
  .k-link:not(.k-state-disabled):hover > .k-rtl .km-pane-wrapper .k-minus,
  .k-link:not(.k-state-disabled):hover > .k-rtl .km-pane-wrapper .k-minus-disabled,
  .k-state-hover > .km-pane-wrapper .k-i-collapse-w,
  .k-state-hover > .k-rtl .km-pane-wrapper .k-i-collapse,
  .k-state-hover > .k-rtl .km-pane-wrapper .k-minus,
  .k-state-hover > .k-rtl .km-pane-wrapper .k-minus-disabled,
  .k-state-hover > * > .km-pane-wrapper .k-i-collapse-w,
  .k-state-hover > * > .k-rtl .km-pane-wrapper .k-i-collapse,
  .k-state-hover > * > .k-rtl .km-pane-wrapper .k-minus,
  .k-state-hover > * > .k-rtl .km-pane-wrapper .k-minus-disabled,
  .k-button:not(.k-state-disabled):hover .km-pane-wrapper .k-i-collapse-w,
  .k-button:not(.k-state-disabled):hover .k-rtl .km-pane-wrapper .k-i-collapse,
  .k-button:not(.k-state-disabled):hover .k-rtl .km-pane-wrapper .k-minus,
  .k-button:not(.k-state-disabled):hover .k-rtl .km-pane-wrapper .k-minus-disabled,
  .k-textbox:hover .km-pane-wrapper .k-i-collapse-w,
  .k-textbox:hover .k-rtl .km-pane-wrapper .k-i-collapse,
  .k-textbox:hover .k-rtl .km-pane-wrapper .k-minus,
  .k-textbox:hover .k-rtl .km-pane-wrapper .k-minus-disabled,
  .k-button:active .km-pane-wrapper .k-i-collapse-w,
  .k-button:active .k-rtl .km-pane-wrapper .k-i-collapse,
  .k-button:active .k-rtl .km-pane-wrapper .k-minus,
  .k-button:active .k-rtl .km-pane-wrapper .k-minus-disabled {
    background-position: 0em -15em;
  }
  .km-pane-wrapper .k-i-pencil,
  .km-pane-wrapper .k-edit {
    background-position: -2em 0em;
  }
  .k-link:not(.k-state-disabled):hover > .km-pane-wrapper .k-i-pencil,
  .k-link:not(.k-state-disabled):hover > .km-pane-wrapper .k-edit,
  .k-state-hover > .km-pane-wrapper .k-i-pencil,
  .k-state-hover > .km-pane-wrapper .k-edit,
  .k-state-hover > * > .km-pane-wrapper .k-i-pencil,
  .k-state-hover > * > .km-pane-wrapper .k-edit,
  .k-button:not(.k-state-disabled):hover .km-pane-wrapper .k-i-pencil,
  .k-button:not(.k-state-disabled):hover .km-pane-wrapper .k-edit,
  .k-textbox:hover .km-pane-wrapper .k-i-pencil,
  .k-textbox:hover .km-pane-wrapper .k-edit,
  .k-button:active .km-pane-wrapper .k-i-pencil,
  .k-button:active .km-pane-wrapper .k-edit {
    background-position: -2em 0em;
  }
  .km-pane-wrapper .k-i-close,
  .km-pane-wrapper .k-delete,
  .km-pane-wrapper .k-group-delete {
    background-position: -2em -1em;
  }
  .k-link:not(.k-state-disabled):hover > .km-pane-wrapper .k-i-close,
  .k-link:not(.k-state-disabled):hover > .km-pane-wrapper .k-delete,
  .k-link:not(.k-state-disabled):hover > .km-pane-wrapper .k-group-delete,
  .k-state-hover > .km-pane-wrapper .k-i-close,
  .k-state-hover > .km-pane-wrapper .k-delete,
  .k-state-hover > .km-pane-wrapper .k-group-delete,
  .k-state-hover > * > .km-pane-wrapper .k-i-close,
  .k-state-hover > * > .km-pane-wrapper .k-delete,
  .k-state-hover > * > .km-pane-wrapper .k-group-delete,
  .k-button:not(.k-state-disabled):hover .km-pane-wrapper .k-i-close,
  .k-button:not(.k-state-disabled):hover .km-pane-wrapper .k-delete,
  .k-button:not(.k-state-disabled):hover .km-pane-wrapper .k-group-delete,
  .k-textbox:hover .km-pane-wrapper .k-i-close,
  .k-textbox:hover .km-pane-wrapper .k-delete,
  .k-textbox:hover .km-pane-wrapper .k-group-delete,
  .k-button:active .km-pane-wrapper .k-i-close,
  .k-button:active .km-pane-wrapper .k-delete,
  .k-button:active .km-pane-wrapper .k-group-delete {
    background-position: -2em -1em;
  }
  .km-pane-wrapper .k-si-close {
    background-position: -10em -5em;
  }
  .k-link:not(.k-state-disabled):hover > .km-pane-wrapper .k-si-close,
  .k-state-hover > .km-pane-wrapper .k-si-close,
  .k-state-hover > * > .km-pane-wrapper .k-si-close,
  .k-button:not(.k-state-disabled):hover .km-pane-wrapper .k-si-close,
  .k-textbox:hover .km-pane-wrapper .k-si-close,
  .k-button:active .km-pane-wrapper .k-si-close {
    background-position: -10em -5em;
  }
  .km-pane-wrapper .k-multiselect .k-delete {
    background-position: -10em -5em;
  }
  .km-pane-wrapper .k-multiselect .k-state-hover .k-delete {
    background-position: -11em -5em;
  }
  .km-pane-wrapper .k-i-tick,
  .km-pane-wrapper .k-insert,
  .km-pane-wrapper .k-update {
    background-position: -2em -2em;
  }
  .k-link:not(.k-state-disabled):hover > .km-pane-wrapper .k-i-tick,
  .k-link:not(.k-state-disabled):hover > .km-pane-wrapper .k-insert,
  .k-link:not(.k-state-disabled):hover > .km-pane-wrapper .k-update,
  .k-state-hover > .km-pane-wrapper .k-i-tick,
  .k-state-hover > .km-pane-wrapper .k-insert,
  .k-state-hover > .km-pane-wrapper .k-update,
  .k-state-hover > * > .km-pane-wrapper .k-i-tick,
  .k-state-hover > * > .km-pane-wrapper .k-insert,
  .k-state-hover > * > .km-pane-wrapper .k-update,
  .k-button:not(.k-state-disabled):hover .km-pane-wrapper .k-i-tick,
  .k-button:not(.k-state-disabled):hover .km-pane-wrapper .k-insert,
  .k-button:not(.k-state-disabled):hover .km-pane-wrapper .k-update,
  .k-textbox:hover .km-pane-wrapper .k-i-tick,
  .k-textbox:hover .km-pane-wrapper .k-insert,
  .k-textbox:hover .km-pane-wrapper .k-update,
  .k-button:active .km-pane-wrapper .k-i-tick,
  .k-button:active .km-pane-wrapper .k-insert,
  .k-button:active .km-pane-wrapper .k-update {
    background-position: -2em -2em;
  }
  .km-pane-wrapper .k-check:checked,
  .km-pane-wrapper .k-mobile-list .k-edit-field [type=checkbox],
  .km-pane-wrapper .k-mobile-list .k-edit-field [type=radio] {
    background-position: -2em -2em;
  }
  .k-link:not(.k-state-disabled):hover > .km-pane-wrapper .k-check:checked,
  .k-link:not(.k-state-disabled):hover > .km-pane-wrapper .k-mobile-list .k-edit-field [type=checkbox],
  .k-link:not(.k-state-disabled):hover > .km-pane-wrapper .k-mobile-list .k-edit-field [type=radio],
  .k-state-hover > .km-pane-wrapper .k-check:checked,
  .k-state-hover > .km-pane-wrapper .k-mobile-list .k-edit-field [type=checkbox],
  .k-state-hover > .km-pane-wrapper .k-mobile-list .k-edit-field [type=radio],
  .k-state-hover > * > .km-pane-wrapper .k-check:checked,
  .k-state-hover > * > .km-pane-wrapper .k-mobile-list .k-edit-field [type=checkbox],
  .k-state-hover > * > .km-pane-wrapper .k-mobile-list .k-edit-field [type=radio],
  .k-button:not(.k-state-disabled):hover .km-pane-wrapper .k-check:checked,
  .k-button:not(.k-state-disabled):hover .km-pane-wrapper .k-mobile-list .k-edit-field [type=checkbox],
  .k-button:not(.k-state-disabled):hover .km-pane-wrapper .k-mobile-list .k-edit-field [type=radio],
  .k-textbox:hover .km-pane-wrapper .k-check:checked,
  .k-textbox:hover .km-pane-wrapper .k-mobile-list .k-edit-field [type=checkbox],
  .k-textbox:hover .km-pane-wrapper .k-mobile-list .k-edit-field [type=radio],
  .k-button:active .km-pane-wrapper .k-check:checked,
  .k-button:active .km-pane-wrapper .k-mobile-list .k-edit-field [type=checkbox],
  .k-button:active .km-pane-wrapper .k-mobile-list .k-edit-field [type=radio] {
    background-position: -2em -2em;
  }
  .km-pane-wrapper .k-i-cancel,
  .km-pane-wrapper .k-cancel,
  .km-pane-wrapper .k-denied {
    background-position: -2em -3em;
  }
  .k-link:not(.k-state-disabled):hover > .km-pane-wrapper .k-i-cancel,
  .k-link:not(.k-state-disabled):hover > .km-pane-wrapper .k-cancel,
  .k-link:not(.k-state-disabled):hover > .km-pane-wrapper .k-denied,
  .k-state-hover > .km-pane-wrapper .k-i-cancel,
  .k-state-hover > .km-pane-wrapper .k-cancel,
  .k-state-hover > .km-pane-wrapper .k-denied,
  .k-state-hover > * > .km-pane-wrapper .k-i-cancel,
  .k-state-hover > * > .km-pane-wrapper .k-cancel,
  .k-state-hover > * > .km-pane-wrapper .k-denied,
  .k-button:not(.k-state-disabled):hover .km-pane-wrapper .k-i-cancel,
  .k-button:not(.k-state-disabled):hover .km-pane-wrapper .k-cancel,
  .k-button:not(.k-state-disabled):hover .km-pane-wrapper .k-denied,
  .k-textbox:hover .km-pane-wrapper .k-i-cancel,
  .k-textbox:hover .km-pane-wrapper .k-cancel,
  .k-textbox:hover .km-pane-wrapper .k-denied,
  .k-button:active .km-pane-wrapper .k-i-cancel,
  .k-button:active .km-pane-wrapper .k-cancel,
  .k-button:active .km-pane-wrapper .k-denied {
    background-position: -2em -3em;
  }
  .km-pane-wrapper .k-i-plus,
  .km-pane-wrapper .k-add {
    background-position: -2em -4em;
  }
  .k-link:not(.k-state-disabled):hover > .km-pane-wrapper .k-i-plus,
  .k-link:not(.k-state-disabled):hover > .km-pane-wrapper .k-add,
  .k-state-hover > .km-pane-wrapper .k-i-plus,
  .k-state-hover > .km-pane-wrapper .k-add,
  .k-state-hover > * > .km-pane-wrapper .k-i-plus,
  .k-state-hover > * > .km-pane-wrapper .k-add,
  .k-button:not(.k-state-disabled):hover .km-pane-wrapper .k-i-plus,
  .k-button:not(.k-state-disabled):hover .km-pane-wrapper .k-add,
  .k-textbox:hover .km-pane-wrapper .k-i-plus,
  .k-textbox:hover .km-pane-wrapper .k-add,
  .k-button:active .km-pane-wrapper .k-i-plus,
  .k-button:active .km-pane-wrapper .k-add {
    background-position: -2em -4em;
  }
  .km-pane-wrapper .k-i-funnel,
  .km-pane-wrapper .k-filter {
    background-position: -2em -5em;
  }
  .k-link:not(.k-state-disabled):hover > .km-pane-wrapper .k-i-funnel,
  .k-link:not(.k-state-disabled):hover > .km-pane-wrapper .k-filter,
  .k-state-hover > .km-pane-wrapper .k-i-funnel,
  .k-state-hover > .km-pane-wrapper .k-filter,
  .k-state-hover > * > .km-pane-wrapper .k-i-funnel,
  .k-state-hover > * > .km-pane-wrapper .k-filter,
  .k-button:not(.k-state-disabled):hover .km-pane-wrapper .k-i-funnel,
  .k-button:not(.k-state-disabled):hover .km-pane-wrapper .k-filter,
  .k-textbox:hover .km-pane-wrapper .k-i-funnel,
  .k-textbox:hover .km-pane-wrapper .k-filter,
  .k-button:active .km-pane-wrapper .k-i-funnel,
  .k-button:active .km-pane-wrapper .k-filter {
    background-position: -2em -5em;
  }
  .km-pane-wrapper .k-i-funnel-clear,
  .km-pane-wrapper .k-clear-filter {
    background-position: -2em -6em;
  }
  .k-link:not(.k-state-disabled):hover > .km-pane-wrapper .k-i-funnel-clear,
  .k-link:not(.k-state-disabled):hover > .km-pane-wrapper .k-clear-filter,
  .k-state-hover > .km-pane-wrapper .k-i-funnel-clear,
  .k-state-hover > .km-pane-wrapper .k-clear-filter,
  .k-state-hover > * > .km-pane-wrapper .k-i-funnel-clear,
  .k-state-hover > * > .km-pane-wrapper .k-clear-filter,
  .k-button:not(.k-state-disabled):hover .km-pane-wrapper .k-i-funnel-clear,
  .k-button:not(.k-state-disabled):hover .km-pane-wrapper .k-clear-filter,
  .k-textbox:hover .km-pane-wrapper .k-i-funnel-clear,
  .k-textbox:hover .km-pane-wrapper .k-clear-filter,
  .k-button:active .km-pane-wrapper .k-i-funnel-clear,
  .k-button:active .km-pane-wrapper .k-clear-filter {
    background-position: -2em -6em;
  }
  .km-pane-wrapper .k-i-refresh {
    background-position: -2em -7em;
  }
  .k-link:not(.k-state-disabled):hover > .km-pane-wrapper .k-i-refresh,
  .k-state-hover > .km-pane-wrapper .k-i-refresh,
  .k-state-hover > * > .km-pane-wrapper .k-i-refresh,
  .k-button:not(.k-state-disabled):hover .km-pane-wrapper .k-i-refresh,
  .k-textbox:hover .km-pane-wrapper .k-i-refresh,
  .k-button:active .km-pane-wrapper .k-i-refresh {
    background-position: -2em -7em;
  }
  .km-pane-wrapper .k-i-exception {
    background-position: -10em -19em;
  }
  .k-link:not(.k-state-disabled):hover > .km-pane-wrapper .k-i-exception,
  .k-state-hover > .km-pane-wrapper .k-i-exception,
  .k-state-hover > * > .km-pane-wrapper .k-i-exception,
  .k-button:not(.k-state-disabled):hover .km-pane-wrapper .k-i-exception,
  .k-textbox:hover .km-pane-wrapper .k-i-exception,
  .k-button:active .km-pane-wrapper .k-i-exception {
    background-position: -10em -19em;
  }
  .km-pane-wrapper .k-i-restore {
    background-position: -2em -8em;
  }
  .k-link:not(.k-state-disabled):hover > .km-pane-wrapper .k-i-restore,
  .k-state-hover > .km-pane-wrapper .k-i-restore,
  .k-state-hover > * > .km-pane-wrapper .k-i-restore,
  .k-button:not(.k-state-disabled):hover .km-pane-wrapper .k-i-restore,
  .k-textbox:hover .km-pane-wrapper .k-i-restore,
  .k-button:active .km-pane-wrapper .k-i-restore {
    background-position: -2em -8em;
  }
  .km-pane-wrapper .k-i-maximize {
    background-position: -2em -9em;
  }
  .k-link:not(.k-state-disabled):hover > .km-pane-wrapper .k-i-maximize,
  .k-state-hover > .km-pane-wrapper .k-i-maximize,
  .k-state-hover > * > .km-pane-wrapper .k-i-maximize,
  .k-button:not(.k-state-disabled):hover .km-pane-wrapper .k-i-maximize,
  .k-textbox:hover .km-pane-wrapper .k-i-maximize,
  .k-button:active .km-pane-wrapper .k-i-maximize {
    background-position: -2em -9em;
  }
  .km-pane-wrapper .k-i-minimize {
    background-position: -4em -18em;
  }
  .k-link:not(.k-state-disabled):hover > .km-pane-wrapper .k-i-minimize,
  .k-state-hover > .km-pane-wrapper .k-i-minimize,
  .k-state-hover > * > .km-pane-wrapper .k-i-minimize,
  .k-button:not(.k-state-disabled):hover .km-pane-wrapper .k-i-minimize,
  .k-textbox:hover .km-pane-wrapper .k-i-minimize,
  .k-button:active .km-pane-wrapper .k-i-minimize {
    background-position: -4em -18em;
  }
  .km-pane-wrapper .k-i-pin {
    background-position: -10em -16em;
  }
  .k-link:not(.k-state-disabled):hover > .km-pane-wrapper .k-i-pin,
  .k-state-hover > .km-pane-wrapper .k-i-pin,
  .k-state-hover > * > .km-pane-wrapper .k-i-pin,
  .k-button:not(.k-state-disabled):hover .km-pane-wrapper .k-i-pin,
  .k-textbox:hover .km-pane-wrapper .k-i-pin,
  .k-button:active .km-pane-wrapper .k-i-pin {
    background-position: -10em -16em;
  }
  .km-pane-wrapper .k-i-unpin {
    background-position: -10em -17em;
  }
  .k-link:not(.k-state-disabled):hover > .km-pane-wrapper .k-i-unpin,
  .k-state-hover > .km-pane-wrapper .k-i-unpin,
  .k-state-hover > * > .km-pane-wrapper .k-i-unpin,
  .k-button:not(.k-state-disabled):hover .km-pane-wrapper .k-i-unpin,
  .k-textbox:hover .km-pane-wrapper .k-i-unpin,
  .k-button:active .km-pane-wrapper .k-i-unpin {
    background-position: -10em -17em;
  }
  .km-pane-wrapper .k-resize-se {
    background-position: -2em -10em;
  }
  .k-link:not(.k-state-disabled):hover > .km-pane-wrapper .k-resize-se,
  .k-state-hover > .km-pane-wrapper .k-resize-se,
  .k-state-hover > * > .km-pane-wrapper .k-resize-se,
  .k-button:not(.k-state-disabled):hover .km-pane-wrapper .k-resize-se,
  .k-textbox:hover .km-pane-wrapper .k-resize-se,
  .k-button:active .km-pane-wrapper .k-resize-se {
    background-position: -2em -10em;
  }
  .km-pane-wrapper .k-i-calendar {
    background-position: -2em -11em;
  }
  .k-link:not(.k-state-disabled):hover > .km-pane-wrapper .k-i-calendar,
  .k-state-hover > .km-pane-wrapper .k-i-calendar,
  .k-state-hover > * > .km-pane-wrapper .k-i-calendar,
  .k-button:not(.k-state-disabled):hover .km-pane-wrapper .k-i-calendar,
  .k-textbox:hover .km-pane-wrapper .k-i-calendar,
  .k-button:active .km-pane-wrapper .k-i-calendar {
    background-position: -2em -11em;
  }
  .km-pane-wrapper .k-i-clock {
    background-position: -2em -12em;
  }
  .k-link:not(.k-state-disabled):hover > .km-pane-wrapper .k-i-clock,
  .k-state-hover > .km-pane-wrapper .k-i-clock,
  .k-state-hover > * > .km-pane-wrapper .k-i-clock,
  .k-button:not(.k-state-disabled):hover .km-pane-wrapper .k-i-clock,
  .k-textbox:hover .km-pane-wrapper .k-i-clock,
  .k-button:active .km-pane-wrapper .k-i-clock {
    background-position: -2em -12em;
  }
  .km-pane-wrapper .k-si-plus {
    background-position: -2em -13em;
  }
  .k-link:not(.k-state-disabled):hover > .km-pane-wrapper .k-si-plus,
  .k-state-hover > .km-pane-wrapper .k-si-plus,
  .k-state-hover > * > .km-pane-wrapper .k-si-plus,
  .k-button:not(.k-state-disabled):hover .km-pane-wrapper .k-si-plus,
  .k-textbox:hover .km-pane-wrapper .k-si-plus,
  .k-button:active .km-pane-wrapper .k-si-plus {
    background-position: -2em -13em;
  }
  .km-pane-wrapper .k-si-minus {
    background-position: -2em -14em;
  }
  .k-link:not(.k-state-disabled):hover > .km-pane-wrapper .k-si-minus,
  .k-state-hover > .km-pane-wrapper .k-si-minus,
  .k-state-hover > * > .km-pane-wrapper .k-si-minus,
  .k-button:not(.k-state-disabled):hover .km-pane-wrapper .k-si-minus,
  .k-textbox:hover .km-pane-wrapper .k-si-minus,
  .k-button:active .km-pane-wrapper .k-si-minus {
    background-position: -2em -14em;
  }
}
.km-pane-wrapper .km-pane .k-mobile-list input:not([type="checkbox"]):not([type="radio"]),
.km-pane-wrapper .km-pane .k-mobile-list select:not([multiple]),
.km-pane-wrapper .km-pane .k-mobile-list textarea,
.km-pane-wrapper .k-mobile-list .k-widget,
.km-pane-wrapper .k-edit-field > *:not([type="checkbox"]):not([type="radio"]):not(.k-button) {
  text-indent: 0;
  font-size: 1em;
  line-height: 1.6em;
  vertical-align: middle;
  height: auto;
  padding: 0;
  border: 0;
  margin: 0;
  background: transparent;
  -webkit-box-shadow: none;
          box-shadow: none;
  border-radius: 0;
}
.km-pane-wrapper .k-mobile-list .k-widget {
  border: 0;
  border-radius: 0;
}
.k-ie .km-pane-wrapper .k-mobile-list .k-widget {
  height: initial;
}
.km-pane-wrapper .k-mobile-list .k-widget .k-input,
.km-pane-wrapper .k-mobile-list .k-widget .k-state-default {
  border: 0;
  background: transparent;
}
.km-pane-wrapper *:not(.k-state-default):not(.k-pager-input) > input:not([type="checkbox"]):not([type="radio"]),
.km-pane-wrapper .k-mobile-list select:not([multiple]),
.km-pane-wrapper .k-mobile-list textarea,
.km-pane-wrapper .k-mobile-list .k-widget,
.km-pane-wrapper .k-edit-field > *:not([type="checkbox"]):not([type="radio"]):not(.k-button) {
  width: 80%;
  padding: .6em 0;
  margin: -0.5em 0;
}
.km-pane-wrapper .km-pane .k-mobile-list input,
.km-pane-wrapper .km-pane .k-mobile-list select:not([multiple]),
.km-pane-wrapper .km-pane .k-mobile-list textarea,
.km-pane-wrapper .k-mobile-list .k-widget,
.km-pane-wrapper .k-mobile-list .k-edit-field > * {
  -webkit-appearance: none;
     -moz-appearance: none;
          appearance: none;
  float: right;
  z-index: 1;
  position: relative;
}
.km-pane-wrapper .k-scheduler-views {
  width: 18em;
}
.km-pane-wrapper .k-mobile-list .k-edit-field.k-scheduler-toolbar {
  background: transparent;
  border: 0;
  -webkit-box-shadow: none;
          box-shadow: none;
  padding: .5em 1em;
}
.km-pane-wrapper #recurrence .k-scheduler-navigation {
  width: 100%;
}
.km-pane-wrapper .k-scheduler-views,
.km-pane-wrapper .k-mobile-list .k-scheduler-navigation {
  display: table;
  table-layout: fixed;
}
.km-pane-wrapper .k-scheduler-views li,
.km-pane-wrapper .k-mobile-list .k-scheduler-navigation li {
  display: table-cell;
  text-align: center;
}
.km-pane-wrapper .k-mobile-list .k-recur-view > .k-edit-field .k-check {
  margin: 0;
  padding-left: 1em;
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
}
.km-pane-wrapper .k-mobile-list .k-recur-view > .k-edit-field .k-check:first-child {
  margin-top: -0.5em;
}
.km-pane-wrapper .k-mobile-list .k-recur-view > .k-edit-field .k-check:last-child {
  margin-bottom: -0.5em;
}
.km-pane-wrapper .k-mobile-list .k-scheduler-timezones .k-edit-field label.k-check {
  text-indent: 1em;
}
.km-pane-wrapper .k-mobile-list .k-edit-field > .k-button {
  margin-left: 20%;
  float: left;
}
.km-pane-wrapper .k-mobile-list .k-picker-wrap,
.km-pane-wrapper .k-mobile-list .k-numeric-wrap,
.km-pane-wrapper .k-mobile-list .k-dropdown-wrap {
  position: static;
  -webkit-box-shadow: none;
          box-shadow: none;
}
.km-pane-wrapper .k-mobile-list .k-datepicker .k-select,
.km-pane-wrapper .k-mobile-list .k-datetimepicker .k-select,
.km-pane-wrapper .k-mobile-list .k-numerictextbox .k-select {
  position: absolute;
  top: 0;
  right: 0;
  line-height: normal;
}
.km-pane-wrapper .k-mobile-list .k-datepicker .k-select:before,
.km-pane-wrapper .k-mobile-list .k-datetimepicker .k-select:before {
  content: "\a0";
  display: inline-block;
  width: 0;
  height: 100%;
  vertical-align: middle;
}
.km-pane-wrapper .k-mobile-list .k-numerictextbox .k-link {
  height: 50%;
}
.km-pane-wrapper .k-grid .k-button,
.km-pane-wrapper .k-edit-form-container .k-button {
  margin: 0;
}
.km-pane-wrapper .k-grid .k-button + .k-button,
.km-pane-wrapper .k-edit-form-container .k-button + .k-button {
  margin: 0 0 0 .18em;
}
.km-pane-wrapper .k-pager-numbers .k-link,
.km-pane-wrapper .k-pager-numbers .k-state-selected,
.km-pane-wrapper .k-pager-wrap > .k-link {
  width: 2.4em;
  height: 2.4em;
  line-height: 2.1em;
  border-radius: 2em;
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
}
.km-pane-wrapper .k-pager-numbers .k-link,
.km-pane-wrapper .k-pager-numbers .k-state-selected {
  width: auto;
  line-height: 2.2em;
  padding: 0 .86em;
  min-width: .7em;
}
.km-pane-wrapper .k-pager-wrap {
  line-height: 2.4em;
}
@media all and (max-width: 699px), (-ms-high-contrast: active) and (-ms-high-contrast: none) and (max-width: 800px) {
  .km-pane-wrapper *:not(.k-state-default):not(.k-pager-input) > input:not([type="checkbox"]):not([type="radio"]),
  .km-pane-wrapper .k-mobile-list select:not([multiple]),
  .km-pane-wrapper .k-mobile-list textarea,
  .km-pane-wrapper .k-mobile-list .k-widget,
  .km-pane-wrapper .k-edit-field > *:not([type="checkbox"]):not([type="radio"]):not(.k-button) {
    width: 50%;
  }
  .km-pane-wrapper .k-mobile-list .k-edit-field > .k-button {
    margin-left: 50%;
  }
  .km-pane-wrapper .k-mobile-list .k-edit-field > .k-timezone-button {
    margin-left: 1em;
  }
  .km-pane-wrapper .k-nav-today a {
    padding-left: .6em;
    padding-right: .6em;
  }
  .km-pane-wrapper li.k-nav-current {
    margin-left: 0;
    margin-right: 0;
  }
  .km-pane-wrapper .k-pager-wrap {
    position: relative;
  }
  .km-pane-wrapper .k-pager-numbers {
    width: auto;
    display: block;
    overflow: hidden;
    margin-right: 5.5em;
    float: none;
    text-overflow: ellipsis;
    height: 2.4em;
    text-align: center;
  }
  .km-pane-wrapper .k-pager-numbers li {
    float: none;
    display: inline-block;
  }
  .km-pane-wrapper .k-pager-nav {
    float: left;
  }
  .km-pane-wrapper .k-pager-nav + .k-pager-nav ~ .k-pager-nav {
    position: absolute;
    right: .3em;
    top: .3em;
  }
  .km-pane-wrapper .k-pager-wrap .k-pager-numbers + .k-pager-nav,
  .km-pane-wrapper .k-pager-nav:first-child + .k-pager-nav + .k-pager-nav {
    right: 3em;
  }
  .km-pane-wrapper .k-pager-info {
    display: none;
  }
}
.km-pane-wrapper .k-mobile-list .k-recur-view > .k-edit-field .k-check,
.km-pane-wrapper .k-mobile-list .k-edit-field > * > select:not([multiple]),
.km-pane-wrapper .k-mobile-list .k-scheduler-timezones .k-edit-field label.k-check {
  width: 100%;
}
/* Mobile Scroller */
.km-scroll-container {
  -webkit-user-select: none;
     -moz-user-select: none;
      -ms-user-select: none;
          user-select: none;
  -webkit-margin-collapse: separate;
  -webkit-transform: translatez(0);
}
.k-widget .km-scroll-wrapper {
  position: relative;
  padding-bottom: 0;
}
.km-touch-scrollbar {
  position: absolute;
  visibility: hidden;
  z-index: 200000;
  height: .3em;
  width: .3em;
  background-color: rgba(0, 0, 0, 0.7);
  opacity: 0;
  -webkit-transition: opacity 0.3s linear;
          transition: opacity 0.3s linear;
  -webkit-transition: "opacity 0.3s linear";
          transition: "opacity 0.3s linear";
}
.km-vertical-scrollbar {
  height: 100%;
  right: 2px;
  top: 2px;
}
.km-horizontal-scrollbar {
  width: 100%;
  left: 2px;
  bottom: 2px;
}
/* Responsive styles  */
@media only screen and (max-width: 1024px) {
  .k-scheduler-toolbar > ul.k-scheduler-views {
    position: absolute;
    right: 6px;
    top: 6px;
    z-index: 10000;
  }
  .k-rtl .k-scheduler-toolbar > ul.k-scheduler-views {
    right: auto;
    left: 6px;
  }
  .k-scheduler-toolbar > ul.k-scheduler-views > li:not(.k-current-view) {
    display: none;
  }
  .k-scheduler-toolbar li.k-nav-current .k-lg-date-format {
    display: none;
  }
  .k-scheduler-toolbar li.k-nav-current .k-sm-date-format {
    display: inline;
  }
  .k-scheduler-toolbar > ul.k-scheduler-views > li.k-current-view {
    display: block;
    border-width: 1px;
  }
  .k-rtl .k-scheduler-toolbar > ul.k-scheduler-views > li.k-current-view {
    text-align: left;
    padding-left: 1em;
  }
  .k-scheduler-toolbar > ul.k-scheduler-views > li.k-current-view > .k-link {
    display: block;
    position: relative;
    padding-right: 2.5em;
    padding-left: 1em;
    -webkit-box-sizing: border-box;
            box-sizing: border-box;
  }
  .k-rtl .k-scheduler-toolbar > ul.k-scheduler-views > li.k-current-view > .k-link {
    padding-left: 0;
  }
  .k-scheduler-toolbar > ul.k-scheduler-views > li.k-current-view > .k-link:after {
    display: block;
    content: "";
    position: absolute;
    top: 50%;
    margin-top: -0.6em;
    right: 0.333em;
    width: 1.333em;
    height: 1.333em;
  }
  .k-scheduler-toolbar > ul.k-scheduler-views.k-state-expanded > li,
  .k-scheduler-toolbar > ul.k-scheduler-views.k-state-expanded > li:first-child + li {
    display: block;
    border: 0;
    border-radius: 0;
  }
  .k-scheduler-toolbar > ul.k-scheduler-views.k-state-expanded {
    border: 1px solid #c5c5c5;
    background-color: #fff;
    background-image: none;
    -webkit-box-shadow: 0 2px 2px 0 rgba(0, 0, 0, 0.3);
            box-shadow: 0 2px 2px 0 rgba(0, 0, 0, 0.3);
  }
  .k-rtl .k-scheduler-toolbar > ul.k-scheduler-views.k-state-expanded {
    text-align: left;
  }
}
/* animation classes */
.k-fx-end .k-fx-next,
.k-fx-end .k-fx-current {
  -webkit-transition: all 350ms ease-out;
          transition: all 350ms ease-out;
}
.k-fx {
  position: relative;
}
.k-fx .k-fx-current {
  z-index: 0;
}
.k-fx .k-fx-next {
  z-index: 1;
}
.k-fx-hidden,
.k-fx-hidden * {
  visibility: hidden !important;
}
.k-fx-reverse .k-fx-current {
  z-index: 1;
}
.k-fx-reverse .k-fx-next {
  z-index: 0;
}
/* Zoom */
.k-fx-zoom.k-fx-start .k-fx-next {
  -webkit-transform: scale(0) !important;
      -ms-transform: scale(0) !important;
          transform: scale(0) !important;
}
.k-fx-zoom.k-fx-end .k-fx-next {
  -webkit-transform: scale(1) !important;
      -ms-transform: scale(1) !important;
          transform: scale(1) !important;
}
.k-fx-zoom.k-fx-reverse.k-fx-start .k-fx-next,
.k-fx-zoom.k-fx-reverse.k-fx-end .k-fx-next {
  -webkit-transform: scale(1) !important;
      -ms-transform: scale(1) !important;
          transform: scale(1) !important;
}
.k-fx-zoom.k-fx-reverse.k-fx-start .k-fx-current {
  -webkit-transform: scale(1) !important;
      -ms-transform: scale(1) !important;
          transform: scale(1) !important;
}
.k-fx-zoom.k-fx-reverse.k-fx-end .k-fx-current {
  -webkit-transform: scale(0) !important;
      -ms-transform: scale(0) !important;
          transform: scale(0) !important;
}
/* Fade */
.k-fx-fade.k-fx-start .k-fx-next {
  will-change: opacity;
  opacity: 0;
}
.k-fx-fade.k-fx-end .k-fx-next {
  opacity: 1;
}
.k-fx-fade.k-fx-reverse.k-fx-start .k-fx-current {
  will-change: opacity;
  opacity: 1;
}
.k-fx-fade.k-fx-reverse.k-fx-end .k-fx-current {
  opacity: 0;
}
/* Slide */
.k-fx-slide {
  /* left */
  /* left reverse */
  /* right */
}
.k-fx-slide.k-fx-end .k-fx-next .km-content,
.k-fx-slide.k-fx-end .k-fx-next .km-header,
.k-fx-slide.k-fx-end .k-fx-next .km-footer,
.k-fx-slide.k-fx-end .k-fx-current .km-content,
.k-fx-slide.k-fx-end .k-fx-current .km-header,
.k-fx-slide.k-fx-end .k-fx-current .km-footer {
  -webkit-transition: all 350ms ease-out;
          transition: all 350ms ease-out;
}
.k-fx-slide.k-fx-start .k-fx-next .km-content {
  will-change: transform;
  -webkit-transform: translatex(100%);
      -ms-transform: translatex(100%);
          transform: translatex(100%);
}
.k-fx-slide.k-fx-start .k-fx-next .km-header,
.k-fx-slide.k-fx-start .k-fx-next .km-footer {
  will-change: opacity;
  opacity: 0;
}
.k-fx-slide.k-fx-end .k-fx-current .km-content {
  -webkit-transform: translatex(-100%);
      -ms-transform: translatex(-100%);
          transform: translatex(-100%);
}
.k-fx-slide.k-fx-end .k-fx-next .km-header,
.k-fx-slide.k-fx-end .k-fx-next .km-footer {
  opacity: 1;
}
.k-fx-slide.k-fx-reverse.k-fx-start .k-fx-current .km-content {
  will-change: transform;
  -webkit-transform: translatex(0);
      -ms-transform: translatex(0);
          transform: translatex(0);
}
.k-fx-slide.k-fx-reverse.k-fx-end .k-fx-current .km-content {
  -webkit-transform: translatex(100%);
      -ms-transform: translatex(100%);
          transform: translatex(100%);
}
.k-fx-slide.k-fx-reverse.k-fx-start .k-fx-next .km-content {
  -webkit-transform: translatex(-100%);
      -ms-transform: translatex(-100%);
          transform: translatex(-100%);
}
.k-fx-slide.k-fx-reverse.k-fx-end .k-fx-next .km-content {
  -webkit-transform: translatex(0);
      -ms-transform: translatex(0);
          transform: translatex(0);
}
.k-fx-slide.k-fx-reverse.k-fx-start .k-fx-current .km-header,
.k-fx-slide.k-fx-reverse.k-fx-start .k-fx-current .km-footer {
  will-change: opacity;
  opacity: 1;
}
.k-fx-slide.k-fx-reverse.k-fx-start .k-fx-next .km-header,
.k-fx-slide.k-fx-reverse.k-fx-start .k-fx-next .km-footer {
  opacity: 1;
}
.k-fx-slide.k-fx-reverse.k-fx-end .k-fx-current .km-header,
.k-fx-slide.k-fx-reverse.k-fx-end .k-fx-current .km-footer {
  opacity: 0;
}
.k-fx-slide.k-fx-reverse.k-fx-end .k-fx-next .km-header,
.k-fx-slide.k-fx-reverse.k-fx-end .k-fx-next .km-footer {
  opacity: 1;
}
.k-fx-slide.k-fx-right {
  /* right reverse */
}
.k-fx-slide.k-fx-right.k-fx-start .k-fx-next .km-content {
  -webkit-transform: translatex(-100%);
      -ms-transform: translatex(-100%);
          transform: translatex(-100%);
}
.k-fx-slide.k-fx-right.k-fx-end .k-fx-current .km-content {
  -webkit-transform: translatex(100%);
      -ms-transform: translatex(100%);
          transform: translatex(100%);
}
.k-fx-slide.k-fx-right.k-fx-reverse.k-fx-start .k-fx-current .km-content {
  -webkit-transform: translatex(0);
      -ms-transform: translatex(0);
          transform: translatex(0);
}
.k-fx-slide.k-fx-right.k-fx-reverse.k-fx-end .k-fx-current .km-content {
  -webkit-transform: translatex(-100%);
      -ms-transform: translatex(-100%);
          transform: translatex(-100%);
}
.k-fx-slide.k-fx-right.k-fx-reverse.k-fx-start .k-fx-next .km-content {
  -webkit-transform: translatex(100%);
      -ms-transform: translatex(100%);
          transform: translatex(100%);
}
.k-fx-slide.k-fx-right.k-fx-reverse.k-fx-end .k-fx-next .km-content {
  -webkit-transform: translatex(0%);
      -ms-transform: translatex(0%);
          transform: translatex(0%);
}
/* Tile */
.k-fx-tile {
  /* left */
  /* left reverse */
  /* right */
}
.k-fx-tile.k-fx-start .k-fx-next {
  will-change: transform;
  -webkit-transform: translatex(100%);
      -ms-transform: translatex(100%);
          transform: translatex(100%);
}
.k-fx-tile.k-fx-end .k-fx-current {
  -webkit-transform: translatex(-100%);
      -ms-transform: translatex(-100%);
          transform: translatex(-100%);
}
.k-fx-tile.k-fx-reverse.k-fx-start .k-fx-current {
  will-change: transform;
  -webkit-transform: translatex(0);
      -ms-transform: translatex(0);
          transform: translatex(0);
}
.k-fx-tile.k-fx-reverse.k-fx-end .k-fx-current {
  -webkit-transform: translatex(100%);
      -ms-transform: translatex(100%);
          transform: translatex(100%);
}
.k-fx-tile.k-fx-reverse.k-fx-start .k-fx-next {
  -webkit-transform: translatex(-100%);
      -ms-transform: translatex(-100%);
          transform: translatex(-100%);
}
.k-fx-tile.k-fx-reverse.k-fx-end .k-fx-next {
  -webkit-transform: translatex(0);
      -ms-transform: translatex(0);
          transform: translatex(0);
}
.k-fx-tile.k-fx-right {
  /* right reverse */
}
.k-fx-tile.k-fx-right.k-fx-start .k-fx-next {
  -webkit-transform: translatex(-100%);
      -ms-transform: translatex(-100%);
          transform: translatex(-100%);
}
.k-fx-tile.k-fx-right.k-fx-end .k-fx-current {
  -webkit-transform: translatex(100%);
      -ms-transform: translatex(100%);
          transform: translatex(100%);
}
.k-fx-tile.k-fx-right.k-fx-reverse.k-fx-start .k-fx-current {
  -webkit-transform: translatex(0);
      -ms-transform: translatex(0);
          transform: translatex(0);
}
.k-fx-tile.k-fx-right.k-fx-reverse.k-fx-end .k-fx-current {
  -webkit-transform: translatex(-100%);
      -ms-transform: translatex(-100%);
          transform: translatex(-100%);
}
.k-fx-tile.k-fx-right.k-fx-reverse.k-fx-start .k-fx-next {
  -webkit-transform: translatex(100%);
      -ms-transform: translatex(100%);
          transform: translatex(100%);
}
.k-fx-tile.k-fx-right.k-fx-reverse.k-fx-end .k-fx-next {
  -webkit-transform: translatex(0%);
      -ms-transform: translatex(0%);
          transform: translatex(0%);
}
/* Tile */
.k-fx-tile {
  /* left */
  /* left reverse */
  /* right */
}
.k-fx-tile.k-fx-start .k-fx-next {
  will-change: transform;
  -webkit-transform: translatex(100%);
      -ms-transform: translatex(100%);
          transform: translatex(100%);
}
.k-fx-tile.k-fx-end .k-fx-current {
  -webkit-transform: translatex(-100%);
      -ms-transform: translatex(-100%);
          transform: translatex(-100%);
}
.k-fx-tile.k-fx-reverse.k-fx-start .k-fx-current {
  will-change: transform;
  -webkit-transform: translatex(0);
      -ms-transform: translatex(0);
          transform: translatex(0);
}
.k-fx-tile.k-fx-reverse.k-fx-end .k-fx-current {
  -webkit-transform: translatex(100%);
      -ms-transform: translatex(100%);
          transform: translatex(100%);
}
.k-fx-tile.k-fx-reverse.k-fx-start .k-fx-next {
  -webkit-transform: translatex(-100%);
      -ms-transform: translatex(-100%);
          transform: translatex(-100%);
}
.k-fx-tile.k-fx-reverse.k-fx-end .k-fx-next {
  -webkit-transform: translatex(0);
      -ms-transform: translatex(0);
          transform: translatex(0);
}
.k-fx-tile.k-fx-right {
  /* right reverse */
}
.k-fx-tile.k-fx-right.k-fx-start .k-fx-next {
  -webkit-transform: translatex(-100%);
      -ms-transform: translatex(-100%);
          transform: translatex(-100%);
}
.k-fx-tile.k-fx-right.k-fx-end .k-fx-current {
  -webkit-transform: translatex(100%);
      -ms-transform: translatex(100%);
          transform: translatex(100%);
}
.k-fx-tile.k-fx-right.k-fx-reverse.k-fx-start .k-fx-current {
  -webkit-transform: translatex(0);
      -ms-transform: translatex(0);
          transform: translatex(0);
}
.k-fx-tile.k-fx-right.k-fx-reverse.k-fx-end .k-fx-current {
  -webkit-transform: translatex(-100%);
      -ms-transform: translatex(-100%);
          transform: translatex(-100%);
}
.k-fx-tile.k-fx-right.k-fx-reverse.k-fx-start .k-fx-next {
  -webkit-transform: translatex(100%);
      -ms-transform: translatex(100%);
          transform: translatex(100%);
}
.k-fx-tile.k-fx-right.k-fx-reverse.k-fx-end .k-fx-next {
  -webkit-transform: translatex(0%);
      -ms-transform: translatex(0%);
          transform: translatex(0%);
}
/* Overlay */
.k-fx.k-fx-overlay.k-fx-start .k-fx-next,
.k-fx.k-fx-overlay.k-fx-left.k-fx-start .k-fx-next {
  will-change: transform;
  -webkit-transform: translatex(100%);
      -ms-transform: translatex(100%);
          transform: translatex(100%);
}
.k-fx.k-fx-overlay.k-fx-right.k-fx-start .k-fx-next {
  -webkit-transform: translatex(-100%);
      -ms-transform: translatex(-100%);
          transform: translatex(-100%);
}
.k-fx.k-fx-overlay.k-fx-up.k-fx-start .k-fx-next {
  -webkit-transform: translatey(100%);
      -ms-transform: translatey(100%);
          transform: translatey(100%);
}
.k-fx.k-fx-overlay.k-fx-down.k-fx-start .k-fx-next {
  -webkit-transform: translatey(-100%);
      -ms-transform: translatey(-100%);
          transform: translatey(-100%);
}
.k-fx.k-fx-overlay.k-fx-reverse.k-fx-start .k-fx-next {
  -webkit-transform: none;
      -ms-transform: none;
          transform: none;
}
.k-fx.k-fx-overlay.k-fx-reverse.k-fx-start .k-fx-current {
  will-change: transform;
  -webkit-transform: none;
      -ms-transform: none;
          transform: none;
}
.k-fx.k-fx-overlay.k-fx-reverse.k-fx-end .k-fx-current,
.k-fx.k-fx-overlay.k-fx-reverse.k-fx-left.k-fx-end .k-fx-current {
  -webkit-transform: translatex(100%);
      -ms-transform: translatex(100%);
          transform: translatex(100%);
}
.k-fx.k-fx-overlay.k-fx-reverse.k-fx-right.k-fx-end .k-fx-current {
  -webkit-transform: translatex(-100%);
      -ms-transform: translatex(-100%);
          transform: translatex(-100%);
}
.k-fx.k-fx-overlay.k-fx-reverse.k-fx-up.k-fx-end .k-fx-current {
  -webkit-transform: translatey(100%);
      -ms-transform: translatey(100%);
          transform: translatey(100%);
}
.k-fx.k-fx-overlay.k-fx-reverse.k-fx-down.k-fx-end .k-fx-current {
  -webkit-transform: translatey(-100%);
      -ms-transform: translatey(-100%);
          transform: translatey(-100%);
}
/* Virtual List */
.k-virtual-wrap {
  position: relative;
}
.k-virtual-wrap .k-list.k-virtual-list {
  height: auto;
}
.k-virtual-content {
  overflow-y: scroll;
  /* has to be scroll, not auto */
  -webkit-overflow-scrolling: touch;
  position: relative;
}
.k-virtual-list > .k-virtual-content {
  position: absolute;
  top: 0;
  width: 100%;
  margin: 0;
  padding: 0;
  list-style-type: none;
}
.k-virtual-option-label {
  width: 100%;
  margin: 0;
  padding: 0;
  list-style-type: none;
}
.k-virtual-wrap > .k-virtual-header {
  text-align: right;
}
.k-popup .k-item.k-first {
  position: relative;
}
.k-virtual-content > .k-virtual-list > .k-virtual-item {
  position: absolute;
  width: 100%;
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  overflow: hidden;
  white-space: nowrap;
}
.k-popup .k-list .k-item > .k-group,
.k-popup > .k-group-header,
.k-popup > .k-virtual-wrap > .k-group-header {
  text-transform: uppercase;
  font-size: .857em;
}
.k-popup .k-list .k-item > .k-group {
  position: absolute;
  top: 0;
  right: 0;
  padding: 0 .5em;
  line-height: 1.8;
}
.k-popup .k-state-hover > .k-group {
  right: -1px;
}
.k-virtual-item.k-first,
.k-group-header + .k-list > .k-item.k-first,
.k-static-header + .k-list > .k-item.k-first {
  border-top-style: solid;
  border-top-width: 1px;
  padding-top: 0;
}
.k-popup > .k-group-header,
.k-popup > .k-virtual-wrap > .k-group-header {
  text-align: right;
}
@font-face {
  font-family: 'KendoUIGlyphs';
  src: url('fonts/glyphs/KendoUIGlyphs.eot?-wd8xpd');
  src: url('fonts/glyphs/KendoUIGlyphs.eot?#iefix-wd8xpd') format('embedded-opentype'), url('fonts/glyphs/KendoUIGlyphs.ttf?-wd8xpd') format('truetype'), url('fonts/glyphs/KendoUIGlyphs.woff?-wd8xpd') format('woff'), url('fonts/glyphs/KendoUIGlyphs.svg?-wd8xpd#KendoUIGlyphs') format('svg');
  font-weight: normal;
  font-style: normal;
}
.k-i-arrow-n:before {
  content: "\e600";
}
.k-i-arrow-e:before {
  content: "\e601";
}
.k-i-arrow-s:before {
  content: "\e602";
}
.k-i-arrow-w:before {
  content: "\e603";
}
.k-i-seek-n:before {
  content: "\e604";
}
.k-i-seek-e:before {
  content: "\e605";
}
.k-i-seek-s:before {
  content: "\e606";
}
.k-i-seek-w:before {
  content: "\e607";
}
.k-i-sarrow-n:before {
  content: "\e608";
}
.k-i-sarrow-:before {
  content: "\e609";
}
.k-i-sarrow-s:before {
  content: "\e60a";
}
.k-i-sarrow-w:before {
  content: "\e60b";
}
.k-i-expand-n:before {
  content: "\e60c";
}
.k-i-expand-e:before {
  content: "\e60d";
}
.k-i-expand-s:before {
  content: "\e60e";
}
.k-i-expand-w:before {
  content: "\e60f";
}
.k-i-collapse-ne:before {
  content: "\e610";
}
.k-i-collapse-se:before {
  content: "\e611";
}
.k-i-collapse-sw:before {
  content: "\e612";
}
.k-i-collapse-nw:before {
  content: "\e613";
}
.k-i-resize-ne:before {
  content: "\e614";
}
.k-i-resize-se:before {
  content: "\e615";
}
.k-i-resize-sw:before {
  content: "\e616";
}
.k-i-resize-nw:before {
  content: "\e617";
}
.k-i-arrowhead-n:before {
  content: "\e618";
}
.k-i-arrowhead-e:before {
  content: "\e619";
}
.k-i-arrowhead-s:before {
  content: "\e61a";
}
.k-i-arrowhead-w:before {
  content: "\e61b";
}
.k-i-pencil:before {
  content: "\e61c";
}
.k-i-x:before {
  content: "\e61d";
}
.k-i-checkmark:before {
  content: "\e61e";
}
.k-i-deny:before {
  content: "\e61f";
}
.k-i-trash:before {
  content: "\e620";
}
.k-i-plus:before {
  content: "\e621";
}
.k-i-splus:before {
  content: "\e622";
}
.k-i-minus:before {
  content: "\e623";
}
.k-i-sminus:before {
  content: "\e624";
}
.k-i-filter:before {
  content: "\e625";
}
.k-i-filter-clear:before {
  content: "\e626";
}
.k-i-refresh:before {
  content: "\e627";
}
.k-i-refresh-clear:before {
  content: "\e628";
}
.k-i-restore:before {
  content: "\e629";
}
.k-i-maximize:before {
  content: "\e62a";
}
.k-i-minimize:before {
  content: "\e62b";
}
.k-i-pin:before {
  content: "\e62c";
}
.k-i-unpin:before {
  content: "\e62d";
}
.k-i-calendar:before {
  content: "\e62e";
}
.k-i-clock:before {
  content: "\e62f";
}
.k-i-search:before {
  content: "\e630";
}
.k-i-zoom-in:before {
  content: "\e631";
}
.k-i-zoom-out:before {
  content: "\e632";
}
.k-i-print:before {
  content: "\e633";
}
.k-i-folder-add:before {
  content: "\e634";
}
.k-i-folder-up:before {
  content: "\e635";
}
.k-i-insert-image:before {
  content: "\e636";
}
.k-i-image:before {
  content: "\e637";
}
.k-i-insert-file:before {
  content: "\e638";
}
.k-i-file:before {
  content: "\e639";
}
.k-i-files:before {
  content: "\e63a";
}
.k-i-pdf:before {
  content: "\e63b";
}
.k-i-pdfa:before {
  content: "\e68d";
}
.k-i-xls:before {
  content: "\e63c";
}
.k-i-xlsa:before {
  content: "\e63d";
}
.k-i-lock:before {
  content: "\e63e";
}
.k-i-unlock:before {
  content: "\e63f";
}
.k-i-rows:before {
  content: "\e640";
}
.k-i-columns:before {
  content: "\e641";
}
.k-i-hamburger:before {
  content: "\e642";
}
.k-i-vbars:before {
  content: "\e643";
}
.k-i-hbars:before {
  content: "\e644";
}
.k-i-move:before {
  content: "\e645";
}
.k-i-group:before {
  content: "\e646";
}
.k-i-ungroup:before {
  content: "\e647";
}
.k-i-dimension:before {
  content: "\e648";
}
.k-i-connector:before {
  content: "\e649";
}
.k-i-kpi:before {
  content: "\e64a";
}
.k-i-undo:before {
  content: "\e64b";
}
.k-i-redo:before {
  content: "\e64c";
}
.k-i-undo-large:before {
  content: "\e64d";
}
.k-i-redo-large:before {
  content: "\e64e";
}
.k-i-rotate-ccw:before {
  content: "\e64f";
}
.k-i-rotate-cw:before {
  content: "\e650";
}
.k-i-cut:before {
  content: "\e651";
}
.k-i-copy:before {
  content: "\e652";
}
.k-i-paste:before {
  content: "\e653";
}
.k-i-bold:before {
  content: "\e654";
}
.k-i-italic:before {
  content: "\e655";
}
.k-i-underline:before {
  content: "\e656";
}
.k-i-strike-through:before {
  content: "\e657";
}
.k-i-text:before {
  content: "\e658";
}
.k-i-font-size:before {
  content: "\e68e";
}
.k-i-font-family:before {
  content: "\e68f";
}
.k-i-fx:before {
  content: "\e659";
}
.k-i-subscript:before {
  content: "\e65a";
}
.k-i-superscript:before {
  content: "\e65b";
}
.k-i-background:before {
  content: "\e65c";
}
.k-i-sum:before {
  content: "\e65d";
}
.k-i-increase-decimal:before {
  content: "\e65e";
}
.k-i-decrease-decimal:before {
  content: "\e65f";
}
.k-i-justify-left:before {
  content: "\e660";
}
.k-i-justify-center:before {
  content: "\e661";
}
.k-i-justify-right:before {
  content: "\e662";
}
.k-i-justify-full:before {
  content: "\e663";
}
.k-i-justify-clear:before {
  content: "\e664";
}
.k-i-align-top:before {
  content: "\e665";
}
.k-i-align-middle:before {
  content: "\e666";
}
.k-i-align-bottom:before {
  content: "\e667";
}
.k-i-indent:before {
  content: "\e668";
}
.k-i-outdent:before {
  content: "\e669";
}
.k-i-insert-n:before {
  content: "\e66a";
}
.k-i-insert-m:before {
  content: "\e66b";
}
.k-i-insert-s:before {
  content: "\e66c";
}
.k-i-insert-unordered-list:before {
  content: "\e66d";
}
.k-i-insert-ordered-list:before {
  content: "\e66e";
}
.k-i-sort-asc:before {
  content: "\e66f";
}
.k-i-sort-desc:before {
  content: "\e670";
}
.k-i-unsort:before {
  content: "\e671";
}
.k-i-hyperlink:before {
  content: "\e672";
}
.k-i-hyperlink-remove:before {
  content: "\e673";
}
.k-i-clearformat:before {
  content: "\e674";
}
.k-i-html:before {
  content: "\e675";
}
.k-i-exception:before {
  content: "\e676";
}
.k-i-custom:before {
  content: "\e677";
}
.k-i-cog:before {
  content: "\e678";
}
.k-i-create-table:before {
  content: "\e679";
}
.k-i-add-column-left:before {
  content: "\e67a";
}
.k-i-add-column-right:before {
  content: "\e67b";
}
.k-i-delete-column:before {
  content: "\e67c";
}
.k-i-add-row-above:before {
  content: "\e67d";
}
.k-i-add-row-below:before {
  content: "\e67e";
}
.k-i-delete-row:before {
  content: "\e67f";
}
.k-i-merge-cells:before {
  content: "\e680";
}
.k-i-normal-layout:before {
  content: "\e681";
}
.k-i-page-layout:before {
  content: "\e682";
}
.k-i-all-borders:before {
  content: "\e683";
}
.k-i-inside-borders:before {
  content: "\e684";
}
.k-i-inside-horizontal-borders:before {
  content: "\e685";
}
.k-i-inside-vertical-borders:before {
  content: "\e686";
}
.k-i-outside-borders:before {
  content: "\e687";
}
.k-i-top-border:before {
  content: "\e688";
}
.k-i-right-border:before {
  content: "\e689";
}
.k-i-bottom-border:before {
  content: "\e68a";
}
.k-i-left-border:before {
  content: "\e68b";
}
.k-i-no-borders:before {
  content: "\e68c";
}
.k-i-merge-horizontally:before {
  content: "\e690";
}
.k-i-merge-vertically:before {
  content: "\e691";
}
.k-i-text-wrap:before {
  content: "\e692";
}
.k-i-dollar:before {
  content: "\e693";
}
.k-i-percent:before {
  content: "\e694";
}
.k-i-freeze-col:before {
  content: "\e695";
}
.k-i-freeze-row:before {
  content: "\e696";
}
.k-i-freeze-panes:before {
  content: "\e697";
}
.k-i-format-number:before {
  content: "\e698";
}
.k-spreadsheet {
  width: 800px;
  height: 600px;
  border-width: 1px;
  border-style: solid;
  cursor: default;
}
.k-spreadsheet .k-spreadsheet-pane td {
  white-space: nowrap;
  border-width: 1px;
  border-style: solid;
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  overflow: hidden;
  height: 20px;
  -webkit-user-select: none;
     -moz-user-select: none;
      -ms-user-select: none;
          user-select: none;
}
.k-spreadsheet .k-spreadsheet-pane table {
  table-layout: fixed;
  border-collapse: collapse;
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  position: absolute;
}
.k-spreadsheet .k-spreadsheet-pane table.k-spreadsheet-merged-cell {
  width: auto;
  height: auto;
}
.k-spreadsheet .k-spreadsheet-pane table.k-spreadsheet-row-header {
  width: auto;
}
.k-spreadsheet .k-spreadsheet-pane table.k-spreadsheet-row-header td {
  border-left-width: 0;
}
.k-spreadsheet .k-spreadsheet-pane table.k-spreadsheet-column-header {
  height: auto;
}
.k-spreadsheet .k-spreadsheet-pane table.k-spreadsheet-column-header td {
  border-top-width: 0;
}
.k-spreadsheet .k-spreadsheet-selection,
.k-spreadsheet .k-spreadsheet-active-cell {
  border-width: 1px;
  border-style: solid;
  position: absolute;
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
}
.k-spreadsheet .k-spreadsheet-active-cell.k-left {
  border-left-width: 0;
}
.k-spreadsheet .k-spreadsheet-active-cell td {
  border-width: 0 !important;
}
.k-spreadsheet .k-spreadsheet-formula-bar {
  border-width: 1px;
  border-style: solid;
  padding-left: 31px;
  position: relative;
  font-size: 12px;
  font-family: Arial, Verdana, sans-serif;
}
.k-spreadsheet .k-spreadsheet-formula-bar:before {
  background-image: none;
  font-family: 'KendoUIGlyphs';
  speak: none;
  font-style: normal;
  font-weight: normal;
  font-variant: normal;
  text-transform: none;
  font-size: 1.3em;
  line-height: 1;
  opacity: 1;
  text-indent: 0;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
  content: "\e659";
  display: block;
  height: 20px;
  top: 3px;
  border-width: 0 1px 0 0;
  border-style: solid;
  position: absolute;
  width: 24px;
  margin-left: -24px;
}
.k-spreadsheet .k-spreadsheet-formula-bar:after {
  content: "";
  display: block;
  border-width: 0 0 1px;
  border-style: solid;
  position: absolute;
  bottom: 0;
  left: 0;
  width: 100%;
}
.k-spreadsheet .k-spreadsheet-formula-input {
  outline: none;
  border-width: 0;
  height: 26px;
  line-height: 20px;
  width: 100%;
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  white-space: nowrap;
  padding: 3px 0.5em 0;
}
.k-spreadsheet .k-spreadsheet-cell-editor {
  position: absolute;
  display: none;
  padding: 0 .3em;
  line-height: 20px;
  z-index: 2000;
  overflow: hidden;
}
.k-spreadsheet > .k-spreadsheet-view {
  position: relative;
  font-size: 12px;
  font-family: Arial, Verdana, sans-serif;
}
.k-spreadsheet .k-tabstrip-wrapper {
  position: relative;
  line-height: 1.7em;
}
.k-spreadsheet .k-tabstrip-wrapper .k-tabstrip-items {
  padding: 0 0 0;
}
.k-spreadsheet .k-spreadsheet-quick-access-toolbar {
  display: inline-block;
  position: absolute;
  z-index: 1;
  top: 0;
  left: 0;
  padding: 0 0 0;
}
.k-spreadsheet .k-spreadsheet-quick-access-toolbar .k-button {
  padding: .3em;
  line-height: 1.4em;
}
.k-spreadsheet .k-merged-cells-wrapper,
.k-spreadsheet .k-selection-wrapper,
.k-spreadsheet .k-filter-headers,
.k-spreadsheet .k-spreadsheet-column-header {
  position: relative;
}
.k-spreadsheet .k-spreadsheet-sheets-bar {
  border-width: 1px 0 0;
}
.k-spreadsheet .k-dirty-cell {
  position: relative;
}
.k-spreadsheet .k-dirty {
  right: 0;
  margin: -2px 0 0 -7px;
  border-width: 4px;
  border-color: #f00 #f00 transparent transparent;
}
.k-font-icon,
.k-font-icon.k-icon,
.k-font-icon.k-tool-icon {
  font-family: 'KendoUIGlyphs';
  speak: none;
  font-style: normal;
  font-weight: normal;
  font-variant: normal;
  text-transform: none;
  font-size: 1.3em;
  line-height: 1;
  opacity: 1;
  text-indent: 0;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
  background-image: none;
  font-size: 16px;
}
.k-spreadsheet .k-colorpicker .k-tool-icon {
  overflow: visible;
}
.k-spreadsheet-filter {
  position: absolute;
  cursor: pointer;
}
.k-spreadsheet-sample {
  float: right;
}
.k-spreadsheet-clipboard-paste,
.k-spreadsheet-clipboard {
  position: absolute;
  opacity: 0;
  top: 0;
  left: 0;
  overflow: hidden;
  padding: 0;
  margin: 0;
  border: 0;
  width: 1px;
  height: 1px;
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
}
.k-spreadsheet-top-corner {
  position: absolute;
  top: 0;
  left: 0;
  z-index: 10000;
  border-width: 0 1px 1px 0;
  border-style: solid;
}
.k-spreadsheet-top-corner:after {
  content: "";
  display: block;
  width: 0;
  height: 0;
  overflow: hidden;
  position: absolute;
  bottom: 0;
  right: 0;
  border-width: 6px;
  border-style: solid;
}
.k-spreadsheet-scroller {
  width: 100%;
  height: 100%;
  overflow: scroll;
  -webkit-overflow-scrolling: touch;
  position: absolute;
  z-index: 1;
}
.k-spreadsheet-fixed-container {
  position: absolute;
  width: 100%;
  height: 100%;
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  z-index: 2;
}
.k-spreadsheet-view-size {
  position: relative;
}
.k-spreadsheet-pane {
  padding-right: 1px;
  position: absolute;
  border-width: 1px;
  border-style: solid;
  overflow: hidden;
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
}
.k-spreadsheet-pane.k-top {
  border-top-width: 0;
}
.k-spreadsheet-pane.k-left {
  border-left-width: 0;
}
.k-spreadsheet-column-header,
.k-spreadsheet-row-header {
  text-align: center;
}
.k-spreadsheet-window .k-root-tabs {
  border-width: 0;
  margin: -1em -1em 0;
  padding: .5em 1em 0;
}
.k-spreadsheet-window .k-root-tabs .k-loading {
  display: none;
}
.k-spreadsheet-window .k-list-wrapper {
  padding: .15em 0;
  border-width: 1px;
  border-style: solid;
  height: 190px;
}
.k-spreadsheet-window .k-list .k-item {
  border-radius: 0;
  padding: .5em .6em .4em .6em;
  cursor: pointer;
  line-height: 1.1em;
}
.k-spreadsheet-window .k-format-filter {
  width: 100%;
}
.k-spreadsheet-window .k-format-filter + .k-group-header + .k-list-wrapper {
  margin-top: 1em;
}
.k-spreadsheet-window .k-action-buttons {
  padding: 1em;
}
.k-spreadsheet-format-cells .k-spreadsheet-preview {
  font-weight: bold;
  text-align: center;
  font-size: 1.16em;
  line-height: 3.64em;
  margin: 0 -0.863em 0.72em;
  border-style: solid;
  border-width: 1px 0;
}
.k-spreadsheet-border-palette {
  width: 153px;
}
.k-spreadsheet-border-palette .k-colorpalette {
  vertical-align: bottom;
}
.k-spreadsheet-popup .k-separator {
  width: 1px;
  height: 1.8em;
  vertical-align: middle;
  display: inline-block;
}
.k-spreadsheet-popup .k-colorpalette {
  vertical-align: top;
}
.k-spreadsheet-popup .k-button.k-button-icon {
  padding: 0.6em;
  border-width: 0;
  border-radius: 0;
}
.k-spreadsheet-popup .k-button.k-button-icontext {
  display: block;
  text-align: left;
  text-transform: initial;
  padding: 0.6em 1.2em 0.6em 1em;
  border-width: 0;
  border-radius: 0;
}
.k-spreadsheet-filter-menu {
  width: 280px;
}
.k-spreadsheet-filter-menu > .k-menu {
  border-width: 0;
}
.k-spreadsheet-filter-menu > .k-menu .k-link {
  padding-left: 26px;
}
.k-spreadsheet-filter-menu > .k-menu .k-icon.k-font-icon {
  margin-left: -26px;
  width: 26px;
}
.k-spreadsheet-filter-menu .k-spreadsheet-value-treeview-wrapper {
  height: 200px;
  overflow-y: scroll;
  overflow-x: auto;
  border-width: 1px;
  border-style: solid;
}
.k-spreadsheet-filter-menu .k-spreadsheet-value-treeview-wrapper .k-treeview {
  overflow: visible;
  padding: 6px 7px;
}
.k-spreadsheet-filter-menu .k-details {
  border-top-width: 1px;
  border-top-style: solid;
  padding: 4px 0;
}
.k-spreadsheet-filter-menu .k-details-summary {
  cursor: pointer;
  line-height: 26px;
}
.k-spreadsheet-filter-menu .k-details-summary .k-icon {
  margin: 0 5px;
}
.k-spreadsheet-filter-menu .k-details-content {
  padding: 0 8px 0 26px;
}
.k-spreadsheet-filter-menu .k-details-content > .k-textbox,
.k-spreadsheet-filter-menu .k-details-content > .k-widget {
  width: 100%;
  margin-bottom: 3px;
}
.k-spreadsheet-filter-menu .k-details-content .k-space-right {
  background-image: none;
}
.k-spreadsheet-filter-menu .k-details-content .k-filter-and {
  width: 75px;
  margin: 8px 0;
}
.k-spreadsheet-filter-menu .k-action-buttons {
  border-top-width: 0;
  margin: 8px;
  padding: 0;
  position: static;
}
.k-resize-handle,
.k-resize-hint {
  position: absolute;
}
.k-resize-hint-handle {
  width: 100%;
  height: 20px;
}
.k-resize-hint-marker {
  width: 2px;
  height: 100%;
  margin: 0 auto;
}
.k-resize-hint-vertical .k-resize-hint-handle {
  height: 100%;
  width: 20px;
  float: left;
}
.k-resize-hint-vertical .k-resize-hint-marker {
  height: 2px;
  width: 100%;
}
.k-spreadsheet-quick-access-toolbar .k-button,
.k-button.k-spreadsheet-sheets-bar-add {
  border-color: transparent;
  background-color: transparent;
  background-image: none;
}
/* top TabStrip */
.k-spreadsheet-tabstrip {
  border-left-width: 0;
  border-right-width: 0;
  border-top-width: 0;
}
.k-spreadsheet-tabstrip > .k-content {
  border-left-width: 0;
  border-right-width: 0;
  border-bottom-width: 0;
  margin: 0;
  padding: 0;
}
.k-spreadsheet-tabstrip .k-loading {
  display: none;
}
.k-spreadsheet-toolbar.k-toolbar {
  border-width: 0;
}
.k-spreadsheet-toolbar.k-toolbar .k-overflow-anchor + * {
  margin-left: 0;
}
.k-spreadsheet-toolbar > .k-widget,
.k-spreadsheet-toolbar .k-button,
.k-spreadsheet-toolbar > .k-button-group,
.k-spreadsheet-toolbar > .k-widget .k-state-default:not(.k-state-hover):not(.k-state-active) {
  margin: 0;
  border-color: transparent;
  background-color: transparent;
  background-image: none;
}
.k-spreadsheet-toolbar > .k-widget[data-property='fontSize'] {
  width: 75px;
}
.k-spreadsheet-toolbar > .k-widget[data-property='format'] {
  width: 100px;
}
.k-spreadsheet-toolbar > .k-widget[data-property='fontFamily'] {
  width: 130px;
}
.k-spreadsheet-toolbar > .k-combobox .k-state-default:not(.k-state-hover):not(.k-state-active) .k-input {
  background-color: transparent;
  -webkit-box-shadow: none;
          box-shadow: none;
}
.k-spreadsheet-toolbar > .k-widget .k-state-default:not(.k-state-hover):not(.k-state-active) .k-select {
  border-color: transparent;
}
.k-spreadsheet-toolbar .k-separator {
  margin: 0 3px;
  width: 0;
  overflow: hidden;
  height: 1.8em;
  vertical-align: middle;
  display: inline-block;
}
.k-spreadsheet-formula-input > .k-syntax-func.k-syntax-at-point,
.k-spreadsheet-formula-input > .k-syntax-bool.k-syntax-at-point,
.k-spreadsheet-formula-input > .k-syntax-ref.k-syntax-at-point,
.k-spreadsheet-formula-input > .k-syntax-str.k-syntax-at-point,
.k-spreadsheet-formula-input > .k-syntax-num.k-syntax-at-point {
  text-decoration: underline;
}
.k-spreadsheet-formula-input > .k-series-a,
.k-spreadsheet-formula-input > .k-series-b,
.k-spreadsheet-formula-input > .k-series-c,
.k-spreadsheet-formula-input > .k-series-d {
  background-color: transparent;
}
.k-spreadsheet-selection-highlight {
  border-width: 2px;
  border-style: solid;
  position: absolute;
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
}
.k-spreadsheet-formula-list {
  min-width: 100px;
}
.k-spreadsheet-formula-list .k-item {
  padding: 0 .3em;
  -webkit-box-shadow: none;
          box-shadow: none;
}
/* bottom TabStrip */
.k-spreadsheet-sheets-bar {
  position: relative;
}
.k-button.k-spreadsheet-sheets-bar-add {
  position: absolute;
  bottom: .2em;
  left: .4em;
  z-index: 1;
}
.k-tabstrip-bottom .k-spreadsheet-sheets-remove {
  padding: 0;
}
.k-spreadsheet-sheets-remove .k-button-icon {
  padding: 2px;
  line-height: normal;
}
.k-spreadsheet-sheets-remove .k-icon {
  margin: 0;
}
.k-spreadsheet-sheets-items-hint {
  margin-top: .1em;
  background: none !important;
  border-width: 0 !important;
}
/* Default fonts for PDF export */
/* sans-serif */
@font-face {
  font-family: "DejaVu Sans";
  src: url("fonts/DejaVu/DejaVuSans.ttf?v=1.1") format("truetype");
}
@font-face {
  font-family: "DejaVu Sans";
  font-weight: bold;
  src: url("fonts/DejaVu/DejaVuSans-Bold.ttf?v=1.1") format("truetype");
}
@font-face {
  font-family: "DejaVu Sans";
  font-style: italic;
  src: url("fonts/DejaVu/DejaVuSans-Oblique.ttf?v=1.1") format("truetype");
}
@font-face {
  font-family: "DejaVu Sans";
  font-weight: bold;
  font-style: italic;
  src: url("fonts/DejaVu/DejaVuSans-BoldOblique.ttf?v=1.1") format("truetype");
}
/* serif */
@font-face {
  font-family: "DejaVu Serif";
  src: url("fonts/DejaVu/DejaVuSerif.ttf?v=1.1") format("truetype");
}
@font-face {
  font-family: "DejaVu Serif";
  font-weight: bold;
  src: url("fonts/DejaVu/DejaVuSerif-Bold.ttf?v=1.1") format("truetype");
}
@font-face {
  font-family: "DejaVu Serif";
  font-style: italic;
  src: url("fonts/DejaVu/DejaVuSerif-Italic.ttf?v=1.1") format("truetype");
}
@font-face {
  font-family: "DejaVu Serif";
  font-weight: bold;
  font-style: italic;
  src: url("fonts/DejaVu/DejaVuSerif-BoldItalic.ttf?v=1.1") format("truetype");
}
/* monospace */
@font-face {
  font-family: "DejaVu Mono";
  src: url("fonts/DejaVu/DejaVuSansMono.ttf?v=1.1") format("truetype");
}
@font-face {
  font-family: "DejaVu Mono";
  font-weight: bold;
  src: url("fonts/DejaVu/DejaVuSansMono-Bold.ttf?v=1.1") format("truetype");
}
@font-face {
  font-family: "DejaVu Mono";
  font-style: italic;
  src: url("fonts/DejaVu/DejaVuSansMono-Oblique.ttf?v=1.1") format("truetype");
}
@font-face {
  font-family: "DejaVu Mono";
  font-weight: bold;
  font-style: italic;
  src: url("fonts/DejaVu/DejaVuSansMono-BoldOblique.ttf?v=1.1") format("truetype");
}
.k-button,
.k-toolbar .k-button {
  line-height: 1.143em;
  padding: 9px 14px;
}
.k-widget.k-tabstrip {
  background-image: none;
  border-style: none;
  -webkit-box-shadow: none;
          box-shadow: none;
}
.k-tabstrip .k-tabstrip-items {
  padding: 0;
}
.k-tabstrip > div.k-content,
.k-panelbar .k-tabstrip > div.k-content {
  margin: 0;
}
.k-panelbar > .k-item > .k-link,
.k-panel > .k-item > .k-link {
  line-height: 3.5em;
}
.k-panelbar .k-image {
  margin-top: 12px;
}
.k-panelbar .k-link > .k-sprite {
  margin-top: 16px;
}
.k-tabstrip > .k-tabstrip-items > .k-item {
  text-transform: uppercase;
  border-width: 0;
  border-style: solid;
  padding: 0;
}
.k-tabstrip-left > .k-tabstrip-items .k-loading,
.k-tabstrip-right > .k-tabstrip-items .k-loading {
  display: none;
}
.k-tabstrip-top > .k-tabstrip-items .k-tab-on-top,
.k-tabstrip-top > .k-tabstrip-items .k-state-active {
  margin-bottom: -1px;
}
.k-tabstrip-top > .k-tabstrip-items > .k-item {
  border-bottom-width: 2px;
}
.k-tabstrip-left > .k-tabstrip-items .k-tab-on-top,
.k-tabstrip-left > .k-tabstrip-items .k-state-active {
  margin-right: -2px;
}
.k-tabstrip-left > .k-tabstrip-items > .k-item {
  border-right-width: 2px;
}
.k-tabstrip-right > .k-tabstrip-items > .k-item {
  border-left-width: 2px;
}
.k-tabstrip-bottom > .k-tabstrip-items > .k-item {
  border-top-width: 2px;
}
.k-tabstrip .k-tabstrip-items .k-link {
  padding: 1.071em;
}
.k-slider-track {
  border-width: 1px;
  border-style: solid;
}
.k-grouping-dropclue {
  margin-top: 10px;
}
.k-grid-header th.k-header,
.k-filter-row th {
  padding: .786em .6em;
}
.k-grid-header th.k-header {
  padding-left: 1.286em;
}
.k-filtercell > span {
  padding-right: 5.714em;
}
.k-filtercell > span > .k-button {
  padding-left: .714em;
  padding-right: .714em;
  line-height: 1.286em;
  margin: 0;
}
.k-filter-row .k-dropdown-operator {
  width: 2.714em;
  right: 2.857em;
}
.k-filter-menu {
  padding: .5em .5em 0;
}
.k-filter-menu .k-button {
  margin: 0;
  width: 50%;
  border-radius: 0;
}
.k-filter-menu .k-primary {
  float: right;
}
.k-filter-menu > div > div:last-child {
  margin: 0.5em -0.5em 0;
  border-top-width: 1px;
  border-top-style: solid;
}
.k-filter-menu .k-primary {
  border-left-width: 1px;
  border-left-style: solid;
}
.k-grouping-header .k-group-indicator {
  padding: .5em .15em .429em .4em;
}
.k-grid .k-grouping-row td {
  padding: .6em .6em 0.643em;
}
.k-grouping-header a,
.k-grouping-header .k-button {
  vertical-align: baseline;
}
.k-grid td {
  padding: 0.929em 1.286em;
}
.k-grid-header th.k-header > .k-link {
  padding: 0;
  margin: 0;
  min-height: 16px;
  line-height: inherit;
}
.k-grouping-header {
  line-height: 2.6;
}
.k-grid-content tr:last-child td {
  border-bottom-width: 0;
}
.k-grid tr td,
.k-pivot-layout .k-grid tr td {
  border-bottom-width: 1px;
  border-style: solid;
}
.k-grouping-row + tr td {
  border-top-width: 0;
}
.k-grid-content table tr:first-child td,
.k-grid-content-locked table tr:first-child td {
  border-top: 0;
}
.k-grid-content tr td {
  border-left-width: 0;
}
.k-pager-numbers .k-state-selected {
  line-height: 2.429em;
  cursor: pointer;
}
.k-pager-numbers .k-link,
.k-pager-numbers .k-state-selected {
  border-width: 2px 0 0;
  padding-top: .7em;
}
.k-pager-wrap {
  line-height: 1.286em;
  padding: .429em 0 .429em .25em;
}
.k-pager-wrap > .k-link,
.k-pager-numbers .k-link {
  height: 2.429em;
  line-height: 2.429em;
}
.k-pager-wrap .k-link,
.k-pager-sizes {
  padding: 0;
  min-width: 2.429em;
}
.k-pager-wrap .k-pager-numbers .k-state-selected {
  margin-top: -0.4em;
  padding-top: .35em;
  min-width: 2.429em;
}
.k-pager-wrap input.k-textbox {
  height: 2.571em;
}
.k-pager-info {
  padding: .714em 1.333em .643em 1.333em;
}
.k-pager-wrap .k-pager-refresh {
  margin-right: 1.214em;
}
.k-pager-wrap .k-dropdown {
  width: 5.2em;
}
.k-autocomplete .k-loading,
.k-multiselect .k-loading {
  bottom: 10px;
}
.k-dropdown-wrap,
.k-picker-wrap,
.k-numeric-wrap {
  padding: 0 2.571em 0 0;
}
.k-picker-wrap .k-select,
.k-numeric-wrap .k-select,
.k-dropdown-wrap .k-select {
  width: 2.571em;
}
.k-datetimepicker {
  width: 19.5em;
}
.k-datetimepicker .k-select {
  width: 5em;
}
.k-datetimepicker .k-picker-wrap {
  padding-right: 5em;
}
.k-datetimepicker .k-picker-wrap .k-icon {
  margin: 0 6px;
}
.k-calendar {
  width: 18.29em;
  padding: 0 5px;
}
.k-calendar .k-header {
  margin: 0 -5px;
}
.k-calendar td {
  padding: 0;
}
.k-calendar .k-content .k-link {
  min-height: 2.571em;
  line-height: 2.571em;
  padding: 0;
  text-align: center;
}
.k-calendar th {
  border-bottom-width: 0;
  padding: .714em .45em .714em 0;
}
.k-calendar .k-footer {
  border-top-width: 1px;
  border-top-style: solid;
  margin: 0 -5px;
}
.k-popup.k-list-container {
  padding: 0.286em 0;
}
.k-popup.k-calendar-containe {
  padding: 0;
}
.k-popup .k-list .k-item,
.k-fieldselector .k-list .k-item {
  min-height: 2.143em;
  line-height: 2.143em;
}
.k-popup .k-list .k-item {
  padding: 1px 11px;
}
.k-popup .k-list .k-state-hover,
.k-popup .k-list .k-state-focused,
.k-popup .k-list .k-state-selected {
  padding: 0 10px;
}
.k-button,
.k-calendar .k-header .k-link,
.k-calendar .k-footer {
  text-transform: uppercase;
}
.k-widget.k-calendar .k-nav-fast {
  width: 65%;
  height: 2.571em;
  line-height: 2.571em;
  margin: 0.429em -0.08333em 0.429em 0;
}
.k-calendar .k-header .k-icon {
  vertical-align: middle;
}
.k-widget.k-calendar .k-nav-prev,
.k-widget.k-calendar .k-nav-next {
  position: absolute;
  top: 0.429em;
  line-height: 2.571em;
  height: 2.571em;
}
.k-calendar .k-header .k-link.k-nav-prev,
.k-calendar .k-header .k-link.k-nav-next {
  height: 2.571em;
  width: 2.571em;
}
.k-widget.k-calendar .k-nav-prev {
  left: 0.429em;
}
.k-widget.k-calendar .k-nav-next {
  right: 0.429em;
}
.k-calendar .k-footer .k-nav-today,
.k-calendar .k-footer > .k-state-disabled {
  padding: 1.143em 0 1.071em;
}
.k-popup.k-calendar-container {
  padding: 0;
  border: 0;
}
.k-multiselect-wrap .k-input {
  height: 2.214em;
}
.k-multiselect-wrap li {
  border-radius: 1.071em;
  margin: 3px 0 3px 3px;
  padding: 0 1.6em 0 .857em;
  line-height: 1.86em;
}
.k-multiselect-wrap li span {
  margin-right: .4em;
}
.k-multiselect-wrap .k-select {
  padding-top: 0;
}
.k-numeric-wrap .k-select {
  vertical-align: baseline;
}
.k-numerictextbox .k-link {
  height: 1.284em;
  line-height: 1.357em;
}
.k-numerictextbox .k-link .k-i-arrow-n {
  vertical-align: bottom;
}
.k-numerictextbox .k-link .k-i-arrow-s {
  vertical-align: top;
}
.k-menu.k-header,
.k-menu .k-item,
.k-widget.k-menu-horizontal > .k-item {
  border-width: 0;
}
.k-popup.k-context-menu {
  border-width: 1px;
  border-style: solid;
}
.k-context-menu.k-menu-vertical > .k-item > .k-link,
.k-menu .k-menu-group .k-item > .k-link {
  padding: 0.5em 4.929em 0.5em 1.714em;
}
.k-menu .k-item > .k-link > .k-i-arrow-e {
  right: 2.143rem;
}
.k-menu .k-animation-container .k-menu-group {
  padding: 1.143em 0;
}
table.k-editor {
  border-spacing: 0;
}
.k-editor .k-editable-area {
  border-width: 1px 0 0;
}
.k-editor .k-editor-toolbar-wrap {
  padding-left: 10px;
}
.k-toolbar {
  line-height: 3.42em;
}
.k-toolbar .k-button-group {
  line-height: 3.286em;
}
.k-toolbar .k-button-group .k-button {
  line-height: inherit;
  padding: 0 .857em;
}
.k-toolbar .k-input {
  height: 2.214em;
  line-height: 2.214em;
  padding: 0.177em 0;
  text-indent: 0.8em;
  border: 0;
  margin: 0;
}
.k-toolbar .k-overflow-anchor {
  border-width: 0;
  line-height: 3.286em;
  width: 3.42em;
  height: 3.42em;
  padding: 0;
}
.k-button-group .k-tool {
  margin: 6px 0;
}
.k-toolbar .k-split-button-arrow {
  padding-left: .4em;
  padding-right: .4em;
}
.k-editor-toolbar .k-button-group .k-tool-icon,
.k-toolbar .k-button-group .k-tool-icon {
  width: 24px;
  height: 24px;
}
.k-editor-toolbar li.k-tool-group,
.k-editor-toolbar li.k-overflow-tools {
  padding: 0;
}
.k-editor-toolbar .k-button-group .k-tool {
  width: 48px;
  height: 48px;
  line-height: 48px;
  margin: 0;
}
.k-editor-toolbar .k-tool,
.k-editor-toolbar .k-button-group .k-tool.k-group-end {
  border-width: 0;
}
.k-editor-toolbar .k-state-selected {
  font-weight: bold;
}
.k-filebrowser .k-filebrowser-toolbar {
  line-height: 3.5em;
}
.k-filebrowser .k-filebrowser-toolbar .k-upload {
  margin-top: 3px;
}
.k-filebrowser .k-filebrowser-toolbar .k-button-icon {
  margin-top: -3px;
}
.k-filebrowser .k-upload .k-upload-button {
  vertical-align: bottom;
}
.k-filebrowser .k-search-wrap .k-search {
  top: 25%;
  right: 4px;
}
.k-filebrowser .k-search-wrap {
  padding: 2px .3em;
}
.k-filebrowser .k-tiles-arrange .k-dropdown {
  width: 80px;
}
.k-draghandle {
  border-width: 2px;
}
span.k-tooltip {
  padding: 9px 17px;
}
.k-block > .k-header,
.k-window-titlebar {
  padding: 0.5em 0 0.571em;
}
.k-window-titlebar .k-window-actions {
  right: 0.929em;
}
div.k-window {
  border-width: 0;
}
.k-window-title {
  right: 1.143em;
  left: 1.143em;
}
div.k-window-content {
  padding: 1.333em;
}
div.editorToolbarWindow.k-window-content {
  padding: 0;
}
.editorToolbarWindow .k-editortoolbar-dragHandle {
  line-height: 30px;
}
.k-file {
  padding: 0.357em .167em 0.357em .8em;
}
.k-scheduler-table td,
.k-scheduler-table th {
  height: 1.643em;
}
.k-gantt-treelist .k-grid-header tr {
  height: 5.714em;
}
.k-gantt-timeline .k-grid-header tr {
  height: 2.857em;
}
.k-gantt .k-task-summary:before,
.k-gantt .k-task-summary-complete:before,
.k-gantt .k-task-summary:after,
.k-gantt .k-task-summary-complete:after {
  border-width: 0;
}
.k-gantt .k-task {
  border-width: 0;
}
.k-gantt .k-task-actions {
  line-height: 2.429em;
}
.k-gantt .k-task-single {
  margin-top: -0.429em;
}
.k-gantt .k-task-template {
  padding: .643em 1.4em .643em .6em;
}
.k-gantt .k-task-milestone {
  width: 17px;
  height: 17px;
}
.k-gantt .k-task-draghandle {
  margin-left: 24px;
  border-width: 8px;
  border-radius: 0 50% 50% 50%;
  border-style: solid;
  bottom: -11px;
}
.k-gantt .k-gantt-timeline th {
  text-align: left;
}
.k-notification-wrap {
  padding: 1.786em;
}
.k-notification-wrap > .k-i-close {
  top: 21px;
}
.k-slider-track {
  border-width: 0;
}
.k-slider .k-button .k-icon {
  margin-top: 5px;
}
.k-slider-horizontal .k-slider-track,
.k-slider-horizontal .k-slider-selection {
  height: 2px;
  margin-top: -1px;
}
.k-slider-vertical .k-slider-track,
.k-slider-vertical .k-slider-selection {
  width: 2px;
  margin-left: -1px;
}
.k-slider-horizontal .k-draghandle,
.k-slider-vertical .k-draghandle,
.k-flatcolorpicker .k-hue-slider .k-draghandle,
.k-flatcolorpicker .k-transparency-slider .k-draghandle {
  width: 6px;
  height: 6px;
}
.k-flatcolorpicker .k-hue-slider .k-draghandle {
  margin-top: -1px;
}
.k-colorpicker .k-picker-wrap {
  line-height: 2.214em;
}
.k-colorpicker .k-selected-color {
  height: 2.214em;
  padding: 0.177em 0;
}
.k-draghandle.k-state-selected,
.k-draghandle.k-state-selected:link,
.k-flatcolorpicker .k-hue-slider .k-draghandle.k-state-selected,
.k-flatcolorpicker .k-transparency-slider .k-draghandle.k-state-selected {
  width: 10px;
  height: 10px;
}
.k-draghandle.k-state-focused.k-state-selected {
  margin-left: -2px;
}
.k-slider-horizontal .k-draghandle.k-state-selected,
.k-flatcolorpicker .k-hue-slider .k-draghandle.k-state-selected {
  top: -6px;
}
.k-slider-vertical .k-draghandle.k-state-selected {
  left: -4px;
}
/* Editor */
/* PanelBar */
.k-panelbar-expand,
.k-panelbar-collapse {
  right: 16px;
}
/* Grid */
.k-header.k-grid-toolbar {
  border-color: #3343a4;
}
.k-grouping-header,
.k-grid-toolbar {
  padding: 0.429em;
}
.k-grouping-header {
  padding-left: 1.286em;
}
.k-grid .k-icon {
  opacity: 0.45;
}
/* Scheduler */
.k-gantt-toolbar,
.k-scheduler-toolbar .k-nav-today,
.k-scheduler-toolbar .k-scheduler-views,
.k-scheduler-footer .k-scheduler-fullday {
  text-transform: uppercase;
}
.k-scheduler-footer .k-icon.k-i-clock {
  display: none;
}
.k-gantt-toolbar > ul > li,
.k-scheduler-toolbar > ul > li {
  border-width: 0 0 2px 0;
}
.k-gantt-toolbar li .k-link,
.k-scheduler-toolbar li .k-link,
.k-gantt-toggle {
  vertical-align: middle;
  line-height: 46px;
}
.k-gantt-toggle {
  padding: 0;
}
.k-gantt-actions {
  vertical-align: middle;
  line-height: 48px;
}
.k-gantt-actions > .k-button {
  vertical-align: middle;
}
.k-gantt-toolbar,
.k-scheduler-toolbar,
.k-scheduler-footer {
  line-height: 44px;
  vertical-align: middle;
}
.k-scheduler-footer {
  padding: 0;
}
.k-popup-edit-form .k-primary {
  float: right;
}
.k-popup-edit-form:after {
  content: " ";
  display: block;
  clear: both;
}
.k-gantt-toolbar,
.k-scheduler-toolbar {
  padding: 0 1.286em;
}
.k-scheduler-navigation {
  margin-left: -0.786em;
}
.k-drag-clue {
  font-size: 1em;
  padding: .65em 1em;
}
.k-state-border-down .k-select .k-i-arrow-s {
  background-position: 0 0;
}
.k-numerictextbox .k-select .k-link span.k-i-arrow-n,
.k-grid-header .k-numerictextbox .k-select .k-link span.k-i-arrow-n {
  background-position: 0 -3px;
}
.k-numerictextbox .k-select .k-link span.k-i-arrow-s,
.k-grid-header .k-numerictextbox .k-select .k-link span.k-i-arrow-s {
  background-position: 0 -35px;
}
.k-i-close,
.k-delete,
.k-group-delete {
  background-position: -32px -16px;
}
.k-multiselect .k-delete {
  margin-top: -2px;
}
.k-multiselect .k-button:not(.k-state-disabled):hover .k-delete {
  background-position: -160px -80px;
}
.k-window-titlebar .k-i-maximize,
.k-window-titlebar .k-link:not(.k-state-disabled):hover > .k-i-maximize {
  background-position: -48px -144px;
}
.k-window-titlebar .k-i-minimize,
.k-window-titlebar .k-link:not(.k-state-disabled):hover > .k-i-minimize {
  background-position: -80px -288px;
}
.k-window-titlebar .k-i-pin,
.k-window-titlebar .k-link:not(.k-state-disabled):hover > .k-i-pin {
  background-position: -176px -256px;
}
.k-window-titlebar .k-i-custom,
.k-window-titlebar .k-link:not(.k-state-disabled):hover > .k-i-custom {
  background-position: -141px -113px;
}
.k-window-titlebar .k-i-refresh,
.k-window-titlebar .k-link:not(.k-state-disabled):hover > .k-i-refresh {
  background-position: -48px -112px;
}
.k-window-titlebar .k-i-close,
.k-window-titlebar .k-link:not(.k-state-disabled):hover > .k-i-close {
  background-position: -48px -16px;
}
.k-window-titlebar .k-i-restore,
.k-window-titlebar .k-link:not(.k-state-disabled):hover > .k-i-restore {
  background-position: -48px -128px;
}
.k-calendar .k-icon.k-i-arrow-w,
.k-calendar .k-state-hover .k-icon.k-i-arrow-w,
.k-calendar .k-link:not(.k-state-disabled):hover > .k-i-arrow-w {
  background-position: -16px -48px;
  opacity: 1;
}
.k-calendar .k-icon.k-i-arrow-e,
.k-calendar .k-state-hover .k-icon.k-i-arrow-e,
.k-calendar .k-link:not(.k-state-disabled):hover > .k-i-arrow-e {
  background-position: -16px -16px;
  opacity: 1;
}
.k-treeview .k-minus {
  background-position: 0 -32px;
}
.k-treeview .k-plus {
  background-position: 0 -16px;
}
.k-splitbar-horizontal-hover .k-resize-handle {
  background-position: -165px -6px;
}
.k-splitbar-horizontal-hover .k-collapse-next {
  background-position: -5px -142px;
}
.k-splitbar-horizontal-hover .k-collapse-prev {
  background-position: -6px -174px;
}
.k-splitbar-vertical-hover .k-resize-handle {
  background-position: -38px -309px;
}
.k-splitbar-vertical-hover .k-collapse-next {
  background-position: 2px -165px;
}
.k-splitbar-vertical-hover .k-collapse-prev {
  background-position: 2px -134px;
}
.k-splitbar-horizontal.k-state-focused .k-resize-handle {
  background-position: -181px -6px;
}
.k-splitbar-horizontal.k-state-focused .k-collapse-next {
  background-position: -21px -142px;
}
.k-splitbar-horizontal.k-state-focused .k-collapse-prev {
  background-position: -22px -174px;
}
.k-splitbar-vertical.k-state-focused .k-resize-handle {
  background-position: -70px -309px;
}
.k-splitbar-vertical.k-state-focused .k-collapse-next {
  background-position: -14px -165px;
}
.k-splitbar-vertical.k-state-focused .k-collapse-prev {
  background-position: -14px -134px;
}
.k-grid .k-delete {
  background-position: -32px -16px;
}
.k-grid-header .k-i-arrow-n,
.k-grid-header .k-link:not(.k-state-disabled):hover > .k-i-arrow-n {
  background-position: 0 -256px;
}
.k-grid-header .k-i-arrow-s,
.k-grid-header .k-link:not(.k-state-disabled):hover > .k-i-arrow-s {
  background-position: 0 -288px;
}
.k-grid-header .k-grid-filter,
.k-grid-header .k-header-column-menu {
  padding: .714em;
  margin: -0.786em -0.6em;
}
.k-grid-header .k-header-column-menu .k-i-arrowhead-s {
  background-position: -64px -32px;
}
.k-header .k-i-pdf,
.k-header .k-button:hover > .k-i-pdf {
  background-position: -80px -80px;
}
.k-header .k-i-excel,
.k-header .k-button:hover > .k-i-excel {
  background-position: -80px -96px;
}
.k-grid-toolbar .k-add,
.k-grid-toolbar .k-button:hover .k-add {
  background-position: -48px -64px;
}
.k-grid-toolbar .k-update,
.k-grid-toolbar .k-button:hover .k-update {
  background-position: -48px -32px;
}
.k-grid-toolbar .k-cancel,
.k-grid-toolbar .k-button:hover .k-cancel {
  background-position: -48px -48px;
}
.k-grouping-header .k-group-delete,
.k-grouping-header .k-button-icon:hover > .k-icon.k-group-delete {
  background-position: -176px -80px;
}
.k-grouping-header .k-si-arrow-n,
.k-grouping-header .k-link:hover > .k-icon.k-si-arrow-n {
  background-position: -16px -288px;
}
.k-grouping-header .k-si-arrow-s,
.k-grouping-header .k-link:hover > .k-icon.k-si-arrow-s {
  background-position: -16px -256px;
}
.k-scheduler .k-state-default .k-link .k-icon.k-i-calendar,
.k-scheduler .k-state-default.k-state-hover .k-link .k-i-calendar {
  background-position: -48px -176px;
}
.k-scheduler .k-i-arrow-e,
.k-scheduler .k-state-hover .k-link .k-i-arrow-e {
  background-position: -16px -16px;
}
.k-scheduler .k-i-arrow-w,
.k-scheduler .k-state-hover .k-link .k-i-arrow-w {
  background-position: -16px -48px;
}
.k-scheduler .k-i-clock,
.k-scheduler .k-state-hover .k-link .k-i-clock {
  opacity: 1;
  background-position: -48px -192px;
}
.k-scheduler .k-si-close,
.k-scheduler .k-link:not(.k-state-disabled):hover > .k-si-close {
  background-position: -176px -80px;
}
.k-scheduler .k-i-refresh {
  background-position: -48px -112px;
}
.k-gantt .k-i-plus,
.k-gantt .k-link:hover > .k-icon.k-si-arrow-n,
.k-gantt .k-button:hover .k-i-plus {
  background-position: -48px -64px;
}
.k-gantt .k-i-collapse {
  background-position: 0 -32px;
}
.k-gantt .k-i-expand {
  background-position: 0 0;
}
.k-gantt .k-i-gantt-toggle,
.k-gantt .k-button:not(.k-state-disabled):hover .k-i-gantt-toggle {
  background-position: -80px -240px;
}
.k-i-arrowhead-s {
  background-position: 0 -288px;
}
.k-item.k-state-hover .k-i-arrowhead-s,
.k-button:hover .k-i-arrowhead-s {
  background-position: -16px -288px;
}
.k-si-close,
.k-item.k-state-hover .k-si-close,
.k-button:hover .k-si-close {
  background-position: -176px -80px;
}
.k-panelbar .k-i-arrow-n,
.k-pivot .k-i-arrow-n,
.k-panelbar .k-link.k-state-selected .k-i-arrow-n,
.k-pivot .k-link.k-state-selected .k-i-arrow-n,
.k-panelbar .k-link:not(.k-state-disabled):hover > .k-i-arrow-n,
.k-pivot .k-link:not(.k-state-disabled):hover > .k-i-arrow-n {
  background-position: 0 -192px;
}
.k-panelbar .k-i-arrow-s,
.k-pivot .k-i-arrow-s,
.k-panelbar .k-link.k-state-selected .k-i-arrow-s,
.k-pivot .k-link.k-state-selected .k-i-arrow-s,
.k-panelbar .k-link:not(.k-state-disabled):hover > .k-i-arrow-s,
.k-pivot .k-link:not(.k-state-disabled):hover > .k-i-arrow-s {
  background-position: 0 -224px;
}
.k-panelbar .k-i-arrow-e,
.k-pivot .k-i-arrow-e,
.k-panelbar .k-link.k-state-selected .k-i-arrow-e,
.k-pivot .k-link.k-state-selected .k-i-arrow-e,
.k-panelbar .k-link:not(.k-state-disabled):hover > .k-i-arrow-e,
.k-pivot .k-link:not(.k-state-disabled):hover > .k-i-arrow-e {
  background-position: 0 -190px;
}
.k-pivot-configurator-settings .k-si-close,
.k-pivot-configurator-settings .k-item.k-state-hover .k-si-close,
.k-pivot-configurator-settings .k-button:hover .k-si-close {
  background-position: -160px -80px;
}
.k-pivot .k-header .k-i-arrowhead-s,
.k-pivot .k-button:not(.k-state-disabled):hover .k-i-arrowhead-s {
  background-position: -16px -288px;
}
.k-pivot .k-header .k-si-close,
.k-pivot .k-button:not(.k-state-disabled):hover .k-si-close {
  background-position: -176px -80px;
}
.k-notification .k-i-note {
  background-position: -176px -240px;
}
.k-radio:checked + .k-radio-label:after {
  top: 4px;
  left: 4px;
}
.k-rtl .k-widget .k-dropdown-wrap,
.k-rtl .k-widget .k-picker-wrap,
.k-rtl .k-widget .k-numeric-wrap {
  padding-left: 2.5em;
}
.k-rtl .k-widget.k-datetimepicker .k-picker-wrap {
  padding-left: 5em;
}
.k-rtl .k-widget.k-datetimepicker .k-picker-wrap .k-icon {
  margin: 0 6px;
}
.k-webkit .k-rtl .k-widget .k-dropdown-wrap .k-input,
.k-webkit .k-rtl .k-widget .k-numeric-wrap .k-input {
  margin-right: 0;
}
.k-rtl .k-calendar .k-icon.k-i-arrow-w,
.k-rtl .k-calendar .k-link:not(.k-state-disabled):hover > .k-i-arrow-w,
.k-rtl .k-scheduler .k-i-arrow-w,
.k-rtl .k-scheduler .k-link:not(.k-state-disabled):hover > .k-i-arrow-w,
.k-rtl .k-scheduler .k-state-hover .k-link .k-i-arrow-w {
  background-position: -16px -16px;
}
.k-rtl .k-calendar .k-icon.k-i-arrow-e,
.k-rtl .k-calendar .k-link:not(.k-state-disabled):hover > .k-i-arrow-e,
.k-rtl .k-scheduler .k-i-arrow-e,
.k-rtl .k-scheduler .k-link:not(.k-state-disabled):hover > .k-i-arrow-e,
.k-rtl .k-scheduler .k-state-hover .k-link .k-i-arrow-e {
  background-position: -16px -48px;
}
.km-pane-wrapper .k-pager-numbers .k-link,
.km-pane-wrapper .k-pager-numbers .k-state-selected,
.km-pane-wrapper .k-pager-wrap > .k-link {
  border-radius: 0;
}
.km-pane-wrapper .k-pager-numbers .k-link,
.km-pane-wrapper .k-pager-wrap > .k-link,
.km-pane-wrapper .k-pager-wrap > .k-pager-info {
  padding: .571em .86em;
}
.km-pane-wrapper .k-pager-numbers .k-state-selected {
  padding: .971em .86em .571em;
}
.km-pane-wrapper .k-pager-numbers .k-link {
  min-width: 2.429em;
}
.k-ie7 input.k-textbox {
  line-height: 2.694em;
  height: 2.694em;
}

/*
* Kendo UI v2015.3.1002 (http://www.telerik.com/kendo-ui)
* Copyright 2015 Telerik AD. All rights reserved.
*
* Kendo UI commercial licenses may be obtained at
* http://www.telerik.com/purchase/license-agreement/kendo-ui-complete
* If you do not own a commercial license, this file shall be governed by the trial license terms.
*/
/* Kendo skin */
.ktb-theme-id-material {
  opacity: 0;
}
.ktb-var-accent {
  color: #3f51b5;
}
.ktb-var-base {
  color: #ffffff;
}
.ktb-var-background {
  color: #ffffff;
}
.ktb-var-border-radius {
  border-radius: 2px;
}
.ktb-var-normal-background {
  color: #ffffff;
}
.ktb-var-normal-gradient {
  background-image: none;
}
.ktb-var-normal-text-color {
  color: #444444;
}
.ktb-var-hover-background {
  color: #ebebeb;
}
.ktb-var-hover-gradient {
  background-image: none;
}
.ktb-var-hover-text-color {
  color: #444444;
}
.ktb-var-selected-background {
  color: #00b0ff;
}
.ktb-var-selected-gradient {
  background-image: none;
}
.ktb-var-selected-text-color {
  color: #3f51b5;
}
.ktb-var-error {
  color: #ffcdd2;
}
.ktb-var-warning {
  color: #fdefba;
}
.ktb-var-success {
  color: #c8e6c9;
}
.ktb-var-info {
  color: #bbdefb;
}
.ktb-var-series-a {
  color: #3f51b5;
}
.ktb-var-series-b {
  color: #03a9f4;
}
.ktb-var-series-c {
  color: #4caf50;
}
.ktb-var-series-d {
  color: #f9ce1d;
}
.ktb-var-series-e {
  color: #ff9800;
}
.ktb-var-series-f {
  color: #ff5722;
}
.k-grid-norecords-template {
  background-color: #ffffff;
  border: 1px solid #e6e6e6;
}
.k-in,
.k-item,
.k-window-action {
  border-color: transparent;
}
/* main colors */
.k-block,
.k-widget {
  background-color: #ffffff;
}
.k-block,
.k-widget,
.k-input,
.k-textbox,
.k-group,
.k-content,
.k-header,
.k-filter-row > th,
.k-editable-area,
.k-separator,
.k-colorpicker .k-i-arrow-s,
.k-textbox > input,
.k-autocomplete,
.k-dropdown-wrap,
.k-toolbar,
.k-group-footer td,
.k-grid-footer,
.k-footer-template td,
.k-state-default,
.k-state-default .k-select,
.k-state-disabled,
.k-grid-header,
.k-grid-header-wrap,
.k-grid-header-locked,
.k-grid-footer-locked,
.k-grid-content-locked,
.k-grid td,
.k-grid td.k-state-selected,
.k-grid-footer-wrap,
.k-pager-wrap,
.k-pager-wrap .k-link,
.k-pager-refresh,
.k-grouping-header,
.k-grouping-header .k-group-indicator,
.k-panelbar > .k-item > .k-link,
.k-panel > .k-item > .k-link,
.k-panelbar .k-panel,
.k-panelbar .k-content,
.k-treemap-tile,
.k-calendar th,
.k-slider-track,
.k-splitbar,
.k-dropzone-active,
.k-tiles,
.k-toolbar,
.k-tooltip,
.k-button-group .k-tool,
.k-upload-files {
  border-color: #e6e6e6;
}
.k-group,
.k-toolbar,
.k-grouping-header,
.k-pager-wrap,
.k-group-footer td,
.k-grid-footer,
.k-footer-template td,
.k-widget .k-status,
.k-calendar th,
.k-dropzone-hovered,
.k-widget.k-popup {
  background-color: #3f51b5;
}
.k-grouping-row td,
td.k-group-cell,
.k-resize-handle-inner {
  background-color: #3f51b5;
}
.k-list-container {
  border-color: rgba(0, 0, 0, 0.2);
  background-color: #ffffff;
}
.k-content,
.k-editable-area,
.k-panelbar > li.k-item,
.k-panel > li.k-item,
.k-tiles {
  background-color: #ffffff;
}
.k-alt,
.k-separator,
.k-resource.k-alt,
.k-pivot-layout > tbody > tr:first-child > td:first-child {
  background-color: #fafafa;
}
.k-pivot-rowheaders .k-alt .k-alt,
.k-header.k-alt {
  background-color: #e6e6e6;
}
.k-textbox,
.k-autocomplete.k-header,
.k-dropdown-wrap.k-state-active,
.k-picker-wrap.k-state-active,
.k-numeric-wrap.k-state-active {
  border-color: #e6e6e6;
  background-color: #ffffff;
}
.k-textbox > input,
.k-autocomplete .k-input,
.k-dropdown-wrap .k-input,
.k-autocomplete.k-state-focused .k-input,
.k-dropdown-wrap.k-state-focused .k-input,
.k-picker-wrap.k-state-focused .k-input,
.k-numeric-wrap.k-state-focused .k-input {
  border-color: #e6e6e6;
}
input.k-textbox,
textarea.k-textbox,
input.k-textbox:hover,
textarea.k-textbox:hover,
.k-textbox > input {
  background: none;
}
.k-input,
input.k-textbox,
textarea.k-textbox,
input.k-textbox:hover,
textarea.k-textbox:hover,
.k-textbox > input,
.k-multiselect-wrap {
  background-color: #ffffff;
  color: #444444;
}
.k-input[readonly] {
  background-color: #ffffff;
  color: #444444;
}
.k-block,
.k-widget,
.k-popup,
.k-content,
.k-toolbar,
.k-dropdown .k-input {
  color: #444444;
}
.k-inverse {
  color: #ffffff;
}
.k-block {
  color: #ffffff;
}
.k-link:link,
.k-link:visited,
.k-nav-current.k-state-hover .k-link {
  color: #428bca;
}
.k-tabstrip-items .k-link,
.k-panelbar > li > .k-link {
  color: #444444;
}
.k-header,
.k-treemap-title,
.k-grid-header .k-header > .k-link {
  color: #ffffff;
}
.k-header,
.k-grid-header,
.k-toolbar,
.k-dropdown-wrap,
.k-picker-wrap,
.k-numeric-wrap,
.k-grouping-header,
.k-pager-wrap,
.k-textbox,
.k-button,
.k-progressbar,
.k-draghandle,
.k-autocomplete,
.k-state-highlight,
.k-tabstrip-items .k-item,
.k-panelbar .k-tabstrip-items .k-item,
.km-pane-wrapper > .km-pane > .km-view > .km-content {
  background-image: none;
  background-position: 50% 50%;
  background-color: #3f51b5;
}
.k-widget.k-tooltip {
  background-image: none;
}
.k-block,
.k-header,
.k-grid-header,
.k-toolbar,
.k-grouping-header,
.k-pager-wrap,
.k-button,
.k-draghandle,
.k-treemap-tile,
html .km-pane-wrapper .k-header {
  background-color: #3f51b5;
}
/* icons */
.k-icon:hover,
.k-state-hover .k-icon,
.k-state-selected .k-icon,
.k-state-focused .k-icon,
.k-column-menu .k-state-hover .k-sprite,
.k-column-menu .k-state-active .k-sprite,
.k-pager-numbers .k-current-page .k-link:hover:after,
.k-scheduler-toolbar > ul.k-scheduler-views > li.k-current-view.k-state-hover > .k-link:after {
  opacity: 1;
}
.k-icon,
.k-state-disabled .k-icon,
.k-column-menu .k-sprite,
.k-pager-numbers .k-current-page .k-link:after,
.k-scheduler-toolbar > ul.k-scheduler-views > li.k-current-view > .k-link:after {
  opacity: 0.7;
}
.k-mobile-list .k-check:checked,
.k-mobile-list .k-edit-field [type=checkbox]:checked,
.k-mobile-list .k-edit-field [type=radio]:checked {
  opacity: 0.7;
}
.k-tool {
  border-color: transparent;
}
.k-icon,
.k-tool-icon,
.k-grouping-dropclue,
.k-drop-hint,
.k-column-menu .k-sprite,
.k-grid-mobile .k-resize-handle-inner:before,
.k-grid-mobile .k-resize-handle-inner:after,
.k-pager-numbers .k-current-page .k-link:after,
.k-scheduler-toolbar > ul.k-scheduler-views > li.k-current-view > .k-link:after,
.k-gantt-views > .k-current-view > .k-link:after {
  background-image: url('Material/sprite.png');
  border-color: transparent;
}
/* IE will ignore the above selectors if these are added too */
.k-mobile-list .k-check:checked,
.k-mobile-list .k-edit-field [type=checkbox]:checked,
.k-mobile-list .k-edit-field [type=radio]:checked {
  background-image: url('Material/sprite.png');
  border-color: transparent;
}
.k-loading,
.k-state-hover .k-loading {
  background-image: url('Material/loading.gif');
  background-position: 50% 50%;
}
.k-loading-image {
  background-image: url('Material/loading-image.gif');
}
.k-loading-color {
  background-color: #ffffff;
}
.k-button {
  color: #444444;
  border-color: #fafafa;
  background-color: #fafafa;
}
.k-draghandle {
  border-color: #3f51b5;
  background-color: #3f51b5;
  -webkit-box-shadow: none;
          box-shadow: none;
}
.k-draghandle:hover {
  border-color: #3f51b5;
  background-color: #3f51b5;
  -webkit-box-shadow: 0 0 0 8px rgba(63, 81, 181, 0.3);
          box-shadow: 0 0 0 8px rgba(63, 81, 181, 0.3);
}
/* Scheduler */
.k-scheduler {
  color: #ffffff;
  background-color: #ffffff;
}
.k-scheduler-layout {
  color: #444444;
}
.k-scheduler-datecolumn,
.k-scheduler-groupcolumn {
  background-color: #ffffff;
  color: #444444;
}
.k-scheduler-times tr,
.k-scheduler-times th,
.k-scheduler-table td,
.k-scheduler-header th,
.k-scheduler-header-wrap,
.k-scheduler-times {
  border-color: #e6e6e6;
}
.k-nonwork-hour {
  background-color: #fafafa;
}
.k-gantt .k-nonwork-hour {
  background-color: rgba(0, 0, 0, 0.02);
}
.k-gantt .k-header.k-nonwork-hour {
  background-color: rgba(0, 0, 0, 0.2);
}
.k-scheduler-table .k-today,
.k-today > .k-scheduler-datecolumn,
.k-today > .k-scheduler-groupcolumn {
  background-color: #e9e9e9;
}
.k-scheduler-now-arrow {
  border-left-color: #eed3d7;
}
.k-scheduler-now-line {
  background-color: #eed3d7;
}
.k-event,
.k-task-complete {
  border-color: #606fc7;
  background: #606fc7 0 -257px none repeat-x;
  color: #ffffff;
}
.k-event-inverse {
  color: #444444;
}
.k-event.k-state-selected {
  background-position: 0 0;
  -webkit-box-shadow: 0 0 0 2px #444444;
          box-shadow: 0 0 0 2px #444444;
}
.k-ie7 .k-event .k-resize-handle,
.k-event .k-resize-handle:after,
.k-ie7 .k-task-single .k-resize-handle,
.k-task-single .k-resize-handle:after {
  background-color: #ffffff;
}
.k-scheduler-marquee:before,
.k-scheduler-marquee:after {
  border-color: #ffffff;
}
.k-panelbar .k-content,
.k-panelbar .k-panel,
.k-panelbar .k-item {
  background-color: #ffffff;
  color: #444444;
  border-color: #cccccc;
}
.k-panelbar > li > .k-link {
  color: #444444;
}
.k-panelbar > .k-item > .k-link {
  border-color: #cccccc;
}
.k-panel > li.k-item {
  background-color: #ffffff;
}
/* states */
.k-state-active,
.k-state-active:hover,
.k-active-filter,
.k-tabstrip .k-state-active {
  background-color: #ffffff;
  border-color: #cccccc;
  color: #444444;
}
.k-fieldselector .k-list-container {
  background-color: #ffffff;
}
.k-button:focus,
.k-button.k-state-focused {
  border-color: #dbdbdb;
}
.k-button:hover,
.k-button.k-state-hover {
  color: #444444;
  border-color: #ebebeb;
  background-color: #ebebeb;
}
.k-button:active,
.k-button.k-state-active {
  color: #3f51b5;
  background-color: #dbdbdb;
  border-color: #dbdbdb;
}
.k-button:active:hover,
.k-button.k-state-active:hover {
  color: #ffffff;
  border-color: #5c6bc0;
  background-color: #5c6bc0;
}
.k-button:focus:not(.k-state-disabled):not([disabled]) {
  -webkit-box-shadow: 0 6px 17px 0 #c4c4c4;
          box-shadow: 0 6px 17px 0 #c4c4c4;
}
.k-button:focus:active:not(.k-state-disabled):not([disabled]) {
  -webkit-box-shadow: 0 6px 17px 0 rgba(235, 235, 235, 0.3);
          box-shadow: 0 6px 17px 0 rgba(235, 235, 235, 0.3);
}
.k-menu .k-state-hover > .k-state-active {
  background-color: transparent;
}
.k-state-highlight {
  background: #ffffff;
  color: #444444;
}
.k-state-focused,
.k-grouping-row .k-state-focused {
  border-color: #67afe9;
}
.k-calendar .k-link {
  color: #444444;
}
.k-calendar .k-footer {
  padding: 0;
}
.k-calendar .k-footer .k-nav-today {
  color: #444444;
  text-decoration: none;
  background-color: #ffffff;
}
.k-calendar .k-footer .k-nav-today:hover,
.k-calendar .k-footer .k-nav-today.k-state-hover {
  background-color: #ffffff;
  text-decoration: underline;
}
.k-calendar .k-footer .k-nav-today:active {
  background-color: #ffffff;
}
.k-calendar .k-link.k-nav-fast {
  color: #444444;
}
.k-calendar .k-nav-fast.k-state-hover {
  text-decoration: none;
  background-color: #ebebeb;
  color: #444444;
}
.k-calendar .k-link.k-state-hover,
.k-window-titlebar .k-link {
  border-radius: 50%;
}
.k-calendar .k-footer .k-link {
  border-radius: 0;
}
.k-calendar th {
  background-color: #3f51b5;
}
.k-calendar-container.k-group {
  border-color: rgba(0, 0, 0, 0.2);
}
.k-state-selected,
.k-state-selected:link,
.k-state-selected:visited,
.k-list > .k-state-selected,
.k-list > .k-state-highlight,
.k-panel > .k-state-selected,
.k-ghost-splitbar-vertical,
.k-ghost-splitbar-horizontal,
.k-draghandle.k-state-selected:hover,
.k-scheduler .k-scheduler-toolbar .k-state-selected,
.k-scheduler .k-today.k-state-selected,
.k-marquee-color {
  color: #3f51b5;
  background-color: #ffffff;
  border-color: #ffffff;
}
.k-virtual-item.k-first,
.k-group-header + .k-list > .k-item.k-first,
.k-static-header + .k-list > .k-item.k-first {
  border-top-color: #ebebeb;
}
.k-popup > .k-group-header,
.k-popup > .k-virtual-wrap > .k-group-header {
  background: #ebebeb;
  color: #3f51b5;
}
.k-popup .k-list .k-item > .k-group {
  background: #ebebeb;
  color: #3f51b5;
  border-bottom-left-radius: 1px;
}
.k-marquee-text {
  color: #3f51b5;
}
.k-state-focused,
.k-list > .k-state-focused,
.k-listview > .k-state-focused,
.k-grid-header th.k-state-focused,
td.k-state-focused,
.k-button.k-state-focused {
  -webkit-box-shadow: 0 6px 17px 0 rgba(0, 0, 0, 0.3);
          box-shadow: 0 6px 17px 0 rgba(0, 0, 0, 0.3);
}
.k-state-focused.k-state-selected,
.k-list > .k-state-focused.k-state-selected,
.k-listview > .k-state-focused.k-state-selected,
td.k-state-focused.k-state-selected {
  -webkit-box-shadow: none;
          box-shadow: none;
}
.k-ie8 .k-panelbar span.k-state-focused,
.k-ie8 .k-menu li.k-state-focused,
.k-ie8 .k-listview > .k-state-focused,
.k-ie8 .k-grid-header th.k-state-focused,
.k-ie8 td.k-state-focused,
.k-ie8 .k-tool.k-state-hover,
.k-ie8 .k-button:focus,
.k-ie8 .k-button.k-state-focused,
.k-ie7 .k-panelbar span.k-state-focused,
.k-ie7 .k-menu li.k-state-focused,
.k-ie7 .k-listview > .k-state-focused,
.k-ie7 .k-grid-header th.k-state-focused,
.k-ie7 td.k-state-focused,
.k-ie7 .k-tool.k-state-hover,
.k-ie7 .k-button:focus,
.k-ie7 .k-button.k-state-focused {
  background-color: #ebebeb;
}
.k-list > .k-state-selected.k-state-focused,
.k-list-optionlabel.k-state-selected.k-state-focused {
  -webkit-box-shadow: none;
          box-shadow: none;
}
.k-state-selected > .k-link,
.k-panelbar > li > .k-state-selected,
.k-panelbar > li.k-state-default > .k-link.k-state-selected {
  color: #3f51b5;
}
.k-state-hover,
.k-state-hover:hover,
.k-splitbar-horizontal-hover:hover,
.k-splitbar-vertical-hover:hover,
.k-list > .k-state-hover,
.k-scheduler .k-scheduler-toolbar ul li.k-state-hover,
.k-pager-wrap .k-link:hover,
.k-dropdown .k-state-focused,
.k-filebrowser-dropzone,
.k-mobile-list .k-item > .k-link:active,
.k-mobile-list .k-item > .k-label:active,
.k-mobile-list .k-edit-label.k-check:active,
.k-mobile-list .k-recur-view .k-check:active {
  color: #444444;
  background-color: #ebebeb;
  border-color: #ebebeb;
}
/* this selector should be used separately, otherwise old IEs ignore the whole rule */
.k-mobile-list .k-scheduler-timezones .k-edit-field:nth-child(2):active {
  color: #444444;
  background-color: #ebebeb;
  border-color: #ebebeb;
}
.k-ie7 .k-window-titlebar .k-state-hover,
.k-ie8 .k-window-titlebar .k-state-hover {
  border-color: #ebebeb;
}
.k-state-hover > .k-select,
.k-state-focused > .k-select {
  border-color: #ebebeb;
}
.k-button:hover,
.k-button.k-state-hover,
.k-button:focus,
.k-button.k-state-focused,
.k-textbox:hover,
.k-state-hover,
.k-state-hover:hover,
.k-pager-wrap .k-link:hover,
.k-other-month.k-state-hover .k-link,
div.k-filebrowser-dropzone em,
.k-draghandle:hover {
  background-image: none;
}
.k-pager-wrap {
  background-color: #3f51b5;
  color: #ffffff;
}
.k-autocomplete.k-state-active,
.k-picker-wrap.k-state-active,
.k-numeric-wrap.k-state-active,
.k-dropdown-wrap.k-state-active,
.k-state-active,
.k-state-active:hover,
.k-state-active > .k-link,
.k-button:active,
.k-panelbar > .k-item > .k-state-focused {
  background-image: none;
}
.k-state-selected,
.k-button:active,
.k-button.k-state-active,
.k-draghandle.k-state-selected:hover {
  background-image: none;
}
.k-button:active,
.k-button.k-state-active,
.k-draghandle.k-state-selected:hover {
  background-position: 50% 50%;
}
.k-tool-icon {
  background-image: url('Material/sprite.png');
}
.k-state-hover > .k-link,
.k-other-month.k-state-hover .k-link,
div.k-filebrowser-dropzone em {
  color: #444444;
}
.k-autocomplete.k-state-hover,
.k-autocomplete.k-state-focused,
.k-picker-wrap.k-state-hover,
.k-picker-wrap.k-state-focused,
.k-numeric-wrap.k-state-hover,
.k-numeric-wrap.k-state-focused,
.k-dropdown-wrap.k-state-hover,
.k-dropdown-wrap.k-state-focused {
  background-color: #ffffff;
  background-image: none;
  background-position: 50% 50%;
  border-color: #ebebeb;
}
.km-pane-wrapper .k-mobile-list input:not([type="checkbox"]):not([type="radio"]),
.km-pane-wrapper .km-pane .k-mobile-list select:not([multiple]),
.km-pane-wrapper .k-mobile-list textarea,
.k-dropdown .k-state-focused .k-input {
  color: #444444;
}
.k-dropdown .k-state-hover .k-input {
  color: #444444;
}
.k-state-error {
  border-color: #eed3d7;
  background-color: #f2dede;
  color: #b94a48;
}
.k-state-disabled {
  opacity: .7;
}
.k-ie8 .k-state-disabled {
  filter: alpha(opacity=70);
}
.k-tile-empty.k-state-selected,
.k-loading-mask.k-state-selected {
  border-width: 0;
  background-image: none;
  background-color: transparent;
}
.k-state-disabled,
.k-state-disabled .k-link,
.k-state-disabled .k-button,
.k-other-month,
.k-other-month .k-link,
.k-dropzone em,
.k-dropzone .k-upload-status,
.k-tile-empty strong,
.k-slider .k-draghandle {
  color: #999999;
}
/* Progressbar */
.k-progressbar-indeterminate {
  background: url('Material/indeterminate.gif');
}
.k-progressbar-indeterminate .k-progress-status-wrap,
.k-progressbar-indeterminate .k-state-selected {
  display: none;
}
/* Slider */
.k-slider-track {
  background-color: #e6e6e6;
}
.k-slider-selection {
  background-color: #ffffff;
}
.k-slider-horizontal .k-tick {
  background-image: url('Material/slider-h.gif');
}
.k-slider-vertical .k-tick {
  background-image: url('Material/slider-v.gif');
}
/* Tooltip */
.k-widget.k-tooltip {
  border-color: rgba(100, 100, 100, 0.9);
  background-color: rgba(100, 100, 100, 0.9);
  color: #ffffff;
}
.k-widget.k-tooltip-validation {
  border-color: #fdefba;
  background-color: #fdefba;
  color: #816704;
}
/* Bootstrap theme fix */
.input-prepend .k-tooltip-validation,
.input-append .k-tooltip-validation {
  font-size: 12px;
  position: relative;
  top: 3px;
}
.k-callout-n {
  border-bottom-color: rgba(100, 100, 100, 0.9);
}
.k-callout-w {
  border-right-color: rgba(100, 100, 100, 0.9);
}
.k-callout-s {
  border-top-color: rgba(100, 100, 100, 0.9);
}
.k-callout-e {
  border-left-color: rgba(100, 100, 100, 0.9);
}
.k-tooltip-validation .k-callout-n {
  border-bottom-color: #fdefba;
}
.k-tooltip-validation .k-callout-w {
  border-right-color: #fdefba;
}
.k-tooltip-validation .k-callout-s {
  border-top-color: #fdefba;
}
.k-tooltip-validation .k-callout-e {
  border-left-color: #fdefba;
}
/* Splitter */
.k-splitbar {
  background-color: #fafafa;
}
.k-restricted-size-vertical,
.k-restricted-size-horizontal {
  background-color: #b94a48;
}
/* Upload */
.k-file {
  background-color: #ffffff;
  border-color: #e6e6e6;
}
.k-file-progress {
  color: #0d7fdd;
}
.k-file-progress .k-progress {
  background-color: #bbdefb;
}
.k-file-success {
  color: #479b49;
}
.k-file-success .k-progress {
  background-color: #c8e6c9;
}
.k-file-error {
  color: #ff011a;
}
.k-file-error .k-progress {
  background-color: #ffcdd2;
}
/* ImageBrowser */
.k-tile {
  border-color: #ffffff;
}
.k-textbox:hover,
.k-tiles li.k-state-hover {
  border-color: #ebebeb;
}
.k-tiles li.k-state-selected {
  border-color: #ffffff;
}
.k-filebrowser .k-tile .k-folder,
.k-filebrowser .k-tile .k-file {
  background-image: url('Material/imagebrowser.png');
  -webkit-background-size: auto auto;
          background-size: auto auto;
}
/* TreeMap */
.k-leaf,
.k-leaf.k-state-hover:hover {
  color: #fff;
}
.k-leaf.k-inverse,
.k-leaf.k-inverse.k-state-hover:hover {
  color: #000;
}
/* Shadows */
.k-widget,
.k-button {
  -webkit-box-shadow: none;
          box-shadow: none;
}
.k-slider,
.k-treeview,
.k-upload {
  -webkit-box-shadow: none;
          box-shadow: none;
}
.k-state-hover {
  -webkit-box-shadow: 0 1px 0 rgba(255, 255, 255, 0.2);
          box-shadow: 0 1px 0 rgba(255, 255, 255, 0.2);
}
.k-textbox:focus,
.k-autocomplete.k-state-focused,
.k-dropdown-wrap.k-state-focused,
.k-picker-wrap.k-state-focused,
.k-numeric-wrap.k-state-focused {
  -webkit-box-shadow: 0 2px 6px rgba(0, 0, 0, 0.2), 0 2px 3px rgba(0, 0, 0, 0.05);
          box-shadow: 0 2px 6px rgba(0, 0, 0, 0.2), 0 2px 3px rgba(0, 0, 0, 0.05);
}
.k-state-selected {
  -webkit-box-shadow: 0 1px 1px rgba(0, 0, 0, 0.075) inset;
          box-shadow: 0 1px 1px rgba(0, 0, 0, 0.075) inset;
}
.k-state-active {
  -webkit-box-shadow: none;
          box-shadow: none;
}
.k-grid td.k-state-selected.k-state-focused {
  background-color: #ffffff;
}
.k-popup,
.k-menu .k-menu-group,
.k-grid .k-filter-options,
.k-time-popup,
.k-datepicker-calendar,
.k-autocomplete.k-state-border-down,
.k-autocomplete.k-state-border-up,
.k-dropdown-wrap.k-state-active,
.k-picker-wrap.k-state-active,
.k-multiselect.k-state-focused,
.k-filebrowser .k-image,
.k-tooltip {
  -webkit-box-shadow: 0 2px 2px 0 rgba(0, 0, 0, 0.2);
          box-shadow: 0 2px 2px 0 rgba(0, 0, 0, 0.2);
}
.k-calendar-container.k-popup {
  -webkit-box-shadow: 0 0px 6px 1px rgba(0, 0, 0, 0.2);
          box-shadow: 0 0px 6px 1px rgba(0, 0, 0, 0.2);
}
.k-treemap-tile.k-state-hover {
  -webkit-box-shadow: inset 0 0 0 3px #e6e6e6;
          box-shadow: inset 0 0 0 3px #e6e6e6;
}
/* Window */
.k-window {
  border-color: rgba(0, 0, 0, 0.2);
  -webkit-box-shadow: 1px 1px 7px 1px rgba(128, 128, 128, 0.2);
          box-shadow: 1px 1px 7px 1px rgba(128, 128, 128, 0.2);
  background-color: #ffffff;
}
.k-window.k-state-focused {
  border-color: rgba(0, 0, 0, 0.2);
  -webkit-box-shadow: 1px 1px 7px 1px rgba(0, 0, 0, 0.2);
          box-shadow: 1px 1px 7px 1px rgba(0, 0, 0, 0.2);
}
.k-window.k-window-maximized,
.k-window-maximized .k-window-titlebar,
.k-window-maximized .k-window-content {
  border-radius: 0;
}
.k-shadow {
  -webkit-box-shadow: 0 1px 2px 0 rgba(0, 0, 0, 0.2);
          box-shadow: 0 1px 2px 0 rgba(0, 0, 0, 0.2);
}
.k-inset {
  -webkit-box-shadow: inset 0 1px 1px rgba(0, 0, 0, 0.2);
          box-shadow: inset 0 1px 1px rgba(0, 0, 0, 0.2);
}
/* Selection */
.k-editor-inline ::-moz-selection {
  background-color: #3f51b5;
  text-shadow: none;
  color: #fff;
}
.k-editor-inline ::selection {
  background-color: #3f51b5;
  text-shadow: none;
  color: #fff;
}
.k-editor-inline ::-moz-selection {
  background-color: #3f51b5;
  text-shadow: none;
  color: #fff;
}
/* Notification */
.k-widget.k-notification.k-notification-info {
  background-color: #bbdefb;
  color: #2b98f3;
  border-color: #bbdefb;
}
.k-widget.k-notification.k-notification-success {
  background-color: #c8e6c9;
  color: #5fb662;
  border-color: #c8e6c9;
}
.k-widget.k-notification.k-notification-warning {
  background-color: #fdefba;
  color: #f9cd25;
  border-color: #fdefba;
}
.k-widget.k-notification.k-notification-error {
  background-color: #ffcdd2;
  color: #ff3448;
  border-color: #ffcdd2;
}
/* Gantt */
.k-gantt .k-treelist {
  background: #fafafa;
}
.k-gantt .k-treelist .k-alt {
  background-color: #e0e0e0;
}
.k-gantt .k-treelist .k-state-selected,
.k-gantt .k-treelist .k-state-selected td,
.k-gantt .k-treelist .k-alt.k-state-selected,
.k-gantt .k-treelist .k-alt.k-state-selected > td {
  background-color: #ffffff;
}
.k-task-dot:after {
  background-color: #444444;
  border-color: #444444;
}
.k-task-dot:hover:after {
  background-color: #ffffff;
}
.k-task-summary {
  border-color: #98a2db;
  background: #98a2db;
}
.k-task-milestone,
.k-task-summary-complete {
  border-color: #444444;
  background: #444444;
}
.k-state-selected.k-task-summary {
  border-color: #98a2db;
  background: #98a2db;
}
.k-state-selected.k-task-milestone,
.k-state-selected .k-task-summary-complete {
  border-color: #ffffff;
  background: #ffffff;
}
.k-task-single {
  background-color: #7a87d1;
  border-color: #606fc7;
  color: #ffffff;
}
.k-state-selected.k-task-single {
  border-color: #ffffff;
}
.k-line {
  background-color: #444444;
  color: #444444;
}
.k-state-selected.k-line {
  background-color: #ffffff;
  color: #ffffff;
}
.k-resource {
  background-color: #ffffff;
}
/* PivotGrid */
.k-i-kpi-decrease,
.k-i-kpi-denied,
.k-i-kpi-equal,
.k-i-kpi-hold,
.k-i-kpi-increase,
.k-i-kpi-open {
  background-image: url('Material/sprite_kpi.png');
}
/* Border radius */
.k-block,
.k-button,
.k-textbox,
.k-drag-clue,
.k-touch-scrollbar,
.k-window,
.k-window-titleless .k-window-content,
.k-window-action,
.k-inline-block,
.k-grid .k-filter-options,
.k-grouping-header .k-group-indicator,
.k-autocomplete,
.k-multiselect,
.k-combobox,
.k-dropdown,
.k-dropdown-wrap,
.k-datepicker,
.k-timepicker,
.k-colorpicker,
.k-datetimepicker,
.k-notification,
.k-numerictextbox,
.k-picker-wrap,
.k-numeric-wrap,
.k-colorpicker,
.k-list-container,
.k-calendar-container,
.k-calendar td,
.k-calendar .k-link,
.k-treeview .k-in,
.k-editor-inline,
.k-tooltip,
.k-tile,
.k-slider-track,
.k-slider-selection,
.k-upload {
  border-radius: 2px;
}
.k-tool {
  text-align: center;
  vertical-align: middle;
}
.k-toolbar .k-split-button .k-button {
  border-radius: 2px 0 0 2px;
}
.k-rtl .k-tool.k-group-start,
.k-rtl .k-toolbar .k-split-button .k-button,
.k-rtl .k-toolbar .k-button-group .k-group-start {
  border-radius: 0 2px 2px 0;
}
.k-toolbar .k-split-button .k-split-button-arrow {
  border-radius: 0 2px 2px 0;
}
.k-rtl .k-tool.k-group-end,
.k-rtl .k-toolbar .k-button-group .k-group-end,
.k-rtl .k-toolbar .k-split-button .k-split-button-arrow {
  border-radius: 2px 0 0 2px;
}
.k-calendar-container.k-state-border-up,
.k-list-container.k-state-border-up,
.k-autocomplete.k-state-border-up,
.k-multiselect.k-state-border-up,
.k-dropdown-wrap.k-state-border-up,
.k-picker-wrap.k-state-border-up,
.k-numeric-wrap.k-state-border-up,
.k-window-content,
.k-filter-menu {
  border-radius: 0 0 2px 2px;
}
.k-autocomplete.k-state-border-up .k-input,
.k-dropdown-wrap.k-state-border-up .k-input,
.k-picker-wrap.k-state-border-up .k-input,
.k-picker-wrap.k-state-border-up .k-selected-color,
.k-numeric-wrap.k-state-border-up .k-input {
  border-radius: 0 0 0 2px;
}
.k-multiselect.k-state-border-up .k-multiselect-wrap {
  border-radius: 0 0 2px 2px;
}
.k-window-titlebar,
.k-block > .k-header,
.k-tabstrip-items .k-item,
.k-panelbar .k-tabstrip-items .k-item,
.k-tabstrip-items .k-link,
.k-calendar-container.k-state-border-down,
.k-list-container.k-state-border-down,
.k-autocomplete.k-state-border-down,
.k-multiselect.k-state-border-down,
.k-dropdown-wrap.k-state-border-down,
.k-picker-wrap.k-state-border-down,
.k-numeric-wrap.k-state-border-down {
  border-radius: 2px 2px 0 0;
}
.k-split-button.k-state-border-down > .k-button {
  border-radius: 2px 0 0 0;
}
.k-split-button.k-state-border-up > .k-button {
  border-radius: 0 0 0 2px;
}
.k-split-button.k-state-border-down > .k-split-button-arrow {
  border-radius: 0 2px 0 0;
}
.k-split-button.k-state-border-up > .k-split-button-arrow {
  border-radius: 0 0 2px 0;
}
.k-dropdown-wrap .k-input,
.k-picker-wrap .k-input,
.k-numeric-wrap .k-input {
  border-radius: 1px 0 0 1px;
}
.k-rtl .k-dropdown-wrap .k-input,
.k-rtl .k-picker-wrap .k-input,
.k-rtl .k-numeric-wrap .k-input {
  border-radius: 0 1px 1px 0;
}
.k-numeric-wrap .k-link {
  border-radius: 0 1px 0 0;
}
.k-numeric-wrap .k-link + .k-link {
  border-radius: 0 0 1px 0;
}
.k-colorpicker .k-selected-color {
  border-radius: 1px 0 0 1px;
}
.k-rtl .k-colorpicker .k-selected-color {
  border-radius: 0 1px 1px 0;
}
.k-autocomplete.k-state-border-down .k-input {
  border-radius: 2px 2px 0 0;
}
.k-dropdown-wrap.k-state-border-down .k-input,
.k-picker-wrap.k-state-border-down .k-input,
.k-picker-wrap.k-state-border-down .k-selected-color,
.k-numeric-wrap.k-state-border-down .k-input {
  border-radius: 2px 0 0 0;
}
.k-numeric-wrap .k-link.k-state-selected {
  background-color: #ebebeb;
}
.k-multiselect.k-state-border-down .k-multiselect-wrap {
  border-radius: 1px 1px 0 0;
}
.k-dropdown-wrap .k-select,
.k-picker-wrap .k-select,
.k-numeric-wrap .k-select,
.k-datetimepicker .k-select + .k-select,
.k-list-container.k-state-border-right {
  border-radius: 0 2px 2px 0;
}
.k-rtl .k-dropdown-wrap .k-select,
.k-rtl .k-picker-wrap .k-select,
.k-rtl .k-numeric-wrap .k-select,
.k-rtl .k-datetimepicker .k-select + .k-select,
.k-rtl .k-list-container.k-state-border-right {
  border-radius: 2px 0 0 2px;
}
.k-numeric-wrap.k-expand-padding .k-input {
  border-radius: 2px;
}
.k-textbox > input,
.k-autocomplete .k-input,
.k-multiselect-wrap {
  border-radius: 1px;
}
.k-list .k-state-hover,
.k-list .k-state-focused,
.k-list .k-state-highlight,
.k-list .k-state-selected,
.k-fieldselector .k-list .k-item,
.k-list-optionlabel,
.k-dropzone {
  border-radius: 1px;
}
.k-slider .k-button,
.k-grid .k-slider .k-button {
  border-radius: 13px;
}
.k-draghandle {
  border-radius: 13px;
}
.k-scheduler-toolbar > ul li:first-child,
.k-scheduler-toolbar > ul li:first-child .k-link,
.k-scheduler-toolbar > ul.k-scheduler-views li:first-child + li,
.k-scheduler-toolbar > ul.k-scheduler-views li:first-child + li .k-link {
  border-radius: 2px 0 0 2px;
}
.k-rtl .k-scheduler-toolbar > ul li:first-child,
.k-rtl .k-scheduler-toolbar > ul li:first-child .k-link,
.k-rtl .k-scheduler-toolbar > ul.k-scheduler-views li:first-child + li,
.k-rtl .k-scheduler-toolbar > ul.k-scheduler-views li:first-child + li .k-link,
.km-view.k-popup-edit-form .k-scheduler-toolbar > ul li:last-child,
.km-view.k-popup-edit-form .k-scheduler-toolbar > ul li:last-child .k-link {
  border-radius: 0 2px 2px 0;
}
.k-scheduler-phone .k-scheduler-toolbar > ul li.k-nav-today,
.k-scheduler-phone .k-scheduler-toolbar > ul li.k-nav-today .k-link,
.k-edit-field > .k-scheduler-navigation {
  border-radius: 2px;
}
.k-scheduler-toolbar .k-nav-next,
.k-scheduler-toolbar ul + ul li:last-child,
.k-scheduler-toolbar .k-nav-next .k-link,
.k-scheduler-toolbar ul + ul li:last-child .k-link {
  border-top-right-radius: 2px;
  border-bottom-right-radius: 2px;
}
.k-rtl .k-scheduler-toolbar .k-nav-next,
.k-rtl .k-scheduler-toolbar ul + ul li:last-child,
.k-rtl .k-scheduler-toolbar .k-nav-next .k-link,
.k-rtl .k-scheduler-toolbar ul + ul li:last-child .k-link {
  border-radius: 2px 0 0 2px;
}
.k-scheduler div.k-scheduler-footer ul li,
.k-scheduler div.k-scheduler-footer .k-link {
  border-radius: 2px;
}
.k-more-events,
.k-event,
.k-task-single,
.k-task-complete,
.k-event .k-link {
  border-radius: 1px;
}
.k-scheduler-mobile .k-event {
  border-radius: 0px;
}
/* Adaptive Grid */
.k-grid-mobile .k-column-active + th.k-header {
  border-left-color: #444444;
}
html .km-pane-wrapper .km-widget,
.k-ie .km-pane-wrapper .k-widget,
.k-ie .km-pane-wrapper .k-group,
.k-ie .km-pane-wrapper .k-content,
.k-ie .km-pane-wrapper .k-header,
.k-ie .km-pane-wrapper .k-popup-edit-form .k-edit-field .k-button,
.km-pane-wrapper .k-mobile-list .k-item,
.km-pane-wrapper .k-mobile-list .k-edit-label,
.km-pane-wrapper .k-mobile-list .k-edit-field {
  color: #444444;
}
@media screen and (-ms-high-contrast: active) and (-ms-high-contrast: none) {
  div.km-pane-wrapper a {
    color: #444444;
  }
  .km-pane-wrapper .k-icon {
    background-image: url('Material/sprite_2x.png');
    -webkit-background-size: 21.2em 21em;
            background-size: 21.2em 21em;
  }
}
.km-pane-wrapper .k-mobile-list .k-item,
.km-pane-wrapper .k-mobile-list .k-edit-field,
.km-pane-wrapper .k-mobile-list .k-recur-view > .k-edit-field .k-check {
  background-color: #ffffff;
  border-top: 1px solid #e7e7e7;
}
.km-pane-wrapper .k-mobile-list .k-edit-field textarea {
  outline-width: 0;
}
.km-pane-wrapper .k-mobile-list .k-item.k-state-selected {
  background-color: #ffffff;
  border-top-color: #ffffff;
}
.km-pane-wrapper .k-mobile-list .k-recur-view > .k-edit-field .k-check:first-child {
  border-top-color: transparent;
}
.km-pane-wrapper .k-mobile-list .k-item:last-child {
  -webkit-box-shadow: inset 0 -1px 0 #e7e7e7;
          box-shadow: inset 0 -1px 0 #e7e7e7;
}
.km-pane-wrapper .k-mobile-list > ul > li > .k-link,
.km-pane-wrapper .k-mobile-list .k-recur-view > .k-edit-label:nth-child(3),
.km-pane-wrapper #recurrence .km-scroll-container > .k-edit-label:first-child {
  color: #9b9b9b;
}
.km-pane-wrapper .k-mobile-list > ul > li > .k-link {
  border-bottom: 1px solid #e7e7e7;
}
.km-pane-wrapper .k-mobile-list .k-edit-field {
  -webkit-box-shadow: 0 1px 1px #e7e7e7;
          box-shadow: 0 1px 1px #e7e7e7;
}
.km-actionsheet .k-grid-delete,
.km-actionsheet .k-scheduler-delete,
.km-pane-wrapper .k-scheduler-delete,
.km-pane-wrapper .k-filter-menu .k-button[type=reset] {
  color: #fff;
  border-color: #eed3d7;
  background-color: red;
  background-image: -webkit-gradient(linear, left top, left bottom, from(rgba(255, 255, 255, 0.3)), to(rgba(255, 255, 255, 0.15)));
  background-image: -webkit-linear-gradient(top, rgba(255, 255, 255, 0.3), rgba(255, 255, 255, 0.15));
  background-image: linear-gradient(to bottom, rgba(255, 255, 255, 0.3), rgba(255, 255, 255, 0.15));
}
.km-actionsheet .k-grid-delete:active,
.km-actionsheet .k-scheduler-delete:active,
.km-pane-wrapper .k-scheduler-delete:active,
.km-pane-wrapper .k-filter-menu .k-button[type=reset]:active {
  background-color: #990000;
}
/* /Column Menu */
.k-autocomplete.k-state-default,
.k-picker-wrap.k-state-default,
.k-numeric-wrap.k-state-default,
.k-dropdown-wrap.k-state-default {
  background-image: none;
  background-position: 50% 50%;
  background-color: #fafafa;
  border-color: #f0f0f0;
}
.k-autocomplete.k-state-hover,
.k-picker-wrap.k-state-hover,
.k-numeric-wrap.k-state-hover,
.k-dropdown-wrap.k-state-hover {
  background-color: #ffffff;
  background-image: none;
  background-position: 50% 50%;
  border-color: #f5f5f5;
}
.k-multiselect.k-header {
  border-color: #f0f0f0;
}
.k-multiselect.k-header.k-state-hover {
  border-color: #f5f5f5;
}
.k-autocomplete.k-state-focused,
.k-picker-wrap.k-state-focused,
.k-numeric-wrap.k-state-focused,
.k-dropdown-wrap.k-state-focused,
.k-multiselect.k-header.k-state-focused {
  background-color: #ffffff;
  background-image: none;
  background-position: 50% 50%;
  border-color: #f5f5f5;
  -webkit-box-shadow: 0 2px 6px rgba(0, 0, 0, 0.2), 0 2px 3px rgba(0, 0, 0, 0.05);
          box-shadow: 0 2px 6px rgba(0, 0, 0, 0.2), 0 2px 3px rgba(0, 0, 0, 0.05);
}
.k-list-container {
  color: #444444;
}
.k-dropdown .k-input,
.k-dropdown .k-state-focused .k-input,
.k-menu .k-popup {
  color: #444444;
}
.k-state-default > .k-select {
  border-color: #f0f0f0;
}
.k-state-focused > .k-select {
  border-color: #f5f5f5;
}
.k-state-hover > .k-select {
  border-color: #f5f5f5;
}
.k-tabstrip:focus {
  -webkit-box-shadow: 0 2px 6px rgba(0, 0, 0, 0.2), 0 2px 3px rgba(0, 0, 0, 0.05);
          box-shadow: 0 2px 6px rgba(0, 0, 0, 0.2), 0 2px 3px rgba(0, 0, 0, 0.05);
}
.k-tabstrip-items .k-state-default .k-link,
.k-panelbar > li.k-state-default > .k-link {
  color: #ffffff;
}
.k-tabstrip-items .k-state-hover .k-link,
.k-panelbar > li.k-state-hover > .k-link,
.k-panelbar > li.k-state-default > .k-link.k-state-hover {
  color: #444444;
}
.k-panelbar .k-state-focused.k-state-hover {
  background: #ebebeb;
  -webkit-box-shadow: none;
          box-shadow: none;
}
.k-tabstrip-items .k-state-default,
.k-ie7 .k-tabstrip-items .k-state-default .k-loading {
  border-color: transparent;
}
.k-tabstrip-items .k-state-hover,
.k-ie7 .k-tabstrip-items .k-state-hover .k-loading {
  border-color: #ebebeb;
}
.k-tabstrip-items .k-state-active,
.k-panelbar .k-tabstrip-items .k-state-active,
.k-ie7 .k-tabstrip-items .k-state-active .k-loading {
  background-color: #ffffff;
  background-image: none;
  border-color: #cccccc;
}
.k-tabstrip .k-content.k-state-active {
  background-color: #ffffff;
  color: #444444;
}
.k-menu.k-header,
.k-menu .k-item {
  border-color: #e6e6e6;
}
.k-column-menu,
.k-column-menu .k-item,
.k-overflow-container .k-overflow-group {
  border-color: #cccccc;
}
.k-overflow-container .k-overflow-group {
  -webkit-box-shadow: inset 0 1px 0 #ffffff, 0 1px 0 #ffffff;
          box-shadow: inset 0 1px 0 #ffffff, 0 1px 0 #ffffff;
}
.k-toolbar-first-visible.k-overflow-group,
.k-overflow-container .k-overflow-group + .k-overflow-group {
  -webkit-box-shadow: 0 1px 0 #ffffff;
          box-shadow: 0 1px 0 #ffffff;
}
.k-toolbar-last-visible.k-overflow-group {
  -webkit-box-shadow: inset 0 1px 0 #ffffff;
          box-shadow: inset 0 1px 0 #ffffff;
}
.k-column-menu .k-separator {
  border-color: #cccccc;
  background-color: transparent;
}
.k-menu .k-group {
  border-color: rgba(0, 0, 0, 0.2);
}
.k-grid-filter.k-state-active {
  background-color: #ffffff;
}
.k-grouping-row td,
.k-group-footer td,
.k-grid-footer td {
  color: #ffffff;
  border-color: #cccccc;
  font-weight: bold;
}
.k-grouping-header {
  color: #ffffff;
}
.k-grid td.k-state-focused {
  -webkit-box-shadow: inset 0 0 0 1px 0 6px 17px 0 rgba(0, 0, 0, 0.3);
          box-shadow: inset 0 0 0 1px 0 6px 17px 0 rgba(0, 0, 0, 0.3);
}
.k-header,
.k-grid-header-wrap,
.k-grid .k-grouping-header,
.k-grid-header,
.k-pager-wrap,
.k-pager-wrap .k-textbox,
.k-pager-wrap .k-link,
.k-grouping-header .k-group-indicator,
.k-gantt-toolbar .k-state-default {
  border-color: #cccccc;
}
.k-primary,
.k-overflow-container .k-primary {
  color: #ffffff;
  border-color: #3f51b5;
  background-image: none;
  background-position: 50% 50%;
  background-color: #3f51b5;
  -webkit-box-shadow: none;
          box-shadow: none;
}
.k-primary:focus,
.k-primary.k-state-focused {
  color: #ffffff;
  border-color: #eff8ff;
  background-image: none;
  -webkit-box-shadow: 0 0 8px 0 #cfe6f8;
          box-shadow: 0 0 8px 0 #cfe6f8;
}
.k-primary:hover {
  color: #ffffff;
  border-color: #5c6bc0;
  background-image: none;
  background-color: #5c6bc0;
  -webkit-box-shadow: none;
          box-shadow: none;
}
.k-primary:focus:active:not(.k-state-disabled):not([disabled]),
.k-primary:focus:not(.k-state-disabled):not([disabled]) {
  -webkit-box-shadow: 0 0 8px 0 #cfe6f8;
          box-shadow: 0 0 8px 0 #cfe6f8;
}
.k-primary:active {
  color: #ffffff;
  border-color: #283593;
  background-image: none;
  background-color: #283593;
  -webkit-box-shadow: 0 6px 17px 0 rgba(0, 0, 0, 0.3);
          box-shadow: 0 6px 17px 0 rgba(0, 0, 0, 0.3);
}
.k-primary.k-state-disabled,
.k-state-disabled .k-primary,
.k-primary.k-state-disabled:hover,
.k-state-disabled .k-primary:hover,
.k-primary.k-state-disabled:hover,
.k-state-disabled .k-primary:active,
.k-primary.k-state-disabled:active {
  color: #a8a8a8;
  border-color: #eaeaea;
  background-color: #eaeaea;
  background-image: none;
  -webkit-box-shadow: none;
          box-shadow: none;
}
.k-pager-numbers .k-link,
.k-treeview .k-in {
  border-color: transparent;
}
.k-treeview .k-icon,
.k-scheduler-table .k-icon,
.k-grid .k-hierarchy-cell .k-icon {
  background-color: transparent;
  border-radius: 50%;
}
.k-scheduler-table .k-state-hover .k-icon {
  background-color: transparent;
}
.k-button:focus,
.k-split-button:focus {
  outline: none;
}
.k-split-button:focus {
  background-color: #dbdbdb;
}
.k-split-button:focus > .k-button {
  background: transparent;
  border-color: #dbdbdb;
}
.k-split-button:focus > .k-button.k-split-button-arrow {
  border-left-color: #fafafa;
}
.k-editor .k-tool:focus {
  outline: 0;
  border-color: #dbdbdb;
  -webkit-box-shadow: 0 6px 17px 0 #c4c4c4;
          box-shadow: 0 6px 17px 0 #c4c4c4;
}
.k-checkbox-label:before {
  border-color: transparent;
  border-radius: 1px;
}
.k-checkbox-label:after {
  border-color: #7f7f7f;
  background: #ffffff;
  border-radius: 1px;
}
.k-checkbox-label:hover:after,
.k-checkbox:checked + .k-checkbox-label:hover:after {
  border-color: #7f7f7f;
  -webkit-box-shadow: none;
          box-shadow: none;
}
.k-checkbox:checked + .k-checkbox-label:after {
  background-color: #3f51b5;
  border-color: #3f51b5;
  border-radius: 1px;
  color: #ffffff;
}
.k-checkbox-label:active:before {
  -webkit-box-shadow: 0 0 0 12px rgba(235, 235, 235, 0.3);
          box-shadow: 0 0 0 12px rgba(235, 235, 235, 0.3);
  border-color: transparent;
  border-radius: 50%;
}
.k-checkbox-label:active:after {
  border-color: #7f7f7f;
  border-radius: 1px;
}
.k-checkbox:checked + .k-checkbox-label:active:after {
  border-color: #7f7f7f;
}
.k-checkbox:checked + .k-checkbox-label:active:before {
  -webkit-box-shadow: 0 0 0 12px rgba(63, 81, 181, 0.3);
          box-shadow: 0 0 0 12px rgba(63, 81, 181, 0.3);
  border-radius: 50%;
}
.k-checkbox:disabled + .k-checkbox-label {
  color: #c0c0c0;
}
.k-checkbox:disabled + .k-checkbox-label:hover:after,
.k-checkbox:disabled + .k-checkbox-label:active:before {
  -webkit-box-shadow: none;
          box-shadow: none;
}
.k-checkbox:checked:disabled + .k-checkbox-label:after {
  background: #f5f5f5;
  color: #c7c7c7;
}
.k-checkbox:disabled + .k-checkbox-label:after,
.k-checkbox:checked:disabled + .k-checkbox-label:active:after,
.k-checkbox:disabled + .k-checkbox-label:hover:before,
.k-checkbox:checked:disabled + .k-checkbox-label:hover:after {
  background: #f5f5f5;
  border-color: #bfbfbf;
  border-radius: 1px;
}
.k-radio-label:before {
  border-color: #7f7f7f;
  border-radius: 50%;
  background-color: #ffffff;
  border-width: 2px;
}
.k-radio-label:hover:before,
.k-radio:checked + .k-radio-label:hover:before {
  border-color: #7f7f7f;
  -webkit-box-shadow: none;
          box-shadow: none;
}
.k-radio:checked + .k-radio-label:before {
  border-color: #3f51b5;
}
.k-radio:checked + .k-radio-label:after {
  background-color: #3f51b5;
  border-radius: 50%;
}
.k-radio-label:active:before {
  -webkit-box-shadow: 0 0 0 0.75em rgba(235, 235, 235, 0.3);
          box-shadow: 0 0 0 0.75em rgba(235, 235, 235, 0.3);
  border-radius: 50%;
  border-color: #7f7f7f;
}
.k-radio:checked + .k-radio-label:active:before {
  -webkit-box-shadow: 0 0 0 0.75em rgba(63, 81, 181, 0.3);
          box-shadow: 0 0 0 0.75em rgba(63, 81, 181, 0.3);
  border-radius: 50%;
  border-color: #3f51b5;
}
.k-radio:disabled + .k-radio-label {
  color: #bfbfbf;
}
.k-radio:disabled + .k-radio-label:before {
  border-color: #bfbfbf;
}
.k-radio:disabled + .k-radio-label:active:before {
  -webkit-box-shadow: none;
          box-shadow: none;
  background: #ffffff;
}
.k-radio:disabled + .k-radio-label:before {
  background: #ffffff;
}
.k-radio:disabled + .k-radio-label:hover:after,
.k-radio:disabled + .k-radio-label:hover:before {
  -webkit-box-shadow: none;
          box-shadow: none;
}
.k-checkbox:focus + .k-checkbox-label:after,
.k-radio:focus + .k-radio-label:before {
  border-color: #7f7f7f;
  -webkit-box-shadow: 0 0 0 12px rgba(235, 235, 235, 0.3);
          box-shadow: 0 0 0 12px rgba(235, 235, 235, 0.3);
}
@media only screen and (-webkit-min-device-pixel-ratio: 2), only screen and (min-device-pixel-ratio: 2) {
  .k-icon:not(.k-loading),
  .k-grouping-dropclue,
  .k-drop-hint,
  .k-callout,
  .k-tool-icon,
  .k-state-hover .k-tool-icon,
  .k-state-active .k-tool-icon,
  .k-state-active.k-state-hover .k-tool-icon,
  .k-state-selected .k-tool-icon,
  .k-state-selected.k-state-hover .k-tool-icon,
  .k-column-menu .k-sprite,
  .k-mobile-list .k-check:checked,
  .k-mobile-list .k-edit-field [type=checkbox]:checked,
  .k-mobile-list .k-edit-field [type=radio]:checked {
    background-image: url('Material/sprite_2x.png');
    -webkit-background-size: 340px 336px;
            background-size: 340px 336px;
  }
  .k-dropdown-wrap .k-input,
  .k-picker-wrap .k-input,
  .k-numeric-wrap .k-input {
    border-radius: 1px 0 0 1px;
  }
  .k-i-kpi-decrease,
  .k-i-kpi-denied,
  .k-i-kpi-equal,
  .k-i-kpi-hold,
  .k-i-kpi-increase,
  .k-i-kpi-open {
    background-image: url('Material/sprite_kpi_2x.png');
    -webkit-background-size: 96px 16px;
            background-size: 96px 16px;
  }
}
@media screen and (-ms-high-contrast: active) {
  .k-editor-toolbar-wrap .k-dropdown-wrap.k-state-focused,
  .k-editor-toolbar-wrap .k-button-group .k-tool:focus {
    border-color: #fff;
  }
}
.ktb-checkbox-label-after {
  border-color: #7f7f7f;
  background: #ffffff;
}
.ktb-checkbox-label-hover-after,
.ktb-checkbox-checked + .ktb-checkbox-label-hover-after {
  border-color: #7f7f7f;
}
.ktb-checkbox-checked + .ktb-checkbox-label-after {
  background-color: #3f51b5;
  border-color: #3f51b5;
  color: #ffffff;
}
.ktb-checkbox-label-hover-after,
.ktb-checkbox-checked + .ktb-checkbox-label-hover-after {
  border-color: #7f7f7f;
}
.ktb-checkbox-label-active-after {
  border-color: #7f7f7f;
}
.ktb-checkbox-checked-disabled + .ktb-checkbox-label-after,
.ktb-checkbox-disabled + .ktb-checkbox-label-after,
.ktb-checkbox-checked-disabled + .ktb-checkbox-label-active-after,
.ktb-checkbox-disabled + .ktb-checkbox-label-hover-before,
.ktb-checkbox-checked-disabled + .ktb-checkbox-label-hover-after {
  background: #f5f5f5;
  color: #c7c7c7;
  border-color: #bfbfbf;
}
.ktb-radio-label-before {
  border-color: #7f7f7f;
  background-color: #ffffff;
}
.ktb-radio-checked + .ktb-radio-label-after {
  background-color: #3f51b5;
}
.ktb-radio-checked + .ktb-radio-label-before {
  border-color: #3f51b5;
}
.ktb-radio-label-hover-before,
.ktb-radio-checked + .ktb-radio-label-hover-before {
  border-color: #7f7f7f;
}
.ktb-radio-label-active-before {
  border-color: #7f7f7f;
}
.ktb-radio-checked + .ktb-radio-label-after {
  background-color: #3f51b5;
}
.ktb-radio-disabled + .ktb-radio-label-before,
.ktb-radio-disabled + .ktb-radio-label-active-before {
  background: #ffffff;
  border-color: #bfbfbf;
}
/* Responsive styles */
@media only screen and (max-width: 1024px) {
  .k-webkit .k-scheduler-toolbar > ul.k-scheduler-views > li.k-current-view,
  .k-ff .k-scheduler-toolbar > ul.k-scheduler-views > li.k-current-view,
  .k-ie11 .k-scheduler-toolbar > ul.k-scheduler-views > li.k-current-view,
  .k-safari .k-scheduler-toolbar > ul.k-scheduler-views > li.k-current-view,
  .k-webkit .k-pager-numbers .k-current-page .k-link,
  .k-ff .k-pager-numbers .k-current-page .k-link,
  .k-ie11 .k-pager-numbers .k-current-page .k-link,
  .k-safari .k-pager-numbers .k-current-page .k-link {
    background-image: none;
    background-position: 50% 50%;
    background-color: #fafafa;
    border-color: #e6e6e6;
  }
  .k-webkit .k-pager-numbers .k-current-page .k-link,
  .k-ff .k-pager-numbers .k-current-page .k-link,
  .k-ie11 .k-pager-numbers .k-current-page .k-link,
  .k-safari .k-pager-numbers .k-current-page .k-link {
    border-color: #cccccc;
  }
  .k-webkit .k-scheduler-toolbar > ul.k-scheduler-views > li.k-current-view,
  .k-ff .k-scheduler-toolbar > ul.k-scheduler-views > li.k-current-view,
  .k-ie11 .k-scheduler-toolbar > ul.k-scheduler-views > li.k-current-view,
  .k-safari .k-scheduler-toolbar > ul.k-scheduler-views > li.k-current-view {
    border-radius: 2px;
  }
  .k-webkit .k-scheduler-toolbar > ul.k-scheduler-views.k-state-expanded > li,
  .k-ff .k-scheduler-toolbar > ul.k-scheduler-views.k-state-expanded > li,
  .k-ie11 .k-scheduler-toolbar > ul.k-scheduler-views.k-state-expanded > li,
  .k-safari .k-scheduler-toolbar > ul.k-scheduler-views.k-state-expanded > li {
    border-radius: 0;
  }
  .k-webkit .k-scheduler-toolbar > ul.k-scheduler-views.k-state-expanded > li.k-current-view,
  .k-ff .k-scheduler-toolbar > ul.k-scheduler-views.k-state-expanded > li.k-current-view,
  .k-ie11 .k-scheduler-toolbar > ul.k-scheduler-views.k-state-expanded > li.k-current-view,
  .k-safari .k-scheduler-toolbar > ul.k-scheduler-views.k-state-expanded > li.k-current-view {
    border-radius: 1px 1px 0 0;
  }
  .k-webkit .k-scheduler-toolbar > ul li:first-child,
  .k-ff .k-scheduler-toolbar > ul li:first-child,
  .k-ie11 .k-scheduler-toolbar > ul li:first-child,
  .k-safari .k-scheduler-toolbar > ul li:first-child,
  .k-webkit .k-scheduler-toolbar > ul li:first-child .k-link,
  .k-ff .k-scheduler-toolbar > ul li:first-child .k-link,
  .k-ie11 .k-scheduler-toolbar > ul li:first-child .k-link,
  .k-safari .k-scheduler-toolbar > ul li:first-child .k-link,
  .k-webkit .k-scheduler-toolbar > ul.k-scheduler-views li,
  .k-ff .k-scheduler-toolbar > ul.k-scheduler-views li,
  .k-ie11 .k-scheduler-toolbar > ul.k-scheduler-views li,
  .k-safari .k-scheduler-toolbar > ul.k-scheduler-views li,
  .k-webkit .k-scheduler-toolbar > ul.k-scheduler-views li .k-link,
  .k-ff .k-scheduler-toolbar > ul.k-scheduler-views li .k-link,
  .k-ie11 .k-scheduler-toolbar > ul.k-scheduler-views li .k-link,
  .k-safari .k-scheduler-toolbar > ul.k-scheduler-views li .k-link {
    border-radius: 0;
  }
  .k-webkit .k-scheduler-toolbar > ul.k-scheduler-views li:last-child,
  .k-ff .k-scheduler-toolbar > ul.k-scheduler-views li:last-child,
  .k-ie11 .k-scheduler-toolbar > ul.k-scheduler-views li:last-child,
  .k-safari .k-scheduler-toolbar > ul.k-scheduler-views li:last-child,
  .k-webkit .k-scheduler-toolbar > ul.k-scheduler-views li:last-child .k-link,
  .k-ff .k-scheduler-toolbar > ul.k-scheduler-views li:last-child .k-link,
  .k-ie11 .k-scheduler-toolbar > ul.k-scheduler-views li:last-child .k-link,
  .k-safari .k-scheduler-toolbar > ul.k-scheduler-views li:last-child .k-link {
    border-radius: 0 0 1px 1px;
  }
  .k-webkit .k-pager-numbers .k-current-page .k-link:hover,
  .k-ff .k-pager-numbers .k-current-page .k-link:hover,
  .k-ie11 .k-pager-numbers .k-current-page .k-link:hover,
  .k-safari .k-pager-numbers .k-current-page .k-link:hover,
  .k-webkit .k-scheduler-toolbar > ul.k-scheduler-views > li.k-current-view:hover,
  .k-ff .k-scheduler-toolbar > ul.k-scheduler-views > li.k-current-view:hover,
  .k-ie11 .k-scheduler-toolbar > ul.k-scheduler-views > li.k-current-view:hover,
  .k-safari .k-scheduler-toolbar > ul.k-scheduler-views > li.k-current-view:hover {
    border-color: #ebebeb;
    background-image: none;
    background-color: #ebebeb;
  }
  .k-webkit .k-scheduler-toolbar > ul.k-scheduler-views > li.k-current-view > .k-link,
  .k-ff .k-scheduler-toolbar > ul.k-scheduler-views > li.k-current-view > .k-link,
  .k-ie11 .k-scheduler-toolbar > ul.k-scheduler-views > li.k-current-view > .k-link,
  .k-safari .k-scheduler-toolbar > ul.k-scheduler-views > li.k-current-view > .k-link {
    color: #444444;
    min-width: 75px;
  }
  .k-webkit .k-scheduler-toolbar > ul.k-scheduler-views > li.k-current-view:hover > .k-link,
  .k-ff .k-scheduler-toolbar > ul.k-scheduler-views > li.k-current-view:hover > .k-link,
  .k-ie11 .k-scheduler-toolbar > ul.k-scheduler-views > li.k-current-view:hover > .k-link,
  .k-safari .k-scheduler-toolbar > ul.k-scheduler-views > li.k-current-view:hover > .k-link {
    color: #444444;
  }
  .k-webkit .k-pager-numbers .k-current-page .k-link:after,
  .k-ff .k-pager-numbers .k-current-page .k-link:after,
  .k-ie11 .k-pager-numbers .k-current-page .k-link:after,
  .k-safari .k-pager-numbers .k-current-page .k-link:after,
  .k-webkit .k-scheduler-views > li.k-state-selected > .k-link:after,
  .k-ff .k-scheduler-views > li.k-state-selected > .k-link:after,
  .k-ie11 .k-scheduler-views > li.k-state-selected > .k-link:after,
  .k-safari .k-scheduler-views > li.k-state-selected > .k-link:after {
    display: block;
    content: "";
    position: absolute;
    top: 50%;
    margin-top: -0.5em;
    right: 0.333em;
    width: 1.333em;
    height: 1.333em;
  }
  .k-webkit .k-pager-numbers.k-state-expanded,
  .k-ff .k-pager-numbers.k-state-expanded,
  .k-ie11 .k-pager-numbers.k-state-expanded,
  .k-safari .k-pager-numbers.k-state-expanded,
  .k-webkit .k-scheduler-toolbar > ul.k-scheduler-views.k-state-expanded,
  .k-ff .k-scheduler-toolbar > ul.k-scheduler-views.k-state-expanded,
  .k-ie11 .k-scheduler-toolbar > ul.k-scheduler-views.k-state-expanded,
  .k-safari .k-scheduler-toolbar > ul.k-scheduler-views.k-state-expanded {
    border-width: 1px 1px 0 1px;
    border-style: solid;
    border-color: #cccccc;
    background-color: #3f51b5;
    border-radius: 2px 2px 0 0;
    -webkit-box-shadow: 0 2px 2px 0 rgba(0, 0, 0, 0.2);
            box-shadow: 0 2px 2px 0 rgba(0, 0, 0, 0.2);
  }
  .k-webkit .k-scheduler-toolbar > ul.k-scheduler-views.k-state-expanded,
  .k-ff .k-scheduler-toolbar > ul.k-scheduler-views.k-state-expanded,
  .k-ie11 .k-scheduler-toolbar > ul.k-scheduler-views.k-state-expanded,
  .k-safari .k-scheduler-toolbar > ul.k-scheduler-views.k-state-expanded {
    border-width: 1px;
    background-image: none;
    border-radius: 2px;
  }
  .k-webkit .k-pager-numbers .k-state-selected,
  .k-ff .k-pager-numbers .k-state-selected,
  .k-ie11 .k-pager-numbers .k-state-selected,
  .k-safari .k-pager-numbers .k-state-selected,
  .k-webkit .k-pager-numbers .k-link,
  .k-ff .k-pager-numbers .k-link,
  .k-ie11 .k-pager-numbers .k-link,
  .k-safari .k-pager-numbers .k-link {
    border-radius: 1px;
  }
  .k-webkit .k-gantt-toolbar > ul.k-gantt-views,
  .k-ff .k-gantt-toolbar > ul.k-gantt-views,
  .k-ie11 .k-gantt-toolbar > ul.k-gantt-views,
  .k-safari .k-gantt-toolbar > ul.k-gantt-views {
    top: 0;
  }
}
.k-button:hover .k-icon,
.k-tool-icon:hover,
.k-state-hover .k-tool-icon,
.k-state-selected .k-tool-icon,
.k-state-focused .k-tool-icon,
.k-button:hover .k-tool-icon,
.k-splitbar.k-splitbar-horizontal-hover .k-icon,
.k-splitbar.k-splitbar-vertical-hover .k-icon,
div.k-splitbar.k-state-focused .k-icon,
.k-textbox:hover > .k-icon,
.k-grouping-header .k-group-delete,
.k-grouping-header .k-button-icon:hover > .k-icon.k-group-delete,
.k-grouping-header .k-si-arrow-n,
.k-grouping-header .k-link:hover > .k-icon.k-si-arrow-n,
.k-grouping-header .k-si-arrow-s,
.k-grouping-header .k-link:hover > .k-icon.k-si-arrow-s,
.k-grid-toolbar .k-i-pdf,
.k-grid-toolbar .k-button:hover > .k-i-pdf,
.k-grid-toolbar .k-i-excel,
.k-grid-toolbar .k-button:hover > .k-i-excel,
.k-grid-toolbar .k-icon,
.k-scheduler-toolbar .k-icon,
.k-scheduler-footer .k-icon,
.k-scheduler-content .k-icon,
.k-gantt-toolbar .k-icon,
.k-field-actions .k-icon,
.k-notification .k-icon,
.k-pivot-configurator-settings .k-icon:hover,
.k-window-titlebar .k-icon {
  opacity: 1;
}
.k-tool-icon,
.k-splitbar .k-icon,
.k-pivot-configurator-settings .k-icon {
  opacity: 0.7;
}
.k-pager-wrap .k-link.k-state-disabled .k-icon {
  opacity: 0.25;
}
.k-button,
.k-button:hover,
.k-button.k-state-hover,
.k-button.k-state-focused,
.k-button:focus,
.k-button:focus:not(.k-state-disabled):not([disabled]) {
  -webkit-box-shadow: 0 2px 6px rgba(0, 0, 0, 0.2), 0 2px 3px rgba(0, 0, 0, 0.05);
          box-shadow: 0 2px 6px rgba(0, 0, 0, 0.2), 0 2px 3px rgba(0, 0, 0, 0.05);
}
.k-button,
.k-header {
  font-weight: 500;
}
.k-button:active,
.k-button.k-state-active,
.k-button:focus,
.k-button.k-state-focused {
  color: #444444;
  background-color: #dbdbdb;
  border-color: #dbdbdb;
}
.k-button:active:hover,
.k-button.k-state-active:hover {
  color: #444444;
  border-color: #dbdbdb;
  background-color: #dbdbdb;
  -webkit-box-shadow: 0 6px 17px 0 rgba(235, 235, 235, 0.3);
          box-shadow: 0 6px 17px 0 rgba(235, 235, 235, 0.3);
}
.k-button:hover,
.k-button.k-state-hover,
.k-button:active:hover,
.k-button.k-state-active:hover {
  color: #444444;
  border-color: #ebebeb;
  background-color: #ebebeb;
}
.k-primary:active,
.k-primary.k-state-active,
.k-primary:focus,
.k-primary.k-state-focused {
  color: #ffffff;
  border-color: #283593;
  background-image: none;
  background-color: #283593;
  -webkit-box-shadow: 0 6px 17px 0 rgba(0, 0, 0, 0.3);
          box-shadow: 0 6px 17px 0 rgba(0, 0, 0, 0.3);
}
.k-primary:hover,
.k-primary.k-state-hover,
.k-primary:active:hover,
.k-primary.k-state-active:hover {
  color: #ffffff;
  border-color: #5c6bc0;
  background-color: #5c6bc0;
}
.k-primary:focus:not(.k-state-disabled):not([disabled]),
.k-primary:focus:active:not(.k-state-disabled):not([disabled]) {
  -webkit-box-shadow: 0 6px 17px 0 rgba(0, 0, 0, 0.3);
          box-shadow: 0 6px 17px 0 rgba(0, 0, 0, 0.3);
}
.k-primary.k-state-disabled,
.k-state-disabled .k-primary,
.k-primary.k-state-disabled:hover,
.k-state-disabled .k-primary:hover,
.k-primary.k-state-disabled:hover,
.k-state-disabled .k-primary:active,
.k-primary.k-state-disabled:active {
  color: #a8a8a8;
  border-color: #eaeaea;
  background-color: #eaeaea;
  background-image: none;
  -webkit-box-shadow: none;
          box-shadow: none;
}
.k-widget .k-button:active,
.k-widget .k-button.k-state-active {
  color: #444444;
  background-color: #dbdbdb;
  border-color: #ebebeb;
}
.k-toolbar .k-overflow-anchor.k-state-active,
.k-toolbar .k-overflow-anchor.k-state-border-down {
  background-color: #ffffff;
}
.k-widget .k-button:active:hover,
.k-widget .k-button.k-state-active:hover {
  color: #444444;
  border-color: #ebebeb;
  background-color: #ebebeb;
}
.k-button[disabled],
.k-button.k-state-disabled,
.k-state-disabled .k-button,
.k-state-disabled .k-button:hover,
.k-button.k-state-disabled:hover,
.k-state-disabled .k-button:active,
.k-button.k-state-disabled:active,
.k-button.k-state-disabled:active:hover {
  color: #999999;
  border-color: #fafafa;
  background-color: #fafafa;
  background-image: none;
  -webkit-box-shadow: none;
          box-shadow: none;
}
.k-dropdown .k-state-default {
  border-color: #fafafa;
  background-image: none;
  background-position: 50% 50%;
  background-color: #fafafa;
}
.k-dropdown,
span.k-colorpicker {
  background-color: #fafafa;
}
.k-textbox {
  background-color: #fafafa;
  border-color: #f0f0f0;
}
.k-combobox,
.k-datepicker,
.k-timepicker,
.k-datetimepicker {
  background-color: #fafafa;
}
.k-picker-wrap.k-state-default > .k-select {
  border-color: #fafafa;
}
.k-datepicker .k-input,
.k-timepicker .k-input {
  background-color: #fafafa;
}
.k-autocomplete.k-state-active .k-input,
.k-picker-wrap.k-state-active .k-input,
.k-numeric-wrap.k-state-active .k-input {
  background-color: #ffffff;
}
.k-picker-wrap.k-state-hover > .k-select,
.k-picker-wrap.k-state-focused > .k-select {
  border-color: #ffffff;
}
.k-picker-wrap.k-state-hover .k-input,
.k-picker-wrap.k-state-focused .k-input {
  background-color: #ffffff;
}
.k-textbox:hover,
.k-overflow-anchor:hover,
.k-autocomplete.k-state-hover,
.k-picker-wrap.k-state-hover,
.k-numeric-wrap.k-state-hover,
.k-dropdown-wrap.k-state-hover {
  background-color: #ffffff;
  border-color: #f5f5f5;
  -webkit-box-shadow: 0 2px 6px rgba(0, 0, 0, 0.2), 0 2px 3px rgba(0, 0, 0, 0.05);
          box-shadow: 0 2px 6px rgba(0, 0, 0, 0.2), 0 2px 3px rgba(0, 0, 0, 0.05);
}
.k-textbox:focus,
.k-autocomplete.k-state-focused,
.k-picker-wrap.k-state-focused,
.k-numeric-wrap.k-state-focused,
.k-dropdown-wrap.k-state-focused,
.k-multiselect.k-header.k-state-focused {
  background-color: #ebebeb;
  background-image: none;
  background-position: 50% 50%;
  border-color: #ebebeb;
  -webkit-box-shadow: 0 2px 6px rgba(0, 0, 0, 0.2), 0 2px 3px rgba(0, 0, 0, 0.05);
          box-shadow: 0 2px 6px rgba(0, 0, 0, 0.2), 0 2px 3px rgba(0, 0, 0, 0.05);
}
.k-numeric-wrap.k-state-focused > .k-select {
  background-color: #ebebeb;
}
.k-textbox:focus,
.k-autocomplete.k-state-active,
.k-picker-wrap.k-state-active,
.k-numeric-wrap.k-state-active,
.k-dropdown-wrap.k-state-active,
.k-multiselect.k-header.k-state-active {
  background-color: #ffffff;
  background-image: none;
  background-position: 50% 50%;
  border-color: #f5f5f5;
  -webkit-box-shadow: 0 2px 6px rgba(0, 0, 0, 0.2), 0 2px 3px rgba(0, 0, 0, 0.05);
          box-shadow: 0 2px 6px rgba(0, 0, 0, 0.2), 0 2px 3px rgba(0, 0, 0, 0.05);
}
.k-autocomplete.k-state-disabled,
.k-picker-wrap.k-state-disabled,
.k-numeric-wrap.k-state-disabled,
.k-numeric-wrap.k-state-disabled .k-input,
.k-numeric-wrap.k-state-disabled .k-select,
.k-dropdown-wrap.k-state-disabled,
.k-multiselect.k-header.k-state-disabled {
  background-color: #fafafa;
}
.k-numeric-wrap.k-state-disabled .k-select {
  border-color: #fafafa;
}
.k-numerictextbox .k-select {
  background-color: #ffffff;
  border-color: #ffffff;
}
.k-list > .k-state-selected.k-state-focused {
  -webkit-box-shadow: none;
          box-shadow: none;
  color: #3f51b5;
}
.k-list > .k-state-selected {
  -webkit-box-shadow: none;
          box-shadow: none;
}
.k-list > .k-state-focused {
  border-color: transparent;
  -webkit-box-shadow: none;
          box-shadow: none;
}
.k-list > .k-state-hover,
.k-list > .k-state-selected.k-state-hover {
  background-color: #ebebeb;
  border-color: #ebebeb;
}
.k-list-container {
  border-color: #ebebeb;
}
td.k-state-focused.k-state-selected {
  -webkit-box-shadow: none;
          box-shadow: none;
}
.k-calendar td.k-state-focused {
  background-color: #ebebeb;
  -webkit-box-shadow: none;
          box-shadow: none;
}
.k-calendar td.k-state-selected {
  background-color: #3f51b5;
  -webkit-box-shadow: none;
          box-shadow: none;
}
.k-calendar .k-state-selected > .k-link {
  color: #ffffff;
}
/* Calendar */
.k-calendar .k-header .k-link {
  color: #ffffff;
}
.k-calendar .k-footer {
  border-color: #e6e6e6;
}
.k-calendar td {
  border-radius: 50%;
}
.k-calendar .k-content th {
  background-color: #ffffff;
}
.k-calendar .k-header .k-state-hover {
  background-color: #283593;
}
.k-calendar .k-footer .k-nav-today {
  color: #3f51b5;
}
.k-calendar .k-nav-fast.k-state-hover {
  border-radius: 0;
}
.k-calendar .k-link.k-state-hover,
.k-window-titlebar .k-link {
  -webkit-box-shadow: none;
          box-shadow: none;
}
.k-window-titlebar .k-state-hover {
  background-color: #5c6bc0;
  border-color: #5c6bc0;
}
/* TabStrip */
.k-tabstrip > .k-tabstrip-items > .k-item {
  border-radius: 0;
}
.k-tabstrip-items .k-state-active {
  background-color: #3f51b5;
  background-image: none;
  border-color: #00b0ff;
}
.k-tabstrip .k-content.k-state-active {
  border-color: transparent;
}
.k-tabstrip-items .k-item.k-state-hover {
  background: #5c6bc0;
  border-color: #5c6bc0;
}
.k-tabstrip-items .k-state-hover .k-link {
  color: #ffffff;
}
/* Menu */
.k-group,
.k-flatcolorpicker.k-group,
.k-menu,
.k-menu .k-group,
.k-popup.k-widget.k-context-menu {
  color: #444444;
  background-color: #ffffff;
}
.k-menu .k-group,
.k-popup.k-context-menu.k-group {
  border-color: #e6e6e6;
}
.k-menu.k-header,
.k-menu .k-item,
.k-widget.k-menu-horizontal > .k-item {
  -webkit-box-shadow: none;
          box-shadow: none;
}
.k-menu .k-state-active,
.k-popup.k-context-menu.k-group .k-state-hover {
  background-color: #ebebeb;
  border-color: #ebebeb;
}
/* Toolbar */
.k-toolbar {
  background-color: #fafafa;
  border-color: #e6e6e6;
}
.k-toolbar .k-button {
  -webkit-box-shadow: none;
          box-shadow: none;
}
.k-grid .k-header .k-button,
.k-scheduler .k-header .k-button,
.k-scheduler .k-header li,
.k-scheduler .k-header .k-link,
.k-gantt > .k-header li,
.k-gantt > .k-header .k-link,
.k-gantt-toolbar .k-button,
.km-pane-wrapper .k-header .k-button {
  color: #ffffff;
  background-color: #3f51b5;
  border-color: #3f51b5;
  -webkit-box-shadow: none;
          box-shadow: none;
}
.k-grid .k-header .k-button:hover,
.k-scheduler .k-header .k-button:hover,
.k-scheduler .k-scheduler-toolbar .k-scheduler-views li.k-state-hover,
.k-scheduler .k-scheduler-toolbar .k-scheduler-views li.k-state-hover .k-link,
.k-gantt .k-gantt-toolbar .k-gantt-views li.k-state-hover,
.k-gantt .k-gantt-toolbar .k-gantt-views li.k-state-hover .k-link,
.k-gantt .k-gantt-toolbar .k-button:hover,
.km-pane-wrapper .k-header .k-button:hover {
  background-color: #5c6bc0;
  border-color: #5c6bc0;
}
.km-pane-wrapper .k-header .k-button:active:hover {
  color: #ffffff;
}
.k-scheduler .k-scheduler-toolbar ul li.k-state-hover,
.k-scheduler .k-scheduler-toolbar .k-state-selected,
.k-gantt-toolbar .k-button {
  background-color: #3f51b5;
  border-color: #3f51b5;
}
.k-gantt .k-gantt-toolbar .k-button:active {
  background: #ffffff;
  -webkit-box-shadow: none;
          box-shadow: none;
}
.k-gantt-toolbar > .k-gantt-views > li.k-state-selected,
.k-gantt .k-gantt-toolbar .k-gantt-views li.k-state-selected.k-state-hover,
.k-scheduler .k-scheduler-toolbar .k-scheduler-views li.k-state-selected.k-state-hover,
.k-scheduler-toolbar > .k-scheduler-views > li.k-state-selected {
  border-bottom-color: #00b0ff;
}
.k-scheduler-mark {
  border-radius: 50%;
}
/* Grid */
.k-grid .k-alt {
  background-color: #ffffff;
}
.k-grouping-row td,
td.k-group-cell,
.k-resize-handle-inner {
  color: #444444;
  background-color: #fafafa;
}
.k-grouping-header .k-group-indicator,
.k-pivot-toolbar .k-button {
  color: #ffffff;
  background-color: #283593;
  border-color: #283593;
  -webkit-box-shadow: none;
          box-shadow: none;
}
.k-grid-header,
.k-grid-header .k-header,
.k-pager-wrap,
.k-pager-numbers .k-state-selected,
.k-grid-footer,
.k-grid-footer td,
.k-scheduler-header,
.km-pane-wrapper .k-grid-header .k-header {
  color: #444444;
  background-color: #fafafa;
}
.k-header.k-scheduler-footer .k-header,
.k-header.k-scheduler-footer ul.k-header li .k-link {
  color: #00b0ff;
  background-color: #fafafa;
}
.k-header.k-scheduler-footer ul.k-header li {
  background-color: #fafafa;
  border-color: #fafafa;
}
.k-header,
.k-grid-header-wrap,
.k-grid .k-grouping-header,
.k-grid-header,
.k-pager-wrap,
.k-pager-wrap .k-textbox,
.k-pager-wrap .k-link,
.k-gantt-toolbar .k-state-default,
.k-grouping-row td,
.k-group-footer td,
.k-grid-footer td {
  border-color: #e6e6e6;
}
.k-group-footer td,
.k-footer-template td,
.k-fieldselector .k-item.k-header {
  color: #444444;
  background-color: #fafafa;
}
.k-grid .k-grouping-header {
  color: rgba(255, 255, 255, 0.5);
}
.k-pager-wrap,
.k-editor-toolbar {
  color: #444444;
}
.k-grouping-header .k-link,
.k-grouping-header .k-link:link {
  color: #ffffff;
}
.k-scheduler-layout .k-state-selected,
.k-scheduler .k-today.k-state-selected,
.k-grid tr.k-state-selected,
.k-grid td.k-state-selected,
.k-grid td.k-state-selected.k-state-focused,
.k-marquee-color,
.k-gantt .k-treelist .k-state-selected,
.k-gantt .k-treelist .k-state-selected td,
.k-gantt .k-treelist .k-alt.k-state-selected,
.k-gantt .k-treelist .k-alt.k-state-selected > td,
.k-listview > .k-state-selected,
.k-state-selected.k-line {
  background-color: #00b0ff;
}
.k-state-selected.k-line {
  color: #00b0ff;
}
.k-grid tr.k-state-selected,
.k-grid td.k-state-selected,
.k-listview > .k-state-selected,
.k-state-selected .k-progress-status {
  color: #ffffff;
}
.k-grid-header .k-header .k-link,
.k-grid-header .k-header,
.k-grid-header .k-link,
.k-grid-header .k-link:link,
.k-pager-info,
.k-scheduler-header,
.k-scheduler-agendaview .k-scheduler-datecolumn {
  color: #a8a8a8;
}
.k-gantt .k-task-draghandle {
  border-color: #00b0ff;
}
.k-grid-pager .k-link,
.k-grid-pager .k-link:link {
  color: #444444;
}
.k-pager-numbers .k-link,
.k-pager-wrap > .k-link {
  border-radius: 0;
}
.k-pager-numbers .k-state-selected {
  border-color: #3f51b5 transparent transparent;
  border-radius: 0;
  -webkit-box-shadow: none;
          box-shadow: none;
  color: #3f51b5;
}
.k-pager-wrap .k-link {
  border-color: #fafafa;
  cursor: pointer;
}
.k-pager-wrap .k-link:hover {
  background-color: transparent;
  border-color: transparent;
}
.k-scheduler-toolbar > ul li:first-child,
.k-scheduler-toolbar > ul li:first-child .k-link,
.k-scheduler-toolbar .k-nav-next,
.k-scheduler-toolbar ul + ul li:last-child,
.k-scheduler-toolbar .k-nav-next .k-link,
.k-scheduler-toolbar ul + ul li:last-child .k-link,
.k-gantt-toolbar li:first-child,
.k-gantt-toolbar li:first-child > .k-link,
.k-gantt-toolbar li:last-child,
.k-gantt-toolbar li:last-child > .k-link {
  border-radius: 0;
}
.k-grid,
.k-panelbar,
.k-notification,
.k-popup .k-textbox:focus,
.k-popup .k-autocomplete.k-state-focused,
.k-popup .k-picker-wrap.k-state-focused,
.k-popup .k-numeric-wrap.k-state-focused,
.k-popup .k-dropdown-wrap.k-state-focused,
.k-popup .k-multiselect.k-header.k-state-focused,
.k-popup .k-textbox:hover,
.k-popup .k-autocomplete.k-state-hover,
.k-popup .k-picker-wrap.k-state-hover,
.k-popup .k-numeric-wrap.k-state-hover,
.k-popup .k-dropdown-wrap.k-state-hover {
  -webkit-box-shadow: none;
          box-shadow: none;
}
/* PanelBar */
.k-panelbar,
.k-panelbar .k-header,
.k-panelbar .k-content,
.k-panel > li.k-item,
.k-panelbar .k-state-selected {
  background-color: #fafafa;
}
.k-panelbar .k-grid-toolbar {
  background-color: #3f51b5;
}
.k-panelbar > li.k-state-default > .k-link {
  color: #444444;
}
.k-panelbar .k-state-hover {
  background-color: #ebebeb;
}
.k-panelbar > .k-item > .k-link,
.k-panelbar.k-header,
.k-panelbar .k-content,
.k-panelbar .k-panel,
.k-panelbar .k-item {
  border-color: #e6e6e6;
}
/* Splitter */
.k-splitbar {
  border-color: #fafafa;
}
.k-splitbar.k-state-focused {
  background-color: #3f51b5;
  border-color: #3f51b5;
  -webkit-box-shadow: none;
          box-shadow: none;
}
/* Upload */
.k-upload {
  color: #444444;
  background-color: #ffffff;
}
.k-upload-files .k-button,
.k-upload-files .k-button:focus,
.k-upload-files .k-button:focus:not(.k-state-disabled):not([disabled]) {
  -webkit-box-shadow: none;
          box-shadow: none;
}
/* Gantt */
.k-task-milestone,
.k-task-summary-complete,
.k-state-selected.k-task-milestone,
.k-state-selected .k-task-summary-complete {
  background-color: #3f51b5;
  border-color: #3f51b5;
}
.k-task-single {
  background-color: #66d0ff;
}
.k-task-complete {
  background: #00b0ff 0 -257px none repeat-x;
}
.k-treelist .k-state-selected,
.k-treelist .k-state-selected td,
.k-treelist .k-alt.k-state-selected,
.k-treelist .k-alt.k-state-selected > td {
  background-color: #00b0ff;
  border-color: #00b0ff;
}
.k-grid td.k-state-focused,
.k-multiselect .k-button:focus:active:not(.k-state-disabled):not([disabled]),
.k-toolbar .k-button:focus:active:not(.k-state-disabled):not([disabled]),
.k-group-indicator .k-button,
.k-group-indicator .k-button:focus:active:not(.k-state-disabled):not([disabled]),
.k-group-indicator .k-button:focus:not(.k-state-disabled):not([disabled]),
.k-gantt-toolbar .k-button:focus:not(.k-state-disabled):not([disabled]),
.k-gantt-toolbar .k-button:focus:active:not(.k-state-disabled):not([disabled]),
.k-toolbar .k-button:focus:not(.k-state-disabled):not([disabled]),
.k-toolbar .k-button:focus:active:not(.k-state-disabled):not([disabled]),
.k-toolbar .k-button:active:hover,
.k-toolbar .k-button.k-state-active:hover {
  -webkit-box-shadow: none;
          box-shadow: none;
}
.k-multiselect .k-button:active:hover {
  color: #444444;
  background-color: #dbdbdb;
  border-color: #dbdbdb;
}
.k-multiselect-wrap > ul > .k-button {
  -webkit-box-shadow: none;
          box-shadow: none;
}
/* Editor */
table.k-editor {
  border-color: #e6e6e6;
}
.k-editor.k-header,
.editorToolbarWindow.k-header,
.k-filebrowser .k-header {
  background-color: #fafafa;
  -webkit-box-shadow: none;
          box-shadow: none;
}
.k-filebrowser .k-header {
  color: #444444;
}
.k-editor-toolbar .k-tool,
.k-group-start.k-group-end.k-tool {
  border-color: #fafafa;
}
.k-treeview .k-state-selected,
.k-treeview .k-state-focused,
.k-editor-toolbar .k-dropdown,
.k-panelbar .k-state-focused {
  -webkit-box-shadow: none;
          box-shadow: none;
}
.k-treeview .k-state-focused,
.k-panelbar .k-state-focused {
  background-color: #ebebeb;
}
.k-editor-toolbar .k-dropdown-wrap.k-state-default,
.k-toolbar .k-dropdown-wrap.k-state-default {
  border-color: #fafafa;
}
.k-editor-toolbar .k-tool.k-state-hover,
.k-editor-toolbar .k-dropdown-wrap.k-state-hover,
.k-toolbar .k-tool.k-state-hover,
.k-toolbar .k-dropdown-wrap.k-state-hover {
  color: #444444;
  border-color: #ebebeb;
  -webkit-box-shadow: none;
          box-shadow: none;
}
.k-editor-toolbar .k-tool.k-state-selected,
.k-toolbar .k-button-group .k-button.k-state-active {
  -webkit-box-shadow: none;
          box-shadow: none;
  background-color: #dbdbdb;
  border-color: #dbdbdb;
}
.k-editor-toolbar .k-tool.k-state-hover,
.k-toolbar .k-button-group .k-button:hover {
  background-color: #ebebeb;
  border-color: #ebebeb;
}
/* Progressbar */
.k-progressbar {
  background-color: #fafafa;
  border-color: #fafafa;
}
.k-progressbar .k-item,
.k-progressbar .k-item.k-state-selected {
  border-color: #ffffff;
}
.k-progressbar .k-state-selected {
  background-color: #3f51b5;
  border-color: #3f51b5;
}
.k-widget.k-tooltip-validation {
  -webkit-box-shadow: none;
          box-shadow: none;
}
/* Pivot Grid */
.k-grid.k-alt {
  background-color: #fafafa;
}
.k-gantt .k-treelist .k-alt,
.k-gantt .k-header.k-nonwork-hour {
  background-color: #fafafa;
}
.k-list > .k-state-hover,
.k-list > .k-state-focused {
  color: #444444;
  background-color: #ebebeb;
  border-color: #ebebeb;
}
/* Slider */
.k-slider-track {
  background-color: #cccccc;
  -webkit-box-shadow: none;
          box-shadow: none;
}
.k-slider-selection {
  background-color: #3f51b5;
  border-color: #3f51b5;
}
.k-slider .k-button,
.k-slider .k-button.k-state-hover,
.k-slider .k-button:active:hover,
.k-slider .k-button:focus,
.k-slider .k-button:active {
  background: none;
  border: none;
  -webkit-box-shadow: none;
          box-shadow: none;
}
.k-draghandle,
.k-flatcolorpicker .k-slider-horizontal .k-slider-track {
  -webkit-box-shadow: none;
          box-shadow: none;
}
.k-flatcolorpicker .k-hue-slider .k-draghandle,
.k-flatcolorpicker .k-transparency-slider .k-draghandle {
  border-color: #3f51b5;
  background-color: #3f51b5;
  -webkit-box-shadow: none;
          box-shadow: none;
}
.k-flatcolorpicker .k-hue-slider .k-draghandle:hover,
.k-flatcolorpicker .k-transparency-slider .k-draghandle:hover {
  border-color: #3f51b5;
  background-color: #3f51b5;
  -webkit-box-shadow: 0 0 0 8px rgba(63, 81, 181, 0.3);
          box-shadow: 0 0 0 8px rgba(63, 81, 181, 0.3);
}
.k-draghandle.k-state-selected,
.k-draghandle.k-state-selected:link,
.k-draghandle.k-state-selected:hover,
.k-flatcolorpicker .k-hue-slider .k-draghandle.k-state-selected,
.k-flatcolorpicker .k-transparency-slider .k-draghandle.k-state-selected {
  background-color: #cccccc;
  border-color: #cccccc;
}
.k-draghandle.k-state-focused,
.k-draghandle.k-state-focused:link,
.k-flatcolorpicker .k-hue-slider .k-draghandle.k-state-focused,
.k-flatcolorpicker .k-transparency-slider .k-draghandle.k-state-focused {
  -webkit-box-shadow: none;
          box-shadow: none;
  border-color: #3f51b5;
  background-color: #3f51b5;
}
.k-radio:checked + .k-radio-label:hover:before {
  border-color: #3f51b5;
}
.k-edit-form-container .k-edit-buttons {
  background-color: #fafafa;
}
.k-popup .k-button,
.k-popup .k-button:active:hover {
  -webkit-box-shadow: none;
          box-shadow: none;
}
.k-edit-form-container .k-button,
.k-popup .k-button,
.k-popup .k-primary:active,
.k-popup .k-primary:active:hover,
.k-edit-form-container .k-primary:active {
  color: #444444;
  background-color: #fafafa;
  border-color: #fafafa;
  -webkit-box-shadow: none;
          box-shadow: none;
}
.k-popup .k-primary,
.k-edit-form-container .k-primary {
  color: #00b0ff;
  background-color: #fafafa;
  border-color: #fafafa;
}
.k-filter-menu .k-button {
  background: transparent;
  border-color: transparent;
}
.k-filter-menu .k-primary {
  border-left-color: #f0f0f0;
}
.k-filter-menu > div > div:last-child {
  border-color: #f0f0f0;
}
.k-popup .k-button:focus:active:not(.k-state-disabled):not([disabled]),
.k-edit-form-container .k-button:focus:active:not(.k-state-disabled):not([disabled]) {
  -webkit-box-shadow: none;
          box-shadow: none;
}
.k-edit-form-container .k-scheduler-delete {
  color: #00b0ff;
}
div.k-scheduler-marquee:before,
div.k-scheduler-marquee:after {
  border-color: #00b0ff;
}
.km-pane-wrapper > .km-pane > .km-view > .km-content {
  color: #3f51b5;
  background-color: #ffffff;
}
.km-pane-wrapper > .km-pane .km-content .k-mobile-list > ul > li > .k-link {
  color: #3f51b5;
}
.k-popup.k-context-menu {
  -webkit-box-shadow: 0 2px 2px 0 rgba(0, 0, 0, 0.2);
          box-shadow: 0 2px 2px 0 rgba(0, 0, 0, 0.2);
}
.k-drag-clue {
  color: #444444;
  background-color: #ebebeb;
  border-color: #ebebeb;
  -webkit-box-shadow: 0 6px 17px 0 rgba(0, 0, 0, 0.3);
          box-shadow: 0 6px 17px 0 rgba(0, 0, 0, 0.3);
}
.k-popup > .k-group-header,
.k-popup > .k-virtual-wrap > .k-group-header {
  color: #444444;
}
.k-popup .k-item > .k-group {
  color: #444444;
}
/* Responsive styles */
@media only screen and (max-width: 1024px) {
  .k-webkit,
  .k-ff,
  .k-ie11,
  .k-safari {
    /* Responsive Scheduler */
    /* Responsive Pager */
  }
  .k-webkit .k-scheduler-toolbar > ul.k-scheduler-views,
  .k-ff .k-scheduler-toolbar > ul.k-scheduler-views,
  .k-ie11 .k-scheduler-toolbar > ul.k-scheduler-views,
  .k-safari .k-scheduler-toolbar > ul.k-scheduler-views {
    right: 13px;
    top: 0;
  }
  .k-webkit .k-scheduler-toolbar > ul.k-scheduler-views > li.k-current-view,
  .k-ff .k-scheduler-toolbar > ul.k-scheduler-views > li.k-current-view,
  .k-ie11 .k-scheduler-toolbar > ul.k-scheduler-views > li.k-current-view,
  .k-safari .k-scheduler-toolbar > ul.k-scheduler-views > li.k-current-view,
  .k-webkit .k-scheduler-toolbar > ul.k-scheduler-views > li.k-current-view:hover,
  .k-ff .k-scheduler-toolbar > ul.k-scheduler-views > li.k-current-view:hover,
  .k-ie11 .k-scheduler-toolbar > ul.k-scheduler-views > li.k-current-view:hover,
  .k-safari .k-scheduler-toolbar > ul.k-scheduler-views > li.k-current-view:hover {
    background-image: none;
    background-position: 50% 50%;
    background-color: transparent;
    border-color: transparent;
    border-radius: 2px;
    text-align: right;
  }
  .k-webkit .k-scheduler-toolbar > ul.k-scheduler-views.k-state-expanded > li,
  .k-ff .k-scheduler-toolbar > ul.k-scheduler-views.k-state-expanded > li,
  .k-ie11 .k-scheduler-toolbar > ul.k-scheduler-views.k-state-expanded > li,
  .k-safari .k-scheduler-toolbar > ul.k-scheduler-views.k-state-expanded > li {
    border-radius: 0;
  }
  .k-webkit .k-scheduler-toolbar > ul.k-scheduler-views.k-state-expanded > li.k-current-view,
  .k-ff .k-scheduler-toolbar > ul.k-scheduler-views.k-state-expanded > li.k-current-view,
  .k-ie11 .k-scheduler-toolbar > ul.k-scheduler-views.k-state-expanded > li.k-current-view,
  .k-safari .k-scheduler-toolbar > ul.k-scheduler-views.k-state-expanded > li.k-current-view {
    border-radius: 1px 1px 0 0;
  }
  .k-webkit .k-scheduler-toolbar > ul li:first-child,
  .k-ff .k-scheduler-toolbar > ul li:first-child,
  .k-ie11 .k-scheduler-toolbar > ul li:first-child,
  .k-safari .k-scheduler-toolbar > ul li:first-child,
  .k-webkit .k-scheduler-toolbar > ul li:first-child .k-link,
  .k-ff .k-scheduler-toolbar > ul li:first-child .k-link,
  .k-ie11 .k-scheduler-toolbar > ul li:first-child .k-link,
  .k-safari .k-scheduler-toolbar > ul li:first-child .k-link,
  .k-webkit .k-scheduler-toolbar > ul.k-scheduler-views li,
  .k-ff .k-scheduler-toolbar > ul.k-scheduler-views li,
  .k-ie11 .k-scheduler-toolbar > ul.k-scheduler-views li,
  .k-safari .k-scheduler-toolbar > ul.k-scheduler-views li,
  .k-webkit .k-scheduler-toolbar > ul.k-scheduler-views li .k-link,
  .k-ff .k-scheduler-toolbar > ul.k-scheduler-views li .k-link,
  .k-ie11 .k-scheduler-toolbar > ul.k-scheduler-views li .k-link,
  .k-safari .k-scheduler-toolbar > ul.k-scheduler-views li .k-link {
    border-radius: 0;
  }
  .k-webkit .k-scheduler-toolbar > ul.k-scheduler-views li:last-child,
  .k-ff .k-scheduler-toolbar > ul.k-scheduler-views li:last-child,
  .k-ie11 .k-scheduler-toolbar > ul.k-scheduler-views li:last-child,
  .k-safari .k-scheduler-toolbar > ul.k-scheduler-views li:last-child,
  .k-webkit .k-scheduler-toolbar > ul.k-scheduler-views li:last-child .k-link,
  .k-ff .k-scheduler-toolbar > ul.k-scheduler-views li:last-child .k-link,
  .k-ie11 .k-scheduler-toolbar > ul.k-scheduler-views li:last-child .k-link,
  .k-safari .k-scheduler-toolbar > ul.k-scheduler-views li:last-child .k-link {
    border-radius: 0 0 1px 1px;
  }
  .k-webkit .k-scheduler-toolbar > ul.k-scheduler-views > li.k-current-view:hover,
  .k-ff .k-scheduler-toolbar > ul.k-scheduler-views > li.k-current-view:hover,
  .k-ie11 .k-scheduler-toolbar > ul.k-scheduler-views > li.k-current-view:hover,
  .k-safari .k-scheduler-toolbar > ul.k-scheduler-views > li.k-current-view:hover {
    border-color: transparent;
    background-image: none;
    background-color: transparent;
  }
  .k-webkit .k-scheduler-toolbar > ul.k-scheduler-views > li.k-current-view > .k-link,
  .k-ff .k-scheduler-toolbar > ul.k-scheduler-views > li.k-current-view > .k-link,
  .k-ie11 .k-scheduler-toolbar > ul.k-scheduler-views > li.k-current-view > .k-link,
  .k-safari .k-scheduler-toolbar > ul.k-scheduler-views > li.k-current-view > .k-link,
  .k-webkit .k-scheduler-toolbar > ul.k-scheduler-views > li.k-current-view:hover > .k-link,
  .k-ff .k-scheduler-toolbar > ul.k-scheduler-views > li.k-current-view:hover > .k-link,
  .k-ie11 .k-scheduler-toolbar > ul.k-scheduler-views > li.k-current-view:hover > .k-link,
  .k-safari .k-scheduler-toolbar > ul.k-scheduler-views > li.k-current-view:hover > .k-link {
    color: #ffffff;
    min-width: 20px;
  }
  .k-webkit .k-scheduler-views > li.k-state-selected > .k-link:after,
  .k-ff .k-scheduler-views > li.k-state-selected > .k-link:after,
  .k-ie11 .k-scheduler-views > li.k-state-selected > .k-link:after,
  .k-safari .k-scheduler-views > li.k-state-selected > .k-link:after {
    display: block;
    content: "";
    position: absolute;
    top: 50%;
    margin-top: -0.5em;
    right: 0.333em;
    width: 1.333em;
    height: 1.333em;
  }
  .k-webkit .k-scheduler-toolbar > ul.k-scheduler-views.k-state-expanded,
  .k-ff .k-scheduler-toolbar > ul.k-scheduler-views.k-state-expanded,
  .k-ie11 .k-scheduler-toolbar > ul.k-scheduler-views.k-state-expanded,
  .k-safari .k-scheduler-toolbar > ul.k-scheduler-views.k-state-expanded {
    border-width: 1px 1px 0 1px;
    border-style: solid;
    border-color: transparent;
    /*@secondary-border-color*/
    background-color: #3f51b5;
    border-radius: 2px 2px 0 0;
    -webkit-box-shadow: 0 2px 2px 0 rgba(0, 0, 0, 0.2);
            box-shadow: 0 2px 2px 0 rgba(0, 0, 0, 0.2);
  }
  .k-webkit .k-scheduler-toolbar > ul.k-scheduler-views.k-state-expanded,
  .k-ff .k-scheduler-toolbar > ul.k-scheduler-views.k-state-expanded,
  .k-ie11 .k-scheduler-toolbar > ul.k-scheduler-views.k-state-expanded,
  .k-safari .k-scheduler-toolbar > ul.k-scheduler-views.k-state-expanded {
    border-width: 1px;
    background-image: none;
    border-radius: 2px;
  }
  .k-webkit .k-pager-wrap .k-pager-nav,
  .k-ff .k-pager-wrap .k-pager-nav,
  .k-ie11 .k-pager-wrap .k-pager-nav,
  .k-safari .k-pager-wrap .k-pager-nav,
  .k-webkit .k-pager-input,
  .k-ff .k-pager-input,
  .k-ie11 .k-pager-input,
  .k-safari .k-pager-input {
    display: inline-block;
    vertical-align: top;
  }
  .k-webkit .k-pager-numbers,
  .k-ff .k-pager-numbers,
  .k-ie11 .k-pager-numbers,
  .k-safari .k-pager-numbers,
  .k-webkit .k-grid .k-pager-numbers,
  .k-ff .k-grid .k-pager-numbers,
  .k-ie11 .k-grid .k-pager-numbers,
  .k-safari .k-grid .k-pager-numbers {
    position: absolute;
    left: 5.6em;
    display: -webkit-inline-box;
    display: -webkit-inline-flex;
    display: -ms-inline-flexbox;
    display: inline-flex;
    -webkit-box-orient: vertical;
    -webkit-box-direction: reverse;
    -webkit-flex-direction: column-reverse;
        -ms-flex-direction: column-reverse;
            flex-direction: column-reverse;
    overflow: visible;
    height: auto;
  }
  .k-webkit .k-pager-numbers.k-state-expanded,
  .k-ff .k-pager-numbers.k-state-expanded,
  .k-ie11 .k-pager-numbers.k-state-expanded,
  .k-safari .k-pager-numbers.k-state-expanded,
  .k-webkit .k-grid .k-pager-numbers.k-state-expanded,
  .k-ff .k-grid .k-pager-numbers.k-state-expanded,
  .k-ie11 .k-grid .k-pager-numbers.k-state-expanded,
  .k-safari .k-grid .k-pager-numbers.k-state-expanded {
    -webkit-transform: translatey(-100%);
        -ms-transform: translatey(-100%);
            transform: translatey(-100%);
  }
  .k-webkit .km-pane-wrapper .k-pager-numbers .k-link,
  .k-ff .km-pane-wrapper .k-pager-numbers .k-link,
  .k-ie11 .km-pane-wrapper .k-pager-numbers .k-link,
  .k-safari .km-pane-wrapper .k-pager-numbers .k-link,
  .k-webkit .km-pane-wrapper .k-pager-numbers .k-state-selected,
  .k-ff .km-pane-wrapper .k-pager-numbers .k-state-selected,
  .k-ie11 .km-pane-wrapper .k-pager-numbers .k-state-selected,
  .k-safari .km-pane-wrapper .k-pager-numbers .k-state-selected,
  .k-webkit .km-pane-wrapper .k-pager-wrap > .k-link,
  .k-ff .km-pane-wrapper .k-pager-wrap > .k-link,
  .k-ie11 .km-pane-wrapper .k-pager-wrap > .k-link,
  .k-safari .km-pane-wrapper .k-pager-wrap > .k-link,
  .k-webkit .km-pane-wrapper .k-pager-wrap > .k-pager-info,
  .k-ff .km-pane-wrapper .k-pager-wrap > .k-pager-info,
  .k-ie11 .km-pane-wrapper .k-pager-wrap > .k-pager-info,
  .k-safari .km-pane-wrapper .k-pager-wrap > .k-pager-info {
    padding-top: 0;
    padding-bottom: 0;
  }
  .k-webkit .k-rtl .k-pager-numbers,
  .k-ff .k-rtl .k-pager-numbers,
  .k-ie11 .k-rtl .k-pager-numbers,
  .k-safari .k-rtl .k-pager-numbers,
  .k-webkit .k-rtl .k-grid .k-pager-numbers,
  .k-ff .k-rtl .k-grid .k-pager-numbers,
  .k-ie11 .k-rtl .k-grid .k-pager-numbers,
  .k-safari .k-rtl .k-grid .k-pager-numbers {
    right: 5.6em;
    width: 5.15em;
  }
  .k-webkit .k-pager-numbers .k-current-page,
  .k-ff .k-pager-numbers .k-current-page,
  .k-ie11 .k-pager-numbers .k-current-page,
  .k-safari .k-pager-numbers .k-current-page,
  .k-webkit .k-grid .k-pager-numbers .k-current-page,
  .k-ff .k-grid .k-pager-numbers .k-current-page,
  .k-ie11 .k-grid .k-pager-numbers .k-current-page,
  .k-safari .k-grid .k-pager-numbers .k-current-page {
    display: block;
    border-left: 0;
  }
  .k-webkit .k-pager-numbers li:not(.k-current-page),
  .k-ff .k-pager-numbers li:not(.k-current-page),
  .k-ie11 .k-pager-numbers li:not(.k-current-page),
  .k-safari .k-pager-numbers li:not(.k-current-page) {
    display: none;
  }
  .k-webkit .k-pager-numbers .k-current-page .k-link,
  .k-ff .k-pager-numbers .k-current-page .k-link,
  .k-ie11 .k-pager-numbers .k-current-page .k-link,
  .k-safari .k-pager-numbers .k-current-page .k-link {
    width: 3.8em;
    line-height: 2.564em;
    padding: 0 .429em 0 0.8em;
    border-radius: 2px;
    background-image: none;
    background-position: 50% 50%;
    background-color: #fafafa;
    border: 1px solid transparent;
    border-top: 0;
    -webkit-box-shadow: 0 2px 2px 0 #fafafa;
            box-shadow: 0 2px 2px 0 #fafafa;
  }
  .k-webkit .k-pager-numbers .k-current-page:hover .k-link,
  .k-ff .k-pager-numbers .k-current-page:hover .k-link,
  .k-ie11 .k-pager-numbers .k-current-page:hover .k-link,
  .k-safari .k-pager-numbers .k-current-page:hover .k-link {
    border-radius: 2px;
    background-color: #ffffff;
    border: 1px solid #ebebeb;
    border-top: 0;
    -webkit-box-shadow: 0 2px 6px rgba(0, 0, 0, 0.2), 0 2px 3px rgba(0, 0, 0, 0.05);
            box-shadow: 0 2px 6px rgba(0, 0, 0, 0.2), 0 2px 3px rgba(0, 0, 0, 0.05);
  }
  .k-webkit .k-pager-numbers .k-current-page .k-link:after,
  .k-ff .k-pager-numbers .k-current-page .k-link:after,
  .k-ie11 .k-pager-numbers .k-current-page .k-link:after,
  .k-safari .k-pager-numbers .k-current-page .k-link:after {
    display: block;
    content: "";
    position: absolute;
    top: 50%;
    margin-top: -0.6em;
    right: 0.6em;
    width: 1.333em;
    height: 1.333em;
  }
  .k-webkit .k-pager-numbers + .k-link,
  .k-ff .k-pager-numbers + .k-link,
  .k-ie11 .k-pager-numbers + .k-link,
  .k-safari .k-pager-numbers + .k-link {
    margin-left: 5.4em;
  }
  .k-webkit .k-rtl .k-pager-numbers + .k-link,
  .k-ff .k-rtl .k-pager-numbers + .k-link,
  .k-ie11 .k-rtl .k-pager-numbers + .k-link,
  .k-safari .k-rtl .k-pager-numbers + .k-link {
    margin-right: 5.4em;
    margin-left: 0;
  }
  .k-webkit .k-pager-wrap .k-pager-numbers .k-state-selected,
  .k-ff .k-pager-wrap .k-pager-numbers .k-state-selected,
  .k-ie11 .k-pager-wrap .k-pager-numbers .k-state-selected,
  .k-safari .k-pager-wrap .k-pager-numbers .k-state-selected,
  .k-webkit .k-pager-wrap .k-pager-numbers .k-link,
  .k-ff .k-pager-wrap .k-pager-numbers .k-link,
  .k-ie11 .k-pager-wrap .k-pager-numbers .k-link,
  .k-safari .k-pager-wrap .k-pager-numbers .k-link {
    display: block;
    margin-top: 0;
    margin-right: 0;
    padding: 1px 5px 1px .8em;
    text-align: left;
    border-top: 0;
  }
  .k-webkit .k-pager-wrap .k-pager-numbers li:not(.k-current-page) .k-link:hover,
  .k-ff .k-pager-wrap .k-pager-numbers li:not(.k-current-page) .k-link:hover,
  .k-ie11 .k-pager-wrap .k-pager-numbers li:not(.k-current-page) .k-link:hover,
  .k-safari .k-pager-wrap .k-pager-numbers li:not(.k-current-page) .k-link:hover {
    background-color: #ebebeb;
  }
  .k-webkit .k-pager-numbers.k-state-expanded,
  .k-ff .k-pager-numbers.k-state-expanded,
  .k-ie11 .k-pager-numbers.k-state-expanded,
  .k-safari .k-pager-numbers.k-state-expanded {
    -webkit-box-sizing: border-box;
            box-sizing: border-box;
    padding: 2px 0 0;
    border-width: 1px 1px 0 1px;
    border-style: solid;
    border-color: #ebebeb;
    /*@secondary-border-color*/
    background-color: #ffffff;
    border-radius: 2px 2px 0 0;
    -webkit-box-shadow: 0 2px 2px 0 rgba(0, 0, 0, 0.2);
            box-shadow: 0 2px 2px 0 rgba(0, 0, 0, 0.2);
  }
  .k-webkit .k-pager-numbers.k-state-expanded .k-current-page,
  .k-ff .k-pager-numbers.k-state-expanded .k-current-page,
  .k-ie11 .k-pager-numbers.k-state-expanded .k-current-page,
  .k-safari .k-pager-numbers.k-state-expanded .k-current-page {
    margin: -2.2em -1px 0;
    padding: 0;
  }
  .k-webkit .k-pager-numbers.k-state-expanded .k-current-page .k-link,
  .k-ff .k-pager-numbers.k-state-expanded .k-current-page .k-link,
  .k-ie11 .k-pager-numbers.k-state-expanded .k-current-page .k-link,
  .k-safari .k-pager-numbers.k-state-expanded .k-current-page .k-link {
    border-radius: 0 0 2px 2px;
    background-color: #ffffff;
    border: 1px solid #ebebeb;
    border-top: 0;
    -webkit-box-shadow: 0 2px 2px 0 rgba(0, 0, 0, 0.2);
            box-shadow: 0 2px 2px 0 rgba(0, 0, 0, 0.2);
  }
  .k-webkit .k-pager-numbers.k-state-expanded li,
  .k-ff .k-pager-numbers.k-state-expanded li,
  .k-ie11 .k-pager-numbers.k-state-expanded li,
  .k-safari .k-pager-numbers.k-state-expanded li {
    display: inline-block;
  }
}
@media only screen and (max-width: 640px) {
  .k-webkit .k-pager-info,
  .k-ff .k-pager-info,
  .k-ie11 .k-pager-info,
  .k-safari .k-pager-info {
    display: none;
  }
}
@media only screen and (max-width: 480px) {
  .k-webkit .k-pager-sizes,
  .k-ff .k-pager-sizes,
  .k-ie11 .k-pager-sizes,
  .k-safari .k-pager-sizes {
    display: none;
  }
}
/* Default Theme */
.k-chart .k-mask {
  background-color: #ffffff;
  filter: alpha(opacity=68);
  opacity: 0.68;
}
.k-chart .k-selection {
  border-color: #e5e5e5;
}
.k-chart .k-handle {
  width: 15px;
  height: 15px;
  background-color: #3f51b5;
  border-radius: 10px;
}
.k-chart .k-leftHandle {
  left: -8px;
}
.k-chart .k-rightHandle {
  right: -8px;
}
.k-chart .k-handle:hover {
  background-color: #00b0ff;
  border-color: #00b0ff;
}
.k-chart .k-navigator-hint .k-tooltip {
  border: 3px solid #ffffff;
  -webkit-box-shadow: 0 0 0 3px rgba(0, 0, 0, 0.2);
          box-shadow: 0 0 0 3px rgba(0, 0, 0, 0.2);
  background: #ffffff;
  color: #242424;
}
.k-chart .k-navigator-hint .k-scroll {
  background: #3f51b5;
  height: 4px;
}
.k-chart-tooltip {
  background-image: none;
}
/* Map */
.k-map .k-marker {
  background-image: url("Material/markers.png");
}
@media only screen and (-webkit-min-device-pixel-ratio: 2), only screen and (min-device-pixel-ratio: 2) {
  .k-map .k-marker {
    background-image: url("Material/markers_2x.png");
  }
}
.k-map .k-attribution {
  color: #666666;
}
.k-map .k-shadow {
  background-color: #f9f9f9;
  border-color: #f9f9f9;
}
.k-map .k-zoom-control {
  border-color: #fff;
  -webkit-box-shadow: 0 1px 2px 0 rgba(0, 0, 0, 0.2);
          box-shadow: 0 1px 2px 0 rgba(0, 0, 0, 0.2);
  border-radius: 2px;
}
.k-map .k-map-controls .k-button {
  -webkit-box-shadow: none;
          box-shadow: none;
}
.k-map .k-map-controls .k-button:focus,
.k-map .k-map-controls .k-button:active,
.k-map .k-map-controls .k-button:focus:active {
  background-color: #d6d6d6;
  border-color: #d6d6d6;
  -webkit-box-shadow: none;
          box-shadow: none;
}
.k-buttons-horizontal .k-zoom-out {
  border-radius: 0 2px 2px 0;
}
.k-buttons-horizontal :first-child {
  border-radius: 2px 0 0 2px;
}
.k-rtl .k-buttons-horizontal .k-zoom-out {
  border-radius: 2px 0 0 2px;
}
.k-rtl .k-buttons-horizontal :first-child {
  border-radius: 0 2px 2px 0;
}
.k-button-wrap .k-button {
  font-size: 21px;
  padding: 7px 13px;
}
.k-spreadsheet-top-corner,
.k-spreadsheet-row-header td,
.k-spreadsheet-column-header td {
  background-color: #ffffff;
  background-image: none;
  color: #000000;
  border-color: #cccccc;
}
.k-spreadsheet-top-corner {
  border-color: #cccccc;
}
.k-spreadsheet-top-corner:after {
  border-color: transparent #cccccc #cccccc transparent;
}
.k-spreadsheet-pane {
  border-color: #cccccc;
}
.k-spreadsheet-pane td {
  border-color: #e6e6e6;
}
.k-spreadsheet-pane .k-spreadsheet-column-header td,
.k-spreadsheet-pane .k-spreadsheet-row-header td {
  border-color: #cccccc;
}
.k-spreadsheet-pane .k-spreadsheet-merged-cell {
  background-color: #ffffff;
}
.k-spreadsheet-pane .k-selection-partial,
.k-spreadsheet-pane .k-selection-full {
  border-color: rgba(0, 176, 255, 0.2);
  background-color: rgba(0, 176, 255, 0.2);
}
.k-spreadsheet-column-header .k-selection-partial,
.k-spreadsheet-column-header .k-selection-full {
  border-bottom-color: #00b0ff;
}
.k-spreadsheet-row-header .k-selection-partial,
.k-spreadsheet-row-header .k-selection-full {
  border-right-color: #00b0ff;
}
.k-spreadsheet-pane .k-selection-partial {
  background-color: rgba(0, 176, 255, 0.2);
}
.k-spreadsheet-selection {
  background-color: rgba(0, 176, 255, 0.2);
  border-color: #00b0ff;
}
.k-spreadsheet-cell-editor {
  -webkit-box-shadow: inset 0 0 0 2px #00b0ff;
          box-shadow: inset 0 0 0 2px #00b0ff;
}
.k-spreadsheet-active-cell {
  -webkit-box-shadow: inset 0 0 0 1px #00b0ff;
          box-shadow: inset 0 0 0 1px #00b0ff;
  border-color: #00b0ff;
}
.k-spreadsheet-active-cell td {
  background-color: #ffffff;
  border-color: #00b0ff;
  -webkit-box-shadow: inset 1px 1px 0 1px #00b0ff, inset 0 0 0 1px #00b0ff;
          box-shadow: inset 1px 1px 0 1px #00b0ff, inset 0 0 0 1px #00b0ff;
}
.k-spreadsheet-active-cell.k-right td {
  -webkit-box-shadow: inset 1px 1px 0 1px #00b0ff, inset -2px 0 0 1px #00b0ff;
          box-shadow: inset 1px 1px 0 1px #00b0ff, inset -2px 0 0 1px #00b0ff;
}
.k-spreadsheet-active-cell.k-bottom td {
  -webkit-box-shadow: inset 1px 1px 0 1px #00b0ff, inset 0 -2px 0 1px #00b0ff;
          box-shadow: inset 1px 1px 0 1px #00b0ff, inset 0 -2px 0 1px #00b0ff;
}
.k-spreadsheet-active-cell.k-right.k-bottom td {
  -webkit-box-shadow: inset 1px 1px 0 1px #00b0ff, inset -2px -2px 0 1px #00b0ff;
          box-shadow: inset 1px 1px 0 1px #00b0ff, inset -2px -2px 0 1px #00b0ff;
}
.k-ff .k-spreadsheet-active-cell td {
  -webkit-box-shadow: inset 0 0 0 1px #00b0ff;
          box-shadow: inset 0 0 0 1px #00b0ff;
}
.k-spreadsheet-active-cell.k-single {
  background-color: #fff;
}
.k-spreadsheet > .k-spreadsheet-formula-bar {
  background-color: #ffffff;
  border-color: #ffffff #ffffff #cccccc;
}
.k-spreadsheet > .k-spreadsheet-formula-bar:before {
  border-color: #cccccc;
}
.k-spreadsheet > .k-spreadsheet-formula-bar:after {
  border-color: #ffffff;
}
.k-spreadsheet .k-spreadsheet-formula-input {
  background-color: #ffffff;
  color: #444444;
}
.k-spreadsheet .k-resize-handle,
.k-spreadsheet .k-resize-hint-handle,
.k-spreadsheet .k-resize-hint-marker {
  background-color: #00b0ff;
}
.k-spreadsheet .k-resize-hint-vertical .k-resize-hint-handle,
.k-spreadsheet .k-resize-hint-vertical .k-resize-hint-marker {
  background-color: #00b0ff;
}
.k-spreadsheet-format-cells .k-spreadsheet-preview {
  border-color: #e6e6e6;
}
.k-spreadsheet-filter {
  border-radius: 2px;
  background-color: #ffffff;
  -webkit-box-shadow: inset 0 0 0 1px #e6e6e6;
          box-shadow: inset 0 0 0 1px #e6e6e6;
}
.k-spreadsheet-filter.k-state-active {
  color: #3f51b5;
  background-color: #00b0ff;
}
.k-spreadsheet-filter:hover {
  color: #444444;
  background: #ebebeb;
  border-color: #d7d7d7;
}
.k-action-window .k-action-buttons {
  border-color: #e6e6e6;
}
.k-spreadsheet-sample {
  color: #919191;
}
.k-state-selected .k-spreadsheet-sample {
  color: inherit;
}
.k-spreadsheet-window .k-list-wrapper,
.k-spreadsheet-window .k-list {
  border-color: #e6e6e6;
  border-radius: 2px;
}
.k-spreadsheet-toolbar.k-toolbar .k-button-group .k-button {
  border-radius: 2px;
}
.k-spreadsheet-toolbar > .k-widget,
.k-spreadsheet-toolbar > .k-button,
.k-spreadsheet-toolbar > .k-button-group {
  border-radius: 2px;
}
.k-spreadsheet-toolbar > .k-separator {
  border-color: #e6e6e6;
}
.k-spreadsheet-toolbar .k-overflow-anchor {
  border-radius: 0;
}
.k-spreadsheet-popup {
  border-radius: 2px;
}
.k-spreadsheet-popup .k-separator {
  background-color: #e6e6e6;
}
.k-spreadsheet-popup .k-button {
  background-color: transparent;
}
.k-spreadsheet-popup .k-button:hover {
  background-color: #ebebeb;
}
.k-spreadsheet-popup .k-state-active {
  background-color: #00b0ff;
  color: #ffffff;
}
.k-spreadsheet-popup .k-state-active:hover {
  background-color: #008dcc;
}
.k-spreadsheet-filter-menu .k-details {
  border-color: #e6e6e6;
}
.k-spreadsheet-filter-menu .k-details-content .k-space-right {
  background-color: #ffffff;
}
.k-spreadsheet-filter-menu .k-spreadsheet-value-treeview-wrapper {
  background-color: #ffffff;
  border-color: #e6e6e6;
  border-radius: 2px 0 0 2px;
}
.k-syntax-ref {
  color: #ff8822;
}
.k-syntax-num {
  color: #0099ff;
}
.k-syntax-func {
  font-weight: bold;
}
.k-syntax-str {
  color: #38b714;
}
.k-syntax-error {
  color: red;
}
.k-syntax-bool {
  color: #a9169c;
}
.k-syntax-startexp {
  font-weight: bold;
}
.k-syntax-paren-match {
  background-color: #caf200;
}
.k-series-a {
  border-color: #3f51b5;
  background-color: rgba(63, 81, 181, 0.15);
}
.k-series-b {
  border-color: #03a9f4;
  background-color: rgba(3, 169, 244, 0.15);
}
.k-series-c {
  border-color: #4caf50;
  background-color: rgba(76, 175, 80, 0.15);
}
.k-series-d {
  border-color: #f9ce1d;
  background-color: rgba(249, 206, 29, 0.15);
}
.k-series-e {
  border-color: #ff9800;
  background-color: rgba(255, 152, 0, 0.15);
}
.k-series-f {
  border-color: #ff5722;
  background-color: rgba(255, 87, 34, 0.15);
}
.k-spreadsheet-sheets-remove:hover .k-icon {
  color: #cc2222;
}
.k-spreadsheet-formula-list .k-state-focused {
  background-color: #00b0ff;
  color: #3f51b5;
}
.k-spreadsheet .k-spreadsheet-quick-access-toolbar .k-button,
.k-spreadsheet .k-spreadsheet-sheets-bar .k-button {
  -webkit-box-shadow: none;
          box-shadow: none;
  color: #ffffff;
  border-radius: 0;
  line-height: 2.6em;
  width: 3em;
}
.k-spreadsheet .k-spreadsheet-quick-access-toolbar .k-button:hover,
.k-spreadsheet .k-spreadsheet-sheets-bar .k-button:hover {
  background-color: #324191;
  border-color: #324191;
}
.k-spreadsheet .k-spreadsheet-sheets-bar .k-button {
  left: 0;
  bottom: 0;
  padding-top: .5em;
  padding-bottom: .5em;
  line-height: 2.2em;
}
.k-spreadsheet .k-spreadsheet-sheets-remove {
  margin: 0 0 0 -1em;
}
.k-spreadsheet-sheets-items .k-state-default .k-link,
.k-spreadsheet-tabstrip .k-state-default .k-link {
  color: #9fa8da;
}
.k-spreadsheet-sheets-items .k-item.k-state-hover,
.k-spreadsheet-tabstrip .k-item.k-state-hover,
.k-spreadsheet-sheets-items .k-item.k-state-active,
.k-spreadsheet-tabstrip .k-item.k-state-active,
.k-spreadsheet-sheets-items .k-item.k-state-focused,
.k-spreadsheet-tabstrip .k-item.k-state-focused {
  background-color: transparent;
}
.k-spreadsheet-sheets-items .k-item.k-state-hover .k-link,
.k-spreadsheet-tabstrip .k-item.k-state-hover .k-link,
.k-spreadsheet-sheets-items .k-item.k-state-active .k-link,
.k-spreadsheet-tabstrip .k-item.k-state-active .k-link,
.k-spreadsheet-sheets-items .k-item.k-state-focused .k-link,
.k-spreadsheet-tabstrip .k-item.k-state-focused .k-link {
  color: #ffffff;
}
.k-spreadsheet-sheets-items .k-state-active .k-link,
.k-spreadsheet-tabstrip .k-state-active .k-link {
  color: #ffffff;
}
.k-spreadsheet-toolbar > .k-button:not(.k-overflow-anchor) {
  line-height: 2em;
}

@charset "UTF-8";
/* Knihovny */
/*!
 * Bootstrap v3.3.7 (http://getbootstrap.com)
 * Copyright 2011-2016 Twitter, Inc.
 * Licensed under MIT (https://github.com/twbs/bootstrap/blob/master/LICENSE)
 */
/*! normalize.css v3.0.3 | MIT License | github.com/necolas/normalize.css */
@import url(../Content/Flaticon/flaticon.css);
html {
  font-family: sans-serif;
  -ms-text-size-adjust: 100%;
  -webkit-text-size-adjust: 100%; }

body {
  margin: 0; }

article,
aside,
details,
figcaption,
figure,
footer,
header,
hgroup,
main,
menu,
nav,
section,
summary {
  display: block; }

audio,
canvas,
progress,
video {
  display: inline-block;
  vertical-align: baseline; }

audio:not([controls]) {
  display: none;
  height: 0; }

[hidden],
template {
  display: none; }

a {
  background-color: transparent; }

a:active,
a:hover {
  outline: 0; }

abbr[title] {
  border-bottom: 1px dotted; }

b,
strong {
  font-weight: bold; }

dfn {
  font-style: italic; }

h1 {
  font-size: 2em;
  margin: 0.67em 0; }

mark {
  background: #ff0;
  color: #000; }

small {
  font-size: 80%; }

sub,
sup {
  font-size: 75%;
  line-height: 0;
  position: relative;
  vertical-align: baseline; }

sup {
  top: -0.5em; }

sub {
  bottom: -0.25em; }

img {
  border: 0; }

svg:not(:root) {
  overflow: hidden; }

figure {
  margin: 1em 40px; }

hr {
  box-sizing: content-box;
  height: 0; }

pre {
  overflow: auto; }

code,
kbd,
pre,
samp {
  font-family: monospace, monospace;
  font-size: 1em; }

button,
input,
optgroup,
select,
textarea {
  color: inherit;
  font: inherit;
  margin: 0; }

button {
  overflow: visible; }

button,
select {
  text-transform: none; }

button,
html input[type="button"],
input[type="reset"],
input[type="submit"] {
  -webkit-appearance: button;
  cursor: pointer; }

button[disabled],
html input[disabled] {
  cursor: default; }

button::-moz-focus-inner,
input::-moz-focus-inner {
  border: 0;
  padding: 0; }

input {
  line-height: normal; }

input[type="checkbox"],
input[type="radio"] {
  box-sizing: border-box;
  padding: 0; }

input[type="number"]::-webkit-inner-spin-button,
input[type="number"]::-webkit-outer-spin-button {
  height: auto; }

input[type="search"] {
  -webkit-appearance: textfield;
  box-sizing: content-box; }

input[type="search"]::-webkit-search-cancel-button,
input[type="search"]::-webkit-search-decoration {
  -webkit-appearance: none; }

fieldset {
  border: 1px solid #c0c0c0;
  margin: 0 2px;
  padding: 0.35em 0.625em 0.75em; }

legend {
  border: 0;
  padding: 0; }

textarea {
  overflow: auto; }

optgroup {
  font-weight: bold; }

table {
  border-collapse: collapse;
  border-spacing: 0; }

td,
th {
  padding: 0; }

/*! Source: https://github.com/h5bp/html5-boilerplate/blob/master/src/css/main.css */
@media print {
  *,
  *:before,
  *:after {
    background: transparent !important;
    color: #000 !important;
    box-shadow: none !important;
    text-shadow: none !important; }
  a,
  a:visited {
    text-decoration: underline; }
  a[href]:after {
    content: " (" attr(href) ")"; }
  abbr[title]:after {
    content: " (" attr(title) ")"; }
  a[href^="#"]:after,
  a[href^="javascript:"]:after {
    content: ""; }
  pre,
  blockquote {
    border: 1px solid #999;
    page-break-inside: avoid; }
  thead {
    display: table-header-group; }
  tr,
  img {
    page-break-inside: avoid; }
  img {
    max-width: 100% !important; }
  p,
  h2,
  h3 {
    orphans: 3;
    widows: 3; }
  h2,
  h3 {
    page-break-after: avoid; }
  .navbar {
    display: none; }
  .btn > .caret,
  .dropup > .btn > .caret {
    border-top-color: #000 !important; }
  .label {
    border: 1px solid #000; }
  .table {
    border-collapse: collapse !important; }
    .table td,
    .table th {
      background-color: #fff !important; }
  .table-bordered th,
  .table-bordered td {
    border: 1px solid #ddd !important; } }

@font-face {
  font-family: 'Glyphicons Halflings';
  src: url("../fonts/bootstrap/glyphicons-halflings-regular.eot");
  src: url("../fonts/bootstrap/glyphicons-halflings-regular.eot?#iefix") format("embedded-opentype"), url("../fonts/bootstrap/glyphicons-halflings-regular.woff2") format("woff2"), url("../fonts/bootstrap/glyphicons-halflings-regular.woff") format("woff"), url("../fonts/bootstrap/glyphicons-halflings-regular.ttf") format("truetype"), url("../fonts/bootstrap/glyphicons-halflings-regular.svg#glyphicons_halflingsregular") format("svg"); }

.glyphicon {
  position: relative;
  top: 1px;
  display: inline-block;
  font-family: 'Glyphicons Halflings';
  font-style: normal;
  font-weight: normal;
  line-height: 1;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale; }

.glyphicon-asterisk:before {
  content: "\002a"; }

.glyphicon-plus:before {
  content: "\002b"; }

.glyphicon-euro:before,
.glyphicon-eur:before {
  content: "\20ac"; }

.glyphicon-minus:before {
  content: "\2212"; }

.glyphicon-cloud:before {
  content: "\2601"; }

.glyphicon-envelope:before {
  content: "\2709"; }

.glyphicon-pencil:before {
  content: "\270f"; }

.glyphicon-glass:before {
  content: "\e001"; }

.glyphicon-music:before {
  content: "\e002"; }

.glyphicon-search:before {
  content: "\e003"; }

.glyphicon-heart:before {
  content: "\e005"; }

.glyphicon-star:before {
  content: "\e006"; }

.glyphicon-star-empty:before {
  content: "\e007"; }

.glyphicon-user:before {
  content: "\e008"; }

.glyphicon-film:before {
  content: "\e009"; }

.glyphicon-th-large:before {
  content: "\e010"; }

.glyphicon-th:before {
  content: "\e011"; }

.glyphicon-th-list:before {
  content: "\e012"; }

.glyphicon-ok:before {
  content: "\e013"; }

.glyphicon-remove:before {
  content: "\e014"; }

.glyphicon-zoom-in:before {
  content: "\e015"; }

.glyphicon-zoom-out:before {
  content: "\e016"; }

.glyphicon-off:before {
  content: "\e017"; }

.glyphicon-signal:before {
  content: "\e018"; }

.glyphicon-cog:before {
  content: "\e019"; }

.glyphicon-trash:before {
  content: "\e020"; }

.glyphicon-home:before {
  content: "\e021"; }

.glyphicon-file:before {
  content: "\e022"; }

.glyphicon-time:before {
  content: "\e023"; }

.glyphicon-road:before {
  content: "\e024"; }

.glyphicon-download-alt:before {
  content: "\e025"; }

.glyphicon-download:before {
  content: "\e026"; }

.glyphicon-upload:before {
  content: "\e027"; }

.glyphicon-inbox:before {
  content: "\e028"; }

.glyphicon-play-circle:before {
  content: "\e029"; }

.glyphicon-repeat:before {
  content: "\e030"; }

.glyphicon-refresh:before {
  content: "\e031"; }

.glyphicon-list-alt:before {
  content: "\e032"; }

.glyphicon-lock:before {
  content: "\e033"; }

.glyphicon-flag:before {
  content: "\e034"; }

.glyphicon-headphones:before {
  content: "\e035"; }

.glyphicon-volume-off:before {
  content: "\e036"; }

.glyphicon-volume-down:before {
  content: "\e037"; }

.glyphicon-volume-up:before {
  content: "\e038"; }

.glyphicon-qrcode:before {
  content: "\e039"; }

.glyphicon-barcode:before {
  content: "\e040"; }

.glyphicon-tag:before {
  content: "\e041"; }

.glyphicon-tags:before {
  content: "\e042"; }

.glyphicon-book:before {
  content: "\e043"; }

.glyphicon-bookmark:before {
  content: "\e044"; }

.glyphicon-print:before {
  content: "\e045"; }

.glyphicon-camera:before {
  content: "\e046"; }

.glyphicon-font:before {
  content: "\e047"; }

.glyphicon-bold:before {
  content: "\e048"; }

.glyphicon-italic:before {
  content: "\e049"; }

.glyphicon-text-height:before {
  content: "\e050"; }

.glyphicon-text-width:before {
  content: "\e051"; }

.glyphicon-align-left:before {
  content: "\e052"; }

.glyphicon-align-center:before {
  content: "\e053"; }

.glyphicon-align-right:before {
  content: "\e054"; }

.glyphicon-align-justify:before {
  content: "\e055"; }

.glyphicon-list:before {
  content: "\e056"; }

.glyphicon-indent-left:before {
  content: "\e057"; }

.glyphicon-indent-right:before {
  content: "\e058"; }

.glyphicon-facetime-video:before {
  content: "\e059"; }

.glyphicon-picture:before {
  content: "\e060"; }

.glyphicon-map-marker:before {
  content: "\e062"; }

.glyphicon-adjust:before {
  content: "\e063"; }

.glyphicon-tint:before {
  content: "\e064"; }

.glyphicon-edit:before {
  content: "\e065"; }

.glyphicon-share:before {
  content: "\e066"; }

.glyphicon-check:before {
  content: "\e067"; }

.glyphicon-move:before {
  content: "\e068"; }

.glyphicon-step-backward:before {
  content: "\e069"; }

.glyphicon-fast-backward:before {
  content: "\e070"; }

.glyphicon-backward:before {
  content: "\e071"; }

.glyphicon-play:before {
  content: "\e072"; }

.glyphicon-pause:before {
  content: "\e073"; }

.glyphicon-stop:before {
  content: "\e074"; }

.glyphicon-forward:before {
  content: "\e075"; }

.glyphicon-fast-forward:before {
  content: "\e076"; }

.glyphicon-step-forward:before {
  content: "\e077"; }

.glyphicon-eject:before {
  content: "\e078"; }

.glyphicon-chevron-left:before {
  content: "\e079"; }

.glyphicon-chevron-right:before {
  content: "\e080"; }

.glyphicon-plus-sign:before {
  content: "\e081"; }

.glyphicon-minus-sign:before {
  content: "\e082"; }

.glyphicon-remove-sign:before {
  content: "\e083"; }

.glyphicon-ok-sign:before {
  content: "\e084"; }

.glyphicon-question-sign:before {
  content: "\e085"; }

.glyphicon-info-sign:before {
  content: "\e086"; }

.glyphicon-screenshot:before {
  content: "\e087"; }

.glyphicon-remove-circle:before {
  content: "\e088"; }

.glyphicon-ok-circle:before {
  content: "\e089"; }

.glyphicon-ban-circle:before {
  content: "\e090"; }

.glyphicon-arrow-left:before {
  content: "\e091"; }

.glyphicon-arrow-right:before {
  content: "\e092"; }

.glyphicon-arrow-up:before {
  content: "\e093"; }

.glyphicon-arrow-down:before {
  content: "\e094"; }

.glyphicon-share-alt:before {
  content: "\e095"; }

.glyphicon-resize-full:before {
  content: "\e096"; }

.glyphicon-resize-small:before {
  content: "\e097"; }

.glyphicon-exclamation-sign:before {
  content: "\e101"; }

.glyphicon-gift:before {
  content: "\e102"; }

.glyphicon-leaf:before {
  content: "\e103"; }

.glyphicon-fire:before {
  content: "\e104"; }

.glyphicon-eye-open:before {
  content: "\e105"; }

.glyphicon-eye-close:before {
  content: "\e106"; }

.glyphicon-warning-sign:before {
  content: "\e107"; }

.glyphicon-plane:before {
  content: "\e108"; }

.glyphicon-calendar:before {
  content: "\e109"; }

.glyphicon-random:before {
  content: "\e110"; }

.glyphicon-comment:before {
  content: "\e111"; }

.glyphicon-magnet:before {
  content: "\e112"; }

.glyphicon-chevron-up:before {
  content: "\e113"; }

.glyphicon-chevron-down:before {
  content: "\e114"; }

.glyphicon-retweet:before {
  content: "\e115"; }

.glyphicon-shopping-cart:before {
  content: "\e116"; }

.glyphicon-folder-close:before {
  content: "\e117"; }

.glyphicon-folder-open:before {
  content: "\e118"; }

.glyphicon-resize-vertical:before {
  content: "\e119"; }

.glyphicon-resize-horizontal:before {
  content: "\e120"; }

.glyphicon-hdd:before {
  content: "\e121"; }

.glyphicon-bullhorn:before {
  content: "\e122"; }

.glyphicon-bell:before {
  content: "\e123"; }

.glyphicon-certificate:before {
  content: "\e124"; }

.glyphicon-thumbs-up:before {
  content: "\e125"; }

.glyphicon-thumbs-down:before {
  content: "\e126"; }

.glyphicon-hand-right:before {
  content: "\e127"; }

.glyphicon-hand-left:before {
  content: "\e128"; }

.glyphicon-hand-up:before {
  content: "\e129"; }

.glyphicon-hand-down:before {
  content: "\e130"; }

.glyphicon-circle-arrow-right:before {
  content: "\e131"; }

.glyphicon-circle-arrow-left:before {
  content: "\e132"; }

.glyphicon-circle-arrow-up:before {
  content: "\e133"; }

.glyphicon-circle-arrow-down:before {
  content: "\e134"; }

.glyphicon-globe:before {
  content: "\e135"; }

.glyphicon-wrench:before {
  content: "\e136"; }

.glyphicon-tasks:before {
  content: "\e137"; }

.glyphicon-filter:before {
  content: "\e138"; }

.glyphicon-briefcase:before {
  content: "\e139"; }

.glyphicon-fullscreen:before {
  content: "\e140"; }

.glyphicon-dashboard:before {
  content: "\e141"; }

.glyphicon-paperclip:before {
  content: "\e142"; }

.glyphicon-heart-empty:before {
  content: "\e143"; }

.glyphicon-link:before {
  content: "\e144"; }

.glyphicon-phone:before {
  content: "\e145"; }

.glyphicon-pushpin:before {
  content: "\e146"; }

.glyphicon-usd:before {
  content: "\e148"; }

.glyphicon-gbp:before {
  content: "\e149"; }

.glyphicon-sort:before {
  content: "\e150"; }

.glyphicon-sort-by-alphabet:before {
  content: "\e151"; }

.glyphicon-sort-by-alphabet-alt:before {
  content: "\e152"; }

.glyphicon-sort-by-order:before {
  content: "\e153"; }

.glyphicon-sort-by-order-alt:before {
  content: "\e154"; }

.glyphicon-sort-by-attributes:before {
  content: "\e155"; }

.glyphicon-sort-by-attributes-alt:before {
  content: "\e156"; }

.glyphicon-unchecked:before {
  content: "\e157"; }

.glyphicon-expand:before {
  content: "\e158"; }

.glyphicon-collapse-down:before {
  content: "\e159"; }

.glyphicon-collapse-up:before {
  content: "\e160"; }

.glyphicon-log-in:before {
  content: "\e161"; }

.glyphicon-flash:before {
  content: "\e162"; }

.glyphicon-log-out:before {
  content: "\e163"; }

.glyphicon-new-window:before {
  content: "\e164"; }

.glyphicon-record:before {
  content: "\e165"; }

.glyphicon-save:before {
  content: "\e166"; }

.glyphicon-open:before {
  content: "\e167"; }

.glyphicon-saved:before {
  content: "\e168"; }

.glyphicon-import:before {
  content: "\e169"; }

.glyphicon-export:before {
  content: "\e170"; }

.glyphicon-send:before {
  content: "\e171"; }

.glyphicon-floppy-disk:before {
  content: "\e172"; }

.glyphicon-floppy-saved:before {
  content: "\e173"; }

.glyphicon-floppy-remove:before {
  content: "\e174"; }

.glyphicon-floppy-save:before {
  content: "\e175"; }

.glyphicon-floppy-open:before {
  content: "\e176"; }

.glyphicon-credit-card:before {
  content: "\e177"; }

.glyphicon-transfer:before {
  content: "\e178"; }

.glyphicon-cutlery:before {
  content: "\e179"; }

.glyphicon-header:before {
  content: "\e180"; }

.glyphicon-compressed:before {
  content: "\e181"; }

.glyphicon-earphone:before {
  content: "\e182"; }

.glyphicon-phone-alt:before {
  content: "\e183"; }

.glyphicon-tower:before {
  content: "\e184"; }

.glyphicon-stats:before {
  content: "\e185"; }

.glyphicon-sd-video:before {
  content: "\e186"; }

.glyphicon-hd-video:before {
  content: "\e187"; }

.glyphicon-subtitles:before {
  content: "\e188"; }

.glyphicon-sound-stereo:before {
  content: "\e189"; }

.glyphicon-sound-dolby:before {
  content: "\e190"; }

.glyphicon-sound-5-1:before {
  content: "\e191"; }

.glyphicon-sound-6-1:before {
  content: "\e192"; }

.glyphicon-sound-7-1:before {
  content: "\e193"; }

.glyphicon-copyright-mark:before {
  content: "\e194"; }

.glyphicon-registration-mark:before {
  content: "\e195"; }

.glyphicon-cloud-download:before {
  content: "\e197"; }

.glyphicon-cloud-upload:before {
  content: "\e198"; }

.glyphicon-tree-conifer:before {
  content: "\e199"; }

.glyphicon-tree-deciduous:before {
  content: "\e200"; }

.glyphicon-cd:before {
  content: "\e201"; }

.glyphicon-save-file:before {
  content: "\e202"; }

.glyphicon-open-file:before {
  content: "\e203"; }

.glyphicon-level-up:before {
  content: "\e204"; }

.glyphicon-copy:before {
  content: "\e205"; }

.glyphicon-paste:before {
  content: "\e206"; }

.glyphicon-alert:before {
  content: "\e209"; }

.glyphicon-equalizer:before {
  content: "\e210"; }

.glyphicon-king:before {
  content: "\e211"; }

.glyphicon-queen:before {
  content: "\e212"; }

.glyphicon-pawn:before {
  content: "\e213"; }

.glyphicon-bishop:before {
  content: "\e214"; }

.glyphicon-knight:before {
  content: "\e215"; }

.glyphicon-baby-formula:before {
  content: "\e216"; }

.glyphicon-tent:before {
  content: "\26fa"; }

.glyphicon-blackboard:before {
  content: "\e218"; }

.glyphicon-bed:before {
  content: "\e219"; }

.glyphicon-apple:before {
  content: "\f8ff"; }

.glyphicon-erase:before {
  content: "\e221"; }

.glyphicon-hourglass:before {
  content: "\231b"; }

.glyphicon-lamp:before {
  content: "\e223"; }

.glyphicon-duplicate:before {
  content: "\e224"; }

.glyphicon-piggy-bank:before {
  content: "\e225"; }

.glyphicon-scissors:before {
  content: "\e226"; }

.glyphicon-bitcoin:before {
  content: "\e227"; }

.glyphicon-btc:before {
  content: "\e227"; }

.glyphicon-xbt:before {
  content: "\e227"; }

.glyphicon-yen:before {
  content: "\00a5"; }

.glyphicon-jpy:before {
  content: "\00a5"; }

.glyphicon-ruble:before {
  content: "\20bd"; }

.glyphicon-rub:before {
  content: "\20bd"; }

.glyphicon-scale:before {
  content: "\e230"; }

.glyphicon-ice-lolly:before {
  content: "\e231"; }

.glyphicon-ice-lolly-tasted:before {
  content: "\e232"; }

.glyphicon-education:before {
  content: "\e233"; }

.glyphicon-option-horizontal:before {
  content: "\e234"; }

.glyphicon-option-vertical:before {
  content: "\e235"; }

.glyphicon-menu-hamburger:before {
  content: "\e236"; }

.glyphicon-modal-window:before {
  content: "\e237"; }

.glyphicon-oil:before {
  content: "\e238"; }

.glyphicon-grain:before {
  content: "\e239"; }

.glyphicon-sunglasses:before {
  content: "\e240"; }

.glyphicon-text-size:before {
  content: "\e241"; }

.glyphicon-text-color:before {
  content: "\e242"; }

.glyphicon-text-background:before {
  content: "\e243"; }

.glyphicon-object-align-top:before {
  content: "\e244"; }

.glyphicon-object-align-bottom:before {
  content: "\e245"; }

.glyphicon-object-align-horizontal:before {
  content: "\e246"; }

.glyphicon-object-align-left:before {
  content: "\e247"; }

.glyphicon-object-align-vertical:before {
  content: "\e248"; }

.glyphicon-object-align-right:before {
  content: "\e249"; }

.glyphicon-triangle-right:before {
  content: "\e250"; }

.glyphicon-triangle-left:before {
  content: "\e251"; }

.glyphicon-triangle-bottom:before {
  content: "\e252"; }

.glyphicon-triangle-top:before {
  content: "\e253"; }

.glyphicon-console:before {
  content: "\e254"; }

.glyphicon-superscript:before {
  content: "\e255"; }

.glyphicon-subscript:before {
  content: "\e256"; }

.glyphicon-menu-left:before {
  content: "\e257"; }

.glyphicon-menu-right:before {
  content: "\e258"; }

.glyphicon-menu-down:before {
  content: "\e259"; }

.glyphicon-menu-up:before {
  content: "\e260"; }

* {
  box-sizing: border-box; }

*:before,
*:after {
  box-sizing: border-box; }

html {
  font-size: 10px;
  -webkit-tap-highlight-color: transparent; }

body {
  font-family: "Helvetica Neue", Helvetica, Arial, sans-serif;
  font-size: 14px;
  line-height: 1.42857;
  color: #333333;
  background-color: #fff; }

input,
button,
select,
textarea {
  font-family: inherit;
  font-size: inherit;
  line-height: inherit; }

a {
  color: #337ab7;
  text-decoration: none; }
  a:hover, a:focus {
    color: #23527c;
    text-decoration: underline; }
  a:focus {
    outline: 5px auto -webkit-focus-ring-color;
    outline-offset: -2px; }

figure {
  margin: 0; }

img {
  vertical-align: middle; }

.img-responsive {
  display: block;
  max-width: 100%;
  height: auto; }

.img-rounded {
  border-radius: 6px; }

.img-thumbnail {
  padding: 4px;
  line-height: 1.42857;
  background-color: #fff;
  border: 1px solid #ddd;
  border-radius: 4px;
  transition: all 0.2s ease-in-out;
  display: inline-block;
  max-width: 100%;
  height: auto; }

.img-circle {
  border-radius: 50%; }

hr {
  margin-top: 20px;
  margin-bottom: 20px;
  border: 0;
  border-top: 1px solid #eeeeee; }

.sr-only {
  position: absolute;
  width: 1px;
  height: 1px;
  margin: -1px;
  padding: 0;
  overflow: hidden;
  clip: rect(0, 0, 0, 0);
  border: 0; }

.sr-only-focusable:active, .sr-only-focusable:focus {
  position: static;
  width: auto;
  height: auto;
  margin: 0;
  overflow: visible;
  clip: auto; }

[role="button"] {
  cursor: pointer; }

h1, h2, h3, h4, h5, h6,
.h1, .h2, .h3, .h4, .h5, .h6 {
  font-family: inherit;
  font-weight: 500;
  line-height: 1.1;
  color: inherit; }
  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;
    color: #777777; }

h1, .h1,
h2, .h2,
h3, .h3 {
  margin-top: 20px;
  margin-bottom: 10px; }
  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, .h4,
h5, .h5,
h6, .h6 {
  margin-top: 10px;
  margin-bottom: 10px; }
  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: 36px; }

h2, .h2 {
  font-size: 30px; }

h3, .h3 {
  font-size: 24px; }

h4, .h4 {
  font-size: 18px; }

h5, .h5 {
  font-size: 14px; }

h6, .h6 {
  font-size: 12px; }

p {
  margin: 0 0 10px; }

.lead {
  margin-bottom: 20px;
  font-size: 16px;
  font-weight: 300;
  line-height: 1.4; }
  @media (min-width: 768px) {
    .lead {
      font-size: 21px; } }

small,
.small {
  font-size: 85%; }

mark,
.mark {
  background-color: #fcf8e3;
  padding: .2em; }

.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; }

.text-muted {
  color: #777777; }

.text-primary {
  color: #337ab7; }

a.text-primary:hover,
a.text-primary:focus {
  color: #286090; }

.text-success {
  color: #3c763d; }

a.text-success:hover,
a.text-success:focus {
  color: #2b542c; }

.text-info {
  color: #31708f; }

a.text-info:hover,
a.text-info:focus {
  color: #245269; }

.text-warning {
  color: #8a6d3b; }

a.text-warning:hover,
a.text-warning:focus {
  color: #66512c; }

.text-danger {
  color: #a94442; }

a.text-danger:hover,
a.text-danger:focus {
  color: #843534; }

.bg-primary {
  color: #fff; }

.bg-primary {
  background-color: #337ab7; }

a.bg-primary:hover,
a.bg-primary:focus {
  background-color: #286090; }

.bg-success {
  background-color: #dff0d8; }

a.bg-success:hover,
a.bg-success:focus {
  background-color: #c1e2b3; }

.bg-info {
  background-color: #d9edf7; }

a.bg-info:hover,
a.bg-info:focus {
  background-color: #afd9ee; }

.bg-warning {
  background-color: #fcf8e3; }

a.bg-warning:hover,
a.bg-warning:focus {
  background-color: #f7ecb5; }

.bg-danger {
  background-color: #f2dede; }

a.bg-danger:hover,
a.bg-danger:focus {
  background-color: #e4b9b9; }

.page-header {
  padding-bottom: 9px;
  margin: 40px 0 20px;
  border-bottom: 1px solid #eeeeee; }

ul,
ol {
  margin-top: 0;
  margin-bottom: 10px; }
  ul ul,
  ul ol,
  ol ul,
  ol ol {
    margin-bottom: 0; }

.list-unstyled {
  padding-left: 0;
  list-style: none; }

.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: 20px; }

dt,
dd {
  line-height: 1.42857; }

dt {
  font-weight: bold; }

dd {
  margin-left: 0; }

.dl-horizontal dd:before, .dl-horizontal dd:after {
  content: " ";
  display: table; }

.dl-horizontal dd:after {
  clear: both; }

@media (min-width: 768px) {
  .dl-horizontal dt {
    float: left;
    width: 160px;
    clear: left;
    text-align: right;
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap; }
  .dl-horizontal dd {
    margin-left: 180px; } }

abbr[title],
abbr[data-original-title] {
  cursor: help;
  border-bottom: 1px dotted #777777; }

.initialism {
  font-size: 90%; }

blockquote {
  padding: 10px 20px;
  margin: 0 0 20px;
  font-size: 17.5px;
  border-left: 5px solid #eeeeee; }
  blockquote p:last-child,
  blockquote ul:last-child,
  blockquote ol:last-child {
    margin-bottom: 0; }
  blockquote footer,
  blockquote small,
  blockquote .small {
    display: block;
    font-size: 80%;
    line-height: 1.42857;
    color: #777777; }
    blockquote footer:before,
    blockquote small:before,
    blockquote .small:before {
      content: '\2014 \00A0'; }

.blockquote-reverse,
blockquote.pull-right {
  padding-right: 15px;
  padding-left: 0;
  border-right: 5px solid #eeeeee;
  border-left: 0;
  text-align: right; }
  .blockquote-reverse footer:before,
  .blockquote-reverse small:before,
  .blockquote-reverse .small:before,
  blockquote.pull-right footer:before,
  blockquote.pull-right small:before,
  blockquote.pull-right .small:before {
    content: ''; }
  .blockquote-reverse footer:after,
  .blockquote-reverse small:after,
  .blockquote-reverse .small:after,
  blockquote.pull-right footer:after,
  blockquote.pull-right small:after,
  blockquote.pull-right .small:after {
    content: '\00A0 \2014'; }

address {
  margin-bottom: 20px;
  font-style: normal;
  line-height: 1.42857; }

code,
kbd,
pre,
samp {
  font-family: Menlo, Monaco, Consolas, "Courier New", monospace; }

code {
  padding: 2px 4px;
  font-size: 90%;
  color: #c7254e;
  background-color: #f9f2f4;
  border-radius: 4px; }

kbd {
  padding: 2px 4px;
  font-size: 90%;
  color: #fff;
  background-color: #333;
  border-radius: 3px;
  box-shadow: inset 0 -1px 0 rgba(0, 0, 0, 0.25); }
  kbd kbd {
    padding: 0;
    font-size: 100%;
    font-weight: bold;
    box-shadow: none; }

pre {
  display: block;
  padding: 9.5px;
  margin: 0 0 10px;
  font-size: 13px;
  line-height: 1.42857;
  word-break: break-all;
  word-wrap: break-word;
  color: #333333;
  background-color: #f5f5f5;
  border: 1px solid #ccc;
  border-radius: 4px; }
  pre code {
    padding: 0;
    font-size: inherit;
    color: inherit;
    white-space: pre-wrap;
    background-color: transparent;
    border-radius: 0; }

.pre-scrollable {
  max-height: 340px;
  overflow-y: scroll; }

.container {
  margin-right: auto;
  margin-left: auto;
  padding-left: 15px;
  padding-right: 15px; }
  .container:before, .container:after {
    content: " ";
    display: table; }
  .container:after {
    clear: both; }
  @media (min-width: 768px) {
    .container {
      width: 750px; } }
  @media (min-width: 992px) {
    .container {
      width: 970px; } }
  @media (min-width: 1200px) {
    .container {
      width: 1170px; } }

.container-fluid {
  margin-right: auto;
  margin-left: auto;
  padding-left: 15px;
  padding-right: 15px; }
  .container-fluid:before, .container-fluid:after {
    content: " ";
    display: table; }
  .container-fluid:after {
    clear: both; }

.row {
  margin-left: -15px;
  margin-right: -15px; }
  .row:before, .row:after {
    content: " ";
    display: table; }
  .row:after {
    clear: both; }

.col-xs-1, .col-sm-1, .col-md-1, .col-lg-1, .col-xs-2, .col-sm-2, .col-md-2, .col-lg-2, .col-xs-3, .col-sm-3, .col-md-3, .col-lg-3, .col-xs-4, .col-sm-4, .col-md-4, .col-lg-4, .col-xs-5, .col-sm-5, .col-md-5, .col-lg-5, .col-xs-6, .col-sm-6, .col-md-6, .col-lg-6, .col-xs-7, .col-sm-7, .col-md-7, .col-lg-7, .col-xs-8, .col-sm-8, .col-md-8, .col-lg-8, .col-xs-9, .col-sm-9, .col-md-9, .col-lg-9, .col-xs-10, .col-sm-10, .col-md-10, .col-lg-10, .col-xs-11, .col-sm-11, .col-md-11, .col-lg-11, .col-xs-12, .col-sm-12, .col-md-12, .col-lg-12 {
  position: relative;
  min-height: 1px;
  padding-left: 15px;
  padding-right: 15px; }

.col-xs-1, .col-xs-2, .col-xs-3, .col-xs-4, .col-xs-5, .col-xs-6, .col-xs-7, .col-xs-8, .col-xs-9, .col-xs-10, .col-xs-11, .col-xs-12 {
  float: left; }

.col-xs-1 {
  width: 8.33333%; }

.col-xs-2 {
  width: 16.66667%; }

.col-xs-3 {
  width: 25%; }

.col-xs-4 {
  width: 33.33333%; }

.col-xs-5 {
  width: 41.66667%; }

.col-xs-6 {
  width: 50%; }

.col-xs-7 {
  width: 58.33333%; }

.col-xs-8 {
  width: 66.66667%; }

.col-xs-9 {
  width: 75%; }

.col-xs-10 {
  width: 83.33333%; }

.col-xs-11 {
  width: 91.66667%; }

.col-xs-12 {
  width: 100%; }

.col-xs-pull-0 {
  right: auto; }

.col-xs-pull-1 {
  right: 8.33333%; }

.col-xs-pull-2 {
  right: 16.66667%; }

.col-xs-pull-3 {
  right: 25%; }

.col-xs-pull-4 {
  right: 33.33333%; }

.col-xs-pull-5 {
  right: 41.66667%; }

.col-xs-pull-6 {
  right: 50%; }

.col-xs-pull-7 {
  right: 58.33333%; }

.col-xs-pull-8 {
  right: 66.66667%; }

.col-xs-pull-9 {
  right: 75%; }

.col-xs-pull-10 {
  right: 83.33333%; }

.col-xs-pull-11 {
  right: 91.66667%; }

.col-xs-pull-12 {
  right: 100%; }

.col-xs-push-0 {
  left: auto; }

.col-xs-push-1 {
  left: 8.33333%; }

.col-xs-push-2 {
  left: 16.66667%; }

.col-xs-push-3 {
  left: 25%; }

.col-xs-push-4 {
  left: 33.33333%; }

.col-xs-push-5 {
  left: 41.66667%; }

.col-xs-push-6 {
  left: 50%; }

.col-xs-push-7 {
  left: 58.33333%; }

.col-xs-push-8 {
  left: 66.66667%; }

.col-xs-push-9 {
  left: 75%; }

.col-xs-push-10 {
  left: 83.33333%; }

.col-xs-push-11 {
  left: 91.66667%; }

.col-xs-push-12 {
  left: 100%; }

.col-xs-offset-0 {
  margin-left: 0%; }

.col-xs-offset-1 {
  margin-left: 8.33333%; }

.col-xs-offset-2 {
  margin-left: 16.66667%; }

.col-xs-offset-3 {
  margin-left: 25%; }

.col-xs-offset-4 {
  margin-left: 33.33333%; }

.col-xs-offset-5 {
  margin-left: 41.66667%; }

.col-xs-offset-6 {
  margin-left: 50%; }

.col-xs-offset-7 {
  margin-left: 58.33333%; }

.col-xs-offset-8 {
  margin-left: 66.66667%; }

.col-xs-offset-9 {
  margin-left: 75%; }

.col-xs-offset-10 {
  margin-left: 83.33333%; }

.col-xs-offset-11 {
  margin-left: 91.66667%; }

.col-xs-offset-12 {
  margin-left: 100%; }

@media (min-width: 768px) {
  .col-sm-1, .col-sm-2, .col-sm-3, .col-sm-4, .col-sm-5, .col-sm-6, .col-sm-7, .col-sm-8, .col-sm-9, .col-sm-10, .col-sm-11, .col-sm-12 {
    float: left; }
  .col-sm-1 {
    width: 8.33333%; }
  .col-sm-2 {
    width: 16.66667%; }
  .col-sm-3 {
    width: 25%; }
  .col-sm-4 {
    width: 33.33333%; }
  .col-sm-5 {
    width: 41.66667%; }
  .col-sm-6 {
    width: 50%; }
  .col-sm-7 {
    width: 58.33333%; }
  .col-sm-8 {
    width: 66.66667%; }
  .col-sm-9 {
    width: 75%; }
  .col-sm-10 {
    width: 83.33333%; }
  .col-sm-11 {
    width: 91.66667%; }
  .col-sm-12 {
    width: 100%; }
  .col-sm-pull-0 {
    right: auto; }
  .col-sm-pull-1 {
    right: 8.33333%; }
  .col-sm-pull-2 {
    right: 16.66667%; }
  .col-sm-pull-3 {
    right: 25%; }
  .col-sm-pull-4 {
    right: 33.33333%; }
  .col-sm-pull-5 {
    right: 41.66667%; }
  .col-sm-pull-6 {
    right: 50%; }
  .col-sm-pull-7 {
    right: 58.33333%; }
  .col-sm-pull-8 {
    right: 66.66667%; }
  .col-sm-pull-9 {
    right: 75%; }
  .col-sm-pull-10 {
    right: 83.33333%; }
  .col-sm-pull-11 {
    right: 91.66667%; }
  .col-sm-pull-12 {
    right: 100%; }
  .col-sm-push-0 {
    left: auto; }
  .col-sm-push-1 {
    left: 8.33333%; }
  .col-sm-push-2 {
    left: 16.66667%; }
  .col-sm-push-3 {
    left: 25%; }
  .col-sm-push-4 {
    left: 33.33333%; }
  .col-sm-push-5 {
    left: 41.66667%; }
  .col-sm-push-6 {
    left: 50%; }
  .col-sm-push-7 {
    left: 58.33333%; }
  .col-sm-push-8 {
    left: 66.66667%; }
  .col-sm-push-9 {
    left: 75%; }
  .col-sm-push-10 {
    left: 83.33333%; }
  .col-sm-push-11 {
    left: 91.66667%; }
  .col-sm-push-12 {
    left: 100%; }
  .col-sm-offset-0 {
    margin-left: 0%; }
  .col-sm-offset-1 {
    margin-left: 8.33333%; }
  .col-sm-offset-2 {
    margin-left: 16.66667%; }
  .col-sm-offset-3 {
    margin-left: 25%; }
  .col-sm-offset-4 {
    margin-left: 33.33333%; }
  .col-sm-offset-5 {
    margin-left: 41.66667%; }
  .col-sm-offset-6 {
    margin-left: 50%; }
  .col-sm-offset-7 {
    margin-left: 58.33333%; }
  .col-sm-offset-8 {
    margin-left: 66.66667%; }
  .col-sm-offset-9 {
    margin-left: 75%; }
  .col-sm-offset-10 {
    margin-left: 83.33333%; }
  .col-sm-offset-11 {
    margin-left: 91.66667%; }
  .col-sm-offset-12 {
    margin-left: 100%; } }

@media (min-width: 992px) {
  .col-md-1, .col-md-2, .col-md-3, .col-md-4, .col-md-5, .col-md-6, .col-md-7, .col-md-8, .col-md-9, .col-md-10, .col-md-11, .col-md-12 {
    float: left; }
  .col-md-1 {
    width: 8.33333%; }
  .col-md-2 {
    width: 16.66667%; }
  .col-md-3 {
    width: 25%; }
  .col-md-4 {
    width: 33.33333%; }
  .col-md-5 {
    width: 41.66667%; }
  .col-md-6 {
    width: 50%; }
  .col-md-7 {
    width: 58.33333%; }
  .col-md-8 {
    width: 66.66667%; }
  .col-md-9 {
    width: 75%; }
  .col-md-10 {
    width: 83.33333%; }
  .col-md-11 {
    width: 91.66667%; }
  .col-md-12 {
    width: 100%; }
  .col-md-pull-0 {
    right: auto; }
  .col-md-pull-1 {
    right: 8.33333%; }
  .col-md-pull-2 {
    right: 16.66667%; }
  .col-md-pull-3 {
    right: 25%; }
  .col-md-pull-4 {
    right: 33.33333%; }
  .col-md-pull-5 {
    right: 41.66667%; }
  .col-md-pull-6 {
    right: 50%; }
  .col-md-pull-7 {
    right: 58.33333%; }
  .col-md-pull-8 {
    right: 66.66667%; }
  .col-md-pull-9 {
    right: 75%; }
  .col-md-pull-10 {
    right: 83.33333%; }
  .col-md-pull-11 {
    right: 91.66667%; }
  .col-md-pull-12 {
    right: 100%; }
  .col-md-push-0 {
    left: auto; }
  .col-md-push-1 {
    left: 8.33333%; }
  .col-md-push-2 {
    left: 16.66667%; }
  .col-md-push-3 {
    left: 25%; }
  .col-md-push-4 {
    left: 33.33333%; }
  .col-md-push-5 {
    left: 41.66667%; }
  .col-md-push-6 {
    left: 50%; }
  .col-md-push-7 {
    left: 58.33333%; }
  .col-md-push-8 {
    left: 66.66667%; }
  .col-md-push-9 {
    left: 75%; }
  .col-md-push-10 {
    left: 83.33333%; }
  .col-md-push-11 {
    left: 91.66667%; }
  .col-md-push-12 {
    left: 100%; }
  .col-md-offset-0 {
    margin-left: 0%; }
  .col-md-offset-1 {
    margin-left: 8.33333%; }
  .col-md-offset-2 {
    margin-left: 16.66667%; }
  .col-md-offset-3 {
    margin-left: 25%; }
  .col-md-offset-4 {
    margin-left: 33.33333%; }
  .col-md-offset-5 {
    margin-left: 41.66667%; }
  .col-md-offset-6 {
    margin-left: 50%; }
  .col-md-offset-7 {
    margin-left: 58.33333%; }
  .col-md-offset-8 {
    margin-left: 66.66667%; }
  .col-md-offset-9 {
    margin-left: 75%; }
  .col-md-offset-10 {
    margin-left: 83.33333%; }
  .col-md-offset-11 {
    margin-left: 91.66667%; }
  .col-md-offset-12 {
    margin-left: 100%; } }

@media (min-width: 1200px) {
  .col-lg-1, .col-lg-2, .col-lg-3, .col-lg-4, .col-lg-5, .col-lg-6, .col-lg-7, .col-lg-8, .col-lg-9, .col-lg-10, .col-lg-11, .col-lg-12 {
    float: left; }
  .col-lg-1 {
    width: 8.33333%; }
  .col-lg-2 {
    width: 16.66667%; }
  .col-lg-3 {
    width: 25%; }
  .col-lg-4 {
    width: 33.33333%; }
  .col-lg-5 {
    width: 41.66667%; }
  .col-lg-6 {
    width: 50%; }
  .col-lg-7 {
    width: 58.33333%; }
  .col-lg-8 {
    width: 66.66667%; }
  .col-lg-9 {
    width: 75%; }
  .col-lg-10 {
    width: 83.33333%; }
  .col-lg-11 {
    width: 91.66667%; }
  .col-lg-12 {
    width: 100%; }
  .col-lg-pull-0 {
    right: auto; }
  .col-lg-pull-1 {
    right: 8.33333%; }
  .col-lg-pull-2 {
    right: 16.66667%; }
  .col-lg-pull-3 {
    right: 25%; }
  .col-lg-pull-4 {
    right: 33.33333%; }
  .col-lg-pull-5 {
    right: 41.66667%; }
  .col-lg-pull-6 {
    right: 50%; }
  .col-lg-pull-7 {
    right: 58.33333%; }
  .col-lg-pull-8 {
    right: 66.66667%; }
  .col-lg-pull-9 {
    right: 75%; }
  .col-lg-pull-10 {
    right: 83.33333%; }
  .col-lg-pull-11 {
    right: 91.66667%; }
  .col-lg-pull-12 {
    right: 100%; }
  .col-lg-push-0 {
    left: auto; }
  .col-lg-push-1 {
    left: 8.33333%; }
  .col-lg-push-2 {
    left: 16.66667%; }
  .col-lg-push-3 {
    left: 25%; }
  .col-lg-push-4 {
    left: 33.33333%; }
  .col-lg-push-5 {
    left: 41.66667%; }
  .col-lg-push-6 {
    left: 50%; }
  .col-lg-push-7 {
    left: 58.33333%; }
  .col-lg-push-8 {
    left: 66.66667%; }
  .col-lg-push-9 {
    left: 75%; }
  .col-lg-push-10 {
    left: 83.33333%; }
  .col-lg-push-11 {
    left: 91.66667%; }
  .col-lg-push-12 {
    left: 100%; }
  .col-lg-offset-0 {
    margin-left: 0%; }
  .col-lg-offset-1 {
    margin-left: 8.33333%; }
  .col-lg-offset-2 {
    margin-left: 16.66667%; }
  .col-lg-offset-3 {
    margin-left: 25%; }
  .col-lg-offset-4 {
    margin-left: 33.33333%; }
  .col-lg-offset-5 {
    margin-left: 41.66667%; }
  .col-lg-offset-6 {
    margin-left: 50%; }
  .col-lg-offset-7 {
    margin-left: 58.33333%; }
  .col-lg-offset-8 {
    margin-left: 66.66667%; }
  .col-lg-offset-9 {
    margin-left: 75%; }
  .col-lg-offset-10 {
    margin-left: 83.33333%; }
  .col-lg-offset-11 {
    margin-left: 91.66667%; }
  .col-lg-offset-12 {
    margin-left: 100%; } }

table {
  background-color: transparent; }

caption {
  padding-top: 8px;
  padding-bottom: 8px;
  color: #777777;
  text-align: left; }

th {
  text-align: left; }

.table {
  width: 100%;
  max-width: 100%;
  margin-bottom: 20px; }
  .table > thead > tr > th,
  .table > thead > tr > td,
  .table > tbody > tr > th,
  .table > tbody > tr > td,
  .table > tfoot > tr > th,
  .table > tfoot > tr > td {
    padding: 8px;
    line-height: 1.42857;
    vertical-align: top;
    border-top: 1px solid #ddd; }
  .table > thead > tr > th {
    vertical-align: bottom;
    border-bottom: 2px solid #ddd; }
  .table > caption + thead > tr:first-child > th,
  .table > caption + thead > tr:first-child > td,
  .table > colgroup + thead > tr:first-child > th,
  .table > colgroup + thead > tr:first-child > td,
  .table > thead:first-child > tr:first-child > th,
  .table > thead:first-child > tr:first-child > td {
    border-top: 0; }
  .table > tbody + tbody {
    border-top: 2px solid #ddd; }
  .table .table {
    background-color: #fff; }

.table-condensed > thead > tr > th,
.table-condensed > thead > tr > td,
.table-condensed > tbody > tr > th,
.table-condensed > tbody > tr > td,
.table-condensed > tfoot > tr > th,
.table-condensed > tfoot > tr > td {
  padding: 5px; }

.table-bordered {
  border: 1px solid #ddd; }
  .table-bordered > thead > tr > th,
  .table-bordered > thead > tr > td,
  .table-bordered > tbody > tr > th,
  .table-bordered > tbody > tr > td,
  .table-bordered > tfoot > tr > th,
  .table-bordered > tfoot > tr > td {
    border: 1px solid #ddd; }
  .table-bordered > thead > tr > th,
  .table-bordered > thead > tr > td {
    border-bottom-width: 2px; }

.table-striped > tbody > tr:nth-of-type(odd) {
  background-color: #f9f9f9; }

.table-hover > tbody > tr:hover {
  background-color: #f5f5f5; }

table col[class*="col-"] {
  position: static;
  float: none;
  display: table-column; }

table td[class*="col-"],
table th[class*="col-"] {
  position: static;
  float: none;
  display: table-cell; }

.table > thead > tr > td.active,
.table > thead > tr > th.active,
.table > thead > tr.active > td,
.table > thead > tr.active > th,
.table > tbody > tr > td.active,
.table > tbody > tr > th.active,
.table > tbody > tr.active > td,
.table > tbody > tr.active > th,
.table > tfoot > tr > td.active,
.table > tfoot > tr > th.active,
.table > tfoot > tr.active > td,
.table > tfoot > tr.active > th {
  background-color: #f5f5f5; }

.table-hover > tbody > tr > td.active:hover,
.table-hover > tbody > tr > th.active:hover,
.table-hover > tbody > tr.active:hover > td,
.table-hover > tbody > tr:hover > .active,
.table-hover > tbody > tr.active:hover > th {
  background-color: #e8e8e8; }

.table > thead > tr > td.success,
.table > thead > tr > th.success,
.table > thead > tr.success > td,
.table > thead > tr.success > th,
.table > tbody > tr > td.success,
.table > tbody > tr > th.success,
.table > tbody > tr.success > td,
.table > tbody > tr.success > th,
.table > tfoot > tr > td.success,
.table > tfoot > tr > th.success,
.table > tfoot > tr.success > td,
.table > tfoot > tr.success > th {
  background-color: #dff0d8; }

.table-hover > tbody > tr > td.success:hover,
.table-hover > tbody > tr > th.success:hover,
.table-hover > tbody > tr.success:hover > td,
.table-hover > tbody > tr:hover > .success,
.table-hover > tbody > tr.success:hover > th {
  background-color: #d0e9c6; }

.table > thead > tr > td.info,
.table > thead > tr > th.info,
.table > thead > tr.info > td,
.table > thead > tr.info > th,
.table > tbody > tr > td.info,
.table > tbody > tr > th.info,
.table > tbody > tr.info > td,
.table > tbody > tr.info > th,
.table > tfoot > tr > td.info,
.table > tfoot > tr > th.info,
.table > tfoot > tr.info > td,
.table > tfoot > tr.info > th {
  background-color: #d9edf7; }

.table-hover > tbody > tr > td.info:hover,
.table-hover > tbody > tr > th.info:hover,
.table-hover > tbody > tr.info:hover > td,
.table-hover > tbody > tr:hover > .info,
.table-hover > tbody > tr.info:hover > th {
  background-color: #c4e3f3; }

.table > thead > tr > td.warning,
.table > thead > tr > th.warning,
.table > thead > tr.warning > td,
.table > thead > tr.warning > th,
.table > tbody > tr > td.warning,
.table > tbody > tr > th.warning,
.table > tbody > tr.warning > td,
.table > tbody > tr.warning > th,
.table > tfoot > tr > td.warning,
.table > tfoot > tr > th.warning,
.table > tfoot > tr.warning > td,
.table > tfoot > tr.warning > th {
  background-color: #fcf8e3; }

.table-hover > tbody > tr > td.warning:hover,
.table-hover > tbody > tr > th.warning:hover,
.table-hover > tbody > tr.warning:hover > td,
.table-hover > tbody > tr:hover > .warning,
.table-hover > tbody > tr.warning:hover > th {
  background-color: #faf2cc; }

.table > thead > tr > td.danger,
.table > thead > tr > th.danger,
.table > thead > tr.danger > td,
.table > thead > tr.danger > th,
.table > tbody > tr > td.danger,
.table > tbody > tr > th.danger,
.table > tbody > tr.danger > td,
.table > tbody > tr.danger > th,
.table > tfoot > tr > td.danger,
.table > tfoot > tr > th.danger,
.table > tfoot > tr.danger > td,
.table > tfoot > tr.danger > th {
  background-color: #f2dede; }

.table-hover > tbody > tr > td.danger:hover,
.table-hover > tbody > tr > th.danger:hover,
.table-hover > tbody > tr.danger:hover > td,
.table-hover > tbody > tr:hover > .danger,
.table-hover > tbody > tr.danger:hover > th {
  background-color: #ebcccc; }

.table-responsive {
  overflow-x: auto;
  min-height: 0.01%; }
  @media screen and (max-width: 767px) {
    .table-responsive {
      width: 100%;
      margin-bottom: 15px;
      overflow-y: hidden;
      -ms-overflow-style: -ms-autohiding-scrollbar;
      border: 1px solid #ddd; }
      .table-responsive > .table {
        margin-bottom: 0; }
        .table-responsive > .table > thead > tr > th,
        .table-responsive > .table > thead > tr > td,
        .table-responsive > .table > tbody > tr > th,
        .table-responsive > .table > tbody > tr > td,
        .table-responsive > .table > tfoot > tr > th,
        .table-responsive > .table > tfoot > tr > td {
          white-space: nowrap; }
      .table-responsive > .table-bordered {
        border: 0; }
        .table-responsive > .table-bordered > thead > tr > th:first-child,
        .table-responsive > .table-bordered > thead > tr > td:first-child,
        .table-responsive > .table-bordered > tbody > tr > th:first-child,
        .table-responsive > .table-bordered > tbody > tr > td:first-child,
        .table-responsive > .table-bordered > tfoot > tr > th:first-child,
        .table-responsive > .table-bordered > tfoot > tr > td:first-child {
          border-left: 0; }
        .table-responsive > .table-bordered > thead > tr > th:last-child,
        .table-responsive > .table-bordered > thead > tr > td:last-child,
        .table-responsive > .table-bordered > tbody > tr > th:last-child,
        .table-responsive > .table-bordered > tbody > tr > td:last-child,
        .table-responsive > .table-bordered > tfoot > tr > th:last-child,
        .table-responsive > .table-bordered > tfoot > tr > td:last-child {
          border-right: 0; }
        .table-responsive > .table-bordered > tbody > tr:last-child > th,
        .table-responsive > .table-bordered > tbody > tr:last-child > td,
        .table-responsive > .table-bordered > tfoot > tr:last-child > th,
        .table-responsive > .table-bordered > tfoot > tr:last-child > td {
          border-bottom: 0; } }

fieldset {
  padding: 0;
  margin: 0;
  border: 0;
  min-width: 0; }

legend {
  display: block;
  width: 100%;
  padding: 0;
  margin-bottom: 20px;
  font-size: 21px;
  line-height: inherit;
  color: #333333;
  border: 0;
  border-bottom: 1px solid #e5e5e5; }

label {
  display: inline-block;
  max-width: 100%;
  margin-bottom: 5px;
  font-weight: bold; }

input[type="search"] {
  box-sizing: border-box; }

input[type="radio"],
input[type="checkbox"] {
  margin: 4px 0 0;
  margin-top: 1px \9;
  line-height: normal; }

input[type="file"] {
  display: block; }

input[type="range"] {
  display: block;
  width: 100%; }

select[multiple],
select[size] {
  height: auto; }

input[type="file"]:focus,
input[type="radio"]:focus,
input[type="checkbox"]:focus {
  outline: 5px auto -webkit-focus-ring-color;
  outline-offset: -2px; }

output {
  display: block;
  padding-top: 7px;
  font-size: 14px;
  line-height: 1.42857;
  color: #555555; }

.form-control {
  display: block;
  width: 100%;
  height: 34px;
  padding: 6px 12px;
  font-size: 14px;
  line-height: 1.42857;
  color: #555555;
  background-color: #fff;
  background-image: none;
  border: 1px solid #ccc;
  border-radius: 4px;
  box-shadow: inset 0 1px 1px rgba(0, 0, 0, 0.075);
  transition: border-color ease-in-out 0.15s, box-shadow ease-in-out 0.15s; }
  .form-control:focus {
    border-color: #66afe9;
    outline: 0;
    box-shadow: inset 0 1px 1px rgba(0, 0, 0, 0.075), 0 0 8px rgba(102, 175, 233, 0.6); }
  .form-control::-moz-placeholder {
    color: #999;
    opacity: 1; }
  .form-control:-ms-input-placeholder {
    color: #999; }
  .form-control::-webkit-input-placeholder {
    color: #999; }
  .form-control::-ms-expand {
    border: 0;
    background-color: transparent; }
  .form-control[disabled], .form-control[readonly],
  fieldset[disabled] .form-control {
    background-color: #eeeeee;
    opacity: 1; }
  .form-control[disabled],
  fieldset[disabled] .form-control {
    cursor: not-allowed; }

textarea.form-control {
  height: auto; }

input[type="search"] {
  -webkit-appearance: none; }

@media screen and (-webkit-min-device-pixel-ratio: 0) {
  input[type="date"].form-control,
  input[type="time"].form-control,
  input[type="datetime-local"].form-control,
  input[type="month"].form-control {
    line-height: 34px; }
  input[type="date"].input-sm, .input-group-sm > input[type="date"].form-control,
  .input-group-sm > input[type="date"].input-group-addon,
  .input-group-sm > .input-group-btn > input[type="date"].btn,
  .input-group-sm input[type="date"],
  input[type="time"].input-sm,
  .input-group-sm > input[type="time"].form-control,
  .input-group-sm > input[type="time"].input-group-addon,
  .input-group-sm > .input-group-btn > input[type="time"].btn,
  .input-group-sm
  input[type="time"],
  input[type="datetime-local"].input-sm,
  .input-group-sm > input[type="datetime-local"].form-control,
  .input-group-sm > input[type="datetime-local"].input-group-addon,
  .input-group-sm > .input-group-btn > input[type="datetime-local"].btn,
  .input-group-sm
  input[type="datetime-local"],
  input[type="month"].input-sm,
  .input-group-sm > input[type="month"].form-control,
  .input-group-sm > input[type="month"].input-group-addon,
  .input-group-sm > .input-group-btn > input[type="month"].btn,
  .input-group-sm
  input[type="month"] {
    line-height: 30px; }
  input[type="date"].input-lg, .input-group-lg > input[type="date"].form-control,
  .input-group-lg > input[type="date"].input-group-addon,
  .input-group-lg > .input-group-btn > input[type="date"].btn,
  .input-group-lg input[type="date"],
  input[type="time"].input-lg,
  .input-group-lg > input[type="time"].form-control,
  .input-group-lg > input[type="time"].input-group-addon,
  .input-group-lg > .input-group-btn > input[type="time"].btn,
  .input-group-lg
  input[type="time"],
  input[type="datetime-local"].input-lg,
  .input-group-lg > input[type="datetime-local"].form-control,
  .input-group-lg > input[type="datetime-local"].input-group-addon,
  .input-group-lg > .input-group-btn > input[type="datetime-local"].btn,
  .input-group-lg
  input[type="datetime-local"],
  input[type="month"].input-lg,
  .input-group-lg > input[type="month"].form-control,
  .input-group-lg > input[type="month"].input-group-addon,
  .input-group-lg > .input-group-btn > input[type="month"].btn,
  .input-group-lg
  input[type="month"] {
    line-height: 46px; } }

.form-group {
  margin-bottom: 15px; }

.radio,
.checkbox {
  position: relative;
  display: block;
  margin-top: 10px;
  margin-bottom: 10px; }
  .radio label,
  .checkbox label {
    min-height: 20px;
    padding-left: 20px;
    margin-bottom: 0;
    font-weight: normal;
    cursor: pointer; }

.radio input[type="radio"],
.radio-inline input[type="radio"],
.checkbox input[type="checkbox"],
.checkbox-inline input[type="checkbox"] {
  position: absolute;
  margin-left: -20px;
  margin-top: 4px \9; }

.radio + .radio,
.checkbox + .checkbox {
  margin-top: -5px; }

.radio-inline,
.checkbox-inline {
  position: relative;
  display: inline-block;
  padding-left: 20px;
  margin-bottom: 0;
  vertical-align: middle;
  font-weight: normal;
  cursor: pointer; }

.radio-inline + .radio-inline,
.checkbox-inline + .checkbox-inline {
  margin-top: 0;
  margin-left: 10px; }

input[type="radio"][disabled], input[type="radio"].disabled,
fieldset[disabled] input[type="radio"],
input[type="checkbox"][disabled],
input[type="checkbox"].disabled,
fieldset[disabled]
input[type="checkbox"] {
  cursor: not-allowed; }

.radio-inline.disabled,
fieldset[disabled] .radio-inline,
.checkbox-inline.disabled,
fieldset[disabled]
.checkbox-inline {
  cursor: not-allowed; }

.radio.disabled label,
fieldset[disabled] .radio label,
.checkbox.disabled label,
fieldset[disabled]
.checkbox label {
  cursor: not-allowed; }

.form-control-static {
  padding-top: 7px;
  padding-bottom: 7px;
  margin-bottom: 0;
  min-height: 34px; }
  .form-control-static.input-lg, .input-group-lg > .form-control-static.form-control,
  .input-group-lg > .form-control-static.input-group-addon,
  .input-group-lg > .input-group-btn > .form-control-static.btn, .form-control-static.input-sm, .input-group-sm > .form-control-static.form-control,
  .input-group-sm > .form-control-static.input-group-addon,
  .input-group-sm > .input-group-btn > .form-control-static.btn {
    padding-left: 0;
    padding-right: 0; }

.input-sm, .input-group-sm > .form-control,
.input-group-sm > .input-group-addon,
.input-group-sm > .input-group-btn > .btn {
  height: 30px;
  padding: 5px 10px;
  font-size: 12px;
  line-height: 1.5;
  border-radius: 3px; }

select.input-sm, .input-group-sm > select.form-control,
.input-group-sm > select.input-group-addon,
.input-group-sm > .input-group-btn > select.btn {
  height: 30px;
  line-height: 30px; }

textarea.input-sm, .input-group-sm > textarea.form-control,
.input-group-sm > textarea.input-group-addon,
.input-group-sm > .input-group-btn > textarea.btn,
select[multiple].input-sm,
.input-group-sm > select[multiple].form-control,
.input-group-sm > select[multiple].input-group-addon,
.input-group-sm > .input-group-btn > select[multiple].btn {
  height: auto; }

.form-group-sm .form-control {
  height: 30px;
  padding: 5px 10px;
  font-size: 12px;
  line-height: 1.5;
  border-radius: 3px; }

.form-group-sm select.form-control {
  height: 30px;
  line-height: 30px; }

.form-group-sm textarea.form-control,
.form-group-sm select[multiple].form-control {
  height: auto; }

.form-group-sm .form-control-static {
  height: 30px;
  min-height: 32px;
  padding: 6px 10px;
  font-size: 12px;
  line-height: 1.5; }

.input-lg, .input-group-lg > .form-control,
.input-group-lg > .input-group-addon,
.input-group-lg > .input-group-btn > .btn {
  height: 46px;
  padding: 10px 16px;
  font-size: 18px;
  line-height: 1.33333;
  border-radius: 6px; }

select.input-lg, .input-group-lg > select.form-control,
.input-group-lg > select.input-group-addon,
.input-group-lg > .input-group-btn > select.btn {
  height: 46px;
  line-height: 46px; }

textarea.input-lg, .input-group-lg > textarea.form-control,
.input-group-lg > textarea.input-group-addon,
.input-group-lg > .input-group-btn > textarea.btn,
select[multiple].input-lg,
.input-group-lg > select[multiple].form-control,
.input-group-lg > select[multiple].input-group-addon,
.input-group-lg > .input-group-btn > select[multiple].btn {
  height: auto; }

.form-group-lg .form-control {
  height: 46px;
  padding: 10px 16px;
  font-size: 18px;
  line-height: 1.33333;
  border-radius: 6px; }

.form-group-lg select.form-control {
  height: 46px;
  line-height: 46px; }

.form-group-lg textarea.form-control,
.form-group-lg select[multiple].form-control {
  height: auto; }

.form-group-lg .form-control-static {
  height: 46px;
  min-height: 38px;
  padding: 11px 16px;
  font-size: 18px;
  line-height: 1.33333; }

.has-feedback {
  position: relative; }
  .has-feedback .form-control {
    padding-right: 42.5px; }

.form-control-feedback {
  position: absolute;
  top: 0;
  right: 0;
  z-index: 2;
  display: block;
  width: 34px;
  height: 34px;
  line-height: 34px;
  text-align: center;
  pointer-events: none; }

.input-lg + .form-control-feedback, .input-group-lg > .form-control + .form-control-feedback,
.input-group-lg > .input-group-addon + .form-control-feedback,
.input-group-lg > .input-group-btn > .btn + .form-control-feedback,
.input-group-lg + .form-control-feedback,
.form-group-lg .form-control + .form-control-feedback {
  width: 46px;
  height: 46px;
  line-height: 46px; }

.input-sm + .form-control-feedback, .input-group-sm > .form-control + .form-control-feedback,
.input-group-sm > .input-group-addon + .form-control-feedback,
.input-group-sm > .input-group-btn > .btn + .form-control-feedback,
.input-group-sm + .form-control-feedback,
.form-group-sm .form-control + .form-control-feedback {
  width: 30px;
  height: 30px;
  line-height: 30px; }

.has-success .help-block,
.has-success .control-label,
.has-success .radio,
.has-success .checkbox,
.has-success .radio-inline,
.has-success .checkbox-inline,
.has-success.radio label,
.has-success.checkbox label,
.has-success.radio-inline label,
.has-success.checkbox-inline label {
  color: #3c763d; }

.has-success .form-control {
  border-color: #3c763d;
  box-shadow: inset 0 1px 1px rgba(0, 0, 0, 0.075); }
  .has-success .form-control:focus {
    border-color: #2b542c;
    box-shadow: inset 0 1px 1px rgba(0, 0, 0, 0.075), 0 0 6px #67b168; }

.has-success .input-group-addon {
  color: #3c763d;
  border-color: #3c763d;
  background-color: #dff0d8; }

.has-success .form-control-feedback {
  color: #3c763d; }

.has-warning .help-block,
.has-warning .control-label,
.has-warning .radio,
.has-warning .checkbox,
.has-warning .radio-inline,
.has-warning .checkbox-inline,
.has-warning.radio label,
.has-warning.checkbox label,
.has-warning.radio-inline label,
.has-warning.checkbox-inline label {
  color: #8a6d3b; }

.has-warning .form-control {
  border-color: #8a6d3b;
  box-shadow: inset 0 1px 1px rgba(0, 0, 0, 0.075); }
  .has-warning .form-control:focus {
    border-color: #66512c;
    box-shadow: inset 0 1px 1px rgba(0, 0, 0, 0.075), 0 0 6px #c0a16b; }

.has-warning .input-group-addon {
  color: #8a6d3b;
  border-color: #8a6d3b;
  background-color: #fcf8e3; }

.has-warning .form-control-feedback {
  color: #8a6d3b; }

.has-error .help-block,
.has-error .control-label,
.has-error .radio,
.has-error .checkbox,
.has-error .radio-inline,
.has-error .checkbox-inline,
.has-error.radio label,
.has-error.checkbox label,
.has-error.radio-inline label,
.has-error.checkbox-inline label {
  color: #a94442; }

.has-error .form-control {
  border-color: #a94442;
  box-shadow: inset 0 1px 1px rgba(0, 0, 0, 0.075); }
  .has-error .form-control:focus {
    border-color: #843534;
    box-shadow: inset 0 1px 1px rgba(0, 0, 0, 0.075), 0 0 6px #ce8483; }

.has-error .input-group-addon {
  color: #a94442;
  border-color: #a94442;
  background-color: #f2dede; }

.has-error .form-control-feedback {
  color: #a94442; }

.has-feedback label ~ .form-control-feedback {
  top: 25px; }

.has-feedback label.sr-only ~ .form-control-feedback {
  top: 0; }

.help-block {
  display: block;
  margin-top: 5px;
  margin-bottom: 10px;
  color: #737373; }

@media (min-width: 768px) {
  .form-inline .form-group {
    display: inline-block;
    margin-bottom: 0;
    vertical-align: middle; }
  .form-inline .form-control {
    display: inline-block;
    width: auto;
    vertical-align: middle; }
  .form-inline .form-control-static {
    display: inline-block; }
  .form-inline .input-group {
    display: inline-table;
    vertical-align: middle; }
    .form-inline .input-group .input-group-addon,
    .form-inline .input-group .input-group-btn,
    .form-inline .input-group .form-control {
      width: auto; }
  .form-inline .input-group > .form-control {
    width: 100%; }
  .form-inline .control-label {
    margin-bottom: 0;
    vertical-align: middle; }
  .form-inline .radio,
  .form-inline .checkbox {
    display: inline-block;
    margin-top: 0;
    margin-bottom: 0;
    vertical-align: middle; }
    .form-inline .radio label,
    .form-inline .checkbox label {
      padding-left: 0; }
  .form-inline .radio input[type="radio"],
  .form-inline .checkbox input[type="checkbox"] {
    position: relative;
    margin-left: 0; }
  .form-inline .has-feedback .form-control-feedback {
    top: 0; } }

.form-horizontal .radio,
.form-horizontal .checkbox,
.form-horizontal .radio-inline,
.form-horizontal .checkbox-inline {
  margin-top: 0;
  margin-bottom: 0;
  padding-top: 7px; }

.form-horizontal .radio,
.form-horizontal .checkbox {
  min-height: 27px; }

.form-horizontal .form-group {
  margin-left: -15px;
  margin-right: -15px; }
  .form-horizontal .form-group:before, .form-horizontal .form-group:after {
    content: " ";
    display: table; }
  .form-horizontal .form-group:after {
    clear: both; }

@media (min-width: 768px) {
  .form-horizontal .control-label {
    text-align: right;
    margin-bottom: 0;
    padding-top: 7px; } }

.form-horizontal .has-feedback .form-control-feedback {
  right: 15px; }

@media (min-width: 768px) {
  .form-horizontal .form-group-lg .control-label {
    padding-top: 11px;
    font-size: 18px; } }

@media (min-width: 768px) {
  .form-horizontal .form-group-sm .control-label {
    padding-top: 6px;
    font-size: 12px; } }

.btn {
  display: inline-block;
  margin-bottom: 0;
  font-weight: normal;
  text-align: center;
  vertical-align: middle;
  -ms-touch-action: manipulation;
      touch-action: manipulation;
  cursor: pointer;
  background-image: none;
  border: 1px solid transparent;
  white-space: nowrap;
  padding: 6px 12px;
  font-size: 14px;
  line-height: 1.42857;
  border-radius: 4px;
  -webkit-user-select: none;
  -moz-user-select: none;
  -ms-user-select: none;
  user-select: none; }
  .btn:focus, .btn.focus, .btn:active:focus, .btn:active.focus, .btn.active:focus, .btn.active.focus {
    outline: 5px auto -webkit-focus-ring-color;
    outline-offset: -2px; }
  .btn:hover, .btn:focus, .btn.focus {
    color: #333;
    text-decoration: none; }
  .btn:active, .btn.active {
    outline: 0;
    background-image: none;
    box-shadow: inset 0 3px 5px rgba(0, 0, 0, 0.125); }
  .btn.disabled, .btn[disabled],
  fieldset[disabled] .btn {
    cursor: not-allowed;
    opacity: 0.65;
    filter: alpha(opacity=65);
    box-shadow: none; }

a.btn.disabled,
fieldset[disabled] a.btn {
  pointer-events: none; }

.btn-default {
  color: #333;
  background-color: #fff;
  border-color: #ccc; }
  .btn-default:focus, .btn-default.focus {
    color: #333;
    background-color: #e6e6e6;
    border-color: #8c8c8c; }
  .btn-default:hover {
    color: #333;
    background-color: #e6e6e6;
    border-color: #adadad; }
  .btn-default:active, .btn-default.active,
  .open > .btn-default.dropdown-toggle {
    color: #333;
    background-color: #e6e6e6;
    border-color: #adadad; }
    .btn-default:active:hover, .btn-default:active:focus, .btn-default:active.focus, .btn-default.active:hover, .btn-default.active:focus, .btn-default.active.focus,
    .open > .btn-default.dropdown-toggle:hover,
    .open > .btn-default.dropdown-toggle:focus,
    .open > .btn-default.dropdown-toggle.focus {
      color: #333;
      background-color: #d4d4d4;
      border-color: #8c8c8c; }
  .btn-default:active, .btn-default.active,
  .open > .btn-default.dropdown-toggle {
    background-image: none; }
  .btn-default.disabled:hover, .btn-default.disabled:focus, .btn-default.disabled.focus, .btn-default[disabled]:hover, .btn-default[disabled]:focus, .btn-default[disabled].focus,
  fieldset[disabled] .btn-default:hover,
  fieldset[disabled] .btn-default:focus,
  fieldset[disabled] .btn-default.focus {
    background-color: #fff;
    border-color: #ccc; }
  .btn-default .badge {
    color: #fff;
    background-color: #333; }

.btn-primary {
  color: #fff;
  background-color: #337ab7;
  border-color: #2e6da4; }
  .btn-primary:focus, .btn-primary.focus {
    color: #fff;
    background-color: #286090;
    border-color: #122b40; }
  .btn-primary:hover {
    color: #fff;
    background-color: #286090;
    border-color: #204d74; }
  .btn-primary:active, .btn-primary.active,
  .open > .btn-primary.dropdown-toggle {
    color: #fff;
    background-color: #286090;
    border-color: #204d74; }
    .btn-primary:active:hover, .btn-primary:active:focus, .btn-primary:active.focus, .btn-primary.active:hover, .btn-primary.active:focus, .btn-primary.active.focus,
    .open > .btn-primary.dropdown-toggle:hover,
    .open > .btn-primary.dropdown-toggle:focus,
    .open > .btn-primary.dropdown-toggle.focus {
      color: #fff;
      background-color: #204d74;
      border-color: #122b40; }
  .btn-primary:active, .btn-primary.active,
  .open > .btn-primary.dropdown-toggle {
    background-image: none; }
  .btn-primary.disabled:hover, .btn-primary.disabled:focus, .btn-primary.disabled.focus, .btn-primary[disabled]:hover, .btn-primary[disabled]:focus, .btn-primary[disabled].focus,
  fieldset[disabled] .btn-primary:hover,
  fieldset[disabled] .btn-primary:focus,
  fieldset[disabled] .btn-primary.focus {
    background-color: #337ab7;
    border-color: #2e6da4; }
  .btn-primary .badge {
    color: #337ab7;
    background-color: #fff; }

.btn-success {
  color: #fff;
  background-color: #5cb85c;
  border-color: #4cae4c; }
  .btn-success:focus, .btn-success.focus {
    color: #fff;
    background-color: #449d44;
    border-color: #255625; }
  .btn-success:hover {
    color: #fff;
    background-color: #449d44;
    border-color: #398439; }
  .btn-success:active, .btn-success.active,
  .open > .btn-success.dropdown-toggle {
    color: #fff;
    background-color: #449d44;
    border-color: #398439; }
    .btn-success:active:hover, .btn-success:active:focus, .btn-success:active.focus, .btn-success.active:hover, .btn-success.active:focus, .btn-success.active.focus,
    .open > .btn-success.dropdown-toggle:hover,
    .open > .btn-success.dropdown-toggle:focus,
    .open > .btn-success.dropdown-toggle.focus {
      color: #fff;
      background-color: #398439;
      border-color: #255625; }
  .btn-success:active, .btn-success.active,
  .open > .btn-success.dropdown-toggle {
    background-image: none; }
  .btn-success.disabled:hover, .btn-success.disabled:focus, .btn-success.disabled.focus, .btn-success[disabled]:hover, .btn-success[disabled]:focus, .btn-success[disabled].focus,
  fieldset[disabled] .btn-success:hover,
  fieldset[disabled] .btn-success:focus,
  fieldset[disabled] .btn-success.focus {
    background-color: #5cb85c;
    border-color: #4cae4c; }
  .btn-success .badge {
    color: #5cb85c;
    background-color: #fff; }

.btn-info {
  color: #fff;
  background-color: #5bc0de;
  border-color: #46b8da; }
  .btn-info:focus, .btn-info.focus {
    color: #fff;
    background-color: #31b0d5;
    border-color: #1b6d85; }
  .btn-info:hover {
    color: #fff;
    background-color: #31b0d5;
    border-color: #269abc; }
  .btn-info:active, .btn-info.active,
  .open > .btn-info.dropdown-toggle {
    color: #fff;
    background-color: #31b0d5;
    border-color: #269abc; }
    .btn-info:active:hover, .btn-info:active:focus, .btn-info:active.focus, .btn-info.active:hover, .btn-info.active:focus, .btn-info.active.focus,
    .open > .btn-info.dropdown-toggle:hover,
    .open > .btn-info.dropdown-toggle:focus,
    .open > .btn-info.dropdown-toggle.focus {
      color: #fff;
      background-color: #269abc;
      border-color: #1b6d85; }
  .btn-info:active, .btn-info.active,
  .open > .btn-info.dropdown-toggle {
    background-image: none; }
  .btn-info.disabled:hover, .btn-info.disabled:focus, .btn-info.disabled.focus, .btn-info[disabled]:hover, .btn-info[disabled]:focus, .btn-info[disabled].focus,
  fieldset[disabled] .btn-info:hover,
  fieldset[disabled] .btn-info:focus,
  fieldset[disabled] .btn-info.focus {
    background-color: #5bc0de;
    border-color: #46b8da; }
  .btn-info .badge {
    color: #5bc0de;
    background-color: #fff; }

.btn-warning {
  color: #fff;
  background-color: #f0ad4e;
  border-color: #eea236; }
  .btn-warning:focus, .btn-warning.focus {
    color: #fff;
    background-color: #ec971f;
    border-color: #985f0d; }
  .btn-warning:hover {
    color: #fff;
    background-color: #ec971f;
    border-color: #d58512; }
  .btn-warning:active, .btn-warning.active,
  .open > .btn-warning.dropdown-toggle {
    color: #fff;
    background-color: #ec971f;
    border-color: #d58512; }
    .btn-warning:active:hover, .btn-warning:active:focus, .btn-warning:active.focus, .btn-warning.active:hover, .btn-warning.active:focus, .btn-warning.active.focus,
    .open > .btn-warning.dropdown-toggle:hover,
    .open > .btn-warning.dropdown-toggle:focus,
    .open > .btn-warning.dropdown-toggle.focus {
      color: #fff;
      background-color: #d58512;
      border-color: #985f0d; }
  .btn-warning:active, .btn-warning.active,
  .open > .btn-warning.dropdown-toggle {
    background-image: none; }
  .btn-warning.disabled:hover, .btn-warning.disabled:focus, .btn-warning.disabled.focus, .btn-warning[disabled]:hover, .btn-warning[disabled]:focus, .btn-warning[disabled].focus,
  fieldset[disabled] .btn-warning:hover,
  fieldset[disabled] .btn-warning:focus,
  fieldset[disabled] .btn-warning.focus {
    background-color: #f0ad4e;
    border-color: #eea236; }
  .btn-warning .badge {
    color: #f0ad4e;
    background-color: #fff; }

.btn-danger {
  color: #fff;
  background-color: #d9534f;
  border-color: #d43f3a; }
  .btn-danger:focus, .btn-danger.focus {
    color: #fff;
    background-color: #c9302c;
    border-color: #761c19; }
  .btn-danger:hover {
    color: #fff;
    background-color: #c9302c;
    border-color: #ac2925; }
  .btn-danger:active, .btn-danger.active,
  .open > .btn-danger.dropdown-toggle {
    color: #fff;
    background-color: #c9302c;
    border-color: #ac2925; }
    .btn-danger:active:hover, .btn-danger:active:focus, .btn-danger:active.focus, .btn-danger.active:hover, .btn-danger.active:focus, .btn-danger.active.focus,
    .open > .btn-danger.dropdown-toggle:hover,
    .open > .btn-danger.dropdown-toggle:focus,
    .open > .btn-danger.dropdown-toggle.focus {
      color: #fff;
      background-color: #ac2925;
      border-color: #761c19; }
  .btn-danger:active, .btn-danger.active,
  .open > .btn-danger.dropdown-toggle {
    background-image: none; }
  .btn-danger.disabled:hover, .btn-danger.disabled:focus, .btn-danger.disabled.focus, .btn-danger[disabled]:hover, .btn-danger[disabled]:focus, .btn-danger[disabled].focus,
  fieldset[disabled] .btn-danger:hover,
  fieldset[disabled] .btn-danger:focus,
  fieldset[disabled] .btn-danger.focus {
    background-color: #d9534f;
    border-color: #d43f3a; }
  .btn-danger .badge {
    color: #d9534f;
    background-color: #fff; }

.btn-link {
  color: #337ab7;
  font-weight: normal;
  border-radius: 0; }
  .btn-link, .btn-link:active, .btn-link.active, .btn-link[disabled],
  fieldset[disabled] .btn-link {
    background-color: transparent;
    box-shadow: none; }
  .btn-link, .btn-link:hover, .btn-link:focus, .btn-link:active {
    border-color: transparent; }
  .btn-link:hover, .btn-link:focus {
    color: #23527c;
    text-decoration: underline;
    background-color: transparent; }
  .btn-link[disabled]:hover, .btn-link[disabled]:focus,
  fieldset[disabled] .btn-link:hover,
  fieldset[disabled] .btn-link:focus {
    color: #777777;
    text-decoration: none; }

.btn-lg, .btn-group-lg > .btn {
  padding: 10px 16px;
  font-size: 18px;
  line-height: 1.33333;
  border-radius: 6px; }

.btn-sm, .btn-group-sm > .btn {
  padding: 5px 10px;
  font-size: 12px;
  line-height: 1.5;
  border-radius: 3px; }

.btn-xs, .btn-group-xs > .btn {
  padding: 1px 5px;
  font-size: 12px;
  line-height: 1.5;
  border-radius: 3px; }

.btn-block {
  display: block;
  width: 100%; }

.btn-block + .btn-block {
  margin-top: 5px; }

input[type="submit"].btn-block,
input[type="reset"].btn-block,
input[type="button"].btn-block {
  width: 100%; }

.fade {
  opacity: 0;
  transition: opacity 0.15s linear; }
  .fade.in {
    opacity: 1; }

.collapse {
  display: none; }
  .collapse.in {
    display: block; }

tr.collapse.in {
  display: table-row; }

tbody.collapse.in {
  display: table-row-group; }

.collapsing {
  position: relative;
  height: 0;
  overflow: hidden;
  transition-property: height, visibility;
  transition-duration: 0.35s;
  transition-timing-function: ease; }

.caret {
  display: inline-block;
  width: 0;
  height: 0;
  margin-left: 2px;
  vertical-align: middle;
  border-top: 4px dashed;
  border-top: 4px solid \9;
  border-right: 4px solid transparent;
  border-left: 4px solid transparent; }

.dropup,
.dropdown {
  position: relative; }

.dropdown-toggle:focus {
  outline: 0; }

.dropdown-menu {
  position: absolute;
  top: 100%;
  left: 0;
  z-index: 1000;
  display: none;
  float: left;
  min-width: 160px;
  padding: 5px 0;
  margin: 2px 0 0;
  list-style: none;
  font-size: 14px;
  text-align: left;
  background-color: #fff;
  border: 1px solid #ccc;
  border: 1px solid rgba(0, 0, 0, 0.15);
  border-radius: 4px;
  box-shadow: 0 6px 12px rgba(0, 0, 0, 0.175);
  background-clip: padding-box; }
  .dropdown-menu.pull-right {
    right: 0;
    left: auto; }
  .dropdown-menu .divider {
    height: 1px;
    margin: 9px 0;
    overflow: hidden;
    background-color: #e5e5e5; }
  .dropdown-menu > li > a {
    display: block;
    padding: 3px 20px;
    clear: both;
    font-weight: normal;
    line-height: 1.42857;
    color: #333333;
    white-space: nowrap; }

.dropdown-menu > li > a:hover, .dropdown-menu > li > a:focus {
  text-decoration: none;
  color: #262626;
  background-color: #f5f5f5; }

.dropdown-menu > .active > a, .dropdown-menu > .active > a:hover, .dropdown-menu > .active > a:focus {
  color: #fff;
  text-decoration: none;
  outline: 0;
  background-color: #337ab7; }

.dropdown-menu > .disabled > a, .dropdown-menu > .disabled > a:hover, .dropdown-menu > .disabled > a:focus {
  color: #777777; }

.dropdown-menu > .disabled > a:hover, .dropdown-menu > .disabled > a:focus {
  text-decoration: none;
  background-color: transparent;
  background-image: none;
  filter: progid:DXImageTransform.Microsoft.gradient(enabled = false);
  cursor: not-allowed; }

.open > .dropdown-menu {
  display: block; }

.open > a {
  outline: 0; }

.dropdown-menu-right {
  left: auto;
  right: 0; }

.dropdown-menu-left {
  left: 0;
  right: auto; }

.dropdown-header {
  display: block;
  padding: 3px 20px;
  font-size: 12px;
  line-height: 1.42857;
  color: #777777;
  white-space: nowrap; }

.dropdown-backdrop {
  position: fixed;
  left: 0;
  right: 0;
  bottom: 0;
  top: 0;
  z-index: 990; }

.pull-right > .dropdown-menu {
  right: 0;
  left: auto; }

.dropup .caret,
.navbar-fixed-bottom .dropdown .caret {
  border-top: 0;
  border-bottom: 4px dashed;
  border-bottom: 4px solid \9;
  content: ""; }

.dropup .dropdown-menu,
.navbar-fixed-bottom .dropdown .dropdown-menu {
  top: auto;
  bottom: 100%;
  margin-bottom: 2px; }

@media (min-width: 768px) {
  .navbar-right .dropdown-menu {
    right: 0;
    left: auto; }
  .navbar-right .dropdown-menu-left {
    left: 0;
    right: auto; } }

.btn-group,
.btn-group-vertical {
  position: relative;
  display: inline-block;
  vertical-align: middle; }
  .btn-group > .btn,
  .btn-group-vertical > .btn {
    position: relative;
    float: left; }
    .btn-group > .btn:hover, .btn-group > .btn:focus, .btn-group > .btn:active, .btn-group > .btn.active,
    .btn-group-vertical > .btn:hover,
    .btn-group-vertical > .btn:focus,
    .btn-group-vertical > .btn:active,
    .btn-group-vertical > .btn.active {
      z-index: 2; }

.btn-group .btn + .btn,
.btn-group .btn + .btn-group,
.btn-group .btn-group + .btn,
.btn-group .btn-group + .btn-group {
  margin-left: -1px; }

.btn-toolbar {
  margin-left: -5px; }
  .btn-toolbar:before, .btn-toolbar:after {
    content: " ";
    display: table; }
  .btn-toolbar:after {
    clear: both; }
  .btn-toolbar .btn,
  .btn-toolbar .btn-group,
  .btn-toolbar .input-group {
    float: left; }
  .btn-toolbar > .btn,
  .btn-toolbar > .btn-group,
  .btn-toolbar > .input-group {
    margin-left: 5px; }

.btn-group > .btn:not(:first-child):not(:last-child):not(.dropdown-toggle) {
  border-radius: 0; }

.btn-group > .btn:first-child {
  margin-left: 0; }
  .btn-group > .btn:first-child:not(:last-child):not(.dropdown-toggle) {
    border-bottom-right-radius: 0;
    border-top-right-radius: 0; }

.btn-group > .btn:last-child:not(:first-child),
.btn-group > .dropdown-toggle:not(:first-child) {
  border-bottom-left-radius: 0;
  border-top-left-radius: 0; }

.btn-group > .btn-group {
  float: left; }

.btn-group > .btn-group:not(:first-child):not(:last-child) > .btn {
  border-radius: 0; }

.btn-group > .btn-group:first-child:not(:last-child) > .btn:last-child,
.btn-group > .btn-group:first-child:not(:last-child) > .dropdown-toggle {
  border-bottom-right-radius: 0;
  border-top-right-radius: 0; }

.btn-group > .btn-group:last-child:not(:first-child) > .btn:first-child {
  border-bottom-left-radius: 0;
  border-top-left-radius: 0; }

.btn-group .dropdown-toggle:active,
.btn-group.open .dropdown-toggle {
  outline: 0; }

.btn-group > .btn + .dropdown-toggle {
  padding-left: 8px;
  padding-right: 8px; }

.btn-group > .btn-lg + .dropdown-toggle, .btn-group-lg.btn-group > .btn + .dropdown-toggle {
  padding-left: 12px;
  padding-right: 12px; }

.btn-group.open .dropdown-toggle {
  box-shadow: inset 0 3px 5px rgba(0, 0, 0, 0.125); }
  .btn-group.open .dropdown-toggle.btn-link {
    box-shadow: none; }

.btn .caret {
  margin-left: 0; }

.btn-lg .caret, .btn-group-lg > .btn .caret {
  border-width: 5px 5px 0;
  border-bottom-width: 0; }

.dropup .btn-lg .caret, .dropup .btn-group-lg > .btn .caret {
  border-width: 0 5px 5px; }

.btn-group-vertical > .btn,
.btn-group-vertical > .btn-group,
.btn-group-vertical > .btn-group > .btn {
  display: block;
  float: none;
  width: 100%;
  max-width: 100%; }

.btn-group-vertical > .btn-group:before, .btn-group-vertical > .btn-group:after {
  content: " ";
  display: table; }

.btn-group-vertical > .btn-group:after {
  clear: both; }

.btn-group-vertical > .btn-group > .btn {
  float: none; }

.btn-group-vertical > .btn + .btn,
.btn-group-vertical > .btn + .btn-group,
.btn-group-vertical > .btn-group + .btn,
.btn-group-vertical > .btn-group + .btn-group {
  margin-top: -1px;
  margin-left: 0; }

.btn-group-vertical > .btn:not(:first-child):not(:last-child) {
  border-radius: 0; }

.btn-group-vertical > .btn:first-child:not(:last-child) {
  border-top-right-radius: 4px;
  border-top-left-radius: 4px;
  border-bottom-right-radius: 0;
  border-bottom-left-radius: 0; }

.btn-group-vertical > .btn:last-child:not(:first-child) {
  border-top-right-radius: 0;
  border-top-left-radius: 0;
  border-bottom-right-radius: 4px;
  border-bottom-left-radius: 4px; }

.btn-group-vertical > .btn-group:not(:first-child):not(:last-child) > .btn {
  border-radius: 0; }

.btn-group-vertical > .btn-group:first-child:not(:last-child) > .btn:last-child,
.btn-group-vertical > .btn-group:first-child:not(:last-child) > .dropdown-toggle {
  border-bottom-right-radius: 0;
  border-bottom-left-radius: 0; }

.btn-group-vertical > .btn-group:last-child:not(:first-child) > .btn:first-child {
  border-top-right-radius: 0;
  border-top-left-radius: 0; }

.btn-group-justified {
  display: table;
  width: 100%;
  table-layout: fixed;
  border-collapse: separate; }
  .btn-group-justified > .btn,
  .btn-group-justified > .btn-group {
    float: none;
    display: table-cell;
    width: 1%; }
  .btn-group-justified > .btn-group .btn {
    width: 100%; }
  .btn-group-justified > .btn-group .dropdown-menu {
    left: auto; }

[data-toggle="buttons"] > .btn input[type="radio"],
[data-toggle="buttons"] > .btn input[type="checkbox"],
[data-toggle="buttons"] > .btn-group > .btn input[type="radio"],
[data-toggle="buttons"] > .btn-group > .btn input[type="checkbox"] {
  position: absolute;
  clip: rect(0, 0, 0, 0);
  pointer-events: none; }

.input-group {
  position: relative;
  display: table;
  border-collapse: separate; }
  .input-group[class*="col-"] {
    float: none;
    padding-left: 0;
    padding-right: 0; }
  .input-group .form-control {
    position: relative;
    z-index: 2;
    float: left;
    width: 100%;
    margin-bottom: 0; }
    .input-group .form-control:focus {
      z-index: 3; }

.input-group-addon,
.input-group-btn,
.input-group .form-control {
  display: table-cell; }
  .input-group-addon:not(:first-child):not(:last-child),
  .input-group-btn:not(:first-child):not(:last-child),
  .input-group .form-control:not(:first-child):not(:last-child) {
    border-radius: 0; }

.input-group-addon,
.input-group-btn {
  width: 1%;
  white-space: nowrap;
  vertical-align: middle; }

.input-group-addon {
  padding: 6px 12px;
  font-size: 14px;
  font-weight: normal;
  line-height: 1;
  color: #555555;
  text-align: center;
  background-color: #eeeeee;
  border: 1px solid #ccc;
  border-radius: 4px; }
  .input-group-addon.input-sm,
  .input-group-sm > .input-group-addon,
  .input-group-sm > .input-group-btn > .input-group-addon.btn {
    padding: 5px 10px;
    font-size: 12px;
    border-radius: 3px; }
  .input-group-addon.input-lg,
  .input-group-lg > .input-group-addon,
  .input-group-lg > .input-group-btn > .input-group-addon.btn {
    padding: 10px 16px;
    font-size: 18px;
    border-radius: 6px; }
  .input-group-addon input[type="radio"],
  .input-group-addon input[type="checkbox"] {
    margin-top: 0; }

.input-group .form-control:first-child,
.input-group-addon:first-child,
.input-group-btn:first-child > .btn,
.input-group-btn:first-child > .btn-group > .btn,
.input-group-btn:first-child > .dropdown-toggle,
.input-group-btn:last-child > .btn:not(:last-child):not(.dropdown-toggle),
.input-group-btn:last-child > .btn-group:not(:last-child) > .btn {
  border-bottom-right-radius: 0;
  border-top-right-radius: 0; }

.input-group-addon:first-child {
  border-right: 0; }

.input-group .form-control:last-child,
.input-group-addon:last-child,
.input-group-btn:last-child > .btn,
.input-group-btn:last-child > .btn-group > .btn,
.input-group-btn:last-child > .dropdown-toggle,
.input-group-btn:first-child > .btn:not(:first-child),
.input-group-btn:first-child > .btn-group:not(:first-child) > .btn {
  border-bottom-left-radius: 0;
  border-top-left-radius: 0; }

.input-group-addon:last-child {
  border-left: 0; }

.input-group-btn {
  position: relative;
  font-size: 0;
  white-space: nowrap; }
  .input-group-btn > .btn {
    position: relative; }
    .input-group-btn > .btn + .btn {
      margin-left: -1px; }
    .input-group-btn > .btn:hover, .input-group-btn > .btn:focus, .input-group-btn > .btn:active {
      z-index: 2; }
  .input-group-btn:first-child > .btn,
  .input-group-btn:first-child > .btn-group {
    margin-right: -1px; }
  .input-group-btn:last-child > .btn,
  .input-group-btn:last-child > .btn-group {
    z-index: 2;
    margin-left: -1px; }

.nav {
  margin-bottom: 0;
  padding-left: 0;
  list-style: none; }
  .nav:before, .nav:after {
    content: " ";
    display: table; }
  .nav:after {
    clear: both; }
  .nav > li {
    position: relative;
    display: block; }
    .nav > li > a {
      position: relative;
      display: block;
      padding: 10px 15px; }
      .nav > li > a:hover, .nav > li > a:focus {
        text-decoration: none;
        background-color: #eeeeee; }
    .nav > li.disabled > a {
      color: #777777; }
      .nav > li.disabled > a:hover, .nav > li.disabled > a:focus {
        color: #777777;
        text-decoration: none;
        background-color: transparent;
        cursor: not-allowed; }
  .nav .open > a, .nav .open > a:hover, .nav .open > a:focus {
    background-color: #eeeeee;
    border-color: #337ab7; }
  .nav .nav-divider {
    height: 1px;
    margin: 9px 0;
    overflow: hidden;
    background-color: #e5e5e5; }
  .nav > li > a > img {
    max-width: none; }

.nav-tabs {
  border-bottom: 1px solid #ddd; }
  .nav-tabs > li {
    float: left;
    margin-bottom: -1px; }
    .nav-tabs > li > a {
      margin-right: 2px;
      line-height: 1.42857;
      border: 1px solid transparent;
      border-radius: 4px 4px 0 0; }
      .nav-tabs > li > a:hover {
        border-color: #eeeeee #eeeeee #ddd; }
    .nav-tabs > li.active > a, .nav-tabs > li.active > a:hover, .nav-tabs > li.active > a:focus {
      color: #555555;
      background-color: #fff;
      border: 1px solid #ddd;
      border-bottom-color: transparent;
      cursor: default; }

.nav-pills > li {
  float: left; }
  .nav-pills > li > a {
    border-radius: 4px; }
  .nav-pills > li + li {
    margin-left: 2px; }
  .nav-pills > li.active > a, .nav-pills > li.active > a:hover, .nav-pills > li.active > a:focus {
    color: #fff;
    background-color: #337ab7; }

.nav-stacked > li {
  float: none; }
  .nav-stacked > li + li {
    margin-top: 2px;
    margin-left: 0; }

.nav-justified, .nav-tabs.nav-justified {
  width: 100%; }
  .nav-justified > li, .nav-tabs.nav-justified > li {
    float: none; }
    .nav-justified > li > a, .nav-tabs.nav-justified > li > a {
      text-align: center;
      margin-bottom: 5px; }
  .nav-justified > .dropdown .dropdown-menu {
    top: auto;
    left: auto; }
  @media (min-width: 768px) {
    .nav-justified > li, .nav-tabs.nav-justified > li {
      display: table-cell;
      width: 1%; }
      .nav-justified > li > a, .nav-tabs.nav-justified > li > a {
        margin-bottom: 0; } }

.nav-tabs-justified, .nav-tabs.nav-justified {
  border-bottom: 0; }
  .nav-tabs-justified > li > a, .nav-tabs.nav-justified > li > a {
    margin-right: 0;
    border-radius: 4px; }
  .nav-tabs-justified > .active > a, .nav-tabs.nav-justified > .active > a,
  .nav-tabs-justified > .active > a:hover, .nav-tabs.nav-justified > .active > a:hover,
  .nav-tabs-justified > .active > a:focus, .nav-tabs.nav-justified > .active > a:focus {
    border: 1px solid #ddd; }
  @media (min-width: 768px) {
    .nav-tabs-justified > li > a, .nav-tabs.nav-justified > li > a {
      border-bottom: 1px solid #ddd;
      border-radius: 4px 4px 0 0; }
    .nav-tabs-justified > .active > a, .nav-tabs.nav-justified > .active > a,
    .nav-tabs-justified > .active > a:hover, .nav-tabs.nav-justified > .active > a:hover,
    .nav-tabs-justified > .active > a:focus, .nav-tabs.nav-justified > .active > a:focus {
      border-bottom-color: #fff; } }

.tab-content > .tab-pane {
  display: none; }

.tab-content > .active {
  display: block; }

.nav-tabs .dropdown-menu {
  margin-top: -1px;
  border-top-right-radius: 0;
  border-top-left-radius: 0; }

.navbar {
  position: relative;
  min-height: 50px;
  margin-bottom: 20px;
  border: 1px solid transparent; }
  .navbar:before, .navbar:after {
    content: " ";
    display: table; }
  .navbar:after {
    clear: both; }
  @media (min-width: 768px) {
    .navbar {
      border-radius: 4px; } }

.navbar-header:before, .navbar-header:after {
  content: " ";
  display: table; }

.navbar-header:after {
  clear: both; }

@media (min-width: 768px) {
  .navbar-header {
    float: left; } }

.navbar-collapse {
  overflow-x: visible;
  padding-right: 15px;
  padding-left: 15px;
  border-top: 1px solid transparent;
  box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.1);
  -webkit-overflow-scrolling: touch; }
  .navbar-collapse:before, .navbar-collapse:after {
    content: " ";
    display: table; }
  .navbar-collapse:after {
    clear: both; }
  .navbar-collapse.in {
    overflow-y: auto; }
  @media (min-width: 768px) {
    .navbar-collapse {
      width: auto;
      border-top: 0;
      box-shadow: none; }
      .navbar-collapse.collapse {
        display: block !important;
        height: auto !important;
        padding-bottom: 0;
        overflow: visible !important; }
      .navbar-collapse.in {
        overflow-y: visible; }
      .navbar-fixed-top .navbar-collapse,
      .navbar-static-top .navbar-collapse,
      .navbar-fixed-bottom .navbar-collapse {
        padding-left: 0;
        padding-right: 0; } }

.navbar-fixed-top .navbar-collapse,
.navbar-fixed-bottom .navbar-collapse {
  max-height: 340px; }
  @media (max-device-width: 480px) and (orientation: landscape) {
    .navbar-fixed-top .navbar-collapse,
    .navbar-fixed-bottom .navbar-collapse {
      max-height: 200px; } }

.container > .navbar-header,
.container > .navbar-collapse,
.container-fluid > .navbar-header,
.container-fluid > .navbar-collapse {
  margin-right: -15px;
  margin-left: -15px; }
  @media (min-width: 768px) {
    .container > .navbar-header,
    .container > .navbar-collapse,
    .container-fluid > .navbar-header,
    .container-fluid > .navbar-collapse {
      margin-right: 0;
      margin-left: 0; } }

.navbar-static-top {
  z-index: 1000;
  border-width: 0 0 1px; }
  @media (min-width: 768px) {
    .navbar-static-top {
      border-radius: 0; } }

.navbar-fixed-top,
.navbar-fixed-bottom {
  position: fixed;
  right: 0;
  left: 0;
  z-index: 1030; }
  @media (min-width: 768px) {
    .navbar-fixed-top,
    .navbar-fixed-bottom {
      border-radius: 0; } }

.navbar-fixed-top {
  top: 0;
  border-width: 0 0 1px; }

.navbar-fixed-bottom {
  bottom: 0;
  margin-bottom: 0;
  border-width: 1px 0 0; }

.navbar-brand {
  float: left;
  padding: 15px 15px;
  font-size: 18px;
  line-height: 20px;
  height: 50px; }
  .navbar-brand:hover, .navbar-brand:focus {
    text-decoration: none; }
  .navbar-brand > img {
    display: block; }
  @media (min-width: 768px) {
    .navbar > .container .navbar-brand,
    .navbar > .container-fluid .navbar-brand {
      margin-left: -15px; } }

.navbar-toggle {
  position: relative;
  float: right;
  margin-right: 15px;
  padding: 9px 10px;
  margin-top: 8px;
  margin-bottom: 8px;
  background-color: transparent;
  background-image: none;
  border: 1px solid transparent;
  border-radius: 4px; }
  .navbar-toggle:focus {
    outline: 0; }
  .navbar-toggle .icon-bar {
    display: block;
    width: 22px;
    height: 2px;
    border-radius: 1px; }
  .navbar-toggle .icon-bar + .icon-bar {
    margin-top: 4px; }
  @media (min-width: 768px) {
    .navbar-toggle {
      display: none; } }

.navbar-nav {
  margin: 7.5px -15px; }
  .navbar-nav > li > a {
    padding-top: 10px;
    padding-bottom: 10px;
    line-height: 20px; }
  @media (max-width: 767px) {
    .navbar-nav .open .dropdown-menu {
      position: static;
      float: none;
      width: auto;
      margin-top: 0;
      background-color: transparent;
      border: 0;
      box-shadow: none; }
      .navbar-nav .open .dropdown-menu > li > a,
      .navbar-nav .open .dropdown-menu .dropdown-header {
        padding: 5px 15px 5px 25px; }
      .navbar-nav .open .dropdown-menu > li > a {
        line-height: 20px; }
        .navbar-nav .open .dropdown-menu > li > a:hover, .navbar-nav .open .dropdown-menu > li > a:focus {
          background-image: none; } }
  @media (min-width: 768px) {
    .navbar-nav {
      float: left;
      margin: 0; }
      .navbar-nav > li {
        float: left; }
        .navbar-nav > li > a {
          padding-top: 15px;
          padding-bottom: 15px; } }

.navbar-form {
  margin-left: -15px;
  margin-right: -15px;
  padding: 10px 15px;
  border-top: 1px solid transparent;
  border-bottom: 1px solid transparent;
  box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.1), 0 1px 0 rgba(255, 255, 255, 0.1);
  margin-top: 8px;
  margin-bottom: 8px; }
  @media (min-width: 768px) {
    .navbar-form .form-group {
      display: inline-block;
      margin-bottom: 0;
      vertical-align: middle; }
    .navbar-form .form-control {
      display: inline-block;
      width: auto;
      vertical-align: middle; }
    .navbar-form .form-control-static {
      display: inline-block; }
    .navbar-form .input-group {
      display: inline-table;
      vertical-align: middle; }
      .navbar-form .input-group .input-group-addon,
      .navbar-form .input-group .input-group-btn,
      .navbar-form .input-group .form-control {
        width: auto; }
    .navbar-form .input-group > .form-control {
      width: 100%; }
    .navbar-form .control-label {
      margin-bottom: 0;
      vertical-align: middle; }
    .navbar-form .radio,
    .navbar-form .checkbox {
      display: inline-block;
      margin-top: 0;
      margin-bottom: 0;
      vertical-align: middle; }
      .navbar-form .radio label,
      .navbar-form .checkbox label {
        padding-left: 0; }
    .navbar-form .radio input[type="radio"],
    .navbar-form .checkbox input[type="checkbox"] {
      position: relative;
      margin-left: 0; }
    .navbar-form .has-feedback .form-control-feedback {
      top: 0; } }
  @media (max-width: 767px) {
    .navbar-form .form-group {
      margin-bottom: 5px; }
      .navbar-form .form-group:last-child {
        margin-bottom: 0; } }
  @media (min-width: 768px) {
    .navbar-form {
      width: auto;
      border: 0;
      margin-left: 0;
      margin-right: 0;
      padding-top: 0;
      padding-bottom: 0;
      box-shadow: none; } }

.navbar-nav > li > .dropdown-menu {
  margin-top: 0;
  border-top-right-radius: 0;
  border-top-left-radius: 0; }

.navbar-fixed-bottom .navbar-nav > li > .dropdown-menu {
  margin-bottom: 0;
  border-top-right-radius: 4px;
  border-top-left-radius: 4px;
  border-bottom-right-radius: 0;
  border-bottom-left-radius: 0; }

.navbar-btn {
  margin-top: 8px;
  margin-bottom: 8px; }
  .navbar-btn.btn-sm, .btn-group-sm > .navbar-btn.btn {
    margin-top: 10px;
    margin-bottom: 10px; }
  .navbar-btn.btn-xs, .btn-group-xs > .navbar-btn.btn {
    margin-top: 14px;
    margin-bottom: 14px; }

.navbar-text {
  margin-top: 15px;
  margin-bottom: 15px; }
  @media (min-width: 768px) {
    .navbar-text {
      float: left;
      margin-left: 15px;
      margin-right: 15px; } }

@media (min-width: 768px) {
  .navbar-left {
    float: left !important; }
  .navbar-right {
    float: right !important;
    margin-right: -15px; }
    .navbar-right ~ .navbar-right {
      margin-right: 0; } }

.navbar-default {
  background-color: #f8f8f8;
  border-color: #e7e7e7; }
  .navbar-default .navbar-brand {
    color: #777; }
    .navbar-default .navbar-brand:hover, .navbar-default .navbar-brand:focus {
      color: #5e5e5e;
      background-color: transparent; }
  .navbar-default .navbar-text {
    color: #777; }
  .navbar-default .navbar-nav > li > a {
    color: #777; }
    .navbar-default .navbar-nav > li > a:hover, .navbar-default .navbar-nav > li > a:focus {
      color: #333;
      background-color: transparent; }
  .navbar-default .navbar-nav > .active > a, .navbar-default .navbar-nav > .active > a:hover, .navbar-default .navbar-nav > .active > a:focus {
    color: #555;
    background-color: #e7e7e7; }
  .navbar-default .navbar-nav > .disabled > a, .navbar-default .navbar-nav > .disabled > a:hover, .navbar-default .navbar-nav > .disabled > a:focus {
    color: #ccc;
    background-color: transparent; }
  .navbar-default .navbar-toggle {
    border-color: #ddd; }
    .navbar-default .navbar-toggle:hover, .navbar-default .navbar-toggle:focus {
      background-color: #ddd; }
    .navbar-default .navbar-toggle .icon-bar {
      background-color: #888; }
  .navbar-default .navbar-collapse,
  .navbar-default .navbar-form {
    border-color: #e7e7e7; }
  .navbar-default .navbar-nav > .open > a, .navbar-default .navbar-nav > .open > a:hover, .navbar-default .navbar-nav > .open > a:focus {
    background-color: #e7e7e7;
    color: #555; }
  @media (max-width: 767px) {
    .navbar-default .navbar-nav .open .dropdown-menu > li > a {
      color: #777; }
      .navbar-default .navbar-nav .open .dropdown-menu > li > a:hover, .navbar-default .navbar-nav .open .dropdown-menu > li > a:focus {
        color: #333;
        background-color: transparent; }
    .navbar-default .navbar-nav .open .dropdown-menu > .active > a, .navbar-default .navbar-nav .open .dropdown-menu > .active > a:hover, .navbar-default .navbar-nav .open .dropdown-menu > .active > a:focus {
      color: #555;
      background-color: #e7e7e7; }
    .navbar-default .navbar-nav .open .dropdown-menu > .disabled > a, .navbar-default .navbar-nav .open .dropdown-menu > .disabled > a:hover, .navbar-default .navbar-nav .open .dropdown-menu > .disabled > a:focus {
      color: #ccc;
      background-color: transparent; } }
  .navbar-default .navbar-link {
    color: #777; }
    .navbar-default .navbar-link:hover {
      color: #333; }
  .navbar-default .btn-link {
    color: #777; }
    .navbar-default .btn-link:hover, .navbar-default .btn-link:focus {
      color: #333; }
    .navbar-default .btn-link[disabled]:hover, .navbar-default .btn-link[disabled]:focus,
    fieldset[disabled] .navbar-default .btn-link:hover,
    fieldset[disabled] .navbar-default .btn-link:focus {
      color: #ccc; }

.navbar-inverse {
  background-color: #222;
  border-color: #090909; }
  .navbar-inverse .navbar-brand {
    color: #9d9d9d; }
    .navbar-inverse .navbar-brand:hover, .navbar-inverse .navbar-brand:focus {
      color: #fff;
      background-color: transparent; }
  .navbar-inverse .navbar-text {
    color: #9d9d9d; }
  .navbar-inverse .navbar-nav > li > a {
    color: #9d9d9d; }
    .navbar-inverse .navbar-nav > li > a:hover, .navbar-inverse .navbar-nav > li > a:focus {
      color: #fff;
      background-color: transparent; }
  .navbar-inverse .navbar-nav > .active > a, .navbar-inverse .navbar-nav > .active > a:hover, .navbar-inverse .navbar-nav > .active > a:focus {
    color: #fff;
    background-color: #090909; }
  .navbar-inverse .navbar-nav > .disabled > a, .navbar-inverse .navbar-nav > .disabled > a:hover, .navbar-inverse .navbar-nav > .disabled > a:focus {
    color: #444;
    background-color: transparent; }
  .navbar-inverse .navbar-toggle {
    border-color: #333; }
    .navbar-inverse .navbar-toggle:hover, .navbar-inverse .navbar-toggle:focus {
      background-color: #333; }
    .navbar-inverse .navbar-toggle .icon-bar {
      background-color: #fff; }
  .navbar-inverse .navbar-collapse,
  .navbar-inverse .navbar-form {
    border-color: #101010; }
  .navbar-inverse .navbar-nav > .open > a, .navbar-inverse .navbar-nav > .open > a:hover, .navbar-inverse .navbar-nav > .open > a:focus {
    background-color: #090909;
    color: #fff; }
  @media (max-width: 767px) {
    .navbar-inverse .navbar-nav .open .dropdown-menu > .dropdown-header {
      border-color: #090909; }
    .navbar-inverse .navbar-nav .open .dropdown-menu .divider {
      background-color: #090909; }
    .navbar-inverse .navbar-nav .open .dropdown-menu > li > a {
      color: #9d9d9d; }
      .navbar-inverse .navbar-nav .open .dropdown-menu > li > a:hover, .navbar-inverse .navbar-nav .open .dropdown-menu > li > a:focus {
        color: #fff;
        background-color: transparent; }
    .navbar-inverse .navbar-nav .open .dropdown-menu > .active > a, .navbar-inverse .navbar-nav .open .dropdown-menu > .active > a:hover, .navbar-inverse .navbar-nav .open .dropdown-menu > .active > a:focus {
      color: #fff;
      background-color: #090909; }
    .navbar-inverse .navbar-nav .open .dropdown-menu > .disabled > a, .navbar-inverse .navbar-nav .open .dropdown-menu > .disabled > a:hover, .navbar-inverse .navbar-nav .open .dropdown-menu > .disabled > a:focus {
      color: #444;
      background-color: transparent; } }
  .navbar-inverse .navbar-link {
    color: #9d9d9d; }
    .navbar-inverse .navbar-link:hover {
      color: #fff; }
  .navbar-inverse .btn-link {
    color: #9d9d9d; }
    .navbar-inverse .btn-link:hover, .navbar-inverse .btn-link:focus {
      color: #fff; }
    .navbar-inverse .btn-link[disabled]:hover, .navbar-inverse .btn-link[disabled]:focus,
    fieldset[disabled] .navbar-inverse .btn-link:hover,
    fieldset[disabled] .navbar-inverse .btn-link:focus {
      color: #444; }

.breadcrumb {
  padding: 8px 15px;
  margin-bottom: 20px;
  list-style: none;
  background-color: #f5f5f5;
  border-radius: 4px; }
  .breadcrumb > li {
    display: inline-block; }
    .breadcrumb > li + li:before {
      content: "/ ";
      padding: 0 5px;
      color: #ccc; }
  .breadcrumb > .active {
    color: #777777; }

.pagination {
  display: inline-block;
  padding-left: 0;
  margin: 20px 0;
  border-radius: 4px; }
  .pagination > li {
    display: inline; }
    .pagination > li > a,
    .pagination > li > span {
      position: relative;
      float: left;
      padding: 6px 12px;
      line-height: 1.42857;
      text-decoration: none;
      color: #337ab7;
      background-color: #fff;
      border: 1px solid #ddd;
      margin-left: -1px; }
    .pagination > li:first-child > a,
    .pagination > li:first-child > span {
      margin-left: 0;
      border-bottom-left-radius: 4px;
      border-top-left-radius: 4px; }
    .pagination > li:last-child > a,
    .pagination > li:last-child > span {
      border-bottom-right-radius: 4px;
      border-top-right-radius: 4px; }
  .pagination > li > a:hover, .pagination > li > a:focus,
  .pagination > li > span:hover,
  .pagination > li > span:focus {
    z-index: 2;
    color: #23527c;
    background-color: #eeeeee;
    border-color: #ddd; }
  .pagination > .active > a, .pagination > .active > a:hover, .pagination > .active > a:focus,
  .pagination > .active > span,
  .pagination > .active > span:hover,
  .pagination > .active > span:focus {
    z-index: 3;
    color: #fff;
    background-color: #337ab7;
    border-color: #337ab7;
    cursor: default; }
  .pagination > .disabled > span,
  .pagination > .disabled > span:hover,
  .pagination > .disabled > span:focus,
  .pagination > .disabled > a,
  .pagination > .disabled > a:hover,
  .pagination > .disabled > a:focus {
    color: #777777;
    background-color: #fff;
    border-color: #ddd;
    cursor: not-allowed; }

.pagination-lg > li > a,
.pagination-lg > li > span {
  padding: 10px 16px;
  font-size: 18px;
  line-height: 1.33333; }

.pagination-lg > li:first-child > a,
.pagination-lg > li:first-child > span {
  border-bottom-left-radius: 6px;
  border-top-left-radius: 6px; }

.pagination-lg > li:last-child > a,
.pagination-lg > li:last-child > span {
  border-bottom-right-radius: 6px;
  border-top-right-radius: 6px; }

.pagination-sm > li > a,
.pagination-sm > li > span {
  padding: 5px 10px;
  font-size: 12px;
  line-height: 1.5; }

.pagination-sm > li:first-child > a,
.pagination-sm > li:first-child > span {
  border-bottom-left-radius: 3px;
  border-top-left-radius: 3px; }

.pagination-sm > li:last-child > a,
.pagination-sm > li:last-child > span {
  border-bottom-right-radius: 3px;
  border-top-right-radius: 3px; }

.pager {
  padding-left: 0;
  margin: 20px 0;
  list-style: none;
  text-align: center; }
  .pager:before, .pager:after {
    content: " ";
    display: table; }
  .pager:after {
    clear: both; }
  .pager li {
    display: inline; }
    .pager li > a,
    .pager li > span {
      display: inline-block;
      padding: 5px 14px;
      background-color: #fff;
      border: 1px solid #ddd;
      border-radius: 15px; }
    .pager li > a:hover,
    .pager li > a:focus {
      text-decoration: none;
      background-color: #eeeeee; }
  .pager .next > a,
  .pager .next > span {
    float: right; }
  .pager .previous > a,
  .pager .previous > span {
    float: left; }
  .pager .disabled > a,
  .pager .disabled > a:hover,
  .pager .disabled > a:focus,
  .pager .disabled > span {
    color: #777777;
    background-color: #fff;
    cursor: not-allowed; }

.label {
  display: inline;
  padding: .2em .6em .3em;
  font-size: 75%;
  font-weight: bold;
  line-height: 1;
  color: #fff;
  text-align: center;
  white-space: nowrap;
  vertical-align: baseline;
  border-radius: .25em; }
  .label:empty {
    display: none; }
  .btn .label {
    position: relative;
    top: -1px; }

a.label:hover, a.label:focus {
  color: #fff;
  text-decoration: none;
  cursor: pointer; }

.label-default {
  background-color: #777777; }
  .label-default[href]:hover, .label-default[href]:focus {
    background-color: #5e5e5e; }

.label-primary {
  background-color: #337ab7; }
  .label-primary[href]:hover, .label-primary[href]:focus {
    background-color: #286090; }

.label-success {
  background-color: #5cb85c; }
  .label-success[href]:hover, .label-success[href]:focus {
    background-color: #449d44; }

.label-info {
  background-color: #5bc0de; }
  .label-info[href]:hover, .label-info[href]:focus {
    background-color: #31b0d5; }

.label-warning {
  background-color: #f0ad4e; }
  .label-warning[href]:hover, .label-warning[href]:focus {
    background-color: #ec971f; }

.label-danger {
  background-color: #d9534f; }
  .label-danger[href]:hover, .label-danger[href]:focus {
    background-color: #c9302c; }

.badge {
  display: inline-block;
  min-width: 10px;
  padding: 3px 7px;
  font-size: 12px;
  font-weight: bold;
  color: #fff;
  line-height: 1;
  vertical-align: middle;
  white-space: nowrap;
  text-align: center;
  background-color: #777777;
  border-radius: 10px; }
  .badge:empty {
    display: none; }
  .btn .badge {
    position: relative;
    top: -1px; }
  .btn-xs .badge, .btn-group-xs > .btn .badge,
  .btn-group-xs > .btn .badge {
    top: 0;
    padding: 1px 5px; }
  .list-group-item.active > .badge,
  .nav-pills > .active > a > .badge {
    color: #337ab7;
    background-color: #fff; }
  .list-group-item > .badge {
    float: right; }
  .list-group-item > .badge + .badge {
    margin-right: 5px; }
  .nav-pills > li > a > .badge {
    margin-left: 3px; }

a.badge:hover, a.badge:focus {
  color: #fff;
  text-decoration: none;
  cursor: pointer; }

.jumbotron {
  padding-top: 30px;
  padding-bottom: 30px;
  margin-bottom: 30px;
  color: inherit;
  background-color: #eeeeee; }
  .jumbotron h1,
  .jumbotron .h1 {
    color: inherit; }
  .jumbotron p {
    margin-bottom: 15px;
    font-size: 21px;
    font-weight: 200; }
  .jumbotron > hr {
    border-top-color: #d5d5d5; }
  .container .jumbotron,
  .container-fluid .jumbotron {
    border-radius: 6px;
    padding-left: 15px;
    padding-right: 15px; }
  .jumbotron .container {
    max-width: 100%; }
  @media screen and (min-width: 768px) {
    .jumbotron {
      padding-top: 48px;
      padding-bottom: 48px; }
      .container .jumbotron,
      .container-fluid .jumbotron {
        padding-left: 60px;
        padding-right: 60px; }
      .jumbotron h1,
      .jumbotron .h1 {
        font-size: 63px; } }

.thumbnail {
  display: block;
  padding: 4px;
  margin-bottom: 20px;
  line-height: 1.42857;
  background-color: #fff;
  border: 1px solid #ddd;
  border-radius: 4px;
  transition: border 0.2s ease-in-out; }
  .thumbnail > img,
  .thumbnail a > img {
    display: block;
    max-width: 100%;
    height: auto;
    margin-left: auto;
    margin-right: auto; }
  .thumbnail .caption {
    padding: 9px;
    color: #333333; }

a.thumbnail:hover,
a.thumbnail:focus,
a.thumbnail.active {
  border-color: #337ab7; }

.alert {
  padding: 15px;
  margin-bottom: 20px;
  border: 1px solid transparent;
  border-radius: 4px; }
  .alert h4 {
    margin-top: 0;
    color: inherit; }
  .alert .alert-link {
    font-weight: bold; }
  .alert > p,
  .alert > ul {
    margin-bottom: 0; }
  .alert > p + p {
    margin-top: 5px; }

.alert-dismissable,
.alert-dismissible {
  padding-right: 35px; }
  .alert-dismissable .close,
  .alert-dismissible .close {
    position: relative;
    top: -2px;
    right: -21px;
    color: inherit; }

.alert-success {
  background-color: #dff0d8;
  border-color: #d6e9c6;
  color: #3c763d; }
  .alert-success hr {
    border-top-color: #c9e2b3; }
  .alert-success .alert-link {
    color: #2b542c; }

.alert-info {
  background-color: #d9edf7;
  border-color: #bce8f1;
  color: #31708f; }
  .alert-info hr {
    border-top-color: #a6e1ec; }
  .alert-info .alert-link {
    color: #245269; }

.alert-warning {
  background-color: #fcf8e3;
  border-color: #faebcc;
  color: #8a6d3b; }
  .alert-warning hr {
    border-top-color: #f7e1b5; }
  .alert-warning .alert-link {
    color: #66512c; }

.alert-danger {
  background-color: #f2dede;
  border-color: #ebccd1;
  color: #a94442; }
  .alert-danger hr {
    border-top-color: #e4b9c0; }
  .alert-danger .alert-link {
    color: #843534; }

@keyframes progress-bar-stripes {
  from {
    background-position: 40px 0; }
  to {
    background-position: 0 0; } }

.progress {
  overflow: hidden;
  height: 20px;
  margin-bottom: 20px;
  background-color: #f5f5f5;
  border-radius: 4px;
  box-shadow: inset 0 1px 2px rgba(0, 0, 0, 0.1); }

.progress-bar {
  float: left;
  width: 0%;
  height: 100%;
  font-size: 12px;
  line-height: 20px;
  color: #fff;
  text-align: center;
  background-color: #337ab7;
  box-shadow: inset 0 -1px 0 rgba(0, 0, 0, 0.15);
  transition: width 0.6s ease; }

.progress-striped .progress-bar,
.progress-bar-striped {
  background-image: linear-gradient(45deg, rgba(255, 255, 255, 0.15) 25%, transparent 25%, transparent 50%, rgba(255, 255, 255, 0.15) 50%, rgba(255, 255, 255, 0.15) 75%, transparent 75%, transparent);
  background-size: 40px 40px; }

.progress.active .progress-bar,
.progress-bar.active {
  animation: progress-bar-stripes 2s linear infinite; }

.progress-bar-success {
  background-color: #5cb85c; }
  .progress-striped .progress-bar-success {
    background-image: linear-gradient(45deg, rgba(255, 255, 255, 0.15) 25%, transparent 25%, transparent 50%, rgba(255, 255, 255, 0.15) 50%, rgba(255, 255, 255, 0.15) 75%, transparent 75%, transparent); }

.progress-bar-info {
  background-color: #5bc0de; }
  .progress-striped .progress-bar-info {
    background-image: linear-gradient(45deg, rgba(255, 255, 255, 0.15) 25%, transparent 25%, transparent 50%, rgba(255, 255, 255, 0.15) 50%, rgba(255, 255, 255, 0.15) 75%, transparent 75%, transparent); }

.progress-bar-warning {
  background-color: #f0ad4e; }
  .progress-striped .progress-bar-warning {
    background-image: linear-gradient(45deg, rgba(255, 255, 255, 0.15) 25%, transparent 25%, transparent 50%, rgba(255, 255, 255, 0.15) 50%, rgba(255, 255, 255, 0.15) 75%, transparent 75%, transparent); }

.progress-bar-danger {
  background-color: #d9534f; }
  .progress-striped .progress-bar-danger {
    background-image: linear-gradient(45deg, rgba(255, 255, 255, 0.15) 25%, transparent 25%, transparent 50%, rgba(255, 255, 255, 0.15) 50%, rgba(255, 255, 255, 0.15) 75%, transparent 75%, transparent); }

.media {
  margin-top: 15px; }
  .media:first-child {
    margin-top: 0; }

.media,
.media-body {
  zoom: 1;
  overflow: hidden; }

.media-body {
  width: 10000px; }

.media-object {
  display: block; }
  .media-object.img-thumbnail {
    max-width: none; }

.media-right,
.media > .pull-right {
  padding-left: 10px; }

.media-left,
.media > .pull-left {
  padding-right: 10px; }

.media-left,
.media-right,
.media-body {
  display: table-cell;
  vertical-align: top; }

.media-middle {
  vertical-align: middle; }

.media-bottom {
  vertical-align: bottom; }

.media-heading {
  margin-top: 0;
  margin-bottom: 5px; }

.media-list {
  padding-left: 0;
  list-style: none; }

.list-group {
  margin-bottom: 20px;
  padding-left: 0; }

.list-group-item {
  position: relative;
  display: block;
  padding: 10px 15px;
  margin-bottom: -1px;
  background-color: #fff;
  border: 1px solid #ddd; }
  .list-group-item:first-child {
    border-top-right-radius: 4px;
    border-top-left-radius: 4px; }
  .list-group-item:last-child {
    margin-bottom: 0;
    border-bottom-right-radius: 4px;
    border-bottom-left-radius: 4px; }

a.list-group-item,
button.list-group-item {
  color: #555; }
  a.list-group-item .list-group-item-heading,
  button.list-group-item .list-group-item-heading {
    color: #333; }
  a.list-group-item:hover, a.list-group-item:focus,
  button.list-group-item:hover,
  button.list-group-item:focus {
    text-decoration: none;
    color: #555;
    background-color: #f5f5f5; }

button.list-group-item {
  width: 100%;
  text-align: left; }

.list-group-item.disabled, .list-group-item.disabled:hover, .list-group-item.disabled:focus {
  background-color: #eeeeee;
  color: #777777;
  cursor: not-allowed; }
  .list-group-item.disabled .list-group-item-heading, .list-group-item.disabled:hover .list-group-item-heading, .list-group-item.disabled:focus .list-group-item-heading {
    color: inherit; }
  .list-group-item.disabled .list-group-item-text, .list-group-item.disabled:hover .list-group-item-text, .list-group-item.disabled:focus .list-group-item-text {
    color: #777777; }

.list-group-item.active, .list-group-item.active:hover, .list-group-item.active:focus {
  z-index: 2;
  color: #fff;
  background-color: #337ab7;
  border-color: #337ab7; }
  .list-group-item.active .list-group-item-heading,
  .list-group-item.active .list-group-item-heading > small,
  .list-group-item.active .list-group-item-heading > .small, .list-group-item.active:hover .list-group-item-heading,
  .list-group-item.active:hover .list-group-item-heading > small,
  .list-group-item.active:hover .list-group-item-heading > .small, .list-group-item.active:focus .list-group-item-heading,
  .list-group-item.active:focus .list-group-item-heading > small,
  .list-group-item.active:focus .list-group-item-heading > .small {
    color: inherit; }
  .list-group-item.active .list-group-item-text, .list-group-item.active:hover .list-group-item-text, .list-group-item.active:focus .list-group-item-text {
    color: #c7ddef; }

.list-group-item-success {
  color: #3c763d;
  background-color: #dff0d8; }

a.list-group-item-success,
button.list-group-item-success {
  color: #3c763d; }
  a.list-group-item-success .list-group-item-heading,
  button.list-group-item-success .list-group-item-heading {
    color: inherit; }
  a.list-group-item-success:hover, a.list-group-item-success:focus,
  button.list-group-item-success:hover,
  button.list-group-item-success:focus {
    color: #3c763d;
    background-color: #d0e9c6; }
  a.list-group-item-success.active, a.list-group-item-success.active:hover, a.list-group-item-success.active:focus,
  button.list-group-item-success.active,
  button.list-group-item-success.active:hover,
  button.list-group-item-success.active:focus {
    color: #fff;
    background-color: #3c763d;
    border-color: #3c763d; }

.list-group-item-info {
  color: #31708f;
  background-color: #d9edf7; }

a.list-group-item-info,
button.list-group-item-info {
  color: #31708f; }
  a.list-group-item-info .list-group-item-heading,
  button.list-group-item-info .list-group-item-heading {
    color: inherit; }
  a.list-group-item-info:hover, a.list-group-item-info:focus,
  button.list-group-item-info:hover,
  button.list-group-item-info:focus {
    color: #31708f;
    background-color: #c4e3f3; }
  a.list-group-item-info.active, a.list-group-item-info.active:hover, a.list-group-item-info.active:focus,
  button.list-group-item-info.active,
  button.list-group-item-info.active:hover,
  button.list-group-item-info.active:focus {
    color: #fff;
    background-color: #31708f;
    border-color: #31708f; }

.list-group-item-warning {
  color: #8a6d3b;
  background-color: #fcf8e3; }

a.list-group-item-warning,
button.list-group-item-warning {
  color: #8a6d3b; }
  a.list-group-item-warning .list-group-item-heading,
  button.list-group-item-warning .list-group-item-heading {
    color: inherit; }
  a.list-group-item-warning:hover, a.list-group-item-warning:focus,
  button.list-group-item-warning:hover,
  button.list-group-item-warning:focus {
    color: #8a6d3b;
    background-color: #faf2cc; }
  a.list-group-item-warning.active, a.list-group-item-warning.active:hover, a.list-group-item-warning.active:focus,
  button.list-group-item-warning.active,
  button.list-group-item-warning.active:hover,
  button.list-group-item-warning.active:focus {
    color: #fff;
    background-color: #8a6d3b;
    border-color: #8a6d3b; }

.list-group-item-danger {
  color: #a94442;
  background-color: #f2dede; }

a.list-group-item-danger,
button.list-group-item-danger {
  color: #a94442; }
  a.list-group-item-danger .list-group-item-heading,
  button.list-group-item-danger .list-group-item-heading {
    color: inherit; }
  a.list-group-item-danger:hover, a.list-group-item-danger:focus,
  button.list-group-item-danger:hover,
  button.list-group-item-danger:focus {
    color: #a94442;
    background-color: #ebcccc; }
  a.list-group-item-danger.active, a.list-group-item-danger.active:hover, a.list-group-item-danger.active:focus,
  button.list-group-item-danger.active,
  button.list-group-item-danger.active:hover,
  button.list-group-item-danger.active:focus {
    color: #fff;
    background-color: #a94442;
    border-color: #a94442; }

.list-group-item-heading {
  margin-top: 0;
  margin-bottom: 5px; }

.list-group-item-text {
  margin-bottom: 0;
  line-height: 1.3; }

.panel {
  margin-bottom: 20px;
  background-color: #fff;
  border: 1px solid transparent;
  border-radius: 4px;
  box-shadow: 0 1px 1px rgba(0, 0, 0, 0.05); }

.panel-body {
  padding: 15px; }
  .panel-body:before, .panel-body:after {
    content: " ";
    display: table; }
  .panel-body:after {
    clear: both; }

.panel-heading {
  padding: 10px 15px;
  border-bottom: 1px solid transparent;
  border-top-right-radius: 3px;
  border-top-left-radius: 3px; }
  .panel-heading > .dropdown .dropdown-toggle {
    color: inherit; }

.panel-title {
  margin-top: 0;
  margin-bottom: 0;
  font-size: 16px;
  color: inherit; }
  .panel-title > a,
  .panel-title > small,
  .panel-title > .small,
  .panel-title > small > a,
  .panel-title > .small > a {
    color: inherit; }

.panel-footer {
  padding: 10px 15px;
  background-color: #f5f5f5;
  border-top: 1px solid #ddd;
  border-bottom-right-radius: 3px;
  border-bottom-left-radius: 3px; }

.panel > .list-group,
.panel > .panel-collapse > .list-group {
  margin-bottom: 0; }
  .panel > .list-group .list-group-item,
  .panel > .panel-collapse > .list-group .list-group-item {
    border-width: 1px 0;
    border-radius: 0; }
  .panel > .list-group:first-child .list-group-item:first-child,
  .panel > .panel-collapse > .list-group:first-child .list-group-item:first-child {
    border-top: 0;
    border-top-right-radius: 3px;
    border-top-left-radius: 3px; }
  .panel > .list-group:last-child .list-group-item:last-child,
  .panel > .panel-collapse > .list-group:last-child .list-group-item:last-child {
    border-bottom: 0;
    border-bottom-right-radius: 3px;
    border-bottom-left-radius: 3px; }

.panel > .panel-heading + .panel-collapse > .list-group .list-group-item:first-child {
  border-top-right-radius: 0;
  border-top-left-radius: 0; }

.panel-heading + .list-group .list-group-item:first-child {
  border-top-width: 0; }

.list-group + .panel-footer {
  border-top-width: 0; }

.panel > .table,
.panel > .table-responsive > .table,
.panel > .panel-collapse > .table {
  margin-bottom: 0; }
  .panel > .table caption,
  .panel > .table-responsive > .table caption,
  .panel > .panel-collapse > .table caption {
    padding-left: 15px;
    padding-right: 15px; }

.panel > .table:first-child,
.panel > .table-responsive:first-child > .table:first-child {
  border-top-right-radius: 3px;
  border-top-left-radius: 3px; }
  .panel > .table:first-child > thead:first-child > tr:first-child,
  .panel > .table:first-child > tbody:first-child > tr:first-child,
  .panel > .table-responsive:first-child > .table:first-child > thead:first-child > tr:first-child,
  .panel > .table-responsive:first-child > .table:first-child > tbody:first-child > tr:first-child {
    border-top-left-radius: 3px;
    border-top-right-radius: 3px; }
    .panel > .table:first-child > thead:first-child > tr:first-child td:first-child,
    .panel > .table:first-child > thead:first-child > tr:first-child th:first-child,
    .panel > .table:first-child > tbody:first-child > tr:first-child td:first-child,
    .panel > .table:first-child > tbody:first-child > tr:first-child th:first-child,
    .panel > .table-responsive:first-child > .table:first-child > thead:first-child > tr:first-child td:first-child,
    .panel > .table-responsive:first-child > .table:first-child > thead:first-child > tr:first-child th:first-child,
    .panel > .table-responsive:first-child > .table:first-child > tbody:first-child > tr:first-child td:first-child,
    .panel > .table-responsive:first-child > .table:first-child > tbody:first-child > tr:first-child th:first-child {
      border-top-left-radius: 3px; }
    .panel > .table:first-child > thead:first-child > tr:first-child td:last-child,
    .panel > .table:first-child > thead:first-child > tr:first-child th:last-child,
    .panel > .table:first-child > tbody:first-child > tr:first-child td:last-child,
    .panel > .table:first-child > tbody:first-child > tr:first-child th:last-child,
    .panel > .table-responsive:first-child > .table:first-child > thead:first-child > tr:first-child td:last-child,
    .panel > .table-responsive:first-child > .table:first-child > thead:first-child > tr:first-child th:last-child,
    .panel > .table-responsive:first-child > .table:first-child > tbody:first-child > tr:first-child td:last-child,
    .panel > .table-responsive:first-child > .table:first-child > tbody:first-child > tr:first-child th:last-child {
      border-top-right-radius: 3px; }

.panel > .table:last-child,
.panel > .table-responsive:last-child > .table:last-child {
  border-bottom-right-radius: 3px;
  border-bottom-left-radius: 3px; }
  .panel > .table:last-child > tbody:last-child > tr:last-child,
  .panel > .table:last-child > tfoot:last-child > tr:last-child,
  .panel > .table-responsive:last-child > .table:last-child > tbody:last-child > tr:last-child,
  .panel > .table-responsive:last-child > .table:last-child > tfoot:last-child > tr:last-child {
    border-bottom-left-radius: 3px;
    border-bottom-right-radius: 3px; }
    .panel > .table:last-child > tbody:last-child > tr:last-child td:first-child,
    .panel > .table:last-child > tbody:last-child > tr:last-child th:first-child,
    .panel > .table:last-child > tfoot:last-child > tr:last-child td:first-child,
    .panel > .table:last-child > tfoot:last-child > tr:last-child th:first-child,
    .panel > .table-responsive:last-child > .table:last-child > tbody:last-child > tr:last-child td:first-child,
    .panel > .table-responsive:last-child > .table:last-child > tbody:last-child > tr:last-child th:first-child,
    .panel > .table-responsive:last-child > .table:last-child > tfoot:last-child > tr:last-child td:first-child,
    .panel > .table-responsive:last-child > .table:last-child > tfoot:last-child > tr:last-child th:first-child {
      border-bottom-left-radius: 3px; }
    .panel > .table:last-child > tbody:last-child > tr:last-child td:last-child,
    .panel > .table:last-child > tbody:last-child > tr:last-child th:last-child,
    .panel > .table:last-child > tfoot:last-child > tr:last-child td:last-child,
    .panel > .table:last-child > tfoot:last-child > tr:last-child th:last-child,
    .panel > .table-responsive:last-child > .table:last-child > tbody:last-child > tr:last-child td:last-child,
    .panel > .table-responsive:last-child > .table:last-child > tbody:last-child > tr:last-child th:last-child,
    .panel > .table-responsive:last-child > .table:last-child > tfoot:last-child > tr:last-child td:last-child,
    .panel > .table-responsive:last-child > .table:last-child > tfoot:last-child > tr:last-child th:last-child {
      border-bottom-right-radius: 3px; }

.panel > .panel-body + .table,
.panel > .panel-body + .table-responsive,
.panel > .table + .panel-body,
.panel > .table-responsive + .panel-body {
  border-top: 1px solid #ddd; }

.panel > .table > tbody:first-child > tr:first-child th,
.panel > .table > tbody:first-child > tr:first-child td {
  border-top: 0; }

.panel > .table-bordered,
.panel > .table-responsive > .table-bordered {
  border: 0; }
  .panel > .table-bordered > thead > tr > th:first-child,
  .panel > .table-bordered > thead > tr > td:first-child,
  .panel > .table-bordered > tbody > tr > th:first-child,
  .panel > .table-bordered > tbody > tr > td:first-child,
  .panel > .table-bordered > tfoot > tr > th:first-child,
  .panel > .table-bordered > tfoot > tr > td:first-child,
  .panel > .table-responsive > .table-bordered > thead > tr > th:first-child,
  .panel > .table-responsive > .table-bordered > thead > tr > td:first-child,
  .panel > .table-responsive > .table-bordered > tbody > tr > th:first-child,
  .panel > .table-responsive > .table-bordered > tbody > tr > td:first-child,
  .panel > .table-responsive > .table-bordered > tfoot > tr > th:first-child,
  .panel > .table-responsive > .table-bordered > tfoot > tr > td:first-child {
    border-left: 0; }
  .panel > .table-bordered > thead > tr > th:last-child,
  .panel > .table-bordered > thead > tr > td:last-child,
  .panel > .table-bordered > tbody > tr > th:last-child,
  .panel > .table-bordered > tbody > tr > td:last-child,
  .panel > .table-bordered > tfoot > tr > th:last-child,
  .panel > .table-bordered > tfoot > tr > td:last-child,
  .panel > .table-responsive > .table-bordered > thead > tr > th:last-child,
  .panel > .table-responsive > .table-bordered > thead > tr > td:last-child,
  .panel > .table-responsive > .table-bordered > tbody > tr > th:last-child,
  .panel > .table-responsive > .table-bordered > tbody > tr > td:last-child,
  .panel > .table-responsive > .table-bordered > tfoot > tr > th:last-child,
  .panel > .table-responsive > .table-bordered > tfoot > tr > td:last-child {
    border-right: 0; }
  .panel > .table-bordered > thead > tr:first-child > td,
  .panel > .table-bordered > thead > tr:first-child > th,
  .panel > .table-bordered > tbody > tr:first-child > td,
  .panel > .table-bordered > tbody > tr:first-child > th,
  .panel > .table-responsive > .table-bordered > thead > tr:first-child > td,
  .panel > .table-responsive > .table-bordered > thead > tr:first-child > th,
  .panel > .table-responsive > .table-bordered > tbody > tr:first-child > td,
  .panel > .table-responsive > .table-bordered > tbody > tr:first-child > th {
    border-bottom: 0; }
  .panel > .table-bordered > tbody > tr:last-child > td,
  .panel > .table-bordered > tbody > tr:last-child > th,
  .panel > .table-bordered > tfoot > tr:last-child > td,
  .panel > .table-bordered > tfoot > tr:last-child > th,
  .panel > .table-responsive > .table-bordered > tbody > tr:last-child > td,
  .panel > .table-responsive > .table-bordered > tbody > tr:last-child > th,
  .panel > .table-responsive > .table-bordered > tfoot > tr:last-child > td,
  .panel > .table-responsive > .table-bordered > tfoot > tr:last-child > th {
    border-bottom: 0; }

.panel > .table-responsive {
  border: 0;
  margin-bottom: 0; }

.panel-group {
  margin-bottom: 20px; }
  .panel-group .panel {
    margin-bottom: 0;
    border-radius: 4px; }
    .panel-group .panel + .panel {
      margin-top: 5px; }
  .panel-group .panel-heading {
    border-bottom: 0; }
    .panel-group .panel-heading + .panel-collapse > .panel-body,
    .panel-group .panel-heading + .panel-collapse > .list-group {
      border-top: 1px solid #ddd; }
  .panel-group .panel-footer {
    border-top: 0; }
    .panel-group .panel-footer + .panel-collapse .panel-body {
      border-bottom: 1px solid #ddd; }

.panel-default {
  border-color: #ddd; }
  .panel-default > .panel-heading {
    color: #333333;
    background-color: #f5f5f5;
    border-color: #ddd; }
    .panel-default > .panel-heading + .panel-collapse > .panel-body {
      border-top-color: #ddd; }
    .panel-default > .panel-heading .badge {
      color: #f5f5f5;
      background-color: #333333; }
  .panel-default > .panel-footer + .panel-collapse > .panel-body {
    border-bottom-color: #ddd; }

.panel-primary {
  border-color: #337ab7; }
  .panel-primary > .panel-heading {
    color: #fff;
    background-color: #337ab7;
    border-color: #337ab7; }
    .panel-primary > .panel-heading + .panel-collapse > .panel-body {
      border-top-color: #337ab7; }
    .panel-primary > .panel-heading .badge {
      color: #337ab7;
      background-color: #fff; }
  .panel-primary > .panel-footer + .panel-collapse > .panel-body {
    border-bottom-color: #337ab7; }

.panel-success {
  border-color: #d6e9c6; }
  .panel-success > .panel-heading {
    color: #3c763d;
    background-color: #dff0d8;
    border-color: #d6e9c6; }
    .panel-success > .panel-heading + .panel-collapse > .panel-body {
      border-top-color: #d6e9c6; }
    .panel-success > .panel-heading .badge {
      color: #dff0d8;
      background-color: #3c763d; }
  .panel-success > .panel-footer + .panel-collapse > .panel-body {
    border-bottom-color: #d6e9c6; }

.panel-info {
  border-color: #bce8f1; }
  .panel-info > .panel-heading {
    color: #31708f;
    background-color: #d9edf7;
    border-color: #bce8f1; }
    .panel-info > .panel-heading + .panel-collapse > .panel-body {
      border-top-color: #bce8f1; }
    .panel-info > .panel-heading .badge {
      color: #d9edf7;
      background-color: #31708f; }
  .panel-info > .panel-footer + .panel-collapse > .panel-body {
    border-bottom-color: #bce8f1; }

.panel-warning {
  border-color: #faebcc; }
  .panel-warning > .panel-heading {
    color: #8a6d3b;
    background-color: #fcf8e3;
    border-color: #faebcc; }
    .panel-warning > .panel-heading + .panel-collapse > .panel-body {
      border-top-color: #faebcc; }
    .panel-warning > .panel-heading .badge {
      color: #fcf8e3;
      background-color: #8a6d3b; }
  .panel-warning > .panel-footer + .panel-collapse > .panel-body {
    border-bottom-color: #faebcc; }

.panel-danger {
  border-color: #ebccd1; }
  .panel-danger > .panel-heading {
    color: #a94442;
    background-color: #f2dede;
    border-color: #ebccd1; }
    .panel-danger > .panel-heading + .panel-collapse > .panel-body {
      border-top-color: #ebccd1; }
    .panel-danger > .panel-heading .badge {
      color: #f2dede;
      background-color: #a94442; }
  .panel-danger > .panel-footer + .panel-collapse > .panel-body {
    border-bottom-color: #ebccd1; }

.embed-responsive {
  position: relative;
  display: block;
  height: 0;
  padding: 0;
  overflow: hidden; }
  .embed-responsive .embed-responsive-item,
  .embed-responsive iframe,
  .embed-responsive embed,
  .embed-responsive object,
  .embed-responsive video {
    position: absolute;
    top: 0;
    left: 0;
    bottom: 0;
    height: 100%;
    width: 100%;
    border: 0; }

.embed-responsive-16by9 {
  padding-bottom: 56.25%; }

.embed-responsive-4by3 {
  padding-bottom: 75%; }

.well {
  min-height: 20px;
  padding: 19px;
  margin-bottom: 20px;
  background-color: #f5f5f5;
  border: 1px solid #e3e3e3;
  border-radius: 4px;
  box-shadow: inset 0 1px 1px rgba(0, 0, 0, 0.05); }
  .well blockquote {
    border-color: #ddd;
    border-color: rgba(0, 0, 0, 0.15); }

.well-lg {
  padding: 24px;
  border-radius: 6px; }

.well-sm {
  padding: 9px;
  border-radius: 3px; }

.close {
  float: right;
  font-size: 21px;
  font-weight: bold;
  line-height: 1;
  color: #000;
  text-shadow: 0 1px 0 #fff;
  opacity: 0.2;
  filter: alpha(opacity=20); }
  .close:hover, .close:focus {
    color: #000;
    text-decoration: none;
    cursor: pointer;
    opacity: 0.5;
    filter: alpha(opacity=50); }

button.close {
  padding: 0;
  cursor: pointer;
  background: transparent;
  border: 0;
  -webkit-appearance: none; }

.modal-open {
  overflow: hidden; }

.modal {
  display: none;
  overflow: hidden;
  position: fixed;
  top: 0;
  right: 0;
  bottom: 0;
  left: 0;
  z-index: 1050;
  -webkit-overflow-scrolling: touch;
  outline: 0; }
  .modal.fade .modal-dialog {
    transform: translate(0, -25%);
    transition: transform 0.3s ease-out; }
  .modal.in .modal-dialog {
    transform: translate(0, 0); }

.modal-open .modal {
  overflow-x: hidden;
  overflow-y: auto; }

.modal-dialog {
  position: relative;
  width: auto;
  margin: 10px; }

.modal-content {
  position: relative;
  background-color: #fff;
  border: 1px solid #999;
  border: 1px solid rgba(0, 0, 0, 0.2);
  border-radius: 6px;
  box-shadow: 0 3px 9px rgba(0, 0, 0, 0.5);
  background-clip: padding-box;
  outline: 0; }

.modal-backdrop {
  position: fixed;
  top: 0;
  right: 0;
  bottom: 0;
  left: 0;
  z-index: 1040;
  background-color: #000; }
  .modal-backdrop.fade {
    opacity: 0;
    filter: alpha(opacity=0); }
  .modal-backdrop.in {
    opacity: 0.5;
    filter: alpha(opacity=50); }

.modal-header {
  padding: 15px;
  border-bottom: 1px solid #e5e5e5; }
  .modal-header:before, .modal-header:after {
    content: " ";
    display: table; }
  .modal-header:after {
    clear: both; }

.modal-header .close {
  margin-top: -2px; }

.modal-title {
  margin: 0;
  line-height: 1.42857; }

.modal-body {
  position: relative;
  padding: 15px; }

.modal-footer {
  padding: 15px;
  text-align: right;
  border-top: 1px solid #e5e5e5; }
  .modal-footer:before, .modal-footer:after {
    content: " ";
    display: table; }
  .modal-footer:after {
    clear: both; }
  .modal-footer .btn + .btn {
    margin-left: 5px;
    margin-bottom: 0; }
  .modal-footer .btn-group .btn + .btn {
    margin-left: -1px; }
  .modal-footer .btn-block + .btn-block {
    margin-left: 0; }

.modal-scrollbar-measure {
  position: absolute;
  top: -9999px;
  width: 50px;
  height: 50px;
  overflow: scroll; }

@media (min-width: 768px) {
  .modal-dialog {
    width: 600px;
    margin: 30px auto; }
  .modal-content {
    box-shadow: 0 5px 15px rgba(0, 0, 0, 0.5); }
  .modal-sm {
    width: 300px; } }

@media (min-width: 992px) {
  .modal-lg {
    width: 900px; } }

.tooltip {
  position: absolute;
  z-index: 1070;
  display: block;
  font-family: "Helvetica Neue", Helvetica, Arial, sans-serif;
  font-style: normal;
  font-weight: normal;
  letter-spacing: normal;
  line-break: auto;
  line-height: 1.42857;
  text-align: left;
  text-align: start;
  text-decoration: none;
  text-shadow: none;
  text-transform: none;
  white-space: normal;
  word-break: normal;
  word-spacing: normal;
  word-wrap: normal;
  font-size: 12px;
  opacity: 0;
  filter: alpha(opacity=0); }
  .tooltip.in {
    opacity: 0.9;
    filter: alpha(opacity=90); }
  .tooltip.top {
    margin-top: -3px;
    padding: 5px 0; }
  .tooltip.right {
    margin-left: 3px;
    padding: 0 5px; }
  .tooltip.bottom {
    margin-top: 3px;
    padding: 5px 0; }
  .tooltip.left {
    margin-left: -3px;
    padding: 0 5px; }

.tooltip-inner {
  max-width: 200px;
  padding: 3px 8px;
  color: #fff;
  text-align: center;
  background-color: #000;
  border-radius: 4px; }

.tooltip-arrow {
  position: absolute;
  width: 0;
  height: 0;
  border-color: transparent;
  border-style: solid; }

.tooltip.top .tooltip-arrow {
  bottom: 0;
  left: 50%;
  margin-left: -5px;
  border-width: 5px 5px 0;
  border-top-color: #000; }

.tooltip.top-left .tooltip-arrow {
  bottom: 0;
  right: 5px;
  margin-bottom: -5px;
  border-width: 5px 5px 0;
  border-top-color: #000; }

.tooltip.top-right .tooltip-arrow {
  bottom: 0;
  left: 5px;
  margin-bottom: -5px;
  border-width: 5px 5px 0;
  border-top-color: #000; }

.tooltip.right .tooltip-arrow {
  top: 50%;
  left: 0;
  margin-top: -5px;
  border-width: 5px 5px 5px 0;
  border-right-color: #000; }

.tooltip.left .tooltip-arrow {
  top: 50%;
  right: 0;
  margin-top: -5px;
  border-width: 5px 0 5px 5px;
  border-left-color: #000; }

.tooltip.bottom .tooltip-arrow {
  top: 0;
  left: 50%;
  margin-left: -5px;
  border-width: 0 5px 5px;
  border-bottom-color: #000; }

.tooltip.bottom-left .tooltip-arrow {
  top: 0;
  right: 5px;
  margin-top: -5px;
  border-width: 0 5px 5px;
  border-bottom-color: #000; }

.tooltip.bottom-right .tooltip-arrow {
  top: 0;
  left: 5px;
  margin-top: -5px;
  border-width: 0 5px 5px;
  border-bottom-color: #000; }

.popover {
  position: absolute;
  top: 0;
  left: 0;
  z-index: 1060;
  display: none;
  max-width: 276px;
  padding: 1px;
  font-family: "Helvetica Neue", Helvetica, Arial, sans-serif;
  font-style: normal;
  font-weight: normal;
  letter-spacing: normal;
  line-break: auto;
  line-height: 1.42857;
  text-align: left;
  text-align: start;
  text-decoration: none;
  text-shadow: none;
  text-transform: none;
  white-space: normal;
  word-break: normal;
  word-spacing: normal;
  word-wrap: normal;
  font-size: 14px;
  background-color: #fff;
  background-clip: padding-box;
  border: 1px solid #ccc;
  border: 1px solid rgba(0, 0, 0, 0.2);
  border-radius: 6px;
  box-shadow: 0 5px 10px rgba(0, 0, 0, 0.2); }
  .popover.top {
    margin-top: -10px; }
  .popover.right {
    margin-left: 10px; }
  .popover.bottom {
    margin-top: 10px; }
  .popover.left {
    margin-left: -10px; }

.popover-title {
  margin: 0;
  padding: 8px 14px;
  font-size: 14px;
  background-color: #f7f7f7;
  border-bottom: 1px solid #ebebeb;
  border-radius: 5px 5px 0 0; }

.popover-content {
  padding: 9px 14px; }

.popover > .arrow, .popover > .arrow:after {
  position: absolute;
  display: block;
  width: 0;
  height: 0;
  border-color: transparent;
  border-style: solid; }

.popover > .arrow {
  border-width: 11px; }

.popover > .arrow:after {
  border-width: 10px;
  content: ""; }

.popover.top > .arrow {
  left: 50%;
  margin-left: -11px;
  border-bottom-width: 0;
  border-top-color: #999999;
  border-top-color: rgba(0, 0, 0, 0.25);
  bottom: -11px; }
  .popover.top > .arrow:after {
    content: " ";
    bottom: 1px;
    margin-left: -10px;
    border-bottom-width: 0;
    border-top-color: #fff; }

.popover.right > .arrow {
  top: 50%;
  left: -11px;
  margin-top: -11px;
  border-left-width: 0;
  border-right-color: #999999;
  border-right-color: rgba(0, 0, 0, 0.25); }
  .popover.right > .arrow:after {
    content: " ";
    left: 1px;
    bottom: -10px;
    border-left-width: 0;
    border-right-color: #fff; }

.popover.bottom > .arrow {
  left: 50%;
  margin-left: -11px;
  border-top-width: 0;
  border-bottom-color: #999999;
  border-bottom-color: rgba(0, 0, 0, 0.25);
  top: -11px; }
  .popover.bottom > .arrow:after {
    content: " ";
    top: 1px;
    margin-left: -10px;
    border-top-width: 0;
    border-bottom-color: #fff; }

.popover.left > .arrow {
  top: 50%;
  right: -11px;
  margin-top: -11px;
  border-right-width: 0;
  border-left-color: #999999;
  border-left-color: rgba(0, 0, 0, 0.25); }
  .popover.left > .arrow:after {
    content: " ";
    right: 1px;
    border-right-width: 0;
    border-left-color: #fff;
    bottom: -10px; }

.carousel {
  position: relative; }

.carousel-inner {
  position: relative;
  overflow: hidden;
  width: 100%; }
  .carousel-inner > .item {
    display: none;
    position: relative;
    transition: 0.6s ease-in-out left; }
    .carousel-inner > .item > img,
    .carousel-inner > .item > a > img {
      display: block;
      max-width: 100%;
      height: auto;
      line-height: 1; }
    @media all and (transform-3d), (-webkit-transform-3d) {
      .carousel-inner > .item {
        transition: transform 0.6s ease-in-out;
        -webkit-backface-visibility: hidden;
        backface-visibility: hidden;
        perspective: 1000px; }
        .carousel-inner > .item.next, .carousel-inner > .item.active.right {
          transform: translate3d(100%, 0, 0);
          left: 0; }
        .carousel-inner > .item.prev, .carousel-inner > .item.active.left {
          transform: translate3d(-100%, 0, 0);
          left: 0; }
        .carousel-inner > .item.next.left, .carousel-inner > .item.prev.right, .carousel-inner > .item.active {
          transform: translate3d(0, 0, 0);
          left: 0; } }
  .carousel-inner > .active,
  .carousel-inner > .next,
  .carousel-inner > .prev {
    display: block; }
  .carousel-inner > .active {
    left: 0; }
  .carousel-inner > .next,
  .carousel-inner > .prev {
    position: absolute;
    top: 0;
    width: 100%; }
  .carousel-inner > .next {
    left: 100%; }
  .carousel-inner > .prev {
    left: -100%; }
  .carousel-inner > .next.left,
  .carousel-inner > .prev.right {
    left: 0; }
  .carousel-inner > .active.left {
    left: -100%; }
  .carousel-inner > .active.right {
    left: 100%; }

.carousel-control {
  position: absolute;
  top: 0;
  left: 0;
  bottom: 0;
  width: 15%;
  opacity: 0.5;
  filter: alpha(opacity=50);
  font-size: 20px;
  color: #fff;
  text-align: center;
  text-shadow: 0 1px 2px rgba(0, 0, 0, 0.6);
  background-color: transparent; }
  .carousel-control.left {
    background-image: linear-gradient(to right, rgba(0, 0, 0, 0.5) 0%, rgba(0, 0, 0, 0.0001) 100%);
    background-repeat: repeat-x;
    filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#80000000', endColorstr='#00000000', GradientType=1); }
  .carousel-control.right {
    left: auto;
    right: 0;
    background-image: linear-gradient(to right, rgba(0, 0, 0, 0.0001) 0%, rgba(0, 0, 0, 0.5) 100%);
    background-repeat: repeat-x;
    filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#00000000', endColorstr='#80000000', GradientType=1); }
  .carousel-control:hover, .carousel-control:focus {
    outline: 0;
    color: #fff;
    text-decoration: none;
    opacity: 0.9;
    filter: alpha(opacity=90); }
  .carousel-control .icon-prev,
  .carousel-control .icon-next,
  .carousel-control .glyphicon-chevron-left,
  .carousel-control .glyphicon-chevron-right {
    position: absolute;
    top: 50%;
    margin-top: -10px;
    z-index: 5;
    display: inline-block; }
  .carousel-control .icon-prev,
  .carousel-control .glyphicon-chevron-left {
    left: 50%;
    margin-left: -10px; }
  .carousel-control .icon-next,
  .carousel-control .glyphicon-chevron-right {
    right: 50%;
    margin-right: -10px; }
  .carousel-control .icon-prev,
  .carousel-control .icon-next {
    width: 20px;
    height: 20px;
    line-height: 1;
    font-family: serif; }
  .carousel-control .icon-prev:before {
    content: '\2039'; }
  .carousel-control .icon-next:before {
    content: '\203a'; }

.carousel-indicators {
  position: absolute;
  bottom: 10px;
  left: 50%;
  z-index: 15;
  width: 60%;
  margin-left: -30%;
  padding-left: 0;
  list-style: none;
  text-align: center; }
  .carousel-indicators li {
    display: inline-block;
    width: 10px;
    height: 10px;
    margin: 1px;
    text-indent: -999px;
    border: 1px solid #fff;
    border-radius: 10px;
    cursor: pointer;
    background-color: #000 \9;
    background-color: transparent; }
  .carousel-indicators .active {
    margin: 0;
    width: 12px;
    height: 12px;
    background-color: #fff; }

.carousel-caption {
  position: absolute;
  left: 15%;
  right: 15%;
  bottom: 20px;
  z-index: 10;
  padding-top: 20px;
  padding-bottom: 20px;
  color: #fff;
  text-align: center;
  text-shadow: 0 1px 2px rgba(0, 0, 0, 0.6); }
  .carousel-caption .btn {
    text-shadow: none; }

@media screen and (min-width: 768px) {
  .carousel-control .glyphicon-chevron-left,
  .carousel-control .glyphicon-chevron-right,
  .carousel-control .icon-prev,
  .carousel-control .icon-next {
    width: 30px;
    height: 30px;
    margin-top: -10px;
    font-size: 30px; }
  .carousel-control .glyphicon-chevron-left,
  .carousel-control .icon-prev {
    margin-left: -10px; }
  .carousel-control .glyphicon-chevron-right,
  .carousel-control .icon-next {
    margin-right: -10px; }
  .carousel-caption {
    left: 20%;
    right: 20%;
    padding-bottom: 30px; }
  .carousel-indicators {
    bottom: 20px; } }

.clearfix:before, .clearfix:after {
  content: " ";
  display: table; }

.clearfix:after {
  clear: both; }

.center-block {
  display: block;
  margin-left: auto;
  margin-right: auto; }

.pull-right {
  float: right !important; }

.pull-left {
  float: left !important; }

.hide {
  display: none !important; }

.show {
  display: block !important; }

.invisible {
  visibility: hidden; }

.text-hide {
  font: 0/0 a;
  color: transparent;
  text-shadow: none;
  background-color: transparent;
  border: 0; }

.hidden {
  display: none !important; }

.affix {
  position: fixed; }

@-ms-viewport {
  width: device-width; }

.visible-xs {
  display: none !important; }

.visible-sm {
  display: none !important; }

.visible-md {
  display: none !important; }

.visible-lg {
  display: none !important; }

.visible-xs-block,
.visible-xs-inline,
.visible-xs-inline-block,
.visible-sm-block,
.visible-sm-inline,
.visible-sm-inline-block,
.visible-md-block,
.visible-md-inline,
.visible-md-inline-block,
.visible-lg-block,
.visible-lg-inline,
.visible-lg-inline-block {
  display: none !important; }

@media (max-width: 767px) {
  .visible-xs {
    display: block !important; }
  table.visible-xs {
    display: table !important; }
  tr.visible-xs {
    display: table-row !important; }
  th.visible-xs,
  td.visible-xs {
    display: table-cell !important; } }

@media (max-width: 767px) {
  .visible-xs-block {
    display: block !important; } }

@media (max-width: 767px) {
  .visible-xs-inline {
    display: inline !important; } }

@media (max-width: 767px) {
  .visible-xs-inline-block {
    display: inline-block !important; } }

@media (min-width: 768px) and (max-width: 991px) {
  .visible-sm {
    display: block !important; }
  table.visible-sm {
    display: table !important; }
  tr.visible-sm {
    display: table-row !important; }
  th.visible-sm,
  td.visible-sm {
    display: table-cell !important; } }

@media (min-width: 768px) and (max-width: 991px) {
  .visible-sm-block {
    display: block !important; } }

@media (min-width: 768px) and (max-width: 991px) {
  .visible-sm-inline {
    display: inline !important; } }

@media (min-width: 768px) and (max-width: 991px) {
  .visible-sm-inline-block {
    display: inline-block !important; } }

@media (min-width: 992px) and (max-width: 1199px) {
  .visible-md {
    display: block !important; }
  table.visible-md {
    display: table !important; }
  tr.visible-md {
    display: table-row !important; }
  th.visible-md,
  td.visible-md {
    display: table-cell !important; } }

@media (min-width: 992px) and (max-width: 1199px) {
  .visible-md-block {
    display: block !important; } }

@media (min-width: 992px) and (max-width: 1199px) {
  .visible-md-inline {
    display: inline !important; } }

@media (min-width: 992px) and (max-width: 1199px) {
  .visible-md-inline-block {
    display: inline-block !important; } }

@media (min-width: 1200px) {
  .visible-lg {
    display: block !important; }
  table.visible-lg {
    display: table !important; }
  tr.visible-lg {
    display: table-row !important; }
  th.visible-lg,
  td.visible-lg {
    display: table-cell !important; } }

@media (min-width: 1200px) {
  .visible-lg-block {
    display: block !important; } }

@media (min-width: 1200px) {
  .visible-lg-inline {
    display: inline !important; } }

@media (min-width: 1200px) {
  .visible-lg-inline-block {
    display: inline-block !important; } }

@media (max-width: 767px) {
  .hidden-xs {
    display: none !important; } }

@media (min-width: 768px) and (max-width: 991px) {
  .hidden-sm {
    display: none !important; } }

@media (min-width: 992px) and (max-width: 1199px) {
  .hidden-md {
    display: none !important; } }

@media (min-width: 1200px) {
  .hidden-lg {
    display: none !important; } }

.visible-print {
  display: none !important; }

@media print {
  .visible-print {
    display: block !important; }
  table.visible-print {
    display: table !important; }
  tr.visible-print {
    display: table-row !important; }
  th.visible-print,
  td.visible-print {
    display: table-cell !important; } }

.visible-print-block {
  display: none !important; }
  @media print {
    .visible-print-block {
      display: block !important; } }

.visible-print-inline {
  display: none !important; }
  @media print {
    .visible-print-inline {
      display: inline !important; } }

.visible-print-inline-block {
  display: none !important; }
  @media print {
    .visible-print-inline-block {
      display: inline-block !important; } }

@media print {
  .hidden-print {
    display: none !important; } }

/*

To get this list of colors inject jQuery at http://www.google.com/design/spec/style/color.html#color-color-palette

Then, run this script to get the list@mixin (function(){
  var colors = {}, main = {};
  $(".color-group")@mixin each(function(){
    var color = $(this).find(".name").text().trim().toLowerCase().replace(" ", "-");
    colors[color] = {};

    $(this)@mixin find(".color").not(".main-color").each(function(){
      var shade = $(this).find(".shade").text().trim(),
          hex   = $(this).find(".hex").text().trim();

      colors[color][shade] = hex;
    });
    main[color] = color + "-" + $(this).find(".main-color .shade").text().trim();

  });
  var LESS = "";
  $@mixin each(colors, function(name, shades){
    LESS += "\n\n";
    $@mixin each(shades, function(shade, hex){
      LESS += "$" + name + "-" + shade + ": " + hex + ";\n" !default;
    });
    if (main[name]) {
      LESS += "$" + name + ": " + main[name] + ";\n" !default;
    }
  });
  console.log(LESS);
})();


*/
/* ANIMATION */
/* SHADOWS */
/* Shadows (from mdl http://www.getmdl.io/) */
body {
  background-color: #fff; }
  body.inverse {
    background: #333333; }
    body.inverse, body.inverse .form-control {
      color: rgba(255,255,255, 0.84); }
    body.inverse .modal,
    body.inverse .modal .form-control,
    body.inverse .panel-default,
    body.inverse .panel-default .form-control,
    body.inverse .card,
    body.inverse .card .form-control {
      background-color: initial;
      color: initial; }

body, h1, h2, h3, h4, h5, h6, .h1, .h2, .h3, .h4 {
  font-family: "Helvetica Neue", Helvetica, Arial, sans-serif;
  font-weight: 300; }

h5, h6 {
  font-weight: 400; }

a, a:hover, a:focus {
  color: #337ab7; }
  a .material-icons, a:hover .material-icons, a:focus .material-icons {
    vertical-align: middle; }

.form-horizontal .radio,
.form-horizontal .checkbox,
.form-horizontal .radio-inline,
.form-horizontal .checkbox-inline {
  padding-top: 0; }

.form-horizontal .radio {
  margin-bottom: 10px; }

.form-horizontal label {
  text-align: right; }

.form-horizontal label.control-label {
  margin: 0; }

body .container .well.well-sm,
body .container-fluid .well.well-sm {
  padding: 10px; }

body .container .well.well-lg,
body .container-fluid .well.well-lg {
  padding: 26px; }

body .container .well,
body .container .jumbotron,
body .container-fluid .well,
body .container-fluid .jumbotron {
  background-color: #fff;
  padding: 19px;
  margin-bottom: 20px;
  box-shadow: 0 8px 17px 0 rgba(0, 0, 0, 0.2), 0 6px 20px 0 rgba(0, 0, 0, 0.19);
  border-radius: 4px;
  border: 0; }
  body .container .well p,
  body .container .jumbotron p,
  body .container-fluid .well p,
  body .container-fluid .jumbotron p {
    font-weight: 300; }
  body .container .well, body .container .well-default,
  body .container .jumbotron,
  body .container .jumbotron-default,
  body .container-fluid .well,
  body .container-fluid .well-default,
  body .container-fluid .jumbotron,
  body .container-fluid .jumbotron-default {
    background-color: #ffffff; }
  body .container .well-inverse,
  body .container .jumbotron-inverse,
  body .container-fluid .well-inverse,
  body .container-fluid .jumbotron-inverse {
    background-color: #3f51b5; }
  body .container .well-primary,
  body .container .jumbotron-primary,
  body .container-fluid .well-primary,
  body .container-fluid .jumbotron-primary {
    background-color: #337ab7; }
  body .container .well-success,
  body .container .jumbotron-success,
  body .container-fluid .well-success,
  body .container-fluid .jumbotron-success {
    background-color: #5cb85c; }
  body .container .well-info,
  body .container .jumbotron-info,
  body .container-fluid .well-info,
  body .container-fluid .jumbotron-info {
    background-color: #5bc0de; }
  body .container .well-warning,
  body .container .jumbotron-warning,
  body .container-fluid .well-warning,
  body .container-fluid .jumbotron-warning {
    background-color: #f0ad4e; }
  body .container .well-danger,
  body .container .jumbotron-danger,
  body .container-fluid .well-danger,
  body .container-fluid .jumbotron-danger {
    background-color: #d9534f; }

.btn,
.input-group-btn .btn {
  border: none;
  border-radius: 4px;
  position: relative;
  padding: 8px 30px;
  margin: 10px 1px;
  font-size: 14px;
  font-weight: 500;
  text-transform: uppercase;
  letter-spacing: 0;
  will-change: box-shadow, transform;
  transition: box-shadow 0.2s cubic-bezier(0.4, 0, 1, 1), background-color 0.2s cubic-bezier(0.4, 0, 0.2, 1), color 0.2s cubic-bezier(0.4, 0, 0.2, 1);
  outline: 0;
  cursor: pointer;
  text-decoration: none;
  background: transparent; }
  .btn::-moz-focus-inner,
  .input-group-btn .btn::-moz-focus-inner {
    border: 0; }
  .btn:not(.btn-raised),
  .input-group-btn .btn:not(.btn-raised) {
    box-shadow: none; }
    .btn:not(.btn-raised), .btn:not(.btn-raised).btn-default,
    .input-group-btn .btn:not(.btn-raised),
    .input-group-btn .btn:not(.btn-raised).btn-default {
      color: rgba(0,0,0, 0.87); }
    .btn:not(.btn-raised).btn-inverse,
    .input-group-btn .btn:not(.btn-raised).btn-inverse {
      color: #3f51b5; }
    .btn:not(.btn-raised).btn-primary,
    .input-group-btn .btn:not(.btn-raised).btn-primary {
      color: #337ab7; }
    .btn:not(.btn-raised).btn-success,
    .input-group-btn .btn:not(.btn-raised).btn-success {
      color: #5cb85c; }
    .btn:not(.btn-raised).btn-info,
    .input-group-btn .btn:not(.btn-raised).btn-info {
      color: #5bc0de; }
    .btn:not(.btn-raised).btn-warning,
    .input-group-btn .btn:not(.btn-raised).btn-warning {
      color: #f0ad4e; }
    .btn:not(.btn-raised).btn-danger,
    .input-group-btn .btn:not(.btn-raised).btn-danger {
      color: #d9534f; }
    .btn:not(.btn-raised):not(.btn-link):hover, .btn:not(.btn-raised):not(.btn-link):focus,
    .input-group-btn .btn:not(.btn-raised):not(.btn-link):hover,
    .input-group-btn .btn:not(.btn-raised):not(.btn-link):focus {
      background-color: rgba(153, 153, 153, 0.2); }
      .theme-dark .btn:not(.btn-raised):not(.btn-link):hover, .theme-dark .btn:not(.btn-raised):not(.btn-link):focus, .theme-dark
      .input-group-btn .btn:not(.btn-raised):not(.btn-link):hover, .theme-dark
      .input-group-btn .btn:not(.btn-raised):not(.btn-link):focus {
        background-color: rgba(204, 204, 204, 0.15); }
  .btn.btn-raised, .btn.btn-raised.btn-default, .btn.btn-fab, .btn.btn-fab.btn-default,
  .btn-group-raised .btn,
  .btn-group-raised .btn.btn-default,
  .input-group-btn .btn.btn-raised,
  .input-group-btn .btn.btn-raised.btn-default,
  .input-group-btn .btn.btn-fab,
  .input-group-btn .btn.btn-fab.btn-default,
  .btn-group-raised
  .input-group-btn .btn,
  .btn-group-raised
  .input-group-btn .btn.btn-default {
    background-color: #fff;
    color: rgba(0,0,0, 0.87); }
  .btn.btn-raised.btn-inverse, .btn.btn-fab.btn-inverse,
  .btn-group-raised .btn.btn-inverse,
  .input-group-btn .btn.btn-raised.btn-inverse,
  .input-group-btn .btn.btn-fab.btn-inverse,
  .btn-group-raised
  .input-group-btn .btn.btn-inverse {
    background-color: #3f51b5;
    color: #ffffff; }
  .btn.btn-raised.btn-primary, .btn.btn-fab.btn-primary,
  .btn-group-raised .btn.btn-primary,
  .input-group-btn .btn.btn-raised.btn-primary,
  .input-group-btn .btn.btn-fab.btn-primary,
  .btn-group-raised
  .input-group-btn .btn.btn-primary {
    background-color: #337ab7;
    color: rgba(255,255,255, 0.84); }
  .btn.btn-raised.btn-success, .btn.btn-fab.btn-success,
  .btn-group-raised .btn.btn-success,
  .input-group-btn .btn.btn-raised.btn-success,
  .input-group-btn .btn.btn-fab.btn-success,
  .btn-group-raised
  .input-group-btn .btn.btn-success {
    background-color: #5cb85c;
    color: rgba(255,255,255, 0.84); }
  .btn.btn-raised.btn-info, .btn.btn-fab.btn-info,
  .btn-group-raised .btn.btn-info,
  .input-group-btn .btn.btn-raised.btn-info,
  .input-group-btn .btn.btn-fab.btn-info,
  .btn-group-raised
  .input-group-btn .btn.btn-info {
    background-color: #5bc0de;
    color: rgba(255,255,255, 0.84); }
  .btn.btn-raised.btn-warning, .btn.btn-fab.btn-warning,
  .btn-group-raised .btn.btn-warning,
  .input-group-btn .btn.btn-raised.btn-warning,
  .input-group-btn .btn.btn-fab.btn-warning,
  .btn-group-raised
  .input-group-btn .btn.btn-warning {
    background-color: #f0ad4e;
    color: rgba(255,255,255, 0.84); }
  .btn.btn-raised.btn-danger, .btn.btn-fab.btn-danger,
  .btn-group-raised .btn.btn-danger,
  .input-group-btn .btn.btn-raised.btn-danger,
  .input-group-btn .btn.btn-fab.btn-danger,
  .btn-group-raised
  .input-group-btn .btn.btn-danger {
    background-color: #d9534f;
    color: rgba(255,255,255, 0.84); }
  .btn.btn-raised:not(.btn-link),
  .btn-group-raised .btn:not(.btn-link),
  .input-group-btn .btn.btn-raised:not(.btn-link),
  .btn-group-raised
  .input-group-btn .btn:not(.btn-link) {
    box-shadow: 0 2px 2px 0 rgba(0, 0, 0, 0.14), 0 3px 1px -2px rgba(0, 0, 0, 0.2), 0 1px 5px 0 rgba(0, 0, 0, 0.12); }
    .btn.btn-raised:not(.btn-link):hover, .btn.btn-raised:not(.btn-link):focus, .btn.btn-raised:not(.btn-link).active, .btn.btn-raised:not(.btn-link):active,
    .btn-group-raised .btn:not(.btn-link):hover,
    .btn-group-raised .btn:not(.btn-link):focus,
    .btn-group-raised .btn:not(.btn-link).active,
    .btn-group-raised .btn:not(.btn-link):active,
    .input-group-btn .btn.btn-raised:not(.btn-link):hover,
    .input-group-btn .btn.btn-raised:not(.btn-link):focus,
    .input-group-btn .btn.btn-raised:not(.btn-link).active,
    .input-group-btn .btn.btn-raised:not(.btn-link):active,
    .btn-group-raised
    .input-group-btn .btn:not(.btn-link):hover,
    .btn-group-raised
    .input-group-btn .btn:not(.btn-link):focus,
    .btn-group-raised
    .input-group-btn .btn:not(.btn-link).active,
    .btn-group-raised
    .input-group-btn .btn:not(.btn-link):active {
      outline: 0; }
      .btn.btn-raised:not(.btn-link):hover, .btn.btn-raised:not(.btn-link):hover.btn-default, .btn.btn-raised:not(.btn-link):focus, .btn.btn-raised:not(.btn-link):focus.btn-default, .btn.btn-raised:not(.btn-link).active, .btn.btn-raised:not(.btn-link).active.btn-default, .btn.btn-raised:not(.btn-link):active, .btn.btn-raised:not(.btn-link):active.btn-default,
      .btn-group-raised .btn:not(.btn-link):hover,
      .btn-group-raised .btn:not(.btn-link):hover.btn-default,
      .btn-group-raised .btn:not(.btn-link):focus,
      .btn-group-raised .btn:not(.btn-link):focus.btn-default,
      .btn-group-raised .btn:not(.btn-link).active,
      .btn-group-raised .btn:not(.btn-link).active.btn-default,
      .btn-group-raised .btn:not(.btn-link):active,
      .btn-group-raised .btn:not(.btn-link):active.btn-default,
      .input-group-btn .btn.btn-raised:not(.btn-link):hover,
      .input-group-btn .btn.btn-raised:not(.btn-link):hover.btn-default,
      .input-group-btn .btn.btn-raised:not(.btn-link):focus,
      .input-group-btn .btn.btn-raised:not(.btn-link):focus.btn-default,
      .input-group-btn .btn.btn-raised:not(.btn-link).active,
      .input-group-btn .btn.btn-raised:not(.btn-link).active.btn-default,
      .input-group-btn .btn.btn-raised:not(.btn-link):active,
      .input-group-btn .btn.btn-raised:not(.btn-link):active.btn-default,
      .btn-group-raised
      .input-group-btn .btn:not(.btn-link):hover,
      .btn-group-raised
      .input-group-btn .btn:not(.btn-link):hover.btn-default,
      .btn-group-raised
      .input-group-btn .btn:not(.btn-link):focus,
      .btn-group-raised
      .input-group-btn .btn:not(.btn-link):focus.btn-default,
      .btn-group-raised
      .input-group-btn .btn:not(.btn-link).active,
      .btn-group-raised
      .input-group-btn .btn:not(.btn-link).active.btn-default,
      .btn-group-raised
      .input-group-btn .btn:not(.btn-link):active,
      .btn-group-raised
      .input-group-btn .btn:not(.btn-link):active.btn-default {
        background-color: whitesmoke; }
      .btn.btn-raised:not(.btn-link):hover.btn-inverse, .btn.btn-raised:not(.btn-link):focus.btn-inverse, .btn.btn-raised:not(.btn-link).active.btn-inverse, .btn.btn-raised:not(.btn-link):active.btn-inverse,
      .btn-group-raised .btn:not(.btn-link):hover.btn-inverse,
      .btn-group-raised .btn:not(.btn-link):focus.btn-inverse,
      .btn-group-raised .btn:not(.btn-link).active.btn-inverse,
      .btn-group-raised .btn:not(.btn-link):active.btn-inverse,
      .input-group-btn .btn.btn-raised:not(.btn-link):hover.btn-inverse,
      .input-group-btn .btn.btn-raised:not(.btn-link):focus.btn-inverse,
      .input-group-btn .btn.btn-raised:not(.btn-link).active.btn-inverse,
      .input-group-btn .btn.btn-raised:not(.btn-link):active.btn-inverse,
      .btn-group-raised
      .input-group-btn .btn:not(.btn-link):hover.btn-inverse,
      .btn-group-raised
      .input-group-btn .btn:not(.btn-link):focus.btn-inverse,
      .btn-group-raised
      .input-group-btn .btn:not(.btn-link).active.btn-inverse,
      .btn-group-raised
      .input-group-btn .btn:not(.btn-link):active.btn-inverse {
        background-color: #495bc0; }
      .btn.btn-raised:not(.btn-link):hover.btn-primary, .btn.btn-raised:not(.btn-link):focus.btn-primary, .btn.btn-raised:not(.btn-link).active.btn-primary, .btn.btn-raised:not(.btn-link):active.btn-primary,
      .btn-group-raised .btn:not(.btn-link):hover.btn-primary,
      .btn-group-raised .btn:not(.btn-link):focus.btn-primary,
      .btn-group-raised .btn:not(.btn-link).active.btn-primary,
      .btn-group-raised .btn:not(.btn-link):active.btn-primary,
      .input-group-btn .btn.btn-raised:not(.btn-link):hover.btn-primary,
      .input-group-btn .btn.btn-raised:not(.btn-link):focus.btn-primary,
      .input-group-btn .btn.btn-raised:not(.btn-link).active.btn-primary,
      .input-group-btn .btn.btn-raised:not(.btn-link):active.btn-primary,
      .btn-group-raised
      .input-group-btn .btn:not(.btn-link):hover.btn-primary,
      .btn-group-raised
      .input-group-btn .btn:not(.btn-link):focus.btn-primary,
      .btn-group-raised
      .input-group-btn .btn:not(.btn-link).active.btn-primary,
      .btn-group-raised
      .input-group-btn .btn:not(.btn-link):active.btn-primary {
        background-color: #3885c7; }
      .btn.btn-raised:not(.btn-link):hover.btn-success, .btn.btn-raised:not(.btn-link):focus.btn-success, .btn.btn-raised:not(.btn-link).active.btn-success, .btn.btn-raised:not(.btn-link):active.btn-success,
      .btn-group-raised .btn:not(.btn-link):hover.btn-success,
      .btn-group-raised .btn:not(.btn-link):focus.btn-success,
      .btn-group-raised .btn:not(.btn-link).active.btn-success,
      .btn-group-raised .btn:not(.btn-link):active.btn-success,
      .input-group-btn .btn.btn-raised:not(.btn-link):hover.btn-success,
      .input-group-btn .btn.btn-raised:not(.btn-link):focus.btn-success,
      .input-group-btn .btn.btn-raised:not(.btn-link).active.btn-success,
      .input-group-btn .btn.btn-raised:not(.btn-link):active.btn-success,
      .btn-group-raised
      .input-group-btn .btn:not(.btn-link):hover.btn-success,
      .btn-group-raised
      .input-group-btn .btn:not(.btn-link):focus.btn-success,
      .btn-group-raised
      .input-group-btn .btn:not(.btn-link).active.btn-success,
      .btn-group-raised
      .input-group-btn .btn:not(.btn-link):active.btn-success {
        background-color: #4eb24e; }
      .btn.btn-raised:not(.btn-link):hover.btn-info, .btn.btn-raised:not(.btn-link):focus.btn-info, .btn.btn-raised:not(.btn-link).active.btn-info, .btn.btn-raised:not(.btn-link):active.btn-info,
      .btn-group-raised .btn:not(.btn-link):hover.btn-info,
      .btn-group-raised .btn:not(.btn-link):focus.btn-info,
      .btn-group-raised .btn:not(.btn-link).active.btn-info,
      .btn-group-raised .btn:not(.btn-link):active.btn-info,
      .input-group-btn .btn.btn-raised:not(.btn-link):hover.btn-info,
      .input-group-btn .btn.btn-raised:not(.btn-link):focus.btn-info,
      .input-group-btn .btn.btn-raised:not(.btn-link).active.btn-info,
      .input-group-btn .btn.btn-raised:not(.btn-link):active.btn-info,
      .btn-group-raised
      .input-group-btn .btn:not(.btn-link):hover.btn-info,
      .btn-group-raised
      .input-group-btn .btn:not(.btn-link):focus.btn-info,
      .btn-group-raised
      .input-group-btn .btn:not(.btn-link).active.btn-info,
      .btn-group-raised
      .input-group-btn .btn:not(.btn-link):active.btn-info {
        background-color: #6cc7e1; }
      .btn.btn-raised:not(.btn-link):hover.btn-warning, .btn.btn-raised:not(.btn-link):focus.btn-warning, .btn.btn-raised:not(.btn-link).active.btn-warning, .btn.btn-raised:not(.btn-link):active.btn-warning,
      .btn-group-raised .btn:not(.btn-link):hover.btn-warning,
      .btn-group-raised .btn:not(.btn-link):focus.btn-warning,
      .btn-group-raised .btn:not(.btn-link).active.btn-warning,
      .btn-group-raised .btn:not(.btn-link):active.btn-warning,
      .input-group-btn .btn.btn-raised:not(.btn-link):hover.btn-warning,
      .input-group-btn .btn.btn-raised:not(.btn-link):focus.btn-warning,
      .input-group-btn .btn.btn-raised:not(.btn-link).active.btn-warning,
      .input-group-btn .btn.btn-raised:not(.btn-link):active.btn-warning,
      .btn-group-raised
      .input-group-btn .btn:not(.btn-link):hover.btn-warning,
      .btn-group-raised
      .input-group-btn .btn:not(.btn-link):focus.btn-warning,
      .btn-group-raised
      .input-group-btn .btn:not(.btn-link).active.btn-warning,
      .btn-group-raised
      .input-group-btn .btn:not(.btn-link):active.btn-warning {
        background-color: #f2b661; }
      .btn.btn-raised:not(.btn-link):hover.btn-danger, .btn.btn-raised:not(.btn-link):focus.btn-danger, .btn.btn-raised:not(.btn-link).active.btn-danger, .btn.btn-raised:not(.btn-link):active.btn-danger,
      .btn-group-raised .btn:not(.btn-link):hover.btn-danger,
      .btn-group-raised .btn:not(.btn-link):focus.btn-danger,
      .btn-group-raised .btn:not(.btn-link).active.btn-danger,
      .btn-group-raised .btn:not(.btn-link):active.btn-danger,
      .input-group-btn .btn.btn-raised:not(.btn-link):hover.btn-danger,
      .input-group-btn .btn.btn-raised:not(.btn-link):focus.btn-danger,
      .input-group-btn .btn.btn-raised:not(.btn-link).active.btn-danger,
      .input-group-btn .btn.btn-raised:not(.btn-link):active.btn-danger,
      .btn-group-raised
      .input-group-btn .btn:not(.btn-link):hover.btn-danger,
      .btn-group-raised
      .input-group-btn .btn:not(.btn-link):focus.btn-danger,
      .btn-group-raised
      .input-group-btn .btn:not(.btn-link).active.btn-danger,
      .btn-group-raised
      .input-group-btn .btn:not(.btn-link):active.btn-danger {
        background-color: #d5433e; }
    .btn.btn-raised:not(.btn-link).active, .btn.btn-raised:not(.btn-link).active:hover, .btn.btn-raised:not(.btn-link):active, .btn.btn-raised:not(.btn-link):active:hover,
    .btn-group-raised .btn:not(.btn-link).active,
    .btn-group-raised .btn:not(.btn-link).active:hover,
    .btn-group-raised .btn:not(.btn-link):active,
    .btn-group-raised .btn:not(.btn-link):active:hover,
    .input-group-btn .btn.btn-raised:not(.btn-link).active,
    .input-group-btn .btn.btn-raised:not(.btn-link).active:hover,
    .input-group-btn .btn.btn-raised:not(.btn-link):active,
    .input-group-btn .btn.btn-raised:not(.btn-link):active:hover,
    .btn-group-raised
    .input-group-btn .btn:not(.btn-link).active,
    .btn-group-raised
    .input-group-btn .btn:not(.btn-link).active:hover,
    .btn-group-raised
    .input-group-btn .btn:not(.btn-link):active,
    .btn-group-raised
    .input-group-btn .btn:not(.btn-link):active:hover {
      box-shadow: 0 4px 5px 0 rgba(0, 0, 0, 0.14), 0 1px 10px 0 rgba(0, 0, 0, 0.12), 0 2px 4px -1px rgba(0, 0, 0, 0.2); }
    .btn.btn-raised:not(.btn-link):focus, .btn.btn-raised:not(.btn-link):focus:hover, .btn.btn-raised:not(.btn-link):focus.active, .btn.btn-raised:not(.btn-link):focus.active:hover, .btn.btn-raised:not(.btn-link):focus:active, .btn.btn-raised:not(.btn-link):focus:active:hover,
    .btn-group-raised .btn:not(.btn-link):focus,
    .btn-group-raised .btn:not(.btn-link):focus:hover,
    .btn-group-raised .btn:not(.btn-link):focus.active,
    .btn-group-raised .btn:not(.btn-link):focus.active:hover,
    .btn-group-raised .btn:not(.btn-link):focus:active,
    .btn-group-raised .btn:not(.btn-link):focus:active:hover,
    .input-group-btn .btn.btn-raised:not(.btn-link):focus,
    .input-group-btn .btn.btn-raised:not(.btn-link):focus:hover,
    .input-group-btn .btn.btn-raised:not(.btn-link):focus.active,
    .input-group-btn .btn.btn-raised:not(.btn-link):focus.active:hover,
    .input-group-btn .btn.btn-raised:not(.btn-link):focus:active,
    .input-group-btn .btn.btn-raised:not(.btn-link):focus:active:hover,
    .btn-group-raised
    .input-group-btn .btn:not(.btn-link):focus,
    .btn-group-raised
    .input-group-btn .btn:not(.btn-link):focus:hover,
    .btn-group-raised
    .input-group-btn .btn:not(.btn-link):focus.active,
    .btn-group-raised
    .input-group-btn .btn:not(.btn-link):focus.active:hover,
    .btn-group-raised
    .input-group-btn .btn:not(.btn-link):focus:active,
    .btn-group-raised
    .input-group-btn .btn:not(.btn-link):focus:active:hover {
      box-shadow: 0 0 8px rgba(0, 0, 0, 0.18), 0 8px 16px rgba(0, 0, 0, 0.36); }
  .btn.btn-fab,
  .input-group-btn .btn.btn-fab {
    border-radius: 50%;
    font-size: 24px;
    height: 56px;
    margin: auto;
    min-width: 56px;
    width: 56px;
    padding: 0;
    overflow: hidden;
    box-shadow: 0 1px 1.5px 0 rgba(0, 0, 0, 0.12), 0 1px 1px 0 rgba(0, 0, 0, 0.24);
    position: relative;
    line-height: normal; }
    .btn.btn-fab .ripple-container,
    .input-group-btn .btn.btn-fab .ripple-container {
      border-radius: 50%; }
    .btn.btn-fab.btn-fab-mini,
    .btn-group-sm .btn.btn-fab,
    .input-group-btn .btn.btn-fab.btn-fab-mini,
    .btn-group-sm
    .input-group-btn .btn.btn-fab {
      height: 40px;
      min-width: 40px;
      width: 40px; }
      .btn.btn-fab.btn-fab-mini.material-icons,
      .btn-group-sm .btn.btn-fab.material-icons,
      .input-group-btn .btn.btn-fab.btn-fab-mini.material-icons,
      .btn-group-sm
      .input-group-btn .btn.btn-fab.material-icons {
        top: 0px;
        left: 0px; }
    .btn.btn-fab i.material-icons,
    .input-group-btn .btn.btn-fab i.material-icons {
      position: absolute;
      top: 50%;
      left: 50%;
      transform: translate(-12px, -12px);
      line-height: 24px;
      width: 24px; }
  .btn i.material-icons,
  .input-group-btn .btn i.material-icons {
    vertical-align: middle; }
  .btn.btn-lg, .btn-group-lg > .btn,
  .btn-group-lg .btn,
  .input-group-btn .btn.btn-lg,
  .input-group-btn .btn-group-lg > .btn,
  .btn-group-lg
  .input-group-btn .btn {
    font-size: 16px; }
  .btn.btn-sm, .btn-group-sm > .btn,
  .btn-group-sm .btn,
  .input-group-btn .btn.btn-sm,
  .input-group-btn .btn-group-sm > .btn,
  .btn-group-sm
  .input-group-btn .btn {
    padding: 5px 20px;
    font-size: 12px; }
  .btn.btn-xs, .btn-group-xs > .btn,
  .btn-group-xs .btn,
  .input-group-btn .btn.btn-xs,
  .input-group-btn .btn-group-xs > .btn,
  .btn-group-xs
  .input-group-btn .btn {
    padding: 4px 15px;
    font-size: 10px; }

fieldset[disabled][disabled] .btn, .btn.disabled, .btn:disabled, .btn[disabled][disabled], fieldset[disabled][disabled]
.input-group-btn .btn,
.input-group-btn .btn.disabled,
.input-group-btn .btn:disabled,
.input-group-btn .btn[disabled][disabled], fieldset[disabled][disabled]
.btn-group,
.btn-group.disabled,
.btn-group:disabled,
.btn-group[disabled][disabled], fieldset[disabled][disabled]
.btn-group-vertical,
.btn-group-vertical.disabled,
.btn-group-vertical:disabled,
.btn-group-vertical[disabled][disabled] {
  color: rgba(0, 0, 0, 0.26);
  background: transparent; }
  .theme-dark fieldset[disabled][disabled] .btn, .theme-dark .btn.disabled, .theme-dark .btn:disabled, .theme-dark .btn[disabled][disabled], .theme-dark fieldset[disabled][disabled]
  .input-group-btn .btn, .theme-dark
  .input-group-btn .btn.disabled, .theme-dark
  .input-group-btn .btn:disabled, .theme-dark
  .input-group-btn .btn[disabled][disabled], .theme-dark fieldset[disabled][disabled]
  .btn-group, .theme-dark
  .btn-group.disabled, .theme-dark
  .btn-group:disabled, .theme-dark
  .btn-group[disabled][disabled], .theme-dark fieldset[disabled][disabled]
  .btn-group-vertical, .theme-dark
  .btn-group-vertical.disabled, .theme-dark
  .btn-group-vertical:disabled, .theme-dark
  .btn-group-vertical[disabled][disabled] {
    color: rgba(255, 255, 255, 0.3); }
  fieldset[disabled][disabled] .btn.btn-raised, fieldset[disabled][disabled] .btn.btn-raised.active, fieldset[disabled][disabled] .btn.btn-raised:active, fieldset[disabled][disabled] .btn.btn-raised:focus:not(:active), fieldset[disabled][disabled] .btn.btn-group-raised, fieldset[disabled][disabled] .btn.btn-group-raised.active, fieldset[disabled][disabled] .btn.btn-group-raised:active, fieldset[disabled][disabled] .btn.btn-group-raised:focus:not(:active), .btn.disabled.btn-raised, .btn.disabled.btn-raised.active, .btn.disabled.btn-raised:active, .btn.disabled.btn-raised:focus:not(:active), .btn.disabled.btn-group-raised, .btn.disabled.btn-group-raised.active, .btn.disabled.btn-group-raised:active, .btn.disabled.btn-group-raised:focus:not(:active), .btn:disabled.btn-raised, .btn:disabled.btn-raised.active, .btn:disabled.btn-raised:active, .btn:disabled.btn-raised:focus:not(:active), .btn:disabled.btn-group-raised, .btn:disabled.btn-group-raised.active, .btn:disabled.btn-group-raised:active, .btn:disabled.btn-group-raised:focus:not(:active), .btn[disabled][disabled].btn-raised, .btn[disabled][disabled].btn-raised.active, .btn[disabled][disabled].btn-raised:active, .btn[disabled][disabled].btn-raised:focus:not(:active), .btn[disabled][disabled].btn-group-raised, .btn[disabled][disabled].btn-group-raised.active, .btn[disabled][disabled].btn-group-raised:active, .btn[disabled][disabled].btn-group-raised:focus:not(:active), fieldset[disabled][disabled]
  .input-group-btn .btn.btn-raised, fieldset[disabled][disabled]
  .input-group-btn .btn.btn-raised.active, fieldset[disabled][disabled]
  .input-group-btn .btn.btn-raised:active, fieldset[disabled][disabled]
  .input-group-btn .btn.btn-raised:focus:not(:active), fieldset[disabled][disabled]
  .input-group-btn .btn.btn-group-raised, fieldset[disabled][disabled]
  .input-group-btn .btn.btn-group-raised.active, fieldset[disabled][disabled]
  .input-group-btn .btn.btn-group-raised:active, fieldset[disabled][disabled]
  .input-group-btn .btn.btn-group-raised:focus:not(:active),
  .input-group-btn .btn.disabled.btn-raised,
  .input-group-btn .btn.disabled.btn-raised.active,
  .input-group-btn .btn.disabled.btn-raised:active,
  .input-group-btn .btn.disabled.btn-raised:focus:not(:active),
  .input-group-btn .btn.disabled.btn-group-raised,
  .input-group-btn .btn.disabled.btn-group-raised.active,
  .input-group-btn .btn.disabled.btn-group-raised:active,
  .input-group-btn .btn.disabled.btn-group-raised:focus:not(:active),
  .input-group-btn .btn:disabled.btn-raised,
  .input-group-btn .btn:disabled.btn-raised.active,
  .input-group-btn .btn:disabled.btn-raised:active,
  .input-group-btn .btn:disabled.btn-raised:focus:not(:active),
  .input-group-btn .btn:disabled.btn-group-raised,
  .input-group-btn .btn:disabled.btn-group-raised.active,
  .input-group-btn .btn:disabled.btn-group-raised:active,
  .input-group-btn .btn:disabled.btn-group-raised:focus:not(:active),
  .input-group-btn .btn[disabled][disabled].btn-raised,
  .input-group-btn .btn[disabled][disabled].btn-raised.active,
  .input-group-btn .btn[disabled][disabled].btn-raised:active,
  .input-group-btn .btn[disabled][disabled].btn-raised:focus:not(:active),
  .input-group-btn .btn[disabled][disabled].btn-group-raised,
  .input-group-btn .btn[disabled][disabled].btn-group-raised.active,
  .input-group-btn .btn[disabled][disabled].btn-group-raised:active,
  .input-group-btn .btn[disabled][disabled].btn-group-raised:focus:not(:active), fieldset[disabled][disabled]
  .btn-group.btn-raised, fieldset[disabled][disabled]
  .btn-group.btn-raised.active, fieldset[disabled][disabled]
  .btn-group.btn-raised:active, fieldset[disabled][disabled]
  .btn-group.btn-raised:focus:not(:active), fieldset[disabled][disabled]
  .btn-group.btn-group-raised, fieldset[disabled][disabled]
  .btn-group.btn-group-raised.active, fieldset[disabled][disabled]
  .btn-group.btn-group-raised:active, fieldset[disabled][disabled]
  .btn-group.btn-group-raised:focus:not(:active),
  .btn-group.disabled.btn-raised,
  .btn-group.disabled.btn-raised.active,
  .btn-group.disabled.btn-raised:active,
  .btn-group.disabled.btn-raised:focus:not(:active),
  .btn-group.disabled.btn-group-raised,
  .btn-group.disabled.btn-group-raised.active,
  .btn-group.disabled.btn-group-raised:active,
  .btn-group.disabled.btn-group-raised:focus:not(:active),
  .btn-group:disabled.btn-raised,
  .btn-group:disabled.btn-raised.active,
  .btn-group:disabled.btn-raised:active,
  .btn-group:disabled.btn-raised:focus:not(:active),
  .btn-group:disabled.btn-group-raised,
  .btn-group:disabled.btn-group-raised.active,
  .btn-group:disabled.btn-group-raised:active,
  .btn-group:disabled.btn-group-raised:focus:not(:active),
  .btn-group[disabled][disabled].btn-raised,
  .btn-group[disabled][disabled].btn-raised.active,
  .btn-group[disabled][disabled].btn-raised:active,
  .btn-group[disabled][disabled].btn-raised:focus:not(:active),
  .btn-group[disabled][disabled].btn-group-raised,
  .btn-group[disabled][disabled].btn-group-raised.active,
  .btn-group[disabled][disabled].btn-group-raised:active,
  .btn-group[disabled][disabled].btn-group-raised:focus:not(:active), fieldset[disabled][disabled]
  .btn-group-vertical.btn-raised, fieldset[disabled][disabled]
  .btn-group-vertical.btn-raised.active, fieldset[disabled][disabled]
  .btn-group-vertical.btn-raised:active, fieldset[disabled][disabled]
  .btn-group-vertical.btn-raised:focus:not(:active), fieldset[disabled][disabled]
  .btn-group-vertical.btn-group-raised, fieldset[disabled][disabled]
  .btn-group-vertical.btn-group-raised.active, fieldset[disabled][disabled]
  .btn-group-vertical.btn-group-raised:active, fieldset[disabled][disabled]
  .btn-group-vertical.btn-group-raised:focus:not(:active),
  .btn-group-vertical.disabled.btn-raised,
  .btn-group-vertical.disabled.btn-raised.active,
  .btn-group-vertical.disabled.btn-raised:active,
  .btn-group-vertical.disabled.btn-raised:focus:not(:active),
  .btn-group-vertical.disabled.btn-group-raised,
  .btn-group-vertical.disabled.btn-group-raised.active,
  .btn-group-vertical.disabled.btn-group-raised:active,
  .btn-group-vertical.disabled.btn-group-raised:focus:not(:active),
  .btn-group-vertical:disabled.btn-raised,
  .btn-group-vertical:disabled.btn-raised.active,
  .btn-group-vertical:disabled.btn-raised:active,
  .btn-group-vertical:disabled.btn-raised:focus:not(:active),
  .btn-group-vertical:disabled.btn-group-raised,
  .btn-group-vertical:disabled.btn-group-raised.active,
  .btn-group-vertical:disabled.btn-group-raised:active,
  .btn-group-vertical:disabled.btn-group-raised:focus:not(:active),
  .btn-group-vertical[disabled][disabled].btn-raised,
  .btn-group-vertical[disabled][disabled].btn-raised.active,
  .btn-group-vertical[disabled][disabled].btn-raised:active,
  .btn-group-vertical[disabled][disabled].btn-raised:focus:not(:active),
  .btn-group-vertical[disabled][disabled].btn-group-raised,
  .btn-group-vertical[disabled][disabled].btn-group-raised.active,
  .btn-group-vertical[disabled][disabled].btn-group-raised:active,
  .btn-group-vertical[disabled][disabled].btn-group-raised:focus:not(:active) {
    box-shadow: none; }

.btn-group,
.btn-group-vertical {
  position: relative;
  margin: 10px 1px; }
  .btn-group.open > .dropdown-toggle.btn, .btn-group.open > .dropdown-toggle.btn.btn-default,
  .btn-group-vertical.open > .dropdown-toggle.btn,
  .btn-group-vertical.open > .dropdown-toggle.btn.btn-default {
    background-color: #fff; }
  .btn-group.open > .dropdown-toggle.btn.btn-inverse,
  .btn-group-vertical.open > .dropdown-toggle.btn.btn-inverse {
    background-color: #3f51b5; }
  .btn-group.open > .dropdown-toggle.btn.btn-primary,
  .btn-group-vertical.open > .dropdown-toggle.btn.btn-primary {
    background-color: #337ab7; }
  .btn-group.open > .dropdown-toggle.btn.btn-success,
  .btn-group-vertical.open > .dropdown-toggle.btn.btn-success {
    background-color: #5cb85c; }
  .btn-group.open > .dropdown-toggle.btn.btn-info,
  .btn-group-vertical.open > .dropdown-toggle.btn.btn-info {
    background-color: #5bc0de; }
  .btn-group.open > .dropdown-toggle.btn.btn-warning,
  .btn-group-vertical.open > .dropdown-toggle.btn.btn-warning {
    background-color: #f0ad4e; }
  .btn-group.open > .dropdown-toggle.btn.btn-danger,
  .btn-group-vertical.open > .dropdown-toggle.btn.btn-danger {
    background-color: #d9534f; }
  .btn-group .dropdown-menu,
  .btn-group-vertical .dropdown-menu {
    border-radius: 0 0 4px 4px; }
  .btn-group.btn-group-raised,
  .btn-group-vertical.btn-group-raised {
    box-shadow: 0 2px 2px 0 rgba(0, 0, 0, 0.14), 0 3px 1px -2px rgba(0, 0, 0, 0.2), 0 1px 5px 0 rgba(0, 0, 0, 0.12); }
  .btn-group .btn + .btn,
  .btn-group .btn,
  .btn-group .btn:active,
  .btn-group .btn-group,
  .btn-group-vertical .btn + .btn,
  .btn-group-vertical .btn,
  .btn-group-vertical .btn:active,
  .btn-group-vertical .btn-group {
    margin: 0; }

.checkbox label {
  cursor: pointer;
  padding-left: 0;
  color: rgba(0,0,0, 0.26); }
  .form-group.is-focused .checkbox label {
    color: rgba(0,0,0, 0.26); }
    .form-group.is-focused .checkbox label:hover, .form-group.is-focused .checkbox label:focus {
      color: rgba(0,0,0, .54); }
    fieldset[disabled] .form-group.is-focused .checkbox label {
      color: rgba(0,0,0, 0.26); }

.checkbox input[type=checkbox] {
  opacity: 0;
  position: absolute;
  margin: 0;
  z-index: -1;
  width: 0;
  height: 0;
  overflow: hidden;
  left: 0;
  pointer-events: none; }

.checkbox .checkbox-material {
  vertical-align: middle;
  position: relative;
  top: 3px; }
  .checkbox .checkbox-material:before {
    display: block;
    position: absolute;
    left: 0;
    content: "";
    background-color: rgba(0, 0, 0, 0.84);
    height: 20px;
    width: 20px;
    border-radius: 100%;
    z-index: 1;
    opacity: 0;
    margin: 0;
    transform: scale3d(2.3, 2.3, 1); }
  .checkbox .checkbox-material .check {
    position: relative;
    display: inline-block;
    width: 20px;
    height: 20px;
    border: 2px solid rgba(0,0,0, .54);
    border-radius: 4px;
    overflow: hidden;
    z-index: 1; }
  .checkbox .checkbox-material .check:before {
    position: absolute;
    content: "";
    transform: rotate(45deg);
    display: block;
    margin-top: -4px;
    margin-left: 6px;
    width: 0;
    height: 0;
    box-shadow: 0 0 0 0, 0 0 0 0, 0 0 0 0, 0 0 0 0, 0 0 0 0, 0 0 0 0, 0 0 0 0 inset;
    animation: checkbox-off; }

.checkbox input[type=checkbox]:focus + .checkbox-material .check:after {
  opacity: 0.2; }

.checkbox input[type=checkbox]:checked + .checkbox-material .check {
  color: #337ab7;
  border-color: #337ab7; }

.checkbox input[type=checkbox]:checked + .checkbox-material .check:before {
  color: #337ab7;
  box-shadow: 0 0 0 10px, 10px -10px 0 10px, 32px 0 0 20px, 0px 32px 0 20px, -5px 5px 0 10px, 20px -12px 0 11px;
  animation: checkbox-on 0.3s forwards; }

.checkbox input[type=checkbox]:checked + .checkbox-material:before {
  animation: rippleOn; }

.checkbox input[type=checkbox]:checked + .checkbox-material .check:after {
  animation: rippleOn 500ms forwards; }

.checkbox input[type=checkbox]:not(:checked) + .checkbox-material:before {
  animation: rippleOff; }

.checkbox input[type=checkbox]:not(:checked) + .checkbox-material .check:after {
  animation: rippleOff 500ms forwards; }

fieldset[disabled] .checkbox,
fieldset[disabled] .checkbox input[type=checkbox],
.checkbox input[type=checkbox][disabled]:not(:checked) ~ .checkbox-material .check:before,
.checkbox input[type=checkbox][disabled]:not(:checked) ~ .checkbox-material .check,
.checkbox input[type=checkbox][disabled] + .circle {
  opacity: 0.5; }

.checkbox input[type=checkbox][disabled] + .checkbox-material .check:after {
  background-color: rgba(0,0,0, 0.87);
  transform: rotate(-45deg); }

.is-focused .checkbox .checkbox-material .check:before {
  animation: checkbox-off 0.3s forwards; }

.is-focused .checkbox input[type=checkbox]:checked + .checkbox-material:before {
  animation: rippleOn 500ms; }

.is-focused .checkbox input[type=checkbox]:not(:checked) + .checkbox-material:before {
  animation: rippleOff 500ms; }

@keyframes checkbox-on {
  0% {
    box-shadow: 0 0 0 10px, 10px -10px 0 10px, 32px 0 0 20px, 0px 32px 0 20px, -5px 5px 0 10px, 15px 2px 0 11px; }
  50% {
    box-shadow: 0 0 0 10px, 10px -10px 0 10px, 32px 0 0 20px, 0px 32px 0 20px, -5px 5px 0 10px, 20px 2px 0 11px; }
  100% {
    box-shadow: 0 0 0 10px, 10px -10px 0 10px, 32px 0 0 20px, 0px 32px 0 20px, -5px 5px 0 10px, 20px -12px 0 11px; } }

@keyframes checkbox-off {
  0% {
    box-shadow: 0 0 0 10px, 10px -10px 0 10px, 32px 0 0 20px, 0px 32px 0 20px, -5px 5px 0 10px, 20px -12px 0 11px, 0 0 0 0 inset; }
  25% {
    box-shadow: 0 0 0 10px, 10px -10px 0 10px, 32px 0 0 20px, 0px 32px 0 20px, -5px 5px 0 10px, 20px -12px 0 11px, 0 0 0 0 inset; }
  50% {
    transform: rotate(45deg);
    margin-top: -4px;
    margin-left: 6px;
    width: 0;
    height: 0;
    box-shadow: 0 0 0 10px, 10px -10px 0 10px, 32px 0 0 20px, 0px 32px 0 20px, -5px 5px 0 10px, 15px 2px 0 11px, 0 0 0 0 inset; }
  51% {
    transform: rotate(0deg);
    margin-top: -2px;
    margin-left: -2px;
    width: 20px;
    height: 20px;
    box-shadow: 0 0 0 0, 0 0 0 0, 0 0 0 0, 0 0 0 0, 0 0 0 0, 0 0 0 0, 0px 0 0 10px inset; }
  100% {
    transform: rotate(0deg);
    margin-top: -2px;
    margin-left: -2px;
    width: 20px;
    height: 20px;
    box-shadow: 0 0 0 0, 0 0 0 0, 0 0 0 0, 0 0 0 0, 0 0 0 0, 0 0 0 0, 0px 0 0 0 inset; } }

@keyframes rippleOn {
  0% {
    opacity: 0; }
  50% {
    opacity: 0.2; }
  100% {
    opacity: 0; } }

@keyframes rippleOff {
  0% {
    opacity: 0; }
  50% {
    opacity: 0.2; }
  100% {
    opacity: 0; } }

.togglebutton {
  vertical-align: middle; }
  .togglebutton, .togglebutton label, .togglebutton input, .togglebutton .toggle {
    -webkit-user-select: none;
       -moz-user-select: none;
        -ms-user-select: none;
            user-select: none; }
  .togglebutton label {
    cursor: pointer;
    color: rgba(0,0,0, 0.26); }
    .form-group.is-focused .togglebutton label {
      color: rgba(0,0,0, 0.26); }
      .form-group.is-focused .togglebutton label:hover, .form-group.is-focused .togglebutton label:focus {
        color: rgba(0,0,0, .54); }
      fieldset[disabled] .form-group.is-focused .togglebutton label {
        color: rgba(0,0,0, 0.26); }
    .togglebutton label input[type=checkbox] {
      opacity: 0;
      width: 0;
      height: 0; }
    .togglebutton label .toggle {
      text-align: left; }
    .togglebutton label .toggle,
    .togglebutton label input[type=checkbox][disabled] + .toggle {
      content: "";
      display: inline-block;
      width: 30px;
      height: 15px;
      background-color: rgba(80, 80, 80, 0.7);
      border-radius: 15px;
      margin-right: 15px;
      transition: background 0.3s ease;
      vertical-align: middle; }
    .togglebutton label .toggle:after {
      content: "";
      display: inline-block;
      width: 20px;
      height: 20px;
      background-color: #F1F1F1;
      border-radius: 20px;
      position: relative;
      box-shadow: 0 1px 3px 1px rgba(0, 0, 0, 0.4);
      left: -5px;
      top: -2px;
      transition: left 0.3s ease, background 0.3s ease, box-shadow 0.1s ease; }
    .togglebutton label input[type=checkbox][disabled] + .toggle:after,
    .togglebutton label input[type=checkbox][disabled]:checked + .toggle:after {
      background-color: #BDBDBD; }
    .togglebutton label input[type=checkbox] + .toggle:active:after,
    .togglebutton label input[type=checkbox][disabled] + .toggle:active:after {
      box-shadow: 0 1px 3px 1px rgba(0, 0, 0, 0.4), 0 0 0 15px rgba(0, 0, 0, 0.1); }
    .togglebutton label input[type=checkbox]:checked + .toggle:after {
      left: 15px; }
    .togglebutton label input[type=checkbox]:checked + .toggle {
      background-color: rgba(51, 122, 183, 0.5); }
    .togglebutton label input[type=checkbox]:checked + .toggle:after {
      background-color: #337ab7; }
    .togglebutton label input[type=checkbox]:checked + .toggle:active:after {
      box-shadow: 0 1px 3px 1px rgba(0, 0, 0, 0.4), 0 0 0 15px rgba(51, 122, 183, 0.1); }

.radio label {
  cursor: pointer;
  padding-left: 45px;
  position: relative;
  color: rgba(0,0,0, 0.26); }
  .form-group.is-focused .radio label {
    color: rgba(0,0,0, 0.26); }
    .form-group.is-focused .radio label:hover, .form-group.is-focused .radio label:focus {
      color: rgba(0,0,0, .54); }
    fieldset[disabled] .form-group.is-focused .radio label {
      color: rgba(0,0,0, 0.26); }
  .radio label span {
    display: block;
    position: absolute;
    left: 10px;
    top: 2px;
    transition-duration: 0.2s; }
  .radio label .circle {
    border: 2px solid rgba(0,0,0, .54);
    height: 15px;
    width: 15px;
    border-radius: 100%; }
  .radio label .check {
    height: 15px;
    width: 15px;
    border-radius: 100%;
    background-color: #337ab7;
    transform: scale3d(0, 0, 0); }
  .radio label .check:after {
    display: block;
    position: absolute;
    content: "";
    background-color: rgba(0,0,0, 0.87);
    left: -18px;
    top: -18px;
    height: 50px;
    width: 50px;
    border-radius: 100%;
    z-index: 1;
    opacity: 0;
    margin: 0;
    transform: scale3d(1.5, 1.5, 1); }
  .radio label input[type=radio]:not(:checked) ~ .check:after {
    animation: rippleOff 500ms; }
  .radio label input[type=radio]:checked ~ .check:after {
    animation: rippleOn; }

.radio input[type=radio] {
  opacity: 0;
  height: 0;
  width: 0;
  overflow: hidden; }
  .radio input[type=radio]:checked ~ .check,
  .radio input[type=radio]:checked ~ .circle {
    opacity: 1; }
  .radio input[type=radio]:checked ~ .check {
    background-color: #337ab7; }
  .radio input[type=radio]:checked ~ .circle {
    border-color: #337ab7; }
  .radio input[type=radio]:checked ~ .check {
    transform: scale3d(0.55, 0.55, 1); }

.radio input[type=radio][disabled] ~ .check,
.radio input[type=radio][disabled] ~ .circle {
  opacity: 0.26; }

.radio input[type=radio][disabled] ~ .check {
  background-color: #000000; }

.radio input[type=radio][disabled] ~ .circle {
  border-color: #000000; }

.theme-dark .radio input[type=radio][disabled] ~ .check,
.theme-dark .radio input[type=radio][disabled] ~ .circle {
  opacity: 0.3; }

.theme-dark .radio input[type=radio][disabled] ~ .check {
  background-color: #ffffff; }

.theme-dark .radio input[type=radio][disabled] ~ .circle {
  border-color: #ffffff; }

.is-focused .radio input[type=radio]:checked ~ .check:after {
  animation: rippleOn 500ms; }

@keyframes rippleOn {
  0% {
    opacity: 0; }
  50% {
    opacity: 0.2; }
  100% {
    opacity: 0; } }

@keyframes rippleOff {
  0% {
    opacity: 0; }
  50% {
    opacity: 0.2; }
  100% {
    opacity: 0; } }

legend {
  margin-bottom: 22px;
  font-size: 24px; }

output {
  padding-top: 8px;
  font-size: 16px;
  line-height: 1.42857; }

.form-control {
  height: 38px;
  padding: 7px 0;
  font-size: 16px;
  line-height: 1.42857; }

@media screen and (-webkit-min-device-pixel-ratio: 0) {
  input[type="date"].form-control,
  input[type="time"].form-control,
  input[type="datetime-local"].form-control,
  input[type="month"].form-control {
    line-height: 38px; }
  input[type="date"].input-sm, .input-group-sm > input[type="date"].form-control,
  .input-group-sm > input[type="date"].input-group-addon,
  .input-group-sm > .input-group-btn > input[type="date"].btn,
  .input-group-sm input[type="date"],
  input[type="time"].input-sm,
  .input-group-sm > input[type="time"].form-control,
  .input-group-sm > input[type="time"].input-group-addon,
  .input-group-sm > .input-group-btn > input[type="time"].btn,
  .input-group-sm
  input[type="time"],
  input[type="datetime-local"].input-sm,
  .input-group-sm > input[type="datetime-local"].form-control,
  .input-group-sm > input[type="datetime-local"].input-group-addon,
  .input-group-sm > .input-group-btn > input[type="datetime-local"].btn,
  .input-group-sm
  input[type="datetime-local"],
  input[type="month"].input-sm,
  .input-group-sm > input[type="month"].form-control,
  .input-group-sm > input[type="month"].input-group-addon,
  .input-group-sm > .input-group-btn > input[type="month"].btn,
  .input-group-sm
  input[type="month"] {
    line-height: 24px; }
  input[type="date"].input-lg, .input-group-lg > input[type="date"].form-control,
  .input-group-lg > input[type="date"].input-group-addon,
  .input-group-lg > .input-group-btn > input[type="date"].btn,
  .input-group-lg input[type="date"],
  input[type="time"].input-lg,
  .input-group-lg > input[type="time"].form-control,
  .input-group-lg > input[type="time"].input-group-addon,
  .input-group-lg > .input-group-btn > input[type="time"].btn,
  .input-group-lg
  input[type="time"],
  input[type="datetime-local"].input-lg,
  .input-group-lg > input[type="datetime-local"].form-control,
  .input-group-lg > input[type="datetime-local"].input-group-addon,
  .input-group-lg > .input-group-btn > input[type="datetime-local"].btn,
  .input-group-lg
  input[type="datetime-local"],
  input[type="month"].input-lg,
  .input-group-lg > input[type="month"].form-control,
  .input-group-lg > input[type="month"].input-group-addon,
  .input-group-lg > .input-group-btn > input[type="month"].btn,
  .input-group-lg
  input[type="month"] {
    line-height: 44px; } }

.radio label,
.checkbox label {
  min-height: 22px; }

.form-control-static {
  padding-top: 8px;
  padding-bottom: 8px;
  min-height: 38px; }

.input-sm .input-sm, .input-group-sm > .form-control .input-sm,
.input-group-sm > .input-group-addon .input-sm,
.input-group-sm > .input-group-btn > .btn .input-sm, .input-sm .input-group-sm > .form-control, .input-group-sm > .form-control .input-group-sm > .form-control,
.input-group-sm > .input-group-addon .input-group-sm > .form-control,
.input-group-sm > .input-group-btn > .btn .input-group-sm > .form-control, .input-sm
.input-group-sm > .input-group-addon, .input-group-sm > .form-control
.input-group-sm > .input-group-addon,
.input-group-sm > .input-group-addon
.input-group-sm > .input-group-addon,
.input-group-sm > .input-group-btn > .btn
.input-group-sm > .input-group-addon, .input-sm
.input-group-sm > .input-group-btn > .btn, .input-group-sm > .form-control
.input-group-sm > .input-group-btn > .btn,
.input-group-sm > .input-group-addon
.input-group-sm > .input-group-btn > .btn,
.input-group-sm > .input-group-btn > .btn
.input-group-sm > .input-group-btn > .btn {
  height: 24px;
  padding: 3px 0;
  font-size: 11px;
  line-height: 1.5;
  border-radius: 0; }

.input-sm select.input-sm, .input-group-sm > .form-control select.input-sm,
.input-group-sm > .input-group-addon select.input-sm,
.input-group-sm > .input-group-btn > .btn select.input-sm, .input-sm .input-group-sm > select.form-control, .input-group-sm > .form-control .input-group-sm > select.form-control,
.input-group-sm > .input-group-addon .input-group-sm > select.form-control,
.input-group-sm > .input-group-btn > .btn .input-group-sm > select.form-control, .input-sm
.input-group-sm > select.input-group-addon, .input-group-sm > .form-control
.input-group-sm > select.input-group-addon,
.input-group-sm > .input-group-addon
.input-group-sm > select.input-group-addon,
.input-group-sm > .input-group-btn > .btn
.input-group-sm > select.input-group-addon, .input-sm
.input-group-sm > .input-group-btn > select.btn, .input-group-sm > .form-control
.input-group-sm > .input-group-btn > select.btn,
.input-group-sm > .input-group-addon
.input-group-sm > .input-group-btn > select.btn,
.input-group-sm > .input-group-btn > .btn
.input-group-sm > .input-group-btn > select.btn {
  height: 24px;
  line-height: 24px; }

.input-sm textarea.input-sm, .input-group-sm > .form-control textarea.input-sm,
.input-group-sm > .input-group-addon textarea.input-sm,
.input-group-sm > .input-group-btn > .btn textarea.input-sm, .input-sm .input-group-sm > textarea.form-control, .input-group-sm > .form-control .input-group-sm > textarea.form-control,
.input-group-sm > .input-group-addon .input-group-sm > textarea.form-control,
.input-group-sm > .input-group-btn > .btn .input-group-sm > textarea.form-control, .input-sm
.input-group-sm > textarea.input-group-addon, .input-group-sm > .form-control
.input-group-sm > textarea.input-group-addon,
.input-group-sm > .input-group-addon
.input-group-sm > textarea.input-group-addon,
.input-group-sm > .input-group-btn > .btn
.input-group-sm > textarea.input-group-addon, .input-sm
.input-group-sm > .input-group-btn > textarea.btn, .input-group-sm > .form-control
.input-group-sm > .input-group-btn > textarea.btn,
.input-group-sm > .input-group-addon
.input-group-sm > .input-group-btn > textarea.btn,
.input-group-sm > .input-group-btn > .btn
.input-group-sm > .input-group-btn > textarea.btn,
.input-sm select[multiple].input-sm, .input-group-sm > .form-control select[multiple].input-sm,
.input-group-sm > .input-group-addon select[multiple].input-sm,
.input-group-sm > .input-group-btn > .btn select[multiple].input-sm,
.input-sm .input-group-sm > select[multiple].form-control, .input-group-sm > .form-control .input-group-sm > select[multiple].form-control,
.input-group-sm > .input-group-addon .input-group-sm > select[multiple].form-control,
.input-group-sm > .input-group-btn > .btn .input-group-sm > select[multiple].form-control,
.input-sm
.input-group-sm > select[multiple].input-group-addon, .input-group-sm > .form-control
.input-group-sm > select[multiple].input-group-addon,
.input-group-sm > .input-group-addon
.input-group-sm > select[multiple].input-group-addon,
.input-group-sm > .input-group-btn > .btn
.input-group-sm > select[multiple].input-group-addon,
.input-sm
.input-group-sm > .input-group-btn > select[multiple].btn, .input-group-sm > .form-control
.input-group-sm > .input-group-btn > select[multiple].btn,
.input-group-sm > .input-group-addon
.input-group-sm > .input-group-btn > select[multiple].btn,
.input-group-sm > .input-group-btn > .btn
.input-group-sm > .input-group-btn > select[multiple].btn {
  height: auto; }

.form-group-sm .form-control {
  height: 24px;
  padding: 3px 0;
  font-size: 11px;
  line-height: 1.5; }

.form-group-sm select.form-control {
  height: 24px;
  line-height: 24px; }

.form-group-sm textarea.form-control,
.form-group-sm select[multiple].form-control {
  height: auto; }

.form-group-sm .form-control-static {
  height: 24px;
  min-height: 33px;
  padding: 4px 0;
  font-size: 11px;
  line-height: 1.5; }

.input-lg .input-lg, .input-group-lg > .form-control .input-lg,
.input-group-lg > .input-group-addon .input-lg,
.input-group-lg > .input-group-btn > .btn .input-lg, .input-lg .input-group-lg > .form-control, .input-group-lg > .form-control .input-group-lg > .form-control,
.input-group-lg > .input-group-addon .input-group-lg > .form-control,
.input-group-lg > .input-group-btn > .btn .input-group-lg > .form-control, .input-lg
.input-group-lg > .input-group-addon, .input-group-lg > .form-control
.input-group-lg > .input-group-addon,
.input-group-lg > .input-group-addon
.input-group-lg > .input-group-addon,
.input-group-lg > .input-group-btn > .btn
.input-group-lg > .input-group-addon, .input-lg
.input-group-lg > .input-group-btn > .btn, .input-group-lg > .form-control
.input-group-lg > .input-group-btn > .btn,
.input-group-lg > .input-group-addon
.input-group-lg > .input-group-btn > .btn,
.input-group-lg > .input-group-btn > .btn
.input-group-lg > .input-group-btn > .btn {
  height: 44px;
  padding: 9px 0;
  font-size: 18px;
  line-height: 1.33333;
  border-radius: 0; }

.input-lg select.input-lg, .input-group-lg > .form-control select.input-lg,
.input-group-lg > .input-group-addon select.input-lg,
.input-group-lg > .input-group-btn > .btn select.input-lg, .input-lg .input-group-lg > select.form-control, .input-group-lg > .form-control .input-group-lg > select.form-control,
.input-group-lg > .input-group-addon .input-group-lg > select.form-control,
.input-group-lg > .input-group-btn > .btn .input-group-lg > select.form-control, .input-lg
.input-group-lg > select.input-group-addon, .input-group-lg > .form-control
.input-group-lg > select.input-group-addon,
.input-group-lg > .input-group-addon
.input-group-lg > select.input-group-addon,
.input-group-lg > .input-group-btn > .btn
.input-group-lg > select.input-group-addon, .input-lg
.input-group-lg > .input-group-btn > select.btn, .input-group-lg > .form-control
.input-group-lg > .input-group-btn > select.btn,
.input-group-lg > .input-group-addon
.input-group-lg > .input-group-btn > select.btn,
.input-group-lg > .input-group-btn > .btn
.input-group-lg > .input-group-btn > select.btn {
  height: 44px;
  line-height: 44px; }

.input-lg textarea.input-lg, .input-group-lg > .form-control textarea.input-lg,
.input-group-lg > .input-group-addon textarea.input-lg,
.input-group-lg > .input-group-btn > .btn textarea.input-lg, .input-lg .input-group-lg > textarea.form-control, .input-group-lg > .form-control .input-group-lg > textarea.form-control,
.input-group-lg > .input-group-addon .input-group-lg > textarea.form-control,
.input-group-lg > .input-group-btn > .btn .input-group-lg > textarea.form-control, .input-lg
.input-group-lg > textarea.input-group-addon, .input-group-lg > .form-control
.input-group-lg > textarea.input-group-addon,
.input-group-lg > .input-group-addon
.input-group-lg > textarea.input-group-addon,
.input-group-lg > .input-group-btn > .btn
.input-group-lg > textarea.input-group-addon, .input-lg
.input-group-lg > .input-group-btn > textarea.btn, .input-group-lg > .form-control
.input-group-lg > .input-group-btn > textarea.btn,
.input-group-lg > .input-group-addon
.input-group-lg > .input-group-btn > textarea.btn,
.input-group-lg > .input-group-btn > .btn
.input-group-lg > .input-group-btn > textarea.btn,
.input-lg select[multiple].input-lg, .input-group-lg > .form-control select[multiple].input-lg,
.input-group-lg > .input-group-addon select[multiple].input-lg,
.input-group-lg > .input-group-btn > .btn select[multiple].input-lg,
.input-lg .input-group-lg > select[multiple].form-control, .input-group-lg > .form-control .input-group-lg > select[multiple].form-control,
.input-group-lg > .input-group-addon .input-group-lg > select[multiple].form-control,
.input-group-lg > .input-group-btn > .btn .input-group-lg > select[multiple].form-control,
.input-lg
.input-group-lg > select[multiple].input-group-addon, .input-group-lg > .form-control
.input-group-lg > select[multiple].input-group-addon,
.input-group-lg > .input-group-addon
.input-group-lg > select[multiple].input-group-addon,
.input-group-lg > .input-group-btn > .btn
.input-group-lg > select[multiple].input-group-addon,
.input-lg
.input-group-lg > .input-group-btn > select[multiple].btn, .input-group-lg > .form-control
.input-group-lg > .input-group-btn > select[multiple].btn,
.input-group-lg > .input-group-addon
.input-group-lg > .input-group-btn > select[multiple].btn,
.input-group-lg > .input-group-btn > .btn
.input-group-lg > .input-group-btn > select[multiple].btn {
  height: auto; }

.form-group-lg .form-control {
  height: 44px;
  padding: 9px 0;
  font-size: 18px;
  line-height: 1.33333; }

.form-group-lg select.form-control {
  height: 44px;
  line-height: 44px; }

.form-group-lg textarea.form-control,
.form-group-lg select[multiple].form-control {
  height: auto; }

.form-group-lg .form-control-static {
  height: 44px;
  min-height: 40px;
  padding: 10px 0;
  font-size: 18px;
  line-height: 1.33333; }

.form-horizontal .radio,
.form-horizontal .checkbox,
.form-horizontal .radio-inline,
.form-horizontal .checkbox-inline {
  padding-top: 8px; }

.form-horizontal .radio,
.form-horizontal .checkbox {
  min-height: 30px; }

@media (min-width: 768px) {
  .form-horizontal .control-label {
    padding-top: 8px; } }

@media (min-width: 768px) {
  .form-horizontal .form-group-lg .control-label {
    padding-top: 13.0px;
    font-size: 18px; } }

@media (min-width: 768px) {
  .form-horizontal .form-group-sm .control-label {
    padding-top: 4px;
    font-size: 11px; } }

.label {
  border-radius: 3px; }
  .label, .label.label-default {
    background-color: #9e9e9e; }
  .label.label-inverse {
    background-color: #3f51b5; }
  .label.label-primary {
    background-color: #337ab7; }
  .label.label-success {
    background-color: #5cb85c; }
  .label.label-info {
    background-color: #5bc0de; }
  .label.label-warning {
    background-color: #f0ad4e; }
  .label.label-danger {
    background-color: #d9534f; }

.form-control,
.form-group .form-control {
  border: 0;
  background-image: linear-gradient(#337ab7, #337ab7), linear-gradient(#D2D2D2, #D2D2D2);
  background-size: 0 2px, 100% 1px;
  background-repeat: no-repeat;
  background-position: center bottom, center calc(100% - 1px);
  background-color: transparent;
  transition: background 0s ease-out;
  float: none;
  box-shadow: none;
  border-radius: 0; }
  .form-control::-moz-placeholder,
  .form-group .form-control::-moz-placeholder {
    color: #BDBDBD;
    font-weight: 400; }
  .form-control:-ms-input-placeholder,
  .form-group .form-control:-ms-input-placeholder {
    color: #BDBDBD;
    font-weight: 400; }
  .form-control::-webkit-input-placeholder,
  .form-group .form-control::-webkit-input-placeholder {
    color: #BDBDBD;
    font-weight: 400; }
  .form-control[readonly], .form-control[disabled],
  fieldset[disabled] .form-control,
  .form-group .form-control[readonly],
  .form-group .form-control[disabled],
  fieldset[disabled]
  .form-group .form-control {
    background-color: transparent; }
  .form-control[disabled],
  fieldset[disabled] .form-control,
  .form-group .form-control[disabled],
  fieldset[disabled]
  .form-group .form-control {
    background-image: none;
    border-bottom: 1px dotted #D2D2D2; }

.form-group {
  position: relative; }
  .form-group.label-static label.control-label, .form-group.label-placeholder label.control-label, .form-group.label-floating label.control-label {
    position: absolute;
    pointer-events: none;
    transition: 0.3s ease all; }
  .form-group.label-floating label.control-label {
    will-change: left, top, contents; }
  .form-group.label-placeholder:not(.is-empty) label.control-label {
    display: none; }
  .form-group .help-block {
    position: absolute;
    display: none; }
  .form-group.is-focused .form-control {
    outline: none;
    background-image: linear-gradient(#337ab7, #337ab7), linear-gradient(#D2D2D2, #D2D2D2);
    background-size: 100% 2px, 100% 1px;
    box-shadow: none;
    transition-duration: 0.3s; }
    .form-group.is-focused .form-control .material-input:after {
      background-color: #337ab7; }
  .form-group.is-focused label,
  .form-group.is-focused label.control-label {
    color: #337ab7; }
  .form-group.is-focused.label-placeholder label,
  .form-group.is-focused.label-placeholder label.control-label {
    color: #BDBDBD; }
  .form-group.is-focused .help-block {
    display: block; }
  .form-group.has-warning .form-control {
    box-shadow: none; }
  .form-group.has-warning.is-focused .form-control {
    background-image: linear-gradient(#f0ad4e, #f0ad4e), linear-gradient(#D2D2D2, #D2D2D2); }
  .form-group.has-warning label.control-label,
  .form-group.has-warning .help-block {
    color: #f0ad4e; }
  .form-group.has-error .form-control {
    box-shadow: none; }
  .form-group.has-error.is-focused .form-control {
    background-image: linear-gradient(#d9534f, #d9534f), linear-gradient(#D2D2D2, #D2D2D2); }
  .form-group.has-error label.control-label,
  .form-group.has-error .help-block {
    color: #d9534f; }
  .form-group.has-success .form-control {
    box-shadow: none; }
  .form-group.has-success.is-focused .form-control {
    background-image: linear-gradient(#5cb85c, #5cb85c), linear-gradient(#D2D2D2, #D2D2D2); }
  .form-group.has-success label.control-label,
  .form-group.has-success .help-block {
    color: #5cb85c; }
  .form-group.has-info .form-control {
    box-shadow: none; }
  .form-group.has-info.is-focused .form-control {
    background-image: linear-gradient(#5bc0de, #5bc0de), linear-gradient(#D2D2D2, #D2D2D2); }
  .form-group.has-info label.control-label,
  .form-group.has-info .help-block {
    color: #5bc0de; }
  .form-group textarea {
    resize: none; }
    .form-group textarea ~ .form-control-highlight {
      margin-top: -11px; }
  .form-group select {
    -webkit-appearance: none;
       -moz-appearance: none;
            appearance: none; }
    .form-group select ~ .material-input:after {
      display: none; }

.form-control {
  margin-bottom: 7px; }
  .form-control::-moz-placeholder {
    font-size: 16px;
    line-height: 1.42857;
    color: #BDBDBD;
    font-weight: 400; }
  .form-control:-ms-input-placeholder {
    font-size: 16px;
    line-height: 1.42857;
    color: #BDBDBD;
    font-weight: 400; }
  .form-control::-webkit-input-placeholder {
    font-size: 16px;
    line-height: 1.42857;
    color: #BDBDBD;
    font-weight: 400; }

.checkbox label,
.radio label,
label {
  font-size: 16px;
  line-height: 1.42857;
  color: #BDBDBD;
  font-weight: 400; }

label.control-label {
  font-size: 12px;
  line-height: 1.07143;
  color: #BDBDBD;
  font-weight: 400;
  margin: 16px 0 0 0; }

.help-block {
  margin-top: 0;
  font-size: 12px; }

.form-group {
  padding-bottom: 7px;
  margin: 28px 0 0 0; }
  .form-group .form-control {
    margin-bottom: 7px; }
    .form-group .form-control::-moz-placeholder {
      font-size: 16px;
      line-height: 1.42857;
      color: #BDBDBD;
      font-weight: 400; }
    .form-group .form-control:-ms-input-placeholder {
      font-size: 16px;
      line-height: 1.42857;
      color: #BDBDBD;
      font-weight: 400; }
    .form-group .form-control::-webkit-input-placeholder {
      font-size: 16px;
      line-height: 1.42857;
      color: #BDBDBD;
      font-weight: 400; }
  .form-group .checkbox label,
  .form-group .radio label,
  .form-group label {
    font-size: 16px;
    line-height: 1.42857;
    color: #BDBDBD;
    font-weight: 400; }
  .form-group label.control-label {
    font-size: 12px;
    line-height: 1.07143;
    color: #BDBDBD;
    font-weight: 400;
    margin: 16px 0 0 0; }
  .form-group .help-block {
    margin-top: 0;
    font-size: 12px; }
  .form-group.label-floating label.control-label, .form-group.label-placeholder label.control-label {
    top: -7px;
    font-size: 16px;
    line-height: 1.42857; }
  .form-group.label-static label.control-label, .form-group.label-floating.is-focused label.control-label, .form-group.label-floating:not(.is-empty) label.control-label {
    top: -30px;
    left: 0;
    font-size: 12px;
    line-height: 1.07143; }
  .form-group.label-floating input.form-control:-webkit-autofill ~ label.control-label label.control-label {
    top: -30px;
    left: 0;
    font-size: 12px;
    line-height: 1.07143; }

.form-group.form-group-sm {
  padding-bottom: 3px;
  margin: 21px 0 0 0; }
  .form-group.form-group-sm .form-control {
    margin-bottom: 3px; }
    .form-group.form-group-sm .form-control::-moz-placeholder {
      font-size: 11px;
      line-height: 1.5;
      color: #BDBDBD;
      font-weight: 400; }
    .form-group.form-group-sm .form-control:-ms-input-placeholder {
      font-size: 11px;
      line-height: 1.5;
      color: #BDBDBD;
      font-weight: 400; }
    .form-group.form-group-sm .form-control::-webkit-input-placeholder {
      font-size: 11px;
      line-height: 1.5;
      color: #BDBDBD;
      font-weight: 400; }
  .form-group.form-group-sm .checkbox label,
  .form-group.form-group-sm .radio label,
  .form-group.form-group-sm label {
    font-size: 11px;
    line-height: 1.5;
    color: #BDBDBD;
    font-weight: 400; }
  .form-group.form-group-sm label.control-label {
    font-size: 9px;
    line-height: 1.125;
    color: #BDBDBD;
    font-weight: 400;
    margin: 16px 0 0 0; }
  .form-group.form-group-sm .help-block {
    margin-top: 0;
    font-size: 9px; }
  .form-group.form-group-sm.label-floating label.control-label, .form-group.form-group-sm.label-placeholder label.control-label {
    top: -11px;
    font-size: 11px;
    line-height: 1.5; }
  .form-group.form-group-sm.label-static label.control-label, .form-group.form-group-sm.label-floating.is-focused label.control-label, .form-group.form-group-sm.label-floating:not(.is-empty) label.control-label {
    top: -25px;
    left: 0;
    font-size: 9px;
    line-height: 1.125; }
  .form-group.form-group-sm.label-floating input.form-control:-webkit-autofill ~ label.control-label label.control-label {
    top: -25px;
    left: 0;
    font-size: 9px;
    line-height: 1.125; }

.form-group.form-group-lg {
  padding-bottom: 9px;
  margin: 30px 0 0 0; }
  .form-group.form-group-lg .form-control {
    margin-bottom: 9px; }
    .form-group.form-group-lg .form-control::-moz-placeholder {
      font-size: 18px;
      line-height: 1.33333;
      color: #BDBDBD;
      font-weight: 400; }
    .form-group.form-group-lg .form-control:-ms-input-placeholder {
      font-size: 18px;
      line-height: 1.33333;
      color: #BDBDBD;
      font-weight: 400; }
    .form-group.form-group-lg .form-control::-webkit-input-placeholder {
      font-size: 18px;
      line-height: 1.33333;
      color: #BDBDBD;
      font-weight: 400; }
  .form-group.form-group-lg .checkbox label,
  .form-group.form-group-lg .radio label,
  .form-group.form-group-lg label {
    font-size: 18px;
    line-height: 1.33333;
    color: #BDBDBD;
    font-weight: 400; }
  .form-group.form-group-lg label.control-label {
    font-size: 14px;
    line-height: 1.0;
    color: #BDBDBD;
    font-weight: 400;
    margin: 16px 0 0 0; }
  .form-group.form-group-lg .help-block {
    margin-top: 0;
    font-size: 14px; }
  .form-group.form-group-lg.label-floating label.control-label, .form-group.form-group-lg.label-placeholder label.control-label {
    top: -5px;
    font-size: 18px;
    line-height: 1.33333; }
  .form-group.form-group-lg.label-static label.control-label, .form-group.form-group-lg.label-floating.is-focused label.control-label, .form-group.form-group-lg.label-floating:not(.is-empty) label.control-label {
    top: -32px;
    left: 0;
    font-size: 14px;
    line-height: 1.0; }
  .form-group.form-group-lg.label-floating input.form-control:-webkit-autofill ~ label.control-label label.control-label {
    top: -32px;
    left: 0;
    font-size: 14px;
    line-height: 1.0; }

select.form-control {
  border: 0;
  box-shadow: none;
  border-radius: 0; }
  .form-group.is-focused select.form-control {
    box-shadow: none;
    border-color: #D2D2D2; }
  select.form-control[multiple],
  .form-group.is-focused select.form-control[multiple] {
    height: 85px; }

.input-group-btn .btn {
  margin: 0 0 7px 0; }

.form-group.form-group-sm .input-group-btn .btn {
  margin: 0 0 3px 0; }

.form-group.form-group-lg .input-group-btn .btn {
  margin: 0 0 9px 0; }

.input-group .input-group-btn {
  padding: 0 12px; }

.input-group .input-group-addon {
  border: 0;
  background: transparent; }

.form-group input[type=file] {
  opacity: 0;
  position: absolute;
  top: 0;
  right: 0;
  bottom: 0;
  left: 0;
  width: 100%;
  height: 100%;
  z-index: 100; }

legend {
  border-bottom: 0; }

.list-group {
  border-radius: 0; }
  .list-group .list-group-item {
    background-color: transparent;
    overflow: hidden;
    border: 0;
    border-radius: 0;
    padding: 0 16px; }
    .list-group .list-group-item.baseline {
      border-bottom: 1px solid #cecece; }
      .list-group .list-group-item.baseline:last-child {
        border-bottom: none; }
    .list-group .list-group-item .row-picture, .list-group .list-group-item .row-action-primary {
      display: inline-block;
      padding-right: 16px; }
      .list-group .list-group-item .row-picture img, .list-group .list-group-item .row-picture i, .list-group .list-group-item .row-picture label, .list-group .list-group-item .row-action-primary img, .list-group .list-group-item .row-action-primary i, .list-group .list-group-item .row-action-primary label {
        display: block;
        width: 56px;
        height: 56px; }
      .list-group .list-group-item .row-picture img, .list-group .list-group-item .row-action-primary img {
        background: rgba(0, 0, 0, 0.1);
        padding: 1px; }
        .list-group .list-group-item .row-picture img.circle, .list-group .list-group-item .row-action-primary img.circle {
          border-radius: 100%; }
      .list-group .list-group-item .row-picture i, .list-group .list-group-item .row-action-primary i {
        background: rgba(0, 0, 0, 0.25);
        border-radius: 100%;
        text-align: center;
        line-height: 56px;
        font-size: 20px;
        color: white; }
      .list-group .list-group-item .row-picture label, .list-group .list-group-item .row-action-primary label {
        margin-left: 7px;
        margin-right: -7px;
        margin-top: 5px;
        margin-bottom: -5px; }
        .list-group .list-group-item .row-picture label .checkbox-material, .list-group .list-group-item .row-action-primary label .checkbox-material {
          left: -10px; }
    .list-group .list-group-item .row-content {
      display: inline-block;
      width: calc(100% - 92px);
      min-height: 66px; }
      .list-group .list-group-item .row-content .action-secondary {
        position: absolute;
        right: 16px;
        top: 16px; }
        .list-group .list-group-item .row-content .action-secondary i {
          font-size: 20px;
          color: rgba(0, 0, 0, 0.25);
          cursor: pointer; }
      .list-group .list-group-item .row-content .action-secondary ~ * {
        max-width: calc(100% - 30px); }
      .list-group .list-group-item .row-content .least-content {
        position: absolute;
        right: 16px;
        top: 0;
        color: rgba(0, 0, 0, 0.54);
        font-size: 14px; }
    .list-group .list-group-item .list-group-item-heading {
      color: rgba(0, 0, 0, 0.77);
      font-size: 20px;
      line-height: 29px; }
  .list-group .list-group-item.active:hover, .list-group .list-group-item.active:focus {
    background: rgba(0, 0, 0, 0.15);
    outline: 10px solid rgba(0, 0, 0, 0.15); }
  .list-group .list-group-item.active .list-group-item-heading, .list-group .list-group-item.active .list-group-item-text {
    color: rgba(0,0,0, 0.87); }
  .list-group .list-group-separator {
    clear: both;
    overflow: hidden;
    margin-top: 10px;
    margin-bottom: 10px; }
    .list-group .list-group-separator:before {
      content: "";
      width: calc(100% - 90px);
      border-bottom: 1px solid rgba(0, 0, 0, 0.1);
      float: right; }

.navbar {
  background-color: #337ab7;
  border: 0;
  border-radius: 0; }
  .navbar .navbar-brand {
    position: relative;
    height: 60px;
    line-height: 30px;
    color: inherit; }
    .navbar .navbar-brand:hover, .navbar .navbar-brand:focus {
      color: inherit;
      background-color: transparent; }
  .navbar .navbar-text {
    color: inherit;
    margin-top: 20px;
    margin-bottom: 20px; }
  .navbar .navbar-nav > li > a {
    color: inherit;
    padding-top: 20px;
    padding-bottom: 20px; }
    .navbar .navbar-nav > li > a:hover, .navbar .navbar-nav > li > a:focus {
      color: inherit;
      background-color: transparent; }
  .navbar .navbar-nav > .active > a, .navbar .navbar-nav > .active > a:hover, .navbar .navbar-nav > .active > a:focus {
    color: inherit;
    background-color: rgba(255, 255, 255, 0.1); }
  .navbar .navbar-nav > .disabled > a, .navbar .navbar-nav > .disabled > a:hover, .navbar .navbar-nav > .disabled > a:focus {
    color: inherit;
    background-color: transparent;
    opacity: 0.9; }
  .navbar .navbar-toggle {
    border: 0; }
    .navbar .navbar-toggle:hover, .navbar .navbar-toggle:focus {
      background-color: transparent; }
    .navbar .navbar-toggle .icon-bar {
      background-color: inherit;
      border: 1px solid; }
  .navbar .navbar-default .navbar-toggle,
  .navbar .navbar-inverse .navbar-toggle {
    border-color: transparent; }
  .navbar .navbar-collapse,
  .navbar .navbar-form {
    border-color: rgba(0, 0, 0, 0.1); }
  .navbar .navbar-nav > .open > a, .navbar .navbar-nav > .open > a:hover, .navbar .navbar-nav > .open > a:focus {
    background-color: transparent;
    color: inherit; }
  @media (max-width: 767px) {
    .navbar .navbar-nav .navbar-text {
      color: inherit;
      margin-top: 15px;
      margin-bottom: 15px; }
    .navbar .navbar-nav .open .dropdown-menu > .dropdown-header {
      border: 0;
      color: inherit; }
    .navbar .navbar-nav .open .dropdown-menu .divider {
      border-bottom: 1px solid;
      opacity: 0.08; }
    .navbar .navbar-nav .open .dropdown-menu > li > a {
      color: inherit; }
      .navbar .navbar-nav .open .dropdown-menu > li > a:hover, .navbar .navbar-nav .open .dropdown-menu > li > a:focus {
        color: inherit;
        background-color: transparent; }
    .navbar .navbar-nav .open .dropdown-menu > .active > a, .navbar .navbar-nav .open .dropdown-menu > .active > a:hover, .navbar .navbar-nav .open .dropdown-menu > .active > a:focus {
      color: inherit;
      background-color: transparent; }
    .navbar .navbar-nav .open .dropdown-menu > .disabled > a, .navbar .navbar-nav .open .dropdown-menu > .disabled > a:hover, .navbar .navbar-nav .open .dropdown-menu > .disabled > a:focus {
      color: inherit;
      background-color: transparent; } }
  .navbar .navbar-link {
    color: inherit; }
    .navbar .navbar-link:hover {
      color: inherit; }
  .navbar .btn-link {
    color: inherit; }
    .navbar .btn-link:hover, .navbar .btn-link:focus {
      color: inherit; }
    .navbar .btn-link[disabled]:hover, .navbar .btn-link[disabled]:focus,
    fieldset[disabled] .navbar .btn-link:hover,
    fieldset[disabled] .navbar .btn-link:focus {
      color: inherit; }
  .navbar .navbar-form {
    margin-top: 16px; }
    .navbar .navbar-form .form-group {
      margin: 0;
      padding: 0; }
      .navbar .navbar-form .form-group .material-input:before,
      .navbar .navbar-form .form-group.is-focused .material-input:after {
        background-color: inherit; }
    .navbar .navbar-form .form-group .form-control,
    .navbar .navbar-form .form-control {
      border-color: inherit;
      color: inherit;
      padding: 0;
      margin: 0;
      height: 28px;
      font-size: 14px;
      line-height: 1.42857; }
  .navbar, .navbar.navbar-default {
    background-color: #337ab7;
    color: rgba(255,255,255, 0.84); }
    .navbar .navbar-form .form-group input.form-control::-moz-placeholder,
    .navbar .navbar-form input.form-control::-moz-placeholder, .navbar.navbar-default .navbar-form .form-group input.form-control::-moz-placeholder,
    .navbar.navbar-default .navbar-form input.form-control::-moz-placeholder {
      color: rgba(255,255,255, 0.84); }
    .navbar .navbar-form .form-group input.form-control:-ms-input-placeholder,
    .navbar .navbar-form input.form-control:-ms-input-placeholder, .navbar.navbar-default .navbar-form .form-group input.form-control:-ms-input-placeholder,
    .navbar.navbar-default .navbar-form input.form-control:-ms-input-placeholder {
      color: rgba(255,255,255, 0.84); }
    .navbar .navbar-form .form-group input.form-control::-webkit-input-placeholder,
    .navbar .navbar-form input.form-control::-webkit-input-placeholder, .navbar.navbar-default .navbar-form .form-group input.form-control::-webkit-input-placeholder,
    .navbar.navbar-default .navbar-form input.form-control::-webkit-input-placeholder {
      color: rgba(255,255,255, 0.84); }
    .navbar .dropdown-menu, .navbar.navbar-default .dropdown-menu {
      border-radius: 4px; }
      .navbar .dropdown-menu li > a, .navbar.navbar-default .dropdown-menu li > a {
        font-size: 16px;
        padding: 13px 16px; }
        .navbar .dropdown-menu li > a:hover, .navbar .dropdown-menu li > a:focus, .navbar.navbar-default .dropdown-menu li > a:hover, .navbar.navbar-default .dropdown-menu li > a:focus {
          color: #337ab7;
          background-color: #eeeeee; }
      .navbar .dropdown-menu .active > a, .navbar.navbar-default .dropdown-menu .active > a {
        background-color: #337ab7;
        color: rgba(255,255,255, 0.84); }
        .navbar .dropdown-menu .active > a:hover, .navbar .dropdown-menu .active > a:focus, .navbar.navbar-default .dropdown-menu .active > a:hover, .navbar.navbar-default .dropdown-menu .active > a:focus {
          color: rgba(255,255,255, 0.84); }
  .navbar.navbar-inverse {
    background-color: #3f51b5;
    color: #ffffff; }
    .navbar.navbar-inverse .navbar-form .form-group input.form-control::-moz-placeholder,
    .navbar.navbar-inverse .navbar-form input.form-control::-moz-placeholder {
      color: #ffffff; }
    .navbar.navbar-inverse .navbar-form .form-group input.form-control:-ms-input-placeholder,
    .navbar.navbar-inverse .navbar-form input.form-control:-ms-input-placeholder {
      color: #ffffff; }
    .navbar.navbar-inverse .navbar-form .form-group input.form-control::-webkit-input-placeholder,
    .navbar.navbar-inverse .navbar-form input.form-control::-webkit-input-placeholder {
      color: #ffffff; }
    .navbar.navbar-inverse .dropdown-menu {
      border-radius: 4px; }
      .navbar.navbar-inverse .dropdown-menu li > a {
        font-size: 16px;
        padding: 13px 16px; }
        .navbar.navbar-inverse .dropdown-menu li > a:hover, .navbar.navbar-inverse .dropdown-menu li > a:focus {
          color: #3f51b5;
          background-color: #eeeeee; }
      .navbar.navbar-inverse .dropdown-menu .active > a {
        background-color: #3f51b5;
        color: #ffffff; }
        .navbar.navbar-inverse .dropdown-menu .active > a:hover, .navbar.navbar-inverse .dropdown-menu .active > a:focus {
          color: #ffffff; }
  .navbar.navbar-primary {
    background-color: #337ab7;
    color: rgba(255,255,255, 0.84); }
    .navbar.navbar-primary .navbar-form .form-group input.form-control::-moz-placeholder,
    .navbar.navbar-primary .navbar-form input.form-control::-moz-placeholder {
      color: rgba(255,255,255, 0.84); }
    .navbar.navbar-primary .navbar-form .form-group input.form-control:-ms-input-placeholder,
    .navbar.navbar-primary .navbar-form input.form-control:-ms-input-placeholder {
      color: rgba(255,255,255, 0.84); }
    .navbar.navbar-primary .navbar-form .form-group input.form-control::-webkit-input-placeholder,
    .navbar.navbar-primary .navbar-form input.form-control::-webkit-input-placeholder {
      color: rgba(255,255,255, 0.84); }
    .navbar.navbar-primary .dropdown-menu {
      border-radius: 4px; }
      .navbar.navbar-primary .dropdown-menu li > a {
        font-size: 16px;
        padding: 13px 16px; }
        .navbar.navbar-primary .dropdown-menu li > a:hover, .navbar.navbar-primary .dropdown-menu li > a:focus {
          color: #337ab7;
          background-color: #eeeeee; }
      .navbar.navbar-primary .dropdown-menu .active > a {
        background-color: #337ab7;
        color: rgba(255,255,255, 0.84); }
        .navbar.navbar-primary .dropdown-menu .active > a:hover, .navbar.navbar-primary .dropdown-menu .active > a:focus {
          color: rgba(255,255,255, 0.84); }
  .navbar.navbar-success {
    background-color: #5cb85c;
    color: rgba(255,255,255, 0.84); }
    .navbar.navbar-success .navbar-form .form-group input.form-control::-moz-placeholder,
    .navbar.navbar-success .navbar-form input.form-control::-moz-placeholder {
      color: rgba(255,255,255, 0.84); }
    .navbar.navbar-success .navbar-form .form-group input.form-control:-ms-input-placeholder,
    .navbar.navbar-success .navbar-form input.form-control:-ms-input-placeholder {
      color: rgba(255,255,255, 0.84); }
    .navbar.navbar-success .navbar-form .form-group input.form-control::-webkit-input-placeholder,
    .navbar.navbar-success .navbar-form input.form-control::-webkit-input-placeholder {
      color: rgba(255,255,255, 0.84); }
    .navbar.navbar-success .dropdown-menu {
      border-radius: 4px; }
      .navbar.navbar-success .dropdown-menu li > a {
        font-size: 16px;
        padding: 13px 16px; }
        .navbar.navbar-success .dropdown-menu li > a:hover, .navbar.navbar-success .dropdown-menu li > a:focus {
          color: #5cb85c;
          background-color: #eeeeee; }
      .navbar.navbar-success .dropdown-menu .active > a {
        background-color: #5cb85c;
        color: rgba(255,255,255, 0.84); }
        .navbar.navbar-success .dropdown-menu .active > a:hover, .navbar.navbar-success .dropdown-menu .active > a:focus {
          color: rgba(255,255,255, 0.84); }
  .navbar.navbar-info {
    background-color: #5bc0de;
    color: rgba(255,255,255, 0.84); }
    .navbar.navbar-info .navbar-form .form-group input.form-control::-moz-placeholder,
    .navbar.navbar-info .navbar-form input.form-control::-moz-placeholder {
      color: rgba(255,255,255, 0.84); }
    .navbar.navbar-info .navbar-form .form-group input.form-control:-ms-input-placeholder,
    .navbar.navbar-info .navbar-form input.form-control:-ms-input-placeholder {
      color: rgba(255,255,255, 0.84); }
    .navbar.navbar-info .navbar-form .form-group input.form-control::-webkit-input-placeholder,
    .navbar.navbar-info .navbar-form input.form-control::-webkit-input-placeholder {
      color: rgba(255,255,255, 0.84); }
    .navbar.navbar-info .dropdown-menu {
      border-radius: 4px; }
      .navbar.navbar-info .dropdown-menu li > a {
        font-size: 16px;
        padding: 13px 16px; }
        .navbar.navbar-info .dropdown-menu li > a:hover, .navbar.navbar-info .dropdown-menu li > a:focus {
          color: #5bc0de;
          background-color: #eeeeee; }
      .navbar.navbar-info .dropdown-menu .active > a {
        background-color: #5bc0de;
        color: rgba(255,255,255, 0.84); }
        .navbar.navbar-info .dropdown-menu .active > a:hover, .navbar.navbar-info .dropdown-menu .active > a:focus {
          color: rgba(255,255,255, 0.84); }
  .navbar.navbar-warning {
    background-color: #f0ad4e;
    color: rgba(255,255,255, 0.84); }
    .navbar.navbar-warning .navbar-form .form-group input.form-control::-moz-placeholder,
    .navbar.navbar-warning .navbar-form input.form-control::-moz-placeholder {
      color: rgba(255,255,255, 0.84); }
    .navbar.navbar-warning .navbar-form .form-group input.form-control:-ms-input-placeholder,
    .navbar.navbar-warning .navbar-form input.form-control:-ms-input-placeholder {
      color: rgba(255,255,255, 0.84); }
    .navbar.navbar-warning .navbar-form .form-group input.form-control::-webkit-input-placeholder,
    .navbar.navbar-warning .navbar-form input.form-control::-webkit-input-placeholder {
      color: rgba(255,255,255, 0.84); }
    .navbar.navbar-warning .dropdown-menu {
      border-radius: 4px; }
      .navbar.navbar-warning .dropdown-menu li > a {
        font-size: 16px;
        padding: 13px 16px; }
        .navbar.navbar-warning .dropdown-menu li > a:hover, .navbar.navbar-warning .dropdown-menu li > a:focus {
          color: #f0ad4e;
          background-color: #eeeeee; }
      .navbar.navbar-warning .dropdown-menu .active > a {
        background-color: #f0ad4e;
        color: rgba(255,255,255, 0.84); }
        .navbar.navbar-warning .dropdown-menu .active > a:hover, .navbar.navbar-warning .dropdown-menu .active > a:focus {
          color: rgba(255,255,255, 0.84); }
  .navbar.navbar-danger {
    background-color: #d9534f;
    color: rgba(255,255,255, 0.84); }
    .navbar.navbar-danger .navbar-form .form-group input.form-control::-moz-placeholder,
    .navbar.navbar-danger .navbar-form input.form-control::-moz-placeholder {
      color: rgba(255,255,255, 0.84); }
    .navbar.navbar-danger .navbar-form .form-group input.form-control:-ms-input-placeholder,
    .navbar.navbar-danger .navbar-form input.form-control:-ms-input-placeholder {
      color: rgba(255,255,255, 0.84); }
    .navbar.navbar-danger .navbar-form .form-group input.form-control::-webkit-input-placeholder,
    .navbar.navbar-danger .navbar-form input.form-control::-webkit-input-placeholder {
      color: rgba(255,255,255, 0.84); }
    .navbar.navbar-danger .dropdown-menu {
      border-radius: 4px; }
      .navbar.navbar-danger .dropdown-menu li > a {
        font-size: 16px;
        padding: 13px 16px; }
        .navbar.navbar-danger .dropdown-menu li > a:hover, .navbar.navbar-danger .dropdown-menu li > a:focus {
          color: #d9534f;
          background-color: #eeeeee; }
      .navbar.navbar-danger .dropdown-menu .active > a {
        background-color: #d9534f;
        color: rgba(255,255,255, 0.84); }
        .navbar.navbar-danger .dropdown-menu .active > a:hover, .navbar.navbar-danger .dropdown-menu .active > a:focus {
          color: rgba(255,255,255, 0.84); }
  .navbar-inverse {
    background-color: #3f51b5; }
  @media (max-width: 1199px) {
    .navbar .navbar-brand {
      height: 50px;
      padding: 10px 15px; }
    .navbar .navbar-form {
      margin-top: 10px; }
    .navbar .navbar-nav > li > a {
      padding-top: 15px;
      padding-bottom: 15px; } }

.dropdown-menu {
  border: 0;
  box-shadow: 0 2px 5px 0 rgba(0, 0, 0, 0.26); }
  .dropdown-menu .divider {
    background-color: rgba(0, 0, 0, 0.12); }
  .dropdown-menu li {
    overflow: hidden;
    position: relative; }
    .dropdown-menu li a:hover {
      background-color: transparent;
      color: #337ab7; }

.alert {
  border: 0;
  border-radius: 0; }
  .alert, .alert.alert-default {
    background-color: rgba(255,255,255, 0.84);
    color: rgba(255,255,255, 0.84); }
    .alert a, .alert .alert-link, .alert.alert-default a, .alert.alert-default .alert-link {
      color: rgba(255,255,255, 0.84); }
  .alert.alert-inverse {
    background-color: #3f51b5;
    color: #ffffff; }
    .alert.alert-inverse a, .alert.alert-inverse .alert-link {
      color: #ffffff; }
  .alert.alert-primary {
    background-color: #337ab7;
    color: rgba(255,255,255, 0.84); }
    .alert.alert-primary a, .alert.alert-primary .alert-link {
      color: rgba(255,255,255, 0.84); }
  .alert.alert-success {
    background-color: #5cb85c;
    color: rgba(255,255,255, 0.84); }
    .alert.alert-success a, .alert.alert-success .alert-link {
      color: rgba(255,255,255, 0.84); }
  .alert.alert-info {
    background-color: #5bc0de;
    color: rgba(255,255,255, 0.84); }
    .alert.alert-info a, .alert.alert-info .alert-link {
      color: rgba(255,255,255, 0.84); }
  .alert.alert-warning {
    background-color: #f0ad4e;
    color: rgba(255,255,255, 0.84); }
    .alert.alert-warning a, .alert.alert-warning .alert-link {
      color: rgba(255,255,255, 0.84); }
  .alert.alert-danger {
    background-color: #d9534f;
    color: rgba(255,255,255, 0.84); }
    .alert.alert-danger a, .alert.alert-danger .alert-link {
      color: rgba(255,255,255, 0.84); }
  .alert-info, .alert-danger, .alert-warning, .alert-success {
    color: rgba(255,255,255, 0.84); }
  .alert-default a, .alert-default .alert-link {
    color: rgba(0,0,0, 0.87); }

.progress {
  height: 4px;
  border-radius: 0;
  box-shadow: none;
  background: #c8c8c8; }
  .progress .progress-bar {
    box-shadow: none; }
    .progress .progress-bar, .progress .progress-bar.progress-bar-default {
      background-color: #337ab7; }
    .progress .progress-bar.progress-bar-inverse {
      background-color: #3f51b5; }
    .progress .progress-bar.progress-bar-primary {
      background-color: #337ab7; }
    .progress .progress-bar.progress-bar-success {
      background-color: #5cb85c; }
    .progress .progress-bar.progress-bar-info {
      background-color: #5bc0de; }
    .progress .progress-bar.progress-bar-warning {
      background-color: #f0ad4e; }
    .progress .progress-bar.progress-bar-danger {
      background-color: #d9534f; }

.text-warning {
  color: #f0ad4e; }

.text-primary {
  color: #337ab7; }

.text-danger {
  color: #d9534f; }

.text-success {
  color: #5cb85c; }

.text-info {
  color: #5bc0de; }

.nav-tabs {
  background: #337ab7; }
  .nav-tabs > li > a {
    color: #FFFFFF;
    border: 0;
    margin: 0; }
    .nav-tabs > li > a:hover {
      background-color: transparent;
      border: 0; }
  .nav-tabs > li > a, .nav-tabs > li > a:hover, .nav-tabs > li > a:focus {
    background-color: transparent !important;
    border: 0 !important;
    color: #FFFFFF !important;
    font-weight: 500; }
  .nav-tabs > li.disabled > a, .nav-tabs > li.disabled > a:hover {
    color: rgba(255, 255, 255, 0.5); }

.popover, .tooltip-inner {
  color: #ececec;
  line-height: 1em;
  background: rgba(101, 101, 101, 0.9);
  border: none;
  border-radius: 4px;
  box-shadow: 0 1px 6px 0 rgba(0, 0, 0, 0.12), 0 1px 6px 0 rgba(0, 0, 0, 0.12); }

.tooltip, .tooltip.in {
  opacity: 1; }

.popover .arrow, .popover .tooltip-arrow, .tooltip .arrow, .tooltip .tooltip-arrow {
  display: none; }

.card {
  /***** Make height equal to width (http://stackoverflow.com/a/6615994) ****/
  display: inline-block;
  position: relative;
  width: 100%;
  /**************************************************************************/
  border-radius: 4px;
  color: rgba(0,0,0, 0.87);
  background: #fff;
  box-shadow: 0 8px 17px 0 rgba(0, 0, 0, 0.2), 0 6px 20px 0 rgba(0, 0, 0, 0.19); }
  .card .card-height-indicator {
    margin-top: 100%; }
  .card .card-content {
    position: absolute;
    top: 0;
    bottom: 0;
    left: 0;
    right: 0; }
  .card .card-image {
    height: 60%;
    position: relative;
    overflow: hidden; }
    .card .card-image img {
      width: 100%;
      height: 100%;
      border-top-left-radius: 2px;
      border-top-right-radius: 2px;
      pointer-events: none; }
    .card .card-image .card-image-headline {
      position: absolute;
      bottom: 16px;
      left: 18px;
      color: #fff;
      font-size: 2em; }
  .card .card-body {
    height: 30%;
    padding: 18px; }
  .card .card-footer {
    height: 10%;
    padding: 18px; }
    .card .card-footer button, .card .card-footer a {
      margin: 0 !important;
      position: relative;
      bottom: 25px;
      width: auto; }
      .card .card-footer button:first-child, .card .card-footer a:first-child {
        left: -15px; }

.modal-content {
  box-shadow: 0 27px 24px 0 rgba(0, 0, 0, 0.2), 0 40px 77px 0 rgba(0, 0, 0, 0.22);
  border-radius: 4px;
  border: none; }
  .modal-content .modal-header {
    border-bottom: none;
    padding-top: 24px;
    padding-right: 24px;
    padding-bottom: 0;
    padding-left: 24px; }
  .modal-content .modal-body {
    padding-top: 24px;
    padding-right: 24px;
    padding-bottom: 16px;
    padding-left: 24px; }
  .modal-content .modal-footer {
    border-top: none;
    padding: 7px; }
    .modal-content .modal-footer button {
      margin: 0;
      padding-left: 16px;
      padding-right: 16px;
      width: auto; }
      .modal-content .modal-footer button.pull-left {
        padding-left: 5px;
        padding-right: 5px;
        position: relative;
        left: -5px; }
    .modal-content .modal-footer button + button {
      margin-bottom: 16px; }
  .modal-content .modal-body + .modal-footer {
    padding-top: 0; }

.modal-backdrop {
  background: rgba(0, 0, 0, 0.3); }

.panel {
  border-radius: 2px;
  border: 0;
  box-shadow: 0 1px 6px 0 rgba(0, 0, 0, 0.12), 0 1px 6px 0 rgba(0, 0, 0, 0.12); }
  .panel > .panel-heading,
  .panel.panel-default > .panel-heading {
    background-color: #eeeeee; }
  .panel.panel-inverse > .panel-heading {
    background-color: #3f51b5; }
  .panel.panel-primary > .panel-heading {
    background-color: #337ab7; }
  .panel.panel-success > .panel-heading {
    background-color: #5cb85c; }
  .panel.panel-info > .panel-heading {
    background-color: #5bc0de; }
  .panel.panel-warning > .panel-heading {
    background-color: #f0ad4e; }
  .panel.panel-danger > .panel-heading {
    background-color: #d9534f; }

[class*="panel-"] > .panel-heading {
  color: rgba(255,255,255, 0.84);
  border: 0; }

.panel-default > .panel-heading, .panel:not([class*="panel-"]) > .panel-heading {
  color: rgba(0,0,0, 0.87); }

.panel-footer {
  background-color: #eeeeee; }

hr.on-dark {
  color: #1a1a1a; }

hr.on-light {
  color: white; }

@media (-webkit-min-device-pixel-ratio: 0.75), (min--moz-device-pixel-ratio: 0.75), (-o-device-pixel-ratio: 3 / 4), (min-device-pixel-ratio: 0.75), (min-resolution: 0.75dppx), (-webkit-min-device-pixel-ratio: 1.25), (min-resolution: 120dpi) {
  hr {
    height: 0.75px; } }

@media (-webkit-min-device-pixel-ratio: 1), (min--moz-device-pixel-ratio: 1), (-o-device-pixel-ratio: 1), (min-device-pixel-ratio: 1), (min-resolution: 1dppx), (-webkit-min-device-pixel-ratio: 1.6666666666666667), (min-resolution: 160dpi) {
  hr {
    height: 1px; } }

@media (-webkit-min-device-pixel-ratio: 1.33), (min--moz-device-pixel-ratio: 1.33), (-o-device-pixel-ratio: 133 / 100), (min-device-pixel-ratio: 1.33), (min-resolution: 1.33dppx), (-webkit-min-device-pixel-ratio: 2.21875), (min-resolution: 213dpi) {
  hr {
    height: 1.333px; } }

@media (-webkit-min-device-pixel-ratio: 1.5), (min--moz-device-pixel-ratio: 1.5), (-o-device-pixel-ratio: 3 / 2), (min-device-pixel-ratio: 1.5), (min-resolution: 1.5dppx), (-webkit-min-device-pixel-ratio: 2.5), (min-resolution: 240dpi) {
  hr {
    height: 1.5px; } }

@media (-webkit-min-device-pixel-ratio: 2), (min--moz-device-pixel-ratio: 2), (-o-device-pixel-ratio: 2 / 1), (min-device-pixel-ratio: 2), (min-resolution: 2dppx), (-webkit-min-device-pixel-ratio: 3.9583333333333335), (min-resolution: 380dpi) {
  hr {
    height: 2px; } }

@media (-webkit-min-device-pixel-ratio: 3), (min--moz-device-pixel-ratio: 3), (-o-device-pixel-ratio: 3 / 1), (min-device-pixel-ratio: 3), (min-resolution: 3dppx), (-webkit-min-device-pixel-ratio: 5), (min-resolution: 480dpi) {
  hr {
    height: 3px; } }

@media (-webkit-min-device-pixel-ratio: 4), (min--moz-device-pixel-ratio: 4), (-o-device-pixel-ratio: 4 / 1), (min-device-pixel-ratio: 3), (min-resolution: 4dppx), (-webkit-min-device-pixel-ratio: 6.666666666666667), (min-resolution: 640dpi) {
  hr {
    height: 4px; } }

* {
  -webkit-tap-highlight-color: rgba(255, 255, 255, 0);
  -webkit-tap-highlight-color: transparent; }
  *:focus {
    outline: 0; }

.snackbar {
  background-color: #323232;
  color: rgba(255,255,255, 0.84);
  font-size: 14px;
  border-radius: 4px;
  box-shadow: 0 1px 6px 0 rgba(0, 0, 0, 0.12), 0 1px 6px 0 rgba(0, 0, 0, 0.12);
  height: 0;
  transition: transform 0.2s ease-in-out, opacity 0.2s ease-in, height 0s linear 0.2s, padding 0s linear 0.2s, height 0s linear 0.2s;
  transform: translateY(200%); }

.snackbar.snackbar-opened {
  padding: 14px 15px;
  margin-bottom: 20px;
  height: auto;
  transition: transform 0.2s ease-in-out, opacity 0.2s ease-in, height 0s linear 0.2s, height 0s linear 0.2s;
  transform: none; }

.snackbar.toast {
  border-radius: 200px; }

.noUi-target,
.noUi-target * {
  -webkit-touch-callout: none;
  -ms-touch-action: none;
  -webkit-user-select: none;
     -moz-user-select: none;
      -ms-user-select: none;
          user-select: none;
  box-sizing: border-box; }

.noUi-base {
  width: 100%;
  height: 100%;
  position: relative; }

.noUi-origin {
  position: absolute;
  right: 0;
  top: 0;
  left: 0;
  bottom: 0; }

.noUi-handle {
  position: relative;
  z-index: 1;
  box-sizing: border-box; }

.noUi-stacking .noUi-handle {
  z-index: 10; }

.noUi-state-tap .noUi-origin {
  transition: left 0.3s, top 0.3s; }

.noUi-state-drag * {
  cursor: inherit !important; }

.noUi-horizontal {
  height: 10px; }

.noUi-handle {
  box-sizing: border-box;
  width: 12px;
  height: 12px;
  left: -10px;
  top: -5px;
  cursor: ew-resize;
  border-radius: 100%;
  transition: all 0.2s ease-out;
  border: 1px solid; }

.noUi-vertical .noUi-handle {
  margin-left: 5px;
  cursor: ns-resize; }

.noUi-horizontal.noUi-extended {
  padding: 0 15px; }

.noUi-horizontal.noUi-extended .noUi-origin {
  right: -15px; }

.noUi-background {
  height: 2px;
  margin: 20px 0; }

.noUi-origin {
  margin: 0;
  border-radius: 0;
  height: 2px;
  background: #c8c8c8; }
  .noUi-origin[style^="left: 0"] .noUi-handle {
    background-color: #fff;
    border: 2px solid #c8c8c8; }
    .noUi-origin[style^="left: 0"] .noUi-handle.noUi-active {
      border-width: 1px; }

.noUi-target {
  border-radius: 4px; }

.noUi-horizontal {
  height: 2px;
  margin: 15px 0; }

.noUi-vertical {
  height: 100%;
  width: 2px;
  margin: 0 15px;
  display: inline-block; }

.noUi-handle.noUi-active {
  transform: scale3d(2.5, 2.5, 1); }

[disabled].noUi-slider {
  opacity: 0.5; }

[disabled] .noUi-handle {
  cursor: not-allowed; }

.slider {
  background: #c8c8c8; }

.slider.noUi-connect, .slider.slider-default.noUi-connect {
  background-color: #337ab7; }

.slider.slider-inverse.noUi-connect {
  background-color: #3f51b5; }

.slider.slider-primary.noUi-connect {
  background-color: #337ab7; }

.slider.slider-success.noUi-connect {
  background-color: #5cb85c; }

.slider.slider-info.noUi-connect {
  background-color: #5bc0de; }

.slider.slider-warning.noUi-connect {
  background-color: #f0ad4e; }

.slider.slider-danger.noUi-connect {
  background-color: #d9534f; }

.slider .noUi-connect,
.slider.slider-default .noUi-connect {
  background-color: #337ab7; }

.slider.slider-inverse .noUi-connect {
  background-color: #3f51b5; }

.slider.slider-primary .noUi-connect {
  background-color: #337ab7; }

.slider.slider-success .noUi-connect {
  background-color: #5cb85c; }

.slider.slider-info .noUi-connect {
  background-color: #5bc0de; }

.slider.slider-warning .noUi-connect {
  background-color: #f0ad4e; }

.slider.slider-danger .noUi-connect {
  background-color: #d9534f; }

.slider .noUi-handle,
.slider.slider-default .noUi-handle {
  background-color: #337ab7; }

.slider.slider-inverse .noUi-handle {
  background-color: #3f51b5; }

.slider.slider-primary .noUi-handle {
  background-color: #337ab7; }

.slider.slider-success .noUi-handle {
  background-color: #5cb85c; }

.slider.slider-info .noUi-handle {
  background-color: #5bc0de; }

.slider.slider-warning .noUi-handle {
  background-color: #f0ad4e; }

.slider.slider-danger .noUi-handle {
  background-color: #d9534f; }

.slider .noUi-handle,
.slider.slider-default .noUi-handle {
  border-color: #337ab7; }

.slider.slider-inverse .noUi-handle {
  border-color: #3f51b5; }

.slider.slider-primary .noUi-handle {
  border-color: #337ab7; }

.slider.slider-success .noUi-handle {
  border-color: #5cb85c; }

.slider.slider-info .noUi-handle {
  border-color: #5bc0de; }

.slider.slider-warning .noUi-handle {
  border-color: #f0ad4e; }

.slider.slider-danger .noUi-handle {
  border-color: #d9534f; }

.selectize-control.single, .selectize-control.multi {
  padding: 0; }
  .selectize-control.single .selectize-input, .selectize-control.single .selectize-input.input-active, .selectize-control.multi .selectize-input, .selectize-control.multi .selectize-input.input-active {
    cursor: text;
    background: transparent;
    box-shadow: none;
    border: 0;
    padding: 0;
    height: 100%;
    font-size: 14px;
    line-height: 30px; }
    .selectize-control.single .selectize-input .has-items, .selectize-control.single .selectize-input.input-active .has-items, .selectize-control.multi .selectize-input .has-items, .selectize-control.multi .selectize-input.input-active .has-items {
      padding: 0; }
    .selectize-control.single .selectize-input:after, .selectize-control.single .selectize-input.input-active:after, .selectize-control.multi .selectize-input:after, .selectize-control.multi .selectize-input.input-active:after {
      right: 5px;
      position: absolute;
      font-size: 25px;
      content: "\e5c5";
      font-family: 'Material Icons';
      speak: none;
      font-style: normal;
      font-weight: normal;
      font-variant: normal;
      text-transform: none;
      line-height: 1;
      -webkit-font-smoothing: antialiased;
      -moz-osx-font-smoothing: grayscale; }
    .selectize-control.single .selectize-input input, .selectize-control.single .selectize-input.input-active input, .selectize-control.multi .selectize-input input, .selectize-control.multi .selectize-input.input-active input {
      font-size: 14px;
      outline: 0;
      border: 0;
      background: transparent; }
    .selectize-control.single .selectize-input.label-floating-fix input, .selectize-control.single .selectize-input.input-active.label-floating-fix input, .selectize-control.multi .selectize-input.label-floating-fix input, .selectize-control.multi .selectize-input.input-active.label-floating-fix input {
      opacity: 0; }
    .selectize-control.single .selectize-input > div, .selectize-control.single .selectize-input > .item, .selectize-control.single .selectize-input.input-active > div, .selectize-control.single .selectize-input.input-active > .item, .selectize-control.multi .selectize-input > div, .selectize-control.multi .selectize-input > .item, .selectize-control.multi .selectize-input.input-active > div, .selectize-control.multi .selectize-input.input-active > .item {
      display: inline-block;
      margin: 0 8px 3px 0;
      padding: 0;
      background: transparent;
      border: 0; }
      .selectize-control.single .selectize-input > div:after, .selectize-control.single .selectize-input > .item:after, .selectize-control.single .selectize-input.input-active > div:after, .selectize-control.single .selectize-input.input-active > .item:after, .selectize-control.multi .selectize-input > div:after, .selectize-control.multi .selectize-input > .item:after, .selectize-control.multi .selectize-input.input-active > div:after, .selectize-control.multi .selectize-input.input-active > .item:after {
        content: ","; }
      .selectize-control.single .selectize-input > div:last-of-type:after, .selectize-control.single .selectize-input > .item:last-of-type:after, .selectize-control.single .selectize-input.input-active > div:last-of-type:after, .selectize-control.single .selectize-input.input-active > .item:last-of-type:after, .selectize-control.multi .selectize-input > div:last-of-type:after, .selectize-control.multi .selectize-input > .item:last-of-type:after, .selectize-control.multi .selectize-input.input-active > div:last-of-type:after, .selectize-control.multi .selectize-input.input-active > .item:last-of-type:after {
        content: ""; }
      .selectize-control.single .selectize-input > div.active, .selectize-control.single .selectize-input > .item.active, .selectize-control.single .selectize-input.input-active > div.active, .selectize-control.single .selectize-input.input-active > .item.active, .selectize-control.multi .selectize-input > div.active, .selectize-control.multi .selectize-input > .item.active, .selectize-control.multi .selectize-input.input-active > div.active, .selectize-control.multi .selectize-input.input-active > .item.active {
        font-weight: bold;
        background: transparent;
        border: 0; }
  .selectize-control.single .selectize-dropdown, .selectize-control.multi .selectize-dropdown {
    position: absolute;
    z-index: 1000;
    border: 0;
    width: 100% !important;
    left: 0 !important;
    height: auto;
    background-color: #FFF;
    box-shadow: 0 1px 3px rgba(0, 0, 0, 0.12), 0 1px 2px rgba(0, 0, 0, 0.24);
    border-radius: 4px;
    padding: 0;
    margin-top: 3px; }
    .selectize-control.single .selectize-dropdown .active, .selectize-control.multi .selectize-dropdown .active {
      background-color: inherit; }
    .selectize-control.single .selectize-dropdown .highlight, .selectize-control.multi .selectize-dropdown .highlight {
      background-color: #d5d8ff; }
    .selectize-control.single .selectize-dropdown .selected, .selectize-control.single .selectize-dropdown .selected.active, .selectize-control.multi .selectize-dropdown .selected, .selectize-control.multi .selectize-dropdown .selected.active {
      background-color: #EEEEEE; }
    .selectize-control.single .selectize-dropdown [data-selectable], .selectize-control.single .selectize-dropdown .optgroup-header, .selectize-control.multi .selectize-dropdown [data-selectable], .selectize-control.multi .selectize-dropdown .optgroup-header {
      padding: 10px 20px;
      cursor: pointer; }
  .selectize-control.single .dropdown-active ~ .selectize-dropdown, .selectize-control.multi .dropdown-active ~ .selectize-dropdown {
    display: block; }

.dropdownjs::after {
  right: 5px;
  top: 3px;
  font-size: 25px;
  position: absolute;
  font-family: 'Material Icons';
  font-style: normal;
  font-weight: 400;
  content: "\e5c5";
  pointer-events: none;
  color: #757575; }

.withripple {
  position: relative; }

.ripple-container {
  position: absolute;
  top: 0;
  left: 0;
  z-index: 1;
  width: 100%;
  height: 100%;
  overflow: hidden;
  border-radius: inherit;
  pointer-events: none; }

.ripple {
  position: absolute;
  width: 20px;
  height: 20px;
  margin-left: -10px;
  margin-top: -10px;
  border-radius: 100%;
  background-color: #000;
  background-color: rgba(0, 0, 0, 0.05);
  transform: scale(1);
  transform-origin: 50%;
  opacity: 0;
  pointer-events: none; }

.ripple.ripple-on {
  transition: opacity 0.15s ease-in 0s, transform 0.5s cubic-bezier(0.4, 0, 0.2, 1) 0.1s;
  opacity: 0.1; }

.ripple.ripple-out {
  transition: opacity 0.1s linear 0s !important;
  opacity: 0; }

/* -------------------------------- 

Primary style

-------------------------------- */
*, *::after, *::before {
  box-sizing: border-box; }

html {
  font-size: 62.5%; }

body {
  font-size: 1.6rem;
  font-family: "PT Sans", sans-serif;
  color: #33414a;
  background-color: #f2f2f2; }

a {
  color: #7e4d7e;
  text-decoration: none; }

/* -------------------------------- 

Main Components 

-------------------------------- */
header {
  position: fixed;
  z-index: 3;
  height: 50px;
  width: 100%;
  top: 0;
  left: 0;
  background-color: #33414a;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
  /* Force Hardware Acceleration */
  transform: translateZ(0);
  -webkit-backface-visibility: hidden;
  backface-visibility: hidden;
  transition: transform 0.3s; }

header.nav-is-visible {
  transform: translateX(-260px); }

header::before {
  /* never visible - this is used in jQuery to check the current MQ */
  display: none;
  content: 'mobile'; }

@media only screen and (min-width: 1024px) {
  header {
    height: 80px; }
  header.nav-is-visible {
    transform: translateX(0); }
  header::before {
    content: 'desktop'; } }

.cd-logo {
  display: inline-block;
  height: 100%;
  margin-left: 15px;
  /* remove jump on iOS devices - when we fire the navigation */
  transform: translateZ(0);
  -webkit-backface-visibility: hidden;
  backface-visibility: hidden; }

.cd-logo img {
  display: block;
  max-width: 100%;
  margin-top: 14px; }

@media only screen and (min-width: 1024px) {
  .cd-logo {
    position: absolute;
    z-index: 2;
    margin-left: 5%; }
  .cd-logo img {
    margin-top: 29px; } }

.cd-nav-trigger {
  display: block;
  position: absolute;
  right: 0;
  top: 0;
  height: 100%;
  width: 50px;
  /* hide text */
  overflow: hidden;
  white-space: nowrap;
  color: transparent; }

.cd-nav-trigger span {
  /* hamburger icon created in CSS */
  position: absolute;
  height: 2px;
  width: 20px;
  top: 50%;
  margin-top: -1px;
  left: 50%;
  margin-left: -10px;
  transition: background-color 0.3s 0.3s;
  background-color: #ffffff; }

.cd-nav-trigger span::before, .cd-nav-trigger span::after {
  /* upper and lower lines of the menu icon */
  content: '';
  position: absolute;
  width: 100%;
  height: 100%;
  background-color: #ffffff;
  /* Force Hardware Acceleration */
  transform: translateZ(0);
  -webkit-backface-visibility: hidden;
  backface-visibility: hidden;
  transition: transform 0.3s 0.3s; }

.cd-nav-trigger span::before {
  transform: translateY(-6px); }

.cd-nav-trigger span::after {
  transform: translateY(6px); }

.nav-is-visible .cd-nav-trigger span {
  background-color: rgba(255, 255, 255, 0); }

.nav-is-visible .cd-nav-trigger span::before {
  transform: translateY(0) rotate(-45deg); }

.nav-is-visible .cd-nav-trigger span::after {
  transform: translateY(0) rotate(45deg); }

@media only screen and (min-width: 1024px) {
  .cd-nav-trigger {
    display: none; } }

.cd-main-nav {
  position: fixed;
  z-index: 1;
  top: 0;
  right: 0;
  width: 260px;
  height: 100vh;
  overflow: auto;
  -webkit-overflow-scrolling: touch;
  visibility: hidden;
  background: #1e262c;
  transition: visibility 0s 0.3s; }

.cd-main-nav a {
  display: block;
  font-size: 1.8rem;
  padding: .9em 2em .9em 1em;
  border-bottom: 1px solid #33414a;
  color: #ffffff;
  transition: transform 0.3s, opacity 0.3s; }

.cd-main-nav li ul {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  transition: transform 0.3s;
  transform: translateX(260px); }

.cd-main-nav.nav-is-visible {
  visibility: visible;
  transition: visibility 0s 0s; }

.cd-main-nav.moves-out > li > a {
  /* push the navigation items to the left - and lower down opacity - when secondary nav slides in */
  transform: translateX(-100%);
  opacity: 0; }

.cd-main-nav.moves-out > li > ul {
  transform: translateX(0); }

.cd-main-nav .cd-subnav-trigger, .cd-main-nav .go-back a {
  position: relative; }

.cd-main-nav .cd-subnav-trigger::before, .cd-main-nav .cd-subnav-trigger::after, .cd-main-nav .go-back a::before, .cd-main-nav .go-back a::after {
  /* arrow icon in CSS */
  content: '';
  position: absolute;
  top: 50%;
  margin-top: -1px;
  display: inline-block;
  height: 2px;
  width: 10px;
  background: #485c68;
  -webkit-backface-visibility: hidden;
  backface-visibility: hidden; }

.cd-main-nav .cd-subnav-trigger::before, .cd-main-nav .go-back a::before {
  transform: rotate(45deg); }

.cd-main-nav .cd-subnav-trigger::after, .cd-main-nav .go-back a::after {
  transform: rotate(-45deg); }

.cd-main-nav .cd-subnav-trigger::before, .cd-main-nav .cd-subnav-trigger::after {
  /* arrow goes on the right side - children navigation */
  right: 20px;
  transform-origin: 9px 50%; }

.cd-main-nav .go-back a {
  padding-left: 2em; }

.cd-main-nav .go-back a::before, .cd-main-nav .go-back a::after {
  /* arrow goes on the left side - go back button */
  left: 20px;
  transform-origin: 1px 50%; }

.cd-main-nav .placeholder {
  /* never visible or clickable- it is used to take up the same space as the .cd-subnav-trigger */
  display: none; }

@media only screen and (min-width: 1024px) {
  .cd-main-nav {
    position: static;
    visibility: visible;
    width: 100%;
    height: 80px;
    line-height: 80px;
    /* padding left = logo size + logo left position*/
    padding: 0 5% 0 calc(5% + 124px);
    background: transparent;
    text-align: right; }
  .cd-main-nav li {
    display: inline-block;
    height: 100%;
    padding: 0 .4em; }
  .cd-main-nav li a {
    display: inline-block;
    padding: .8em;
    line-height: 1;
    font-size: 1.6rem;
    border-bottom: none;
    /* Prevent .cd-subnav-trigger flicker is Safari */
    transform: translateZ(0);
    -webkit-backface-visibility: hidden;
    backface-visibility: hidden;
    transition: opacity 0.2s; }
  .cd-main-nav li a:not(.cd-subnav-trigger):hover {
    -webkit-backface-visibility: hidden;
    backface-visibility: hidden;
    opacity: .6; }
  .cd-main-nav .go-back {
    display: none; }
  .cd-main-nav .cd-subnav-trigger {
    z-index: 1;
    border: 1px solid rgba(255, 255, 255, 0.2);
    border-radius: 5em;
    transition: border 0.3s; }
  .cd-main-nav .cd-subnav-trigger:hover {
    border-color: rgba(255, 255, 255, 0.4); }
  .cd-main-nav .cd-subnav-trigger::before, .cd-main-nav .cd-subnav-trigger::after {
    top: 22px;
    right: 17px;
    background-color: #ffffff;
    /* change transform-origin to rotate the arrow */
    transform-origin: 50% 50%;
    transition: transform 0.3s, width 0.3s, right 0.3s; }
  .cd-main-nav .cd-subnav-trigger::before {
    right: 23px; }
  .cd-main-nav .cd-subnav-trigger, .cd-main-nav .placeholder {
    padding-right: 2.4em;
    padding-left: 1.1em; }
  .cd-main-nav li ul {
    height: 80px;
    background-color: #7e4d7e;
    /* padding left = logo size + logo left position*/
    padding: 0 5% 0 calc(5% + 124px);
    transform: translateY(-80px);
    transition: transform 0.3s 0.2s; }
  .cd-main-nav li ul li {
    opacity: 0;
    transform: translateY(-20px);
    transition: transform 0.3s 0s, opacity 0.3s 0s; }
  .cd-main-nav .placeholder {
    /* never visible or clickable- it is used to take up the same space as the .cd-subnav-trigger */
    display: block;
    visibility: hidden;
    opacity: 0;
    pointer-event: none; }
  .cd-main-nav.moves-out > li > a {
    transform: translateX(0);
    opacity: 1; }
  .cd-main-nav.moves-out > li > ul {
    transition: transform 0.3s;
    transform: translateY(0); }
  .cd-main-nav.moves-out > li ul li {
    opacity: 1;
    transform: translateY(0);
    transition: transform 0.3s 0.2s, opacity 0.3s 0.2s; }
  .cd-main-nav.moves-out .cd-subnav-trigger::before, .cd-main-nav.moves-out .cd-subnav-trigger::after {
    width: 14px;
    right: 17px; }
  .cd-main-nav.moves-out .cd-subnav-trigger::before {
    transform: rotate(225deg); }
  .cd-main-nav.moves-out .cd-subnav-trigger::after {
    transform: rotate(135deg); } }

.cd-main-content::before {
  /* never visible - this is used in jQuery to check the current MQ */
  display: none;
  content: 'mobile'; }

@media only screen and (min-width: 1024px) {
  .cd-main-content::before {
    content: 'desktop'; } }

.cd-main-content {
  position: relative;
  z-index: 2;
  min-height: 100vh;
  padding-top: 50px;
  background-color: #f2f2f2;
  transition: transform 0.3s; }

.cd-main-content.nav-is-visible {
  transform: translateX(-260px); }

@media only screen and (min-width: 1024px) {
  .cd-main-content {
    padding-top: 80px; }
  .cd-main-content.nav-is-visible {
    transform: translateX(0); } }

.no-js .cd-nav-trigger, .no-js .cd-subnav-trigger {
  display: none; }

.no-js header {
  position: relative;
  height: auto; }

.no-js .cd-logo img {
  margin-bottom: 14px; }

.no-js .cd-main-nav {
  position: static;
  width: 100%;
  height: auto;
  visibility: visible;
  overflow: visible; }

.no-js .cd-main-nav li {
  display: inline-block; }

.no-js .cd-main-nav li:last-child {
  display: block; }

.no-js .cd-main-nav .go-back {
  display: none; }

.no-js .cd-main-nav li ul {
  position: static;
  width: 100%;
  transform: translateX(0); }

@media only screen and (min-width: 1024px) {
  .no-js .cd-main-nav {
    height: 80px; }
  .no-js .cd-main-nav li ul {
    position: absolute;
    top: 80px; }
  .no-js .cd-main-nav li ul li {
    transform: translateY(0);
    opacity: 1; }
  .no-js .cd-main-nav li ul li:last-child {
    display: none; } }

.no-js .cd-main-content {
  padding-top: 0; }

@media only screen and (min-width: 1024px) {
  .no-js .cd-main-content {
    padding-top: 80px; } }

/*@import "../Content/Flaticon/flaticon.css";*/
/* Komponenty */
#breadcrumb {
  padding: 10px 0;
  /*margin-top: 13px;*/ }
  #breadcrumb .breadcrumb-item {
    display: inline-block; }
    #breadcrumb .breadcrumb-item a, #breadcrumb .breadcrumb-item span {
      color: #a5a5a5;
      text-decoration: none;
      position: relative;
      margin: 0 2px; }
    #breadcrumb .breadcrumb-item a:hover {
      text-decoration: none; }
    #breadcrumb .breadcrumb-item span:before {
      font-size: 13px; }
    #breadcrumb .breadcrumb-item.level0 a span {
      color: #a5a5a5; }
    #breadcrumb .breadcrumb-item.level0 span:before {
      font-size: 15px; }
    #breadcrumb .breadcrumb-item.level1 a span {
      color: #727272; }
    #breadcrumb .breadcrumb-item.level2 a span {
      color: #3f3f3f; }
    #breadcrumb .breadcrumb-item.level3 a span {
      color: #0c0c0c; }
    #breadcrumb .breadcrumb-item.level4 a span {
      color: black; }

header .search-input {
  padding-right: 0;
  margin-right: 0; }
  header .search-input input[type="text"] {
    border-right: none;
    background-color: #eeeeee; }

header .search-button {
  padding-left: 0;
  margin-left: 0; }
  header .search-button .btn.nprogress-link {
    margin: 0;
    background-color: #fff;
    height: 40px;
    border-radius: 0;
    border: 1px solid #cecece;
    border-left: none; }
    header .search-button .btn.nprogress-link:hover {
      background-color: #2167ad; }

.language-switch {
  position: absolute;
  left: 0; }
  .language-switch li {
    list-style-type: none;
    display: inline-block;
    margin-right: 14px; }
    .language-switch li.active a {
      border-bottom: 7px solid #fff; }

/* Make clicks pass-through */
#nprogress {
  pointer-events: none; }

#nprogress .bar {
  background: #2167AD;
  position: fixed;
  z-index: 1031;
  top: 0;
  left: 0;
  width: 100%;
  height: 4px; }

/* Fancy blur effect */
#nprogress .peg {
  display: block;
  position: absolute;
  right: 0px;
  width: 100px;
  height: 100%;
  box-shadow: 0 0 10px #2167AD, 0 0 5px #2167AD;
  opacity: 1.0;
  transform: rotate(3deg) translate(0px, -4px); }

/* Remove these to get rid of the spinner */
#nprogress .spinner {
  display: block;
  position: fixed;
  z-index: 1031;
  top: 15px;
  right: 15px; }

#nprogress .spinner-icon {
  width: 18px;
  height: 18px;
  box-sizing: border-box;
  border: solid 2px transparent;
  border-top-color: #222;
  border-left-color: #222;
  border-radius: 50%;
  animation: nprogress-spinner 400ms linear infinite; }

.nprogress-custom-parent {
  overflow: hidden;
  position: relative; }

.nprogress-custom-parent #nprogress .spinner,
.nprogress-custom-parent #nprogress .bar {
  position: absolute; }

@keyframes nprogress-spinner {
  0% {
    transform: rotate(0deg); }
  100% {
    transform: rotate(360deg); } }

/* Layout */
/*
===========================================
                HEADER
===========================================
*/
/*@import "_variables.scss";
@import "bootstrap/_variables.scss";*/
/*
===========================================
                MAIN
===========================================
*/
body {
  font-size: 14px;
  line-height: 1.6;
  font-family: "OpenSansRegular", "Lato","HelveticaNeue","Helvetica Neue",Helvetica,Arial,sans-serif;
  color: #4f4f4f;
  font-weight: 400;
  background: none;
  /*CMS containter*/ }
  body h1 {
    color: #000; }
    @media (max-width: 991px) {
      body h1 {
        font-size: 30px; } }
    @media (max-width: 767px) {
      body h1 {
        font-size: 26px; } }
  body h2 {
    font-size: 1.7em; }
    @media (max-width: 991px) {
      body h2 {
        font-size: 23px; } }
    @media (max-width: 767px) {
      body h2 {
        font-size: 21px; } }
  @media (max-width: 991px) {
    body h3 {
      font-size: 20px; } }
  @media (max-width: 767px) {
    body h3 {
      font-size: 18px; } }
  body .content {
    margin-top: 55px;
    margin-bottom: 20px; }
  body .cms-content {
    margin-top: 20px;
    margin-bottom: 20px; }
    body .cms-content * {
      color: #fff; }

.btn.btn-raised.btn-light {
  background-color: #e5e8ef;
  color: #000;
  border-radius: 0;
  padding: 15px;
  padding-left: 50px;
  padding-right: 50px;
  margin-top: 30px;
  display: inline-block; }

.btn.btn-raised.btn-dark {
  background-color: #001e5a;
  color: #fff;
  border-radius: 0;
  padding: 15px;
  padding-left: 50px;
  padding-right: 50px;
  margin-top: 30px; }

.btn.btn-raised.btn-dark:hover {
  background-color: #002c83; }

.btn.btn-raised.btn-dark:focus {
  background-color: #002c83; }

.btn.btn-raised.btn-light:hover {
  background-color: #fefeff; }

.cd-main-content {
  min-height: inherit; }

.next-rows-wrap {
  display: block;
  text-align: center; }
  .next-rows-wrap .next-rows {
    position: relative;
    margin-bottom: 65px; }
    .next-rows-wrap .next-rows .icon {
      position: absolute;
      bottom: -50px;
      left: 50%;
      margin-left: -25px; }
      .next-rows-wrap .next-rows .icon:before {
        font-size: 40px;
        color: #000; }

#main {
  margin-top: 110px;
  /*margin-top: 158px;*/
  /*@media (max-width: $screen-md-max) {
        margin-top: 175px;
    }

    @media (max-width: $screen-sm-max) {
        margin-top: 215px;
    }

    @media (max-width: $screen-xs-max) {
        margin-top: 121px;
    }*/
  padding: 0;
  overflow: hidden; }
  #main #main-content .productForm button {
    border: 0;
    background-color: #34c471;
    color: #fff;
    padding: 3px 9px;
    text-transform: uppercase;
    border-radius: 5px;
    font-size: 15px;
    line-height: 32px; }
    #main #main-content .productForm button i {
      font-size: 20px; }
    #main #main-content .productForm button:hover i {
      font-size: 25px; }
  @media (max-width: 1199px) {
    #main #main-content .productForm {
      text-align: center; } }
  #main .background-elipse {
    background: #000d25;
    background: linear-gradient(to right, #000715 0%, #162743 42%, #162743 59%, #000715 100%);
    width: 100%;
    display: block;
    overflow: hidden;
    z-index: -2;
    padding-top: 18px;
    position: absolute; }
    @media (max-width: 767px) {
      #main .background-elipse {
        display: none; } }
    #main .background-elipse .shadow {
      display: inline-block;
      position: relative;
      box-shadow: #949494 3px 3px 3px inset;
      background-color: transparent;
      border-radius: 248% / 100%;
      border-bottom-left-radius: 0;
      width: 160%;
      margin: 0 auto;
      margin-left: -30%;
      overflow: hidden; }
    #main .background-elipse.contact .shadow {
      box-shadow: none; }
      #main .background-elipse.contact .shadow .background-home {
        background: #000d25;
        background: linear-gradient(to right, #000d25 0%, #162743 42%, #162743 59%, #000d25 100%); }
    @media (max-width: 767px) {
      #main .background-elipse.contact {
        display: block; } }
    #main .background-elipse .background-home {
      /*max-width: 100%;*/
      position: relative;
      z-index: -1;
      width: 1920px;
      height: 1269px;
      /*max-height: 500px;*/
      margin: 0 auto;
      display: block;
      /*margin-left: 0;*/
      /*border-radius: 248% / 100%;
            border-bottom-left-radius: 0;
            border-bottom-right-radius: 0;*/
      background-color: #fff; }

.cc_banner-wrapper .cc_banner.cc_container.cc_container--open {
  background: #001e5a !important; }

.cc_banner-wrapper .cc_container .cc_btn, .cc_banner-wrapper .cc_container .cc_btn:visited {
  background-color: #2167AD;
  color: #fff; }

/*@import "bootstrap/_variables.scss";
@import "_variables.scss";*/
header {
  height: auto;
  /*position: relative;*/
  /*overflow: hidden;*/
  background-color: #8b96aa; }
  header #search-area {
    background: #8b96aa;
    background: linear-gradient(to right, #8b96aa 1%, #c2c7cd 39%, #c9c9c9 50%, #c2c7cd 61%, #8b96aa 100%);
    z-index: 5;
    position: relative;
    height: 50px; }
    header #search-area .phone a, header #search-area .email a {
      text-decoration: none;
      color: #485872; }
    header #search-area .phone .pre, header #search-area .email .pre {
      color: #5c7091; }
    header #search-area .phone span, header #search-area .email span {
      margin: 0;
      padding: 0;
      height: 100%;
      line-height: 45px;
      font-size: 17px; }
      header #search-area .phone span.icon, header #search-area .email span.icon {
        margin-right: 3px;
        vertical-align: -2px;
        color: #5c7091; }
    header #search-area .search-input {
      margin-top: 4px; }
    header #search-area .search-button {
      margin-top: 4px; }
  @media (max-width: 991px) {
    header .navigation-inner {
      height: 54px; } }
  @media (max-width: 767px) {
    header .navigation-inner {
      height: 60px; } }
  header .navigation-inner .cd-nav-trigger {
    right: 10px;
    background-color: #eaeff3; }
    header .navigation-inner .cd-nav-trigger span {
      background-color: #000; }
      header .navigation-inner .cd-nav-trigger span:before {
        background-color: #000; }
      header .navigation-inner .cd-nav-trigger span:after {
        background-color: #000; }
  header .cd-main-nav-wrapper {
    background-color: #eaeff3; }
    header .cd-main-nav-wrapper .cd-main-nav {
      height: 60px;
      line-height: 60px;
      padding: 0;
      margin: 0; }
      header .cd-main-nav-wrapper .cd-main-nav li a {
        color: #000;
        border-top: 5px solid transparent;
        transition: border-color ease-in-out .2s; }
        header .cd-main-nav-wrapper .cd-main-nav li a:hover {
          border-top: 5px solid #000;
          text-decoration: none; }
      header .cd-main-nav-wrapper .cd-main-nav li ul {
        height: 60px;
        line-height: 60px;
        padding: 0;
        margin: 0; }
      header .cd-main-nav-wrapper .cd-main-nav li img {
        width: 72px; }
      header .cd-main-nav-wrapper .cd-main-nav li.active a {
        border-top: 5px solid #000;
        text-decoration: none; }
  header .cd-logo {
    top: -75%;
    z-index: 9;
    margin: 0; }
    header .cd-logo a {
      background-color: #fff;
      border-radius: 50%;
      padding: 10px;
      display: block;
      text-align: center;
      width: 90px;
      height: 90px; }
      @media (max-width: 991px) {
        header .cd-logo a {
          width: 50px;
          height: 50px; } }
    header .cd-logo img {
      margin: 0;
      width: 100%;
      height: 100%; }

@media (max-width: 1023px) and (min-width: 992px) {
  #navigation .img {
    height: 50px; } }

@media (min-width: 992px) and (max-width: 1199px) {
  .cd-main-nav #aeo {
    display: none; } }

.cd-main-nav #aeo .aeo-logo {
  display: inline; }

@media (max-width: 1023px) and (min-width: 992px) {
  .cd-main-nav #aeo {
    display: none; } }

.nav-is-visible .cd-nav-trigger span {
  background-color: transparent !important; }

/*@import "Master/Application/layout/_layoutAside.scss";*/
/*@import "bootstrap/_variables.scss";
@import "_variables.scss";*/
footer {
  overflow: hidden;
  position: relative; }
  footer .half-elipse {
    box-shadow: #949494 3px 3px 3px inset;
    border-radius: 72% / 100%;
    border-bottom-left-radius: 0;
    width: 106%;
    margin: 0 auto;
    margin-left: -3%;
    position: absolute;
    height: 124px;
    background: #dee6f1;
    background: linear-gradient(to bottom, #c3d9f8 0%, #fff 100%); }
  footer .footer-block {
    margin-top: 40px; }
    footer .footer-block .contact-us-footer {
      margin-bottom: 15px; }
    footer .footer-block .form-control {
      margin-bottom: 15px; }
    footer .footer-block .contact-info {
      text-align: center; }
      footer .footer-block .contact-info .icon:before {
        font-size: 50px;
        color: #000; }
      footer .footer-block .contact-info .hours {
        font-size: 20px;
        color: #000; }
      footer .footer-block .contact-info .phone {
        font-size: 26px;
        color: #000; }
        footer .footer-block .contact-info .phone a {
          text-decoration: none;
          color: #000; }
        footer .footer-block .contact-info .phone .pre {
          color: #485872; }
      footer .footer-block .contact-info .mail {
        font-size: 24px;
        color: #485872; }
        footer .footer-block .contact-info .mail a {
          text-decoration: none;
          color: #485872; }
        footer .footer-block .contact-info .mail strong {
          color: #000; }
    footer .footer-block .references {
      text-align: right; }
      @media (max-width: 1199px) {
        footer .footer-block .references {
          text-align: center; } }
      footer .footer-block .references .img-responsive {
        margin: 0 auto; }
    footer .footer-block .form-control, footer .footer-block .form-group .form-control {
      background-image: linear-gradient(#337ab7, #337ab7), linear-gradient(#000, #101010); }
    footer .footer-block .form-group.label-floating label.control-label {
      color: #000; }
  footer .footer-cms {
    background-color: #000d25;
    height: 283px; }
    footer .footer-cms .footer-inner {
      position: relative;
      text-align: center;
      padding-bottom: 15px; }
      footer .footer-cms .footer-inner h2 {
        color: #fff;
        font-size: 23px; }
      footer .footer-cms .footer-inner .footer-map {
        position: absolute;
        opacity: 0.2;
        right: 0; }
      footer .footer-cms .footer-inner ul {
        margin: 0;
        padding: 0;
        list-style-type: none; }
        footer .footer-cms .footer-inner ul * {
          color: #fff;
          font-size: 12px; }

/* Stránky */
.header-content .inner-content {
  color: #00076b;
  text-align: center;
  margin-top: 40px; }
  .header-content .inner-content h1 {
    font-weight: bold; }
  .header-content .inner-content p {
    font-size: 16px;
    margin-top: 20px; }
  .header-content .inner-content a {
    margin-bottom: 30px; }

.content-home {
  position: relative;
  margin-top: 50px;
  text-align: center;
  background-color: #fff;
  border-radius: 160% / 100%;
  border-bottom-left-radius: 0;
  border-bottom-right-radius: 0;
  width: 160%;
  margin: 0 auto;
  margin-left: -30%;
  /*#what-next {
        text-align: left;

        @media (max-width: $screen-xs-max) {
            text-align: center;
        }
    }*/ }
  .content-home .service-list li {
    color: #000 !important; }
  .content-home h2 {
    margin-top: 40px;
    color: #001E5A; }
    .content-home h2 a {
      text-decoration: none;
      color: #001E5A; }
      .content-home h2 a:hover {
        color: #001E5A; }
  .content-home a {
    text-decoration: none; }
  .content-home h3 {
    color: #001e5a;
    font-weight: bold; }
  .content-home p {
    color: #000;
    font-size: 14px; }
  .content-home .icon:before {
    font-size: 110px;
    color: #2167ad; }
  .content-home .icon#pig .circle {
    position: absolute;
    width: 31px;
    height: 31px;
    background-color: #b28d47;
    border-radius: 50%;
    top: 10.4%;
    left: 49%;
    color: #f2b149; }
    @media (min-width: 480px) and (max-width: 767px) {
      .content-home .icon#pig .circle {
        left: 49.4%; } }
  .content-home .icon#pig .circle1 {
    position: absolute;
    width: 15px;
    height: 15px;
    background-color: #b28d47;
    border-radius: 50%;
    top: 2%;
    left: 56%; }
  .content-home .icon#walk {
    position: absolute;
    width: 15px;
    height: 15px;
    top: 24%;
    right: 30%; }
    .content-home .icon#walk:before {
      color: #b28d47;
      font-size: 50px; }
  .content-home #somad {
    margin: 30px auto;
    width: 120px;
    height: auto;
    display: block; }
  .content-home #aeo-image {
    margin: 30px auto;
    width: 120px;
    height: auto;
    display: block; }
  .content-home .cms-content .erzasoft-cms-editable-content {
    color: #000;
    font-size: 14px;
    line-height: 1.6; }
    .content-home .cms-content .erzasoft-cms-editable-content em {
      color: #000 !important; }
    .content-home .cms-content .erzasoft-cms-editable-content strong {
      color: #000; }
      .content-home .cms-content .erzasoft-cms-editable-content strong em {
        color: #000; }
    @media (min-width: 768px) {
      .content-home .cms-content .erzasoft-cms-editable-content h3 {
        text-align: center; } }
    @media (min-width: 768px) {
      .content-home .cms-content .erzasoft-cms-editable-content ul {
        text-align: left; } }
    .content-home .cms-content .erzasoft-cms-editable-content ul li {
      color: #000 !important;
      list-style-position: inside;
      list-style-type: disc; }
      .content-home .cms-content .erzasoft-cms-editable-content ul li strong {
        color: #000; }

.bottom-shadow {
  box-shadow: #949494 3px 3px 3px;
  background-color: #dee6f1;
  background: #dee6f1;
  background: linear-gradient(to bottom, #fff 0%, #c3d9f8 100%);
  border-radius: 60%;
  border-top-left-radius: 0;
  width: 70%;
  margin: 0 auto;
  height: 109px;
  position: relative; }

.next-rows-wrap .flaticon-menu57::before {
  color: #2167ad !important; }

.resize-content {
  overflow: hidden;
  visibility: hidden;
  position: relative; }
  @media (max-width: 767px) {
    .resize-content {
      padding: 0 20%; } }
  .resize-content.min-height {
    height: 250px; }
  .resize-content:before {
    content: ' ';
    position: absolute;
    bottom: 0;
    left: 0;
    background: transparent;
    background: linear-gradient(transparent, #fff);
    height: 100px;
    width: 100%; }
  .resize-content.no-content:before {
    content: none !important; }

.partner {
  text-align: center; }
  .partner .jj-partner {
    display: inline-block;
    margin-bottom: 25px; }

.page-title {
  text-align: center;
  margin-top: 35px; }

#actuality {
  margin-top: 40px;
  margin-bottom: 40px; }

.actuality,
.actuality-detail {
  display: -ms-flexbox;
  display: flex;
  -ms-flex-align: center;
      align-items: center;
  margin-top: 20px; }
  .actuality .icon-date,
  .actuality-detail .icon-date {
    text-align: center; }
  .actuality h2,
  .actuality-detail h2 {
    color: #000; }
  .actuality .img-responsive,
  .actuality-detail .img-responsive {
    margin: 0 auto; }
  .actuality .link:hover,
  .actuality-detail .link:hover {
    text-decoration: none; }
  .actuality .icon:before,
  .actuality-detail .icon:before {
    font-size: 50px;
    color: #000; }
  .actuality .date,
  .actuality-detail .date {
    font-size: 18px;
    color: #000; }
  .actuality .flex-col,
  .actuality-detail .flex-col {
    text-align: left; }
    @media (max-width: 767px) {
      .actuality .flex-col,
      .actuality-detail .flex-col {
        text-align: center; } }
  .actuality .content-wrap,
  .actuality-detail .content-wrap {
    margin-bottom: 50px; }
    .actuality .content-wrap .img-responsive,
    .actuality-detail .content-wrap .img-responsive {
      margin: 0;
      float: left;
      padding-right: 15px; }
      @media (max-width: 767px) {
        .actuality .content-wrap .img-responsive,
        .actuality-detail .content-wrap .img-responsive {
          float: none;
          clear: both; } }
    .actuality .content-wrap .text,
    .actuality-detail .content-wrap .text {
      font-size: 16px; }

#contact {
  margin-top: 40px;
  text-align: center; }
  #contact .container {
    position: relative; }
  #contact .page-title {
    color: #fff;
    margin-bottom: 20px; }
  #contact .contact {
    display: -ms-flexbox;
    display: flex;
    -ms-flex-align: end;
        align-items: flex-end; }
    @media (max-width: 991px) {
      #contact .contact {
        display: block; } }
    #contact .contact .icon:before {
      font-size: 60px;
      color: #2167ad; }
    #contact .contact #somad {
      margin: 0 auto;
      width: 150px; }
    #contact .contact .inner-content {
      margin-bottom: 20px; }
    #contact .contact .cms-content {
      color: #fff;
      font-size: 17px; }

.static-map {
  position: relative;
  margin: 0 auto;
  width: 100%;
  height: 100px;
  background-image: url("/Images/contact_map.png");
  line-height: 100px;
  text-align: center; }
  .static-map a {
    font-size: 23px;
    color: #000; }

.api-map {
  display: none;
  height: 400px; }
  .api-map #api-map {
    height: 400px; }

.error-page .white-background {
  background-color: rgba(255, 255, 255, 0.9); }

.error-page #errorPage .flaticon:before {
  color: #2167ad;
  margin: 0;
  font-size: 33px; }

/*@import "../_variables.scss";*/
#register #submit {
  margin: 15px 0 5px 0;
  display: block;
  text-align: center;
  /*outline: 0;
        background-color: $color-button;
        color: #222;

        &:hover {
            background-color: lighten($color-button, 10%);
        }*/ }

#register button {
  padding: 10px; }

#register span::before {
  margin-left: 0; }

#login {
  margin-top: 40px; }
  #login input {
    border-radius: 0; }
  #login span::before {
    margin-left: 0; }

#forgot-password input[type="text"] {
  width: 100%; }

/*@font-face {
	font-family: 'OpenSansRegular';
	src: url('/Fonts/OpenSans-Regular-webfont.eot');
	src: url('/Fonts/OpenSans-Regular-webfont.eot') format('embedded-opentype'), url('/Fonts/OpenSans-Regular-webfont.woff') format('woff'), url('/Fonts/OpenSans-Regular-webfont.ttf') format('truetype');
}*/
label {
  cursor: pointer; }

.alert {
  margin: 10px 0;
  padding: 5px;
  border-radius: 0;
  display: none; }
  .alert.alert-success, .alert.alert-danger {
    display: block; }

.form-group {
  margin: 0; }

.grey-background {
  background-color: rgba(241, 241, 241, 0.9);
  padding-top: 15px;
  padding-bottom: 15px; }

[class^="flaticon-"]:before, [class*=" flaticon-"]:before {
  margin-left: 0 !important; }

table tr th, table tr td {
  padding: 5px;
  text-align: center;
  border: solid #222 1px; }

table tr th {
  background-color: #828385;
  color: #fff; }

h1 [class^="flaticon-"]:before {
  color: #FFD602; }

.navigation-buttons {
  padding: 10px 0; }
  .navigation-buttons button {
    padding: 12px;
    color: #000;
    font-weight: bold; }
  .navigation-buttons .order-next .icon#check:before {
    margin: 0;
    font-size: 18px; }

.center-text {
  text-align: center; }

input[name=PrePhone] {
  width: 60px; }

input[name=Phone] {
  width: 122px; }

h1 span {
  /*color: #E24427;*/ }
  h1 span::before {
    font-size: 30px !important; }

input[type="text"], input[type="password"] {
  padding: 10px;
  border: 1px solid #cecece;
  font-weight: 500;
  font-size: 16px;
  height: 40px;
  border-radius: 0;
  width: 100%; }
  input[type="text"].prephone, input[type="password"].prephone {
    width: 20%;
    float: left; }
  input[type="text"].phone, input[type="password"].phone {
    width: 79%;
    float: right; }

.checkbox .checkbox-material .check {
  border: 2px solid #000;
  border-radius: 2px; }
  .checkbox .checkbox-material .check:before {
    color: #000 !important; }

.checkbox input[type=checkbox]:checked + .checkbox-material .check {
  border: 2px solid #000; }

.button {
  padding: 4px;
  background-color: #001e5a;
  border: 0;
  color: #fff;
  width: 100%;
  text-transform: uppercase;
  transition: all ease-in-out .23s;
  outline: none;
  text-align: center;
  border-radius: 0;
  padding: 5px;
  padding-left: 50px;
  padding-right: 50px;
  margin-top: 10px;
  margin-bottom: 10px; }
  .button:hover {
    background-color: #002f8d; }
  .button.buttonN {
    background-color: #525252;
    color: #fff; }
    .button.buttonN:hover {
      background-color: #404040; }

a.button {
  padding: 10px; }
  a.button:hover {
    color: #fff;
    text-decoration: none; }

.light-button {
  background-color: #cecece;
  /*border: 1px solid #ADADAD;*/
  text-transform: uppercase;
  color: #000;
  text-align: center;
  padding: 6px 12px;
  transition: all ease-in-out .23s;
  display: inline-block;
  margin-bottom: 5px;
  font-weight: bold; }
  .light-button:hover {
    background-color: #d8d8d8;
    color: #000;
    text-decoration: none; }

.k-animation-container {
  width: 282px !important;
  height: 280px !important; }
  .k-animation-container .k-list-container.k-popup.k-group.k-reset {
    width: 100% !important;
    height: 280px !important; }
    .k-animation-container .k-list-container.k-popup.k-group.k-reset div:last-child {
      height: 221px !important; }
  @media (max-width: 1199px) {
    .k-animation-container {
      width: 271px !important; } }
  @media (max-width: 991px) {
    .k-animation-container {
      width: 481px !important; } }
  @media (max-width: 767px) {
    .k-animation-container {
      width: 85.5% !important; } }

.no-padding-right {
  padding-right: 0; }

.no-padding-left {
  padding-left: 0; }

.cc_banner-wrapper .cc_banner.cc_container.cc_container--open {
  background: #222;
  color: #fff;
  right: initial;
  left: 20px;
  width: 65%; }
  @media (max-width: 767px) {
    .cc_banner-wrapper .cc_banner.cc_container.cc_container--open {
      width: 40%; } }
  .cc_banner-wrapper .cc_banner.cc_container.cc_container--open .cc_btn.cc_btn_accept_all {
    border-radius: 0 !important; }

.field-validation-error {
  padding: 10px;
  background-color: red;
  color: #fff; }

.align-center {
  text-align: center; }

.k-widget {
  background-color: #848484; }
  .k-widget:active {
    background-color: #848484; }
  .k-widget:focus {
    background-color: #848484; }

/*# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbInNpdGUtdGhlbWUuY3NzIiwic2l0ZS10aGVtZS5zY3NzIiwiTWFzdGVyL1ZlbmRvci9ib290c3RyYXAtbWF0ZXJpYWwtZGVzaWduL19ib290c3RyYXAuc2NzcyIsIk1hc3Rlci9WZW5kb3IvYm9vdHN0cmFwLW1hdGVyaWFsLWRlc2lnbi9ib290c3RyYXAvX25vcm1hbGl6ZS5zY3NzIiwiTWFzdGVyL1ZlbmRvci9ib290c3RyYXAtbWF0ZXJpYWwtZGVzaWduL2Jvb3RzdHJhcC9fcHJpbnQuc2NzcyIsIk1hc3Rlci9WZW5kb3IvYm9vdHN0cmFwLW1hdGVyaWFsLWRlc2lnbi9ib290c3RyYXAvX2dseXBoaWNvbnMuc2NzcyIsIk1hc3Rlci9WZW5kb3IvYm9vdHN0cmFwLW1hdGVyaWFsLWRlc2lnbi9ib290c3RyYXAvX3NjYWZmb2xkaW5nLnNjc3MiLCJNYXN0ZXIvVmVuZG9yL2Jvb3RzdHJhcC1tYXRlcmlhbC1kZXNpZ24vYm9vdHN0cmFwL21peGlucy9fdmVuZG9yLXByZWZpeGVzLnNjc3MiLCJNYXN0ZXIvVmVuZG9yL2Jvb3RzdHJhcC1tYXRlcmlhbC1kZXNpZ24vYm9vdHN0cmFwL192YXJpYWJsZXMuc2NzcyIsIk1hc3Rlci9WZW5kb3IvYm9vdHN0cmFwLW1hdGVyaWFsLWRlc2lnbi9ib290c3RyYXAvbWl4aW5zL190YWItZm9jdXMuc2NzcyIsIk1hc3Rlci9WZW5kb3IvYm9vdHN0cmFwLW1hdGVyaWFsLWRlc2lnbi9ib290c3RyYXAvbWl4aW5zL19pbWFnZS5zY3NzIiwiTWFzdGVyL1ZlbmRvci9ib290c3RyYXAtbWF0ZXJpYWwtZGVzaWduL2Jvb3RzdHJhcC9fdHlwZS5zY3NzIiwiTWFzdGVyL1ZlbmRvci9ib290c3RyYXAtbWF0ZXJpYWwtZGVzaWduL2Jvb3RzdHJhcC9taXhpbnMvX3RleHQtZW1waGFzaXMuc2NzcyIsIk1hc3Rlci9WZW5kb3IvYm9vdHN0cmFwLW1hdGVyaWFsLWRlc2lnbi9ib290c3RyYXAvbWl4aW5zL19iYWNrZ3JvdW5kLXZhcmlhbnQuc2NzcyIsIk1hc3Rlci9WZW5kb3IvYm9vdHN0cmFwLW1hdGVyaWFsLWRlc2lnbi9ib290c3RyYXAvbWl4aW5zL19jbGVhcmZpeC5zY3NzIiwiTWFzdGVyL1ZlbmRvci9ib290c3RyYXAtbWF0ZXJpYWwtZGVzaWduL2Jvb3RzdHJhcC9taXhpbnMvX3RleHQtb3ZlcmZsb3cuc2NzcyIsIk1hc3Rlci9WZW5kb3IvYm9vdHN0cmFwLW1hdGVyaWFsLWRlc2lnbi9ib290c3RyYXAvX2NvZGUuc2NzcyIsIk1hc3Rlci9WZW5kb3IvYm9vdHN0cmFwLW1hdGVyaWFsLWRlc2lnbi9ib290c3RyYXAvX2dyaWQuc2NzcyIsIk1hc3Rlci9WZW5kb3IvYm9vdHN0cmFwLW1hdGVyaWFsLWRlc2lnbi9ib290c3RyYXAvbWl4aW5zL19ncmlkLnNjc3MiLCJNYXN0ZXIvVmVuZG9yL2Jvb3RzdHJhcC1tYXRlcmlhbC1kZXNpZ24vYm9vdHN0cmFwL21peGlucy9fZ3JpZC1mcmFtZXdvcmsuc2NzcyIsIk1hc3Rlci9WZW5kb3IvYm9vdHN0cmFwLW1hdGVyaWFsLWRlc2lnbi9ib290c3RyYXAvX3RhYmxlcy5zY3NzIiwiTWFzdGVyL1ZlbmRvci9ib290c3RyYXAtbWF0ZXJpYWwtZGVzaWduL2Jvb3RzdHJhcC9taXhpbnMvX3RhYmxlLXJvdy5zY3NzIiwiTWFzdGVyL1ZlbmRvci9ib290c3RyYXAtbWF0ZXJpYWwtZGVzaWduL2Jvb3RzdHJhcC9fZm9ybXMuc2NzcyIsIk1hc3Rlci9WZW5kb3IvYm9vdHN0cmFwLW1hdGVyaWFsLWRlc2lnbi9ib290c3RyYXAvbWl4aW5zL19mb3Jtcy5zY3NzIiwiTWFzdGVyL1ZlbmRvci9ib290c3RyYXAtbWF0ZXJpYWwtZGVzaWduL2Jvb3RzdHJhcC9fYnV0dG9ucy5zY3NzIiwiTWFzdGVyL1ZlbmRvci9ib290c3RyYXAtbWF0ZXJpYWwtZGVzaWduL2Jvb3RzdHJhcC9taXhpbnMvX2J1dHRvbnMuc2NzcyIsIk1hc3Rlci9WZW5kb3IvYm9vdHN0cmFwLW1hdGVyaWFsLWRlc2lnbi9ib290c3RyYXAvbWl4aW5zL19vcGFjaXR5LnNjc3MiLCJNYXN0ZXIvVmVuZG9yL2Jvb3RzdHJhcC1tYXRlcmlhbC1kZXNpZ24vYm9vdHN0cmFwL19jb21wb25lbnQtYW5pbWF0aW9ucy5zY3NzIiwiTWFzdGVyL1ZlbmRvci9ib290c3RyYXAtbWF0ZXJpYWwtZGVzaWduL2Jvb3RzdHJhcC9fZHJvcGRvd25zLnNjc3MiLCJNYXN0ZXIvVmVuZG9yL2Jvb3RzdHJhcC1tYXRlcmlhbC1kZXNpZ24vYm9vdHN0cmFwL21peGlucy9fbmF2LWRpdmlkZXIuc2NzcyIsIk1hc3Rlci9WZW5kb3IvYm9vdHN0cmFwLW1hdGVyaWFsLWRlc2lnbi9ib290c3RyYXAvbWl4aW5zL19yZXNldC1maWx0ZXIuc2NzcyIsIk1hc3Rlci9WZW5kb3IvYm9vdHN0cmFwLW1hdGVyaWFsLWRlc2lnbi9ib290c3RyYXAvX2J1dHRvbi1ncm91cHMuc2NzcyIsIk1hc3Rlci9WZW5kb3IvYm9vdHN0cmFwLW1hdGVyaWFsLWRlc2lnbi9ib290c3RyYXAvbWl4aW5zL19ib3JkZXItcmFkaXVzLnNjc3MiLCJNYXN0ZXIvVmVuZG9yL2Jvb3RzdHJhcC1tYXRlcmlhbC1kZXNpZ24vYm9vdHN0cmFwL19pbnB1dC1ncm91cHMuc2NzcyIsIk1hc3Rlci9WZW5kb3IvYm9vdHN0cmFwLW1hdGVyaWFsLWRlc2lnbi9ib290c3RyYXAvX25hdnMuc2NzcyIsIk1hc3Rlci9WZW5kb3IvYm9vdHN0cmFwLW1hdGVyaWFsLWRlc2lnbi9ib290c3RyYXAvX25hdmJhci5zY3NzIiwiTWFzdGVyL1ZlbmRvci9ib290c3RyYXAtbWF0ZXJpYWwtZGVzaWduL2Jvb3RzdHJhcC9taXhpbnMvX25hdi12ZXJ0aWNhbC1hbGlnbi5zY3NzIiwiTWFzdGVyL1ZlbmRvci9ib290c3RyYXAtbWF0ZXJpYWwtZGVzaWduL2Jvb3RzdHJhcC9fYnJlYWRjcnVtYnMuc2NzcyIsIk1hc3Rlci9WZW5kb3IvYm9vdHN0cmFwLW1hdGVyaWFsLWRlc2lnbi9ib290c3RyYXAvX3BhZ2luYXRpb24uc2NzcyIsIk1hc3Rlci9WZW5kb3IvYm9vdHN0cmFwLW1hdGVyaWFsLWRlc2lnbi9ib290c3RyYXAvbWl4aW5zL19wYWdpbmF0aW9uLnNjc3MiLCJNYXN0ZXIvVmVuZG9yL2Jvb3RzdHJhcC1tYXRlcmlhbC1kZXNpZ24vYm9vdHN0cmFwL19wYWdlci5zY3NzIiwiTWFzdGVyL1ZlbmRvci9ib290c3RyYXAtbWF0ZXJpYWwtZGVzaWduL2Jvb3RzdHJhcC9fbGFiZWxzLnNjc3MiLCJNYXN0ZXIvVmVuZG9yL2Jvb3RzdHJhcC1tYXRlcmlhbC1kZXNpZ24vYm9vdHN0cmFwL21peGlucy9fbGFiZWxzLnNjc3MiLCJNYXN0ZXIvVmVuZG9yL2Jvb3RzdHJhcC1tYXRlcmlhbC1kZXNpZ24vYm9vdHN0cmFwL19iYWRnZXMuc2NzcyIsIk1hc3Rlci9WZW5kb3IvYm9vdHN0cmFwLW1hdGVyaWFsLWRlc2lnbi9ib290c3RyYXAvX2p1bWJvdHJvbi5zY3NzIiwiTWFzdGVyL1ZlbmRvci9ib290c3RyYXAtbWF0ZXJpYWwtZGVzaWduL2Jvb3RzdHJhcC9fdGh1bWJuYWlscy5zY3NzIiwiTWFzdGVyL1ZlbmRvci9ib290c3RyYXAtbWF0ZXJpYWwtZGVzaWduL2Jvb3RzdHJhcC9fYWxlcnRzLnNjc3MiLCJNYXN0ZXIvVmVuZG9yL2Jvb3RzdHJhcC1tYXRlcmlhbC1kZXNpZ24vYm9vdHN0cmFwL21peGlucy9fYWxlcnRzLnNjc3MiLCJNYXN0ZXIvVmVuZG9yL2Jvb3RzdHJhcC1tYXRlcmlhbC1kZXNpZ24vYm9vdHN0cmFwL19wcm9ncmVzcy1iYXJzLnNjc3MiLCJNYXN0ZXIvVmVuZG9yL2Jvb3RzdHJhcC1tYXRlcmlhbC1kZXNpZ24vYm9vdHN0cmFwL21peGlucy9fZ3JhZGllbnRzLnNjc3MiLCJNYXN0ZXIvVmVuZG9yL2Jvb3RzdHJhcC1tYXRlcmlhbC1kZXNpZ24vYm9vdHN0cmFwL21peGlucy9fcHJvZ3Jlc3MtYmFyLnNjc3MiLCJNYXN0ZXIvVmVuZG9yL2Jvb3RzdHJhcC1tYXRlcmlhbC1kZXNpZ24vYm9vdHN0cmFwL19tZWRpYS5zY3NzIiwiTWFzdGVyL1ZlbmRvci9ib290c3RyYXAtbWF0ZXJpYWwtZGVzaWduL2Jvb3RzdHJhcC9fbGlzdC1ncm91cC5zY3NzIiwiTWFzdGVyL1ZlbmRvci9ib290c3RyYXAtbWF0ZXJpYWwtZGVzaWduL2Jvb3RzdHJhcC9taXhpbnMvX2xpc3QtZ3JvdXAuc2NzcyIsIk1hc3Rlci9WZW5kb3IvYm9vdHN0cmFwLW1hdGVyaWFsLWRlc2lnbi9ib290c3RyYXAvX3BhbmVscy5zY3NzIiwiTWFzdGVyL1ZlbmRvci9ib290c3RyYXAtbWF0ZXJpYWwtZGVzaWduL2Jvb3RzdHJhcC9taXhpbnMvX3BhbmVscy5zY3NzIiwiTWFzdGVyL1ZlbmRvci9ib290c3RyYXAtbWF0ZXJpYWwtZGVzaWduL2Jvb3RzdHJhcC9fcmVzcG9uc2l2ZS1lbWJlZC5zY3NzIiwiTWFzdGVyL1ZlbmRvci9ib290c3RyYXAtbWF0ZXJpYWwtZGVzaWduL2Jvb3RzdHJhcC9fd2VsbHMuc2NzcyIsIk1hc3Rlci9WZW5kb3IvYm9vdHN0cmFwLW1hdGVyaWFsLWRlc2lnbi9ib290c3RyYXAvX2Nsb3NlLnNjc3MiLCJNYXN0ZXIvVmVuZG9yL2Jvb3RzdHJhcC1tYXRlcmlhbC1kZXNpZ24vYm9vdHN0cmFwL19tb2RhbHMuc2NzcyIsIk1hc3Rlci9WZW5kb3IvYm9vdHN0cmFwLW1hdGVyaWFsLWRlc2lnbi9ib290c3RyYXAvX3Rvb2x0aXAuc2NzcyIsIk1hc3Rlci9WZW5kb3IvYm9vdHN0cmFwLW1hdGVyaWFsLWRlc2lnbi9ib290c3RyYXAvbWl4aW5zL19yZXNldC10ZXh0LnNjc3MiLCJNYXN0ZXIvVmVuZG9yL2Jvb3RzdHJhcC1tYXRlcmlhbC1kZXNpZ24vYm9vdHN0cmFwL19wb3BvdmVycy5zY3NzIiwiTWFzdGVyL1ZlbmRvci9ib290c3RyYXAtbWF0ZXJpYWwtZGVzaWduL2Jvb3RzdHJhcC9fY2Fyb3VzZWwuc2NzcyIsIk1hc3Rlci9WZW5kb3IvYm9vdHN0cmFwLW1hdGVyaWFsLWRlc2lnbi9ib290c3RyYXAvX3V0aWxpdGllcy5zY3NzIiwiTWFzdGVyL1ZlbmRvci9ib290c3RyYXAtbWF0ZXJpYWwtZGVzaWduL2Jvb3RzdHJhcC9taXhpbnMvX2NlbnRlci1ibG9jay5zY3NzIiwiTWFzdGVyL1ZlbmRvci9ib290c3RyYXAtbWF0ZXJpYWwtZGVzaWduL2Jvb3RzdHJhcC9taXhpbnMvX2hpZGUtdGV4dC5zY3NzIiwiTWFzdGVyL1ZlbmRvci9ib290c3RyYXAtbWF0ZXJpYWwtZGVzaWduL2Jvb3RzdHJhcC9fcmVzcG9uc2l2ZS11dGlsaXRpZXMuc2NzcyIsIk1hc3Rlci9WZW5kb3IvYm9vdHN0cmFwLW1hdGVyaWFsLWRlc2lnbi9ib290c3RyYXAvbWl4aW5zL19yZXNwb25zaXZlLXZpc2liaWxpdHkuc2NzcyIsIk1hc3Rlci9WZW5kb3IvYm9vdHN0cmFwLW1hdGVyaWFsLWRlc2lnbi9fY29sb3JzLnNjc3MiLCJNYXN0ZXIvVmVuZG9yL2Jvb3RzdHJhcC1tYXRlcmlhbC1kZXNpZ24vX3ZhcmlhYmxlcy5zY3NzIiwiTWFzdGVyL1ZlbmRvci9ib290c3RyYXAtbWF0ZXJpYWwtZGVzaWduL19zaGFkb3dzLnNjc3MiLCJNYXN0ZXIvVmVuZG9yL2Jvb3RzdHJhcC1tYXRlcmlhbC1kZXNpZ24vX2NvcmUuc2NzcyIsIk1hc3Rlci9WZW5kb3IvYm9vdHN0cmFwLW1hdGVyaWFsLWRlc2lnbi9fZm9ybS5zY3NzIiwiTWFzdGVyL1ZlbmRvci9ib290c3RyYXAtbWF0ZXJpYWwtZGVzaWduL193ZWxsanVtYm8uc2NzcyIsIk1hc3Rlci9WZW5kb3IvYm9vdHN0cmFwLW1hdGVyaWFsLWRlc2lnbi9fbWl4aW5zLnNjc3MiLCJNYXN0ZXIvVmVuZG9yL2Jvb3RzdHJhcC1tYXRlcmlhbC1kZXNpZ24vX2J1dHRvbnMuc2NzcyIsIk1hc3Rlci9WZW5kb3IvYm9vdHN0cmFwLW1hdGVyaWFsLWRlc2lnbi9fY2hlY2tib3hlcy5zY3NzIiwiTWFzdGVyL1ZlbmRvci9ib290c3RyYXAtbWF0ZXJpYWwtZGVzaWduL190b2dnbGVidXR0b24uc2NzcyIsIk1hc3Rlci9WZW5kb3IvYm9vdHN0cmFwLW1hdGVyaWFsLWRlc2lnbi9fcmFkaW9zLnNjc3MiLCJNYXN0ZXIvVmVuZG9yL2Jvb3RzdHJhcC1tYXRlcmlhbC1kZXNpZ24vX2lucHV0cy1zaXplLnNjc3MiLCJNYXN0ZXIvVmVuZG9yL2Jvb3RzdHJhcC1tYXRlcmlhbC1kZXNpZ24vX2lucHV0cy5zY3NzIiwiTWFzdGVyL1ZlbmRvci9ib290c3RyYXAtbWF0ZXJpYWwtZGVzaWduL19saXN0cy5zY3NzIiwiTWFzdGVyL1ZlbmRvci9ib290c3RyYXAtbWF0ZXJpYWwtZGVzaWduL19uYXZiYXIuc2NzcyIsIk1hc3Rlci9WZW5kb3IvYm9vdHN0cmFwLW1hdGVyaWFsLWRlc2lnbi9fYWxlcnRzLnNjc3MiLCJNYXN0ZXIvVmVuZG9yL2Jvb3RzdHJhcC1tYXRlcmlhbC1kZXNpZ24vX3Byb2dyZXNzLnNjc3MiLCJNYXN0ZXIvVmVuZG9yL2Jvb3RzdHJhcC1tYXRlcmlhbC1kZXNpZ24vX3R5cG9ncmFwaHkuc2NzcyIsIk1hc3Rlci9WZW5kb3IvYm9vdHN0cmFwLW1hdGVyaWFsLWRlc2lnbi9fdGFicy5zY3NzIiwiTWFzdGVyL1ZlbmRvci9ib290c3RyYXAtbWF0ZXJpYWwtZGVzaWduL19wb3B1cHMuc2NzcyIsIk1hc3Rlci9WZW5kb3IvYm9vdHN0cmFwLW1hdGVyaWFsLWRlc2lnbi9fY2FyZHMuc2NzcyIsIk1hc3Rlci9WZW5kb3IvYm9vdHN0cmFwLW1hdGVyaWFsLWRlc2lnbi9fZGlhbG9ncy5zY3NzIiwiTWFzdGVyL1ZlbmRvci9ib290c3RyYXAtbWF0ZXJpYWwtZGVzaWduL19wYW5lbHMuc2NzcyIsIk1hc3Rlci9WZW5kb3IvYm9vdHN0cmFwLW1hdGVyaWFsLWRlc2lnbi9fZGl2aWRlcnMuc2NzcyIsIk1hc3Rlci9WZW5kb3IvYm9vdHN0cmFwLW1hdGVyaWFsLWRlc2lnbi9wbHVnaW5zL19wbHVnaW4tc25hY2tiYXJqcy5zY3NzIiwiTWFzdGVyL1ZlbmRvci9ib290c3RyYXAtbWF0ZXJpYWwtZGVzaWduL3BsdWdpbnMvX3BsdWdpbi1ub3Vpc2xpZGVyLnNjc3MiLCJNYXN0ZXIvVmVuZG9yL2Jvb3RzdHJhcC1tYXRlcmlhbC1kZXNpZ24vcGx1Z2lucy9fcGx1Z2luLXNlbGVjdGl6ZS5zY3NzIiwiTWFzdGVyL1ZlbmRvci9ib290c3RyYXAtbWF0ZXJpYWwtZGVzaWduL3BsdWdpbnMvX3BsdWdpbi1kcm9wZG93bmpzLnNjc3MiLCJNYXN0ZXIvVmVuZG9yL2Jvb3RzdHJhcC1tYXRlcmlhbC1kZXNpZ24vcmlwcGxlcy5zY3NzIiwiVGhlbWUvVmVuZG9yL3NlY29uZGFyeS1zbGlkaW5nL3N0eWxlLmNzcyIsIk1hc3Rlci9BcHBsaWNhdGlvbi9jb21wb25lbnRzL19icmVhZGNydW1iLnNjc3MiLCJUaGVtZS9BcHBsaWNhdGlvbi9jb21wb25lbnRzL3NlYXJjaC1mb3JtLnNjc3MiLCJUaGVtZS9BcHBsaWNhdGlvbi9jb21wb25lbnRzL2NvbnRhY3RMYW5ndWFnZVBhcnRpYWwuc2NzcyIsIlRoZW1lL1ZlbmRvci9ucHJvZ3Jlc3MvbnByb2dyZXNzLnNjc3MiLCJUaGVtZS9BcHBsaWNhdGlvbi9sYXlvdXQvX2xheW91dC5zY3NzIiwiVGhlbWUvQXBwbGljYXRpb24vbGF5b3V0L19sYXlvdXRIZWFkZXIuc2NzcyIsIlRoZW1lL0FwcGxpY2F0aW9uL2xheW91dC9fbGF5b3V0Rm9vdGVyLnNjc3MiLCJUaGVtZS9BcHBsaWNhdGlvbi9wYWdlL19ob21lLnNjc3MiLCJUaGVtZS9BcHBsaWNhdGlvbi9wYWdlL19hY3R1YWxpdHkuc2NzcyIsIlRoZW1lL0FwcGxpY2F0aW9uL3BhZ2UvX2NvbnRhY3Quc2NzcyIsIlRoZW1lL0FwcGxpY2F0aW9uL3BhZ2UvX2Vycm9yLnNjc3MiLCJNYXN0ZXIvQXBwbGljYXRpb24vcGFnZS9fcmVnaXN0ZXIuc2NzcyIsIlRoZW1lL0FwcGxpY2F0aW9uL3BhZ2UvX2xvZ2luLnNjc3MiLCJNYXN0ZXIvQXBwbGljYXRpb24vcGFnZS9fZm9yZ290LXBhc3N3b3JkLnNjc3MiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsaUJBQWlCO0FD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QStDLGlCQUFpQixFQUFJOztBQUNwRTtFQUErQyxpQkFBaUIsRUFBSTs7QUFDcEU7RUFBK0MsaUJBQWlCLEVBQUk7O0FBQ3BFO0VBQStDLGlCQUFpQixFQUFJOztBQUNwRTtFQUErQyxpQkFBaUIsRUFBSTs7QUFDcEU7RUFBK0MsaUJBQWlCLEVBQUk7O0FBQ3BFO0VBQStDLGlCQUFpQixFQUFJOztBQUNwRTtFQUErQyxpQkFBaUIsRUFBSTs7QUFDcEU7RUFBK0MsaUJBQWlCLEVBQUk7O0FBQ3BFO0VBQStDLGlCQUFpQixFQUFJOztBQUNwRTtFQUErQyxpQkFBaUIsRUFBSTs7QUFDcEU7RUFBK0MsaUJBQWlCLEVBQUk7O0FBQ3BFO0VBQStDLGlCQUFpQixFQUFJOztBQUNwRTtFQUErQyxpQkFBaUIsRUFBSTs7QUFDcEU7RUFBK0MsaUJBQWlCLEVBQUk7O0FBQ3BFO0VBQStDLGlCQUFpQixFQUFJOztBQUNwRTtFQUErQyxpQkFBaUIsRUFBSTs7QUFDcEU7RUFBK0MsaUJBQWlCLEVBQUk7O0FBQ3BFO0VBQStDLGlCQUFpQixFQUFJOztBQUNwRTtFQUErQyxpQkFBaUIsRUFBSTs7QUFDcEU7RUFBK0MsaUJBQWlCLEVBQUk7O0FBQ3BFO0VBQStDLGlCQUFpQixFQUFJOztBQUNwRTtFQUErQyxpQkFBaUIsRUFBSTs7QUFDcEU7RUFBK0MsaUJBQWlCLEVBQUk7O0FBQ3BFO0VBQStDLGlCQUFpQixFQUFJOztBQUNwRTtFQUErQyxpQkFBaUIsRUFBSTs7QUFDcEU7RUFBK0MsaUJBQWlCLEVBQUk7O0FBQ3BFO0VBQStDLGlCQUFpQixFQUFJOztBQUNwRTtFQUErQyxpQkFBaUIsRUFBSTs7QUFDcEU7RUFBK0MsaUJBQWlCLEVBQUk7O0FBQ3BFO0VBQStDLGlCQUFpQixFQUFJOztBQUNwRTtFQUErQyxpQkFBaUIsRUFBSTs7QUFDcEU7RUFBK0MsaUJBQWlCLEVBQUk7O0FBQ3BFO0VBQStDLGlCQUFpQixFQUFJOztBQUNwRTtFQUErQyxpQkFBaUIsRUFBSTs7QUFDcEU7RUFBK0MsaUJBQWlCLEVBQUk7O0FBQ3BFO0VBQStDLGlCQUFpQixFQUFJOztBQUNwRTtFQUErQyxpQkFBaUIsRUFBSTs7QUFDcEU7RUFBK0MsaUJBQWlCLEVBQUk7O0FBQ3BFO0VBQStDLGlCQUFpQixFQUFJOztBQUNwRTtFQUErQyxpQkFBaUIsRUFBSTs7QUFDcEU7RUFBK0MsaUJBQWlCLEVBQUk7O0FBQ3BFO0VBQStDLGlCQUFpQixFQUFJOztBQUNwRTtFQUErQyxpQkFBaUIsRUFBSTs7QUFDcEU7RUFBK0MsaUJBQWlCLEVBQUk7O0FBQ3BFO0VBQStDLGlCQUFpQixFQUFJOztBQUNwRTtFQUErQyxpQkFBaUIsRUFBSTs7QUFDcEU7RUFBK0MsaUJBQWlCLEVBQUk7O0FBQ3BFO0VBQStDLGlCQUFpQixFQUFJOztBQUNwRTtFQUErQyxpQkFBaUIsRUFBSTs7QUFDcEU7RUFBK0MsaUJBQWlCLEVBQUk7O0FBQ3BFO0VBQStDLGlCQUFpQixFQUFJOztBQUNwRTtFQUErQyxpQkFBaUIsRUFBSTs7QUFDcEU7RUFBK0MsaUJBQWlCLEVBQUk7O0FBQ3BFO0VBQStDLGlCQUFpQixFQUFJOztBQUNwRTtFQUErQyxpQkFBaUIsRUFBSTs7QUFDcEU7RUFBK0MsaUJBQWlCLEVBQUk7O0FBQ3BFO0VBQStDLGlCQUFpQixFQUFJOztBQUNwRTtFQUErQyxpQkFBaUIsRUFBSTs7QUFDcEU7RUFBK0MsaUJBQWlCLEVBQUk7O0FBQ3BFO0VBQStDLGlCQUFpQixFQUFJOztBQUNwRTtFQUErQyxpQkFBaUIsRUFBSTs7QUFDcEU7RUFBK0MsaUJBQWlCLEVBQUk7O0FBQ3BFO0VBQStDLGlCQUFpQixFQUFJOztBQUNwRTtFQUErQyxpQkFBaUIsRUFBSTs7QUFDcEU7RUFBK0MsaUJBQWlCLEVBQUk7O0FBQ3BFO0VBQStDLGlCQUFpQixFQUFJOztBQUNwRTtFQUErQyxpQkFBaUIsRUFBSTs7QUFDcEU7RUFBK0MsaUJBQWlCLEVBQUk7O0FBQ3BFO0VBQStDLGlCQUFpQixFQUFJOztBQUNwRTtFQUErQyxpQkFBaUIsRUFBSTs7QUFDcEU7RUFBK0MsaUJBQWlCLEVBQUk7O0FBQ3BFO0VBQStDLGlCQUFpQixFQUFJOztBQUNwRTtFQUErQyxpQkFBaUIsRUFBSTs7QUFDcEU7RUFBK0MsaUJBQWlCLEVBQUk7O0FBQ3BFO0VBQStDLGlCQUFpQixFQUFJOztBQUNwRTtFQUErQyxpQkFBaUIsRUFBSTs7QUFDcEU7RUFBK0MsaUJBQWlCLEVBQUk7O0FBQ3BFO0VBQStDLGlCQUFpQixFQUFJOztBQUNwRTtFQUErQyxpQkFBaUIsRUFBSTs7QUFDcEU7RUFBK0MsaUJBQWlCLEVBQUk7O0FBQ3BFO0VBQStDLGlCQUFpQixFQUFJOztBQUNwRTtFQUErQyxpQkFBaUIsRUFBSTs7QUFDcEU7RUFBK0MsaUJBQWlCLEVBQUk7O0FBQ3BFO0VBQStDLGlCQUFpQixFQUFJOztBQUNwRTtFQUErQyxpQkFBaUIsRUFBSTs7QUFDcEU7RUFBK0MsaUJBQWlCLEVBQUk7O0FBQ3BFO0VBQStDLGlCQUFpQixFQUFJOztBQUNwRTtFQUErQyxpQkFBaUIsRUFBSTs7QUFDcEU7RUFBK0MsaUJBQWlCLEVBQUk7O0FBQ3BFO0VBQStDLGlCQUFpQixFQUFJOztBQUNwRTtFQUErQyxpQkFBaUIsRUFBSTs7QUFDcEU7RUFBK0MsaUJBQWlCLEVBQUk7O0FBQ3BFO0VBQStDLGlCQUFpQixFQUFJOztBQUNwRTtFQUErQyxpQkFBaUIsRUFBSTs7QUFDcEU7RUFBK0MsaUJBQWlCLEVBQUk7O0FBQ3BFO0VBQStDLGlCQUFpQixFQUFJOztBQUNwRTtFQUErQyxpQkFBaUIsRUFBSTs7QUFDcEU7RUFBK0MsaUJBQWlCLEVBQUk7O0FBQ3BFO0VBQStDLGlCQUFpQixFQUFJOztBQUNwRTtFQUErQyxpQkFBaUIsRUFBSTs7QUFDcEU7RUFBK0MsaUJBQWlCLEVBQUk7O0FBQ3BFO0VBQStDLGlCQUFpQixFQUFJOztBQUNwRTtFQUErQyxpQkFBaUIsRUFBSTs7QUFDcEU7RUFBK0MsaUJBQWlCLEVBQUk7O0FBQ3BFO0VBQStDLGlCQUFpQixFQUFJOztBQUNwRTtFQUErQyxpQkFBaUIsRUFBSTs7QUFDcEU7RUFBK0MsaUJBQWlCLEVBQUk7O0FBQ3BFO0VBQStDLGlCQUFpQixFQUFJOztBQUNwRTtFQUErQyxpQkFBaUIsRUFBSTs7QUFDcEU7RUFBK0MsaUJBQWlCLEVBQUk7O0FBQ3BFO0VBQStDLGlCQUFpQixFQUFJOztBQUNwRTtFQUErQyxpQkFBaUIsRUFBSTs7QUFDcEU7RUFBK0MsaUJBQWlCLEVBQUk7O0FBQ3BFO0VBQStDLGlCQUFpQixFQUFJOztBQUNwRTtFQUErQyxpQkFBaUIsRUFBSTs7QUFDcEU7RUFBK0MsaUJBQWlCLEVBQUk7O0FBQ3BFO0VBQStDLGlCQUFpQixFQUFJOztBQUNwRTtFQUErQyxpQkFBaUIsRUFBSTs7QUFDcEU7RUFBK0MsaUJBQWlCLEVBQUk7O0FBQ3BFO0VBQStDLGlCQUFpQixFQUFJOztBQUNwRTtFQUErQyxpQkFBaUIsRUFBSTs7QUFDcEU7RUFBK0MsaUJBQWlCLEVBQUk7O0FBQ3BFO0VBQStDLGlCQUFpQixFQUFJOztBQUNwRTtFQUErQyxpQkFBaUIsRUFBSTs7QUFDcEU7RUFBK0MsaUJBQWlCLEVBQUk7O0FBQ3BFO0VBQStDLGlCQUFpQixFQUFJOztBQUNwRTtFQUErQyxpQkFBaUIsRUFBSTs7QUFDcEU7RUFBK0MsaUJBQWlCLEVBQUk7O0FBQ3BFO0VBQStDLGlCQUFpQixFQUFJOztBQUNwRTtFQUErQyxpQkFBaUIsRUFBSTs7QUFDcEU7RUFBK0MsaUJBQWlCLEVBQUk7O0FBQ3BFO0VBQStDLGlCQUFpQixFQUFJOztBQUNwRTtFQUErQyxpQkFBaUIsRUFBSTs7QUFDcEU7RUFBK0MsaUJBQWlCLEVBQUk7O0FBQ3BFO0VBQStDLGlCQUFpQixFQUFJOztBQUNwRTtFQUErQyxpQkFBaUIsRUFBSTs7QUFDcEU7RUFBK0MsaUJBQWlCLEVBQUk7O0FBQ3BFO0VBQStDLGlCQUFpQixFQUFJOztBQUNwRTtFQUErQyxpQkFBaUIsRUFBSTs7QUFDcEU7RUFBK0MsaUJBQWlCLEVBQUk7O0FBQ3BFO0VBQStDLGlCQUFpQixFQUFJOztBQUNwRTtFQUErQyxpQkFBaUIsRUFBSTs7QUFDcEU7RUFBK0MsaUJBQWlCLEVBQUk7O0FBQ3BFO0VBQStDLGlCQUFpQixFQUFJOztBQUNwRTtFQUErQyxpQkFBaUIsRUFBSTs7QUFDcEU7RUFBK0MsaUJBQWlCLEVBQUk7O0FBQ3BFO0VBQStDLGlCQUFpQixFQUFJOztBQUNwRTtFQUErQyxpQkFBaUIsRUFBSTs7QUFDcEU7RUFBK0MsaUJBQWlCLEVBQUk7O0FBQ3BFO0VBQStDLGlCQUFpQixFQUFJOztBQUNwRTtFQUErQyxpQkFBaUIsRUFBSTs7QUFDcEU7RUFBK0MsaUJBQWlCLEVBQUk7O0FBQ3BFO0VBQStDLGlCQUFpQixFQUFJOztBQUNwRTtFQUErQyxpQkFBaUIsRUFBSTs7QUFDcEU7RUFBK0MsaUJBQWlCLEVBQUk7O0FBQ3BFO0VBQStDLGlCQUFpQixFQUFJOztBQUNwRTtFQUErQyxpQkFBaUIsRUFBSTs7QUFDcEU7RUFBK0MsaUJBQWlCLEVBQUk7O0FBQ3BFO0VBQStDLGlCQUFpQixFQUFJOztBQUNwRTtFQUErQyxpQkFBaUIsRUFBSTs7QUFDcEU7RUFBK0MsaUJBQWlCLEVBQUk7O0FBQ3BFO0VBQStDLGlCQUFpQixFQUFJOztBQUNwRTtFQUErQyxpQkFBaUIsRUFBSTs7QUFDcEU7RUFBK0MsaUJBQWlCLEVBQUk7O0FBQ3BFO0VBQStDLGlCQUFpQixFQUFJOztBQUNwRTtFQUErQyxpQkFBaUIsRUFBSTs7QUFDcEU7RUFBK0MsaUJBQWlCLEVBQUk7O0FBQ3BFO0VBQStDLGlCQUFpQixFQUFJOztBQUNwRTtFQUErQyxpQkFBaUIsRUFBSTs7QUFDcEU7RUFBK0MsaUJBQWlCLEVBQUk7O0FBQ3BFO0VBQStDLGlCQUFpQixFQUFJOztBQUNwRTtFQUErQyxpQkFBaUIsRUFBSTs7QUFDcEU7RUFBK0MsaUJBQWlCLEVBQUk7O0FBU3BFO0VBQStDLGlCQUFpQixFQUFJOztBQUNwRTtFQUErQyxpQkFBaUIsRUFBSTs7QUFDcEU7RUFBK0MsaUJBQWlCLEVBQUk7O0FBQ3BFO0VBQStDLGlCQUFpQixFQUFJOztBQUNwRTtFQUErQyxpQkFBaUIsRUFBSTs7QUFDcEU7RUFBK0MsaUJBQWlCLEVBQUk7O0FBQ3BFO0VBQStDLGlCQUFpQixFQUFJOztBQUNwRTtFQUErQyxpQkFBaUIsRUFBSTs7QUFDcEU7RUFBK0MsaUJBQWlCLEVBQUk7O0FBQ3BFO0VBQStDLGlCQUFpQixFQUFJOztBQUNwRTtFQUErQyxpQkFBaUIsRUFBSTs7QUFDcEU7RUFBK0MsaUJBQWlCLEVBQUk7O0FBQ3BFO0VBQStDLGlCQUFpQixFQUFJOztBQUNwRTtFQUErQyxpQkFBaUIsRUFBSTs7QUFDcEU7RUFBK0MsaUJBQWlCLEVBQUk7O0FBQ3BFO0VBQStDLGlCQUFpQixFQUFJOztBQUNwRTtFQUErQyxpQkFBaUIsRUFBSTs7QUFDcEU7RUFBK0MsaUJBQWlCLEVBQUk7O0FBQ3BFO0VBQStDLGlCQUFpQixFQUFJOztBQUNwRTtFQUErQyxpQkFBaUIsRUFBSTs7QUFDcEU7RUFBK0MsaUJBQWlCLEVBQUk7O0FBQ3BFO0VBQStDLGlCQUFpQixFQUFJOztBQUNwRTtFQUErQyxpQkFBaUIsRUFBSTs7QUFDcEU7RUFBK0MsaUJBQWlCLEVBQUk7O0FBQ3BFO0VBQStDLGlCQUFpQixFQUFJOztBQUNwRTtFQUErQyxpQkFBaUIsRUFBSTs7QUFDcEU7RUFBK0MsaUJBQWlCLEVBQUk7O0FBQ3BFO0VBQStDLGlCQUFpQixFQUFJOztBQUNwRTtFQUErQyxpQkFBaUIsRUFBSTs7QUFDcEU7RUFBK0MsaUJBQWlCLEVBQUk7O0FBQ3BFO0VBQStDLGlCQUFpQixFQUFJOztBQUNwRTtFQUErQyxpQkFBaUIsRUFBSTs7QUFDcEU7RUFBK0MsaUJBQWlCLEVBQUk7O0FBQ3BFO0VBQStDLGlCQUFpQixFQUFJOztBQUNwRTtFQUErQyxpQkFBaUIsRUFBSTs7QUFDcEU7RUFBK0MsaUJBQWlCLEVBQUk7O0FBQ3BFO0VBQStDLGlCQUFpQixFQUFJOztBQUNwRTtFQUErQyxpQkFBaUIsRUFBSTs7QUFDcEU7RUFBK0MsaUJBQWlCLEVBQUk7O0FBQ3BFO0VBQStDLGlCQUFpQixFQUFJOztBQUNwRTtFQUErQyxpQkFBaUIsRUFBSTs7QUFDcEU7RUFBK0MsaUJBQWlCLEVBQUk7O0FBQ3BFO0VB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SDtFQWlCSSxhZG5JbUM7RWNvSW5DLGlCQUFrQztFQUNsQyxrQmR6UDRCO0VjMFA1QixnQmQxUzBCO0VjMlMxQixpQmRyUDJCLEVjc1A1Qjs7QUMzUkQ7OztFQUNFLGFmZ0prQztFZS9JbEMsbUJmMEI0QjtFZXpCNUIsZ0JmckIwQjtFZXNCMUIscUJmZ0NpQztFZS9CakMsbUJmbUMyQixFZWxDNUI7O0FBRUQ7OztFQUNFLGFmd0lrQztFZXZJbEMsa0JmdUlrQyxFZXRJbkM7O0FBRUQ7Ozs7Ozs7RUFDRSxhQUFhLEVBQ2Q7O0FEZ1JIO0VBRUksYWRoSmtDO0VjaUpsQyxtQmR0UTRCO0VjdVE1QixnQmRyVDBCO0Vjc1QxQixxQmRoUWlDO0VjaVFqQyxtQmQ3UDJCLEVjOFA1Qjs7QUFQSDtFQVNJLGFkdkprQztFY3dKbEMsa0JkeEprQyxFY3lKbkM7O0FBWEg7O0VBY0ksYUFBYSxFQUNkOztBQWZIO0VBaUJJLGFkL0prQztFY2dLbEMsaUJBQWtDO0VBQ2xDLG1CZHRSNEI7RWN1UjVCLGdCZHJVMEI7RWNzVTFCLHFCZGhSaUMsRWNpUmxDOztBQVFIO0VBRUUsbUJBQW1CLEVBTXBCO0VBUkQ7SUFNSSxzQkFBa0MsRUFDbkM7O0FBR0g7RUFDRSxtQkFBbUI7RUFDbkIsT0FBTztFQUNQLFNBQVM7RUFDVCxXQUFXO0VBQ1gsZUFBZTtFQUNmLFlkOUxxRDtFYytMckQsYWQvTHFEO0VjZ01yRCxrQmRoTXFEO0VjaU1yRCxtQkFBbUI7RUFDbkIscUJBQXFCLEVBQ3RCOztBQUNEOzs7OztFQUdFLFlkck1vQztFY3NNcEMsYWR0TW9DO0VjdU1wQyxrQmR2TW9DLEVjd01yQzs7QUFDRDs7Ozs7RUFHRSxZZDFNcUM7RWMyTXJDLGFkM01xQztFYzRNckMsa0JkNU1xQyxFYzZNdEM7O0FDL1pDOzs7Ozs7Ozs7O0VBVUUsZWZzZW9DLEVlcmVyQzs7QUFFRDtFQUNFLHNCZmtlb0M7RURsYjlCLGlEZ0IvQ2tDLEVBTXpDO0VBUkQ7SUFJSSxzQkFBb0I7SWhCNkNoQixrRWdCNUNzRCxFQUUzRDs7QUFHSDtFQUNFLGVmd2RvQztF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ekI7O0FBS0g7O0VBR0kscUJBQXFCLEVBQ3RCOztBQU9IO0VDN0RFLFlqQmlKbUM7RWlCaEpuQyx1QmpCaUptQztFaUJoSm5DLG1CakJpSm1DLEVnQnBGcEM7RUFGRDtJQ3ZESSxZakIySWlDO0lpQjFJakMsMEJBQXdCO0lBQ3BCLHNCQUFvQixFQUN6QjtFRG9ESDtJQ2xESSxZakJzSWlDO0lpQnJJakMsMEJBQXdCO0lBQ3BCLHNCQUFvQixFQUN6QjtFRCtDSDs7SUMzQ0ksWWpCK0hpQztJaUI5SGpDLDBCQUF3QjtJQUNwQixzQkFBb0IsRUFTekI7SURnQ0g7Ozs7TUNwQ00sWWpCd0grQjtNaUJ2SC9CLDBCQUF3QjtNQUNwQixzQkFBb0IsRUFDekI7RURpQ0w7O0lDNUJJLHVCQUF1QixFQUN4QjtFRDJCSDs7OztJQ3BCTSx1QmpCeUcrQjtJaUJ4RzNCLG1CakJ5RzJCLEVpQnhHaEM7RUFHSDtJQUNFLFlqQm1HaUM7SWlCbEdqQyx1QmpCaUdpQyxFaUJoR2xDOztBRGVIO0VDaEVFLFlqQnFKbUM7RWlCcEpuQywwQmpCVTRCO0VpQlQ1QixzQmpCcUpxQyxFZ0JyRnRDO0VBRkQ7SUMxREksWWpCK0lpQztJaUI5SWpDLDBCQUF3QjtJQUNwQixzQkFBb0IsRUFDekI7RUR1REg7SUNyREksWWpCMElpQztJaUJ6SWpDLDBCQUF3QjtJQUNwQixzQkFBb0IsRUFDekI7RURrREg7O0lDOUNJLFlqQm1JaUM7SWlCbElqQywwQkFBd0I7SUFDcEIsc0JBQW9CLEVBU3pCO0lEbUNIOzs7O01DdkNNLFlqQjRIK0I7TWlCM0gvQiwwQkFBd0I7TUFDcEIsc0JBQW9CLEVBQ3pCO0VEb0NMOztJQy9CSSx1QkFBdUIsRUFDeEI7RUQ4Qkg7Ozs7SUN2Qk0sMEJqQjlCd0I7SWlCK0JwQixzQmpCNkc2QixFaUI1R2xDO0VBR0g7SUFDRSxlakJwQzBCO0lpQnFDMUIsdUJqQnFHaUMsRWlCcEdsQzs7QURtQkg7RUNwRUUsWWpCeUptQztFaUJ4Sm5DLDBCakJXNkI7RWlCVjdCLHNCakJ5SnFDLEVnQnJGdEM7RUFGRDtJQzlESSxZakJtSmlDO0lpQmxKakMsMEJBQXdCO0lBQ3BCLHNCQUFvQixFQUN6QjtFRDJESDtJQ3pESSxZakI4SWlDO0lpQjdJakMsMEJBQXdCO0lBQ3BCLHNCQUFvQixFQUN6QjtFRHNESDs7SUNsREksWWpCdUlpQztJaUJ0SWpDLDBCQUF3QjtJQUNwQixzQkFBb0IsRUFTekI7SUR1Q0g7Ozs7TUMzQ00sWWpCZ0krQjtNaUIvSC9CLDBCQUF3QjtNQUNwQixzQkFBb0IsRUFDekI7RUR3Q0w7O0lDbkNJLHVCQUF1QixFQUN4QjtFRGtDSDs7OztJQzNCTSwwQmpCN0J5QjtJaUI4QnJCLHNCakJpSDZCLEVpQmhIbEM7RUFHSDtJQUNFLGVqQm5DMkI7SWlCb0MzQix1QmpCeUdpQyxFaUJ4R2xDOztBRHVCSDtFQ3hFRSxZakI2Sm1DO0VpQjVKbkMsMEJqQlk2QjtFaUJYN0Isc0JqQjZKcUMsRWdCckZ0QztFQUZEO0lDbEVJLFlqQnVKaUM7SWlCdEpqQywwQkFBd0I7SUFDcEIsc0JBQW9CLEVBQ3pCO0VEK0RIO0lDN0RJLFlqQmtKaUM7SWlCakpqQywwQkFBd0I7SUFDcEIsc0JBQW9CLEVBQ3pCO0VEMERIOztJQ3RESSxZakIySWlDO0lpQjFJakMsMEJBQXdCO0lBQ3BCLHNCQUFvQixFQVN6QjtJRDJDSDs7OztNQy9DTSxZakJvSStCO01pQm5JL0IsMEJBQXdCO01BQ3BCLHNCQUFvQixFQUN6QjtFRDRDTDs7SUN2Q0ksdUJBQXVCLEVBQ3hCO0VEc0NIOzs7O0lDL0JNLDBCakI1QnlCO0lpQjZCckIsc0JqQnFINkIsRWlCcEhsQztFQUdIO0lBQ0UsZWpCbEMyQjtJaUJtQzNCLHVCakI2R2lDLEVpQjVHbEM7O0FEMkJIO0VDNUVFLFlqQmlLbUM7RWlCaEtuQywwQmpCYTZCO0VpQlo3QixzQmpCaUtxQyxFZ0JyRnRDO0VBRkQ7SUN0RUksWWpCMkppQztJaUIxSmpDLDBCQUF3QjtJQUNwQixzQkFBb0IsRUFDekI7RURtRUg7SUNqRUksWWpCc0ppQztJaUJySmpDLDBCQUF3QjtJQUNwQixzQkFBb0IsRUFDekI7RUQ4REg7O0lDMURJLFlqQitJaUM7SWlCOUlqQywwQkFBd0I7SUFDcEIsc0JBQW9CLEVBU3pCO0lEK0NIOzs7O01DbkRNLFlqQndJK0I7TWlCdkkvQiwwQkFBd0I7TUFDcEIsc0JBQW9CLEVBQ3pCO0VEZ0RMOztJQzNDSSx1QkFBdUIsRUFDeEI7RUQwQ0g7Ozs7SUNuQ00sMEJqQjNCeUI7SWlCNEJyQixzQmpCeUg2QixFaUJ4SGxDO0VBR0g7SUFDRSxlakJqQzJCO0lpQmtDM0IsdUJqQmlIaUMsRWlCaEhsQzs7QUQrQkg7RUNoRkUsWWpCcUttQztFaUJwS25DLDBCakJjNkI7RWlCYjdCLHNCakJxS3FDLEVnQnJGdEM7RUFGRDtJQzFFSSxZakIrSmlDO0lpQjlKakMsMEJBQXdCO0lBQ3BCLHNCQUFvQixFQUN6QjtFRHVFSDtJQ3JFSSxZakIwSmlDO0lpQnpKakMsMEJBQXdCO0lBQ3BCLHNCQUFvQixFQUN6QjtFRGtFSDs7SUM5REksWWpCbUppQztJaUJsSmpDLDBCQUF3QjtJQUNwQixzQkFBb0IsRUFTekI7SURtREg7Ozs7TUN2RE0sWWpCNEkrQjtNaUIzSS9CLDBCQUF3QjtNQUNwQixzQkFBb0IsRUFDekI7RURvREw7O0lDL0NJLHVCQUF1QixFQUN4QjtFRDhDSDs7OztJQ3ZDTSwwQmpCMUJ5QjtJaUIyQnJCLHNCakI2SDZCLEVpQjVIbEM7RUFHSDtJQUNFLGVqQmhDMkI7SWlCaUMzQix1QmpCcUhpQyxFaUJwSGxDOztBRHdDSDtFQUNFLGVoQi9FNEI7RWdCZ0Y1QixvQkFBb0I7RUFDcEIsaUJBQWlCLEVBOEJsQjtFQWpDRDs7SUFVSSw4QkFBOEI7SWpCcEN4QixpQmlCcUNrQixFQUN6QjtFQVpIO0lBaUJJLDBCQUEwQixFQUMzQjtFQWxCSDtJQXFCSSxlaEJoRjBCO0lnQmlGMUIsMkJoQi9FNkI7SWdCZ0Y3Qiw4QkFBOEIsRUFDL0I7RUF4Qkg7OztJQTZCTSxlaEI5RzBCO0lnQitHMUIsc0JBQXNCLEVBQ3ZCOztBQVFMO0VDMUVFLG1CakJzQzhCO0VpQnJDOUIsZ0JqQlQ0QjtFaUJVNUIscUJqQjRDbUM7RWlCM0NuQyxt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b0czQztJQWxGWDtNQXdGWSxZM0J6R21DO00yQjBHbkMsMEIzQnpHcUMsRTJCMEd0QztJQTFGWDtNQWdHWSxZM0IvR21DO00yQmdIbkMsOEIzQi9HMEMsRTJCZ0gzQyxFQUFBO0VBbEdYO0lBOEdJLFkzQmxJMkMsRTJCc0k1QztJQWxISDtNQWdITSxZM0JuSXlDLEUyQm9JMUM7RUFqSEw7SUFxSEksWTNCekkyQyxFMkJxSjVDO0lBaklIO01Bd0hNLFkzQjNJeUMsRTJCNEkxQztJQXpITDs7O01BOEhRLFkzQjdJdUMsRTJCOEl4Qzs7QUFPUDtFQUNFLHVCM0JySThDO0UyQnNJOUMsc0IzQnJJZ0QsRTJCc1FqRDtFQW5JRDtJQUtJLGUzQnJJK0MsRTJCMkloRDtJQVhIO01BUU0sWTNCOUgwQztNMkIrSDFDLDhCM0I5SGlELEUyQitIbEQ7RUFWTDtJQWNJLGUzQm5KK0MsRTJCb0poRDtFQWZIO0lBbUJNLGUzQm5KNkMsRTJCMEo5QztJQTFCTDtNQXVCUSxZM0J0SndDO00yQnVKeEMsOEIzQnRKK0MsRTJCdUpoRDtFQXpCUDtJQStCUSxZM0I5SndDO0kyQitKeEMsMEIzQjVKMEMsRTJCNkozQztFQWpDUDtJQXVDUSxZM0JsS3dDO0kyQm1LeEMsOEIzQmxLK0MsRTJCbUtoRDtFQXpDUDtJQStDSSxtQjNCL0o0QyxFMkJ1SzdDO0lBdkRIO01Ba0RNLHVCM0JwSzBDLEUyQnFLM0M7SUFuREw7TUFxRE0sdUIzQnRLMEMsRTJCdUszQztFQXRETDs7SUEyREksc0JBQW9CLEVBQ3JCO0VBNURIO0lBb0VRLDBCM0JoTTBDO0kyQmlNMUMsWTNCcE13QyxFMkJxTXpDO0VBR0g7SUF6RUo7TUE2RVUsc0IzQmhOd0MsRTJCaU56QztJQTlFVDtNQWdGVSwwQjNCbk53QyxFMkJvTnpDO0lBakZUO01BbUZVLGUzQm5OeUMsRTJCeU4xQztNQXpGVDtRQXNGWSxZM0JyTm9DO1EyQnNOcEMsOEIzQnJOMkMsRTJCc041QztJQXhGWDtNQThGWSxZM0I3Tm9DO00yQjhOcEMsMEIzQjNOc0MsRTJCNE52QztJQWhHWDtNQXNHWSxZM0JqT29DO00yQmtPcEMsOEIzQmpPMkMsRTJCa081QyxFQUFBO0VBeEdYO0lBK0dJLGUzQi9PK0MsRTJCbVBoRDtJQW5ISDtNQWlITSxZM0JoUDBDLEUyQmlQM0M7RUFsSEw7SUFzSEksZTNCdFArQyxFMkJrUWhEO0lBbElIO01BeUhNLFkzQnhQMEMsRTJCeVAzQztJQTFITDs7O01BK0hRLFkzQjFQd0MsRTJCMlB6Qzs7QUU3b0JQO0VBQ0Usa0I3QnF4QmtDO0U2QnB4QmxDLG9CN0IwRDZCO0U2QnpEN0IsaUJBQWlCO0VBQ2pCLDBCN0JveEJxQztFNkJueEJyQyxtQjdCbUc2QixFNkJsRjlCO0VBdEJEO0lBUUksc0JBQXNCLEVBU3ZCO0lBakJIO01BYU0sY0FBMkM7TUFDM0MsZUFBZTtNQUNmLFk3QjJ3QjhCLEU2QjF3Qi9CO0VBaEJMO0lBb0JJLGU3Qlg0QixFNkJZN0I7O0FDdkJIO0VBQ0Usc0JBQXNCO0VBQ3RCLGdCQUFnQjtFQUNoQixlQUErQjtFQUMvQixtQjlCc0c2QixFOEJsQzlCO0VBeEVEO0lBT0ksZ0JBQWdCLEVBMEJqQjtJQWpDSDs7TUFVTSxtQkFBbUI7TUFDbkIsWUFBWTtNQUNaLGtCOUJnRjBCO004Qi9FMUIscUI5QitDK0I7TThCOUMvQixzQkFBc0I7TUFDdEIsZTlCRHdCO004QkV4Qix1QjlCb2JxQztNOEJuYnJDLHVCOUJvYnFDO004Qm5ickMsa0JBQWtCLEVBQ25CO0lBbkJMOztNQXVCUSxlQUFlO01OWHJCLCtCeEI4RjZCO013QjdGMUIsNEJ4QjZGMEIsRThCakZ4QjtJQXpCUDs7TU5JRSxnQ3hCc0c2QjtNd0JyRzFCLDZCeEJxRzBCLEU4QjNFeEI7RUEvQlA7OztJQXVDTSxXQUFXO0lBQ1gsZTlCUHdCO0k4QlF4QiwwQjlCN0IwQjtJOEI4QjFCLG1COUIrWnFDLEU4QjladEM7RUEzQ0w7Ozs7SUFtRE0sV0FBVztJQUNYLFk5QnVacUM7SThCdFpyQywwQjlCdkN3QjtJOEJ3Q3hCLHNCOUJ4Q3dCO0k4QnlDeEIsZ0JBQWdCLEVBQ2pCO0VBeERMOzs7Ozs7SUFrRU0sZTlCdkQwQjtJ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QyxFOENqZGpDO0VDMVBLO0lBQ0YsZS9DTTRCO0krQ0w1QiwwQi9DMHNCaUM7SStDenNCakMsbUIvQ3dzQjhCLEUrQy9yQi9CO0lBUHFCO01BQ2xCLHVCL0Nxc0I0QixFK0Nwc0I3QjtJQUNEO01BQ0UsZS9DbXNCK0I7TStDbHNCL0IsMEIvQ0gwQixFK0NJM0I7RUFHbUI7SUFDbEIsMEIvQzRyQjRCLEUrQzNyQjdCOztBRDJPTDtFQzdQRSxzQi9DYzRCLEU4Q2lQN0I7RUM3UEs7SUFDRixZL0M2c0I4QjtJK0M1c0I5QiwwQi9DVTBCO0krQ1QxQixzQi9DUzBCLEUrQ0EzQjtJQVBxQjtNQUNsQiwwQi9DTXdCLEUrQ0x6QjtJQUNEO01BQ0UsZS9DR3dCO00rQ0Z4Qix1Qi9Db3NCNEIsRStDbnNCN0I7RUFHbUI7SUFDbEIsNkIvQ0h3QixFK0NJekI7O0FEOE9MO0VDaFFFLHNCL0NzZnFDLEU4Q3BQdEM7RUNoUUs7SUFDRixlL0NpZm9DO0krQ2hmcEMsMEIvQ2lmb0M7SStDaGZwQyxzQi9DaWZtQyxFK0N4ZXBDO0lBUHFCO01BQ2xCLDBCL0M4ZWlDLEUrQzdlbEM7SUFDRDtNQUNFLGUvQzBla0M7TStDemVsQywwQi9Dd2VrQyxFK0N2ZW5DO0VBR21CO0lBQ2xCLDZCL0NxZWlDLEUrQ3BlbEM7O0FEaVBMO0VDblFFLHNCL0MwZnFDLEU4Q3JQdEM7RUNuUUs7SUFDRixlL0NxZm9DO0krQ3BmcEMsMEIvQ3Fmb0M7SStDcGZwQyxzQi9DcWZtQyxFK0M1ZXBDO0lBUHFCO01BQ2xCLDBCL0NrZmlDLEUrQ2pmbEM7SUFDRDtNQUNFLGUvQzhla0M7TStDN2VsQywwQi9DNGVrQyxFK0MzZW5DO0VBR21CO0lBQ2xCLDZCL0N5ZWlDLEUrQ3hlbEM7O0FEb1BMO0VDdFFFLHNCL0M4ZnFDLEU4Q3RQdEM7RUN0UUs7SUFDRixlL0N5Zm9DO0krQ3hmcEMsMEIvQ3lmb0M7SStDeGZwQyxzQi9DeWZtQyxFK0NoZnBDO0lBUHFCO01BQ2xCLDBCL0NzZmlDLEUrQ3JmbEM7SUFDRDtNQUNFLGUvQ2tma0M7TStDamZsQywwQi9DZ2Zr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ak1IOztNREVFLGVuRUY2QixFbUV3TTVCO0lDeE1IOztNREVFLGVuRUQ2QixFbUU4TTVCO0lDL01IOztNREVFLGVuRUE2QixFbUVvTjVCO0lDdE5IOztNREVFLGVuRUM2QixFbUUwTjVCO0lDN05IOzs7TUErQlEsMkNBQThCLEVBTS9CO01BckNQOzs7UUFtQ1UsNENBQThCLEVBQy9CO0VBcENUOzs7Ozs7Ozs7OztJRFVFLHVCbkVDMEI7SW1FQ3hCLHlCTHRCNEIsRUs2TDdCO0VDbkxIOzs7Ozs7SURVRSwwQk5pRmtCO0lNN0VoQixlTndVVyxFTTVKWjtFQzFMSDs7Ozs7O0lEVUUsMEJuRVg0QjtJbUVlMUIsK0JMMUIyQixFSzZNNUI7RUNqTUg7Ozs7OztJRFVFLDBCbkVWNkI7SW1FYzNCLCtCTDFCMkIsRUtvTjVCO0VDeE1IOzs7Ozs7SURVRSwwQm5FVDZCO0ltRWEzQiwrQkwxQjJCLEVLMk41QjtFQy9NSDs7Ozs7O0lEVUUsMEJuRVI2QjtJbUVZM0IsK0JMMUIyQixFS2tPNUI7RUN0Tkg7Ozs7OztJRFVFLDBCbkVQNkI7SW1FVzNCLCtCTDFCMkIsRUt5TzVCO0VDN05IOzs7OztJTDhCRSxnSEFFZ0IsRUtnRWI7SUFoR0w7Ozs7Ozs7Ozs7Ozs7Ozs7O01BOERRLFdBQVcsRUFXWjtNQXpFUDs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7O1FEa0NFLDZCQUNjLEVBZ0piO01DbkxIOzs7Ozs7Ozs7Ozs7Ozs7OztRRGtDRSwwQkFFZSxFQXNKZDtNQzFMSDs7Ozs7Ozs7Ozs7Ozs7Ozs7UURrQ0UsMEJBRWUsRUE2SmQ7TUNqTUg7Ozs7Ozs7Ozs7Ozs7Ozs7O1FEa0NFLDBCQUNjLEVBcUtiO01DeE1IOzs7Ozs7Ozs7Ozs7Ozs7OztRRGtDRSwwQkFFZSxFQTJLZDtNQy9NSDs7Ozs7Ozs7Ozs7Ozs7Ozs7UURrQ0UsMEJBRWUsRUFrTGQ7TUN0Tkg7Ozs7Ozs7Ozs7Ozs7Ozs7O1FEa0NFLDBCQUNjLEVBMExiO0lDN05IOzs7Ozs7Ozs7Ozs7Ozs7OztNTHdDRSxpSEFFbUIsRUt1Q1o7SUFqRlQ7Ozs7Ozs7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LHFCeEVvQ21DLEV3RW5DcEM7O0FBV0Q7RUFDRTs7OztJQUtJLGtCVjhEK0QsRVU3RGhFO0VBTkg7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7SUFVSSxrQlY2RHFDLEVVNUR0QztFQVhIOzs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7O0lBZUksa0JWc0RvQyxFVXJEckMsRUFBQTs7QUFJTDs7RUFJSSxpQlZjcUMsRVVidEM7O0FBU0g7RUFFRSxpQkFBOEM7RUFDOUMsb0JBQWlEO0VBQ2pELGlCQUE0QyxFQUM3Qzs7QUFhQzs7Ozs7Ozs7Ozs7Ozs7Ozs7RUFDRSxhVmtCdUM7RVVqQnZDLGVWQW1DO0VVQ25DLGdCVnZCNEI7RVV3QjVCLGlCVmhCcUM7RVVpQnJDLGlCVk1tQyxFVUxwQzs7QUFFSzs7Ozs7Ozs7Ozs7Ozs7Ozs7RUFDSixhVlV1QztFVVR2QyxrQlZTdUMsRVVSeEM7O0FBRU87Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7RUFDTixhQUFhLEVBQ2Q7O0FBZUg7RUFFSSxhVmJ1QztFVWN2QyxlVi9CbUM7RVVnQ25DLGdCVnRENEI7RVV1RDVCLGlCVi9DcUMsRVVnRHRDOztBQU5IO0VBUUksYVZuQnVDO0VVb0J2QyxrQlZwQnVDLEVVcUJ4Qzs7QUFWSDs7RUFhSSxhQUFhLEVBQ2Q7O0FBZEg7RUFnQkksYVYzQnVDO0VVNEJ2QyxpQkFBNEM7RUFDNUMsZVY5Q21DO0VVK0NuQyxnQlZyRTRCO0VVc0U1QixpQlY5RHFDLEVVK0R0Qzs7QUFuREQ7Ozs7Ozs7Ozs7Ozs7Ozs7O0VBQ0UsYVZnQnNDO0VVZnRDLGVWTG1DO0VVTW5DLGdCVnhCNEI7RVV5QjVCLHFCVmpCMkM7RVVrQjNDLGlCVkttQyxFVUpwQzs7QUFFSzs7Ozs7Ozs7Ozs7Ozs7Ozs7RUFDSixhVlFzQztFVVB0QyxrQlZPc0MsRVVOdkM7O0FBRU87Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7RUFDTixhQUFhLEVBQ2Q7O0FBMENIO0VBRUksYVYxQ3NDO0VVMkN0QyxlVi9EbUM7RVVnRW5DLGdCVmxGNEI7RVVtRjVC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TSxzQkFBc0I7TUFDdEIsZUFBZTtNQUNmLFdBQVc7TUFDWCxVQUFVO01BT1YsYUFBaUM7TUFDakMsZ0IzRW5Jd0I7TTJFb0l4QixxQkFKaUMsRUFNbEM7RUF2TEw7SVI2RkUsMEJuRTlFNEI7SW1FK0U1QiwrQkwxRjZCLEVLK0w1QjtJQW5HNkI7OztNQUcxQiwrQkwvRnlCLEVLREk7SUE2Rkg7OztNQUcxQiwrQkwvRnlCLEVLQVE7SUE0RlA7OztNQUcxQiwrQkwvRnlCLEVLQ2M7SUFpRzNDO01BQ0UsbUJuRUkyQixFbUVjNUI7TUFqQk07UUFDSCxnQkxnQ3VCO1FLL0J2QixtQkFBbUIsRUFNcEI7UUFSSTtVQUtELGVuRTlGc0I7VW1FK0Z0QiwwQk51TlUsRU10Tlg7TUFFTztRQUtSLDBCbkV2R3dCO1FtRXdHeEIsK0JMbkh5QixFS29IMUI7UUFQUztVQUdOLCtCTGhIdUIsRUtpSHhCO0VRckhQO0lSNkZFLDBCTmNrQjtJTWJsQixlTndRYSxFTTVKWjtJQTFHNkI7O01BRzFCLGVObVFTLEVNbldvQjtJQTZGSDs7TUFHMUIsZU5tUVMsRU1sV3dCO0lBNEZQOztNQUcxQixlTm1RUyxFTWpXOEI7SUFpRzNDO01BQ0UsbUJuRUkyQixFbUVjNUI7TUFqQk07UUFDSCxnQkxnQ3VCO1FLL0J2QixtQkFBbUIsRUFNcEI7UUFSSTtVQUtELGVORlk7VU1HWiwwQk51TlUsRU10Tlg7TUFFTztRQUtSLDBCTlhjO1FNWWQsZU4rT1MsRU05T1Y7UUFQUztVQUdOLGVOa1BPLEVNalBSO0VRckhQO0lSNkZFLDBCbkU5RTRCO0ltRStFNUIsK0JMMUY2QixFSzZNNUI7SUFqSDZCOztNQUcxQiwrQkwvRnlCLEVLREk7SUE2Rkg7O01BRzFCLCtCTC9GeUIsRUtBUTtJQTRGUDs7TUFHMUIsK0JML0Z5QixFS0NjO0lBaUczQztNQUNFLG1CbkVJMkIsRW1FYzVCO01BakJNO1FBQ0gsZ0JMZ0N1QjtRSy9CdkIsbUJBQW1CLEVBTXBCO1FBUkk7VUFLRCxlbkU5RnNCO1VtRStGdEIsMEJOdU5VLEVNdE5YO01BRU87UUFLUiwwQm5Fdkd3QjtRbUV3R3hCLCtCTG5IeUIsRUtvSDFCO1FBUFM7VUFHTiwrQkxoSHVCLEVLaUh4QjtFUXJIUDtJUjZGRSwwQm5FN0U2QjtJbUU4RTdCLCtCTDFGNkIsRUtvTjVCO0lBeEg2Qjs7TUFHMUIsK0JML0Z5QixFS0RJO0lBNkZIOztNQUcxQiwrQkwvRnlCLEVLQVE7SUE0RlA7O01BRzFCLCtCTC9GeUIsRUtDYztJQWlHM0M7TUFDRSxtQm5FSTJCLEVtRWM1QjtNQWpCTTtRQUNILGdCTGdDdUI7UUsvQnZCLG1CQUFtQixFQU1wQjtRQVJJO1VBS0QsZW5FN0Z1QjtVbUU4RnZCLDBCTnVOVSxFTXROWDtNQUVPO1FBS1IsMEJuRXRHeUI7UW1FdUd6QiwrQkxuSHlCLEVLb0gxQjtRQVBTO1VBR04sK0JMaEh1QixFS2lIeEI7RVFySFA7SVI2RkUsMEJuRTVFNkI7SW1FNkU3QiwrQkwxRjZCLEVLMk41QjtJQS9INkI7O01BRzFCLCtCTC9GeUIsRUtESTtJQTZGSDs7TUFHMUIsK0JML0Z5QixFS0FRO0lBNEZQOztNQUcxQiwrQkwvRnlCLEVLQ2M7SUFpRzNDO01BQ0UsbUJuRUkyQixFbUVjNUI7TUFqQk07UUFDSCxnQkxnQ3VCO1FLL0J2QixtQkFBbUIsRUFNcEI7UUFSSTtVQUtELGVuRTVGdUI7VW1FNkZ2QiwwQk51TlUsRU10Tlg7TUFFTztRQUtSLDBCbkVyR3lCO1FtRXNHekIsK0JMbkh5QixFS29IMUI7UUFQUztVQUdOLCtCTGhIdUIsRUtpSHhCO0VRckhQO0lSNkZFLDBCbkUzRTZCO0ltRTRFN0IsK0JMMUY2QixFS2tPNUI7SUF0STZCOztNQUcxQiwrQkwvRnlCLEVLREk7SUE2Rkg7O01BRzFCLCtCTC9GeUIsRUtBUTtJQTRGUDs7TUFHMUIsK0JML0Z5QixFS0NjO0lBaUczQztNQUNFLG1CbkVJMkIsRW1FYzVCO01BakJNO1FBQ0gsZ0JMZ0N1QjtRSy9CdkIsbUJBQW1CLEVBTXBCO1FBUkk7VUFLRCxlbkUzRnVCO1VtRTRGdkIsMEJOdU5VLEVNdE5YO01BRU87UUFLUiwwQm5FcEd5QjtRbUVxR3pCLCtCTG5IeUIsRUtvSDFCO1FBUFM7VUFHTiwrQkxoSHVCLEVLaUh4QjtFUXJIUDtJUjZGRSwwQm5FMUU2QjtJbUUyRTdCLCtCTDFGNkIsRUt5TzVCO0lBN0k2Qjs7TUFHMUIsK0JML0Z5QixFS0RJO0lBNkZIOztNQUcxQiwrQkwvRnlCLEVLQVE7SUE0RlA7O01BRzFCLCtCTC9GeUIsRUtDYztJQWlHM0M7TUFDRSxtQm5FSTJCLEVtRWM1QjtNQWpCTTtRQUNILGdCTGdDdUI7UUsvQnZCLG1CQUFtQixFQU1wQjtRQVJJO1VBS0QsZW5FMUZ1QjtVbUUyRnZCLDBCTnVOVSxFTXROWDtNQUVPO1FBS1IsMEJuRW5HeUI7UW1Fb0d6QiwrQkxuSHlCLEVLb0gxQjtRQVBTO1VBR04sK0JMaEh1QixFS2lIeEI7RVFySFA7SUErTEksMEJkcEZnQixFY3FGakI7RUFFRDtJQWxNRjtNQXFNTSxhQUFhO01BQ2IsbUJBQW1CLEVBQ3BCO0lBdk1MO01BeU1NLGlCQUFpQixFQUNsQjtJQTFNTDtNQTZNTSxrQkFBa0I7TUFDbEIscUJBQXFCLEVBQ3RCLEVBQUE7O0FYMUpMO0VBQ0UsVUFBVTtFQUNWLDRDQUE0QixFQVk3QjtFQWREO0lBSUksc0NBQXNCLEVBQ3ZCO0VBTEg7SUFPSSxpQkFBaUI7SUFDakIsbUJBQW1CLEVBS3BCO0lBYkg7TUFVTSw4QkFBOEI7TUFDOUIsZWhFakR3QixFZ0VrRHpCOztBWWpFTDtFQUNJLFVBQVU7RUFDVixpQkFBaUIsRUFjcEI7RUFoQkQ7SVRxSUUsMENMakk2QjtJS2tJN0IsK0JMbEk2QixFSytMNUI7SUEzREQ7TUFDRSwrQkxySTJCLEVLc0k1QjtFUzFJSDtJVHFJRSwwQk4xQmtCO0lNMkJsQixlTmdPYSxFTTVKWjtJQWxFRDtNQUNFLGVONk5XLEVNNU5aO0VTMUlIO0lUcUlFLDBCbkV0SDRCO0ltRXVINUIsK0JMbEk2QixFSzZNNUI7SUF6RUQ7TUFDRSwrQkxySTJCLEVLc0k1QjtFUzFJSDtJVHFJRSwwQm5Fckg2QjtJbUVzSDdCLCtCTGxJNkIsRUtvTjVCO0lBaEZEO01BQ0UsK0JMckkyQixFS3NJNUI7RVMxSUg7SVRxSUUsMEJuRXBINkI7SW1FcUg3QiwrQkxsSTZCLEVLMk41QjtJQXZGRDtNQUNFLCtCTHJJMkIsRUtzSTVCO0VTMUlIO0lUcUlFLDBCbkVuSDZCO0ltRW9IN0IsK0JMbEk2QixFS2tPNUI7SUE5RkQ7TUFDRSwrQkxySTJCLEVLc0k1QjtFUzFJSDtJVHFJRSwwQm5FbEg2QjtJbUVtSDdCLCtCTGxJNkIsRUt5TzVCO0lBckdEO01BQ0UsK0JMckkyQixFS3NJNUI7RVMxSUg7SUFRUSwrQmRKdUIsRWNLMUI7RUFUTDtJQWFZLHlCZFBvQixFY1F2Qjs7QUNkVDtFQUNJLFlBQVk7RUFDWixpQkFBaUI7RUFDakIsaUJBQWlCO0VBQ2pCLG9CQUFvQixFQUt2QjtFQVREO0lBTVEsaUJBQWlCLEVBRXBCO0lBUkw7TVZrQkUsMEJuRUg0QixFbUVvTDNCO0lVbk1IO01Wa0JFLDBCTnlGa0IsRU0rRmpCO0lVMU1IO01Wa0JFLDBCbkVINEIsRW1Fa00zQjtJVWpOSDtNVmtCRSwwQm5FRjZCLEVtRXdNNUI7SVV4Tkg7TVZrQkUsMEJuRUQ2QixFbUU4TTVCO0lVL05IO01Wa0JFLDBCbkVBNkIsRW1Fb041QjtJVXRPSDtNVmtCRSwwQm5FQzZCLEVtRTBONUI7O0FXN09IO0VBQ0UsZTlFaUI2QixFOEVoQjlCOztBQUNEO0VBQ0UsZTlFVzRCLEU4RVY3Qjs7QUFDRDtFQUNFLGU5RVk2QixFOEVYOUI7O0FBQ0Q7RUFDRSxlOUVNNkIsRThFTDlCOztBQUNEO0VBQ0UsZTlFSTZCLEU4RUg5Qjs7QUNkRDtFQUNJLG9CL0VjMEIsRStFUTdCO0VBdkJEO0lBSVksZUFBZTtJQUNmLFVBQVU7SUFDVixVQUFVLEVBS2I7SUFYVDtNQVFnQiw4QkFBOEI7TUFDOUIsVUFBVSxFQUNiO0VBVmI7SUFhWSx5Q0FBeUM7SUFDekMscUJBQXFCO0lBQ3JCLDBCQUEwQjtJQUMxQixpQkFBaUIsRUFDcEI7RUFqQlQ7SUFtQlksZ0NBQVcsRUFDZDs7QUNwQlQ7RUFDRSxlbEJxSXlCO0VrQnBJekIsaUJBQWlCO0VBQ2pCLHFDbEJrSTJC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dEY2QjJCLEVzRjVCOUI7O0FBQ0Q7RUFDSSxZQUFZO0VBQ1osZUFBZSxFQUNsQjs7QUFDRDtFQUNJLGFBQWE7RUFDYixXQUFXO0VBQ1gsZUFBZTtFQUNmLHNCQUFzQixFQUN6Qjs7QUFDRDtFQUNJLGdDQUFrQixFQUNyQjs7QTlGbzlQRDtFOEZsOVBJLGFBQWEsRUFDaEI7O0E5Rm85UEQ7RThGbDlQSSxvQkFBb0IsRUFDdkI7O0FBRUQ7RUFDSSxvQkFBb0IsRUFDdkI7O0FBRUQ7RW5CdEZFLDBCbkVINEIsRW1Fb0wzQjs7QW1CM0ZIO0VuQnRGRSwwQk55RmtCLEVNK0ZqQjs7QW1CbEdIO0VuQnRGRSwwQm5FSDRCLEVtRWtNM0I7O0FtQnpHSDtFbkJ0RkUsMEJuRUY2QixFbUV3TTVCOztBbUJoSEg7RW5CdEZFLDBCbkVENkIsRW1FOE01Qjs7QW1CdkhIO0VuQnRGRSwwQm5FQTZCLEVtRW9ONUI7O0FtQjlISDtFbkJ0RkUsMEJuRUM2QixFbUUwTjVCOztBQWpEQzs7RUExS0YsMEJuRUg0QixFbUVvTDNCOztBQUNnQjtFQWxMakIsMEJOeUZrQixFTStGakI7O0FBQ2dCO0VBekxqQiwwQm5FSDRCLEVtRWtNM0I7O0FBQ2dCO0VBaE1qQiwwQm5FRjZCLEVtRXdNNUI7O0FBQ2E7RUF2TWQsMEJuRUQ2QixFbUU4TTVCOztBQUNnQjtFQTlNakIsMEJuRUE2QixFbUVvTjVCOztBQUNlO0VBck5oQiwwQm5FQzZCLEVtRTBONUI7O0FBakRDOztFQTFLRiwwQm5FSDRCLEVtRW9MM0I7O0FBQ2dCO0VBbExqQiwwQk55RmtCLEVNK0ZqQjs7QUFDZ0I7RUF6TGpCLDBCbkVINEIsRW1Fa00zQjs7QUFDZ0I7RUFoTWpCLDBCbkVGNkIsRW1Fd001Qjs7QUFDYTtFQXZNZCwwQm5FRDZCLEVtRThNNUI7O0FBQ2dCO0VBOU1qQiwwQm5FQTZCLEVtRW9ONUI7O0FBQ2U7RUFyTmhCLDBCbkVDNkIsRW1FME41Qjs7QUFqREM7O0VBMUtGLHNCbkVINEIsRW1Fb0wzQjs7QUFDZ0I7RUFsTGpCLHNCTnlGa0IsRU0rRmpCOztBQUNnQjtF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SUFrQlEsMEJBQXlCLEVBQzVCO0VBbkJMO0lBc0JRLDBCQUEwQjtJQUMxQixZQUFZLEVBS2Y7SUE1Qkw7TUEwQlksMEJBQXdCLEVBQzNCOztBQUlUO0VBQ0ksY0FBYyxFQU1qQjtFQVBEO0lBSVEsWUFBWTtJQUNaLHNCQUFzQixFQUN6Qjs7QUFHTDtFQUNJLDBCQUEwQjtFQUMxQiw4QkFBOEI7RUFDOUIsMEJBQTBCO0VBQzFCLFlBQVk7RUFDWixtQkFBbUI7RUFDbkIsa0JBQWtCO0VBQ2xCLGlDQUFpQztFQUNqQyxzQkFBc0I7RUFDdEIsbUJBQW1CO0VBQ25CLGtCQUFrQixFQU9yQjtFQWpCRDtJQWFRLDBCQUF3QjtJQUN4QixZQUFZO0lBQ1osc0JBQXNCLEVBQ3pCOztBQUdMO0VBQ0ksd0JBQXdCO0VBQ3hCLHlCQUF5QixFQXNCNUI7RUF4QkQ7SUFLUSx1QkFBdUI7SUFDdkIseUJBQXlCLEVBSzVCO0lBWEw7TUFTWSx5QkFBeUIsRUFDNUI7RUFHTDtJQWJKO01BY1Esd0JBQXdCLEVBVS9CLEVBQUE7RUFQRztJQWpCSjtNQWtCUSx3QkFBd0IsRUFNL0IsRUFBQTtFQUhHO0lBckJKO01Bc0JRLHdCQUF3QixFQUUvQixFQUFBOztBQUVEO0VBQ0ksaUJBQWlCLEVBQ3BCOztBQUVEO0VBQ0ksZ0JBQWdCLEVBQ25COztBQUVEO0VBR1EsaUJBQWlCO0VBQ2pCLFlBQVk7RUFDWixlQUFlO0VBQ2YsV0FBVztFQUNYLFdBQVcsRUFTZDtFQVBHO0lBVFI7TUFVWSxXQUFXLEVBTWxCLEVBQUE7RUFoQkw7SUFjWSw0QkFBNEIsRUFDL0I7O0FBSVQ7RUFDSSxjQUFjO0VBQ2Qsc0JBQXNCO0VBQ3RCLFlBQVksRUFDZjs7QUFFRDtFQUNJLG1CQUFtQixFQUN0Qjs7QUFFRDtFQUNJLDBCQUEwQixFQVM3QjtFQVZEO0lBSVEsMEJBQTBCLEVBQzdCO0VBTEw7SUFRUSwwQkFBMEIsRUFDN0IiLCJmaWxlIjoic2l0ZS10aGVtZS5jc3MiLCJzb3VyY2VzQ29udGVudCI6WyJAY2hhcnNldCBcIlVURi04XCI7XG4vKiBLbmlob3ZueSAqL1xuLyohXG4gKiBCb290c3RyYXAgdjMuMy43IChodHRwOi8vZ2V0Ym9vdHN0cmFwLmNvbSlcbiAqIENvcHlyaWdodCAyMDExLTIwMTYgVHdpdHRlciwgSW5jLlxuICogTGljZW5zZWQgdW5kZXIgTUlUIChodHRwczovL2dpdGh1Yi5jb20vdHdicy9ib290c3RyYXAvYmxvYi9tYXN0ZXIvTElDRU5TRSlcbiAqL1xuLyohIG5vcm1hbGl6ZS5jc3MgdjMuMC4zIHwgTUlUIExpY2Vuc2UgfCBnaXRodWIuY29tL25lY29sYXMvbm9ybWFsaXplLmNzcyAqL1xuQGltcG9ydCB1cmwoLi4vQ29udGVudC9GbGF0aWNvbi9mbGF0aWNvbi5jc3MpO1xuaHRtbCB7XG4gIGZvbnQtZmFtaWx5OiBzYW5zLXNlcmlmO1xuICAtbXMtdGV4dC1zaXplLWFkanVzdDogMTAwJTtcbiAgLXdlYmtpdC10ZXh0LXNpemUtYWRqdXN0OiAxMDAlOyB9XG5cbmJvZHkge1xuICBtYXJnaW46IDA7IH1cblxuYXJ0aWNsZSxcbmFzaWRlLFxuZGV0YWlscyxcbmZpZ2NhcHRpb24sXG5maWd1cmUsXG5mb290ZXIsXG5oZWFkZXIsXG5oZ3JvdXAsXG5tYWluLFxubWVudSxcbm5hdixcbnNlY3Rpb24sXG5zdW1tYXJ5IHtcbiAgZGlzcGxheTogYmxvY2s7IH1cblxuYXVkaW8sXG5jYW52YXMsXG5wcm9ncmVzcyxcbnZpZGVvIHtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICB2ZXJ0aWNhbC1hbGlnbjogYmFzZWxpbmU7IH1cblxuYXVkaW86bm90KFtjb250cm9sc10pIHtcbiAgZGlzcGxheTogbm9uZTtcbiAgaGVpZ2h0OiAwOyB9XG5cbltoaWRkZW5dLFxudGVtcGxhdGUge1xuICBkaXNwbGF5OiBub25lOyB9XG5cbmEge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDsgfVxuXG5hOmFjdGl2ZSxcbmE6aG92ZXIge1xuICBvdXRsaW5lOiAwOyB9XG5cbmFiYnJbdGl0bGVdIHtcbiAgYm9yZGVyLWJvdHRvbTogMXB4IGRvdHRlZDsgfVxuXG5iLFxuc3Ryb25nIHtcbiAgZm9udC13ZWlnaHQ6IGJvbGQ7IH1cblxuZGZuIHtcbiAgZm9udC1zdHlsZTogaXRhbGljOyB9XG5cbmgxIHtcbiAgZm9udC1zaXplOiAyZW07XG4gIG1hcmdpbjogMC42N2VtIDA7IH1cblxubWFyayB7XG4gIGJhY2tncm91bmQ6ICNmZjA7XG4gIGNvbG9yOiAjMDAwOyB9XG5cbnNtYWxsIHtcbiAgZm9udC1zaXplOiA4MCU7IH1cblxuc3ViLFxuc3VwIHtcbiAgZm9udC1zaXplOiA3NSU7XG4gIGxpbmUtaGVpZ2h0OiAwO1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIHZlcnRpY2FsLWFsaWduOiBiYXNlbGluZTsgfVxuXG5zdXAge1xuICB0b3A6IC0wLjVlbTsgfVxuXG5zdWIge1xuICBib3R0b206IC0wLjI1ZW07IH1cblxuaW1nIHtcbiAgYm9yZGVyOiAwOyB9XG5cbnN2Zzpub3QoOnJvb3QpIHtcbiAgb3ZlcmZsb3c6IGhpZGRlbjsgfVxuXG5maWd1cmUge1xuICBtYXJnaW46IDFlbSA0MHB4OyB9XG5cbmhyIHtcbiAgYm94LXNpemluZzogY29udGVudC1ib3g7XG4gIGhlaWdodDogMDsgfVxuXG5wcmUge1xuICBvdmVyZmxvdzogYXV0bzsgfVxuXG5jb2RlLFxua2JkLFxucHJlLFxuc2FtcCB7XG4gIGZvbnQtZmFtaWx5OiBtb25vc3BhY2UsIG1vbm9zcGFjZTtcbiAgZm9udC1zaXplOiAxZW07IH1cblxuYnV0dG9uLFxuaW5wdXQsXG5vcHRncm91cCxcbnNlbGVjdCxcbnRleHRhcmVhIHtcbiAgY29sb3I6IGluaGVyaXQ7XG4gIGZvbnQ6IGluaGVyaXQ7XG4gIG1hcmdpbjogMDsgfVxuXG5idXR0b24ge1xuICBvdmVyZmxvdzogdmlzaWJsZTsgfVxuXG5idXR0b24sXG5zZWxlY3Qge1xuICB0ZXh0LXRyYW5zZm9ybTogbm9uZTsgfVxuXG5idXR0b24sXG5odG1sIGlucHV0W3R5cGU9XCJidXR0b25cIl0sXG5pbnB1dFt0eXBlPVwicmVzZXRcIl0sXG5pbnB1dFt0eXBlPVwic3VibWl0XCJdIHtcbiAgLXdlYmtpdC1hcHBlYXJhbmNlOiBidXR0b247XG4gIGN1cnNvcjogcG9pbnRlcjsgfVxuXG5idXR0b25bZGlzYWJsZWRdLFxuaHRtbCBpbnB1dFtkaXNhYmxlZF0ge1xuICBjdXJzb3I6IGRlZmF1bHQ7IH1cblxuYnV0dG9uOjotbW96LWZvY3VzLWlubmVyLFxuaW5wdXQ6Oi1tb3otZm9jdXMtaW5uZXIge1xuICBib3JkZXI6IDA7XG4gIHBhZGRpbmc6IDA7IH1cblxuaW5wdXQge1xuICBsaW5lLWhlaWdodDogbm9ybWFsOyB9XG5cbmlucHV0W3R5cGU9XCJjaGVja2JveFwiXSxcbmlucHV0W3R5cGU9XCJyYWRpb1wiXSB7XG4gIGJveC1zaXppbmc6IGJvcmRlci1ib3g7XG4gIHBhZGRpbmc6IDA7IH1cblxuaW5wdXRbdHlwZT1cIm51bWJlclwiXTo6LXdlYmtpdC1pbm5lci1zcGluLWJ1dHRvbixcbmlucHV0W3R5cGU9XCJudW1iZXJcIl06Oi13ZWJraXQtb3V0ZXItc3Bpbi1idXR0b24ge1xuICBoZWlnaHQ6IGF1dG87IH1cblxuaW5wdXRbdHlwZT1cInNlYXJjaFwiXSB7XG4gIC13ZWJraXQtYXBwZWFyYW5jZTogdGV4dGZpZWxkO1xuICBib3gtc2l6aW5nOiBjb250ZW50LWJveDsgfVxuXG5pbnB1dFt0eXBlPVwic2VhcmNoXCJdOjotd2Via2l0LXNlYXJjaC1jYW5jZWwtYnV0dG9uLFxuaW5wdXRbdHlwZT1cInNlYXJjaFwiXTo6LXdlYmtpdC1zZWFyY2gtZGVjb3JhdGlvbiB7XG4gIC13ZWJraXQtYXBwZWFyYW5jZTogbm9uZTsgfVxuXG5maWVsZHNldCB7XG4gIGJvcmRlcjogMXB4IHNvbGlkICNjMGMwYzA7XG4gIG1hcmdpbjogMCAycHg7XG4gIHBhZGRpbmc6IDAuMzVlbSAwLjYyNWVtIDAuNzVlbTsgfVxuXG5sZWdlbmQge1xuICBib3JkZXI6IDA7XG4gIHBhZGRpbmc6IDA7IH1cblxudGV4dGFyZWEge1xuICBvdmVyZmxvdzogYXV0bzsgfVxuXG5vcHRncm91cCB7XG4gIGZvbnQtd2VpZ2h0OiBib2xkOyB9XG5cbnRhYmxlIHtcbiAgYm9yZGVyLWNvbGxhcHNlOiBjb2xsYXBzZTtcbiAgYm9yZGVyLXNwYWNpbmc6IDA7IH1cblxudGQsXG50aCB7XG4gIHBhZGRpbmc6IDA7IH1cblxuLyohIFNvdXJjZTogaHR0cHM6Ly9naXRodWIuY29tL2g1YnAvaHRtbDUtYm9pbGVycGxhdGUvYmxvYi9tYXN0ZXIvc3JjL2Nzcy9tYWluLmNzcyAqL1xuQG1lZGlhIHByaW50IHtcbiAgKixcbiAgKjpiZWZvcmUsXG4gICo6YWZ0ZXIge1xuICAgIGJhY2tncm91bmQ6IHRyYW5zcGFyZW50ICFpbXBvcnRhbnQ7XG4gICAgY29sb3I6ICMwMDAgIWltcG9ydGFudDtcbiAgICBib3gtc2hhZG93OiBub25lICFpbXBvcnRhbnQ7XG4gICAgdGV4dC1zaGFkb3c6IG5vbmUgIWltcG9ydGFudDsgfVxuICBhLFxuICBhOnZpc2l0ZWQge1xuICAgIHRleHQtZGVjb3JhdGlvbjogdW5kZXJsaW5lOyB9XG4gIGFbaHJlZl06YWZ0ZXIge1xuICAgIGNvbnRlbnQ6IFwiIChcIiBhdHRyKGhyZWYpIFwiKVwiOyB9XG4gIGFiYnJbdGl0bGVdOmFmdGVyIHtcbiAgICBjb250ZW50OiBcIiAoXCIgYXR0cih0aXRsZSkgXCIpXCI7IH1cbiAgYVtocmVmXj1cIiNcIl06YWZ0ZXIsXG4gIGFbaHJlZl49XCJqYXZhc2NyaXB0OlwiXTphZnRlciB7XG4gICAgY29udGVudDogXCJcIjsgfVxuICBwcmUsXG4gIGJsb2NrcXVvdGUge1xuICAgIGJvcmRlcjogMXB4IHNvbGlkICM5OTk7XG4gICAgcGFnZS1icmVhay1pbnNpZGU6IGF2b2lkOyB9XG4gIHRoZWFkIHtcbiAgICBkaXNwbGF5OiB0YWJsZS1oZWFkZXItZ3JvdXA7IH1cbiAgdHIsXG4gIGltZyB7XG4gICAgcGFnZS1icmVhay1pbnNpZGU6IGF2b2lkOyB9XG4gIGltZyB7XG4gICAgbWF4LXdpZHRoOiAxMDAlICFpbXBvcnRhbnQ7IH1cbiAgcCxcbiAgaDIsXG4gIGgzIHtcbiAgICBvcnBoYW5zOiAzO1xuICAgIHdpZG93czogMzsgfVxuICBoMixcbiAgaDMge1xuICAgIHBhZ2UtYnJlYWstYWZ0ZXI6IGF2b2lkOyB9XG4gIC5uYXZiYXIge1xuICAgIGRpc3BsYXk6IG5vbmU7IH1cbiAgLmJ0biA+IC5jYXJldCxcbiAgLmRyb3B1cCA+IC5idG4gPiAuY2FyZXQge1xuICAgIGJvcmRlci10b3AtY29sb3I6ICMwMDAgIWltcG9ydGFudDsgfVxuICAubGFiZWwge1xuICAgIGJvcmRlcjogMXB4IHNvbGlkICMwMDA7IH1cbiAgLnRhYmxlIHtcbiAgICBib3JkZXItY29sbGFwc2U6IGNvbGxhcHNlICFpbXBvcnRhbnQ7IH1cbiAgICAudGFibGUgdGQsXG4gICAgLnRhYmxlIHRoIHtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6ICNmZmYgIWltcG9ydGFudDsgfVxuICAudGFibGUtYm9yZGVyZWQgdGgsXG4gIC50YWJsZS1ib3JkZXJlZCB0ZCB7XG4gICAgYm9yZGVyOiAxcHggc29saWQgI2RkZCAhaW1wb3J0YW50OyB9IH1cblxuQGZvbnQtZmFjZSB7XG4gIGZvbnQtZmFtaWx5OiAnR2x5cGhpY29ucyBIYWxmbGluZ3MnO1xuICBzcmM6IHVybChcIi4uL2ZvbnRzL2Jvb3RzdHJhcC9nbHlwaGljb25zLWhhbGZsaW5ncy1yZWd1bGFyLmVvdFwiKTtcbiAgc3JjOiB1cmwoXCIuLi9mb250cy9ib290c3RyYXAvZ2x5cGhpY29ucy1oYWxmbGluZ3MtcmVndWxhci5lb3Q/I2llZml4XCIpIGZvcm1hdChcImVtYmVkZGVkLW9wZW50eXBlXCIpLCB1cmwoXCIuLi9mb250cy9ib290c3RyYXAvZ2x5cGhpY29ucy1oYWxmbGluZ3MtcmVndWxhci53b2ZmMlwiKSBmb3JtYXQoXCJ3b2ZmMlwiKSwgdXJsKFwiLi4vZm9udHMvYm9vdHN0cmFwL2dseXBoaWNvbnMtaGFsZmxpbmdzLXJlZ3VsYXIud29mZlwiKSBmb3JtYXQoXCJ3b2ZmXCIpLCB1cmwoXCIuLi9mb250cy9ib290c3RyYXAvZ2x5cGhpY29ucy1oYWxmbGluZ3MtcmVndWxhci50dGZcIikgZm9ybWF0KFwidHJ1ZXR5cGVcIiksIHVybChcIi4uL2ZvbnRzL2Jvb3RzdHJhcC9nbHlwaGljb25zLWhhbGZsaW5ncy1yZWd1bGFyLnN2ZyNnbHlwaGljb25zX2hhbGZsaW5nc3JlZ3VsYXJcIikgZm9ybWF0KFwic3ZnXCIpOyB9XG5cbi5nbHlwaGljb24ge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIHRvcDogMXB4O1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIGZvbnQtZmFtaWx5OiAnR2x5cGhpY29ucyBIYWxmbGluZ3MnO1xuICBmb250LXN0eWxlOiBub3JtYWw7XG4gIGZvbnQtd2VpZ2h0OiBub3JtYWw7XG4gIGxpbmUtaGVpZ2h0OiAxO1xuICAtd2Via2l0LWZvbnQtc21vb3RoaW5nOiBhbnRpYWxpYXNlZDtcbiAgLW1vei1vc3gtZm9udC1zbW9vdGhpbmc6IGdyYXlzY2FsZTsgfVxuXG4uZ2x5cGhpY29uLWFzdGVyaXNrOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFwwMDJhXCI7IH1cblxuLmdseXBoaWNvbi1wbHVzOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFwwMDJiXCI7IH1cblxuLmdseXBoaWNvbi1ldXJvOmJlZm9yZSxcbi5nbHlwaGljb24tZXVyOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFwyMGFjXCI7IH1cblxuLmdseXBoaWNvbi1taW51czpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcMjIxMlwiOyB9XG5cbi5nbHlwaGljb24tY2xvdWQ6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXDI2MDFcIjsgfVxuXG4uZ2x5cGhpY29uLWVudmVsb3BlOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFwyNzA5XCI7IH1cblxuLmdseXBoaWNvbi1wZW5jaWw6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXDI3MGZcIjsgfVxuXG4uZ2x5cGhpY29uLWdsYXNzOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlMDAxXCI7IH1cblxuLmdseXBoaWNvbi1tdXNpYzpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZTAwMlwiOyB9XG5cbi5nbHlwaGljb24tc2VhcmNoOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlMDAzXCI7IH1cblxuLmdseXBoaWNvbi1oZWFydDpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZTAwNVwiOyB9XG5cbi5nbHlwaGljb24tc3RhcjpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZTAwNlwiOyB9XG5cbi5nbHlwaGljb24tc3Rhci1lbXB0eTpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZTAwN1wiOyB9XG5cbi5nbHlwaGljb24tdXNlcjpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZTAwOFwiOyB9XG5cbi5nbHlwaGljb24tZmlsbTpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZTAwOVwiOyB9XG5cbi5nbHlwaGljb24tdGgtbGFyZ2U6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGUwMTBcIjsgfVxuXG4uZ2x5cGhpY29uLXRoOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlMDExXCI7IH1cblxuLmdseXBoaWNvbi10aC1saXN0OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlMDEyXCI7IH1cblxuLmdseXBoaWNvbi1vazpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZTAxM1wiOyB9XG5cbi5nbHlwaGljb24tcmVtb3ZlOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlMDE0XCI7IH1cblxuLmdseXBoaWNvbi16b29tLWluOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlMDE1XCI7IH1cblxuLmdseXBoaWNvbi16b29tLW91dDpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZTAxNlwiOyB9XG5cbi5nbHlwaGljb24tb2ZmOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlMDE3XCI7IH1cblxuLmdseXBoaWNvbi1zaWduYWw6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGUwMThcIjsgfVxuXG4uZ2x5cGhpY29uLWNvZzpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZTAxOVwiOyB9XG5cbi5nbHlwaGljb24tdHJhc2g6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGUwMjBcIjsgfVxuXG4uZ2x5cGhpY29uLWhvbWU6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGUwMjFcIjsgfVxuXG4uZ2x5cGhpY29uLWZpbGU6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGUwMjJcIjsgfVxuXG4uZ2x5cGhpY29uLXRpbWU6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGUwMjNcIjsgfVxuXG4uZ2x5cGhpY29uLXJvYWQ6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGUwMjRcIjsgfVxuXG4uZ2x5cGhpY29uLWRvd25sb2FkLWFsdDpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZTAyNVwiOyB9XG5cbi5nbHlwaGljb24tZG93bmxvYWQ6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGUwMjZcIjsgfVxuXG4uZ2x5cGhpY29uLXVwbG9hZDpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZTAyN1wiOyB9XG5cbi5nbHlwaGljb24taW5ib3g6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGUwMjhcIjsgfVxuXG4uZ2x5cGhpY29uLXBsYXktY2lyY2xlOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlMDI5XCI7IH1cblxuLmdseXBoaWNvbi1yZXBlYXQ6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGUwMzBcIjsgfVxuXG4uZ2x5cGhpY29uLXJlZnJlc2g6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGUwMzFcIjsgfVxuXG4uZ2x5cGhpY29uLWxpc3QtYWx0OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlMDMyXCI7IH1cblxuLmdseXBoaWNvbi1sb2NrOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlMDMzXCI7IH1cblxuLmdseXBoaWNvbi1mbGFnOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlMDM0XCI7IH1cblxuLmdseXBoaWNvbi1oZWFkcGhvbmVzOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlMDM1XCI7IH1cblxuLmdseXBoaWNvbi12b2x1bWUtb2ZmOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlMDM2XCI7IH1cblxuLmdseXBoaWNvbi12b2x1bWUtZG93bjpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZTAzN1wiOyB9XG5cbi5nbHlwaGljb24tdm9sdW1lLXVwOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlMDM4XCI7IH1cblxuLmdseXBoaWNvbi1xcmNvZGU6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGUwMzlcIjsgfVxuXG4uZ2x5cGhpY29uLWJhcmNvZGU6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGUwNDBcIjsgfVxuXG4uZ2x5cGhpY29uLXRhZzpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZTA0MVwiOyB9XG5cbi5nbHlwaGljb24tdGFnczpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZTA0MlwiOyB9XG5cbi5nbHlwaGljb24tYm9vazpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZTA0M1wiOyB9XG5cbi5nbHlwaGljb24tYm9va21hcms6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGUwNDRcIjsgfVxuXG4uZ2x5cGhpY29uLXByaW50OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlMDQ1XCI7IH1cblxuLmdseXBoaWNvbi1jYW1lcmE6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGUwNDZcIjsgfVxuXG4uZ2x5cGhpY29uLWZvbnQ6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGUwNDdcIjsgfVxuXG4uZ2x5cGhpY29uLWJvbGQ6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGUwNDhcIjsgfVxuXG4uZ2x5cGhpY29uLWl0YWxpYzpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZTA0OVwiOyB9XG5cbi5nbHlwaGljb24tdGV4dC1oZWlnaHQ6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGUwNTBcIjsgfVxuXG4uZ2x5cGhpY29uLXRleHQtd2lkdGg6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGUwNTFcIjsgfVxuXG4uZ2x5cGhpY29uLWFsaWduLWxlZnQ6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGUwNTJcIjsgfVxuXG4uZ2x5cGhpY29uLWFsaWduLWNlbnRlcjpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZTA1M1wiOyB9XG5cbi5nbHlwaGljb24tYWxpZ24tcmlnaHQ6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGUwNTRcIjsgfVxuXG4uZ2x5cGhpY29uLWFsaWduLWp1c3RpZnk6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGUwNTVcIjsgfVxuXG4uZ2x5cGhpY29uLWxpc3Q6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGUwNTZcIjsgfVxuXG4uZ2x5cGhpY29uLWluZGVudC1sZWZ0OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlMDU3XCI7IH1cblxuLmdseXBoaWNvbi1pbmRlbnQtcmlnaHQ6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGUwNThcIjsgfVxuXG4uZ2x5cGhpY29uLWZhY2V0aW1lLXZpZGVvOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlMDU5XCI7IH1cblxuLmdseXBoaWNvbi1waWN0dXJlOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlMDYwXCI7IH1cblxuLmdseXBoaWNvbi1tYXAtbWFya2VyOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlMDYyXCI7IH1cblxuLmdseXBoaWNvbi1hZGp1c3Q6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGUwNjNcIjsgfVxuXG4uZ2x5cGhpY29uLXRpbnQ6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGUwNjRcIjsgfVxuXG4uZ2x5cGhpY29uLWVkaXQ6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGUwNjVcIjsgfVxuXG4uZ2x5cGhpY29uLXNoYXJlOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlMDY2XCI7IH1cblxuLmdseXBoaWNvbi1jaGVjazpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZTA2N1wiOyB9XG5cbi5nbHlwaGljb24tbW92ZTpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZTA2OFwiOyB9XG5cbi5nbHlwaGljb24tc3RlcC1iYWNrd2FyZDpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZTA2OVwiOyB9XG5cbi5nbHlwaGljb24tZmFzdC1iYWNrd2FyZDpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZTA3MFwiOyB9XG5cbi5nbHlwaGljb24tYmFja3dhcmQ6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGUwNzFcIjsgfVxuXG4uZ2x5cGhpY29uLXBsYXk6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGUwNzJcIjsgfVxuXG4uZ2x5cGhpY29uLXBhdXNlOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlMDczXCI7IH1cblxuLmdseXBoaWNvbi1zdG9wOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlMDc0XCI7IH1cblxuLmdseXBoaWNvbi1mb3J3YXJkOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlMDc1XCI7IH1cblxuLmdseXBoaWNvbi1mYXN0LWZvcndhcmQ6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGUwNzZcIjsgfVxuXG4uZ2x5cGhpY29uLXN0ZXAtZm9yd2FyZDpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZTA3N1wiOyB9XG5cbi5nbHlwaGljb24tZWplY3Q6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGUwNzhcIjsgfVxuXG4uZ2x5cGhpY29uLWNoZXZyb24tbGVmdDpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZTA3OVwiOyB9XG5cbi5nbHlwaGljb24tY2hldnJvbi1yaWdodDpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZTA4MFwiOyB9XG5cbi5nbHlwaGljb24tcGx1cy1zaWduOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlMDgxXCI7IH1cblxuLmdseXBoaWNvbi1taW51cy1zaWduOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlMDgyXCI7IH1cblxuLmdseXBoaWNvbi1yZW1vdmUtc2lnbjpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZTA4M1wiOyB9XG5cbi5nbHlwaGljb24tb2stc2lnbjpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZTA4NFwiOyB9XG5cbi5nbHlwaGljb24tcXVlc3Rpb24tc2lnbjpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZTA4NVwiOyB9XG5cbi5nbHlwaGljb24taW5mby1zaWduOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlMDg2XCI7IH1cblxuLmdseXBoaWNvbi1zY3JlZW5zaG90OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlMDg3XCI7IH1cblxuLmdseXBoaWNvbi1yZW1vdmUtY2lyY2xlOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlMDg4XCI7IH1cblxuLmdseXBoaWNvbi1vay1jaXJjbGU6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGUwODlcIjsgfVxuXG4uZ2x5cGhpY29uLWJhbi1jaXJjbGU6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGUwOTBcIjsgfVxuXG4uZ2x5cGhpY29uLWFycm93LWxlZnQ6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGUwOTFcIjsgfVxuXG4uZ2x5cGhpY29uLWFycm93LXJpZ2h0OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlMDkyXCI7IH1cblxuLmdseXBoaWNvbi1hcnJvdy11cDpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZTA5M1wiOyB9XG5cbi5nbHlwaGljb24tYXJyb3ctZG93bjpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZTA5NFwiOyB9XG5cbi5nbHlwaGljb24tc2hhcmUtYWx0OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlMDk1XCI7IH1cblxuLmdseXBoaWNvbi1yZXNpemUtZnVsbDpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZTA5NlwiOyB9XG5cbi5nbHlwaGljb24tcmVzaXplLXNtYWxsOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlMDk3XCI7IH1cblxuLmdseXBoaWNvbi1leGNsYW1hdGlvbi1zaWduOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlMTAxXCI7IH1cblxuLmdseXBoaWNvbi1naWZ0OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlMTAyXCI7IH1cblxuLmdseXBoaWNvbi1sZWFmOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlMTAzXCI7IH1cblxuLmdseXBoaWNvbi1maXJlOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlMTA0XCI7IH1cblxuLmdseXBoaWNvbi1leWUtb3BlbjpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZTEwNVwiOyB9XG5cbi5nbHlwaGljb24tZXllLWNsb3NlOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlMTA2XCI7IH1cblxuLmdseXBoaWNvbi13YXJuaW5nLXNpZ246YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGUxMDdcIjsgfVxuXG4uZ2x5cGhpY29uLXBsYW5lOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlMTA4XCI7IH1cblxuLmdseXBoaWNvbi1jYWxlbmRhcjpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZTEwOVwiOyB9XG5cbi5nbHlwaGljb24tcmFuZG9tOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlMTEwXCI7IH1cblxuLmdseXBoaWNvbi1jb21tZW50OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlMTExXCI7IH1cblxuLmdseXBoaWNvbi1tYWduZXQ6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGUxMTJcIjsgfVxuXG4uZ2x5cGhpY29uLWNoZXZyb24tdXA6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGUxMTNcIjsgfVxuXG4uZ2x5cGhpY29uLWNoZXZyb24tZG93bjpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZTExNFwiOyB9XG5cbi5nbHlwaGljb24tcmV0d2VldDpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZTExNVwiOyB9XG5cbi5nbHlwaGljb24tc2hvcHBpbmctY2FydDpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZTExNlwiOyB9XG5cbi5nbHlwaGljb24tZm9sZGVyLWNsb3NlOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlMTE3XCI7IH1cblxuLmdseXBoaWNvbi1mb2xkZXItb3BlbjpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZTExOFwiOyB9XG5cbi5nbHlwaGljb24tcmVzaXplLXZlcnRpY2FsOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlMTE5XCI7IH1cblxuLmdseXBoaWNvbi1yZXNpemUtaG9yaXpvbnRhbDpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZTEyMFwiOyB9XG5cbi5nbHlwaGljb24taGRkOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlMTIxXCI7IH1cblxuLmdseXBoaWNvbi1idWxsaG9ybjpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZTEyMlwiOyB9XG5cbi5nbHlwaGljb24tYmVsbDpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZTEyM1wiOyB9XG5cbi5nbHlwaGljb24tY2VydGlmaWNhdGU6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGUxMjRcIjsgfVxuXG4uZ2x5cGhpY29uLXRodW1icy11cDpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZTEyNVwiOyB9XG5cbi5nbHlwaGljb24tdGh1bWJzLWRvd246YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGUxMjZcIjsgfVxuXG4uZ2x5cGhpY29uLWhhbmQtcmlnaHQ6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGUxMjdcIjsgfVxuXG4uZ2x5cGhpY29uLWhhbmQtbGVmdDpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZTEyOFwiOyB9XG5cbi5nbHlwaGljb24taGFuZC11cDpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZTEyOVwiOyB9XG5cbi5nbHlwaGljb24taGFuZC1kb3duOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlMTMwXCI7IH1cblxuLmdseXBoaWNvbi1jaXJjbGUtYXJyb3ctcmlnaHQ6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGUxMzFcIjsgfVxuXG4uZ2x5cGhpY29uLWNpcmNsZS1hcnJvdy1sZWZ0OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlMTMyXCI7IH1cblxuLmdseXBoaWNvbi1jaXJjbGUtYXJyb3ctdXA6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGUxMzNcIjsgfVxuXG4uZ2x5cGhpY29uLWNpcmNsZS1hcnJvdy1kb3duOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlMTM0XCI7IH1cblxuLmdseXBoaWNvbi1nbG9iZTpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZTEzNVwiOyB9XG5cbi5nbHlwaGljb24td3JlbmNoOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlMTM2XCI7IH1cblxuLmdseXBoaWNvbi10YXNrczpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZTEzN1wiOyB9XG5cbi5nbHlwaGljb24tZmlsdGVyOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlMTM4XCI7IH1cblxuLmdseXBoaWNvbi1icmllZmNhc2U6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGUxMzlcIjsgfVxuXG4uZ2x5cGhpY29uLWZ1bGxzY3JlZW46YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGUxNDBcIjsgfVxuXG4uZ2x5cGhpY29uLWRhc2hib2FyZDpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZTE0MVwiOyB9XG5cbi5nbHlwaGljb24tcGFwZXJjbGlwOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlMTQyXCI7IH1cblxuLmdseXBoaWNvbi1oZWFydC1lbXB0eTpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZTE0M1wiOyB9XG5cbi5nbHlwaGljb24tbGluazpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZTE0NFwiOyB9XG5cbi5nbHlwaGljb24tcGhvbmU6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGUxNDVcIjsgfVxuXG4uZ2x5cGhpY29uLXB1c2hwaW46YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGUxNDZcIjsgfVxuXG4uZ2x5cGhpY29uLXVzZDpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZTE0OFwiOyB9XG5cbi5nbHlwaGljb24tZ2JwOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlMTQ5XCI7IH1cblxuLmdseXBoaWNvbi1zb3J0OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlMTUwXCI7IH1cblxuLmdseXBoaWNvbi1zb3J0LWJ5LWFscGhhYmV0OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlMTUxXCI7IH1cblxuLmdseXBoaWNvbi1zb3J0LWJ5LWFscGhhYmV0LWFsdDpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZTE1MlwiOyB9XG5cbi5nbHlwaGljb24tc29ydC1ieS1vcmRlcjpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZTE1M1wiOyB9XG5cbi5nbHlwaGljb24tc29ydC1ieS1vcmRlci1hbHQ6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGUxNTRcIjsgfVxuXG4uZ2x5cGhpY29uLXNvcnQtYnktYXR0cmlidXRlczpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZTE1NVwiOyB9XG5cbi5nbHlwaGljb24tc29ydC1ieS1hdHRyaWJ1dGVzLWFsdDpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZTE1NlwiOyB9XG5cbi5nbHlwaGljb24tdW5jaGVja2VkOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlMTU3XCI7IH1cblxuLmdseXBoaWNvbi1leHBhbmQ6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGUxNThcIjsgfVxuXG4uZ2x5cGhpY29uLWNvbGxhcHNlLWRvd246YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGUxNTlcIjsgfVxuXG4uZ2x5cGhpY29uLWNvbGxhcHNlLXVwOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlMTYwXCI7IH1cblxuLmdseXBoaWNvbi1sb2ctaW46YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGUxNjFcIjsgfVxuXG4uZ2x5cGhpY29uLWZsYXNoOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlMTYyXCI7IH1cblxuLmdseXBoaWNvbi1sb2ctb3V0OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlMTYzXCI7IH1cblxuLmdseXBoaWNvbi1uZXctd2luZG93OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlMTY0XCI7IH1cblxuLmdseXBoaWNvbi1yZWNvcmQ6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGUxNjVcIjsgfVxuXG4uZ2x5cGhpY29uLXNhdmU6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGUxNjZcIjsgfVxuXG4uZ2x5cGhpY29uLW9wZW46YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGUxNjdcIjsgfVxuXG4uZ2x5cGhpY29uLXNhdmVkOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlMTY4XCI7IH1cblxuLmdseXBoaWNvbi1pbXBvcnQ6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGUxNjlcIjsgfVxuXG4uZ2x5cGhpY29uLWV4cG9ydDpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZTE3MFwiOyB9XG5cbi5nbHlwaGljb24tc2VuZDpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZTE3MVwiOyB9XG5cbi5nbHlwaGljb24tZmxvcHB5LWRpc2s6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGUxNzJcIjsgfVxuXG4uZ2x5cGhpY29uLWZsb3BweS1zYXZlZDpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZTE3M1wiOyB9XG5cbi5nbHlwaGljb24tZmxvcHB5LXJlbW92ZTpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZTE3NFwiOyB9XG5cbi5nbHlwaGljb24tZmxvcHB5LXNhdmU6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGUxNzVcIjsgfVxuXG4uZ2x5cGhpY29uLWZsb3BweS1vcGVuOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlMTc2XCI7IH1cblxuLmdseXBoaWNvbi1jcmVkaXQtY2FyZDpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZTE3N1wiOyB9XG5cbi5nbHlwaGljb24tdHJhbnNmZXI6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGUxNzhcIjsgfVxuXG4uZ2x5cGhpY29uLWN1dGxlcnk6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGUxNzlcIjsgfVxuXG4uZ2x5cGhpY29uLWhlYWRlcjpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZTE4MFwiOyB9XG5cbi5nbHlwaGljb24tY29tcHJlc3NlZDpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZTE4MVwiOyB9XG5cbi5nbHlwaGljb24tZWFycGhvbmU6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGUxODJcIjsgfVxuXG4uZ2x5cGhpY29uLXBob25lLWFsdDpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZTE4M1wiOyB9XG5cbi5nbHlwaGljb24tdG93ZXI6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGUxODRcIjsgfVxuXG4uZ2x5cGhpY29uLXN0YXRzOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlMTg1XCI7IH1cblxuLmdseXBoaWNvbi1zZC12aWRlbzpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZTE4NlwiOyB9XG5cbi5nbHlwaGljb24taGQtdmlkZW86YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGUxODdcIjsgfVxuXG4uZ2x5cGhpY29uLXN1YnRpdGxlczpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZTE4OFwiOyB9XG5cbi5nbHlwaGljb24tc291bmQtc3RlcmVvOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlMTg5XCI7IH1cblxuLmdseXBoaWNvbi1zb3VuZC1kb2xieTpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZTE5MFwiOyB9XG5cbi5nbHlwaGljb24tc291bmQtNS0xOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlMTkxXCI7IH1cblxuLmdseXBoaWNvbi1zb3VuZC02LTE6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGUxOTJcIjsgfVxuXG4uZ2x5cGhpY29uLXNvdW5kLTctMTpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZTE5M1wiOyB9XG5cbi5nbHlwaGljb24tY29weXJpZ2h0LW1hcms6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGUxOTRcIjsgfVxuXG4uZ2x5cGhpY29uLXJlZ2lzdHJhdGlvbi1tYXJrOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlMTk1XCI7IH1cblxuLmdseXBoaWNvbi1jbG91ZC1kb3dubG9hZDpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZTE5N1wiOyB9XG5cbi5nbHlwaGljb24tY2xvdWQtdXBsb2FkOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlMTk4XCI7IH1cblxuLmdseXBoaWNvbi10cmVlLWNvbmlmZXI6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGUxOTlcIjsgfVxuXG4uZ2x5cGhpY29uLXRyZWUtZGVjaWR1b3VzOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlMjAwXCI7IH1cblxuLmdseXBoaWNvbi1jZDpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZTIwMVwiOyB9XG5cbi5nbHlwaGljb24tc2F2ZS1maWxlOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlMjAyXCI7IH1cblxuLmdseXBoaWNvbi1vcGVuLWZpbGU6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGUyMDNcIjsgfVxuXG4uZ2x5cGhpY29uLWxldmVsLXVwOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlMjA0XCI7IH1cblxuLmdseXBoaWNvbi1jb3B5OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlMjA1XCI7IH1cblxuLmdseXBoaWNvbi1wYXN0ZTpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZTIwNlwiOyB9XG5cbi5nbHlwaGljb24tYWxlcnQ6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGUyMDlcIjsgfVxuXG4uZ2x5cGhpY29uLWVxdWFsaXplcjpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZTIxMFwiOyB9XG5cbi5nbHlwaGljb24ta2luZzpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZTIxMVwiOyB9XG5cbi5nbHlwaGljb24tcXVlZW46YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGUyMTJcIjsgfVxuXG4uZ2x5cGhpY29uLXBhd246YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGUyMTNcIjsgfVxuXG4uZ2x5cGhpY29uLWJpc2hvcDpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZTIxNFwiOyB9XG5cbi5nbHlwaGljb24ta25pZ2h0OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlMjE1XCI7IH1cblxuLmdseXBoaWNvbi1iYWJ5LWZvcm11bGE6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGUyMTZcIjsgfVxuXG4uZ2x5cGhpY29uLXRlbnQ6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXDI2ZmFcIjsgfVxuXG4uZ2x5cGhpY29uLWJsYWNrYm9hcmQ6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGUyMThcIjsgfVxuXG4uZ2x5cGhpY29uLWJlZDpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZTIxOVwiOyB9XG5cbi5nbHlwaGljb24tYXBwbGU6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGY4ZmZcIjsgfVxuXG4uZ2x5cGhpY29uLWVyYXNlOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlMjIxXCI7IH1cblxuLmdseXBoaWNvbi1ob3VyZ2xhc3M6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXDIzMWJcIjsgfVxuXG4uZ2x5cGhpY29uLWxhbXA6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGUyMjNcIjsgfVxuXG4uZ2x5cGhpY29uLWR1cGxpY2F0ZTpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZTIyNFwiOyB9XG5cbi5nbHlwaGljb24tcGlnZ3ktYmFuazpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZTIyNVwiOyB9XG5cbi5nbHlwaGljb24tc2Npc3NvcnM6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGUyMjZcIjsgfVxuXG4uZ2x5cGhpY29uLWJpdGNvaW46YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGUyMjdcIjsgfVxuXG4uZ2x5cGhpY29uLWJ0YzpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZTIyN1wiOyB9XG5cbi5nbHlwaGljb24teGJ0OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlMjI3XCI7IH1cblxuLmdseXBoaWNvbi15ZW46YmVmb3JlIHtcbiAgY29udGVudDogXCJcXDAwYTVcIjsgfVxuXG4uZ2x5cGhpY29uLWpweTpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcMDBhNVwiOyB9XG5cbi5nbHlwaGljb24tcnVibGU6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXDIwYmRcIjsgfVxuXG4uZ2x5cGhpY29uLXJ1YjpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcMjBiZFwiOyB9XG5cbi5nbHlwaGljb24tc2NhbGU6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGUyMzBcIjsgfVxuXG4uZ2x5cGhpY29uLWljZS1sb2xseTpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZTIzMVwiOyB9XG5cbi5nbHlwaGljb24taWNlLWxvbGx5LXRhc3RlZDpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZTIzMlwiOyB9XG5cbi5nbHlwaGljb24tZWR1Y2F0aW9uOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlMjMzXCI7IH1cblxuLmdseXBoaWNvbi1vcHRpb24taG9yaXpvbnRhbDpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZTIzNFwiOyB9XG5cbi5nbHlwaGljb24tb3B0aW9uLXZlcnRpY2FsOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlMjM1XCI7IH1cblxuLmdseXBoaWNvbi1tZW51LWhhbWJ1cmdlcjpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZTIzNlwiOyB9XG5cbi5nbHlwaGljb24tbW9kYWwtd2luZG93OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlMjM3XCI7IH1cblxuLmdseXBoaWNvbi1vaWw6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGUyMzhcIjsgfVxuXG4uZ2x5cGhpY29uLWdyYWluOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlMjM5XCI7IH1cblxuLmdseXBoaWNvbi1zdW5nbGFzc2VzOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlMjQwXCI7IH1cblxuLmdseXBoaWNvbi10ZXh0LXNpemU6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGUyNDFcIjsgfVxuXG4uZ2x5cGhpY29uLXRleHQtY29sb3I6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGUyNDJcIjsgfVxuXG4uZ2x5cGhpY29uLXRleHQtYmFja2dyb3VuZDpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZTI0M1wiOyB9XG5cbi5nbHlwaGljb24tb2JqZWN0LWFsaWduLXRvcDpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZTI0NFwiOyB9XG5cbi5nbHlwaGljb24tb2JqZWN0LWFsaWduLWJvdHRvbTpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZTI0NVwiOyB9XG5cbi5nbHlwaGljb24tb2JqZWN0LWFsaWduLWhvcml6b250YWw6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGUyNDZcIjsgfVxuXG4uZ2x5cGhpY29uLW9iamVjdC1hbGlnbi1sZWZ0OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlMjQ3XCI7IH1cblxuLmdseXBoaWNvbi1vYmplY3QtYWxpZ24tdmVydGljYWw6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGUyNDhcIjsgfVxuXG4uZ2x5cGhpY29uLW9iamVjdC1hbGlnbi1yaWdodDpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZTI0OVwiOyB9XG5cbi5nbHlwaGljb24tdHJpYW5nbGUtcmlnaHQ6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGUyNTBcIjsgfVxuXG4uZ2x5cGhpY29uLXRyaWFuZ2xlLWxlZnQ6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGUyNTFcIjsgfVxuXG4uZ2x5cGhpY29uLXRyaWFuZ2xlLWJvdHRvbTpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZTI1MlwiOyB9XG5cbi5nbHlwaGljb24tdHJpYW5nbGUtdG9wOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlMjUzXCI7IH1cblxuLmdseXBoaWNvbi1jb25zb2xlOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlMjU0XCI7IH1cblxuLmdseXBoaWNvbi1zdXBlcnNjcmlwdDpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZTI1NVwiOyB9XG5cbi5nbHlwaGljb24tc3Vic2NyaXB0OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlMjU2XCI7IH1cblxuLmdseXBoaWNvbi1tZW51LWxlZnQ6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGUyNTdcIjsgfVxuXG4uZ2x5cGhpY29uLW1lbnUtcmlnaHQ6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGUyNThcIjsgfVxuXG4uZ2x5cGhpY29uLW1lbnUtZG93bjpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZTI1OVwiOyB9XG5cbi5nbHlwaGljb24tbWVudS11cDpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZTI2MFwiOyB9XG5cbioge1xuICAtd2Via2l0LWJveC1zaXppbmc6IGJvcmRlci1ib3g7XG4gIC1tb3otYm94LXNpemluZzogYm9yZGVyLWJveDtcbiAgYm94LXNpemluZzogYm9yZGVyLWJveDsgfVxuXG4qOmJlZm9yZSxcbio6YWZ0ZXIge1xuICAtd2Via2l0LWJveC1zaXppbmc6IGJvcmRlci1ib3g7XG4gIC1tb3otYm94LXNpemluZzogYm9yZGVyLWJveDtcbiAgYm94LXNpemluZzogYm9yZGVyLWJveDsgfVxuXG5odG1sIHtcbiAgZm9udC1zaXplOiAxMHB4O1xuICAtd2Via2l0LXRhcC1oaWdobGlnaHQtY29sb3I6IHRyYW5zcGFyZW50OyB9XG5cbmJvZHkge1xuICBmb250LWZhbWlseTogXCJIZWx2ZXRpY2EgTmV1ZVwiLCBIZWx2ZXRpY2EsIEFyaWFsLCBzYW5zLXNlcmlmO1xuICBmb250LXNpemU6IDE0cHg7XG4gIGxpbmUtaGVpZ2h0OiAxLjQyODU3O1xuICBjb2xvcjogIzMzMzMzMztcbiAgYmFja2dyb3VuZC1jb2xvcjogI2ZmZjsgfVxuXG5pbnB1dCxcbmJ1dHRvbixcbnNlbGVjdCxcbnRleHRhcmVhIHtcbiAgZm9udC1mYW1pbHk6IGluaGVyaXQ7XG4gIGZvbnQtc2l6ZTogaW5oZXJpdDtcbiAgbGluZS1oZWlnaHQ6IGluaGVyaXQ7IH1cblxuYSB7XG4gIGNvbG9yOiAjMzM3YWI3O1xuICB0ZXh0LWRlY29yYXRpb246IG5vbmU7IH1cbiAgYTpob3ZlciwgYTpmb2N1cyB7XG4gICAgY29sb3I6ICMyMzUyN2M7XG4gICAgdGV4dC1kZWNvcmF0aW9uOiB1bmRlcmxpbmU7IH1cbiAgYTpmb2N1cyB7XG4gICAgb3V0bGluZTogNXB4IGF1dG8gLXdlYmtpdC1mb2N1cy1yaW5nLWNvbG9yO1xuICAgIG91dGxpbmUtb2Zmc2V0OiAtMnB4OyB9XG5cbmZpZ3VyZSB7XG4gIG1hcmdpbjogMDsgfVxuXG5pbWcge1xuICB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlOyB9XG5cbi5pbWctcmVzcG9uc2l2ZSB7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBtYXgtd2lkdGg6IDEwMCU7XG4gIGhlaWdodDogYXV0bzsgfVxuXG4uaW1nLXJvdW5kZWQge1xuICBib3JkZXItcmFkaXVzOiA2cHg7IH1cblxuLmltZy10aHVtYm5haWwge1xuICBwYWRkaW5nOiA0cHg7XG4gIGxpbmUtaGVpZ2h0OiAxLjQyODU3O1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZmZmO1xuICBib3JkZXI6IDFweCBzb2xpZCAjZGRkO1xuICBib3JkZXItcmFkaXVzOiA0cHg7XG4gIC13ZWJraXQtdHJhbnNpdGlvbjogYWxsIDAuMnMgZWFzZS1pbi1vdXQ7XG4gIC1vLXRyYW5zaXRpb246IGFsbCAwLjJzIGVhc2UtaW4tb3V0O1xuICB0cmFuc2l0aW9uOiBhbGwgMC4ycyBlYXNlLWluLW91dDtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICBtYXgtd2lkdGg6IDEwMCU7XG4gIGhlaWdodDogYXV0bzsgfVxuXG4uaW1nLWNpcmNsZSB7XG4gIGJvcmRlci1yYWRpdXM6IDUwJTsgfVxuXG5ociB7XG4gIG1hcmdpbi10b3A6IDIwcHg7XG4gIG1hcmdpbi1ib3R0b206IDIwcHg7XG4gIGJvcmRlcjogMDtcbiAgYm9yZGVyLXRvcDogMXB4IHNvbGlkICNlZWVlZWU7IH1cblxuLnNyLW9ubHkge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHdpZHRoOiAxcHg7XG4gIGhlaWdodDogMXB4O1xuICBtYXJnaW46IC0xcHg7XG4gIHBhZGRpbmc6IDA7XG4gIG92ZXJmbG93OiBoaWRkZW47XG4gIGNsaXA6IHJlY3QoMCwgMCwgMCwgMCk7XG4gIGJvcmRlcjogMDsgfVxuXG4uc3Itb25seS1mb2N1c2FibGU6YWN0aXZlLCAuc3Itb25seS1mb2N1c2FibGU6Zm9jdXMge1xuICBwb3NpdGlvbjogc3RhdGljO1xuICB3aWR0aDogYXV0bztcbiAgaGVpZ2h0OiBhdXRvO1xuICBtYXJnaW46IDA7XG4gIG92ZXJmbG93OiB2aXNpYmxlO1xuICBjbGlwOiBhdXRvOyB9XG5cbltyb2xlPVwiYnV0dG9uXCJdIHtcbiAgY3Vyc29yOiBwb2ludGVyOyB9XG5cbmgxLCBoMiwgaDMsIGg0LCBoNSwgaDYsXG4uaDEsIC5oMiwgLmgzLCAuaDQsIC5oNSwgLmg2IHtcbiAgZm9udC1mYW1pbHk6IGluaGVyaXQ7XG4gIGZvbnQtd2VpZ2h0OiA1MDA7XG4gIGxpbmUtaGVpZ2h0OiAxLjE7XG4gIGNvbG9yOiBpbmhlcml0OyB9XG4gIGgxIHNtYWxsLFxuICBoMSAuc21hbGwsIGgyIHNtYWxsLFxuICBoMiAuc21hbGwsIGgzIHNtYWxsLFxuICBoMyAuc21hbGwsIGg0IHNtYWxsLFxuICBoNCAuc21hbGwsIGg1IHNtYWxsLFxuICBoNSAuc21hbGwsIGg2IHNtYWxsLFxuICBoNiAuc21hbGwsXG4gIC5oMSBzbWFsbCxcbiAgLmgxIC5zbWFsbCwgLmgyIHNtYWxsLFxuICAuaDIgLnNtYWxsLCAuaDMgc21hbGwsXG4gIC5oMyAuc21hbGwsIC5oNCBzbWFsbCxcbiAgLmg0IC5zbWFsbCwgLmg1IHNtYWxsLFxuICAuaDUgLnNtYWxsLCAuaDYgc21hbGwsXG4gIC5oNiAuc21hbGwge1xuICAgIGZvbnQtd2VpZ2h0OiBub3JtYWw7XG4gICAgbGluZS1oZWlnaHQ6IDE7XG4gICAgY29sb3I6ICM3Nzc3Nzc7IH1cblxuaDEsIC5oMSxcbmgyLCAuaDIsXG5oMywgLmgzIHtcbiAgbWFyZ2luLXRvcDogMjBweDtcbiAgbWFyZ2luLWJvdHRvbTogMTBweDsgfVxuICBoMSBzbWFsbCxcbiAgaDEgLnNtYWxsLCAuaDEgc21hbGwsXG4gIC5oMSAuc21hbGwsXG4gIGgyIHNtYWxsLFxuICBoMiAuc21hbGwsIC5oMiBzbWFsbCxcbiAgLmgyIC5zbWFsbCxcbiAgaDMgc21hbGwsXG4gIGgzIC5zbWFsbCwgLmgzIHNtYWxsLFxuICAuaDMgLnNtYWxsIHtcbiAgICBmb250LXNpemU6IDY1JTsgfVxuXG5oNCwgLmg0LFxuaDUsIC5oNSxcbmg2LCAuaDYge1xuICBtYXJnaW4tdG9wOiAxMHB4O1xuICBtYXJnaW4tYm90dG9tOiAxMHB4OyB9XG4gIGg0IHNtYWxsLFxuICBoNCAuc21hbGwsIC5oNCBzbWFsbCxcbiAgLmg0IC5zbWFsbCxcbiAgaDUgc21hbGwsXG4gIGg1IC5zbWFsbCwgLmg1IHNtYWxsLFxuICAuaDUgLnNtYWxsLFxuICBoNiBzbWFsbCxcbiAgaDYgLnNtYWxsLCAuaDYgc21hbGwsXG4gIC5oNiAuc21hbGwge1xuICAgIGZvbnQtc2l6ZTogNzUlOyB9XG5cbmgxLCAuaDEge1xuICBmb250LXNpemU6IDM2cHg7IH1cblxuaDIsIC5oMiB7XG4gIGZvbnQtc2l6ZTogMzBweDsgfVxuXG5oMywgLmgzIHtcbiAgZm9udC1zaXplOiAyNHB4OyB9XG5cbmg0LCAuaDQge1xuICBmb250LXNpemU6IDE4cHg7IH1cblxuaDUsIC5oNSB7XG4gIGZvbnQtc2l6ZTogMTRweDsgfVxuXG5oNiwgLmg2IHtcbiAgZm9udC1zaXplOiAxMnB4OyB9XG5cbnAge1xuICBtYXJnaW46IDAgMCAxMHB4OyB9XG5cbi5sZWFkIHtcbiAgbWFyZ2luLWJvdHRvbTogMjBweDtcbiAgZm9udC1zaXplOiAxNnB4O1xuICBmb250LXdlaWdodDogMzAwO1xuICBsaW5lLWhlaWdodDogMS40OyB9XG4gIEBtZWRpYSAobWluLXdpZHRoOiA3NjhweCkge1xuICAgIC5sZWFkIHtcbiAgICAgIGZvbnQtc2l6ZTogMjFweDsgfSB9XG5cbnNtYWxsLFxuLnNtYWxsIHtcbiAgZm9udC1zaXplOiA4NSU7IH1cblxubWFyayxcbi5tYXJrIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2ZjZjhlMztcbiAgcGFkZGluZzogLjJlbTsgfVxuXG4udGV4dC1sZWZ0IHtcbiAgdGV4dC1hbGlnbjogbGVmdDsgfVxuXG4udGV4dC1yaWdodCB7XG4gIHRleHQtYWxpZ246IHJpZ2h0OyB9XG5cbi50ZXh0LWNlbnRlciB7XG4gIHRleHQtYWxpZ246IGNlbnRlcjsgfVxuXG4udGV4dC1qdXN0aWZ5IHtcbiAgdGV4dC1hbGlnbjoganVzdGlmeTsgfVxuXG4udGV4dC1ub3dyYXAge1xuICB3aGl0ZS1zcGFjZTogbm93cmFwOyB9XG5cbi50ZXh0LWxvd2VyY2FzZSB7XG4gIHRleHQtdHJhbnNmb3JtOiBsb3dlcmNhc2U7IH1cblxuLnRleHQtdXBwZXJjYXNlLCAuaW5pdGlhbGlzbSB7XG4gIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7IH1cblxuLnRleHQtY2FwaXRhbGl6ZSB7XG4gIHRleHQtdHJhbnNmb3JtOiBjYXBpdGFsaXplOyB9XG5cbi50ZXh0LW11dGVkIHtcbiAgY29sb3I6ICM3Nzc3Nzc7IH1cblxuLnRleHQtcHJpbWFyeSB7XG4gIGNvbG9yOiAjMzM3YWI3OyB9XG5cbmEudGV4dC1wcmltYXJ5OmhvdmVyLFxuYS50ZXh0LXByaW1hcnk6Zm9jdXMge1xuICBjb2xvcjogIzI4NjA5MDsgfVxuXG4udGV4dC1zdWNjZXNzIHtcbiAgY29sb3I6ICMzYzc2M2Q7IH1cblxuYS50ZXh0LXN1Y2Nlc3M6aG92ZXIsXG5hLnRleHQtc3VjY2Vzczpmb2N1cyB7XG4gIGNvbG9yOiAjMmI1NDJjOyB9XG5cbi50ZXh0LWluZm8ge1xuICBjb2xvcjogIzMxNzA4ZjsgfVxuXG5hLnRleHQtaW5mbzpob3ZlcixcbmEudGV4dC1pbmZvOmZvY3VzIHtcbiAgY29sb3I6ICMyNDUyNjk7IH1cblxuLnRleHQtd2FybmluZyB7XG4gIGNvbG9yOiAjOGE2ZDNiOyB9XG5cbmEudGV4dC13YXJuaW5nOmhvdmVyLFxuYS50ZXh0LXdhcm5pbmc6Zm9jdXMge1xuICBjb2xvcjogIzY2NTEyYzsgfVxuXG4udGV4dC1kYW5nZXIge1xuICBjb2xvcjogI2E5NDQ0MjsgfVxuXG5hLnRleHQtZGFuZ2VyOmhvdmVyLFxuYS50ZXh0LWRhbmdlcjpmb2N1cyB7XG4gIGNvbG9yOiAjODQzNTM0OyB9XG5cbi5iZy1wcmltYXJ5IHtcbiAgY29sb3I6ICNmZmY7IH1cblxuLmJnLXByaW1hcnkge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjMzM3YWI3OyB9XG5cbmEuYmctcHJpbWFyeTpob3ZlcixcbmEuYmctcHJpbWFyeTpmb2N1cyB7XG4gIGJhY2tncm91bmQtY29sb3I6ICMyODYwOTA7IH1cblxuLmJnLXN1Y2Nlc3Mge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZGZmMGQ4OyB9XG5cbmEuYmctc3VjY2Vzczpob3ZlcixcbmEuYmctc3VjY2Vzczpmb2N1cyB7XG4gIGJhY2tncm91bmQtY29sb3I6ICNjMWUyYjM7IH1cblxuLmJnLWluZm8ge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZDllZGY3OyB9XG5cbmEuYmctaW5mbzpob3ZlcixcbmEuYmctaW5mbzpmb2N1cyB7XG4gIGJhY2tncm91bmQtY29sb3I6ICNhZmQ5ZWU7IH1cblxuLmJnLXdhcm5pbmcge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZmNmOGUzOyB9XG5cbmEuYmctd2FybmluZzpob3ZlcixcbmEuYmctd2FybmluZzpmb2N1cyB7XG4gIGJhY2tncm91bmQtY29sb3I6ICNmN2VjYjU7IH1cblxuLmJnLWRhbmdlciB7XG4gIGJhY2tncm91bmQtY29sb3I6ICNmMmRlZGU7IH1cblxuYS5iZy1kYW5nZXI6aG92ZXIsXG5hLmJnLWRhbmdlcjpmb2N1cyB7XG4gIGJhY2tncm91bmQtY29sb3I6ICNlNGI5Yjk7IH1cblxuLnBhZ2UtaGVhZGVyIHtcbiAgcGFkZGluZy1ib3R0b206IDlweDtcbiAgbWFyZ2luOiA0MHB4IDAgMjBweDtcbiAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkICNlZWVlZWU7IH1cblxudWwsXG5vbCB7XG4gIG1hcmdpbi10b3A6IDA7XG4gIG1hcmdpbi1ib3R0b206IDEwcHg7IH1cbiAgdWwgdWwsXG4gIHVsIG9sLFxuICBvbCB1bCxcbiAgb2wgb2wge1xuICAgIG1hcmdpbi1ib3R0b206IDA7IH1cblxuLmxpc3QtdW5zdHlsZWQge1xuICBwYWRkaW5nLWxlZnQ6IDA7XG4gIGxpc3Qtc3R5bGU6IG5vbmU7IH1cblxuLmxpc3QtaW5saW5lIHtcbiAgcGFkZGluZy1sZWZ0OiAwO1xuICBsaXN0LXN0eWxlOiBub25lO1xuICBtYXJnaW4tbGVmdDogLTVweDsgfVxuICAubGlzdC1pbmxpbmUgPiBsaSB7XG4gICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgIHBhZGRpbmctbGVmdDogNXB4O1xuICAgIHBhZGRpbmctcmlnaHQ6IDVweDsgfVxuXG5kbCB7XG4gIG1hcmdpbi10b3A6IDA7XG4gIG1hcmdpbi1ib3R0b206IDIwcHg7IH1cblxuZHQsXG5kZCB7XG4gIGxpbmUtaGVpZ2h0OiAxLjQyODU3OyB9XG5cbmR0IHtcbiAgZm9udC13ZWlnaHQ6IGJvbGQ7IH1cblxuZGQge1xuICBtYXJnaW4tbGVmdDogMDsgfVxuXG4uZGwtaG9yaXpvbnRhbCBkZDpiZWZvcmUsIC5kbC1ob3Jpem9udGFsIGRkOmFmdGVyIHtcbiAgY29udGVudDogXCIgXCI7XG4gIGRpc3BsYXk6IHRhYmxlOyB9XG5cbi5kbC1ob3Jpem9udGFsIGRkOmFmdGVyIHtcbiAgY2xlYXI6IGJvdGg7IH1cblxuQG1lZGlhIChtaW4td2lkdGg6IDc2OHB4KSB7XG4gIC5kbC1ob3Jpem9udGFsIGR0IHtcbiAgICBmbG9hdDogbGVmdDtcbiAgICB3aWR0aDogMTYwcHg7XG4gICAgY2xlYXI6IGxlZnQ7XG4gICAgdGV4dC1hbGlnbjogcmlnaHQ7XG4gICAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgICB0ZXh0LW92ZXJmbG93OiBlbGxpcHNpcztcbiAgICB3aGl0ZS1zcGFjZTogbm93cmFwOyB9XG4gIC5kbC1ob3Jpem9udGFsIGRkIHtcbiAgICBtYXJnaW4tbGVmdDogMTgwcHg7IH0gfVxuXG5hYmJyW3RpdGxlXSxcbmFiYnJbZGF0YS1vcmlnaW5hbC10aXRsZV0ge1xuICBjdXJzb3I6IGhlbHA7XG4gIGJvcmRlci1ib3R0b206IDFweCBkb3R0ZWQgIzc3Nzc3NzsgfVxuXG4uaW5pdGlhbGlzbSB7XG4gIGZvbnQtc2l6ZTogOTAlOyB9XG5cbmJsb2NrcXVvdGUge1xuICBwYWRkaW5nOiAxMHB4IDIwcHg7XG4gIG1hcmdpbjogMCAwIDIwcHg7XG4gIGZvbnQtc2l6ZTogMTcuNXB4O1xuICBib3JkZXItbGVmdDogNXB4IHNvbGlkICNlZWVlZWU7IH1cbiAgYmxvY2txdW90ZSBwOmxhc3QtY2hpbGQsXG4gIGJsb2NrcXVvdGUgdWw6bGFzdC1jaGlsZCxcbiAgYmxvY2txdW90ZSBvbDpsYXN0LWNoaWxkIHtcbiAgICBtYXJnaW4tYm90dG9tOiAwOyB9XG4gIGJsb2NrcXVvdGUgZm9vdGVyLFxuICBibG9ja3F1b3RlIHNtYWxsLFxuICBibG9ja3F1b3RlIC5zbWFsbCB7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgZm9udC1zaXplOiA4MCU7XG4gICAgbGluZS1oZWlnaHQ6IDEuNDI4NTc7XG4gICAgY29sb3I6ICM3Nzc3Nzc7IH1cbiAgICBibG9ja3F1b3RlIGZvb3RlcjpiZWZvcmUsXG4gICAgYmxvY2txdW90ZSBzbWFsbDpiZWZvcmUsXG4gICAgYmxvY2txdW90ZSAuc21hbGw6YmVmb3JlIHtcbiAgICAgIGNvbnRlbnQ6ICdcXDIwMTQgXFwwMEEwJzsgfVxuXG4uYmxvY2txdW90ZS1yZXZlcnNlLFxuYmxvY2txdW90ZS5wdWxsLXJpZ2h0IHtcbiAgcGFkZGluZy1yaWdodDogMTVweDtcbiAgcGFkZGluZy1sZWZ0OiAwO1xuICBib3JkZXItcmlnaHQ6IDVweCBzb2xpZCAjZWVlZWVlO1xuICBib3JkZXItbGVmdDogMDtcbiAgdGV4dC1hbGlnbjogcmlnaHQ7IH1cbiAgLmJsb2NrcXVvdGUtcmV2ZXJzZSBmb290ZXI6YmVmb3JlLFxuICAuYmxvY2txdW90ZS1yZXZlcnNlIHNtYWxsOmJlZm9yZSxcbiAgLmJsb2NrcXVvdGUtcmV2ZXJzZSAuc21hbGw6YmVmb3JlLFxuICBibG9ja3F1b3RlLnB1bGwtcmlnaHQgZm9vdGVyOmJlZm9yZSxcbiAgYmxvY2txdW90ZS5wdWxsLXJpZ2h0IHNtYWxsOmJlZm9yZSxcbiAgYmxvY2txdW90ZS5wdWxsLXJpZ2h0IC5zbWFsbDpiZWZvcmUge1xuICAgIGNvbnRlbnQ6ICcnOyB9XG4gIC5ibG9ja3F1b3RlLXJldmVyc2UgZm9vdGVyOmFmdGVyLFxuICAuYmxvY2txdW90ZS1yZXZlcnNlIHNtYWxsOmFmdGVyLFxuICAuYmxvY2txdW90ZS1yZXZlcnNlIC5zbWFsbDphZnRlcixcbiAgYmxvY2txdW90ZS5wdWxsLXJpZ2h0IGZvb3RlcjphZnRlcixcbiAgYmxvY2txdW90ZS5wdWxsLXJpZ2h0IHNtYWxsOmFmdGVyLFxuICBibG9ja3F1b3RlLnB1bGwtcmlnaHQgLnNtYWxsOmFmdGVyIHtcbiAgICBjb250ZW50OiAnXFwwMEEwIFxcMjAxNCc7IH1cblxuYWRkcmVzcyB7XG4gIG1hcmdpbi1ib3R0b206IDIwcHg7XG4gIGZvbnQtc3R5bGU6IG5vcm1hbDtcbiAgbGluZS1oZWlnaHQ6IDEuNDI4NTc7IH1cblxuY29kZSxcbmtiZCxcbnByZSxcbnNhbXAge1xuICBmb250LWZhbWlseTogTWVubG8sIE1vbmFjbywgQ29uc29sYXMsIFwiQ291cmllciBOZXdcIiwgbW9ub3NwYWNlOyB9XG5cbmNvZGUge1xuICBwYWRkaW5nOiAycHggNHB4O1xuICBmb250LXNpemU6IDkwJTtcbiAgY29sb3I6ICNjNzI1NGU7XG4gIGJhY2tncm91bmQtY29sb3I6ICNmOWYyZjQ7XG4gIGJvcmRlci1yYWRpdXM6IDRweDsgfVxuXG5rYmQge1xuICBwYWRkaW5nOiAycHggNHB4O1xuICBmb250LXNpemU6IDkwJTtcbiAgY29sb3I6ICNmZmY7XG4gIGJhY2tncm91bmQtY29sb3I6ICMzMzM7XG4gIGJvcmRlci1yYWRpdXM6IDNweDtcbiAgYm94LXNoYWRvdzogaW5zZXQgMCAtMXB4IDAgcmdiYSgwLCAwLCAwLCAwLjI1KTsgfVxuICBrYmQga2JkIHtcbiAgICBwYWRkaW5nOiAwO1xuICAgIGZvbnQtc2l6ZTogMTAwJTtcbiAgICBmb250LXdlaWdodDogYm9sZDtcbiAgICBib3gtc2hhZG93OiBub25lOyB9XG5cbnByZSB7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBwYWRkaW5nOiA5LjVweDtcbiAgbWFyZ2luOiAwIDAgMTBweDtcbiAgZm9udC1zaXplOiAxM3B4O1xuICBsaW5lLWhlaWdodDogMS40Mjg1NztcbiAgd29yZC1icmVhazogYnJlYWstYWxsO1xuICB3b3JkLXdyYXA6IGJyZWFrLXdvcmQ7XG4gIGNvbG9yOiAjMzMzMzMzO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZjVmNWY1O1xuICBib3JkZXI6IDFweCBzb2xpZCAjY2NjO1xuICBib3JkZXItcmFkaXVzOiA0cHg7IH1cbiAgcHJlIGNvZGUge1xuICAgIHBhZGRpbmc6IDA7XG4gICAgZm9udC1zaXplOiBpbmhlcml0O1xuICAgIGNvbG9yOiBpbmhlcml0O1xuICAgIHdoaXRlLXNwYWNlOiBwcmUtd3JhcDtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcbiAgICBib3JkZXItcmFkaXVzOiAwOyB9XG5cbi5wcmUtc2Nyb2xsYWJsZSB7XG4gIG1heC1oZWlnaHQ6IDM0MHB4O1xuICBvdmVyZmxvdy15OiBzY3JvbGw7IH1cblxuLmNvbnRhaW5lciB7XG4gIG1hcmdpbi1yaWdodDogYXV0bztcbiAgbWFyZ2luLWxlZnQ6IGF1dG87XG4gIHBhZGRpbmctbGVmdDogMTVweDtcbiAgcGFkZGluZy1yaWdodDogMTVweDsgfVxuICAuY29udGFpbmVyOmJlZm9yZSwgLmNvbnRhaW5lcjphZnRlciB7XG4gICAgY29udGVudDogXCIgXCI7XG4gICAgZGlzcGxheTogdGFibGU7IH1cbiAgLmNvbnRhaW5lcjphZnRlciB7XG4gICAgY2xlYXI6IGJvdGg7IH1cbiAgQG1lZGlhIChtaW4td2lkdGg6IDc2OHB4KSB7XG4gICAgLmNvbnRhaW5lciB7XG4gICAgICB3aWR0aDogNzUwcHg7IH0gfVxuICBAbWVkaWEgKG1pbi13aWR0aDogOTkycHgpIHtcbiAgICAuY29udGFpbmVyIHtcbiAgICAgIHdpZHRoOiA5NzBweDsgfSB9XG4gIEBtZWRpYSAobWluLXdpZHRoOiAxMjAwcHgpIHtcbiAgICAuY29udGFpbmVyIHtcbiAgICAgIHdpZHRoOiAxMTcwcHg7IH0gfVxuXG4uY29udGFpbmVyLWZsdWlkIHtcbiAgbWFyZ2luLXJpZ2h0OiBhdXRvO1xuICBtYXJnaW4tbGVmdDogYXV0bztcbiAgcGFkZGluZy1sZWZ0OiAxNXB4O1xuICBwYWRkaW5nLXJpZ2h0OiAxNXB4OyB9XG4gIC5jb250YWluZXItZmx1aWQ6YmVmb3JlLCAuY29udGFpbmVyLWZsdWlkOmFmdGVyIHtcbiAgICBjb250ZW50OiBcIiBcIjtcbiAgICBkaXNwbGF5OiB0YWJsZTsgfVxuICAuY29udGFpbmVyLWZsdWlkOmFmdGVyIHtcbiAgICBjbGVhcjogYm90aDsgfVxuXG4ucm93IHtcbiAgbWFyZ2luLWxlZnQ6IC0xNXB4O1xuICBtYXJnaW4tcmlnaHQ6IC0xNXB4OyB9XG4gIC5yb3c6YmVmb3JlLCAucm93OmFmdGVyIHtcbiAgICBjb250ZW50OiBcIiBcIjtcbiAgICBkaXNwbGF5OiB0YWJsZTsgfVxuICAucm93OmFmdGVyIHtcbiAgICBjbGVhcjogYm90aDsgfVxuXG4uY29sLXhzLTEsIC5jb2wtc20tMSwgLmNvbC1tZC0xLCAuY29sLWxnLTEsIC5jb2wteHMtMiwgLmNvbC1zbS0yLCAuY29sLW1kLTIsIC5jb2wtbGctMiwgLmNvbC14cy0zLCAuY29sLXNtLTMsIC5jb2wtbWQtMywgLmNvbC1sZy0zLCAuY29sLXhzLTQsIC5jb2wtc20tNCwgLmNvbC1tZC00LCAuY29sLWxnLTQsIC5jb2wteHMtNSwgLmNvbC1zbS01LCAuY29sLW1kLTUsIC5jb2wtbGctNSwgLmNvbC14cy02LCAuY29sLXNtLTYsIC5jb2wtbWQtNiwgLmNvbC1sZy02LCAuY29sLXhzLTcsIC5jb2wtc20tNywgLmNvbC1tZC03LCAuY29sLWxnLTcsIC5jb2wteHMtOCwgLmNvbC1zbS04LCAuY29sLW1kLTgsIC5jb2wtbGctOCwgLmNvbC14cy05LCAuY29sLXNtLTksIC5jb2wtbWQtOSwgLmNvbC1sZy05LCAuY29sLXhzLTEwLCAuY29sLXNtLTEwLCAuY29sLW1kLTEwLCAuY29sLWxnLTEwLCAuY29sLXhzLTExLCAuY29sLXNtLTExLCAuY29sLW1kLTExLCAuY29sLWxnLTExLCAuY29sLXhzLTEyLCAuY29sLXNtLTEyLCAuY29sLW1kLTEyLCAuY29sLWxnLTEyIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBtaW4taGVpZ2h0OiAxcHg7XG4gIHBhZGRpbmctbGVmdDogMTVweDtcbiAgcGFkZGluZy1yaWdodDogMTVweDsgfVxuXG4uY29sLXhzLTEsIC5jb2wteHMtMiwgLmNvbC14cy0zLCAuY29sLXhzLTQsIC5jb2wteHMtNSwgLmNvbC14cy02LCAuY29sLXhzLTcsIC5jb2wteHMtOCwgLmNvbC14cy05LCAuY29sLXhzLTEwLCAuY29sLXhzLTExLCAuY29sLXhzLTEyIHtcbiAgZmxvYXQ6IGxlZnQ7IH1cblxuLmNvbC14cy0xIHtcbiAgd2lkdGg6IDguMzMzMzMlOyB9XG5cbi5jb2wteHMtMiB7XG4gIHdpZHRoOiAxNi42NjY2NyU7IH1cblxuLmNvbC14cy0zIHtcbiAgd2lkdGg6IDI1JTsgfVxuXG4uY29sLXhzLTQge1xuICB3aWR0aDogMzMuMzMzMzMlOyB9XG5cbi5jb2wteHMtNSB7XG4gIHdpZHRoOiA0MS42NjY2NyU7IH1cblxuLmNvbC14cy02IHtcbiAgd2lkdGg6IDUwJTsgfVxuXG4uY29sLXhzLTcge1xuICB3aWR0aDogNTguMzMzMzMlOyB9XG5cbi5jb2wteHMtOCB7XG4gIHdpZHRoOiA2Ni42NjY2NyU7IH1cblxuLmNvbC14cy05IHtcbiAgd2lkdGg6IDc1JTsgfVxuXG4uY29sLXhzLTEwIHtcbiAgd2lkdGg6IDgzLjMzMzMzJTsgfVxuXG4uY29sLXhzLTExIHtcbiAgd2lkdGg6IDkxLjY2NjY3JTsgfVxuXG4uY29sLXhzLTEyIHtcbiAgd2lkdGg6IDEwMCU7IH1cblxuLmNvbC14cy1wdWxsLTAge1xuICByaWdodDogYXV0bzsgfVxuXG4uY29sLXhzLXB1bGwtMSB7XG4gIHJpZ2h0OiA4LjMzMzMzJTsgfVxuXG4uY29sLXhzLXB1bGwtMiB7XG4gIHJpZ2h0OiAxNi42NjY2NyU7IH1cblxuLmNvbC14cy1wdWxsLTMge1xuICByaWdodDogMjUlOyB9XG5cbi5jb2wteHMtcHVsbC00IHtcbiAgcmlnaHQ6IDMzLjMzMzMzJTsgfVxuXG4uY29sLXhzLXB1bGwtNSB7XG4gIHJpZ2h0OiA0MS42NjY2NyU7IH1cblxuLmNvbC14cy1wdWxsLTYge1xuICByaWdodDogNTAlOyB9XG5cbi5jb2wteHMtcHVsbC03IHtcbiAgcmlnaHQ6IDU4LjMzMzMzJTsgfVxuXG4uY29sLXhzLXB1bGwtOCB7XG4gIHJpZ2h0OiA2Ni42NjY2NyU7IH1cblxuLmNvbC14cy1wdWxsLTkge1xuICByaWdodDogNzUlOyB9XG5cbi5jb2wteHMtcHVsbC0xMCB7XG4gIHJpZ2h0OiA4My4zMzMzMyU7IH1cblxuLmNvbC14cy1wdWxsLTExIHtcbiAgcmlnaHQ6IDkxLjY2NjY3JTsgfVxuXG4uY29sLXhzLXB1bGwtMTIge1xuICByaWdodDogMTAwJTsgfVxuXG4uY29sLXhzLXB1c2gtMCB7XG4gIGxlZnQ6IGF1dG87IH1cblxuLmNvbC14cy1wdXNoLTEge1xuICBsZWZ0OiA4LjMzMzMzJTsgfVxuXG4uY29sLXhzLXB1c2gtMiB7XG4gIGxlZnQ6IDE2LjY2NjY3JTsgfVxuXG4uY29sLXhzLXB1c2gtMyB7XG4gIGxlZnQ6IDI1JTsgfVxuXG4uY29sLXhzLXB1c2gtNCB7XG4gIGxlZnQ6IDMzLjMzMzMzJTsgfVxuXG4uY29sLXhzLXB1c2gtNSB7XG4gIGxlZnQ6IDQxLjY2NjY3JTsgfVxuXG4uY29sLXhzLXB1c2gtNiB7XG4gIGxlZnQ6IDUwJTsgfVxuXG4uY29sLXhzLXB1c2gtNyB7XG4gIGxlZnQ6IDU4LjMzMzMzJTsgfVxuXG4uY29sLXhzLXB1c2gtOCB7XG4gIGxlZnQ6IDY2LjY2NjY3JTsgfVxuXG4uY29sLXhzLXB1c2gtOSB7XG4gIGxlZnQ6IDc1JTsgfVxuXG4uY29sLXhzLXB1c2gtMTAge1xuICBsZWZ0OiA4My4zMzMzMyU7IH1cblxuLmNvbC14cy1wdXNoLTExIHtcbiAgbGVmdDogOTEuNjY2NjclOyB9XG5cbi5jb2wteHMtcHVzaC0xMiB7XG4gIGxlZnQ6IDEwMCU7IH1cblxuLmNvbC14cy1vZmZzZXQtMCB7XG4gIG1hcmdpbi1sZWZ0OiAwJTsgfVxuXG4uY29sLXhzLW9mZnNldC0xIHtcbiAgbWFyZ2luLWxlZnQ6IDguMzMzMzMlOyB9XG5cbi5jb2wteHMtb2Zmc2V0LTIge1xuICBtYXJnaW4tbGVmdDogMTYuNjY2NjclOyB9XG5cbi5jb2wteHMtb2Zmc2V0LTMge1xuICBtYXJnaW4tbGVmdDogMjUlOyB9XG5cbi5jb2wteHMtb2Zmc2V0LTQge1xuICBtYXJnaW4tbGVmdDogMzMuMzMzMzMlOyB9XG5cbi5jb2wteHMtb2Zmc2V0LTUge1xuICBtYXJnaW4tbGVmdDogNDEuNjY2NjclOyB9XG5cbi5jb2wteHMtb2Zmc2V0LTYge1xuICBtYXJnaW4tbGVmdDogNTAlOyB9XG5cbi5jb2wteHMtb2Zmc2V0LTcge1xuICBtYXJnaW4tbGVmdDogNTguMzMzMzMlOyB9XG5cbi5jb2wteHMtb2Zmc2V0LTgge1xuICBtYXJnaW4tbGVmdDogNjYuNjY2NjclOyB9XG5cbi5jb2wteHMtb2Zmc2V0LTkge1xuICBtYXJnaW4tbGVmdDogNzUlOyB9XG5cbi5jb2wteHMtb2Zmc2V0LTEwIHtcbiAgbWFyZ2luLWxlZnQ6IDgzLjMzMzMzJTsgfVxuXG4uY29sLXhzLW9mZnNldC0xMSB7XG4gIG1hcmdpbi1sZWZ0OiA5MS42NjY2NyU7IH1cblxuLmNvbC14cy1vZmZzZXQtMTIge1xuICBtYXJnaW4tbGVmdDogMTAwJTsgfVxuXG5AbWVkaWEgKG1pbi13aWR0aDogNzY4cHgpIHtcbiAgLmNvbC1zbS0xLCAuY29sLXNtLTIsIC5jb2wtc20tMywgLmNvbC1zbS00LCAuY29sLXNtLTUsIC5jb2wtc20tNiwgLmNvbC1zbS03LCAuY29sLXNtLTgsIC5jb2wtc20tOSwgLmNvbC1zbS0xMCwgLmNvbC1zbS0xMSwgLmNvbC1zbS0xMiB7XG4gICAgZmxvYXQ6IGxlZnQ7IH1cbiAgLmNvbC1zbS0xIHtcbiAgICB3aWR0aDogOC4zMzMzMyU7IH1cbiAgLmNvbC1zbS0yIHtcbiAgICB3aWR0aDogMTYuNjY2NjclOyB9XG4gIC5jb2wtc20tMyB7XG4gICAgd2lkdGg6IDI1JTsgfVxuICAuY29sLXNtLTQge1xuICAgIHdpZHRoOiAzMy4zMzMzMyU7IH1cbiAgLmNvbC1zbS01IHtcbiAgICB3aWR0aDogNDEuNjY2NjclOyB9XG4gIC5jb2wtc20tNiB7XG4gICAgd2lkdGg6IDUwJTsgfVxuICAuY29sLXNtLTcge1xuICAgIHdpZHRoOiA1OC4zMzMzMyU7IH1cbiAgLmNvbC1zbS04IHtcbiAgICB3aWR0aDogNjYuNjY2NjclOyB9XG4gIC5jb2wtc20tOSB7XG4gICAgd2lkdGg6IDc1JTsgfVxuICAuY29sLXNtLTEwIHtcbiAgICB3aWR0aDogODMuMzMzMzMlOyB9XG4gIC5jb2wtc20tMTEge1xuICAgIHdpZHRoOiA5MS42NjY2NyU7IH1cbiAgLmNvbC1zbS0xMiB7XG4gICAgd2lkdGg6IDEwMCU7IH1cbiAgLmNvbC1zbS1wdWxsLTAge1xuICAgIHJpZ2h0OiBhdXRvOyB9XG4gIC5jb2wtc20tcHVsbC0xIHtcbiAgICByaWdodDogOC4zMzMzMyU7IH1cbiAgLmNvbC1zbS1wdWxsLTIge1xuICAgIHJpZ2h0OiAxNi42NjY2NyU7IH1cbiAgLmNvbC1zbS1wdWxsLTMge1xuICAgIHJpZ2h0OiAyNSU7IH1cbiAgLmNvbC1zbS1wdWxsLTQge1xuICAgIHJpZ2h0OiAzMy4zMzMzMyU7IH1cbiAgLmNvbC1zbS1wdWxsLTUge1xuICAgIHJpZ2h0OiA0MS42NjY2NyU7IH1cbiAgLmNvbC1zbS1wdWxsLTYge1xuICAgIHJpZ2h0OiA1MCU7IH1cbiAgLmNvbC1zbS1wdWxsLTcge1xuICAgIHJpZ2h0OiA1OC4zMzMzMyU7IH1cbiAgLmNvbC1zbS1wdWxsLTgge1xuICAgIHJpZ2h0OiA2Ni42NjY2NyU7IH1cbiAgLmNvbC1zbS1wdWxsLTkge1xuICAgIHJpZ2h0OiA3NSU7IH1cbiAgLmNvbC1zbS1wdWxsLTEwIHtcbiAgICByaWdodDogODMuMzMzMzMlOyB9XG4gIC5jb2wtc20tcHVsbC0xMSB7XG4gICAgcmlnaHQ6IDkxLjY2NjY3JTsgfVxuICAuY29sLXNtLXB1bGwtMTIge1xuICAgIHJpZ2h0OiAxMDAlOyB9XG4gIC5jb2wtc20tcHVzaC0wIHtcbiAgICBsZWZ0OiBhdXRvOyB9XG4gIC5jb2wtc20tcHVzaC0xIHtcbiAgICBsZWZ0OiA4LjMzMzMzJTsgfVxuICAuY29sLXNtLXB1c2gtMiB7XG4gICAgbGVmdDogMTYuNjY2NjclOyB9XG4gIC5jb2wtc20tcHVzaC0zIHtcbiAgICBsZWZ0OiAyNSU7IH1cbiAgLmNvbC1zbS1wdXNoLTQge1xuICAgIGxlZnQ6IDMzLjMzMzMzJTsgfVxuICAuY29sLXNtLXB1c2gtNSB7XG4gICAgbGVmdDogNDEuNjY2NjclOyB9XG4gIC5jb2wtc20tcHVzaC02IHtcbiAgICBsZWZ0OiA1MCU7IH1cbiAgLmNvbC1zbS1wdXNoLTcge1xuICAgIGxlZnQ6IDU4LjMzMzMzJTsgfVxuICAuY29sLXNtLXB1c2gtOCB7XG4gICAgbGVmdDogNjYuNjY2NjclOyB9XG4gIC5jb2wtc20tcHVzaC05IHtcbiAgICBsZWZ0OiA3NSU7IH1cbiAgLmNvbC1zbS1wdXNoLTEwIHtcbiAgICBsZWZ0OiA4My4zMzMzMyU7IH1cbiAgLmNvbC1zbS1wdXNoLTExIHtcbiAgICBsZWZ0OiA5MS42NjY2NyU7IH1cbiAgLmNvbC1zbS1wdXNoLTEyIHtcbiAgICBsZWZ0OiAxMDAlOyB9XG4gIC5jb2wtc20tb2Zmc2V0LTAge1xuICAgIG1hcmdpbi1sZWZ0OiAwJTsgfVxuICAuY29sLXNtLW9mZnNldC0xIHtcbiAgICBtYXJnaW4tbGVmdDogOC4zMzMzMyU7IH1cbiAgLmNvbC1zbS1vZmZzZXQtMiB7XG4gICAgbWFyZ2luLWxlZnQ6IDE2LjY2NjY3JTsgfVxuICAuY29sLXNtLW9mZnNldC0zIHtcbiAgICBtYXJnaW4tbGVmdDogMjUlOyB9XG4gIC5jb2wtc20tb2Zmc2V0LTQge1xuICAgIG1hcmdpbi1sZWZ0OiAzMy4zMzMzMyU7IH1cbiAgLmNvbC1zbS1vZmZzZXQtNSB7XG4gICAgbWFyZ2luLWxlZnQ6IDQxLjY2NjY3JTsgfVxuICAuY29sLXNtLW9mZnNldC02IHtcbiAgICBtYXJnaW4tbGVmdDogNTAlOyB9XG4gIC5jb2wtc20tb2Zmc2V0LTcge1xuICAgIG1hcmdpbi1sZWZ0OiA1OC4zMzMzMyU7IH1cbiAgLmNvbC1zbS1vZmZzZXQtOCB7XG4gICAgbWFyZ2luLWxlZnQ6IDY2LjY2NjY3JTsgfVxuICAuY29sLXNtLW9mZnNldC05IHtcbiAgICBtYXJnaW4tbGVmdDogNzUlOyB9XG4gIC5jb2wtc20tb2Zmc2V0LTEwIHtcbiAgICBtYXJnaW4tbGVmdDogODMuMzMzMzMlOyB9XG4gIC5jb2wtc20tb2Zmc2V0LTExIHtcbiAgICBtYXJnaW4tbGVmdDogOTEuNjY2NjclOyB9XG4gIC5jb2wtc20tb2Zmc2V0LTEyIHtcbiAgICBtYXJnaW4tbGVmdDogMTAwJTsgfSB9XG5cbkBtZWRpYSAobWluLXdpZHRoOiA5OTJweCkge1xuICAuY29sLW1kLTEsIC5jb2wtbWQtMiwgLmNvbC1tZC0zLCAuY29sLW1kLTQsIC5jb2wtbWQtNSwgLmNvbC1tZC02LCAuY29sLW1kLTcsIC5jb2wtbWQtOCwgLmNvbC1tZC05LCAuY29sLW1kLTEwLCAuY29sLW1kLTExLCAuY29sLW1kLTEyIHtcbiAgICBmbG9hdDogbGVmdDsgfVxuICAuY29sLW1kLTEge1xuICAgIHdpZHRoOiA4LjMzMzMzJTsgfVxuICAuY29sLW1kLTIge1xuICAgIHdpZHRoOiAxNi42NjY2NyU7IH1cbiAgLmNvbC1tZC0zIHtcbiAgICB3aWR0aDogMjUlOyB9XG4gIC5jb2wtbWQtNCB7XG4gICAgd2lkdGg6IDMzLjMzMzMzJTsgfVxuICAuY29sLW1kLTUge1xuICAgIHdpZHRoOiA0MS42NjY2NyU7IH1cbiAgLmNvbC1tZC02IHtcbiAgICB3aWR0aDogNTAlOyB9XG4gIC5jb2wtbWQtNyB7XG4gICAgd2lkdGg6IDU4LjMzMzMzJTsgfVxuICAuY29sLW1kLTgge1xuICAgIHdpZHRoOiA2Ni42NjY2NyU7IH1cbiAgLmNvbC1tZC05IHtcbiAgICB3aWR0aDogNzUlOyB9XG4gIC5jb2wtbWQtMTAge1xuICAgIHdpZHRoOiA4My4zMzMzMyU7IH1cbiAgLmNvbC1tZC0xMSB7XG4gICAgd2lkdGg6IDkxLjY2NjY3JTsgfVxuICAuY29sLW1kLTEyIHtcbiAgICB3aWR0aDogMTAwJTsgfVxuICAuY29sLW1kLXB1bGwtMCB7XG4gICAgcmlnaHQ6IGF1dG87IH1cbiAgLmNvbC1tZC1wdWxsLTEge1xuICAgIHJpZ2h0OiA4LjMzMzMzJTsgfVxuICAuY29sLW1kLXB1bGwtMiB7XG4gICAgcmlnaHQ6IDE2LjY2NjY3JTsgfVxuICAuY29sLW1kLXB1bGwtMyB7XG4gICAgcmlnaHQ6IDI1JTsgfVxuICAuY29sLW1kLXB1bGwtNCB7XG4gICAgcmlnaHQ6IDMzLjMzMzMzJTsgfVxuICAuY29sLW1kLXB1bGwtNSB7XG4gICAgcmlnaHQ6IDQxLjY2NjY3JTsgfVxuICAuY29sLW1kLXB1bGwtNiB7XG4gICAgcmlnaHQ6IDUwJTsgfVxuICAuY29sLW1kLXB1bGwtNyB7XG4gICAgcmlnaHQ6IDU4LjMzMzMzJTsgfVxuICAuY29sLW1kLXB1bGwtOCB7XG4gICAgcmlnaHQ6IDY2LjY2NjY3JTsgfVxuICAuY29sLW1kLXB1bGwtOSB7XG4gICAgcmlnaHQ6IDc1JTsgfVxuICAuY29sLW1kLXB1bGwtMTAge1xuICAgIHJpZ2h0OiA4My4zMzMzMyU7IH1cbiAgLmNvbC1tZC1wdWxsLTExIHtcbiAgICByaWdodDogOTEuNjY2NjclOyB9XG4gIC5jb2wtbWQtcHVsbC0xMiB7XG4gICAgcmlnaHQ6IDEwMCU7IH1cbiAgLmNvbC1tZC1wdXNoLTAge1xuICAgIGxlZnQ6IGF1dG87IH1cbiAgLmNvbC1tZC1wdXNoLTEge1xuICAgIGxlZnQ6IDguMzMzMzMlOyB9XG4gIC5jb2wtbWQtcHVzaC0yIHtcbiAgICBsZWZ0OiAxNi42NjY2NyU7IH1cbiAgLmNvbC1tZC1wdXNoLTMge1xuICAgIGxlZnQ6IDI1JTsgfVxuICAuY29sLW1kLXB1c2gtNCB7XG4gICAgbGVmdDogMzMuMzMzMzMlOyB9XG4gIC5jb2wtbWQtcHVzaC01IHtcbiAgICBsZWZ0OiA0MS42NjY2NyU7IH1cbiAgLmNvbC1tZC1wdXNoLTYge1xuICAgIGxlZnQ6IDUwJTsgfVxuICAuY29sLW1kLXB1c2gtNyB7XG4gICAgbGVmdDogNTguMzMzMzMlOyB9XG4gIC5jb2wtbWQtcHVzaC04IHtcbiAgICBsZWZ0OiA2Ni42NjY2NyU7IH1cbiAgLmNvbC1tZC1wdXNoLTkge1xuICAgIGxlZnQ6IDc1JTsgfVxuICAuY29sLW1kLXB1c2gtMTAge1xuICAgIGxlZnQ6IDgzLjMzMzMzJTsgfVxuICAuY29sLW1kLXB1c2gtMTEge1xuICAgIGxlZnQ6IDkxLjY2NjY3JTsgfVxuICAuY29sLW1kLXB1c2gtMTIge1xuICAgIGxlZnQ6IDEwMCU7IH1cbiAgLmNvbC1tZC1vZmZzZXQtMCB7XG4gICAgbWFyZ2luLWxlZnQ6IDAlOyB9XG4gIC5jb2wtbWQtb2Zmc2V0LTEge1xuICAgIG1hcmdpbi1sZWZ0OiA4LjMzMzMzJTsgfVxuICAuY29sLW1kLW9mZnNldC0yIHtcbiAgICBtYXJnaW4tbGVmdDogMTYuNjY2NjclOyB9XG4gIC5jb2wtbWQtb2Zmc2V0LTMge1xuICAgIG1hcmdpbi1sZWZ0OiAyNSU7IH1cbiAgLmNvbC1tZC1vZmZzZXQtNCB7XG4gICAgbWFyZ2luLWxlZnQ6IDMzLjMzMzMzJTsgfVxuICAuY29sLW1kLW9mZnNldC01IHtcbiAgICBtYXJnaW4tbGVmdDogNDEuNjY2NjclOyB9XG4gIC5jb2wtbWQtb2Zmc2V0LTYge1xuICAgIG1hcmdpbi1sZWZ0OiA1MCU7IH1cbiAgLmNvbC1tZC1vZmZzZXQtNyB7XG4gICAgbWFyZ2luLWxlZnQ6IDU4LjMzMzMzJTsgfVxuICAuY29sLW1kLW9mZnNldC04IHtcbiAgICBtYXJnaW4tbGVmdDogNjYuNjY2NjclOyB9XG4gIC5jb2wtbWQtb2Zmc2V0LTkge1xuICAgIG1hcmdpbi1sZWZ0OiA3NSU7IH1cbiAgLmNvbC1tZC1vZmZzZXQtMTAge1xuICAgIG1hcmdpbi1sZWZ0OiA4My4zMzMzMyU7IH1cbiAgLmNvbC1tZC1vZmZzZXQtMTEge1xuICAgIG1hcmdpbi1sZWZ0OiA5MS42NjY2NyU7IH1cbiAgLmNvbC1tZC1vZmZzZXQtMTIge1xuICAgIG1hcmdpbi1sZWZ0OiAxMDAlOyB9IH1cblxuQG1lZGlhIChtaW4td2lkdGg6IDEyMDBweCkge1xuICAuY29sLWxnLTEsIC5jb2wtbGctMiwgLmNvbC1sZy0zLCAuY29sLWxnLTQsIC5jb2wtbGctNSwgLmNvbC1sZy02LCAuY29sLWxnLTcsIC5jb2wtbGctOCwgLmNvbC1sZy05LCAuY29sLWxnLTEwLCAuY29sLWxnLTExLCAuY29sLWxnLTEyIHtcbiAgICBmbG9hdDogbGVmdDsgfVxuICAuY29sLWxnLTEge1xuICAgIHdpZHRoOiA4LjMzMzMzJTsgfVxuICAuY29sLWxnLTIge1xuICAgIHdpZHRoOiAxNi42NjY2NyU7IH1cbiAgLmNvbC1sZy0zIHtcbiAgICB3aWR0aDogMjUlOyB9XG4gIC5jb2wtbGctNCB7XG4gICAgd2lkdGg6IDMzLjMzMzMzJTsgfVxuICAuY29sLWxnLTUge1xuICAgIHdpZHRoOiA0MS42NjY2NyU7IH1cbiAgLmNvbC1sZy02IHtcbiAgICB3aWR0aDogNTAlOyB9XG4gIC5jb2wtbGctNyB7XG4gICAgd2lkdGg6IDU4LjMzMzMzJTsgfVxuICAuY29sLWxnLTgge1xuICAgIHdpZHRoOiA2Ni42NjY2NyU7IH1cbiAgLmNvbC1sZy05IHtcbiAgICB3aWR0aDogNzUlOyB9XG4gIC5jb2wtbGctMTAge1xuICAgIHdpZHRoOiA4My4zMzMzMyU7IH1cbiAgLmNvbC1sZy0xMSB7XG4gICAgd2lkdGg6IDkxLjY2NjY3JTsgfVxuICAuY29sLWxnLTEyIHtcbiAgICB3aWR0aDogMTAwJTsgfVxuICAuY29sLWxnLXB1bGwtMCB7XG4gICAgcmlnaHQ6IGF1dG87IH1cbiAgLmNvbC1sZy1wdWxsLTEge1xuICAgIHJpZ2h0OiA4LjMzMzMzJTsgfVxuICAuY29sLWxnLXB1bGwtMiB7XG4gICAgcmlnaHQ6IDE2LjY2NjY3JTsgfVxuICAuY29sLWxnLXB1bGwtMyB7XG4gICAgcmlnaHQ6IDI1JTsgfVxuICAuY29sLWxnLXB1bGwtNCB7XG4gICAgcmlnaHQ6IDMzLjMzMzMzJTsgfVxuICAuY29sLWxnLXB1bGwtNSB7XG4gICAgcmlnaHQ6IDQxLjY2NjY3JTsgfVxuICAuY29sLWxnLXB1bGwtNiB7XG4gICAgcmlnaHQ6IDUwJTsgfVxuICAuY29sLWxnLXB1bGwtNyB7XG4gICAgcmlnaHQ6IDU4LjMzMzMzJTsgfVxuICAuY29sLWxnLXB1bGwtOCB7XG4gICAgcmlnaHQ6IDY2LjY2NjY3JTsgfVxuICAuY29sLWxnLXB1bGwtOSB7XG4gICAgcmlnaHQ6IDc1JTsgfVxuICAuY29sLWxnLXB1bGwtMTAge1xuICAgIHJpZ2h0OiA4My4zMzMzMyU7IH1cbiAgLmNvbC1sZy1wdWxsLTExIHtcbiAgICByaWdodDogOTEuNjY2NjclOyB9XG4gIC5jb2wtbGctcHVsbC0xMiB7XG4gICAgcmlnaHQ6IDEwMCU7IH1cbiAgLmNvbC1sZy1wdXNoLTAge1xuICAgIGxlZnQ6IGF1dG87IH1cbiAgLmNvbC1sZy1wdXNoLTEge1xuICAgIGxlZnQ6IDguMzMzMzMlOyB9XG4gIC5jb2wtbGctcHVzaC0yIHtcbiAgICBsZWZ0OiAxNi42NjY2NyU7IH1cbiAgLmNvbC1sZy1wdXNoLTMge1xuICAgIGxlZnQ6IDI1JTsgfVxuICAuY29sLWxnLXB1c2gtNCB7XG4gICAgbGVmdDogMzMuMzMzMzMlOyB9XG4gIC5jb2wtbGctcHVzaC01IHtcbiAgICBsZWZ0OiA0MS42NjY2NyU7IH1cbiAgLmNvbC1sZy1wdXNoLTYge1xuICAgIGxlZnQ6IDUwJTsgfVxuICAuY29sLWxnLXB1c2gtNyB7XG4gICAgbGVmdDogNTguMzMzMzMlOyB9XG4gIC5jb2wtbGctcHVzaC04IHtcbiAgICBsZWZ0OiA2Ni42NjY2NyU7IH1cbiAgLmNvbC1sZy1wdXNoLTkge1xuICAgIGxlZnQ6IDc1JTsgfVxuICAuY29sLWxnLXB1c2gtMTAge1xuICAgIGxlZnQ6IDgzLjMzMzMzJTsgfVxuICAuY29sLWxnLXB1c2gtMTEge1xuICAgIGxlZnQ6IDkxLjY2NjY3JTsgfVxuICAuY29sLWxnLXB1c2gtMTIge1xuICAgIGxlZnQ6IDEwMCU7IH1cbiAgLmNvbC1sZy1vZmZzZXQtMCB7XG4gICAgbWFyZ2luLWxlZnQ6IDAlOyB9XG4gIC5jb2wtbGctb2Zmc2V0LTEge1xuICAgIG1hcmdpbi1sZWZ0OiA4LjMzMzMzJTsgfVxuICAuY29sLWxnLW9mZnNldC0yIHtcbiAgICBtYXJnaW4tbGVmdDogMTYuNjY2NjclOyB9XG4gIC5jb2wtbGctb2Zmc2V0LTMge1xuICAgIG1hcmdpbi1sZWZ0OiAyNSU7IH1cbiAgLmNvbC1sZy1vZmZzZXQtNCB7XG4gICAgbWFyZ2luLWxlZnQ6IDMzLjMzMzMzJTsgfVxuICAuY29sLWxnLW9mZnNldC01IHtcbiAgICBtYXJnaW4tbGVmdDogNDEuNjY2NjclOyB9XG4gIC5jb2wtbGctb2Zmc2V0LTYge1xuICAgIG1hcmdpbi1sZWZ0OiA1MCU7IH1cbiAgLmNvbC1sZy1vZmZzZXQtNyB7XG4gICAgbWFyZ2luLWxlZnQ6IDU4LjMzMzMzJTsgfVxuICAuY29sLWxnLW9mZnNldC04IHtcbiAgICBtYXJnaW4tbGVmdDogNjYuNjY2NjclOyB9XG4gIC5jb2wtbGctb2Zmc2V0LTkge1xuICAgIG1hcmdpbi1sZWZ0OiA3NSU7IH1cbiAgLmNvbC1sZy1vZmZzZXQtMTAge1xuICAgIG1hcmdpbi1sZWZ0OiA4My4zMzMzMyU7IH1cbiAgLmNvbC1sZy1vZmZzZXQtMTEge1xuICAgIG1hcmdpbi1sZWZ0OiA5MS42NjY2NyU7IH1cbiAgLmNvbC1sZy1vZmZzZXQtMTIge1xuICAgIG1hcmdpbi1sZWZ0OiAxMDAlOyB9IH1cblxudGFibGUge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDsgfVxuXG5jYXB0aW9uIHtcbiAgcGFkZGluZy10b3A6IDhweDtcbiAgcGFkZGluZy1ib3R0b206IDhweDtcbiAgY29sb3I6ICM3Nzc3Nzc7XG4gIHRleHQtYWxpZ246IGxlZnQ7IH1cblxudGgge1xuICB0ZXh0LWFsaWduOiBsZWZ0OyB9XG5cbi50YWJsZSB7XG4gIHdpZHRoOiAxMDAlO1xuICBtYXgtd2lkdGg6IDEwMCU7XG4gIG1hcmdpbi1ib3R0b206IDIwcHg7IH1cbiAgLnRhYmxlID4gdGhlYWQgPiB0ciA+IHRoLFxuICAudGFibGUgPiB0aGVhZCA+IHRyID4gdGQsXG4gIC50YWJsZSA+IHRib2R5ID4gdHIgPiB0aCxcbiAgLnRhYmxlID4gdGJvZHkgPiB0ciA+IHRkLFxuICAudGFibGUgPiB0Zm9vdCA+IHRyID4gdGgsXG4gIC50YWJsZSA+IHRmb290ID4gdHIgPiB0ZCB7XG4gICAgcGFkZGluZzogOHB4O1xuICAgIGxpbmUtaGVpZ2h0OiAxLjQyODU3O1xuICAgIHZlcnRpY2FsLWFsaWduOiB0b3A7XG4gICAgYm9yZGVyLXRvcDogMXB4IHNvbGlkICNkZGQ7IH1cbiAgLnRhYmxlID4gdGhlYWQgPiB0ciA+IHRoIHtcbiAgICB2ZXJ0aWNhbC1hbGlnbjogYm90dG9tO1xuICAgIGJvcmRlci1ib3R0b206IDJweCBzb2xpZCAjZGRkOyB9XG4gIC50YWJsZSA+IGNhcHRpb24gKyB0aGVhZCA+IHRyOmZpcnN0LWNoaWxkID4gdGgsXG4gIC50YWJsZSA+IGNhcHRpb24gKyB0aGVhZCA+IHRyOmZpcnN0LWNoaWxkID4gdGQsXG4gIC50YWJsZSA+IGNvbGdyb3VwICsgdGhlYWQgPiB0cjpmaXJzdC1jaGlsZCA+IHRoLFxuICAudGFibGUgPiBjb2xncm91cCArIHRoZWFkID4gdHI6Zmlyc3QtY2hpbGQgPiB0ZCxcbiAgLnRhYmxlID4gdGhlYWQ6Zmlyc3QtY2hpbGQgPiB0cjpmaXJzdC1jaGlsZCA+IHRoLFxuICAudGFibGUgPiB0aGVhZDpmaXJzdC1jaGlsZCA+IHRyOmZpcnN0LWNoaWxkID4gdGQge1xuICAgIGJvcmRlci10b3A6IDA7IH1cbiAgLnRhYmxlID4gdGJvZHkgKyB0Ym9keSB7XG4gICAgYm9yZGVyLXRvcDogMnB4IHNvbGlkICNkZGQ7IH1cbiAgLnRhYmxlIC50YWJsZSB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogI2ZmZjsgfVxuXG4udGFibGUtY29uZGVuc2VkID4gdGhlYWQgPiB0ciA+IHRoLFxuLnRhYmxlLWNvbmRlbnNlZCA+IHRoZWFkID4gdHIgPiB0ZCxcbi50YWJsZS1jb25kZW5zZWQgPiB0Ym9keSA+IHRyID4gdGgsXG4udGFibGUtY29uZGVuc2VkID4gdGJvZHkgPiB0ciA+IHRkLFxuLnRhYmxlLWNvbmRlbnNlZCA+IHRmb290ID4gdHIgPiB0aCxcbi50YWJsZS1jb25kZW5zZWQgPiB0Zm9vdCA+IHRyID4gdGQge1xuICBwYWRkaW5nOiA1cHg7IH1cblxuLnRhYmxlLWJvcmRlcmVkIHtcbiAgYm9yZGVyOiAxcHggc29saWQgI2RkZDsgfVxuICAudGFibGUtYm9yZGVyZWQgPiB0aGVhZCA+IHRyID4gdGgsXG4gIC50YWJsZS1ib3JkZXJlZCA+IHRoZWFkID4gdHIgPiB0ZCxcbiAgLnRhYmxlLWJvcmRlcmVkID4gdGJvZHkgPiB0ciA+IHRoLFxuICAudGFibGUtYm9yZGVyZWQgPiB0Ym9keSA+IHRyID4gdGQsXG4gIC50YWJsZS1ib3JkZXJlZCA+IHRmb290ID4gdHIgPiB0aCxcbiAgLnRhYmxlLWJvcmRlcmVkID4gdGZvb3QgPiB0ciA+IHRkIHtcbiAgICBib3JkZXI6IDFweCBzb2xpZCAjZGRkOyB9XG4gIC50YWJsZS1ib3JkZXJlZCA+IHRoZWFkID4gdHIgPiB0aCxcbiAgLnRhYmxlLWJvcmRlcmVkID4gdGhlYWQgPiB0ciA+IHRkIHtcbiAgICBib3JkZXItYm90dG9tLXdpZHRoOiAycHg7IH1cblxuLnRhYmxlLXN0cmlwZWQgPiB0Ym9keSA+IHRyOm50aC1vZi10eXBlKG9kZCkge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZjlmOWY5OyB9XG5cbi50YWJsZS1ob3ZlciA+IHRib2R5ID4gdHI6aG92ZXIge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZjVmNWY1OyB9XG5cbnRhYmxlIGNvbFtjbGFzcyo9XCJjb2wtXCJdIHtcbiAgcG9zaXRpb246IHN0YXRpYztcbiAgZmxvYXQ6IG5vbmU7XG4gIGRpc3BsYXk6IHRhYmxlLWNvbHVtbjsgfVxuXG50YWJsZSB0ZFtjbGFzcyo9XCJjb2wtXCJdLFxudGFibGUgdGhbY2xhc3MqPVwiY29sLVwiXSB7XG4gIHBvc2l0aW9uOiBzdGF0aWM7XG4gIGZsb2F0OiBub25lO1xuICBkaXNwbGF5OiB0YWJsZS1jZWxsOyB9XG5cbi50YWJsZSA+IHRoZWFkID4gdHIgPiB0ZC5hY3RpdmUsXG4udGFibGUgPiB0aGVhZCA+IHRyID4gdGguYWN0aXZlLFxuLnRhYmxlID4gdGhlYWQgPiB0ci5hY3RpdmUgPiB0ZCxcbi50YWJsZSA+IHRoZWFkID4gdHIuYWN0aXZlID4gdGgsXG4udGFibGUgPiB0Ym9keSA+IHRyID4gdGQuYWN0aXZlLFxuLnRhYmxlID4gdGJvZHkgPiB0ciA+IHRoLmFjdGl2ZSxcbi50YWJsZSA+IHRib2R5ID4gdHIuYWN0aXZlID4gdGQsXG4udGFibGUgPiB0Ym9keSA+IHRyLmFjdGl2ZSA+IHRoLFxuLnRhYmxlID4gdGZvb3QgPiB0ciA+IHRkLmFjdGl2ZSxcbi50YWJsZSA+IHRmb290ID4gdHIgPiB0aC5hY3RpdmUsXG4udGFibGUgPiB0Zm9vdCA+IHRyLmFjdGl2ZSA+IHRkLFxuLnRhYmxlID4gdGZvb3QgPiB0ci5hY3RpdmUgPiB0aCB7XG4gIGJhY2tncm91bmQtY29sb3I6ICNmNWY1ZjU7IH1cblxuLnRhYmxlLWhvdmVyID4gdGJvZHkgPiB0ciA+IHRkLmFjdGl2ZTpob3Zlcixcbi50YWJsZS1ob3ZlciA+IHRib2R5ID4gdHIgPiB0aC5hY3RpdmU6aG92ZXIsXG4udGFibGUtaG92ZXIgPiB0Ym9keSA+IHRyLmFjdGl2ZTpob3ZlciA+IHRkLFxuLnRhYmxlLWhvdmVyID4gdGJvZHkgPiB0cjpob3ZlciA+IC5hY3RpdmUsXG4udGFibGUtaG92ZXIgPiB0Ym9keSA+IHRyLmFjdGl2ZTpob3ZlciA+IHRoIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2U4ZThlODsgfVxuXG4udGFibGUgPiB0aGVhZCA+IHRyID4gdGQuc3VjY2Vzcyxcbi50YWJsZSA+IHRoZWFkID4gdHIgPiB0aC5zdWNjZXNzLFxuLnRhYmxlID4gdGhlYWQgPiB0ci5zdWNjZXNzID4gdGQsXG4udGFibGUgPiB0aGVhZCA+IHRyLnN1Y2Nlc3MgPiB0aCxcbi50YWJsZSA+IHRib2R5ID4gdHIgPiB0ZC5zdWNjZXNzLFxuLnRhYmxlID4gdGJvZHkgPiB0ciA+IHRoLnN1Y2Nlc3MsXG4udGFibGUgPiB0Ym9keSA+IHRyLnN1Y2Nlc3MgPiB0ZCxcbi50YWJsZSA+IHRib2R5ID4gdHIuc3VjY2VzcyA+IHRoLFxuLnRhYmxlID4gdGZvb3QgPiB0ciA+IHRkLnN1Y2Nlc3MsXG4udGFibGUgPiB0Zm9vdCA+IHRyID4gdGguc3VjY2Vzcyxcbi50YWJsZSA+IHRmb290ID4gdHIuc3VjY2VzcyA+IHRkLFxuLnRhYmxlID4gdGZvb3QgPiB0ci5zdWNjZXNzID4gdGgge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZGZmMGQ4OyB9XG5cbi50YWJsZS1ob3ZlciA+IHRib2R5ID4gdHIgPiB0ZC5zdWNjZXNzOmhvdmVyLFxuLnRhYmxlLWhvdmVyID4gdGJvZHkgPiB0ciA+IHRoLnN1Y2Nlc3M6aG92ZXIsXG4udGFibGUtaG92ZXIgPiB0Ym9keSA+IHRyLnN1Y2Nlc3M6aG92ZXIgPiB0ZCxcbi50YWJsZS1ob3ZlciA+IHRib2R5ID4gdHI6aG92ZXIgPiAuc3VjY2Vzcyxcbi50YWJsZS1ob3ZlciA+IHRib2R5ID4gdHIuc3VjY2Vzczpob3ZlciA+IHRoIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2QwZTljNjsgfVxuXG4udGFibGUgPiB0aGVhZCA+IHRyID4gdGQuaW5mbyxcbi50YWJsZSA+IHRoZWFkID4gdHIgPiB0aC5pbmZvLFxuLnRhYmxlID4gdGhlYWQgPiB0ci5pbmZvID4gdGQsXG4udGFibGUgPiB0aGVhZCA+IHRyLmluZm8gPiB0aCxcbi50YWJsZSA+IHRib2R5ID4gdHIgPiB0ZC5pbmZvLFxuLnRhYmxlID4gdGJvZHkgPiB0ciA+IHRoLmluZm8sXG4udGFibGUgPiB0Ym9keSA+IHRyLmluZm8gPiB0ZCxcbi50YWJsZSA+IHRib2R5ID4gdHIuaW5mbyA+IHRoLFxuLnRhYmxlID4gdGZvb3QgPiB0ciA+IHRkLmluZm8sXG4udGFibGUgPiB0Zm9vdCA+IHRyID4gdGguaW5mbyxcbi50YWJsZSA+IHRmb290ID4gdHIuaW5mbyA+IHRkLFxuLnRhYmxlID4gdGZvb3QgPiB0ci5pbmZvID4gdGgge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZDllZGY3OyB9XG5cbi50YWJsZS1ob3ZlciA+IHRib2R5ID4gdHIgPiB0ZC5pbmZvOmhvdmVyLFxuLnRhYmxlLWhvdmVyID4gdGJvZHkgPiB0ciA+IHRoLmluZm86aG92ZXIsXG4udGFibGUtaG92ZXIgPiB0Ym9keSA+IHRyLmluZm86aG92ZXIgPiB0ZCxcbi50YWJsZS1ob3ZlciA+IHRib2R5ID4gdHI6aG92ZXIgPiAuaW5mbyxcbi50YWJsZS1ob3ZlciA+IHRib2R5ID4gdHIuaW5mbzpob3ZlciA+IHRoIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2M0ZTNmMzsgfVxuXG4udGFibGUgPiB0aGVhZCA+IHRyID4gdGQud2FybmluZyxcbi50YWJsZSA+IHRoZWFkID4gdHIgPiB0aC53YXJuaW5nLFxuLnRhYmxlID4gdGhlYWQgPiB0ci53YXJuaW5nID4gdGQsXG4udGFibGUgPiB0aGVhZCA+IHRyLndhcm5pbmcgPiB0aCxcbi50YWJsZSA+IHRib2R5ID4gdHIgPiB0ZC53YXJuaW5nLFxuLnRhYmxlID4gdGJvZHkgPiB0ciA+IHRoLndhcm5pbmcsXG4udGFibGUgPiB0Ym9keSA+IHRyLndhcm5pbmcgPiB0ZCxcbi50YWJsZSA+IHRib2R5ID4gdHIud2FybmluZyA+IHRoLFxuLnRhYmxlID4gdGZvb3QgPiB0ciA+IHRkLndhcm5pbmcsXG4udGFibGUgPiB0Zm9vdCA+IHRyID4gdGgud2FybmluZyxcbi50YWJsZSA+IHRmb290ID4gdHIud2FybmluZyA+IHRkLFxuLnRhYmxlID4gdGZvb3QgPiB0ci53YXJuaW5nID4gdGgge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZmNmOGUzOyB9XG5cbi50YWJsZS1ob3ZlciA+IHRib2R5ID4gdHIgPiB0ZC53YXJuaW5nOmhvdmVyLFxuLnRhYmxlLWhvdmVyID4gdGJvZHkgPiB0ciA+IHRoLndhcm5pbmc6aG92ZXIsXG4udGFibGUtaG92ZXIgPiB0Ym9keSA+IHRyLndhcm5pbmc6aG92ZXIgPiB0ZCxcbi50YWJsZS1ob3ZlciA+IHRib2R5ID4gdHI6aG92ZXIgPiAud2FybmluZyxcbi50YWJsZS1ob3ZlciA+IHRib2R5ID4gdHIud2FybmluZzpob3ZlciA+IHRoIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2ZhZjJjYzsgfVxuXG4udGFibGUgPiB0aGVhZCA+IHRyID4gdGQuZGFuZ2VyLFxuLnRhYmxlID4gdGhlYWQgPiB0ciA+IHRoLmRhbmdlcixcbi50YWJsZSA+IHRoZWFkID4gdHIuZGFuZ2VyID4gdGQsXG4udGFibGUgPiB0aGVhZCA+IHRyLmRhbmdlciA+IHRoLFxuLnRhYmxlID4gdGJvZHkgPiB0ciA+IHRkLmRhbmdlcixcbi50YWJsZSA+IHRib2R5ID4gdHIgPiB0aC5kYW5nZXIsXG4udGFibGUgPiB0Ym9keSA+IHRyLmRhbmdlciA+IHRkLFxuLnRhYmxlID4gdGJvZHkgPiB0ci5kYW5nZXIgPiB0aCxcbi50YWJsZSA+IHRmb290ID4gdHIgPiB0ZC5kYW5nZXIsXG4udGFibGUgPiB0Zm9vdCA+IHRyID4gdGguZGFuZ2VyLFxuLnRhYmxlID4gdGZvb3QgPiB0ci5kYW5nZXIgPiB0ZCxcbi50YWJsZSA+IHRmb290ID4gdHIuZGFuZ2VyID4gdGgge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZjJkZWRlOyB9XG5cbi50YWJsZS1ob3ZlciA+IHRib2R5ID4gdHIgPiB0ZC5kYW5nZXI6aG92ZXIsXG4udGFibGUtaG92ZXIgPiB0Ym9keSA+IHRyID4gdGguZGFuZ2VyOmhvdmVyLFxuLnRhYmxlLWhvdmVyID4gdGJvZHkgPiB0ci5kYW5nZXI6aG92ZXIgPiB0ZCxcbi50YWJsZS1ob3ZlciA+IHRib2R5ID4gdHI6aG92ZXIgPiAuZGFuZ2VyLFxuLnRhYmxlLWhvdmVyID4gdGJvZHkgPiB0ci5kYW5nZXI6aG92ZXIgPiB0aCB7XG4gIGJhY2tncm91bmQtY29sb3I6ICNlYmNjY2M7IH1cblxuLnRhYmxlLXJlc3BvbnNpdmUge1xuICBvdmVyZmxvdy14OiBhdXRvO1xuICBtaW4taGVpZ2h0OiAwLjAxJTsgfVxuICBAbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA3NjdweCkge1xuICAgIC50YWJsZS1yZXNwb25zaXZlIHtcbiAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgbWFyZ2luLWJvdHRvbTogMTVweDtcbiAgICAgIG92ZXJmbG93LXk6IGhpZGRlbjtcbiAgICAgIC1tcy1vdmVyZmxvdy1zdHlsZTogLW1zLWF1dG9oaWRpbmctc2Nyb2xsYmFyO1xuICAgICAgYm9yZGVyOiAxcHggc29saWQgI2RkZDsgfVxuICAgICAgLnRhYmxlLXJlc3BvbnNpdmUgPiAudGFibGUge1xuICAgICAgICBtYXJnaW4tYm90dG9tOiAwOyB9XG4gICAgICAgIC50YWJsZS1yZXNwb25zaXZlID4gLnRhYmxlID4gdGhlYWQgPiB0ciA+IHRoLFxuICAgICAgICAudGFibGUtcmVzcG9uc2l2ZSA+IC50YWJsZSA+IHRoZWFkID4gdHIgPiB0ZCxcbiAgICAgICAgLnRhYmxlLXJlc3BvbnNpdmUgPiAudGFibGUgPiB0Ym9keSA+IHRyID4gdGgsXG4gICAgICAgIC50YWJsZS1yZXNwb25zaXZlID4gLnRhYmxlID4gdGJvZHkgPiB0ciA+IHRkLFxuICAgICAgICAudGFibGUtcmVzcG9uc2l2ZSA+IC50YWJsZSA+IHRmb290ID4gdHIgPiB0aCxcbiAgICAgICAgLnRhYmxlLXJlc3BvbnNpdmUgPiAudGFibGUgPiB0Zm9vdCA+IHRyID4gdGQge1xuICAgICAgICAgIHdoaXRlLXNwYWNlOiBub3dyYXA7IH1cbiAgICAgIC50YWJsZS1yZXNwb25zaXZlID4gLnRhYmxlLWJvcmRlcmVkIHtcbiAgICAgICAgYm9yZGVyOiAwOyB9XG4gICAgICAgIC50YWJsZS1yZXNwb25zaXZlID4gLnRhYmxlLWJvcmRlcmVkID4gdGhlYWQgPiB0ciA+IHRoOmZpcnN0LWNoaWxkLFxuICAgICAgICAudGFibGUtcmVzcG9uc2l2ZSA+IC50YWJsZS1ib3JkZXJlZCA+IHRoZWFkID4gdHIgPiB0ZDpmaXJzdC1jaGlsZCxcbiAgICAgICAgLnRhYmxlLXJlc3BvbnNpdmUgPiAudGFibGUtYm9yZGVyZWQgPiB0Ym9keSA+IHRyID4gdGg6Zmlyc3QtY2hpbGQsXG4gICAgICAgIC50YWJsZS1yZXNwb25zaXZlID4gLnRhYmxlLWJvcmRlcmVkID4gdGJvZHkgPiB0ciA+IHRkOmZpcnN0LWNoaWxkLFxuICAgICAgICAudGFibGUtcmVzcG9uc2l2ZSA+IC50YWJsZS1ib3JkZXJlZCA+IHRmb290ID4gdHIgPiB0aDpmaXJzdC1jaGlsZCxcbiAgICAgICAgLnRhYmxlLXJlc3BvbnNpdmUgPiAudGFibGUtYm9yZGVyZWQgPiB0Zm9vdCA+IHRyID4gdGQ6Zmlyc3QtY2hpbGQge1xuICAgICAgICAgIGJvcmRlci1sZWZ0OiAwOyB9XG4gICAgICAgIC50YWJsZS1yZXNwb25zaXZlID4gLnRhYmxlLWJvcmRlcmVkID4gdGhlYWQgPiB0ciA+IHRoOmxhc3QtY2hpbGQsXG4gICAgICAgIC50YWJsZS1yZXNwb25zaXZlID4gLnRhYmxlLWJvcmRlcmVkID4gdGhlYWQgPiB0ciA+IHRkOmxhc3QtY2hpbGQsXG4gICAgICAgIC50YWJsZS1yZXNwb25zaXZlID4gLnRhYmxlLWJvcmRlcmVkID4gdGJvZHkgPiB0ciA+IHRoOmxhc3QtY2hpbGQsXG4gICAgICAgIC50YWJsZS1yZXNwb25zaXZlID4gLnRhYmxlLWJvcmRlcmVkID4gdGJvZHkgPiB0ciA+IHRkOmxhc3QtY2hpbGQsXG4gICAgICAgIC50YWJsZS1yZXNwb25zaXZlID4gLnRhYmxlLWJvcmRlcmVkID4gdGZvb3QgPiB0ciA+IHRoOmxhc3QtY2hpbGQsXG4gICAgICAgIC50YWJsZS1yZXNwb25zaXZlID4gLnRhYmxlLWJvcmRlcmVkID4gdGZvb3QgPiB0ciA+IHRkOmxhc3QtY2hpbGQge1xuICAgICAgICAgIGJvcmRlci1yaWdodDogMDsgfVxuICAgICAgICAudGFibGUtcmVzcG9uc2l2ZSA+IC50YWJsZS1ib3JkZXJlZCA+IHRib2R5ID4gdHI6bGFzdC1jaGlsZCA+IHRoLFxuICAgICAgICAudGFibGUtcmVzcG9uc2l2ZSA+IC50YWJsZS1ib3JkZXJlZCA+IHRib2R5ID4gdHI6bGFzdC1jaGlsZCA+IHRkLFxuICAgICAgICAudGFibGUtcmVzcG9uc2l2ZSA+IC50YWJsZS1ib3JkZXJlZCA+IHRmb290ID4gdHI6bGFzdC1jaGlsZCA+IHRoLFxuICAgICAgICAudGFibGUtcmVzcG9uc2l2ZSA+IC50YWJsZS1ib3JkZXJlZCA+IHRmb290ID4gdHI6bGFzdC1jaGlsZCA+IHRkIHtcbiAgICAgICAgICBib3JkZXItYm90dG9tOiAwOyB9IH1cblxuZmllbGRzZXQge1xuICBwYWRkaW5nOiAwO1xuICBtYXJnaW46IDA7XG4gIGJvcmRlcjogMDtcbiAgbWluLXdpZHRoOiAwOyB9XG5cbmxlZ2VuZCB7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICB3aWR0aDogMTAwJTtcbiAgcGFkZGluZzogMDtcbiAgbWFyZ2luLWJvdHRvbTogMjBweDtcbiAgZm9udC1zaXplOiAyMXB4O1xuICBsaW5lLWhlaWdodDogaW5oZXJpdDtcbiAgY29sb3I6ICMzMzMzMzM7XG4gIGJvcmRlcjogMDtcbiAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkICNlNWU1ZTU7IH1cblxubGFiZWwge1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIG1heC13aWR0aDogMTAwJTtcbiAgbWFyZ2luLWJvdHRvbTogNXB4O1xuICBmb250LXdlaWdodDogYm9sZDsgfVxuXG5pbnB1dFt0eXBlPVwic2VhcmNoXCJdIHtcbiAgLXdlYmtpdC1ib3gtc2l6aW5nOiBib3JkZXItYm94O1xuICAtbW96LWJveC1zaXppbmc6IGJvcmRlci1ib3g7XG4gIGJveC1zaXppbmc6IGJvcmRlci1ib3g7IH1cblxuaW5wdXRbdHlwZT1cInJhZGlvXCJdLFxuaW5wdXRbdHlwZT1cImNoZWNrYm94XCJdIHtcbiAgbWFyZ2luOiA0cHggMCAwO1xuICBtYXJnaW4tdG9wOiAxcHggXFw5O1xuICBsaW5lLWhlaWdodDogbm9ybWFsOyB9XG5cbmlucHV0W3R5cGU9XCJmaWxlXCJdIHtcbiAgZGlzcGxheTogYmxvY2s7IH1cblxuaW5wdXRbdHlwZT1cInJhbmdlXCJdIHtcbiAgZGlzcGxheTogYmxvY2s7XG4gIHdpZHRoOiAxMDAlOyB9XG5cbnNlbGVjdFttdWx0aXBsZV0sXG5zZWxlY3Rbc2l6ZV0ge1xuICBoZWlnaHQ6IGF1dG87IH1cblxuaW5wdXRbdHlwZT1cImZpbGVcIl06Zm9jdXMsXG5pbnB1dFt0eXBlPVwicmFkaW9cIl06Zm9jdXMsXG5pbnB1dFt0eXBlPVwiY2hlY2tib3hcIl06Zm9jdXMge1xuICBvdXRsaW5lOiA1cHggYXV0byAtd2Via2l0LWZvY3VzLXJpbmctY29sb3I7XG4gIG91dGxpbmUtb2Zmc2V0OiAtMnB4OyB9XG5cbm91dHB1dCB7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBwYWRkaW5nLXRvcDogN3B4O1xuICBmb250LXNpemU6IDE0cHg7XG4gIGxpbmUtaGVpZ2h0OiAxLjQyODU3O1xuICBjb2xvcjogIzU1NTU1NTsgfVxuXG4uZm9ybS1jb250cm9sIHtcbiAgZGlzcGxheTogYmxvY2s7XG4gIHdpZHRoOiAxMDAlO1xuICBoZWlnaHQ6IDM0cHg7XG4gIHBhZGRpbmc6IDZweCAxMnB4O1xuICBmb250LXNpemU6IDE0cHg7XG4gIGxpbmUtaGVpZ2h0OiAxLjQyODU3O1xuICBjb2xvcjogIzU1NTU1NTtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2ZmZjtcbiAgYmFja2dyb3VuZC1pbWFnZTogbm9uZTtcbiAgYm9yZGVyOiAxcHggc29saWQgI2NjYztcbiAgYm9yZGVyLXJhZGl1czogNHB4O1xuICAtd2Via2l0LWJveC1zaGFkb3c6IGluc2V0IDAgMXB4IDFweCByZ2JhKDAsIDAsIDAsIDAuMDc1KTtcbiAgYm94LXNoYWRvdzogaW5zZXQgMCAxcHggMXB4IHJnYmEoMCwgMCwgMCwgMC4wNzUpO1xuICAtd2Via2l0LXRyYW5zaXRpb246IGJvcmRlci1jb2xvciBlYXNlLWluLW91dCAwLjE1cywgYm94LXNoYWRvdyBlYXNlLWluLW91dCAwLjE1cztcbiAgLW8tdHJhbnNpdGlvbjogYm9yZGVyLWNvbG9yIGVhc2UtaW4tb3V0IDAuMTVzLCBib3gtc2hhZG93IGVhc2UtaW4tb3V0IDAuMTVzO1xuICB0cmFuc2l0aW9uOiBib3JkZXItY29sb3IgZWFzZS1pbi1vdXQgMC4xNXMsIGJveC1zaGFkb3cgZWFzZS1pbi1vdXQgMC4xNXM7IH1cbiAgLmZvcm0tY29udHJvbDpmb2N1cyB7XG4gICAgYm9yZGVyLWNvbG9yOiAjNjZhZmU5O1xuICAgIG91dGxpbmU6IDA7XG4gICAgLXdlYmtpdC1ib3gtc2hhZG93OiBpbnNldCAwIDFweCAxcHggcmdiYSgwLCAwLCAwLCAwLjA3NSksIDAgMCA4cHggcmdiYSgxMDIsIDE3NSwgMjMzLCAwLjYpO1xuICAgIGJveC1zaGFkb3c6IGluc2V0IDAgMXB4IDFweCByZ2JhKDAsIDAsIDAsIDAuMDc1KSwgMCAwIDhweCByZ2JhKDEwMiwgMTc1LCAyMzMsIDAuNik7IH1cbiAgLmZvcm0tY29udHJvbDo6LW1vei1wbGFjZWhvbGRlciB7XG4gICAgY29sb3I6ICM5OTk7XG4gICAgb3BhY2l0eTogMTsgfVxuICAuZm9ybS1jb250cm9sOi1tcy1pbnB1dC1wbGFjZWhvbGRlciB7XG4gICAgY29sb3I6ICM5OTk7IH1cbiAgLmZvcm0tY29udHJvbDo6LXdlYmtpdC1pbnB1dC1wbGFjZWhvbGRlciB7XG4gICAgY29sb3I6ICM5OTk7IH1cbiAgLmZvcm0tY29udHJvbDo6LW1zLWV4cGFuZCB7XG4gICAgYm9yZGVyOiAwO1xuICAgIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50OyB9XG4gIC5mb3JtLWNvbnRyb2xbZGlzYWJsZWRdLCAuZm9ybS1jb250cm9sW3JlYWRvbmx5XSxcbiAgZmllbGRzZXRbZGlzYWJsZWRdIC5mb3JtLWNvbnRyb2wge1xuICAgIGJhY2tncm91bmQtY29sb3I6ICNlZWVlZWU7XG4gICAgb3BhY2l0eTogMTsgfVxuICAuZm9ybS1jb250cm9sW2Rpc2FibGVkXSxcbiAgZmllbGRzZXRbZGlzYWJsZWRdIC5mb3JtLWNvbnRyb2wge1xuICAgIGN1cnNvcjogbm90LWFsbG93ZWQ7IH1cblxudGV4dGFyZWEuZm9ybS1jb250cm9sIHtcbiAgaGVpZ2h0OiBhdXRvOyB9XG5cbmlucHV0W3R5cGU9XCJzZWFyY2hcIl0ge1xuICAtd2Via2l0LWFwcGVhcmFuY2U6IG5vbmU7IH1cblxuQG1lZGlhIHNjcmVlbiBhbmQgKC13ZWJraXQtbWluLWRldmljZS1waXhlbC1yYXRpbzogMCkge1xuICBpbnB1dFt0eXBlPVwiZGF0ZVwiXS5mb3JtLWNvbnRyb2wsXG4gIGlucHV0W3R5cGU9XCJ0aW1lXCJdLmZvcm0tY29udHJvbCxcbiAgaW5wdXRbdHlwZT1cImRhdGV0aW1lLWxvY2FsXCJdLmZvcm0tY29udHJvbCxcbiAgaW5wdXRbdHlwZT1cIm1vbnRoXCJdLmZvcm0tY29udHJvbCB7XG4gICAgbGluZS1oZWlnaHQ6IDM0cHg7IH1cbiAgaW5wdXRbdHlwZT1cImRhdGVcIl0uaW5wdXQtc20sIC5pbnB1dC1ncm91cC1zbSA+IGlucHV0W3R5cGU9XCJkYXRlXCJdLmZvcm0tY29udHJvbCxcbiAgLmlucHV0LWdyb3VwLXNtID4gaW5wdXRbdHlwZT1cImRhdGVcIl0uaW5wdXQtZ3JvdXAtYWRkb24sXG4gIC5pbnB1dC1ncm91cC1zbSA+IC5pbnB1dC1ncm91cC1idG4gPiBpbnB1dFt0eXBlPVwiZGF0ZVwiXS5idG4sXG4gIC5pbnB1dC1ncm91cC1zbSBpbnB1dFt0eXBlPVwiZGF0ZVwiXSxcbiAgaW5wdXRbdHlwZT1cInRpbWVcIl0uaW5wdXQtc20sXG4gIC5pbnB1dC1ncm91cC1zbSA+IGlucHV0W3R5cGU9XCJ0aW1lXCJdLmZvcm0tY29udHJvbCxcbiAgLmlucHV0LWdyb3VwLXNtID4gaW5wdXRbdHlwZT1cInRpbWVcIl0uaW5wdXQtZ3JvdXAtYWRkb24sXG4gIC5pbnB1dC1ncm91cC1zbSA+IC5pbnB1dC1ncm91cC1idG4gPiBpbnB1dFt0eXBlPVwidGltZVwiXS5idG4sXG4gIC5pbnB1dC1ncm91cC1zbVxuICBpbnB1dFt0eXBlPVwidGltZVwiXSxcbiAgaW5wdXRbdHlwZT1cImRhdGV0aW1lLWxvY2FsXCJdLmlucHV0LXNtLFxuICAuaW5wdXQtZ3JvdXAtc20gPiBpbnB1dFt0eXBlPVwiZGF0ZXRpbWUtbG9jYWxcIl0uZm9ybS1jb250cm9sLFxuICAuaW5wdXQtZ3JvdXAtc20gPiBpbnB1dFt0eXBlPVwiZGF0ZXRpbWUtbG9jYWxcIl0uaW5wdXQtZ3JvdXAtYWRkb24sXG4gIC5pbnB1dC1ncm91cC1zbSA+IC5pbnB1dC1ncm91cC1idG4gPiBpbnB1dFt0eXBlPVwiZGF0ZXRpbWUtbG9jYWxcIl0uYnRuLFxuICAuaW5wdXQtZ3JvdXAtc21cbiAgaW5wdXRbdHlwZT1cImRhdGV0aW1lLWxvY2FsXCJdLFxuICBpbnB1dFt0eXBlPVwibW9udGhcIl0uaW5wdXQtc20sXG4gIC5pbnB1dC1ncm91cC1zbSA+IGlucHV0W3R5cGU9XCJtb250aFwiXS5mb3JtLWNvbnRyb2wsXG4gIC5pbnB1dC1ncm91cC1zbSA+IGlucHV0W3R5cGU9XCJtb250aFwiXS5pbnB1dC1ncm91cC1hZGRvbixcbiAgLmlucHV0LWdyb3VwLXNtID4gLmlucHV0LWdyb3VwLWJ0biA+IGlucHV0W3R5cGU9XCJtb250aFwiXS5idG4sXG4gIC5pbnB1dC1ncm91cC1zbVxuICBpbnB1dFt0eXBlPVwibW9udGhcIl0ge1xuICAgIGxpbmUtaGVpZ2h0OiAzMHB4OyB9XG4gIGlucHV0W3R5cGU9XCJkYXRlXCJdLmlucHV0LWxnLCAuaW5wdXQtZ3JvdXAtbGcgPiBpbnB1dFt0eXBlPVwiZGF0ZVwiXS5mb3JtLWNvbnRyb2wsXG4gIC5pbnB1dC1ncm91cC1sZyA+IGlucHV0W3R5cGU9XCJkYXRlXCJdLmlucHV0LWdyb3VwLWFkZG9uLFxuICAuaW5wdXQtZ3JvdXAtbGcgPiAuaW5wdXQtZ3JvdXAtYnRuID4gaW5wdXRbdHlwZT1cImRhdGVcIl0uYnRuLFxuICAuaW5wdXQtZ3JvdXAtbGcgaW5wdXRbdHlwZT1cImRhdGVcIl0sXG4gIGlucHV0W3R5cGU9XCJ0aW1lXCJdLmlucHV0LWxnLFxuICAuaW5wdXQtZ3JvdXAtbGcgPiBpbnB1dFt0eXBlPVwidGltZVwiXS5mb3JtLWNvbnRyb2wsXG4gIC5pbnB1dC1ncm91cC1sZyA+IGlucHV0W3R5cGU9XCJ0aW1lXCJdLmlucHV0LWdyb3VwLWFkZG9uLFxuICAuaW5wdXQtZ3JvdXAtbGcgPiAuaW5wdXQtZ3JvdXAtYnRuID4gaW5wdXRbdHlwZT1cInRpbWVcIl0uYnRuLFxuICAuaW5wdXQtZ3JvdXAtbGdcbiAgaW5wdXRbdHlwZT1cInRpbWVcIl0sXG4gIGlucHV0W3R5cGU9XCJkYXRldGltZS1sb2NhbFwiXS5pbnB1dC1sZyxcbiAgLmlucHV0LWdyb3VwLWxnID4gaW5wdXRbdHlwZT1cImRhdGV0aW1lLWxvY2FsXCJdLmZvcm0tY29udHJvbCxcbiAgLmlucHV0LWdyb3VwLWxnID4gaW5wdXRbdHlwZT1cImRhdGV0aW1lLWxvY2FsXCJdLmlucHV0LWdyb3VwLWFkZG9uLFxuICAuaW5wdXQtZ3JvdXAtbGcgPiAuaW5wdXQtZ3JvdXAtYnRuID4gaW5wdXRbdHlwZT1cImRhdGV0aW1lLWxvY2FsXCJdLmJ0bixcbiAgLmlucHV0LWdyb3VwLWxnXG4gIGlucHV0W3R5cGU9XCJkYXRldGltZS1sb2NhbFwiXSxcbiAgaW5wdXRbdHlwZT1cIm1vbnRoXCJdLmlucHV0LWxnLFxuICAuaW5wdXQtZ3JvdXAtbGcgPiBpbnB1dFt0eXBlPVwibW9udGhcIl0uZm9ybS1jb250cm9sLFxuICAuaW5wdXQtZ3JvdXAtbGcgPiBpbnB1dFt0eXBlPVwibW9udGhcIl0uaW5wdXQtZ3JvdXAtYWRkb24sXG4gIC5pbnB1dC1ncm91cC1sZyA+IC5pbnB1dC1ncm91cC1idG4gPiBpbnB1dFt0eXBlPVwibW9udGhcIl0uYnRuLFxuICAuaW5wdXQtZ3JvdXAtbGdcbiAgaW5wdXRbdHlwZT1cIm1vbnRoXCJdIHtcbiAgICBsaW5lLWhlaWdodDogNDZweDsgfSB9XG5cbi5mb3JtLWdyb3VwIHtcbiAgbWFyZ2luLWJvdHRvbTogMTVweDsgfVxuXG4ucmFkaW8sXG4uY2hlY2tib3gge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBtYXJnaW4tdG9wOiAxMHB4O1xuICBtYXJnaW4tYm90dG9tOiAxMHB4OyB9XG4gIC5yYWRpbyBsYWJlbCxcbiAgLmNoZWNrYm94IGxhYmVsIHtcbiAgICBtaW4taGVpZ2h0OiAyMHB4O1xuICAgIHBhZGRpbmctbGVmdDogMjBweDtcbiAgICBtYXJnaW4tYm90dG9tOiAwO1xuICAgIGZvbnQtd2VpZ2h0OiBub3JtYWw7XG4gICAgY3Vyc29yOiBwb2ludGVyOyB9XG5cbi5yYWRpbyBpbnB1dFt0eXBlPVwicmFkaW9cIl0sXG4ucmFkaW8taW5saW5lIGlucHV0W3R5cGU9XCJyYWRpb1wiXSxcbi5jaGVja2JveCBpbnB1dFt0eXBlPVwiY2hlY2tib3hcIl0sXG4uY2hlY2tib3gtaW5saW5lIGlucHV0W3R5cGU9XCJjaGVja2JveFwiXSB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgbWFyZ2luLWxlZnQ6IC0yMHB4O1xuICBtYXJnaW4tdG9wOiA0cHggXFw5OyB9XG5cbi5yYWRpbyArIC5yYWRpbyxcbi5jaGVja2JveCArIC5jaGVja2JveCB7XG4gIG1hcmdpbi10b3A6IC01cHg7IH1cblxuLnJhZGlvLWlubGluZSxcbi5jaGVja2JveC1pbmxpbmUge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgcGFkZGluZy1sZWZ0OiAyMHB4O1xuICBtYXJnaW4tYm90dG9tOiAwO1xuICB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlO1xuICBmb250LXdlaWdodDogbm9ybWFsO1xuICBjdXJzb3I6IHBvaW50ZXI7IH1cblxuLnJhZGlvLWlubGluZSArIC5yYWRpby1pbmxpbmUsXG4uY2hlY2tib3gtaW5saW5lICsgLmNoZWNrYm94LWlubGluZSB7XG4gIG1hcmdpbi10b3A6IDA7XG4gIG1hcmdpbi1sZWZ0OiAxMHB4OyB9XG5cbmlucHV0W3R5cGU9XCJyYWRpb1wiXVtkaXNhYmxlZF0sIGlucHV0W3R5cGU9XCJyYWRpb1wiXS5kaXNhYmxlZCxcbmZpZWxkc2V0W2Rpc2FibGVkXSBpbnB1dFt0eXBlPVwicmFkaW9cIl0sXG5pbnB1dFt0eXBlPVwiY2hlY2tib3hcIl1bZGlzYWJsZWRdLFxuaW5wdXRbdHlwZT1cImNoZWNrYm94XCJdLmRpc2FibGVkLFxuZmllbGRzZXRbZGlzYWJsZWRdXG5pbnB1dFt0eXBlPVwiY2hlY2tib3hcIl0ge1xuICBjdXJzb3I6IG5vdC1hbGxvd2VkOyB9XG5cbi5yYWRpby1pbmxpbmUuZGlzYWJsZWQsXG5maWVsZHNldFtkaXNhYmxlZF0gLnJhZGlvLWlubGluZSxcbi5jaGVja2JveC1pbmxpbmUuZGlzYWJsZWQsXG5maWVsZHNldFtkaXNhYmxlZF1cbi5jaGVja2JveC1pbmxpbmUge1xuICBjdXJzb3I6IG5vdC1hbGxvd2VkOyB9XG5cbi5yYWRpby5kaXNhYmxlZCBsYWJlbCxcbmZpZWxkc2V0W2Rpc2FibGVkXSAucmFkaW8gbGFiZWwsXG4uY2hlY2tib3guZGlzYWJsZWQgbGFiZWwsXG5maWVsZHNldFtkaXNhYmxlZF1cbi5jaGVja2JveCBsYWJlbCB7XG4gIGN1cnNvcjogbm90LWFsbG93ZWQ7IH1cblxuLmZvcm0tY29udHJvbC1zdGF0aWMge1xuICBwYWRkaW5nLXRvcDogN3B4O1xuICBwYWRkaW5nLWJvdHRvbTogN3B4O1xuICBtYXJnaW4tYm90dG9tOiAwO1xuICBtaW4taGVpZ2h0OiAzNHB4OyB9XG4gIC5mb3JtLWNvbnRyb2wtc3RhdGljLmlucHV0LWxnLCAuaW5wdXQtZ3JvdXAtbGcgPiAuZm9ybS1jb250cm9sLXN0YXRpYy5mb3JtLWNvbnRyb2wsXG4gIC5pbnB1dC1ncm91cC1sZyA+IC5mb3JtLWNvbnRyb2wtc3RhdGljLmlucHV0LWdyb3VwLWFkZG9uLFxuICAuaW5wdXQtZ3JvdXAtbGcgPiAuaW5wdXQtZ3JvdXAtYnRuID4gLmZvcm0tY29udHJvbC1zdGF0aWMuYnRuLCAuZm9ybS1jb250cm9sLXN0YXRpYy5pbnB1dC1zbSwgLmlucHV0LWdyb3VwLXNtID4gLmZvcm0tY29udHJvbC1zdGF0aWMuZm9ybS1jb250cm9sLFxuICAuaW5wdXQtZ3JvdXAtc20gPiAuZm9ybS1jb250cm9sLXN0YXRpYy5pbnB1dC1ncm91cC1hZGRvbixcbiAgLmlucHV0LWdyb3VwLXNtID4gLmlucHV0LWdyb3VwLWJ0biA+IC5mb3JtLWNvbnRyb2wtc3RhdGljLmJ0biB7XG4gICAgcGFkZGluZy1sZWZ0OiAwO1xuICAgIHBhZGRpbmctcmlnaHQ6IDA7IH1cblxuLmlucHV0LXNtLCAuaW5wdXQtZ3JvdXAtc20gPiAuZm9ybS1jb250cm9sLFxuLmlucHV0LWdyb3VwLXNtID4gLmlucHV0LWdyb3VwLWFkZG9uLFxuLmlucHV0LWdyb3VwLXNtID4gLmlucHV0LWdyb3VwLWJ0biA+IC5idG4ge1xuICBoZWlnaHQ6IDMwcHg7XG4gIHBhZGRpbmc6IDVweCAxMHB4O1xuICBmb250LXNpemU6IDEycHg7XG4gIGxpbmUtaGVpZ2h0OiAxLjU7XG4gIGJvcmRlci1yYWRpdXM6IDNweDsgfVxuXG5zZWxlY3QuaW5wdXQtc20sIC5pbnB1dC1ncm91cC1zbSA+IHNlbGVjdC5mb3JtLWNvbnRyb2wsXG4uaW5wdXQtZ3JvdXAtc20gPiBzZWxlY3QuaW5wdXQtZ3JvdXAtYWRkb24sXG4uaW5wdXQtZ3JvdXAtc20gPiAuaW5wdXQtZ3JvdXAtYnRuID4gc2VsZWN0LmJ0biB7XG4gIGhlaWdodDogMzBweDtcbiAgbGluZS1oZWlnaHQ6IDMwcHg7IH1cblxudGV4dGFyZWEuaW5wdXQtc20sIC5pbnB1dC1ncm91cC1zbSA+IHRleHRhcmVhLmZvcm0tY29udHJvbCxcbi5pbnB1dC1ncm91cC1zbSA+IHRleHRhcmVhLmlucHV0LWdyb3VwLWFkZG9uLFxuLmlucHV0LWdyb3VwLXNtID4gLmlucHV0LWdyb3VwLWJ0biA+IHRleHRhcmVhLmJ0bixcbnNlbGVjdFttdWx0aXBsZV0uaW5wdXQtc20sXG4uaW5wdXQtZ3JvdXAtc20gPiBzZWxlY3RbbXVsdGlwbGVdLmZvcm0tY29udHJvbCxcbi5pbnB1dC1ncm91cC1zbSA+IHNlbGVjdFttdWx0aXBsZV0uaW5wdXQtZ3JvdXAtYWRkb24sXG4uaW5wdXQtZ3JvdXAtc20gPiAuaW5wdXQtZ3JvdXAtYnRuID4gc2VsZWN0W211bHRpcGxlXS5idG4ge1xuICBoZWlnaHQ6IGF1dG87IH1cblxuLmZvcm0tZ3JvdXAtc20gLmZvcm0tY29udHJvbCB7XG4gIGhlaWdodDogMzBweDtcbiAgcGFkZGluZzogNXB4IDEwcHg7XG4gIGZvbnQtc2l6ZTogMTJweDtcbiAgbGluZS1oZWlnaHQ6IDEuNTtcbiAgYm9yZGVyLXJhZGl1czogM3B4OyB9XG5cbi5mb3JtLWdyb3VwLXNtIHNlbGVjdC5mb3JtLWNvbnRyb2wge1xuICBoZWlnaHQ6IDMwcHg7XG4gIGxpbmUtaGVpZ2h0OiAzMHB4OyB9XG5cbi5mb3JtLWdyb3VwLXNtIHRleHRhcmVhLmZvcm0tY29udHJvbCxcbi5mb3JtLWdyb3VwLXNtIHNlbGVjdFttdWx0aXBsZV0uZm9ybS1jb250cm9sIHtcbiAgaGVpZ2h0OiBhdXRvOyB9XG5cbi5mb3JtLWdyb3VwLXNtIC5mb3JtLWNvbnRyb2wtc3RhdGljIHtcbiAgaGVpZ2h0OiAzMHB4O1xuICBtaW4taGVpZ2h0OiAzMnB4O1xuICBwYWRkaW5nOiA2cHggMTBweDtcbiAgZm9udC1zaXplOiAxMnB4O1xuICBsaW5lLWhlaWdodDogMS41OyB9XG5cbi5pbnB1dC1sZywgLmlucHV0LWdyb3VwLWxnID4gLmZvcm0tY29udHJvbCxcbi5pbnB1dC1ncm91cC1sZyA+IC5pbnB1dC1ncm91cC1hZGRvbixcbi5pbnB1dC1ncm91cC1sZyA+IC5pbnB1dC1ncm91cC1idG4gPiAuYnRuIHtcbiAgaGVpZ2h0OiA0NnB4O1xuICBwYWRkaW5nOiAxMHB4IDE2cHg7XG4gIGZvbnQtc2l6ZTogMThweDtcbiAgbGluZS1oZWlnaHQ6IDEuMzMzMzM7XG4gIGJvcmRlci1yYWRpdXM6IDZweDsgfVxuXG5zZWxlY3QuaW5wdXQtbGcsIC5pbnB1dC1ncm91cC1sZyA+IHNlbGVjdC5mb3JtLWNvbnRyb2wsXG4uaW5wdXQtZ3JvdXAtbGcgPiBzZWxlY3QuaW5wdXQtZ3JvdXAtYWRkb24sXG4uaW5wdXQtZ3JvdXAtbGcgPiAuaW5wdXQtZ3JvdXAtYnRuID4gc2VsZWN0LmJ0biB7XG4gIGhlaWdodDogNDZweDtcbiAgbGluZS1oZWlnaHQ6IDQ2cHg7IH1cblxudGV4dGFyZWEuaW5wdXQtbGcsIC5pbnB1dC1ncm91cC1sZyA+IHRleHRhcmVhLmZvcm0tY29udHJvbCxcbi5pbnB1dC1ncm91cC1sZyA+IHRleHRhcmVhLmlucHV0LWdyb3VwLWFkZG9uLFxuLmlucHV0LWdyb3VwLWxnID4gLmlucHV0LWdyb3VwLWJ0biA+IHRleHRhcmVhLmJ0bixcbnNlbGVjdFttdWx0aXBsZV0uaW5wdXQtbGcsXG4uaW5wdXQtZ3JvdXAtbGcgPiBzZWxlY3RbbXVsdGlwbGVdLmZvcm0tY29udHJvbCxcbi5pbnB1dC1ncm91cC1sZyA+IHNlbGVjdFttdWx0aXBsZV0uaW5wdXQtZ3JvdXAtYWRkb24sXG4uaW5wdXQtZ3JvdXAtbGcgPiAuaW5wdXQtZ3JvdXAtYnRuID4gc2VsZWN0W211bHRpcGxlXS5idG4ge1xuICBoZWlnaHQ6IGF1dG87IH1cblxuLmZvcm0tZ3JvdXAtbGcgLmZvcm0tY29udHJvbCB7XG4gIGhlaWdodDogNDZweDtcbiAgcGFkZGluZzogMTBweCAxNnB4O1xuICBmb250LXNpemU6IDE4cHg7XG4gIGxpbmUtaGVpZ2h0OiAxLjMzMzMzO1xuICBib3JkZXItcmFkaXVzOiA2cHg7IH1cblxuLmZvcm0tZ3JvdXAtbGcgc2VsZWN0LmZvcm0tY29udHJvbCB7XG4gIGhlaWdodDogNDZweDtcbiAgbGluZS1oZWlnaHQ6IDQ2cHg7IH1cblxuLmZvcm0tZ3JvdXAtbGcgdGV4dGFyZWEuZm9ybS1jb250cm9sLFxuLmZvcm0tZ3JvdXAtbGcgc2VsZWN0W211bHRpcGxlXS5mb3JtLWNvbnRyb2wge1xuICBoZWlnaHQ6IGF1dG87IH1cblxuLmZvcm0tZ3JvdXAtbGcgLmZvcm0tY29udHJvbC1zdGF0aWMge1xuICBoZWlnaHQ6IDQ2cHg7XG4gIG1pbi1oZWlnaHQ6IDM4cHg7XG4gIHBhZGRpbmc6IDExcHggMTZweDtcbiAgZm9udC1zaXplOiAxOHB4O1xuICBsaW5lLWhlaWdodDogMS4zMzMzMzsgfVxuXG4uaGFzLWZlZWRiYWNrIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlOyB9XG4gIC5oYXMtZmVlZGJhY2sgLmZvcm0tY29udHJvbCB7XG4gICAgcGFkZGluZy1yaWdodDogNDIuNXB4OyB9XG5cbi5mb3JtLWNvbnRyb2wtZmVlZGJhY2sge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHRvcDogMDtcbiAgcmlnaHQ6IDA7XG4gIHotaW5kZXg6IDI7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICB3aWR0aDogMzRweDtcbiAgaGVpZ2h0OiAzNHB4O1xuICBsaW5lLWhlaWdodDogMzRweDtcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xuICBwb2ludGVyLWV2ZW50czogbm9uZTsgfVxuXG4uaW5wdXQtbGcgKyAuZm9ybS1jb250cm9sLWZlZWRiYWNrLCAuaW5wdXQtZ3JvdXAtbGcgPiAuZm9ybS1jb250cm9sICsgLmZvcm0tY29udHJvbC1mZWVkYmFjayxcbi5pbnB1dC1ncm91cC1sZyA+IC5pbnB1dC1ncm91cC1hZGRvbiArIC5mb3JtLWNvbnRyb2wtZmVlZGJhY2ssXG4uaW5wdXQtZ3JvdXAtbGcgPiAuaW5wdXQtZ3JvdXAtYnRuID4gLmJ0biArIC5mb3JtLWNvbnRyb2wtZmVlZGJhY2ssXG4uaW5wdXQtZ3JvdXAtbGcgKyAuZm9ybS1jb250cm9sLWZlZWRiYWNrLFxuLmZvcm0tZ3JvdXAtbGcgLmZvcm0tY29udHJvbCArIC5mb3JtLWNvbnRyb2wtZmVlZGJhY2sge1xuICB3aWR0aDogNDZweDtcbiAgaGVpZ2h0OiA0NnB4O1xuICBsaW5lLWhlaWdodDogNDZweDsgfVxuXG4uaW5wdXQtc20gKyAuZm9ybS1jb250cm9sLWZlZWRiYWNrLCAuaW5wdXQtZ3JvdXAtc20gPiAuZm9ybS1jb250cm9sICsgLmZvcm0tY29udHJvbC1mZWVkYmFjayxcbi5pbnB1dC1ncm91cC1zbSA+IC5pbnB1dC1ncm91cC1hZGRvbiArIC5mb3JtLWNvbnRyb2wtZmVlZGJhY2ssXG4uaW5wdXQtZ3JvdXAtc20gPiAuaW5wdXQtZ3JvdXAtYnRuID4gLmJ0biArIC5mb3JtLWNvbnRyb2wtZmVlZGJhY2ssXG4uaW5wdXQtZ3JvdXAtc20gKyAuZm9ybS1jb250cm9sLWZlZWRiYWNrLFxuLmZvcm0tZ3JvdXAtc20gLmZvcm0tY29udHJvbCArIC5mb3JtLWNvbnRyb2wtZmVlZGJhY2sge1xuICB3aWR0aDogMzBweDtcbiAgaGVpZ2h0OiAzMHB4O1xuICBsaW5lLWhlaWdodDogMzBweDsgfVxuXG4uaGFzLXN1Y2Nlc3MgLmhlbHAtYmxvY2ssXG4uaGFzLXN1Y2Nlc3MgLmNvbnRyb2wtbGFiZWwsXG4uaGFzLXN1Y2Nlc3MgLnJhZGlvLFxuLmhhcy1zdWNjZXNzIC5jaGVja2JveCxcbi5oYXMtc3VjY2VzcyAucmFkaW8taW5saW5lLFxuLmhhcy1zdWNjZXNzIC5jaGVja2JveC1pbmxpbmUsXG4uaGFzLXN1Y2Nlc3MucmFkaW8gbGFiZWwsXG4uaGFzLXN1Y2Nlc3MuY2hlY2tib3ggbGFiZWwsXG4uaGFzLXN1Y2Nlc3MucmFkaW8taW5saW5lIGxhYmVsLFxuLmhhcy1zdWNjZXNzLmNoZWNrYm94LWlubGluZSBsYWJlbCB7XG4gIGNvbG9yOiAjM2M3NjNkOyB9XG5cbi5oYXMtc3VjY2VzcyAuZm9ybS1jb250cm9sIHtcbiAgYm9yZGVyLWNvbG9yOiAjM2M3NjNkO1xuICAtd2Via2l0LWJveC1zaGFkb3c6IGluc2V0IDAgMXB4IDFweCByZ2JhKDAsIDAsIDAsIDAuMDc1KTtcbiAgYm94LXNoYWRvdzogaW5zZXQgMCAxcHggMXB4IHJnYmEoMCwgMCwgMCwgMC4wNzUpOyB9XG4gIC5oYXMtc3VjY2VzcyAuZm9ybS1jb250cm9sOmZvY3VzIHtcbiAgICBib3JkZXItY29sb3I6ICMyYjU0MmM7XG4gICAgLXdlYmtpdC1ib3gtc2hhZG93OiBpbnNldCAwIDFweCAxcHggcmdiYSgwLCAwLCAwLCAwLjA3NSksIDAgMCA2cHggIzY3YjE2ODtcbiAgICBib3gtc2hhZG93OiBpbnNldCAwIDFweCAxcHggcmdiYSgwLCAwLCAwLCAwLjA3NSksIDAgMCA2cHggIzY3YjE2ODsgfVxuXG4uaGFzLXN1Y2Nlc3MgLmlucHV0LWdyb3VwLWFkZG9uIHtcbiAgY29sb3I6ICMzYzc2M2Q7XG4gIGJvcmRlci1jb2xvcjogIzNjNzYzZDtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2RmZjBkODsgfVxuXG4uaGFzLXN1Y2Nlc3MgLmZvcm0tY29udHJvbC1mZWVkYmFjayB7XG4gIGNvbG9yOiAjM2M3NjNkOyB9XG5cbi5oYXMtd2FybmluZyAuaGVscC1ibG9jayxcbi5oYXMtd2FybmluZyAuY29udHJvbC1sYWJlbCxcbi5oYXMtd2FybmluZyAucmFkaW8sXG4uaGFzLXdhcm5pbmcgLmNoZWNrYm94LFxuLmhhcy13YXJuaW5nIC5yYWRpby1pbmxpbmUsXG4uaGFzLXdhcm5pbmcgLmNoZWNrYm94LWlubGluZSxcbi5oYXMtd2FybmluZy5yYWRpbyBsYWJlbCxcbi5oYXMtd2FybmluZy5jaGVja2JveCBsYWJlbCxcbi5oYXMtd2FybmluZy5yYWRpby1pbmxpbmUgbGFiZWwsXG4uaGFzLXdhcm5pbmcuY2hlY2tib3gtaW5saW5lIGxhYmVsIHtcbiAgY29sb3I6ICM4YTZkM2I7IH1cblxuLmhhcy13YXJuaW5nIC5mb3JtLWNvbnRyb2wge1xuICBib3JkZXItY29sb3I6ICM4YTZkM2I7XG4gIC13ZWJraXQtYm94LXNoYWRvdzogaW5zZXQgMCAxcHggMXB4IHJnYmEoMCwgMCwgMCwgMC4wNzUpO1xuICBib3gtc2hhZG93OiBpbnNldCAwIDFweCAxcHggcmdiYSgwLCAwLCAwLCAwLjA3NSk7IH1cbiAgLmhhcy13YXJuaW5nIC5mb3JtLWNvbnRyb2w6Zm9jdXMge1xuICAgIGJvcmRlci1jb2xvcjogIzY2NTEyYztcbiAgICAtd2Via2l0LWJveC1zaGFkb3c6IGluc2V0IDAgMXB4IDFweCByZ2JhKDAsIDAsIDAsIDAuMDc1KSwgMCAwIDZweCAjYzBhMTZiO1xuICAgIGJveC1zaGFkb3c6IGluc2V0IDAgMXB4IDFweCByZ2JhKDAsIDAsIDAsIDAuMDc1KSwgMCAwIDZweCAjYzBhMTZiOyB9XG5cbi5oYXMtd2FybmluZyAuaW5wdXQtZ3JvdXAtYWRkb24ge1xuICBjb2xvcjogIzhhNmQzYjtcbiAgYm9yZGVyLWNvbG9yOiAjOGE2ZDNiO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZmNmOGUzOyB9XG5cbi5oYXMtd2FybmluZyAuZm9ybS1jb250cm9sLWZlZWRiYWNrIHtcbiAgY29sb3I6ICM4YTZkM2I7IH1cblxuLmhhcy1lcnJvciAuaGVscC1ibG9jayxcbi5oYXMtZXJyb3IgLmNvbnRyb2wtbGFiZWwsXG4uaGFzLWVycm9yIC5yYWRpbyxcbi5oYXMtZXJyb3IgLmNoZWNrYm94LFxuLmhhcy1lcnJvciAucmFkaW8taW5saW5lLFxuLmhhcy1lcnJvciAuY2hlY2tib3gtaW5saW5lLFxuLmhhcy1lcnJvci5yYWRpbyBsYWJlbCxcbi5oYXMtZXJyb3IuY2hlY2tib3ggbGFiZWwsXG4uaGFzLWVycm9yLnJhZGlvLWlubGluZSBsYWJlbCxcbi5oYXMtZXJyb3IuY2hlY2tib3gtaW5saW5lIGxhYmVsIHtcbiAgY29sb3I6ICNhOTQ0NDI7IH1cblxuLmhhcy1lcnJvciAuZm9ybS1jb250cm9sIHtcbiAgYm9yZGVyLWNvbG9yOiAjYTk0NDQyO1xuICAtd2Via2l0LWJveC1zaGFkb3c6IGluc2V0IDAgMXB4IDFweCByZ2JhKDAsIDAsIDAsIDAuMDc1KTtcbiAgYm94LXNoYWRvdzogaW5zZXQgMCAxcHggMXB4IHJnYmEoMCwgMCwgMCwgMC4wNzUpOyB9XG4gIC5oYXMtZXJyb3IgLmZvcm0tY29udHJvbDpmb2N1cyB7XG4gICAgYm9yZGVyLWNvbG9yOiAjODQzNTM0O1xuICAgIC13ZWJraXQtYm94LXNoYWRvdzogaW5zZXQgMCAxcHggMXB4IHJnYmEoMCwgMCwgMCwgMC4wNzUpLCAwIDAgNnB4ICNjZTg0ODM7XG4gICAgYm94LXNoYWRvdzogaW5zZXQgMCAxcHggMXB4IHJnYmEoMCwgMCwgMCwgMC4wNzUpLCAwIDAgNnB4ICNjZTg0ODM7IH1cblxuLmhhcy1lcnJvciAuaW5wdXQtZ3JvdXAtYWRkb24ge1xuICBjb2xvcjogI2E5NDQ0MjtcbiAgYm9yZGVyLWNvbG9yOiAjYTk0NDQyO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZjJkZWRlOyB9XG5cbi5oYXMtZXJyb3IgLmZvcm0tY29udHJvbC1mZWVkYmFjayB7XG4gIGNvbG9yOiAjYTk0NDQyOyB9XG5cbi5oYXMtZmVlZGJhY2sgbGFiZWwgfiAuZm9ybS1jb250cm9sLWZlZWRiYWNrIHtcbiAgdG9wOiAyNXB4OyB9XG5cbi5oYXMtZmVlZGJhY2sgbGFiZWwuc3Itb25seSB+IC5mb3JtLWNvbnRyb2wtZmVlZGJhY2sge1xuICB0b3A6IDA7IH1cblxuLmhlbHAtYmxvY2sge1xuICBkaXNwbGF5OiBibG9jaztcbiAgbWFyZ2luLXRvcDogNXB4O1xuICBtYXJnaW4tYm90dG9tOiAxMHB4O1xuICBjb2xvcjogIzczNzM3MzsgfVxuXG5AbWVkaWEgKG1pbi13aWR0aDogNzY4cHgpIHtcbiAgLmZvcm0taW5saW5lIC5mb3JtLWdyb3VwIHtcbiAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgbWFyZ2luLWJvdHRvbTogMDtcbiAgICB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlOyB9XG4gIC5mb3JtLWlubGluZSAuZm9ybS1jb250cm9sIHtcbiAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgd2lkdGg6IGF1dG87XG4gICAgdmVydGljYWwtYWxpZ246IG1pZGRsZTsgfVxuICAuZm9ybS1pbmxpbmUgLmZvcm0tY29udHJvbC1zdGF0aWMge1xuICAgIGRpc3BsYXk6IGlubGluZS1ibG9jazsgfVxuICAuZm9ybS1pbmxpbmUgLmlucHV0LWdyb3VwIHtcbiAgICBkaXNwbGF5OiBpbmxpbmUtdGFibGU7XG4gICAgdmVydGljYWwtYWxpZ246IG1pZGRsZTsgfVxuICAgIC5mb3JtLWlubGluZSAuaW5wdXQtZ3JvdXAgLmlucHV0LWdyb3VwLWFkZG9uLFxuICAgIC5mb3JtLWlubGluZSAuaW5wdXQtZ3JvdXAgLmlucHV0LWdyb3VwLWJ0bixcbiAgICAuZm9ybS1pbmxpbmUgLmlucHV0LWdyb3VwIC5mb3JtLWNvbnRyb2wge1xuICAgICAgd2lkdGg6IGF1dG87IH1cbiAgLmZvcm0taW5saW5lIC5pbnB1dC1ncm91cCA+IC5mb3JtLWNvbnRyb2wge1xuICAgIHdpZHRoOiAxMDAlOyB9XG4gIC5mb3JtLWlubGluZSAuY29udHJvbC1sYWJlbCB7XG4gICAgbWFyZ2luLWJvdHRvbTogMDtcbiAgICB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlOyB9XG4gIC5mb3JtLWlubGluZSAucmFkaW8sXG4gIC5mb3JtLWlubGluZSAuY2hlY2tib3gge1xuICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICBtYXJnaW4tdG9wOiAwO1xuICAgIG1hcmdpbi1ib3R0b206IDA7XG4gICAgdmVydGljYWwtYWxpZ246IG1pZGRsZTsgfVxuICAgIC5mb3JtLWlubGluZSAucmFkaW8gbGFiZWwsXG4gICAgLmZvcm0taW5saW5lIC5jaGVja2JveCBsYWJlbCB7XG4gICAgICBwYWRkaW5nLWxlZnQ6IDA7IH1cbiAgLmZvcm0taW5saW5lIC5yYWRpbyBpbnB1dFt0eXBlPVwicmFkaW9cIl0sXG4gIC5mb3JtLWlubGluZSAuY2hlY2tib3ggaW5wdXRbdHlwZT1cImNoZWNrYm94XCJdIHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgbWFyZ2luLWxlZnQ6IDA7IH1cbiAgLmZvcm0taW5saW5lIC5oYXMtZmVlZGJhY2sgLmZvcm0tY29udHJvbC1mZWVkYmFjayB7XG4gICAgdG9wOiAwOyB9IH1cblxuLmZvcm0taG9yaXpvbnRhbCAucmFkaW8sXG4uZm9ybS1ob3Jpem9udGFsIC5jaGVja2JveCxcbi5mb3JtLWhvcml6b250YWwgLnJhZGlvLWlubGluZSxcbi5mb3JtLWhvcml6b250YWwgLmNoZWNrYm94LWlubGluZSB7XG4gIG1hcmdpbi10b3A6IDA7XG4gIG1hcmdpbi1ib3R0b206IDA7XG4gIHBhZGRpbmctdG9wOiA3cHg7IH1cblxuLmZvcm0taG9yaXpvbnRhbCAucmFkaW8sXG4uZm9ybS1ob3Jpem9udGFsIC5jaGVja2JveCB7XG4gIG1pbi1oZWlnaHQ6IDI3cHg7IH1cblxuLmZvcm0taG9yaXpvbnRhbCAuZm9ybS1ncm91cCB7XG4gIG1hcmdpbi1sZWZ0OiAtMTVweDtcbiAgbWFyZ2luLXJpZ2h0OiAtMTVweDsgfVxuICAuZm9ybS1ob3Jpem9udGFsIC5mb3JtLWdyb3VwOmJlZm9yZSwgLmZvcm0taG9yaXpvbnRhbCAuZm9ybS1ncm91cDphZnRlciB7XG4gICAgY29udGVudDogXCIgXCI7XG4gICAgZGlzcGxheTogdGFibGU7IH1cbiAgLmZvcm0taG9yaXpvbnRhbCAuZm9ybS1ncm91cDphZnRlciB7XG4gICAgY2xlYXI6IGJvdGg7IH1cblxuQG1lZGlhIChtaW4td2lkdGg6IDc2OHB4KSB7XG4gIC5mb3JtLWhvcml6b250YWwgLmNvbnRyb2wtbGFiZWwge1xuICAgIHRleHQtYWxpZ246IHJpZ2h0O1xuICAgIG1hcmdpbi1ib3R0b206IDA7XG4gICAgcGFkZGluZy10b3A6IDdweDsgfSB9XG5cbi5mb3JtLWhvcml6b250YWwgLmhhcy1mZWVkYmFjayAuZm9ybS1jb250cm9sLWZlZWRiYWNrIHtcbiAgcmlnaHQ6IDE1cHg7IH1cblxuQG1lZGlhIChtaW4td2lkdGg6IDc2OHB4KSB7XG4gIC5mb3JtLWhvcml6b250YWwgLmZvcm0tZ3JvdXAtbGcgLmNvbnRyb2wtbGFiZWwge1xuICAgIHBhZGRpbmctdG9wOiAxMXB4O1xuICAgIGZvbnQtc2l6ZTogMThweDsgfSB9XG5cbkBtZWRpYSAobWluLXdpZHRoOiA3NjhweCkge1xuICAuZm9ybS1ob3Jpem9udGFsIC5mb3JtLWdyb3VwLXNtIC5jb250cm9sLWxhYmVsIHtcbiAgICBwYWRkaW5nLXRvcDogNnB4O1xuICAgIGZvbnQtc2l6ZTogMTJweDsgfSB9XG5cbi5idG4ge1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIG1hcmdpbi1ib3R0b206IDA7XG4gIGZvbnQtd2VpZ2h0OiBub3JtYWw7XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgdmVydGljYWwtYWxpZ246IG1pZGRsZTtcbiAgdG91Y2gtYWN0aW9uOiBtYW5pcHVsYXRpb247XG4gIGN1cnNvcjogcG9pbnRlcjtcbiAgYmFja2dyb3VuZC1pbWFnZTogbm9uZTtcbiAgYm9yZGVyOiAxcHggc29saWQgdHJhbnNwYXJlbnQ7XG4gIHdoaXRlLXNwYWNlOiBub3dyYXA7XG4gIHBhZGRpbmc6IDZweCAxMnB4O1xuICBmb250LXNpemU6IDE0cHg7XG4gIGxpbmUtaGVpZ2h0OiAxLjQyODU3O1xuICBib3JkZXItcmFkaXVzOiA0cHg7XG4gIC13ZWJraXQtdXNlci1zZWxlY3Q6IG5vbmU7XG4gIC1tb3otdXNlci1zZWxlY3Q6IG5vbmU7XG4gIC1tcy11c2VyLXNlbGVjdDogbm9uZTtcbiAgdXNlci1zZWxlY3Q6IG5vbmU7IH1cbiAgLmJ0bjpmb2N1cywgLmJ0bi5mb2N1cywgLmJ0bjphY3RpdmU6Zm9jdXMsIC5idG46YWN0aXZlLmZvY3VzLCAuYnRuLmFjdGl2ZTpmb2N1cywgLmJ0bi5hY3RpdmUuZm9jdXMge1xuICAgIG91dGxpbmU6IDVweCBhdXRvIC13ZWJraXQtZm9jdXMtcmluZy1jb2xvcjtcbiAgICBvdXRsaW5lLW9mZnNldDogLTJweDsgfVxuICAuYnRuOmhvdmVyLCAuYnRuOmZvY3VzLCAuYnRuLmZvY3VzIHtcbiAgICBjb2xvcjogIzMzMztcbiAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7IH1cbiAgLmJ0bjphY3RpdmUsIC5idG4uYWN0aXZlIHtcbiAgICBvdXRsaW5lOiAwO1xuICAgIGJhY2tncm91bmQtaW1hZ2U6IG5vbmU7XG4gICAgLXdlYmtpdC1ib3gtc2hhZG93OiBpbnNldCAwIDNweCA1cHggcmdiYSgwLCAwLCAwLCAwLjEyNSk7XG4gICAgYm94LXNoYWRvdzogaW5zZXQgMCAzcHggNXB4IHJnYmEoMCwgMCwgMCwgMC4xMjUpOyB9XG4gIC5idG4uZGlzYWJsZWQsIC5idG5bZGlzYWJsZWRdLFxuICBmaWVsZHNldFtkaXNhYmxlZF0gLmJ0biB7XG4gICAgY3Vyc29yOiBub3QtYWxsb3dlZDtcbiAgICBvcGFjaXR5OiAwLjY1O1xuICAgIGZpbHRlcjogYWxwaGEob3BhY2l0eT02NSk7XG4gICAgLXdlYmtpdC1ib3gtc2hhZG93OiBub25lO1xuICAgIGJveC1zaGFkb3c6IG5vbmU7IH1cblxuYS5idG4uZGlzYWJsZWQsXG5maWVsZHNldFtkaXNhYmxlZF0gYS5idG4ge1xuICBwb2ludGVyLWV2ZW50czogbm9uZTsgfVxuXG4uYnRuLWRlZmF1bHQge1xuICBjb2xvcjogIzMzMztcbiAgYmFja2dyb3VuZC1jb2xvcjogI2ZmZjtcbiAgYm9yZGVyLWNvbG9yOiAjY2NjOyB9XG4gIC5idG4tZGVmYXVsdDpmb2N1cywgLmJ0bi1kZWZhdWx0LmZvY3VzIHtcbiAgICBjb2xvcjogIzMzMztcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjZTZlNmU2O1xuICAgIGJvcmRlci1jb2xvcjogIzhjOGM4YzsgfVxuICAuYnRuLWRlZmF1bHQ6aG92ZXIge1xuICAgIGNvbG9yOiAjMzMzO1xuICAgIGJhY2tncm91bmQtY29sb3I6ICNlNmU2ZTY7XG4gICAgYm9yZGVyLWNvbG9yOiAjYWRhZGFkOyB9XG4gIC5idG4tZGVmYXVsdDphY3RpdmUsIC5idG4tZGVmYXVsdC5hY3RpdmUsXG4gIC5vcGVuID4gLmJ0bi1kZWZhdWx0LmRyb3Bkb3duLXRvZ2dsZSB7XG4gICAgY29sb3I6ICMzMzM7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogI2U2ZTZlNjtcbiAgICBib3JkZXItY29sb3I6ICNhZGFkYWQ7IH1cbiAgICAuYnRuLWRlZmF1bHQ6YWN0aXZlOmhvdmVyLCAuYnRuLWRlZmF1bHQ6YWN0aXZlOmZvY3VzLCAuYnRuLWRlZmF1bHQ6YWN0aXZlLmZvY3VzLCAuYnRuLWRlZmF1bHQuYWN0aXZlOmhvdmVyLCAuYnRuLWRlZmF1bHQuYWN0aXZlOmZvY3VzLCAuYnRuLWRlZmF1bHQuYWN0aXZlLmZvY3VzLFxuICAgIC5vcGVuID4gLmJ0bi1kZWZhdWx0LmRyb3Bkb3duLXRvZ2dsZTpob3ZlcixcbiAgICAub3BlbiA+IC5idG4tZGVmYXVsdC5kcm9wZG93bi10b2dnbGU6Zm9jdXMsXG4gICAgLm9wZW4gPiAuYnRuLWRlZmF1bHQuZHJvcGRvd24tdG9nZ2xlLmZvY3VzIHtcbiAgICAgIGNvbG9yOiAjMzMzO1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogI2Q0ZDRkNDtcbiAgICAgIGJvcmRlci1jb2xvcjogIzhjOGM4YzsgfVxuICAuYnRuLWRlZmF1bHQ6YWN0aXZlLCAuYnRuLWRlZmF1bHQuYWN0aXZlLFxuICAub3BlbiA+IC5idG4tZGVmYXVsdC5kcm9wZG93bi10b2dnbGUge1xuICAgIGJhY2tncm91bmQtaW1hZ2U6IG5vbmU7IH1cbiAgLmJ0bi1kZWZhdWx0LmRpc2FibGVkOmhvdmVyLCAuYnRuLWRlZmF1bHQuZGlzYWJsZWQ6Zm9jdXMsIC5idG4tZGVmYXVsdC5kaXNhYmxlZC5mb2N1cywgLmJ0bi1kZWZhdWx0W2Rpc2FibGVkXTpob3ZlciwgLmJ0bi1kZWZhdWx0W2Rpc2FibGVkXTpmb2N1cywgLmJ0bi1kZWZhdWx0W2Rpc2FibGVkXS5mb2N1cyxcbiAgZmllbGRzZXRbZGlzYWJsZWRdIC5idG4tZGVmYXVsdDpob3ZlcixcbiAgZmllbGRzZXRbZGlzYWJsZWRdIC5idG4tZGVmYXVsdDpmb2N1cyxcbiAgZmllbGRzZXRbZGlzYWJsZWRdIC5idG4tZGVmYXVsdC5mb2N1cyB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogI2ZmZjtcbiAgICBib3JkZXItY29sb3I6ICNjY2M7IH1cbiAgLmJ0bi1kZWZhdWx0IC5iYWRnZSB7XG4gICAgY29sb3I6ICNmZmY7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogIzMzMzsgfVxuXG4uYnRuLXByaW1hcnkge1xuICBjb2xvcjogI2ZmZjtcbiAgYmFja2dyb3VuZC1jb2xvcjogIzMzN2FiNztcbiAgYm9yZGVyLWNvbG9yOiAjMmU2ZGE0OyB9XG4gIC5idG4tcHJpbWFyeTpmb2N1cywgLmJ0bi1wcmltYXJ5LmZvY3VzIHtcbiAgICBjb2xvcjogI2ZmZjtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjMjg2MDkwO1xuICAgIGJvcmRlci1jb2xvcjogIzEyMmI0MDsgfVxuICAuYnRuLXByaW1hcnk6aG92ZXIge1xuICAgIGNvbG9yOiAjZmZmO1xuICAgIGJhY2tncm91bmQtY29sb3I6ICMyODYwOTA7XG4gICAgYm9yZGVyLWNvbG9yOiAjMjA0ZDc0OyB9XG4gIC5idG4tcHJpbWFyeTphY3RpdmUsIC5idG4tcHJpbWFyeS5hY3RpdmUsXG4gIC5vcGVuID4gLmJ0bi1wcmltYXJ5LmRyb3Bkb3duLXRvZ2dsZSB7XG4gICAgY29sb3I6ICNmZmY7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogIzI4NjA5MDtcbiAgICBib3JkZXItY29sb3I6ICMyMDRkNzQ7IH1cbiAgICAuYnRuLXByaW1hcnk6YWN0aXZlOmhvdmVyLCAuYnRuLXByaW1hcnk6YWN0aXZlOmZvY3VzLCAuYnRuLXByaW1hcnk6YWN0aXZlLmZvY3VzLCAuYnRuLXByaW1hcnkuYWN0aXZlOmhvdmVyLCAuYnRuLXByaW1hcnkuYWN0aXZlOmZvY3VzLCAuYnRuLXByaW1hcnkuYWN0aXZlLmZvY3VzLFxuICAgIC5vcGVuID4gLmJ0bi1wcmltYXJ5LmRyb3Bkb3duLXRvZ2dsZTpob3ZlcixcbiAgICAub3BlbiA+IC5idG4tcHJpbWFyeS5kcm9wZG93bi10b2dnbGU6Zm9jdXMsXG4gICAgLm9wZW4gPiAuYnRuLXByaW1hcnkuZHJvcGRvd24tdG9nZ2xlLmZvY3VzIHtcbiAgICAgIGNvbG9yOiAjZmZmO1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogIzIwNGQ3NDtcbiAgICAgIGJvcmRlci1jb2xvcjogIzEyMmI0MDsgfVxuICAuYnRuLXByaW1hcnk6YWN0aXZlLCAuYnRuLXByaW1hcnkuYWN0aXZlLFxuICAub3BlbiA+IC5idG4tcHJpbWFyeS5kcm9wZG93bi10b2dnbGUge1xuICAgIGJhY2tncm91bmQtaW1hZ2U6IG5vbmU7IH1cbiAgLmJ0bi1wcmltYXJ5LmRpc2FibGVkOmhvdmVyLCAuYnRuLXByaW1hcnkuZGlzYWJsZWQ6Zm9jdXMsIC5idG4tcHJpbWFyeS5kaXNhYmxlZC5mb2N1cywgLmJ0bi1wcmltYXJ5W2Rpc2FibGVkXTpob3ZlciwgLmJ0bi1wcmltYXJ5W2Rpc2FibGVkXTpmb2N1cywgLmJ0bi1wcmltYXJ5W2Rpc2FibGVkXS5mb2N1cyxcbiAgZmllbGRzZXRbZGlzYWJsZWRdIC5idG4tcHJpbWFyeTpob3ZlcixcbiAgZmllbGRzZXRbZGlzYWJsZWRdIC5idG4tcHJpbWFyeTpmb2N1cyxcbiAgZmllbGRzZXRbZGlzYWJsZWRdIC5idG4tcHJpbWFyeS5mb2N1cyB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogIzMzN2FiNztcbiAgICBib3JkZXItY29sb3I6ICMyZTZkYTQ7IH1cbiAgLmJ0bi1wcmltYXJ5IC5iYWRnZSB7XG4gICAgY29sb3I6ICMzMzdhYjc7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogI2ZmZjsgfVxuXG4uYnRuLXN1Y2Nlc3Mge1xuICBjb2xvcjogI2ZmZjtcbiAgYmFja2dyb3VuZC1jb2xvcjogIzVjYjg1YztcbiAgYm9yZGVyLWNvbG9yOiAjNGNhZTRjOyB9XG4gIC5idG4tc3VjY2Vzczpmb2N1cywgLmJ0bi1zdWNjZXNzLmZvY3VzIHtcbiAgICBjb2xvcjogI2ZmZjtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjNDQ5ZDQ0O1xuICAgIGJvcmRlci1jb2xvcjogIzI1NTYyNTsgfVxuICAuYnRuLXN1Y2Nlc3M6aG92ZXIge1xuICAgIGNvbG9yOiAjZmZmO1xuICAgIGJhY2tncm91bmQtY29sb3I6ICM0NDlkNDQ7XG4gICAgYm9yZGVyLWNvbG9yOiAjMzk4NDM5OyB9XG4gIC5idG4tc3VjY2VzczphY3RpdmUsIC5idG4tc3VjY2Vzcy5hY3RpdmUsXG4gIC5vcGVuID4gLmJ0bi1zdWNjZXNzLmRyb3Bkb3duLXRvZ2dsZSB7XG4gICAgY29sb3I6ICNmZmY7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogIzQ0OWQ0NDtcbiAgICBib3JkZXItY29sb3I6ICMzOTg0Mzk7IH1cbiAgICAuYnRuLXN1Y2Nlc3M6YWN0aXZlOmhvdmVyLCAuYnRuLXN1Y2Nlc3M6YWN0aXZlOmZvY3VzLCAuYnRuLXN1Y2Nlc3M6YWN0aXZlLmZvY3VzLCAuYnRuLXN1Y2Nlc3MuYWN0aXZlOmhvdmVyLCAuYnRuLXN1Y2Nlc3MuYWN0aXZlOmZvY3VzLCAuYnRuLXN1Y2Nlc3MuYWN0aXZlLmZvY3VzLFxuICAgIC5vcGVuID4gLmJ0bi1zdWNjZXNzLmRyb3Bkb3duLXRvZ2dsZTpob3ZlcixcbiAgICAub3BlbiA+IC5idG4tc3VjY2Vzcy5kcm9wZG93bi10b2dnbGU6Zm9jdXMsXG4gICAgLm9wZW4gPiAuYnRuLXN1Y2Nlc3MuZHJvcGRvd24tdG9nZ2xlLmZvY3VzIHtcbiAgICAgIGNvbG9yOiAjZmZmO1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogIzM5ODQzOTtcbiAgICAgIGJvcmRlci1jb2xvcjogIzI1NTYyNTsgfVxuICAuYnRuLXN1Y2Nlc3M6YWN0aXZlLCAuYnRuLXN1Y2Nlc3MuYWN0aXZlLFxuICAub3BlbiA+IC5idG4tc3VjY2Vzcy5kcm9wZG93bi10b2dnbGUge1xuICAgIGJhY2tncm91bmQtaW1hZ2U6IG5vbmU7IH1cbiAgLmJ0bi1zdWNjZXNzLmRpc2FibGVkOmhvdmVyLCAuYnRuLXN1Y2Nlc3MuZGlzYWJsZWQ6Zm9jdXMsIC5idG4tc3VjY2Vzcy5kaXNhYmxlZC5mb2N1cywgLmJ0bi1zdWNjZXNzW2Rpc2FibGVkXTpob3ZlciwgLmJ0bi1zdWNjZXNzW2Rpc2FibGVkXTpmb2N1cywgLmJ0bi1zdWNjZXNzW2Rpc2FibGVkXS5mb2N1cyxcbiAgZmllbGRzZXRbZGlzYWJsZWRdIC5idG4tc3VjY2Vzczpob3ZlcixcbiAgZmllbGRzZXRbZGlzYWJsZWRdIC5idG4tc3VjY2Vzczpmb2N1cyxcbiAgZmllbGRzZXRbZGlzYWJsZWRdIC5idG4tc3VjY2Vzcy5mb2N1cyB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogIzVjYjg1YztcbiAgICBib3JkZXItY29sb3I6ICM0Y2FlNGM7IH1cbiAgLmJ0bi1zdWNjZXNzIC5iYWRnZSB7XG4gICAgY29sb3I6ICM1Y2I4NWM7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogI2ZmZjsgfVxuXG4uYnRuLWluZm8ge1xuICBjb2xvcjogI2ZmZjtcbiAgYmFja2dyb3VuZC1jb2xvcjogIzViYzBkZTtcbiAgYm9yZGVyLWNvbG9yOiAjNDZiOGRhOyB9XG4gIC5idG4taW5mbzpmb2N1cywgLmJ0bi1pbmZvLmZvY3VzIHtcbiAgICBjb2xvcjogI2ZmZjtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjMzFiMGQ1O1xuICAgIGJvcmRlci1jb2xvcjogIzFiNmQ4NTsgfVxuICAuYnRuLWluZm86aG92ZXIge1xuICAgIGNvbG9yOiAjZmZmO1xuICAgIGJhY2tncm91bmQtY29sb3I6ICMzMWIwZDU7XG4gICAgYm9yZGVyLWNvbG9yOiAjMjY5YWJjOyB9XG4gIC5idG4taW5mbzphY3RpdmUsIC5idG4taW5mby5hY3RpdmUsXG4gIC5vcGVuID4gLmJ0bi1pbmZvLmRyb3Bkb3duLXRvZ2dsZSB7XG4gICAgY29sb3I6ICNmZmY7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogIzMxYjBkNTtcbiAgICBib3JkZXItY29sb3I6ICMyNjlhYmM7IH1cbiAgICAuYnRuLWluZm86YWN0aXZlOmhvdmVyLCAuYnRuLWluZm86YWN0aXZlOmZvY3VzLCAuYnRuLWluZm86YWN0aXZlLmZvY3VzLCAuYnRuLWluZm8uYWN0aXZlOmhvdmVyLCAuYnRuLWluZm8uYWN0aXZlOmZvY3VzLCAuYnRuLWluZm8uYWN0aXZlLmZvY3VzLFxuICAgIC5vcGVuID4gLmJ0bi1pbmZvLmRyb3Bkb3duLXRvZ2dsZTpob3ZlcixcbiAgICAub3BlbiA+IC5idG4taW5mby5kcm9wZG93bi10b2dnbGU6Zm9jdXMsXG4gICAgLm9wZW4gPiAuYnRuLWluZm8uZHJvcGRvd24tdG9nZ2xlLmZvY3VzIHtcbiAgICAgIGNvbG9yOiAjZmZmO1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogIzI2OWFiYztcbiAgICAgIGJvcmRlci1jb2xvcjogIzFiNmQ4NTsgfVxuICAuYnRuLWluZm86YWN0aXZlLCAuYnRuLWluZm8uYWN0aXZlLFxuICAub3BlbiA+IC5idG4taW5mby5kcm9wZG93bi10b2dnbGUge1xuICAgIGJhY2tncm91bmQtaW1hZ2U6IG5vbmU7IH1cbiAgLmJ0bi1pbmZvLmRpc2FibGVkOmhvdmVyLCAuYnRuLWluZm8uZGlzYWJsZWQ6Zm9jdXMsIC5idG4taW5mby5kaXNhYmxlZC5mb2N1cywgLmJ0bi1pbmZvW2Rpc2FibGVkXTpob3ZlciwgLmJ0bi1pbmZvW2Rpc2FibGVkXTpmb2N1cywgLmJ0bi1pbmZvW2Rpc2FibGVkXS5mb2N1cyxcbiAgZmllbGRzZXRbZGlzYWJsZWRdIC5idG4taW5mbzpob3ZlcixcbiAgZmllbGRzZXRbZGlzYWJsZWRdIC5idG4taW5mbzpmb2N1cyxcbiAgZmllbGRzZXRbZGlzYWJsZWRdIC5idG4taW5mby5mb2N1cyB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogIzViYzBkZTtcbiAgICBib3JkZXItY29sb3I6ICM0NmI4ZGE7IH1cbiAgLmJ0bi1pbmZvIC5iYWRnZSB7XG4gICAgY29sb3I6ICM1YmMwZGU7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogI2ZmZjsgfVxuXG4uYnRuLXdhcm5pbmcge1xuICBjb2xvcjogI2ZmZjtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2YwYWQ0ZTtcbiAgYm9yZGVyLWNvbG9yOiAjZWVhMjM2OyB9XG4gIC5idG4td2FybmluZzpmb2N1cywgLmJ0bi13YXJuaW5nLmZvY3VzIHtcbiAgICBjb2xvcjogI2ZmZjtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjZWM5NzFmO1xuICAgIGJvcmRlci1jb2xvcjogIzk4NWYwZDsgfVxuICAuYnRuLXdhcm5pbmc6aG92ZXIge1xuICAgIGNvbG9yOiAjZmZmO1xuICAgIGJhY2tncm91bmQtY29sb3I6ICNlYzk3MWY7XG4gICAgYm9yZGVyLWNvbG9yOiAjZDU4NTEyOyB9XG4gIC5idG4td2FybmluZzphY3RpdmUsIC5idG4td2FybmluZy5hY3RpdmUsXG4gIC5vcGVuID4gLmJ0bi13YXJuaW5nLmRyb3Bkb3duLXRvZ2dsZSB7XG4gICAgY29sb3I6ICNmZmY7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogI2VjOTcxZjtcbiAgICBib3JkZXItY29sb3I6ICNkNTg1MTI7IH1cbiAgICAuYnRuLXdhcm5pbmc6YWN0aXZlOmhvdmVyLCAuYnRuLXdhcm5pbmc6YWN0aXZlOmZvY3VzLCAuYnRuLXdhcm5pbmc6YWN0aXZlLmZvY3VzLCAuYnRuLXdhcm5pbmcuYWN0aXZlOmhvdmVyLCAuYnRuLXdhcm5pbmcuYWN0aXZlOmZvY3VzLCAuYnRuLXdhcm5pbmcuYWN0aXZlLmZvY3VzLFxuICAgIC5vcGVuID4gLmJ0bi13YXJuaW5nLmRyb3Bkb3duLXRvZ2dsZTpob3ZlcixcbiAgICAub3BlbiA+IC5idG4td2FybmluZy5kcm9wZG93bi10b2dnbGU6Zm9jdXMsXG4gICAgLm9wZW4gPiAuYnRuLXdhcm5pbmcuZHJvcGRvd24tdG9nZ2xlLmZvY3VzIHtcbiAgICAgIGNvbG9yOiAjZmZmO1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogI2Q1ODUxMjtcbiAgICAgIGJvcmRlci1jb2xvcjogIzk4NWYwZDsgfVxuICAuYnRuLXdhcm5pbmc6YWN0aXZlLCAuYnRuLXdhcm5pbmcuYWN0aXZlLFxuICAub3BlbiA+IC5idG4td2FybmluZy5kcm9wZG93bi10b2dnbGUge1xuICAgIGJhY2tncm91bmQtaW1hZ2U6IG5vbmU7IH1cbiAgLmJ0bi13YXJuaW5nLmRpc2FibGVkOmhvdmVyLCAuYnRuLXdhcm5pbmcuZGlzYWJsZWQ6Zm9jdXMsIC5idG4td2FybmluZy5kaXNhYmxlZC5mb2N1cywgLmJ0bi13YXJuaW5nW2Rpc2FibGVkXTpob3ZlciwgLmJ0bi13YXJuaW5nW2Rpc2FibGVkXTpmb2N1cywgLmJ0bi13YXJuaW5nW2Rpc2FibGVkXS5mb2N1cyxcbiAgZmllbGRzZXRbZGlzYWJsZWRdIC5idG4td2FybmluZzpob3ZlcixcbiAgZmllbGRzZXRbZGlzYWJsZWRdIC5idG4td2FybmluZzpmb2N1cyxcbiAgZmllbGRzZXRbZGlzYWJsZWRdIC5idG4td2FybmluZy5mb2N1cyB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogI2YwYWQ0ZTtcbiAgICBib3JkZXItY29sb3I6ICNlZWEyMzY7IH1cbiAgLmJ0bi13YXJuaW5nIC5iYWRnZSB7XG4gICAgY29sb3I6ICNmMGFkNGU7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogI2ZmZjsgfVxuXG4uYnRuLWRhbmdlciB7XG4gIGNvbG9yOiAjZmZmO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZDk1MzRmO1xuICBib3JkZXItY29sb3I6ICNkNDNmM2E7IH1cbiAgLmJ0bi1kYW5nZXI6Zm9jdXMsIC5idG4tZGFuZ2VyLmZvY3VzIHtcbiAgICBjb2xvcjogI2ZmZjtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjYzkzMDJjO1xuICAgIGJvcmRlci1jb2xvcjogIzc2MWMxOTsgfVxuICAuYnRuLWRhbmdlcjpob3ZlciB7XG4gICAgY29sb3I6ICNmZmY7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogI2M5MzAyYztcbiAgICBib3JkZXItY29sb3I6ICNhYzI5MjU7IH1cbiAgLmJ0bi1kYW5nZXI6YWN0aXZlLCAuYnRuLWRhbmdlci5hY3RpdmUsXG4gIC5vcGVuID4gLmJ0bi1kYW5nZXIuZHJvcGRvd24tdG9nZ2xlIHtcbiAgICBjb2xvcjogI2ZmZjtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjYzkzMDJjO1xuICAgIGJvcmRlci1jb2xvcjogI2FjMjkyNTsgfVxuICAgIC5idG4tZGFuZ2VyOmFjdGl2ZTpob3ZlciwgLmJ0bi1kYW5nZXI6YWN0aXZlOmZvY3VzLCAuYnRuLWRhbmdlcjphY3RpdmUuZm9jdXMsIC5idG4tZGFuZ2VyLmFjdGl2ZTpob3ZlciwgLmJ0bi1kYW5nZXIuYWN0aXZlOmZvY3VzLCAuYnRuLWRhbmdlci5hY3RpdmUuZm9jdXMsXG4gICAgLm9wZW4gPiAuYnRuLWRhbmdlci5kcm9wZG93bi10b2dnbGU6aG92ZXIsXG4gICAgLm9wZW4gPiAuYnRuLWRhbmdlci5kcm9wZG93bi10b2dnbGU6Zm9jdXMsXG4gICAgLm9wZW4gPiAuYnRuLWRhbmdlci5kcm9wZG93bi10b2dnbGUuZm9jdXMge1xuICAgICAgY29sb3I6ICNmZmY7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjYWMyOTI1O1xuICAgICAgYm9yZGVyLWNvbG9yOiAjNzYxYzE5OyB9XG4gIC5idG4tZGFuZ2VyOmFjdGl2ZSwgLmJ0bi1kYW5nZXIuYWN0aXZlLFxuICAub3BlbiA+IC5idG4tZGFuZ2VyLmRyb3Bkb3duLXRvZ2dsZSB7XG4gICAgYmFja2dyb3VuZC1pbWFnZTogbm9uZTsgfVxuICAuYnRuLWRhbmdlci5kaXNhYmxlZDpob3ZlciwgLmJ0bi1kYW5nZXIuZGlzYWJsZWQ6Zm9jdXMsIC5idG4tZGFuZ2VyLmRpc2FibGVkLmZvY3VzLCAuYnRuLWRhbmdlcltkaXNhYmxlZF06aG92ZXIsIC5idG4tZGFuZ2VyW2Rpc2FibGVkXTpmb2N1cywgLmJ0bi1kYW5nZXJbZGlzYWJsZWRdLmZvY3VzLFxuICBmaWVsZHNldFtkaXNhYmxlZF0gLmJ0bi1kYW5nZXI6aG92ZXIsXG4gIGZpZWxkc2V0W2Rpc2FibGVkXSAuYnRuLWRhbmdlcjpmb2N1cyxcbiAgZmllbGRzZXRbZGlzYWJsZWRdIC5idG4tZGFuZ2VyLmZvY3VzIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjZDk1MzRmO1xuICAgIGJvcmRlci1jb2xvcjogI2Q0M2YzYTsgfVxuICAuYnRuLWRhbmdlciAuYmFkZ2Uge1xuICAgIGNvbG9yOiAjZDk1MzRmO1xuICAgIGJhY2tncm91bmQtY29sb3I6ICNmZmY7IH1cblxuLmJ0bi1saW5rIHtcbiAgY29sb3I6ICMzMzdhYjc7XG4gIGZvbnQtd2VpZ2h0OiBub3JtYWw7XG4gIGJvcmRlci1yYWRpdXM6IDA7IH1cbiAgLmJ0bi1saW5rLCAuYnRuLWxpbms6YWN0aXZlLCAuYnRuLWxpbmsuYWN0aXZlLCAuYnRuLWxpbmtbZGlzYWJsZWRdLFxuICBmaWVsZHNldFtkaXNhYmxlZF0gLmJ0bi1saW5rIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcbiAgICAtd2Via2l0LWJveC1zaGFkb3c6IG5vbmU7XG4gICAgYm94LXNoYWRvdzogbm9uZTsgfVxuICAuYnRuLWxpbmssIC5idG4tbGluazpob3ZlciwgLmJ0bi1saW5rOmZvY3VzLCAuYnRuLWxpbms6YWN0aXZlIHtcbiAgICBib3JkZXItY29sb3I6IHRyYW5zcGFyZW50OyB9XG4gIC5idG4tbGluazpob3ZlciwgLmJ0bi1saW5rOmZvY3VzIHtcbiAgICBjb2xvcjogIzIzNTI3YztcbiAgICB0ZXh0LWRlY29yYXRpb246IHVuZGVybGluZTtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDsgfVxuICAuYnRuLWxpbmtbZGlzYWJsZWRdOmhvdmVyLCAuYnRuLWxpbmtbZGlzYWJsZWRdOmZvY3VzLFxuICBmaWVsZHNldFtkaXNhYmxlZF0gLmJ0bi1saW5rOmhvdmVyLFxuICBmaWVsZHNldFtkaXNhYmxlZF0gLmJ0bi1saW5rOmZvY3VzIHtcbiAgICBjb2xvcjogIzc3Nzc3NztcbiAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7IH1cblxuLmJ0bi1sZywgLmJ0bi1ncm91cC1sZyA+IC5idG4ge1xuICBwYWRkaW5nOiAxMHB4IDE2cHg7XG4gIGZvbnQtc2l6ZTogMThweDtcbiAgbGluZS1oZWlnaHQ6IDEuMzMzMzM7XG4gIGJvcmRlci1yYWRpdXM6IDZweDsgfVxuXG4uYnRuLXNtLCAuYnRuLWdyb3VwLXNtID4gLmJ0biB7XG4gIHBhZGRpbmc6IDVweCAxMHB4O1xuICBmb250LXNpemU6IDEycHg7XG4gIGxpbmUtaGVpZ2h0OiAxLjU7XG4gIGJvcmRlci1yYWRpdXM6IDNweDsgfVxuXG4uYnRuLXhzLCAuYnRuLWdyb3VwLXhzID4gLmJ0biB7XG4gIHBhZGRpbmc6IDFweCA1cHg7XG4gIGZvbnQtc2l6ZTogMTJweDtcbiAgbGluZS1oZWlnaHQ6IDEuNTtcbiAgYm9yZGVyLXJhZGl1czogM3B4OyB9XG5cbi5idG4tYmxvY2sge1xuICBkaXNwbGF5OiBibG9jaztcbiAgd2lkdGg6IDEwMCU7IH1cblxuLmJ0bi1ibG9jayArIC5idG4tYmxvY2sge1xuICBtYXJnaW4tdG9wOiA1cHg7IH1cblxuaW5wdXRbdHlwZT1cInN1Ym1pdFwiXS5idG4tYmxvY2ssXG5pbnB1dFt0eXBlPVwicmVzZXRcIl0uYnRuLWJsb2NrLFxuaW5wdXRbdHlwZT1cImJ1dHRvblwiXS5idG4tYmxvY2sge1xuICB3aWR0aDogMTAwJTsgfVxuXG4uZmFkZSB7XG4gIG9wYWNpdHk6IDA7XG4gIC13ZWJraXQtdHJhbnNpdGlvbjogb3BhY2l0eSAwLjE1cyBsaW5lYXI7XG4gIC1vLXRyYW5zaXRpb246IG9wYWNpdHkgMC4xNXMgbGluZWFyO1xuICB0cmFuc2l0aW9uOiBvcGFjaXR5IDAuMTVzIGxpbmVhcjsgfVxuICAuZmFkZS5pbiB7XG4gICAgb3BhY2l0eTogMTsgfVxuXG4uY29sbGFwc2Uge1xuICBkaXNwbGF5OiBub25lOyB9XG4gIC5jb2xsYXBzZS5pbiB7XG4gICAgZGlzcGxheTogYmxvY2s7IH1cblxudHIuY29sbGFwc2UuaW4ge1xuICBkaXNwbGF5OiB0YWJsZS1yb3c7IH1cblxudGJvZHkuY29sbGFwc2UuaW4ge1xuICBkaXNwbGF5OiB0YWJsZS1yb3ctZ3JvdXA7IH1cblxuLmNvbGxhcHNpbmcge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIGhlaWdodDogMDtcbiAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgLXdlYmtpdC10cmFuc2l0aW9uLXByb3BlcnR5OiBoZWlnaHQsIHZpc2liaWxpdHk7XG4gIHRyYW5zaXRpb24tcHJvcGVydHk6IGhlaWdodCwgdmlzaWJpbGl0eTtcbiAgLXdlYmtpdC10cmFuc2l0aW9uLWR1cmF0aW9uOiAwLjM1cztcbiAgdHJhbnNpdGlvbi1kdXJhdGlvbjogMC4zNXM7XG4gIC13ZWJraXQtdHJhbnNpdGlvbi10aW1pbmctZnVuY3Rpb246IGVhc2U7XG4gIHRyYW5zaXRpb24tdGltaW5nLWZ1bmN0aW9uOiBlYXNlOyB9XG5cbi5jYXJldCB7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgd2lkdGg6IDA7XG4gIGhlaWdodDogMDtcbiAgbWFyZ2luLWxlZnQ6IDJweDtcbiAgdmVydGljYWwtYWxpZ246IG1pZGRsZTtcbiAgYm9yZGVyLXRvcDogNHB4IGRhc2hlZDtcbiAgYm9yZGVyLXRvcDogNHB4IHNvbGlkIFxcOTtcbiAgYm9yZGVyLXJpZ2h0OiA0cHggc29saWQgdHJhbnNwYXJlbnQ7XG4gIGJvcmRlci1sZWZ0OiA0cHggc29saWQgdHJhbnNwYXJlbnQ7IH1cblxuLmRyb3B1cCxcbi5kcm9wZG93biB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTsgfVxuXG4uZHJvcGRvd24tdG9nZ2xlOmZvY3VzIHtcbiAgb3V0bGluZTogMDsgfVxuXG4uZHJvcGRvd24tbWVudSB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgdG9wOiAxMDAlO1xuICBsZWZ0OiAwO1xuICB6LWluZGV4OiAxMDAwO1xuICBkaXNwbGF5OiBub25lO1xuICBmbG9hdDogbGVmdDtcbiAgbWluLXdpZHRoOiAxNjBweDtcbiAgcGFkZGluZzogNXB4IDA7XG4gIG1hcmdpbjogMnB4IDAgMDtcbiAgbGlzdC1zdHlsZTogbm9uZTtcbiAgZm9udC1zaXplOiAxNHB4O1xuICB0ZXh0LWFsaWduOiBsZWZ0O1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZmZmO1xuICBib3JkZXI6IDFweCBzb2xpZCAjY2NjO1xuICBib3JkZXI6IDFweCBzb2xpZCByZ2JhKDAsIDAsIDAsIDAuMTUpO1xuICBib3JkZXItcmFkaXVzOiA0cHg7XG4gIC13ZWJraXQtYm94LXNoYWRvdzogMCA2cHggMTJweCByZ2JhKDAsIDAsIDAsIDAuMTc1KTtcbiAgYm94LXNoYWRvdzogMCA2cHggMTJweCByZ2JhKDAsIDAsIDAsIDAuMTc1KTtcbiAgYmFja2dyb3VuZC1jbGlwOiBwYWRkaW5nLWJveDsgfVxuICAuZHJvcGRvd24tbWVudS5wdWxsLXJpZ2h0IHtcbiAgICByaWdodDogMDtcbiAgICBsZWZ0OiBhdXRvOyB9XG4gIC5kcm9wZG93bi1tZW51IC5kaXZpZGVyIHtcbiAgICBoZWlnaHQ6IDFweDtcbiAgICBtYXJnaW46IDlweCAwO1xuICAgIG92ZXJmbG93OiBoaWRkZW47XG4gICAgYmFja2dyb3VuZC1jb2xvcjogI2U1ZTVlNTsgfVxuICAuZHJvcGRvd24tbWVudSA+IGxpID4gYSB7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgcGFkZGluZzogM3B4IDIwcHg7XG4gICAgY2xlYXI6IGJvdGg7XG4gICAgZm9udC13ZWlnaHQ6IG5vcm1hbDtcbiAgICBsaW5lLWhlaWdodDogMS40Mjg1NztcbiAgICBjb2xvcjogIzMzMzMzMztcbiAgICB3aGl0ZS1zcGFjZTogbm93cmFwOyB9XG5cbi5kcm9wZG93bi1tZW51ID4gbGkgPiBhOmhvdmVyLCAuZHJvcGRvd24tbWVudSA+IGxpID4gYTpmb2N1cyB7XG4gIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgY29sb3I6ICMyNjI2MjY7XG4gIGJhY2tncm91bmQtY29sb3I6ICNmNWY1ZjU7IH1cblxuLmRyb3Bkb3duLW1lbnUgPiAuYWN0aXZlID4gYSwgLmRyb3Bkb3duLW1lbnUgPiAuYWN0aXZlID4gYTpob3ZlciwgLmRyb3Bkb3duLW1lbnUgPiAuYWN0aXZlID4gYTpmb2N1cyB7XG4gIGNvbG9yOiAjZmZmO1xuICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG4gIG91dGxpbmU6IDA7XG4gIGJhY2tncm91bmQtY29sb3I6ICMzMzdhYjc7IH1cblxuLmRyb3Bkb3duLW1lbnUgPiAuZGlzYWJsZWQgPiBhLCAuZHJvcGRvd24tbWVudSA+IC5kaXNhYmxlZCA+IGE6aG92ZXIsIC5kcm9wZG93bi1tZW51ID4gLmRpc2FibGVkID4gYTpmb2N1cyB7XG4gIGNvbG9yOiAjNzc3Nzc3OyB9XG5cbi5kcm9wZG93bi1tZW51ID4gLmRpc2FibGVkID4gYTpob3ZlciwgLmRyb3Bkb3duLW1lbnUgPiAuZGlzYWJsZWQgPiBhOmZvY3VzIHtcbiAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcbiAgYmFja2dyb3VuZC1pbWFnZTogbm9uZTtcbiAgZmlsdGVyOiBwcm9naWQ6RFhJbWFnZVRyYW5zZm9ybS5NaWNyb3NvZnQuZ3JhZGllbnQoZW5hYmxlZCA9IGZhbHNlKTtcbiAgY3Vyc29yOiBub3QtYWxsb3dlZDsgfVxuXG4ub3BlbiA+IC5kcm9wZG93bi1tZW51IHtcbiAgZGlzcGxheTogYmxvY2s7IH1cblxuLm9wZW4gPiBhIHtcbiAgb3V0bGluZTogMDsgfVxuXG4uZHJvcGRvd24tbWVudS1yaWdodCB7XG4gIGxlZnQ6IGF1dG87XG4gIHJpZ2h0OiAwOyB9XG5cbi5kcm9wZG93bi1tZW51LWxlZnQge1xuICBsZWZ0OiAwO1xuICByaWdodDogYXV0bzsgfVxuXG4uZHJvcGRvd24taGVhZGVyIHtcbiAgZGlzcGxheTogYmxvY2s7XG4gIHBhZGRpbmc6IDNweCAyMHB4O1xuICBmb250LXNpemU6IDEycHg7XG4gIGxpbmUtaGVpZ2h0OiAxLjQyODU3O1xuICBjb2xvcjogIzc3Nzc3NztcbiAgd2hpdGUtc3BhY2U6IG5vd3JhcDsgfVxuXG4uZHJvcGRvd24tYmFja2Ryb3Age1xuICBwb3NpdGlvbjogZml4ZWQ7XG4gIGxlZnQ6IDA7XG4gIHJpZ2h0OiAwO1xuICBib3R0b206IDA7XG4gIHRvcDogMDtcbiAgei1pbmRleDogOTkwOyB9XG5cbi5wdWxsLXJpZ2h0ID4gLmRyb3Bkb3duLW1lbnUge1xuICByaWdodDogMDtcbiAgbGVmdDogYXV0bzsgfVxuXG4uZHJvcHVwIC5jYXJldCxcbi5uYXZiYXItZml4ZWQtYm90dG9tIC5kcm9wZG93biAuY2FyZXQge1xuICBib3JkZXItdG9wOiAwO1xuICBib3JkZXItYm90dG9tOiA0cHggZGFzaGVkO1xuICBib3JkZXItYm90dG9tOiA0cHggc29saWQgXFw5O1xuICBjb250ZW50OiBcIlwiOyB9XG5cbi5kcm9wdXAgLmRyb3Bkb3duLW1lbnUsXG4ubmF2YmFyLWZpeGVkLWJvdHRvbSAuZHJvcGRvd24gLmRyb3Bkb3duLW1lbnUge1xuICB0b3A6IGF1dG87XG4gIGJvdHRvbTogMTAwJTtcbiAgbWFyZ2luLWJvdHRvbTogMnB4OyB9XG5cbkBtZWRpYSAobWluLXdpZHRoOiA3NjhweCkge1xuICAubmF2YmFyLXJpZ2h0IC5kcm9wZG93bi1tZW51IHtcbiAgICByaWdodDogMDtcbiAgICBsZWZ0OiBhdXRvOyB9XG4gIC5uYXZiYXItcmlnaHQgLmRyb3Bkb3duLW1lbnUtbGVmdCB7XG4gICAgbGVmdDogMDtcbiAgICByaWdodDogYXV0bzsgfSB9XG5cbi5idG4tZ3JvdXAsXG4uYnRuLWdyb3VwLXZlcnRpY2FsIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7IH1cbiAgLmJ0bi1ncm91cCA+IC5idG4sXG4gIC5idG4tZ3JvdXAtdmVydGljYWwgPiAuYnRuIHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgZmxvYXQ6IGxlZnQ7IH1cbiAgICAuYnRuLWdyb3VwID4gLmJ0bjpob3ZlciwgLmJ0bi1ncm91cCA+IC5idG46Zm9jdXMsIC5idG4tZ3JvdXAgPiAuYnRuOmFjdGl2ZSwgLmJ0bi1ncm91cCA+IC5idG4uYWN0aXZlLFxuICAgIC5idG4tZ3JvdXAtdmVydGljYWwgPiAuYnRuOmhvdmVyLFxuICAgIC5idG4tZ3JvdXAtdmVydGljYWwgPiAuYnRuOmZvY3VzLFxuICAgIC5idG4tZ3JvdXAtdmVydGljYWwgPiAuYnRuOmFjdGl2ZSxcbiAgICAuYnRuLWdyb3VwLXZlcnRpY2FsID4gLmJ0bi5hY3RpdmUge1xuICAgICAgei1pbmRleDogMjsgfVxuXG4uYnRuLWdyb3VwIC5idG4gKyAuYnRuLFxuLmJ0bi1ncm91cCAuYnRuICsgLmJ0bi1ncm91cCxcbi5idG4tZ3JvdXAgLmJ0bi1ncm91cCArIC5idG4sXG4uYnRuLWdyb3VwIC5idG4tZ3JvdXAgKyAuYnRuLWdyb3VwIHtcbiAgbWFyZ2luLWxlZnQ6IC0xcHg7IH1cblxuLmJ0bi10b29sYmFyIHtcbiAgbWFyZ2luLWxlZnQ6IC01cHg7IH1cbiAgLmJ0bi10b29sYmFyOmJlZm9yZSwgLmJ0bi10b29sYmFyOmFmdGVyIHtcbiAgICBjb250ZW50OiBcIiBcIjtcbiAgICBkaXNwbGF5OiB0YWJsZTsgfVxuICAuYnRuLXRvb2xiYXI6YWZ0ZXIge1xuICAgIGNsZWFyOiBib3RoOyB9XG4gIC5idG4tdG9vbGJhciAuYnRuLFxuICAuYnRuLXRvb2xiYXIgLmJ0bi1ncm91cCxcbiAgLmJ0bi10b29sYmFyIC5pbnB1dC1ncm91cCB7XG4gICAgZmxvYXQ6IGxlZnQ7IH1cbiAgLmJ0bi10b29sYmFyID4gLmJ0bixcbiAgLmJ0bi10b29sYmFyID4gLmJ0bi1ncm91cCxcbiAgLmJ0bi10b29sYmFyID4gLmlucHV0LWdyb3VwIHtcbiAgICBtYXJnaW4tbGVmdDogNXB4OyB9XG5cbi5idG4tZ3JvdXAgPiAuYnRuOm5vdCg6Zmlyc3QtY2hpbGQpOm5vdCg6bGFzdC1jaGlsZCk6bm90KC5kcm9wZG93bi10b2dnbGUpIHtcbiAgYm9yZGVyLXJhZGl1czogMDsgfVxuXG4uYnRuLWdyb3VwID4gLmJ0bjpmaXJzdC1jaGlsZCB7XG4gIG1hcmdpbi1sZWZ0OiAwOyB9XG4gIC5idG4tZ3JvdXAgPiAuYnRuOmZpcnN0LWNoaWxkOm5vdCg6bGFzdC1jaGlsZCk6bm90KC5kcm9wZG93bi10b2dnbGUpIHtcbiAgICBib3JkZXItYm90dG9tLXJpZ2h0LXJhZGl1czogMDtcbiAgICBib3JkZXItdG9wLXJpZ2h0LXJhZGl1czogMDsgfVxuXG4uYnRuLWdyb3VwID4gLmJ0bjpsYXN0LWNoaWxkOm5vdCg6Zmlyc3QtY2hpbGQpLFxuLmJ0bi1ncm91cCA+IC5kcm9wZG93bi10b2dnbGU6bm90KDpmaXJzdC1jaGlsZCkge1xuICBib3JkZXItYm90dG9tLWxlZnQtcmFkaXVzOiAwO1xuICBib3JkZXItdG9wLWxlZnQtcmFkaXVzOiAwOyB9XG5cbi5idG4tZ3JvdXAgPiAuYnRuLWdyb3VwIHtcbiAgZmxvYXQ6IGxlZnQ7IH1cblxuLmJ0bi1ncm91cCA+IC5idG4tZ3JvdXA6bm90KDpmaXJzdC1jaGlsZCk6bm90KDpsYXN0LWNoaWxkKSA+IC5idG4ge1xuICBib3JkZXItcmFkaXVzOiAwOyB9XG5cbi5idG4tZ3JvdXAgPiAuYnRuLWdyb3VwOmZpcnN0LWNoaWxkOm5vdCg6bGFzdC1jaGlsZCkgPiAuYnRuOmxhc3QtY2hpbGQsXG4uYnRuLWdyb3VwID4gLmJ0bi1ncm91cDpmaXJzdC1jaGlsZDpub3QoOmxhc3QtY2hpbGQpID4gLmRyb3Bkb3duLXRvZ2dsZSB7XG4gIGJvcmRlci1ib3R0b20tcmlnaHQtcmFkaXVzOiAwO1xuICBib3JkZXItdG9wLXJpZ2h0LXJhZGl1czogMDsgfVxuXG4uYnRuLWdyb3VwID4gLmJ0bi1ncm91cDpsYXN0LWNoaWxkOm5vdCg6Zmlyc3QtY2hpbGQpID4gLmJ0bjpmaXJzdC1jaGlsZCB7XG4gIGJvcmRlci1ib3R0b20tbGVmdC1yYWRpdXM6IDA7XG4gIGJvcmRlci10b3AtbGVmdC1yYWRpdXM6IDA7IH1cblxuLmJ0bi1ncm91cCAuZHJvcGRvd24tdG9nZ2xlOmFjdGl2ZSxcbi5idG4tZ3JvdXAub3BlbiAuZHJvcGRvd24tdG9nZ2xlIHtcbiAgb3V0bGluZTogMDsgfVxuXG4uYnRuLWdyb3VwID4gLmJ0biArIC5kcm9wZG93bi10b2dnbGUge1xuICBwYWRkaW5nLWxlZnQ6IDhweDtcbiAgcGFkZGluZy1yaWdodDogOHB4OyB9XG5cbi5idG4tZ3JvdXAgPiAuYnRuLWxnICsgLmRyb3Bkb3duLXRvZ2dsZSwgLmJ0bi1ncm91cC1sZy5idG4tZ3JvdXAgPiAuYnRuICsgLmRyb3Bkb3duLXRvZ2dsZSB7XG4gIHBhZGRpbmctbGVmdDogMTJweDtcbiAgcGFkZGluZy1yaWdodDogMTJweDsgfVxuXG4uYnRuLWdyb3VwLm9wZW4gLmRyb3Bkb3duLXRvZ2dsZSB7XG4gIC13ZWJraXQtYm94LXNoYWRvdzogaW5zZXQgMCAzcHggNXB4IHJnYmEoMCwgMCwgMCwgMC4xMjUpO1xuICBib3gtc2hhZG93OiBpbnNldCAwIDNweCA1cHggcmdiYSgwLCAwLCAwLCAwLjEyNSk7IH1cbiAgLmJ0bi1ncm91cC5vcGVuIC5kcm9wZG93bi10b2dnbGUuYnRuLWxpbmsge1xuICAgIC13ZWJraXQtYm94LXNoYWRvdzogbm9uZTtcbiAgICBib3gtc2hhZG93OiBub25lOyB9XG5cbi5idG4gLmNhcmV0IHtcbiAgbWFyZ2luLWxlZnQ6IDA7IH1cblxuLmJ0bi1sZyAuY2FyZXQsIC5idG4tZ3JvdXAtbGcgPiAuYnRuIC5jYXJldCB7XG4gIGJvcmRlci13aWR0aDogNXB4IDVweCAwO1xuICBib3JkZXItYm90dG9tLXdpZHRoOiAwOyB9XG5cbi5kcm9wdXAgLmJ0bi1sZyAuY2FyZXQsIC5kcm9wdXAgLmJ0bi1ncm91cC1sZyA+IC5idG4gLmNhcmV0IHtcbiAgYm9yZGVyLXdpZHRoOiAwIDVweCA1cHg7IH1cblxuLmJ0bi1ncm91cC12ZXJ0aWNhbCA+IC5idG4sXG4uYnRuLWdyb3VwLXZlcnRpY2FsID4gLmJ0bi1ncm91cCxcbi5idG4tZ3JvdXAtdmVydGljYWwgPiAuYnRuLWdyb3VwID4gLmJ0biB7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBmbG9hdDogbm9uZTtcbiAgd2lkdGg6IDEwMCU7XG4gIG1heC13aWR0aDogMTAwJTsgfVxuXG4uYnRuLWdyb3VwLXZlcnRpY2FsID4gLmJ0bi1ncm91cDpiZWZvcmUsIC5idG4tZ3JvdXAtdmVydGljYWwgPiAuYnRuLWdyb3VwOmFmdGVyIHtcbiAgY29udGVudDogXCIgXCI7XG4gIGRpc3BsYXk6IHRhYmxlOyB9XG5cbi5idG4tZ3JvdXAtdmVydGljYWwgPiAuYnRuLWdyb3VwOmFmdGVyIHtcbiAgY2xlYXI6IGJvdGg7IH1cblxuLmJ0bi1ncm91cC12ZXJ0aWNhbCA+IC5idG4tZ3JvdXAgPiAuYnRuIHtcbiAgZmxvYXQ6IG5vbmU7IH1cblxuLmJ0bi1ncm91cC12ZXJ0aWNhbCA+IC5idG4gKyAuYnRuLFxuLmJ0bi1ncm91cC12ZXJ0aWNhbCA+IC5idG4gKyAuYnRuLWdyb3VwLFxuLmJ0bi1ncm91cC12ZXJ0aWNhbCA+IC5idG4tZ3JvdXAgKyAuYnRuLFxuLmJ0bi1ncm91cC12ZXJ0aWNhbCA+IC5idG4tZ3JvdXAgKyAuYnRuLWdyb3VwIHtcbiAgbWFyZ2luLXRvcDogLTFweDtcbiAgbWFyZ2luLWxlZnQ6IDA7IH1cblxuLmJ0bi1ncm91cC12ZXJ0aWNhbCA+IC5idG46bm90KDpmaXJzdC1jaGlsZCk6bm90KDpsYXN0LWNoaWxkKSB7XG4gIGJvcmRlci1yYWRpdXM6IDA7IH1cblxuLmJ0bi1ncm91cC12ZXJ0aWNhbCA+IC5idG46Zmlyc3QtY2hpbGQ6bm90KDpsYXN0LWNoaWxkKSB7XG4gIGJvcmRlci10b3AtcmlnaHQtcmFkaXVzOiA0cHg7XG4gIGJvcmRlci10b3AtbGVmdC1yYWRpdXM6IDRweDtcbiAgYm9yZGVyLWJvdHRvbS1yaWdodC1yYWRpdXM6IDA7XG4gIGJvcmRlci1ib3R0b20tbGVmdC1yYWRpdXM6IDA7IH1cblxuLmJ0bi1ncm91cC12ZXJ0aWNhbCA+IC5idG46bGFzdC1jaGlsZDpub3QoOmZpcnN0LWNoaWxkKSB7XG4gIGJvcmRlci10b3AtcmlnaHQtcmFkaXVzOiAwO1xuICBib3JkZXItdG9wLWxlZnQtcmFkaXVzOiAwO1xuICBib3JkZXItYm90dG9tLXJpZ2h0LXJhZGl1czogNHB4O1xuICBib3JkZXItYm90dG9tLWxlZnQtcmFkaXVzOiA0cHg7IH1cblxuLmJ0bi1ncm91cC12ZXJ0aWNhbCA+IC5idG4tZ3JvdXA6bm90KDpmaXJzdC1jaGlsZCk6bm90KDpsYXN0LWNoaWxkKSA+IC5idG4ge1xuICBib3JkZXItcmFkaXVzOiAwOyB9XG5cbi5idG4tZ3JvdXAtdmVydGljYWwgPiAuYnRuLWdyb3VwOmZpcnN0LWNoaWxkOm5vdCg6bGFzdC1jaGlsZCkgPiAuYnRuOmxhc3QtY2hpbGQsXG4uYnRuLWdyb3VwLXZlcnRpY2FsID4gLmJ0bi1ncm91cDpmaXJzdC1jaGlsZDpub3QoOmxhc3QtY2hpbGQpID4gLmRyb3Bkb3duLXRvZ2dsZSB7XG4gIGJvcmRlci1ib3R0b20tcmlnaHQtcmFkaXVzOiAwO1xuICBib3JkZXItYm90dG9tLWxlZnQtcmFkaXVzOiAwOyB9XG5cbi5idG4tZ3JvdXAtdmVydGljYWwgPiAuYnRuLWdyb3VwOmxhc3QtY2hpbGQ6bm90KDpmaXJzdC1jaGlsZCkgPiAuYnRuOmZpcnN0LWNoaWxkIHtcbiAgYm9yZGVyLXRvcC1yaWdodC1yYWRpdXM6IDA7XG4gIGJvcmRlci10b3AtbGVmdC1yYWRpdXM6IDA7IH1cblxuLmJ0bi1ncm91cC1qdXN0aWZpZWQge1xuICBkaXNwbGF5OiB0YWJsZTtcbiAgd2lkdGg6IDEwMCU7XG4gIHRhYmxlLWxheW91dDogZml4ZWQ7XG4gIGJvcmRlci1jb2xsYXBzZTogc2VwYXJhdGU7IH1cbiAgLmJ0bi1ncm91cC1qdXN0aWZpZWQgPiAuYnRuLFxuICAuYnRuLWdyb3VwLWp1c3RpZmllZCA+IC5idG4tZ3JvdXAge1xuICAgIGZsb2F0OiBub25lO1xuICAgIGRpc3BsYXk6IHRhYmxlLWNlbGw7XG4gICAgd2lkdGg6IDElOyB9XG4gIC5idG4tZ3JvdXAtanVzdGlmaWVkID4gLmJ0bi1ncm91cCAuYnRuIHtcbiAgICB3aWR0aDogMTAwJTsgfVxuICAuYnRuLWdyb3VwLWp1c3RpZmllZCA+IC5idG4tZ3JvdXAgLmRyb3Bkb3duLW1lbnUge1xuICAgIGxlZnQ6IGF1dG87IH1cblxuW2RhdGEtdG9nZ2xlPVwiYnV0dG9uc1wiXSA+IC5idG4gaW5wdXRbdHlwZT1cInJhZGlvXCJdLFxuW2RhdGEtdG9nZ2xlPVwiYnV0dG9uc1wiXSA+IC5idG4gaW5wdXRbdHlwZT1cImNoZWNrYm94XCJdLFxuW2RhdGEtdG9nZ2xlPVwiYnV0dG9uc1wiXSA+IC5idG4tZ3JvdXAgPiAuYnRuIGlucHV0W3R5cGU9XCJyYWRpb1wiXSxcbltkYXRhLXRvZ2dsZT1cImJ1dHRvbnNcIl0gPiAuYnRuLWdyb3VwID4gLmJ0biBpbnB1dFt0eXBlPVwiY2hlY2tib3hcIl0ge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIGNsaXA6IHJlY3QoMCwgMCwgMCwgMCk7XG4gIHBvaW50ZXItZXZlbnRzOiBub25lOyB9XG5cbi5pbnB1dC1ncm91cCB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgZGlzcGxheTogdGFibGU7XG4gIGJvcmRlci1jb2xsYXBzZTogc2VwYXJhdGU7IH1cbiAgLmlucHV0LWdyb3VwW2NsYXNzKj1cImNvbC1cIl0ge1xuICAgIGZsb2F0OiBub25lO1xuICAgIHBhZGRpbmctbGVmdDogMDtcbiAgICBwYWRkaW5nLXJpZ2h0OiAwOyB9XG4gIC5pbnB1dC1ncm91cCAuZm9ybS1jb250cm9sIHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgei1pbmRleDogMjtcbiAgICBmbG9hdDogbGVmdDtcbiAgICB3aWR0aDogMTAwJTtcbiAgICBtYXJnaW4tYm90dG9tOiAwOyB9XG4gICAgLmlucHV0LWdyb3VwIC5mb3JtLWNvbnRyb2w6Zm9jdXMge1xuICAgICAgei1pbmRleDogMzsgfVxuXG4uaW5wdXQtZ3JvdXAtYWRkb24sXG4uaW5wdXQtZ3JvdXAtYnRuLFxuLmlucHV0LWdyb3VwIC5mb3JtLWNvbnRyb2wge1xuICBkaXNwbGF5OiB0YWJsZS1jZWxsOyB9XG4gIC5pbnB1dC1ncm91cC1hZGRvbjpub3QoOmZpcnN0LWNoaWxkKTpub3QoOmxhc3QtY2hpbGQpLFxuICAuaW5wdXQtZ3JvdXAtYnRuOm5vdCg6Zmlyc3QtY2hpbGQpOm5vdCg6bGFzdC1jaGlsZCksXG4gIC5pbnB1dC1ncm91cCAuZm9ybS1jb250cm9sOm5vdCg6Zmlyc3QtY2hpbGQpOm5vdCg6bGFzdC1jaGlsZCkge1xuICAgIGJvcmRlci1yYWRpdXM6IDA7IH1cblxuLmlucHV0LWdyb3VwLWFkZG9uLFxuLmlucHV0LWdyb3VwLWJ0biB7XG4gIHdpZHRoOiAxJTtcbiAgd2hpdGUtc3BhY2U6IG5vd3JhcDtcbiAgdmVydGljYWwtYWxpZ246IG1pZGRsZTsgfVxuXG4uaW5wdXQtZ3JvdXAtYWRkb24ge1xuICBwYWRkaW5nOiA2cHggMTJweDtcbiAgZm9udC1zaXplOiAxNHB4O1xuICBmb250LXdlaWdodDogbm9ybWFsO1xuICBsaW5lLWhlaWdodDogMTtcbiAgY29sb3I6ICM1NTU1NTU7XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2VlZWVlZTtcbiAgYm9yZGVyOiAxcHggc29saWQgI2NjYztcbiAgYm9yZGVyLXJhZGl1czogNHB4OyB9XG4gIC5pbnB1dC1ncm91cC1hZGRvbi5pbnB1dC1zbSxcbiAgLmlucHV0LWdyb3VwLXNtID4gLmlucHV0LWdyb3VwLWFkZG9uLFxuICAuaW5wdXQtZ3JvdXAtc20gPiAuaW5wdXQtZ3JvdXAtYnRuID4gLmlucHV0LWdyb3VwLWFkZG9uLmJ0biB7XG4gICAgcGFkZGluZzogNXB4IDEwcHg7XG4gICAgZm9udC1zaXplOiAxMnB4O1xuICAgIGJvcmRlci1yYWRpdXM6IDNweDsgfVxuICAuaW5wdXQtZ3JvdXAtYWRkb24uaW5wdXQtbGcsXG4gIC5pbnB1dC1ncm91cC1sZyA+IC5pbnB1dC1ncm91cC1hZGRvbixcbiAgLmlucHV0LWdyb3VwLWxnID4gLmlucHV0LWdyb3VwLWJ0biA+IC5pbnB1dC1ncm91cC1hZGRvbi5idG4ge1xuICAgIHBhZGRpbmc6IDEwcHggMTZweDtcbiAgICBmb250LXNpemU6IDE4cHg7XG4gICAgYm9yZGVyLXJhZGl1czogNnB4OyB9XG4gIC5pbnB1dC1ncm91cC1hZGRvbiBpbnB1dFt0eXBlPVwicmFkaW9cIl0sXG4gIC5pbnB1dC1ncm91cC1hZGRvbiBpbnB1dFt0eXBlPVwiY2hlY2tib3hcIl0ge1xuICAgIG1hcmdpbi10b3A6IDA7IH1cblxuLmlucHV0LWdyb3VwIC5mb3JtLWNvbnRyb2w6Zmlyc3QtY2hpbGQsXG4uaW5wdXQtZ3JvdXAtYWRkb246Zmlyc3QtY2hpbGQsXG4uaW5wdXQtZ3JvdXAtYnRuOmZpcnN0LWNoaWxkID4gLmJ0bixcbi5pbnB1dC1ncm91cC1idG46Zmlyc3QtY2hpbGQgPiAuYnRuLWdyb3VwID4gLmJ0bixcbi5pbnB1dC1ncm91cC1idG46Zmlyc3QtY2hpbGQgPiAuZHJvcGRvd24tdG9nZ2xlLFxuLmlucHV0LWdyb3VwLWJ0bjpsYXN0LWNoaWxkID4gLmJ0bjpub3QoOmxhc3QtY2hpbGQpOm5vdCguZHJvcGRvd24tdG9nZ2xlKSxcbi5pbnB1dC1ncm91cC1idG46bGFzdC1jaGlsZCA+IC5idG4tZ3JvdXA6bm90KDpsYXN0LWNoaWxkKSA+IC5idG4ge1xuICBib3JkZXItYm90dG9tLXJpZ2h0LXJhZGl1czogMDtcbiAgYm9yZGVyLXRvcC1yaWdodC1yYWRpdXM6IDA7IH1cblxuLmlucHV0LWdyb3VwLWFkZG9uOmZpcnN0LWNoaWxkIHtcbiAgYm9yZGVyLXJpZ2h0OiAwOyB9XG5cbi5pbnB1dC1ncm91cCAuZm9ybS1jb250cm9sOmxhc3QtY2hpbGQsXG4uaW5wdXQtZ3JvdXAtYWRkb246bGFzdC1jaGlsZCxcbi5pbnB1dC1ncm91cC1idG46bGFzdC1jaGlsZCA+IC5idG4sXG4uaW5wdXQtZ3JvdXAtYnRuOmxhc3QtY2hpbGQgPiAuYnRuLWdyb3VwID4gLmJ0bixcbi5pbnB1dC1ncm91cC1idG46bGFzdC1jaGlsZCA+IC5kcm9wZG93bi10b2dnbGUsXG4uaW5wdXQtZ3JvdXAtYnRuOmZpcnN0LWNoaWxkID4gLmJ0bjpub3QoOmZpcnN0LWNoaWxkKSxcbi5pbnB1dC1ncm91cC1idG46Zmlyc3QtY2hpbGQgPiAuYnRuLWdyb3VwOm5vdCg6Zmlyc3QtY2hpbGQpID4gLmJ0biB7XG4gIGJvcmRlci1ib3R0b20tbGVmdC1yYWRpdXM6IDA7XG4gIGJvcmRlci10b3AtbGVmdC1yYWRpdXM6IDA7IH1cblxuLmlucHV0LWdyb3VwLWFkZG9uOmxhc3QtY2hpbGQge1xuICBib3JkZXItbGVmdDogMDsgfVxuXG4uaW5wdXQtZ3JvdXAtYnRuIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBmb250LXNpemU6IDA7XG4gIHdoaXRlLXNwYWNlOiBub3dyYXA7IH1cbiAgLmlucHV0LWdyb3VwLWJ0biA+IC5idG4ge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTsgfVxuICAgIC5pbnB1dC1ncm91cC1idG4gPiAuYnRuICsgLmJ0biB7XG4gICAgICBtYXJnaW4tbGVmdDogLTFweDsgfVxuICAgIC5pbnB1dC1ncm91cC1idG4gPiAuYnRuOmhvdmVyLCAuaW5wdXQtZ3JvdXAtYnRuID4gLmJ0bjpmb2N1cywgLmlucHV0LWdyb3VwLWJ0biA+IC5idG46YWN0aXZlIHtcbiAgICAgIHotaW5kZXg6IDI7IH1cbiAgLmlucHV0LWdyb3VwLWJ0bjpmaXJzdC1jaGlsZCA+IC5idG4sXG4gIC5pbnB1dC1ncm91cC1idG46Zmlyc3QtY2hpbGQgPiAuYnRuLWdyb3VwIHtcbiAgICBtYXJnaW4tcmlnaHQ6IC0xcHg7IH1cbiAgLmlucHV0LWdyb3VwLWJ0bjpsYXN0LWNoaWxkID4gLmJ0bixcbiAgLmlucHV0LWdyb3VwLWJ0bjpsYXN0LWNoaWxkID4gLmJ0bi1ncm91cCB7XG4gICAgei1pbmRleDogMjtcbiAgICBtYXJnaW4tbGVmdDogLTFweDsgfVxuXG4ubmF2IHtcbiAgbWFyZ2luLWJvdHRvbTogMDtcbiAgcGFkZGluZy1sZWZ0OiAwO1xuICBsaXN0LXN0eWxlOiBub25lOyB9XG4gIC5uYXY6YmVmb3JlLCAubmF2OmFmdGVyIHtcbiAgICBjb250ZW50OiBcIiBcIjtcbiAgICBkaXNwbGF5OiB0YWJsZTsgfVxuICAubmF2OmFmdGVyIHtcbiAgICBjbGVhcjogYm90aDsgfVxuICAubmF2ID4gbGkge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICBkaXNwbGF5OiBibG9jazsgfVxuICAgIC5uYXYgPiBsaSA+IGEge1xuICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICBwYWRkaW5nOiAxMHB4IDE1cHg7IH1cbiAgICAgIC5uYXYgPiBsaSA+IGE6aG92ZXIsIC5uYXYgPiBsaSA+IGE6Zm9jdXMge1xuICAgICAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6ICNlZWVlZWU7IH1cbiAgICAubmF2ID4gbGkuZGlzYWJsZWQgPiBhIHtcbiAgICAgIGNvbG9yOiAjNzc3Nzc3OyB9XG4gICAgICAubmF2ID4gbGkuZGlzYWJsZWQgPiBhOmhvdmVyLCAubmF2ID4gbGkuZGlzYWJsZWQgPiBhOmZvY3VzIHtcbiAgICAgICAgY29sb3I6ICM3Nzc3Nzc7XG4gICAgICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gICAgICAgIGN1cnNvcjogbm90LWFsbG93ZWQ7IH1cbiAgLm5hdiAub3BlbiA+IGEsIC5uYXYgLm9wZW4gPiBhOmhvdmVyLCAubmF2IC5vcGVuID4gYTpmb2N1cyB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogI2VlZWVlZTtcbiAgICBib3JkZXItY29sb3I6ICMzMzdhYjc7IH1cbiAgLm5hdiAubmF2LWRpdmlkZXIge1xuICAgIGhlaWdodDogMXB4O1xuICAgIG1hcmdpbjogOXB4IDA7XG4gICAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjZTVlNWU1OyB9XG4gIC5uYXYgPiBsaSA+IGEgPiBpbWcge1xuICAgIG1heC13aWR0aDogbm9uZTsgfVxuXG4ubmF2LXRhYnMge1xuICBib3JkZXItYm90dG9tOiAxcHggc29saWQgI2RkZDsgfVxuICAubmF2LXRhYnMgPiBsaSB7XG4gICAgZmxvYXQ6IGxlZnQ7XG4gICAgbWFyZ2luLWJvdHRvbTogLTFweDsgfVxuICAgIC5uYXYtdGFicyA+IGxpID4gYSB7XG4gICAgICBtYXJnaW4tcmlnaHQ6IDJweDtcbiAgICAgIGxpbmUtaGVpZ2h0OiAxLjQyODU3O1xuICAgICAgYm9yZGVyOiAxcHggc29saWQgdHJhbnNwYXJlbnQ7XG4gICAgICBib3JkZXItcmFkaXVzOiA0cHggNHB4IDAgMDsgfVxuICAgICAgLm5hdi10YWJzID4gbGkgPiBhOmhvdmVyIHtcbiAgICAgICAgYm9yZGVyLWNvbG9yOiAjZWVlZWVlICNlZWVlZWUgI2RkZDsgfVxuICAgIC5uYXYtdGFicyA+IGxpLmFjdGl2ZSA+IGEsIC5uYXYtdGFicyA+IGxpLmFjdGl2ZSA+IGE6aG92ZXIsIC5uYXYtdGFicyA+IGxpLmFjdGl2ZSA+IGE6Zm9jdXMge1xuICAgICAgY29sb3I6ICM1NTU1NTU7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjZmZmO1xuICAgICAgYm9yZGVyOiAxcHggc29saWQgI2RkZDtcbiAgICAgIGJvcmRlci1ib3R0b20tY29sb3I6IHRyYW5zcGFyZW50O1xuICAgICAgY3Vyc29yOiBkZWZhdWx0OyB9XG5cbi5uYXYtcGlsbHMgPiBsaSB7XG4gIGZsb2F0OiBsZWZ0OyB9XG4gIC5uYXYtcGlsbHMgPiBsaSA+IGEge1xuICAgIGJvcmRlci1yYWRpdXM6IDRweDsgfVxuICAubmF2LXBpbGxzID4gbGkgKyBsaSB7XG4gICAgbWFyZ2luLWxlZnQ6IDJweDsgfVxuICAubmF2LXBpbGxzID4gbGkuYWN0aXZlID4gYSwgLm5hdi1waWxscyA+IGxpLmFjdGl2ZSA+IGE6aG92ZXIsIC5uYXYtcGlsbHMgPiBsaS5hY3RpdmUgPiBhOmZvY3VzIHtcbiAgICBjb2xvcjogI2ZmZjtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjMzM3YWI3OyB9XG5cbi5uYXYtc3RhY2tlZCA+IGxpIHtcbiAgZmxvYXQ6IG5vbmU7IH1cbiAgLm5hdi1zdGFja2VkID4gbGkgKyBsaSB7XG4gICAgbWFyZ2luLXRvcDogMnB4O1xuICAgIG1hcmdpbi1sZWZ0OiAwOyB9XG5cbi5uYXYtanVzdGlmaWVkLCAubmF2LXRhYnMubmF2LWp1c3RpZmllZCB7XG4gIHdpZHRoOiAxMDAlOyB9XG4gIC5uYXYtanVzdGlmaWVkID4gbGksIC5uYXYtdGFicy5uYXYtanVzdGlmaWVkID4gbGkge1xuICAgIGZsb2F0OiBub25lOyB9XG4gICAgLm5hdi1qdXN0aWZpZWQgPiBsaSA+IGEsIC5uYXYtdGFicy5uYXYtanVzdGlmaWVkID4gbGkgPiBhIHtcbiAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICAgIG1hcmdpbi1ib3R0b206IDVweDsgfVxuICAubmF2LWp1c3RpZmllZCA+IC5kcm9wZG93biAuZHJvcGRvd24tbWVudSB7XG4gICAgdG9wOiBhdXRvO1xuICAgIGxlZnQ6IGF1dG87IH1cbiAgQG1lZGlhIChtaW4td2lkdGg6IDc2OHB4KSB7XG4gICAgLm5hdi1qdXN0aWZpZWQgPiBsaSwgLm5hdi10YWJzLm5hdi1qdXN0aWZpZWQgPiBsaSB7XG4gICAgICBkaXNwbGF5OiB0YWJsZS1jZWxsO1xuICAgICAgd2lkdGg6IDElOyB9XG4gICAgICAubmF2LWp1c3RpZmllZCA+IGxpID4gYSwgLm5hdi10YWJzLm5hdi1qdXN0aWZpZWQgPiBsaSA+IGEge1xuICAgICAgICBtYXJnaW4tYm90dG9tOiAwOyB9IH1cblxuLm5hdi10YWJzLWp1c3RpZmllZCwgLm5hdi10YWJzLm5hdi1qdXN0aWZpZWQge1xuICBib3JkZXItYm90dG9tOiAwOyB9XG4gIC5uYXYtdGFicy1qdXN0aWZpZWQgPiBsaSA+IGEsIC5uYXYtdGFicy5uYXYtanVzdGlmaWVkID4gbGkgPiBhIHtcbiAgICBtYXJnaW4tcmlnaHQ6IDA7XG4gICAgYm9yZGVyLXJhZGl1czogNHB4OyB9XG4gIC5uYXYtdGFicy1qdXN0aWZpZWQgPiAuYWN0aXZlID4gYSwgLm5hdi10YWJzLm5hdi1qdXN0aWZpZWQgPiAuYWN0aXZlID4gYSxcbiAgLm5hdi10YWJzLWp1c3RpZmllZCA+IC5hY3RpdmUgPiBhOmhvdmVyLCAubmF2LXRhYnMubmF2LWp1c3RpZmllZCA+IC5hY3RpdmUgPiBhOmhvdmVyLFxuICAubmF2LXRhYnMtanVzdGlmaWVkID4gLmFjdGl2ZSA+IGE6Zm9jdXMsIC5uYXYtdGFicy5uYXYtanVzdGlmaWVkID4gLmFjdGl2ZSA+IGE6Zm9jdXMge1xuICAgIGJvcmRlcjogMXB4IHNvbGlkICNkZGQ7IH1cbiAgQG1lZGlhIChtaW4td2lkdGg6IDc2OHB4KSB7XG4gICAgLm5hdi10YWJzLWp1c3RpZmllZCA+IGxpID4gYSwgLm5hdi10YWJzLm5hdi1qdXN0aWZpZWQgPiBsaSA+IGEge1xuICAgICAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkICNkZGQ7XG4gICAgICBib3JkZXItcmFkaXVzOiA0cHggNHB4IDAgMDsgfVxuICAgIC5uYXYtdGFicy1qdXN0aWZpZWQgPiAuYWN0aXZlID4gYSwgLm5hdi10YWJzLm5hdi1qdXN0aWZpZWQgPiAuYWN0aXZlID4gYSxcbiAgICAubmF2LXRhYnMtanVzdGlmaWVkID4gLmFjdGl2ZSA+IGE6aG92ZXIsIC5uYXYtdGFicy5uYXYtanVzdGlmaWVkID4gLmFjdGl2ZSA+IGE6aG92ZXIsXG4gICAgLm5hdi10YWJzLWp1c3RpZmllZCA+IC5hY3RpdmUgPiBhOmZvY3VzLCAubmF2LXRhYnMubmF2LWp1c3RpZmllZCA+IC5hY3RpdmUgPiBhOmZvY3VzIHtcbiAgICAgIGJvcmRlci1ib3R0b20tY29sb3I6ICNmZmY7IH0gfVxuXG4udGFiLWNvbnRlbnQgPiAudGFiLXBhbmUge1xuICBkaXNwbGF5OiBub25lOyB9XG5cbi50YWItY29udGVudCA+IC5hY3RpdmUge1xuICBkaXNwbGF5OiBibG9jazsgfVxuXG4ubmF2LXRhYnMgLmRyb3Bkb3duLW1lbnUge1xuICBtYXJnaW4tdG9wOiAtMXB4O1xuICBib3JkZXItdG9wLXJpZ2h0LXJhZGl1czogMDtcbiAgYm9yZGVyLXRvcC1sZWZ0LXJhZGl1czogMDsgfVxuXG4ubmF2YmFyIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBtaW4taGVpZ2h0OiA1MHB4O1xuICBtYXJnaW4tYm90dG9tOiAyMHB4O1xuICBib3JkZXI6IDFweCBzb2xpZCB0cmFuc3BhcmVudDsgfVxuICAubmF2YmFyOmJlZm9yZSwgLm5hdmJhcjphZnRlciB7XG4gICAgY29udGVudDogXCIgXCI7XG4gICAgZGlzcGxheTogdGFibGU7IH1cbiAgLm5hdmJhcjphZnRlciB7XG4gICAgY2xlYXI6IGJvdGg7IH1cbiAgQG1lZGlhIChtaW4td2lkdGg6IDc2OHB4KSB7XG4gICAgLm5hdmJhciB7XG4gICAgICBib3JkZXItcmFkaXVzOiA0cHg7IH0gfVxuXG4ubmF2YmFyLWhlYWRlcjpiZWZvcmUsIC5uYXZiYXItaGVhZGVyOmFmdGVyIHtcbiAgY29udGVudDogXCIgXCI7XG4gIGRpc3BsYXk6IHRhYmxlOyB9XG5cbi5uYXZiYXItaGVhZGVyOmFmdGVyIHtcbiAgY2xlYXI6IGJvdGg7IH1cblxuQG1lZGlhIChtaW4td2lkdGg6IDc2OHB4KSB7XG4gIC5uYXZiYXItaGVhZGVyIHtcbiAgICBmbG9hdDogbGVmdDsgfSB9XG5cbi5uYXZiYXItY29sbGFwc2Uge1xuICBvdmVyZmxvdy14OiB2aXNpYmxlO1xuICBwYWRkaW5nLXJpZ2h0OiAxNXB4O1xuICBwYWRkaW5nLWxlZnQ6IDE1cHg7XG4gIGJvcmRlci10b3A6IDFweCBzb2xpZCB0cmFuc3BhcmVudDtcbiAgYm94LXNoYWRvdzogaW5zZXQgMCAxcHggMCByZ2JhKDI1NSwgMjU1LCAyNTUsIDAuMSk7XG4gIC13ZWJraXQtb3ZlcmZsb3ctc2Nyb2xsaW5nOiB0b3VjaDsgfVxuICAubmF2YmFyLWNvbGxhcHNlOmJlZm9yZSwgLm5hdmJhci1jb2xsYXBzZTphZnRlciB7XG4gICAgY29udGVudDogXCIgXCI7XG4gICAgZGlzcGxheTogdGFibGU7IH1cbiAgLm5hdmJhci1jb2xsYXBzZTphZnRlciB7XG4gICAgY2xlYXI6IGJvdGg7IH1cbiAgLm5hdmJhci1jb2xsYXBzZS5pbiB7XG4gICAgb3ZlcmZsb3cteTogYXV0bzsgfVxuICBAbWVkaWEgKG1pbi13aWR0aDogNzY4cHgpIHtcbiAgICAubmF2YmFyLWNvbGxhcHNlIHtcbiAgICAgIHdpZHRoOiBhdXRvO1xuICAgICAgYm9yZGVyLXRvcDogMDtcbiAgICAgIGJveC1zaGFkb3c6IG5vbmU7IH1cbiAgICAgIC5uYXZiYXItY29sbGFwc2UuY29sbGFwc2Uge1xuICAgICAgICBkaXNwbGF5OiBibG9jayAhaW1wb3J0YW50O1xuICAgICAgICBoZWlnaHQ6IGF1dG8gIWltcG9ydGFudDtcbiAgICAgICAgcGFkZGluZy1ib3R0b206IDA7XG4gICAgICAgIG92ZXJmbG93OiB2aXNpYmxlICFpbXBvcnRhbnQ7IH1cbiAgICAgIC5uYXZiYXItY29sbGFwc2UuaW4ge1xuICAgICAgICBvdmVyZmxvdy15OiB2aXNpYmxlOyB9XG4gICAgICAubmF2YmFyLWZpeGVkLXRvcCAubmF2YmFyLWNvbGxhcHNlLFxuICAgICAgLm5hdmJhci1zdGF0aWMtdG9wIC5uYXZiYXItY29sbGFwc2UsXG4gICAgICAubmF2YmFyLWZpeGVkLWJvdHRvbSAubmF2YmFyLWNvbGxhcHNlIHtcbiAgICAgICAgcGFkZGluZy1sZWZ0OiAwO1xuICAgICAgICBwYWRkaW5nLXJpZ2h0OiAwOyB9IH1cblxuLm5hdmJhci1maXhlZC10b3AgLm5hdmJhci1jb2xsYXBzZSxcbi5uYXZiYXItZml4ZWQtYm90dG9tIC5uYXZiYXItY29sbGFwc2Uge1xuICBtYXgtaGVpZ2h0OiAzNDBweDsgfVxuICBAbWVkaWEgKG1heC1kZXZpY2Utd2lkdGg6IDQ4MHB4KSBhbmQgKG9yaWVudGF0aW9uOiBsYW5kc2NhcGUpIHtcbiAgICAubmF2YmFyLWZpeGVkLXRvcCAubmF2YmFyLWNvbGxhcHNlLFxuICAgIC5uYXZiYXItZml4ZWQtYm90dG9tIC5uYXZiYXItY29sbGFwc2Uge1xuICAgICAgbWF4LWhlaWdodDogMjAwcHg7IH0gfVxuXG4uY29udGFpbmVyID4gLm5hdmJhci1oZWFkZXIsXG4uY29udGFpbmVyID4gLm5hdmJhci1jb2xsYXBzZSxcbi5jb250YWluZXItZmx1aWQgPiAubmF2YmFyLWhlYWRlcixcbi5jb250YWluZXItZmx1aWQgPiAubmF2YmFyLWNvbGxhcHNlIHtcbiAgbWFyZ2luLXJpZ2h0OiAtMTVweDtcbiAgbWFyZ2luLWxlZnQ6IC0xNXB4OyB9XG4gIEBtZWRpYSAobWluLXdpZHRoOiA3NjhweCkge1xuICAgIC5jb250YWluZXIgPiAubmF2YmFyLWhlYWRlcixcbiAgICAuY29udGFpbmVyID4gLm5hdmJhci1jb2xsYXBzZSxcbiAgICAuY29udGFpbmVyLWZsdWlkID4gLm5hdmJhci1oZWFkZXIsXG4gICAgLmNvbnRhaW5lci1mbHVpZCA+IC5uYXZiYXItY29sbGFwc2Uge1xuICAgICAgbWFyZ2luLXJpZ2h0OiAwO1xuICAgICAgbWFyZ2luLWxlZnQ6IDA7IH0gfVxuXG4ubmF2YmFyLXN0YXRpYy10b3Age1xuICB6LWluZGV4OiAxMDAwO1xuICBib3JkZXItd2lkdGg6IDAgMCAxcHg7IH1cbiAgQG1lZGlhIChtaW4td2lkdGg6IDc2OHB4KSB7XG4gICAgLm5hdmJhci1zdGF0aWMtdG9wIHtcbiAgICAgIGJvcmRlci1yYWRpdXM6IDA7IH0gfVxuXG4ubmF2YmFyLWZpeGVkLXRvcCxcbi5uYXZiYXItZml4ZWQtYm90dG9tIHtcbiAgcG9zaXRpb246IGZpeGVkO1xuICByaWdodDogMDtcbiAgbGVmdDogMDtcbiAgei1pbmRleDogMTAzMDsgfVxuICBAbWVkaWEgKG1pbi13aWR0aDogNzY4cHgpIHtcbiAgICAubmF2YmFyLWZpeGVkLXRvcCxcbiAgICAubmF2YmFyLWZpeGVkLWJvdHRvbSB7XG4gICAgICBib3JkZXItcmFkaXVzOiAwOyB9IH1cblxuLm5hdmJhci1maXhlZC10b3Age1xuICB0b3A6IDA7XG4gIGJvcmRlci13aWR0aDogMCAwIDFweDsgfVxuXG4ubmF2YmFyLWZpeGVkLWJvdHRvbSB7XG4gIGJvdHRvbTogMDtcbiAgbWFyZ2luLWJvdHRvbTogMDtcbiAgYm9yZGVyLXdpZHRoOiAxcHggMCAwOyB9XG5cbi5uYXZiYXItYnJhbmQge1xuICBmbG9hdDogbGVmdDtcbiAgcGFkZGluZzogMTVweCAxNXB4O1xuICBmb250LXNpemU6IDE4cHg7XG4gIGxpbmUtaGVpZ2h0OiAyMHB4O1xuICBoZWlnaHQ6IDUwcHg7IH1cbiAgLm5hdmJhci1icmFuZDpob3ZlciwgLm5hdmJhci1icmFuZDpmb2N1cyB7XG4gICAgdGV4dC1kZWNvcmF0aW9uOiBub25lOyB9XG4gIC5uYXZiYXItYnJhbmQgPiBpbWcge1xuICAgIGRpc3BsYXk6IGJsb2NrOyB9XG4gIEBtZWRpYSAobWluLXdpZHRoOiA3NjhweCkge1xuICAgIC5uYXZiYXIgPiAuY29udGFpbmVyIC5uYXZiYXItYnJhbmQsXG4gICAgLm5hdmJhciA+IC5jb250YWluZXItZmx1aWQgLm5hdmJhci1icmFuZCB7XG4gICAgICBtYXJnaW4tbGVmdDogLTE1cHg7IH0gfVxuXG4ubmF2YmFyLXRvZ2dsZSB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgZmxvYXQ6IHJpZ2h0O1xuICBtYXJnaW4tcmlnaHQ6IDE1cHg7XG4gIHBhZGRpbmc6IDlweCAxMHB4O1xuICBtYXJnaW4tdG9wOiA4cHg7XG4gIG1hcmdpbi1ib3R0b206IDhweDtcbiAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gIGJhY2tncm91bmQtaW1hZ2U6IG5vbmU7XG4gIGJvcmRlcjogMXB4IHNvbGlkIHRyYW5zcGFyZW50O1xuICBib3JkZXItcmFkaXVzOiA0cHg7IH1cbiAgLm5hdmJhci10b2dnbGU6Zm9jdXMge1xuICAgIG91dGxpbmU6IDA7IH1cbiAgLm5hdmJhci10b2dnbGUgLmljb24tYmFyIHtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICB3aWR0aDogMjJweDtcbiAgICBoZWlnaHQ6IDJweDtcbiAgICBib3JkZXItcmFkaXVzOiAxcHg7IH1cbiAgLm5hdmJhci10b2dnbGUgLmljb24tYmFyICsgLmljb24tYmFyIHtcbiAgICBtYXJnaW4tdG9wOiA0cHg7IH1cbiAgQG1lZGlhIChtaW4td2lkdGg6IDc2OHB4KSB7XG4gICAgLm5hdmJhci10b2dnbGUge1xuICAgICAgZGlzcGxheTogbm9uZTsgfSB9XG5cbi5uYXZiYXItbmF2IHtcbiAgbWFyZ2luOiA3LjVweCAtMTVweDsgfVxuICAubmF2YmFyLW5hdiA+IGxpID4gYSB7XG4gICAgcGFkZGluZy10b3A6IDEwcHg7XG4gICAgcGFkZGluZy1ib3R0b206IDEwcHg7XG4gICAgbGluZS1oZWlnaHQ6IDIwcHg7IH1cbiAgQG1lZGlhIChtYXgtd2lkdGg6IDc2N3B4KSB7XG4gICAgLm5hdmJhci1uYXYgLm9wZW4gLmRyb3Bkb3duLW1lbnUge1xuICAgICAgcG9zaXRpb246IHN0YXRpYztcbiAgICAgIGZsb2F0OiBub25lO1xuICAgICAgd2lkdGg6IGF1dG87XG4gICAgICBtYXJnaW4tdG9wOiAwO1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gICAgICBib3JkZXI6IDA7XG4gICAgICBib3gtc2hhZG93OiBub25lOyB9XG4gICAgICAubmF2YmFyLW5hdiAub3BlbiAuZHJvcGRvd24tbWVudSA+IGxpID4gYSxcbiAgICAgIC5uYXZiYXItbmF2IC5vcGVuIC5kcm9wZG93bi1tZW51IC5kcm9wZG93bi1oZWFkZXIge1xuICAgICAgICBwYWRkaW5nOiA1cHggMTVweCA1cHggMjVweDsgfVxuICAgICAgLm5hdmJhci1uYXYgLm9wZW4gLmRyb3Bkb3duLW1lbnUgPiBsaSA+IGEge1xuICAgICAgICBsaW5lLWhlaWdodDogMjBweDsgfVxuICAgICAgICAubmF2YmFyLW5hdiAub3BlbiAuZHJvcGRvd24tbWVudSA+IGxpID4gYTpob3ZlciwgLm5hdmJhci1uYXYgLm9wZW4gLmRyb3Bkb3duLW1lbnUgPiBsaSA+IGE6Zm9jdXMge1xuICAgICAgICAgIGJhY2tncm91bmQtaW1hZ2U6IG5vbmU7IH0gfVxuICBAbWVkaWEgKG1pbi13aWR0aDogNzY4cHgpIHtcbiAgICAubmF2YmFyLW5hdiB7XG4gICAgICBmbG9hdDogbGVmdDtcbiAgICAgIG1hcmdpbjogMDsgfVxuICAgICAgLm5hdmJhci1uYXYgPiBsaSB7XG4gICAgICAgIGZsb2F0OiBsZWZ0OyB9XG4gICAgICAgIC5uYXZiYXItbmF2ID4gbGkgPiBhIHtcbiAgICAgICAgICBwYWRkaW5nLXRvcDogMTVweDtcbiAgICAgICAgICBwYWRkaW5nLWJvdHRvbTogMTVweDsgfSB9XG5cbi5uYXZiYXItZm9ybSB7XG4gIG1hcmdpbi1sZWZ0OiAtMTVweDtcbiAgbWFyZ2luLXJpZ2h0OiAtMTVweDtcbiAgcGFkZGluZzogMTBweCAxNXB4O1xuICBib3JkZXItdG9wOiAxcHggc29saWQgdHJhbnNwYXJlbnQ7XG4gIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCB0cmFuc3BhcmVudDtcbiAgLXdlYmtpdC1ib3gtc2hhZG93OiBpbnNldCAwIDFweCAwIHJnYmEoMjU1LCAyNTUsIDI1NSwgMC4xKSwgMCAxcHggMCByZ2JhKDI1NSwgMjU1LCAyNTUsIDAuMSk7XG4gIGJveC1zaGFkb3c6IGluc2V0IDAgMXB4IDAgcmdiYSgyNTUsIDI1NSwgMjU1LCAwLjEpLCAwIDFweCAwIHJnYmEoMjU1LCAyNTUsIDI1NSwgMC4xKTtcbiAgbWFyZ2luLXRvcDogOHB4O1xuICBtYXJnaW4tYm90dG9tOiA4cHg7IH1cbiAgQG1lZGlhIChtaW4td2lkdGg6IDc2OHB4KSB7XG4gICAgLm5hdmJhci1mb3JtIC5mb3JtLWdyb3VwIHtcbiAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICAgIG1hcmdpbi1ib3R0b206IDA7XG4gICAgICB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlOyB9XG4gICAgLm5hdmJhci1mb3JtIC5mb3JtLWNvbnRyb2wge1xuICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgICAgd2lkdGg6IGF1dG87XG4gICAgICB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlOyB9XG4gICAgLm5hdmJhci1mb3JtIC5mb3JtLWNvbnRyb2wtc3RhdGljIHtcbiAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jazsgfVxuICAgIC5uYXZiYXItZm9ybSAuaW5wdXQtZ3JvdXAge1xuICAgICAgZGlzcGxheTogaW5saW5lLXRhYmxlO1xuICAgICAgdmVydGljYWwtYWxpZ246IG1pZGRsZTsgfVxuICAgICAgLm5hdmJhci1mb3JtIC5pbnB1dC1ncm91cCAuaW5wdXQtZ3JvdXAtYWRkb24sXG4gICAgICAubmF2YmFyLWZvcm0gLmlucHV0LWdyb3VwIC5pbnB1dC1ncm91cC1idG4sXG4gICAgICAubmF2YmFyLWZvcm0gLmlucHV0LWdyb3VwIC5mb3JtLWNvbnRyb2wge1xuICAgICAgICB3aWR0aDogYXV0bzsgfVxuICAgIC5uYXZiYXItZm9ybSAuaW5wdXQtZ3JvdXAgPiAuZm9ybS1jb250cm9sIHtcbiAgICAgIHdpZHRoOiAxMDAlOyB9XG4gICAgLm5hdmJhci1mb3JtIC5jb250cm9sLWxhYmVsIHtcbiAgICAgIG1hcmdpbi1ib3R0b206IDA7XG4gICAgICB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlOyB9XG4gICAgLm5hdmJhci1mb3JtIC5yYWRpbyxcbiAgICAubmF2YmFyLWZvcm0gLmNoZWNrYm94IHtcbiAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICAgIG1hcmdpbi10b3A6IDA7XG4gICAgICBtYXJnaW4tYm90dG9tOiAwO1xuICAgICAgdmVydGljYWwtYWxpZ246IG1pZGRsZTsgfVxuICAgICAgLm5hdmJhci1mb3JtIC5yYWRpbyBsYWJlbCxcbiAgICAgIC5uYXZiYXItZm9ybSAuY2hlY2tib3ggbGFiZWwge1xuICAgICAgICBwYWRkaW5nLWxlZnQ6IDA7IH1cbiAgICAubmF2YmFyLWZvcm0gLnJhZGlvIGlucHV0W3R5cGU9XCJyYWRpb1wiXSxcbiAgICAubmF2YmFyLWZvcm0gLmNoZWNrYm94IGlucHV0W3R5cGU9XCJjaGVja2JveFwiXSB7XG4gICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICBtYXJnaW4tbGVmdDogMDsgfVxuICAgIC5uYXZiYXItZm9ybSAuaGFzLWZlZWRiYWNrIC5mb3JtLWNvbnRyb2wtZmVlZGJhY2sge1xuICAgICAgdG9wOiAwOyB9IH1cbiAgQG1lZGlhIChtYXgtd2lkdGg6IDc2N3B4KSB7XG4gICAgLm5hdmJhci1mb3JtIC5mb3JtLWdyb3VwIHtcbiAgICAgIG1hcmdpbi1ib3R0b206IDVweDsgfVxuICAgICAgLm5hdmJhci1mb3JtIC5mb3JtLWdyb3VwOmxhc3QtY2hpbGQge1xuICAgICAgICBtYXJnaW4tYm90dG9tOiAwOyB9IH1cbiAgQG1lZGlhIChtaW4td2lkdGg6IDc2OHB4KSB7XG4gICAgLm5hdmJhci1mb3JtIHtcbiAgICAgIHdpZHRoOiBhdXRvO1xuICAgICAgYm9yZGVyOiAwO1xuICAgICAgbWFyZ2luLWxlZnQ6IDA7XG4gICAgICBtYXJnaW4tcmlnaHQ6IDA7XG4gICAgICBwYWRkaW5nLXRvcDogMDtcbiAgICAgIHBhZGRpbmctYm90dG9tOiAwO1xuICAgICAgLXdlYmtpdC1ib3gtc2hhZG93OiBub25lO1xuICAgICAgYm94LXNoYWRvdzogbm9uZTsgfSB9XG5cbi5uYXZiYXItbmF2ID4gbGkgPiAuZHJvcGRvd24tbWVudSB7XG4gIG1hcmdpbi10b3A6IDA7XG4gIGJvcmRlci10b3AtcmlnaHQtcmFkaXVzOiAwO1xuICBib3JkZXItdG9wLWxlZnQtcmFkaXVzOiAwOyB9XG5cbi5uYXZiYXItZml4ZWQtYm90dG9tIC5uYXZiYXItbmF2ID4gbGkgPiAuZHJvcGRvd24tbWVudSB7XG4gIG1hcmdpbi1ib3R0b206IDA7XG4gIGJvcmRlci10b3AtcmlnaHQtcmFkaXVzOiA0cHg7XG4gIGJvcmRlci10b3AtbGVmdC1yYWRpdXM6IDRweDtcbiAgYm9yZGVyLWJvdHRvbS1yaWdodC1yYWRpdXM6IDA7XG4gIGJvcmRlci1ib3R0b20tbGVmdC1yYWRpdXM6IDA7IH1cblxuLm5hdmJhci1idG4ge1xuICBtYXJnaW4tdG9wOiA4cHg7XG4gIG1hcmdpbi1ib3R0b206IDhweDsgfVxuICAubmF2YmFyLWJ0bi5idG4tc20sIC5idG4tZ3JvdXAtc20gPiAubmF2YmFyLWJ0bi5idG4ge1xuICAgIG1hcmdpbi10b3A6IDEwcHg7XG4gICAgbWFyZ2luLWJvdHRvbTogMTBweDsgfVxuICAubmF2YmFyLWJ0bi5idG4teHMsIC5idG4tZ3JvdXAteHMgPiAubmF2YmFyLWJ0bi5idG4ge1xuICAgIG1hcmdpbi10b3A6IDE0cHg7XG4gICAgbWFyZ2luLWJvdHRvbTogMTRweDsgfVxuXG4ubmF2YmFyLXRleHQge1xuICBtYXJnaW4tdG9wOiAxNXB4O1xuICBtYXJnaW4tYm90dG9tOiAxNXB4OyB9XG4gIEBtZWRpYSAobWluLXdpZHRoOiA3NjhweCkge1xuICAgIC5uYXZiYXItdGV4dCB7XG4gICAgICBmbG9hdDogbGVmdDtcbiAgICAgIG1hcmdpbi1sZWZ0OiAxNXB4O1xuICAgICAgbWFyZ2luLXJpZ2h0OiAxNXB4OyB9IH1cblxuQG1lZGlhIChtaW4td2lkdGg6IDc2OHB4KSB7XG4gIC5uYXZiYXItbGVmdCB7XG4gICAgZmxvYXQ6IGxlZnQgIWltcG9ydGFudDsgfVxuICAubmF2YmFyLXJpZ2h0IHtcbiAgICBmbG9hdDogcmlnaHQgIWltcG9ydGFudDtcbiAgICBtYXJnaW4tcmlnaHQ6IC0xNXB4OyB9XG4gICAgLm5hdmJhci1yaWdodCB+IC5uYXZiYXItcmlnaHQge1xuICAgICAgbWFyZ2luLXJpZ2h0OiAwOyB9IH1cblxuLm5hdmJhci1kZWZhdWx0IHtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2Y4ZjhmODtcbiAgYm9yZGVyLWNvbG9yOiAjZTdlN2U3OyB9XG4gIC5uYXZiYXItZGVmYXVsdCAubmF2YmFyLWJyYW5kIHtcbiAgICBjb2xvcjogIzc3NzsgfVxuICAgIC5uYXZiYXItZGVmYXVsdCAubmF2YmFyLWJyYW5kOmhvdmVyLCAubmF2YmFyLWRlZmF1bHQgLm5hdmJhci1icmFuZDpmb2N1cyB7XG4gICAgICBjb2xvcjogIzVlNWU1ZTtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50OyB9XG4gIC5uYXZiYXItZGVmYXVsdCAubmF2YmFyLXRleHQge1xuICAgIGNvbG9yOiAjNzc3OyB9XG4gIC5uYXZiYXItZGVmYXVsdCAubmF2YmFyLW5hdiA+IGxpID4gYSB7XG4gICAgY29sb3I6ICM3Nzc7IH1cbiAgICAubmF2YmFyLWRlZmF1bHQgLm5hdmJhci1uYXYgPiBsaSA+IGE6aG92ZXIsIC5uYXZiYXItZGVmYXVsdCAubmF2YmFyLW5hdiA+IGxpID4gYTpmb2N1cyB7XG4gICAgICBjb2xvcjogIzMzMztcbiAgICAgIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50OyB9XG4gIC5uYXZiYXItZGVmYXVsdCAubmF2YmFyLW5hdiA+IC5hY3RpdmUgPiBhLCAubmF2YmFyLWRlZmF1bHQgLm5hdmJhci1uYXYgPiAuYWN0aXZlID4gYTpob3ZlciwgLm5hdmJhci1kZWZhdWx0IC5uYXZiYXItbmF2ID4gLmFjdGl2ZSA+IGE6Zm9jdXMge1xuICAgIGNvbG9yOiAjNTU1O1xuICAgIGJhY2tncm91bmQtY29sb3I6ICNlN2U3ZTc7IH1cbiAgLm5hdmJhci1kZWZhdWx0IC5uYXZiYXItbmF2ID4gLmRpc2FibGVkID4gYSwgLm5hdmJhci1kZWZhdWx0IC5uYXZiYXItbmF2ID4gLmRpc2FibGVkID4gYTpob3ZlciwgLm5hdmJhci1kZWZhdWx0IC5uYXZiYXItbmF2ID4gLmRpc2FibGVkID4gYTpmb2N1cyB7XG4gICAgY29sb3I6ICNjY2M7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7IH1cbiAgLm5hdmJhci1kZWZhdWx0IC5uYXZiYXItdG9nZ2xlIHtcbiAgICBib3JkZXItY29sb3I6ICNkZGQ7IH1cbiAgICAubmF2YmFyLWRlZmF1bHQgLm5hdmJhci10b2dnbGU6aG92ZXIsIC5uYXZiYXItZGVmYXVsdCAubmF2YmFyLXRvZ2dsZTpmb2N1cyB7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjZGRkOyB9XG4gICAgLm5hdmJhci1kZWZhdWx0IC5uYXZiYXItdG9nZ2xlIC5pY29uLWJhciB7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjODg4OyB9XG4gIC5uYXZiYXItZGVmYXVsdCAubmF2YmFyLWNvbGxhcHNlLFxuICAubmF2YmFyLWRlZmF1bHQgLm5hdmJhci1mb3JtIHtcbiAgICBib3JkZXItY29sb3I6ICNlN2U3ZTc7IH1cbiAgLm5hdmJhci1kZWZhdWx0IC5uYXZiYXItbmF2ID4gLm9wZW4gPiBhLCAubmF2YmFyLWRlZmF1bHQgLm5hdmJhci1uYXYgPiAub3BlbiA+IGE6aG92ZXIsIC5uYXZiYXItZGVmYXVsdCAubmF2YmFyLW5hdiA+IC5vcGVuID4gYTpmb2N1cyB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogI2U3ZTdlNztcbiAgICBjb2xvcjogIzU1NTsgfVxuICBAbWVkaWEgKG1heC13aWR0aDogNzY3cHgpIHtcbiAgICAubmF2YmFyLWRlZmF1bHQgLm5hdmJhci1uYXYgLm9wZW4gLmRyb3Bkb3duLW1lbnUgPiBsaSA+IGEge1xuICAgICAgY29sb3I6ICM3Nzc7IH1cbiAgICAgIC5uYXZiYXItZGVmYXVsdCAubmF2YmFyLW5hdiAub3BlbiAuZHJvcGRvd24tbWVudSA+IGxpID4gYTpob3ZlciwgLm5hdmJhci1kZWZhdWx0IC5uYXZiYXItbmF2IC5vcGVuIC5kcm9wZG93bi1tZW51ID4gbGkgPiBhOmZvY3VzIHtcbiAgICAgICAgY29sb3I6ICMzMzM7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50OyB9XG4gICAgLm5hdmJhci1kZWZhdWx0IC5uYXZiYXItbmF2IC5vcGVuIC5kcm9wZG93bi1tZW51ID4gLmFjdGl2ZSA+IGEsIC5uYXZiYXItZGVmYXVsdCAubmF2YmFyLW5hdiAub3BlbiAuZHJvcGRvd24tbWVudSA+IC5hY3RpdmUgPiBhOmhvdmVyLCAubmF2YmFyLWRlZmF1bHQgLm5hdmJhci1uYXYgLm9wZW4gLmRyb3Bkb3duLW1lbnUgPiAuYWN0aXZlID4gYTpmb2N1cyB7XG4gICAgICBjb2xvcjogIzU1NTtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6ICNlN2U3ZTc7IH1cbiAgICAubmF2YmFyLWRlZmF1bHQgLm5hdmJhci1uYXYgLm9wZW4gLmRyb3Bkb3duLW1lbnUgPiAuZGlzYWJsZWQgPiBhLCAubmF2YmFyLWRlZmF1bHQgLm5hdmJhci1uYXYgLm9wZW4gLmRyb3Bkb3duLW1lbnUgPiAuZGlzYWJsZWQgPiBhOmhvdmVyLCAubmF2YmFyLWRlZmF1bHQgLm5hdmJhci1uYXYgLm9wZW4gLmRyb3Bkb3duLW1lbnUgPiAuZGlzYWJsZWQgPiBhOmZvY3VzIHtcbiAgICAgIGNvbG9yOiAjY2NjO1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7IH0gfVxuICAubmF2YmFyLWRlZmF1bHQgLm5hdmJhci1saW5rIHtcbiAgICBjb2xvcjogIzc3NzsgfVxuICAgIC5uYXZiYXItZGVmYXVsdCAubmF2YmFyLWxpbms6aG92ZXIge1xuICAgICAgY29sb3I6ICMzMzM7IH1cbiAgLm5hdmJhci1kZWZhdWx0IC5idG4tbGluayB7XG4gICAgY29sb3I6ICM3Nzc7IH1cbiAgICAubmF2YmFyLWRlZmF1bHQgLmJ0bi1saW5rOmhvdmVyLCAubmF2YmFyLWRlZmF1bHQgLmJ0bi1saW5rOmZvY3VzIHtcbiAgICAgIGNvbG9yOiAjMzMzOyB9XG4gICAgLm5hdmJhci1kZWZhdWx0IC5idG4tbGlua1tkaXNhYmxlZF06aG92ZXIsIC5uYXZiYXItZGVmYXVsdCAuYnRuLWxpbmtbZGlzYWJsZWRdOmZvY3VzLFxuICAgIGZpZWxkc2V0W2Rpc2FibGVkXSAubmF2YmFyLWRlZmF1bHQgLmJ0bi1saW5rOmhvdmVyLFxuICAgIGZpZWxkc2V0W2Rpc2FibGVkXSAubmF2YmFyLWRlZmF1bHQgLmJ0bi1saW5rOmZvY3VzIHtcbiAgICAgIGNvbG9yOiAjY2NjOyB9XG5cbi5uYXZiYXItaW52ZXJzZSB7XG4gIGJhY2tncm91bmQtY29sb3I6ICMyMjI7XG4gIGJvcmRlci1jb2xvcjogIzA5MDkwOTsgfVxuICAubmF2YmFyLWludmVyc2UgLm5hdmJhci1icmFuZCB7XG4gICAgY29sb3I6ICM5ZDlkOWQ7IH1cbiAgICAubmF2YmFyLWludmVyc2UgLm5hdmJhci1icmFuZDpob3ZlciwgLm5hdmJhci1pbnZlcnNlIC5uYXZiYXItYnJhbmQ6Zm9jdXMge1xuICAgICAgY29sb3I6ICNmZmY7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDsgfVxuICAubmF2YmFyLWludmVyc2UgLm5hdmJhci10ZXh0IHtcbiAgICBjb2xvcjogIzlkOWQ5ZDsgfVxuICAubmF2YmFyLWludmVyc2UgLm5hdmJhci1uYXYgPiBsaSA+IGEge1xuICAgIGNvbG9yOiAjOWQ5ZDlkOyB9XG4gICAgLm5hdmJhci1pbnZlcnNlIC5uYXZiYXItbmF2ID4gbGkgPiBhOmhvdmVyLCAubmF2YmFyLWludmVyc2UgLm5hdmJhci1uYXYgPiBsaSA+IGE6Zm9jdXMge1xuICAgICAgY29sb3I6ICNmZmY7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDsgfVxuICAubmF2YmFyLWludmVyc2UgLm5hdmJhci1uYXYgPiAuYWN0aXZlID4gYSwgLm5hdmJhci1pbnZlcnNlIC5uYXZiYXItbmF2ID4gLmFjdGl2ZSA+IGE6aG92ZXIsIC5uYXZiYXItaW52ZXJzZSAubmF2YmFyLW5hdiA+IC5hY3RpdmUgPiBhOmZvY3VzIHtcbiAgICBjb2xvcjogI2ZmZjtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjMDkwOTA5OyB9XG4gIC5uYXZiYXItaW52ZXJzZSAubmF2YmFyLW5hdiA+IC5kaXNhYmxlZCA+IGEsIC5uYXZiYXItaW52ZXJzZSAubmF2YmFyLW5hdiA+IC5kaXNhYmxlZCA+IGE6aG92ZXIsIC5uYXZiYXItaW52ZXJzZSAubmF2YmFyLW5hdiA+IC5kaXNhYmxlZCA+IGE6Zm9jdXMge1xuICAgIGNvbG9yOiAjNDQ0O1xuICAgIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50OyB9XG4gIC5uYXZiYXItaW52ZXJzZSAubmF2YmFyLXRvZ2dsZSB7XG4gICAgYm9yZGVyLWNvbG9yOiAjMzMzOyB9XG4gICAgLm5hdmJhci1pbnZlcnNlIC5uYXZiYXItdG9nZ2xlOmhvdmVyLCAubmF2YmFyLWludmVyc2UgLm5hdmJhci10b2dnbGU6Zm9jdXMge1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogIzMzMzsgfVxuICAgIC5uYXZiYXItaW52ZXJzZSAubmF2YmFyLXRvZ2dsZSAuaWNvbi1iYXIge1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogI2ZmZjsgfVxuICAubmF2YmFyLWludmVyc2UgLm5hdmJhci1jb2xsYXBzZSxcbiAgLm5hdmJhci1pbnZlcnNlIC5uYXZiYXItZm9ybSB7XG4gICAgYm9yZGVyLWNvbG9yOiAjMTAxMDEwOyB9XG4gIC5uYXZiYXItaW52ZXJzZSAubmF2YmFyLW5hdiA+IC5vcGVuID4gYSwgLm5hdmJhci1pbnZlcnNlIC5uYXZiYXItbmF2ID4gLm9wZW4gPiBhOmhvdmVyLCAubmF2YmFyLWludmVyc2UgLm5hdmJhci1uYXYgPiAub3BlbiA+IGE6Zm9jdXMge1xuICAgIGJhY2tncm91bmQtY29sb3I6ICMwOTA5MDk7XG4gICAgY29sb3I6ICNmZmY7IH1cbiAgQG1lZGlhIChtYXgtd2lkdGg6IDc2N3B4KSB7XG4gICAgLm5hdmJhci1pbnZlcnNlIC5uYXZiYXItbmF2IC5vcGVuIC5kcm9wZG93bi1tZW51ID4gLmRyb3Bkb3duLWhlYWRlciB7XG4gICAgICBib3JkZXItY29sb3I6ICMwOTA5MDk7IH1cbiAgICAubmF2YmFyLWludmVyc2UgLm5hdmJhci1uYXYgLm9wZW4gLmRyb3Bkb3duLW1lbnUgLmRpdmlkZXIge1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogIzA5MDkwOTsgfVxuICAgIC5uYXZiYXItaW52ZXJzZSAubmF2YmFyLW5hdiAub3BlbiAuZHJvcGRvd24tbWVudSA+IGxpID4gYSB7XG4gICAgICBjb2xvcjogIzlkOWQ5ZDsgfVxuICAgICAgLm5hdmJhci1pbnZlcnNlIC5uYXZiYXItbmF2IC5vcGVuIC5kcm9wZG93bi1tZW51ID4gbGkgPiBhOmhvdmVyLCAubmF2YmFyLWludmVyc2UgLm5hdmJhci1uYXYgLm9wZW4gLmRyb3Bkb3duLW1lbnUgPiBsaSA+IGE6Zm9jdXMge1xuICAgICAgICBjb2xvcjogI2ZmZjtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7IH1cbiAgICAubmF2YmFyLWludmVyc2UgLm5hdmJhci1uYXYgLm9wZW4gLmRyb3Bkb3duLW1lbnUgPiAuYWN0aXZlID4gYSwgLm5hdmJhci1pbnZlcnNlIC5uYXZiYXItbmF2IC5vcGVuIC5kcm9wZG93bi1tZW51ID4gLmFjdGl2ZSA+IGE6aG92ZXIsIC5uYXZiYXItaW52ZXJzZSAubmF2YmFyLW5hdiAub3BlbiAuZHJvcGRvd24tbWVudSA+IC5hY3RpdmUgPiBhOmZvY3VzIHtcbiAgICAgIGNvbG9yOiAjZmZmO1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogIzA5MDkwOTsgfVxuICAgIC5uYXZiYXItaW52ZXJzZSAubmF2YmFyLW5hdiAub3BlbiAuZHJvcGRvd24tbWVudSA+IC5kaXNhYmxlZCA+IGEsIC5uYXZiYXItaW52ZXJzZSAubmF2YmFyLW5hdiAub3BlbiAuZHJvcGRvd24tbWVudSA+IC5kaXNhYmxlZCA+IGE6aG92ZXIsIC5uYXZiYXItaW52ZXJzZSAubmF2YmFyLW5hdiAub3BlbiAuZHJvcGRvd24tbWVudSA+IC5kaXNhYmxlZCA+IGE6Zm9jdXMge1xuICAgICAgY29sb3I6ICM0NDQ7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDsgfSB9XG4gIC5uYXZiYXItaW52ZXJzZSAubmF2YmFyLWxpbmsge1xuICAgIGNvbG9yOiAjOWQ5ZDlkOyB9XG4gICAgLm5hdmJhci1pbnZlcnNlIC5uYXZiYXItbGluazpob3ZlciB7XG4gICAgICBjb2xvcjogI2ZmZjsgfVxuICAubmF2YmFyLWludmVyc2UgLmJ0bi1saW5rIHtcbiAgICBjb2xvcjogIzlkOWQ5ZDsgfVxuICAgIC5uYXZiYXItaW52ZXJzZSAuYnRuLWxpbms6aG92ZXIsIC5uYXZiYXItaW52ZXJzZSAuYnRuLWxpbms6Zm9jdXMge1xuICAgICAgY29sb3I6ICNmZmY7IH1cbiAgICAubmF2YmFyLWludmVyc2UgLmJ0bi1saW5rW2Rpc2FibGVkXTpob3ZlciwgLm5hdmJhci1pbnZlcnNlIC5idG4tbGlua1tkaXNhYmxlZF06Zm9jdXMsXG4gICAgZmllbGRzZXRbZGlzYWJsZWRdIC5uYXZiYXItaW52ZXJzZSAuYnRuLWxpbms6aG92ZXIsXG4gICAgZmllbGRzZXRbZGlzYWJsZWRdIC5uYXZiYXItaW52ZXJzZSAuYnRuLWxpbms6Zm9jdXMge1xuICAgICAgY29sb3I6ICM0NDQ7IH1cblxuLmJyZWFkY3J1bWIge1xuICBwYWRkaW5nOiA4cHggMTVweDtcbiAgbWFyZ2luLWJvdHRvbTogMjBweDtcbiAgbGlzdC1zdHlsZTogbm9uZTtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2Y1ZjVmNTtcbiAgYm9yZGVyLXJhZGl1czogNHB4OyB9XG4gIC5icmVhZGNydW1iID4gbGkge1xuICAgIGRpc3BsYXk6IGlubGluZS1ibG9jazsgfVxuICAgIC5icmVhZGNydW1iID4gbGkgKyBsaTpiZWZvcmUge1xuICAgICAgY29udGVudDogXCIvwqBcIjtcbiAgICAgIHBhZGRpbmc6IDAgNXB4O1xuICAgICAgY29sb3I6ICNjY2M7IH1cbiAgLmJyZWFkY3J1bWIgPiAuYWN0aXZlIHtcbiAgICBjb2xvcjogIzc3Nzc3NzsgfVxuXG4ucGFnaW5hdGlvbiB7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgcGFkZGluZy1sZWZ0OiAwO1xuICBtYXJnaW46IDIwcHggMDtcbiAgYm9yZGVyLXJhZGl1czogNHB4OyB9XG4gIC5wYWdpbmF0aW9uID4gbGkge1xuICAgIGRpc3BsYXk6IGlubGluZTsgfVxuICAgIC5wYWdpbmF0aW9uID4gbGkgPiBhLFxuICAgIC5wYWdpbmF0aW9uID4gbGkgPiBzcGFuIHtcbiAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgIGZsb2F0OiBsZWZ0O1xuICAgICAgcGFkZGluZzogNnB4IDEycHg7XG4gICAgICBsaW5lLWhlaWdodDogMS40Mjg1NztcbiAgICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgICAgIGNvbG9yOiAjMzM3YWI3O1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogI2ZmZjtcbiAgICAgIGJvcmRlcjogMXB4IHNvbGlkICNkZGQ7XG4gICAgICBtYXJnaW4tbGVmdDogLTFweDsgfVxuICAgIC5wYWdpbmF0aW9uID4gbGk6Zmlyc3QtY2hpbGQgPiBhLFxuICAgIC5wYWdpbmF0aW9uID4gbGk6Zmlyc3QtY2hpbGQgPiBzcGFuIHtcbiAgICAgIG1hcmdpbi1sZWZ0OiAwO1xuICAgICAgYm9yZGVyLWJvdHRvbS1sZWZ0LXJhZGl1czogNHB4O1xuICAgICAgYm9yZGVyLXRvcC1sZWZ0LXJhZGl1czogNHB4OyB9XG4gICAgLnBhZ2luYXRpb24gPiBsaTpsYXN0LWNoaWxkID4gYSxcbiAgICAucGFnaW5hdGlvbiA+IGxpOmxhc3QtY2hpbGQgPiBzcGFuIHtcbiAgICAgIGJvcmRlci1ib3R0b20tcmlnaHQtcmFkaXVzOiA0cHg7XG4gICAgICBib3JkZXItdG9wLXJpZ2h0LXJhZGl1czogNHB4OyB9XG4gIC5wYWdpbmF0aW9uID4gbGkgPiBhOmhvdmVyLCAucGFnaW5hdGlvbiA+IGxpID4gYTpmb2N1cyxcbiAgLnBhZ2luYXRpb24gPiBsaSA+IHNwYW46aG92ZXIsXG4gIC5wYWdpbmF0aW9uID4gbGkgPiBzcGFuOmZvY3VzIHtcbiAgICB6LWluZGV4OiAyO1xuICAgIGNvbG9yOiAjMjM1MjdjO1xuICAgIGJhY2tncm91bmQtY29sb3I6ICNlZWVlZWU7XG4gICAgYm9yZGVyLWNvbG9yOiAjZGRkOyB9XG4gIC5wYWdpbmF0aW9uID4gLmFjdGl2ZSA+IGEsIC5wYWdpbmF0aW9uID4gLmFjdGl2ZSA+IGE6aG92ZXIsIC5wYWdpbmF0aW9uID4gLmFjdGl2ZSA+IGE6Zm9jdXMsXG4gIC5wYWdpbmF0aW9uID4gLmFjdGl2ZSA+IHNwYW4sXG4gIC5wYWdpbmF0aW9uID4gLmFjdGl2ZSA+IHNwYW46aG92ZXIsXG4gIC5wYWdpbmF0aW9uID4gLmFjdGl2ZSA+IHNwYW46Zm9jdXMge1xuICAgIHotaW5kZXg6IDM7XG4gICAgY29sb3I6ICNmZmY7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogIzMzN2FiNztcbiAgICBib3JkZXItY29sb3I6ICMzMzdhYjc7XG4gICAgY3Vyc29yOiBkZWZhdWx0OyB9XG4gIC5wYWdpbmF0aW9uID4gLmRpc2FibGVkID4gc3BhbixcbiAgLnBhZ2luYXRpb24gPiAuZGlzYWJsZWQgPiBzcGFuOmhvdmVyLFxuICAucGFnaW5hdGlvbiA+IC5kaXNhYmxlZCA+IHNwYW46Zm9jdXMsXG4gIC5wYWdpbmF0aW9uID4gLmRpc2FibGVkID4gYSxcbiAgLnBhZ2luYXRpb24gPiAuZGlzYWJsZWQgPiBhOmhvdmVyLFxuICAucGFnaW5hdGlvbiA+IC5kaXNhYmxlZCA+IGE6Zm9jdXMge1xuICAgIGNvbG9yOiAjNzc3Nzc3O1xuICAgIGJhY2tncm91bmQtY29sb3I6ICNmZmY7XG4gICAgYm9yZGVyLWNvbG9yOiAjZGRkO1xuICAgIGN1cnNvcjogbm90LWFsbG93ZWQ7IH1cblxuLnBhZ2luYXRpb24tbGcgPiBsaSA+IGEsXG4ucGFnaW5hdGlvbi1sZyA+IGxpID4gc3BhbiB7XG4gIHBhZGRpbmc6IDEwcHggMTZweDtcbiAgZm9udC1zaXplOiAxOHB4O1xuICBsaW5lLWhlaWdodDogMS4zMzMzMzsgfVxuXG4ucGFnaW5hdGlvbi1sZyA+IGxpOmZpcnN0LWNoaWxkID4gYSxcbi5wYWdpbmF0aW9uLWxnID4gbGk6Zmlyc3QtY2hpbGQgPiBzcGFuIHtcbiAgYm9yZGVyLWJvdHRvbS1sZWZ0LXJhZGl1czogNnB4O1xuICBib3JkZXItdG9wLWxlZnQtcmFkaXVzOiA2cHg7IH1cblxuLnBhZ2luYXRpb24tbGcgPiBsaTpsYXN0LWNoaWxkID4gYSxcbi5wYWdpbmF0aW9uLWxnID4gbGk6bGFzdC1jaGlsZCA+IHNwYW4ge1xuICBib3JkZXItYm90dG9tLXJpZ2h0LXJhZGl1czogNnB4O1xuICBib3JkZXItdG9wLXJpZ2h0LXJhZGl1czogNnB4OyB9XG5cbi5wYWdpbmF0aW9uLXNtID4gbGkgPiBhLFxuLnBhZ2luYXRpb24tc20gPiBsaSA+IHNwYW4ge1xuICBwYWRkaW5nOiA1cHggMTBweDtcbiAgZm9udC1zaXplOiAxMnB4O1xuICBsaW5lLWhlaWdodDogMS41OyB9XG5cbi5wYWdpbmF0aW9uLXNtID4gbGk6Zmlyc3QtY2hpbGQgPiBhLFxuLnBhZ2luYXRpb24tc20gPiBsaTpmaXJzdC1jaGlsZCA+IHNwYW4ge1xuICBib3JkZXItYm90dG9tLWxlZnQtcmFkaXVzOiAzcHg7XG4gIGJvcmRlci10b3AtbGVmdC1yYWRpdXM6IDNweDsgfVxuXG4ucGFnaW5hdGlvbi1zbSA+IGxpOmxhc3QtY2hpbGQgPiBhLFxuLnBhZ2luYXRpb24tc20gPiBsaTpsYXN0LWNoaWxkID4gc3BhbiB7XG4gIGJvcmRlci1ib3R0b20tcmlnaHQtcmFkaXVzOiAzcHg7XG4gIGJvcmRlci10b3AtcmlnaHQtcmFkaXVzOiAzcHg7IH1cblxuLnBhZ2VyIHtcbiAgcGFkZGluZy1sZWZ0OiAwO1xuICBtYXJnaW46IDIwcHggMDtcbiAgbGlzdC1zdHlsZTogbm9uZTtcbiAgdGV4dC1hbGlnbjogY2VudGVyOyB9XG4gIC5wYWdlcjpiZWZvcmUsIC5wYWdlcjphZnRlciB7XG4gICAgY29udGVudDogXCIgXCI7XG4gICAgZGlzcGxheTogdGFibGU7IH1cbiAgLnBhZ2VyOmFmdGVyIHtcbiAgICBjbGVhcjogYm90aDsgfVxuICAucGFnZXIgbGkge1xuICAgIGRpc3BsYXk6IGlubGluZTsgfVxuICAgIC5wYWdlciBsaSA+IGEsXG4gICAgLnBhZ2VyIGxpID4gc3BhbiB7XG4gICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgICBwYWRkaW5nOiA1cHggMTRweDtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6ICNmZmY7XG4gICAgICBib3JkZXI6IDFweCBzb2xpZCAjZGRkO1xuICAgICAgYm9yZGVyLXJhZGl1czogMTVweDsgfVxuICAgIC5wYWdlciBsaSA+IGE6aG92ZXIsXG4gICAgLnBhZ2VyIGxpID4gYTpmb2N1cyB7XG4gICAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjZWVlZWVlOyB9XG4gIC5wYWdlciAubmV4dCA+IGEsXG4gIC5wYWdlciAubmV4dCA+IHNwYW4ge1xuICAgIGZsb2F0OiByaWdodDsgfVxuICAucGFnZXIgLnByZXZpb3VzID4gYSxcbiAgLnBhZ2VyIC5wcmV2aW91cyA+IHNwYW4ge1xuICAgIGZsb2F0OiBsZWZ0OyB9XG4gIC5wYWdlciAuZGlzYWJsZWQgPiBhLFxuICAucGFnZXIgLmRpc2FibGVkID4gYTpob3ZlcixcbiAgLnBhZ2VyIC5kaXNhYmxlZCA+IGE6Zm9jdXMsXG4gIC5wYWdlciAuZGlzYWJsZWQgPiBzcGFuIHtcbiAgICBjb2xvcjogIzc3Nzc3NztcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjZmZmO1xuICAgIGN1cnNvcjogbm90LWFsbG93ZWQ7IH1cblxuLmxhYmVsIHtcbiAgZGlzcGxheTogaW5saW5lO1xuICBwYWRkaW5nOiAuMmVtIC42ZW0gLjNlbTtcbiAgZm9udC1zaXplOiA3NSU7XG4gIGZvbnQtd2VpZ2h0OiBib2xkO1xuICBsaW5lLWhlaWdodDogMTtcbiAgY29sb3I6ICNmZmY7XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgd2hpdGUtc3BhY2U6IG5vd3JhcDtcbiAgdmVydGljYWwtYWxpZ246IGJhc2VsaW5lO1xuICBib3JkZXItcmFkaXVzOiAuMjVlbTsgfVxuICAubGFiZWw6ZW1wdHkge1xuICAgIGRpc3BsYXk6IG5vbmU7IH1cbiAgLmJ0biAubGFiZWwge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICB0b3A6IC0xcHg7IH1cblxuYS5sYWJlbDpob3ZlciwgYS5sYWJlbDpmb2N1cyB7XG4gIGNvbG9yOiAjZmZmO1xuICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG4gIGN1cnNvcjogcG9pbnRlcjsgfVxuXG4ubGFiZWwtZGVmYXVsdCB7XG4gIGJhY2tncm91bmQtY29sb3I6ICM3Nzc3Nzc7IH1cbiAgLmxhYmVsLWRlZmF1bHRbaHJlZl06aG92ZXIsIC5sYWJlbC1kZWZhdWx0W2hyZWZdOmZvY3VzIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjNWU1ZTVlOyB9XG5cbi5sYWJlbC1wcmltYXJ5IHtcbiAgYmFja2dyb3VuZC1jb2xvcjogIzMzN2FiNzsgfVxuICAubGFiZWwtcHJpbWFyeVtocmVmXTpob3ZlciwgLmxhYmVsLXByaW1hcnlbaHJlZl06Zm9jdXMge1xuICAgIGJhY2tncm91bmQtY29sb3I6ICMyODYwOTA7IH1cblxuLmxhYmVsLXN1Y2Nlc3Mge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjNWNiODVjOyB9XG4gIC5sYWJlbC1zdWNjZXNzW2hyZWZdOmhvdmVyLCAubGFiZWwtc3VjY2Vzc1tocmVmXTpmb2N1cyB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogIzQ0OWQ0NDsgfVxuXG4ubGFiZWwtaW5mbyB7XG4gIGJhY2tncm91bmQtY29sb3I6ICM1YmMwZGU7IH1cbiAgLmxhYmVsLWluZm9baHJlZl06aG92ZXIsIC5sYWJlbC1pbmZvW2hyZWZdOmZvY3VzIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjMzFiMGQ1OyB9XG5cbi5sYWJlbC13YXJuaW5nIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2YwYWQ0ZTsgfVxuICAubGFiZWwtd2FybmluZ1tocmVmXTpob3ZlciwgLmxhYmVsLXdhcm5pbmdbaHJlZl06Zm9jdXMge1xuICAgIGJhY2tncm91bmQtY29sb3I6ICNlYzk3MWY7IH1cblxuLmxhYmVsLWRhbmdlciB7XG4gIGJhY2tncm91bmQtY29sb3I6ICNkOTUzNGY7IH1cbiAgLmxhYmVsLWRhbmdlcltocmVmXTpob3ZlciwgLmxhYmVsLWRhbmdlcltocmVmXTpmb2N1cyB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogI2M5MzAyYzsgfVxuXG4uYmFkZ2Uge1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIG1pbi13aWR0aDogMTBweDtcbiAgcGFkZGluZzogM3B4IDdweDtcbiAgZm9udC1zaXplOiAxMnB4O1xuICBmb250LXdlaWdodDogYm9sZDtcbiAgY29sb3I6ICNmZmY7XG4gIGxpbmUtaGVpZ2h0OiAxO1xuICB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlO1xuICB3aGl0ZS1zcGFjZTogbm93cmFwO1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gIGJhY2tncm91bmQtY29sb3I6ICM3Nzc3Nzc7XG4gIGJvcmRlci1yYWRpdXM6IDEwcHg7IH1cbiAgLmJhZGdlOmVtcHR5IHtcbiAgICBkaXNwbGF5OiBub25lOyB9XG4gIC5idG4gLmJhZGdlIHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgdG9wOiAtMXB4OyB9XG4gIC5idG4teHMgLmJhZGdlLCAuYnRuLWdyb3VwLXhzID4gLmJ0biAuYmFkZ2UsXG4gIC5idG4tZ3JvdXAteHMgPiAuYnRuIC5iYWRnZSB7XG4gICAgdG9wOiAwO1xuICAgIHBhZGRpbmc6IDFweCA1cHg7IH1cbiAgLmxpc3QtZ3JvdXAtaXRlbS5hY3RpdmUgPiAuYmFkZ2UsXG4gIC5uYXYtcGlsbHMgPiAuYWN0aXZlID4gYSA+IC5iYWRnZSB7XG4gICAgY29sb3I6ICMzMzdhYjc7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogI2ZmZjsgfVxuICAubGlzdC1ncm91cC1pdGVtID4gLmJhZGdlIHtcbiAgICBmbG9hdDogcmlnaHQ7IH1cbiAgLmxpc3QtZ3JvdXAtaXRlbSA+IC5iYWRnZSArIC5iYWRnZSB7XG4gICAgbWFyZ2luLXJpZ2h0OiA1cHg7IH1cbiAgLm5hdi1waWxscyA+IGxpID4gYSA+IC5iYWRnZSB7XG4gICAgbWFyZ2luLWxlZnQ6IDNweDsgfVxuXG5hLmJhZGdlOmhvdmVyLCBhLmJhZGdlOmZvY3VzIHtcbiAgY29sb3I6ICNmZmY7XG4gIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgY3Vyc29yOiBwb2ludGVyOyB9XG5cbi5qdW1ib3Ryb24ge1xuICBwYWRkaW5nLXRvcDogMzBweDtcbiAgcGFkZGluZy1ib3R0b206IDMwcHg7XG4gIG1hcmdpbi1ib3R0b206IDMwcHg7XG4gIGNvbG9yOiBpbmhlcml0O1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZWVlZWVlOyB9XG4gIC5qdW1ib3Ryb24gaDEsXG4gIC5qdW1ib3Ryb24gLmgxIHtcbiAgICBjb2xvcjogaW5oZXJpdDsgfVxuICAuanVtYm90cm9uIHAge1xuICAgIG1hcmdpbi1ib3R0b206IDE1cHg7XG4gICAgZm9udC1zaXplOiAyMXB4O1xuICAgIGZvbnQtd2VpZ2h0OiAyMDA7IH1cbiAgLmp1bWJvdHJvbiA+IGhyIHtcbiAgICBib3JkZXItdG9wLWNvbG9yOiAjZDVkNWQ1OyB9XG4gIC5jb250YWluZXIgLmp1bWJvdHJvbixcbiAgLmNvbnRhaW5lci1mbHVpZCAuanVtYm90cm9uIHtcbiAgICBib3JkZXItcmFkaXVzOiA2cHg7XG4gICAgcGFkZGluZy1sZWZ0OiAxNXB4O1xuICAgIHBhZGRpbmctcmlnaHQ6IDE1cHg7IH1cbiAgLmp1bWJvdHJvbiAuY29udGFpbmVyIHtcbiAgICBtYXgtd2lkdGg6IDEwMCU7IH1cbiAgQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNzY4cHgpIHtcbiAgICAuanVtYm90cm9uIHtcbiAgICAgIHBhZGRpbmctdG9wOiA0OHB4O1xuICAgICAgcGFkZGluZy1ib3R0b206IDQ4cHg7IH1cbiAgICAgIC5jb250YWluZXIgLmp1bWJvdHJvbixcbiAgICAgIC5jb250YWluZXItZmx1aWQgLmp1bWJvdHJvbiB7XG4gICAgICAgIHBhZGRpbmctbGVmdDogNjBweDtcbiAgICAgICAgcGFkZGluZy1yaWdodDogNjBweDsgfVxuICAgICAgLmp1bWJvdHJvbiBoMSxcbiAgICAgIC5qdW1ib3Ryb24gLmgxIHtcbiAgICAgICAgZm9udC1zaXplOiA2M3B4OyB9IH1cblxuLnRodW1ibmFpbCB7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBwYWRkaW5nOiA0cHg7XG4gIG1hcmdpbi1ib3R0b206IDIwcHg7XG4gIGxpbmUtaGVpZ2h0OiAxLjQyODU3O1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZmZmO1xuICBib3JkZXI6IDFweCBzb2xpZCAjZGRkO1xuICBib3JkZXItcmFkaXVzOiA0cHg7XG4gIC13ZWJraXQtdHJhbnNpdGlvbjogYm9yZGVyIDAuMnMgZWFzZS1pbi1vdXQ7XG4gIC1vLXRyYW5zaXRpb246IGJvcmRlciAwLjJzIGVhc2UtaW4tb3V0O1xuICB0cmFuc2l0aW9uOiBib3JkZXIgMC4ycyBlYXNlLWluLW91dDsgfVxuICAudGh1bWJuYWlsID4gaW1nLFxuICAudGh1bWJuYWlsIGEgPiBpbWcge1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIG1heC13aWR0aDogMTAwJTtcbiAgICBoZWlnaHQ6IGF1dG87XG4gICAgbWFyZ2luLWxlZnQ6IGF1dG87XG4gICAgbWFyZ2luLXJpZ2h0OiBhdXRvOyB9XG4gIC50aHVtYm5haWwgLmNhcHRpb24ge1xuICAgIHBhZGRpbmc6IDlweDtcbiAgICBjb2xvcjogIzMzMzMzMzsgfVxuXG5hLnRodW1ibmFpbDpob3ZlcixcbmEudGh1bWJuYWlsOmZvY3VzLFxuYS50aHVtYm5haWwuYWN0aXZlIHtcbiAgYm9yZGVyLWNvbG9yOiAjMzM3YWI3OyB9XG5cbi5hbGVydCB7XG4gIHBhZGRpbmc6IDE1cHg7XG4gIG1hcmdpbi1ib3R0b206IDIwcHg7XG4gIGJvcmRlcjogMXB4IHNvbGlkIHRyYW5zcGFyZW50O1xuICBib3JkZXItcmFkaXVzOiA0cHg7IH1cbiAgLmFsZXJ0IGg0IHtcbiAgICBtYXJnaW4tdG9wOiAwO1xuICAgIGNvbG9yOiBpbmhlcml0OyB9XG4gIC5hbGVydCAuYWxlcnQtbGluayB7XG4gICAgZm9udC13ZWlnaHQ6IGJvbGQ7IH1cbiAgLmFsZXJ0ID4gcCxcbiAgLmFsZXJ0ID4gdWwge1xuICAgIG1hcmdpbi1ib3R0b206IDA7IH1cbiAgLmFsZXJ0ID4gcCArIHAge1xuICAgIG1hcmdpbi10b3A6IDVweDsgfVxuXG4uYWxlcnQtZGlzbWlzc2FibGUsXG4uYWxlcnQtZGlzbWlzc2libGUge1xuICBwYWRkaW5nLXJpZ2h0OiAzNXB4OyB9XG4gIC5hbGVydC1kaXNtaXNzYWJsZSAuY2xvc2UsXG4gIC5hbGVydC1kaXNtaXNzaWJsZSAuY2xvc2Uge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICB0b3A6IC0ycHg7XG4gICAgcmlnaHQ6IC0yMXB4O1xuICAgIGNvbG9yOiBpbmhlcml0OyB9XG5cbi5hbGVydC1zdWNjZXNzIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2RmZjBkODtcbiAgYm9yZGVyLWNvbG9yOiAjZDZlOWM2O1xuICBjb2xvcjogIzNjNzYzZDsgfVxuICAuYWxlcnQtc3VjY2VzcyBociB7XG4gICAgYm9yZGVyLXRvcC1jb2xvcjogI2M5ZTJiMzsgfVxuICAuYWxlcnQtc3VjY2VzcyAuYWxlcnQtbGluayB7XG4gICAgY29sb3I6ICMyYjU0MmM7IH1cblxuLmFsZXJ0LWluZm8ge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZDllZGY3O1xuICBib3JkZXItY29sb3I6ICNiY2U4ZjE7XG4gIGNvbG9yOiAjMzE3MDhmOyB9XG4gIC5hbGVydC1pbmZvIGhyIHtcbiAgICBib3JkZXItdG9wLWNvbG9yOiAjYTZlMWVjOyB9XG4gIC5hbGVydC1pbmZvIC5hbGVydC1saW5rIHtcbiAgICBjb2xvcjogIzI0NTI2OTsgfVxuXG4uYWxlcnQtd2FybmluZyB7XG4gIGJhY2tncm91bmQtY29sb3I6ICNmY2Y4ZTM7XG4gIGJvcmRlci1jb2xvcjogI2ZhZWJjYztcbiAgY29sb3I6ICM4YTZkM2I7IH1cbiAgLmFsZXJ0LXdhcm5pbmcgaHIge1xuICAgIGJvcmRlci10b3AtY29sb3I6ICNmN2UxYjU7IH1cbiAgLmFsZXJ0LXdhcm5pbmcgLmFsZXJ0LWxpbmsge1xuICAgIGNvbG9yOiAjNjY1MTJjOyB9XG5cbi5hbGVydC1kYW5nZXIge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZjJkZWRlO1xuICBib3JkZXItY29sb3I6ICNlYmNjZDE7XG4gIGNvbG9yOiAjYTk0NDQyOyB9XG4gIC5hbGVydC1kYW5nZXIgaHIge1xuICAgIGJvcmRlci10b3AtY29sb3I6ICNlNGI5YzA7IH1cbiAgLmFsZXJ0LWRhbmdlciAuYWxlcnQtbGluayB7XG4gICAgY29sb3I6ICM4NDM1MzQ7IH1cblxuQC13ZWJraXQta2V5ZnJhbWVzIHByb2dyZXNzLWJhci1zdHJpcGVzIHtcbiAgZnJvbSB7XG4gICAgYmFja2dyb3VuZC1wb3NpdGlvbjogNDBweCAwOyB9XG4gIHRvIHtcbiAgICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiAwIDA7IH0gfVxuXG5Aa2V5ZnJhbWVzIHByb2dyZXNzLWJhci1zdHJpcGVzIHtcbiAgZnJvbSB7XG4gICAgYmFja2dyb3VuZC1wb3NpdGlvbjogNDBweCAwOyB9XG4gIHRvIHtcbiAgICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiAwIDA7IH0gfVxuXG4ucHJvZ3Jlc3Mge1xuICBvdmVyZmxvdzogaGlkZGVuO1xuICBoZWlnaHQ6IDIwcHg7XG4gIG1hcmdpbi1ib3R0b206IDIwcHg7XG4gIGJhY2tncm91bmQtY29sb3I6ICNmNWY1ZjU7XG4gIGJvcmRlci1yYWRpdXM6IDRweDtcbiAgLXdlYmtpdC1ib3gtc2hhZG93OiBpbnNldCAwIDFweCAycHggcmdiYSgwLCAwLCAwLCAwLjEpO1xuICBib3gtc2hhZG93OiBpbnNldCAwIDFweCAycHggcmdiYSgwLCAwLCAwLCAwLjEpOyB9XG5cbi5wcm9ncmVzcy1iYXIge1xuICBmbG9hdDogbGVmdDtcbiAgd2lkdGg6IDAlO1xuICBoZWlnaHQ6IDEwMCU7XG4gIGZvbnQtc2l6ZTogMTJweDtcbiAgbGluZS1oZWlnaHQ6IDIwcHg7XG4gIGNvbG9yOiAjZmZmO1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gIGJhY2tncm91bmQtY29sb3I6ICMzMzdhYjc7XG4gIC13ZWJraXQtYm94LXNoYWRvdzogaW5zZXQgMCAtMXB4IDAgcmdiYSgwLCAwLCAwLCAwLjE1KTtcbiAgYm94LXNoYWRvdzogaW5zZXQgMCAtMXB4IDAgcmdiYSgwLCAwLCAwLCAwLjE1KTtcbiAgLXdlYmtpdC10cmFuc2l0aW9uOiB3aWR0aCAwLjZzIGVhc2U7XG4gIC1vLXRyYW5zaXRpb246IHdpZHRoIDAuNnMgZWFzZTtcbiAgdHJhbnNpdGlvbjogd2lkdGggMC42cyBlYXNlOyB9XG5cbi5wcm9ncmVzcy1zdHJpcGVkIC5wcm9ncmVzcy1iYXIsXG4ucHJvZ3Jlc3MtYmFyLXN0cmlwZWQge1xuICBiYWNrZ3JvdW5kLWltYWdlOiAtd2Via2l0LWxpbmVhci1ncmFkaWVudCg0NWRlZywgcmdiYSgyNTUsIDI1NSwgMjU1LCAwLjE1KSAyNSUsIHRyYW5zcGFyZW50IDI1JSwgdHJhbnNwYXJlbnQgNTAlLCByZ2JhKDI1NSwgMjU1LCAyNTUsIDAuMTUpIDUwJSwgcmdiYSgyNTUsIDI1NSwgMjU1LCAwLjE1KSA3NSUsIHRyYW5zcGFyZW50IDc1JSwgdHJhbnNwYXJlbnQpO1xuICBiYWNrZ3JvdW5kLWltYWdlOiAtby1saW5lYXItZ3JhZGllbnQoNDVkZWcsIHJnYmEoMjU1LCAyNTUsIDI1NSwgMC4xNSkgMjUlLCB0cmFuc3BhcmVudCAyNSUsIHRyYW5zcGFyZW50IDUwJSwgcmdiYSgyNTUsIDI1NSwgMjU1LCAwLjE1KSA1MCUsIHJnYmEoMjU1LCAyNTUsIDI1NSwgMC4xNSkgNzUlLCB0cmFuc3BhcmVudCA3NSUsIHRyYW5zcGFyZW50KTtcbiAgYmFja2dyb3VuZC1pbWFnZTogbGluZWFyLWdyYWRpZW50KDQ1ZGVnLCByZ2JhKDI1NSwgMjU1LCAyNTUsIDAuMTUpIDI1JSwgdHJhbnNwYXJlbnQgMjUlLCB0cmFuc3BhcmVudCA1MCUsIHJnYmEoMjU1LCAyNTUsIDI1NSwgMC4xNSkgNTAlLCByZ2JhKDI1NSwgMjU1LCAyNTUsIDAuMTUpIDc1JSwgdHJhbnNwYXJlbnQgNzUlLCB0cmFuc3BhcmVudCk7XG4gIGJhY2tncm91bmQtc2l6ZTogNDBweCA0MHB4OyB9XG5cbi5wcm9ncmVzcy5hY3RpdmUgLnByb2dyZXNzLWJhcixcbi5wcm9ncmVzcy1iYXIuYWN0aXZlIHtcbiAgLXdlYmtpdC1hbmltYXRpb246IHByb2dyZXNzLWJhci1zdHJpcGVzIDJzIGxpbmVhciBpbmZpbml0ZTtcbiAgLW8tYW5pbWF0aW9uOiBwcm9ncmVzcy1iYXItc3RyaXBlcyAycyBsaW5lYXIgaW5maW5pdGU7XG4gIGFuaW1hdGlvbjogcHJvZ3Jlc3MtYmFyLXN0cmlwZXMgMnMgbGluZWFyIGluZmluaXRlOyB9XG5cbi5wcm9ncmVzcy1iYXItc3VjY2VzcyB7XG4gIGJhY2tncm91bmQtY29sb3I6ICM1Y2I4NWM7IH1cbiAgLnByb2dyZXNzLXN0cmlwZWQgLnByb2dyZXNzLWJhci1zdWNjZXNzIHtcbiAgICBiYWNrZ3JvdW5kLWltYWdlOiAtd2Via2l0LWxpbmVhci1ncmFkaWVudCg0NWRlZywgcmdiYSgyNTUsIDI1NSwgMjU1LCAwLjE1KSAyNSUsIHRyYW5zcGFyZW50IDI1JSwgdHJhbnNwYXJlbnQgNTAlLCByZ2JhKDI1NSwgMjU1LCAyNTUsIDAuMTUpIDUwJSwgcmdiYSgyNTUsIDI1NSwgMjU1LCAwLjE1KSA3NSUsIHRyYW5zcGFyZW50IDc1JSwgdHJhbnNwYXJlbnQpO1xuICAgIGJhY2tncm91bmQtaW1hZ2U6IC1vLWxpbmVhci1ncmFkaWVudCg0NWRlZywgcmdiYSgyNTUsIDI1NSwgMjU1LCAwLjE1KSAyNSUsIHRyYW5zcGFyZW50IDI1JSwgdHJhbnNwYXJlbnQgNTAlLCByZ2JhKDI1NSwgMjU1LCAyNTUsIDAuMTUpIDUwJSwgcmdiYSgyNTUsIDI1NSwgMjU1LCAwLjE1KSA3NSUsIHRyYW5zcGFyZW50IDc1JSwgdHJhbnNwYXJlbnQpO1xuICAgIGJhY2tncm91bmQtaW1hZ2U6IGxpbmVhci1ncmFkaWVudCg0NWRlZywgcmdiYSgyNTUsIDI1NSwgMjU1LCAwLjE1KSAyNSUsIHRyYW5zcGFyZW50IDI1JSwgdHJhbnNwYXJlbnQgNTAlLCByZ2JhKDI1NSwgMjU1LCAyNTUsIDAuMTUpIDUwJSwgcmdiYSgyNTUsIDI1NSwgMjU1LCAwLjE1KSA3NSUsIHRyYW5zcGFyZW50IDc1JSwgdHJhbnNwYXJlbnQpOyB9XG5cbi5wcm9ncmVzcy1iYXItaW5mbyB7XG4gIGJhY2tncm91bmQtY29sb3I6ICM1YmMwZGU7IH1cbiAgLnByb2dyZXNzLXN0cmlwZWQgLnByb2dyZXNzLWJhci1pbmZvIHtcbiAgICBiYWNrZ3JvdW5kLWltYWdlOiAtd2Via2l0LWxpbmVhci1ncmFkaWVudCg0NWRlZywgcmdiYSgyNTUsIDI1NSwgMjU1LCAwLjE1KSAyNSUsIHRyYW5zcGFyZW50IDI1JSwgdHJhbnNwYXJlbnQgNTAlLCByZ2JhKDI1NSwgMjU1LCAyNTUsIDAuMTUpIDUwJSwgcmdiYSgyNTUsIDI1NSwgMjU1LCAwLjE1KSA3NSUsIHRyYW5zcGFyZW50IDc1JSwgdHJhbnNwYXJlbnQpO1xuICAgIGJhY2tncm91bmQtaW1hZ2U6IC1vLWxpbmVhci1ncmFkaWVudCg0NWRlZywgcmdiYSgyNTUsIDI1NSwgMjU1LCAwLjE1KSAyNSUsIHRyYW5zcGFyZW50IDI1JSwgdHJhbnNwYXJlbnQgNTAlLCByZ2JhKDI1NSwgMjU1LCAyNTUsIDAuMTUpIDUwJSwgcmdiYSgyNTUsIDI1NSwgMjU1LCAwLjE1KSA3NSUsIHRyYW5zcGFyZW50IDc1JSwgdHJhbnNwYXJlbnQpO1xuICAgIGJhY2tncm91bmQtaW1hZ2U6IGxpbmVhci1ncmFkaWVudCg0NWRlZywgcmdiYSgyNTUsIDI1NSwgMjU1LCAwLjE1KSAyNSUsIHRyYW5zcGFyZW50IDI1JSwgdHJhbnNwYXJlbnQgNTAlLCByZ2JhKDI1NSwgMjU1LCAyNTUsIDAuMTUpIDUwJSwgcmdiYSgyNTUsIDI1NSwgMjU1LCAwLjE1KSA3NSUsIHRyYW5zcGFyZW50IDc1JSwgdHJhbnNwYXJlbnQpOyB9XG5cbi5wcm9ncmVzcy1iYXItd2FybmluZyB7XG4gIGJhY2tncm91bmQtY29sb3I6ICNmMGFkNGU7IH1cbiAgLnByb2dyZXNzLXN0cmlwZWQgLnByb2dyZXNzLWJhci13YXJuaW5nIHtcbiAgICBiYWNrZ3JvdW5kLWltYWdlOiAtd2Via2l0LWxpbmVhci1ncmFkaWVudCg0NWRlZywgcmdiYSgyNTUsIDI1NSwgMjU1LCAwLjE1KSAyNSUsIHRyYW5zcGFyZW50IDI1JSwgdHJhbnNwYXJlbnQgNTAlLCByZ2JhKDI1NSwgMjU1LCAyNTUsIDAuMTUpIDUwJSwgcmdiYSgyNTUsIDI1NSwgMjU1LCAwLjE1KSA3NSUsIHRyYW5zcGFyZW50IDc1JSwgdHJhbnNwYXJlbnQpO1xuICAgIGJhY2tncm91bmQtaW1hZ2U6IC1vLWxpbmVhci1ncmFkaWVudCg0NWRlZywgcmdiYSgyNTUsIDI1NSwgMjU1LCAwLjE1KSAyNSUsIHRyYW5zcGFyZW50IDI1JSwgdHJhbnNwYXJlbnQgNTAlLCByZ2JhKDI1NSwgMjU1LCAyNTUsIDAuMTUpIDUwJSwgcmdiYSgyNTUsIDI1NSwgMjU1LCAwLjE1KSA3NSUsIHRyYW5zcGFyZW50IDc1JSwgdHJhbnNwYXJlbnQpO1xuICAgIGJhY2tncm91bmQtaW1hZ2U6IGxpbmVhci1ncmFkaWVudCg0NWRlZywgcmdiYSgyNTUsIDI1NSwgMjU1LCAwLjE1KSAyNSUsIHRyYW5zcGFyZW50IDI1JSwgdHJhbnNwYXJlbnQgNTAlLCByZ2JhKDI1NSwgMjU1LCAyNTUsIDAuMTUpIDUwJSwgcmdiYSgyNTUsIDI1NSwgMjU1LCAwLjE1KSA3NSUsIHRyYW5zcGFyZW50IDc1JSwgdHJhbnNwYXJlbnQpOyB9XG5cbi5wcm9ncmVzcy1iYXItZGFuZ2VyIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2Q5NTM0ZjsgfVxuICAucHJvZ3Jlc3Mtc3RyaXBlZCAucHJvZ3Jlc3MtYmFyLWRhbmdlciB7XG4gICAgYmFja2dyb3VuZC1pbWFnZTogLXdlYmtpdC1saW5lYXItZ3JhZGllbnQoNDVkZWcsIHJnYmEoMjU1LCAyNTUsIDI1NSwgMC4xNSkgMjUlLCB0cmFuc3BhcmVudCAyNSUsIHRyYW5zcGFyZW50IDUwJSwgcmdiYSgyNTUsIDI1NSwgMjU1LCAwLjE1KSA1MCUsIHJnYmEoMjU1LCAyNTUsIDI1NSwgMC4xNSkgNzUlLCB0cmFuc3BhcmVudCA3NSUsIHRyYW5zcGFyZW50KTtcbiAgICBiYWNrZ3JvdW5kLWltYWdlOiAtby1saW5lYXItZ3JhZGllbnQoNDVkZWcsIHJnYmEoMjU1LCAyNTUsIDI1NSwgMC4xNSkgMjUlLCB0cmFuc3BhcmVudCAyNSUsIHRyYW5zcGFyZW50IDUwJSwgcmdiYSgyNTUsIDI1NSwgMjU1LCAwLjE1KSA1MCUsIHJnYmEoMjU1LCAyNTUsIDI1NSwgMC4xNSkgNzUlLCB0cmFuc3BhcmVudCA3NSUsIHRyYW5zcGFyZW50KTtcbiAgICBiYWNrZ3JvdW5kLWltYWdlOiBsaW5lYXItZ3JhZGllbnQoNDVkZWcsIHJnYmEoMjU1LCAyNTUsIDI1NSwgMC4xNSkgMjUlLCB0cmFuc3BhcmVudCAyNSUsIHRyYW5zcGFyZW50IDUwJSwgcmdiYSgyNTUsIDI1NSwgMjU1LCAwLjE1KSA1MCUsIHJnYmEoMjU1LCAyNTUsIDI1NSwgMC4xNSkgNzUlLCB0cmFuc3BhcmVudCA3NSUsIHRyYW5zcGFyZW50KTsgfVxuXG4ubWVkaWEge1xuICBtYXJnaW4tdG9wOiAxNXB4OyB9XG4gIC5tZWRpYTpmaXJzdC1jaGlsZCB7XG4gICAgbWFyZ2luLXRvcDogMDsgfVxuXG4ubWVkaWEsXG4ubWVkaWEtYm9keSB7XG4gIHpvb206IDE7XG4gIG92ZXJmbG93OiBoaWRkZW47IH1cblxuLm1lZGlhLWJvZHkge1xuICB3aWR0aDogMTAwMDBweDsgfVxuXG4ubWVkaWEtb2JqZWN0IHtcbiAgZGlzcGxheTogYmxvY2s7IH1cbiAgLm1lZGlhLW9iamVjdC5pbWctdGh1bWJuYWlsIHtcbiAgICBtYXgtd2lkdGg6IG5vbmU7IH1cblxuLm1lZGlhLXJpZ2h0LFxuLm1lZGlhID4gLnB1bGwtcmlnaHQge1xuICBwYWRkaW5nLWxlZnQ6IDEwcHg7IH1cblxuLm1lZGlhLWxlZnQsXG4ubWVkaWEgPiAucHVsbC1sZWZ0IHtcbiAgcGFkZGluZy1yaWdodDogMTBweDsgfVxuXG4ubWVkaWEtbGVmdCxcbi5tZWRpYS1yaWdodCxcbi5tZWRpYS1ib2R5IHtcbiAgZGlzcGxheTogdGFibGUtY2VsbDtcbiAgdmVydGljYWwtYWxpZ246IHRvcDsgfVxuXG4ubWVkaWEtbWlkZGxlIHtcbiAgdmVydGljYWwtYWxpZ246IG1pZGRsZTsgfVxuXG4ubWVkaWEtYm90dG9tIHtcbiAgdmVydGljYWwtYWxpZ246IGJvdHRvbTsgfVxuXG4ubWVkaWEtaGVhZGluZyB7XG4gIG1hcmdpbi10b3A6IDA7XG4gIG1hcmdpbi1ib3R0b206IDVweDsgfVxuXG4ubWVkaWEtbGlzdCB7XG4gIHBhZGRpbmctbGVmdDogMDtcbiAgbGlzdC1zdHlsZTogbm9uZTsgfVxuXG4ubGlzdC1ncm91cCB7XG4gIG1hcmdpbi1ib3R0b206IDIwcHg7XG4gIHBhZGRpbmctbGVmdDogMDsgfVxuXG4ubGlzdC1ncm91cC1pdGVtIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBkaXNwbGF5OiBibG9jaztcbiAgcGFkZGluZzogMTBweCAxNXB4O1xuICBtYXJnaW4tYm90dG9tOiAtMXB4O1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZmZmO1xuICBib3JkZXI6IDFweCBzb2xpZCAjZGRkOyB9XG4gIC5saXN0LWdyb3VwLWl0ZW06Zmlyc3QtY2hpbGQge1xuICAgIGJvcmRlci10b3AtcmlnaHQtcmFkaXVzOiA0cHg7XG4gICAgYm9yZGVyLXRvcC1sZWZ0LXJhZGl1czogNHB4OyB9XG4gIC5saXN0LWdyb3VwLWl0ZW06bGFzdC1jaGlsZCB7XG4gICAgbWFyZ2luLWJvdHRvbTogMDtcbiAgICBib3JkZXItYm90dG9tLXJpZ2h0LXJhZGl1czogNHB4O1xuICAgIGJvcmRlci1ib3R0b20tbGVmdC1yYWRpdXM6IDRweDsgfVxuXG5hLmxpc3QtZ3JvdXAtaXRlbSxcbmJ1dHRvbi5saXN0LWdyb3VwLWl0ZW0ge1xuICBjb2xvcjogIzU1NTsgfVxuICBhLmxpc3QtZ3JvdXAtaXRlbSAubGlzdC1ncm91cC1pdGVtLWhlYWRpbmcsXG4gIGJ1dHRvbi5saXN0LWdyb3VwLWl0ZW0gLmxpc3QtZ3JvdXAtaXRlbS1oZWFkaW5nIHtcbiAgICBjb2xvcjogIzMzMzsgfVxuICBhLmxpc3QtZ3JvdXAtaXRlbTpob3ZlciwgYS5saXN0LWdyb3VwLWl0ZW06Zm9jdXMsXG4gIGJ1dHRvbi5saXN0LWdyb3VwLWl0ZW06aG92ZXIsXG4gIGJ1dHRvbi5saXN0LWdyb3VwLWl0ZW06Zm9jdXMge1xuICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgICBjb2xvcjogIzU1NTtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjZjVmNWY1OyB9XG5cbmJ1dHRvbi5saXN0LWdyb3VwLWl0ZW0ge1xuICB3aWR0aDogMTAwJTtcbiAgdGV4dC1hbGlnbjogbGVmdDsgfVxuXG4ubGlzdC1ncm91cC1pdGVtLmRpc2FibGVkLCAubGlzdC1ncm91cC1pdGVtLmRpc2FibGVkOmhvdmVyLCAubGlzdC1ncm91cC1pdGVtLmRpc2FibGVkOmZvY3VzIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2VlZWVlZTtcbiAgY29sb3I6ICM3Nzc3Nzc7XG4gIGN1cnNvcjogbm90LWFsbG93ZWQ7IH1cbiAgLmxpc3QtZ3JvdXAtaXRlbS5kaXNhYmxlZCAubGlzdC1ncm91cC1pdGVtLWhlYWRpbmcsIC5saXN0LWdyb3VwLWl0ZW0uZGlzYWJsZWQ6aG92ZXIgLmxpc3QtZ3JvdXAtaXRlbS1oZWFkaW5nLCAubGlzdC1ncm91cC1pdGVtLmRpc2FibGVkOmZvY3VzIC5saXN0LWdyb3VwLWl0ZW0taGVhZGluZyB7XG4gICAgY29sb3I6IGluaGVyaXQ7IH1cbiAgLmxpc3QtZ3JvdXAtaXRlbS5kaXNhYmxlZCAubGlzdC1ncm91cC1pdGVtLXRleHQsIC5saXN0LWdyb3VwLWl0ZW0uZGlzYWJsZWQ6aG92ZXIgLmxpc3QtZ3JvdXAtaXRlbS10ZXh0LCAubGlzdC1ncm91cC1pdGVtLmRpc2FibGVkOmZvY3VzIC5saXN0LWdyb3VwLWl0ZW0tdGV4dCB7XG4gICAgY29sb3I6ICM3Nzc3Nzc7IH1cblxuLmxpc3QtZ3JvdXAtaXRlbS5hY3RpdmUsIC5saXN0LWdyb3VwLWl0ZW0uYWN0aXZlOmhvdmVyLCAubGlzdC1ncm91cC1pdGVtLmFjdGl2ZTpmb2N1cyB7XG4gIHotaW5kZXg6IDI7XG4gIGNvbG9yOiAjZmZmO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjMzM3YWI3O1xuICBib3JkZXItY29sb3I6ICMzMzdhYjc7IH1cbiAgLmxpc3QtZ3JvdXAtaXRlbS5hY3RpdmUgLmxpc3QtZ3JvdXAtaXRlbS1oZWFkaW5nLFxuICAubGlzdC1ncm91cC1pdGVtLmFjdGl2ZSAubGlzdC1ncm91cC1pdGVtLWhlYWRpbmcgPiBzbWFsbCxcbiAgLmxpc3QtZ3JvdXAtaXRlbS5hY3RpdmUgLmxpc3QtZ3JvdXAtaXRlbS1oZWFkaW5nID4gLnNtYWxsLCAubGlzdC1ncm91cC1pdGVtLmFjdGl2ZTpob3ZlciAubGlzdC1ncm91cC1pdGVtLWhlYWRpbmcsXG4gIC5saXN0LWdyb3VwLWl0ZW0uYWN0aXZlOmhvdmVyIC5saXN0LWdyb3VwLWl0ZW0taGVhZGluZyA+IHNtYWxsLFxuICAubGlzdC1ncm91cC1pdGVtLmFjdGl2ZTpob3ZlciAubGlzdC1ncm91cC1pdGVtLWhlYWRpbmcgPiAuc21hbGwsIC5saXN0LWdyb3VwLWl0ZW0uYWN0aXZlOmZvY3VzIC5saXN0LWdyb3VwLWl0ZW0taGVhZGluZyxcbiAgLmxpc3QtZ3JvdXAtaXRlbS5hY3RpdmU6Zm9jdXMgLmxpc3QtZ3JvdXAtaXRlbS1oZWFkaW5nID4gc21hbGwsXG4gIC5saXN0LWdyb3VwLWl0ZW0uYWN0aXZlOmZvY3VzIC5saXN0LWdyb3VwLWl0ZW0taGVhZGluZyA+IC5zbWFsbCB7XG4gICAgY29sb3I6IGluaGVyaXQ7IH1cbiAgLmxpc3QtZ3JvdXAtaXRlbS5hY3RpdmUgLmxpc3QtZ3JvdXAtaXRlbS10ZXh0LCAubGlzdC1ncm91cC1pdGVtLmFjdGl2ZTpob3ZlciAubGlzdC1ncm91cC1pdGVtLXRleHQsIC5saXN0LWdyb3VwLWl0ZW0uYWN0aXZlOmZvY3VzIC5saXN0LWdyb3VwLWl0ZW0tdGV4dCB7XG4gICAgY29sb3I6ICNjN2RkZWY7IH1cblxuLmxpc3QtZ3JvdXAtaXRlbS1zdWNjZXNzIHtcbiAgY29sb3I6ICMzYzc2M2Q7XG4gIGJhY2tncm91bmQtY29sb3I6ICNkZmYwZDg7IH1cblxuYS5saXN0LWdyb3VwLWl0ZW0tc3VjY2VzcyxcbmJ1dHRvbi5saXN0LWdyb3VwLWl0ZW0tc3VjY2VzcyB7XG4gIGNvbG9yOiAjM2M3NjNkOyB9XG4gIGEubGlzdC1ncm91cC1pdGVtLXN1Y2Nlc3MgLmxpc3QtZ3JvdXAtaXRlbS1oZWFkaW5nLFxuICBidXR0b24ubGlzdC1ncm91cC1pdGVtLXN1Y2Nlc3MgLmxpc3QtZ3JvdXAtaXRlbS1oZWFkaW5nIHtcbiAgICBjb2xvcjogaW5oZXJpdDsgfVxuICBhLmxpc3QtZ3JvdXAtaXRlbS1zdWNjZXNzOmhvdmVyLCBhLmxpc3QtZ3JvdXAtaXRlbS1zdWNjZXNzOmZvY3VzLFxuICBidXR0b24ubGlzdC1ncm91cC1pdGVtLXN1Y2Nlc3M6aG92ZXIsXG4gIGJ1dHRvbi5saXN0LWdyb3VwLWl0ZW0tc3VjY2Vzczpmb2N1cyB7XG4gICAgY29sb3I6ICMzYzc2M2Q7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogI2QwZTljNjsgfVxuICBhLmxpc3QtZ3JvdXAtaXRlbS1zdWNjZXNzLmFjdGl2ZSwgYS5saXN0LWdyb3VwLWl0ZW0tc3VjY2Vzcy5hY3RpdmU6aG92ZXIsIGEubGlzdC1ncm91cC1pdGVtLXN1Y2Nlc3MuYWN0aXZlOmZvY3VzLFxuICBidXR0b24ubGlzdC1ncm91cC1pdGVtLXN1Y2Nlc3MuYWN0aXZlLFxuICBidXR0b24ubGlzdC1ncm91cC1pdGVtLXN1Y2Nlc3MuYWN0aXZlOmhvdmVyLFxuICBidXR0b24ubGlzdC1ncm91cC1pdGVtLXN1Y2Nlc3MuYWN0aXZlOmZvY3VzIHtcbiAgICBjb2xvcjogI2ZmZjtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjM2M3NjNkO1xuICAgIGJvcmRlci1jb2xvcjogIzNjNzYzZDsgfVxuXG4ubGlzdC1ncm91cC1pdGVtLWluZm8ge1xuICBjb2xvcjogIzMxNzA4ZjtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2Q5ZWRmNzsgfVxuXG5hLmxpc3QtZ3JvdXAtaXRlbS1pbmZvLFxuYnV0dG9uLmxpc3QtZ3JvdXAtaXRlbS1pbmZvIHtcbiAgY29sb3I6ICMzMTcwOGY7IH1cbiAgYS5saXN0LWdyb3VwLWl0ZW0taW5mbyAubGlzdC1ncm91cC1pdGVtLWhlYWRpbmcsXG4gIGJ1dHRvbi5saXN0LWdyb3VwLWl0ZW0taW5mbyAubGlzdC1ncm91cC1pdGVtLWhlYWRpbmcge1xuICAgIGNvbG9yOiBpbmhlcml0OyB9XG4gIGEubGlzdC1ncm91cC1pdGVtLWluZm86aG92ZXIsIGEubGlzdC1ncm91cC1pdGVtLWluZm86Zm9jdXMsXG4gIGJ1dHRvbi5saXN0LWdyb3VwLWl0ZW0taW5mbzpob3ZlcixcbiAgYnV0dG9uLmxpc3QtZ3JvdXAtaXRlbS1pbmZvOmZvY3VzIHtcbiAgICBjb2xvcjogIzMxNzA4ZjtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjYzRlM2YzOyB9XG4gIGEubGlzdC1ncm91cC1pdGVtLWluZm8uYWN0aXZlLCBhLmxpc3QtZ3JvdXAtaXRlbS1pbmZvLmFjdGl2ZTpob3ZlciwgYS5saXN0LWdyb3VwLWl0ZW0taW5mby5hY3RpdmU6Zm9jdXMsXG4gIGJ1dHRvbi5saXN0LWdyb3VwLWl0ZW0taW5mby5hY3RpdmUsXG4gIGJ1dHRvbi5saXN0LWdyb3VwLWl0ZW0taW5mby5hY3RpdmU6aG92ZXIsXG4gIGJ1dHRvbi5saXN0LWdyb3VwLWl0ZW0taW5mby5hY3RpdmU6Zm9jdXMge1xuICAgIGNvbG9yOiAjZmZmO1xuICAgIGJhY2tncm91bmQtY29sb3I6ICMzMTcwOGY7XG4gICAgYm9yZGVyLWNvbG9yOiAjMzE3MDhmOyB9XG5cbi5saXN0LWdyb3VwLWl0ZW0td2FybmluZyB7XG4gIGNvbG9yOiAjOGE2ZDNiO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZmNmOGUzOyB9XG5cbmEubGlzdC1ncm91cC1pdGVtLXdhcm5pbmcsXG5idXR0b24ubGlzdC1ncm91cC1pdGVtLXdhcm5pbmcge1xuICBjb2xvcjogIzhhNmQzYjsgfVxuICBhLmxpc3QtZ3JvdXAtaXRlbS13YXJuaW5nIC5saXN0LWdyb3VwLWl0ZW0taGVhZGluZyxcbiAgYnV0dG9uLmxpc3QtZ3JvdXAtaXRlbS13YXJuaW5nIC5saXN0LWdyb3VwLWl0ZW0taGVhZGluZyB7XG4gICAgY29sb3I6IGluaGVyaXQ7IH1cbiAgYS5saXN0LWdyb3VwLWl0ZW0td2FybmluZzpob3ZlciwgYS5saXN0LWdyb3VwLWl0ZW0td2FybmluZzpmb2N1cyxcbiAgYnV0dG9uLmxpc3QtZ3JvdXAtaXRlbS13YXJuaW5nOmhvdmVyLFxuICBidXR0b24ubGlzdC1ncm91cC1pdGVtLXdhcm5pbmc6Zm9jdXMge1xuICAgIGNvbG9yOiAjOGE2ZDNiO1xuICAgIGJhY2tncm91bmQtY29sb3I6ICNmYWYyY2M7IH1cbiAgYS5saXN0LWdyb3VwLWl0ZW0td2FybmluZy5hY3RpdmUsIGEubGlzdC1ncm91cC1pdGVtLXdhcm5pbmcuYWN0aXZlOmhvdmVyLCBhLmxpc3QtZ3JvdXAtaXRlbS13YXJuaW5nLmFjdGl2ZTpmb2N1cyxcbiAgYnV0dG9uLmxpc3QtZ3JvdXAtaXRlbS13YXJuaW5nLmFjdGl2ZSxcbiAgYnV0dG9uLmxpc3QtZ3JvdXAtaXRlbS13YXJuaW5nLmFjdGl2ZTpob3ZlcixcbiAgYnV0dG9uLmxpc3QtZ3JvdXAtaXRlbS13YXJuaW5nLmFjdGl2ZTpmb2N1cyB7XG4gICAgY29sb3I6ICNmZmY7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogIzhhNmQzYjtcbiAgICBib3JkZXItY29sb3I6ICM4YTZkM2I7IH1cblxuLmxpc3QtZ3JvdXAtaXRlbS1kYW5nZXIge1xuICBjb2xvcjogI2E5NDQ0MjtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2YyZGVkZTsgfVxuXG5hLmxpc3QtZ3JvdXAtaXRlbS1kYW5nZXIsXG5idXR0b24ubGlzdC1ncm91cC1pdGVtLWRhbmdlciB7XG4gIGNvbG9yOiAjYTk0NDQyOyB9XG4gIGEubGlzdC1ncm91cC1pdGVtLWRhbmdlciAubGlzdC1ncm91cC1pdGVtLWhlYWRpbmcsXG4gIGJ1dHRvbi5saXN0LWdyb3VwLWl0ZW0tZGFuZ2VyIC5saXN0LWdyb3VwLWl0ZW0taGVhZGluZyB7XG4gICAgY29sb3I6IGluaGVyaXQ7IH1cbiAgYS5saXN0LWdyb3VwLWl0ZW0tZGFuZ2VyOmhvdmVyLCBhLmxpc3QtZ3JvdXAtaXRlbS1kYW5nZXI6Zm9jdXMsXG4gIGJ1dHRvbi5saXN0LWdyb3VwLWl0ZW0tZGFuZ2VyOmhvdmVyLFxuICBidXR0b24ubGlzdC1ncm91cC1pdGVtLWRhbmdlcjpmb2N1cyB7XG4gICAgY29sb3I6ICNhOTQ0NDI7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogI2ViY2NjYzsgfVxuICBhLmxpc3QtZ3JvdXAtaXRlbS1kYW5nZXIuYWN0aXZlLCBhLmxpc3QtZ3JvdXAtaXRlbS1kYW5nZXIuYWN0aXZlOmhvdmVyLCBhLmxpc3QtZ3JvdXAtaXRlbS1kYW5nZXIuYWN0aXZlOmZvY3VzLFxuICBidXR0b24ubGlzdC1ncm91cC1pdGVtLWRhbmdlci5hY3RpdmUsXG4gIGJ1dHRvbi5saXN0LWdyb3VwLWl0ZW0tZGFuZ2VyLmFjdGl2ZTpob3ZlcixcbiAgYnV0dG9uLmxpc3QtZ3JvdXAtaXRlbS1kYW5nZXIuYWN0aXZlOmZvY3VzIHtcbiAgICBjb2xvcjogI2ZmZjtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjYTk0NDQyO1xuICAgIGJvcmRlci1jb2xvcjogI2E5NDQ0MjsgfVxuXG4ubGlzdC1ncm91cC1pdGVtLWhlYWRpbmcge1xuICBtYXJnaW4tdG9wOiAwO1xuICBtYXJnaW4tYm90dG9tOiA1cHg7IH1cblxuLmxpc3QtZ3JvdXAtaXRlbS10ZXh0IHtcbiAgbWFyZ2luLWJvdHRvbTogMDtcbiAgbGluZS1oZWlnaHQ6IDEuMzsgfVxuXG4ucGFuZWwge1xuICBtYXJnaW4tYm90dG9tOiAyMHB4O1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZmZmO1xuICBib3JkZXI6IDFweCBzb2xpZCB0cmFuc3BhcmVudDtcbiAgYm9yZGVyLXJhZGl1czogNHB4O1xuICAtd2Via2l0LWJveC1zaGFkb3c6IDAgMXB4IDFweCByZ2JhKDAsIDAsIDAsIDAuMDUpO1xuICBib3gtc2hhZG93OiAwIDFweCAxcHggcmdiYSgwLCAwLCAwLCAwLjA1KTsgfVxuXG4ucGFuZWwtYm9keSB7XG4gIHBhZGRpbmc6IDE1cHg7IH1cbiAgLnBhbmVsLWJvZHk6YmVmb3JlLCAucGFuZWwtYm9keTphZnRlciB7XG4gICAgY29udGVudDogXCIgXCI7XG4gICAgZGlzcGxheTogdGFibGU7IH1cbiAgLnBhbmVsLWJvZHk6YWZ0ZXIge1xuICAgIGNsZWFyOiBib3RoOyB9XG5cbi5wYW5lbC1oZWFkaW5nIHtcbiAgcGFkZGluZzogMTBweCAxNXB4O1xuICBib3JkZXItYm90dG9tOiAxcHggc29saWQgdHJhbnNwYXJlbnQ7XG4gIGJvcmRlci10b3AtcmlnaHQtcmFkaXVzOiAzcHg7XG4gIGJvcmRlci10b3AtbGVmdC1yYWRpdXM6IDNweDsgfVxuICAucGFuZWwtaGVhZGluZyA+IC5kcm9wZG93biAuZHJvcGRvd24tdG9nZ2xlIHtcbiAgICBjb2xvcjogaW5oZXJpdDsgfVxuXG4ucGFuZWwtdGl0bGUge1xuICBtYXJnaW4tdG9wOiAwO1xuICBtYXJnaW4tYm90dG9tOiAwO1xuICBmb250LXNpemU6IDE2cHg7XG4gIGNvbG9yOiBpbmhlcml0OyB9XG4gIC5wYW5lbC10aXRsZSA+IGEsXG4gIC5wYW5lbC10aXRsZSA+IHNtYWxsLFxuICAucGFuZWwtdGl0bGUgPiAuc21hbGwsXG4gIC5wYW5lbC10aXRsZSA+IHNtYWxsID4gYSxcbiAgLnBhbmVsLXRpdGxlID4gLnNtYWxsID4gYSB7XG4gICAgY29sb3I6IGluaGVyaXQ7IH1cblxuLnBhbmVsLWZvb3RlciB7XG4gIHBhZGRpbmc6IDEwcHggMTVweDtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2Y1ZjVmNTtcbiAgYm9yZGVyLXRvcDogMXB4IHNvbGlkICNkZGQ7XG4gIGJvcmRlci1ib3R0b20tcmlnaHQtcmFkaXVzOiAzcHg7XG4gIGJvcmRlci1ib3R0b20tbGVmdC1yYWRpdXM6IDNweDsgfVxuXG4ucGFuZWwgPiAubGlzdC1ncm91cCxcbi5wYW5lbCA+IC5wYW5lbC1jb2xsYXBzZSA+IC5saXN0LWdyb3VwIHtcbiAgbWFyZ2luLWJvdHRvbTogMDsgfVxuICAucGFuZWwgPiAubGlzdC1ncm91cCAubGlzdC1ncm91cC1pdGVtLFxuICAucGFuZWwgPiAucGFuZWwtY29sbGFwc2UgPiAubGlzdC1ncm91cCAubGlzdC1ncm91cC1pdGVtIHtcbiAgICBib3JkZXItd2lkdGg6IDFweCAwO1xuICAgIGJvcmRlci1yYWRpdXM6IDA7IH1cbiAgLnBhbmVsID4gLmxpc3QtZ3JvdXA6Zmlyc3QtY2hpbGQgLmxpc3QtZ3JvdXAtaXRlbTpmaXJzdC1jaGlsZCxcbiAgLnBhbmVsID4gLnBhbmVsLWNvbGxhcHNlID4gLmxpc3QtZ3JvdXA6Zmlyc3QtY2hpbGQgLmxpc3QtZ3JvdXAtaXRlbTpmaXJzdC1jaGlsZCB7XG4gICAgYm9yZGVyLXRvcDogMDtcbiAgICBib3JkZXItdG9wLXJpZ2h0LXJhZGl1czogM3B4O1xuICAgIGJvcmRlci10b3AtbGVmdC1yYWRpdXM6IDNweDsgfVxuICAucGFuZWwgPiAubGlzdC1ncm91cDpsYXN0LWNoaWxkIC5saXN0LWdyb3VwLWl0ZW06bGFzdC1jaGlsZCxcbiAgLnBhbmVsID4gLnBhbmVsLWNvbGxhcHNlID4gLmxpc3QtZ3JvdXA6bGFzdC1jaGlsZCAubGlzdC1ncm91cC1pdGVtOmxhc3QtY2hpbGQge1xuICAgIGJvcmRlci1ib3R0b206IDA7XG4gICAgYm9yZGVyLWJvdHRvbS1yaWdodC1yYWRpdXM6IDNweDtcbiAgICBib3JkZXItYm90dG9tLWxlZnQtcmFkaXVzOiAzcHg7IH1cblxuLnBhbmVsID4gLnBhbmVsLWhlYWRpbmcgKyAucGFuZWwtY29sbGFwc2UgPiAubGlzdC1ncm91cCAubGlzdC1ncm91cC1pdGVtOmZpcnN0LWNoaWxkIHtcbiAgYm9yZGVyLXRvcC1yaWdodC1yYWRpdXM6IDA7XG4gIGJvcmRlci10b3AtbGVmdC1yYWRpdXM6IDA7IH1cblxuLnBhbmVsLWhlYWRpbmcgKyAubGlzdC1ncm91cCAubGlzdC1ncm91cC1pdGVtOmZpcnN0LWNoaWxkIHtcbiAgYm9yZGVyLXRvcC13aWR0aDogMDsgfVxuXG4ubGlzdC1ncm91cCArIC5wYW5lbC1mb290ZXIge1xuICBib3JkZXItdG9wLXdpZHRoOiAwOyB9XG5cbi5wYW5lbCA+IC50YWJsZSxcbi5wYW5lbCA+IC50YWJsZS1yZXNwb25zaXZlID4gLnRhYmxlLFxuLnBhbmVsID4gLnBhbmVsLWNvbGxhcHNlID4gLnRhYmxlIHtcbiAgbWFyZ2luLWJvdHRvbTogMDsgfVxuICAucGFuZWwgPiAudGFibGUgY2FwdGlvbixcbiAgLnBhbmVsID4gLnRhYmxlLXJlc3BvbnNpdmUgPiAudGFibGUgY2FwdGlvbixcbiAgLnBhbmVsID4gLnBhbmVsLWNvbGxhcHNlID4gLnRhYmxlIGNhcHRpb24ge1xuICAgIHBhZGRpbmctbGVmdDogMTVweDtcbiAgICBwYWRkaW5nLXJpZ2h0OiAxNXB4OyB9XG5cbi5wYW5lbCA+IC50YWJsZTpmaXJzdC1jaGlsZCxcbi5wYW5lbCA+IC50YWJsZS1yZXNwb25zaXZlOmZpcnN0LWNoaWxkID4gLnRhYmxlOmZpcnN0LWNoaWxkIHtcbiAgYm9yZGVyLXRvcC1yaWdodC1yYWRpdXM6IDNweDtcbiAgYm9yZGVyLXRvcC1sZWZ0LXJhZGl1czogM3B4OyB9XG4gIC5wYW5lbCA+IC50YWJsZTpmaXJzdC1jaGlsZCA+IHRoZWFkOmZpcnN0LWNoaWxkID4gdHI6Zmlyc3QtY2hpbGQsXG4gIC5wYW5lbCA+IC50YWJsZTpmaXJzdC1jaGlsZCA+IHRib2R5OmZpcnN0LWNoaWxkID4gdHI6Zmlyc3QtY2hpbGQsXG4gIC5wYW5lbCA+IC50YWJsZS1yZXNwb25zaXZlOmZpcnN0LWNoaWxkID4gLnRhYmxlOmZpcnN0LWNoaWxkID4gdGhlYWQ6Zmlyc3QtY2hpbGQgPiB0cjpmaXJzdC1jaGlsZCxcbiAgLnBhbmVsID4gLnRhYmxlLXJlc3BvbnNpdmU6Zmlyc3QtY2hpbGQgPiAudGFibGU6Zmlyc3QtY2hpbGQgPiB0Ym9keTpmaXJzdC1jaGlsZCA+IHRyOmZpcnN0LWNoaWxkIHtcbiAgICBib3JkZXItdG9wLWxlZnQtcmFkaXVzOiAzcHg7XG4gICAgYm9yZGVyLXRvcC1yaWdodC1yYWRpdXM6IDNweDsgfVxuICAgIC5wYW5lbCA+IC50YWJsZTpmaXJzdC1jaGlsZCA+IHRoZWFkOmZpcnN0LWNoaWxkID4gdHI6Zmlyc3QtY2hpbGQgdGQ6Zmlyc3QtY2hpbGQsXG4gICAgLnBhbmVsID4gLnRhYmxlOmZpcnN0LWNoaWxkID4gdGhlYWQ6Zmlyc3QtY2hpbGQgPiB0cjpmaXJzdC1jaGlsZCB0aDpmaXJzdC1jaGlsZCxcbiAgICAucGFuZWwgPiAudGFibGU6Zmlyc3QtY2hpbGQgPiB0Ym9keTpmaXJzdC1jaGlsZCA+IHRyOmZpcnN0LWNoaWxkIHRkOmZpcnN0LWNoaWxkLFxuICAgIC5wYW5lbCA+IC50YWJsZTpmaXJzdC1jaGlsZCA+IHRib2R5OmZpcnN0LWNoaWxkID4gdHI6Zmlyc3QtY2hpbGQgdGg6Zmlyc3QtY2hpbGQsXG4gICAgLnBhbmVsID4gLnRhYmxlLXJlc3BvbnNpdmU6Zmlyc3QtY2hpbGQgPiAudGFibGU6Zmlyc3QtY2hpbGQgPiB0aGVhZDpmaXJzdC1jaGlsZCA+IHRyOmZpcnN0LWNoaWxkIHRkOmZpcnN0LWNoaWxkLFxuICAgIC5wYW5lbCA+IC50YWJsZS1yZXNwb25zaXZlOmZpcnN0LWNoaWxkID4gLnRhYmxlOmZpcnN0LWNoaWxkID4gdGhlYWQ6Zmlyc3QtY2hpbGQgPiB0cjpmaXJzdC1jaGlsZCB0aDpmaXJzdC1jaGlsZCxcbiAgICAucGFuZWwgPiAudGFibGUtcmVzcG9uc2l2ZTpmaXJzdC1jaGlsZCA+IC50YWJsZTpmaXJzdC1jaGlsZCA+IHRib2R5OmZpcnN0LWNoaWxkID4gdHI6Zmlyc3QtY2hpbGQgdGQ6Zmlyc3QtY2hpbGQsXG4gICAgLnBhbmVsID4gLnRhYmxlLXJlc3BvbnNpdmU6Zmlyc3QtY2hpbGQgPiAudGFibGU6Zmlyc3QtY2hpbGQgPiB0Ym9keTpmaXJzdC1jaGlsZCA+IHRyOmZpcnN0LWNoaWxkIHRoOmZpcnN0LWNoaWxkIHtcbiAgICAgIGJvcmRlci10b3AtbGVmdC1yYWRpdXM6IDNweDsgfVxuICAgIC5wYW5lbCA+IC50YWJsZTpmaXJzdC1jaGlsZCA+IHRoZWFkOmZpcnN0LWNoaWxkID4gdHI6Zmlyc3QtY2hpbGQgdGQ6bGFzdC1jaGlsZCxcbiAgICAucGFuZWwgPiAudGFibGU6Zmlyc3QtY2hpbGQgPiB0aGVhZDpmaXJzdC1jaGlsZCA+IHRyOmZpcnN0LWNoaWxkIHRoOmxhc3QtY2hpbGQsXG4gICAgLnBhbmVsID4gLnRhYmxlOmZpcnN0LWNoaWxkID4gdGJvZHk6Zmlyc3QtY2hpbGQgPiB0cjpmaXJzdC1jaGlsZCB0ZDpsYXN0LWNoaWxkLFxuICAgIC5wYW5lbCA+IC50YWJsZTpmaXJzdC1jaGlsZCA+IHRib2R5OmZpcnN0LWNoaWxkID4gdHI6Zmlyc3QtY2hpbGQgdGg6bGFzdC1jaGlsZCxcbiAgICAucGFuZWwgPiAudGFibGUtcmVzcG9uc2l2ZTpmaXJzdC1jaGlsZCA+IC50YWJsZTpmaXJzdC1jaGlsZCA+IHRoZWFkOmZpcnN0LWNoaWxkID4gdHI6Zmlyc3QtY2hpbGQgdGQ6bGFzdC1jaGlsZCxcbiAgICAucGFuZWwgPiAudGFibGUtcmVzcG9uc2l2ZTpmaXJzdC1jaGlsZCA+IC50YWJsZTpmaXJzdC1jaGlsZCA+IHRoZWFkOmZpcnN0LWNoaWxkID4gdHI6Zmlyc3QtY2hpbGQgdGg6bGFzdC1jaGlsZCxcbiAgICAucGFuZWwgPiAudGFibGUtcmVzcG9uc2l2ZTpmaXJzdC1jaGlsZCA+IC50YWJsZTpmaXJzdC1jaGlsZCA+IHRib2R5OmZpcnN0LWNoaWxkID4gdHI6Zmlyc3QtY2hpbGQgdGQ6bGFzdC1jaGlsZCxcbiAgICAucGFuZWwgPiAudGFibGUtcmVzcG9uc2l2ZTpmaXJzdC1jaGlsZCA+IC50YWJsZTpmaXJzdC1jaGlsZCA+IHRib2R5OmZpcnN0LWNoaWxkID4gdHI6Zmlyc3QtY2hpbGQgdGg6bGFzdC1jaGlsZCB7XG4gICAgICBib3JkZXItdG9wLXJpZ2h0LXJhZGl1czogM3B4OyB9XG5cbi5wYW5lbCA+IC50YWJsZTpsYXN0LWNoaWxkLFxuLnBhbmVsID4gLnRhYmxlLXJlc3BvbnNpdmU6bGFzdC1jaGlsZCA+IC50YWJsZTpsYXN0LWNoaWxkIHtcbiAgYm9yZGVyLWJvdHRvbS1yaWdodC1yYWRpdXM6IDNweDtcbiAgYm9yZGVyLWJvdHRvbS1sZWZ0LXJhZGl1czogM3B4OyB9XG4gIC5wYW5lbCA+IC50YWJsZTpsYXN0LWNoaWxkID4gdGJvZHk6bGFzdC1jaGlsZCA+IHRyOmxhc3QtY2hpbGQsXG4gIC5wYW5lbCA+IC50YWJsZTpsYXN0LWNoaWxkID4gdGZvb3Q6bGFzdC1jaGlsZCA+IHRyOmxhc3QtY2hpbGQsXG4gIC5wYW5lbCA+IC50YWJsZS1yZXNwb25zaXZlOmxhc3QtY2hpbGQgPiAudGFibGU6bGFzdC1jaGlsZCA+IHRib2R5Omxhc3QtY2hpbGQgPiB0cjpsYXN0LWNoaWxkLFxuICAucGFuZWwgPiAudGFibGUtcmVzcG9uc2l2ZTpsYXN0LWNoaWxkID4gLnRhYmxlOmxhc3QtY2hpbGQgPiB0Zm9vdDpsYXN0LWNoaWxkID4gdHI6bGFzdC1jaGlsZCB7XG4gICAgYm9yZGVyLWJvdHRvbS1sZWZ0LXJhZGl1czogM3B4O1xuICAgIGJvcmRlci1ib3R0b20tcmlnaHQtcmFkaXVzOiAzcHg7IH1cbiAgICAucGFuZWwgPiAudGFibGU6bGFzdC1jaGlsZCA+IHRib2R5Omxhc3QtY2hpbGQgPiB0cjpsYXN0LWNoaWxkIHRkOmZpcnN0LWNoaWxkLFxuICAgIC5wYW5lbCA+IC50YWJsZTpsYXN0LWNoaWxkID4gdGJvZHk6bGFzdC1jaGlsZCA+IHRyOmxhc3QtY2hpbGQgdGg6Zmlyc3QtY2hpbGQsXG4gICAgLnBhbmVsID4gLnRhYmxlOmxhc3QtY2hpbGQgPiB0Zm9vdDpsYXN0LWNoaWxkID4gdHI6bGFzdC1jaGlsZCB0ZDpmaXJzdC1jaGlsZCxcbiAgICAucGFuZWwgPiAudGFibGU6bGFzdC1jaGlsZCA+IHRmb290Omxhc3QtY2hpbGQgPiB0cjpsYXN0LWNoaWxkIHRoOmZpcnN0LWNoaWxkLFxuICAgIC5wYW5lbCA+IC50YWJsZS1yZXNwb25zaXZlOmxhc3QtY2hpbGQgPiAudGFibGU6bGFzdC1jaGlsZCA+IHRib2R5Omxhc3QtY2hpbGQgPiB0cjpsYXN0LWNoaWxkIHRkOmZpcnN0LWNoaWxkLFxuICAgIC5wYW5lbCA+IC50YWJsZS1yZXNwb25zaXZlOmxhc3QtY2hpbGQgPiAudGFibGU6bGFzdC1jaGlsZCA+IHRib2R5Omxhc3QtY2hpbGQgPiB0cjpsYXN0LWNoaWxkIHRoOmZpcnN0LWNoaWxkLFxuICAgIC5wYW5lbCA+IC50YWJsZS1yZXNwb25zaXZlOmxhc3QtY2hpbGQgPiAudGFibGU6bGFzdC1jaGlsZCA+IHRmb290Omxhc3QtY2hpbGQgPiB0cjpsYXN0LWNoaWxkIHRkOmZpcnN0LWNoaWxkLFxuICAgIC5wYW5lbCA+IC50YWJsZS1yZXNwb25zaXZlOmxhc3QtY2hpbGQgPiAudGFibGU6bGFzdC1jaGlsZCA+IHRmb290Omxhc3QtY2hpbGQgPiB0cjpsYXN0LWNoaWxkIHRoOmZpcnN0LWNoaWxkIHtcbiAgICAgIGJvcmRlci1ib3R0b20tbGVmdC1yYWRpdXM6IDNweDsgfVxuICAgIC5wYW5lbCA+IC50YWJsZTpsYXN0LWNoaWxkID4gdGJvZHk6bGFzdC1jaGlsZCA+IHRyOmxhc3QtY2hpbGQgdGQ6bGFzdC1jaGlsZCxcbiAgICAucGFuZWwgPiAudGFibGU6bGFzdC1jaGlsZCA+IHRib2R5Omxhc3QtY2hpbGQgPiB0cjpsYXN0LWNoaWxkIHRoOmxhc3QtY2hpbGQsXG4gICAgLnBhbmVsID4gLnRhYmxlOmxhc3QtY2hpbGQgPiB0Zm9vdDpsYXN0LWNoaWxkID4gdHI6bGFzdC1jaGlsZCB0ZDpsYXN0LWNoaWxkLFxuICAgIC5wYW5lbCA+IC50YWJsZTpsYXN0LWNoaWxkID4gdGZvb3Q6bGFzdC1jaGlsZCA+IHRyOmxhc3QtY2hpbGQgdGg6bGFzdC1jaGlsZCxcbiAgICAucGFuZWwgPiAudGFibGUtcmVzcG9uc2l2ZTpsYXN0LWNoaWxkID4gLnRhYmxlOmxhc3QtY2hpbGQgPiB0Ym9keTpsYXN0LWNoaWxkID4gdHI6bGFzdC1jaGlsZCB0ZDpsYXN0LWNoaWxkLFxuICAgIC5wYW5lbCA+IC50YWJsZS1yZXNwb25zaXZlOmxhc3QtY2hpbGQgPiAudGFibGU6bGFzdC1jaGlsZCA+IHRib2R5Omxhc3QtY2hpbGQgPiB0cjpsYXN0LWNoaWxkIHRoOmxhc3QtY2hpbGQsXG4gICAgLnBhbmVsID4gLnRhYmxlLXJlc3BvbnNpdmU6bGFzdC1jaGlsZCA+IC50YWJsZTpsYXN0LWNoaWxkID4gdGZvb3Q6bGFzdC1jaGlsZCA+IHRyOmxhc3QtY2hpbGQgdGQ6bGFzdC1jaGlsZCxcbiAgICAucGFuZWwgPiAudGFibGUtcmVzcG9uc2l2ZTpsYXN0LWNoaWxkID4gLnRhYmxlOmxhc3QtY2hpbGQgPiB0Zm9vdDpsYXN0LWNoaWxkID4gdHI6bGFzdC1jaGlsZCB0aDpsYXN0LWNoaWxkIHtcbiAgICAgIGJvcmRlci1ib3R0b20tcmlnaHQtcmFkaXVzOiAzcHg7IH1cblxuLnBhbmVsID4gLnBhbmVsLWJvZHkgKyAudGFibGUsXG4ucGFuZWwgPiAucGFuZWwtYm9keSArIC50YWJsZS1yZXNwb25zaXZlLFxuLnBhbmVsID4gLnRhYmxlICsgLnBhbmVsLWJvZHksXG4ucGFuZWwgPiAudGFibGUtcmVzcG9uc2l2ZSArIC5wYW5lbC1ib2R5IHtcbiAgYm9yZGVyLXRvcDogMXB4IHNvbGlkICNkZGQ7IH1cblxuLnBhbmVsID4gLnRhYmxlID4gdGJvZHk6Zmlyc3QtY2hpbGQgPiB0cjpmaXJzdC1jaGlsZCB0aCxcbi5wYW5lbCA+IC50YWJsZSA+IHRib2R5OmZpcnN0LWNoaWxkID4gdHI6Zmlyc3QtY2hpbGQgdGQge1xuICBib3JkZXItdG9wOiAwOyB9XG5cbi5wYW5lbCA+IC50YWJsZS1ib3JkZXJlZCxcbi5wYW5lbCA+IC50YWJsZS1yZXNwb25zaXZlID4gLnRhYmxlLWJvcmRlcmVkIHtcbiAgYm9yZGVyOiAwOyB9XG4gIC5wYW5lbCA+IC50YWJsZS1ib3JkZXJlZCA+IHRoZWFkID4gdHIgPiB0aDpmaXJzdC1jaGlsZCxcbiAgLnBhbmVsID4gLnRhYmxlLWJvcmRlcmVkID4gdGhlYWQgPiB0ciA+IHRkOmZpcnN0LWNoaWxkLFxuICAucGFuZWwgPiAudGFibGUtYm9yZGVyZWQgPiB0Ym9keSA+IHRyID4gdGg6Zmlyc3QtY2hpbGQsXG4gIC5wYW5lbCA+IC50YWJsZS1ib3JkZXJlZCA+IHRib2R5ID4gdHIgPiB0ZDpmaXJzdC1jaGlsZCxcbiAgLnBhbmVsID4gLnRhYmxlLWJvcmRlcmVkID4gdGZvb3QgPiB0ciA+IHRoOmZpcnN0LWNoaWxkLFxuICAucGFuZWwgPiAudGFibGUtYm9yZGVyZWQgPiB0Zm9vdCA+IHRyID4gdGQ6Zmlyc3QtY2hpbGQsXG4gIC5wYW5lbCA+IC50YWJsZS1yZXNwb25zaXZlID4gLnRhYmxlLWJvcmRlcmVkID4gdGhlYWQgPiB0ciA+IHRoOmZpcnN0LWNoaWxkLFxuICAucGFuZWwgPiAudGFibGUtcmVzcG9uc2l2ZSA+IC50YWJsZS1ib3JkZXJlZCA+IHRoZWFkID4gdHIgPiB0ZDpmaXJzdC1jaGlsZCxcbiAgLnBhbmVsID4gLnRhYmxlLXJlc3BvbnNpdmUgPiAudGFibGUtYm9yZGVyZWQgPiB0Ym9keSA+IHRyID4gdGg6Zmlyc3QtY2hpbGQsXG4gIC5wYW5lbCA+IC50YWJsZS1yZXNwb25zaXZlID4gLnRhYmxlLWJvcmRlcmVkID4gdGJvZHkgPiB0ciA+IHRkOmZpcnN0LWNoaWxkLFxuICAucGFuZWwgPiAudGFibGUtcmVzcG9uc2l2ZSA+IC50YWJsZS1ib3JkZXJlZCA+IHRmb290ID4gdHIgPiB0aDpmaXJzdC1jaGlsZCxcbiAgLnBhbmVsID4gLnRhYmxlLXJlc3BvbnNpdmUgPiAudGFibGUtYm9yZGVyZWQgPiB0Zm9vdCA+IHRyID4gdGQ6Zmlyc3QtY2hpbGQge1xuICAgIGJvcmRlci1sZWZ0OiAwOyB9XG4gIC5wYW5lbCA+IC50YWJsZS1ib3JkZXJlZCA+IHRoZWFkID4gdHIgPiB0aDpsYXN0LWNoaWxkLFxuICAucGFuZWwgPiAudGFibGUtYm9yZGVyZWQgPiB0aGVhZCA+IHRyID4gdGQ6bGFzdC1jaGlsZCxcbiAgLnBhbmVsID4gLnRhYmxlLWJvcmRlcmVkID4gdGJvZHkgPiB0ciA+IHRoOmxhc3QtY2hpbGQsXG4gIC5wYW5lbCA+IC50YWJsZS1ib3JkZXJlZCA+IHRib2R5ID4gdHIgPiB0ZDpsYXN0LWNoaWxkLFxuICAucGFuZWwgPiAudGFibGUtYm9yZGVyZWQgPiB0Zm9vdCA+IHRyID4gdGg6bGFzdC1jaGlsZCxcbiAgLnBhbmVsID4gLnRhYmxlLWJvcmRlcmVkID4gdGZvb3QgPiB0ciA+IHRkOmxhc3QtY2hpbGQsXG4gIC5wYW5lbCA+IC50YWJsZS1yZXNwb25zaXZlID4gLnRhYmxlLWJvcmRlcmVkID4gdGhlYWQgPiB0ciA+IHRoOmxhc3QtY2hpbGQsXG4gIC5wYW5lbCA+IC50YWJsZS1yZXNwb25zaXZlID4gLnRhYmxlLWJvcmRlcmVkID4gdGhlYWQgPiB0ciA+IHRkOmxhc3QtY2hpbGQsXG4gIC5wYW5lbCA+IC50YWJsZS1yZXNwb25zaXZlID4gLnRhYmxlLWJvcmRlcmVkID4gdGJvZHkgPiB0ciA+IHRoOmxhc3QtY2hpbGQsXG4gIC5wYW5lbCA+IC50YWJsZS1yZXNwb25zaXZlID4gLnRhYmxlLWJvcmRlcmVkID4gdGJvZHkgPiB0ciA+IHRkOmxhc3QtY2hpbGQsXG4gIC5wYW5lbCA+IC50YWJsZS1yZXNwb25zaXZlID4gLnRhYmxlLWJvcmRlcmVkID4gdGZvb3QgPiB0ciA+IHRoOmxhc3QtY2hpbGQsXG4gIC5wYW5lbCA+IC50YWJsZS1yZXNwb25zaXZlID4gLnRhYmxlLWJvcmRlcmVkID4gdGZvb3QgPiB0ciA+IHRkOmxhc3QtY2hpbGQge1xuICAgIGJvcmRlci1yaWdodDogMDsgfVxuICAucGFuZWwgPiAudGFibGUtYm9yZGVyZWQgPiB0aGVhZCA+IHRyOmZpcnN0LWNoaWxkID4gdGQsXG4gIC5wYW5lbCA+IC50YWJsZS1ib3JkZXJlZCA+IHRoZWFkID4gdHI6Zmlyc3QtY2hpbGQgPiB0aCxcbiAgLnBhbmVsID4gLnRhYmxlLWJvcmRlcmVkID4gdGJvZHkgPiB0cjpmaXJzdC1jaGlsZCA+IHRkLFxuICAucGFuZWwgPiAudGFibGUtYm9yZGVyZWQgPiB0Ym9keSA+IHRyOmZpcnN0LWNoaWxkID4gdGgsXG4gIC5wYW5lbCA+IC50YWJsZS1yZXNwb25zaXZlID4gLnRhYmxlLWJvcmRlcmVkID4gdGhlYWQgPiB0cjpmaXJzdC1jaGlsZCA+IHRkLFxuICAucGFuZWwgPiAudGFibGUtcmVzcG9uc2l2ZSA+IC50YWJsZS1ib3JkZXJlZCA+IHRoZWFkID4gdHI6Zmlyc3QtY2hpbGQgPiB0aCxcbiAgLnBhbmVsID4gLnRhYmxlLXJlc3BvbnNpdmUgPiAudGFibGUtYm9yZGVyZWQgPiB0Ym9keSA+IHRyOmZpcnN0LWNoaWxkID4gdGQsXG4gIC5wYW5lbCA+IC50YWJsZS1yZXNwb25zaXZlID4gLnRhYmxlLWJvcmRlcmVkID4gdGJvZHkgPiB0cjpmaXJzdC1jaGlsZCA+IHRoIHtcbiAgICBib3JkZXItYm90dG9tOiAwOyB9XG4gIC5wYW5lbCA+IC50YWJsZS1ib3JkZXJlZCA+IHRib2R5ID4gdHI6bGFzdC1jaGlsZCA+IHRkLFxuICAucGFuZWwgPiAudGFibGUtYm9yZGVyZWQgPiB0Ym9keSA+IHRyOmxhc3QtY2hpbGQgPiB0aCxcbiAgLnBhbmVsID4gLnRhYmxlLWJvcmRlcmVkID4gdGZvb3QgPiB0cjpsYXN0LWNoaWxkID4gdGQsXG4gIC5wYW5lbCA+IC50YWJsZS1ib3JkZXJlZCA+IHRmb290ID4gdHI6bGFzdC1jaGlsZCA+IHRoLFxuICAucGFuZWwgPiAudGFibGUtcmVzcG9uc2l2ZSA+IC50YWJsZS1ib3JkZXJlZCA+IHRib2R5ID4gdHI6bGFzdC1jaGlsZCA+IHRkLFxuICAucGFuZWwgPiAudGFibGUtcmVzcG9uc2l2ZSA+IC50YWJsZS1ib3JkZXJlZCA+IHRib2R5ID4gdHI6bGFzdC1jaGlsZCA+IHRoLFxuICAucGFuZWwgPiAudGFibGUtcmVzcG9uc2l2ZSA+IC50YWJsZS1ib3JkZXJlZCA+IHRmb290ID4gdHI6bGFzdC1jaGlsZCA+IHRkLFxuICAucGFuZWwgPiAudGFibGUtcmVzcG9uc2l2ZSA+IC50YWJsZS1ib3JkZXJlZCA+IHRmb290ID4gdHI6bGFzdC1jaGlsZCA+IHRoIHtcbiAgICBib3JkZXItYm90dG9tOiAwOyB9XG5cbi5wYW5lbCA+IC50YWJsZS1yZXNwb25zaXZlIHtcbiAgYm9yZGVyOiAwO1xuICBtYXJnaW4tYm90dG9tOiAwOyB9XG5cbi5wYW5lbC1ncm91cCB7XG4gIG1hcmdpbi1ib3R0b206IDIwcHg7IH1cbiAgLnBhbmVsLWdyb3VwIC5wYW5lbCB7XG4gICAgbWFyZ2luLWJvdHRvbTogMDtcbiAgICBib3JkZXItcmFkaXVzOiA0cHg7IH1cbiAgICAucGFuZWwtZ3JvdXAgLnBhbmVsICsgLnBhbmVsIHtcbiAgICAgIG1hcmdpbi10b3A6IDVweDsgfVxuICAucGFuZWwtZ3JvdXAgLnBhbmVsLWhlYWRpbmcge1xuICAgIGJvcmRlci1ib3R0b206IDA7IH1cbiAgICAucGFuZWwtZ3JvdXAgLnBhbmVsLWhlYWRpbmcgKyAucGFuZWwtY29sbGFwc2UgPiAucGFuZWwtYm9keSxcbiAgICAucGFuZWwtZ3JvdXAgLnBhbmVsLWhlYWRpbmcgKyAucGFuZWwtY29sbGFwc2UgPiAubGlzdC1ncm91cCB7XG4gICAgICBib3JkZXItdG9wOiAxcHggc29saWQgI2RkZDsgfVxuICAucGFuZWwtZ3JvdXAgLnBhbmVsLWZvb3RlciB7XG4gICAgYm9yZGVyLXRvcDogMDsgfVxuICAgIC5wYW5lbC1ncm91cCAucGFuZWwtZm9vdGVyICsgLnBhbmVsLWNvbGxhcHNlIC5wYW5lbC1ib2R5IHtcbiAgICAgIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCAjZGRkOyB9XG5cbi5wYW5lbC1kZWZhdWx0IHtcbiAgYm9yZGVyLWNvbG9yOiAjZGRkOyB9XG4gIC5wYW5lbC1kZWZhdWx0ID4gLnBhbmVsLWhlYWRpbmcge1xuICAgIGNvbG9yOiAjMzMzMzMzO1xuICAgIGJhY2tncm91bmQtY29sb3I6ICNmNWY1ZjU7XG4gICAgYm9yZGVyLWNvbG9yOiAjZGRkOyB9XG4gICAgLnBhbmVsLWRlZmF1bHQgPiAucGFuZWwtaGVhZGluZyArIC5wYW5lbC1jb2xsYXBzZSA+IC5wYW5lbC1ib2R5IHtcbiAgICAgIGJvcmRlci10b3AtY29sb3I6ICNkZGQ7IH1cbiAgICAucGFuZWwtZGVmYXVsdCA+IC5wYW5lbC1oZWFkaW5nIC5iYWRnZSB7XG4gICAgICBjb2xvcjogI2Y1ZjVmNTtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6ICMzMzMzMzM7IH1cbiAgLnBhbmVsLWRlZmF1bHQgPiAucGFuZWwtZm9vdGVyICsgLnBhbmVsLWNvbGxhcHNlID4gLnBhbmVsLWJvZHkge1xuICAgIGJvcmRlci1ib3R0b20tY29sb3I6ICNkZGQ7IH1cblxuLnBhbmVsLXByaW1hcnkge1xuICBib3JkZXItY29sb3I6ICMzMzdhYjc7IH1cbiAgLnBhbmVsLXByaW1hcnkgPiAucGFuZWwtaGVhZGluZyB7XG4gICAgY29sb3I6ICNmZmY7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogIzMzN2FiNztcbiAgICBib3JkZXItY29sb3I6ICMzMzdhYjc7IH1cbiAgICAucGFuZWwtcHJpbWFyeSA+IC5wYW5lbC1oZWFkaW5nICsgLnBhbmVsLWNvbGxhcHNlID4gLnBhbmVsLWJvZHkge1xuICAgICAgYm9yZGVyLXRvcC1jb2xvcjogIzMzN2FiNzsgfVxuICAgIC5wYW5lbC1wcmltYXJ5ID4gLnBhbmVsLWhlYWRpbmcgLmJhZGdlIHtcbiAgICAgIGNvbG9yOiAjMzM3YWI3O1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogI2ZmZjsgfVxuICAucGFuZWwtcHJpbWFyeSA+IC5wYW5lbC1mb290ZXIgKyAucGFuZWwtY29sbGFwc2UgPiAucGFuZWwtYm9keSB7XG4gICAgYm9yZGVyLWJvdHRvbS1jb2xvcjogIzMzN2FiNzsgfVxuXG4ucGFuZWwtc3VjY2VzcyB7XG4gIGJvcmRlci1jb2xvcjogI2Q2ZTljNjsgfVxuICAucGFuZWwtc3VjY2VzcyA+IC5wYW5lbC1oZWFkaW5nIHtcbiAgICBjb2xvcjogIzNjNzYzZDtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjZGZmMGQ4O1xuICAgIGJvcmRlci1jb2xvcjogI2Q2ZTljNjsgfVxuICAgIC5wYW5lbC1zdWNjZXNzID4gLnBhbmVsLWhlYWRpbmcgKyAucGFuZWwtY29sbGFwc2UgPiAucGFuZWwtYm9keSB7XG4gICAgICBib3JkZXItdG9wLWNvbG9yOiAjZDZlOWM2OyB9XG4gICAgLnBhbmVsLXN1Y2Nlc3MgPiAucGFuZWwtaGVhZGluZyAuYmFkZ2Uge1xuICAgICAgY29sb3I6ICNkZmYwZDg7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjM2M3NjNkOyB9XG4gIC5wYW5lbC1zdWNjZXNzID4gLnBhbmVsLWZvb3RlciArIC5wYW5lbC1jb2xsYXBzZSA+IC5wYW5lbC1ib2R5IHtcbiAgICBib3JkZXItYm90dG9tLWNvbG9yOiAjZDZlOWM2OyB9XG5cbi5wYW5lbC1pbmZvIHtcbiAgYm9yZGVyLWNvbG9yOiAjYmNlOGYxOyB9XG4gIC5wYW5lbC1pbmZvID4gLnBhbmVsLWhlYWRpbmcge1xuICAgIGNvbG9yOiAjMzE3MDhmO1xuICAgIGJhY2tncm91bmQtY29sb3I6ICNkOWVkZjc7XG4gICAgYm9yZGVyLWNvbG9yOiAjYmNlOGYxOyB9XG4gICAgLnBhbmVsLWluZm8gPiAucGFuZWwtaGVhZGluZyArIC5wYW5lbC1jb2xsYXBzZSA+IC5wYW5lbC1ib2R5IHtcbiAgICAgIGJvcmRlci10b3AtY29sb3I6ICNiY2U4ZjE7IH1cbiAgICAucGFuZWwtaW5mbyA+IC5wYW5lbC1oZWFkaW5nIC5iYWRnZSB7XG4gICAgICBjb2xvcjogI2Q5ZWRmNztcbiAgICAgIGJhY2tncm91bmQtY29sb3I6ICMzMTcwOGY7IH1cbiAgLnBhbmVsLWluZm8gPiAucGFuZWwtZm9vdGVyICsgLnBhbmVsLWNvbGxhcHNlID4gLnBhbmVsLWJvZHkge1xuICAgIGJvcmRlci1ib3R0b20tY29sb3I6ICNiY2U4ZjE7IH1cblxuLnBhbmVsLXdhcm5pbmcge1xuICBib3JkZXItY29sb3I6ICNmYWViY2M7IH1cbiAgLnBhbmVsLXdhcm5pbmcgPiAucGFuZWwtaGVhZGluZyB7XG4gICAgY29sb3I6ICM4YTZkM2I7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogI2ZjZjhlMztcbiAgICBib3JkZXItY29sb3I6ICNmYWViY2M7IH1cbiAgICAucGFuZWwtd2FybmluZyA+IC5wYW5lbC1oZWFkaW5nICsgLnBhbmVsLWNvbGxhcHNlID4gLnBhbmVsLWJvZHkge1xuICAgICAgYm9yZGVyLXRvcC1jb2xvcjogI2ZhZWJjYzsgfVxuICAgIC5wYW5lbC13YXJuaW5nID4gLnBhbmVsLWhlYWRpbmcgLmJhZGdlIHtcbiAgICAgIGNvbG9yOiAjZmNmOGUzO1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogIzhhNmQzYjsgfVxuICAucGFuZWwtd2FybmluZyA+IC5wYW5lbC1mb290ZXIgKyAucGFuZWwtY29sbGFwc2UgPiAucGFuZWwtYm9keSB7XG4gICAgYm9yZGVyLWJvdHRvbS1jb2xvcjogI2ZhZWJjYzsgfVxuXG4ucGFuZWwtZGFuZ2VyIHtcbiAgYm9yZGVyLWNvbG9yOiAjZWJjY2QxOyB9XG4gIC5wYW5lbC1kYW5nZXIgPiAucGFuZWwtaGVhZGluZyB7XG4gICAgY29sb3I6ICNhOTQ0NDI7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogI2YyZGVkZTtcbiAgICBib3JkZXItY29sb3I6ICNlYmNjZDE7IH1cbiAgICAucGFuZWwtZGFuZ2VyID4gLnBhbmVsLWhlYWRpbmcgKyAucGFuZWwtY29sbGFwc2UgPiAucGFuZWwtYm9keSB7XG4gICAgICBib3JkZXItdG9wLWNvbG9yOiAjZWJjY2QxOyB9XG4gICAgLnBhbmVsLWRhbmdlciA+IC5wYW5lbC1oZWFkaW5nIC5iYWRnZSB7XG4gICAgICBjb2xvcjogI2YyZGVkZTtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6ICNhOTQ0NDI7IH1cbiAgLnBhbmVsLWRhbmdlciA+IC5wYW5lbC1mb290ZXIgKyAucGFuZWwtY29sbGFwc2UgPiAucGFuZWwtYm9keSB7XG4gICAgYm9yZGVyLWJvdHRvbS1jb2xvcjogI2ViY2NkMTsgfVxuXG4uZW1iZWQtcmVzcG9uc2l2ZSB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgZGlzcGxheTogYmxvY2s7XG4gIGhlaWdodDogMDtcbiAgcGFkZGluZzogMDtcbiAgb3ZlcmZsb3c6IGhpZGRlbjsgfVxuICAuZW1iZWQtcmVzcG9uc2l2ZSAuZW1iZWQtcmVzcG9uc2l2ZS1pdGVtLFxuICAuZW1iZWQtcmVzcG9uc2l2ZSBpZnJhbWUsXG4gIC5lbWJlZC1yZXNwb25zaXZlIGVtYmVkLFxuICAuZW1iZWQtcmVzcG9uc2l2ZSBvYmplY3QsXG4gIC5lbWJlZC1yZXNwb25zaXZlIHZpZGVvIHtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgdG9wOiAwO1xuICAgIGxlZnQ6IDA7XG4gICAgYm90dG9tOiAwO1xuICAgIGhlaWdodDogMTAwJTtcbiAgICB3aWR0aDogMTAwJTtcbiAgICBib3JkZXI6IDA7IH1cblxuLmVtYmVkLXJlc3BvbnNpdmUtMTZieTkge1xuICBwYWRkaW5nLWJvdHRvbTogNTYuMjUlOyB9XG5cbi5lbWJlZC1yZXNwb25zaXZlLTRieTMge1xuICBwYWRkaW5nLWJvdHRvbTogNzUlOyB9XG5cbi53ZWxsIHtcbiAgbWluLWhlaWdodDogMjBweDtcbiAgcGFkZGluZzogMTlweDtcbiAgbWFyZ2luLWJvdHRvbTogMjBweDtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2Y1ZjVmNTtcbiAgYm9yZGVyOiAxcHggc29saWQgI2UzZTNlMztcbiAgYm9yZGVyLXJhZGl1czogNHB4O1xuICAtd2Via2l0LWJveC1zaGFkb3c6IGluc2V0IDAgMXB4IDFweCByZ2JhKDAsIDAsIDAsIDAuMDUpO1xuICBib3gtc2hhZG93OiBpbnNldCAwIDFweCAxcHggcmdiYSgwLCAwLCAwLCAwLjA1KTsgfVxuICAud2VsbCBibG9ja3F1b3RlIHtcbiAgICBib3JkZXItY29sb3I6ICNkZGQ7XG4gICAgYm9yZGVyLWNvbG9yOiByZ2JhKDAsIDAsIDAsIDAuMTUpOyB9XG5cbi53ZWxsLWxnIHtcbiAgcGFkZGluZzogMjRweDtcbiAgYm9yZGVyLXJhZGl1czogNnB4OyB9XG5cbi53ZWxsLXNtIHtcbiAgcGFkZGluZzogOXB4O1xuICBib3JkZXItcmFkaXVzOiAzcHg7IH1cblxuLmNsb3NlIHtcbiAgZmxvYXQ6IHJpZ2h0O1xuICBmb250LXNpemU6IDIxcHg7XG4gIGZvbnQtd2VpZ2h0OiBib2xkO1xuICBsaW5lLWhlaWdodDogMTtcbiAgY29sb3I6ICMwMDA7XG4gIHRleHQtc2hhZG93OiAwIDFweCAwICNmZmY7XG4gIG9wYWNpdHk6IDAuMjtcbiAgZmlsdGVyOiBhbHBoYShvcGFjaXR5PTIwKTsgfVxuICAuY2xvc2U6aG92ZXIsIC5jbG9zZTpmb2N1cyB7XG4gICAgY29sb3I6ICMwMDA7XG4gICAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICAgIGN1cnNvcjogcG9pbnRlcjtcbiAgICBvcGFjaXR5OiAwLjU7XG4gICAgZmlsdGVyOiBhbHBoYShvcGFjaXR5PTUwKTsgfVxuXG5idXR0b24uY2xvc2Uge1xuICBwYWRkaW5nOiAwO1xuICBjdXJzb3I6IHBvaW50ZXI7XG4gIGJhY2tncm91bmQ6IHRyYW5zcGFyZW50O1xuICBib3JkZXI6IDA7XG4gIC13ZWJraXQtYXBwZWFyYW5jZTogbm9uZTsgfVxuXG4ubW9kYWwtb3BlbiB7XG4gIG92ZXJmbG93OiBoaWRkZW47IH1cblxuLm1vZGFsIHtcbiAgZGlzcGxheTogbm9uZTtcbiAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgcG9zaXRpb246IGZpeGVkO1xuICB0b3A6IDA7XG4gIHJpZ2h0OiAwO1xuICBib3R0b206IDA7XG4gIGxlZnQ6IDA7XG4gIHotaW5kZXg6IDEwNTA7XG4gIC13ZWJraXQtb3ZlcmZsb3ctc2Nyb2xsaW5nOiB0b3VjaDtcbiAgb3V0bGluZTogMDsgfVxuICAubW9kYWwuZmFkZSAubW9kYWwtZGlhbG9nIHtcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlKDAsIC0yNSUpO1xuICAgIC1tcy10cmFuc2Zvcm06IHRyYW5zbGF0ZSgwLCAtMjUlKTtcbiAgICAtby10cmFuc2Zvcm06IHRyYW5zbGF0ZSgwLCAtMjUlKTtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZSgwLCAtMjUlKTtcbiAgICAtd2Via2l0LXRyYW5zaXRpb246IC13ZWJraXQtdHJhbnNmb3JtIDAuM3MgZWFzZS1vdXQ7XG4gICAgLW1vei10cmFuc2l0aW9uOiAtbW96LXRyYW5zZm9ybSAwLjNzIGVhc2Utb3V0O1xuICAgIC1vLXRyYW5zaXRpb246IC1vLXRyYW5zZm9ybSAwLjNzIGVhc2Utb3V0O1xuICAgIHRyYW5zaXRpb246IHRyYW5zZm9ybSAwLjNzIGVhc2Utb3V0OyB9XG4gIC5tb2RhbC5pbiAubW9kYWwtZGlhbG9nIHtcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlKDAsIDApO1xuICAgIC1tcy10cmFuc2Zvcm06IHRyYW5zbGF0ZSgwLCAwKTtcbiAgICAtby10cmFuc2Zvcm06IHRyYW5zbGF0ZSgwLCAwKTtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZSgwLCAwKTsgfVxuXG4ubW9kYWwtb3BlbiAubW9kYWwge1xuICBvdmVyZmxvdy14OiBoaWRkZW47XG4gIG92ZXJmbG93LXk6IGF1dG87IH1cblxuLm1vZGFsLWRpYWxvZyB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgd2lkdGg6IGF1dG87XG4gIG1hcmdpbjogMTBweDsgfVxuXG4ubW9kYWwtY29udGVudCB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2ZmZjtcbiAgYm9yZGVyOiAxcHggc29saWQgIzk5OTtcbiAgYm9yZGVyOiAxcHggc29saWQgcmdiYSgwLCAwLCAwLCAwLjIpO1xuICBib3JkZXItcmFkaXVzOiA2cHg7XG4gIC13ZWJraXQtYm94LXNoYWRvdzogMCAzcHggOXB4IHJnYmEoMCwgMCwgMCwgMC41KTtcbiAgYm94LXNoYWRvdzogMCAzcHggOXB4IHJnYmEoMCwgMCwgMCwgMC41KTtcbiAgYmFja2dyb3VuZC1jbGlwOiBwYWRkaW5nLWJveDtcbiAgb3V0bGluZTogMDsgfVxuXG4ubW9kYWwtYmFja2Ryb3Age1xuICBwb3NpdGlvbjogZml4ZWQ7XG4gIHRvcDogMDtcbiAgcmlnaHQ6IDA7XG4gIGJvdHRvbTogMDtcbiAgbGVmdDogMDtcbiAgei1pbmRleDogMTA0MDtcbiAgYmFja2dyb3VuZC1jb2xvcjogIzAwMDsgfVxuICAubW9kYWwtYmFja2Ryb3AuZmFkZSB7XG4gICAgb3BhY2l0eTogMDtcbiAgICBmaWx0ZXI6IGFscGhhKG9wYWNpdHk9MCk7IH1cbiAgLm1vZGFsLWJhY2tkcm9wLmluIHtcbiAgICBvcGFjaXR5OiAwLjU7XG4gICAgZmlsdGVyOiBhbHBoYShvcGFjaXR5PTUwKTsgfVxuXG4ubW9kYWwtaGVhZGVyIHtcbiAgcGFkZGluZzogMTVweDtcbiAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkICNlNWU1ZTU7IH1cbiAgLm1vZGFsLWhlYWRlcjpiZWZvcmUsIC5tb2RhbC1oZWFkZXI6YWZ0ZXIge1xuICAgIGNvbnRlbnQ6IFwiIFwiO1xuICAgIGRpc3BsYXk6IHRhYmxlOyB9XG4gIC5tb2RhbC1oZWFkZXI6YWZ0ZXIge1xuICAgIGNsZWFyOiBib3RoOyB9XG5cbi5tb2RhbC1oZWFkZXIgLmNsb3NlIHtcbiAgbWFyZ2luLXRvcDogLTJweDsgfVxuXG4ubW9kYWwtdGl0bGUge1xuICBtYXJnaW46IDA7XG4gIGxpbmUtaGVpZ2h0OiAxLjQyODU3OyB9XG5cbi5tb2RhbC1ib2R5IHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBwYWRkaW5nOiAxNXB4OyB9XG5cbi5tb2RhbC1mb290ZXIge1xuICBwYWRkaW5nOiAxNXB4O1xuICB0ZXh0LWFsaWduOiByaWdodDtcbiAgYm9yZGVyLXRvcDogMXB4IHNvbGlkICNlNWU1ZTU7IH1cbiAgLm1vZGFsLWZvb3RlcjpiZWZvcmUsIC5tb2RhbC1mb290ZXI6YWZ0ZXIge1xuICAgIGNvbnRlbnQ6IFwiIFwiO1xuICAgIGRpc3BsYXk6IHRhYmxlOyB9XG4gIC5tb2RhbC1mb290ZXI6YWZ0ZXIge1xuICAgIGNsZWFyOiBib3RoOyB9XG4gIC5tb2RhbC1mb290ZXIgLmJ0biArIC5idG4ge1xuICAgIG1hcmdpbi1sZWZ0OiA1cHg7XG4gICAgbWFyZ2luLWJvdHRvbTogMDsgfVxuICAubW9kYWwtZm9vdGVyIC5idG4tZ3JvdXAgLmJ0biArIC5idG4ge1xuICAgIG1hcmdpbi1sZWZ0OiAtMXB4OyB9XG4gIC5tb2RhbC1mb290ZXIgLmJ0bi1ibG9jayArIC5idG4tYmxvY2sge1xuICAgIG1hcmdpbi1sZWZ0OiAwOyB9XG5cbi5tb2RhbC1zY3JvbGxiYXItbWVhc3VyZSB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgdG9wOiAtOTk5OXB4O1xuICB3aWR0aDogNTBweDtcbiAgaGVpZ2h0OiA1MHB4O1xuICBvdmVyZmxvdzogc2Nyb2xsOyB9XG5cbkBtZWRpYSAobWluLXdpZHRoOiA3NjhweCkge1xuICAubW9kYWwtZGlhbG9nIHtcbiAgICB3aWR0aDogNjAwcHg7XG4gICAgbWFyZ2luOiAzMHB4IGF1dG87IH1cbiAgLm1vZGFsLWNvbnRlbnQge1xuICAgIC13ZWJraXQtYm94LXNoYWRvdzogMCA1cHggMTVweCByZ2JhKDAsIDAsIDAsIDAuNSk7XG4gICAgYm94LXNoYWRvdzogMCA1cHggMTVweCByZ2JhKDAsIDAsIDAsIDAuNSk7IH1cbiAgLm1vZGFsLXNtIHtcbiAgICB3aWR0aDogMzAwcHg7IH0gfVxuXG5AbWVkaWEgKG1pbi13aWR0aDogOTkycHgpIHtcbiAgLm1vZGFsLWxnIHtcbiAgICB3aWR0aDogOTAwcHg7IH0gfVxuXG4udG9vbHRpcCB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgei1pbmRleDogMTA3MDtcbiAgZGlzcGxheTogYmxvY2s7XG4gIGZvbnQtZmFtaWx5OiBcIkhlbHZldGljYSBOZXVlXCIsIEhlbHZldGljYSwgQXJpYWwsIHNhbnMtc2VyaWY7XG4gIGZvbnQtc3R5bGU6IG5vcm1hbDtcbiAgZm9udC13ZWlnaHQ6IG5vcm1hbDtcbiAgbGV0dGVyLXNwYWNpbmc6IG5vcm1hbDtcbiAgbGluZS1icmVhazogYXV0bztcbiAgbGluZS1oZWlnaHQ6IDEuNDI4NTc7XG4gIHRleHQtYWxpZ246IGxlZnQ7XG4gIHRleHQtYWxpZ246IHN0YXJ0O1xuICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG4gIHRleHQtc2hhZG93OiBub25lO1xuICB0ZXh0LXRyYW5zZm9ybTogbm9uZTtcbiAgd2hpdGUtc3BhY2U6IG5vcm1hbDtcbiAgd29yZC1icmVhazogbm9ybWFsO1xuICB3b3JkLXNwYWNpbmc6IG5vcm1hbDtcbiAgd29yZC13cmFwOiBub3JtYWw7XG4gIGZvbnQtc2l6ZTogMTJweDtcbiAgb3BhY2l0eTogMDtcbiAgZmlsdGVyOiBhbHBoYShvcGFjaXR5PTApOyB9XG4gIC50b29sdGlwLmluIHtcbiAgICBvcGFjaXR5OiAwLjk7XG4gICAgZmlsdGVyOiBhbHBoYShvcGFjaXR5PTkwKTsgfVxuICAudG9vbHRpcC50b3Age1xuICAgIG1hcmdpbi10b3A6IC0zcHg7XG4gICAgcGFkZGluZzogNXB4IDA7IH1cbiAgLnRvb2x0aXAucmlnaHQge1xuICAgIG1hcmdpbi1sZWZ0OiAzcHg7XG4gICAgcGFkZGluZzogMCA1cHg7IH1cbiAgLnRvb2x0aXAuYm90dG9tIHtcbiAgICBtYXJnaW4tdG9wOiAzcHg7XG4gICAgcGFkZGluZzogNXB4IDA7IH1cbiAgLnRvb2x0aXAubGVmdCB7XG4gICAgbWFyZ2luLWxlZnQ6IC0zcHg7XG4gICAgcGFkZGluZzogMCA1cHg7IH1cblxuLnRvb2x0aXAtaW5uZXIge1xuICBtYXgtd2lkdGg6IDIwMHB4O1xuICBwYWRkaW5nOiAzcHggOHB4O1xuICBjb2xvcjogI2ZmZjtcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjMDAwO1xuICBib3JkZXItcmFkaXVzOiA0cHg7IH1cblxuLnRvb2x0aXAtYXJyb3cge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHdpZHRoOiAwO1xuICBoZWlnaHQ6IDA7XG4gIGJvcmRlci1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gIGJvcmRlci1zdHlsZTogc29saWQ7IH1cblxuLnRvb2x0aXAudG9wIC50b29sdGlwLWFycm93IHtcbiAgYm90dG9tOiAwO1xuICBsZWZ0OiA1MCU7XG4gIG1hcmdpbi1sZWZ0OiAtNXB4O1xuICBib3JkZXItd2lkdGg6IDVweCA1cHggMDtcbiAgYm9yZGVyLXRvcC1jb2xvcjogIzAwMDsgfVxuXG4udG9vbHRpcC50b3AtbGVmdCAudG9vbHRpcC1hcnJvdyB7XG4gIGJvdHRvbTogMDtcbiAgcmlnaHQ6IDVweDtcbiAgbWFyZ2luLWJvdHRvbTogLTVweDtcbiAgYm9yZGVyLXdpZHRoOiA1cHggNXB4IDA7XG4gIGJvcmRlci10b3AtY29sb3I6ICMwMDA7IH1cblxuLnRvb2x0aXAudG9wLXJpZ2h0IC50b29sdGlwLWFycm93IHtcbiAgYm90dG9tOiAwO1xuICBsZWZ0OiA1cHg7XG4gIG1hcmdpbi1ib3R0b206IC01cHg7XG4gIGJvcmRlci13aWR0aDogNXB4IDVweCAwO1xuICBib3JkZXItdG9wLWNvbG9yOiAjMDAwOyB9XG5cbi50b29sdGlwLnJpZ2h0IC50b29sdGlwLWFycm93IHtcbiAgdG9wOiA1MCU7XG4gIGxlZnQ6IDA7XG4gIG1hcmdpbi10b3A6IC01cHg7XG4gIGJvcmRlci13aWR0aDogNXB4IDVweCA1cHggMDtcbiAgYm9yZGVyLXJpZ2h0LWNvbG9yOiAjMDAwOyB9XG5cbi50b29sdGlwLmxlZnQgLnRvb2x0aXAtYXJyb3cge1xuICB0b3A6IDUwJTtcbiAgcmlnaHQ6IDA7XG4gIG1hcmdpbi10b3A6IC01cHg7XG4gIGJvcmRlci13aWR0aDogNXB4IDAgNXB4IDVweDtcbiAgYm9yZGVyLWxlZnQtY29sb3I6ICMwMDA7IH1cblxuLnRvb2x0aXAuYm90dG9tIC50b29sdGlwLWFycm93IHtcbiAgdG9wOiAwO1xuICBsZWZ0OiA1MCU7XG4gIG1hcmdpbi1sZWZ0OiAtNXB4O1xuICBib3JkZXItd2lkdGg6IDAgNXB4IDVweDtcbiAgYm9yZGVyLWJvdHRvbS1jb2xvcjogIzAwMDsgfVxuXG4udG9vbHRpcC5ib3R0b20tbGVmdCAudG9vbHRpcC1hcnJvdyB7XG4gIHRvcDogMDtcbiAgcmlnaHQ6IDVweDtcbiAgbWFyZ2luLXRvcDogLTVweDtcbiAgYm9yZGVyLXdpZHRoOiAwIDVweCA1cHg7XG4gIGJvcmRlci1ib3R0b20tY29sb3I6ICMwMDA7IH1cblxuLnRvb2x0aXAuYm90dG9tLXJpZ2h0IC50b29sdGlwLWFycm93IHtcbiAgdG9wOiAwO1xuICBsZWZ0OiA1cHg7XG4gIG1hcmdpbi10b3A6IC01cHg7XG4gIGJvcmRlci13aWR0aDogMCA1cHggNXB4O1xuICBib3JkZXItYm90dG9tLWNvbG9yOiAjMDAwOyB9XG5cbi5wb3BvdmVyIHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB0b3A6IDA7XG4gIGxlZnQ6IDA7XG4gIHotaW5kZXg6IDEwNjA7XG4gIGRpc3BsYXk6IG5vbmU7XG4gIG1heC13aWR0aDogMjc2cHg7XG4gIHBhZGRpbmc6IDFweDtcbiAgZm9udC1mYW1pbHk6IFwiSGVsdmV0aWNhIE5ldWVcIiwgSGVsdmV0aWNhLCBBcmlhbCwgc2Fucy1zZXJpZjtcbiAgZm9udC1zdHlsZTogbm9ybWFsO1xuICBmb250LXdlaWdodDogbm9ybWFsO1xuICBsZXR0ZXItc3BhY2luZzogbm9ybWFsO1xuICBsaW5lLWJyZWFrOiBhdXRvO1xuICBsaW5lLWhlaWdodDogMS40Mjg1NztcbiAgdGV4dC1hbGlnbjogbGVmdDtcbiAgdGV4dC1hbGlnbjogc3RhcnQ7XG4gIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgdGV4dC1zaGFkb3c6IG5vbmU7XG4gIHRleHQtdHJhbnNmb3JtOiBub25lO1xuICB3aGl0ZS1zcGFjZTogbm9ybWFsO1xuICB3b3JkLWJyZWFrOiBub3JtYWw7XG4gIHdvcmQtc3BhY2luZzogbm9ybWFsO1xuICB3b3JkLXdyYXA6IG5vcm1hbDtcbiAgZm9udC1zaXplOiAxNHB4O1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZmZmO1xuICBiYWNrZ3JvdW5kLWNsaXA6IHBhZGRpbmctYm94O1xuICBib3JkZXI6IDFweCBzb2xpZCAjY2NjO1xuICBib3JkZXI6IDFweCBzb2xpZCByZ2JhKDAsIDAsIDAsIDAuMik7XG4gIGJvcmRlci1yYWRpdXM6IDZweDtcbiAgLXdlYmtpdC1ib3gtc2hhZG93OiAwIDVweCAxMHB4IHJnYmEoMCwgMCwgMCwgMC4yKTtcbiAgYm94LXNoYWRvdzogMCA1cHggMTBweCByZ2JhKDAsIDAsIDAsIDAuMik7IH1cbiAgLnBvcG92ZXIudG9wIHtcbiAgICBtYXJnaW4tdG9wOiAtMTBweDsgfVxuICAucG9wb3Zlci5yaWdodCB7XG4gICAgbWFyZ2luLWxlZnQ6IDEwcHg7IH1cbiAgLnBvcG92ZXIuYm90dG9tIHtcbiAgICBtYXJnaW4tdG9wOiAxMHB4OyB9XG4gIC5wb3BvdmVyLmxlZnQge1xuICAgIG1hcmdpbi1sZWZ0OiAtMTBweDsgfVxuXG4ucG9wb3Zlci10aXRsZSB7XG4gIG1hcmdpbjogMDtcbiAgcGFkZGluZzogOHB4IDE0cHg7XG4gIGZvbnQtc2l6ZTogMTRweDtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2Y3ZjdmNztcbiAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkICNlYmViZWI7XG4gIGJvcmRlci1yYWRpdXM6IDVweCA1cHggMCAwOyB9XG5cbi5wb3BvdmVyLWNvbnRlbnQge1xuICBwYWRkaW5nOiA5cHggMTRweDsgfVxuXG4ucG9wb3ZlciA+IC5hcnJvdywgLnBvcG92ZXIgPiAuYXJyb3c6YWZ0ZXIge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICB3aWR0aDogMDtcbiAgaGVpZ2h0OiAwO1xuICBib3JkZXItY29sb3I6IHRyYW5zcGFyZW50O1xuICBib3JkZXItc3R5bGU6IHNvbGlkOyB9XG5cbi5wb3BvdmVyID4gLmFycm93IHtcbiAgYm9yZGVyLXdpZHRoOiAxMXB4OyB9XG5cbi5wb3BvdmVyID4gLmFycm93OmFmdGVyIHtcbiAgYm9yZGVyLXdpZHRoOiAxMHB4O1xuICBjb250ZW50OiBcIlwiOyB9XG5cbi5wb3BvdmVyLnRvcCA+IC5hcnJvdyB7XG4gIGxlZnQ6IDUwJTtcbiAgbWFyZ2luLWxlZnQ6IC0xMXB4O1xuICBib3JkZXItYm90dG9tLXdpZHRoOiAwO1xuICBib3JkZXItdG9wLWNvbG9yOiAjOTk5OTk5O1xuICBib3JkZXItdG9wLWNvbG9yOiByZ2JhKDAsIDAsIDAsIDAuMjUpO1xuICBib3R0b206IC0xMXB4OyB9XG4gIC5wb3BvdmVyLnRvcCA+IC5hcnJvdzphZnRlciB7XG4gICAgY29udGVudDogXCIgXCI7XG4gICAgYm90dG9tOiAxcHg7XG4gICAgbWFyZ2luLWxlZnQ6IC0xMHB4O1xuICAgIGJvcmRlci1ib3R0b20td2lkdGg6IDA7XG4gICAgYm9yZGVyLXRvcC1jb2xvcjogI2ZmZjsgfVxuXG4ucG9wb3Zlci5yaWdodCA+IC5hcnJvdyB7XG4gIHRvcDogNTAlO1xuICBsZWZ0OiAtMTFweDtcbiAgbWFyZ2luLXRvcDogLTExcHg7XG4gIGJvcmRlci1sZWZ0LXdpZHRoOiAwO1xuICBib3JkZXItcmlnaHQtY29sb3I6ICM5OTk5OTk7XG4gIGJvcmRlci1yaWdodC1jb2xvcjogcmdiYSgwLCAwLCAwLCAwLjI1KTsgfVxuICAucG9wb3Zlci5yaWdodCA+IC5hcnJvdzphZnRlciB7XG4gICAgY29udGVudDogXCIgXCI7XG4gICAgbGVmdDogMXB4O1xuICAgIGJvdHRvbTogLTEwcHg7XG4gICAgYm9yZGVyLWxlZnQtd2lkdGg6IDA7XG4gICAgYm9yZGVyLXJpZ2h0LWNvbG9yOiAjZmZmOyB9XG5cbi5wb3BvdmVyLmJvdHRvbSA+IC5hcnJvdyB7XG4gIGxlZnQ6IDUwJTtcbiAgbWFyZ2luLWxlZnQ6IC0xMXB4O1xuICBib3JkZXItdG9wLXdpZHRoOiAwO1xuICBib3JkZXItYm90dG9tLWNvbG9yOiAjOTk5OTk5O1xuICBib3JkZXItYm90dG9tLWNvbG9yOiByZ2JhKDAsIDAsIDAsIDAuMjUpO1xuICB0b3A6IC0xMXB4OyB9XG4gIC5wb3BvdmVyLmJvdHRvbSA+IC5hcnJvdzphZnRlciB7XG4gICAgY29udGVudDogXCIgXCI7XG4gICAgdG9wOiAxcHg7XG4gICAgbWFyZ2luLWxlZnQ6IC0xMHB4O1xuICAgIGJvcmRlci10b3Atd2lkdGg6IDA7XG4gICAgYm9yZGVyLWJvdHRvbS1jb2xvcjogI2ZmZjsgfVxuXG4ucG9wb3Zlci5sZWZ0ID4gLmFycm93IHtcbiAgdG9wOiA1MCU7XG4gIHJpZ2h0OiAtMTFweDtcbiAgbWFyZ2luLXRvcDogLTExcHg7XG4gIGJvcmRlci1yaWdodC13aWR0aDogMDtcbiAgYm9yZGVyLWxlZnQtY29sb3I6ICM5OTk5OTk7XG4gIGJvcmRlci1sZWZ0LWNvbG9yOiByZ2JhKDAsIDAsIDAsIDAuMjUpOyB9XG4gIC5wb3BvdmVyLmxlZnQgPiAuYXJyb3c6YWZ0ZXIge1xuICAgIGNvbnRlbnQ6IFwiIFwiO1xuICAgIHJpZ2h0OiAxcHg7XG4gICAgYm9yZGVyLXJpZ2h0LXdpZHRoOiAwO1xuICAgIGJvcmRlci1sZWZ0LWNvbG9yOiAjZmZmO1xuICAgIGJvdHRvbTogLTEwcHg7IH1cblxuLmNhcm91c2VsIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlOyB9XG5cbi5jYXJvdXNlbC1pbm5lciB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgd2lkdGg6IDEwMCU7IH1cbiAgLmNhcm91c2VsLWlubmVyID4gLml0ZW0ge1xuICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIC13ZWJraXQtdHJhbnNpdGlvbjogMC42cyBlYXNlLWluLW91dCBsZWZ0O1xuICAgIC1vLXRyYW5zaXRpb246IDAuNnMgZWFzZS1pbi1vdXQgbGVmdDtcbiAgICB0cmFuc2l0aW9uOiAwLjZzIGVhc2UtaW4tb3V0IGxlZnQ7IH1cbiAgICAuY2Fyb3VzZWwtaW5uZXIgPiAuaXRlbSA+IGltZyxcbiAgICAuY2Fyb3VzZWwtaW5uZXIgPiAuaXRlbSA+IGEgPiBpbWcge1xuICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICBtYXgtd2lkdGg6IDEwMCU7XG4gICAgICBoZWlnaHQ6IGF1dG87XG4gICAgICBsaW5lLWhlaWdodDogMTsgfVxuICAgIEBtZWRpYSBhbGwgYW5kICh0cmFuc2Zvcm0tM2QpLCAoLXdlYmtpdC10cmFuc2Zvcm0tM2QpIHtcbiAgICAgIC5jYXJvdXNlbC1pbm5lciA+IC5pdGVtIHtcbiAgICAgICAgLXdlYmtpdC10cmFuc2l0aW9uOiAtd2Via2l0LXRyYW5zZm9ybSAwLjZzIGVhc2UtaW4tb3V0O1xuICAgICAgICAtbW96LXRyYW5zaXRpb246IC1tb3otdHJhbnNmb3JtIDAuNnMgZWFzZS1pbi1vdXQ7XG4gICAgICAgIC1vLXRyYW5zaXRpb246IC1vLXRyYW5zZm9ybSAwLjZzIGVhc2UtaW4tb3V0O1xuICAgICAgICB0cmFuc2l0aW9uOiB0cmFuc2Zvcm0gMC42cyBlYXNlLWluLW91dDtcbiAgICAgICAgLXdlYmtpdC1iYWNrZmFjZS12aXNpYmlsaXR5OiBoaWRkZW47XG4gICAgICAgIC1tb3otYmFja2ZhY2UtdmlzaWJpbGl0eTogaGlkZGVuO1xuICAgICAgICBiYWNrZmFjZS12aXNpYmlsaXR5OiBoaWRkZW47XG4gICAgICAgIC13ZWJraXQtcGVyc3BlY3RpdmU6IDEwMDBweDtcbiAgICAgICAgLW1vei1wZXJzcGVjdGl2ZTogMTAwMHB4O1xuICAgICAgICBwZXJzcGVjdGl2ZTogMTAwMHB4OyB9XG4gICAgICAgIC5jYXJvdXNlbC1pbm5lciA+IC5pdGVtLm5leHQsIC5jYXJvdXNlbC1pbm5lciA+IC5pdGVtLmFjdGl2ZS5yaWdodCB7XG4gICAgICAgICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDEwMCUsIDAsIDApO1xuICAgICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMTAwJSwgMCwgMCk7XG4gICAgICAgICAgbGVmdDogMDsgfVxuICAgICAgICAuY2Fyb3VzZWwtaW5uZXIgPiAuaXRlbS5wcmV2LCAuY2Fyb3VzZWwtaW5uZXIgPiAuaXRlbS5hY3RpdmUubGVmdCB7XG4gICAgICAgICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKC0xMDAlLCAwLCAwKTtcbiAgICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKC0xMDAlLCAwLCAwKTtcbiAgICAgICAgICBsZWZ0OiAwOyB9XG4gICAgICAgIC5jYXJvdXNlbC1pbm5lciA+IC5pdGVtLm5leHQubGVmdCwgLmNhcm91c2VsLWlubmVyID4gLml0ZW0ucHJldi5yaWdodCwgLmNhcm91c2VsLWlubmVyID4gLml0ZW0uYWN0aXZlIHtcbiAgICAgICAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwgMCwgMCk7XG4gICAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLCAwLCAwKTtcbiAgICAgICAgICBsZWZ0OiAwOyB9IH1cbiAgLmNhcm91c2VsLWlubmVyID4gLmFjdGl2ZSxcbiAgLmNhcm91c2VsLWlubmVyID4gLm5leHQsXG4gIC5jYXJvdXNlbC1pbm5lciA+IC5wcmV2IHtcbiAgICBkaXNwbGF5OiBibG9jazsgfVxuICAuY2Fyb3VzZWwtaW5uZXIgPiAuYWN0aXZlIHtcbiAgICBsZWZ0OiAwOyB9XG4gIC5jYXJvdXNlbC1pbm5lciA+IC5uZXh0LFxuICAuY2Fyb3VzZWwtaW5uZXIgPiAucHJldiB7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIHRvcDogMDtcbiAgICB3aWR0aDogMTAwJTsgfVxuICAuY2Fyb3VzZWwtaW5uZXIgPiAubmV4dCB7XG4gICAgbGVmdDogMTAwJTsgfVxuICAuY2Fyb3VzZWwtaW5uZXIgPiAucHJldiB7XG4gICAgbGVmdDogLTEwMCU7IH1cbiAgLmNhcm91c2VsLWlubmVyID4gLm5leHQubGVmdCxcbiAgLmNhcm91c2VsLWlubmVyID4gLnByZXYucmlnaHQge1xuICAgIGxlZnQ6IDA7IH1cbiAgLmNhcm91c2VsLWlubmVyID4gLmFjdGl2ZS5sZWZ0IHtcbiAgICBsZWZ0OiAtMTAwJTsgfVxuICAuY2Fyb3VzZWwtaW5uZXIgPiAuYWN0aXZlLnJpZ2h0IHtcbiAgICBsZWZ0OiAxMDAlOyB9XG5cbi5jYXJvdXNlbC1jb250cm9sIHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB0b3A6IDA7XG4gIGxlZnQ6IDA7XG4gIGJvdHRvbTogMDtcbiAgd2lkdGg6IDE1JTtcbiAgb3BhY2l0eTogMC41O1xuICBmaWx0ZXI6IGFscGhhKG9wYWNpdHk9NTApO1xuICBmb250LXNpemU6IDIwcHg7XG4gIGNvbG9yOiAjZmZmO1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gIHRleHQtc2hhZG93OiAwIDFweCAycHggcmdiYSgwLCAwLCAwLCAwLjYpO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDsgfVxuICAuY2Fyb3VzZWwtY29udHJvbC5sZWZ0IHtcbiAgICBiYWNrZ3JvdW5kLWltYWdlOiAtd2Via2l0LWxpbmVhci1ncmFkaWVudChsZWZ0LCByZ2JhKDAsIDAsIDAsIDAuNSkgMCUsIHJnYmEoMCwgMCwgMCwgMC4wMDAxKSAxMDAlKTtcbiAgICBiYWNrZ3JvdW5kLWltYWdlOiAtby1saW5lYXItZ3JhZGllbnQobGVmdCwgcmdiYSgwLCAwLCAwLCAwLjUpIDAlLCByZ2JhKDAsIDAsIDAsIDAuMDAwMSkgMTAwJSk7XG4gICAgYmFja2dyb3VuZC1pbWFnZTogbGluZWFyLWdyYWRpZW50KHRvIHJpZ2h0LCByZ2JhKDAsIDAsIDAsIDAuNSkgMCUsIHJnYmEoMCwgMCwgMCwgMC4wMDAxKSAxMDAlKTtcbiAgICBiYWNrZ3JvdW5kLXJlcGVhdDogcmVwZWF0LXg7XG4gICAgZmlsdGVyOiBwcm9naWQ6RFhJbWFnZVRyYW5zZm9ybS5NaWNyb3NvZnQuZ3JhZGllbnQoc3RhcnRDb2xvcnN0cj0nIzgwMDAwMDAwJywgZW5kQ29sb3JzdHI9JyMwMDAwMDAwMCcsIEdyYWRpZW50VHlwZT0xKTsgfVxuICAuY2Fyb3VzZWwtY29udHJvbC5yaWdodCB7XG4gICAgbGVmdDogYXV0bztcbiAgICByaWdodDogMDtcbiAgICBiYWNrZ3JvdW5kLWltYWdlOiAtd2Via2l0LWxpbmVhci1ncmFkaWVudChsZWZ0LCByZ2JhKDAsIDAsIDAsIDAuMDAwMSkgMCUsIHJnYmEoMCwgMCwgMCwgMC41KSAxMDAlKTtcbiAgICBiYWNrZ3JvdW5kLWltYWdlOiAtby1saW5lYXItZ3JhZGllbnQobGVmdCwgcmdiYSgwLCAwLCAwLCAwLjAwMDEpIDAlLCByZ2JhKDAsIDAsIDAsIDAuNSkgMTAwJSk7XG4gICAgYmFja2dyb3VuZC1pbWFnZTogbGluZWFyLWdyYWRpZW50KHRvIHJpZ2h0LCByZ2JhKDAsIDAsIDAsIDAuMDAwMSkgMCUsIHJnYmEoMCwgMCwgMCwgMC41KSAxMDAlKTtcbiAgICBiYWNrZ3JvdW5kLXJlcGVhdDogcmVwZWF0LXg7XG4gICAgZmlsdGVyOiBwcm9naWQ6RFhJbWFnZVRyYW5zZm9ybS5NaWNyb3NvZnQuZ3JhZGllbnQoc3RhcnRDb2xvcnN0cj0nIzAwMDAwMDAwJywgZW5kQ29sb3JzdHI9JyM4MDAwMDAwMCcsIEdyYWRpZW50VHlwZT0xKTsgfVxuICAuY2Fyb3VzZWwtY29udHJvbDpob3ZlciwgLmNhcm91c2VsLWNvbnRyb2w6Zm9jdXMge1xuICAgIG91dGxpbmU6IDA7XG4gICAgY29sb3I6ICNmZmY7XG4gICAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICAgIG9wYWNpdHk6IDAuOTtcbiAgICBmaWx0ZXI6IGFscGhhKG9wYWNpdHk9OTApOyB9XG4gIC5jYXJvdXNlbC1jb250cm9sIC5pY29uLXByZXYsXG4gIC5jYXJvdXNlbC1jb250cm9sIC5pY29uLW5leHQsXG4gIC5jYXJvdXNlbC1jb250cm9sIC5nbHlwaGljb24tY2hldnJvbi1sZWZ0LFxuICAuY2Fyb3VzZWwtY29udHJvbCAuZ2x5cGhpY29uLWNoZXZyb24tcmlnaHQge1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICB0b3A6IDUwJTtcbiAgICBtYXJnaW4tdG9wOiAtMTBweDtcbiAgICB6LWluZGV4OiA1O1xuICAgIGRpc3BsYXk6IGlubGluZS1ibG9jazsgfVxuICAuY2Fyb3VzZWwtY29udHJvbCAuaWNvbi1wcmV2LFxuICAuY2Fyb3VzZWwtY29udHJvbCAuZ2x5cGhpY29uLWNoZXZyb24tbGVmdCB7XG4gICAgbGVmdDogNTAlO1xuICAgIG1hcmdpbi1sZWZ0OiAtMTBweDsgfVxuICAuY2Fyb3VzZWwtY29udHJvbCAuaWNvbi1uZXh0LFxuICAuY2Fyb3VzZWwtY29udHJvbCAuZ2x5cGhpY29uLWNoZXZyb24tcmlnaHQge1xuICAgIHJpZ2h0OiA1MCU7XG4gICAgbWFyZ2luLXJpZ2h0OiAtMTBweDsgfVxuICAuY2Fyb3VzZWwtY29udHJvbCAuaWNvbi1wcmV2LFxuICAuY2Fyb3VzZWwtY29udHJvbCAuaWNvbi1uZXh0IHtcbiAgICB3aWR0aDogMjBweDtcbiAgICBoZWlnaHQ6IDIwcHg7XG4gICAgbGluZS1oZWlnaHQ6IDE7XG4gICAgZm9udC1mYW1pbHk6IHNlcmlmOyB9XG4gIC5jYXJvdXNlbC1jb250cm9sIC5pY29uLXByZXY6YmVmb3JlIHtcbiAgICBjb250ZW50OiAnXFwyMDM5JzsgfVxuICAuY2Fyb3VzZWwtY29udHJvbCAuaWNvbi1uZXh0OmJlZm9yZSB7XG4gICAgY29udGVudDogJ1xcMjAzYSc7IH1cblxuLmNhcm91c2VsLWluZGljYXRvcnMge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIGJvdHRvbTogMTBweDtcbiAgbGVmdDogNTAlO1xuICB6LWluZGV4OiAxNTtcbiAgd2lkdGg6IDYwJTtcbiAgbWFyZ2luLWxlZnQ6IC0zMCU7XG4gIHBhZGRpbmctbGVmdDogMDtcbiAgbGlzdC1zdHlsZTogbm9uZTtcbiAgdGV4dC1hbGlnbjogY2VudGVyOyB9XG4gIC5jYXJvdXNlbC1pbmRpY2F0b3JzIGxpIHtcbiAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgd2lkdGg6IDEwcHg7XG4gICAgaGVpZ2h0OiAxMHB4O1xuICAgIG1hcmdpbjogMXB4O1xuICAgIHRleHQtaW5kZW50OiAtOTk5cHg7XG4gICAgYm9yZGVyOiAxcHggc29saWQgI2ZmZjtcbiAgICBib3JkZXItcmFkaXVzOiAxMHB4O1xuICAgIGN1cnNvcjogcG9pbnRlcjtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjMDAwIFxcOTtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDsgfVxuICAuY2Fyb3VzZWwtaW5kaWNhdG9ycyAuYWN0aXZlIHtcbiAgICBtYXJnaW46IDA7XG4gICAgd2lkdGg6IDEycHg7XG4gICAgaGVpZ2h0OiAxMnB4O1xuICAgIGJhY2tncm91bmQtY29sb3I6ICNmZmY7IH1cblxuLmNhcm91c2VsLWNhcHRpb24ge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIGxlZnQ6IDE1JTtcbiAgcmlnaHQ6IDE1JTtcbiAgYm90dG9tOiAyMHB4O1xuICB6LWluZGV4OiAxMDtcbiAgcGFkZGluZy10b3A6IDIwcHg7XG4gIHBhZGRpbmctYm90dG9tOiAyMHB4O1xuICBjb2xvcjogI2ZmZjtcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xuICB0ZXh0LXNoYWRvdzogMCAxcHggMnB4IHJnYmEoMCwgMCwgMCwgMC42KTsgfVxuICAuY2Fyb3VzZWwtY2FwdGlvbiAuYnRuIHtcbiAgICB0ZXh0LXNoYWRvdzogbm9uZTsgfVxuXG5AbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA3NjhweCkge1xuICAuY2Fyb3VzZWwtY29udHJvbCAuZ2x5cGhpY29uLWNoZXZyb24tbGVmdCxcbiAgLmNhcm91c2VsLWNvbnRyb2wgLmdseXBoaWNvbi1jaGV2cm9uLXJpZ2h0LFxuICAuY2Fyb3VzZWwtY29udHJvbCAuaWNvbi1wcmV2LFxuICAuY2Fyb3VzZWwtY29udHJvbCAuaWNvbi1uZXh0IHtcbiAgICB3aWR0aDogMzBweDtcbiAgICBoZWlnaHQ6IDMwcHg7XG4gICAgbWFyZ2luLXRvcDogLTEwcHg7XG4gICAgZm9udC1zaXplOiAzMHB4OyB9XG4gIC5jYXJvdXNlbC1jb250cm9sIC5nbHlwaGljb24tY2hldnJvbi1sZWZ0LFxuICAuY2Fyb3VzZWwtY29udHJvbCAuaWNvbi1wcmV2IHtcbiAgICBtYXJnaW4tbGVmdDogLTEwcHg7IH1cbiAgLmNhcm91c2VsLWNvbnRyb2wgLmdseXBoaWNvbi1jaGV2cm9uLXJpZ2h0LFxuICAuY2Fyb3VzZWwtY29udHJvbCAuaWNvbi1uZXh0IHtcbiAgICBtYXJnaW4tcmlnaHQ6IC0xMHB4OyB9XG4gIC5jYXJvdXNlbC1jYXB0aW9uIHtcbiAgICBsZWZ0OiAyMCU7XG4gICAgcmlnaHQ6IDIwJTtcbiAgICBwYWRkaW5nLWJvdHRvbTogMzBweDsgfVxuICAuY2Fyb3VzZWwtaW5kaWNhdG9ycyB7XG4gICAgYm90dG9tOiAyMHB4OyB9IH1cblxuLmNsZWFyZml4OmJlZm9yZSwgLmNsZWFyZml4OmFmdGVyIHtcbiAgY29udGVudDogXCIgXCI7XG4gIGRpc3BsYXk6IHRhYmxlOyB9XG5cbi5jbGVhcmZpeDphZnRlciB7XG4gIGNsZWFyOiBib3RoOyB9XG5cbi5jZW50ZXItYmxvY2sge1xuICBkaXNwbGF5OiBibG9jaztcbiAgbWFyZ2luLWxlZnQ6IGF1dG87XG4gIG1hcmdpbi1yaWdodDogYXV0bzsgfVxuXG4ucHVsbC1yaWdodCB7XG4gIGZsb2F0OiByaWdodCAhaW1wb3J0YW50OyB9XG5cbi5wdWxsLWxlZnQge1xuICBmbG9hdDogbGVmdCAhaW1wb3J0YW50OyB9XG5cbi5oaWRlIHtcbiAgZGlzcGxheTogbm9uZSAhaW1wb3J0YW50OyB9XG5cbi5zaG93IHtcbiAgZGlzcGxheTogYmxvY2sgIWltcG9ydGFudDsgfVxuXG4uaW52aXNpYmxlIHtcbiAgdmlzaWJpbGl0eTogaGlkZGVuOyB9XG5cbi50ZXh0LWhpZGUge1xuICBmb250OiAwLzAgYTtcbiAgY29sb3I6IHRyYW5zcGFyZW50O1xuICB0ZXh0LXNoYWRvdzogbm9uZTtcbiAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gIGJvcmRlcjogMDsgfVxuXG4uaGlkZGVuIHtcbiAgZGlzcGxheTogbm9uZSAhaW1wb3J0YW50OyB9XG5cbi5hZmZpeCB7XG4gIHBvc2l0aW9uOiBmaXhlZDsgfVxuXG5ALW1zLXZpZXdwb3J0IHtcbiAgd2lkdGg6IGRldmljZS13aWR0aDsgfVxuXG4udmlzaWJsZS14cyB7XG4gIGRpc3BsYXk6IG5vbmUgIWltcG9ydGFudDsgfVxuXG4udmlzaWJsZS1zbSB7XG4gIGRpc3BsYXk6IG5vbmUgIWltcG9ydGFudDsgfVxuXG4udmlzaWJsZS1tZCB7XG4gIGRpc3BsYXk6IG5vbmUgIWltcG9ydGFudDsgfVxuXG4udmlzaWJsZS1sZyB7XG4gIGRpc3BsYXk6IG5vbmUgIWltcG9ydGFudDsgfVxuXG4udmlzaWJsZS14cy1ibG9jayxcbi52aXNpYmxlLXhzLWlubGluZSxcbi52aXNpYmxlLXhzLWlubGluZS1ibG9jayxcbi52aXNpYmxlLXNtLWJsb2NrLFxuLnZpc2libGUtc20taW5saW5lLFxuLnZpc2libGUtc20taW5saW5lLWJsb2NrLFxuLnZpc2libGUtbWQtYmxvY2ssXG4udmlzaWJsZS1tZC1pbmxpbmUsXG4udmlzaWJsZS1tZC1pbmxpbmUtYmxvY2ssXG4udmlzaWJsZS1sZy1ibG9jayxcbi52aXNpYmxlLWxnLWlubGluZSxcbi52aXNpYmxlLWxnLWlubGluZS1ibG9jayB7XG4gIGRpc3BsYXk6IG5vbmUgIWltcG9ydGFudDsgfVxuXG5AbWVkaWEgKG1heC13aWR0aDogNzY3cHgpIHtcbiAgLnZpc2libGUteHMge1xuICAgIGRpc3BsYXk6IGJsb2NrICFpbXBvcnRhbnQ7IH1cbiAgdGFibGUudmlzaWJsZS14cyB7XG4gICAgZGlzcGxheTogdGFibGUgIWltcG9ydGFudDsgfVxuICB0ci52aXNpYmxlLXhzIHtcbiAgICBkaXNwbGF5OiB0YWJsZS1yb3cgIWltcG9ydGFudDsgfVxuICB0aC52aXNpYmxlLXhzLFxuICB0ZC52aXNpYmxlLXhzIHtcbiAgICBkaXNwbGF5OiB0YWJsZS1jZWxsICFpbXBvcnRhbnQ7IH0gfVxuXG5AbWVkaWEgKG1heC13aWR0aDogNzY3cHgpIHtcbiAgLnZpc2libGUteHMtYmxvY2sge1xuICAgIGRpc3BsYXk6IGJsb2NrICFpbXBvcnRhbnQ7IH0gfVxuXG5AbWVkaWEgKG1heC13aWR0aDogNzY3cHgpIHtcbiAgLnZpc2libGUteHMtaW5saW5lIHtcbiAgICBkaXNwbGF5OiBpbmxpbmUgIWltcG9ydGFudDsgfSB9XG5cbkBtZWRpYSAobWF4LXdpZHRoOiA3NjdweCkge1xuICAudmlzaWJsZS14cy1pbmxpbmUtYmxvY2sge1xuICAgIGRpc3BsYXk6IGlubGluZS1ibG9jayAhaW1wb3J0YW50OyB9IH1cblxuQG1lZGlhIChtaW4td2lkdGg6IDc2OHB4KSBhbmQgKG1heC13aWR0aDogOTkxcHgpIHtcbiAgLnZpc2libGUtc20ge1xuICAgIGRpc3BsYXk6IGJsb2NrICFpbXBvcnRhbnQ7IH1cbiAgdGFibGUudmlzaWJsZS1zbSB7XG4gICAgZGlzcGxheTogdGFibGUgIWltcG9ydGFudDsgfVxuICB0ci52aXNpYmxlLXNtIHtcbiAgICBkaXNwbGF5OiB0YWJsZS1yb3cgIWltcG9ydGFudDsgfVxuICB0aC52aXNpYmxlLXNtLFxuICB0ZC52aXNpYmxlLXNtIHtcbiAgICBkaXNwbGF5OiB0YWJsZS1jZWxsICFpbXBvcnRhbnQ7IH0gfVxuXG5AbWVkaWEgKG1pbi13aWR0aDogNzY4cHgpIGFuZCAobWF4LXdpZHRoOiA5OTFweCkge1xuICAudmlzaWJsZS1zbS1ibG9jayB7XG4gICAgZGlzcGxheTogYmxvY2sgIWltcG9ydGFudDsgfSB9XG5cbkBtZWRpYSAobWluLXdpZHRoOiA3NjhweCkgYW5kIChtYXgtd2lkdGg6IDk5MXB4KSB7XG4gIC52aXNpYmxlLXNtLWlubGluZSB7XG4gICAgZGlzcGxheTogaW5saW5lICFpbXBvcnRhbnQ7IH0gfVxuXG5AbWVkaWEgKG1pbi13aWR0aDogNzY4cHgpIGFuZCAobWF4LXdpZHRoOiA5OTFweCkge1xuICAudmlzaWJsZS1zbS1pbmxpbmUtYmxvY2sge1xuICAgIGRpc3BsYXk6IGlubGluZS1ibG9jayAhaW1wb3J0YW50OyB9IH1cblxuQG1lZGlhIChtaW4td2lkdGg6IDk5MnB4KSBhbmQgKG1heC13aWR0aDogMTE5OXB4KSB7XG4gIC52aXNpYmxlLW1kIHtcbiAgICBkaXNwbGF5OiBibG9jayAhaW1wb3J0YW50OyB9XG4gIHRhYmxlLnZpc2libGUtbWQge1xuICAgIGRpc3BsYXk6IHRhYmxlICFpbXBvcnRhbnQ7IH1cbiAgdHIudmlzaWJsZS1tZCB7XG4gICAgZGlzcGxheTogdGFibGUtcm93ICFpbXBvcnRhbnQ7IH1cbiAgdGgudmlzaWJsZS1tZCxcbiAgdGQudmlzaWJsZS1tZCB7XG4gICAgZGlzcGxheTogdGFibGUtY2VsbCAhaW1wb3J0YW50OyB9IH1cblxuQG1lZGlhIChtaW4td2lkdGg6IDk5MnB4KSBhbmQgKG1heC13aWR0aDogMTE5OXB4KSB7XG4gIC52aXNpYmxlLW1kLWJsb2NrIHtcbiAgICBkaXNwbGF5OiBibG9jayAhaW1wb3J0YW50OyB9IH1cblxuQG1lZGlhIChtaW4td2lkdGg6IDk5MnB4KSBhbmQgKG1heC13aWR0aDogMTE5OXB4KSB7XG4gIC52aXNpYmxlLW1kLWlubGluZSB7XG4gICAgZGlzcGxheTogaW5saW5lICFpbXBvcnRhbnQ7IH0gfVxuXG5AbWVkaWEgKG1pbi13aWR0aDogOTkycHgpIGFuZCAobWF4LXdpZHRoOiAxMTk5cHgpIHtcbiAgLnZpc2libGUtbWQtaW5saW5lLWJsb2NrIHtcbiAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2sgIWltcG9ydGFudDsgfSB9XG5cbkBtZWRpYSAobWluLXdpZHRoOiAxMjAwcHgpIHtcbiAgLnZpc2libGUtbGcge1xuICAgIGRpc3BsYXk6IGJsb2NrICFpbXBvcnRhbnQ7IH1cbiAgdGFibGUudmlzaWJsZS1sZyB7XG4gICAgZGlzcGxheTogdGFibGUgIWltcG9ydGFudDsgfVxuICB0ci52aXNpYmxlLWxnIHtcbiAgICBkaXNwbGF5OiB0YWJsZS1yb3cgIWltcG9ydGFudDsgfVxuICB0aC52aXNpYmxlLWxnLFxuICB0ZC52aXNpYmxlLWxnIHtcbiAgICBkaXNwbGF5OiB0YWJsZS1jZWxsICFpbXBvcnRhbnQ7IH0gfVxuXG5AbWVkaWEgKG1pbi13aWR0aDogMTIwMHB4KSB7XG4gIC52aXNpYmxlLWxnLWJsb2NrIHtcbiAgICBkaXNwbGF5OiBibG9jayAhaW1wb3J0YW50OyB9IH1cblxuQG1lZGlhIChtaW4td2lkdGg6IDEyMDBweCkge1xuICAudmlzaWJsZS1sZy1pbmxpbmUge1xuICAgIGRpc3BsYXk6IGlubGluZSAhaW1wb3J0YW50OyB9IH1cblxuQG1lZGlhIChtaW4td2lkdGg6IDEyMDBweCkge1xuICAudmlzaWJsZS1sZy1pbmxpbmUtYmxvY2sge1xuICAgIGRpc3BsYXk6IGlubGluZS1ibG9jayAhaW1wb3J0YW50OyB9IH1cblxuQG1lZGlhIChtYXgtd2lkdGg6IDc2N3B4KSB7XG4gIC5oaWRkZW4teHMge1xuICAgIGRpc3BsYXk6IG5vbmUgIWltcG9ydGFudDsgfSB9XG5cbkBtZWRpYSAobWluLXdpZHRoOiA3NjhweCkgYW5kIChtYXgtd2lkdGg6IDk5MXB4KSB7XG4gIC5oaWRkZW4tc20ge1xuICAgIGRpc3BsYXk6IG5vbmUgIWltcG9ydGFudDsgfSB9XG5cbkBtZWRpYSAobWluLXdpZHRoOiA5OTJweCkgYW5kIChtYXgtd2lkdGg6IDExOTlweCkge1xuICAuaGlkZGVuLW1kIHtcbiAgICBkaXNwbGF5OiBub25lICFpbXBvcnRhbnQ7IH0gfVxuXG5AbWVkaWEgKG1pbi13aWR0aDogMTIwMHB4KSB7XG4gIC5oaWRkZW4tbGcge1xuICAgIGRpc3BsYXk6IG5vbmUgIWltcG9ydGFudDsgfSB9XG5cbi52aXNpYmxlLXByaW50IHtcbiAgZGlzcGxheTogbm9uZSAhaW1wb3J0YW50OyB9XG5cbkBtZWRpYSBwcmludCB7XG4gIC52aXNpYmxlLXByaW50IHtcbiAgICBkaXNwbGF5OiBibG9jayAhaW1wb3J0YW50OyB9XG4gIHRhYmxlLnZpc2libGUtcHJpbnQge1xuICAgIGRpc3BsYXk6IHRhYmxlICFpbXBvcnRhbnQ7IH1cbiAgdHIudmlzaWJsZS1wcmludCB7XG4gICAgZGlzcGxheTogdGFibGUtcm93ICFpbXBvcnRhbnQ7IH1cbiAgdGgudmlzaWJsZS1wcmludCxcbiAgdGQudmlzaWJsZS1wcmludCB7XG4gICAgZGlzcGxheTogdGFibGUtY2VsbCAhaW1wb3J0YW50OyB9IH1cblxuLnZpc2libGUtcHJpbnQtYmxvY2sge1xuICBkaXNwbGF5OiBub25lICFpbXBvcnRhbnQ7IH1cbiAgQG1lZGlhIHByaW50IHtcbiAgICAudmlzaWJsZS1wcmludC1ibG9jayB7XG4gICAgICBkaXNwbGF5OiBibG9jayAhaW1wb3J0YW50OyB9IH1cblxuLnZpc2libGUtcHJpbnQtaW5saW5lIHtcbiAgZGlzcGxheTogbm9uZSAhaW1wb3J0YW50OyB9XG4gIEBtZWRpYSBwcmludCB7XG4gICAgLnZpc2libGUtcHJpbnQtaW5saW5lIHtcbiAgICAgIGRpc3BsYXk6IGlubGluZSAhaW1wb3J0YW50OyB9IH1cblxuLnZpc2libGUtcHJpbnQtaW5saW5lLWJsb2NrIHtcbiAgZGlzcGxheTogbm9uZSAhaW1wb3J0YW50OyB9XG4gIEBtZWRpYSBwcmludCB7XG4gICAgLnZpc2libGUtcHJpbnQtaW5saW5lLWJsb2NrIHtcbiAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jayAhaW1wb3J0YW50OyB9IH1cblxuQG1lZGlhIHByaW50IHtcbiAgLmhpZGRlbi1wcmludCB7XG4gICAgZGlzcGxheTogbm9uZSAhaW1wb3J0YW50OyB9IH1cblxuLypcblxuVG8gZ2V0IHRoaXMgbGlzdCBvZiBjb2xvcnMgaW5qZWN0IGpRdWVyeSBhdCBodHRwOi8vd3d3Lmdvb2dsZS5jb20vZGVzaWduL3NwZWMvc3R5bGUvY29sb3IuaHRtbCNjb2xvci1jb2xvci1wYWxldHRlXG5cblRoZW4sIHJ1biB0aGlzIHNjcmlwdCB0byBnZXQgdGhlIGxpc3RAbWl4aW4gKGZ1bmN0aW9uKCl7XG4gIHZhciBjb2xvcnMgPSB7fSwgbWFpbiA9IHt9O1xuICAkKFwiLmNvbG9yLWdyb3VwXCIpQG1peGluIGVhY2goZnVuY3Rpb24oKXtcbiAgICB2YXIgY29sb3IgPSAkKHRoaXMpLmZpbmQoXCIubmFtZVwiKS50ZXh0KCkudHJpbSgpLnRvTG93ZXJDYXNlKCkucmVwbGFjZShcIiBcIiwgXCItXCIpO1xuICAgIGNvbG9yc1tjb2xvcl0gPSB7fTtcblxuICAgICQodGhpcylAbWl4aW4gZmluZChcIi5jb2xvclwiKS5ub3QoXCIubWFpbi1jb2xvclwiKS5lYWNoKGZ1bmN0aW9uKCl7XG4gICAgICB2YXIgc2hhZGUgPSAkKHRoaXMpLmZpbmQoXCIuc2hhZGVcIikudGV4dCgpLnRyaW0oKSxcbiAgICAgICAgICBoZXggICA9ICQodGhpcykuZmluZChcIi5oZXhcIikudGV4dCgpLnRyaW0oKTtcblxuICAgICAgY29sb3JzW2NvbG9yXVtzaGFkZV0gPSBoZXg7XG4gICAgfSk7XG4gICAgbWFpbltjb2xvcl0gPSBjb2xvciArIFwiLVwiICsgJCh0aGlzKS5maW5kKFwiLm1haW4tY29sb3IgLnNoYWRlXCIpLnRleHQoKS50cmltKCk7XG5cbiAgfSk7XG4gIHZhciBMRVNTID0gXCJcIjtcbiAgJEBtaXhpbiBlYWNoKGNvbG9ycywgZnVuY3Rpb24obmFtZSwgc2hhZGVzKXtcbiAgICBMRVNTICs9IFwiXFxuXFxuXCI7XG4gICAgJEBtaXhpbiBlYWNoKHNoYWRlcywgZnVuY3Rpb24oc2hhZGUsIGhleCl7XG4gICAgICBMRVNTICs9IFwiJFwiICsgbmFtZSArIFwiLVwiICsgc2hhZGUgKyBcIjogXCIgKyBoZXggKyBcIjtcXG5cIiAhZGVmYXVsdDtcbiAgICB9KTtcbiAgICBpZiAobWFpbltuYW1lXSkge1xuICAgICAgTEVTUyArPSBcIiRcIiArIG5hbWUgKyBcIjogXCIgKyBtYWluW25hbWVdICsgXCI7XFxuXCIgIWRlZmF1bHQ7XG4gICAgfVxuICB9KTtcbiAgY29uc29sZS5sb2coTEVTUyk7XG59KSgpO1xuXG5cbiovXG4vKiBBTklNQVRJT04gKi9cbi8qIFNIQURPV1MgKi9cbi8qIFNoYWRvd3MgKGZyb20gbWRsIGh0dHA6Ly93d3cuZ2V0bWRsLmlvLykgKi9cbmJvZHkge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZmZmOyB9XG4gIGJvZHkuaW52ZXJzZSB7XG4gICAgYmFja2dyb3VuZDogIzMzMzMzMzsgfVxuICAgIGJvZHkuaW52ZXJzZSwgYm9keS5pbnZlcnNlIC5mb3JtLWNvbnRyb2wge1xuICAgICAgY29sb3I6IHJnYmEoMjU1LDI1NSwyNTUsIDAuODQpOyB9XG4gICAgYm9keS5pbnZlcnNlIC5tb2RhbCxcbiAgICBib2R5LmludmVyc2UgLm1vZGFsIC5mb3JtLWNvbnRyb2wsXG4gICAgYm9keS5pbnZlcnNlIC5wYW5lbC1kZWZhdWx0LFxuICAgIGJvZHkuaW52ZXJzZSAucGFuZWwtZGVmYXVsdCAuZm9ybS1jb250cm9sLFxuICAgIGJvZHkuaW52ZXJzZSAuY2FyZCxcbiAgICBib2R5LmludmVyc2UgLmNhcmQgLmZvcm0tY29udHJvbCB7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiBpbml0aWFsO1xuICAgICAgY29sb3I6IGluaXRpYWw7IH1cblxuYm9keSwgaDEsIGgyLCBoMywgaDQsIGg1LCBoNiwgLmgxLCAuaDIsIC5oMywgLmg0IHtcbiAgZm9udC1mYW1pbHk6IFwiSGVsdmV0aWNhIE5ldWVcIiwgSGVsdmV0aWNhLCBBcmlhbCwgc2Fucy1zZXJpZjtcbiAgZm9udC13ZWlnaHQ6IDMwMDsgfVxuXG5oNSwgaDYge1xuICBmb250LXdlaWdodDogNDAwOyB9XG5cbmEsIGE6aG92ZXIsIGE6Zm9jdXMge1xuICBjb2xvcjogIzMzN2FiNzsgfVxuICBhIC5tYXRlcmlhbC1pY29ucywgYTpob3ZlciAubWF0ZXJpYWwtaWNvbnMsIGE6Zm9jdXMgLm1hdGVyaWFsLWljb25zIHtcbiAgICB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlOyB9XG5cbi5mb3JtLWhvcml6b250YWwgLnJhZGlvLFxuLmZvcm0taG9yaXpvbnRhbCAuY2hlY2tib3gsXG4uZm9ybS1ob3Jpem9udGFsIC5yYWRpby1pbmxpbmUsXG4uZm9ybS1ob3Jpem9udGFsIC5jaGVja2JveC1pbmxpbmUge1xuICBwYWRkaW5nLXRvcDogMDsgfVxuXG4uZm9ybS1ob3Jpem9udGFsIC5yYWRpbyB7XG4gIG1hcmdpbi1ib3R0b206IDEwcHg7IH1cblxuLmZvcm0taG9yaXpvbnRhbCBsYWJlbCB7XG4gIHRleHQtYWxpZ246IHJpZ2h0OyB9XG5cbi5mb3JtLWhvcml6b250YWwgbGFiZWwuY29udHJvbC1sYWJlbCB7XG4gIG1hcmdpbjogMDsgfVxuXG5ib2R5IC5jb250YWluZXIgLndlbGwud2VsbC1zbSxcbmJvZHkgLmNvbnRhaW5lci1mbHVpZCAud2VsbC53ZWxsLXNtIHtcbiAgcGFkZGluZzogMTBweDsgfVxuXG5ib2R5IC5jb250YWluZXIgLndlbGwud2VsbC1sZyxcbmJvZHkgLmNvbnRhaW5lci1mbHVpZCAud2VsbC53ZWxsLWxnIHtcbiAgcGFkZGluZzogMjZweDsgfVxuXG5ib2R5IC5jb250YWluZXIgLndlbGwsXG5ib2R5IC5jb250YWluZXIgLmp1bWJvdHJvbixcbmJvZHkgLmNvbnRhaW5lci1mbHVpZCAud2VsbCxcbmJvZHkgLmNvbnRhaW5lci1mbHVpZCAuanVtYm90cm9uIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2ZmZjtcbiAgcGFkZGluZzogMTlweDtcbiAgbWFyZ2luLWJvdHRvbTogMjBweDtcbiAgYm94LXNoYWRvdzogMCA4cHggMTdweCAwIHJnYmEoMCwgMCwgMCwgMC4yKSwgMCA2cHggMjBweCAwIHJnYmEoMCwgMCwgMCwgMC4xOSk7XG4gIGJvcmRlci1yYWRpdXM6IDRweDtcbiAgYm9yZGVyOiAwOyB9XG4gIGJvZHkgLmNvbnRhaW5lciAud2VsbCBwLFxuICBib2R5IC5jb250YWluZXIgLmp1bWJvdHJvbiBwLFxuICBib2R5IC5jb250YWluZXItZmx1aWQgLndlbGwgcCxcbiAgYm9keSAuY29udGFpbmVyLWZsdWlkIC5qdW1ib3Ryb24gcCB7XG4gICAgZm9udC13ZWlnaHQ6IDMwMDsgfVxuICBib2R5IC5jb250YWluZXIgLndlbGwsIGJvZHkgLmNvbnRhaW5lciAud2VsbC1kZWZhdWx0LFxuICBib2R5IC5jb250YWluZXIgLmp1bWJvdHJvbixcbiAgYm9keSAuY29udGFpbmVyIC5qdW1ib3Ryb24tZGVmYXVsdCxcbiAgYm9keSAuY29udGFpbmVyLWZsdWlkIC53ZWxsLFxuICBib2R5IC5jb250YWluZXItZmx1aWQgLndlbGwtZGVmYXVsdCxcbiAgYm9keSAuY29udGFpbmVyLWZsdWlkIC5qdW1ib3Ryb24sXG4gIGJvZHkgLmNvbnRhaW5lci1mbHVpZCAuanVtYm90cm9uLWRlZmF1bHQge1xuICAgIGJhY2tncm91bmQtY29sb3I6ICNmZmZmZmY7IH1cbiAgYm9keSAuY29udGFpbmVyIC53ZWxsLWludmVyc2UsXG4gIGJvZHkgLmNvbnRhaW5lciAuanVtYm90cm9uLWludmVyc2UsXG4gIGJvZHkgLmNvbnRhaW5lci1mbHVpZCAud2VsbC1pbnZlcnNlLFxuICBib2R5IC5jb250YWluZXItZmx1aWQgLmp1bWJvdHJvbi1pbnZlcnNlIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjM2Y1MWI1OyB9XG4gIGJvZHkgLmNvbnRhaW5lciAud2VsbC1wcmltYXJ5LFxuICBib2R5IC5jb250YWluZXIgLmp1bWJvdHJvbi1wcmltYXJ5LFxuICBib2R5IC5jb250YWluZXItZmx1aWQgLndlbGwtcHJpbWFyeSxcbiAgYm9keSAuY29udGFpbmVyLWZsdWlkIC5qdW1ib3Ryb24tcHJpbWFyeSB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogIzMzN2FiNzsgfVxuICBib2R5IC5jb250YWluZXIgLndlbGwtc3VjY2VzcyxcbiAgYm9keSAuY29udGFpbmVyIC5qdW1ib3Ryb24tc3VjY2VzcyxcbiAgYm9keSAuY29udGFpbmVyLWZsdWlkIC53ZWxsLXN1Y2Nlc3MsXG4gIGJvZHkgLmNvbnRhaW5lci1mbHVpZCAuanVtYm90cm9uLXN1Y2Nlc3Mge1xuICAgIGJhY2tncm91bmQtY29sb3I6ICM1Y2I4NWM7IH1cbiAgYm9keSAuY29udGFpbmVyIC53ZWxsLWluZm8sXG4gIGJvZHkgLmNvbnRhaW5lciAuanVtYm90cm9uLWluZm8sXG4gIGJvZHkgLmNvbnRhaW5lci1mbHVpZCAud2VsbC1pbmZvLFxuICBib2R5IC5jb250YWluZXItZmx1aWQgLmp1bWJvdHJvbi1pbmZvIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjNWJjMGRlOyB9XG4gIGJvZHkgLmNvbnRhaW5lciAud2VsbC13YXJuaW5nLFxuICBib2R5IC5jb250YWluZXIgLmp1bWJvdHJvbi13YXJuaW5nLFxuICBib2R5IC5jb250YWluZXItZmx1aWQgLndlbGwtd2FybmluZyxcbiAgYm9keSAuY29udGFpbmVyLWZsdWlkIC5qdW1ib3Ryb24td2FybmluZyB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogI2YwYWQ0ZTsgfVxuICBib2R5IC5jb250YWluZXIgLndlbGwtZGFuZ2VyLFxuICBib2R5IC5jb250YWluZXIgLmp1bWJvdHJvbi1kYW5nZXIsXG4gIGJvZHkgLmNvbnRhaW5lci1mbHVpZCAud2VsbC1kYW5nZXIsXG4gIGJvZHkgLmNvbnRhaW5lci1mbHVpZCAuanVtYm90cm9uLWRhbmdlciB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogI2Q5NTM0ZjsgfVxuXG4uYnRuLFxuLmlucHV0LWdyb3VwLWJ0biAuYnRuIHtcbiAgYm9yZGVyOiBub25lO1xuICBib3JkZXItcmFkaXVzOiA0cHg7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgcGFkZGluZzogOHB4IDMwcHg7XG4gIG1hcmdpbjogMTBweCAxcHg7XG4gIGZvbnQtc2l6ZTogMTRweDtcbiAgZm9udC13ZWlnaHQ6IDUwMDtcbiAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbiAgbGV0dGVyLXNwYWNpbmc6IDA7XG4gIHdpbGwtY2hhbmdlOiBib3gtc2hhZG93LCB0cmFuc2Zvcm07XG4gIHRyYW5zaXRpb246IGJveC1zaGFkb3cgMC4ycyBjdWJpYy1iZXppZXIoMC40LCAwLCAxLCAxKSwgYmFja2dyb3VuZC1jb2xvciAwLjJzIGN1YmljLWJlemllcigwLjQsIDAsIDAuMiwgMSksIGNvbG9yIDAuMnMgY3ViaWMtYmV6aWVyKDAuNCwgMCwgMC4yLCAxKTtcbiAgb3V0bGluZTogMDtcbiAgY3Vyc29yOiBwb2ludGVyO1xuICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG4gIGJhY2tncm91bmQ6IHRyYW5zcGFyZW50OyB9XG4gIC5idG46Oi1tb3otZm9jdXMtaW5uZXIsXG4gIC5pbnB1dC1ncm91cC1idG4gLmJ0bjo6LW1vei1mb2N1cy1pbm5lciB7XG4gICAgYm9yZGVyOiAwOyB9XG4gIC5idG46bm90KC5idG4tcmFpc2VkKSxcbiAgLmlucHV0LWdyb3VwLWJ0biAuYnRuOm5vdCguYnRuLXJhaXNlZCkge1xuICAgIGJveC1zaGFkb3c6IG5vbmU7IH1cbiAgICAuYnRuOm5vdCguYnRuLXJhaXNlZCksIC5idG46bm90KC5idG4tcmFpc2VkKS5idG4tZGVmYXVsdCxcbiAgICAuaW5wdXQtZ3JvdXAtYnRuIC5idG46bm90KC5idG4tcmFpc2VkKSxcbiAgICAuaW5wdXQtZ3JvdXAtYnRuIC5idG46bm90KC5idG4tcmFpc2VkKS5idG4tZGVmYXVsdCB7XG4gICAgICBjb2xvcjogcmdiYSgwLDAsMCwgMC44Nyk7IH1cbiAgICAuYnRuOm5vdCguYnRuLXJhaXNlZCkuYnRuLWludmVyc2UsXG4gICAgLmlucHV0LWdyb3VwLWJ0biAuYnRuOm5vdCguYnRuLXJhaXNlZCkuYnRuLWludmVyc2Uge1xuICAgICAgY29sb3I6ICMzZjUxYjU7IH1cbiAgICAuYnRuOm5vdCguYnRuLXJhaXNlZCkuYnRuLXByaW1hcnksXG4gICAgLmlucHV0LWdyb3VwLWJ0biAuYnRuOm5vdCguYnRuLXJhaXNlZCkuYnRuLXByaW1hcnkge1xuICAgICAgY29sb3I6ICMzMzdhYjc7IH1cbiAgICAuYnRuOm5vdCguYnRuLXJhaXNlZCkuYnRuLXN1Y2Nlc3MsXG4gICAgLmlucHV0LWdyb3VwLWJ0biAuYnRuOm5vdCguYnRuLXJhaXNlZCkuYnRuLXN1Y2Nlc3Mge1xuICAgICAgY29sb3I6ICM1Y2I4NWM7IH1cbiAgICAuYnRuOm5vdCguYnRuLXJhaXNlZCkuYnRuLWluZm8sXG4gICAgLmlucHV0LWdyb3VwLWJ0biAuYnRuOm5vdCguYnRuLXJhaXNlZCkuYnRuLWluZm8ge1xuICAgICAgY29sb3I6ICM1YmMwZGU7IH1cbiAgICAuYnRuOm5vdCguYnRuLXJhaXNlZCkuYnRuLXdhcm5pbmcsXG4gICAgLmlucHV0LWdyb3VwLWJ0biAuYnRuOm5vdCguYnRuLXJhaXNlZCkuYnRuLXdhcm5pbmcge1xuICAgICAgY29sb3I6ICNmMGFkNGU7IH1cbiAgICAuYnRuOm5vdCguYnRuLXJhaXNlZCkuYnRuLWRhbmdlcixcbiAgICAuaW5wdXQtZ3JvdXAtYnRuIC5idG46bm90KC5idG4tcmFpc2VkKS5idG4tZGFuZ2VyIHtcbiAgICAgIGNvbG9yOiAjZDk1MzRmOyB9XG4gICAgLmJ0bjpub3QoLmJ0bi1yYWlzZWQpOm5vdCguYnRuLWxpbmspOmhvdmVyLCAuYnRuOm5vdCguYnRuLXJhaXNlZCk6bm90KC5idG4tbGluayk6Zm9jdXMsXG4gICAgLmlucHV0LWdyb3VwLWJ0biAuYnRuOm5vdCguYnRuLXJhaXNlZCk6bm90KC5idG4tbGluayk6aG92ZXIsXG4gICAgLmlucHV0LWdyb3VwLWJ0biAuYnRuOm5vdCguYnRuLXJhaXNlZCk6bm90KC5idG4tbGluayk6Zm9jdXMge1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogcmdiYSgxNTMsIDE1MywgMTUzLCAwLjIpOyB9XG4gICAgICAudGhlbWUtZGFyayAuYnRuOm5vdCguYnRuLXJhaXNlZCk6bm90KC5idG4tbGluayk6aG92ZXIsIC50aGVtZS1kYXJrIC5idG46bm90KC5idG4tcmFpc2VkKTpub3QoLmJ0bi1saW5rKTpmb2N1cywgLnRoZW1lLWRhcmtcbiAgICAgIC5pbnB1dC1ncm91cC1idG4gLmJ0bjpub3QoLmJ0bi1yYWlzZWQpOm5vdCguYnRuLWxpbmspOmhvdmVyLCAudGhlbWUtZGFya1xuICAgICAgLmlucHV0LWdyb3VwLWJ0biAuYnRuOm5vdCguYnRuLXJhaXNlZCk6bm90KC5idG4tbGluayk6Zm9jdXMge1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiByZ2JhKDIwNCwgMjA0LCAyMDQsIDAuMTUpOyB9XG4gIC5idG4uYnRuLXJhaXNlZCwgLmJ0bi5idG4tcmFpc2VkLmJ0bi1kZWZhdWx0LCAuYnRuLmJ0bi1mYWIsIC5idG4uYnRuLWZhYi5idG4tZGVmYXVsdCxcbiAgLmJ0bi1ncm91cC1yYWlzZWQgLmJ0bixcbiAgLmJ0bi1ncm91cC1yYWlzZWQgLmJ0bi5idG4tZGVmYXVsdCxcbiAgLmlucHV0LWdyb3VwLWJ0biAuYnRuLmJ0bi1yYWlzZWQsXG4gIC5pbnB1dC1ncm91cC1idG4gLmJ0bi5idG4tcmFpc2VkLmJ0bi1kZWZhdWx0LFxuICAuaW5wdXQtZ3JvdXAtYnRuIC5idG4uYnRuLWZhYixcbiAgLmlucHV0LWdyb3VwLWJ0biAuYnRuLmJ0bi1mYWIuYnRuLWRlZmF1bHQsXG4gIC5idG4tZ3JvdXAtcmFpc2VkXG4gIC5pbnB1dC1ncm91cC1idG4gLmJ0bixcbiAgLmJ0bi1ncm91cC1yYWlzZWRcbiAgLmlucHV0LWdyb3VwLWJ0biAuYnRuLmJ0bi1kZWZhdWx0IHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjZmZmO1xuICAgIGNvbG9yOiByZ2JhKDAsMCwwLCAwLjg3KTsgfVxuICAuYnRuLmJ0bi1yYWlzZWQuYnRuLWludmVyc2UsIC5idG4uYnRuLWZhYi5idG4taW52ZXJzZSxcbiAgLmJ0bi1ncm91cC1yYWlzZWQgLmJ0bi5idG4taW52ZXJzZSxcbiAgLmlucHV0LWdyb3VwLWJ0biAuYnRuLmJ0bi1yYWlzZWQuYnRuLWludmVyc2UsXG4gIC5pbnB1dC1ncm91cC1idG4gLmJ0bi5idG4tZmFiLmJ0bi1pbnZlcnNlLFxuICAuYnRuLWdyb3VwLXJhaXNlZFxuICAuaW5wdXQtZ3JvdXAtYnRuIC5idG4uYnRuLWludmVyc2Uge1xuICAgIGJhY2tncm91bmQtY29sb3I6ICMzZjUxYjU7XG4gICAgY29sb3I6ICNmZmZmZmY7IH1cbiAgLmJ0bi5idG4tcmFpc2VkLmJ0bi1wcmltYXJ5LCAuYnRuLmJ0bi1mYWIuYnRuLXByaW1hcnksXG4gIC5idG4tZ3JvdXAtcmFpc2VkIC5idG4uYnRuLXByaW1hcnksXG4gIC5pbnB1dC1ncm91cC1idG4gLmJ0bi5idG4tcmFpc2VkLmJ0bi1wcmltYXJ5LFxuICAuaW5wdXQtZ3JvdXAtYnRuIC5idG4uYnRuLWZhYi5idG4tcHJpbWFyeSxcbiAgLmJ0bi1ncm91cC1yYWlzZWRcbiAgLmlucHV0LWdyb3VwLWJ0biAuYnRuLmJ0bi1wcmltYXJ5IHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjMzM3YWI3O1xuICAgIGNvbG9yOiByZ2JhKDI1NSwyNTUsMjU1LCAwLjg0KTsgfVxuICAuYnRuLmJ0bi1yYWlzZWQuYnRuLXN1Y2Nlc3MsIC5idG4uYnRuLWZhYi5idG4tc3VjY2VzcyxcbiAgLmJ0bi1ncm91cC1yYWlzZWQgLmJ0bi5idG4tc3VjY2VzcyxcbiAgLmlucHV0LWdyb3VwLWJ0biAuYnRuLmJ0bi1yYWlzZWQuYnRuLXN1Y2Nlc3MsXG4gIC5pbnB1dC1ncm91cC1idG4gLmJ0bi5idG4tZmFiLmJ0bi1zdWNjZXNzLFxuICAuYnRuLWdyb3VwLXJhaXNlZFxuICAuaW5wdXQtZ3JvdXAtYnRuIC5idG4uYnRuLXN1Y2Nlc3Mge1xuICAgIGJhY2tncm91bmQtY29sb3I6ICM1Y2I4NWM7XG4gICAgY29sb3I6IHJnYmEoMjU1LDI1NSwyNTUsIDAuODQpOyB9XG4gIC5idG4uYnRuLXJhaXNlZC5idG4taW5mbywgLmJ0bi5idG4tZmFiLmJ0bi1pbmZvLFxuICAuYnRuLWdyb3VwLXJhaXNlZCAuYnRuLmJ0bi1pbmZvLFxuICAuaW5wdXQtZ3JvdXAtYnRuIC5idG4uYnRuLXJhaXNlZC5idG4taW5mbyxcbiAgLmlucHV0LWdyb3VwLWJ0biAuYnRuLmJ0bi1mYWIuYnRuLWluZm8sXG4gIC5idG4tZ3JvdXAtcmFpc2VkXG4gIC5pbnB1dC1ncm91cC1idG4gLmJ0bi5idG4taW5mbyB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogIzViYzBkZTtcbiAgICBjb2xvcjogcmdiYSgyNTUsMjU1LDI1NSwgMC44NCk7IH1cbiAgLmJ0bi5idG4tcmFpc2VkLmJ0bi13YXJuaW5nLCAuYnRuLmJ0bi1mYWIuYnRuLXdhcm5pbmcsXG4gIC5idG4tZ3JvdXAtcmFpc2VkIC5idG4uYnRuLXdhcm5pbmcsXG4gIC5pbnB1dC1ncm91cC1idG4gLmJ0bi5idG4tcmFpc2VkLmJ0bi13YXJuaW5nLFxuICAuaW5wdXQtZ3JvdXAtYnRuIC5idG4uYnRuLWZhYi5idG4td2FybmluZyxcbiAgLmJ0bi1ncm91cC1yYWlzZWRcbiAgLmlucHV0LWdyb3VwLWJ0biAuYnRuLmJ0bi13YXJuaW5nIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjZjBhZDRlO1xuICAgIGNvbG9yOiByZ2JhKDI1NSwyNTUsMjU1LCAwLjg0KTsgfVxuICAuYnRuLmJ0bi1yYWlzZWQuYnRuLWRhbmdlciwgLmJ0bi5idG4tZmFiLmJ0bi1kYW5nZXIsXG4gIC5idG4tZ3JvdXAtcmFpc2VkIC5idG4uYnRuLWRhbmdlcixcbiAgLmlucHV0LWdyb3VwLWJ0biAuYnRuLmJ0bi1yYWlzZWQuYnRuLWRhbmdlcixcbiAgLmlucHV0LWdyb3VwLWJ0biAuYnRuLmJ0bi1mYWIuYnRuLWRhbmdlcixcbiAgLmJ0bi1ncm91cC1yYWlzZWRcbiAgLmlucHV0LWdyb3VwLWJ0biAuYnRuLmJ0bi1kYW5nZXIge1xuICAgIGJhY2tncm91bmQtY29sb3I6ICNkOTUzNGY7XG4gICAgY29sb3I6IHJnYmEoMjU1LDI1NSwyNTUsIDAuODQpOyB9XG4gIC5idG4uYnRuLXJhaXNlZDpub3QoLmJ0bi1saW5rKSxcbiAgLmJ0bi1ncm91cC1yYWlzZWQgLmJ0bjpub3QoLmJ0bi1saW5rKSxcbiAgLmlucHV0LWdyb3VwLWJ0biAuYnRuLmJ0bi1yYWlzZWQ6bm90KC5idG4tbGluayksXG4gIC5idG4tZ3JvdXAtcmFpc2VkXG4gIC5pbnB1dC1ncm91cC1idG4gLmJ0bjpub3QoLmJ0bi1saW5rKSB7XG4gICAgYm94LXNoYWRvdzogMCAycHggMnB4IDAgcmdiYSgwLCAwLCAwLCAwLjE0KSwgMCAzcHggMXB4IC0ycHggcmdiYSgwLCAwLCAwLCAwLjIpLCAwIDFweCA1cHggMCByZ2JhKDAsIDAsIDAsIDAuMTIpOyB9XG4gICAgLmJ0bi5idG4tcmFpc2VkOm5vdCguYnRuLWxpbmspOmhvdmVyLCAuYnRuLmJ0bi1yYWlzZWQ6bm90KC5idG4tbGluayk6Zm9jdXMsIC5idG4uYnRuLXJhaXNlZDpub3QoLmJ0bi1saW5rKS5hY3RpdmUsIC5idG4uYnRuLXJhaXNlZDpub3QoLmJ0bi1saW5rKTphY3RpdmUsXG4gICAgLmJ0bi1ncm91cC1yYWlzZWQgLmJ0bjpub3QoLmJ0bi1saW5rKTpob3ZlcixcbiAgICAuYnRuLWdyb3VwLXJhaXNlZCAuYnRuOm5vdCguYnRuLWxpbmspOmZvY3VzLFxuICAgIC5idG4tZ3JvdXAtcmFpc2VkIC5idG46bm90KC5idG4tbGluaykuYWN0aXZlLFxuICAgIC5idG4tZ3JvdXAtcmFpc2VkIC5idG46bm90KC5idG4tbGluayk6YWN0aXZlLFxuICAgIC5pbnB1dC1ncm91cC1idG4gLmJ0bi5idG4tcmFpc2VkOm5vdCguYnRuLWxpbmspOmhvdmVyLFxuICAgIC5pbnB1dC1ncm91cC1idG4gLmJ0bi5idG4tcmFpc2VkOm5vdCguYnRuLWxpbmspOmZvY3VzLFxuICAgIC5pbnB1dC1ncm91cC1idG4gLmJ0bi5idG4tcmFpc2VkOm5vdCguYnRuLWxpbmspLmFjdGl2ZSxcbiAgICAuaW5wdXQtZ3JvdXAtYnRuIC5idG4uYnRuLXJhaXNlZDpub3QoLmJ0bi1saW5rKTphY3RpdmUsXG4gICAgLmJ0bi1ncm91cC1yYWlzZWRcbiAgICAuaW5wdXQtZ3JvdXAtYnRuIC5idG46bm90KC5idG4tbGluayk6aG92ZXIsXG4gICAgLmJ0bi1ncm91cC1yYWlzZWRcbiAgICAuaW5wdXQtZ3JvdXAtYnRuIC5idG46bm90KC5idG4tbGluayk6Zm9jdXMsXG4gICAgLmJ0bi1ncm91cC1yYWlzZWRcbiAgICAuaW5wdXQtZ3JvdXAtYnRuIC5idG46bm90KC5idG4tbGluaykuYWN0aXZlLFxuICAgIC5idG4tZ3JvdXAtcmFpc2VkXG4gICAgLmlucHV0LWdyb3VwLWJ0biAuYnRuOm5vdCguYnRuLWxpbmspOmFjdGl2ZSB7XG4gICAgICBvdXRsaW5lOiAwOyB9XG4gICAgICAuYnRuLmJ0bi1yYWlzZWQ6bm90KC5idG4tbGluayk6aG92ZXIsIC5idG4uYnRuLXJhaXNlZDpub3QoLmJ0bi1saW5rKTpob3Zlci5idG4tZGVmYXVsdCwgLmJ0bi5idG4tcmFpc2VkOm5vdCguYnRuLWxpbmspOmZvY3VzLCAuYnRuLmJ0bi1yYWlzZWQ6bm90KC5idG4tbGluayk6Zm9jdXMuYnRuLWRlZmF1bHQsIC5idG4uYnRuLXJhaXNlZDpub3QoLmJ0bi1saW5rKS5hY3RpdmUsIC5idG4uYnRuLXJhaXNlZDpub3QoLmJ0bi1saW5rKS5hY3RpdmUuYnRuLWRlZmF1bHQsIC5idG4uYnRuLXJhaXNlZDpub3QoLmJ0bi1saW5rKTphY3RpdmUsIC5idG4uYnRuLXJhaXNlZDpub3QoLmJ0bi1saW5rKTphY3RpdmUuYnRuLWRlZmF1bHQsXG4gICAgICAuYnRuLWdyb3VwLXJhaXNlZCAuYnRuOm5vdCguYnRuLWxpbmspOmhvdmVyLFxuICAgICAgLmJ0bi1ncm91cC1yYWlzZWQgLmJ0bjpub3QoLmJ0bi1saW5rKTpob3Zlci5idG4tZGVmYXVsdCxcbiAgICAgIC5idG4tZ3JvdXAtcmFpc2VkIC5idG46bm90KC5idG4tbGluayk6Zm9jdXMsXG4gICAgICAuYnRuLWdyb3VwLXJhaXNlZCAuYnRuOm5vdCguYnRuLWxpbmspOmZvY3VzLmJ0bi1kZWZhdWx0LFxuICAgICAgLmJ0bi1ncm91cC1yYWlzZWQgLmJ0bjpub3QoLmJ0bi1saW5rKS5hY3RpdmUsXG4gICAgICAuYnRuLWdyb3VwLXJhaXNlZCAuYnRuOm5vdCguYnRuLWxpbmspLmFjdGl2ZS5idG4tZGVmYXVsdCxcbiAgICAgIC5idG4tZ3JvdXAtcmFpc2VkIC5idG46bm90KC5idG4tbGluayk6YWN0aXZlLFxuICAgICAgLmJ0bi1ncm91cC1yYWlzZWQgLmJ0bjpub3QoLmJ0bi1saW5rKTphY3RpdmUuYnRuLWRlZmF1bHQsXG4gICAgICAuaW5wdXQtZ3JvdXAtYnRuIC5idG4uYnRuLXJhaXNlZDpub3QoLmJ0bi1saW5rKTpob3ZlcixcbiAgICAgIC5pbnB1dC1ncm91cC1idG4gLmJ0bi5idG4tcmFpc2VkOm5vdCguYnRuLWxpbmspOmhvdmVyLmJ0bi1kZWZhdWx0LFxuICAgICAgLmlucHV0LWdyb3VwLWJ0biAuYnRuLmJ0bi1yYWlzZWQ6bm90KC5idG4tbGluayk6Zm9jdXMsXG4gICAgICAuaW5wdXQtZ3JvdXAtYnRuIC5idG4uYnRuLXJhaXNlZDpub3QoLmJ0bi1saW5rKTpmb2N1cy5idG4tZGVmYXVsdCxcbiAgICAgIC5pbnB1dC1ncm91cC1idG4gLmJ0bi5idG4tcmFpc2VkOm5vdCguYnRuLWxpbmspLmFjdGl2ZSxcbiAgICAgIC5pbnB1dC1ncm91cC1idG4gLmJ0bi5idG4tcmFpc2VkOm5vdCguYnRuLWxpbmspLmFjdGl2ZS5idG4tZGVmYXVsdCxcbiAgICAgIC5pbnB1dC1ncm91cC1idG4gLmJ0bi5idG4tcmFpc2VkOm5vdCguYnRuLWxpbmspOmFjdGl2ZSxcbiAgICAgIC5pbnB1dC1ncm91cC1idG4gLmJ0bi5idG4tcmFpc2VkOm5vdCguYnRuLWxpbmspOmFjdGl2ZS5idG4tZGVmYXVsdCxcbiAgICAgIC5idG4tZ3JvdXAtcmFpc2VkXG4gICAgICAuaW5wdXQtZ3JvdXAtYnRuIC5idG46bm90KC5idG4tbGluayk6aG92ZXIsXG4gICAgICAuYnRuLWdyb3VwLXJhaXNlZFxuICAgICAgLmlucHV0LWdyb3VwLWJ0biAuYnRuOm5vdCguYnRuLWxpbmspOmhvdmVyLmJ0bi1kZWZhdWx0LFxuICAgICAgLmJ0bi1ncm91cC1yYWlzZWRcbiAgICAgIC5pbnB1dC1ncm91cC1idG4gLmJ0bjpub3QoLmJ0bi1saW5rKTpmb2N1cyxcbiAgICAgIC5idG4tZ3JvdXAtcmFpc2VkXG4gICAgICAuaW5wdXQtZ3JvdXAtYnRuIC5idG46bm90KC5idG4tbGluayk6Zm9jdXMuYnRuLWRlZmF1bHQsXG4gICAgICAuYnRuLWdyb3VwLXJhaXNlZFxuICAgICAgLmlucHV0LWdyb3VwLWJ0biAuYnRuOm5vdCguYnRuLWxpbmspLmFjdGl2ZSxcbiAgICAgIC5idG4tZ3JvdXAtcmFpc2VkXG4gICAgICAuaW5wdXQtZ3JvdXAtYnRuIC5idG46bm90KC5idG4tbGluaykuYWN0aXZlLmJ0bi1kZWZhdWx0LFxuICAgICAgLmJ0bi1ncm91cC1yYWlzZWRcbiAgICAgIC5pbnB1dC1ncm91cC1idG4gLmJ0bjpub3QoLmJ0bi1saW5rKTphY3RpdmUsXG4gICAgICAuYnRuLWdyb3VwLXJhaXNlZFxuICAgICAgLmlucHV0LWdyb3VwLWJ0biAuYnRuOm5vdCguYnRuLWxpbmspOmFjdGl2ZS5idG4tZGVmYXVsdCB7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6IHdoaXRlc21va2U7IH1cbiAgICAgIC5idG4uYnRuLXJhaXNlZDpub3QoLmJ0bi1saW5rKTpob3Zlci5idG4taW52ZXJzZSwgLmJ0bi5idG4tcmFpc2VkOm5vdCguYnRuLWxpbmspOmZvY3VzLmJ0bi1pbnZlcnNlLCAuYnRuLmJ0bi1yYWlzZWQ6bm90KC5idG4tbGluaykuYWN0aXZlLmJ0bi1pbnZlcnNlLCAuYnRuLmJ0bi1yYWlzZWQ6bm90KC5idG4tbGluayk6YWN0aXZlLmJ0bi1pbnZlcnNlLFxuICAgICAgLmJ0bi1ncm91cC1yYWlzZWQgLmJ0bjpub3QoLmJ0bi1saW5rKTpob3Zlci5idG4taW52ZXJzZSxcbiAgICAgIC5idG4tZ3JvdXAtcmFpc2VkIC5idG46bm90KC5idG4tbGluayk6Zm9jdXMuYnRuLWludmVyc2UsXG4gICAgICAuYnRuLWdyb3VwLXJhaXNlZCAuYnRuOm5vdCguYnRuLWxpbmspLmFjdGl2ZS5idG4taW52ZXJzZSxcbiAgICAgIC5idG4tZ3JvdXAtcmFpc2VkIC5idG46bm90KC5idG4tbGluayk6YWN0aXZlLmJ0bi1pbnZlcnNlLFxuICAgICAgLmlucHV0LWdyb3VwLWJ0biAuYnRuLmJ0bi1yYWlzZWQ6bm90KC5idG4tbGluayk6aG92ZXIuYnRuLWludmVyc2UsXG4gICAgICAuaW5wdXQtZ3JvdXAtYnRuIC5idG4uYnRuLXJhaXNlZDpub3QoLmJ0bi1saW5rKTpmb2N1cy5idG4taW52ZXJzZSxcbiAgICAgIC5pbnB1dC1ncm91cC1idG4gLmJ0bi5idG4tcmFpc2VkOm5vdCguYnRuLWxpbmspLmFjdGl2ZS5idG4taW52ZXJzZSxcbiAgICAgIC5pbnB1dC1ncm91cC1idG4gLmJ0bi5idG4tcmFpc2VkOm5vdCguYnRuLWxpbmspOmFjdGl2ZS5idG4taW52ZXJzZSxcbiAgICAgIC5idG4tZ3JvdXAtcmFpc2VkXG4gICAgICAuaW5wdXQtZ3JvdXAtYnRuIC5idG46bm90KC5idG4tbGluayk6aG92ZXIuYnRuLWludmVyc2UsXG4gICAgICAuYnRuLWdyb3VwLXJhaXNlZFxuICAgICAgLmlucHV0LWdyb3VwLWJ0biAuYnRuOm5vdCguYnRuLWxpbmspOmZvY3VzLmJ0bi1pbnZlcnNlLFxuICAgICAgLmJ0bi1ncm91cC1yYWlzZWRcbiAgICAgIC5pbnB1dC1ncm91cC1idG4gLmJ0bjpub3QoLmJ0bi1saW5rKS5hY3RpdmUuYnRuLWludmVyc2UsXG4gICAgICAuYnRuLWdyb3VwLXJhaXNlZFxuICAgICAgLmlucHV0LWdyb3VwLWJ0biAuYnRuOm5vdCguYnRuLWxpbmspOmFjdGl2ZS5idG4taW52ZXJzZSB7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6ICM0OTViYzA7IH1cbiAgICAgIC5idG4uYnRuLXJhaXNlZDpub3QoLmJ0bi1saW5rKTpob3Zlci5idG4tcHJpbWFyeSwgLmJ0bi5idG4tcmFpc2VkOm5vdCguYnRuLWxpbmspOmZvY3VzLmJ0bi1wcmltYXJ5LCAuYnRuLmJ0bi1yYWlzZWQ6bm90KC5idG4tbGluaykuYWN0aXZlLmJ0bi1wcmltYXJ5LCAuYnRuLmJ0bi1yYWlzZWQ6bm90KC5idG4tbGluayk6YWN0aXZlLmJ0bi1wcmltYXJ5LFxuICAgICAgLmJ0bi1ncm91cC1yYWlzZWQgLmJ0bjpub3QoLmJ0bi1saW5rKTpob3Zlci5idG4tcHJpbWFyeSxcbiAgICAgIC5idG4tZ3JvdXAtcmFpc2VkIC5idG46bm90KC5idG4tbGluayk6Zm9jdXMuYnRuLXByaW1hcnksXG4gICAgICAuYnRuLWdyb3VwLXJhaXNlZCAuYnRuOm5vdCguYnRuLWxpbmspLmFjdGl2ZS5idG4tcHJpbWFyeSxcbiAgICAgIC5idG4tZ3JvdXAtcmFpc2VkIC5idG46bm90KC5idG4tbGluayk6YWN0aXZlLmJ0bi1wcmltYXJ5LFxuICAgICAgLmlucHV0LWdyb3VwLWJ0biAuYnRuLmJ0bi1yYWlzZWQ6bm90KC5idG4tbGluayk6aG92ZXIuYnRuLXByaW1hcnksXG4gICAgICAuaW5wdXQtZ3JvdXAtYnRuIC5idG4uYnRuLXJhaXNlZDpub3QoLmJ0bi1saW5rKTpmb2N1cy5idG4tcHJpbWFyeSxcbiAgICAgIC5pbnB1dC1ncm91cC1idG4gLmJ0bi5idG4tcmFpc2VkOm5vdCguYnRuLWxpbmspLmFjdGl2ZS5idG4tcHJpbWFyeSxcbiAgICAgIC5pbnB1dC1ncm91cC1idG4gLmJ0bi5idG4tcmFpc2VkOm5vdCguYnRuLWxpbmspOmFjdGl2ZS5idG4tcHJpbWFyeSxcbiAgICAgIC5idG4tZ3JvdXAtcmFpc2VkXG4gICAgICAuaW5wdXQtZ3JvdXAtYnRuIC5idG46bm90KC5idG4tbGluayk6aG92ZXIuYnRuLXByaW1hcnksXG4gICAgICAuYnRuLWdyb3VwLXJhaXNlZFxuICAgICAgLmlucHV0LWdyb3VwLWJ0biAuYnRuOm5vdCguYnRuLWxpbmspOmZvY3VzLmJ0bi1wcmltYXJ5LFxuICAgICAgLmJ0bi1ncm91cC1yYWlzZWRcbiAgICAgIC5pbnB1dC1ncm91cC1idG4gLmJ0bjpub3QoLmJ0bi1saW5rKS5hY3RpdmUuYnRuLXByaW1hcnksXG4gICAgICAuYnRuLWdyb3VwLXJhaXNlZFxuICAgICAgLmlucHV0LWdyb3VwLWJ0biAuYnRuOm5vdCguYnRuLWxpbmspOmFjdGl2ZS5idG4tcHJpbWFyeSB7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6ICMzODg1Yzc7IH1cbiAgICAgIC5idG4uYnRuLXJhaXNlZDpub3QoLmJ0bi1saW5rKTpob3Zlci5idG4tc3VjY2VzcywgLmJ0bi5idG4tcmFpc2VkOm5vdCguYnRuLWxpbmspOmZvY3VzLmJ0bi1zdWNjZXNzLCAuYnRuLmJ0bi1yYWlzZWQ6bm90KC5idG4tbGluaykuYWN0aXZlLmJ0bi1zdWNjZXNzLCAuYnRuLmJ0bi1yYWlzZWQ6bm90KC5idG4tbGluayk6YWN0aXZlLmJ0bi1zdWNjZXNzLFxuICAgICAgLmJ0bi1ncm91cC1yYWlzZWQgLmJ0bjpub3QoLmJ0bi1saW5rKTpob3Zlci5idG4tc3VjY2VzcyxcbiAgICAgIC5idG4tZ3JvdXAtcmFpc2VkIC5idG46bm90KC5idG4tbGluayk6Zm9jdXMuYnRuLXN1Y2Nlc3MsXG4gICAgICAuYnRuLWdyb3VwLXJhaXNlZCAuYnRuOm5vdCguYnRuLWxpbmspLmFjdGl2ZS5idG4tc3VjY2VzcyxcbiAgICAgIC5idG4tZ3JvdXAtcmFpc2VkIC5idG46bm90KC5idG4tbGluayk6YWN0aXZlLmJ0bi1zdWNjZXNzLFxuICAgICAgLmlucHV0LWdyb3VwLWJ0biAuYnRuLmJ0bi1yYWlzZWQ6bm90KC5idG4tbGluayk6aG92ZXIuYnRuLXN1Y2Nlc3MsXG4gICAgICAuaW5wdXQtZ3JvdXAtYnRuIC5idG4uYnRuLXJhaXNlZDpub3QoLmJ0bi1saW5rKTpmb2N1cy5idG4tc3VjY2VzcyxcbiAgICAgIC5pbnB1dC1ncm91cC1idG4gLmJ0bi5idG4tcmFpc2VkOm5vdCguYnRuLWxpbmspLmFjdGl2ZS5idG4tc3VjY2VzcyxcbiAgICAgIC5pbnB1dC1ncm91cC1idG4gLmJ0bi5idG4tcmFpc2VkOm5vdCguYnRuLWxpbmspOmFjdGl2ZS5idG4tc3VjY2VzcyxcbiAgICAgIC5idG4tZ3JvdXAtcmFpc2VkXG4gICAgICAuaW5wdXQtZ3JvdXAtYnRuIC5idG46bm90KC5idG4tbGluayk6aG92ZXIuYnRuLXN1Y2Nlc3MsXG4gICAgICAuYnRuLWdyb3VwLXJhaXNlZFxuICAgICAgLmlucHV0LWdyb3VwLWJ0biAuYnRuOm5vdCguYnRuLWxpbmspOmZvY3VzLmJ0bi1zdWNjZXNzLFxuICAgICAgLmJ0bi1ncm91cC1yYWlzZWRcbiAgICAgIC5pbnB1dC1ncm91cC1idG4gLmJ0bjpub3QoLmJ0bi1saW5rKS5hY3RpdmUuYnRuLXN1Y2Nlc3MsXG4gICAgICAuYnRuLWdyb3VwLXJhaXNlZFxuICAgICAgLmlucHV0LWdyb3VwLWJ0biAuYnRuOm5vdCguYnRuLWxpbmspOmFjdGl2ZS5idG4tc3VjY2VzcyB7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6ICM0ZWIyNGU7IH1cbiAgICAgIC5idG4uYnRuLXJhaXNlZDpub3QoLmJ0bi1saW5rKTpob3Zlci5idG4taW5mbywgLmJ0bi5idG4tcmFpc2VkOm5vdCguYnRuLWxpbmspOmZvY3VzLmJ0bi1pbmZvLCAuYnRuLmJ0bi1yYWlzZWQ6bm90KC5idG4tbGluaykuYWN0aXZlLmJ0bi1pbmZvLCAuYnRuLmJ0bi1yYWlzZWQ6bm90KC5idG4tbGluayk6YWN0aXZlLmJ0bi1pbmZvLFxuICAgICAgLmJ0bi1ncm91cC1yYWlzZWQgLmJ0bjpub3QoLmJ0bi1saW5rKTpob3Zlci5idG4taW5mbyxcbiAgICAgIC5idG4tZ3JvdXAtcmFpc2VkIC5idG46bm90KC5idG4tbGluayk6Zm9jdXMuYnRuLWluZm8sXG4gICAgICAuYnRuLWdyb3VwLXJhaXNlZCAuYnRuOm5vdCguYnRuLWxpbmspLmFjdGl2ZS5idG4taW5mbyxcbiAgICAgIC5idG4tZ3JvdXAtcmFpc2VkIC5idG46bm90KC5idG4tbGluayk6YWN0aXZlLmJ0bi1pbmZvLFxuICAgICAgLmlucHV0LWdyb3VwLWJ0biAuYnRuLmJ0bi1yYWlzZWQ6bm90KC5idG4tbGluayk6aG92ZXIuYnRuLWluZm8sXG4gICAgICAuaW5wdXQtZ3JvdXAtYnRuIC5idG4uYnRuLXJhaXNlZDpub3QoLmJ0bi1saW5rKTpmb2N1cy5idG4taW5mbyxcbiAgICAgIC5pbnB1dC1ncm91cC1idG4gLmJ0bi5idG4tcmFpc2VkOm5vdCguYnRuLWxpbmspLmFjdGl2ZS5idG4taW5mbyxcbiAgICAgIC5pbnB1dC1ncm91cC1idG4gLmJ0bi5idG4tcmFpc2VkOm5vdCguYnRuLWxpbmspOmFjdGl2ZS5idG4taW5mbyxcbiAgICAgIC5idG4tZ3JvdXAtcmFpc2VkXG4gICAgICAuaW5wdXQtZ3JvdXAtYnRuIC5idG46bm90KC5idG4tbGluayk6aG92ZXIuYnRuLWluZm8sXG4gICAgICAuYnRuLWdyb3VwLXJhaXNlZFxuICAgICAgLmlucHV0LWdyb3VwLWJ0biAuYnRuOm5vdCguYnRuLWxpbmspOmZvY3VzLmJ0bi1pbmZvLFxuICAgICAgLmJ0bi1ncm91cC1yYWlzZWRcbiAgICAgIC5pbnB1dC1ncm91cC1idG4gLmJ0bjpub3QoLmJ0bi1saW5rKS5hY3RpdmUuYnRuLWluZm8sXG4gICAgICAuYnRuLWdyb3VwLXJhaXNlZFxuICAgICAgLmlucHV0LWdyb3VwLWJ0biAuYnRuOm5vdCguYnRuLWxpbmspOmFjdGl2ZS5idG4taW5mbyB7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6ICM2Y2M3ZTE7IH1cbiAgICAgIC5idG4uYnRuLXJhaXNlZDpub3QoLmJ0bi1saW5rKTpob3Zlci5idG4td2FybmluZywgLmJ0bi5idG4tcmFpc2VkOm5vdCguYnRuLWxpbmspOmZvY3VzLmJ0bi13YXJuaW5nLCAuYnRuLmJ0bi1yYWlzZWQ6bm90KC5idG4tbGluaykuYWN0aXZlLmJ0bi13YXJuaW5nLCAuYnRuLmJ0bi1yYWlzZWQ6bm90KC5idG4tbGluayk6YWN0aXZlLmJ0bi13YXJuaW5nLFxuICAgICAgLmJ0bi1ncm91cC1yYWlzZWQgLmJ0bjpub3QoLmJ0bi1saW5rKTpob3Zlci5idG4td2FybmluZyxcbiAgICAgIC5idG4tZ3JvdXAtcmFpc2VkIC5idG46bm90KC5idG4tbGluayk6Zm9jdXMuYnRuLXdhcm5pbmcsXG4gICAgICAuYnRuLWdyb3VwLXJhaXNlZCAuYnRuOm5vdCguYnRuLWxpbmspLmFjdGl2ZS5idG4td2FybmluZyxcbiAgICAgIC5idG4tZ3JvdXAtcmFpc2VkIC5idG46bm90KC5idG4tbGluayk6YWN0aXZlLmJ0bi13YXJuaW5nLFxuICAgICAgLmlucHV0LWdyb3VwLWJ0biAuYnRuLmJ0bi1yYWlzZWQ6bm90KC5idG4tbGluayk6aG92ZXIuYnRuLXdhcm5pbmcsXG4gICAgICAuaW5wdXQtZ3JvdXAtYnRuIC5idG4uYnRuLXJhaXNlZDpub3QoLmJ0bi1saW5rKTpmb2N1cy5idG4td2FybmluZyxcbiAgICAgIC5pbnB1dC1ncm91cC1idG4gLmJ0bi5idG4tcmFpc2VkOm5vdCguYnRuLWxpbmspLmFjdGl2ZS5idG4td2FybmluZyxcbiAgICAgIC5pbnB1dC1ncm91cC1idG4gLmJ0bi5idG4tcmFpc2VkOm5vdCguYnRuLWxpbmspOmFjdGl2ZS5idG4td2FybmluZyxcbiAgICAgIC5idG4tZ3JvdXAtcmFpc2VkXG4gICAgICAuaW5wdXQtZ3JvdXAtYnRuIC5idG46bm90KC5idG4tbGluayk6aG92ZXIuYnRuLXdhcm5pbmcsXG4gICAgICAuYnRuLWdyb3VwLXJhaXNlZFxuICAgICAgLmlucHV0LWdyb3VwLWJ0biAuYnRuOm5vdCguYnRuLWxpbmspOmZvY3VzLmJ0bi13YXJuaW5nLFxuICAgICAgLmJ0bi1ncm91cC1yYWlzZWRcbiAgICAgIC5pbnB1dC1ncm91cC1idG4gLmJ0bjpub3QoLmJ0bi1saW5rKS5hY3RpdmUuYnRuLXdhcm5pbmcsXG4gICAgICAuYnRuLWdyb3VwLXJhaXNlZFxuICAgICAgLmlucHV0LWdyb3VwLWJ0biAuYnRuOm5vdCguYnRuLWxpbmspOmFjdGl2ZS5idG4td2FybmluZyB7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6ICNmMmI2NjE7IH1cbiAgICAgIC5idG4uYnRuLXJhaXNlZDpub3QoLmJ0bi1saW5rKTpob3Zlci5idG4tZGFuZ2VyLCAuYnRuLmJ0bi1yYWlzZWQ6bm90KC5idG4tbGluayk6Zm9jdXMuYnRuLWRhbmdlciwgLmJ0bi5idG4tcmFpc2VkOm5vdCguYnRuLWxpbmspLmFjdGl2ZS5idG4tZGFuZ2VyLCAuYnRuLmJ0bi1yYWlzZWQ6bm90KC5idG4tbGluayk6YWN0aXZlLmJ0bi1kYW5nZXIsXG4gICAgICAuYnRuLWdyb3VwLXJhaXNlZCAuYnRuOm5vdCguYnRuLWxpbmspOmhvdmVyLmJ0bi1kYW5nZXIsXG4gICAgICAuYnRuLWdyb3VwLXJhaXNlZCAuYnRuOm5vdCguYnRuLWxpbmspOmZvY3VzLmJ0bi1kYW5nZXIsXG4gICAgICAuYnRuLWdyb3VwLXJhaXNlZCAuYnRuOm5vdCguYnRuLWxpbmspLmFjdGl2ZS5idG4tZGFuZ2VyLFxuICAgICAgLmJ0bi1ncm91cC1yYWlzZWQgLmJ0bjpub3QoLmJ0bi1saW5rKTphY3RpdmUuYnRuLWRhbmdlcixcbiAgICAgIC5pbnB1dC1ncm91cC1idG4gLmJ0bi5idG4tcmFpc2VkOm5vdCguYnRuLWxpbmspOmhvdmVyLmJ0bi1kYW5nZXIsXG4gICAgICAuaW5wdXQtZ3JvdXAtYnRuIC5idG4uYnRuLXJhaXNlZDpub3QoLmJ0bi1saW5rKTpmb2N1cy5idG4tZGFuZ2VyLFxuICAgICAgLmlucHV0LWdyb3VwLWJ0biAuYnRuLmJ0bi1yYWlzZWQ6bm90KC5idG4tbGluaykuYWN0aXZlLmJ0bi1kYW5nZXIsXG4gICAgICAuaW5wdXQtZ3JvdXAtYnRuIC5idG4uYnRuLXJhaXNlZDpub3QoLmJ0bi1saW5rKTphY3RpdmUuYnRuLWRhbmdlcixcbiAgICAgIC5idG4tZ3JvdXAtcmFpc2VkXG4gICAgICAuaW5wdXQtZ3JvdXAtYnRuIC5idG46bm90KC5idG4tbGluayk6aG92ZXIuYnRuLWRhbmdlcixcbiAgICAgIC5idG4tZ3JvdXAtcmFpc2VkXG4gICAgICAuaW5wdXQtZ3JvdXAtYnRuIC5idG46bm90KC5idG4tbGluayk6Zm9jdXMuYnRuLWRhbmdlcixcbiAgICAgIC5idG4tZ3JvdXAtcmFpc2VkXG4gICAgICAuaW5wdXQtZ3JvdXAtYnRuIC5idG46bm90KC5idG4tbGluaykuYWN0aXZlLmJ0bi1kYW5nZXIsXG4gICAgICAuYnRuLWdyb3VwLXJhaXNlZFxuICAgICAgLmlucHV0LWdyb3VwLWJ0biAuYnRuOm5vdCguYnRuLWxpbmspOmFjdGl2ZS5idG4tZGFuZ2VyIHtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogI2Q1NDMzZTsgfVxuICAgIC5idG4uYnRuLXJhaXNlZDpub3QoLmJ0bi1saW5rKS5hY3RpdmUsIC5idG4uYnRuLXJhaXNlZDpub3QoLmJ0bi1saW5rKS5hY3RpdmU6aG92ZXIsIC5idG4uYnRuLXJhaXNlZDpub3QoLmJ0bi1saW5rKTphY3RpdmUsIC5idG4uYnRuLXJhaXNlZDpub3QoLmJ0bi1saW5rKTphY3RpdmU6aG92ZXIsXG4gICAgLmJ0bi1ncm91cC1yYWlzZWQgLmJ0bjpub3QoLmJ0bi1saW5rKS5hY3RpdmUsXG4gICAgLmJ0bi1ncm91cC1yYWlzZWQgLmJ0bjpub3QoLmJ0bi1saW5rKS5hY3RpdmU6aG92ZXIsXG4gICAgLmJ0bi1ncm91cC1yYWlzZWQgLmJ0bjpub3QoLmJ0bi1saW5rKTphY3RpdmUsXG4gICAgLmJ0bi1ncm91cC1yYWlzZWQgLmJ0bjpub3QoLmJ0bi1saW5rKTphY3RpdmU6aG92ZXIsXG4gICAgLmlucHV0LWdyb3VwLWJ0biAuYnRuLmJ0bi1yYWlzZWQ6bm90KC5idG4tbGluaykuYWN0aXZlLFxuICAgIC5pbnB1dC1ncm91cC1idG4gLmJ0bi5idG4tcmFpc2VkOm5vdCguYnRuLWxpbmspLmFjdGl2ZTpob3ZlcixcbiAgICAuaW5wdXQtZ3JvdXAtYnRuIC5idG4uYnRuLXJhaXNlZDpub3QoLmJ0bi1saW5rKTphY3RpdmUsXG4gICAgLmlucHV0LWdyb3VwLWJ0biAuYnRuLmJ0bi1yYWlzZWQ6bm90KC5idG4tbGluayk6YWN0aXZlOmhvdmVyLFxuICAgIC5idG4tZ3JvdXAtcmFpc2VkXG4gICAgLmlucHV0LWdyb3VwLWJ0biAuYnRuOm5vdCguYnRuLWxpbmspLmFjdGl2ZSxcbiAgICAuYnRuLWdyb3VwLXJhaXNlZFxuICAgIC5pbnB1dC1ncm91cC1idG4gLmJ0bjpub3QoLmJ0bi1saW5rKS5hY3RpdmU6aG92ZXIsXG4gICAgLmJ0bi1ncm91cC1yYWlzZWRcbiAgICAuaW5wdXQtZ3JvdXAtYnRuIC5idG46bm90KC5idG4tbGluayk6YWN0aXZlLFxuICAgIC5idG4tZ3JvdXAtcmFpc2VkXG4gICAgLmlucHV0LWdyb3VwLWJ0biAuYnRuOm5vdCguYnRuLWxpbmspOmFjdGl2ZTpob3ZlciB7XG4gICAgICBib3gtc2hhZG93OiAwIDRweCA1cHggMCByZ2JhKDAsIDAsIDAsIDAuMTQpLCAwIDFweCAxMHB4IDAgcmdiYSgwLCAwLCAwLCAwLjEyKSwgMCAycHggNHB4IC0xcHggcmdiYSgwLCAwLCAwLCAwLjIpOyB9XG4gICAgLmJ0bi5idG4tcmFpc2VkOm5vdCguYnRuLWxpbmspOmZvY3VzLCAuYnRuLmJ0bi1yYWlzZWQ6bm90KC5idG4tbGluayk6Zm9jdXM6aG92ZXIsIC5idG4uYnRuLXJhaXNlZDpub3QoLmJ0bi1saW5rKTpmb2N1cy5hY3RpdmUsIC5idG4uYnRuLXJhaXNlZDpub3QoLmJ0bi1saW5rKTpmb2N1cy5hY3RpdmU6aG92ZXIsIC5idG4uYnRuLXJhaXNlZDpub3QoLmJ0bi1saW5rKTpmb2N1czphY3RpdmUsIC5idG4uYnRuLXJhaXNlZDpub3QoLmJ0bi1saW5rKTpmb2N1czphY3RpdmU6aG92ZXIsXG4gICAgLmJ0bi1ncm91cC1yYWlzZWQgLmJ0bjpub3QoLmJ0bi1saW5rKTpmb2N1cyxcbiAgICAuYnRuLWdyb3VwLXJhaXNlZCAuYnRuOm5vdCguYnRuLWxpbmspOmZvY3VzOmhvdmVyLFxuICAgIC5idG4tZ3JvdXAtcmFpc2VkIC5idG46bm90KC5idG4tbGluayk6Zm9jdXMuYWN0aXZlLFxuICAgIC5idG4tZ3JvdXAtcmFpc2VkIC5idG46bm90KC5idG4tbGluayk6Zm9jdXMuYWN0aXZlOmhvdmVyLFxuICAgIC5idG4tZ3JvdXAtcmFpc2VkIC5idG46bm90KC5idG4tbGluayk6Zm9jdXM6YWN0aXZlLFxuICAgIC5idG4tZ3JvdXAtcmFpc2VkIC5idG46bm90KC5idG4tbGluayk6Zm9jdXM6YWN0aXZlOmhvdmVyLFxuICAgIC5pbnB1dC1ncm91cC1idG4gLmJ0bi5idG4tcmFpc2VkOm5vdCguYnRuLWxpbmspOmZvY3VzLFxuICAgIC5pbnB1dC1ncm91cC1idG4gLmJ0bi5idG4tcmFpc2VkOm5vdCguYnRuLWxpbmspOmZvY3VzOmhvdmVyLFxuICAgIC5pbnB1dC1ncm91cC1idG4gLmJ0bi5idG4tcmFpc2VkOm5vdCguYnRuLWxpbmspOmZvY3VzLmFjdGl2ZSxcbiAgICAuaW5wdXQtZ3JvdXAtYnRuIC5idG4uYnRuLXJhaXNlZDpub3QoLmJ0bi1saW5rKTpmb2N1cy5hY3RpdmU6aG92ZXIsXG4gICAgLmlucHV0LWdyb3VwLWJ0biAuYnRuLmJ0bi1yYWlzZWQ6bm90KC5idG4tbGluayk6Zm9jdXM6YWN0aXZlLFxuICAgIC5pbnB1dC1ncm91cC1idG4gLmJ0bi5idG4tcmFpc2VkOm5vdCguYnRuLWxpbmspOmZvY3VzOmFjdGl2ZTpob3ZlcixcbiAgICAuYnRuLWdyb3VwLXJhaXNlZFxuICAgIC5pbnB1dC1ncm91cC1idG4gLmJ0bjpub3QoLmJ0bi1saW5rKTpmb2N1cyxcbiAgICAuYnRuLWdyb3VwLXJhaXNlZFxuICAgIC5pbnB1dC1ncm91cC1idG4gLmJ0bjpub3QoLmJ0bi1saW5rKTpmb2N1czpob3ZlcixcbiAgICAuYnRuLWdyb3VwLXJhaXNlZFxuICAgIC5pbnB1dC1ncm91cC1idG4gLmJ0bjpub3QoLmJ0bi1saW5rKTpmb2N1cy5hY3RpdmUsXG4gICAgLmJ0bi1ncm91cC1yYWlzZWRcbiAgICAuaW5wdXQtZ3JvdXAtYnRuIC5idG46bm90KC5idG4tbGluayk6Zm9jdXMuYWN0aXZlOmhvdmVyLFxuICAgIC5idG4tZ3JvdXAtcmFpc2VkXG4gICAgLmlucHV0LWdyb3VwLWJ0biAuYnRuOm5vdCguYnRuLWxpbmspOmZvY3VzOmFjdGl2ZSxcbiAgICAuYnRuLWdyb3VwLXJhaXNlZFxuICAgIC5pbnB1dC1ncm91cC1idG4gLmJ0bjpub3QoLmJ0bi1saW5rKTpmb2N1czphY3RpdmU6aG92ZXIge1xuICAgICAgYm94LXNoYWRvdzogMCAwIDhweCByZ2JhKDAsIDAsIDAsIDAuMTgpLCAwIDhweCAxNnB4IHJnYmEoMCwgMCwgMCwgMC4zNik7IH1cbiAgLmJ0bi5idG4tZmFiLFxuICAuaW5wdXQtZ3JvdXAtYnRuIC5idG4uYnRuLWZhYiB7XG4gICAgYm9yZGVyLXJhZGl1czogNTAlO1xuICAgIGZvbnQtc2l6ZTogMjRweDtcbiAgICBoZWlnaHQ6IDU2cHg7XG4gICAgbWFyZ2luOiBhdXRvO1xuICAgIG1pbi13aWR0aDogNTZweDtcbiAgICB3aWR0aDogNTZweDtcbiAgICBwYWRkaW5nOiAwO1xuICAgIG92ZXJmbG93OiBoaWRkZW47XG4gICAgYm94LXNoYWRvdzogMCAxcHggMS41cHggMCByZ2JhKDAsIDAsIDAsIDAuMTIpLCAwIDFweCAxcHggMCByZ2JhKDAsIDAsIDAsIDAuMjQpO1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICBsaW5lLWhlaWdodDogbm9ybWFsOyB9XG4gICAgLmJ0bi5idG4tZmFiIC5yaXBwbGUtY29udGFpbmVyLFxuICAgIC5pbnB1dC1ncm91cC1idG4gLmJ0bi5idG4tZmFiIC5yaXBwbGUtY29udGFpbmVyIHtcbiAgICAgIGJvcmRlci1yYWRpdXM6IDUwJTsgfVxuICAgIC5idG4uYnRuLWZhYi5idG4tZmFiLW1pbmksXG4gICAgLmJ0bi1ncm91cC1zbSAuYnRuLmJ0bi1mYWIsXG4gICAgLmlucHV0LWdyb3VwLWJ0biAuYnRuLmJ0bi1mYWIuYnRuLWZhYi1taW5pLFxuICAgIC5idG4tZ3JvdXAtc21cbiAgICAuaW5wdXQtZ3JvdXAtYnRuIC5idG4uYnRuLWZhYiB7XG4gICAgICBoZWlnaHQ6IDQwcHg7XG4gICAgICBtaW4td2lkdGg6IDQwcHg7XG4gICAgICB3aWR0aDogNDBweDsgfVxuICAgICAgLmJ0bi5idG4tZmFiLmJ0bi1mYWItbWluaS5tYXRlcmlhbC1pY29ucyxcbiAgICAgIC5idG4tZ3JvdXAtc20gLmJ0bi5idG4tZmFiLm1hdGVyaWFsLWljb25zLFxuICAgICAgLmlucHV0LWdyb3VwLWJ0biAuYnRuLmJ0bi1mYWIuYnRuLWZhYi1taW5pLm1hdGVyaWFsLWljb25zLFxuICAgICAgLmJ0bi1ncm91cC1zbVxuICAgICAgLmlucHV0LWdyb3VwLWJ0biAuYnRuLmJ0bi1mYWIubWF0ZXJpYWwtaWNvbnMge1xuICAgICAgICB0b3A6IDBweDtcbiAgICAgICAgbGVmdDogMHB4OyB9XG4gICAgLmJ0bi5idG4tZmFiIGkubWF0ZXJpYWwtaWNvbnMsXG4gICAgLmlucHV0LWdyb3VwLWJ0biAuYnRuLmJ0bi1mYWIgaS5tYXRlcmlhbC1pY29ucyB7XG4gICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICB0b3A6IDUwJTtcbiAgICAgIGxlZnQ6IDUwJTtcbiAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlKC0xMnB4LCAtMTJweCk7XG4gICAgICBsaW5lLWhlaWdodDogMjRweDtcbiAgICAgIHdpZHRoOiAyNHB4OyB9XG4gIC5idG4gaS5tYXRlcmlhbC1pY29ucyxcbiAgLmlucHV0LWdyb3VwLWJ0biAuYnRuIGkubWF0ZXJpYWwtaWNvbnMge1xuICAgIHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7IH1cbiAgLmJ0bi5idG4tbGcsIC5idG4tZ3JvdXAtbGcgPiAuYnRuLFxuICAuYnRuLWdyb3VwLWxnIC5idG4sXG4gIC5pbnB1dC1ncm91cC1idG4gLmJ0bi5idG4tbGcsXG4gIC5pbnB1dC1ncm91cC1idG4gLmJ0bi1ncm91cC1sZyA+IC5idG4sXG4gIC5idG4tZ3JvdXAtbGdcbiAgLmlucHV0LWdyb3VwLWJ0biAuYnRuIHtcbiAgICBmb250LXNpemU6IDE2cHg7IH1cbiAgLmJ0bi5idG4tc20sIC5idG4tZ3JvdXAtc20gPiAuYnRuLFxuICAuYnRuLWdyb3VwLXNtIC5idG4sXG4gIC5pbnB1dC1ncm91cC1idG4gLmJ0bi5idG4tc20sXG4gIC5pbnB1dC1ncm91cC1idG4gLmJ0bi1ncm91cC1zbSA+IC5idG4sXG4gIC5idG4tZ3JvdXAtc21cbiAgLmlucHV0LWdyb3VwLWJ0biAuYnRuIHtcbiAgICBwYWRkaW5nOiA1cHggMjBweDtcbiAgICBmb250LXNpemU6IDEycHg7IH1cbiAgLmJ0bi5idG4teHMsIC5idG4tZ3JvdXAteHMgPiAuYnRuLFxuICAuYnRuLWdyb3VwLXhzIC5idG4sXG4gIC5pbnB1dC1ncm91cC1idG4gLmJ0bi5idG4teHMsXG4gIC5pbnB1dC1ncm91cC1idG4gLmJ0bi1ncm91cC14cyA+IC5idG4sXG4gIC5idG4tZ3JvdXAteHNcbiAgLmlucHV0LWdyb3VwLWJ0biAuYnRuIHtcbiAgICBwYWRkaW5nOiA0cHggMTVweDtcbiAgICBmb250LXNpemU6IDEwcHg7IH1cblxuZmllbGRzZXRbZGlzYWJsZWRdW2Rpc2FibGVkXSAuYnRuLCAuYnRuLmRpc2FibGVkLCAuYnRuOmRpc2FibGVkLCAuYnRuW2Rpc2FibGVkXVtkaXNhYmxlZF0sIGZpZWxkc2V0W2Rpc2FibGVkXVtkaXNhYmxlZF1cbi5pbnB1dC1ncm91cC1idG4gLmJ0bixcbi5pbnB1dC1ncm91cC1idG4gLmJ0bi5kaXNhYmxlZCxcbi5pbnB1dC1ncm91cC1idG4gLmJ0bjpkaXNhYmxlZCxcbi5pbnB1dC1ncm91cC1idG4gLmJ0bltkaXNhYmxlZF1bZGlzYWJsZWRdLCBmaWVsZHNldFtkaXNhYmxlZF1bZGlzYWJsZWRdXG4uYnRuLWdyb3VwLFxuLmJ0bi1ncm91cC5kaXNhYmxlZCxcbi5idG4tZ3JvdXA6ZGlzYWJsZWQsXG4uYnRuLWdyb3VwW2Rpc2FibGVkXVtkaXNhYmxlZF0sIGZpZWxkc2V0W2Rpc2FibGVkXVtkaXNhYmxlZF1cbi5idG4tZ3JvdXAtdmVydGljYWwsXG4uYnRuLWdyb3VwLXZlcnRpY2FsLmRpc2FibGVkLFxuLmJ0bi1ncm91cC12ZXJ0aWNhbDpkaXNhYmxlZCxcbi5idG4tZ3JvdXAtdmVydGljYWxbZGlzYWJsZWRdW2Rpc2FibGVkXSB7XG4gIGNvbG9yOiByZ2JhKDAsIDAsIDAsIDAuMjYpO1xuICBiYWNrZ3JvdW5kOiB0cmFuc3BhcmVudDsgfVxuICAudGhlbWUtZGFyayBmaWVsZHNldFtkaXNhYmxlZF1bZGlzYWJsZWRdIC5idG4sIC50aGVtZS1kYXJrIC5idG4uZGlzYWJsZWQsIC50aGVtZS1kYXJrIC5idG46ZGlzYWJsZWQsIC50aGVtZS1kYXJrIC5idG5bZGlzYWJsZWRdW2Rpc2FibGVkXSwgLnRoZW1lLWRhcmsgZmllbGRzZXRbZGlzYWJsZWRdW2Rpc2FibGVkXVxuICAuaW5wdXQtZ3JvdXAtYnRuIC5idG4sIC50aGVtZS1kYXJrXG4gIC5pbnB1dC1ncm91cC1idG4gLmJ0bi5kaXNhYmxlZCwgLnRoZW1lLWRhcmtcbiAgLmlucHV0LWdyb3VwLWJ0biAuYnRuOmRpc2FibGVkLCAudGhlbWUtZGFya1xuICAuaW5wdXQtZ3JvdXAtYnRuIC5idG5bZGlzYWJsZWRdW2Rpc2FibGVkXSwgLnRoZW1lLWRhcmsgZmllbGRzZXRbZGlzYWJsZWRdW2Rpc2FibGVkXVxuICAuYnRuLWdyb3VwLCAudGhlbWUtZGFya1xuICAuYnRuLWdyb3VwLmRpc2FibGVkLCAudGhlbWUtZGFya1xuICAuYnRuLWdyb3VwOmRpc2FibGVkLCAudGhlbWUtZGFya1xuICAuYnRuLWdyb3VwW2Rpc2FibGVkXVtkaXNhYmxlZF0sIC50aGVtZS1kYXJrIGZpZWxkc2V0W2Rpc2FibGVkXVtkaXNhYmxlZF1cbiAgLmJ0bi1ncm91cC12ZXJ0aWNhbCwgLnRoZW1lLWRhcmtcbiAgLmJ0bi1ncm91cC12ZXJ0aWNhbC5kaXNhYmxlZCwgLnRoZW1lLWRhcmtcbiAgLmJ0bi1ncm91cC12ZXJ0aWNhbDpkaXNhYmxlZCwgLnRoZW1lLWRhcmtcbiAgLmJ0bi1ncm91cC12ZXJ0aWNhbFtkaXNhYmxlZF1bZGlzYWJsZWRdIHtcbiAgICBjb2xvcjogcmdiYSgyNTUsIDI1NSwgMjU1LCAwLjMpOyB9XG4gIGZpZWxkc2V0W2Rpc2FibGVkXVtkaXNhYmxlZF0gLmJ0bi5idG4tcmFpc2VkLCBmaWVsZHNldFtkaXNhYmxlZF1bZGlzYWJsZWRdIC5idG4uYnRuLXJhaXNlZC5hY3RpdmUsIGZpZWxkc2V0W2Rpc2FibGVkXVtkaXNhYmxlZF0gLmJ0bi5idG4tcmFpc2VkOmFjdGl2ZSwgZmllbGRzZXRbZGlzYWJsZWRdW2Rpc2FibGVkXSAuYnRuLmJ0bi1yYWlzZWQ6Zm9jdXM6bm90KDphY3RpdmUpLCBmaWVsZHNldFtkaXNhYmxlZF1bZGlzYWJsZWRdIC5idG4uYnRuLWdyb3VwLXJhaXNlZCwgZmllbGRzZXRbZGlzYWJsZWRdW2Rpc2FibGVkXSAuYnRuLmJ0bi1ncm91cC1yYWlzZWQuYWN0aXZlLCBmaWVsZHNldFtkaXNhYmxlZF1bZGlzYWJsZWRdIC5idG4uYnRuLWdyb3VwLXJhaXNlZDphY3RpdmUsIGZpZWxkc2V0W2Rpc2FibGVkXVtkaXNhYmxlZF0gLmJ0bi5idG4tZ3JvdXAtcmFpc2VkOmZvY3VzOm5vdCg6YWN0aXZlKSwgLmJ0bi5kaXNhYmxlZC5idG4tcmFpc2VkLCAuYnRuLmRpc2FibGVkLmJ0bi1yYWlzZWQuYWN0aXZlLCAuYnRuLmRpc2FibGVkLmJ0bi1yYWlzZWQ6YWN0aXZlLCAuYnRuLmRpc2FibGVkLmJ0bi1yYWlzZWQ6Zm9jdXM6bm90KDphY3RpdmUpLCAuYnRuLmRpc2FibGVkLmJ0bi1ncm91cC1yYWlzZWQsIC5idG4uZGlzYWJsZWQuYnRuLWdyb3VwLXJhaXNlZC5hY3RpdmUsIC5idG4uZGlzYWJsZWQuYnRuLWdyb3VwLXJhaXNlZDphY3RpdmUsIC5idG4uZGlzYWJsZWQuYnRuLWdyb3VwLXJhaXNlZDpmb2N1czpub3QoOmFjdGl2ZSksIC5idG46ZGlzYWJsZWQuYnRuLXJhaXNlZCwgLmJ0bjpkaXNhYmxlZC5idG4tcmFpc2VkLmFjdGl2ZSwgLmJ0bjpkaXNhYmxlZC5idG4tcmFpc2VkOmFjdGl2ZSwgLmJ0bjpkaXNhYmxlZC5idG4tcmFpc2VkOmZvY3VzOm5vdCg6YWN0aXZlKSwgLmJ0bjpkaXNhYmxlZC5idG4tZ3JvdXAtcmFpc2VkLCAuYnRuOmRpc2FibGVkLmJ0bi1ncm91cC1yYWlzZWQuYWN0aXZlLCAuYnRuOmRpc2FibGVkLmJ0bi1ncm91cC1yYWlzZWQ6YWN0aXZlLCAuYnRuOmRpc2FibGVkLmJ0bi1ncm91cC1yYWlzZWQ6Zm9jdXM6bm90KDphY3RpdmUpLCAuYnRuW2Rpc2FibGVkXVtkaXNhYmxlZF0uYnRuLXJhaXNlZCwgLmJ0bltkaXNhYmxlZF1bZGlzYWJsZWRdLmJ0bi1yYWlzZWQuYWN0aXZlLCAuYnRuW2Rpc2FibGVkXVtkaXNhYmxlZF0uYnRuLXJhaXNlZDphY3RpdmUsIC5idG5bZGlzYWJsZWRdW2Rpc2FibGVkXS5idG4tcmFpc2VkOmZvY3VzOm5vdCg6YWN0aXZlKSwgLmJ0bltkaXNhYmxlZF1bZGlzYWJsZWRdLmJ0bi1ncm91cC1yYWlzZWQsIC5idG5bZGlzYWJsZWRdW2Rpc2FibGVkXS5idG4tZ3JvdXAtcmFpc2VkLmFjdGl2ZSwgLmJ0bltkaXNhYmxlZF1bZGlzYWJsZWRdLmJ0bi1ncm91cC1yYWlzZWQ6YWN0aXZlLCAuYnRuW2Rpc2FibGVkXVtkaXNhYmxlZF0uYnRuLWdyb3VwLXJhaXNlZDpmb2N1czpub3QoOmFjdGl2ZSksIGZpZWxkc2V0W2Rpc2FibGVkXVtkaXNhYmxlZF1cbiAgLmlucHV0LWdyb3VwLWJ0biAuYnRuLmJ0bi1yYWlzZWQsIGZpZWxkc2V0W2Rpc2FibGVkXVtkaXNhYmxlZF1cbiAgLmlucHV0LWdyb3VwLWJ0biAuYnRuLmJ0bi1yYWlzZWQuYWN0aXZlLCBmaWVsZHNldFtkaXNhYmxlZF1bZGlzYWJsZWRdXG4gIC5pbnB1dC1ncm91cC1idG4gLmJ0bi5idG4tcmFpc2VkOmFjdGl2ZSwgZmllbGRzZXRbZGlzYWJsZWRdW2Rpc2FibGVkXVxuICAuaW5wdXQtZ3JvdXAtYnRuIC5idG4uYnRuLXJhaXNlZDpmb2N1czpub3QoOmFjdGl2ZSksIGZpZWxkc2V0W2Rpc2FibGVkXVtkaXNhYmxlZF1cbiAgLmlucHV0LWdyb3VwLWJ0biAuYnRuLmJ0bi1ncm91cC1yYWlzZWQsIGZpZWxkc2V0W2Rpc2FibGVkXVtkaXNhYmxlZF1cbiAgLmlucHV0LWdyb3VwLWJ0biAuYnRuLmJ0bi1ncm91cC1yYWlzZWQuYWN0aXZlLCBmaWVsZHNldFtkaXNhYmxlZF1bZGlzYWJsZWRdXG4gIC5pbnB1dC1ncm91cC1idG4gLmJ0bi5idG4tZ3JvdXAtcmFpc2VkOmFjdGl2ZSwgZmllbGRzZXRbZGlzYWJsZWRdW2Rpc2FibGVkXVxuICAuaW5wdXQtZ3JvdXAtYnRuIC5idG4uYnRuLWdyb3VwLXJhaXNlZDpmb2N1czpub3QoOmFjdGl2ZSksXG4gIC5pbnB1dC1ncm91cC1idG4gLmJ0bi5kaXNhYmxlZC5idG4tcmFpc2VkLFxuICAuaW5wdXQtZ3JvdXAtYnRuIC5idG4uZGlzYWJsZWQuYnRuLXJhaXNlZC5hY3RpdmUsXG4gIC5pbnB1dC1ncm91cC1idG4gLmJ0bi5kaXNhYmxlZC5idG4tcmFpc2VkOmFjdGl2ZSxcbiAgLmlucHV0LWdyb3VwLWJ0biAuYnRuLmRpc2FibGVkLmJ0bi1yYWlzZWQ6Zm9jdXM6bm90KDphY3RpdmUpLFxuICAuaW5wdXQtZ3JvdXAtYnRuIC5idG4uZGlzYWJsZWQuYnRuLWdyb3VwLXJhaXNlZCxcbiAgLmlucHV0LWdyb3VwLWJ0biAuYnRuLmRpc2FibGVkLmJ0bi1ncm91cC1yYWlzZWQuYWN0aXZlLFxuICAuaW5wdXQtZ3JvdXAtYnRuIC5idG4uZGlzYWJsZWQuYnRuLWdyb3VwLXJhaXNlZDphY3RpdmUsXG4gIC5pbnB1dC1ncm91cC1idG4gLmJ0bi5kaXNhYmxlZC5idG4tZ3JvdXAtcmFpc2VkOmZvY3VzOm5vdCg6YWN0aXZlKSxcbiAgLmlucHV0LWdyb3VwLWJ0biAuYnRuOmRpc2FibGVkLmJ0bi1yYWlzZWQsXG4gIC5pbnB1dC1ncm91cC1idG4gLmJ0bjpkaXNhYmxlZC5idG4tcmFpc2VkLmFjdGl2ZSxcbiAgLmlucHV0LWdyb3VwLWJ0biAuYnRuOmRpc2FibGVkLmJ0bi1yYWlzZWQ6YWN0aXZlLFxuICAuaW5wdXQtZ3JvdXAtYnRuIC5idG46ZGlzYWJsZWQuYnRuLXJhaXNlZDpmb2N1czpub3QoOmFjdGl2ZSksXG4gIC5pbnB1dC1ncm91cC1idG4gLmJ0bjpkaXNhYmxlZC5idG4tZ3JvdXAtcmFpc2VkLFxuICAuaW5wdXQtZ3JvdXAtYnRuIC5idG46ZGlzYWJsZWQuYnRuLWdyb3VwLXJhaXNlZC5hY3RpdmUsXG4gIC5pbnB1dC1ncm91cC1idG4gLmJ0bjpkaXNhYmxlZC5idG4tZ3JvdXAtcmFpc2VkOmFjdGl2ZSxcbiAgLmlucHV0LWdyb3VwLWJ0biAuYnRuOmRpc2FibGVkLmJ0bi1ncm91cC1yYWlzZWQ6Zm9jdXM6bm90KDphY3RpdmUpLFxuICAuaW5wdXQtZ3JvdXAtYnRuIC5idG5bZGlzYWJsZWRdW2Rpc2FibGVkXS5idG4tcmFpc2VkLFxuICAuaW5wdXQtZ3JvdXAtYnRuIC5idG5bZGlzYWJsZWRdW2Rpc2FibGVkXS5idG4tcmFpc2VkLmFjdGl2ZSxcbiAgLmlucHV0LWdyb3VwLWJ0biAuYnRuW2Rpc2FibGVkXVtkaXNhYmxlZF0uYnRuLXJhaXNlZDphY3RpdmUsXG4gIC5pbnB1dC1ncm91cC1idG4gLmJ0bltkaXNhYmxlZF1bZGlzYWJsZWRdLmJ0bi1yYWlzZWQ6Zm9jdXM6bm90KDphY3RpdmUpLFxuICAuaW5wdXQtZ3JvdXAtYnRuIC5idG5bZGlzYWJsZWRdW2Rpc2FibGVkXS5idG4tZ3JvdXAtcmFpc2VkLFxuICAuaW5wdXQtZ3JvdXAtYnRuIC5idG5bZGlzYWJsZWRdW2Rpc2FibGVkXS5idG4tZ3JvdXAtcmFpc2VkLmFjdGl2ZSxcbiAgLmlucHV0LWdyb3VwLWJ0biAuYnRuW2Rpc2FibGVkXVtkaXNhYmxlZF0uYnRuLWdyb3VwLXJhaXNlZDphY3RpdmUsXG4gIC5pbnB1dC1ncm91cC1idG4gLmJ0bltkaXNhYmxlZF1bZGlzYWJsZWRdLmJ0bi1ncm91cC1yYWlzZWQ6Zm9jdXM6bm90KDphY3RpdmUpLCBmaWVsZHNldFtkaXNhYmxlZF1bZGlzYWJsZWRdXG4gIC5idG4tZ3JvdXAuYnRuLXJhaXNlZCwgZmllbGRzZXRbZGlzYWJsZWRdW2Rpc2FibGVkXVxuICAuYnRuLWdyb3VwLmJ0bi1yYWlzZWQuYWN0aXZlLCBmaWVsZHNldFtkaXNhYmxlZF1bZGlzYWJsZWRdXG4gIC5idG4tZ3JvdXAuYnRuLXJhaXNlZDphY3RpdmUsIGZpZWxkc2V0W2Rpc2FibGVkXVtkaXNhYmxlZF1cbiAgLmJ0bi1ncm91cC5idG4tcmFpc2VkOmZvY3VzOm5vdCg6YWN0aXZlKSwgZmllbGRzZXRbZGlzYWJsZWRdW2Rpc2FibGVkXVxuICAuYnRuLWdyb3VwLmJ0bi1ncm91cC1yYWlzZWQsIGZpZWxkc2V0W2Rpc2FibGVkXVtkaXNhYmxlZF1cbiAgLmJ0bi1ncm91cC5idG4tZ3JvdXAtcmFpc2VkLmFjdGl2ZSwgZmllbGRzZXRbZGlzYWJsZWRdW2Rpc2FibGVkXVxuICAuYnRuLWdyb3VwLmJ0bi1ncm91cC1yYWlzZWQ6YWN0aXZlLCBmaWVsZHNldFtkaXNhYmxlZF1bZGlzYWJsZWRdXG4gIC5idG4tZ3JvdXAuYnRuLWdyb3VwLXJhaXNlZDpmb2N1czpub3QoOmFjdGl2ZSksXG4gIC5idG4tZ3JvdXAuZGlzYWJsZWQuYnRuLXJhaXNlZCxcbiAgLmJ0bi1ncm91cC5kaXNhYmxlZC5idG4tcmFpc2VkLmFjdGl2ZSxcbiAgLmJ0bi1ncm91cC5kaXNhYmxlZC5idG4tcmFpc2VkOmFjdGl2ZSxcbiAgLmJ0bi1ncm91cC5kaXNhYmxlZC5idG4tcmFpc2VkOmZvY3VzOm5vdCg6YWN0aXZlKSxcbiAgLmJ0bi1ncm91cC5kaXNhYmxlZC5idG4tZ3JvdXAtcmFpc2VkLFxuICAuYnRuLWdyb3VwLmRpc2FibGVkLmJ0bi1ncm91cC1yYWlzZWQuYWN0aXZlLFxuICAuYnRuLWdyb3VwLmRpc2FibGVkLmJ0bi1ncm91cC1yYWlzZWQ6YWN0aXZlLFxuICAuYnRuLWdyb3VwLmRpc2FibGVkLmJ0bi1ncm91cC1yYWlzZWQ6Zm9jdXM6bm90KDphY3RpdmUpLFxuICAuYnRuLWdyb3VwOmRpc2FibGVkLmJ0bi1yYWlzZWQsXG4gIC5idG4tZ3JvdXA6ZGlzYWJsZWQuYnRuLXJhaXNlZC5hY3RpdmUsXG4gIC5idG4tZ3JvdXA6ZGlzYWJsZWQuYnRuLXJhaXNlZDphY3RpdmUsXG4gIC5idG4tZ3JvdXA6ZGlzYWJsZWQuYnRuLXJhaXNlZDpmb2N1czpub3QoOmFjdGl2ZSksXG4gIC5idG4tZ3JvdXA6ZGlzYWJsZWQuYnRuLWdyb3VwLXJhaXNlZCxcbiAgLmJ0bi1ncm91cDpkaXNhYmxlZC5idG4tZ3JvdXAtcmFpc2VkLmFjdGl2ZSxcbiAgLmJ0bi1ncm91cDpkaXNhYmxlZC5idG4tZ3JvdXAtcmFpc2VkOmFjdGl2ZSxcbiAgLmJ0bi1ncm91cDpkaXNhYmxlZC5idG4tZ3JvdXAtcmFpc2VkOmZvY3VzOm5vdCg6YWN0aXZlKSxcbiAgLmJ0bi1ncm91cFtkaXNhYmxlZF1bZGlzYWJsZWRdLmJ0bi1yYWlzZWQsXG4gIC5idG4tZ3JvdXBbZGlzYWJsZWRdW2Rpc2FibGVkXS5idG4tcmFpc2VkLmFjdGl2ZSxcbiAgLmJ0bi1ncm91cFtkaXNhYmxlZF1bZGlzYWJsZWRdLmJ0bi1yYWlzZWQ6YWN0aXZlLFxuICAuYnRuLWdyb3VwW2Rpc2FibGVkXVtkaXNhYmxlZF0uYnRuLXJhaXNlZDpmb2N1czpub3QoOmFjdGl2ZSksXG4gIC5idG4tZ3JvdXBbZGlzYWJsZWRdW2Rpc2FibGVkXS5idG4tZ3JvdXAtcmFpc2VkLFxuICAuYnRuLWdyb3VwW2Rpc2FibGVkXVtkaXNhYmxlZF0uYnRuLWdyb3VwLXJhaXNlZC5hY3RpdmUsXG4gIC5idG4tZ3JvdXBbZGlzYWJsZWRdW2Rpc2FibGVkXS5idG4tZ3JvdXAtcmFpc2VkOmFjdGl2ZSxcbiAgLmJ0bi1ncm91cFtkaXNhYmxlZF1bZGlzYWJsZWRdLmJ0bi1ncm91cC1yYWlzZWQ6Zm9jdXM6bm90KDphY3RpdmUpLCBmaWVsZHNldFtkaXNhYmxlZF1bZGlzYWJsZWRdXG4gIC5idG4tZ3JvdXAtdmVydGljYWwuYnRuLXJhaXNlZCwgZmllbGRzZXRbZGlzYWJsZWRdW2Rpc2FibGVkXVxuICAuYnRuLWdyb3VwLXZlcnRpY2FsLmJ0bi1yYWlzZWQuYWN0aXZlLCBmaWVsZHNldFtkaXNhYmxlZF1bZGlzYWJsZWRdXG4gIC5idG4tZ3JvdXAtdmVydGljYWwuYnRuLXJhaXNlZDphY3RpdmUsIGZpZWxkc2V0W2Rpc2FibGVkXVtkaXNhYmxlZF1cbiAgLmJ0bi1ncm91cC12ZXJ0aWNhbC5idG4tcmFpc2VkOmZvY3VzOm5vdCg6YWN0aXZlKSwgZmllbGRzZXRbZGlzYWJsZWRdW2Rpc2FibGVkXVxuICAuYnRuLWdyb3VwLXZlcnRpY2FsLmJ0bi1ncm91cC1yYWlzZWQsIGZpZWxkc2V0W2Rpc2FibGVkXVtkaXNhYmxlZF1cbiAgLmJ0bi1ncm91cC12ZXJ0aWNhbC5idG4tZ3JvdXAtcmFpc2VkLmFjdGl2ZSwgZmllbGRzZXRbZGlzYWJsZWRdW2Rpc2FibGVkXVxuICAuYnRuLWdyb3VwLXZlcnRpY2FsLmJ0bi1ncm91cC1yYWlzZWQ6YWN0aXZlLCBmaWVsZHNldFtkaXNhYmxlZF1bZGlzYWJsZWRdXG4gIC5idG4tZ3JvdXAtdmVydGljYWwuYnRuLWdyb3VwLXJhaXNlZDpmb2N1czpub3QoOmFjdGl2ZSksXG4gIC5idG4tZ3JvdXAtdmVydGljYWwuZGlzYWJsZWQuYnRuLXJhaXNlZCxcbiAgLmJ0bi1ncm91cC12ZXJ0aWNhbC5kaXNhYmxlZC5idG4tcmFpc2VkLmFjdGl2ZSxcbiAgLmJ0bi1ncm91cC12ZXJ0aWNhbC5kaXNhYmxlZC5idG4tcmFpc2VkOmFjdGl2ZSxcbiAgLmJ0bi1ncm91cC12ZXJ0aWNhbC5kaXNhYmxlZC5idG4tcmFpc2VkOmZvY3VzOm5vdCg6YWN0aXZlKSxcbiAgLmJ0bi1ncm91cC12ZXJ0aWNhbC5kaXNhYmxlZC5idG4tZ3JvdXAtcmFpc2VkLFxuICAuYnRuLWdyb3VwLXZlcnRpY2FsLmRpc2FibGVkLmJ0bi1ncm91cC1yYWlzZWQuYWN0aXZlLFxuICAuYnRuLWdyb3VwLXZlcnRpY2FsLmRpc2FibGVkLmJ0bi1ncm91cC1yYWlzZWQ6YWN0aXZlLFxuICAuYnRuLWdyb3VwLXZlcnRpY2FsLmRpc2FibGVkLmJ0bi1ncm91cC1yYWlzZWQ6Zm9jdXM6bm90KDphY3RpdmUpLFxuICAuYnRuLWdyb3VwLXZlcnRpY2FsOmRpc2FibGVkLmJ0bi1yYWlzZWQsXG4gIC5idG4tZ3JvdXAtdmVydGljYWw6ZGlzYWJsZWQuYnRuLXJhaXNlZC5hY3RpdmUsXG4gIC5idG4tZ3JvdXAtdmVydGljYWw6ZGlzYWJsZWQuYnRuLXJhaXNlZDphY3RpdmUsXG4gIC5idG4tZ3JvdXAtdmVydGljYWw6ZGlzYWJsZWQuYnRuLXJhaXNlZDpmb2N1czpub3QoOmFjdGl2ZSksXG4gIC5idG4tZ3JvdXAtdmVydGljYWw6ZGlzYWJsZWQuYnRuLWdyb3VwLXJhaXNlZCxcbiAgLmJ0bi1ncm91cC12ZXJ0aWNhbDpkaXNhYmxlZC5idG4tZ3JvdXAtcmFpc2VkLmFjdGl2ZSxcbiAgLmJ0bi1ncm91cC12ZXJ0aWNhbDpkaXNhYmxlZC5idG4tZ3JvdXAtcmFpc2VkOmFjdGl2ZSxcbiAgLmJ0bi1ncm91cC12ZXJ0aWNhbDpkaXNhYmxlZC5idG4tZ3JvdXAtcmFpc2VkOmZvY3VzOm5vdCg6YWN0aXZlKSxcbiAgLmJ0bi1ncm91cC12ZXJ0aWNhbFtkaXNhYmxlZF1bZGlzYWJsZWRdLmJ0bi1yYWlzZWQsXG4gIC5idG4tZ3JvdXAtdmVydGljYWxbZGlzYWJsZWRdW2Rpc2FibGVkXS5idG4tcmFpc2VkLmFjdGl2ZSxcbiAgLmJ0bi1ncm91cC12ZXJ0aWNhbFtkaXNhYmxlZF1bZGlzYWJsZWRdLmJ0bi1yYWlzZWQ6YWN0aXZlLFxuICAuYnRuLWdyb3VwLXZlcnRpY2FsW2Rpc2FibGVkXVtkaXNhYmxlZF0uYnRuLXJhaXNlZDpmb2N1czpub3QoOmFjdGl2ZSksXG4gIC5idG4tZ3JvdXAtdmVydGljYWxbZGlzYWJsZWRdW2Rpc2FibGVkXS5idG4tZ3JvdXAtcmFpc2VkLFxuICAuYnRuLWdyb3VwLXZlcnRpY2FsW2Rpc2FibGVkXVtkaXNhYmxlZF0uYnRuLWdyb3VwLXJhaXNlZC5hY3RpdmUsXG4gIC5idG4tZ3JvdXAtdmVydGljYWxbZGlzYWJsZWRdW2Rpc2FibGVkXS5idG4tZ3JvdXAtcmFpc2VkOmFjdGl2ZSxcbiAgLmJ0bi1ncm91cC12ZXJ0aWNhbFtkaXNhYmxlZF1bZGlzYWJsZWRdLmJ0bi1ncm91cC1yYWlzZWQ6Zm9jdXM6bm90KDphY3RpdmUpIHtcbiAgICBib3gtc2hhZG93OiBub25lOyB9XG5cbi5idG4tZ3JvdXAsXG4uYnRuLWdyb3VwLXZlcnRpY2FsIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBtYXJnaW46IDEwcHggMXB4OyB9XG4gIC5idG4tZ3JvdXAub3BlbiA+IC5kcm9wZG93bi10b2dnbGUuYnRuLCAuYnRuLWdyb3VwLm9wZW4gPiAuZHJvcGRvd24tdG9nZ2xlLmJ0bi5idG4tZGVmYXVsdCxcbiAgLmJ0bi1ncm91cC12ZXJ0aWNhbC5vcGVuID4gLmRyb3Bkb3duLXRvZ2dsZS5idG4sXG4gIC5idG4tZ3JvdXAtdmVydGljYWwub3BlbiA+IC5kcm9wZG93bi10b2dnbGUuYnRuLmJ0bi1kZWZhdWx0IHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjZmZmOyB9XG4gIC5idG4tZ3JvdXAub3BlbiA+IC5kcm9wZG93bi10b2dnbGUuYnRuLmJ0bi1pbnZlcnNlLFxuICAuYnRuLWdyb3VwLXZlcnRpY2FsLm9wZW4gPiAuZHJvcGRvd24tdG9nZ2xlLmJ0bi5idG4taW52ZXJzZSB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogIzNmNTFiNTsgfVxuICAuYnRuLWdyb3VwLm9wZW4gPiAuZHJvcGRvd24tdG9nZ2xlLmJ0bi5idG4tcHJpbWFyeSxcbiAgLmJ0bi1ncm91cC12ZXJ0aWNhbC5vcGVuID4gLmRyb3Bkb3duLXRvZ2dsZS5idG4uYnRuLXByaW1hcnkge1xuICAgIGJhY2tncm91bmQtY29sb3I6ICMzMzdhYjc7IH1cbiAgLmJ0bi1ncm91cC5vcGVuID4gLmRyb3Bkb3duLXRvZ2dsZS5idG4uYnRuLXN1Y2Nlc3MsXG4gIC5idG4tZ3JvdXAtdmVydGljYWwub3BlbiA+IC5kcm9wZG93bi10b2dnbGUuYnRuLmJ0bi1zdWNjZXNzIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjNWNiODVjOyB9XG4gIC5idG4tZ3JvdXAub3BlbiA+IC5kcm9wZG93bi10b2dnbGUuYnRuLmJ0bi1pbmZvLFxuICAuYnRuLWdyb3VwLXZlcnRpY2FsLm9wZW4gPiAuZHJvcGRvd24tdG9nZ2xlLmJ0bi5idG4taW5mbyB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogIzViYzBkZTsgfVxuICAuYnRuLWdyb3VwLm9wZW4gPiAuZHJvcGRvd24tdG9nZ2xlLmJ0bi5idG4td2FybmluZyxcbiAgLmJ0bi1ncm91cC12ZXJ0aWNhbC5vcGVuID4gLmRyb3Bkb3duLXRvZ2dsZS5idG4uYnRuLXdhcm5pbmcge1xuICAgIGJhY2tncm91bmQtY29sb3I6ICNmMGFkNGU7IH1cbiAgLmJ0bi1ncm91cC5vcGVuID4gLmRyb3Bkb3duLXRvZ2dsZS5idG4uYnRuLWRhbmdlcixcbiAgLmJ0bi1ncm91cC12ZXJ0aWNhbC5vcGVuID4gLmRyb3Bkb3duLXRvZ2dsZS5idG4uYnRuLWRhbmdlciB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogI2Q5NTM0ZjsgfVxuICAuYnRuLWdyb3VwIC5kcm9wZG93bi1tZW51LFxuICAuYnRuLWdyb3VwLXZlcnRpY2FsIC5kcm9wZG93bi1tZW51IHtcbiAgICBib3JkZXItcmFkaXVzOiAwIDAgNHB4IDRweDsgfVxuICAuYnRuLWdyb3VwLmJ0bi1ncm91cC1yYWlzZWQsXG4gIC5idG4tZ3JvdXAtdmVydGljYWwuYnRuLWdyb3VwLXJhaXNlZCB7XG4gICAgYm94LXNoYWRvdzogMCAycHggMnB4IDAgcmdiYSgwLCAwLCAwLCAwLjE0KSwgMCAzcHggMXB4IC0ycHggcmdiYSgwLCAwLCAwLCAwLjIpLCAwIDFweCA1cHggMCByZ2JhKDAsIDAsIDAsIDAuMTIpOyB9XG4gIC5idG4tZ3JvdXAgLmJ0biArIC5idG4sXG4gIC5idG4tZ3JvdXAgLmJ0bixcbiAgLmJ0bi1ncm91cCAuYnRuOmFjdGl2ZSxcbiAgLmJ0bi1ncm91cCAuYnRuLWdyb3VwLFxuICAuYnRuLWdyb3VwLXZlcnRpY2FsIC5idG4gKyAuYnRuLFxuICAuYnRuLWdyb3VwLXZlcnRpY2FsIC5idG4sXG4gIC5idG4tZ3JvdXAtdmVydGljYWwgLmJ0bjphY3RpdmUsXG4gIC5idG4tZ3JvdXAtdmVydGljYWwgLmJ0bi1ncm91cCB7XG4gICAgbWFyZ2luOiAwOyB9XG5cbi5jaGVja2JveCBsYWJlbCB7XG4gIGN1cnNvcjogcG9pbnRlcjtcbiAgcGFkZGluZy1sZWZ0OiAwO1xuICBjb2xvcjogcmdiYSgwLDAsMCwgMC4yNik7IH1cbiAgLmZvcm0tZ3JvdXAuaXMtZm9jdXNlZCAuY2hlY2tib3ggbGFiZWwge1xuICAgIGNvbG9yOiByZ2JhKDAsMCwwLCAwLjI2KTsgfVxuICAgIC5mb3JtLWdyb3VwLmlzLWZvY3VzZWQgLmNoZWNrYm94IGxhYmVsOmhvdmVyLCAuZm9ybS1ncm91cC5pcy1mb2N1c2VkIC5jaGVja2JveCBsYWJlbDpmb2N1cyB7XG4gICAgICBjb2xvcjogcmdiYSgwLDAsMCwgLjU0KTsgfVxuICAgIGZpZWxkc2V0W2Rpc2FibGVkXSAuZm9ybS1ncm91cC5pcy1mb2N1c2VkIC5jaGVja2JveCBsYWJlbCB7XG4gICAgICBjb2xvcjogcmdiYSgwLDAsMCwgMC4yNik7IH1cblxuLmNoZWNrYm94IGlucHV0W3R5cGU9Y2hlY2tib3hdIHtcbiAgb3BhY2l0eTogMDtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICBtYXJnaW46IDA7XG4gIHotaW5kZXg6IC0xO1xuICB3aWR0aDogMDtcbiAgaGVpZ2h0OiAwO1xuICBvdmVyZmxvdzogaGlkZGVuO1xuICBsZWZ0OiAwO1xuICBwb2ludGVyLWV2ZW50czogbm9uZTsgfVxuXG4uY2hlY2tib3ggLmNoZWNrYm94LW1hdGVyaWFsIHtcbiAgdmVydGljYWwtYWxpZ246IG1pZGRsZTtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICB0b3A6IDNweDsgfVxuICAuY2hlY2tib3ggLmNoZWNrYm94LW1hdGVyaWFsOmJlZm9yZSB7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIGxlZnQ6IDA7XG4gICAgY29udGVudDogXCJcIjtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiByZ2JhKDAsIDAsIDAsIDAuODQpO1xuICAgIGhlaWdodDogMjBweDtcbiAgICB3aWR0aDogMjBweDtcbiAgICBib3JkZXItcmFkaXVzOiAxMDAlO1xuICAgIHotaW5kZXg6IDE7XG4gICAgb3BhY2l0eTogMDtcbiAgICBtYXJnaW46IDA7XG4gICAgdHJhbnNmb3JtOiBzY2FsZTNkKDIuMywgMi4zLCAxKTsgfVxuICAuY2hlY2tib3ggLmNoZWNrYm94LW1hdGVyaWFsIC5jaGVjayB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICB3aWR0aDogMjBweDtcbiAgICBoZWlnaHQ6IDIwcHg7XG4gICAgYm9yZGVyOiAycHggc29saWQgcmdiYSgwLDAsMCwgLjU0KTtcbiAgICBib3JkZXItcmFkaXVzOiA0cHg7XG4gICAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgICB6LWluZGV4OiAxOyB9XG4gIC5jaGVja2JveCAuY2hlY2tib3gtbWF0ZXJpYWwgLmNoZWNrOmJlZm9yZSB7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIGNvbnRlbnQ6IFwiXCI7XG4gICAgdHJhbnNmb3JtOiByb3RhdGUoNDVkZWcpO1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIG1hcmdpbi10b3A6IC00cHg7XG4gICAgbWFyZ2luLWxlZnQ6IDZweDtcbiAgICB3aWR0aDogMDtcbiAgICBoZWlnaHQ6IDA7XG4gICAgYm94LXNoYWRvdzogMCAwIDAgMCwgMCAwIDAgMCwgMCAwIDAgMCwgMCAwIDAgMCwgMCAwIDAgMCwgMCAwIDAgMCwgMCAwIDAgMCBpbnNldDtcbiAgICBhbmltYXRpb246IGNoZWNrYm94LW9mZjsgfVxuXG4uY2hlY2tib3ggaW5wdXRbdHlwZT1jaGVja2JveF06Zm9jdXMgKyAuY2hlY2tib3gtbWF0ZXJpYWwgLmNoZWNrOmFmdGVyIHtcbiAgb3BhY2l0eTogMC4yOyB9XG5cbi5jaGVja2JveCBpbnB1dFt0eXBlPWNoZWNrYm94XTpjaGVja2VkICsgLmNoZWNrYm94LW1hdGVyaWFsIC5jaGVjayB7XG4gIGNvbG9yOiAjMzM3YWI3O1xuICBib3JkZXItY29sb3I6ICMzMzdhYjc7IH1cblxuLmNoZWNrYm94IGlucHV0W3R5cGU9Y2hlY2tib3hdOmNoZWNrZWQgKyAuY2hlY2tib3gtbWF0ZXJpYWwgLmNoZWNrOmJlZm9yZSB7XG4gIGNvbG9yOiAjMzM3YWI3O1xuICBib3gtc2hhZG93OiAwIDAgMCAxMHB4LCAxMHB4IC0xMHB4IDAgMTBweCwgMzJweCAwIDAgMjBweCwgMHB4IDMycHggMCAyMHB4LCAtNXB4IDVweCAwIDEwcHgsIDIwcHggLTEycHggMCAxMXB4O1xuICBhbmltYXRpb246IGNoZWNrYm94LW9uIDAuM3MgZm9yd2FyZHM7IH1cblxuLmNoZWNrYm94IGlucHV0W3R5cGU9Y2hlY2tib3hdOmNoZWNrZWQgKyAuY2hlY2tib3gtbWF0ZXJpYWw6YmVmb3JlIHtcbiAgYW5pbWF0aW9uOiByaXBwbGVPbjsgfVxuXG4uY2hlY2tib3ggaW5wdXRbdHlwZT1jaGVja2JveF06Y2hlY2tlZCArIC5jaGVja2JveC1tYXRlcmlhbCAuY2hlY2s6YWZ0ZXIge1xuICBhbmltYXRpb246IHJpcHBsZU9uIDUwMG1zIGZvcndhcmRzOyB9XG5cbi5jaGVja2JveCBpbnB1dFt0eXBlPWNoZWNrYm94XTpub3QoOmNoZWNrZWQpICsgLmNoZWNrYm94LW1hdGVyaWFsOmJlZm9yZSB7XG4gIGFuaW1hdGlvbjogcmlwcGxlT2ZmOyB9XG5cbi5jaGVja2JveCBpbnB1dFt0eXBlPWNoZWNrYm94XTpub3QoOmNoZWNrZWQpICsgLmNoZWNrYm94LW1hdGVyaWFsIC5jaGVjazphZnRlciB7XG4gIGFuaW1hdGlvbjogcmlwcGxlT2ZmIDUwMG1zIGZvcndhcmRzOyB9XG5cbmZpZWxkc2V0W2Rpc2FibGVkXSAuY2hlY2tib3gsXG5maWVsZHNldFtkaXNhYmxlZF0gLmNoZWNrYm94IGlucHV0W3R5cGU9Y2hlY2tib3hdLFxuLmNoZWNrYm94IGlucHV0W3R5cGU9Y2hlY2tib3hdW2Rpc2FibGVkXTpub3QoOmNoZWNrZWQpIH4gLmNoZWNrYm94LW1hdGVyaWFsIC5jaGVjazpiZWZvcmUsXG4uY2hlY2tib3ggaW5wdXRbdHlwZT1jaGVja2JveF1bZGlzYWJsZWRdOm5vdCg6Y2hlY2tlZCkgfiAuY2hlY2tib3gtbWF0ZXJpYWwgLmNoZWNrLFxuLmNoZWNrYm94IGlucHV0W3R5cGU9Y2hlY2tib3hdW2Rpc2FibGVkXSArIC5jaXJjbGUge1xuICBvcGFjaXR5OiAwLjU7IH1cblxuLmNoZWNrYm94IGlucHV0W3R5cGU9Y2hlY2tib3hdW2Rpc2FibGVkXSArIC5jaGVja2JveC1tYXRlcmlhbCAuY2hlY2s6YWZ0ZXIge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiByZ2JhKDAsMCwwLCAwLjg3KTtcbiAgdHJhbnNmb3JtOiByb3RhdGUoLTQ1ZGVnKTsgfVxuXG4uaXMtZm9jdXNlZCAuY2hlY2tib3ggLmNoZWNrYm94LW1hdGVyaWFsIC5jaGVjazpiZWZvcmUge1xuICBhbmltYXRpb246IGNoZWNrYm94LW9mZiAwLjNzIGZvcndhcmRzOyB9XG5cbi5pcy1mb2N1c2VkIC5jaGVja2JveCBpbnB1dFt0eXBlPWNoZWNrYm94XTpjaGVja2VkICsgLmNoZWNrYm94LW1hdGVyaWFsOmJlZm9yZSB7XG4gIGFuaW1hdGlvbjogcmlwcGxlT24gNTAwbXM7IH1cblxuLmlzLWZvY3VzZWQgLmNoZWNrYm94IGlucHV0W3R5cGU9Y2hlY2tib3hdOm5vdCg6Y2hlY2tlZCkgKyAuY2hlY2tib3gtbWF0ZXJpYWw6YmVmb3JlIHtcbiAgYW5pbWF0aW9uOiByaXBwbGVPZmYgNTAwbXM7IH1cblxuQGtleWZyYW1lcyBjaGVja2JveC1vbiB7XG4gIDAlIHtcbiAgICBib3gtc2hhZG93OiAwIDAgMCAxMHB4LCAxMHB4IC0xMHB4IDAgMTBweCwgMzJweCAwIDAgMjBweCwgMHB4IDMycHggMCAyMHB4LCAtNXB4IDVweCAwIDEwcHgsIDE1cHggMnB4IDAgMTFweDsgfVxuICA1MCUge1xuICAgIGJveC1zaGFkb3c6IDAgMCAwIDEwcHgsIDEwcHggLTEwcHggMCAxMHB4LCAzMnB4IDAgMCAyMHB4LCAwcHggMzJweCAwIDIwcHgsIC01cHggNXB4IDAgMTBweCwgMjBweCAycHggMCAxMXB4OyB9XG4gIDEwMCUge1xuICAgIGJveC1zaGFkb3c6IDAgMCAwIDEwcHgsIDEwcHggLTEwcHggMCAxMHB4LCAzMnB4IDAgMCAyMHB4LCAwcHggMzJweCAwIDIwcHgsIC01cHggNXB4IDAgMTBweCwgMjBweCAtMTJweCAwIDExcHg7IH0gfVxuXG5Aa2V5ZnJhbWVzIGNoZWNrYm94LW9mZiB7XG4gIDAlIHtcbiAgICBib3gtc2hhZG93OiAwIDAgMCAxMHB4LCAxMHB4IC0xMHB4IDAgMTBweCwgMzJweCAwIDAgMjBweCwgMHB4IDMycHggMCAyMHB4LCAtNXB4IDVweCAwIDEwcHgsIDIwcHggLTEycHggMCAxMXB4LCAwIDAgMCAwIGluc2V0OyB9XG4gIDI1JSB7XG4gICAgYm94LXNoYWRvdzogMCAwIDAgMTBweCwgMTBweCAtMTBweCAwIDEwcHgsIDMycHggMCAwIDIwcHgsIDBweCAzMnB4IDAgMjBweCwgLTVweCA1cHggMCAxMHB4LCAyMHB4IC0xMnB4IDAgMTFweCwgMCAwIDAgMCBpbnNldDsgfVxuICA1MCUge1xuICAgIHRyYW5zZm9ybTogcm90YXRlKDQ1ZGVnKTtcbiAgICBtYXJnaW4tdG9wOiAtNHB4O1xuICAgIG1hcmdpbi1sZWZ0OiA2cHg7XG4gICAgd2lkdGg6IDA7XG4gICAgaGVpZ2h0OiAwO1xuICAgIGJveC1zaGFkb3c6IDAgMCAwIDEwcHgsIDEwcHggLTEwcHggMCAxMHB4LCAzMnB4IDAgMCAyMHB4LCAwcHggMzJweCAwIDIwcHgsIC01cHggNXB4IDAgMTBweCwgMTVweCAycHggMCAxMXB4LCAwIDAgMCAwIGluc2V0OyB9XG4gIDUxJSB7XG4gICAgdHJhbnNmb3JtOiByb3RhdGUoMGRlZyk7XG4gICAgbWFyZ2luLXRvcDogLTJweDtcbiAgICBtYXJnaW4tbGVmdDogLTJweDtcbiAgICB3aWR0aDogMjBweDtcbiAgICBoZWlnaHQ6IDIwcHg7XG4gICAgYm94LXNoYWRvdzogMCAwIDAgMCwgMCAwIDAgMCwgMCAwIDAgMCwgMCAwIDAgMCwgMCAwIDAgMCwgMCAwIDAgMCwgMHB4IDAgMCAxMHB4IGluc2V0OyB9XG4gIDEwMCUge1xuICAgIHRyYW5zZm9ybTogcm90YXRlKDBkZWcpO1xuICAgIG1hcmdpbi10b3A6IC0ycHg7XG4gICAgbWFyZ2luLWxlZnQ6IC0ycHg7XG4gICAgd2lkdGg6IDIwcHg7XG4gICAgaGVpZ2h0OiAyMHB4O1xuICAgIGJveC1zaGFkb3c6IDAgMCAwIDAsIDAgMCAwIDAsIDAgMCAwIDAsIDAgMCAwIDAsIDAgMCAwIDAsIDAgMCAwIDAsIDBweCAwIDAgMCBpbnNldDsgfSB9XG5cbkBrZXlmcmFtZXMgcmlwcGxlT24ge1xuICAwJSB7XG4gICAgb3BhY2l0eTogMDsgfVxuICA1MCUge1xuICAgIG9wYWNpdHk6IDAuMjsgfVxuICAxMDAlIHtcbiAgICBvcGFjaXR5OiAwOyB9IH1cblxuQGtleWZyYW1lcyByaXBwbGVPZmYge1xuICAwJSB7XG4gICAgb3BhY2l0eTogMDsgfVxuICA1MCUge1xuICAgIG9wYWNpdHk6IDAuMjsgfVxuICAxMDAlIHtcbiAgICBvcGFjaXR5OiAwOyB9IH1cblxuLnRvZ2dsZWJ1dHRvbiB7XG4gIHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7IH1cbiAgLnRvZ2dsZWJ1dHRvbiwgLnRvZ2dsZWJ1dHRvbiBsYWJlbCwgLnRvZ2dsZWJ1dHRvbiBpbnB1dCwgLnRvZ2dsZWJ1dHRvbiAudG9nZ2xlIHtcbiAgICB1c2VyLXNlbGVjdDogbm9uZTsgfVxuICAudG9nZ2xlYnV0dG9uIGxhYmVsIHtcbiAgICBjdXJzb3I6IHBvaW50ZXI7XG4gICAgY29sb3I6IHJnYmEoMCwwLDAsIDAuMjYpOyB9XG4gICAgLmZvcm0tZ3JvdXAuaXMtZm9jdXNlZCAudG9nZ2xlYnV0dG9uIGxhYmVsIHtcbiAgICAgIGNvbG9yOiByZ2JhKDAsMCwwLCAwLjI2KTsgfVxuICAgICAgLmZvcm0tZ3JvdXAuaXMtZm9jdXNlZCAudG9nZ2xlYnV0dG9uIGxhYmVsOmhvdmVyLCAuZm9ybS1ncm91cC5pcy1mb2N1c2VkIC50b2dnbGVidXR0b24gbGFiZWw6Zm9jdXMge1xuICAgICAgICBjb2xvcjogcmdiYSgwLDAsMCwgLjU0KTsgfVxuICAgICAgZmllbGRzZXRbZGlzYWJsZWRdIC5mb3JtLWdyb3VwLmlzLWZvY3VzZWQgLnRvZ2dsZWJ1dHRvbiBsYWJlbCB7XG4gICAgICAgIGNvbG9yOiByZ2JhKDAsMCwwLCAwLjI2KTsgfVxuICAgIC50b2dnbGVidXR0b24gbGFiZWwgaW5wdXRbdHlwZT1jaGVja2JveF0ge1xuICAgICAgb3BhY2l0eTogMDtcbiAgICAgIHdpZHRoOiAwO1xuICAgICAgaGVpZ2h0OiAwOyB9XG4gICAgLnRvZ2dsZWJ1dHRvbiBsYWJlbCAudG9nZ2xlIHtcbiAgICAgIHRleHQtYWxpZ246IGxlZnQ7IH1cbiAgICAudG9nZ2xlYnV0dG9uIGxhYmVsIC50b2dnbGUsXG4gICAgLnRvZ2dsZWJ1dHRvbiBsYWJlbCBpbnB1dFt0eXBlPWNoZWNrYm94XVtkaXNhYmxlZF0gKyAudG9nZ2xlIHtcbiAgICAgIGNvbnRlbnQ6IFwiXCI7XG4gICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgICB3aWR0aDogMzBweDtcbiAgICAgIGhlaWdodDogMTVweDtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6IHJnYmEoODAsIDgwLCA4MCwgMC43KTtcbiAgICAgIGJvcmRlci1yYWRpdXM6IDE1cHg7XG4gICAgICBtYXJnaW4tcmlnaHQ6IDE1cHg7XG4gICAgICB0cmFuc2l0aW9uOiBiYWNrZ3JvdW5kIDAuM3MgZWFzZTtcbiAgICAgIHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7IH1cbiAgICAudG9nZ2xlYnV0dG9uIGxhYmVsIC50b2dnbGU6YWZ0ZXIge1xuICAgICAgY29udGVudDogXCJcIjtcbiAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICAgIHdpZHRoOiAyMHB4O1xuICAgICAgaGVpZ2h0OiAyMHB4O1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogI0YxRjFGMTtcbiAgICAgIGJvcmRlci1yYWRpdXM6IDIwcHg7XG4gICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICBib3gtc2hhZG93OiAwIDFweCAzcHggMXB4IHJnYmEoMCwgMCwgMCwgMC40KTtcbiAgICAgIGxlZnQ6IC01cHg7XG4gICAgICB0b3A6IC0ycHg7XG4gICAgICB0cmFuc2l0aW9uOiBsZWZ0IDAuM3MgZWFzZSwgYmFja2dyb3VuZCAwLjNzIGVhc2UsIGJveC1zaGFkb3cgMC4xcyBlYXNlOyB9XG4gICAgLnRvZ2dsZWJ1dHRvbiBsYWJlbCBpbnB1dFt0eXBlPWNoZWNrYm94XVtkaXNhYmxlZF0gKyAudG9nZ2xlOmFmdGVyLFxuICAgIC50b2dnbGVidXR0b24gbGFiZWwgaW5wdXRbdHlwZT1jaGVja2JveF1bZGlzYWJsZWRdOmNoZWNrZWQgKyAudG9nZ2xlOmFmdGVyIHtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6ICNCREJEQkQ7IH1cbiAgICAudG9nZ2xlYnV0dG9uIGxhYmVsIGlucHV0W3R5cGU9Y2hlY2tib3hdICsgLnRvZ2dsZTphY3RpdmU6YWZ0ZXIsXG4gICAgLnRvZ2dsZWJ1dHRvbiBsYWJlbCBpbnB1dFt0eXBlPWNoZWNrYm94XVtkaXNhYmxlZF0gKyAudG9nZ2xlOmFjdGl2ZTphZnRlciB7XG4gICAgICBib3gtc2hhZG93OiAwIDFweCAzcHggMXB4IHJnYmEoMCwgMCwgMCwgMC40KSwgMCAwIDAgMTVweCByZ2JhKDAsIDAsIDAsIDAuMSk7IH1cbiAgICAudG9nZ2xlYnV0dG9uIGxhYmVsIGlucHV0W3R5cGU9Y2hlY2tib3hdOmNoZWNrZWQgKyAudG9nZ2xlOmFmdGVyIHtcbiAgICAgIGxlZnQ6IDE1cHg7IH1cbiAgICAudG9nZ2xlYnV0dG9uIGxhYmVsIGlucHV0W3R5cGU9Y2hlY2tib3hdOmNoZWNrZWQgKyAudG9nZ2xlIHtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6IHJnYmEoNTEsIDEyMiwgMTgzLCAwLjUpOyB9XG4gICAgLnRvZ2dsZWJ1dHRvbiBsYWJlbCBpbnB1dFt0eXBlPWNoZWNrYm94XTpjaGVja2VkICsgLnRvZ2dsZTphZnRlciB7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjMzM3YWI3OyB9XG4gICAgLnRvZ2dsZWJ1dHRvbiBsYWJlbCBpbnB1dFt0eXBlPWNoZWNrYm94XTpjaGVja2VkICsgLnRvZ2dsZTphY3RpdmU6YWZ0ZXIge1xuICAgICAgYm94LXNoYWRvdzogMCAxcHggM3B4IDFweCByZ2JhKDAsIDAsIDAsIDAuNCksIDAgMCAwIDE1cHggcmdiYSg1MSwgMTIyLCAxODMsIDAuMSk7IH1cblxuLnJhZGlvIGxhYmVsIHtcbiAgY3Vyc29yOiBwb2ludGVyO1xuICBwYWRkaW5nLWxlZnQ6IDQ1cHg7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgY29sb3I6IHJnYmEoMCwwLDAsIDAuMjYpOyB9XG4gIC5mb3JtLWdyb3VwLmlzLWZvY3VzZWQgLnJhZGlvIGxhYmVsIHtcbiAgICBjb2xvcjogcmdiYSgwLDAsMCwgMC4yNik7IH1cbiAgICAuZm9ybS1ncm91cC5pcy1mb2N1c2VkIC5yYWRpbyBsYWJlbDpob3ZlciwgLmZvcm0tZ3JvdXAuaXMtZm9jdXNlZCAucmFkaW8gbGFiZWw6Zm9jdXMge1xuICAgICAgY29sb3I6IHJnYmEoMCwwLDAsIC41NCk7IH1cbiAgICBmaWVsZHNldFtkaXNhYmxlZF0gLmZvcm0tZ3JvdXAuaXMtZm9jdXNlZCAucmFkaW8gbGFiZWwge1xuICAgICAgY29sb3I6IHJnYmEoMCwwLDAsIDAuMjYpOyB9XG4gIC5yYWRpbyBsYWJlbCBzcGFuIHtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgbGVmdDogMTBweDtcbiAgICB0b3A6IDJweDtcbiAgICB0cmFuc2l0aW9uLWR1cmF0aW9uOiAwLjJzOyB9XG4gIC5yYWRpbyBsYWJlbCAuY2lyY2xlIHtcbiAgICBib3JkZXI6IDJweCBzb2xpZCByZ2JhKDAsMCwwLCAuNTQpO1xuICAgIGhlaWdodDogMTVweDtcbiAgICB3aWR0aDogMTVweDtcbiAgICBib3JkZXItcmFkaXVzOiAxMDAlOyB9XG4gIC5yYWRpbyBsYWJlbCAuY2hlY2sge1xuICAgIGhlaWdodDogMTVweDtcbiAgICB3aWR0aDogMTVweDtcbiAgICBib3JkZXItcmFkaXVzOiAxMDAlO1xuICAgIGJhY2tncm91bmQtY29sb3I6ICMzMzdhYjc7XG4gICAgdHJhbnNmb3JtOiBzY2FsZTNkKDAsIDAsIDApOyB9XG4gIC5yYWRpbyBsYWJlbCAuY2hlY2s6YWZ0ZXIge1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICBjb250ZW50OiBcIlwiO1xuICAgIGJhY2tncm91bmQtY29sb3I6IHJnYmEoMCwwLDAsIDAuODcpO1xuICAgIGxlZnQ6IC0xOHB4O1xuICAgIHRvcDogLTE4cHg7XG4gICAgaGVpZ2h0OiA1MHB4O1xuICAgIHdpZHRoOiA1MHB4O1xuICAgIGJvcmRlci1yYWRpdXM6IDEwMCU7XG4gICAgei1pbmRleDogMTtcbiAgICBvcGFjaXR5OiAwO1xuICAgIG1hcmdpbjogMDtcbiAgICB0cmFuc2Zvcm06IHNjYWxlM2QoMS41LCAxLjUsIDEpOyB9XG4gIC5yYWRpbyBsYWJlbCBpbnB1dFt0eXBlPXJhZGlvXTpub3QoOmNoZWNrZWQpIH4gLmNoZWNrOmFmdGVyIHtcbiAgICBhbmltYXRpb246IHJpcHBsZU9mZiA1MDBtczsgfVxuICAucmFkaW8gbGFiZWwgaW5wdXRbdHlwZT1yYWRpb106Y2hlY2tlZCB+IC5jaGVjazphZnRlciB7XG4gICAgYW5pbWF0aW9uOiByaXBwbGVPbjsgfVxuXG4ucmFkaW8gaW5wdXRbdHlwZT1yYWRpb10ge1xuICBvcGFjaXR5OiAwO1xuICBoZWlnaHQ6IDA7XG4gIHdpZHRoOiAwO1xuICBvdmVyZmxvdzogaGlkZGVuOyB9XG4gIC5yYWRpbyBpbnB1dFt0eXBlPXJhZGlvXTpjaGVja2VkIH4gLmNoZWNrLFxuICAucmFkaW8gaW5wdXRbdHlwZT1yYWRpb106Y2hlY2tlZCB+IC5jaXJjbGUge1xuICAgIG9wYWNpdHk6IDE7IH1cbiAgLnJhZGlvIGlucHV0W3R5cGU9cmFkaW9dOmNoZWNrZWQgfiAuY2hlY2sge1xuICAgIGJhY2tncm91bmQtY29sb3I6ICMzMzdhYjc7IH1cbiAgLnJhZGlvIGlucHV0W3R5cGU9cmFkaW9dOmNoZWNrZWQgfiAuY2lyY2xlIHtcbiAgICBib3JkZXItY29sb3I6ICMzMzdhYjc7IH1cbiAgLnJhZGlvIGlucHV0W3R5cGU9cmFkaW9dOmNoZWNrZWQgfiAuY2hlY2sge1xuICAgIHRyYW5zZm9ybTogc2NhbGUzZCgwLjU1LCAwLjU1LCAxKTsgfVxuXG4ucmFkaW8gaW5wdXRbdHlwZT1yYWRpb11bZGlzYWJsZWRdIH4gLmNoZWNrLFxuLnJhZGlvIGlucHV0W3R5cGU9cmFkaW9dW2Rpc2FibGVkXSB+IC5jaXJjbGUge1xuICBvcGFjaXR5OiAwLjI2OyB9XG5cbi5yYWRpbyBpbnB1dFt0eXBlPXJhZGlvXVtkaXNhYmxlZF0gfiAuY2hlY2sge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjMDAwMDAwOyB9XG5cbi5yYWRpbyBpbnB1dFt0eXBlPXJhZGlvXVtkaXNhYmxlZF0gfiAuY2lyY2xlIHtcbiAgYm9yZGVyLWNvbG9yOiAjMDAwMDAwOyB9XG5cbi50aGVtZS1kYXJrIC5yYWRpbyBpbnB1dFt0eXBlPXJhZGlvXVtkaXNhYmxlZF0gfiAuY2hlY2ssXG4udGhlbWUtZGFyayAucmFkaW8gaW5wdXRbdHlwZT1yYWRpb11bZGlzYWJsZWRdIH4gLmNpcmNsZSB7XG4gIG9wYWNpdHk6IDAuMzsgfVxuXG4udGhlbWUtZGFyayAucmFkaW8gaW5wdXRbdHlwZT1yYWRpb11bZGlzYWJsZWRdIH4gLmNoZWNrIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2ZmZmZmZjsgfVxuXG4udGhlbWUtZGFyayAucmFkaW8gaW5wdXRbdHlwZT1yYWRpb11bZGlzYWJsZWRdIH4gLmNpcmNsZSB7XG4gIGJvcmRlci1jb2xvcjogI2ZmZmZmZjsgfVxuXG4uaXMtZm9jdXNlZCAucmFkaW8gaW5wdXRbdHlwZT1yYWRpb106Y2hlY2tlZCB+IC5jaGVjazphZnRlciB7XG4gIGFuaW1hdGlvbjogcmlwcGxlT24gNTAwbXM7IH1cblxuQGtleWZyYW1lcyByaXBwbGVPbiB7XG4gIDAlIHtcbiAgICBvcGFjaXR5OiAwOyB9XG4gIDUwJSB7XG4gICAgb3BhY2l0eTogMC4yOyB9XG4gIDEwMCUge1xuICAgIG9wYWNpdHk6IDA7IH0gfVxuXG5Aa2V5ZnJhbWVzIHJpcHBsZU9mZiB7XG4gIDAlIHtcbiAgICBvcGFjaXR5OiAwOyB9XG4gIDUwJSB7XG4gICAgb3BhY2l0eTogMC4yOyB9XG4gIDEwMCUge1xuICAgIG9wYWNpdHk6IDA7IH0gfVxuXG5sZWdlbmQge1xuICBtYXJnaW4tYm90dG9tOiAyMnB4O1xuICBmb250LXNpemU6IDI0cHg7IH1cblxub3V0cHV0IHtcbiAgcGFkZGluZy10b3A6IDhweDtcbiAgZm9udC1zaXplOiAxNnB4O1xuICBsaW5lLWhlaWdodDogMS40Mjg1NzsgfVxuXG4uZm9ybS1jb250cm9sIHtcbiAgaGVpZ2h0OiAzOHB4O1xuICBwYWRkaW5nOiA3cHggMDtcbiAgZm9udC1zaXplOiAxNnB4O1xuICBsaW5lLWhlaWdodDogMS40Mjg1NzsgfVxuXG5AbWVkaWEgc2NyZWVuIGFuZCAoLXdlYmtpdC1taW4tZGV2aWNlLXBpeGVsLXJhdGlvOiAwKSB7XG4gIGlucHV0W3R5cGU9XCJkYXRlXCJdLmZvcm0tY29udHJvbCxcbiAgaW5wdXRbdHlwZT1cInRpbWVcIl0uZm9ybS1jb250cm9sLFxuICBpbnB1dFt0eXBlPVwiZGF0ZXRpbWUtbG9jYWxcIl0uZm9ybS1jb250cm9sLFxuICBpbnB1dFt0eXBlPVwibW9udGhcIl0uZm9ybS1jb250cm9sIHtcbiAgICBsaW5lLWhlaWdodDogMzhweDsgfVxuICBpbnB1dFt0eXBlPVwiZGF0ZVwiXS5pbnB1dC1zbSwgLmlucHV0LWdyb3VwLXNtID4gaW5wdXRbdHlwZT1cImRhdGVcIl0uZm9ybS1jb250cm9sLFxuICAuaW5wdXQtZ3JvdXAtc20gPiBpbnB1dFt0eXBlPVwiZGF0ZVwiXS5pbnB1dC1ncm91cC1hZGRvbixcbiAgLmlucHV0LWdyb3VwLXNtID4gLmlucHV0LWdyb3VwLWJ0biA+IGlucHV0W3R5cGU9XCJkYXRlXCJdLmJ0bixcbiAgLmlucHV0LWdyb3VwLXNtIGlucHV0W3R5cGU9XCJkYXRlXCJdLFxuICBpbnB1dFt0eXBlPVwidGltZVwiXS5pbnB1dC1zbSxcbiAgLmlucHV0LWdyb3VwLXNtID4gaW5wdXRbdHlwZT1cInRpbWVcIl0uZm9ybS1jb250cm9sLFxuICAuaW5wdXQtZ3JvdXAtc20gPiBpbnB1dFt0eXBlPVwidGltZVwiXS5pbnB1dC1ncm91cC1hZGRvbixcbiAgLmlucHV0LWdyb3VwLXNtID4gLmlucHV0LWdyb3VwLWJ0biA+IGlucHV0W3R5cGU9XCJ0aW1lXCJdLmJ0bixcbiAgLmlucHV0LWdyb3VwLXNtXG4gIGlucHV0W3R5cGU9XCJ0aW1lXCJdLFxuICBpbnB1dFt0eXBlPVwiZGF0ZXRpbWUtbG9jYWxcIl0uaW5wdXQtc20sXG4gIC5pbnB1dC1ncm91cC1zbSA+IGlucHV0W3R5cGU9XCJkYXRldGltZS1sb2NhbFwiXS5mb3JtLWNvbnRyb2wsXG4gIC5pbnB1dC1ncm91cC1zbSA+IGlucHV0W3R5cGU9XCJkYXRldGltZS1sb2NhbFwiXS5pbnB1dC1ncm91cC1hZGRvbixcbiAgLmlucHV0LWdyb3VwLXNtID4gLmlucHV0LWdyb3VwLWJ0biA+IGlucHV0W3R5cGU9XCJkYXRldGltZS1sb2NhbFwiXS5idG4sXG4gIC5pbnB1dC1ncm91cC1zbVxuICBpbnB1dFt0eXBlPVwiZGF0ZXRpbWUtbG9jYWxcIl0sXG4gIGlucHV0W3R5cGU9XCJtb250aFwiXS5pbnB1dC1zbSxcbiAgLmlucHV0LWdyb3VwLXNtID4gaW5wdXRbdHlwZT1cIm1vbnRoXCJdLmZvcm0tY29udHJvbCxcbiAgLmlucHV0LWdyb3VwLXNtID4gaW5wdXRbdHlwZT1cIm1vbnRoXCJdLmlucHV0LWdyb3VwLWFkZG9uLFxuICAuaW5wdXQtZ3JvdXAtc20gPiAuaW5wdXQtZ3JvdXAtYnRuID4gaW5wdXRbdHlwZT1cIm1vbnRoXCJdLmJ0bixcbiAgLmlucHV0LWdyb3VwLXNtXG4gIGlucHV0W3R5cGU9XCJtb250aFwiXSB7XG4gICAgbGluZS1oZWlnaHQ6IDI0cHg7IH1cbiAgaW5wdXRbdHlwZT1cImRhdGVcIl0uaW5wdXQtbGcsIC5pbnB1dC1ncm91cC1sZyA+IGlucHV0W3R5cGU9XCJkYXRlXCJdLmZvcm0tY29udHJvbCxcbiAgLmlucHV0LWdyb3VwLWxnID4gaW5wdXRbdHlwZT1cImRhdGVcIl0uaW5wdXQtZ3JvdXAtYWRkb24sXG4gIC5pbnB1dC1ncm91cC1sZyA+IC5pbnB1dC1ncm91cC1idG4gPiBpbnB1dFt0eXBlPVwiZGF0ZVwiXS5idG4sXG4gIC5pbnB1dC1ncm91cC1sZyBpbnB1dFt0eXBlPVwiZGF0ZVwiXSxcbiAgaW5wdXRbdHlwZT1cInRpbWVcIl0uaW5wdXQtbGcsXG4gIC5pbnB1dC1ncm91cC1sZyA+IGlucHV0W3R5cGU9XCJ0aW1lXCJdLmZvcm0tY29udHJvbCxcbiAgLmlucHV0LWdyb3VwLWxnID4gaW5wdXRbdHlwZT1cInRpbWVcIl0uaW5wdXQtZ3JvdXAtYWRkb24sXG4gIC5pbnB1dC1ncm91cC1sZyA+IC5pbnB1dC1ncm91cC1idG4gPiBpbnB1dFt0eXBlPVwidGltZVwiXS5idG4sXG4gIC5pbnB1dC1ncm91cC1sZ1xuICBpbnB1dFt0eXBlPVwidGltZVwiXSxcbiAgaW5wdXRbdHlwZT1cImRhdGV0aW1lLWxvY2FsXCJdLmlucHV0LWxnLFxuICAuaW5wdXQtZ3JvdXAtbGcgPiBpbnB1dFt0eXBlPVwiZGF0ZXRpbWUtbG9jYWxcIl0uZm9ybS1jb250cm9sLFxuICAuaW5wdXQtZ3JvdXAtbGcgPiBpbnB1dFt0eXBlPVwiZGF0ZXRpbWUtbG9jYWxcIl0uaW5wdXQtZ3JvdXAtYWRkb24sXG4gIC5pbnB1dC1ncm91cC1sZyA+IC5pbnB1dC1ncm91cC1idG4gPiBpbnB1dFt0eXBlPVwiZGF0ZXRpbWUtbG9jYWxcIl0uYnRuLFxuICAuaW5wdXQtZ3JvdXAtbGdcbiAgaW5wdXRbdHlwZT1cImRhdGV0aW1lLWxvY2FsXCJdLFxuICBpbnB1dFt0eXBlPVwibW9udGhcIl0uaW5wdXQtbGcsXG4gIC5pbnB1dC1ncm91cC1sZyA+IGlucHV0W3R5cGU9XCJtb250aFwiXS5mb3JtLWNvbnRyb2wsXG4gIC5pbnB1dC1ncm91cC1sZyA+IGlucHV0W3R5cGU9XCJtb250aFwiXS5pbnB1dC1ncm91cC1hZGRvbixcbiAgLmlucHV0LWdyb3VwLWxnID4gLmlucHV0LWdyb3VwLWJ0biA+IGlucHV0W3R5cGU9XCJtb250aFwiXS5idG4sXG4gIC5pbnB1dC1ncm91cC1sZ1xuICBpbnB1dFt0eXBlPVwibW9udGhcIl0ge1xuICAgIGxpbmUtaGVpZ2h0OiA0NHB4OyB9IH1cblxuLnJhZGlvIGxhYmVsLFxuLmNoZWNrYm94IGxhYmVsIHtcbiAgbWluLWhlaWdodDogMjJweDsgfVxuXG4uZm9ybS1jb250cm9sLXN0YXRpYyB7XG4gIHBhZGRpbmctdG9wOiA4cHg7XG4gIHBhZGRpbmctYm90dG9tOiA4cHg7XG4gIG1pbi1oZWlnaHQ6IDM4cHg7IH1cblxuLmlucHV0LXNtIC5pbnB1dC1zbSwgLmlucHV0LWdyb3VwLXNtID4gLmZvcm0tY29udHJvbCAuaW5wdXQtc20sXG4uaW5wdXQtZ3JvdXAtc20gPiAuaW5wdXQtZ3JvdXAtYWRkb24gLmlucHV0LXNtLFxuLmlucHV0LWdyb3VwLXNtID4gLmlucHV0LWdyb3VwLWJ0biA+IC5idG4gLmlucHV0LXNtLCAuaW5wdXQtc20gLmlucHV0LWdyb3VwLXNtID4gLmZvcm0tY29udHJvbCwgLmlucHV0LWdyb3VwLXNtID4gLmZvcm0tY29udHJvbCAuaW5wdXQtZ3JvdXAtc20gPiAuZm9ybS1jb250cm9sLFxuLmlucHV0LWdyb3VwLXNtID4gLmlucHV0LWdyb3VwLWFkZG9uIC5pbnB1dC1ncm91cC1zbSA+IC5mb3JtLWNvbnRyb2wsXG4uaW5wdXQtZ3JvdXAtc20gPiAuaW5wdXQtZ3JvdXAtYnRuID4gLmJ0biAuaW5wdXQtZ3JvdXAtc20gPiAuZm9ybS1jb250cm9sLCAuaW5wdXQtc21cbi5pbnB1dC1ncm91cC1zbSA+IC5pbnB1dC1ncm91cC1hZGRvbiwgLmlucHV0LWdyb3VwLXNtID4gLmZvcm0tY29udHJvbFxuLmlucHV0LWdyb3VwLXNtID4gLmlucHV0LWdyb3VwLWFkZG9uLFxuLmlucHV0LWdyb3VwLXNtID4gLmlucHV0LWdyb3VwLWFkZG9uXG4uaW5wdXQtZ3JvdXAtc20gPiAuaW5wdXQtZ3JvdXAtYWRkb24sXG4uaW5wdXQtZ3JvdXAtc20gPiAuaW5wdXQtZ3JvdXAtYnRuID4gLmJ0blxuLmlucHV0LWdyb3VwLXNtID4gLmlucHV0LWdyb3VwLWFkZG9uLCAuaW5wdXQtc21cbi5pbnB1dC1ncm91cC1zbSA+IC5pbnB1dC1ncm91cC1idG4gPiAuYnRuLCAuaW5wdXQtZ3JvdXAtc20gPiAuZm9ybS1jb250cm9sXG4uaW5wdXQtZ3JvdXAtc20gPiAuaW5wdXQtZ3JvdXAtYnRuID4gLmJ0bixcbi5pbnB1dC1ncm91cC1zbSA+IC5pbnB1dC1ncm91cC1hZGRvblxuLmlucHV0LWdyb3VwLXNtID4gLmlucHV0LWdyb3VwLWJ0biA+IC5idG4sXG4uaW5wdXQtZ3JvdXAtc20gPiAuaW5wdXQtZ3JvdXAtYnRuID4gLmJ0blxuLmlucHV0LWdyb3VwLXNtID4gLmlucHV0LWdyb3VwLWJ0biA+IC5idG4ge1xuICBoZWlnaHQ6IDI0cHg7XG4gIHBhZGRpbmc6IDNweCAwO1xuICBmb250LXNpemU6IDExcHg7XG4gIGxpbmUtaGVpZ2h0OiAxLjU7XG4gIGJvcmRlci1yYWRpdXM6IDA7IH1cblxuLmlucHV0LXNtIHNlbGVjdC5pbnB1dC1zbSwgLmlucHV0LWdyb3VwLXNtID4gLmZvcm0tY29udHJvbCBzZWxlY3QuaW5wdXQtc20sXG4uaW5wdXQtZ3JvdXAtc20gPiAuaW5wdXQtZ3JvdXAtYWRkb24gc2VsZWN0LmlucHV0LXNtLFxuLmlucHV0LWdyb3VwLXNtID4gLmlucHV0LWdyb3VwLWJ0biA+IC5idG4gc2VsZWN0LmlucHV0LXNtLCAuaW5wdXQtc20gLmlucHV0LWdyb3VwLXNtID4gc2VsZWN0LmZvcm0tY29udHJvbCwgLmlucHV0LWdyb3VwLXNtID4gLmZvcm0tY29udHJvbCAuaW5wdXQtZ3JvdXAtc20gPiBzZWxlY3QuZm9ybS1jb250cm9sLFxuLmlucHV0LWdyb3VwLXNtID4gLmlucHV0LWdyb3VwLWFkZG9uIC5pbnB1dC1ncm91cC1zbSA+IHNlbGVjdC5mb3JtLWNvbnRyb2wsXG4uaW5wdXQtZ3JvdXAtc20gPiAuaW5wdXQtZ3JvdXAtYnRuID4gLmJ0biAuaW5wdXQtZ3JvdXAtc20gPiBzZWxlY3QuZm9ybS1jb250cm9sLCAuaW5wdXQtc21cbi5pbnB1dC1ncm91cC1zbSA+IHNlbGVjdC5pbnB1dC1ncm91cC1hZGRvbiwgLmlucHV0LWdyb3VwLXNtID4gLmZvcm0tY29udHJvbFxuLmlucHV0LWdyb3VwLXNtID4gc2VsZWN0LmlucHV0LWdyb3VwLWFkZG9uLFxuLmlucHV0LWdyb3VwLXNtID4gLmlucHV0LWdyb3VwLWFkZG9uXG4uaW5wdXQtZ3JvdXAtc20gPiBzZWxlY3QuaW5wdXQtZ3JvdXAtYWRkb24sXG4uaW5wdXQtZ3JvdXAtc20gPiAuaW5wdXQtZ3JvdXAtYnRuID4gLmJ0blxuLmlucHV0LWdyb3VwLXNtID4gc2VsZWN0LmlucHV0LWdyb3VwLWFkZG9uLCAuaW5wdXQtc21cbi5pbnB1dC1ncm91cC1zbSA+IC5pbnB1dC1ncm91cC1idG4gPiBzZWxlY3QuYnRuLCAuaW5wdXQtZ3JvdXAtc20gPiAuZm9ybS1jb250cm9sXG4uaW5wdXQtZ3JvdXAtc20gPiAuaW5wdXQtZ3JvdXAtYnRuID4gc2VsZWN0LmJ0bixcbi5pbnB1dC1ncm91cC1zbSA+IC5pbnB1dC1ncm91cC1hZGRvblxuLmlucHV0LWdyb3VwLXNtID4gLmlucHV0LWdyb3VwLWJ0biA+IHNlbGVjdC5idG4sXG4uaW5wdXQtZ3JvdXAtc20gPiAuaW5wdXQtZ3JvdXAtYnRuID4gLmJ0blxuLmlucHV0LWdyb3VwLXNtID4gLmlucHV0LWdyb3VwLWJ0biA+IHNlbGVjdC5idG4ge1xuICBoZWlnaHQ6IDI0cHg7XG4gIGxpbmUtaGVpZ2h0OiAyNHB4OyB9XG5cbi5pbnB1dC1zbSB0ZXh0YXJlYS5pbnB1dC1zbSwgLmlucHV0LWdyb3VwLXNtID4gLmZvcm0tY29udHJvbCB0ZXh0YXJlYS5pbnB1dC1zbSxcbi5pbnB1dC1ncm91cC1zbSA+IC5pbnB1dC1ncm91cC1hZGRvbiB0ZXh0YXJlYS5pbnB1dC1zbSxcbi5pbnB1dC1ncm91cC1zbSA+IC5pbnB1dC1ncm91cC1idG4gPiAuYnRuIHRleHRhcmVhLmlucHV0LXNtLCAuaW5wdXQtc20gLmlucHV0LWdyb3VwLXNtID4gdGV4dGFyZWEuZm9ybS1jb250cm9sLCAuaW5wdXQtZ3JvdXAtc20gPiAuZm9ybS1jb250cm9sIC5pbnB1dC1ncm91cC1zbSA+IHRleHRhcmVhLmZvcm0tY29udHJvbCxcbi5pbnB1dC1ncm91cC1zbSA+IC5pbnB1dC1ncm91cC1hZGRvbiAuaW5wdXQtZ3JvdXAtc20gPiB0ZXh0YXJlYS5mb3JtLWNvbnRyb2wsXG4uaW5wdXQtZ3JvdXAtc20gPiAuaW5wdXQtZ3JvdXAtYnRuID4gLmJ0biAuaW5wdXQtZ3JvdXAtc20gPiB0ZXh0YXJlYS5mb3JtLWNvbnRyb2wsIC5pbnB1dC1zbVxuLmlucHV0LWdyb3VwLXNtID4gdGV4dGFyZWEuaW5wdXQtZ3JvdXAtYWRkb24sIC5pbnB1dC1ncm91cC1zbSA+IC5mb3JtLWNvbnRyb2xcbi5pbnB1dC1ncm91cC1zbSA+IHRleHRhcmVhLmlucHV0LWdyb3VwLWFkZG9uLFxuLmlucHV0LWdyb3VwLXNtID4gLmlucHV0LWdyb3VwLWFkZG9uXG4uaW5wdXQtZ3JvdXAtc20gPiB0ZXh0YXJlYS5pbnB1dC1ncm91cC1hZGRvbixcbi5pbnB1dC1ncm91cC1zbSA+IC5pbnB1dC1ncm91cC1idG4gPiAuYnRuXG4uaW5wdXQtZ3JvdXAtc20gPiB0ZXh0YXJlYS5pbnB1dC1ncm91cC1hZGRvbiwgLmlucHV0LXNtXG4uaW5wdXQtZ3JvdXAtc20gPiAuaW5wdXQtZ3JvdXAtYnRuID4gdGV4dGFyZWEuYnRuLCAuaW5wdXQtZ3JvdXAtc20gPiAuZm9ybS1jb250cm9sXG4uaW5wdXQtZ3JvdXAtc20gPiAuaW5wdXQtZ3JvdXAtYnRuID4gdGV4dGFyZWEuYnRuLFxuLmlucHV0LWdyb3VwLXNtID4gLmlucHV0LWdyb3VwLWFkZG9uXG4uaW5wdXQtZ3JvdXAtc20gPiAuaW5wdXQtZ3JvdXAtYnRuID4gdGV4dGFyZWEuYnRuLFxuLmlucHV0LWdyb3VwLXNtID4gLmlucHV0LWdyb3VwLWJ0biA+IC5idG5cbi5pbnB1dC1ncm91cC1zbSA+IC5pbnB1dC1ncm91cC1idG4gPiB0ZXh0YXJlYS5idG4sXG4uaW5wdXQtc20gc2VsZWN0W211bHRpcGxlXS5pbnB1dC1zbSwgLmlucHV0LWdyb3VwLXNtID4gLmZvcm0tY29udHJvbCBzZWxlY3RbbXVsdGlwbGVdLmlucHV0LXNtLFxuLmlucHV0LWdyb3VwLXNtID4gLmlucHV0LWdyb3VwLWFkZG9uIHNlbGVjdFttdWx0aXBsZV0uaW5wdXQtc20sXG4uaW5wdXQtZ3JvdXAtc20gPiAuaW5wdXQtZ3JvdXAtYnRuID4gLmJ0biBzZWxlY3RbbXVsdGlwbGVdLmlucHV0LXNtLFxuLmlucHV0LXNtIC5pbnB1dC1ncm91cC1zbSA+IHNlbGVjdFttdWx0aXBsZV0uZm9ybS1jb250cm9sLCAuaW5wdXQtZ3JvdXAtc20gPiAuZm9ybS1jb250cm9sIC5pbnB1dC1ncm91cC1zbSA+IHNlbGVjdFttdWx0aXBsZV0uZm9ybS1jb250cm9sLFxuLmlucHV0LWdyb3VwLXNtID4gLmlucHV0LWdyb3VwLWFkZG9uIC5pbnB1dC1ncm91cC1zbSA+IHNlbGVjdFttdWx0aXBsZV0uZm9ybS1jb250cm9sLFxuLmlucHV0LWdyb3VwLXNtID4gLmlucHV0LWdyb3VwLWJ0biA+IC5idG4gLmlucHV0LWdyb3VwLXNtID4gc2VsZWN0W211bHRpcGxlXS5mb3JtLWNvbnRyb2wsXG4uaW5wdXQtc21cbi5pbnB1dC1ncm91cC1zbSA+IHNlbGVjdFttdWx0aXBsZV0uaW5wdXQtZ3JvdXAtYWRkb24sIC5pbnB1dC1ncm91cC1zbSA+IC5mb3JtLWNvbnRyb2xcbi5pbnB1dC1ncm91cC1zbSA+IHNlbGVjdFttdWx0aXBsZV0uaW5wdXQtZ3JvdXAtYWRkb24sXG4uaW5wdXQtZ3JvdXAtc20gPiAuaW5wdXQtZ3JvdXAtYWRkb25cbi5pbnB1dC1ncm91cC1zbSA+IHNlbGVjdFttdWx0aXBsZV0uaW5wdXQtZ3JvdXAtYWRkb24sXG4uaW5wdXQtZ3JvdXAtc20gPiAuaW5wdXQtZ3JvdXAtYnRuID4gLmJ0blxuLmlucHV0LWdyb3VwLXNtID4gc2VsZWN0W211bHRpcGxlXS5pbnB1dC1ncm91cC1hZGRvbixcbi5pbnB1dC1zbVxuLmlucHV0LWdyb3VwLXNtID4gLmlucHV0LWdyb3VwLWJ0biA+IHNlbGVjdFttdWx0aXBsZV0uYnRuLCAuaW5wdXQtZ3JvdXAtc20gPiAuZm9ybS1jb250cm9sXG4uaW5wdXQtZ3JvdXAtc20gPiAuaW5wdXQtZ3JvdXAtYnRuID4gc2VsZWN0W211bHRpcGxlXS5idG4sXG4uaW5wdXQtZ3JvdXAtc20gPiAuaW5wdXQtZ3JvdXAtYWRkb25cbi5pbnB1dC1ncm91cC1zbSA+IC5pbnB1dC1ncm91cC1idG4gPiBzZWxlY3RbbXVsdGlwbGVdLmJ0bixcbi5pbnB1dC1ncm91cC1zbSA+IC5pbnB1dC1ncm91cC1idG4gPiAuYnRuXG4uaW5wdXQtZ3JvdXAtc20gPiAuaW5wdXQtZ3JvdXAtYnRuID4gc2VsZWN0W211bHRpcGxlXS5idG4ge1xuICBoZWlnaHQ6IGF1dG87IH1cblxuLmZvcm0tZ3JvdXAtc20gLmZvcm0tY29udHJvbCB7XG4gIGhlaWdodDogMjRweDtcbiAgcGFkZGluZzogM3B4IDA7XG4gIGZvbnQtc2l6ZTogMTFweDtcbiAgbGluZS1oZWlnaHQ6IDEuNTsgfVxuXG4uZm9ybS1ncm91cC1zbSBzZWxlY3QuZm9ybS1jb250cm9sIHtcbiAgaGVpZ2h0OiAyNHB4O1xuICBsaW5lLWhlaWdodDogMjRweDsgfVxuXG4uZm9ybS1ncm91cC1zbSB0ZXh0YXJlYS5mb3JtLWNvbnRyb2wsXG4uZm9ybS1ncm91cC1zbSBzZWxlY3RbbXVsdGlwbGVdLmZvcm0tY29udHJvbCB7XG4gIGhlaWdodDogYXV0bzsgfVxuXG4uZm9ybS1ncm91cC1zbSAuZm9ybS1jb250cm9sLXN0YXRpYyB7XG4gIGhlaWdodDogMjRweDtcbiAgbWluLWhlaWdodDogMzNweDtcbiAgcGFkZGluZzogNHB4IDA7XG4gIGZvbnQtc2l6ZTogMTFweDtcbiAgbGluZS1oZWlnaHQ6IDEuNTsgfVxuXG4uaW5wdXQtbGcgLmlucHV0LWxnLCAuaW5wdXQtZ3JvdXAtbGcgPiAuZm9ybS1jb250cm9sIC5pbnB1dC1sZyxcbi5pbnB1dC1ncm91cC1sZyA+IC5pbnB1dC1ncm91cC1hZGRvbiAuaW5wdXQtbGcsXG4uaW5wdXQtZ3JvdXAtbGcgPiAuaW5wdXQtZ3JvdXAtYnRuID4gLmJ0biAuaW5wdXQtbGcsIC5pbnB1dC1sZyAuaW5wdXQtZ3JvdXAtbGcgPiAuZm9ybS1jb250cm9sLCAuaW5wdXQtZ3JvdXAtbGcgPiAuZm9ybS1jb250cm9sIC5pbnB1dC1ncm91cC1sZyA+IC5mb3JtLWNvbnRyb2wsXG4uaW5wdXQtZ3JvdXAtbGcgPiAuaW5wdXQtZ3JvdXAtYWRkb24gLmlucHV0LWdyb3VwLWxnID4gLmZvcm0tY29udHJvbCxcbi5pbnB1dC1ncm91cC1sZyA+IC5pbnB1dC1ncm91cC1idG4gPiAuYnRuIC5pbnB1dC1ncm91cC1sZyA+IC5mb3JtLWNvbnRyb2wsIC5pbnB1dC1sZ1xuLmlucHV0LWdyb3VwLWxnID4gLmlucHV0LWdyb3VwLWFkZG9uLCAuaW5wdXQtZ3JvdXAtbGcgPiAuZm9ybS1jb250cm9sXG4uaW5wdXQtZ3JvdXAtbGcgPiAuaW5wdXQtZ3JvdXAtYWRkb24sXG4uaW5wdXQtZ3JvdXAtbGcgPiAuaW5wdXQtZ3JvdXAtYWRkb25cbi5pbnB1dC1ncm91cC1sZyA+IC5pbnB1dC1ncm91cC1hZGRvbixcbi5pbnB1dC1ncm91cC1sZyA+IC5pbnB1dC1ncm91cC1idG4gPiAuYnRuXG4uaW5wdXQtZ3JvdXAtbGcgPiAuaW5wdXQtZ3JvdXAtYWRkb24sIC5pbnB1dC1sZ1xuLmlucHV0LWdyb3VwLWxnID4gLmlucHV0LWdyb3VwLWJ0biA+IC5idG4sIC5pbnB1dC1ncm91cC1sZyA+IC5mb3JtLWNvbnRyb2xcbi5pbnB1dC1ncm91cC1sZyA+IC5pbnB1dC1ncm91cC1idG4gPiAuYnRuLFxuLmlucHV0LWdyb3VwLWxnID4gLmlucHV0LWdyb3VwLWFkZG9uXG4uaW5wdXQtZ3JvdXAtbGcgPiAuaW5wdXQtZ3JvdXAtYnRuID4gLmJ0bixcbi5pbnB1dC1ncm91cC1sZyA+IC5pbnB1dC1ncm91cC1idG4gPiAuYnRuXG4uaW5wdXQtZ3JvdXAtbGcgPiAuaW5wdXQtZ3JvdXAtYnRuID4gLmJ0biB7XG4gIGhlaWdodDogNDRweDtcbiAgcGFkZGluZzogOXB4IDA7XG4gIGZvbnQtc2l6ZTogMThweDtcbiAgbGluZS1oZWlnaHQ6IDEuMzMzMzM7XG4gIGJvcmRlci1yYWRpdXM6IDA7IH1cblxuLmlucHV0LWxnIHNlbGVjdC5pbnB1dC1sZywgLmlucHV0LWdyb3VwLWxnID4gLmZvcm0tY29udHJvbCBzZWxlY3QuaW5wdXQtbGcsXG4uaW5wdXQtZ3JvdXAtbGcgPiAuaW5wdXQtZ3JvdXAtYWRkb24gc2VsZWN0LmlucHV0LWxnLFxuLmlucHV0LWdyb3VwLWxnID4gLmlucHV0LWdyb3VwLWJ0biA+IC5idG4gc2VsZWN0LmlucHV0LWxnLCAuaW5wdXQtbGcgLmlucHV0LWdyb3VwLWxnID4gc2VsZWN0LmZvcm0tY29udHJvbCwgLmlucHV0LWdyb3VwLWxnID4gLmZvcm0tY29udHJvbCAuaW5wdXQtZ3JvdXAtbGcgPiBzZWxlY3QuZm9ybS1jb250cm9sLFxuLmlucHV0LWdyb3VwLWxnID4gLmlucHV0LWdyb3VwLWFkZG9uIC5pbnB1dC1ncm91cC1sZyA+IHNlbGVjdC5mb3JtLWNvbnRyb2wsXG4uaW5wdXQtZ3JvdXAtbGcgPiAuaW5wdXQtZ3JvdXAtYnRuID4gLmJ0biAuaW5wdXQtZ3JvdXAtbGcgPiBzZWxlY3QuZm9ybS1jb250cm9sLCAuaW5wdXQtbGdcbi5pbnB1dC1ncm91cC1sZyA+IHNlbGVjdC5pbnB1dC1ncm91cC1hZGRvbiwgLmlucHV0LWdyb3VwLWxnID4gLmZvcm0tY29udHJvbFxuLmlucHV0LWdyb3VwLWxnID4gc2VsZWN0LmlucHV0LWdyb3VwLWFkZG9uLFxuLmlucHV0LWdyb3VwLWxnID4gLmlucHV0LWdyb3VwLWFkZG9uXG4uaW5wdXQtZ3JvdXAtbGcgPiBzZWxlY3QuaW5wdXQtZ3JvdXAtYWRkb24sXG4uaW5wdXQtZ3JvdXAtbGcgPiAuaW5wdXQtZ3JvdXAtYnRuID4gLmJ0blxuLmlucHV0LWdyb3VwLWxnID4gc2VsZWN0LmlucHV0LWdyb3VwLWFkZG9uLCAuaW5wdXQtbGdcbi5pbnB1dC1ncm91cC1sZyA+IC5pbnB1dC1ncm91cC1idG4gPiBzZWxlY3QuYnRuLCAuaW5wdXQtZ3JvdXAtbGcgPiAuZm9ybS1jb250cm9sXG4uaW5wdXQtZ3JvdXAtbGcgPiAuaW5wdXQtZ3JvdXAtYnRuID4gc2VsZWN0LmJ0bixcbi5pbnB1dC1ncm91cC1sZyA+IC5pbnB1dC1ncm91cC1hZGRvblxuLmlucHV0LWdyb3VwLWxnID4gLmlucHV0LWdyb3VwLWJ0biA+IHNlbGVjdC5idG4sXG4uaW5wdXQtZ3JvdXAtbGcgPiAuaW5wdXQtZ3JvdXAtYnRuID4gLmJ0blxuLmlucHV0LWdyb3VwLWxnID4gLmlucHV0LWdyb3VwLWJ0biA+IHNlbGVjdC5idG4ge1xuICBoZWlnaHQ6IDQ0cHg7XG4gIGxpbmUtaGVpZ2h0OiA0NHB4OyB9XG5cbi5pbnB1dC1sZyB0ZXh0YXJlYS5pbnB1dC1sZywgLmlucHV0LWdyb3VwLWxnID4gLmZvcm0tY29udHJvbCB0ZXh0YXJlYS5pbnB1dC1sZyxcbi5pbnB1dC1ncm91cC1sZyA+IC5pbnB1dC1ncm91cC1hZGRvbiB0ZXh0YXJlYS5pbnB1dC1sZyxcbi5pbnB1dC1ncm91cC1sZyA+IC5pbnB1dC1ncm91cC1idG4gPiAuYnRuIHRleHRhcmVhLmlucHV0LWxnLCAuaW5wdXQtbGcgLmlucHV0LWdyb3VwLWxnID4gdGV4dGFyZWEuZm9ybS1jb250cm9sLCAuaW5wdXQtZ3JvdXAtbGcgPiAuZm9ybS1jb250cm9sIC5pbnB1dC1ncm91cC1sZyA+IHRleHRhcmVhLmZvcm0tY29udHJvbCxcbi5pbnB1dC1ncm91cC1sZyA+IC5pbnB1dC1ncm91cC1hZGRvbiAuaW5wdXQtZ3JvdXAtbGcgPiB0ZXh0YXJlYS5mb3JtLWNvbnRyb2wsXG4uaW5wdXQtZ3JvdXAtbGcgPiAuaW5wdXQtZ3JvdXAtYnRuID4gLmJ0biAuaW5wdXQtZ3JvdXAtbGcgPiB0ZXh0YXJlYS5mb3JtLWNvbnRyb2wsIC5pbnB1dC1sZ1xuLmlucHV0LWdyb3VwLWxnID4gdGV4dGFyZWEuaW5wdXQtZ3JvdXAtYWRkb24sIC5pbnB1dC1ncm91cC1sZyA+IC5mb3JtLWNvbnRyb2xcbi5pbnB1dC1ncm91cC1sZyA+IHRleHRhcmVhLmlucHV0LWdyb3VwLWFkZG9uLFxuLmlucHV0LWdyb3VwLWxnID4gLmlucHV0LWdyb3VwLWFkZG9uXG4uaW5wdXQtZ3JvdXAtbGcgPiB0ZXh0YXJlYS5pbnB1dC1ncm91cC1hZGRvbixcbi5pbnB1dC1ncm91cC1sZyA+IC5pbnB1dC1ncm91cC1idG4gPiAuYnRuXG4uaW5wdXQtZ3JvdXAtbGcgPiB0ZXh0YXJlYS5pbnB1dC1ncm91cC1hZGRvbiwgLmlucHV0LWxnXG4uaW5wdXQtZ3JvdXAtbGcgPiAuaW5wdXQtZ3JvdXAtYnRuID4gdGV4dGFyZWEuYnRuLCAuaW5wdXQtZ3JvdXAtbGcgPiAuZm9ybS1jb250cm9sXG4uaW5wdXQtZ3JvdXAtbGcgPiAuaW5wdXQtZ3JvdXAtYnRuID4gdGV4dGFyZWEuYnRuLFxuLmlucHV0LWdyb3VwLWxnID4gLmlucHV0LWdyb3VwLWFkZG9uXG4uaW5wdXQtZ3JvdXAtbGcgPiAuaW5wdXQtZ3JvdXAtYnRuID4gdGV4dGFyZWEuYnRuLFxuLmlucHV0LWdyb3VwLWxnID4gLmlucHV0LWdyb3VwLWJ0biA+IC5idG5cbi5pbnB1dC1ncm91cC1sZyA+IC5pbnB1dC1ncm91cC1idG4gPiB0ZXh0YXJlYS5idG4sXG4uaW5wdXQtbGcgc2VsZWN0W211bHRpcGxlXS5pbnB1dC1sZywgLmlucHV0LWdyb3VwLWxnID4gLmZvcm0tY29udHJvbCBzZWxlY3RbbXVsdGlwbGVdLmlucHV0LWxnLFxuLmlucHV0LWdyb3VwLWxnID4gLmlucHV0LWdyb3VwLWFkZG9uIHNlbGVjdFttdWx0aXBsZV0uaW5wdXQtbGcsXG4uaW5wdXQtZ3JvdXAtbGcgPiAuaW5wdXQtZ3JvdXAtYnRuID4gLmJ0biBzZWxlY3RbbXVsdGlwbGVdLmlucHV0LWxnLFxuLmlucHV0LWxnIC5pbnB1dC1ncm91cC1sZyA+IHNlbGVjdFttdWx0aXBsZV0uZm9ybS1jb250cm9sLCAuaW5wdXQtZ3JvdXAtbGcgPiAuZm9ybS1jb250cm9sIC5pbnB1dC1ncm91cC1sZyA+IHNlbGVjdFttdWx0aXBsZV0uZm9ybS1jb250cm9sLFxuLmlucHV0LWdyb3VwLWxnID4gLmlucHV0LWdyb3VwLWFkZG9uIC5pbnB1dC1ncm91cC1sZyA+IHNlbGVjdFttdWx0aXBsZV0uZm9ybS1jb250cm9sLFxuLmlucHV0LWdyb3VwLWxnID4gLmlucHV0LWdyb3VwLWJ0biA+IC5idG4gLmlucHV0LWdyb3VwLWxnID4gc2VsZWN0W211bHRpcGxlXS5mb3JtLWNvbnRyb2wsXG4uaW5wdXQtbGdcbi5pbnB1dC1ncm91cC1sZyA+IHNlbGVjdFttdWx0aXBsZV0uaW5wdXQtZ3JvdXAtYWRkb24sIC5pbnB1dC1ncm91cC1sZyA+IC5mb3JtLWNvbnRyb2xcbi5pbnB1dC1ncm91cC1sZyA+IHNlbGVjdFttdWx0aXBsZV0uaW5wdXQtZ3JvdXAtYWRkb24sXG4uaW5wdXQtZ3JvdXAtbGcgPiAuaW5wdXQtZ3JvdXAtYWRkb25cbi5pbnB1dC1ncm91cC1sZyA+IHNlbGVjdFttdWx0aXBsZV0uaW5wdXQtZ3JvdXAtYWRkb24sXG4uaW5wdXQtZ3JvdXAtbGcgPiAuaW5wdXQtZ3JvdXAtYnRuID4gLmJ0blxuLmlucHV0LWdyb3VwLWxnID4gc2VsZWN0W211bHRpcGxlXS5pbnB1dC1ncm91cC1hZGRvbixcbi5pbnB1dC1sZ1xuLmlucHV0LWdyb3VwLWxnID4gLmlucHV0LWdyb3VwLWJ0biA+IHNlbGVjdFttdWx0aXBsZV0uYnRuLCAuaW5wdXQtZ3JvdXAtbGcgPiAuZm9ybS1jb250cm9sXG4uaW5wdXQtZ3JvdXAtbGcgPiAuaW5wdXQtZ3JvdXAtYnRuID4gc2VsZWN0W211bHRpcGxlXS5idG4sXG4uaW5wdXQtZ3JvdXAtbGcgPiAuaW5wdXQtZ3JvdXAtYWRkb25cbi5pbnB1dC1ncm91cC1sZyA+IC5pbnB1dC1ncm91cC1idG4gPiBzZWxlY3RbbXVsdGlwbGVdLmJ0bixcbi5pbnB1dC1ncm91cC1sZyA+IC5pbnB1dC1ncm91cC1idG4gPiAuYnRuXG4uaW5wdXQtZ3JvdXAtbGcgPiAuaW5wdXQtZ3JvdXAtYnRuID4gc2VsZWN0W211bHRpcGxlXS5idG4ge1xuICBoZWlnaHQ6IGF1dG87IH1cblxuLmZvcm0tZ3JvdXAtbGcgLmZvcm0tY29udHJvbCB7XG4gIGhlaWdodDogNDRweDtcbiAgcGFkZGluZzogOXB4IDA7XG4gIGZvbnQtc2l6ZTogMThweDtcbiAgbGluZS1oZWlnaHQ6IDEuMzMzMzM7IH1cblxuLmZvcm0tZ3JvdXAtbGcgc2VsZWN0LmZvcm0tY29udHJvbCB7XG4gIGhlaWdodDogNDRweDtcbiAgbGluZS1oZWlnaHQ6IDQ0cHg7IH1cblxuLmZvcm0tZ3JvdXAtbGcgdGV4dGFyZWEuZm9ybS1jb250cm9sLFxuLmZvcm0tZ3JvdXAtbGcgc2VsZWN0W211bHRpcGxlXS5mb3JtLWNvbnRyb2wge1xuICBoZWlnaHQ6IGF1dG87IH1cblxuLmZvcm0tZ3JvdXAtbGcgLmZvcm0tY29udHJvbC1zdGF0aWMge1xuICBoZWlnaHQ6IDQ0cHg7XG4gIG1pbi1oZWlnaHQ6IDQwcHg7XG4gIHBhZGRpbmc6IDEwcHggMDtcbiAgZm9udC1zaXplOiAxOHB4O1xuICBsaW5lLWhlaWdodDogMS4zMzMzMzsgfVxuXG4uZm9ybS1ob3Jpem9udGFsIC5yYWRpbyxcbi5mb3JtLWhvcml6b250YWwgLmNoZWNrYm94LFxuLmZvcm0taG9yaXpvbnRhbCAucmFkaW8taW5saW5lLFxuLmZvcm0taG9yaXpvbnRhbCAuY2hlY2tib3gtaW5saW5lIHtcbiAgcGFkZGluZy10b3A6IDhweDsgfVxuXG4uZm9ybS1ob3Jpem9udGFsIC5yYWRpbyxcbi5mb3JtLWhvcml6b250YWwgLmNoZWNrYm94IHtcbiAgbWluLWhlaWdodDogMzBweDsgfVxuXG5AbWVkaWEgKG1pbi13aWR0aDogNzY4cHgpIHtcbiAgLmZvcm0taG9yaXpvbnRhbCAuY29udHJvbC1sYWJlbCB7XG4gICAgcGFkZGluZy10b3A6IDhweDsgfSB9XG5cbkBtZWRpYSAobWluLXdpZHRoOiA3NjhweCkge1xuICAuZm9ybS1ob3Jpem9udGFsIC5mb3JtLWdyb3VwLWxnIC5jb250cm9sLWxhYmVsIHtcbiAgICBwYWRkaW5nLXRvcDogMTMuMHB4O1xuICAgIGZvbnQtc2l6ZTogMThweDsgfSB9XG5cbkBtZWRpYSAobWluLXdpZHRoOiA3NjhweCkge1xuICAuZm9ybS1ob3Jpem9udGFsIC5mb3JtLWdyb3VwLXNtIC5jb250cm9sLWxhYmVsIHtcbiAgICBwYWRkaW5nLXRvcDogNHB4O1xuICAgIGZvbnQtc2l6ZTogMTFweDsgfSB9XG5cbi5sYWJlbCB7XG4gIGJvcmRlci1yYWRpdXM6IDNweDsgfVxuICAubGFiZWwsIC5sYWJlbC5sYWJlbC1kZWZhdWx0IHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjOWU5ZTllOyB9XG4gIC5sYWJlbC5sYWJlbC1pbnZlcnNlIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjM2Y1MWI1OyB9XG4gIC5sYWJlbC5sYWJlbC1wcmltYXJ5IHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjMzM3YWI3OyB9XG4gIC5sYWJlbC5sYWJlbC1zdWNjZXNzIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjNWNiODVjOyB9XG4gIC5sYWJlbC5sYWJlbC1pbmZvIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjNWJjMGRlOyB9XG4gIC5sYWJlbC5sYWJlbC13YXJuaW5nIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjZjBhZDRlOyB9XG4gIC5sYWJlbC5sYWJlbC1kYW5nZXIge1xuICAgIGJhY2tncm91bmQtY29sb3I6ICNkOTUzNGY7IH1cblxuLmZvcm0tY29udHJvbCxcbi5mb3JtLWdyb3VwIC5mb3JtLWNvbnRyb2wge1xuICBib3JkZXI6IDA7XG4gIGJhY2tncm91bmQtaW1hZ2U6IGxpbmVhci1ncmFkaWVudCgjMzM3YWI3LCAjMzM3YWI3KSwgbGluZWFyLWdyYWRpZW50KCNEMkQyRDIsICNEMkQyRDIpO1xuICBiYWNrZ3JvdW5kLXNpemU6IDAgMnB4LCAxMDAlIDFweDtcbiAgYmFja2dyb3VuZC1yZXBlYXQ6IG5vLXJlcGVhdDtcbiAgYmFja2dyb3VuZC1wb3NpdGlvbjogY2VudGVyIGJvdHRvbSwgY2VudGVyIGNhbGMoMTAwJSAtIDFweCk7XG4gIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xuICB0cmFuc2l0aW9uOiBiYWNrZ3JvdW5kIDBzIGVhc2Utb3V0O1xuICBmbG9hdDogbm9uZTtcbiAgYm94LXNoYWRvdzogbm9uZTtcbiAgYm9yZGVyLXJhZGl1czogMDsgfVxuICAuZm9ybS1jb250cm9sOjotbW96LXBsYWNlaG9sZGVyLFxuICAuZm9ybS1ncm91cCAuZm9ybS1jb250cm9sOjotbW96LXBsYWNlaG9sZGVyIHtcbiAgICBjb2xvcjogI0JEQkRCRDtcbiAgICBmb250LXdlaWdodDogNDAwOyB9XG4gIC5mb3JtLWNvbnRyb2w6LW1zLWlucHV0LXBsYWNlaG9sZGVyLFxuICAuZm9ybS1ncm91cCAuZm9ybS1jb250cm9sOi1tcy1pbnB1dC1wbGFjZWhvbGRlciB7XG4gICAgY29sb3I6ICNCREJEQkQ7XG4gICAgZm9udC13ZWlnaHQ6IDQwMDsgfVxuICAuZm9ybS1jb250cm9sOjotd2Via2l0LWlucHV0LXBsYWNlaG9sZGVyLFxuICAuZm9ybS1ncm91cCAuZm9ybS1jb250cm9sOjotd2Via2l0LWlucHV0LXBsYWNlaG9sZGVyIHtcbiAgICBjb2xvcjogI0JEQkRCRDtcbiAgICBmb250LXdlaWdodDogNDAwOyB9XG4gIC5mb3JtLWNvbnRyb2xbcmVhZG9ubHldLCAuZm9ybS1jb250cm9sW2Rpc2FibGVkXSxcbiAgZmllbGRzZXRbZGlzYWJsZWRdIC5mb3JtLWNvbnRyb2wsXG4gIC5mb3JtLWdyb3VwIC5mb3JtLWNvbnRyb2xbcmVhZG9ubHldLFxuICAuZm9ybS1ncm91cCAuZm9ybS1jb250cm9sW2Rpc2FibGVkXSxcbiAgZmllbGRzZXRbZGlzYWJsZWRdXG4gIC5mb3JtLWdyb3VwIC5mb3JtLWNvbnRyb2wge1xuICAgIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50OyB9XG4gIC5mb3JtLWNvbnRyb2xbZGlzYWJsZWRdLFxuICBmaWVsZHNldFtkaXNhYmxlZF0gLmZvcm0tY29udHJvbCxcbiAgLmZvcm0tZ3JvdXAgLmZvcm0tY29udHJvbFtkaXNhYmxlZF0sXG4gIGZpZWxkc2V0W2Rpc2FibGVkXVxuICAuZm9ybS1ncm91cCAuZm9ybS1jb250cm9sIHtcbiAgICBiYWNrZ3JvdW5kLWltYWdlOiBub25lO1xuICAgIGJvcmRlci1ib3R0b206IDFweCBkb3R0ZWQgI0QyRDJEMjsgfVxuXG4uZm9ybS1ncm91cCB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTsgfVxuICAuZm9ybS1ncm91cC5sYWJlbC1zdGF0aWMgbGFiZWwuY29udHJvbC1sYWJlbCwgLmZvcm0tZ3JvdXAubGFiZWwtcGxhY2Vob2xkZXIgbGFiZWwuY29udHJvbC1sYWJlbCwgLmZvcm0tZ3JvdXAubGFiZWwtZmxvYXRpbmcgbGFiZWwuY29udHJvbC1sYWJlbCB7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIHBvaW50ZXItZXZlbnRzOiBub25lO1xuICAgIHRyYW5zaXRpb246IDAuM3MgZWFzZSBhbGw7IH1cbiAgLmZvcm0tZ3JvdXAubGFiZWwtZmxvYXRpbmcgbGFiZWwuY29udHJvbC1sYWJlbCB7XG4gICAgd2lsbC1jaGFuZ2U6IGxlZnQsIHRvcCwgY29udGVudHM7IH1cbiAgLmZvcm0tZ3JvdXAubGFiZWwtcGxhY2Vob2xkZXI6bm90KC5pcy1lbXB0eSkgbGFiZWwuY29udHJvbC1sYWJlbCB7XG4gICAgZGlzcGxheTogbm9uZTsgfVxuICAuZm9ybS1ncm91cCAuaGVscC1ibG9jayB7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIGRpc3BsYXk6IG5vbmU7IH1cbiAgLmZvcm0tZ3JvdXAuaXMtZm9jdXNlZCAuZm9ybS1jb250cm9sIHtcbiAgICBvdXRsaW5lOiBub25lO1xuICAgIGJhY2tncm91bmQtaW1hZ2U6IGxpbmVhci1ncmFkaWVudCgjMzM3YWI3LCAjMzM3YWI3KSwgbGluZWFyLWdyYWRpZW50KCNEMkQyRDIsICNEMkQyRDIpO1xuICAgIGJhY2tncm91bmQtc2l6ZTogMTAwJSAycHgsIDEwMCUgMXB4O1xuICAgIGJveC1zaGFkb3c6IG5vbmU7XG4gICAgdHJhbnNpdGlvbi1kdXJhdGlvbjogMC4zczsgfVxuICAgIC5mb3JtLWdyb3VwLmlzLWZvY3VzZWQgLmZvcm0tY29udHJvbCAubWF0ZXJpYWwtaW5wdXQ6YWZ0ZXIge1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogIzMzN2FiNzsgfVxuICAuZm9ybS1ncm91cC5pcy1mb2N1c2VkIGxhYmVsLFxuICAuZm9ybS1ncm91cC5pcy1mb2N1c2VkIGxhYmVsLmNvbnRyb2wtbGFiZWwge1xuICAgIGNvbG9yOiAjMzM3YWI3OyB9XG4gIC5mb3JtLWdyb3VwLmlzLWZvY3VzZWQubGFiZWwtcGxhY2Vob2xkZXIgbGFiZWwsXG4gIC5mb3JtLWdyb3VwLmlzLWZvY3VzZWQubGFiZWwtcGxhY2Vob2xkZXIgbGFiZWwuY29udHJvbC1sYWJlbCB7XG4gICAgY29sb3I6ICNCREJEQkQ7IH1cbiAgLmZvcm0tZ3JvdXAuaXMtZm9jdXNlZCAuaGVscC1ibG9jayB7XG4gICAgZGlzcGxheTogYmxvY2s7IH1cbiAgLmZvcm0tZ3JvdXAuaGFzLXdhcm5pbmcgLmZvcm0tY29udHJvbCB7XG4gICAgYm94LXNoYWRvdzogbm9uZTsgfVxuICAuZm9ybS1ncm91cC5oYXMtd2FybmluZy5pcy1mb2N1c2VkIC5mb3JtLWNvbnRyb2wge1xuICAgIGJhY2tncm91bmQtaW1hZ2U6IGxpbmVhci1ncmFkaWVudCgjZjBhZDRlLCAjZjBhZDRlKSwgbGluZWFyLWdyYWRpZW50KCNEMkQyRDIsICNEMkQyRDIpOyB9XG4gIC5mb3JtLWdyb3VwLmhhcy13YXJuaW5nIGxhYmVsLmNvbnRyb2wtbGFiZWwsXG4gIC5mb3JtLWdyb3VwLmhhcy13YXJuaW5nIC5oZWxwLWJsb2NrIHtcbiAgICBjb2xvcjogI2YwYWQ0ZTsgfVxuICAuZm9ybS1ncm91cC5oYXMtZXJyb3IgLmZvcm0tY29udHJvbCB7XG4gICAgYm94LXNoYWRvdzogbm9uZTsgfVxuICAuZm9ybS1ncm91cC5oYXMtZXJyb3IuaXMtZm9jdXNlZCAuZm9ybS1jb250cm9sIHtcbiAgICBiYWNrZ3JvdW5kLWltYWdlOiBsaW5lYXItZ3JhZGllbnQoI2Q5NTM0ZiwgI2Q5NTM0ZiksIGxpbmVhci1ncmFkaWVudCgjRDJEMkQyLCAjRDJEMkQyKTsgfVxuICAuZm9ybS1ncm91cC5oYXMtZXJyb3IgbGFiZWwuY29udHJvbC1sYWJlbCxcbiAgLmZvcm0tZ3JvdXAuaGFzLWVycm9yIC5oZWxwLWJsb2NrIHtcbiAgICBjb2xvcjogI2Q5NTM0ZjsgfVxuICAuZm9ybS1ncm91cC5oYXMtc3VjY2VzcyAuZm9ybS1jb250cm9sIHtcbiAgICBib3gtc2hhZG93OiBub25lOyB9XG4gIC5mb3JtLWdyb3VwLmhhcy1zdWNjZXNzLmlzLWZvY3VzZWQgLmZvcm0tY29udHJvbCB7XG4gICAgYmFja2dyb3VuZC1pbWFnZTogbGluZWFyLWdyYWRpZW50KCM1Y2I4NWMsICM1Y2I4NWMpLCBsaW5lYXItZ3JhZGllbnQoI0QyRDJEMiwgI0QyRDJEMik7IH1cbiAgLmZvcm0tZ3JvdXAuaGFzLXN1Y2Nlc3MgbGFiZWwuY29udHJvbC1sYWJlbCxcbiAgLmZvcm0tZ3JvdXAuaGFzLXN1Y2Nlc3MgLmhlbHAtYmxvY2sge1xuICAgIGNvbG9yOiAjNWNiODVjOyB9XG4gIC5mb3JtLWdyb3VwLmhhcy1pbmZvIC5mb3JtLWNvbnRyb2wge1xuICAgIGJveC1zaGFkb3c6IG5vbmU7IH1cbiAgLmZvcm0tZ3JvdXAuaGFzLWluZm8uaXMtZm9jdXNlZCAuZm9ybS1jb250cm9sIHtcbiAgICBiYWNrZ3JvdW5kLWltYWdlOiBsaW5lYXItZ3JhZGllbnQoIzViYzBkZSwgIzViYzBkZSksIGxpbmVhci1ncmFkaWVudCgjRDJEMkQyLCAjRDJEMkQyKTsgfVxuICAuZm9ybS1ncm91cC5oYXMtaW5mbyBsYWJlbC5jb250cm9sLWxhYmVsLFxuICAuZm9ybS1ncm91cC5oYXMtaW5mbyAuaGVscC1ibG9jayB7XG4gICAgY29sb3I6ICM1YmMwZGU7IH1cbiAgLmZvcm0tZ3JvdXAgdGV4dGFyZWEge1xuICAgIHJlc2l6ZTogbm9uZTsgfVxuICAgIC5mb3JtLWdyb3VwIHRleHRhcmVhIH4gLmZvcm0tY29udHJvbC1oaWdobGlnaHQge1xuICAgICAgbWFyZ2luLXRvcDogLTExcHg7IH1cbiAgLmZvcm0tZ3JvdXAgc2VsZWN0IHtcbiAgICBhcHBlYXJhbmNlOiBub25lOyB9XG4gICAgLmZvcm0tZ3JvdXAgc2VsZWN0IH4gLm1hdGVyaWFsLWlucHV0OmFmdGVyIHtcbiAgICAgIGRpc3BsYXk6IG5vbmU7IH1cblxuLmZvcm0tY29udHJvbCB7XG4gIG1hcmdpbi1ib3R0b206IDdweDsgfVxuICAuZm9ybS1jb250cm9sOjotbW96LXBsYWNlaG9sZGVyIHtcbiAgICBmb250LXNpemU6IDE2cHg7XG4gICAgbGluZS1oZWlnaHQ6IDEuNDI4NTc7XG4gICAgY29sb3I6ICNCREJEQkQ7XG4gICAgZm9udC13ZWlnaHQ6IDQwMDsgfVxuICAuZm9ybS1jb250cm9sOi1tcy1pbnB1dC1wbGFjZWhvbGRlciB7XG4gICAgZm9udC1zaXplOiAxNnB4O1xuICAgIGxpbmUtaGVpZ2h0OiAxLjQyODU3O1xuICAgIGNvbG9yOiAjQkRCREJEO1xuICAgIGZvbnQtd2VpZ2h0OiA0MDA7IH1cbiAgLmZvcm0tY29udHJvbDo6LXdlYmtpdC1pbnB1dC1wbGFjZWhvbGRlciB7XG4gICAgZm9udC1zaXplOiAxNnB4O1xuICAgIGxpbmUtaGVpZ2h0OiAxLjQyODU3O1xuICAgIGNvbG9yOiAjQkRCREJEO1xuICAgIGZvbnQtd2VpZ2h0OiA0MDA7IH1cblxuLmNoZWNrYm94IGxhYmVsLFxuLnJhZGlvIGxhYmVsLFxubGFiZWwge1xuICBmb250LXNpemU6IDE2cHg7XG4gIGxpbmUtaGVpZ2h0OiAxLjQyODU3O1xuICBjb2xvcjogI0JEQkRCRDtcbiAgZm9udC13ZWlnaHQ6IDQwMDsgfVxuXG5sYWJlbC5jb250cm9sLWxhYmVsIHtcbiAgZm9udC1zaXplOiAxMnB4O1xuICBsaW5lLWhlaWdodDogMS4wNzE0MztcbiAgY29sb3I6ICNCREJEQkQ7XG4gIGZvbnQtd2VpZ2h0OiA0MDA7XG4gIG1hcmdpbjogMTZweCAwIDAgMDsgfVxuXG4uaGVscC1ibG9jayB7XG4gIG1hcmdpbi10b3A6IDA7XG4gIGZvbnQtc2l6ZTogMTJweDsgfVxuXG4uZm9ybS1ncm91cCB7XG4gIHBhZGRpbmctYm90dG9tOiA3cHg7XG4gIG1hcmdpbjogMjhweCAwIDAgMDsgfVxuICAuZm9ybS1ncm91cCAuZm9ybS1jb250cm9sIHtcbiAgICBtYXJnaW4tYm90dG9tOiA3cHg7IH1cbiAgICAuZm9ybS1ncm91cCAuZm9ybS1jb250cm9sOjotbW96LXBsYWNlaG9sZGVyIHtcbiAgICAgIGZvbnQtc2l6ZTogMTZweDtcbiAgICAgIGxpbmUtaGVpZ2h0OiAxLjQyODU3O1xuICAgICAgY29sb3I6ICNCREJEQkQ7XG4gICAgICBmb250LXdlaWdodDogNDAwOyB9XG4gICAgLmZvcm0tZ3JvdXAgLmZvcm0tY29udHJvbDotbXMtaW5wdXQtcGxhY2Vob2xkZXIge1xuICAgICAgZm9udC1zaXplOiAxNnB4O1xuICAgICAgbGluZS1oZWlnaHQ6IDEuNDI4NTc7XG4gICAgICBjb2xvcjogI0JEQkRCRDtcbiAgICAgIGZvbnQtd2VpZ2h0OiA0MDA7IH1cbiAgICAuZm9ybS1ncm91cCAuZm9ybS1jb250cm9sOjotd2Via2l0LWlucHV0LXBsYWNlaG9sZGVyIHtcbiAgICAgIGZvbnQtc2l6ZTogMTZweDtcbiAgICAgIGxpbmUtaGVpZ2h0OiAxLjQyODU3O1xuICAgICAgY29sb3I6ICNCREJEQkQ7XG4gICAgICBmb250LXdlaWdodDogNDAwOyB9XG4gIC5mb3JtLWdyb3VwIC5jaGVja2JveCBsYWJlbCxcbiAgLmZvcm0tZ3JvdXAgLnJhZGlvIGxhYmVsLFxuICAuZm9ybS1ncm91cCBsYWJlbCB7XG4gICAgZm9udC1zaXplOiAxNnB4O1xuICAgIGxpbmUtaGVpZ2h0OiAxLjQyODU3O1xuICAgIGNvbG9yOiAjQkRCREJEO1xuICAgIGZvbnQtd2VpZ2h0OiA0MDA7IH1cbiAgLmZvcm0tZ3JvdXAgbGFiZWwuY29udHJvbC1sYWJlbCB7XG4gICAgZm9udC1zaXplOiAxMnB4O1xuICAgIGxpbmUtaGVpZ2h0OiAxLjA3MTQzO1xuICAgIGNvbG9yOiAjQkRCREJEO1xuICAgIGZvbnQtd2VpZ2h0OiA0MDA7XG4gICAgbWFyZ2luOiAxNnB4IDAgMCAwOyB9XG4gIC5mb3JtLWdyb3VwIC5oZWxwLWJsb2NrIHtcbiAgICBtYXJnaW4tdG9wOiAwO1xuICAgIGZvbnQtc2l6ZTogMTJweDsgfVxuICAuZm9ybS1ncm91cC5sYWJlbC1mbG9hdGluZyBsYWJlbC5jb250cm9sLWxhYmVsLCAuZm9ybS1ncm91cC5sYWJlbC1wbGFjZWhvbGRlciBsYWJlbC5jb250cm9sLWxhYmVsIHtcbiAgICB0b3A6IC03cHg7XG4gICAgZm9udC1zaXplOiAxNnB4O1xuICAgIGxpbmUtaGVpZ2h0OiAxLjQyODU3OyB9XG4gIC5mb3JtLWdyb3VwLmxhYmVsLXN0YXRpYyBsYWJlbC5jb250cm9sLWxhYmVsLCAuZm9ybS1ncm91cC5sYWJlbC1mbG9hdGluZy5pcy1mb2N1c2VkIGxhYmVsLmNvbnRyb2wtbGFiZWwsIC5mb3JtLWdyb3VwLmxhYmVsLWZsb2F0aW5nOm5vdCguaXMtZW1wdHkpIGxhYmVsLmNvbnRyb2wtbGFiZWwge1xuICAgIHRvcDogLTMwcHg7XG4gICAgbGVmdDogMDtcbiAgICBmb250LXNpemU6IDEycHg7XG4gICAgbGluZS1oZWlnaHQ6IDEuMDcxNDM7IH1cbiAgLmZvcm0tZ3JvdXAubGFiZWwtZmxvYXRpbmcgaW5wdXQuZm9ybS1jb250cm9sOi13ZWJraXQtYXV0b2ZpbGwgfiBsYWJlbC5jb250cm9sLWxhYmVsIGxhYmVsLmNvbnRyb2wtbGFiZWwge1xuICAgIHRvcDogLTMwcHg7XG4gICAgbGVmdDogMDtcbiAgICBmb250LXNpemU6IDEycHg7XG4gICAgbGluZS1oZWlnaHQ6IDEuMDcxNDM7IH1cblxuLmZvcm0tZ3JvdXAuZm9ybS1ncm91cC1zbSB7XG4gIHBhZGRpbmctYm90dG9tOiAzcHg7XG4gIG1hcmdpbjogMjFweCAwIDAgMDsgfVxuICAuZm9ybS1ncm91cC5mb3JtLWdyb3VwLXNtIC5mb3JtLWNvbnRyb2wge1xuICAgIG1hcmdpbi1ib3R0b206IDNweDsgfVxuICAgIC5mb3JtLWdyb3VwLmZvcm0tZ3JvdXAtc20gLmZvcm0tY29udHJvbDo6LW1vei1wbGFjZWhvbGRlciB7XG4gICAgICBmb250LXNpemU6IDExcHg7XG4gICAgICBsaW5lLWhlaWdodDogMS41O1xuICAgICAgY29sb3I6ICNCREJEQkQ7XG4gICAgICBmb250LXdlaWdodDogNDAwOyB9XG4gICAgLmZvcm0tZ3JvdXAuZm9ybS1ncm91cC1zbSAuZm9ybS1jb250cm9sOi1tcy1pbnB1dC1wbGFjZWhvbGRlciB7XG4gICAgICBmb250LXNpemU6IDExcHg7XG4gICAgICBsaW5lLWhlaWdodDogMS41O1xuICAgICAgY29sb3I6ICNCREJEQkQ7XG4gICAgICBmb250LXdlaWdodDogNDAwOyB9XG4gICAgLmZvcm0tZ3JvdXAuZm9ybS1ncm91cC1zbSAuZm9ybS1jb250cm9sOjotd2Via2l0LWlucHV0LXBsYWNlaG9sZGVyIHtcbiAgICAgIGZvbnQtc2l6ZTogMTFweDtcbiAgICAgIGxpbmUtaGVpZ2h0OiAxLjU7XG4gICAgICBjb2xvcjogI0JEQkRCRDtcbiAgICAgIGZvbnQtd2VpZ2h0OiA0MDA7IH1cbiAgLmZvcm0tZ3JvdXAuZm9ybS1ncm91cC1zbSAuY2hlY2tib3ggbGFiZWwsXG4gIC5mb3JtLWdyb3VwLmZvcm0tZ3JvdXAtc20gLnJhZGlvIGxhYmVsLFxuICAuZm9ybS1ncm91cC5mb3JtLWdyb3VwLXNtIGxhYmVsIHtcbiAgICBmb250LXNpemU6IDExcHg7XG4gICAgbGluZS1oZWlnaHQ6IDEuNTtcbiAgICBjb2xvcjogI0JEQkRCRDtcbiAgICBmb250LXdlaWdodDogNDAwOyB9XG4gIC5mb3JtLWdyb3VwLmZvcm0tZ3JvdXAtc20gbGFiZWwuY29udHJvbC1sYWJlbCB7XG4gICAgZm9udC1zaXplOiA5cHg7XG4gICAgbGluZS1oZWlnaHQ6IDEuMTI1O1xuICAgIGNvbG9yOiAjQkRCREJEO1xuICAgIGZvbnQtd2VpZ2h0OiA0MDA7XG4gICAgbWFyZ2luOiAxNnB4IDAgMCAwOyB9XG4gIC5mb3JtLWdyb3VwLmZvcm0tZ3JvdXAtc20gLmhlbHAtYmxvY2sge1xuICAgIG1hcmdpbi10b3A6IDA7XG4gICAgZm9udC1zaXplOiA5cHg7IH1cbiAgLmZvcm0tZ3JvdXAuZm9ybS1ncm91cC1zbS5sYWJlbC1mbG9hdGluZyBsYWJlbC5jb250cm9sLWxhYmVsLCAuZm9ybS1ncm91cC5mb3JtLWdyb3VwLXNtLmxhYmVsLXBsYWNlaG9sZGVyIGxhYmVsLmNvbnRyb2wtbGFiZWwge1xuICAgIHRvcDogLTExcHg7XG4gICAgZm9udC1zaXplOiAxMXB4O1xuICAgIGxpbmUtaGVpZ2h0OiAxLjU7IH1cbiAgLmZvcm0tZ3JvdXAuZm9ybS1ncm91cC1zbS5sYWJlbC1zdGF0aWMgbGFiZWwuY29udHJvbC1sYWJlbCwgLmZvcm0tZ3JvdXAuZm9ybS1ncm91cC1zbS5sYWJlbC1mbG9hdGluZy5pcy1mb2N1c2VkIGxhYmVsLmNvbnRyb2wtbGFiZWwsIC5mb3JtLWdyb3VwLmZvcm0tZ3JvdXAtc20ubGFiZWwtZmxvYXRpbmc6bm90KC5pcy1lbXB0eSkgbGFiZWwuY29udHJvbC1sYWJlbCB7XG4gICAgdG9wOiAtMjVweDtcbiAgICBsZWZ0OiAwO1xuICAgIGZvbnQtc2l6ZTogOXB4O1xuICAgIGxpbmUtaGVpZ2h0OiAxLjEyNTsgfVxuICAuZm9ybS1ncm91cC5mb3JtLWdyb3VwLXNtLmxhYmVsLWZsb2F0aW5nIGlucHV0LmZvcm0tY29udHJvbDotd2Via2l0LWF1dG9maWxsIH4gbGFiZWwuY29udHJvbC1sYWJlbCBsYWJlbC5jb250cm9sLWxhYmVsIHtcbiAgICB0b3A6IC0yNXB4O1xuICAgIGxlZnQ6IDA7XG4gICAgZm9udC1zaXplOiA5cHg7XG4gICAgbGluZS1oZWlnaHQ6IDEuMTI1OyB9XG5cbi5mb3JtLWdyb3VwLmZvcm0tZ3JvdXAtbGcge1xuICBwYWRkaW5nLWJvdHRvbTogOXB4O1xuICBtYXJnaW46IDMwcHggMCAwIDA7IH1cbiAgLmZvcm0tZ3JvdXAuZm9ybS1ncm91cC1sZyAuZm9ybS1jb250cm9sIHtcbiAgICBtYXJnaW4tYm90dG9tOiA5cHg7IH1cbiAgICAuZm9ybS1ncm91cC5mb3JtLWdyb3VwLWxnIC5mb3JtLWNvbnRyb2w6Oi1tb3otcGxhY2Vob2xkZXIge1xuICAgICAgZm9udC1zaXplOiAxOHB4O1xuICAgICAgbGluZS1oZWlnaHQ6IDEuMzMzMzM7XG4gICAgICBjb2xvcjogI0JEQkRCRDtcbiAgICAgIGZvbnQtd2VpZ2h0OiA0MDA7IH1cbiAgICAuZm9ybS1ncm91cC5mb3JtLWdyb3VwLWxnIC5mb3JtLWNvbnRyb2w6LW1zLWlucHV0LXBsYWNlaG9sZGVyIHtcbiAgICAgIGZvbnQtc2l6ZTogMThweDtcbiAgICAgIGxpbmUtaGVpZ2h0OiAxLjMzMzMzO1xuICAgICAgY29sb3I6ICNCREJEQkQ7XG4gICAgICBmb250LXdlaWdodDogNDAwOyB9XG4gICAgLmZvcm0tZ3JvdXAuZm9ybS1ncm91cC1sZyAuZm9ybS1jb250cm9sOjotd2Via2l0LWlucHV0LXBsYWNlaG9sZGVyIHtcbiAgICAgIGZvbnQtc2l6ZTogMThweDtcbiAgICAgIGxpbmUtaGVpZ2h0OiAxLjMzMzMzO1xuICAgICAgY29sb3I6ICNCREJEQkQ7XG4gICAgICBmb250LXdlaWdodDogNDAwOyB9XG4gIC5mb3JtLWdyb3VwLmZvcm0tZ3JvdXAtbGcgLmNoZWNrYm94IGxhYmVsLFxuICAuZm9ybS1ncm91cC5mb3JtLWdyb3VwLWxnIC5yYWRpbyBsYWJlbCxcbiAgLmZvcm0tZ3JvdXAuZm9ybS1ncm91cC1sZyBsYWJlbCB7XG4gICAgZm9udC1zaXplOiAxOHB4O1xuICAgIGxpbmUtaGVpZ2h0OiAxLjMzMzMzO1xuICAgIGNvbG9yOiAjQkRCREJEO1xuICAgIGZvbnQtd2VpZ2h0OiA0MDA7IH1cbiAgLmZvcm0tZ3JvdXAuZm9ybS1ncm91cC1sZyBsYWJlbC5jb250cm9sLWxhYmVsIHtcbiAgICBmb250LXNpemU6IDE0cHg7XG4gICAgbGluZS1oZWlnaHQ6IDEuMDtcbiAgICBjb2xvcjogI0JEQkRCRDtcbiAgICBmb250LXdlaWdodDogNDAwO1xuICAgIG1hcmdpbjogMTZweCAwIDAgMDsgfVxuICAuZm9ybS1ncm91cC5mb3JtLWdyb3VwLWxnIC5oZWxwLWJsb2NrIHtcbiAgICBtYXJnaW4tdG9wOiAwO1xuICAgIGZvbnQtc2l6ZTogMTRweDsgfVxuICAuZm9ybS1ncm91cC5mb3JtLWdyb3VwLWxnLmxhYmVsLWZsb2F0aW5nIGxhYmVsLmNvbnRyb2wtbGFiZWwsIC5mb3JtLWdyb3VwLmZvcm0tZ3JvdXAtbGcubGFiZWwtcGxhY2Vob2xkZXIgbGFiZWwuY29udHJvbC1sYWJlbCB7XG4gICAgdG9wOiAtNXB4O1xuICAgIGZvbnQtc2l6ZTogMThweDtcbiAgICBsaW5lLWhlaWdodDogMS4zMzMzMzsgfVxuICAuZm9ybS1ncm91cC5mb3JtLWdyb3VwLWxnLmxhYmVsLXN0YXRpYyBsYWJlbC5jb250cm9sLWxhYmVsLCAuZm9ybS1ncm91cC5mb3JtLWdyb3VwLWxnLmxhYmVsLWZsb2F0aW5nLmlzLWZvY3VzZWQgbGFiZWwuY29udHJvbC1sYWJlbCwgLmZvcm0tZ3JvdXAuZm9ybS1ncm91cC1sZy5sYWJlbC1mbG9hdGluZzpub3QoLmlzLWVtcHR5KSBsYWJlbC5jb250cm9sLWxhYmVsIHtcbiAgICB0b3A6IC0zMnB4O1xuICAgIGxlZnQ6IDA7XG4gICAgZm9udC1zaXplOiAxNHB4O1xuICAgIGxpbmUtaGVpZ2h0OiAxLjA7IH1cbiAgLmZvcm0tZ3JvdXAuZm9ybS1ncm91cC1sZy5sYWJlbC1mbG9hdGluZyBpbnB1dC5mb3JtLWNvbnRyb2w6LXdlYmtpdC1hdXRvZmlsbCB+IGxhYmVsLmNvbnRyb2wtbGFiZWwgbGFiZWwuY29udHJvbC1sYWJlbCB7XG4gICAgdG9wOiAtMzJweDtcbiAgICBsZWZ0OiAwO1xuICAgIGZvbnQtc2l6ZTogMTRweDtcbiAgICBsaW5lLWhlaWdodDogMS4wOyB9XG5cbnNlbGVjdC5mb3JtLWNvbnRyb2wge1xuICBib3JkZXI6IDA7XG4gIGJveC1zaGFkb3c6IG5vbmU7XG4gIGJvcmRlci1yYWRpdXM6IDA7IH1cbiAgLmZvcm0tZ3JvdXAuaXMtZm9jdXNlZCBzZWxlY3QuZm9ybS1jb250cm9sIHtcbiAgICBib3gtc2hhZG93OiBub25lO1xuICAgIGJvcmRlci1jb2xvcjogI0QyRDJEMjsgfVxuICBzZWxlY3QuZm9ybS1jb250cm9sW211bHRpcGxlXSxcbiAgLmZvcm0tZ3JvdXAuaXMtZm9jdXNlZCBzZWxlY3QuZm9ybS1jb250cm9sW211bHRpcGxlXSB7XG4gICAgaGVpZ2h0OiA4NXB4OyB9XG5cbi5pbnB1dC1ncm91cC1idG4gLmJ0biB7XG4gIG1hcmdpbjogMCAwIDdweCAwOyB9XG5cbi5mb3JtLWdyb3VwLmZvcm0tZ3JvdXAtc20gLmlucHV0LWdyb3VwLWJ0biAuYnRuIHtcbiAgbWFyZ2luOiAwIDAgM3B4IDA7IH1cblxuLmZvcm0tZ3JvdXAuZm9ybS1ncm91cC1sZyAuaW5wdXQtZ3JvdXAtYnRuIC5idG4ge1xuICBtYXJnaW46IDAgMCA5cHggMDsgfVxuXG4uaW5wdXQtZ3JvdXAgLmlucHV0LWdyb3VwLWJ0biB7XG4gIHBhZGRpbmc6IDAgMTJweDsgfVxuXG4uaW5wdXQtZ3JvdXAgLmlucHV0LWdyb3VwLWFkZG9uIHtcbiAgYm9yZGVyOiAwO1xuICBiYWNrZ3JvdW5kOiB0cmFuc3BhcmVudDsgfVxuXG4uZm9ybS1ncm91cCBpbnB1dFt0eXBlPWZpbGVdIHtcbiAgb3BhY2l0eTogMDtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB0b3A6IDA7XG4gIHJpZ2h0OiAwO1xuICBib3R0b206IDA7XG4gIGxlZnQ6IDA7XG4gIHdpZHRoOiAxMDAlO1xuICBoZWlnaHQ6IDEwMCU7XG4gIHotaW5kZXg6IDEwMDsgfVxuXG5sZWdlbmQge1xuICBib3JkZXItYm90dG9tOiAwOyB9XG5cbi5saXN0LWdyb3VwIHtcbiAgYm9yZGVyLXJhZGl1czogMDsgfVxuICAubGlzdC1ncm91cCAubGlzdC1ncm91cC1pdGVtIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcbiAgICBvdmVyZmxvdzogaGlkZGVuO1xuICAgIGJvcmRlcjogMDtcbiAgICBib3JkZXItcmFkaXVzOiAwO1xuICAgIHBhZGRpbmc6IDAgMTZweDsgfVxuICAgIC5saXN0LWdyb3VwIC5saXN0LWdyb3VwLWl0ZW0uYmFzZWxpbmUge1xuICAgICAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkICNjZWNlY2U7IH1cbiAgICAgIC5saXN0LWdyb3VwIC5saXN0LWdyb3VwLWl0ZW0uYmFzZWxpbmU6bGFzdC1jaGlsZCB7XG4gICAgICAgIGJvcmRlci1ib3R0b206IG5vbmU7IH1cbiAgICAubGlzdC1ncm91cCAubGlzdC1ncm91cC1pdGVtIC5yb3ctcGljdHVyZSwgLmxpc3QtZ3JvdXAgLmxpc3QtZ3JvdXAtaXRlbSAucm93LWFjdGlvbi1wcmltYXJ5IHtcbiAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICAgIHBhZGRpbmctcmlnaHQ6IDE2cHg7IH1cbiAgICAgIC5saXN0LWdyb3VwIC5saXN0LWdyb3VwLWl0ZW0gLnJvdy1waWN0dXJlIGltZywgLmxpc3QtZ3JvdXAgLmxpc3QtZ3JvdXAtaXRlbSAucm93LXBpY3R1cmUgaSwgLmxpc3QtZ3JvdXAgLmxpc3QtZ3JvdXAtaXRlbSAucm93LXBpY3R1cmUgbGFiZWwsIC5saXN0LWdyb3VwIC5saXN0LWdyb3VwLWl0ZW0gLnJvdy1hY3Rpb24tcHJpbWFyeSBpbWcsIC5saXN0LWdyb3VwIC5saXN0LWdyb3VwLWl0ZW0gLnJvdy1hY3Rpb24tcHJpbWFyeSBpLCAubGlzdC1ncm91cCAubGlzdC1ncm91cC1pdGVtIC5yb3ctYWN0aW9uLXByaW1hcnkgbGFiZWwge1xuICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgd2lkdGg6IDU2cHg7XG4gICAgICAgIGhlaWdodDogNTZweDsgfVxuICAgICAgLmxpc3QtZ3JvdXAgLmxpc3QtZ3JvdXAtaXRlbSAucm93LXBpY3R1cmUgaW1nLCAubGlzdC1ncm91cCAubGlzdC1ncm91cC1pdGVtIC5yb3ctYWN0aW9uLXByaW1hcnkgaW1nIHtcbiAgICAgICAgYmFja2dyb3VuZDogcmdiYSgwLCAwLCAwLCAwLjEpO1xuICAgICAgICBwYWRkaW5nOiAxcHg7IH1cbiAgICAgICAgLmxpc3QtZ3JvdXAgLmxpc3QtZ3JvdXAtaXRlbSAucm93LXBpY3R1cmUgaW1nLmNpcmNsZSwgLmxpc3QtZ3JvdXAgLmxpc3QtZ3JvdXAtaXRlbSAucm93LWFjdGlvbi1wcmltYXJ5IGltZy5jaXJjbGUge1xuICAgICAgICAgIGJvcmRlci1yYWRpdXM6IDEwMCU7IH1cbiAgICAgIC5saXN0LWdyb3VwIC5saXN0LWdyb3VwLWl0ZW0gLnJvdy1waWN0dXJlIGksIC5saXN0LWdyb3VwIC5saXN0LWdyb3VwLWl0ZW0gLnJvdy1hY3Rpb24tcHJpbWFyeSBpIHtcbiAgICAgICAgYmFja2dyb3VuZDogcmdiYSgwLCAwLCAwLCAwLjI1KTtcbiAgICAgICAgYm9yZGVyLXJhZGl1czogMTAwJTtcbiAgICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgICAgICBsaW5lLWhlaWdodDogNTZweDtcbiAgICAgICAgZm9udC1zaXplOiAyMHB4O1xuICAgICAgICBjb2xvcjogd2hpdGU7IH1cbiAgICAgIC5saXN0LWdyb3VwIC5saXN0LWdyb3VwLWl0ZW0gLnJvdy1waWN0dXJlIGxhYmVsLCAubGlzdC1ncm91cCAubGlzdC1ncm91cC1pdGVtIC5yb3ctYWN0aW9uLXByaW1hcnkgbGFiZWwge1xuICAgICAgICBtYXJnaW4tbGVmdDogN3B4O1xuICAgICAgICBtYXJnaW4tcmlnaHQ6IC03cHg7XG4gICAgICAgIG1hcmdpbi10b3A6IDVweDtcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogLTVweDsgfVxuICAgICAgICAubGlzdC1ncm91cCAubGlzdC1ncm91cC1pdGVtIC5yb3ctcGljdHVyZSBsYWJlbCAuY2hlY2tib3gtbWF0ZXJpYWwsIC5saXN0LWdyb3VwIC5saXN0LWdyb3VwLWl0ZW0gLnJvdy1hY3Rpb24tcHJpbWFyeSBsYWJlbCAuY2hlY2tib3gtbWF0ZXJpYWwge1xuICAgICAgICAgIGxlZnQ6IC0xMHB4OyB9XG4gICAgLmxpc3QtZ3JvdXAgLmxpc3QtZ3JvdXAtaXRlbSAucm93LWNvbnRlbnQge1xuICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgICAgd2lkdGg6IGNhbGMoMTAwJSAtIDkycHgpO1xuICAgICAgbWluLWhlaWdodDogNjZweDsgfVxuICAgICAgLmxpc3QtZ3JvdXAgLmxpc3QtZ3JvdXAtaXRlbSAucm93LWNvbnRlbnQgLmFjdGlvbi1zZWNvbmRhcnkge1xuICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgIHJpZ2h0OiAxNnB4O1xuICAgICAgICB0b3A6IDE2cHg7IH1cbiAgICAgICAgLmxpc3QtZ3JvdXAgLmxpc3QtZ3JvdXAtaXRlbSAucm93LWNvbnRlbnQgLmFjdGlvbi1zZWNvbmRhcnkgaSB7XG4gICAgICAgICAgZm9udC1zaXplOiAyMHB4O1xuICAgICAgICAgIGNvbG9yOiByZ2JhKDAsIDAsIDAsIDAuMjUpO1xuICAgICAgICAgIGN1cnNvcjogcG9pbnRlcjsgfVxuICAgICAgLmxpc3QtZ3JvdXAgLmxpc3QtZ3JvdXAtaXRlbSAucm93LWNvbnRlbnQgLmFjdGlvbi1zZWNvbmRhcnkgfiAqIHtcbiAgICAgICAgbWF4LXdpZHRoOiBjYWxjKDEwMCUgLSAzMHB4KTsgfVxuICAgICAgLmxpc3QtZ3JvdXAgLmxpc3QtZ3JvdXAtaXRlbSAucm93LWNvbnRlbnQgLmxlYXN0LWNvbnRlbnQge1xuICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgIHJpZ2h0OiAxNnB4O1xuICAgICAgICB0b3A6IDA7XG4gICAgICAgIGNvbG9yOiByZ2JhKDAsIDAsIDAsIDAuNTQpO1xuICAgICAgICBmb250LXNpemU6IDE0cHg7IH1cbiAgICAubGlzdC1ncm91cCAubGlzdC1ncm91cC1pdGVtIC5saXN0LWdyb3VwLWl0ZW0taGVhZGluZyB7XG4gICAgICBjb2xvcjogcmdiYSgwLCAwLCAwLCAwLjc3KTtcbiAgICAgIGZvbnQtc2l6ZTogMjBweDtcbiAgICAgIGxpbmUtaGVpZ2h0OiAyOXB4OyB9XG4gIC5saXN0LWdyb3VwIC5saXN0LWdyb3VwLWl0ZW0uYWN0aXZlOmhvdmVyLCAubGlzdC1ncm91cCAubGlzdC1ncm91cC1pdGVtLmFjdGl2ZTpmb2N1cyB7XG4gICAgYmFja2dyb3VuZDogcmdiYSgwLCAwLCAwLCAwLjE1KTtcbiAgICBvdXRsaW5lOiAxMHB4IHNvbGlkIHJnYmEoMCwgMCwgMCwgMC4xNSk7IH1cbiAgLmxpc3QtZ3JvdXAgLmxpc3QtZ3JvdXAtaXRlbS5hY3RpdmUgLmxpc3QtZ3JvdXAtaXRlbS1oZWFkaW5nLCAubGlzdC1ncm91cCAubGlzdC1ncm91cC1pdGVtLmFjdGl2ZSAubGlzdC1ncm91cC1pdGVtLXRleHQge1xuICAgIGNvbG9yOiByZ2JhKDAsMCwwLCAwLjg3KTsgfVxuICAubGlzdC1ncm91cCAubGlzdC1ncm91cC1zZXBhcmF0b3Ige1xuICAgIGNsZWFyOiBib3RoO1xuICAgIG92ZXJmbG93OiBoaWRkZW47XG4gICAgbWFyZ2luLXRvcDogMTBweDtcbiAgICBtYXJnaW4tYm90dG9tOiAxMHB4OyB9XG4gICAgLmxpc3QtZ3JvdXAgLmxpc3QtZ3JvdXAtc2VwYXJhdG9yOmJlZm9yZSB7XG4gICAgICBjb250ZW50OiBcIlwiO1xuICAgICAgd2lkdGg6IGNhbGMoMTAwJSAtIDkwcHgpO1xuICAgICAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkIHJnYmEoMCwgMCwgMCwgMC4xKTtcbiAgICAgIGZsb2F0OiByaWdodDsgfVxuXG4ubmF2YmFyIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogIzMzN2FiNztcbiAgYm9yZGVyOiAwO1xuICBib3JkZXItcmFkaXVzOiAwOyB9XG4gIC5uYXZiYXIgLm5hdmJhci1icmFuZCB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIGhlaWdodDogNjBweDtcbiAgICBsaW5lLWhlaWdodDogMzBweDtcbiAgICBjb2xvcjogaW5oZXJpdDsgfVxuICAgIC5uYXZiYXIgLm5hdmJhci1icmFuZDpob3ZlciwgLm5hdmJhciAubmF2YmFyLWJyYW5kOmZvY3VzIHtcbiAgICAgIGNvbG9yOiBpbmhlcml0O1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7IH1cbiAgLm5hdmJhciAubmF2YmFyLXRleHQge1xuICAgIGNvbG9yOiBpbmhlcml0O1xuICAgIG1hcmdpbi10b3A6IDIwcHg7XG4gICAgbWFyZ2luLWJvdHRvbTogMjBweDsgfVxuICAubmF2YmFyIC5uYXZiYXItbmF2ID4gbGkgPiBhIHtcbiAgICBjb2xvcjogaW5oZXJpdDtcbiAgICBwYWRkaW5nLXRvcDogMjBweDtcbiAgICBwYWRkaW5nLWJvdHRvbTogMjBweDsgfVxuICAgIC5uYXZiYXIgLm5hdmJhci1uYXYgPiBsaSA+IGE6aG92ZXIsIC5uYXZiYXIgLm5hdmJhci1uYXYgPiBsaSA+IGE6Zm9jdXMge1xuICAgICAgY29sb3I6IGluaGVyaXQ7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDsgfVxuICAubmF2YmFyIC5uYXZiYXItbmF2ID4gLmFjdGl2ZSA+IGEsIC5uYXZiYXIgLm5hdmJhci1uYXYgPiAuYWN0aXZlID4gYTpob3ZlciwgLm5hdmJhciAubmF2YmFyLW5hdiA+IC5hY3RpdmUgPiBhOmZvY3VzIHtcbiAgICBjb2xvcjogaW5oZXJpdDtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiByZ2JhKDI1NSwgMjU1LCAyNTUsIDAuMSk7IH1cbiAgLm5hdmJhciAubmF2YmFyLW5hdiA+IC5kaXNhYmxlZCA+IGEsIC5uYXZiYXIgLm5hdmJhci1uYXYgPiAuZGlzYWJsZWQgPiBhOmhvdmVyLCAubmF2YmFyIC5uYXZiYXItbmF2ID4gLmRpc2FibGVkID4gYTpmb2N1cyB7XG4gICAgY29sb3I6IGluaGVyaXQ7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gICAgb3BhY2l0eTogMC45OyB9XG4gIC5uYXZiYXIgLm5hdmJhci10b2dnbGUge1xuICAgIGJvcmRlcjogMDsgfVxuICAgIC5uYXZiYXIgLm5hdmJhci10b2dnbGU6aG92ZXIsIC5uYXZiYXIgLm5hdmJhci10b2dnbGU6Zm9jdXMge1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7IH1cbiAgICAubmF2YmFyIC5uYXZiYXItdG9nZ2xlIC5pY29uLWJhciB7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiBpbmhlcml0O1xuICAgICAgYm9yZGVyOiAxcHggc29saWQ7IH1cbiAgLm5hdmJhciAubmF2YmFyLWRlZmF1bHQgLm5hdmJhci10b2dnbGUsXG4gIC5uYXZiYXIgLm5hdmJhci1pbnZlcnNlIC5uYXZiYXItdG9nZ2xlIHtcbiAgICBib3JkZXItY29sb3I6IHRyYW5zcGFyZW50OyB9XG4gIC5uYXZiYXIgLm5hdmJhci1jb2xsYXBzZSxcbiAgLm5hdmJhciAubmF2YmFyLWZvcm0ge1xuICAgIGJvcmRlci1jb2xvcjogcmdiYSgwLCAwLCAwLCAwLjEpOyB9XG4gIC5uYXZiYXIgLm5hdmJhci1uYXYgPiAub3BlbiA+IGEsIC5uYXZiYXIgLm5hdmJhci1uYXYgPiAub3BlbiA+IGE6aG92ZXIsIC5uYXZiYXIgLm5hdmJhci1uYXYgPiAub3BlbiA+IGE6Zm9jdXMge1xuICAgIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xuICAgIGNvbG9yOiBpbmhlcml0OyB9XG4gIEBtZWRpYSAobWF4LXdpZHRoOiA3NjdweCkge1xuICAgIC5uYXZiYXIgLm5hdmJhci1uYXYgLm5hdmJhci10ZXh0IHtcbiAgICAgIGNvbG9yOiBpbmhlcml0O1xuICAgICAgbWFyZ2luLXRvcDogMTVweDtcbiAgICAgIG1hcmdpbi1ib3R0b206IDE1cHg7IH1cbiAgICAubmF2YmFyIC5uYXZiYXItbmF2IC5vcGVuIC5kcm9wZG93bi1tZW51ID4gLmRyb3Bkb3duLWhlYWRlciB7XG4gICAgICBib3JkZXI6IDA7XG4gICAgICBjb2xvcjogaW5oZXJpdDsgfVxuICAgIC5uYXZiYXIgLm5hdmJhci1uYXYgLm9wZW4gLmRyb3Bkb3duLW1lbnUgLmRpdmlkZXIge1xuICAgICAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkO1xuICAgICAgb3BhY2l0eTogMC4wODsgfVxuICAgIC5uYXZiYXIgLm5hdmJhci1uYXYgLm9wZW4gLmRyb3Bkb3duLW1lbnUgPiBsaSA+IGEge1xuICAgICAgY29sb3I6IGluaGVyaXQ7IH1cbiAgICAgIC5uYXZiYXIgLm5hdmJhci1uYXYgLm9wZW4gLmRyb3Bkb3duLW1lbnUgPiBsaSA+IGE6aG92ZXIsIC5uYXZiYXIgLm5hdmJhci1uYXYgLm9wZW4gLmRyb3Bkb3duLW1lbnUgPiBsaSA+IGE6Zm9jdXMge1xuICAgICAgICBjb2xvcjogaW5oZXJpdDtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7IH1cbiAgICAubmF2YmFyIC5uYXZiYXItbmF2IC5vcGVuIC5kcm9wZG93bi1tZW51ID4gLmFjdGl2ZSA+IGEsIC5uYXZiYXIgLm5hdmJhci1uYXYgLm9wZW4gLmRyb3Bkb3duLW1lbnUgPiAuYWN0aXZlID4gYTpob3ZlciwgLm5hdmJhciAubmF2YmFyLW5hdiAub3BlbiAuZHJvcGRvd24tbWVudSA+IC5hY3RpdmUgPiBhOmZvY3VzIHtcbiAgICAgIGNvbG9yOiBpbmhlcml0O1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7IH1cbiAgICAubmF2YmFyIC5uYXZiYXItbmF2IC5vcGVuIC5kcm9wZG93bi1tZW51ID4gLmRpc2FibGVkID4gYSwgLm5hdmJhciAubmF2YmFyLW5hdiAub3BlbiAuZHJvcGRvd24tbWVudSA+IC5kaXNhYmxlZCA+IGE6aG92ZXIsIC5uYXZiYXIgLm5hdmJhci1uYXYgLm9wZW4gLmRyb3Bkb3duLW1lbnUgPiAuZGlzYWJsZWQgPiBhOmZvY3VzIHtcbiAgICAgIGNvbG9yOiBpbmhlcml0O1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7IH0gfVxuICAubmF2YmFyIC5uYXZiYXItbGluayB7XG4gICAgY29sb3I6IGluaGVyaXQ7IH1cbiAgICAubmF2YmFyIC5uYXZiYXItbGluazpob3ZlciB7XG4gICAgICBjb2xvcjogaW5oZXJpdDsgfVxuICAubmF2YmFyIC5idG4tbGluayB7XG4gICAgY29sb3I6IGluaGVyaXQ7IH1cbiAgICAubmF2YmFyIC5idG4tbGluazpob3ZlciwgLm5hdmJhciAuYnRuLWxpbms6Zm9jdXMge1xuICAgICAgY29sb3I6IGluaGVyaXQ7IH1cbiAgICAubmF2YmFyIC5idG4tbGlua1tkaXNhYmxlZF06aG92ZXIsIC5uYXZiYXIgLmJ0bi1saW5rW2Rpc2FibGVkXTpmb2N1cyxcbiAgICBmaWVsZHNldFtkaXNhYmxlZF0gLm5hdmJhciAuYnRuLWxpbms6aG92ZXIsXG4gICAgZmllbGRzZXRbZGlzYWJsZWRdIC5uYXZiYXIgLmJ0bi1saW5rOmZvY3VzIHtcbiAgICAgIGNvbG9yOiBpbmhlcml0OyB9XG4gIC5uYXZiYXIgLm5hdmJhci1mb3JtIHtcbiAgICBtYXJnaW4tdG9wOiAxNnB4OyB9XG4gICAgLm5hdmJhciAubmF2YmFyLWZvcm0gLmZvcm0tZ3JvdXAge1xuICAgICAgbWFyZ2luOiAwO1xuICAgICAgcGFkZGluZzogMDsgfVxuICAgICAgLm5hdmJhciAubmF2YmFyLWZvcm0gLmZvcm0tZ3JvdXAgLm1hdGVyaWFsLWlucHV0OmJlZm9yZSxcbiAgICAgIC5uYXZiYXIgLm5hdmJhci1mb3JtIC5mb3JtLWdyb3VwLmlzLWZvY3VzZWQgLm1hdGVyaWFsLWlucHV0OmFmdGVyIHtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogaW5oZXJpdDsgfVxuICAgIC5uYXZiYXIgLm5hdmJhci1mb3JtIC5mb3JtLWdyb3VwIC5mb3JtLWNvbnRyb2wsXG4gICAgLm5hdmJhciAubmF2YmFyLWZvcm0gLmZvcm0tY29udHJvbCB7XG4gICAgICBib3JkZXItY29sb3I6IGluaGVyaXQ7XG4gICAgICBjb2xvcjogaW5oZXJpdDtcbiAgICAgIHBhZGRpbmc6IDA7XG4gICAgICBtYXJnaW46IDA7XG4gICAgICBoZWlnaHQ6IDI4cHg7XG4gICAgICBmb250LXNpemU6IDE0cHg7XG4gICAgICBsaW5lLWhlaWdodDogMS40Mjg1NzsgfVxuICAubmF2YmFyLCAubmF2YmFyLm5hdmJhci1kZWZhdWx0IHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjMzM3YWI3O1xuICAgIGNvbG9yOiByZ2JhKDI1NSwyNTUsMjU1LCAwLjg0KTsgfVxuICAgIC5uYXZiYXIgLm5hdmJhci1mb3JtIC5mb3JtLWdyb3VwIGlucHV0LmZvcm0tY29udHJvbDo6LW1vei1wbGFjZWhvbGRlcixcbiAgICAubmF2YmFyIC5uYXZiYXItZm9ybSBpbnB1dC5mb3JtLWNvbnRyb2w6Oi1tb3otcGxhY2Vob2xkZXIsIC5uYXZiYXIubmF2YmFyLWRlZmF1bHQgLm5hdmJhci1mb3JtIC5mb3JtLWdyb3VwIGlucHV0LmZvcm0tY29udHJvbDo6LW1vei1wbGFjZWhvbGRlcixcbiAgICAubmF2YmFyLm5hdmJhci1kZWZhdWx0IC5uYXZiYXItZm9ybSBpbnB1dC5mb3JtLWNvbnRyb2w6Oi1tb3otcGxhY2Vob2xkZXIge1xuICAgICAgY29sb3I6IHJnYmEoMjU1LDI1NSwyNTUsIDAuODQpOyB9XG4gICAgLm5hdmJhciAubmF2YmFyLWZvcm0gLmZvcm0tZ3JvdXAgaW5wdXQuZm9ybS1jb250cm9sOi1tcy1pbnB1dC1wbGFjZWhvbGRlcixcbiAgICAubmF2YmFyIC5uYXZiYXItZm9ybSBpbnB1dC5mb3JtLWNvbnRyb2w6LW1zLWlucHV0LXBsYWNlaG9sZGVyLCAubmF2YmFyLm5hdmJhci1kZWZhdWx0IC5uYXZiYXItZm9ybSAuZm9ybS1ncm91cCBpbnB1dC5mb3JtLWNvbnRyb2w6LW1zLWlucHV0LXBsYWNlaG9sZGVyLFxuICAgIC5uYXZiYXIubmF2YmFyLWRlZmF1bHQgLm5hdmJhci1mb3JtIGlucHV0LmZvcm0tY29udHJvbDotbXMtaW5wdXQtcGxhY2Vob2xkZXIge1xuICAgICAgY29sb3I6IHJnYmEoMjU1LDI1NSwyNTUsIDAuODQpOyB9XG4gICAgLm5hdmJhciAubmF2YmFyLWZvcm0gLmZvcm0tZ3JvdXAgaW5wdXQuZm9ybS1jb250cm9sOjotd2Via2l0LWlucHV0LXBsYWNlaG9sZGVyLFxuICAgIC5uYXZiYXIgLm5hdmJhci1mb3JtIGlucHV0LmZvcm0tY29udHJvbDo6LXdlYmtpdC1pbnB1dC1wbGFjZWhvbGRlciwgLm5hdmJhci5uYXZiYXItZGVmYXVsdCAubmF2YmFyLWZvcm0gLmZvcm0tZ3JvdXAgaW5wdXQuZm9ybS1jb250cm9sOjotd2Via2l0LWlucHV0LXBsYWNlaG9sZGVyLFxuICAgIC5uYXZiYXIubmF2YmFyLWRlZmF1bHQgLm5hdmJhci1mb3JtIGlucHV0LmZvcm0tY29udHJvbDo6LXdlYmtpdC1pbnB1dC1wbGFjZWhvbGRlciB7XG4gICAgICBjb2xvcjogcmdiYSgyNTUsMjU1LDI1NSwgMC44NCk7IH1cbiAgICAubmF2YmFyIC5kcm9wZG93bi1tZW51LCAubmF2YmFyLm5hdmJhci1kZWZhdWx0IC5kcm9wZG93bi1tZW51IHtcbiAgICAgIGJvcmRlci1yYWRpdXM6IDRweDsgfVxuICAgICAgLm5hdmJhciAuZHJvcGRvd24tbWVudSBsaSA+IGEsIC5uYXZiYXIubmF2YmFyLWRlZmF1bHQgLmRyb3Bkb3duLW1lbnUgbGkgPiBhIHtcbiAgICAgICAgZm9udC1zaXplOiAxNnB4O1xuICAgICAgICBwYWRkaW5nOiAxM3B4IDE2cHg7IH1cbiAgICAgICAgLm5hdmJhciAuZHJvcGRvd24tbWVudSBsaSA+IGE6aG92ZXIsIC5uYXZiYXIgLmRyb3Bkb3duLW1lbnUgbGkgPiBhOmZvY3VzLCAubmF2YmFyLm5hdmJhci1kZWZhdWx0IC5kcm9wZG93bi1tZW51IGxpID4gYTpob3ZlciwgLm5hdmJhci5uYXZiYXItZGVmYXVsdCAuZHJvcGRvd24tbWVudSBsaSA+IGE6Zm9jdXMge1xuICAgICAgICAgIGNvbG9yOiAjMzM3YWI3O1xuICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6ICNlZWVlZWU7IH1cbiAgICAgIC5uYXZiYXIgLmRyb3Bkb3duLW1lbnUgLmFjdGl2ZSA+IGEsIC5uYXZiYXIubmF2YmFyLWRlZmF1bHQgLmRyb3Bkb3duLW1lbnUgLmFjdGl2ZSA+IGEge1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjMzM3YWI3O1xuICAgICAgICBjb2xvcjogcmdiYSgyNTUsMjU1LDI1NSwgMC44NCk7IH1cbiAgICAgICAgLm5hdmJhciAuZHJvcGRvd24tbWVudSAuYWN0aXZlID4gYTpob3ZlciwgLm5hdmJhciAuZHJvcGRvd24tbWVudSAuYWN0aXZlID4gYTpmb2N1cywgLm5hdmJhci5uYXZiYXItZGVmYXVsdCAuZHJvcGRvd24tbWVudSAuYWN0aXZlID4gYTpob3ZlciwgLm5hdmJhci5uYXZiYXItZGVmYXVsdCAuZHJvcGRvd24tbWVudSAuYWN0aXZlID4gYTpmb2N1cyB7XG4gICAgICAgICAgY29sb3I6IHJnYmEoMjU1LDI1NSwyNTUsIDAuODQpOyB9XG4gIC5uYXZiYXIubmF2YmFyLWludmVyc2Uge1xuICAgIGJhY2tncm91bmQtY29sb3I6ICMzZjUxYjU7XG4gICAgY29sb3I6ICNmZmZmZmY7IH1cbiAgICAubmF2YmFyLm5hdmJhci1pbnZlcnNlIC5uYXZiYXItZm9ybSAuZm9ybS1ncm91cCBpbnB1dC5mb3JtLWNvbnRyb2w6Oi1tb3otcGxhY2Vob2xkZXIsXG4gICAgLm5hdmJhci5uYXZiYXItaW52ZXJzZSAubmF2YmFyLWZvcm0gaW5wdXQuZm9ybS1jb250cm9sOjotbW96LXBsYWNlaG9sZGVyIHtcbiAgICAgIGNvbG9yOiAjZmZmZmZmOyB9XG4gICAgLm5hdmJhci5uYXZiYXItaW52ZXJzZSAubmF2YmFyLWZvcm0gLmZvcm0tZ3JvdXAgaW5wdXQuZm9ybS1jb250cm9sOi1tcy1pbnB1dC1wbGFjZWhvbGRlcixcbiAgICAubmF2YmFyLm5hdmJhci1pbnZlcnNlIC5uYXZiYXItZm9ybSBpbnB1dC5mb3JtLWNvbnRyb2w6LW1zLWlucHV0LXBsYWNlaG9sZGVyIHtcbiAgICAgIGNvbG9yOiAjZmZmZmZmOyB9XG4gICAgLm5hdmJhci5uYXZiYXItaW52ZXJzZSAubmF2YmFyLWZvcm0gLmZvcm0tZ3JvdXAgaW5wdXQuZm9ybS1jb250cm9sOjotd2Via2l0LWlucHV0LXBsYWNlaG9sZGVyLFxuICAgIC5uYXZiYXIubmF2YmFyLWludmVyc2UgLm5hdmJhci1mb3JtIGlucHV0LmZvcm0tY29udHJvbDo6LXdlYmtpdC1pbnB1dC1wbGFjZWhvbGRlciB7XG4gICAgICBjb2xvcjogI2ZmZmZmZjsgfVxuICAgIC5uYXZiYXIubmF2YmFyLWludmVyc2UgLmRyb3Bkb3duLW1lbnUge1xuICAgICAgYm9yZGVyLXJhZGl1czogNHB4OyB9XG4gICAgICAubmF2YmFyLm5hdmJhci1pbnZlcnNlIC5kcm9wZG93bi1tZW51IGxpID4gYSB7XG4gICAgICAgIGZvbnQtc2l6ZTogMTZweDtcbiAgICAgICAgcGFkZGluZzogMTNweCAxNnB4OyB9XG4gICAgICAgIC5uYXZiYXIubmF2YmFyLWludmVyc2UgLmRyb3Bkb3duLW1lbnUgbGkgPiBhOmhvdmVyLCAubmF2YmFyLm5hdmJhci1pbnZlcnNlIC5kcm9wZG93bi1tZW51IGxpID4gYTpmb2N1cyB7XG4gICAgICAgICAgY29sb3I6ICMzZjUxYjU7XG4gICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogI2VlZWVlZTsgfVxuICAgICAgLm5hdmJhci5uYXZiYXItaW52ZXJzZSAuZHJvcGRvd24tbWVudSAuYWN0aXZlID4gYSB7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6ICMzZjUxYjU7XG4gICAgICAgIGNvbG9yOiAjZmZmZmZmOyB9XG4gICAgICAgIC5uYXZiYXIubmF2YmFyLWludmVyc2UgLmRyb3Bkb3duLW1lbnUgLmFjdGl2ZSA+IGE6aG92ZXIsIC5uYXZiYXIubmF2YmFyLWludmVyc2UgLmRyb3Bkb3duLW1lbnUgLmFjdGl2ZSA+IGE6Zm9jdXMge1xuICAgICAgICAgIGNvbG9yOiAjZmZmZmZmOyB9XG4gIC5uYXZiYXIubmF2YmFyLXByaW1hcnkge1xuICAgIGJhY2tncm91bmQtY29sb3I6ICMzMzdhYjc7XG4gICAgY29sb3I6IHJnYmEoMjU1LDI1NSwyNTUsIDAuODQpOyB9XG4gICAgLm5hdmJhci5uYXZiYXItcHJpbWFyeSAubmF2YmFyLWZvcm0gLmZvcm0tZ3JvdXAgaW5wdXQuZm9ybS1jb250cm9sOjotbW96LXBsYWNlaG9sZGVyLFxuICAgIC5uYXZiYXIubmF2YmFyLXByaW1hcnkgLm5hdmJhci1mb3JtIGlucHV0LmZvcm0tY29udHJvbDo6LW1vei1wbGFjZWhvbGRlciB7XG4gICAgICBjb2xvcjogcmdiYSgyNTUsMjU1LDI1NSwgMC44NCk7IH1cbiAgICAubmF2YmFyLm5hdmJhci1wcmltYXJ5IC5uYXZiYXItZm9ybSAuZm9ybS1ncm91cCBpbnB1dC5mb3JtLWNvbnRyb2w6LW1zLWlucHV0LXBsYWNlaG9sZGVyLFxuICAgIC5uYXZiYXIubmF2YmFyLXByaW1hcnkgLm5hdmJhci1mb3JtIGlucHV0LmZvcm0tY29udHJvbDotbXMtaW5wdXQtcGxhY2Vob2xkZXIge1xuICAgICAgY29sb3I6IHJnYmEoMjU1LDI1NSwyNTUsIDAuODQpOyB9XG4gICAgLm5hdmJhci5uYXZiYXItcHJpbWFyeSAubmF2YmFyLWZvcm0gLmZvcm0tZ3JvdXAgaW5wdXQuZm9ybS1jb250cm9sOjotd2Via2l0LWlucHV0LXBsYWNlaG9sZGVyLFxuICAgIC5uYXZiYXIubmF2YmFyLXByaW1hcnkgLm5hdmJhci1mb3JtIGlucHV0LmZvcm0tY29udHJvbDo6LXdlYmtpdC1pbnB1dC1wbGFjZWhvbGRlciB7XG4gICAgICBjb2xvcjogcmdiYSgyNTUsMjU1LDI1NSwgMC44NCk7IH1cbiAgICAubmF2YmFyLm5hdmJhci1wcmltYXJ5IC5kcm9wZG93bi1tZW51IHtcbiAgICAgIGJvcmRlci1yYWRpdXM6IDRweDsgfVxuICAgICAgLm5hdmJhci5uYXZiYXItcHJpbWFyeSAuZHJvcGRvd24tbWVudSBsaSA+IGEge1xuICAgICAgICBmb250LXNpemU6IDE2cHg7XG4gICAgICAgIHBhZGRpbmc6IDEzcHggMTZweDsgfVxuICAgICAgICAubmF2YmFyLm5hdmJhci1wcmltYXJ5IC5kcm9wZG93bi1tZW51IGxpID4gYTpob3ZlciwgLm5hdmJhci5uYXZiYXItcHJpbWFyeSAuZHJvcGRvd24tbWVudSBsaSA+IGE6Zm9jdXMge1xuICAgICAgICAgIGNvbG9yOiAjMzM3YWI3O1xuICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6ICNlZWVlZWU7IH1cbiAgICAgIC5uYXZiYXIubmF2YmFyLXByaW1hcnkgLmRyb3Bkb3duLW1lbnUgLmFjdGl2ZSA+IGEge1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjMzM3YWI3O1xuICAgICAgICBjb2xvcjogcmdiYSgyNTUsMjU1LDI1NSwgMC44NCk7IH1cbiAgICAgICAgLm5hdmJhci5uYXZiYXItcHJpbWFyeSAuZHJvcGRvd24tbWVudSAuYWN0aXZlID4gYTpob3ZlciwgLm5hdmJhci5uYXZiYXItcHJpbWFyeSAuZHJvcGRvd24tbWVudSAuYWN0aXZlID4gYTpmb2N1cyB7XG4gICAgICAgICAgY29sb3I6IHJnYmEoMjU1LDI1NSwyNTUsIDAuODQpOyB9XG4gIC5uYXZiYXIubmF2YmFyLXN1Y2Nlc3Mge1xuICAgIGJhY2tncm91bmQtY29sb3I6ICM1Y2I4NWM7XG4gICAgY29sb3I6IHJnYmEoMjU1LDI1NSwyNTUsIDAuODQpOyB9XG4gICAgLm5hdmJhci5uYXZiYXItc3VjY2VzcyAubmF2YmFyLWZvcm0gLmZvcm0tZ3JvdXAgaW5wdXQuZm9ybS1jb250cm9sOjotbW96LXBsYWNlaG9sZGVyLFxuICAgIC5uYXZiYXIubmF2YmFyLXN1Y2Nlc3MgLm5hdmJhci1mb3JtIGlucHV0LmZvcm0tY29udHJvbDo6LW1vei1wbGFjZWhvbGRlciB7XG4gICAgICBjb2xvcjogcmdiYSgyNTUsMjU1LDI1NSwgMC44NCk7IH1cbiAgICAubmF2YmFyLm5hdmJhci1zdWNjZXNzIC5uYXZiYXItZm9ybSAuZm9ybS1ncm91cCBpbnB1dC5mb3JtLWNvbnRyb2w6LW1zLWlucHV0LXBsYWNlaG9sZGVyLFxuICAgIC5uYXZiYXIubmF2YmFyLXN1Y2Nlc3MgLm5hdmJhci1mb3JtIGlucHV0LmZvcm0tY29udHJvbDotbXMtaW5wdXQtcGxhY2Vob2xkZXIge1xuICAgICAgY29sb3I6IHJnYmEoMjU1LDI1NSwyNTUsIDAuODQpOyB9XG4gICAgLm5hdmJhci5uYXZiYXItc3VjY2VzcyAubmF2YmFyLWZvcm0gLmZvcm0tZ3JvdXAgaW5wdXQuZm9ybS1jb250cm9sOjotd2Via2l0LWlucHV0LXBsYWNlaG9sZGVyLFxuICAgIC5uYXZiYXIubmF2YmFyLXN1Y2Nlc3MgLm5hdmJhci1mb3JtIGlucHV0LmZvcm0tY29udHJvbDo6LXdlYmtpdC1pbnB1dC1wbGFjZWhvbGRlciB7XG4gICAgICBjb2xvcjogcmdiYSgyNTUsMjU1LDI1NSwgMC44NCk7IH1cbiAgICAubmF2YmFyLm5hdmJhci1zdWNjZXNzIC5kcm9wZG93bi1tZW51IHtcbiAgICAgIGJvcmRlci1yYWRpdXM6IDRweDsgfVxuICAgICAgLm5hdmJhci5uYXZiYXItc3VjY2VzcyAuZHJvcGRvd24tbWVudSBsaSA+IGEge1xuICAgICAgICBmb250LXNpemU6IDE2cHg7XG4gICAgICAgIHBhZGRpbmc6IDEzcHggMTZweDsgfVxuICAgICAgICAubmF2YmFyLm5hdmJhci1zdWNjZXNzIC5kcm9wZG93bi1tZW51IGxpID4gYTpob3ZlciwgLm5hdmJhci5uYXZiYXItc3VjY2VzcyAuZHJvcGRvd24tbWVudSBsaSA+IGE6Zm9jdXMge1xuICAgICAgICAgIGNvbG9yOiAjNWNiODVjO1xuICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6ICNlZWVlZWU7IH1cbiAgICAgIC5uYXZiYXIubmF2YmFyLXN1Y2Nlc3MgLmRyb3Bkb3duLW1lbnUgLmFjdGl2ZSA+IGEge1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjNWNiODVjO1xuICAgICAgICBjb2xvcjogcmdiYSgyNTUsMjU1LDI1NSwgMC44NCk7IH1cbiAgICAgICAgLm5hdmJhci5uYXZiYXItc3VjY2VzcyAuZHJvcGRvd24tbWVudSAuYWN0aXZlID4gYTpob3ZlciwgLm5hdmJhci5uYXZiYXItc3VjY2VzcyAuZHJvcGRvd24tbWVudSAuYWN0aXZlID4gYTpmb2N1cyB7XG4gICAgICAgICAgY29sb3I6IHJnYmEoMjU1LDI1NSwyNTUsIDAuODQpOyB9XG4gIC5uYXZiYXIubmF2YmFyLWluZm8ge1xuICAgIGJhY2tncm91bmQtY29sb3I6ICM1YmMwZGU7XG4gICAgY29sb3I6IHJnYmEoMjU1LDI1NSwyNTUsIDAuODQpOyB9XG4gICAgLm5hdmJhci5uYXZiYXItaW5mbyAubmF2YmFyLWZvcm0gLmZvcm0tZ3JvdXAgaW5wdXQuZm9ybS1jb250cm9sOjotbW96LXBsYWNlaG9sZGVyLFxuICAgIC5uYXZiYXIubmF2YmFyLWluZm8gLm5hdmJhci1mb3JtIGlucHV0LmZvcm0tY29udHJvbDo6LW1vei1wbGFjZWhvbGRlciB7XG4gICAgICBjb2xvcjogcmdiYSgyNTUsMjU1LDI1NSwgMC44NCk7IH1cbiAgICAubmF2YmFyLm5hdmJhci1pbmZvIC5uYXZiYXItZm9ybSAuZm9ybS1ncm91cCBpbnB1dC5mb3JtLWNvbnRyb2w6LW1zLWlucHV0LXBsYWNlaG9sZGVyLFxuICAgIC5uYXZiYXIubmF2YmFyLWluZm8gLm5hdmJhci1mb3JtIGlucHV0LmZvcm0tY29udHJvbDotbXMtaW5wdXQtcGxhY2Vob2xkZXIge1xuICAgICAgY29sb3I6IHJnYmEoMjU1LDI1NSwyNTUsIDAuODQpOyB9XG4gICAgLm5hdmJhci5uYXZiYXItaW5mbyAubmF2YmFyLWZvcm0gLmZvcm0tZ3JvdXAgaW5wdXQuZm9ybS1jb250cm9sOjotd2Via2l0LWlucHV0LXBsYWNlaG9sZGVyLFxuICAgIC5uYXZiYXIubmF2YmFyLWluZm8gLm5hdmJhci1mb3JtIGlucHV0LmZvcm0tY29udHJvbDo6LXdlYmtpdC1pbnB1dC1wbGFjZWhvbGRlciB7XG4gICAgICBjb2xvcjogcmdiYSgyNTUsMjU1LDI1NSwgMC44NCk7IH1cbiAgICAubmF2YmFyLm5hdmJhci1pbmZvIC5kcm9wZG93bi1tZW51IHtcbiAgICAgIGJvcmRlci1yYWRpdXM6IDRweDsgfVxuICAgICAgLm5hdmJhci5uYXZiYXItaW5mbyAuZHJvcGRvd24tbWVudSBsaSA+IGEge1xuICAgICAgICBmb250LXNpemU6IDE2cHg7XG4gICAgICAgIHBhZGRpbmc6IDEzcHggMTZweDsgfVxuICAgICAgICAubmF2YmFyLm5hdmJhci1pbmZvIC5kcm9wZG93bi1tZW51IGxpID4gYTpob3ZlciwgLm5hdmJhci5uYXZiYXItaW5mbyAuZHJvcGRvd24tbWVudSBsaSA+IGE6Zm9jdXMge1xuICAgICAgICAgIGNvbG9yOiAjNWJjMGRlO1xuICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6ICNlZWVlZWU7IH1cbiAgICAgIC5uYXZiYXIubmF2YmFyLWluZm8gLmRyb3Bkb3duLW1lbnUgLmFjdGl2ZSA+IGEge1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjNWJjMGRlO1xuICAgICAgICBjb2xvcjogcmdiYSgyNTUsMjU1LDI1NSwgMC44NCk7IH1cbiAgICAgICAgLm5hdmJhci5uYXZiYXItaW5mbyAuZHJvcGRvd24tbWVudSAuYWN0aXZlID4gYTpob3ZlciwgLm5hdmJhci5uYXZiYXItaW5mbyAuZHJvcGRvd24tbWVudSAuYWN0aXZlID4gYTpmb2N1cyB7XG4gICAgICAgICAgY29sb3I6IHJnYmEoMjU1LDI1NSwyNTUsIDAuODQpOyB9XG4gIC5uYXZiYXIubmF2YmFyLXdhcm5pbmcge1xuICAgIGJhY2tncm91bmQtY29sb3I6ICNmMGFkNGU7XG4gICAgY29sb3I6IHJnYmEoMjU1LDI1NSwyNTUsIDAuODQpOyB9XG4gICAgLm5hdmJhci5uYXZiYXItd2FybmluZyAubmF2YmFyLWZvcm0gLmZvcm0tZ3JvdXAgaW5wdXQuZm9ybS1jb250cm9sOjotbW96LXBsYWNlaG9sZGVyLFxuICAgIC5uYXZiYXIubmF2YmFyLXdhcm5pbmcgLm5hdmJhci1mb3JtIGlucHV0LmZvcm0tY29udHJvbDo6LW1vei1wbGFjZWhvbGRlciB7XG4gICAgICBjb2xvcjogcmdiYSgyNTUsMjU1LDI1NSwgMC44NCk7IH1cbiAgICAubmF2YmFyLm5hdmJhci13YXJuaW5nIC5uYXZiYXItZm9ybSAuZm9ybS1ncm91cCBpbnB1dC5mb3JtLWNvbnRyb2w6LW1zLWlucHV0LXBsYWNlaG9sZGVyLFxuICAgIC5uYXZiYXIubmF2YmFyLXdhcm5pbmcgLm5hdmJhci1mb3JtIGlucHV0LmZvcm0tY29udHJvbDotbXMtaW5wdXQtcGxhY2Vob2xkZXIge1xuICAgICAgY29sb3I6IHJnYmEoMjU1LDI1NSwyNTUsIDAuODQpOyB9XG4gICAgLm5hdmJhci5uYXZiYXItd2FybmluZyAubmF2YmFyLWZvcm0gLmZvcm0tZ3JvdXAgaW5wdXQuZm9ybS1jb250cm9sOjotd2Via2l0LWlucHV0LXBsYWNlaG9sZGVyLFxuICAgIC5uYXZiYXIubmF2YmFyLXdhcm5pbmcgLm5hdmJhci1mb3JtIGlucHV0LmZvcm0tY29udHJvbDo6LXdlYmtpdC1pbnB1dC1wbGFjZWhvbGRlciB7XG4gICAgICBjb2xvcjogcmdiYSgyNTUsMjU1LDI1NSwgMC44NCk7IH1cbiAgICAubmF2YmFyLm5hdmJhci13YXJuaW5nIC5kcm9wZG93bi1tZW51IHtcbiAgICAgIGJvcmRlci1yYWRpdXM6IDRweDsgfVxuICAgICAgLm5hdmJhci5uYXZiYXItd2FybmluZyAuZHJvcGRvd24tbWVudSBsaSA+IGEge1xuICAgICAgICBmb250LXNpemU6IDE2cHg7XG4gICAgICAgIHBhZGRpbmc6IDEzcHggMTZweDsgfVxuICAgICAgICAubmF2YmFyLm5hdmJhci13YXJuaW5nIC5kcm9wZG93bi1tZW51IGxpID4gYTpob3ZlciwgLm5hdmJhci5uYXZiYXItd2FybmluZyAuZHJvcGRvd24tbWVudSBsaSA+IGE6Zm9jdXMge1xuICAgICAgICAgIGNvbG9yOiAjZjBhZDRlO1xuICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6ICNlZWVlZWU7IH1cbiAgICAgIC5uYXZiYXIubmF2YmFyLXdhcm5pbmcgLmRyb3Bkb3duLW1lbnUgLmFjdGl2ZSA+IGEge1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjZjBhZDRlO1xuICAgICAgICBjb2xvcjogcmdiYSgyNTUsMjU1LDI1NSwgMC44NCk7IH1cbiAgICAgICAgLm5hdmJhci5uYXZiYXItd2FybmluZyAuZHJvcGRvd24tbWVudSAuYWN0aXZlID4gYTpob3ZlciwgLm5hdmJhci5uYXZiYXItd2FybmluZyAuZHJvcGRvd24tbWVudSAuYWN0aXZlID4gYTpmb2N1cyB7XG4gICAgICAgICAgY29sb3I6IHJnYmEoMjU1LDI1NSwyNTUsIDAuODQpOyB9XG4gIC5uYXZiYXIubmF2YmFyLWRhbmdlciB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogI2Q5NTM0ZjtcbiAgICBjb2xvcjogcmdiYSgyNTUsMjU1LDI1NSwgMC44NCk7IH1cbiAgICAubmF2YmFyLm5hdmJhci1kYW5nZXIgLm5hdmJhci1mb3JtIC5mb3JtLWdyb3VwIGlucHV0LmZvcm0tY29udHJvbDo6LW1vei1wbGFjZWhvbGRlcixcbiAgICAubmF2YmFyLm5hdmJhci1kYW5nZXIgLm5hdmJhci1mb3JtIGlucHV0LmZvcm0tY29udHJvbDo6LW1vei1wbGFjZWhvbGRlciB7XG4gICAgICBjb2xvcjogcmdiYSgyNTUsMjU1LDI1NSwgMC44NCk7IH1cbiAgICAubmF2YmFyLm5hdmJhci1kYW5nZXIgLm5hdmJhci1mb3JtIC5mb3JtLWdyb3VwIGlucHV0LmZvcm0tY29udHJvbDotbXMtaW5wdXQtcGxhY2Vob2xkZXIsXG4gICAgLm5hdmJhci5uYXZiYXItZGFuZ2VyIC5uYXZiYXItZm9ybSBpbnB1dC5mb3JtLWNvbnRyb2w6LW1zLWlucHV0LXBsYWNlaG9sZGVyIHtcbiAgICAgIGNvbG9yOiByZ2JhKDI1NSwyNTUsMjU1LCAwLjg0KTsgfVxuICAgIC5uYXZiYXIubmF2YmFyLWRhbmdlciAubmF2YmFyLWZvcm0gLmZvcm0tZ3JvdXAgaW5wdXQuZm9ybS1jb250cm9sOjotd2Via2l0LWlucHV0LXBsYWNlaG9sZGVyLFxuICAgIC5uYXZiYXIubmF2YmFyLWRhbmdlciAubmF2YmFyLWZvcm0gaW5wdXQuZm9ybS1jb250cm9sOjotd2Via2l0LWlucHV0LXBsYWNlaG9sZGVyIHtcbiAgICAgIGNvbG9yOiByZ2JhKDI1NSwyNTUsMjU1LCAwLjg0KTsgfVxuICAgIC5uYXZiYXIubmF2YmFyLWRhbmdlciAuZHJvcGRvd24tbWVudSB7XG4gICAgICBib3JkZXItcmFkaXVzOiA0cHg7IH1cbiAgICAgIC5uYXZiYXIubmF2YmFyLWRhbmdlciAuZHJvcGRvd24tbWVudSBsaSA+IGEge1xuICAgICAgICBmb250LXNpemU6IDE2cHg7XG4gICAgICAgIHBhZGRpbmc6IDEzcHggMTZweDsgfVxuICAgICAgICAubmF2YmFyLm5hdmJhci1kYW5nZXIgLmRyb3Bkb3duLW1lbnUgbGkgPiBhOmhvdmVyLCAubmF2YmFyLm5hdmJhci1kYW5nZXIgLmRyb3Bkb3duLW1lbnUgbGkgPiBhOmZvY3VzIHtcbiAgICAgICAgICBjb2xvcjogI2Q5NTM0ZjtcbiAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjZWVlZWVlOyB9XG4gICAgICAubmF2YmFyLm5hdmJhci1kYW5nZXIgLmRyb3Bkb3duLW1lbnUgLmFjdGl2ZSA+IGEge1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjZDk1MzRmO1xuICAgICAgICBjb2xvcjogcmdiYSgyNTUsMjU1LDI1NSwgMC44NCk7IH1cbiAgICAgICAgLm5hdmJhci5uYXZiYXItZGFuZ2VyIC5kcm9wZG93bi1tZW51IC5hY3RpdmUgPiBhOmhvdmVyLCAubmF2YmFyLm5hdmJhci1kYW5nZXIgLmRyb3Bkb3duLW1lbnUgLmFjdGl2ZSA+IGE6Zm9jdXMge1xuICAgICAgICAgIGNvbG9yOiByZ2JhKDI1NSwyNTUsMjU1LCAwLjg0KTsgfVxuICAubmF2YmFyLWludmVyc2Uge1xuICAgIGJhY2tncm91bmQtY29sb3I6ICMzZjUxYjU7IH1cbiAgQG1lZGlhIChtYXgtd2lkdGg6IDExOTlweCkge1xuICAgIC5uYXZiYXIgLm5hdmJhci1icmFuZCB7XG4gICAgICBoZWlnaHQ6IDUwcHg7XG4gICAgICBwYWRkaW5nOiAxMHB4IDE1cHg7IH1cbiAgICAubmF2YmFyIC5uYXZiYXItZm9ybSB7XG4gICAgICBtYXJnaW4tdG9wOiAxMHB4OyB9XG4gICAgLm5hdmJhciAubmF2YmFyLW5hdiA+IGxpID4gYSB7XG4gICAgICBwYWRkaW5nLXRvcDogMTVweDtcbiAgICAgIHBhZGRpbmctYm90dG9tOiAxNXB4OyB9IH1cblxuLmRyb3Bkb3duLW1lbnUge1xuICBib3JkZXI6IDA7XG4gIGJveC1zaGFkb3c6IDAgMnB4IDVweCAwIHJnYmEoMCwgMCwgMCwgMC4yNik7IH1cbiAgLmRyb3Bkb3duLW1lbnUgLmRpdmlkZXIge1xuICAgIGJhY2tncm91bmQtY29sb3I6IHJnYmEoMCwgMCwgMCwgMC4xMik7IH1cbiAgLmRyb3Bkb3duLW1lbnUgbGkge1xuICAgIG92ZXJmbG93OiBoaWRkZW47XG4gICAgcG9zaXRpb246IHJlbGF0aXZlOyB9XG4gICAgLmRyb3Bkb3duLW1lbnUgbGkgYTpob3ZlciB7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcbiAgICAgIGNvbG9yOiAjMzM3YWI3OyB9XG5cbi5hbGVydCB7XG4gIGJvcmRlcjogMDtcbiAgYm9yZGVyLXJhZGl1czogMDsgfVxuICAuYWxlcnQsIC5hbGVydC5hbGVydC1kZWZhdWx0IHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiByZ2JhKDI1NSwyNTUsMjU1LCAwLjg0KTtcbiAgICBjb2xvcjogcmdiYSgyNTUsMjU1LDI1NSwgMC44NCk7IH1cbiAgICAuYWxlcnQgYSwgLmFsZXJ0IC5hbGVydC1saW5rLCAuYWxlcnQuYWxlcnQtZGVmYXVsdCBhLCAuYWxlcnQuYWxlcnQtZGVmYXVsdCAuYWxlcnQtbGluayB7XG4gICAgICBjb2xvcjogcmdiYSgyNTUsMjU1LDI1NSwgMC44NCk7IH1cbiAgLmFsZXJ0LmFsZXJ0LWludmVyc2Uge1xuICAgIGJhY2tncm91bmQtY29sb3I6ICMzZjUxYjU7XG4gICAgY29sb3I6ICNmZmZmZmY7IH1cbiAgICAuYWxlcnQuYWxlcnQtaW52ZXJzZSBhLCAuYWxlcnQuYWxlcnQtaW52ZXJzZSAuYWxlcnQtbGluayB7XG4gICAgICBjb2xvcjogI2ZmZmZmZjsgfVxuICAuYWxlcnQuYWxlcnQtcHJpbWFyeSB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogIzMzN2FiNztcbiAgICBjb2xvcjogcmdiYSgyNTUsMjU1LDI1NSwgMC44NCk7IH1cbiAgICAuYWxlcnQuYWxlcnQtcHJpbWFyeSBhLCAuYWxlcnQuYWxlcnQtcHJpbWFyeSAuYWxlcnQtbGluayB7XG4gICAgICBjb2xvcjogcmdiYSgyNTUsMjU1LDI1NSwgMC44NCk7IH1cbiAgLmFsZXJ0LmFsZXJ0LXN1Y2Nlc3Mge1xuICAgIGJhY2tncm91bmQtY29sb3I6ICM1Y2I4NWM7XG4gICAgY29sb3I6IHJnYmEoMjU1LDI1NSwyNTUsIDAuODQpOyB9XG4gICAgLmFsZXJ0LmFsZXJ0LXN1Y2Nlc3MgYSwgLmFsZXJ0LmFsZXJ0LXN1Y2Nlc3MgLmFsZXJ0LWxpbmsge1xuICAgICAgY29sb3I6IHJnYmEoMjU1LDI1NSwyNTUsIDAuODQpOyB9XG4gIC5hbGVydC5hbGVydC1pbmZvIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjNWJjMGRlO1xuICAgIGNvbG9yOiByZ2JhKDI1NSwyNTUsMjU1LCAwLjg0KTsgfVxuICAgIC5hbGVydC5hbGVydC1pbmZvIGEsIC5hbGVydC5hbGVydC1pbmZvIC5hbGVydC1saW5rIHtcbiAgICAgIGNvbG9yOiByZ2JhKDI1NSwyNTUsMjU1LCAwLjg0KTsgfVxuICAuYWxlcnQuYWxlcnQtd2FybmluZyB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogI2YwYWQ0ZTtcbiAgICBjb2xvcjogcmdiYSgyNTUsMjU1LDI1NSwgMC44NCk7IH1cbiAgICAuYWxlcnQuYWxlcnQtd2FybmluZyBhLCAuYWxlcnQuYWxlcnQtd2FybmluZyAuYWxlcnQtbGluayB7XG4gICAgICBjb2xvcjogcmdiYSgyNTUsMjU1LDI1NSwgMC44NCk7IH1cbiAgLmFsZXJ0LmFsZXJ0LWRhbmdlciB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogI2Q5NTM0ZjtcbiAgICBjb2xvcjogcmdiYSgyNTUsMjU1LDI1NSwgMC44NCk7IH1cbiAgICAuYWxlcnQuYWxlcnQtZGFuZ2VyIGEsIC5hbGVydC5hbGVydC1kYW5nZXIgLmFsZXJ0LWxpbmsge1xuICAgICAgY29sb3I6IHJnYmEoMjU1LDI1NSwyNTUsIDAuODQpOyB9XG4gIC5hbGVydC1pbmZvLCAuYWxlcnQtZGFuZ2VyLCAuYWxlcnQtd2FybmluZywgLmFsZXJ0LXN1Y2Nlc3Mge1xuICAgIGNvbG9yOiByZ2JhKDI1NSwyNTUsMjU1LCAwLjg0KTsgfVxuICAuYWxlcnQtZGVmYXVsdCBhLCAuYWxlcnQtZGVmYXVsdCAuYWxlcnQtbGluayB7XG4gICAgY29sb3I6IHJnYmEoMCwwLDAsIDAuODcpOyB9XG5cbi5wcm9ncmVzcyB7XG4gIGhlaWdodDogNHB4O1xuICBib3JkZXItcmFkaXVzOiAwO1xuICBib3gtc2hhZG93OiBub25lO1xuICBiYWNrZ3JvdW5kOiAjYzhjOGM4OyB9XG4gIC5wcm9ncmVzcyAucHJvZ3Jlc3MtYmFyIHtcbiAgICBib3gtc2hhZG93OiBub25lOyB9XG4gICAgLnByb2dyZXNzIC5wcm9ncmVzcy1iYXIsIC5wcm9ncmVzcyAucHJvZ3Jlc3MtYmFyLnByb2dyZXNzLWJhci1kZWZhdWx0IHtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6ICMzMzdhYjc7IH1cbiAgICAucHJvZ3Jlc3MgLnByb2dyZXNzLWJhci5wcm9ncmVzcy1iYXItaW52ZXJzZSB7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjM2Y1MWI1OyB9XG4gICAgLnByb2dyZXNzIC5wcm9ncmVzcy1iYXIucHJvZ3Jlc3MtYmFyLXByaW1hcnkge1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogIzMzN2FiNzsgfVxuICAgIC5wcm9ncmVzcyAucHJvZ3Jlc3MtYmFyLnByb2dyZXNzLWJhci1zdWNjZXNzIHtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6ICM1Y2I4NWM7IH1cbiAgICAucHJvZ3Jlc3MgLnByb2dyZXNzLWJhci5wcm9ncmVzcy1iYXItaW5mbyB7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjNWJjMGRlOyB9XG4gICAgLnByb2dyZXNzIC5wcm9ncmVzcy1iYXIucHJvZ3Jlc3MtYmFyLXdhcm5pbmcge1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogI2YwYWQ0ZTsgfVxuICAgIC5wcm9ncmVzcyAucHJvZ3Jlc3MtYmFyLnByb2dyZXNzLWJhci1kYW5nZXIge1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogI2Q5NTM0ZjsgfVxuXG4udGV4dC13YXJuaW5nIHtcbiAgY29sb3I6ICNmMGFkNGU7IH1cblxuLnRleHQtcHJpbWFyeSB7XG4gIGNvbG9yOiAjMzM3YWI3OyB9XG5cbi50ZXh0LWRhbmdlciB7XG4gIGNvbG9yOiAjZDk1MzRmOyB9XG5cbi50ZXh0LXN1Y2Nlc3Mge1xuICBjb2xvcjogIzVjYjg1YzsgfVxuXG4udGV4dC1pbmZvIHtcbiAgY29sb3I6ICM1YmMwZGU7IH1cblxuLm5hdi10YWJzIHtcbiAgYmFja2dyb3VuZDogIzMzN2FiNzsgfVxuICAubmF2LXRhYnMgPiBsaSA+IGEge1xuICAgIGNvbG9yOiAjRkZGRkZGO1xuICAgIGJvcmRlcjogMDtcbiAgICBtYXJnaW46IDA7IH1cbiAgICAubmF2LXRhYnMgPiBsaSA+IGE6aG92ZXIge1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gICAgICBib3JkZXI6IDA7IH1cbiAgLm5hdi10YWJzID4gbGkgPiBhLCAubmF2LXRhYnMgPiBsaSA+IGE6aG92ZXIsIC5uYXYtdGFicyA+IGxpID4gYTpmb2N1cyB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQgIWltcG9ydGFudDtcbiAgICBib3JkZXI6IDAgIWltcG9ydGFudDtcbiAgICBjb2xvcjogI0ZGRkZGRiAhaW1wb3J0YW50O1xuICAgIGZvbnQtd2VpZ2h0OiA1MDA7IH1cbiAgLm5hdi10YWJzID4gbGkuZGlzYWJsZWQgPiBhLCAubmF2LXRhYnMgPiBsaS5kaXNhYmxlZCA+IGE6aG92ZXIge1xuICAgIGNvbG9yOiByZ2JhKDI1NSwgMjU1LCAyNTUsIDAuNSk7IH1cblxuLnBvcG92ZXIsIC50b29sdGlwLWlubmVyIHtcbiAgY29sb3I6ICNlY2VjZWM7XG4gIGxpbmUtaGVpZ2h0OiAxZW07XG4gIGJhY2tncm91bmQ6IHJnYmEoMTAxLCAxMDEsIDEwMSwgMC45KTtcbiAgYm9yZGVyOiBub25lO1xuICBib3JkZXItcmFkaXVzOiA0cHg7XG4gIGJveC1zaGFkb3c6IDAgMXB4IDZweCAwIHJnYmEoMCwgMCwgMCwgMC4xMiksIDAgMXB4IDZweCAwIHJnYmEoMCwgMCwgMCwgMC4xMik7IH1cblxuLnRvb2x0aXAsIC50b29sdGlwLmluIHtcbiAgb3BhY2l0eTogMTsgfVxuXG4ucG9wb3ZlciAuYXJyb3csIC5wb3BvdmVyIC50b29sdGlwLWFycm93LCAudG9vbHRpcCAuYXJyb3csIC50b29sdGlwIC50b29sdGlwLWFycm93IHtcbiAgZGlzcGxheTogbm9uZTsgfVxuXG4uY2FyZCB7XG4gIC8qKioqKiBNYWtlIGhlaWdodCBlcXVhbCB0byB3aWR0aCAoaHR0cDovL3N0YWNrb3ZlcmZsb3cuY29tL2EvNjYxNTk5NCkgKioqKi9cbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIHdpZHRoOiAxMDAlO1xuICAvKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovXG4gIGJvcmRlci1yYWRpdXM6IDRweDtcbiAgY29sb3I6IHJnYmEoMCwwLDAsIDAuODcpO1xuICBiYWNrZ3JvdW5kOiAjZmZmO1xuICBib3gtc2hhZG93OiAwIDhweCAxN3B4IDAgcmdiYSgwLCAwLCAwLCAwLjIpLCAwIDZweCAyMHB4IDAgcmdiYSgwLCAwLCAwLCAwLjE5KTsgfVxuICAuY2FyZCAuY2FyZC1oZWlnaHQtaW5kaWNhdG9yIHtcbiAgICBtYXJnaW4tdG9wOiAxMDAlOyB9XG4gIC5jYXJkIC5jYXJkLWNvbnRlbnQge1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICB0b3A6IDA7XG4gICAgYm90dG9tOiAwO1xuICAgIGxlZnQ6IDA7XG4gICAgcmlnaHQ6IDA7IH1cbiAgLmNhcmQgLmNhcmQtaW1hZ2Uge1xuICAgIGhlaWdodDogNjAlO1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICBvdmVyZmxvdzogaGlkZGVuOyB9XG4gICAgLmNhcmQgLmNhcmQtaW1hZ2UgaW1nIHtcbiAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgaGVpZ2h0OiAxMDAlO1xuICAgICAgYm9yZGVyLXRvcC1sZWZ0LXJhZGl1czogMnB4O1xuICAgICAgYm9yZGVyLXRvcC1yaWdodC1yYWRpdXM6IDJweDtcbiAgICAgIHBvaW50ZXItZXZlbnRzOiBub25lOyB9XG4gICAgLmNhcmQgLmNhcmQtaW1hZ2UgLmNhcmQtaW1hZ2UtaGVhZGxpbmUge1xuICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgYm90dG9tOiAxNnB4O1xuICAgICAgbGVmdDogMThweDtcbiAgICAgIGNvbG9yOiAjZmZmO1xuICAgICAgZm9udC1zaXplOiAyZW07IH1cbiAgLmNhcmQgLmNhcmQtYm9keSB7XG4gICAgaGVpZ2h0OiAzMCU7XG4gICAgcGFkZGluZzogMThweDsgfVxuICAuY2FyZCAuY2FyZC1mb290ZXIge1xuICAgIGhlaWdodDogMTAlO1xuICAgIHBhZGRpbmc6IDE4cHg7IH1cbiAgICAuY2FyZCAuY2FyZC1mb290ZXIgYnV0dG9uLCAuY2FyZCAuY2FyZC1mb290ZXIgYSB7XG4gICAgICBtYXJnaW46IDAgIWltcG9ydGFudDtcbiAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgIGJvdHRvbTogMjVweDtcbiAgICAgIHdpZHRoOiBhdXRvOyB9XG4gICAgICAuY2FyZCAuY2FyZC1mb290ZXIgYnV0dG9uOmZpcnN0LWNoaWxkLCAuY2FyZCAuY2FyZC1mb290ZXIgYTpmaXJzdC1jaGlsZCB7XG4gICAgICAgIGxlZnQ6IC0xNXB4OyB9XG5cbi5tb2RhbC1jb250ZW50IHtcbiAgYm94LXNoYWRvdzogMCAyN3B4IDI0cHggMCByZ2JhKDAsIDAsIDAsIDAuMiksIDAgNDBweCA3N3B4IDAgcmdiYSgwLCAwLCAwLCAwLjIyKTtcbiAgYm9yZGVyLXJhZGl1czogNHB4O1xuICBib3JkZXI6IG5vbmU7IH1cbiAgLm1vZGFsLWNvbnRlbnQgLm1vZGFsLWhlYWRlciB7XG4gICAgYm9yZGVyLWJvdHRvbTogbm9uZTtcbiAgICBwYWRkaW5nLXRvcDogMjRweDtcbiAgICBwYWRkaW5nLXJpZ2h0OiAyNHB4O1xuICAgIHBhZGRpbmctYm90dG9tOiAwO1xuICAgIHBhZGRpbmctbGVmdDogMjRweDsgfVxuICAubW9kYWwtY29udGVudCAubW9kYWwtYm9keSB7XG4gICAgcGFkZGluZy10b3A6IDI0cHg7XG4gICAgcGFkZGluZy1yaWdodDogMjRweDtcbiAgICBwYWRkaW5nLWJvdHRvbTogMTZweDtcbiAgICBwYWRkaW5nLWxlZnQ6IDI0cHg7IH1cbiAgLm1vZGFsLWNvbnRlbnQgLm1vZGFsLWZvb3RlciB7XG4gICAgYm9yZGVyLXRvcDogbm9uZTtcbiAgICBwYWRkaW5nOiA3cHg7IH1cbiAgICAubW9kYWwtY29udGVudCAubW9kYWwtZm9vdGVyIGJ1dHRvbiB7XG4gICAgICBtYXJnaW46IDA7XG4gICAgICBwYWRkaW5nLWxlZnQ6IDE2cHg7XG4gICAgICBwYWRkaW5nLXJpZ2h0OiAxNnB4O1xuICAgICAgd2lkdGg6IGF1dG87IH1cbiAgICAgIC5tb2RhbC1jb250ZW50IC5tb2RhbC1mb290ZXIgYnV0dG9uLnB1bGwtbGVmdCB7XG4gICAgICAgIHBhZGRpbmctbGVmdDogNXB4O1xuICAgICAgICBwYWRkaW5nLXJpZ2h0OiA1cHg7XG4gICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgICAgbGVmdDogLTVweDsgfVxuICAgIC5tb2RhbC1jb250ZW50IC5tb2RhbC1mb290ZXIgYnV0dG9uICsgYnV0dG9uIHtcbiAgICAgIG1hcmdpbi1ib3R0b206IDE2cHg7IH1cbiAgLm1vZGFsLWNvbnRlbnQgLm1vZGFsLWJvZHkgKyAubW9kYWwtZm9vdGVyIHtcbiAgICBwYWRkaW5nLXRvcDogMDsgfVxuXG4ubW9kYWwtYmFja2Ryb3Age1xuICBiYWNrZ3JvdW5kOiByZ2JhKDAsIDAsIDAsIDAuMyk7IH1cblxuLnBhbmVsIHtcbiAgYm9yZGVyLXJhZGl1czogMnB4O1xuICBib3JkZXI6IDA7XG4gIGJveC1zaGFkb3c6IDAgMXB4IDZweCAwIHJnYmEoMCwgMCwgMCwgMC4xMiksIDAgMXB4IDZweCAwIHJnYmEoMCwgMCwgMCwgMC4xMik7IH1cbiAgLnBhbmVsID4gLnBhbmVsLWhlYWRpbmcsXG4gIC5wYW5lbC5wYW5lbC1kZWZhdWx0ID4gLnBhbmVsLWhlYWRpbmcge1xuICAgIGJhY2tncm91bmQtY29sb3I6ICNlZWVlZWU7IH1cbiAgLnBhbmVsLnBhbmVsLWludmVyc2UgPiAucGFuZWwtaGVhZGluZyB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogIzNmNTFiNTsgfVxuICAucGFuZWwucGFuZWwtcHJpbWFyeSA+IC5wYW5lbC1oZWFkaW5nIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjMzM3YWI3OyB9XG4gIC5wYW5lbC5wYW5lbC1zdWNjZXNzID4gLnBhbmVsLWhlYWRpbmcge1xuICAgIGJhY2tncm91bmQtY29sb3I6ICM1Y2I4NWM7IH1cbiAgLnBhbmVsLnBhbmVsLWluZm8gPiAucGFuZWwtaGVhZGluZyB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogIzViYzBkZTsgfVxuICAucGFuZWwucGFuZWwtd2FybmluZyA+IC5wYW5lbC1oZWFkaW5nIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjZjBhZDRlOyB9XG4gIC5wYW5lbC5wYW5lbC1kYW5nZXIgPiAucGFuZWwtaGVhZGluZyB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogI2Q5NTM0ZjsgfVxuXG5bY2xhc3MqPVwicGFuZWwtXCJdID4gLnBhbmVsLWhlYWRpbmcge1xuICBjb2xvcjogcmdiYSgyNTUsMjU1LDI1NSwgMC44NCk7XG4gIGJvcmRlcjogMDsgfVxuXG4ucGFuZWwtZGVmYXVsdCA+IC5wYW5lbC1oZWFkaW5nLCAucGFuZWw6bm90KFtjbGFzcyo9XCJwYW5lbC1cIl0pID4gLnBhbmVsLWhlYWRpbmcge1xuICBjb2xvcjogcmdiYSgwLDAsMCwgMC44Nyk7IH1cblxuLnBhbmVsLWZvb3RlciB7XG4gIGJhY2tncm91bmQtY29sb3I6ICNlZWVlZWU7IH1cblxuaHIub24tZGFyayB7XG4gIGNvbG9yOiAjMWExYTFhOyB9XG5cbmhyLm9uLWxpZ2h0IHtcbiAgY29sb3I6IHdoaXRlOyB9XG5cbkBtZWRpYSAoLXdlYmtpdC1taW4tZGV2aWNlLXBpeGVsLXJhdGlvOiAwLjc1KSwgKG1pbi0tbW96LWRldmljZS1waXhlbC1yYXRpbzogMC43NSksICgtby1kZXZpY2UtcGl4ZWwtcmF0aW86IDMgLyA0KSwgKG1pbi1kZXZpY2UtcGl4ZWwtcmF0aW86IDAuNzUpLCAobWluLXJlc29sdXRpb246IDAuNzVkcHB4KSwgKG1pbi1yZXNvbHV0aW9uOiAxMjBkcGkpIHtcbiAgaHIge1xuICAgIGhlaWdodDogMC43NXB4OyB9IH1cblxuQG1lZGlhICgtd2Via2l0LW1pbi1kZXZpY2UtcGl4ZWwtcmF0aW86IDEpLCAobWluLS1tb3otZGV2aWNlLXBpeGVsLXJhdGlvOiAxKSwgKC1vLWRldmljZS1waXhlbC1yYXRpbzogMSksIChtaW4tZGV2aWNlLXBpeGVsLXJhdGlvOiAxKSwgKG1pbi1yZXNvbHV0aW9uOiAxZHBweCksIChtaW4tcmVzb2x1dGlvbjogMTYwZHBpKSB7XG4gIGhyIHtcbiAgICBoZWlnaHQ6IDFweDsgfSB9XG5cbkBtZWRpYSAoLXdlYmtpdC1taW4tZGV2aWNlLXBpeGVsLXJhdGlvOiAxLjMzKSwgKG1pbi0tbW96LWRldmljZS1waXhlbC1yYXRpbzogMS4zMyksICgtby1kZXZpY2UtcGl4ZWwtcmF0aW86IDEzMyAvIDEwMCksIChtaW4tZGV2aWNlLXBpeGVsLXJhdGlvOiAxLjMzKSwgKG1pbi1yZXNvbHV0aW9uOiAxLjMzZHBweCksIChtaW4tcmVzb2x1dGlvbjogMjEzZHBpKSB7XG4gIGhyIHtcbiAgICBoZWlnaHQ6IDEuMzMzcHg7IH0gfVxuXG5AbWVkaWEgKC13ZWJraXQtbWluLWRldmljZS1waXhlbC1yYXRpbzogMS41KSwgKG1pbi0tbW96LWRldmljZS1waXhlbC1yYXRpbzogMS41KSwgKC1vLWRldmljZS1waXhlbC1yYXRpbzogMyAvIDIpLCAobWluLWRldmljZS1waXhlbC1yYXRpbzogMS41KSwgKG1pbi1yZXNvbHV0aW9uOiAxLjVkcHB4KSwgKG1pbi1yZXNvbHV0aW9uOiAyNDBkcGkpIHtcbiAgaHIge1xuICAgIGhlaWdodDogMS41cHg7IH0gfVxuXG5AbWVkaWEgKC13ZWJraXQtbWluLWRldmljZS1waXhlbC1yYXRpbzogMiksIChtaW4tLW1vei1kZXZpY2UtcGl4ZWwtcmF0aW86IDIpLCAoLW8tZGV2aWNlLXBpeGVsLXJhdGlvOiAyIC8gMSksIChtaW4tZGV2aWNlLXBpeGVsLXJhdGlvOiAyKSwgKG1pbi1yZXNvbHV0aW9uOiAyZHBweCksIChtaW4tcmVzb2x1dGlvbjogMzgwZHBpKSB7XG4gIGhyIHtcbiAgICBoZWlnaHQ6IDJweDsgfSB9XG5cbkBtZWRpYSAoLXdlYmtpdC1taW4tZGV2aWNlLXBpeGVsLXJhdGlvOiAzKSwgKG1pbi0tbW96LWRldmljZS1waXhlbC1yYXRpbzogMyksICgtby1kZXZpY2UtcGl4ZWwtcmF0aW86IDMgLyAxKSwgKG1pbi1kZXZpY2UtcGl4ZWwtcmF0aW86IDMpLCAobWluLXJlc29sdXRpb246IDNkcHB4KSwgKG1pbi1yZXNvbHV0aW9uOiA0ODBkcGkpIHtcbiAgaHIge1xuICAgIGhlaWdodDogM3B4OyB9IH1cblxuQG1lZGlhICgtd2Via2l0LW1pbi1kZXZpY2UtcGl4ZWwtcmF0aW86IDQpLCAobWluLS1tb3otZGV2aWNlLXBpeGVsLXJhdGlvOiA0KSwgKC1vLWRldmljZS1waXhlbC1yYXRpbzogNCAvIDEpLCAobWluLWRldmljZS1waXhlbC1yYXRpbzogMyksIChtaW4tcmVzb2x1dGlvbjogNGRwcHgpLCAobWluLXJlc29sdXRpb246IDY0MGRwaSkge1xuICBociB7XG4gICAgaGVpZ2h0OiA0cHg7IH0gfVxuXG4qIHtcbiAgLXdlYmtpdC10YXAtaGlnaGxpZ2h0LWNvbG9yOiByZ2JhKDI1NSwgMjU1LCAyNTUsIDApO1xuICAtd2Via2l0LXRhcC1oaWdobGlnaHQtY29sb3I6IHRyYW5zcGFyZW50OyB9XG4gICo6Zm9jdXMge1xuICAgIG91dGxpbmU6IDA7IH1cblxuLnNuYWNrYmFyIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogIzMyMzIzMjtcbiAgY29sb3I6IHJnYmEoMjU1LDI1NSwyNTUsIDAuODQpO1xuICBmb250LXNpemU6IDE0cHg7XG4gIGJvcmRlci1yYWRpdXM6IDRweDtcbiAgYm94LXNoYWRvdzogMCAxcHggNnB4IDAgcmdiYSgwLCAwLCAwLCAwLjEyKSwgMCAxcHggNnB4IDAgcmdiYSgwLCAwLCAwLCAwLjEyKTtcbiAgaGVpZ2h0OiAwO1xuICB0cmFuc2l0aW9uOiB0cmFuc2Zvcm0gMC4ycyBlYXNlLWluLW91dCwgb3BhY2l0eSAwLjJzIGVhc2UtaW4sIGhlaWdodCAwcyBsaW5lYXIgMC4ycywgcGFkZGluZyAwcyBsaW5lYXIgMC4ycywgaGVpZ2h0IDBzIGxpbmVhciAwLjJzO1xuICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoMjAwJSk7IH1cblxuLnNuYWNrYmFyLnNuYWNrYmFyLW9wZW5lZCB7XG4gIHBhZGRpbmc6IDE0cHggMTVweDtcbiAgbWFyZ2luLWJvdHRvbTogMjBweDtcbiAgaGVpZ2h0OiBhdXRvO1xuICB0cmFuc2l0aW9uOiB0cmFuc2Zvcm0gMC4ycyBlYXNlLWluLW91dCwgb3BhY2l0eSAwLjJzIGVhc2UtaW4sIGhlaWdodCAwcyBsaW5lYXIgMC4ycywgaGVpZ2h0IDBzIGxpbmVhciAwLjJzO1xuICB0cmFuc2Zvcm06IG5vbmU7IH1cblxuLnNuYWNrYmFyLnRvYXN0IHtcbiAgYm9yZGVyLXJhZGl1czogMjAwcHg7IH1cblxuLm5vVWktdGFyZ2V0LFxuLm5vVWktdGFyZ2V0ICoge1xuICAtd2Via2l0LXRvdWNoLWNhbGxvdXQ6IG5vbmU7XG4gIC1tcy10b3VjaC1hY3Rpb246IG5vbmU7XG4gIHVzZXItc2VsZWN0OiBub25lO1xuICBib3gtc2l6aW5nOiBib3JkZXItYm94OyB9XG5cbi5ub1VpLWJhc2Uge1xuICB3aWR0aDogMTAwJTtcbiAgaGVpZ2h0OiAxMDAlO1xuICBwb3NpdGlvbjogcmVsYXRpdmU7IH1cblxuLm5vVWktb3JpZ2luIHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICByaWdodDogMDtcbiAgdG9wOiAwO1xuICBsZWZ0OiAwO1xuICBib3R0b206IDA7IH1cblxuLm5vVWktaGFuZGxlIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICB6LWluZGV4OiAxO1xuICBib3gtc2l6aW5nOiBib3JkZXItYm94OyB9XG5cbi5ub1VpLXN0YWNraW5nIC5ub1VpLWhhbmRsZSB7XG4gIHotaW5kZXg6IDEwOyB9XG5cbi5ub1VpLXN0YXRlLXRhcCAubm9VaS1vcmlnaW4ge1xuICB0cmFuc2l0aW9uOiBsZWZ0IDAuM3MsIHRvcCAwLjNzOyB9XG5cbi5ub1VpLXN0YXRlLWRyYWcgKiB7XG4gIGN1cnNvcjogaW5oZXJpdCAhaW1wb3J0YW50OyB9XG5cbi5ub1VpLWhvcml6b250YWwge1xuICBoZWlnaHQ6IDEwcHg7IH1cblxuLm5vVWktaGFuZGxlIHtcbiAgYm94LXNpemluZzogYm9yZGVyLWJveDtcbiAgd2lkdGg6IDEycHg7XG4gIGhlaWdodDogMTJweDtcbiAgbGVmdDogLTEwcHg7XG4gIHRvcDogLTVweDtcbiAgY3Vyc29yOiBldy1yZXNpemU7XG4gIGJvcmRlci1yYWRpdXM6IDEwMCU7XG4gIHRyYW5zaXRpb246IGFsbCAwLjJzIGVhc2Utb3V0O1xuICBib3JkZXI6IDFweCBzb2xpZDsgfVxuXG4ubm9VaS12ZXJ0aWNhbCAubm9VaS1oYW5kbGUge1xuICBtYXJnaW4tbGVmdDogNXB4O1xuICBjdXJzb3I6IG5zLXJlc2l6ZTsgfVxuXG4ubm9VaS1ob3Jpem9udGFsLm5vVWktZXh0ZW5kZWQge1xuICBwYWRkaW5nOiAwIDE1cHg7IH1cblxuLm5vVWktaG9yaXpvbnRhbC5ub1VpLWV4dGVuZGVkIC5ub1VpLW9yaWdpbiB7XG4gIHJpZ2h0OiAtMTVweDsgfVxuXG4ubm9VaS1iYWNrZ3JvdW5kIHtcbiAgaGVpZ2h0OiAycHg7XG4gIG1hcmdpbjogMjBweCAwOyB9XG5cbi5ub1VpLW9yaWdpbiB7XG4gIG1hcmdpbjogMDtcbiAgYm9yZGVyLXJhZGl1czogMDtcbiAgaGVpZ2h0OiAycHg7XG4gIGJhY2tncm91bmQ6ICNjOGM4Yzg7IH1cbiAgLm5vVWktb3JpZ2luW3N0eWxlXj1cImxlZnQ6IDBcIl0gLm5vVWktaGFuZGxlIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjZmZmO1xuICAgIGJvcmRlcjogMnB4IHNvbGlkICNjOGM4Yzg7IH1cbiAgICAubm9VaS1vcmlnaW5bc3R5bGVePVwibGVmdDogMFwiXSAubm9VaS1oYW5kbGUubm9VaS1hY3RpdmUge1xuICAgICAgYm9yZGVyLXdpZHRoOiAxcHg7IH1cblxuLm5vVWktdGFyZ2V0IHtcbiAgYm9yZGVyLXJhZGl1czogNHB4OyB9XG5cbi5ub1VpLWhvcml6b250YWwge1xuICBoZWlnaHQ6IDJweDtcbiAgbWFyZ2luOiAxNXB4IDA7IH1cblxuLm5vVWktdmVydGljYWwge1xuICBoZWlnaHQ6IDEwMCU7XG4gIHdpZHRoOiAycHg7XG4gIG1hcmdpbjogMCAxNXB4O1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7IH1cblxuLm5vVWktaGFuZGxlLm5vVWktYWN0aXZlIHtcbiAgdHJhbnNmb3JtOiBzY2FsZTNkKDIuNSwgMi41LCAxKTsgfVxuXG5bZGlzYWJsZWRdLm5vVWktc2xpZGVyIHtcbiAgb3BhY2l0eTogMC41OyB9XG5cbltkaXNhYmxlZF0gLm5vVWktaGFuZGxlIHtcbiAgY3Vyc29yOiBub3QtYWxsb3dlZDsgfVxuXG4uc2xpZGVyIHtcbiAgYmFja2dyb3VuZDogI2M4YzhjODsgfVxuXG4uc2xpZGVyLm5vVWktY29ubmVjdCwgLnNsaWRlci5zbGlkZXItZGVmYXVsdC5ub1VpLWNvbm5lY3Qge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjMzM3YWI3OyB9XG5cbi5zbGlkZXIuc2xpZGVyLWludmVyc2Uubm9VaS1jb25uZWN0IHtcbiAgYmFja2dyb3VuZC1jb2xvcjogIzNmNTFiNTsgfVxuXG4uc2xpZGVyLnNsaWRlci1wcmltYXJ5Lm5vVWktY29ubmVjdCB7XG4gIGJhY2tncm91bmQtY29sb3I6ICMzMzdhYjc7IH1cblxuLnNsaWRlci5zbGlkZXItc3VjY2Vzcy5ub1VpLWNvbm5lY3Qge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjNWNiODVjOyB9XG5cbi5zbGlkZXIuc2xpZGVyLWluZm8ubm9VaS1jb25uZWN0IHtcbiAgYmFja2dyb3VuZC1jb2xvcjogIzViYzBkZTsgfVxuXG4uc2xpZGVyLnNsaWRlci13YXJuaW5nLm5vVWktY29ubmVjdCB7XG4gIGJhY2tncm91bmQtY29sb3I6ICNmMGFkNGU7IH1cblxuLnNsaWRlci5zbGlkZXItZGFuZ2VyLm5vVWktY29ubmVjdCB7XG4gIGJhY2tncm91bmQtY29sb3I6ICNkOTUzNGY7IH1cblxuLnNsaWRlciAubm9VaS1jb25uZWN0LFxuLnNsaWRlci5zbGlkZXItZGVmYXVsdCAubm9VaS1jb25uZWN0IHtcbiAgYmFja2dyb3VuZC1jb2xvcjogIzMzN2FiNzsgfVxuXG4uc2xpZGVyLnNsaWRlci1pbnZlcnNlIC5ub1VpLWNvbm5lY3Qge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjM2Y1MWI1OyB9XG5cbi5zbGlkZXIuc2xpZGVyLXByaW1hcnkgLm5vVWktY29ubmVjdCB7XG4gIGJhY2tncm91bmQtY29sb3I6ICMzMzdhYjc7IH1cblxuLnNsaWRlci5zbGlkZXItc3VjY2VzcyAubm9VaS1jb25uZWN0IHtcbiAgYmFja2dyb3VuZC1jb2xvcjogIzVjYjg1YzsgfVxuXG4uc2xpZGVyLnNsaWRlci1pbmZvIC5ub1VpLWNvbm5lY3Qge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjNWJjMGRlOyB9XG5cbi5zbGlkZXIuc2xpZGVyLXdhcm5pbmcgLm5vVWktY29ubmVjdCB7XG4gIGJhY2tncm91bmQtY29sb3I6ICNmMGFkNGU7IH1cblxuLnNsaWRlci5zbGlkZXItZGFuZ2VyIC5ub1VpLWNvbm5lY3Qge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZDk1MzRmOyB9XG5cbi5zbGlkZXIgLm5vVWktaGFuZGxlLFxuLnNsaWRlci5zbGlkZXItZGVmYXVsdCAubm9VaS1oYW5kbGUge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjMzM3YWI3OyB9XG5cbi5zbGlkZXIuc2xpZGVyLWludmVyc2UgLm5vVWktaGFuZGxlIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogIzNmNTFiNTsgfVxuXG4uc2xpZGVyLnNsaWRlci1wcmltYXJ5IC5ub1VpLWhhbmRsZSB7XG4gIGJhY2tncm91bmQtY29sb3I6ICMzMzdhYjc7IH1cblxuLnNsaWRlci5zbGlkZXItc3VjY2VzcyAubm9VaS1oYW5kbGUge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjNWNiODVjOyB9XG5cbi5zbGlkZXIuc2xpZGVyLWluZm8gLm5vVWktaGFuZGxlIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogIzViYzBkZTsgfVxuXG4uc2xpZGVyLnNsaWRlci13YXJuaW5nIC5ub1VpLWhhbmRsZSB7XG4gIGJhY2tncm91bmQtY29sb3I6ICNmMGFkNGU7IH1cblxuLnNsaWRlci5zbGlkZXItZGFuZ2VyIC5ub1VpLWhhbmRsZSB7XG4gIGJhY2tncm91bmQtY29sb3I6ICNkOTUzNGY7IH1cblxuLnNsaWRlciAubm9VaS1oYW5kbGUsXG4uc2xpZGVyLnNsaWRlci1kZWZhdWx0IC5ub1VpLWhhbmRsZSB7XG4gIGJvcmRlci1jb2xvcjogIzMzN2FiNzsgfVxuXG4uc2xpZGVyLnNsaWRlci1pbnZlcnNlIC5ub1VpLWhhbmRsZSB7XG4gIGJvcmRlci1jb2xvcjogIzNmNTFiNTsgfVxuXG4uc2xpZGVyLnNsaWRlci1wcmltYXJ5IC5ub1VpLWhhbmRsZSB7XG4gIGJvcmRlci1jb2xvcjogIzMzN2FiNzsgfVxuXG4uc2xpZGVyLnNsaWRlci1zdWNjZXNzIC5ub1VpLWhhbmRsZSB7XG4gIGJvcmRlci1jb2xvcjogIzVjYjg1YzsgfVxuXG4uc2xpZGVyLnNsaWRlci1pbmZvIC5ub1VpLWhhbmRsZSB7XG4gIGJvcmRlci1jb2xvcjogIzViYzBkZTsgfVxuXG4uc2xpZGVyLnNsaWRlci13YXJuaW5nIC5ub1VpLWhhbmRsZSB7XG4gIGJvcmRlci1jb2xvcjogI2YwYWQ0ZTsgfVxuXG4uc2xpZGVyLnNsaWRlci1kYW5nZXIgLm5vVWktaGFuZGxlIHtcbiAgYm9yZGVyLWNvbG9yOiAjZDk1MzRmOyB9XG5cbi5zZWxlY3RpemUtY29udHJvbC5zaW5nbGUsIC5zZWxlY3RpemUtY29udHJvbC5tdWx0aSB7XG4gIHBhZGRpbmc6IDA7IH1cbiAgLnNlbGVjdGl6ZS1jb250cm9sLnNpbmdsZSAuc2VsZWN0aXplLWlucHV0LCAuc2VsZWN0aXplLWNvbnRyb2wuc2luZ2xlIC5zZWxlY3RpemUtaW5wdXQuaW5wdXQtYWN0aXZlLCAuc2VsZWN0aXplLWNvbnRyb2wubXVsdGkgLnNlbGVjdGl6ZS1pbnB1dCwgLnNlbGVjdGl6ZS1jb250cm9sLm11bHRpIC5zZWxlY3RpemUtaW5wdXQuaW5wdXQtYWN0aXZlIHtcbiAgICBjdXJzb3I6IHRleHQ7XG4gICAgYmFja2dyb3VuZDogdHJhbnNwYXJlbnQ7XG4gICAgYm94LXNoYWRvdzogbm9uZTtcbiAgICBib3JkZXI6IDA7XG4gICAgcGFkZGluZzogMDtcbiAgICBoZWlnaHQ6IDEwMCU7XG4gICAgZm9udC1zaXplOiAxNHB4O1xuICAgIGxpbmUtaGVpZ2h0OiAzMHB4OyB9XG4gICAgLnNlbGVjdGl6ZS1jb250cm9sLnNpbmdsZSAuc2VsZWN0aXplLWlucHV0IC5oYXMtaXRlbXMsIC5zZWxlY3RpemUtY29udHJvbC5zaW5nbGUgLnNlbGVjdGl6ZS1pbnB1dC5pbnB1dC1hY3RpdmUgLmhhcy1pdGVtcywgLnNlbGVjdGl6ZS1jb250cm9sLm11bHRpIC5zZWxlY3RpemUtaW5wdXQgLmhhcy1pdGVtcywgLnNlbGVjdGl6ZS1jb250cm9sLm11bHRpIC5zZWxlY3RpemUtaW5wdXQuaW5wdXQtYWN0aXZlIC5oYXMtaXRlbXMge1xuICAgICAgcGFkZGluZzogMDsgfVxuICAgIC5zZWxlY3RpemUtY29udHJvbC5zaW5nbGUgLnNlbGVjdGl6ZS1pbnB1dDphZnRlciwgLnNlbGVjdGl6ZS1jb250cm9sLnNpbmdsZSAuc2VsZWN0aXplLWlucHV0LmlucHV0LWFjdGl2ZTphZnRlciwgLnNlbGVjdGl6ZS1jb250cm9sLm11bHRpIC5zZWxlY3RpemUtaW5wdXQ6YWZ0ZXIsIC5zZWxlY3RpemUtY29udHJvbC5tdWx0aSAuc2VsZWN0aXplLWlucHV0LmlucHV0LWFjdGl2ZTphZnRlciB7XG4gICAgICByaWdodDogNXB4O1xuICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgZm9udC1zaXplOiAyNXB4O1xuICAgICAgY29udGVudDogXCJcXGU1YzVcIjtcbiAgICAgIGZvbnQtZmFtaWx5OiAnTWF0ZXJpYWwgSWNvbnMnO1xuICAgICAgc3BlYWs6IG5vbmU7XG4gICAgICBmb250LXN0eWxlOiBub3JtYWw7XG4gICAgICBmb250LXdlaWdodDogbm9ybWFsO1xuICAgICAgZm9udC12YXJpYW50OiBub3JtYWw7XG4gICAgICB0ZXh0LXRyYW5zZm9ybTogbm9uZTtcbiAgICAgIGxpbmUtaGVpZ2h0OiAxO1xuICAgICAgLXdlYmtpdC1mb250LXNtb290aGluZzogYW50aWFsaWFzZWQ7XG4gICAgICAtbW96LW9zeC1mb250LXNtb290aGluZzogZ3JheXNjYWxlOyB9XG4gICAgLnNlbGVjdGl6ZS1jb250cm9sLnNpbmdsZSAuc2VsZWN0aXplLWlucHV0IGlucHV0LCAuc2VsZWN0aXplLWNvbnRyb2wuc2luZ2xlIC5zZWxlY3RpemUtaW5wdXQuaW5wdXQtYWN0aXZlIGlucHV0LCAuc2VsZWN0aXplLWNvbnRyb2wubXVsdGkgLnNlbGVjdGl6ZS1pbnB1dCBpbnB1dCwgLnNlbGVjdGl6ZS1jb250cm9sLm11bHRpIC5zZWxlY3RpemUtaW5wdXQuaW5wdXQtYWN0aXZlIGlucHV0IHtcbiAgICAgIGZvbnQtc2l6ZTogMTRweDtcbiAgICAgIG91dGxpbmU6IDA7XG4gICAgICBib3JkZXI6IDA7XG4gICAgICBiYWNrZ3JvdW5kOiB0cmFuc3BhcmVudDsgfVxuICAgIC5zZWxlY3RpemUtY29udHJvbC5zaW5nbGUgLnNlbGVjdGl6ZS1pbnB1dC5sYWJlbC1mbG9hdGluZy1maXggaW5wdXQsIC5zZWxlY3RpemUtY29udHJvbC5zaW5nbGUgLnNlbGVjdGl6ZS1pbnB1dC5pbnB1dC1hY3RpdmUubGFiZWwtZmxvYXRpbmctZml4IGlucHV0LCAuc2VsZWN0aXplLWNvbnRyb2wubXVsdGkgLnNlbGVjdGl6ZS1pbnB1dC5sYWJlbC1mbG9hdGluZy1maXggaW5wdXQsIC5zZWxlY3RpemUtY29udHJvbC5tdWx0aSAuc2VsZWN0aXplLWlucHV0LmlucHV0LWFjdGl2ZS5sYWJlbC1mbG9hdGluZy1maXggaW5wdXQge1xuICAgICAgb3BhY2l0eTogMDsgfVxuICAgIC5zZWxlY3RpemUtY29udHJvbC5zaW5nbGUgLnNlbGVjdGl6ZS1pbnB1dCA+IGRpdiwgLnNlbGVjdGl6ZS1jb250cm9sLnNpbmdsZSAuc2VsZWN0aXplLWlucHV0ID4gLml0ZW0sIC5zZWxlY3RpemUtY29udHJvbC5zaW5nbGUgLnNlbGVjdGl6ZS1pbnB1dC5pbnB1dC1hY3RpdmUgPiBkaXYsIC5zZWxlY3RpemUtY29udHJvbC5zaW5nbGUgLnNlbGVjdGl6ZS1pbnB1dC5pbnB1dC1hY3RpdmUgPiAuaXRlbSwgLnNlbGVjdGl6ZS1jb250cm9sLm11bHRpIC5zZWxlY3RpemUtaW5wdXQgPiBkaXYsIC5zZWxlY3RpemUtY29udHJvbC5tdWx0aSAuc2VsZWN0aXplLWlucHV0ID4gLml0ZW0sIC5zZWxlY3RpemUtY29udHJvbC5tdWx0aSAuc2VsZWN0aXplLWlucHV0LmlucHV0LWFjdGl2ZSA+IGRpdiwgLnNlbGVjdGl6ZS1jb250cm9sLm11bHRpIC5zZWxlY3RpemUtaW5wdXQuaW5wdXQtYWN0aXZlID4gLml0ZW0ge1xuICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgICAgbWFyZ2luOiAwIDhweCAzcHggMDtcbiAgICAgIHBhZGRpbmc6IDA7XG4gICAgICBiYWNrZ3JvdW5kOiB0cmFuc3BhcmVudDtcbiAgICAgIGJvcmRlcjogMDsgfVxuICAgICAgLnNlbGVjdGl6ZS1jb250cm9sLnNpbmdsZSAuc2VsZWN0aXplLWlucHV0ID4gZGl2OmFmdGVyLCAuc2VsZWN0aXplLWNvbnRyb2wuc2luZ2xlIC5zZWxlY3RpemUtaW5wdXQgPiAuaXRlbTphZnRlciwgLnNlbGVjdGl6ZS1jb250cm9sLnNpbmdsZSAuc2VsZWN0aXplLWlucHV0LmlucHV0LWFjdGl2ZSA+IGRpdjphZnRlciwgLnNlbGVjdGl6ZS1jb250cm9sLnNpbmdsZSAuc2VsZWN0aXplLWlucHV0LmlucHV0LWFjdGl2ZSA+IC5pdGVtOmFmdGVyLCAuc2VsZWN0aXplLWNvbnRyb2wubXVsdGkgLnNlbGVjdGl6ZS1pbnB1dCA+IGRpdjphZnRlciwgLnNlbGVjdGl6ZS1jb250cm9sLm11bHRpIC5zZWxlY3RpemUtaW5wdXQgPiAuaXRlbTphZnRlciwgLnNlbGVjdGl6ZS1jb250cm9sLm11bHRpIC5zZWxlY3RpemUtaW5wdXQuaW5wdXQtYWN0aXZlID4gZGl2OmFmdGVyLCAuc2VsZWN0aXplLWNvbnRyb2wubXVsdGkgLnNlbGVjdGl6ZS1pbnB1dC5pbnB1dC1hY3RpdmUgPiAuaXRlbTphZnRlciB7XG4gICAgICAgIGNvbnRlbnQ6IFwiLFwiOyB9XG4gICAgICAuc2VsZWN0aXplLWNvbnRyb2wuc2luZ2xlIC5zZWxlY3RpemUtaW5wdXQgPiBkaXY6bGFzdC1vZi10eXBlOmFmdGVyLCAuc2VsZWN0aXplLWNvbnRyb2wuc2luZ2xlIC5zZWxlY3RpemUtaW5wdXQgPiAuaXRlbTpsYXN0LW9mLXR5cGU6YWZ0ZXIsIC5zZWxlY3RpemUtY29udHJvbC5zaW5nbGUgLnNlbGVjdGl6ZS1pbnB1dC5pbnB1dC1hY3RpdmUgPiBkaXY6bGFzdC1vZi10eXBlOmFmdGVyLCAuc2VsZWN0aXplLWNvbnRyb2wuc2luZ2xlIC5zZWxlY3RpemUtaW5wdXQuaW5wdXQtYWN0aXZlID4gLml0ZW06bGFzdC1vZi10eXBlOmFmdGVyLCAuc2VsZWN0aXplLWNvbnRyb2wubXVsdGkgLnNlbGVjdGl6ZS1pbnB1dCA+IGRpdjpsYXN0LW9mLXR5cGU6YWZ0ZXIsIC5zZWxlY3RpemUtY29udHJvbC5tdWx0aSAuc2VsZWN0aXplLWlucHV0ID4gLml0ZW06bGFzdC1vZi10eXBlOmFmdGVyLCAuc2VsZWN0aXplLWNvbnRyb2wubXVsdGkgLnNlbGVjdGl6ZS1pbnB1dC5pbnB1dC1hY3RpdmUgPiBkaXY6bGFzdC1vZi10eXBlOmFmdGVyLCAuc2VsZWN0aXplLWNvbnRyb2wubXVsdGkgLnNlbGVjdGl6ZS1pbnB1dC5pbnB1dC1hY3RpdmUgPiAuaXRlbTpsYXN0LW9mLXR5cGU6YWZ0ZXIge1xuICAgICAgICBjb250ZW50OiBcIlwiOyB9XG4gICAgICAuc2VsZWN0aXplLWNvbnRyb2wuc2luZ2xlIC5zZWxlY3RpemUtaW5wdXQgPiBkaXYuYWN0aXZlLCAuc2VsZWN0aXplLWNvbnRyb2wuc2luZ2xlIC5zZWxlY3RpemUtaW5wdXQgPiAuaXRlbS5hY3RpdmUsIC5zZWxlY3RpemUtY29udHJvbC5zaW5nbGUgLnNlbGVjdGl6ZS1pbnB1dC5pbnB1dC1hY3RpdmUgPiBkaXYuYWN0aXZlLCAuc2VsZWN0aXplLWNvbnRyb2wuc2luZ2xlIC5zZWxlY3RpemUtaW5wdXQuaW5wdXQtYWN0aXZlID4gLml0ZW0uYWN0aXZlLCAuc2VsZWN0aXplLWNvbnRyb2wubXVsdGkgLnNlbGVjdGl6ZS1pbnB1dCA+IGRpdi5hY3RpdmUsIC5zZWxlY3RpemUtY29udHJvbC5tdWx0aSAuc2VsZWN0aXplLWlucHV0ID4gLml0ZW0uYWN0aXZlLCAuc2VsZWN0aXplLWNvbnRyb2wubXVsdGkgLnNlbGVjdGl6ZS1pbnB1dC5pbnB1dC1hY3RpdmUgPiBkaXYuYWN0aXZlLCAuc2VsZWN0aXplLWNvbnRyb2wubXVsdGkgLnNlbGVjdGl6ZS1pbnB1dC5pbnB1dC1hY3RpdmUgPiAuaXRlbS5hY3RpdmUge1xuICAgICAgICBmb250LXdlaWdodDogYm9sZDtcbiAgICAgICAgYmFja2dyb3VuZDogdHJhbnNwYXJlbnQ7XG4gICAgICAgIGJvcmRlcjogMDsgfVxuICAuc2VsZWN0aXplLWNvbnRyb2wuc2luZ2xlIC5zZWxlY3RpemUtZHJvcGRvd24sIC5zZWxlY3RpemUtY29udHJvbC5tdWx0aSAuc2VsZWN0aXplLWRyb3Bkb3duIHtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgei1pbmRleDogMTAwMDtcbiAgICBib3JkZXI6IDA7XG4gICAgd2lkdGg6IDEwMCUgIWltcG9ydGFudDtcbiAgICBsZWZ0OiAwICFpbXBvcnRhbnQ7XG4gICAgaGVpZ2h0OiBhdXRvO1xuICAgIGJhY2tncm91bmQtY29sb3I6ICNGRkY7XG4gICAgYm94LXNoYWRvdzogMCAxcHggM3B4IHJnYmEoMCwgMCwgMCwgMC4xMiksIDAgMXB4IDJweCByZ2JhKDAsIDAsIDAsIDAuMjQpO1xuICAgIGJvcmRlci1yYWRpdXM6IDRweDtcbiAgICBwYWRkaW5nOiAwO1xuICAgIG1hcmdpbi10b3A6IDNweDsgfVxuICAgIC5zZWxlY3RpemUtY29udHJvbC5zaW5nbGUgLnNlbGVjdGl6ZS1kcm9wZG93biAuYWN0aXZlLCAuc2VsZWN0aXplLWNvbnRyb2wubXVsdGkgLnNlbGVjdGl6ZS1kcm9wZG93biAuYWN0aXZlIHtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6IGluaGVyaXQ7IH1cbiAgICAuc2VsZWN0aXplLWNvbnRyb2wuc2luZ2xlIC5zZWxlY3RpemUtZHJvcGRvd24gLmhpZ2hsaWdodCwgLnNlbGVjdGl6ZS1jb250cm9sLm11bHRpIC5zZWxlY3RpemUtZHJvcGRvd24gLmhpZ2hsaWdodCB7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjZDVkOGZmOyB9XG4gICAgLnNlbGVjdGl6ZS1jb250cm9sLnNpbmdsZSAuc2VsZWN0aXplLWRyb3Bkb3duIC5zZWxlY3RlZCwgLnNlbGVjdGl6ZS1jb250cm9sLnNpbmdsZSAuc2VsZWN0aXplLWRyb3Bkb3duIC5zZWxlY3RlZC5hY3RpdmUsIC5zZWxlY3RpemUtY29udHJvbC5tdWx0aSAuc2VsZWN0aXplLWRyb3Bkb3duIC5zZWxlY3RlZCwgLnNlbGVjdGl6ZS1jb250cm9sLm11bHRpIC5zZWxlY3RpemUtZHJvcGRvd24gLnNlbGVjdGVkLmFjdGl2ZSB7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjRUVFRUVFOyB9XG4gICAgLnNlbGVjdGl6ZS1jb250cm9sLnNpbmdsZSAuc2VsZWN0aXplLWRyb3Bkb3duIFtkYXRhLXNlbGVjdGFibGVdLCAuc2VsZWN0aXplLWNvbnRyb2wuc2luZ2xlIC5zZWxlY3RpemUtZHJvcGRvd24gLm9wdGdyb3VwLWhlYWRlciwgLnNlbGVjdGl6ZS1jb250cm9sLm11bHRpIC5zZWxlY3RpemUtZHJvcGRvd24gW2RhdGEtc2VsZWN0YWJsZV0sIC5zZWxlY3RpemUtY29udHJvbC5tdWx0aSAuc2VsZWN0aXplLWRyb3Bkb3duIC5vcHRncm91cC1oZWFkZXIge1xuICAgICAgcGFkZGluZzogMTBweCAyMHB4O1xuICAgICAgY3Vyc29yOiBwb2ludGVyOyB9XG4gIC5zZWxlY3RpemUtY29udHJvbC5zaW5nbGUgLmRyb3Bkb3duLWFjdGl2ZSB+IC5zZWxlY3RpemUtZHJvcGRvd24sIC5zZWxlY3RpemUtY29udHJvbC5tdWx0aSAuZHJvcGRvd24tYWN0aXZlIH4gLnNlbGVjdGl6ZS1kcm9wZG93biB7XG4gICAgZGlzcGxheTogYmxvY2s7IH1cblxuLmRyb3Bkb3duanM6OmFmdGVyIHtcbiAgcmlnaHQ6IDVweDtcbiAgdG9wOiAzcHg7XG4gIGZvbnQtc2l6ZTogMjVweDtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICBmb250LWZhbWlseTogJ01hdGVyaWFsIEljb25zJztcbiAgZm9udC1zdHlsZTogbm9ybWFsO1xuICBmb250LXdlaWdodDogNDAwO1xuICBjb250ZW50OiBcIlxcZTVjNVwiO1xuICBwb2ludGVyLWV2ZW50czogbm9uZTtcbiAgY29sb3I6ICM3NTc1NzU7IH1cblxuLndpdGhyaXBwbGUge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7IH1cblxuLnJpcHBsZS1jb250YWluZXIge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHRvcDogMDtcbiAgbGVmdDogMDtcbiAgei1pbmRleDogMTtcbiAgd2lkdGg6IDEwMCU7XG4gIGhlaWdodDogMTAwJTtcbiAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgYm9yZGVyLXJhZGl1czogaW5oZXJpdDtcbiAgcG9pbnRlci1ldmVudHM6IG5vbmU7IH1cblxuLnJpcHBsZSB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgd2lkdGg6IDIwcHg7XG4gIGhlaWdodDogMjBweDtcbiAgbWFyZ2luLWxlZnQ6IC0xMHB4O1xuICBtYXJnaW4tdG9wOiAtMTBweDtcbiAgYm9yZGVyLXJhZGl1czogMTAwJTtcbiAgYmFja2dyb3VuZC1jb2xvcjogIzAwMDtcbiAgYmFja2dyb3VuZC1jb2xvcjogcmdiYSgwLCAwLCAwLCAwLjA1KTtcbiAgdHJhbnNmb3JtOiBzY2FsZSgxKTtcbiAgdHJhbnNmb3JtLW9yaWdpbjogNTAlO1xuICBvcGFjaXR5OiAwO1xuICBwb2ludGVyLWV2ZW50czogbm9uZTsgfVxuXG4ucmlwcGxlLnJpcHBsZS1vbiB7XG4gIHRyYW5zaXRpb246IG9wYWNpdHkgMC4xNXMgZWFzZS1pbiAwcywgdHJhbnNmb3JtIDAuNXMgY3ViaWMtYmV6aWVyKDAuNCwgMCwgMC4yLCAxKSAwLjFzO1xuICBvcGFjaXR5OiAwLjE7IH1cblxuLnJpcHBsZS5yaXBwbGUtb3V0IHtcbiAgdHJhbnNpdGlvbjogb3BhY2l0eSAwLjFzIGxpbmVhciAwcyAhaW1wb3J0YW50O1xuICBvcGFjaXR5OiAwOyB9XG5cbi8qIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tIFxyXG5cclxuUHJpbWFyeSBzdHlsZVxyXG5cclxuLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0gKi9cbiosICo6OmFmdGVyLCAqOjpiZWZvcmUge1xuICAtd2Via2l0LWJveC1zaXppbmc6IGJvcmRlci1ib3g7XG4gIC1tb3otYm94LXNpemluZzogYm9yZGVyLWJveDtcbiAgYm94LXNpemluZzogYm9yZGVyLWJveDsgfVxuXG5odG1sIHtcbiAgZm9udC1zaXplOiA2Mi41JTsgfVxuXG5ib2R5IHtcbiAgZm9udC1zaXplOiAxLjZyZW07XG4gIGZvbnQtZmFtaWx5OiBcIlBUIFNhbnNcIiwgc2Fucy1zZXJpZjtcbiAgY29sb3I6ICMzMzQxNGE7XG4gIGJhY2tncm91bmQtY29sb3I6ICNmMmYyZjI7IH1cblxuYSB7XG4gIGNvbG9yOiAjN2U0ZDdlO1xuICB0ZXh0LWRlY29yYXRpb246IG5vbmU7IH1cblxuLyogLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0gXHJcblxyXG5NYWluIENvbXBvbmVudHMgXHJcblxyXG4tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSAqL1xuaGVhZGVyIHtcbiAgcG9zaXRpb246IGZpeGVkO1xuICB6LWluZGV4OiAzO1xuICBoZWlnaHQ6IDUwcHg7XG4gIHdpZHRoOiAxMDAlO1xuICB0b3A6IDA7XG4gIGxlZnQ6IDA7XG4gIGJhY2tncm91bmQtY29sb3I6ICMzMzQxNGE7XG4gIC13ZWJraXQtZm9udC1zbW9vdGhpbmc6IGFudGlhbGlhc2VkO1xuICAtbW96LW9zeC1mb250LXNtb290aGluZzogZ3JheXNjYWxlO1xuICAvKiBGb3JjZSBIYXJkd2FyZSBBY2NlbGVyYXRpb24gKi9cbiAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZVooMCk7XG4gIC1tb3otdHJhbnNmb3JtOiB0cmFuc2xhdGVaKDApO1xuICAtbXMtdHJhbnNmb3JtOiB0cmFuc2xhdGVaKDApO1xuICAtby10cmFuc2Zvcm06IHRyYW5zbGF0ZVooMCk7XG4gIHRyYW5zZm9ybTogdHJhbnNsYXRlWigwKTtcbiAgLXdlYmtpdC1iYWNrZmFjZS12aXNpYmlsaXR5OiBoaWRkZW47XG4gIGJhY2tmYWNlLXZpc2liaWxpdHk6IGhpZGRlbjtcbiAgLXdlYmtpdC10cmFuc2l0aW9uOiAtd2Via2l0LXRyYW5zZm9ybSAwLjNzO1xuICAtbW96LXRyYW5zaXRpb246IC1tb3otdHJhbnNmb3JtIDAuM3M7XG4gIHRyYW5zaXRpb246IHRyYW5zZm9ybSAwLjNzOyB9XG5cbmhlYWRlci5uYXYtaXMtdmlzaWJsZSB7XG4gIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGVYKC0yNjBweCk7XG4gIC1tb3otdHJhbnNmb3JtOiB0cmFuc2xhdGVYKC0yNjBweCk7XG4gIC1tcy10cmFuc2Zvcm06IHRyYW5zbGF0ZVgoLTI2MHB4KTtcbiAgLW8tdHJhbnNmb3JtOiB0cmFuc2xhdGVYKC0yNjBweCk7XG4gIHRyYW5zZm9ybTogdHJhbnNsYXRlWCgtMjYwcHgpOyB9XG5cbmhlYWRlcjo6YmVmb3JlIHtcbiAgLyogbmV2ZXIgdmlzaWJsZSAtIHRoaXMgaXMgdXNlZCBpbiBqUXVlcnkgdG8gY2hlY2sgdGhlIGN1cnJlbnQgTVEgKi9cbiAgZGlzcGxheTogbm9uZTtcbiAgY29udGVudDogJ21vYmlsZSc7IH1cblxuQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWluLXdpZHRoOiAxMDI0cHgpIHtcbiAgaGVhZGVyIHtcbiAgICBoZWlnaHQ6IDgwcHg7IH1cbiAgaGVhZGVyLm5hdi1pcy12aXNpYmxlIHtcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlWCgwKTtcbiAgICAtbW96LXRyYW5zZm9ybTogdHJhbnNsYXRlWCgwKTtcbiAgICAtbXMtdHJhbnNmb3JtOiB0cmFuc2xhdGVYKDApO1xuICAgIC1vLXRyYW5zZm9ybTogdHJhbnNsYXRlWCgwKTtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoMCk7IH1cbiAgaGVhZGVyOjpiZWZvcmUge1xuICAgIGNvbnRlbnQ6ICdkZXNrdG9wJzsgfSB9XG5cbi5jZC1sb2dvIHtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICBoZWlnaHQ6IDEwMCU7XG4gIG1hcmdpbi1sZWZ0OiAxNXB4O1xuICAvKiByZW1vdmUganVtcCBvbiBpT1MgZGV2aWNlcyAtIHdoZW4gd2UgZmlyZSB0aGUgbmF2aWdhdGlvbiAqL1xuICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlWigwKTtcbiAgLW1vei10cmFuc2Zvcm06IHRyYW5zbGF0ZVooMCk7XG4gIC1tcy10cmFuc2Zvcm06IHRyYW5zbGF0ZVooMCk7XG4gIC1vLXRyYW5zZm9ybTogdHJhbnNsYXRlWigwKTtcbiAgdHJhbnNmb3JtOiB0cmFuc2xhdGVaKDApO1xuICAtd2Via2l0LWJhY2tmYWNlLXZpc2liaWxpdHk6IGhpZGRlbjtcbiAgYmFja2ZhY2UtdmlzaWJpbGl0eTogaGlkZGVuOyB9XG5cbi5jZC1sb2dvIGltZyB7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBtYXgtd2lkdGg6IDEwMCU7XG4gIG1hcmdpbi10b3A6IDE0cHg7IH1cblxuQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWluLXdpZHRoOiAxMDI0cHgpIHtcbiAgLmNkLWxvZ28ge1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICB6LWluZGV4OiAyO1xuICAgIG1hcmdpbi1sZWZ0OiA1JTsgfVxuICAuY2QtbG9nbyBpbWcge1xuICAgIG1hcmdpbi10b3A6IDI5cHg7IH0gfVxuXG4uY2QtbmF2LXRyaWdnZXIge1xuICBkaXNwbGF5OiBibG9jaztcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICByaWdodDogMDtcbiAgdG9wOiAwO1xuICBoZWlnaHQ6IDEwMCU7XG4gIHdpZHRoOiA1MHB4O1xuICAvKiBoaWRlIHRleHQgKi9cbiAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgd2hpdGUtc3BhY2U6IG5vd3JhcDtcbiAgY29sb3I6IHRyYW5zcGFyZW50OyB9XG5cbi5jZC1uYXYtdHJpZ2dlciBzcGFuIHtcbiAgLyogaGFtYnVyZ2VyIGljb24gY3JlYXRlZCBpbiBDU1MgKi9cbiAgcG9zaXRpb246IGFic29sdXRlO1xuICBoZWlnaHQ6IDJweDtcbiAgd2lkdGg6IDIwcHg7XG4gIHRvcDogNTAlO1xuICBtYXJnaW4tdG9wOiAtMXB4O1xuICBsZWZ0OiA1MCU7XG4gIG1hcmdpbi1sZWZ0OiAtMTBweDtcbiAgLXdlYmtpdC10cmFuc2l0aW9uOiBiYWNrZ3JvdW5kLWNvbG9yIDAuM3MgMC4zcztcbiAgLW1vei10cmFuc2l0aW9uOiBiYWNrZ3JvdW5kLWNvbG9yIDAuM3MgMC4zcztcbiAgdHJhbnNpdGlvbjogYmFja2dyb3VuZC1jb2xvciAwLjNzIDAuM3M7XG4gIGJhY2tncm91bmQtY29sb3I6ICNmZmZmZmY7IH1cblxuLmNkLW5hdi10cmlnZ2VyIHNwYW46OmJlZm9yZSwgLmNkLW5hdi10cmlnZ2VyIHNwYW46OmFmdGVyIHtcbiAgLyogdXBwZXIgYW5kIGxvd2VyIGxpbmVzIG9mIHRoZSBtZW51IGljb24gKi9cbiAgY29udGVudDogJyc7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgd2lkdGg6IDEwMCU7XG4gIGhlaWdodDogMTAwJTtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2ZmZmZmZjtcbiAgLyogRm9yY2UgSGFyZHdhcmUgQWNjZWxlcmF0aW9uICovXG4gIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGVaKDApO1xuICAtbW96LXRyYW5zZm9ybTogdHJhbnNsYXRlWigwKTtcbiAgLW1zLXRyYW5zZm9ybTogdHJhbnNsYXRlWigwKTtcbiAgLW8tdHJhbnNmb3JtOiB0cmFuc2xhdGVaKDApO1xuICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVooMCk7XG4gIC13ZWJraXQtYmFja2ZhY2UtdmlzaWJpbGl0eTogaGlkZGVuO1xuICBiYWNrZmFjZS12aXNpYmlsaXR5OiBoaWRkZW47XG4gIC13ZWJraXQtdHJhbnNpdGlvbjogLXdlYmtpdC10cmFuc2Zvcm0gMC4zcyAwLjNzO1xuICAtbW96LXRyYW5zaXRpb246IC1tb3otdHJhbnNmb3JtIDAuM3MgMC4zcztcbiAgdHJhbnNpdGlvbjogdHJhbnNmb3JtIDAuM3MgMC4zczsgfVxuXG4uY2QtbmF2LXRyaWdnZXIgc3Bhbjo6YmVmb3JlIHtcbiAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTZweCk7XG4gIC1tb3otdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC02cHgpO1xuICAtbXMtdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC02cHgpO1xuICAtby10cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTZweCk7XG4gIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgtNnB4KTsgfVxuXG4uY2QtbmF2LXRyaWdnZXIgc3Bhbjo6YWZ0ZXIge1xuICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlWSg2cHgpO1xuICAtbW96LXRyYW5zZm9ybTogdHJhbnNsYXRlWSg2cHgpO1xuICAtbXMtdHJhbnNmb3JtOiB0cmFuc2xhdGVZKDZweCk7XG4gIC1vLXRyYW5zZm9ybTogdHJhbnNsYXRlWSg2cHgpO1xuICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoNnB4KTsgfVxuXG4ubmF2LWlzLXZpc2libGUgLmNkLW5hdi10cmlnZ2VyIHNwYW4ge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiByZ2JhKDI1NSwgMjU1LCAyNTUsIDApOyB9XG5cbi5uYXYtaXMtdmlzaWJsZSAuY2QtbmF2LXRyaWdnZXIgc3Bhbjo6YmVmb3JlIHtcbiAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZVkoMCkgcm90YXRlKC00NWRlZyk7XG4gIC1tb3otdHJhbnNmb3JtOiB0cmFuc2xhdGVZKDApIHJvdGF0ZSgtNDVkZWcpO1xuICAtbXMtdHJhbnNmb3JtOiB0cmFuc2xhdGVZKDApIHJvdGF0ZSgtNDVkZWcpO1xuICAtby10cmFuc2Zvcm06IHRyYW5zbGF0ZVkoMCkgcm90YXRlKC00NWRlZyk7XG4gIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgwKSByb3RhdGUoLTQ1ZGVnKTsgfVxuXG4ubmF2LWlzLXZpc2libGUgLmNkLW5hdi10cmlnZ2VyIHNwYW46OmFmdGVyIHtcbiAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZVkoMCkgcm90YXRlKDQ1ZGVnKTtcbiAgLW1vei10cmFuc2Zvcm06IHRyYW5zbGF0ZVkoMCkgcm90YXRlKDQ1ZGVnKTtcbiAgLW1zLXRyYW5zZm9ybTogdHJhbnNsYXRlWSgwKSByb3RhdGUoNDVkZWcpO1xuICAtby10cmFuc2Zvcm06IHRyYW5zbGF0ZVkoMCkgcm90YXRlKDQ1ZGVnKTtcbiAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKDApIHJvdGF0ZSg0NWRlZyk7IH1cblxuQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWluLXdpZHRoOiAxMDI0cHgpIHtcbiAgLmNkLW5hdi10cmlnZ2VyIHtcbiAgICBkaXNwbGF5OiBub25lOyB9IH1cblxuLmNkLW1haW4tbmF2IHtcbiAgcG9zaXRpb246IGZpeGVkO1xuICB6LWluZGV4OiAxO1xuICB0b3A6IDA7XG4gIHJpZ2h0OiAwO1xuICB3aWR0aDogMjYwcHg7XG4gIGhlaWdodDogMTAwdmg7XG4gIG92ZXJmbG93OiBhdXRvO1xuICAtd2Via2l0LW92ZXJmbG93LXNjcm9sbGluZzogdG91Y2g7XG4gIHZpc2liaWxpdHk6IGhpZGRlbjtcbiAgYmFja2dyb3VuZDogIzFlMjYyYztcbiAgLXdlYmtpdC10cmFuc2l0aW9uOiB2aXNpYmlsaXR5IDBzIDAuM3M7XG4gIC1tb3otdHJhbnNpdGlvbjogdmlzaWJpbGl0eSAwcyAwLjNzO1xuICB0cmFuc2l0aW9uOiB2aXNpYmlsaXR5IDBzIDAuM3M7IH1cblxuLmNkLW1haW4tbmF2IGEge1xuICBkaXNwbGF5OiBibG9jaztcbiAgZm9udC1zaXplOiAxLjhyZW07XG4gIHBhZGRpbmc6IC45ZW0gMmVtIC45ZW0gMWVtO1xuICBib3JkZXItYm90dG9tOiAxcHggc29saWQgIzMzNDE0YTtcbiAgY29sb3I6ICNmZmZmZmY7XG4gIC13ZWJraXQtdHJhbnNpdGlvbjogLXdlYmtpdC10cmFuc2Zvcm0gMC4zcywgb3BhY2l0eSAwLjNzO1xuICAtbW96LXRyYW5zaXRpb246IC1tb3otdHJhbnNmb3JtIDAuM3MsIG9wYWNpdHkgMC4zcztcbiAgdHJhbnNpdGlvbjogdHJhbnNmb3JtIDAuM3MsIG9wYWNpdHkgMC4zczsgfVxuXG4uY2QtbWFpbi1uYXYgbGkgdWwge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHRvcDogMDtcbiAgbGVmdDogMDtcbiAgd2lkdGg6IDEwMCU7XG4gIC13ZWJraXQtdHJhbnNpdGlvbjogLXdlYmtpdC10cmFuc2Zvcm0gMC4zcztcbiAgLW1vei10cmFuc2l0aW9uOiAtbW96LXRyYW5zZm9ybSAwLjNzO1xuICB0cmFuc2l0aW9uOiB0cmFuc2Zvcm0gMC4zcztcbiAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZVgoMjYwcHgpO1xuICAtbW96LXRyYW5zZm9ybTogdHJhbnNsYXRlWCgyNjBweCk7XG4gIC1tcy10cmFuc2Zvcm06IHRyYW5zbGF0ZVgoMjYwcHgpO1xuICAtby10cmFuc2Zvcm06IHRyYW5zbGF0ZVgoMjYwcHgpO1xuICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoMjYwcHgpOyB9XG5cbi5jZC1tYWluLW5hdi5uYXYtaXMtdmlzaWJsZSB7XG4gIHZpc2liaWxpdHk6IHZpc2libGU7XG4gIC13ZWJraXQtdHJhbnNpdGlvbjogdmlzaWJpbGl0eSAwcyAwcztcbiAgLW1vei10cmFuc2l0aW9uOiB2aXNpYmlsaXR5IDBzIDBzO1xuICB0cmFuc2l0aW9uOiB2aXNpYmlsaXR5IDBzIDBzOyB9XG5cbi5jZC1tYWluLW5hdi5tb3Zlcy1vdXQgPiBsaSA+IGEge1xuICAvKiBwdXNoIHRoZSBuYXZpZ2F0aW9uIGl0ZW1zIHRvIHRoZSBsZWZ0IC0gYW5kIGxvd2VyIGRvd24gb3BhY2l0eSAtIHdoZW4gc2Vjb25kYXJ5IG5hdiBzbGlkZXMgaW4gKi9cbiAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZVgoLTEwMCUpO1xuICAtbW96LXRyYW5zZm9ybTogdHJhbnNsYXRlWCgtMTAwJSk7XG4gIC1tcy10cmFuc2Zvcm06IHRyYW5zbGF0ZVgoLTEwMCUpO1xuICAtby10cmFuc2Zvcm06IHRyYW5zbGF0ZVgoLTEwMCUpO1xuICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoLTEwMCUpO1xuICBvcGFjaXR5OiAwOyB9XG5cbi5jZC1tYWluLW5hdi5tb3Zlcy1vdXQgPiBsaSA+IHVsIHtcbiAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZVgoMCk7XG4gIC1tb3otdHJhbnNmb3JtOiB0cmFuc2xhdGVYKDApO1xuICAtbXMtdHJhbnNmb3JtOiB0cmFuc2xhdGVYKDApO1xuICAtby10cmFuc2Zvcm06IHRyYW5zbGF0ZVgoMCk7XG4gIHRyYW5zZm9ybTogdHJhbnNsYXRlWCgwKTsgfVxuXG4uY2QtbWFpbi1uYXYgLmNkLXN1Ym5hdi10cmlnZ2VyLCAuY2QtbWFpbi1uYXYgLmdvLWJhY2sgYSB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTsgfVxuXG4uY2QtbWFpbi1uYXYgLmNkLXN1Ym5hdi10cmlnZ2VyOjpiZWZvcmUsIC5jZC1tYWluLW5hdiAuY2Qtc3VibmF2LXRyaWdnZXI6OmFmdGVyLCAuY2QtbWFpbi1uYXYgLmdvLWJhY2sgYTo6YmVmb3JlLCAuY2QtbWFpbi1uYXYgLmdvLWJhY2sgYTo6YWZ0ZXIge1xuICAvKiBhcnJvdyBpY29uIGluIENTUyAqL1xuICBjb250ZW50OiAnJztcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB0b3A6IDUwJTtcbiAgbWFyZ2luLXRvcDogLTFweDtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICBoZWlnaHQ6IDJweDtcbiAgd2lkdGg6IDEwcHg7XG4gIGJhY2tncm91bmQ6ICM0ODVjNjg7XG4gIC13ZWJraXQtYmFja2ZhY2UtdmlzaWJpbGl0eTogaGlkZGVuO1xuICBiYWNrZmFjZS12aXNpYmlsaXR5OiBoaWRkZW47IH1cblxuLmNkLW1haW4tbmF2IC5jZC1zdWJuYXYtdHJpZ2dlcjo6YmVmb3JlLCAuY2QtbWFpbi1uYXYgLmdvLWJhY2sgYTo6YmVmb3JlIHtcbiAgLXdlYmtpdC10cmFuc2Zvcm06IHJvdGF0ZSg0NWRlZyk7XG4gIC1tb3otdHJhbnNmb3JtOiByb3RhdGUoNDVkZWcpO1xuICAtbXMtdHJhbnNmb3JtOiByb3RhdGUoNDVkZWcpO1xuICAtby10cmFuc2Zvcm06IHJvdGF0ZSg0NWRlZyk7XG4gIHRyYW5zZm9ybTogcm90YXRlKDQ1ZGVnKTsgfVxuXG4uY2QtbWFpbi1uYXYgLmNkLXN1Ym5hdi10cmlnZ2VyOjphZnRlciwgLmNkLW1haW4tbmF2IC5nby1iYWNrIGE6OmFmdGVyIHtcbiAgLXdlYmtpdC10cmFuc2Zvcm06IHJvdGF0ZSgtNDVkZWcpO1xuICAtbW96LXRyYW5zZm9ybTogcm90YXRlKC00NWRlZyk7XG4gIC1tcy10cmFuc2Zvcm06IHJvdGF0ZSgtNDVkZWcpO1xuICAtby10cmFuc2Zvcm06IHJvdGF0ZSgtNDVkZWcpO1xuICB0cmFuc2Zvcm06IHJvdGF0ZSgtNDVkZWcpOyB9XG5cbi5jZC1tYWluLW5hdiAuY2Qtc3VibmF2LXRyaWdnZXI6OmJlZm9yZSwgLmNkLW1haW4tbmF2IC5jZC1zdWJuYXYtdHJpZ2dlcjo6YWZ0ZXIge1xuICAvKiBhcnJvdyBnb2VzIG9uIHRoZSByaWdodCBzaWRlIC0gY2hpbGRyZW4gbmF2aWdhdGlvbiAqL1xuICByaWdodDogMjBweDtcbiAgLXdlYmtpdC10cmFuc2Zvcm0tb3JpZ2luOiA5cHggNTAlO1xuICAtbW96LXRyYW5zZm9ybS1vcmlnaW46IDlweCA1MCU7XG4gIC1tcy10cmFuc2Zvcm0tb3JpZ2luOiA5cHggNTAlO1xuICAtby10cmFuc2Zvcm0tb3JpZ2luOiA5cHggNTAlO1xuICB0cmFuc2Zvcm0tb3JpZ2luOiA5cHggNTAlOyB9XG5cbi5jZC1tYWluLW5hdiAuZ28tYmFjayBhIHtcbiAgcGFkZGluZy1sZWZ0OiAyZW07IH1cblxuLmNkLW1haW4tbmF2IC5nby1iYWNrIGE6OmJlZm9yZSwgLmNkLW1haW4tbmF2IC5nby1iYWNrIGE6OmFmdGVyIHtcbiAgLyogYXJyb3cgZ29lcyBvbiB0aGUgbGVmdCBzaWRlIC0gZ28gYmFjayBidXR0b24gKi9cbiAgbGVmdDogMjBweDtcbiAgLXdlYmtpdC10cmFuc2Zvcm0tb3JpZ2luOiAxcHggNTAlO1xuICAtbW96LXRyYW5zZm9ybS1vcmlnaW46IDFweCA1MCU7XG4gIC1tcy10cmFuc2Zvcm0tb3JpZ2luOiAxcHggNTAlO1xuICAtby10cmFuc2Zvcm0tb3JpZ2luOiAxcHggNTAlO1xuICB0cmFuc2Zvcm0tb3JpZ2luOiAxcHggNTAlOyB9XG5cbi5jZC1tYWluLW5hdiAucGxhY2Vob2xkZXIge1xuICAvKiBuZXZlciB2aXNpYmxlIG9yIGNsaWNrYWJsZS0gaXQgaXMgdXNlZCB0byB0YWtlIHVwIHRoZSBzYW1lIHNwYWNlIGFzIHRoZSAuY2Qtc3VibmF2LXRyaWdnZXIgKi9cbiAgZGlzcGxheTogbm9uZTsgfVxuXG5AbWVkaWEgb25seSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDEwMjRweCkge1xuICAuY2QtbWFpbi1uYXYge1xuICAgIHBvc2l0aW9uOiBzdGF0aWM7XG4gICAgdmlzaWJpbGl0eTogdmlzaWJsZTtcbiAgICB3aWR0aDogMTAwJTtcbiAgICBoZWlnaHQ6IDgwcHg7XG4gICAgbGluZS1oZWlnaHQ6IDgwcHg7XG4gICAgLyogcGFkZGluZyBsZWZ0ID0gbG9nbyBzaXplICsgbG9nbyBsZWZ0IHBvc2l0aW9uKi9cbiAgICBwYWRkaW5nOiAwIDUlIDAgY2FsYyg1JSArIDEyNHB4KTtcbiAgICBiYWNrZ3JvdW5kOiB0cmFuc3BhcmVudDtcbiAgICB0ZXh0LWFsaWduOiByaWdodDsgfVxuICAuY2QtbWFpbi1uYXYgbGkge1xuICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICBoZWlnaHQ6IDEwMCU7XG4gICAgcGFkZGluZzogMCAuNGVtOyB9XG4gIC5jZC1tYWluLW5hdiBsaSBhIHtcbiAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgcGFkZGluZzogLjhlbTtcbiAgICBsaW5lLWhlaWdodDogMTtcbiAgICBmb250LXNpemU6IDEuNnJlbTtcbiAgICBib3JkZXItYm90dG9tOiBub25lO1xuICAgIC8qIFByZXZlbnQgLmNkLXN1Ym5hdi10cmlnZ2VyIGZsaWNrZXIgaXMgU2FmYXJpICovXG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZVooMCk7XG4gICAgLW1vei10cmFuc2Zvcm06IHRyYW5zbGF0ZVooMCk7XG4gICAgLW1zLXRyYW5zZm9ybTogdHJhbnNsYXRlWigwKTtcbiAgICAtby10cmFuc2Zvcm06IHRyYW5zbGF0ZVooMCk7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVaKDApO1xuICAgIC13ZWJraXQtYmFja2ZhY2UtdmlzaWJpbGl0eTogaGlkZGVuO1xuICAgIGJhY2tmYWNlLXZpc2liaWxpdHk6IGhpZGRlbjtcbiAgICAtd2Via2l0LXRyYW5zaXRpb246IG9wYWNpdHkgMC4ycztcbiAgICAtbW96LXRyYW5zaXRpb246IG9wYWNpdHkgMC4ycztcbiAgICB0cmFuc2l0aW9uOiBvcGFjaXR5IDAuMnM7IH1cbiAgLmNkLW1haW4tbmF2IGxpIGE6bm90KC5jZC1zdWJuYXYtdHJpZ2dlcik6aG92ZXIge1xuICAgIC13ZWJraXQtYmFja2ZhY2UtdmlzaWJpbGl0eTogaGlkZGVuO1xuICAgIGJhY2tmYWNlLXZpc2liaWxpdHk6IGhpZGRlbjtcbiAgICBvcGFjaXR5OiAuNjsgfVxuICAuY2QtbWFpbi1uYXYgLmdvLWJhY2sge1xuICAgIGRpc3BsYXk6IG5vbmU7IH1cbiAgLmNkLW1haW4tbmF2IC5jZC1zdWJuYXYtdHJpZ2dlciB7XG4gICAgei1pbmRleDogMTtcbiAgICBib3JkZXI6IDFweCBzb2xpZCByZ2JhKDI1NSwgMjU1LCAyNTUsIDAuMik7XG4gICAgYm9yZGVyLXJhZGl1czogNWVtO1xuICAgIC13ZWJraXQtdHJhbnNpdGlvbjogYm9yZGVyIDAuM3M7XG4gICAgLW1vei10cmFuc2l0aW9uOiBib3JkZXIgMC4zcztcbiAgICB0cmFuc2l0aW9uOiBib3JkZXIgMC4zczsgfVxuICAuY2QtbWFpbi1uYXYgLmNkLXN1Ym5hdi10cmlnZ2VyOmhvdmVyIHtcbiAgICBib3JkZXItY29sb3I6IHJnYmEoMjU1LCAyNTUsIDI1NSwgMC40KTsgfVxuICAuY2QtbWFpbi1uYXYgLmNkLXN1Ym5hdi10cmlnZ2VyOjpiZWZvcmUsIC5jZC1tYWluLW5hdiAuY2Qtc3VibmF2LXRyaWdnZXI6OmFmdGVyIHtcbiAgICB0b3A6IDIycHg7XG4gICAgcmlnaHQ6IDE3cHg7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogI2ZmZmZmZjtcbiAgICAvKiBjaGFuZ2UgdHJhbnNmb3JtLW9yaWdpbiB0byByb3RhdGUgdGhlIGFycm93ICovXG4gICAgLXdlYmtpdC10cmFuc2Zvcm0tb3JpZ2luOiA1MCUgNTAlO1xuICAgIC1tb3otdHJhbnNmb3JtLW9yaWdpbjogNTAlIDUwJTtcbiAgICAtbXMtdHJhbnNmb3JtLW9yaWdpbjogNTAlIDUwJTtcbiAgICAtby10cmFuc2Zvcm0tb3JpZ2luOiA1MCUgNTAlO1xuICAgIHRyYW5zZm9ybS1vcmlnaW46IDUwJSA1MCU7XG4gICAgLXdlYmtpdC10cmFuc2l0aW9uOiAtd2Via2l0LXRyYW5zZm9ybSAwLjNzLCB3aWR0aCAwLjNzLCByaWdodCAwLjNzO1xuICAgIC1tb3otdHJhbnNpdGlvbjogLW1vei10cmFuc2Zvcm0gMC4zcywgd2lkdGggMC4zcywgcmlnaHQgMC4zcztcbiAgICB0cmFuc2l0aW9uOiB0cmFuc2Zvcm0gMC4zcywgd2lkdGggMC4zcywgcmlnaHQgMC4zczsgfVxuICAuY2QtbWFpbi1uYXYgLmNkLXN1Ym5hdi10cmlnZ2VyOjpiZWZvcmUge1xuICAgIHJpZ2h0OiAyM3B4OyB9XG4gIC5jZC1tYWluLW5hdiAuY2Qtc3VibmF2LXRyaWdnZXIsIC5jZC1tYWluLW5hdiAucGxhY2Vob2xkZXIge1xuICAgIHBhZGRpbmctcmlnaHQ6IDIuNGVtO1xuICAgIHBhZGRpbmctbGVmdDogMS4xZW07IH1cbiAgLmNkLW1haW4tbmF2IGxpIHVsIHtcbiAgICBoZWlnaHQ6IDgwcHg7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogIzdlNGQ3ZTtcbiAgICAvKiBwYWRkaW5nIGxlZnQgPSBsb2dvIHNpemUgKyBsb2dvIGxlZnQgcG9zaXRpb24qL1xuICAgIHBhZGRpbmc6IDAgNSUgMCBjYWxjKDUlICsgMTI0cHgpO1xuICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC04MHB4KTtcbiAgICAtbW96LXRyYW5zZm9ybTogdHJhbnNsYXRlWSgtODBweCk7XG4gICAgLW1zLXRyYW5zZm9ybTogdHJhbnNsYXRlWSgtODBweCk7XG4gICAgLW8tdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC04MHB4KTtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTgwcHgpO1xuICAgIC13ZWJraXQtdHJhbnNpdGlvbjogLXdlYmtpdC10cmFuc2Zvcm0gMC4zcyAwLjJzO1xuICAgIC1tb3otdHJhbnNpdGlvbjogLW1vei10cmFuc2Zvcm0gMC4zcyAwLjJzO1xuICAgIHRyYW5zaXRpb246IHRyYW5zZm9ybSAwLjNzIDAuMnM7IH1cbiAgLmNkLW1haW4tbmF2IGxpIHVsIGxpIHtcbiAgICBvcGFjaXR5OiAwO1xuICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC0yMHB4KTtcbiAgICAtbW96LXRyYW5zZm9ybTogdHJhbnNsYXRlWSgtMjBweCk7XG4gICAgLW1zLXRyYW5zZm9ybTogdHJhbnNsYXRlWSgtMjBweCk7XG4gICAgLW8tdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC0yMHB4KTtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTIwcHgpO1xuICAgIC13ZWJraXQtdHJhbnNpdGlvbjogLXdlYmtpdC10cmFuc2Zvcm0gMC4zcyAwcywgb3BhY2l0eSAwLjNzIDBzO1xuICAgIC1tb3otdHJhbnNpdGlvbjogLW1vei10cmFuc2Zvcm0gMC4zcyAwcywgb3BhY2l0eSAwLjNzIDBzO1xuICAgIHRyYW5zaXRpb246IHRyYW5zZm9ybSAwLjNzIDBzLCBvcGFjaXR5IDAuM3MgMHM7IH1cbiAgLmNkLW1haW4tbmF2IC5wbGFjZWhvbGRlciB7XG4gICAgLyogbmV2ZXIgdmlzaWJsZSBvciBjbGlja2FibGUtIGl0IGlzIHVzZWQgdG8gdGFrZSB1cCB0aGUgc2FtZSBzcGFjZSBhcyB0aGUgLmNkLXN1Ym5hdi10cmlnZ2VyICovXG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgdmlzaWJpbGl0eTogaGlkZGVuO1xuICAgIG9wYWNpdHk6IDA7XG4gICAgcG9pbnRlci1ldmVudDogbm9uZTsgfVxuICAuY2QtbWFpbi1uYXYubW92ZXMtb3V0ID4gbGkgPiBhIHtcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlWCgwKTtcbiAgICAtbW96LXRyYW5zZm9ybTogdHJhbnNsYXRlWCgwKTtcbiAgICAtbXMtdHJhbnNmb3JtOiB0cmFuc2xhdGVYKDApO1xuICAgIC1vLXRyYW5zZm9ybTogdHJhbnNsYXRlWCgwKTtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoMCk7XG4gICAgb3BhY2l0eTogMTsgfVxuICAuY2QtbWFpbi1uYXYubW92ZXMtb3V0ID4gbGkgPiB1bCB7XG4gICAgLXdlYmtpdC10cmFuc2l0aW9uOiAtd2Via2l0LXRyYW5zZm9ybSAwLjNzO1xuICAgIC1tb3otdHJhbnNpdGlvbjogLW1vei10cmFuc2Zvcm0gMC4zcztcbiAgICB0cmFuc2l0aW9uOiB0cmFuc2Zvcm0gMC4zcztcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlWSgwKTtcbiAgICAtbW96LXRyYW5zZm9ybTogdHJhbnNsYXRlWSgwKTtcbiAgICAtbXMtdHJhbnNmb3JtOiB0cmFuc2xhdGVZKDApO1xuICAgIC1vLXRyYW5zZm9ybTogdHJhbnNsYXRlWSgwKTtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoMCk7IH1cbiAgLmNkLW1haW4tbmF2Lm1vdmVzLW91dCA+IGxpIHVsIGxpIHtcbiAgICBvcGFjaXR5OiAxO1xuICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGVZKDApO1xuICAgIC1tb3otdHJhbnNmb3JtOiB0cmFuc2xhdGVZKDApO1xuICAgIC1tcy10cmFuc2Zvcm06IHRyYW5zbGF0ZVkoMCk7XG4gICAgLW8tdHJhbnNmb3JtOiB0cmFuc2xhdGVZKDApO1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgwKTtcbiAgICAtd2Via2l0LXRyYW5zaXRpb246IC13ZWJraXQtdHJhbnNmb3JtIDAuM3MgMC4ycywgb3BhY2l0eSAwLjNzIDAuMnM7XG4gICAgLW1vei10cmFuc2l0aW9uOiAtbW96LXRyYW5zZm9ybSAwLjNzIDAuMnMsIG9wYWNpdHkgMC4zcyAwLjJzO1xuICAgIHRyYW5zaXRpb246IHRyYW5zZm9ybSAwLjNzIDAuMnMsIG9wYWNpdHkgMC4zcyAwLjJzOyB9XG4gIC5jZC1tYWluLW5hdi5tb3Zlcy1vdXQgLmNkLXN1Ym5hdi10cmlnZ2VyOjpiZWZvcmUsIC5jZC1tYWluLW5hdi5tb3Zlcy1vdXQgLmNkLXN1Ym5hdi10cmlnZ2VyOjphZnRlciB7XG4gICAgd2lkdGg6IDE0cHg7XG4gICAgcmlnaHQ6IDE3cHg7IH1cbiAgLmNkLW1haW4tbmF2Lm1vdmVzLW91dCAuY2Qtc3VibmF2LXRyaWdnZXI6OmJlZm9yZSB7XG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHJvdGF0ZSgyMjVkZWcpO1xuICAgIC1tb3otdHJhbnNmb3JtOiByb3RhdGUoMjI1ZGVnKTtcbiAgICAtbXMtdHJhbnNmb3JtOiByb3RhdGUoMjI1ZGVnKTtcbiAgICAtby10cmFuc2Zvcm06IHJvdGF0ZSgyMjVkZWcpO1xuICAgIHRyYW5zZm9ybTogcm90YXRlKDIyNWRlZyk7IH1cbiAgLmNkLW1haW4tbmF2Lm1vdmVzLW91dCAuY2Qtc3VibmF2LXRyaWdnZXI6OmFmdGVyIHtcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogcm90YXRlKDEzNWRlZyk7XG4gICAgLW1vei10cmFuc2Zvcm06IHJvdGF0ZSgxMzVkZWcpO1xuICAgIC1tcy10cmFuc2Zvcm06IHJvdGF0ZSgxMzVkZWcpO1xuICAgIC1vLXRyYW5zZm9ybTogcm90YXRlKDEzNWRlZyk7XG4gICAgdHJhbnNmb3JtOiByb3RhdGUoMTM1ZGVnKTsgfSB9XG5cbi5jZC1tYWluLWNvbnRlbnQ6OmJlZm9yZSB7XG4gIC8qIG5ldmVyIHZpc2libGUgLSB0aGlzIGlzIHVzZWQgaW4galF1ZXJ5IHRvIGNoZWNrIHRoZSBjdXJyZW50IE1RICovXG4gIGRpc3BsYXk6IG5vbmU7XG4gIGNvbnRlbnQ6ICdtb2JpbGUnOyB9XG5cbkBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1pbi13aWR0aDogMTAyNHB4KSB7XG4gIC5jZC1tYWluLWNvbnRlbnQ6OmJlZm9yZSB7XG4gICAgY29udGVudDogJ2Rlc2t0b3AnOyB9IH1cblxuLmNkLW1haW4tY29udGVudCB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgei1pbmRleDogMjtcbiAgbWluLWhlaWdodDogMTAwdmg7XG4gIHBhZGRpbmctdG9wOiA1MHB4O1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZjJmMmYyO1xuICAtd2Via2l0LXRyYW5zaXRpb246IC13ZWJraXQtdHJhbnNmb3JtIDAuM3M7XG4gIC1tb3otdHJhbnNpdGlvbjogLW1vei10cmFuc2Zvcm0gMC4zcztcbiAgdHJhbnNpdGlvbjogdHJhbnNmb3JtIDAuM3M7IH1cblxuLmNkLW1haW4tY29udGVudC5uYXYtaXMtdmlzaWJsZSB7XG4gIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGVYKC0yNjBweCk7XG4gIC1tb3otdHJhbnNmb3JtOiB0cmFuc2xhdGVYKC0yNjBweCk7XG4gIC1tcy10cmFuc2Zvcm06IHRyYW5zbGF0ZVgoLTI2MHB4KTtcbiAgLW8tdHJhbnNmb3JtOiB0cmFuc2xhdGVYKC0yNjBweCk7XG4gIHRyYW5zZm9ybTogdHJhbnNsYXRlWCgtMjYwcHgpOyB9XG5cbkBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1pbi13aWR0aDogMTAyNHB4KSB7XG4gIC5jZC1tYWluLWNvbnRlbnQge1xuICAgIHBhZGRpbmctdG9wOiA4MHB4OyB9XG4gIC5jZC1tYWluLWNvbnRlbnQubmF2LWlzLXZpc2libGUge1xuICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGVYKDApO1xuICAgIC1tb3otdHJhbnNmb3JtOiB0cmFuc2xhdGVYKDApO1xuICAgIC1tcy10cmFuc2Zvcm06IHRyYW5zbGF0ZVgoMCk7XG4gICAgLW8tdHJhbnNmb3JtOiB0cmFuc2xhdGVYKDApO1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWCgwKTsgfSB9XG5cbi5uby1qcyAuY2QtbmF2LXRyaWdnZXIsIC5uby1qcyAuY2Qtc3VibmF2LXRyaWdnZXIge1xuICBkaXNwbGF5OiBub25lOyB9XG5cbi5uby1qcyBoZWFkZXIge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIGhlaWdodDogYXV0bzsgfVxuXG4ubm8tanMgLmNkLWxvZ28gaW1nIHtcbiAgbWFyZ2luLWJvdHRvbTogMTRweDsgfVxuXG4ubm8tanMgLmNkLW1haW4tbmF2IHtcbiAgcG9zaXRpb246IHN0YXRpYztcbiAgd2lkdGg6IDEwMCU7XG4gIGhlaWdodDogYXV0bztcbiAgdmlzaWJpbGl0eTogdmlzaWJsZTtcbiAgb3ZlcmZsb3c6IHZpc2libGU7IH1cblxuLm5vLWpzIC5jZC1tYWluLW5hdiBsaSB7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jazsgfVxuXG4ubm8tanMgLmNkLW1haW4tbmF2IGxpOmxhc3QtY2hpbGQge1xuICBkaXNwbGF5OiBibG9jazsgfVxuXG4ubm8tanMgLmNkLW1haW4tbmF2IC5nby1iYWNrIHtcbiAgZGlzcGxheTogbm9uZTsgfVxuXG4ubm8tanMgLmNkLW1haW4tbmF2IGxpIHVsIHtcbiAgcG9zaXRpb246IHN0YXRpYztcbiAgd2lkdGg6IDEwMCU7XG4gIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGVYKDApO1xuICAtbW96LXRyYW5zZm9ybTogdHJhbnNsYXRlWCgwKTtcbiAgLW1zLXRyYW5zZm9ybTogdHJhbnNsYXRlWCgwKTtcbiAgLW8tdHJhbnNmb3JtOiB0cmFuc2xhdGVYKDApO1xuICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoMCk7IH1cblxuQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWluLXdpZHRoOiAxMDI0cHgpIHtcbiAgLm5vLWpzIC5jZC1tYWluLW5hdiB7XG4gICAgaGVpZ2h0OiA4MHB4OyB9XG4gIC5uby1qcyAuY2QtbWFpbi1uYXYgbGkgdWwge1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICB0b3A6IDgwcHg7IH1cbiAgLm5vLWpzIC5jZC1tYWluLW5hdiBsaSB1bCBsaSB7XG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZVkoMCk7XG4gICAgLW1vei10cmFuc2Zvcm06IHRyYW5zbGF0ZVkoMCk7XG4gICAgLW1zLXRyYW5zZm9ybTogdHJhbnNsYXRlWSgwKTtcbiAgICAtby10cmFuc2Zvcm06IHRyYW5zbGF0ZVkoMCk7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKDApO1xuICAgIG9wYWNpdHk6IDE7IH1cbiAgLm5vLWpzIC5jZC1tYWluLW5hdiBsaSB1bCBsaTpsYXN0LWNoaWxkIHtcbiAgICBkaXNwbGF5OiBub25lOyB9IH1cblxuLm5vLWpzIC5jZC1tYWluLWNvbnRlbnQge1xuICBwYWRkaW5nLXRvcDogMDsgfVxuXG5AbWVkaWEgb25seSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDEwMjRweCkge1xuICAubm8tanMgLmNkLW1haW4tY29udGVudCB7XG4gICAgcGFkZGluZy10b3A6IDgwcHg7IH0gfVxuXG4vKkBpbXBvcnQgXCIuLi9Db250ZW50L0ZsYXRpY29uL2ZsYXRpY29uLmNzc1wiOyovXG4vKiBLb21wb25lbnR5ICovXG4jYnJlYWRjcnVtYiB7XG4gIHBhZGRpbmc6IDEwcHggMDtcbiAgLyptYXJnaW4tdG9wOiAxM3B4OyovIH1cbiAgI2JyZWFkY3J1bWIgLmJyZWFkY3J1bWItaXRlbSB7XG4gICAgZGlzcGxheTogaW5saW5lLWJsb2NrOyB9XG4gICAgI2JyZWFkY3J1bWIgLmJyZWFkY3J1bWItaXRlbSBhLCAjYnJlYWRjcnVtYiAuYnJlYWRjcnVtYi1pdGVtIHNwYW4ge1xuICAgICAgY29sb3I6ICNhNWE1YTU7XG4gICAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG4gICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICBtYXJnaW46IDAgMnB4OyB9XG4gICAgI2JyZWFkY3J1bWIgLmJyZWFkY3J1bWItaXRlbSBhOmhvdmVyIHtcbiAgICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTsgfVxuICAgICNicmVhZGNydW1iIC5icmVhZGNydW1iLWl0ZW0gc3BhbjpiZWZvcmUge1xuICAgICAgZm9udC1zaXplOiAxM3B4OyB9XG4gICAgI2JyZWFkY3J1bWIgLmJyZWFkY3J1bWItaXRlbS5sZXZlbDAgYSBzcGFuIHtcbiAgICAgIGNvbG9yOiAjYTVhNWE1OyB9XG4gICAgI2JyZWFkY3J1bWIgLmJyZWFkY3J1bWItaXRlbS5sZXZlbDAgc3BhbjpiZWZvcmUge1xuICAgICAgZm9udC1zaXplOiAxNXB4OyB9XG4gICAgI2JyZWFkY3J1bWIgLmJyZWFkY3J1bWItaXRlbS5sZXZlbDEgYSBzcGFuIHtcbiAgICAgIGNvbG9yOiAjNzI3MjcyOyB9XG4gICAgI2JyZWFkY3J1bWIgLmJyZWFkY3J1bWItaXRlbS5sZXZlbDIgYSBzcGFuIHtcbiAgICAgIGNvbG9yOiAjM2YzZjNmOyB9XG4gICAgI2JyZWFkY3J1bWIgLmJyZWFkY3J1bWItaXRlbS5sZXZlbDMgYSBzcGFuIHtcbiAgICAgIGNvbG9yOiAjMGMwYzBjOyB9XG4gICAgI2JyZWFkY3J1bWIgLmJyZWFkY3J1bWItaXRlbS5sZXZlbDQgYSBzcGFuIHtcbiAgICAgIGNvbG9yOiBibGFjazsgfVxuXG5oZWFkZXIgLnNlYXJjaC1pbnB1dCB7XG4gIHBhZGRpbmctcmlnaHQ6IDA7XG4gIG1hcmdpbi1yaWdodDogMDsgfVxuICBoZWFkZXIgLnNlYXJjaC1pbnB1dCBpbnB1dFt0eXBlPVwidGV4dFwiXSB7XG4gICAgYm9yZGVyLXJpZ2h0OiBub25lO1xuICAgIGJhY2tncm91bmQtY29sb3I6ICNlZWVlZWU7IH1cblxuaGVhZGVyIC5zZWFyY2gtYnV0dG9uIHtcbiAgcGFkZGluZy1sZWZ0OiAwO1xuICBtYXJnaW4tbGVmdDogMDsgfVxuICBoZWFkZXIgLnNlYXJjaC1idXR0b24gLmJ0bi5ucHJvZ3Jlc3MtbGluayB7XG4gICAgbWFyZ2luOiAwO1xuICAgIGJhY2tncm91bmQtY29sb3I6ICNmZmY7XG4gICAgaGVpZ2h0OiA0MHB4O1xuICAgIGJvcmRlci1yYWRpdXM6IDA7XG4gICAgYm9yZGVyOiAxcHggc29saWQgI2NlY2VjZTtcbiAgICBib3JkZXItbGVmdDogbm9uZTsgfVxuICAgIGhlYWRlciAuc2VhcmNoLWJ1dHRvbiAuYnRuLm5wcm9ncmVzcy1saW5rOmhvdmVyIHtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6ICMyMTY3YWQ7IH1cblxuLmxhbmd1YWdlLXN3aXRjaCB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgbGVmdDogMDsgfVxuICAubGFuZ3VhZ2Utc3dpdGNoIGxpIHtcbiAgICBsaXN0LXN0eWxlLXR5cGU6IG5vbmU7XG4gICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgIG1hcmdpbi1yaWdodDogMTRweDsgfVxuICAgIC5sYW5ndWFnZS1zd2l0Y2ggbGkuYWN0aXZlIGEge1xuICAgICAgYm9yZGVyLWJvdHRvbTogN3B4IHNvbGlkICNmZmY7IH1cblxuLyogTWFrZSBjbGlja3MgcGFzcy10aHJvdWdoICovXG4jbnByb2dyZXNzIHtcbiAgcG9pbnRlci1ldmVudHM6IG5vbmU7IH1cblxuI25wcm9ncmVzcyAuYmFyIHtcbiAgYmFja2dyb3VuZDogIzIxNjdBRDtcbiAgcG9zaXRpb246IGZpeGVkO1xuICB6LWluZGV4OiAxMDMxO1xuICB0b3A6IDA7XG4gIGxlZnQ6IDA7XG4gIHdpZHRoOiAxMDAlO1xuICBoZWlnaHQ6IDRweDsgfVxuXG4vKiBGYW5jeSBibHVyIGVmZmVjdCAqL1xuI25wcm9ncmVzcyAucGVnIHtcbiAgZGlzcGxheTogYmxvY2s7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgcmlnaHQ6IDBweDtcbiAgd2lkdGg6IDEwMHB4O1xuICBoZWlnaHQ6IDEwMCU7XG4gIGJveC1zaGFkb3c6IDAgMCAxMHB4ICMyMTY3QUQsIDAgMCA1cHggIzIxNjdBRDtcbiAgb3BhY2l0eTogMS4wO1xuICAtd2Via2l0LXRyYW5zZm9ybTogcm90YXRlKDNkZWcpIHRyYW5zbGF0ZSgwcHgsIC00cHgpO1xuICAtbXMtdHJhbnNmb3JtOiByb3RhdGUoM2RlZykgdHJhbnNsYXRlKDBweCwgLTRweCk7XG4gIHRyYW5zZm9ybTogcm90YXRlKDNkZWcpIHRyYW5zbGF0ZSgwcHgsIC00cHgpOyB9XG5cbi8qIFJlbW92ZSB0aGVzZSB0byBnZXQgcmlkIG9mIHRoZSBzcGlubmVyICovXG4jbnByb2dyZXNzIC5zcGlubmVyIHtcbiAgZGlzcGxheTogYmxvY2s7XG4gIHBvc2l0aW9uOiBmaXhlZDtcbiAgei1pbmRleDogMTAzMTtcbiAgdG9wOiAxNXB4O1xuICByaWdodDogMTVweDsgfVxuXG4jbnByb2dyZXNzIC5zcGlubmVyLWljb24ge1xuICB3aWR0aDogMThweDtcbiAgaGVpZ2h0OiAxOHB4O1xuICBib3gtc2l6aW5nOiBib3JkZXItYm94O1xuICBib3JkZXI6IHNvbGlkIDJweCB0cmFuc3BhcmVudDtcbiAgYm9yZGVyLXRvcC1jb2xvcjogIzIyMjtcbiAgYm9yZGVyLWxlZnQtY29sb3I6ICMyMjI7XG4gIGJvcmRlci1yYWRpdXM6IDUwJTtcbiAgLXdlYmtpdC1hbmltYXRpb246IG5wcm9ncmVzcy1zcGlubmVyIDQwMG1zIGxpbmVhciBpbmZpbml0ZTtcbiAgYW5pbWF0aW9uOiBucHJvZ3Jlc3Mtc3Bpbm5lciA0MDBtcyBsaW5lYXIgaW5maW5pdGU7IH1cblxuLm5wcm9ncmVzcy1jdXN0b20tcGFyZW50IHtcbiAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgcG9zaXRpb246IHJlbGF0aXZlOyB9XG5cbi5ucHJvZ3Jlc3MtY3VzdG9tLXBhcmVudCAjbnByb2dyZXNzIC5zcGlubmVyLFxuLm5wcm9ncmVzcy1jdXN0b20tcGFyZW50ICNucHJvZ3Jlc3MgLmJhciB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTsgfVxuXG5ALXdlYmtpdC1rZXlmcmFtZXMgbnByb2dyZXNzLXNwaW5uZXIge1xuICAwJSB7XG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHJvdGF0ZSgwZGVnKTsgfVxuICAxMDAlIHtcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogcm90YXRlKDM2MGRlZyk7IH0gfVxuXG5Aa2V5ZnJhbWVzIG5wcm9ncmVzcy1zcGlubmVyIHtcbiAgMCUge1xuICAgIHRyYW5zZm9ybTogcm90YXRlKDBkZWcpOyB9XG4gIDEwMCUge1xuICAgIHRyYW5zZm9ybTogcm90YXRlKDM2MGRlZyk7IH0gfVxuXG4vKiBMYXlvdXQgKi9cbi8qXHJcbj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cclxuICAgICAgICAgICAgICAgIEhFQURFUlxyXG49PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XHJcbiovXG4vKkBpbXBvcnQgXCJfdmFyaWFibGVzLnNjc3NcIjtcclxuQGltcG9ydCBcImJvb3RzdHJhcC9fdmFyaWFibGVzLnNjc3NcIjsqL1xuLypcclxuPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxyXG4gICAgICAgICAgICAgICAgTUFJTlxyXG49PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XHJcbiovXG5ib2R5IHtcbiAgZm9udC1zaXplOiAxNHB4O1xuICBsaW5lLWhlaWdodDogMS42O1xuICBmb250LWZhbWlseTogXCJPcGVuU2Fuc1JlZ3VsYXJcIiwgXCJMYXRvXCIsXCJIZWx2ZXRpY2FOZXVlXCIsXCJIZWx2ZXRpY2EgTmV1ZVwiLEhlbHZldGljYSxBcmlhbCxzYW5zLXNlcmlmO1xuICBjb2xvcjogIzRmNGY0ZjtcbiAgZm9udC13ZWlnaHQ6IDQwMDtcbiAgYmFja2dyb3VuZDogbm9uZTtcbiAgLypDTVMgY29udGFpbnRlciovIH1cbiAgYm9keSBoMSB7XG4gICAgY29sb3I6ICMwMDA7IH1cbiAgICBAbWVkaWEgKG1heC13aWR0aDogOTkxcHgpIHtcbiAgICAgIGJvZHkgaDEge1xuICAgICAgICBmb250LXNpemU6IDMwcHg7IH0gfVxuICAgIEBtZWRpYSAobWF4LXdpZHRoOiA3NjdweCkge1xuICAgICAgYm9keSBoMSB7XG4gICAgICAgIGZvbnQtc2l6ZTogMjZweDsgfSB9XG4gIGJvZHkgaDIge1xuICAgIGZvbnQtc2l6ZTogMS43ZW07IH1cbiAgICBAbWVkaWEgKG1heC13aWR0aDogOTkxcHgpIHtcbiAgICAgIGJvZHkgaDIge1xuICAgICAgICBmb250LXNpemU6IDIzcHg7IH0gfVxuICAgIEBtZWRpYSAobWF4LXdpZHRoOiA3NjdweCkge1xuICAgICAgYm9keSBoMiB7XG4gICAgICAgIGZvbnQtc2l6ZTogMjFweDsgfSB9XG4gIEBtZWRpYSAobWF4LXdpZHRoOiA5OTFweCkge1xuICAgIGJvZHkgaDMge1xuICAgICAgZm9udC1zaXplOiAyMHB4OyB9IH1cbiAgQG1lZGlhIChtYXgtd2lkdGg6IDc2N3B4KSB7XG4gICAgYm9keSBoMyB7XG4gICAgICBmb250LXNpemU6IDE4cHg7IH0gfVxuICBib2R5IC5jb250ZW50IHtcbiAgICBtYXJnaW4tdG9wOiA1NXB4O1xuICAgIG1hcmdpbi1ib3R0b206IDIwcHg7IH1cbiAgYm9keSAuY21zLWNvbnRlbnQge1xuICAgIG1hcmdpbi10b3A6IDIwcHg7XG4gICAgbWFyZ2luLWJvdHRvbTogMjBweDsgfVxuICAgIGJvZHkgLmNtcy1jb250ZW50ICoge1xuICAgICAgY29sb3I6ICNmZmY7IH1cblxuLmJ0bi5idG4tcmFpc2VkLmJ0bi1saWdodCB7XG4gIGJhY2tncm91bmQtY29sb3I6ICNlNWU4ZWY7XG4gIGNvbG9yOiAjMDAwO1xuICBib3JkZXItcmFkaXVzOiAwO1xuICBwYWRkaW5nOiAxNXB4O1xuICBwYWRkaW5nLWxlZnQ6IDUwcHg7XG4gIHBhZGRpbmctcmlnaHQ6IDUwcHg7XG4gIG1hcmdpbi10b3A6IDMwcHg7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jazsgfVxuXG4uYnRuLmJ0bi1yYWlzZWQuYnRuLWRhcmsge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjMDAxZTVhO1xuICBjb2xvcjogI2ZmZjtcbiAgYm9yZGVyLXJhZGl1czogMDtcbiAgcGFkZGluZzogMTVweDtcbiAgcGFkZGluZy1sZWZ0OiA1MHB4O1xuICBwYWRkaW5nLXJpZ2h0OiA1MHB4O1xuICBtYXJnaW4tdG9wOiAzMHB4OyB9XG5cbi5idG4uYnRuLXJhaXNlZC5idG4tZGFyazpob3ZlciB7XG4gIGJhY2tncm91bmQtY29sb3I6ICMwMDJjODM7IH1cblxuLmJ0bi5idG4tcmFpc2VkLmJ0bi1kYXJrOmZvY3VzIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogIzAwMmM4MzsgfVxuXG4uYnRuLmJ0bi1yYWlzZWQuYnRuLWxpZ2h0OmhvdmVyIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2ZlZmVmZjsgfVxuXG4uY2QtbWFpbi1jb250ZW50IHtcbiAgbWluLWhlaWdodDogaW5oZXJpdDsgfVxuXG4ubmV4dC1yb3dzLXdyYXAge1xuICBkaXNwbGF5OiBibG9jaztcbiAgdGV4dC1hbGlnbjogY2VudGVyOyB9XG4gIC5uZXh0LXJvd3Mtd3JhcCAubmV4dC1yb3dzIHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgbWFyZ2luLWJvdHRvbTogNjVweDsgfVxuICAgIC5uZXh0LXJvd3Mtd3JhcCAubmV4dC1yb3dzIC5pY29uIHtcbiAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgIGJvdHRvbTogLTUwcHg7XG4gICAgICBsZWZ0OiA1MCU7XG4gICAgICBtYXJnaW4tbGVmdDogLTI1cHg7IH1cbiAgICAgIC5uZXh0LXJvd3Mtd3JhcCAubmV4dC1yb3dzIC5pY29uOmJlZm9yZSB7XG4gICAgICAgIGZvbnQtc2l6ZTogNDBweDtcbiAgICAgICAgY29sb3I6ICMwMDA7IH1cblxuI21haW4ge1xuICBtYXJnaW4tdG9wOiAxMTBweDtcbiAgLyptYXJnaW4tdG9wOiAxNThweDsqL1xuICAvKkBtZWRpYSAobWF4LXdpZHRoOiAkc2NyZWVuLW1kLW1heCkge1xyXG4gICAgICAgIG1hcmdpbi10b3A6IDE3NXB4O1xyXG4gICAgfVxyXG5cclxuICAgIEBtZWRpYSAobWF4LXdpZHRoOiAkc2NyZWVuLXNtLW1heCkge1xyXG4gICAgICAgIG1hcmdpbi10b3A6IDIxNXB4O1xyXG4gICAgfVxyXG5cclxuICAgIEBtZWRpYSAobWF4LXdpZHRoOiAkc2NyZWVuLXhzLW1heCkge1xyXG4gICAgICAgIG1hcmdpbi10b3A6IDEyMXB4O1xyXG4gICAgfSovXG4gIHBhZGRpbmc6IDA7XG4gIG92ZXJmbG93OiBoaWRkZW47IH1cbiAgI21haW4gI21haW4tY29udGVudCAucHJvZHVjdEZvcm0gYnV0dG9uIHtcbiAgICBib3JkZXI6IDA7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogIzM0YzQ3MTtcbiAgICBjb2xvcjogI2ZmZjtcbiAgICBwYWRkaW5nOiAzcHggOXB4O1xuICAgIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG4gICAgYm9yZGVyLXJhZGl1czogNXB4O1xuICAgIGZvbnQtc2l6ZTogMTVweDtcbiAgICBsaW5lLWhlaWdodDogMzJweDsgfVxuICAgICNtYWluICNtYWluLWNvbnRlbnQgLnByb2R1Y3RGb3JtIGJ1dHRvbiBpIHtcbiAgICAgIGZvbnQtc2l6ZTogMjBweDsgfVxuICAgICNtYWluICNtYWluLWNvbnRlbnQgLnByb2R1Y3RGb3JtIGJ1dHRvbjpob3ZlciBpIHtcbiAgICAgIGZvbnQtc2l6ZTogMjVweDsgfVxuICBAbWVkaWEgKG1heC13aWR0aDogMTE5OXB4KSB7XG4gICAgI21haW4gI21haW4tY29udGVudCAucHJvZHVjdEZvcm0ge1xuICAgICAgdGV4dC1hbGlnbjogY2VudGVyOyB9IH1cbiAgI21haW4gLmJhY2tncm91bmQtZWxpcHNlIHtcbiAgICBiYWNrZ3JvdW5kOiAjMDAwZDI1O1xuICAgIGJhY2tncm91bmQ6IGxpbmVhci1ncmFkaWVudCh0byByaWdodCwgIzAwMDcxNSAwJSwgIzE2Mjc0MyA0MiUsICMxNjI3NDMgNTklLCAjMDAwNzE1IDEwMCUpO1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIG92ZXJmbG93OiBoaWRkZW47XG4gICAgei1pbmRleDogLTI7XG4gICAgcGFkZGluZy10b3A6IDE4cHg7XG4gICAgcG9zaXRpb246IGFic29sdXRlOyB9XG4gICAgQG1lZGlhIChtYXgtd2lkdGg6IDc2N3B4KSB7XG4gICAgICAjbWFpbiAuYmFja2dyb3VuZC1lbGlwc2Uge1xuICAgICAgICBkaXNwbGF5OiBub25lOyB9IH1cbiAgICAjbWFpbiAuYmFja2dyb3VuZC1lbGlwc2UgLnNoYWRvdyB7XG4gICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICBib3gtc2hhZG93OiAjOTQ5NDk0IDNweCAzcHggM3B4IGluc2V0O1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gICAgICBib3JkZXItcmFkaXVzOiAyNDglIC8gMTAwJTtcbiAgICAgIGJvcmRlci1ib3R0b20tbGVmdC1yYWRpdXM6IDA7XG4gICAgICB3aWR0aDogMTYwJTtcbiAgICAgIG1hcmdpbjogMCBhdXRvO1xuICAgICAgbWFyZ2luLWxlZnQ6IC0zMCU7XG4gICAgICBvdmVyZmxvdzogaGlkZGVuOyB9XG4gICAgI21haW4gLmJhY2tncm91bmQtZWxpcHNlLmNvbnRhY3QgLnNoYWRvdyB7XG4gICAgICBib3gtc2hhZG93OiBub25lOyB9XG4gICAgICAjbWFpbiAuYmFja2dyb3VuZC1lbGlwc2UuY29udGFjdCAuc2hhZG93IC5iYWNrZ3JvdW5kLWhvbWUge1xuICAgICAgICBiYWNrZ3JvdW5kOiAjMDAwZDI1O1xuICAgICAgICBiYWNrZ3JvdW5kOiBsaW5lYXItZ3JhZGllbnQodG8gcmlnaHQsICMwMDBkMjUgMCUsICMxNjI3NDMgNDIlLCAjMTYyNzQzIDU5JSwgIzAwMGQyNSAxMDAlKTsgfVxuICAgIEBtZWRpYSAobWF4LXdpZHRoOiA3NjdweCkge1xuICAgICAgI21haW4gLmJhY2tncm91bmQtZWxpcHNlLmNvbnRhY3Qge1xuICAgICAgICBkaXNwbGF5OiBibG9jazsgfSB9XG4gICAgI21haW4gLmJhY2tncm91bmQtZWxpcHNlIC5iYWNrZ3JvdW5kLWhvbWUge1xuICAgICAgLyptYXgtd2lkdGg6IDEwMCU7Ki9cbiAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgIHotaW5kZXg6IC0xO1xuICAgICAgd2lkdGg6IDE5MjBweDtcbiAgICAgIGhlaWdodDogMTI2OXB4O1xuICAgICAgLyptYXgtaGVpZ2h0OiA1MDBweDsqL1xuICAgICAgbWFyZ2luOiAwIGF1dG87XG4gICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgIC8qbWFyZ2luLWxlZnQ6IDA7Ki9cbiAgICAgIC8qYm9yZGVyLXJhZGl1czogMjQ4JSAvIDEwMCU7XHJcbiAgICAgICAgICAgIGJvcmRlci1ib3R0b20tbGVmdC1yYWRpdXM6IDA7XHJcbiAgICAgICAgICAgIGJvcmRlci1ib3R0b20tcmlnaHQtcmFkaXVzOiAwOyovXG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjZmZmOyB9XG5cbi5jY19iYW5uZXItd3JhcHBlciAuY2NfYmFubmVyLmNjX2NvbnRhaW5lci5jY19jb250YWluZXItLW9wZW4ge1xuICBiYWNrZ3JvdW5kOiAjMDAxZTVhICFpbXBvcnRhbnQ7IH1cblxuLmNjX2Jhbm5lci13cmFwcGVyIC5jY19jb250YWluZXIgLmNjX2J0biwgLmNjX2Jhbm5lci13cmFwcGVyIC5jY19jb250YWluZXIgLmNjX2J0bjp2aXNpdGVkIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogIzIxNjdBRDtcbiAgY29sb3I6ICNmZmY7IH1cblxuLypAaW1wb3J0IFwiYm9vdHN0cmFwL192YXJpYWJsZXMuc2Nzc1wiO1xyXG5AaW1wb3J0IFwiX3ZhcmlhYmxlcy5zY3NzXCI7Ki9cbmhlYWRlciB7XG4gIGhlaWdodDogYXV0bztcbiAgLypwb3NpdGlvbjogcmVsYXRpdmU7Ki9cbiAgLypvdmVyZmxvdzogaGlkZGVuOyovXG4gIGJhY2tncm91bmQtY29sb3I6ICM4Yjk2YWE7IH1cbiAgaGVhZGVyICNzZWFyY2gtYXJlYSB7XG4gICAgYmFja2dyb3VuZDogIzhiOTZhYTtcbiAgICBiYWNrZ3JvdW5kOiBsaW5lYXItZ3JhZGllbnQodG8gcmlnaHQsICM4Yjk2YWEgMSUsICNjMmM3Y2QgMzklLCAjYzljOWM5IDUwJSwgI2MyYzdjZCA2MSUsICM4Yjk2YWEgMTAwJSk7XG4gICAgei1pbmRleDogNTtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgaGVpZ2h0OiA1MHB4OyB9XG4gICAgaGVhZGVyICNzZWFyY2gtYXJlYSAucGhvbmUgYSwgaGVhZGVyICNzZWFyY2gtYXJlYSAuZW1haWwgYSB7XG4gICAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG4gICAgICBjb2xvcjogIzQ4NTg3MjsgfVxuICAgIGhlYWRlciAjc2VhcmNoLWFyZWEgLnBob25lIC5wcmUsIGhlYWRlciAjc2VhcmNoLWFyZWEgLmVtYWlsIC5wcmUge1xuICAgICAgY29sb3I6ICM1YzcwOTE7IH1cbiAgICBoZWFkZXIgI3NlYXJjaC1hcmVhIC5waG9uZSBzcGFuLCBoZWFkZXIgI3NlYXJjaC1hcmVhIC5lbWFpbCBzcGFuIHtcbiAgICAgIG1hcmdpbjogMDtcbiAgICAgIHBhZGRpbmc6IDA7XG4gICAgICBoZWlnaHQ6IDEwMCU7XG4gICAgICBsaW5lLWhlaWdodDogNDVweDtcbiAgICAgIGZvbnQtc2l6ZTogMTdweDsgfVxuICAgICAgaGVhZGVyICNzZWFyY2gtYXJlYSAucGhvbmUgc3Bhbi5pY29uLCBoZWFkZXIgI3NlYXJjaC1hcmVhIC5lbWFpbCBzcGFuLmljb24ge1xuICAgICAgICBtYXJnaW4tcmlnaHQ6IDNweDtcbiAgICAgICAgdmVydGljYWwtYWxpZ246IC0ycHg7XG4gICAgICAgIGNvbG9yOiAjNWM3MDkxOyB9XG4gICAgaGVhZGVyICNzZWFyY2gtYXJlYSAuc2VhcmNoLWlucHV0IHtcbiAgICAgIG1hcmdpbi10b3A6IDRweDsgfVxuICAgIGhlYWRlciAjc2VhcmNoLWFyZWEgLnNlYXJjaC1idXR0b24ge1xuICAgICAgbWFyZ2luLXRvcDogNHB4OyB9XG4gIEBtZWRpYSAobWF4LXdpZHRoOiA5OTFweCkge1xuICAgIGhlYWRlciAubmF2aWdhdGlvbi1pbm5lciB7XG4gICAgICBoZWlnaHQ6IDU0cHg7IH0gfVxuICBAbWVkaWEgKG1heC13aWR0aDogNzY3cHgpIHtcbiAgICBoZWFkZXIgLm5hdmlnYXRpb24taW5uZXIge1xuICAgICAgaGVpZ2h0OiA2MHB4OyB9IH1cbiAgaGVhZGVyIC5uYXZpZ2F0aW9uLWlubmVyIC5jZC1uYXYtdHJpZ2dlciB7XG4gICAgcmlnaHQ6IDEwcHg7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogI2VhZWZmMzsgfVxuICAgIGhlYWRlciAubmF2aWdhdGlvbi1pbm5lciAuY2QtbmF2LXRyaWdnZXIgc3BhbiB7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjMDAwOyB9XG4gICAgICBoZWFkZXIgLm5hdmlnYXRpb24taW5uZXIgLmNkLW5hdi10cmlnZ2VyIHNwYW46YmVmb3JlIHtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogIzAwMDsgfVxuICAgICAgaGVhZGVyIC5uYXZpZ2F0aW9uLWlubmVyIC5jZC1uYXYtdHJpZ2dlciBzcGFuOmFmdGVyIHtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogIzAwMDsgfVxuICBoZWFkZXIgLmNkLW1haW4tbmF2LXdyYXBwZXIge1xuICAgIGJhY2tncm91bmQtY29sb3I6ICNlYWVmZjM7IH1cbiAgICBoZWFkZXIgLmNkLW1haW4tbmF2LXdyYXBwZXIgLmNkLW1haW4tbmF2IHtcbiAgICAgIGhlaWdodDogNjBweDtcbiAgICAgIGxpbmUtaGVpZ2h0OiA2MHB4O1xuICAgICAgcGFkZGluZzogMDtcbiAgICAgIG1hcmdpbjogMDsgfVxuICAgICAgaGVhZGVyIC5jZC1tYWluLW5hdi13cmFwcGVyIC5jZC1tYWluLW5hdiBsaSBhIHtcbiAgICAgICAgY29sb3I6ICMwMDA7XG4gICAgICAgIGJvcmRlci10b3A6IDVweCBzb2xpZCB0cmFuc3BhcmVudDtcbiAgICAgICAgdHJhbnNpdGlvbjogYm9yZGVyLWNvbG9yIGVhc2UtaW4tb3V0IC4yczsgfVxuICAgICAgICBoZWFkZXIgLmNkLW1haW4tbmF2LXdyYXBwZXIgLmNkLW1haW4tbmF2IGxpIGE6aG92ZXIge1xuICAgICAgICAgIGJvcmRlci10b3A6IDVweCBzb2xpZCAjMDAwO1xuICAgICAgICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTsgfVxuICAgICAgaGVhZGVyIC5jZC1tYWluLW5hdi13cmFwcGVyIC5jZC1tYWluLW5hdiBsaSB1bCB7XG4gICAgICAgIGhlaWdodDogNjBweDtcbiAgICAgICAgbGluZS1oZWlnaHQ6IDYwcHg7XG4gICAgICAgIHBhZGRpbmc6IDA7XG4gICAgICAgIG1hcmdpbjogMDsgfVxuICAgICAgaGVhZGVyIC5jZC1tYWluLW5hdi13cmFwcGVyIC5jZC1tYWluLW5hdiBsaSBpbWcge1xuICAgICAgICB3aWR0aDogNzJweDsgfVxuICAgICAgaGVhZGVyIC5jZC1tYWluLW5hdi13cmFwcGVyIC5jZC1tYWluLW5hdiBsaS5hY3RpdmUgYSB7XG4gICAgICAgIGJvcmRlci10b3A6IDVweCBzb2xpZCAjMDAwO1xuICAgICAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7IH1cbiAgaGVhZGVyIC5jZC1sb2dvIHtcbiAgICB0b3A6IC03NSU7XG4gICAgei1pbmRleDogOTtcbiAgICBtYXJnaW46IDA7IH1cbiAgICBoZWFkZXIgLmNkLWxvZ28gYSB7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjZmZmO1xuICAgICAgYm9yZGVyLXJhZGl1czogNTAlO1xuICAgICAgcGFkZGluZzogMTBweDtcbiAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgICAgd2lkdGg6IDkwcHg7XG4gICAgICBoZWlnaHQ6IDkwcHg7IH1cbiAgICAgIEBtZWRpYSAobWF4LXdpZHRoOiA5OTFweCkge1xuICAgICAgICBoZWFkZXIgLmNkLWxvZ28gYSB7XG4gICAgICAgICAgd2lkdGg6IDUwcHg7XG4gICAgICAgICAgaGVpZ2h0OiA1MHB4OyB9IH1cbiAgICBoZWFkZXIgLmNkLWxvZ28gaW1nIHtcbiAgICAgIG1hcmdpbjogMDtcbiAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgaGVpZ2h0OiAxMDAlOyB9XG5cbkBtZWRpYSAobWF4LXdpZHRoOiAxMDIzcHgpIGFuZCAobWluLXdpZHRoOiA5OTJweCkge1xuICAjbmF2aWdhdGlvbiAuaW1nIHtcbiAgICBoZWlnaHQ6IDUwcHg7IH0gfVxuXG5AbWVkaWEgKG1pbi13aWR0aDogOTkycHgpIGFuZCAobWF4LXdpZHRoOiAxMTk5cHgpIHtcbiAgLmNkLW1haW4tbmF2ICNhZW8ge1xuICAgIGRpc3BsYXk6IG5vbmU7IH0gfVxuXG4uY2QtbWFpbi1uYXYgI2FlbyAuYWVvLWxvZ28ge1xuICBkaXNwbGF5OiBpbmxpbmU7IH1cblxuQG1lZGlhIChtYXgtd2lkdGg6IDEwMjNweCkgYW5kIChtaW4td2lkdGg6IDk5MnB4KSB7XG4gIC5jZC1tYWluLW5hdiAjYWVvIHtcbiAgICBkaXNwbGF5OiBub25lOyB9IH1cblxuLm5hdi1pcy12aXNpYmxlIC5jZC1uYXYtdHJpZ2dlciBzcGFuIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQgIWltcG9ydGFudDsgfVxuXG4vKkBpbXBvcnQgXCJNYXN0ZXIvQXBwbGljYXRpb24vbGF5b3V0L19sYXlvdXRBc2lkZS5zY3NzXCI7Ki9cbi8qQGltcG9ydCBcImJvb3RzdHJhcC9fdmFyaWFibGVzLnNjc3NcIjtcclxuQGltcG9ydCBcIl92YXJpYWJsZXMuc2Nzc1wiOyovXG5mb290ZXIge1xuICBvdmVyZmxvdzogaGlkZGVuO1xuICBwb3NpdGlvbjogcmVsYXRpdmU7IH1cbiAgZm9vdGVyIC5oYWxmLWVsaXBzZSB7XG4gICAgYm94LXNoYWRvdzogIzk0OTQ5NCAzcHggM3B4IDNweCBpbnNldDtcbiAgICBib3JkZXItcmFkaXVzOiA3MiUgLyAxMDAlO1xuICAgIGJvcmRlci1ib3R0b20tbGVmdC1yYWRpdXM6IDA7XG4gICAgd2lkdGg6IDEwNiU7XG4gICAgbWFyZ2luOiAwIGF1dG87XG4gICAgbWFyZ2luLWxlZnQ6IC0zJTtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgaGVpZ2h0OiAxMjRweDtcbiAgICBiYWNrZ3JvdW5kOiAjZGVlNmYxO1xuICAgIGJhY2tncm91bmQ6IGxpbmVhci1ncmFkaWVudCh0byBib3R0b20sICNjM2Q5ZjggMCUsICNmZmYgMTAwJSk7IH1cbiAgZm9vdGVyIC5mb290ZXItYmxvY2sge1xuICAgIG1hcmdpbi10b3A6IDQwcHg7IH1cbiAgICBmb290ZXIgLmZvb3Rlci1ibG9jayAuY29udGFjdC11cy1mb290ZXIge1xuICAgICAgbWFyZ2luLWJvdHRvbTogMTVweDsgfVxuICAgIGZvb3RlciAuZm9vdGVyLWJsb2NrIC5mb3JtLWNvbnRyb2wge1xuICAgICAgbWFyZ2luLWJvdHRvbTogMTVweDsgfVxuICAgIGZvb3RlciAuZm9vdGVyLWJsb2NrIC5jb250YWN0LWluZm8ge1xuICAgICAgdGV4dC1hbGlnbjogY2VudGVyOyB9XG4gICAgICBmb290ZXIgLmZvb3Rlci1ibG9jayAuY29udGFjdC1pbmZvIC5pY29uOmJlZm9yZSB7XG4gICAgICAgIGZvbnQtc2l6ZTogNTBweDtcbiAgICAgICAgY29sb3I6ICMwMDA7IH1cbiAgICAgIGZvb3RlciAuZm9vdGVyLWJsb2NrIC5jb250YWN0LWluZm8gLmhvdXJzIHtcbiAgICAgICAgZm9udC1zaXplOiAyMHB4O1xuICAgICAgICBjb2xvcjogIzAwMDsgfVxuICAgICAgZm9vdGVyIC5mb290ZXItYmxvY2sgLmNvbnRhY3QtaW5mbyAucGhvbmUge1xuICAgICAgICBmb250LXNpemU6IDI2cHg7XG4gICAgICAgIGNvbG9yOiAjMDAwOyB9XG4gICAgICAgIGZvb3RlciAuZm9vdGVyLWJsb2NrIC5jb250YWN0LWluZm8gLnBob25lIGEge1xuICAgICAgICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgICAgICAgICBjb2xvcjogIzAwMDsgfVxuICAgICAgICBmb290ZXIgLmZvb3Rlci1ibG9jayAuY29udGFjdC1pbmZvIC5waG9uZSAucHJlIHtcbiAgICAgICAgICBjb2xvcjogIzQ4NTg3MjsgfVxuICAgICAgZm9vdGVyIC5mb290ZXItYmxvY2sgLmNvbnRhY3QtaW5mbyAubWFpbCB7XG4gICAgICAgIGZvbnQtc2l6ZTogMjRweDtcbiAgICAgICAgY29sb3I6ICM0ODU4NzI7IH1cbiAgICAgICAgZm9vdGVyIC5mb290ZXItYmxvY2sgLmNvbnRhY3QtaW5mbyAubWFpbCBhIHtcbiAgICAgICAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG4gICAgICAgICAgY29sb3I6ICM0ODU4NzI7IH1cbiAgICAgICAgZm9vdGVyIC5mb290ZXItYmxvY2sgLmNvbnRhY3QtaW5mbyAubWFpbCBzdHJvbmcge1xuICAgICAgICAgIGNvbG9yOiAjMDAwOyB9XG4gICAgZm9vdGVyIC5mb290ZXItYmxvY2sgLnJlZmVyZW5jZXMge1xuICAgICAgdGV4dC1hbGlnbjogcmlnaHQ7IH1cbiAgICAgIEBtZWRpYSAobWF4LXdpZHRoOiAxMTk5cHgpIHtcbiAgICAgICAgZm9vdGVyIC5mb290ZXItYmxvY2sgLnJlZmVyZW5jZXMge1xuICAgICAgICAgIHRleHQtYWxpZ246IGNlbnRlcjsgfSB9XG4gICAgICBmb290ZXIgLmZvb3Rlci1ibG9jayAucmVmZXJlbmNlcyAuaW1nLXJlc3BvbnNpdmUge1xuICAgICAgICBtYXJnaW46IDAgYXV0bzsgfVxuICAgIGZvb3RlciAuZm9vdGVyLWJsb2NrIC5mb3JtLWNvbnRyb2wsIGZvb3RlciAuZm9vdGVyLWJsb2NrIC5mb3JtLWdyb3VwIC5mb3JtLWNvbnRyb2wge1xuICAgICAgYmFja2dyb3VuZC1pbWFnZTogbGluZWFyLWdyYWRpZW50KCMzMzdhYjcsICMzMzdhYjcpLCBsaW5lYXItZ3JhZGllbnQoIzAwMCwgIzEwMTAxMCk7IH1cbiAgICBmb290ZXIgLmZvb3Rlci1ibG9jayAuZm9ybS1ncm91cC5sYWJlbC1mbG9hdGluZyBsYWJlbC5jb250cm9sLWxhYmVsIHtcbiAgICAgIGNvbG9yOiAjMDAwOyB9XG4gIGZvb3RlciAuZm9vdGVyLWNtcyB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogIzAwMGQyNTtcbiAgICBoZWlnaHQ6IDI4M3B4OyB9XG4gICAgZm9vdGVyIC5mb290ZXItY21zIC5mb290ZXItaW5uZXIge1xuICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgICAgcGFkZGluZy1ib3R0b206IDE1cHg7IH1cbiAgICAgIGZvb3RlciAuZm9vdGVyLWNtcyAuZm9vdGVyLWlubmVyIGgyIHtcbiAgICAgICAgY29sb3I6ICNmZmY7XG4gICAgICAgIGZvbnQtc2l6ZTogMjNweDsgfVxuICAgICAgZm9vdGVyIC5mb290ZXItY21zIC5mb290ZXItaW5uZXIgLmZvb3Rlci1tYXAge1xuICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgIG9wYWNpdHk6IDAuMjtcbiAgICAgICAgcmlnaHQ6IDA7IH1cbiAgICAgIGZvb3RlciAuZm9vdGVyLWNtcyAuZm9vdGVyLWlubmVyIHVsIHtcbiAgICAgICAgbWFyZ2luOiAwO1xuICAgICAgICBwYWRkaW5nOiAwO1xuICAgICAgICBsaXN0LXN0eWxlLXR5cGU6IG5vbmU7IH1cbiAgICAgICAgZm9vdGVyIC5mb290ZXItY21zIC5mb290ZXItaW5uZXIgdWwgKiB7XG4gICAgICAgICAgY29sb3I6ICNmZmY7XG4gICAgICAgICAgZm9udC1zaXplOiAxMnB4OyB9XG5cbi8qIFN0csOhbmt5ICovXG4uaGVhZGVyLWNvbnRlbnQgLmlubmVyLWNvbnRlbnQge1xuICBjb2xvcjogIzAwMDc2YjtcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xuICBtYXJnaW4tdG9wOiA0MHB4OyB9XG4gIC5oZWFkZXItY29udGVudCAuaW5uZXItY29udGVudCBoMSB7XG4gICAgZm9udC13ZWlnaHQ6IGJvbGQ7IH1cbiAgLmhlYWRlci1jb250ZW50IC5pbm5lci1jb250ZW50IHAge1xuICAgIGZvbnQtc2l6ZTogMTZweDtcbiAgICBtYXJnaW4tdG9wOiAyMHB4OyB9XG4gIC5oZWFkZXItY29udGVudCAuaW5uZXItY29udGVudCBhIHtcbiAgICBtYXJnaW4tYm90dG9tOiAzMHB4OyB9XG5cbi5jb250ZW50LWhvbWUge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIG1hcmdpbi10b3A6IDUwcHg7XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2ZmZjtcbiAgYm9yZGVyLXJhZGl1czogMTYwJSAvIDEwMCU7XG4gIGJvcmRlci1ib3R0b20tbGVmdC1yYWRpdXM6IDA7XG4gIGJvcmRlci1ib3R0b20tcmlnaHQtcmFkaXVzOiAwO1xuICB3aWR0aDogMTYwJTtcbiAgbWFyZ2luOiAwIGF1dG87XG4gIG1hcmdpbi1sZWZ0OiAtMzAlO1xuICAvKiN3aGF0LW5leHQge1xyXG4gICAgICAgIHRleHQtYWxpZ246IGxlZnQ7XHJcblxyXG4gICAgICAgIEBtZWRpYSAobWF4LXdpZHRoOiAkc2NyZWVuLXhzLW1heCkge1xyXG4gICAgICAgICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XHJcbiAgICAgICAgfVxyXG4gICAgfSovIH1cbiAgLmNvbnRlbnQtaG9tZSAuc2VydmljZS1saXN0IGxpIHtcbiAgICBjb2xvcjogIzAwMCAhaW1wb3J0YW50OyB9XG4gIC5jb250ZW50LWhvbWUgaDIge1xuICAgIG1hcmdpbi10b3A6IDQwcHg7XG4gICAgY29sb3I6ICMwMDFFNUE7IH1cbiAgICAuY29udGVudC1ob21lIGgyIGEge1xuICAgICAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICAgICAgY29sb3I6ICMwMDFFNUE7IH1cbiAgICAgIC5jb250ZW50LWhvbWUgaDIgYTpob3ZlciB7XG4gICAgICAgIGNvbG9yOiAjMDAxRTVBOyB9XG4gIC5jb250ZW50LWhvbWUgYSB7XG4gICAgdGV4dC1kZWNvcmF0aW9uOiBub25lOyB9XG4gIC5jb250ZW50LWhvbWUgaDMge1xuICAgIGNvbG9yOiAjMDAxZTVhO1xuICAgIGZvbnQtd2VpZ2h0OiBib2xkOyB9XG4gIC5jb250ZW50LWhvbWUgcCB7XG4gICAgY29sb3I6ICMwMDA7XG4gICAgZm9udC1zaXplOiAxNHB4OyB9XG4gIC5jb250ZW50LWhvbWUgLmljb246YmVmb3JlIHtcbiAgICBmb250LXNpemU6IDExMHB4O1xuICAgIGNvbG9yOiAjMjE2N2FkOyB9XG4gIC5jb250ZW50LWhvbWUgLmljb24jcGlnIC5jaXJjbGUge1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICB3aWR0aDogMzFweDtcbiAgICBoZWlnaHQ6IDMxcHg7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogI2IyOGQ0NztcbiAgICBib3JkZXItcmFkaXVzOiA1MCU7XG4gICAgdG9wOiAxMC40JTtcbiAgICBsZWZ0OiA0OSU7XG4gICAgY29sb3I6ICNmMmIxNDk7IH1cbiAgICBAbWVkaWEgKG1pbi13aWR0aDogNDgwcHgpIGFuZCAobWF4LXdpZHRoOiA3NjdweCkge1xuICAgICAgLmNvbnRlbnQtaG9tZSAuaWNvbiNwaWcgLmNpcmNsZSB7XG4gICAgICAgIGxlZnQ6IDQ5LjQlOyB9IH1cbiAgLmNvbnRlbnQtaG9tZSAuaWNvbiNwaWcgLmNpcmNsZTEge1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICB3aWR0aDogMTVweDtcbiAgICBoZWlnaHQ6IDE1cHg7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogI2IyOGQ0NztcbiAgICBib3JkZXItcmFkaXVzOiA1MCU7XG4gICAgdG9wOiAyJTtcbiAgICBsZWZ0OiA1NiU7IH1cbiAgLmNvbnRlbnQtaG9tZSAuaWNvbiN3YWxrIHtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgd2lkdGg6IDE1cHg7XG4gICAgaGVpZ2h0OiAxNXB4O1xuICAgIHRvcDogMjQlO1xuICAgIHJpZ2h0OiAzMCU7IH1cbiAgICAuY29udGVudC1ob21lIC5pY29uI3dhbGs6YmVmb3JlIHtcbiAgICAgIGNvbG9yOiAjYjI4ZDQ3O1xuICAgICAgZm9udC1zaXplOiA1MHB4OyB9XG4gIC5jb250ZW50LWhvbWUgI3NvbWFkIHtcbiAgICBtYXJnaW46IDMwcHggYXV0bztcbiAgICB3aWR0aDogMTIwcHg7XG4gICAgaGVpZ2h0OiBhdXRvO1xuICAgIGRpc3BsYXk6IGJsb2NrOyB9XG4gIC5jb250ZW50LWhvbWUgI2Flby1pbWFnZSB7XG4gICAgbWFyZ2luOiAzMHB4IGF1dG87XG4gICAgd2lkdGg6IDEyMHB4O1xuICAgIGhlaWdodDogYXV0bztcbiAgICBkaXNwbGF5OiBibG9jazsgfVxuICAuY29udGVudC1ob21lIC5jbXMtY29udGVudCAuZXJ6YXNvZnQtY21zLWVkaXRhYmxlLWNvbnRlbnQge1xuICAgIGNvbG9yOiAjMDAwO1xuICAgIGZvbnQtc2l6ZTogMTRweDtcbiAgICBsaW5lLWhlaWdodDogMS42OyB9XG4gICAgLmNvbnRlbnQtaG9tZSAuY21zLWNvbnRlbnQgLmVyemFzb2Z0LWNtcy1lZGl0YWJsZS1jb250ZW50IGVtIHtcbiAgICAgIGNvbG9yOiAjMDAwICFpbXBvcnRhbnQ7IH1cbiAgICAuY29udGVudC1ob21lIC5jbXMtY29udGVudCAuZXJ6YXNvZnQtY21zLWVkaXRhYmxlLWNvbnRlbnQgc3Ryb25nIHtcbiAgICAgIGNvbG9yOiAjMDAwOyB9XG4gICAgICAuY29udGVudC1ob21lIC5jbXMtY29udGVudCAuZXJ6YXNvZnQtY21zLWVkaXRhYmxlLWNvbnRlbnQgc3Ryb25nIGVtIHtcbiAgICAgICAgY29sb3I6ICMwMDA7IH1cbiAgICBAbWVkaWEgKG1pbi13aWR0aDogNzY4cHgpIHtcbiAgICAgIC5jb250ZW50LWhvbWUgLmNtcy1jb250ZW50IC5lcnphc29mdC1jbXMtZWRpdGFibGUtY29udGVudCBoMyB7XG4gICAgICAgIHRleHQtYWxpZ246IGNlbnRlcjsgfSB9XG4gICAgQG1lZGlhIChtaW4td2lkdGg6IDc2OHB4KSB7XG4gICAgICAuY29udGVudC1ob21lIC5jbXMtY29udGVudCAuZXJ6YXNvZnQtY21zLWVkaXRhYmxlLWNvbnRlbnQgdWwge1xuICAgICAgICB0ZXh0LWFsaWduOiBsZWZ0OyB9IH1cbiAgICAuY29udGVudC1ob21lIC5jbXMtY29udGVudCAuZXJ6YXNvZnQtY21zLWVkaXRhYmxlLWNvbnRlbnQgdWwgbGkge1xuICAgICAgY29sb3I6ICMwMDAgIWltcG9ydGFudDtcbiAgICAgIGxpc3Qtc3R5bGUtcG9zaXRpb246IGluc2lkZTtcbiAgICAgIGxpc3Qtc3R5bGUtdHlwZTogZGlzYzsgfVxuICAgICAgLmNvbnRlbnQtaG9tZSAuY21zLWNvbnRlbnQgLmVyemFzb2Z0LWNtcy1lZGl0YWJsZS1jb250ZW50IHVsIGxpIHN0cm9uZyB7XG4gICAgICAgIGNvbG9yOiAjMDAwOyB9XG5cbi5ib3R0b20tc2hhZG93IHtcbiAgYm94LXNoYWRvdzogIzk0OTQ5NCAzcHggM3B4IDNweDtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2RlZTZmMTtcbiAgYmFja2dyb3VuZDogI2RlZTZmMTtcbiAgYmFja2dyb3VuZDogbGluZWFyLWdyYWRpZW50KHRvIGJvdHRvbSwgI2ZmZiAwJSwgI2MzZDlmOCAxMDAlKTtcbiAgYm9yZGVyLXJhZGl1czogNjAlO1xuICBib3JkZXItdG9wLWxlZnQtcmFkaXVzOiAwO1xuICB3aWR0aDogNzAlO1xuICBtYXJnaW46IDAgYXV0bztcbiAgaGVpZ2h0OiAxMDlweDtcbiAgcG9zaXRpb246IHJlbGF0aXZlOyB9XG5cbi5uZXh0LXJvd3Mtd3JhcCAuZmxhdGljb24tbWVudTU3OjpiZWZvcmUge1xuICBjb2xvcjogIzIxNjdhZCAhaW1wb3J0YW50OyB9XG5cbi5yZXNpemUtY29udGVudCB7XG4gIG92ZXJmbG93OiBoaWRkZW47XG4gIHZpc2liaWxpdHk6IGhpZGRlbjtcbiAgcG9zaXRpb246IHJlbGF0aXZlOyB9XG4gIEBtZWRpYSAobWF4LXdpZHRoOiA3NjdweCkge1xuICAgIC5yZXNpemUtY29udGVudCB7XG4gICAgICBwYWRkaW5nOiAwIDIwJTsgfSB9XG4gIC5yZXNpemUtY29udGVudC5taW4taGVpZ2h0IHtcbiAgICBoZWlnaHQ6IDI1MHB4OyB9XG4gIC5yZXNpemUtY29udGVudDpiZWZvcmUge1xuICAgIGNvbnRlbnQ6ICcgJztcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgYm90dG9tOiAwO1xuICAgIGxlZnQ6IDA7XG4gICAgYmFja2dyb3VuZDogdHJhbnNwYXJlbnQ7XG4gICAgYmFja2dyb3VuZDogbGluZWFyLWdyYWRpZW50KHRyYW5zcGFyZW50LCAjZmZmKTtcbiAgICBoZWlnaHQ6IDEwMHB4O1xuICAgIHdpZHRoOiAxMDAlOyB9XG4gIC5yZXNpemUtY29udGVudC5uby1jb250ZW50OmJlZm9yZSB7XG4gICAgY29udGVudDogbm9uZSAhaW1wb3J0YW50OyB9XG5cbi5wYXJ0bmVyIHtcbiAgdGV4dC1hbGlnbjogY2VudGVyOyB9XG4gIC5wYXJ0bmVyIC5qai1wYXJ0bmVyIHtcbiAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgbWFyZ2luLWJvdHRvbTogMjVweDsgfVxuXG4ucGFnZS10aXRsZSB7XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgbWFyZ2luLXRvcDogMzVweDsgfVxuXG4jYWN0dWFsaXR5IHtcbiAgbWFyZ2luLXRvcDogNDBweDtcbiAgbWFyZ2luLWJvdHRvbTogNDBweDsgfVxuXG4uYWN0dWFsaXR5LFxuLmFjdHVhbGl0eS1kZXRhaWwge1xuICBkaXNwbGF5OiBmbGV4O1xuICBhbGlnbi1pdGVtczogY2VudGVyO1xuICBtYXJnaW4tdG9wOiAyMHB4OyB9XG4gIC5hY3R1YWxpdHkgLmljb24tZGF0ZSxcbiAgLmFjdHVhbGl0eS1kZXRhaWwgLmljb24tZGF0ZSB7XG4gICAgdGV4dC1hbGlnbjogY2VudGVyOyB9XG4gIC5hY3R1YWxpdHkgaDIsXG4gIC5hY3R1YWxpdHktZGV0YWlsIGgyIHtcbiAgICBjb2xvcjogIzAwMDsgfVxuICAuYWN0dWFsaXR5IC5pbWctcmVzcG9uc2l2ZSxcbiAgLmFjdHVhbGl0eS1kZXRhaWwgLmltZy1yZXNwb25zaXZlIHtcbiAgICBtYXJnaW46IDAgYXV0bzsgfVxuICAuYWN0dWFsaXR5IC5saW5rOmhvdmVyLFxuICAuYWN0dWFsaXR5LWRldGFpbCAubGluazpob3ZlciB7XG4gICAgdGV4dC1kZWNvcmF0aW9uOiBub25lOyB9XG4gIC5hY3R1YWxpdHkgLmljb246YmVmb3JlLFxuICAuYWN0dWFsaXR5LWRldGFpbCAuaWNvbjpiZWZvcmUge1xuICAgIGZvbnQtc2l6ZTogNTBweDtcbiAgICBjb2xvcjogIzAwMDsgfVxuICAuYWN0dWFsaXR5IC5kYXRlLFxuICAuYWN0dWFsaXR5LWRldGFpbCAuZGF0ZSB7XG4gICAgZm9udC1zaXplOiAxOHB4O1xuICAgIGNvbG9yOiAjMDAwOyB9XG4gIC5hY3R1YWxpdHkgLmZsZXgtY29sLFxuICAuYWN0dWFsaXR5LWRldGFpbCAuZmxleC1jb2wge1xuICAgIHRleHQtYWxpZ246IGxlZnQ7IH1cbiAgICBAbWVkaWEgKG1heC13aWR0aDogNzY3cHgpIHtcbiAgICAgIC5hY3R1YWxpdHkgLmZsZXgtY29sLFxuICAgICAgLmFjdHVhbGl0eS1kZXRhaWwgLmZsZXgtY29sIHtcbiAgICAgICAgdGV4dC1hbGlnbjogY2VudGVyOyB9IH1cbiAgLmFjdHVhbGl0eSAuY29udGVudC13cmFwLFxuICAuYWN0dWFsaXR5LWRldGFpbCAuY29udGVudC13cmFwIHtcbiAgICBtYXJnaW4tYm90dG9tOiA1MHB4OyB9XG4gICAgLmFjdHVhbGl0eSAuY29udGVudC13cmFwIC5pbWctcmVzcG9uc2l2ZSxcbiAgICAuYWN0dWFsaXR5LWRldGFpbCAuY29udGVudC13cmFwIC5pbWctcmVzcG9uc2l2ZSB7XG4gICAgICBtYXJnaW46IDA7XG4gICAgICBmbG9hdDogbGVmdDtcbiAgICAgIHBhZGRpbmctcmlnaHQ6IDE1cHg7IH1cbiAgICAgIEBtZWRpYSAobWF4LXdpZHRoOiA3NjdweCkge1xuICAgICAgICAuYWN0dWFsaXR5IC5jb250ZW50LXdyYXAgLmltZy1yZXNwb25zaXZlLFxuICAgICAgICAuYWN0dWFsaXR5LWRldGFpbCAuY29udGVudC13cmFwIC5pbWctcmVzcG9uc2l2ZSB7XG4gICAgICAgICAgZmxvYXQ6IG5vbmU7XG4gICAgICAgICAgY2xlYXI6IGJvdGg7IH0gfVxuICAgIC5hY3R1YWxpdHkgLmNvbnRlbnQtd3JhcCAudGV4dCxcbiAgICAuYWN0dWFsaXR5LWRldGFpbCAuY29udGVudC13cmFwIC50ZXh0IHtcbiAgICAgIGZvbnQtc2l6ZTogMTZweDsgfVxuXG4jY29udGFjdCB7XG4gIG1hcmdpbi10b3A6IDQwcHg7XG4gIHRleHQtYWxpZ246IGNlbnRlcjsgfVxuICAjY29udGFjdCAuY29udGFpbmVyIHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7IH1cbiAgI2NvbnRhY3QgLnBhZ2UtdGl0bGUge1xuICAgIGNvbG9yOiAjZmZmO1xuICAgIG1hcmdpbi1ib3R0b206IDIwcHg7IH1cbiAgI2NvbnRhY3QgLmNvbnRhY3Qge1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgYWxpZ24taXRlbXM6IGZsZXgtZW5kOyB9XG4gICAgQG1lZGlhIChtYXgtd2lkdGg6IDk5MXB4KSB7XG4gICAgICAjY29udGFjdCAuY29udGFjdCB7XG4gICAgICAgIGRpc3BsYXk6IGJsb2NrOyB9IH1cbiAgICAjY29udGFjdCAuY29udGFjdCAuaWNvbjpiZWZvcmUge1xuICAgICAgZm9udC1zaXplOiA2MHB4O1xuICAgICAgY29sb3I6ICMyMTY3YWQ7IH1cbiAgICAjY29udGFjdCAuY29udGFjdCAjc29tYWQge1xuICAgICAgbWFyZ2luOiAwIGF1dG87XG4gICAgICB3aWR0aDogMTUwcHg7IH1cbiAgICAjY29udGFjdCAuY29udGFjdCAuaW5uZXItY29udGVudCB7XG4gICAgICBtYXJnaW4tYm90dG9tOiAyMHB4OyB9XG4gICAgI2NvbnRhY3QgLmNvbnRhY3QgLmNtcy1jb250ZW50IHtcbiAgICAgIGNvbG9yOiAjZmZmO1xuICAgICAgZm9udC1zaXplOiAxN3B4OyB9XG5cbi5zdGF0aWMtbWFwIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBtYXJnaW46IDAgYXV0bztcbiAgd2lkdGg6IDEwMCU7XG4gIGhlaWdodDogMTAwcHg7XG4gIGJhY2tncm91bmQtaW1hZ2U6IHVybChcIi9JbWFnZXMvY29udGFjdF9tYXAucG5nXCIpO1xuICBsaW5lLWhlaWdodDogMTAwcHg7XG4gIHRleHQtYWxpZ246IGNlbnRlcjsgfVxuICAuc3RhdGljLW1hcCBhIHtcbiAgICBmb250LXNpemU6IDIzcHg7XG4gICAgY29sb3I6ICMwMDA7IH1cblxuLmFwaS1tYXAge1xuICBkaXNwbGF5OiBub25lO1xuICBoZWlnaHQ6IDQwMHB4OyB9XG4gIC5hcGktbWFwICNhcGktbWFwIHtcbiAgICBoZWlnaHQ6IDQwMHB4OyB9XG5cbi5lcnJvci1wYWdlIC53aGl0ZS1iYWNrZ3JvdW5kIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogcmdiYSgyNTUsIDI1NSwgMjU1LCAwLjkpOyB9XG5cbi5lcnJvci1wYWdlICNlcnJvclBhZ2UgLmZsYXRpY29uOmJlZm9yZSB7XG4gIGNvbG9yOiAjMjE2N2FkO1xuICBtYXJnaW46IDA7XG4gIGZvbnQtc2l6ZTogMzNweDsgfVxuXG4vKkBpbXBvcnQgXCIuLi9fdmFyaWFibGVzLnNjc3NcIjsqL1xuI3JlZ2lzdGVyICNzdWJtaXQge1xuICBtYXJnaW46IDE1cHggMCA1cHggMDtcbiAgZGlzcGxheTogYmxvY2s7XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgLypvdXRsaW5lOiAwO1xyXG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6ICRjb2xvci1idXR0b247XHJcbiAgICAgICAgY29sb3I6ICMyMjI7XHJcblxyXG4gICAgICAgICY6aG92ZXIge1xyXG4gICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiBsaWdodGVuKCRjb2xvci1idXR0b24sIDEwJSk7XHJcbiAgICAgICAgfSovIH1cblxuI3JlZ2lzdGVyIGJ1dHRvbiB7XG4gIHBhZGRpbmc6IDEwcHg7IH1cblxuI3JlZ2lzdGVyIHNwYW46OmJlZm9yZSB7XG4gIG1hcmdpbi1sZWZ0OiAwOyB9XG5cbiNsb2dpbiB7XG4gIG1hcmdpbi10b3A6IDQwcHg7IH1cbiAgI2xvZ2luIGlucHV0IHtcbiAgICBib3JkZXItcmFkaXVzOiAwOyB9XG4gICNsb2dpbiBzcGFuOjpiZWZvcmUge1xuICAgIG1hcmdpbi1sZWZ0OiAwOyB9XG5cbiNmb3Jnb3QtcGFzc3dvcmQgaW5wdXRbdHlwZT1cInRleHRcIl0ge1xuICB3aWR0aDogMTAwJTsgfVxuXG4vKkBmb250LWZhY2Uge1xyXG5cdGZvbnQtZmFtaWx5OiAnT3BlblNhbnNSZWd1bGFyJztcclxuXHRzcmM6IHVybCgnL0ZvbnRzL09wZW5TYW5zLVJlZ3VsYXItd2ViZm9udC5lb3QnKTtcclxuXHRzcmM6IHVybCgnL0ZvbnRzL09wZW5TYW5zLVJlZ3VsYXItd2ViZm9udC5lb3QnKSBmb3JtYXQoJ2VtYmVkZGVkLW9wZW50eXBlJyksIHVybCgnL0ZvbnRzL09wZW5TYW5zLVJlZ3VsYXItd2ViZm9udC53b2ZmJykgZm9ybWF0KCd3b2ZmJyksIHVybCgnL0ZvbnRzL09wZW5TYW5zLVJlZ3VsYXItd2ViZm9udC50dGYnKSBmb3JtYXQoJ3RydWV0eXBlJyk7XHJcbn0qL1xubGFiZWwge1xuICBjdXJzb3I6IHBvaW50ZXI7IH1cblxuLmFsZXJ0IHtcbiAgbWFyZ2luOiAxMHB4IDA7XG4gIHBhZGRpbmc6IDVweDtcbiAgYm9yZGVyLXJhZGl1czogMDtcbiAgZGlzcGxheTogbm9uZTsgfVxuICAuYWxlcnQuYWxlcnQtc3VjY2VzcywgLmFsZXJ0LmFsZXJ0LWRhbmdlciB7XG4gICAgZGlzcGxheTogYmxvY2s7IH1cblxuLmZvcm0tZ3JvdXAge1xuICBtYXJnaW46IDA7IH1cblxuLmdyZXktYmFja2dyb3VuZCB7XG4gIGJhY2tncm91bmQtY29sb3I6IHJnYmEoMjQxLCAyNDEsIDI0MSwgMC45KTtcbiAgcGFkZGluZy10b3A6IDE1cHg7XG4gIHBhZGRpbmctYm90dG9tOiAxNXB4OyB9XG5cbltjbGFzc149XCJmbGF0aWNvbi1cIl06YmVmb3JlLCBbY2xhc3MqPVwiIGZsYXRpY29uLVwiXTpiZWZvcmUge1xuICBtYXJnaW4tbGVmdDogMCAhaW1wb3J0YW50OyB9XG5cbnRhYmxlIHRyIHRoLCB0YWJsZSB0ciB0ZCB7XG4gIHBhZGRpbmc6IDVweDtcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xuICBib3JkZXI6IHNvbGlkICMyMjIgMXB4OyB9XG5cbnRhYmxlIHRyIHRoIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogIzgyODM4NTtcbiAgY29sb3I6ICNmZmY7IH1cblxuaDEgW2NsYXNzXj1cImZsYXRpY29uLVwiXTpiZWZvcmUge1xuICBjb2xvcjogI0ZGRDYwMjsgfVxuXG4ubmF2aWdhdGlvbi1idXR0b25zIHtcbiAgcGFkZGluZzogMTBweCAwOyB9XG4gIC5uYXZpZ2F0aW9uLWJ1dHRvbnMgYnV0dG9uIHtcbiAgICBwYWRkaW5nOiAxMnB4O1xuICAgIGNvbG9yOiAjMDAwO1xuICAgIGZvbnQtd2VpZ2h0OiBib2xkOyB9XG4gIC5uYXZpZ2F0aW9uLWJ1dHRvbnMgLm9yZGVyLW5leHQgLmljb24jY2hlY2s6YmVmb3JlIHtcbiAgICBtYXJnaW46IDA7XG4gICAgZm9udC1zaXplOiAxOHB4OyB9XG5cbi5jZW50ZXItdGV4dCB7XG4gIHRleHQtYWxpZ246IGNlbnRlcjsgfVxuXG5pbnB1dFtuYW1lPVByZVBob25lXSB7XG4gIHdpZHRoOiA2MHB4OyB9XG5cbmlucHV0W25hbWU9UGhvbmVdIHtcbiAgd2lkdGg6IDEyMnB4OyB9XG5cbmgxIHNwYW4ge1xuICAvKmNvbG9yOiAjRTI0NDI3OyovIH1cbiAgaDEgc3Bhbjo6YmVmb3JlIHtcbiAgICBmb250LXNpemU6IDMwcHggIWltcG9ydGFudDsgfVxuXG5pbnB1dFt0eXBlPVwidGV4dFwiXSwgaW5wdXRbdHlwZT1cInBhc3N3b3JkXCJdIHtcbiAgcGFkZGluZzogMTBweDtcbiAgYm9yZGVyOiAxcHggc29saWQgI2NlY2VjZTtcbiAgZm9udC13ZWlnaHQ6IDUwMDtcbiAgZm9udC1zaXplOiAxNnB4O1xuICBoZWlnaHQ6IDQwcHg7XG4gIGJvcmRlci1yYWRpdXM6IDA7XG4gIHdpZHRoOiAxMDAlOyB9XG4gIGlucHV0W3R5cGU9XCJ0ZXh0XCJdLnByZXBob25lLCBpbnB1dFt0eXBlPVwicGFzc3dvcmRcIl0ucHJlcGhvbmUge1xuICAgIHdpZHRoOiAyMCU7XG4gICAgZmxvYXQ6IGxlZnQ7IH1cbiAgaW5wdXRbdHlwZT1cInRleHRcIl0ucGhvbmUsIGlucHV0W3R5cGU9XCJwYXNzd29yZFwiXS5waG9uZSB7XG4gICAgd2lkdGg6IDc5JTtcbiAgICBmbG9hdDogcmlnaHQ7IH1cblxuLmNoZWNrYm94IC5jaGVja2JveC1tYXRlcmlhbCAuY2hlY2sge1xuICBib3JkZXI6IDJweCBzb2xpZCAjMDAwO1xuICBib3JkZXItcmFkaXVzOiAycHg7IH1cbiAgLmNoZWNrYm94IC5jaGVja2JveC1tYXRlcmlhbCAuY2hlY2s6YmVmb3JlIHtcbiAgICBjb2xvcjogIzAwMCAhaW1wb3J0YW50OyB9XG5cbi5jaGVja2JveCBpbnB1dFt0eXBlPWNoZWNrYm94XTpjaGVja2VkICsgLmNoZWNrYm94LW1hdGVyaWFsIC5jaGVjayB7XG4gIGJvcmRlcjogMnB4IHNvbGlkICMwMDA7IH1cblxuLmJ1dHRvbiB7XG4gIHBhZGRpbmc6IDRweDtcbiAgYmFja2dyb3VuZC1jb2xvcjogIzAwMWU1YTtcbiAgYm9yZGVyOiAwO1xuICBjb2xvcjogI2ZmZjtcbiAgd2lkdGg6IDEwMCU7XG4gIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG4gIHRyYW5zaXRpb246IGFsbCBlYXNlLWluLW91dCAuMjNzO1xuICBvdXRsaW5lOiBub25lO1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gIGJvcmRlci1yYWRpdXM6IDA7XG4gIHBhZGRpbmc6IDVweDtcbiAgcGFkZGluZy1sZWZ0OiA1MHB4O1xuICBwYWRkaW5nLXJpZ2h0OiA1MHB4O1xuICBtYXJnaW4tdG9wOiAxMHB4O1xuICBtYXJnaW4tYm90dG9tOiAxMHB4OyB9XG4gIC5idXR0b246aG92ZXIge1xuICAgIGJhY2tncm91bmQtY29sb3I6ICMwMDJmOGQ7IH1cbiAgLmJ1dHRvbi5idXR0b25OIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjNTI1MjUyO1xuICAgIGNvbG9yOiAjZmZmOyB9XG4gICAgLmJ1dHRvbi5idXR0b25OOmhvdmVyIHtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6ICM0MDQwNDA7IH1cblxuYS5idXR0b24ge1xuICBwYWRkaW5nOiAxMHB4OyB9XG4gIGEuYnV0dG9uOmhvdmVyIHtcbiAgICBjb2xvcjogI2ZmZjtcbiAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7IH1cblxuLmxpZ2h0LWJ1dHRvbiB7XG4gIGJhY2tncm91bmQtY29sb3I6ICNjZWNlY2U7XG4gIC8qYm9yZGVyOiAxcHggc29saWQgI0FEQURBRDsqL1xuICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuICBjb2xvcjogIzAwMDtcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xuICBwYWRkaW5nOiA2cHggMTJweDtcbiAgdHJhbnNpdGlvbjogYWxsIGVhc2UtaW4tb3V0IC4yM3M7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgbWFyZ2luLWJvdHRvbTogNXB4O1xuICBmb250LXdlaWdodDogYm9sZDsgfVxuICAubGlnaHQtYnV0dG9uOmhvdmVyIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjZDhkOGQ4O1xuICAgIGNvbG9yOiAjMDAwO1xuICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTsgfVxuXG4uay1hbmltYXRpb24tY29udGFpbmVyIHtcbiAgd2lkdGg6IDI4MnB4ICFpbXBvcnRhbnQ7XG4gIGhlaWdodDogMjgwcHggIWltcG9ydGFudDsgfVxuICAuay1hbmltYXRpb24tY29udGFpbmVyIC5rLWxpc3QtY29udGFpbmVyLmstcG9wdXAuay1ncm91cC5rLXJlc2V0IHtcbiAgICB3aWR0aDogMTAwJSAhaW1wb3J0YW50O1xuICAgIGhlaWdodDogMjgwcHggIWltcG9ydGFudDsgfVxuICAgIC5rLWFuaW1hdGlvbi1jb250YWluZXIgLmstbGlzdC1jb250YWluZXIuay1wb3B1cC5rLWdyb3VwLmstcmVzZXQgZGl2Omxhc3QtY2hpbGQge1xuICAgICAgaGVpZ2h0OiAyMjFweCAhaW1wb3J0YW50OyB9XG4gIEBtZWRpYSAobWF4LXdpZHRoOiAxMTk5cHgpIHtcbiAgICAuay1hbmltYXRpb24tY29udGFpbmVyIHtcbiAgICAgIHdpZHRoOiAyNzFweCAhaW1wb3J0YW50OyB9IH1cbiAgQG1lZGlhIChtYXgtd2lkdGg6IDk5MXB4KSB7XG4gICAgLmstYW5pbWF0aW9uLWNvbnRhaW5lciB7XG4gICAgICB3aWR0aDogNDgxcHggIWltcG9ydGFudDsgfSB9XG4gIEBtZWRpYSAobWF4LXdpZHRoOiA3NjdweCkge1xuICAgIC5rLWFuaW1hdGlvbi1jb250YWluZXIge1xuICAgICAgd2lkdGg6IDg1LjUlICFpbXBvcnRhbnQ7IH0gfVxuXG4ubm8tcGFkZGluZy1yaWdodCB7XG4gIHBhZGRpbmctcmlnaHQ6IDA7IH1cblxuLm5vLXBhZGRpbmctbGVmdCB7XG4gIHBhZGRpbmctbGVmdDogMDsgfVxuXG4uY2NfYmFubmVyLXdyYXBwZXIgLmNjX2Jhbm5lci5jY19jb250YWluZXIuY2NfY29udGFpbmVyLS1vcGVuIHtcbiAgYmFja2dyb3VuZDogIzIyMjtcbiAgY29sb3I6ICNmZmY7XG4gIHJpZ2h0OiBpbml0aWFsO1xuICBsZWZ0OiAyMHB4O1xuICB3aWR0aDogNjUlOyB9XG4gIEBtZWRpYSAobWF4LXdpZHRoOiA3NjdweCkge1xuICAgIC5jY19iYW5uZXItd3JhcHBlciAuY2NfYmFubmVyLmNjX2NvbnRhaW5lci5jY19jb250YWluZXItLW9wZW4ge1xuICAgICAgd2lkdGg6IDQwJTsgfSB9XG4gIC5jY19iYW5uZXItd3JhcHBlciAuY2NfYmFubmVyLmNjX2NvbnRhaW5lci5jY19jb250YWluZXItLW9wZW4gLmNjX2J0bi5jY19idG5fYWNjZXB0X2FsbCB7XG4gICAgYm9yZGVyLXJhZGl1czogMCAhaW1wb3J0YW50OyB9XG5cbi5maWVsZC12YWxpZGF0aW9uLWVycm9yIHtcbiAgcGFkZGluZzogMTBweDtcbiAgYmFja2dyb3VuZC1jb2xvcjogcmVkO1xuICBjb2xvcjogI2ZmZjsgfVxuXG4uYWxpZ24tY2VudGVyIHtcbiAgdGV4dC1hbGlnbjogY2VudGVyOyB9XG5cbi5rLXdpZGdldCB7XG4gIGJhY2tncm91bmQtY29sb3I6ICM4NDg0ODQ7IH1cbiAgLmstd2lkZ2V0OmFjdGl2ZSB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogIzg0ODQ4NDsgfVxuICAuay13aWRnZXQ6Zm9jdXMge1xuICAgIGJhY2tncm91bmQtY29sb3I6ICM4NDg0ODQ7IH1cbiIsIi8qIEtuaWhvdm55ICovXHJcbi8vQGltcG9ydCBcIk1hc3Rlci9lcnphc29mdC12YXJpYWJsZXNcIjtcclxuQGltcG9ydCBcIk1hc3Rlci9WZW5kb3IvYm9vdHN0cmFwLW1hdGVyaWFsLWRlc2lnbi9fYm9vdHN0cmFwLnNjc3NcIjtcclxuQGltcG9ydCBcIk1hc3Rlci9WZW5kb3IvYm9vdHN0cmFwLW1hdGVyaWFsLWRlc2lnbi9ib290c3RyYXAtbWF0ZXJpYWwtZGVzaWduLnNjc3NcIjtcclxuQGltcG9ydCBcIi4uL0NvbnRlbnQvRmxhdGljb24vZmxhdGljb24uY3NzXCI7XHJcbkBpbXBvcnQgXCJNYXN0ZXIvVmVuZG9yL2Jvb3RzdHJhcC1tYXRlcmlhbC1kZXNpZ24vcmlwcGxlcy5zY3NzXCI7XHJcbkBpbXBvcnQgXCJNYXN0ZXIvQXBwbGljYXRpb24vZXJ6YXNvZnQvX3ZhcmlhYmxlcy5zY3NzXCI7XHJcbkBpbXBvcnQgXCJUaGVtZS9WZW5kb3Ivc2Vjb25kYXJ5LXNsaWRpbmcvc3R5bGVcIjtcclxuXHJcbi8qQGltcG9ydCBcIi4uL0NvbnRlbnQvRmxhdGljb24vZmxhdGljb24uY3NzXCI7Ki9cclxuXHJcbi8qIEtvbXBvbmVudHkgKi9cclxuQGltcG9ydCBcIk1hc3Rlci9BcHBsaWNhdGlvbi9jb21wb25lbnRzL2JyZWFkY3J1bWJcIjtcclxuQGltcG9ydCBcIlRoZW1lL0FwcGxpY2F0aW9uL2NvbXBvbmVudHMvc2VhcmNoLWZvcm0uc2Nzc1wiO1xyXG5AaW1wb3J0IFwiVGhlbWUvQXBwbGljYXRpb24vY29tcG9uZW50cy9jb250YWN0TGFuZ3VhZ2VQYXJ0aWFsLnNjc3NcIjtcclxuQGltcG9ydCBcIlRoZW1lL1ZlbmRvci9ucHJvZ3Jlc3MvbnByb2dyZXNzLnNjc3NcIjtcclxuXHJcbi8qIExheW91dCAqL1xyXG5AaW1wb3J0IFwiVGhlbWUvQXBwbGljYXRpb24vbGF5b3V0L19sYXlvdXQuc2Nzc1wiO1xyXG5AaW1wb3J0IFwiVGhlbWUvQXBwbGljYXRpb24vbGF5b3V0L19sYXlvdXRIZWFkZXIuc2Nzc1wiO1xyXG4vKkBpbXBvcnQgXCJNYXN0ZXIvQXBwbGljYXRpb24vbGF5b3V0L19sYXlvdXRBc2lkZS5zY3NzXCI7Ki9cclxuQGltcG9ydCBcIlRoZW1lL0FwcGxpY2F0aW9uL2xheW91dC9fbGF5b3V0Rm9vdGVyLnNjc3NcIjtcclxuXHJcbi8qIFN0csOhbmt5ICovXHJcbkBpbXBvcnQgXCJUaGVtZS9BcHBsaWNhdGlvbi9wYWdlL19ob21lLnNjc3NcIjtcclxuQGltcG9ydCBcIlRoZW1lL0FwcGxpY2F0aW9uL3BhZ2UvX2FjdHVhbGl0eS5zY3NzXCI7XHJcbkBpbXBvcnQgXCJUaGVtZS9BcHBsaWNhdGlvbi9wYWdlL19jb250YWN0LnNjc3NcIjtcclxuQGltcG9ydCBcIlRoZW1lL0FwcGxpY2F0aW9uL3BhZ2UvX2Vycm9yLnNjc3NcIjtcclxuQGltcG9ydCBcIk1hc3Rlci9BcHBsaWNhdGlvbi9wYWdlL3JlZ2lzdGVyXCI7XHJcbkBpbXBvcnQgXCJUaGVtZS9BcHBsaWNhdGlvbi9wYWdlL2xvZ2luXCI7XHJcbkBpbXBvcnQgXCJNYXN0ZXIvQXBwbGljYXRpb24vcGFnZS9mb3Jnb3QtcGFzc3dvcmRcIjtcclxuXHJcblxyXG4vKkBmb250LWZhY2Uge1xyXG5cdGZvbnQtZmFtaWx5OiAnT3BlblNhbnNSZWd1bGFyJztcclxuXHRzcmM6IHVybCgnL0ZvbnRzL09wZW5TYW5zLVJlZ3VsYXItd2ViZm9udC5lb3QnKTtcclxuXHRzcmM6IHVybCgnL0ZvbnRzL09wZW5TYW5zLVJlZ3VsYXItd2ViZm9udC5lb3QnKSBmb3JtYXQoJ2VtYmVkZGVkLW9wZW50eXBlJyksIHVybCgnL0ZvbnRzL09wZW5TYW5zLVJlZ3VsYXItd2ViZm9udC53b2ZmJykgZm9ybWF0KCd3b2ZmJyksIHVybCgnL0ZvbnRzL09wZW5TYW5zLVJlZ3VsYXItd2ViZm9udC50dGYnKSBmb3JtYXQoJ3RydWV0eXBlJyk7XHJcbn0qL1xyXG5cclxuJGNvbG9yLWJ1dHRvbjogIzAwMWU1YTtcclxuXHJcbmxhYmVsIHtcclxuICAgIGN1cnNvcjogcG9pbnRlcjtcclxufVxyXG5cclxuLmFsZXJ0IHtcclxuICAgIG1hcmdpbjogMTBweCAwO1xyXG4gICAgcGFkZGluZzogNXB4O1xyXG4gICAgYm9yZGVyLXJhZGl1czogMDtcclxuICAgIGRpc3BsYXk6IG5vbmU7XHJcblxyXG4gICAgJi5hbGVydC1zdWNjZXNzLCAmLmFsZXJ0LWRhbmdlciB7XHJcbiAgICAgICAgZGlzcGxheTogYmxvY2s7XHJcbiAgICB9XHJcbn1cclxuXHJcbi5mb3JtLWdyb3VwIHtcclxuICAgIG1hcmdpbjogMDtcclxufVxyXG5cclxuLmdyZXktYmFja2dyb3VuZCB7XHJcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiByZ2JhKDI0MSwgMjQxLCAyNDEsIDAuOTApO1xyXG4gICAgcGFkZGluZy10b3A6IDE1cHg7XHJcbiAgICBwYWRkaW5nLWJvdHRvbTogMTVweDtcclxufVxyXG5cclxuW2NsYXNzXj1cImZsYXRpY29uLVwiXTpiZWZvcmUsIFtjbGFzcyo9XCIgZmxhdGljb24tXCJdOmJlZm9yZSB7XHJcbiAgICBtYXJnaW4tbGVmdDogMCAhaW1wb3J0YW50O1xyXG59XHJcblxyXG50YWJsZSB7XHJcblxyXG4gICAgdHIge1xyXG5cclxuICAgICAgICB0aCwgdGQge1xyXG4gICAgICAgICAgICBwYWRkaW5nOiA1cHg7XHJcbiAgICAgICAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcclxuICAgICAgICAgICAgYm9yZGVyOiBzb2xpZCAjMjIyIDFweDtcclxuICAgICAgICB9XHJcblxyXG4gICAgICAgIHRoIHtcclxuICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogIzgyODM4NTtcclxuICAgICAgICAgICAgY29sb3I6ICNmZmY7XHJcbiAgICAgICAgfVxyXG5cclxuICAgICAgICB0ZCB7XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG59XHJcblxyXG5oMSBbY2xhc3NePVwiZmxhdGljb24tXCJdOmJlZm9yZSB7XHJcbiAgICBjb2xvcjogI0ZGRDYwMjtcclxufVxyXG5cclxuLm5hdmlnYXRpb24tYnV0dG9ucyB7XHJcbiAgICBwYWRkaW5nOiAxMHB4IDA7XHJcblxyXG4gICAgYnV0dG9uIHtcclxuICAgICAgICBwYWRkaW5nOiAxMnB4O1xyXG4gICAgICAgIGNvbG9yOiAjMDAwO1xyXG4gICAgICAgIGZvbnQtd2VpZ2h0OiBib2xkO1xyXG4gICAgfVxyXG5cclxuICAgIC5vcmRlci1uZXh0IHtcclxuXHJcbiAgICAgICAgLmljb24jY2hlY2sge1xyXG5cclxuICAgICAgICAgICAgJjpiZWZvcmUge1xyXG4gICAgICAgICAgICAgICAgbWFyZ2luOiAwO1xyXG4gICAgICAgICAgICAgICAgZm9udC1zaXplOiAxOHB4O1xyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG59XHJcblxyXG4uY2VudGVyLXRleHQge1xyXG4gICAgdGV4dC1hbGlnbjogY2VudGVyO1xyXG59XHJcblxyXG5pbnB1dFtuYW1lPVByZVBob25lXSB7XHJcbiAgICB3aWR0aDogNjBweDtcclxufVxyXG5cclxuaW5wdXRbbmFtZT1QaG9uZV0ge1xyXG4gICAgd2lkdGg6IDEyMnB4O1xyXG59XHJcblxyXG5oMSBzcGFuIHtcclxuICAgIC8qY29sb3I6ICNFMjQ0Mjc7Ki9cclxuICAgICY6OmJlZm9yZSB7XHJcbiAgICAgICAgZm9udC1zaXplOiAzMHB4ICFpbXBvcnRhbnQ7XHJcbiAgICB9XHJcbn1cclxuXHJcbmlucHV0W3R5cGU9XCJ0ZXh0XCJdLCBpbnB1dFt0eXBlPVwicGFzc3dvcmRcIl0ge1xyXG4gICAgcGFkZGluZzogMTBweDtcclxuICAgIGJvcmRlcjogMXB4IHNvbGlkICNjZWNlY2U7XHJcbiAgICBmb250LXdlaWdodDogNTAwO1xyXG4gICAgZm9udC1zaXplOiAxNnB4O1xyXG4gICAgaGVpZ2h0OiA0MHB4O1xyXG4gICAgYm9yZGVyLXJhZGl1czogMDtcclxuICAgIHdpZHRoOiAxMDAlO1xyXG5cclxuICAgICYucHJlcGhvbmUge1xyXG4gICAgICAgIHdpZHRoOiAyMCU7XHJcbiAgICAgICAgZmxvYXQ6IGxlZnQ7XHJcbiAgICB9XHJcblxyXG4gICAgJi5waG9uZSB7XHJcbiAgICAgICAgd2lkdGg6IDc5JTtcclxuICAgICAgICBmbG9hdDogcmlnaHQ7XHJcbiAgICB9XHJcbn1cclxuXHJcbi5jaGVja2JveCAuY2hlY2tib3gtbWF0ZXJpYWwgLmNoZWNrIHtcclxuICAgIGJvcmRlcjogMnB4IHNvbGlkICMwMDA7XHJcbiAgICBib3JkZXItcmFkaXVzOiAycHg7XHJcblxyXG4gICAgJjpiZWZvcmUge1xyXG4gICAgICAgIGNvbG9yOiAjMDAwICFpbXBvcnRhbnQ7XHJcbiAgICB9XHJcbn1cclxuXHJcbi5jaGVja2JveCBpbnB1dFt0eXBlPWNoZWNrYm94XTpjaGVja2VkICsgLmNoZWNrYm94LW1hdGVyaWFsIC5jaGVjayB7XHJcbiAgICBib3JkZXI6IDJweCBzb2xpZCAjMDAwO1xyXG59XHJcblxyXG5cclxuLmJ1dHRvbiB7XHJcbiAgICBwYWRkaW5nOiA0cHg7XHJcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkY29sb3ItYnV0dG9uO1xyXG4gICAgYm9yZGVyOiAwO1xyXG4gICAgY29sb3I6ICNmZmY7XHJcbiAgICB3aWR0aDogMTAwJTtcclxuICAgIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XHJcbiAgICB0cmFuc2l0aW9uOiBhbGwgZWFzZS1pbi1vdXQgLjIzcztcclxuICAgIG91dGxpbmU6IG5vbmU7XHJcbiAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XHJcbiAgICBib3JkZXItcmFkaXVzOiAwO1xyXG4gICAgcGFkZGluZzogNXB4O1xyXG4gICAgcGFkZGluZy1sZWZ0OiA1MHB4O1xyXG4gICAgcGFkZGluZy1yaWdodDogNTBweDtcclxuICAgIG1hcmdpbi10b3A6IDEwcHg7XHJcbiAgICBtYXJnaW4tYm90dG9tOiAxMHB4O1xyXG5cclxuICAgICY6aG92ZXIge1xyXG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6IGxpZ2h0ZW4oJGNvbG9yLWJ1dHRvbiwgMTAlKTtcclxuICAgIH1cclxuXHJcbiAgICAmLmJ1dHRvbk4ge1xyXG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6ICM1MjUyNTI7XHJcbiAgICAgICAgY29sb3I6ICNmZmY7XHJcblxyXG4gICAgICAgICY6aG92ZXIge1xyXG4gICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiBkYXJrZW4oIzUyNTI1MiwgNyUpO1xyXG4gICAgICAgIH1cclxuICAgIH1cclxufVxyXG5cclxuYS5idXR0b24ge1xyXG4gICAgcGFkZGluZzogMTBweDtcclxuXHJcbiAgICAmOmhvdmVyIHtcclxuICAgICAgICBjb2xvcjogI2ZmZjtcclxuICAgICAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XHJcbiAgICB9XHJcbn1cclxuXHJcbi5saWdodC1idXR0b24ge1xyXG4gICAgYmFja2dyb3VuZC1jb2xvcjogI2NlY2VjZTtcclxuICAgIC8qYm9yZGVyOiAxcHggc29saWQgI0FEQURBRDsqL1xyXG4gICAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcclxuICAgIGNvbG9yOiAjMDAwO1xyXG4gICAgdGV4dC1hbGlnbjogY2VudGVyO1xyXG4gICAgcGFkZGluZzogNnB4IDEycHg7XHJcbiAgICB0cmFuc2l0aW9uOiBhbGwgZWFzZS1pbi1vdXQgLjIzcztcclxuICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcclxuICAgIG1hcmdpbi1ib3R0b206IDVweDtcclxuICAgIGZvbnQtd2VpZ2h0OiBib2xkO1xyXG5cclxuICAgICY6aG92ZXIge1xyXG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6IGRhcmtlbigjRjFGMUYxLCAxMCUpO1xyXG4gICAgICAgIGNvbG9yOiAjMDAwO1xyXG4gICAgICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcclxuICAgIH1cclxufVxyXG5cclxuLmstYW5pbWF0aW9uLWNvbnRhaW5lciB7XHJcbiAgICB3aWR0aDogMjgycHggIWltcG9ydGFudDtcclxuICAgIGhlaWdodDogMjgwcHggIWltcG9ydGFudDtcclxuXHJcbiAgICAuay1saXN0LWNvbnRhaW5lci5rLXBvcHVwLmstZ3JvdXAuay1yZXNldCB7XHJcbiAgICAgICAgd2lkdGg6IDEwMCUgIWltcG9ydGFudDtcclxuICAgICAgICBoZWlnaHQ6IDI4MHB4ICFpbXBvcnRhbnQ7XHJcblxyXG4gICAgICAgIGRpdjpsYXN0LWNoaWxkIHtcclxuICAgICAgICAgICAgaGVpZ2h0OiAyMjFweCAhaW1wb3J0YW50O1xyXG4gICAgICAgIH1cclxuICAgIH1cclxuXHJcbiAgICBAbWVkaWEgKG1heC13aWR0aDogJHNjcmVlbi1tZC1tYXgpIHtcclxuICAgICAgICB3aWR0aDogMjcxcHggIWltcG9ydGFudDtcclxuICAgIH1cclxuXHJcbiAgICBAbWVkaWEgKG1heC13aWR0aDogJHNjcmVlbi1zbS1tYXgpIHtcclxuICAgICAgICB3aWR0aDogNDgxcHggIWltcG9ydGFudDtcclxuICAgIH1cclxuXHJcbiAgICBAbWVkaWEgKG1heC13aWR0aDogJHNjcmVlbi14cy1tYXgpIHtcclxuICAgICAgICB3aWR0aDogODUuNSUgIWltcG9ydGFudDtcclxuICAgIH1cclxufVxyXG5cclxuLm5vLXBhZGRpbmctcmlnaHQge1xyXG4gICAgcGFkZGluZy1yaWdodDogMDtcclxufVxyXG5cclxuLm5vLXBhZGRpbmctbGVmdCB7XHJcbiAgICBwYWRkaW5nLWxlZnQ6IDA7XHJcbn1cclxuXHJcbi5jY19iYW5uZXItd3JhcHBlciB7XHJcblxyXG4gICAgLmNjX2Jhbm5lci5jY19jb250YWluZXIuY2NfY29udGFpbmVyLS1vcGVuIHtcclxuICAgICAgICBiYWNrZ3JvdW5kOiAjMjIyO1xyXG4gICAgICAgIGNvbG9yOiAjZmZmO1xyXG4gICAgICAgIHJpZ2h0OiBpbml0aWFsO1xyXG4gICAgICAgIGxlZnQ6IDIwcHg7XHJcbiAgICAgICAgd2lkdGg6IDY1JTtcclxuXHJcbiAgICAgICAgQG1lZGlhIChtYXgtd2lkdGg6ICRzY3JlZW4teHMtbWF4KSB7XHJcbiAgICAgICAgICAgIHdpZHRoOiA0MCU7XHJcbiAgICAgICAgfVxyXG5cclxuICAgICAgICAuY2NfYnRuLmNjX2J0bl9hY2NlcHRfYWxsIHtcclxuICAgICAgICAgICAgYm9yZGVyLXJhZGl1czogMCAhaW1wb3J0YW50O1xyXG4gICAgICAgIH1cclxuICAgIH1cclxufVxyXG5cclxuLmZpZWxkLXZhbGlkYXRpb24tZXJyb3Ige1xyXG4gICAgcGFkZGluZzogMTBweDtcclxuICAgIGJhY2tncm91bmQtY29sb3I6IHJlZDtcclxuICAgIGNvbG9yOiAjZmZmO1xyXG59XHJcblxyXG4uYWxpZ24tY2VudGVyIHtcclxuICAgIHRleHQtYWxpZ246IGNlbnRlcjtcclxufVxyXG5cclxuLmstd2lkZ2V0IHtcclxuICAgIGJhY2tncm91bmQtY29sb3I6ICM4NDg0ODQ7XHJcblxyXG4gICAgJjphY3RpdmUge1xyXG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6ICM4NDg0ODQ7XHJcbiAgICB9XHJcblxyXG4gICAgJjpmb2N1cyB7XHJcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogIzg0ODQ4NDtcclxuICAgIH1cclxufSIsIi8qIVxuICogQm9vdHN0cmFwIHYzLjMuNyAoaHR0cDovL2dldGJvb3RzdHJhcC5jb20pXG4gKiBDb3B5cmlnaHQgMjAxMS0yMDE2IFR3aXR0ZXIsIEluYy5cbiAqIExpY2Vuc2VkIHVuZGVyIE1JVCAoaHR0cHM6Ly9naXRodWIuY29tL3R3YnMvYm9vdHN0cmFwL2Jsb2IvbWFzdGVyL0xJQ0VOU0UpXG4gKi9cblxuLy8gQ29yZSB2YXJpYWJsZXMgYW5kIG1peGluc1xuQGltcG9ydCBcImJvb3RzdHJhcC92YXJpYWJsZXNcIjtcbkBpbXBvcnQgXCJib290c3RyYXAvbWl4aW5zXCI7XG5cbi8vIFJlc2V0IGFuZCBkZXBlbmRlbmNpZXNcbkBpbXBvcnQgXCJib290c3RyYXAvbm9ybWFsaXplXCI7XG5AaW1wb3J0IFwiYm9vdHN0cmFwL3ByaW50XCI7XG5AaW1wb3J0IFwiYm9vdHN0cmFwL2dseXBoaWNvbnNcIjtcblxuLy8gQ29yZSBDU1NcbkBpbXBvcnQgXCJib290c3RyYXAvc2NhZmZvbGRpbmdcIjtcbkBpbXBvcnQgXCJib290c3RyYXAvdHlwZVwiO1xuQGltcG9ydCBcImJvb3RzdHJhcC9jb2RlXCI7XG5AaW1wb3J0IFwiYm9vdHN0cmFwL2dyaWRcIjtcbkBpbXBvcnQgXCJib290c3RyYXAvdGFibGVzXCI7XG5AaW1wb3J0IFwiYm9vdHN0cmFwL2Zvcm1zXCI7XG5AaW1wb3J0IFwiYm9vdHN0cmFwL2J1dHRvbnNcIjtcblxuLy8gQ29tcG9uZW50c1xuQGltcG9ydCBcImJvb3RzdHJhcC9jb21wb25lbnQtYW5pbWF0aW9uc1wiO1xuQGltcG9ydCBcImJvb3RzdHJhcC9kcm9wZG93bnNcIjtcbkBpbXBvcnQgXCJib290c3RyYXAvYnV0dG9uLWdyb3Vwc1wiO1xuQGltcG9ydCBcImJvb3RzdHJhcC9pbnB1dC1ncm91cHNcIjtcbkBpbXBvcnQgXCJib290c3RyYXAvbmF2c1wiO1xuQGltcG9ydCBcImJvb3RzdHJhcC9uYXZiYXJcIjtcbkBpbXBvcnQgXCJib290c3RyYXAvYnJlYWRjcnVtYnNcIjtcbkBpbXBvcnQgXCJib290c3RyYXAvcGFnaW5hdGlvblwiO1xuQGltcG9ydCBcImJvb3RzdHJhcC9wYWdlclwiO1xuQGltcG9ydCBcImJvb3RzdHJhcC9sYWJlbHNcIjtcbkBpbXBvcnQgXCJib290c3RyYXAvYmFkZ2VzXCI7XG5AaW1wb3J0IFwiYm9vdHN0cmFwL2p1bWJvdHJvblwiO1xuQGltcG9ydCBcImJvb3RzdHJhcC90aHVtYm5haWxzXCI7XG5AaW1wb3J0IFwiYm9vdHN0cmFwL2FsZXJ0c1wiO1xuQGltcG9ydCBcImJvb3RzdHJhcC9wcm9ncmVzcy1iYXJzXCI7XG5AaW1wb3J0IFwiYm9vdHN0cmFwL21lZGlhXCI7XG5AaW1wb3J0IFwiYm9vdHN0cmFwL2xpc3QtZ3JvdXBcIjtcbkBpbXBvcnQgXCJib290c3RyYXAvcGFuZWxzXCI7XG5AaW1wb3J0IFwiYm9vdHN0cmFwL3Jlc3BvbnNpdmUtZW1iZWRcIjtcbkBpbXBvcnQgXCJib290c3RyYXAvd2VsbHNcIjtcbkBpbXBvcnQgXCJib290c3RyYXAvY2xvc2VcIjtcblxuLy8gQ29tcG9uZW50cyB3LyBKYXZhU2NyaXB0XG5AaW1wb3J0IFwiYm9vdHN0cmFwL21vZGFsc1wiO1xuQGltcG9ydCBcImJvb3RzdHJhcC90b29sdGlwXCI7XG5AaW1wb3J0IFwiYm9vdHN0cmFwL3BvcG92ZXJzXCI7XG5AaW1wb3J0IFwiYm9vdHN0cmFwL2Nhcm91c2VsXCI7XG5cbi8vIFV0aWxpdHkgY2xhc3Nlc1xuQGltcG9ydCBcImJvb3RzdHJhcC91dGlsaXRpZXNcIjtcbkBpbXBvcnQgXCJib290c3RyYXAvcmVzcG9uc2l2ZS11dGlsaXRpZXNcIjtcbiIsIi8qISBub3JtYWxpemUuY3NzIHYzLjAuMyB8IE1JVCBMaWNlbnNlIHwgZ2l0aHViLmNvbS9uZWNvbGFzL25vcm1hbGl6ZS5jc3MgKi9cblxuLy9cbi8vIDEuIFNldCBkZWZhdWx0IGZvbnQgZmFtaWx5IHRvIHNhbnMtc2VyaWYuXG4vLyAyLiBQcmV2ZW50IGlPUyBhbmQgSUUgdGV4dCBzaXplIGFkanVzdCBhZnRlciBkZXZpY2Ugb3JpZW50YXRpb24gY2hhbmdlLFxuLy8gICAgd2l0aG91dCBkaXNhYmxpbmcgdXNlciB6b29tLlxuLy9cblxuaHRtbCB7XG4gIGZvbnQtZmFtaWx5OiBzYW5zLXNlcmlmOyAvLyAxXG4gIC1tcy10ZXh0LXNpemUtYWRqdXN0OiAxMDAlOyAvLyAyXG4gIC13ZWJraXQtdGV4dC1zaXplLWFkanVzdDogMTAwJTsgLy8gMlxufVxuXG4vL1xuLy8gUmVtb3ZlIGRlZmF1bHQgbWFyZ2luLlxuLy9cblxuYm9keSB7XG4gIG1hcmdpbjogMDtcbn1cblxuLy8gSFRNTDUgZGlzcGxheSBkZWZpbml0aW9uc1xuLy8gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cblxuLy9cbi8vIENvcnJlY3QgYGJsb2NrYCBkaXNwbGF5IG5vdCBkZWZpbmVkIGZvciBhbnkgSFRNTDUgZWxlbWVudCBpbiBJRSA4LzkuXG4vLyBDb3JyZWN0IGBibG9ja2AgZGlzcGxheSBub3QgZGVmaW5lZCBmb3IgYGRldGFpbHNgIG9yIGBzdW1tYXJ5YCBpbiBJRSAxMC8xMVxuLy8gYW5kIEZpcmVmb3guXG4vLyBDb3JyZWN0IGBibG9ja2AgZGlzcGxheSBub3QgZGVmaW5lZCBmb3IgYG1haW5gIGluIElFIDExLlxuLy9cblxuYXJ0aWNsZSxcbmFzaWRlLFxuZGV0YWlscyxcbmZpZ2NhcHRpb24sXG5maWd1cmUsXG5mb290ZXIsXG5oZWFkZXIsXG5oZ3JvdXAsXG5tYWluLFxubWVudSxcbm5hdixcbnNlY3Rpb24sXG5zdW1tYXJ5IHtcbiAgZGlzcGxheTogYmxvY2s7XG59XG5cbi8vXG4vLyAxLiBDb3JyZWN0IGBpbmxpbmUtYmxvY2tgIGRpc3BsYXkgbm90IGRlZmluZWQgaW4gSUUgOC85LlxuLy8gMi4gTm9ybWFsaXplIHZlcnRpY2FsIGFsaWdubWVudCBvZiBgcHJvZ3Jlc3NgIGluIENocm9tZSwgRmlyZWZveCwgYW5kIE9wZXJhLlxuLy9cblxuYXVkaW8sXG5jYW52YXMsXG5wcm9ncmVzcyxcbnZpZGVvIHtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrOyAvLyAxXG4gIHZlcnRpY2FsLWFsaWduOiBiYXNlbGluZTsgLy8gMlxufVxuXG4vL1xuLy8gUHJldmVudCBtb2Rlcm4gYnJvd3NlcnMgZnJvbSBkaXNwbGF5aW5nIGBhdWRpb2Agd2l0aG91dCBjb250cm9scy5cbi8vIFJlbW92ZSBleGNlc3MgaGVpZ2h0IGluIGlPUyA1IGRldmljZXMuXG4vL1xuXG5hdWRpbzpub3QoW2NvbnRyb2xzXSkge1xuICBkaXNwbGF5OiBub25lO1xuICBoZWlnaHQ6IDA7XG59XG5cbi8vXG4vLyBBZGRyZXNzIGBbaGlkZGVuXWAgc3R5bGluZyBub3QgcHJlc2VudCBpbiBJRSA4LzkvMTAuXG4vLyBIaWRlIHRoZSBgdGVtcGxhdGVgIGVsZW1lbnQgaW4gSUUgOC85LzEwLzExLCBTYWZhcmksIGFuZCBGaXJlZm94IDwgMjIuXG4vL1xuXG5baGlkZGVuXSxcbnRlbXBsYXRlIHtcbiAgZGlzcGxheTogbm9uZTtcbn1cblxuLy8gTGlua3Ncbi8vID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG5cbi8vXG4vLyBSZW1vdmUgdGhlIGdyYXkgYmFja2dyb3VuZCBjb2xvciBmcm9tIGFjdGl2ZSBsaW5rcyBpbiBJRSAxMC5cbi8vXG5cbmEge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcbn1cblxuLy9cbi8vIEltcHJvdmUgcmVhZGFiaWxpdHkgb2YgZm9jdXNlZCBlbGVtZW50cyB3aGVuIHRoZXkgYXJlIGFsc28gaW4gYW5cbi8vIGFjdGl2ZS9ob3ZlciBzdGF0ZS5cbi8vXG5cbmE6YWN0aXZlLFxuYTpob3ZlciB7XG4gIG91dGxpbmU6IDA7XG59XG5cbi8vIFRleHQtbGV2ZWwgc2VtYW50aWNzXG4vLyA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuXG4vL1xuLy8gQWRkcmVzcyBzdHlsaW5nIG5vdCBwcmVzZW50IGluIElFIDgvOS8xMC8xMSwgU2FmYXJpLCBhbmQgQ2hyb21lLlxuLy9cblxuYWJiclt0aXRsZV0ge1xuICBib3JkZXItYm90dG9tOiAxcHggZG90dGVkO1xufVxuXG4vL1xuLy8gQWRkcmVzcyBzdHlsZSBzZXQgdG8gYGJvbGRlcmAgaW4gRmlyZWZveCA0KywgU2FmYXJpLCBhbmQgQ2hyb21lLlxuLy9cblxuYixcbnN0cm9uZyB7XG4gIGZvbnQtd2VpZ2h0OiBib2xkO1xufVxuXG4vL1xuLy8gQWRkcmVzcyBzdHlsaW5nIG5vdCBwcmVzZW50IGluIFNhZmFyaSBhbmQgQ2hyb21lLlxuLy9cblxuZGZuIHtcbiAgZm9udC1zdHlsZTogaXRhbGljO1xufVxuXG4vL1xuLy8gQWRkcmVzcyB2YXJpYWJsZSBgaDFgIGZvbnQtc2l6ZSBhbmQgbWFyZ2luIHdpdGhpbiBgc2VjdGlvbmAgYW5kIGBhcnRpY2xlYFxuLy8gY29udGV4dHMgaW4gRmlyZWZveCA0KywgU2FmYXJpLCBhbmQgQ2hyb21lLlxuLy9cblxuaDEge1xuICBmb250LXNpemU6IDJlbTtcbiAgbWFyZ2luOiAwLjY3ZW0gMDtcbn1cblxuLy9cbi8vIEFkZHJlc3Mgc3R5bGluZyBub3QgcHJlc2VudCBpbiBJRSA4LzkuXG4vL1xuXG5tYXJrIHtcbiAgYmFja2dyb3VuZDogI2ZmMDtcbiAgY29sb3I6ICMwMDA7XG59XG5cbi8vXG4vLyBBZGRyZXNzIGluY29uc2lzdGVudCBhbmQgdmFyaWFibGUgZm9udCBzaXplIGluIGFsbCBicm93c2Vycy5cbi8vXG5cbnNtYWxsIHtcbiAgZm9udC1zaXplOiA4MCU7XG59XG5cbi8vXG4vLyBQcmV2ZW50IGBzdWJgIGFuZCBgc3VwYCBhZmZlY3RpbmcgYGxpbmUtaGVpZ2h0YCBpbiBhbGwgYnJvd3NlcnMuXG4vL1xuXG5zdWIsXG5zdXAge1xuICBmb250LXNpemU6IDc1JTtcbiAgbGluZS1oZWlnaHQ6IDA7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgdmVydGljYWwtYWxpZ246IGJhc2VsaW5lO1xufVxuXG5zdXAge1xuICB0b3A6IC0wLjVlbTtcbn1cblxuc3ViIHtcbiAgYm90dG9tOiAtMC4yNWVtO1xufVxuXG4vLyBFbWJlZGRlZCBjb250ZW50XG4vLyA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuXG4vL1xuLy8gUmVtb3ZlIGJvcmRlciB3aGVuIGluc2lkZSBgYWAgZWxlbWVudCBpbiBJRSA4LzkvMTAuXG4vL1xuXG5pbWcge1xuICBib3JkZXI6IDA7XG59XG5cbi8vXG4vLyBDb3JyZWN0IG92ZXJmbG93IG5vdCBoaWRkZW4gaW4gSUUgOS8xMC8xMS5cbi8vXG5cbnN2Zzpub3QoOnJvb3QpIHtcbiAgb3ZlcmZsb3c6IGhpZGRlbjtcbn1cblxuLy8gR3JvdXBpbmcgY29udGVudFxuLy8gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cblxuLy9cbi8vIEFkZHJlc3MgbWFyZ2luIG5vdCBwcmVzZW50IGluIElFIDgvOSBhbmQgU2FmYXJpLlxuLy9cblxuZmlndXJlIHtcbiAgbWFyZ2luOiAxZW0gNDBweDtcbn1cblxuLy9cbi8vIEFkZHJlc3MgZGlmZmVyZW5jZXMgYmV0d2VlbiBGaXJlZm94IGFuZCBvdGhlciBicm93c2Vycy5cbi8vXG5cbmhyIHtcbiAgYm94LXNpemluZzogY29udGVudC1ib3g7XG4gIGhlaWdodDogMDtcbn1cblxuLy9cbi8vIENvbnRhaW4gb3ZlcmZsb3cgaW4gYWxsIGJyb3dzZXJzLlxuLy9cblxucHJlIHtcbiAgb3ZlcmZsb3c6IGF1dG87XG59XG5cbi8vXG4vLyBBZGRyZXNzIG9kZCBgZW1gLXVuaXQgZm9udCBzaXplIHJlbmRlcmluZyBpbiBhbGwgYnJvd3NlcnMuXG4vL1xuXG5jb2RlLFxua2JkLFxucHJlLFxuc2FtcCB7XG4gIGZvbnQtZmFtaWx5OiBtb25vc3BhY2UsIG1vbm9zcGFjZTtcbiAgZm9udC1zaXplOiAxZW07XG59XG5cbi8vIEZvcm1zXG4vLyA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuXG4vL1xuLy8gS25vd24gbGltaXRhdGlvbjogYnkgZGVmYXVsdCwgQ2hyb21lIGFuZCBTYWZhcmkgb24gT1MgWCBhbGxvdyB2ZXJ5IGxpbWl0ZWRcbi8vIHN0eWxpbmcgb2YgYHNlbGVjdGAsIHVubGVzcyBhIGBib3JkZXJgIHByb3BlcnR5IGlzIHNldC5cbi8vXG5cbi8vXG4vLyAxLiBDb3JyZWN0IGNvbG9yIG5vdCBiZWluZyBpbmhlcml0ZWQuXG4vLyAgICBLbm93biBpc3N1ZTogYWZmZWN0cyBjb2xvciBvZiBkaXNhYmxlZCBlbGVtZW50cy5cbi8vIDIuIENvcnJlY3QgZm9udCBwcm9wZXJ0aWVzIG5vdCBiZWluZyBpbmhlcml0ZWQuXG4vLyAzLiBBZGRyZXNzIG1hcmdpbnMgc2V0IGRpZmZlcmVudGx5IGluIEZpcmVmb3ggNCssIFNhZmFyaSwgYW5kIENocm9tZS5cbi8vXG5cbmJ1dHRvbixcbmlucHV0LFxub3B0Z3JvdXAsXG5zZWxlY3QsXG50ZXh0YXJlYSB7XG4gIGNvbG9yOiBpbmhlcml0OyAvLyAxXG4gIGZvbnQ6IGluaGVyaXQ7IC8vIDJcbiAgbWFyZ2luOiAwOyAvLyAzXG59XG5cbi8vXG4vLyBBZGRyZXNzIGBvdmVyZmxvd2Agc2V0IHRvIGBoaWRkZW5gIGluIElFIDgvOS8xMC8xMS5cbi8vXG5cbmJ1dHRvbiB7XG4gIG92ZXJmbG93OiB2aXNpYmxlO1xufVxuXG4vL1xuLy8gQWRkcmVzcyBpbmNvbnNpc3RlbnQgYHRleHQtdHJhbnNmb3JtYCBpbmhlcml0YW5jZSBmb3IgYGJ1dHRvbmAgYW5kIGBzZWxlY3RgLlxuLy8gQWxsIG90aGVyIGZvcm0gY29udHJvbCBlbGVtZW50cyBkbyBub3QgaW5oZXJpdCBgdGV4dC10cmFuc2Zvcm1gIHZhbHVlcy5cbi8vIENvcnJlY3QgYGJ1dHRvbmAgc3R5bGUgaW5oZXJpdGFuY2UgaW4gRmlyZWZveCwgSUUgOC85LzEwLzExLCBhbmQgT3BlcmEuXG4vLyBDb3JyZWN0IGBzZWxlY3RgIHN0eWxlIGluaGVyaXRhbmNlIGluIEZpcmVmb3guXG4vL1xuXG5idXR0b24sXG5zZWxlY3Qge1xuICB0ZXh0LXRyYW5zZm9ybTogbm9uZTtcbn1cblxuLy9cbi8vIDEuIEF2b2lkIHRoZSBXZWJLaXQgYnVnIGluIEFuZHJvaWQgNC4wLiogd2hlcmUgKDIpIGRlc3Ryb3lzIG5hdGl2ZSBgYXVkaW9gXG4vLyAgICBhbmQgYHZpZGVvYCBjb250cm9scy5cbi8vIDIuIENvcnJlY3QgaW5hYmlsaXR5IHRvIHN0eWxlIGNsaWNrYWJsZSBgaW5wdXRgIHR5cGVzIGluIGlPUy5cbi8vIDMuIEltcHJvdmUgdXNhYmlsaXR5IGFuZCBjb25zaXN0ZW5jeSBvZiBjdXJzb3Igc3R5bGUgYmV0d2VlbiBpbWFnZS10eXBlXG4vLyAgICBgaW5wdXRgIGFuZCBvdGhlcnMuXG4vL1xuXG5idXR0b24sXG5odG1sIGlucHV0W3R5cGU9XCJidXR0b25cIl0sIC8vIDFcbmlucHV0W3R5cGU9XCJyZXNldFwiXSxcbmlucHV0W3R5cGU9XCJzdWJtaXRcIl0ge1xuICAtd2Via2l0LWFwcGVhcmFuY2U6IGJ1dHRvbjsgLy8gMlxuICBjdXJzb3I6IHBvaW50ZXI7IC8vIDNcbn1cblxuLy9cbi8vIFJlLXNldCBkZWZhdWx0IGN1cnNvciBmb3IgZGlzYWJsZWQgZWxlbWVudHMuXG4vL1xuXG5idXR0b25bZGlzYWJsZWRdLFxuaHRtbCBpbnB1dFtkaXNhYmxlZF0ge1xuICBjdXJzb3I6IGRlZmF1bHQ7XG59XG5cbi8vXG4vLyBSZW1vdmUgaW5uZXIgcGFkZGluZyBhbmQgYm9yZGVyIGluIEZpcmVmb3ggNCsuXG4vL1xuXG5idXR0b246Oi1tb3otZm9jdXMtaW5uZXIsXG5pbnB1dDo6LW1vei1mb2N1cy1pbm5lciB7XG4gIGJvcmRlcjogMDtcbiAgcGFkZGluZzogMDtcbn1cblxuLy9cbi8vIEFkZHJlc3MgRmlyZWZveCA0KyBzZXR0aW5nIGBsaW5lLWhlaWdodGAgb24gYGlucHV0YCB1c2luZyBgIWltcG9ydGFudGAgaW5cbi8vIHRoZSBVQSBzdHlsZXNoZWV0LlxuLy9cblxuaW5wdXQge1xuICBsaW5lLWhlaWdodDogbm9ybWFsO1xufVxuXG4vL1xuLy8gSXQncyByZWNvbW1lbmRlZCB0aGF0IHlvdSBkb24ndCBhdHRlbXB0IHRvIHN0eWxlIHRoZXNlIGVsZW1lbnRzLlxuLy8gRmlyZWZveCdzIGltcGxlbWVudGF0aW9uIGRvZXNuJ3QgcmVzcGVjdCBib3gtc2l6aW5nLCBwYWRkaW5nLCBvciB3aWR0aC5cbi8vXG4vLyAxLiBBZGRyZXNzIGJveCBzaXppbmcgc2V0IHRvIGBjb250ZW50LWJveGAgaW4gSUUgOC85LzEwLlxuLy8gMi4gUmVtb3ZlIGV4Y2VzcyBwYWRkaW5nIGluIElFIDgvOS8xMC5cbi8vXG5cbmlucHV0W3R5cGU9XCJjaGVja2JveFwiXSxcbmlucHV0W3R5cGU9XCJyYWRpb1wiXSB7XG4gIGJveC1zaXppbmc6IGJvcmRlci1ib3g7IC8vIDFcbiAgcGFkZGluZzogMDsgLy8gMlxufVxuXG4vL1xuLy8gRml4IHRoZSBjdXJzb3Igc3R5bGUgZm9yIENocm9tZSdzIGluY3JlbWVudC9kZWNyZW1lbnQgYnV0dG9ucy4gRm9yIGNlcnRhaW5cbi8vIGBmb250LXNpemVgIHZhbHVlcyBvZiB0aGUgYGlucHV0YCwgaXQgY2F1c2VzIHRoZSBjdXJzb3Igc3R5bGUgb2YgdGhlXG4vLyBkZWNyZW1lbnQgYnV0dG9uIHRvIGNoYW5nZSBmcm9tIGBkZWZhdWx0YCB0byBgdGV4dGAuXG4vL1xuXG5pbnB1dFt0eXBlPVwibnVtYmVyXCJdOjotd2Via2l0LWlubmVyLXNwaW4tYnV0dG9uLFxuaW5wdXRbdHlwZT1cIm51bWJlclwiXTo6LXdlYmtpdC1vdXRlci1zcGluLWJ1dHRvbiB7XG4gIGhlaWdodDogYXV0bztcbn1cblxuLy9cbi8vIDEuIEFkZHJlc3MgYGFwcGVhcmFuY2VgIHNldCB0byBgc2VhcmNoZmllbGRgIGluIFNhZmFyaSBhbmQgQ2hyb21lLlxuLy8gMi4gQWRkcmVzcyBgYm94LXNpemluZ2Agc2V0IHRvIGBib3JkZXItYm94YCBpbiBTYWZhcmkgYW5kIENocm9tZS5cbi8vXG5cbmlucHV0W3R5cGU9XCJzZWFyY2hcIl0ge1xuICAtd2Via2l0LWFwcGVhcmFuY2U6IHRleHRmaWVsZDsgLy8gMVxuICBib3gtc2l6aW5nOiBjb250ZW50LWJveDsgLy8yXG59XG5cbi8vXG4vLyBSZW1vdmUgaW5uZXIgcGFkZGluZyBhbmQgc2VhcmNoIGNhbmNlbCBidXR0b24gaW4gU2FmYXJpIGFuZCBDaHJvbWUgb24gT1MgWC5cbi8vIFNhZmFyaSAoYnV0IG5vdCBDaHJvbWUpIGNsaXBzIHRoZSBjYW5jZWwgYnV0dG9uIHdoZW4gdGhlIHNlYXJjaCBpbnB1dCBoYXNcbi8vIHBhZGRpbmcgKGFuZCBgdGV4dGZpZWxkYCBhcHBlYXJhbmNlKS5cbi8vXG5cbmlucHV0W3R5cGU9XCJzZWFyY2hcIl06Oi13ZWJraXQtc2VhcmNoLWNhbmNlbC1idXR0b24sXG5pbnB1dFt0eXBlPVwic2VhcmNoXCJdOjotd2Via2l0LXNlYXJjaC1kZWNvcmF0aW9uIHtcbiAgLXdlYmtpdC1hcHBlYXJhbmNlOiBub25lO1xufVxuXG4vL1xuLy8gRGVmaW5lIGNvbnNpc3RlbnQgYm9yZGVyLCBtYXJnaW4sIGFuZCBwYWRkaW5nLlxuLy9cblxuZmllbGRzZXQge1xuICBib3JkZXI6IDFweCBzb2xpZCAjYzBjMGMwO1xuICBtYXJnaW46IDAgMnB4O1xuICBwYWRkaW5nOiAwLjM1ZW0gMC42MjVlbSAwLjc1ZW07XG59XG5cbi8vXG4vLyAxLiBDb3JyZWN0IGBjb2xvcmAgbm90IGJlaW5nIGluaGVyaXRlZCBpbiBJRSA4LzkvMTAvMTEuXG4vLyAyLiBSZW1vdmUgcGFkZGluZyBzbyBwZW9wbGUgYXJlbid0IGNhdWdodCBvdXQgaWYgdGhleSB6ZXJvIG91dCBmaWVsZHNldHMuXG4vL1xuXG5sZWdlbmQge1xuICBib3JkZXI6IDA7IC8vIDFcbiAgcGFkZGluZzogMDsgLy8gMlxufVxuXG4vL1xuLy8gUmVtb3ZlIGRlZmF1bHQgdmVydGljYWwgc2Nyb2xsYmFyIGluIElFIDgvOS8xMC8xMS5cbi8vXG5cbnRleHRhcmVhIHtcbiAgb3ZlcmZsb3c6IGF1dG87XG59XG5cbi8vXG4vLyBEb24ndCBpbmhlcml0IHRoZSBgZm9udC13ZWlnaHRgIChhcHBsaWVkIGJ5IGEgcnVsZSBhYm92ZSkuXG4vLyBOT1RFOiB0aGUgZGVmYXVsdCBjYW5ub3Qgc2FmZWx5IGJlIGNoYW5nZWQgaW4gQ2hyb21lIGFuZCBTYWZhcmkgb24gT1MgWC5cbi8vXG5cbm9wdGdyb3VwIHtcbiAgZm9udC13ZWlnaHQ6IGJvbGQ7XG59XG5cbi8vIFRhYmxlc1xuLy8gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cblxuLy9cbi8vIFJlbW92ZSBtb3N0IHNwYWNpbmcgYmV0d2VlbiB0YWJsZSBjZWxscy5cbi8vXG5cbnRhYmxlIHtcbiAgYm9yZGVyLWNvbGxhcHNlOiBjb2xsYXBzZTtcbiAgYm9yZGVyLXNwYWNpbmc6IDA7XG59XG5cbnRkLFxudGgge1xuICBwYWRkaW5nOiAwO1xufVxuIiwiLyohIFNvdXJjZTogaHR0cHM6Ly9naXRodWIuY29tL2g1YnAvaHRtbDUtYm9pbGVycGxhdGUvYmxvYi9tYXN0ZXIvc3JjL2Nzcy9tYWluLmNzcyAqL1xuXG4vLyA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuLy8gUHJpbnQgc3R5bGVzLlxuLy8gSW5saW5lZCB0byBhdm9pZCB0aGUgYWRkaXRpb25hbCBIVFRQIHJlcXVlc3Q6IGg1YnAuY29tL3Jcbi8vID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG5cbkBtZWRpYSBwcmludCB7XG4gICAgKixcbiAgICAqOmJlZm9yZSxcbiAgICAqOmFmdGVyIHtcbiAgICAgICAgYmFja2dyb3VuZDogdHJhbnNwYXJlbnQgIWltcG9ydGFudDtcbiAgICAgICAgY29sb3I6ICMwMDAgIWltcG9ydGFudDsgLy8gQmxhY2sgcHJpbnRzIGZhc3RlcjogaDVicC5jb20vc1xuICAgICAgICBib3gtc2hhZG93OiBub25lICFpbXBvcnRhbnQ7XG4gICAgICAgIHRleHQtc2hhZG93OiBub25lICFpbXBvcnRhbnQ7XG4gICAgfVxuXG4gICAgYSxcbiAgICBhOnZpc2l0ZWQge1xuICAgICAgICB0ZXh0LWRlY29yYXRpb246IHVuZGVybGluZTtcbiAgICB9XG5cbiAgICBhW2hyZWZdOmFmdGVyIHtcbiAgICAgICAgY29udGVudDogXCIgKFwiIGF0dHIoaHJlZikgXCIpXCI7XG4gICAgfVxuXG4gICAgYWJiclt0aXRsZV06YWZ0ZXIge1xuICAgICAgICBjb250ZW50OiBcIiAoXCIgYXR0cih0aXRsZSkgXCIpXCI7XG4gICAgfVxuXG4gICAgLy8gRG9uJ3Qgc2hvdyBsaW5rcyB0aGF0IGFyZSBmcmFnbWVudCBpZGVudGlmaWVycyxcbiAgICAvLyBvciB1c2UgdGhlIGBqYXZhc2NyaXB0OmAgcHNldWRvIHByb3RvY29sXG4gICAgYVtocmVmXj1cIiNcIl06YWZ0ZXIsXG4gICAgYVtocmVmXj1cImphdmFzY3JpcHQ6XCJdOmFmdGVyIHtcbiAgICAgICAgY29udGVudDogXCJcIjtcbiAgICB9XG5cbiAgICBwcmUsXG4gICAgYmxvY2txdW90ZSB7XG4gICAgICAgIGJvcmRlcjogMXB4IHNvbGlkICM5OTk7XG4gICAgICAgIHBhZ2UtYnJlYWstaW5zaWRlOiBhdm9pZDtcbiAgICB9XG5cbiAgICB0aGVhZCB7XG4gICAgICAgIGRpc3BsYXk6IHRhYmxlLWhlYWRlci1ncm91cDsgLy8gaDVicC5jb20vdFxuICAgIH1cblxuICAgIHRyLFxuICAgIGltZyB7XG4gICAgICAgIHBhZ2UtYnJlYWstaW5zaWRlOiBhdm9pZDtcbiAgICB9XG5cbiAgICBpbWcge1xuICAgICAgICBtYXgtd2lkdGg6IDEwMCUgIWltcG9ydGFudDtcbiAgICB9XG5cbiAgICBwLFxuICAgIGgyLFxuICAgIGgzIHtcbiAgICAgICAgb3JwaGFuczogMztcbiAgICAgICAgd2lkb3dzOiAzO1xuICAgIH1cblxuICAgIGgyLFxuICAgIGgzIHtcbiAgICAgICAgcGFnZS1icmVhay1hZnRlcjogYXZvaWQ7XG4gICAgfVxuXG4gICAgLy8gQm9vdHN0cmFwIHNwZWNpZmljIGNoYW5nZXMgc3RhcnRcblxuICAgIC8vIEJvb3RzdHJhcCBjb21wb25lbnRzXG4gICAgLm5hdmJhciB7XG4gICAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgfVxuICAgIC5idG4sXG4gICAgLmRyb3B1cCA+IC5idG4ge1xuICAgICAgICA+IC5jYXJldCB7XG4gICAgICAgICAgICBib3JkZXItdG9wLWNvbG9yOiAjMDAwICFpbXBvcnRhbnQ7XG4gICAgICAgIH1cbiAgICB9XG4gICAgLmxhYmVsIHtcbiAgICAgICAgYm9yZGVyOiAxcHggc29saWQgIzAwMDtcbiAgICB9XG5cbiAgICAudGFibGUge1xuICAgICAgICBib3JkZXItY29sbGFwc2U6IGNvbGxhcHNlICFpbXBvcnRhbnQ7XG5cbiAgICAgICAgdGQsXG4gICAgICAgIHRoIHtcbiAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6ICNmZmYgIWltcG9ydGFudDtcbiAgICAgICAgfVxuICAgIH1cbiAgICAudGFibGUtYm9yZGVyZWQge1xuICAgICAgICB0aCxcbiAgICAgICAgdGQge1xuICAgICAgICAgICAgYm9yZGVyOiAxcHggc29saWQgI2RkZCAhaW1wb3J0YW50O1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgLy8gQm9vdHN0cmFwIHNwZWNpZmljIGNoYW5nZXMgZW5kXG59XG4iLCIvL1xuLy8gR2x5cGhpY29ucyBmb3IgQm9vdHN0cmFwXG4vL1xuLy8gU2luY2UgaWNvbnMgYXJlIGZvbnRzLCB0aGV5IGNhbiBiZSBwbGFjZWQgYW55d2hlcmUgdGV4dCBpcyBwbGFjZWQgYW5kIGFyZVxuLy8gdGh1cyBhdXRvbWF0aWNhbGx5IHNpemVkIHRvIG1hdGNoIHRoZSBzdXJyb3VuZGluZyBjaGlsZC4gVG8gdXNlLCBjcmVhdGUgYW5cbi8vIGlubGluZSBlbGVtZW50IHdpdGggdGhlIGFwcHJvcHJpYXRlIGNsYXNzZXMsIGxpa2Ugc286XG4vL1xuLy8gPGEgaHJlZj1cIiNcIj48c3BhbiBjbGFzcz1cImdseXBoaWNvbiBnbHlwaGljb24tc3RhclwiPjwvc3Bhbj4gU3RhcjwvYT5cblxuQGF0LXJvb3Qge1xuICAvLyBJbXBvcnQgdGhlIGZvbnRzXG4gIEBmb250LWZhY2Uge1xuICAgIGZvbnQtZmFtaWx5OiAnR2x5cGhpY29ucyBIYWxmbGluZ3MnO1xuICAgIHNyYzogdXJsKGlmKCRib290c3RyYXAtc2Fzcy1hc3NldC1oZWxwZXIsIHR3YnMtZm9udC1wYXRoKCcjeyRpY29uLWZvbnQtcGF0aH0jeyRpY29uLWZvbnQtbmFtZX0uZW90JyksICcjeyRpY29uLWZvbnQtcGF0aH0jeyRpY29uLWZvbnQtbmFtZX0uZW90JykpO1xuICAgIHNyYzogdXJsKGlmKCRib290c3RyYXAtc2Fzcy1hc3NldC1oZWxwZXIsIHR3YnMtZm9udC1wYXRoKCcjeyRpY29uLWZvbnQtcGF0aH0jeyRpY29uLWZvbnQtbmFtZX0uZW90PyNpZWZpeCcpLCAnI3skaWNvbi1mb250LXBhdGh9I3skaWNvbi1mb250LW5hbWV9LmVvdD8jaWVmaXgnKSkgZm9ybWF0KCdlbWJlZGRlZC1vcGVudHlwZScpLFxuICAgICAgICAgdXJsKGlmKCRib290c3RyYXAtc2Fzcy1hc3NldC1oZWxwZXIsIHR3YnMtZm9udC1wYXRoKCcjeyRpY29uLWZvbnQtcGF0aH0jeyRpY29uLWZvbnQtbmFtZX0ud29mZjInKSwgJyN7JGljb24tZm9udC1wYXRofSN7JGljb24tZm9udC1uYW1lfS53b2ZmMicpKSBmb3JtYXQoJ3dvZmYyJyksXG4gICAgICAgICB1cmwoaWYoJGJvb3RzdHJhcC1zYXNzLWFzc2V0LWhlbHBlciwgdHdicy1mb250LXBhdGgoJyN7JGljb24tZm9udC1wYXRofSN7JGljb24tZm9udC1uYW1lfS53b2ZmJyksICcjeyRpY29uLWZvbnQtcGF0aH0jeyRpY29uLWZvbnQtbmFtZX0ud29mZicpKSBmb3JtYXQoJ3dvZmYnKSxcbiAgICAgICAgIHVybChpZigkYm9vdHN0cmFwLXNhc3MtYXNzZXQtaGVscGVyLCB0d2JzLWZvbnQtcGF0aCgnI3skaWNvbi1mb250LXBhdGh9I3skaWNvbi1mb250LW5hbWV9LnR0ZicpLCAnI3skaWNvbi1mb250LXBhdGh9I3skaWNvbi1mb250LW5hbWV9LnR0ZicpKSBmb3JtYXQoJ3RydWV0eXBlJyksXG4gICAgICAgICB1cmwoaWYoJGJvb3RzdHJhcC1zYXNzLWFzc2V0LWhlbHBlciwgdHdicy1mb250LXBhdGgoJyN7JGljb24tZm9udC1wYXRofSN7JGljb24tZm9udC1uYW1lfS5zdmcjI3skaWNvbi1mb250LXN2Zy1pZH0nKSwgJyN7JGljb24tZm9udC1wYXRofSN7JGljb24tZm9udC1uYW1lfS5zdmcjI3skaWNvbi1mb250LXN2Zy1pZH0nKSkgZm9ybWF0KCdzdmcnKTtcbiAgfVxufVxuXG4vLyBDYXRjaGFsbCBiYXNlY2xhc3Ncbi5nbHlwaGljb24ge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIHRvcDogMXB4O1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIGZvbnQtZmFtaWx5OiAnR2x5cGhpY29ucyBIYWxmbGluZ3MnO1xuICBmb250LXN0eWxlOiBub3JtYWw7XG4gIGZvbnQtd2VpZ2h0OiBub3JtYWw7XG4gIGxpbmUtaGVpZ2h0OiAxO1xuICAtd2Via2l0LWZvbnQtc21vb3RoaW5nOiBhbnRpYWxpYXNlZDtcbiAgLW1vei1vc3gtZm9udC1zbW9vdGhpbmc6IGdyYXlzY2FsZTtcbn1cblxuLy8gSW5kaXZpZHVhbCBpY29uc1xuLmdseXBoaWNvbi1hc3RlcmlzayAgICAgICAgICAgICAgIHsgJjpiZWZvcmUgeyBjb250ZW50OiBcIlxcMDAyYVwiOyB9IH1cbi5nbHlwaGljb24tcGx1cyAgICAgICAgICAgICAgICAgICB7ICY6YmVmb3JlIHsgY29udGVudDogXCJcXDAwMmJcIjsgfSB9XG4uZ2x5cGhpY29uLWV1cm8sXG4uZ2x5cGhpY29uLWV1ciAgICAgICAgICAgICAgICAgICAgeyAmOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFwyMGFjXCI7IH0gfVxuLmdseXBoaWNvbi1taW51cyAgICAgICAgICAgICAgICAgIHsgJjpiZWZvcmUgeyBjb250ZW50OiBcIlxcMjIxMlwiOyB9IH1cbi5nbHlwaGljb24tY2xvdWQgICAgICAgICAgICAgICAgICB7ICY6YmVmb3JlIHsgY29udGVudDogXCJcXDI2MDFcIjsgfSB9XG4uZ2x5cGhpY29uLWVudmVsb3BlICAgICAgICAgICAgICAgeyAmOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFwyNzA5XCI7IH0gfVxuLmdseXBoaWNvbi1wZW5jaWwgICAgICAgICAgICAgICAgIHsgJjpiZWZvcmUgeyBjb250ZW50OiBcIlxcMjcwZlwiOyB9IH1cbi5nbHlwaGljb24tZ2xhc3MgICAgICAgICAgICAgICAgICB7ICY6YmVmb3JlIHsgY29udGVudDogXCJcXGUwMDFcIjsgfSB9XG4uZ2x5cGhpY29uLW11c2ljICAgICAgICAgICAgICAgICAgeyAmOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxlMDAyXCI7IH0gfVxuLmdseXBoaWNvbi1zZWFyY2ggICAgICAgICAgICAgICAgIHsgJjpiZWZvcmUgeyBjb250ZW50OiBcIlxcZTAwM1wiOyB9IH1cbi5nbHlwaGljb24taGVhcnQgICAgICAgICAgICAgICAgICB7ICY6YmVmb3JlIHsgY29udGVudDogXCJcXGUwMDVcIjsgfSB9XG4uZ2x5cGhpY29uLXN0YXIgICAgICAgICAgICAgICAgICAgeyAmOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxlMDA2XCI7IH0gfVxuLmdseXBoaWNvbi1zdGFyLWVtcHR5ICAgICAgICAgICAgIHsgJjpiZWZvcmUgeyBjb250ZW50OiBcIlxcZTAwN1wiOyB9IH1cbi5nbHlwaGljb24tdXNlciAgICAgICAgICAgICAgICAgICB7ICY6YmVmb3JlIHsgY29udGVudDogXCJcXGUwMDhcIjsgfSB9XG4uZ2x5cGhpY29uLWZpbG0gICAgICAgICAgICAgICAgICAgeyAmOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxlMDA5XCI7IH0gfVxuLmdseXBoaWNvbi10aC1sYXJnZSAgICAgICAgICAgICAgIHsgJjpiZWZvcmUgeyBjb250ZW50OiBcIlxcZTAxMFwiOyB9IH1cbi5nbHlwaGljb24tdGggICAgICAgICAgICAgICAgICAgICB7ICY6YmVmb3JlIHsgY29udGVudDogXCJcXGUwMTFcIjsgfSB9XG4uZ2x5cGhpY29uLXRoLWxpc3QgICAgICAgICAgICAgICAgeyAmOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxlMDEyXCI7IH0gfVxuLmdseXBoaWNvbi1vayAgICAgICAgICAgICAgICAgICAgIHsgJjpiZWZvcmUgeyBjb250ZW50OiBcIlxcZTAxM1wiOyB9IH1cbi5nbHlwaGljb24tcmVtb3ZlICAgICAgICAgICAgICAgICB7ICY6YmVmb3JlIHsgY29udGVudDogXCJcXGUwMTRcIjsgfSB9XG4uZ2x5cGhpY29uLXpvb20taW4gICAgICAgICAgICAgICAgeyAmOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxlMDE1XCI7IH0gfVxuLmdseXBoaWNvbi16b29tLW91dCAgICAgICAgICAgICAgIHsgJjpiZWZvcmUgeyBjb250ZW50OiBcIlxcZTAxNlwiOyB9IH1cbi5nbHlwaGljb24tb2ZmICAgICAgICAgICAgICAgICAgICB7ICY6YmVmb3JlIHsgY29udGVudDogXCJcXGUwMTdcIjsgfSB9XG4uZ2x5cGhpY29uLXNpZ25hbCAgICAgICAgICAgICAgICAgeyAmOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxlMDE4XCI7IH0gfVxuLmdseXBoaWNvbi1jb2cgICAgICAgICAgICAgICAgICAgIHsgJjpiZWZvcmUgeyBjb250ZW50OiBcIlxcZTAxOVwiOyB9IH1cbi5nbHlwaGljb24tdHJhc2ggICAgICAgICAgICAgICAgICB7ICY6YmVmb3JlIHsgY29udGVudDogXCJcXGUwMjBcIjsgfSB9XG4uZ2x5cGhpY29uLWhvbWUgICAgICAgICAgICAgICAgICAgeyAmOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxlMDIxXCI7IH0gfVxuLmdseXBoaWNvbi1maWxlICAgICAgICAgICAgICAgICAgIHsgJjpiZWZvcmUgeyBjb250ZW50OiBcIlxcZTAyMlwiOyB9IH1cbi5nbHlwaGljb24tdGltZSAgICAgICAgICAgICAgICAgICB7ICY6YmVmb3JlIHsgY29udGVudDogXCJcXGUwMjNcIjsgfSB9XG4uZ2x5cGhpY29uLXJvYWQgICAgICAgICAgICAgICAgICAgeyAmOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxlMDI0XCI7IH0gfVxuLmdseXBoaWNvbi1kb3dubG9hZC1hbHQgICAgICAgICAgIHsgJjpiZWZvcmUgeyBjb250ZW50OiBcIlxcZTAyNVwiOyB9IH1cbi5nbHlwaGljb24tZG93bmxvYWQgICAgICAgICAgICAgICB7ICY6YmVmb3JlIHsgY29udGVudDogXCJcXGUwMjZcIjsgfSB9XG4uZ2x5cGhpY29uLXVwbG9hZCAgICAgICAgICAgICAgICAgeyAmOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxlMDI3XCI7IH0gfVxuLmdseXBoaWNvbi1pbmJveCAgICAgICAgICAgICAgICAgIHsgJjpiZWZvcmUgeyBjb250ZW50OiBcIlxcZTAyOFwiOyB9IH1cbi5nbHlwaGljb24tcGxheS1jaXJjbGUgICAgICAgICAgICB7ICY6YmVmb3JlIHsgY29udGVudDogXCJcXGUwMjlcIjsgfSB9XG4uZ2x5cGhpY29uLXJlcGVhdCAgICAgICAgICAgICAgICAgeyAmOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxlMDMwXCI7IH0gfVxuLmdseXBoaWNvbi1yZWZyZXNoICAgICAgICAgICAgICAgIHsgJjpiZWZvcmUgeyBjb250ZW50OiBcIlxcZTAzMVwiOyB9IH1cbi5nbHlwaGljb24tbGlzdC1hbHQgICAgICAgICAgICAgICB7ICY6YmVmb3JlIHsgY29udGVudDogXCJcXGUwMzJcIjsgfSB9XG4uZ2x5cGhpY29uLWxvY2sgICAgICAgICAgICAgICAgICAgeyAmOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxlMDMzXCI7IH0gfVxuLmdseXBoaWNvbi1mbGFnICAgICAgICAgICAgICAgICAgIHsgJjpiZWZvcmUgeyBjb250ZW50OiBcIlxcZTAzNFwiOyB9IH1cbi5nbHlwaGljb24taGVhZHBob25lcyAgICAgICAgICAgICB7ICY6YmVmb3JlIHsgY29udGVudDogXCJcXGUwMzVcIjsgfSB9XG4uZ2x5cGhpY29uLXZvbHVtZS1vZmYgICAgICAgICAgICAgeyAmOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxlMDM2XCI7IH0gfVxuLmdseXBoaWNvbi12b2x1bWUtZG93biAgICAgICAgICAgIHsgJjpiZWZvcmUgeyBjb250ZW50OiBcIlxcZTAzN1wiOyB9IH1cbi5nbHlwaGljb24tdm9sdW1lLXVwICAgICAgICAgICAgICB7ICY6YmVmb3JlIHsgY29udGVudDogXCJcXGUwMzhcIjsgfSB9XG4uZ2x5cGhpY29uLXFyY29kZSAgICAgICAgICAgICAgICAgeyAmOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxlMDM5XCI7IH0gfVxuLmdseXBoaWNvbi1iYXJjb2RlICAgICAgICAgICAgICAgIHsgJjpiZWZvcmUgeyBjb250ZW50OiBcIlxcZTA0MFwiOyB9IH1cbi5nbHlwaGljb24tdGFnICAgICAgICAgICAgICAgICAgICB7ICY6YmVmb3JlIHsgY29udGVudDogXCJcXGUwNDFcIjsgfSB9XG4uZ2x5cGhpY29uLXRhZ3MgICAgICAgICAgICAgICAgICAgeyAmOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxlMDQyXCI7IH0gfVxuLmdseXBoaWNvbi1ib29rICAgICAgICAgICAgICAgICAgIHsgJjpiZWZvcmUgeyBjb250ZW50OiBcIlxcZTA0M1wiOyB9IH1cbi5nbHlwaGljb24tYm9va21hcmsgICAgICAgICAgICAgICB7ICY6YmVmb3JlIHsgY29udGVudDogXCJcXGUwNDRcIjsgfSB9XG4uZ2x5cGhpY29uLXByaW50ICAgICAgICAgICAgICAgICAgeyAmOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxlMDQ1XCI7IH0gfVxuLmdseXBoaWNvbi1jYW1lcmEgICAgICAgICAgICAgICAgIHsgJjpiZWZvcmUgeyBjb250ZW50OiBcIlxcZTA0NlwiOyB9IH1cbi5nbHlwaGljb24tZm9udCAgICAgICAgICAgICAgICAgICB7ICY6YmVmb3JlIHsgY29udGVudDogXCJcXGUwNDdcIjsgfSB9XG4uZ2x5cGhpY29uLWJvbGQgICAgICAgICAgICAgICAgICAgeyAmOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxlMDQ4XCI7IH0gfVxuLmdseXBoaWNvbi1pdGFsaWMgICAgICAgICAgICAgICAgIHsgJjpiZWZvcmUgeyBjb250ZW50OiBcIlxcZTA0OVwiOyB9IH1cbi5nbHlwaGljb24tdGV4dC1oZWlnaHQgICAgICAgICAgICB7ICY6YmVmb3JlIHsgY29udGVudDogXCJcXGUwNTBcIjsgfSB9XG4uZ2x5cGhpY29uLXRleHQtd2lkdGggICAgICAgICAgICAgeyAmOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxlMDUxXCI7IH0gfVxuLmdseXBoaWNvbi1hbGlnbi1sZWZ0ICAgICAgICAgICAgIHsgJjpiZWZvcmUgeyBjb250ZW50OiBcIlxcZTA1MlwiOyB9IH1cbi5nbHlwaGljb24tYWxpZ24tY2VudGVyICAgICAgICAgICB7ICY6YmVmb3JlIHsgY29udGVudDogXCJcXGUwNTNcIjsgfSB9XG4uZ2x5cGhpY29uLWFsaWduLXJpZ2h0ICAgICAgICAgICAgeyAmOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxlMDU0XCI7IH0gfVxuLmdseXBoaWNvbi1hbGlnbi1qdXN0aWZ5ICAgICAgICAgIHsgJjpiZWZvcmUgeyBjb250ZW50OiBcIlxcZTA1NVwiOyB9IH1cbi5nbHlwaGljb24tbGlzdCAgICAgICAgICAgICAgICAgICB7ICY6YmVmb3JlIHsgY29udGVudDogXCJcXGUwNTZcIjsgfSB9XG4uZ2x5cGhpY29uLWluZGVudC1sZWZ0ICAgICAgICAgICAgeyAmOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxlMDU3XCI7IH0gfVxuLmdseXBoaWNvbi1pbmRlbnQtcmlnaHQgICAgICAgICAgIHsgJjpiZWZvcmUgeyBjb250ZW50OiBcIlxcZTA1OFwiOyB9IH1cbi5nbHlwaGljb24tZmFjZXRpbWUtdmlkZW8gICAgICAgICB7ICY6YmVmb3JlIHsgY29udGVudDogXCJcXGUwNTlcIjsgfSB9XG4uZ2x5cGhpY29uLXBpY3R1cmUgICAgICAgICAgICAgICAgeyAmOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxlMDYwXCI7IH0gfVxuLmdseXBoaWNvbi1tYXAtbWFya2VyICAgICAgICAgICAgIHsgJjpiZWZvcmUgeyBjb250ZW50OiBcIlxcZTA2MlwiOyB9IH1cbi5nbHlwaGljb24tYWRqdXN0ICAgICAgICAgICAgICAgICB7ICY6YmVmb3JlIHsgY29udGVudDogXCJcXGUwNjNcIjsgfSB9XG4uZ2x5cGhpY29uLXRpbnQgICAgICAgICAgICAgICAgICAgeyAmOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxlMDY0XCI7IH0gfVxuLmdseXBoaWNvbi1lZGl0ICAgICAgICAgICAgICAgICAgIHsgJjpiZWZvcmUgeyBjb250ZW50OiBcIlxcZTA2NVwiOyB9IH1cbi5nbHlwaGljb24tc2hhcmUgICAgICAgICAgICAgICAgICB7ICY6YmVmb3JlIHsgY29udGVudDogXCJcXGUwNjZcIjsgfSB9XG4uZ2x5cGhpY29uLWNoZWNrICAgICAgICAgICAgICAgICAgeyAmOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxlMDY3XCI7IH0gfVxuLmdseXBoaWNvbi1tb3ZlICAgICAgICAgICAgICAgICAgIHsgJjpiZWZvcmUgeyBjb250ZW50OiBcIlxcZTA2OFwiOyB9IH1cbi5nbHlwaGljb24tc3RlcC1iYWNrd2FyZCAgICAgICAgICB7ICY6YmVmb3JlIHsgY29udGVudDogXCJcXGUwNjlcIjsgfSB9XG4uZ2x5cGhpY29uLWZhc3QtYmFja3dhcmQgICAgICAgICAgeyAmOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxlMDcwXCI7IH0gfVxuLmdseXBoaWNvbi1iYWNrd2FyZCAgICAgICAgICAgICAgIHsgJjpiZWZvcmUgeyBjb250ZW50OiBcIlxcZTA3MVwiOyB9IH1cbi5nbHlwaGljb24tcGxheSAgICAgICAgICAgICAgICAgICB7ICY6YmVmb3JlIHsgY29udGVudDogXCJcXGUwNzJcIjsgfSB9XG4uZ2x5cGhpY29uLXBhdXNlICAgICAgICAgICAgICAgICAgeyAmOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxlMDczXCI7IH0gfVxuLmdseXBoaWNvbi1zdG9wICAgICAgICAgICAgICAgICAgIHsgJjpiZWZvcmUgeyBjb250ZW50OiBcIlxcZTA3NFwiOyB9IH1cbi5nbHlwaGljb24tZm9yd2FyZCAgICAgICAgICAgICAgICB7ICY6YmVmb3JlIHsgY29udGVudDogXCJcXGUwNzVcIjsgfSB9XG4uZ2x5cGhpY29uLWZhc3QtZm9yd2FyZCAgICAgICAgICAgeyAmOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxlMDc2XCI7IH0gfVxuLmdseXBoaWNvbi1zdGVwLWZvcndhcmQgICAgICAgICAgIHsgJjpiZWZvcmUgeyBjb250ZW50OiBcIlxcZTA3N1wiOyB9IH1cbi5nbHlwaGljb24tZWplY3QgICAgICAgICAgICAgICAgICB7ICY6YmVmb3JlIHsgY29udGVudDogXCJcXGUwNzhcIjsgfSB9XG4uZ2x5cGhpY29uLWNoZXZyb24tbGVmdCAgICAgICAgICAgeyAmOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxlMDc5XCI7IH0gfVxuLmdseXBoaWNvbi1jaGV2cm9uLXJpZ2h0ICAgICAgICAgIHsgJjpiZWZvcmUgeyBjb250ZW50OiBcIlxcZTA4MFwiOyB9IH1cbi5nbHlwaGljb24tcGx1cy1zaWduICAgICAgICAgICAgICB7ICY6YmVmb3JlIHsgY29udGVudDogXCJcXGUwODFcIjsgfSB9XG4uZ2x5cGhpY29uLW1pbnVzLXNpZ24gICAgICAgICAgICAgeyAmOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxlMDgyXCI7IH0gfVxuLmdseXBoaWNvbi1yZW1vdmUtc2lnbiAgICAgICAgICAgIHsgJjpiZWZvcmUgeyBjb250ZW50OiBcIlxcZTA4M1wiOyB9IH1cbi5nbHlwaGljb24tb2stc2lnbiAgICAgICAgICAgICAgICB7ICY6YmVmb3JlIHsgY29udGVudDogXCJcXGUwODRcIjsgfSB9XG4uZ2x5cGhpY29uLXF1ZXN0aW9uLXNpZ24gICAgICAgICAgeyAmOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxlMDg1XCI7IH0gfVxuLmdseXBoaWNvbi1pbmZvLXNpZ24gICAgICAgICAgICAgIHsgJjpiZWZvcmUgeyBjb250ZW50OiBcIlxcZTA4NlwiOyB9IH1cbi5nbHlwaGljb24tc2NyZWVuc2hvdCAgICAgICAgICAgICB7ICY6YmVmb3JlIHsgY29udGVudDogXCJcXGUwODdcIjsgfSB9XG4uZ2x5cGhpY29uLXJlbW92ZS1jaXJjbGUgICAgICAgICAgeyAmOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxlMDg4XCI7IH0gfVxuLmdseXBoaWNvbi1vay1jaXJjbGUgICAgICAgICAgICAgIHsgJjpiZWZvcmUgeyBjb250ZW50OiBcIlxcZTA4OVwiOyB9IH1cbi5nbHlwaGljb24tYmFuLWNpcmNsZSAgICAgICAgICAgICB7ICY6YmVmb3JlIHsgY29udGVudDogXCJcXGUwOTBcIjsgfSB9XG4uZ2x5cGhpY29uLWFycm93LWxlZnQgICAgICAgICAgICAgeyAmOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxlMDkxXCI7IH0gfVxuLmdseXBoaWNvbi1hcnJvdy1yaWdodCAgICAgICAgICAgIHsgJjpiZWZvcmUgeyBjb250ZW50OiBcIlxcZTA5MlwiOyB9IH1cbi5nbHlwaGljb24tYXJyb3ctdXAgICAgICAgICAgICAgICB7ICY6YmVmb3JlIHsgY29udGVudDogXCJcXGUwOTNcIjsgfSB9XG4uZ2x5cGhpY29uLWFycm93LWRvd24gICAgICAgICAgICAgeyAmOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxlMDk0XCI7IH0gfVxuLmdseXBoaWNvbi1zaGFyZS1hbHQgICAgICAgICAgICAgIHsgJjpiZWZvcmUgeyBjb250ZW50OiBcIlxcZTA5NVwiOyB9IH1cbi5nbHlwaGljb24tcmVzaXplLWZ1bGwgICAgICAgICAgICB7ICY6YmVmb3JlIHsgY29udGVudDogXCJcXGUwOTZcIjsgfSB9XG4uZ2x5cGhpY29uLXJlc2l6ZS1zbWFsbCAgICAgICAgICAgeyAmOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxlMDk3XCI7IH0gfVxuLmdseXBoaWNvbi1leGNsYW1hdGlvbi1zaWduICAgICAgIHsgJjpiZWZvcmUgeyBjb250ZW50OiBcIlxcZTEwMVwiOyB9IH1cbi5nbHlwaGljb24tZ2lmdCAgICAgICAgICAgICAgICAgICB7ICY6YmVmb3JlIHsgY29udGVudDogXCJcXGUxMDJcIjsgfSB9XG4uZ2x5cGhpY29uLWxlYWYgICAgICAgICAgICAgICAgICAgeyAmOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxlMTAzXCI7IH0gfVxuLmdseXBoaWNvbi1maXJlICAgICAgICAgICAgICAgICAgIHsgJjpiZWZvcmUgeyBjb250ZW50OiBcIlxcZTEwNFwiOyB9IH1cbi5nbHlwaGljb24tZXllLW9wZW4gICAgICAgICAgICAgICB7ICY6YmVmb3JlIHsgY29udGVudDogXCJcXGUxMDVcIjsgfSB9XG4uZ2x5cGhpY29uLWV5ZS1jbG9zZSAgICAgICAgICAgICAgeyAmOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxlMTA2XCI7IH0gfVxuLmdseXBoaWNvbi13YXJuaW5nLXNpZ24gICAgICAgICAgIHsgJjpiZWZvcmUgeyBjb250ZW50OiBcIlxcZTEwN1wiOyB9IH1cbi5nbHlwaGljb24tcGxhbmUgICAgICAgICAgICAgICAgICB7ICY6YmVmb3JlIHsgY29udGVudDogXCJcXGUxMDhcIjsgfSB9XG4uZ2x5cGhpY29uLWNhbGVuZGFyICAgICAgICAgICAgICAgeyAmOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxlMTA5XCI7IH0gfVxuLmdseXBoaWNvbi1yYW5kb20gICAgICAgICAgICAgICAgIHsgJjpiZWZvcmUgeyBjb250ZW50OiBcIlxcZTExMFwiOyB9IH1cbi5nbHlwaGljb24tY29tbWVudCAgICAgICAgICAgICAgICB7ICY6YmVmb3JlIHsgY29udGVudDogXCJcXGUxMTFcIjsgfSB9XG4uZ2x5cGhpY29uLW1hZ25ldCAgICAgICAgICAgICAgICAgeyAmOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxlMTEyXCI7IH0gfVxuLmdseXBoaWNvbi1jaGV2cm9uLXVwICAgICAgICAgICAgIHsgJjpiZWZvcmUgeyBjb250ZW50OiBcIlxcZTExM1wiOyB9IH1cbi5nbHlwaGljb24tY2hldnJvbi1kb3duICAgICAgICAgICB7ICY6YmVmb3JlIHsgY29udGVudDogXCJcXGUxMTRcIjsgfSB9XG4uZ2x5cGhpY29uLXJldHdlZXQgICAgICAgICAgICAgICAgeyAmOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxlMTE1XCI7IH0gfVxuLmdseXBoaWNvbi1zaG9wcGluZy1jYXJ0ICAgICAgICAgIHsgJjpiZWZvcmUgeyBjb250ZW50OiBcIlxcZTExNlwiOyB9IH1cbi5nbHlwaGljb24tZm9sZGVyLWNsb3NlICAgICAgICAgICB7ICY6YmVmb3JlIHsgY29udGVudDogXCJcXGUxMTdcIjsgfSB9XG4uZ2x5cGhpY29uLWZvbGRlci1vcGVuICAgICAgICAgICAgeyAmOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxlMTE4XCI7IH0gfVxuLmdseXBoaWNvbi1yZXNpemUtdmVydGljYWwgICAgICAgIHsgJjpiZWZvcmUgeyBjb250ZW50OiBcIlxcZTExOVwiOyB9IH1cbi5nbHlwaGljb24tcmVzaXplLWhvcml6b250YWwgICAgICB7ICY6YmVmb3JlIHsgY29udGVudDogXCJcXGUxMjBcIjsgfSB9XG4uZ2x5cGhpY29uLWhkZCAgICAgICAgICAgICAgICAgICAgeyAmOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxlMTIxXCI7IH0gfVxuLmdseXBoaWNvbi1idWxsaG9ybiAgICAgICAgICAgICAgIHsgJjpiZWZvcmUgeyBjb250ZW50OiBcIlxcZTEyMlwiOyB9IH1cbi5nbHlwaGljb24tYmVsbCAgICAgICAgICAgICAgICAgICB7ICY6YmVmb3JlIHsgY29udGVudDogXCJcXGUxMjNcIjsgfSB9XG4uZ2x5cGhpY29uLWNlcnRpZmljYXRlICAgICAgICAgICAgeyAmOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxlMTI0XCI7IH0gfVxuLmdseXBoaWNvbi10aHVtYnMtdXAgICAgICAgICAgICAgIHsgJjpiZWZvcmUgeyBjb250ZW50OiBcIlxcZTEyNVwiOyB9IH1cbi5nbHlwaGljb24tdGh1bWJzLWRvd24gICAgICAgICAgICB7ICY6YmVmb3JlIHsgY29udGVudDogXCJcXGUxMjZcIjsgfSB9XG4uZ2x5cGhpY29uLWhhbmQtcmlnaHQgICAgICAgICAgICAgeyAmOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxlMTI3XCI7IH0gfVxuLmdseXBoaWNvbi1oYW5kLWxlZnQgICAgICAgICAgICAgIHsgJjpiZWZvcmUgeyBjb250ZW50OiBcIlxcZTEyOFwiOyB9IH1cbi5nbHlwaGljb24taGFuZC11cCAgICAgICAgICAgICAgICB7ICY6YmVmb3JlIHsgY29udGVudDogXCJcXGUxMjlcIjsgfSB9XG4uZ2x5cGhpY29uLWhhbmQtZG93biAgICAgICAgICAgICAgeyAmOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxlMTMwXCI7IH0gfVxuLmdseXBoaWNvbi1jaXJjbGUtYXJyb3ctcmlnaHQgICAgIHsgJjpiZWZvcmUgeyBjb250ZW50OiBcIlxcZTEzMVwiOyB9IH1cbi5nbHlwaGljb24tY2lyY2xlLWFycm93LWxlZnQgICAgICB7ICY6YmVmb3JlIHsgY29udGVudDogXCJcXGUxMzJcIjsgfSB9XG4uZ2x5cGhpY29uLWNpcmNsZS1hcnJvdy11cCAgICAgICAgeyAmOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxlMTMzXCI7IH0gfVxuLmdseXBoaWNvbi1jaXJjbGUtYXJyb3ctZG93biAgICAgIHsgJjpiZWZvcmUgeyBjb250ZW50OiBcIlxcZTEzNFwiOyB9IH1cbi5nbHlwaGljb24tZ2xvYmUgICAgICAgICAgICAgICAgICB7ICY6YmVmb3JlIHsgY29udGVudDogXCJcXGUxMzVcIjsgfSB9XG4uZ2x5cGhpY29uLXdyZW5jaCAgICAgICAgICAgICAgICAgeyAmOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxlMTM2XCI7IH0gfVxuLmdseXBoaWNvbi10YXNrcyAgICAgICAgICAgICAgICAgIHsgJjpiZWZvcmUgeyBjb250ZW50OiBcIlxcZTEzN1wiOyB9IH1cbi5nbHlwaGljb24tZmlsdGVyICAgICAgICAgICAgICAgICB7ICY6YmVmb3JlIHsgY29udGVudDogXCJcXGUxMzhcIjsgfSB9XG4uZ2x5cGhpY29uLWJyaWVmY2FzZSAgICAgICAgICAgICAgeyAmOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxlMTM5XCI7IH0gfVxuLmdseXBoaWNvbi1mdWxsc2NyZWVuICAgICAgICAgICAgIHsgJjpiZWZvcmUgeyBjb250ZW50OiBcIlxcZTE0MFwiOyB9IH1cbi5nbHlwaGljb24tZGFzaGJvYXJkICAgICAgICAgICAgICB7ICY6YmVmb3JlIHsgY29udGVudDogXCJcXGUxNDFcIjsgfSB9XG4uZ2x5cGhpY29uLXBhcGVyY2xpcCAgICAgICAgICAgICAgeyAmOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxlMTQyXCI7IH0gfVxuLmdseXBoaWNvbi1oZWFydC1lbXB0eSAgICAgICAgICAgIHsgJjpiZWZvcmUgeyBjb250ZW50OiBcIlxcZTE0M1wiOyB9IH1cbi5nbHlwaGljb24tbGluayAgICAgICAgICAgICAgICAgICB7ICY6YmVmb3JlIHsgY29udGVudDogXCJcXGUxNDRcIjsgfSB9XG4uZ2x5cGhpY29uLXBob25lICAgICAgICAgICAgICAgICAgeyAmOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxlMTQ1XCI7IH0gfVxuLmdseXBoaWNvbi1wdXNocGluICAgICAgICAgICAgICAgIHsgJjpiZWZvcmUgeyBjb250ZW50OiBcIlxcZTE0NlwiOyB9IH1cbi5nbHlwaGljb24tdXNkICAgICAgICAgICAgICAgICAgICB7ICY6YmVmb3JlIHsgY29udGVudDogXCJcXGUxNDhcIjsgfSB9XG4uZ2x5cGhpY29uLWdicCAgICAgICAgICAgICAgICAgICAgeyAmOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxlMTQ5XCI7IH0gfVxuLmdseXBoaWNvbi1zb3J0ICAgICAgICAgICAgICAgICAgIHsgJjpiZWZvcmUgeyBjb250ZW50OiBcIlxcZTE1MFwiOyB9IH1cbi5nbHlwaGljb24tc29ydC1ieS1hbHBoYWJldCAgICAgICB7ICY6YmVmb3JlIHsgY29udGVudDogXCJcXGUxNTFcIjsgfSB9XG4uZ2x5cGhpY29uLXNvcnQtYnktYWxwaGFiZXQtYWx0ICAgeyAmOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxlMTUyXCI7IH0gfVxuLmdseXBoaWNvbi1zb3J0LWJ5LW9yZGVyICAgICAgICAgIHsgJjpiZWZvcmUgeyBjb250ZW50OiBcIlxcZTE1M1wiOyB9IH1cbi5nbHlwaGljb24tc29ydC1ieS1vcmRlci1hbHQgICAgICB7ICY6YmVmb3JlIHsgY29udGVudDogXCJcXGUxNTRcIjsgfSB9XG4uZ2x5cGhpY29uLXNvcnQtYnktYXR0cmlidXRlcyAgICAgeyAmOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxlMTU1XCI7IH0gfVxuLmdseXBoaWNvbi1zb3J0LWJ5LWF0dHJpYnV0ZXMtYWx0IHsgJjpiZWZvcmUgeyBjb250ZW50OiBcIlxcZTE1NlwiOyB9IH1cbi5nbHlwaGljb24tdW5jaGVja2VkICAgICAgICAgICAgICB7ICY6YmVmb3JlIHsgY29udGVudDogXCJcXGUxNTdcIjsgfSB9XG4uZ2x5cGhpY29uLWV4cGFuZCAgICAgICAgICAgICAgICAgeyAmOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxlMTU4XCI7IH0gfVxuLmdseXBoaWNvbi1jb2xsYXBzZS1kb3duICAgICAgICAgIHsgJjpiZWZvcmUgeyBjb250ZW50OiBcIlxcZTE1OVwiOyB9IH1cbi5nbHlwaGljb24tY29sbGFwc2UtdXAgICAgICAgICAgICB7ICY6YmVmb3JlIHsgY29udGVudDogXCJcXGUxNjBcIjsgfSB9XG4uZ2x5cGhpY29uLWxvZy1pbiAgICAgICAgICAgICAgICAgeyAmOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxlMTYxXCI7IH0gfVxuLmdseXBoaWNvbi1mbGFzaCAgICAgICAgICAgICAgICAgIHsgJjpiZWZvcmUgeyBjb250ZW50OiBcIlxcZTE2MlwiOyB9IH1cbi5nbHlwaGljb24tbG9nLW91dCAgICAgICAgICAgICAgICB7ICY6YmVmb3JlIHsgY29udGVudDogXCJcXGUxNjNcIjsgfSB9XG4uZ2x5cGhpY29uLW5ldy13aW5kb3cgICAgICAgICAgICAgeyAmOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxlMTY0XCI7IH0gfVxuLmdseXBoaWNvbi1yZWNvcmQgICAgICAgICAgICAgICAgIHsgJjpiZWZvcmUgeyBjb250ZW50OiBcIlxcZTE2NVwiOyB9IH1cbi5nbHlwaGljb24tc2F2ZSAgICAgICAgICAgICAgICAgICB7ICY6YmVmb3JlIHsgY29udGVudDogXCJcXGUxNjZcIjsgfSB9XG4uZ2x5cGhpY29uLW9wZW4gICAgICAgICAgICAgICAgICAgeyAmOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxlMTY3XCI7IH0gfVxuLmdseXBoaWNvbi1zYXZlZCAgICAgICAgICAgICAgICAgIHsgJjpiZWZvcmUgeyBjb250ZW50OiBcIlxcZTE2OFwiOyB9IH1cbi5nbHlwaGljb24taW1wb3J0ICAgICAgICAgICAgICAgICB7ICY6YmVmb3JlIHsgY29udGVudDogXCJcXGUxNjlcIjsgfSB9XG4uZ2x5cGhpY29uLWV4cG9ydCAgICAgICAgICAgICAgICAgeyAmOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxlMTcwXCI7IH0gfVxuLmdseXBoaWNvbi1zZW5kICAgICAgICAgICAgICAgICAgIHsgJjpiZWZvcmUgeyBjb250ZW50OiBcIlxcZTE3MVwiOyB9IH1cbi5nbHlwaGljb24tZmxvcHB5LWRpc2sgICAgICAgICAgICB7ICY6YmVmb3JlIHsgY29udGVudDogXCJcXGUxNzJcIjsgfSB9XG4uZ2x5cGhpY29uLWZsb3BweS1zYXZlZCAgICAgICAgICAgeyAmOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxlMTczXCI7IH0gfVxuLmdseXBoaWNvbi1mbG9wcHktcmVtb3ZlICAgICAgICAgIHsgJjpiZWZvcmUgeyBjb250ZW50OiBcIlxcZTE3NFwiOyB9IH1cbi5nbHlwaGljb24tZmxvcHB5LXNhdmUgICAgICAgICAgICB7ICY6YmVmb3JlIHsgY29udGVudDogXCJcXGUxNzVcIjsgfSB9XG4uZ2x5cGhpY29uLWZsb3BweS1vcGVuICAgICAgICAgICAgeyAmOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxlMTc2XCI7IH0gfVxuLmdseXBoaWNvbi1jcmVkaXQtY2FyZCAgICAgICAgICAgIHsgJjpiZWZvcmUgeyBjb250ZW50OiBcIlxcZTE3N1wiOyB9IH1cbi5nbHlwaGljb24tdHJhbnNmZXIgICAgICAgICAgICAgICB7ICY6YmVmb3JlIHsgY29udGVudDogXCJcXGUxNzhcIjsgfSB9XG4uZ2x5cGhpY29uLWN1dGxlcnkgICAgICAgICAgICAgICAgeyAmOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxlMTc5XCI7IH0gfVxuLmdseXBoaWNvbi1oZWFkZXIgICAgICAgICAgICAgICAgIHsgJjpiZWZvcmUgeyBjb250ZW50OiBcIlxcZTE4MFwiOyB9IH1cbi5nbHlwaGljb24tY29tcHJlc3NlZCAgICAgICAgICAgICB7ICY6YmVmb3JlIHsgY29udGVudDogXCJcXGUxODFcIjsgfSB9XG4uZ2x5cGhpY29uLWVhcnBob25lICAgICAgICAgICAgICAgeyAmOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxlMTgyXCI7IH0gfVxuLmdseXBoaWNvbi1waG9uZS1hbHQgICAgICAgICAgICAgIHsgJjpiZWZvcmUgeyBjb250ZW50OiBcIlxcZTE4M1wiOyB9IH1cbi5nbHlwaGljb24tdG93ZXIgICAgICAgICAgICAgICAgICB7ICY6YmVmb3JlIHsgY29udGVudDogXCJcXGUxODRcIjsgfSB9XG4uZ2x5cGhpY29uLXN0YXRzICAgICAgICAgICAgICAgICAgeyAmOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxlMTg1XCI7IH0gfVxuLmdseXBoaWNvbi1zZC12aWRlbyAgICAgICAgICAgICAgIHsgJjpiZWZvcmUgeyBjb250ZW50OiBcIlxcZTE4NlwiOyB9IH1cbi5nbHlwaGljb24taGQtdmlkZW8gICAgICAgICAgICAgICB7ICY6YmVmb3JlIHsgY29udGVudDogXCJcXGUxODdcIjsgfSB9XG4uZ2x5cGhpY29uLXN1YnRpdGxlcyAgICAgICAgICAgICAgeyAmOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxlMTg4XCI7IH0gfVxuLmdseXBoaWNvbi1zb3VuZC1zdGVyZW8gICAgICAgICAgIHsgJjpiZWZvcmUgeyBjb250ZW50OiBcIlxcZTE4OVwiOyB9IH1cbi5nbHlwaGljb24tc291bmQtZG9sYnkgICAgICAgICAgICB7ICY6YmVmb3JlIHsgY29udGVudDogXCJcXGUxOTBcIjsgfSB9XG4uZ2x5cGhpY29uLXNvdW5kLTUtMSAgICAgICAgICAgICAgeyAmOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxlMTkxXCI7IH0gfVxuLmdseXBoaWNvbi1zb3VuZC02LTEgICAgICAgICAgICAgIHsgJjpiZWZvcmUgeyBjb250ZW50OiBcIlxcZTE5MlwiOyB9IH1cbi5nbHlwaGljb24tc291bmQtNy0xICAgICAgICAgICAgICB7ICY6YmVmb3JlIHsgY29udGVudDogXCJcXGUxOTNcIjsgfSB9XG4uZ2x5cGhpY29uLWNvcHlyaWdodC1tYXJrICAgICAgICAgeyAmOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxlMTk0XCI7IH0gfVxuLmdseXBoaWNvbi1yZWdpc3RyYXRpb24tbWFyayAgICAgIHsgJjpiZWZvcmUgeyBjb250ZW50OiBcIlxcZTE5NVwiOyB9IH1cbi5nbHlwaGljb24tY2xvdWQtZG93bmxvYWQgICAgICAgICB7ICY6YmVmb3JlIHsgY29udGVudDogXCJcXGUxOTdcIjsgfSB9XG4uZ2x5cGhpY29uLWNsb3VkLXVwbG9hZCAgICAgICAgICAgeyAmOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxlMTk4XCI7IH0gfVxuLmdseXBoaWNvbi10cmVlLWNvbmlmZXIgICAgICAgICAgIHsgJjpiZWZvcmUgeyBjb250ZW50OiBcIlxcZTE5OVwiOyB9IH1cbi5nbHlwaGljb24tdHJlZS1kZWNpZHVvdXMgICAgICAgICB7ICY6YmVmb3JlIHsgY29udGVudDogXCJcXGUyMDBcIjsgfSB9XG4uZ2x5cGhpY29uLWNkICAgICAgICAgICAgICAgICAgICAgeyAmOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxlMjAxXCI7IH0gfVxuLmdseXBoaWNvbi1zYXZlLWZpbGUgICAgICAgICAgICAgIHsgJjpiZWZvcmUgeyBjb250ZW50OiBcIlxcZTIwMlwiOyB9IH1cbi5nbHlwaGljb24tb3Blbi1maWxlICAgICAgICAgICAgICB7ICY6YmVmb3JlIHsgY29udGVudDogXCJcXGUyMDNcIjsgfSB9XG4uZ2x5cGhpY29uLWxldmVsLXVwICAgICAgICAgICAgICAgeyAmOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxlMjA0XCI7IH0gfVxuLmdseXBoaWNvbi1jb3B5ICAgICAgICAgICAgICAgICAgIHsgJjpiZWZvcmUgeyBjb250ZW50OiBcIlxcZTIwNVwiOyB9IH1cbi5nbHlwaGljb24tcGFzdGUgICAgICAgICAgICAgICAgICB7ICY6YmVmb3JlIHsgY29udGVudDogXCJcXGUyMDZcIjsgfSB9XG4vLyBUaGUgZm9sbG93aW5nIDIgR2x5cGhpY29ucyBhcmUgb21pdHRlZCBmb3IgdGhlIHRpbWUgYmVpbmcgYmVjYXVzZVxuLy8gdGhleSBjdXJyZW50bHkgdXNlIFVuaWNvZGUgY29kZXBvaW50cyB0aGF0IGFyZSBvdXRzaWRlIHRoZVxuLy8gQmFzaWMgTXVsdGlsaW5ndWFsIFBsYW5lIChCTVApLiBPbGRlciBidWdneSB2ZXJzaW9ucyBvZiBXZWJLaXQgY2FuJ3QgaGFuZGxlXG4vLyBub24tQk1QIGNvZGVwb2ludHMgaW4gQ1NTIHN0cmluZyBlc2NhcGVzLCBhbmQgdGh1cyBjYW4ndCBkaXNwbGF5IHRoZXNlIHR3byBpY29ucy5cbi8vIE5vdGFibHksIHRoZSBidWcgYWZmZWN0cyBzb21lIG9sZGVyIHZlcnNpb25zIG9mIHRoZSBBbmRyb2lkIEJyb3dzZXIuXG4vLyBNb3JlIGluZm86IGh0dHBzOi8vZ2l0aHViLmNvbS90d2JzL2Jvb3RzdHJhcC9pc3N1ZXMvMTAxMDZcbi8vIC5nbHlwaGljb24tZG9vciAgICAgICAgICAgICAgICAgICB7ICY6YmVmb3JlIHsgY29udGVudDogXCJcXDFmNmFhXCI7IH0gfVxuLy8gLmdseXBoaWNvbi1rZXkgICAgICAgICAgICAgICAgICAgIHsgJjpiZWZvcmUgeyBjb250ZW50OiBcIlxcMWY1MTFcIjsgfSB9XG4uZ2x5cGhpY29uLWFsZXJ0ICAgICAgICAgICAgICAgICAgeyAmOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxlMjA5XCI7IH0gfVxuLmdseXBoaWNvbi1lcXVhbGl6ZXIgICAgICAgICAgICAgIHsgJjpiZWZvcmUgeyBjb250ZW50OiBcIlxcZTIxMFwiOyB9IH1cbi5nbHlwaGljb24ta2luZyAgICAgICAgICAgICAgICAgICB7ICY6YmVmb3JlIHsgY29udGVudDogXCJcXGUyMTFcIjsgfSB9XG4uZ2x5cGhpY29uLXF1ZWVuICAgICAgICAgICAgICAgICAgeyAmOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxlMjEyXCI7IH0gfVxuLmdseXBoaWNvbi1wYXduICAgICAgICAgICAgICAgICAgIHsgJjpiZWZvcmUgeyBjb250ZW50OiBcIlxcZTIxM1wiOyB9IH1cbi5nbHlwaGljb24tYmlzaG9wICAgICAgICAgICAgICAgICB7ICY6YmVmb3JlIHsgY29udGVudDogXCJcXGUyMTRcIjsgfSB9XG4uZ2x5cGhpY29uLWtuaWdodCAgICAgICAgICAgICAgICAgeyAmOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxlMjE1XCI7IH0gfVxuLmdseXBoaWNvbi1iYWJ5LWZvcm11bGEgICAgICAgICAgIHsgJjpiZWZvcmUgeyBjb250ZW50OiBcIlxcZTIxNlwiOyB9IH1cbi5nbHlwaGljb24tdGVudCAgICAgICAgICAgICAgICAgICB7ICY6YmVmb3JlIHsgY29udGVudDogXCJcXDI2ZmFcIjsgfSB9XG4uZ2x5cGhpY29uLWJsYWNrYm9hcmQgICAgICAgICAgICAgeyAmOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxlMjE4XCI7IH0gfVxuLmdseXBoaWNvbi1iZWQgICAgICAgICAgICAgICAgICAgIHsgJjpiZWZvcmUgeyBjb250ZW50OiBcIlxcZTIxOVwiOyB9IH1cbi5nbHlwaGljb24tYXBwbGUgICAgICAgICAgICAgICAgICB7ICY6YmVmb3JlIHsgY29udGVudDogXCJcXGY4ZmZcIjsgfSB9XG4uZ2x5cGhpY29uLWVyYXNlICAgICAgICAgICAgICAgICAgeyAmOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxlMjIxXCI7IH0gfVxuLmdseXBoaWNvbi1ob3VyZ2xhc3MgICAgICAgICAgICAgIHsgJjpiZWZvcmUgeyBjb250ZW50OiBcIlxcMjMxYlwiOyB9IH1cbi5nbHlwaGljb24tbGFtcCAgICAgICAgICAgICAgICAgICB7ICY6YmVmb3JlIHsgY29udGVudDogXCJcXGUyMjNcIjsgfSB9XG4uZ2x5cGhpY29uLWR1cGxpY2F0ZSAgICAgICAgICAgICAgeyAmOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxlMjI0XCI7IH0gfVxuLmdseXBoaWNvbi1waWdneS1iYW5rICAgICAgICAgICAgIHsgJjpiZWZvcmUgeyBjb250ZW50OiBcIlxcZTIyNVwiOyB9IH1cbi5nbHlwaGljb24tc2Npc3NvcnMgICAgICAgICAgICAgICB7ICY6YmVmb3JlIHsgY29udGVudDogXCJcXGUyMjZcIjsgfSB9XG4uZ2x5cGhpY29uLWJpdGNvaW4gICAgICAgICAgICAgICAgeyAmOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxlMjI3XCI7IH0gfVxuLmdseXBoaWNvbi1idGMgICAgICAgICAgICAgICAgICAgIHsgJjpiZWZvcmUgeyBjb250ZW50OiBcIlxcZTIyN1wiOyB9IH1cbi5nbHlwaGljb24teGJ0ICAgICAgICAgICAgICAgICAgICB7ICY6YmVmb3JlIHsgY29udGVudDogXCJcXGUyMjdcIjsgfSB9XG4uZ2x5cGhpY29uLXllbiAgICAgICAgICAgICAgICAgICAgeyAmOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFwwMGE1XCI7IH0gfVxuLmdseXBoaWNvbi1qcHkgICAgICAgICAgICAgICAgICAgIHsgJjpiZWZvcmUgeyBjb250ZW50OiBcIlxcMDBhNVwiOyB9IH1cbi5nbHlwaGljb24tcnVibGUgICAgICAgICAgICAgICAgICB7ICY6YmVmb3JlIHsgY29udGVudDogXCJcXDIwYmRcIjsgfSB9XG4uZ2x5cGhpY29uLXJ1YiAgICAgICAgICAgICAgICAgICAgeyAmOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFwyMGJkXCI7IH0gfVxuLmdseXBoaWNvbi1zY2FsZSAgICAgICAgICAgICAgICAgIHsgJjpiZWZvcmUgeyBjb250ZW50OiBcIlxcZTIzMFwiOyB9IH1cbi5nbHlwaGljb24taWNlLWxvbGx5ICAgICAgICAgICAgICB7ICY6YmVmb3JlIHsgY29udGVudDogXCJcXGUyMzFcIjsgfSB9XG4uZ2x5cGhpY29uLWljZS1sb2xseS10YXN0ZWQgICAgICAgeyAmOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxlMjMyXCI7IH0gfVxuLmdseXBoaWNvbi1lZHVjYXRpb24gICAgICAgICAgICAgIHsgJjpiZWZvcmUgeyBjb250ZW50OiBcIlxcZTIzM1wiOyB9IH1cbi5nbHlwaGljb24tb3B0aW9uLWhvcml6b250YWwgICAgICB7ICY6YmVmb3JlIHsgY29udGVudDogXCJcXGUyMzRcIjsgfSB9XG4uZ2x5cGhpY29uLW9wdGlvbi12ZXJ0aWNhbCAgICAgICAgeyAmOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxlMjM1XCI7IH0gfVxuLmdseXBoaWNvbi1tZW51LWhhbWJ1cmdlciAgICAgICAgIHsgJjpiZWZvcmUgeyBjb250ZW50OiBcIlxcZTIzNlwiOyB9IH1cbi5nbHlwaGljb24tbW9kYWwtd2luZG93ICAgICAgICAgICB7ICY6YmVmb3JlIHsgY29udGVudDogXCJcXGUyMzdcIjsgfSB9XG4uZ2x5cGhpY29uLW9pbCAgICAgICAgICAgICAgICAgICAgeyAmOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxlMjM4XCI7IH0gfVxuLmdseXBoaWNvbi1ncmFpbiAgICAgICAgICAgICAgICAgIHsgJjpiZWZvcmUgeyBjb250ZW50OiBcIlxcZTIzOVwiOyB9IH1cbi5nbHlwaGljb24tc3VuZ2xhc3NlcyAgICAgICAgICAgICB7ICY6YmVmb3JlIHsgY29udGVudDogXCJcXGUyNDBcIjsgfSB9XG4uZ2x5cGhpY29uLXRleHQtc2l6ZSAgICAgICAgICAgICAgeyAmOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxlMjQxXCI7IH0gfVxuLmdseXBoaWNvbi10ZXh0LWNvbG9yICAgICAgICAgICAgIHsgJjpiZWZvcmUgeyBjb250ZW50OiBcIlxcZTI0MlwiOyB9IH1cbi5nbHlwaGljb24tdGV4dC1iYWNrZ3JvdW5kICAgICAgICB7ICY6YmVmb3JlIHsgY29udGVudDogXCJcXGUyNDNcIjsgfSB9XG4uZ2x5cGhpY29uLW9iamVjdC1hbGlnbi10b3AgICAgICAgeyAmOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxlMjQ0XCI7IH0gfVxuLmdseXBoaWNvbi1vYmplY3QtYWxpZ24tYm90dG9tICAgIHsgJjpiZWZvcmUgeyBjb250ZW50OiBcIlxcZTI0NVwiOyB9IH1cbi5nbHlwaGljb24tb2JqZWN0LWFsaWduLWhvcml6b250YWx7ICY6YmVmb3JlIHsgY29udGVudDogXCJcXGUyNDZcIjsgfSB9XG4uZ2x5cGhpY29uLW9iamVjdC1hbGlnbi1sZWZ0ICAgICAgeyAmOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxlMjQ3XCI7IH0gfVxuLmdseXBoaWNvbi1vYmplY3QtYWxpZ24tdmVydGljYWwgIHsgJjpiZWZvcmUgeyBjb250ZW50OiBcIlxcZTI0OFwiOyB9IH1cbi5nbHlwaGljb24tb2JqZWN0LWFsaWduLXJpZ2h0ICAgICB7ICY6YmVmb3JlIHsgY29udGVudDogXCJcXGUyNDlcIjsgfSB9XG4uZ2x5cGhpY29uLXRyaWFuZ2xlLXJpZ2h0ICAgICAgICAgeyAmOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxlMjUwXCI7IH0gfVxuLmdseXBoaWNvbi10cmlhbmdsZS1sZWZ0ICAgICAgICAgIHsgJjpiZWZvcmUgeyBjb250ZW50OiBcIlxcZTI1MVwiOyB9IH1cbi5nbHlwaGljb24tdHJpYW5nbGUtYm90dG9tICAgICAgICB7ICY6YmVmb3JlIHsgY29udGVudDogXCJcXGUyNTJcIjsgfSB9XG4uZ2x5cGhpY29uLXRyaWFuZ2xlLXRvcCAgICAgICAgICAgeyAmOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxlMjUzXCI7IH0gfVxuLmdseXBoaWNvbi1jb25zb2xlICAgICAgICAgICAgICAgIHsgJjpiZWZvcmUgeyBjb250ZW50OiBcIlxcZTI1NFwiOyB9IH1cbi5nbHlwaGljb24tc3VwZXJzY3JpcHQgICAgICAgICAgICB7ICY6YmVmb3JlIHsgY29udGVudDogXCJcXGUyNTVcIjsgfSB9XG4uZ2x5cGhpY29uLXN1YnNjcmlwdCAgICAgICAgICAgICAgeyAmOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxlMjU2XCI7IH0gfVxuLmdseXBoaWNvbi1tZW51LWxlZnQgICAgICAgICAgICAgIHsgJjpiZWZvcmUgeyBjb250ZW50OiBcIlxcZTI1N1wiOyB9IH1cbi5nbHlwaGljb24tbWVudS1yaWdodCAgICAgICAgICAgICB7ICY6YmVmb3JlIHsgY29udGVudDogXCJcXGUyNThcIjsgfSB9XG4uZ2x5cGhpY29uLW1lbnUtZG93biAgICAgICAgICAgICAgeyAmOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxlMjU5XCI7IH0gfVxuLmdseXBoaWNvbi1tZW51LXVwICAgICAgICAgICAgICAgIHsgJjpiZWZvcmUgeyBjb250ZW50OiBcIlxcZTI2MFwiOyB9IH1cbiIsIi8vXG4vLyBTY2FmZm9sZGluZ1xuLy8gLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cblxuXG4vLyBSZXNldCB0aGUgYm94LXNpemluZ1xuLy9cbi8vIEhlYWRzIHVwISBUaGlzIHJlc2V0IG1heSBjYXVzZSBjb25mbGljdHMgd2l0aCBzb21lIHRoaXJkLXBhcnR5IHdpZGdldHMuXG4vLyBGb3IgcmVjb21tZW5kYXRpb25zIG9uIHJlc29sdmluZyBzdWNoIGNvbmZsaWN0cywgc2VlXG4vLyBodHRwOi8vZ2V0Ym9vdHN0cmFwLmNvbS9nZXR0aW5nLXN0YXJ0ZWQvI3RoaXJkLWJveC1zaXppbmdcbioge1xuICBAaW5jbHVkZSBib3gtc2l6aW5nKGJvcmRlci1ib3gpO1xufVxuKjpiZWZvcmUsXG4qOmFmdGVyIHtcbiAgQGluY2x1ZGUgYm94LXNpemluZyhib3JkZXItYm94KTtcbn1cblxuXG4vLyBCb2R5IHJlc2V0XG5cbmh0bWwge1xuICBmb250LXNpemU6IDEwcHg7XG4gIC13ZWJraXQtdGFwLWhpZ2hsaWdodC1jb2xvcjogcmdiYSgwLDAsMCwwKTtcbn1cblxuYm9keSB7XG4gIGZvbnQtZmFtaWx5OiAkZm9udC1mYW1pbHktYmFzZTtcbiAgZm9udC1zaXplOiAkZm9udC1zaXplLWJhc2U7XG4gIGxpbmUtaGVpZ2h0OiAkbGluZS1oZWlnaHQtYmFzZTtcbiAgY29sb3I6ICR0ZXh0LWNvbG9yO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAkYm9keS1iZztcbn1cblxuLy8gUmVzZXQgZm9udHMgZm9yIHJlbGV2YW50IGVsZW1lbnRzXG5pbnB1dCxcbmJ1dHRvbixcbnNlbGVjdCxcbnRleHRhcmVhIHtcbiAgZm9udC1mYW1pbHk6IGluaGVyaXQ7XG4gIGZvbnQtc2l6ZTogaW5oZXJpdDtcbiAgbGluZS1oZWlnaHQ6IGluaGVyaXQ7XG59XG5cblxuLy8gTGlua3NcblxuYSB7XG4gIGNvbG9yOiAkbGluay1jb2xvcjtcbiAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuXG4gICY6aG92ZXIsXG4gICY6Zm9jdXMge1xuICAgIGNvbG9yOiAkbGluay1ob3Zlci1jb2xvcjtcbiAgICB0ZXh0LWRlY29yYXRpb246ICRsaW5rLWhvdmVyLWRlY29yYXRpb247XG4gIH1cblxuICAmOmZvY3VzIHtcbiAgICBAaW5jbHVkZSB0YWItZm9jdXM7XG4gIH1cbn1cblxuXG4vLyBGaWd1cmVzXG4vL1xuLy8gV2UgcmVzZXQgdGhpcyBoZXJlIGJlY2F1c2UgcHJldmlvdXNseSBOb3JtYWxpemUgaGFkIG5vIGBmaWd1cmVgIG1hcmdpbnMuIFRoaXNcbi8vIGVuc3VyZXMgd2UgZG9uJ3QgYnJlYWsgYW55b25lJ3MgdXNlIG9mIHRoZSBlbGVtZW50LlxuXG5maWd1cmUge1xuICBtYXJnaW46IDA7XG59XG5cblxuLy8gSW1hZ2VzXG5cbmltZyB7XG4gIHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7XG59XG5cbi8vIFJlc3BvbnNpdmUgaW1hZ2VzIChlbnN1cmUgaW1hZ2VzIGRvbid0IHNjYWxlIGJleW9uZCB0aGVpciBwYXJlbnRzKVxuLmltZy1yZXNwb25zaXZlIHtcbiAgQGluY2x1ZGUgaW1nLXJlc3BvbnNpdmU7XG59XG5cbi8vIFJvdW5kZWQgY29ybmVyc1xuLmltZy1yb3VuZGVkIHtcbiAgYm9yZGVyLXJhZGl1czogJGJvcmRlci1yYWRpdXMtbGFyZ2U7XG59XG5cbi8vIEltYWdlIHRodW1ibmFpbHNcbi8vXG4vLyBIZWFkcyB1cCEgVGhpcyBpcyBtaXhpbi1lZCBpbnRvIHRodW1ibmFpbHMubGVzcyBmb3IgYC50aHVtYm5haWxgLlxuLmltZy10aHVtYm5haWwge1xuICBwYWRkaW5nOiAkdGh1bWJuYWlsLXBhZGRpbmc7XG4gIGxpbmUtaGVpZ2h0OiAkbGluZS1oZWlnaHQtYmFzZTtcbiAgYmFja2dyb3VuZC1jb2xvcjogJHRodW1ibmFpbC1iZztcbiAgYm9yZGVyOiAxcHggc29saWQgJHRodW1ibmFpbC1ib3JkZXI7XG4gIGJvcmRlci1yYWRpdXM6ICR0aHVtYm5haWwtYm9yZGVyLXJhZGl1cztcbiAgQGluY2x1ZGUgdHJhbnNpdGlvbihhbGwgLjJzIGVhc2UtaW4tb3V0KTtcblxuICAvLyBLZWVwIHRoZW0gYXQgbW9zdCAxMDAlIHdpZGVcbiAgQGluY2x1ZGUgaW1nLXJlc3BvbnNpdmUoaW5saW5lLWJsb2NrKTtcbn1cblxuLy8gUGVyZmVjdCBjaXJjbGVcbi5pbWctY2lyY2xlIHtcbiAgYm9yZGVyLXJhZGl1czogNTAlOyAvLyBzZXQgcmFkaXVzIGluIHBlcmNlbnRzXG59XG5cblxuLy8gSG9yaXpvbnRhbCBydWxlc1xuXG5ociB7XG4gIG1hcmdpbi10b3A6ICAgICRsaW5lLWhlaWdodC1jb21wdXRlZDtcbiAgbWFyZ2luLWJvdHRvbTogJGxpbmUtaGVpZ2h0LWNvbXB1dGVkO1xuICBib3JkZXI6IDA7XG4gIGJvcmRlci10b3A6IDFweCBzb2xpZCAkaHItYm9yZGVyO1xufVxuXG5cbi8vIE9ubHkgZGlzcGxheSBjb250ZW50IHRvIHNjcmVlbiByZWFkZXJzXG4vL1xuLy8gU2VlOiBodHRwOi8vYTExeXByb2plY3QuY29tL3Bvc3RzL2hvdy10by1oaWRlLWNvbnRlbnRcblxuLnNyLW9ubHkge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHdpZHRoOiAxcHg7XG4gIGhlaWdodDogMXB4O1xuICBtYXJnaW46IC0xcHg7XG4gIHBhZGRpbmc6IDA7XG4gIG92ZXJmbG93OiBoaWRkZW47XG4gIGNsaXA6IHJlY3QoMCwwLDAsMCk7XG4gIGJvcmRlcjogMDtcbn1cblxuLy8gVXNlIGluIGNvbmp1bmN0aW9uIHdpdGggLnNyLW9ubHkgdG8gb25seSBkaXNwbGF5IGNvbnRlbnQgd2hlbiBpdCdzIGZvY3VzZWQuXG4vLyBVc2VmdWwgZm9yIFwiU2tpcCB0byBtYWluIGNvbnRlbnRcIiBsaW5rczsgc2VlIGh0dHA6Ly93d3cudzMub3JnL1RSLzIwMTMvTk9URS1XQ0FHMjAtVEVDSFMtMjAxMzA5MDUvRzFcbi8vIENyZWRpdDogSFRNTDUgQm9pbGVycGxhdGVcblxuLnNyLW9ubHktZm9jdXNhYmxlIHtcbiAgJjphY3RpdmUsXG4gICY6Zm9jdXMge1xuICAgIHBvc2l0aW9uOiBzdGF0aWM7XG4gICAgd2lkdGg6IGF1dG87XG4gICAgaGVpZ2h0OiBhdXRvO1xuICAgIG1hcmdpbjogMDtcbiAgICBvdmVyZmxvdzogdmlzaWJsZTtcbiAgICBjbGlwOiBhdXRvO1xuICB9XG59XG5cblxuLy8gaU9TIFwiY2xpY2thYmxlIGVsZW1lbnRzXCIgZml4IGZvciByb2xlPVwiYnV0dG9uXCJcbi8vXG4vLyBGaXhlcyBcImNsaWNrYWJpbGl0eVwiIGlzc3VlIChhbmQgbW9yZSBnZW5lcmFsbHksIHRoZSBmaXJpbmcgb2YgZXZlbnRzIHN1Y2ggYXMgZm9jdXMgYXMgd2VsbClcbi8vIGZvciB0cmFkaXRpb25hbGx5IG5vbi1mb2N1c2FibGUgZWxlbWVudHMgd2l0aCByb2xlPVwiYnV0dG9uXCJcbi8vIHNlZSBodHRwczovL2RldmVsb3Blci5tb3ppbGxhLm9yZy9lbi1VUy9kb2NzL1dlYi9FdmVudHMvY2xpY2sjU2FmYXJpX01vYmlsZVxuXG5bcm9sZT1cImJ1dHRvblwiXSB7XG4gIGN1cnNvcjogcG9pbnRlcjtcbn1cbiIsIi8vIFZlbmRvciBQcmVmaXhlc1xuLy9cbi8vIEFsbCB2ZW5kb3IgbWl4aW5zIGFyZSBkZXByZWNhdGVkIGFzIG9mIHYzLjIuMCBkdWUgdG8gdGhlIGludHJvZHVjdGlvbiBvZlxuLy8gQXV0b3ByZWZpeGVyIGluIG91ciBHcnVudGZpbGUuIFRoZXkgaGF2ZSBiZWVuIHJlbW92ZWQgaW4gdjQuXG5cbi8vIC0gQW5pbWF0aW9uc1xuLy8gLSBCYWNrZmFjZSB2aXNpYmlsaXR5XG4vLyAtIEJveCBzaGFkb3dcbi8vIC0gQm94IHNpemluZ1xuLy8gLSBDb250ZW50IGNvbHVtbnNcbi8vIC0gSHlwaGVuc1xuLy8gLSBQbGFjZWhvbGRlciB0ZXh0XG4vLyAtIFRyYW5zZm9ybWF0aW9uc1xuLy8gLSBUcmFuc2l0aW9uc1xuLy8gLSBVc2VyIFNlbGVjdFxuXG5cbi8vIEFuaW1hdGlvbnNcbkBtaXhpbiBhbmltYXRpb24oJGFuaW1hdGlvbikge1xuICAtd2Via2l0LWFuaW1hdGlvbjogJGFuaW1hdGlvbjtcbiAgICAgICAtby1hbmltYXRpb246ICRhbmltYXRpb247XG4gICAgICAgICAgYW5pbWF0aW9uOiAkYW5pbWF0aW9uO1xufVxuQG1peGluIGFuaW1hdGlvbi1uYW1lKCRuYW1lKSB7XG4gIC13ZWJraXQtYW5pbWF0aW9uLW5hbWU6ICRuYW1lO1xuICAgICAgICAgIGFuaW1hdGlvbi1uYW1lOiAkbmFtZTtcbn1cbkBtaXhpbiBhbmltYXRpb24tZHVyYXRpb24oJGR1cmF0aW9uKSB7XG4gIC13ZWJraXQtYW5pbWF0aW9uLWR1cmF0aW9uOiAkZHVyYXRpb247XG4gICAgICAgICAgYW5pbWF0aW9uLWR1cmF0aW9uOiAkZHVyYXRpb247XG59XG5AbWl4aW4gYW5pbWF0aW9uLXRpbWluZy1mdW5jdGlvbigkdGltaW5nLWZ1bmN0aW9uKSB7XG4gIC13ZWJraXQtYW5pbWF0aW9uLXRpbWluZy1mdW5jdGlvbjogJHRpbWluZy1mdW5jdGlvbjtcbiAgICAgICAgICBhbmltYXRpb24tdGltaW5nLWZ1bmN0aW9uOiAkdGltaW5nLWZ1bmN0aW9uO1xufVxuQG1peGluIGFuaW1hdGlvbi1kZWxheSgkZGVsYXkpIHtcbiAgLXdlYmtpdC1hbmltYXRpb24tZGVsYXk6ICRkZWxheTtcbiAgICAgICAgICBhbmltYXRpb24tZGVsYXk6ICRkZWxheTtcbn1cbkBtaXhpbiBhbmltYXRpb24taXRlcmF0aW9uLWNvdW50KCRpdGVyYXRpb24tY291bnQpIHtcbiAgLXdlYmtpdC1hbmltYXRpb24taXRlcmF0aW9uLWNvdW50OiAkaXRlcmF0aW9uLWNvdW50O1xuICAgICAgICAgIGFuaW1hdGlvbi1pdGVyYXRpb24tY291bnQ6ICRpdGVyYXRpb24tY291bnQ7XG59XG5AbWl4aW4gYW5pbWF0aW9uLWRpcmVjdGlvbigkZGlyZWN0aW9uKSB7XG4gIC13ZWJraXQtYW5pbWF0aW9uLWRpcmVjdGlvbjogJGRpcmVjdGlvbjtcbiAgICAgICAgICBhbmltYXRpb24tZGlyZWN0aW9uOiAkZGlyZWN0aW9uO1xufVxuQG1peGluIGFuaW1hdGlvbi1maWxsLW1vZGUoJGZpbGwtbW9kZSkge1xuICAtd2Via2l0LWFuaW1hdGlvbi1maWxsLW1vZGU6ICRmaWxsLW1vZGU7XG4gICAgICAgICAgYW5pbWF0aW9uLWZpbGwtbW9kZTogJGZpbGwtbW9kZTtcbn1cblxuLy8gQmFja2ZhY2UgdmlzaWJpbGl0eVxuLy8gUHJldmVudCBicm93c2VycyBmcm9tIGZsaWNrZXJpbmcgd2hlbiB1c2luZyBDU1MgM0QgdHJhbnNmb3Jtcy5cbi8vIERlZmF1bHQgdmFsdWUgaXMgYHZpc2libGVgLCBidXQgY2FuIGJlIGNoYW5nZWQgdG8gYGhpZGRlbmBcblxuQG1peGluIGJhY2tmYWNlLXZpc2liaWxpdHkoJHZpc2liaWxpdHkpIHtcbiAgLXdlYmtpdC1iYWNrZmFjZS12aXNpYmlsaXR5OiAkdmlzaWJpbGl0eTtcbiAgICAgLW1vei1iYWNrZmFjZS12aXNpYmlsaXR5OiAkdmlzaWJpbGl0eTtcbiAgICAgICAgICBiYWNrZmFjZS12aXNpYmlsaXR5OiAkdmlzaWJpbGl0eTtcbn1cblxuLy8gRHJvcCBzaGFkb3dzXG4vL1xuLy8gTm90ZTogRGVwcmVjYXRlZCBgLmJveC1zaGFkb3coKWAgYXMgb2YgdjMuMS4wIHNpbmNlIGFsbCBvZiBCb290c3RyYXAnc1xuLy8gc3VwcG9ydGVkIGJyb3dzZXJzIHRoYXQgaGF2ZSBib3ggc2hhZG93IGNhcGFiaWxpdGllcyBub3cgc3VwcG9ydCBpdC5cblxuQG1peGluIGJveC1zaGFkb3coJHNoYWRvdy4uLikge1xuICAtd2Via2l0LWJveC1zaGFkb3c6ICRzaGFkb3c7IC8vIGlPUyA8NC4zICYgQW5kcm9pZCA8NC4xXG4gICAgICAgICAgYm94LXNoYWRvdzogJHNoYWRvdztcbn1cblxuLy8gQm94IHNpemluZ1xuQG1peGluIGJveC1zaXppbmcoJGJveG1vZGVsKSB7XG4gIC13ZWJraXQtYm94LXNpemluZzogJGJveG1vZGVsO1xuICAgICAtbW96LWJveC1zaXppbmc6ICRib3htb2RlbDtcbiAgICAgICAgICBib3gtc2l6aW5nOiAkYm94bW9kZWw7XG59XG5cbi8vIENTUzMgQ29udGVudCBDb2x1bW5zXG5AbWl4aW4gY29udGVudC1jb2x1bW5zKCRjb2x1bW4tY291bnQsICRjb2x1bW4tZ2FwOiAkZ3JpZC1ndXR0ZXItd2lkdGgpIHtcbiAgLXdlYmtpdC1jb2x1bW4tY291bnQ6ICRjb2x1bW4tY291bnQ7XG4gICAgIC1tb3otY29sdW1uLWNvdW50OiAkY29sdW1uLWNvdW50O1xuICAgICAgICAgIGNvbHVtbi1jb3VudDogJGNvbHVtbi1jb3VudDtcbiAgLXdlYmtpdC1jb2x1bW4tZ2FwOiAkY29sdW1uLWdhcDtcbiAgICAgLW1vei1jb2x1bW4tZ2FwOiAkY29sdW1uLWdhcDtcbiAgICAgICAgICBjb2x1bW4tZ2FwOiAkY29sdW1uLWdhcDtcbn1cblxuLy8gT3B0aW9uYWwgaHlwaGVuYXRpb25cbkBtaXhpbiBoeXBoZW5zKCRtb2RlOiBhdXRvKSB7XG4gIHdvcmQtd3JhcDogYnJlYWstd29yZDtcbiAgLXdlYmtpdC1oeXBoZW5zOiAkbW9kZTtcbiAgICAgLW1vei1oeXBoZW5zOiAkbW9kZTtcbiAgICAgIC1tcy1oeXBoZW5zOiAkbW9kZTsgLy8gSUUxMCtcbiAgICAgICAtby1oeXBoZW5zOiAkbW9kZTtcbiAgICAgICAgICBoeXBoZW5zOiAkbW9kZTtcbn1cblxuLy8gUGxhY2Vob2xkZXIgdGV4dFxuQG1peGluIHBsYWNlaG9sZGVyKCRjb2xvcjogJGlucHV0LWNvbG9yLXBsYWNlaG9sZGVyKSB7XG4gIC8vIEZpcmVmb3hcbiAgJjo6LW1vei1wbGFjZWhvbGRlciB7XG4gICAgY29sb3I6ICRjb2xvcjtcbiAgICBvcGFjaXR5OiAxOyAvLyBPdmVycmlkZSBGaXJlZm94J3MgdW51c3VhbCBkZWZhdWx0IG9wYWNpdHk7IHNlZSBodHRwczovL2dpdGh1Yi5jb20vdHdicy9ib290c3RyYXAvcHVsbC8xMTUyNlxuICB9XG4gICY6LW1zLWlucHV0LXBsYWNlaG9sZGVyIHsgY29sb3I6ICRjb2xvcjsgfSAvLyBJbnRlcm5ldCBFeHBsb3JlciAxMCtcbiAgJjo6LXdlYmtpdC1pbnB1dC1wbGFjZWhvbGRlciAgeyBjb2xvcjogJGNvbG9yOyB9IC8vIFNhZmFyaSBhbmQgQ2hyb21lXG59XG5cbi8vIFRyYW5zZm9ybWF0aW9uc1xuQG1peGluIHNjYWxlKCRyYXRpby4uLikge1xuICAtd2Via2l0LXRyYW5zZm9ybTogc2NhbGUoJHJhdGlvKTtcbiAgICAgIC1tcy10cmFuc2Zvcm06IHNjYWxlKCRyYXRpbyk7IC8vIElFOSBvbmx5XG4gICAgICAgLW8tdHJhbnNmb3JtOiBzY2FsZSgkcmF0aW8pO1xuICAgICAgICAgIHRyYW5zZm9ybTogc2NhbGUoJHJhdGlvKTtcbn1cblxuQG1peGluIHNjYWxlWCgkcmF0aW8pIHtcbiAgLXdlYmtpdC10cmFuc2Zvcm06IHNjYWxlWCgkcmF0aW8pO1xuICAgICAgLW1zLXRyYW5zZm9ybTogc2NhbGVYKCRyYXRpbyk7IC8vIElFOSBvbmx5XG4gICAgICAgLW8tdHJhbnNmb3JtOiBzY2FsZVgoJHJhdGlvKTtcbiAgICAgICAgICB0cmFuc2Zvcm06IHNjYWxlWCgkcmF0aW8pO1xufVxuQG1peGluIHNjYWxlWSgkcmF0aW8pIHtcbiAgLXdlYmtpdC10cmFuc2Zvcm06IHNjYWxlWSgkcmF0aW8pO1xuICAgICAgLW1zLXRyYW5zZm9ybTogc2NhbGVZKCRyYXRpbyk7IC8vIElFOSBvbmx5XG4gICAgICAgLW8tdHJhbnNmb3JtOiBzY2FsZVkoJHJhdGlvKTtcbiAgICAgICAgICB0cmFuc2Zvcm06IHNjYWxlWSgkcmF0aW8pO1xufVxuQG1peGluIHNrZXcoJHgsICR5KSB7XG4gIC13ZWJraXQtdHJhbnNmb3JtOiBza2V3WCgkeCkgc2tld1koJHkpO1xuICAgICAgLW1zLXRyYW5zZm9ybTogc2tld1goJHgpIHNrZXdZKCR5KTsgLy8gU2VlIGh0dHBzOi8vZ2l0aHViLmNvbS90d2JzL2Jvb3RzdHJhcC9pc3N1ZXMvNDg4NTsgSUU5K1xuICAgICAgIC1vLXRyYW5zZm9ybTogc2tld1goJHgpIHNrZXdZKCR5KTtcbiAgICAgICAgICB0cmFuc2Zvcm06IHNrZXdYKCR4KSBza2V3WSgkeSk7XG59XG5AbWl4aW4gdHJhbnNsYXRlKCR4LCAkeSkge1xuICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlKCR4LCAkeSk7XG4gICAgICAtbXMtdHJhbnNmb3JtOiB0cmFuc2xhdGUoJHgsICR5KTsgLy8gSUU5IG9ubHlcbiAgICAgICAtby10cmFuc2Zvcm06IHRyYW5zbGF0ZSgkeCwgJHkpO1xuICAgICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlKCR4LCAkeSk7XG59XG5AbWl4aW4gdHJhbnNsYXRlM2QoJHgsICR5LCAkeikge1xuICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlM2QoJHgsICR5LCAkeik7XG4gICAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgkeCwgJHksICR6KTtcbn1cbkBtaXhpbiByb3RhdGUoJGRlZ3JlZXMpIHtcbiAgLXdlYmtpdC10cmFuc2Zvcm06IHJvdGF0ZSgkZGVncmVlcyk7XG4gICAgICAtbXMtdHJhbnNmb3JtOiByb3RhdGUoJGRlZ3JlZXMpOyAvLyBJRTkgb25seVxuICAgICAgIC1vLXRyYW5zZm9ybTogcm90YXRlKCRkZWdyZWVzKTtcbiAgICAgICAgICB0cmFuc2Zvcm06IHJvdGF0ZSgkZGVncmVlcyk7XG59XG5AbWl4aW4gcm90YXRlWCgkZGVncmVlcykge1xuICAtd2Via2l0LXRyYW5zZm9ybTogcm90YXRlWCgkZGVncmVlcyk7XG4gICAgICAtbXMtdHJhbnNmb3JtOiByb3RhdGVYKCRkZWdyZWVzKTsgLy8gSUU5IG9ubHlcbiAgICAgICAtby10cmFuc2Zvcm06IHJvdGF0ZVgoJGRlZ3JlZXMpO1xuICAgICAgICAgIHRyYW5zZm9ybTogcm90YXRlWCgkZGVncmVlcyk7XG59XG5AbWl4aW4gcm90YXRlWSgkZGVncmVlcykge1xuICAtd2Via2l0LXRyYW5zZm9ybTogcm90YXRlWSgkZGVncmVlcyk7XG4gICAgICAtbXMtdHJhbnNmb3JtOiByb3RhdGVZKCRkZWdyZWVzKTsgLy8gSUU5IG9ubHlcbiAgICAgICAtby10cmFuc2Zvcm06IHJvdGF0ZVkoJGRlZ3JlZXMpO1xuICAgICAgICAgIHRyYW5zZm9ybTogcm90YXRlWSgkZGVncmVlcyk7XG59XG5AbWl4aW4gcGVyc3BlY3RpdmUoJHBlcnNwZWN0aXZlKSB7XG4gIC13ZWJraXQtcGVyc3BlY3RpdmU6ICRwZXJzcGVjdGl2ZTtcbiAgICAgLW1vei1wZXJzcGVjdGl2ZTogJHBlcnNwZWN0aXZlO1xuICAgICAgICAgIHBlcnNwZWN0aXZlOiAkcGVyc3BlY3RpdmU7XG59XG5AbWl4aW4gcGVyc3BlY3RpdmUtb3JpZ2luKCRwZXJzcGVjdGl2ZSkge1xuICAtd2Via2l0LXBlcnNwZWN0aXZlLW9yaWdpbjogJHBlcnNwZWN0aXZlO1xuICAgICAtbW96LXBlcnNwZWN0aXZlLW9yaWdpbjogJHBlcnNwZWN0aXZlO1xuICAgICAgICAgIHBlcnNwZWN0aXZlLW9yaWdpbjogJHBlcnNwZWN0aXZlO1xufVxuQG1peGluIHRyYW5zZm9ybS1vcmlnaW4oJG9yaWdpbikge1xuICAtd2Via2l0LXRyYW5zZm9ybS1vcmlnaW46ICRvcmlnaW47XG4gICAgIC1tb3otdHJhbnNmb3JtLW9yaWdpbjogJG9yaWdpbjtcbiAgICAgIC1tcy10cmFuc2Zvcm0tb3JpZ2luOiAkb3JpZ2luOyAvLyBJRTkgb25seVxuICAgICAgICAgIHRyYW5zZm9ybS1vcmlnaW46ICRvcmlnaW47XG59XG5cblxuLy8gVHJhbnNpdGlvbnNcblxuQG1peGluIHRyYW5zaXRpb24oJHRyYW5zaXRpb24uLi4pIHtcbiAgLXdlYmtpdC10cmFuc2l0aW9uOiAkdHJhbnNpdGlvbjtcbiAgICAgICAtby10cmFuc2l0aW9uOiAkdHJhbnNpdGlvbjtcbiAgICAgICAgICB0cmFuc2l0aW9uOiAkdHJhbnNpdGlvbjtcbn1cbkBtaXhpbiB0cmFuc2l0aW9uLXByb3BlcnR5KCR0cmFuc2l0aW9uLXByb3BlcnR5Li4uKSB7XG4gIC13ZWJraXQtdHJhbnNpdGlvbi1wcm9wZXJ0eTogJHRyYW5zaXRpb24tcHJvcGVydHk7XG4gICAgICAgICAgdHJhbnNpdGlvbi1wcm9wZXJ0eTogJHRyYW5zaXRpb24tcHJvcGVydHk7XG59XG5AbWl4aW4gdHJhbnNpdGlvbi1kZWxheSgkdHJhbnNpdGlvbi1kZWxheSkge1xuICAtd2Via2l0LXRyYW5zaXRpb24tZGVsYXk6ICR0cmFuc2l0aW9uLWRlbGF5O1xuICAgICAgICAgIHRyYW5zaXRpb24tZGVsYXk6ICR0cmFuc2l0aW9uLWRlbGF5O1xufVxuQG1peGluIHRyYW5zaXRpb24tZHVyYXRpb24oJHRyYW5zaXRpb24tZHVyYXRpb24uLi4pIHtcbiAgLXdlYmtpdC10cmFuc2l0aW9uLWR1cmF0aW9uOiAkdHJhbnNpdGlvbi1kdXJhdGlvbjtcbiAgICAgICAgICB0cmFuc2l0aW9uLWR1cmF0aW9uOiAkdHJhbnNpdGlvbi1kdXJhdGlvbjtcbn1cbkBtaXhpbiB0cmFuc2l0aW9uLXRpbWluZy1mdW5jdGlvbigkdGltaW5nLWZ1bmN0aW9uKSB7XG4gIC13ZWJraXQtdHJhbnNpdGlvbi10aW1pbmctZnVuY3Rpb246ICR0aW1pbmctZnVuY3Rpb247XG4gICAgICAgICAgdHJhbnNpdGlvbi10aW1pbmctZnVuY3Rpb246ICR0aW1pbmctZnVuY3Rpb247XG59XG5AbWl4aW4gdHJhbnNpdGlvbi10cmFuc2Zvcm0oJHRyYW5zaXRpb24uLi4pIHtcbiAgLXdlYmtpdC10cmFuc2l0aW9uOiAtd2Via2l0LXRyYW5zZm9ybSAkdHJhbnNpdGlvbjtcbiAgICAgLW1vei10cmFuc2l0aW9uOiAtbW96LXRyYW5zZm9ybSAkdHJhbnNpdGlvbjtcbiAgICAgICAtby10cmFuc2l0aW9uOiAtby10cmFuc2Zvcm0gJHRyYW5zaXRpb247XG4gICAgICAgICAgdHJhbnNpdGlvbjogdHJhbnNmb3JtICR0cmFuc2l0aW9uO1xufVxuXG5cbi8vIFVzZXIgc2VsZWN0XG4vLyBGb3Igc2VsZWN0aW5nIHRleHQgb24gdGhlIHBhZ2VcblxuQG1peGluIHVzZXItc2VsZWN0KCRzZWxlY3QpIHtcbiAgLXdlYmtpdC11c2VyLXNlbGVjdDogJHNlbGVjdDtcbiAgICAgLW1vei11c2VyLXNlbGVjdDogJHNlbGVjdDtcbiAgICAgIC1tcy11c2VyLXNlbGVjdDogJHNlbGVjdDsgLy8gSUUxMCtcbiAgICAgICAgICB1c2VyLXNlbGVjdDogJHNlbGVjdDtcbn1cbiIsIiRib290c3RyYXAtc2Fzcy1hc3NldC1oZWxwZXI6IGZhbHNlICFkZWZhdWx0O1xuLy9cbi8vIFZhcmlhYmxlc1xuLy8gLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cblxuXG4vLz09IENvbG9yc1xuLy9cbi8vIyMgR3JheSBhbmQgYnJhbmQgY29sb3JzIGZvciB1c2UgYWNyb3NzIEJvb3RzdHJhcC5cblxuJGdyYXktYmFzZTogICAgICAgICAgICAgICMwMDAgIWRlZmF1bHQ7XG4kZ3JheS1kYXJrZXI6ICAgICAgICAgICAgbGlnaHRlbigkZ3JheS1iYXNlLCAxMy41JSkgIWRlZmF1bHQ7IC8vICMyMjJcbiRncmF5LWRhcms6ICAgICAgICAgICAgICBsaWdodGVuKCRncmF5LWJhc2UsIDIwJSkgIWRlZmF1bHQ7ICAgLy8gIzMzM1xuJGdyYXk6ICAgICAgICAgICAgICAgICAgIGxpZ2h0ZW4oJGdyYXktYmFzZSwgMzMuNSUpICFkZWZhdWx0OyAvLyAjNTU1XG4kZ3JheS1saWdodDogICAgICAgICAgICAgbGlnaHRlbigkZ3JheS1iYXNlLCA0Ni43JSkgIWRlZmF1bHQ7IC8vICM3NzdcbiRncmF5LWxpZ2h0ZXI6ICAgICAgICAgICBsaWdodGVuKCRncmF5LWJhc2UsIDkzLjUlKSAhZGVmYXVsdDsgLy8gI2VlZVxuXG4kYnJhbmQtcHJpbWFyeTogICAgICAgICBkYXJrZW4oIzQyOGJjYSwgNi41JSkgIWRlZmF1bHQ7IC8vICMzMzdhYjdcbiRicmFuZC1zdWNjZXNzOiAgICAgICAgICM1Y2I4NWMgIWRlZmF1bHQ7XG4kYnJhbmQtaW5mbzogICAgICAgICAgICAjNWJjMGRlICFkZWZhdWx0O1xuJGJyYW5kLXdhcm5pbmc6ICAgICAgICAgI2YwYWQ0ZSAhZGVmYXVsdDtcbiRicmFuZC1kYW5nZXI6ICAgICAgICAgICNkOTUzNGYgIWRlZmF1bHQ7XG5cblxuLy89PSBTY2FmZm9sZGluZ1xuLy9cbi8vIyMgU2V0dGluZ3MgZm9yIHNvbWUgb2YgdGhlIG1vc3QgZ2xvYmFsIHN0eWxlcy5cblxuLy8qKiBCYWNrZ3JvdW5kIGNvbG9yIGZvciBgPGJvZHk+YC5cbiRib2R5LWJnOiAgICAgICAgICAgICAgICNmZmYgIWRlZmF1bHQ7XG4vLyoqIEdsb2JhbCB0ZXh0IGNvbG9yIG9uIGA8Ym9keT5gLlxuJHRleHQtY29sb3I6ICAgICAgICAgICAgJGdyYXktZGFyayAhZGVmYXVsdDtcblxuLy8qKiBHbG9iYWwgdGV4dHVhbCBsaW5rIGNvbG9yLlxuJGxpbmstY29sb3I6ICAgICAgICAgICAgJGJyYW5kLXByaW1hcnkgIWRlZmF1bHQ7XG4vLyoqIExpbmsgaG92ZXIgY29sb3Igc2V0IHZpYSBgZGFya2VuKClgIGZ1bmN0aW9uLlxuJGxpbmstaG92ZXItY29sb3I6ICAgICAgZGFya2VuKCRsaW5rLWNvbG9yLCAxNSUpICFkZWZhdWx0O1xuLy8qKiBMaW5rIGhvdmVyIGRlY29yYXRpb24uXG4kbGluay1ob3Zlci1kZWNvcmF0aW9uOiB1bmRlcmxpbmUgIWRlZmF1bHQ7XG5cblxuLy89PSBUeXBvZ3JhcGh5XG4vL1xuLy8jIyBGb250LCBsaW5lLWhlaWdodCwgYW5kIGNvbG9yIGZvciBib2R5IHRleHQsIGhlYWRpbmdzLCBhbmQgbW9yZS5cblxuJGZvbnQtZmFtaWx5LXNhbnMtc2VyaWY6ICBcIkhlbHZldGljYSBOZXVlXCIsIEhlbHZldGljYSwgQXJpYWwsIHNhbnMtc2VyaWYgIWRlZmF1bHQ7XG4kZm9udC1mYW1pbHktc2VyaWY6ICAgICAgIEdlb3JnaWEsIFwiVGltZXMgTmV3IFJvbWFuXCIsIFRpbWVzLCBzZXJpZiAhZGVmYXVsdDtcbi8vKiogRGVmYXVsdCBtb25vc3BhY2UgZm9udHMgZm9yIGA8Y29kZT5gLCBgPGtiZD5gLCBhbmQgYDxwcmU+YC5cbiRmb250LWZhbWlseS1tb25vc3BhY2U6ICAgTWVubG8sIE1vbmFjbywgQ29uc29sYXMsIFwiQ291cmllciBOZXdcIiwgbW9ub3NwYWNlICFkZWZhdWx0O1xuJGZvbnQtZmFtaWx5LWJhc2U6ICAgICAgICAkZm9udC1mYW1pbHktc2Fucy1zZXJpZiAhZGVmYXVsdDtcblxuJGZvbnQtc2l6ZS1iYXNlOiAgICAgICAgICAxNHB4ICFkZWZhdWx0O1xuJGZvbnQtc2l6ZS1sYXJnZTogICAgICAgICBjZWlsKCgkZm9udC1zaXplLWJhc2UgKiAxLjI1KSkgIWRlZmF1bHQ7IC8vIH4xOHB4XG4kZm9udC1zaXplLXNtYWxsOiAgICAgICAgIGNlaWwoKCRmb250LXNpemUtYmFzZSAqIDAuODUpKSAhZGVmYXVsdDsgLy8gfjEycHhcblxuJGZvbnQtc2l6ZS1oMTogICAgICAgICAgICBmbG9vcigoJGZvbnQtc2l6ZS1iYXNlICogMi42KSkgIWRlZmF1bHQ7IC8vIH4zNnB4XG4kZm9udC1zaXplLWgyOiAgICAgICAgICAgIGZsb29yKCgkZm9udC1zaXplLWJhc2UgKiAyLjE1KSkgIWRlZmF1bHQ7IC8vIH4zMHB4XG4kZm9udC1zaXplLWgzOiAgICAgICAgICAgIGNlaWwoKCRmb250LXNpemUtYmFzZSAqIDEuNykpICFkZWZhdWx0OyAvLyB+MjRweFxuJGZvbnQtc2l6ZS1oNDogICAgICAgICAgICBjZWlsKCgkZm9udC1zaXplLWJhc2UgKiAxLjI1KSkgIWRlZmF1bHQ7IC8vIH4xOHB4XG4kZm9udC1zaXplLWg1OiAgICAgICAgICAgICRmb250LXNpemUtYmFzZSAhZGVmYXVsdDtcbiRmb250LXNpemUtaDY6ICAgICAgICAgICAgY2VpbCgoJGZvbnQtc2l6ZS1iYXNlICogMC44NSkpICFkZWZhdWx0OyAvLyB+MTJweFxuXG4vLyoqIFVuaXQtbGVzcyBgbGluZS1oZWlnaHRgIGZvciB1c2UgaW4gY29tcG9uZW50cyBsaWtlIGJ1dHRvbnMuXG4kbGluZS1oZWlnaHQtYmFzZTogICAgICAgIDEuNDI4NTcxNDI5ICFkZWZhdWx0OyAvLyAyMC8xNFxuLy8qKiBDb21wdXRlZCBcImxpbmUtaGVpZ2h0XCIgKGBmb250LXNpemVgICogYGxpbmUtaGVpZ2h0YCkgZm9yIHVzZSB3aXRoIGBtYXJnaW5gLCBgcGFkZGluZ2AsIGV0Yy5cbiRsaW5lLWhlaWdodC1jb21wdXRlZDogICAgZmxvb3IoKCRmb250LXNpemUtYmFzZSAqICRsaW5lLWhlaWdodC1iYXNlKSkgIWRlZmF1bHQ7IC8vIH4yMHB4XG5cbi8vKiogQnkgZGVmYXVsdCwgdGhpcyBpbmhlcml0cyBmcm9tIHRoZSBgPGJvZHk+YC5cbiRoZWFkaW5ncy1mb250LWZhbWlseTogICAgaW5oZXJpdCAhZGVmYXVsdDtcbiRoZWFkaW5ncy1mb250LXdlaWdodDogICAgNTAwICFkZWZhdWx0O1xuJGhlYWRpbmdzLWxpbmUtaGVpZ2h0OiAgICAxLjEgIWRlZmF1bHQ7XG4kaGVhZGluZ3MtY29sb3I6ICAgICAgICAgIGluaGVyaXQgIWRlZmF1bHQ7XG5cblxuLy89PSBJY29ub2dyYXBoeVxuLy9cbi8vIyMgU3BlY2lmeSBjdXN0b20gbG9jYXRpb24gYW5kIGZpbGVuYW1lIG9mIHRoZSBpbmNsdWRlZCBHbHlwaGljb25zIGljb24gZm9udC4gVXNlZnVsIGZvciB0aG9zZSBpbmNsdWRpbmcgQm9vdHN0cmFwIHZpYSBCb3dlci5cblxuLy8qKiBMb2FkIGZvbnRzIGZyb20gdGhpcyBkaXJlY3RvcnkuXG5cbi8vIFtjb252ZXJ0ZXJdIElmICRib290c3RyYXAtc2Fzcy1hc3NldC1oZWxwZXIgaWYgdXNlZCwgcHJvdmlkZSBwYXRoIHJlbGF0aXZlIHRvIHRoZSBhc3NldHMgbG9hZCBwYXRoLlxuLy8gW2NvbnZlcnRlcl0gVGhpcyBpcyBiZWNhdXNlIHNvbWUgYXNzZXQgaGVscGVycywgc3VjaCBhcyBTcHJvY2tldHMsIGRvIG5vdCB3b3JrIHdpdGggZmlsZS1yZWxhdGl2ZSBwYXRocy5cbiRpY29uLWZvbnQtcGF0aDogaWYoJGJvb3RzdHJhcC1zYXNzLWFzc2V0LWhlbHBlciwgXCJib290c3RyYXAvXCIsIFwiLi4vZm9udHMvYm9vdHN0cmFwL1wiKSAhZGVmYXVsdDtcblxuLy8qKiBGaWxlIG5hbWUgZm9yIGFsbCBmb250IGZpbGVzLlxuJGljb24tZm9udC1uYW1lOiAgICAgICAgICBcImdseXBoaWNvbnMtaGFsZmxpbmdzLXJlZ3VsYXJcIiAhZGVmYXVsdDtcbi8vKiogRWxlbWVudCBJRCB3aXRoaW4gU1ZHIGljb24gZmlsZS5cbiRpY29uLWZvbnQtc3ZnLWlkOiAgICAgICAgXCJnbHlwaGljb25zX2hhbGZsaW5nc3JlZ3VsYXJcIiAhZGVmYXVsdDtcblxuXG4vLz09IENvbXBvbmVudHNcbi8vXG4vLyMjIERlZmluZSBjb21tb24gcGFkZGluZyBhbmQgYm9yZGVyIHJhZGl1cyBzaXplcyBhbmQgbW9yZS4gVmFsdWVzIGJhc2VkIG9uIDE0cHggdGV4dCBhbmQgMS40MjggbGluZS1oZWlnaHQgKH4yMHB4IHRvIHN0YXJ0KS5cblxuJHBhZGRpbmctYmFzZS12ZXJ0aWNhbDogICAgIDZweCAhZGVmYXVsdDtcbiRwYWRkaW5nLWJhc2UtaG9yaXpvbnRhbDogICAxMnB4ICFkZWZhdWx0O1xuXG4kcGFkZGluZy1sYXJnZS12ZXJ0aWNhbDogICAgMTBweCAhZGVmYXVsdDtcbiRwYWRkaW5nLWxhcmdlLWhvcml6b250YWw6ICAxNnB4ICFkZWZhdWx0O1xuXG4kcGFkZGluZy1zbWFsbC12ZXJ0aWNhbDogICAgNXB4ICFkZWZhdWx0O1xuJHBhZGRpbmctc21hbGwtaG9yaXpvbnRhbDogIDEwcHggIWRlZmF1bHQ7XG5cbiRwYWRkaW5nLXhzLXZlcnRpY2FsOiAgICAgICAxcHggIWRlZmF1bHQ7XG4kcGFkZGluZy14cy1ob3Jpem9udGFsOiAgICAgNXB4ICFkZWZhdWx0O1xuXG4kbGluZS1oZWlnaHQtbGFyZ2U6ICAgICAgICAgMS4zMzMzMzMzICFkZWZhdWx0OyAvLyBleHRyYSBkZWNpbWFscyBmb3IgV2luIDguMSBDaHJvbWVcbiRsaW5lLWhlaWdodC1zbWFsbDogICAgICAgICAxLjUgIWRlZmF1bHQ7XG5cbiRib3JkZXItcmFkaXVzLWJhc2U6ICAgICAgICA0cHggIWRlZmF1bHQ7XG4kYm9yZGVyLXJhZGl1cy1sYXJnZTogICAgICAgNnB4ICFkZWZhdWx0O1xuJGJvcmRlci1yYWRpdXMtc21hbGw6ICAgICAgIDNweCAhZGVmYXVsdDtcblxuLy8qKiBHbG9iYWwgY29sb3IgZm9yIGFjdGl2ZSBpdGVtcyAoZS5nLiwgbmF2cyBvciBkcm9wZG93bnMpLlxuJGNvbXBvbmVudC1hY3RpdmUtY29sb3I6ICAgICNmZmYgIWRlZmF1bHQ7XG4vLyoqIEdsb2JhbCBiYWNrZ3JvdW5kIGNvbG9yIGZvciBhY3RpdmUgaXRlbXMgKGUuZy4sIG5hdnMgb3IgZHJvcGRvd25zKS5cbiRjb21wb25lbnQtYWN0aXZlLWJnOiAgICAgICAkYnJhbmQtcHJpbWFyeSAhZGVmYXVsdDtcblxuLy8qKiBXaWR0aCBvZiB0aGUgYGJvcmRlcmAgZm9yIGdlbmVyYXRpbmcgY2FyZXRzIHRoYXQgaW5kaWNhdGUgZHJvcGRvd25zLlxuJGNhcmV0LXdpZHRoLWJhc2U6ICAgICAgICAgIDRweCAhZGVmYXVsdDtcbi8vKiogQ2FyZXRzIGluY3JlYXNlIHNsaWdodGx5IGluIHNpemUgZm9yIGxhcmdlciBjb21wb25lbnRzLlxuJGNhcmV0LXdpZHRoLWxhcmdlOiAgICAgICAgIDVweCAhZGVmYXVsdDtcblxuXG4vLz09IFRhYmxlc1xuLy9cbi8vIyMgQ3VzdG9taXplcyB0aGUgYC50YWJsZWAgY29tcG9uZW50IHdpdGggYmFzaWMgdmFsdWVzLCBlYWNoIHVzZWQgYWNyb3NzIGFsbCB0YWJsZSB2YXJpYXRpb25zLlxuXG4vLyoqIFBhZGRpbmcgZm9yIGA8dGg+YHMgYW5kIGA8dGQ+YHMuXG4kdGFibGUtY2VsbC1wYWRkaW5nOiAgICAgICAgICAgIDhweCAhZGVmYXVsdDtcbi8vKiogUGFkZGluZyBmb3IgY2VsbHMgaW4gYC50YWJsZS1jb25kZW5zZWRgLlxuJHRhYmxlLWNvbmRlbnNlZC1jZWxsLXBhZGRpbmc6ICA1cHggIWRlZmF1bHQ7XG5cbi8vKiogRGVmYXVsdCBiYWNrZ3JvdW5kIGNvbG9yIHVzZWQgZm9yIGFsbCB0YWJsZXMuXG4kdGFibGUtYmc6ICAgICAgICAgICAgICAgICAgICAgIHRyYW5zcGFyZW50ICFkZWZhdWx0O1xuLy8qKiBCYWNrZ3JvdW5kIGNvbG9yIHVzZWQgZm9yIGAudGFibGUtc3RyaXBlZGAuXG4kdGFibGUtYmctYWNjZW50OiAgICAgICAgICAgICAgICNmOWY5ZjkgIWRlZmF1bHQ7XG4vLyoqIEJhY2tncm91bmQgY29sb3IgdXNlZCBmb3IgYC50YWJsZS1ob3ZlcmAuXG4kdGFibGUtYmctaG92ZXI6ICAgICAgICAgICAgICAgICNmNWY1ZjUgIWRlZmF1bHQ7XG4kdGFibGUtYmctYWN0aXZlOiAgICAgICAgICAgICAgICR0YWJsZS1iZy1ob3ZlciAhZGVmYXVsdDtcblxuLy8qKiBCb3JkZXIgY29sb3IgZm9yIHRhYmxlIGFuZCBjZWxsIGJvcmRlcnMuXG4kdGFibGUtYm9yZGVyLWNvbG9yOiAgICAgICAgICAgICNkZGQgIWRlZmF1bHQ7XG5cblxuLy89PSBCdXR0b25zXG4vL1xuLy8jIyBGb3IgZWFjaCBvZiBCb290c3RyYXAncyBidXR0b25zLCBkZWZpbmUgdGV4dCwgYmFja2dyb3VuZCBhbmQgYm9yZGVyIGNvbG9yLlxuXG4kYnRuLWZvbnQtd2VpZ2h0OiAgICAgICAgICAgICAgICBub3JtYWwgIWRlZmF1bHQ7XG5cbiRidG4tZGVmYXVsdC1jb2xvcjogICAgICAgICAgICAgICMzMzMgIWRlZmF1bHQ7XG4kYnRuLWRlZmF1bHQtYmc6ICAgICAgICAgICAgICAgICAjZmZmICFkZWZhdWx0O1xuJGJ0bi1kZWZhdWx0LWJvcmRlcjogICAgICAgICAgICAgI2NjYyAhZGVmYXVsdDtcblxuJGJ0bi1wcmltYXJ5LWNvbG9yOiAgICAgICAgICAgICAgI2ZmZiAhZGVmYXVsdDtcbiRidG4tcHJpbWFyeS1iZzogICAgICAgICAgICAgICAgICRicmFuZC1wcmltYXJ5ICFkZWZhdWx0O1xuJGJ0bi1wcmltYXJ5LWJvcmRlcjogICAgICAgICAgICAgZGFya2VuKCRidG4tcHJpbWFyeS1iZywgNSUpICFkZWZhdWx0O1xuXG4kYnRuLXN1Y2Nlc3MtY29sb3I6ICAgICAgICAgICAgICAjZmZmICFkZWZhdWx0O1xuJGJ0bi1zdWNjZXNzLWJnOiAgICAgICAgICAgICAgICAgJGJyYW5kLXN1Y2Nlc3MgIWRlZmF1bHQ7XG4kYnRuLXN1Y2Nlc3MtYm9yZGVyOiAgICAgICAgICAgICBkYXJrZW4oJGJ0bi1zdWNjZXNzLWJnLCA1JSkgIWRlZmF1bHQ7XG5cbiRidG4taW5mby1jb2xvcjogICAgICAgICAgICAgICAgICNmZmYgIWRlZmF1bHQ7XG4kYnRuLWluZm8tYmc6ICAgICAgICAgICAgICAgICAgICAkYnJhbmQtaW5mbyAhZGVmYXVsdDtcbiRidG4taW5mby1ib3JkZXI6ICAgICAgICAgICAgICAgIGRhcmtlbigkYnRuLWluZm8tYmcsIDUlKSAhZGVmYXVsdDtcblxuJGJ0bi13YXJuaW5nLWNvbG9yOiAgICAgICAgICAgICAgI2ZmZiAhZGVmYXVsdDtcbiRidG4td2FybmluZy1iZzogICAgICAgICAgICAgICAgICRicmFuZC13YXJuaW5nICFkZWZhdWx0O1xuJGJ0bi13YXJuaW5nLWJvcmRlcjogICAgICAgICAgICAgZGFya2VuKCRidG4td2FybmluZy1iZywgNSUpICFkZWZhdWx0O1xuXG4kYnRuLWRhbmdlci1jb2xvcjogICAgICAgICAgICAgICAjZmZmICFkZWZhdWx0O1xuJGJ0bi1kYW5nZXItYmc6ICAgICAgICAgICAgICAgICAgJGJyYW5kLWRhbmdlciAhZGVmYXVsdDtcbiRidG4tZGFuZ2VyLWJvcmRlcjogICAgICAgICAgICAgIGRhcmtlbigkYnRuLWRhbmdlci1iZywgNSUpICFkZWZhdWx0O1xuXG4kYnRuLWxpbmstZGlzYWJsZWQtY29sb3I6ICAgICAgICAkZ3JheS1saWdodCAhZGVmYXVsdDtcblxuLy8gQWxsb3dzIGZvciBjdXN0b21pemluZyBidXR0b24gcmFkaXVzIGluZGVwZW5kZW50bHkgZnJvbSBnbG9iYWwgYm9yZGVyIHJhZGl1c1xuJGJ0bi1ib3JkZXItcmFkaXVzLWJhc2U6ICAgICAgICAgJGJvcmRlci1yYWRpdXMtYmFzZSAhZGVmYXVsdDtcbiRidG4tYm9yZGVyLXJhZGl1cy1sYXJnZTogICAgICAgICRib3JkZXItcmFkaXVzLWxhcmdlICFkZWZhdWx0O1xuJGJ0bi1ib3JkZXItcmFkaXVzLXNtYWxsOiAgICAgICAgJGJvcmRlci1yYWRpdXMtc21hbGwgIWRlZmF1bHQ7XG5cblxuLy89PSBGb3Jtc1xuLy9cbi8vIyNcblxuLy8qKiBgPGlucHV0PmAgYmFja2dyb3VuZCBjb2xvclxuJGlucHV0LWJnOiAgICAgICAgICAgICAgICAgICAgICAgI2ZmZiAhZGVmYXVsdDtcbi8vKiogYDxpbnB1dCBkaXNhYmxlZD5gIGJhY2tncm91bmQgY29sb3JcbiRpbnB1dC1iZy1kaXNhYmxlZDogICAgICAgICAgICAgICRncmF5LWxpZ2h0ZXIgIWRlZmF1bHQ7XG5cbi8vKiogVGV4dCBjb2xvciBmb3IgYDxpbnB1dD5gc1xuJGlucHV0LWNvbG9yOiAgICAgICAgICAgICAgICAgICAgJGdyYXkgIWRlZmF1bHQ7XG4vLyoqIGA8aW5wdXQ+YCBib3JkZXIgY29sb3JcbiRpbnB1dC1ib3JkZXI6ICAgICAgICAgICAgICAgICAgICNjY2MgIWRlZmF1bHQ7XG5cbi8vIFRPRE86IFJlbmFtZSBgJGlucHV0LWJvcmRlci1yYWRpdXNgIHRvIGAkaW5wdXQtYm9yZGVyLXJhZGl1cy1iYXNlYCBpbiB2NFxuLy8qKiBEZWZhdWx0IGAuZm9ybS1jb250cm9sYCBib3JkZXIgcmFkaXVzXG4vLyBUaGlzIGhhcyBubyBlZmZlY3Qgb24gYDxzZWxlY3Q+YHMgaW4gc29tZSBicm93c2VycywgZHVlIHRvIHRoZSBsaW1pdGVkIHN0eWxhYmlsaXR5IG9mIGA8c2VsZWN0PmBzIGluIENTUy5cbiRpbnB1dC1ib3JkZXItcmFkaXVzOiAgICAgICAgICAgICRib3JkZXItcmFkaXVzLWJhc2UgIWRlZmF1bHQ7XG4vLyoqIExhcmdlIGAuZm9ybS1jb250cm9sYCBib3JkZXIgcmFkaXVzXG4kaW5wdXQtYm9yZGVyLXJhZGl1cy1sYXJnZTogICAgICAkYm9yZGVyLXJhZGl1cy1sYXJnZSAhZGVmYXVsdDtcbi8vKiogU21hbGwgYC5mb3JtLWNvbnRyb2xgIGJvcmRlciByYWRpdXNcbiRpbnB1dC1ib3JkZXItcmFkaXVzLXNtYWxsOiAgICAgICRib3JkZXItcmFkaXVzLXNtYWxsICFkZWZhdWx0O1xuXG4vLyoqIEJvcmRlciBjb2xvciBmb3IgaW5wdXRzIG9uIGZvY3VzXG4kaW5wdXQtYm9yZGVyLWZvY3VzOiAgICAgICAgICAgICAjNjZhZmU5ICFkZWZhdWx0O1xuXG4vLyoqIFBsYWNlaG9sZGVyIHRleHQgY29sb3JcbiRpbnB1dC1jb2xvci1wbGFjZWhvbGRlcjogICAgICAgICM5OTkgIWRlZmF1bHQ7XG5cbi8vKiogRGVmYXVsdCBgLmZvcm0tY29udHJvbGAgaGVpZ2h0XG4kaW5wdXQtaGVpZ2h0LWJhc2U6ICAgICAgICAgICAgICAoJGxpbmUtaGVpZ2h0LWNvbXB1dGVkICsgKCRwYWRkaW5nLWJhc2UtdmVydGljYWwgKiAyKSArIDIpICFkZWZhdWx0O1xuLy8qKiBMYXJnZSBgLmZvcm0tY29udHJvbGAgaGVpZ2h0XG4kaW5wdXQtaGVpZ2h0LWxhcmdlOiAgICAgICAgICAgICAoY2VpbCgkZm9udC1zaXplLWxhcmdlICogJGxpbmUtaGVpZ2h0LWxhcmdlKSArICgkcGFkZGluZy1sYXJnZS12ZXJ0aWNhbCAqIDIpICsgMikgIWRlZmF1bHQ7XG4vLyoqIFNtYWxsIGAuZm9ybS1jb250cm9sYCBoZWlnaHRcbiRpbnB1dC1oZWlnaHQtc21hbGw6ICAgICAgICAgICAgIChmbG9vcigkZm9udC1zaXplLXNtYWxsICogJGxpbmUtaGVpZ2h0LXNtYWxsKSArICgkcGFkZGluZy1zbWFsbC12ZXJ0aWNhbCAqIDIpICsgMikgIWRlZmF1bHQ7XG5cbi8vKiogYC5mb3JtLWdyb3VwYCBtYXJnaW5cbiRmb3JtLWdyb3VwLW1hcmdpbi1ib3R0b206ICAgICAgIDE1cHggIWRlZmF1bHQ7XG5cbiRsZWdlbmQtY29sb3I6ICAgICAgICAgICAgICAgICAgICRncmF5LWRhcmsgIWRlZmF1bHQ7XG4kbGVnZW5kLWJvcmRlci1jb2xvcjogICAgICAgICAgICAjZTVlNWU1ICFkZWZhdWx0O1xuXG4vLyoqIEJhY2tncm91bmQgY29sb3IgZm9yIHRleHR1YWwgaW5wdXQgYWRkb25zXG4kaW5wdXQtZ3JvdXAtYWRkb24tYmc6ICAgICAgICAgICAkZ3JheS1saWdodGVyICFkZWZhdWx0O1xuLy8qKiBCb3JkZXIgY29sb3IgZm9yIHRleHR1YWwgaW5wdXQgYWRkb25zXG4kaW5wdXQtZ3JvdXAtYWRkb24tYm9yZGVyLWNvbG9yOiAkaW5wdXQtYm9yZGVyICFkZWZhdWx0O1xuXG4vLyoqIERpc2FibGVkIGN1cnNvciBmb3IgZm9ybSBjb250cm9scyBhbmQgYnV0dG9ucy5cbiRjdXJzb3ItZGlzYWJsZWQ6ICAgICAgICAgICAgICAgIG5vdC1hbGxvd2VkICFkZWZhdWx0O1xuXG5cbi8vPT0gRHJvcGRvd25zXG4vL1xuLy8jIyBEcm9wZG93biBtZW51IGNvbnRhaW5lciBhbmQgY29udGVudHMuXG5cbi8vKiogQmFja2dyb3VuZCBmb3IgdGhlIGRyb3Bkb3duIG1lbnUuXG4kZHJvcGRvd24tYmc6ICAgICAgICAgICAgICAgICAgICAjZmZmICFkZWZhdWx0O1xuLy8qKiBEcm9wZG93biBtZW51IGBib3JkZXItY29sb3JgLlxuJGRyb3Bkb3duLWJvcmRlcjogICAgICAgICAgICAgICAgcmdiYSgwLDAsMCwuMTUpICFkZWZhdWx0O1xuLy8qKiBEcm9wZG93biBtZW51IGBib3JkZXItY29sb3JgICoqZm9yIElFOCoqLlxuJGRyb3Bkb3duLWZhbGxiYWNrLWJvcmRlcjogICAgICAgI2NjYyAhZGVmYXVsdDtcbi8vKiogRGl2aWRlciBjb2xvciBmb3IgYmV0d2VlbiBkcm9wZG93biBpdGVtcy5cbiRkcm9wZG93bi1kaXZpZGVyLWJnOiAgICAgICAgICAgICNlNWU1ZTUgIWRlZmF1bHQ7XG5cbi8vKiogRHJvcGRvd24gbGluayB0ZXh0IGNvbG9yLlxuJGRyb3Bkb3duLWxpbmstY29sb3I6ICAgICAgICAgICAgJGdyYXktZGFyayAhZGVmYXVsdDtcbi8vKiogSG92ZXIgY29sb3IgZm9yIGRyb3Bkb3duIGxpbmtzLlxuJGRyb3Bkb3duLWxpbmstaG92ZXItY29sb3I6ICAgICAgZGFya2VuKCRncmF5LWRhcmssIDUlKSAhZGVmYXVsdDtcbi8vKiogSG92ZXIgYmFja2dyb3VuZCBmb3IgZHJvcGRvd24gbGlua3MuXG4kZHJvcGRvd24tbGluay1ob3Zlci1iZzogICAgICAgICAjZjVmNWY1ICFkZWZhdWx0O1xuXG4vLyoqIEFjdGl2ZSBkcm9wZG93biBtZW51IGl0ZW0gdGV4dCBjb2xvci5cbiRkcm9wZG93bi1saW5rLWFjdGl2ZS1jb2xvcjogICAgICRjb21wb25lbnQtYWN0aXZlLWNvbG9yICFkZWZhdWx0O1xuLy8qKiBBY3RpdmUgZHJvcGRvd24gbWVudSBpdGVtIGJhY2tncm91bmQgY29sb3IuXG4kZHJvcGRvd24tbGluay1hY3RpdmUtYmc6ICAgICAgICAkY29tcG9uZW50LWFjdGl2ZS1iZyAhZGVmYXVsdDtcblxuLy8qKiBEaXNhYmxlZCBkcm9wZG93biBtZW51IGl0ZW0gYmFja2dyb3VuZCBjb2xvci5cbiRkcm9wZG93bi1saW5rLWRpc2FibGVkLWNvbG9yOiAgICRncmF5LWxpZ2h0ICFkZWZhdWx0O1xuXG4vLyoqIFRleHQgY29sb3IgZm9yIGhlYWRlcnMgd2l0aGluIGRyb3Bkb3duIG1lbnVzLlxuJGRyb3Bkb3duLWhlYWRlci1jb2xvcjogICAgICAgICAgJGdyYXktbGlnaHQgIWRlZmF1bHQ7XG5cbi8vKiogRGVwcmVjYXRlZCBgJGRyb3Bkb3duLWNhcmV0LWNvbG9yYCBhcyBvZiB2My4xLjBcbiRkcm9wZG93bi1jYXJldC1jb2xvcjogICAgICAgICAgICMwMDAgIWRlZmF1bHQ7XG5cblxuLy8tLSBaLWluZGV4IG1hc3RlciBsaXN0XG4vL1xuLy8gV2FybmluZzogQXZvaWQgY3VzdG9taXppbmcgdGhlc2UgdmFsdWVzLiBUaGV5J3JlIHVzZWQgZm9yIGEgYmlyZCdzIGV5ZSB2aWV3XG4vLyBvZiBjb21wb25lbnRzIGRlcGVuZGVudCBvbiB0aGUgei1heGlzIGFuZCBhcmUgZGVzaWduZWQgdG8gYWxsIHdvcmsgdG9nZXRoZXIuXG4vL1xuLy8gTm90ZTogVGhlc2UgdmFyaWFibGVzIGFyZSBub3QgZ2VuZXJhdGVkIGludG8gdGhlIEN1c3RvbWl6ZXIuXG5cbiR6aW5kZXgtbmF2YmFyOiAgICAgICAgICAgIDEwMDAgIWRlZmF1bHQ7XG4kemluZGV4LWRyb3Bkb3duOiAgICAgICAgICAxMDAwICFkZWZhdWx0O1xuJHppbmRleC1wb3BvdmVyOiAgICAgICAgICAgMTA2MCAhZGVmYXVsdDtcbiR6aW5kZXgtdG9vbHRpcDogICAgICAgICAgIDEwNzAgIWRlZmF1bHQ7XG4kemluZGV4LW5hdmJhci1maXhlZDogICAgICAxMDMwICFkZWZhdWx0O1xuJHppbmRleC1tb2RhbC1iYWNrZ3JvdW5kOiAgMTA0MCAhZGVmYXVsdDtcbiR6aW5kZXgtbW9kYWw6ICAgICAgICAgICAgIDEwNTAgIWRlZmF1bHQ7XG5cblxuLy89PSBNZWRpYSBxdWVyaWVzIGJyZWFrcG9pbnRzXG4vL1xuLy8jIyBEZWZpbmUgdGhlIGJyZWFrcG9pbnRzIGF0IHdoaWNoIHlvdXIgbGF5b3V0IHdpbGwgY2hhbmdlLCBhZGFwdGluZyB0byBkaWZmZXJlbnQgc2NyZWVuIHNpemVzLlxuXG4vLyBFeHRyYSBzbWFsbCBzY3JlZW4gLyBwaG9uZVxuLy8qKiBEZXByZWNhdGVkIGAkc2NyZWVuLXhzYCBhcyBvZiB2My4wLjFcbiRzY3JlZW4teHM6ICAgICAgICAgICAgICAgICAgNDgwcHggIWRlZmF1bHQ7XG4vLyoqIERlcHJlY2F0ZWQgYCRzY3JlZW4teHMtbWluYCBhcyBvZiB2My4yLjBcbiRzY3JlZW4teHMtbWluOiAgICAgICAgICAgICAgJHNjcmVlbi14cyAhZGVmYXVsdDtcbi8vKiogRGVwcmVjYXRlZCBgJHNjcmVlbi1waG9uZWAgYXMgb2YgdjMuMC4xXG4kc2NyZWVuLXBob25lOiAgICAgICAgICAgICAgICRzY3JlZW4teHMtbWluICFkZWZhdWx0O1xuXG4vLyBTbWFsbCBzY3JlZW4gLyB0YWJsZXRcbi8vKiogRGVwcmVjYXRlZCBgJHNjcmVlbi1zbWAgYXMgb2YgdjMuMC4xXG4kc2NyZWVuLXNtOiAgICAgICAgICAgICAgICAgIDc2OHB4ICFkZWZhdWx0O1xuJHNjcmVlbi1zbS1taW46ICAgICAgICAgICAgICAkc2NyZWVuLXNtICFkZWZhdWx0O1xuLy8qKiBEZXByZWNhdGVkIGAkc2NyZWVuLXRhYmxldGAgYXMgb2YgdjMuMC4xXG4kc2NyZWVuLXRhYmxldDogICAgICAgICAgICAgICRzY3JlZW4tc20tbWluICFkZWZhdWx0O1xuXG4vLyBNZWRpdW0gc2NyZWVuIC8gZGVza3RvcFxuLy8qKiBEZXByZWNhdGVkIGAkc2NyZWVuLW1kYCBhcyBvZiB2My4wLjFcbiRzY3JlZW4tbWQ6ICAgICAgICAgICAgICAgICAgOTkycHggIWRlZmF1bHQ7XG4kc2NyZWVuLW1kLW1pbjogICAgICAgICAgICAgICRzY3JlZW4tbWQgIWRlZmF1bHQ7XG4vLyoqIERlcHJlY2F0ZWQgYCRzY3JlZW4tZGVza3RvcGAgYXMgb2YgdjMuMC4xXG4kc2NyZWVuLWRlc2t0b3A6ICAgICAgICAgICAgICRzY3JlZW4tbWQtbWluICFkZWZhdWx0O1xuXG4vLyBMYXJnZSBzY3JlZW4gLyB3aWRlIGRlc2t0b3Bcbi8vKiogRGVwcmVjYXRlZCBgJHNjcmVlbi1sZ2AgYXMgb2YgdjMuMC4xXG4kc2NyZWVuLWxnOiAgICAgICAgICAgICAgICAgIDEyMDBweCAhZGVmYXVsdDtcbiRzY3JlZW4tbGctbWluOiAgICAgICAgICAgICAgJHNjcmVlbi1sZyAhZGVmYXVsdDtcbi8vKiogRGVwcmVjYXRlZCBgJHNjcmVlbi1sZy1kZXNrdG9wYCBhcyBvZiB2My4wLjFcbiRzY3JlZW4tbGctZGVza3RvcDogICAgICAgICAgJHNjcmVlbi1sZy1taW4gIWRlZmF1bHQ7XG5cbi8vIFNvIG1lZGlhIHF1ZXJpZXMgZG9uJ3Qgb3ZlcmxhcCB3aGVuIHJlcXVpcmVkLCBwcm92aWRlIGEgbWF4aW11bVxuJHNjcmVlbi14cy1tYXg6ICAgICAgICAgICAgICAoJHNjcmVlbi1zbS1taW4gLSAxKSAhZGVmYXVsdDtcbiRzY3JlZW4tc20tbWF4OiAgICAgICAgICAgICAgKCRzY3JlZW4tbWQtbWluIC0gMSkgIWRlZmF1bHQ7XG4kc2NyZWVuLW1kLW1heDogICAgICAgICAgICAgICgkc2NyZWVuLWxnLW1pbiAtIDEpICFkZWZhdWx0O1xuXG5cbi8vPT0gR3JpZCBzeXN0ZW1cbi8vXG4vLyMjIERlZmluZSB5b3VyIGN1c3RvbSByZXNwb25zaXZlIGdyaWQuXG5cbi8vKiogTnVtYmVyIG9mIGNvbHVtbnMgaW4gdGhlIGdyaWQuXG4kZ3JpZC1jb2x1bW5zOiAgICAgICAgICAgICAgMTIgIWRlZmF1bHQ7XG4vLyoqIFBhZGRpbmcgYmV0d2VlbiBjb2x1bW5zLiBHZXRzIGRpdmlkZWQgaW4gaGFsZiBmb3IgdGhlIGxlZnQgYW5kIHJpZ2h0LlxuJGdyaWQtZ3V0dGVyLXdpZHRoOiAgICAgICAgIDMwcHggIWRlZmF1bHQ7XG4vLyBOYXZiYXIgY29sbGFwc2Vcbi8vKiogUG9pbnQgYXQgd2hpY2ggdGhlIG5hdmJhciBiZWNvbWVzIHVuY29sbGFwc2VkLlxuJGdyaWQtZmxvYXQtYnJlYWtwb2ludDogICAgICRzY3JlZW4tc20tbWluICFkZWZhdWx0O1xuLy8qKiBQb2ludCBhdCB3aGljaCB0aGUgbmF2YmFyIGJlZ2lucyBjb2xsYXBzaW5nLlxuJGdyaWQtZmxvYXQtYnJlYWtwb2ludC1tYXg6ICgkZ3JpZC1mbG9hdC1icmVha3BvaW50IC0gMSkgIWRlZmF1bHQ7XG5cblxuLy89PSBDb250YWluZXIgc2l6ZXNcbi8vXG4vLyMjIERlZmluZSB0aGUgbWF4aW11bSB3aWR0aCBvZiBgLmNvbnRhaW5lcmAgZm9yIGRpZmZlcmVudCBzY3JlZW4gc2l6ZXMuXG5cbi8vIFNtYWxsIHNjcmVlbiAvIHRhYmxldFxuJGNvbnRhaW5lci10YWJsZXQ6ICAgICAgICAgICAgICg3MjBweCArICRncmlkLWd1dHRlci13aWR0aCkgIWRlZmF1bHQ7XG4vLyoqIEZvciBgJHNjcmVlbi1zbS1taW5gIGFuZCB1cC5cbiRjb250YWluZXItc206ICAgICAgICAgICAgICAgICAkY29udGFpbmVyLXRhYmxldCAhZGVmYXVsdDtcblxuLy8gTWVkaXVtIHNjcmVlbiAvIGRlc2t0b3BcbiRjb250YWluZXItZGVza3RvcDogICAgICAgICAgICAoOTQwcHggKyAkZ3JpZC1ndXR0ZXItd2lkdGgpICFkZWZhdWx0O1xuLy8qKiBGb3IgYCRzY3JlZW4tbWQtbWluYCBhbmQgdXAuXG4kY29udGFpbmVyLW1kOiAgICAgICAgICAgICAgICAgJGNvbnRhaW5lci1kZXNrdG9wICFkZWZhdWx0O1xuXG4vLyBMYXJnZSBzY3JlZW4gLyB3aWRlIGRlc2t0b3BcbiRjb250YWluZXItbGFyZ2UtZGVza3RvcDogICAgICAoMTE0MHB4ICsgJGdyaWQtZ3V0dGVyLXdpZHRoKSAhZGVmYXVsdDtcbi8vKiogRm9yIGAkc2NyZWVuLWxnLW1pbmAgYW5kIHVwLlxuJGNvbnRhaW5lci1sZzogICAgICAgICAgICAgICAgICRjb250YWluZXItbGFyZ2UtZGVza3RvcCAhZGVmYXVsdDtcblxuXG4vLz09IE5hdmJhclxuLy9cbi8vIyNcblxuLy8gQmFzaWNzIG9mIGEgbmF2YmFyXG4kbmF2YmFyLWhlaWdodDogICAgICAgICAgICAgICAgICAgIDUwcHggIWRlZmF1bHQ7XG4kbmF2YmFyLW1hcmdpbi1ib3R0b206ICAgICAgICAgICAgICRsaW5lLWhlaWdodC1jb21wdXRlZCAhZGVmYXVsdDtcbiRuYXZiYXItYm9yZGVyLXJhZGl1czogICAgICAgICAgICAgJGJvcmRlci1yYWRpdXMtYmFzZSAhZGVmYXVsdDtcbiRuYXZiYXItcGFkZGluZy1ob3Jpem9udGFsOiAgICAgICAgZmxvb3IoKCRncmlkLWd1dHRlci13aWR0aCAvIDIpKSAhZGVmYXVsdDtcbiRuYXZiYXItcGFkZGluZy12ZXJ0aWNhbDogICAgICAgICAgKCgkbmF2YmFyLWhlaWdodCAtICRsaW5lLWhlaWdodC1jb21wdXRlZCkgLyAyKSAhZGVmYXVsdDtcbiRuYXZiYXItY29sbGFwc2UtbWF4LWhlaWdodDogICAgICAgMzQwcHggIWRlZmF1bHQ7XG5cbiRuYXZiYXItZGVmYXVsdC1jb2xvcjogICAgICAgICAgICAgIzc3NyAhZGVmYXVsdDtcbiRuYXZiYXItZGVmYXVsdC1iZzogICAgICAgICAgICAgICAgI2Y4ZjhmOCAhZGVmYXVsdDtcbiRuYXZiYXItZGVmYXVsdC1ib3JkZXI6ICAgICAgICAgICAgZGFya2VuKCRuYXZiYXItZGVmYXVsdC1iZywgNi41JSkgIWRlZmF1bHQ7XG5cbi8vIE5hdmJhciBsaW5rc1xuJG5hdmJhci1kZWZhdWx0LWxpbmstY29sb3I6ICAgICAgICAgICAgICAgICM3NzcgIWRlZmF1bHQ7XG4kbmF2YmFyLWRlZmF1bHQtbGluay1ob3Zlci1jb2xvcjogICAgICAgICAgIzMzMyAhZGVmYXVsdDtcbiRuYXZiYXItZGVmYXVsdC1saW5rLWhvdmVyLWJnOiAgICAgICAgICAgICB0cmFuc3BhcmVudCAhZGVmYXVsdDtcbiRuYXZiYXItZGVmYXVsdC1saW5rLWFjdGl2ZS1jb2xvcjogICAgICAgICAjNTU1ICFkZWZhdWx0O1xuJG5hdmJhci1kZWZhdWx0LWxpbmstYWN0aXZlLWJnOiAgICAgICAgICAgIGRhcmtlbigkbmF2YmFyLWRlZmF1bHQtYmcsIDYuNSUpICFkZWZhdWx0O1xuJG5hdmJhci1kZWZhdWx0LWxpbmstZGlzYWJsZWQtY29sb3I6ICAgICAgICNjY2MgIWRlZmF1bHQ7XG4kbmF2YmFyLWRlZmF1bHQtbGluay1kaXNhYmxlZC1iZzogICAgICAgICAgdHJhbnNwYXJlbnQgIWRlZmF1bHQ7XG5cbi8vIE5hdmJhciBicmFuZCBsYWJlbFxuJG5hdmJhci1kZWZhdWx0LWJyYW5kLWNvbG9yOiAgICAgICAgICAgICAgICRuYXZiYXItZGVmYXVsdC1saW5rLWNvbG9yICFkZWZhdWx0O1xuJG5hdmJhci1kZWZhdWx0LWJyYW5kLWhvdmVyLWNvbG9yOiAgICAgICAgIGRhcmtlbigkbmF2YmFyLWRlZmF1bHQtYnJhbmQtY29sb3IsIDEwJSkgIWRlZmF1bHQ7XG4kbmF2YmFyLWRlZmF1bHQtYnJhbmQtaG92ZXItYmc6ICAgICAgICAgICAgdHJhbnNwYXJlbnQgIWRlZmF1bHQ7XG5cbi8vIE5hdmJhciB0b2dnbGVcbiRuYXZiYXItZGVmYXVsdC10b2dnbGUtaG92ZXItYmc6ICAgICAgICAgICAjZGRkICFkZWZhdWx0O1xuJG5hdmJhci1kZWZhdWx0LXRvZ2dsZS1pY29uLWJhci1iZzogICAgICAgICM4ODggIWRlZmF1bHQ7XG4kbmF2YmFyLWRlZmF1bHQtdG9nZ2xlLWJvcmRlci1jb2xvcjogICAgICAgI2RkZCAhZGVmYXVsdDtcblxuXG4vLz09PSBJbnZlcnRlZCBuYXZiYXJcbi8vIFJlc2V0IGludmVydGVkIG5hdmJhciBiYXNpY3NcbiRuYXZiYXItaW52ZXJzZS1jb2xvcjogICAgICAgICAgICAgICAgICAgICAgbGlnaHRlbigkZ3JheS1saWdodCwgMTUlKSAhZGVmYXVsdDtcbiRuYXZiYXItaW52ZXJzZS1iZzogICAgICAgICAgICAgICAgICAgICAgICAgIzIyMiAhZGVmYXVsdDtcbiRuYXZiYXItaW52ZXJzZS1ib3JkZXI6ICAgICAgICAgICAgICAgICAgICAgZGFya2VuKCRuYXZiYXItaW52ZXJzZS1iZywgMTAlKSAhZGVmYXVsdDtcblxuLy8gSW52ZXJ0ZWQgbmF2YmFyIGxpbmtzXG4kbmF2YmFyLWludmVyc2UtbGluay1jb2xvcjogICAgICAgICAgICAgICAgIGxpZ2h0ZW4oJGdyYXktbGlnaHQsIDE1JSkgIWRlZmF1bHQ7XG4kbmF2YmFyLWludmVyc2UtbGluay1ob3Zlci1jb2xvcjogICAgICAgICAgICNmZmYgIWRlZmF1bHQ7XG4kbmF2YmFyLWludmVyc2UtbGluay1ob3Zlci1iZzogICAgICAgICAgICAgIHRyYW5zcGFyZW50ICFkZWZhdWx0O1xuJG5hdmJhci1pbnZlcnNlLWxpbmstYWN0aXZlLWNvbG9yOiAgICAgICAgICAkbmF2YmFyLWludmVyc2UtbGluay1ob3Zlci1jb2xvciAhZGVmYXVsdDtcbiRuYXZiYXItaW52ZXJzZS1saW5rLWFjdGl2ZS1iZzogICAgICAgICAgICAgZGFya2VuKCRuYXZiYXItaW52ZXJzZS1iZywgMTAlKSAhZGVmYXVsdDtcbiRuYXZiYXItaW52ZXJzZS1saW5rLWRpc2FibGVkLWNvbG9yOiAgICAgICAgIzQ0NCAhZGVmYXVsdDtcbiRuYXZiYXItaW52ZXJzZS1saW5rLWRpc2FibGVkLWJnOiAgICAgICAgICAgdHJhbnNwYXJlbnQgIWRlZmF1bHQ7XG5cbi8vIEludmVydGVkIG5hdmJhciBicmFuZCBsYWJlbFxuJG5hdmJhci1pbnZlcnNlLWJyYW5kLWNvbG9yOiAgICAgICAgICAgICAgICAkbmF2YmFyLWludmVyc2UtbGluay1jb2xvciAhZGVmYXVsdDtcbiRuYXZiYXItaW52ZXJzZS1icmFuZC1ob3Zlci1jb2xvcjogICAgICAgICAgI2ZmZiAhZGVmYXVsdDtcbiRuYXZiYXItaW52ZXJzZS1icmFuZC1ob3Zlci1iZzogICAgICAgICAgICAgdHJhbnNwYXJlbnQgIWRlZmF1bHQ7XG5cbi8vIEludmVydGVkIG5hdmJhciB0b2dnbGVcbiRuYXZiYXItaW52ZXJzZS10b2dnbGUtaG92ZXItYmc6ICAgICAgICAgICAgIzMzMyAhZGVmYXVsdDtcbiRuYXZiYXItaW52ZXJzZS10b2dnbGUtaWNvbi1iYXItYmc6ICAgICAgICAgI2ZmZiAhZGVmYXVsdDtcbiRuYXZiYXItaW52ZXJzZS10b2dnbGUtYm9yZGVyLWNvbG9yOiAgICAgICAgIzMzMyAhZGVmYXVsdDtcblxuXG4vLz09IE5hdnNcbi8vXG4vLyMjXG5cbi8vPT09IFNoYXJlZCBuYXYgc3R5bGVzXG4kbmF2LWxpbmstcGFkZGluZzogICAgICAgICAgICAgICAgICAgICAgICAgIDEwcHggMTVweCAhZGVmYXVsdDtcbiRuYXYtbGluay1ob3Zlci1iZzogICAgICAgICAgICAgICAgICAgICAgICAgJGdyYXktbGlnaHRlciAhZGVmYXVsdDtcblxuJG5hdi1kaXNhYmxlZC1saW5rLWNvbG9yOiAgICAgICAgICAgICAgICAgICAkZ3JheS1saWdodCAhZGVmYXVsdDtcbiRuYXYtZGlzYWJsZWQtbGluay1ob3Zlci1jb2xvcjogICAgICAgICAgICAgJGdyYXktbGlnaHQgIWRlZmF1bHQ7XG5cbi8vPT0gVGFic1xuJG5hdi10YWJzLWJvcmRlci1jb2xvcjogICAgICAgICAgICAgICAgICAgICAjZGRkICFkZWZhdWx0O1xuXG4kbmF2LXRhYnMtbGluay1ob3Zlci1ib3JkZXItY29sb3I6ICAgICAgICAgICRncmF5LWxpZ2h0ZXIgIWRlZmF1bHQ7XG5cbiRuYXYtdGFicy1hY3RpdmUtbGluay1ob3Zlci1iZzogICAgICAgICAgICAgJGJvZHktYmcgIWRlZmF1bHQ7XG4kbmF2LXRhYnMtYWN0aXZlLWxpbmstaG92ZXItY29sb3I6ICAgICAgICAgICRncmF5ICFkZWZhdWx0O1xuJG5hdi10YWJzLWFjdGl2ZS1saW5rLWhvdmVyLWJvcmRlci1jb2xvcjogICAjZGRkICFkZWZhdWx0O1xuXG4kbmF2LXRhYnMtanVzdGlmaWVkLWxpbmstYm9yZGVyLWNvbG9yOiAgICAgICAgICAgICNkZGQgIWRlZmF1bHQ7XG4kbmF2LXRhYnMtanVzdGlmaWVkLWFjdGl2ZS1saW5rLWJvcmRlci1jb2xvcjogICAgICRib2R5LWJnICFkZWZhdWx0O1xuXG4vLz09IFBpbGxzXG4kbmF2LXBpbGxzLWJvcmRlci1yYWRpdXM6ICAgICAgICAgICAgICAgICAgICRib3JkZXItcmFkaXVzLWJhc2UgIWRlZmF1bHQ7XG4kbmF2LXBpbGxzLWFjdGl2ZS1saW5rLWhvdmVyLWJnOiAgICAgICAgICAgICRjb21wb25lbnQtYWN0aXZlLWJnICFkZWZhdWx0O1xuJG5hdi1waWxscy1hY3RpdmUtbGluay1ob3Zlci1jb2xvcjogICAgICAgICAkY29tcG9uZW50LWFjdGl2ZS1jb2xvciAhZGVmYXVsdDtcblxuXG4vLz09IFBhZ2luYXRpb25cbi8vXG4vLyMjXG5cbiRwYWdpbmF0aW9uLWNvbG9yOiAgICAgICAgICAgICAgICAgICAgICRsaW5rLWNvbG9yICFkZWZhdWx0O1xuJHBhZ2luYXRpb24tYmc6ICAgICAgICAgICAgICAgICAgICAgICAgI2ZmZiAhZGVmYXVsdDtcbiRwYWdpbmF0aW9uLWJvcmRlcjogICAgICAgICAgICAgICAgICAgICNkZGQgIWRlZmF1bHQ7XG5cbiRwYWdpbmF0aW9uLWhvdmVyLWNvbG9yOiAgICAgICAgICAgICAgICRsaW5rLWhvdmVyLWNvbG9yICFkZWZhdWx0O1xuJHBhZ2luYXRpb24taG92ZXItYmc6ICAgICAgICAgICAgICAgICAgJGdyYXktbGlnaHRlciAhZGVmYXVsdDtcbiRwYWdpbmF0aW9uLWhvdmVyLWJvcmRlcjogICAgICAgICAgICAgICNkZGQgIWRlZmF1bHQ7XG5cbiRwYWdpbmF0aW9uLWFjdGl2ZS1jb2xvcjogICAgICAgICAgICAgICNmZmYgIWRlZmF1bHQ7XG4kcGFnaW5hdGlvbi1hY3RpdmUtYmc6ICAgICAgICAgICAgICAgICAkYnJhbmQtcHJpbWFyeSAhZGVmYXVsdDtcbiRwYWdpbmF0aW9uLWFjdGl2ZS1ib3JkZXI6ICAgICAgICAgICAgICRicmFuZC1wcmltYXJ5ICFkZWZhdWx0O1xuXG4kcGFnaW5hdGlvbi1kaXNhYmxlZC1jb2xvcjogICAgICAgICAgICAkZ3JheS1saWdodCAhZGVmYXVsdDtcbiRwYWdpbmF0aW9uLWRpc2FibGVkLWJnOiAgICAgICAgICAgICAgICNmZmYgIWRlZmF1bHQ7XG4kcGFnaW5hdGlvbi1kaXNhYmxlZC1ib3JkZXI6ICAgICAgICAgICAjZGRkICFkZWZhdWx0O1xuXG5cbi8vPT0gUGFnZXJcbi8vXG4vLyMjXG5cbiRwYWdlci1iZzogICAgICAgICAgICAgICAgICAgICAgICAgICAgICRwYWdpbmF0aW9uLWJnICFkZWZhdWx0O1xuJHBhZ2VyLWJvcmRlcjogICAgICAgICAgICAgICAgICAgICAgICAgJHBhZ2luYXRpb24tYm9yZGVyICFkZWZhdWx0O1xuJHBhZ2VyLWJvcmRlci1yYWRpdXM6ICAgICAgICAgICAgICAgICAgMTVweCAhZGVmYXVsdDtcblxuJHBhZ2VyLWhvdmVyLWJnOiAgICAgICAgICAgICAgICAgICAgICAgJHBhZ2luYXRpb24taG92ZXItYmcgIWRlZmF1bHQ7XG5cbiRwYWdlci1hY3RpdmUtYmc6ICAgICAgICAgICAgICAgICAgICAgICRwYWdpbmF0aW9uLWFjdGl2ZS1iZyAhZGVmYXVsdDtcbiRwYWdlci1hY3RpdmUtY29sb3I6ICAgICAgICAgICAgICAgICAgICRwYWdpbmF0aW9uLWFjdGl2ZS1jb2xvciAhZGVmYXVsdDtcblxuJHBhZ2VyLWRpc2FibGVkLWNvbG9yOiAgICAgICAgICAgICAgICAgJHBhZ2luYXRpb24tZGlzYWJsZWQtY29sb3IgIWRlZmF1bHQ7XG5cblxuLy89PSBKdW1ib3Ryb25cbi8vXG4vLyMjXG5cbiRqdW1ib3Ryb24tcGFkZGluZzogICAgICAgICAgICAgIDMwcHggIWRlZmF1bHQ7XG4kanVtYm90cm9uLWNvbG9yOiAgICAgICAgICAgICAgICBpbmhlcml0ICFkZWZhdWx0O1xuJGp1bWJvdHJvbi1iZzogICAgICAgICAgICAgICAgICAgJGdyYXktbGlnaHRlciAhZGVmYXVsdDtcbiRqdW1ib3Ryb24taGVhZGluZy1jb2xvcjogICAgICAgIGluaGVyaXQgIWRlZmF1bHQ7XG4kanVtYm90cm9uLWZvbnQtc2l6ZTogICAgICAgICAgICBjZWlsKCgkZm9udC1zaXplLWJhc2UgKiAxLjUpKSAhZGVmYXVsdDtcbiRqdW1ib3Ryb24taGVhZGluZy1mb250LXNpemU6ICAgIGNlaWwoKCRmb250LXNpemUtYmFzZSAqIDQuNSkpICFkZWZhdWx0O1xuXG5cbi8vPT0gRm9ybSBzdGF0ZXMgYW5kIGFsZXJ0c1xuLy9cbi8vIyMgRGVmaW5lIGNvbG9ycyBmb3IgZm9ybSBmZWVkYmFjayBzdGF0ZXMgYW5kLCBieSBkZWZhdWx0LCBhbGVydHMuXG5cbiRzdGF0ZS1zdWNjZXNzLXRleHQ6ICAgICAgICAgICAgICMzYzc2M2QgIWRlZmF1bHQ7XG4kc3RhdGUtc3VjY2Vzcy1iZzogICAgICAgICAgICAgICAjZGZmMGQ4ICFkZWZhdWx0O1xuJHN0YXRlLXN1Y2Nlc3MtYm9yZGVyOiAgICAgICAgICAgZGFya2VuKGFkanVzdC1odWUoJHN0YXRlLXN1Y2Nlc3MtYmcsIC0xMCksIDUlKSAhZGVmYXVsdDtcblxuJHN0YXRlLWluZm8tdGV4dDogICAgICAgICAgICAgICAgIzMxNzA4ZiAhZGVmYXVsdDtcbiRzdGF0ZS1pbmZvLWJnOiAgICAgICAgICAgICAgICAgICNkOWVkZjcgIWRlZmF1bHQ7XG4kc3RhdGUtaW5mby1ib3JkZXI6ICAgICAgICAgICAgICBkYXJrZW4oYWRqdXN0LWh1ZSgkc3RhdGUtaW5mby1iZywgLTEwKSwgNyUpICFkZWZhdWx0O1xuXG4kc3RhdGUtd2FybmluZy10ZXh0OiAgICAgICAgICAgICAjOGE2ZDNiICFkZWZhdWx0O1xuJHN0YXRlLXdhcm5pbmctYmc6ICAgICAgICAgICAgICAgI2ZjZjhlMyAhZGVmYXVsdDtcbiRzdGF0ZS13YXJuaW5nLWJvcmRlcjogICAgICAgICAgIGRhcmtlbihhZGp1c3QtaHVlKCRzdGF0ZS13YXJuaW5nLWJnLCAtMTApLCA1JSkgIWRlZmF1bHQ7XG5cbiRzdGF0ZS1kYW5nZXItdGV4dDogICAgICAgICAgICAgICNhOTQ0NDIgIWRlZmF1bHQ7XG4kc3RhdGUtZGFuZ2VyLWJnOiAgICAgICAgICAgICAgICAjZjJkZWRlICFkZWZhdWx0O1xuJHN0YXRlLWRhbmdlci1ib3JkZXI6ICAgICAgICAgICAgZGFya2VuKGFkanVzdC1odWUoJHN0YXRlLWRhbmdlci1iZywgLTEwKSwgNSUpICFkZWZhdWx0O1xuXG5cbi8vPT0gVG9vbHRpcHNcbi8vXG4vLyMjXG5cbi8vKiogVG9vbHRpcCBtYXggd2lkdGhcbiR0b29sdGlwLW1heC13aWR0aDogICAgICAgICAgIDIwMHB4ICFkZWZhdWx0O1xuLy8qKiBUb29sdGlwIHRleHQgY29sb3JcbiR0b29sdGlwLWNvbG9yOiAgICAgICAgICAgICAgICNmZmYgIWRlZmF1bHQ7XG4vLyoqIFRvb2x0aXAgYmFja2dyb3VuZCBjb2xvclxuJHRvb2x0aXAtYmc6ICAgICAgICAgICAgICAgICAgIzAwMCAhZGVmYXVsdDtcbiR0b29sdGlwLW9wYWNpdHk6ICAgICAgICAgICAgIC45ICFkZWZhdWx0O1xuXG4vLyoqIFRvb2x0aXAgYXJyb3cgd2lkdGhcbiR0b29sdGlwLWFycm93LXdpZHRoOiAgICAgICAgIDVweCAhZGVmYXVsdDtcbi8vKiogVG9vbHRpcCBhcnJvdyBjb2xvclxuJHRvb2x0aXAtYXJyb3ctY29sb3I6ICAgICAgICAgJHRvb2x0aXAtYmcgIWRlZmF1bHQ7XG5cblxuLy89PSBQb3BvdmVyc1xuLy9cbi8vIyNcblxuLy8qKiBQb3BvdmVyIGJvZHkgYmFja2dyb3VuZCBjb2xvclxuJHBvcG92ZXItYmc6ICAgICAgICAgICAgICAgICAgICAgICAgICAjZmZmICFkZWZhdWx0O1xuLy8qKiBQb3BvdmVyIG1heGltdW0gd2lkdGhcbiRwb3BvdmVyLW1heC13aWR0aDogICAgICAgICAgICAgICAgICAgMjc2cHggIWRlZmF1bHQ7XG4vLyoqIFBvcG92ZXIgYm9yZGVyIGNvbG9yXG4kcG9wb3Zlci1ib3JkZXItY29sb3I6ICAgICAgICAgICAgICAgIHJnYmEoMCwwLDAsLjIpICFkZWZhdWx0O1xuLy8qKiBQb3BvdmVyIGZhbGxiYWNrIGJvcmRlciBjb2xvclxuJHBvcG92ZXItZmFsbGJhY2stYm9yZGVyLWNvbG9yOiAgICAgICAjY2NjICFkZWZhdWx0O1xuXG4vLyoqIFBvcG92ZXIgdGl0bGUgYmFja2dyb3VuZCBjb2xvclxuJHBvcG92ZXItdGl0bGUtYmc6ICAgICAgICAgICAgICAgICAgICBkYXJrZW4oJHBvcG92ZXItYmcsIDMlKSAhZGVmYXVsdDtcblxuLy8qKiBQb3BvdmVyIGFycm93IHdpZHRoXG4kcG9wb3Zlci1hcnJvdy13aWR0aDogICAgICAgICAgICAgICAgIDEwcHggIWRlZmF1bHQ7XG4vLyoqIFBvcG92ZXIgYXJyb3cgY29sb3JcbiRwb3BvdmVyLWFycm93LWNvbG9yOiAgICAgICAgICAgICAgICAgJHBvcG92ZXItYmcgIWRlZmF1bHQ7XG5cbi8vKiogUG9wb3ZlciBvdXRlciBhcnJvdyB3aWR0aFxuJHBvcG92ZXItYXJyb3ctb3V0ZXItd2lkdGg6ICAgICAgICAgICAoJHBvcG92ZXItYXJyb3ctd2lkdGggKyAxKSAhZGVmYXVsdDtcbi8vKiogUG9wb3ZlciBvdXRlciBhcnJvdyBjb2xvclxuJHBvcG92ZXItYXJyb3ctb3V0ZXItY29sb3I6ICAgICAgICAgICBmYWRlX2luKCRwb3BvdmVyLWJvcmRlci1jb2xvciwgMC4wNSkgIWRlZmF1bHQ7XG4vLyoqIFBvcG92ZXIgb3V0ZXIgYXJyb3cgZmFsbGJhY2sgY29sb3JcbiRwb3BvdmVyLWFycm93LW91dGVyLWZhbGxiYWNrLWNvbG9yOiAgZGFya2VuKCRwb3BvdmVyLWZhbGxiYWNrLWJvcmRlci1jb2xvciwgMjAlKSAhZGVmYXVsdDtcblxuXG4vLz09IExhYmVsc1xuLy9cbi8vIyNcblxuLy8qKiBEZWZhdWx0IGxhYmVsIGJhY2tncm91bmQgY29sb3JcbiRsYWJlbC1kZWZhdWx0LWJnOiAgICAgICAgICAgICRncmF5LWxpZ2h0ICFkZWZhdWx0O1xuLy8qKiBQcmltYXJ5IGxhYmVsIGJhY2tncm91bmQgY29sb3JcbiRsYWJlbC1wcmltYXJ5LWJnOiAgICAgICAgICAgICRicmFuZC1wcmltYXJ5ICFkZWZhdWx0O1xuLy8qKiBTdWNjZXNzIGxhYmVsIGJhY2tncm91bmQgY29sb3JcbiRsYWJlbC1zdWNjZXNzLWJnOiAgICAgICAgICAgICRicmFuZC1zdWNjZXNzICFkZWZhdWx0O1xuLy8qKiBJbmZvIGxhYmVsIGJhY2tncm91bmQgY29sb3JcbiRsYWJlbC1pbmZvLWJnOiAgICAgICAgICAgICAgICRicmFuZC1pbmZvICFkZWZhdWx0O1xuLy8qKiBXYXJuaW5nIGxhYmVsIGJhY2tncm91bmQgY29sb3JcbiRsYWJlbC13YXJuaW5nLWJnOiAgICAgICAgICAgICRicmFuZC13YXJuaW5nICFkZWZhdWx0O1xuLy8qKiBEYW5nZXIgbGFiZWwgYmFja2dyb3VuZCBjb2xvclxuJGxhYmVsLWRhbmdlci1iZzogICAgICAgICAgICAgJGJyYW5kLWRhbmdlciAhZGVmYXVsdDtcblxuLy8qKiBEZWZhdWx0IGxhYmVsIHRleHQgY29sb3JcbiRsYWJlbC1jb2xvcjogICAgICAgICAgICAgICAgICNmZmYgIWRlZmF1bHQ7XG4vLyoqIERlZmF1bHQgdGV4dCBjb2xvciBvZiBhIGxpbmtlZCBsYWJlbFxuJGxhYmVsLWxpbmstaG92ZXItY29sb3I6ICAgICAgI2ZmZiAhZGVmYXVsdDtcblxuXG4vLz09IE1vZGFsc1xuLy9cbi8vIyNcblxuLy8qKiBQYWRkaW5nIGFwcGxpZWQgdG8gdGhlIG1vZGFsIGJvZHlcbiRtb2RhbC1pbm5lci1wYWRkaW5nOiAgICAgICAgIDE1cHggIWRlZmF1bHQ7XG5cbi8vKiogUGFkZGluZyBhcHBsaWVkIHRvIHRoZSBtb2RhbCB0aXRsZVxuJG1vZGFsLXRpdGxlLXBhZGRpbmc6ICAgICAgICAgMTVweCAhZGVmYXVsdDtcbi8vKiogTW9kYWwgdGl0bGUgbGluZS1oZWlnaHRcbiRtb2RhbC10aXRsZS1saW5lLWhlaWdodDogICAgICRsaW5lLWhlaWdodC1iYXNlICFkZWZhdWx0O1xuXG4vLyoqIEJhY2tncm91bmQgY29sb3Igb2YgbW9kYWwgY29udGVudCBhcmVhXG4kbW9kYWwtY29udGVudC1iZzogICAgICAgICAgICAgICAgICAgICAgICAgICAgICNmZmYgIWRlZmF1bHQ7XG4vLyoqIE1vZGFsIGNvbnRlbnQgYm9yZGVyIGNvbG9yXG4kbW9kYWwtY29udGVudC1ib3JkZXItY29sb3I6ICAgICAgICAgICAgICAgICAgIHJnYmEoMCwwLDAsLjIpICFkZWZhdWx0O1xuLy8qKiBNb2RhbCBjb250ZW50IGJvcmRlciBjb2xvciAqKmZvciBJRTgqKlxuJG1vZGFsLWNvbnRlbnQtZmFsbGJhY2stYm9yZGVyLWNvbG9yOiAgICAgICAgICAjOTk5ICFkZWZhdWx0O1xuXG4vLyoqIE1vZGFsIGJhY2tkcm9wIGJhY2tncm91bmQgY29sb3JcbiRtb2RhbC1iYWNrZHJvcC1iZzogICAgICAgICAgICMwMDAgIWRlZmF1bHQ7XG4vLyoqIE1vZGFsIGJhY2tkcm9wIG9wYWNpdHlcbiRtb2RhbC1iYWNrZHJvcC1vcGFjaXR5OiAgICAgIC41ICFkZWZhdWx0O1xuLy8qKiBNb2RhbCBoZWFkZXIgYm9yZGVyIGNvbG9yXG4kbW9kYWwtaGVhZGVyLWJvcmRlci1jb2xvcjogICAjZTVlNWU1ICFkZWZhdWx0O1xuLy8qKiBNb2RhbCBmb290ZXIgYm9yZGVyIGNvbG9yXG4kbW9kYWwtZm9vdGVyLWJvcmRlci1jb2xvcjogICAkbW9kYWwtaGVhZGVyLWJvcmRlci1jb2xvciAhZGVmYXVsdDtcblxuJG1vZGFsLWxnOiAgICAgICAgICAgICAgICAgICAgOTAwcHggIWRlZmF1bHQ7XG4kbW9kYWwtbWQ6ICAgICAgICAgICAgICAgICAgICA2MDBweCAhZGVmYXVsdDtcbiRtb2RhbC1zbTogICAgICAgICAgICAgICAgICAgIDMwMHB4ICFkZWZhdWx0O1xuXG5cbi8vPT0gQWxlcnRzXG4vL1xuLy8jIyBEZWZpbmUgYWxlcnQgY29sb3JzLCBib3JkZXIgcmFkaXVzLCBhbmQgcGFkZGluZy5cblxuJGFsZXJ0LXBhZGRpbmc6ICAgICAgICAgICAgICAgMTVweCAhZGVmYXVsdDtcbiRhbGVydC1ib3JkZXItcmFkaXVzOiAgICAgICAgICRib3JkZXItcmFkaXVzLWJhc2UgIWRlZmF1bHQ7XG4kYWxlcnQtbGluay1mb250LXdlaWdodDogICAgICBib2xkICFkZWZhdWx0O1xuXG4kYWxlcnQtc3VjY2Vzcy1iZzogICAgICAgICAgICAkc3RhdGUtc3VjY2Vzcy1iZyAhZGVmYXVsdDtcbiRhbGVydC1zdWNjZXNzLXRleHQ6ICAgICAgICAgICRzdGF0ZS1zdWNjZXNzLXRleHQgIWRlZmF1bHQ7XG4kYWxlcnQtc3VjY2Vzcy1ib3JkZXI6ICAgICAgICAkc3RhdGUtc3VjY2Vzcy1ib3JkZXIgIWRlZmF1bHQ7XG5cbiRhbGVydC1pbmZvLWJnOiAgICAgICAgICAgICAgICRzdGF0ZS1pbmZvLWJnICFkZWZhdWx0O1xuJGFsZXJ0LWluZm8tdGV4dDogICAgICAgICAgICAgJHN0YXRlLWluZm8tdGV4dCAhZGVmYXVsdDtcbiRhbGVydC1pbmZvLWJvcmRlcjogICAgICAgICAgICRzdGF0ZS1pbmZvLWJvcmRlciAhZGVmYXVsdDtcblxuJGFsZXJ0LXdhcm5pbmctYmc6ICAgICAgICAgICAgJHN0YXRlLXdhcm5pbmctYmcgIWRlZmF1bHQ7XG4kYWxlcnQtd2FybmluZy10ZXh0OiAgICAgICAgICAkc3RhdGUtd2FybmluZy10ZXh0ICFkZWZhdWx0O1xuJGFsZXJ0LXdhcm5pbmctYm9yZGVyOiAgICAgICAgJHN0YXRlLXdhcm5pbmctYm9yZGVyICFkZWZhdWx0O1xuXG4kYWxlcnQtZGFuZ2VyLWJnOiAgICAgICAgICAgICAkc3RhdGUtZGFuZ2VyLWJnICFkZWZhdWx0O1xuJGFsZXJ0LWRhbmdlci10ZXh0OiAgICAgICAgICAgJHN0YXRlLWRhbmdlci10ZXh0ICFkZWZhdWx0O1xuJGFsZXJ0LWRhbmdlci1ib3JkZXI6ICAgICAgICAgJHN0YXRlLWRhbmdlci1ib3JkZXIgIWRlZmF1bHQ7XG5cblxuLy89PSBQcm9ncmVzcyBiYXJzXG4vL1xuLy8jI1xuXG4vLyoqIEJhY2tncm91bmQgY29sb3Igb2YgdGhlIHdob2xlIHByb2dyZXNzIGNvbXBvbmVudFxuJHByb2dyZXNzLWJnOiAgICAgICAgICAgICAgICAgI2Y1ZjVmNSAhZGVmYXVsdDtcbi8vKiogUHJvZ3Jlc3MgYmFyIHRleHQgY29sb3JcbiRwcm9ncmVzcy1iYXItY29sb3I6ICAgICAgICAgICNmZmYgIWRlZmF1bHQ7XG4vLyoqIFZhcmlhYmxlIGZvciBzZXR0aW5nIHJvdW5kZWQgY29ybmVycyBvbiBwcm9ncmVzcyBiYXIuXG4kcHJvZ3Jlc3MtYm9yZGVyLXJhZGl1czogICAgICAkYm9yZGVyLXJhZGl1cy1iYXNlICFkZWZhdWx0O1xuXG4vLyoqIERlZmF1bHQgcHJvZ3Jlc3MgYmFyIGNvbG9yXG4kcHJvZ3Jlc3MtYmFyLWJnOiAgICAgICAgICAgICAkYnJhbmQtcHJpbWFyeSAhZGVmYXVsdDtcbi8vKiogU3VjY2VzcyBwcm9ncmVzcyBiYXIgY29sb3JcbiRwcm9ncmVzcy1iYXItc3VjY2Vzcy1iZzogICAgICRicmFuZC1zdWNjZXNzICFkZWZhdWx0O1xuLy8qKiBXYXJuaW5nIHByb2dyZXNzIGJhciBjb2xvclxuJHByb2dyZXNzLWJhci13YXJuaW5nLWJnOiAgICAgJGJyYW5kLXdhcm5pbmcgIWRlZmF1bHQ7XG4vLyoqIERhbmdlciBwcm9ncmVzcyBiYXIgY29sb3JcbiRwcm9ncmVzcy1iYXItZGFuZ2VyLWJnOiAgICAgICRicmFuZC1kYW5nZXIgIWRlZmF1bHQ7XG4vLyoqIEluZm8gcHJvZ3Jlc3MgYmFyIGNvbG9yXG4kcHJvZ3Jlc3MtYmFyLWluZm8tYmc6ICAgICAgICAkYnJhbmQtaW5mbyAhZGVmYXVsdDtcblxuXG4vLz09IExpc3QgZ3JvdXBcbi8vXG4vLyMjXG5cbi8vKiogQmFja2dyb3VuZCBjb2xvciBvbiBgLmxpc3QtZ3JvdXAtaXRlbWBcbiRsaXN0LWdyb3VwLWJnOiAgICAgICAgICAgICAgICAgI2ZmZiAhZGVmYXVsdDtcbi8vKiogYC5saXN0LWdyb3VwLWl0ZW1gIGJvcmRlciBjb2xvclxuJGxpc3QtZ3JvdXAtYm9yZGVyOiAgICAgICAgICAgICAjZGRkICFkZWZhdWx0O1xuLy8qKiBMaXN0IGdyb3VwIGJvcmRlciByYWRpdXNcbiRsaXN0LWdyb3VwLWJvcmRlci1yYWRpdXM6ICAgICAgJGJvcmRlci1yYWRpdXMtYmFzZSAhZGVmYXVsdDtcblxuLy8qKiBCYWNrZ3JvdW5kIGNvbG9yIG9mIHNpbmdsZSBsaXN0IGl0ZW1zIG9uIGhvdmVyXG4kbGlzdC1ncm91cC1ob3Zlci1iZzogICAgICAgICAgICNmNWY1ZjUgIWRlZmF1bHQ7XG4vLyoqIFRleHQgY29sb3Igb2YgYWN0aXZlIGxpc3QgaXRlbXNcbiRsaXN0LWdyb3VwLWFjdGl2ZS1jb2xvcjogICAgICAgJGNvbXBvbmVudC1hY3RpdmUtY29sb3IgIWRlZmF1bHQ7XG4vLyoqIEJhY2tncm91bmQgY29sb3Igb2YgYWN0aXZlIGxpc3QgaXRlbXNcbiRsaXN0LWdyb3VwLWFjdGl2ZS1iZzogICAgICAgICAgJGNvbXBvbmVudC1hY3RpdmUtYmcgIWRlZmF1bHQ7XG4vLyoqIEJvcmRlciBjb2xvciBvZiBhY3RpdmUgbGlzdCBlbGVtZW50c1xuJGxpc3QtZ3JvdXAtYWN0aXZlLWJvcmRlcjogICAgICAkbGlzdC1ncm91cC1hY3RpdmUtYmcgIWRlZmF1bHQ7XG4vLyoqIFRleHQgY29sb3IgZm9yIGNvbnRlbnQgd2l0aGluIGFjdGl2ZSBsaXN0IGl0ZW1zXG4kbGlzdC1ncm91cC1hY3RpdmUtdGV4dC1jb2xvcjogIGxpZ2h0ZW4oJGxpc3QtZ3JvdXAtYWN0aXZlLWJnLCA0MCUpICFkZWZhdWx0O1xuXG4vLyoqIFRleHQgY29sb3Igb2YgZGlzYWJsZWQgbGlzdCBpdGVtc1xuJGxpc3QtZ3JvdXAtZGlzYWJsZWQtY29sb3I6ICAgICAgJGdyYXktbGlnaHQgIWRlZmF1bHQ7XG4vLyoqIEJhY2tncm91bmQgY29sb3Igb2YgZGlzYWJsZWQgbGlzdCBpdGVtc1xuJGxpc3QtZ3JvdXAtZGlzYWJsZWQtYmc6ICAgICAgICAgJGdyYXktbGlnaHRlciAhZGVmYXVsdDtcbi8vKiogVGV4dCBjb2xvciBmb3IgY29udGVudCB3aXRoaW4gZGlzYWJsZWQgbGlzdCBpdGVtc1xuJGxpc3QtZ3JvdXAtZGlzYWJsZWQtdGV4dC1jb2xvcjogJGxpc3QtZ3JvdXAtZGlzYWJsZWQtY29sb3IgIWRlZmF1bHQ7XG5cbiRsaXN0LWdyb3VwLWxpbmstY29sb3I6ICAgICAgICAgIzU1NSAhZGVmYXVsdDtcbiRsaXN0LWdyb3VwLWxpbmstaG92ZXItY29sb3I6ICAgJGxpc3QtZ3JvdXAtbGluay1jb2xvciAhZGVmYXVsdDtcbiRsaXN0LWdyb3VwLWxpbmstaGVhZGluZy1jb2xvcjogIzMzMyAhZGVmYXVsdDtcblxuXG4vLz09IFBhbmVsc1xuLy9cbi8vIyNcblxuJHBhbmVsLWJnOiAgICAgICAgICAgICAgICAgICAgI2ZmZiAhZGVmYXVsdDtcbiRwYW5lbC1ib2R5LXBhZGRpbmc6ICAgICAgICAgIDE1cHggIWRlZmF1bHQ7XG4kcGFuZWwtaGVhZGluZy1wYWRkaW5nOiAgICAgICAxMHB4IDE1cHggIWRlZmF1bHQ7XG4kcGFuZWwtZm9vdGVyLXBhZGRpbmc6ICAgICAgICAkcGFuZWwtaGVhZGluZy1wYWRkaW5nICFkZWZhdWx0O1xuJHBhbmVsLWJvcmRlci1yYWRpdXM6ICAgICAgICAgJGJvcmRlci1yYWRpdXMtYmFzZSAhZGVmYXVsdDtcblxuLy8qKiBCb3JkZXIgY29sb3IgZm9yIGVsZW1lbnRzIHdpdGhpbiBwYW5lbHNcbiRwYW5lbC1pbm5lci1ib3JkZXI6ICAgICAgICAgICNkZGQgIWRlZmF1bHQ7XG4kcGFuZWwtZm9vdGVyLWJnOiAgICAgICAgICAgICAjZjVmNWY1ICFkZWZhdWx0O1xuXG4kcGFuZWwtZGVmYXVsdC10ZXh0OiAgICAgICAgICAkZ3JheS1kYXJrICFkZWZhdWx0O1xuJHBhbmVsLWRlZmF1bHQtYm9yZGVyOiAgICAgICAgI2RkZCAhZGVmYXVsdDtcbiRwYW5lbC1kZWZhdWx0LWhlYWRpbmctYmc6ICAgICNmNWY1ZjUgIWRlZmF1bHQ7XG5cbiRwYW5lbC1wcmltYXJ5LXRleHQ6ICAgICAgICAgICNmZmYgIWRlZmF1bHQ7XG4kcGFuZWwtcHJpbWFyeS1ib3JkZXI6ICAgICAgICAkYnJhbmQtcHJpbWFyeSAhZGVmYXVsdDtcbiRwYW5lbC1wcmltYXJ5LWhlYWRpbmctYmc6ICAgICRicmFuZC1wcmltYXJ5ICFkZWZhdWx0O1xuXG4kcGFuZWwtc3VjY2Vzcy10ZXh0OiAgICAgICAgICAkc3RhdGUtc3VjY2Vzcy10ZXh0ICFkZWZhdWx0O1xuJHBhbmVsLXN1Y2Nlc3MtYm9yZGVyOiAgICAgICAgJHN0YXRlLXN1Y2Nlc3MtYm9yZGVyICFkZWZhdWx0O1xuJHBhbmVsLXN1Y2Nlc3MtaGVhZGluZy1iZzogICAgJHN0YXRlLXN1Y2Nlc3MtYmcgIWRlZmF1bHQ7XG5cbiRwYW5lbC1pbmZvLXRleHQ6ICAgICAgICAgICAgICRzdGF0ZS1pbmZvLXRleHQgIWRlZmF1bHQ7XG4kcGFuZWwtaW5mby1ib3JkZXI6ICAgICAgICAgICAkc3RhdGUtaW5mby1ib3JkZXIgIWRlZmF1bHQ7XG4kcGFuZWwtaW5mby1oZWFkaW5nLWJnOiAgICAgICAkc3RhdGUtaW5mby1iZyAhZGVmYXVsdDtcblxuJHBhbmVsLXdhcm5pbmctdGV4dDogICAgICAgICAgJHN0YXRlLXdhcm5pbmctdGV4dCAhZGVmYXVsdDtcbiRwYW5lbC13YXJuaW5nLWJvcmRlcjogICAgICAgICRzdGF0ZS13YXJuaW5nLWJvcmRlciAhZGVmYXVsdDtcbiRwYW5lbC13YXJuaW5nLWhlYWRpbmctYmc6ICAgICRzdGF0ZS13YXJuaW5nLWJnICFkZWZhdWx0O1xuXG4kcGFuZWwtZGFuZ2VyLXRleHQ6ICAgICAgICAgICAkc3RhdGUtZGFuZ2VyLXRleHQgIWRlZmF1bHQ7XG4kcGFuZWwtZGFuZ2VyLWJvcmRlcjogICAgICAgICAkc3RhdGUtZGFuZ2VyLWJvcmRlciAhZGVmYXVsdDtcbiRwYW5lbC1kYW5nZXItaGVhZGluZy1iZzogICAgICRzdGF0ZS1kYW5nZXItYmcgIWRlZmF1bHQ7XG5cblxuLy89PSBUaHVtYm5haWxzXG4vL1xuLy8jI1xuXG4vLyoqIFBhZGRpbmcgYXJvdW5kIHRoZSB0aHVtYm5haWwgaW1hZ2VcbiR0aHVtYm5haWwtcGFkZGluZzogICAgICAgICAgIDRweCAhZGVmYXVsdDtcbi8vKiogVGh1bWJuYWlsIGJhY2tncm91bmQgY29sb3JcbiR0aHVtYm5haWwtYmc6ICAgICAgICAgICAgICAgICRib2R5LWJnICFkZWZhdWx0O1xuLy8qKiBUaHVtYm5haWwgYm9yZGVyIGNvbG9yXG4kdGh1bWJuYWlsLWJvcmRlcjogICAgICAgICAgICAjZGRkICFkZWZhdWx0O1xuLy8qKiBUaHVtYm5haWwgYm9yZGVyIHJhZGl1c1xuJHRodW1ibmFpbC1ib3JkZXItcmFkaXVzOiAgICAgJGJvcmRlci1yYWRpdXMtYmFzZSAhZGVmYXVsdDtcblxuLy8qKiBDdXN0b20gdGV4dCBjb2xvciBmb3IgdGh1bWJuYWlsIGNhcHRpb25zXG4kdGh1bWJuYWlsLWNhcHRpb24tY29sb3I6ICAgICAkdGV4dC1jb2xvciAhZGVmYXVsdDtcbi8vKiogUGFkZGluZyBhcm91bmQgdGhlIHRodW1ibmFpbCBjYXB0aW9uXG4kdGh1bWJuYWlsLWNhcHRpb24tcGFkZGluZzogICA5cHggIWRlZmF1bHQ7XG5cblxuLy89PSBXZWxsc1xuLy9cbi8vIyNcblxuJHdlbGwtYmc6ICAgICAgICAgICAgICAgICAgICAgI2Y1ZjVmNSAhZGVmYXVsdDtcbiR3ZWxsLWJvcmRlcjogICAgICAgICAgICAgICAgIGRhcmtlbigkd2VsbC1iZywgNyUpICFkZWZhdWx0O1xuXG5cbi8vPT0gQmFkZ2VzXG4vL1xuLy8jI1xuXG4kYmFkZ2UtY29sb3I6ICAgICAgICAgICAgICAgICAjZmZmICFkZWZhdWx0O1xuLy8qKiBMaW5rZWQgYmFkZ2UgdGV4dCBjb2xvciBvbiBob3ZlclxuJGJhZGdlLWxpbmstaG92ZXItY29sb3I6ICAgICAgI2ZmZiAhZGVmYXVsdDtcbiRiYWRnZS1iZzogICAgICAgICAgICAgICAgICAgICRncmF5LWxpZ2h0ICFkZWZhdWx0O1xuXG4vLyoqIEJhZGdlIHRleHQgY29sb3IgaW4gYWN0aXZlIG5hdiBsaW5rXG4kYmFkZ2UtYWN0aXZlLWNvbG9yOiAgICAgICAgICAkbGluay1jb2xvciAhZGVmYXVsdDtcbi8vKiogQmFkZ2UgYmFja2dyb3VuZCBjb2xvciBpbiBhY3RpdmUgbmF2IGxpbmtcbiRiYWRnZS1hY3RpdmUtYmc6ICAgICAgICAgICAgICNmZmYgIWRlZmF1bHQ7XG5cbiRiYWRnZS1mb250LXdlaWdodDogICAgICAgICAgIGJvbGQgIWRlZmF1bHQ7XG4kYmFkZ2UtbGluZS1oZWlnaHQ6ICAgICAgICAgICAxICFkZWZhdWx0O1xuJGJhZGdlLWJvcmRlci1yYWRpdXM6ICAgICAgICAgMTBweCAhZGVmYXVsdDtcblxuXG4vLz09IEJyZWFkY3J1bWJzXG4vL1xuLy8jI1xuXG4kYnJlYWRjcnVtYi1wYWRkaW5nLXZlcnRpY2FsOiAgIDhweCAhZGVmYXVsdDtcbiRicmVhZGNydW1iLXBhZGRpbmctaG9yaXpvbnRhbDogMTVweCAhZGVmYXVsdDtcbi8vKiogQnJlYWRjcnVtYiBiYWNrZ3JvdW5kIGNvbG9yXG4kYnJlYWRjcnVtYi1iZzogICAgICAgICAgICAgICAgICNmNWY1ZjUgIWRlZmF1bHQ7XG4vLyoqIEJyZWFkY3J1bWIgdGV4dCBjb2xvclxuJGJyZWFkY3J1bWItY29sb3I6ICAgICAgICAgICAgICAjY2NjICFkZWZhdWx0O1xuLy8qKiBUZXh0IGNvbG9yIG9mIGN1cnJlbnQgcGFnZSBpbiB0aGUgYnJlYWRjcnVtYlxuJGJyZWFkY3J1bWItYWN0aXZlLWNvbG9yOiAgICAgICAkZ3JheS1saWdodCAhZGVmYXVsdDtcbi8vKiogVGV4dHVhbCBzZXBhcmF0b3IgZm9yIGJldHdlZW4gYnJlYWRjcnVtYiBlbGVtZW50c1xuJGJyZWFkY3J1bWItc2VwYXJhdG9yOiAgICAgICAgICBcIi9cIiAhZGVmYXVsdDtcblxuXG4vLz09IENhcm91c2VsXG4vL1xuLy8jI1xuXG4kY2Fyb3VzZWwtdGV4dC1zaGFkb3c6ICAgICAgICAgICAgICAgICAgICAgICAgMCAxcHggMnB4IHJnYmEoMCwwLDAsLjYpICFkZWZhdWx0O1xuXG4kY2Fyb3VzZWwtY29udHJvbC1jb2xvcjogICAgICAgICAgICAgICAgICAgICAgI2ZmZiAhZGVmYXVsdDtcbiRjYXJvdXNlbC1jb250cm9sLXdpZHRoOiAgICAgICAgICAgICAgICAgICAgICAxNSUgIWRlZmF1bHQ7XG4kY2Fyb3VzZWwtY29udHJvbC1vcGFjaXR5OiAgICAgICAgICAgICAgICAgICAgLjUgIWRlZmF1bHQ7XG4kY2Fyb3VzZWwtY29udHJvbC1mb250LXNpemU6ICAgICAgICAgICAgICAgICAgMjBweCAhZGVmYXVsdDtcblxuJGNhcm91c2VsLWluZGljYXRvci1hY3RpdmUtYmc6ICAgICAgICAgICAgICAgICNmZmYgIWRlZmF1bHQ7XG4kY2Fyb3VzZWwtaW5kaWNhdG9yLWJvcmRlci1jb2xvcjogICAgICAgICAgICAgI2ZmZiAhZGVmYXVsdDtcblxuJGNhcm91c2VsLWNhcHRpb24tY29sb3I6ICAgICAgICAgICAgICAgICAgICAgICNmZmYgIWRlZmF1bHQ7XG5cblxuLy89PSBDbG9zZVxuLy9cbi8vIyNcblxuJGNsb3NlLWZvbnQtd2VpZ2h0OiAgICAgICAgICAgYm9sZCAhZGVmYXVsdDtcbiRjbG9zZS1jb2xvcjogICAgICAgICAgICAgICAgICMwMDAgIWRlZmF1bHQ7XG4kY2xvc2UtdGV4dC1zaGFkb3c6ICAgICAgICAgICAwIDFweCAwICNmZmYgIWRlZmF1bHQ7XG5cblxuLy89PSBDb2RlXG4vL1xuLy8jI1xuXG4kY29kZS1jb2xvcjogICAgICAgICAgICAgICAgICAjYzcyNTRlICFkZWZhdWx0O1xuJGNvZGUtYmc6ICAgICAgICAgICAgICAgICAgICAgI2Y5ZjJmNCAhZGVmYXVsdDtcblxuJGtiZC1jb2xvcjogICAgICAgICAgICAgICAgICAgI2ZmZiAhZGVmYXVsdDtcbiRrYmQtYmc6ICAgICAgICAgICAgICAgICAgICAgICMzMzMgIWRlZmF1bHQ7XG5cbiRwcmUtYmc6ICAgICAgICAgICAgICAgICAgICAgICNmNWY1ZjUgIWRlZmF1bHQ7XG4kcHJlLWNvbG9yOiAgICAgICAgICAgICAgICAgICAkZ3JheS1kYXJrICFkZWZhdWx0O1xuJHByZS1ib3JkZXItY29sb3I6ICAgICAgICAgICAgI2NjYyAhZGVmYXVsdDtcbiRwcmUtc2Nyb2xsYWJsZS1tYXgtaGVpZ2h0OiAgIDM0MHB4ICFkZWZhdWx0O1xuXG5cbi8vPT0gVHlwZVxuLy9cbi8vIyNcblxuLy8qKiBIb3Jpem9udGFsIG9mZnNldCBmb3IgZm9ybXMgYW5kIGxpc3RzLlxuJGNvbXBvbmVudC1vZmZzZXQtaG9yaXpvbnRhbDogMTgwcHggIWRlZmF1bHQ7XG4vLyoqIFRleHQgbXV0ZWQgY29sb3JcbiR0ZXh0LW11dGVkOiAgICAgICAgICAgICAgICAgICRncmF5LWxpZ2h0ICFkZWZhdWx0O1xuLy8qKiBBYmJyZXZpYXRpb25zIGFuZCBhY3JvbnltcyBib3JkZXIgY29sb3JcbiRhYmJyLWJvcmRlci1jb2xvcjogICAgICAgICAgICRncmF5LWxpZ2h0ICFkZWZhdWx0O1xuLy8qKiBIZWFkaW5ncyBzbWFsbCBjb2xvclxuJGhlYWRpbmdzLXNtYWxsLWNvbG9yOiAgICAgICAgJGdyYXktbGlnaHQgIWRlZmF1bHQ7XG4vLyoqIEJsb2NrcXVvdGUgc21hbGwgY29sb3JcbiRibG9ja3F1b3RlLXNtYWxsLWNvbG9yOiAgICAgICRncmF5LWxpZ2h0ICFkZWZhdWx0O1xuLy8qKiBCbG9ja3F1b3RlIGZvbnQgc2l6ZVxuJGJsb2NrcXVvdGUtZm9udC1zaXplOiAgICAgICAgKCRmb250LXNpemUtYmFzZSAqIDEuMjUpICFkZWZhdWx0O1xuLy8qKiBCbG9ja3F1b3RlIGJvcmRlciBjb2xvclxuJGJsb2NrcXVvdGUtYm9yZGVyLWNvbG9yOiAgICAgJGdyYXktbGlnaHRlciAhZGVmYXVsdDtcbi8vKiogUGFnZSBoZWFkZXIgYm9yZGVyIGNvbG9yXG4kcGFnZS1oZWFkZXItYm9yZGVyLWNvbG9yOiAgICAkZ3JheS1saWdodGVyICFkZWZhdWx0O1xuLy8qKiBXaWR0aCBvZiBob3Jpem9udGFsIGRlc2NyaXB0aW9uIGxpc3QgdGl0bGVzXG4kZGwtaG9yaXpvbnRhbC1vZmZzZXQ6ICAgICAgICAkY29tcG9uZW50LW9mZnNldC1ob3Jpem9udGFsICFkZWZhdWx0O1xuLy8qKiBQb2ludCBhdCB3aGljaCAuZGwtaG9yaXpvbnRhbCBiZWNvbWVzIGhvcml6b250YWxcbiRkbC1ob3Jpem9udGFsLWJyZWFrcG9pbnQ6ICAgICRncmlkLWZsb2F0LWJyZWFrcG9pbnQgIWRlZmF1bHQ7XG4vLyoqIEhvcml6b250YWwgbGluZSBjb2xvci5cbiRoci1ib3JkZXI6ICAgICAgICAgICAgICAgICAgICRncmF5LWxpZ2h0ZXIgIWRlZmF1bHQ7XG4iLCIvLyBXZWJLaXQtc3R5bGUgZm9jdXNcblxuQG1peGluIHRhYi1mb2N1cygpIHtcbiAgLy8gV2ViS2l0LXNwZWNpZmljLiBPdGhlciBicm93c2VycyB3aWxsIGtlZXAgdGhlaXIgZGVmYXVsdCBvdXRsaW5lIHN0eWxlLlxuICAvLyAoSW5pdGlhbGx5IHRyaWVkIHRvIGFsc28gZm9yY2UgZGVmYXVsdCB2aWEgYG91dGxpbmU6IGluaXRpYWxgLFxuICAvLyBidXQgdGhhdCBzZWVtcyB0byBlcnJvbmVvdXNseSByZW1vdmUgdGhlIG91dGxpbmUgaW4gRmlyZWZveCBhbHRvZ2V0aGVyLilcbiAgb3V0bGluZTogNXB4IGF1dG8gLXdlYmtpdC1mb2N1cy1yaW5nLWNvbG9yO1xuICBvdXRsaW5lLW9mZnNldDogLTJweDtcbn1cbiIsIi8vIEltYWdlIE1peGluc1xuLy8gLSBSZXNwb25zaXZlIGltYWdlXG4vLyAtIFJldGluYSBpbWFnZVxuXG5cbi8vIFJlc3BvbnNpdmUgaW1hZ2Vcbi8vXG4vLyBLZWVwIGltYWdlcyBmcm9tIHNjYWxpbmcgYmV5b25kIHRoZSB3aWR0aCBvZiB0aGVpciBwYXJlbnRzLlxuQG1peGluIGltZy1yZXNwb25zaXZlKCRkaXNwbGF5OiBibG9jaykge1xuICBkaXNwbGF5OiAkZGlzcGxheTtcbiAgbWF4LXdpZHRoOiAxMDAlOyAvLyBQYXJ0IDE6IFNldCBhIG1heGltdW0gcmVsYXRpdmUgdG8gdGhlIHBhcmVudFxuICBoZWlnaHQ6IGF1dG87IC8vIFBhcnQgMjogU2NhbGUgdGhlIGhlaWdodCBhY2NvcmRpbmcgdG8gdGhlIHdpZHRoLCBvdGhlcndpc2UgeW91IGdldCBzdHJldGNoaW5nXG59XG5cblxuLy8gUmV0aW5hIGltYWdlXG4vL1xuLy8gU2hvcnQgcmV0aW5hIG1peGluIGZvciBzZXR0aW5nIGJhY2tncm91bmQtaW1hZ2UgYW5kIC1zaXplLiBOb3RlIHRoYXQgdGhlXG4vLyBzcGVsbGluZyBvZiBgbWluLS1tb3otZGV2aWNlLXBpeGVsLXJhdGlvYCBpcyBpbnRlbnRpb25hbC5cbkBtaXhpbiBpbWctcmV0aW5hKCRmaWxlLTF4LCAkZmlsZS0yeCwgJHdpZHRoLTF4LCAkaGVpZ2h0LTF4KSB7XG4gIGJhY2tncm91bmQtaW1hZ2U6IHVybChpZigkYm9vdHN0cmFwLXNhc3MtYXNzZXQtaGVscGVyLCB0d2JzLWltYWdlLXBhdGgoXCIjeyRmaWxlLTF4fVwiKSwgXCIjeyRmaWxlLTF4fVwiKSk7XG5cbiAgQG1lZGlhXG4gIG9ubHkgc2NyZWVuIGFuZCAoLXdlYmtpdC1taW4tZGV2aWNlLXBpeGVsLXJhdGlvOiAyKSxcbiAgb25seSBzY3JlZW4gYW5kICggICBtaW4tLW1vei1kZXZpY2UtcGl4ZWwtcmF0aW86IDIpLFxuICBvbmx5IHNjcmVlbiBhbmQgKCAgICAgLW8tbWluLWRldmljZS1waXhlbC1yYXRpbzogMi8xKSxcbiAgb25seSBzY3JlZW4gYW5kICggICAgICAgIG1pbi1kZXZpY2UtcGl4ZWwtcmF0aW86IDIpLFxuICBvbmx5IHNjcmVlbiBhbmQgKCAgICAgICAgICAgICAgICBtaW4tcmVzb2x1dGlvbjogMTkyZHBpKSxcbiAgb25seSBzY3JlZW4gYW5kICggICAgICAgICAgICAgICAgbWluLXJlc29sdXRpb246IDJkcHB4KSB7XG4gICAgYmFja2dyb3VuZC1pbWFnZTogdXJsKGlmKCRib290c3RyYXAtc2Fzcy1hc3NldC1oZWxwZXIsIHR3YnMtaW1hZ2UtcGF0aChcIiN7JGZpbGUtMnh9XCIpLCBcIiN7JGZpbGUtMnh9XCIpKTtcbiAgICBiYWNrZ3JvdW5kLXNpemU6ICR3aWR0aC0xeCAkaGVpZ2h0LTF4O1xuICB9XG59XG4iLCIvL1xuLy8gVHlwb2dyYXBoeVxuLy8gLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cblxuXG4vLyBIZWFkaW5nc1xuLy8gLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuXG5oMSwgaDIsIGgzLCBoNCwgaDUsIGg2LFxuLmgxLCAuaDIsIC5oMywgLmg0LCAuaDUsIC5oNiB7XG4gIGZvbnQtZmFtaWx5OiAkaGVhZGluZ3MtZm9udC1mYW1pbHk7XG4gIGZvbnQtd2VpZ2h0OiAkaGVhZGluZ3MtZm9udC13ZWlnaHQ7XG4gIGxpbmUtaGVpZ2h0OiAkaGVhZGluZ3MtbGluZS1oZWlnaHQ7XG4gIGNvbG9yOiAkaGVhZGluZ3MtY29sb3I7XG5cbiAgc21hbGwsXG4gIC5zbWFsbCB7XG4gICAgZm9udC13ZWlnaHQ6IG5vcm1hbDtcbiAgICBsaW5lLWhlaWdodDogMTtcbiAgICBjb2xvcjogJGhlYWRpbmdzLXNtYWxsLWNvbG9yO1xuICB9XG59XG5cbmgxLCAuaDEsXG5oMiwgLmgyLFxuaDMsIC5oMyB7XG4gIG1hcmdpbi10b3A6ICRsaW5lLWhlaWdodC1jb21wdXRlZDtcbiAgbWFyZ2luLWJvdHRvbTogKCRsaW5lLWhlaWdodC1jb21wdXRlZCAvIDIpO1xuXG4gIHNtYWxsLFxuICAuc21hbGwge1xuICAgIGZvbnQtc2l6ZTogNjUlO1xuICB9XG59XG5oNCwgLmg0LFxuaDUsIC5oNSxcbmg2LCAuaDYge1xuICBtYXJnaW4tdG9wOiAoJGxpbmUtaGVpZ2h0LWNvbXB1dGVkIC8gMik7XG4gIG1hcmdpbi1ib3R0b206ICgkbGluZS1oZWlnaHQtY29tcHV0ZWQgLyAyKTtcblxuICBzbWFsbCxcbiAgLnNtYWxsIHtcbiAgICBmb250LXNpemU6IDc1JTtcbiAgfVxufVxuXG5oMSwgLmgxIHsgZm9udC1zaXplOiAkZm9udC1zaXplLWgxOyB9XG5oMiwgLmgyIHsgZm9udC1zaXplOiAkZm9udC1zaXplLWgyOyB9XG5oMywgLmgzIHsgZm9udC1zaXplOiAkZm9udC1zaXplLWgzOyB9XG5oNCwgLmg0IHsgZm9udC1zaXplOiAkZm9udC1zaXplLWg0OyB9XG5oNSwgLmg1IHsgZm9udC1zaXplOiAkZm9udC1zaXplLWg1OyB9XG5oNiwgLmg2IHsgZm9udC1zaXplOiAkZm9udC1zaXplLWg2OyB9XG5cblxuLy8gQm9keSB0ZXh0XG4vLyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG5cbnAge1xuICBtYXJnaW46IDAgMCAoJGxpbmUtaGVpZ2h0LWNvbXB1dGVkIC8gMik7XG59XG5cbi5sZWFkIHtcbiAgbWFyZ2luLWJvdHRvbTogJGxpbmUtaGVpZ2h0LWNvbXB1dGVkO1xuICBmb250LXNpemU6IGZsb29yKCgkZm9udC1zaXplLWJhc2UgKiAxLjE1KSk7XG4gIGZvbnQtd2VpZ2h0OiAzMDA7XG4gIGxpbmUtaGVpZ2h0OiAxLjQ7XG5cbiAgQG1lZGlhIChtaW4td2lkdGg6ICRzY3JlZW4tc20tbWluKSB7XG4gICAgZm9udC1zaXplOiAoJGZvbnQtc2l6ZS1iYXNlICogMS41KTtcbiAgfVxufVxuXG5cbi8vIEVtcGhhc2lzICYgbWlzY1xuLy8gLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuXG4vLyBFeDogKDEycHggc21hbGwgZm9udCAvIDE0cHggYmFzZSBmb250KSAqIDEwMCUgPSBhYm91dCA4NSVcbnNtYWxsLFxuLnNtYWxsIHtcbiAgZm9udC1zaXplOiBmbG9vcigoMTAwJSAqICRmb250LXNpemUtc21hbGwgLyAkZm9udC1zaXplLWJhc2UpKTtcbn1cblxubWFyayxcbi5tYXJrIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogJHN0YXRlLXdhcm5pbmctYmc7XG4gIHBhZGRpbmc6IC4yZW07XG59XG5cbi8vIEFsaWdubWVudFxuLnRleHQtbGVmdCAgICAgICAgICAgeyB0ZXh0LWFsaWduOiBsZWZ0OyB9XG4udGV4dC1yaWdodCAgICAgICAgICB7IHRleHQtYWxpZ246IHJpZ2h0OyB9XG4udGV4dC1jZW50ZXIgICAgICAgICB7IHRleHQtYWxpZ246IGNlbnRlcjsgfVxuLnRleHQtanVzdGlmeSAgICAgICAgeyB0ZXh0LWFsaWduOiBqdXN0aWZ5OyB9XG4udGV4dC1ub3dyYXAgICAgICAgICB7IHdoaXRlLXNwYWNlOiBub3dyYXA7IH1cblxuLy8gVHJhbnNmb3JtYXRpb25cbi50ZXh0LWxvd2VyY2FzZSAgICAgIHsgdGV4dC10cmFuc2Zvcm06IGxvd2VyY2FzZTsgfVxuLnRleHQtdXBwZXJjYXNlICAgICAgeyB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlOyB9XG4udGV4dC1jYXBpdGFsaXplICAgICB7IHRleHQtdHJhbnNmb3JtOiBjYXBpdGFsaXplOyB9XG5cbi8vIENvbnRleHR1YWwgY29sb3JzXG4udGV4dC1tdXRlZCB7XG4gIGNvbG9yOiAkdGV4dC1tdXRlZDtcbn1cblxuQGluY2x1ZGUgdGV4dC1lbXBoYXNpcy12YXJpYW50KCcudGV4dC1wcmltYXJ5JywgJGJyYW5kLXByaW1hcnkpO1xuXG5AaW5jbHVkZSB0ZXh0LWVtcGhhc2lzLXZhcmlhbnQoJy50ZXh0LXN1Y2Nlc3MnLCAkc3RhdGUtc3VjY2Vzcy10ZXh0KTtcblxuQGluY2x1ZGUgdGV4dC1lbXBoYXNpcy12YXJpYW50KCcudGV4dC1pbmZvJywgJHN0YXRlLWluZm8tdGV4dCk7XG5cbkBpbmNsdWRlIHRleHQtZW1waGFzaXMtdmFyaWFudCgnLnRleHQtd2FybmluZycsICRzdGF0ZS13YXJuaW5nLXRleHQpO1xuXG5AaW5jbHVkZSB0ZXh0LWVtcGhhc2lzLXZhcmlhbnQoJy50ZXh0LWRhbmdlcicsICRzdGF0ZS1kYW5nZXItdGV4dCk7XG5cbi8vIENvbnRleHR1YWwgYmFja2dyb3VuZHNcbi8vIEZvciBub3cgd2UnbGwgbGVhdmUgdGhlc2UgYWxvbmdzaWRlIHRoZSB0ZXh0IGNsYXNzZXMgdW50aWwgdjQgd2hlbiB3ZSBjYW5cbi8vIHNhZmVseSBzaGlmdCB0aGluZ3MgYXJvdW5kIChwZXIgU2VtVmVyIHJ1bGVzKS5cbi5iZy1wcmltYXJ5IHtcbiAgLy8gR2l2ZW4gdGhlIGNvbnRyYXN0IGhlcmUsIHRoaXMgaXMgdGhlIG9ubHkgY2xhc3MgdG8gaGF2ZSBpdHMgY29sb3IgaW52ZXJ0ZWRcbiAgLy8gYXV0b21hdGljYWxseS5cbiAgY29sb3I6ICNmZmY7XG59XG5AaW5jbHVkZSBiZy12YXJpYW50KCcuYmctcHJpbWFyeScsICRicmFuZC1wcmltYXJ5KTtcblxuQGluY2x1ZGUgYmctdmFyaWFudCgnLmJnLXN1Y2Nlc3MnLCAkc3RhdGUtc3VjY2Vzcy1iZyk7XG5cbkBpbmNsdWRlIGJnLXZhcmlhbnQoJy5iZy1pbmZvJywgJHN0YXRlLWluZm8tYmcpO1xuXG5AaW5jbHVkZSBiZy12YXJpYW50KCcuYmctd2FybmluZycsICRzdGF0ZS13YXJuaW5nLWJnKTtcblxuQGluY2x1ZGUgYmctdmFyaWFudCgnLmJnLWRhbmdlcicsICRzdGF0ZS1kYW5nZXItYmcpO1xuXG5cbi8vIFBhZ2UgaGVhZGVyXG4vLyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG5cbi5wYWdlLWhlYWRlciB7XG4gIHBhZGRpbmctYm90dG9tOiAoKCRsaW5lLWhlaWdodC1jb21wdXRlZCAvIDIpIC0gMSk7XG4gIG1hcmdpbjogKCRsaW5lLWhlaWdodC1jb21wdXRlZCAqIDIpIDAgJGxpbmUtaGVpZ2h0LWNvbXB1dGVkO1xuICBib3JkZXItYm90dG9tOiAxcHggc29saWQgJHBhZ2UtaGVhZGVyLWJvcmRlci1jb2xvcjtcbn1cblxuXG4vLyBMaXN0c1xuLy8gLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuXG4vLyBVbm9yZGVyZWQgYW5kIE9yZGVyZWQgbGlzdHNcbnVsLFxub2wge1xuICBtYXJnaW4tdG9wOiAwO1xuICBtYXJnaW4tYm90dG9tOiAoJGxpbmUtaGVpZ2h0LWNvbXB1dGVkIC8gMik7XG4gIHVsLFxuICBvbCB7XG4gICAgbWFyZ2luLWJvdHRvbTogMDtcbiAgfVxufVxuXG4vLyBMaXN0IG9wdGlvbnNcblxuLy8gW2NvbnZlcnRlcl0gZXh0cmFjdGVkIGZyb20gYC5saXN0LXVuc3R5bGVkYCBmb3IgbGlic2FzcyBjb21wYXRpYmlsaXR5XG5AbWl4aW4gbGlzdC11bnN0eWxlZCB7XG4gIHBhZGRpbmctbGVmdDogMDtcbiAgbGlzdC1zdHlsZTogbm9uZTtcbn1cbi8vIFtjb252ZXJ0ZXJdIGV4dHJhY3RlZCBhcyBgQG1peGluIGxpc3QtdW5zdHlsZWRgIGZvciBsaWJzYXNzIGNvbXBhdGliaWxpdHlcbi5saXN0LXVuc3R5bGVkIHtcbiAgQGluY2x1ZGUgbGlzdC11bnN0eWxlZDtcbn1cblxuXG4vLyBJbmxpbmUgdHVybnMgbGlzdCBpdGVtcyBpbnRvIGlubGluZS1ibG9ja1xuLmxpc3QtaW5saW5lIHtcbiAgQGluY2x1ZGUgbGlzdC11bnN0eWxlZDtcbiAgbWFyZ2luLWxlZnQ6IC01cHg7XG5cbiAgPiBsaSB7XG4gICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgIHBhZGRpbmctbGVmdDogNXB4O1xuICAgIHBhZGRpbmctcmlnaHQ6IDVweDtcbiAgfVxufVxuXG4vLyBEZXNjcmlwdGlvbiBMaXN0c1xuZGwge1xuICBtYXJnaW4tdG9wOiAwOyAvLyBSZW1vdmUgYnJvd3NlciBkZWZhdWx0XG4gIG1hcmdpbi1ib3R0b206ICRsaW5lLWhlaWdodC1jb21wdXRlZDtcbn1cbmR0LFxuZGQge1xuICBsaW5lLWhlaWdodDogJGxpbmUtaGVpZ2h0LWJhc2U7XG59XG5kdCB7XG4gIGZvbnQtd2VpZ2h0OiBib2xkO1xufVxuZGQge1xuICBtYXJnaW4tbGVmdDogMDsgLy8gVW5kbyBicm93c2VyIGRlZmF1bHRcbn1cblxuLy8gSG9yaXpvbnRhbCBkZXNjcmlwdGlvbiBsaXN0c1xuLy9cbi8vIERlZmF1bHRzIHRvIGJlaW5nIHN0YWNrZWQgd2l0aG91dCBhbnkgb2YgdGhlIGJlbG93IHN0eWxlcyBhcHBsaWVkLCB1bnRpbCB0aGVcbi8vIGdyaWQgYnJlYWtwb2ludCBpcyByZWFjaGVkIChkZWZhdWx0IG9mIH43NjhweCkuXG5cbi5kbC1ob3Jpem9udGFsIHtcbiAgZGQge1xuICAgIEBpbmNsdWRlIGNsZWFyZml4OyAvLyBDbGVhciB0aGUgZmxvYXRlZCBgZHRgIGlmIGFuIGVtcHR5IGBkZGAgaXMgcHJlc2VudFxuICB9XG5cbiAgQG1lZGlhIChtaW4td2lkdGg6ICRkbC1ob3Jpem9udGFsLWJyZWFrcG9pbnQpIHtcbiAgICBkdCB7XG4gICAgICBmbG9hdDogbGVmdDtcbiAgICAgIHdpZHRoOiAoJGRsLWhvcml6b250YWwtb2Zmc2V0IC0gMjApO1xuICAgICAgY2xlYXI6IGxlZnQ7XG4gICAgICB0ZXh0LWFsaWduOiByaWdodDtcbiAgICAgIEBpbmNsdWRlIHRleHQtb3ZlcmZsb3c7XG4gICAgfVxuICAgIGRkIHtcbiAgICAgIG1hcmdpbi1sZWZ0OiAkZGwtaG9yaXpvbnRhbC1vZmZzZXQ7XG4gICAgfVxuICB9XG59XG5cblxuLy8gTWlzY1xuLy8gLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuXG4vLyBBYmJyZXZpYXRpb25zIGFuZCBhY3Jvbnltc1xuYWJiclt0aXRsZV0sXG4vLyBBZGQgZGF0YS0qIGF0dHJpYnV0ZSB0byBoZWxwIG91dCBvdXIgdG9vbHRpcCBwbHVnaW4sIHBlciBodHRwczovL2dpdGh1Yi5jb20vdHdicy9ib290c3RyYXAvaXNzdWVzLzUyNTdcbmFiYnJbZGF0YS1vcmlnaW5hbC10aXRsZV0ge1xuICBjdXJzb3I6IGhlbHA7XG4gIGJvcmRlci1ib3R0b206IDFweCBkb3R0ZWQgJGFiYnItYm9yZGVyLWNvbG9yO1xufVxuLmluaXRpYWxpc20ge1xuICBmb250LXNpemU6IDkwJTtcbiAgQGV4dGVuZCAudGV4dC11cHBlcmNhc2U7XG59XG5cbi8vIEJsb2NrcXVvdGVzXG5ibG9ja3F1b3RlIHtcbiAgcGFkZGluZzogKCRsaW5lLWhlaWdodC1jb21wdXRlZCAvIDIpICRsaW5lLWhlaWdodC1jb21wdXRlZDtcbiAgbWFyZ2luOiAwIDAgJGxpbmUtaGVpZ2h0LWNvbXB1dGVkO1xuICBmb250LXNpemU6ICRibG9ja3F1b3RlLWZvbnQtc2l6ZTtcbiAgYm9yZGVyLWxlZnQ6IDVweCBzb2xpZCAkYmxvY2txdW90ZS1ib3JkZXItY29sb3I7XG5cbiAgcCxcbiAgdWwsXG4gIG9sIHtcbiAgICAmOmxhc3QtY2hpbGQge1xuICAgICAgbWFyZ2luLWJvdHRvbTogMDtcbiAgICB9XG4gIH1cblxuICAvLyBOb3RlOiBEZXByZWNhdGVkIHNtYWxsIGFuZCAuc21hbGwgYXMgb2YgdjMuMS4wXG4gIC8vIENvbnRleHQ6IGh0dHBzOi8vZ2l0aHViLmNvbS90d2JzL2Jvb3RzdHJhcC9pc3N1ZXMvMTE2NjBcbiAgZm9vdGVyLFxuICBzbWFsbCxcbiAgLnNtYWxsIHtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICBmb250LXNpemU6IDgwJTsgLy8gYmFjayB0byBkZWZhdWx0IGZvbnQtc2l6ZVxuICAgIGxpbmUtaGVpZ2h0OiAkbGluZS1oZWlnaHQtYmFzZTtcbiAgICBjb2xvcjogJGJsb2NrcXVvdGUtc21hbGwtY29sb3I7XG5cbiAgICAmOmJlZm9yZSB7XG4gICAgICBjb250ZW50OiAnXFwyMDE0IFxcMDBBMCc7IC8vIGVtIGRhc2gsIG5ic3BcbiAgICB9XG4gIH1cbn1cblxuLy8gT3Bwb3NpdGUgYWxpZ25tZW50IG9mIGJsb2NrcXVvdGVcbi8vXG4vLyBIZWFkcyB1cDogYGJsb2NrcXVvdGUucHVsbC1yaWdodGAgaGFzIGJlZW4gZGVwcmVjYXRlZCBhcyBvZiB2My4xLjAuXG4uYmxvY2txdW90ZS1yZXZlcnNlLFxuYmxvY2txdW90ZS5wdWxsLXJpZ2h0IHtcbiAgcGFkZGluZy1yaWdodDogMTVweDtcbiAgcGFkZGluZy1sZWZ0OiAwO1xuICBib3JkZXItcmlnaHQ6IDVweCBzb2xpZCAkYmxvY2txdW90ZS1ib3JkZXItY29sb3I7XG4gIGJvcmRlci1sZWZ0OiAwO1xuICB0ZXh0LWFsaWduOiByaWdodDtcblxuICAvLyBBY2NvdW50IGZvciBjaXRhdGlvblxuICBmb290ZXIsXG4gIHNtYWxsLFxuICAuc21hbGwge1xuICAgICY6YmVmb3JlIHsgY29udGVudDogJyc7IH1cbiAgICAmOmFmdGVyIHtcbiAgICAgIGNvbnRlbnQ6ICdcXDAwQTAgXFwyMDE0JzsgLy8gbmJzcCwgZW0gZGFzaFxuICAgIH1cbiAgfVxufVxuXG4vLyBBZGRyZXNzZXNcbmFkZHJlc3Mge1xuICBtYXJnaW4tYm90dG9tOiAkbGluZS1oZWlnaHQtY29tcHV0ZWQ7XG4gIGZvbnQtc3R5bGU6IG5vcm1hbDtcbiAgbGluZS1oZWlnaHQ6ICRsaW5lLWhlaWdodC1iYXNlO1xufVxuIiwiLy8gVHlwb2dyYXBoeVxuXG4vLyBbY29udmVydGVyXSAkcGFyZW50IGhhY2tcbkBtaXhpbiB0ZXh0LWVtcGhhc2lzLXZhcmlhbnQoJHBhcmVudCwgJGNvbG9yKSB7XG4gICN7JHBhcmVudH0ge1xuICAgIGNvbG9yOiAkY29sb3I7XG4gIH1cbiAgYSN7JHBhcmVudH06aG92ZXIsXG4gIGEjeyRwYXJlbnR9OmZvY3VzIHtcbiAgICBjb2xvcjogZGFya2VuKCRjb2xvciwgMTAlKTtcbiAgfVxufVxuIiwiLy8gQ29udGV4dHVhbCBiYWNrZ3JvdW5kc1xuXG4vLyBbY29udmVydGVyXSAkcGFyZW50IGhhY2tcbkBtaXhpbiBiZy12YXJpYW50KCRwYXJlbnQsICRjb2xvcikge1xuICAjeyRwYXJlbnR9IHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkY29sb3I7XG4gIH1cbiAgYSN7JHBhcmVudH06aG92ZXIsXG4gIGEjeyRwYXJlbnR9OmZvY3VzIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiBkYXJrZW4oJGNvbG9yLCAxMCUpO1xuICB9XG59XG4iLCIvLyBDbGVhcmZpeFxuLy9cbi8vIEZvciBtb2Rlcm4gYnJvd3NlcnNcbi8vIDEuIFRoZSBzcGFjZSBjb250ZW50IGlzIG9uZSB3YXkgdG8gYXZvaWQgYW4gT3BlcmEgYnVnIHdoZW4gdGhlXG4vLyAgICBjb250ZW50ZWRpdGFibGUgYXR0cmlidXRlIGlzIGluY2x1ZGVkIGFueXdoZXJlIGVsc2UgaW4gdGhlIGRvY3VtZW50LlxuLy8gICAgT3RoZXJ3aXNlIGl0IGNhdXNlcyBzcGFjZSB0byBhcHBlYXIgYXQgdGhlIHRvcCBhbmQgYm90dG9tIG9mIGVsZW1lbnRzXG4vLyAgICB0aGF0IGFyZSBjbGVhcmZpeGVkLlxuLy8gMi4gVGhlIHVzZSBvZiBgdGFibGVgIHJhdGhlciB0aGFuIGBibG9ja2AgaXMgb25seSBuZWNlc3NhcnkgaWYgdXNpbmdcbi8vICAgIGA6YmVmb3JlYCB0byBjb250YWluIHRoZSB0b3AtbWFyZ2lucyBvZiBjaGlsZCBlbGVtZW50cy5cbi8vXG4vLyBTb3VyY2U6IGh0dHA6Ly9uaWNvbGFzZ2FsbGFnaGVyLmNvbS9taWNyby1jbGVhcmZpeC1oYWNrL1xuXG5AbWl4aW4gY2xlYXJmaXgoKSB7XG4gICY6YmVmb3JlLFxuICAmOmFmdGVyIHtcbiAgICBjb250ZW50OiBcIiBcIjsgLy8gMVxuICAgIGRpc3BsYXk6IHRhYmxlOyAvLyAyXG4gIH1cbiAgJjphZnRlciB7XG4gICAgY2xlYXI6IGJvdGg7XG4gIH1cbn1cbiIsIi8vIFRleHQgb3ZlcmZsb3dcbi8vIFJlcXVpcmVzIGlubGluZS1ibG9jayBvciBibG9jayBmb3IgcHJvcGVyIHN0eWxpbmdcblxuQG1peGluIHRleHQtb3ZlcmZsb3coKSB7XG4gIG92ZXJmbG93OiBoaWRkZW47XG4gIHRleHQtb3ZlcmZsb3c6IGVsbGlwc2lzO1xuICB3aGl0ZS1zcGFjZTogbm93cmFwO1xufVxuIiwiLy9cbi8vIENvZGUgKGlubGluZSBhbmQgYmxvY2spXG4vLyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuXG5cbi8vIElubGluZSBhbmQgYmxvY2sgY29kZSBzdHlsZXNcbmNvZGUsXG5rYmQsXG5wcmUsXG5zYW1wIHtcbiAgZm9udC1mYW1pbHk6ICRmb250LWZhbWlseS1tb25vc3BhY2U7XG59XG5cbi8vIElubGluZSBjb2RlXG5jb2RlIHtcbiAgcGFkZGluZzogMnB4IDRweDtcbiAgZm9udC1zaXplOiA5MCU7XG4gIGNvbG9yOiAkY29kZS1jb2xvcjtcbiAgYmFja2dyb3VuZC1jb2xvcjogJGNvZGUtYmc7XG4gIGJvcmRlci1yYWRpdXM6ICRib3JkZXItcmFkaXVzLWJhc2U7XG59XG5cbi8vIFVzZXIgaW5wdXQgdHlwaWNhbGx5IGVudGVyZWQgdmlhIGtleWJvYXJkXG5rYmQge1xuICBwYWRkaW5nOiAycHggNHB4O1xuICBmb250LXNpemU6IDkwJTtcbiAgY29sb3I6ICRrYmQtY29sb3I7XG4gIGJhY2tncm91bmQtY29sb3I6ICRrYmQtYmc7XG4gIGJvcmRlci1yYWRpdXM6ICRib3JkZXItcmFkaXVzLXNtYWxsO1xuICBib3gtc2hhZG93OiBpbnNldCAwIC0xcHggMCByZ2JhKDAsMCwwLC4yNSk7XG5cbiAga2JkIHtcbiAgICBwYWRkaW5nOiAwO1xuICAgIGZvbnQtc2l6ZTogMTAwJTtcbiAgICBmb250LXdlaWdodDogYm9sZDtcbiAgICBib3gtc2hhZG93OiBub25lO1xuICB9XG59XG5cbi8vIEJsb2NrcyBvZiBjb2RlXG5wcmUge1xuICBkaXNwbGF5OiBibG9jaztcbiAgcGFkZGluZzogKCgkbGluZS1oZWlnaHQtY29tcHV0ZWQgLSAxKSAvIDIpO1xuICBtYXJnaW46IDAgMCAoJGxpbmUtaGVpZ2h0LWNvbXB1dGVkIC8gMik7XG4gIGZvbnQtc2l6ZTogKCRmb250LXNpemUtYmFzZSAtIDEpOyAvLyAxNHB4IHRvIDEzcHhcbiAgbGluZS1oZWlnaHQ6ICRsaW5lLWhlaWdodC1iYXNlO1xuICB3b3JkLWJyZWFrOiBicmVhay1hbGw7XG4gIHdvcmQtd3JhcDogYnJlYWstd29yZDtcbiAgY29sb3I6ICRwcmUtY29sb3I7XG4gIGJhY2tncm91bmQtY29sb3I6ICRwcmUtYmc7XG4gIGJvcmRlcjogMXB4IHNvbGlkICRwcmUtYm9yZGVyLWNvbG9yO1xuICBib3JkZXItcmFkaXVzOiAkYm9yZGVyLXJhZGl1cy1iYXNlO1xuXG4gIC8vIEFjY291bnQgZm9yIHNvbWUgY29kZSBvdXRwdXRzIHRoYXQgcGxhY2UgY29kZSB0YWdzIGluIHByZSB0YWdzXG4gIGNvZGUge1xuICAgIHBhZGRpbmc6IDA7XG4gICAgZm9udC1zaXplOiBpbmhlcml0O1xuICAgIGNvbG9yOiBpbmhlcml0O1xuICAgIHdoaXRlLXNwYWNlOiBwcmUtd3JhcDtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcbiAgICBib3JkZXItcmFkaXVzOiAwO1xuICB9XG59XG5cbi8vIEVuYWJsZSBzY3JvbGxhYmxlIGJsb2NrcyBvZiBjb2RlXG4ucHJlLXNjcm9sbGFibGUge1xuICBtYXgtaGVpZ2h0OiAkcHJlLXNjcm9sbGFibGUtbWF4LWhlaWdodDtcbiAgb3ZlcmZsb3cteTogc2Nyb2xsO1xufVxuIiwiLy9cbi8vIEdyaWQgc3lzdGVtXG4vLyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuXG5cbi8vIENvbnRhaW5lciB3aWR0aHNcbi8vXG4vLyBTZXQgdGhlIGNvbnRhaW5lciB3aWR0aCwgYW5kIG92ZXJyaWRlIGl0IGZvciBmaXhlZCBuYXZiYXJzIGluIG1lZGlhIHF1ZXJpZXMuXG5cbi5jb250YWluZXIge1xuICBAaW5jbHVkZSBjb250YWluZXItZml4ZWQ7XG5cbiAgQG1lZGlhIChtaW4td2lkdGg6ICRzY3JlZW4tc20tbWluKSB7XG4gICAgd2lkdGg6ICRjb250YWluZXItc207XG4gIH1cbiAgQG1lZGlhIChtaW4td2lkdGg6ICRzY3JlZW4tbWQtbWluKSB7XG4gICAgd2lkdGg6ICRjb250YWluZXItbWQ7XG4gIH1cbiAgQG1lZGlhIChtaW4td2lkdGg6ICRzY3JlZW4tbGctbWluKSB7XG4gICAgd2lkdGg6ICRjb250YWluZXItbGc7XG4gIH1cbn1cblxuXG4vLyBGbHVpZCBjb250YWluZXJcbi8vXG4vLyBVdGlsaXplcyB0aGUgbWl4aW4gbWVhbnQgZm9yIGZpeGVkIHdpZHRoIGNvbnRhaW5lcnMsIGJ1dCB3aXRob3V0IGFueSBkZWZpbmVkXG4vLyB3aWR0aCBmb3IgZmx1aWQsIGZ1bGwgd2lkdGggbGF5b3V0cy5cblxuLmNvbnRhaW5lci1mbHVpZCB7XG4gIEBpbmNsdWRlIGNvbnRhaW5lci1maXhlZDtcbn1cblxuXG4vLyBSb3dcbi8vXG4vLyBSb3dzIGNvbnRhaW4gYW5kIGNsZWFyIHRoZSBmbG9hdHMgb2YgeW91ciBjb2x1bW5zLlxuXG4ucm93IHtcbiAgQGluY2x1ZGUgbWFrZS1yb3c7XG59XG5cblxuLy8gQ29sdW1uc1xuLy9cbi8vIENvbW1vbiBzdHlsZXMgZm9yIHNtYWxsIGFuZCBsYXJnZSBncmlkIGNvbHVtbnNcblxuQGluY2x1ZGUgbWFrZS1ncmlkLWNvbHVtbnM7XG5cblxuLy8gRXh0cmEgc21hbGwgZ3JpZFxuLy9cbi8vIENvbHVtbnMsIG9mZnNldHMsIHB1c2hlcywgYW5kIHB1bGxzIGZvciBleHRyYSBzbWFsbCBkZXZpY2VzIGxpa2Vcbi8vIHNtYXJ0cGhvbmVzLlxuXG5AaW5jbHVkZSBtYWtlLWdyaWQoeHMpO1xuXG5cbi8vIFNtYWxsIGdyaWRcbi8vXG4vLyBDb2x1bW5zLCBvZmZzZXRzLCBwdXNoZXMsIGFuZCBwdWxscyBmb3IgdGhlIHNtYWxsIGRldmljZSByYW5nZSwgZnJvbSBwaG9uZXNcbi8vIHRvIHRhYmxldHMuXG5cbkBtZWRpYSAobWluLXdpZHRoOiAkc2NyZWVuLXNtLW1pbikge1xuICBAaW5jbHVkZSBtYWtlLWdyaWQoc20pO1xufVxuXG5cbi8vIE1lZGl1bSBncmlkXG4vL1xuLy8gQ29sdW1ucywgb2Zmc2V0cywgcHVzaGVzLCBhbmQgcHVsbHMgZm9yIHRoZSBkZXNrdG9wIGRldmljZSByYW5nZS5cblxuQG1lZGlhIChtaW4td2lkdGg6ICRzY3JlZW4tbWQtbWluKSB7XG4gIEBpbmNsdWRlIG1ha2UtZ3JpZChtZCk7XG59XG5cblxuLy8gTGFyZ2UgZ3JpZFxuLy9cbi8vIENvbHVtbnMsIG9mZnNldHMsIHB1c2hlcywgYW5kIHB1bGxzIGZvciB0aGUgbGFyZ2UgZGVza3RvcCBkZXZpY2UgcmFuZ2UuXG5cbkBtZWRpYSAobWluLXdpZHRoOiAkc2NyZWVuLWxnLW1pbikge1xuICBAaW5jbHVkZSBtYWtlLWdyaWQobGcpO1xufVxuIiwiLy8gR3JpZCBzeXN0ZW1cbi8vXG4vLyBHZW5lcmF0ZSBzZW1hbnRpYyBncmlkIGNvbHVtbnMgd2l0aCB0aGVzZSBtaXhpbnMuXG5cbi8vIENlbnRlcmVkIGNvbnRhaW5lciBlbGVtZW50XG5AbWl4aW4gY29udGFpbmVyLWZpeGVkKCRndXR0ZXI6ICRncmlkLWd1dHRlci13aWR0aCkge1xuICBtYXJnaW4tcmlnaHQ6IGF1dG87XG4gIG1hcmdpbi1sZWZ0OiBhdXRvO1xuICBwYWRkaW5nLWxlZnQ6ICBmbG9vcigoJGd1dHRlciAvIDIpKTtcbiAgcGFkZGluZy1yaWdodDogY2VpbCgoJGd1dHRlciAvIDIpKTtcbiAgQGluY2x1ZGUgY2xlYXJmaXg7XG59XG5cbi8vIENyZWF0ZXMgYSB3cmFwcGVyIGZvciBhIHNlcmllcyBvZiBjb2x1bW5zXG5AbWl4aW4gbWFrZS1yb3coJGd1dHRlcjogJGdyaWQtZ3V0dGVyLXdpZHRoKSB7XG4gIG1hcmdpbi1sZWZ0OiAgY2VpbCgoJGd1dHRlciAvIC0yKSk7XG4gIG1hcmdpbi1yaWdodDogZmxvb3IoKCRndXR0ZXIgLyAtMikpO1xuICBAaW5jbHVkZSBjbGVhcmZpeDtcbn1cblxuLy8gR2VuZXJhdGUgdGhlIGV4dHJhIHNtYWxsIGNvbHVtbnNcbkBtaXhpbiBtYWtlLXhzLWNvbHVtbigkY29sdW1ucywgJGd1dHRlcjogJGdyaWQtZ3V0dGVyLXdpZHRoKSB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgZmxvYXQ6IGxlZnQ7XG4gIHdpZHRoOiBwZXJjZW50YWdlKCgkY29sdW1ucyAvICRncmlkLWNvbHVtbnMpKTtcbiAgbWluLWhlaWdodDogMXB4O1xuICBwYWRkaW5nLWxlZnQ6ICAoJGd1dHRlciAvIDIpO1xuICBwYWRkaW5nLXJpZ2h0OiAoJGd1dHRlciAvIDIpO1xufVxuQG1peGluIG1ha2UteHMtY29sdW1uLW9mZnNldCgkY29sdW1ucykge1xuICBtYXJnaW4tbGVmdDogcGVyY2VudGFnZSgoJGNvbHVtbnMgLyAkZ3JpZC1jb2x1bW5zKSk7XG59XG5AbWl4aW4gbWFrZS14cy1jb2x1bW4tcHVzaCgkY29sdW1ucykge1xuICBsZWZ0OiBwZXJjZW50YWdlKCgkY29sdW1ucyAvICRncmlkLWNvbHVtbnMpKTtcbn1cbkBtaXhpbiBtYWtlLXhzLWNvbHVtbi1wdWxsKCRjb2x1bW5zKSB7XG4gIHJpZ2h0OiBwZXJjZW50YWdlKCgkY29sdW1ucyAvICRncmlkLWNvbHVtbnMpKTtcbn1cblxuLy8gR2VuZXJhdGUgdGhlIHNtYWxsIGNvbHVtbnNcbkBtaXhpbiBtYWtlLXNtLWNvbHVtbigkY29sdW1ucywgJGd1dHRlcjogJGdyaWQtZ3V0dGVyLXdpZHRoKSB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgbWluLWhlaWdodDogMXB4O1xuICBwYWRkaW5nLWxlZnQ6ICAoJGd1dHRlciAvIDIpO1xuICBwYWRkaW5nLXJpZ2h0OiAoJGd1dHRlciAvIDIpO1xuXG4gIEBtZWRpYSAobWluLXdpZHRoOiAkc2NyZWVuLXNtLW1pbikge1xuICAgIGZsb2F0OiBsZWZ0O1xuICAgIHdpZHRoOiBwZXJjZW50YWdlKCgkY29sdW1ucyAvICRncmlkLWNvbHVtbnMpKTtcbiAgfVxufVxuQG1peGluIG1ha2Utc20tY29sdW1uLW9mZnNldCgkY29sdW1ucykge1xuICBAbWVkaWEgKG1pbi13aWR0aDogJHNjcmVlbi1zbS1taW4pIHtcbiAgICBtYXJnaW4tbGVmdDogcGVyY2VudGFnZSgoJGNvbHVtbnMgLyAkZ3JpZC1jb2x1bW5zKSk7XG4gIH1cbn1cbkBtaXhpbiBtYWtlLXNtLWNvbHVtbi1wdXNoKCRjb2x1bW5zKSB7XG4gIEBtZWRpYSAobWluLXdpZHRoOiAkc2NyZWVuLXNtLW1pbikge1xuICAgIGxlZnQ6IHBlcmNlbnRhZ2UoKCRjb2x1bW5zIC8gJGdyaWQtY29sdW1ucykpO1xuICB9XG59XG5AbWl4aW4gbWFrZS1zbS1jb2x1bW4tcHVsbCgkY29sdW1ucykge1xuICBAbWVkaWEgKG1pbi13aWR0aDogJHNjcmVlbi1zbS1taW4pIHtcbiAgICByaWdodDogcGVyY2VudGFnZSgoJGNvbHVtbnMgLyAkZ3JpZC1jb2x1bW5zKSk7XG4gIH1cbn1cblxuLy8gR2VuZXJhdGUgdGhlIG1lZGl1bSBjb2x1bW5zXG5AbWl4aW4gbWFrZS1tZC1jb2x1bW4oJGNvbHVtbnMsICRndXR0ZXI6ICRncmlkLWd1dHRlci13aWR0aCkge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIG1pbi1oZWlnaHQ6IDFweDtcbiAgcGFkZGluZy1sZWZ0OiAgKCRndXR0ZXIgLyAyKTtcbiAgcGFkZGluZy1yaWdodDogKCRndXR0ZXIgLyAyKTtcblxuICBAbWVkaWEgKG1pbi13aWR0aDogJHNjcmVlbi1tZC1taW4pIHtcbiAgICBmbG9hdDogbGVmdDtcbiAgICB3aWR0aDogcGVyY2VudGFnZSgoJGNvbHVtbnMgLyAkZ3JpZC1jb2x1bW5zKSk7XG4gIH1cbn1cbkBtaXhpbiBtYWtlLW1kLWNvbHVtbi1vZmZzZXQoJGNvbHVtbnMpIHtcbiAgQG1lZGlhIChtaW4td2lkdGg6ICRzY3JlZW4tbWQtbWluKSB7XG4gICAgbWFyZ2luLWxlZnQ6IHBlcmNlbnRhZ2UoKCRjb2x1bW5zIC8gJGdyaWQtY29sdW1ucykpO1xuICB9XG59XG5AbWl4aW4gbWFrZS1tZC1jb2x1bW4tcHVzaCgkY29sdW1ucykge1xuICBAbWVkaWEgKG1pbi13aWR0aDogJHNjcmVlbi1tZC1taW4pIHtcbiAgICBsZWZ0OiBwZXJjZW50YWdlKCgkY29sdW1ucyAvICRncmlkLWNvbHVtbnMpKTtcbiAgfVxufVxuQG1peGluIG1ha2UtbWQtY29sdW1uLXB1bGwoJGNvbHVtbnMpIHtcbiAgQG1lZGlhIChtaW4td2lkdGg6ICRzY3JlZW4tbWQtbWluKSB7XG4gICAgcmlnaHQ6IHBlcmNlbnRhZ2UoKCRjb2x1bW5zIC8gJGdyaWQtY29sdW1ucykpO1xuICB9XG59XG5cbi8vIEdlbmVyYXRlIHRoZSBsYXJnZSBjb2x1bW5zXG5AbWl4aW4gbWFrZS1sZy1jb2x1bW4oJGNvbHVtbnMsICRndXR0ZXI6ICRncmlkLWd1dHRlci13aWR0aCkge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIG1pbi1oZWlnaHQ6IDFweDtcbiAgcGFkZGluZy1sZWZ0OiAgKCRndXR0ZXIgLyAyKTtcbiAgcGFkZGluZy1yaWdodDogKCRndXR0ZXIgLyAyKTtcblxuICBAbWVkaWEgKG1pbi13aWR0aDogJHNjcmVlbi1sZy1taW4pIHtcbiAgICBmbG9hdDogbGVmdDtcbiAgICB3aWR0aDogcGVyY2VudGFnZSgoJGNvbHVtbnMgLyAkZ3JpZC1jb2x1bW5zKSk7XG4gIH1cbn1cbkBtaXhpbiBtYWtlLWxnLWNvbHVtbi1vZmZzZXQoJGNvbHVtbnMpIHtcbiAgQG1lZGlhIChtaW4td2lkdGg6ICRzY3JlZW4tbGctbWluKSB7XG4gICAgbWFyZ2luLWxlZnQ6IHBlcmNlbnRhZ2UoKCRjb2x1bW5zIC8gJGdyaWQtY29sdW1ucykpO1xuICB9XG59XG5AbWl4aW4gbWFrZS1sZy1jb2x1bW4tcHVzaCgkY29sdW1ucykge1xuICBAbWVkaWEgKG1pbi13aWR0aDogJHNjcmVlbi1sZy1taW4pIHtcbiAgICBsZWZ0OiBwZXJjZW50YWdlKCgkY29sdW1ucyAvICRncmlkLWNvbHVtbnMpKTtcbiAgfVxufVxuQG1peGluIG1ha2UtbGctY29sdW1uLXB1bGwoJGNvbHVtbnMpIHtcbiAgQG1lZGlhIChtaW4td2lkdGg6ICRzY3JlZW4tbGctbWluKSB7XG4gICAgcmlnaHQ6IHBlcmNlbnRhZ2UoKCRjb2x1bW5zIC8gJGdyaWQtY29sdW1ucykpO1xuICB9XG59XG4iLCIvLyBGcmFtZXdvcmsgZ3JpZCBnZW5lcmF0aW9uXG4vL1xuLy8gVXNlZCBvbmx5IGJ5IEJvb3RzdHJhcCB0byBnZW5lcmF0ZSB0aGUgY29ycmVjdCBudW1iZXIgb2YgZ3JpZCBjbGFzc2VzIGdpdmVuXG4vLyBhbnkgdmFsdWUgb2YgYCRncmlkLWNvbHVtbnNgLlxuXG4vLyBbY29udmVydGVyXSBUaGlzIGlzIGRlZmluZWQgcmVjdXJzaXZlbHkgaW4gTEVTUywgYnV0IFNhc3Mgc3VwcG9ydHMgcmVhbCBsb29wc1xuQG1peGluIG1ha2UtZ3JpZC1jb2x1bW5zKCRpOiAxLCAkbGlzdDogXCIuY29sLXhzLSN7JGl9LCAuY29sLXNtLSN7JGl9LCAuY29sLW1kLSN7JGl9LCAuY29sLWxnLSN7JGl9XCIpIHtcbiAgQGZvciAkaSBmcm9tICgxICsgMSkgdGhyb3VnaCAkZ3JpZC1jb2x1bW5zIHtcbiAgICAkbGlzdDogXCIjeyRsaXN0fSwgLmNvbC14cy0jeyRpfSwgLmNvbC1zbS0jeyRpfSwgLmNvbC1tZC0jeyRpfSwgLmNvbC1sZy0jeyRpfVwiO1xuICB9XG4gICN7JGxpc3R9IHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgLy8gUHJldmVudCBjb2x1bW5zIGZyb20gY29sbGFwc2luZyB3aGVuIGVtcHR5XG4gICAgbWluLWhlaWdodDogMXB4O1xuICAgIC8vIElubmVyIGd1dHRlciB2aWEgcGFkZGluZ1xuICAgIHBhZGRpbmctbGVmdDogIGNlaWwoKCRncmlkLWd1dHRlci13aWR0aCAvIDIpKTtcbiAgICBwYWRkaW5nLXJpZ2h0OiBmbG9vcigoJGdyaWQtZ3V0dGVyLXdpZHRoIC8gMikpO1xuICB9XG59XG5cblxuLy8gW2NvbnZlcnRlcl0gVGhpcyBpcyBkZWZpbmVkIHJlY3Vyc2l2ZWx5IGluIExFU1MsIGJ1dCBTYXNzIHN1cHBvcnRzIHJlYWwgbG9vcHNcbkBtaXhpbiBmbG9hdC1ncmlkLWNvbHVtbnMoJGNsYXNzLCAkaTogMSwgJGxpc3Q6IFwiLmNvbC0jeyRjbGFzc30tI3skaX1cIikge1xuICBAZm9yICRpIGZyb20gKDEgKyAxKSB0aHJvdWdoICRncmlkLWNvbHVtbnMge1xuICAgICRsaXN0OiBcIiN7JGxpc3R9LCAuY29sLSN7JGNsYXNzfS0jeyRpfVwiO1xuICB9XG4gICN7JGxpc3R9IHtcbiAgICBmbG9hdDogbGVmdDtcbiAgfVxufVxuXG5cbkBtaXhpbiBjYWxjLWdyaWQtY29sdW1uKCRpbmRleCwgJGNsYXNzLCAkdHlwZSkge1xuICBAaWYgKCR0eXBlID09IHdpZHRoKSBhbmQgKCRpbmRleCA+IDApIHtcbiAgICAuY29sLSN7JGNsYXNzfS0jeyRpbmRleH0ge1xuICAgICAgd2lkdGg6IHBlcmNlbnRhZ2UoKCRpbmRleCAvICRncmlkLWNvbHVtbnMpKTtcbiAgICB9XG4gIH1cbiAgQGlmICgkdHlwZSA9PSBwdXNoKSBhbmQgKCRpbmRleCA+IDApIHtcbiAgICAuY29sLSN7JGNsYXNzfS1wdXNoLSN7JGluZGV4fSB7XG4gICAgICBsZWZ0OiBwZXJjZW50YWdlKCgkaW5kZXggLyAkZ3JpZC1jb2x1bW5zKSk7XG4gICAgfVxuICB9XG4gIEBpZiAoJHR5cGUgPT0gcHVzaCkgYW5kICgkaW5kZXggPT0gMCkge1xuICAgIC5jb2wtI3skY2xhc3N9LXB1c2gtMCB7XG4gICAgICBsZWZ0OiBhdXRvO1xuICAgIH1cbiAgfVxuICBAaWYgKCR0eXBlID09IHB1bGwpIGFuZCAoJGluZGV4ID4gMCkge1xuICAgIC5jb2wtI3skY2xhc3N9LXB1bGwtI3skaW5kZXh9IHtcbiAgICAgIHJpZ2h0OiBwZXJjZW50YWdlKCgkaW5kZXggLyAkZ3JpZC1jb2x1bW5zKSk7XG4gICAgfVxuICB9XG4gIEBpZiAoJHR5cGUgPT0gcHVsbCkgYW5kICgkaW5kZXggPT0gMCkge1xuICAgIC5jb2wtI3skY2xhc3N9LXB1bGwtMCB7XG4gICAgICByaWdodDogYXV0bztcbiAgICB9XG4gIH1cbiAgQGlmICgkdHlwZSA9PSBvZmZzZXQpIHtcbiAgICAuY29sLSN7JGNsYXNzfS1vZmZzZXQtI3skaW5kZXh9IHtcbiAgICAgIG1hcmdpbi1sZWZ0OiBwZXJjZW50YWdlKCgkaW5kZXggLyAkZ3JpZC1jb2x1bW5zKSk7XG4gICAgfVxuICB9XG59XG5cbi8vIFtjb252ZXJ0ZXJdIFRoaXMgaXMgZGVmaW5lZCByZWN1cnNpdmVseSBpbiBMRVNTLCBidXQgU2FzcyBzdXBwb3J0cyByZWFsIGxvb3BzXG5AbWl4aW4gbG9vcC1ncmlkLWNvbHVtbnMoJGNvbHVtbnMsICRjbGFzcywgJHR5cGUpIHtcbiAgQGZvciAkaSBmcm9tIDAgdGhyb3VnaCAkY29sdW1ucyB7XG4gICAgQGluY2x1ZGUgY2FsYy1ncmlkLWNvbHVtbigkaSwgJGNsYXNzLCAkdHlwZSk7XG4gIH1cbn1cblxuXG4vLyBDcmVhdGUgZ3JpZCBmb3Igc3BlY2lmaWMgY2xhc3NcbkBtaXhpbiBtYWtlLWdyaWQoJGNsYXNzKSB7XG4gIEBpbmNsdWRlIGZsb2F0LWdyaWQtY29sdW1ucygkY2xhc3MpO1xuICBAaW5jbHVkZSBsb29wLWdyaWQtY29sdW1ucygkZ3JpZC1jb2x1bW5zLCAkY2xhc3MsIHdpZHRoKTtcbiAgQGluY2x1ZGUgbG9vcC1ncmlkLWNvbHVtbnMoJGdyaWQtY29sdW1ucywgJGNsYXNzLCBwdWxsKTtcbiAgQGluY2x1ZGUgbG9vcC1ncmlkLWNvbHVtbnMoJGdyaWQtY29sdW1ucywgJGNsYXNzLCBwdXNoKTtcbiAgQGluY2x1ZGUgbG9vcC1ncmlkLWNvbHVtbnMoJGdyaWQtY29sdW1ucywgJGNsYXNzLCBvZmZzZXQpO1xufVxuIiwiLy9cbi8vIFRhYmxlc1xuLy8gLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cblxuXG50YWJsZSB7XG4gIGJhY2tncm91bmQtY29sb3I6ICR0YWJsZS1iZztcbn1cbmNhcHRpb24ge1xuICBwYWRkaW5nLXRvcDogJHRhYmxlLWNlbGwtcGFkZGluZztcbiAgcGFkZGluZy1ib3R0b206ICR0YWJsZS1jZWxsLXBhZGRpbmc7XG4gIGNvbG9yOiAkdGV4dC1tdXRlZDtcbiAgdGV4dC1hbGlnbjogbGVmdDtcbn1cbnRoIHtcbiAgdGV4dC1hbGlnbjogbGVmdDtcbn1cblxuXG4vLyBCYXNlbGluZSBzdHlsZXNcblxuLnRhYmxlIHtcbiAgd2lkdGg6IDEwMCU7XG4gIG1heC13aWR0aDogMTAwJTtcbiAgbWFyZ2luLWJvdHRvbTogJGxpbmUtaGVpZ2h0LWNvbXB1dGVkO1xuICAvLyBDZWxsc1xuICA+IHRoZWFkLFxuICA+IHRib2R5LFxuICA+IHRmb290IHtcbiAgICA+IHRyIHtcbiAgICAgID4gdGgsXG4gICAgICA+IHRkIHtcbiAgICAgICAgcGFkZGluZzogJHRhYmxlLWNlbGwtcGFkZGluZztcbiAgICAgICAgbGluZS1oZWlnaHQ6ICRsaW5lLWhlaWdodC1iYXNlO1xuICAgICAgICB2ZXJ0aWNhbC1hbGlnbjogdG9wO1xuICAgICAgICBib3JkZXItdG9wOiAxcHggc29saWQgJHRhYmxlLWJvcmRlci1jb2xvcjtcbiAgICAgIH1cbiAgICB9XG4gIH1cbiAgLy8gQm90dG9tIGFsaWduIGZvciBjb2x1bW4gaGVhZGluZ3NcbiAgPiB0aGVhZCA+IHRyID4gdGgge1xuICAgIHZlcnRpY2FsLWFsaWduOiBib3R0b207XG4gICAgYm9yZGVyLWJvdHRvbTogMnB4IHNvbGlkICR0YWJsZS1ib3JkZXItY29sb3I7XG4gIH1cbiAgLy8gUmVtb3ZlIHRvcCBib3JkZXIgZnJvbSB0aGVhZCBieSBkZWZhdWx0XG4gID4gY2FwdGlvbiArIHRoZWFkLFxuICA+IGNvbGdyb3VwICsgdGhlYWQsXG4gID4gdGhlYWQ6Zmlyc3QtY2hpbGQge1xuICAgID4gdHI6Zmlyc3QtY2hpbGQge1xuICAgICAgPiB0aCxcbiAgICAgID4gdGQge1xuICAgICAgICBib3JkZXItdG9wOiAwO1xuICAgICAgfVxuICAgIH1cbiAgfVxuICAvLyBBY2NvdW50IGZvciBtdWx0aXBsZSB0Ym9keSBpbnN0YW5jZXNcbiAgPiB0Ym9keSArIHRib2R5IHtcbiAgICBib3JkZXItdG9wOiAycHggc29saWQgJHRhYmxlLWJvcmRlci1jb2xvcjtcbiAgfVxuXG4gIC8vIE5lc3RpbmdcbiAgLnRhYmxlIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkYm9keS1iZztcbiAgfVxufVxuXG5cbi8vIENvbmRlbnNlZCB0YWJsZSB3LyBoYWxmIHBhZGRpbmdcblxuLnRhYmxlLWNvbmRlbnNlZCB7XG4gID4gdGhlYWQsXG4gID4gdGJvZHksXG4gID4gdGZvb3Qge1xuICAgID4gdHIge1xuICAgICAgPiB0aCxcbiAgICAgID4gdGQge1xuICAgICAgICBwYWRkaW5nOiAkdGFibGUtY29uZGVuc2VkLWNlbGwtcGFkZGluZztcbiAgICAgIH1cbiAgICB9XG4gIH1cbn1cblxuXG4vLyBCb3JkZXJlZCB2ZXJzaW9uXG4vL1xuLy8gQWRkIGJvcmRlcnMgYWxsIGFyb3VuZCB0aGUgdGFibGUgYW5kIGJldHdlZW4gYWxsIHRoZSBjb2x1bW5zLlxuXG4udGFibGUtYm9yZGVyZWQge1xuICBib3JkZXI6IDFweCBzb2xpZCAkdGFibGUtYm9yZGVyLWNvbG9yO1xuICA+IHRoZWFkLFxuICA+IHRib2R5LFxuICA+IHRmb290IHtcbiAgICA+IHRyIHtcbiAgICAgID4gdGgsXG4gICAgICA+IHRkIHtcbiAgICAgICAgYm9yZGVyOiAxcHggc29saWQgJHRhYmxlLWJvcmRlci1jb2xvcjtcbiAgICAgIH1cbiAgICB9XG4gIH1cbiAgPiB0aGVhZCA+IHRyIHtcbiAgICA+IHRoLFxuICAgID4gdGQge1xuICAgICAgYm9yZGVyLWJvdHRvbS13aWR0aDogMnB4O1xuICAgIH1cbiAgfVxufVxuXG5cbi8vIFplYnJhLXN0cmlwaW5nXG4vL1xuLy8gRGVmYXVsdCB6ZWJyYS1zdHJpcGUgc3R5bGVzIChhbHRlcm5hdGluZyBncmF5IGFuZCB0cmFuc3BhcmVudCBiYWNrZ3JvdW5kcylcblxuLnRhYmxlLXN0cmlwZWQge1xuICA+IHRib2R5ID4gdHI6bnRoLW9mLXR5cGUob2RkKSB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogJHRhYmxlLWJnLWFjY2VudDtcbiAgfVxufVxuXG5cbi8vIEhvdmVyIGVmZmVjdFxuLy9cbi8vIFBsYWNlZCBoZXJlIHNpbmNlIGl0IGhhcyB0byBjb21lIGFmdGVyIHRoZSBwb3RlbnRpYWwgemVicmEgc3RyaXBpbmdcblxuLnRhYmxlLWhvdmVyIHtcbiAgPiB0Ym9keSA+IHRyOmhvdmVyIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkdGFibGUtYmctaG92ZXI7XG4gIH1cbn1cblxuXG4vLyBUYWJsZSBjZWxsIHNpemluZ1xuLy9cbi8vIFJlc2V0IGRlZmF1bHQgdGFibGUgYmVoYXZpb3JcblxudGFibGUgY29sW2NsYXNzKj1cImNvbC1cIl0ge1xuICBwb3NpdGlvbjogc3RhdGljOyAvLyBQcmV2ZW50IGJvcmRlciBoaWRpbmcgaW4gRmlyZWZveCBhbmQgSUU5LTExIChzZWUgaHR0cHM6Ly9naXRodWIuY29tL3R3YnMvYm9vdHN0cmFwL2lzc3Vlcy8xMTYyMylcbiAgZmxvYXQ6IG5vbmU7XG4gIGRpc3BsYXk6IHRhYmxlLWNvbHVtbjtcbn1cbnRhYmxlIHtcbiAgdGQsXG4gIHRoIHtcbiAgICAmW2NsYXNzKj1cImNvbC1cIl0ge1xuICAgICAgcG9zaXRpb246IHN0YXRpYzsgLy8gUHJldmVudCBib3JkZXIgaGlkaW5nIGluIEZpcmVmb3ggYW5kIElFOS0xMSAoc2VlIGh0dHBzOi8vZ2l0aHViLmNvbS90d2JzL2Jvb3RzdHJhcC9pc3N1ZXMvMTE2MjMpXG4gICAgICBmbG9hdDogbm9uZTtcbiAgICAgIGRpc3BsYXk6IHRhYmxlLWNlbGw7XG4gICAgfVxuICB9XG59XG5cblxuLy8gVGFibGUgYmFja2dyb3VuZHNcbi8vXG4vLyBFeGFjdCBzZWxlY3RvcnMgYmVsb3cgcmVxdWlyZWQgdG8gb3ZlcnJpZGUgYC50YWJsZS1zdHJpcGVkYCBhbmQgcHJldmVudFxuLy8gaW5oZXJpdGFuY2UgdG8gbmVzdGVkIHRhYmxlcy5cblxuLy8gR2VuZXJhdGUgdGhlIGNvbnRleHR1YWwgdmFyaWFudHNcbkBpbmNsdWRlIHRhYmxlLXJvdy12YXJpYW50KCdhY3RpdmUnLCAkdGFibGUtYmctYWN0aXZlKTtcbkBpbmNsdWRlIHRhYmxlLXJvdy12YXJpYW50KCdzdWNjZXNzJywgJHN0YXRlLXN1Y2Nlc3MtYmcpO1xuQGluY2x1ZGUgdGFibGUtcm93LXZhcmlhbnQoJ2luZm8nLCAkc3RhdGUtaW5mby1iZyk7XG5AaW5jbHVkZSB0YWJsZS1yb3ctdmFyaWFudCgnd2FybmluZycsICRzdGF0ZS13YXJuaW5nLWJnKTtcbkBpbmNsdWRlIHRhYmxlLXJvdy12YXJpYW50KCdkYW5nZXInLCAkc3RhdGUtZGFuZ2VyLWJnKTtcblxuXG4vLyBSZXNwb25zaXZlIHRhYmxlc1xuLy9cbi8vIFdyYXAgeW91ciB0YWJsZXMgaW4gYC50YWJsZS1yZXNwb25zaXZlYCBhbmQgd2UnbGwgbWFrZSB0aGVtIG1vYmlsZSBmcmllbmRseVxuLy8gYnkgZW5hYmxpbmcgaG9yaXpvbnRhbCBzY3JvbGxpbmcuIE9ubHkgYXBwbGllcyA8NzY4cHguIEV2ZXJ5dGhpbmcgYWJvdmUgdGhhdFxuLy8gd2lsbCBkaXNwbGF5IG5vcm1hbGx5LlxuXG4udGFibGUtcmVzcG9uc2l2ZSB7XG4gIG92ZXJmbG93LXg6IGF1dG87XG4gIG1pbi1oZWlnaHQ6IDAuMDElOyAvLyBXb3JrYXJvdW5kIGZvciBJRTkgYnVnIChzZWUgaHR0cHM6Ly9naXRodWIuY29tL3R3YnMvYm9vdHN0cmFwL2lzc3Vlcy8xNDgzNylcblxuICBAbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiAkc2NyZWVuLXhzLW1heCkge1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIG1hcmdpbi1ib3R0b206ICgkbGluZS1oZWlnaHQtY29tcHV0ZWQgKiAwLjc1KTtcbiAgICBvdmVyZmxvdy15OiBoaWRkZW47XG4gICAgLW1zLW92ZXJmbG93LXN0eWxlOiAtbXMtYXV0b2hpZGluZy1zY3JvbGxiYXI7XG4gICAgYm9yZGVyOiAxcHggc29saWQgJHRhYmxlLWJvcmRlci1jb2xvcjtcblxuICAgIC8vIFRpZ2h0ZW4gdXAgc3BhY2luZ1xuICAgID4gLnRhYmxlIHtcbiAgICAgIG1hcmdpbi1ib3R0b206IDA7XG5cbiAgICAgIC8vIEVuc3VyZSB0aGUgY29udGVudCBkb2Vzbid0IHdyYXBcbiAgICAgID4gdGhlYWQsXG4gICAgICA+IHRib2R5LFxuICAgICAgPiB0Zm9vdCB7XG4gICAgICAgID4gdHIge1xuICAgICAgICAgID4gdGgsXG4gICAgICAgICAgPiB0ZCB7XG4gICAgICAgICAgICB3aGl0ZS1zcGFjZTogbm93cmFwO1xuICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cblxuICAgIC8vIFNwZWNpYWwgb3ZlcnJpZGVzIGZvciB0aGUgYm9yZGVyZWQgdGFibGVzXG4gICAgPiAudGFibGUtYm9yZGVyZWQge1xuICAgICAgYm9yZGVyOiAwO1xuXG4gICAgICAvLyBOdWtlIHRoZSBhcHByb3ByaWF0ZSBib3JkZXJzIHNvIHRoYXQgdGhlIHBhcmVudCBjYW4gaGFuZGxlIHRoZW1cbiAgICAgID4gdGhlYWQsXG4gICAgICA+IHRib2R5LFxuICAgICAgPiB0Zm9vdCB7XG4gICAgICAgID4gdHIge1xuICAgICAgICAgID4gdGg6Zmlyc3QtY2hpbGQsXG4gICAgICAgICAgPiB0ZDpmaXJzdC1jaGlsZCB7XG4gICAgICAgICAgICBib3JkZXItbGVmdDogMDtcbiAgICAgICAgICB9XG4gICAgICAgICAgPiB0aDpsYXN0LWNoaWxkLFxuICAgICAgICAgID4gdGQ6bGFzdC1jaGlsZCB7XG4gICAgICAgICAgICBib3JkZXItcmlnaHQ6IDA7XG4gICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICB9XG5cbiAgICAgIC8vIE9ubHkgbnVrZSB0aGUgbGFzdCByb3cncyBib3R0b20tYm9yZGVyIGluIGB0Ym9keWAgYW5kIGB0Zm9vdGAgc2luY2VcbiAgICAgIC8vIGNoYW5jZXMgYXJlIHRoZXJlIHdpbGwgYmUgb25seSBvbmUgYHRyYCBpbiBhIGB0aGVhZGAgYW5kIHRoYXQgd291bGRcbiAgICAgIC8vIHJlbW92ZSB0aGUgYm9yZGVyIGFsdG9nZXRoZXIuXG4gICAgICA+IHRib2R5LFxuICAgICAgPiB0Zm9vdCB7XG4gICAgICAgID4gdHI6bGFzdC1jaGlsZCB7XG4gICAgICAgICAgPiB0aCxcbiAgICAgICAgICA+IHRkIHtcbiAgICAgICAgICAgIGJvcmRlci1ib3R0b206IDA7XG4gICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICB9XG5cbiAgICB9XG4gIH1cbn1cbiIsIi8vIFRhYmxlc1xuXG5AbWl4aW4gdGFibGUtcm93LXZhcmlhbnQoJHN0YXRlLCAkYmFja2dyb3VuZCkge1xuICAvLyBFeGFjdCBzZWxlY3RvcnMgYmVsb3cgcmVxdWlyZWQgdG8gb3ZlcnJpZGUgYC50YWJsZS1zdHJpcGVkYCBhbmQgcHJldmVudFxuICAvLyBpbmhlcml0YW5jZSB0byBuZXN0ZWQgdGFibGVzLlxuICAudGFibGUgPiB0aGVhZCA+IHRyLFxuICAudGFibGUgPiB0Ym9keSA+IHRyLFxuICAudGFibGUgPiB0Zm9vdCA+IHRyIHtcbiAgICA+IHRkLiN7JHN0YXRlfSxcbiAgICA+IHRoLiN7JHN0YXRlfSxcbiAgICAmLiN7JHN0YXRlfSA+IHRkLFxuICAgICYuI3skc3RhdGV9ID4gdGgge1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogJGJhY2tncm91bmQ7XG4gICAgfVxuICB9XG5cbiAgLy8gSG92ZXIgc3RhdGVzIGZvciBgLnRhYmxlLWhvdmVyYFxuICAvLyBOb3RlOiB0aGlzIGlzIG5vdCBhdmFpbGFibGUgZm9yIGNlbGxzIG9yIHJvd3Mgd2l0aGluIGB0aGVhZGAgb3IgYHRmb290YC5cbiAgLnRhYmxlLWhvdmVyID4gdGJvZHkgPiB0ciB7XG4gICAgPiB0ZC4jeyRzdGF0ZX06aG92ZXIsXG4gICAgPiB0aC4jeyRzdGF0ZX06aG92ZXIsXG4gICAgJi4jeyRzdGF0ZX06aG92ZXIgPiB0ZCxcbiAgICAmOmhvdmVyID4gLiN7JHN0YXRlfSxcbiAgICAmLiN7JHN0YXRlfTpob3ZlciA+IHRoIHtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6IGRhcmtlbigkYmFja2dyb3VuZCwgNSUpO1xuICAgIH1cbiAgfVxufVxuIiwiLy9cbi8vIEZvcm1zXG4vLyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuXG5cbi8vIE5vcm1hbGl6ZSBub24tY29udHJvbHNcbi8vXG4vLyBSZXN0eWxlIGFuZCBiYXNlbGluZSBub24tY29udHJvbCBmb3JtIGVsZW1lbnRzLlxuXG5maWVsZHNldCB7XG4gIHBhZGRpbmc6IDA7XG4gIG1hcmdpbjogMDtcbiAgYm9yZGVyOiAwO1xuICAvLyBDaHJvbWUgYW5kIEZpcmVmb3ggc2V0IGEgYG1pbi13aWR0aDogbWluLWNvbnRlbnQ7YCBvbiBmaWVsZHNldHMsXG4gIC8vIHNvIHdlIHJlc2V0IHRoYXQgdG8gZW5zdXJlIGl0IGJlaGF2ZXMgbW9yZSBsaWtlIGEgc3RhbmRhcmQgYmxvY2sgZWxlbWVudC5cbiAgLy8gU2VlIGh0dHBzOi8vZ2l0aHViLmNvbS90d2JzL2Jvb3RzdHJhcC9pc3N1ZXMvMTIzNTkuXG4gIG1pbi13aWR0aDogMDtcbn1cblxubGVnZW5kIHtcbiAgZGlzcGxheTogYmxvY2s7XG4gIHdpZHRoOiAxMDAlO1xuICBwYWRkaW5nOiAwO1xuICBtYXJnaW4tYm90dG9tOiAkbGluZS1oZWlnaHQtY29tcHV0ZWQ7XG4gIGZvbnQtc2l6ZTogKCRmb250LXNpemUtYmFzZSAqIDEuNSk7XG4gIGxpbmUtaGVpZ2h0OiBpbmhlcml0O1xuICBjb2xvcjogJGxlZ2VuZC1jb2xvcjtcbiAgYm9yZGVyOiAwO1xuICBib3JkZXItYm90dG9tOiAxcHggc29saWQgJGxlZ2VuZC1ib3JkZXItY29sb3I7XG59XG5cbmxhYmVsIHtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICBtYXgtd2lkdGg6IDEwMCU7IC8vIEZvcmNlIElFOCB0byB3cmFwIGxvbmcgY29udGVudCAoc2VlIGh0dHBzOi8vZ2l0aHViLmNvbS90d2JzL2Jvb3RzdHJhcC9pc3N1ZXMvMTMxNDEpXG4gIG1hcmdpbi1ib3R0b206IDVweDtcbiAgZm9udC13ZWlnaHQ6IGJvbGQ7XG59XG5cblxuLy8gTm9ybWFsaXplIGZvcm0gY29udHJvbHNcbi8vXG4vLyBXaGlsZSBtb3N0IG9mIG91ciBmb3JtIHN0eWxlcyByZXF1aXJlIGV4dHJhIGNsYXNzZXMsIHNvbWUgYmFzaWMgbm9ybWFsaXphdGlvblxuLy8gaXMgcmVxdWlyZWQgdG8gZW5zdXJlIG9wdGltdW0gZGlzcGxheSB3aXRoIG9yIHdpdGhvdXQgdGhvc2UgY2xhc3NlcyB0byBiZXR0ZXJcbi8vIGFkZHJlc3MgYnJvd3NlciBpbmNvbnNpc3RlbmNpZXMuXG5cbi8vIE92ZXJyaWRlIGNvbnRlbnQtYm94IGluIE5vcm1hbGl6ZSAoKiBpc24ndCBzcGVjaWZpYyBlbm91Z2gpXG5pbnB1dFt0eXBlPVwic2VhcmNoXCJdIHtcbiAgQGluY2x1ZGUgYm94LXNpemluZyhib3JkZXItYm94KTtcbn1cblxuLy8gUG9zaXRpb24gcmFkaW9zIGFuZCBjaGVja2JveGVzIGJldHRlclxuaW5wdXRbdHlwZT1cInJhZGlvXCJdLFxuaW5wdXRbdHlwZT1cImNoZWNrYm94XCJdIHtcbiAgbWFyZ2luOiA0cHggMCAwO1xuICBtYXJnaW4tdG9wOiAxcHggXFw5OyAvLyBJRTgtOVxuICBsaW5lLWhlaWdodDogbm9ybWFsO1xufVxuXG5pbnB1dFt0eXBlPVwiZmlsZVwiXSB7XG4gIGRpc3BsYXk6IGJsb2NrO1xufVxuXG4vLyBNYWtlIHJhbmdlIGlucHV0cyBiZWhhdmUgbGlrZSB0ZXh0dWFsIGZvcm0gY29udHJvbHNcbmlucHV0W3R5cGU9XCJyYW5nZVwiXSB7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICB3aWR0aDogMTAwJTtcbn1cblxuLy8gTWFrZSBtdWx0aXBsZSBzZWxlY3QgZWxlbWVudHMgaGVpZ2h0IG5vdCBmaXhlZFxuc2VsZWN0W211bHRpcGxlXSxcbnNlbGVjdFtzaXplXSB7XG4gIGhlaWdodDogYXV0bztcbn1cblxuLy8gRm9jdXMgZm9yIGZpbGUsIHJhZGlvLCBhbmQgY2hlY2tib3hcbmlucHV0W3R5cGU9XCJmaWxlXCJdOmZvY3VzLFxuaW5wdXRbdHlwZT1cInJhZGlvXCJdOmZvY3VzLFxuaW5wdXRbdHlwZT1cImNoZWNrYm94XCJdOmZvY3VzIHtcbiAgQGluY2x1ZGUgdGFiLWZvY3VzO1xufVxuXG4vLyBBZGp1c3Qgb3V0cHV0IGVsZW1lbnRcbm91dHB1dCB7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBwYWRkaW5nLXRvcDogKCRwYWRkaW5nLWJhc2UtdmVydGljYWwgKyAxKTtcbiAgZm9udC1zaXplOiAkZm9udC1zaXplLWJhc2U7XG4gIGxpbmUtaGVpZ2h0OiAkbGluZS1oZWlnaHQtYmFzZTtcbiAgY29sb3I6ICRpbnB1dC1jb2xvcjtcbn1cblxuXG4vLyBDb21tb24gZm9ybSBjb250cm9sc1xuLy9cbi8vIFNoYXJlZCBzaXplIGFuZCB0eXBlIHJlc2V0cyBmb3IgZm9ybSBjb250cm9scy4gQXBwbHkgYC5mb3JtLWNvbnRyb2xgIHRvIGFueVxuLy8gb2YgdGhlIGZvbGxvd2luZyBmb3JtIGNvbnRyb2xzOlxuLy9cbi8vIHNlbGVjdFxuLy8gdGV4dGFyZWFcbi8vIGlucHV0W3R5cGU9XCJ0ZXh0XCJdXG4vLyBpbnB1dFt0eXBlPVwicGFzc3dvcmRcIl1cbi8vIGlucHV0W3R5cGU9XCJkYXRldGltZVwiXVxuLy8gaW5wdXRbdHlwZT1cImRhdGV0aW1lLWxvY2FsXCJdXG4vLyBpbnB1dFt0eXBlPVwiZGF0ZVwiXVxuLy8gaW5wdXRbdHlwZT1cIm1vbnRoXCJdXG4vLyBpbnB1dFt0eXBlPVwidGltZVwiXVxuLy8gaW5wdXRbdHlwZT1cIndlZWtcIl1cbi8vIGlucHV0W3R5cGU9XCJudW1iZXJcIl1cbi8vIGlucHV0W3R5cGU9XCJlbWFpbFwiXVxuLy8gaW5wdXRbdHlwZT1cInVybFwiXVxuLy8gaW5wdXRbdHlwZT1cInNlYXJjaFwiXVxuLy8gaW5wdXRbdHlwZT1cInRlbFwiXVxuLy8gaW5wdXRbdHlwZT1cImNvbG9yXCJdXG5cbi5mb3JtLWNvbnRyb2wge1xuICBkaXNwbGF5OiBibG9jaztcbiAgd2lkdGg6IDEwMCU7XG4gIGhlaWdodDogJGlucHV0LWhlaWdodC1iYXNlOyAvLyBNYWtlIGlucHV0cyBhdCBsZWFzdCB0aGUgaGVpZ2h0IG9mIHRoZWlyIGJ1dHRvbiBjb3VudGVycGFydCAoYmFzZSBsaW5lLWhlaWdodCArIHBhZGRpbmcgKyBib3JkZXIpXG4gIHBhZGRpbmc6ICRwYWRkaW5nLWJhc2UtdmVydGljYWwgJHBhZGRpbmctYmFzZS1ob3Jpem9udGFsO1xuICBmb250LXNpemU6ICRmb250LXNpemUtYmFzZTtcbiAgbGluZS1oZWlnaHQ6ICRsaW5lLWhlaWdodC1iYXNlO1xuICBjb2xvcjogJGlucHV0LWNvbG9yO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAkaW5wdXQtYmc7XG4gIGJhY2tncm91bmQtaW1hZ2U6IG5vbmU7IC8vIFJlc2V0IHVudXN1YWwgRmlyZWZveC1vbi1BbmRyb2lkIGRlZmF1bHQgc3R5bGU7IHNlZSBodHRwczovL2dpdGh1Yi5jb20vbmVjb2xhcy9ub3JtYWxpemUuY3NzL2lzc3Vlcy8yMTRcbiAgYm9yZGVyOiAxcHggc29saWQgJGlucHV0LWJvcmRlcjtcbiAgYm9yZGVyLXJhZGl1czogJGlucHV0LWJvcmRlci1yYWRpdXM7IC8vIE5vdGU6IFRoaXMgaGFzIG5vIGVmZmVjdCBvbiA8c2VsZWN0PnMgaW4gc29tZSBicm93c2VycywgZHVlIHRvIHRoZSBsaW1pdGVkIHN0eWxhYmlsaXR5IG9mIDxzZWxlY3Q+cyBpbiBDU1MuXG4gIEBpbmNsdWRlIGJveC1zaGFkb3coaW5zZXQgMCAxcHggMXB4IHJnYmEoMCwwLDAsLjA3NSkpO1xuICBAaW5jbHVkZSB0cmFuc2l0aW9uKGJvcmRlci1jb2xvciBlYXNlLWluLW91dCAuMTVzLCBib3gtc2hhZG93IGVhc2UtaW4tb3V0IC4xNXMpO1xuXG4gIC8vIEN1c3RvbWl6ZSB0aGUgYDpmb2N1c2Agc3RhdGUgdG8gaW1pdGF0ZSBuYXRpdmUgV2ViS2l0IHN0eWxlcy5cbiAgQGluY2x1ZGUgZm9ybS1jb250cm9sLWZvY3VzO1xuXG4gIC8vIFBsYWNlaG9sZGVyXG4gIEBpbmNsdWRlIHBsYWNlaG9sZGVyO1xuXG4gIC8vIFVuc3R5bGUgdGhlIGNhcmV0IG9uIGA8c2VsZWN0PmBzIGluIElFMTArLlxuICAmOjotbXMtZXhwYW5kIHtcbiAgICBib3JkZXI6IDA7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gIH1cblxuICAvLyBEaXNhYmxlZCBhbmQgcmVhZC1vbmx5IGlucHV0c1xuICAvL1xuICAvLyBIVE1MNSBzYXlzIHRoYXQgY29udHJvbHMgdW5kZXIgYSBmaWVsZHNldCA+IGxlZ2VuZDpmaXJzdC1jaGlsZCB3b24ndCBiZVxuICAvLyBkaXNhYmxlZCBpZiB0aGUgZmllbGRzZXQgaXMgZGlzYWJsZWQuIER1ZSB0byBpbXBsZW1lbnRhdGlvbiBkaWZmaWN1bHR5LCB3ZVxuICAvLyBkb24ndCBob25vciB0aGF0IGVkZ2UgY2FzZTsgd2Ugc3R5bGUgdGhlbSBhcyBkaXNhYmxlZCBhbnl3YXkuXG4gICZbZGlzYWJsZWRdLFxuICAmW3JlYWRvbmx5XSxcbiAgZmllbGRzZXRbZGlzYWJsZWRdICYge1xuICAgIGJhY2tncm91bmQtY29sb3I6ICRpbnB1dC1iZy1kaXNhYmxlZDtcbiAgICBvcGFjaXR5OiAxOyAvLyBpT1MgZml4IGZvciB1bnJlYWRhYmxlIGRpc2FibGVkIGNvbnRlbnQ7IHNlZSBodHRwczovL2dpdGh1Yi5jb20vdHdicy9ib290c3RyYXAvaXNzdWVzLzExNjU1XG4gIH1cblxuICAmW2Rpc2FibGVkXSxcbiAgZmllbGRzZXRbZGlzYWJsZWRdICYge1xuICAgIGN1cnNvcjogJGN1cnNvci1kaXNhYmxlZDtcbiAgfVxuXG4gIC8vIFtjb252ZXJ0ZXJdIGV4dHJhY3RlZCB0ZXh0YXJlYSYgdG8gdGV4dGFyZWEuZm9ybS1jb250cm9sXG59XG5cbi8vIFJlc2V0IGhlaWdodCBmb3IgYHRleHRhcmVhYHNcbnRleHRhcmVhLmZvcm0tY29udHJvbCB7XG4gIGhlaWdodDogYXV0bztcbn1cblxuXG4vLyBTZWFyY2ggaW5wdXRzIGluIGlPU1xuLy9cbi8vIFRoaXMgb3ZlcnJpZGVzIHRoZSBleHRyYSByb3VuZGVkIGNvcm5lcnMgb24gc2VhcmNoIGlucHV0cyBpbiBpT1Mgc28gdGhhdCBvdXJcbi8vIGAuZm9ybS1jb250cm9sYCBjbGFzcyBjYW4gcHJvcGVybHkgc3R5bGUgdGhlbS4gTm90ZSB0aGF0IHRoaXMgY2Fubm90IHNpbXBseVxuLy8gYmUgYWRkZWQgdG8gYC5mb3JtLWNvbnRyb2xgIGFzIGl0J3Mgbm90IHNwZWNpZmljIGVub3VnaC4gRm9yIGRldGFpbHMsIHNlZVxuLy8gaHR0cHM6Ly9naXRodWIuY29tL3R3YnMvYm9vdHN0cmFwL2lzc3Vlcy8xMTU4Ni5cblxuaW5wdXRbdHlwZT1cInNlYXJjaFwiXSB7XG4gIC13ZWJraXQtYXBwZWFyYW5jZTogbm9uZTtcbn1cblxuXG4vLyBTcGVjaWFsIHN0eWxlcyBmb3IgaU9TIHRlbXBvcmFsIGlucHV0c1xuLy9cbi8vIEluIE1vYmlsZSBTYWZhcmksIHNldHRpbmcgYGRpc3BsYXk6IGJsb2NrYCBvbiB0ZW1wb3JhbCBpbnB1dHMgY2F1c2VzIHRoZVxuLy8gdGV4dCB3aXRoaW4gdGhlIGlucHV0IHRvIGJlY29tZSB2ZXJ0aWNhbGx5IG1pc2FsaWduZWQuIEFzIGEgd29ya2Fyb3VuZCwgd2Vcbi8vIHNldCBhIHBpeGVsIGxpbmUtaGVpZ2h0IHRoYXQgbWF0Y2hlcyB0aGUgZ2l2ZW4gaGVpZ2h0IG9mIHRoZSBpbnB1dCwgYnV0IG9ubHlcbi8vIGZvciBTYWZhcmkuIFNlZSBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MTM5ODQ4XG4vL1xuLy8gTm90ZSB0aGF0IGFzIG9mIDkuMywgaU9TIGRvZXNuJ3Qgc3VwcG9ydCBgd2Vla2AuXG5cbkBtZWRpYSBzY3JlZW4gYW5kICgtd2Via2l0LW1pbi1kZXZpY2UtcGl4ZWwtcmF0aW86IDApIHtcbiAgaW5wdXRbdHlwZT1cImRhdGVcIl0sXG4gIGlucHV0W3R5cGU9XCJ0aW1lXCJdLFxuICBpbnB1dFt0eXBlPVwiZGF0ZXRpbWUtbG9jYWxcIl0sXG4gIGlucHV0W3R5cGU9XCJtb250aFwiXSB7XG4gICAgJi5mb3JtLWNvbnRyb2wge1xuICAgICAgbGluZS1oZWlnaHQ6ICRpbnB1dC1oZWlnaHQtYmFzZTtcbiAgICB9XG5cbiAgICAmLmlucHV0LXNtLFxuICAgIC5pbnB1dC1ncm91cC1zbSAmIHtcbiAgICAgIGxpbmUtaGVpZ2h0OiAkaW5wdXQtaGVpZ2h0LXNtYWxsO1xuICAgIH1cblxuICAgICYuaW5wdXQtbGcsXG4gICAgLmlucHV0LWdyb3VwLWxnICYge1xuICAgICAgbGluZS1oZWlnaHQ6ICRpbnB1dC1oZWlnaHQtbGFyZ2U7XG4gICAgfVxuICB9XG59XG5cblxuLy8gRm9ybSBncm91cHNcbi8vXG4vLyBEZXNpZ25lZCB0byBoZWxwIHdpdGggdGhlIG9yZ2FuaXphdGlvbiBhbmQgc3BhY2luZyBvZiB2ZXJ0aWNhbCBmb3Jtcy4gRm9yXG4vLyBob3Jpem9udGFsIGZvcm1zLCB1c2UgdGhlIHByZWRlZmluZWQgZ3JpZCBjbGFzc2VzLlxuXG4uZm9ybS1ncm91cCB7XG4gIG1hcmdpbi1ib3R0b206ICRmb3JtLWdyb3VwLW1hcmdpbi1ib3R0b207XG59XG5cblxuLy8gQ2hlY2tib3hlcyBhbmQgcmFkaW9zXG4vL1xuLy8gSW5kZW50IHRoZSBsYWJlbHMgdG8gcG9zaXRpb24gcmFkaW9zL2NoZWNrYm94ZXMgYXMgaGFuZ2luZyBjb250cm9scy5cblxuLnJhZGlvLFxuLmNoZWNrYm94IHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBkaXNwbGF5OiBibG9jaztcbiAgbWFyZ2luLXRvcDogMTBweDtcbiAgbWFyZ2luLWJvdHRvbTogMTBweDtcblxuICBsYWJlbCB7XG4gICAgbWluLWhlaWdodDogJGxpbmUtaGVpZ2h0LWNvbXB1dGVkOyAvLyBFbnN1cmUgdGhlIGlucHV0IGRvZXNuJ3QganVtcCB3aGVuIHRoZXJlIGlzIG5vIHRleHRcbiAgICBwYWRkaW5nLWxlZnQ6IDIwcHg7XG4gICAgbWFyZ2luLWJvdHRvbTogMDtcbiAgICBmb250LXdlaWdodDogbm9ybWFsO1xuICAgIGN1cnNvcjogcG9pbnRlcjtcbiAgfVxufVxuLnJhZGlvIGlucHV0W3R5cGU9XCJyYWRpb1wiXSxcbi5yYWRpby1pbmxpbmUgaW5wdXRbdHlwZT1cInJhZGlvXCJdLFxuLmNoZWNrYm94IGlucHV0W3R5cGU9XCJjaGVja2JveFwiXSxcbi5jaGVja2JveC1pbmxpbmUgaW5wdXRbdHlwZT1cImNoZWNrYm94XCJdIHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICBtYXJnaW4tbGVmdDogLTIwcHg7XG4gIG1hcmdpbi10b3A6IDRweCBcXDk7XG59XG5cbi5yYWRpbyArIC5yYWRpbyxcbi5jaGVja2JveCArIC5jaGVja2JveCB7XG4gIG1hcmdpbi10b3A6IC01cHg7IC8vIE1vdmUgdXAgc2libGluZyByYWRpb3Mgb3IgY2hlY2tib3hlcyBmb3IgdGlnaHRlciBzcGFjaW5nXG59XG5cbi8vIFJhZGlvcyBhbmQgY2hlY2tib3hlcyBvbiBzYW1lIGxpbmVcbi5yYWRpby1pbmxpbmUsXG4uY2hlY2tib3gtaW5saW5lIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIHBhZGRpbmctbGVmdDogMjBweDtcbiAgbWFyZ2luLWJvdHRvbTogMDtcbiAgdmVydGljYWwtYWxpZ246IG1pZGRsZTtcbiAgZm9udC13ZWlnaHQ6IG5vcm1hbDtcbiAgY3Vyc29yOiBwb2ludGVyO1xufVxuLnJhZGlvLWlubGluZSArIC5yYWRpby1pbmxpbmUsXG4uY2hlY2tib3gtaW5saW5lICsgLmNoZWNrYm94LWlubGluZSB7XG4gIG1hcmdpbi10b3A6IDA7XG4gIG1hcmdpbi1sZWZ0OiAxMHB4OyAvLyBzcGFjZSBvdXQgY29uc2VjdXRpdmUgaW5saW5lIGNvbnRyb2xzXG59XG5cbi8vIEFwcGx5IHNhbWUgZGlzYWJsZWQgY3Vyc29yIHR3ZWFrIGFzIGZvciBpbnB1dHNcbi8vIFNvbWUgc3BlY2lhbCBjYXJlIGlzIG5lZWRlZCBiZWNhdXNlIDxsYWJlbD5zIGRvbid0IGluaGVyaXQgdGhlaXIgcGFyZW50J3MgYGN1cnNvcmAuXG4vL1xuLy8gTm90ZTogTmVpdGhlciByYWRpb3Mgbm9yIGNoZWNrYm94ZXMgY2FuIGJlIHJlYWRvbmx5LlxuaW5wdXRbdHlwZT1cInJhZGlvXCJdLFxuaW5wdXRbdHlwZT1cImNoZWNrYm94XCJdIHtcbiAgJltkaXNhYmxlZF0sXG4gICYuZGlzYWJsZWQsXG4gIGZpZWxkc2V0W2Rpc2FibGVkXSAmIHtcbiAgICBjdXJzb3I6ICRjdXJzb3ItZGlzYWJsZWQ7XG4gIH1cbn1cbi8vIFRoZXNlIGNsYXNzZXMgYXJlIHVzZWQgZGlyZWN0bHkgb24gPGxhYmVsPnNcbi5yYWRpby1pbmxpbmUsXG4uY2hlY2tib3gtaW5saW5lIHtcbiAgJi5kaXNhYmxlZCxcbiAgZmllbGRzZXRbZGlzYWJsZWRdICYge1xuICAgIGN1cnNvcjogJGN1cnNvci1kaXNhYmxlZDtcbiAgfVxufVxuLy8gVGhlc2UgY2xhc3NlcyBhcmUgdXNlZCBvbiBlbGVtZW50cyB3aXRoIDxsYWJlbD4gZGVzY2VuZGFudHNcbi5yYWRpbyxcbi5jaGVja2JveCB7XG4gICYuZGlzYWJsZWQsXG4gIGZpZWxkc2V0W2Rpc2FibGVkXSAmIHtcbiAgICBsYWJlbCB7XG4gICAgICBjdXJzb3I6ICRjdXJzb3ItZGlzYWJsZWQ7XG4gICAgfVxuICB9XG59XG5cblxuLy8gU3RhdGljIGZvcm0gY29udHJvbCB0ZXh0XG4vL1xuLy8gQXBwbHkgY2xhc3MgdG8gYSBgcGAgZWxlbWVudCB0byBtYWtlIGFueSBzdHJpbmcgb2YgdGV4dCBhbGlnbiB3aXRoIGxhYmVscyBpblxuLy8gYSBob3Jpem9udGFsIGZvcm0gbGF5b3V0LlxuXG4uZm9ybS1jb250cm9sLXN0YXRpYyB7XG4gIC8vIFNpemUgaXQgYXBwcm9wcmlhdGVseSBuZXh0IHRvIHJlYWwgZm9ybSBjb250cm9sc1xuICBwYWRkaW5nLXRvcDogKCRwYWRkaW5nLWJhc2UtdmVydGljYWwgKyAxKTtcbiAgcGFkZGluZy1ib3R0b206ICgkcGFkZGluZy1iYXNlLXZlcnRpY2FsICsgMSk7XG4gIC8vIFJlbW92ZSBkZWZhdWx0IG1hcmdpbiBmcm9tIGBwYFxuICBtYXJnaW4tYm90dG9tOiAwO1xuICBtaW4taGVpZ2h0OiAoJGxpbmUtaGVpZ2h0LWNvbXB1dGVkICsgJGZvbnQtc2l6ZS1iYXNlKTtcblxuICAmLmlucHV0LWxnLFxuICAmLmlucHV0LXNtIHtcbiAgICBwYWRkaW5nLWxlZnQ6IDA7XG4gICAgcGFkZGluZy1yaWdodDogMDtcbiAgfVxufVxuXG5cbi8vIEZvcm0gY29udHJvbCBzaXppbmdcbi8vXG4vLyBCdWlsZCBvbiBgLmZvcm0tY29udHJvbGAgd2l0aCBtb2RpZmllciBjbGFzc2VzIHRvIGRlY3JlYXNlIG9yIGluY3JlYXNlIHRoZVxuLy8gaGVpZ2h0IGFuZCBmb250LXNpemUgb2YgZm9ybSBjb250cm9scy5cbi8vXG4vLyBUaGUgYC5mb3JtLWdyb3VwLSogZm9ybS1jb250cm9sYCB2YXJpYXRpb25zIGFyZSBzYWRseSBkdXBsaWNhdGVkIHRvIGF2b2lkIHRoZVxuLy8gaXNzdWUgZG9jdW1lbnRlZCBpbiBodHRwczovL2dpdGh1Yi5jb20vdHdicy9ib290c3RyYXAvaXNzdWVzLzE1MDc0LlxuXG5AaW5jbHVkZSBpbnB1dC1zaXplKCcuaW5wdXQtc20nLCAkaW5wdXQtaGVpZ2h0LXNtYWxsLCAkcGFkZGluZy1zbWFsbC12ZXJ0aWNhbCwgJHBhZGRpbmctc21hbGwtaG9yaXpvbnRhbCwgJGZvbnQtc2l6ZS1zbWFsbCwgJGxpbmUtaGVpZ2h0LXNtYWxsLCAkaW5wdXQtYm9yZGVyLXJhZGl1cy1zbWFsbCk7XG4uZm9ybS1ncm91cC1zbSB7XG4gIC5mb3JtLWNvbnRyb2wge1xuICAgIGhlaWdodDogJGlucHV0LWhlaWdodC1zbWFsbDtcbiAgICBwYWRkaW5nOiAkcGFkZGluZy1zbWFsbC12ZXJ0aWNhbCAkcGFkZGluZy1zbWFsbC1ob3Jpem9udGFsO1xuICAgIGZvbnQtc2l6ZTogJGZvbnQtc2l6ZS1zbWFsbDtcbiAgICBsaW5lLWhlaWdodDogJGxpbmUtaGVpZ2h0LXNtYWxsO1xuICAgIGJvcmRlci1yYWRpdXM6ICRpbnB1dC1ib3JkZXItcmFkaXVzLXNtYWxsO1xuICB9XG4gIHNlbGVjdC5mb3JtLWNvbnRyb2wge1xuICAgIGhlaWdodDogJGlucHV0LWhlaWdodC1zbWFsbDtcbiAgICBsaW5lLWhlaWdodDogJGlucHV0LWhlaWdodC1zbWFsbDtcbiAgfVxuICB0ZXh0YXJlYS5mb3JtLWNvbnRyb2wsXG4gIHNlbGVjdFttdWx0aXBsZV0uZm9ybS1jb250cm9sIHtcbiAgICBoZWlnaHQ6IGF1dG87XG4gIH1cbiAgLmZvcm0tY29udHJvbC1zdGF0aWMge1xuICAgIGhlaWdodDogJGlucHV0LWhlaWdodC1zbWFsbDtcbiAgICBtaW4taGVpZ2h0OiAoJGxpbmUtaGVpZ2h0LWNvbXB1dGVkICsgJGZvbnQtc2l6ZS1zbWFsbCk7XG4gICAgcGFkZGluZzogKCRwYWRkaW5nLXNtYWxsLXZlcnRpY2FsICsgMSkgJHBhZGRpbmctc21hbGwtaG9yaXpvbnRhbDtcbiAgICBmb250LXNpemU6ICRmb250LXNpemUtc21hbGw7XG4gICAgbGluZS1oZWlnaHQ6ICRsaW5lLWhlaWdodC1zbWFsbDtcbiAgfVxufVxuXG5AaW5jbHVkZSBpbnB1dC1zaXplKCcuaW5wdXQtbGcnLCAkaW5wdXQtaGVpZ2h0LWxhcmdlLCAkcGFkZGluZy1sYXJnZS12ZXJ0aWNhbCwgJHBhZGRpbmctbGFyZ2UtaG9yaXpvbnRhbCwgJGZvbnQtc2l6ZS1sYXJnZSwgJGxpbmUtaGVpZ2h0LWxhcmdlLCAkaW5wdXQtYm9yZGVyLXJhZGl1cy1sYXJnZSk7XG4uZm9ybS1ncm91cC1sZyB7XG4gIC5mb3JtLWNvbnRyb2wge1xuICAgIGhlaWdodDogJGlucHV0LWhlaWdodC1sYXJnZTtcbiAgICBwYWRkaW5nOiAkcGFkZGluZy1sYXJnZS12ZXJ0aWNhbCAkcGFkZGluZy1sYXJnZS1ob3Jpem9udGFsO1xuICAgIGZvbnQtc2l6ZTogJGZvbnQtc2l6ZS1sYXJnZTtcbiAgICBsaW5lLWhlaWdodDogJGxpbmUtaGVpZ2h0LWxhcmdlO1xuICAgIGJvcmRlci1yYWRpdXM6ICRpbnB1dC1ib3JkZXItcmFkaXVzLWxhcmdlO1xuICB9XG4gIHNlbGVjdC5mb3JtLWNvbnRyb2wge1xuICAgIGhlaWdodDogJGlucHV0LWhlaWdodC1sYXJnZTtcbiAgICBsaW5lLWhlaWdodDogJGlucHV0LWhlaWdodC1sYXJnZTtcbiAgfVxuICB0ZXh0YXJlYS5mb3JtLWNvbnRyb2wsXG4gIHNlbGVjdFttdWx0aXBsZV0uZm9ybS1jb250cm9sIHtcbiAgICBoZWlnaHQ6IGF1dG87XG4gIH1cbiAgLmZvcm0tY29udHJvbC1zdGF0aWMge1xuICAgIGhlaWdodDogJGlucHV0LWhlaWdodC1sYXJnZTtcbiAgICBtaW4taGVpZ2h0OiAoJGxpbmUtaGVpZ2h0LWNvbXB1dGVkICsgJGZvbnQtc2l6ZS1sYXJnZSk7XG4gICAgcGFkZGluZzogKCRwYWRkaW5nLWxhcmdlLXZlcnRpY2FsICsgMSkgJHBhZGRpbmctbGFyZ2UtaG9yaXpvbnRhbDtcbiAgICBmb250LXNpemU6ICRmb250LXNpemUtbGFyZ2U7XG4gICAgbGluZS1oZWlnaHQ6ICRsaW5lLWhlaWdodC1sYXJnZTtcbiAgfVxufVxuXG5cbi8vIEZvcm0gY29udHJvbCBmZWVkYmFjayBzdGF0ZXNcbi8vXG4vLyBBcHBseSBjb250ZXh0dWFsIGFuZCBzZW1hbnRpYyBzdGF0ZXMgdG8gaW5kaXZpZHVhbCBmb3JtIGNvbnRyb2xzLlxuXG4uaGFzLWZlZWRiYWNrIHtcbiAgLy8gRW5hYmxlIGFic29sdXRlIHBvc2l0aW9uaW5nXG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcblxuICAvLyBFbnN1cmUgaWNvbnMgZG9uJ3Qgb3ZlcmxhcCB0ZXh0XG4gIC5mb3JtLWNvbnRyb2wge1xuICAgIHBhZGRpbmctcmlnaHQ6ICgkaW5wdXQtaGVpZ2h0LWJhc2UgKiAxLjI1KTtcbiAgfVxufVxuLy8gRmVlZGJhY2sgaWNvbiAocmVxdWlyZXMgLmdseXBoaWNvbiBjbGFzc2VzKVxuLmZvcm0tY29udHJvbC1mZWVkYmFjayB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgdG9wOiAwO1xuICByaWdodDogMDtcbiAgei1pbmRleDogMjsgLy8gRW5zdXJlIGljb24gaXMgYWJvdmUgaW5wdXQgZ3JvdXBzXG4gIGRpc3BsYXk6IGJsb2NrO1xuICB3aWR0aDogJGlucHV0LWhlaWdodC1iYXNlO1xuICBoZWlnaHQ6ICRpbnB1dC1oZWlnaHQtYmFzZTtcbiAgbGluZS1oZWlnaHQ6ICRpbnB1dC1oZWlnaHQtYmFzZTtcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xuICBwb2ludGVyLWV2ZW50czogbm9uZTtcbn1cbi5pbnB1dC1sZyArIC5mb3JtLWNvbnRyb2wtZmVlZGJhY2ssXG4uaW5wdXQtZ3JvdXAtbGcgKyAuZm9ybS1jb250cm9sLWZlZWRiYWNrLFxuLmZvcm0tZ3JvdXAtbGcgLmZvcm0tY29udHJvbCArIC5mb3JtLWNvbnRyb2wtZmVlZGJhY2sge1xuICB3aWR0aDogJGlucHV0LWhlaWdodC1sYXJnZTtcbiAgaGVpZ2h0OiAkaW5wdXQtaGVpZ2h0LWxhcmdlO1xuICBsaW5lLWhlaWdodDogJGlucHV0LWhlaWdodC1sYXJnZTtcbn1cbi5pbnB1dC1zbSArIC5mb3JtLWNvbnRyb2wtZmVlZGJhY2ssXG4uaW5wdXQtZ3JvdXAtc20gKyAuZm9ybS1jb250cm9sLWZlZWRiYWNrLFxuLmZvcm0tZ3JvdXAtc20gLmZvcm0tY29udHJvbCArIC5mb3JtLWNvbnRyb2wtZmVlZGJhY2sge1xuICB3aWR0aDogJGlucHV0LWhlaWdodC1zbWFsbDtcbiAgaGVpZ2h0OiAkaW5wdXQtaGVpZ2h0LXNtYWxsO1xuICBsaW5lLWhlaWdodDogJGlucHV0LWhlaWdodC1zbWFsbDtcbn1cblxuLy8gRmVlZGJhY2sgc3RhdGVzXG4uaGFzLXN1Y2Nlc3Mge1xuICBAaW5jbHVkZSBmb3JtLWNvbnRyb2wtdmFsaWRhdGlvbigkc3RhdGUtc3VjY2Vzcy10ZXh0LCAkc3RhdGUtc3VjY2Vzcy10ZXh0LCAkc3RhdGUtc3VjY2Vzcy1iZyk7XG59XG4uaGFzLXdhcm5pbmcge1xuICBAaW5jbHVkZSBmb3JtLWNvbnRyb2wtdmFsaWRhdGlvbigkc3RhdGUtd2FybmluZy10ZXh0LCAkc3RhdGUtd2FybmluZy10ZXh0LCAkc3RhdGUtd2FybmluZy1iZyk7XG59XG4uaGFzLWVycm9yIHtcbiAgQGluY2x1ZGUgZm9ybS1jb250cm9sLXZhbGlkYXRpb24oJHN0YXRlLWRhbmdlci10ZXh0LCAkc3RhdGUtZGFuZ2VyLXRleHQsICRzdGF0ZS1kYW5nZXItYmcpO1xufVxuXG4vLyBSZXBvc2l0aW9uIGZlZWRiYWNrIGljb24gaWYgaW5wdXQgaGFzIHZpc2libGUgbGFiZWwgYWJvdmVcbi5oYXMtZmVlZGJhY2sgbGFiZWwge1xuXG4gICYgfiAuZm9ybS1jb250cm9sLWZlZWRiYWNrIHtcbiAgICB0b3A6ICgkbGluZS1oZWlnaHQtY29tcHV0ZWQgKyA1KTsgLy8gSGVpZ2h0IG9mIHRoZSBgbGFiZWxgIGFuZCBpdHMgbWFyZ2luXG4gIH1cbiAgJi5zci1vbmx5IH4gLmZvcm0tY29udHJvbC1mZWVkYmFjayB7XG4gICAgdG9wOiAwO1xuICB9XG59XG5cblxuLy8gSGVscCB0ZXh0XG4vL1xuLy8gQXBwbHkgdG8gYW55IGVsZW1lbnQgeW91IHdpc2ggdG8gY3JlYXRlIGxpZ2h0IHRleHQgZm9yIHBsYWNlbWVudCBpbW1lZGlhdGVseVxuLy8gYmVsb3cgYSBmb3JtIGNvbnRyb2wuIFVzZSBmb3IgZ2VuZXJhbCBoZWxwLCBmb3JtYXR0aW5nLCBvciBpbnN0cnVjdGlvbmFsIHRleHQuXG5cbi5oZWxwLWJsb2NrIHtcbiAgZGlzcGxheTogYmxvY2s7IC8vIGFjY291bnQgZm9yIGFueSBlbGVtZW50IHVzaW5nIGhlbHAtYmxvY2tcbiAgbWFyZ2luLXRvcDogNXB4O1xuICBtYXJnaW4tYm90dG9tOiAxMHB4O1xuICBjb2xvcjogbGlnaHRlbigkdGV4dC1jb2xvciwgMjUlKTsgLy8gbGlnaHRlbiB0aGUgdGV4dCBzb21lIGZvciBjb250cmFzdFxufVxuXG5cbi8vIElubGluZSBmb3Jtc1xuLy9cbi8vIE1ha2UgZm9ybXMgYXBwZWFyIGlubGluZSgtYmxvY2spIGJ5IGFkZGluZyB0aGUgYC5mb3JtLWlubGluZWAgY2xhc3MuIElubGluZVxuLy8gZm9ybXMgYmVnaW4gc3RhY2tlZCBvbiBleHRyYSBzbWFsbCAobW9iaWxlKSBkZXZpY2VzIGFuZCB0aGVuIGdvIGlubGluZSB3aGVuXG4vLyB2aWV3cG9ydHMgcmVhY2ggPDc2OHB4LlxuLy9cbi8vIFJlcXVpcmVzIHdyYXBwaW5nIGlucHV0cyBhbmQgbGFiZWxzIHdpdGggYC5mb3JtLWdyb3VwYCBmb3IgcHJvcGVyIGRpc3BsYXkgb2Zcbi8vIGRlZmF1bHQgSFRNTCBmb3JtIGNvbnRyb2xzIGFuZCBvdXIgY3VzdG9tIGZvcm0gY29udHJvbHMgKGUuZy4sIGlucHV0IGdyb3VwcykuXG4vL1xuLy8gSGVhZHMgdXAhIFRoaXMgaXMgbWl4aW4tZWQgaW50byBgLm5hdmJhci1mb3JtYCBpbiBuYXZiYXJzLmxlc3MuXG5cbi8vIFtjb252ZXJ0ZXJdIGV4dHJhY3RlZCBmcm9tIGAuZm9ybS1pbmxpbmVgIGZvciBsaWJzYXNzIGNvbXBhdGliaWxpdHlcbkBtaXhpbiBmb3JtLWlubGluZSB7XG5cbiAgLy8gS2ljayBpbiB0aGUgaW5saW5lXG4gIEBtZWRpYSAobWluLXdpZHRoOiAkc2NyZWVuLXNtLW1pbikge1xuICAgIC8vIElubGluZS1ibG9jayBhbGwgdGhlIHRoaW5ncyBmb3IgXCJpbmxpbmVcIlxuICAgIC5mb3JtLWdyb3VwIHtcbiAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICAgIG1hcmdpbi1ib3R0b206IDA7XG4gICAgICB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlO1xuICAgIH1cblxuICAgIC8vIEluIG5hdmJhci1mb3JtLCBhbGxvdyBmb2xrcyB0byAqbm90KiB1c2UgYC5mb3JtLWdyb3VwYFxuICAgIC5mb3JtLWNvbnRyb2wge1xuICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgICAgd2lkdGg6IGF1dG87IC8vIFByZXZlbnQgbGFiZWxzIGZyb20gc3RhY2tpbmcgYWJvdmUgaW5wdXRzIGluIGAuZm9ybS1ncm91cGBcbiAgICAgIHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7XG4gICAgfVxuXG4gICAgLy8gTWFrZSBzdGF0aWMgY29udHJvbHMgYmVoYXZlIGxpa2UgcmVndWxhciBvbmVzXG4gICAgLmZvcm0tY29udHJvbC1zdGF0aWMge1xuICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgIH1cblxuICAgIC5pbnB1dC1ncm91cCB7XG4gICAgICBkaXNwbGF5OiBpbmxpbmUtdGFibGU7XG4gICAgICB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlO1xuXG4gICAgICAuaW5wdXQtZ3JvdXAtYWRkb24sXG4gICAgICAuaW5wdXQtZ3JvdXAtYnRuLFxuICAgICAgLmZvcm0tY29udHJvbCB7XG4gICAgICAgIHdpZHRoOiBhdXRvO1xuICAgICAgfVxuICAgIH1cblxuICAgIC8vIElucHV0IGdyb3VwcyBuZWVkIHRoYXQgMTAwJSB3aWR0aCB0aG91Z2hcbiAgICAuaW5wdXQtZ3JvdXAgPiAuZm9ybS1jb250cm9sIHtcbiAgICAgIHdpZHRoOiAxMDAlO1xuICAgIH1cblxuICAgIC5jb250cm9sLWxhYmVsIHtcbiAgICAgIG1hcmdpbi1ib3R0b206IDA7XG4gICAgICB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlO1xuICAgIH1cblxuICAgIC8vIFJlbW92ZSBkZWZhdWx0IG1hcmdpbiBvbiByYWRpb3MvY2hlY2tib3hlcyB0aGF0IHdlcmUgdXNlZCBmb3Igc3RhY2tpbmcsIGFuZFxuICAgIC8vIHRoZW4gdW5kbyB0aGUgZmxvYXRpbmcgb2YgcmFkaW9zIGFuZCBjaGVja2JveGVzIHRvIG1hdGNoLlxuICAgIC5yYWRpbyxcbiAgICAuY2hlY2tib3gge1xuICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgICAgbWFyZ2luLXRvcDogMDtcbiAgICAgIG1hcmdpbi1ib3R0b206IDA7XG4gICAgICB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlO1xuXG4gICAgICBsYWJlbCB7XG4gICAgICAgIHBhZGRpbmctbGVmdDogMDtcbiAgICAgIH1cbiAgICB9XG4gICAgLnJhZGlvIGlucHV0W3R5cGU9XCJyYWRpb1wiXSxcbiAgICAuY2hlY2tib3ggaW5wdXRbdHlwZT1cImNoZWNrYm94XCJdIHtcbiAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgIG1hcmdpbi1sZWZ0OiAwO1xuICAgIH1cblxuICAgIC8vIFJlLW92ZXJyaWRlIHRoZSBmZWVkYmFjayBpY29uLlxuICAgIC5oYXMtZmVlZGJhY2sgLmZvcm0tY29udHJvbC1mZWVkYmFjayB7XG4gICAgICB0b3A6IDA7XG4gICAgfVxuICB9XG59XG4vLyBbY29udmVydGVyXSBleHRyYWN0ZWQgYXMgYEBtaXhpbiBmb3JtLWlubGluZWAgZm9yIGxpYnNhc3MgY29tcGF0aWJpbGl0eVxuLmZvcm0taW5saW5lIHtcbiAgQGluY2x1ZGUgZm9ybS1pbmxpbmU7XG59XG5cblxuXG4vLyBIb3Jpem9udGFsIGZvcm1zXG4vL1xuLy8gSG9yaXpvbnRhbCBmb3JtcyBhcmUgYnVpbHQgb24gZ3JpZCBjbGFzc2VzIGFuZCBhbGxvdyB5b3UgdG8gY3JlYXRlIGZvcm1zIHdpdGhcbi8vIGxhYmVscyBvbiB0aGUgbGVmdCBhbmQgaW5wdXRzIG9uIHRoZSByaWdodC5cblxuLmZvcm0taG9yaXpvbnRhbCB7XG5cbiAgLy8gQ29uc2lzdGVudCB2ZXJ0aWNhbCBhbGlnbm1lbnQgb2YgcmFkaW9zIGFuZCBjaGVja2JveGVzXG4gIC8vXG4gIC8vIExhYmVscyBhbHNvIGdldCBzb21lIHJlc2V0IHN0eWxlcywgYnV0IHRoYXQgaXMgc2NvcGVkIHRvIGEgbWVkaWEgcXVlcnkgYmVsb3cuXG4gIC5yYWRpbyxcbiAgLmNoZWNrYm94LFxuICAucmFkaW8taW5saW5lLFxuICAuY2hlY2tib3gtaW5saW5lIHtcbiAgICBtYXJnaW4tdG9wOiAwO1xuICAgIG1hcmdpbi1ib3R0b206IDA7XG4gICAgcGFkZGluZy10b3A6ICgkcGFkZGluZy1iYXNlLXZlcnRpY2FsICsgMSk7IC8vIERlZmF1bHQgcGFkZGluZyBwbHVzIGEgYm9yZGVyXG4gIH1cbiAgLy8gQWNjb3VudCBmb3IgcGFkZGluZyB3ZSdyZSBhZGRpbmcgdG8gZW5zdXJlIHRoZSBhbGlnbm1lbnQgYW5kIG9mIGhlbHAgdGV4dFxuICAvLyBhbmQgb3RoZXIgY29udGVudCBiZWxvdyBpdGVtc1xuICAucmFkaW8sXG4gIC5jaGVja2JveCB7XG4gICAgbWluLWhlaWdodDogKCRsaW5lLWhlaWdodC1jb21wdXRlZCArICgkcGFkZGluZy1iYXNlLXZlcnRpY2FsICsgMSkpO1xuICB9XG5cbiAgLy8gTWFrZSBmb3JtIGdyb3VwcyBiZWhhdmUgbGlrZSByb3dzXG4gIC5mb3JtLWdyb3VwIHtcbiAgICBAaW5jbHVkZSBtYWtlLXJvdztcbiAgfVxuXG4gIC8vIFJlc2V0IHNwYWNpbmcgYW5kIHJpZ2h0IGFsaWduIGxhYmVscywgYnV0IHNjb3BlIHRvIG1lZGlhIHF1ZXJpZXMgc28gdGhhdFxuICAvLyBsYWJlbHMgb24gbmFycm93IHZpZXdwb3J0cyBzdGFjayB0aGUgc2FtZSBhcyBhIGRlZmF1bHQgZm9ybSBleGFtcGxlLlxuICBAbWVkaWEgKG1pbi13aWR0aDogJHNjcmVlbi1zbS1taW4pIHtcbiAgICAuY29udHJvbC1sYWJlbCB7XG4gICAgICB0ZXh0LWFsaWduOiByaWdodDtcbiAgICAgIG1hcmdpbi1ib3R0b206IDA7XG4gICAgICBwYWRkaW5nLXRvcDogKCRwYWRkaW5nLWJhc2UtdmVydGljYWwgKyAxKTsgLy8gRGVmYXVsdCBwYWRkaW5nIHBsdXMgYSBib3JkZXJcbiAgICB9XG4gIH1cblxuICAvLyBWYWxpZGF0aW9uIHN0YXRlc1xuICAvL1xuICAvLyBSZXBvc2l0aW9uIHRoZSBpY29uIGJlY2F1c2UgaXQncyBub3cgd2l0aGluIGEgZ3JpZCBjb2x1bW4gYW5kIGNvbHVtbnMgaGF2ZVxuICAvLyBgcG9zaXRpb246IHJlbGF0aXZlO2Agb24gdGhlbS4gQWxzbyBhY2NvdW50cyBmb3IgdGhlIGdyaWQgZ3V0dGVyIHBhZGRpbmcuXG4gIC5oYXMtZmVlZGJhY2sgLmZvcm0tY29udHJvbC1mZWVkYmFjayB7XG4gICAgcmlnaHQ6IGZsb29yKCgkZ3JpZC1ndXR0ZXItd2lkdGggLyAyKSk7XG4gIH1cblxuICAvLyBGb3JtIGdyb3VwIHNpemVzXG4gIC8vXG4gIC8vIFF1aWNrIHV0aWxpdHkgY2xhc3MgZm9yIGFwcGx5aW5nIGAuaW5wdXQtbGdgIGFuZCBgLmlucHV0LXNtYCBzdHlsZXMgdG8gdGhlXG4gIC8vIGlucHV0cyBhbmQgbGFiZWxzIHdpdGhpbiBhIGAuZm9ybS1ncm91cGAuXG4gIC5mb3JtLWdyb3VwLWxnIHtcbiAgICBAbWVkaWEgKG1pbi13aWR0aDogJHNjcmVlbi1zbS1taW4pIHtcbiAgICAgIC5jb250cm9sLWxhYmVsIHtcbiAgICAgICAgcGFkZGluZy10b3A6ICgkcGFkZGluZy1sYXJnZS12ZXJ0aWNhbCArIDEpO1xuICAgICAgICBmb250LXNpemU6ICRmb250LXNpemUtbGFyZ2U7XG4gICAgICB9XG4gICAgfVxuICB9XG4gIC5mb3JtLWdyb3VwLXNtIHtcbiAgICBAbWVkaWEgKG1pbi13aWR0aDogJHNjcmVlbi1zbS1taW4pIHtcbiAgICAgIC5jb250cm9sLWxhYmVsIHtcbiAgICAgICAgcGFkZGluZy10b3A6ICgkcGFkZGluZy1zbWFsbC12ZXJ0aWNhbCArIDEpO1xuICAgICAgICBmb250LXNpemU6ICRmb250LXNpemUtc21hbGw7XG4gICAgICB9XG4gICAgfVxuICB9XG59XG4iLCIvLyBGb3JtIHZhbGlkYXRpb24gc3RhdGVzXG4vL1xuLy8gVXNlZCBpbiBmb3Jtcy5sZXNzIHRvIGdlbmVyYXRlIHRoZSBmb3JtIHZhbGlkYXRpb24gQ1NTIGZvciB3YXJuaW5ncywgZXJyb3JzLFxuLy8gYW5kIHN1Y2Nlc3Nlcy5cblxuQG1peGluIGZvcm0tY29udHJvbC12YWxpZGF0aW9uKCR0ZXh0LWNvbG9yOiAjNTU1LCAkYm9yZGVyLWNvbG9yOiAjY2NjLCAkYmFja2dyb3VuZC1jb2xvcjogI2Y1ZjVmNSkge1xuICAvLyBDb2xvciB0aGUgbGFiZWwgYW5kIGhlbHAgdGV4dFxuICAuaGVscC1ibG9jayxcbiAgLmNvbnRyb2wtbGFiZWwsXG4gIC5yYWRpbyxcbiAgLmNoZWNrYm94LFxuICAucmFkaW8taW5saW5lLFxuICAuY2hlY2tib3gtaW5saW5lLFxuICAmLnJhZGlvIGxhYmVsLFxuICAmLmNoZWNrYm94IGxhYmVsLFxuICAmLnJhZGlvLWlubGluZSBsYWJlbCxcbiAgJi5jaGVja2JveC1pbmxpbmUgbGFiZWwgIHtcbiAgICBjb2xvcjogJHRleHQtY29sb3I7XG4gIH1cbiAgLy8gU2V0IHRoZSBib3JkZXIgYW5kIGJveCBzaGFkb3cgb24gc3BlY2lmaWMgaW5wdXRzIHRvIG1hdGNoXG4gIC5mb3JtLWNvbnRyb2wge1xuICAgIGJvcmRlci1jb2xvcjogJGJvcmRlci1jb2xvcjtcbiAgICBAaW5jbHVkZSBib3gtc2hhZG93KGluc2V0IDAgMXB4IDFweCByZ2JhKDAsMCwwLC4wNzUpKTsgLy8gUmVkZWNsYXJlIHNvIHRyYW5zaXRpb25zIHdvcmtcbiAgICAmOmZvY3VzIHtcbiAgICAgIGJvcmRlci1jb2xvcjogZGFya2VuKCRib3JkZXItY29sb3IsIDEwJSk7XG4gICAgICAkc2hhZG93OiBpbnNldCAwIDFweCAxcHggcmdiYSgwLDAsMCwuMDc1KSwgMCAwIDZweCBsaWdodGVuKCRib3JkZXItY29sb3IsIDIwJSk7XG4gICAgICBAaW5jbHVkZSBib3gtc2hhZG93KCRzaGFkb3cpO1xuICAgIH1cbiAgfVxuICAvLyBTZXQgdmFsaWRhdGlvbiBzdGF0ZXMgYWxzbyBmb3IgYWRkb25zXG4gIC5pbnB1dC1ncm91cC1hZGRvbiB7XG4gICAgY29sb3I6ICR0ZXh0LWNvbG9yO1xuICAgIGJvcmRlci1jb2xvcjogJGJvcmRlci1jb2xvcjtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkYmFja2dyb3VuZC1jb2xvcjtcbiAgfVxuICAvLyBPcHRpb25hbCBmZWVkYmFjayBpY29uXG4gIC5mb3JtLWNvbnRyb2wtZmVlZGJhY2sge1xuICAgIGNvbG9yOiAkdGV4dC1jb2xvcjtcbiAgfVxufVxuXG5cbi8vIEZvcm0gY29udHJvbCBmb2N1cyBzdGF0ZVxuLy9cbi8vIEdlbmVyYXRlIGEgY3VzdG9taXplZCBmb2N1cyBzdGF0ZSBhbmQgZm9yIGFueSBpbnB1dCB3aXRoIHRoZSBzcGVjaWZpZWQgY29sb3IsXG4vLyB3aGljaCBkZWZhdWx0cyB0byB0aGUgYCRpbnB1dC1ib3JkZXItZm9jdXNgIHZhcmlhYmxlLlxuLy9cbi8vIFdlIGhpZ2hseSBlbmNvdXJhZ2UgeW91IHRvIG5vdCBjdXN0b21pemUgdGhlIGRlZmF1bHQgdmFsdWUsIGJ1dCBpbnN0ZWFkIHVzZVxuLy8gdGhpcyB0byB0d2VhayBjb2xvcnMgb24gYW4gYXMtbmVlZGVkIGJhc2lzLiBUaGlzIGFlc3RoZXRpYyBjaGFuZ2UgaXMgYmFzZWQgb25cbi8vIFdlYktpdCdzIGRlZmF1bHQgc3R5bGVzLCBidXQgYXBwbGljYWJsZSB0byBhIHdpZGVyIHJhbmdlIG9mIGJyb3dzZXJzLiBJdHNcbi8vIHVzYWJpbGl0eSBhbmQgYWNjZXNzaWJpbGl0eSBzaG91bGQgYmUgdGFrZW4gaW50byBhY2NvdW50IHdpdGggYW55IGNoYW5nZS5cbi8vXG4vLyBFeGFtcGxlIHVzYWdlOiBjaGFuZ2UgdGhlIGRlZmF1bHQgYmx1ZSBib3JkZXIgYW5kIHNoYWRvdyB0byB3aGl0ZSBmb3IgYmV0dGVyXG4vLyBjb250cmFzdCBhZ2FpbnN0IGEgZGFyayBncmF5IGJhY2tncm91bmQuXG5AbWl4aW4gZm9ybS1jb250cm9sLWZvY3VzKCRjb2xvcjogJGlucHV0LWJvcmRlci1mb2N1cykge1xuICAkY29sb3ItcmdiYTogcmdiYShyZWQoJGNvbG9yKSwgZ3JlZW4oJGNvbG9yKSwgYmx1ZSgkY29sb3IpLCAuNik7XG4gICY6Zm9jdXMge1xuICAgIGJvcmRlci1jb2xvcjogJGNvbG9yO1xuICAgIG91dGxpbmU6IDA7XG4gICAgQGluY2x1ZGUgYm94LXNoYWRvdyhpbnNldCAwIDFweCAxcHggcmdiYSgwLDAsMCwuMDc1KSwgMCAwIDhweCAkY29sb3ItcmdiYSk7XG4gIH1cbn1cblxuLy8gRm9ybSBjb250cm9sIHNpemluZ1xuLy9cbi8vIFJlbGF0aXZlIHRleHQgc2l6ZSwgcGFkZGluZywgYW5kIGJvcmRlci1yYWRpaSBjaGFuZ2VzIGZvciBmb3JtIGNvbnRyb2xzLiBGb3Jcbi8vIGhvcml6b250YWwgc2l6aW5nLCB3cmFwIGNvbnRyb2xzIGluIHRoZSBwcmVkZWZpbmVkIGdyaWQgY2xhc3Nlcy4gYDxzZWxlY3Q+YFxuLy8gZWxlbWVudCBnZXRzIHNwZWNpYWwgbG92ZSBiZWNhdXNlIGl0J3Mgc3BlY2lhbCwgYW5kIHRoYXQncyBhIGZhY3QhXG4vLyBbY29udmVydGVyXSAkcGFyZW50IGhhY2tcbkBtaXhpbiBpbnB1dC1zaXplKCRwYXJlbnQsICRpbnB1dC1oZWlnaHQsICRwYWRkaW5nLXZlcnRpY2FsLCAkcGFkZGluZy1ob3Jpem9udGFsLCAkZm9udC1zaXplLCAkbGluZS1oZWlnaHQsICRib3JkZXItcmFkaXVzKSB7XG4gICN7JHBhcmVudH0ge1xuICAgIGhlaWdodDogJGlucHV0LWhlaWdodDtcbiAgICBwYWRkaW5nOiAkcGFkZGluZy12ZXJ0aWNhbCAkcGFkZGluZy1ob3Jpem9udGFsO1xuICAgIGZvbnQtc2l6ZTogJGZvbnQtc2l6ZTtcbiAgICBsaW5lLWhlaWdodDogJGxpbmUtaGVpZ2h0O1xuICAgIGJvcmRlci1yYWRpdXM6ICRib3JkZXItcmFkaXVzO1xuICB9XG5cbiAgc2VsZWN0I3skcGFyZW50fSB7XG4gICAgaGVpZ2h0OiAkaW5wdXQtaGVpZ2h0O1xuICAgIGxpbmUtaGVpZ2h0OiAkaW5wdXQtaGVpZ2h0O1xuICB9XG5cbiAgdGV4dGFyZWEjeyRwYXJlbnR9LFxuICBzZWxlY3RbbXVsdGlwbGVdI3skcGFyZW50fSB7XG4gICAgaGVpZ2h0OiBhdXRvO1xuICB9XG59XG4iLCIvL1xuLy8gQnV0dG9uc1xuLy8gLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cblxuXG4vLyBCYXNlIHN0eWxlc1xuLy8gLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cblxuLmJ0biB7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgbWFyZ2luLWJvdHRvbTogMDsgLy8gRm9yIGlucHV0LmJ0blxuICBmb250LXdlaWdodDogJGJ0bi1mb250LXdlaWdodDtcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xuICB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlO1xuICB0b3VjaC1hY3Rpb246IG1hbmlwdWxhdGlvbjtcbiAgY3Vyc29yOiBwb2ludGVyO1xuICBiYWNrZ3JvdW5kLWltYWdlOiBub25lOyAvLyBSZXNldCB1bnVzdWFsIEZpcmVmb3gtb24tQW5kcm9pZCBkZWZhdWx0IHN0eWxlOyBzZWUgaHR0cHM6Ly9naXRodWIuY29tL25lY29sYXMvbm9ybWFsaXplLmNzcy9pc3N1ZXMvMjE0XG4gIGJvcmRlcjogMXB4IHNvbGlkIHRyYW5zcGFyZW50O1xuICB3aGl0ZS1zcGFjZTogbm93cmFwO1xuICBAaW5jbHVkZSBidXR0b24tc2l6ZSgkcGFkZGluZy1iYXNlLXZlcnRpY2FsLCAkcGFkZGluZy1iYXNlLWhvcml6b250YWwsICRmb250LXNpemUtYmFzZSwgJGxpbmUtaGVpZ2h0LWJhc2UsICRidG4tYm9yZGVyLXJhZGl1cy1iYXNlKTtcbiAgQGluY2x1ZGUgdXNlci1zZWxlY3Qobm9uZSk7XG5cbiAgJixcbiAgJjphY3RpdmUsXG4gICYuYWN0aXZlIHtcbiAgICAmOmZvY3VzLFxuICAgICYuZm9jdXMge1xuICAgICAgQGluY2x1ZGUgdGFiLWZvY3VzO1xuICAgIH1cbiAgfVxuXG4gICY6aG92ZXIsXG4gICY6Zm9jdXMsXG4gICYuZm9jdXMge1xuICAgIGNvbG9yOiAkYnRuLWRlZmF1bHQtY29sb3I7XG4gICAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICB9XG5cbiAgJjphY3RpdmUsXG4gICYuYWN0aXZlIHtcbiAgICBvdXRsaW5lOiAwO1xuICAgIGJhY2tncm91bmQtaW1hZ2U6IG5vbmU7XG4gICAgQGluY2x1ZGUgYm94LXNoYWRvdyhpbnNldCAwIDNweCA1cHggcmdiYSgwLDAsMCwuMTI1KSk7XG4gIH1cblxuICAmLmRpc2FibGVkLFxuICAmW2Rpc2FibGVkXSxcbiAgZmllbGRzZXRbZGlzYWJsZWRdICYge1xuICAgIGN1cnNvcjogJGN1cnNvci1kaXNhYmxlZDtcbiAgICBAaW5jbHVkZSBvcGFjaXR5KC42NSk7XG4gICAgQGluY2x1ZGUgYm94LXNoYWRvdyhub25lKTtcbiAgfVxuXG4gIC8vIFtjb252ZXJ0ZXJdIGV4dHJhY3RlZCBhJiB0byBhLmJ0blxufVxuXG5hLmJ0biB7XG4gICYuZGlzYWJsZWQsXG4gIGZpZWxkc2V0W2Rpc2FibGVkXSAmIHtcbiAgICBwb2ludGVyLWV2ZW50czogbm9uZTsgLy8gRnV0dXJlLXByb29mIGRpc2FibGluZyBvZiBjbGlja3Mgb24gYDxhPmAgZWxlbWVudHNcbiAgfVxufVxuXG5cbi8vIEFsdGVybmF0ZSBidXR0b25zXG4vLyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuXG4uYnRuLWRlZmF1bHQge1xuICBAaW5jbHVkZSBidXR0b24tdmFyaWFudCgkYnRuLWRlZmF1bHQtY29sb3IsICRidG4tZGVmYXVsdC1iZywgJGJ0bi1kZWZhdWx0LWJvcmRlcik7XG59XG4uYnRuLXByaW1hcnkge1xuICBAaW5jbHVkZSBidXR0b24tdmFyaWFudCgkYnRuLXByaW1hcnktY29sb3IsICRidG4tcHJpbWFyeS1iZywgJGJ0bi1wcmltYXJ5LWJvcmRlcik7XG59XG4vLyBTdWNjZXNzIGFwcGVhcnMgYXMgZ3JlZW5cbi5idG4tc3VjY2VzcyB7XG4gIEBpbmNsdWRlIGJ1dHRvbi12YXJpYW50KCRidG4tc3VjY2Vzcy1jb2xvciwgJGJ0bi1zdWNjZXNzLWJnLCAkYnRuLXN1Y2Nlc3MtYm9yZGVyKTtcbn1cbi8vIEluZm8gYXBwZWFycyBhcyBibHVlLWdyZWVuXG4uYnRuLWluZm8ge1xuICBAaW5jbHVkZSBidXR0b24tdmFyaWFudCgkYnRuLWluZm8tY29sb3IsICRidG4taW5mby1iZywgJGJ0bi1pbmZvLWJvcmRlcik7XG59XG4vLyBXYXJuaW5nIGFwcGVhcnMgYXMgb3JhbmdlXG4uYnRuLXdhcm5pbmcge1xuICBAaW5jbHVkZSBidXR0b24tdmFyaWFudCgkYnRuLXdhcm5pbmctY29sb3IsICRidG4td2FybmluZy1iZywgJGJ0bi13YXJuaW5nLWJvcmRlcik7XG59XG4vLyBEYW5nZXIgYW5kIGVycm9yIGFwcGVhciBhcyByZWRcbi5idG4tZGFuZ2VyIHtcbiAgQGluY2x1ZGUgYnV0dG9uLXZhcmlhbnQoJGJ0bi1kYW5nZXItY29sb3IsICRidG4tZGFuZ2VyLWJnLCAkYnRuLWRhbmdlci1ib3JkZXIpO1xufVxuXG5cbi8vIExpbmsgYnV0dG9uc1xuLy8gLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuXG4vLyBNYWtlIGEgYnV0dG9uIGxvb2sgYW5kIGJlaGF2ZSBsaWtlIGEgbGlua1xuLmJ0bi1saW5rIHtcbiAgY29sb3I6ICRsaW5rLWNvbG9yO1xuICBmb250LXdlaWdodDogbm9ybWFsO1xuICBib3JkZXItcmFkaXVzOiAwO1xuXG4gICYsXG4gICY6YWN0aXZlLFxuICAmLmFjdGl2ZSxcbiAgJltkaXNhYmxlZF0sXG4gIGZpZWxkc2V0W2Rpc2FibGVkXSAmIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcbiAgICBAaW5jbHVkZSBib3gtc2hhZG93KG5vbmUpO1xuICB9XG4gICYsXG4gICY6aG92ZXIsXG4gICY6Zm9jdXMsXG4gICY6YWN0aXZlIHtcbiAgICBib3JkZXItY29sb3I6IHRyYW5zcGFyZW50O1xuICB9XG4gICY6aG92ZXIsXG4gICY6Zm9jdXMge1xuICAgIGNvbG9yOiAkbGluay1ob3Zlci1jb2xvcjtcbiAgICB0ZXh0LWRlY29yYXRpb246ICRsaW5rLWhvdmVyLWRlY29yYXRpb247XG4gICAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gIH1cbiAgJltkaXNhYmxlZF0sXG4gIGZpZWxkc2V0W2Rpc2FibGVkXSAmIHtcbiAgICAmOmhvdmVyLFxuICAgICY6Zm9jdXMge1xuICAgICAgY29sb3I6ICRidG4tbGluay1kaXNhYmxlZC1jb2xvcjtcbiAgICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgICB9XG4gIH1cbn1cblxuXG4vLyBCdXR0b24gU2l6ZXNcbi8vIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG5cbi5idG4tbGcge1xuICAvLyBsaW5lLWhlaWdodDogZW5zdXJlIGV2ZW4tbnVtYmVyZWQgaGVpZ2h0IG9mIGJ1dHRvbiBuZXh0IHRvIGxhcmdlIGlucHV0XG4gIEBpbmNsdWRlIGJ1dHRvbi1zaXplKCRwYWRkaW5nLWxhcmdlLXZlcnRpY2FsLCAkcGFkZGluZy1sYXJnZS1ob3Jpem9udGFsLCAkZm9udC1zaXplLWxhcmdlLCAkbGluZS1oZWlnaHQtbGFyZ2UsICRidG4tYm9yZGVyLXJhZGl1cy1sYXJnZSk7XG59XG4uYnRuLXNtIHtcbiAgLy8gbGluZS1oZWlnaHQ6IGVuc3VyZSBwcm9wZXIgaGVpZ2h0IG9mIGJ1dHRvbiBuZXh0IHRvIHNtYWxsIGlucHV0XG4gIEBpbmNsdWRlIGJ1dHRvbi1zaXplKCRwYWRkaW5nLXNtYWxsLXZlcnRpY2FsLCAkcGFkZGluZy1zbWFsbC1ob3Jpem9udGFsLCAkZm9udC1zaXplLXNtYWxsLCAkbGluZS1oZWlnaHQtc21hbGwsICRidG4tYm9yZGVyLXJhZGl1cy1zbWFsbCk7XG59XG4uYnRuLXhzIHtcbiAgQGluY2x1ZGUgYnV0dG9uLXNpemUoJHBhZGRpbmcteHMtdmVydGljYWwsICRwYWRkaW5nLXhzLWhvcml6b250YWwsICRmb250LXNpemUtc21hbGwsICRsaW5lLWhlaWdodC1zbWFsbCwgJGJ0bi1ib3JkZXItcmFkaXVzLXNtYWxsKTtcbn1cblxuXG4vLyBCbG9jayBidXR0b25cbi8vIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG5cbi5idG4tYmxvY2sge1xuICBkaXNwbGF5OiBibG9jaztcbiAgd2lkdGg6IDEwMCU7XG59XG5cbi8vIFZlcnRpY2FsbHkgc3BhY2Ugb3V0IG11bHRpcGxlIGJsb2NrIGJ1dHRvbnNcbi5idG4tYmxvY2sgKyAuYnRuLWJsb2NrIHtcbiAgbWFyZ2luLXRvcDogNXB4O1xufVxuXG4vLyBTcGVjaWZpY2l0eSBvdmVycmlkZXNcbmlucHV0W3R5cGU9XCJzdWJtaXRcIl0sXG5pbnB1dFt0eXBlPVwicmVzZXRcIl0sXG5pbnB1dFt0eXBlPVwiYnV0dG9uXCJdIHtcbiAgJi5idG4tYmxvY2sge1xuICAgIHdpZHRoOiAxMDAlO1xuICB9XG59XG4iLCIvLyBCdXR0b24gdmFyaWFudHNcbi8vXG4vLyBFYXNpbHkgcHVtcCBvdXQgZGVmYXVsdCBzdHlsZXMsIGFzIHdlbGwgYXMgOmhvdmVyLCA6Zm9jdXMsIDphY3RpdmUsXG4vLyBhbmQgZGlzYWJsZWQgb3B0aW9ucyBmb3IgYWxsIGJ1dHRvbnNcblxuQG1peGluIGJ1dHRvbi12YXJpYW50KCRjb2xvciwgJGJhY2tncm91bmQsICRib3JkZXIpIHtcbiAgY29sb3I6ICRjb2xvcjtcbiAgYmFja2dyb3VuZC1jb2xvcjogJGJhY2tncm91bmQ7XG4gIGJvcmRlci1jb2xvcjogJGJvcmRlcjtcblxuICAmOmZvY3VzLFxuICAmLmZvY3VzIHtcbiAgICBjb2xvcjogJGNvbG9yO1xuICAgIGJhY2tncm91bmQtY29sb3I6IGRhcmtlbigkYmFja2dyb3VuZCwgMTAlKTtcbiAgICAgICAgYm9yZGVyLWNvbG9yOiBkYXJrZW4oJGJvcmRlciwgMjUlKTtcbiAgfVxuICAmOmhvdmVyIHtcbiAgICBjb2xvcjogJGNvbG9yO1xuICAgIGJhY2tncm91bmQtY29sb3I6IGRhcmtlbigkYmFja2dyb3VuZCwgMTAlKTtcbiAgICAgICAgYm9yZGVyLWNvbG9yOiBkYXJrZW4oJGJvcmRlciwgMTIlKTtcbiAgfVxuICAmOmFjdGl2ZSxcbiAgJi5hY3RpdmUsXG4gIC5vcGVuID4gJi5kcm9wZG93bi10b2dnbGUge1xuICAgIGNvbG9yOiAkY29sb3I7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogZGFya2VuKCRiYWNrZ3JvdW5kLCAxMCUpO1xuICAgICAgICBib3JkZXItY29sb3I6IGRhcmtlbigkYm9yZGVyLCAxMiUpO1xuXG4gICAgJjpob3ZlcixcbiAgICAmOmZvY3VzLFxuICAgICYuZm9jdXMge1xuICAgICAgY29sb3I6ICRjb2xvcjtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6IGRhcmtlbigkYmFja2dyb3VuZCwgMTclKTtcbiAgICAgICAgICBib3JkZXItY29sb3I6IGRhcmtlbigkYm9yZGVyLCAyNSUpO1xuICAgIH1cbiAgfVxuICAmOmFjdGl2ZSxcbiAgJi5hY3RpdmUsXG4gIC5vcGVuID4gJi5kcm9wZG93bi10b2dnbGUge1xuICAgIGJhY2tncm91bmQtaW1hZ2U6IG5vbmU7XG4gIH1cbiAgJi5kaXNhYmxlZCxcbiAgJltkaXNhYmxlZF0sXG4gIGZpZWxkc2V0W2Rpc2FibGVkXSAmIHtcbiAgICAmOmhvdmVyLFxuICAgICY6Zm9jdXMsXG4gICAgJi5mb2N1cyB7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkYmFja2dyb3VuZDtcbiAgICAgICAgICBib3JkZXItY29sb3I6ICRib3JkZXI7XG4gICAgfVxuICB9XG5cbiAgLmJhZGdlIHtcbiAgICBjb2xvcjogJGJhY2tncm91bmQ7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogJGNvbG9yO1xuICB9XG59XG5cbi8vIEJ1dHRvbiBzaXplc1xuQG1peGluIGJ1dHRvbi1zaXplKCRwYWRkaW5nLXZlcnRpY2FsLCAkcGFkZGluZy1ob3Jpem9udGFsLCAkZm9udC1zaXplLCAkbGluZS1oZWlnaHQsICRib3JkZXItcmFkaXVzKSB7XG4gIHBhZGRpbmc6ICRwYWRkaW5nLXZlcnRpY2FsICRwYWRkaW5nLWhvcml6b250YWw7XG4gIGZvbnQtc2l6ZTogJGZvbnQtc2l6ZTtcbiAgbGluZS1oZWlnaHQ6ICRsaW5lLWhlaWdodDtcbiAgYm9yZGVyLXJhZGl1czogJGJvcmRlci1yYWRpdXM7XG59XG4iLCIvLyBPcGFjaXR5XG5cbkBtaXhpbiBvcGFjaXR5KCRvcGFjaXR5KSB7XG4gIG9wYWNpdHk6ICRvcGFjaXR5O1xuICAvLyBJRTggZmlsdGVyXG4gICRvcGFjaXR5LWllOiAoJG9wYWNpdHkgKiAxMDApO1xuICBmaWx0ZXI6IGFscGhhKG9wYWNpdHk9JG9wYWNpdHktaWUpO1xufVxuIiwiLy9cbi8vIENvbXBvbmVudCBhbmltYXRpb25zXG4vLyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuXG4vLyBIZWFkcyB1cCFcbi8vXG4vLyBXZSBkb24ndCB1c2UgdGhlIGAub3BhY2l0eSgpYCBtaXhpbiBoZXJlIHNpbmNlIGl0IGNhdXNlcyBhIGJ1ZyB3aXRoIHRleHRcbi8vIGZpZWxkcyBpbiBJRTctOC4gU291cmNlOiBodHRwczovL2dpdGh1Yi5jb20vdHdicy9ib290c3RyYXAvcHVsbC8zNTUyLlxuXG4uZmFkZSB7XG4gIG9wYWNpdHk6IDA7XG4gIEBpbmNsdWRlIHRyYW5zaXRpb24ob3BhY2l0eSAuMTVzIGxpbmVhcik7XG4gICYuaW4ge1xuICAgIG9wYWNpdHk6IDE7XG4gIH1cbn1cblxuLmNvbGxhcHNlIHtcbiAgZGlzcGxheTogbm9uZTtcblxuICAmLmluICAgICAgeyBkaXNwbGF5OiBibG9jazsgfVxuICAvLyBbY29udmVydGVyXSBleHRyYWN0ZWQgdHImLmluIHRvIHRyLmNvbGxhcHNlLmluXG4gIC8vIFtjb252ZXJ0ZXJdIGV4dHJhY3RlZCB0Ym9keSYuaW4gdG8gdGJvZHkuY29sbGFwc2UuaW5cbn1cblxudHIuY29sbGFwc2UuaW4gICAgeyBkaXNwbGF5OiB0YWJsZS1yb3c7IH1cblxudGJvZHkuY29sbGFwc2UuaW4geyBkaXNwbGF5OiB0YWJsZS1yb3ctZ3JvdXA7IH1cblxuLmNvbGxhcHNpbmcge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIGhlaWdodDogMDtcbiAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgQGluY2x1ZGUgdHJhbnNpdGlvbi1wcm9wZXJ0eShoZWlnaHQsIHZpc2liaWxpdHkpO1xuICBAaW5jbHVkZSB0cmFuc2l0aW9uLWR1cmF0aW9uKC4zNXMpO1xuICBAaW5jbHVkZSB0cmFuc2l0aW9uLXRpbWluZy1mdW5jdGlvbihlYXNlKTtcbn1cbiIsIi8vXG4vLyBEcm9wZG93biBtZW51c1xuLy8gLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cblxuXG4vLyBEcm9wZG93biBhcnJvdy9jYXJldFxuLmNhcmV0IHtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICB3aWR0aDogMDtcbiAgaGVpZ2h0OiAwO1xuICBtYXJnaW4tbGVmdDogMnB4O1xuICB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlO1xuICBib3JkZXItdG9wOiAgICRjYXJldC13aWR0aC1iYXNlIGRhc2hlZDtcbiAgYm9yZGVyLXRvcDogICAkY2FyZXQtd2lkdGgtYmFzZSBzb2xpZCBcXDk7IC8vIElFOFxuICBib3JkZXItcmlnaHQ6ICRjYXJldC13aWR0aC1iYXNlIHNvbGlkIHRyYW5zcGFyZW50O1xuICBib3JkZXItbGVmdDogICRjYXJldC13aWR0aC1iYXNlIHNvbGlkIHRyYW5zcGFyZW50O1xufVxuXG4vLyBUaGUgZHJvcGRvd24gd3JhcHBlciAoZGl2KVxuLmRyb3B1cCxcbi5kcm9wZG93biB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbn1cblxuLy8gUHJldmVudCB0aGUgZm9jdXMgb24gdGhlIGRyb3Bkb3duIHRvZ2dsZSB3aGVuIGNsb3NpbmcgZHJvcGRvd25zXG4uZHJvcGRvd24tdG9nZ2xlOmZvY3VzIHtcbiAgb3V0bGluZTogMDtcbn1cblxuLy8gVGhlIGRyb3Bkb3duIG1lbnUgKHVsKVxuLmRyb3Bkb3duLW1lbnUge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHRvcDogMTAwJTtcbiAgbGVmdDogMDtcbiAgei1pbmRleDogJHppbmRleC1kcm9wZG93bjtcbiAgZGlzcGxheTogbm9uZTsgLy8gbm9uZSBieSBkZWZhdWx0LCBidXQgYmxvY2sgb24gXCJvcGVuXCIgb2YgdGhlIG1lbnVcbiAgZmxvYXQ6IGxlZnQ7XG4gIG1pbi13aWR0aDogMTYwcHg7XG4gIHBhZGRpbmc6IDVweCAwO1xuICBtYXJnaW46IDJweCAwIDA7IC8vIG92ZXJyaWRlIGRlZmF1bHQgdWxcbiAgbGlzdC1zdHlsZTogbm9uZTtcbiAgZm9udC1zaXplOiAkZm9udC1zaXplLWJhc2U7XG4gIHRleHQtYWxpZ246IGxlZnQ7IC8vIEVuc3VyZXMgcHJvcGVyIGFsaWdubWVudCBpZiBwYXJlbnQgaGFzIGl0IGNoYW5nZWQgKGUuZy4sIG1vZGFsIGZvb3RlcilcbiAgYmFja2dyb3VuZC1jb2xvcjogJGRyb3Bkb3duLWJnO1xuICBib3JkZXI6IDFweCBzb2xpZCAkZHJvcGRvd24tZmFsbGJhY2stYm9yZGVyOyAvLyBJRTggZmFsbGJhY2tcbiAgYm9yZGVyOiAxcHggc29saWQgJGRyb3Bkb3duLWJvcmRlcjtcbiAgYm9yZGVyLXJhZGl1czogJGJvcmRlci1yYWRpdXMtYmFzZTtcbiAgQGluY2x1ZGUgYm94LXNoYWRvdygwIDZweCAxMnB4IHJnYmEoMCwwLDAsLjE3NSkpO1xuICBiYWNrZ3JvdW5kLWNsaXA6IHBhZGRpbmctYm94O1xuXG4gIC8vIEFsaWducyB0aGUgZHJvcGRvd24gbWVudSB0byByaWdodFxuICAvL1xuICAvLyBEZXByZWNhdGVkIGFzIG9mIDMuMS4wIGluIGZhdm9yIG9mIGAuZHJvcGRvd24tbWVudS1bZGlyXWBcbiAgJi5wdWxsLXJpZ2h0IHtcbiAgICByaWdodDogMDtcbiAgICBsZWZ0OiBhdXRvO1xuICB9XG5cbiAgLy8gRGl2aWRlcnMgKGJhc2ljYWxseSBhbiBocikgd2l0aGluIHRoZSBkcm9wZG93blxuICAuZGl2aWRlciB7XG4gICAgQGluY2x1ZGUgbmF2LWRpdmlkZXIoJGRyb3Bkb3duLWRpdmlkZXItYmcpO1xuICB9XG5cbiAgLy8gTGlua3Mgd2l0aGluIHRoZSBkcm9wZG93biBtZW51XG4gID4gbGkgPiBhIHtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICBwYWRkaW5nOiAzcHggMjBweDtcbiAgICBjbGVhcjogYm90aDtcbiAgICBmb250LXdlaWdodDogbm9ybWFsO1xuICAgIGxpbmUtaGVpZ2h0OiAkbGluZS1oZWlnaHQtYmFzZTtcbiAgICBjb2xvcjogJGRyb3Bkb3duLWxpbmstY29sb3I7XG4gICAgd2hpdGUtc3BhY2U6IG5vd3JhcDsgLy8gcHJldmVudCBsaW5rcyBmcm9tIHJhbmRvbWx5IGJyZWFraW5nIG9udG8gbmV3IGxpbmVzXG4gIH1cbn1cblxuLy8gSG92ZXIvRm9jdXMgc3RhdGVcbi5kcm9wZG93bi1tZW51ID4gbGkgPiBhIHtcbiAgJjpob3ZlcixcbiAgJjpmb2N1cyB7XG4gICAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICAgIGNvbG9yOiAkZHJvcGRvd24tbGluay1ob3Zlci1jb2xvcjtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkZHJvcGRvd24tbGluay1ob3Zlci1iZztcbiAgfVxufVxuXG4vLyBBY3RpdmUgc3RhdGVcbi5kcm9wZG93bi1tZW51ID4gLmFjdGl2ZSA+IGEge1xuICAmLFxuICAmOmhvdmVyLFxuICAmOmZvY3VzIHtcbiAgICBjb2xvcjogJGRyb3Bkb3duLWxpbmstYWN0aXZlLWNvbG9yO1xuICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgICBvdXRsaW5lOiAwO1xuICAgIGJhY2tncm91bmQtY29sb3I6ICRkcm9wZG93bi1saW5rLWFjdGl2ZS1iZztcbiAgfVxufVxuXG4vLyBEaXNhYmxlZCBzdGF0ZVxuLy9cbi8vIEdyYXkgb3V0IHRleHQgYW5kIGVuc3VyZSB0aGUgaG92ZXIvZm9jdXMgc3RhdGUgcmVtYWlucyBncmF5XG5cbi5kcm9wZG93bi1tZW51ID4gLmRpc2FibGVkID4gYSB7XG4gICYsXG4gICY6aG92ZXIsXG4gICY6Zm9jdXMge1xuICAgIGNvbG9yOiAkZHJvcGRvd24tbGluay1kaXNhYmxlZC1jb2xvcjtcbiAgfVxuXG4gIC8vIE51a2UgaG92ZXIvZm9jdXMgZWZmZWN0c1xuICAmOmhvdmVyLFxuICAmOmZvY3VzIHtcbiAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gICAgYmFja2dyb3VuZC1pbWFnZTogbm9uZTsgLy8gUmVtb3ZlIENTUyBncmFkaWVudFxuICAgIEBpbmNsdWRlIHJlc2V0LWZpbHRlcjtcbiAgICBjdXJzb3I6ICRjdXJzb3ItZGlzYWJsZWQ7XG4gIH1cbn1cblxuLy8gT3BlbiBzdGF0ZSBmb3IgdGhlIGRyb3Bkb3duXG4ub3BlbiB7XG4gIC8vIFNob3cgdGhlIG1lbnVcbiAgPiAuZHJvcGRvd24tbWVudSB7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gIH1cblxuICAvLyBSZW1vdmUgdGhlIG91dGxpbmUgd2hlbiA6Zm9jdXMgaXMgdHJpZ2dlcmVkXG4gID4gYSB7XG4gICAgb3V0bGluZTogMDtcbiAgfVxufVxuXG4vLyBNZW51IHBvc2l0aW9uaW5nXG4vL1xuLy8gQWRkIGV4dHJhIGNsYXNzIHRvIGAuZHJvcGRvd24tbWVudWAgdG8gZmxpcCB0aGUgYWxpZ25tZW50IG9mIHRoZSBkcm9wZG93blxuLy8gbWVudSB3aXRoIHRoZSBwYXJlbnQuXG4uZHJvcGRvd24tbWVudS1yaWdodCB7XG4gIGxlZnQ6IGF1dG87IC8vIFJlc2V0IHRoZSBkZWZhdWx0IGZyb20gYC5kcm9wZG93bi1tZW51YFxuICByaWdodDogMDtcbn1cbi8vIFdpdGggdjMsIHdlIGVuYWJsZWQgYXV0by1mbGlwcGluZyBpZiB5b3UgaGF2ZSBhIGRyb3Bkb3duIHdpdGhpbiBhIHJpZ2h0XG4vLyBhbGlnbmVkIG5hdiBjb21wb25lbnQuIFRvIGVuYWJsZSB0aGUgdW5kb2luZyBvZiB0aGF0LCB3ZSBwcm92aWRlIGFuIG92ZXJyaWRlXG4vLyB0byByZXN0b3JlIHRoZSBkZWZhdWx0IGRyb3Bkb3duIG1lbnUgYWxpZ25tZW50LlxuLy9cbi8vIFRoaXMgaXMgb25seSBmb3IgbGVmdC1hbGlnbmluZyBhIGRyb3Bkb3duIG1lbnUgd2l0aGluIGEgYC5uYXZiYXItcmlnaHRgIG9yXG4vLyBgLnB1bGwtcmlnaHRgIG5hdiBjb21wb25lbnQuXG4uZHJvcGRvd24tbWVudS1sZWZ0IHtcbiAgbGVmdDogMDtcbiAgcmlnaHQ6IGF1dG87XG59XG5cbi8vIERyb3Bkb3duIHNlY3Rpb24gaGVhZGVyc1xuLmRyb3Bkb3duLWhlYWRlciB7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBwYWRkaW5nOiAzcHggMjBweDtcbiAgZm9udC1zaXplOiAkZm9udC1zaXplLXNtYWxsO1xuICBsaW5lLWhlaWdodDogJGxpbmUtaGVpZ2h0LWJhc2U7XG4gIGNvbG9yOiAkZHJvcGRvd24taGVhZGVyLWNvbG9yO1xuICB3aGl0ZS1zcGFjZTogbm93cmFwOyAvLyBhcyB3aXRoID4gbGkgPiBhXG59XG5cbi8vIEJhY2tkcm9wIHRvIGNhdGNoIGJvZHkgY2xpY2tzIG9uIG1vYmlsZSwgZXRjLlxuLmRyb3Bkb3duLWJhY2tkcm9wIHtcbiAgcG9zaXRpb246IGZpeGVkO1xuICBsZWZ0OiAwO1xuICByaWdodDogMDtcbiAgYm90dG9tOiAwO1xuICB0b3A6IDA7XG4gIHotaW5kZXg6ICgkemluZGV4LWRyb3Bkb3duIC0gMTApO1xufVxuXG4vLyBSaWdodCBhbGlnbmVkIGRyb3Bkb3duc1xuLnB1bGwtcmlnaHQgPiAuZHJvcGRvd24tbWVudSB7XG4gIHJpZ2h0OiAwO1xuICBsZWZ0OiBhdXRvO1xufVxuXG4vLyBBbGxvdyBmb3IgZHJvcGRvd25zIHRvIGdvIGJvdHRvbSB1cCAoYWthLCBkcm9wdXAtbWVudSlcbi8vXG4vLyBKdXN0IGFkZCAuZHJvcHVwIGFmdGVyIHRoZSBzdGFuZGFyZCAuZHJvcGRvd24gY2xhc3MgYW5kIHlvdSdyZSBzZXQsIGJyby5cbi8vIFRPRE86IGFic3RyYWN0IHRoaXMgc28gdGhhdCB0aGUgbmF2YmFyIGZpeGVkIHN0eWxlcyBhcmUgbm90IHBsYWNlZCBoZXJlP1xuXG4uZHJvcHVwLFxuLm5hdmJhci1maXhlZC1ib3R0b20gLmRyb3Bkb3duIHtcbiAgLy8gUmV2ZXJzZSB0aGUgY2FyZXRcbiAgLmNhcmV0IHtcbiAgICBib3JkZXItdG9wOiAwO1xuICAgIGJvcmRlci1ib3R0b206ICRjYXJldC13aWR0aC1iYXNlIGRhc2hlZDtcbiAgICBib3JkZXItYm90dG9tOiAkY2FyZXQtd2lkdGgtYmFzZSBzb2xpZCBcXDk7IC8vIElFOFxuICAgIGNvbnRlbnQ6IFwiXCI7XG4gIH1cbiAgLy8gRGlmZmVyZW50IHBvc2l0aW9uaW5nIGZvciBib3R0b20gdXAgbWVudVxuICAuZHJvcGRvd24tbWVudSB7XG4gICAgdG9wOiBhdXRvO1xuICAgIGJvdHRvbTogMTAwJTtcbiAgICBtYXJnaW4tYm90dG9tOiAycHg7XG4gIH1cbn1cblxuXG4vLyBDb21wb25lbnQgYWxpZ25tZW50XG4vL1xuLy8gUmVpdGVyYXRlIHBlciBuYXZiYXIubGVzcyBhbmQgdGhlIG1vZGlmaWVkIGNvbXBvbmVudCBhbGlnbm1lbnQgdGhlcmUuXG5cbkBtZWRpYSAobWluLXdpZHRoOiAkZ3JpZC1mbG9hdC1icmVha3BvaW50KSB7XG4gIC5uYXZiYXItcmlnaHQge1xuICAgIC5kcm9wZG93bi1tZW51IHtcbiAgICAgIHJpZ2h0OiAwOyBsZWZ0OiBhdXRvO1xuICAgIH1cbiAgICAvLyBOZWNlc3NhcnkgZm9yIG92ZXJyaWRlcyBvZiB0aGUgZGVmYXVsdCByaWdodCBhbGlnbmVkIG1lbnUuXG4gICAgLy8gV2lsbCByZW1vdmUgY29tZSB2NCBpbiBhbGwgbGlrZWxpaG9vZC5cbiAgICAuZHJvcGRvd24tbWVudS1sZWZ0IHtcbiAgICAgIGxlZnQ6IDA7IHJpZ2h0OiBhdXRvO1xuICAgIH1cbiAgfVxufVxuIiwiLy8gSG9yaXpvbnRhbCBkaXZpZGVyc1xuLy9cbi8vIERpdmlkZXJzIChiYXNpY2FsbHkgYW4gaHIpIHdpdGhpbiBkcm9wZG93bnMgYW5kIG5hdiBsaXN0c1xuXG5AbWl4aW4gbmF2LWRpdmlkZXIoJGNvbG9yOiAjZTVlNWU1KSB7XG4gIGhlaWdodDogMXB4O1xuICBtYXJnaW46ICgoJGxpbmUtaGVpZ2h0LWNvbXB1dGVkIC8gMikgLSAxKSAwO1xuICBvdmVyZmxvdzogaGlkZGVuO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAkY29sb3I7XG59XG4iLCIvLyBSZXNldCBmaWx0ZXJzIGZvciBJRVxuLy9cbi8vIFdoZW4geW91IG5lZWQgdG8gcmVtb3ZlIGEgZ3JhZGllbnQgYmFja2dyb3VuZCwgZG8gbm90IGZvcmdldCB0byB1c2UgdGhpcyB0byByZXNldFxuLy8gdGhlIElFIGZpbHRlciBmb3IgSUU5IGFuZCBiZWxvdy5cblxuQG1peGluIHJlc2V0LWZpbHRlcigpIHtcbiAgZmlsdGVyOiBwcm9naWQ6RFhJbWFnZVRyYW5zZm9ybS5NaWNyb3NvZnQuZ3JhZGllbnQoZW5hYmxlZCA9IGZhbHNlKTtcbn1cbiIsIi8vXG4vLyBCdXR0b24gZ3JvdXBzXG4vLyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuXG4vLyBNYWtlIHRoZSBkaXYgYmVoYXZlIGxpa2UgYSBidXR0b25cbi5idG4tZ3JvdXAsXG4uYnRuLWdyb3VwLXZlcnRpY2FsIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7IC8vIG1hdGNoIC5idG4gYWxpZ25tZW50IGdpdmVuIGZvbnQtc2l6ZSBoYWNrIGFib3ZlXG4gID4gLmJ0biB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIGZsb2F0OiBsZWZ0O1xuICAgIC8vIEJyaW5nIHRoZSBcImFjdGl2ZVwiIGJ1dHRvbiB0byB0aGUgZnJvbnRcbiAgICAmOmhvdmVyLFxuICAgICY6Zm9jdXMsXG4gICAgJjphY3RpdmUsXG4gICAgJi5hY3RpdmUge1xuICAgICAgei1pbmRleDogMjtcbiAgICB9XG4gIH1cbn1cblxuLy8gUHJldmVudCBkb3VibGUgYm9yZGVycyB3aGVuIGJ1dHRvbnMgYXJlIG5leHQgdG8gZWFjaCBvdGhlclxuLmJ0bi1ncm91cCB7XG4gIC5idG4gKyAuYnRuLFxuICAuYnRuICsgLmJ0bi1ncm91cCxcbiAgLmJ0bi1ncm91cCArIC5idG4sXG4gIC5idG4tZ3JvdXAgKyAuYnRuLWdyb3VwIHtcbiAgICBtYXJnaW4tbGVmdDogLTFweDtcbiAgfVxufVxuXG4vLyBPcHRpb25hbDogR3JvdXAgbXVsdGlwbGUgYnV0dG9uIGdyb3VwcyB0b2dldGhlciBmb3IgYSB0b29sYmFyXG4uYnRuLXRvb2xiYXIge1xuICBtYXJnaW4tbGVmdDogLTVweDsgLy8gT2Zmc2V0IHRoZSBmaXJzdCBjaGlsZCdzIG1hcmdpblxuICBAaW5jbHVkZSBjbGVhcmZpeDtcblxuICAuYnRuLFxuICAuYnRuLWdyb3VwLFxuICAuaW5wdXQtZ3JvdXAge1xuICAgIGZsb2F0OiBsZWZ0O1xuICB9XG4gID4gLmJ0bixcbiAgPiAuYnRuLWdyb3VwLFxuICA+IC5pbnB1dC1ncm91cCB7XG4gICAgbWFyZ2luLWxlZnQ6IDVweDtcbiAgfVxufVxuXG4uYnRuLWdyb3VwID4gLmJ0bjpub3QoOmZpcnN0LWNoaWxkKTpub3QoOmxhc3QtY2hpbGQpOm5vdCguZHJvcGRvd24tdG9nZ2xlKSB7XG4gIGJvcmRlci1yYWRpdXM6IDA7XG59XG5cbi8vIFNldCBjb3JuZXJzIGluZGl2aWR1YWwgYmVjYXVzZSBzb21ldGltZXMgYSBzaW5nbGUgYnV0dG9uIGNhbiBiZSBpbiBhIC5idG4tZ3JvdXAgYW5kIHdlIG5lZWQgOmZpcnN0LWNoaWxkIGFuZCA6bGFzdC1jaGlsZCB0byBib3RoIG1hdGNoXG4uYnRuLWdyb3VwID4gLmJ0bjpmaXJzdC1jaGlsZCB7XG4gIG1hcmdpbi1sZWZ0OiAwO1xuICAmOm5vdCg6bGFzdC1jaGlsZCk6bm90KC5kcm9wZG93bi10b2dnbGUpIHtcbiAgICBAaW5jbHVkZSBib3JkZXItcmlnaHQtcmFkaXVzKDApO1xuICB9XG59XG4vLyBOZWVkIC5kcm9wZG93bi10b2dnbGUgc2luY2UgOmxhc3QtY2hpbGQgZG9lc24ndCBhcHBseSwgZ2l2ZW4gdGhhdCBhIC5kcm9wZG93bi1tZW51IGlzIHVzZWQgaW1tZWRpYXRlbHkgYWZ0ZXIgaXRcbi5idG4tZ3JvdXAgPiAuYnRuOmxhc3QtY2hpbGQ6bm90KDpmaXJzdC1jaGlsZCksXG4uYnRuLWdyb3VwID4gLmRyb3Bkb3duLXRvZ2dsZTpub3QoOmZpcnN0LWNoaWxkKSB7XG4gIEBpbmNsdWRlIGJvcmRlci1sZWZ0LXJhZGl1cygwKTtcbn1cblxuLy8gQ3VzdG9tIGVkaXRzIGZvciBpbmNsdWRpbmcgYnRuLWdyb3VwcyB3aXRoaW4gYnRuLWdyb3VwcyAodXNlZnVsIGZvciBpbmNsdWRpbmcgZHJvcGRvd24gYnV0dG9ucyB3aXRoaW4gYSBidG4tZ3JvdXApXG4uYnRuLWdyb3VwID4gLmJ0bi1ncm91cCB7XG4gIGZsb2F0OiBsZWZ0O1xufVxuLmJ0bi1ncm91cCA+IC5idG4tZ3JvdXA6bm90KDpmaXJzdC1jaGlsZCk6bm90KDpsYXN0LWNoaWxkKSA+IC5idG4ge1xuICBib3JkZXItcmFkaXVzOiAwO1xufVxuLmJ0bi1ncm91cCA+IC5idG4tZ3JvdXA6Zmlyc3QtY2hpbGQ6bm90KDpsYXN0LWNoaWxkKSB7XG4gID4gLmJ0bjpsYXN0LWNoaWxkLFxuICA+IC5kcm9wZG93bi10b2dnbGUge1xuICAgIEBpbmNsdWRlIGJvcmRlci1yaWdodC1yYWRpdXMoMCk7XG4gIH1cbn1cbi5idG4tZ3JvdXAgPiAuYnRuLWdyb3VwOmxhc3QtY2hpbGQ6bm90KDpmaXJzdC1jaGlsZCkgPiAuYnRuOmZpcnN0LWNoaWxkIHtcbiAgQGluY2x1ZGUgYm9yZGVyLWxlZnQtcmFkaXVzKDApO1xufVxuXG4vLyBPbiBhY3RpdmUgYW5kIG9wZW4sIGRvbid0IHNob3cgb3V0bGluZVxuLmJ0bi1ncm91cCAuZHJvcGRvd24tdG9nZ2xlOmFjdGl2ZSxcbi5idG4tZ3JvdXAub3BlbiAuZHJvcGRvd24tdG9nZ2xlIHtcbiAgb3V0bGluZTogMDtcbn1cblxuXG4vLyBTaXppbmdcbi8vXG4vLyBSZW1peCB0aGUgZGVmYXVsdCBidXR0b24gc2l6aW5nIGNsYXNzZXMgaW50byBuZXcgb25lcyBmb3IgZWFzaWVyIG1hbmlwdWxhdGlvbi5cblxuLmJ0bi1ncm91cC14cyA+IC5idG4geyBAZXh0ZW5kIC5idG4teHM7IH1cbi5idG4tZ3JvdXAtc20gPiAuYnRuIHsgQGV4dGVuZCAuYnRuLXNtOyB9XG4uYnRuLWdyb3VwLWxnID4gLmJ0biB7IEBleHRlbmQgLmJ0bi1sZzsgfVxuXG5cbi8vIFNwbGl0IGJ1dHRvbiBkcm9wZG93bnNcbi8vIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cblxuLy8gR2l2ZSB0aGUgbGluZSBiZXR3ZWVuIGJ1dHRvbnMgc29tZSBkZXB0aFxuLmJ0bi1ncm91cCA+IC5idG4gKyAuZHJvcGRvd24tdG9nZ2xlIHtcbiAgcGFkZGluZy1sZWZ0OiA4cHg7XG4gIHBhZGRpbmctcmlnaHQ6IDhweDtcbn1cbi5idG4tZ3JvdXAgPiAuYnRuLWxnICsgLmRyb3Bkb3duLXRvZ2dsZSB7XG4gIHBhZGRpbmctbGVmdDogMTJweDtcbiAgcGFkZGluZy1yaWdodDogMTJweDtcbn1cblxuLy8gVGhlIGNsaWNrYWJsZSBidXR0b24gZm9yIHRvZ2dsaW5nIHRoZSBtZW51XG4vLyBSZW1vdmUgdGhlIGdyYWRpZW50IGFuZCBzZXQgdGhlIHNhbWUgaW5zZXQgc2hhZG93IGFzIHRoZSA6YWN0aXZlIHN0YXRlXG4uYnRuLWdyb3VwLm9wZW4gLmRyb3Bkb3duLXRvZ2dsZSB7XG4gIEBpbmNsdWRlIGJveC1zaGFkb3coaW5zZXQgMCAzcHggNXB4IHJnYmEoMCwwLDAsLjEyNSkpO1xuXG4gIC8vIFNob3cgbm8gc2hhZG93IGZvciBgLmJ0bi1saW5rYCBzaW5jZSBpdCBoYXMgbm8gb3RoZXIgYnV0dG9uIHN0eWxlcy5cbiAgJi5idG4tbGluayB7XG4gICAgQGluY2x1ZGUgYm94LXNoYWRvdyhub25lKTtcbiAgfVxufVxuXG5cbi8vIFJlcG9zaXRpb24gdGhlIGNhcmV0XG4uYnRuIC5jYXJldCB7XG4gIG1hcmdpbi1sZWZ0OiAwO1xufVxuLy8gQ2FyZXRzIGluIG90aGVyIGJ1dHRvbiBzaXplc1xuLmJ0bi1sZyAuY2FyZXQge1xuICBib3JkZXItd2lkdGg6ICRjYXJldC13aWR0aC1sYXJnZSAkY2FyZXQtd2lkdGgtbGFyZ2UgMDtcbiAgYm9yZGVyLWJvdHRvbS13aWR0aDogMDtcbn1cbi8vIFVwc2lkZSBkb3duIGNhcmV0cyBmb3IgLmRyb3B1cFxuLmRyb3B1cCAuYnRuLWxnIC5jYXJldCB7XG4gIGJvcmRlci13aWR0aDogMCAkY2FyZXQtd2lkdGgtbGFyZ2UgJGNhcmV0LXdpZHRoLWxhcmdlO1xufVxuXG5cbi8vIFZlcnRpY2FsIGJ1dHRvbiBncm91cHNcbi8vIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cblxuLmJ0bi1ncm91cC12ZXJ0aWNhbCB7XG4gID4gLmJ0bixcbiAgPiAuYnRuLWdyb3VwLFxuICA+IC5idG4tZ3JvdXAgPiAuYnRuIHtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICBmbG9hdDogbm9uZTtcbiAgICB3aWR0aDogMTAwJTtcbiAgICBtYXgtd2lkdGg6IDEwMCU7XG4gIH1cblxuICAvLyBDbGVhciBmbG9hdHMgc28gZHJvcGRvd24gbWVudXMgY2FuIGJlIHByb3Blcmx5IHBsYWNlZFxuICA+IC5idG4tZ3JvdXAge1xuICAgIEBpbmNsdWRlIGNsZWFyZml4O1xuICAgID4gLmJ0biB7XG4gICAgICBmbG9hdDogbm9uZTtcbiAgICB9XG4gIH1cblxuICA+IC5idG4gKyAuYnRuLFxuICA+IC5idG4gKyAuYnRuLWdyb3VwLFxuICA+IC5idG4tZ3JvdXAgKyAuYnRuLFxuICA+IC5idG4tZ3JvdXAgKyAuYnRuLWdyb3VwIHtcbiAgICBtYXJnaW4tdG9wOiAtMXB4O1xuICAgIG1hcmdpbi1sZWZ0OiAwO1xuICB9XG59XG5cbi5idG4tZ3JvdXAtdmVydGljYWwgPiAuYnRuIHtcbiAgJjpub3QoOmZpcnN0LWNoaWxkKTpub3QoOmxhc3QtY2hpbGQpIHtcbiAgICBib3JkZXItcmFkaXVzOiAwO1xuICB9XG4gICY6Zmlyc3QtY2hpbGQ6bm90KDpsYXN0LWNoaWxkKSB7XG4gICAgQGluY2x1ZGUgYm9yZGVyLXRvcC1yYWRpdXMoJGJ0bi1ib3JkZXItcmFkaXVzLWJhc2UpO1xuICAgIEBpbmNsdWRlIGJvcmRlci1ib3R0b20tcmFkaXVzKDApO1xuICB9XG4gICY6bGFzdC1jaGlsZDpub3QoOmZpcnN0LWNoaWxkKSB7XG4gICAgQGluY2x1ZGUgYm9yZGVyLXRvcC1yYWRpdXMoMCk7XG4gICAgQGluY2x1ZGUgYm9yZGVyLWJvdHRvbS1yYWRpdXMoJGJ0bi1ib3JkZXItcmFkaXVzLWJhc2UpO1xuICB9XG59XG4uYnRuLWdyb3VwLXZlcnRpY2FsID4gLmJ0bi1ncm91cDpub3QoOmZpcnN0LWNoaWxkKTpub3QoOmxhc3QtY2hpbGQpID4gLmJ0biB7XG4gIGJvcmRlci1yYWRpdXM6IDA7XG59XG4uYnRuLWdyb3VwLXZlcnRpY2FsID4gLmJ0bi1ncm91cDpmaXJzdC1jaGlsZDpub3QoOmxhc3QtY2hpbGQpIHtcbiAgPiAuYnRuOmxhc3QtY2hpbGQsXG4gID4gLmRyb3Bkb3duLXRvZ2dsZSB7XG4gICAgQGluY2x1ZGUgYm9yZGVyLWJvdHRvbS1yYWRpdXMoMCk7XG4gIH1cbn1cbi5idG4tZ3JvdXAtdmVydGljYWwgPiAuYnRuLWdyb3VwOmxhc3QtY2hpbGQ6bm90KDpmaXJzdC1jaGlsZCkgPiAuYnRuOmZpcnN0LWNoaWxkIHtcbiAgQGluY2x1ZGUgYm9yZGVyLXRvcC1yYWRpdXMoMCk7XG59XG5cblxuLy8gSnVzdGlmaWVkIGJ1dHRvbiBncm91cHNcbi8vIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cblxuLmJ0bi1ncm91cC1qdXN0aWZpZWQge1xuICBkaXNwbGF5OiB0YWJsZTtcbiAgd2lkdGg6IDEwMCU7XG4gIHRhYmxlLWxheW91dDogZml4ZWQ7XG4gIGJvcmRlci1jb2xsYXBzZTogc2VwYXJhdGU7XG4gID4gLmJ0bixcbiAgPiAuYnRuLWdyb3VwIHtcbiAgICBmbG9hdDogbm9uZTtcbiAgICBkaXNwbGF5OiB0YWJsZS1jZWxsO1xuICAgIHdpZHRoOiAxJTtcbiAgfVxuICA+IC5idG4tZ3JvdXAgLmJ0biB7XG4gICAgd2lkdGg6IDEwMCU7XG4gIH1cblxuICA+IC5idG4tZ3JvdXAgLmRyb3Bkb3duLW1lbnUge1xuICAgIGxlZnQ6IGF1dG87XG4gIH1cbn1cblxuXG4vLyBDaGVja2JveCBhbmQgcmFkaW8gb3B0aW9uc1xuLy9cbi8vIEluIG9yZGVyIHRvIHN1cHBvcnQgdGhlIGJyb3dzZXIncyBmb3JtIHZhbGlkYXRpb24gZmVlZGJhY2ssIHBvd2VyZWQgYnkgdGhlXG4vLyBgcmVxdWlyZWRgIGF0dHJpYnV0ZSwgd2UgaGF2ZSB0byBcImhpZGVcIiB0aGUgaW5wdXRzIHZpYSBgY2xpcGAuIFdlIGNhbm5vdCB1c2Vcbi8vIGBkaXNwbGF5OiBub25lO2Agb3IgYHZpc2liaWxpdHk6IGhpZGRlbjtgIGFzIHRoYXQgYWxzbyBoaWRlcyB0aGUgcG9wb3Zlci5cbi8vIFNpbXBseSB2aXN1YWxseSBoaWRpbmcgdGhlIGlucHV0cyB2aWEgYG9wYWNpdHlgIHdvdWxkIGxlYXZlIHRoZW0gY2xpY2thYmxlIGluXG4vLyBjZXJ0YWluIGNhc2VzIHdoaWNoIGlzIHByZXZlbnRlZCBieSB1c2luZyBgY2xpcGAgYW5kIGBwb2ludGVyLWV2ZW50c2AuXG4vLyBUaGlzIHdheSwgd2UgZW5zdXJlIGEgRE9NIGVsZW1lbnQgaXMgdmlzaWJsZSB0byBwb3NpdGlvbiB0aGUgcG9wb3ZlciBmcm9tLlxuLy9cbi8vIFNlZSBodHRwczovL2dpdGh1Yi5jb20vdHdicy9ib290c3RyYXAvcHVsbC8xMjc5NCBhbmRcbi8vIGh0dHBzOi8vZ2l0aHViLmNvbS90d2JzL2Jvb3RzdHJhcC9wdWxsLzE0NTU5IGZvciBtb3JlIGluZm9ybWF0aW9uLlxuXG5bZGF0YS10b2dnbGU9XCJidXR0b25zXCJdIHtcbiAgPiAuYnRuLFxuICA+IC5idG4tZ3JvdXAgPiAuYnRuIHtcbiAgICBpbnB1dFt0eXBlPVwicmFkaW9cIl0sXG4gICAgaW5wdXRbdHlwZT1cImNoZWNrYm94XCJdIHtcbiAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgIGNsaXA6IHJlY3QoMCwwLDAsMCk7XG4gICAgICBwb2ludGVyLWV2ZW50czogbm9uZTtcbiAgICB9XG4gIH1cbn1cbiIsIi8vIFNpbmdsZSBzaWRlIGJvcmRlci1yYWRpdXNcblxuQG1peGluIGJvcmRlci10b3AtcmFkaXVzKCRyYWRpdXMpIHtcbiAgYm9yZGVyLXRvcC1yaWdodC1yYWRpdXM6ICRyYWRpdXM7XG4gICBib3JkZXItdG9wLWxlZnQtcmFkaXVzOiAkcmFkaXVzO1xufVxuQG1peGluIGJvcmRlci1yaWdodC1yYWRpdXMoJHJhZGl1cykge1xuICBib3JkZXItYm90dG9tLXJpZ2h0LXJhZGl1czogJHJhZGl1cztcbiAgICAgYm9yZGVyLXRvcC1yaWdodC1yYWRpdXM6ICRyYWRpdXM7XG59XG5AbWl4aW4gYm9yZGVyLWJvdHRvbS1yYWRpdXMoJHJhZGl1cykge1xuICBib3JkZXItYm90dG9tLXJpZ2h0LXJhZGl1czogJHJhZGl1cztcbiAgIGJvcmRlci1ib3R0b20tbGVmdC1yYWRpdXM6ICRyYWRpdXM7XG59XG5AbWl4aW4gYm9yZGVyLWxlZnQtcmFkaXVzKCRyYWRpdXMpIHtcbiAgYm9yZGVyLWJvdHRvbS1sZWZ0LXJhZGl1czogJHJhZGl1cztcbiAgICAgYm9yZGVyLXRvcC1sZWZ0LXJhZGl1czogJHJhZGl1cztcbn1cbiIsIi8vXG4vLyBJbnB1dCBncm91cHNcbi8vIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG5cbi8vIEJhc2Ugc3R5bGVzXG4vLyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG4uaW5wdXQtZ3JvdXAge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7IC8vIEZvciBkcm9wZG93bnNcbiAgZGlzcGxheTogdGFibGU7XG4gIGJvcmRlci1jb2xsYXBzZTogc2VwYXJhdGU7IC8vIHByZXZlbnQgaW5wdXQgZ3JvdXBzIGZyb20gaW5oZXJpdGluZyBib3JkZXIgc3R5bGVzIGZyb20gdGFibGUgY2VsbHMgd2hlbiBwbGFjZWQgd2l0aGluIGEgdGFibGVcblxuICAvLyBVbmRvIHBhZGRpbmcgYW5kIGZsb2F0IG9mIGdyaWQgY2xhc3Nlc1xuICAmW2NsYXNzKj1cImNvbC1cIl0ge1xuICAgIGZsb2F0OiBub25lO1xuICAgIHBhZGRpbmctbGVmdDogMDtcbiAgICBwYWRkaW5nLXJpZ2h0OiAwO1xuICB9XG5cbiAgLmZvcm0tY29udHJvbCB7XG4gICAgLy8gRW5zdXJlIHRoYXQgdGhlIGlucHV0IGlzIGFsd2F5cyBhYm92ZSB0aGUgKmFwcGVuZGVkKiBhZGRvbiBidXR0b24gZm9yXG4gICAgLy8gcHJvcGVyIGJvcmRlciBjb2xvcnMuXG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIHotaW5kZXg6IDI7XG5cbiAgICAvLyBJRTkgZnViYXJzIHRoZSBwbGFjZWhvbGRlciBhdHRyaWJ1dGUgaW4gdGV4dCBpbnB1dHMgYW5kIHRoZSBhcnJvd3Mgb25cbiAgICAvLyBzZWxlY3QgZWxlbWVudHMgaW4gaW5wdXQgZ3JvdXBzLiBUbyBmaXggaXQsIHdlIGZsb2F0IHRoZSBpbnB1dC4gRGV0YWlsczpcbiAgICAvLyBodHRwczovL2dpdGh1Yi5jb20vdHdicy9ib290c3RyYXAvaXNzdWVzLzExNTYxI2lzc3VlY29tbWVudC0yODkzNjg1NVxuICAgIGZsb2F0OiBsZWZ0O1xuXG4gICAgd2lkdGg6IDEwMCU7XG4gICAgbWFyZ2luLWJvdHRvbTogMDtcblxuICAgICY6Zm9jdXMge1xuICAgICAgei1pbmRleDogMztcbiAgICB9XG4gIH1cbn1cblxuLy8gU2l6aW5nIG9wdGlvbnNcbi8vXG4vLyBSZW1peCB0aGUgZGVmYXVsdCBmb3JtIGNvbnRyb2wgc2l6aW5nIGNsYXNzZXMgaW50byBuZXcgb25lcyBmb3IgZWFzaWVyXG4vLyBtYW5pcHVsYXRpb24uXG5cbi5pbnB1dC1ncm91cC1sZyA+IC5mb3JtLWNvbnRyb2wsXG4uaW5wdXQtZ3JvdXAtbGcgPiAuaW5wdXQtZ3JvdXAtYWRkb24sXG4uaW5wdXQtZ3JvdXAtbGcgPiAuaW5wdXQtZ3JvdXAtYnRuID4gLmJ0biB7XG4gIEBleHRlbmQgLmlucHV0LWxnO1xufVxuLmlucHV0LWdyb3VwLXNtID4gLmZvcm0tY29udHJvbCxcbi5pbnB1dC1ncm91cC1zbSA+IC5pbnB1dC1ncm91cC1hZGRvbixcbi5pbnB1dC1ncm91cC1zbSA+IC5pbnB1dC1ncm91cC1idG4gPiAuYnRuIHtcbiAgQGV4dGVuZCAuaW5wdXQtc207XG59XG5cblxuLy8gRGlzcGxheSBhcyB0YWJsZS1jZWxsXG4vLyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG4uaW5wdXQtZ3JvdXAtYWRkb24sXG4uaW5wdXQtZ3JvdXAtYnRuLFxuLmlucHV0LWdyb3VwIC5mb3JtLWNvbnRyb2wge1xuICBkaXNwbGF5OiB0YWJsZS1jZWxsO1xuXG4gICY6bm90KDpmaXJzdC1jaGlsZCk6bm90KDpsYXN0LWNoaWxkKSB7XG4gICAgYm9yZGVyLXJhZGl1czogMDtcbiAgfVxufVxuLy8gQWRkb24gYW5kIGFkZG9uIHdyYXBwZXIgZm9yIGJ1dHRvbnNcbi5pbnB1dC1ncm91cC1hZGRvbixcbi5pbnB1dC1ncm91cC1idG4ge1xuICB3aWR0aDogMSU7XG4gIHdoaXRlLXNwYWNlOiBub3dyYXA7XG4gIHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7IC8vIE1hdGNoIHRoZSBpbnB1dHNcbn1cblxuLy8gVGV4dCBpbnB1dCBncm91cHNcbi8vIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cbi5pbnB1dC1ncm91cC1hZGRvbiB7XG4gIHBhZGRpbmc6ICRwYWRkaW5nLWJhc2UtdmVydGljYWwgJHBhZGRpbmctYmFzZS1ob3Jpem9udGFsO1xuICBmb250LXNpemU6ICRmb250LXNpemUtYmFzZTtcbiAgZm9udC13ZWlnaHQ6IG5vcm1hbDtcbiAgbGluZS1oZWlnaHQ6IDE7XG4gIGNvbG9yOiAkaW5wdXQtY29sb3I7XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgYmFja2dyb3VuZC1jb2xvcjogJGlucHV0LWdyb3VwLWFkZG9uLWJnO1xuICBib3JkZXI6IDFweCBzb2xpZCAkaW5wdXQtZ3JvdXAtYWRkb24tYm9yZGVyLWNvbG9yO1xuICBib3JkZXItcmFkaXVzOiAkaW5wdXQtYm9yZGVyLXJhZGl1cztcblxuICAvLyBTaXppbmdcbiAgJi5pbnB1dC1zbSB7XG4gICAgcGFkZGluZzogJHBhZGRpbmctc21hbGwtdmVydGljYWwgJHBhZGRpbmctc21hbGwtaG9yaXpvbnRhbDtcbiAgICBmb250LXNpemU6ICRmb250LXNpemUtc21hbGw7XG4gICAgYm9yZGVyLXJhZGl1czogJGlucHV0LWJvcmRlci1yYWRpdXMtc21hbGw7XG4gIH1cbiAgJi5pbnB1dC1sZyB7XG4gICAgcGFkZGluZzogJHBhZGRpbmctbGFyZ2UtdmVydGljYWwgJHBhZGRpbmctbGFyZ2UtaG9yaXpvbnRhbDtcbiAgICBmb250LXNpemU6ICRmb250LXNpemUtbGFyZ2U7XG4gICAgYm9yZGVyLXJhZGl1czogJGlucHV0LWJvcmRlci1yYWRpdXMtbGFyZ2U7XG4gIH1cblxuICAvLyBOdWtlIGRlZmF1bHQgbWFyZ2lucyBmcm9tIGNoZWNrYm94ZXMgYW5kIHJhZGlvcyB0byB2ZXJ0aWNhbGx5IGNlbnRlciB3aXRoaW4uXG4gIGlucHV0W3R5cGU9XCJyYWRpb1wiXSxcbiAgaW5wdXRbdHlwZT1cImNoZWNrYm94XCJdIHtcbiAgICBtYXJnaW4tdG9wOiAwO1xuICB9XG59XG5cbi8vIFJlc2V0IHJvdW5kZWQgY29ybmVyc1xuLmlucHV0LWdyb3VwIC5mb3JtLWNvbnRyb2w6Zmlyc3QtY2hpbGQsXG4uaW5wdXQtZ3JvdXAtYWRkb246Zmlyc3QtY2hpbGQsXG4uaW5wdXQtZ3JvdXAtYnRuOmZpcnN0LWNoaWxkID4gLmJ0bixcbi5pbnB1dC1ncm91cC1idG46Zmlyc3QtY2hpbGQgPiAuYnRuLWdyb3VwID4gLmJ0bixcbi5pbnB1dC1ncm91cC1idG46Zmlyc3QtY2hpbGQgPiAuZHJvcGRvd24tdG9nZ2xlLFxuLmlucHV0LWdyb3VwLWJ0bjpsYXN0LWNoaWxkID4gLmJ0bjpub3QoOmxhc3QtY2hpbGQpOm5vdCguZHJvcGRvd24tdG9nZ2xlKSxcbi5pbnB1dC1ncm91cC1idG46bGFzdC1jaGlsZCA+IC5idG4tZ3JvdXA6bm90KDpsYXN0LWNoaWxkKSA+IC5idG4ge1xuICBAaW5jbHVkZSBib3JkZXItcmlnaHQtcmFkaXVzKDApO1xufVxuLmlucHV0LWdyb3VwLWFkZG9uOmZpcnN0LWNoaWxkIHtcbiAgYm9yZGVyLXJpZ2h0OiAwO1xufVxuLmlucHV0LWdyb3VwIC5mb3JtLWNvbnRyb2w6bGFzdC1jaGlsZCxcbi5pbnB1dC1ncm91cC1hZGRvbjpsYXN0LWNoaWxkLFxuLmlucHV0LWdyb3VwLWJ0bjpsYXN0LWNoaWxkID4gLmJ0bixcbi5pbnB1dC1ncm91cC1idG46bGFzdC1jaGlsZCA+IC5idG4tZ3JvdXAgPiAuYnRuLFxuLmlucHV0LWdyb3VwLWJ0bjpsYXN0LWNoaWxkID4gLmRyb3Bkb3duLXRvZ2dsZSxcbi5pbnB1dC1ncm91cC1idG46Zmlyc3QtY2hpbGQgPiAuYnRuOm5vdCg6Zmlyc3QtY2hpbGQpLFxuLmlucHV0LWdyb3VwLWJ0bjpmaXJzdC1jaGlsZCA+IC5idG4tZ3JvdXA6bm90KDpmaXJzdC1jaGlsZCkgPiAuYnRuIHtcbiAgQGluY2x1ZGUgYm9yZGVyLWxlZnQtcmFkaXVzKDApO1xufVxuLmlucHV0LWdyb3VwLWFkZG9uOmxhc3QtY2hpbGQge1xuICBib3JkZXItbGVmdDogMDtcbn1cblxuLy8gQnV0dG9uIGlucHV0IGdyb3Vwc1xuLy8gLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuLmlucHV0LWdyb3VwLWJ0biB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgLy8gSmFua2lseSBwcmV2ZW50IGlucHV0IGJ1dHRvbiBncm91cHMgZnJvbSB3cmFwcGluZyB3aXRoIGB3aGl0ZS1zcGFjZWAgYW5kXG4gIC8vIGBmb250LXNpemVgIGluIGNvbWJpbmF0aW9uIHdpdGggYGlubGluZS1ibG9ja2Agb24gYnV0dG9ucy5cbiAgZm9udC1zaXplOiAwO1xuICB3aGl0ZS1zcGFjZTogbm93cmFwO1xuXG4gIC8vIE5lZ2F0aXZlIG1hcmdpbiBmb3Igc3BhY2luZywgcG9zaXRpb24gZm9yIGJyaW5naW5nIGhvdmVyZWQvZm9jdXNlZC9hY3RpdmVkXG4gIC8vIGVsZW1lbnQgYWJvdmUgdGhlIHNpYmxpbmdzLlxuICA+IC5idG4ge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICArIC5idG4ge1xuICAgICAgbWFyZ2luLWxlZnQ6IC0xcHg7XG4gICAgfVxuICAgIC8vIEJyaW5nIHRoZSBcImFjdGl2ZVwiIGJ1dHRvbiB0byB0aGUgZnJvbnRcbiAgICAmOmhvdmVyLFxuICAgICY6Zm9jdXMsXG4gICAgJjphY3RpdmUge1xuICAgICAgei1pbmRleDogMjtcbiAgICB9XG4gIH1cblxuICAvLyBOZWdhdGl2ZSBtYXJnaW4gdG8gb25seSBoYXZlIGEgMXB4IGJvcmRlciBiZXR3ZWVuIHRoZSB0d29cbiAgJjpmaXJzdC1jaGlsZCB7XG4gICAgPiAuYnRuLFxuICAgID4gLmJ0bi1ncm91cCB7XG4gICAgICBtYXJnaW4tcmlnaHQ6IC0xcHg7XG4gICAgfVxuICB9XG4gICY6bGFzdC1jaGlsZCB7XG4gICAgPiAuYnRuLFxuICAgID4gLmJ0bi1ncm91cCB7XG4gICAgICB6LWluZGV4OiAyO1xuICAgICAgbWFyZ2luLWxlZnQ6IC0xcHg7XG4gICAgfVxuICB9XG59XG4iLCIvL1xuLy8gTmF2c1xuLy8gLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cblxuXG4vLyBCYXNlIGNsYXNzXG4vLyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuXG4ubmF2IHtcbiAgbWFyZ2luLWJvdHRvbTogMDtcbiAgcGFkZGluZy1sZWZ0OiAwOyAvLyBPdmVycmlkZSBkZWZhdWx0IHVsL29sXG4gIGxpc3Qtc3R5bGU6IG5vbmU7XG4gIEBpbmNsdWRlIGNsZWFyZml4O1xuXG4gID4gbGkge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICBkaXNwbGF5OiBibG9jaztcblxuICAgID4gYSB7XG4gICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgIHBhZGRpbmc6ICRuYXYtbGluay1wYWRkaW5nO1xuICAgICAgJjpob3ZlcixcbiAgICAgICY6Zm9jdXMge1xuICAgICAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6ICRuYXYtbGluay1ob3Zlci1iZztcbiAgICAgIH1cbiAgICB9XG5cbiAgICAvLyBEaXNhYmxlZCBzdGF0ZSBzZXRzIHRleHQgdG8gZ3JheSBhbmQgbnVrZXMgaG92ZXIvdGFiIGVmZmVjdHNcbiAgICAmLmRpc2FibGVkID4gYSB7XG4gICAgICBjb2xvcjogJG5hdi1kaXNhYmxlZC1saW5rLWNvbG9yO1xuXG4gICAgICAmOmhvdmVyLFxuICAgICAgJjpmb2N1cyB7XG4gICAgICAgIGNvbG9yOiAkbmF2LWRpc2FibGVkLWxpbmstaG92ZXItY29sb3I7XG4gICAgICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gICAgICAgIGN1cnNvcjogJGN1cnNvci1kaXNhYmxlZDtcbiAgICAgIH1cbiAgICB9XG4gIH1cblxuICAvLyBPcGVuIGRyb3Bkb3duc1xuICAub3BlbiA+IGEge1xuICAgICYsXG4gICAgJjpob3ZlcixcbiAgICAmOmZvY3VzIHtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6ICRuYXYtbGluay1ob3Zlci1iZztcbiAgICAgIGJvcmRlci1jb2xvcjogJGxpbmstY29sb3I7XG4gICAgfVxuICB9XG5cbiAgLy8gTmF2IGRpdmlkZXJzIChkZXByZWNhdGVkIHdpdGggdjMuMC4xKVxuICAvL1xuICAvLyBUaGlzIHNob3VsZCBoYXZlIGJlZW4gcmVtb3ZlZCBpbiB2MyB3aXRoIHRoZSBkcm9wcGluZyBvZiBgLm5hdi1saXN0YCwgYnV0XG4gIC8vIHdlIG1pc3NlZCBpdC4gV2UgZG9uJ3QgY3VycmVudGx5IHN1cHBvcnQgdGhpcyBhbnl3aGVyZSwgYnV0IGluIHRoZSBpbnRlcmVzdFxuICAvLyBvZiBtYWludGFpbmluZyBiYWNrd2FyZCBjb21wYXRpYmlsaXR5IGluIGNhc2UgeW91IHVzZSBpdCwgaXQncyBkZXByZWNhdGVkLlxuICAubmF2LWRpdmlkZXIge1xuICAgIEBpbmNsdWRlIG5hdi1kaXZpZGVyO1xuICB9XG5cbiAgLy8gUHJldmVudCBJRTggZnJvbSBtaXNwbGFjaW5nIGltZ3NcbiAgLy9cbiAgLy8gU2VlIGh0dHBzOi8vZ2l0aHViLmNvbS9oNWJwL2h0bWw1LWJvaWxlcnBsYXRlL2lzc3Vlcy85ODQjaXNzdWVjb21tZW50LTM5ODU5ODlcbiAgPiBsaSA+IGEgPiBpbWcge1xuICAgIG1heC13aWR0aDogbm9uZTtcbiAgfVxufVxuXG5cbi8vIFRhYnNcbi8vIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cblxuLy8gR2l2ZSB0aGUgdGFicyBzb21ldGhpbmcgdG8gc2l0IG9uXG4ubmF2LXRhYnMge1xuICBib3JkZXItYm90dG9tOiAxcHggc29saWQgJG5hdi10YWJzLWJvcmRlci1jb2xvcjtcbiAgPiBsaSB7XG4gICAgZmxvYXQ6IGxlZnQ7XG4gICAgLy8gTWFrZSB0aGUgbGlzdC1pdGVtcyBvdmVybGF5IHRoZSBib3R0b20gYm9yZGVyXG4gICAgbWFyZ2luLWJvdHRvbTogLTFweDtcblxuICAgIC8vIEFjdHVhbCB0YWJzIChhcyBsaW5rcylcbiAgICA+IGEge1xuICAgICAgbWFyZ2luLXJpZ2h0OiAycHg7XG4gICAgICBsaW5lLWhlaWdodDogJGxpbmUtaGVpZ2h0LWJhc2U7XG4gICAgICBib3JkZXI6IDFweCBzb2xpZCB0cmFuc3BhcmVudDtcbiAgICAgIGJvcmRlci1yYWRpdXM6ICRib3JkZXItcmFkaXVzLWJhc2UgJGJvcmRlci1yYWRpdXMtYmFzZSAwIDA7XG4gICAgICAmOmhvdmVyIHtcbiAgICAgICAgYm9yZGVyLWNvbG9yOiAkbmF2LXRhYnMtbGluay1ob3Zlci1ib3JkZXItY29sb3IgJG5hdi10YWJzLWxpbmstaG92ZXItYm9yZGVyLWNvbG9yICRuYXYtdGFicy1ib3JkZXItY29sb3I7XG4gICAgICB9XG4gICAgfVxuXG4gICAgLy8gQWN0aXZlIHN0YXRlLCBhbmQgaXRzIDpob3ZlciB0byBvdmVycmlkZSBub3JtYWwgOmhvdmVyXG4gICAgJi5hY3RpdmUgPiBhIHtcbiAgICAgICYsXG4gICAgICAmOmhvdmVyLFxuICAgICAgJjpmb2N1cyB7XG4gICAgICAgIGNvbG9yOiAkbmF2LXRhYnMtYWN0aXZlLWxpbmstaG92ZXItY29sb3I7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6ICRuYXYtdGFicy1hY3RpdmUtbGluay1ob3Zlci1iZztcbiAgICAgICAgYm9yZGVyOiAxcHggc29saWQgJG5hdi10YWJzLWFjdGl2ZS1saW5rLWhvdmVyLWJvcmRlci1jb2xvcjtcbiAgICAgICAgYm9yZGVyLWJvdHRvbS1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gICAgICAgIGN1cnNvcjogZGVmYXVsdDtcbiAgICAgIH1cbiAgICB9XG4gIH1cbiAgLy8gcHVsbGluZyB0aGlzIGluIG1haW5seSBmb3IgbGVzcyBzaG9ydGhhbmRcbiAgJi5uYXYtanVzdGlmaWVkIHtcbiAgICBAZXh0ZW5kIC5uYXYtanVzdGlmaWVkO1xuICAgIEBleHRlbmQgLm5hdi10YWJzLWp1c3RpZmllZDtcbiAgfVxufVxuXG5cbi8vIFBpbGxzXG4vLyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG4ubmF2LXBpbGxzIHtcbiAgPiBsaSB7XG4gICAgZmxvYXQ6IGxlZnQ7XG5cbiAgICAvLyBMaW5rcyByZW5kZXJlZCBhcyBwaWxsc1xuICAgID4gYSB7XG4gICAgICBib3JkZXItcmFkaXVzOiAkbmF2LXBpbGxzLWJvcmRlci1yYWRpdXM7XG4gICAgfVxuICAgICsgbGkge1xuICAgICAgbWFyZ2luLWxlZnQ6IDJweDtcbiAgICB9XG5cbiAgICAvLyBBY3RpdmUgc3RhdGVcbiAgICAmLmFjdGl2ZSA+IGEge1xuICAgICAgJixcbiAgICAgICY6aG92ZXIsXG4gICAgICAmOmZvY3VzIHtcbiAgICAgICAgY29sb3I6ICRuYXYtcGlsbHMtYWN0aXZlLWxpbmstaG92ZXItY29sb3I7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6ICRuYXYtcGlsbHMtYWN0aXZlLWxpbmstaG92ZXItYmc7XG4gICAgICB9XG4gICAgfVxuICB9XG59XG5cblxuLy8gU3RhY2tlZCBwaWxsc1xuLm5hdi1zdGFja2VkIHtcbiAgPiBsaSB7XG4gICAgZmxvYXQ6IG5vbmU7XG4gICAgKyBsaSB7XG4gICAgICBtYXJnaW4tdG9wOiAycHg7XG4gICAgICBtYXJnaW4tbGVmdDogMDsgLy8gbm8gbmVlZCBmb3IgdGhpcyBnYXAgYmV0d2VlbiBuYXYgaXRlbXNcbiAgICB9XG4gIH1cbn1cblxuXG4vLyBOYXYgdmFyaWF0aW9uc1xuLy8gLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cblxuLy8gSnVzdGlmaWVkIG5hdiBsaW5rc1xuLy8gLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuXG4ubmF2LWp1c3RpZmllZCB7XG4gIHdpZHRoOiAxMDAlO1xuXG4gID4gbGkge1xuICAgIGZsb2F0OiBub25lO1xuICAgID4gYSB7XG4gICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgICBtYXJnaW4tYm90dG9tOiA1cHg7XG4gICAgfVxuICB9XG5cbiAgPiAuZHJvcGRvd24gLmRyb3Bkb3duLW1lbnUge1xuICAgIHRvcDogYXV0bztcbiAgICBsZWZ0OiBhdXRvO1xuICB9XG5cbiAgQG1lZGlhIChtaW4td2lkdGg6ICRzY3JlZW4tc20tbWluKSB7XG4gICAgPiBsaSB7XG4gICAgICBkaXNwbGF5OiB0YWJsZS1jZWxsO1xuICAgICAgd2lkdGg6IDElO1xuICAgICAgPiBhIHtcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogMDtcbiAgICAgIH1cbiAgICB9XG4gIH1cbn1cblxuLy8gTW92ZSBib3JkZXJzIHRvIGFuY2hvcnMgaW5zdGVhZCBvZiBib3R0b20gb2YgbGlzdFxuLy9cbi8vIE1peGluIGZvciBhZGRpbmcgb24gdG9wIHRoZSBzaGFyZWQgYC5uYXYtanVzdGlmaWVkYCBzdHlsZXMgZm9yIG91ciB0YWJzXG4ubmF2LXRhYnMtanVzdGlmaWVkIHtcbiAgYm9yZGVyLWJvdHRvbTogMDtcblxuICA+IGxpID4gYSB7XG4gICAgLy8gT3ZlcnJpZGUgbWFyZ2luIGZyb20gLm5hdi10YWJzXG4gICAgbWFyZ2luLXJpZ2h0OiAwO1xuICAgIGJvcmRlci1yYWRpdXM6ICRib3JkZXItcmFkaXVzLWJhc2U7XG4gIH1cblxuICA+IC5hY3RpdmUgPiBhLFxuICA+IC5hY3RpdmUgPiBhOmhvdmVyLFxuICA+IC5hY3RpdmUgPiBhOmZvY3VzIHtcbiAgICBib3JkZXI6IDFweCBzb2xpZCAkbmF2LXRhYnMtanVzdGlmaWVkLWxpbmstYm9yZGVyLWNvbG9yO1xuICB9XG5cbiAgQG1lZGlhIChtaW4td2lkdGg6ICRzY3JlZW4tc20tbWluKSB7XG4gICAgPiBsaSA+IGEge1xuICAgICAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkICRuYXYtdGFicy1qdXN0aWZpZWQtbGluay1ib3JkZXItY29sb3I7XG4gICAgICBib3JkZXItcmFkaXVzOiAkYm9yZGVyLXJhZGl1cy1iYXNlICRib3JkZXItcmFkaXVzLWJhc2UgMCAwO1xuICAgIH1cbiAgICA+IC5hY3RpdmUgPiBhLFxuICAgID4gLmFjdGl2ZSA+IGE6aG92ZXIsXG4gICAgPiAuYWN0aXZlID4gYTpmb2N1cyB7XG4gICAgICBib3JkZXItYm90dG9tLWNvbG9yOiAkbmF2LXRhYnMtanVzdGlmaWVkLWFjdGl2ZS1saW5rLWJvcmRlci1jb2xvcjtcbiAgICB9XG4gIH1cbn1cblxuXG4vLyBUYWJiYWJsZSB0YWJzXG4vLyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG5cbi8vIEhpZGUgdGFiYmFibGUgcGFuZXMgdG8gc3RhcnQsIHNob3cgdGhlbSB3aGVuIGAuYWN0aXZlYFxuLnRhYi1jb250ZW50IHtcbiAgPiAudGFiLXBhbmUge1xuICAgIGRpc3BsYXk6IG5vbmU7XG4gIH1cbiAgPiAuYWN0aXZlIHtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgfVxufVxuXG5cbi8vIERyb3Bkb3duc1xuLy8gLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuXG4vLyBTcGVjaWZpYyBkcm9wZG93bnNcbi5uYXYtdGFicyAuZHJvcGRvd24tbWVudSB7XG4gIC8vIG1ha2UgZHJvcGRvd24gYm9yZGVyIG92ZXJsYXAgdGFiIGJvcmRlclxuICBtYXJnaW4tdG9wOiAtMXB4O1xuICAvLyBSZW1vdmUgdGhlIHRvcCByb3VuZGVkIGNvcm5lcnMgaGVyZSBzaW5jZSB0aGVyZSBpcyBhIGhhcmQgZWRnZSBhYm92ZSB0aGUgbWVudVxuICBAaW5jbHVkZSBib3JkZXItdG9wLXJhZGl1cygwKTtcbn1cbiIsIi8vXG4vLyBOYXZiYXJzXG4vLyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuXG5cbi8vIFdyYXBwZXIgYW5kIGJhc2UgY2xhc3Ncbi8vXG4vLyBQcm92aWRlIGEgc3RhdGljIG5hdmJhciBmcm9tIHdoaWNoIHdlIGV4cGFuZCB0byBjcmVhdGUgZnVsbC13aWR0aCwgZml4ZWQsIGFuZFxuLy8gb3RoZXIgbmF2YmFyIHZhcmlhdGlvbnMuXG5cbi5uYXZiYXIge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIG1pbi1oZWlnaHQ6ICRuYXZiYXItaGVpZ2h0OyAvLyBFbnN1cmUgYSBuYXZiYXIgYWx3YXlzIHNob3dzIChlLmcuLCB3aXRob3V0IGEgLm5hdmJhci1icmFuZCBpbiBjb2xsYXBzZWQgbW9kZSlcbiAgbWFyZ2luLWJvdHRvbTogJG5hdmJhci1tYXJnaW4tYm90dG9tO1xuICBib3JkZXI6IDFweCBzb2xpZCB0cmFuc3BhcmVudDtcblxuICAvLyBQcmV2ZW50IGZsb2F0cyBmcm9tIGJyZWFraW5nIHRoZSBuYXZiYXJcbiAgQGluY2x1ZGUgY2xlYXJmaXg7XG5cbiAgQG1lZGlhIChtaW4td2lkdGg6ICRncmlkLWZsb2F0LWJyZWFrcG9pbnQpIHtcbiAgICBib3JkZXItcmFkaXVzOiAkbmF2YmFyLWJvcmRlci1yYWRpdXM7XG4gIH1cbn1cblxuXG4vLyBOYXZiYXIgaGVhZGluZ1xuLy9cbi8vIEdyb3VwcyBgLm5hdmJhci1icmFuZGAgYW5kIGAubmF2YmFyLXRvZ2dsZWAgaW50byBhIHNpbmdsZSBjb21wb25lbnQgZm9yIGVhc3lcbi8vIHN0eWxpbmcgb2YgcmVzcG9uc2l2ZSBhc3BlY3RzLlxuXG4ubmF2YmFyLWhlYWRlciB7XG4gIEBpbmNsdWRlIGNsZWFyZml4O1xuXG4gIEBtZWRpYSAobWluLXdpZHRoOiAkZ3JpZC1mbG9hdC1icmVha3BvaW50KSB7XG4gICAgZmxvYXQ6IGxlZnQ7XG4gIH1cbn1cblxuXG4vLyBOYXZiYXIgY29sbGFwc2UgKGJvZHkpXG4vL1xuLy8gR3JvdXAgeW91ciBuYXZiYXIgY29udGVudCBpbnRvIHRoaXMgZm9yIGVhc3kgY29sbGFwc2luZyBhbmQgZXhwYW5kaW5nIGFjcm9zc1xuLy8gdmFyaW91cyBkZXZpY2Ugc2l6ZXMuIEJ5IGRlZmF1bHQsIHRoaXMgY29udGVudCBpcyBjb2xsYXBzZWQgd2hlbiA8NzY4cHgsIGJ1dFxuLy8gd2lsbCBleHBhbmQgcGFzdCB0aGF0IGZvciBhIGhvcml6b250YWwgZGlzcGxheS5cbi8vXG4vLyBUbyBzdGFydCAob24gbW9iaWxlIGRldmljZXMpIHRoZSBuYXZiYXIgbGlua3MsIGZvcm1zLCBhbmQgYnV0dG9ucyBhcmUgc3RhY2tlZFxuLy8gdmVydGljYWxseSBhbmQgaW5jbHVkZSBhIGBtYXgtaGVpZ2h0YCB0byBvdmVyZmxvdyBpbiBjYXNlIHlvdSBoYXZlIHRvbyBtdWNoXG4vLyBjb250ZW50IGZvciB0aGUgdXNlcidzIHZpZXdwb3J0LlxuXG4ubmF2YmFyLWNvbGxhcHNlIHtcbiAgb3ZlcmZsb3cteDogdmlzaWJsZTtcbiAgcGFkZGluZy1yaWdodDogJG5hdmJhci1wYWRkaW5nLWhvcml6b250YWw7XG4gIHBhZGRpbmctbGVmdDogICRuYXZiYXItcGFkZGluZy1ob3Jpem9udGFsO1xuICBib3JkZXItdG9wOiAxcHggc29saWQgdHJhbnNwYXJlbnQ7XG4gIGJveC1zaGFkb3c6IGluc2V0IDAgMXB4IDAgcmdiYSgyNTUsMjU1LDI1NSwuMSk7XG4gIEBpbmNsdWRlIGNsZWFyZml4O1xuICAtd2Via2l0LW92ZXJmbG93LXNjcm9sbGluZzogdG91Y2g7XG5cbiAgJi5pbiB7XG4gICAgb3ZlcmZsb3cteTogYXV0bztcbiAgfVxuXG4gIEBtZWRpYSAobWluLXdpZHRoOiAkZ3JpZC1mbG9hdC1icmVha3BvaW50KSB7XG4gICAgd2lkdGg6IGF1dG87XG4gICAgYm9yZGVyLXRvcDogMDtcbiAgICBib3gtc2hhZG93OiBub25lO1xuXG4gICAgJi5jb2xsYXBzZSB7XG4gICAgICBkaXNwbGF5OiBibG9jayAhaW1wb3J0YW50O1xuICAgICAgaGVpZ2h0OiBhdXRvICFpbXBvcnRhbnQ7XG4gICAgICBwYWRkaW5nLWJvdHRvbTogMDsgLy8gT3ZlcnJpZGUgZGVmYXVsdCBzZXR0aW5nXG4gICAgICBvdmVyZmxvdzogdmlzaWJsZSAhaW1wb3J0YW50O1xuICAgIH1cblxuICAgICYuaW4ge1xuICAgICAgb3ZlcmZsb3cteTogdmlzaWJsZTtcbiAgICB9XG5cbiAgICAvLyBVbmRvIHRoZSBjb2xsYXBzZSBzaWRlIHBhZGRpbmcgZm9yIG5hdmJhcnMgd2l0aCBjb250YWluZXJzIHRvIGVuc3VyZVxuICAgIC8vIGFsaWdubWVudCBvZiByaWdodC1hbGlnbmVkIGNvbnRlbnRzLlxuICAgIC5uYXZiYXItZml4ZWQtdG9wICYsXG4gICAgLm5hdmJhci1zdGF0aWMtdG9wICYsXG4gICAgLm5hdmJhci1maXhlZC1ib3R0b20gJiB7XG4gICAgICBwYWRkaW5nLWxlZnQ6IDA7XG4gICAgICBwYWRkaW5nLXJpZ2h0OiAwO1xuICAgIH1cbiAgfVxufVxuXG4ubmF2YmFyLWZpeGVkLXRvcCxcbi5uYXZiYXItZml4ZWQtYm90dG9tIHtcbiAgLm5hdmJhci1jb2xsYXBzZSB7XG4gICAgbWF4LWhlaWdodDogJG5hdmJhci1jb2xsYXBzZS1tYXgtaGVpZ2h0O1xuXG4gICAgQG1lZGlhIChtYXgtZGV2aWNlLXdpZHRoOiAkc2NyZWVuLXhzLW1pbikgYW5kIChvcmllbnRhdGlvbjogbGFuZHNjYXBlKSB7XG4gICAgICBtYXgtaGVpZ2h0OiAyMDBweDtcbiAgICB9XG4gIH1cbn1cblxuXG4vLyBCb3RoIG5hdmJhciBoZWFkZXIgYW5kIGNvbGxhcHNlXG4vL1xuLy8gV2hlbiBhIGNvbnRhaW5lciBpcyBwcmVzZW50LCBjaGFuZ2UgdGhlIGJlaGF2aW9yIG9mIHRoZSBoZWFkZXIgYW5kIGNvbGxhcHNlLlxuXG4uY29udGFpbmVyLFxuLmNvbnRhaW5lci1mbHVpZCB7XG4gID4gLm5hdmJhci1oZWFkZXIsXG4gID4gLm5hdmJhci1jb2xsYXBzZSB7XG4gICAgbWFyZ2luLXJpZ2h0OiAtJG5hdmJhci1wYWRkaW5nLWhvcml6b250YWw7XG4gICAgbWFyZ2luLWxlZnQ6ICAtJG5hdmJhci1wYWRkaW5nLWhvcml6b250YWw7XG5cbiAgICBAbWVkaWEgKG1pbi13aWR0aDogJGdyaWQtZmxvYXQtYnJlYWtwb2ludCkge1xuICAgICAgbWFyZ2luLXJpZ2h0OiAwO1xuICAgICAgbWFyZ2luLWxlZnQ6ICAwO1xuICAgIH1cbiAgfVxufVxuXG5cbi8vXG4vLyBOYXZiYXIgYWxpZ25tZW50IG9wdGlvbnNcbi8vXG4vLyBEaXNwbGF5IHRoZSBuYXZiYXIgYWNyb3NzIHRoZSBlbnRpcmV0eSBvZiB0aGUgcGFnZSBvciBmaXhlZCBpdCB0byB0aGUgdG9wIG9yXG4vLyBib3R0b20gb2YgdGhlIHBhZ2UuXG5cbi8vIFN0YXRpYyB0b3AgKHVuZml4ZWQsIGJ1dCAxMDAlIHdpZGUpIG5hdmJhclxuLm5hdmJhci1zdGF0aWMtdG9wIHtcbiAgei1pbmRleDogJHppbmRleC1uYXZiYXI7XG4gIGJvcmRlci13aWR0aDogMCAwIDFweDtcblxuICBAbWVkaWEgKG1pbi13aWR0aDogJGdyaWQtZmxvYXQtYnJlYWtwb2ludCkge1xuICAgIGJvcmRlci1yYWRpdXM6IDA7XG4gIH1cbn1cblxuLy8gRml4IHRoZSB0b3AvYm90dG9tIG5hdmJhcnMgd2hlbiBzY3JlZW4gcmVhbCBlc3RhdGUgc3VwcG9ydHMgaXRcbi5uYXZiYXItZml4ZWQtdG9wLFxuLm5hdmJhci1maXhlZC1ib3R0b20ge1xuICBwb3NpdGlvbjogZml4ZWQ7XG4gIHJpZ2h0OiAwO1xuICBsZWZ0OiAwO1xuICB6LWluZGV4OiAkemluZGV4LW5hdmJhci1maXhlZDtcblxuICAvLyBVbmRvIHRoZSByb3VuZGVkIGNvcm5lcnNcbiAgQG1lZGlhIChtaW4td2lkdGg6ICRncmlkLWZsb2F0LWJyZWFrcG9pbnQpIHtcbiAgICBib3JkZXItcmFkaXVzOiAwO1xuICB9XG59XG4ubmF2YmFyLWZpeGVkLXRvcCB7XG4gIHRvcDogMDtcbiAgYm9yZGVyLXdpZHRoOiAwIDAgMXB4O1xufVxuLm5hdmJhci1maXhlZC1ib3R0b20ge1xuICBib3R0b206IDA7XG4gIG1hcmdpbi1ib3R0b206IDA7IC8vIG92ZXJyaWRlIC5uYXZiYXIgZGVmYXVsdHNcbiAgYm9yZGVyLXdpZHRoOiAxcHggMCAwO1xufVxuXG5cbi8vIEJyYW5kL3Byb2plY3QgbmFtZVxuXG4ubmF2YmFyLWJyYW5kIHtcbiAgZmxvYXQ6IGxlZnQ7XG4gIHBhZGRpbmc6ICRuYXZiYXItcGFkZGluZy12ZXJ0aWNhbCAkbmF2YmFyLXBhZGRpbmctaG9yaXpvbnRhbDtcbiAgZm9udC1zaXplOiAkZm9udC1zaXplLWxhcmdlO1xuICBsaW5lLWhlaWdodDogJGxpbmUtaGVpZ2h0LWNvbXB1dGVkO1xuICBoZWlnaHQ6ICRuYXZiYXItaGVpZ2h0O1xuXG4gICY6aG92ZXIsXG4gICY6Zm9jdXMge1xuICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgfVxuXG4gID4gaW1nIHtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgfVxuXG4gIEBtZWRpYSAobWluLXdpZHRoOiAkZ3JpZC1mbG9hdC1icmVha3BvaW50KSB7XG4gICAgLm5hdmJhciA+IC5jb250YWluZXIgJixcbiAgICAubmF2YmFyID4gLmNvbnRhaW5lci1mbHVpZCAmIHtcbiAgICAgIG1hcmdpbi1sZWZ0OiAtJG5hdmJhci1wYWRkaW5nLWhvcml6b250YWw7XG4gICAgfVxuICB9XG59XG5cblxuLy8gTmF2YmFyIHRvZ2dsZVxuLy9cbi8vIEN1c3RvbSBidXR0b24gZm9yIHRvZ2dsaW5nIHRoZSBgLm5hdmJhci1jb2xsYXBzZWAsIHBvd2VyZWQgYnkgdGhlIGNvbGxhcHNlXG4vLyBKYXZhU2NyaXB0IHBsdWdpbi5cblxuLm5hdmJhci10b2dnbGUge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIGZsb2F0OiByaWdodDtcbiAgbWFyZ2luLXJpZ2h0OiAkbmF2YmFyLXBhZGRpbmctaG9yaXpvbnRhbDtcbiAgcGFkZGluZzogOXB4IDEwcHg7XG4gIEBpbmNsdWRlIG5hdmJhci12ZXJ0aWNhbC1hbGlnbigzNHB4KTtcbiAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gIGJhY2tncm91bmQtaW1hZ2U6IG5vbmU7IC8vIFJlc2V0IHVudXN1YWwgRmlyZWZveC1vbi1BbmRyb2lkIGRlZmF1bHQgc3R5bGU7IHNlZSBodHRwczovL2dpdGh1Yi5jb20vbmVjb2xhcy9ub3JtYWxpemUuY3NzL2lzc3Vlcy8yMTRcbiAgYm9yZGVyOiAxcHggc29saWQgdHJhbnNwYXJlbnQ7XG4gIGJvcmRlci1yYWRpdXM6ICRib3JkZXItcmFkaXVzLWJhc2U7XG5cbiAgLy8gV2UgcmVtb3ZlIHRoZSBgb3V0bGluZWAgaGVyZSwgYnV0IGxhdGVyIGNvbXBlbnNhdGUgYnkgYXR0YWNoaW5nIGA6aG92ZXJgXG4gIC8vIHN0eWxlcyB0byBgOmZvY3VzYC5cbiAgJjpmb2N1cyB7XG4gICAgb3V0bGluZTogMDtcbiAgfVxuXG4gIC8vIEJhcnNcbiAgLmljb24tYmFyIHtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICB3aWR0aDogMjJweDtcbiAgICBoZWlnaHQ6IDJweDtcbiAgICBib3JkZXItcmFkaXVzOiAxcHg7XG4gIH1cbiAgLmljb24tYmFyICsgLmljb24tYmFyIHtcbiAgICBtYXJnaW4tdG9wOiA0cHg7XG4gIH1cblxuICBAbWVkaWEgKG1pbi13aWR0aDogJGdyaWQtZmxvYXQtYnJlYWtwb2ludCkge1xuICAgIGRpc3BsYXk6IG5vbmU7XG4gIH1cbn1cblxuXG4vLyBOYXZiYXIgbmF2IGxpbmtzXG4vL1xuLy8gQnVpbGRzIG9uIHRvcCBvZiB0aGUgYC5uYXZgIGNvbXBvbmVudHMgd2l0aCBpdHMgb3duIG1vZGlmaWVyIGNsYXNzIHRvIG1ha2Vcbi8vIHRoZSBuYXYgdGhlIGZ1bGwgaGVpZ2h0IG9mIHRoZSBob3Jpem9udGFsIG5hdiAoYWJvdmUgNzY4cHgpLlxuXG4ubmF2YmFyLW5hdiB7XG4gIG1hcmdpbjogKCRuYXZiYXItcGFkZGluZy12ZXJ0aWNhbCAvIDIpICgtJG5hdmJhci1wYWRkaW5nLWhvcml6b250YWwpO1xuXG4gID4gbGkgPiBhIHtcbiAgICBwYWRkaW5nLXRvcDogICAgMTBweDtcbiAgICBwYWRkaW5nLWJvdHRvbTogMTBweDtcbiAgICBsaW5lLWhlaWdodDogJGxpbmUtaGVpZ2h0LWNvbXB1dGVkO1xuICB9XG5cbiAgQG1lZGlhIChtYXgtd2lkdGg6ICRncmlkLWZsb2F0LWJyZWFrcG9pbnQtbWF4KSB7XG4gICAgLy8gRHJvcGRvd25zIGdldCBjdXN0b20gZGlzcGxheSB3aGVuIGNvbGxhcHNlZFxuICAgIC5vcGVuIC5kcm9wZG93bi1tZW51IHtcbiAgICAgIHBvc2l0aW9uOiBzdGF0aWM7XG4gICAgICBmbG9hdDogbm9uZTtcbiAgICAgIHdpZHRoOiBhdXRvO1xuICAgICAgbWFyZ2luLXRvcDogMDtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xuICAgICAgYm9yZGVyOiAwO1xuICAgICAgYm94LXNoYWRvdzogbm9uZTtcbiAgICAgID4gbGkgPiBhLFxuICAgICAgLmRyb3Bkb3duLWhlYWRlciB7XG4gICAgICAgIHBhZGRpbmc6IDVweCAxNXB4IDVweCAyNXB4O1xuICAgICAgfVxuICAgICAgPiBsaSA+IGEge1xuICAgICAgICBsaW5lLWhlaWdodDogJGxpbmUtaGVpZ2h0LWNvbXB1dGVkO1xuICAgICAgICAmOmhvdmVyLFxuICAgICAgICAmOmZvY3VzIHtcbiAgICAgICAgICBiYWNrZ3JvdW5kLWltYWdlOiBub25lO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICB9XG5cbiAgLy8gVW5jb2xsYXBzZSB0aGUgbmF2XG4gIEBtZWRpYSAobWluLXdpZHRoOiAkZ3JpZC1mbG9hdC1icmVha3BvaW50KSB7XG4gICAgZmxvYXQ6IGxlZnQ7XG4gICAgbWFyZ2luOiAwO1xuXG4gICAgPiBsaSB7XG4gICAgICBmbG9hdDogbGVmdDtcbiAgICAgID4gYSB7XG4gICAgICAgIHBhZGRpbmctdG9wOiAgICAkbmF2YmFyLXBhZGRpbmctdmVydGljYWw7XG4gICAgICAgIHBhZGRpbmctYm90dG9tOiAkbmF2YmFyLXBhZGRpbmctdmVydGljYWw7XG4gICAgICB9XG4gICAgfVxuICB9XG59XG5cblxuLy8gTmF2YmFyIGZvcm1cbi8vXG4vLyBFeHRlbnNpb24gb2YgdGhlIGAuZm9ybS1pbmxpbmVgIHdpdGggc29tZSBleHRyYSBmbGF2b3IgZm9yIG9wdGltdW0gZGlzcGxheSBpblxuLy8gb3VyIG5hdmJhcnMuXG5cbi5uYXZiYXItZm9ybSB7XG4gIG1hcmdpbi1sZWZ0OiAtJG5hdmJhci1wYWRkaW5nLWhvcml6b250YWw7XG4gIG1hcmdpbi1yaWdodDogLSRuYXZiYXItcGFkZGluZy1ob3Jpem9udGFsO1xuICBwYWRkaW5nOiAxMHB4ICRuYXZiYXItcGFkZGluZy1ob3Jpem9udGFsO1xuICBib3JkZXItdG9wOiAxcHggc29saWQgdHJhbnNwYXJlbnQ7XG4gIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCB0cmFuc3BhcmVudDtcbiAgJHNoYWRvdzogaW5zZXQgMCAxcHggMCByZ2JhKDI1NSwyNTUsMjU1LC4xKSwgMCAxcHggMCByZ2JhKDI1NSwyNTUsMjU1LC4xKTtcbiAgQGluY2x1ZGUgYm94LXNoYWRvdygkc2hhZG93KTtcblxuICAvLyBNaXhpbiBiZWhhdmlvciBmb3Igb3B0aW11bSBkaXNwbGF5XG4gIEBpbmNsdWRlIGZvcm0taW5saW5lO1xuXG4gIC5mb3JtLWdyb3VwIHtcbiAgICBAbWVkaWEgKG1heC13aWR0aDogJGdyaWQtZmxvYXQtYnJlYWtwb2ludC1tYXgpIHtcbiAgICAgIG1hcmdpbi1ib3R0b206IDVweDtcblxuICAgICAgJjpsYXN0LWNoaWxkIHtcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogMDtcbiAgICAgIH1cbiAgICB9XG4gIH1cblxuICAvLyBWZXJ0aWNhbGx5IGNlbnRlciBpbiBleHBhbmRlZCwgaG9yaXpvbnRhbCBuYXZiYXJcbiAgQGluY2x1ZGUgbmF2YmFyLXZlcnRpY2FsLWFsaWduKCRpbnB1dC1oZWlnaHQtYmFzZSk7XG5cbiAgLy8gVW5kbyAxMDAlIHdpZHRoIGZvciBwdWxsIGNsYXNzZXNcbiAgQG1lZGlhIChtaW4td2lkdGg6ICRncmlkLWZsb2F0LWJyZWFrcG9pbnQpIHtcbiAgICB3aWR0aDogYXV0bztcbiAgICBib3JkZXI6IDA7XG4gICAgbWFyZ2luLWxlZnQ6IDA7XG4gICAgbWFyZ2luLXJpZ2h0OiAwO1xuICAgIHBhZGRpbmctdG9wOiAwO1xuICAgIHBhZGRpbmctYm90dG9tOiAwO1xuICAgIEBpbmNsdWRlIGJveC1zaGFkb3cobm9uZSk7XG4gIH1cbn1cblxuXG4vLyBEcm9wZG93biBtZW51c1xuXG4vLyBNZW51IHBvc2l0aW9uIGFuZCBtZW51IGNhcmV0c1xuLm5hdmJhci1uYXYgPiBsaSA+IC5kcm9wZG93bi1tZW51IHtcbiAgbWFyZ2luLXRvcDogMDtcbiAgQGluY2x1ZGUgYm9yZGVyLXRvcC1yYWRpdXMoMCk7XG59XG4vLyBNZW51IHBvc2l0aW9uIGFuZCBtZW51IGNhcmV0IHN1cHBvcnQgZm9yIGRyb3B1cHMgdmlhIGV4dHJhIGRyb3B1cCBjbGFzc1xuLm5hdmJhci1maXhlZC1ib3R0b20gLm5hdmJhci1uYXYgPiBsaSA+IC5kcm9wZG93bi1tZW51IHtcbiAgbWFyZ2luLWJvdHRvbTogMDtcbiAgQGluY2x1ZGUgYm9yZGVyLXRvcC1yYWRpdXMoJG5hdmJhci1ib3JkZXItcmFkaXVzKTtcbiAgQGluY2x1ZGUgYm9yZGVyLWJvdHRvbS1yYWRpdXMoMCk7XG59XG5cblxuLy8gQnV0dG9ucyBpbiBuYXZiYXJzXG4vL1xuLy8gVmVydGljYWxseSBjZW50ZXIgYSBidXR0b24gd2l0aGluIGEgbmF2YmFyICh3aGVuICpub3QqIGluIGEgZm9ybSkuXG5cbi5uYXZiYXItYnRuIHtcbiAgQGluY2x1ZGUgbmF2YmFyLXZlcnRpY2FsLWFsaWduKCRpbnB1dC1oZWlnaHQtYmFzZSk7XG5cbiAgJi5idG4tc20ge1xuICAgIEBpbmNsdWRlIG5hdmJhci12ZXJ0aWNhbC1hbGlnbigkaW5wdXQtaGVpZ2h0LXNtYWxsKTtcbiAgfVxuICAmLmJ0bi14cyB7XG4gICAgQGluY2x1ZGUgbmF2YmFyLXZlcnRpY2FsLWFsaWduKDIyKTtcbiAgfVxufVxuXG5cbi8vIFRleHQgaW4gbmF2YmFyc1xuLy9cbi8vIEFkZCBhIGNsYXNzIHRvIG1ha2UgYW55IGVsZW1lbnQgcHJvcGVybHkgYWxpZ24gaXRzZWxmIHZlcnRpY2FsbHkgd2l0aGluIHRoZSBuYXZiYXJzLlxuXG4ubmF2YmFyLXRleHQge1xuICBAaW5jbHVkZSBuYXZiYXItdmVydGljYWwtYWxpZ24oJGxpbmUtaGVpZ2h0LWNvbXB1dGVkKTtcblxuICBAbWVkaWEgKG1pbi13aWR0aDogJGdyaWQtZmxvYXQtYnJlYWtwb2ludCkge1xuICAgIGZsb2F0OiBsZWZ0O1xuICAgIG1hcmdpbi1sZWZ0OiAkbmF2YmFyLXBhZGRpbmctaG9yaXpvbnRhbDtcbiAgICBtYXJnaW4tcmlnaHQ6ICRuYXZiYXItcGFkZGluZy1ob3Jpem9udGFsO1xuICB9XG59XG5cblxuLy8gQ29tcG9uZW50IGFsaWdubWVudFxuLy9cbi8vIFJlcHVycG9zZSB0aGUgcHVsbCB1dGlsaXRpZXMgYXMgdGhlaXIgb3duIG5hdmJhciB1dGlsaXRpZXMgdG8gYXZvaWQgc3BlY2lmaWNpdHlcbi8vIGlzc3VlcyB3aXRoIHBhcmVudHMgYW5kIGNoYWluaW5nLiBPbmx5IGRvIHRoaXMgd2hlbiB0aGUgbmF2YmFyIGlzIHVuY29sbGFwc2VkXG4vLyB0aG91Z2ggc28gdGhhdCBuYXZiYXIgY29udGVudHMgcHJvcGVybHkgc3RhY2sgYW5kIGFsaWduIGluIG1vYmlsZS5cbi8vXG4vLyBEZWNsYXJlZCBhZnRlciB0aGUgbmF2YmFyIGNvbXBvbmVudHMgdG8gZW5zdXJlIG1vcmUgc3BlY2lmaWNpdHkgb24gdGhlIG1hcmdpbnMuXG5cbkBtZWRpYSAobWluLXdpZHRoOiAkZ3JpZC1mbG9hdC1icmVha3BvaW50KSB7XG4gIC5uYXZiYXItbGVmdCB7XG4gICAgZmxvYXQ6IGxlZnQgIWltcG9ydGFudDtcbiAgfVxuICAubmF2YmFyLXJpZ2h0IHtcbiAgICBmbG9hdDogcmlnaHQgIWltcG9ydGFudDtcbiAgbWFyZ2luLXJpZ2h0OiAtJG5hdmJhci1wYWRkaW5nLWhvcml6b250YWw7XG5cbiAgICB+IC5uYXZiYXItcmlnaHQge1xuICAgICAgbWFyZ2luLXJpZ2h0OiAwO1xuICAgIH1cbiAgfVxufVxuXG5cbi8vIEFsdGVybmF0ZSBuYXZiYXJzXG4vLyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuXG4vLyBEZWZhdWx0IG5hdmJhclxuLm5hdmJhci1kZWZhdWx0IHtcbiAgYmFja2dyb3VuZC1jb2xvcjogJG5hdmJhci1kZWZhdWx0LWJnO1xuICBib3JkZXItY29sb3I6ICRuYXZiYXItZGVmYXVsdC1ib3JkZXI7XG5cbiAgLm5hdmJhci1icmFuZCB7XG4gICAgY29sb3I6ICRuYXZiYXItZGVmYXVsdC1icmFuZC1jb2xvcjtcbiAgICAmOmhvdmVyLFxuICAgICY6Zm9jdXMge1xuICAgICAgY29sb3I6ICRuYXZiYXItZGVmYXVsdC1icmFuZC1ob3Zlci1jb2xvcjtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6ICRuYXZiYXItZGVmYXVsdC1icmFuZC1ob3Zlci1iZztcbiAgICB9XG4gIH1cblxuICAubmF2YmFyLXRleHQge1xuICAgIGNvbG9yOiAkbmF2YmFyLWRlZmF1bHQtY29sb3I7XG4gIH1cblxuICAubmF2YmFyLW5hdiB7XG4gICAgPiBsaSA+IGEge1xuICAgICAgY29sb3I6ICRuYXZiYXItZGVmYXVsdC1saW5rLWNvbG9yO1xuXG4gICAgICAmOmhvdmVyLFxuICAgICAgJjpmb2N1cyB7XG4gICAgICAgIGNvbG9yOiAkbmF2YmFyLWRlZmF1bHQtbGluay1ob3Zlci1jb2xvcjtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJG5hdmJhci1kZWZhdWx0LWxpbmstaG92ZXItYmc7XG4gICAgICB9XG4gICAgfVxuICAgID4gLmFjdGl2ZSA+IGEge1xuICAgICAgJixcbiAgICAgICY6aG92ZXIsXG4gICAgICAmOmZvY3VzIHtcbiAgICAgICAgY29sb3I6ICRuYXZiYXItZGVmYXVsdC1saW5rLWFjdGl2ZS1jb2xvcjtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJG5hdmJhci1kZWZhdWx0LWxpbmstYWN0aXZlLWJnO1xuICAgICAgfVxuICAgIH1cbiAgICA+IC5kaXNhYmxlZCA+IGEge1xuICAgICAgJixcbiAgICAgICY6aG92ZXIsXG4gICAgICAmOmZvY3VzIHtcbiAgICAgICAgY29sb3I6ICRuYXZiYXItZGVmYXVsdC1saW5rLWRpc2FibGVkLWNvbG9yO1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkbmF2YmFyLWRlZmF1bHQtbGluay1kaXNhYmxlZC1iZztcbiAgICAgIH1cbiAgICB9XG4gIH1cblxuICAubmF2YmFyLXRvZ2dsZSB7XG4gICAgYm9yZGVyLWNvbG9yOiAkbmF2YmFyLWRlZmF1bHQtdG9nZ2xlLWJvcmRlci1jb2xvcjtcbiAgICAmOmhvdmVyLFxuICAgICY6Zm9jdXMge1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogJG5hdmJhci1kZWZhdWx0LXRvZ2dsZS1ob3Zlci1iZztcbiAgICB9XG4gICAgLmljb24tYmFyIHtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6ICRuYXZiYXItZGVmYXVsdC10b2dnbGUtaWNvbi1iYXItYmc7XG4gICAgfVxuICB9XG5cbiAgLm5hdmJhci1jb2xsYXBzZSxcbiAgLm5hdmJhci1mb3JtIHtcbiAgICBib3JkZXItY29sb3I6ICRuYXZiYXItZGVmYXVsdC1ib3JkZXI7XG4gIH1cblxuICAvLyBEcm9wZG93biBtZW51IGl0ZW1zXG4gIC5uYXZiYXItbmF2IHtcbiAgICAvLyBSZW1vdmUgYmFja2dyb3VuZCBjb2xvciBmcm9tIG9wZW4gZHJvcGRvd25cbiAgICA+IC5vcGVuID4gYSB7XG4gICAgICAmLFxuICAgICAgJjpob3ZlcixcbiAgICAgICY6Zm9jdXMge1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkbmF2YmFyLWRlZmF1bHQtbGluay1hY3RpdmUtYmc7XG4gICAgICAgIGNvbG9yOiAkbmF2YmFyLWRlZmF1bHQtbGluay1hY3RpdmUtY29sb3I7XG4gICAgICB9XG4gICAgfVxuXG4gICAgQG1lZGlhIChtYXgtd2lkdGg6ICRncmlkLWZsb2F0LWJyZWFrcG9pbnQtbWF4KSB7XG4gICAgICAvLyBEcm9wZG93bnMgZ2V0IGN1c3RvbSBkaXNwbGF5IHdoZW4gY29sbGFwc2VkXG4gICAgICAub3BlbiAuZHJvcGRvd24tbWVudSB7XG4gICAgICAgID4gbGkgPiBhIHtcbiAgICAgICAgICBjb2xvcjogJG5hdmJhci1kZWZhdWx0LWxpbmstY29sb3I7XG4gICAgICAgICAgJjpob3ZlcixcbiAgICAgICAgICAmOmZvY3VzIHtcbiAgICAgICAgICAgIGNvbG9yOiAkbmF2YmFyLWRlZmF1bHQtbGluay1ob3Zlci1jb2xvcjtcbiAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6ICRuYXZiYXItZGVmYXVsdC1saW5rLWhvdmVyLWJnO1xuICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgICA+IC5hY3RpdmUgPiBhIHtcbiAgICAgICAgICAmLFxuICAgICAgICAgICY6aG92ZXIsXG4gICAgICAgICAgJjpmb2N1cyB7XG4gICAgICAgICAgICBjb2xvcjogJG5hdmJhci1kZWZhdWx0LWxpbmstYWN0aXZlLWNvbG9yO1xuICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJG5hdmJhci1kZWZhdWx0LWxpbmstYWN0aXZlLWJnO1xuICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgICA+IC5kaXNhYmxlZCA+IGEge1xuICAgICAgICAgICYsXG4gICAgICAgICAgJjpob3ZlcixcbiAgICAgICAgICAmOmZvY3VzIHtcbiAgICAgICAgICAgIGNvbG9yOiAkbmF2YmFyLWRlZmF1bHQtbGluay1kaXNhYmxlZC1jb2xvcjtcbiAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6ICRuYXZiYXItZGVmYXVsdC1saW5rLWRpc2FibGVkLWJnO1xuICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgfVxuXG5cbiAgLy8gTGlua3MgaW4gbmF2YmFyc1xuICAvL1xuICAvLyBBZGQgYSBjbGFzcyB0byBlbnN1cmUgbGlua3Mgb3V0c2lkZSB0aGUgbmF2YmFyIG5hdiBhcmUgY29sb3JlZCBjb3JyZWN0bHkuXG5cbiAgLm5hdmJhci1saW5rIHtcbiAgICBjb2xvcjogJG5hdmJhci1kZWZhdWx0LWxpbmstY29sb3I7XG4gICAgJjpob3ZlciB7XG4gICAgICBjb2xvcjogJG5hdmJhci1kZWZhdWx0LWxpbmstaG92ZXItY29sb3I7XG4gICAgfVxuICB9XG5cbiAgLmJ0bi1saW5rIHtcbiAgICBjb2xvcjogJG5hdmJhci1kZWZhdWx0LWxpbmstY29sb3I7XG4gICAgJjpob3ZlcixcbiAgICAmOmZvY3VzIHtcbiAgICAgIGNvbG9yOiAkbmF2YmFyLWRlZmF1bHQtbGluay1ob3Zlci1jb2xvcjtcbiAgICB9XG4gICAgJltkaXNhYmxlZF0sXG4gICAgZmllbGRzZXRbZGlzYWJsZWRdICYge1xuICAgICAgJjpob3ZlcixcbiAgICAgICY6Zm9jdXMge1xuICAgICAgICBjb2xvcjogJG5hdmJhci1kZWZhdWx0LWxpbmstZGlzYWJsZWQtY29sb3I7XG4gICAgICB9XG4gICAgfVxuICB9XG59XG5cbi8vIEludmVyc2UgbmF2YmFyXG5cbi5uYXZiYXItaW52ZXJzZSB7XG4gIGJhY2tncm91bmQtY29sb3I6ICRuYXZiYXItaW52ZXJzZS1iZztcbiAgYm9yZGVyLWNvbG9yOiAkbmF2YmFyLWludmVyc2UtYm9yZGVyO1xuXG4gIC5uYXZiYXItYnJhbmQge1xuICAgIGNvbG9yOiAkbmF2YmFyLWludmVyc2UtYnJhbmQtY29sb3I7XG4gICAgJjpob3ZlcixcbiAgICAmOmZvY3VzIHtcbiAgICAgIGNvbG9yOiAkbmF2YmFyLWludmVyc2UtYnJhbmQtaG92ZXItY29sb3I7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkbmF2YmFyLWludmVyc2UtYnJhbmQtaG92ZXItYmc7XG4gICAgfVxuICB9XG5cbiAgLm5hdmJhci10ZXh0IHtcbiAgICBjb2xvcjogJG5hdmJhci1pbnZlcnNlLWNvbG9yO1xuICB9XG5cbiAgLm5hdmJhci1uYXYge1xuICAgID4gbGkgPiBhIHtcbiAgICAgIGNvbG9yOiAkbmF2YmFyLWludmVyc2UtbGluay1jb2xvcjtcblxuICAgICAgJjpob3ZlcixcbiAgICAgICY6Zm9jdXMge1xuICAgICAgICBjb2xvcjogJG5hdmJhci1pbnZlcnNlLWxpbmstaG92ZXItY29sb3I7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6ICRuYXZiYXItaW52ZXJzZS1saW5rLWhvdmVyLWJnO1xuICAgICAgfVxuICAgIH1cbiAgICA+IC5hY3RpdmUgPiBhIHtcbiAgICAgICYsXG4gICAgICAmOmhvdmVyLFxuICAgICAgJjpmb2N1cyB7XG4gICAgICAgIGNvbG9yOiAkbmF2YmFyLWludmVyc2UtbGluay1hY3RpdmUtY29sb3I7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6ICRuYXZiYXItaW52ZXJzZS1saW5rLWFjdGl2ZS1iZztcbiAgICAgIH1cbiAgICB9XG4gICAgPiAuZGlzYWJsZWQgPiBhIHtcbiAgICAgICYsXG4gICAgICAmOmhvdmVyLFxuICAgICAgJjpmb2N1cyB7XG4gICAgICAgIGNvbG9yOiAkbmF2YmFyLWludmVyc2UtbGluay1kaXNhYmxlZC1jb2xvcjtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJG5hdmJhci1pbnZlcnNlLWxpbmstZGlzYWJsZWQtYmc7XG4gICAgICB9XG4gICAgfVxuICB9XG5cbiAgLy8gRGFya2VuIHRoZSByZXNwb25zaXZlIG5hdiB0b2dnbGVcbiAgLm5hdmJhci10b2dnbGUge1xuICAgIGJvcmRlci1jb2xvcjogJG5hdmJhci1pbnZlcnNlLXRvZ2dsZS1ib3JkZXItY29sb3I7XG4gICAgJjpob3ZlcixcbiAgICAmOmZvY3VzIHtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6ICRuYXZiYXItaW52ZXJzZS10b2dnbGUtaG92ZXItYmc7XG4gICAgfVxuICAgIC5pY29uLWJhciB7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkbmF2YmFyLWludmVyc2UtdG9nZ2xlLWljb24tYmFyLWJnO1xuICAgIH1cbiAgfVxuXG4gIC5uYXZiYXItY29sbGFwc2UsXG4gIC5uYXZiYXItZm9ybSB7XG4gICAgYm9yZGVyLWNvbG9yOiBkYXJrZW4oJG5hdmJhci1pbnZlcnNlLWJnLCA3JSk7XG4gIH1cblxuICAvLyBEcm9wZG93bnNcbiAgLm5hdmJhci1uYXYge1xuICAgID4gLm9wZW4gPiBhIHtcbiAgICAgICYsXG4gICAgICAmOmhvdmVyLFxuICAgICAgJjpmb2N1cyB7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6ICRuYXZiYXItaW52ZXJzZS1saW5rLWFjdGl2ZS1iZztcbiAgICAgICAgY29sb3I6ICRuYXZiYXItaW52ZXJzZS1saW5rLWFjdGl2ZS1jb2xvcjtcbiAgICAgIH1cbiAgICB9XG5cbiAgICBAbWVkaWEgKG1heC13aWR0aDogJGdyaWQtZmxvYXQtYnJlYWtwb2ludC1tYXgpIHtcbiAgICAgIC8vIERyb3Bkb3ducyBnZXQgY3VzdG9tIGRpc3BsYXlcbiAgICAgIC5vcGVuIC5kcm9wZG93bi1tZW51IHtcbiAgICAgICAgPiAuZHJvcGRvd24taGVhZGVyIHtcbiAgICAgICAgICBib3JkZXItY29sb3I6ICRuYXZiYXItaW52ZXJzZS1ib3JkZXI7XG4gICAgICAgIH1cbiAgICAgICAgLmRpdmlkZXIge1xuICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6ICRuYXZiYXItaW52ZXJzZS1ib3JkZXI7XG4gICAgICAgIH1cbiAgICAgICAgPiBsaSA+IGEge1xuICAgICAgICAgIGNvbG9yOiAkbmF2YmFyLWludmVyc2UtbGluay1jb2xvcjtcbiAgICAgICAgICAmOmhvdmVyLFxuICAgICAgICAgICY6Zm9jdXMge1xuICAgICAgICAgICAgY29sb3I6ICRuYXZiYXItaW52ZXJzZS1saW5rLWhvdmVyLWNvbG9yO1xuICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJG5hdmJhci1pbnZlcnNlLWxpbmstaG92ZXItYmc7XG4gICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICAgID4gLmFjdGl2ZSA+IGEge1xuICAgICAgICAgICYsXG4gICAgICAgICAgJjpob3ZlcixcbiAgICAgICAgICAmOmZvY3VzIHtcbiAgICAgICAgICAgIGNvbG9yOiAkbmF2YmFyLWludmVyc2UtbGluay1hY3RpdmUtY29sb3I7XG4gICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkbmF2YmFyLWludmVyc2UtbGluay1hY3RpdmUtYmc7XG4gICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICAgID4gLmRpc2FibGVkID4gYSB7XG4gICAgICAgICAgJixcbiAgICAgICAgICAmOmhvdmVyLFxuICAgICAgICAgICY6Zm9jdXMge1xuICAgICAgICAgICAgY29sb3I6ICRuYXZiYXItaW52ZXJzZS1saW5rLWRpc2FibGVkLWNvbG9yO1xuICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJG5hdmJhci1pbnZlcnNlLWxpbmstZGlzYWJsZWQtYmc7XG4gICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICB9XG5cbiAgLm5hdmJhci1saW5rIHtcbiAgICBjb2xvcjogJG5hdmJhci1pbnZlcnNlLWxpbmstY29sb3I7XG4gICAgJjpob3ZlciB7XG4gICAgICBjb2xvcjogJG5hdmJhci1pbnZlcnNlLWxpbmstaG92ZXItY29sb3I7XG4gICAgfVxuICB9XG5cbiAgLmJ0bi1saW5rIHtcbiAgICBjb2xvcjogJG5hdmJhci1pbnZlcnNlLWxpbmstY29sb3I7XG4gICAgJjpob3ZlcixcbiAgICAmOmZvY3VzIHtcbiAgICAgIGNvbG9yOiAkbmF2YmFyLWludmVyc2UtbGluay1ob3Zlci1jb2xvcjtcbiAgICB9XG4gICAgJltkaXNhYmxlZF0sXG4gICAgZmllbGRzZXRbZGlzYWJsZWRdICYge1xuICAgICAgJjpob3ZlcixcbiAgICAgICY6Zm9jdXMge1xuICAgICAgICBjb2xvcjogJG5hdmJhci1pbnZlcnNlLWxpbmstZGlzYWJsZWQtY29sb3I7XG4gICAgICB9XG4gICAgfVxuICB9XG59XG4iLCIvLyBOYXZiYXIgdmVydGljYWwgYWxpZ25cbi8vXG4vLyBWZXJ0aWNhbGx5IGNlbnRlciBlbGVtZW50cyBpbiB0aGUgbmF2YmFyLlxuLy8gRXhhbXBsZTogYW4gZWxlbWVudCBoYXMgYSBoZWlnaHQgb2YgMzBweCwgc28gd3JpdGUgb3V0IGAubmF2YmFyLXZlcnRpY2FsLWFsaWduKDMwcHgpO2AgdG8gY2FsY3VsYXRlIHRoZSBhcHByb3ByaWF0ZSB0b3AgbWFyZ2luLlxuXG5AbWl4aW4gbmF2YmFyLXZlcnRpY2FsLWFsaWduKCRlbGVtZW50LWhlaWdodCkge1xuICBtYXJnaW4tdG9wOiAoKCRuYXZiYXItaGVpZ2h0IC0gJGVsZW1lbnQtaGVpZ2h0KSAvIDIpO1xuICBtYXJnaW4tYm90dG9tOiAoKCRuYXZiYXItaGVpZ2h0IC0gJGVsZW1lbnQtaGVpZ2h0KSAvIDIpO1xufVxuIiwiLy9cbi8vIEJyZWFkY3J1bWJzXG4vLyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuXG5cbi5icmVhZGNydW1iIHtcbiAgcGFkZGluZzogJGJyZWFkY3J1bWItcGFkZGluZy12ZXJ0aWNhbCAkYnJlYWRjcnVtYi1wYWRkaW5nLWhvcml6b250YWw7XG4gIG1hcmdpbi1ib3R0b206ICRsaW5lLWhlaWdodC1jb21wdXRlZDtcbiAgbGlzdC1zdHlsZTogbm9uZTtcbiAgYmFja2dyb3VuZC1jb2xvcjogJGJyZWFkY3J1bWItYmc7XG4gIGJvcmRlci1yYWRpdXM6ICRib3JkZXItcmFkaXVzLWJhc2U7XG5cbiAgPiBsaSB7XG4gICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuXG4gICAgKyBsaTpiZWZvcmUge1xuICAgICAgLy8gW2NvbnZlcnRlcl0gV29ya2Fyb3VuZCBmb3IgaHR0cHM6Ly9naXRodWIuY29tL3Nhc3MvbGlic2Fzcy9pc3N1ZXMvMTExNVxuICAgICAgJG5ic3A6IFwiXFwwMGEwXCI7XG4gICAgICBjb250ZW50OiBcIiN7JGJyZWFkY3J1bWItc2VwYXJhdG9yfSN7JG5ic3B9XCI7IC8vIFVuaWNvZGUgc3BhY2UgYWRkZWQgc2luY2UgaW5saW5lLWJsb2NrIG1lYW5zIG5vbi1jb2xsYXBzaW5nIHdoaXRlLXNwYWNlXG4gICAgICBwYWRkaW5nOiAwIDVweDtcbiAgICAgIGNvbG9yOiAkYnJlYWRjcnVtYi1jb2xvcjtcbiAgICB9XG4gIH1cblxuICA+IC5hY3RpdmUge1xuICAgIGNvbG9yOiAkYnJlYWRjcnVtYi1hY3RpdmUtY29sb3I7XG4gIH1cbn1cbiIsIi8vXG4vLyBQYWdpbmF0aW9uIChtdWx0aXBsZSBwYWdlcylcbi8vIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG4ucGFnaW5hdGlvbiB7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgcGFkZGluZy1sZWZ0OiAwO1xuICBtYXJnaW46ICRsaW5lLWhlaWdodC1jb21wdXRlZCAwO1xuICBib3JkZXItcmFkaXVzOiAkYm9yZGVyLXJhZGl1cy1iYXNlO1xuXG4gID4gbGkge1xuICAgIGRpc3BsYXk6IGlubGluZTsgLy8gUmVtb3ZlIGxpc3Qtc3R5bGUgYW5kIGJsb2NrLWxldmVsIGRlZmF1bHRzXG4gICAgPiBhLFxuICAgID4gc3BhbiB7XG4gICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICBmbG9hdDogbGVmdDsgLy8gQ29sbGFwc2Ugd2hpdGUtc3BhY2VcbiAgICAgIHBhZGRpbmc6ICRwYWRkaW5nLWJhc2UtdmVydGljYWwgJHBhZGRpbmctYmFzZS1ob3Jpem9udGFsO1xuICAgICAgbGluZS1oZWlnaHQ6ICRsaW5lLWhlaWdodC1iYXNlO1xuICAgICAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICAgICAgY29sb3I6ICRwYWdpbmF0aW9uLWNvbG9yO1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogJHBhZ2luYXRpb24tYmc7XG4gICAgICBib3JkZXI6IDFweCBzb2xpZCAkcGFnaW5hdGlvbi1ib3JkZXI7XG4gICAgICBtYXJnaW4tbGVmdDogLTFweDtcbiAgICB9XG4gICAgJjpmaXJzdC1jaGlsZCB7XG4gICAgICA+IGEsXG4gICAgICA+IHNwYW4ge1xuICAgICAgICBtYXJnaW4tbGVmdDogMDtcbiAgICAgICAgQGluY2x1ZGUgYm9yZGVyLWxlZnQtcmFkaXVzKCRib3JkZXItcmFkaXVzLWJhc2UpO1xuICAgICAgfVxuICAgIH1cbiAgICAmOmxhc3QtY2hpbGQge1xuICAgICAgPiBhLFxuICAgICAgPiBzcGFuIHtcbiAgICAgICAgQGluY2x1ZGUgYm9yZGVyLXJpZ2h0LXJhZGl1cygkYm9yZGVyLXJhZGl1cy1iYXNlKTtcbiAgICAgIH1cbiAgICB9XG4gIH1cblxuICA+IGxpID4gYSxcbiAgPiBsaSA+IHNwYW4ge1xuICAgICY6aG92ZXIsXG4gICAgJjpmb2N1cyB7XG4gICAgICB6LWluZGV4OiAyO1xuICAgICAgY29sb3I6ICRwYWdpbmF0aW9uLWhvdmVyLWNvbG9yO1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogJHBhZ2luYXRpb24taG92ZXItYmc7XG4gICAgICBib3JkZXItY29sb3I6ICRwYWdpbmF0aW9uLWhvdmVyLWJvcmRlcjtcbiAgICB9XG4gIH1cblxuICA+IC5hY3RpdmUgPiBhLFxuICA+IC5hY3RpdmUgPiBzcGFuIHtcbiAgICAmLFxuICAgICY6aG92ZXIsXG4gICAgJjpmb2N1cyB7XG4gICAgICB6LWluZGV4OiAzO1xuICAgICAgY29sb3I6ICRwYWdpbmF0aW9uLWFjdGl2ZS1jb2xvcjtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6ICRwYWdpbmF0aW9uLWFjdGl2ZS1iZztcbiAgICAgIGJvcmRlci1jb2xvcjogJHBhZ2luYXRpb24tYWN0aXZlLWJvcmRlcjtcbiAgICAgIGN1cnNvcjogZGVmYXVsdDtcbiAgICB9XG4gIH1cblxuICA+IC5kaXNhYmxlZCB7XG4gICAgPiBzcGFuLFxuICAgID4gc3Bhbjpob3ZlcixcbiAgICA+IHNwYW46Zm9jdXMsXG4gICAgPiBhLFxuICAgID4gYTpob3ZlcixcbiAgICA+IGE6Zm9jdXMge1xuICAgICAgY29sb3I6ICRwYWdpbmF0aW9uLWRpc2FibGVkLWNvbG9yO1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogJHBhZ2luYXRpb24tZGlzYWJsZWQtYmc7XG4gICAgICBib3JkZXItY29sb3I6ICRwYWdpbmF0aW9uLWRpc2FibGVkLWJvcmRlcjtcbiAgICAgIGN1cnNvcjogJGN1cnNvci1kaXNhYmxlZDtcbiAgICB9XG4gIH1cbn1cblxuLy8gU2l6aW5nXG4vLyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuXG4vLyBMYXJnZVxuLnBhZ2luYXRpb24tbGcge1xuICBAaW5jbHVkZSBwYWdpbmF0aW9uLXNpemUoJHBhZGRpbmctbGFyZ2UtdmVydGljYWwsICRwYWRkaW5nLWxhcmdlLWhvcml6b250YWwsICRmb250LXNpemUtbGFyZ2UsICRsaW5lLWhlaWdodC1sYXJnZSwgJGJvcmRlci1yYWRpdXMtbGFyZ2UpO1xufVxuXG4vLyBTbWFsbFxuLnBhZ2luYXRpb24tc20ge1xuICBAaW5jbHVkZSBwYWdpbmF0aW9uLXNpemUoJHBhZGRpbmctc21hbGwtdmVydGljYWwsICRwYWRkaW5nLXNtYWxsLWhvcml6b250YWwsICRmb250LXNpemUtc21hbGwsICRsaW5lLWhlaWdodC1zbWFsbCwgJGJvcmRlci1yYWRpdXMtc21hbGwpO1xufVxuIiwiLy8gUGFnaW5hdGlvblxuXG5AbWl4aW4gcGFnaW5hdGlvbi1zaXplKCRwYWRkaW5nLXZlcnRpY2FsLCAkcGFkZGluZy1ob3Jpem9udGFsLCAkZm9udC1zaXplLCAkbGluZS1oZWlnaHQsICRib3JkZXItcmFkaXVzKSB7XG4gID4gbGkge1xuICAgID4gYSxcbiAgICA+IHNwYW4ge1xuICAgICAgcGFkZGluZzogJHBhZGRpbmctdmVydGljYWwgJHBhZGRpbmctaG9yaXpvbnRhbDtcbiAgICAgIGZvbnQtc2l6ZTogJGZvbnQtc2l6ZTtcbiAgICAgIGxpbmUtaGVpZ2h0OiAkbGluZS1oZWlnaHQ7XG4gICAgfVxuICAgICY6Zmlyc3QtY2hpbGQge1xuICAgICAgPiBhLFxuICAgICAgPiBzcGFuIHtcbiAgICAgICAgQGluY2x1ZGUgYm9yZGVyLWxlZnQtcmFkaXVzKCRib3JkZXItcmFkaXVzKTtcbiAgICAgIH1cbiAgICB9XG4gICAgJjpsYXN0LWNoaWxkIHtcbiAgICAgID4gYSxcbiAgICAgID4gc3BhbiB7XG4gICAgICAgIEBpbmNsdWRlIGJvcmRlci1yaWdodC1yYWRpdXMoJGJvcmRlci1yYWRpdXMpO1xuICAgICAgfVxuICAgIH1cbiAgfVxufVxuIiwiLy9cbi8vIFBhZ2VyIHBhZ2luYXRpb25cbi8vIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG5cblxuLnBhZ2VyIHtcbiAgcGFkZGluZy1sZWZ0OiAwO1xuICBtYXJnaW46ICRsaW5lLWhlaWdodC1jb21wdXRlZCAwO1xuICBsaXN0LXN0eWxlOiBub25lO1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gIEBpbmNsdWRlIGNsZWFyZml4O1xuICBsaSB7XG4gICAgZGlzcGxheTogaW5saW5lO1xuICAgID4gYSxcbiAgICA+IHNwYW4ge1xuICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgICAgcGFkZGluZzogNXB4IDE0cHg7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkcGFnZXItYmc7XG4gICAgICBib3JkZXI6IDFweCBzb2xpZCAkcGFnZXItYm9yZGVyO1xuICAgICAgYm9yZGVyLXJhZGl1czogJHBhZ2VyLWJvcmRlci1yYWRpdXM7XG4gICAgfVxuXG4gICAgPiBhOmhvdmVyLFxuICAgID4gYTpmb2N1cyB7XG4gICAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkcGFnZXItaG92ZXItYmc7XG4gICAgfVxuICB9XG5cbiAgLm5leHQge1xuICAgID4gYSxcbiAgICA+IHNwYW4ge1xuICAgICAgZmxvYXQ6IHJpZ2h0O1xuICAgIH1cbiAgfVxuXG4gIC5wcmV2aW91cyB7XG4gICAgPiBhLFxuICAgID4gc3BhbiB7XG4gICAgICBmbG9hdDogbGVmdDtcbiAgICB9XG4gIH1cblxuICAuZGlzYWJsZWQge1xuICAgID4gYSxcbiAgICA+IGE6aG92ZXIsXG4gICAgPiBhOmZvY3VzLFxuICAgID4gc3BhbiB7XG4gICAgICBjb2xvcjogJHBhZ2VyLWRpc2FibGVkLWNvbG9yO1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogJHBhZ2VyLWJnO1xuICAgICAgY3Vyc29yOiAkY3Vyc29yLWRpc2FibGVkO1xuICAgIH1cbiAgfVxufVxuIiwiLy9cbi8vIExhYmVsc1xuLy8gLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cblxuLmxhYmVsIHtcbiAgZGlzcGxheTogaW5saW5lO1xuICBwYWRkaW5nOiAuMmVtIC42ZW0gLjNlbTtcbiAgZm9udC1zaXplOiA3NSU7XG4gIGZvbnQtd2VpZ2h0OiBib2xkO1xuICBsaW5lLWhlaWdodDogMTtcbiAgY29sb3I6ICRsYWJlbC1jb2xvcjtcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xuICB3aGl0ZS1zcGFjZTogbm93cmFwO1xuICB2ZXJ0aWNhbC1hbGlnbjogYmFzZWxpbmU7XG4gIGJvcmRlci1yYWRpdXM6IC4yNWVtO1xuXG4gIC8vIFtjb252ZXJ0ZXJdIGV4dHJhY3RlZCBhJiB0byBhLmxhYmVsXG5cbiAgLy8gRW1wdHkgbGFiZWxzIGNvbGxhcHNlIGF1dG9tYXRpY2FsbHkgKG5vdCBhdmFpbGFibGUgaW4gSUU4KVxuICAmOmVtcHR5IHtcbiAgICBkaXNwbGF5OiBub25lO1xuICB9XG5cbiAgLy8gUXVpY2sgZml4IGZvciBsYWJlbHMgaW4gYnV0dG9uc1xuICAuYnRuICYge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICB0b3A6IC0xcHg7XG4gIH1cbn1cblxuLy8gQWRkIGhvdmVyIGVmZmVjdHMsIGJ1dCBvbmx5IGZvciBsaW5rc1xuYS5sYWJlbCB7XG4gICY6aG92ZXIsXG4gICY6Zm9jdXMge1xuICAgIGNvbG9yOiAkbGFiZWwtbGluay1ob3Zlci1jb2xvcjtcbiAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG4gICAgY3Vyc29yOiBwb2ludGVyO1xuICB9XG59XG5cbi8vIENvbG9yc1xuLy8gQ29udGV4dHVhbCB2YXJpYXRpb25zIChsaW5rZWQgbGFiZWxzIGdldCBkYXJrZXIgb24gOmhvdmVyKVxuXG4ubGFiZWwtZGVmYXVsdCB7XG4gIEBpbmNsdWRlIGxhYmVsLXZhcmlhbnQoJGxhYmVsLWRlZmF1bHQtYmcpO1xufVxuXG4ubGFiZWwtcHJpbWFyeSB7XG4gIEBpbmNsdWRlIGxhYmVsLXZhcmlhbnQoJGxhYmVsLXByaW1hcnktYmcpO1xufVxuXG4ubGFiZWwtc3VjY2VzcyB7XG4gIEBpbmNsdWRlIGxhYmVsLXZhcmlhbnQoJGxhYmVsLXN1Y2Nlc3MtYmcpO1xufVxuXG4ubGFiZWwtaW5mbyB7XG4gIEBpbmNsdWRlIGxhYmVsLXZhcmlhbnQoJGxhYmVsLWluZm8tYmcpO1xufVxuXG4ubGFiZWwtd2FybmluZyB7XG4gIEBpbmNsdWRlIGxhYmVsLXZhcmlhbnQoJGxhYmVsLXdhcm5pbmctYmcpO1xufVxuXG4ubGFiZWwtZGFuZ2VyIHtcbiAgQGluY2x1ZGUgbGFiZWwtdmFyaWFudCgkbGFiZWwtZGFuZ2VyLWJnKTtcbn1cbiIsIi8vIExhYmVsc1xuXG5AbWl4aW4gbGFiZWwtdmFyaWFudCgkY29sb3IpIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogJGNvbG9yO1xuXG4gICZbaHJlZl0ge1xuICAgICY6aG92ZXIsXG4gICAgJjpmb2N1cyB7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiBkYXJrZW4oJGNvbG9yLCAxMCUpO1xuICAgIH1cbiAgfVxufVxuIiwiLy9cbi8vIEJhZGdlc1xuLy8gLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cblxuXG4vLyBCYXNlIGNsYXNzXG4uYmFkZ2Uge1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIG1pbi13aWR0aDogMTBweDtcbiAgcGFkZGluZzogM3B4IDdweDtcbiAgZm9udC1zaXplOiAkZm9udC1zaXplLXNtYWxsO1xuICBmb250LXdlaWdodDogJGJhZGdlLWZvbnQtd2VpZ2h0O1xuICBjb2xvcjogJGJhZGdlLWNvbG9yO1xuICBsaW5lLWhlaWdodDogJGJhZGdlLWxpbmUtaGVpZ2h0O1xuICB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlO1xuICB3aGl0ZS1zcGFjZTogbm93cmFwO1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gIGJhY2tncm91bmQtY29sb3I6ICRiYWRnZS1iZztcbiAgYm9yZGVyLXJhZGl1czogJGJhZGdlLWJvcmRlci1yYWRpdXM7XG5cbiAgLy8gRW1wdHkgYmFkZ2VzIGNvbGxhcHNlIGF1dG9tYXRpY2FsbHkgKG5vdCBhdmFpbGFibGUgaW4gSUU4KVxuICAmOmVtcHR5IHtcbiAgICBkaXNwbGF5OiBub25lO1xuICB9XG5cbiAgLy8gUXVpY2sgZml4IGZvciBiYWRnZXMgaW4gYnV0dG9uc1xuICAuYnRuICYge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICB0b3A6IC0xcHg7XG4gIH1cblxuICAuYnRuLXhzICYsXG4gIC5idG4tZ3JvdXAteHMgPiAuYnRuICYge1xuICAgIHRvcDogMDtcbiAgICBwYWRkaW5nOiAxcHggNXB4O1xuICB9XG5cbiAgLy8gW2NvbnZlcnRlcl0gZXh0cmFjdGVkIGEmIHRvIGEuYmFkZ2VcblxuICAvLyBBY2NvdW50IGZvciBiYWRnZXMgaW4gbmF2c1xuICAubGlzdC1ncm91cC1pdGVtLmFjdGl2ZSA+ICYsXG4gIC5uYXYtcGlsbHMgPiAuYWN0aXZlID4gYSA+ICYge1xuICAgIGNvbG9yOiAkYmFkZ2UtYWN0aXZlLWNvbG9yO1xuICAgIGJhY2tncm91bmQtY29sb3I6ICRiYWRnZS1hY3RpdmUtYmc7XG4gIH1cblxuICAubGlzdC1ncm91cC1pdGVtID4gJiB7XG4gICAgZmxvYXQ6IHJpZ2h0O1xuICB9XG5cbiAgLmxpc3QtZ3JvdXAtaXRlbSA+ICYgKyAmIHtcbiAgICBtYXJnaW4tcmlnaHQ6IDVweDtcbiAgfVxuXG4gIC5uYXYtcGlsbHMgPiBsaSA+IGEgPiAmIHtcbiAgICBtYXJnaW4tbGVmdDogM3B4O1xuICB9XG59XG5cbi8vIEhvdmVyIHN0YXRlLCBidXQgb25seSBmb3IgbGlua3NcbmEuYmFkZ2Uge1xuICAmOmhvdmVyLFxuICAmOmZvY3VzIHtcbiAgICBjb2xvcjogJGJhZGdlLWxpbmstaG92ZXItY29sb3I7XG4gICAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICAgIGN1cnNvcjogcG9pbnRlcjtcbiAgfVxufVxuIiwiLy9cbi8vIEp1bWJvdHJvblxuLy8gLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cblxuXG4uanVtYm90cm9uIHtcbiAgcGFkZGluZy10b3A6ICAgICRqdW1ib3Ryb24tcGFkZGluZztcbiAgcGFkZGluZy1ib3R0b206ICRqdW1ib3Ryb24tcGFkZGluZztcbiAgbWFyZ2luLWJvdHRvbTogJGp1bWJvdHJvbi1wYWRkaW5nO1xuICBjb2xvcjogJGp1bWJvdHJvbi1jb2xvcjtcbiAgYmFja2dyb3VuZC1jb2xvcjogJGp1bWJvdHJvbi1iZztcblxuICBoMSxcbiAgLmgxIHtcbiAgICBjb2xvcjogJGp1bWJvdHJvbi1oZWFkaW5nLWNvbG9yO1xuICB9XG5cbiAgcCB7XG4gICAgbWFyZ2luLWJvdHRvbTogKCRqdW1ib3Ryb24tcGFkZGluZyAvIDIpO1xuICAgIGZvbnQtc2l6ZTogJGp1bWJvdHJvbi1mb250LXNpemU7XG4gICAgZm9udC13ZWlnaHQ6IDIwMDtcbiAgfVxuXG4gID4gaHIge1xuICAgIGJvcmRlci10b3AtY29sb3I6IGRhcmtlbigkanVtYm90cm9uLWJnLCAxMCUpO1xuICB9XG5cbiAgLmNvbnRhaW5lciAmLFxuICAuY29udGFpbmVyLWZsdWlkICYge1xuICAgIGJvcmRlci1yYWRpdXM6ICRib3JkZXItcmFkaXVzLWxhcmdlOyAvLyBPbmx5IHJvdW5kIGNvcm5lcnMgYXQgaGlnaGVyIHJlc29sdXRpb25zIGlmIGNvbnRhaW5lZCBpbiBhIGNvbnRhaW5lclxuICAgIHBhZGRpbmctbGVmdDogICgkZ3JpZC1ndXR0ZXItd2lkdGggLyAyKTtcbiAgICBwYWRkaW5nLXJpZ2h0OiAoJGdyaWQtZ3V0dGVyLXdpZHRoIC8gMik7XG4gIH1cblxuICAuY29udGFpbmVyIHtcbiAgICBtYXgtd2lkdGg6IDEwMCU7XG4gIH1cblxuICBAbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiAkc2NyZWVuLXNtLW1pbikge1xuICAgIHBhZGRpbmctdG9wOiAgICAoJGp1bWJvdHJvbi1wYWRkaW5nICogMS42KTtcbiAgICBwYWRkaW5nLWJvdHRvbTogKCRqdW1ib3Ryb24tcGFkZGluZyAqIDEuNik7XG5cbiAgICAuY29udGFpbmVyICYsXG4gICAgLmNvbnRhaW5lci1mbHVpZCAmIHtcbiAgICAgIHBhZGRpbmctbGVmdDogICgkanVtYm90cm9uLXBhZGRpbmcgKiAyKTtcbiAgICAgIHBhZGRpbmctcmlnaHQ6ICgkanVtYm90cm9uLXBhZGRpbmcgKiAyKTtcbiAgICB9XG5cbiAgICBoMSxcbiAgICAuaDEge1xuICAgICAgZm9udC1zaXplOiAkanVtYm90cm9uLWhlYWRpbmctZm9udC1zaXplO1xuICAgIH1cbiAgfVxufVxuIiwiLy9cbi8vIFRodW1ibmFpbHNcbi8vIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG5cblxuLy8gTWl4aW4gYW5kIGFkanVzdCB0aGUgcmVndWxhciBpbWFnZSBjbGFzc1xuLnRodW1ibmFpbCB7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBwYWRkaW5nOiAkdGh1bWJuYWlsLXBhZGRpbmc7XG4gIG1hcmdpbi1ib3R0b206ICRsaW5lLWhlaWdodC1jb21wdXRlZDtcbiAgbGluZS1oZWlnaHQ6ICRsaW5lLWhlaWdodC1iYXNlO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAkdGh1bWJuYWlsLWJnO1xuICBib3JkZXI6IDFweCBzb2xpZCAkdGh1bWJuYWlsLWJvcmRlcjtcbiAgYm9yZGVyLXJhZGl1czogJHRodW1ibmFpbC1ib3JkZXItcmFkaXVzO1xuICBAaW5jbHVkZSB0cmFuc2l0aW9uKGJvcmRlciAuMnMgZWFzZS1pbi1vdXQpO1xuXG4gID4gaW1nLFxuICBhID4gaW1nIHtcbiAgICBAaW5jbHVkZSBpbWctcmVzcG9uc2l2ZTtcbiAgICBtYXJnaW4tbGVmdDogYXV0bztcbiAgICBtYXJnaW4tcmlnaHQ6IGF1dG87XG4gIH1cblxuICAvLyBbY29udmVydGVyXSBleHRyYWN0ZWQgYSY6aG92ZXIsIGEmOmZvY3VzLCBhJi5hY3RpdmUgdG8gYS50aHVtYm5haWw6aG92ZXIsIGEudGh1bWJuYWlsOmZvY3VzLCBhLnRodW1ibmFpbC5hY3RpdmVcblxuICAvLyBJbWFnZSBjYXB0aW9uc1xuICAuY2FwdGlvbiB7XG4gICAgcGFkZGluZzogJHRodW1ibmFpbC1jYXB0aW9uLXBhZGRpbmc7XG4gICAgY29sb3I6ICR0aHVtYm5haWwtY2FwdGlvbi1jb2xvcjtcbiAgfVxufVxuXG4vLyBBZGQgYSBob3ZlciBzdGF0ZSBmb3IgbGlua2VkIHZlcnNpb25zIG9ubHlcbmEudGh1bWJuYWlsOmhvdmVyLFxuYS50aHVtYm5haWw6Zm9jdXMsXG5hLnRodW1ibmFpbC5hY3RpdmUge1xuICBib3JkZXItY29sb3I6ICRsaW5rLWNvbG9yO1xufVxuIiwiLy9cbi8vIEFsZXJ0c1xuLy8gLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cblxuXG4vLyBCYXNlIHN0eWxlc1xuLy8gLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuXG4uYWxlcnQge1xuICBwYWRkaW5nOiAkYWxlcnQtcGFkZGluZztcbiAgbWFyZ2luLWJvdHRvbTogJGxpbmUtaGVpZ2h0LWNvbXB1dGVkO1xuICBib3JkZXI6IDFweCBzb2xpZCB0cmFuc3BhcmVudDtcbiAgYm9yZGVyLXJhZGl1czogJGFsZXJ0LWJvcmRlci1yYWRpdXM7XG5cbiAgLy8gSGVhZGluZ3MgZm9yIGxhcmdlciBhbGVydHNcbiAgaDQge1xuICAgIG1hcmdpbi10b3A6IDA7XG4gICAgLy8gU3BlY2lmaWVkIGZvciB0aGUgaDQgdG8gcHJldmVudCBjb25mbGljdHMgb2YgY2hhbmdpbmcgJGhlYWRpbmdzLWNvbG9yXG4gICAgY29sb3I6IGluaGVyaXQ7XG4gIH1cblxuICAvLyBQcm92aWRlIGNsYXNzIGZvciBsaW5rcyB0aGF0IG1hdGNoIGFsZXJ0c1xuICAuYWxlcnQtbGluayB7XG4gICAgZm9udC13ZWlnaHQ6ICRhbGVydC1saW5rLWZvbnQtd2VpZ2h0O1xuICB9XG5cbiAgLy8gSW1wcm92ZSBhbGlnbm1lbnQgYW5kIHNwYWNpbmcgb2YgaW5uZXIgY29udGVudFxuICA+IHAsXG4gID4gdWwge1xuICAgIG1hcmdpbi1ib3R0b206IDA7XG4gIH1cblxuICA+IHAgKyBwIHtcbiAgICBtYXJnaW4tdG9wOiA1cHg7XG4gIH1cbn1cblxuLy8gRGlzbWlzc2libGUgYWxlcnRzXG4vL1xuLy8gRXhwYW5kIHRoZSByaWdodCBwYWRkaW5nIGFuZCBhY2NvdW50IGZvciB0aGUgY2xvc2UgYnV0dG9uJ3MgcG9zaXRpb25pbmcuXG5cbi5hbGVydC1kaXNtaXNzYWJsZSwgLy8gVGhlIG1pc3NwZWxsZWQgLmFsZXJ0LWRpc21pc3NhYmxlIHdhcyBkZXByZWNhdGVkIGluIDMuMi4wLlxuLmFsZXJ0LWRpc21pc3NpYmxlIHtcbiAgcGFkZGluZy1yaWdodDogKCRhbGVydC1wYWRkaW5nICsgMjApO1xuXG4gIC8vIEFkanVzdCBjbG9zZSBsaW5rIHBvc2l0aW9uXG4gIC5jbG9zZSB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIHRvcDogLTJweDtcbiAgICByaWdodDogLTIxcHg7XG4gICAgY29sb3I6IGluaGVyaXQ7XG4gIH1cbn1cblxuLy8gQWx0ZXJuYXRlIHN0eWxlc1xuLy9cbi8vIEdlbmVyYXRlIGNvbnRleHR1YWwgbW9kaWZpZXIgY2xhc3NlcyBmb3IgY29sb3JpemluZyB0aGUgYWxlcnQuXG5cbi5hbGVydC1zdWNjZXNzIHtcbiAgQGluY2x1ZGUgYWxlcnQtdmFyaWFudCgkYWxlcnQtc3VjY2Vzcy1iZywgJGFsZXJ0LXN1Y2Nlc3MtYm9yZGVyLCAkYWxlcnQtc3VjY2Vzcy10ZXh0KTtcbn1cblxuLmFsZXJ0LWluZm8ge1xuICBAaW5jbHVkZSBhbGVydC12YXJpYW50KCRhbGVydC1pbmZvLWJnLCAkYWxlcnQtaW5mby1ib3JkZXIsICRhbGVydC1pbmZvLXRleHQpO1xufVxuXG4uYWxlcnQtd2FybmluZyB7XG4gIEBpbmNsdWRlIGFsZXJ0LXZhcmlhbnQoJGFsZXJ0LXdhcm5pbmctYmcsICRhbGVydC13YXJuaW5nLWJvcmRlciwgJGFsZXJ0LXdhcm5pbmctdGV4dCk7XG59XG5cbi5hbGVydC1kYW5nZXIge1xuICBAaW5jbHVkZSBhbGVydC12YXJpYW50KCRhbGVydC1kYW5nZXItYmcsICRhbGVydC1kYW5nZXItYm9yZGVyLCAkYWxlcnQtZGFuZ2VyLXRleHQpO1xufVxuIiwiLy8gQWxlcnRzXG5cbkBtaXhpbiBhbGVydC12YXJpYW50KCRiYWNrZ3JvdW5kLCAkYm9yZGVyLCAkdGV4dC1jb2xvcikge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAkYmFja2dyb3VuZDtcbiAgYm9yZGVyLWNvbG9yOiAkYm9yZGVyO1xuICBjb2xvcjogJHRleHQtY29sb3I7XG5cbiAgaHIge1xuICAgIGJvcmRlci10b3AtY29sb3I6IGRhcmtlbigkYm9yZGVyLCA1JSk7XG4gIH1cbiAgLmFsZXJ0LWxpbmsge1xuICAgIGNvbG9yOiBkYXJrZW4oJHRleHQtY29sb3IsIDEwJSk7XG4gIH1cbn1cbiIsIi8vXG4vLyBQcm9ncmVzcyBiYXJzXG4vLyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuXG5cbi8vIEJhciBhbmltYXRpb25zXG4vLyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG5cbi8vIFdlYktpdFxuQC13ZWJraXQta2V5ZnJhbWVzIHByb2dyZXNzLWJhci1zdHJpcGVzIHtcbiAgZnJvbSAgeyBiYWNrZ3JvdW5kLXBvc2l0aW9uOiA0MHB4IDA7IH1cbiAgdG8gICAgeyBiYWNrZ3JvdW5kLXBvc2l0aW9uOiAwIDA7IH1cbn1cblxuLy8gU3BlYyBhbmQgSUUxMCtcbkBrZXlmcmFtZXMgcHJvZ3Jlc3MtYmFyLXN0cmlwZXMge1xuICBmcm9tICB7IGJhY2tncm91bmQtcG9zaXRpb246IDQwcHggMDsgfVxuICB0byAgICB7IGJhY2tncm91bmQtcG9zaXRpb246IDAgMDsgfVxufVxuXG5cbi8vIEJhciBpdHNlbGZcbi8vIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cblxuLy8gT3V0ZXIgY29udGFpbmVyXG4ucHJvZ3Jlc3Mge1xuICBvdmVyZmxvdzogaGlkZGVuO1xuICBoZWlnaHQ6ICRsaW5lLWhlaWdodC1jb21wdXRlZDtcbiAgbWFyZ2luLWJvdHRvbTogJGxpbmUtaGVpZ2h0LWNvbXB1dGVkO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAkcHJvZ3Jlc3MtYmc7XG4gIGJvcmRlci1yYWRpdXM6ICRwcm9ncmVzcy1ib3JkZXItcmFkaXVzO1xuICBAaW5jbHVkZSBib3gtc2hhZG93KGluc2V0IDAgMXB4IDJweCByZ2JhKDAsMCwwLC4xKSk7XG59XG5cbi8vIEJhciBvZiBwcm9ncmVzc1xuLnByb2dyZXNzLWJhciB7XG4gIGZsb2F0OiBsZWZ0O1xuICB3aWR0aDogMCU7XG4gIGhlaWdodDogMTAwJTtcbiAgZm9udC1zaXplOiAkZm9udC1zaXplLXNtYWxsO1xuICBsaW5lLWhlaWdodDogJGxpbmUtaGVpZ2h0LWNvbXB1dGVkO1xuICBjb2xvcjogJHByb2dyZXNzLWJhci1jb2xvcjtcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAkcHJvZ3Jlc3MtYmFyLWJnO1xuICBAaW5jbHVkZSBib3gtc2hhZG93KGluc2V0IDAgLTFweCAwIHJnYmEoMCwwLDAsLjE1KSk7XG4gIEBpbmNsdWRlIHRyYW5zaXRpb24od2lkdGggLjZzIGVhc2UpO1xufVxuXG4vLyBTdHJpcGVkIGJhcnNcbi8vXG4vLyBgLnByb2dyZXNzLXN0cmlwZWQgLnByb2dyZXNzLWJhcmAgaXMgZGVwcmVjYXRlZCBhcyBvZiB2My4yLjAgaW4gZmF2b3Igb2YgdGhlXG4vLyBgLnByb2dyZXNzLWJhci1zdHJpcGVkYCBjbGFzcywgd2hpY2ggeW91IGp1c3QgYWRkIHRvIGFuIGV4aXN0aW5nXG4vLyBgLnByb2dyZXNzLWJhcmAuXG4ucHJvZ3Jlc3Mtc3RyaXBlZCAucHJvZ3Jlc3MtYmFyLFxuLnByb2dyZXNzLWJhci1zdHJpcGVkIHtcbiAgQGluY2x1ZGUgZ3JhZGllbnQtc3RyaXBlZDtcbiAgYmFja2dyb3VuZC1zaXplOiA0MHB4IDQwcHg7XG59XG5cbi8vIENhbGwgYW5pbWF0aW9uIGZvciB0aGUgYWN0aXZlIG9uZVxuLy9cbi8vIGAucHJvZ3Jlc3MuYWN0aXZlIC5wcm9ncmVzcy1iYXJgIGlzIGRlcHJlY2F0ZWQgYXMgb2YgdjMuMi4wIGluIGZhdm9yIG9mIHRoZVxuLy8gYC5wcm9ncmVzcy1iYXIuYWN0aXZlYCBhcHByb2FjaC5cbi5wcm9ncmVzcy5hY3RpdmUgLnByb2dyZXNzLWJhcixcbi5wcm9ncmVzcy1iYXIuYWN0aXZlIHtcbiAgQGluY2x1ZGUgYW5pbWF0aW9uKHByb2dyZXNzLWJhci1zdHJpcGVzIDJzIGxpbmVhciBpbmZpbml0ZSk7XG59XG5cblxuLy8gVmFyaWF0aW9uc1xuLy8gLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuXG4ucHJvZ3Jlc3MtYmFyLXN1Y2Nlc3Mge1xuICBAaW5jbHVkZSBwcm9ncmVzcy1iYXItdmFyaWFudCgkcHJvZ3Jlc3MtYmFyLXN1Y2Nlc3MtYmcpO1xufVxuXG4ucHJvZ3Jlc3MtYmFyLWluZm8ge1xuICBAaW5jbHVkZSBwcm9ncmVzcy1iYXItdmFyaWFudCgkcHJvZ3Jlc3MtYmFyLWluZm8tYmcpO1xufVxuXG4ucHJvZ3Jlc3MtYmFyLXdhcm5pbmcge1xuICBAaW5jbHVkZSBwcm9ncmVzcy1iYXItdmFyaWFudCgkcHJvZ3Jlc3MtYmFyLXdhcm5pbmctYmcpO1xufVxuXG4ucHJvZ3Jlc3MtYmFyLWRhbmdlciB7XG4gIEBpbmNsdWRlIHByb2dyZXNzLWJhci12YXJpYW50KCRwcm9ncmVzcy1iYXItZGFuZ2VyLWJnKTtcbn1cbiIsIi8vIEdyYWRpZW50c1xuXG5cblxuLy8gSG9yaXpvbnRhbCBncmFkaWVudCwgZnJvbSBsZWZ0IHRvIHJpZ2h0XG4vL1xuLy8gQ3JlYXRlcyB0d28gY29sb3Igc3RvcHMsIHN0YXJ0IGFuZCBlbmQsIGJ5IHNwZWNpZnlpbmcgYSBjb2xvciBhbmQgcG9zaXRpb24gZm9yIGVhY2ggY29sb3Igc3RvcC5cbi8vIENvbG9yIHN0b3BzIGFyZSBub3QgYXZhaWxhYmxlIGluIElFOSBhbmQgYmVsb3cuXG5AbWl4aW4gZ3JhZGllbnQtaG9yaXpvbnRhbCgkc3RhcnQtY29sb3I6ICM1NTUsICRlbmQtY29sb3I6ICMzMzMsICRzdGFydC1wZXJjZW50OiAwJSwgJGVuZC1wZXJjZW50OiAxMDAlKSB7XG4gIGJhY2tncm91bmQtaW1hZ2U6IC13ZWJraXQtbGluZWFyLWdyYWRpZW50KGxlZnQsICRzdGFydC1jb2xvciAkc3RhcnQtcGVyY2VudCwgJGVuZC1jb2xvciAkZW5kLXBlcmNlbnQpOyAvLyBTYWZhcmkgNS4xLTYsIENocm9tZSAxMCtcbiAgYmFja2dyb3VuZC1pbWFnZTogLW8tbGluZWFyLWdyYWRpZW50KGxlZnQsICRzdGFydC1jb2xvciAkc3RhcnQtcGVyY2VudCwgJGVuZC1jb2xvciAkZW5kLXBlcmNlbnQpOyAvLyBPcGVyYSAxMlxuICBiYWNrZ3JvdW5kLWltYWdlOiBsaW5lYXItZ3JhZGllbnQodG8gcmlnaHQsICRzdGFydC1jb2xvciAkc3RhcnQtcGVyY2VudCwgJGVuZC1jb2xvciAkZW5kLXBlcmNlbnQpOyAvLyBTdGFuZGFyZCwgSUUxMCwgRmlyZWZveCAxNissIE9wZXJhIDEyLjEwKywgU2FmYXJpIDcrLCBDaHJvbWUgMjYrXG4gIGJhY2tncm91bmQtcmVwZWF0OiByZXBlYXQteDtcbiAgZmlsdGVyOiBwcm9naWQ6RFhJbWFnZVRyYW5zZm9ybS5NaWNyb3NvZnQuZ3JhZGllbnQoc3RhcnRDb2xvcnN0cj0nI3tpZS1oZXgtc3RyKCRzdGFydC1jb2xvcil9JywgZW5kQ29sb3JzdHI9JyN7aWUtaGV4LXN0cigkZW5kLWNvbG9yKX0nLCBHcmFkaWVudFR5cGU9MSk7IC8vIElFOSBhbmQgZG93blxufVxuXG4vLyBWZXJ0aWNhbCBncmFkaWVudCwgZnJvbSB0b3AgdG8gYm90dG9tXG4vL1xuLy8gQ3JlYXRlcyB0d28gY29sb3Igc3RvcHMsIHN0YXJ0IGFuZCBlbmQsIGJ5IHNwZWNpZnlpbmcgYSBjb2xvciBhbmQgcG9zaXRpb24gZm9yIGVhY2ggY29sb3Igc3RvcC5cbi8vIENvbG9yIHN0b3BzIGFyZSBub3QgYXZhaWxhYmxlIGluIElFOSBhbmQgYmVsb3cuXG5AbWl4aW4gZ3JhZGllbnQtdmVydGljYWwoJHN0YXJ0LWNvbG9yOiAjNTU1LCAkZW5kLWNvbG9yOiAjMzMzLCAkc3RhcnQtcGVyY2VudDogMCUsICRlbmQtcGVyY2VudDogMTAwJSkge1xuICBiYWNrZ3JvdW5kLWltYWdlOiAtd2Via2l0LWxpbmVhci1ncmFkaWVudCh0b3AsICRzdGFydC1jb2xvciAkc3RhcnQtcGVyY2VudCwgJGVuZC1jb2xvciAkZW5kLXBlcmNlbnQpOyAgLy8gU2FmYXJpIDUuMS02LCBDaHJvbWUgMTArXG4gIGJhY2tncm91bmQtaW1hZ2U6IC1vLWxpbmVhci1ncmFkaWVudCh0b3AsICRzdGFydC1jb2xvciAkc3RhcnQtcGVyY2VudCwgJGVuZC1jb2xvciAkZW5kLXBlcmNlbnQpOyAgLy8gT3BlcmEgMTJcbiAgYmFja2dyb3VuZC1pbWFnZTogbGluZWFyLWdyYWRpZW50KHRvIGJvdHRvbSwgJHN0YXJ0LWNvbG9yICRzdGFydC1wZXJjZW50LCAkZW5kLWNvbG9yICRlbmQtcGVyY2VudCk7IC8vIFN0YW5kYXJkLCBJRTEwLCBGaXJlZm94IDE2KywgT3BlcmEgMTIuMTArLCBTYWZhcmkgNyssIENocm9tZSAyNitcbiAgYmFja2dyb3VuZC1yZXBlYXQ6IHJlcGVhdC14O1xuICBmaWx0ZXI6IHByb2dpZDpEWEltYWdlVHJhbnNmb3JtLk1pY3Jvc29mdC5ncmFkaWVudChzdGFydENvbG9yc3RyPScje2llLWhleC1zdHIoJHN0YXJ0LWNvbG9yKX0nLCBlbmRDb2xvcnN0cj0nI3tpZS1oZXgtc3RyKCRlbmQtY29sb3IpfScsIEdyYWRpZW50VHlwZT0wKTsgLy8gSUU5IGFuZCBkb3duXG59XG5cbkBtaXhpbiBncmFkaWVudC1kaXJlY3Rpb25hbCgkc3RhcnQtY29sb3I6ICM1NTUsICRlbmQtY29sb3I6ICMzMzMsICRkZWc6IDQ1ZGVnKSB7XG4gIGJhY2tncm91bmQtcmVwZWF0OiByZXBlYXQteDtcbiAgYmFja2dyb3VuZC1pbWFnZTogLXdlYmtpdC1saW5lYXItZ3JhZGllbnQoJGRlZywgJHN0YXJ0LWNvbG9yLCAkZW5kLWNvbG9yKTsgLy8gU2FmYXJpIDUuMS02LCBDaHJvbWUgMTArXG4gIGJhY2tncm91bmQtaW1hZ2U6IC1vLWxpbmVhci1ncmFkaWVudCgkZGVnLCAkc3RhcnQtY29sb3IsICRlbmQtY29sb3IpOyAvLyBPcGVyYSAxMlxuICBiYWNrZ3JvdW5kLWltYWdlOiBsaW5lYXItZ3JhZGllbnQoJGRlZywgJHN0YXJ0LWNvbG9yLCAkZW5kLWNvbG9yKTsgLy8gU3RhbmRhcmQsIElFMTAsIEZpcmVmb3ggMTYrLCBPcGVyYSAxMi4xMCssIFNhZmFyaSA3KywgQ2hyb21lIDI2K1xufVxuQG1peGluIGdyYWRpZW50LWhvcml6b250YWwtdGhyZWUtY29sb3JzKCRzdGFydC1jb2xvcjogIzAwYjNlZSwgJG1pZC1jb2xvcjogIzdhNDNiNiwgJGNvbG9yLXN0b3A6IDUwJSwgJGVuZC1jb2xvcjogI2MzMzI1Zikge1xuICBiYWNrZ3JvdW5kLWltYWdlOiAtd2Via2l0LWxpbmVhci1ncmFkaWVudChsZWZ0LCAkc3RhcnQtY29sb3IsICRtaWQtY29sb3IgJGNvbG9yLXN0b3AsICRlbmQtY29sb3IpO1xuICBiYWNrZ3JvdW5kLWltYWdlOiAtby1saW5lYXItZ3JhZGllbnQobGVmdCwgJHN0YXJ0LWNvbG9yLCAkbWlkLWNvbG9yICRjb2xvci1zdG9wLCAkZW5kLWNvbG9yKTtcbiAgYmFja2dyb3VuZC1pbWFnZTogbGluZWFyLWdyYWRpZW50KHRvIHJpZ2h0LCAkc3RhcnQtY29sb3IsICRtaWQtY29sb3IgJGNvbG9yLXN0b3AsICRlbmQtY29sb3IpO1xuICBiYWNrZ3JvdW5kLXJlcGVhdDogbm8tcmVwZWF0O1xuICBmaWx0ZXI6IHByb2dpZDpEWEltYWdlVHJhbnNmb3JtLk1pY3Jvc29mdC5ncmFkaWVudChzdGFydENvbG9yc3RyPScje2llLWhleC1zdHIoJHN0YXJ0LWNvbG9yKX0nLCBlbmRDb2xvcnN0cj0nI3tpZS1oZXgtc3RyKCRlbmQtY29sb3IpfScsIEdyYWRpZW50VHlwZT0xKTsgLy8gSUU5IGFuZCBkb3duLCBnZXRzIG5vIGNvbG9yLXN0b3AgYXQgYWxsIGZvciBwcm9wZXIgZmFsbGJhY2tcbn1cbkBtaXhpbiBncmFkaWVudC12ZXJ0aWNhbC10aHJlZS1jb2xvcnMoJHN0YXJ0LWNvbG9yOiAjMDBiM2VlLCAkbWlkLWNvbG9yOiAjN2E0M2I2LCAkY29sb3Itc3RvcDogNTAlLCAkZW5kLWNvbG9yOiAjYzMzMjVmKSB7XG4gIGJhY2tncm91bmQtaW1hZ2U6IC13ZWJraXQtbGluZWFyLWdyYWRpZW50KCRzdGFydC1jb2xvciwgJG1pZC1jb2xvciAkY29sb3Itc3RvcCwgJGVuZC1jb2xvcik7XG4gIGJhY2tncm91bmQtaW1hZ2U6IC1vLWxpbmVhci1ncmFkaWVudCgkc3RhcnQtY29sb3IsICRtaWQtY29sb3IgJGNvbG9yLXN0b3AsICRlbmQtY29sb3IpO1xuICBiYWNrZ3JvdW5kLWltYWdlOiBsaW5lYXItZ3JhZGllbnQoJHN0YXJ0LWNvbG9yLCAkbWlkLWNvbG9yICRjb2xvci1zdG9wLCAkZW5kLWNvbG9yKTtcbiAgYmFja2dyb3VuZC1yZXBlYXQ6IG5vLXJlcGVhdDtcbiAgZmlsdGVyOiBwcm9naWQ6RFhJbWFnZVRyYW5zZm9ybS5NaWNyb3NvZnQuZ3JhZGllbnQoc3RhcnRDb2xvcnN0cj0nI3tpZS1oZXgtc3RyKCRzdGFydC1jb2xvcil9JywgZW5kQ29sb3JzdHI9JyN7aWUtaGV4LXN0cigkZW5kLWNvbG9yKX0nLCBHcmFkaWVudFR5cGU9MCk7IC8vIElFOSBhbmQgZG93biwgZ2V0cyBubyBjb2xvci1zdG9wIGF0IGFsbCBmb3IgcHJvcGVyIGZhbGxiYWNrXG59XG5AbWl4aW4gZ3JhZGllbnQtcmFkaWFsKCRpbm5lci1jb2xvcjogIzU1NSwgJG91dGVyLWNvbG9yOiAjMzMzKSB7XG4gIGJhY2tncm91bmQtaW1hZ2U6IC13ZWJraXQtcmFkaWFsLWdyYWRpZW50KGNpcmNsZSwgJGlubmVyLWNvbG9yLCAkb3V0ZXItY29sb3IpO1xuICBiYWNrZ3JvdW5kLWltYWdlOiByYWRpYWwtZ3JhZGllbnQoY2lyY2xlLCAkaW5uZXItY29sb3IsICRvdXRlci1jb2xvcik7XG4gIGJhY2tncm91bmQtcmVwZWF0OiBuby1yZXBlYXQ7XG59XG5AbWl4aW4gZ3JhZGllbnQtc3RyaXBlZCgkY29sb3I6IHJnYmEoMjU1LDI1NSwyNTUsLjE1KSwgJGFuZ2xlOiA0NWRlZykge1xuICBiYWNrZ3JvdW5kLWltYWdlOiAtd2Via2l0LWxpbmVhci1ncmFkaWVudCgkYW5nbGUsICRjb2xvciAyNSUsIHRyYW5zcGFyZW50IDI1JSwgdHJhbnNwYXJlbnQgNTAlLCAkY29sb3IgNTAlLCAkY29sb3IgNzUlLCB0cmFuc3BhcmVudCA3NSUsIHRyYW5zcGFyZW50KTtcbiAgYmFja2dyb3VuZC1pbWFnZTogLW8tbGluZWFyLWdyYWRpZW50KCRhbmdsZSwgJGNvbG9yIDI1JSwgdHJhbnNwYXJlbnQgMjUlLCB0cmFuc3BhcmVudCA1MCUsICRjb2xvciA1MCUsICRjb2xvciA3NSUsIHRyYW5zcGFyZW50IDc1JSwgdHJhbnNwYXJlbnQpO1xuICBiYWNrZ3JvdW5kLWltYWdlOiBsaW5lYXItZ3JhZGllbnQoJGFuZ2xlLCAkY29sb3IgMjUlLCB0cmFuc3BhcmVudCAyNSUsIHRyYW5zcGFyZW50IDUwJSwgJGNvbG9yIDUwJSwgJGNvbG9yIDc1JSwgdHJhbnNwYXJlbnQgNzUlLCB0cmFuc3BhcmVudCk7XG59XG4iLCIvLyBQcm9ncmVzcyBiYXJzXG5cbkBtaXhpbiBwcm9ncmVzcy1iYXItdmFyaWFudCgkY29sb3IpIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogJGNvbG9yO1xuXG4gIC8vIERlcHJlY2F0ZWQgcGFyZW50IGNsYXNzIHJlcXVpcmVtZW50IGFzIG9mIHYzLjIuMFxuICAucHJvZ3Jlc3Mtc3RyaXBlZCAmIHtcbiAgICBAaW5jbHVkZSBncmFkaWVudC1zdHJpcGVkO1xuICB9XG59XG4iLCIubWVkaWEge1xuICAvLyBQcm9wZXIgc3BhY2luZyBiZXR3ZWVuIGluc3RhbmNlcyBvZiAubWVkaWFcbiAgbWFyZ2luLXRvcDogMTVweDtcblxuICAmOmZpcnN0LWNoaWxkIHtcbiAgICBtYXJnaW4tdG9wOiAwO1xuICB9XG59XG5cbi5tZWRpYSxcbi5tZWRpYS1ib2R5IHtcbiAgem9vbTogMTtcbiAgb3ZlcmZsb3c6IGhpZGRlbjtcbn1cblxuLm1lZGlhLWJvZHkge1xuICB3aWR0aDogMTAwMDBweDtcbn1cblxuLm1lZGlhLW9iamVjdCB7XG4gIGRpc3BsYXk6IGJsb2NrO1xuXG4gIC8vIEZpeCBjb2xsYXBzZSBpbiB3ZWJraXQgZnJvbSBtYXgtd2lkdGg6IDEwMCUgYW5kIGRpc3BsYXk6IHRhYmxlLWNlbGwuXG4gICYuaW1nLXRodW1ibmFpbCB7XG4gICAgbWF4LXdpZHRoOiBub25lO1xuICB9XG59XG5cbi5tZWRpYS1yaWdodCxcbi5tZWRpYSA+IC5wdWxsLXJpZ2h0IHtcbiAgcGFkZGluZy1sZWZ0OiAxMHB4O1xufVxuXG4ubWVkaWEtbGVmdCxcbi5tZWRpYSA+IC5wdWxsLWxlZnQge1xuICBwYWRkaW5nLXJpZ2h0OiAxMHB4O1xufVxuXG4ubWVkaWEtbGVmdCxcbi5tZWRpYS1yaWdodCxcbi5tZWRpYS1ib2R5IHtcbiAgZGlzcGxheTogdGFibGUtY2VsbDtcbiAgdmVydGljYWwtYWxpZ246IHRvcDtcbn1cblxuLm1lZGlhLW1pZGRsZSB7XG4gIHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7XG59XG5cbi5tZWRpYS1ib3R0b20ge1xuICB2ZXJ0aWNhbC1hbGlnbjogYm90dG9tO1xufVxuXG4vLyBSZXNldCBtYXJnaW5zIG9uIGhlYWRpbmdzIGZvciB0aWdodGVyIGRlZmF1bHQgc3BhY2luZ1xuLm1lZGlhLWhlYWRpbmcge1xuICBtYXJnaW4tdG9wOiAwO1xuICBtYXJnaW4tYm90dG9tOiA1cHg7XG59XG5cbi8vIE1lZGlhIGxpc3QgdmFyaWF0aW9uXG4vL1xuLy8gVW5kbyBkZWZhdWx0IHVsL29sIHN0eWxlc1xuLm1lZGlhLWxpc3Qge1xuICBwYWRkaW5nLWxlZnQ6IDA7XG4gIGxpc3Qtc3R5bGU6IG5vbmU7XG59XG4iLCIvL1xuLy8gTGlzdCBncm91cHNcbi8vIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG5cblxuLy8gQmFzZSBjbGFzc1xuLy9cbi8vIEVhc2lseSB1c2FibGUgb24gPHVsPiwgPG9sPiwgb3IgPGRpdj4uXG5cbi5saXN0LWdyb3VwIHtcbiAgLy8gTm8gbmVlZCB0byBzZXQgbGlzdC1zdHlsZTogbm9uZTsgc2luY2UgLmxpc3QtZ3JvdXAtaXRlbSBpcyBibG9jayBsZXZlbFxuICBtYXJnaW4tYm90dG9tOiAyMHB4O1xuICBwYWRkaW5nLWxlZnQ6IDA7IC8vIHJlc2V0IHBhZGRpbmcgYmVjYXVzZSB1bCBhbmQgb2xcbn1cblxuXG4vLyBJbmRpdmlkdWFsIGxpc3QgaXRlbXNcbi8vXG4vLyBVc2Ugb24gYGxpYHMgb3IgYGRpdmBzIHdpdGhpbiB0aGUgYC5saXN0LWdyb3VwYCBwYXJlbnQuXG5cbi5saXN0LWdyb3VwLWl0ZW0ge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBwYWRkaW5nOiAxMHB4IDE1cHg7XG4gIC8vIFBsYWNlIHRoZSBib3JkZXIgb24gdGhlIGxpc3QgaXRlbXMgYW5kIG5lZ2F0aXZlIG1hcmdpbiB1cCBmb3IgYmV0dGVyIHN0eWxpbmdcbiAgbWFyZ2luLWJvdHRvbTogLTFweDtcbiAgYmFja2dyb3VuZC1jb2xvcjogJGxpc3QtZ3JvdXAtYmc7XG4gIGJvcmRlcjogMXB4IHNvbGlkICRsaXN0LWdyb3VwLWJvcmRlcjtcblxuICAvLyBSb3VuZCB0aGUgZmlyc3QgYW5kIGxhc3QgaXRlbXNcbiAgJjpmaXJzdC1jaGlsZCB7XG4gICAgQGluY2x1ZGUgYm9yZGVyLXRvcC1yYWRpdXMoJGxpc3QtZ3JvdXAtYm9yZGVyLXJhZGl1cyk7XG4gIH1cbiAgJjpsYXN0LWNoaWxkIHtcbiAgICBtYXJnaW4tYm90dG9tOiAwO1xuICAgIEBpbmNsdWRlIGJvcmRlci1ib3R0b20tcmFkaXVzKCRsaXN0LWdyb3VwLWJvcmRlci1yYWRpdXMpO1xuICB9XG59XG5cblxuLy8gSW50ZXJhY3RpdmUgbGlzdCBpdGVtc1xuLy9cbi8vIFVzZSBhbmNob3Igb3IgYnV0dG9uIGVsZW1lbnRzIGluc3RlYWQgb2YgYGxpYHMgb3IgYGRpdmBzIHRvIGNyZWF0ZSBpbnRlcmFjdGl2ZSBpdGVtcy5cbi8vIEluY2x1ZGVzIGFuIGV4dHJhIGAuYWN0aXZlYCBtb2RpZmllciBjbGFzcyBmb3Igc2hvd2luZyBzZWxlY3RlZCBpdGVtcy5cblxuYS5saXN0LWdyb3VwLWl0ZW0sXG5idXR0b24ubGlzdC1ncm91cC1pdGVtIHtcbiAgY29sb3I6ICRsaXN0LWdyb3VwLWxpbmstY29sb3I7XG5cbiAgLmxpc3QtZ3JvdXAtaXRlbS1oZWFkaW5nIHtcbiAgICBjb2xvcjogJGxpc3QtZ3JvdXAtbGluay1oZWFkaW5nLWNvbG9yO1xuICB9XG5cbiAgLy8gSG92ZXIgc3RhdGVcbiAgJjpob3ZlcixcbiAgJjpmb2N1cyB7XG4gICAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICAgIGNvbG9yOiAkbGlzdC1ncm91cC1saW5rLWhvdmVyLWNvbG9yO1xuICAgIGJhY2tncm91bmQtY29sb3I6ICRsaXN0LWdyb3VwLWhvdmVyLWJnO1xuICB9XG59XG5cbmJ1dHRvbi5saXN0LWdyb3VwLWl0ZW0ge1xuICB3aWR0aDogMTAwJTtcbiAgdGV4dC1hbGlnbjogbGVmdDtcbn1cblxuLmxpc3QtZ3JvdXAtaXRlbSB7XG4gIC8vIERpc2FibGVkIHN0YXRlXG4gICYuZGlzYWJsZWQsXG4gICYuZGlzYWJsZWQ6aG92ZXIsXG4gICYuZGlzYWJsZWQ6Zm9jdXMge1xuICAgIGJhY2tncm91bmQtY29sb3I6ICRsaXN0LWdyb3VwLWRpc2FibGVkLWJnO1xuICAgIGNvbG9yOiAkbGlzdC1ncm91cC1kaXNhYmxlZC1jb2xvcjtcbiAgICBjdXJzb3I6ICRjdXJzb3ItZGlzYWJsZWQ7XG5cbiAgICAvLyBGb3JjZSBjb2xvciB0byBpbmhlcml0IGZvciBjdXN0b20gY29udGVudFxuICAgIC5saXN0LWdyb3VwLWl0ZW0taGVhZGluZyB7XG4gICAgICBjb2xvcjogaW5oZXJpdDtcbiAgICB9XG4gICAgLmxpc3QtZ3JvdXAtaXRlbS10ZXh0IHtcbiAgICAgIGNvbG9yOiAkbGlzdC1ncm91cC1kaXNhYmxlZC10ZXh0LWNvbG9yO1xuICAgIH1cbiAgfVxuXG4gIC8vIEFjdGl2ZSBjbGFzcyBvbiBpdGVtIGl0c2VsZiwgbm90IHBhcmVudFxuICAmLmFjdGl2ZSxcbiAgJi5hY3RpdmU6aG92ZXIsXG4gICYuYWN0aXZlOmZvY3VzIHtcbiAgICB6LWluZGV4OiAyOyAvLyBQbGFjZSBhY3RpdmUgaXRlbXMgYWJvdmUgdGhlaXIgc2libGluZ3MgZm9yIHByb3BlciBib3JkZXIgc3R5bGluZ1xuICAgIGNvbG9yOiAkbGlzdC1ncm91cC1hY3RpdmUtY29sb3I7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogJGxpc3QtZ3JvdXAtYWN0aXZlLWJnO1xuICAgIGJvcmRlci1jb2xvcjogJGxpc3QtZ3JvdXAtYWN0aXZlLWJvcmRlcjtcblxuICAgIC8vIEZvcmNlIGNvbG9yIHRvIGluaGVyaXQgZm9yIGN1c3RvbSBjb250ZW50XG4gICAgLmxpc3QtZ3JvdXAtaXRlbS1oZWFkaW5nLFxuICAgIC5saXN0LWdyb3VwLWl0ZW0taGVhZGluZyA+IHNtYWxsLFxuICAgIC5saXN0LWdyb3VwLWl0ZW0taGVhZGluZyA+IC5zbWFsbCB7XG4gICAgICBjb2xvcjogaW5oZXJpdDtcbiAgICB9XG4gICAgLmxpc3QtZ3JvdXAtaXRlbS10ZXh0IHtcbiAgICAgIGNvbG9yOiAkbGlzdC1ncm91cC1hY3RpdmUtdGV4dC1jb2xvcjtcbiAgICB9XG4gIH1cbn1cblxuXG4vLyBDb250ZXh0dWFsIHZhcmlhbnRzXG4vL1xuLy8gQWRkIG1vZGlmaWVyIGNsYXNzZXMgdG8gY2hhbmdlIHRleHQgYW5kIGJhY2tncm91bmQgY29sb3Igb24gaW5kaXZpZHVhbCBpdGVtcy5cbi8vIE9yZ2FuaXphdGlvbmFsbHksIHRoaXMgbXVzdCBjb21lIGFmdGVyIHRoZSBgOmhvdmVyYCBzdGF0ZXMuXG5cbkBpbmNsdWRlIGxpc3QtZ3JvdXAtaXRlbS12YXJpYW50KHN1Y2Nlc3MsICRzdGF0ZS1zdWNjZXNzLWJnLCAkc3RhdGUtc3VjY2Vzcy10ZXh0KTtcbkBpbmNsdWRlIGxpc3QtZ3JvdXAtaXRlbS12YXJpYW50KGluZm8sICRzdGF0ZS1pbmZvLWJnLCAkc3RhdGUtaW5mby10ZXh0KTtcbkBpbmNsdWRlIGxpc3QtZ3JvdXAtaXRlbS12YXJpYW50KHdhcm5pbmcsICRzdGF0ZS13YXJuaW5nLWJnLCAkc3RhdGUtd2FybmluZy10ZXh0KTtcbkBpbmNsdWRlIGxpc3QtZ3JvdXAtaXRlbS12YXJpYW50KGRhbmdlciwgJHN0YXRlLWRhbmdlci1iZywgJHN0YXRlLWRhbmdlci10ZXh0KTtcblxuXG4vLyBDdXN0b20gY29udGVudCBvcHRpb25zXG4vL1xuLy8gRXh0cmEgY2xhc3NlcyBmb3IgY3JlYXRpbmcgd2VsbC1mb3JtYXR0ZWQgY29udGVudCB3aXRoaW4gYC5saXN0LWdyb3VwLWl0ZW1gcy5cblxuLmxpc3QtZ3JvdXAtaXRlbS1oZWFkaW5nIHtcbiAgbWFyZ2luLXRvcDogMDtcbiAgbWFyZ2luLWJvdHRvbTogNXB4O1xufVxuLmxpc3QtZ3JvdXAtaXRlbS10ZXh0IHtcbiAgbWFyZ2luLWJvdHRvbTogMDtcbiAgbGluZS1oZWlnaHQ6IDEuMztcbn1cbiIsIi8vIExpc3QgR3JvdXBzXG5cbkBtaXhpbiBsaXN0LWdyb3VwLWl0ZW0tdmFyaWFudCgkc3RhdGUsICRiYWNrZ3JvdW5kLCAkY29sb3IpIHtcbiAgLmxpc3QtZ3JvdXAtaXRlbS0jeyRzdGF0ZX0ge1xuICAgIGNvbG9yOiAkY29sb3I7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogJGJhY2tncm91bmQ7XG5cbiAgICAvLyBbY29udmVydGVyXSBleHRyYWN0ZWQgYSYsIGJ1dHRvbiYgdG8gYS5saXN0LWdyb3VwLWl0ZW0tI3skc3RhdGV9LCBidXR0b24ubGlzdC1ncm91cC1pdGVtLSN7JHN0YXRlfVxuICB9XG5cbiAgYS5saXN0LWdyb3VwLWl0ZW0tI3skc3RhdGV9LFxuICBidXR0b24ubGlzdC1ncm91cC1pdGVtLSN7JHN0YXRlfSB7XG4gICAgY29sb3I6ICRjb2xvcjtcblxuICAgIC5saXN0LWdyb3VwLWl0ZW0taGVhZGluZyB7XG4gICAgICBjb2xvcjogaW5oZXJpdDtcbiAgICB9XG5cbiAgICAmOmhvdmVyLFxuICAgICY6Zm9jdXMge1xuICAgICAgY29sb3I6ICRjb2xvcjtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6IGRhcmtlbigkYmFja2dyb3VuZCwgNSUpO1xuICAgIH1cbiAgICAmLmFjdGl2ZSxcbiAgICAmLmFjdGl2ZTpob3ZlcixcbiAgICAmLmFjdGl2ZTpmb2N1cyB7XG4gICAgICBjb2xvcjogI2ZmZjtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6ICRjb2xvcjtcbiAgICAgIGJvcmRlci1jb2xvcjogJGNvbG9yO1xuICAgIH1cbiAgfVxufVxuIiwiLy9cbi8vIFBhbmVsc1xuLy8gLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cblxuXG4vLyBCYXNlIGNsYXNzXG4ucGFuZWwge1xuICBtYXJnaW4tYm90dG9tOiAkbGluZS1oZWlnaHQtY29tcHV0ZWQ7XG4gIGJhY2tncm91bmQtY29sb3I6ICRwYW5lbC1iZztcbiAgYm9yZGVyOiAxcHggc29saWQgdHJhbnNwYXJlbnQ7XG4gIGJvcmRlci1yYWRpdXM6ICRwYW5lbC1ib3JkZXItcmFkaXVzO1xuICBAaW5jbHVkZSBib3gtc2hhZG93KDAgMXB4IDFweCByZ2JhKDAsMCwwLC4wNSkpO1xufVxuXG4vLyBQYW5lbCBjb250ZW50c1xuLnBhbmVsLWJvZHkge1xuICBwYWRkaW5nOiAkcGFuZWwtYm9keS1wYWRkaW5nO1xuICBAaW5jbHVkZSBjbGVhcmZpeDtcbn1cblxuLy8gT3B0aW9uYWwgaGVhZGluZ1xuLnBhbmVsLWhlYWRpbmcge1xuICBwYWRkaW5nOiAkcGFuZWwtaGVhZGluZy1wYWRkaW5nO1xuICBib3JkZXItYm90dG9tOiAxcHggc29saWQgdHJhbnNwYXJlbnQ7XG4gIEBpbmNsdWRlIGJvcmRlci10b3AtcmFkaXVzKCgkcGFuZWwtYm9yZGVyLXJhZGl1cyAtIDEpKTtcblxuICA+IC5kcm9wZG93biAuZHJvcGRvd24tdG9nZ2xlIHtcbiAgICBjb2xvcjogaW5oZXJpdDtcbiAgfVxufVxuXG4vLyBXaXRoaW4gaGVhZGluZywgc3RyaXAgYW55IGBoKmAgdGFnIG9mIGl0cyBkZWZhdWx0IG1hcmdpbnMgZm9yIHNwYWNpbmcuXG4ucGFuZWwtdGl0bGUge1xuICBtYXJnaW4tdG9wOiAwO1xuICBtYXJnaW4tYm90dG9tOiAwO1xuICBmb250LXNpemU6IGNlaWwoKCRmb250LXNpemUtYmFzZSAqIDEuMTI1KSk7XG4gIGNvbG9yOiBpbmhlcml0O1xuXG4gID4gYSxcbiAgPiBzbWFsbCxcbiAgPiAuc21hbGwsXG4gID4gc21hbGwgPiBhLFxuICA+IC5zbWFsbCA+IGEge1xuICAgIGNvbG9yOiBpbmhlcml0O1xuICB9XG59XG5cbi8vIE9wdGlvbmFsIGZvb3RlciAoc3RheXMgZ3JheSBpbiBldmVyeSBtb2RpZmllciBjbGFzcylcbi5wYW5lbC1mb290ZXIge1xuICBwYWRkaW5nOiAkcGFuZWwtZm9vdGVyLXBhZGRpbmc7XG4gIGJhY2tncm91bmQtY29sb3I6ICRwYW5lbC1mb290ZXItYmc7XG4gIGJvcmRlci10b3A6IDFweCBzb2xpZCAkcGFuZWwtaW5uZXItYm9yZGVyO1xuICBAaW5jbHVkZSBib3JkZXItYm90dG9tLXJhZGl1cygoJHBhbmVsLWJvcmRlci1yYWRpdXMgLSAxKSk7XG59XG5cblxuLy8gTGlzdCBncm91cHMgaW4gcGFuZWxzXG4vL1xuLy8gQnkgZGVmYXVsdCwgc3BhY2Ugb3V0IGxpc3QgZ3JvdXAgY29udGVudCBmcm9tIHBhbmVsIGhlYWRpbmdzIHRvIGFjY291bnQgZm9yXG4vLyBhbnkga2luZCBvZiBjdXN0b20gY29udGVudCBiZXR3ZWVuIHRoZSB0d28uXG5cbi5wYW5lbCB7XG4gID4gLmxpc3QtZ3JvdXAsXG4gID4gLnBhbmVsLWNvbGxhcHNlID4gLmxpc3QtZ3JvdXAge1xuICAgIG1hcmdpbi1ib3R0b206IDA7XG5cbiAgICAubGlzdC1ncm91cC1pdGVtIHtcbiAgICAgIGJvcmRlci13aWR0aDogMXB4IDA7XG4gICAgICBib3JkZXItcmFkaXVzOiAwO1xuICAgIH1cblxuICAgIC8vIEFkZCBib3JkZXIgdG9wIHJhZGl1cyBmb3IgZmlyc3Qgb25lXG4gICAgJjpmaXJzdC1jaGlsZCB7XG4gICAgICAubGlzdC1ncm91cC1pdGVtOmZpcnN0LWNoaWxkIHtcbiAgICAgICAgYm9yZGVyLXRvcDogMDtcbiAgICAgICAgQGluY2x1ZGUgYm9yZGVyLXRvcC1yYWRpdXMoKCRwYW5lbC1ib3JkZXItcmFkaXVzIC0gMSkpO1xuICAgICAgfVxuICAgIH1cblxuICAgIC8vIEFkZCBib3JkZXIgYm90dG9tIHJhZGl1cyBmb3IgbGFzdCBvbmVcbiAgICAmOmxhc3QtY2hpbGQge1xuICAgICAgLmxpc3QtZ3JvdXAtaXRlbTpsYXN0LWNoaWxkIHtcbiAgICAgICAgYm9yZGVyLWJvdHRvbTogMDtcbiAgICAgICAgQGluY2x1ZGUgYm9yZGVyLWJvdHRvbS1yYWRpdXMoKCRwYW5lbC1ib3JkZXItcmFkaXVzIC0gMSkpO1xuICAgICAgfVxuICAgIH1cbiAgfVxuICA+IC5wYW5lbC1oZWFkaW5nICsgLnBhbmVsLWNvbGxhcHNlID4gLmxpc3QtZ3JvdXAge1xuICAgIC5saXN0LWdyb3VwLWl0ZW06Zmlyc3QtY2hpbGQge1xuICAgICAgQGluY2x1ZGUgYm9yZGVyLXRvcC1yYWRpdXMoMCk7XG4gICAgfVxuICB9XG59XG4vLyBDb2xsYXBzZSBzcGFjZSBiZXR3ZWVuIHdoZW4gdGhlcmUncyBubyBhZGRpdGlvbmFsIGNvbnRlbnQuXG4ucGFuZWwtaGVhZGluZyArIC5saXN0LWdyb3VwIHtcbiAgLmxpc3QtZ3JvdXAtaXRlbTpmaXJzdC1jaGlsZCB7XG4gICAgYm9yZGVyLXRvcC13aWR0aDogMDtcbiAgfVxufVxuLmxpc3QtZ3JvdXAgKyAucGFuZWwtZm9vdGVyIHtcbiAgYm9yZGVyLXRvcC13aWR0aDogMDtcbn1cblxuLy8gVGFibGVzIGluIHBhbmVsc1xuLy9cbi8vIFBsYWNlIGEgbm9uLWJvcmRlcmVkIGAudGFibGVgIHdpdGhpbiBhIHBhbmVsIChub3Qgd2l0aGluIGEgYC5wYW5lbC1ib2R5YCkgYW5kXG4vLyB3YXRjaCBpdCBnbyBmdWxsIHdpZHRoLlxuXG4ucGFuZWwge1xuICA+IC50YWJsZSxcbiAgPiAudGFibGUtcmVzcG9uc2l2ZSA+IC50YWJsZSxcbiAgPiAucGFuZWwtY29sbGFwc2UgPiAudGFibGUge1xuICAgIG1hcmdpbi1ib3R0b206IDA7XG5cbiAgICBjYXB0aW9uIHtcbiAgICAgIHBhZGRpbmctbGVmdDogJHBhbmVsLWJvZHktcGFkZGluZztcbiAgICAgIHBhZGRpbmctcmlnaHQ6ICRwYW5lbC1ib2R5LXBhZGRpbmc7XG4gICAgfVxuICB9XG4gIC8vIEFkZCBib3JkZXIgdG9wIHJhZGl1cyBmb3IgZmlyc3Qgb25lXG4gID4gLnRhYmxlOmZpcnN0LWNoaWxkLFxuICA+IC50YWJsZS1yZXNwb25zaXZlOmZpcnN0LWNoaWxkID4gLnRhYmxlOmZpcnN0LWNoaWxkIHtcbiAgICBAaW5jbHVkZSBib3JkZXItdG9wLXJhZGl1cygoJHBhbmVsLWJvcmRlci1yYWRpdXMgLSAxKSk7XG5cbiAgICA+IHRoZWFkOmZpcnN0LWNoaWxkLFxuICAgID4gdGJvZHk6Zmlyc3QtY2hpbGQge1xuICAgICAgPiB0cjpmaXJzdC1jaGlsZCB7XG4gICAgICAgIGJvcmRlci10b3AtbGVmdC1yYWRpdXM6ICgkcGFuZWwtYm9yZGVyLXJhZGl1cyAtIDEpO1xuICAgICAgICBib3JkZXItdG9wLXJpZ2h0LXJhZGl1czogKCRwYW5lbC1ib3JkZXItcmFkaXVzIC0gMSk7XG5cbiAgICAgICAgdGQ6Zmlyc3QtY2hpbGQsXG4gICAgICAgIHRoOmZpcnN0LWNoaWxkIHtcbiAgICAgICAgICBib3JkZXItdG9wLWxlZnQtcmFkaXVzOiAoJHBhbmVsLWJvcmRlci1yYWRpdXMgLSAxKTtcbiAgICAgICAgfVxuICAgICAgICB0ZDpsYXN0LWNoaWxkLFxuICAgICAgICB0aDpsYXN0LWNoaWxkIHtcbiAgICAgICAgICBib3JkZXItdG9wLXJpZ2h0LXJhZGl1czogKCRwYW5lbC1ib3JkZXItcmFkaXVzIC0gMSk7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gIH1cbiAgLy8gQWRkIGJvcmRlciBib3R0b20gcmFkaXVzIGZvciBsYXN0IG9uZVxuICA+IC50YWJsZTpsYXN0LWNoaWxkLFxuICA+IC50YWJsZS1yZXNwb25zaXZlOmxhc3QtY2hpbGQgPiAudGFibGU6bGFzdC1jaGlsZCB7XG4gICAgQGluY2x1ZGUgYm9yZGVyLWJvdHRvbS1yYWRpdXMoKCRwYW5lbC1ib3JkZXItcmFkaXVzIC0gMSkpO1xuXG4gICAgPiB0Ym9keTpsYXN0LWNoaWxkLFxuICAgID4gdGZvb3Q6bGFzdC1jaGlsZCB7XG4gICAgICA+IHRyOmxhc3QtY2hpbGQge1xuICAgICAgICBib3JkZXItYm90dG9tLWxlZnQtcmFkaXVzOiAoJHBhbmVsLWJvcmRlci1yYWRpdXMgLSAxKTtcbiAgICAgICAgYm9yZGVyLWJvdHRvbS1yaWdodC1yYWRpdXM6ICgkcGFuZWwtYm9yZGVyLXJhZGl1cyAtIDEpO1xuXG4gICAgICAgIHRkOmZpcnN0LWNoaWxkLFxuICAgICAgICB0aDpmaXJzdC1jaGlsZCB7XG4gICAgICAgICAgYm9yZGVyLWJvdHRvbS1sZWZ0LXJhZGl1czogKCRwYW5lbC1ib3JkZXItcmFkaXVzIC0gMSk7XG4gICAgICAgIH1cbiAgICAgICAgdGQ6bGFzdC1jaGlsZCxcbiAgICAgICAgdGg6bGFzdC1jaGlsZCB7XG4gICAgICAgICAgYm9yZGVyLWJvdHRvbS1yaWdodC1yYWRpdXM6ICgkcGFuZWwtYm9yZGVyLXJhZGl1cyAtIDEpO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICB9XG4gID4gLnBhbmVsLWJvZHkgKyAudGFibGUsXG4gID4gLnBhbmVsLWJvZHkgKyAudGFibGUtcmVzcG9uc2l2ZSxcbiAgPiAudGFibGUgKyAucGFuZWwtYm9keSxcbiAgPiAudGFibGUtcmVzcG9uc2l2ZSArIC5wYW5lbC1ib2R5IHtcbiAgICBib3JkZXItdG9wOiAxcHggc29saWQgJHRhYmxlLWJvcmRlci1jb2xvcjtcbiAgfVxuICA+IC50YWJsZSA+IHRib2R5OmZpcnN0LWNoaWxkID4gdHI6Zmlyc3QtY2hpbGQgdGgsXG4gID4gLnRhYmxlID4gdGJvZHk6Zmlyc3QtY2hpbGQgPiB0cjpmaXJzdC1jaGlsZCB0ZCB7XG4gICAgYm9yZGVyLXRvcDogMDtcbiAgfVxuICA+IC50YWJsZS1ib3JkZXJlZCxcbiAgPiAudGFibGUtcmVzcG9uc2l2ZSA+IC50YWJsZS1ib3JkZXJlZCB7XG4gICAgYm9yZGVyOiAwO1xuICAgID4gdGhlYWQsXG4gICAgPiB0Ym9keSxcbiAgICA+IHRmb290IHtcbiAgICAgID4gdHIge1xuICAgICAgICA+IHRoOmZpcnN0LWNoaWxkLFxuICAgICAgICA+IHRkOmZpcnN0LWNoaWxkIHtcbiAgICAgICAgICBib3JkZXItbGVmdDogMDtcbiAgICAgICAgfVxuICAgICAgICA+IHRoOmxhc3QtY2hpbGQsXG4gICAgICAgID4gdGQ6bGFzdC1jaGlsZCB7XG4gICAgICAgICAgYm9yZGVyLXJpZ2h0OiAwO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICAgID4gdGhlYWQsXG4gICAgPiB0Ym9keSB7XG4gICAgICA+IHRyOmZpcnN0LWNoaWxkIHtcbiAgICAgICAgPiB0ZCxcbiAgICAgICAgPiB0aCB7XG4gICAgICAgICAgYm9yZGVyLWJvdHRvbTogMDtcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgICA+IHRib2R5LFxuICAgID4gdGZvb3Qge1xuICAgICAgPiB0cjpsYXN0LWNoaWxkIHtcbiAgICAgICAgPiB0ZCxcbiAgICAgICAgPiB0aCB7XG4gICAgICAgICAgYm9yZGVyLWJvdHRvbTogMDtcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgfVxuICA+IC50YWJsZS1yZXNwb25zaXZlIHtcbiAgICBib3JkZXI6IDA7XG4gICAgbWFyZ2luLWJvdHRvbTogMDtcbiAgfVxufVxuXG5cbi8vIENvbGxhcHNpYmxlIHBhbmVscyAoYWthLCBhY2NvcmRpb24pXG4vL1xuLy8gV3JhcCBhIHNlcmllcyBvZiBwYW5lbHMgaW4gYC5wYW5lbC1ncm91cGAgdG8gdHVybiB0aGVtIGludG8gYW4gYWNjb3JkaW9uIHdpdGhcbi8vIHRoZSBoZWxwIG9mIG91ciBjb2xsYXBzZSBKYXZhU2NyaXB0IHBsdWdpbi5cblxuLnBhbmVsLWdyb3VwIHtcbiAgbWFyZ2luLWJvdHRvbTogJGxpbmUtaGVpZ2h0LWNvbXB1dGVkO1xuXG4gIC8vIFRpZ2h0ZW4gdXAgbWFyZ2luIHNvIGl0J3Mgb25seSBiZXR3ZWVuIHBhbmVsc1xuICAucGFuZWwge1xuICAgIG1hcmdpbi1ib3R0b206IDA7XG4gICAgYm9yZGVyLXJhZGl1czogJHBhbmVsLWJvcmRlci1yYWRpdXM7XG5cbiAgICArIC5wYW5lbCB7XG4gICAgICBtYXJnaW4tdG9wOiA1cHg7XG4gICAgfVxuICB9XG5cbiAgLnBhbmVsLWhlYWRpbmcge1xuICAgIGJvcmRlci1ib3R0b206IDA7XG5cbiAgICArIC5wYW5lbC1jb2xsYXBzZSA+IC5wYW5lbC1ib2R5LFxuICAgICsgLnBhbmVsLWNvbGxhcHNlID4gLmxpc3QtZ3JvdXAge1xuICAgICAgYm9yZGVyLXRvcDogMXB4IHNvbGlkICRwYW5lbC1pbm5lci1ib3JkZXI7XG4gICAgfVxuICB9XG5cbiAgLnBhbmVsLWZvb3RlciB7XG4gICAgYm9yZGVyLXRvcDogMDtcbiAgICArIC5wYW5lbC1jb2xsYXBzZSAucGFuZWwtYm9keSB7XG4gICAgICBib3JkZXItYm90dG9tOiAxcHggc29saWQgJHBhbmVsLWlubmVyLWJvcmRlcjtcbiAgICB9XG4gIH1cbn1cblxuXG4vLyBDb250ZXh0dWFsIHZhcmlhdGlvbnNcbi5wYW5lbC1kZWZhdWx0IHtcbiAgQGluY2x1ZGUgcGFuZWwtdmFyaWFudCgkcGFuZWwtZGVmYXVsdC1ib3JkZXIsICRwYW5lbC1kZWZhdWx0LXRleHQsICRwYW5lbC1kZWZhdWx0LWhlYWRpbmctYmcsICRwYW5lbC1kZWZhdWx0LWJvcmRlcik7XG59XG4ucGFuZWwtcHJpbWFyeSB7XG4gIEBpbmNsdWRlIHBhbmVsLXZhcmlhbnQoJHBhbmVsLXByaW1hcnktYm9yZGVyLCAkcGFuZWwtcHJpbWFyeS10ZXh0LCAkcGFuZWwtcHJpbWFyeS1oZWFkaW5nLWJnLCAkcGFuZWwtcHJpbWFyeS1ib3JkZXIpO1xufVxuLnBhbmVsLXN1Y2Nlc3Mge1xuICBAaW5jbHVkZSBwYW5lbC12YXJpYW50KCRwYW5lbC1zdWNjZXNzLWJvcmRlciwgJHBhbmVsLXN1Y2Nlc3MtdGV4dCwgJHBhbmVsLXN1Y2Nlc3MtaGVhZGluZy1iZywgJHBhbmVsLXN1Y2Nlc3MtYm9yZGVyKTtcbn1cbi5wYW5lbC1pbmZvIHtcbiAgQGluY2x1ZGUgcGFuZWwtdmFyaWFudCgkcGFuZWwtaW5mby1ib3JkZXIsICRwYW5lbC1pbmZvLXRleHQsICRwYW5lbC1pbmZvLWhlYWRpbmctYmcsICRwYW5lbC1pbmZvLWJvcmRlcik7XG59XG4ucGFuZWwtd2FybmluZyB7XG4gIEBpbmNsdWRlIHBhbmVsLXZhcmlhbnQoJHBhbmVsLXdhcm5pbmctYm9yZGVyLCAkcGFuZWwtd2FybmluZy10ZXh0LCAkcGFuZWwtd2FybmluZy1oZWFkaW5nLWJnLCAkcGFuZWwtd2FybmluZy1ib3JkZXIpO1xufVxuLnBhbmVsLWRhbmdlciB7XG4gIEBpbmNsdWRlIHBhbmVsLXZhcmlhbnQoJHBhbmVsLWRhbmdlci1ib3JkZXIsICRwYW5lbC1kYW5nZXItdGV4dCwgJHBhbmVsLWRhbmdlci1oZWFkaW5nLWJnLCAkcGFuZWwtZGFuZ2VyLWJvcmRlcik7XG59XG4iLCIvLyBQYW5lbHNcblxuQG1peGluIHBhbmVsLXZhcmlhbnQoJGJvcmRlciwgJGhlYWRpbmctdGV4dC1jb2xvciwgJGhlYWRpbmctYmctY29sb3IsICRoZWFkaW5nLWJvcmRlcikge1xuICBib3JkZXItY29sb3I6ICRib3JkZXI7XG5cbiAgJiA+IC5wYW5lbC1oZWFkaW5nIHtcbiAgICBjb2xvcjogJGhlYWRpbmctdGV4dC1jb2xvcjtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkaGVhZGluZy1iZy1jb2xvcjtcbiAgICBib3JkZXItY29sb3I6ICRoZWFkaW5nLWJvcmRlcjtcblxuICAgICsgLnBhbmVsLWNvbGxhcHNlID4gLnBhbmVsLWJvZHkge1xuICAgICAgYm9yZGVyLXRvcC1jb2xvcjogJGJvcmRlcjtcbiAgICB9XG4gICAgLmJhZGdlIHtcbiAgICAgIGNvbG9yOiAkaGVhZGluZy1iZy1jb2xvcjtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6ICRoZWFkaW5nLXRleHQtY29sb3I7XG4gICAgfVxuICB9XG4gICYgPiAucGFuZWwtZm9vdGVyIHtcbiAgICArIC5wYW5lbC1jb2xsYXBzZSA+IC5wYW5lbC1ib2R5IHtcbiAgICAgIGJvcmRlci1ib3R0b20tY29sb3I6ICRib3JkZXI7XG4gICAgfVxuICB9XG59XG4iLCIvLyBFbWJlZHMgcmVzcG9uc2l2ZVxuLy9cbi8vIENyZWRpdDogTmljb2xhcyBHYWxsYWdoZXIgYW5kIFNVSVQgQ1NTLlxuXG4uZW1iZWQtcmVzcG9uc2l2ZSB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgZGlzcGxheTogYmxvY2s7XG4gIGhlaWdodDogMDtcbiAgcGFkZGluZzogMDtcbiAgb3ZlcmZsb3c6IGhpZGRlbjtcblxuICAuZW1iZWQtcmVzcG9uc2l2ZS1pdGVtLFxuICBpZnJhbWUsXG4gIGVtYmVkLFxuICBvYmplY3QsXG4gIHZpZGVvIHtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgdG9wOiAwO1xuICAgIGxlZnQ6IDA7XG4gICAgYm90dG9tOiAwO1xuICAgIGhlaWdodDogMTAwJTtcbiAgICB3aWR0aDogMTAwJTtcbiAgICBib3JkZXI6IDA7XG4gIH1cbn1cblxuLy8gTW9kaWZpZXIgY2xhc3MgZm9yIDE2OjkgYXNwZWN0IHJhdGlvXG4uZW1iZWQtcmVzcG9uc2l2ZS0xNmJ5OSB7XG4gIHBhZGRpbmctYm90dG9tOiA1Ni4yNSU7XG59XG5cbi8vIE1vZGlmaWVyIGNsYXNzIGZvciA0OjMgYXNwZWN0IHJhdGlvXG4uZW1iZWQtcmVzcG9uc2l2ZS00YnkzIHtcbiAgcGFkZGluZy1ib3R0b206IDc1JTtcbn1cbiIsIi8vXG4vLyBXZWxsc1xuLy8gLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cblxuXG4vLyBCYXNlIGNsYXNzXG4ud2VsbCB7XG4gIG1pbi1oZWlnaHQ6IDIwcHg7XG4gIHBhZGRpbmc6IDE5cHg7XG4gIG1hcmdpbi1ib3R0b206IDIwcHg7XG4gIGJhY2tncm91bmQtY29sb3I6ICR3ZWxsLWJnO1xuICBib3JkZXI6IDFweCBzb2xpZCAkd2VsbC1ib3JkZXI7XG4gIGJvcmRlci1yYWRpdXM6ICRib3JkZXItcmFkaXVzLWJhc2U7XG4gIEBpbmNsdWRlIGJveC1zaGFkb3coaW5zZXQgMCAxcHggMXB4IHJnYmEoMCwwLDAsLjA1KSk7XG4gIGJsb2NrcXVvdGUge1xuICAgIGJvcmRlci1jb2xvcjogI2RkZDtcbiAgICBib3JkZXItY29sb3I6IHJnYmEoMCwwLDAsLjE1KTtcbiAgfVxufVxuXG4vLyBTaXplc1xuLndlbGwtbGcge1xuICBwYWRkaW5nOiAyNHB4O1xuICBib3JkZXItcmFkaXVzOiAkYm9yZGVyLXJhZGl1cy1sYXJnZTtcbn1cbi53ZWxsLXNtIHtcbiAgcGFkZGluZzogOXB4O1xuICBib3JkZXItcmFkaXVzOiAkYm9yZGVyLXJhZGl1cy1zbWFsbDtcbn1cbiIsIi8vXG4vLyBDbG9zZSBpY29uc1xuLy8gLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cblxuXG4uY2xvc2Uge1xuICBmbG9hdDogcmlnaHQ7XG4gIGZvbnQtc2l6ZTogKCRmb250LXNpemUtYmFzZSAqIDEuNSk7XG4gIGZvbnQtd2VpZ2h0OiAkY2xvc2UtZm9udC13ZWlnaHQ7XG4gIGxpbmUtaGVpZ2h0OiAxO1xuICBjb2xvcjogJGNsb3NlLWNvbG9yO1xuICB0ZXh0LXNoYWRvdzogJGNsb3NlLXRleHQtc2hhZG93O1xuICBAaW5jbHVkZSBvcGFjaXR5KC4yKTtcblxuICAmOmhvdmVyLFxuICAmOmZvY3VzIHtcbiAgICBjb2xvcjogJGNsb3NlLWNvbG9yO1xuICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgICBjdXJzb3I6IHBvaW50ZXI7XG4gICAgQGluY2x1ZGUgb3BhY2l0eSguNSk7XG4gIH1cblxuICAvLyBbY29udmVydGVyXSBleHRyYWN0ZWQgYnV0dG9uJiB0byBidXR0b24uY2xvc2Vcbn1cblxuLy8gQWRkaXRpb25hbCBwcm9wZXJ0aWVzIGZvciBidXR0b24gdmVyc2lvblxuLy8gaU9TIHJlcXVpcmVzIHRoZSBidXR0b24gZWxlbWVudCBpbnN0ZWFkIG9mIGFuIGFuY2hvciB0YWcuXG4vLyBJZiB5b3Ugd2FudCB0aGUgYW5jaG9yIHZlcnNpb24sIGl0IHJlcXVpcmVzIGBocmVmPVwiI1wiYC5cbi8vIFNlZSBodHRwczovL2RldmVsb3Blci5tb3ppbGxhLm9yZy9lbi1VUy9kb2NzL1dlYi9FdmVudHMvY2xpY2sjU2FmYXJpX01vYmlsZVxuYnV0dG9uLmNsb3NlIHtcbiAgcGFkZGluZzogMDtcbiAgY3Vyc29yOiBwb2ludGVyO1xuICBiYWNrZ3JvdW5kOiB0cmFuc3BhcmVudDtcbiAgYm9yZGVyOiAwO1xuICAtd2Via2l0LWFwcGVhcmFuY2U6IG5vbmU7XG59XG4iLCIvL1xuLy8gTW9kYWxzXG4vLyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuXG4vLyAubW9kYWwtb3BlbiAgICAgIC0gYm9keSBjbGFzcyBmb3Iga2lsbGluZyB0aGUgc2Nyb2xsXG4vLyAubW9kYWwgICAgICAgICAgIC0gY29udGFpbmVyIHRvIHNjcm9sbCB3aXRoaW5cbi8vIC5tb2RhbC1kaWFsb2cgICAgLSBwb3NpdGlvbmluZyBzaGVsbCBmb3IgdGhlIGFjdHVhbCBtb2RhbFxuLy8gLm1vZGFsLWNvbnRlbnQgICAtIGFjdHVhbCBtb2RhbCB3LyBiZyBhbmQgY29ybmVycyBhbmQgc2hpdFxuXG4vLyBLaWxsIHRoZSBzY3JvbGwgb24gdGhlIGJvZHlcbi5tb2RhbC1vcGVuIHtcbiAgb3ZlcmZsb3c6IGhpZGRlbjtcbn1cblxuLy8gQ29udGFpbmVyIHRoYXQgdGhlIG1vZGFsIHNjcm9sbHMgd2l0aGluXG4ubW9kYWwge1xuICBkaXNwbGF5OiBub25lO1xuICBvdmVyZmxvdzogaGlkZGVuO1xuICBwb3NpdGlvbjogZml4ZWQ7XG4gIHRvcDogMDtcbiAgcmlnaHQ6IDA7XG4gIGJvdHRvbTogMDtcbiAgbGVmdDogMDtcbiAgei1pbmRleDogJHppbmRleC1tb2RhbDtcbiAgLXdlYmtpdC1vdmVyZmxvdy1zY3JvbGxpbmc6IHRvdWNoO1xuXG4gIC8vIFByZXZlbnQgQ2hyb21lIG9uIFdpbmRvd3MgZnJvbSBhZGRpbmcgYSBmb2N1cyBvdXRsaW5lLiBGb3IgZGV0YWlscywgc2VlXG4gIC8vIGh0dHBzOi8vZ2l0aHViLmNvbS90d2JzL2Jvb3RzdHJhcC9wdWxsLzEwOTUxLlxuICBvdXRsaW5lOiAwO1xuXG4gIC8vIFdoZW4gZmFkaW5nIGluIHRoZSBtb2RhbCwgYW5pbWF0ZSBpdCB0byBzbGlkZSBkb3duXG4gICYuZmFkZSAubW9kYWwtZGlhbG9nIHtcbiAgICBAaW5jbHVkZSB0cmFuc2xhdGUoMCwgLTI1JSk7XG4gICAgQGluY2x1ZGUgdHJhbnNpdGlvbi10cmFuc2Zvcm0oMC4zcyBlYXNlLW91dCk7XG4gIH1cbiAgJi5pbiAubW9kYWwtZGlhbG9nIHsgQGluY2x1ZGUgdHJhbnNsYXRlKDAsIDApIH1cbn1cbi5tb2RhbC1vcGVuIC5tb2RhbCB7XG4gIG92ZXJmbG93LXg6IGhpZGRlbjtcbiAgb3ZlcmZsb3cteTogYXV0bztcbn1cblxuLy8gU2hlbGwgZGl2IHRvIHBvc2l0aW9uIHRoZSBtb2RhbCB3aXRoIGJvdHRvbSBwYWRkaW5nXG4ubW9kYWwtZGlhbG9nIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICB3aWR0aDogYXV0bztcbiAgbWFyZ2luOiAxMHB4O1xufVxuXG4vLyBBY3R1YWwgbW9kYWxcbi5tb2RhbC1jb250ZW50IHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAkbW9kYWwtY29udGVudC1iZztcbiAgYm9yZGVyOiAxcHggc29saWQgJG1vZGFsLWNvbnRlbnQtZmFsbGJhY2stYm9yZGVyLWNvbG9yOyAvL29sZCBicm93c2VycyBmYWxsYmFjayAoaWU4IGV0YylcbiAgYm9yZGVyOiAxcHggc29saWQgJG1vZGFsLWNvbnRlbnQtYm9yZGVyLWNvbG9yO1xuICBib3JkZXItcmFkaXVzOiAkYm9yZGVyLXJhZGl1cy1sYXJnZTtcbiAgQGluY2x1ZGUgYm94LXNoYWRvdygwIDNweCA5cHggcmdiYSgwLDAsMCwuNSkpO1xuICBiYWNrZ3JvdW5kLWNsaXA6IHBhZGRpbmctYm94O1xuICAvLyBSZW1vdmUgZm9jdXMgb3V0bGluZSBmcm9tIG9wZW5lZCBtb2RhbFxuICBvdXRsaW5lOiAwO1xufVxuXG4vLyBNb2RhbCBiYWNrZ3JvdW5kXG4ubW9kYWwtYmFja2Ryb3Age1xuICBwb3NpdGlvbjogZml4ZWQ7XG4gIHRvcDogMDtcbiAgcmlnaHQ6IDA7XG4gIGJvdHRvbTogMDtcbiAgbGVmdDogMDtcbiAgei1pbmRleDogJHppbmRleC1tb2RhbC1iYWNrZ3JvdW5kO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAkbW9kYWwtYmFja2Ryb3AtYmc7XG4gIC8vIEZhZGUgZm9yIGJhY2tkcm9wXG4gICYuZmFkZSB7IEBpbmNsdWRlIG9wYWNpdHkoMCk7IH1cbiAgJi5pbiB7IEBpbmNsdWRlIG9wYWNpdHkoJG1vZGFsLWJhY2tkcm9wLW9wYWNpdHkpOyB9XG59XG5cbi8vIE1vZGFsIGhlYWRlclxuLy8gVG9wIHNlY3Rpb24gb2YgdGhlIG1vZGFsIHcvIHRpdGxlIGFuZCBkaXNtaXNzXG4ubW9kYWwtaGVhZGVyIHtcbiAgcGFkZGluZzogJG1vZGFsLXRpdGxlLXBhZGRpbmc7XG4gIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCAkbW9kYWwtaGVhZGVyLWJvcmRlci1jb2xvcjtcbiAgQGluY2x1ZGUgY2xlYXJmaXg7XG59XG4vLyBDbG9zZSBpY29uXG4ubW9kYWwtaGVhZGVyIC5jbG9zZSB7XG4gIG1hcmdpbi10b3A6IC0ycHg7XG59XG5cbi8vIFRpdGxlIHRleHQgd2l0aGluIGhlYWRlclxuLm1vZGFsLXRpdGxlIHtcbiAgbWFyZ2luOiAwO1xuICBsaW5lLWhlaWdodDogJG1vZGFsLXRpdGxlLWxpbmUtaGVpZ2h0O1xufVxuXG4vLyBNb2RhbCBib2R5XG4vLyBXaGVyZSBhbGwgbW9kYWwgY29udGVudCByZXNpZGVzIChzaWJsaW5nIG9mIC5tb2RhbC1oZWFkZXIgYW5kIC5tb2RhbC1mb290ZXIpXG4ubW9kYWwtYm9keSB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgcGFkZGluZzogJG1vZGFsLWlubmVyLXBhZGRpbmc7XG59XG5cbi8vIEZvb3RlciAoZm9yIGFjdGlvbnMpXG4ubW9kYWwtZm9vdGVyIHtcbiAgcGFkZGluZzogJG1vZGFsLWlubmVyLXBhZGRpbmc7XG4gIHRleHQtYWxpZ246IHJpZ2h0OyAvLyByaWdodCBhbGlnbiBidXR0b25zXG4gIGJvcmRlci10b3A6IDFweCBzb2xpZCAkbW9kYWwtZm9vdGVyLWJvcmRlci1jb2xvcjtcbiAgQGluY2x1ZGUgY2xlYXJmaXg7IC8vIGNsZWFyIGl0IGluIGNhc2UgZm9sa3MgdXNlIC5wdWxsLSogY2xhc3NlcyBvbiBidXR0b25zXG5cbiAgLy8gUHJvcGVybHkgc3BhY2Ugb3V0IGJ1dHRvbnNcbiAgLmJ0biArIC5idG4ge1xuICAgIG1hcmdpbi1sZWZ0OiA1cHg7XG4gICAgbWFyZ2luLWJvdHRvbTogMDsgLy8gYWNjb3VudCBmb3IgaW5wdXRbdHlwZT1cInN1Ym1pdFwiXSB3aGljaCBnZXRzIHRoZSBib3R0b20gbWFyZ2luIGxpa2UgYWxsIG90aGVyIGlucHV0c1xuICB9XG4gIC8vIGJ1dCBvdmVycmlkZSB0aGF0IGZvciBidXR0b24gZ3JvdXBzXG4gIC5idG4tZ3JvdXAgLmJ0biArIC5idG4ge1xuICAgIG1hcmdpbi1sZWZ0OiAtMXB4O1xuICB9XG4gIC8vIGFuZCBvdmVycmlkZSBpdCBmb3IgYmxvY2sgYnV0dG9ucyBhcyB3ZWxsXG4gIC5idG4tYmxvY2sgKyAuYnRuLWJsb2NrIHtcbiAgICBtYXJnaW4tbGVmdDogMDtcbiAgfVxufVxuXG4vLyBNZWFzdXJlIHNjcm9sbGJhciB3aWR0aCBmb3IgcGFkZGluZyBib2R5IGR1cmluZyBtb2RhbCBzaG93L2hpZGVcbi5tb2RhbC1zY3JvbGxiYXItbWVhc3VyZSB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgdG9wOiAtOTk5OXB4O1xuICB3aWR0aDogNTBweDtcbiAgaGVpZ2h0OiA1MHB4O1xuICBvdmVyZmxvdzogc2Nyb2xsO1xufVxuXG4vLyBTY2FsZSB1cCB0aGUgbW9kYWxcbkBtZWRpYSAobWluLXdpZHRoOiAkc2NyZWVuLXNtLW1pbikge1xuICAvLyBBdXRvbWF0aWNhbGx5IHNldCBtb2RhbCdzIHdpZHRoIGZvciBsYXJnZXIgdmlld3BvcnRzXG4gIC5tb2RhbC1kaWFsb2cge1xuICAgIHdpZHRoOiAkbW9kYWwtbWQ7XG4gICAgbWFyZ2luOiAzMHB4IGF1dG87XG4gIH1cbiAgLm1vZGFsLWNvbnRlbnQge1xuICAgIEBpbmNsdWRlIGJveC1zaGFkb3coMCA1cHggMTVweCByZ2JhKDAsMCwwLC41KSk7XG4gIH1cblxuICAvLyBNb2RhbCBzaXplc1xuICAubW9kYWwtc20geyB3aWR0aDogJG1vZGFsLXNtOyB9XG59XG5cbkBtZWRpYSAobWluLXdpZHRoOiAkc2NyZWVuLW1kLW1pbikge1xuICAubW9kYWwtbGcgeyB3aWR0aDogJG1vZGFsLWxnOyB9XG59XG4iLCIvL1xuLy8gVG9vbHRpcHNcbi8vIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG5cblxuLy8gQmFzZSBjbGFzc1xuLnRvb2x0aXAge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHotaW5kZXg6ICR6aW5kZXgtdG9vbHRpcDtcbiAgZGlzcGxheTogYmxvY2s7XG4gIC8vIE91ciBwYXJlbnQgZWxlbWVudCBjYW4gYmUgYXJiaXRyYXJ5IHNpbmNlIHRvb2x0aXBzIGFyZSBieSBkZWZhdWx0IGluc2VydGVkIGFzIGEgc2libGluZyBvZiB0aGVpciB0YXJnZXQgZWxlbWVudC5cbiAgLy8gU28gcmVzZXQgb3VyIGZvbnQgYW5kIHRleHQgcHJvcGVydGllcyB0byBhdm9pZCBpbmhlcml0aW5nIHdlaXJkIHZhbHVlcy5cbiAgQGluY2x1ZGUgcmVzZXQtdGV4dDtcbiAgZm9udC1zaXplOiAkZm9udC1zaXplLXNtYWxsO1xuXG4gIEBpbmNsdWRlIG9wYWNpdHkoMCk7XG5cbiAgJi5pbiAgICAgeyBAaW5jbHVkZSBvcGFjaXR5KCR0b29sdGlwLW9wYWNpdHkpOyB9XG4gICYudG9wICAgIHsgbWFyZ2luLXRvcDogIC0zcHg7IHBhZGRpbmc6ICR0b29sdGlwLWFycm93LXdpZHRoIDA7IH1cbiAgJi5yaWdodCAgeyBtYXJnaW4tbGVmdDogIDNweDsgcGFkZGluZzogMCAkdG9vbHRpcC1hcnJvdy13aWR0aDsgfVxuICAmLmJvdHRvbSB7IG1hcmdpbi10b3A6ICAgM3B4OyBwYWRkaW5nOiAkdG9vbHRpcC1hcnJvdy13aWR0aCAwOyB9XG4gICYubGVmdCAgIHsgbWFyZ2luLWxlZnQ6IC0zcHg7IHBhZGRpbmc6IDAgJHRvb2x0aXAtYXJyb3ctd2lkdGg7IH1cbn1cblxuLy8gV3JhcHBlciBmb3IgdGhlIHRvb2x0aXAgY29udGVudFxuLnRvb2x0aXAtaW5uZXIge1xuICBtYXgtd2lkdGg6ICR0b29sdGlwLW1heC13aWR0aDtcbiAgcGFkZGluZzogM3B4IDhweDtcbiAgY29sb3I6ICR0b29sdGlwLWNvbG9yO1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gIGJhY2tncm91bmQtY29sb3I6ICR0b29sdGlwLWJnO1xuICBib3JkZXItcmFkaXVzOiAkYm9yZGVyLXJhZGl1cy1iYXNlO1xufVxuXG4vLyBBcnJvd3Ncbi50b29sdGlwLWFycm93IHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB3aWR0aDogMDtcbiAgaGVpZ2h0OiAwO1xuICBib3JkZXItY29sb3I6IHRyYW5zcGFyZW50O1xuICBib3JkZXItc3R5bGU6IHNvbGlkO1xufVxuLy8gTm90ZTogRGVwcmVjYXRlZCAudG9wLWxlZnQsIC50b3AtcmlnaHQsIC5ib3R0b20tbGVmdCwgYW5kIC5ib3R0b20tcmlnaHQgYXMgb2YgdjMuMy4xXG4udG9vbHRpcCB7XG4gICYudG9wIC50b29sdGlwLWFycm93IHtcbiAgICBib3R0b206IDA7XG4gICAgbGVmdDogNTAlO1xuICAgIG1hcmdpbi1sZWZ0OiAtJHRvb2x0aXAtYXJyb3ctd2lkdGg7XG4gICAgYm9yZGVyLXdpZHRoOiAkdG9vbHRpcC1hcnJvdy13aWR0aCAkdG9vbHRpcC1hcnJvdy13aWR0aCAwO1xuICAgIGJvcmRlci10b3AtY29sb3I6ICR0b29sdGlwLWFycm93LWNvbG9yO1xuICB9XG4gICYudG9wLWxlZnQgLnRvb2x0aXAtYXJyb3cge1xuICAgIGJvdHRvbTogMDtcbiAgICByaWdodDogJHRvb2x0aXAtYXJyb3ctd2lkdGg7XG4gICAgbWFyZ2luLWJvdHRvbTogLSR0b29sdGlwLWFycm93LXdpZHRoO1xuICAgIGJvcmRlci13aWR0aDogJHRvb2x0aXAtYXJyb3ctd2lkdGggJHRvb2x0aXAtYXJyb3ctd2lkdGggMDtcbiAgICBib3JkZXItdG9wLWNvbG9yOiAkdG9vbHRpcC1hcnJvdy1jb2xvcjtcbiAgfVxuICAmLnRvcC1yaWdodCAudG9vbHRpcC1hcnJvdyB7XG4gICAgYm90dG9tOiAwO1xuICAgIGxlZnQ6ICR0b29sdGlwLWFycm93LXdpZHRoO1xuICAgIG1hcmdpbi1ib3R0b206IC0kdG9vbHRpcC1hcnJvdy13aWR0aDtcbiAgICBib3JkZXItd2lkdGg6ICR0b29sdGlwLWFycm93LXdpZHRoICR0b29sdGlwLWFycm93LXdpZHRoIDA7XG4gICAgYm9yZGVyLXRvcC1jb2xvcjogJHRvb2x0aXAtYXJyb3ctY29sb3I7XG4gIH1cbiAgJi5yaWdodCAudG9vbHRpcC1hcnJvdyB7XG4gICAgdG9wOiA1MCU7XG4gICAgbGVmdDogMDtcbiAgICBtYXJnaW4tdG9wOiAtJHRvb2x0aXAtYXJyb3ctd2lkdGg7XG4gICAgYm9yZGVyLXdpZHRoOiAkdG9vbHRpcC1hcnJvdy13aWR0aCAkdG9vbHRpcC1hcnJvdy13aWR0aCAkdG9vbHRpcC1hcnJvdy13aWR0aCAwO1xuICAgIGJvcmRlci1yaWdodC1jb2xvcjogJHRvb2x0aXAtYXJyb3ctY29sb3I7XG4gIH1cbiAgJi5sZWZ0IC50b29sdGlwLWFycm93IHtcbiAgICB0b3A6IDUwJTtcbiAgICByaWdodDogMDtcbiAgICBtYXJnaW4tdG9wOiAtJHRvb2x0aXAtYXJyb3ctd2lkdGg7XG4gICAgYm9yZGVyLXdpZHRoOiAkdG9vbHRpcC1hcnJvdy13aWR0aCAwICR0b29sdGlwLWFycm93LXdpZHRoICR0b29sdGlwLWFycm93LXdpZHRoO1xuICAgIGJvcmRlci1sZWZ0LWNvbG9yOiAkdG9vbHRpcC1hcnJvdy1jb2xvcjtcbiAgfVxuICAmLmJvdHRvbSAudG9vbHRpcC1hcnJvdyB7XG4gICAgdG9wOiAwO1xuICAgIGxlZnQ6IDUwJTtcbiAgICBtYXJnaW4tbGVmdDogLSR0b29sdGlwLWFycm93LXdpZHRoO1xuICAgIGJvcmRlci13aWR0aDogMCAkdG9vbHRpcC1hcnJvdy13aWR0aCAkdG9vbHRpcC1hcnJvdy13aWR0aDtcbiAgICBib3JkZXItYm90dG9tLWNvbG9yOiAkdG9vbHRpcC1hcnJvdy1jb2xvcjtcbiAgfVxuICAmLmJvdHRvbS1sZWZ0IC50b29sdGlwLWFycm93IHtcbiAgICB0b3A6IDA7XG4gICAgcmlnaHQ6ICR0b29sdGlwLWFycm93LXdpZHRoO1xuICAgIG1hcmdpbi10b3A6IC0kdG9vbHRpcC1hcnJvdy13aWR0aDtcbiAgICBib3JkZXItd2lkdGg6IDAgJHRvb2x0aXAtYXJyb3ctd2lkdGggJHRvb2x0aXAtYXJyb3ctd2lkdGg7XG4gICAgYm9yZGVyLWJvdHRvbS1jb2xvcjogJHRvb2x0aXAtYXJyb3ctY29sb3I7XG4gIH1cbiAgJi5ib3R0b20tcmlnaHQgLnRvb2x0aXAtYXJyb3cge1xuICAgIHRvcDogMDtcbiAgICBsZWZ0OiAkdG9vbHRpcC1hcnJvdy13aWR0aDtcbiAgICBtYXJnaW4tdG9wOiAtJHRvb2x0aXAtYXJyb3ctd2lkdGg7XG4gICAgYm9yZGVyLXdpZHRoOiAwICR0b29sdGlwLWFycm93LXdpZHRoICR0b29sdGlwLWFycm93LXdpZHRoO1xuICAgIGJvcmRlci1ib3R0b20tY29sb3I6ICR0b29sdGlwLWFycm93LWNvbG9yO1xuICB9XG59XG4iLCJAbWl4aW4gcmVzZXQtdGV4dCgpIHtcbiAgZm9udC1mYW1pbHk6ICRmb250LWZhbWlseS1iYXNlO1xuICAvLyBXZSBkZWxpYmVyYXRlbHkgZG8gTk9UIHJlc2V0IGZvbnQtc2l6ZS5cbiAgZm9udC1zdHlsZTogbm9ybWFsO1xuICBmb250LXdlaWdodDogbm9ybWFsO1xuICBsZXR0ZXItc3BhY2luZzogbm9ybWFsO1xuICBsaW5lLWJyZWFrOiBhdXRvO1xuICBsaW5lLWhlaWdodDogJGxpbmUtaGVpZ2h0LWJhc2U7XG4gIHRleHQtYWxpZ246IGxlZnQ7IC8vIEZhbGxiYWNrIGZvciB3aGVyZSBgc3RhcnRgIGlzIG5vdCBzdXBwb3J0ZWRcbiAgdGV4dC1hbGlnbjogc3RhcnQ7XG4gIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgdGV4dC1zaGFkb3c6IG5vbmU7XG4gIHRleHQtdHJhbnNmb3JtOiBub25lO1xuICB3aGl0ZS1zcGFjZTogbm9ybWFsO1xuICB3b3JkLWJyZWFrOiBub3JtYWw7XG4gIHdvcmQtc3BhY2luZzogbm9ybWFsO1xuICB3b3JkLXdyYXA6IG5vcm1hbDtcbn1cbiIsIi8vXG4vLyBQb3BvdmVyc1xuLy8gLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cblxuXG4ucG9wb3ZlciB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgdG9wOiAwO1xuICBsZWZ0OiAwO1xuICB6LWluZGV4OiAkemluZGV4LXBvcG92ZXI7XG4gIGRpc3BsYXk6IG5vbmU7XG4gIG1heC13aWR0aDogJHBvcG92ZXItbWF4LXdpZHRoO1xuICBwYWRkaW5nOiAxcHg7XG4gIC8vIE91ciBwYXJlbnQgZWxlbWVudCBjYW4gYmUgYXJiaXRyYXJ5IHNpbmNlIHBvcG92ZXJzIGFyZSBieSBkZWZhdWx0IGluc2VydGVkIGFzIGEgc2libGluZyBvZiB0aGVpciB0YXJnZXQgZWxlbWVudC5cbiAgLy8gU28gcmVzZXQgb3VyIGZvbnQgYW5kIHRleHQgcHJvcGVydGllcyB0byBhdm9pZCBpbmhlcml0aW5nIHdlaXJkIHZhbHVlcy5cbiAgQGluY2x1ZGUgcmVzZXQtdGV4dDtcbiAgZm9udC1zaXplOiAkZm9udC1zaXplLWJhc2U7XG5cbiAgYmFja2dyb3VuZC1jb2xvcjogJHBvcG92ZXItYmc7XG4gIGJhY2tncm91bmQtY2xpcDogcGFkZGluZy1ib3g7XG4gIGJvcmRlcjogMXB4IHNvbGlkICRwb3BvdmVyLWZhbGxiYWNrLWJvcmRlci1jb2xvcjtcbiAgYm9yZGVyOiAxcHggc29saWQgJHBvcG92ZXItYm9yZGVyLWNvbG9yO1xuICBib3JkZXItcmFkaXVzOiAkYm9yZGVyLXJhZGl1cy1sYXJnZTtcbiAgQGluY2x1ZGUgYm94LXNoYWRvdygwIDVweCAxMHB4IHJnYmEoMCwwLDAsLjIpKTtcblxuICAvLyBPZmZzZXQgdGhlIHBvcG92ZXIgdG8gYWNjb3VudCBmb3IgdGhlIHBvcG92ZXIgYXJyb3dcbiAgJi50b3AgICAgIHsgbWFyZ2luLXRvcDogLSRwb3BvdmVyLWFycm93LXdpZHRoOyB9XG4gICYucmlnaHQgICB7IG1hcmdpbi1sZWZ0OiAkcG9wb3Zlci1hcnJvdy13aWR0aDsgfVxuICAmLmJvdHRvbSAgeyBtYXJnaW4tdG9wOiAkcG9wb3Zlci1hcnJvdy13aWR0aDsgfVxuICAmLmxlZnQgICAgeyBtYXJnaW4tbGVmdDogLSRwb3BvdmVyLWFycm93LXdpZHRoOyB9XG59XG5cbi5wb3BvdmVyLXRpdGxlIHtcbiAgbWFyZ2luOiAwOyAvLyByZXNldCBoZWFkaW5nIG1hcmdpblxuICBwYWRkaW5nOiA4cHggMTRweDtcbiAgZm9udC1zaXplOiAkZm9udC1zaXplLWJhc2U7XG4gIGJhY2tncm91bmQtY29sb3I6ICRwb3BvdmVyLXRpdGxlLWJnO1xuICBib3JkZXItYm90dG9tOiAxcHggc29saWQgZGFya2VuKCRwb3BvdmVyLXRpdGxlLWJnLCA1JSk7XG4gIGJvcmRlci1yYWRpdXM6ICgkYm9yZGVyLXJhZGl1cy1sYXJnZSAtIDEpICgkYm9yZGVyLXJhZGl1cy1sYXJnZSAtIDEpIDAgMDtcbn1cblxuLnBvcG92ZXItY29udGVudCB7XG4gIHBhZGRpbmc6IDlweCAxNHB4O1xufVxuXG4vLyBBcnJvd3Ncbi8vXG4vLyAuYXJyb3cgaXMgb3V0ZXIsIC5hcnJvdzphZnRlciBpcyBpbm5lclxuXG4ucG9wb3ZlciA+IC5hcnJvdyB7XG4gICYsXG4gICY6YWZ0ZXIge1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICB3aWR0aDogMDtcbiAgICBoZWlnaHQ6IDA7XG4gICAgYm9yZGVyLWNvbG9yOiB0cmFuc3BhcmVudDtcbiAgICBib3JkZXItc3R5bGU6IHNvbGlkO1xuICB9XG59XG4ucG9wb3ZlciA+IC5hcnJvdyB7XG4gIGJvcmRlci13aWR0aDogJHBvcG92ZXItYXJyb3ctb3V0ZXItd2lkdGg7XG59XG4ucG9wb3ZlciA+IC5hcnJvdzphZnRlciB7XG4gIGJvcmRlci13aWR0aDogJHBvcG92ZXItYXJyb3ctd2lkdGg7XG4gIGNvbnRlbnQ6IFwiXCI7XG59XG5cbi5wb3BvdmVyIHtcbiAgJi50b3AgPiAuYXJyb3cge1xuICAgIGxlZnQ6IDUwJTtcbiAgICBtYXJnaW4tbGVmdDogLSRwb3BvdmVyLWFycm93LW91dGVyLXdpZHRoO1xuICAgIGJvcmRlci1ib3R0b20td2lkdGg6IDA7XG4gICAgYm9yZGVyLXRvcC1jb2xvcjogJHBvcG92ZXItYXJyb3ctb3V0ZXItZmFsbGJhY2stY29sb3I7IC8vIElFOCBmYWxsYmFja1xuICAgIGJvcmRlci10b3AtY29sb3I6ICRwb3BvdmVyLWFycm93LW91dGVyLWNvbG9yO1xuICAgIGJvdHRvbTogLSRwb3BvdmVyLWFycm93LW91dGVyLXdpZHRoO1xuICAgICY6YWZ0ZXIge1xuICAgICAgY29udGVudDogXCIgXCI7XG4gICAgICBib3R0b206IDFweDtcbiAgICAgIG1hcmdpbi1sZWZ0OiAtJHBvcG92ZXItYXJyb3ctd2lkdGg7XG4gICAgICBib3JkZXItYm90dG9tLXdpZHRoOiAwO1xuICAgICAgYm9yZGVyLXRvcC1jb2xvcjogJHBvcG92ZXItYXJyb3ctY29sb3I7XG4gICAgfVxuICB9XG4gICYucmlnaHQgPiAuYXJyb3cge1xuICAgIHRvcDogNTAlO1xuICAgIGxlZnQ6IC0kcG9wb3Zlci1hcnJvdy1vdXRlci13aWR0aDtcbiAgICBtYXJnaW4tdG9wOiAtJHBvcG92ZXItYXJyb3ctb3V0ZXItd2lkdGg7XG4gICAgYm9yZGVyLWxlZnQtd2lkdGg6IDA7XG4gICAgYm9yZGVyLXJpZ2h0LWNvbG9yOiAkcG9wb3Zlci1hcnJvdy1vdXRlci1mYWxsYmFjay1jb2xvcjsgLy8gSUU4IGZhbGxiYWNrXG4gICAgYm9yZGVyLXJpZ2h0LWNvbG9yOiAkcG9wb3Zlci1hcnJvdy1vdXRlci1jb2xvcjtcbiAgICAmOmFmdGVyIHtcbiAgICAgIGNvbnRlbnQ6IFwiIFwiO1xuICAgICAgbGVmdDogMXB4O1xuICAgICAgYm90dG9tOiAtJHBvcG92ZXItYXJyb3ctd2lkdGg7XG4gICAgICBib3JkZXItbGVmdC13aWR0aDogMDtcbiAgICAgIGJvcmRlci1yaWdodC1jb2xvcjogJHBvcG92ZXItYXJyb3ctY29sb3I7XG4gICAgfVxuICB9XG4gICYuYm90dG9tID4gLmFycm93IHtcbiAgICBsZWZ0OiA1MCU7XG4gICAgbWFyZ2luLWxlZnQ6IC0kcG9wb3Zlci1hcnJvdy1vdXRlci13aWR0aDtcbiAgICBib3JkZXItdG9wLXdpZHRoOiAwO1xuICAgIGJvcmRlci1ib3R0b20tY29sb3I6ICRwb3BvdmVyLWFycm93LW91dGVyLWZhbGxiYWNrLWNvbG9yOyAvLyBJRTggZmFsbGJhY2tcbiAgICBib3JkZXItYm90dG9tLWNvbG9yOiAkcG9wb3Zlci1hcnJvdy1vdXRlci1jb2xvcjtcbiAgICB0b3A6IC0kcG9wb3Zlci1hcnJvdy1vdXRlci13aWR0aDtcbiAgICAmOmFmdGVyIHtcbiAgICAgIGNvbnRlbnQ6IFwiIFwiO1xuICAgICAgdG9wOiAxcHg7XG4gICAgICBtYXJnaW4tbGVmdDogLSRwb3BvdmVyLWFycm93LXdpZHRoO1xuICAgICAgYm9yZGVyLXRvcC13aWR0aDogMDtcbiAgICAgIGJvcmRlci1ib3R0b20tY29sb3I6ICRwb3BvdmVyLWFycm93LWNvbG9yO1xuICAgIH1cbiAgfVxuXG4gICYubGVmdCA+IC5hcnJvdyB7XG4gICAgdG9wOiA1MCU7XG4gICAgcmlnaHQ6IC0kcG9wb3Zlci1hcnJvdy1vdXRlci13aWR0aDtcbiAgICBtYXJnaW4tdG9wOiAtJHBvcG92ZXItYXJyb3ctb3V0ZXItd2lkdGg7XG4gICAgYm9yZGVyLXJpZ2h0LXdpZHRoOiAwO1xuICAgIGJvcmRlci1sZWZ0LWNvbG9yOiAkcG9wb3Zlci1hcnJvdy1vdXRlci1mYWxsYmFjay1jb2xvcjsgLy8gSUU4IGZhbGxiYWNrXG4gICAgYm9yZGVyLWxlZnQtY29sb3I6ICRwb3BvdmVyLWFycm93LW91dGVyLWNvbG9yO1xuICAgICY6YWZ0ZXIge1xuICAgICAgY29udGVudDogXCIgXCI7XG4gICAgICByaWdodDogMXB4O1xuICAgICAgYm9yZGVyLXJpZ2h0LXdpZHRoOiAwO1xuICAgICAgYm9yZGVyLWxlZnQtY29sb3I6ICRwb3BvdmVyLWFycm93LWNvbG9yO1xuICAgICAgYm90dG9tOiAtJHBvcG92ZXItYXJyb3ctd2lkdGg7XG4gICAgfVxuICB9XG59XG4iLCIvL1xuLy8gQ2Fyb3VzZWxcbi8vIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG5cblxuLy8gV3JhcHBlciBmb3IgdGhlIHNsaWRlIGNvbnRhaW5lciBhbmQgaW5kaWNhdG9yc1xuLmNhcm91c2VsIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xufVxuXG4uY2Fyb3VzZWwtaW5uZXIge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIG92ZXJmbG93OiBoaWRkZW47XG4gIHdpZHRoOiAxMDAlO1xuXG4gID4gLml0ZW0ge1xuICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIEBpbmNsdWRlIHRyYW5zaXRpb24oLjZzIGVhc2UtaW4tb3V0IGxlZnQpO1xuXG4gICAgLy8gQWNjb3VudCBmb3IgamFua2l0dWRlIG9uIGltYWdlc1xuICAgID4gaW1nLFxuICAgID4gYSA+IGltZyB7XG4gICAgICBAaW5jbHVkZSBpbWctcmVzcG9uc2l2ZTtcbiAgICAgIGxpbmUtaGVpZ2h0OiAxO1xuICAgIH1cblxuICAgIC8vIFdlYktpdCBDU1MzIHRyYW5zZm9ybXMgZm9yIHN1cHBvcnRlZCBkZXZpY2VzXG4gICAgQG1lZGlhIGFsbCBhbmQgKHRyYW5zZm9ybS0zZCksICgtd2Via2l0LXRyYW5zZm9ybS0zZCkge1xuICAgICAgQGluY2x1ZGUgdHJhbnNpdGlvbi10cmFuc2Zvcm0oMC42cyBlYXNlLWluLW91dCk7XG4gICAgICBAaW5jbHVkZSBiYWNrZmFjZS12aXNpYmlsaXR5KGhpZGRlbik7XG4gICAgICBAaW5jbHVkZSBwZXJzcGVjdGl2ZSgxMDAwcHgpO1xuXG4gICAgICAmLm5leHQsXG4gICAgICAmLmFjdGl2ZS5yaWdodCB7XG4gICAgICAgIEBpbmNsdWRlIHRyYW5zbGF0ZTNkKDEwMCUsIDAsIDApO1xuICAgICAgICBsZWZ0OiAwO1xuICAgICAgfVxuICAgICAgJi5wcmV2LFxuICAgICAgJi5hY3RpdmUubGVmdCB7XG4gICAgICAgIEBpbmNsdWRlIHRyYW5zbGF0ZTNkKC0xMDAlLCAwLCAwKTtcbiAgICAgICAgbGVmdDogMDtcbiAgICAgIH1cbiAgICAgICYubmV4dC5sZWZ0LFxuICAgICAgJi5wcmV2LnJpZ2h0LFxuICAgICAgJi5hY3RpdmUge1xuICAgICAgICBAaW5jbHVkZSB0cmFuc2xhdGUzZCgwLCAwLCAwKTtcbiAgICAgICAgbGVmdDogMDtcbiAgICAgIH1cbiAgICB9XG4gIH1cblxuICA+IC5hY3RpdmUsXG4gID4gLm5leHQsXG4gID4gLnByZXYge1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICB9XG5cbiAgPiAuYWN0aXZlIHtcbiAgICBsZWZ0OiAwO1xuICB9XG5cbiAgPiAubmV4dCxcbiAgPiAucHJldiB7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIHRvcDogMDtcbiAgICB3aWR0aDogMTAwJTtcbiAgfVxuXG4gID4gLm5leHQge1xuICAgIGxlZnQ6IDEwMCU7XG4gIH1cbiAgPiAucHJldiB7XG4gICAgbGVmdDogLTEwMCU7XG4gIH1cbiAgPiAubmV4dC5sZWZ0LFxuICA+IC5wcmV2LnJpZ2h0IHtcbiAgICBsZWZ0OiAwO1xuICB9XG5cbiAgPiAuYWN0aXZlLmxlZnQge1xuICAgIGxlZnQ6IC0xMDAlO1xuICB9XG4gID4gLmFjdGl2ZS5yaWdodCB7XG4gICAgbGVmdDogMTAwJTtcbiAgfVxuXG59XG5cbi8vIExlZnQvcmlnaHQgY29udHJvbHMgZm9yIG5hdlxuLy8gLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG5cbi5jYXJvdXNlbC1jb250cm9sIHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB0b3A6IDA7XG4gIGxlZnQ6IDA7XG4gIGJvdHRvbTogMDtcbiAgd2lkdGg6ICRjYXJvdXNlbC1jb250cm9sLXdpZHRoO1xuICBAaW5jbHVkZSBvcGFjaXR5KCRjYXJvdXNlbC1jb250cm9sLW9wYWNpdHkpO1xuICBmb250LXNpemU6ICRjYXJvdXNlbC1jb250cm9sLWZvbnQtc2l6ZTtcbiAgY29sb3I6ICRjYXJvdXNlbC1jb250cm9sLWNvbG9yO1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gIHRleHQtc2hhZG93OiAkY2Fyb3VzZWwtdGV4dC1zaGFkb3c7XG4gIGJhY2tncm91bmQtY29sb3I6IHJnYmEoMCwgMCwgMCwgMCk7IC8vIEZpeCBJRTkgY2xpY2stdGhydSBidWdcbiAgLy8gV2UgY2FuJ3QgaGF2ZSB0aGlzIHRyYW5zaXRpb24gaGVyZSBiZWNhdXNlIFdlYktpdCBjYW5jZWxzIHRoZSBjYXJvdXNlbFxuICAvLyBhbmltYXRpb24gaWYgeW91IHRyaXAgdGhpcyB3aGlsZSBpbiB0aGUgbWlkZGxlIG9mIGFub3RoZXIgYW5pbWF0aW9uLlxuXG4gIC8vIFNldCBncmFkaWVudHMgZm9yIGJhY2tncm91bmRzXG4gICYubGVmdCB7XG4gICAgQGluY2x1ZGUgZ3JhZGllbnQtaG9yaXpvbnRhbCgkc3RhcnQtY29sb3I6IHJnYmEoMCwwLDAsLjUpLCAkZW5kLWNvbG9yOiByZ2JhKDAsMCwwLC4wMDAxKSk7XG4gIH1cbiAgJi5yaWdodCB7XG4gICAgbGVmdDogYXV0bztcbiAgICByaWdodDogMDtcbiAgICBAaW5jbHVkZSBncmFkaWVudC1ob3Jpem9udGFsKCRzdGFydC1jb2xvcjogcmdiYSgwLDAsMCwuMDAwMSksICRlbmQtY29sb3I6IHJnYmEoMCwwLDAsLjUpKTtcbiAgfVxuXG4gIC8vIEhvdmVyL2ZvY3VzIHN0YXRlXG4gICY6aG92ZXIsXG4gICY6Zm9jdXMge1xuICAgIG91dGxpbmU6IDA7XG4gICAgY29sb3I6ICRjYXJvdXNlbC1jb250cm9sLWNvbG9yO1xuICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgICBAaW5jbHVkZSBvcGFjaXR5KC45KTtcbiAgfVxuXG4gIC8vIFRvZ2dsZXNcbiAgLmljb24tcHJldixcbiAgLmljb24tbmV4dCxcbiAgLmdseXBoaWNvbi1jaGV2cm9uLWxlZnQsXG4gIC5nbHlwaGljb24tY2hldnJvbi1yaWdodCB7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIHRvcDogNTAlO1xuICAgIG1hcmdpbi10b3A6IC0xMHB4O1xuICAgIHotaW5kZXg6IDU7XG4gICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICB9XG4gIC5pY29uLXByZXYsXG4gIC5nbHlwaGljb24tY2hldnJvbi1sZWZ0IHtcbiAgICBsZWZ0OiA1MCU7XG4gICAgbWFyZ2luLWxlZnQ6IC0xMHB4O1xuICB9XG4gIC5pY29uLW5leHQsXG4gIC5nbHlwaGljb24tY2hldnJvbi1yaWdodCB7XG4gICAgcmlnaHQ6IDUwJTtcbiAgICBtYXJnaW4tcmlnaHQ6IC0xMHB4O1xuICB9XG4gIC5pY29uLXByZXYsXG4gIC5pY29uLW5leHQge1xuICAgIHdpZHRoOiAgMjBweDtcbiAgICBoZWlnaHQ6IDIwcHg7XG4gICAgbGluZS1oZWlnaHQ6IDE7XG4gICAgZm9udC1mYW1pbHk6IHNlcmlmO1xuICB9XG5cblxuICAuaWNvbi1wcmV2IHtcbiAgICAmOmJlZm9yZSB7XG4gICAgICBjb250ZW50OiAnXFwyMDM5JzsvLyBTSU5HTEUgTEVGVC1QT0lOVElORyBBTkdMRSBRVU9UQVRJT04gTUFSSyAoVSsyMDM5KVxuICAgIH1cbiAgfVxuICAuaWNvbi1uZXh0IHtcbiAgICAmOmJlZm9yZSB7XG4gICAgICBjb250ZW50OiAnXFwyMDNhJzsvLyBTSU5HTEUgUklHSFQtUE9JTlRJTkcgQU5HTEUgUVVPVEFUSU9OIE1BUksgKFUrMjAzQSlcbiAgICB9XG4gIH1cbn1cblxuLy8gT3B0aW9uYWwgaW5kaWNhdG9yIHBpcHNcbi8vXG4vLyBBZGQgYW4gdW5vcmRlcmVkIGxpc3Qgd2l0aCB0aGUgZm9sbG93aW5nIGNsYXNzIGFuZCBhZGQgYSBsaXN0IGl0ZW0gZm9yIGVhY2hcbi8vIHNsaWRlIHlvdXIgY2Fyb3VzZWwgaG9sZHMuXG5cbi5jYXJvdXNlbC1pbmRpY2F0b3JzIHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICBib3R0b206IDEwcHg7XG4gIGxlZnQ6IDUwJTtcbiAgei1pbmRleDogMTU7XG4gIHdpZHRoOiA2MCU7XG4gIG1hcmdpbi1sZWZ0OiAtMzAlO1xuICBwYWRkaW5nLWxlZnQ6IDA7XG4gIGxpc3Qtc3R5bGU6IG5vbmU7XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcblxuICBsaSB7XG4gICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgIHdpZHRoOiAgMTBweDtcbiAgICBoZWlnaHQ6IDEwcHg7XG4gICAgbWFyZ2luOiAxcHg7XG4gICAgdGV4dC1pbmRlbnQ6IC05OTlweDtcbiAgICBib3JkZXI6IDFweCBzb2xpZCAkY2Fyb3VzZWwtaW5kaWNhdG9yLWJvcmRlci1jb2xvcjtcbiAgICBib3JkZXItcmFkaXVzOiAxMHB4O1xuICAgIGN1cnNvcjogcG9pbnRlcjtcblxuICAgIC8vIElFOC05IGhhY2sgZm9yIGV2ZW50IGhhbmRsaW5nXG4gICAgLy9cbiAgICAvLyBJbnRlcm5ldCBFeHBsb3JlciA4LTkgZG9lcyBub3Qgc3VwcG9ydCBjbGlja3Mgb24gZWxlbWVudHMgd2l0aG91dCBhIHNldFxuICAgIC8vIGBiYWNrZ3JvdW5kLWNvbG9yYC4gV2UgY2Fubm90IHVzZSBgZmlsdGVyYCBzaW5jZSB0aGF0J3Mgbm90IHZpZXdlZCBhcyBhXG4gICAgLy8gYmFja2dyb3VuZCBjb2xvciBieSB0aGUgYnJvd3Nlci4gVGh1cywgYSBoYWNrIGlzIG5lZWRlZC5cbiAgICAvLyBTZWUgaHR0cHM6Ly9kZXZlbG9wZXIubW96aWxsYS5vcmcvZW4tVVMvZG9jcy9XZWIvRXZlbnRzL2NsaWNrI0ludGVybmV0X0V4cGxvcmVyXG4gICAgLy9cbiAgICAvLyBGb3IgSUU4LCB3ZSBzZXQgc29saWQgYmxhY2sgYXMgaXQgZG9lc24ndCBzdXBwb3J0IGByZ2JhKClgLiBGb3IgSUU5LCB3ZVxuICAgIC8vIHNldCBhbHBoYSB0cmFuc3BhcmVuY3kgZm9yIHRoZSBiZXN0IHJlc3VsdHMgcG9zc2libGUuXG4gICAgYmFja2dyb3VuZC1jb2xvcjogIzAwMCBcXDk7IC8vIElFOFxuICAgIGJhY2tncm91bmQtY29sb3I6IHJnYmEoMCwwLDAsMCk7IC8vIElFOVxuICB9XG4gIC5hY3RpdmUge1xuICAgIG1hcmdpbjogMDtcbiAgICB3aWR0aDogIDEycHg7XG4gICAgaGVpZ2h0OiAxMnB4O1xuICAgIGJhY2tncm91bmQtY29sb3I6ICRjYXJvdXNlbC1pbmRpY2F0b3ItYWN0aXZlLWJnO1xuICB9XG59XG5cbi8vIE9wdGlvbmFsIGNhcHRpb25zXG4vLyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuLy8gSGlkZGVuIGJ5IGRlZmF1bHQgZm9yIHNtYWxsZXIgdmlld3BvcnRzXG4uY2Fyb3VzZWwtY2FwdGlvbiB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgbGVmdDogMTUlO1xuICByaWdodDogMTUlO1xuICBib3R0b206IDIwcHg7XG4gIHotaW5kZXg6IDEwO1xuICBwYWRkaW5nLXRvcDogMjBweDtcbiAgcGFkZGluZy1ib3R0b206IDIwcHg7XG4gIGNvbG9yOiAkY2Fyb3VzZWwtY2FwdGlvbi1jb2xvcjtcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xuICB0ZXh0LXNoYWRvdzogJGNhcm91c2VsLXRleHQtc2hhZG93O1xuICAmIC5idG4ge1xuICAgIHRleHQtc2hhZG93OiBub25lOyAvLyBObyBzaGFkb3cgZm9yIGJ1dHRvbiBlbGVtZW50cyBpbiBjYXJvdXNlbC1jYXB0aW9uXG4gIH1cbn1cblxuXG4vLyBTY2FsZSB1cCBjb250cm9scyBmb3IgdGFibGV0cyBhbmQgdXBcbkBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6ICRzY3JlZW4tc20tbWluKSB7XG5cbiAgLy8gU2NhbGUgdXAgdGhlIGNvbnRyb2xzIGEgc21pZGdlXG4gIC5jYXJvdXNlbC1jb250cm9sIHtcbiAgICAuZ2x5cGhpY29uLWNoZXZyb24tbGVmdCxcbiAgICAuZ2x5cGhpY29uLWNoZXZyb24tcmlnaHQsXG4gICAgLmljb24tcHJldixcbiAgICAuaWNvbi1uZXh0IHtcbiAgICAgIHdpZHRoOiAoJGNhcm91c2VsLWNvbnRyb2wtZm9udC1zaXplICogMS41KTtcbiAgICAgIGhlaWdodDogKCRjYXJvdXNlbC1jb250cm9sLWZvbnQtc2l6ZSAqIDEuNSk7XG4gICAgICBtYXJnaW4tdG9wOiAoJGNhcm91c2VsLWNvbnRyb2wtZm9udC1zaXplIC8gLTIpO1xuICAgICAgZm9udC1zaXplOiAoJGNhcm91c2VsLWNvbnRyb2wtZm9udC1zaXplICogMS41KTtcbiAgICB9XG4gICAgLmdseXBoaWNvbi1jaGV2cm9uLWxlZnQsXG4gICAgLmljb24tcHJldiB7XG4gICAgICBtYXJnaW4tbGVmdDogKCRjYXJvdXNlbC1jb250cm9sLWZvbnQtc2l6ZSAvIC0yKTtcbiAgICB9XG4gICAgLmdseXBoaWNvbi1jaGV2cm9uLXJpZ2h0LFxuICAgIC5pY29uLW5leHQge1xuICAgICAgbWFyZ2luLXJpZ2h0OiAoJGNhcm91c2VsLWNvbnRyb2wtZm9udC1zaXplIC8gLTIpO1xuICAgIH1cbiAgfVxuXG4gIC8vIFNob3cgYW5kIGxlZnQgYWxpZ24gdGhlIGNhcHRpb25zXG4gIC5jYXJvdXNlbC1jYXB0aW9uIHtcbiAgICBsZWZ0OiAyMCU7XG4gICAgcmlnaHQ6IDIwJTtcbiAgICBwYWRkaW5nLWJvdHRvbTogMzBweDtcbiAgfVxuXG4gIC8vIE1vdmUgdXAgdGhlIGluZGljYXRvcnNcbiAgLmNhcm91c2VsLWluZGljYXRvcnMge1xuICAgIGJvdHRvbTogMjBweDtcbiAgfVxufVxuIiwiLy9cbi8vIFV0aWxpdHkgY2xhc3Nlc1xuLy8gLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cblxuXG4vLyBGbG9hdHNcbi8vIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cblxuLmNsZWFyZml4IHtcbiAgQGluY2x1ZGUgY2xlYXJmaXg7XG59XG4uY2VudGVyLWJsb2NrIHtcbiAgQGluY2x1ZGUgY2VudGVyLWJsb2NrO1xufVxuLnB1bGwtcmlnaHQge1xuICBmbG9hdDogcmlnaHQgIWltcG9ydGFudDtcbn1cbi5wdWxsLWxlZnQge1xuICBmbG9hdDogbGVmdCAhaW1wb3J0YW50O1xufVxuXG5cbi8vIFRvZ2dsaW5nIGNvbnRlbnRcbi8vIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cblxuLy8gTm90ZTogRGVwcmVjYXRlZCAuaGlkZSBpbiBmYXZvciBvZiAuaGlkZGVuIG9yIC5zci1vbmx5IChhcyBhcHByb3ByaWF0ZSkgaW4gdjMuMC4xXG4uaGlkZSB7XG4gIGRpc3BsYXk6IG5vbmUgIWltcG9ydGFudDtcbn1cbi5zaG93IHtcbiAgZGlzcGxheTogYmxvY2sgIWltcG9ydGFudDtcbn1cbi5pbnZpc2libGUge1xuICB2aXNpYmlsaXR5OiBoaWRkZW47XG59XG4udGV4dC1oaWRlIHtcbiAgQGluY2x1ZGUgdGV4dC1oaWRlO1xufVxuXG5cbi8vIEhpZGUgZnJvbSBzY3JlZW5yZWFkZXJzIGFuZCBicm93c2Vyc1xuLy9cbi8vIENyZWRpdDogSFRNTDUgQm9pbGVycGxhdGVcblxuLmhpZGRlbiB7XG4gIGRpc3BsYXk6IG5vbmUgIWltcG9ydGFudDtcbn1cblxuXG4vLyBGb3IgQWZmaXggcGx1Z2luXG4vLyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG5cbi5hZmZpeCB7XG4gIHBvc2l0aW9uOiBmaXhlZDtcbn1cbiIsIi8vIENlbnRlci1hbGlnbiBhIGJsb2NrIGxldmVsIGVsZW1lbnRcblxuQG1peGluIGNlbnRlci1ibG9jaygpIHtcbiAgZGlzcGxheTogYmxvY2s7XG4gIG1hcmdpbi1sZWZ0OiBhdXRvO1xuICBtYXJnaW4tcmlnaHQ6IGF1dG87XG59XG4iLCIvLyBDU1MgaW1hZ2UgcmVwbGFjZW1lbnRcbi8vXG4vLyBIZWFkcyB1cCEgdjMgbGF1bmNoZWQgd2l0aCBvbmx5IGAuaGlkZS10ZXh0KClgLCBidXQgcGVyIG91ciBwYXR0ZXJuIGZvclxuLy8gbWl4aW5zIGJlaW5nIHJldXNlZCBhcyBjbGFzc2VzIHdpdGggdGhlIHNhbWUgbmFtZSwgdGhpcyBkb2Vzbid0IGhvbGQgdXAuIEFzXG4vLyBvZiB2My4wLjEgd2UgaGF2ZSBhZGRlZCBgLnRleHQtaGlkZSgpYCBhbmQgZGVwcmVjYXRlZCBgLmhpZGUtdGV4dCgpYC5cbi8vXG4vLyBTb3VyY2U6IGh0dHBzOi8vZ2l0aHViLmNvbS9oNWJwL2h0bWw1LWJvaWxlcnBsYXRlL2NvbW1pdC9hYTAzOTZlYWU3NTdcblxuLy8gRGVwcmVjYXRlZCBhcyBvZiB2My4wLjEgKGhhcyBiZWVuIHJlbW92ZWQgaW4gdjQpXG5AbWl4aW4gaGlkZS10ZXh0KCkge1xuICBmb250OiAwLzAgYTtcbiAgY29sb3I6IHRyYW5zcGFyZW50O1xuICB0ZXh0LXNoYWRvdzogbm9uZTtcbiAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gIGJvcmRlcjogMDtcbn1cblxuLy8gTmV3IG1peGluIHRvIHVzZSBhcyBvZiB2My4wLjFcbkBtaXhpbiB0ZXh0LWhpZGUoKSB7XG4gIEBpbmNsdWRlIGhpZGUtdGV4dDtcbn1cbiIsIi8vXG4vLyBSZXNwb25zaXZlOiBVdGlsaXR5IGNsYXNzZXNcbi8vIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG5cblxuLy8gSUUxMCBpbiBXaW5kb3dzIChQaG9uZSkgOFxuLy9cbi8vIFN1cHBvcnQgZm9yIHJlc3BvbnNpdmUgdmlld3MgdmlhIG1lZGlhIHF1ZXJpZXMgaXMga2luZCBvZiBib3JrZWQgaW4gSUUxMCwgZm9yXG4vLyBTdXJmYWNlL2Rlc2t0b3AgaW4gc3BsaXQgdmlldyBhbmQgZm9yIFdpbmRvd3MgUGhvbmUgOC4gVGhpcyBwYXJ0aWN1bGFyIGZpeFxuLy8gbXVzdCBiZSBhY2NvbXBhbmllZCBieSBhIHNuaXBwZXQgb2YgSmF2YVNjcmlwdCB0byBzbmlmZiB0aGUgdXNlciBhZ2VudCBhbmRcbi8vIGFwcGx5IHNvbWUgY29uZGl0aW9uYWwgQ1NTIHRvICpvbmx5KiB0aGUgU3VyZmFjZS9kZXNrdG9wIFdpbmRvd3MgOC4gTG9vayBhdFxuLy8gb3VyIEdldHRpbmcgU3RhcnRlZCBwYWdlIGZvciBtb3JlIGluZm9ybWF0aW9uIG9uIHRoaXMgYnVnLlxuLy9cbi8vIEZvciBtb3JlIGluZm9ybWF0aW9uLCBzZWUgdGhlIGZvbGxvd2luZzpcbi8vXG4vLyBJc3N1ZTogaHR0cHM6Ly9naXRodWIuY29tL3R3YnMvYm9vdHN0cmFwL2lzc3Vlcy8xMDQ5N1xuLy8gRG9jczogaHR0cDovL2dldGJvb3RzdHJhcC5jb20vZ2V0dGluZy1zdGFydGVkLyNzdXBwb3J0LWllMTAtd2lkdGhcbi8vIFNvdXJjZTogaHR0cDovL3RpbWthZGxlYy5jb20vMjAxMy8wMS93aW5kb3dzLXBob25lLTgtYW5kLWRldmljZS13aWR0aC9cbi8vIFNvdXJjZTogaHR0cDovL3RpbWthZGxlYy5jb20vMjAxMi8xMC9pZTEwLXNuYXAtbW9kZS1hbmQtcmVzcG9uc2l2ZS1kZXNpZ24vXG5cbkBhdC1yb290IHtcbiAgQC1tcy12aWV3cG9ydCB7XG4gICAgd2lkdGg6IGRldmljZS13aWR0aDtcbiAgfVxufVxuXG5cbi8vIFZpc2liaWxpdHkgdXRpbGl0aWVzXG4vLyBOb3RlOiBEZXByZWNhdGVkIC52aXNpYmxlLXhzLCAudmlzaWJsZS1zbSwgLnZpc2libGUtbWQsIGFuZCAudmlzaWJsZS1sZyBhcyBvZiB2My4yLjBcblxuQGluY2x1ZGUgcmVzcG9uc2l2ZS1pbnZpc2liaWxpdHkoJy52aXNpYmxlLXhzJyk7XG5AaW5jbHVkZSByZXNwb25zaXZlLWludmlzaWJpbGl0eSgnLnZpc2libGUtc20nKTtcbkBpbmNsdWRlIHJlc3BvbnNpdmUtaW52aXNpYmlsaXR5KCcudmlzaWJsZS1tZCcpO1xuQGluY2x1ZGUgcmVzcG9uc2l2ZS1pbnZpc2liaWxpdHkoJy52aXNpYmxlLWxnJyk7XG5cbi52aXNpYmxlLXhzLWJsb2NrLFxuLnZpc2libGUteHMtaW5saW5lLFxuLnZpc2libGUteHMtaW5saW5lLWJsb2NrLFxuLnZpc2libGUtc20tYmxvY2ssXG4udmlzaWJsZS1zbS1pbmxpbmUsXG4udmlzaWJsZS1zbS1pbmxpbmUtYmxvY2ssXG4udmlzaWJsZS1tZC1ibG9jayxcbi52aXNpYmxlLW1kLWlubGluZSxcbi52aXNpYmxlLW1kLWlubGluZS1ibG9jayxcbi52aXNpYmxlLWxnLWJsb2NrLFxuLnZpc2libGUtbGctaW5saW5lLFxuLnZpc2libGUtbGctaW5saW5lLWJsb2NrIHtcbiAgZGlzcGxheTogbm9uZSAhaW1wb3J0YW50O1xufVxuXG5AbWVkaWEgKG1heC13aWR0aDogJHNjcmVlbi14cy1tYXgpIHtcbiAgQGluY2x1ZGUgcmVzcG9uc2l2ZS12aXNpYmlsaXR5KCcudmlzaWJsZS14cycpO1xufVxuLnZpc2libGUteHMtYmxvY2sge1xuICBAbWVkaWEgKG1heC13aWR0aDogJHNjcmVlbi14cy1tYXgpIHtcbiAgICBkaXNwbGF5OiBibG9jayAhaW1wb3J0YW50O1xuICB9XG59XG4udmlzaWJsZS14cy1pbmxpbmUge1xuICBAbWVkaWEgKG1heC13aWR0aDogJHNjcmVlbi14cy1tYXgpIHtcbiAgICBkaXNwbGF5OiBpbmxpbmUgIWltcG9ydGFudDtcbiAgfVxufVxuLnZpc2libGUteHMtaW5saW5lLWJsb2NrIHtcbiAgQG1lZGlhIChtYXgtd2lkdGg6ICRzY3JlZW4teHMtbWF4KSB7XG4gICAgZGlzcGxheTogaW5saW5lLWJsb2NrICFpbXBvcnRhbnQ7XG4gIH1cbn1cblxuQG1lZGlhIChtaW4td2lkdGg6ICRzY3JlZW4tc20tbWluKSBhbmQgKG1heC13aWR0aDogJHNjcmVlbi1zbS1tYXgpIHtcbiAgQGluY2x1ZGUgcmVzcG9uc2l2ZS12aXNpYmlsaXR5KCcudmlzaWJsZS1zbScpO1xufVxuLnZpc2libGUtc20tYmxvY2sge1xuICBAbWVkaWEgKG1pbi13aWR0aDogJHNjcmVlbi1zbS1taW4pIGFuZCAobWF4LXdpZHRoOiAkc2NyZWVuLXNtLW1heCkge1xuICAgIGRpc3BsYXk6IGJsb2NrICFpbXBvcnRhbnQ7XG4gIH1cbn1cbi52aXNpYmxlLXNtLWlubGluZSB7XG4gIEBtZWRpYSAobWluLXdpZHRoOiAkc2NyZWVuLXNtLW1pbikgYW5kIChtYXgtd2lkdGg6ICRzY3JlZW4tc20tbWF4KSB7XG4gICAgZGlzcGxheTogaW5saW5lICFpbXBvcnRhbnQ7XG4gIH1cbn1cbi52aXNpYmxlLXNtLWlubGluZS1ibG9jayB7XG4gIEBtZWRpYSAobWluLXdpZHRoOiAkc2NyZWVuLXNtLW1pbikgYW5kIChtYXgtd2lkdGg6ICRzY3JlZW4tc20tbWF4KSB7XG4gICAgZGlzcGxheTogaW5saW5lLWJsb2NrICFpbXBvcnRhbnQ7XG4gIH1cbn1cblxuQG1lZGlhIChtaW4td2lkdGg6ICRzY3JlZW4tbWQtbWluKSBhbmQgKG1heC13aWR0aDogJHNjcmVlbi1tZC1tYXgpIHtcbiAgQGluY2x1ZGUgcmVzcG9uc2l2ZS12aXNpYmlsaXR5KCcudmlzaWJsZS1tZCcpO1xufVxuLnZpc2libGUtbWQtYmxvY2sge1xuICBAbWVkaWEgKG1pbi13aWR0aDogJHNjcmVlbi1tZC1taW4pIGFuZCAobWF4LXdpZHRoOiAkc2NyZWVuLW1kLW1heCkge1xuICAgIGRpc3BsYXk6IGJsb2NrICFpbXBvcnRhbnQ7XG4gIH1cbn1cbi52aXNpYmxlLW1kLWlubGluZSB7XG4gIEBtZWRpYSAobWluLXdpZHRoOiAkc2NyZWVuLW1kLW1pbikgYW5kIChtYXgtd2lkdGg6ICRzY3JlZW4tbWQtbWF4KSB7XG4gICAgZGlzcGxheTogaW5saW5lICFpbXBvcnRhbnQ7XG4gIH1cbn1cbi52aXNpYmxlLW1kLWlubGluZS1ibG9jayB7XG4gIEBtZWRpYSAobWluLXdpZHRoOiAkc2NyZWVuLW1kLW1pbikgYW5kIChtYXgtd2lkdGg6ICRzY3JlZW4tbWQtbWF4KSB7XG4gICAgZGlzcGxheTogaW5saW5lLWJsb2NrICFpbXBvcnRhbnQ7XG4gIH1cbn1cblxuQG1lZGlhIChtaW4td2lkdGg6ICRzY3JlZW4tbGctbWluKSB7XG4gIEBpbmNsdWRlIHJlc3BvbnNpdmUtdmlzaWJpbGl0eSgnLnZpc2libGUtbGcnKTtcbn1cbi52aXNpYmxlLWxnLWJsb2NrIHtcbiAgQG1lZGlhIChtaW4td2lkdGg6ICRzY3JlZW4tbGctbWluKSB7XG4gICAgZGlzcGxheTogYmxvY2sgIWltcG9ydGFudDtcbiAgfVxufVxuLnZpc2libGUtbGctaW5saW5lIHtcbiAgQG1lZGlhIChtaW4td2lkdGg6ICRzY3JlZW4tbGctbWluKSB7XG4gICAgZGlzcGxheTogaW5saW5lICFpbXBvcnRhbnQ7XG4gIH1cbn1cbi52aXNpYmxlLWxnLWlubGluZS1ibG9jayB7XG4gIEBtZWRpYSAobWluLXdpZHRoOiAkc2NyZWVuLWxnLW1pbikge1xuICAgIGRpc3BsYXk6IGlubGluZS1ibG9jayAhaW1wb3J0YW50O1xuICB9XG59XG5cbkBtZWRpYSAobWF4LXdpZHRoOiAkc2NyZWVuLXhzLW1heCkge1xuICBAaW5jbHVkZSByZXNwb25zaXZlLWludmlzaWJpbGl0eSgnLmhpZGRlbi14cycpO1xufVxuXG5AbWVkaWEgKG1pbi13aWR0aDogJHNjcmVlbi1zbS1taW4pIGFuZCAobWF4LXdpZHRoOiAkc2NyZWVuLXNtLW1heCkge1xuICBAaW5jbHVkZSByZXNwb25zaXZlLWludmlzaWJpbGl0eSgnLmhpZGRlbi1zbScpO1xufVxuXG5AbWVkaWEgKG1pbi13aWR0aDogJHNjcmVlbi1tZC1taW4pIGFuZCAobWF4LXdpZHRoOiAkc2NyZWVuLW1kLW1heCkge1xuICBAaW5jbHVkZSByZXNwb25zaXZlLWludmlzaWJpbGl0eSgnLmhpZGRlbi1tZCcpO1xufVxuXG5AbWVkaWEgKG1pbi13aWR0aDogJHNjcmVlbi1sZy1taW4pIHtcbiAgQGluY2x1ZGUgcmVzcG9uc2l2ZS1pbnZpc2liaWxpdHkoJy5oaWRkZW4tbGcnKTtcbn1cblxuXG4vLyBQcmludCB1dGlsaXRpZXNcbi8vXG4vLyBNZWRpYSBxdWVyaWVzIGFyZSBwbGFjZWQgb24gdGhlIGluc2lkZSB0byBiZSBtaXhpbi1mcmllbmRseS5cblxuLy8gTm90ZTogRGVwcmVjYXRlZCAudmlzaWJsZS1wcmludCBhcyBvZiB2My4yLjBcblxuQGluY2x1ZGUgcmVzcG9uc2l2ZS1pbnZpc2liaWxpdHkoJy52aXNpYmxlLXByaW50Jyk7XG5cbkBtZWRpYSBwcmludCB7XG4gIEBpbmNsdWRlIHJlc3BvbnNpdmUtdmlzaWJpbGl0eSgnLnZpc2libGUtcHJpbnQnKTtcbn1cbi52aXNpYmxlLXByaW50LWJsb2NrIHtcbiAgZGlzcGxheTogbm9uZSAhaW1wb3J0YW50O1xuXG4gIEBtZWRpYSBwcmludCB7XG4gICAgZGlzcGxheTogYmxvY2sgIWltcG9ydGFudDtcbiAgfVxufVxuLnZpc2libGUtcHJpbnQtaW5saW5lIHtcbiAgZGlzcGxheTogbm9uZSAhaW1wb3J0YW50O1xuXG4gIEBtZWRpYSBwcmludCB7XG4gICAgZGlzcGxheTogaW5saW5lICFpbXBvcnRhbnQ7XG4gIH1cbn1cbi52aXNpYmxlLXByaW50LWlubGluZS1ibG9jayB7XG4gIGRpc3BsYXk6IG5vbmUgIWltcG9ydGFudDtcblxuICBAbWVkaWEgcHJpbnQge1xuICAgIGRpc3BsYXk6IGlubGluZS1ibG9jayAhaW1wb3J0YW50O1xuICB9XG59XG5cbkBtZWRpYSBwcmludCB7XG4gIEBpbmNsdWRlIHJlc3BvbnNpdmUtaW52aXNpYmlsaXR5KCcuaGlkZGVuLXByaW50Jyk7XG59XG4iLCIvLyBSZXNwb25zaXZlIHV0aWxpdGllc1xuXG4vL1xuLy8gTW9yZSBlYXNpbHkgaW5jbHVkZSBhbGwgdGhlIHN0YXRlcyBmb3IgcmVzcG9uc2l2ZS11dGlsaXRpZXMubGVzcy5cbi8vIFtjb252ZXJ0ZXJdICRwYXJlbnQgaGFja1xuQG1peGluIHJlc3BvbnNpdmUtdmlzaWJpbGl0eSgkcGFyZW50KSB7XG4gICN7JHBhcmVudH0ge1xuICAgIGRpc3BsYXk6IGJsb2NrICFpbXBvcnRhbnQ7XG4gIH1cbiAgdGFibGUjeyRwYXJlbnR9ICB7IGRpc3BsYXk6IHRhYmxlICFpbXBvcnRhbnQ7IH1cbiAgdHIjeyRwYXJlbnR9ICAgICB7IGRpc3BsYXk6IHRhYmxlLXJvdyAhaW1wb3J0YW50OyB9XG4gIHRoI3skcGFyZW50fSxcbiAgdGQjeyRwYXJlbnR9ICAgICB7IGRpc3BsYXk6IHRhYmxlLWNlbGwgIWltcG9ydGFudDsgfVxufVxuXG4vLyBbY29udmVydGVyXSAkcGFyZW50IGhhY2tcbkBtaXhpbiByZXNwb25zaXZlLWludmlzaWJpbGl0eSgkcGFyZW50KSB7XG4gICN7JHBhcmVudH0ge1xuICAgIGRpc3BsYXk6IG5vbmUgIWltcG9ydGFudDtcbiAgfVxufVxuIiwiLy8gVGhpcyBmaWxlIGhhcyBiZWVuIGF1dG9nZW5lcmF0ZWQgYnkgZ3J1bnQgdGFzayBsZXNzVG9TYXNzLiBBbnkgY2hhbmdlcyB3aWxsIGJlIG92ZXJ3cml0dGVuLlxuXG4vKlxuXG5UbyBnZXQgdGhpcyBsaXN0IG9mIGNvbG9ycyBpbmplY3QgalF1ZXJ5IGF0IGh0dHA6Ly93d3cuZ29vZ2xlLmNvbS9kZXNpZ24vc3BlYy9zdHlsZS9jb2xvci5odG1sI2NvbG9yLWNvbG9yLXBhbGV0dGVcblxuVGhlbiwgcnVuIHRoaXMgc2NyaXB0IHRvIGdldCB0aGUgbGlzdEBtaXhpbiAoZnVuY3Rpb24oKXtcbiAgdmFyIGNvbG9ycyA9IHt9LCBtYWluID0ge307XG4gICQoXCIuY29sb3ItZ3JvdXBcIilAbWl4aW4gZWFjaChmdW5jdGlvbigpe1xuICAgIHZhciBjb2xvciA9ICQodGhpcykuZmluZChcIi5uYW1lXCIpLnRleHQoKS50cmltKCkudG9Mb3dlckNhc2UoKS5yZXBsYWNlKFwiIFwiLCBcIi1cIik7XG4gICAgY29sb3JzW2NvbG9yXSA9IHt9O1xuXG4gICAgJCh0aGlzKUBtaXhpbiBmaW5kKFwiLmNvbG9yXCIpLm5vdChcIi5tYWluLWNvbG9yXCIpLmVhY2goZnVuY3Rpb24oKXtcbiAgICAgIHZhciBzaGFkZSA9ICQodGhpcykuZmluZChcIi5zaGFkZVwiKS50ZXh0KCkudHJpbSgpLFxuICAgICAgICAgIGhleCAgID0gJCh0aGlzKS5maW5kKFwiLmhleFwiKS50ZXh0KCkudHJpbSgpO1xuXG4gICAgICBjb2xvcnNbY29sb3JdW3NoYWRlXSA9IGhleDtcbiAgICB9KTtcbiAgICBtYWluW2NvbG9yXSA9IGNvbG9yICsgXCItXCIgKyAkKHRoaXMpLmZpbmQoXCIubWFpbi1jb2xvciAuc2hhZGVcIikudGV4dCgpLnRyaW0oKTtcblxuICB9KTtcbiAgdmFyIExFU1MgPSBcIlwiO1xuICAkQG1peGluIGVhY2goY29sb3JzLCBmdW5jdGlvbihuYW1lLCBzaGFkZXMpe1xuICAgIExFU1MgKz0gXCJcXG5cXG5cIjtcbiAgICAkQG1peGluIGVhY2goc2hhZGVzLCBmdW5jdGlvbihzaGFkZSwgaGV4KXtcbiAgICAgIExFU1MgKz0gXCIkXCIgKyBuYW1lICsgXCItXCIgKyBzaGFkZSArIFwiOiBcIiArIGhleCArIFwiO1xcblwiICFkZWZhdWx0O1xuICAgIH0pO1xuICAgIGlmIChtYWluW25hbWVdKSB7XG4gICAgICBMRVNTICs9IFwiJFwiICsgbmFtZSArIFwiOiBcIiArIG1haW5bbmFtZV0gKyBcIjtcXG5cIiAhZGVmYXVsdDtcbiAgICB9XG4gIH0pO1xuICBjb25zb2xlLmxvZyhMRVNTKTtcbn0pKCk7XG5cblxuKi9cbiRyZWQtNTA6ICNmZmViZWUgIWRlZmF1bHQ7XG4kcmVkLTEwMDogI2ZmY2RkMiAhZGVmYXVsdDtcbiRyZWQtMjAwOiAjZWY5YTlhICFkZWZhdWx0O1xuJHJlZC0zMDA6ICNlNTczNzMgIWRlZmF1bHQ7XG4kcmVkLTQwMDogI2VmNTM1MCAhZGVmYXVsdDtcbiRyZWQtNTAwOiAjZjQ0MzM2ICFkZWZhdWx0O1xuJHJlZC02MDA6ICNlNTM5MzUgIWRlZmF1bHQ7XG4kcmVkLTcwMDogI2QzMmYyZiAhZGVmYXVsdDtcbiRyZWQtODAwOiAjYzYyODI4ICFkZWZhdWx0O1xuJHJlZC05MDA6ICNiNzFjMWMgIWRlZmF1bHQ7XG4kcmVkLUExMDA6ICNmZjhhODAgIWRlZmF1bHQ7XG4kcmVkLUEyMDA6ICNmZjUyNTIgIWRlZmF1bHQ7XG4kcmVkLUE0MDA6ICNmZjE3NDQgIWRlZmF1bHQ7XG4kcmVkLUE3MDA6ICNkNTAwMDAgIWRlZmF1bHQ7XG4kcmVkOiAkcmVkLTUwMCAhZGVmYXVsdDtcblxuXG4kcGluay01MDogI2ZjZTRlYyAhZGVmYXVsdDtcbiRwaW5rLTEwMDogI2Y4YmJkMCAhZGVmYXVsdDtcbiRwaW5rLTIwMDogI2Y0OGZiMSAhZGVmYXVsdDtcbiRwaW5rLTMwMDogI2YwNjI5MiAhZGVmYXVsdDtcbiRwaW5rLTQwMDogI2VjNDA3YSAhZGVmYXVsdDtcbiRwaW5rLTUwMDogI2U5MWU2MyAhZGVmYXVsdDtcbiRwaW5rLTYwMDogI2Q4MWI2MCAhZGVmYXVsdDtcbiRwaW5rLTcwMDogI2MyMTg1YiAhZGVmYXVsdDtcbiRwaW5rLTgwMDogI2FkMTQ1NyAhZGVmYXVsdDtcbiRwaW5rLTkwMDogIzg4MGU0ZiAhZGVmYXVsdDtcbiRwaW5rLUExMDA6ICNmZjgwYWIgIWRlZmF1bHQ7XG4kcGluay1BMjAwOiAjZmY0MDgxICFkZWZhdWx0O1xuJHBpbmstQTQwMDogI2Y1MDA1NyAhZGVmYXVsdDtcbiRwaW5rLUE3MDA6ICNjNTExNjIgIWRlZmF1bHQ7XG4kcGluazogJHBpbmstNTAwICFkZWZhdWx0O1xuXG5cbiRwdXJwbGUtNTA6ICNmM2U1ZjUgIWRlZmF1bHQ7XG4kcHVycGxlLTEwMDogI2UxYmVlNyAhZGVmYXVsdDtcbiRwdXJwbGUtMjAwOiAjY2U5M2Q4ICFkZWZhdWx0O1xuJHB1cnBsZS0zMDA6ICNiYTY4YzggIWRlZmF1bHQ7XG4kcHVycGxlLTQwMDogI2FiNDdiYyAhZGVmYXVsdDtcbiRwdXJwbGUtNTAwOiAjOWMyN2IwICFkZWZhdWx0O1xuJHB1cnBsZS02MDA6ICM4ZTI0YWEgIWRlZmF1bHQ7XG4kcHVycGxlLTcwMDogIzdiMWZhMiAhZGVmYXVsdDtcbiRwdXJwbGUtODAwOiAjNmExYjlhICFkZWZhdWx0O1xuJHB1cnBsZS05MDA6ICM0YTE0OGMgIWRlZmF1bHQ7XG4kcHVycGxlLUExMDA6ICNlYTgwZmMgIWRlZmF1bHQ7XG4kcHVycGxlLUEyMDA6ICNlMDQwZmIgIWRlZmF1bHQ7XG4kcHVycGxlLUE0MDA6ICNkNTAwZjkgIWRlZmF1bHQ7XG4kcHVycGxlLUE3MDA6ICNhYTAwZmYgIWRlZmF1bHQ7XG4kcHVycGxlOiAkcHVycGxlLTUwMCAhZGVmYXVsdDtcblxuXG4kZGVlcC1wdXJwbGUtNTA6ICNlZGU3ZjYgIWRlZmF1bHQ7XG4kZGVlcC1wdXJwbGUtMTAwOiAjZDFjNGU5ICFkZWZhdWx0O1xuJGRlZXAtcHVycGxlLTIwMDogI2IzOWRkYiAhZGVmYXVsdDtcbiRkZWVwLXB1cnBsZS0zMDA6ICM5NTc1Y2QgIWRlZmF1bHQ7XG4kZGVlcC1wdXJwbGUtNDAwOiAjN2U1N2MyICFkZWZhdWx0O1xuJGRlZXAtcHVycGxlLTUwMDogIzY3M2FiNyAhZGVmYXVsdDtcbiRkZWVwLXB1cnBsZS02MDA6ICM1ZTM1YjEgIWRlZmF1bHQ7XG4kZGVlcC1wdXJwbGUtNzAwOiAjNTEyZGE4ICFkZWZhdWx0O1xuJGRlZXAtcHVycGxlLTgwMDogIzQ1MjdhMCAhZGVmYXVsdDtcbiRkZWVwLXB1cnBsZS05MDA6ICMzMTFiOTIgIWRlZmF1bHQ7XG4kZGVlcC1wdXJwbGUtQTEwMDogI2IzODhmZiAhZGVmYXVsdDtcbiRkZWVwLXB1cnBsZS1BMjAwOiAjN2M0ZGZmICFkZWZhdWx0O1xuJGRlZXAtcHVycGxlLUE0MDA6ICM2NTFmZmYgIWRlZmF1bHQ7XG4kZGVlcC1wdXJwbGUtQTcwMDogIzYyMDBlYSAhZGVmYXVsdDtcbiRkZWVwLXB1cnBsZTogJGRlZXAtcHVycGxlLTUwMCAhZGVmYXVsdDtcblxuXG4kaW5kaWdvLTUwOiAjZThlYWY2ICFkZWZhdWx0O1xuJGluZGlnby0xMDA6ICNjNWNhZTkgIWRlZmF1bHQ7XG4kaW5kaWdvLTIwMDogIzlmYThkYSAhZGVmYXVsdDtcbiRpbmRpZ28tMzAwOiAjNzk4NmNiICFkZWZhdWx0O1xuJGluZGlnby00MDA6ICM1YzZiYzAgIWRlZmF1bHQ7XG4kaW5kaWdvLTUwMDogIzNmNTFiNSAhZGVmYXVsdDtcbiRpbmRpZ28tNjAwOiAjMzk0OWFiICFkZWZhdWx0O1xuJGluZGlnby03MDA6ICMzMDNmOWYgIWRlZmF1bHQ7XG4kaW5kaWdvLTgwMDogIzI4MzU5MyAhZGVmYXVsdDtcbiRpbmRpZ28tOTAwOiAjMWEyMzdlICFkZWZhdWx0O1xuJGluZGlnby1BMTAwOiAjOGM5ZWZmICFkZWZhdWx0O1xuJGluZGlnby1BMjAwOiAjNTM2ZGZlICFkZWZhdWx0O1xuJGluZGlnby1BNDAwOiAjM2Q1YWZlICFkZWZhdWx0O1xuJGluZGlnby1BNzAwOiAjMzA0ZmZlICFkZWZhdWx0O1xuJGluZGlnbzogJGluZGlnby01MDAgIWRlZmF1bHQ7XG5cblxuJGJsdWUtNTA6ICNlM2YyZmQgIWRlZmF1bHQ7XG4kYmx1ZS0xMDA6ICNiYmRlZmIgIWRlZmF1bHQ7XG4kYmx1ZS0yMDA6ICM5MGNhZjkgIWRlZmF1bHQ7XG4kYmx1ZS0zMDA6ICM2NGI1ZjYgIWRlZmF1bHQ7XG4kYmx1ZS00MDA6ICM0MmE1ZjUgIWRlZmF1bHQ7XG4kYmx1ZS01MDA6ICMyMTk2ZjMgIWRlZmF1bHQ7XG4kYmx1ZS02MDA6ICMxZTg4ZTUgIWRlZmF1bHQ7XG4kYmx1ZS03MDA6ICMxOTc2ZDIgIWRlZmF1bHQ7XG4kYmx1ZS04MDA6ICMxNTY1YzAgIWRlZmF1bHQ7XG4kYmx1ZS05MDA6ICMwZDQ3YTEgIWRlZmF1bHQ7XG4kYmx1ZS1BMTAwOiAjODJiMWZmICFkZWZhdWx0O1xuJGJsdWUtQTIwMDogIzQ0OGFmZiAhZGVmYXVsdDtcbiRibHVlLUE0MDA6ICMyOTc5ZmYgIWRlZmF1bHQ7XG4kYmx1ZS1BNzAwOiAjMjk2MmZmICFkZWZhdWx0O1xuJGJsdWU6ICRibHVlLTUwMCAhZGVmYXVsdDtcblxuXG4kbGlnaHQtYmx1ZS01MDogI2UxZjVmZSAhZGVmYXVsdDtcbiRsaWdodC1ibHVlLTEwMDogI2IzZTVmYyAhZGVmYXVsdDtcbiRsaWdodC1ibHVlLTIwMDogIzgxZDRmYSAhZGVmYXVsdDtcbiRsaWdodC1ibHVlLTMwMDogIzRmYzNmNyAhZGVmYXVsdDtcbiRsaWdodC1ibHVlLTQwMDogIzI5YjZmNiAhZGVmYXVsdDtcbiRsaWdodC1ibHVlLTUwMDogIzAzYTlmNCAhZGVmYXVsdDtcbiRsaWdodC1ibHVlLTYwMDogIzAzOWJlNSAhZGVmYXVsdDtcbiRsaWdodC1ibHVlLTcwMDogIzAyODhkMSAhZGVmYXVsdDtcbiRsaWdodC1ibHVlLTgwMDogIzAyNzdiZCAhZGVmYXVsdDtcbiRsaWdodC1ibHVlLTkwMDogIzAxNTc5YiAhZGVmYXVsdDtcbiRsaWdodC1ibHVlLUExMDA6ICM4MGQ4ZmYgIWRlZmF1bHQ7XG4kbGlnaHQtYmx1ZS1BMjAwOiAjNDBjNGZmICFkZWZhdWx0O1xuJGxpZ2h0LWJsdWUtQTQwMDogIzAwYjBmZiAhZGVmYXVsdDtcbiRsaWdodC1ibHVlLUE3MDA6ICMwMDkxZWEgIWRlZmF1bHQ7XG4kbGlnaHQtYmx1ZTogJGxpZ2h0LWJsdWUtNTAwICFkZWZhdWx0O1xuXG5cbiRjeWFuLTUwOiAjZTBmN2ZhICFkZWZhdWx0O1xuJGN5YW4tMTAwOiAjYjJlYmYyICFkZWZhdWx0O1xuJGN5YW4tMjAwOiAjODBkZWVhICFkZWZhdWx0O1xuJGN5YW4tMzAwOiAjNGRkMGUxICFkZWZhdWx0O1xuJGN5YW4tNDAwOiAjMjZjNmRhICFkZWZhdWx0O1xuJGN5YW4tNTAwOiAjMDBiY2Q0ICFkZWZhdWx0O1xuJGN5YW4tNjAwOiAjMDBhY2MxICFkZWZhdWx0O1xuJGN5YW4tNzAwOiAjMDA5N2E3ICFkZWZhdWx0O1xuJGN5YW4tODAwOiAjMDA4MzhmICFkZWZhdWx0O1xuJGN5YW4tOTAwOiAjMDA2MDY0ICFkZWZhdWx0O1xuJGN5YW4tQTEwMDogIzg0ZmZmZiAhZGVmYXVsdDtcbiRjeWFuLUEyMDA6ICMxOGZmZmYgIWRlZmF1bHQ7XG4kY3lhbi1BNDAwOiAjMDBlNWZmICFkZWZhdWx0O1xuJGN5YW4tQTcwMDogIzAwYjhkNCAhZGVmYXVsdDtcbiRjeWFuOiAkY3lhbi01MDAgIWRlZmF1bHQ7XG5cblxuJHRlYWwtNTA6ICNlMGYyZjEgIWRlZmF1bHQ7XG4kdGVhbC0xMDA6ICNiMmRmZGIgIWRlZmF1bHQ7XG4kdGVhbC0yMDA6ICM4MGNiYzQgIWRlZmF1bHQ7XG4kdGVhbC0zMDA6ICM0ZGI2YWMgIWRlZmF1bHQ7XG4kdGVhbC00MDA6ICMyNmE2OWEgIWRlZmF1bHQ7XG4kdGVhbC01MDA6ICMwMDk2ODggIWRlZmF1bHQ7XG4kdGVhbC02MDA6ICMwMDg5N2IgIWRlZmF1bHQ7XG4kdGVhbC03MDA6ICMwMDc5NmIgIWRlZmF1bHQ7XG4kdGVhbC04MDA6ICMwMDY5NWMgIWRlZmF1bHQ7XG4kdGVhbC05MDA6ICMwMDRkNDAgIWRlZmF1bHQ7XG4kdGVhbC1BMTAwOiAjYTdmZmViICFkZWZhdWx0O1xuJHRlYWwtQTIwMDogIzY0ZmZkYSAhZGVmYXVsdDtcbiR0ZWFsLUE0MDA6ICMxZGU5YjYgIWRlZmF1bHQ7XG4kdGVhbC1BNzAwOiAjMDBiZmE1ICFkZWZhdWx0O1xuJHRlYWw6ICR0ZWFsLTUwMCAhZGVmYXVsdDtcblxuXG4kZ3JlZW4tNTA6ICNlOGY1ZTkgIWRlZmF1bHQ7XG4kZ3JlZW4tMTAwOiAjYzhlNmM5ICFkZWZhdWx0O1xuJGdyZWVuLTIwMDogI2E1ZDZhNyAhZGVmYXVsdDtcbiRncmVlbi0zMDA6ICM4MWM3ODQgIWRlZmF1bHQ7XG4kZ3JlZW4tNDAwOiAjNjZiYjZhICFkZWZhdWx0O1xuJGdyZWVuLTUwMDogIzRjYWY1MCAhZGVmYXVsdDtcbiRncmVlbi02MDA6ICM0M2EwNDcgIWRlZmF1bHQ7XG4kZ3JlZW4tNzAwOiAjMzg4ZTNjICFkZWZhdWx0O1xuJGdyZWVuLTgwMDogIzJlN2QzMiAhZGVmYXVsdDtcbiRncmVlbi05MDA6ICMxYjVlMjAgIWRlZmF1bHQ7XG4kZ3JlZW4tQTEwMDogI2I5ZjZjYSAhZGVmYXVsdDtcbiRncmVlbi1BMjAwOiAjNjlmMGFlICFkZWZhdWx0O1xuJGdyZWVuLUE0MDA6ICMwMGU2NzYgIWRlZmF1bHQ7XG4kZ3JlZW4tQTcwMDogIzAwYzg1MyAhZGVmYXVsdDtcbiRncmVlbjogJGdyZWVuLTUwMCAhZGVmYXVsdDtcblxuXG4kbGlnaHQtZ3JlZW4tNTA6ICNmMWY4ZTkgIWRlZmF1bHQ7XG4kbGlnaHQtZ3JlZW4tMTAwOiAjZGNlZGM4ICFkZWZhdWx0O1xuJGxpZ2h0LWdyZWVuLTIwMDogI2M1ZTFhNSAhZGVmYXVsdDtcbiRsaWdodC1ncmVlbi0zMDA6ICNhZWQ1ODEgIWRlZmF1bHQ7XG4kbGlnaHQtZ3JlZW4tNDAwOiAjOWNjYzY1ICFkZWZhdWx0O1xuJGxpZ2h0LWdyZWVuLTUwMDogIzhiYzM0YSAhZGVmYXVsdDtcbiRsaWdodC1ncmVlbi02MDA6ICM3Y2IzNDIgIWRlZmF1bHQ7XG4kbGlnaHQtZ3JlZW4tNzAwOiAjNjg5ZjM4ICFkZWZhdWx0O1xuJGxpZ2h0LWdyZWVuLTgwMDogIzU1OGIyZiAhZGVmYXVsdDtcbiRsaWdodC1ncmVlbi05MDA6ICMzMzY5MWUgIWRlZmF1bHQ7XG4kbGlnaHQtZ3JlZW4tQTEwMDogI2NjZmY5MCAhZGVmYXVsdDtcbiRsaWdodC1ncmVlbi1BMjAwOiAjYjJmZjU5ICFkZWZhdWx0O1xuJGxpZ2h0LWdyZWVuLUE0MDA6ICM3NmZmMDMgIWRlZmF1bHQ7XG4kbGlnaHQtZ3JlZW4tQTcwMDogIzY0ZGQxNyAhZGVmYXVsdDtcbiRsaWdodC1ncmVlbjogJGxpZ2h0LWdyZWVuLTUwMCAhZGVmYXVsdDtcblxuXG4kbGltZS01MDogI2Y5ZmJlNyAhZGVmYXVsdDtcbiRsaW1lLTEwMDogI2YwZjRjMyAhZGVmYXVsdDtcbiRsaW1lLTIwMDogI2U2ZWU5YyAhZGVmYXVsdDtcbiRsaW1lLTMwMDogI2RjZTc3NSAhZGVmYXVsdDtcbiRsaW1lLTQwMDogI2Q0ZTE1NyAhZGVmYXVsdDtcbiRsaW1lLTUwMDogI2NkZGMzOSAhZGVmYXVsdDtcbiRsaW1lLTYwMDogI2MwY2EzMyAhZGVmYXVsdDtcbiRsaW1lLTcwMDogI2FmYjQyYiAhZGVmYXVsdDtcbiRsaW1lLTgwMDogIzllOWQyNCAhZGVmYXVsdDtcbiRsaW1lLTkwMDogIzgyNzcxNyAhZGVmYXVsdDtcbiRsaW1lLUExMDA6ICNmNGZmODEgIWRlZmF1bHQ7XG4kbGltZS1BMjAwOiAjZWVmZjQxICFkZWZhdWx0O1xuJGxpbWUtQTQwMDogI2M2ZmYwMCAhZGVmYXVsdDtcbiRsaW1lLUE3MDA6ICNhZWVhMDAgIWRlZmF1bHQ7XG4kbGltZTogJGxpbWUtNTAwICFkZWZhdWx0O1xuXG5cbiR5ZWxsb3ctNTA6ICNmZmZkZTcgIWRlZmF1bHQ7XG4keWVsbG93LTEwMDogI2ZmZjljNCAhZGVmYXVsdDtcbiR5ZWxsb3ctMjAwOiAjZmZmNTlkICFkZWZhdWx0O1xuJHllbGxvdy0zMDA6ICNmZmYxNzYgIWRlZmF1bHQ7XG4keWVsbG93LTQwMDogI2ZmZWU1OCAhZGVmYXVsdDtcbiR5ZWxsb3ctNTAwOiAjZmZlYjNiICFkZWZhdWx0O1xuJHllbGxvdy02MDA6ICNmZGQ4MzUgIWRlZmF1bHQ7XG4keWVsbG93LTcwMDogI2ZiYzAyZCAhZGVmYXVsdDtcbiR5ZWxsb3ctODAwOiAjZjlhODI1ICFkZWZhdWx0O1xuJHllbGxvdy05MDA6ICNmNTdmMTcgIWRlZmF1bHQ7XG4keWVsbG93LUExMDA6ICNmZmZmOGQgIWRlZmF1bHQ7XG4keWVsbG93LUEyMDA6ICNmZmZmMDAgIWRlZmF1bHQ7XG4keWVsbG93LUE0MDA6ICNmZmVhMDAgIWRlZmF1bHQ7XG4keWVsbG93LUE3MDA6ICNmZmQ2MDAgIWRlZmF1bHQ7XG4keWVsbG93OiAkeWVsbG93LTUwMCAhZGVmYXVsdDtcblxuXG4kYW1iZXItNTA6ICNmZmY4ZTEgIWRlZmF1bHQ7XG4kYW1iZXItMTAwOiAjZmZlY2IzICFkZWZhdWx0O1xuJGFtYmVyLTIwMDogI2ZmZTA4MiAhZGVmYXVsdDtcbiRhbWJlci0zMDA6ICNmZmQ1NGYgIWRlZmF1bHQ7XG4kYW1iZXItNDAwOiAjZmZjYTI4ICFkZWZhdWx0O1xuJGFtYmVyLTUwMDogI2ZmYzEwNyAhZGVmYXVsdDtcbiRhbWJlci02MDA6ICNmZmIzMDAgIWRlZmF1bHQ7XG4kYW1iZXItNzAwOiAjZmZhMDAwICFkZWZhdWx0O1xuJGFtYmVyLTgwMDogI2ZmOGYwMCAhZGVmYXVsdDtcbiRhbWJlci05MDA6ICNmZjZmMDAgIWRlZmF1bHQ7XG4kYW1iZXItQTEwMDogI2ZmZTU3ZiAhZGVmYXVsdDtcbiRhbWJlci1BMjAwOiAjZmZkNzQwICFkZWZhdWx0O1xuJGFtYmVyLUE0MDA6ICNmZmM0MDAgIWRlZmF1bHQ7XG4kYW1iZXItQTcwMDogI2ZmYWIwMCAhZGVmYXVsdDtcbiRhbWJlcjogJGFtYmVyLTUwMCAhZGVmYXVsdDtcblxuXG4kb3JhbmdlLTUwOiAjZmZmM2UwICFkZWZhdWx0O1xuJG9yYW5nZS0xMDA6ICNmZmUwYjIgIWRlZmF1bHQ7XG4kb3JhbmdlLTIwMDogI2ZmY2M4MCAhZGVmYXVsdDtcbiRvcmFuZ2UtMzAwOiAjZmZiNzRkICFkZWZhdWx0O1xuJG9yYW5nZS00MDA6ICNmZmE3MjYgIWRlZmF1bHQ7XG4kb3JhbmdlLTUwMDogI2ZmOTgwMCAhZGVmYXVsdDtcbiRvcmFuZ2UtNjAwOiAjZmI4YzAwICFkZWZhdWx0O1xuJG9yYW5nZS03MDA6ICNmNTdjMDAgIWRlZmF1bHQ7XG4kb3JhbmdlLTgwMDogI2VmNmMwMCAhZGVmYXVsdDtcbiRvcmFuZ2UtOTAwOiAjZTY1MTAwICFkZWZhdWx0O1xuJG9yYW5nZS1BMTAwOiAjZmZkMTgwICFkZWZhdWx0O1xuJG9yYW5nZS1BMjAwOiAjZmZhYjQwICFkZWZhdWx0O1xuJG9yYW5nZS1BNDAwOiAjZmY5MTAwICFkZWZhdWx0O1xuJG9yYW5nZS1BNzAwOiAjZmY2ZDAwICFkZWZhdWx0O1xuJG9yYW5nZTogJG9yYW5nZS01MDAgIWRlZmF1bHQ7XG5cblxuJGRlZXAtb3JhbmdlLTUwOiAjZmJlOWU3ICFkZWZhdWx0O1xuJGRlZXAtb3JhbmdlLTEwMDogI2ZmY2NiYyAhZGVmYXVsdDtcbiRkZWVwLW9yYW5nZS0yMDA6ICNmZmFiOTEgIWRlZmF1bHQ7XG4kZGVlcC1vcmFuZ2UtMzAwOiAjZmY4YTY1ICFkZWZhdWx0O1xuJGRlZXAtb3JhbmdlLTQwMDogI2ZmNzA0MyAhZGVmYXVsdDtcbiRkZWVwLW9yYW5nZS01MDA6ICNmZjU3MjIgIWRlZmF1bHQ7XG4kZGVlcC1vcmFuZ2UtNjAwOiAjZjQ1MTFlICFkZWZhdWx0O1xuJGRlZXAtb3JhbmdlLTcwMDogI2U2NGExOSAhZGVmYXVsdDtcbiRkZWVwLW9yYW5nZS04MDA6ICNkODQzMTUgIWRlZmF1bHQ7XG4kZGVlcC1vcmFuZ2UtOTAwOiAjYmYzNjBjICFkZWZhdWx0O1xuJGRlZXAtb3JhbmdlLUExMDA6ICNmZjllODAgIWRlZmF1bHQ7XG4kZGVlcC1vcmFuZ2UtQTIwMDogI2ZmNmU0MCAhZGVmYXVsdDtcbiRkZWVwLW9yYW5nZS1BNDAwOiAjZmYzZDAwICFkZWZhdWx0O1xuJGRlZXAtb3JhbmdlLUE3MDA6ICNkZDJjMDAgIWRlZmF1bHQ7XG4kZGVlcC1vcmFuZ2U6ICRkZWVwLW9yYW5nZS01MDAgIWRlZmF1bHQ7XG5cblxuJGJyb3duLTUwOiAjZWZlYmU5ICFkZWZhdWx0O1xuJGJyb3duLTEwMDogI2Q3Y2NjOCAhZGVmYXVsdDtcbiRicm93bi0yMDA6ICNiY2FhYTQgIWRlZmF1bHQ7XG4kYnJvd24tMzAwOiAjYTE4ODdmICFkZWZhdWx0O1xuJGJyb3duLTQwMDogIzhkNmU2MyAhZGVmYXVsdDtcbiRicm93bi01MDA6ICM3OTU1NDggIWRlZmF1bHQ7XG4kYnJvd24tNjAwOiAjNmQ0YzQxICFkZWZhdWx0O1xuJGJyb3duLTcwMDogIzVkNDAzNyAhZGVmYXVsdDtcbiRicm93bi04MDA6ICM0ZTM0MmUgIWRlZmF1bHQ7XG4kYnJvd24tOTAwOiAjM2UyNzIzICFkZWZhdWx0O1xuJGJyb3duLUExMDA6ICNkN2NjYzggIWRlZmF1bHQ7XG4kYnJvd24tQTIwMDogI2JjYWFhNCAhZGVmYXVsdDtcbiRicm93bi1BNDAwOiAjOGQ2ZTYzICFkZWZhdWx0O1xuJGJyb3duLUE3MDA6ICM1ZDQwMzcgIWRlZmF1bHQ7XG4kYnJvd246ICRicm93bi01MDAgIWRlZmF1bHQ7XG5cblxuJGdyZXktNTA6ICNmYWZhZmEgIWRlZmF1bHQ7XG4kZ3JleS0xMDA6ICNmNWY1ZjUgIWRlZmF1bHQ7XG4kZ3JleS0yMDA6ICNlZWVlZWUgIWRlZmF1bHQ7XG4kZ3JleS0zMDA6ICNlMGUwZTAgIWRlZmF1bHQ7XG4kZ3JleS00MDA6ICNiZGJkYmQgIWRlZmF1bHQ7XG4kZ3JleS01MDA6ICM5ZTllOWU7ICAkcmdiLWdyZXktNTAwOiBcIjE1OCwgMTU4LCAxNThcIiAhZGVmYXVsdDtcbiRncmV5LTYwMDogIzc1NzU3NSAhZGVmYXVsdDtcbiRncmV5LTcwMDogIzYxNjE2MSAhZGVmYXVsdDtcbiRncmV5LTgwMDogIzQyNDI0MiAhZGVmYXVsdDtcbiRncmV5LTkwMDogIzIxMjEyMSAhZGVmYXVsdDtcbiRncmV5LUExMDA6ICNmNWY1ZjUgIWRlZmF1bHQ7XG4kZ3JleS1BMjAwOiAjZWVlZWVlICFkZWZhdWx0O1xuJGdyZXktQTQwMDogI2JkYmRiZCAhZGVmYXVsdDtcbiRncmV5LUE3MDA6ICM2MTYxNjEgIWRlZmF1bHQ7XG4kZ3JleTogJGdyZXktNTAwICFkZWZhdWx0O1xuXG5cbiRibHVlLWdyZXktNTA6ICNlY2VmZjEgIWRlZmF1bHQ7XG4kYmx1ZS1ncmV5LTEwMDogI2NmZDhkYyAhZGVmYXVsdDtcbiRibHVlLWdyZXktMjAwOiAjYjBiZWM1ICFkZWZhdWx0O1xuJGJsdWUtZ3JleS0zMDA6ICM5MGE0YWUgIWRlZmF1bHQ7XG4kYmx1ZS1ncmV5LTQwMDogIzc4OTA5YyAhZGVmYXVsdDtcbiRibHVlLWdyZXktNTAwOiAjNjA3ZDhiICFkZWZhdWx0O1xuJGJsdWUtZ3JleS02MDA6ICM1NDZlN2EgIWRlZmF1bHQ7XG4kYmx1ZS1ncmV5LTcwMDogIzQ1NWE2NCAhZGVmYXVsdDtcbiRibHVlLWdyZXktODAwOiAjMzc0NzRmICFkZWZhdWx0O1xuJGJsdWUtZ3JleS05MDA6ICMyNjMyMzggIWRlZmF1bHQ7XG4kYmx1ZS1ncmV5LUExMDA6ICNjZmQ4ZGMgIWRlZmF1bHQ7XG4kYmx1ZS1ncmV5LUEyMDA6ICNiMGJlYzUgIWRlZmF1bHQ7XG4kYmx1ZS1ncmV5LUE0MDA6ICM3ODkwOWMgIWRlZmF1bHQ7XG4kYmx1ZS1ncmV5LUE3MDA6ICM0NTVhNjQgIWRlZmF1bHQ7XG4kYmx1ZS1ncmV5OiAkYmx1ZS1ncmV5LTUwMCAhZGVmYXVsdDtcblxuXG4kYmxhY2s6ICMwMDAwMDA7ICRyZ2ItYmxhY2s6IFwiMCwwLDBcIiAhZGVmYXVsdDtcbiR3aGl0ZTogI2ZmZmZmZjsgJHJnYi13aGl0ZTogXCIyNTUsMjU1LDI1NVwiICFkZWZhdWx0O1xuIiwiLy8gVGhpcyBmaWxlIGhhcyBiZWVuIGF1dG9nZW5lcmF0ZWQgYnkgZ3J1bnQgdGFzayBsZXNzVG9TYXNzLiBBbnkgY2hhbmdlcyB3aWxsIGJlIG92ZXJ3cml0dGVuLlxuXG5AaW1wb3J0ICdfY29sb3JzJztcblxuLy8gVHlwb2dyYXBoeSBlbGVtZW50c1xuJG1kYi1mb250LWZhbWlseTogJ1JvYm90bycsICdIZWx2ZXRpY2EnLCAnQXJpYWwnLCBzYW5zLXNlcmlmICFkZWZhdWx0O1xuJG1kYi10ZXh0LWNvbG9yLWxpZ2h0OiAgdW5xdW90ZShcInJnYmEoI3skcmdiLXdoaXRlfSwgMC44NClcIikgIWRlZmF1bHQ7XG4kbWRiLXRleHQtY29sb3ItbGlnaHQtaGV4OiAkd2hpdGUgIWRlZmF1bHQ7IC8vIGZvciBjb250cmFzdCBmdW5jdGlvbiBpbiBpbnZlcnNlXG4kbWRiLXRleHQtY29sb3ItcHJpbWFyeTogdW5xdW90ZShcInJnYmEoI3skcmdiLWJsYWNrfSwgMC44NylcIikgIWRlZmF1bHQ7XG4kbWRiLXRleHQtY29sb3ItcHJpbWFyeS1oZXg6ICRibGFjayAhZGVmYXVsdDsgLy8gZm9yIGNvbnRyYXN0IGZ1bmN0aW9uIGluIGludmVyc2VcbiRpY29uLWNvbG9yOiByZ2JhKDAsMCwwLDAuNSkgIWRlZmF1bHQ7XG5cblxuJG1kYi1sYWJlbC1jb2xvcjogdW5xdW90ZShcInJnYmEoI3skcmdiLWJsYWNrfSwgMC4yNilcIikgIWRlZmF1bHQ7XG4kbWRiLWxhYmVsLWNvbG9yLXRvZ2dsZS1mb2N1czogdW5xdW90ZShcInJnYmEoI3skcmdiLWJsYWNrfSwgLjU0KVwiKSAhZGVmYXVsdDtcblxuXG4vLyBpbXBvcnQgYnMgdmFyaWFibGVzIGZvciBsZXNzLCBsYXN0IGRlY2xhcmVkIHdpbnMuXG5AaW1wb3J0ICdfaW1wb3J0LWJzLWxlc3MnO1xuXG4vLy0tLVxuLy8gQ29udmVydGVkIGJzIHZhcmlhYmxlc1xuXG4vLyBCb290c3RyYXAgYnJhbmQgY29sb3IgY3VzdG9taXphdGlvblxuJGJyYW5kLXByaW1hcnk6ICR0ZWFsICFkZWZhdWx0O1xuJGJyYW5kLXN1Y2Nlc3M6ICRncmVlbiAhZGVmYXVsdDtcbiRicmFuZC1kYW5nZXI6ICRyZWQgIWRlZmF1bHQ7XG4kYnJhbmQtd2FybmluZzogJGRlZXAtb3JhbmdlICFkZWZhdWx0O1xuJGJyYW5kLWluZm86ICRsaWdodC1ibHVlICFkZWZhdWx0O1xuXG4kYm9yZGVyLXJhZGl1cy1iYXNlOiAycHggIWRlZmF1bHQ7XG4kYm9yZGVyLXJhZGl1cy1zbWFsbDogMXB4ICFkZWZhdWx0O1xuXG4vLyBUeXBvZ3JhcGh5XG4kZm9udC1mYW1pbHktc2Fucy1zZXJpZjogJ1JvYm90bycsICdIZWx2ZXRpY2EnLCAnQXJpYWwnLCBzYW5zLXNlcmlmICFkZWZhdWx0O1xuJGhlYWRpbmdzLWZvbnQtd2VpZ2h0OiAzMDAgIWRlZmF1bHQ7XG5cbiRib2R5LWJnOiAjRUVFRUVFICFkZWZhdWx0O1xuLy8tLS1cblxuLy8gaW1wb3J0IGJzIHZhcmlhYmxlcyBmb3Igc2FzcywgZmlyc3QgZGVjbGFyZWQgd2lucy5cbkBpbXBvcnQgJ19pbXBvcnQtYnMtc2Fzcyc7XG5cbi8vIEJvb3RzdHJhcCBNYXRlcmlhbCBEZXNpZ24gdmFyaWFibGVzIHN0YXJ0IHdpdGggbWRiLVxuJG1kYi1icmFuZC1pbnZlcnNlOiAkaW5kaWdvICFkZWZhdWx0O1xuXG5cbi8qIEFOSU1BVElPTiAqL1xuJG1kYi1hbmltYXRpb24tY3VydmUtZmFzdC1vdXQtc2xvdy1pbjogY3ViaWMtYmV6aWVyKDAuNCwgMCwgMC4yLCAxKSAhZGVmYXVsdDtcbiRtZGItYW5pbWF0aW9uLWN1cnZlLWxpbmVhci1vdXQtc2xvdy1pbjogY3ViaWMtYmV6aWVyKDAsIDAsIDAuMiwgMSkgIWRlZmF1bHQ7XG4kbWRiLWFuaW1hdGlvbi1jdXJ2ZS1mYXN0LW91dC1saW5lYXItaW46IGN1YmljLWJlemllcigwLjQsIDAsIDEsIDEpICFkZWZhdWx0O1xuJG1kYi1hbmltYXRpb24tY3VydmUtZGVmYXVsdDogJG1kYi1hbmltYXRpb24tY3VydmUtZmFzdC1vdXQtc2xvdy1pbiAhZGVmYXVsdDtcblxuXG4vLy0tLVxuLy8gRklYTUU6IFNpbWlsYXIgYnV0IG5vdCBxdWl0ZSB0aGUgc2FtZSBhcyBCb290c3RyYXAgdmFyaWFibGVzXG4vLyBGSVhNRTogdGhlc2UgbmVlZCB0byBlaXRoZXIgYSkgYmUgY29udmVydGVkIHRvICRtZGItIG9yIGIpIGNvbnZlcnRlZCB0byBicyB2YXJpYWJsZXNcbiRjb250cmFzdC1mYWN0b3I6IDQwJSAhZGVmYXVsdDtcbi8vLS0tXG5cblxuXG5cbi8vIC0tLS0tLS0tLS0tLS0tLS0tLS0tXG4vLyBpbnB1dHNcbiRtZGItaW5wdXQtcGxhY2Vob2xkZXItY29sb3I6ICNCREJEQkQgIWRlZmF1bHQ7XG4kbWRiLWlucHV0LXVuZGVybGluZS1jb2xvcjogI0QyRDJEMiAhZGVmYXVsdDtcbiRtZGItbGFiZWwtc3RhdGljLXNpemUtcmF0aW86IDc1IC8gMTAwICFkZWZhdWx0O1xuJG1kYi1oZWxwLWJsb2NrLXNpemUtcmF0aW86IDc1IC8gMTAwICFkZWZhdWx0O1xuXG4kbWRiLWlucHV0LWZvbnQtc2l6ZS1iYXNlOiAxNnB4ICFkZWZhdWx0O1xuJG1kYi1pbnB1dC1mb250LXNpemUtbGFyZ2U6IGNlaWwoKCRmb250LXNpemUtYmFzZSAqIDEuMjUpKSAhZGVmYXVsdDsgLy8gfjIwcHhcbiRtZGItaW5wdXQtZm9udC1zaXplLXNtYWxsOiBjZWlsKCgkZm9udC1zaXplLWJhc2UgKiAwLjc1KSkgIWRlZmF1bHQ7IC8vIH4xMnB4XG5cbi8vIEZJWE1FOiB3aXRoICM3MzMgY3VzdG9taXphdGlvbiBvZiBib290c3RyYXAsIGNvbnNpZGVyIGhvdyB0aGVzZSBjb3VsZCBiZSBiYXNlZCBvbiB0aGUgb3JpZ2luYWwgYnMgY3VzdG9taXplZCB2YXJpYWJsZXNcbi8vKiogVW5pdC1sZXNzIGBsaW5lLWhlaWdodGAgZm9yIHVzZSBpbiBjb21wb25lbnRzIGxpa2UgYnV0dG9ucy5cbiRtZGItaW5wdXQtbGluZS1oZWlnaHQtYmFzZTogICAgICAgICRsaW5lLWhlaWdodC1iYXNlOyAvLzEuNDI4NTcxNDI5ICFkZWZhdWx0OyAvLyAyMC8xNFxuLy8qKiBDb21wdXRlZCBcImxpbmUtaGVpZ2h0XCIgKGBmb250LXNpemVgICogYGxpbmUtaGVpZ2h0YCkgZm9yIHVzZSB3aXRoIGBtYXJnaW5gLCBgcGFkZGluZ2AsIGV0Yy5cbiRtZGItaW5wdXQtbGluZS1oZWlnaHQtY29tcHV0ZWQ6ICAgIGZsb29yKCgkbWRiLWlucHV0LWZvbnQtc2l6ZS1iYXNlICogJG1kYi1pbnB1dC1saW5lLWhlaWdodC1iYXNlKSkgIWRlZmF1bHQ7IC8vIH4yMHB4XG4kbWRiLWlucHV0LWxpbmUtaGVpZ2h0LWxhcmdlOiAgICAgICAgIDEuMzMzMzMzMyAhZGVmYXVsdDsgLy8gZXh0cmEgZGVjaW1hbHMgZm9yIFdpbiA4LjEgQ2hyb21lXG4kbWRiLWlucHV0LWxpbmUtaGVpZ2h0LXNtYWxsOiAgICAgICAgIDEuNSAhZGVmYXVsdDtcblxuLy8jIyBEZWZpbmUgY29tbW9uIHBhZGRpbmcgYW5kIGJvcmRlciByYWRpdXMgc2l6ZXMgYW5kIG1vcmUuIFZhbHVlcyBiYXNlZCBvbiAxNHB4IHRleHQgYW5kIDEuNDI4IGxpbmUtaGVpZ2h0ICh+MjBweCB0byBzdGFydCkuXG4kbWRiLWlucHV0LXBhZGRpbmctYmFzZS12ZXJ0aWNhbDogICAgIDhweCAtIDFweCAhZGVmYXVsdDsgLy8gd2FzIDYuXG4kbWRiLWlucHV0LXBhZGRpbmctYmFzZS1ob3Jpem9udGFsOiAgIDAgIWRlZmF1bHQ7IC8vIHdhcyAxMi5cbiRtZGItbGFiZWwtYXMtcGxhY2Vob2xkZXItc2hpbS1iYXNlOiAgMCAhZGVmYXVsdDsgLy8gbWFudWFsIGFkanVzdG1lbnQgb2YgbGFiZWwgdG9wIHdoZW4gcG9zaXRpb25lZCBhcyBwbGFjZWhvbGRlclxuJG1kYi1sYWJlbC10b3AtbWFyZ2luLWJhc2U6ICAgICAgICAgICAxNnB4ICFkZWZhdWx0O1xuXG4kbWRiLWlucHV0LXBhZGRpbmctbGFyZ2UtdmVydGljYWw6ICAgIDEwcHggLSAxcHggIWRlZmF1bHQ7IC8vIDEwXG4kbWRiLWlucHV0LXBhZGRpbmctbGFyZ2UtaG9yaXpvbnRhbDogIDAgIWRlZmF1bHQ7ICAvLyAxNlxuJG1kYi1sYWJlbC1hcy1wbGFjZWhvbGRlci1zaGltLWxhcmdlOiAtNHB4ICFkZWZhdWx0OyAvLyBtYW51YWwgYWRqdXN0bWVudCBvZiBsYWJlbCB0b3Agd2hlbiBwb3NpdGlvbmVkIGFzIHBsYWNlaG9sZGVyXG4kbWRiLWxhYmVsLXRvcC1tYXJnaW4tbGFyZ2U6ICAgICAgICAgIDE2cHggIWRlZmF1bHQ7XG5cbiRtZGItaW5wdXQtcGFkZGluZy1zbWFsbC12ZXJ0aWNhbDogICAgNHB4IC0gMXB4ICFkZWZhdWx0OyAvLyA1XG4kbWRiLWlucHV0LXBhZGRpbmctc21hbGwtaG9yaXpvbnRhbDogIDAgIWRlZmF1bHQ7IC8vIDEwXG4kbWRiLWxhYmVsLWFzLXBsYWNlaG9sZGVyLXNoaW0tc21hbGw6IDhweCAhZGVmYXVsdDsgLy8gbWFudWFsIGFkanVzdG1lbnQgb2YgbGFiZWwgdG9wIHdoZW4gcG9zaXRpb25lZCBhcyBwbGFjZWhvbGRlclxuJG1kYi1sYWJlbC10b3AtbWFyZ2luLXNtYWxsOiAgICAgICAgICAxMnB4ICFkZWZhdWx0O1xuXG4kbWRiLWlucHV0LXBhZGRpbmcteHMtdmVydGljYWw6ICAgICAgIDJweCAhZGVmYXVsdDsgLy8gMVxuJG1kYi1pbnB1dC1wYWRkaW5nLXhzLWhvcml6b250YWw6ICAgICAwICFkZWZhdWx0OyAvLyA1XG5cbiRtZGItaW5wdXQtYm9yZGVyLXJhZGl1cy1iYXNlOiAgICAgICAgMCAhZGVmYXVsdDtcbiRtZGItaW5wdXQtYm9yZGVyLXJhZGl1cy1sYXJnZTogICAgICAgMCAhZGVmYXVsdDtcbiRtZGItaW5wdXQtYm9yZGVyLXJhZGl1cy1zbWFsbDogICAgICAgMCAhZGVmYXVsdDtcblxuXG4vLyoqIERlZmF1bHQgYC5mb3JtLWNvbnRyb2xgIGhlaWdodFxuJG1kYi1pbnB1dC1oZWlnaHQtYmFzZTogICAgICAgICAgICAgICgkbWRiLWlucHV0LWxpbmUtaGVpZ2h0LWNvbXB1dGVkICsgKCRtZGItaW5wdXQtcGFkZGluZy1iYXNlLXZlcnRpY2FsICogMikgKyAyKSAhZGVmYXVsdDtcbi8vKiogTGFyZ2UgYC5mb3JtLWNvbnRyb2xgIGhlaWdodFxuJG1kYi1pbnB1dC1oZWlnaHQtbGFyZ2U6ICAgICAgICAgICAgIChjZWlsKCRtZGItaW5wdXQtZm9udC1zaXplLWxhcmdlICogJG1kYi1pbnB1dC1saW5lLWhlaWdodC1sYXJnZSkgKyAoJG1kYi1pbnB1dC1wYWRkaW5nLWxhcmdlLXZlcnRpY2FsICogMikgKyAyKSAhZGVmYXVsdDtcbi8vKiogU21hbGwgYC5mb3JtLWNvbnRyb2xgIGhlaWdodFxuJG1kYi1pbnB1dC1oZWlnaHQtc21hbGw6ICAgICAgICAgICAgIChmbG9vcigkbWRiLWlucHV0LWZvbnQtc2l6ZS1zbWFsbCAqICRtZGItaW5wdXQtbGluZS1oZWlnaHQtc21hbGwpICsgKCRtZGItaW5wdXQtcGFkZGluZy1zbWFsbC12ZXJ0aWNhbCAqIDIpICsgMikgIWRlZmF1bHQ7XG5cblxuXG5cbi8vIENhcmRcbiRtZGItY2FyZC1ib2R5LXRleHQ6ICRtZGItdGV4dC1jb2xvci1wcmltYXJ5ICFkZWZhdWx0O1xuJG1kYi1jYXJkLWJvZHktYmFja2dyb3VuZDogI2ZmZiAhZGVmYXVsdDtcbiRtZGItY2FyZC1pbWFnZS1oZWFkbGluZTogI2ZmZiAhZGVmYXVsdDtcblxuJHRleHQtZGlzYWJsZWQ6ICNhOGE4YTggIWRlZmF1bHQ7XG4kYmFja2dyb3VuZC1kaXNhYmxlZDogI2VhZWFlYSAhZGVmYXVsdDtcblxuLy8gQ2hlY2tib3hlc1xuJG1kYi1jaGVja2JveC1zaXplOiAyMHB4ICFkZWZhdWx0O1xuJG1kYi1jaGVja2JveC1hbmltYXRpb24tcmlwcGxlOiA1MDBtcyAhZGVmYXVsdDtcbiRtZGItY2hlY2tib3gtYW5pbWF0aW9uLWNoZWNrOiAwLjNzICFkZWZhdWx0O1xuJG1kYi1jaGVja2JveC1jaGVja2VkLWNvbG9yOiAkYnJhbmQtcHJpbWFyeSAhZGVmYXVsdDtcblxuJG1kYi1jaGVja2JveC1ib3JkZXItc2l6ZTogMnB4ICFkZWZhdWx0O1xuJG1kYi1jaGVja2JveC1sYWJlbC1jb2xvcjogJG1kYi1sYWJlbC1jb2xvciAhZGVmYXVsdDtcbiRtZGItY2hlY2tib3gtYm9yZGVyLWNvbG9yOiAkbWRiLWxhYmVsLWNvbG9yLXRvZ2dsZS1mb2N1cyAhZGVmYXVsdDtcblxuLy8gUG9wb3ZlcnMgYW5kIFBvcHVwc1xuJG1kYi1wb3BvdmVyLWJhY2tncm91bmQ6IHJnYmEoMTAxLCAxMDEsIDEwMSwgMC45KSAhZGVmYXVsdDtcbiRtZGItcG9wb3Zlci1jb2xvcjogI2VjZWNlYyAhZGVmYXVsdDtcblxuLy8gRHJvcGRvd24gTWVudVxuJG1kYi1kcm9wZG93bi1mb250LXNpemU6IDE2cHggIWRlZmF1bHQ7XG5cbi8vIFRvZ2dsZVxuJG1kYi10b2dnbGUtbGFiZWwtY29sb3I6ICRtZGItbGFiZWwtY29sb3IgIWRlZmF1bHQ7XG5cbi8vIFJhZGlvOlxuJG1kYi1yYWRpby1sYWJlbC1jb2xvcjogJG1kYi1sYWJlbC1jb2xvciAhZGVmYXVsdDtcbiRtZGItcmFkaW8tY29sb3Itb2ZmOiAkbWRiLWxhYmVsLWNvbG9yLXRvZ2dsZS1mb2N1cyAhZGVmYXVsdDtcbiRtZGItcmFkaW8tY29sb3Itb246ICRicmFuZC1wcmltYXJ5ICFkZWZhdWx0O1xuXG4vLyBCdXR0b25zOlxuJG1kYi1idG4tZm9udC1zaXplLWJhc2U6IDE0cHggIWRlZmF1bHQ7XG4kbWRiLWJ0bi1mb250LXNpemUtbGc6IDE2cHggIWRlZmF1bHQ7XG4kbWRiLWJ0bi1mb250LXNpemUtc206IDEycHggIWRlZmF1bHQ7XG4kbWRiLWJ0bi1mb250LXNpemUteHM6IDEwcHggIWRlZmF1bHQ7XG5cblxuJG1kYi1idG4tYmFja2dyb3VuZC1jb2xvcjogJGJvZHktYmc7IC8vdHJhbnNwYXJlbnQgIWRlZmF1bHQ7XG4kbWRiLWJ0bi1iYWNrZ3JvdW5kLWNvbG9yLXRleHQ6ICRtZGItdGV4dC1jb2xvci1wcmltYXJ5ICFkZWZhdWx0O1xuXG5cbiRtZGwtYnRuLWJvcmRlci1yYWR1czogMnB4ICFkZWZhdWx0O1xuLy8kbWRiLWJ0bi1wcmltYXJ5LWNvbG9yOiB1bnF1b3RlKFwicmdiYSgjeyRyZ2ItZ3JleS01MDB9LCAwLjIwKVwiKSAhZGVmYXVsdDtcblxuJG1kYi1idG4tZmFiLXNpemU6IDU2cHggIWRlZmF1bHQ7XG4kbWRiLWJ0bi1mYWItc2l6ZS1taW5pOiA0MHB4ICFkZWZhdWx0O1xuJG1kYi1idG4tZmFiLWZvbnQtc2l6ZTogMjRweCAhZGVmYXVsdDtcblxuJG1kYi1idG4taWNvbi1zaXplOiAzMnB4ICFkZWZhdWx0O1xuJG1kYi1idG4taWNvbi1zaXplLW1pbmk6IDI0cHggIWRlZmF1bHQ7XG5cbi8qIFNIQURPV1MgKi9cbiRtZGItc2hhZG93LWtleS11bWJyYS1vcGFjaXR5OiAwLjIgIWRlZmF1bHQ7XG4kbWRiLXNoYWRvdy1rZXktcGVudW1icmEtb3BhY2l0eTogMC4xNCAhZGVmYXVsdDtcbiRtZGItc2hhZG93LWFtYmllbnQtc2hhZG93LW9wYWNpdHk6IDAuMTIgIWRlZmF1bHQ7XG4iLCIvLyBUaGlzIGZpbGUgaGFzIGJlZW4gYXV0b2dlbmVyYXRlZCBieSBncnVudCB0YXNrIGxlc3NUb1Nhc3MuIEFueSBjaGFuZ2VzIHdpbGwgYmUgb3ZlcndyaXR0ZW4uXG5cbkBtaXhpbiBzaGFkb3ctei0xKCl7XG4gIGJveC1zaGFkb3c6XG4gICAgMCAxcHggNnB4IDAgcmdiYSgwLCAwLCAwLCAwLjEyKSxcbiAgICAwIDFweCAgNnB4IDAgcmdiYSgwLCAwLCAwLCAwLjEyKTtcbn1cblxuQG1peGluIHNoYWRvdy16LTEtaG92ZXIoKXtcbiAgYm94LXNoYWRvdzpcbiAgICAwIDVweCAxMXB4IDAgcmdiYSgwLCAwLCAwLCAwLjE4KSxcbiAgICAwIDRweCAxNXB4IDAgcmdiYSgwLCAwLCAwLCAwLjE1KTtcbn1cblxuQG1peGluIHNoYWRvdy16LTIoKXtcbiAgYm94LXNoYWRvdzpcbiAgICAwIDhweCAxN3B4IDAgcmdiYSgwLCAwLCAwLCAwLjIpLFxuICAgIDAgNnB4IDIwcHggMCByZ2JhKDAsIDAsIDAsIDAuMTkpO1xufVxuXG5AbWl4aW4gc2hhZG93LXotMygpe1xuICBib3gtc2hhZG93OlxuICAgIDAgMTJweCAxNXB4IDAgcmdiYSgwLCAwLCAwLCAwLjI0KSxcbiAgICAwIDE3cHggNTBweCAwIHJnYmEoMCwgMCwgMCwgMC4xOSk7XG59XG5cbkBtaXhpbiBzaGFkb3ctei00KCl7XG4gIGJveC1zaGFkb3c6XG4gICAgMCAxNnB4IDI4cHggMCByZ2JhKDAsIDAsIDAsIDAuMjIpLFxuICAgIDAgMjVweCA1NXB4IDAgcmdiYSgwLCAwLCAwLCAwLjIxKTtcbn1cblxuQG1peGluIHNoYWRvdy16LTUoKXtcbiAgYm94LXNoYWRvdzpcbiAgICAwIDI3cHggMjRweCAwIHJnYmEoMCwgMCwgMCwgMC4yKSxcbiAgICAwIDQwcHggNzdweCAwIHJnYmEoMCwgMCwgMCwgMC4yMik7XG59XG5cblxuLyogU2hhZG93cyAoZnJvbSBtZGwgaHR0cDovL3d3dy5nZXRtZGwuaW8vKSAqL1xuXG4vLyBGb2N1cyBzaGFkb3cgbWl4aW4uXG5AbWl4aW4gZm9jdXMtc2hhZG93KCl7XG4gIGJveC1zaGFkb3c6IDAgMCA4cHggcmdiYSgwLDAsMCwuMTgpLFxuICAwIDhweCAxNnB4IHJnYmEoMCwwLDAsLjM2KTtcbn1cblxuQG1peGluIHNoYWRvdy0yZHAoKXtcbiAgYm94LXNoYWRvdzogMCAycHggMnB4IDAgcmdiYSgwLCAwLCAwLCAkbWRiLXNoYWRvdy1rZXktcGVudW1icmEtb3BhY2l0eSksXG4gIDAgM3B4IDFweCAtMnB4IHJnYmEoMCwgMCwgMCwgJG1kYi1zaGFkb3cta2V5LXVtYnJhLW9wYWNpdHkpLFxuICAwIDFweCA1cHggMCByZ2JhKDAsIDAsIDAsICRtZGItc2hhZG93LWFtYmllbnQtc2hhZG93LW9wYWNpdHkpO1xufVxuQG1peGluIHNoYWRvdy0zZHAoKXtcbiAgYm94LXNoYWRvdzogMCAzcHggNHB4IDAgcmdiYSgwLCAwLCAwLCAkbWRiLXNoYWRvdy1rZXktcGVudW1icmEtb3BhY2l0eSksXG4gIDAgM3B4IDNweCAtMnB4IHJnYmEoMCwgMCwgMCwgJG1kYi1zaGFkb3cta2V5LXVtYnJhLW9wYWNpdHkpLFxuICAwIDFweCA4cHggMCByZ2JhKDAsIDAsIDAsICRtZGItc2hhZG93LWFtYmllbnQtc2hhZG93LW9wYWNpdHkpO1xufVxuQG1peGluIHNoYWRvdy00ZHAoKXtcbiAgYm94LXNoYWRvdzogMCA0cHggNXB4IDAgcmdiYSgwLCAwLCAwLCAkbWRiLXNoYWRvdy1rZXktcGVudW1icmEtb3BhY2l0eSksXG4gIDAgMXB4IDEwcHggMCByZ2JhKDAsIDAsIDAsICRtZGItc2hhZG93LWFtYmllbnQtc2hhZG93LW9wYWNpdHkpLFxuICAwIDJweCA0cHggLTFweCByZ2JhKDAsIDAsIDAsICRtZGItc2hhZG93LWtleS11bWJyYS1vcGFjaXR5KTtcbn1cbkBtaXhpbiBzaGFkb3ctNmRwKCl7XG4gIGJveC1zaGFkb3c6IDAgNnB4IDEwcHggMCByZ2JhKDAsIDAsIDAsICRtZGItc2hhZG93LWtleS1wZW51bWJyYS1vcGFjaXR5KSxcbiAgMCAxcHggMThweCAwIHJnYmEoMCwgMCwgMCwgJG1kYi1zaGFkb3ctYW1iaWVudC1zaGFkb3ctb3BhY2l0eSksXG4gIDAgM3B4IDVweCAtMXB4IHJnYmEoMCwgMCwgMCwgJG1kYi1zaGFkb3cta2V5LXVtYnJhLW9wYWNpdHkpO1xufVxuQG1peGluIHNoYWRvdy04ZHAoKXtcbiAgYm94LXNoYWRvdzogMCA4cHggMTBweCAxcHggcmdiYSgwLCAwLCAwLCAkbWRiLXNoYWRvdy1rZXktcGVudW1icmEtb3BhY2l0eSksXG4gIDAgM3B4IDE0cHggMnB4IHJnYmEoMCwgMCwgMCwgJG1kYi1zaGFkb3ctYW1iaWVudC1zaGFkb3ctb3BhY2l0eSksXG4gIDAgNXB4IDVweCAtM3B4IHJnYmEoMCwgMCwgMCwgJG1kYi1zaGFkb3cta2V5LXVtYnJhLW9wYWNpdHkpO1xufVxuXG5AbWl4aW4gc2hhZG93LTE2ZHAoKXtcbiAgYm94LXNoYWRvdzogMCAxNnB4IDI0cHggMnB4IHJnYmEoMCwgMCwgMCwgJG1kYi1zaGFkb3cta2V5LXBlbnVtYnJhLW9wYWNpdHkpLFxuICAwICA2cHggMzBweCA1cHggcmdiYSgwLCAwLCAwLCAkbWRiLXNoYWRvdy1hbWJpZW50LXNoYWRvdy1vcGFjaXR5KSxcbiAgMCAgOHB4IDEwcHggLTVweCByZ2JhKDAsIDAsIDAsICRtZGItc2hhZG93LWtleS11bWJyYS1vcGFjaXR5KTtcbn1cblxuQG1peGluIHNoYWRvdy0yNGRwKCl7XG4gIGJveC1zaGFkb3c6IDAgIDlweCA0NnB4ICA4cHggcmdiYSgwLCAwLCAwLCAkbWRiLXNoYWRvdy1rZXktcGVudW1icmEtb3BhY2l0eSksXG4gIDAgMTFweCAxNXB4IC03cHggcmdiYSgwLCAwLCAwLCAkbWRiLXNoYWRvdy1hbWJpZW50LXNoYWRvdy1vcGFjaXR5KSxcbiAgMCAyNHB4IDM4cHggIDNweCByZ2JhKDAsIDAsIDAsICRtZGItc2hhZG93LWtleS11bWJyYS1vcGFjaXR5KTtcbn1cbiIsIi8vIFRoaXMgZmlsZSBoYXMgYmVlbiBhdXRvZ2VuZXJhdGVkIGJ5IGdydW50IHRhc2sgbGVzc1RvU2Fzcy4gQW55IGNoYW5nZXMgd2lsbCBiZSBvdmVyd3JpdHRlbi5cblxuYm9keSB7XG4gIGJhY2tncm91bmQtY29sb3I6ICRib2R5LWJnO1xuICAmLmludmVyc2Uge1xuICAgIGJhY2tncm91bmQ6ICMzMzMzMzM7XG4gICAgJiwgLmZvcm0tY29udHJvbCB7XG4gICAgICBjb2xvcjogJG1kYi10ZXh0LWNvbG9yLWxpZ2h0O1xuICAgIH1cbiAgICAubW9kYWwsXG4gICAgLnBhbmVsLWRlZmF1bHQsXG4gICAgLmNhcmQge1xuICAgICAgJixcbiAgICAgIC5mb3JtLWNvbnRyb2wge1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiBpbml0aWFsO1xuICAgICAgICBjb2xvcjogaW5pdGlhbDtcbiAgICAgIH1cbiAgICB9XG5cbiAgfVxufVxuXG5cbmJvZHksIGgxLCBoMiwgaDMsIGg0LCBoNSwgaDYsIC5oMSwgLmgyLCAuaDMsIC5oNCB7XG4gIGZvbnQtZmFtaWx5OiAkZm9udC1mYW1pbHktc2Fucy1zZXJpZjtcbiAgZm9udC13ZWlnaHQ6IDMwMDtcbn1cblxuaDUsIGg2e1xuICBmb250LXdlaWdodDogNDAwO1xufVxuXG5hLCBhOmhvdmVyLCBhOmZvY3VzIHtcbiAgY29sb3I6ICRsaW5rLWNvbG9yO1xuXG4gICYgLm1hdGVyaWFsLWljb25zIHtcbiAgICB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlO1xuICB9XG59XG5cbkBpbXBvcnQgJ19mb3JtJztcbkBpbXBvcnQgJ193ZWxsanVtYm8nO1xuQGltcG9ydCAnX2J1dHRvbnMnO1xuQGltcG9ydCAnX2NoZWNrYm94ZXMnO1xuQGltcG9ydCAnX3RvZ2dsZWJ1dHRvbic7XG5AaW1wb3J0ICdfcmFkaW9zJztcbkBpbXBvcnQgJ19pbnB1dHMnO1xuXG5sZWdlbmQge1xuICBib3JkZXItYm90dG9tOiAwO1xufVxuXG5AaW1wb3J0ICdfbGlzdHMnO1xuQGltcG9ydCAnX25hdmJhcic7XG5cbi5kcm9wZG93bi1tZW51IHtcbiAgYm9yZGVyOiAwO1xuICBib3gtc2hhZG93OiAwIDJweCA1cHggMCByZ2JhKDAsIDAsIDAsIDAuMjYpO1xuICAuZGl2aWRlciB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogcmdiYSgwLCAwLCAwLCAuMTIpO1xuICB9XG4gIGxpIHtcbiAgICBvdmVyZmxvdzogaGlkZGVuO1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICBhOmhvdmVyIHtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xuICAgICAgY29sb3I6ICRicmFuZC1wcmltYXJ5O1xuICAgIH1cbiAgfVxufVxuXG5AaW1wb3J0ICdfYWxlcnRzJztcbkBpbXBvcnQgJ19wcm9ncmVzcyc7XG5AaW1wb3J0ICdfdHlwb2dyYXBoeSc7XG5AaW1wb3J0ICdfdGFicyc7XG5AaW1wb3J0ICdfcG9wdXBzJztcbkBpbXBvcnQgJ19jYXJkcyc7XG5AaW1wb3J0ICdfZGlhbG9ncyc7XG5AaW1wb3J0ICdfcGFuZWxzJztcbkBpbXBvcnQgJ19kaXZpZGVycyc7XG5cbi8vIFByZXZlbnQgaGlnaGxpZ2h0IG9uIG1vYmlsZVxuKiB7XG4gIC13ZWJraXQtdGFwLWhpZ2hsaWdodC1jb2xvcjogcmdiYSgyNTUsIDI1NSwgMjU1LCAwKTtcbiAgLXdlYmtpdC10YXAtaGlnaGxpZ2h0LWNvbG9yOiB0cmFuc3BhcmVudDtcbiAgJjpmb2N1cyB7XG4gICAgb3V0bGluZTogMDtcbiAgfVxufVxuXG5cbkBpbXBvcnQgJ190aGVtZXMnO1xuXG4vLyBFeHRlcm5hbCBwbHVnaW5zXG5AaW1wb3J0ICdfcGx1Z2lucyc7XG4iLCIvLyBUaGlzIGZpbGUgaGFzIGJlZW4gYXV0b2dlbmVyYXRlZCBieSBncnVudCB0YXNrIGxlc3NUb1Nhc3MuIEFueSBjaGFuZ2VzIHdpbGwgYmUgb3ZlcndyaXR0ZW4uXG5cbkBtaXhpbiBtZGItbGFiZWwtY29sb3ItdG9nZ2xlLWZvY3VzKCl7XG4gIC8vIG92ZXJyaWRlIGJvb3RzdHJhcCBmb2N1cyBhbmQga2VlcCBhbGwgdGhlIHN0YW5kYXJkIGNvbG9yIChjb3VsZCBiZSBtdWx0aXBsZSByYWRpb3MgaW4gdGhlIGZvcm0gZ3JvdXApXG4gIC5mb3JtLWdyb3VwLmlzLWZvY3VzZWQgJiB7XG4gICAgY29sb3I6ICRtZGItbGFiZWwtY29sb3I7XG5cbiAgICAvLyBvbiBmb2N1cyBqdXN0IGRhcmtlbiB0aGUgc3BlY2lmaWMgbGFiZWxzLCBkbyBub3QgdHVybiB0aGVtIHRvIHRoZSBicmFuZC1wcmltYXJ5XG4gICAgJjpob3ZlcixcbiAgICAmOmZvY3VzIHtcbiAgICAgIGNvbG9yOiAkbWRiLWxhYmVsLWNvbG9yLXRvZ2dsZS1mb2N1cztcbiAgICB9XG5cbiAgICAvLyBjb3JyZWN0IHRoZSBhYm92ZSBmb2N1cyBjb2xvciBmb3IgZGlzYWJsZWQgaXRlbXNcbiAgICBmaWVsZHNldFtkaXNhYmxlZF0gJiB7XG4gICAgICBjb2xvcjogJG1kYi1sYWJlbC1jb2xvcjtcbiAgICB9XG4gIH1cbn1cblxuLmZvcm0taG9yaXpvbnRhbCB7XG5cbiAgLy8gQ29uc2lzdGVudCB2ZXJ0aWNhbCBhbGlnbm1lbnQgb2YgcmFkaW9zIGFuZCBjaGVja2JveGVzXG4gIC5yYWRpbyxcbiAgLmNoZWNrYm94LFxuICAucmFkaW8taW5saW5lLFxuICAuY2hlY2tib3gtaW5saW5lIHtcbiAgICBwYWRkaW5nLXRvcDogMDtcbiAgfVxuXG4gIC5yYWRpbyB7XG4gICAgbWFyZ2luLWJvdHRvbTogMTBweDtcbiAgfVxuXG4gIGxhYmVsIHtcbiAgICB0ZXh0LWFsaWduOiByaWdodDtcbiAgfVxuXG4gIGxhYmVsLmNvbnRyb2wtbGFiZWwge1xuICAgIG1hcmdpbjogMDtcbiAgfVxufVxuIiwiLy8gVGhpcyBmaWxlIGhhcyBiZWVuIGF1dG9nZW5lcmF0ZWQgYnkgZ3J1bnQgdGFzayBsZXNzVG9TYXNzLiBBbnkgY2hhbmdlcyB3aWxsIGJlIG92ZXJ3cml0dGVuLlxuXG5ib2R5IHtcbiAgLmNvbnRhaW5lcixcbiAgLmNvbnRhaW5lci1mbHVpZCB7XG5cbiAgICAud2VsbC53ZWxsLXNtIHtcbiAgICAgIHBhZGRpbmc6IDEwcHg7XG4gICAgfVxuICAgIC53ZWxsLndlbGwtbGcge1xuICAgICAgcGFkZGluZzogMjZweDtcbiAgICB9XG4gICAgLndlbGwsXG4gICAgLmp1bWJvdHJvbiB7XG5cbiAgICAgIGJhY2tncm91bmQtY29sb3I6ICNmZmY7XG4gICAgICBwYWRkaW5nOiAxOXB4O1xuICAgICAgbWFyZ2luLWJvdHRvbTogMjBweDtcbiAgICAgIEBpbmNsdWRlIHNoYWRvdy16LTIoKTtcbiAgICAgIGJvcmRlci1yYWRpdXM6ICRib3JkZXItcmFkaXVzLWJhc2U7XG4gICAgICBib3JkZXI6IDA7XG4gICAgICBwIHtcbiAgICAgICAgZm9udC13ZWlnaHQ6IDMwMDtcbiAgICAgIH1cbiAgICAgIEBpbmNsdWRlIHZhcmlhdGlvbnModW5xdW90ZShcIlwiKSwgdW5xdW90ZShcIlwiKSwgYmFja2dyb3VuZC1jb2xvciwgJHdoaXRlKTtcbiAgICB9XG4gIH1cbn1cbiIsIi8vIFRoaXMgZmlsZSBpcyBOT1QgYXV0b21hdGljYWxseSBjb252ZXJ0ZWQgYW5kIG11c3QgYmUgbWFudWFsbHkgbWVyZ2VkXG5AaW1wb3J0IFwibWl4aW5zLXV0aWxpdGllc1wiO1xuXG4vLyBQbGFjZWhvbGRlciB0ZXh0XG5AbWl4aW4gbWF0ZXJpYWwtcGxhY2Vob2xkZXIoKSB7XG4gICY6Oi1tb3otcGxhY2Vob2xkZXIge0Bjb250ZW50OyB9IC8vIEZpcmVmb3hcbiAgJjotbXMtaW5wdXQtcGxhY2Vob2xkZXIge0Bjb250ZW50OyB9IC8vIEludGVybmV0IEV4cGxvcmVyIDEwK1xuICAmOjotd2Via2l0LWlucHV0LXBsYWNlaG9sZGVyICB7QGNvbnRlbnQ7IH0gLy8gU2FmYXJpIGFuZCBDaHJvbWVcbn1cblxuXG4vLyB2YXJpYXRpb25zKHVucXVvdGUoXCJcIiksIGJhY2tncm91bmQtY29sb3IsICNGRkYpO1xuQG1peGluIHZhcmlhdGlvbnMoJGNvbXBvbmVudCwgJHNlbGVjdG9yLXN1ZmZpeCwgJG1kYi1wYXJhbS0xLCAkY29sb3ItZGVmYXVsdCkge1xuICBAaW5jbHVkZSBnZW5lcmljLXZhcmlhdGlvbnMoJGNvbXBvbmVudCwgJHNlbGVjdG9yLXN1ZmZpeCwgJGNvbG9yLWRlZmF1bHQsIFwidmFyaWF0aW9ucy1jb250ZW50XCIsICRtZGItcGFyYW0tMSk7XG59XG5cbkBtaXhpbiB2YXJpYXRpb25zLWNvbnRlbnQoJGFyZ3MpIHtcbiAgLy9AZGVidWcgXCIje21hcC1nZXQoJGFyZ3MsIG1peGluLW5hbWUpfXsgI3ttYXAtZ2V0KCRhcmdzLCBtYXRlcmlhbC1wYXJhbS0xKX06ICN7bWFwLWdldCgkYXJncywgdmFyaWF0aW9uLWNvbG9yKX07IH1cIjtcbiAgLy9AZGVidWcgXCIje2luc3BlY3QoJGFyZ3MpfVwiO1xuICAvL0BlcnJvciBcImJyZWFrIGhlcmVcIjtcbiAgI3ttYXAtZ2V0KCRhcmdzLCBtYXRlcmlhbC1wYXJhbS0xKX06IG1hcC1nZXQoJGFyZ3MsIHZhcmlhdGlvbi1jb2xvcik7XG59XG5cbkBtaXhpbiBiYWNrZ3JvdW5kLXZhcmlhdGlvbnMoJGNvbXBvbmVudCwgJHNlbGVjdG9yLXN1ZmZpeCwgJGNvbG9yLWRlZmF1bHQpIHtcbiAgQGluY2x1ZGUgZ2VuZXJpYy12YXJpYXRpb25zKCRjb21wb25lbnQsICRzZWxlY3Rvci1zdWZmaXgsICRjb2xvci1kZWZhdWx0LCBcImJhY2tncm91bmQtdmFyaWF0aW9ucy1jb250ZW50XCIsIG51bGwpO1xufVxuXG5AbWl4aW4gYmFja2dyb3VuZC12YXJpYXRpb25zLWNvbnRlbnQoJGFyZ3MpIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogbWFwLWdldCgkYXJncywgdmFyaWF0aW9uLWNvbG9yKTtcbiAgQGlmIChtYXAtZ2V0KCRhcmdzLCB2YXJpYXRpb24tY29sb3IpID09ICRtZGItYnRuLWJhY2tncm91bmQtY29sb3IpIHtcbiAgICBjb2xvcjogJG1kYi10ZXh0LWNvbG9yLXByaW1hcnk7XG4gIH0gQGVsc2Uge1xuICAgIGNvbG9yOiBtYXAtZ2V0KCRhcmdzLCB2YXJpYXRpb24tY29sb3ItdGV4dCk7XG4gIH1cbn1cblxuLy9AbWl4aW4gdGV4dC12YXJpYXRpb25zKCRjb21wb25lbnQsICRzZWxlY3Rvci1zdWZmaXgsICRjb2xvci1kZWZhdWx0KSB7XG4vLyAgQGluY2x1ZGUgZ2VuZXJpYy12YXJpYXRpb25zKCRjb21wb25lbnQsICRzZWxlY3Rvci1zdWZmaXgsICRjb2xvci1kZWZhdWx0LCBcInRleHQtdmFyaWF0aW9ucy1jb250ZW50XCIsIG51bGwpO1xuLy99XG4vL1xuLy9AbWl4aW4gdGV4dC12YXJpYXRpb25zLWNvbnRlbnQoJGFyZ3MpIHtcbi8vICBjb2xvcjogbWFwLWdldCgkYXJncywgdmFyaWF0aW9uLWNvbG9yKTtcbi8vfVxuXG5AbWl4aW4gYnV0dG9uLXZhcmlhdGlvbnMoJGNvbXBvbmVudCwgJHNlbGVjdG9yLXN1ZmZpeCwgJGNvbG9yLWRlZmF1bHQpIHtcbiAgQGluY2x1ZGUgZ2VuZXJpYy12YXJpYXRpb25zKCRjb21wb25lbnQsICRzZWxlY3Rvci1zdWZmaXgsICRjb2xvci1kZWZhdWx0LCBcImJ1dHRvbi12YXJpYXRpb25zLWNvbnRlbnRcIiwgNCUpO1xufVxuXG5AbWl4aW4gYnV0dG9uLXZhcmlhdGlvbnMtY29udGVudCgkYXJncykge1xuICAvL0BkZWJ1ZyBcIiN7aW5zcGVjdCgkYXJncyl9XCI7XG4gICR2YXJpYXRpb24tY29sb3I6IG1hcC1nZXQoJGFyZ3MsIHZhcmlhdGlvbi1jb2xvcik7XG4gICRtZGItcGFyYW0tMTogbWFwLWdldCgkYXJncywgbWF0ZXJpYWwtcGFyYW0tMSk7XG4gIGJhY2tncm91bmQtY29sb3I6IGNvbnRyYXN0LWNvbG9yKCR2YXJpYXRpb24tY29sb3IsXG4gICAgICAgICAgZGFya2VuKCR2YXJpYXRpb24tY29sb3IsICRtZGItcGFyYW0tMSksXG4gICAgICAgICAgbGlnaHRlbigkdmFyaWF0aW9uLWNvbG9yLCAkbWRiLXBhcmFtLTEpKTtcbn1cblxuLy9AbWl4aW4gYmctY29sb3ItdmFyaWF0aW9ucygkY29tcG9uZW50LCAkc2VsZWN0b3Itc3VmZml4LCAkY29sb3ItZGVmYXVsdCwgJG1kYi1wYXJhbS0xKSB7XG4vLyAgQGluY2x1ZGUgZ2VuZXJpYy12YXJpYXRpb25zKCRjb21wb25lbnQsICRzZWxlY3Rvci1zdWZmaXgsICRjb2xvci1kZWZhdWx0LCBcImJnLWNvbG9yLXZhcmlhdGlvbnMtY29udGVudFwiLCAkbWRiLXBhcmFtLTEpO1xuLy99XG4vL1xuLy9AbWl4aW4gYmctY29sb3ItdmFyaWF0aW9ucy1jb250ZW50KCRhcmdzKSB7XG4vLyAgYmFja2dyb3VuZC1jb2xvcjogcmdiYShtYXAtZ2V0KCRhcmdzLCB2YXJpYXRpb24tY29sb3IpLCBtYXAtZ2V0KCRhcmdzLCBtYXRlcmlhbC1wYXJhbS0xKSk7XG4vL31cbi8vXG4vLy8vIGJnLWJveC1zaGFkb3ctdmFyaWF0aW9ucyhcIiBsYWJlbCBpbnB1dFt0eXBlPWNoZWNrYm94XTpjaGVja2VkICsgLnRvZ2dsZTphY3RpdmU6YWZ0ZXJcIiwgJGJyYW5kLXByaW1hcnlcbi8vQG1peGluIGJnLWJveC1zaGFkb3ctdmFyaWF0aW9ucygkY29tcG9uZW50LCAkc2VsZWN0b3Itc3VmZml4LCAkY29sb3ItZGVmYXVsdCkge1xuLy8gIEBpbmNsdWRlIGdlbmVyaWMtdmFyaWF0aW9ucygkY29tcG9uZW50LCAkc2VsZWN0b3Itc3VmZml4LCAkY29sb3ItZGVmYXVsdCwgXCJiZy1ib3gtc2hhZG93LXZhcmlhdGlvbnMtY29udGVudFwiLCBudWxsKTtcbi8vfVxuLy9cbi8vQG1peGluIGJnLWJveC1zaGFkb3ctdmFyaWF0aW9ucy1jb250ZW50KCRhcmdzKXtcbi8vICAkdmFyaWF0aW9uLWNvbG9yOiBtYXAtZ2V0KCRhcmdzLCB2YXJpYXRpb24tY29sb3IpO1xuLy8gIGJveC1zaGFkb3c6IDAgMXB4IDNweCAxcHggcmdiYSgwLDAsMCwwLjQpLCAwIDAgMCAxNXB4IHJnYmEoJHZhcmlhdGlvbi1jb2xvciwgKDEwLzEwMCkpO1xuLy99XG4vL1xuLy8vLyBiZy1pbWctdmFyaWF0aW9ucyhcIiBsYWJlbCBpbnB1dFt0eXBlPWNoZWNrYm94XTpjaGVja2VkICsgLnRvZ2dsZTphY3RpdmU6YWZ0ZXJcIiwgJGJyYW5kLXByaW1hcnlcbi8vQG1peGluIGJnLWltZy12YXJpYXRpb25zKCRjb21wb25lbnQsICRzZWxlY3Rvci1zdWZmaXgsICRjb2xvci1kZWZhdWx0KSB7XG4vLyAgQGluY2x1ZGUgZ2VuZXJpYy12YXJpYXRpb25zKCRjb21wb25lbnQsICRzZWxlY3Rvci1zdWZmaXgsICRjb2xvci1kZWZhdWx0LCBcImJnLWltZy12YXJpYXRpb25zLWNvbnRlbnRcIiwgbnVsbCk7XG4vL31cbi8vXG4vL0BtaXhpbiBiZy1pbWctdmFyaWF0aW9ucy1jb250ZW50KCRhcmdzKXtcbi8vICAkdmFyaWF0aW9uLWNvbG9yOiBtYXAtZ2V0KCRhcmdzLCB2YXJpYXRpb24tY29sb3IpO1xuLy8gIC8vQGRlYnVnIFwiYmctaW1nLXZhcmlhdGlvbnMtY29udGVudCBjYWxsZWQgZm9yICN7bWFwLWdldCgkYXJncywgZXh0cmEpfSAje21hcC1nZXQoJGFyZ3MsIGRlZmF1bHQpfSAje21hcC1nZXQoJGFyZ3MsIHZhcmlhdGlvbi1jb2xvci1uYW1lKX0gI3ttYXAtZ2V0KCRhcmdzLCB2YXJpYXRpb24tY29sb3IpfVwiOyAvLyN7aW5zcGVjdCgkYXJncyl9XCI7XG4vLyAgYmFja2dyb3VuZC1pbWFnZTogbGluZWFyLWdyYWRpZW50KCR2YXJpYXRpb24tY29sb3IsICR2YXJpYXRpb24tY29sb3IpLCBsaW5lYXItZ3JhZGllbnQoJG1kYi1pbnB1dC11bmRlcmxpbmUtY29sb3IsICRtZGItaW5wdXQtdW5kZXJsaW5lLWNvbG9yKTtcbi8vfVxuXG4vLyBuYXZiYXItdmFyaWF0aW9ucyhcIiBsYWJlbCBpbnB1dFt0eXBlPWNoZWNrYm94XTpjaGVja2VkICsgLnRvZ2dsZTphY3RpdmU6YWZ0ZXJcIiwgJGJyYW5kLXByaW1hcnlcbkBtaXhpbiBuYXZiYXItdmFyaWF0aW9ucygkY29tcG9uZW50LCAkc2VsZWN0b3Itc3VmZml4LCAkY29sb3ItZGVmYXVsdCkge1xuICBAaW5jbHVkZSBnZW5lcmljLXZhcmlhdGlvbnMoJGNvbXBvbmVudCwgJHNlbGVjdG9yLXN1ZmZpeCwgJGNvbG9yLWRlZmF1bHQsIFwibmF2YmFyLXZhcmlhdGlvbnMtY29udGVudFwiLCBudWxsKTtcbn1cblxuQG1peGluIG5hdmJhci12YXJpYXRpb25zLWNvbnRlbnQoJGFyZ3Mpe1xuICAkdmFyaWF0aW9uLWNvbG9yOiBtYXAtZ2V0KCRhcmdzLCB2YXJpYXRpb24tY29sb3IpO1xuICAkdmFyaWF0aW9uLWNvbG9yLXRleHQ6IG1hcC1nZXQoJGFyZ3MsIHZhcmlhdGlvbi1jb2xvci10ZXh0KTtcblxuICBiYWNrZ3JvdW5kLWNvbG9yOiAkdmFyaWF0aW9uLWNvbG9yO1xuICBjb2xvcjogJHZhcmlhdGlvbi1jb2xvci10ZXh0O1xuICAvLyBkZWVwbHkgZGVmaW5lZCB0byBvdmVycmlkZSB3ZWxsanVtYm8gY2xhc3Mgd2l0aG91dCAhaW1wb3RhbnQgbmVlZFxuICAubmF2YmFyLWZvcm0gLmZvcm0tZ3JvdXAgaW5wdXQuZm9ybS1jb250cm9sLFxuICAubmF2YmFyLWZvcm0gaW5wdXQuZm9ybS1jb250cm9sIHtcbiAgICBAaW5jbHVkZSBtYXRlcmlhbC1wbGFjZWhvbGRlciB7XG4gICAgICBjb2xvcjogJHZhcmlhdGlvbi1jb2xvci10ZXh0O1xuICAgIH1cbiAgfVxuICAuZHJvcGRvd24tbWVudSB7XG4gICAgYm9yZGVyLXJhZGl1czogJGJvcmRlci1yYWRpdXMtYmFzZTtcbiAgICBsaSA+IGEge1xuICAgICAgZm9udC1zaXplOiAkbWRiLWRyb3Bkb3duLWZvbnQtc2l6ZTtcbiAgICAgIHBhZGRpbmc6IDEzcHggMTZweDtcbiAgICAgICY6aG92ZXIsXG4gICAgICAmOmZvY3VzIHtcbiAgICAgICAgY29sb3I6ICR2YXJpYXRpb24tY29sb3I7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6ICRncmV5LTIwMDtcbiAgICAgIH1cbiAgICB9XG4gICAgLmFjdGl2ZSA+IGEge1xuICAgICAgJjpob3ZlcixcbiAgICAgICY6Zm9jdXMge1xuICAgICAgICBjb2xvcjogJHZhcmlhdGlvbi1jb2xvci10ZXh0O1xuICAgICAgfVxuICAgICAgYmFja2dyb3VuZC1jb2xvcjogJHZhcmlhdGlvbi1jb2xvcjtcbiAgICAgIGNvbG9yOiAkdmFyaWF0aW9uLWNvbG9yLXRleHQ7XG4gICAgfVxuICB9XG59XG5cbi8vIGFsZXJ0LXZhcmlhdGlvbnMoXCJcIiwgJGJyYW5kLXByaW1hcnkpXG5AbWl4aW4gYWxlcnQtdmFyaWF0aW9ucygkY29tcG9uZW50LCAkc2VsZWN0b3Itc3VmZml4LCAkY29sb3ItZGVmYXVsdCkge1xuICBAaW5jbHVkZSBnZW5lcmljLXZhcmlhdGlvbnMoJGNvbXBvbmVudCwgJHNlbGVjdG9yLXN1ZmZpeCwgJGNvbG9yLWRlZmF1bHQsIFwiYWxlcnQtdmFyaWF0aW9ucy1jb250ZW50XCIsIG51bGwpO1xufVxuXG5AbWl4aW4gYWxlcnQtdmFyaWF0aW9ucy1jb250ZW50KCRhcmdzKXtcbiAgJHZhcmlhdGlvbi1jb2xvcjogbWFwLWdldCgkYXJncywgdmFyaWF0aW9uLWNvbG9yKTtcbiAgJHZhcmlhdGlvbi1jb2xvci10ZXh0OiBtYXAtZ2V0KCRhcmdzLCB2YXJpYXRpb24tY29sb3ItdGV4dCk7XG5cbiAgYmFja2dyb3VuZC1jb2xvcjogJHZhcmlhdGlvbi1jb2xvcjtcbiAgY29sb3I6ICR2YXJpYXRpb24tY29sb3ItdGV4dDtcblxuICBhLCAuYWxlcnQtbGluayB7XG4gICAgY29sb3I6ICR2YXJpYXRpb24tY29sb3ItdGV4dDtcbiAgfVxufVxuXG4vLyBpbnRlcnBvbGF0aW9uIG9mIG1peGluLW5hbWUgaXMgbm90IGFsbG93ZWQgZXZpZGVudGx5LCBzbyB3ZSBzdGF0aWNhbGx5IGluY2x1ZGUgYmFzZWQgb24gdGhlIG1peGluLW5hbWUgZ2l2ZW5cbkBtaXhpbiBjYWxsLXZhcmlhdGlvbnMtY29udGVudC1taXhpbigkYXJncykge1xuICAkbWl4aW4tbmFtZTogbWFwLWdldCgkYXJncywgbWl4aW4tbmFtZSk7XG4gIEBpZiAkbWl4aW4tbmFtZSA9PSB2YXJpYXRpb25zLWNvbnRlbnQge1xuICAgIEBpbmNsdWRlIHZhcmlhdGlvbnMtY29udGVudCgkYXJncyk7XG4gIH0gQGVsc2UgaWYgJG1peGluLW5hbWUgPT0gYmFja2dyb3VuZC12YXJpYXRpb25zLWNvbnRlbnQge1xuICAgIEBpbmNsdWRlIGJhY2tncm91bmQtdmFyaWF0aW9ucy1jb250ZW50KCRhcmdzKTtcbiAgfSBAZWxzZSBpZiAkbWl4aW4tbmFtZSA9PSB0ZXh0LXZhcmlhdGlvbnMtY29udGVudCB7XG4gICAgQGluY2x1ZGUgdGV4dC12YXJpYXRpb25zLWNvbnRlbnQoJGFyZ3MpO1xuICB9IEBlbHNlIGlmICRtaXhpbi1uYW1lID09IGJ1dHRvbi12YXJpYXRpb25zLWNvbnRlbnQge1xuICAgIEBpbmNsdWRlIGJ1dHRvbi12YXJpYXRpb25zLWNvbnRlbnQoJGFyZ3MpO1xuICB9IEBlbHNlIGlmICRtaXhpbi1uYW1lID09IGJnLWNvbG9yLXZhcmlhdGlvbnMtY29udGVudCB7XG4gICAgQGluY2x1ZGUgYmctY29sb3ItdmFyaWF0aW9ucy1jb250ZW50KCRhcmdzKTtcbiAgfSBAZWxzZSBpZiAkbWl4aW4tbmFtZSA9PSBiZy1ib3gtc2hhZG93LXZhcmlhdGlvbnMtY29udGVudCB7XG4gICAgQGluY2x1ZGUgYmctYm94LXNoYWRvdy12YXJpYXRpb25zLWNvbnRlbnQoJGFyZ3MpO1xuICB9IEBlbHNlIGlmICRtaXhpbi1uYW1lID09IGJnLWltZy12YXJpYXRpb25zLWNvbnRlbnQge1xuICAgIEBpbmNsdWRlIGJnLWltZy12YXJpYXRpb25zLWNvbnRlbnQoJGFyZ3MpO1xuICB9IEBlbHNlIGlmICRtaXhpbi1uYW1lID09IG5hdmJhci12YXJpYXRpb25zLWNvbnRlbnQge1xuICAgIEBpbmNsdWRlIG5hdmJhci12YXJpYXRpb25zLWNvbnRlbnQoJGFyZ3MpO1xuICB9QGVsc2UgaWYgJG1peGluLW5hbWUgPT0gYWxlcnQtdmFyaWF0aW9ucy1jb250ZW50IHtcbiAgICBAaW5jbHVkZSBhbGVydC12YXJpYXRpb25zLWNvbnRlbnQoJGFyZ3MpO1xuICB9IEBlbHNlIHtcbiAgICBAZXJyb3IgXCJVbmtub3duIG1peGluOiAjeyRtaXhpbi1uYW1lfVwiXG4gIH1cbn1cblxuLy9cbi8vIFRvIHVzZSB0aGlzIG1peGluIHlvdSBzaG91bGQgcGFzcyBhIGZ1bmN0aW9uIGFzIGZpbmFsIHBhcmFtZXRlciB0byBkZWZpbmVcbi8vIHRoZSBzdHlsZS4gSW4gdGhhdCBkZWZpbml0aW9uIHlvdSBjYW4gdXNlIHRoZSBmb2xsb3dpbmcgdmFyaWFibGVzIHRvIGRlZmluZSBpdC5cbi8vXG4vLyAkdmFyaWF0aW9uLWNvbG9yLW5hbWUgLS0tPiBcInJlZFwiLCBcImdyZWVuXCIsIFwiaW5kaWdvXCIgLi4uXG4vLyAkdmFyaWF0aW9uLWNvbG9yLWZ1bGwtbmFtZSAtLS0+IFwicmVkXCIsIFwiZ3JlZW4tNTBcIiwgXCJpbmRpZ28tNDAwXCIgLi4uXG4vLyAkdmFyaWF0aW9uLWNvbG9yIC0tLT4gI2Y0NDMzNiwgI2U4ZjVlOSwgIzVjNmJjMCAuLi5cbi8vICR2YXJpYXRpb24tY29sb3ItdGV4dCAtLS0+IHJnYmEoMjU1LDI1NSwyNTUsMC44NCksIHJnYmEoMCwwLDAsMC44NCksIHJnYmEoMjU1LDI1NSwyNTUsMC44NCkgLi4uXG4vL1xuXG5AbWl4aW4gZ2VuZXJpYy12YXJpYXRpb25zKCRjb21wb25lbnQsICRzZWxlY3Rvci1zdWZmaXgsICRjb2xvci1kZWZhdWx0LCAkbWl4aW4tbmFtZSwgJG1kYi1wYXJhbS0xKSB7XG5cbiAgLy9zZXR1cCBtYXAgdG8gcGFzcyBwYXJhbWV0ZXJzIChpbnN0ZWFkIG9mIHRoZSBpbmNyZWRpYmx5IGxvbmctZXJyb3ItcHJvbmUgbGlzdCBmb3IgZWFjaCBhbmQgZXZlcnkgQGluY2x1ZGUpXG4gICRhcmdzOiAoXG4gICAgICAgICAgLy9leHRyYTogJHNlbGVjdG9yLXN1ZmZpeCxcbiAgICAgICAgICAvL2RlZmF1bHQ6ICRjb2xvci1kZWZhdWx0LFxuICAgICAgICAgIG1peGluLW5hbWU6ICRtaXhpbi1uYW1lLFxuICAgICAgICAgIG1hdGVyaWFsLXBhcmFtLTE6ICRtZGItcGFyYW0tMVxuICApO1xuXG4gIC8vIGJvb3RzdHJhcCBzdHlsZXNcbiAgJiN7JHNlbGVjdG9yLXN1ZmZpeH0sXG4gICYjeyRjb21wb25lbnR9LWRlZmF1bHQjeyRzZWxlY3Rvci1zdWZmaXh9IHtcblxuICAgICRhcmdzLWV4dHJhOiBtYXAtbWVyZ2UoJGFyZ3MsIChcbiAgICAgICAgICAgIHZhcmlhdGlvbi1jb2xvcjogJGNvbG9yLWRlZmF1bHQsXG4gICAgICAgICAgICB2YXJpYXRpb24tY29sb3ItdGV4dDogJG1kYi10ZXh0LWNvbG9yLWxpZ2h0XG4gICAgKSk7XG4gICAgQGluY2x1ZGUgY2FsbC12YXJpYXRpb25zLWNvbnRlbnQtbWl4aW4oJGFyZ3MtZXh0cmEpO1xuICB9XG4gICYjeyRjb21wb25lbnR9LWludmVyc2UjeyRzZWxlY3Rvci1zdWZmaXh9IHtcbiAgICAkYXJncy1pbnZlcnNlOiBtYXAtbWVyZ2UoJGFyZ3MsIChcbiAgICAgICAgICAgIHZhcmlhdGlvbi1jb2xvcjogJG1kYi1icmFuZC1pbnZlcnNlLFxuICAgICAgICAgICAgdmFyaWF0aW9uLWNvbG9yLXRleHQ6IGNvbnRyYXN0LWNvbG9yKCRtZGItYnJhbmQtaW52ZXJzZSwgJG1kYi10ZXh0LWNvbG9yLXByaW1hcnktaGV4LCAkbWRiLXRleHQtY29sb3ItbGlnaHQtaGV4KVxuICAgICkpO1xuICAgIEBpbmNsdWRlIGNhbGwtdmFyaWF0aW9ucy1jb250ZW50LW1peGluKCRhcmdzLWludmVyc2UpO1xuICB9XG4gICYjeyRjb21wb25lbnR9LXByaW1hcnkjeyRzZWxlY3Rvci1zdWZmaXh9IHtcbiAgICAkYXJncy1wcmltYXJ5OiBtYXAtbWVyZ2UoJGFyZ3MsIChcbiAgICAgICAgICAgIHZhcmlhdGlvbi1jb2xvcjogJGJyYW5kLXByaW1hcnksXG4gICAgICAgICAgICB2YXJpYXRpb24tY29sb3ItdGV4dDogJG1kYi10ZXh0LWNvbG9yLWxpZ2h0XG4gICAgKSk7XG4gICAgQGluY2x1ZGUgY2FsbC12YXJpYXRpb25zLWNvbnRlbnQtbWl4aW4oJGFyZ3MtcHJpbWFyeSk7XG4gIH1cbiAgJiN7JGNvbXBvbmVudH0tc3VjY2VzcyN7JHNlbGVjdG9yLXN1ZmZpeH0ge1xuICAgICRhcmdzLXN1Y2Nlc3M6IG1hcC1tZXJnZSgkYXJncywgKFxuICAgICAgICAgICAgdmFyaWF0aW9uLWNvbG9yOiAkYnJhbmQtc3VjY2VzcyxcbiAgICAgICAgICAgIHZhcmlhdGlvbi1jb2xvci10ZXh0OiAkbWRiLXRleHQtY29sb3ItbGlnaHRcbiAgICApKTtcbiAgICBAaW5jbHVkZSBjYWxsLXZhcmlhdGlvbnMtY29udGVudC1taXhpbigkYXJncy1zdWNjZXNzKTtcbiAgfVxuICAmI3skY29tcG9uZW50fS1pbmZvI3skc2VsZWN0b3Itc3VmZml4fSB7XG4gICAgJGFyZ3MtaW5mbzogbWFwLW1lcmdlKCRhcmdzLCAoXG4gICAgICAgICAgICB2YXJpYXRpb24tY29sb3I6ICRicmFuZC1pbmZvLFxuICAgICAgICAgICAgdmFyaWF0aW9uLWNvbG9yLXRleHQ6ICRtZGItdGV4dC1jb2xvci1saWdodFxuICAgICkpO1xuICAgIEBpbmNsdWRlIGNhbGwtdmFyaWF0aW9ucy1jb250ZW50LW1peGluKCRhcmdzLWluZm8pO1xuICB9XG4gICYjeyRjb21wb25lbnR9LXdhcm5pbmcjeyRzZWxlY3Rvci1zdWZmaXh9IHtcbiAgICAkYXJncy13YXJuaW5nOiBtYXAtbWVyZ2UoJGFyZ3MsIChcbiAgICAgICAgICAgIHZhcmlhdGlvbi1jb2xvcjogJGJyYW5kLXdhcm5pbmcsXG4gICAgICAgICAgICB2YXJpYXRpb24tY29sb3ItdGV4dDogJG1kYi10ZXh0LWNvbG9yLWxpZ2h0XG4gICAgKSk7XG4gICAgQGluY2x1ZGUgY2FsbC12YXJpYXRpb25zLWNvbnRlbnQtbWl4aW4oJGFyZ3Mtd2FybmluZyk7XG4gIH1cbiAgJiN7JGNvbXBvbmVudH0tZGFuZ2VyI3skc2VsZWN0b3Itc3VmZml4fSB7XG4gICAgJGFyZ3MtZGFuZ2VyOiBtYXAtbWVyZ2UoJGFyZ3MsIChcbiAgICAgICAgICAgIHZhcmlhdGlvbi1jb2xvcjogJGJyYW5kLWRhbmdlcixcbiAgICAgICAgICAgIHZhcmlhdGlvbi1jb2xvci10ZXh0OiAkbWRiLXRleHQtY29sb3ItbGlnaHRcbiAgICApKTtcbiAgICBAaW5jbHVkZSBjYWxsLXZhcmlhdGlvbnMtY29udGVudC1taXhpbigkYXJncy1kYW5nZXIpO1xuICB9XG59XG4iLCIvLyBUaGlzIGZpbGUgaGFzIGJlZW4gYXV0b2dlbmVyYXRlZCBieSBncnVudCB0YXNrIGxlc3NUb1Nhc3MuIEFueSBjaGFuZ2VzIHdpbGwgYmUgb3ZlcndyaXR0ZW4uXG5cbi8vIHNwZWNpZmljYXRpb246IGh0dHBzOi8vd3d3Lmdvb2dsZS5jb20vZGVzaWduL3NwZWMvY29tcG9uZW50cy9idXR0b25zLmh0bWxcblxuQG1peGluIHR5cG8tYnV0dG9uKCRjb2xvckNvbnRyYXN0OiBmYWxzZSl7XG4gIGZvbnQtc2l6ZTogJG1kYi1idG4tZm9udC1zaXplLWJhc2U7XG4gIGZvbnQtd2VpZ2h0OiA1MDA7XG4gIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG4gIC8vbGluZS1oZWlnaHQ6IDE7XG4gIGxldHRlci1zcGFjaW5nOiAwO1xuXG4gIEBpZiAoJGNvbG9yQ29udHJhc3QpIHtcbiAgICBvcGFjaXR5OiAwLjg3O1xuICB9XG59XG5cbi8vIG1kYiBkZWZhdWx0IGJ1dHRvbnMgYXJlIGZsYXQgYnkgZGVmYXVsdFxuLy8gc3luY2hyb25pemVkIHdpdGggbWRsIDExLzIzLzE1XG4uYnRuLFxuLmlucHV0LWdyb3VwLWJ0biAuYnRuIHtcbiAgYm9yZGVyOiBub25lO1xuICBib3JkZXItcmFkaXVzOiAkYm9yZGVyLXJhZGl1cy1iYXNlO1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIHBhZGRpbmc6IDhweCAzMHB4O1xuICBtYXJnaW46IDEwcHggMXB4O1xuICBAaW5jbHVkZSB0eXBvLWJ1dHRvbigpO1xuICB3aWxsLWNoYW5nZTogYm94LXNoYWRvdywgdHJhbnNmb3JtO1xuICB0cmFuc2l0aW9uOiBib3gtc2hhZG93IDAuMnMgJG1kYi1hbmltYXRpb24tY3VydmUtZmFzdC1vdXQtbGluZWFyLWluLFxuICBiYWNrZ3JvdW5kLWNvbG9yIDAuMnMgJG1kYi1hbmltYXRpb24tY3VydmUtZGVmYXVsdCxcbiAgY29sb3IgMC4ycyAkbWRiLWFuaW1hdGlvbi1jdXJ2ZS1kZWZhdWx0O1xuICBvdXRsaW5lOiAwO1xuICBjdXJzb3I6IHBvaW50ZXI7XG4gIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcblxuICAmOjotbW96LWZvY3VzLWlubmVyIHtcbiAgICBib3JkZXI6IDA7XG4gIH1cblxuICAvLy0tLVxuICAvLyBidG4tZmxhdFxuICBiYWNrZ3JvdW5kOiB0cmFuc3BhcmVudDtcbiAgJjpub3QoLmJ0bi1yYWlzZWQpIHtcbiAgICBAaW5jbHVkZSB2YXJpYXRpb25zKHVucXVvdGUoXCIuYnRuXCIpLCB1bnF1b3RlKFwiXCIpLCBjb2xvciwgJG1kYi10ZXh0LWNvbG9yLXByaW1hcnkpO1xuICAgIGJveC1zaGFkb3c6IG5vbmU7XG5cbiAgICAmOm5vdCguYnRuLWxpbmspIHtcbiAgICAgICY6aG92ZXIsXG4gICAgICAmOmZvY3VzIHtcbiAgICAgICAgLy8gc3BlYzogZmxhdC9saWdodCBiZyBIb3ZlcjogMjAlICM5OTk5OTlcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogcmdiYSgjOTk5OTk5LCAoMjAvMTAwKSk7XG5cbiAgICAgICAgLnRoZW1lLWRhcmsgJiB7XG4gICAgICAgICAgLy8gc3BlYzogZGFyayBiZyBIb3ZlcjogMTUlICNDQ0NDQ0NcbiAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiByZ2JhKCNDQ0NDQ0MsICgxNS8xMDApKTtcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgfVxuXG4gIC8vLS1cbiAgLy8gY29sb3IgdmFyaWF0aW9uc1xuICAmLmJ0bi1yYWlzZWQsXG4gICYuYnRuLWZhYixcbiAgLmJ0bi1ncm91cC1yYWlzZWQgJiB7XG4gICAgQGluY2x1ZGUgYmFja2dyb3VuZC12YXJpYXRpb25zKHVucXVvdGUoXCIuYnRuXCIpLCB1bnF1b3RlKFwiXCIpLCAkbWRiLWJ0bi1iYWNrZ3JvdW5kLWNvbG9yKTtcbiAgfVxuXG4gIC8vLS0tXG4gIC8vIGJ0bi1yYWlzZWRcbiAgJi5idG4tcmFpc2VkLFxuICAuYnRuLWdyb3VwLXJhaXNlZCAmIHtcbiAgICAmOm5vdCguYnRuLWxpbmspIHtcbiAgICAgIEBpbmNsdWRlIHNoYWRvdy0yZHAoKTtcblxuICAgICAgLy8gY29sb3JzIG9uIGhvdmVyLCBmb2N1cywgYWN0aXZlXG4gICAgICAmOmhvdmVyLFxuICAgICAgJjpmb2N1cyxcbiAgICAgICYuYWN0aXZlLFxuICAgICAgJjphY3RpdmUge1xuXG4gICAgICAgIG91dGxpbmU6IDA7XG5cbiAgICAgICAgLy8gRklYTUU6IFNQRUMgLSB0aGlzIHNob3VsZCBiZSB0aGUgNjAwIGNvbG9yLCBob3cgY2FuIHdlIGdldCB0aGF0IHByb2dyYW1tYXRpY2FsbHkgaWYgYXQgYWxsPyBPciBhcmUgd2UgbGltaXRlZCB0byB0aGUgY29sb3IgcGFsZXR0ZSBvbmx5P1xuICAgICAgICAvLyBTQVNTIGNvbnZlcnNpb24gbm90ZTogcGxlYXNlIG1pcnJvciBhbnkgY29udGVudCBjaGFuZ2UgaW4gX21peGlucy1zaGFyZWQuc2NzcyBidXR0b24tdmFyaWF0aW9ucy1jb250ZW50XG4gICAgICAgIEBpbmNsdWRlIGJ1dHRvbi12YXJpYXRpb25zKHVucXVvdGUoXCIuYnRuXCIpLCBcIlwiLCAkbWRiLWJ0bi1iYWNrZ3JvdW5kLWNvbG9yKTtcblxuICAgICAgICAvLyBTcGVjOlxuICAgICAgICAvLyAgLSBSYWlzZWQgTGlnaHQvTGlnaHQgdGhlbWUgbm8gaG92ZXIuXG4gICAgICAgIC8vICAtIFJhaXNlZCBEYXJrL0RhcmsgdGhlbWUgSG92ZXIgY29sb3I6IDYwMFxuICAgICAgICAudGhlbWUtZGFyayAmIHtcbiAgICAgICAgfVxuICAgICAgfVxuXG4gICAgICAvLyBzaGFkb3cgb24gYWN0aXZlXG4gICAgICAmLmFjdGl2ZSxcbiAgICAgICY6YWN0aXZlIHtcbiAgICAgICAgJixcbiAgICAgICAgJjpob3ZlciB7XG4gICAgICAgICAgQGluY2x1ZGUgc2hhZG93LTRkcCgpO1xuICAgICAgICB9XG4gICAgICB9XG5cbiAgICAgIC8vIHNoYWRvdyBvbiBmb2N1c1xuICAgICAgLy8gICBGb2N1cyBzaG91bGQgdGFrZSBwcmVjZWRlbmNlIG92ZXIgYWN0aXZlLCBzbyBzcGVjaWZpY2l0eSBpcyBuZWVkZWRcbiAgICAgICY6Zm9jdXMge1xuICAgICAgICAmLFxuICAgICAgICAmLmFjdGl2ZSxcbiAgICAgICAgJjphY3RpdmUge1xuICAgICAgICAgICYsXG4gICAgICAgICAgJjpob3ZlciB7XG4gICAgICAgICAgICBAaW5jbHVkZSBmb2N1cy1zaGFkb3coKTtcbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gIH1cblxuICAmLmJ0bi1mYWIge1xuICAgIC8vIHNlZSBhYm92ZSBmb3IgY29sb3IgdmFyaWF0aW9uc1xuICAgIGJvcmRlci1yYWRpdXM6IDUwJTtcbiAgICBmb250LXNpemU6ICRtZGItYnRuLWZhYi1mb250LXNpemU7XG4gICAgaGVpZ2h0OiAkbWRiLWJ0bi1mYWItc2l6ZTtcbiAgICBtYXJnaW46IGF1dG87XG4gICAgbWluLXdpZHRoOiAkbWRiLWJ0bi1mYWItc2l6ZTtcbiAgICB3aWR0aDogJG1kYi1idG4tZmFiLXNpemU7XG4gICAgcGFkZGluZzogMDtcbiAgICBvdmVyZmxvdzogaGlkZGVuO1xuICAgIGJveC1zaGFkb3c6IDAgMXB4IDEuNXB4IDAgcmdiYSgwLCAwLCAwLCAwLjEyKSwgMCAxcHggMXB4IDAgcmdiYSgwLCAwLCAwLCAwLjI0KTtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgbGluZS1oZWlnaHQ6IG5vcm1hbDtcblxuICAgIC5yaXBwbGUtY29udGFpbmVyIHtcbiAgICAgIGJvcmRlci1yYWRpdXM6IDUwJTtcbiAgICB9XG5cbiAgICAmLmJ0bi1mYWItbWluaSxcbiAgICAuYnRuLWdyb3VwLXNtICYge1xuICAgICAgaGVpZ2h0OiAkbWRiLWJ0bi1mYWItc2l6ZS1taW5pO1xuICAgICAgbWluLXdpZHRoOiAkbWRiLWJ0bi1mYWItc2l6ZS1taW5pO1xuICAgICAgd2lkdGg6ICRtZGItYnRuLWZhYi1zaXplLW1pbmk7XG5cbiAgICAgICYubWF0ZXJpYWwtaWNvbnMge1xuICAgICAgICB0b3A6ICgkbWRiLWJ0bi1pY29uLXNpemUtbWluaSAtICRtZGItYnRuLWZhYi1mb250LXNpemUpIC8gMjtcbiAgICAgICAgbGVmdDogKCRtZGItYnRuLWljb24tc2l6ZS1taW5pIC0gJG1kYi1idG4tZmFiLWZvbnQtc2l6ZSkgLyAyO1xuICAgICAgfVxuICAgIH1cblxuICAgIGkubWF0ZXJpYWwtaWNvbnMge1xuICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgdG9wOiA1MCU7XG4gICAgICBsZWZ0OiA1MCU7XG4gICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZSgtKCRtZGItYnRuLWZhYi1mb250LXNpemUgLyAyKSwgLSgkbWRiLWJ0bi1mYWItZm9udC1zaXplIC8gMikpO1xuICAgICAgbGluZS1oZWlnaHQ6ICRtZGItYnRuLWZhYi1mb250LXNpemU7XG4gICAgICB3aWR0aDogJG1kYi1idG4tZmFiLWZvbnQtc2l6ZTtcbiAgICB9XG4gIH1cblxuICAvLyBBbGlnbiBpY29ucyBpbnNpZGUgYnV0dG9ucyB3aXRoIHRleHRcbiAgaS5tYXRlcmlhbC1pY29ucyB7XG4gICAgdmVydGljYWwtYWxpZ246IG1pZGRsZTtcbiAgfVxuXG4gIC8vIFNpemUgdmFyaWF0aW9uc1xuICAmLmJ0bi1sZyxcbiAgLmJ0bi1ncm91cC1sZyAmIHtcbiAgICBmb250LXNpemU6ICRtZGItYnRuLWZvbnQtc2l6ZS1sZztcbiAgfVxuICAmLmJ0bi1zbSxcbiAgLmJ0bi1ncm91cC1zbSAmIHtcbiAgICBwYWRkaW5nOiA1cHggMjBweDtcbiAgICBmb250LXNpemU6ICRtZGItYnRuLWZvbnQtc2l6ZS1zbTtcbiAgfVxuICAmLmJ0bi14cyxcbiAgLmJ0bi1ncm91cC14cyAmIHtcbiAgICBwYWRkaW5nOiA0cHggMTVweDtcbiAgICBmb250LXNpemU6ICRtZGItYnRuLWZvbnQtc2l6ZS14cztcbiAgfVxufVxuXG4vLyBEaXNhYmxlZCBidXR0b25zIGFuZCBidXR0b24gZ3JvdXBzXG4uYnRuLFxuLmlucHV0LWdyb3VwLWJ0biAuYnRuLFxuLmJ0bi1ncm91cCxcbi5idG4tZ3JvdXAtdmVydGljYWwge1xuICAvLyBoYXZlIHRvIHJhdGNoZXQgdXAgdGhlIHNwZWNpZmljaXR5IHRvIGtpbGwgZHJvcCBzaGFkb3dzIG9uIGRpc2FibGVkIHJhaXNlZCBidXR0b25zXG4gIGZpZWxkc2V0W2Rpc2FibGVkXVtkaXNhYmxlZF0gJixcbiAgJi5kaXNhYmxlZCxcbiAgJjpkaXNhYmxlZCxcbiAgJltkaXNhYmxlZF1bZGlzYWJsZWRdIHtcbiAgICAvLyBzcGVjOiBsaWdodCB0aGVtZTogRGlzYWJsZWQgdGV4dDogMjYlICMwMDAwMDBcbiAgICBjb2xvcjogcmdiYSgjMDAwMDAwLCAoMjYvMTAwKSk7XG4gICAgLnRoZW1lLWRhcmsgJiB7XG4gICAgICAvLyBzcGVjOiBkYXJrIHRoZW1lOiBEaXNhYmxlZCB0ZXh0OiAzMCUgI0ZGRkZGRlxuICAgICAgY29sb3I6IHJnYmEoI0ZGRkZGRiwgKDMwLzEwMCkpO1xuICAgIH1cblxuICAgIC8vIGZsYXQgYnV0dG9ucyBsb3NlIHRyYW5zcGFyZW5jeVxuICAgIGJhY2tncm91bmQ6IHRyYW5zcGFyZW50O1xuXG4gICAgLy8gbm8gYm94LXNoYWRvdyBvbiByYWlzZWQgLSBuZWVkIHNwZWNpZmljaXR5XG4gICAgJi5idG4tcmFpc2VkLFxuICAgICYuYnRuLWdyb3VwLXJhaXNlZCB7XG4gICAgICAmLFxuICAgICAgJi5hY3RpdmUsXG4gICAgICAmOmFjdGl2ZSxcbiAgICAgICY6Zm9jdXM6bm90KDphY3RpdmUpIHtcbiAgICAgICAgYm94LXNoYWRvdzogbm9uZTtcbiAgICAgIH1cbiAgICB9XG4gIH1cbn1cblxuLy8gYnRuLWdyb3VwIHZhcmlhdGlvbnNcbi5idG4tZ3JvdXAsXG4uYnRuLWdyb3VwLXZlcnRpY2FsIHtcblxuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIC8vYm9yZGVyLXJhZGl1czogMnB4O1xuICBtYXJnaW46IDEwcHggMXB4O1xuXG4gIC8vIHNwZWM6IGh0dHBzOi8vd3d3Lmdvb2dsZS5jb20vZGVzaWduL3NwZWMvY29tcG9uZW50cy9idXR0b25zLmh0bWwjYnV0dG9ucy10b2dnbGUtYnV0dG9uc1xuICAmLm9wZW4ge1xuICAgIC5kcm9wZG93bi10b2dnbGUge1xuICAgICAgLy9ib3gtc2hhZG93OiBub25lO1xuICAgIH1cblxuICAgICYgPiAuZHJvcGRvd24tdG9nZ2xlLmJ0biB7XG4gICAgICBAaW5jbHVkZSB2YXJpYXRpb25zKHVucXVvdGUoXCIuYnRuXCIpLCB1bnF1b3RlKFwiXCIpLCBiYWNrZ3JvdW5kLWNvbG9yLCAkbWRiLWJ0bi1iYWNrZ3JvdW5kLWNvbG9yKTtcbiAgICB9XG4gIH1cblxuICAuZHJvcGRvd24tbWVudSB7XG4gICAgYm9yZGVyLXJhZGl1czogMCAwICRib3JkZXItcmFkaXVzLWJhc2UgJGJvcmRlci1yYWRpdXMtYmFzZTtcbiAgfVxuXG4gICYuYnRuLWdyb3VwLXJhaXNlZCB7XG4gICAgQGluY2x1ZGUgc2hhZG93LTJkcCgpO1xuICB9XG5cbiAgJiAuYnRuICsgLmJ0bixcbiAgLmJ0bixcbiAgLmJ0bjphY3RpdmUsXG4gIC5idG4tZ3JvdXAge1xuICAgIG1hcmdpbjogMDtcbiAgfVxufVxuIiwiLy8gVGhpcyBmaWxlIGhhcyBiZWVuIGF1dG9nZW5lcmF0ZWQgYnkgZ3J1bnQgdGFzayBsZXNzVG9TYXNzLiBBbnkgY2hhbmdlcyB3aWxsIGJlIG92ZXJ3cml0dGVuLlxuXG4vLyBodHRwOi8vd3d3Lmdvb2dsZS5jb20vZGVzaWduL3NwZWMvY29tcG9uZW50cy9zZWxlY3Rpb24tY29udHJvbHMuaHRtbCNzZWxlY3Rpb24tY29udHJvbHMtY2hlY2tib3hcbi5mb3JtLWdyb3VwIHtcbn1cblxuLmNoZWNrYm94IHtcbiAgbGFiZWwge1xuICAgIGN1cnNvcjogcG9pbnRlcjtcbiAgICBwYWRkaW5nLWxlZnQ6IDA7IC8vIFJlc2V0IGZvciBCb290c3RyYXAgcnVsZVxuICAgIGNvbG9yOiAkbWRiLWNoZWNrYm94LWxhYmVsLWNvbG9yO1xuICAgIEBpbmNsdWRlIG1kYi1sYWJlbC1jb2xvci10b2dnbGUtZm9jdXMoKTtcbiAgfVxuXG4gIC8vIEhpZGUgbmF0aXZlIGNoZWNrYm94XG4gIGlucHV0W3R5cGU9Y2hlY2tib3hdIHtcbiAgICBvcGFjaXR5OiAwO1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICBtYXJnaW46IDA7XG4gICAgei1pbmRleDogLTE7XG4gICAgd2lkdGg6IDA7XG4gICAgaGVpZ2h0OiAwO1xuICAgIG92ZXJmbG93OiBoaWRkZW47XG4gICAgbGVmdDogMDtcbiAgICBwb2ludGVyLWV2ZW50czogbm9uZTtcbiAgfVxuXG4gIC5jaGVja2JveC1tYXRlcmlhbCB7XG4gICAgdmVydGljYWwtYWxpZ246IG1pZGRsZTtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgdG9wOiAzcHg7XG4gICAgJjpiZWZvcmUgeyAgLy8gRklYTUU6IGRvY3VtZW50IHdoeSB0aGlzIGlzIG5lY2Vzc2FyeSAoZG9lc24ndCBzZWVtIHRvIGJlIG9uIGNocm9tZSlcbiAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgbGVmdDogMDtcbiAgICAgIGNvbnRlbnQ6IFwiXCI7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiByZ2JhKDAsMCwwLC44NCk7XG4gICAgICBoZWlnaHQ6ICRtZGItY2hlY2tib3gtc2l6ZTtcbiAgICAgIHdpZHRoOiAkbWRiLWNoZWNrYm94LXNpemU7XG4gICAgICBib3JkZXItcmFkaXVzOiAxMDAlO1xuICAgICAgei1pbmRleDogMTtcbiAgICAgIG9wYWNpdHk6IDA7XG4gICAgICBtYXJnaW46IDA7XG4gICAgICB0cmFuc2Zvcm06IHNjYWxlM2QoMi4zLCAyLjMsIDEpO1xuICAgIH1cblxuICAgIC5jaGVjayB7XG4gICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgICB3aWR0aDogJG1kYi1jaGVja2JveC1zaXplO1xuICAgICAgaGVpZ2h0OiAkbWRiLWNoZWNrYm94LXNpemU7XG4gICAgICBib3JkZXI6ICRtZGItY2hlY2tib3gtYm9yZGVyLXNpemUgc29saWQgJG1kYi1jaGVja2JveC1ib3JkZXItY29sb3I7XG4gICAgICBib3JkZXItcmFkaXVzOiAkYm9yZGVyLXJhZGl1cy1iYXNlO1xuICAgICAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgICAgIHotaW5kZXg6IDE7XG4gICAgfVxuICAgIC5jaGVjazpiZWZvcmUge1xuICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgY29udGVudDogXCJcIjtcbiAgICAgIHRyYW5zZm9ybTogcm90YXRlKDQ1ZGVnKTtcbiAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgbWFyZ2luLXRvcDogLTRweDtcbiAgICAgIG1hcmdpbi1sZWZ0OiA2cHg7XG4gICAgICB3aWR0aDogMDtcbiAgICAgIGhlaWdodDogMDtcbiAgICAgIGJveC1zaGFkb3c6XG4gICAgICAgIDAgMCAwIDAsXG4gICAgICAgIDAgMCAwIDAsXG4gICAgICAgIDAgMCAwIDAsXG4gICAgICAgIDAgMCAwIDAsXG4gICAgICAgIDAgMCAwIDAsXG4gICAgICAgIDAgMCAwIDAsXG4gICAgICAgIDAgMCAwIDAgaW5zZXQ7XG4gICAgICBhbmltYXRpb246IGNoZWNrYm94LW9mZjtcbiAgICB9XG4gIH1cblxuICBpbnB1dFt0eXBlPWNoZWNrYm94XSB7XG5cbiAgICAmOmZvY3VzICsgLmNoZWNrYm94LW1hdGVyaWFsIC5jaGVjazphZnRlciB7XG4gICAgICBvcGFjaXR5OiAwLjI7XG4gICAgfVxuXG4gICAgJjpjaGVja2VkIHtcblxuICAgICAgLy8gRklYTUU6IG9uY2Ugd29ya2luZyAtIGNvbWJpbmUgZnVydGhlciB0byByZWR1Y2UgY29kZVxuICAgICAgJiArIC5jaGVja2JveC1tYXRlcmlhbCAuY2hlY2sge1xuICAgICAgICBjb2xvcjogJG1kYi1jaGVja2JveC1jaGVja2VkLWNvbG9yO1xuICAgICAgICBib3JkZXItY29sb3I6ICRtZGItY2hlY2tib3gtY2hlY2tlZC1jb2xvcjtcbiAgICAgIH1cblxuICAgICAgJiArIC5jaGVja2JveC1tYXRlcmlhbCAuY2hlY2s6YmVmb3JlIHtcbiAgICAgICAgY29sb3I6ICRtZGItY2hlY2tib3gtY2hlY2tlZC1jb2xvcjtcbiAgICAgICAgYm94LXNoYWRvdzogMCAwIDAgMTBweCxcbiAgICAgICAgICAxMHB4IC0xMHB4IDAgMTBweCxcbiAgICAgICAgMzJweCAwIDAgMjBweCxcbiAgICAgICAgMHB4IDMycHggMCAyMHB4LFxuICAgICAgICAtNXB4IDVweCAwIDEwcHgsXG4gICAgICAgICAgMjBweCAtMTJweCAwIDExcHg7XG4gICAgICAgIGFuaW1hdGlvbjogY2hlY2tib3gtb24gJG1kYi1jaGVja2JveC1hbmltYXRpb24tY2hlY2sgZm9yd2FyZHM7XG4gICAgICB9XG5cbiAgICAgICYgKyAuY2hlY2tib3gtbWF0ZXJpYWw6YmVmb3JlIHtcbiAgICAgICAgYW5pbWF0aW9uOiByaXBwbGVPbjtcbiAgICAgIH1cblxuICAgICAgJiArIC5jaGVja2JveC1tYXRlcmlhbCAuY2hlY2s6YWZ0ZXIge1xuICAgICAgICAvL2JhY2tncm91bmQtY29sb3I6ICRicmFuZC1zdWNjZXNzOyAvLyBGSVhNRTogc2VlbXMgbGlrZSB0aG8gd3JvbmcgY29sb3IsIHRlc3QgYW5kIG1ha2Ugc3VyZSBpdCBjYW4gYmUgcmVtb3ZlZFxuICAgICAgICBhbmltYXRpb246IHJpcHBsZU9uICRtZGItY2hlY2tib3gtYW5pbWF0aW9uLXJpcHBsZSBmb3J3YXJkczsgLy8gUmlwcGxlIGVmZmVjdCBvbiBjaGVja1xuICAgICAgfVxuICAgIH1cblxuICAgICY6bm90KDpjaGVja2VkKSB7XG4gICAgICAmICsgLmNoZWNrYm94LW1hdGVyaWFsOmJlZm9yZSB7XG4gICAgICAgIGFuaW1hdGlvbjogcmlwcGxlT2ZmO1xuICAgICAgfVxuXG4gICAgICAmICsgLmNoZWNrYm94LW1hdGVyaWFsIC5jaGVjazphZnRlciB7XG4gICAgICAgIGFuaW1hdGlvbjogcmlwcGxlT2ZmICRtZGItY2hlY2tib3gtYW5pbWF0aW9uLXJpcHBsZSBmb3J3YXJkczsgLy8gUmlwcGxlIGVmZmVjdCBvbiB1bmNoZWNrXG4gICAgICB9XG4gICAgfVxuICB9XG5cbiAgLy8gU3R5bGUgZm9yIGRpc2FibGVkIGlucHV0c1xuICBmaWVsZHNldFtkaXNhYmxlZF0gJixcbiAgZmllbGRzZXRbZGlzYWJsZWRdICYgaW5wdXRbdHlwZT1jaGVja2JveF0sXG4gIGlucHV0W3R5cGU9Y2hlY2tib3hdW2Rpc2FibGVkXTpub3QoOmNoZWNrZWQpIH4gLmNoZWNrYm94LW1hdGVyaWFsIC5jaGVjazpiZWZvcmUsXG4gIGlucHV0W3R5cGU9Y2hlY2tib3hdW2Rpc2FibGVkXTpub3QoOmNoZWNrZWQpIH4gLmNoZWNrYm94LW1hdGVyaWFsIC5jaGVjayxcbiAgaW5wdXRbdHlwZT1jaGVja2JveF1bZGlzYWJsZWRdICsgLmNpcmNsZSB7XG4gICAgb3BhY2l0eTogMC41O1xuICB9XG4gIGlucHV0W3R5cGU9Y2hlY2tib3hdW2Rpc2FibGVkXSArIC5jaGVja2JveC1tYXRlcmlhbCAuY2hlY2s6YWZ0ZXIge1xuICAgIGJhY2tncm91bmQtY29sb3I6ICRtZGItdGV4dC1jb2xvci1wcmltYXJ5O1xuICAgIHRyYW5zZm9ybTogcm90YXRlKC00NWRlZyk7XG4gIH1cbn1cblxuLy8gUHJldmVudCBjaGVja2JveCBhbmltYXRpb24gYW5kIHJpcHBsZSBlZmZlY3Qgb24gcGFnZSBsb2FkXG4uaXMtZm9jdXNlZCB7XG4gIC5jaGVja2JveCB7XG4gICAgLmNoZWNrYm94LW1hdGVyaWFsIHtcbiAgICAgIC5jaGVjazpiZWZvcmUge1xuICAgICAgICBhbmltYXRpb246IGNoZWNrYm94LW9mZiAkbWRiLWNoZWNrYm94LWFuaW1hdGlvbi1jaGVjayBmb3J3YXJkcztcbiAgICAgIH1cbiAgICB9XG4gICAgaW5wdXRbdHlwZT1jaGVja2JveF0ge1xuICAgICAgJjpjaGVja2VkIHtcbiAgICAgICAgJiArIC5jaGVja2JveC1tYXRlcmlhbDpiZWZvcmUge1xuICAgICAgICAgIGFuaW1hdGlvbjogcmlwcGxlT24gJG1kYi1jaGVja2JveC1hbmltYXRpb24tcmlwcGxlO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgICAmOm5vdCg6Y2hlY2tlZCkge1xuICAgICAgICAmICsgLmNoZWNrYm94LW1hdGVyaWFsOmJlZm9yZSB7XG4gICAgICAgICAgYW5pbWF0aW9uOiByaXBwbGVPZmYgJG1kYi1jaGVja2JveC1hbmltYXRpb24tcmlwcGxlO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICB9XG59XG5cbkBrZXlmcmFtZXMgY2hlY2tib3gtb24ge1xuICAwJSB7XG4gICAgYm94LXNoYWRvdzpcbiAgICAgIDAgMCAwIDEwcHgsXG4gICAgICAxMHB4IC0xMHB4IDAgMTBweCxcbiAgICAgIDMycHggMCAwIDIwcHgsXG4gICAgICAwcHggMzJweCAwIDIwcHgsXG4gICAgICAtNXB4IDVweCAwIDEwcHgsXG4gICAgICAxNXB4IDJweCAwIDExcHg7XG4gIH1cbiAgNTAlIHtcbiAgICBib3gtc2hhZG93OlxuICAgICAgMCAwIDAgMTBweCxcbiAgICAgIDEwcHggLTEwcHggMCAxMHB4LFxuICAgICAgMzJweCAwIDAgMjBweCxcbiAgICAgIDBweCAzMnB4IDAgMjBweCxcbiAgICAgIC01cHggNXB4IDAgMTBweCxcbiAgICAgIDIwcHggMnB4IDAgMTFweDtcbiAgfVxuICAxMDAlIHtcbiAgICBib3gtc2hhZG93OlxuICAgICAgMCAwIDAgMTBweCxcbiAgICAgIDEwcHggLTEwcHggMCAxMHB4LFxuICAgICAgMzJweCAwIDAgMjBweCxcbiAgICAgIDBweCAzMnB4IDAgMjBweCxcbiAgICAgIC01cHggNXB4IDAgMTBweCxcbiAgICAgIDIwcHggLTEycHggMCAxMXB4O1xuICB9XG59XG5cbkBrZXlmcmFtZXMgY2hlY2tib3gtb2ZmIHtcbiAgMCUge1xuICAgIGJveC1zaGFkb3c6XG4gICAgICAwIDAgMCAxMHB4LFxuICAgICAgMTBweCAtMTBweCAwIDEwcHgsXG4gICAgICAzMnB4IDAgMCAyMHB4LFxuICAgICAgMHB4IDMycHggMCAyMHB4LFxuICAgICAgLTVweCA1cHggMCAxMHB4LFxuICAgICAgMjBweCAtMTJweCAwIDExcHgsXG4gICAgICAwIDAgMCAwIGluc2V0O1xuICB9XG4gIDI1JSB7XG4gICAgYm94LXNoYWRvdzpcbiAgICAgIDAgMCAwIDEwcHgsXG4gICAgICAxMHB4IC0xMHB4IDAgMTBweCxcbiAgICAgIDMycHggMCAwIDIwcHgsXG4gICAgICAwcHggMzJweCAwIDIwcHgsXG4gICAgICAtNXB4IDVweCAwIDEwcHgsXG4gICAgICAyMHB4IC0xMnB4IDAgMTFweCxcbiAgICAgIDAgMCAwIDAgaW5zZXQ7XG4gIH1cbiAgNTAlIHtcbiAgICB0cmFuc2Zvcm06IHJvdGF0ZSg0NWRlZyk7XG4gICAgbWFyZ2luLXRvcDogLTRweDtcbiAgICBtYXJnaW4tbGVmdDogNnB4O1xuICAgIHdpZHRoOiAwO1xuICAgIGhlaWdodDogMDtcbiAgICBib3gtc2hhZG93OlxuICAgICAgMCAwIDAgMTBweCxcbiAgICAgIDEwcHggLTEwcHggMCAxMHB4LFxuICAgICAgMzJweCAwIDAgMjBweCxcbiAgICAgIDBweCAzMnB4IDAgMjBweCxcbiAgICAgIC01cHggNXB4IDAgMTBweCxcbiAgICAgIDE1cHggMnB4IDAgMTFweCxcbiAgICAgIDAgMCAwIDAgaW5zZXQ7XG4gIH1cbiAgNTElIHtcbiAgICB0cmFuc2Zvcm06IHJvdGF0ZSgwZGVnKTtcbiAgICBtYXJnaW4tdG9wOiAtMnB4O1xuICAgIG1hcmdpbi1sZWZ0OiAtMnB4O1xuICAgIHdpZHRoOiAyMHB4O1xuICAgIGhlaWdodDogMjBweDtcbiAgICBib3gtc2hhZG93OlxuICAgICAgMCAwIDAgMCxcbiAgICAgIDAgMCAwIDAsXG4gICAgICAwIDAgMCAwLFxuICAgICAgMCAwIDAgMCxcbiAgICAgIDAgMCAwIDAsXG4gICAgICAwIDAgMCAwLFxuICAgICAgMHB4IDAgMCAxMHB4IGluc2V0O1xuICB9XG4gIDEwMCUge1xuICAgIHRyYW5zZm9ybTogcm90YXRlKDBkZWcpO1xuICAgIG1hcmdpbi10b3A6IC0ycHg7XG4gICAgbWFyZ2luLWxlZnQ6IC0ycHg7XG4gICAgd2lkdGg6IDIwcHg7XG4gICAgaGVpZ2h0OiAyMHB4O1xuICAgIGJveC1zaGFkb3c6XG4gICAgICAwIDAgMCAwLFxuICAgICAgMCAwIDAgMCxcbiAgICAgIDAgMCAwIDAsXG4gICAgICAwIDAgMCAwLFxuICAgICAgMCAwIDAgMCxcbiAgICAgIDAgMCAwIDAsXG4gICAgICAwcHggMCAwIDAgaW5zZXQ7XG4gIH1cbn1cblxuQGtleWZyYW1lcyByaXBwbGVPbiB7XG4gIDAlIHtcbiAgICBvcGFjaXR5OiAwO1xuICB9XG4gIDUwJSB7XG4gICAgb3BhY2l0eTogMC4yO1xuICB9XG4gIDEwMCUge1xuICAgIG9wYWNpdHk6IDA7XG4gIH1cbn1cblxuQGtleWZyYW1lcyByaXBwbGVPZmYge1xuICAwJSB7XG4gICAgb3BhY2l0eTogMDtcbiAgfVxuICA1MCUge1xuICAgIG9wYWNpdHk6IDAuMjtcbiAgfVxuICAxMDAlIHtcbiAgICBvcGFjaXR5OiAwO1xuICB9XG59XG4iLCIvLyBUaGlzIGZpbGUgaGFzIGJlZW4gYXV0b2dlbmVyYXRlZCBieSBncnVudCB0YXNrIGxlc3NUb1Nhc3MuIEFueSBjaGFuZ2VzIHdpbGwgYmUgb3ZlcndyaXR0ZW4uXG5cbi50b2dnbGVidXR0b24ge1xuICB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlO1xuICAmLCBsYWJlbCwgaW5wdXQsIC50b2dnbGUge1xuICAgIHVzZXItc2VsZWN0OiBub25lO1xuICB9XG4gIGxhYmVsIHtcbiAgICBjdXJzb3I6IHBvaW50ZXI7XG4gICAgY29sb3I6ICRtZGItdG9nZ2xlLWxhYmVsLWNvbG9yO1xuICAgIEBpbmNsdWRlIG1kYi1sYWJlbC1jb2xvci10b2dnbGUtZm9jdXMoKTtcblxuICAgIC8vIEhpZGUgb3JpZ2luYWwgY2hlY2tib3hcbiAgICBpbnB1dFt0eXBlPWNoZWNrYm94XSB7XG4gICAgICBvcGFjaXR5OiAwO1xuICAgICAgd2lkdGg6IDA7XG4gICAgICBoZWlnaHQ6IDA7XG4gICAgfVxuXG4gICAgLnRvZ2dsZSB7XG4gICAgICB0ZXh0LWFsaWduOiBsZWZ0OyAvLyBJc3N1ZSAjNzM3IGhvcml6b250YWwgZm9ybVxuICAgIH1cbiAgICAvLyBTd2l0Y2ggYmcgb2ZmIGFuZCBkaXNhYmxlZFxuICAgIC50b2dnbGUsXG4gICAgaW5wdXRbdHlwZT1jaGVja2JveF1bZGlzYWJsZWRdICsgLnRvZ2dsZSB7XG4gICAgICBjb250ZW50OiBcIlwiO1xuICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgICAgd2lkdGg6IDMwcHg7XG4gICAgICBoZWlnaHQ6IDE1cHg7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiByZ2JhKDgwLCA4MCwgODAsIDAuNyk7XG4gICAgICBib3JkZXItcmFkaXVzOiAxNXB4O1xuICAgICAgbWFyZ2luLXJpZ2h0OiAxNXB4O1xuICAgICAgdHJhbnNpdGlvbjogYmFja2dyb3VuZCAwLjNzIGVhc2U7XG4gICAgICB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlO1xuICAgIH1cbiAgICAvLyBIYW5kbGUgb2ZmXG4gICAgLnRvZ2dsZTphZnRlciB7XG4gICAgICBjb250ZW50OiBcIlwiO1xuICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgICAgd2lkdGg6IDIwcHg7XG4gICAgICBoZWlnaHQ6IDIwcHg7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjRjFGMUYxO1xuICAgICAgYm9yZGVyLXJhZGl1czogMjBweDtcbiAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgIGJveC1zaGFkb3c6IDAgMXB4IDNweCAxcHggcmdiYSgwLCAwLCAwLCAwLjQpO1xuICAgICAgbGVmdDogLTVweDtcbiAgICAgIHRvcDogLTJweDtcbiAgICAgIHRyYW5zaXRpb246IGxlZnQgMC4zcyBlYXNlLCBiYWNrZ3JvdW5kIDAuM3MgZWFzZSwgYm94LXNoYWRvdyAwLjFzIGVhc2U7XG4gICAgfVxuICAgIGlucHV0W3R5cGU9Y2hlY2tib3hdIHtcbiAgICAgIC8vIEhhbmRsZSBkaXNhYmxlZFxuICAgICAgJltkaXNhYmxlZF0ge1xuICAgICAgICAmICsgLnRvZ2dsZTphZnRlcixcbiAgICAgICAgJjpjaGVja2VkICsgLnRvZ2dsZTphZnRlciB7XG4gICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogI0JEQkRCRDtcbiAgICAgICAgfVxuICAgICAgfVxuXG4gICAgICAmICsgLnRvZ2dsZTphY3RpdmU6YWZ0ZXIsXG4gICAgICAmW2Rpc2FibGVkXSArIC50b2dnbGU6YWN0aXZlOmFmdGVyIHtcbiAgICAgICAgYm94LXNoYWRvdzogMCAxcHggM3B4IDFweCByZ2JhKDAsIDAsIDAsIDAuNCksIDAgMCAwIDE1cHggcmdiYSgwLCAwLCAwLCAwLjEpO1xuICAgICAgfVxuXG4gICAgICAvLyBSaXBwbGUgb2ZmIGFuZCBkaXNhYmxlZFxuICAgICAgJjpjaGVja2VkICsgLnRvZ2dsZTphZnRlciB7XG4gICAgICAgIGxlZnQ6IDE1cHg7XG4gICAgICB9XG4gICAgfVxuXG4gICAgLy8gc2V0IGJnIHdoZW4gY2hlY2tlZFxuICAgIGlucHV0W3R5cGU9Y2hlY2tib3hdOmNoZWNrZWQge1xuICAgICAgKyAudG9nZ2xlIHtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogcmdiYSgkYnJhbmQtcHJpbWFyeSwgKDUwLzEwMCkpOyAvLyBTd2l0Y2ggYmcgb25cbiAgICAgIH1cblxuICAgICAgKyAudG9nZ2xlOmFmdGVyIHtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJGJyYW5kLXByaW1hcnk7IC8vIEhhbmRsZSBvblxuICAgICAgfVxuXG4gICAgICArIC50b2dnbGU6YWN0aXZlOmFmdGVyIHtcbiAgICAgICAgYm94LXNoYWRvdzogMCAxcHggM3B4IDFweCByZ2JhKDAsIDAsIDAsIDAuNCksIDAgMCAwIDE1cHggcmdiYSgkYnJhbmQtcHJpbWFyeSwgKDEwLzEwMCkpOyAvLyBSaXBwbGUgb25cbiAgICAgIH1cbiAgICB9XG4gIH1cbn1cbiIsIi8vIFRoaXMgZmlsZSBoYXMgYmVlbiBhdXRvZ2VuZXJhdGVkIGJ5IGdydW50IHRhc2sgbGVzc1RvU2Fzcy4gQW55IGNoYW5nZXMgd2lsbCBiZSBvdmVyd3JpdHRlbi5cblxuQG1peGluIHJhZGlvLWNvbG9yKCRjb2xvciwgJG9wYWNpdHkpe1xuICAmIH4gLmNoZWNrLFxuICAmIH4gLmNpcmNsZSB7XG4gICAgb3BhY2l0eTogJG9wYWNpdHk7XG4gIH1cblxuICAmIH4gLmNoZWNrIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkY29sb3I7XG4gIH1cblxuICAmIH4gLmNpcmNsZSB7XG4gICAgYm9yZGVyLWNvbG9yOiAkY29sb3I7XG4gIH1cbn1cblxuLnJhZGlvIHtcbiAgbGFiZWwge1xuICAgIGN1cnNvcjogcG9pbnRlcjtcbiAgICBwYWRkaW5nLWxlZnQ6IDQ1cHg7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIGNvbG9yOiAkbWRiLXJhZGlvLWxhYmVsLWNvbG9yO1xuICAgIEBpbmNsdWRlIG1kYi1sYWJlbC1jb2xvci10b2dnbGUtZm9jdXMoKTtcblxuICAgIHNwYW4ge1xuICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICBsZWZ0OiAxMHB4O1xuICAgICAgdG9wOiAycHg7XG4gICAgICB0cmFuc2l0aW9uLWR1cmF0aW9uOiAwLjJzO1xuICAgIH1cbiAgICAuY2lyY2xlIHtcbiAgICAgIGJvcmRlcjogMnB4IHNvbGlkICRtZGItcmFkaW8tY29sb3Itb2ZmO1xuICAgICAgaGVpZ2h0OiAxNXB4O1xuICAgICAgd2lkdGg6IDE1cHg7XG4gICAgICBib3JkZXItcmFkaXVzOiAxMDAlO1xuICAgIH1cbiAgICAuY2hlY2sge1xuICAgICAgaGVpZ2h0OiAxNXB4O1xuICAgICAgd2lkdGg6IDE1cHg7XG4gICAgICBib3JkZXItcmFkaXVzOiAxMDAlO1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogJG1kYi1yYWRpby1jb2xvci1vbjtcbiAgICAgIHRyYW5zZm9ybTogc2NhbGUzZCgwLCAwLCAwKTtcbiAgICB9XG4gICAgLmNoZWNrOmFmdGVyIHtcbiAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgY29udGVudDogXCJcIjtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6ICRtZGItdGV4dC1jb2xvci1wcmltYXJ5O1xuICAgICAgbGVmdDogLTE4cHg7XG4gICAgICB0b3A6IC0xOHB4O1xuICAgICAgaGVpZ2h0OiA1MHB4O1xuICAgICAgd2lkdGg6IDUwcHg7XG4gICAgICBib3JkZXItcmFkaXVzOiAxMDAlO1xuICAgICAgei1pbmRleDogMTtcbiAgICAgIG9wYWNpdHk6IDA7XG4gICAgICBtYXJnaW46IDA7XG4gICAgICB0cmFuc2Zvcm06IHNjYWxlM2QoMS41LCAxLjUsIDEpO1xuICAgIH1cbiAgICBpbnB1dFt0eXBlPXJhZGlvXTpub3QoOmNoZWNrZWQpIH4gLmNoZWNrOmFmdGVyIHtcbiAgICAgIGFuaW1hdGlvbjogcmlwcGxlT2ZmIDUwMG1zO1xuICAgIH1cbiAgICBpbnB1dFt0eXBlPXJhZGlvXTpjaGVja2VkIH4gLmNoZWNrOmFmdGVyIHtcbiAgICAgIGFuaW1hdGlvbjogcmlwcGxlT247XG4gICAgfVxuICB9XG5cbiAgaW5wdXRbdHlwZT1yYWRpb10ge1xuICAgIG9wYWNpdHk6IDA7XG4gICAgaGVpZ2h0OiAwO1xuICAgIHdpZHRoOiAwO1xuICAgIG92ZXJmbG93OiBoaWRkZW47XG5cbiAgICAmOmNoZWNrZWQge1xuICAgICAgQGluY2x1ZGUgcmFkaW8tY29sb3IoJG1kYi1yYWRpby1jb2xvci1vbiwgMSk7XG4gICAgfVxuICAgICY6Y2hlY2tlZCB+IC5jaGVjayB7XG4gICAgICB0cmFuc2Zvcm06IHNjYWxlM2QoMC41NSwgMC41NSwgMSk7XG4gICAgfVxuICB9XG5cbiAgaW5wdXRbdHlwZT1yYWRpb11bZGlzYWJsZWRdIHtcblxuICAgIC8vIGxpZ2h0IHRoZW1lIHNwZWM6IERpc2FibGVkOiAjMDAwMDAwLCBPcGFjaXR5ICAyNiVcbiAgICBAaW5jbHVkZSByYWRpby1jb2xvcigkYmxhY2ssIDAuMjYpO1xuXG4gICAgLy8gZGFyayB0aGVtZSBzcGVjOiBEaXNhYmxlZDogI0ZGRkZGRiwgT3BhY2l0eSAgMzAlXG4gICAgLnRoZW1lLWRhcmsgJiB7XG4gICAgICBAaW5jbHVkZSByYWRpby1jb2xvcigkd2hpdGUsIDAuMzApO1xuICAgIH1cbiAgfVxufVxuXG4vLyBQcmV2ZW50IHJpcHBsZSBlZmZlY3Qgb24gcGFnZSBsb2FkXG4uaXMtZm9jdXNlZCB7XG4gIC5yYWRpbyB7XG4gICAgaW5wdXRbdHlwZT1yYWRpb106Y2hlY2tlZCB+IC5jaGVjazphZnRlciB7XG4gICAgICBhbmltYXRpb246IHJpcHBsZU9uIDUwMG1zO1xuICAgIH1cbiAgfVxufVxuXG5Aa2V5ZnJhbWVzIHJpcHBsZU9uIHtcbiAgMCUge1xuICAgIG9wYWNpdHk6IDA7XG4gIH1cbiAgNTAlIHtcbiAgICBvcGFjaXR5OiAwLjI7XG4gIH1cbiAgMTAwJSB7XG4gICAgb3BhY2l0eTogMDtcbiAgfVxufVxuXG5Aa2V5ZnJhbWVzIHJpcHBsZU9mZiB7XG4gIDAlIHtcbiAgICBvcGFjaXR5OiAwO1xuICB9XG4gIDUwJSB7XG4gICAgb3BhY2l0eTogMC4yO1xuICB9XG4gIDEwMCUge1xuICAgIG9wYWNpdHk6IDA7XG4gIH1cbn1cbiIsIi8vIFRoaXMgZmlsZSBoYXMgYmVlbiBhdXRvZ2VuZXJhdGVkIGJ5IGdydW50IHRhc2sgbGVzc1RvU2Fzcy4gQW55IGNoYW5nZXMgd2lsbCBiZSBvdmVyd3JpdHRlbi5cblxuLy9cbi8vIEZvcm1zIC0gc2l6aW5nIC0gbWF0ZXJpYWwgLSBtaXJyb3JzIGJvb3RzdHJhcC9mb3Jtcy5sZXNzIHdpdGggY3VzdG9tIHNpemluZ1xuLy9cbi8vIExFQVZFIFRISVMgSURFTlRJQ0FMIFRPIFRIRSBCT09UU1RSQVAgRklMRSAtIERPIE5PVCBDVVNUT01JWkUgSEVSRS5cbi8vXG4vLyBOT1RFOiB0aGlzIGlzIGludGVudGlvbmFsbHkga2VwdCBzdHJ1Y3R1cmFsbHkgX2lkZW50aWNhbF8gdG8gdGhlIGJvb3RzdHJhcC9mb3Jtcy5sZXNzIGZpbGUgdG8gbWFrZSBpdCBlYXNpZXJcbi8vICAgICAgICB0byBpZGVudGlmeSBkaWZmZXJlbmNlcyBpbiBzaXppbmcgYXBwcm9hY2hlcyB0byBmb3JtIGlucHV0cy5cbi8vIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG5cbmxlZ2VuZCB7XG4gIG1hcmdpbi1ib3R0b206ICRtZGItaW5wdXQtbGluZS1oZWlnaHQtY29tcHV0ZWQ7XG4gIGZvbnQtc2l6ZTogKCRtZGItaW5wdXQtZm9udC1zaXplLWJhc2UgKiAxLjUpO1xufVxuXG4vLyBBZGp1c3Qgb3V0cHV0IGVsZW1lbnRcbm91dHB1dCB7XG4gIHBhZGRpbmctdG9wOiAoJG1kYi1pbnB1dC1wYWRkaW5nLWJhc2UtdmVydGljYWwgKyAxKTtcbiAgZm9udC1zaXplOiAkbWRiLWlucHV0LWZvbnQtc2l6ZS1iYXNlO1xuICBsaW5lLWhlaWdodDogJG1kYi1pbnB1dC1saW5lLWhlaWdodC1iYXNlO1xufVxuXG4uZm9ybS1jb250cm9sIHtcbiAgaGVpZ2h0OiAkbWRiLWlucHV0LWhlaWdodC1iYXNlOyAvLyBNYWtlIGlucHV0cyBhdCBsZWFzdCB0aGUgaGVpZ2h0IG9mIHRoZWlyIGJ1dHRvbiBjb3VudGVycGFydCAoYmFzZSBsaW5lLWhlaWdodCArIHBhZGRpbmcgKyBib3JkZXIpXG4gIHBhZGRpbmc6ICRtZGItaW5wdXQtcGFkZGluZy1iYXNlLXZlcnRpY2FsICRtZGItaW5wdXQtcGFkZGluZy1iYXNlLWhvcml6b250YWw7XG4gIGZvbnQtc2l6ZTogJG1kYi1pbnB1dC1mb250LXNpemUtYmFzZTtcbiAgbGluZS1oZWlnaHQ6ICRtZGItaW5wdXQtbGluZS1oZWlnaHQtYmFzZTtcbn1cblxuLy8gU3BlY2lhbCBzdHlsZXMgZm9yIGlPUyB0ZW1wb3JhbCBpbnB1dHNcbi8vXG4vLyBJbiBNb2JpbGUgU2FmYXJpLCBzZXR0aW5nIGBkaXNwbGF5OiBibG9ja2Agb24gdGVtcG9yYWwgaW5wdXRzIGNhdXNlcyB0aGVcbi8vIHRleHQgd2l0aGluIHRoZSBpbnB1dCB0byBiZWNvbWUgdmVydGljYWxseSBtaXNhbGlnbmVkLiBBcyBhIHdvcmthcm91bmQsIHdlXG4vLyBzZXQgYSBwaXhlbCBsaW5lLWhlaWdodCB0aGF0IG1hdGNoZXMgdGhlIGdpdmVuIGhlaWdodCBvZiB0aGUgaW5wdXQsIGJ1dCBvbmx5XG4vLyBmb3IgU2FmYXJpLiBTZWUgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTEzOTg0OFxuLy9cbi8vIE5vdGUgdGhhdCBhcyBvZiA4LjMsIGlPUyBkb2Vzbid0IHN1cHBvcnQgYGRhdGV0aW1lYCBvciBgd2Vla2AuXG5cbkBtZWRpYSBzY3JlZW4gYW5kICgtd2Via2l0LW1pbi1kZXZpY2UtcGl4ZWwtcmF0aW86IDApIHtcbiAgaW5wdXRbdHlwZT1cImRhdGVcIl0sXG4gIGlucHV0W3R5cGU9XCJ0aW1lXCJdLFxuICBpbnB1dFt0eXBlPVwiZGF0ZXRpbWUtbG9jYWxcIl0sXG4gIGlucHV0W3R5cGU9XCJtb250aFwiXSB7XG4gICAgJi5mb3JtLWNvbnRyb2wge1xuICAgICAgbGluZS1oZWlnaHQ6ICRtZGItaW5wdXQtaGVpZ2h0LWJhc2U7XG4gICAgfVxuXG4gICAgJi5pbnB1dC1zbSxcbiAgICAuaW5wdXQtZ3JvdXAtc20gJiB7XG4gICAgICBsaW5lLWhlaWdodDogJG1kYi1pbnB1dC1oZWlnaHQtc21hbGw7XG4gICAgfVxuXG4gICAgJi5pbnB1dC1sZyxcbiAgICAuaW5wdXQtZ3JvdXAtbGcgJiB7XG4gICAgICBsaW5lLWhlaWdodDogJG1kYi1pbnB1dC1oZWlnaHQtbGFyZ2U7XG4gICAgfVxuICB9XG59XG5cbi5yYWRpbyxcbi5jaGVja2JveCB7XG5cbiAgbGFiZWwge1xuICAgIG1pbi1oZWlnaHQ6ICRtZGItaW5wdXQtbGluZS1oZWlnaHQtY29tcHV0ZWQ7IC8vIEVuc3VyZSB0aGUgaW5wdXQgZG9lc24ndCBqdW1wIHdoZW4gdGhlcmUgaXMgbm8gdGV4dFxuICB9XG59XG5cblxuLy8gU3RhdGljIGZvcm0gY29udHJvbCB0ZXh0XG4vL1xuLy8gQXBwbHkgY2xhc3MgdG8gYSBgcGAgZWxlbWVudCB0byBtYWtlIGFueSBzdHJpbmcgb2YgdGV4dCBhbGlnbiB3aXRoIGxhYmVscyBpblxuLy8gYSBob3Jpem9udGFsIGZvcm0gbGF5b3V0LlxuXG4uZm9ybS1jb250cm9sLXN0YXRpYyB7XG4gIC8vIFNpemUgaXQgYXBwcm9wcmlhdGVseSBuZXh0IHRvIHJlYWwgZm9ybSBjb250cm9sc1xuICBwYWRkaW5nLXRvcDogKCRtZGItaW5wdXQtcGFkZGluZy1iYXNlLXZlcnRpY2FsICsgMSk7XG4gIHBhZGRpbmctYm90dG9tOiAoJG1kYi1pbnB1dC1wYWRkaW5nLWJhc2UtdmVydGljYWwgKyAxKTtcbiAgbWluLWhlaWdodDogKCRtZGItaW5wdXQtbGluZS1oZWlnaHQtY29tcHV0ZWQgKyAkbWRiLWlucHV0LWZvbnQtc2l6ZS1iYXNlKTtcbn1cblxuXG4vLyBGb3JtIGNvbnRyb2wgc2l6aW5nXG4vL1xuLy8gUmVsYXRpdmUgdGV4dCBzaXplLCBwYWRkaW5nLCBhbmQgYm9yZGVyLXJhZGlpIGNoYW5nZXMgZm9yIGZvcm0gY29udHJvbHMuIEZvclxuLy8gaG9yaXpvbnRhbCBzaXppbmcsIHdyYXAgY29udHJvbHMgaW4gdGhlIHByZWRlZmluZWQgZ3JpZCBjbGFzc2VzLiBgPHNlbGVjdD5gXG4vLyBlbGVtZW50IGdldHMgc3BlY2lhbCBsb3ZlIGJlY2F1c2UgaXQncyBzcGVjaWFsLCBhbmQgdGhhdCdzIGEgZmFjdCFcblxuLy8gbWl4aW4gcHVsbGVkIGZyb20gYm9vdHN0cmFwIGFuZCBhbHRlcmVkIGZvciBsZXNzL3Nhc3MgY29tcGF0aWJpbGl0eSB3aXRoIHNhc3MgcGFyZW50IGhhY2suXG4vLyAgYm9vdHN0cmFwLXNhc3MgaGFzIHRoaXMgb25lLCBidXQgd2Ugd291bGQgaGF2ZSB0byB0aGVuIGNvbnZlcnQgaXQgYmFjayB0byBsZXNzLiAgY2hpY2tlbiBtZWV0IGVnZy5cbkBtaXhpbiBpbnB1dC1zaXplKCRwYXJlbnQsICRtZGItaW5wdXQtaGVpZ2h0LCAkcGFkZGluZy12ZXJ0aWNhbCwgJHBhZGRpbmctaG9yaXpvbnRhbCwgJGZvbnQtc2l6ZSwgJGxpbmUtaGVpZ2h0LCAkYm9yZGVyLXJhZGl1cyl7XG5cbiAgI3skcGFyZW50fSB7XG4gICAgaGVpZ2h0OiAkbWRiLWlucHV0LWhlaWdodDtcbiAgICBwYWRkaW5nOiAkcGFkZGluZy12ZXJ0aWNhbCAkcGFkZGluZy1ob3Jpem9udGFsO1xuICAgIGZvbnQtc2l6ZTogJGZvbnQtc2l6ZTtcbiAgICBsaW5lLWhlaWdodDogJGxpbmUtaGVpZ2h0O1xuICAgIGJvcmRlci1yYWRpdXM6ICRib3JkZXItcmFkaXVzO1xuICB9XG5cbiAgc2VsZWN0I3skcGFyZW50fSB7XG4gICAgaGVpZ2h0OiAkbWRiLWlucHV0LWhlaWdodDtcbiAgICBsaW5lLWhlaWdodDogJG1kYi1pbnB1dC1oZWlnaHQ7XG4gIH1cblxuICB0ZXh0YXJlYSN7JHBhcmVudH0sXG4gIHNlbGVjdFttdWx0aXBsZV0jeyRwYXJlbnR9IHtcbiAgICBoZWlnaHQ6IGF1dG87XG4gIH1cbn1cblxuXG5cbi8vIEZvcm0gY29udHJvbCBzaXppbmdcbi8vXG4vLyBCdWlsZCBvbiBgLmZvcm0tY29udHJvbGAgd2l0aCBtb2RpZmllciBjbGFzc2VzIHRvIGRlY3JlYXNlIG9yIGluY3JlYXNlIHRoZVxuLy8gaGVpZ2h0IGFuZCBmb250LXNpemUgb2YgZm9ybSBjb250cm9scy5cbi8vXG4vLyBUaGUgYC5mb3JtLWdyb3VwLSogZm9ybS1jb250cm9sYCB2YXJpYXRpb25zIGFyZSBzYWRseSBkdXBsaWNhdGVkIHRvIGF2b2lkIHRoZVxuLy8gaXNzdWUgZG9jdW1lbnRlZCBpbiBodHRwczovL2dpdGh1Yi5jb20vdHdicy9ib290c3RyYXAvaXNzdWVzLzE1MDc0LlxuLmlucHV0LXNtIHtcbiAgQGluY2x1ZGUgaW5wdXQtc2l6ZSh1bnF1b3RlKFwiLmlucHV0LXNtXCIpLCAkbWRiLWlucHV0LWhlaWdodC1zbWFsbCwgJG1kYi1pbnB1dC1wYWRkaW5nLXNtYWxsLXZlcnRpY2FsLCAkbWRiLWlucHV0LXBhZGRpbmctc21hbGwtaG9yaXpvbnRhbCwgJG1kYi1pbnB1dC1mb250LXNpemUtc21hbGwsICRtZGItaW5wdXQtbGluZS1oZWlnaHQtc21hbGwsICRtZGItaW5wdXQtYm9yZGVyLXJhZGl1cy1zbWFsbCk7XG59XG4uZm9ybS1ncm91cC1zbSB7XG4gIC5mb3JtLWNvbnRyb2wge1xuICAgIGhlaWdodDogJG1kYi1pbnB1dC1oZWlnaHQtc21hbGw7XG4gICAgcGFkZGluZzogJG1kYi1pbnB1dC1wYWRkaW5nLXNtYWxsLXZlcnRpY2FsICRtZGItaW5wdXQtcGFkZGluZy1zbWFsbC1ob3Jpem9udGFsO1xuICAgIGZvbnQtc2l6ZTogJG1kYi1pbnB1dC1mb250LXNpemUtc21hbGw7XG4gICAgbGluZS1oZWlnaHQ6ICRtZGItaW5wdXQtbGluZS1oZWlnaHQtc21hbGw7XG4gIH1cbiAgc2VsZWN0LmZvcm0tY29udHJvbCB7XG4gICAgaGVpZ2h0OiAkbWRiLWlucHV0LWhlaWdodC1zbWFsbDtcbiAgICBsaW5lLWhlaWdodDogJG1kYi1pbnB1dC1oZWlnaHQtc21hbGw7XG4gIH1cbiAgdGV4dGFyZWEuZm9ybS1jb250cm9sLFxuICBzZWxlY3RbbXVsdGlwbGVdLmZvcm0tY29udHJvbCB7XG4gICAgaGVpZ2h0OiBhdXRvO1xuICB9XG4gIC5mb3JtLWNvbnRyb2wtc3RhdGljIHtcbiAgICBoZWlnaHQ6ICRtZGItaW5wdXQtaGVpZ2h0LXNtYWxsO1xuICAgIG1pbi1oZWlnaHQ6ICgkbWRiLWlucHV0LWxpbmUtaGVpZ2h0LWNvbXB1dGVkICsgJG1kYi1pbnB1dC1mb250LXNpemUtc21hbGwpO1xuICAgIHBhZGRpbmc6ICgkbWRiLWlucHV0LXBhZGRpbmctc21hbGwtdmVydGljYWwgKyAxKSAkbWRiLWlucHV0LXBhZGRpbmctc21hbGwtaG9yaXpvbnRhbDtcbiAgICBmb250LXNpemU6ICRtZGItaW5wdXQtZm9udC1zaXplLXNtYWxsO1xuICAgIGxpbmUtaGVpZ2h0OiAkbWRiLWlucHV0LWxpbmUtaGVpZ2h0LXNtYWxsO1xuICB9XG59XG5cbi5pbnB1dC1sZyB7XG4gIEBpbmNsdWRlIGlucHV0LXNpemUodW5xdW90ZShcIi5pbnB1dC1sZ1wiKSwgJG1kYi1pbnB1dC1oZWlnaHQtbGFyZ2UsICRtZGItaW5wdXQtcGFkZGluZy1sYXJnZS12ZXJ0aWNhbCwgJG1kYi1pbnB1dC1wYWRkaW5nLWxhcmdlLWhvcml6b250YWwsICRtZGItaW5wdXQtZm9udC1zaXplLWxhcmdlLCAkbWRiLWlucHV0LWxpbmUtaGVpZ2h0LWxhcmdlLCAkbWRiLWlucHV0LWJvcmRlci1yYWRpdXMtbGFyZ2UpO1xufVxuLmZvcm0tZ3JvdXAtbGcge1xuICAuZm9ybS1jb250cm9sIHtcbiAgICBoZWlnaHQ6ICRtZGItaW5wdXQtaGVpZ2h0LWxhcmdlO1xuICAgIHBhZGRpbmc6ICRtZGItaW5wdXQtcGFkZGluZy1sYXJnZS12ZXJ0aWNhbCAkbWRiLWlucHV0LXBhZGRpbmctbGFyZ2UtaG9yaXpvbnRhbDtcbiAgICBmb250LXNpemU6ICRtZGItaW5wdXQtZm9udC1zaXplLWxhcmdlO1xuICAgIGxpbmUtaGVpZ2h0OiAkbWRiLWlucHV0LWxpbmUtaGVpZ2h0LWxhcmdlO1xuICB9XG4gIHNlbGVjdC5mb3JtLWNvbnRyb2wge1xuICAgIGhlaWdodDogJG1kYi1pbnB1dC1oZWlnaHQtbGFyZ2U7XG4gICAgbGluZS1oZWlnaHQ6ICRtZGItaW5wdXQtaGVpZ2h0LWxhcmdlO1xuICB9XG4gIHRleHRhcmVhLmZvcm0tY29udHJvbCxcbiAgc2VsZWN0W211bHRpcGxlXS5mb3JtLWNvbnRyb2wge1xuICAgIGhlaWdodDogYXV0bztcbiAgfVxuICAuZm9ybS1jb250cm9sLXN0YXRpYyB7XG4gICAgaGVpZ2h0OiAkbWRiLWlucHV0LWhlaWdodC1sYXJnZTtcbiAgICBtaW4taGVpZ2h0OiAoJG1kYi1pbnB1dC1saW5lLWhlaWdodC1jb21wdXRlZCArICRtZGItaW5wdXQtZm9udC1zaXplLWxhcmdlKTtcbiAgICBwYWRkaW5nOiAoJG1kYi1pbnB1dC1wYWRkaW5nLWxhcmdlLXZlcnRpY2FsICsgMSkgJG1kYi1pbnB1dC1wYWRkaW5nLWxhcmdlLWhvcml6b250YWw7XG4gICAgZm9udC1zaXplOiAkbWRiLWlucHV0LWZvbnQtc2l6ZS1sYXJnZTtcbiAgICBsaW5lLWhlaWdodDogJG1kYi1pbnB1dC1saW5lLWhlaWdodC1sYXJnZTtcbiAgfVxufVxuXG5cbi5mb3JtLWhvcml6b250YWwge1xuXG4gIC8vIENvbnNpc3RlbnQgdmVydGljYWwgYWxpZ25tZW50IG9mIHJhZGlvcyBhbmQgY2hlY2tib3hlc1xuICAvL1xuICAvLyBMYWJlbHMgYWxzbyBnZXQgc29tZSByZXNldCBzdHlsZXMsIGJ1dCB0aGF0IGlzIHNjb3BlZCB0byBhIG1lZGlhIHF1ZXJ5IGJlbG93LlxuICAucmFkaW8sXG4gIC5jaGVja2JveCxcbiAgLnJhZGlvLWlubGluZSxcbiAgLmNoZWNrYm94LWlubGluZSB7XG4gICAgcGFkZGluZy10b3A6ICgkbWRiLWlucHV0LXBhZGRpbmctYmFzZS12ZXJ0aWNhbCArIDEpOyAvLyBEZWZhdWx0IHBhZGRpbmcgcGx1cyBhIGJvcmRlclxuICB9XG4gIC8vIEFjY291bnQgZm9yIHBhZGRpbmcgd2UncmUgYWRkaW5nIHRvIGVuc3VyZSB0aGUgYWxpZ25tZW50IGFuZCBvZiBoZWxwIHRleHRcbiAgLy8gYW5kIG90aGVyIGNvbnRlbnQgYmVsb3cgaXRlbXNcbiAgLnJhZGlvLFxuICAuY2hlY2tib3gge1xuICAgIG1pbi1oZWlnaHQ6ICgkbWRiLWlucHV0LWxpbmUtaGVpZ2h0LWNvbXB1dGVkICsgKCRtZGItaW5wdXQtcGFkZGluZy1iYXNlLXZlcnRpY2FsICsgMSkpO1xuICB9XG5cbiAgLy8gUmVzZXQgc3BhY2luZyBhbmQgcmlnaHQgYWxpZ24gbGFiZWxzLCBidXQgc2NvcGUgdG8gbWVkaWEgcXVlcmllcyBzbyB0aGF0XG4gIC8vIGxhYmVscyBvbiBuYXJyb3cgdmlld3BvcnRzIHN0YWNrIHRoZSBzYW1lIGFzIGEgZGVmYXVsdCBmb3JtIGV4YW1wbGUuXG4gIEBtZWRpYSAobWluLXdpZHRoOiAkc2NyZWVuLXNtLW1pbikge1xuICAgIC5jb250cm9sLWxhYmVsIHtcbiAgICAgIHBhZGRpbmctdG9wOiAoJG1kYi1pbnB1dC1wYWRkaW5nLWJhc2UtdmVydGljYWwgKyAxKTsgLy8gRGVmYXVsdCBwYWRkaW5nIHBsdXMgYSBib3JkZXJcbiAgICB9XG4gIH1cblxuXG4gIC8vIEZvcm0gZ3JvdXAgc2l6ZXNcbiAgLy9cbiAgLy8gUXVpY2sgdXRpbGl0eSBjbGFzcyBmb3IgYXBwbHlpbmcgYC5pbnB1dC1sZ2AgYW5kIGAuaW5wdXQtc21gIHN0eWxlcyB0byB0aGVcbiAgLy8gaW5wdXRzIGFuZCBsYWJlbHMgd2l0aGluIGEgYC5mb3JtLWdyb3VwYC5cbiAgLmZvcm0tZ3JvdXAtbGcge1xuICAgIEBtZWRpYSAobWluLXdpZHRoOiAkc2NyZWVuLXNtLW1pbikge1xuICAgICAgLmNvbnRyb2wtbGFiZWwge1xuICAgICAgICBwYWRkaW5nLXRvcDogKCgkbWRiLWlucHV0LXBhZGRpbmctbGFyZ2UtdmVydGljYWwgKiAkbWRiLWlucHV0LWxpbmUtaGVpZ2h0LWxhcmdlKSArIDEpO1xuICAgICAgICBmb250LXNpemU6ICRtZGItaW5wdXQtZm9udC1zaXplLWxhcmdlO1xuICAgICAgfVxuICAgIH1cbiAgfVxuICAuZm9ybS1ncm91cC1zbSB7XG4gICAgQG1lZGlhIChtaW4td2lkdGg6ICRzY3JlZW4tc20tbWluKSB7XG4gICAgICAuY29udHJvbC1sYWJlbCB7XG4gICAgICAgIHBhZGRpbmctdG9wOiAoJG1kYi1pbnB1dC1wYWRkaW5nLXNtYWxsLXZlcnRpY2FsICsgMSk7XG4gICAgICAgIGZvbnQtc2l6ZTogJG1kYi1pbnB1dC1mb250LXNpemUtc21hbGw7XG4gICAgICB9XG4gICAgfVxuICB9XG59XG4iLCIvLyBUaGlzIGZpbGUgaGFzIGJlZW4gYXV0b2dlbmVyYXRlZCBieSBncnVudCB0YXNrIGxlc3NUb1Nhc3MuIEFueSBjaGFuZ2VzIHdpbGwgYmUgb3ZlcndyaXR0ZW4uXG5cbkBpbXBvcnQgJ19pbnB1dHMtc2l6ZSc7XG5cbi8vIGxhYmVsIHZhcmlhdGlvbnNcbi5sYWJlbCB7XG4gIGJvcmRlci1yYWRpdXM6ICRib3JkZXItcmFkaXVzLXNtYWxsO1xuICBAaW5jbHVkZSB2YXJpYXRpb25zKHVucXVvdGUoXCIubGFiZWxcIiksIHVucXVvdGUoXCJcIiksIGJhY2tncm91bmQtY29sb3IsICRncmV5KTtcbn1cblxuLy8gbXVzdCBiZSBicm9rZW4gb3V0IGZvciByZXVzZSAtIHdlYmtpdCBzZWxlY3RvciBicmVha3MgZmlyZWZveFxuQG1peGluIGxhYmVsLXN0YXRpYygkbGFiZWwtdG9wLCAkc3RhdGljLWZvbnQtc2l6ZSwgJHN0YXRpYy1saW5lLWhlaWdodCl7XG4gIGxhYmVsLmNvbnRyb2wtbGFiZWwge1xuICAgIHRvcDogJGxhYmVsLXRvcDtcbiAgICBsZWZ0OiAwO1xuICAgIC8vIG11c3QgcmVwZWF0IGJlY2F1c2UgdGhlIHNlbGVjdG9yIGFib3ZlIGlzIG1vcmUgc3BlY2lmaWMgdGhhbiB0aGUgZ2VuZXJhbCBsYWJlbCBzaXppbmdcbiAgICBmb250LXNpemU6ICRzdGF0aWMtZm9udC1zaXplO1xuICAgIGxpbmUtaGVpZ2h0OiAkc3RhdGljLWxpbmUtaGVpZ2h0O1xuICB9XG59XG5cbkBtaXhpbiBsYWJlbC1zaXplLXZhcmlhbnQoJHBsYWNlaG9sZGVyLWZvbnQtc2l6ZSwgJHZlcnRpY2FsLXBhZGRpbmcsICRsaW5lLWhlaWdodCwgJHN0YXRpYy1mb250LXNpemUsICRzdGF0aWMtbGluZS1oZWlnaHQsICRoZWxwLWJsb2NrLWZvbnQtc2l6ZSl7XG4gIC5mb3JtLWNvbnRyb2wge1xuICAgIEBpbmNsdWRlIG1hdGVyaWFsLXBsYWNlaG9sZGVyIHtcbiAgICAgIGZvbnQtc2l6ZTogJHBsYWNlaG9sZGVyLWZvbnQtc2l6ZTtcbiAgICAgIGxpbmUtaGVpZ2h0OiAkbGluZS1oZWlnaHQ7XG4gICAgICBjb2xvcjogJG1kYi1pbnB1dC1wbGFjZWhvbGRlci1jb2xvcjtcbiAgICAgIGZvbnQtd2VpZ2h0OiA0MDA7XG4gICAgXG59XG4gICAgLy8gbWFyZ2luLWJvdHRvbSBtdXN0IGJlIHNwZWNpZmllZCB0byBnaXZlIGhlbHAtYmxvY2sgdmVydGljYWwgc3BhY2UuXG4gICAgLy8gICAgJHNlZSBhbHNvIGZvcm0tZ3JvdXAgcGFkZGluZy1ib3R0b20gKGFuZCBzaXplIHZhcmlhbnRzKSByZTogY29sbGFwc2libGUgbWFyZ2lucy4gIFRoZXNlIHdvcmsgdG9nZXRoZXIuXG4gICAgbWFyZ2luLWJvdHRvbTogJHZlcnRpY2FsLXBhZGRpbmc7XG4gIH1cblxuICAvLyBnZW5lcmljIGxhYmVscyB1c2VkIGFueXdoZXJlIGluIHRoZSBmb3JtIChub3QgY29udHJvbC1sYWJlbClcbiAgLmNoZWNrYm94IGxhYmVsLFxuICAucmFkaW8gbGFiZWwsXG4gIGxhYmVsIHtcbiAgICBmb250LXNpemU6ICRwbGFjZWhvbGRlci1mb250LXNpemU7XG4gICAgbGluZS1oZWlnaHQ6ICRsaW5lLWhlaWdodDtcbiAgICBjb2xvcjogJG1kYi1pbnB1dC1wbGFjZWhvbGRlci1jb2xvcjtcbiAgICBmb250LXdlaWdodDogNDAwO1xuICB9XG5cbiAgLy8gc21hbGxlciBmb2N1c2VkIG9yIHN0YXRpYyBzaXplXG4gIGxhYmVsLmNvbnRyb2wtbGFiZWwge1xuICAgIGZvbnQtc2l6ZTogJHN0YXRpYy1mb250LXNpemU7XG4gICAgbGluZS1oZWlnaHQ6ICRzdGF0aWMtbGluZS1oZWlnaHQ7XG4gICAgY29sb3I6ICRtZGItaW5wdXQtcGxhY2Vob2xkZXItY29sb3I7XG4gICAgZm9udC13ZWlnaHQ6IDQwMDtcbiAgICBtYXJnaW46IDE2cHggMCAwIDA7IC8vIHN0ZCBhbmQgbGdcbiAgfVxuXG4gIC5oZWxwLWJsb2NrIHtcbiAgICBtYXJnaW4tdG9wOiAwOyAvLyBhbGxvdyB0aGUgaW5wdXQgbWFyZ2luIHRvIHNldC1vZmYgdGhlIHRvcCBvZiB0aGUgaGVscC1ibG9ja1xuICAgIGZvbnQtc2l6ZTogJGhlbHAtYmxvY2stZm9udC1zaXplO1xuICB9XG59XG5cbkBtaXhpbiBmb3JtLWdyb3VwLXZhbGlkYXRpb24tc3RhdGUoJG5hbWUsICRjb2xvcil7XG5cbiAgJi4jeyRuYW1lfSB7IC8vIGUuZy4gaGFzLWVycm9yXG4gICAgLmZvcm0tY29udHJvbCB7XG4gICAgICBib3gtc2hhZG93OiBub25lO1xuICAgIH1cbiAgICAmLmlzLWZvY3VzZWQgLmZvcm0tY29udHJvbCB7XG4gICAgICBiYWNrZ3JvdW5kLWltYWdlOiBsaW5lYXItZ3JhZGllbnQoJGNvbG9yLCAkY29sb3IpLCBsaW5lYXItZ3JhZGllbnQoJG1kYi1pbnB1dC11bmRlcmxpbmUtY29sb3IsICRtZGItaW5wdXQtdW5kZXJsaW5lLWNvbG9yKTtcbiAgICB9XG4gICAgbGFiZWwuY29udHJvbC1sYWJlbCxcbiAgICAuaGVscC1ibG9jayB7XG4gICAgICBjb2xvcjogJGNvbG9yO1xuICAgIH1cbiAgfVxufVxuXG5AbWl4aW4gZm9ybS1ncm91cC1zaXplLXZhcmlhbnQoJHBhcmVudCwgJHBsYWNlaG9sZGVyLWZvbnQtc2l6ZSwgJGxhYmVsLXRvcC1tYXJnaW4sICR2ZXJ0aWNhbC1wYWRkaW5nLCAkbGluZS1oZWlnaHQsICRsYWJlbC1hcy1wbGFjZWhvbGRlci1zaGltKXtcbiAgJHN0YXRpYy1mb250LXNpemU6IGNlaWwoKCRtZGItbGFiZWwtc3RhdGljLXNpemUtcmF0aW8gKiAkcGxhY2Vob2xkZXItZm9udC1zaXplKSkgIWRlZmF1bHQ7XG4gICRzdGF0aWMtbGluZS1oZWlnaHQ6ICgkbWRiLWxhYmVsLXN0YXRpYy1zaXplLXJhdGlvICogJGxpbmUtaGVpZ2h0KSAhZGVmYXVsdDtcblxuICAkbGFiZWwtYXMtcGxhY2Vob2xkZXItdG9wOiAtMSAqICgkdmVydGljYWwtcGFkZGluZyArICRsYWJlbC1hcy1wbGFjZWhvbGRlci1zaGltKSAhZGVmYXVsdDtcbiAgJGxhYmVsLXRvcDogJGxhYmVsLWFzLXBsYWNlaG9sZGVyLXRvcCAtICgkcGxhY2Vob2xkZXItZm9udC1zaXplICsgJHZlcnRpY2FsLXBhZGRpbmcpICFkZWZhdWx0O1xuXG4gICRoZWxwLWJsb2NrLWZvbnQtc2l6ZTogY2VpbCgoJG1kYi1oZWxwLWJsb2NrLXNpemUtcmF0aW8gKiAkcGxhY2Vob2xkZXItZm9udC1zaXplKSkgIWRlZmF1bHQ7XG4gICRoZWxwLWJsb2NrLWxpbmUtaGVpZ2h0OiAoJG1kYi1oZWxwLWJsb2NrLXNpemUtcmF0aW8gKiAkbGluZS1oZWlnaHQpICFkZWZhdWx0O1xuXG4gIC8vIHRoaXMgaXMgb3V0c2lkZSBhIGZvcm0tZ3JvdXBcbiAgQGlmIG5vdCAkcGFyZW50IHtcbiAgICBAaW5jbHVkZSBsYWJlbC1zaXplLXZhcmlhbnQoJHBsYWNlaG9sZGVyLWZvbnQtc2l6ZSwgJHZlcnRpY2FsLXBhZGRpbmcsICRsaW5lLWhlaWdodCwgJHN0YXRpYy1mb250LXNpemUsICRzdGF0aWMtbGluZS1oZWlnaHQsICRoZWxwLWJsb2NrLWZvbnQtc2l6ZSk7XG4gIH1cblxuICAvLyB0aGlzIGlzIGluc2lkZSBhIGZvcm0tZ3JvdXAsIG1heSBiZSAuZm9ybS1ncm91cC5mb3JtLWdyb3VwLXNtIG9yIC5mb3JtLWdyb3VwLmZvcm0tZ3JvdXAtbGdcbiAgQGVsc2Uge1xuICAgICN7JHBhcmVudH0ge1xuICAgICAgQGluY2x1ZGUgbGFiZWwtc2l6ZS12YXJpYW50KCRwbGFjZWhvbGRlci1mb250LXNpemUsICR2ZXJ0aWNhbC1wYWRkaW5nLCAkbGluZS1oZWlnaHQsICRzdGF0aWMtZm9udC1zaXplLCAkc3RhdGljLWxpbmUtaGVpZ2h0LCAkaGVscC1ibG9jay1mb250LXNpemUpO1xuXG4gICAgICAvLyBmb3JtLWdyb3VwIHBhZGRpbmctYm90dG9tXG4gICAgICAvLyAgdXBvbiBjb2xsYXBzaW5nIG1hcmdpbnMsIHRoZSBsYXJnZXN0IG1hcmdpbiBpcyBob25vcmVkIHdoaWNoIGNvbGxhcHNlcyB0aGUgZm9ybS1jb250cm9sIG1hcmdpbi1ib3R0b20sXG4gICAgICAvLyAgc28gdGhlIGZvcm0tY29udHJvbCBtYXJnaW4tYm90dG9tIG11c3QgYWxzbyBiZSBleHByZXNzZWQgYXMgZm9ybS1ncm91cCBwYWRkaW5nXG4gICAgICBwYWRkaW5nLWJvdHRvbTogJHZlcnRpY2FsLXBhZGRpbmc7XG5cbiAgICAgIC8vIGZvcm0tZ3JvdXAgbWFyZ2luLXRvcCBtdXN0IGJlIGxhcmdlIGVub3VnaCBmb3IgdGhlIGxhYmVsIGFuZCB0aGUgbGFiZWwncyB0b3AgcGFkZGluZyBzaW5jZSBsYWJlbCBpcyBhYnNvbHV0ZWx5IHBvc2l0aW9uZWRcbiAgICAgIG1hcmdpbjogKCRsYWJlbC10b3AtbWFyZ2luICsgJHN0YXRpYy1mb250LXNpemUpIDAgMCAwO1xuXG4gICAgICAvLyBsYXJnZXIgbGFiZWxzIGFzIHBsYWNlaG9sZGVyc1xuICAgICAgJi5sYWJlbC1mbG9hdGluZyxcbiAgICAgICYubGFiZWwtcGxhY2Vob2xkZXIge1xuICAgICAgICBsYWJlbC5jb250cm9sLWxhYmVsIHtcbiAgICAgICAgICB0b3A6ICRsYWJlbC1hcy1wbGFjZWhvbGRlci10b3A7IC8vIHBsYWNlIHRoZSBmbG9hdGluZyBsYWJlbCB0byBsb29rIGxpa2UgYSBwbGFjZWhvbGRlciB3aXRoIGlucHV0IHBhZGRpbmdcbiAgICAgICAgICBmb250LXNpemU6ICRwbGFjZWhvbGRlci1mb250LXNpemU7XG4gICAgICAgICAgbGluZS1oZWlnaHQ6ICRsaW5lLWhlaWdodDtcbiAgICAgICAgfVxuICAgICAgfVxuXG4gICAgICAvLyBzdGF0aWMsIGZvY3VzZWQsIG9yIGF1dG9maWxsIGZsb2F0aW5nIGxhYmVsc1xuICAgICAgJi5sYWJlbC1zdGF0aWMsXG4gICAgICAmLmxhYmVsLWZsb2F0aW5nLmlzLWZvY3VzZWQsXG4gICAgICAmLmxhYmVsLWZsb2F0aW5nOm5vdCguaXMtZW1wdHkpIHtcbiAgICAgICAgQGluY2x1ZGUgbGFiZWwtc3RhdGljKCRsYWJlbC10b3AsICRzdGF0aWMtZm9udC1zaXplLCAkc3RhdGljLWxpbmUtaGVpZ2h0KTtcbiAgICAgIH1cbiAgICAgIC8vICM1NTkgRml4IGZvciB3ZWJraXQvY2hyb21lIGF1dG9maWxsIC0gcnVsZSBtdXN0IGJlIHNlcGFyYXRlIGJlY2F1c2UgaXQgYnJlYWtzIGZpcmVmb3ggb3RoZXJ3aXNlICM3MzFcbiAgICAgICYubGFiZWwtZmxvYXRpbmcgaW5wdXQuZm9ybS1jb250cm9sOi13ZWJraXQtYXV0b2ZpbGwgfiBsYWJlbC5jb250cm9sLWxhYmVsIHtcbiAgICAgICAgQGluY2x1ZGUgbGFiZWwtc3RhdGljKCRsYWJlbC10b3AsICRzdGF0aWMtZm9udC1zaXplLCAkc3RhdGljLWxpbmUtaGVpZ2h0KTtcbiAgICAgIH1cbiAgICB9XG4gIH1cbn1cblxuLy8gLS0tLS1cbi8vIElucHV0c1xuLy9cbi8vIFJlZmVyZW5jZSBodHRwOi8vd3d3Lmdvb2dsZS5jb20vZGVzaWduL3NwZWMvY29tcG9uZW50cy90ZXh0LWZpZWxkcy5odG1sXG4vLyBNREwgaW1wbGVtZW50YXRpb246IGh0dHA6Ly93d3cuZ2V0bWRsLmlvL2NvbXBvbmVudHMvaW5kZXguaHRtbCN0ZXh0ZmllbGRzLXNlY3Rpb25cbi5mb3JtLWNvbnRyb2wsXG4uZm9ybS1ncm91cCAuZm9ybS1jb250cm9sIHtcbiAgYm9yZGVyOiAwO1xuICBiYWNrZ3JvdW5kLWltYWdlOiBsaW5lYXItZ3JhZGllbnQoJGJyYW5kLXByaW1hcnksICRicmFuZC1wcmltYXJ5KSwgbGluZWFyLWdyYWRpZW50KCRtZGItaW5wdXQtdW5kZXJsaW5lLWNvbG9yLCAkbWRiLWlucHV0LXVuZGVybGluZS1jb2xvcik7XG4gIGJhY2tncm91bmQtc2l6ZTogMCAycHgsIDEwMCUgMXB4O1xuICBiYWNrZ3JvdW5kLXJlcGVhdDogbm8tcmVwZWF0O1xuICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiBjZW50ZXIgYm90dG9tLCBjZW50ZXIgY2FsYygxMDAlIC0gMXB4KTtcbiAgYmFja2dyb3VuZC1jb2xvcjogcmdiYSgwLCAwLCAwLCAwKTtcbiAgdHJhbnNpdGlvbjogYmFja2dyb3VuZCAwcyBlYXNlLW91dDtcbiAgZmxvYXQ6IG5vbmU7XG4gIGJveC1zaGFkb3c6IG5vbmU7XG4gIGJvcmRlci1yYWRpdXM6IDA7XG5cbiAgLy8gUGxhY2Vob2xkZXJzIGFuZCBhbmQgbGFiZWxzLWFzLXBsYWNlaG9sZGVycyBzaG91bGQgbG9vayB0aGUgc2FtZVxuICBAaW5jbHVkZSBtYXRlcmlhbC1wbGFjZWhvbGRlciB7XG4gICAgY29sb3I6ICRtZGItaW5wdXQtcGxhY2Vob2xkZXItY29sb3I7XG4gICAgZm9udC13ZWlnaHQ6IDQwMDtcbiAgXG59XG5cblxuICAvLyY6dGV4dGFyZWEgeyAgICAvLyBhcHBlYXJzIHRvIGJlIGFuIGludmFsaWQgc2VsZWN0b3JcbiAgLy8gIGhlaWdodDogNDBweDtcbiAgLy99XG5cbiAgJltyZWFkb25seV0sXG4gICZbZGlzYWJsZWRdLFxuICBmaWVsZHNldFtkaXNhYmxlZF0gJiB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogcmdiYSgwLCAwLCAwLCAwKTtcbiAgfVxuXG4gICZbZGlzYWJsZWRdLFxuICBmaWVsZHNldFtkaXNhYmxlZF0gJiB7XG4gICAgYmFja2dyb3VuZC1pbWFnZTogbm9uZTtcbiAgICBib3JkZXItYm90dG9tOiAxcHggZG90dGVkICRtZGItaW5wdXQtdW5kZXJsaW5lLWNvbG9yO1xuICB9XG59XG5cbi8vIC0tLS0tXG4vLyBMYWJlbHMgd2l0aCBmb3JtLWdyb3VwIHNpZ25hbGxlZCBzdGF0ZVxuLy9cbi8vIFJlZmVyZW5jZSBodHRwOi8vd3d3Lmdvb2dsZS5jb20vZGVzaWduL3NwZWMvY29tcG9uZW50cy90ZXh0LWZpZWxkcy5odG1sXG4vLyBNREwgaW1wbGVtZW50YXRpb246IGh0dHA6Ly93d3cuZ2V0bWRsLmlvL2NvbXBvbmVudHMvaW5kZXguaHRtbCN0ZXh0ZmllbGRzLXNlY3Rpb25cbi8vLnZhcmlhdGlvbnModW5xdW90ZShcIiBsYWJlbC5jb250cm9sLWxhYmVsXCIpLCBjb2xvciwgJG1kYi1pbnB1dC1wbGFjZWhvbGRlci1jb2xvcik7ICAvLyBkZWZhdWx0IGxhYmVsIGNvbG9yIHZhcmlhdGlvbnNcblxuLmZvcm0tZ3JvdXAge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG5cbiAgLy8gLS0tLS1cbiAgLy8gTGFiZWxzIHdpdGggZm9ybS1ncm91cCBzaWduYWxsZWQgc3RhdGVcbiAgLy9cbiAgLy8gUmVmZXJlbmNlIGh0dHA6Ly93d3cuZ29vZ2xlLmNvbS9kZXNpZ24vc3BlYy9jb21wb25lbnRzL3RleHQtZmllbGRzLmh0bWxcbiAgLy8gTURMIGltcGxlbWVudGF0aW9uOiBodHRwOi8vd3d3LmdldG1kbC5pby9jb21wb25lbnRzL2luZGV4Lmh0bWwjdGV4dGZpZWxkcy1zZWN0aW9uXG4gICYubGFiZWwtc3RhdGljLFxuICAmLmxhYmVsLXBsYWNlaG9sZGVyLFxuICAmLmxhYmVsLWZsb2F0aW5nIHtcbiAgICBsYWJlbC5jb250cm9sLWxhYmVsIHtcbiAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgIHBvaW50ZXItZXZlbnRzOiBub25lO1xuICAgICAgdHJhbnNpdGlvbjogMC4zcyBlYXNlIGFsbDtcbiAgICB9XG4gIH1cblxuICAvLyBoaW50IHRvIGJyb3dzZXIgZm9yIG9wdGltaXphdGlvblxuICAvLyAgICBUT0RPOiBldmFsdWF0ZSBlZmZlY3RpdmVuZXNzIC0gbG9va2luZyBmb3IgY29tbXVuaXR5IGZlZWRiYWNrXG4gICYubGFiZWwtZmxvYXRpbmcgbGFiZWwuY29udHJvbC1sYWJlbCB7XG4gICAgd2lsbC1jaGFuZ2U6IGxlZnQsIHRvcCwgY29udGVudHM7XG4gIH1cblxuICAvLyBoaWRlIGxhYmVsLXBsYWNlaG9sZGVycyB3aGVuIHRoZSBmaWVsZCBpcyBub3QgZW1wdHlcbiAgJi5sYWJlbC1wbGFjZWhvbGRlcjpub3QoLmlzLWVtcHR5KXtcbiAgICBsYWJlbC5jb250cm9sLWxhYmVse1xuICAgICAgZGlzcGxheTogbm9uZTtcbiAgICB9XG4gIH1cblxuICAvLyBIZWxwIGJsb2NrcyAtIHBvc2l0aW9uOiBhYnNvbHV0ZSBhcHByb2FjaCAtIHVzZXMgbm8gdmVydGljYWwgc3BhY2UsIHRleHQgd3JhcHBpbmcgLSBub3Qgc28gZ29vZC5cbiAgLmhlbHAtYmxvY2sge1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTsgLy8gZG8gbm90IHVzZSBwb3NpdGlvbjogYWJzb2x1dGUgYmVjYXVzZSB3aWR0aC93cmFwcGluZyBpc24ndCBhdXRvbWF0aWMgYW5kIG92ZXJmbG93cyBvY2N1clxuICAgIGRpc3BsYXk6IG5vbmU7XG4gIH1cblxuICAvLyBmb3JtLWdyb3VwIGlzLWZvY3VzZWQgZGlzcGxheVxuICAmLmlzLWZvY3VzZWQge1xuICAgIC5mb3JtLWNvbnRyb2wge1xuICAgICAgb3V0bGluZTogbm9uZTtcbiAgICAgIGJhY2tncm91bmQtaW1hZ2U6IGxpbmVhci1ncmFkaWVudCgkYnJhbmQtcHJpbWFyeSwgJGJyYW5kLXByaW1hcnkpLCBsaW5lYXItZ3JhZGllbnQoJG1kYi1pbnB1dC11bmRlcmxpbmUtY29sb3IsICRtZGItaW5wdXQtdW5kZXJsaW5lLWNvbG9yKTtcbiAgICAgIGJhY2tncm91bmQtc2l6ZTogMTAwJSAycHgsIDEwMCUgMXB4O1xuICAgICAgYm94LXNoYWRvdzogbm9uZTtcbiAgICAgIHRyYW5zaXRpb24tZHVyYXRpb246IDAuM3M7XG5cbiAgICAgIC5tYXRlcmlhbC1pbnB1dDphZnRlciB7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6ICRicmFuZC1wcmltYXJ5O1xuICAgICAgfVxuICAgIH1cblxuICAgIC8vLnZhcmlhdGlvbnModW5xdW90ZShcIi5pcy1mb2N1c2VkIGxhYmVsLmNvbnRyb2wtbGFiZWxcIiksIGNvbG9yLCAkYnJhbmQtcHJpbWFyeSk7IC8vIGZvY3VzZWQgbGFiZWwgY29sb3IgdmFyaWF0aW9uc1xuICAgIGxhYmVsLFxuICAgIGxhYmVsLmNvbnRyb2wtbGFiZWwge1xuICAgICAgY29sb3I6ICRicmFuZC1wcmltYXJ5O1xuICAgIH1cblxuICAgIC8vLnZhcmlhdGlvbnModW5xdW90ZShcIi5pcy1mb2N1c2VkLmxhYmVsLXBsYWNlaG9sZGVyIGxhYmVsLmNvbnRyb2wtbGFiZWxcIiksIGNvbG9yLCAkbWRiLWlucHV0LXBsYWNlaG9sZGVyLWNvbG9yKTsgIC8vIGRlZmF1bHQgbGFiZWwgY29sb3IgdmFyaWF0aW9uc1xuICAgICYubGFiZWwtcGxhY2Vob2xkZXIge1xuICAgICAgbGFiZWwsXG4gICAgICBsYWJlbC5jb250cm9sLWxhYmVsIHtcbiAgICAgICAgY29sb3I6ICRtZGItaW5wdXQtcGxhY2Vob2xkZXItY29sb3I7XG4gICAgICB9XG4gICAgfVxuXG4gICAgLmhlbHAtYmxvY2sge1xuICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgfVxuICB9XG5cbiAgQGluY2x1ZGUgZm9ybS1ncm91cC12YWxpZGF0aW9uLXN0YXRlKGhhcy13YXJuaW5nLCAkYnJhbmQtd2FybmluZyk7XG4gIEBpbmNsdWRlIGZvcm0tZ3JvdXAtdmFsaWRhdGlvbi1zdGF0ZShoYXMtZXJyb3IsICRicmFuZC1kYW5nZXIpO1xuICBAaW5jbHVkZSBmb3JtLWdyb3VwLXZhbGlkYXRpb24tc3RhdGUoaGFzLXN1Y2Nlc3MsICRicmFuZC1zdWNjZXNzKTtcbiAgQGluY2x1ZGUgZm9ybS1ncm91cC12YWxpZGF0aW9uLXN0YXRlKGhhcy1pbmZvLCAkYnJhbmQtaW5mbyk7XG5cbiAgdGV4dGFyZWEge1xuICAgIHJlc2l6ZTogbm9uZTtcbiAgICAmIH4gLmZvcm0tY29udHJvbC1oaWdobGlnaHQge1xuICAgICAgbWFyZ2luLXRvcDogLTExcHg7XG4gICAgfVxuICB9XG5cbiAgc2VsZWN0IHtcbiAgICBhcHBlYXJhbmNlOiBub25lOyAvLyBGaXggZm9yIE9TIFhcblxuICAgICYgfiAubWF0ZXJpYWwtaW5wdXQ6YWZ0ZXIge1xuICAgICAgZGlzcGxheTogbm9uZTtcbiAgICB9XG4gIH1cbn1cblxuLy8gZGVmYXVsdCBmbG9hdGluZyBzaXplL2xvY2F0aW9uIHdpdGhvdXQgYSBmb3JtLWdyb3VwICh3aWxsIHNraXAgZm9ybS1ncm91cCBzdHlsZXMsIGFuZCBqdXN0IHJlbmRlciBkZWZhdWx0IHNpemluZyB2YXJpYXRpb24pXG5AaW5jbHVkZSBmb3JtLWdyb3VwLXNpemUtdmFyaWFudChudWxsLCAkbWRiLWlucHV0LWZvbnQtc2l6ZS1iYXNlLCAkbWRiLWxhYmVsLXRvcC1tYXJnaW4tYmFzZSwgJG1kYi1pbnB1dC1wYWRkaW5nLWJhc2UtdmVydGljYWwsICRtZGItaW5wdXQtbGluZS1oZWlnaHQtYmFzZSwgJG1kYi1sYWJlbC1hcy1wbGFjZWhvbGRlci1zaGltLWJhc2UpO1xuXG4vLyBkZWZhdWx0IGZsb2F0aW5nIHNpemUvbG9jYXRpb24gd2l0aCBhIGZvcm0tZ3JvdXAgKG5lZWQgbWFyZ2luIGV0YyBmcm9tIGEgZGVmYXVsdCBmb3JtLWdyb3VwKVxuQGluY2x1ZGUgZm9ybS1ncm91cC1zaXplLXZhcmlhbnQodW5xdW90ZShcIi5mb3JtLWdyb3VwXCIpLCAkbWRiLWlucHV0LWZvbnQtc2l6ZS1iYXNlLCAkbWRiLWxhYmVsLXRvcC1tYXJnaW4tYmFzZSwgJG1kYi1pbnB1dC1wYWRkaW5nLWJhc2UtdmVydGljYWwsICRtZGItaW5wdXQtbGluZS1oZWlnaHQtYmFzZSwgJG1kYi1sYWJlbC1hcy1wbGFjZWhvbGRlci1zaGltLWJhc2UpO1xuXG4vLyBzbSBmbG9hdGluZyBzaXplL2xvY2F0aW9uXG5AaW5jbHVkZSBmb3JtLWdyb3VwLXNpemUtdmFyaWFudCh1bnF1b3RlKFwiLmZvcm0tZ3JvdXAuZm9ybS1ncm91cC1zbVwiKSwgJG1kYi1pbnB1dC1mb250LXNpemUtc21hbGwsICRtZGItbGFiZWwtdG9wLW1hcmdpbi1zbWFsbCwgJG1kYi1pbnB1dC1wYWRkaW5nLXNtYWxsLXZlcnRpY2FsLCAkbWRiLWlucHV0LWxpbmUtaGVpZ2h0LXNtYWxsLCAkbWRiLWxhYmVsLWFzLXBsYWNlaG9sZGVyLXNoaW0tc21hbGwpO1xuXG4vLyBsZyBmbG9hdGluZyBzaXplL2xvY2F0aW9uXG5AaW5jbHVkZSBmb3JtLWdyb3VwLXNpemUtdmFyaWFudCh1bnF1b3RlKFwiLmZvcm0tZ3JvdXAuZm9ybS1ncm91cC1sZ1wiKSwgJG1kYi1pbnB1dC1mb250LXNpemUtbGFyZ2UsICRtZGItbGFiZWwtdG9wLW1hcmdpbi1sYXJnZSwgJG1kYi1pbnB1dC1wYWRkaW5nLWxhcmdlLXZlcnRpY2FsLCAkbWRiLWlucHV0LWxpbmUtaGVpZ2h0LWxhcmdlLCAkbWRiLWxhYmVsLWFzLXBsYWNlaG9sZGVyLXNoaW0tbGFyZ2UpO1xuXG5cbnNlbGVjdC5mb3JtLWNvbnRyb2wge1xuXG4gIGJvcmRlcjogMDtcbiAgYm94LXNoYWRvdzogbm9uZTtcbiAgYm9yZGVyLXJhZGl1czogMDtcblxuICAuZm9ybS1ncm91cC5pcy1mb2N1c2VkICYge1xuICAgIGJveC1zaGFkb3c6IG5vbmU7XG4gICAgYm9yZGVyLWNvbG9yOiAkbWRiLWlucHV0LXVuZGVybGluZS1jb2xvcjtcbiAgfVxuXG4gICZbbXVsdGlwbGVdIHtcbiAgICAmLFxuICAgIC5mb3JtLWdyb3VwLmlzLWZvY3VzZWQgJiB7XG4gICAgICBoZWlnaHQ6IDg1cHg7XG4gICAgfVxuICB9XG59XG5cbkBtaXhpbiBpbnB1dC1ncm91cC1idXR0b24tdmFyaWF0aW9uKCR2ZXJ0aWNhbC1wYWRkaW5nKXtcbiAgLmlucHV0LWdyb3VwLWJ0biB7XG4gICAgLmJ0biB7XG4gICAgICBtYXJnaW46IDAgMCAkdmVydGljYWwtcGFkZGluZyAwO1xuICAgIH1cbiAgfVxufVxuXG4vLyAtLS0tLS0tLS0tLS0tLS0tXG4vLyBpbnB1dCBncm91cC9hZGRvbiByZWxhdGVkIHN0eWxlc1xuXG4vLyBkZWZhdWx0IG1hcmdpbiAtIG5vIGZvcm0tZ3JvdXAgcmVxdWlyZWRcbkBpbmNsdWRlIGlucHV0LWdyb3VwLWJ1dHRvbi12YXJpYXRpb24oJG1kYi1pbnB1dC1wYWRkaW5nLWJhc2UtdmVydGljYWwpO1xuXG4uZm9ybS1ncm91cCB7XG4gIC8vLmZvcm0tY29udHJvbCB7XG4gIC8vICBmbG9hdDogbm9uZTtcbiAgLy99XG5cbiAgLy8gc20gbWFyZ2luXG4gICYuZm9ybS1ncm91cC1zbSB7XG4gICAgQGluY2x1ZGUgaW5wdXQtZ3JvdXAtYnV0dG9uLXZhcmlhdGlvbigkbWRiLWlucHV0LXBhZGRpbmctc21hbGwtdmVydGljYWwpO1xuICB9XG5cbiAgLy8gbGcgbWFyZ2luXG4gICYuZm9ybS1ncm91cC1sZyB7XG4gICAgQGluY2x1ZGUgaW5wdXQtZ3JvdXAtYnV0dG9uLXZhcmlhdGlvbigkbWRiLWlucHV0LXBhZGRpbmctbGFyZ2UtdmVydGljYWwpO1xuICB9XG59XG5cbi5pbnB1dC1ncm91cCB7ICAvLyBtYXkgYmUgaW4gb3Igb3V0c2lkZSBvZiBmb3JtLWdyb3VwXG4gIC5pbnB1dC1ncm91cC1idG4ge1xuICAgIHBhZGRpbmc6IDAgMTJweDsgLy8gbWF0Y2ggYWRkb24gc3BhY2luZ1xuICB9XG5cbiAgLmlucHV0LWdyb3VwLWFkZG9uIHtcbiAgICBib3JkZXI6IDA7XG4gICAgYmFja2dyb3VuZDogdHJhbnNwYXJlbnQ7XG4gIH1cbn1cblxuLy8gSW5wdXQgZmlsZXMgLSBoaWRlIGFjdHVhbCBpbnB1dCAtIHJlcXVpcmVzIHNwZWNpZmljIG1hcmt1cCBpbiB0aGUgc2FtcGxlLlxuLmZvcm0tZ3JvdXAgaW5wdXRbdHlwZT1maWxlXSB7XG4gIG9wYWNpdHk6IDA7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgdG9wOiAwO1xuICByaWdodDogMDtcbiAgYm90dG9tOiAwO1xuICBsZWZ0OiAwO1xuICB3aWR0aDogMTAwJTtcbiAgaGVpZ2h0OiAxMDAlO1xuICB6LWluZGV4OiAxMDA7XG59XG5cbiIsIi8vIFRoaXMgZmlsZSBoYXMgYmVlbiBhdXRvZ2VuZXJhdGVkIGJ5IGdydW50IHRhc2sgbGVzc1RvU2Fzcy4gQW55IGNoYW5nZXMgd2lsbCBiZSBvdmVyd3JpdHRlbi5cblxuLmxpc3QtZ3JvdXAge1xuICBib3JkZXItcmFkaXVzOiAwO1xuICAubGlzdC1ncm91cC1pdGVtIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcbiAgICBvdmVyZmxvdzogaGlkZGVuO1xuICAgIGJvcmRlcjogMDtcbiAgICBib3JkZXItcmFkaXVzOiAwO1xuICAgIHBhZGRpbmc6IDAgMTZweDtcbiAgICAmLmJhc2VsaW5lIHtcbiAgICAgIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCAjY2VjZWNlO1xuICAgICAgJjpsYXN0LWNoaWxkIHtcbiAgICAgICAgYm9yZGVyLWJvdHRvbTogbm9uZTtcbiAgICAgIH1cbiAgICB9XG4gICAgLnJvdy1waWN0dXJlLCAucm93LWFjdGlvbi1wcmltYXJ5IHtcbiAgICAgIC8vZmxvYXQ6IGxlZnQ7IFdBUk5JTkc6IGZsb2F0IGNhbid0IGJlIHVzZWQgd2l0aCBkaXNwbGF5OiBpbmxpbmUtYmxvY2suIENlcnRhaW4gcHJvcGVydGllcyBzaG91bGRuJ3QgYmUgdXNlZCB3aXRoIGNlcnRhaW4gZGlzcGxheSBwcm9wZXJ0eSB2YWx1ZXMuIChkaXNwbGF5LXByb3BlcnR5LWdyb3VwaW5nKSBCcm93c2VyczogQWxsXG4gICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgICBwYWRkaW5nLXJpZ2h0OiAxNnB4O1xuICAgICAgaW1nLCBpLCBsYWJlbCB7XG4gICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICB3aWR0aDogNTZweDtcbiAgICAgICAgaGVpZ2h0OiA1NnB4O1xuICAgICAgfVxuICAgICAgaW1nIHtcbiAgICAgICAgYmFja2dyb3VuZDogcmdiYSgwLDAsMCwwLjEpO1xuICAgICAgICBwYWRkaW5nOiAxcHg7XG4gICAgICAgICYuY2lyY2xlIHtcbiAgICAgICAgICBib3JkZXItcmFkaXVzOiAxMDAlO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgICBpIHtcbiAgICAgICAgYmFja2dyb3VuZDogcmdiYSgwLDAsMCwwLjI1KTtcbiAgICAgICAgYm9yZGVyLXJhZGl1czogMTAwJTtcbiAgICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgICAgICBsaW5lLWhlaWdodDogNTZweDtcbiAgICAgICAgZm9udC1zaXplOiAyMHB4O1xuICAgICAgICBjb2xvcjogd2hpdGU7XG4gICAgICB9XG4gICAgICBsYWJlbCB7XG4gICAgICAgIG1hcmdpbi1sZWZ0OiA3cHg7XG4gICAgICAgIG1hcmdpbi1yaWdodDogLTdweDtcbiAgICAgICAgbWFyZ2luLXRvcDogNXB4O1xuICAgICAgICBtYXJnaW4tYm90dG9tOiAtNXB4O1xuICAgICAgICAuY2hlY2tib3gtbWF0ZXJpYWwge1xuICAgICAgICAgIGxlZnQ6IC0xMHB4O1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICAgIC5yb3ctY29udGVudCB7XG4gICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgICB3aWR0aDogdW5xdW90ZShcImNhbGMoMTAwJSAtIDkycHgpXCIpO1xuICAgICAgbWluLWhlaWdodDogNjZweDtcbiAgICAgIC5hY3Rpb24tc2Vjb25kYXJ5IHtcbiAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICByaWdodDogMTZweDtcbiAgICAgICAgdG9wOiAxNnB4O1xuICAgICAgICBpIHtcbiAgICAgICAgICBmb250LXNpemU6IDIwcHg7XG4gICAgICAgICAgY29sb3I6IHJnYmEoMCwwLDAsMC4yNSk7XG4gICAgICAgICAgY3Vyc29yOiBwb2ludGVyO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgICAuYWN0aW9uLXNlY29uZGFyeSAgfiAqIHtcbiAgICAgICAgbWF4LXdpZHRoOiB1bnF1b3RlKFwiY2FsYygxMDAlIC0gMzBweClcIik7XG4gICAgICB9XG4gICAgICAubGVhc3QtY29udGVudCB7XG4gICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgcmlnaHQ6IDE2cHg7XG4gICAgICAgIHRvcDogMDtcbiAgICAgICAgY29sb3I6IHJnYmEoMCwwLDAsMC41NCk7XG4gICAgICAgIGZvbnQtc2l6ZTogMTRweDtcbiAgICAgIH1cbiAgICB9XG4gICAgLmxpc3QtZ3JvdXAtaXRlbS1oZWFkaW5nIHtcbiAgICAgIGNvbG9yOiByZ2JhKDAsIDAsIDAsIDAuNzcpO1xuICAgICAgZm9udC1zaXplOiAyMHB4O1xuICAgICAgbGluZS1oZWlnaHQ6IDI5cHg7XG4gICAgfVxuICB9XG4gIC5saXN0LWdyb3VwLWl0ZW0uYWN0aXZlIHtcbiAgICAmOmhvdmVyLCAmOmZvY3VzIHtcbiAgICAgIGJhY2tncm91bmQ6IHJnYmEoMCwwLDAsLjE1KTtcbiAgICAgIG91dGxpbmU6IDEwcHggc29saWQgcmdiYSgwLDAsMCwuMTUpO1xuICAgIH1cbiAgICAubGlzdC1ncm91cC1pdGVtLWhlYWRpbmcsIC5saXN0LWdyb3VwLWl0ZW0tdGV4dCB7XG4gICAgICBjb2xvcjogJG1kYi10ZXh0LWNvbG9yLXByaW1hcnk7XG4gICAgfVxuXG4gIH1cbiAgLmxpc3QtZ3JvdXAtc2VwYXJhdG9yIHtcbiAgICBjbGVhcjogYm90aDtcbiAgICBvdmVyZmxvdzogaGlkZGVuO1xuICAgIG1hcmdpbi10b3A6IDEwcHg7XG4gICAgbWFyZ2luLWJvdHRvbTogMTBweDtcbiAgICAmOmJlZm9yZSB7XG4gICAgICBjb250ZW50OiBcIlwiO1xuICAgICAgd2lkdGg6IHVucXVvdGUoXCJjYWxjKDEwMCUgLSA5MHB4KVwiKTtcbiAgICAgIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCByZ2JhKDAsMCwwLDAuMSk7XG4gICAgICBmbG9hdDogcmlnaHQ7XG4gICAgfVxuICB9XG59XG4iLCIvLyBUaGlzIGZpbGUgaGFzIGJlZW4gYXV0b2dlbmVyYXRlZCBieSBncnVudCB0YXNrIGxlc3NUb1Nhc3MuIEFueSBjaGFuZ2VzIHdpbGwgYmUgb3ZlcndyaXR0ZW4uXG5cbi5uYXZiYXIge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAkYnJhbmQtcHJpbWFyeTtcbiAgYm9yZGVyOiAwO1xuICBib3JkZXItcmFkaXVzOiAwO1xuXG4gIC5uYXZiYXItYnJhbmQge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICBoZWlnaHQ6IDYwcHg7XG4gICAgbGluZS1oZWlnaHQ6IDMwcHg7XG4gICAgY29sb3I6IGluaGVyaXQ7XG4gICAgJjpob3ZlcixcbiAgICAmOmZvY3VzIHtcbiAgICAgIGNvbG9yOiBpbmhlcml0O1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gICAgfVxuICB9XG5cbiAgLm5hdmJhci10ZXh0IHtcbiAgICBjb2xvcjogaW5oZXJpdDtcbiAgICBtYXJnaW4tdG9wOiAyMHB4O1xuICAgIG1hcmdpbi1ib3R0b206IDIwcHg7XG4gIH1cblxuICAubmF2YmFyLW5hdiB7XG4gICAgPiBsaSA+IGEge1xuICAgICAgY29sb3I6IGluaGVyaXQ7XG4gICAgICBwYWRkaW5nLXRvcDogMjBweDtcbiAgICAgIHBhZGRpbmctYm90dG9tOiAyMHB4O1xuXG4gICAgICAmOmhvdmVyLFxuICAgICAgJjpmb2N1cyB7XG4gICAgICAgIGNvbG9yOiBpbmhlcml0O1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcbiAgICAgIH1cbiAgICB9XG4gICAgPiAuYWN0aXZlID4gYSB7XG4gICAgICAmLFxuICAgICAgJjpob3ZlcixcbiAgICAgICY6Zm9jdXMge1xuICAgICAgICBjb2xvcjogaW5oZXJpdDtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogcmdiYSgyNTUsIDI1NSwgMjU1LCAwLjEpO1xuICAgICAgfVxuICAgIH1cbiAgICA+IC5kaXNhYmxlZCA+IGEge1xuICAgICAgJixcbiAgICAgICY6aG92ZXIsXG4gICAgICAmOmZvY3VzIHtcbiAgICAgICAgY29sb3I6IGluaGVyaXQ7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xuICAgICAgICBvcGFjaXR5OiAwLjk7XG4gICAgICB9XG4gICAgfVxuICB9XG5cbiAgLy8gRGFya2VuIHRoZSByZXNwb25zaXZlIG5hdiB0b2dnbGVcbiAgLm5hdmJhci10b2dnbGUge1xuICAgIGJvcmRlcjogMDtcbiAgICAmOmhvdmVyLFxuICAgICY6Zm9jdXMge1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gICAgfVxuICAgIC5pY29uLWJhciB7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiBpbmhlcml0O1xuICAgICAgYm9yZGVyOiAxcHggc29saWQ7XG4gICAgfVxuICB9XG5cbiAgLm5hdmJhci1kZWZhdWx0IC5uYXZiYXItdG9nZ2xlLFxuICAubmF2YmFyLWludmVyc2UgLm5hdmJhci10b2dnbGUge1xuICAgIGJvcmRlci1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gIH1cblxuICAubmF2YmFyLWNvbGxhcHNlLFxuICAubmF2YmFyLWZvcm0ge1xuICAgIGJvcmRlci1jb2xvcjogcmdiYSgwLDAsMCwwLjEpO1xuICB9XG5cbiAgLy8gRHJvcGRvd25zXG4gIC5uYXZiYXItbmF2IHtcbiAgICA+IC5vcGVuID4gYSB7XG4gICAgICAmLFxuICAgICAgJjpob3ZlcixcbiAgICAgICY6Zm9jdXMge1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcbiAgICAgICAgY29sb3I6IGluaGVyaXQ7XG4gICAgICB9XG4gICAgfVxuXG4gICAgQG1lZGlhIChtYXgtd2lkdGg6ICRncmlkLWZsb2F0LWJyZWFrcG9pbnQtbWF4KSB7XG4gICAgICAubmF2YmFyLXRleHQge1xuICAgICAgICBjb2xvcjogaW5oZXJpdDtcbiAgICAgICAgbWFyZ2luLXRvcDogMTVweDtcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogMTVweDtcbiAgICAgIH1cblxuICAgICAgLy8gRHJvcGRvd25zIGdldCBjdXN0b20gZGlzcGxheVxuICAgICAgLm9wZW4gLmRyb3Bkb3duLW1lbnUge1xuICAgICAgICA+IC5kcm9wZG93bi1oZWFkZXIge1xuICAgICAgICAgIGJvcmRlcjogMDtcbiAgICAgICAgICBjb2xvcjogaW5oZXJpdDtcbiAgICAgICAgfVxuICAgICAgICAuZGl2aWRlciB7XG4gICAgICAgICAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkO1xuICAgICAgICAgIG9wYWNpdHk6IDAuMDg7XG4gICAgICAgIH1cbiAgICAgICAgPiBsaSA+IGEge1xuICAgICAgICAgIGNvbG9yOiBpbmhlcml0O1xuICAgICAgICAgICY6aG92ZXIsXG4gICAgICAgICAgJjpmb2N1cyB7XG4gICAgICAgICAgICBjb2xvcjogaW5oZXJpdDtcbiAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xuICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgICA+IC5hY3RpdmUgPiBhIHtcbiAgICAgICAgICAmLFxuICAgICAgICAgICY6aG92ZXIsXG4gICAgICAgICAgJjpmb2N1cyB7XG4gICAgICAgICAgICBjb2xvcjogaW5oZXJpdDtcbiAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xuICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgICA+IC5kaXNhYmxlZCA+IGEge1xuICAgICAgICAgICYsXG4gICAgICAgICAgJjpob3ZlcixcbiAgICAgICAgICAmOmZvY3VzIHtcbiAgICAgICAgICAgIGNvbG9yOiBpbmhlcml0O1xuICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICB9XG5cbiAgLm5hdmJhci1saW5rIHtcbiAgICBjb2xvcjogaW5oZXJpdDtcbiAgICAmOmhvdmVyIHtcbiAgICAgIGNvbG9yOiBpbmhlcml0O1xuICAgIH1cbiAgfVxuXG4gIC5idG4tbGluayB7XG4gICAgY29sb3I6IGluaGVyaXQ7XG4gICAgJjpob3ZlcixcbiAgICAmOmZvY3VzIHtcbiAgICAgIGNvbG9yOiBpbmhlcml0O1xuICAgIH1cbiAgICAmW2Rpc2FibGVkXSxcbiAgICBmaWVsZHNldFtkaXNhYmxlZF0gJiB7XG4gICAgICAmOmhvdmVyLFxuICAgICAgJjpmb2N1cyB7XG4gICAgICAgIGNvbG9yOiBpbmhlcml0O1xuICAgICAgfVxuICAgIH1cbiAgfVxuXG4gIC5uYXZiYXItZm9ybSB7XG4gICAgbWFyZ2luLXRvcDogMTZweDtcbiAgICAuZm9ybS1ncm91cCB7XG4gICAgICBtYXJnaW46IDA7XG4gICAgICBwYWRkaW5nOiAwO1xuXG4gICAgICAubWF0ZXJpYWwtaW5wdXQ6YmVmb3JlLFxuICAgICAgJi5pcy1mb2N1c2VkIC5tYXRlcmlhbC1pbnB1dDphZnRlciB7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6IGluaGVyaXQ7XG4gICAgICB9XG4gICAgfVxuXG4gICAgLmZvcm0tZ3JvdXAgLmZvcm0tY29udHJvbCxcbiAgICAuZm9ybS1jb250cm9sIHtcbiAgICAgIGJvcmRlci1jb2xvcjogaW5oZXJpdDtcbiAgICAgIGNvbG9yOiBpbmhlcml0O1xuICAgICAgcGFkZGluZzogMDtcbiAgICAgIG1hcmdpbjogMDtcblxuICAgICAgLy8gcmUtbm9ybWFsaXplIGlucHV0cyBpbiBhIG5hdmJhciB0aGUgc2l6ZSBvZiBzdGFuZGFyZCBib290c3RyYXAgc2luY2Ugb3VyIG5vcm1hbCBpbnB1dHMgYXJlIGxhcmdlciBieSBzcGVjIHRoYW4gYm9vdHN0cmFwXG4gICAgICAvLy0tLVxuICAgICAgLy9oZWlnaHQ6ICRtZGItaW5wdXQtaGVpZ2h0LWJhc2U7XG4gICAgICAkYnMtbGluZS1oZWlnaHQtYmFzZTogMS40Mjg1NzE0MjkgIWRlZmF1bHQ7XG4gICAgICAkYnMtbGluZS1oZWlnaHQtY29tcHV0ZWQ6ICAgIGZsb29yKCgkZm9udC1zaXplLWJhc2UgKiAkYnMtbGluZS1oZWlnaHQtYmFzZSkpICFkZWZhdWx0OyAvLyB+MjBweFxuICAgICAgaGVpZ2h0OiAoJGJzLWxpbmUtaGVpZ2h0LWNvbXB1dGVkICsgOHB4KTtcbiAgICAgIGZvbnQtc2l6ZTogJGZvbnQtc2l6ZS1iYXNlO1xuICAgICAgbGluZS1oZWlnaHQ6ICRicy1saW5lLWhlaWdodC1iYXNlO1xuICAgICAgLy8tLS1cbiAgICB9XG4gIH1cblxuICAvLyBTQVNTIGNvbnZlcnNpb24gbm90ZTogcGxlYXNlIG1pcnJvciBhbnkgY29udGVudCBjaGFuZ2UgaW4gX21peGlucy1zaGFyZWQuc2NzcyBuYXZiYXItdmFyaWF0aW9ucy1jb250ZW50XG4gIEBpbmNsdWRlIG5hdmJhci12YXJpYXRpb25zKHVucXVvdGUoXCIubmF2YmFyXCIpLCB1bnF1b3RlKFwiXCIpLCAkYnJhbmQtcHJpbWFyeSk7XG5cblxuICAmLWludmVyc2Uge1xuICAgIGJhY2tncm91bmQtY29sb3I6ICRpbmRpZ287XG4gIH1cblxuICBAbWVkaWEgKG1heC13aWR0aDogJHNjcmVlbi1tZC1tYXgpIHtcblxuICAgIC5uYXZiYXItYnJhbmQge1xuICAgICAgaGVpZ2h0OiA1MHB4O1xuICAgICAgcGFkZGluZzogMTBweCAxNXB4O1xuICAgIH1cbiAgICAubmF2YmFyLWZvcm0ge1xuICAgICAgbWFyZ2luLXRvcDogMTBweDtcbiAgICB9XG5cbiAgICAubmF2YmFyLW5hdiA+IGxpID4gYSB7XG4gICAgICBwYWRkaW5nLXRvcDogMTVweDtcbiAgICAgIHBhZGRpbmctYm90dG9tOiAxNXB4O1xuICAgIH1cbiAgfVxufVxuIiwiLy8gVGhpcyBmaWxlIGhhcyBiZWVuIGF1dG9nZW5lcmF0ZWQgYnkgZ3J1bnQgdGFzayBsZXNzVG9TYXNzLiBBbnkgY2hhbmdlcyB3aWxsIGJlIG92ZXJ3cml0dGVuLlxuXG4uYWxlcnQge1xuICAgIGJvcmRlcjogMDtcbiAgICBib3JkZXItcmFkaXVzOiAwO1xuXG4gICAgLy8gU0FTUyBjb252ZXJzaW9uIG5vdGU6IHBsZWFzZSBtaXJyb3IgYW55IGNvbnRlbnQgY2hhbmdlIGluIF9taXhpbnMtc2hhcmVkLnNjc3MgYWxlcnQtdmFyaWF0aW9ucy1jb250ZW50XG4gICAgQGluY2x1ZGUgYWxlcnQtdmFyaWF0aW9ucyh1bnF1b3RlKFwiLmFsZXJ0XCIpLCB1bnF1b3RlKFwiXCIpLCAkbWRiLXRleHQtY29sb3ItbGlnaHQpO1xuXG4gICAgJi1pbmZvLCAmLWRhbmdlciwgJi13YXJuaW5nLCAmLXN1Y2Nlc3Mge1xuICAgICAgICBjb2xvcjogJG1kYi10ZXh0LWNvbG9yLWxpZ2h0O1xuICAgIH1cblxuICAgICYtZGVmYXVsdCB7XG4gICAgICAgIGEsIC5hbGVydC1saW5rIHtcbiAgICAgICAgICAgIGNvbG9yOiAkbWRiLXRleHQtY29sb3ItcHJpbWFyeTtcbiAgICAgICAgfVxuICAgIH1cbn1cbiIsIi8vIFRoaXMgZmlsZSBoYXMgYmVlbiBhdXRvZ2VuZXJhdGVkIGJ5IGdydW50IHRhc2sgbGVzc1RvU2Fzcy4gQW55IGNoYW5nZXMgd2lsbCBiZSBvdmVyd3JpdHRlbi5cblxuLnByb2dyZXNzIHtcbiAgICBoZWlnaHQ6IDRweDtcbiAgICBib3JkZXItcmFkaXVzOiAwO1xuICAgIGJveC1zaGFkb3c6IG5vbmU7XG4gICAgYmFja2dyb3VuZDogI2M4YzhjODtcbiAgICAucHJvZ3Jlc3MtYmFyIHtcbiAgICAgICAgYm94LXNoYWRvdzogbm9uZTtcbiAgICAgICAgQGluY2x1ZGUgdmFyaWF0aW9ucyh1bnF1b3RlKFwiLnByb2dyZXNzLWJhclwiKSwgdW5xdW90ZShcIlwiKSwgYmFja2dyb3VuZC1jb2xvciwgJGJyYW5kLXByaW1hcnkpO1xuICAgIH1cbn1cbiIsIi8vIFRoaXMgZmlsZSBoYXMgYmVlbiBhdXRvZ2VuZXJhdGVkIGJ5IGdydW50IHRhc2sgbGVzc1RvU2Fzcy4gQW55IGNoYW5nZXMgd2lsbCBiZSBvdmVyd3JpdHRlbi5cblxuLnRleHQtd2FybmluZyB7XG4gIGNvbG9yOiAkYnJhbmQtd2FybmluZztcbn1cbi50ZXh0LXByaW1hcnkge1xuICBjb2xvcjogJGJyYW5kLXByaW1hcnk7XG59XG4udGV4dC1kYW5nZXIge1xuICBjb2xvcjogJGJyYW5kLWRhbmdlcjtcbn1cbi50ZXh0LXN1Y2Nlc3Mge1xuICBjb2xvcjogJGJyYW5kLXN1Y2Nlc3M7XG59XG4udGV4dC1pbmZvIHtcbiAgY29sb3I6ICRicmFuZC1pbmZvO1xufVxuIiwiLy8gVGhpcyBmaWxlIGhhcyBiZWVuIGF1dG9nZW5lcmF0ZWQgYnkgZ3J1bnQgdGFzayBsZXNzVG9TYXNzLiBBbnkgY2hhbmdlcyB3aWxsIGJlIG92ZXJ3cml0dGVuLlxuXG4ubmF2LXRhYnMge1xuICAgIGJhY2tncm91bmQ6ICRicmFuZC1wcmltYXJ5O1xuICAgID4gbGkge1xuICAgICAgICA+IGEge1xuICAgICAgICAgICAgY29sb3I6ICNGRkZGRkY7XG4gICAgICAgICAgICBib3JkZXI6IDA7XG4gICAgICAgICAgICBtYXJnaW46IDA7XG4gICAgICAgICAgICAmOmhvdmVyIHtcbiAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcbiAgICAgICAgICAgICAgICBib3JkZXI6IDA7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgICAgJiA+IGEsICYgPiBhOmhvdmVyLCAmID4gYTpmb2N1cyB7XG4gICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudCAhaW1wb3J0YW50O1xuICAgICAgICAgICAgYm9yZGVyOiAwICFpbXBvcnRhbnQ7XG4gICAgICAgICAgICBjb2xvcjogI0ZGRkZGRiAhaW1wb3J0YW50O1xuICAgICAgICAgICAgZm9udC13ZWlnaHQ6IDUwMDtcbiAgICAgICAgfVxuICAgICAgICAmLmRpc2FibGVkID4gYSwgJi5kaXNhYmxlZCA+IGE6aG92ZXIge1xuICAgICAgICAgICAgY29sb3I6IHJnYmEoMjU1LDI1NSwyNTUsMC41KTtcbiAgICAgICAgfVxuICAgIH1cblxufVxuIiwiLy8gVGhpcyBmaWxlIGhhcyBiZWVuIGF1dG9nZW5lcmF0ZWQgYnkgZ3J1bnQgdGFzayBsZXNzVG9TYXNzLiBBbnkgY2hhbmdlcyB3aWxsIGJlIG92ZXJ3cml0dGVuLlxuXG4ucG9wb3ZlciwgLnRvb2x0aXAtaW5uZXIge1xuICBjb2xvcjogJG1kYi1wb3BvdmVyLWNvbG9yO1xuICBsaW5lLWhlaWdodDogMWVtO1xuICBiYWNrZ3JvdW5kOiAkbWRiLXBvcG92ZXItYmFja2dyb3VuZDtcbiAgYm9yZGVyOiBub25lO1xuICBib3JkZXItcmFkaXVzOiAkYm9yZGVyLXJhZGl1cy1iYXNlO1xuICBAaW5jbHVkZSBzaGFkb3ctei0xKCk7XG59XG5cbi50b29sdGlwLCAudG9vbHRpcC5pbiB7XG4gIG9wYWNpdHk6IDE7XG59XG5cbi5wb3BvdmVyLCAudG9vbHRpcCB7XG4gIC5hcnJvdywgLnRvb2x0aXAtYXJyb3cge1xuICAgIGRpc3BsYXk6IG5vbmU7XG4gIH1cbn1cbiIsIi8vIFRoaXMgZmlsZSBoYXMgYmVlbiBhdXRvZ2VuZXJhdGVkIGJ5IGdydW50IHRhc2sgbGVzc1RvU2Fzcy4gQW55IGNoYW5nZXMgd2lsbCBiZSBvdmVyd3JpdHRlbi5cblxuLmNhcmQge1xuXG4gICAgLyoqKioqIE1ha2UgaGVpZ2h0IGVxdWFsIHRvIHdpZHRoIChodHRwOi8vc3RhY2tvdmVyZmxvdy5jb20vYS82NjE1OTk0KSAqKioqL1xuXG4gICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICB3aWR0aDogMTAwJTtcbiAgICAuY2FyZC1oZWlnaHQtaW5kaWNhdG9yIHtcbiAgICAgICAgbWFyZ2luLXRvcDogMTAwJTtcbiAgICB9XG4gICAgLmNhcmQtY29udGVudCB7XG4gICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgdG9wOiAwO1xuICAgICAgICBib3R0b206IDA7XG4gICAgICAgIGxlZnQ6IDA7XG4gICAgICAgIHJpZ2h0OiAwO1xuICAgIH1cblxuICAgIC8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi9cblxuXG4gICAgYm9yZGVyLXJhZGl1czogJGJvcmRlci1yYWRpdXMtYmFzZTtcbiAgICBjb2xvcjogJG1kYi1jYXJkLWJvZHktdGV4dDtcbiAgICBiYWNrZ3JvdW5kOiAkbWRiLWNhcmQtYm9keS1iYWNrZ3JvdW5kO1xuXG4gICAgQGluY2x1ZGUgc2hhZG93LXotMigpO1xuXG4gICAgLmNhcmQtaW1hZ2Uge1xuICAgICAgICBoZWlnaHQ6IDYwJTtcbiAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgICBvdmVyZmxvdzogaGlkZGVuO1xuICAgICAgICBpbWcge1xuICAgICAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgICAgICBoZWlnaHQ6IDEwMCU7XG4gICAgICAgICAgICBib3JkZXItdG9wLWxlZnQtcmFkaXVzOiAycHg7XG4gICAgICAgICAgICBib3JkZXItdG9wLXJpZ2h0LXJhZGl1czogMnB4O1xuICAgICAgICAgICAgcG9pbnRlci1ldmVudHM6IG5vbmU7XG4gICAgICAgIH1cbiAgICAgICAgLmNhcmQtaW1hZ2UtaGVhZGxpbmUge1xuICAgICAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICAgICAgYm90dG9tOiAxNnB4O1xuICAgICAgICAgICAgbGVmdDogMThweDtcbiAgICAgICAgICAgIGNvbG9yOiAkbWRiLWNhcmQtaW1hZ2UtaGVhZGxpbmU7XG4gICAgICAgICAgICBmb250LXNpemU6IDJlbTtcbiAgICAgICAgfVxuICAgIH1cblxuICAgIC5jYXJkLWJvZHkge1xuICAgICAgICBoZWlnaHQ6IDMwJTtcbiAgICAgICAgcGFkZGluZzogMThweDtcbiAgICB9XG5cbiAgICAuY2FyZC1mb290ZXIge1xuICAgICAgICBoZWlnaHQ6IDEwJTtcbiAgICAgICAgcGFkZGluZzogMThweDtcbiAgICAgICAgYnV0dG9uLCBhIHtcbiAgICAgICAgICAgIG1hcmdpbjogMCAhaW1wb3J0YW50O1xuICAgICAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgICAgICAgYm90dG9tOiAyNXB4O1xuICAgICAgICAgICAgd2lkdGg6IGF1dG87XG4gICAgICAgICAgICAmOmZpcnN0LWNoaWxkIHtcbiAgICAgICAgICAgICAgICBsZWZ0OiAtMTVweDtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cbn1cbiIsIi8vIFRoaXMgZmlsZSBoYXMgYmVlbiBhdXRvZ2VuZXJhdGVkIGJ5IGdydW50IHRhc2sgbGVzc1RvU2Fzcy4gQW55IGNoYW5nZXMgd2lsbCBiZSBvdmVyd3JpdHRlbi5cblxuLy9cbi8vIE1vZGFsc1xuLy8gTWF0ZXJpYWwgRGVzaWduIGVsZW1lbnQgRGlhbG9nc1xuLy8gLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cbi5tb2RhbC1jb250ZW50IHtcbiAgQGluY2x1ZGUgc2hhZG93LXotNSgpO1xuICBib3JkZXItcmFkaXVzOiAkYm9yZGVyLXJhZGl1cy1iYXNlO1xuICBib3JkZXI6IG5vbmU7XG4gIC8vIE1vZGFsIGhlYWRlclxuICAvLyBUb3Agc2VjdGlvbiBvZiB0aGUgbW9kYWwgdy8gdGl0bGUgYW5kIGRpc21pc3NcbiAgLm1vZGFsLWhlYWRlciB7XG4gICAgYm9yZGVyLWJvdHRvbTogbm9uZTtcbiAgICBwYWRkaW5nLXRvcDogICAgMjRweDtcbiAgICBwYWRkaW5nLXJpZ2h0OiAgMjRweDtcbiAgICBwYWRkaW5nLWJvdHRvbTogMDtcbiAgICBwYWRkaW5nLWxlZnQ6ICAgMjRweDtcbiAgfVxuICAvLyBNb2RhbCBib2R5XG4gIC8vIFdoZXJlIGFsbCBtb2RhbCBjb250ZW50IHJlc2lkZXMgKHNpYmxpbmcgb2YgLm1vZGFsLWhlYWRlciBhbmQgLm1vZGFsLWZvb3RlcilcbiAgLm1vZGFsLWJvZHkge1xuICAgIHBhZGRpbmctdG9wOiAgICAyNHB4O1xuICAgIHBhZGRpbmctcmlnaHQ6ICAyNHB4O1xuICAgIHBhZGRpbmctYm90dG9tOiAxNnB4O1xuICAgIHBhZGRpbmctbGVmdDogICAyNHB4O1xuICB9XG4gIC8vIEZvb3RlciAoZm9yIGFjdGlvbnMpXG4gIC5tb2RhbC1mb290ZXIge1xuICAgIGJvcmRlci10b3A6IG5vbmU7XG4gICAgcGFkZGluZzogN3B4O1xuICAgIGJ1dHRvbiB7XG4gICAgICBtYXJnaW46IDA7XG4gICAgICBwYWRkaW5nLWxlZnQ6IDE2cHg7XG4gICAgICBwYWRkaW5nLXJpZ2h0OiAxNnB4O1xuICAgICAgd2lkdGg6IGF1dG87XG4gICAgICAmLnB1bGwtbGVmdCB7XG4gICAgICAgIHBhZGRpbmctbGVmdDogNXB4O1xuICAgICAgICBwYWRkaW5nLXJpZ2h0OiA1cHg7XG4gICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgICAgbGVmdDogLTVweDtcbiAgICAgIH1cbiAgICB9XG4gICAgYnV0dG9uK2J1dHRvbiB7XG4gICAgICBtYXJnaW4tYm90dG9tOiAxNnB4O1xuICAgIH1cbiAgfVxuICAubW9kYWwtYm9keSArIC5tb2RhbC1mb290ZXIge1xuICAgIHBhZGRpbmctdG9wOiAwO1xuICB9XG59XG4ubW9kYWwtYmFja2Ryb3Age1xuICBiYWNrZ3JvdW5kOiByZ2JhKDAsMCwwLDAuMyk7XG59XG4iLCIvLyBUaGlzIGZpbGUgaGFzIGJlZW4gYXV0b2dlbmVyYXRlZCBieSBncnVudCB0YXNrIGxlc3NUb1Nhc3MuIEFueSBjaGFuZ2VzIHdpbGwgYmUgb3ZlcndyaXR0ZW4uXG5cbi5wYW5lbCB7XG4gIGJvcmRlci1yYWRpdXM6IDJweDtcbiAgYm9yZGVyOiAwO1xuXG4gIEBpbmNsdWRlIHZhcmlhdGlvbnModW5xdW90ZShcIi5wYW5lbFwiKSwgdW5xdW90ZShcIiA+IC5wYW5lbC1oZWFkaW5nXCIpLCBiYWNrZ3JvdW5kLWNvbG9yLCAkZ3JleS0yMDApO1xuICBAaW5jbHVkZSBzaGFkb3ctei0xO1xufVxuXG5cbltjbGFzcyo9XCJwYW5lbC1cIl0gPiAucGFuZWwtaGVhZGluZyB7XG4gIGNvbG9yOiAkbWRiLXRleHQtY29sb3ItbGlnaHQ7XG4gIGJvcmRlcjogMDtcbn1cbi5wYW5lbC1kZWZhdWx0LCAucGFuZWw6bm90KFtjbGFzcyo9XCJwYW5lbC1cIl0pIHtcbiAgPiAucGFuZWwtaGVhZGluZyB7XG4gICAgY29sb3I6ICRtZGItdGV4dC1jb2xvci1wcmltYXJ5O1xuICB9XG59XG4ucGFuZWwtZm9vdGVyIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogJGdyZXktMjAwO1xufVxuIiwiLy8gVGhpcyBmaWxlIGhhcyBiZWVuIGF1dG9nZW5lcmF0ZWQgYnkgZ3J1bnQgdGFzayBsZXNzVG9TYXNzLiBBbnkgY2hhbmdlcyB3aWxsIGJlIG92ZXJ3cml0dGVuLlxuXG5ociB7XG4gICYub24tZGFyayB7XG4gICAgY29sb3I6IGxpZ2h0ZW4oJGJsYWNrLCAxMCUpO1xuICB9XG5cbiAgJi5vbi1saWdodCB7XG4gICAgY29sb3I6IGxpZ2h0ZW4oJHdoaXRlLCAxMCUpO1xuICB9XG5cbiAgQG1lZGlhICAoLXdlYmtpdC1taW4tZGV2aWNlLXBpeGVsLXJhdGlvOiAwLjc1KSxcbiAgICAobWluLS1tb3otZGV2aWNlLXBpeGVsLXJhdGlvOiAwLjc1KSxcbiAgICAoLW8tZGV2aWNlLXBpeGVsLXJhdGlvOiAzLzQpLFxuICAgIChtaW4tZGV2aWNlLXBpeGVsLXJhdGlvOiAwLjc1KSxcbiAgICAobWluLXJlc29sdXRpb246IDAuNzVkcHB4KSxcbiAgICAobWluLXJlc29sdXRpb246IDEyMGRwaSkge1xuICAgICAgaGVpZ2h0OjAuNzVweDtcbiAgICB9XG5cbiAgQG1lZGlhICAoLXdlYmtpdC1taW4tZGV2aWNlLXBpeGVsLXJhdGlvOiAxKSxcbiAgICAobWluLS1tb3otZGV2aWNlLXBpeGVsLXJhdGlvOiAxKSxcbiAgICAoLW8tZGV2aWNlLXBpeGVsLXJhdGlvOiAxKSxcbiAgICAobWluLWRldmljZS1waXhlbC1yYXRpbzogMSksXG4gICAgKG1pbi1yZXNvbHV0aW9uOiAxZHBweCksXG4gICAgKG1pbi1yZXNvbHV0aW9uOiAxNjBkcGkpIHtcbiAgICAgIGhlaWdodDoxcHg7XG4gICAgfVxuICBAbWVkaWEgICgtd2Via2l0LW1pbi1kZXZpY2UtcGl4ZWwtcmF0aW86IDEuMzMpLFxuICAgIChtaW4tLW1vei1kZXZpY2UtcGl4ZWwtcmF0aW86IDEuMzMpLFxuICAgICgtby1kZXZpY2UtcGl4ZWwtcmF0aW86IDEzMy8xMDApLFxuICAgIChtaW4tZGV2aWNlLXBpeGVsLXJhdGlvOiAxLjMzKSxcbiAgICAobWluLXJlc29sdXRpb246IDEuMzNkcHB4KSxcbiAgICAobWluLXJlc29sdXRpb246IDIxM2RwaSkge1xuICAgICAgaGVpZ2h0OjEuMzMzcHg7XG4gICAgfVxuICBAbWVkaWEgICgtd2Via2l0LW1pbi1kZXZpY2UtcGl4ZWwtcmF0aW86IDEuNSksXG4gICAgKG1pbi0tbW96LWRldmljZS1waXhlbC1yYXRpbzogMS41KSxcbiAgICAoLW8tZGV2aWNlLXBpeGVsLXJhdGlvOiAzLzIpLFxuICAgIChtaW4tZGV2aWNlLXBpeGVsLXJhdGlvOiAxLjUpLFxuICAgIChtaW4tcmVzb2x1dGlvbjogMS41ZHBweCksXG4gICAgKG1pbi1yZXNvbHV0aW9uOiAyNDBkcGkpIHtcbiAgICAgIGhlaWdodDoxLjVweDtcbiAgICB9XG5cbiAgQG1lZGlhICAoLXdlYmtpdC1taW4tZGV2aWNlLXBpeGVsLXJhdGlvOiAyKSxcbiAgICAobWluLS1tb3otZGV2aWNlLXBpeGVsLXJhdGlvOiAyKSxcbiAgICAoLW8tZGV2aWNlLXBpeGVsLXJhdGlvOiAyLzEpLFxuICAgIChtaW4tZGV2aWNlLXBpeGVsLXJhdGlvOiAyKSxcbiAgICAobWluLXJlc29sdXRpb246IDJkcHB4KSxcbiAgICAobWluLXJlc29sdXRpb246IDM4MGRwaSkge1xuICAgICAgaGVpZ2h0OjJweDtcbiAgICB9XG5cbiAgQG1lZGlhICAoLXdlYmtpdC1taW4tZGV2aWNlLXBpeGVsLXJhdGlvOiAzKSxcbiAgICAobWluLS1tb3otZGV2aWNlLXBpeGVsLXJhdGlvOiAzKSxcbiAgICAoLW8tZGV2aWNlLXBpeGVsLXJhdGlvOiAzLzEpLFxuICAgIChtaW4tZGV2aWNlLXBpeGVsLXJhdGlvOiAzKSxcbiAgICAobWluLXJlc29sdXRpb246IDNkcHB4KSxcbiAgICAobWluLXJlc29sdXRpb246IDQ4MGRwaSkge1xuICAgICAgaGVpZ2h0OjNweDtcbiAgICB9XG5cbiAgQG1lZGlhICAoLXdlYmtpdC1taW4tZGV2aWNlLXBpeGVsLXJhdGlvOiA0KSxcbiAgICAobWluLS1tb3otZGV2aWNlLXBpeGVsLXJhdGlvOiA0KSxcbiAgICAoLW8tZGV2aWNlLXBpeGVsLXJhdGlvOiA0LzEpLFxuICAgIChtaW4tZGV2aWNlLXBpeGVsLXJhdGlvOiAzKSxcbiAgICAobWluLXJlc29sdXRpb246IDRkcHB4KSxcbiAgICAobWluLXJlc29sdXRpb246IDY0MGRwaSkge1xuICAgICAgaGVpZ2h0OjRweDtcbiAgICB9XG5cbn1cbiIsIi8vIFRoaXMgZmlsZSBoYXMgYmVlbiBhdXRvZ2VuZXJhdGVkIGJ5IGdydW50IHRhc2sgbGVzc1RvU2Fzcy4gQW55IGNoYW5nZXMgd2lsbCBiZSBvdmVyd3JpdHRlbi5cblxuLy8gU3VwcG9ydCBmb3IgU25hY2tiYXJKUyBwbHVnaW5cbi8vIGh0dHBzOi8vZ2l0aHViLmNvbS9GZXpWcmFzdGEvc25hY2tiYXJqc1xuXG4uc25hY2tiYXIge1xuICAgIC8vIFN0eWxlXG4gICAgYmFja2dyb3VuZC1jb2xvcjogIzMyMzIzMjtcbiAgICBjb2xvcjogJG1kYi10ZXh0LWNvbG9yLWxpZ2h0O1xuICAgIGZvbnQtc2l6ZTogMTRweDtcbiAgICBib3JkZXItcmFkaXVzOiAkYm9yZGVyLXJhZGl1cy1iYXNlO1xuICAgIEBpbmNsdWRlIHNoYWRvdy16LTE7XG5cbiAgICAvLyBBbmltYXRpb25cbiAgICBoZWlnaHQ6IDA7XG4gICAgdHJhbnNpdGlvbjogdHJhbnNmb3JtIDAuMnMgZWFzZS1pbi1vdXQsIG9wYWNpdHkgMC4ycyBlYXNlLWluLCBoZWlnaHQgMHMgbGluZWFyIDAuMnMsIHBhZGRpbmcgMHMgbGluZWFyIDAuMnMsIGhlaWdodCAwcyBsaW5lYXIgMC4ycztcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoMjAwJSk7XG59XG5cbi5zbmFja2Jhci5zbmFja2Jhci1vcGVuZWQge1xuICAgIC8vIFN0eWxlXG4gICAgcGFkZGluZzogMTRweCAxNXB4O1xuICAgIG1hcmdpbi1ib3R0b206IDIwcHg7XG5cbiAgICAvLyBBbmltYXRpb25cbiAgICBoZWlnaHQ6IGF1dG87XG4gICAgdHJhbnNpdGlvbjogdHJhbnNmb3JtIDAuMnMgZWFzZS1pbi1vdXQsIG9wYWNpdHkgMC4ycyBlYXNlLWluLCBoZWlnaHQgMHMgbGluZWFyIDAuMnMsIGhlaWdodCAwcyBsaW5lYXIgMC4ycztcbiAgICB0cmFuc2Zvcm06IG5vbmU7XG59XG5cbi8vIFZhcmlhdGlvbnNcbi5zbmFja2Jhci50b2FzdCB7XG4gICAgYm9yZGVyLXJhZGl1czogMjAwcHg7XG59XG4iLCIvLyBUaGlzIGZpbGUgaGFzIGJlZW4gYXV0b2dlbmVyYXRlZCBieSBncnVudCB0YXNrIGxlc3NUb1Nhc3MuIEFueSBjaGFuZ2VzIHdpbGwgYmUgb3ZlcndyaXR0ZW4uXG5cbi5ub1VpLXRhcmdldCxcbi5ub1VpLXRhcmdldCAqIHtcbiAgICAtd2Via2l0LXRvdWNoLWNhbGxvdXQ6IG5vbmU7XG4gICAgLW1zLXRvdWNoLWFjdGlvbjogbm9uZTtcbiAgICB1c2VyLXNlbGVjdDogbm9uZTtcbiAgICBib3gtc2l6aW5nOiBib3JkZXItYm94O1xufVxuLm5vVWktYmFzZSB7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgaGVpZ2h0OiAxMDAlO1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbn1cbi5ub1VpLW9yaWdpbiB7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIHJpZ2h0OiAwO1xuICAgIHRvcDogMDtcbiAgICBsZWZ0OiAwO1xuICAgIGJvdHRvbTogMDtcbn1cbi5ub1VpLWhhbmRsZSB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIHotaW5kZXg6IDE7XG4gICAgYm94LXNpemluZzogYm9yZGVyLWJveDtcbn1cbi5ub1VpLXN0YWNraW5nIC5ub1VpLWhhbmRsZSB7XG4gICAgei1pbmRleDogMTA7XG59XG4vLy5ub1VpLXN0YWNraW5nICsgLm5vVWktb3JpZ2luIHtcbi8vICAgICp6LWluZGV4OiAtMTtcbi8vfSBXQVJOSU5HOiBQcm9wZXJ0eSB3aXRoIHN0YXIgcHJlZml4IGZvdW5kLiBDaGVja3MgZm9yIHRoZSBzdGFyIHByb3BlcnR5IGhhY2sgKHRhcmdldHMgSUU2LzcpIChzdGFyLXByb3BlcnR5LWhhY2spIEJyb3dzZXJzOiBBbGxcbi5ub1VpLXN0YXRlLXRhcCAubm9VaS1vcmlnaW4ge1xuICAgIHRyYW5zaXRpb246IGxlZnQgMC4zcywgdG9wIDAuM3M7XG59XG4ubm9VaS1zdGF0ZS1kcmFnICoge1xuICAgIGN1cnNvcjogaW5oZXJpdCAhaW1wb3J0YW50O1xufVxuLm5vVWktaG9yaXpvbnRhbCB7XG4gICAgaGVpZ2h0OiAxMHB4O1xufVxuLm5vVWktaGFuZGxlIHtcbiAgICBib3gtc2l6aW5nOiBib3JkZXItYm94O1xuICAgIHdpZHRoOiAxMnB4O1xuICAgIGhlaWdodDogMTJweDtcbiAgICBsZWZ0OiAtMTBweDtcbiAgICB0b3A6IC01cHg7XG4gICAgY3Vyc29yOiBldy1yZXNpemU7XG4gICAgYm9yZGVyLXJhZGl1czogMTAwJTtcbiAgICB0cmFuc2l0aW9uOiBhbGwgMC4ycyBlYXNlLW91dDtcbiAgICBib3JkZXI6IDFweCBzb2xpZDtcbn1cbi5ub1VpLXZlcnRpY2FsIC5ub1VpLWhhbmRsZSB7XG4gICAgbWFyZ2luLWxlZnQ6IDVweDtcbiAgICBjdXJzb3I6IG5zLXJlc2l6ZTtcbn1cbi5ub1VpLWhvcml6b250YWwubm9VaS1leHRlbmRlZCB7XG4gICAgcGFkZGluZzogMCAxNXB4O1xufVxuLm5vVWktaG9yaXpvbnRhbC5ub1VpLWV4dGVuZGVkIC5ub1VpLW9yaWdpbiAge1xuICAgIHJpZ2h0OiAtMTVweDtcbn1cbi5ub1VpLWJhY2tncm91bmQge1xuICAgIGhlaWdodDogMnB4O1xuICAgIG1hcmdpbjogMjBweCAwO1xufVxuLm5vVWktb3JpZ2luIHtcbiAgICBtYXJnaW46IDA7XG4gICAgYm9yZGVyLXJhZGl1czogMDtcbiAgICBoZWlnaHQ6IDJweDtcbiAgICBiYWNrZ3JvdW5kOiAjYzhjOGM4O1xuICAgICZbc3R5bGVePVwibGVmdDogMFwiXSAubm9VaS1oYW5kbGUge1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjZmZmO1xuICAgICAgICBib3JkZXI6IDJweCBzb2xpZCAjYzhjOGM4O1xuICAgICAgICAmLm5vVWktYWN0aXZlIHtcbiAgICAgICAgICAgIGJvcmRlci13aWR0aDogMXB4O1xuICAgICAgICB9XG4gICAgfVxufVxuLm5vVWktdGFyZ2V0IHtcbiAgICBib3JkZXItcmFkaXVzOiAkYm9yZGVyLXJhZGl1cy1iYXNlO1xufVxuLm5vVWktaG9yaXpvbnRhbCB7XG4gICAgaGVpZ2h0OiAycHg7XG4gICAgbWFyZ2luOiAxNXB4IDA7XG59XG4ubm9VaS12ZXJ0aWNhbCB7XG4gICAgaGVpZ2h0OiAxMDAlO1xuICAgIHdpZHRoOiAycHg7XG4gICAgbWFyZ2luOiAwIDE1cHg7XG4gICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xufVxuLm5vVWktaGFuZGxlLm5vVWktYWN0aXZlIHtcbiAgICB0cmFuc2Zvcm06IHNjYWxlM2QoMi41LCAyLjUsIDEpO1xufVxuW2Rpc2FibGVkXS5ub1VpLXNsaWRlcntcbiAgICBvcGFjaXR5OiAwLjU7XG59XG5bZGlzYWJsZWRdIC5ub1VpLWhhbmRsZSB7XG4gICAgY3Vyc29yOiBub3QtYWxsb3dlZDtcbn1cblxuLnNsaWRlciB7XG4gICAgYmFja2dyb3VuZDogI2M4YzhjODtcbn1cblxuLnNsaWRlciB7XG4gICAgQGluY2x1ZGUgdmFyaWF0aW9ucyh1bnF1b3RlKFwiLnNsaWRlclwiKSwgdW5xdW90ZShcIi5ub1VpLWNvbm5lY3RcIiksIGJhY2tncm91bmQtY29sb3IsICRicmFuZC1wcmltYXJ5KTtcbiAgICBAaW5jbHVkZSB2YXJpYXRpb25zKHVucXVvdGUoXCIuc2xpZGVyXCIpLCB1bnF1b3RlKFwiIC5ub1VpLWNvbm5lY3RcIiksIGJhY2tncm91bmQtY29sb3IsICRicmFuZC1wcmltYXJ5KTtcbiAgICBAaW5jbHVkZSB2YXJpYXRpb25zKHVucXVvdGUoXCIuc2xpZGVyXCIpLCB1bnF1b3RlKFwiIC5ub1VpLWhhbmRsZVwiKSwgYmFja2dyb3VuZC1jb2xvciwgJGJyYW5kLXByaW1hcnkpO1xuICAgIEBpbmNsdWRlIHZhcmlhdGlvbnModW5xdW90ZShcIi5zbGlkZXJcIiksIHVucXVvdGUoXCIgLm5vVWktaGFuZGxlXCIpLCBib3JkZXItY29sb3IsICRicmFuZC1wcmltYXJ5KTtcbn1cbiIsIi8vIFRoaXMgZmlsZSBoYXMgYmVlbiBhdXRvZ2VuZXJhdGVkIGJ5IGdydW50IHRhc2sgbGVzc1RvU2Fzcy4gQW55IGNoYW5nZXMgd2lsbCBiZSBvdmVyd3JpdHRlbi5cblxuLy8gU3VwcG9ydCBmb3IgU2VsZWN0aXplIHBsdWdpblxuLy8gaHR0cDovL2JyaWFucmVhdmlzLmdpdGh1Yi5pby9zZWxlY3RpemUuanMvXG5cbi5zZWxlY3RpemUtY29udHJvbC5zaW5nbGUsIC5zZWxlY3RpemUtY29udHJvbC5tdWx0aSB7XG4gICAgcGFkZGluZzogMDtcbiAgICAuc2VsZWN0aXplLWlucHV0LCAuc2VsZWN0aXplLWlucHV0LmlucHV0LWFjdGl2ZSB7XG5cbiAgICAgICAgY3Vyc29yOiB0ZXh0O1xuICAgICAgICBiYWNrZ3JvdW5kOiB0cmFuc3BhcmVudDtcbiAgICAgICAgYm94LXNoYWRvdzogbm9uZTtcbiAgICAgICAgYm9yZGVyOiAwO1xuICAgICAgICBwYWRkaW5nOiAwO1xuICAgICAgICBoZWlnaHQ6IDEwMCU7XG4gICAgICAgIGZvbnQtc2l6ZTogMTRweDtcbiAgICAgICAgbGluZS1oZWlnaHQ6IDMwcHg7XG4gICAgICAgIC5oYXMtaXRlbXMge1xuICAgICAgICAgICAgcGFkZGluZzogMDtcbiAgICAgICAgfVxuICAgICAgICAmOmFmdGVyIHtcbiAgICAgICAgICAgIHJpZ2h0OiA1cHg7XG4gICAgICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgICAgICBmb250LXNpemU6IDI1cHg7XG4gICAgICAgICAgICBjb250ZW50OiBcIlxcZTVjNVwiO1xuICAgICAgICAgICAgZm9udC1mYW1pbHk6ICdNYXRlcmlhbCBJY29ucyc7XG4gICAgICAgICAgICBzcGVhazogbm9uZTtcbiAgICAgICAgICAgIGZvbnQtc3R5bGU6IG5vcm1hbDtcbiAgICAgICAgICAgIGZvbnQtd2VpZ2h0OiBub3JtYWw7XG4gICAgICAgICAgICBmb250LXZhcmlhbnQ6IG5vcm1hbDtcbiAgICAgICAgICAgIHRleHQtdHJhbnNmb3JtOiBub25lO1xuICAgICAgICAgICAgbGluZS1oZWlnaHQ6IDE7XG4gICAgICAgICAgICAtd2Via2l0LWZvbnQtc21vb3RoaW5nOiBhbnRpYWxpYXNlZDtcbiAgICAgICAgICAgIC1tb3otb3N4LWZvbnQtc21vb3RoaW5nOiBncmF5c2NhbGU7XG4gICAgICAgIH1cbiAgICAgICAgaW5wdXQge1xuICAgICAgICAgICAgZm9udC1zaXplOiAxNHB4O1xuICAgICAgICAgICAgb3V0bGluZTogMDtcbiAgICAgICAgICAgIGJvcmRlcjogMDtcbiAgICAgICAgICAgIGJhY2tncm91bmQ6IHRyYW5zcGFyZW50O1xuICAgICAgICB9XG4gICAgICAgICYubGFiZWwtZmxvYXRpbmctZml4IGlucHV0IHtcbiAgICAgICAgICAgIG9wYWNpdHk6IDA7XG4gICAgICAgIH1cbiAgICAgICAgPiBkaXYsID4gLml0ZW0ge1xuICAgICAgICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgICAgICAgICAgbWFyZ2luOiAwIDhweCAzcHggMDtcbiAgICAgICAgICAgIHBhZGRpbmc6IDA7XG4gICAgICAgICAgICBiYWNrZ3JvdW5kOiB0cmFuc3BhcmVudDtcbiAgICAgICAgICAgIGJvcmRlcjogMDtcbiAgICAgICAgICAgICY6YWZ0ZXIge1xuICAgICAgICAgICAgICAgIGNvbnRlbnQ6IFwiLFwiO1xuICAgICAgICAgICAgfVxuICAgICAgICAgICAgJjpsYXN0LW9mLXR5cGU6YWZ0ZXIge1xuICAgICAgICAgICAgICAgIGNvbnRlbnQ6IFwiXCI7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICAmLmFjdGl2ZSB7XG4gICAgICAgICAgICAgICAgZm9udC13ZWlnaHQ6IGJvbGQ7XG4gICAgICAgICAgICAgICAgYmFja2dyb3VuZDogdHJhbnNwYXJlbnQ7XG4gICAgICAgICAgICAgICAgYm9yZGVyOiAwO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxuICAgIC5zZWxlY3RpemUtZHJvcGRvd24ge1xuICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgIHotaW5kZXg6IDEwMDA7XG4gICAgICAgIGJvcmRlcjogMDtcbiAgICAgICAgd2lkdGg6IDEwMCUgIWltcG9ydGFudDtcbiAgICAgICAgbGVmdDogMCAhaW1wb3J0YW50O1xuICAgICAgICBoZWlnaHQ6IGF1dG87XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6ICNGRkY7XG4gICAgICAgIGJveC1zaGFkb3c6IDAgMXB4IDNweCByZ2JhKDAsIDAsIDAsIDAuMTIpLCAwIDFweCAycHggcmdiYSgwLCAwLCAwLCAwLjI0KTtcbiAgICAgICAgYm9yZGVyLXJhZGl1czogJGJvcmRlci1yYWRpdXMtYmFzZTtcbiAgICAgICAgcGFkZGluZzogMDtcbiAgICAgICAgbWFyZ2luLXRvcDogM3B4O1xuICAgICAgICAuYWN0aXZlIHtcbiAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6IGluaGVyaXQ7XG4gICAgICAgIH1cbiAgICAgICAgLmhpZ2hsaWdodCB7XG4gICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjZDVkOGZmO1xuICAgICAgICB9XG4gICAgICAgIC5zZWxlY3RlZCwgLnNlbGVjdGVkLmFjdGl2ZSB7XG4gICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjRUVFRUVFO1xuICAgICAgICB9XG4gICAgICAgIFtkYXRhLXNlbGVjdGFibGVdLCAub3B0Z3JvdXAtaGVhZGVyIHtcbiAgICAgICAgICAgIHBhZGRpbmc6IDEwcHggMjBweDtcbiAgICAgICAgICAgIGN1cnNvcjogcG9pbnRlcjtcbiAgICAgICAgfVxuICAgIH1cbiAgICAuZHJvcGRvd24tYWN0aXZlIH4gLnNlbGVjdGl6ZS1kcm9wZG93biB7XG4gICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIH1cbn1cbiIsIi8vIFRoaXMgZmlsZSBoYXMgYmVlbiBhdXRvZ2VuZXJhdGVkIGJ5IGdydW50IHRhc2sgbGVzc1RvU2Fzcy4gQW55IGNoYW5nZXMgd2lsbCBiZSBvdmVyd3JpdHRlbi5cblxuLmRyb3Bkb3duanM6OmFmdGVyIHtcbiAgcmlnaHQ6IDVweDtcbiAgdG9wOiAzcHg7XG4gIGZvbnQtc2l6ZTogMjVweDtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuXG4gIC8vIGJyaW5nIGluIHRoZSBtYXRlcmlhbCBpY29uIGZvbnQgYW5kIGljb24gYnkgY29kZVxuICBmb250LWZhbWlseTogJ01hdGVyaWFsIEljb25zJztcbiAgZm9udC1zdHlsZTogbm9ybWFsO1xuICBmb250LXdlaWdodDogNDAwO1xuICBjb250ZW50OiBcIlxcZTVjNVwiOyAvLyBmb3VuZCBoZXJlOiBodHRwczovL2dpdGh1Yi5jb20vZ29vZ2xlL21hdGVyaWFsLWRlc2lnbi1pY29ucy9zZWFyY2g/dXRmOD0lRTIlOUMlOTMmcT1hcnJvd19kcm9wX2Rvd25cblxuICBwb2ludGVyLWV2ZW50czogbm9uZTtcbiAgY29sb3I6ICM3NTc1NzU7XG59XG4iLCIvLyBUaGlzIGZpbGUgaGFzIGJlZW4gYXV0b2dlbmVyYXRlZCBieSBncnVudCB0YXNrIGxlc3NUb1Nhc3MuIEFueSBjaGFuZ2VzIHdpbGwgYmUgb3ZlcndyaXR0ZW4uXG5cbi53aXRocmlwcGxlIHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG59XG4ucmlwcGxlLWNvbnRhaW5lciB7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIHRvcDogMDtcbiAgICBsZWZ0OiAwO1xuICAgIHotaW5kZXg6IDE7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgaGVpZ2h0OiAxMDAlO1xuICAgIG92ZXJmbG93OiBoaWRkZW47XG4gICAgYm9yZGVyLXJhZGl1czogaW5oZXJpdDtcbiAgICBwb2ludGVyLWV2ZW50czogbm9uZTtcbn1cbi5yaXBwbGUge1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICB3aWR0aDogMjBweDtcbiAgICBoZWlnaHQ6IDIwcHg7XG4gICAgbWFyZ2luLWxlZnQ6IC0xMHB4O1xuICAgIG1hcmdpbi10b3A6IC0xMHB4O1xuICAgIGJvcmRlci1yYWRpdXM6IDEwMCU7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogIzAwMDsgLy8gZmFsbGJhY2sgY29sb3JcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiByZ2JhKDAsMCwwLDAuMDUpO1xuICAgIHRyYW5zZm9ybTogc2NhbGUoMSk7XG4gICAgdHJhbnNmb3JtLW9yaWdpbjogNTAlO1xuICAgIG9wYWNpdHk6IDA7XG4gICAgcG9pbnRlci1ldmVudHM6IG5vbmU7XG59XG4ucmlwcGxlLnJpcHBsZS1vbiB7XG4gICAgdHJhbnNpdGlvbjogb3BhY2l0eSAwLjE1cyBlYXNlLWluIDBzLCB0cmFuc2Zvcm0gMC41cyBjdWJpYy1iZXppZXIoMC40LCAwLCAwLjIsIDEpIDAuMXM7XG4gICAgb3BhY2l0eTogMC4xO1xufVxuLnJpcHBsZS5yaXBwbGUtb3V0IHtcbiAgICB0cmFuc2l0aW9uOiBvcGFjaXR5IDAuMXMgbGluZWFyIDBzICFpbXBvcnRhbnQ7XG4gICAgb3BhY2l0eTogMDtcbn1cbiIsIi8qIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tIFxyXG5cclxuUHJpbWFyeSBzdHlsZVxyXG5cclxuLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0gKi9cclxuKiwgKjo6YWZ0ZXIsICo6OmJlZm9yZSB7XHJcbiAgLXdlYmtpdC1ib3gtc2l6aW5nOiBib3JkZXItYm94O1xyXG4gIC1tb3otYm94LXNpemluZzogYm9yZGVyLWJveDtcclxuICBib3gtc2l6aW5nOiBib3JkZXItYm94O1xyXG59XHJcblxyXG5odG1sIHtcclxuICBmb250LXNpemU6IDYyLjUlO1xyXG59XHJcblxyXG5ib2R5IHtcclxuICBmb250LXNpemU6IDEuNnJlbTtcclxuICBmb250LWZhbWlseTogXCJQVCBTYW5zXCIsIHNhbnMtc2VyaWY7XHJcbiAgY29sb3I6ICMzMzQxNGE7XHJcbiAgYmFja2dyb3VuZC1jb2xvcjogI2YyZjJmMjtcclxufVxyXG5cclxuYSB7XHJcbiAgY29sb3I6ICM3ZTRkN2U7XHJcbiAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xyXG59XHJcblxyXG4vKiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSBcclxuXHJcbk1haW4gQ29tcG9uZW50cyBcclxuXHJcbi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tICovXHJcbmhlYWRlciB7XHJcbiAgcG9zaXRpb246IGZpeGVkO1xyXG4gIHotaW5kZXg6IDM7XHJcbiAgaGVpZ2h0OiA1MHB4O1xyXG4gIHdpZHRoOiAxMDAlO1xyXG4gIHRvcDogMDtcclxuICBsZWZ0OiAwO1xyXG4gIGJhY2tncm91bmQtY29sb3I6ICMzMzQxNGE7XHJcbiAgLXdlYmtpdC1mb250LXNtb290aGluZzogYW50aWFsaWFzZWQ7XHJcbiAgLW1vei1vc3gtZm9udC1zbW9vdGhpbmc6IGdyYXlzY2FsZTtcclxuICAvKiBGb3JjZSBIYXJkd2FyZSBBY2NlbGVyYXRpb24gKi9cclxuICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlWigwKTtcclxuICAtbW96LXRyYW5zZm9ybTogdHJhbnNsYXRlWigwKTtcclxuICAtbXMtdHJhbnNmb3JtOiB0cmFuc2xhdGVaKDApO1xyXG4gIC1vLXRyYW5zZm9ybTogdHJhbnNsYXRlWigwKTtcclxuICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVooMCk7XHJcbiAgLXdlYmtpdC1iYWNrZmFjZS12aXNpYmlsaXR5OiBoaWRkZW47XHJcbiAgYmFja2ZhY2UtdmlzaWJpbGl0eTogaGlkZGVuO1xyXG4gIC13ZWJraXQtdHJhbnNpdGlvbjogLXdlYmtpdC10cmFuc2Zvcm0gMC4zcztcclxuICAtbW96LXRyYW5zaXRpb246IC1tb3otdHJhbnNmb3JtIDAuM3M7XHJcbiAgdHJhbnNpdGlvbjogdHJhbnNmb3JtIDAuM3M7XHJcbn1cclxuaGVhZGVyLm5hdi1pcy12aXNpYmxlIHtcclxuICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlWCgtMjYwcHgpO1xyXG4gIC1tb3otdHJhbnNmb3JtOiB0cmFuc2xhdGVYKC0yNjBweCk7XHJcbiAgLW1zLXRyYW5zZm9ybTogdHJhbnNsYXRlWCgtMjYwcHgpO1xyXG4gIC1vLXRyYW5zZm9ybTogdHJhbnNsYXRlWCgtMjYwcHgpO1xyXG4gIHRyYW5zZm9ybTogdHJhbnNsYXRlWCgtMjYwcHgpO1xyXG59XHJcbmhlYWRlcjo6YmVmb3JlIHtcclxuICAvKiBuZXZlciB2aXNpYmxlIC0gdGhpcyBpcyB1c2VkIGluIGpRdWVyeSB0byBjaGVjayB0aGUgY3VycmVudCBNUSAqL1xyXG4gIGRpc3BsYXk6IG5vbmU7XHJcbiAgY29udGVudDogJ21vYmlsZSc7XHJcbn1cclxuQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWluLXdpZHRoOiAxMDI0cHgpIHtcclxuICBoZWFkZXIge1xyXG4gICAgaGVpZ2h0OiA4MHB4O1xyXG4gIH1cclxuICBoZWFkZXIubmF2LWlzLXZpc2libGUge1xyXG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZVgoMCk7XHJcbiAgICAtbW96LXRyYW5zZm9ybTogdHJhbnNsYXRlWCgwKTtcclxuICAgIC1tcy10cmFuc2Zvcm06IHRyYW5zbGF0ZVgoMCk7XHJcbiAgICAtby10cmFuc2Zvcm06IHRyYW5zbGF0ZVgoMCk7XHJcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoMCk7XHJcbiAgfVxyXG4gIGhlYWRlcjo6YmVmb3JlIHtcclxuICAgIGNvbnRlbnQ6ICdkZXNrdG9wJztcclxuICB9XHJcbn1cclxuXHJcbi5jZC1sb2dvIHtcclxuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XHJcbiAgaGVpZ2h0OiAxMDAlO1xyXG4gIG1hcmdpbi1sZWZ0OiAxNXB4O1xyXG4gIC8qIHJlbW92ZSBqdW1wIG9uIGlPUyBkZXZpY2VzIC0gd2hlbiB3ZSBmaXJlIHRoZSBuYXZpZ2F0aW9uICovXHJcbiAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZVooMCk7XHJcbiAgLW1vei10cmFuc2Zvcm06IHRyYW5zbGF0ZVooMCk7XHJcbiAgLW1zLXRyYW5zZm9ybTogdHJhbnNsYXRlWigwKTtcclxuICAtby10cmFuc2Zvcm06IHRyYW5zbGF0ZVooMCk7XHJcbiAgdHJhbnNmb3JtOiB0cmFuc2xhdGVaKDApO1xyXG4gIC13ZWJraXQtYmFja2ZhY2UtdmlzaWJpbGl0eTogaGlkZGVuO1xyXG4gIGJhY2tmYWNlLXZpc2liaWxpdHk6IGhpZGRlbjtcclxufVxyXG4uY2QtbG9nbyBpbWcge1xyXG4gIGRpc3BsYXk6IGJsb2NrO1xyXG4gIG1heC13aWR0aDogMTAwJTtcclxuICBtYXJnaW4tdG9wOiAxNHB4O1xyXG59XHJcbkBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1pbi13aWR0aDogMTAyNHB4KSB7XHJcbiAgLmNkLWxvZ28ge1xyXG4gICAgcG9zaXRpb246IGFic29sdXRlO1xyXG4gICAgei1pbmRleDogMjtcclxuICAgIG1hcmdpbi1sZWZ0OiA1JTtcclxuICB9XHJcbiAgLmNkLWxvZ28gaW1nIHtcclxuICAgIG1hcmdpbi10b3A6IDI5cHg7XHJcbiAgfVxyXG59XHJcblxyXG4uY2QtbmF2LXRyaWdnZXIge1xyXG4gIGRpc3BsYXk6IGJsb2NrO1xyXG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcclxuICByaWdodDogMDtcclxuICB0b3A6IDA7XHJcbiAgaGVpZ2h0OiAxMDAlO1xyXG4gIHdpZHRoOiA1MHB4O1xyXG4gIC8qIGhpZGUgdGV4dCAqL1xyXG4gIG92ZXJmbG93OiBoaWRkZW47XHJcbiAgd2hpdGUtc3BhY2U6IG5vd3JhcDtcclxuICBjb2xvcjogdHJhbnNwYXJlbnQ7XHJcbn1cclxuLmNkLW5hdi10cmlnZ2VyIHNwYW4ge1xyXG4gIC8qIGhhbWJ1cmdlciBpY29uIGNyZWF0ZWQgaW4gQ1NTICovXHJcbiAgcG9zaXRpb246IGFic29sdXRlO1xyXG4gIGhlaWdodDogMnB4O1xyXG4gIHdpZHRoOiAyMHB4O1xyXG4gIHRvcDogNTAlO1xyXG4gIG1hcmdpbi10b3A6IC0xcHg7XHJcbiAgbGVmdDogNTAlO1xyXG4gIG1hcmdpbi1sZWZ0OiAtMTBweDtcclxuICAtd2Via2l0LXRyYW5zaXRpb246IGJhY2tncm91bmQtY29sb3IgMC4zcyAwLjNzO1xyXG4gIC1tb3otdHJhbnNpdGlvbjogYmFja2dyb3VuZC1jb2xvciAwLjNzIDAuM3M7XHJcbiAgdHJhbnNpdGlvbjogYmFja2dyb3VuZC1jb2xvciAwLjNzIDAuM3M7XHJcbiAgYmFja2dyb3VuZC1jb2xvcjogI2ZmZmZmZjtcclxufVxyXG4uY2QtbmF2LXRyaWdnZXIgc3Bhbjo6YmVmb3JlLCAuY2QtbmF2LXRyaWdnZXIgc3Bhbjo6YWZ0ZXIge1xyXG4gIC8qIHVwcGVyIGFuZCBsb3dlciBsaW5lcyBvZiB0aGUgbWVudSBpY29uICovXHJcbiAgY29udGVudDogJyc7XHJcbiAgcG9zaXRpb246IGFic29sdXRlO1xyXG4gIHdpZHRoOiAxMDAlO1xyXG4gIGhlaWdodDogMTAwJTtcclxuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZmZmZmZmO1xyXG4gIC8qIEZvcmNlIEhhcmR3YXJlIEFjY2VsZXJhdGlvbiAqL1xyXG4gIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGVaKDApO1xyXG4gIC1tb3otdHJhbnNmb3JtOiB0cmFuc2xhdGVaKDApO1xyXG4gIC1tcy10cmFuc2Zvcm06IHRyYW5zbGF0ZVooMCk7XHJcbiAgLW8tdHJhbnNmb3JtOiB0cmFuc2xhdGVaKDApO1xyXG4gIHRyYW5zZm9ybTogdHJhbnNsYXRlWigwKTtcclxuICAtd2Via2l0LWJhY2tmYWNlLXZpc2liaWxpdHk6IGhpZGRlbjtcclxuICBiYWNrZmFjZS12aXNpYmlsaXR5OiBoaWRkZW47XHJcbiAgLXdlYmtpdC10cmFuc2l0aW9uOiAtd2Via2l0LXRyYW5zZm9ybSAwLjNzIDAuM3M7XHJcbiAgLW1vei10cmFuc2l0aW9uOiAtbW96LXRyYW5zZm9ybSAwLjNzIDAuM3M7XHJcbiAgdHJhbnNpdGlvbjogdHJhbnNmb3JtIDAuM3MgMC4zcztcclxufVxyXG4uY2QtbmF2LXRyaWdnZXIgc3Bhbjo6YmVmb3JlIHtcclxuICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlWSgtNnB4KTtcclxuICAtbW96LXRyYW5zZm9ybTogdHJhbnNsYXRlWSgtNnB4KTtcclxuICAtbXMtdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC02cHgpO1xyXG4gIC1vLXRyYW5zZm9ybTogdHJhbnNsYXRlWSgtNnB4KTtcclxuICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTZweCk7XHJcbn1cclxuLmNkLW5hdi10cmlnZ2VyIHNwYW46OmFmdGVyIHtcclxuICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlWSg2cHgpO1xyXG4gIC1tb3otdHJhbnNmb3JtOiB0cmFuc2xhdGVZKDZweCk7XHJcbiAgLW1zLXRyYW5zZm9ybTogdHJhbnNsYXRlWSg2cHgpO1xyXG4gIC1vLXRyYW5zZm9ybTogdHJhbnNsYXRlWSg2cHgpO1xyXG4gIHRyYW5zZm9ybTogdHJhbnNsYXRlWSg2cHgpO1xyXG59XHJcbi5uYXYtaXMtdmlzaWJsZSAuY2QtbmF2LXRyaWdnZXIgc3BhbiB7XHJcbiAgYmFja2dyb3VuZC1jb2xvcjogcmdiYSgyNTUsIDI1NSwgMjU1LCAwKTtcclxufVxyXG4ubmF2LWlzLXZpc2libGUgLmNkLW5hdi10cmlnZ2VyIHNwYW46OmJlZm9yZSB7XHJcbiAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZVkoMCkgcm90YXRlKC00NWRlZyk7XHJcbiAgLW1vei10cmFuc2Zvcm06IHRyYW5zbGF0ZVkoMCkgcm90YXRlKC00NWRlZyk7XHJcbiAgLW1zLXRyYW5zZm9ybTogdHJhbnNsYXRlWSgwKSByb3RhdGUoLTQ1ZGVnKTtcclxuICAtby10cmFuc2Zvcm06IHRyYW5zbGF0ZVkoMCkgcm90YXRlKC00NWRlZyk7XHJcbiAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKDApIHJvdGF0ZSgtNDVkZWcpO1xyXG59XHJcbi5uYXYtaXMtdmlzaWJsZSAuY2QtbmF2LXRyaWdnZXIgc3Bhbjo6YWZ0ZXIge1xyXG4gIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGVZKDApIHJvdGF0ZSg0NWRlZyk7XHJcbiAgLW1vei10cmFuc2Zvcm06IHRyYW5zbGF0ZVkoMCkgcm90YXRlKDQ1ZGVnKTtcclxuICAtbXMtdHJhbnNmb3JtOiB0cmFuc2xhdGVZKDApIHJvdGF0ZSg0NWRlZyk7XHJcbiAgLW8tdHJhbnNmb3JtOiB0cmFuc2xhdGVZKDApIHJvdGF0ZSg0NWRlZyk7XHJcbiAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKDApIHJvdGF0ZSg0NWRlZyk7XHJcbn1cclxuQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWluLXdpZHRoOiAxMDI0cHgpIHtcclxuICAuY2QtbmF2LXRyaWdnZXIge1xyXG4gICAgZGlzcGxheTogbm9uZTtcclxuICB9XHJcbn1cclxuXHJcbi5jZC1tYWluLW5hdiB7XHJcbiAgcG9zaXRpb246IGZpeGVkO1xyXG4gIHotaW5kZXg6IDE7XHJcbiAgdG9wOiAwO1xyXG4gIHJpZ2h0OiAwO1xyXG4gIHdpZHRoOiAyNjBweDtcclxuICBoZWlnaHQ6IDEwMHZoO1xyXG4gIG92ZXJmbG93OiBhdXRvO1xyXG4gIC13ZWJraXQtb3ZlcmZsb3ctc2Nyb2xsaW5nOiB0b3VjaDtcclxuICB2aXNpYmlsaXR5OiBoaWRkZW47XHJcbiAgYmFja2dyb3VuZDogIzFlMjYyYztcclxuICAtd2Via2l0LXRyYW5zaXRpb246IHZpc2liaWxpdHkgMHMgMC4zcztcclxuICAtbW96LXRyYW5zaXRpb246IHZpc2liaWxpdHkgMHMgMC4zcztcclxuICB0cmFuc2l0aW9uOiB2aXNpYmlsaXR5IDBzIDAuM3M7XHJcbn1cclxuLmNkLW1haW4tbmF2IGEge1xyXG4gIGRpc3BsYXk6IGJsb2NrO1xyXG4gIGZvbnQtc2l6ZTogMS44cmVtO1xyXG4gIHBhZGRpbmc6IC45ZW0gMmVtIC45ZW0gMWVtO1xyXG4gIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCAjMzM0MTRhO1xyXG4gIGNvbG9yOiAjZmZmZmZmO1xyXG4gIC13ZWJraXQtdHJhbnNpdGlvbjogLXdlYmtpdC10cmFuc2Zvcm0gMC4zcywgb3BhY2l0eSAwLjNzO1xyXG4gIC1tb3otdHJhbnNpdGlvbjogLW1vei10cmFuc2Zvcm0gMC4zcywgb3BhY2l0eSAwLjNzO1xyXG4gIHRyYW5zaXRpb246IHRyYW5zZm9ybSAwLjNzLCBvcGFjaXR5IDAuM3M7XHJcbn1cclxuLmNkLW1haW4tbmF2IGxpIHVsIHtcclxuICBwb3NpdGlvbjogYWJzb2x1dGU7XHJcbiAgdG9wOiAwO1xyXG4gIGxlZnQ6IDA7XHJcbiAgd2lkdGg6IDEwMCU7XHJcbiAgLXdlYmtpdC10cmFuc2l0aW9uOiAtd2Via2l0LXRyYW5zZm9ybSAwLjNzO1xyXG4gIC1tb3otdHJhbnNpdGlvbjogLW1vei10cmFuc2Zvcm0gMC4zcztcclxuICB0cmFuc2l0aW9uOiB0cmFuc2Zvcm0gMC4zcztcclxuICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlWCgyNjBweCk7XHJcbiAgLW1vei10cmFuc2Zvcm06IHRyYW5zbGF0ZVgoMjYwcHgpO1xyXG4gIC1tcy10cmFuc2Zvcm06IHRyYW5zbGF0ZVgoMjYwcHgpO1xyXG4gIC1vLXRyYW5zZm9ybTogdHJhbnNsYXRlWCgyNjBweCk7XHJcbiAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKDI2MHB4KTtcclxufVxyXG4uY2QtbWFpbi1uYXYubmF2LWlzLXZpc2libGUge1xyXG4gIHZpc2liaWxpdHk6IHZpc2libGU7XHJcbiAgLXdlYmtpdC10cmFuc2l0aW9uOiB2aXNpYmlsaXR5IDBzIDBzO1xyXG4gIC1tb3otdHJhbnNpdGlvbjogdmlzaWJpbGl0eSAwcyAwcztcclxuICB0cmFuc2l0aW9uOiB2aXNpYmlsaXR5IDBzIDBzO1xyXG59XHJcbi5jZC1tYWluLW5hdi5tb3Zlcy1vdXQgPiBsaSA+IGEge1xyXG4gIC8qIHB1c2ggdGhlIG5hdmlnYXRpb24gaXRlbXMgdG8gdGhlIGxlZnQgLSBhbmQgbG93ZXIgZG93biBvcGFjaXR5IC0gd2hlbiBzZWNvbmRhcnkgbmF2IHNsaWRlcyBpbiAqL1xyXG4gIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGVYKC0xMDAlKTtcclxuICAtbW96LXRyYW5zZm9ybTogdHJhbnNsYXRlWCgtMTAwJSk7XHJcbiAgLW1zLXRyYW5zZm9ybTogdHJhbnNsYXRlWCgtMTAwJSk7XHJcbiAgLW8tdHJhbnNmb3JtOiB0cmFuc2xhdGVYKC0xMDAlKTtcclxuICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoLTEwMCUpO1xyXG4gIG9wYWNpdHk6IDA7XHJcbn1cclxuLmNkLW1haW4tbmF2Lm1vdmVzLW91dCA+IGxpID4gdWwge1xyXG4gIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGVYKDApO1xyXG4gIC1tb3otdHJhbnNmb3JtOiB0cmFuc2xhdGVYKDApO1xyXG4gIC1tcy10cmFuc2Zvcm06IHRyYW5zbGF0ZVgoMCk7XHJcbiAgLW8tdHJhbnNmb3JtOiB0cmFuc2xhdGVYKDApO1xyXG4gIHRyYW5zZm9ybTogdHJhbnNsYXRlWCgwKTtcclxufVxyXG4uY2QtbWFpbi1uYXYgLmNkLXN1Ym5hdi10cmlnZ2VyLCAuY2QtbWFpbi1uYXYgLmdvLWJhY2sgYSB7XHJcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xyXG59XHJcbi5jZC1tYWluLW5hdiAuY2Qtc3VibmF2LXRyaWdnZXI6OmJlZm9yZSwgLmNkLW1haW4tbmF2IC5jZC1zdWJuYXYtdHJpZ2dlcjo6YWZ0ZXIsIC5jZC1tYWluLW5hdiAuZ28tYmFjayBhOjpiZWZvcmUsIC5jZC1tYWluLW5hdiAuZ28tYmFjayBhOjphZnRlciB7XHJcbiAgLyogYXJyb3cgaWNvbiBpbiBDU1MgKi9cclxuICBjb250ZW50OiAnJztcclxuICBwb3NpdGlvbjogYWJzb2x1dGU7XHJcbiAgdG9wOiA1MCU7XHJcbiAgbWFyZ2luLXRvcDogLTFweDtcclxuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XHJcbiAgaGVpZ2h0OiAycHg7XHJcbiAgd2lkdGg6IDEwcHg7XHJcbiAgYmFja2dyb3VuZDogIzQ4NWM2ODtcclxuICAtd2Via2l0LWJhY2tmYWNlLXZpc2liaWxpdHk6IGhpZGRlbjtcclxuICBiYWNrZmFjZS12aXNpYmlsaXR5OiBoaWRkZW47XHJcbn1cclxuLmNkLW1haW4tbmF2IC5jZC1zdWJuYXYtdHJpZ2dlcjo6YmVmb3JlLCAuY2QtbWFpbi1uYXYgLmdvLWJhY2sgYTo6YmVmb3JlIHtcclxuICAtd2Via2l0LXRyYW5zZm9ybTogcm90YXRlKDQ1ZGVnKTtcclxuICAtbW96LXRyYW5zZm9ybTogcm90YXRlKDQ1ZGVnKTtcclxuICAtbXMtdHJhbnNmb3JtOiByb3RhdGUoNDVkZWcpO1xyXG4gIC1vLXRyYW5zZm9ybTogcm90YXRlKDQ1ZGVnKTtcclxuICB0cmFuc2Zvcm06IHJvdGF0ZSg0NWRlZyk7XHJcbn1cclxuLmNkLW1haW4tbmF2IC5jZC1zdWJuYXYtdHJpZ2dlcjo6YWZ0ZXIsIC5jZC1tYWluLW5hdiAuZ28tYmFjayBhOjphZnRlciB7XHJcbiAgLXdlYmtpdC10cmFuc2Zvcm06IHJvdGF0ZSgtNDVkZWcpO1xyXG4gIC1tb3otdHJhbnNmb3JtOiByb3RhdGUoLTQ1ZGVnKTtcclxuICAtbXMtdHJhbnNmb3JtOiByb3RhdGUoLTQ1ZGVnKTtcclxuICAtby10cmFuc2Zvcm06IHJvdGF0ZSgtNDVkZWcpO1xyXG4gIHRyYW5zZm9ybTogcm90YXRlKC00NWRlZyk7XHJcbn1cclxuLmNkLW1haW4tbmF2IC5jZC1zdWJuYXYtdHJpZ2dlcjo6YmVmb3JlLCAuY2QtbWFpbi1uYXYgLmNkLXN1Ym5hdi10cmlnZ2VyOjphZnRlciB7XHJcbiAgLyogYXJyb3cgZ29lcyBvbiB0aGUgcmlnaHQgc2lkZSAtIGNoaWxkcmVuIG5hdmlnYXRpb24gKi9cclxuICByaWdodDogMjBweDtcclxuICAtd2Via2l0LXRyYW5zZm9ybS1vcmlnaW46IDlweCA1MCU7XHJcbiAgLW1vei10cmFuc2Zvcm0tb3JpZ2luOiA5cHggNTAlO1xyXG4gIC1tcy10cmFuc2Zvcm0tb3JpZ2luOiA5cHggNTAlO1xyXG4gIC1vLXRyYW5zZm9ybS1vcmlnaW46IDlweCA1MCU7XHJcbiAgdHJhbnNmb3JtLW9yaWdpbjogOXB4IDUwJTtcclxufVxyXG4uY2QtbWFpbi1uYXYgLmdvLWJhY2sgYSB7XHJcbiAgcGFkZGluZy1sZWZ0OiAyZW07XHJcbn1cclxuLmNkLW1haW4tbmF2IC5nby1iYWNrIGE6OmJlZm9yZSwgLmNkLW1haW4tbmF2IC5nby1iYWNrIGE6OmFmdGVyIHtcclxuICAvKiBhcnJvdyBnb2VzIG9uIHRoZSBsZWZ0IHNpZGUgLSBnbyBiYWNrIGJ1dHRvbiAqL1xyXG4gIGxlZnQ6IDIwcHg7XHJcbiAgLXdlYmtpdC10cmFuc2Zvcm0tb3JpZ2luOiAxcHggNTAlO1xyXG4gIC1tb3otdHJhbnNmb3JtLW9yaWdpbjogMXB4IDUwJTtcclxuICAtbXMtdHJhbnNmb3JtLW9yaWdpbjogMXB4IDUwJTtcclxuICAtby10cmFuc2Zvcm0tb3JpZ2luOiAxcHggNTAlO1xyXG4gIHRyYW5zZm9ybS1vcmlnaW46IDFweCA1MCU7XHJcbn1cclxuLmNkLW1haW4tbmF2IC5wbGFjZWhvbGRlciB7XHJcbiAgLyogbmV2ZXIgdmlzaWJsZSBvciBjbGlja2FibGUtIGl0IGlzIHVzZWQgdG8gdGFrZSB1cCB0aGUgc2FtZSBzcGFjZSBhcyB0aGUgLmNkLXN1Ym5hdi10cmlnZ2VyICovXHJcbiAgZGlzcGxheTogbm9uZTtcclxufVxyXG5AbWVkaWEgb25seSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDEwMjRweCkge1xyXG4gIC5jZC1tYWluLW5hdiB7XHJcbiAgICBwb3NpdGlvbjogc3RhdGljO1xyXG4gICAgdmlzaWJpbGl0eTogdmlzaWJsZTtcclxuICAgIHdpZHRoOiAxMDAlO1xyXG4gICAgaGVpZ2h0OiA4MHB4O1xyXG4gICAgbGluZS1oZWlnaHQ6IDgwcHg7XHJcbiAgICAvKiBwYWRkaW5nIGxlZnQgPSBsb2dvIHNpemUgKyBsb2dvIGxlZnQgcG9zaXRpb24qL1xyXG4gICAgcGFkZGluZzogMCA1JSAwIGNhbGMoNSUgKyAxMjRweCk7XHJcbiAgICBiYWNrZ3JvdW5kOiB0cmFuc3BhcmVudDtcclxuICAgIHRleHQtYWxpZ246IHJpZ2h0O1xyXG4gIH1cclxuICAuY2QtbWFpbi1uYXYgbGkge1xyXG4gICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xyXG4gICAgaGVpZ2h0OiAxMDAlO1xyXG4gICAgcGFkZGluZzogMCAuNGVtO1xyXG4gIH1cclxuICAuY2QtbWFpbi1uYXYgbGkgYSB7XHJcbiAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XHJcbiAgICBwYWRkaW5nOiAuOGVtO1xyXG4gICAgbGluZS1oZWlnaHQ6IDE7XHJcbiAgICBmb250LXNpemU6IDEuNnJlbTtcclxuICAgIGJvcmRlci1ib3R0b206IG5vbmU7XHJcbiAgICAvKiBQcmV2ZW50IC5jZC1zdWJuYXYtdHJpZ2dlciBmbGlja2VyIGlzIFNhZmFyaSAqL1xyXG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZVooMCk7XHJcbiAgICAtbW96LXRyYW5zZm9ybTogdHJhbnNsYXRlWigwKTtcclxuICAgIC1tcy10cmFuc2Zvcm06IHRyYW5zbGF0ZVooMCk7XHJcbiAgICAtby10cmFuc2Zvcm06IHRyYW5zbGF0ZVooMCk7XHJcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVooMCk7XHJcbiAgICAtd2Via2l0LWJhY2tmYWNlLXZpc2liaWxpdHk6IGhpZGRlbjtcclxuICAgIGJhY2tmYWNlLXZpc2liaWxpdHk6IGhpZGRlbjtcclxuICAgIC13ZWJraXQtdHJhbnNpdGlvbjogb3BhY2l0eSAwLjJzO1xyXG4gICAgLW1vei10cmFuc2l0aW9uOiBvcGFjaXR5IDAuMnM7XHJcbiAgICB0cmFuc2l0aW9uOiBvcGFjaXR5IDAuMnM7XHJcbiAgfVxyXG4gIC5jZC1tYWluLW5hdiBsaSBhOm5vdCguY2Qtc3VibmF2LXRyaWdnZXIpOmhvdmVyIHtcclxuICAgIC13ZWJraXQtYmFja2ZhY2UtdmlzaWJpbGl0eTogaGlkZGVuO1xyXG4gICAgYmFja2ZhY2UtdmlzaWJpbGl0eTogaGlkZGVuO1xyXG4gICAgb3BhY2l0eTogLjY7XHJcbiAgfVxyXG4gIC5jZC1tYWluLW5hdiAuZ28tYmFjayB7XHJcbiAgICBkaXNwbGF5OiBub25lO1xyXG4gIH1cclxuICAuY2QtbWFpbi1uYXYgLmNkLXN1Ym5hdi10cmlnZ2VyIHtcclxuICAgIHotaW5kZXg6IDE7XHJcbiAgICBib3JkZXI6IDFweCBzb2xpZCByZ2JhKDI1NSwgMjU1LCAyNTUsIDAuMik7XHJcbiAgICBib3JkZXItcmFkaXVzOiA1ZW07XHJcbiAgICAtd2Via2l0LXRyYW5zaXRpb246IGJvcmRlciAwLjNzO1xyXG4gICAgLW1vei10cmFuc2l0aW9uOiBib3JkZXIgMC4zcztcclxuICAgIHRyYW5zaXRpb246IGJvcmRlciAwLjNzO1xyXG4gIH1cclxuICAuY2QtbWFpbi1uYXYgLmNkLXN1Ym5hdi10cmlnZ2VyOmhvdmVyIHtcclxuICAgIGJvcmRlci1jb2xvcjogcmdiYSgyNTUsIDI1NSwgMjU1LCAwLjQpO1xyXG4gIH1cclxuICAuY2QtbWFpbi1uYXYgLmNkLXN1Ym5hdi10cmlnZ2VyOjpiZWZvcmUsIC5jZC1tYWluLW5hdiAuY2Qtc3VibmF2LXRyaWdnZXI6OmFmdGVyIHtcclxuICAgIHRvcDogMjJweDtcclxuICAgIHJpZ2h0OiAxN3B4O1xyXG4gICAgYmFja2dyb3VuZC1jb2xvcjogI2ZmZmZmZjtcclxuICAgIC8qIGNoYW5nZSB0cmFuc2Zvcm0tb3JpZ2luIHRvIHJvdGF0ZSB0aGUgYXJyb3cgKi9cclxuICAgIC13ZWJraXQtdHJhbnNmb3JtLW9yaWdpbjogNTAlIDUwJTtcclxuICAgIC1tb3otdHJhbnNmb3JtLW9yaWdpbjogNTAlIDUwJTtcclxuICAgIC1tcy10cmFuc2Zvcm0tb3JpZ2luOiA1MCUgNTAlO1xyXG4gICAgLW8tdHJhbnNmb3JtLW9yaWdpbjogNTAlIDUwJTtcclxuICAgIHRyYW5zZm9ybS1vcmlnaW46IDUwJSA1MCU7XHJcbiAgICAtd2Via2l0LXRyYW5zaXRpb246IC13ZWJraXQtdHJhbnNmb3JtIDAuM3MsIHdpZHRoIDAuM3MsIHJpZ2h0IDAuM3M7XHJcbiAgICAtbW96LXRyYW5zaXRpb246IC1tb3otdHJhbnNmb3JtIDAuM3MsIHdpZHRoIDAuM3MsIHJpZ2h0IDAuM3M7XHJcbiAgICB0cmFuc2l0aW9uOiB0cmFuc2Zvcm0gMC4zcywgd2lkdGggMC4zcywgcmlnaHQgMC4zcztcclxuICB9XHJcbiAgLmNkLW1haW4tbmF2IC5jZC1zdWJuYXYtdHJpZ2dlcjo6YmVmb3JlIHtcclxuICAgIHJpZ2h0OiAyM3B4O1xyXG4gIH1cclxuICAuY2QtbWFpbi1uYXYgLmNkLXN1Ym5hdi10cmlnZ2VyLCAuY2QtbWFpbi1uYXYgLnBsYWNlaG9sZGVyIHtcclxuICAgIHBhZGRpbmctcmlnaHQ6IDIuNGVtO1xyXG4gICAgcGFkZGluZy1sZWZ0OiAxLjFlbTtcclxuICB9XHJcbiAgLmNkLW1haW4tbmF2IGxpIHVsIHtcclxuICAgIGhlaWdodDogODBweDtcclxuICAgIGJhY2tncm91bmQtY29sb3I6ICM3ZTRkN2U7XHJcbiAgICAvKiBwYWRkaW5nIGxlZnQgPSBsb2dvIHNpemUgKyBsb2dvIGxlZnQgcG9zaXRpb24qL1xyXG4gICAgcGFkZGluZzogMCA1JSAwIGNhbGMoNSUgKyAxMjRweCk7XHJcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlWSgtODBweCk7XHJcbiAgICAtbW96LXRyYW5zZm9ybTogdHJhbnNsYXRlWSgtODBweCk7XHJcbiAgICAtbXMtdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC04MHB4KTtcclxuICAgIC1vLXRyYW5zZm9ybTogdHJhbnNsYXRlWSgtODBweCk7XHJcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTgwcHgpO1xyXG4gICAgLXdlYmtpdC10cmFuc2l0aW9uOiAtd2Via2l0LXRyYW5zZm9ybSAwLjNzIDAuMnM7XHJcbiAgICAtbW96LXRyYW5zaXRpb246IC1tb3otdHJhbnNmb3JtIDAuM3MgMC4ycztcclxuICAgIHRyYW5zaXRpb246IHRyYW5zZm9ybSAwLjNzIDAuMnM7XHJcbiAgfVxyXG4gIC5jZC1tYWluLW5hdiBsaSB1bCBsaSB7XHJcbiAgICBvcGFjaXR5OiAwO1xyXG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTIwcHgpO1xyXG4gICAgLW1vei10cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTIwcHgpO1xyXG4gICAgLW1zLXRyYW5zZm9ybTogdHJhbnNsYXRlWSgtMjBweCk7XHJcbiAgICAtby10cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTIwcHgpO1xyXG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC0yMHB4KTtcclxuICAgIC13ZWJraXQtdHJhbnNpdGlvbjogLXdlYmtpdC10cmFuc2Zvcm0gMC4zcyAwcywgb3BhY2l0eSAwLjNzIDBzO1xyXG4gICAgLW1vei10cmFuc2l0aW9uOiAtbW96LXRyYW5zZm9ybSAwLjNzIDBzLCBvcGFjaXR5IDAuM3MgMHM7XHJcbiAgICB0cmFuc2l0aW9uOiB0cmFuc2Zvcm0gMC4zcyAwcywgb3BhY2l0eSAwLjNzIDBzO1xyXG4gIH1cclxuICAuY2QtbWFpbi1uYXYgLnBsYWNlaG9sZGVyIHtcclxuICAgIC8qIG5ldmVyIHZpc2libGUgb3IgY2xpY2thYmxlLSBpdCBpcyB1c2VkIHRvIHRha2UgdXAgdGhlIHNhbWUgc3BhY2UgYXMgdGhlIC5jZC1zdWJuYXYtdHJpZ2dlciAqL1xyXG4gICAgZGlzcGxheTogYmxvY2s7XHJcbiAgICB2aXNpYmlsaXR5OiBoaWRkZW47XHJcbiAgICBvcGFjaXR5OiAwO1xyXG4gICAgcG9pbnRlci1ldmVudDogbm9uZTtcclxuICB9XHJcbiAgLmNkLW1haW4tbmF2Lm1vdmVzLW91dCA+IGxpID4gYSB7XHJcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlWCgwKTtcclxuICAgIC1tb3otdHJhbnNmb3JtOiB0cmFuc2xhdGVYKDApO1xyXG4gICAgLW1zLXRyYW5zZm9ybTogdHJhbnNsYXRlWCgwKTtcclxuICAgIC1vLXRyYW5zZm9ybTogdHJhbnNsYXRlWCgwKTtcclxuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWCgwKTtcclxuICAgIG9wYWNpdHk6IDE7XHJcbiAgfVxyXG4gIC5jZC1tYWluLW5hdi5tb3Zlcy1vdXQgPiBsaSA+IHVsIHtcclxuICAgIC13ZWJraXQtdHJhbnNpdGlvbjogLXdlYmtpdC10cmFuc2Zvcm0gMC4zcztcclxuICAgIC1tb3otdHJhbnNpdGlvbjogLW1vei10cmFuc2Zvcm0gMC4zcztcclxuICAgIHRyYW5zaXRpb246IHRyYW5zZm9ybSAwLjNzO1xyXG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZVkoMCk7XHJcbiAgICAtbW96LXRyYW5zZm9ybTogdHJhbnNsYXRlWSgwKTtcclxuICAgIC1tcy10cmFuc2Zvcm06IHRyYW5zbGF0ZVkoMCk7XHJcbiAgICAtby10cmFuc2Zvcm06IHRyYW5zbGF0ZVkoMCk7XHJcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoMCk7XHJcbiAgfVxyXG4gIC5jZC1tYWluLW5hdi5tb3Zlcy1vdXQgPiBsaSB1bCBsaSB7XHJcbiAgICBvcGFjaXR5OiAxO1xyXG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZVkoMCk7XHJcbiAgICAtbW96LXRyYW5zZm9ybTogdHJhbnNsYXRlWSgwKTtcclxuICAgIC1tcy10cmFuc2Zvcm06IHRyYW5zbGF0ZVkoMCk7XHJcbiAgICAtby10cmFuc2Zvcm06IHRyYW5zbGF0ZVkoMCk7XHJcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoMCk7XHJcbiAgICAtd2Via2l0LXRyYW5zaXRpb246IC13ZWJraXQtdHJhbnNmb3JtIDAuM3MgMC4ycywgb3BhY2l0eSAwLjNzIDAuMnM7XHJcbiAgICAtbW96LXRyYW5zaXRpb246IC1tb3otdHJhbnNmb3JtIDAuM3MgMC4ycywgb3BhY2l0eSAwLjNzIDAuMnM7XHJcbiAgICB0cmFuc2l0aW9uOiB0cmFuc2Zvcm0gMC4zcyAwLjJzLCBvcGFjaXR5IDAuM3MgMC4ycztcclxuICB9XHJcbiAgLmNkLW1haW4tbmF2Lm1vdmVzLW91dCAuY2Qtc3VibmF2LXRyaWdnZXI6OmJlZm9yZSwgLmNkLW1haW4tbmF2Lm1vdmVzLW91dCAuY2Qtc3VibmF2LXRyaWdnZXI6OmFmdGVyIHtcclxuICAgIHdpZHRoOiAxNHB4O1xyXG4gICAgcmlnaHQ6IDE3cHg7XHJcbiAgfVxyXG4gIC5jZC1tYWluLW5hdi5tb3Zlcy1vdXQgLmNkLXN1Ym5hdi10cmlnZ2VyOjpiZWZvcmUge1xyXG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHJvdGF0ZSgyMjVkZWcpO1xyXG4gICAgLW1vei10cmFuc2Zvcm06IHJvdGF0ZSgyMjVkZWcpO1xyXG4gICAgLW1zLXRyYW5zZm9ybTogcm90YXRlKDIyNWRlZyk7XHJcbiAgICAtby10cmFuc2Zvcm06IHJvdGF0ZSgyMjVkZWcpO1xyXG4gICAgdHJhbnNmb3JtOiByb3RhdGUoMjI1ZGVnKTtcclxuICB9XHJcbiAgLmNkLW1haW4tbmF2Lm1vdmVzLW91dCAuY2Qtc3VibmF2LXRyaWdnZXI6OmFmdGVyIHtcclxuICAgIC13ZWJraXQtdHJhbnNmb3JtOiByb3RhdGUoMTM1ZGVnKTtcclxuICAgIC1tb3otdHJhbnNmb3JtOiByb3RhdGUoMTM1ZGVnKTtcclxuICAgIC1tcy10cmFuc2Zvcm06IHJvdGF0ZSgxMzVkZWcpO1xyXG4gICAgLW8tdHJhbnNmb3JtOiByb3RhdGUoMTM1ZGVnKTtcclxuICAgIHRyYW5zZm9ybTogcm90YXRlKDEzNWRlZyk7XHJcbiAgfVxyXG59XHJcblxyXG4uY2QtbWFpbi1jb250ZW50OjpiZWZvcmUge1xyXG4gIC8qIG5ldmVyIHZpc2libGUgLSB0aGlzIGlzIHVzZWQgaW4galF1ZXJ5IHRvIGNoZWNrIHRoZSBjdXJyZW50IE1RICovXHJcbiAgZGlzcGxheTogbm9uZTtcclxuICBjb250ZW50OiAnbW9iaWxlJztcclxufVxyXG5AbWVkaWEgb25seSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDEwMjRweCkge1xyXG4gIC5jZC1tYWluLWNvbnRlbnQ6OmJlZm9yZSB7XHJcbiAgICBjb250ZW50OiAnZGVza3RvcCc7XHJcbiAgfVxyXG59XHJcblxyXG4uY2QtbWFpbi1jb250ZW50IHtcclxuICBwb3NpdGlvbjogcmVsYXRpdmU7XHJcbiAgei1pbmRleDogMjtcclxuICBtaW4taGVpZ2h0OiAxMDB2aDtcclxuICBwYWRkaW5nLXRvcDogNTBweDtcclxuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZjJmMmYyO1xyXG4gIC13ZWJraXQtdHJhbnNpdGlvbjogLXdlYmtpdC10cmFuc2Zvcm0gMC4zcztcclxuICAtbW96LXRyYW5zaXRpb246IC1tb3otdHJhbnNmb3JtIDAuM3M7XHJcbiAgdHJhbnNpdGlvbjogdHJhbnNmb3JtIDAuM3M7XHJcbn1cclxuLmNkLW1haW4tY29udGVudC5uYXYtaXMtdmlzaWJsZSB7XHJcbiAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZVgoLTI2MHB4KTtcclxuICAtbW96LXRyYW5zZm9ybTogdHJhbnNsYXRlWCgtMjYwcHgpO1xyXG4gIC1tcy10cmFuc2Zvcm06IHRyYW5zbGF0ZVgoLTI2MHB4KTtcclxuICAtby10cmFuc2Zvcm06IHRyYW5zbGF0ZVgoLTI2MHB4KTtcclxuICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoLTI2MHB4KTtcclxufVxyXG5AbWVkaWEgb25seSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDEwMjRweCkge1xyXG4gIC5jZC1tYWluLWNvbnRlbnQge1xyXG4gICAgcGFkZGluZy10b3A6IDgwcHg7XHJcbiAgfVxyXG4gIC5jZC1tYWluLWNvbnRlbnQubmF2LWlzLXZpc2libGUge1xyXG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZVgoMCk7XHJcbiAgICAtbW96LXRyYW5zZm9ybTogdHJhbnNsYXRlWCgwKTtcclxuICAgIC1tcy10cmFuc2Zvcm06IHRyYW5zbGF0ZVgoMCk7XHJcbiAgICAtby10cmFuc2Zvcm06IHRyYW5zbGF0ZVgoMCk7XHJcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoMCk7XHJcbiAgfVxyXG59XHJcblxyXG4ubm8tanMgLmNkLW5hdi10cmlnZ2VyLCAubm8tanMgLmNkLXN1Ym5hdi10cmlnZ2VyIHtcclxuICBkaXNwbGF5OiBub25lO1xyXG59XHJcblxyXG4ubm8tanMgaGVhZGVyIHtcclxuICBwb3NpdGlvbjogcmVsYXRpdmU7XHJcbiAgaGVpZ2h0OiBhdXRvO1xyXG59XHJcblxyXG4ubm8tanMgLmNkLWxvZ28gaW1nIHtcclxuICBtYXJnaW4tYm90dG9tOiAxNHB4O1xyXG59XHJcblxyXG4ubm8tanMgLmNkLW1haW4tbmF2IHtcclxuICBwb3NpdGlvbjogc3RhdGljO1xyXG4gIHdpZHRoOiAxMDAlO1xyXG4gIGhlaWdodDogYXV0bztcclxuICB2aXNpYmlsaXR5OiB2aXNpYmxlO1xyXG4gIG92ZXJmbG93OiB2aXNpYmxlO1xyXG59XHJcbi5uby1qcyAuY2QtbWFpbi1uYXYgbGkge1xyXG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcclxufVxyXG4ubm8tanMgLmNkLW1haW4tbmF2IGxpOmxhc3QtY2hpbGQge1xyXG4gIGRpc3BsYXk6IGJsb2NrO1xyXG59XHJcbi5uby1qcyAuY2QtbWFpbi1uYXYgLmdvLWJhY2sge1xyXG4gIGRpc3BsYXk6IG5vbmU7XHJcbn1cclxuLm5vLWpzIC5jZC1tYWluLW5hdiBsaSB1bCB7XHJcbiAgcG9zaXRpb246IHN0YXRpYztcclxuICB3aWR0aDogMTAwJTtcclxuICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlWCgwKTtcclxuICAtbW96LXRyYW5zZm9ybTogdHJhbnNsYXRlWCgwKTtcclxuICAtbXMtdHJhbnNmb3JtOiB0cmFuc2xhdGVYKDApO1xyXG4gIC1vLXRyYW5zZm9ybTogdHJhbnNsYXRlWCgwKTtcclxuICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoMCk7XHJcbn1cclxuQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWluLXdpZHRoOiAxMDI0cHgpIHtcclxuICAubm8tanMgLmNkLW1haW4tbmF2IHtcclxuICAgIGhlaWdodDogODBweDtcclxuICB9XHJcbiAgLm5vLWpzIC5jZC1tYWluLW5hdiBsaSB1bCB7XHJcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XHJcbiAgICB0b3A6IDgwcHg7XHJcbiAgfVxyXG4gIC5uby1qcyAuY2QtbWFpbi1uYXYgbGkgdWwgbGkge1xyXG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZVkoMCk7XHJcbiAgICAtbW96LXRyYW5zZm9ybTogdHJhbnNsYXRlWSgwKTtcclxuICAgIC1tcy10cmFuc2Zvcm06IHRyYW5zbGF0ZVkoMCk7XHJcbiAgICAtby10cmFuc2Zvcm06IHRyYW5zbGF0ZVkoMCk7XHJcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoMCk7XHJcbiAgICBvcGFjaXR5OiAxO1xyXG4gIH1cclxuICAubm8tanMgLmNkLW1haW4tbmF2IGxpIHVsIGxpOmxhc3QtY2hpbGQge1xyXG4gICAgZGlzcGxheTogbm9uZTtcclxuICB9XHJcbn1cclxuXHJcbi5uby1qcyAuY2QtbWFpbi1jb250ZW50IHtcclxuICBwYWRkaW5nLXRvcDogMDtcclxufVxyXG5AbWVkaWEgb25seSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDEwMjRweCkge1xyXG4gIC5uby1qcyAuY2QtbWFpbi1jb250ZW50IHtcclxuICAgIHBhZGRpbmctdG9wOiA4MHB4O1xyXG4gIH1cclxufVxyXG4iLCLvu78jYnJlYWRjcnVtYiB7XHJcbiAgICBwYWRkaW5nOiAxMHB4IDA7XHJcbiAgICAvKm1hcmdpbi10b3A6IDEzcHg7Ki9cclxuXHJcbiAgICAuYnJlYWRjcnVtYi1pdGVtIHtcclxuICAgICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XHJcblxyXG4gICAgICAgIGEsIHNwYW4ge1xyXG4gICAgICAgICAgICBjb2xvcjogI2E1YTVhNTtcclxuICAgICAgICAgICAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xyXG4gICAgICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XHJcbiAgICAgICAgICAgIG1hcmdpbjogMCAycHg7XHJcbiAgICAgICAgfVxyXG5cclxuICAgICAgICBhOmhvdmVyIHtcclxuICAgICAgICAgICAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xyXG4gICAgICAgIH1cclxuXHJcbiAgICAgICAgc3BhbjpiZWZvcmUge1xyXG4gICAgICAgICAgICBmb250LXNpemU6IDEzcHg7XHJcbiAgICAgICAgfVxyXG5cclxuICAgICAgICAmLmxldmVsMCB7XHJcblxyXG4gICAgICAgICAgICBhIHNwYW4ge1xyXG4gICAgICAgICAgICAgICAgY29sb3I6ICNhNWE1YTU7XHJcbiAgICAgICAgICAgIH1cclxuXHJcbiAgICAgICAgICAgIHNwYW46YmVmb3JlIHtcclxuICAgICAgICAgICAgICAgIGZvbnQtc2l6ZTogMTVweDtcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuXHJcbiAgICAgICAgJi5sZXZlbDEge1xyXG5cclxuICAgICAgICAgICAgYSBzcGFuIHtcclxuICAgICAgICAgICAgICAgIGNvbG9yOiBkYXJrZW4oI2E1YTVhNSwgMjAlKTtcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuXHJcbiAgICAgICAgJi5sZXZlbDIge1xyXG5cclxuICAgICAgICAgICAgYSBzcGFuIHtcclxuICAgICAgICAgICAgICAgIGNvbG9yOiBkYXJrZW4oI2E1YTVhNSwgNDAlKTtcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuXHJcbiAgICAgICAgJi5sZXZlbDMge1xyXG5cclxuICAgICAgICAgICAgYSBzcGFuIHtcclxuICAgICAgICAgICAgICAgIGNvbG9yOiBkYXJrZW4oI2E1YTVhNSwgNjAlKTtcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuXHJcbiAgICAgICAgJi5sZXZlbDQge1xyXG5cclxuICAgICAgICAgICAgYSBzcGFuIHtcclxuICAgICAgICAgICAgICAgIGNvbG9yOiBkYXJrZW4oI2E1YTVhNSwgODAlKTtcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuICAgIH1cclxufVxyXG4iLCJoZWFkZXIge1xyXG5cclxuICAgIC5zZWFyY2gtaW5wdXQge1xyXG4gICAgICAgIHBhZGRpbmctcmlnaHQ6IDA7XHJcbiAgICAgICAgbWFyZ2luLXJpZ2h0OiAwO1xyXG5cclxuICAgICAgICBpbnB1dFt0eXBlPVwidGV4dFwiXSB7XHJcbiAgICAgICAgICAgIGJvcmRlci1yaWdodDogbm9uZTtcclxuICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogI2VlZWVlZTtcclxuICAgICAgICB9XHJcbiAgICB9XHJcblxyXG4gICAgLnNlYXJjaC1idXR0b24ge1xyXG4gICAgICAgIHBhZGRpbmctbGVmdDogMDtcclxuICAgICAgICBtYXJnaW4tbGVmdDogMDtcclxuXHJcbiAgICAgICAgLmJ0biB7XHJcblxyXG4gICAgICAgICAgICAmLm5wcm9ncmVzcy1saW5rIHtcclxuICAgICAgICAgICAgICAgIG1hcmdpbjogMDtcclxuICAgICAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6ICNmZmY7XHJcbiAgICAgICAgICAgICAgICBoZWlnaHQ6IDQwcHg7XHJcbiAgICAgICAgICAgICAgICBib3JkZXItcmFkaXVzOiAwO1xyXG4gICAgICAgICAgICAgICAgYm9yZGVyOiAxcHggc29saWQgcmdiKDIwNiwgMjA2LCAyMDYpO1xyXG4gICAgICAgICAgICAgICAgYm9yZGVyLWxlZnQ6IG5vbmU7XHJcblxyXG4gICAgICAgICAgICAgICAgJjpob3ZlciB7XHJcbiAgICAgICAgICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogIzIxNjdhZDtcclxuICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuICAgIH1cclxufVxyXG4iLCIubGFuZ3VhZ2Utc3dpdGNoIHtcclxuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcclxuICAgIGxlZnQ6IDA7XHJcblxyXG4gICAgbGkge1xyXG4gICAgICAgIGxpc3Qtc3R5bGUtdHlwZTogbm9uZTtcclxuICAgICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XHJcbiAgICAgICAgbWFyZ2luLXJpZ2h0OiAxNHB4O1xyXG5cclxuICAgICAgICAmLmFjdGl2ZSB7XHJcbiAgICAgICAgICAgIGEge1xyXG4gICAgICAgICAgICAgICAgYm9yZGVyLWJvdHRvbTogN3B4IHNvbGlkICNmZmY7XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICB9XHJcbiAgICB9XHJcbn1cclxuIiwiLyogTWFrZSBjbGlja3MgcGFzcy10aHJvdWdoICovXHJcbiRjb2xvcjogIzIxNjdBRDtcclxuJGNvbG9yMjogIzIyMjtcclxuXHJcbiNucHJvZ3Jlc3Mge1xyXG4gIHBvaW50ZXItZXZlbnRzOiBub25lO1xyXG59XHJcblxyXG4jbnByb2dyZXNzIC5iYXIge1xyXG4gIGJhY2tncm91bmQ6ICRjb2xvcjtcclxuXHJcbiAgcG9zaXRpb246IGZpeGVkO1xyXG4gIHotaW5kZXg6IDEwMzE7XHJcbiAgdG9wOiAwO1xyXG4gIGxlZnQ6IDA7XHJcblxyXG4gIHdpZHRoOiAxMDAlO1xyXG4gIGhlaWdodDogNHB4O1xyXG59XHJcblxyXG4vKiBGYW5jeSBibHVyIGVmZmVjdCAqL1xyXG4jbnByb2dyZXNzIC5wZWcge1xyXG4gIGRpc3BsYXk6IGJsb2NrO1xyXG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcclxuICByaWdodDogMHB4O1xyXG4gIHdpZHRoOiAxMDBweDtcclxuICBoZWlnaHQ6IDEwMCU7XHJcbiAgYm94LXNoYWRvdzogMCAwIDEwcHggJGNvbG9yLCAwIDAgNXB4ICRjb2xvcjtcclxuICBvcGFjaXR5OiAxLjA7XHJcblxyXG4gIC13ZWJraXQtdHJhbnNmb3JtOiByb3RhdGUoM2RlZykgdHJhbnNsYXRlKDBweCwgLTRweCk7XHJcbiAgICAgIC1tcy10cmFuc2Zvcm06IHJvdGF0ZSgzZGVnKSB0cmFuc2xhdGUoMHB4LCAtNHB4KTtcclxuICAgICAgICAgIHRyYW5zZm9ybTogcm90YXRlKDNkZWcpIHRyYW5zbGF0ZSgwcHgsIC00cHgpO1xyXG59XHJcblxyXG4vKiBSZW1vdmUgdGhlc2UgdG8gZ2V0IHJpZCBvZiB0aGUgc3Bpbm5lciAqL1xyXG4jbnByb2dyZXNzIC5zcGlubmVyIHtcclxuICBkaXNwbGF5OiBibG9jaztcclxuICBwb3NpdGlvbjogZml4ZWQ7XHJcbiAgei1pbmRleDogMTAzMTtcclxuICB0b3A6IDE1cHg7XHJcbiAgcmlnaHQ6IDE1cHg7XHJcbn1cclxuXHJcbiNucHJvZ3Jlc3MgLnNwaW5uZXItaWNvbiB7XHJcbiAgd2lkdGg6IDE4cHg7XHJcbiAgaGVpZ2h0OiAxOHB4O1xyXG4gIGJveC1zaXppbmc6IGJvcmRlci1ib3g7XHJcblxyXG4gIGJvcmRlcjogc29saWQgMnB4IHRyYW5zcGFyZW50O1xyXG4gIGJvcmRlci10b3AtY29sb3I6ICRjb2xvcjI7XHJcbiAgYm9yZGVyLWxlZnQtY29sb3I6ICRjb2xvcjI7XHJcbiAgYm9yZGVyLXJhZGl1czogNTAlO1xyXG5cclxuICAtd2Via2l0LWFuaW1hdGlvbjogbnByb2dyZXNzLXNwaW5uZXIgNDAwbXMgbGluZWFyIGluZmluaXRlO1xyXG4gICAgICAgICAgYW5pbWF0aW9uOiBucHJvZ3Jlc3Mtc3Bpbm5lciA0MDBtcyBsaW5lYXIgaW5maW5pdGU7XHJcbn1cclxuXHJcbi5ucHJvZ3Jlc3MtY3VzdG9tLXBhcmVudCB7XHJcbiAgb3ZlcmZsb3c6IGhpZGRlbjtcclxuICBwb3NpdGlvbjogcmVsYXRpdmU7XHJcbn1cclxuXHJcbi5ucHJvZ3Jlc3MtY3VzdG9tLXBhcmVudCAjbnByb2dyZXNzIC5zcGlubmVyLFxyXG4ubnByb2dyZXNzLWN1c3RvbS1wYXJlbnQgI25wcm9ncmVzcyAuYmFyIHtcclxuICBwb3NpdGlvbjogYWJzb2x1dGU7XHJcbn1cclxuXHJcbkAtd2Via2l0LWtleWZyYW1lcyBucHJvZ3Jlc3Mtc3Bpbm5lciB7XHJcbiAgMCUgICB7IC13ZWJraXQtdHJhbnNmb3JtOiByb3RhdGUoMGRlZyk7IH1cclxuICAxMDAlIHsgLXdlYmtpdC10cmFuc2Zvcm06IHJvdGF0ZSgzNjBkZWcpOyB9XHJcbn1cclxuQGtleWZyYW1lcyBucHJvZ3Jlc3Mtc3Bpbm5lciB7XHJcbiAgMCUgICB7IHRyYW5zZm9ybTogcm90YXRlKDBkZWcpOyB9XHJcbiAgMTAwJSB7IHRyYW5zZm9ybTogcm90YXRlKDM2MGRlZyk7IH1cclxufVxyXG5cclxuIiwi77u/LypcclxuPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxyXG4gICAgICAgICAgICAgICAgSEVBREVSXHJcbj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cclxuKi9cclxuXHJcbi8qQGltcG9ydCBcIl92YXJpYWJsZXMuc2Nzc1wiO1xyXG5AaW1wb3J0IFwiYm9vdHN0cmFwL192YXJpYWJsZXMuc2Nzc1wiOyovXHJcblxyXG4vKlxyXG49PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XHJcbiAgICAgICAgICAgICAgICBNQUlOXHJcbj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cclxuKi9cclxuXHJcbmJvZHkge1xyXG4gICAgZm9udC1zaXplOiAxNHB4O1xyXG4gICAgbGluZS1oZWlnaHQ6IDEuNjtcclxuICAgIGZvbnQtZmFtaWx5OiBcIk9wZW5TYW5zUmVndWxhclwiLCBcIkxhdG9cIixcIkhlbHZldGljYU5ldWVcIixcIkhlbHZldGljYSBOZXVlXCIsSGVsdmV0aWNhLEFyaWFsLHNhbnMtc2VyaWY7XHJcbiAgICBjb2xvcjogIzRmNGY0ZjtcclxuICAgIGZvbnQtd2VpZ2h0OiA0MDA7XHJcbiAgICBiYWNrZ3JvdW5kOiBub25lO1xyXG5cclxuICAgIGgxIHtcclxuICAgICAgICBjb2xvcjogIzAwMDtcclxuXHJcbiAgICAgICAgQG1lZGlhIChtYXgtd2lkdGg6ICRzY3JlZW4tc20tbWF4KSB7XHJcbiAgICAgICAgICAgIGZvbnQtc2l6ZTogMzBweDtcclxuICAgICAgICB9XHJcblxyXG4gICAgICAgIEBtZWRpYSAobWF4LXdpZHRoOiAkc2NyZWVuLXhzLW1heCkge1xyXG4gICAgICAgICAgICBmb250LXNpemU6IDI2cHg7XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG5cclxuICAgIGgyIHtcclxuICAgICAgICBmb250LXNpemU6IDEuN2VtO1xyXG5cclxuICAgICAgICBAbWVkaWEgKG1heC13aWR0aDogJHNjcmVlbi1zbS1tYXgpIHtcclxuICAgICAgICAgICAgZm9udC1zaXplOiAyM3B4O1xyXG4gICAgICAgIH1cclxuXHJcblxyXG4gICAgICAgIEBtZWRpYSAobWF4LXdpZHRoOiAkc2NyZWVuLXhzLW1heCkge1xyXG4gICAgICAgICAgICBmb250LXNpemU6IDIxcHg7XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG5cclxuICAgIGgzIHtcclxuICAgICAgICBAbWVkaWEgKG1heC13aWR0aDogJHNjcmVlbi1zbS1tYXgpIHtcclxuICAgICAgICAgICAgZm9udC1zaXplOiAyMHB4O1xyXG4gICAgICAgIH1cclxuXHJcblxyXG4gICAgICAgIEBtZWRpYSAobWF4LXdpZHRoOiAkc2NyZWVuLXhzLW1heCkge1xyXG4gICAgICAgICAgICBmb250LXNpemU6IDE4cHg7XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG5cclxuICAgIC8qQ01TIGNvbnRhaW50ZXIqL1xyXG4gICAgLmNvbnRlbnQge1xyXG4gICAgICAgIG1hcmdpbi10b3A6IDU1cHg7XHJcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogMjBweDtcclxuICAgIH1cclxuXHJcbiAgICAuY21zLWNvbnRlbnQge1xyXG4gICAgICAgIG1hcmdpbi10b3A6IDIwcHg7XHJcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogMjBweDtcclxuXHJcbiAgICAgICAgKiB7XHJcbiAgICAgICAgICAgIGNvbG9yOiAjZmZmO1xyXG4gICAgICAgIH0gICAgICAgIFxyXG4gICAgfVxyXG59XHJcblxyXG4uYnRuLmJ0bi1yYWlzZWQuYnRuLWxpZ2h0IHtcclxuICAgIGJhY2tncm91bmQtY29sb3I6ICNlNWU4ZWY7XHJcbiAgICBjb2xvcjogIzAwMDtcclxuICAgIGJvcmRlci1yYWRpdXM6IDA7XHJcbiAgICBwYWRkaW5nOiAxNXB4O1xyXG4gICAgcGFkZGluZy1sZWZ0OiA1MHB4O1xyXG4gICAgcGFkZGluZy1yaWdodDogNTBweDtcclxuICAgIG1hcmdpbi10b3A6IDMwcHg7XHJcbiAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XHJcbn1cclxuXHJcbi5idG4uYnRuLXJhaXNlZC5idG4tZGFyayB7XHJcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjMDAxZTVhO1xyXG4gICAgY29sb3I6ICNmZmY7XHJcbiAgICBib3JkZXItcmFkaXVzOiAwO1xyXG4gICAgcGFkZGluZzogMTVweDtcclxuICAgIHBhZGRpbmctbGVmdDogNTBweDtcclxuICAgIHBhZGRpbmctcmlnaHQ6IDUwcHg7XHJcbiAgICBtYXJnaW4tdG9wOiAzMHB4O1xyXG59XHJcblxyXG4uYnRuLmJ0bi1yYWlzZWQuYnRuLWRhcms6aG92ZXIge1xyXG4gICAgYmFja2dyb3VuZC1jb2xvcjogbGlnaHRlbigjMDAxZTVhLCA4KTtcclxufVxyXG5cclxuLmJ0bi5idG4tcmFpc2VkLmJ0bi1kYXJrOmZvY3VzIHtcclxuICAgIGJhY2tncm91bmQtY29sb3I6IGxpZ2h0ZW4oIzAwMWU1YSwgOCk7XHJcbn1cclxuXHJcbi5idG4uYnRuLXJhaXNlZC5idG4tbGlnaHQ6aG92ZXIge1xyXG4gICAgYmFja2dyb3VuZC1jb2xvcjogbGlnaHRlbigjZTVlOGVmLCA4KTtcclxufVxyXG5cclxuLmNkLW1haW4tY29udGVudCB7XHJcbiAgICBtaW4taGVpZ2h0OiBpbmhlcml0O1xyXG59XHJcblxyXG4ubmV4dC1yb3dzLXdyYXAge1xyXG4gICAgZGlzcGxheTogYmxvY2s7XHJcbiAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XHJcblxyXG4gICAgLm5leHQtcm93cyB7XHJcbiAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xyXG4gICAgICAgIG1hcmdpbi1ib3R0b206IDY1cHg7XHJcblxyXG4gICAgICAgIC5pY29uIHtcclxuICAgICAgICAgICAgJjpiZWZvcmUge1xyXG4gICAgICAgICAgICAgICAgZm9udC1zaXplOiA0MHB4O1xyXG4gICAgICAgICAgICAgICAgY29sb3I6ICMwMDA7XHJcbiAgICAgICAgICAgIH1cclxuXHJcbiAgICAgICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcclxuICAgICAgICAgICAgYm90dG9tOiAtNTBweDtcclxuICAgICAgICAgICAgbGVmdDogNTAlO1xyXG4gICAgICAgICAgICBtYXJnaW4tbGVmdDogLTI1cHg7XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG59XHJcblxyXG5cclxuI21haW4ge1xyXG4gICAgICAgIG1hcmdpbi10b3A6IDExMHB4O1xyXG4gICAgLyptYXJnaW4tdG9wOiAxNThweDsqL1xyXG4gICAgLypAbWVkaWEgKG1heC13aWR0aDogJHNjcmVlbi1tZC1tYXgpIHtcclxuICAgICAgICBtYXJnaW4tdG9wOiAxNzVweDtcclxuICAgIH1cclxuXHJcbiAgICBAbWVkaWEgKG1heC13aWR0aDogJHNjcmVlbi1zbS1tYXgpIHtcclxuICAgICAgICBtYXJnaW4tdG9wOiAyMTVweDtcclxuICAgIH1cclxuXHJcbiAgICBAbWVkaWEgKG1heC13aWR0aDogJHNjcmVlbi14cy1tYXgpIHtcclxuICAgICAgICBtYXJnaW4tdG9wOiAxMjFweDtcclxuICAgIH0qL1xyXG4gICAgLy9wYWRkaW5nLWJvdHRvbTogMjBweDtcclxuICAgIHBhZGRpbmc6IDA7XHJcbiAgICBvdmVyZmxvdzogaGlkZGVuO1xyXG5cclxuICAgICNtYWluLWNvbnRlbnQge1xyXG4gICAgICAgIC5wcm9kdWN0Rm9ybSB7XHJcbiAgICAgICAgICAgIGJ1dHRvbiB7XHJcbiAgICAgICAgICAgICAgICBib3JkZXI6IDA7XHJcbiAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjMzRjNDcxO1xyXG4gICAgICAgICAgICAgICAgY29sb3I6ICNmZmY7XHJcbiAgICAgICAgICAgICAgICBwYWRkaW5nOiAzcHggOXB4O1xyXG4gICAgICAgICAgICAgICAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcclxuICAgICAgICAgICAgICAgIGJvcmRlci1yYWRpdXM6IDVweDtcclxuICAgICAgICAgICAgICAgIGZvbnQtc2l6ZTogMTVweDtcclxuICAgICAgICAgICAgICAgIGxpbmUtaGVpZ2h0OiAzMnB4O1xyXG5cclxuICAgICAgICAgICAgICAgIGkge1xyXG4gICAgICAgICAgICAgICAgICAgIGZvbnQtc2l6ZTogMjBweDtcclxuICAgICAgICAgICAgICAgIH1cclxuXHJcbiAgICAgICAgICAgICAgICAmOmhvdmVyIHtcclxuICAgICAgICAgICAgICAgICAgICBpIHtcclxuICAgICAgICAgICAgICAgICAgICAgICAgZm9udC1zaXplOiAyNXB4O1xyXG4gICAgICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgfVxyXG5cclxuICAgICAgICAgICAgQG1lZGlhIChtYXgtd2lkdGg6ICRzY3JlZW4tbWQtbWF4KSB7XHJcbiAgICAgICAgICAgICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICB9XHJcbiAgICB9XHJcblxyXG4gICAgLmJhY2tncm91bmQtZWxpcHNlIHtcclxuICAgICAgICBiYWNrZ3JvdW5kOiAjMDAwZDI1O1xyXG4gICAgICAgIGJhY2tncm91bmQ6IGxpbmVhci1ncmFkaWVudCh0byByaWdodCwgIzAwMDcxNSAwJSwjMTYyNzQzIDQyJSwjMTYyNzQzIDU5JSwgIzAwMDcxNSAxMDAlKTtcclxuICAgICAgICB3aWR0aDogMTAwJTtcclxuICAgICAgICBkaXNwbGF5OiBibG9jaztcclxuICAgICAgICBvdmVyZmxvdzogaGlkZGVuO1xyXG4gICAgICAgIHotaW5kZXg6IC0yO1xyXG4gICAgICAgIHBhZGRpbmctdG9wOiAxOHB4O1xyXG4gICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcclxuXHJcbiAgICAgICAgQG1lZGlhIChtYXgtd2lkdGg6ICRzY3JlZW4teHMtbWF4KSB7XHJcbiAgICAgICAgICAgIGRpc3BsYXk6IG5vbmU7XHJcbiAgICAgICAgfVxyXG5cclxuICAgICAgICAuc2hhZG93IHtcclxuICAgICAgICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xyXG4gICAgICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XHJcbiAgICAgICAgICAgIGJveC1zaGFkb3c6ICM5NDk0OTQgM3B4IDNweCAzcHggaW5zZXQ7XHJcbiAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xyXG4gICAgICAgICAgICBib3JkZXItcmFkaXVzOiAyNDglIC8gMTAwJTtcclxuICAgICAgICAgICAgYm9yZGVyLWJvdHRvbS1sZWZ0LXJhZGl1czogMDtcclxuICAgICAgICAgICAgd2lkdGg6IDE2MCU7XHJcbiAgICAgICAgICAgIG1hcmdpbjogMCBhdXRvO1xyXG4gICAgICAgICAgICBtYXJnaW4tbGVmdDogLTMwJTtcclxuICAgICAgICAgICAgb3ZlcmZsb3c6IGhpZGRlbjtcclxuICAgICAgICB9XHJcblxyXG4gICAgICAgICYuY29udGFjdCB7XHJcbiAgICAgICAgICAgIC5zaGFkb3cge1xyXG4gICAgICAgICAgICAgICAgYm94LXNoYWRvdzogbm9uZTtcclxuXHJcbiAgICAgICAgICAgICAgICAuYmFja2dyb3VuZC1ob21lIHtcclxuICAgICAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kOiAjMDAwZDI1O1xyXG4gICAgICAgICAgICAgICAgICAgIGJhY2tncm91bmQ6IGxpbmVhci1ncmFkaWVudCh0byByaWdodCwgIzAwMGQyNSAwJSwjMTYyNzQzIDQyJSwjMTYyNzQzIDU5JSwjMDAwZDI1IDEwMCUpO1xyXG4gICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICB9XHJcblxyXG4gICAgICAgICAgICBAbWVkaWEgKG1heC13aWR0aDogJHNjcmVlbi14cy1tYXgpIHtcclxuICAgICAgICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG5cclxuICAgICAgICAuYmFja2dyb3VuZC1ob21lIHtcclxuICAgICAgICAgICAgLyptYXgtd2lkdGg6IDEwMCU7Ki9cclxuICAgICAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xyXG4gICAgICAgICAgICB6LWluZGV4OiAtMTtcclxuICAgICAgICAgICAgd2lkdGg6IDE5MjBweDtcclxuICAgICAgICAgICAgaGVpZ2h0OiAxMjY5cHg7XHJcbiAgICAgICAgICAgIC8qbWF4LWhlaWdodDogNTAwcHg7Ki9cclxuICAgICAgICAgICAgbWFyZ2luOiAwIGF1dG87XHJcbiAgICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xyXG4gICAgICAgICAgICAvKm1hcmdpbi1sZWZ0OiAwOyovXHJcbiAgICAgICAgICAgIC8qYm9yZGVyLXJhZGl1czogMjQ4JSAvIDEwMCU7XHJcbiAgICAgICAgICAgIGJvcmRlci1ib3R0b20tbGVmdC1yYWRpdXM6IDA7XHJcbiAgICAgICAgICAgIGJvcmRlci1ib3R0b20tcmlnaHQtcmFkaXVzOiAwOyovXHJcbiAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6ICNmZmY7XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG59XHJcblxyXG4uY2NfYmFubmVyLXdyYXBwZXIge1xyXG5cclxuICAgIC5jY19iYW5uZXIuY2NfY29udGFpbmVyLmNjX2NvbnRhaW5lci0tb3BlbiB7XHJcbiAgICAgICAgYmFja2dyb3VuZDogIzAwMWU1YSAhaW1wb3J0YW50O1xyXG4gICAgfVxyXG5cclxuICAgIC5jY19jb250YWluZXIgLmNjX2J0biwgLmNjX2NvbnRhaW5lciAuY2NfYnRuOnZpc2l0ZWQge1xyXG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6ICMyMTY3QUQ7XHJcbiAgICAgICAgY29sb3I6ICNmZmY7XHJcbiAgICB9XHJcbn0iLCLvu78vKkBpbXBvcnQgXCJib290c3RyYXAvX3ZhcmlhYmxlcy5zY3NzXCI7XHJcbkBpbXBvcnQgXCJfdmFyaWFibGVzLnNjc3NcIjsqL1xyXG5cclxuXHJcbmhlYWRlciB7XHJcbiAgICBoZWlnaHQ6IGF1dG87XHJcbiAgICAvKnBvc2l0aW9uOiByZWxhdGl2ZTsqL1xyXG4gICAgLypvdmVyZmxvdzogaGlkZGVuOyovXHJcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiByZ2IoMTM5LCAxNTAsIDE3MCk7XHJcblxyXG4gICAgI3NlYXJjaC1hcmVhIHtcclxuICAgICAgICBiYWNrZ3JvdW5kOiAjOGI5NmFhO1xyXG4gICAgICAgIGJhY2tncm91bmQ6IGxpbmVhci1ncmFkaWVudCh0byByaWdodCwgIzhiOTZhYSAxJSwjYzJjN2NkIDM5JSwjYzljOWM5IDUwJSwjYzJjN2NkIDYxJSwjOGI5NmFhIDEwMCUpO1xyXG4gICAgICAgIHotaW5kZXg6IDU7XHJcbiAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xyXG4gICAgICAgIGhlaWdodDogNTBweDtcclxuXHJcbiAgICAgICAgLnBob25lLCAuZW1haWwge1xyXG5cclxuICAgICAgICAgICAgYSB7XHJcbiAgICAgICAgICAgICAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XHJcbiAgICAgICAgICAgICAgICBjb2xvcjogIzQ4NTg3MjtcclxuICAgICAgICAgICAgfVxyXG5cclxuICAgICAgICAgICAgLnByZSB7XHJcbiAgICAgICAgICAgICAgICBjb2xvcjogbGlnaHRlbigjNDg1ODcyLCAxMCUpO1xyXG4gICAgICAgICAgICB9XHJcblxyXG4gICAgICAgICAgICBzcGFuIHtcclxuICAgICAgICAgICAgICAgIG1hcmdpbjogMDtcclxuICAgICAgICAgICAgICAgIHBhZGRpbmc6IDA7XHJcbiAgICAgICAgICAgICAgICBoZWlnaHQ6IDEwMCU7XHJcbiAgICAgICAgICAgICAgICBsaW5lLWhlaWdodDogNDVweDtcclxuICAgICAgICAgICAgICAgIGZvbnQtc2l6ZTogMTdweDtcclxuXHJcbiAgICAgICAgICAgICAgICAmLmljb24ge1xyXG4gICAgICAgICAgICAgICAgICAgIG1hcmdpbi1yaWdodDogM3B4O1xyXG4gICAgICAgICAgICAgICAgICAgIHZlcnRpY2FsLWFsaWduOiAtMnB4O1xyXG4gICAgICAgICAgICAgICAgICAgIGNvbG9yOiBsaWdodGVuKCM0ODU4NzIsIDEwJSk7XHJcbiAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICB9XHJcblxyXG4gICAgICAgIC5zZWFyY2gtaW5wdXQge1xyXG4gICAgICAgICAgICBtYXJnaW4tdG9wOiA0cHg7XHJcbiAgICAgICAgfVxyXG5cclxuICAgICAgICAuc2VhcmNoLWJ1dHRvbiB7XHJcbiAgICAgICAgICAgIG1hcmdpbi10b3A6IDRweDtcclxuICAgICAgICB9XHJcbiAgICB9XHJcblxyXG5cclxuICAgIC5uYXZpZ2F0aW9uLWlubmVyIHtcclxuICAgICAgICBAbWVkaWEgKG1heC13aWR0aDogJHNjcmVlbi1zbS1tYXgpIHtcclxuICAgICAgICAgICAgaGVpZ2h0OiA1NHB4O1xyXG4gICAgICAgIH1cclxuXHJcbiAgICAgICAgQG1lZGlhIChtYXgtd2lkdGg6ICRzY3JlZW4teHMtbWF4KSB7XHJcbiAgICAgICAgICAgIGhlaWdodDogNjBweDtcclxuICAgICAgICB9XHJcblxyXG4gICAgICAgIC5jZC1uYXYtdHJpZ2dlciB7XHJcbiAgICAgICAgICAgIHJpZ2h0OiAxMHB4O1xyXG4gICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjZWFlZmYzO1xyXG5cclxuICAgICAgICAgICAgc3BhbiB7XHJcbiAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjMDAwO1xyXG5cclxuICAgICAgICAgICAgICAgICY6YmVmb3JlIHtcclxuICAgICAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjMDAwO1xyXG4gICAgICAgICAgICAgICAgfVxyXG5cclxuICAgICAgICAgICAgICAgICY6YWZ0ZXIge1xyXG4gICAgICAgICAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6ICMwMDA7XHJcbiAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICB9XHJcbiAgICB9XHJcblxyXG4gICAgLmNkLW1haW4tbmF2LXdyYXBwZXIge1xyXG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6ICNlYWVmZjM7XHJcblxyXG4gICAgICAgIC5jZC1tYWluLW5hdiB7XHJcbiAgICAgICAgICAgIGhlaWdodDogNjBweDtcclxuICAgICAgICAgICAgbGluZS1oZWlnaHQ6IDYwcHg7XHJcbiAgICAgICAgICAgIHBhZGRpbmc6IDA7XHJcbiAgICAgICAgICAgIG1hcmdpbjogMDtcclxuXHJcbiAgICAgICAgICAgIGxpIHtcclxuICAgICAgICAgICAgICAgIGEge1xyXG4gICAgICAgICAgICAgICAgICAgIGNvbG9yOiAjMDAwO1xyXG4gICAgICAgICAgICAgICAgICAgIGJvcmRlci10b3A6IDVweCBzb2xpZCB0cmFuc3BhcmVudDtcclxuICAgICAgICAgICAgICAgICAgICB0cmFuc2l0aW9uOiBib3JkZXItY29sb3IgZWFzZS1pbi1vdXQgLjJzO1xyXG5cclxuICAgICAgICAgICAgICAgICAgICAmOmhvdmVyIHtcclxuICAgICAgICAgICAgICAgICAgICAgICAgYm9yZGVyLXRvcDogNXB4IHNvbGlkICMwMDA7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcclxuICAgICAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICAgICB9XHJcblxyXG4gICAgICAgICAgICAgICAgdWwge1xyXG4gICAgICAgICAgICAgICAgICAgIGhlaWdodDogNjBweDtcclxuICAgICAgICAgICAgICAgICAgICBsaW5lLWhlaWdodDogNjBweDtcclxuICAgICAgICAgICAgICAgICAgICBwYWRkaW5nOiAwO1xyXG4gICAgICAgICAgICAgICAgICAgIG1hcmdpbjogMDtcclxuICAgICAgICAgICAgICAgIH1cclxuXHJcbiAgICAgICAgICAgICAgICBpbWcge1xyXG4gICAgICAgICAgICAgICAgICAgIHdpZHRoOiA3MnB4O1xyXG4gICAgICAgICAgICAgICAgfVxyXG5cclxuICAgICAgICAgICAgICAgICYuYWN0aXZlIHtcclxuICAgICAgICAgICAgICAgICAgICBhIHtcclxuICAgICAgICAgICAgICAgICAgICAgICAgYm9yZGVyLXRvcDogNXB4IHNvbGlkICMwMDA7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcclxuICAgICAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICB9XHJcbiAgICB9XHJcblxyXG4gICAgLmNkLWxvZ28ge1xyXG4gICAgICAgIHRvcDogLTc1JTtcclxuICAgICAgICB6LWluZGV4OiA5O1xyXG4gICAgICAgIG1hcmdpbjogMDtcclxuXHJcbiAgICAgICAgYSB7XHJcbiAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6ICNmZmY7XHJcbiAgICAgICAgICAgIGJvcmRlci1yYWRpdXM6IDUwJTtcclxuICAgICAgICAgICAgcGFkZGluZzogMTBweDtcclxuICAgICAgICAgICAgZGlzcGxheTogYmxvY2s7XHJcbiAgICAgICAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcclxuICAgICAgICAgICAgd2lkdGg6IDkwcHg7XHJcbiAgICAgICAgICAgIGhlaWdodDogOTBweDtcclxuXHJcbiAgICAgICAgICAgIEBtZWRpYSAobWF4LXdpZHRoOiAkc2NyZWVuLXNtLW1heCkge1xyXG4gICAgICAgICAgICAgICAgd2lkdGg6IDUwcHg7XHJcbiAgICAgICAgICAgICAgICBoZWlnaHQ6IDUwcHg7XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICB9XHJcblxyXG4gICAgICAgIGltZyB7XHJcbiAgICAgICAgICAgIG1hcmdpbjogMDtcclxuICAgICAgICAgICAgd2lkdGg6IDEwMCU7XHJcbiAgICAgICAgICAgIGhlaWdodDogMTAwJTtcclxuICAgICAgICB9XHJcbiAgICB9XHJcbn1cclxuXHJcbiNuYXZpZ2F0aW9uIHtcclxuXHJcbiAgICAuaW1nIHtcclxuXHJcbiAgICAgICAgQG1lZGlhIChtYXgtd2lkdGg6IDEwMjNweCkgYW5kIChtaW4td2lkdGg6IDk5MnB4KSB7XHJcbiAgICAgICAgICAgIGhlaWdodDogNTBweDtcclxuICAgICAgICB9XHJcbiAgICB9XHJcbn1cclxuXHJcbi5jZC1tYWluLW5hdiB7XHJcbiAgICAjYWVvIHtcclxuXHJcbiAgICAgICAgQG1lZGlhIChtaW4td2lkdGg6ICRzY3JlZW4tbWQtbWluKSBhbmQgKG1heC13aWR0aDogJHNjcmVlbi1tZC1tYXgpIHtcclxuICAgICAgICAgICAgZGlzcGxheTogbm9uZTtcclxuICAgICAgICB9XHJcblxyXG4gICAgICAgIC5hZW8tbG9nbyB7XHJcbiAgICAgICAgICAgIGRpc3BsYXk6IGlubGluZTtcclxuICAgICAgICB9XHJcblxyXG4gICAgICAgIEBtZWRpYSAobWF4LXdpZHRoOiAxMDIzcHgpIGFuZCAobWluLXdpZHRoOiA5OTJweCkge1xyXG4gICAgICAgICAgICBkaXNwbGF5OiBub25lO1xyXG4gICAgICAgIH1cclxuICAgIH1cclxufVxyXG5cclxuLm5hdi1pcy12aXNpYmxlIC5jZC1uYXYtdHJpZ2dlciBzcGFuIHtcclxuICAgIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50ICFpbXBvcnRhbnQ7XHJcbn1cclxuIiwi77u/LypAaW1wb3J0IFwiYm9vdHN0cmFwL192YXJpYWJsZXMuc2Nzc1wiO1xyXG5AaW1wb3J0IFwiX3ZhcmlhYmxlcy5zY3NzXCI7Ki9cclxuXHJcbmZvb3RlciB7XHJcbiAgICBvdmVyZmxvdzogaGlkZGVuO1xyXG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xyXG5cclxuICAgIC5oYWxmLWVsaXBzZSB7XHJcbiAgICAgICAgYm94LXNoYWRvdzogIzk0OTQ5NCAzcHggM3B4IDNweCBpbnNldDtcclxuICAgICAgICBib3JkZXItcmFkaXVzOiA3MiUgLyAxMDAlO1xyXG4gICAgICAgIGJvcmRlci1ib3R0b20tbGVmdC1yYWRpdXM6IDA7XHJcbiAgICAgICAgd2lkdGg6IDEwNiU7XHJcbiAgICAgICAgbWFyZ2luOiAwIGF1dG87XHJcbiAgICAgICAgbWFyZ2luLWxlZnQ6IC0zJTtcclxuICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XHJcbiAgICAgICAgaGVpZ2h0OiAxMjRweDtcclxuICAgICAgICBiYWNrZ3JvdW5kOiAjZGVlNmYxO1xyXG4gICAgICAgIGJhY2tncm91bmQ6IGxpbmVhci1ncmFkaWVudCh0byBib3R0b20sICNjM2Q5ZjggMCUsI2ZmZiAxMDAlKTtcclxuICAgIH1cclxuXHJcbiAgICAuZm9vdGVyLWJsb2NrIHtcclxuICAgICAgICBtYXJnaW4tdG9wOiA0MHB4O1xyXG5cclxuICAgICAgICAuY29udGFjdC11cy1mb290ZXIge1xyXG4gICAgICAgICAgICBtYXJnaW4tYm90dG9tOiAxNXB4O1xyXG4gICAgICAgIH1cclxuXHJcbiAgICAgICAgLmZvcm0tY29udHJvbCB7XHJcbiAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IDE1cHg7XHJcbiAgICAgICAgfVxyXG5cclxuICAgICAgICAuY29udGFjdC1pbmZvIHtcclxuICAgICAgICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xyXG5cclxuICAgICAgICAgICAgLmljb24ge1xyXG4gICAgICAgICAgICAgICAgJjpiZWZvcmUge1xyXG4gICAgICAgICAgICAgICAgICAgIGZvbnQtc2l6ZTogNTBweDtcclxuICAgICAgICAgICAgICAgICAgICBjb2xvcjogIzAwMDtcclxuICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgfVxyXG5cclxuICAgICAgICAgICAgLmhvdXJzIHtcclxuICAgICAgICAgICAgICAgIGZvbnQtc2l6ZTogMjBweDtcclxuICAgICAgICAgICAgICAgIGNvbG9yOiAjMDAwO1xyXG4gICAgICAgICAgICB9XHJcblxyXG4gICAgICAgICAgICAucGhvbmUge1xyXG4gICAgICAgICAgICAgICAgZm9udC1zaXplOiAyNnB4O1xyXG4gICAgICAgICAgICAgICAgY29sb3I6ICMwMDA7XHJcblxyXG4gICAgICAgICAgICAgICAgYSB7XHJcbiAgICAgICAgICAgICAgICAgICAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xyXG4gICAgICAgICAgICAgICAgICAgIGNvbG9yOiAjMDAwO1xyXG4gICAgICAgICAgICAgICAgfVxyXG5cclxuICAgICAgICAgICAgICAgIC5wcmUge1xyXG4gICAgICAgICAgICAgICAgICAgIGNvbG9yOiAjNDg1ODcyO1xyXG4gICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICB9XHJcblxyXG4gICAgICAgICAgICAubWFpbCB7XHJcbiAgICAgICAgICAgICAgICBmb250LXNpemU6IDI0cHg7XHJcbiAgICAgICAgICAgICAgICBjb2xvcjogIzQ4NTg3MjtcclxuXHJcbiAgICAgICAgICAgICAgICBhIHtcclxuICAgICAgICAgICAgICAgICAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XHJcbiAgICAgICAgICAgICAgICAgICAgY29sb3I6ICM0ODU4NzI7XHJcbiAgICAgICAgICAgICAgICB9XHJcblxyXG4gICAgICAgICAgICAgICAgc3Ryb25nIHtcclxuICAgICAgICAgICAgICAgICAgICBjb2xvcjogIzAwMDtcclxuICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuXHJcbiAgICAgICAgLnJlZmVyZW5jZXMge1xyXG4gICAgICAgICAgICB0ZXh0LWFsaWduOiByaWdodDtcclxuXHJcbiAgICAgICAgICAgIEBtZWRpYSAobWF4LXdpZHRoOiAkc2NyZWVuLW1kLW1heCkge1xyXG4gICAgICAgICAgICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xyXG4gICAgICAgICAgICB9XHJcblxyXG4gICAgICAgICAgICAuaW1nLXJlc3BvbnNpdmUge1xyXG4gICAgICAgICAgICAgICAgbWFyZ2luOiAwIGF1dG87XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICB9XHJcblxyXG4gICAgICAgIC5mb3JtLWNvbnRyb2wsIC5mb3JtLWdyb3VwIC5mb3JtLWNvbnRyb2wge1xyXG4gICAgICAgICAgICBiYWNrZ3JvdW5kLWltYWdlOiBsaW5lYXItZ3JhZGllbnQoIzMzN2FiNywgIzMzN2FiNyksIGxpbmVhci1ncmFkaWVudCgjMDAwLCAjMTAxMDEwKTtcclxuICAgICAgICB9XHJcblxyXG4gICAgICAgIC5mb3JtLWdyb3VwLmxhYmVsLWZsb2F0aW5nIGxhYmVsLmNvbnRyb2wtbGFiZWwge1xyXG4gICAgICAgICAgICBjb2xvcjogIzAwMDtcclxuICAgICAgICB9XHJcbiAgICB9XHJcblxyXG4gICAgLmZvb3Rlci1jbXMge1xyXG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6ICMwMDBkMjU7XHJcbiAgICAgICAgaGVpZ2h0OiAyODNweDtcclxuXHJcblxyXG4gICAgICAgIC5mb290ZXItaW5uZXIge1xyXG4gICAgICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XHJcbiAgICAgICAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcclxuICAgICAgICAgICAgcGFkZGluZy1ib3R0b206IDE1cHg7XHJcblxyXG4gICAgICAgICAgICBoMiB7XHJcbiAgICAgICAgICAgICAgICBjb2xvcjogI2ZmZjtcclxuICAgICAgICAgICAgICAgIGZvbnQtc2l6ZTogMjNweDtcclxuICAgICAgICAgICAgfVxyXG5cclxuICAgICAgICAgICAgLmZvb3Rlci1tYXAge1xyXG4gICAgICAgICAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xyXG4gICAgICAgICAgICAgICAgb3BhY2l0eTogMC4yO1xyXG4gICAgICAgICAgICAgICAgcmlnaHQ6IDA7XHJcbiAgICAgICAgICAgIH1cclxuXHJcbiAgICAgICAgICAgIHVsIHtcclxuICAgICAgICAgICAgICAgIG1hcmdpbjogMDtcclxuICAgICAgICAgICAgICAgIHBhZGRpbmc6IDA7XHJcbiAgICAgICAgICAgICAgICBsaXN0LXN0eWxlLXR5cGU6IG5vbmU7XHJcblxyXG4gICAgICAgICAgICAgICAgKiB7XHJcbiAgICAgICAgICAgICAgICAgICAgY29sb3I6ICNmZmY7XHJcbiAgICAgICAgICAgICAgICAgICAgZm9udC1zaXplOiAxMnB4O1xyXG4gICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG59XHJcbiIsIu+7vy5oZWFkZXItY29udGVudCB7XHJcbiAgICAuaW5uZXItY29udGVudCB7XHJcbiAgICAgICAgY29sb3I6ICMwMDA3NmI7XHJcbiAgICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xyXG4gICAgICAgIG1hcmdpbi10b3A6IDQwcHg7XHJcblxyXG4gICAgICAgIGgxIHtcclxuICAgICAgICAgICAgZm9udC13ZWlnaHQ6IGJvbGQ7XHJcbiAgICAgICAgfVxyXG5cclxuICAgICAgICBwIHtcclxuICAgICAgICAgICAgZm9udC1zaXplOiAxNnB4O1xyXG4gICAgICAgICAgICBtYXJnaW4tdG9wOiAyMHB4O1xyXG4gICAgICAgIH1cclxuXHJcbiAgICAgICAgYSB7XHJcbiAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IDMwcHg7XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG59XHJcblxyXG4uY29udGVudC1ob21lIHtcclxuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcclxuICAgIG1hcmdpbi10b3A6IDUwcHg7XHJcbiAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XHJcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjZmZmO1xyXG4gICAgYm9yZGVyLXJhZGl1czogMTYwJSAvIDEwMCU7XHJcbiAgICBib3JkZXItYm90dG9tLWxlZnQtcmFkaXVzOiAwO1xyXG4gICAgYm9yZGVyLWJvdHRvbS1yaWdodC1yYWRpdXM6IDA7XHJcbiAgICB3aWR0aDogMTYwJTtcclxuICAgIG1hcmdpbjogMCBhdXRvO1xyXG4gICAgbWFyZ2luLWxlZnQ6IC0zMCU7XHJcblxyXG4gICAgXHJcbiAgICAuc2VydmljZS1saXN0IHtcclxuXHJcbiAgICAgICAgbGkge1xyXG4gICAgICAgICAgICBjb2xvcjogIzAwMCAhaW1wb3J0YW50O1xyXG4gICAgICAgIH1cclxuICAgIH1cclxuXHJcbiAgICBoMiB7XHJcbiAgICAgICAgbWFyZ2luLXRvcDogNDBweDtcclxuICAgICAgICBjb2xvcjogIzAwMUU1QTtcclxuXHJcbiAgICAgICAgYSB7XHJcbiAgICAgICAgICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcclxuICAgICAgICAgICAgY29sb3I6ICMwMDFFNUE7XHJcblxyXG4gICAgICAgICAgICAmOmhvdmVyIHtcclxuICAgICAgICAgICAgICAgIGNvbG9yOiAjMDAxRTVBO1xyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG5cclxuICAgIGEge1xyXG4gICAgICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcclxuICAgIH1cclxuXHJcbiAgICBoMyB7XHJcbiAgICAgICAgY29sb3I6ICMwMDFlNWE7XHJcbiAgICAgICAgZm9udC13ZWlnaHQ6IGJvbGQ7XHJcbiAgICB9XHJcblxyXG4gICAgcCB7XHJcbiAgICAgICAgY29sb3I6ICMwMDA7XHJcbiAgICAgICAgZm9udC1zaXplOiAxNHB4O1xyXG4gICAgfVxyXG5cclxuICAgIC5pY29uIHtcclxuICAgICAgICAmOmJlZm9yZSB7XHJcbiAgICAgICAgICAgIGZvbnQtc2l6ZTogMTEwcHg7XHJcbiAgICAgICAgICAgIGNvbG9yOiAjMjE2N2FkO1xyXG4gICAgICAgIH1cclxuXHJcbiAgICAgICAgJiNwaWcgLmNpcmNsZSB7XHJcbiAgICAgICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcclxuICAgICAgICAgICAgd2lkdGg6IDMxcHg7XHJcbiAgICAgICAgICAgIGhlaWdodDogMzFweDtcclxuICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogI2IyOGQ0NztcclxuICAgICAgICAgICAgYm9yZGVyLXJhZGl1czogNTAlO1xyXG4gICAgICAgICAgICB0b3A6IDEwLjQlO1xyXG4gICAgICAgICAgICBsZWZ0OiA0OSU7XHJcbiAgICAgICAgICAgIGNvbG9yOiAjZjJiMTQ5O1xyXG5cclxuICAgICAgICAgICAgQG1lZGlhIChtaW4td2lkdGg6ICRzY3JlZW4teHMtbWluKSBhbmQgKG1heC13aWR0aDogJHNjcmVlbi14cy1tYXgpIHtcclxuICAgICAgICAgICAgICAgIGxlZnQ6IDQ5LjQlO1xyXG4gICAgICAgICAgICB9XHJcblxyXG4gICAgICAgIH1cclxuXHJcbiAgICAgICAgJiNwaWcgLmNpcmNsZTEge1xyXG4gICAgICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XHJcbiAgICAgICAgICAgIHdpZHRoOiAxNXB4O1xyXG4gICAgICAgICAgICBoZWlnaHQ6IDE1cHg7XHJcbiAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6ICNiMjhkNDc7XHJcbiAgICAgICAgICAgIGJvcmRlci1yYWRpdXM6IDUwJTtcclxuICAgICAgICAgICAgdG9wOiAyJTtcclxuICAgICAgICAgICAgbGVmdDogNTYlO1xyXG4gICAgICAgIH1cclxuXHJcbiAgICAgICAgJiN3YWxrIHtcclxuICAgICAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xyXG4gICAgICAgICAgICB3aWR0aDogMTVweDtcclxuICAgICAgICAgICAgaGVpZ2h0OiAxNXB4O1xyXG4gICAgICAgICAgICB0b3A6IDI0JTtcclxuICAgICAgICAgICAgcmlnaHQ6IDMwJTtcclxuXHJcbiAgICAgICAgICAgICY6YmVmb3JlIHtcclxuICAgICAgICAgICAgICAgIGNvbG9yOiAjYjI4ZDQ3O1xyXG4gICAgICAgICAgICAgICAgZm9udC1zaXplOiA1MHB4O1xyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG5cclxuICAgICNzb21hZCB7XHJcbiAgICAgICAgbWFyZ2luOiAzMHB4IGF1dG87XHJcbiAgICAgICAgd2lkdGg6IDEyMHB4O1xyXG4gICAgICAgIGhlaWdodDogYXV0bztcclxuICAgICAgICBkaXNwbGF5OiBibG9jaztcclxuICAgIH1cclxuXHJcbiAgICAjYWVvLWltYWdlIHtcclxuICAgICAgICBtYXJnaW46IDMwcHggYXV0bztcclxuICAgICAgICB3aWR0aDogMTIwcHg7XHJcbiAgICAgICAgaGVpZ2h0OiBhdXRvO1xyXG4gICAgICAgIGRpc3BsYXk6IGJsb2NrO1xyXG4gICAgfVxyXG4gICAgLyojd2hhdC1uZXh0IHtcclxuICAgICAgICB0ZXh0LWFsaWduOiBsZWZ0O1xyXG5cclxuICAgICAgICBAbWVkaWEgKG1heC13aWR0aDogJHNjcmVlbi14cy1tYXgpIHtcclxuICAgICAgICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xyXG4gICAgICAgIH1cclxuICAgIH0qL1xyXG4gICAgLmNtcy1jb250ZW50IHtcclxuXHJcbiAgICAgICAgLmVyemFzb2Z0LWNtcy1lZGl0YWJsZS1jb250ZW50IHtcclxuICAgICAgICAgICAgY29sb3I6ICMwMDA7XHJcbiAgICAgICAgICAgIGZvbnQtc2l6ZTogMTRweDtcclxuICAgICAgICAgICAgbGluZS1oZWlnaHQ6IDEuNjtcclxuXHJcbiAgICAgICAgICAgIGVtIHtcclxuICAgICAgICAgICAgICAgIGNvbG9yOiAjMDAwICFpbXBvcnRhbnQ7XHJcbiAgICAgICAgICAgIH1cclxuXHJcbiAgICAgICAgICAgIHN0cm9uZyB7XHJcbiAgICAgICAgICAgICAgICBjb2xvcjogIzAwMDtcclxuXHJcbiAgICAgICAgICAgICAgICBlbSB7XHJcbiAgICAgICAgICAgICAgICAgICAgY29sb3I6ICMwMDA7XHJcbiAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgIH1cclxuXHJcbiAgICAgICAgICAgIGgzIHtcclxuICAgICAgICAgICAgICAgIEBtZWRpYSAobWluLXdpZHRoOiAkc2NyZWVuLXNtLW1pbikge1xyXG4gICAgICAgICAgICAgICAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcclxuICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgfVxyXG5cclxuICAgICAgICAgICAgdWwge1xyXG4gICAgICAgICAgICAgICAgQG1lZGlhIChtaW4td2lkdGg6ICRzY3JlZW4tc20tbWluKSB7XHJcbiAgICAgICAgICAgICAgICAgICAgdGV4dC1hbGlnbjogbGVmdDsgICAgICAgICAgICAgICAgICAgIFxyXG4gICAgICAgICAgICAgICAgfVxyXG5cclxuICAgICAgICAgICAgICAgIGxpIHtcclxuICAgICAgICAgICAgICAgICAgICBjb2xvcjogIzAwMCAhaW1wb3J0YW50O1xyXG4gICAgICAgICAgICAgICAgICAgIGxpc3Qtc3R5bGUtcG9zaXRpb246IGluc2lkZTtcclxuICAgICAgICAgICAgICAgICAgICBsaXN0LXN0eWxlLXR5cGU6IGRpc2M7XHJcblxyXG4gICAgICAgICAgICAgICAgICAgIHN0cm9uZyB7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIGNvbG9yOiAjMDAwO1xyXG4gICAgICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuICAgIH1cclxufVxyXG5cclxuLmJvdHRvbS1zaGFkb3cge1xyXG4gICAgYm94LXNoYWRvdzogIzk0OTQ5NCAzcHggM3B4IDNweDtcclxuICAgIGJhY2tncm91bmQtY29sb3I6ICNkZWU2ZjE7XHJcbiAgICBiYWNrZ3JvdW5kOiAjZGVlNmYxO1xyXG4gICAgYmFja2dyb3VuZDogbGluZWFyLWdyYWRpZW50KHRvIGJvdHRvbSwgI2ZmZiAwJSwjYzNkOWY4IDEwMCUpO1xyXG4gICAgYm9yZGVyLXJhZGl1czogNjAlO1xyXG4gICAgYm9yZGVyLXRvcC1sZWZ0LXJhZGl1czogMDtcclxuICAgIHdpZHRoOiA3MCU7XHJcbiAgICBtYXJnaW46IDAgYXV0bztcclxuICAgIGhlaWdodDogMTA5cHg7XHJcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XHJcbn1cclxuXHJcbi5uZXh0LXJvd3Mtd3JhcCB7XHJcblxyXG4gICAgLmZsYXRpY29uLW1lbnU1Nzo6YmVmb3JlIHtcclxuICAgICAgICBjb2xvcjogIzIxNjdhZCAhaW1wb3J0YW50O1xyXG4gICAgfVxyXG59XHJcblxyXG4ucmVzaXplLWNvbnRlbnQge1xyXG4gICAgb3ZlcmZsb3c6IGhpZGRlbjtcclxuICAgIHZpc2liaWxpdHk6IGhpZGRlbjtcclxuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcclxuXHJcbiAgICBAbWVkaWEgKG1heC13aWR0aDogJHNjcmVlbi14cy1tYXgpIHtcclxuICAgICAgICBwYWRkaW5nOiAwIDIwJTtcclxuICAgIH1cclxuXHJcbiAgICAmLm1pbi1oZWlnaHQge1xyXG4gICAgICAgIGhlaWdodDogMjUwcHg7XHJcbiAgICB9XHJcblxyXG4gICAgJjpiZWZvcmUge1xyXG4gICAgICAgIGNvbnRlbnQ6ICcgJztcclxuICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XHJcbiAgICAgICAgYm90dG9tOiAwO1xyXG4gICAgICAgIGxlZnQ6IDA7XHJcbiAgICAgICAgYmFja2dyb3VuZDogdHJhbnNwYXJlbnQ7XHJcbiAgICAgICAgYmFja2dyb3VuZDogbGluZWFyLWdyYWRpZW50KHRyYW5zcGFyZW50LCAjZmZmKTtcclxuICAgICAgICBoZWlnaHQ6IDEwMHB4O1xyXG4gICAgICAgIHdpZHRoOiAxMDAlO1xyXG4gICAgfVxyXG5cclxuICAgICYubm8tY29udGVudCB7XHJcbiAgICAgICAgJjpiZWZvcmUge1xyXG4gICAgICAgICAgICBjb250ZW50OiBub25lICFpbXBvcnRhbnQ7XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG59XHJcblxyXG4ucGFydG5lciB7XHJcbiAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XHJcblxyXG4gICAgLmpqLXBhcnRuZXIge1xyXG4gICAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcclxuICAgICAgICBtYXJnaW4tYm90dG9tOiAyNXB4O1xyXG4gICAgfVxyXG59Iiwi77u/LnBhZ2UtdGl0bGUge1xyXG4gICAgdGV4dC1hbGlnbjogY2VudGVyO1xyXG4gICAgbWFyZ2luLXRvcDogMzVweDtcclxufVxyXG5cclxuI2FjdHVhbGl0eSB7XHJcbiAgICBtYXJnaW4tdG9wOiA0MHB4O1xyXG4gICAgbWFyZ2luLWJvdHRvbTogNDBweDtcclxufVxyXG5cclxuLmFjdHVhbGl0eSxcclxuLmFjdHVhbGl0eS1kZXRhaWwge1xyXG4gICAgZGlzcGxheTogZmxleDtcclxuICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XHJcbiAgICBtYXJnaW4tdG9wOiAyMHB4O1xyXG5cclxuICAgIC5pY29uLWRhdGUge1xyXG4gICAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcclxuICAgIH1cclxuXHJcbiAgICBoMiB7XHJcbiAgICAgICAgY29sb3I6ICMwMDA7XHJcbiAgICB9XHJcblxyXG4gICAgLmltZy1yZXNwb25zaXZlIHtcclxuICAgICAgICBtYXJnaW46IDAgYXV0bztcclxuICAgIH1cclxuXHJcbiAgICAuZmxleC1yb3cge1xyXG4gICAgfVxyXG5cclxuICAgIC5saW5rOmhvdmVyIHtcclxuICAgICAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XHJcbiAgICB9XHJcblxyXG4gICAgLmljb24ge1xyXG4gICAgICAgICY6YmVmb3JlIHtcclxuICAgICAgICAgICAgZm9udC1zaXplOiA1MHB4O1xyXG4gICAgICAgICAgICBjb2xvcjogIzAwMDtcclxuICAgICAgICB9XHJcbiAgICB9XHJcblxyXG4gICAgLmRhdGUge1xyXG4gICAgICAgIGZvbnQtc2l6ZTogMThweDtcclxuICAgICAgICBjb2xvcjogIzAwMDtcclxuICAgIH1cclxuXHJcbiAgICAuZmxleC1jb2wge1xyXG4gICAgICAgIHRleHQtYWxpZ246IGxlZnQ7XHJcblxyXG4gICAgICAgIEBtZWRpYSAobWF4LXdpZHRoOiAkc2NyZWVuLXhzLW1heCkge1xyXG4gICAgICAgICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG5cclxuICAgIC5jb250ZW50LXdyYXAge1xyXG4gICAgICAgIG1hcmdpbi1ib3R0b206IDUwcHg7XHJcblxyXG4gICAgICAgIC5pbWctcmVzcG9uc2l2ZSB7XHJcbiAgICAgICAgICAgIG1hcmdpbjogMDtcclxuICAgICAgICAgICAgZmxvYXQ6IGxlZnQ7XHJcbiAgICAgICAgICAgIHBhZGRpbmctcmlnaHQ6IDE1cHg7XHJcblxyXG4gICAgICAgICAgICBAbWVkaWEgKG1heC13aWR0aDogJHNjcmVlbi14cy1tYXgpIHtcclxuICAgICAgICAgICAgICAgIGZsb2F0OiBub25lO1xyXG4gICAgICAgICAgICAgICAgY2xlYXI6IGJvdGhcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuXHJcbiAgICAgICAgLnRleHQge1xyXG4gICAgICAgICAgICBmb250LXNpemU6IDE2cHg7XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG59XHJcbiIsIu+7vyNjb250YWN0IHtcclxuICAgIG1hcmdpbi10b3A6IDQwcHg7XHJcbiAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XHJcblxyXG4gICAgLmNvbnRhaW5lciB7XHJcbiAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xyXG4gICAgfVxyXG5cclxuICAgIC5wYWdlLXRpdGxlIHtcclxuICAgICAgICBjb2xvcjogI2ZmZjtcclxuICAgICAgICBtYXJnaW4tYm90dG9tOiAyMHB4O1xyXG4gICAgfVxyXG5cclxuICAgIC5jb250YWN0IHtcclxuICAgICAgICBkaXNwbGF5OiBmbGV4O1xyXG4gICAgICAgIGFsaWduLWl0ZW1zOiBmbGV4LWVuZDtcclxuXHJcbiAgICAgICAgQG1lZGlhIChtYXgtd2lkdGg6ICRzY3JlZW4tc20tbWF4KSB7XHJcbiAgICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xyXG4gICAgICAgIH1cclxuXHJcbiAgICAgICAgLmljb24ge1xyXG5cclxuICAgICAgICAgICAgJjpiZWZvcmUge1xyXG4gICAgICAgICAgICAgICAgZm9udC1zaXplOiA2MHB4O1xyXG4gICAgICAgICAgICAgICAgY29sb3I6ICMyMTY3YWQ7XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICB9XHJcblxyXG4gICAgICAgICNzb21hZCB7XHJcbiAgICAgICAgICAgIG1hcmdpbjogMCBhdXRvO1xyXG4gICAgICAgICAgICB3aWR0aDogMTUwcHg7XHJcbiAgICAgICAgfVxyXG5cclxuICAgICAgICAuaW5uZXItY29udGVudCB7XHJcbiAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IDIwcHg7XHJcbiAgICAgICAgfVxyXG5cclxuICAgICAgICAuY21zLWNvbnRlbnQge1xyXG4gICAgICAgICAgICBjb2xvcjogI2ZmZjtcclxuICAgICAgICAgICAgZm9udC1zaXplOiAxN3B4O1xyXG4gICAgICAgIH1cclxuICAgIH1cclxufVxyXG5cclxuLnN0YXRpYy1tYXAge1xyXG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xyXG4gICAgbWFyZ2luOiAwIGF1dG87XHJcbiAgICB3aWR0aDogMTAwJTtcclxuICAgIGhlaWdodDogMTAwcHg7XHJcbiAgICBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoXCIvSW1hZ2VzL2NvbnRhY3RfbWFwLnBuZ1wiKTtcclxuICAgIGxpbmUtaGVpZ2h0OiAxMDBweDtcclxuICAgIHRleHQtYWxpZ246IGNlbnRlcjtcclxuXHJcbiAgICBhIHtcclxuICAgICAgICBmb250LXNpemU6IDIzcHg7XHJcbiAgICAgICAgY29sb3I6ICMwMDA7XHJcbiAgICB9XHJcbn1cclxuXHJcbi5hcGktbWFwIHtcclxuICAgIGRpc3BsYXk6IG5vbmU7XHJcbiAgICBoZWlnaHQ6IDQwMHB4O1xyXG5cclxuICAgICNhcGktbWFwIHtcclxuICAgICAgICBoZWlnaHQ6IDQwMHB4O1xyXG4gICAgfVxyXG59XHJcbiIsIi5lcnJvci1wYWdlIHtcclxuICAgIC53aGl0ZS1iYWNrZ3JvdW5kIHtcclxuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiByZ2JhKDI1NSwgMjU1LCAyNTUsIDAuOSk7XHJcbiAgICB9XHJcblxyXG4gICAgI2Vycm9yUGFnZSB7XHJcbiAgICAgICAgLmZsYXRpY29uIHtcclxuICAgICAgICAgICAgJjpiZWZvcmUge1xyXG4gICAgICAgICAgICAgICAgY29sb3I6ICMyMTY3YWQ7XHJcbiAgICAgICAgICAgICAgICBtYXJnaW46IDA7XHJcbiAgICAgICAgICAgICAgICBmb250LXNpemU6IDMzcHg7XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICB9XHJcbiAgICB9XHJcbn1cclxuIiwiLypAaW1wb3J0IFwiLi4vX3ZhcmlhYmxlcy5zY3NzXCI7Ki9cclxuXHJcbiNyZWdpc3RlciB7XHJcblxyXG5cdCNzdWJtaXQge1xyXG5cdFx0bWFyZ2luOiAxNXB4IDAgNXB4IDA7XHJcblx0XHRkaXNwbGF5OiBibG9jaztcclxuXHRcdHRleHQtYWxpZ246IGNlbnRlcjsgICBcclxuICAgICAgICAvKm91dGxpbmU6IDA7XHJcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJGNvbG9yLWJ1dHRvbjtcclxuICAgICAgICBjb2xvcjogIzIyMjtcclxuXHJcbiAgICAgICAgJjpob3ZlciB7XHJcbiAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6IGxpZ2h0ZW4oJGNvbG9yLWJ1dHRvbiwgMTAlKTtcclxuICAgICAgICB9Ki9cclxuXHR9ICAgIFxyXG5cclxuICAgIGJ1dHRvbiB7XHJcbiAgICAgICAgcGFkZGluZzogMTBweDtcclxuICAgIH1cclxuXHJcbiAgICBzcGFuOjpiZWZvcmUge1xyXG4gICAgICAgIG1hcmdpbi1sZWZ0OiAwO1xyXG4gICAgfVxyXG59XHJcbiIsIu+7vyNsb2dpbiB7XHJcblxyXG4gICAgbWFyZ2luLXRvcDogNDBweDtcclxuXHJcbiAgICBpbnB1dCB7XHJcbiAgICAgICAgYm9yZGVyLXJhZGl1czogMDtcclxuICAgIH1cclxuXHJcbiAgICBzcGFuOjpiZWZvcmUge1xyXG4gICAgICAgIG1hcmdpbi1sZWZ0OiAwO1xyXG4gICAgfVxyXG5cclxufVxyXG4iLCLvu78jZm9yZ290LXBhc3N3b3JkIHtcclxuXHJcblx0aW5wdXRbdHlwZT1cInRleHRcIl0ge1xyXG5cdFx0d2lkdGg6IDEwMCU7XHJcblx0fVxyXG59XHJcbiJdLCJzb3VyY2VSb290IjoiL3NvdXJjZS8ifQ== */

