@import url("https://fonts.googleapis.com/css?family=Open+Sans:400,600,600i,700");html,body,div,span,applet,object,iframe,h1,h2,h3,h4,h5,h6,p,blockquote,pre,a,abbr,acronym,address,big,cite,code,del,dfn,em,img,ins,kbd,q,s,samp,small,strike,strong,sub,sup,tt,var,b,u,i,center,dl,dt,dd,ol,ul,li,fieldset,form,label,legend,table,caption,tbody,tfoot,thead,tr,th,td,article,aside,canvas,details,embed,figure,figcaption,footer,header,hgroup,menu,nav,output,ruby,section,summary,time,mark,audio,video{margin:0;padding:0;border:0;font-size:100%;font:inherit;vertical-align:baseline}article,aside,details,figcaption,figure,footer,header,hgroup,menu,nav,section{display:block}body{line-height:1}blockquote,q{quotes:none}blockquote:before,blockquote:after,q:before,q:after{content:'';content:none}table{border-collapse:collapse;border-spacing:0}.grid-container{padding-right:.625rem;padding-left:.625rem;max-width:75rem;margin:0 auto}@media print, screen and (min-width: 40em){.grid-container{padding-right:.9375rem;padding-left:.9375rem}}.grid-container.fluid{padding-right:.625rem;padding-left:.625rem;max-width:100%;margin:0 auto}@media print, screen and (min-width: 40em){.grid-container.fluid{padding-right:.9375rem;padding-left:.9375rem}}.grid-container.full{padding-right:0;padding-left:0;max-width:100%;margin:0 auto}.grid-x{display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-orient:horizontal;-webkit-box-direction:normal;-ms-flex-flow:row wrap;flex-flow:row wrap}.cell{-webkit-box-flex:0;-ms-flex:0 0 auto;flex:0 0 auto;min-height:0px;min-width:0px;width:100%}.cell.auto{-webkit-box-flex:1;-ms-flex:1 1 0px;flex:1 1 0px}.cell.shrink{-webkit-box-flex:0;-ms-flex:0 0 auto;flex:0 0 auto}.grid-x>.auto{width:auto}.grid-x>.shrink{width:auto}.grid-x>.small-shrink,.grid-x>.small-full,.grid-x>.small-1,.grid-x>.small-2,.grid-x>.small-3,.grid-x>.small-4,.grid-x>.small-5,.grid-x>.small-6,.grid-x>.small-7,.grid-x>.small-8,.grid-x>.small-9,.grid-x>.small-10,.grid-x>.small-11,.grid-x>.small-12{-ms-flex-preferred-size:auto;flex-basis:auto}@media print, screen and (min-width: 40em){.grid-x>.medium-shrink,.grid-x>.medium-full,.grid-x>.medium-1,.grid-x>.medium-2,.grid-x>.medium-3,.grid-x>.medium-4,.grid-x>.medium-5,.grid-x>.medium-6,.grid-x>.medium-7,.grid-x>.medium-8,.grid-x>.medium-9,.grid-x>.medium-10,.grid-x>.medium-11,.grid-x>.medium-12{-ms-flex-preferred-size:auto;flex-basis:auto}}@media print, screen and (min-width: 64em){.grid-x>.large-shrink,.grid-x>.large-full,.grid-x>.large-1,.grid-x>.large-2,.grid-x>.large-3,.grid-x>.large-4,.grid-x>.large-5,.grid-x>.large-6,.grid-x>.large-7,.grid-x>.large-8,.grid-x>.large-9,.grid-x>.large-10,.grid-x>.large-11,.grid-x>.large-12{-ms-flex-preferred-size:auto;flex-basis:auto}}.grid-x>.small-1{width:8.33333%}.grid-x>.small-2{width:16.66667%}.grid-x>.small-3{width:25%}.grid-x>.small-4{width:33.33333%}.grid-x>.small-5{width:41.66667%}.grid-x>.small-6{width:50%}.grid-x>.small-7{width:58.33333%}.grid-x>.small-8{width:66.66667%}.grid-x>.small-9{width:75%}.grid-x>.small-10{width:83.33333%}.grid-x>.small-11{width:91.66667%}.grid-x>.small-12{width:100%}@media print, screen and (min-width: 40em){.grid-x>.medium-auto{-webkit-box-flex:1;-ms-flex:1 1 0px;flex:1 1 0px;width:auto}.grid-x>.medium-shrink{-webkit-box-flex:0;-ms-flex:0 0 auto;flex:0 0 auto;width:auto}.grid-x>.medium-1{width:8.33333%}.grid-x>.medium-2{width:16.66667%}.grid-x>.medium-3{width:25%}.grid-x>.medium-4{width:33.33333%}.grid-x>.medium-5{width:41.66667%}.grid-x>.medium-6{width:50%}.grid-x>.medium-7{width:58.33333%}.grid-x>.medium-8{width:66.66667%}.grid-x>.medium-9{width:75%}.grid-x>.medium-10{width:83.33333%}.grid-x>.medium-11{width:91.66667%}.grid-x>.medium-12{width:100%}}@media print, screen and (min-width: 64em){.grid-x>.large-auto{-webkit-box-flex:1;-ms-flex:1 1 0px;flex:1 1 0px;width:auto}.grid-x>.large-shrink{-webkit-box-flex:0;-ms-flex:0 0 auto;flex:0 0 auto;width:auto}.grid-x>.large-1{width:8.33333%}.grid-x>.large-2{width:16.66667%}.grid-x>.large-3{width:25%}.grid-x>.large-4{width:33.33333%}.grid-x>.large-5{width:41.66667%}.grid-x>.large-6{width:50%}.grid-x>.large-7{width:58.33333%}.grid-x>.large-8{width:66.66667%}.grid-x>.large-9{width:75%}.grid-x>.large-10{width:83.33333%}.grid-x>.large-11{width:91.66667%}.grid-x>.large-12{width:100%}}.grid-margin-x:not(.grid-x)>.cell{width:auto}.grid-margin-y:not(.grid-y)>.cell{height:auto}.grid-margin-x{margin-left:-.625rem;margin-right:-.625rem}@media print, screen and (min-width: 40em){.grid-margin-x{margin-left:-.9375rem;margin-right:-.9375rem}}.grid-margin-x>.cell{width:calc(100% - 1.25rem);margin-left:.625rem;margin-right:.625rem}@media print, screen and (min-width: 40em){.grid-margin-x>.cell{width:calc(100% - 1.875rem);margin-left:.9375rem;margin-right:.9375rem}}.grid-margin-x>.auto{width:auto}.grid-margin-x>.shrink{width:auto}.grid-margin-x>.small-1{width:calc(8.33333% - 1.25rem)}.grid-margin-x>.small-2{width:calc(16.66667% - 1.25rem)}.grid-margin-x>.small-3{width:calc(25% - 1.25rem)}.grid-margin-x>.small-4{width:calc(33.33333% - 1.25rem)}.grid-margin-x>.small-5{width:calc(41.66667% - 1.25rem)}.grid-margin-x>.small-6{width:calc(50% - 1.25rem)}.grid-margin-x>.small-7{width:calc(58.33333% - 1.25rem)}.grid-margin-x>.small-8{width:calc(66.66667% - 1.25rem)}.grid-margin-x>.small-9{width:calc(75% - 1.25rem)}.grid-margin-x>.small-10{width:calc(83.33333% - 1.25rem)}.grid-margin-x>.small-11{width:calc(91.66667% - 1.25rem)}.grid-margin-x>.small-12{width:calc(100% - 1.25rem)}@media print, screen and (min-width: 40em){.grid-margin-x>.auto{width:auto}.grid-margin-x>.shrink{width:auto}.grid-margin-x>.small-1{width:calc(8.33333% - 1.875rem)}.grid-margin-x>.small-2{width:calc(16.66667% - 1.875rem)}.grid-margin-x>.small-3{width:calc(25% - 1.875rem)}.grid-margin-x>.small-4{width:calc(33.33333% - 1.875rem)}.grid-margin-x>.small-5{width:calc(41.66667% - 1.875rem)}.grid-margin-x>.small-6{width:calc(50% - 1.875rem)}.grid-margin-x>.small-7{width:calc(58.33333% - 1.875rem)}.grid-margin-x>.small-8{width:calc(66.66667% - 1.875rem)}.grid-margin-x>.small-9{width:calc(75% - 1.875rem)}.grid-margin-x>.small-10{width:calc(83.33333% - 1.875rem)}.grid-margin-x>.small-11{width:calc(91.66667% - 1.875rem)}.grid-margin-x>.small-12{width:calc(100% - 1.875rem)}.grid-margin-x>.medium-auto{width:auto}.grid-margin-x>.medium-shrink{width:auto}.grid-margin-x>.medium-1{width:calc(8.33333% - 1.875rem)}.grid-margin-x>.medium-2{width:calc(16.66667% - 1.875rem)}.grid-margin-x>.medium-3{width:calc(25% - 1.875rem)}.grid-margin-x>.medium-4{width:calc(33.33333% - 1.875rem)}.grid-margin-x>.medium-5{width:calc(41.66667% - 1.875rem)}.grid-margin-x>.medium-6{width:calc(50% - 1.875rem)}.grid-margin-x>.medium-7{width:calc(58.33333% - 1.875rem)}.grid-margin-x>.medium-8{width:calc(66.66667% - 1.875rem)}.grid-margin-x>.medium-9{width:calc(75% - 1.875rem)}.grid-margin-x>.medium-10{width:calc(83.33333% - 1.875rem)}.grid-margin-x>.medium-11{width:calc(91.66667% - 1.875rem)}.grid-margin-x>.medium-12{width:calc(100% - 1.875rem)}}@media print, screen and (min-width: 64em){.grid-margin-x>.large-auto{width:auto}.grid-margin-x>.large-shrink{width:auto}.grid-margin-x>.large-1{width:calc(8.33333% - 1.875rem)}.grid-margin-x>.large-2{width:calc(16.66667% - 1.875rem)}.grid-margin-x>.large-3{width:calc(25% - 1.875rem)}.grid-margin-x>.large-4{width:calc(33.33333% - 1.875rem)}.grid-margin-x>.large-5{width:calc(41.66667% - 1.875rem)}.grid-margin-x>.large-6{width:calc(50% - 1.875rem)}.grid-margin-x>.large-7{width:calc(58.33333% - 1.875rem)}.grid-margin-x>.large-8{width:calc(66.66667% - 1.875rem)}.grid-margin-x>.large-9{width:calc(75% - 1.875rem)}.grid-margin-x>.large-10{width:calc(83.33333% - 1.875rem)}.grid-margin-x>.large-11{width:calc(91.66667% - 1.875rem)}.grid-margin-x>.large-12{width:calc(100% - 1.875rem)}}.grid-padding-x .grid-padding-x{margin-right:-.625rem;margin-left:-.625rem}@media print, screen and (min-width: 40em){.grid-padding-x .grid-padding-x{margin-right:-.9375rem;margin-left:-.9375rem}}.grid-container:not(.full)>.grid-padding-x{margin-right:-.625rem;margin-left:-.625rem}@media print, screen and (min-width: 40em){.grid-container:not(.full)>.grid-padding-x{margin-right:-.9375rem;margin-left:-.9375rem}}.grid-padding-x>.cell{padding-right:.625rem;padding-left:.625rem}@media print, screen and (min-width: 40em){.grid-padding-x>.cell{padding-right:.9375rem;padding-left:.9375rem}}.small-up-1>.cell{width:100%}.small-up-2>.cell{width:50%}.small-up-3>.cell{width:33.33333%}.small-up-4>.cell{width:25%}.small-up-5>.cell{width:20%}.small-up-6>.cell{width:16.66667%}.small-up-7>.cell{width:14.28571%}.small-up-8>.cell{width:12.5%}@media print, screen and (min-width: 40em){.medium-up-1>.cell{width:100%}.medium-up-2>.cell{width:50%}.medium-up-3>.cell{width:33.33333%}.medium-up-4>.cell{width:25%}.medium-up-5>.cell{width:20%}.medium-up-6>.cell{width:16.66667%}.medium-up-7>.cell{width:14.28571%}.medium-up-8>.cell{width:12.5%}}@media print, screen and (min-width: 64em){.large-up-1>.cell{width:100%}.large-up-2>.cell{width:50%}.large-up-3>.cell{width:33.33333%}.large-up-4>.cell{width:25%}.large-up-5>.cell{width:20%}.large-up-6>.cell{width:16.66667%}.large-up-7>.cell{width:14.28571%}.large-up-8>.cell{width:12.5%}}.grid-margin-x.small-up-1>.cell{width:calc(100% - 1.25rem)}.grid-margin-x.small-up-2>.cell{width:calc(50% - 1.25rem)}.grid-margin-x.small-up-3>.cell{width:calc(33.33333% - 1.25rem)}.grid-margin-x.small-up-4>.cell{width:calc(25% - 1.25rem)}.grid-margin-x.small-up-5>.cell{width:calc(20% - 1.25rem)}.grid-margin-x.small-up-6>.cell{width:calc(16.66667% - 1.25rem)}.grid-margin-x.small-up-7>.cell{width:calc(14.28571% - 1.25rem)}.grid-margin-x.small-up-8>.cell{width:calc(12.5% - 1.25rem)}@media print, screen and (min-width: 40em){.grid-margin-x.small-up-1>.cell{width:calc(100% - 1.25rem)}.grid-margin-x.small-up-2>.cell{width:calc(50% - 1.25rem)}.grid-margin-x.small-up-3>.cell{width:calc(33.33333% - 1.25rem)}.grid-margin-x.small-up-4>.cell{width:calc(25% - 1.25rem)}.grid-margin-x.small-up-5>.cell{width:calc(20% - 1.25rem)}.grid-margin-x.small-up-6>.cell{width:calc(16.66667% - 1.25rem)}.grid-margin-x.small-up-7>.cell{width:calc(14.28571% - 1.25rem)}.grid-margin-x.small-up-8>.cell{width:calc(12.5% - 1.25rem)}.grid-margin-x.medium-up-1>.cell{width:calc(100% - 1.875rem)}.grid-margin-x.medium-up-2>.cell{width:calc(50% - 1.875rem)}.grid-margin-x.medium-up-3>.cell{width:calc(33.33333% - 1.875rem)}.grid-margin-x.medium-up-4>.cell{width:calc(25% - 1.875rem)}.grid-margin-x.medium-up-5>.cell{width:calc(20% - 1.875rem)}.grid-margin-x.medium-up-6>.cell{width:calc(16.66667% - 1.875rem)}.grid-margin-x.medium-up-7>.cell{width:calc(14.28571% - 1.875rem)}.grid-margin-x.medium-up-8>.cell{width:calc(12.5% - 1.875rem)}}@media print, screen and (min-width: 64em){.grid-margin-x.large-up-1>.cell{width:calc(100% - 1.875rem)}.grid-margin-x.large-up-2>.cell{width:calc(50% - 1.875rem)}.grid-margin-x.large-up-3>.cell{width:calc(33.33333% - 1.875rem)}.grid-margin-x.large-up-4>.cell{width:calc(25% - 1.875rem)}.grid-margin-x.large-up-5>.cell{width:calc(20% - 1.875rem)}.grid-margin-x.large-up-6>.cell{width:calc(16.66667% - 1.875rem)}.grid-margin-x.large-up-7>.cell{width:calc(14.28571% - 1.875rem)}.grid-margin-x.large-up-8>.cell{width:calc(12.5% - 1.875rem)}}.small-margin-collapse{margin-right:0;margin-left:0}.small-margin-collapse>.cell{margin-right:0;margin-left:0}.small-margin-collapse>.small-1{width:8.33333%}.small-margin-collapse>.small-2{width:16.66667%}.small-margin-collapse>.small-3{width:25%}.small-margin-collapse>.small-4{width:33.33333%}.small-margin-collapse>.small-5{width:41.66667%}.small-margin-collapse>.small-6{width:50%}.small-margin-collapse>.small-7{width:58.33333%}.small-margin-collapse>.small-8{width:66.66667%}.small-margin-collapse>.small-9{width:75%}.small-margin-collapse>.small-10{width:83.33333%}.small-margin-collapse>.small-11{width:91.66667%}.small-margin-collapse>.small-12{width:100%}@media print, screen and (min-width: 40em){.small-margin-collapse>.medium-1{width:8.33333%}.small-margin-collapse>.medium-2{width:16.66667%}.small-margin-collapse>.medium-3{width:25%}.small-margin-collapse>.medium-4{width:33.33333%}.small-margin-collapse>.medium-5{width:41.66667%}.small-margin-collapse>.medium-6{width:50%}.small-margin-collapse>.medium-7{width:58.33333%}.small-margin-collapse>.medium-8{width:66.66667%}.small-margin-collapse>.medium-9{width:75%}.small-margin-collapse>.medium-10{width:83.33333%}.small-margin-collapse>.medium-11{width:91.66667%}.small-margin-collapse>.medium-12{width:100%}}@media print, screen and (min-width: 64em){.small-margin-collapse>.large-1{width:8.33333%}.small-margin-collapse>.large-2{width:16.66667%}.small-margin-collapse>.large-3{width:25%}.small-margin-collapse>.large-4{width:33.33333%}.small-margin-collapse>.large-5{width:41.66667%}.small-margin-collapse>.large-6{width:50%}.small-margin-collapse>.large-7{width:58.33333%}.small-margin-collapse>.large-8{width:66.66667%}.small-margin-collapse>.large-9{width:75%}.small-margin-collapse>.large-10{width:83.33333%}.small-margin-collapse>.large-11{width:91.66667%}.small-margin-collapse>.large-12{width:100%}}.small-padding-collapse{margin-right:0;margin-left:0}.small-padding-collapse>.cell{padding-right:0;padding-left:0}@media print, screen and (min-width: 40em){.medium-margin-collapse{margin-right:0;margin-left:0}.medium-margin-collapse>.cell{margin-right:0;margin-left:0}}@media print, screen and (min-width: 40em){.medium-margin-collapse>.small-1{width:8.33333%}.medium-margin-collapse>.small-2{width:16.66667%}.medium-margin-collapse>.small-3{width:25%}.medium-margin-collapse>.small-4{width:33.33333%}.medium-margin-collapse>.small-5{width:41.66667%}.medium-margin-collapse>.small-6{width:50%}.medium-margin-collapse>.small-7{width:58.33333%}.medium-margin-collapse>.small-8{width:66.66667%}.medium-margin-collapse>.small-9{width:75%}.medium-margin-collapse>.small-10{width:83.33333%}.medium-margin-collapse>.small-11{width:91.66667%}.medium-margin-collapse>.small-12{width:100%}}@media print, screen and (min-width: 40em){.medium-margin-collapse>.medium-1{width:8.33333%}.medium-margin-collapse>.medium-2{width:16.66667%}.medium-margin-collapse>.medium-3{width:25%}.medium-margin-collapse>.medium-4{width:33.33333%}.medium-margin-collapse>.medium-5{width:41.66667%}.medium-margin-collapse>.medium-6{width:50%}.medium-margin-collapse>.medium-7{width:58.33333%}.medium-margin-collapse>.medium-8{width:66.66667%}.medium-margin-collapse>.medium-9{width:75%}.medium-margin-collapse>.medium-10{width:83.33333%}.medium-margin-collapse>.medium-11{width:91.66667%}.medium-margin-collapse>.medium-12{width:100%}}@media print, screen and (min-width: 64em){.medium-margin-collapse>.large-1{width:8.33333%}.medium-margin-collapse>.large-2{width:16.66667%}.medium-margin-collapse>.large-3{width:25%}.medium-margin-collapse>.large-4{width:33.33333%}.medium-margin-collapse>.large-5{width:41.66667%}.medium-margin-collapse>.large-6{width:50%}.medium-margin-collapse>.large-7{width:58.33333%}.medium-margin-collapse>.large-8{width:66.66667%}.medium-margin-collapse>.large-9{width:75%}.medium-margin-collapse>.large-10{width:83.33333%}.medium-margin-collapse>.large-11{width:91.66667%}.medium-margin-collapse>.large-12{width:100%}}@media print, screen and (min-width: 40em){.medium-padding-collapse{margin-right:0;margin-left:0}.medium-padding-collapse>.cell{padding-right:0;padding-left:0}}@media print, screen and (min-width: 64em){.large-margin-collapse{margin-right:0;margin-left:0}.large-margin-collapse>.cell{margin-right:0;margin-left:0}}@media print, screen and (min-width: 64em){.large-margin-collapse>.small-1{width:8.33333%}.large-margin-collapse>.small-2{width:16.66667%}.large-margin-collapse>.small-3{width:25%}.large-margin-collapse>.small-4{width:33.33333%}.large-margin-collapse>.small-5{width:41.66667%}.large-margin-collapse>.small-6{width:50%}.large-margin-collapse>.small-7{width:58.33333%}.large-margin-collapse>.small-8{width:66.66667%}.large-margin-collapse>.small-9{width:75%}.large-margin-collapse>.small-10{width:83.33333%}.large-margin-collapse>.small-11{width:91.66667%}.large-margin-collapse>.small-12{width:100%}}@media print, screen and (min-width: 64em){.large-margin-collapse>.medium-1{width:8.33333%}.large-margin-collapse>.medium-2{width:16.66667%}.large-margin-collapse>.medium-3{width:25%}.large-margin-collapse>.medium-4{width:33.33333%}.large-margin-collapse>.medium-5{width:41.66667%}.large-margin-collapse>.medium-6{width:50%}.large-margin-collapse>.medium-7{width:58.33333%}.large-margin-collapse>.medium-8{width:66.66667%}.large-margin-collapse>.medium-9{width:75%}.large-margin-collapse>.medium-10{width:83.33333%}.large-margin-collapse>.medium-11{width:91.66667%}.large-margin-collapse>.medium-12{width:100%}}@media print, screen and (min-width: 64em){.large-margin-collapse>.large-1{width:8.33333%}.large-margin-collapse>.large-2{width:16.66667%}.large-margin-collapse>.large-3{width:25%}.large-margin-collapse>.large-4{width:33.33333%}.large-margin-collapse>.large-5{width:41.66667%}.large-margin-collapse>.large-6{width:50%}.large-margin-collapse>.large-7{width:58.33333%}.large-margin-collapse>.large-8{width:66.66667%}.large-margin-collapse>.large-9{width:75%}.large-margin-collapse>.large-10{width:83.33333%}.large-margin-collapse>.large-11{width:91.66667%}.large-margin-collapse>.large-12{width:100%}}@media print, screen and (min-width: 64em){.large-padding-collapse{margin-right:0;margin-left:0}.large-padding-collapse>.cell{padding-right:0;padding-left:0}}.small-offset-0{margin-left:0%}.grid-margin-x>.small-offset-0{margin-left:calc(0% + .625rem)}.small-offset-1{margin-left:8.33333%}.grid-margin-x>.small-offset-1{margin-left:calc(8.33333% + .625rem)}.small-offset-2{margin-left:16.66667%}.grid-margin-x>.small-offset-2{margin-left:calc(16.66667% + .625rem)}.small-offset-3{margin-left:25%}.grid-margin-x>.small-offset-3{margin-left:calc(25% + .625rem)}.small-offset-4{margin-left:33.33333%}.grid-margin-x>.small-offset-4{margin-left:calc(33.33333% + .625rem)}.small-offset-5{margin-left:41.66667%}.grid-margin-x>.small-offset-5{margin-left:calc(41.66667% + .625rem)}.small-offset-6{margin-left:50%}.grid-margin-x>.small-offset-6{margin-left:calc(50% + .625rem)}.small-offset-7{margin-left:58.33333%}.grid-margin-x>.small-offset-7{margin-left:calc(58.33333% + .625rem)}.small-offset-8{margin-left:66.66667%}.grid-margin-x>.small-offset-8{margin-left:calc(66.66667% + .625rem)}.small-offset-9{margin-left:75%}.grid-margin-x>.small-offset-9{margin-left:calc(75% + .625rem)}.small-offset-10{margin-left:83.33333%}.grid-margin-x>.small-offset-10{margin-left:calc(83.33333% + .625rem)}.small-offset-11{margin-left:91.66667%}.grid-margin-x>.small-offset-11{margin-left:calc(91.66667% + .625rem)}@media print, screen and (min-width: 40em){.medium-offset-0{margin-left:0%}.grid-margin-x>.medium-offset-0{margin-left:calc(0% + .9375rem)}.medium-offset-1{margin-left:8.33333%}.grid-margin-x>.medium-offset-1{margin-left:calc(8.33333% + .9375rem)}.medium-offset-2{margin-left:16.66667%}.grid-margin-x>.medium-offset-2{margin-left:calc(16.66667% + .9375rem)}.medium-offset-3{margin-left:25%}.grid-margin-x>.medium-offset-3{margin-left:calc(25% + .9375rem)}.medium-offset-4{margin-left:33.33333%}.grid-margin-x>.medium-offset-4{margin-left:calc(33.33333% + .9375rem)}.medium-offset-5{margin-left:41.66667%}.grid-margin-x>.medium-offset-5{margin-left:calc(41.66667% + .9375rem)}.medium-offset-6{margin-left:50%}.grid-margin-x>.medium-offset-6{margin-left:calc(50% + .9375rem)}.medium-offset-7{margin-left:58.33333%}.grid-margin-x>.medium-offset-7{margin-left:calc(58.33333% + .9375rem)}.medium-offset-8{margin-left:66.66667%}.grid-margin-x>.medium-offset-8{margin-left:calc(66.66667% + .9375rem)}.medium-offset-9{margin-left:75%}.grid-margin-x>.medium-offset-9{margin-left:calc(75% + .9375rem)}.medium-offset-10{margin-left:83.33333%}.grid-margin-x>.medium-offset-10{margin-left:calc(83.33333% + .9375rem)}.medium-offset-11{margin-left:91.66667%}.grid-margin-x>.medium-offset-11{margin-left:calc(91.66667% + .9375rem)}}@media print, screen and (min-width: 64em){.large-offset-0{margin-left:0%}.grid-margin-x>.large-offset-0{margin-left:calc(0% + .9375rem)}.large-offset-1{margin-left:8.33333%}.grid-margin-x>.large-offset-1{margin-left:calc(8.33333% + .9375rem)}.large-offset-2{margin-left:16.66667%}.grid-margin-x>.large-offset-2{margin-left:calc(16.66667% + .9375rem)}.large-offset-3{margin-left:25%}.grid-margin-x>.large-offset-3{margin-left:calc(25% + .9375rem)}.large-offset-4{margin-left:33.33333%}.grid-margin-x>.large-offset-4{margin-left:calc(33.33333% + .9375rem)}.large-offset-5{margin-left:41.66667%}.grid-margin-x>.large-offset-5{margin-left:calc(41.66667% + .9375rem)}.large-offset-6{margin-left:50%}.grid-margin-x>.large-offset-6{margin-left:calc(50% + .9375rem)}.large-offset-7{margin-left:58.33333%}.grid-margin-x>.large-offset-7{margin-left:calc(58.33333% + .9375rem)}.large-offset-8{margin-left:66.66667%}.grid-margin-x>.large-offset-8{margin-left:calc(66.66667% + .9375rem)}.large-offset-9{margin-left:75%}.grid-margin-x>.large-offset-9{margin-left:calc(75% + .9375rem)}.large-offset-10{margin-left:83.33333%}.grid-margin-x>.large-offset-10{margin-left:calc(83.33333% + .9375rem)}.large-offset-11{margin-left:91.66667%}.grid-margin-x>.large-offset-11{margin-left:calc(91.66667% + .9375rem)}}.grid-y{display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-orient:vertical;-webkit-box-direction:normal;-ms-flex-flow:column nowrap;flex-flow:column nowrap}.grid-y>.cell{width:auto;max-width:none}.grid-y>.auto{height:auto}.grid-y>.shrink{height:auto}.grid-y>.small-shrink,.grid-y>.small-full,.grid-y>.small-1,.grid-y>.small-2,.grid-y>.small-3,.grid-y>.small-4,.grid-y>.small-5,.grid-y>.small-6,.grid-y>.small-7,.grid-y>.small-8,.grid-y>.small-9,.grid-y>.small-10,.grid-y>.small-11,.grid-y>.small-12{-ms-flex-preferred-size:auto;flex-basis:auto}@media print, screen and (min-width: 40em){.grid-y>.medium-shrink,.grid-y>.medium-full,.grid-y>.medium-1,.grid-y>.medium-2,.grid-y>.medium-3,.grid-y>.medium-4,.grid-y>.medium-5,.grid-y>.medium-6,.grid-y>.medium-7,.grid-y>.medium-8,.grid-y>.medium-9,.grid-y>.medium-10,.grid-y>.medium-11,.grid-y>.medium-12{-ms-flex-preferred-size:auto;flex-basis:auto}}@media print, screen and (min-width: 64em){.grid-y>.large-shrink,.grid-y>.large-full,.grid-y>.large-1,.grid-y>.large-2,.grid-y>.large-3,.grid-y>.large-4,.grid-y>.large-5,.grid-y>.large-6,.grid-y>.large-7,.grid-y>.large-8,.grid-y>.large-9,.grid-y>.large-10,.grid-y>.large-11,.grid-y>.large-12{-ms-flex-preferred-size:auto;flex-basis:auto}}.grid-y>.small-1{height:8.33333%}.grid-y>.small-2{height:16.66667%}.grid-y>.small-3{height:25%}.grid-y>.small-4{height:33.33333%}.grid-y>.small-5{height:41.66667%}.grid-y>.small-6{height:50%}.grid-y>.small-7{height:58.33333%}.grid-y>.small-8{height:66.66667%}.grid-y>.small-9{height:75%}.grid-y>.small-10{height:83.33333%}.grid-y>.small-11{height:91.66667%}.grid-y>.small-12{height:100%}@media print, screen and (min-width: 40em){.grid-y>.medium-auto{-webkit-box-flex:1;-ms-flex:1 1 0px;flex:1 1 0px;height:auto}.grid-y>.medium-shrink{height:auto}.grid-y>.medium-1{height:8.33333%}.grid-y>.medium-2{height:16.66667%}.grid-y>.medium-3{height:25%}.grid-y>.medium-4{height:33.33333%}.grid-y>.medium-5{height:41.66667%}.grid-y>.medium-6{height:50%}.grid-y>.medium-7{height:58.33333%}.grid-y>.medium-8{height:66.66667%}.grid-y>.medium-9{height:75%}.grid-y>.medium-10{height:83.33333%}.grid-y>.medium-11{height:91.66667%}.grid-y>.medium-12{height:100%}}@media print, screen and (min-width: 64em){.grid-y>.large-auto{-webkit-box-flex:1;-ms-flex:1 1 0px;flex:1 1 0px;height:auto}.grid-y>.large-shrink{height:auto}.grid-y>.large-1{height:8.33333%}.grid-y>.large-2{height:16.66667%}.grid-y>.large-3{height:25%}.grid-y>.large-4{height:33.33333%}.grid-y>.large-5{height:41.66667%}.grid-y>.large-6{height:50%}.grid-y>.large-7{height:58.33333%}.grid-y>.large-8{height:66.66667%}.grid-y>.large-9{height:75%}.grid-y>.large-10{height:83.33333%}.grid-y>.large-11{height:91.66667%}.grid-y>.large-12{height:100%}}.grid-padding-y .grid-padding-y{margin-top:-.625rem;margin-bottom:-.625rem}@media print, screen and (min-width: 40em){.grid-padding-y .grid-padding-y{margin-top:-.9375rem;margin-bottom:-.9375rem}}.grid-padding-y>.cell{padding-top:.625rem;padding-bottom:.625rem}@media print, screen and (min-width: 40em){.grid-padding-y>.cell{padding-top:.9375rem;padding-bottom:.9375rem}}.grid-margin-y{margin-top:-.625rem;margin-bottom:-.625rem}@media print, screen and (min-width: 40em){.grid-margin-y{margin-top:-.9375rem;margin-bottom:-.9375rem}}.grid-margin-y>.cell{height:calc(100% - 1.25rem);margin-top:.625rem;margin-bottom:.625rem}@media print, screen and (min-width: 40em){.grid-margin-y>.cell{height:calc(100% - 1.875rem);margin-top:.9375rem;margin-bottom:.9375rem}}.grid-margin-y>.auto{height:auto}.grid-margin-y>.shrink{height:auto}.grid-margin-y>.small-1{height:calc(8.33333% - 1.25rem)}.grid-margin-y>.small-2{height:calc(16.66667% - 1.25rem)}.grid-margin-y>.small-3{height:calc(25% - 1.25rem)}.grid-margin-y>.small-4{height:calc(33.33333% - 1.25rem)}.grid-margin-y>.small-5{height:calc(41.66667% - 1.25rem)}.grid-margin-y>.small-6{height:calc(50% - 1.25rem)}.grid-margin-y>.small-7{height:calc(58.33333% - 1.25rem)}.grid-margin-y>.small-8{height:calc(66.66667% - 1.25rem)}.grid-margin-y>.small-9{height:calc(75% - 1.25rem)}.grid-margin-y>.small-10{height:calc(83.33333% - 1.25rem)}.grid-margin-y>.small-11{height:calc(91.66667% - 1.25rem)}.grid-margin-y>.small-12{height:calc(100% - 1.25rem)}@media print, screen and (min-width: 40em){.grid-margin-y>.auto{height:auto}.grid-margin-y>.shrink{height:auto}.grid-margin-y>.small-1{height:calc(8.33333% - 1.875rem)}.grid-margin-y>.small-2{height:calc(16.66667% - 1.875rem)}.grid-margin-y>.small-3{height:calc(25% - 1.875rem)}.grid-margin-y>.small-4{height:calc(33.33333% - 1.875rem)}.grid-margin-y>.small-5{height:calc(41.66667% - 1.875rem)}.grid-margin-y>.small-6{height:calc(50% - 1.875rem)}.grid-margin-y>.small-7{height:calc(58.33333% - 1.875rem)}.grid-margin-y>.small-8{height:calc(66.66667% - 1.875rem)}.grid-margin-y>.small-9{height:calc(75% - 1.875rem)}.grid-margin-y>.small-10{height:calc(83.33333% - 1.875rem)}.grid-margin-y>.small-11{height:calc(91.66667% - 1.875rem)}.grid-margin-y>.small-12{height:calc(100% - 1.875rem)}.grid-margin-y>.medium-auto{height:auto}.grid-margin-y>.medium-shrink{height:auto}.grid-margin-y>.medium-1{height:calc(8.33333% - 1.875rem)}.grid-margin-y>.medium-2{height:calc(16.66667% - 1.875rem)}.grid-margin-y>.medium-3{height:calc(25% - 1.875rem)}.grid-margin-y>.medium-4{height:calc(33.33333% - 1.875rem)}.grid-margin-y>.medium-5{height:calc(41.66667% - 1.875rem)}.grid-margin-y>.medium-6{height:calc(50% - 1.875rem)}.grid-margin-y>.medium-7{height:calc(58.33333% - 1.875rem)}.grid-margin-y>.medium-8{height:calc(66.66667% - 1.875rem)}.grid-margin-y>.medium-9{height:calc(75% - 1.875rem)}.grid-margin-y>.medium-10{height:calc(83.33333% - 1.875rem)}.grid-margin-y>.medium-11{height:calc(91.66667% - 1.875rem)}.grid-margin-y>.medium-12{height:calc(100% - 1.875rem)}}@media print, screen and (min-width: 64em){.grid-margin-y>.large-auto{height:auto}.grid-margin-y>.large-shrink{height:auto}.grid-margin-y>.large-1{height:calc(8.33333% - 1.875rem)}.grid-margin-y>.large-2{height:calc(16.66667% - 1.875rem)}.grid-margin-y>.large-3{height:calc(25% - 1.875rem)}.grid-margin-y>.large-4{height:calc(33.33333% - 1.875rem)}.grid-margin-y>.large-5{height:calc(41.66667% - 1.875rem)}.grid-margin-y>.large-6{height:calc(50% - 1.875rem)}.grid-margin-y>.large-7{height:calc(58.33333% - 1.875rem)}.grid-margin-y>.large-8{height:calc(66.66667% - 1.875rem)}.grid-margin-y>.large-9{height:calc(75% - 1.875rem)}.grid-margin-y>.large-10{height:calc(83.33333% - 1.875rem)}.grid-margin-y>.large-11{height:calc(91.66667% - 1.875rem)}.grid-margin-y>.large-12{height:calc(100% - 1.875rem)}}.grid-frame{overflow:hidden;position:relative;-ms-flex-wrap:nowrap;flex-wrap:nowrap;-webkit-box-align:stretch;-ms-flex-align:stretch;align-items:stretch;width:100vw}.cell .grid-frame{width:100%}.cell-block{overflow-x:auto;max-width:100%;-webkit-overflow-scrolling:touch;-ms-overflow-stype:-ms-autohiding-scrollbar}.cell-block-y{overflow-y:auto;max-height:100%;height:100%;-webkit-overflow-scrolling:touch;-ms-overflow-stype:-ms-autohiding-scrollbar}.cell-block-container{display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-orient:vertical;-webkit-box-direction:normal;-ms-flex-direction:column;flex-direction:column;max-height:100%}.cell-block-container>.grid-x{max-height:100%;-ms-flex-wrap:nowrap;flex-wrap:nowrap}@media print, screen and (min-width: 40em){.medium-grid-frame{overflow:hidden;position:relative;-ms-flex-wrap:nowrap;flex-wrap:nowrap;-webkit-box-align:stretch;-ms-flex-align:stretch;align-items:stretch;width:100vw}.cell .medium-grid-frame{width:100%}.medium-cell-block{overflow-x:auto;max-width:100%;-webkit-overflow-scrolling:touch;-ms-overflow-stype:-ms-autohiding-scrollbar}.medium-cell-block-container{display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-orient:vertical;-webkit-box-direction:normal;-ms-flex-direction:column;flex-direction:column;max-height:100%}.medium-cell-block-container>.grid-x{max-height:100%;-ms-flex-wrap:nowrap;flex-wrap:nowrap}.medium-cell-block-y{overflow-y:auto;max-height:100%;height:100%;-webkit-overflow-scrolling:touch;-ms-overflow-stype:-ms-autohiding-scrollbar}}@media print, screen and (min-width: 64em){.large-grid-frame{overflow:hidden;position:relative;-ms-flex-wrap:nowrap;flex-wrap:nowrap;-webkit-box-align:stretch;-ms-flex-align:stretch;align-items:stretch;width:100vw}.cell .large-grid-frame{width:100%}.large-cell-block{overflow-x:auto;max-width:100%;-webkit-overflow-scrolling:touch;-ms-overflow-stype:-ms-autohiding-scrollbar}.large-cell-block-container{display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-orient:vertical;-webkit-box-direction:normal;-ms-flex-direction:column;flex-direction:column;max-height:100%}.large-cell-block-container>.grid-x{max-height:100%;-ms-flex-wrap:nowrap;flex-wrap:nowrap}.large-cell-block-y{overflow-y:auto;max-height:100%;height:100%;-webkit-overflow-scrolling:touch;-ms-overflow-stype:-ms-autohiding-scrollbar}}.grid-y.grid-frame{width:auto;overflow:hidden;position:relative;-ms-flex-wrap:nowrap;flex-wrap:nowrap;-webkit-box-align:stretch;-ms-flex-align:stretch;align-items:stretch;height:100vh}@media print, screen and (min-width: 40em){.grid-y.medium-grid-frame{width:auto;overflow:hidden;position:relative;-ms-flex-wrap:nowrap;flex-wrap:nowrap;-webkit-box-align:stretch;-ms-flex-align:stretch;align-items:stretch;height:100vh}}@media print, screen and (min-width: 64em){.grid-y.large-grid-frame{width:auto;overflow:hidden;position:relative;-ms-flex-wrap:nowrap;flex-wrap:nowrap;-webkit-box-align:stretch;-ms-flex-align:stretch;align-items:stretch;height:100vh}}.cell .grid-y.grid-frame{height:100%}@media print, screen and (min-width: 40em){.cell .grid-y.medium-grid-frame{height:100%}}@media print, screen and (min-width: 64em){.cell .grid-y.large-grid-frame{height:100%}}.grid-margin-y{margin-top:-.625rem;margin-bottom:-.625rem}@media print, screen and (min-width: 40em){.grid-margin-y{margin-top:-.9375rem;margin-bottom:-.9375rem}}.grid-margin-y>.cell{height:calc(100% - 1.25rem);margin-top:.625rem;margin-bottom:.625rem}@media print, screen and (min-width: 40em){.grid-margin-y>.cell{height:calc(100% - 1.875rem);margin-top:.9375rem;margin-bottom:.9375rem}}.grid-margin-y>.auto{height:auto}.grid-margin-y>.shrink{height:auto}.grid-margin-y>.small-1{height:calc(8.33333% - 1.25rem)}.grid-margin-y>.small-2{height:calc(16.66667% - 1.25rem)}.grid-margin-y>.small-3{height:calc(25% - 1.25rem)}.grid-margin-y>.small-4{height:calc(33.33333% - 1.25rem)}.grid-margin-y>.small-5{height:calc(41.66667% - 1.25rem)}.grid-margin-y>.small-6{height:calc(50% - 1.25rem)}.grid-margin-y>.small-7{height:calc(58.33333% - 1.25rem)}.grid-margin-y>.small-8{height:calc(66.66667% - 1.25rem)}.grid-margin-y>.small-9{height:calc(75% - 1.25rem)}.grid-margin-y>.small-10{height:calc(83.33333% - 1.25rem)}.grid-margin-y>.small-11{height:calc(91.66667% - 1.25rem)}.grid-margin-y>.small-12{height:calc(100% - 1.25rem)}@media print, screen and (min-width: 40em){.grid-margin-y>.auto{height:auto}.grid-margin-y>.shrink{height:auto}.grid-margin-y>.small-1{height:calc(8.33333% - 1.875rem)}.grid-margin-y>.small-2{height:calc(16.66667% - 1.875rem)}.grid-margin-y>.small-3{height:calc(25% - 1.875rem)}.grid-margin-y>.small-4{height:calc(33.33333% - 1.875rem)}.grid-margin-y>.small-5{height:calc(41.66667% - 1.875rem)}.grid-margin-y>.small-6{height:calc(50% - 1.875rem)}.grid-margin-y>.small-7{height:calc(58.33333% - 1.875rem)}.grid-margin-y>.small-8{height:calc(66.66667% - 1.875rem)}.grid-margin-y>.small-9{height:calc(75% - 1.875rem)}.grid-margin-y>.small-10{height:calc(83.33333% - 1.875rem)}.grid-margin-y>.small-11{height:calc(91.66667% - 1.875rem)}.grid-margin-y>.small-12{height:calc(100% - 1.875rem)}.grid-margin-y>.medium-auto{height:auto}.grid-margin-y>.medium-shrink{height:auto}.grid-margin-y>.medium-1{height:calc(8.33333% - 1.875rem)}.grid-margin-y>.medium-2{height:calc(16.66667% - 1.875rem)}.grid-margin-y>.medium-3{height:calc(25% - 1.875rem)}.grid-margin-y>.medium-4{height:calc(33.33333% - 1.875rem)}.grid-margin-y>.medium-5{height:calc(41.66667% - 1.875rem)}.grid-margin-y>.medium-6{height:calc(50% - 1.875rem)}.grid-margin-y>.medium-7{height:calc(58.33333% - 1.875rem)}.grid-margin-y>.medium-8{height:calc(66.66667% - 1.875rem)}.grid-margin-y>.medium-9{height:calc(75% - 1.875rem)}.grid-margin-y>.medium-10{height:calc(83.33333% - 1.875rem)}.grid-margin-y>.medium-11{height:calc(91.66667% - 1.875rem)}.grid-margin-y>.medium-12{height:calc(100% - 1.875rem)}}@media print, screen and (min-width: 64em){.grid-margin-y>.large-auto{height:auto}.grid-margin-y>.large-shrink{height:auto}.grid-margin-y>.large-1{height:calc(8.33333% - 1.875rem)}.grid-margin-y>.large-2{height:calc(16.66667% - 1.875rem)}.grid-margin-y>.large-3{height:calc(25% - 1.875rem)}.grid-margin-y>.large-4{height:calc(33.33333% - 1.875rem)}.grid-margin-y>.large-5{height:calc(41.66667% - 1.875rem)}.grid-margin-y>.large-6{height:calc(50% - 1.875rem)}.grid-margin-y>.large-7{height:calc(58.33333% - 1.875rem)}.grid-margin-y>.large-8{height:calc(66.66667% - 1.875rem)}.grid-margin-y>.large-9{height:calc(75% - 1.875rem)}.grid-margin-y>.large-10{height:calc(83.33333% - 1.875rem)}.grid-margin-y>.large-11{height:calc(91.66667% - 1.875rem)}.grid-margin-y>.large-12{height:calc(100% - 1.875rem)}}.grid-frame.grid-margin-y{height:calc(100vh + 1.25rem)}@media print, screen and (min-width: 40em){.grid-frame.grid-margin-y{height:calc(100vh + 1.875rem)}}@media print, screen and (min-width: 64em){.grid-frame.grid-margin-y{height:calc(100vh + 1.875rem)}}@media print, screen and (min-width: 40em){.grid-margin-y.medium-grid-frame{height:calc(100vh + 1.875rem)}}@media print, screen and (min-width: 64em){.grid-margin-y.large-grid-frame{height:calc(100vh + 1.875rem)}}.hide{display:none !important}.invisible{visibility:hidden}@media screen and (max-width: 39.9375em){.hide-for-small-only{display:none !important}}@media screen and (max-width: 0em), screen and (min-width: 40em){.show-for-small-only{display:none !important}}@media print, screen and (min-width: 40em){.hide-for-medium{display:none !important}}@media screen and (max-width: 39.9375em){.show-for-medium{display:none !important}}@media screen and (min-width: 40em) and (max-width: 63.9375em){.hide-for-medium-only{display:none !important}}@media screen and (max-width: 39.9375em), screen and (min-width: 64em){.show-for-medium-only{display:none !important}}@media print, screen and (min-width: 64em){.hide-for-large{display:none !important}}@media screen and (max-width: 63.9375em){.show-for-large{display:none !important}}@media screen and (min-width: 64em) and (max-width: 74.9375em){.hide-for-large-only{display:none !important}}@media screen and (max-width: 63.9375em), screen and (min-width: 75em){.show-for-large-only{display:none !important}}.show-for-sr,.show-on-focus{position:absolute !important;width:1px;height:1px;padding:0;overflow:hidden;clip:rect(0, 0, 0, 0);white-space:nowrap;-webkit-clip-path:inset(50%);clip-path:inset(50%);border:0}.show-on-focus:active,.show-on-focus:focus{position:static !important;width:auto;height:auto;overflow:visible;clip:auto;white-space:normal;-webkit-clip-path:none;clip-path:none}.show-for-landscape,.hide-for-portrait{display:block !important}@media screen and (orientation: landscape){.show-for-landscape,.hide-for-portrait{display:block !important}}@media screen and (orientation: portrait){.show-for-landscape,.hide-for-portrait{display:none !important}}.hide-for-landscape,.show-for-portrait{display:none !important}@media screen and (orientation: landscape){.hide-for-landscape,.show-for-portrait{display:none !important}}@media screen and (orientation: portrait){.hide-for-landscape,.show-for-portrait{display:block !important}}.float-left{float:left !important}.float-right{float:right !important}.float-center{display:block;margin-right:auto;margin-left:auto}.clearfix::before,.clearfix::after{display:table;content:' ';-ms-flex-preferred-size:0;flex-basis:0;-webkit-box-ordinal-group:2;-ms-flex-order:1;order:1}.clearfix::after{clear:both}@media screen and (max-width: 39.9375em){.grid-container--mobile{padding-left:0;padding-right:0}}@media screen and (min-width: 40em) and (max-width: 63.9375em){.grid-container--mobile{padding-left:0;padding-right:0}}body{margin:0}h1,h2,h3,h4,h5,h6{margin:10px 0}p{font-family:Arial, sans-serif}a{text-decoration:none}img{height:auto;max-width:100%}.content{border-top:#ccc solid 1px}@media screen and (min-width: 64em){.content{border-top:none}}body{font-family:"Open Sans",sans-serif}strong{font-weight:700}.headline-reg{font-family:"Open Sans",sans-serif;font-weight:400}.headline-semibold{font-family:"Open Sans",sans-serif;font-weight:600}.headline-semibold--italic{font-family:"Open Sans",sans-serif;font-style:italic}.headline-bold{font-family:"Open Sans",sans-serif;font-weight:700}.headline-1{font-size:24px;line-height:32px}@media screen and (min-width: 64em){.headline-1{font-size:28px;line-height:36px}}.headline-2{font-size:18px;line-height:26px}@media screen and (min-width: 64em){.headline-2{font-size:22px;line-height:30px}}.headline-3{font-size:14px;line-height:24px}@media screen and (min-width: 64em){.headline-3{font-size:18px;line-height:28px}}.headline-4{font-size:12px;line-height:16px}@media screen and (min-width: 64em){.headline-4{font-size:16px;line-height:20px}}.headline-5{font-size:10px;line-height:10px}@media screen and (min-width: 64em){.headline-5{font-size:14px;line-height:14px}}.is-blue-primary{color:#053A59}.is-blue-secondary{color:#2B9BA7}.is-grey{color:#5B5B5B}.is-white{color:#fff}.is-bg-blue{background-color:#053A59}.is-bg-light-blue{background-color:#cdd8de}.is-cap{text-transform:capitalize}.masthead{background-color:#fff;z-index:5}.masthead .masthead__logo{display:inline-block;max-width:100%;width:146px}@media screen and (min-width: 40em){.masthead .masthead__logo{width:183px}}@media screen and (min-width: 64em){.masthead .masthead__logo{width:305px}}.masthead .masthead__menu{padding:10px;margin:2px -10px 0 0}.masthead .masthead__menu--button{background:#2B9BA7;height:4px;position:relative;-webkit-transition:background .4s;transition:background .4s;width:25px}.masthead .masthead__menu--button:before{content:'';background:#2B9BA7;height:4px;left:0;position:absolute;right:0;top:-8px;-webkit-transform:rotate(0deg);transform:rotate(0deg);-webkit-transition:all .4s;transition:all .4s;width:25px}.masthead .masthead__menu--button:after{content:'';background:#2B9BA7;bottom:-8px;height:4px;left:0;position:absolute;right:0;-webkit-transform:rotate(0deg);transform:rotate(0deg);-webkit-transition:all .4s;transition:all .4s;width:25px}.masthead .masthead__menu--close{background:transparent}.masthead .masthead__menu--close:before{top:0;-webkit-transform:rotate(45deg);transform:rotate(45deg)}.masthead .masthead__menu--close:after{bottom:0;-webkit-transform:rotate(-45deg);transform:rotate(-45deg)}.mastfoot{margin-top:40px;padding:20px 0 40px}@media screen and (min-width: 64em){.mastfoot{margin-top:140px;padding:50px 0 80px}}.mastfoot .masthead__logo{display:inline-block;float:left;max-width:100%;width:146px}@media screen and (min-width: 40em){.mastfoot .masthead__logo{width:183px}}@media screen and (min-width: 64em){.mastfoot .masthead__logo{width:270px}}.banner{margin:15px 0;padding:15px 0}@media screen and (min-width: 40em){.banner{margin:30px 0}}@media screen and (min-width: 64em){.banner{margin:50px 0}}.banner .banner__headline{margin-left:20px;font-size:18px}@media screen and (min-width: 40em){.banner .banner__headline{font-size:26px}}@media screen and (min-width: 64em){.banner .banner__headline--kid{padding-left:120px}.banner .banner__headline--kid:before{content:" ";background-image:url(../img/graphics/graphic-ninja.png);background-repeat:no-repeat;background-size:120px;display:block;height:113px;left:20px;position:absolute;top:-12px;width:120px;z-index:3}}.banner .banner__button{text-align:right;margin-right:20px}.banner--one{background-color:#2b9ba7}.banner--two{background-color:#228494}.banner--three{background-color:#2d768b}.banner--four{background-color:#0c4b67}.banner--five{background-color:#053a59;position:relative}.post .post__image--med{background:#aaa;height:220px;width:100%}.post .post__image--large{background:#aaa;height:340px;width:100%}.post .post__feature{margin-bottom:40px}.post .post__feature p{color:#053A59;font-family:"Open Sans",sans-serif;font-size:14px;font-weight:400;line-height:24px;margin:10px 0}@media screen and (min-width: 40em){.post .post__feature p{font-size:18px;line-height:28px}}@media screen and (min-width: 40em){.post .post__sub-posts{margin-bottom:30px}}.post .post__load-more{text-align:center}.blog .blog__feature{margin-bottom:40px}.blog .blog__feature .blog__feature-image{background:#aaa;height:228px;width:100%}@media screen and (min-width: 40em){.blog .blog__feature .blog__feature-image{height:455px}}.blog .blog__social{padding:20px 0}.blog .blog__social-list{display:inline-block;margin:0 5px 5px 0}@media screen and (min-width: 40em){.blog .blog__social-list{margin:0 5px 0 0}}.blog .blog__column{border-left:none;padding:none}@media screen and (min-width: 64em){.blog .blog__column{border-left:#cdd8de solid 2px;padding:0 0 10px 20px}}.blog .blog__column .blog__column-feature{margin-bottom:20px}.blog .blog__column .blog__column-feature .blog__column-image{background:#aaa;height:160px;width:100%}@media screen and (min-width: 40em){.blog .blog__column .blog__column-feature .blog__column-image{height:160px}}.blog .blog__column .blog__column-feature img{background-color:#cdd8de}.blog .blog__column .blog__column-headline{margin-bottom:10px;text-transform:uppercase}@media screen and (min-width: 40em){.blog .blog__column .blog__column-headline{margin-bottom:20px}}.post img{background-color:#cdd8de}.content-single .blog__feature img{width:100%}.content-single .blog__content h1,.content-single .blog__content h2,.content-single .blog__content h3{color:#053A59;font-family:"Open Sans",sans-serif;font-size:18px;font-weight:700;line-height:26px}@media screen and (min-width: 40em){.content-single .blog__content h1,.content-single .blog__content h2,.content-single .blog__content h3{font-size:22px;line-height:30px}}.content-single .blog__content h4,.content-single .blog__content h5,.content-single .blog__content h6{color:#5B5B5B;font-family:"Open Sans",sans-serif;font-size:14px;font-weight:700;line-height:24px}@media screen and (min-width: 40em){.content-single .blog__content h4,.content-single .blog__content h5,.content-single .blog__content h6{font-size:18px;line-height:28px}}.content-single .blog__content p,.content-single .blog__content li{color:#5B5B5B;font-size:14px;line-height:24px;font-weight:400;font-family:"Open Sans",sans-serif;margin-bottom:24px}@media screen and (min-width: 40em){.content-single .blog__content p,.content-single .blog__content li{font-size:18px;line-height:28px}}.content-single .blog__content ol,.content-single .blog__content ul{padding-left:20px}.content-single .blog__content h1,.content-single .blog__content h2,.content-single .blog__content h3,.content-single .blog__content h4,.content-single .blog__content h5,.content-single .blog__content h6,.content-single .blog__content p,.content-single .blog__content li{float:left;width:100%}.content-single .blog__content h1 img,.content-single .blog__content h2 img,.content-single .blog__content h3 img,.content-single .blog__content h4 img,.content-single .blog__content h5 img,.content-single .blog__content h6 img,.content-single .blog__content p img,.content-single .blog__content li img{float:left;margin:0 20px 20px 0}.content-single .blog__content h1 img.alignright,.content-single .blog__content h2 img.alignright,.content-single .blog__content h3 img.alignright,.content-single .blog__content h4 img.alignright,.content-single .blog__content h5 img.alignright,.content-single .blog__content h6 img.alignright,.content-single .blog__content p img.alignright,.content-single .blog__content li img.alignright{float:right;margin:0 0 20px 20px}.content-single .blog__content h1 a,.content-single .blog__content h2 a,.content-single .blog__content h3 a,.content-single .blog__content h4 a,.content-single .blog__content h5 a,.content-single .blog__content h6 a,.content-single .blog__content p a,.content-single .blog__content li a{color:#2B9BA7}.content-single .blog__content h1 b,.content-single .blog__content h2 b,.content-single .blog__content h3 b,.content-single .blog__content h4 b,.content-single .blog__content h5 b,.content-single .blog__content h6 b,.content-single .blog__content p b,.content-single .blog__content li b{font-weight:700}.content-single .blog__content h1 i,.content-single .blog__content h2 i,.content-single .blog__content h3 i,.content-single .blog__content h4 i,.content-single .blog__content h5 i,.content-single .blog__content h6 i,.content-single .blog__content p i,.content-single .blog__content li i{font-style:italic}.nav-background{background-color:#cdd8de}.nav-header{height:30px;padding:20px 0}@media screen and (min-width: 64em){.nav-header{display:block;height:100%;text-align:right}}.nav-header .nav-header__phone{font-size:18px;left:50%;position:absolute;width:150px}@media screen and (min-width: 40em){.nav-header .nav-header__phone{font-size:24px;width:200px}}@media screen and (min-width: 64em){.nav-header .nav-header__phone{display:block;font-size:30px;left:0;margin:0;position:static;text-align:right;width:100%}}.nav-header .nav-header__menu{display:inline-block;float:right;margin-top:5px}.nav-main{display:none;z-index:3}.nav-main ul li{display:block}@media screen and (min-width: 64em){.nav-main{display:block;height:60px;line-height:60px;margin-bottom:0px;position:relative}}.nav-main .rotate-arrow::after{content:" ";-webkit-transform:rotate(90deg);transform:rotate(90deg);-webkit-transform-origin:20% 40%;transform-origin:20% 40%;-webkit-transition:-webkit-transform .1s ease-in-out}@media screen and (min-width: 64em){.nav-main .rotate-arrow::after{-webkit-transform:none;transform:none;-webkit-transform-origin:none;transform-origin:none;-webkit-transition:none}}@media screen and (min-width: 64em){.nav-main .menu{display:-webkit-box;display:-ms-flexbox;display:flex}}.nav-main .menu>.menu-item{-webkit-box-flex:1;-ms-flex:1 1 0px;flex:1 1 0px;width:auto}.nav-main .menu>.menu-item a{color:#fff;display:block;font-family:"Open Sans",sans-serif;font-weight:700;padding:20px 0px 20px 20px;position:relative}.nav-main .menu>.menu-item a::after{content:" ";background-image:url(../img/icons/icon-arrow-white.svg);background-repeat:no-repeat;background-size:8px;float:right;height:15px;margin-right:15px;width:15px}@media screen and (min-width: 64em){.nav-main .menu>.menu-item{font-family:"Open Sans",sans-serif;margin-left:0;padding:0;text-align:center;text-transform:uppercase}.nav-main .menu>.menu-item a{padding:0;padding-left:0}.nav-main .menu>.menu-item a:after{display:none}}@media screen and (min-width: 64em) and (min-width: 64em){.nav-main .menu>.menu-item:hover>ul{display:block}}.nav-main .menu>.menu-item:last-child{position:relative}@media screen and (min-width: 64em){.nav-main .menu>.menu-item:last-child{text-align:left}.nav-main .menu>.menu-item:last-child a{padding-left:20px}.nav-main .menu>.menu-item:last-child:after{content:" ";background-image:url(../img/graphics/graphic-ninja.png);background-repeat:no-repeat;background-size:95px;display:block;height:100px;position:absolute;right:-15px;top:-15px;width:100px;z-index:3}}.nav-main .menu .menu-item:nth-child(1){background-color:#45a7b2;background-image:-webkit-gradient(linear, right top, left top, from(#45a7b2), to(#2b9ba7));background-image:linear-gradient(-90deg, #45a7b2, #2b9ba7)}.nav-main .menu .menu-item:nth-child(2){background-color:#3d93a1;background-image:-webkit-gradient(linear, right top, left top, from(#3d93a1), to(#228494));background-image:linear-gradient(-90deg, #3d93a1, #228494)}.nav-main .menu .menu-item:nth-child(3){background-color:#478799;background-image:-webkit-gradient(linear, right top, left top, from(#478799), to(#2d768b));background-image:linear-gradient(-90deg, #478799, #2d768b)}.nav-main .menu .menu-item:nth-child(4){background-color:#2a6179;background-image:-webkit-gradient(linear, right top, left top, from(#2a6179), to(#0c4b67));background-image:linear-gradient(-90deg, #2a6179, #0c4b67)}.nav-main .menu .menu-item:nth-child(5){background-color:#22516d;background-image:-webkit-gradient(linear, right top, left top, from(#22516d), to(#053a59));background-image:linear-gradient(-90deg, #22516d, #053a59)}@media screen and (min-width: 64em){.nav-main .menu .menu-item:nth-child(1) ul li{background-color:#45a7b2}.nav-main .menu .menu-item:nth-child(2) ul li{background-color:#3d93a1}.nav-main .menu .menu-item:nth-child(3) ul li{background-color:#478799}.nav-main .menu .menu-item:nth-child(4) ul li{background-color:#2a6179}.nav-main .menu .menu-item:nth-child(5) ul li{background-color:#22516d}}.nav-main .menu .sub-menu{display:none}@media screen and (min-width: 64em){.nav-main .menu .sub-menu{position:absolute;width:240px;text-align:left}}.nav-main .menu .sub-menu .menu-item{background:#fff;border-bottom:1px solid #053A59;position:relative}.nav-main .menu .sub-menu .menu-item a{color:#053A59;display:block;font-family:"Open Sans",sans-serif;font-weight:600;font-size:14px;padding:12px 0px 12px 20px;text-transform:capitalize}@media screen and (min-width: 64em){.nav-main .menu .sub-menu .menu-item:hover>ul{display:block}}@media screen and (min-width: 64em){.nav-main .menu .sub-menu .menu-item{border-bottom:none}.nav-main .menu .sub-menu .menu-item>a{color:#fff;display:block;font-size:16px;padding:0 0 0 20px}.nav-main .menu .sub-menu .menu-item>a:hover{background:rgba(0,0,0,0.1)}}@media screen and (min-width: 64em){.nav-main .menu .sub-menu .sub-menu{left:240px;position:absolute;top:0}}.nav-main .menu .sub-menu .sub-menu .menu-item{background-color:#8e8e8e;border-bottom:1px solid #fff}.nav-main .menu .sub-menu .sub-menu .menu-item:last-child{border-bottom:1px solid transparent}@media screen and (min-width: 64em){.nav-main .menu .sub-menu .sub-menu .menu-item{background-color:#8e8e8e;width:240px}.nav-main .menu .sub-menu .sub-menu .menu-item:not(:last-child){border-bottom:none}}.nav-main .menu .sub-menu .sub-menu a{color:#fff;font-family:"Open Sans",sans-serif}@media screen and (min-width: 64em){.nav-main .menu .sub-menu .sub-menu a{color:#fff;font-weight:600}}.nav-main .menu .sub-menu .sub-menu a:after{content:" ";display:none}.nav-main .menu .sub-menu .sub-menu--arrow::after{content:" ";background-image:url(../img/icons/icon-arrow-blue.svg);background-repeat:no-repeat;background-size:8px;float:right;height:15px;margin-right:15px;width:15px}.nav-main .menu .sub-menu--show{display:block}@media screen and (min-width: 64em){.nav-main .menu .menu-item:last-child .sub-menu .sub-menu{left:-240px}}.nav-main--show{display:block}.nav-aux{display:none}@media screen and (min-width: 64em){.nav-aux{display:block;margin-bottom:10px}}@media screen and (min-width: 64em){.nav-aux .menu{display:inline-block}}.nav-aux .menu .menu-item{background:#f1f1f1;border-bottom:1px solid #e0e0e0}@media screen and (min-width: 64em){.nav-aux .menu .menu-item{background:none;border-bottom:none;display:inline-block;padding:5px;text-transform:uppercase}}.nav-aux .menu .menu-item a{color:#5B5B5B;display:block;font-family:"Open Sans",sans-serif;font-size:12px;font-weight:700;padding:10px 0px 10px 20px;text-decoration:none;text-transform:uppercase;-webkit-transition:.2s ease;transition:.2s ease}.nav-aux .menu .menu-item a:after{display:none}@media screen and (min-width: 64em){.nav-aux .menu .menu-item a{color:#053A59;font-size:16px;margin-left:30px;padding-left:0px}.nav-aux .menu .menu-item a:hover{color:#2B9BA7}}@media screen and (min-width: 64em){.nav-aux .menu .menu-item:last-child::after{content:none}}.nav-aux .nav-aux__search{display:inline-block}.nav-aux .nav-aux__search-icon{height:20px;width:20px;background-image:url(../img/icons/icon-search.svg);background-size:100% auto;border-style:none;cursor:pointer;margin:0 0 0 30px;position:relative;top:-2px;text-indent:-9999px}.nav-aux .nav-aux__search-icon:focus{outline:none}.nav-aux .nav-aux__search-text{border:none;border-bottom:1px solid #053A59;font-size:14px;padding:0px 0 10px;-webkit-transition:.3s ease;transition:.3s ease;width:0px}.nav-aux .nav-aux__search-text:focus{outline:none}.nav-aux .nav-search-open{width:200px;margin-left:20px}.nav-aux--show{display:block}.nav-search{display:inline-block;margin-left:20px;position:relative}.nav-search:before{content:" ";background:url(../img/icons/icon-search.svg) center/contain no-repeat;bottom:0;left:10px;position:absolute;top:0;width:20px}.nav-search .nav-search-field{background-color:#fff;border-radius:6px;border:1px solid #053A59;font-size:14px;outline:none;padding:8px 10px 8px 35px;right:0;top:0;-webkit-transition:all 0.25s ease-in-out;transition:all 0.25s ease-in-out;width:130px}.nav-search .nav-search-field:focus{outline:0 none;width:150px}.nav-search ::-webkit-input-placeholder{color:#053A59;font-family:"Open Sans",sans-serif}.nav-search :-ms-input-placeholder{color:#053A59;font-family:"Open Sans",sans-serif}.nav-search ::-ms-input-placeholder{color:#053A59;font-family:"Open Sans",sans-serif}.nav-search ::placeholder{color:#053A59;font-family:"Open Sans",sans-serif}@media screen and (min-width: 64em){.nav-footer{padding-bottom:20px}}.nav-footer .menu{float:left;margin-top:25px}@media screen and (min-width: 64em){.nav-footer .menu{float:right;margin-top:25px}}.nav-footer .menu .menu-item{display:inline-block;text-transform:uppercase;margin-right:10px}@media screen and (min-width: 64em){.nav-footer .menu .menu-item{margin-right:0px}}@media screen and (min-width: 64em){.nav-footer .menu .menu-item:not(:first-child){margin-left:30px}}.nav-footer .menu .menu-item a{color:#fff;font-family:"Open Sans",sans-serif;font-size:10px;font-weight:700;line-height:10px;-webkit-transition:.2s ease;transition:.2s ease}@media screen and (min-width: 64em){.nav-footer .menu .menu-item a{font-size:14px;line-height:14px}}.nav-footer .menu .menu-item a:hover{color:#2B9BA7}.nav-legal .nav-legal__list{display:inline-block;padding:15px 0}.nav-legal .nav-legal__list-item{display:inline-block;font-family:Arial, Helvetica, sans-serif;font-size:12px}.nav-legal .nav-legal__list-item:not(:last-child):after{color:#fff;content:'\00a0 | \00a0'}.nav-legal .nav-legal__copyright{color:#fff;font-family:Arial, Helvetica, sans-serif;font-size:12px;line-height:16px;margin-bottom:20px}@media screen and (min-width: 64em){.nav-legal .nav-legal__copyright{margin-bottom:0}}.nav-legal .nav-legal__hr-line{background:rgba(255,255,255,0.1);height:2px;margin:20px 0;min-width:20px;width:100%}@media screen and (min-width: 64em){.nav-legal .nav-legal__hr-line{margin:40px 0}}@media screen and (min-width: 64em){.nav-legal .nav-legal__img{float:right}}.nav-sticky{-webkit-box-shadow:5px 10px 18px rgba(0,0,0,0.15);box-shadow:5px 10px 18px rgba(0,0,0,0.15);position:fixed;top:0;width:100%}@media screen and (min-width: 40em){.nav-sticky{position:relative;top:none;width:none}}.nav-sticky+.content{padding-top:70px}@media screen and (min-width: 40em){.nav-sticky+.content{padding-top:0}}.icon{background-position:center top;background-repeat:no-repeat;background-size:100% auto}.icon--small{display:inline-block;height:20px;width:20px;margin:0 5px}.icon--medium{display:inline-block;height:30px;width:30px;margin-top:3px}.icon--large{display:inline-block;height:20px;width:20px;margin:0 5px}@media screen and (min-width: 64em){.icon--large{height:35px;width:35px}}.icon--search{background-image:url(../img/icons/icon-search.svg);cursor:pointer;position:relative;top:3px}.icon--arrow-blue{background-image:url(../img/icons/icon-arrow-blue.svg)}.icon--arrow-white{background-image:url(../img/icons/icon-arrow-white.svg)}.icon--arrow-grey{background-image:url(../img/icons/icon-arrow-grey.svg)}.icon--google{background-image:url(../img/icons/icon-google.svg);display:inline-block;margin-left:10px}@media screen and (min-width: 64em){.icon--google{margin-left:20px}}.icon--twitter{background-image:url(../img/icons/icon-twitter.svg);display:inline-block;margin-left:10px}@media screen and (min-width: 64em){.icon--twitter{margin-left:20px}}.icon--facebook{background-image:url(../img/icons/icon-facebook.svg);display:inline-block;margin:0 5px 0 0}.icon--btn{height:30px;width:100px}@media screen and (min-width: 40em){.icon--btn{height:36px;width:120px}}.icon--facebook-btn{background-image:url(../img/icons/icon-faceook-btn.svg)}.icon--twitter-btn{background-image:url(../img/icons/icon-twitter-btn.svg)}.icon--pinterest-btn{background-image:url(../img/icons/icon-pinterest-btn.svg)}.icon--email-btn{background-image:url(../img/icons/icon-email-btn.svg)}.icon--share-btn{background-image:url(../img/icons/icon-share-btn.svg)}.logo{background-position:center top;background-repeat:no-repeat;background-size:100% auto}.logo--mcafee{background-image:url(../img/logos/logo-mcafee.png);height:38px;width:80px;display:inline-block}@media screen and (min-width: 64em){.logo--mcafee{height:47px;width:100px}}.logo--bbb{background-image:url(../img/logos/logo-bbb.png);height:38px;width:132px;display:inline-block;margin-left:20px}@media screen and (min-width: 64em){.logo--bbb{height:47px;width:165px}}.button{border-radius:6px;border:1px solid transparent;display:inline-block;height:35px;padding:0 25px;position:relative;text-align:center;text-decoration:none;-webkit-transition:.2s ease;transition:.2s ease}@media screen and (min-width: 40em){.button{height:50px;padding:0 35px}}.button--white-outline{background:none;border:#fff solid 1px;text-transform:uppercase;color:#fff;font-family:"Open Sans",sans-serif;font-size:12px;line-height:35px}.button--white-outline:hover{background:#fff;border:1px solid transparent;color:#2B9BA7}@media screen and (min-width: 40em){.button--white-outline{font-size:16px;line-height:50px}}.button--blue-outline{border:#2B9BA7 solid 2px;color:#2B9BA7;font-family:"Open Sans",sans-serif;font-size:12px;font-weight:600;line-height:35px;padding:0 40px;text-transform:uppercase}.button--blue-outline:hover{background:#2B9BA7;border:2px solid transparent;color:#fff}@media screen and (min-width: 40em){.button--blue-outline{height:40px;line-height:40px}}@media screen and (min-width: 64em){.button--blue-outline{font-size:16px;height:50px;line-height:50px;margin-top:20px;padding:0 50px}}.button--blue{background:#2B9BA7;color:#fff;font-family:"Open Sans",sans-serif;font-size:14px;line-height:35px;margin-top:10px}.button--blue:hover{background:#268893}@media screen and (min-width: 40em){.button--blue{height:40px;line-height:40px}}@media screen and (min-width: 64em){.button--blue{font-size:16px;height:50px;line-height:50px;margin-top:20px;padding:0 50px}}.breadcrumb{padding:10px 0 15px}@media screen and (min-width: 64em){.breadcrumb{padding:20px 0 30px}}.breadcrumb .breadcrumb__item{display:inline-block;margin-right:10px;font-family:"Open Sans",sans-serif}.breadcrumb .breadcrumb__item:after{content:' ›';color:#5B5B5B}.breadcrumb .breadcrumb__item:last-child:after{content:' '}.breadcrumb .breadcrumb__item a{color:#2B9BA7}table{margin:80px 0 40px}table thead tr th{background-color:#053A59;color:#fff;padding:10px;text-align:left}table tbody tr:nth-child(even){background-color:#cdd8de}table tbody tr td{padding:10px}.input-group{position:relative;display:table;border-collapse:separate}.input-group-addon:first-child{border-right:0}.input-group .form-control:first-child,.input-group-addon:first-child,.input-group-btn:first-child>.btn-seo,.input-group-btn:first-child>.btn-seo-group>.btn-seo,.input-group-btn:first-child>.dropdown-toggle,.input-group-btn:last-child>.btn-seo-group:not(:last-child)>.btn-seo,.input-group-btn:last-child>.btn-seo:not(:last-child):not(.dropdown-toggle){border-top-right-radius:0;border-bottom-right-radius:0}.input-group-addon{padding:6px 12px;font-size:14px;font-weight:400;line-height:1;color:#555;text-align:center;background-color:#eee;border:1px solid #ccc;border-radius:4px}.input-group-addon,.input-group-btn{width:1%;white-space:nowrap;vertical-align:middle}.input-group .form-control,.input-group-addon,.input-group-btn{display:table-cell}.input-group .form-control{position:relative;z-index:2;float:left;width:100%;margin-bottom:0}

/*# sourceMappingURL=data:application/json;charset=utf8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbInBhcnRpYWxzL2Jhc2UvX2ZvbnRzLnNjc3MiLCJwYXJ0aWFscy9iYXNlL19yZXNldC5zY3NzIiwiLi4vLi4vLi4vLi4vLi4vbm9kZV9tb2R1bGVzL2ZvdW5kYXRpb24tc2l0ZXMvc2Nzcy94eS1ncmlkL19jbGFzc2VzLnNjc3MiLCIuLi8uLi8uLi8uLi8uLi9ub2RlX21vZHVsZXMvZm91bmRhdGlvbi1zaXRlcy9zY3NzL3h5LWdyaWQvX2d1dHRlcnMuc2NzcyIsIi4uLy4uLy4uLy4uLy4uL25vZGVfbW9kdWxlcy9mb3VuZGF0aW9uLXNpdGVzL3Njc3MveHktZ3JpZC9fZ3JpZC5zY3NzIiwiLi4vLi4vLi4vLi4vLi4vbm9kZV9tb2R1bGVzL2ZvdW5kYXRpb24tc2l0ZXMvc2Nzcy91dGlsL19icmVha3BvaW50LnNjc3MiLCIuLi8uLi8uLi8uLi8uLi9ub2RlX21vZHVsZXMvZm91bmRhdGlvbi1zaXRlcy9zY3NzL3h5LWdyaWQvX2NlbGwuc2NzcyIsIi4uLy4uLy4uLy4uLy4uL25vZGVfbW9kdWxlcy9mb3VuZGF0aW9uLXNpdGVzL3Njc3MveHktZ3JpZC9fbGF5b3V0LnNjc3MiLCIuLi8uLi8uLi8uLi8uLi9ub2RlX21vZHVsZXMvZm91bmRhdGlvbi1zaXRlcy9zY3NzL3h5LWdyaWQvX2NvbGxhcHNlLnNjc3MiLCIuLi8uLi8uLi8uLi8uLi9ub2RlX21vZHVsZXMvZm91bmRhdGlvbi1zaXRlcy9zY3NzL3h5LWdyaWQvX3Bvc2l0aW9uLnNjc3MiLCIuLi8uLi8uLi8uLi8uLi9ub2RlX21vZHVsZXMvZm91bmRhdGlvbi1zaXRlcy9zY3NzL3h5LWdyaWQvX2ZyYW1lLnNjc3MiLCIuLi8uLi8uLi8uLi8uLi9ub2RlX21vZHVsZXMvZm91bmRhdGlvbi1zaXRlcy9zY3NzL2NvbXBvbmVudHMvX3Zpc2liaWxpdHkuc2NzcyIsIi4uLy4uLy4uLy4uLy4uL25vZGVfbW9kdWxlcy9mb3VuZGF0aW9uLXNpdGVzL3Njc3MvdXRpbC9fbWl4aW5zLnNjc3MiLCIuLi8uLi8uLi8uLi8uLi9ub2RlX21vZHVsZXMvZm91bmRhdGlvbi1zaXRlcy9zY3NzL2NvbXBvbmVudHMvX2Zsb2F0LnNjc3MiLCJwYXJ0aWFscy9iYXNlL19ncmlkLXNldHRpbmdzLnNjc3MiLCJwYXJ0aWFscy9iYXNlL19nbG9iYWwuc2NzcyIsInBhcnRpYWxzL2Jhc2UvX3R5cG9ncmFwaHkuc2NzcyIsInBhcnRpYWxzL2Jhc2UvX3ZhcmlhYmxlcy5zY3NzIiwicGFydGlhbHMvYmFzZS9faGVscGVycy5zY3NzIiwicGFydGlhbHMvbGF5b3V0L19tYXN0aGVhZC5zY3NzIiwicGFydGlhbHMvbGF5b3V0L19tYXN0Zm9vdC5zY3NzIiwicGFydGlhbHMvbGF5b3V0L19iYW5uZXJzLnNjc3MiLCJwYXJ0aWFscy9sYXlvdXQvX3Bvc3RzLnNjc3MiLCJwYXJ0aWFscy9sYXlvdXQvX2Jsb2cuc2NzcyIsInBhcnRpYWxzL2xheW91dC9fd29yZHByZXNzLnNjc3MiLCJwYXJ0aWFscy9jb21wb25lbnRzL19uYXZpZ2F0aW9uLnNjc3MiLCJwYXJ0aWFscy9iYXNlL19taXhpbnMuc2NzcyIsInBhcnRpYWxzL2NvbXBvbmVudHMvX2ljb25zLnNjc3MiLCJwYXJ0aWFscy9jb21wb25lbnRzL19sb2dvcy5zY3NzIiwicGFydGlhbHMvY29tcG9uZW50cy9fYnV0dG9ucy5zY3NzIiwicGFydGlhbHMvY29tcG9uZW50cy9fYnJlYWRjcnVtYnMuc2NzcyIsInBhcnRpYWxzL2NvbXBvbmVudHMvX3RhYmxlcy5zY3NzIiwicGFydGlhbHMvY29tcG9uZW50cy9fZXh0cmFzLnNjc3MiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBSUEsa0ZDQUEsMlpBYUUsU0FDQSxVQUNBLFNBQ0EsZUFDQSxhQUNBLHVCQUF3QixDQUN6Qiw4RUFJQyxhQUFjLENBQ2YsS0FFQyxhQUFjLENBQ2YsYUFFQyxXQUFZLENBQ2Isb0RBR0MsV0FDQSxZQUFhLENBQ2QsTUFFQyx5QkFDQSxnQkFBaUIsQ0M5QmpCLGdCQ29CTSxzQkFBQSxxQkNmTixnQkFDQSxhQUFjLENDaUpWLDJDSHZKSixnQkNvQk0sdUJBQUEscUJBQTZELENEVmxFLENBVkQsc0JDb0JNLHNCQUFBLHFCQ2ZOLGVBQ0EsYUFBYyxDQ2lKViwyQ0h2Skosc0JDb0JNLHVCQUFBLHFCQUE2RCxDRGZoRSxDQUxILHFCQzZCSSxnQkFBQSxlQ3hCSixlQUNBLGFBQWMsQ0ZHWCxRRVdILG9CQUFBLEFBQ0Esb0JBREEsQUFDQSxhQUFBLDhCQUFBLEFBSHFCLDZCQUdyQixBQUhxQix1QkFHckIsQUFIcUIsa0JBQUEsQ0ZIcEIsTUl1QkMsbUJBQUEsQUFDQSxrQkFEQSxBQUNBLGNBQUEsZUFDQSxjQXNDQSxVQURvRCxDSjVEdEQsV0kwQkUsbUJBQUEsQUFBYSxpQkFBYixBQUFhLFlBQUEsQ0oxQmYsYUk2QkUsbUJBQUEsQUFBYyxrQkFBZCxBQUFjLGFBQUEsQ0puQmIsY0kyQ0QsVUFBbUIsQ0p4Q3JCLGdCSTRDRSxVQUFtQixDSnJDbEIseVBBZUcsNkJBQUEsQUFBZ0IsZUFBQSxDR21HbEIsMkNIekdGLHVRQU1JLDZCQUFBLEFBQWdCLGVBQUEsQ0FDakIsQ0drR0QsMkNIekdGLHlQQU1JLDZCQUFBLEFBQWdCLGVBQUEsQ0FDakIsQ0FtQkQsaUJJTUYsY0FEb0QsQ0pMbEQsaUJJTUYsZUFEb0QsQ0pMbEQsaUJJTUYsU0FEb0QsQ0pMbEQsaUJJTUYsZUFEb0QsQ0pMbEQsaUJJTUYsZUFEb0QsQ0pMbEQsaUJJTUYsU0FEb0QsQ0pMbEQsaUJJTUYsZUFEb0QsQ0pMbEQsaUJJTUYsZUFEb0QsQ0pMbEQsaUJJTUYsU0FEb0QsQ0pMbEQsa0JJTUYsZUFEb0QsQ0pMbEQsa0JJTUYsZUFEb0QsQ0pMbEQsa0JJTUYsVUFEb0QsQ0QwRWxELDJDSDVGQSxxQkloQkYsbUJBQUEsQUEyQkEsaUJBM0JBLEFBMkJBLGFBQUEsVUFBbUIsQ0pSaEIsdUJJaEJILG1CQUFBLEFBNEJBLGtCQTVCQSxBQTRCQSxjQUFBLFVBQW1CLENKUGhCLGtCSVdILGNBRG9ELENKTGxELGtCSU1GLGVBRG9ELENKTGxELGtCSU1GLFNBRG9ELENKTGxELGtCSU1GLGVBRG9ELENKTGxELGtCSU1GLGVBRG9ELENKTGxELGtCSU1GLFNBRG9ELENKTGxELGtCSU1GLGVBRG9ELENKTGxELGtCSU1GLGVBRG9ELENKTGxELGtCSU1GLFNBRG9ELENKTGxELG1CSU1GLGVBRG9ELENKTGxELG1CSU1GLGVBRG9ELENKTGxELG1CSU1GLFVBRG9ELENKSGpELENHNkVELDJDSDVGQSxvQkloQkYsbUJBQUEsQUEyQkEsaUJBM0JBLEFBMkJBLGFBQUEsVUFBbUIsQ0pSaEIsc0JJaEJILG1CQUFBLEFBNEJBLGtCQTVCQSxBQTRCQSxjQUFBLFVBQW1CLENKUGhCLGlCSVdILGNBRG9ELENKTGxELGlCSU1GLGVBRG9ELENKTGxELGlCSU1GLFNBRG9ELENKTGxELGlCSU1GLGVBRG9ELENKTGxELGlCSU1GLGVBRG9ELENKTGxELGlCSU1GLFNBRG9ELENKTGxELGlCSU1GLGVBRG9ELENKTGxELGlCSU1GLGVBRG9ELENKTGxELGlCSU1GLFNBRG9ELENKTGxELGtCSU1GLGVBRG9ELENKTGxELGtCSU1GLGVBRG9ELENKTGxELGtCSU1GLFVBRG9ELENKSGpELENBS0wsa0NBQ0UsVUFBVyxDQUNaLGtDQUlDLFdBQVksQ0FDYixlQ2xFSyxxQkFBQSxxQkFBNkQsQ0VtSS9ELDJDSHBDSixlQy9GTSxzQkFBQSxzQkFBNkQsQ0Q4SGxFLENBL0JELHFCSWhERSwyQkh0Q0Usb0JBQUEsb0JBQTZELENFMEg3RCwyQ0hwQ0oscUJJaERFLDRCSHRDRSxxQkFBQSxxQkFBNkQsQ0RtRzFELENBckNQLHFCSXJCRSxVQUFtQixDSnVCcEIsdUJJbkJDLFVBQW1CLENKdUJwQix3QkluQkMsOEJBRGdILENKMEJoSCx3Qkl6QkEsK0JBRGdILENKMEJoSCx3Qkl6QkEseUJBRGdILENKMEJoSCx3Qkl6QkEsK0JBRGdILENKMEJoSCx3Qkl6QkEsK0JBRGdILENKMEJoSCx3Qkl6QkEseUJBRGdILENKMEJoSCx3Qkl6QkEsK0JBRGdILENKMEJoSCx3Qkl6QkEsK0JBRGdILENKMEJoSCx3Qkl6QkEseUJBRGdILENKMEJoSCx5Qkl6QkEsK0JBRGdILENKMEJoSCx5Qkl6QkEsK0JBRGdILENKMEJoSCx5Qkl6QkEsMEJBRGdILENEMEU5RywyQ0g1REoscUJJckJFLFVBQW1CLENKdUJwQix1QkluQkMsVUFBbUIsQ0p1QnBCLHdCSW5CQywrQkFEZ0gsQ0owQmhILHdCSXpCQSxnQ0FEZ0gsQ0owQmhILHdCSXpCQSwwQkFEZ0gsQ0owQmhILHdCSXpCQSxnQ0FEZ0gsQ0owQmhILHdCSXpCQSxnQ0FEZ0gsQ0owQmhILHdCSXpCQSwwQkFEZ0gsQ0owQmhILHdCSXpCQSxnQ0FEZ0gsQ0owQmhILHdCSXpCQSxnQ0FEZ0gsQ0owQmhILHdCSXpCQSwwQkFEZ0gsQ0owQmhILHlCSXpCQSxnQ0FEZ0gsQ0owQmhILHlCSXpCQSxnQ0FEZ0gsQ0owQmhILHlCSXpCQSwyQkFEZ0gsQ0pjbEgsNEJJckJFLFVBQW1CLENKdUJwQiw4QkluQkMsVUFBbUIsQ0p1QnBCLHlCSW5CQywrQkFEZ0gsQ0owQmhILHlCSXpCQSxnQ0FEZ0gsQ0owQmhILHlCSXpCQSwwQkFEZ0gsQ0owQmhILHlCSXpCQSxnQ0FEZ0gsQ0owQmhILHlCSXpCQSxnQ0FEZ0gsQ0owQmhILHlCSXpCQSwwQkFEZ0gsQ0owQmhILHlCSXpCQSxnQ0FEZ0gsQ0owQmhILHlCSXpCQSxnQ0FEZ0gsQ0owQmhILHlCSXpCQSwwQkFEZ0gsQ0owQmhILDBCSXpCQSxnQ0FEZ0gsQ0owQmhILDBCSXpCQSxnQ0FEZ0gsQ0owQmhILDBCSXpCQSwyQkFEZ0gsQ0o0Qi9HLENHOENDLDJDSDVESiwyQklyQkUsVUFBbUIsQ0p1QnBCLDZCSW5CQyxVQUFtQixDSnVCcEIsd0JJbkJDLCtCQURnSCxDSjBCaEgsd0JJekJBLGdDQURnSCxDSjBCaEgsd0JJekJBLDBCQURnSCxDSjBCaEgsd0JJekJBLGdDQURnSCxDSjBCaEgsd0JJekJBLGdDQURnSCxDSjBCaEgsd0JJekJBLDBCQURnSCxDSjBCaEgsd0JJekJBLGdDQURnSCxDSjBCaEgsd0JJekJBLGdDQURnSCxDSjBCaEgsd0JJekJBLDBCQURnSCxDSjBCaEgseUJJekJBLGdDQURnSCxDSjBCaEgseUJJekJBLGdDQURnSCxDSjBCaEgseUJJekJBLDJCQURnSCxDSjRCL0csQ0E4Q0gsZ0NDbklNLHNCQUFBLG9CQUE2RCxDRW1JL0QsMkNIQUosZ0NDbklNLHVCQUFBLHFCQUE2RCxDRHdJaEUsQ0FJRCwyQ0M1SUksc0JBQUEsb0JBQTZELENFbUkvRCwyQ0hTRiwyQ0M1SUksdUJBQUEscUJBQTZELENEOEloRSxDQVhILHNCQ25JTSxzQkFBQSxvQkFBNkQsQ0VtSS9ELDJDSEFKLHNCQ25JTSx1QkFBQSxxQkFBNkQsQ0RtSmhFLENLdEpILGtCRDZERSxVQURvRCxDQzVEdEQsa0JENkRFLFNBRG9ELENDNUR0RCxrQkQ2REUsZUFEb0QsQ0M1RHRELGtCRDZERSxTQURvRCxDQzVEdEQsa0JENkRFLFNBRG9ELENDNUR0RCxrQkQ2REUsZUFEb0QsQ0M1RHRELGtCRDZERSxlQURvRCxDQzVEdEQsa0JENkRFLFdBRG9ELENEMEVsRCwyQ0V0SUosbUJENkRFLFVBRG9ELENDNUR0RCxtQkQ2REUsU0FEb0QsQ0M1RHRELG1CRDZERSxlQURvRCxDQzVEdEQsbUJENkRFLFNBRG9ELENDNUR0RCxtQkQ2REUsU0FEb0QsQ0M1RHRELG1CRDZERSxlQURvRCxDQzVEdEQsbUJENkRFLGVBRG9ELENDNUR0RCxtQkQ2REUsV0FEb0QsQ0MxRHJELENGb0lHLDJDRXRJSixrQkQ2REUsVUFEb0QsQ0M1RHRELGtCRDZERSxTQURvRCxDQzVEdEQsa0JENkRFLGVBRG9ELENDNUR0RCxrQkQ2REUsU0FEb0QsQ0M1RHRELGtCRDZERSxTQURvRCxDQzVEdEQsa0JENkRFLGVBRG9ELENDNUR0RCxrQkQ2REUsZUFEb0QsQ0M1RHRELGtCRDZERSxXQURvRCxDQzFEckQsQ0FGRCxnQ0Q2REUsMEJBRGdILENDNURsSCxnQ0Q2REUseUJBRGdILENDNURsSCxnQ0Q2REUsK0JBRGdILENDNURsSCxnQ0Q2REUseUJBRGdILENDNURsSCxnQ0Q2REUseUJBRGdILENDNURsSCxnQ0Q2REUsK0JBRGdILENDNURsSCxnQ0Q2REUsK0JBRGdILENDNURsSCxnQ0Q2REUsMkJBRGdILENEMEU5RywyQ0V0SUosZ0NENkRFLDBCQURnSCxDQzVEbEgsZ0NENkRFLHlCQURnSCxDQzVEbEgsZ0NENkRFLCtCQURnSCxDQzVEbEgsZ0NENkRFLHlCQURnSCxDQzVEbEgsZ0NENkRFLHlCQURnSCxDQzVEbEgsZ0NENkRFLCtCQURnSCxDQzVEbEgsZ0NENkRFLCtCQURnSCxDQzVEbEgsZ0NENkRFLDJCQURnSCxDQzVEbEgsaUNENkRFLDJCQURnSCxDQzVEbEgsaUNENkRFLDBCQURnSCxDQzVEbEgsaUNENkRFLGdDQURnSCxDQzVEbEgsaUNENkRFLDBCQURnSCxDQzVEbEgsaUNENkRFLDBCQURnSCxDQzVEbEgsaUNENkRFLGdDQURnSCxDQzVEbEgsaUNENkRFLGdDQURnSCxDQzVEbEgsaUNENkRFLDRCQURnSCxDQzFEakgsQ0ZvSUcsMkNFdElKLGdDRDZERSwyQkFEZ0gsQ0M1RGxILGdDRDZERSwwQkFEZ0gsQ0M1RGxILGdDRDZERSxnQ0FEZ0gsQ0M1RGxILGdDRDZERSwwQkFEZ0gsQ0M1RGxILGdDRDZERSwwQkFEZ0gsQ0M1RGxILGdDRDZERSxnQ0FEZ0gsQ0M1RGxILGdDRDZERSxnQ0FEZ0gsQ0M1RGxILGdDRDZERSw0QkFEZ0gsQ0MxRGpILENMZ01HLHVCTXZNRSxlQUFBLGFBQTBCLENBRzVCLDZCQUVJLGVBQUEsYUFBMEIsQ0FFN0IsZ0NGMkRILGNBRG9ELENFdEM1QyxnQ0Z1Q1IsZUFEb0QsQ0V0QzVDLGdDRnVDUixTQURvRCxDRXRDNUMsZ0NGdUNSLGVBRG9ELENFdEM1QyxnQ0Z1Q1IsZUFEb0QsQ0V0QzVDLGdDRnVDUixTQURvRCxDRXRDNUMsZ0NGdUNSLGVBRG9ELENFdEM1QyxnQ0Z1Q1IsZUFEb0QsQ0V0QzVDLGdDRnVDUixTQURvRCxDRXRDNUMsaUNGdUNSLGVBRG9ELENFdEM1QyxpQ0Z1Q1IsZUFEb0QsQ0V0QzVDLGlDRnVDUixVQURvRCxDRDBFbEQsMkNHaEhNLGlDRnVDUixjQURvRCxDRXRDNUMsaUNGdUNSLGVBRG9ELENFdEM1QyxpQ0Z1Q1IsU0FEb0QsQ0V0QzVDLGlDRnVDUixlQURvRCxDRXRDNUMsaUNGdUNSLGVBRG9ELENFdEM1QyxpQ0Z1Q1IsU0FEb0QsQ0V0QzVDLGlDRnVDUixlQURvRCxDRXRDNUMsaUNGdUNSLGVBRG9ELENFdEM1QyxpQ0Z1Q1IsU0FEb0QsQ0V0QzVDLGtDRnVDUixlQURvRCxDRXRDNUMsa0NGdUNSLGVBRG9ELENFdEM1QyxrQ0Z1Q1IsVUFEb0QsQ0VwQzNDLENIOEdQLDJDR2hITSxnQ0Z1Q1IsY0FEb0QsQ0V0QzVDLGdDRnVDUixlQURvRCxDRXRDNUMsZ0NGdUNSLFNBRG9ELENFdEM1QyxnQ0Z1Q1IsZUFEb0QsQ0V0QzVDLGdDRnVDUixlQURvRCxDRXRDNUMsZ0NGdUNSLFNBRG9ELENFdEM1QyxnQ0Z1Q1IsZUFEb0QsQ0V0QzVDLGdDRnVDUixlQURvRCxDRXRDNUMsZ0NGdUNSLFNBRG9ELENFdEM1QyxpQ0Z1Q1IsZUFEb0QsQ0V0QzVDLGlDRnVDUixlQURvRCxDRXRDNUMsaUNGdUNSLFVBRG9ELENFcEMzQyxDTmdMUCx3Qk10S0UsZUFBQSxhQUEwQixDQUc1Qiw4QkFFSSxnQkFBQSxjQUE0QixDSCtGaEMsMkNINERBLHdCTXZNRSxlQUFBLGFBQTBCLENBRzVCLDhCQUVJLGVBQUEsYUFBMEIsQ0FFN0IsQ0hvSUQsMkNHekhNLGlDRmdEUixjQURvRCxDRS9DNUMsaUNGZ0RSLGVBRG9ELENFL0M1QyxpQ0ZnRFIsU0FEb0QsQ0UvQzVDLGlDRmdEUixlQURvRCxDRS9DNUMsaUNGZ0RSLGVBRG9ELENFL0M1QyxpQ0ZnRFIsU0FEb0QsQ0UvQzVDLGlDRmdEUixlQURvRCxDRS9DNUMsaUNGZ0RSLGVBRG9ELENFL0M1QyxpQ0ZnRFIsU0FEb0QsQ0UvQzVDLGtDRmdEUixlQURvRCxDRS9DNUMsa0NGZ0RSLGVBRG9ELENFL0M1QyxrQ0ZnRFIsVUFEb0QsQ0U3QzNDLENIdUhQLDJDR2hITSxrQ0Z1Q1IsY0FEb0QsQ0V0QzVDLGtDRnVDUixlQURvRCxDRXRDNUMsa0NGdUNSLFNBRG9ELENFdEM1QyxrQ0Z1Q1IsZUFEb0QsQ0V0QzVDLGtDRnVDUixlQURvRCxDRXRDNUMsa0NGdUNSLFNBRG9ELENFdEM1QyxrQ0Z1Q1IsZUFEb0QsQ0V0QzVDLGtDRnVDUixlQURvRCxDRXRDNUMsa0NGdUNSLFNBRG9ELENFdEM1QyxtQ0Z1Q1IsZUFEb0QsQ0V0QzVDLG1DRnVDUixlQURvRCxDRXRDNUMsbUNGdUNSLFVBRG9ELENFcEMzQyxDSDhHUCwyQ0doSE0saUNGdUNSLGNBRG9ELENFdEM1QyxpQ0Z1Q1IsZUFEb0QsQ0V0QzVDLGlDRnVDUixTQURvRCxDRXRDNUMsaUNGdUNSLGVBRG9ELENFdEM1QyxpQ0Z1Q1IsZUFEb0QsQ0V0QzVDLGlDRnVDUixTQURvRCxDRXRDNUMsaUNGdUNSLGVBRG9ELENFdEM1QyxpQ0Z1Q1IsZUFEb0QsQ0V0QzVDLGlDRnVDUixTQURvRCxDRXRDNUMsa0NGdUNSLGVBRG9ELENFdEM1QyxrQ0Z1Q1IsZUFEb0QsQ0V0QzVDLGtDRnVDUixVQURvRCxDRXBDM0MsQ0g4R1AsMkNIa0VBLHlCTXRLRSxlQUFBLGFBQTBCLENBRzVCLCtCQUVJLGdCQUFBLGNBQTRCLENBRS9CLENINkZELDJDSDREQSx1Qk12TUUsZUFBQSxhQUEwQixDQUc1Qiw2QkFFSSxlQUFBLGFBQTBCLENBRTdCLENIb0lELDJDR3pITSxnQ0ZnRFIsY0FEb0QsQ0UvQzVDLGdDRmdEUixlQURvRCxDRS9DNUMsZ0NGZ0RSLFNBRG9ELENFL0M1QyxnQ0ZnRFIsZUFEb0QsQ0UvQzVDLGdDRmdEUixlQURvRCxDRS9DNUMsZ0NGZ0RSLFNBRG9ELENFL0M1QyxnQ0ZnRFIsZUFEb0QsQ0UvQzVDLGdDRmdEUixlQURvRCxDRS9DNUMsZ0NGZ0RSLFNBRG9ELENFL0M1QyxpQ0ZnRFIsZUFEb0QsQ0UvQzVDLGlDRmdEUixlQURvRCxDRS9DNUMsaUNGZ0RSLFVBRG9ELENFN0MzQyxDSHVIUCwyQ0d6SE0saUNGZ0RSLGNBRG9ELENFL0M1QyxpQ0ZnRFIsZUFEb0QsQ0UvQzVDLGlDRmdEUixTQURvRCxDRS9DNUMsaUNGZ0RSLGVBRG9ELENFL0M1QyxpQ0ZnRFIsZUFEb0QsQ0UvQzVDLGlDRmdEUixTQURvRCxDRS9DNUMsaUNGZ0RSLGVBRG9ELENFL0M1QyxpQ0ZnRFIsZUFEb0QsQ0UvQzVDLGlDRmdEUixTQURvRCxDRS9DNUMsa0NGZ0RSLGVBRG9ELENFL0M1QyxrQ0ZnRFIsZUFEb0QsQ0UvQzVDLGtDRmdEUixVQURvRCxDRTdDM0MsQ0h1SFAsMkNHaEhNLGdDRnVDUixjQURvRCxDRXRDNUMsZ0NGdUNSLGVBRG9ELENFdEM1QyxnQ0Z1Q1IsU0FEb0QsQ0V0QzVDLGdDRnVDUixlQURvRCxDRXRDNUMsZ0NGdUNSLGVBRG9ELENFdEM1QyxnQ0Z1Q1IsU0FEb0QsQ0V0QzVDLGdDRnVDUixlQURvRCxDRXRDNUMsZ0NGdUNSLGVBRG9ELENFdEM1QyxnQ0Z1Q1IsU0FEb0QsQ0V0QzVDLGlDRnVDUixlQURvRCxDRXRDNUMsaUNGdUNSLGVBRG9ELENFdEM1QyxpQ0Z1Q1IsVUFEb0QsQ0VwQzNDLENIOEdQLDJDSGtFQSx3Qk10S0UsZUFBQSxhQUEwQixDQUc1Qiw4QkFFSSxnQkFBQSxjQUE0QixDQUUvQixDTjZLRCxnQk8xTkYsY0FBNkIsQ1A0TjFCLCtCTzVOSCw4QkFBNkIsQ1AwTjNCLGdCTzFORixvQkFBNkIsQ1A0TjFCLCtCTzVOSCxvQ0FBNkIsQ1AwTjNCLGdCTzFORixxQkFBNkIsQ1A0TjFCLCtCTzVOSCxxQ0FBNkIsQ1AwTjNCLGdCTzFORixlQUE2QixDUDROMUIsK0JPNU5ILCtCQUE2QixDUDBOM0IsZ0JPMU5GLHFCQUE2QixDUDROMUIsK0JPNU5ILHFDQUE2QixDUDBOM0IsZ0JPMU5GLHFCQUE2QixDUDROMUIsK0JPNU5ILHFDQUE2QixDUDBOM0IsZ0JPMU5GLGVBQTZCLENQNE4xQiwrQk81TkgsK0JBQTZCLENQME4zQixnQk8xTkYscUJBQTZCLENQNE4xQiwrQk81TkgscUNBQTZCLENQME4zQixnQk8xTkYscUJBQTZCLENQNE4xQiwrQk81TkgscUNBQTZCLENQME4zQixnQk8xTkYsZUFBNkIsQ1A0TjFCLCtCTzVOSCwrQkFBNkIsQ1AwTjNCLGlCTzFORixxQkFBNkIsQ1A0TjFCLGdDTzVOSCxxQ0FBNkIsQ1AwTjNCLGlCTzFORixxQkFBNkIsQ1A0TjFCLGdDTzVOSCxxQ0FBNkIsQ0owSTNCLDJDSGdGQSxpQk8xTkYsY0FBNkIsQ1A0TjFCLGdDTzVOSCwrQkFBNkIsQ1AwTjNCLGlCTzFORixvQkFBNkIsQ1A0TjFCLGdDTzVOSCxxQ0FBNkIsQ1AwTjNCLGlCTzFORixxQkFBNkIsQ1A0TjFCLGdDTzVOSCxzQ0FBNkIsQ1AwTjNCLGlCTzFORixlQUE2QixDUDROMUIsZ0NPNU5ILGdDQUE2QixDUDBOM0IsaUJPMU5GLHFCQUE2QixDUDROMUIsZ0NPNU5ILHNDQUE2QixDUDBOM0IsaUJPMU5GLHFCQUE2QixDUDROMUIsZ0NPNU5ILHNDQUE2QixDUDBOM0IsaUJPMU5GLGVBQTZCLENQNE4xQixnQ081TkgsZ0NBQTZCLENQME4zQixpQk8xTkYscUJBQTZCLENQNE4xQixnQ081Tkgsc0NBQTZCLENQME4zQixpQk8xTkYscUJBQTZCLENQNE4xQixnQ081Tkgsc0NBQTZCLENQME4zQixpQk8xTkYsZUFBNkIsQ1A0TjFCLGdDTzVOSCxnQ0FBNkIsQ1AwTjNCLGtCTzFORixxQkFBNkIsQ1A0TjFCLGlDTzVOSCxzQ0FBNkIsQ1AwTjNCLGtCTzFORixxQkFBNkIsQ1A0TjFCLGlDTzVOSCxzQ0FBNkIsQ1BnTzFCLENHdEZELDJDSGdGQSxnQk8xTkYsY0FBNkIsQ1A0TjFCLCtCTzVOSCwrQkFBNkIsQ1AwTjNCLGdCTzFORixvQkFBNkIsQ1A0TjFCLCtCTzVOSCxxQ0FBNkIsQ1AwTjNCLGdCTzFORixxQkFBNkIsQ1A0TjFCLCtCTzVOSCxzQ0FBNkIsQ1AwTjNCLGdCTzFORixlQUE2QixDUDROMUIsK0JPNU5ILGdDQUE2QixDUDBOM0IsZ0JPMU5GLHFCQUE2QixDUDROMUIsK0JPNU5ILHNDQUE2QixDUDBOM0IsZ0JPMU5GLHFCQUE2QixDUDROMUIsK0JPNU5ILHNDQUE2QixDUDBOM0IsZ0JPMU5GLGVBQTZCLENQNE4xQiwrQk81TkgsZ0NBQTZCLENQME4zQixnQk8xTkYscUJBQTZCLENQNE4xQiwrQk81Tkgsc0NBQTZCLENQME4zQixnQk8xTkYscUJBQTZCLENQNE4xQiwrQk81Tkgsc0NBQTZCLENQME4zQixnQk8xTkYsZUFBNkIsQ1A0TjFCLCtCTzVOSCxnQ0FBNkIsQ1AwTjNCLGlCTzFORixxQkFBNkIsQ1A0TjFCLGdDTzVOSCxzQ0FBNkIsQ1AwTjNCLGlCTzFORixxQkFBNkIsQ1A0TjFCLGdDTzVOSCxzQ0FBNkIsQ1BnTzFCLENBZ0JMLFFFek9BLG9CQUFBLEFBQ0Esb0JBREEsQUFDQSxhQUFBLDRCQUFBLEFBSDZCLDZCQUc3QixBQUg2Qiw0QkFHN0IsQUFINkIsdUJBQUEsQ0YyTzdCLGNJbk1BLFdBQ0EsY0FBMkIsQ0prTTNCLGNJdkxFLFdBQW1CLENKdUxyQixnQkluTEUsV0FBbUIsQ0ptTHJCLHlQQTJCTSw2QkFBQSxBQUFnQixlQUFBLENHaklsQiwyQ0hzR0osdVFBMkJNLDZCQUFBLEFBQWdCLGVBQUEsQ0FDakIsQ0dsSUQsMkNIc0dKLHlQQTJCTSw2QkFBQSxBQUFnQixlQUFBLENBQ2pCLENBNUJMLGlCSS9LRSxlQURvRCxDSmdMdEQsaUJJL0tFLGdCQURvRCxDSmdMdEQsaUJJL0tFLFVBRG9ELENKZ0x0RCxpQkkvS0UsZ0JBRG9ELENKZ0x0RCxpQkkvS0UsZ0JBRG9ELENKZ0x0RCxpQkkvS0UsVUFEb0QsQ0pnTHRELGlCSS9LRSxnQkFEb0QsQ0pnTHRELGlCSS9LRSxnQkFEb0QsQ0pnTHRELGlCSS9LRSxVQURvRCxDSmdMdEQsa0JJL0tFLGdCQURvRCxDSmdMdEQsa0JJL0tFLGdCQURvRCxDSmdMdEQsa0JJL0tFLFdBRG9ELENEMEVsRCwyQ0hzR0oscUJJbE5FLG1CQUFBLEFBMkJBLGlCQTNCQSxBQTJCQSxhQUFBLFdBQW1CLENKdUxyQix1QkluTEUsV0FBbUIsQ0ptTHJCLGtCSS9LRSxlQURvRCxDSmdMdEQsa0JJL0tFLGdCQURvRCxDSmdMdEQsa0JJL0tFLFVBRG9ELENKZ0x0RCxrQkkvS0UsZ0JBRG9ELENKZ0x0RCxrQkkvS0UsZ0JBRG9ELENKZ0x0RCxrQkkvS0UsVUFEb0QsQ0pnTHRELGtCSS9LRSxnQkFEb0QsQ0pnTHRELGtCSS9LRSxnQkFEb0QsQ0pnTHRELGtCSS9LRSxVQURvRCxDSmdMdEQsbUJJL0tFLGdCQURvRCxDSmdMdEQsbUJJL0tFLGdCQURvRCxDSmdMdEQsbUJJL0tFLFdBRG9ELENKZ08vQyxDR3RKSCwyQ0hzR0osb0JJbE5FLG1CQUFBLEFBMkJBLGlCQTNCQSxBQTJCQSxhQUFBLFdBQW1CLENKdUxyQixzQkluTEUsV0FBbUIsQ0ptTHJCLGlCSS9LRSxlQURvRCxDSmdMdEQsaUJJL0tFLGdCQURvRCxDSmdMdEQsaUJJL0tFLFVBRG9ELENKZ0x0RCxpQkkvS0UsZ0JBRG9ELENKZ0x0RCxpQkkvS0UsZ0JBRG9ELENKZ0x0RCxpQkkvS0UsVUFEb0QsQ0pnTHRELGlCSS9LRSxnQkFEb0QsQ0pnTHRELGlCSS9LRSxnQkFEb0QsQ0pnTHRELGlCSS9LRSxVQURvRCxDSmdMdEQsa0JJL0tFLGdCQURvRCxDSmdMdEQsa0JJL0tFLGdCQURvRCxDSmdMdEQsa0JJL0tFLFdBRG9ELENKZ08vQyxDQU9MLGdDQ2hTSSxvQkFBQSxzQkFBNkQsQ0VtSS9ELDJDSDZKRixnQ0NoU0kscUJBQUEsdUJBQTZELENEb1M5RCxDQUpILHNCQ2hTSSxvQkFBQSxzQkFBNkQsQ0VtSS9ELDJDSDZKRixzQkNoU0kscUJBQUEsdUJBQTZELENEeVM5RCxDQTFNTCxlQy9GTSxvQkFBQSxzQkFBNkQsQ0VtSS9ELDJDSHBDSixlQy9GTSxxQkFBQSx1QkFBNkQsQ0Q4SGxFLENBL0JELHFCSWhERSw0Qkh0Q0UsbUJBQUEscUJBQTZELENFMEg3RCwyQ0hwQ0oscUJJaERFLDZCSHRDRSxvQkFBQSxzQkFBNkQsQ0RtRzFELENBckNQLHFCSXJCRSxXQUFtQixDSnVCcEIsdUJJbkJDLFdBQW1CLENKdUJwQix3QkluQkMsK0JBRGdILENKMEJoSCx3Qkl6QkEsZ0NBRGdILENKMEJoSCx3Qkl6QkEsMEJBRGdILENKMEJoSCx3Qkl6QkEsZ0NBRGdILENKMEJoSCx3Qkl6QkEsZ0NBRGdILENKMEJoSCx3Qkl6QkEsMEJBRGdILENKMEJoSCx3Qkl6QkEsZ0NBRGdILENKMEJoSCx3Qkl6QkEsZ0NBRGdILENKMEJoSCx3Qkl6QkEsMEJBRGdILENKMEJoSCx5Qkl6QkEsZ0NBRGdILENKMEJoSCx5Qkl6QkEsZ0NBRGdILENKMEJoSCx5Qkl6QkEsMkJBRGdILENEMEU5RywyQ0g1REoscUJJckJFLFdBQW1CLENKdUJwQix1QkluQkMsV0FBbUIsQ0p1QnBCLHdCSW5CQyxnQ0FEZ0gsQ0owQmhILHdCSXpCQSxpQ0FEZ0gsQ0owQmhILHdCSXpCQSwyQkFEZ0gsQ0owQmhILHdCSXpCQSxpQ0FEZ0gsQ0owQmhILHdCSXpCQSxpQ0FEZ0gsQ0owQmhILHdCSXpCQSwyQkFEZ0gsQ0owQmhILHdCSXpCQSxpQ0FEZ0gsQ0owQmhILHdCSXpCQSxpQ0FEZ0gsQ0owQmhILHdCSXpCQSwyQkFEZ0gsQ0owQmhILHlCSXpCQSxpQ0FEZ0gsQ0owQmhILHlCSXpCQSxpQ0FEZ0gsQ0owQmhILHlCSXpCQSw0QkFEZ0gsQ0pjbEgsNEJJckJFLFdBQW1CLENKdUJwQiw4QkluQkMsV0FBbUIsQ0p1QnBCLHlCSW5CQyxnQ0FEZ0gsQ0owQmhILHlCSXpCQSxpQ0FEZ0gsQ0owQmhILHlCSXpCQSwyQkFEZ0gsQ0owQmhILHlCSXpCQSxpQ0FEZ0gsQ0owQmhILHlCSXpCQSxpQ0FEZ0gsQ0owQmhILHlCSXpCQSwyQkFEZ0gsQ0owQmhILHlCSXpCQSxpQ0FEZ0gsQ0owQmhILHlCSXpCQSxpQ0FEZ0gsQ0owQmhILHlCSXpCQSwyQkFEZ0gsQ0owQmhILDBCSXpCQSxpQ0FEZ0gsQ0owQmhILDBCSXpCQSxpQ0FEZ0gsQ0owQmhILDBCSXpCQSw0QkFEZ0gsQ0o0Qi9HLENHOENDLDJDSDVESiwyQklyQkUsV0FBbUIsQ0p1QnBCLDZCSW5CQyxXQUFtQixDSnVCcEIsd0JJbkJDLGdDQURnSCxDSjBCaEgsd0JJekJBLGlDQURnSCxDSjBCaEgsd0JJekJBLDJCQURnSCxDSjBCaEgsd0JJekJBLGlDQURnSCxDSjBCaEgsd0JJekJBLGlDQURnSCxDSjBCaEgsd0JJekJBLDJCQURnSCxDSjBCaEgsd0JJ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Qkl6QkEsZ0NBRGdILENKMEJoSCx5Qkl6QkEsMkJBRGdILENEMEU5RywyQ0g1REoscUJJckJFLFdBQW1CLENKdUJwQix1QkluQkMsV0FBbUIsQ0p1QnBCLHdCSW5CQyxnQ0FEZ0gsQ0owQmhILHdCSXpCQSxpQ0FEZ0gsQ0owQmhILHdCSXpCQSwyQkFEZ0gsQ0owQmhILHdCSXpCQSxpQ0FEZ0gsQ0owQmhILHdCSXpCQSxpQ0FEZ0gsQ0owQmhILHdCSXpCQSwyQkFEZ0gsQ0owQmhILHdCSXpCQSxpQ0FEZ0gsQ0owQmhILHdCSXpCQSxpQ0FEZ0gsQ0owQmhILHdCSXpCQSwyQkFEZ0gsQ0owQmhILHlCSXpCQSxpQ0FEZ0gsQ0owQmhILHlCSXpCQSxpQ0FEZ0gsQ0owQmhILHlCSXpCQSw0QkFEZ0gsQ0pjbEgsNEJJckJFLFdBQW1CLENKdUJwQiw4QkluQkMsV0FBbUIsQ0p1QnBCLHlCSW5CQyxnQ0FEZ0gsQ0owQmhILHlCSXpCQSxpQ0FEZ0gsQ0owQmhILHlCSXpCQSwyQkFEZ0gsQ0owQmhILHlCSXpCQSxpQ0FEZ0gsQ0owQmhILHlCSXpCQSxpQ0FEZ0gsQ0owQmhILHlCSXpCQSwyQkFEZ0gsQ0owQmhILHlCSXpCQSxpQ0FEZ0gsQ0owQmhILHlCSXpCQSxpQ0FEZ0gsQ0owQmhILHlCSXpCQSwyQkFEZ0gsQ0owQmhILDBCSXpCQSxpQ0FEZ0gsQ0owQmhILDBCSXpCQSxpQ0FEZ0gsQ0owQmhILDBCSXpCQSw0QkFEZ0gsQ0o0Qi9HLENHOENDLDJDSDVESiwyQklyQkUsV0FBbUIsQ0p1QnBCLDZCSW5CQyxXQUFtQixDSnVCcEIsd0JJbkJDLGdDQURnSCxDSjBCaEgsd0JJekJBLGlDQURnSCxDSjBCaEgsd0JJekJBLDJCQURnSCxDSjBCaEgsd0JJekJBLGlDQURnSCxDSjBCaEgsd0JJekJBLGlDQURnSCxDSjBCaEgsd0JJekJBLDJCQURnSCxDSjBCaEgsd0JJekJBLGlDQURnSCxDSjBCaEgsd0JJekJBLGlDQURnSCxDSjBCaEgsd0JJekJBLDJCQURnSCxDSjBCaEgseUJJekJBLGlDQURnSCxDSjBCaEgseUJJekJB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LENBQUMiLCJmaWxlIjoibWFpbi5jc3MiLCJzb3VyY2VzQ29udGVudCI6WyIvLy8vLy8vLy8vLy9cbi8vIEZPTlRTIC8vXG4vLy8vLy8vLy8vLy9cblxuQGltcG9ydCB1cmwoJ2h0dHBzOi8vZm9udHMuZ29vZ2xlYXBpcy5jb20vY3NzP2ZhbWlseT1PcGVuK1NhbnM6NDAwLDYwMCw2MDBpLDcwMCcpOyIsIi8vLy9cbi8vIFJlc2V0IHYyLjAgLSBodHRwOi8vbWV5ZXJ3ZWIuY29tL2VyaWMvdG9vbHMvY3NzL3Jlc2V0L1xuLy8vL1xuXG5odG1sLCBib2R5LCBkaXYsIHNwYW4sIGFwcGxldCwgb2JqZWN0LCBpZnJhbWUsXG5oMSwgaDIsIGgzLCBoNCwgaDUsIGg2LCBwLCBibG9ja3F1b3RlLCBwcmUsXG5hLCBhYmJyLCBhY3JvbnltLCBhZGRyZXNzLCBiaWcsIGNpdGUsIGNvZGUsXG5kZWwsIGRmbiwgZW0sIGltZywgaW5zLCBrYmQsIHEsIHMsIHNhbXAsXG5zbWFsbCwgc3RyaWtlLCBzdHJvbmcsIHN1Yiwgc3VwLCB0dCwgdmFyLFxuYiwgdSwgaSwgY2VudGVyLFxuZGwsIGR0LCBkZCwgb2wsIHVsLCBsaSxcbmZpZWxkc2V0LCBmb3JtLCBsYWJlbCwgbGVnZW5kLFxudGFibGUsIGNhcHRpb24sIHRib2R5LCB0Zm9vdCwgdGhlYWQsIHRyLCB0aCwgdGQsXG5hcnRpY2xlLCBhc2lkZSwgY2FudmFzLCBkZXRhaWxzLCBlbWJlZCxcbmZpZ3VyZSwgZmlnY2FwdGlvbiwgZm9vdGVyLCBoZWFkZXIsIGhncm91cCxcbm1lbnUsIG5hdiwgb3V0cHV0LCBydWJ5LCBzZWN0aW9uLCBzdW1tYXJ5LFxudGltZSwgbWFyaywgYXVkaW8sIHZpZGVvIHtcbiAgbWFyZ2luOiAwO1xuICBwYWRkaW5nOiAwO1xuICBib3JkZXI6IDA7XG4gIGZvbnQtc2l6ZTogMTAwJTtcbiAgZm9udDogaW5oZXJpdDtcbiAgdmVydGljYWwtYWxpZ246IGJhc2VsaW5lO1xufVxuLyogSFRNTDUgZGlzcGxheS1yb2xlIHJlc2V0IGZvciBvbGRlciBicm93c2VycyAqL1xuYXJ0aWNsZSwgYXNpZGUsIGRldGFpbHMsIGZpZ2NhcHRpb24sIGZpZ3VyZSxcbmZvb3RlciwgaGVhZGVyLCBoZ3JvdXAsIG1lbnUsIG5hdiwgc2VjdGlvbiB7XG4gIGRpc3BsYXk6IGJsb2NrO1xufVxuYm9keSB7XG4gIGxpbmUtaGVpZ2h0OiAxO1xufVxuYmxvY2txdW90ZSwgcSB7XG4gIHF1b3Rlczogbm9uZTtcbn1cbmJsb2NrcXVvdGU6YmVmb3JlLCBibG9ja3F1b3RlOmFmdGVyLFxucTpiZWZvcmUsIHE6YWZ0ZXIge1xuICBjb250ZW50OiAnJztcbiAgY29udGVudDogbm9uZTtcbn1cbnRhYmxlIHtcbiAgYm9yZGVyLWNvbGxhcHNlOiBjb2xsYXBzZTtcbiAgYm9yZGVyLXNwYWNpbmc6IDA7XG59XG4iLCIvLyBGb3VuZGF0aW9uIGZvciBTaXRlcyBieSBaVVJCXG4vLyBmb3VuZGF0aW9uLnp1cmIuY29tXG4vLyBMaWNlbnNlZCB1bmRlciBNSVQgT3BlbiBTb3VyY2VcblxuLy8vL1xuLy8vIEBncm91cCB4eS1ncmlkXG4vLy8vXG5cbi8vIE1hcmdpbiBHcmlkIGNsYXNzZXNcbkBtaXhpbiB4eS1iYXNlLWdyaWQtY2xhc3NlcyB7XG5cbiAgLy8gR3JpZCBDb250YWluZXJcbiAgLmdyaWQtY29udGFpbmVyIHtcbiAgICBAaW5jbHVkZSB4eS1ncmlkLWNvbnRhaW5lcjtcblxuICAgICYuZmx1aWQge1xuICAgICAgQGluY2x1ZGUgeHktZ3JpZC1jb250YWluZXIoMTAwJSk7XG4gICAgfVxuXG4gICAgJi5mdWxsIHtcbiAgICAgIEBpbmNsdWRlIHh5LWdyaWQtY29udGFpbmVyKDEwMCUsIDApO1xuICAgIH1cbiAgfVxuXG4gIC8vIEJhc2UgZ3JpZCBzdHlsZXNcbiAgLmdyaWQteCB7XG4gICAgQGluY2x1ZGUgeHktZ3JpZDtcbiAgfVxuXG4gIC5jZWxsIHtcbiAgICBAaW5jbHVkZSB4eS1jZWxsLWJhc2UoKTtcbiAgICBAaW5jbHVkZSB4eS1jZWxsLXN0YXRpYygkZ3JpZC1jb2x1bW5zLCBmYWxzZSwgJGd1dHRlci10eXBlOiBwYWRkaW5nKTtcblxuICAgICYuYXV0byB7XG4gICAgICBAaW5jbHVkZSB4eS1jZWxsLWJhc2UoYXV0byk7XG4gICAgfVxuXG4gICAgJi5zaHJpbmsge1xuICAgICAgQGluY2x1ZGUgeHktY2VsbC1iYXNlKHNocmluayk7XG4gICAgfVxuXG4gIH1cbiAgLmdyaWQteCB7XG4gICAgPiAuYXV0byB7XG4gICAgICBAaW5jbHVkZSB4eS1jZWxsLXN0YXRpYyhhdXRvLCBmYWxzZSk7XG4gICAgfVxuXG4gICAgPiAuc2hyaW5rIHtcbiAgICAgIEBpbmNsdWRlIHh5LWNlbGwtc3RhdGljKHNocmluaywgZmFsc2UpO1xuICAgIH1cbiAgfVxuXG4gIC8vIEF1dG8gd2lkdGhcbiAgQGluY2x1ZGUgLXpmLWVhY2gtYnJlYWtwb2ludCgpIHtcbiAgICAvLyBUaGlzIGlzIGEgYml0IG9mIGEgaGFjay93b3JrYXJvdW5kLCBzZWUgdGhlc2UgaXNzdWVzICYgUFJzIGZvciB0aGUgYmFja3N0b3J5OlxuICAgIC8vIGh0dHBzOi8vZ2l0aHViLmNvbS96dXJiL2ZvdW5kYXRpb24tc2l0ZXMvaXNzdWVzLzEwMjQ0XG4gICAgLy8gaHR0cHM6Ly9naXRodWIuY29tL3p1cmIvZm91bmRhdGlvbi1zaXRlcy9wdWxsLzEwMjIyIGFuZFxuICAgIC8vIGh0dHBzOi8vZ2l0aHViLmNvbS96dXJiL2ZvdW5kYXRpb24tc2l0ZXMvcHVsbC8xMDE2NFxuICAgIC5ncmlkLXgge1xuICAgICAgJHN0cjogXCI+IC4jeyQtemYtc2l6ZX0tc2hyaW5rLCA+IC4jeyQtemYtc2l6ZX0tZnVsbFwiO1xuICAgICAgQGZvciAkaSBmcm9tIDEgdGhyb3VnaCAkZ3JpZC1jb2x1bW5zIHtcbiAgICAgICAgJHN0cjogJHN0ciArIFwiLCA+IC4jeyQtemYtc2l6ZX0tI3skaX1cIlxuICAgICAgfVxuICAgICAgI3skc3RyfSB7XG4gICAgICAgIGZsZXgtYmFzaXM6IGF1dG87XG4gICAgICB9XG4gICAgfVxuICB9XG5cbiAgQGluY2x1ZGUgLXpmLWVhY2gtYnJlYWtwb2ludCgpIHtcbiAgICBAaWYgbm90KCQtemYtc2l6ZSA9PSBzbWFsbCkge1xuICAgICAgLmdyaWQteCA+IC4jeyQtemYtc2l6ZX0tYXV0byB7XG4gICAgICAgIEBpbmNsdWRlIHh5LWNlbGwtYmFzZShhdXRvKTtcbiAgICAgICAgQGluY2x1ZGUgeHktY2VsbC1zdGF0aWMoYXV0bywgZmFsc2UpO1xuICAgICAgfVxuXG4gICAgICAuZ3JpZC14ID4gLiN7JC16Zi1zaXplfS1zaHJpbmsge1xuICAgICAgICBAaW5jbHVkZSB4eS1jZWxsLWJhc2Uoc2hyaW5rKTtcbiAgICAgICAgQGluY2x1ZGUgeHktY2VsbC1zdGF0aWMoc2hyaW5rLCBmYWxzZSk7XG4gICAgICB9XG4gICAgfVxuXG4gICAgQGZvciAkaSBmcm9tIDEgdGhyb3VnaCAkZ3JpZC1jb2x1bW5zIHtcbiAgICAgIC8vIFNpemluZyAocGVyY2VudGFnZSlcbiAgICAgIC5ncmlkLXggPiAuI3skLXpmLXNpemV9LSN7JGl9IHtcbiAgICAgICAgQGluY2x1ZGUgeHktY2VsbC1zdGF0aWMoJGksIGZhbHNlLCAkZ3V0dGVyLXR5cGU6IHBhZGRpbmcpO1xuICAgICAgfVxuICAgIH1cbiAgfVxuXG4gIC8vIFJlc2V0IHdpZHRoIHdoZW4gdXNpbmcgYC5ncmlkLW1hcmdpbi14YCBub3Qgb24gYC5ncmlkLXhgXG4gIC5ncmlkLW1hcmdpbi14Om5vdCguZ3JpZC14KSA+IC5jZWxsIHtcbiAgICB3aWR0aDogYXV0bztcbiAgfVxuXG4gIC8vIFJlc2V0IGhlaWdodCB3aGVuIHVzaW5nIGAuZ3JpZC1tYXJnaW4teWAgbm90IG9uIGAuZ3JpZC15YFxuICAuZ3JpZC1tYXJnaW4teTpub3QoLmdyaWQteSkgPiAuY2VsbCB7XG4gICAgaGVpZ2h0OiBhdXRvO1xuICB9XG59XG5cbkBtaXhpbiAteHktYnJlYWtwb2ludC1jZWxsLWNsYXNzZXMoJGNsYXNzLWJyZWFrcG9pbnQsICRndXR0ZXItYnJlYWtwb2ludCwgJHZlcnRpY2FsKSB7XG4gICRwcmVmaXg6IGlmKCRjbGFzcy1icmVha3BvaW50ID09ICQtemYtemVyby1icmVha3BvaW50LCAnJywgJyN7JGNsYXNzLWJyZWFrcG9pbnR9LScpO1xuICA+IC4jeyRwcmVmaXh9YXV0byB7XG4gICAgQGluY2x1ZGUgeHktY2VsbC1zdGF0aWMoYXV0bywgZmFsc2UsICRicmVha3BvaW50OiAkZ3V0dGVyLWJyZWFrcG9pbnQsICR2ZXJ0aWNhbDogJHZlcnRpY2FsKTtcbiAgfVxuXG4gID4gLiN7JHByZWZpeH1zaHJpbmsge1xuICAgIEBpbmNsdWRlIHh5LWNlbGwtc3RhdGljKHNocmluaywgZmFsc2UsICRicmVha3BvaW50OiAkZ3V0dGVyLWJyZWFrcG9pbnQsICR2ZXJ0aWNhbDogJHZlcnRpY2FsKTtcbiAgfVxuXG4gIEBmb3IgJGkgZnJvbSAxIHRocm91Z2ggJGdyaWQtY29sdW1ucyB7XG4gICAgLy8gU2l6aW5nIChwZXJjZW50YWdlKVxuICAgICRjbGFzc25hbWU6IGlmKCR2ZXJ0aWNhbCwgJy4jeyRjbGFzcy1icmVha3BvaW50fS0jeyRpfScsICcuI3skY2xhc3MtYnJlYWtwb2ludH0tI3skaX0nKTtcblxuICAgID4gI3skY2xhc3NuYW1lfSB7XG4gICAgICBAaW5jbHVkZSB4eS1jZWxsLXN0YXRpYygkaSwgZmFsc2UsICRicmVha3BvaW50OiAkZ3V0dGVyLWJyZWFrcG9pbnQsICR2ZXJ0aWNhbDogJHZlcnRpY2FsKTtcbiAgICB9XG4gIH1cbn1cblxuLy8gTWFyZ2luIEdyaWQgY2xhc3Nlc1xuQG1peGluIHh5LW1hcmdpbi1ncmlkLWNsYXNzZXMoXG4gICRndXR0ZXItcG9zaXRpb246IGxlZnQgcmlnaHQsXG4gICR2ZXJ0aWNhbDogZmFsc2UsXG4gICR3cmFwcGluZy1zZWxlY3RvcjogJy5ncmlkLW1hcmdpbi14J1xuKXtcbiAgI3skd3JhcHBpbmctc2VsZWN0b3J9IHtcbiAgICBAaW5jbHVkZSB4eS1ndXR0ZXJzKCRuZWdhdGl2ZTogdHJ1ZSwgJGd1dHRlci1wb3NpdGlvbjogJGd1dHRlci1wb3NpdGlvbik7XG5cbiAgICAvLyBCYXNlIGNlbGwgc3R5bGVzXG4gICAgPiAuY2VsbCB7XG4gICAgICBAaW5jbHVkZSB4eS1jZWxsLXN0YXRpYygkdmVydGljYWw6ICR2ZXJ0aWNhbCk7XG4gICAgfVxuXG4gICAgLy8gYmFzZSBzdHlsZXMgbmVlZCB0byBhbGwgYmUgYmVmb3JlIHRoZSBhdXRvIGFuZCBzaHJpbmsgc3R5bGVzXG4gICAgQGluY2x1ZGUgLXpmLWVhY2gtYnJlYWtwb2ludCgpIHtcbiAgICAgIEBpZih0eXBlLW9mKCRncmlkLW1hcmdpbi1ndXR0ZXJzKSA9PSAnbWFwJyBhbmQgbWFwLWhhcy1rZXkoJGdyaWQtbWFyZ2luLWd1dHRlcnMsICQtemYtc2l6ZSkgYW5kICQtemYtc2l6ZSAhPSAkLXpmLXplcm8tYnJlYWtwb2ludCkge1xuICAgICAgICA+IC5jZWxsIHtcbiAgICAgICAgICBAaW5jbHVkZSB4eS1jZWxsLXN0YXRpYygkYnJlYWtwb2ludDogJC16Zi1zaXplLCAkdmVydGljYWw6ICR2ZXJ0aWNhbCk7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG5cbiAgICBAaW5jbHVkZSAtemYtZWFjaC1icmVha3BvaW50KCkge1xuXG4gICAgICAvLyBUaGlzIGlzIHB1cmVseSBmb3IgcmVzcG9uc2l2ZSBndXR0ZXJzIC0gdGhlIG1hcmdpbiBncmlkIGhhcyB0byBnbyBiYWNrIGFuZCBhZGp1c3Qgd2lkdGhzIChvciBoZWlnaHRzKVxuICAgICAgLy8gZm9yIHByaW9yIGJyZWFrcG9pbnRzIGJhc2VkIG9uIHRoZSByZXNwb25zaXZlIGd1dHRlci5cbiAgICAgIEBpZih0eXBlLW9mKCRncmlkLW1hcmdpbi1ndXR0ZXJzKSA9PSAnbWFwJyBhbmQgbWFwLWhhcy1rZXkoJGdyaWQtbWFyZ2luLWd1dHRlcnMsICQtemYtc2l6ZSkpIHtcbiAgICAgICAgQGVhY2ggJGJwIGluIC16Zi1icmVha3BvaW50cy1sZXNzLXRoYW4oJC16Zi1zaXplKSB7XG4gICAgICAgICAgQGlmKG1hcC1oYXMta2V5KCRncmlkLW1hcmdpbi1ndXR0ZXJzLCAkYnApKSB7XG4gICAgICAgICAgICBAaW5jbHVkZSAteHktYnJlYWtwb2ludC1jZWxsLWNsYXNzZXMoJGJwLCAkLXpmLXNpemUsICR2ZXJ0aWNhbCk7XG4gICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICB9XG5cbiAgICAgIEBpbmNsdWRlIC14eS1icmVha3BvaW50LWNlbGwtY2xhc3NlcygkLXpmLXNpemUsICQtemYtc2l6ZSwgJHZlcnRpY2FsKTtcbiAgICB9XG4gIH1cbn1cblxuLy8gUGFkZGluZyBHcmlkIGNsYXNzZXNcbkBtaXhpbiB4eS1wYWRkaW5nLWdyaWQtY2xhc3NlcyB7XG4gIC5ncmlkLXBhZGRpbmcteCB7XG5cbiAgICAvLyBOZWdhdGl2ZSBtYXJnaW4gZm9yIG5lc3RlZCBncmlkc1xuICAgIC5ncmlkLXBhZGRpbmcteCB7XG4gICAgICBAaW5jbHVkZSB4eS1ndXR0ZXJzKCRuZWdhdGl2ZTogdHJ1ZSk7XG4gICAgfVxuXG4gICAgLy8gTmVnYXRpdmUgbWFyZ2luIGZvciBncmlkcyB3aXRoaW4gYGdyaWQtY29udGFpbmVyL2dyaWQtY29udGFpbmVyLmZsdWlkYFxuICAgIC8vIFRoaXMgYWxsb3dzIG1hcmdpbiBhbmQgcGFkZGluZyBncmlkcyB0byBsaW5lIHVwIHdpdGggZWFjaG90aGVyXG4gICAgLmdyaWQtY29udGFpbmVyOm5vdCguZnVsbCkgPiAmIHtcbiAgICAgIEBpbmNsdWRlIHh5LWd1dHRlcnMoJG5lZ2F0aXZlOiB0cnVlKTtcbiAgICB9XG5cbiAgICAvLyBCYXNlIGNlbGwgc3R5bGVzXG4gICAgPiAuY2VsbCB7XG4gICAgICBAaW5jbHVkZSB4eS1ndXR0ZXJzKCRndXR0ZXJzOiAkZ3JpZC1wYWRkaW5nLWd1dHRlcnMsICRndXR0ZXItdHlwZTogcGFkZGluZyk7XG4gICAgfVxuICB9XG59XG5cbi8vIEJsb2NrIEdyaWQgY2xhc3Nlc1xuQG1peGluIHh5LWJsb2NrLWdyaWQtY2xhc3NlcygkbWFyZ2luLWdyaWQ6IHRydWUsICRwYWRkaW5nLWdyaWQ6IHRydWUpIHtcbiAgQGlmICRwYWRkaW5nLWdyaWQge1xuICAgIEBpbmNsdWRlIC16Zi1lYWNoLWJyZWFrcG9pbnQge1xuICAgICAgQGZvciAkaSBmcm9tIDEgdGhyb3VnaCAkeHktYmxvY2stZ3JpZC1tYXgge1xuICAgICAgICAuI3skLXpmLXNpemV9LXVwLSN7JGl9IHtcbiAgICAgICAgICBAaW5jbHVkZSB4eS1ncmlkLWxheW91dCgkaSwgJy5jZWxsJywgZmFsc2UsICRndXR0ZXItdHlwZTogcGFkZGluZyk7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gIH1cblxuICBAaWYgJG1hcmdpbi1ncmlkIHtcbiAgICBAaW5jbHVkZSAtemYtZWFjaC1icmVha3BvaW50IHtcbiAgICAgIEBmb3IgJGkgZnJvbSAxIHRocm91Z2ggJHh5LWJsb2NrLWdyaWQtbWF4IHtcbiAgICAgICAgLy8gVGhpcyBpcyBwdXJlbHkgZm9yIHJlc3BvbnNpdmUgZ3V0dGVycyAtIHRoZSBtYXJnaW4gZ3JpZCBoYXMgdG8gZ28gYmFjayBhbmQgYWRqdXN0IHdpZHRocyAob3IgaGVpZ2h0cylcbiAgICAgICAgLy8gZm9yIHByaW9yIGJyZWFrcG9pbnRzIGJhc2VkIG9uIHRoZSByZXNwb25zaXZlIGd1dHRlci5cbiAgICAgICAgQGlmKHR5cGUtb2YoJGdyaWQtbWFyZ2luLWd1dHRlcnMpID09ICdtYXAnIGFuZCBtYXAtaGFzLWtleSgkZ3JpZC1tYXJnaW4tZ3V0dGVycywgJC16Zi1zaXplKSkge1xuICAgICAgICAgIEBlYWNoICRicCBpbiAtemYtYnJlYWtwb2ludHMtbGVzcy10aGFuKCQtemYtc2l6ZSkge1xuICAgICAgICAgICAgQGlmKG1hcC1oYXMta2V5KCRncmlkLW1hcmdpbi1ndXR0ZXJzLCAkYnApKSB7XG4gICAgICAgICAgICAgIC5ncmlkLW1hcmdpbi14LiN7JGJwfS11cC0jeyRpfSB7XG4gICAgICAgICAgICAgICAgQGluY2x1ZGUgeHktZ3JpZC1sYXlvdXQoJGksICcuY2VsbCcsIGZhbHNlLCAkZ3V0dGVyLXR5cGU6IG1hcmdpbiwgJGJyZWFrcG9pbnQ6ICRicCk7XG4gICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICAgIEBmb3IgJGkgZnJvbSAxIHRocm91Z2ggJHh5LWJsb2NrLWdyaWQtbWF4IHtcbiAgICAgICAgLmdyaWQtbWFyZ2luLXguI3skLXpmLXNpemV9LXVwLSN7JGl9IHtcbiAgICAgICAgICBAaW5jbHVkZSB4eS1ncmlkLWxheW91dCgkaSwgJy5jZWxsJywgZmFsc2UsICRndXR0ZXItdHlwZTogbWFyZ2luLCAkYnJlYWtwb2ludDogJC16Zi1zaXplKTtcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgfVxufVxuXG4vLyBDb2xsYXBzZSBjbGFzc2VzXG5AbWl4aW4geHktY29sbGFwc2UtZ3JpZC1jbGFzc2VzKCRtYXJnaW4tZ3JpZDogdHJ1ZSwgJHBhZGRpbmctZ3JpZDogdHJ1ZSkge1xuICBAZWFjaCAkYnAgaW4gJGJyZWFrcG9pbnQtY2xhc3NlcyB7XG4gICAgQGlmICRtYXJnaW4tZ3JpZCB7XG4gICAgICAuI3skYnB9LW1hcmdpbi1jb2xsYXBzZSB7XG4gICAgICAgIEBpbmNsdWRlIHh5LWdyaWQtY29sbGFwc2UoJGd1dHRlci10eXBlOiBtYXJnaW4sICRtaW4tYnJlYWtwb2ludDogJGJwKTtcbiAgICAgIH1cbiAgICB9XG5cbiAgICBAaWYgJHBhZGRpbmctZ3JpZCB7XG4gICAgICAuI3skYnB9LXBhZGRpbmctY29sbGFwc2Uge1xuICAgICAgICBAaW5jbHVkZSB4eS1ncmlkLWNvbGxhcHNlKCRndXR0ZXItdHlwZTogcGFkZGluZywgJG1pbi1icmVha3BvaW50OiAkYnApO1xuICAgICAgfVxuICAgIH1cbiAgfVxufVxuXG4vLyBPZmZzZXQgY2xhc3Nlc1xuQG1peGluIHh5LW9mZnNldC1jZWxsLWNsYXNzZXMge1xuICBAaW5jbHVkZSAtemYtZWFjaC1icmVha3BvaW50IHtcbiAgICBAZm9yICRpIGZyb20gMSB0aHJvdWdoICRncmlkLWNvbHVtbnMge1xuICAgICAgLy8gT2Zmc2V0c1xuICAgICAgJG86ICRpIC0gMTtcblxuICAgICAgLiN7JC16Zi1zaXplfS1vZmZzZXQtI3skb30ge1xuICAgICAgICBAaW5jbHVkZSB4eS1jZWxsLW9mZnNldCgkbywgJGd1dHRlcnM6ICRncmlkLXBhZGRpbmctZ3V0dGVycywgJGd1dHRlci10eXBlOiBwYWRkaW5nLCAkYnJlYWtwb2ludDogJC16Zi1zaXplKTtcbiAgICAgIH1cblxuICAgICAgLmdyaWQtbWFyZ2luLXggPiAuI3skLXpmLXNpemV9LW9mZnNldC0jeyRvfSB7XG4gICAgICAgIEBpbmNsdWRlIHh5LWNlbGwtb2Zmc2V0KCRvLCAkYnJlYWtwb2ludDogJC16Zi1zaXplKTtcbiAgICAgIH1cbiAgICB9XG4gIH1cbn1cblxuLy8gVmVydGljYWwgR3JpZCBjbGFzc2VzXG5AbWl4aW4geHktdmVydGljYWwtZ3JpZC1jbGFzc2VzKFxuICAkbWFyZ2luLWdyaWQ6IHRydWUsXG4gICRwYWRkaW5nLWdyaWQ6IHRydWVcbikge1xuXG4gIEBpbmNsdWRlIC16Zi1lYWNoLWJyZWFrcG9pbnQoKSB7XG4gICAgQGlmIG5vdCgkLXpmLXNpemUgPT0gc21hbGwpIHtcbiAgICB9XG4gIH1cblxuICAuZ3JpZC15IHtcbiAgICBAaW5jbHVkZSB4eS1ncmlkKHZlcnRpY2FsLCBmYWxzZSk7XG5cblxuICAgID4gLmNlbGwge1xuICAgICAgQGluY2x1ZGUgeHktY2VsbC1yZXNldCgpO1xuICAgIH1cblxuICAgID4gLmF1dG8ge1xuICAgICAgQGluY2x1ZGUgeHktY2VsbC1zdGF0aWMoYXV0bywgZmFsc2UsICRicmVha3BvaW50OiAkLXpmLXNpemUsICR2ZXJ0aWNhbDogdHJ1ZSk7XG4gICAgfVxuXG4gICAgPiAuc2hyaW5rIHtcbiAgICAgIEBpbmNsdWRlIHh5LWNlbGwtc3RhdGljKHNocmluaywgZmFsc2UsICRicmVha3BvaW50OiAkLXpmLXNpemUsICR2ZXJ0aWNhbDogdHJ1ZSk7XG4gICAgfVxuXG5cbiAgICBAaW5jbHVkZSAtemYtZWFjaC1icmVha3BvaW50KCkge1xuICAgICAgLy8gVGhpcyBpcyBhIGJpdCBvZiBhIGhhY2svd29ya2Fyb3VuZCwgc2VlIHRoZXNlIGlzc3VlcyBhbmQgUFJzIGZvciB0aGUgYmFja3N0b3J5OlxuICAgICAgLy8gaHR0cHM6Ly9naXRodWIuY29tL3p1cmIvZm91bmRhdGlvbi1zaXRlcy9pc3N1ZXMvMTAyNDRcbiAgICAgIC8vIGh0dHBzOi8vZ2l0aHViLmNvbS96dXJiL2ZvdW5kYXRpb24tc2l0ZXMvcHVsbC8xMDIyMiBhbmRcbiAgICAgIC8vIGh0dHBzOi8vZ2l0aHViLmNvbS96dXJiL2ZvdW5kYXRpb24tc2l0ZXMvcHVsbC8xMDE2NFxuICAgICAgJHN0cjogXCI+IC4jeyQtemYtc2l6ZX0tc2hyaW5rLCA+IC4jeyQtemYtc2l6ZX0tZnVsbFwiO1xuICAgICAgQGZvciAkaSBmcm9tIDEgdGhyb3VnaCAkZ3JpZC1jb2x1bW5zIHtcbiAgICAgICAgJHN0cjogJHN0ciArIFwiLCA+IC4jeyQtemYtc2l6ZX0tI3skaX1cIlxuICAgICAgfVxuICAgICAgI3skc3RyfSB7XG4gICAgICAgIGZsZXgtYmFzaXM6IGF1dG87XG4gICAgICB9XG4gICAgfVxuXG4gICAgQGluY2x1ZGUgLXpmLWVhY2gtYnJlYWtwb2ludCgpIHtcbiAgICAgIEBpZiBub3QoJC16Zi1zaXplID09IHNtYWxsKSB7XG4gICAgICAgID4gLiN7JC16Zi1zaXplfS1hdXRvIHtcbiAgICAgICAgICBAaW5jbHVkZSB4eS1jZWxsLWJhc2UoYXV0byk7XG4gICAgICAgICAgQGluY2x1ZGUgeHktY2VsbC1zdGF0aWMoYXV0bywgZmFsc2UsICRicmVha3BvaW50OiAkLXpmLXNpemUsICR2ZXJ0aWNhbDogdHJ1ZSk7XG4gICAgICAgIH1cblxuICAgICAgICA+IC4jeyQtemYtc2l6ZX0tc2hyaW5rIHtcbiAgICAgICAgICBAaW5jbHVkZSB4eS1jZWxsLXN0YXRpYyhzaHJpbmssIGZhbHNlLCAkYnJlYWtwb2ludDogJC16Zi1zaXplLCAkdmVydGljYWw6IHRydWUpO1xuICAgICAgICB9XG5cbiAgICAgIH1cblxuICAgICAgQGZvciAkaSBmcm9tIDEgdGhyb3VnaCAkZ3JpZC1jb2x1bW5zIHtcbiAgICAgICAgLy8gU2l6aW5nIChwZXJjZW50YWdlKVxuICAgICAgICA+IC4jeyQtemYtc2l6ZX0tI3skaX0ge1xuICAgICAgICAgIEBpbmNsdWRlIHh5LWNlbGwtc3RhdGljKCRpLCBmYWxzZSwgJHZlcnRpY2FsOiB0cnVlLCAkZ3V0dGVyLXR5cGU6IHBhZGRpbmcpO1xuICAgICAgICB9XG4gICAgICB9XG5cbiAgICB9XG4gIH1cblxuICBAaWYgJHBhZGRpbmctZ3JpZCB7XG4gICAgLmdyaWQtcGFkZGluZy15IHtcbiAgICAgIC8vIE5lZ2F0aXZlIG1hcmdpbiBmb3IgbmVzdGVkIGdyaWRzXG4gICAgICAuZ3JpZC1wYWRkaW5nLXkge1xuICAgICAgICBAaW5jbHVkZSB4eS1ndXR0ZXJzKCRuZWdhdGl2ZTogdHJ1ZSwgJGd1dHRlci1wb3NpdGlvbjogdG9wIGJvdHRvbSk7XG4gICAgICB9XG5cbiAgICAgIC8vIEJhc2UgY2VsbCBzdHlsZXNcbiAgICAgID4gLmNlbGwge1xuICAgICAgICBAaW5jbHVkZSB4eS1ndXR0ZXJzKCRndXR0ZXJzOiAkZ3JpZC1wYWRkaW5nLWd1dHRlcnMsICRndXR0ZXItdHlwZTogcGFkZGluZywgJGd1dHRlci1wb3NpdGlvbjogdG9wIGJvdHRvbSk7XG4gICAgICB9XG4gICAgfVxuICB9XG5cbiAgQGlmICRtYXJnaW4tZ3JpZCB7XG4gICAgQGluY2x1ZGUgeHktbWFyZ2luLWdyaWQtY2xhc3Nlcyh0b3AgYm90dG9tLCB0cnVlLCAnLmdyaWQtbWFyZ2luLXknKTtcbiAgfVxuXG59XG5cbkBtaXhpbiB4eS1mcmFtZS1ncmlkLWNsYXNzZXMoJHZlcnRpY2FsLWdyaWQ6IHRydWUsICRtYXJnaW4tZ3JpZDogdHJ1ZSkge1xuICAvLyBGcmFtZWQgZ3JpZCBzdHlsZXNcbiAgLmdyaWQtZnJhbWUge1xuICAgIEBpbmNsdWRlIHh5LWdyaWQtZnJhbWU7XG4gIH1cblxuICAuY2VsbCAuZ3JpZC1mcmFtZSB7XG4gICAgd2lkdGg6IDEwMCU7IC8vIFNhbWUgYXMgaW5jbHVkZSB3aXRoICRuZXN0ZWQsIGJ1dCB3aXRoIGxlc3MgY3NzXG4gIH1cblxuICAuY2VsbC1ibG9jayB7XG4gICAgQGluY2x1ZGUgeHktY2VsbC1ibG9jaygpO1xuICB9XG5cbiAgLmNlbGwtYmxvY2steSB7XG4gICAgQGluY2x1ZGUgeHktY2VsbC1ibG9jayh0cnVlKTtcbiAgfVxuXG5cbiAgLmNlbGwtYmxvY2stY29udGFpbmVyIHtcbiAgICBAaW5jbHVkZSB4eS1jZWxsLWJsb2NrLWNvbnRhaW5lcigpO1xuICB9XG5cblxuICBAaW5jbHVkZSAtemYtZWFjaC1icmVha3BvaW50KGZhbHNlKSB7XG5cbiAgICAuI3skLXpmLXNpemV9LWdyaWQtZnJhbWUge1xuICAgICAgQGluY2x1ZGUgeHktZ3JpZC1mcmFtZTtcbiAgICB9XG5cbiAgICAuY2VsbCAuI3skLXpmLXNpemV9LWdyaWQtZnJhbWUge1xuICAgICAgd2lkdGg6IDEwMCU7IC8vIFNhbWUgYXMgaW5jbHVkZSB3aXRoICRuZXN0ZWQsIGJ1dCB3aXRoIGxlc3MgY3NzXG4gICAgfVxuXG4gICAgLiN7JC16Zi1zaXplfS1jZWxsLWJsb2NrIHtcbiAgICAgIEBpbmNsdWRlIHh5LWNlbGwtYmxvY2soKTtcbiAgICB9XG5cbiAgICAuI3skLXpmLXNpemV9LWNlbGwtYmxvY2stY29udGFpbmVyIHtcbiAgICAgIEBpbmNsdWRlIHh5LWNlbGwtYmxvY2stY29udGFpbmVyKCk7XG4gICAgfVxuXG4gICAgLiN7JC16Zi1zaXplfS1jZWxsLWJsb2NrLXkge1xuICAgICAgQGluY2x1ZGUgeHktY2VsbC1ibG9jayh0cnVlKTtcbiAgICB9XG4gIH1cblxuICBAaWYgJHZlcnRpY2FsLWdyaWQge1xuICAgIC5ncmlkLXkge1xuICAgICAgJi5ncmlkLWZyYW1lIHtcbiAgICAgICAgd2lkdGg6IGF1dG87XG4gICAgICAgIEBpbmNsdWRlIHh5LWdyaWQtZnJhbWUodHJ1ZSk7XG4gICAgICB9XG5cbiAgICAgIEBpbmNsdWRlIC16Zi1lYWNoLWJyZWFrcG9pbnQoZmFsc2UpIHtcbiAgICAgICAgJi4jeyQtemYtc2l6ZX0tZ3JpZC1mcmFtZSB7XG4gICAgICAgICAgd2lkdGg6IGF1dG87XG4gICAgICAgICAgQGluY2x1ZGUgeHktZ3JpZC1mcmFtZSh0cnVlKTtcbiAgICAgICAgfVxuXG4gICAgICB9XG4gICAgfVxuICAgIC5jZWxsIHtcbiAgICAgIC5ncmlkLXkuZ3JpZC1mcmFtZSB7XG4gICAgICAgIGhlaWdodDogMTAwJTsgLy8gU2FtZSBhcyBpbmNsdWRlIHdpdGggJG5lc3RlZCwgYnV0IHdpdGggbGVzcyBjc3NcbiAgICAgIH1cbiAgICAgIEBpbmNsdWRlIC16Zi1lYWNoLWJyZWFrcG9pbnQoZmFsc2UpIHtcbiAgICAgICAgLmdyaWQteS4jeyQtemYtc2l6ZX0tZ3JpZC1mcmFtZSB7XG4gICAgICAgICAgaGVpZ2h0OiAxMDAlOyAvLyBTYW1lIGFzIGluY2x1ZGUgd2l0aCAkbmVzdGVkLCBidXQgd2l0aCBsZXNzIGNzc1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICB9XG4gIEBpZiAkbWFyZ2luLWdyaWQge1xuICAgIEBpbmNsdWRlIHh5LW1hcmdpbi1ncmlkLWNsYXNzZXModG9wIGJvdHRvbSwgdHJ1ZSwgJy5ncmlkLW1hcmdpbi15Jyk7XG4gICAgLmdyaWQtZnJhbWUuZ3JpZC1tYXJnaW4teSB7XG4gICAgICBAaW5jbHVkZSB4eS1ncmlkLWZyYW1lKHRydWUsIGZhbHNlLCAkZ3JpZC1tYXJnaW4tZ3V0dGVycywgJGluY2x1ZGUtYmFzZTogZmFsc2UpO1xuICAgIH1cbiAgICBAaW5jbHVkZSAtemYtZWFjaC1icmVha3BvaW50KGZhbHNlKSB7XG4gICAgICAuZ3JpZC1tYXJnaW4teS4jeyQtemYtc2l6ZX0tZ3JpZC1mcmFtZSB7XG4gICAgICAgIEBpbmNsdWRlIHh5LWdyaWQtZnJhbWUodHJ1ZSwgZmFsc2UsICRncmlkLW1hcmdpbi1ndXR0ZXJzLCAkLXpmLXNpemUsIGZhbHNlKTtcbiAgICAgIH1cbiAgICB9XG4gIH1cbn1cblxuLy8gRmluYWwgY2xhc3Nlc1xuQG1peGluIGZvdW5kYXRpb24teHktZ3JpZC1jbGFzc2VzKFxuICAkYmFzZS1ncmlkOiB0cnVlLFxuICAkbWFyZ2luLWdyaWQ6IHRydWUsXG4gICRwYWRkaW5nLWdyaWQ6IHRydWUsXG4gICRibG9jay1ncmlkOiB0cnVlLFxuICAkY29sbGFwc2U6IHRydWUsXG4gICRvZmZzZXQ6IHRydWUsXG4gICR2ZXJ0aWNhbC1ncmlkOiB0cnVlLFxuICAkZnJhbWUtZ3JpZDogdHJ1ZVxuKSB7XG5cbiAgLy8gQmFzZSBncmlkIHN0eWxlc1xuICBAaWYoJGJhc2UtZ3JpZCkge1xuICAgIEBpbmNsdWRlIHh5LWJhc2UtZ3JpZC1jbGFzc2VzKCk7XG4gIH1cblxuICAvLyBNYXJnaW4gZ3JpZFxuICBAaWYoJG1hcmdpbi1ncmlkKSB7XG4gICAgQGluY2x1ZGUgeHktbWFyZ2luLWdyaWQtY2xhc3NlcygpO1xuICB9XG5cbiAgLy8gUGFkZGluZyBncmlkXG4gIEBpZigkcGFkZGluZy1ncmlkKSB7XG4gICAgQGluY2x1ZGUgeHktcGFkZGluZy1ncmlkLWNsYXNzZXMoKTtcbiAgfVxuXG4gIC8vIEJsb2NrIGdyaWRcbiAgQGlmKCRibG9jay1ncmlkKSB7XG4gICAgQGluY2x1ZGUgeHktYmxvY2stZ3JpZC1jbGFzc2VzKCRtYXJnaW4tZ3JpZCwgJHBhZGRpbmctZ3JpZCk7XG4gIH1cblxuICAvLyBDb2xsYXBzZSBndXR0ZXJzXG4gIEBpZigkY29sbGFwc2UpIHtcbiAgICBAaW5jbHVkZSB4eS1jb2xsYXBzZS1ncmlkLWNsYXNzZXMoJG1hcmdpbi1ncmlkLCAkcGFkZGluZy1ncmlkKTtcbiAgfVxuXG4gIC8vIE9mZnNldCBndXR0ZXJzXG4gIEBpZigkb2Zmc2V0KSB7XG4gICAgQGluY2x1ZGUgeHktb2Zmc2V0LWNlbGwtY2xhc3NlcygpO1xuICB9XG5cbiAgLy8gVmVydGljYWwgZ3JpZFxuICBAaWYoJHZlcnRpY2FsLWdyaWQpIHtcbiAgICBAaW5jbHVkZSB4eS12ZXJ0aWNhbC1ncmlkLWNsYXNzZXMoJG1hcmdpbi1ncmlkLCAkcGFkZGluZy1ncmlkKTtcbiAgfVxuXG4gIEBpZiAoJGZyYW1lLWdyaWQpIHtcbiAgICBAaW5jbHVkZSB4eS1mcmFtZS1ncmlkLWNsYXNzZXMoJHZlcnRpY2FsLWdyaWQsICRtYXJnaW4tZ3JpZClcbiAgfVxufVxuIiwiLy8gRm91bmRhdGlvbiBmb3IgU2l0ZXMgYnkgWlVSQlxuLy8gZm91bmRhdGlvbi56dXJiLmNvbVxuLy8gTGljZW5zZWQgdW5kZXIgTUlUIE9wZW4gU291cmNlXG5cbi8vLy9cbi8vLyBAZ3JvdXAgeHktZ3JpZFxuLy8vL1xuXG4vLy8gQ3JlYXRlIGd1dHRlcnMgZm9yIGEgY2VsbC9jb250YWluZXIuXG4vLy9cbi8vLyBAcGFyYW0ge051bWJlcnxNYXB9ICRndXR0ZXJzIFskZ3JpZC1tYXJnaW4tZ3V0dGVyc10gLSBNYXAgb3Igc2luZ2xlIHZhbHVlIGZvciBndXR0ZXJzLlxuLy8vIEBwYXJhbSB7S2V5d29yZH0gJGd1dHRlci10eXBlIFttYXJnaW5dIC0gVHlwZSBvZiBndXR0ZXIgdG8gb3V0cHV0LiBBY2NlcHRzIGVpdGhlciBtYXJnaW4gb3IgcGFkZGluZy5cbi8vLyBAcGFyYW0ge0xpc3R9ICRndXR0ZXItcG9zaXRpb24gW3JpZ2h0IGxlZnRdIC0gVGhlIHBvc2l0aW9uIHRvIGFwcGx5IGd1dHRlcnMgdG8uIEFjY2VwdHMgYHRvcGAsIGBib3R0b21gLCBgbGVmdGAsIGByaWdodGAgaW4gYW55IGNvbWJpbmF0aW9uLlxuLy8vIEBwYXJhbSB7Qm9vbGVhbn0gJG5lZ2F0aXZlIFtmYWxzZV0gLSBXaGV0aGVyIHRvIGFwcGx5IHRoZSBndXR0ZXIgYXMgYSBuZWdhdGl2ZSB2YWx1ZS4gQ29tbW9ubHkgdXNlZCBmb3IgbmVzdGVkIGdyaWRzLlxuQG1peGluIHh5LWd1dHRlcnMoXG4gICRndXR0ZXJzOiAkZ3JpZC1tYXJnaW4tZ3V0dGVycyxcbiAgJGd1dHRlci10eXBlOiBtYXJnaW4sXG4gICRndXR0ZXItcG9zaXRpb246IHJpZ2h0IGxlZnQsXG4gICRuZWdhdGl2ZTogZmFsc2Vcbikge1xuICAkb3BlcmF0b3I6IGlmKCRuZWdhdGl2ZSwgJy0nLCAnJyk7XG5cbiAgLy8gSWYgd2UgaGF2ZSBkZWNsYXJlZCBuZWdhdGl2ZSBndXR0ZXJzLCBmb3JjZSB0eXBlIHRvIGBtYXJnaW4uXG4gICRndXR0ZXItdHlwZTogaWYoJG5lZ2F0aXZlLCAnbWFyZ2luJywgJGd1dHRlci10eXBlKTtcblxuICAvLyBPdXRwdXQgb3VyIG1hcmdpbiBndXR0ZXJzLlxuICBAaWYgKHR5cGUtb2YoJGd1dHRlcnMpID09ICdtYXAnKSB7XG4gICAgQGluY2x1ZGUgLXpmLWJyZWFrcG9pbnQtdmFsdWUoYXV0bywgJGd1dHRlcnMpIHtcbiAgICAgICRndXR0ZXI6IHJlbS1jYWxjKCQtemYtYnAtdmFsdWUpIC8gMjtcblxuICAgICAgLy8gTG9vcCB0aHJvdWdoIGVhY2ggZ3V0dGVyIHBvc2l0aW9uXG4gICAgICBAZWFjaCAkdmFsdWUgaW4gJGd1dHRlci1wb3NpdGlvbiB7XG4gICAgICAgICN7JGd1dHRlci10eXBlfS0jeyR2YWx1ZX06IHVucXVvdGUoXCIjeyRvcGVyYXRvcn0jeyRndXR0ZXJ9XCIpO1xuICAgICAgfVxuICAgIH1cbiAgfVxuICBAZWxzZWlmICh0eXBlLW9mKCRndXR0ZXJzKSA9PSAnbnVtYmVyJykge1xuICAgICRndXR0ZXI6IHJlbS1jYWxjKCRndXR0ZXJzKSAvIDI7XG5cbiAgICAvLyBMb29wIHRocm91Z2ggZWFjaCBndXR0ZXIgcG9zaXRpb25cbiAgICBAZWFjaCAkdmFsdWUgaW4gJGd1dHRlci1wb3NpdGlvbiB7XG4gICAgICAjeyRndXR0ZXItdHlwZX0tI3skdmFsdWV9OiB1bnF1b3RlKFwiI3skb3BlcmF0b3J9I3skZ3V0dGVyfVwiKTtcbiAgICB9XG4gIH1cbn1cbiIsIi8vIEZvdW5kYXRpb24gZm9yIFNpdGVzIGJ5IFpVUkJcbi8vIGZvdW5kYXRpb24uenVyYi5jb21cbi8vIExpY2Vuc2VkIHVuZGVyIE1JVCBPcGVuIFNvdXJjZVxuXG4vLy8vXG4vLy8gQGdyb3VwIHh5LWdyaWRcbi8vLy9cblxuLy8vIENyZWF0ZXMgYSBtYXggd2lkdGggY29udGFpbmVyLCBkZXNpZ25lZCB0byBob3VzZSB5b3VyIGdyaWQgY29udGVudC5cbi8vL1xuLy8vIEBwYXJhbSB7TnVtYmVyfSAkd2lkdGggWyRncmlkLWNvbnRhaW5lcl0gLSBhIHdpZHRoIHRvIGxpbWl0IHRoZSBjb250YWluZXIgdG8uXG5AbWl4aW4geHktZ3JpZC1jb250YWluZXIoXG4gICR3aWR0aDogJGdyaWQtY29udGFpbmVyLFxuICAkcGFkZGluZzogJGdyaWQtY29udGFpbmVyLXBhZGRpbmdcbikge1xuICBAaW5jbHVkZSB4eS1ndXR0ZXJzKCRndXR0ZXJzOiAkcGFkZGluZywgJGd1dHRlci10eXBlOiBwYWRkaW5nKTtcblxuICBtYXgtd2lkdGg6ICR3aWR0aDtcbiAgbWFyZ2luOiAwIGF1dG87XG59XG5cbi8vLyBDcmVhdGVzIGEgY29udGFpbmVyIGZvciB5b3VyIGZsZXggY2VsbHMuXG4vLy9cbi8vLyBAcGFyYW0ge0tleXdvcmR9ICRkaXJlY3Rpb24gW2hvcml6b250YWxdIC0gRWl0aGVyIGhvcml6b250YWwgb3IgdmVydGljYWwgZGlyZWN0aW9uIG9mIGNlbGxzIHdpdGhpbi5cbi8vLyBAcGFyYW0ge0Jvb2xlYW59ICR3cmFwIFt0cnVlXSAtIElmIHRoZSBjZWxscyB3aXRoaW4gc2hvdWxkIHdyYXAgb3Igbm90LlxuQG1peGluIHh5LWdyaWQoXG4gICRkaXJlY3Rpb246IGhvcml6b250YWwsXG4gICR3cmFwOiB0cnVlXG4pIHtcbiAgJGRpcmVjdGlvbjogaWYoJGRpcmVjdGlvbiA9PSAnaG9yaXpvbnRhbCcsIHJvdywgY29sdW1uKTtcbiAgJHdyYXA6IGlmKCR3cmFwLCB3cmFwLCBub3dyYXApO1xuXG4gIGRpc3BsYXk6IGZsZXg7XG4gIGZsZXgtZmxvdzogJGRpcmVjdGlvbiAkd3JhcDtcbn1cbiIsIi8vIEZvdW5kYXRpb24gZm9yIFNpdGVzIGJ5IFpVUkJcbi8vIGZvdW5kYXRpb24uenVyYi5jb21cbi8vIExpY2Vuc2VkIHVuZGVyIE1JVCBPcGVuIFNvdXJjZVxuXG4vLy8vXG4vLy8gQGdyb3VwIGJyZWFrcG9pbnRzXG4vLy8vXG5cbi8vLyBBIGxpc3Qgb2YgbmFtZWQgYnJlYWtwb2ludHMuIFlvdSBjYW4gdXNlIHRoZXNlIHdpdGggdGhlIGBicmVha3BvaW50KClgIG1peGluIHRvIHF1aWNrbHkgY3JlYXRlIG1lZGlhIHF1ZXJpZXMuXG4vLy8gQHR5cGUgTWFwXG4kYnJlYWtwb2ludHM6IChcbiAgc21hbGw6IDAsXG4gIG1lZGl1bTogNjQwcHgsXG4gIGxhcmdlOiAxMDI0cHgsXG4gIHhsYXJnZTogMTIwMHB4LFxuICB4eGxhcmdlOiAxNDQwcHgsXG4pICFkZWZhdWx0O1xuXG4vLy8gVGhlIGxhcmdlc3QgbmFtZWQgYnJlYWtwb2ludCBpbiB3aGljaCB0byBpbmNsdWRlIHByaW50IGFzIGEgbWVkaWEgdHlwZVxuLy8vIEB0eXBlIEtleXdvcmRcbiRwcmludC1icmVha3BvaW50OiBsYXJnZSAhZGVmYXVsdDtcblxuJC16Zi16ZXJvLWJyZWFrcG9pbnQ6IHNtYWxsICFkZWZhdWx0O1xuXG4kLXpmLWJyZWFrcG9pbnRzLWtleXM6IG1hcC10by1saXN0KCRicmVha3BvaW50cywgJ2tleXMnKTtcblxuQGlmIG50aChtYXAtdmFsdWVzKCRicmVha3BvaW50cyksIDEpICE9IDAge1xuICBAZXJyb3IgJ1lvdXIgc21hbGxlc3QgYnJlYWtwb2ludCAoZGVmaW5lZCBpbiAkYnJlYWtwb2ludHMpIG11c3QgYmUgc2V0IHRvIFwiMFwiLic7XG59XG5AZWxzZSB7XG4gICQtemYtemVyby1icmVha3BvaW50OiBudGgobWFwLWtleXMoJGJyZWFrcG9pbnRzKSwgMSk7XG59XG5cbi8vLyBBbGwgb2YgdGhlIG5hbWVzIGluIHRoaXMgbGlzdCB3aWxsIGJlIG91dHB1dCBhcyBjbGFzc2VzIGluIHlvdXIgQ1NTLCBsaWtlIGAuc21hbGwtMTJgLCBgLm1lZGl1bS02YCwgYW5kIHNvIG9uLiBFYWNoIHZhbHVlIGluIHRoaXMgbGlzdCBtdXN0IGFsc28gYmUgaW4gdGhlIGAkYnJlYWtwb2ludHNgIG1hcC5cbi8vLyBAdHlwZSBMaXN0XG4kYnJlYWtwb2ludC1jbGFzc2VzOiAoc21hbGwgbWVkaXVtIGxhcmdlKSAhZGVmYXVsdDtcblxuLy8vIEdlbmVyYXRlcyBhIG1lZGlhIHF1ZXJ5IHN0cmluZyBtYXRjaGluZyB0aGUgaW5wdXQgdmFsdWUuIFJlZmVyIHRvIHRoZSBkb2N1bWVudGF0aW9uIGZvciB0aGUgYGJyZWFrcG9pbnQoKWAgbWl4aW4gdG8gc2VlIHdoYXQgdGhlIHBvc3NpYmxlIGlucHV0cyBhcmUuXG4vLy9cbi8vLyBAcGFyYW0ge0tleXdvcmR8TnVtYmVyfSAkdmFsIFtzbWFsbF0gLSBCcmVha3BvaW50IG5hbWUsIG9yIHB4LCByZW0sIG9yIGVtIHZhbHVlIHRvIHByb2Nlc3MuXG5AZnVuY3Rpb24gYnJlYWtwb2ludCgkdmFsOiAkLXpmLXplcm8tYnJlYWtwb2ludCkge1xuICAvLyBTaXplIG9yIGtleXdvcmRcbiAgJGJwOiBudGgoJHZhbCwgMSk7XG4gIC8vIFZhbHVlIGZvciBtYXgtd2lkdGggbWVkaWEgcXVlcmllc1xuICAkYnAtbWF4OiAwO1xuICAvLyBEaXJlY3Rpb24gb2YgbWVkaWEgcXVlcnkgKHVwLCBkb3duLCBvciBvbmx5KVxuICAkZGlyOiBpZihsZW5ndGgoJHZhbCkgPiAxLCBudGgoJHZhbCwgMiksIHVwKTtcbiAgLy8gRXZlbnR1YWwgb3V0cHV0XG4gICRzdHI6ICcnO1xuICAvLyBJcyBpdCBhIG5hbWVkIG1lZGlhIHF1ZXJ5P1xuICAkbmFtZWQ6IGZhbHNlO1xuXG4gIC8vIE9yaWVudGF0aW9uIG1lZGlhIHF1ZXJpZXMgaGF2ZSBhIHVuaXF1ZSBzeW50YXhcbiAgQGlmICRicCA9PSAnbGFuZHNjYXBlJyBvciAkYnAgPT0gJ3BvcnRyYWl0JyB7XG4gICAgQHJldHVybiAnKG9yaWVudGF0aW9uOiAjeyRicH0pJztcbiAgfVxuICBAZWxzZSBpZiAkYnAgPT0gJ3JldGluYScge1xuICAgIEByZXR1cm4gJygtd2Via2l0LW1pbi1kZXZpY2UtcGl4ZWwtcmF0aW86IDIpLCAobWluLXJlc29sdXRpb246IDE5MmRwaSknO1xuICB9XG5cbiAgLy8gVHJ5IHRvIHB1bGwgYSBuYW1lZCBicmVha3BvaW50IG91dCBvZiB0aGUgJGJyZWFrcG9pbnRzIG1hcFxuICBAaWYgdHlwZS1vZigkYnApID09ICdzdHJpbmcnIHtcbiAgICBAaWYgbWFwLWhhcy1rZXkoJGJyZWFrcG9pbnRzLCAkYnApIHtcbiAgICAgIEBpZiAkZGlyID09ICdvbmx5JyBvciAkZGlyID09ICdkb3duJyB7XG4gICAgICAgICRicC1tYXg6IC16Zi1tYXAtbmV4dCgkYnJlYWtwb2ludHMsICRicCk7XG4gICAgICB9XG5cbiAgICAgICRicDogbWFwLWdldCgkYnJlYWtwb2ludHMsICRicCk7XG4gICAgICAkbmFtZWQ6IHRydWU7XG4gICAgfVxuICAgIEBlbHNlIHtcbiAgICAgICRicDogMDtcbiAgICAgIEB3YXJuICdicmVha3BvaW50KCk6IFwiI3skdmFsfVwiIGlzIG5vdCBkZWZpbmVkIGluIHlvdXIgJGJyZWFrcG9pbnRzIHNldHRpbmcuJztcbiAgICB9XG4gIH1cblxuICAvLyBDb252ZXJ0IGFueSBwaXhlbCwgcmVtLCBvciB1bml0bGVzcyB2YWx1ZSB0byBlbVxuICAkYnA6IC16Zi1icC10by1lbSgkYnApO1xuICBAaWYgJGJwLW1heCB7XG4gICAgJGJwLW1heDogLXpmLWJwLXRvLWVtKCRicC1tYXgpIC0gKDEvMTYpO1xuICB9XG5cbiAgLy8gQ29uZGl0aW9ucyB0byBza2lwIG1lZGlhIHF1ZXJ5IGNyZWF0aW9uXG4gIC8vIC0gSXQncyBhIG5hbWVkIGJyZWFrcG9pbnQgdGhhdCByZXNvbHZlZCB0byBcIjAgZG93blwiIG9yIFwiMCB1cFwiXG4gIC8vIC0gSXQncyBhIG51bWVyaWMgYnJlYWtwb2ludCB0aGF0IHJlc29sdmVkIHRvIFwiMCBcIiArIGFueXRoaW5nXG4gIEBpZiAkYnAgPiAwZW0gb3IgJGRpciA9PSAnb25seScgb3IgJGRpciA9PSAnZG93bicge1xuICAgIC8vIGBvbmx5YCByYW5nZXMgdXNlIHRoZSBmb3JtYXQgYChtaW4td2lkdGg6IG4pIGFuZCAobWF4LXdpZHRoOiBuKWBcbiAgICBAaWYgJGRpciA9PSAnb25seScge1xuICAgICAgLy8gT25seSBuYW1lZCBtZWRpYSBxdWVyaWVzIGNhbiBoYXZlIGFuIFwib25seVwiIHJhbmdlXG4gICAgICBAaWYgJG5hbWVkID09IHRydWUge1xuICAgICAgICAvLyBPbmx5IHVzZSBcIm1pbi13aWR0aFwiIGlmIHRoZSBmbG9vciBpcyBncmVhdGVyIHRoYW4gMFxuICAgICAgICBAaWYgJGJwID4gMGVtIHtcbiAgICAgICAgICAkc3RyOiAkc3RyICsgJyhtaW4td2lkdGg6ICN7JGJwfSknO1xuXG4gICAgICAgICAgLy8gT25seSBhZGQgXCJhbmRcIiB0byB0aGUgbWVkaWEgcXVlcnkgaWYgdGhlcmUncyBhIGNlaWxpbmdcbiAgICAgICAgICBAaWYgJGJwLW1heCAhPSBudWxsIHtcbiAgICAgICAgICAgICRzdHI6ICRzdHIgKyAnIGFuZCAnO1xuICAgICAgICAgIH1cbiAgICAgICAgfVxuXG4gICAgICAgIC8vIE9ubHkgdXNlIFwibWF4LXdpZHRoXCIgaWYgdGhlcmUncyBhIGNlaWxpbmdcbiAgICAgICAgQGlmICRicC1tYXggIT0gbnVsbCB7XG4gICAgICAgICAgJHN0cjogJHN0ciArICcobWF4LXdpZHRoOiAjeyRicC1tYXh9KSc7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICAgIEBlbHNlIHtcbiAgICAgICAgQHdhcm4gJ2JyZWFrcG9pbnQoKTogT25seSBuYW1lZCBtZWRpYSBxdWVyaWVzIGNhbiBoYXZlIGFuIGBvbmx5YCByYW5nZS4nO1xuICAgICAgfVxuICAgIH1cblxuICAgIC8vIGBkb3duYCByYW5nZXMgdXNlIHRoZSBmb3JtYXQgYChtYXgtd2lkdGg6IG4pYFxuICAgIEBlbHNlIGlmICRkaXIgPT0gJ2Rvd24nIHtcbiAgICAgICRtYXg6IGlmKCRuYW1lZCwgJGJwLW1heCwgJGJwKTtcblxuICAgICAgLy8gU2tpcCBtZWRpYSBxdWVyeSBjcmVhdGlvbiBpZiBpbnB1dCB2YWx1ZSBpcyBleGFjdGx5IFwiMCBkb3duXCIsXG4gICAgICAvLyB1bmxlc3MgdGhlIGZ1bmN0aW9uIHdhcyBjYWxsZWQgYXMgXCJzbWFsbCBkb3duXCIsIGluIHdoaWNoIGNhc2UgaXQncyBqdXN0IFwic21hbGwgb25seVwiXG4gICAgICBAaWYgJG5hbWVkIG9yICRicCA+IDBlbSB7XG4gICAgICAgIEBpZiAkbWF4ICE9IG51bGwge1xuICAgICAgICAgICRzdHI6ICRzdHIgKyAnKG1heC13aWR0aDogI3skbWF4fSknO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuXG4gICAgLy8gYHVwYCByYW5nZXMgdXNlIHRoZSBmb3JtYXQgYChtaW4td2lkdGg6IG4pYFxuICAgIEBlbHNlIGlmICRicCA+IDBlbSB7XG4gICAgICAkc3RyOiAkc3RyICsgJyhtaW4td2lkdGg6ICN7JGJwfSknO1xuICAgIH1cbiAgfVxuXG4gIEByZXR1cm4gJHN0cjtcbn1cblxuLy8vIFdyYXBzIGEgbWVkaWEgcXVlcnkgYXJvdW5kIHRoZSBjb250ZW50IHlvdSBwdXQgaW5zaWRlIHRoZSBtaXhpbi4gVGhpcyBtaXhpbiBhY2NlcHRzIGEgbnVtYmVyIG9mIHZhbHVlczpcbi8vLyAgLSBJZiBhIHN0cmluZyBpcyBwYXNzZWQsIHRoZSBtaXhpbiB3aWxsIGxvb2sgZm9yIGl0IGluIHRoZSBgJGJyZWFrcG9pbnRzYCBtYXAsIGFuZCB1c2UgYSBtZWRpYSBxdWVyeSB0aGVyZS5cbi8vLyAgLSBJZiBhIHBpeGVsIHZhbHVlIGlzIHBhc3NlZCwgaXQgd2lsbCBiZSBjb252ZXJ0ZWQgdG8gYW4gZW0gdmFsdWUgdXNpbmcgYCRnbG9iYWwtZm9udC1zaXplYCBhcyB0aGUgYmFzZS5cbi8vLyAgLSBJZiBhIHJlbSB2YWx1ZSBpcyBwYXNzZWQsIHRoZSB1bml0IHdpbGwgYmUgY2hhbmdlZCB0byBlbS5cbi8vLyAgLSBJZiBhbiBlbSB2YWx1ZSBpcyBwYXNzZWQsIHRoZSB2YWx1ZSB3aWxsIGJlIHVzZWQgYXMtaXMuXG4vLy9cbi8vLyBAcGFyYW0ge0tleXdvcmR8TnVtYmVyfSAkdmFsdWUgLSBCcmVha3BvaW50IG5hbWUsIG9yIHB4LCByZW0sIG9yIGVtIHZhbHVlIHRvIHByb2Nlc3MuXG4vLy9cbi8vLyBAb3V0cHV0IElmIHRoZSBicmVha3BvaW50IGlzIFwiMHB4IGFuZCBsYXJnZXJcIiwgb3V0cHV0cyB0aGUgY29udGVudCBhcy1pcy4gT3RoZXJ3aXNlLCBvdXRwdXRzIHRoZSBjb250ZW50IHdyYXBwZWQgaW4gYSBtZWRpYSBxdWVyeS5cbkBtaXhpbiBicmVha3BvaW50KCR2YWx1ZSkge1xuICAkc3RyOiBicmVha3BvaW50KCR2YWx1ZSk7XG4gICRicDogaW5kZXgoJC16Zi1icmVha3BvaW50cy1rZXlzLCAkdmFsdWUpO1xuICAkcGJwOiBpbmRleCgkLXpmLWJyZWFrcG9pbnRzLWtleXMsICRwcmludC1icmVha3BvaW50KTtcblxuICAkb2xkLXpmLXNpemU6IG51bGw7XG5cbiAgLy8gTWFrZSBicmVha3BvaW50IHNpemUgYXZhaWxhYmxlIGFzIGEgdmFyaWFibGVcbiAgQGlmIGdsb2JhbC12YXJpYWJsZS1leGlzdHMoLXpmLXNpemUpIHtcbiAgICAkb2xkLXpmLXNpemU6ICQtemYtc2l6ZTtcbiAgfVxuICAkLXpmLXNpemU6IG50aCgkdmFsdWUsIDEpICFnbG9iYWw7IC8vIGdldCB0aGUgZmlyc3QgdmFsdWUgdG8gYWNjb3VudCBmb3IgYG9ubHlgIGFuZCBgZG93bmAga2V5d29yZHNcblxuICAvLyBJZiAkc3RyIGlzIHN0aWxsIGFuIGVtcHR5IHN0cmluZywgbm8gbWVkaWEgcXVlcnkgaXMgbmVlZGVkXG4gIEBpZiAkc3RyID09ICcnIHtcbiAgICBAY29udGVudDtcbiAgfVxuXG4gIC8vIE90aGVyd2lzZSwgd3JhcCB0aGUgY29udGVudCBpbiBhIG1lZGlhIHF1ZXJ5XG4gIEBlbHNlIHtcbiAgICAvLyBGb3IgbmFtZWQgYnJlYWtwb2ludHMgbGVzcyB0aGFuIG9yIGVxdWFsIHRvICRwcmludC1icmVha3BvaW50LCBhZGQgcHJpbnQgdG8gdGhlIG1lZGlhIHR5cGVzXG4gICAgQGlmICRicCAhPSBudWxsIGFuZCAkYnAgPD0gJHBicCB7XG4gICAgICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgI3skc3RyfSB7XG4gICAgICAgIEBjb250ZW50O1xuICAgICAgIH1cbiAgICB9XG4gICAgQGVsc2Uge1xuICAgICAgQG1lZGlhIHNjcmVlbiBhbmQgI3skc3RyfSB7XG4gICAgICAgIEBjb250ZW50O1xuICAgICAgfVxuICAgIH1cbiAgfVxuXG4gIEBpZiAkb2xkLXpmLXNpemUgIT0gbnVsbCB7XG4gICAgLy8gUmVzdG9yZSB0aGUgb2xkIGJyZWFrcG9pbnQgc2l6ZVxuICAgICQtemYtc2l6ZTogJG9sZC16Zi1zaXplICFnbG9iYWw7XG4gIH0gQGVsc2Uge1xuICAgICQtemYtc2l6ZTogbnVsbCAhZ2xvYmFsO1xuICB9XG59XG5cbi8vLyBDb252ZXJzIHRoZSBicmVha3BvaW50cyBtYXAgdG8gYSBVUkwtZW5jb2RlZCBzdHJpbmcsIGxpa2UgdGhpczogYGtleTE9dmFsdWUxJmtleTI9dmFsdWUyYC4gVGhlIHZhbHVlIGlzIHRoZW4gZHJvcHBlZCBpbnRvIHRoZSBDU1MgZm9yIGEgc3BlY2lhbCBgPG1ldGE+YCB0YWcsIHdoaWNoIGlzIHJlYWQgYnkgdGhlIEZvdW5kYXRpb24gSmF2YVNjcmlwdC4gVGhpcyBpcyBob3cgd2UgdHJhbnNmZXIgdmFsdWVzIGZyb20gU2FzcyB0byBKYXZhU2NyaXB0LCBzbyB0aGV5IGNhbiBiZSBkZWZpbmVkIGluIG9uZSBwbGFjZS5cbi8vLyBAYWNjZXNzIHByaXZhdGVcbi8vL1xuLy8vIEBwYXJhbSB7TWFwfSAkbWFwIC0gTWFwIHRvIGNvbnZlcnQuXG4vLy9cbi8vLyBAcmV0dXJucyB7U3RyaW5nfSBBIHN0cmluZyBjb250YWluaW5nIHRoZSBtYXAncyBjb250ZW50cy5cbkBmdW5jdGlvbiAtemYtYnAtc2VyaWFsaXplKCRtYXApIHtcbiAgJHN0cjogJyc7XG4gIEBlYWNoICRrZXksICR2YWx1ZSBpbiAkbWFwIHtcbiAgICAkc3RyOiAkc3RyICsgJGtleSArICc9JyArIC16Zi1icC10by1lbSgkdmFsdWUpICsgJyYnO1xuICB9XG4gICRzdHI6IHN0ci1zbGljZSgkc3RyLCAxLCAtMik7XG5cbiAgQHJldHVybiAkc3RyO1xufVxuXG4vLy8gRmluZCB0aGUgbmV4dCBrZXkgaW4gYSBtYXAuXG4vLy8gQGFjY2VzcyBwcml2YXRlXG4vLy9cbi8vLyBAcGFyYW0ge01hcH0gJG1hcCAtIE1hcCB0byB0cmF2ZXJzZS5cbi8vLyBAcGFyYW0ge01peGVkfSAka2V5IC0gS2V5IHRvIHVzZSBhcyBhIHN0YXJ0aW5nIHBvaW50LlxuLy8vXG4vLy8gQHJldHVybnMge01peGVkfSBUaGUgdmFsdWUgZm9yIHRoZSBrZXkgYWZ0ZXIgYCRrZXlgLCBpZiBgJGtleWAgd2FzIGZvdW5kLiBJZiBgJGtleWAgd2FzIG5vdCBmb3VuZCwgb3IgYCRrZXlgIHdhcyB0aGUgbGFzdCB2YWx1ZSBpbiB0aGUgbWFwLCByZXR1cm5zIGBudWxsYC5cbkBmdW5jdGlvbiAtemYtbWFwLW5leHQoJG1hcCwgJGtleSkge1xuXG4gIC8vIFN0b3JlIHRoZSBrZXlzIG9mIHRoZSBtYXAgYXMgYSBsaXN0XG4gICR2YWx1ZXM6IG1hcC1rZXlzKCRtYXApO1xuXG4gICRpOiAwO1xuXG4gIC8vIElmIHRoZSBLZXkgRXhpc3RzLCBHZXQgdGhlIGluZGV4IG9mIHRoZSBrZXkgd2l0aGluIHRoZSBtYXAgYW5kIGFkZCAxIHRvIGl0IGZvciB0aGUgbmV4dCBicmVha3BvaW50IGluIHRoZSBtYXBcbiAgQGlmIChtYXAtaGFzLWtleSgkbWFwLCAka2V5KSkge1xuICAgICRpOiBpbmRleCgkdmFsdWVzLCAka2V5KSArIDE7XG4gIH1cblxuICAvLyBJZiB0aGUga2V5IGRvZXNuJ3QgZXhpc3QsIG9yIGl0J3MgdGhlIGxhc3Qga2V5IGluIHRoZSBtYXAsIHJldHVybiBudWxsXG4gIEBpZiAoJGkgPiBsZW5ndGgoJG1hcCkgb3IgJGkgPT0gMCkge1xuICAgIEByZXR1cm4gbnVsbDtcbiAgfVxuICAvLyBPdGhlcndpc2UsIHJldHVybiB0aGUgdmFsdWVcbiAgQGVsc2Uge1xuICAgIEByZXR1cm4gbWFwLWdldCgkbWFwLCBudGgoJHZhbHVlcywgJGkpKTtcbiAgfVxuXG59XG5cbi8vLyBSZXR1cm4gYSBsaXN0IG9mIG91ciBuYW1lZCBicmVha3BvaW50cyBsZXNzIHRoYW4gJGtleS4gVXNlZnVsIGZvciBkZWFsaW5nIHdpdGhcbi8vLyByZXNwb25zaXZlIGd1dHRlcnMgZm9yIHRoZSBncmlkLlxuLy8vIEBhY2Nlc3MgcHJpdmF0ZVxuLy8vXG4vLy8gQHBhcmFtIHtTdHJpbmd9ICRrZXkgLSBLZXkgdG8gdXNlIGFzIGxhc3QgYnJlYWtwb2ludC5cbi8vL1xuLy8vIEByZXR1cm5zIHtBcnJheX0gVGhlIGxpc3Qgb2YgYnJlYWtwb2ludHMgdXAgdG8gYW5kLiBJZiAka2V5IGlzIGF1dG8sIHJldHVybnMgYnJlYWtwb2ludHMgYWJvdmUgdGhlIHplcm9cbkBmdW5jdGlvbiAtemYtYnJlYWtwb2ludHMtbGVzcy10aGFuKCRrZXkpIHtcbiAgJGxpc3Q6ICgpO1xuICAkZm91bmRfa2V5OiBmYWxzZTtcblxuICBAZWFjaCAkbmFtZSBpbiAkLXpmLWJyZWFrcG9pbnRzLWtleXMge1xuICAgIEBpZiAoJG5hbWUgPT0gJGtleSkge1xuICAgICAgJGZvdW5kX2tleTogdHJ1ZTtcbiAgICB9XG4gICAgQGlmIG5vdCAkZm91bmRfa2V5IHtcbiAgICAgICRsaXN0OiBhcHBlbmQoJGxpc3QsICRuYW1lKTtcbiAgICB9XG4gIH1cbiAgQHJldHVybiAkbGlzdDtcbn1cblxuLy8vIFJldHVybiBhIGxpc3Qgb2Ygb3VyIG5hbWVkIGJyZWFrcG9pbnRzIGxlc3MgdGhhbiAka2V5LiBVc2VmdWwgZm9yIGRlYWxpbmcgd2l0aFxuLy8vIHJlc3BvbnNpdmUgZ3V0dGVycyBmb3IgdGhlIGdyaWQuXG4vLy8gQGFjY2VzcyBwcml2YXRlXG4vLy9cbi8vLyBAcGFyYW0ge1N0cmluZ30gJGJyZWFrcG9pbmcgLSBhIG5hbWVkIG9yIG5vbi1uYW1lZCBicmVha3BvaW5nLlxuLy8vXG4vLy8gQHJldHVybnMge0FycmF5fSBUaGUgbGlzdCBvZiBicmVha3BvaW50cyB1cCB0byBhbmQuIElmICRrZXkgaXMgYXV0bywgcmV0dXJucyBicmVha3BvaW50cyBhYm92ZSB0aGUgemVyb1xuQGZ1bmN0aW9uIC16Zi1jbG9zZXN0LW5hbWVkLWJyZWFrcG9pbnQoJGJyZWFrcG9pbnQpIHtcbiAgJGxhc3Q6ICQtemYtemVyby1icmVha3BvaW50O1xuICAkZm91bmQ6IGZhbHNlO1xuXG4gICR2YWx1ZTogdW5pdGxlc3MtY2FsYygkYnJlYWtwb2ludCwgMXB4KTtcbiAgQGVhY2ggJGtleSwgJHZhbCBpbiAkYnJlYWtwb2ludHMge1xuICAgIEBpZiBub3QgJGZvdW5kIHtcbiAgICAgIEBpZiB1bml0bGVzcy1jYWxjKCR2YWwpID4gJHZhbHVlIHtcbiAgICAgICAgJGZvdW5kOiB0cnVlO1xuICAgICAgfSBAZWxzZSB7XG4gICAgICAgICRsYXN0OiAka2V5O1xuICAgICAgfVxuICAgIH1cbiAgfVxuXG4gIEByZXR1cm4gJGxhc3Q7XG59XG5cbi8vLyBHZXQgYSB2YWx1ZSBmb3IgYSBicmVha3BvaW50IGZyb20gYSByZXNwb25zaXZlIGNvbmZpZyBtYXAgb3Igc2luZ2xlIHZhbHVlLlxuLy8vIC0gSWYgdGhlIGNvbmZpZyBpcyBhIHNpbmdsZSB2YWx1ZSwgcmV0dXJuIGl0IHJlZ2FyZGxlc3Mgb2YgYCR2YWx1ZWAuXG4vLy8gLSBJZiB0aGUgY29uZmlnIGlzIGEgbWFwIGFuZCBoYXMgdGhlIGtleSBgJHZhbHVlYCwgdGhlIGV4YWN0IGJyZWFrcG9pbnQgdmFsdWUgaXMgcmV0dXJuZWQuXG4vLy8gLSBJZiB0aGUgY29uZmlnIGlzIGEgbWFwIGFuZCBkb2VzICpub3QqIGhhdmUgdGhlIGJyZWFrcG9pbnQsIHRoZSB2YWx1ZSBtYXRjaGluZyB0aGUgbmV4dCBsb3dlc3QgYnJlYWtwb2ludCBpbiB0aGUgY29uZmlnIG1hcCBpcyByZXR1cm5lZC5cbi8vLyBAYWNjZXNzIHByaXZhdGVcbi8vL1xuLy8vIEBwYXJhbSB7TnVtYmVyfE1hcH0gJG1hcCAtIFJlc3BvbnNpdmUgY29uZmlnIG1hcCBvciBzaW5nbGUgdmFsdWUuXG4vLy8gQHBhcmFtIHtLZXl3b3JkfSAkdmFsdWUgLSBCcmVha3BvaW50IG5hbWUgdG8gdXNlLlxuLy8vXG4vLy8gQHJldHVybiB7TWl4ZWR9IFRoZSBjb3JyZXNwb25kaW5nIGJyZWFrcG9pbnQgdmFsdWUuXG5AZnVuY3Rpb24gLXpmLWdldC1icC12YWwoJG1hcCwgJHZhbHVlKSB7XG4gIC8vIElmIHRoZSBnaXZlbiBtYXAgaXMgYSBzaW5nbGUgdmFsdWUsIHJldHVybiBpdFxuICBAaWYgdHlwZS1vZigkbWFwKSA9PSAnbnVtYmVyJyB7XG4gICAgQHJldHVybiAkbWFwO1xuICB9XG5cblxuICAvLyBDaGVjayBpZiB0aGUgYnJlYWtwb2ludCBuYW1lIGV4aXN0cyBnbG9iYWxseVxuICBAaWYgbm90IG1hcC1oYXMta2V5KCRicmVha3BvaW50cywgJHZhbHVlKSB7XG4gICAgQGlmIHR5cGUtb2YoJHZhbHVlKSA9PSAnbnVtYmVyJyB7XG4gICAgICAkdmFsdWU6IC16Zi1jbG9zZXN0LW5hbWVkLWJyZWFrcG9pbnQoJHZhbHVlKTtcbiAgICB9IEBlbHNlIHtcbiAgICAgIEByZXR1cm4gbnVsbDtcbiAgICB9XG4gIH1cbiAgLy8gQ2hlY2sgaWYgdGhlIGJyZWFrcG9pbnQgbmFtZSBleGlzdHMgaW4gdGhlIGxvY2FsIGNvbmZpZyBtYXBcbiAgQGVsc2UgaWYgbWFwLWhhcy1rZXkoJG1hcCwgJHZhbHVlKSB7XG4gICAgLy8gSWYgaXQgZG9lcywganVzdCByZXR1cm4gdGhlIHZhbHVlXG4gICAgQHJldHVybiBtYXAtZ2V0KCRtYXAsICR2YWx1ZSk7XG4gIH1cbiAgLy8gT3RoZXJ3aXNlLCBmaW5kIHRoZSBuZXh0IGxvd2VzdCBicmVha3BvaW50IGFuZCByZXR1cm4gdGhhdCB2YWx1ZVxuICBAZWxzZSB7XG4gICAgJGFuY2hvcjogbnVsbDtcbiAgICAkZm91bmQ6IGZhbHNlO1xuXG4gICAgQGVhY2ggJGtleSwgJHZhbCBpbiAkYnJlYWtwb2ludHMge1xuICAgICAgQGlmIG5vdCAkZm91bmQge1xuICAgICAgICBAaWYgbWFwLWhhcy1rZXkoJG1hcCwgJGtleSkge1xuICAgICAgICAgICRhbmNob3I6ICRrZXk7XG4gICAgICAgIH1cbiAgICAgICAgQGlmICRrZXkgPT0gJHZhbHVlIHtcbiAgICAgICAgICAkZm91bmQ6IHRydWU7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG5cbiAgICBAcmV0dXJuIG1hcC1nZXQoJG1hcCwgJGFuY2hvcik7XG4gIH1cbn1cblxuJHNtYWxsLXVwOiAnJztcbiRzbWFsbC1vbmx5OiAnJztcblxuQGlmIG1hcC1oYXMta2V5KCRicmVha3BvaW50cywgc21hbGwpIHtcbiAgJHNtYWxsLXVwOiBzY3JlZW47XG4gICRzbWFsbC1vbmx5OiB1bnF1b3RlKCdzY3JlZW4gYW5kICN7YnJlYWtwb2ludChzbWFsbCBvbmx5KX0nKTtcbn1cblxuJG1lZGl1bS11cDogJyc7XG4kbWVkaXVtLW9ubHk6ICcnO1xuXG5AaWYgbWFwLWhhcy1rZXkoJGJyZWFrcG9pbnRzLCBtZWRpdW0pIHtcbiAgJG1lZGl1bS11cDogdW5xdW90ZSgnc2NyZWVuIGFuZCAje2JyZWFrcG9pbnQobWVkaXVtKX0nKTtcbiAgJG1lZGl1bS1vbmx5OiB1bnF1b3RlKCdzY3JlZW4gYW5kICN7YnJlYWtwb2ludChtZWRpdW0gb25seSl9Jyk7XG59XG5cbiRsYXJnZS11cDogJyc7XG4kbGFyZ2Utb25seTogJyc7XG5cbkBpZiBtYXAtaGFzLWtleSgkYnJlYWtwb2ludHMsIGxhcmdlKSB7XG4gICRsYXJnZS11cDogdW5xdW90ZSgnc2NyZWVuIGFuZCAje2JyZWFrcG9pbnQobGFyZ2UpfScpO1xuICAkbGFyZ2Utb25seTogdW5xdW90ZSgnc2NyZWVuIGFuZCAje2JyZWFrcG9pbnQobGFyZ2Ugb25seSl9Jyk7XG59XG5cbiR4bGFyZ2UtdXA6ICcnO1xuJHhsYXJnZS1vbmx5OiAnJztcblxuQGlmIG1hcC1oYXMta2V5KCRicmVha3BvaW50cywgeGxhcmdlKSB7XG4gICR4bGFyZ2UtdXA6IHVucXVvdGUoJ3NjcmVlbiBhbmQgI3ticmVha3BvaW50KHhsYXJnZSl9Jyk7XG4gICR4bGFyZ2Utb25seTogdW5xdW90ZSgnc2NyZWVuIGFuZCAje2JyZWFrcG9pbnQoeGxhcmdlIG9ubHkpfScpO1xufVxuXG4keHhsYXJnZS11cDogJyc7XG5cbkBpZiBtYXAtaGFzLWtleSgkYnJlYWtwb2ludHMsIHh4bGFyZ2UpIHtcbiAgJHh4bGFyZ2UtdXA6IHVucXVvdGUoJ3NjcmVlbiBhbmQgI3ticmVha3BvaW50KHh4bGFyZ2UpfScpO1xufVxuIiwiLy8gRm91bmRhdGlvbiBmb3IgU2l0ZXMgYnkgWlVSQlxuLy8gZm91bmRhdGlvbi56dXJiLmNvbVxuLy8gTGljZW5zZWQgdW5kZXIgTUlUIE9wZW4gU291cmNlXG5cbi8vLy9cbi8vLyBAZ3JvdXAgeHktZ3JpZFxuLy8vL1xuXG4vLy8gQ2FsY3VsYXRlIHRoZSBwZXJjZW50YWdlIHNpemUgb2YgYSBjZWxsLlxuLy8vXG4vLy8gQHBhcmFtIHtOdW1iZXJ8TGlzdH0gJHNpemUgWyRncmlkLWNvbHVtbnNdIC0gU2l6ZSB0byBtYWtlIHRoZSBjZWxsLiBZb3UgY2FuIHBhc3MgYSB2YWx1ZSBpbiBtdWx0aXBsZSBmb3JtYXRzLCBzdWNoIGFzIGA2YCwgYDUwJWAsIGAxIG9mIDIgb3IgMS8zLlxuQGZ1bmN0aW9uIHh5LWNlbGwtc2l6ZShcbiAgJHNpemU6ICRncmlkLWNvbHVtbnNcbikge1xuICAvLyBQYXJzaW5nIHBlcmNlbnRzLCBkZWNpbWFscywgbiBvZiBuIGFuZCBudW1iZXIgY291bnRzXG4gIEBpZiB0eXBlLW9mKCRzaXplKSA9PSAnbnVtYmVyJyB7XG4gICAgQGlmIHVuaXQoJHNpemUpID09ICclJyB7XG4gICAgICAkc2l6ZTogJHNpemU7XG4gICAgfVxuICAgIEBlbHNlIGlmICRzaXplIDwgMSB7XG4gICAgICAkc2l6ZTogcGVyY2VudGFnZSgkc2l6ZSk7XG4gICAgfVxuICAgIEBlbHNlIHtcbiAgICAgICRzaXplOiBwZXJjZW50YWdlKCRzaXplIC8gJGdyaWQtY29sdW1ucyk7XG4gICAgfVxuICB9XG5cbiAgLy8gUGFyc2luZyBcIm4gb2YgblwiIG9yIFwibi9uXCIgZXhwcmVzc2lvbnNcbiAgQGVsc2VpZiB0eXBlLW9mKCRzaXplKSA9PSAnbGlzdCcge1xuICAgIEBpZiBsZW5ndGgoJHNpemUpICE9IDMge1xuICAgICAgQGVycm9yICdXcm9uZyBzeW50YXggZm9yIHh5LWNlbGwtc2l6ZSgpLiBVc2UgdGhlIGZvcm1hdCBcIm4gb2YgblwiIG9yIFwibi9uXCIuJztcbiAgICB9XG4gICAgQGVsc2Uge1xuICAgICAgJHNpemU6IHBlcmNlbnRhZ2UobnRoKCRzaXplLCAxKSAvIG50aCgkc2l6ZSwgMykpO1xuICAgIH1cbiAgfVxuICAvLyBBbnl0aGluZyBlbHNlIGlzIGluY29ycmVjdFxuICBAZWxzZSB7XG4gICAgQGVycm9yICdXcm9uZyBzeW50YXggZm9yIHh5LWNlbGwtc2l6ZSgpLiBVc2UgYSBudW1iZXIsIGRlY2ltYWwsIHBlcmNlbnRhZ2UsIG9yIFwibiBvZiBuXCIgLyBcIm4vblwiLic7XG4gIH1cblxuICBAcmV0dXJuICRzaXplO1xufVxuXG4vLy8gU2V0cyBiYXNlIGZsZXggcHJvcGVydGllcyBmb3IgY2VsbHMuXG4vLy9cbi8vLyBAcGFyYW0ge0tleXdvcmR9ICRzaXplIFtmdWxsXSAtIFRoZSBzaXplIG9mIHlvdXIgY2VsbC4gQWNjZXB0cyBgZnVsbGAsIGBhdXRvYCwgYHNocmlua2Agb3IgYGdyb3dgLlxuQG1peGluIHh5LWNlbGwtYmFzZSgkc2l6ZTogZnVsbCkge1xuICBAaWYoJHNpemUgPT0gJ2Z1bGwnKSB7XG4gICAgLy8gVGhpcyBpcyB0aGUgYmFzZSBzdHlsZSwgYWxsIG90aGVycyBpbmhlcml0IGZyb20gaXRcbiAgICBmbGV4OiAwIDAgYXV0bztcbiAgICBtaW4taGVpZ2h0OiAwcHg7XG4gICAgbWluLXdpZHRoOiAwcHg7XG4gIH1cbiAgQGVsc2VpZiAoJHNpemUgPT0gJ2F1dG8nKSB7XG4gICAgZmxleDogMSAxIDBweDsgLy8gc2Fzcy1saW50OmRpc2FibGUtbGluZSB6ZXJvLXVuaXRcbiAgfVxuICBAZWxzZWlmICgkc2l6ZSA9PSAnc2hyaW5rJykge1xuICAgIGZsZXg6IDAgMCBhdXRvO1xuICB9XG4gIEBlbHNlaWYgKCRzaXplID09ICdncm93Jykge1xuICAgIGZsZXg6IDEgMCBhdXRvO1xuICB9XG59XG5cbi8vLyBSZXNldHMgYSBjZWxscyB3aWR0aCAob3IgaGVpZ2h0IGlmIHZlcnRpY2FsIGlzIHRydWUpIGFzIHdlbGwgYXMgc3RyaXBzIGl0cyBndXR0ZXJzLlxuLy8vXG4vLy8gQHBhcmFtIHtCb29sZWFufSAkdmVydGljYWwgW2ZhbHNlXSAtIFNldCB0byB0cnVlIHRvIG91dHB1dCB2ZXJ0aWNhbCAoaGVpZ2h0KSBzdHlsZXMgcmF0aGVyIHRoYW4gd2lkdGhzLlxuQG1peGluIHh5LWNlbGwtcmVzZXQoJHZlcnRpY2FsOiB0cnVlKSB7XG4gICRkaXJlY3Rpb246IGlmKCR2ZXJ0aWNhbCA9PSB0cnVlLCB3aWR0aCwgaGVpZ2h0KTtcbiAgI3skZGlyZWN0aW9ufTogYXV0bztcbiAgbWF4LSN7JGRpcmVjdGlvbn06IG5vbmU7XG59XG5cbi8vIFNldHMgb3VyIGNlbGwgd2lkdGhzIG9yIGhlaWdodHMgZGVwZW5kaW5nIG9uIGd1dHRlciB0eXBlLlxuQG1peGluIC14eS1jZWxsLXByb3BlcnRpZXMoJHNpemUsICRtYXJnaW4tZ3V0dGVyLCAkdmVydGljYWwpIHtcbiAgJGRpcmVjdGlvbjogaWYoJHZlcnRpY2FsID09IHRydWUsIGhlaWdodCwgd2lkdGgpO1xuICBAaWYoJHNpemUgPT0gJ2Z1bGwnKSB7XG4gICAgJHZhbDogaWYoJG1hcmdpbi1ndXR0ZXIgPT0gMCwgMTAwJSwgY2FsYygxMDAlIC0gI3tyZW0tY2FsYygkbWFyZ2luLWd1dHRlcil9KSk7XG4gICAgI3skZGlyZWN0aW9ufTogJHZhbDtcbiAgfVxuICBAZWxzZWlmICgkc2l6ZSA9PSAnYXV0bycpIHtcbiAgICAjeyRkaXJlY3Rpb259OiBhdXRvO1xuICAgICR2YWw6IGlmKCRtYXJnaW4tZ3V0dGVyID09IDAsIDEwMCUsIGNhbGMoMTAwJSAtICN7cmVtLWNhbGMoJG1hcmdpbi1ndXR0ZXIpfSkpO1xuICB9XG4gIEBlbHNlaWYgKCRzaXplID09ICdzaHJpbmsnKSB7XG4gICAgI3skZGlyZWN0aW9ufTogYXV0bztcbiAgfVxuICBAZWxzZSB7XG4gICAgJHZhbDogaWYoJG1hcmdpbi1ndXR0ZXIgPT0gMCwgI3t4eS1jZWxsLXNpemUoJHNpemUpfSwgY2FsYygje3h5LWNlbGwtc2l6ZSgkc2l6ZSl9IC0gI3tyZW0tY2FsYygkbWFyZ2luLWd1dHRlcil9KSk7XG4gICAgI3skZGlyZWN0aW9ufTogJHZhbDtcbiAgfVxufVxuXG4vLy8gQ3JlYXRlcyBhIGNlbGwgZm9yIHlvdXIgZ3JpZC5cbi8vL1xuLy8vIEBwYXJhbSB7S2V5d29yZHxOdW1iZXJ9ICRzaXplIFtmdWxsXSAtIFRoZSBzaXplIG9mIHlvdXIgY2VsbC4gQ2FuIGJlIGBmdWxsYCAoZGVmYXVsdCkgZm9yIDEwMCUgd2lkdGgsIGBhdXRvYCB0byB1c2UgdXAgYXZhaWxhYmxlIHNwYWNlIGFuZCBgc2hyaW5rYCB0byB1c2UgdXAgb25seSByZXF1aXJlZCBzcGFjZS5cbi8vLyBAcGFyYW0ge0Jvb2xlYW59ICRndXR0ZXItb3V0cHV0IFt0cnVlXSAtIFdoZXRoZXIgb3Igbm90IHRvIG91dHB1dCBndXR0ZXJzXG4vLy8gQHBhcmFtIHtOdW1iZXJ8TWFwfSAkZ3V0dGVycyBbJGdyaWQtbWFyZ2luLWd1dHRlcnNdIC0gTWFwIG9yIHNpbmdsZSB2YWx1ZSBmb3IgZ3V0dGVycy5cbi8vLyBAcGFyYW0ge0tleXdvcmR9ICRndXR0ZXItdHlwZSBbbWFyZ2luXSAtIE1hcCBvciBzaW5nbGUgdmFsdWUgZm9yIGd1dHRlcnMuXG4vLy8gQHBhcmFtIHtMaXN0fSAkZ3V0dGVyLXBvc2l0aW9uIFtyaWdodCBsZWZ0XSAtIFRoZSBwb3NpdGlvbiB0byBhcHBseSBndXR0ZXJzIHRvLiBBY2NlcHRzIGB0b3BgLCBgYm90dG9tYCwgYGxlZnRgLCBgcmlnaHRgIGluIGFueSBjb21iaW5hdGlvbi5cbi8vLyBAcGFyYW0ge1N0cmluZ30gJGJyZWFrcG9pbnQgW251bGxdIC0gVGhlIG5hbWUgb2YgdGhlIGJyZWFrcG9pbnQgc2l6ZSBpbiB5b3VyIGd1dHRlcnMgbWFwIHRvIGdldCB0aGUgc2l6ZSBmcm9tLiBJZiB1c2luZyB3aXRoIHRoZSBgYnJlYWtwb2ludCgpYCBtaXhpbiB0aGlzIHdpbGwgYmUgc2V0IGF1dG9tYXRpY2FsbHkgdW5sZXNzIG1hbnVhbGx5IGVudGVyZWQuXG4vLy8gQHBhcmFtIHtCb29sZWFufSAkdmVydGljYWwgW2ZhbHNlXSAtIFNldCB0byB0cnVlIHRvIG91dHB1dCB2ZXJ0aWNhbCAoaGVpZ2h0KSBzdHlsZXMgcmF0aGVyIHRoYW4gd2lkdGhzLlxuQG1peGluIHh5LWNlbGwoXG4gICRzaXplOiBmdWxsLFxuICAkZ3V0dGVyLW91dHB1dDogdHJ1ZSxcbiAgJGd1dHRlcnM6ICRncmlkLW1hcmdpbi1ndXR0ZXJzLFxuICAkZ3V0dGVyLXR5cGU6IG1hcmdpbixcbiAgJGd1dHRlci1wb3NpdGlvbjogcmlnaHQgbGVmdCxcbiAgJGJyZWFrcG9pbnQ6IG51bGwsXG4gICR2ZXJ0aWNhbDogZmFsc2Vcbikge1xuICBAaWYoJGJyZWFrcG9pbnQgPT0gbnVsbCkge1xuICAgIC8vIElmIGAkYnAtc2l6ZWAgaXMgYXZhaWxhYmxlIHRoZW4gdXNlIHRoaXMsIG90aGVyd2lzZSByZXZlcnQgdG8gdGhlIHNtYWxsZXN0IGJwLlxuICAgIEBpZih2YXJpYWJsZS1leGlzdHMoLXpmLXNpemUpIGFuZCB0eXBlLW9mKCQtemYtc2l6ZSkgIT0gJ251bWJlcicpIGFuZCAkLXpmLXNpemUgIT0gbnVsbCB7XG4gICAgICAkYnJlYWtwb2ludDogJC16Zi1zaXplO1xuICAgIH1cbiAgICBAZWxzZSB7XG4gICAgICAkYnJlYWtwb2ludDogJC16Zi16ZXJvLWJyZWFrcG9pbnQ7XG4gICAgfVxuICB9XG5cbiAgLy8gR2V0IG91ciBndXR0ZXJzIGZyb20gbWFwIGlmIGF2YWlsYWJsZSwgaWYgbm90IG1hcCBqdXN0IHJldHVybiB0aGUgdmFsdWUuXG4gICRndXR0ZXI6IC16Zi1nZXQtYnAtdmFsKCRndXR0ZXJzLCAkYnJlYWtwb2ludCk7XG5cbiAgLy8gQmFzZSBmbGV4IHByb3BlcnRpZXNcbiAgQGluY2x1ZGUgeHktY2VsbC1iYXNlKCRzaXplKTtcblxuICBAaWYoJGd1dHRlci10eXBlID09ICdtYXJnaW4nKSB7XG4gICAgQGluY2x1ZGUgLXh5LWNlbGwtcHJvcGVydGllcygkc2l6ZSwgJGd1dHRlciwgJHZlcnRpY2FsKTtcbiAgfVxuICBAZWxzZSB7XG4gICAgQGluY2x1ZGUgLXh5LWNlbGwtcHJvcGVydGllcygkc2l6ZSwgMCwgJHZlcnRpY2FsKTtcbiAgfVxuXG4gIEBpZiAkZ3V0dGVyLW91dHB1dCB7XG4gICAgQGluY2x1ZGUgeHktZ3V0dGVycygkZ3V0dGVyLCAkZ3V0dGVyLXR5cGUsICRndXR0ZXItcG9zaXRpb24pO1xuICB9XG59XG5cbi8vLyBDcmVhdGVzIGEgc2luZ2xlIGJyZWFrcG9pbnQgc2l6ZWQgZ3JpZC4gVXNlZCB0byBnZW5lcmF0ZSBvdXIgZ3JpZCBjbGFzc2VzLlxuLy8vXG4vLy8gQHBhcmFtIHtLZXl3b3JkfE51bWJlcn0gJHNpemUgW2Z1bGxdIC0gVGhlIHNpemUgb2YgeW91ciBjZWxsLiBDYW4gYmUgYGZ1bGxgIChkZWZhdWx0KSBmb3IgMTAwJSB3aWR0aCwgYGF1dG9gIHRvIHVzZSB1cCBhdmFpbGFibGUgc3BhY2UgYW5kIGBzaHJpbmtgIHRvIHVzZSB1cCBvbmx5IHJlcXVpcmVkIHNwYWNlLlxuLy8vIEBwYXJhbSB7Qm9vbGVhbn0gJGd1dHRlci1vdXRwdXQgW3RydWVdIC0gV2hldGhlciBvciBub3QgdG8gb3V0cHV0IGd1dHRlcnNcbi8vLyBAcGFyYW0ge051bWJlcnxNYXB9ICRndXR0ZXJzIFskZ3JpZC1tYXJnaW4tZ3V0dGVyc10gLSBNYXAgb3Igc2luZ2xlIHZhbHVlIGZvciBndXR0ZXJzLlxuLy8vIEBwYXJhbSB7S2V5d29yZH0gJGd1dHRlci10eXBlIFttYXJnaW5dIC0gTWFwIG9yIHNpbmdsZSB2YWx1ZSBmb3IgZ3V0dGVycy5cbi8vLyBAcGFyYW0ge1N0cmluZ30gJGJyZWFrcG9pbnQgW251bGxdIC0gVGhlIG5hbWUgb2YgdGhlIGJyZWFrcG9pbnQgc2l6ZSBpbiB5b3VyIGd1dHRlcnMgbWFwIHRvIGdldCB0aGUgc2l6ZSBmcm9tLiBJZiB1c2luZyB3aXRoIHRoZSBgYnJlYWtwb2ludCgpYCBtaXhpbiB0aGlzIHdpbGwgYmUgc2V0IGF1dG9tYXRpY2FsbHkgdW5sZXNzIG1hbnVhbGx5IGVudGVyZWQuXG4vLy8gQHBhcmFtIHtCb29sZWFufSAkdmVydGljYWwgW2ZhbHNlXSAtIFNldCB0byB0cnVlIHRvIG91dHB1dCB2ZXJ0aWNhbCAoaGVpZ2h0KSBzdHlsZXMgcmF0aGVyIHRoYW4gd2lkdGhzLlxuQG1peGluIHh5LWNlbGwtc3RhdGljKFxuICAkc2l6ZTogZnVsbCxcbiAgJGd1dHRlci1vdXRwdXQ6IHRydWUsXG4gICRndXR0ZXJzOiAkZ3JpZC1tYXJnaW4tZ3V0dGVycyxcbiAgJGd1dHRlci10eXBlOiBtYXJnaW4sXG4gICRicmVha3BvaW50OiAkLXpmLXplcm8tYnJlYWtwb2ludCxcbiAgJHZlcnRpY2FsOiBmYWxzZVxuKSB7XG5cbiAgJGd1dHRlcjogLXpmLWdldC1icC12YWwoJGd1dHRlcnMsICRicmVha3BvaW50KTtcbiAgJGd1dHRlci1wb3NpdGlvbjogaWYoJHZlcnRpY2FsID09IHRydWUsIHRvcCBib3R0b20sIGxlZnQgcmlnaHQpO1xuXG4gIEBpZigkZ3V0dGVyLXR5cGUgPT0gJ21hcmdpbicpIHtcbiAgICBAaW5jbHVkZSAteHktY2VsbC1wcm9wZXJ0aWVzKCRzaXplLCAkZ3V0dGVyLCAkdmVydGljYWwpO1xuICB9XG4gIEBlbHNlIHtcbiAgICBAaW5jbHVkZSAteHktY2VsbC1wcm9wZXJ0aWVzKCRzaXplLCAwLCAkdmVydGljYWwpO1xuICB9XG5cbiAgLy8gSWYgd2Ugd2FudCB0byBvdXRwdXQgdGhlIGd1dHRlcnNcbiAgQGlmKCRndXR0ZXItb3V0cHV0KSB7XG4gICAgLy8gVE9ETzogRmlndXJlIG91dCBpZiB3ZSBuZWVkIHRvIHBhc3MgYnJlYWtwb2ludCBpbiBoZXJlIHRvby5cbiAgICBAaW5jbHVkZSB4eS1ndXR0ZXJzKCRndXR0ZXIsICRndXR0ZXItdHlwZSwgJGd1dHRlci1wb3NpdGlvbik7XG4gIH1cbn1cbiIsIi8vIEZvdW5kYXRpb24gZm9yIFNpdGVzIGJ5IFpVUkJcbi8vIGZvdW5kYXRpb24uenVyYi5jb21cbi8vIExpY2Vuc2VkIHVuZGVyIE1JVCBPcGVuIFNvdXJjZVxuXG4vLy8vXG4vLy8gQGdyb3VwIHh5LWdyaWRcbi8vLy9cblxuLy8vIFNpemVzIGNoaWxkIGVsZW1lbnRzIHNvIHRoYXQgYCRuYCBudW1iZXIgb2YgaXRlbXMgYXBwZWFyIG9uIGVhY2ggcm93LlxuLy8vXG4vLy8gQHBhcmFtIHtOdW1iZXJ9ICRuIC0gTnVtYmVyIG9mIGVsZW1lbnRzIHRvIGRpc3BsYXkgcGVyIHJvdy5cbi8vLyBAcGFyYW0ge1N0cmluZ30gJHNlbGVjdG9yIFsnLmNlbGwnXSAtIFNlbGVjdG9yKHMpIHRvIHVzZSBmb3IgY2hpbGQgZWxlbWVudHMuXG4vLy8gQHBhcmFtIHtCb29sZWFufSAkZ3V0dGVyLW91dHB1dCBbdHJ1ZV0gLSBXaGV0aGVyIG9yIG5vdCB0byBvdXRwdXQgZ3V0dGVyc1xuLy8vIEBwYXJhbSB7TnVtYmVyfE1hcH0gJGd1dHRlcnMgWyRncmlkLW1hcmdpbi1ndXR0ZXJzXSAtIE1hcCBvciBzaW5nbGUgdmFsdWUgZm9yIGd1dHRlcnMuXG4vLy8gQHBhcmFtIHtLZXl3b3JkfSAkZ3V0dGVyLXR5cGUgW21hcmdpbl0gLSBUeXBlIG9mIGd1dHRlciB0byBvdXRwdXQuIEFjY2VwdHMgYG1hcmdpbmAgb3IgYHBhZGRpbmdgLlxuLy8vIEBwYXJhbSB7TGlzdH0gJGd1dHRlci1wb3NpdGlvbiBbcmlnaHQgbGVmdF0gLSBUaGUgcG9zaXRpb24gdG8gYXBwbHkgZ3V0dGVycyB0by4gQWNjZXB0cyBgdG9wYCwgYGJvdHRvbWAsIGBsZWZ0YCwgYHJpZ2h0YCBpbiBhbnkgY29tYmluYXRpb24uXG4vLy8gQHBhcmFtIHtCb29sZWFufSAkdmVydGljYWwgW2ZhbHNlXSAtIFNldCB0byB0cnVlIHRvIG91dHB1dCB2ZXJ0aWNhbCAoaGVpZ2h0KSBzdHlsZXMgcmF0aGVyIHRoYW4gd2lkdGhzLlxuQG1peGluIHh5LWdyaWQtbGF5b3V0KFxuICAkbixcbiAgJHNlbGVjdG9yOiAnLmNlbGwnLFxuICAkZ3V0dGVyLW91dHB1dDogdHJ1ZSxcbiAgJGd1dHRlcnM6ICRncmlkLW1hcmdpbi1ndXR0ZXJzLFxuICAkZ3V0dGVyLXR5cGU6IG1hcmdpbixcbiAgJGd1dHRlci1wb3NpdGlvbjogcmlnaHQgbGVmdCxcbiAgJGJyZWFrcG9pbnQ6ICQtemYtemVyby1icmVha3BvaW50LFxuICAkdmVydGljYWw6IGZhbHNlXG4pIHtcbiAgJHNpemU6IHBlcmNlbnRhZ2UoMS8kbik7XG5cbiAgJiA+ICN7JHNlbGVjdG9yfSB7XG4gICAgQGluY2x1ZGUgeHktY2VsbCgkc2l6ZSwgJGd1dHRlci1vdXRwdXQsICRndXR0ZXJzLCAkZ3V0dGVyLXR5cGUsICRndXR0ZXItcG9zaXRpb24sICRicmVha3BvaW50LCAkdmVydGljYWwpO1xuICB9XG59XG4iLCIvLyBGb3VuZGF0aW9uIGZvciBTaXRlcyBieSBaVVJCXG4vLyBmb3VuZGF0aW9uLnp1cmIuY29tXG4vLyBMaWNlbnNlZCB1bmRlciBNSVQgT3BlbiBTb3VyY2VcblxuLy8vL1xuLy8vIEBncm91cCB4eS1ncmlkXG4vLy8vXG5cbi8vLyBDb2xsYXBzZXMgdGhlIGdyaWQgYSBjZWxscyB3aXRoaW4gaXQuXG4vLy9cbi8vLyBAcGFyYW0ge1N0cmluZ30gJHNlbGVjdG9yIFsuY2VsbF0gLSBUaGUgY2hpbGQgZWxlbWVudCB0byByZW1vdmUgdGhlIGd1dHRlciBmcm9tLlxuLy8vIEBwYXJhbSB7S2V5d29yZH0gJGd1dHRlci10eXBlIFttYXJnaW5dIC0gVGhlIHR5cGUgb2YgZ3V0dGVyIHRvIHJlbW92ZS5cbi8vLyBAcGFyYW0ge0xpc3R9ICRndXR0ZXItcG9zaXRpb24gW3JpZ2h0IGxlZnRdIC0gVGhlIHBvc2l0aW9ucyB0byByZW1vdmUgZ3V0dGVycyBmcm9tLiBBY2NlcHRzIGB0b3BgLCBgYm90dG9tYCwgYGxlZnRgLCBgcmlnaHRgIGluIGFueSBjb21iaW5hdGlvbi5cbkBtaXhpbiB4eS1ncmlkLWNvbGxhcHNlKFxuICAkc2VsZWN0b3I6ICcuY2VsbCcsXG4gICRndXR0ZXItdHlwZTogbWFyZ2luLFxuICAkZ3V0dGVyLXBvc2l0aW9uOiByaWdodCBsZWZ0LFxuICAkbWluLWJyZWFrcG9pbnQ6ICQtemYtemVyby1icmVha3BvaW50XG4pIHtcbiAgLy8gRmlyc3QsIGxldHMgbmVnYXRlIGFueSBtYXJnaW5zIG9uIHRoZSB0b3AgbGV2ZWxcbiAgQGlmICgkZ3V0dGVyLXR5cGUgPT0gJ21hcmdpbicpIHtcblxuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoJG1pbi1icmVha3BvaW50KSB7XG4gICAgICBAZWFjaCAkdmFsdWUgaW4gJGd1dHRlci1wb3NpdGlvbiB7XG4gICAgICAgIG1hcmdpbi0jeyR2YWx1ZX06IDA7XG4gICAgICB9XG5cbiAgICAgID4gI3skc2VsZWN0b3J9IHtcbiAgICAgICAgQGVhY2ggJHZhbHVlIGluICRndXR0ZXItcG9zaXRpb24ge1xuICAgICAgICAgIG1hcmdpbi0jeyR2YWx1ZX06IDA7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG5cbiAgICAkZXhjbHVkZWQtYnBzOiAtemYtYnJlYWtwb2ludHMtbGVzcy10aGFuKCRtaW4tYnJlYWtwb2ludCk7XG5cbiAgICAvLyBPdXRwdXQgbmV3IHdpZHRocyB0byBub3QgaW5jbHVkZSBndXR0ZXJzXG4gICAgQGVhY2ggJGJwIGluICRicmVha3BvaW50LWNsYXNzZXMge1xuICAgICAgQGlmKHNsLWNvbnRhaW4oJGV4Y2x1ZGVkLWJwcywgJGJwKSkge1xuICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KCRtaW4tYnJlYWtwb2ludCkge1xuICAgICAgICAgIEBmb3IgJGkgZnJvbSAxIHRocm91Z2ggJGdyaWQtY29sdW1ucyB7XG4gICAgICAgICAgICAvLyBTaXppbmcgKHBlcmNlbnRhZ2UpXG4gICAgICAgICAgICA+IC4jeyRicH0tI3skaX0ge1xuICAgICAgICAgICAgICBAaW5jbHVkZSB4eS1jZWxsLXN0YXRpYygkaSwgJGd1dHRlci1vdXRwdXQ6IGZhbHNlLCAkZ3V0dGVyLXR5cGU6IHBhZGRpbmcpO1xuICAgICAgICAgICAgfVxuICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgfSBAZWxzZSB7XG4gICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoJGJwKSB7XG4gICAgICAgICAgQGZvciAkaSBmcm9tIDEgdGhyb3VnaCAkZ3JpZC1jb2x1bW5zIHtcbiAgICAgICAgICAgIC8vIFNpemluZyAocGVyY2VudGFnZSlcbiAgICAgICAgICAgID4gLiN7JGJwfS0jeyRpfSB7XG4gICAgICAgICAgICAgIEBpbmNsdWRlIHh5LWNlbGwtc3RhdGljKCRpLCAkZ3V0dGVyLW91dHB1dDogZmFsc2UsICRndXR0ZXItdHlwZTogcGFkZGluZyk7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICB9IFxuICAgIH1cbiAgfVxuICBAZWxzZSB7XG5cbiAgICBAaW5jbHVkZSBicmVha3BvaW50KCRtaW4tYnJlYWtwb2ludCkge1xuICAgICAgQGVhY2ggJHZhbHVlIGluICRndXR0ZXItcG9zaXRpb24ge1xuICAgICAgICBtYXJnaW4tI3skdmFsdWV9OiAwO1xuICAgICAgfVxuXG4gICAgICA+ICN7JHNlbGVjdG9yfSB7XG4gICAgICAgIEBlYWNoICR2YWx1ZSBpbiAkZ3V0dGVyLXBvc2l0aW9uIHtcbiAgICAgICAgICBwYWRkaW5nLSN7JHZhbHVlfTogMDtcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgfVxufVxuIiwiLy8gRm91bmRhdGlvbiBmb3IgU2l0ZXMgYnkgWlVSQlxuLy8gZm91bmRhdGlvbi56dXJiLmNvbVxuLy8gTGljZW5zZWQgdW5kZXIgTUlUIE9wZW4gU291cmNlXG5cbi8vLy9cbi8vLyBAZ3JvdXAgeHktZ3JpZFxuLy8vL1xuXG4vLy8gT2Zmc2V0cyBhIGNvbHVtbiB0byB0aGUgcmlnaHQvYm90dG9tIGJ5IGAkbmAgY29sdW1ucy5cbi8vL1xuLy8vIEBwYXJhbSB7TnVtYmVyfExpc3R9ICRuIC0gU2l6ZSB0byBvZmZzZXQgYnkuIFlvdSBjYW4gcGFzcyBpbiBhbnkgdmFsdWUgYWNjZXB0ZWQgYnkgdGhlIGB6Zi1jZWxsKClgIG1peGluLCBzdWNoIGFzIGA2YCwgYDUwJWAsIG9yIGAxIG9mIDJgLlxuLy8vIEBwYXJhbSB7Qm9vbGVhbn0gJHZlcnRpY2FsIFtmYWxzZV0gU2V0cyB0aGUgZGlyZWN0aW9uIG9mIHRoZSBvZmZzZXQuIElmIHNldCB0byB0cnVlIHdpbGwgYXBwbHkgbWFyZ2luLXRvcCBpbnN0ZWFkLlxuQG1peGluIHh5LWNlbGwtb2Zmc2V0KFxuICRuLFxuICRndXR0ZXJzOiAkZ3JpZC1tYXJnaW4tZ3V0dGVycyxcbiAkZ3V0dGVyLXR5cGU6IG1hcmdpbixcbiAkYnJlYWtwb2ludDogJC16Zi16ZXJvLWJyZWFrcG9pbnQsXG4gJHZlcnRpY2FsOiBmYWxzZVxuKSB7XG4gICRkaXJlY3Rpb246IGlmKCR2ZXJ0aWNhbCwgJ3RvcCcsICRnbG9iYWwtbGVmdCk7XG5cbiAgQGluY2x1ZGUgLXpmLWJyZWFrcG9pbnQtdmFsdWUoJGJyZWFrcG9pbnQsICRndXR0ZXJzKSB7XG4gICAgJGd1dHRlcjogcmVtLWNhbGMoJC16Zi1icC12YWx1ZSkgLyAyO1xuICAgICRzaXplOiBpZigkZ3V0dGVyLXR5cGUgPT0gJ21hcmdpbicsIGNhbGMoI3t4eS1jZWxsLXNpemUoJG4pfSArICN7JGd1dHRlcn0pLCAje3h5LWNlbGwtc2l6ZSgkbil9KTtcblxuICAgIG1hcmdpbi0jeyRkaXJlY3Rpb259OiAjeyRzaXplfTtcbiAgfVxufVxuIiwiLy8vIE1vZGlmaWVzIGEgZ3JpZCB0byBnaXZlIGl0IFwiZnJhbWVcIiBiZWhhdmlvciAobm8gb3ZlcmZsb3csIG5vIHdyYXAsIHN0cmV0Y2ggYmVoYXZpb3IpXG4vLy9cbi8vLyBAcGFyYW0ge0Jvb2xlYW59ICR2ZXJ0aWNhbCBbZmFsc2VdIC0gSXMgZ3JpZCB2ZXJ0aWNhbCBvciBob3Jpem9udGFsLiBTaG91bGQgbWF0Y2ggZ3JpZC5cbi8vLyBAcGFyYW0ge0Jvb2xlYW59ICRuZXN0ZWQgW2ZhbHNlXSAtIElzIGdyaWQgbmVzdGVkIG9yIG5vdC4gSWYgbmVzdGVkIGlzIHRydWUgdGhpcyBzZXRzIHRoZSBmcmFtZSB0byAxMDAlIGhlaWdodCwgb3RoZXJ3aXNlIHdpbGwgYmUgMTAwdmguXG4vLy8gQHBhcmFtIHtOdW1iZXJ8TWFwfSAkZ3V0dGVycyBbbnVsbF0gLSBNYXAgb3Igc2luZ2xlIHZhbHVlIGZvciBndXR0ZXJzLlxuLy8vIEBwYXJhbSB7U3RyaW5nfSAkYnJlYWtwb2ludCBbbnVsbF0gLSBUaGUgbmFtZSBvZiB0aGUgYnJlYWtwb2ludCBzaXplIGluIHlvdXIgZ3V0dGVycyBtYXAgdG8gZ2V0IHRoZSBzaXplIGZyb20uXG4vLy8gQHBhcmFtIHtCb29sZWFufSAkaW5jbHVkZS1iYXNlIFt0cnVlXSAtIEluY2x1ZGUgdGhlIGJhc2Ugc3R5bGVzIHRoYXQgZG9uJ3QgdmFyeSBwZXIgYnJlYWtwb2ludC5cbkBtaXhpbiB4eS1ncmlkLWZyYW1lKFxuICAkdmVydGljYWw6IGZhbHNlLFxuICAkbmVzdGVkOiBmYWxzZSxcbiAgJGd1dHRlcnM6IG51bGwsXG4gICRicmVha3BvaW50OiBudWxsLFxuICAkaW5jbHVkZS1iYXNlOiB0cnVlXG4pIHtcblxuICBAaWYgJGluY2x1ZGUtYmFzZSB7XG4gICAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgZmxleC13cmFwOiBub3dyYXA7XG4gICAgYWxpZ24taXRlbXM6IHN0cmV0Y2g7XG4gIH1cblxuICBAaWYgJGJyZWFrcG9pbnQgPT0gbnVsbCBhbmQgdHlwZS1vZigkZ3V0dGVycykgPT0gJ21hcCcge1xuICAgIEBpbmNsdWRlIC16Zi1lYWNoLWJyZWFrcG9pbnQoKSB7XG4gICAgICBAaW5jbHVkZSB4eS1ncmlkLWZyYW1lKCR2ZXJ0aWNhbCwgJG5lc3RlZCwgJGd1dHRlcnMsICQtemYtc2l6ZSwgZmFsc2UpO1xuICAgIH1cbiAgfSBAZWxzZSB7XG4gICAgLy8gR2V0IG91ciBndXR0ZXJzIGlmIGFwcGxpY2FibGVcbiAgICAkZ3V0dGVyOiAtemYtZ2V0LWJwLXZhbCgkZ3V0dGVycywgJGJyZWFrcG9pbnQpO1xuXG4gICAgLy8gSWYgd2UgaGF2ZSBhIGd1dHRlciwgYWRkIGl0IHRvIHRoZSB3aWR0aC9oZWlnaHRcbiAgICBAaWYgJGd1dHRlciB7XG4gICAgICBAaWYgJHZlcnRpY2FsID09IHRydWUge1xuICAgICAgICAkdW5pdDogaWYoJG5lc3RlZCA9PSB0cnVlLCAxMDAlLCAxMDB2aCk7XG4gICAgICAgICRndXR0ZXI6IHJlbS1jYWxjKCRndXR0ZXIpO1xuICAgICAgICBoZWlnaHQ6IGNhbGMoI3skdW5pdH0gKyAjeyRndXR0ZXJ9KTtcbiAgICAgIH0gQGVsc2Uge1xuICAgICAgICAkdW5pdDogaWYoJG5lc3RlZCA9PSB0cnVlLCAxMDAlLCAxMDB2dyk7XG4gICAgICAgICRndXR0ZXI6IHJlbS1jYWxjKCRndXR0ZXIpO1xuICAgICAgICB3aWR0aDogY2FsYygjeyR1bml0fSArICN7JGd1dHRlcn0pO1xuICAgICAgfVxuICAgIH1cbiAgICBAZWxzZSB7XG4gICAgICBAaWYgJHZlcnRpY2FsID09IHRydWUge1xuICAgICAgICBoZWlnaHQ6IGlmKCRuZXN0ZWQgPT0gdHJ1ZSwgMTAwJSwgMTAwdmgpO1xuICAgICAgfSBAZWxzZSB7XG4gICAgICAgIHdpZHRoOiBpZigkbmVzdGVkID09IHRydWUsIDEwMCUsIDEwMHZ3KTtcbiAgICAgIH1cbiAgICB9XG4gIH1cbn1cblxuLy8vIE1vZGlmaWVzIGEgY2VsbCB0byBnaXZlIGl0IFwiYmxvY2tcIiBiZWhhdmlvciAob3ZlcmZsb3cgYXV0bywgaW5lcnRpYWwgc2Nyb2xsaW5nKVxuLy8vXG4vLy8gQHBhcmFtIHtCb29sZWFufSAkdmVydGljYWwgW2ZhbHNlXSAtIElzIGdyaWQgdmVydGljYWwgb3IgaG9yaXpvbnRhbC4gU2hvdWxkIG1hdGNoIGdyaWQuXG5AbWl4aW4geHktY2VsbC1ibG9jayhcbiAgJHZlcnRpY2FsOiBmYWxzZVxuKSB7XG4gICRwcm9wZXJ0eTogaWYoJHZlcnRpY2FsID09IHRydWUsICdvdmVyZmxvdy15JywgJ292ZXJmbG93LXgnKTtcblxuICBAaWYgJHZlcnRpY2FsID09IHRydWUge1xuICAgIG92ZXJmbG93LXk6IGF1dG87XG4gICAgbWF4LWhlaWdodDogMTAwJTtcbiAgICBoZWlnaHQ6IDEwMCU7XG4gIH0gQGVsc2Uge1xuICAgIG92ZXJmbG93LXg6IGF1dG87XG4gICAgbWF4LXdpZHRoOiAxMDAlO1xuICB9XG5cbiAgLXdlYmtpdC1vdmVyZmxvdy1zY3JvbGxpbmc6IHRvdWNoO1xuICAtbXMtb3ZlcmZsb3ctc3R5cGU6IC1tcy1hdXRvaGlkaW5nLXNjcm9sbGJhcjtcbn1cblxuLy8vIENvbnRhaW5lciBmb3IgaW5zaWRlIGEgZ3JpZCBmcmFtZSBjb250YWluaW5nIG11bHRpcGxlIGJsb2Nrcy4gVHlwaWNhbGx5IHVzZWRcbi8vLyBhcyBhIG1vZGlmaWVyIGZvciBhIGAuY2VsbGAgdG8gYWxsb3cgdGhlIGNlbGwgdG8gcGFzcyBhbG9uZyBmbGV4IHNpemluZ1xuLy8vIGNvbnN0cmFpbnRzIC8gZnJvbSBwYXJlbnRzIHRvIGNoaWxkcmVuLlxuQG1peGluIHh5LWNlbGwtYmxvY2stY29udGFpbmVyKCkge1xuICBkaXNwbGF5OiBmbGV4O1xuICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuICBtYXgtaGVpZ2h0OiAxMDAlO1xuXG4gID4gLmdyaWQteCB7XG4gICAgbWF4LWhlaWdodDogMTAwJTtcbiAgICBmbGV4LXdyYXA6IG5vd3JhcDtcbiAgfVxufVxuIiwiLy8gRm91bmRhdGlvbiBmb3IgU2l0ZXMgYnkgWlVSQlxuLy8gZm91bmRhdGlvbi56dXJiLmNvbVxuLy8gTGljZW5zZWQgdW5kZXIgTUlUIE9wZW4gU291cmNlXG5cbi8vLyBIaWRlIGFuIGVsZW1lbnQgYnkgZGVmYXVsdCwgb25seSBkaXNwbGF5aW5nIGl0IGFib3ZlIGEgY2VydGFpbiBzY3JlZW4gc2l6ZS5cbi8vLyBAcGFyYW0ge0tleXdvcmR9ICRzaXplIC0gQnJlYWtwb2ludCB0byB1c2UuICoqTXVzdCBiZSBhIGJyZWFrcG9pbnQgZGVmaW5lZCBpbiBgJGJyZWFrcG9pbnRzYC4qKlxuQG1peGluIHNob3ctZm9yKCRzaXplKSB7XG4gICRzaXplOiBtYXAtZ2V0KCRicmVha3BvaW50cywgJHNpemUpO1xuICAkc2l6ZTogLXpmLWJwLXRvLWVtKCRzaXplKSAtICgxIC8gMTYpO1xuXG4gIEBpbmNsdWRlIGJyZWFrcG9pbnQoJHNpemUgZG93bikge1xuICAgIGRpc3BsYXk6IG5vbmUgIWltcG9ydGFudDtcbiAgfVxufVxuXG4vLy8gSGlkZSBhbiBlbGVtZW50IGJ5IGRlZmF1bHQsIG9ubHkgZGlzcGxheWluZyBpdCB3aXRoaW4gYSBjZXJ0YWluIGJyZWFrcG9pbnQuXG4vLy8gQHBhcmFtIHtLZXl3b3JkfSAkc2l6ZSAtIEJyZWFrcG9pbnQgdG8gdXNlLiAqKk11c3QgYmUgYSBicmVha3BvaW50IGRlZmluZWQgaW4gYCRicmVha3BvaW50c2AuKipcbkBtaXhpbiBzaG93LWZvci1vbmx5KCRzaXplKSB7XG4gICRsb3dlci1ib3VuZC1zaXplOiBtYXAtZ2V0KCRicmVha3BvaW50cywgJHNpemUpO1xuICAkdXBwZXItYm91bmQtc2l6ZTogLXpmLW1hcC1uZXh0KCRicmVha3BvaW50cywgJHNpemUpO1xuXG4gIC8vIG1vcmUgb2Z0ZW4gdGhhbiBub3QgdGhpcyB3aWxsIGJlIGNvcnJlY3QsIGp1c3Qgb25lIHRpbWUgcm91bmQgdGhlIGxvb3AgaXQgd29uJ3Qgc28gc2V0IGluIHNjb3BlIGhlcmVcbiAgJGxvd2VyLWJvdW5kOiAtemYtYnAtdG8tZW0oJGxvd2VyLWJvdW5kLXNpemUpIC0gKDEgLyAxNik7XG4gIC8vIHRlc3QgYWN0dWFsIGxvd2VyLWJvdW5kLXNpemUsIGlmIDAgc2V0IGl0IHRvIDBlbVxuICBAaWYgc3RyaXAtdW5pdCgkbG93ZXItYm91bmQtc2l6ZSkgPT0gMCB7XG4gICAgJGxvd2VyLWJvdW5kOiAtemYtYnAtdG8tZW0oJGxvd2VyLWJvdW5kLXNpemUpO1xuICB9XG5cbiAgQGlmICR1cHBlci1ib3VuZC1zaXplID09IG51bGwge1xuICAgIEBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6ICRsb3dlci1ib3VuZCkge1xuICAgICAgZGlzcGxheTogbm9uZSAhaW1wb3J0YW50O1xuICAgIH1cbiAgfVxuICBAZWxzZSB7XG4gICAgJHVwcGVyLWJvdW5kOiAtemYtYnAtdG8tZW0oJHVwcGVyLWJvdW5kLXNpemUpO1xuXG4gICAgQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogJGxvd2VyLWJvdW5kKSwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiAkdXBwZXItYm91bmQpIHtcbiAgICAgIGRpc3BsYXk6IG5vbmUgIWltcG9ydGFudDtcbiAgICB9XG4gIH1cbn1cblxuXG4vLy8gU2hvdyBhbiBlbGVtZW50IGJ5IGRlZmF1bHQsIGFuZCBoaWRlIGl0IGFib3ZlIGEgY2VydGFpbiBzY3JlZW4gc2l6ZS5cbi8vLyBAcGFyYW0ge0tleXdvcmR9ICRzaXplIC0gQnJlYWtwb2ludCB0byB1c2UuICoqTXVzdCBiZSBhIGJyZWFrcG9pbnQgZGVmaW5lZCBpbiBgJGJyZWFrcG9pbnRzYC4qKlxuQG1peGluIGhpZGUtZm9yKCRzaXplKSB7XG4gIEBpbmNsdWRlIGJyZWFrcG9pbnQoJHNpemUpIHtcbiAgICBkaXNwbGF5OiBub25lICFpbXBvcnRhbnQ7XG4gIH1cbn1cblxuLy8vIFNob3cgYW4gZWxlbWVudCBieSBkZWZhdWx0LCBhbmQgaGlkZSBpdCBhYm92ZSBhIGNlcnRhaW4gc2NyZWVuIHNpemUuXG4vLy8gQHBhcmFtIHtLZXl3b3JkfSAkc2l6ZSAtIEJyZWFrcG9pbnQgdG8gdXNlLiAqKk11c3QgYmUgYSBicmVha3BvaW50IGRlZmluZWQgaW4gYCRicmVha3BvaW50c2AuKipcbkBtaXhpbiBoaWRlLWZvci1vbmx5KCRzaXplKSB7XG4gIEBpbmNsdWRlIGJyZWFrcG9pbnQoJHNpemUgb25seSkge1xuICAgIGRpc3BsYXk6IG5vbmUgIWltcG9ydGFudDtcbiAgfVxufVxuXG5AbWl4aW4gZm91bmRhdGlvbi12aXNpYmlsaXR5LWNsYXNzZXMge1xuICAvLyBCYXNpYyBoaWRpbmcgY2xhc3Nlc1xuICAuaGlkZSB7XG4gICAgZGlzcGxheTogbm9uZSAhaW1wb3J0YW50O1xuICB9XG5cbiAgLmludmlzaWJsZSB7XG4gICAgdmlzaWJpbGl0eTogaGlkZGVuO1xuICB9XG5cbiAgLy8gUmVzcG9uc2l2ZSB2aXNpYmlsaXR5IGNsYXNzZXNcbiAgQGVhY2ggJHNpemUgaW4gJGJyZWFrcG9pbnQtY2xhc3NlcyB7XG4gICAgQGlmICRzaXplICE9ICQtemYtemVyby1icmVha3BvaW50IHtcbiAgICAgIC5oaWRlLWZvci0jeyRzaXplfSB7XG4gICAgICAgIEBpbmNsdWRlIGhpZGUtZm9yKCRzaXplKTtcbiAgICAgIH1cblxuICAgICAgLnNob3ctZm9yLSN7JHNpemV9IHtcbiAgICAgICAgQGluY2x1ZGUgc2hvdy1mb3IoJHNpemUpO1xuICAgICAgfVxuICAgIH1cblxuICAgIC5oaWRlLWZvci0jeyRzaXplfS1vbmx5IHtcbiAgICAgIEBpbmNsdWRlIGhpZGUtZm9yLW9ubHkoJHNpemUpO1xuICAgIH1cblxuICAgIC5zaG93LWZvci0jeyRzaXplfS1vbmx5IHtcbiAgICAgIEBpbmNsdWRlIHNob3ctZm9yLW9ubHkoJHNpemUpO1xuICAgIH1cbiAgfVxuXG4gIC8vIFNjcmVlbiByZWFkZXIgdmlzaWJpbGl0eSBjbGFzc2VzXG4gIC8vIE5lZWQgYSBcImhpZGUtZm9yLXNyXCIgY2xhc3M/IEFkZCBhcmlhLWhpZGRlbj0ndHJ1ZScgdG8gdGhlIGVsZW1lbnRcbiAgLnNob3ctZm9yLXNyLFxuICAuc2hvdy1vbi1mb2N1cyB7XG4gICAgQGluY2x1ZGUgZWxlbWVudC1pbnZpc2libGU7XG4gIH1cblxuICAvLyBPbmx5IGRpc3BsYXkgdGhlIGVsZW1lbnQgd2hlbiBpdCdzIGZvY3VzZWRcbiAgLnNob3ctb24tZm9jdXMge1xuICAgICY6YWN0aXZlLFxuICAgICY6Zm9jdXMge1xuICAgICAgQGluY2x1ZGUgZWxlbWVudC1pbnZpc2libGUtb2ZmO1xuICAgIH1cbiAgfVxuXG4gIC8vIExhbmRzY2FwZSBhbmQgcG9ydHJhaXQgdmlzaWJpbGl0eVxuICAuc2hvdy1mb3ItbGFuZHNjYXBlLFxuICAuaGlkZS1mb3ItcG9ydHJhaXQge1xuICAgIGRpc3BsYXk6IGJsb2NrICFpbXBvcnRhbnQ7XG5cbiAgICBAaW5jbHVkZSBicmVha3BvaW50KGxhbmRzY2FwZSkge1xuICAgICAgZGlzcGxheTogYmxvY2sgIWltcG9ydGFudDtcbiAgICB9XG5cbiAgICBAaW5jbHVkZSBicmVha3BvaW50KHBvcnRyYWl0KSB7XG4gICAgICBkaXNwbGF5OiBub25lICFpbXBvcnRhbnQ7XG4gICAgfVxuICB9XG5cbiAgLmhpZGUtZm9yLWxhbmRzY2FwZSxcbiAgLnNob3ctZm9yLXBvcnRyYWl0IHtcbiAgICBkaXNwbGF5OiBub25lICFpbXBvcnRhbnQ7XG5cbiAgICBAaW5jbHVkZSBicmVha3BvaW50KGxhbmRzY2FwZSkge1xuICAgICAgZGlzcGxheTogbm9uZSAhaW1wb3J0YW50O1xuICAgIH1cblxuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQocG9ydHJhaXQpIHtcbiAgICAgIGRpc3BsYXk6IGJsb2NrICFpbXBvcnRhbnQ7XG4gICAgfVxuICB9XG59XG4iLCIvLyBGb3VuZGF0aW9uIGZvciBTaXRlcyBieSBaVVJCXG4vLyBmb3VuZGF0aW9uLnp1cmIuY29tXG4vLyBMaWNlbnNlZCB1bmRlciBNSVQgT3BlbiBTb3VyY2VcblxuLy8vL1xuLy8vIEBncm91cCBmdW5jdGlvbnNcbi8vLy9cblxuLy8vIENyZWF0ZXMgYW4gaW5uZXIgYm94LXNoYWRvdyBmb3Igb25seSBvbmUgc2lkZVxuLy8vIFxuLy8vIEBwYXJhbSB7S2V5d29yZH0gJHNpZGUgLSBTaWRlIHRoZSBzaGFkb3cgaXMgc3VwcG9zZWQgdG8gYXBwZWFyLiBDYW4gYmUgYHRvcGAsIGBsZWZ0YCwgYHJpZ2h0YCBvciBgYm90dG9tYC5cbi8vLyBAcGFyYW0ge051bWJlcn0gJHNpemUgLSBXaWR0aCBmb3IgdGhlIHRhcmdldCBzaWRlLlxuLy8vIEBwYXJhbSB7Q29sb3J9ICRjb2xvciAtIENvbG9yIG9mIHRoZSBzaGFkb3cuXG5AbWl4aW4gaW5uZXItc2lkZS1zaGFkb3coXG4gICRzaWRlOiBib3R0b20sXG4gICRzaXplOiAyMHB4LFxuICAkY29sb3I6IHJnYmEoJGJsYWNrLCAwLjI1KVxuKSB7XG5cbiAgJGhlbHBlcjogcm91bmQoJHNpemUgKiAwLjY1KTtcblxuICBAaWYgKCRzaWRlID09IHRvcCkge1xuICAgIGJveC1zaGFkb3c6IGluc2V0IDAgJGhlbHBlciAkc2l6ZSAoLTEpKiRoZWxwZXIgJGNvbG9yO1xuICB9IEBlbHNlIGlmICgkc2lkZSA9PSBsZWZ0KSB7XG4gICAgYm94LXNoYWRvdzogaW5zZXQgJGhlbHBlciAwICRzaXplICgtMSkqJGhlbHBlciAkY29sb3I7XG4gIH0gQGVsc2UgaWYgKCRzaWRlID09IHJpZ2h0KSB7XG4gICAgYm94LXNoYWRvdzogaW5zZXQgKC0xKSokaGVscGVyIDAgJHNpemUgKC0xKSokaGVscGVyICRjb2xvcjtcbiAgfSBAZWxzZSBpZiAoJHNpZGUgPT0gYm90dG9tKSB7XG4gICAgYm94LXNoYWRvdzogaW5zZXQgMCAoLTEpKiRoZWxwZXIgJHNpemUgKC0xKSokaGVscGVyICRjb2xvcjtcbiAgfVxufVxuXG4vLy8gQ3JlYXRlcyBhIENTUyB0cmlhbmdsZSwgd2hpY2ggY2FuIGJlIHVzZWQgZm9yIGRyb3Bkb3duIGFycm93cywgZHJvcGRvd24gcGlwcywgYW5kIG1vcmUuIFVzZSB0aGlzIG1peGluIGluc2lkZSBhIGAmOjpiZWZvcmVgIG9yIGAmOjphZnRlcmAgc2VsZWN0b3IsIHRvIGF0dGFjaCB0aGUgdHJpYW5nbGUgdG8gYW4gZXhpc3RpbmcgZWxlbWVudC5cbi8vL1xuLy8vIEBwYXJhbSB7TnVtYmVyfSAkdHJpYW5nbGUtc2l6ZSAtIFdpZHRoIG9mIHRoZSB0cmlhbmdsZS5cbi8vLyBAcGFyYW0ge0NvbG9yfSAkdHJpYW5nbGUtY29sb3IgLSBDb2xvciBvZiB0aGUgdHJpYW5nbGUuXG4vLy8gQHBhcmFtIHtLZXl3b3JkfSAkdHJpYW5nbGUtZGlyZWN0aW9uIC0gRGlyZWN0aW9uIHRoZSB0cmlhbmdsZSBwb2ludHMuIENhbiBiZSBgdXBgLCBgcmlnaHRgLCBgZG93bmAsIG9yIGBsZWZ0YC5cbkBtaXhpbiBjc3MtdHJpYW5nbGUoXG4gICR0cmlhbmdsZS1zaXplLFxuICAkdHJpYW5nbGUtY29sb3IsXG4gICR0cmlhbmdsZS1kaXJlY3Rpb25cbikge1xuICBkaXNwbGF5OiBibG9jaztcbiAgd2lkdGg6IDA7XG4gIGhlaWdodDogMDtcblxuICBib3JkZXI6IGluc2V0ICR0cmlhbmdsZS1zaXplO1xuXG4gIGNvbnRlbnQ6ICcnO1xuXG4gIEBpZiAoJHRyaWFuZ2xlLWRpcmVjdGlvbiA9PSBkb3duKSB7XG4gICAgYm9yZGVyLWJvdHRvbS13aWR0aDogMDtcbiAgICBib3JkZXItdG9wLXN0eWxlOiBzb2xpZDtcbiAgICBib3JkZXItY29sb3I6ICR0cmlhbmdsZS1jb2xvciB0cmFuc3BhcmVudCB0cmFuc3BhcmVudDtcbiAgfVxuICBAaWYgKCR0cmlhbmdsZS1kaXJlY3Rpb24gPT0gdXApIHtcbiAgICBib3JkZXItdG9wLXdpZHRoOiAwO1xuICAgIGJvcmRlci1ib3R0b20tc3R5bGU6IHNvbGlkO1xuICAgIGJvcmRlci1jb2xvcjogdHJhbnNwYXJlbnQgdHJhbnNwYXJlbnQgJHRyaWFuZ2xlLWNvbG9yO1xuICB9XG4gIEBpZiAoJHRyaWFuZ2xlLWRpcmVjdGlvbiA9PSByaWdodCkge1xuICAgIGJvcmRlci1yaWdodC13aWR0aDogMDtcbiAgICBib3JkZXItbGVmdC1zdHlsZTogc29saWQ7XG4gICAgYm9yZGVyLWNvbG9yOiB0cmFuc3BhcmVudCB0cmFuc3BhcmVudCB0cmFuc3BhcmVudCAkdHJpYW5nbGUtY29sb3I7XG4gIH1cbiAgQGlmICgkdHJpYW5nbGUtZGlyZWN0aW9uID09IGxlZnQpIHtcbiAgICBib3JkZXItbGVmdC13aWR0aDogMDtcbiAgICBib3JkZXItcmlnaHQtc3R5bGU6IHNvbGlkO1xuICAgIGJvcmRlci1jb2xvcjogdHJhbnNwYXJlbnQgJHRyaWFuZ2xlLWNvbG9yIHRyYW5zcGFyZW50IHRyYW5zcGFyZW50O1xuICB9XG59XG5cbi8vLyBDcmVhdGVzIGEgbWVudSBpY29uIHdpdGggYSBzZXQgd2lkdGgsIGhlaWdodCwgbnVtYmVyIG9mIGJhcnMsIGFuZCBjb2xvcnMuIFRoZSBtaXhpbiB1c2VzIHRoZSBoZWlnaHQgb2YgdGhlIGljb24gYW5kIHRoZSB3ZWlnaHQgb2YgdGhlIGJhcnMgdG8gZGV0ZXJtaW5lIHNwYWNpbmcuIDxkaXYgY2xhc3M9XCJkb2NzLWV4YW1wbGUtYnVyZ2VyXCI+PC9kaXY+XG4vLy9cbi8vLyBAcGFyYW0ge0NvbG9yfSAkY29sb3IgWyRibGFja10gLSBDb2xvciB0byB1c2UgZm9yIHRoZSBpY29uLlxuLy8vIEBwYXJhbSB7Q29sb3J9ICRjb2xvci1ob3ZlciBbJGRhcmstZ3JheV0gLSBDb2xvciB0byB1c2Ugd2hlbiB0aGUgaWNvbiBpcyBob3ZlcmVkIG92ZXIuXG4vLy8gQHBhcmFtIHtOdW1iZXJ9ICR3aWR0aCBbMjBweF0gLSBXaWR0aCBvZiB0aGUgaWNvbi5cbi8vLyBAcGFyYW0ge051bWJlcn0gJGhlaWdodCBbMTZweF0gLSBIZWlnaHQgb2YgdGhlIGljb24uXG4vLy8gQHBhcmFtIHtOdW1iZXJ9ICR3ZWlnaHQgWzJweF0gLSBIZWlnaHQgb2YgaW5kaXZpZHVhbCBiYXJzIGluIHRoZSBpY29uLlxuLy8vIEBwYXJhbSB7TnVtYmVyfSAkYmFycyBbM10gLSBOdW1iZXIgb2YgYmFycyBpbiB0aGUgaWNvbi5cbkBtaXhpbiBoYW1idXJnZXIoXG4gICRjb2xvcjogJGJsYWNrLFxuICAkY29sb3ItaG92ZXI6ICRkYXJrLWdyYXksXG4gICR3aWR0aDogMjBweCxcbiAgJGhlaWdodDogMTZweCxcbiAgJHdlaWdodDogMnB4LFxuICAkYmFyczogM1xuKSB7XG4gIC8vIGJveC1zaGFkb3cgQ1NTIG91dHB1dFxuICAkc2hhZG93OiAoKTtcbiAgJGhvdmVyLXNoYWRvdzogKCk7XG5cbiAgLy8gU3BhY2luZyBiZXR3ZWVuIGJhcnMgaXMgY2FsY3VsYXRlZCBiYXNlZCBvbiB0aGUgdG90YWwgaGVpZ2h0IG9mIHRoZSBpY29uIGFuZCB0aGUgd2VpZ2h0IG9mIGVhY2ggYmFyXG4gICRzcGFjaW5nOiAoJGhlaWdodCAtICgkd2VpZ2h0ICogJGJhcnMpKSAvICgkYmFycyAtIDEpO1xuXG4gIEBpZiB1bml0KCRzcGFjaW5nKSA9PSAncHgnIHtcbiAgICAkc3BhY2luZzogZmxvb3IoJHNwYWNpbmcpO1xuICB9XG5cbiAgQGZvciAkaSBmcm9tIDIgdGhyb3VnaCAkYmFycyB7XG4gICAgJG9mZnNldDogKCR3ZWlnaHQgKyAkc3BhY2luZykgKiAoJGkgLSAxKTtcbiAgICAkc2hhZG93OiBhcHBlbmQoJHNoYWRvdywgMCAkb2Zmc2V0IDAgJGNvbG9yLCBjb21tYSk7XG4gIH1cblxuICAvLyBJY29uIGNvbnRhaW5lclxuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgdmVydGljYWwtYWxpZ246IG1pZGRsZTtcbiAgd2lkdGg6ICR3aWR0aDtcbiAgaGVpZ2h0OiAkaGVpZ2h0O1xuICBjdXJzb3I6IHBvaW50ZXI7XG5cbiAgLy8gSWNvbiBiYXJzXG4gICY6OmFmdGVyIHtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgdG9wOiAwO1xuICAgIGxlZnQ6IDA7XG5cbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICB3aWR0aDogMTAwJTtcbiAgICBoZWlnaHQ6ICR3ZWlnaHQ7XG5cbiAgICBiYWNrZ3JvdW5kOiAkY29sb3I7XG4gICAgYm94LXNoYWRvdzogJHNoYWRvdztcblxuICAgIGNvbnRlbnQ6ICcnO1xuICB9XG5cbiAgLy8gSG92ZXIgc3RhdGVcbiAgQGlmICRjb2xvci1ob3ZlciB7XG4gICAgLy8gR2VuZXJhdGUgQ1NTXG4gICAgQGZvciAkaSBmcm9tIDIgdGhyb3VnaCAkYmFycyB7XG4gICAgICAkb2Zmc2V0OiAoJHdlaWdodCArICRzcGFjaW5nKSAqICgkaSAtIDEpO1xuICAgICAgJGhvdmVyLXNoYWRvdzogYXBwZW5kKCRob3Zlci1zaGFkb3csIDAgJG9mZnNldCAwICRjb2xvci1ob3ZlciwgY29tbWEpO1xuICAgIH1cblxuICAgICY6aG92ZXI6OmFmdGVyIHtcbiAgICAgIGJhY2tncm91bmQ6ICRjb2xvci1ob3ZlcjtcbiAgICAgIGJveC1zaGFkb3c6ICRob3Zlci1zaGFkb3c7XG4gICAgfVxuICB9XG59XG5cbi8vLyBBZGRzIGEgZG93bndhcmQtZmFjaW5nIHRyaWFuZ2xlIGFzIGEgYmFja2dyb3VuZCBpbWFnZSB0byBhbiBlbGVtZW50LiBUaGUgaW1hZ2UgaXMgZm9ybWF0dGVkIGFzIGFuIFNWRywgbWFraW5nIGl0IGVhc3kgdG8gY2hhbmdlIHRoZSBjb2xvci4gQmVjYXVzZSBJbnRlcm5ldCBFeHBsb3JlciBkb2Vzbid0IHN1cHBvcnQgZW5jb2RlZCBTVkdzIGFzIGJhY2tncm91bmQgaW1hZ2VzLCBhIFBORyBmYWxsYmFjayBpcyBhbHNvIGluY2x1ZGVkLlxuLy8vIFRoZXJlIGFyZSB0d28gUE5HIGZhbGxiYWNrczogYSBibGFjayB0cmlhbmdsZSBhbmQgYSB3aGl0ZSB0cmlhbmdsZS4gVGhlIG9uZSB1c2VkIGRlcGVuZHMgb24gdGhlIGxpZ2h0bmVzcyBvZiB0aGUgaW5wdXQgY29sb3IuXG4vLy9cbi8vLyBAcGFyYW0ge0NvbG9yfSAkY29sb3IgWyRibGFja10gLSBDb2xvciB0byB1c2UgZm9yIHRoZSB0cmlhbmdsZS5cbkBtaXhpbiBiYWNrZ3JvdW5kLXRyaWFuZ2xlKCRjb2xvcjogJGJsYWNrKSB7XG4gICRyZ2I6ICdyZ2IlMjgje3JvdW5kKHJlZCgkY29sb3IpKX0sICN7cm91bmQoZ3JlZW4oJGNvbG9yKSl9LCAje3JvdW5kKGJsdWUoJGNvbG9yKSl9JTI5JztcblxuICBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoXCJkYXRhOmltYWdlL3N2Zyt4bWw7dXRmOCw8c3ZnIHhtbG5zPSdodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZycgdmVyc2lvbj0nMS4xJyB3aWR0aD0nMzInIGhlaWdodD0nMjQnIHZpZXdCb3g9JzAgMCAzMiAyNCc+PHBvbHlnb24gcG9pbnRzPScwLDAgMzIsMCAxNiwyNCcgc3R5bGU9J2ZpbGw6ICN7JHJnYn0nPjwvcG9seWdvbj48L3N2Zz5cIik7XG5cbiAgQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDowXFwwKSB7XG4gICAgQGlmIGxpZ2h0bmVzcygkY29sb3IpIDwgNjAlIHtcbiAgICAgIC8vIFdoaXRlIHRyaWFuZ2xlXG4gICAgICBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoJ2RhdGE6aW1hZ2UvcG5nO2Jhc2U2NCxpVkJPUncwS0dnb0FBQUFOU1VoRVVnQUFBQ0FBQUFBWUNBWUFBQUNiVS84MEFBQUFHWFJGV0hSVGIyWjBkMkZ5WlFCQlpHOWlaU0JKYldGblpWSmxZV1I1Y2NsbFBBQUFBSXBKUkVGVWVOckVrY2tOZ0RBTUJCZlJrRXQwT2JSQkJkc0dYVURnbVFmSzRYaEgybThjelFBQXkyN1IzdHN3NFFmZTJ4OHVPTzZvWUxiNkdsT29yM0dGK3N3VVJBT21VSitSd3RFSnM5V3ZUR0VZeEJYcUkxTVFBWmhDZlVRS1J6RE1WaitUd3JBSVY2anZTVUVrWUFyMUxTa2N5VEJiL1YrS1lmWDd4QWV1c3Ezc0xEdEdIM2tFR0FDUFdJZmxOWmZoUlFBQUFBQkpSVTVFcmtKZ2dnPT0nKTtcbiAgICB9XG4gICAgQGVsc2Uge1xuICAgICAgLy8gQmxhY2sgdHJpYW5nbGVcbiAgICAgIGJhY2tncm91bmQtaW1hZ2U6IHVybCgnZGF0YTppbWFnZS9wbmc7YmFzZTY0LGlWQk9SdzBLR2dvQUFBQU5TVWhFVWdBQUFDQUFBQUFZQ0FZQUFBQ2JVLzgwQUFBQUdYUkZXSFJUYjJaMGQyRnlaUUJCWkc5aVpTQkpiV0ZuWlZKbFlXUjVjY2xsUEFBQUFNQkpSRUZVZU5yRWxsc09oQ0FNUlZzekM5SWx6VTdLQ21WSFRKc29NV1lNVXRweXY5QmdidVhRQjVaU2RnQllZWTR5Y2dCaXZrOEtZRnNRTWZNaVRUQlA0bzNuVXpDS3pPYWJMSmJMeTIvZzMxZXZHa0FnaW5SNC9aZWdLSDVxWDNiSkNzY0EzdDB4M2tnTzV0UUZ5aGhGZjUweFJxRkxieU1VTkpRemd5akdTL3dnQ3B2S3FrUkJwdVdyRTRWOWQrMUU0ZFBVWHFJZzEwN1NRT0UvMkRSUXhNd1REeWdJSW5WREVUOVQzbENvai82ai9WQ21HalpPbDJsS3BaOEFBd0RRUDd6SWltREdGUUFBQUFCSlJVNUVya0pnZ2c9PScpO1xuICAgIH1cbiAgfVxufVxuXG4vLy8gQXBwbGllcyB0aGUgbWljcm8gY2xlYXJmaXggaGFjayBwb3B1bGFyaXplZCBieSBOaWNvbGFzIEdhbGxhZ2hlci4gSW5jbHVkZSB0aGlzIG1peGluIG9uIGEgY29udGFpbmVyIGlmIGl0cyBjaGlsZHJlbiBhcmUgYWxsIGZsb2F0ZWQsIHRvIGdpdmUgdGhlIGNvbnRhaW5lciBhIHByb3BlciBoZWlnaHQuXG4vLy8gVGhlIGNsZWFyZml4IGlzIGF1Z21lbnRlZCB3aXRoIHNwZWNpZmljIHN0eWxlcyB0byBwcmV2ZW50IGJvcmRlcnMgaW4gZmxleGJveCBlbnZpcm9ubWVudHNcbi8vLyBAbGluayBodHRwOi8vbmljb2xhc2dhbGxhZ2hlci5jb20vbWljcm8tY2xlYXJmaXgtaGFjay8gTWljcm8gQ2xlYXJmaXggSGFja1xuLy8vIEBsaW5rIGh0dHA6Ly9kYW5pc2FkZXNpZ25lci5jb20vYmxvZy9mbGV4Ym94LWNsZWFyLWZpeC1wc2V1ZG8tZWxlbWVudHMvIEZsZXhib3ggZml4XG5AbWl4aW4gY2xlYXJmaXgge1xuICAmOjpiZWZvcmUsXG4gICY6OmFmdGVyIHtcbiAgICBkaXNwbGF5OiB0YWJsZTtcbiAgICBjb250ZW50OiAnICc7XG5cbiAgICBAaWYgJGdsb2JhbC1mbGV4Ym94IHtcbiAgICAgIGZsZXgtYmFzaXM6IDA7XG4gICAgICBvcmRlcjogMTtcbiAgICB9XG4gIH1cblxuICAmOjphZnRlciB7XG4gICAgY2xlYXI6IGJvdGg7XG4gIH1cbn1cblxuLy8vIEFkZHMgQ1NTIGZvciBhIFwicXVhbnRpdHkgcXVlcnlcIiBzZWxlY3RvciB0aGF0IGF1dG9tYXRpY2FsbHkgc2l6ZXMgZWxlbWVudHMgYmFzZWQgb24gaG93IG1hbnkgdGhlcmUgYXJlIGluc2lkZSBhIGNvbnRhaW5lci5cbi8vLyBAbGluayBodHRwOi8vYWxpc3RhcGFydC5jb20vYXJ0aWNsZS9xdWFudGl0eS1xdWVyaWVzLWZvci1jc3MgUXVhbnRpdHkgUXVlcmllcyBmb3IgQ1NTXG4vLy9cbi8vLyBAcGFyYW0ge051bWJlcn0gJG1heCAtIE1heGltdW0gbnVtYmVyIG9mIGl0ZW1zIHRvIGRldGVjdC4gVGhlIGhpZ2hlciB0aGlzIG51bWJlciBpcywgdGhlIG1vcmUgQ1NTIHRoYXQncyByZXF1aXJlZCB0byBjb3ZlciBlYWNoIG51bWJlciBvZiBpdGVtcy5cbi8vLyBAcGFyYW0ge0tleXdvcmR9ICRlbGVtIFtsaV0gLSBUYWcgdG8gdXNlIGZvciBzaWJsaW5nIHNlbGVjdG9ycy5cbkBtaXhpbiBhdXRvLXdpZHRoKCRtYXgsICRlbGVtOiBsaSkge1xuICBAZm9yICRpIGZyb20gMiB0aHJvdWdoICRtYXgge1xuICAgICY6bnRoLWxhc3QtY2hpbGQoI3skaX0pOmZpcnN0LWNoaWxkLFxuICAgICY6bnRoLWxhc3QtY2hpbGQoI3skaX0pOmZpcnN0LWNoaWxkIH4gI3skZWxlbX0ge1xuICAgICAgd2lkdGg6IHBlcmNlbnRhZ2UoMSAvICRpKTtcbiAgICB9XG4gIH1cbn1cblxuLy8vIFJlbW92ZXMgdGhlIGZvY3VzIHJpbmcgYXJvdW5kIGFuIGVsZW1lbnQgd2hlbiBhIG1vdXNlIGlucHV0IGlzIGRldGVjdGVkLlxuQG1peGluIGRpc2FibGUtbW91c2Utb3V0bGluZSB7XG4gIFtkYXRhLXdoYXRpbnB1dD0nbW91c2UnXSAmIHtcbiAgICBvdXRsaW5lOiAwO1xuICB9XG59XG5cbi8vLyBNYWtlcyBhbiBlbGVtZW50IHZpc3VhbGx5IGhpZGRlbiwgYnV0IHN0aWxsIGFjY2Vzc2libGUgdG8ga2V5Ym9hcmRzIGFuZCBhc3Npc3RpdmUgZGV2aWNlcy5cbi8vLyBAbGluayBodHRwOi8vc25vb2suY2EvYXJjaGl2ZXMvaHRtbF9hbmRfY3NzL2hpZGluZy1jb250ZW50LWZvci1hY2Nlc3NpYmlsaXR5IEhpZGluZyBDb250ZW50IGZvciBBY2Nlc3NpYmlsaXR5XG4vLy8gQGxpbmsgaHR0cDovL2h1Z29naXJhdWRlbC5jb20vMjAxNi8xMC8xMy9jc3MtaGlkZS1hbmQtc2Vlay9cbkBtaXhpbiBlbGVtZW50LWludmlzaWJsZSB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZSAhaW1wb3J0YW50O1xuICB3aWR0aDogMXB4O1xuICBoZWlnaHQ6IDFweDtcbiAgcGFkZGluZzogMDtcbiAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgY2xpcDogcmVjdCgwLDAsMCwwKTtcbiAgd2hpdGUtc3BhY2U6IG5vd3JhcDtcbiAgY2xpcC1wYXRoOiBpbnNldCg1MCUpO1xuICBib3JkZXI6IDA7XG59XG5cbi8vLyBSZXZlcnNlcyB0aGUgQ1NTIG91dHB1dCBjcmVhdGVkIGJ5IHRoZSBgZWxlbWVudC1pbnZpc2libGUoKWAgbWl4aW4uXG5AbWl4aW4gZWxlbWVudC1pbnZpc2libGUtb2ZmIHtcbiAgcG9zaXRpb246IHN0YXRpYyAhaW1wb3J0YW50O1xuICB3aWR0aDogYXV0bztcbiAgaGVpZ2h0OiBhdXRvO1xuICBvdmVyZmxvdzogdmlzaWJsZTtcbiAgY2xpcDogYXV0bztcbiAgd2hpdGUtc3BhY2U6IG5vcm1hbDtcbiAgY2xpcC1wYXRoOiBub25lO1xufVxuXG4vLy8gVmVydGljYWxseSBjZW50ZXJzIHRoZSBlbGVtZW50IGluc2lkZSBvZiBpdHMgZmlyc3Qgbm9uLXN0YXRpYyBwYXJlbnQsXG4vLy8gQGxpbmsgaHR0cDovL3d3dy5zaXRlcG9pbnQuY29tL2NlbnRlcmluZy13aXRoLXNhc3MvIENlbnRlcmluZyBXaXRoIFNhc3NcbkBtaXhpbiB2ZXJ0aWNhbC1jZW50ZXIge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHRvcDogNTAlO1xuICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTUwJSk7XG59XG5cbi8vLyBIb3Jpem9udGFsbHkgY2VudGVycyB0aGUgZWxlbWVudCBpbnNpZGUgb2YgaXRzIGZpcnN0IG5vbi1zdGF0aWMgcGFyZW50LFxuLy8vIEBsaW5rIGh0dHA6Ly93d3cuc2l0ZXBvaW50LmNvbS9jZW50ZXJpbmctd2l0aC1zYXNzLyBDZW50ZXJpbmcgV2l0aCBTYXNzXG5AbWl4aW4gaG9yaXpvbnRhbC1jZW50ZXIge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIGxlZnQ6IDUwJTtcbiAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKC01MCUpO1xufVxuXG4vLy8gQWJzb2x1dGVseSBjZW50ZXJzIHRoZSBlbGVtZW50IGluc2lkZSBvZiBpdHMgZmlyc3Qgbm9uLXN0YXRpYyBwYXJlbnQsXG4vLy8gQGxpbmsgaHR0cDovL3d3dy5zaXRlcG9pbnQuY29tL2NlbnRlcmluZy13aXRoLXNhc3MvIENlbnRlcmluZyBXaXRoIFNhc3NcbkBtaXhpbiBhYnNvbHV0ZS1jZW50ZXIge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHRvcDogNTAlO1xuICBsZWZ0OiA1MCU7XG4gIHRyYW5zZm9ybTogdHJhbnNsYXRlKC01MCUsIC01MCUpO1xufVxuXG4vLy8gSXRlcmF0ZXMgdGhyb3VnaCBicmVha3BvaW50cyBkZWZpbmVkIGluIGAkYnJlYWtwb2ludC1jbGFzc2VzYCBhbmQgcHJpbnRzIHRoZSBDU1MgaW5zaWRlIHRoZSBtaXhpbiBhdCBlYWNoIGJyZWFrcG9pbnQncyBtZWRpYSBxdWVyeS4gVXNlIHRoaXMgd2l0aCB0aGUgZ3JpZCwgb3IgYW55IG90aGVyIGNvbXBvbmVudCB0aGF0IGhhcyByZXNwb25zaXZlIGNsYXNzZXMuXG4vLy9cbi8vLyBAcGFyYW0ge0Jvb2xlYW59ICRzbWFsbCBbdHJ1ZV0gLSBJZiBgZmFsc2VgLCB0aGUgbWl4aW4gd2lsbCBza2lwIHRoZSBgc21hbGxgIGJyZWFrcG9pbnQuIFVzZSB0aGlzIHdpdGggY29tcG9uZW50cyB0aGF0IGRvbid0IHByZWZpeCBjbGFzc2VzIHdpdGggYHNtYWxsLWAsIG9ubHkgYG1lZGl1bS1gIGFuZCB1cC5cbi8vLyBAcGFyYW0ge0Jvb2xlYW59ICRhdXRvLWluc2VydC1icmVha3BvaW50cyBbdHJ1ZV0gLSBJZiBgZmFsc2VgLCB0aGUgbWl4aW4gd2lsbCBpdGVyYXRlIG92ZXIgYnJlYWtwb2ludHMgd2l0aG91dCBkb2luZyB0aGUgbWVkaWEgcXVlcnkgaXRzZWxmLiBVc2VmdWwgZm9yIG1vcmUgY29tcGxleCBtZWRpYSBxdWVyeSBnZW5lcmF0aW9uIGFzIGluIHRoZSBtYXJnaW4gZ3JpZC5cbkBtaXhpbiAtemYtZWFjaC1icmVha3BvaW50KCRzbWFsbDogdHJ1ZSwgJGF1dG8taW5zZXJ0LWJyZWFrcG9pbnRzOiB0cnVlKSB7XG4gICRsaXN0OiAkYnJlYWtwb2ludC1jbGFzc2VzO1xuXG4gIEBpZiBub3QgJHNtYWxsIHtcbiAgICAkbGlzdDogc2wtcmVtb3ZlKCRsaXN0LCAkLXpmLXplcm8tYnJlYWtwb2ludCk7XG4gIH1cblxuICBAZWFjaCAkbmFtZSBpbiAkbGlzdCB7XG4gICAgJC16Zi1zaXplOiAkbmFtZSAhZ2xvYmFsO1xuXG4gICAgQGlmICRhdXRvLWluc2VydC1icmVha3BvaW50cyB7XG4gICAgICBAaW5jbHVkZSBicmVha3BvaW50KCRuYW1lKSB7XG4gICAgICAgIEBjb250ZW50O1xuICAgICAgfVxuICAgIH1cbiAgICBAZWxzZSB7XG4gICAgICBAY29udGVudDtcbiAgICB9XG4gIH1cbn1cblxuLy8vIEdlbmVyYXRlIHRoZSBgQGNvbnRlbnRgIHBhc3NlZCB0byB0aGUgbWl4aW4gd2l0aCBhIHZhbHVlIGAkLXpmLWJwLXZhbHVlYCByZWxhdGVkIHRvIGEgYnJlYWtwb2ludCwgZGVwZW5kaW5nIG9uIHRoZSBgJG5hbWVgIHBhcmFtZXRlcjpcbi8vLyAtIEZvciBhIHNpbmdsZSB2YWx1ZSwgYCQtemYtYnAtdmFsdWVgIGlzIHRoaXMgdmFsdWUuXG4vLy8gLSBGb3IgYSBicmVha3BvaW50IG5hbWUsIGAkLXpmLWJwLXZhbHVlYCBpcyB0aGUgY29ycmVzcG9uZGluZyBicmVha3BvaW50IHZhbHVlIGluIGAkbWFwYC5cbi8vLyAtIEZvciBcImF1dG9cIiwgYCQtemYtYnAtdmFsdWVgIGlzIHRoZSBjb3JyZXNwb25kaW5nIGJyZWFrcG9pbnQgdmFsdWUgaW4gYCRtYXBgIGFuZCBpcyBwYXNzZWQgdG8gYEBjb250ZW50YCwgd2hpY2ggaXMgbWFkZSByZXNwb25zaXZlIGZvciBlYWNoIGJyZWFrcG9pbnQgb2YgYCRtYXBgLlxuLy8vIEBwYXJhbSB7TnVtYmVyfEFycmF5fEtleXdvcmR9ICRuYW1lIFthdXRvXSAtIFNpbmdsZSB2YWx1ZSwgYnJlYWtwb2ludCBuYW1lLCBvciBsaXN0IG9mIGJyZWFrcG9pbnQgbmFtZXMgdG8gdXNlLiBcImF1dG9cIiBieSBkZWZhdWx0LlxuLy8vIEBwYXJhbSB7TnVtYmVyfE1hcH0gJG1hcCAtIE1hcCBvZiBicmVha3BvaW50cyBhbmQgdmFsdWVzIG9yIHNpbmdsZSB2YWx1ZSB0byB1c2UuXG5AbWl4aW4gLXpmLWJyZWFrcG9pbnQtdmFsdWUoXG4gICRuYW1lOiBhdXRvLFxuICAkbWFwOiBudWxsXG4pIHtcbiAgQGlmICRuYW1lID09IGF1dG8gYW5kIHR5cGUtb2YoJG1hcCkgPT0gJ21hcCcge1xuICAgIC8vIFwiYXV0b1wiXG4gICAgQGVhY2ggJGssICR2IGluICRtYXAge1xuICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludCgkaykge1xuICAgICAgICBAaW5jbHVkZSAtemYtYnJlYWtwb2ludC12YWx1ZSgkdiwgJG1hcCkge1xuICAgICAgICAgIEBjb250ZW50O1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICB9XG4gIEBlbHNlIHtcbiAgICAvLyBicmVha3BvaW50IG5hbWVcbiAgICBAaWYgdHlwZS1vZigkbmFtZSkgPT0gJ3N0cmluZycge1xuICAgICAgJG5hbWU6IC16Zi1nZXQtYnAtdmFsKCRtYXAsICRuYW1lKTtcbiAgICB9XG5cbiAgICAvLyBicmVha3BvaW50IHZhbHVlXG4gICAgJC16Zi1icC12YWx1ZTogJG5hbWUgIWdsb2JhbDtcbiAgICBAY29udGVudDtcbiAgfVxufVxuIiwiLy8gRm91bmRhdGlvbiBmb3IgU2l0ZXMgYnkgWlVSQlxuLy8gZm91bmRhdGlvbi56dXJiLmNvbVxuLy8gTGljZW5zZWQgdW5kZXIgTUlUIE9wZW4gU291cmNlXG5cbi8vLy9cbi8vLyBAZ3JvdXAgZmxvYXRcbi8vLy9cblxuQG1peGluIGZvdW5kYXRpb24tZmxvYXQtY2xhc3NlcyB7XG4gIC5mbG9hdC1sZWZ0IHtcbiAgICBmbG9hdDogbGVmdCAhaW1wb3J0YW50O1xuICB9XG5cbiAgLmZsb2F0LXJpZ2h0IHtcbiAgICBmbG9hdDogcmlnaHQgIWltcG9ydGFudDtcbiAgfVxuXG4gIC5mbG9hdC1jZW50ZXIge1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIG1hcmdpbi1yaWdodDogYXV0bztcbiAgICBtYXJnaW4tbGVmdDogYXV0bztcbiAgfVxuXG4gIC5jbGVhcmZpeCB7XG4gICAgQGluY2x1ZGUgY2xlYXJmaXg7XG4gIH1cbn1cbiIsIi8vLy8vLy8vLy8vLy8vLy8vLy9cbi8vIEdSSUQgU0VUVElOR1MgLy9cbi8vLy8vLy8vLy8vLy8vLy8vLy9cblxuLmdyaWQtY29udGFpbmVyLS1tb2JpbGUge1xuXHRAbWVkaWEgI3skc21hbGwtb25seX0ge1xuXHRcdHBhZGRpbmctbGVmdDogMDtcblx0XHRwYWRkaW5nLXJpZ2h0OiAwO1xuXHR9Ly8kc21hbGwtb25seVxuXHRAbWVkaWEgI3skbWVkaXVtLW9ubHl9IHtcblx0XHRwYWRkaW5nLWxlZnQ6IDA7XG5cdFx0cGFkZGluZy1yaWdodDogMDtcblx0fS8vJG1lZGl1bS1vbmx5XG59Ly8uZ3JpZC1jb250YWluZXItLW1vYmlsZVxuIiwiLy8vLy8vLy8vLy8vXG4vLyBHTE9CQUwgLy9cbi8vLy8vLy8vLy8vL1xuXG5ib2R5IHtcbiAgbWFyZ2luOiAwO1xufS8vYm9keVxuXG5oMSwgaDIsIGgzLCBoNCwgaDUsIGg2IHtcbiAgICBtYXJnaW46IDEwcHggMDtcbn1cblxucCB7XG4gICAgZm9udC1mYW1pbHk6IEFyaWFsLCBzYW5zLXNlcmlmO1xufVxuXG5hIHtcbiAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG59Ly9hXG5cbmltZyB7XG4gICAgaGVpZ2h0OiBhdXRvO1xuICAgIG1heC13aWR0aDogMTAwJTtcbn1cblxuLmNvbnRlbnQge1xuICAgIGJvcmRlci10b3A6ICNjY2Mgc29saWQgMXB4O1xuXG4gICAgQG1lZGlhICN7JGxhcmdlLXVwfSB7XG4gICAgICAgIGJvcmRlci10b3A6IG5vbmU7XG4gICAgfS8vJGxhcmdlLXVwXG5cbn0vL2NvbnRlbnRcbiIsIi8vLy8vLy8vLy8vLy8vL1xuLy8gVFlQT0dSQVBIWSAvL1xuLy8vLy8vLy8vLy8vLy8vXG5cbmJvZHkge1xuICAgIGZvbnQtZmFtaWx5OiAkZm9udDtcbn0gLy8gYm9keVxuXG5zdHJvbmcge1xuICAgIGZvbnQtd2VpZ2h0OiA3MDA7XG59IC8vIHN0cm9uZ1xuXG4vLyBIZWFkbGluZSBGb250IEZhbWlseSBTdHlsZXNcblxuLmhlYWRsaW5lLXJlZyB7XG4gICAgZm9udC1mYW1pbHk6ICRmb250O1xuICAgIGZvbnQtd2VpZ2h0OiA0MDA7XG59Ly8uaGVhZGxpbmUtbGlnaHRcblxuLmhlYWRsaW5lLXNlbWlib2xkIHtcbiAgICBmb250LWZhbWlseTogJGZvbnQ7XG4gICAgZm9udC13ZWlnaHQ6IDYwMDtcbn0vLy5oZWFkbGluZS1zZW1pYm9sZFxuXG4uaGVhZGxpbmUtc2VtaWJvbGQtLWl0YWxpYyB7XG4gICAgZm9udC1mYW1pbHk6ICRmb250O1xuICAgIGZvbnQtc3R5bGU6IGl0YWxpYztcblxufS8vLmhlYWRsaW5lLXNlbWlib2xkLS1pdGFsaWNcblxuLmhlYWRsaW5lLWJvbGQge1xuICAgIGZvbnQtZmFtaWx5OiAkZm9udDtcbiAgICBmb250LXdlaWdodDogNzAwO1xufS8vLmhlYWRsaW5lLWJvbGRcblxuXG4vLyBIZWFkbGluZSBTdHlsZXNcblxuLmhlYWRsaW5lLTEge1xuICAgIGZvbnQtc2l6ZTogMjRweDtcbiAgICBsaW5lLWhlaWdodDogMzJweDtcblxuICAgIEBtZWRpYSAjeyRsYXJnZS11cH0ge1xuICAgICAgICBmb250LXNpemU6IDI4cHg7XG4gICAgICAgIGxpbmUtaGVpZ2h0OiAzNnB4O1xuICAgIH0vLyRsYXJnZS11cFxufS8vLmhlYWRsaW5lLTFcblxuLmhlYWRsaW5lLTIge1xuICAgIGZvbnQtc2l6ZTogMThweDtcbiAgICBsaW5lLWhlaWdodDogMjZweDtcblxuICAgIEBtZWRpYSAjeyRsYXJnZS11cH0ge1xuICAgICAgICBmb250LXNpemU6IDIycHg7XG4gICAgICAgIGxpbmUtaGVpZ2h0OiAzMHB4O1xuICAgIH0vLyRsYXJnZS11cFxufS8vLmhlYWRsaW5lLTJcblxuLmhlYWRsaW5lLTMge1xuICAgIGZvbnQtc2l6ZTogMTRweDtcbiAgICBsaW5lLWhlaWdodDogMjRweDtcblxuICAgIEBtZWRpYSAjeyRsYXJnZS11cH0ge1xuICAgICAgICBmb250LXNpemU6IDE4cHg7XG4gICAgICAgIGxpbmUtaGVpZ2h0OiAyOHB4O1xuICAgIH0vLyRsYXJnZS11cFxufS8vLmhlYWRsaW5lLTN0XG5cbi5oZWFkbGluZS00IHtcbiAgICBmb250LXNpemU6IDEycHg7XG4gICAgbGluZS1oZWlnaHQ6IDE2cHg7XG5cbiAgICBAbWVkaWEgI3skbGFyZ2UtdXB9IHtcbiAgICAgICAgZm9udC1zaXplOiAxNnB4O1xuICAgICAgICBsaW5lLWhlaWdodDogMjBweFxuICAgIH1cbn0vLy5oZWFkbGluZS00XG5cbi5oZWFkbGluZS01IHtcbiAgICBmb250LXNpemU6IDEwcHg7XG4gICAgbGluZS1oZWlnaHQ6IDEwcHg7XG5cbiAgICBAbWVkaWEgI3skbGFyZ2UtdXB9IHtcbiAgICAgICAgZm9udC1zaXplOiAxNHB4O1xuICAgICAgICBsaW5lLWhlaWdodDogMTRweDtcbiAgICB9Ly8kbGFyZ2UtdXBcbn0vLy5oZWFkbGluZS01XG4iLCIvLy8vLy8vLy8vLy8vLy9cbi8vIFZBUklBQkxFUyAvL1xuLy8vLy8vLy8vLy8vLy8vXG5cblxuLy8gQmFzZSBDb2xvcnMgXG5cbiRjb2xvci1ibGFjazogIzAwMDtcbiRjb2xvci13aGl0ZTogI2ZmZjtcbiRjb2xvci1ibHVlOiAjMDUzQTU5O1xuJGNvbG9yLWxpZ2h0LWJsdWU6ICMyQjlCQTc7XG4kY29sb3ItZ3JleTogIzVCNUI1QjtcblxuLy8gQmFzZSBCYWNrZ3JvdW5kIENvbG9ycyBcblxuJGNvbG9yLWJnLWJsdWU6I2NkZDhkZTtcblxuXG4vLyBGb250IEZhbWlsaWVzXG5cbiRmb250OiAnT3BlbiBTYW5zJywgc2Fucy1zZXJpZjsiLCIvLy8vXG4vLyBIRUxQRVJTXG4vLy8vXG5cblxuLy8gQmFzZSBDb2xvcnNcblxuLmlzLWJsdWUtcHJpbWFyeSB7XG5cdGNvbG9yOiAkY29sb3ItYmx1ZTtcbn0vLy5pcy1ibHVlLXByaW1hcnlcblxuLmlzLWJsdWUtc2Vjb25kYXJ5IHtcblx0Y29sb3I6ICRjb2xvci1saWdodC1ibHVlO1xufS8vLmlzLWJsdWUtc2Vjb25kYXJ5XG5cbi5pcy1ncmV5IHtcblx0Y29sb3I6ICRjb2xvci1ncmV5O1xufS8vLmlzLWJsdWUtc2Vjb25kYXJ5XG5cbi5pcy13aGl0ZSB7XG5cdGNvbG9yOiAkY29sb3Itd2hpdGU7XG59Ly8uaXMtYmx1ZS1zZWNvbmRhcnlcblxuXG4vLyBCYXNlIEdyYWRpZW50IEJHIENvbG9yc1xuXG4uaXMtYmctYmx1ZSB7XG5cdGJhY2tncm91bmQtY29sb3I6ICRjb2xvci1ibHVlO1xufS8vLmlzLWJnLWJsdWVcblxuLmlzLWJnLWxpZ2h0LWJsdWUge1xuXHRiYWNrZ3JvdW5kLWNvbG9yOiAkY29sb3ItYmctYmx1ZTtcbn0vLy5pcy1iZy1saWdodC1ibHVlXG5cblxuLy9UeXBvZ3JhcGh5XG5cbi5pcy1jYXAge1xuXHR0ZXh0LXRyYW5zZm9ybTogY2FwaXRhbGl6ZTtcbn0vLy5pcy1jYXBcblxuXG4iLCIvLy8vXG4vLyBNQVNUSEVBRFxuLy8vL1xuXG4vLyBCYXNlIE1hc3RoZWFkIFN0eWxlc1xuXG4ubWFzdGhlYWQge1xuICAgIGJhY2tncm91bmQtY29sb3I6ICRjb2xvci13aGl0ZTtcbiAgICB6LWluZGV4OiA1O1xuXG4gICAgLm1hc3RoZWFkX19sb2dvIHtcbiAgICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgICAgICBtYXgtd2lkdGg6IDEwMCU7XG4gICAgICAgIHdpZHRoOiAxNDZweDtcblxuICAgICAgICBAbWVkaWEgI3skbWVkaXVtLXVwfSB7XG4gICAgICAgICAgICB3aWR0aDogMTgzcHg7XG4gICAgICAgIH0vL21lZGl1bS11cFxuXG4gICAgICAgIEBtZWRpYSAjeyRsYXJnZS11cH0ge1xuICAgICAgICAgICAgd2lkdGg6IDMwNXB4O1xuICAgICAgICB9Ly9sYXJnZS11cFxuICAgIH0vLy5tYXN0aGVhZF9fbG9nb1xuXG4gICAgLm1hc3RoZWFkX19tZW51IHtcbiAgICAgICAgcGFkZGluZzogMTBweDtcbiAgICAgICAgbWFyZ2luOiAycHggLTEwcHggMCAwO1xuICAgIH0vLy5tYXN0aGVhZF9fbWVudVxuXG4gICAgLm1hc3RoZWFkX19tZW51LS1idXR0b24ge1xuICAgICAgICBiYWNrZ3JvdW5kOiAkY29sb3ItbGlnaHQtYmx1ZTtcbiAgICAgICAgaGVpZ2h0OiA0cHg7XG4gICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgICAgdHJhbnNpdGlvbjogYmFja2dyb3VuZCAuNHM7XG4gICAgICAgIHdpZHRoOiAyNXB4O1xuXG4gICAgICAgICY6YmVmb3JlIHtcbiAgICAgICAgICAgIGNvbnRlbnQ6ICcnO1xuICAgICAgICAgICAgYmFja2dyb3VuZDogJGNvbG9yLWxpZ2h0LWJsdWU7XG4gICAgICAgICAgICBoZWlnaHQ6IDRweDtcbiAgICAgICAgICAgIGxlZnQ6IDA7XG4gICAgICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgICAgICByaWdodDogMDtcbiAgICAgICAgICAgIHRvcDogLThweDtcbiAgICAgICAgICAgIHRyYW5zZm9ybTogcm90YXRlKDBkZWcpO1xuICAgICAgICAgICAgdHJhbnNpdGlvbjogYWxsIC40cztcbiAgICAgICAgICAgIHdpZHRoOiAyNXB4O1xuICAgICAgICB9Ly86YmVmb3JlXG5cbiAgICAgICAgJjphZnRlciB7XG4gICAgICAgICAgICBjb250ZW50OiAnJztcbiAgICAgICAgICAgIGJhY2tncm91bmQ6ICRjb2xvci1saWdodC1ibHVlO1xuICAgICAgICAgICAgYm90dG9tOiAtOHB4O1xuICAgICAgICAgICAgaGVpZ2h0OiA0cHg7XG4gICAgICAgICAgICBsZWZ0OiAwO1xuICAgICAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICAgICAgcmlnaHQ6IDA7XG4gICAgICAgICAgICB0cmFuc2Zvcm06IHJvdGF0ZSgwZGVnKTtcbiAgICAgICAgICAgIHRyYW5zaXRpb246IGFsbCAuNHM7XG4gICAgICAgICAgICB3aWR0aDogMjVweDtcbiAgICAgICAgfS8vOmFmdGVyXG4gICAgfS8vLm1hc3RoZWFkX19tZW51LS1idXR0b25cblxuICAgIC5tYXN0aGVhZF9fbWVudS0tY2xvc2Uge1xuICAgICAgICBiYWNrZ3JvdW5kOiB0cmFuc3BhcmVudDtcblxuICAgICAgICAmOmJlZm9yZSB7XG4gICAgICAgICAgICB0b3A6IDA7XG4gICAgICAgICAgICB0cmFuc2Zvcm06IHJvdGF0ZSg0NWRlZyk7XG4gICAgICAgIH0vLzpiZWZvcmVcblxuICAgICAgICAmOmFmdGVyIHtcbiAgICAgICAgICAgIGJvdHRvbTogMDtcbiAgICAgICAgICAgIHRyYW5zZm9ybTogcm90YXRlKC00NWRlZyk7XG4gICAgICAgIH0vLzphZnRlclxuXG4gICAgfS8vLm1hc3RoZWFkX19tZW51LS1jbG9zZVxuXG59Ly8ubWFzdGhlYWRcbiIsIi8vLy8vLy8vLy8vL1xuLy8gTUFTVEZPT1QgLy9cbi8vLy8vLy8vLy8vL1xuXG4ubWFzdGZvb3Qge1xuICBtYXJnaW4tdG9wOiA0MHB4O1xuICBwYWRkaW5nOiAyMHB4IDAgNDBweDtcblxuICBAbWVkaWEgI3skbGFyZ2UtdXB9IHtcbiAgICBtYXJnaW4tdG9wOiAxNDBweDtcbiAgICBwYWRkaW5nOiA1MHB4IDAgODBweDtcbiAgfS8vJGxhcmdlLXVwXG5cbiAgLm1hc3RoZWFkX19sb2dvIHtcbiAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgZmxvYXQ6IGxlZnQ7XG4gICAgbWF4LXdpZHRoOiAxMDAlO1xuICAgIHdpZHRoOiAxNDZweDtcblxuICAgIEBtZWRpYSAjeyRtZWRpdW0tdXB9IHtcbiAgICAgIHdpZHRoOiAxODNweDtcbiAgICB9Ly9tZWRpdW0tdXBcblxuICAgIEBtZWRpYSAjeyRsYXJnZS11cH0ge1xuICAgICAgd2lkdGg6IDI3MHB4O1xuICAgIH0vL2xhcmdlLXVwXG4gIH0vLy5tYXN0aGVhZF9fbG9nb1xufS8vLm1hc3Rmb290XG4iLCIvLy8vLy8vLy8vLy8vXG4vLyBCQU5ORVJTXG4vLy8vLy8vLy8vLy8vXG4uYmFubmVyIHtcblx0bWFyZ2luOiAxNXB4IDA7XG5cdHBhZGRpbmc6IDE1cHggMDtcblxuXHRAbWVkaWEgI3skbWVkaXVtLXVwfSB7XG5cdFx0bWFyZ2luOiAzMHB4IDA7XG5cdH0vL21lZGl1bS11cFxuXG5cdEBtZWRpYSAjeyRsYXJnZS11cH0ge1xuXHRcdG1hcmdpbjogNTBweCAwO1xuXHR9Ly9tZWRpdW0tdXBcblxuXHQuYmFubmVyX19oZWFkbGluZSB7XG5cdFx0bWFyZ2luLWxlZnQ6IDIwcHg7XG5cdFx0Zm9udC1zaXplOiAxOHB4O1xuXHRcdEBtZWRpYSAjeyRtZWRpdW0tdXB9IHtcblx0XHRcdGZvbnQtc2l6ZTogMjZweDtcblx0XHR9Ly9tZWRpdW0tdXBcblx0fS8vLmJhbm5lcl9faGVhZGxpbmVcblxuXHQuYmFubmVyX19oZWFkbGluZS0ta2lke1xuXHRcdEBtZWRpYSAjeyRsYXJnZS11cH0ge1xuXHRcdHBhZGRpbmctbGVmdDogMTIwcHg7XG5cdFx0XHQmOmJlZm9yZSB7XG5cdFx0XHQgICAgY29udGVudDogXCIgXCI7XG5cdFx0XHRcdGJhY2tncm91bmQtaW1hZ2U6IHVybCguLi9pbWcvZ3JhcGhpY3MvZ3JhcGhpYy1uaW5qYS5wbmcpO1xuXHRcdFx0ICAgIGJhY2tncm91bmQtcmVwZWF0OiBuby1yZXBlYXQ7XG5cdFx0XHQgICAgYmFja2dyb3VuZC1zaXplOiAxMjBweDtcblx0XHRcdCAgICBkaXNwbGF5OiBibG9jaztcblx0XHRcdCAgICBoZWlnaHQ6IDExM3B4O1xuXHRcdFx0ICAgIGxlZnQ6IDIwcHg7XG5cdFx0XHQgICAgcG9zaXRpb246IGFic29sdXRlO1xuXHRcdFx0ICAgIHRvcDogLTEycHg7XG5cdFx0XHQgICAgd2lkdGg6IDEyMHB4O1xuXHRcdFx0ICAgIHotaW5kZXg6IDM7XG5cdFx0XHR9Ly86YmVmb3JlXG5cdFx0fS8vbGFyZ2UtdXBcblx0fS8vLmJhbm5lcl9faGVhZGxpbmUtLWtpZFxuXG5cdC5iYW5uZXJfX2J1dHRvbiB7XG5cdFx0dGV4dC1hbGlnbjogcmlnaHQ7XG5cdFx0bWFyZ2luLXJpZ2h0OiAyMHB4O1xuXHR9Ly8uYmFubmVyX19idXR0b25cblxufS8vLmJhbm5lclxuXG4uYmFubmVyLS1vbmV7XG5cdGJhY2tncm91bmQtY29sb3I6ICMyYjliYTc7XG59Ly8uYmFubmVyX19jb250YWluZXItLW9uZVxuXG4uYmFubmVyLS10d297XG5cdGJhY2tncm91bmQtY29sb3I6ICMyMjg0OTQ7XG59Ly8uYmFubmVyX19jb250YWluZXItLXR3b1xuXG4uYmFubmVyLS10aHJlZXtcblx0YmFja2dyb3VuZC1jb2xvcjogIzJkNzY4Yjtcbn0vLy5iYW5uZXJfX2NvbnRhaW5lci0tdGhyZWVcblxuLmJhbm5lci0tZm91cntcblx0YmFja2dyb3VuZC1jb2xvcjogIzBjNGI2Nztcbn0vLy5iYW5uZXJfX2NvbnRhaW5lci0tZm91clxuXG4uYmFubmVyLS1maXZle1xuXHRiYWNrZ3JvdW5kLWNvbG9yOiAjMDUzYTU5O1xuXHRwb3NpdGlvbjogcmVsYXRpdmU7XG59Ly8uYmFubmVyX19jb250YWluZXItLWZpdmVcblxuIiwiLy8vLy8vLy8vLy8vLy8vXG4vLyBQT1NUUyAvL1xuLy8vLy8vLy8vLy8vLy8vXG5cbi5wb3N0IHtcblxuICAgIC5wb3N0X19pbWFnZS0tbWVke1xuICAgICAgICBiYWNrZ3JvdW5kOiAjYWFhO1xuICAgICAgICBoZWlnaHQ6IDIyMHB4O1xuICAgICAgICB3aWR0aDogMTAwJTtcbiAgICB9Ly8ucG9zdF9faW1hZ2UtLW1lZFxuXG4gICAgLnBvc3RfX2ltYWdlLS1sYXJnZXtcbiAgICAgICAgYmFja2dyb3VuZDogI2FhYTtcbiAgICAgICAgaGVpZ2h0OiAzNDBweDtcbiAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgfS8vLnBvc3RfX2ltYWdlLS1sYXJnZVxuXG4gICAgLnBvc3RfX2ZlYXR1cmUge1xuICAgICAgICBtYXJnaW4tYm90dG9tOiA0MHB4O1xuXG4gICAgICAgIHAge1xuICAgICAgICAgICAgY29sb3I6ICRjb2xvci1ibHVlO1xuICAgICAgICAgICAgZm9udC1mYW1pbHk6IFwiT3BlbiBTYW5zXCIsc2Fucy1zZXJpZjtcbiAgICAgICAgICAgIGZvbnQtc2l6ZTogMTRweDtcbiAgICAgICAgICAgIGZvbnQtd2VpZ2h0OiA0MDA7XG4gICAgICAgICAgICBsaW5lLWhlaWdodDogMjRweDtcbiAgICAgICAgICAgIG1hcmdpbjogMTBweCAwO1xuXG4gICAgICAgICAgICBAbWVkaWEgI3skbWVkaXVtLXVwfSB7XG4gICAgICAgICAgICAgICAgZm9udC1zaXplOiAxOHB4O1xuICAgICAgICAgICAgICAgIGxpbmUtaGVpZ2h0OiAyOHB4O1xuICAgICAgICAgICAgfSAvLyRtZWRpdW0tdXBcblxuICAgICAgICB9IC8vcFxuXG4gICAgfS8vLnBvc3RfX2ZlYXR1cmVcblxuICAgIC5wb3N0X19zdWItcG9zdHMge1xuICAgICAgICBAbWVkaWEgI3skbWVkaXVtLXVwfSB7XG4gICAgICAgICAgICBtYXJnaW4tYm90dG9tOiAzMHB4O1xuICAgICAgICB9Ly8kbWVkaXVtLXVwXG4gICAgfS8vLnBvc3RfX3N1Yi1wb3N0c1xuXG4gICAgLnBvc3RfX2xvYWQtbW9yZSB7XG4gICAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICB9XG5cbn0vLy5wb3N0XG4iLCIvLy8vLy8vLy8vLy8vLy9cbi8vIEJMT0cgLy9cbi8vLy8vLy8vLy8vLy8vL1xuXG4uYmxvZyB7XG5cbiAgICAuYmxvZ19fZmVhdHVyZSB7XG4gICAgICAgIG1hcmdpbi1ib3R0b206IDQwcHg7XG5cbiAgICAgICAgLmJsb2dfX2ZlYXR1cmUtaW1hZ2Uge1xuICAgICAgICAgICAgYmFja2dyb3VuZDogI2FhYTtcbiAgICAgICAgICAgIGhlaWdodDogMjI4cHg7XG4gICAgICAgICAgICB3aWR0aDogMTAwJTtcblxuICAgICAgICAgICAgQG1lZGlhICN7JG1lZGl1bS11cH0ge1xuICAgICAgICAgICAgICAgIGhlaWdodDogNDU1cHg7XG4gICAgICAgICAgICB9XG4gICAgICAgIH0vLy5ibG9nX19pbWFnZS0tbGFyZ2VcbiAgICB9Ly8uYmxvZ19fZmVhdHVyZVxuXG4gICAgLmJsb2dfX3NvY2lhbCB7XG4gICAgICAgIHBhZGRpbmc6IDIwcHggMDtcblxuICAgIH0vLy5ibG9nX19mZWF0dXJlLXNvY2lhbFxuXG4gICAgLmJsb2dfX3NvY2lhbC1saXN0IHtcbiAgICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgICAgICBtYXJnaW46IDAgNXB4IDVweCAwO1xuICAgICAgICBAbWVkaWEgI3skbWVkaXVtLXVwfSB7XG4gICAgICAgICAgICBtYXJnaW46IDAgNXB4IDAgMDtcbiAgICAgICAgfS8vJG1lZGl1bS11cFxuICAgIH0vLy5ibG9nX19zb2NpYWwtbGlzdFxuXG4gICAgLmJsb2dfX2NvbHVtbiB7XG4gICAgICAgIGJvcmRlci1sZWZ0OiBub25lO1xuICAgICAgICBwYWRkaW5nOiBub25lO1xuXG4gICAgICAgIEBtZWRpYSAjeyRsYXJnZS11cH0ge1xuICAgICAgICAgICAgYm9yZGVyLWxlZnQ6ICNjZGQ4ZGUgc29saWQgMnB4O1xuICAgICAgICAgICAgcGFkZGluZzogMCAwIDEwcHggMjBweDtcbiAgICAgICAgfS8vJGxhcmdlLXVwXG5cbiAgICAgICAgLmJsb2dfX2NvbHVtbi1mZWF0dXJlIHtcbiAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IDIwcHg7XG5cbiAgICAgICAgICAgIC5ibG9nX19jb2x1bW4taW1hZ2Uge1xuXG4gICAgICAgICAgICAgICAgYmFja2dyb3VuZDogI2FhYTtcbiAgICAgICAgICAgICAgICBoZWlnaHQ6IDE2MHB4O1xuICAgICAgICAgICAgICAgIHdpZHRoOiAxMDAlO1xuXG4gICAgICAgICAgICAgICAgQG1lZGlhICN7JG1lZGl1bS11cH0ge1xuICAgICAgICAgICAgICAgICAgICBoZWlnaHQ6IDE2MHB4O1xuICAgICAgICAgICAgICAgIH0vLyRtZWRpdW0tdXBcblxuICAgICAgICAgICAgfS8vLmJsb2dfX2NvbHVtbi1pbWFnZVxuXG4gICAgICAgICAgICBpbWcge1xuICAgICAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6ICRjb2xvci1iZy1ibHVlO1xuICAgICAgICAgICAgfSAvLyBpbWdcblxuICAgICAgICB9Ly8uYmxvZ19fY29sdW1uLWZlYXR1cmVcblxuICAgICAgICAuYmxvZ19fY29sdW1uLWhlYWRsaW5lIHtcbiAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IDEwcHg7XG4gICAgICAgICAgICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuXG4gICAgICAgICAgICBAbWVkaWEgI3skbWVkaXVtLXVwfSB7XG4gICAgICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogMjBweDtcbiAgICAgICAgICAgIH0vLyRtZWRpdW0tdXBcbiAgICAgICAgfS8vLmJsb2dfX2NvbHVtbi1oZWFkbGluZVxuXG4gICAgfS8vLmJsb2dfX2NvbHVtblxuXG59Ly8uYmxvZ1xuXG4ucG9zdCB7XG4gICAgaW1nIHtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJGNvbG9yLWJnLWJsdWU7XG4gICAgfSAvLyBpbWdcbn0gLy8gLnBvc3RcbiIsIi8vLy8vLy8vLy8vLy8vL1xuLy8gV09SRFBSRVNTIC8vXG4vLy8vLy8vLy8vLy8vLy9cblxuLmNvbnRlbnQtc2luZ2xlIHtcblxuICAgIC5ibG9nX19mZWF0dXJlIHtcbiAgICAgICAgaW1nIHtcbiAgICAgICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICB9IC8vIGltZ1xuICAgIH0gLy8gLmJsb2dfX2ZlYXR1cmVcblxuICAgIC5ibG9nX19jb250ZW50IHtcblxuICAgICAgICBoMSxcbiAgICAgICAgaDIsXG4gICAgICAgIGgzIHtcbiAgICAgICAgICAgIGNvbG9yOiAkY29sb3ItYmx1ZTtcbiAgICAgICAgICAgIGZvbnQtZmFtaWx5OiBcIk9wZW4gU2Fuc1wiLHNhbnMtc2VyaWY7XG4gICAgICAgICAgICBmb250LXNpemU6IDE4cHg7XG4gICAgICAgICAgICBmb250LXdlaWdodDogNzAwO1xuICAgICAgICAgICAgbGluZS1oZWlnaHQ6IDI2cHg7XG5cbiAgICAgICAgICAgIEBtZWRpYSAjeyRtZWRpdW0tdXB9IHtcbiAgICAgICAgICAgICAgICBmb250LXNpemU6IDIycHg7XG4gICAgICAgICAgICAgICAgbGluZS1oZWlnaHQ6IDMwcHg7XG4gICAgICAgICAgICB9IC8vIG1lZGl1bS11cFxuICAgICAgICB9IC8vIGgxLCBoMiwgaDNcblxuICAgICAgICBoNCxcbiAgICAgICAgaDUsXG4gICAgICAgIGg2IHtcbiAgICAgICAgICAgIGNvbG9yOiAkY29sb3ItZ3JleTtcbiAgICAgICAgICAgIGZvbnQtZmFtaWx5OiBcIk9wZW4gU2Fuc1wiLHNhbnMtc2VyaWY7XG4gICAgICAgICAgICBmb250LXNpemU6IDE0cHg7XG4gICAgICAgICAgICBmb250LXdlaWdodDogNzAwO1xuICAgICAgICAgICAgbGluZS1oZWlnaHQ6IDI0cHg7XG5cbiAgICAgICAgICAgIEBtZWRpYSAjeyRtZWRpdW0tdXB9IHtcbiAgICAgICAgICAgICAgICBmb250LXNpemU6IDE4cHg7XG4gICAgICAgICAgICAgICAgbGluZS1oZWlnaHQ6IDI4cHg7XG4gICAgICAgICAgICB9IC8vIG1lZGl1bS11cFxuICAgICAgICB9IC8vIGg0LCBoNSwgaDZcblxuICAgICAgICBwLFxuICAgICAgICBsaSB7XG4gICAgICAgICAgICBjb2xvcjogJGNvbG9yLWdyZXk7XG4gICAgICAgICAgICBmb250LXNpemU6IDE0cHg7XG4gICAgICAgICAgICBsaW5lLWhlaWdodDogMjRweDtcbiAgICAgICAgICAgIGZvbnQtd2VpZ2h0OiA0MDA7XG4gICAgICAgICAgICBmb250LWZhbWlseTogXCJPcGVuIFNhbnNcIixzYW5zLXNlcmlmO1xuICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogMjRweDtcblxuICAgICAgICAgICAgQG1lZGlhICN7JG1lZGl1bS11cH0ge1xuICAgICAgICAgICAgICAgIGZvbnQtc2l6ZTogMThweDtcbiAgICAgICAgICAgICAgICBsaW5lLWhlaWdodDogMjhweDtcbiAgICAgICAgICAgIH0gLy8gbWVkaXVtLXVwXG4gICAgICAgIH0gLy8gcFxuXG4gICAgICAgIG9sLFxuICAgICAgICB1bCB7XG4gICAgICAgICAgICBwYWRkaW5nLWxlZnQ6IDIwcHg7XG4gICAgICAgIH1cblxuICAgICAgICBoMSxcbiAgICAgICAgaDIsXG4gICAgICAgIGgzLFxuICAgICAgICBoNCxcbiAgICAgICAgaDUsXG4gICAgICAgIGg2LFxuICAgICAgICBwLFxuICAgICAgICBsaSB7XG4gICAgICAgICAgICBmbG9hdDogbGVmdDtcbiAgICAgICAgICAgIHdpZHRoOiAxMDAlO1xuXG4gICAgICAgICAgICBpbWcge1xuICAgICAgICAgICAgICAgIGZsb2F0OiBsZWZ0O1xuICAgICAgICAgICAgICAgIG1hcmdpbjogMCAyMHB4IDIwcHggMDtcblxuICAgICAgICAgICAgICAgICYuYWxpZ25yaWdodCB7XG4gICAgICAgICAgICAgICAgICAgIGZsb2F0OiByaWdodDtcbiAgICAgICAgICAgICAgICAgICAgbWFyZ2luOiAwIDAgMjBweCAyMHB4O1xuICAgICAgICAgICAgICAgIH0gLy8gaW1nLmFsaWducmlnaHRcbiAgICAgICAgICAgIH0gLy8gaW1nXG5cbiAgICAgICAgICAgIGEge1xuICAgICAgICAgICAgICAgIGNvbG9yOiAkY29sb3ItbGlnaHQtYmx1ZTtcbiAgICAgICAgICAgIH0gLy8gYVxuXG4gICAgICAgICAgICBiIHtcbiAgICAgICAgICAgICAgICBmb250LXdlaWdodDogNzAwO1xuICAgICAgICAgICAgfSAvLyBiXG5cbiAgICAgICAgICAgIGkge1xuICAgICAgICAgICAgICAgIGZvbnQtc3R5bGU6IGl0YWxpYztcbiAgICAgICAgICAgIH0gLy8gaVxuICAgICAgICB9IC8vIGgxLCBoMiwgaDMsIGg0LCBoNSwgaDYsIHAsIGxpXG4gICAgfSAvLyAuYmxvZ19fY29udGVudFxufSAvLyAuY29udGVudC1zaW5nbGVcbiIsIi8vLy8vLy8vLy8vLy9cbi8vIE5BVklHQVRJT05cbi8vLy8vLy8vLy8vLy9cblxuXG5cbi8vIE5hdiBIZWFkZXJcblxuLm5hdi1iYWNrZ3JvdW5kIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkY29sb3ItYmctYmx1ZTtcbn1cblxuLm5hdi1oZWFkZXJcdHtcbiAgICBoZWlnaHQ6IDMwcHg7XG4gICAgcGFkZGluZzogMjBweCAwO1xuXG4gICAgQG1lZGlhICN7JGxhcmdlLXVwfSB7XG4gICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICBoZWlnaHQ6IDEwMCU7XG4gICAgICAgIHRleHQtYWxpZ246IHJpZ2h0O1xuICAgIH0vL2xhcmdlLXVwXG5cbiAgICAubmF2LWhlYWRlcl9fcGhvbmUge1xuICAgICAgICBmb250LXNpemU6IDE4cHg7XG4gICAgICAgIGxlZnQ6IDUwJTtcbiAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICB3aWR0aDogMTUwcHg7XG5cbiAgICAgICAgQG1lZGlhICN7JG1lZGl1bS11cH0ge1xuICAgICAgICAgICAgZm9udC1zaXplOiAyNHB4O1xuICAgICAgICAgICAgd2lkdGg6IDIwMHB4O1xuICAgICAgICB9Ly9tZWRpdW0tdXBcblxuICAgICAgICBAbWVkaWEgI3skbGFyZ2UtdXB9IHtcbiAgICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICAgICAgZm9udC1zaXplOiAzMHB4O1xuICAgICAgICAgICAgbGVmdDogMDtcbiAgICAgICAgICAgIG1hcmdpbjogMDtcbiAgICAgICAgICAgIHBvc2l0aW9uOiBzdGF0aWM7XG4gICAgICAgICAgICB0ZXh0LWFsaWduOiByaWdodDtcbiAgICAgICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICB9Ly9sYXJnZS11cFxuICAgIH0vLy5uYXYtaGVhZGVyX19waG9uZVxuXG4gICAgLm5hdi1oZWFkZXJfX21lbnUge1xuICAgICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgICAgIGZsb2F0OiByaWdodDtcbiAgICAgICAgbWFyZ2luLXRvcDogNXB4O1xuICAgIH0vLy5uYXYtaGVhZGVyX19tZW51XG59Ly8ubmF2LWhlYWRlclxuXG5cblxuLy8gTmF2IE1haW5cblxuLm5hdi1tYWluIHtcbiAgICBkaXNwbGF5OiBub25lO1xuICAgIHotaW5kZXg6IDM7XG5cbiAgICB1bCBsaSB7XG4gICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIH1cblxuICAgIEBtZWRpYSAjeyRsYXJnZS11cH0ge1xuICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgaGVpZ2h0OiA2MHB4O1xuICAgICAgICBsaW5lLWhlaWdodDogNjBweDtcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogMHB4O1xuICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgfS8vbGFyZ2UtdXBcblxuICAgIC5yb3RhdGUtYXJyb3c6OmFmdGVyIHtcbiAgICAgICAgY29udGVudDogXCIgXCI7XG4gICAgICAgIHRyYW5zZm9ybTogcm90YXRlKDkwZGVnKTtcbiAgICAgICAgdHJhbnNmb3JtLW9yaWdpbjogMjAlIDQwJTtcbiAgICAgICAgLXdlYmtpdC10cmFuc2l0aW9uOiAtd2Via2l0LXRyYW5zZm9ybSAuMXMgZWFzZS1pbi1vdXQ7XG5cbiAgICAgICAgQG1lZGlhICN7JGxhcmdlLXVwfXtcbiAgICAgICAgICAgIHRyYW5zZm9ybTogbm9uZTtcbiAgICAgICAgICAgIHRyYW5zZm9ybS1vcmlnaW46IG5vbmU7XG4gICAgICAgICAgICAtd2Via2l0LXRyYW5zaXRpb246IG5vbmU7XG4gICAgICAgIH0vLyRsYXJnZS11cFxuXG4gICAgfS8vLm5hdi1tYWluX19yb3RhdGUtYXJyb3dcblxuICAgIC8vIE1lbnVcblxuICAgIC5tZW51IHtcbiAgICAgICAgQG1lZGlhICN7JGxhcmdlLXVwfSB7XG4gICAgICAgICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgICB9Ly8ubGFyZ2UtdXBcblxuICAgICAgICA+Lm1lbnUtaXRlbSB7XG5cbiAgICAgICAgICAgICAgICBmbGV4OiAxIDEgMHB4O1xuICAgICAgICAgICAgICAgIHdpZHRoOiBhdXRvO1xuXG4gICAgICAgICAgICBhIHtcbiAgICAgICAgICAgICAgICBjb2xvcjogJGNvbG9yLXdoaXRlO1xuICAgICAgICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICAgICAgICAgIGZvbnQtZmFtaWx5OiAkZm9udDtcbiAgICAgICAgICAgICAgICBmb250LXdlaWdodDogNzAwO1xuICAgICAgICAgICAgICAgIHBhZGRpbmc6IDIwcHggMHB4IDIwcHggMjBweDtcbiAgICAgICAgICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICAgICAgICB9Ly9hXG5cbiAgICAgICAgICAgIGE6OmFmdGVyIHtcbiAgICAgICAgICAgICAgICBjb250ZW50OiBcIiBcIjtcbiAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoLi4vaW1nL2ljb25zL2ljb24tYXJyb3ctd2hpdGUuc3ZnKTtcbiAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kLXJlcGVhdDogbm8tcmVwZWF0O1xuICAgICAgICAgICAgICAgIGJhY2tncm91bmQtc2l6ZTogOHB4O1xuICAgICAgICAgICAgICAgIGZsb2F0OiByaWdodDtcbiAgICAgICAgICAgICAgICBoZWlnaHQ6IDE1cHg7XG4gICAgICAgICAgICAgICAgbWFyZ2luLXJpZ2h0OiAxNXB4O1xuICAgICAgICAgICAgICAgIHdpZHRoOiAxNXB4O1xuICAgICAgICAgICAgfS8vLm5hdi1tYWluX19pdGVtXG5cbiAgICAgICAgICAgIEBtZWRpYSAjeyRsYXJnZS11cH0ge1xuICAgICAgICAgICAgICAgIGZvbnQtZmFtaWx5OiAkZm9udDtcbiAgICAgICAgICAgICAgICBtYXJnaW4tbGVmdDogMDtcbiAgICAgICAgICAgICAgICBwYWRkaW5nOiAwO1xuICAgICAgICAgICAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICAgICAgICAgICAgICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuXG4gICAgICAgICAgICAgICAgYXtcbiAgICAgICAgICAgICAgICAgICAgcGFkZGluZzogMDtcbiAgICAgICAgICAgICAgICAgICAgcGFkZGluZy1sZWZ0OiAwO1xuICAgICAgICAgICAgICAgIH0vL2FcblxuICAgICAgICAgICAgICAgIGE6YWZ0ZXIge1xuICAgICAgICAgICAgICAgICAgICBkaXNwbGF5OiBub25lO1xuICAgICAgICAgICAgICAgIH0vL2E6YWZ0ZXJcblxuICAgICAgICAgICAgICAgICY6aG92ZXIge1xuICAgICAgICAgICAgICAgICAgICBAbWVkaWEgI3skbGFyZ2UtdXB9IHtcbiAgICAgICAgICAgICAgICAgICAgICAgID4gdWwge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICAgICAgICAgICAgICAgICAgfS8vdWxcbiAgICAgICAgICAgICAgICAgICAgfS8vbGFyZ2UtdXBcbiAgICAgICAgICAgICAgICB9Ly86aG92ZXJcblxuICAgICAgICAgICAgfS8vbGFyZ2UtdXBcblxuICAgICAgICB9Ly8ubWVudS1pdGVtXG5cbiAgICAgICAgPiAubWVudS1pdGVtOmxhc3QtY2hpbGQge1xuICAgICAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgICAgICAgQG1lZGlhICN7JGxhcmdlLXVwfSB7XG4gICAgICAgICAgICAgICAgdGV4dC1hbGlnbjogbGVmdDtcblxuICAgICAgICAgICAgICAgIGEge1xuICAgICAgICAgICAgICAgICAgICBwYWRkaW5nLWxlZnQ6IDIwcHg7XG4gICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgJjphZnRlciB7XG4gICAgICAgICAgICAgICAgICAgIGNvbnRlbnQ6IFwiIFwiO1xuICAgICAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoLi4vaW1nL2dyYXBoaWNzL2dyYXBoaWMtbmluamEucG5nKTtcbiAgICAgICAgICAgICAgICAgICAgYmFja2dyb3VuZC1yZXBlYXQ6IG5vLXJlcGVhdDtcbiAgICAgICAgICAgICAgICAgICAgYmFja2dyb3VuZC1zaXplOiA5NXB4O1xuICAgICAgICAgICAgICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgICAgICAgICAgICAgaGVpZ2h0OiAxMDBweDtcbiAgICAgICAgICAgICAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICAgICAgICAgICAgICByaWdodDogLTE1cHg7XG4gICAgICAgICAgICAgICAgICAgIHRvcDogLTE1cHg7XG4gICAgICAgICAgICAgICAgICAgIHdpZHRoOiAxMDBweDtcbiAgICAgICAgICAgICAgICAgICAgei1pbmRleDogMztcbiAgICAgICAgICAgICAgICB9Ly86YWZ0ZXJcbiAgICAgICAgICAgIH0vLyRsYXJnZS11cFxuICAgICAgICB9Ly9hXG5cbiAgICAgICAgLm1lbnUtaXRlbTpudGgtY2hpbGQoMSkge1xuICAgICAgICAgICAgQGluY2x1ZGUgZ3JhZGllbnQoIzQ1YTdiMiwgIzJiOWJhNyk7XG4gICAgICAgIH0vLy5uYXYtbWFpbl9fbGlzdC1pdGVtOm50aC1jaGlsZCgxKVxuXG4gICAgICAgIC5tZW51LWl0ZW06bnRoLWNoaWxkKDIpe1xuICAgICAgICAgICAgQGluY2x1ZGUgZ3JhZGllbnQoIzNkOTNhMSwgIzIyODQ5NCk7XG4gICAgICAgIH0vLy5uYXYtbWFpbl9fbGlzdC1pdGVtOm50aC1jaGlsZCgyKVxuXG4gICAgICAgIC5tZW51LWl0ZW06bnRoLWNoaWxkKDMpe1xuICAgICAgICAgICAgQGluY2x1ZGUgZ3JhZGllbnQoIzQ3ODc5OSwgIzJkNzY4Yik7XG4gICAgICAgIH0vLy5uYXYtbWFpbl9fbGlzdC1pdGVtOm50aC1jaGlsZCgzKVxuXG4gICAgICAgIC5tZW51LWl0ZW06bnRoLWNoaWxkKDQpe1xuICAgICAgICAgICAgQGluY2x1ZGUgZ3JhZGllbnQoIzJhNjE3OSwgIzBjNGI2Nyk7XG4gICAgICAgIH0vLy5uYXYtbWFpbl9fbGlzdC1pdGVtOm50aC1jaGlsZCg0KVxuXG4gICAgICAgIC5tZW51LWl0ZW06bnRoLWNoaWxkKDUpe1xuICAgICAgICAgICAgQGluY2x1ZGUgZ3JhZGllbnQoIzIyNTE2ZCwgIzA1M2E1OSk7XG4gICAgICAgIH0vLy5uYXYtbWFpbl9fbGlzdC1pdGVtOm50aC1jaGlsZCg1KVxuXG4gICAgICAgIEBtZWRpYSAjeyRsYXJnZS11cH0ge1xuXG4gICAgICAgICAgICAubWVudS1pdGVtOm50aC1jaGlsZCgxKSB1bCBsaXtcbiAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjNDVhN2IyO1xuICAgICAgICAgICAgfS8vLm1lbnUtaXRlbTpudGgtY2hpbGQoMSlcblxuICAgICAgICAgICAgLm1lbnUtaXRlbTpudGgtY2hpbGQoMikgdWwgbGl7XG4gICAgICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogIzNkOTNhMTtcbiAgICAgICAgICAgIH0vLy5tZW51LWl0ZW06bnRoLWNoaWxkKDIpIGxpXG5cbiAgICAgICAgICAgIC5tZW51LWl0ZW06bnRoLWNoaWxkKDMpIHVsIGxpe1xuICAgICAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6ICM0Nzg3OTk7XG4gICAgICAgICAgICB9Ly8ubWVudS1pdGVtOm50aC1jaGlsZCgzKVxuXG4gICAgICAgICAgICAubWVudS1pdGVtOm50aC1jaGlsZCg0KSB1bCBsaXtcbiAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjMmE2MTc5O1xuICAgICAgICAgICAgfS8vLm1lbnUtaXRlbTpudGgtY2hpbGQoNCkgbGlcblxuICAgICAgICAgICAgLm1lbnUtaXRlbTpudGgtY2hpbGQoNSkgdWwgbGl7XG4gICAgICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogIzIyNTE2ZDtcbiAgICAgICAgICAgIH0vLy5tZW51LWl0ZW06bnRoLWNoaWxkKDUpIGxpXG5cbiAgICAgICAgfS8vbGFyZ2UtdXBcblxuICAgICAgICAuc3ViLW1lbnUge1xuICAgICAgICAgICAgZGlzcGxheTogbm9uZTtcblxuICAgICAgICAgICAgQG1lZGlhICN7JGxhcmdlLXVwfSB7XG4gICAgICAgICAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICAgICAgICAgIHdpZHRoOiAyNDBweDtcbiAgICAgICAgICAgICAgICB0ZXh0LWFsaWduOiBsZWZ0O1xuICAgICAgICAgICAgfS8vbGFyZ2UtdXBcblxuICAgICAgICAgICAgLm1lbnUtaXRlbSB7XG4gICAgICAgICAgICAgICAgYmFja2dyb3VuZDogJGNvbG9yLXdoaXRlO1xuICAgICAgICAgICAgICAgIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCAkY29sb3ItYmx1ZTtcbiAgICAgICAgICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG5cbiAgICAgICAgICAgICAgICBhIHtcbiAgICAgICAgICAgICAgICAgICAgY29sb3I6ICRjb2xvci1ibHVlO1xuICAgICAgICAgICAgICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgICAgICAgICAgICAgZm9udC1mYW1pbHk6ICRmb250O1xuICAgICAgICAgICAgICAgICAgICBmb250LXdlaWdodDogNjAwO1xuICAgICAgICAgICAgICAgICAgICBmb250LXNpemU6IDE0cHg7XG4gICAgICAgICAgICAgICAgICAgIHBhZGRpbmc6IDEycHggMHB4IDEycHggMjBweDtcbiAgICAgICAgICAgICAgICAgICAgdGV4dC10cmFuc2Zvcm06IGNhcGl0YWxpemU7XG4gICAgICAgICAgICAgICAgfS8vYVxuXG4gICAgICAgICAgICAgICAgJjpob3ZlciB7XG4gICAgICAgICAgICAgICAgICAgIEBtZWRpYSAjeyRsYXJnZS11cH0ge1xuICAgICAgICAgICAgICAgICAgICAgICAgPiB1bCB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgICAgICAgICAgICAgICAgICB9Ly91bFxuICAgICAgICAgICAgICAgICAgICB9Ly9sYXJnZS11cFxuICAgICAgICAgICAgICAgIH0vLzpob3ZlclxuXG4gICAgICAgICAgICAgICAgQG1lZGlhICN7JGxhcmdlLXVwfSB7XG4gICAgICAgICAgICAgICAgICAgIGJvcmRlci1ib3R0b206IG5vbmU7XG4gICAgICAgICAgICAgICAgICAgID5hIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIGNvbG9yOiAkY29sb3Itd2hpdGU7XG4gICAgICAgICAgICAgICAgICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgICAgICAgICAgICAgICAgIGZvbnQtc2l6ZTogMTZweDtcbiAgICAgICAgICAgICAgICAgICAgICAgIHBhZGRpbmc6IDAgMCAwIDIwcHg7XG4gICAgICAgICAgICAgICAgICAgICAgICAmOmhvdmVyIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kOiByZ2JhKCAjMDAwLCAwLjEgKTtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgIH0vLyY6aG92ZXJcbiAgICAgICAgICAgICAgICAgICAgfS8vYVxuXG4gICAgICAgICAgICAgICAgfS8vJGxhcmdlLXVwXG5cbiAgICAgICAgICAgIH0vLy5tZW51LWl0ZW1cblxuICAgICAgICAgICAgLnN1Yi1tZW51IHtcbiAgICAgICAgICAgICAgICBAbWVkaWEgI3skbGFyZ2UtdXB9IHtcbiAgICAgICAgICAgICAgICAgICAgbGVmdDogMjQwcHg7XG4gICAgICAgICAgICAgICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgICAgICAgICAgICAgdG9wOiAwO1xuICAgICAgICAgICAgICAgIH0vL2xhcmdlLXVwXG5cbiAgICAgICAgICAgICAgICAgICAgLm1lbnUtaXRlbSB7XG4gICAgICAgICAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiBsaWdodGVuKCRjb2xvci1ncmV5LCAyMCUpO1xuICAgICAgICAgICAgICAgICAgICAgICAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkICRjb2xvci13aGl0ZTtcblxuICAgICAgICAgICAgICAgICAgICAgICAgJjpsYXN0LWNoaWxkIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBib3JkZXItYm90dG9tOiAxcHggc29saWQgdHJhbnNwYXJlbnQ7XG4gICAgICAgICAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICAgICAgQG1lZGlhICN7JGxhcmdlLXVwfSB7XG4gICAgICAgICAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiBsaWdodGVuKCRjb2xvci1ncmV5LCAyMCUpO1xuICAgICAgICAgICAgICAgICAgICAgICAgd2lkdGg6IDI0MHB4O1xuXG4gICAgICAgICAgICAgICAgICAgICAgICAmOm5vdCg6bGFzdC1jaGlsZCl7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgYm9yZGVyLWJvdHRvbTogbm9uZTtcbiAgICAgICAgICAgICAgICAgICAgICAgIH0vL2xhc3QtY2hpbGRcblxuICAgICAgICAgICAgICAgICAgICB9Ly9sYXJnZS11cFxuXG4gICAgICAgICAgICAgICAgfS8vLm1lbnUtaXRlbVxuXG4gICAgICAgICAgICAgICAgYSB7XG4gICAgICAgICAgICAgICAgICAgIGNvbG9yOiAkY29sb3Itd2hpdGU7XG4gICAgICAgICAgICAgICAgICAgIGZvbnQtZmFtaWx5OiAkZm9udDtcblxuICAgICAgICAgICAgICAgIEBtZWRpYSAjeyRsYXJnZS11cH0ge1xuICAgICAgICAgICAgICAgICAgICBjb2xvcjogJGNvbG9yLXdoaXRlO1xuICAgICAgICAgICAgICAgICAgICBmb250LXdlaWdodDogNjAwO1xuICAgICAgICAgICAgICAgIH0vL2xhcmdlLXVwXG5cbiAgICAgICAgICAgICAgICAgICAgJjphZnRlciB7XG4gICAgICAgICAgICAgICAgICAgICAgICBjb250ZW50OiBcIiBcIjtcbiAgICAgICAgICAgICAgICAgICAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgICAgICAgICAgICAgICAgIH0vLzphZnRlclxuICAgICAgICAgICAgICAgIH0vL2FcblxuICAgICAgICAgICAgfS8vLnN1Yi1tZW51XG5cbiAgICAgICAgICAgIC5zdWItbWVudS0tYXJyb3c6OmFmdGVyIHtcbiAgICAgICAgICAgICAgICBjb250ZW50OiBcIiBcIjtcbiAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoLi4vaW1nL2ljb25zL2ljb24tYXJyb3ctYmx1ZS5zdmcpO1xuICAgICAgICAgICAgICAgIGJhY2tncm91bmQtcmVwZWF0OiBuby1yZXBlYXQ7XG4gICAgICAgICAgICAgICAgYmFja2dyb3VuZC1zaXplOiA4cHg7XG4gICAgICAgICAgICAgICAgZmxvYXQ6IHJpZ2h0O1xuICAgICAgICAgICAgICAgIGhlaWdodDogMTVweDtcbiAgICAgICAgICAgICAgICBtYXJnaW4tcmlnaHQ6IDE1cHg7XG4gICAgICAgICAgICAgICAgd2lkdGg6IDE1cHg7XG4gICAgICAgICAgICB9Ly86YWZ0ZXJcblxuICAgICAgICB9Ly8uc3ViLW1lbnUtLWFycm93XG5cbiAgICAgICAgLnN1Yi1tZW51LS1zaG93IHtcbiAgICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICB9Ly8uc3ViLW1lbnUtLXNob3dcblxuICAgICAgICAubWVudS1pdGVtOmxhc3QtY2hpbGQgLnN1Yi1tZW51IC5zdWItbWVudSB7XG4gICAgICAgICAgICBAbWVkaWEgI3skbGFyZ2UtdXB9IHtcbiAgICAgICAgICAgICAgICBsZWZ0OiAtMjQwcHg7XG4gICAgICAgICAgICB9Ly8kbGFyZ2UtdXBcbiAgICAgICAgfS8vLm1lbnUtaXRlbTpsYXN0LWNoaWxkXG4gICAgfS8vLm1lbnVcblxufS8vLm5hdi1tYWluXG5cbi5uYXYtbWFpbi0tc2hvdyB7XG4gICAgZGlzcGxheTogYmxvY2s7XG59Ly8ubmF2LW1haW4tLXNob3dcblxuXG4vLyBBdXggTmF2aWdhdGlvblxuXG4ubmF2LWF1eCB7XG4gICAgZGlzcGxheTogbm9uZTtcbiAgICBAbWVkaWEgI3skbGFyZ2UtdXB9IHtcbiAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgIG1hcmdpbi1ib3R0b206IDEwcHg7XG4gICAgfS8vbGFyZ2UtdXBcblxuICAgIC5tZW51IHtcblxuICAgICAgICBAbWVkaWEgI3skbGFyZ2UtdXB9IHtcbiAgICAgICAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICAgICAgfS8vbGFyZ2UtdXBcblxuICAgICAgICAubWVudS1pdGVtIHtcbiAgICAgICAgICAgIGJhY2tncm91bmQ6ICNmMWYxZjE7XG4gICAgICAgICAgICBib3JkZXItYm90dG9tOiAxcHggc29saWQgI2UwZTBlMDtcblxuICAgICAgICAgICAgQG1lZGlhICN7JGxhcmdlLXVwfSB7XG4gICAgICAgICAgICAgICAgYmFja2dyb3VuZDogbm9uZTtcbiAgICAgICAgICAgICAgICBib3JkZXItYm90dG9tOiBub25lO1xuICAgICAgICAgICAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICAgICAgICAgICAgICBwYWRkaW5nOiA1cHg7XG4gICAgICAgICAgICAgICAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbiAgICAgICAgICAgIH0vL2xhcmdlLXVwXG5cbiAgICAgICAgICAgIGEge1xuICAgICAgICAgICAgICAgIGNvbG9yOiAkY29sb3ItZ3JleTtcbiAgICAgICAgICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgICAgICAgICBmb250LWZhbWlseTogJGZvbnQ7XG4gICAgICAgICAgICAgICAgZm9udC1zaXplOiAxMnB4O1xuICAgICAgICAgICAgICAgIGZvbnQtd2VpZ2h0OiA3MDA7XG4gICAgICAgICAgICAgICAgcGFkZGluZzogMTBweCAwcHggMTBweCAyMHB4O1xuICAgICAgICAgICAgICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgICAgICAgICAgICAgICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuICAgICAgICAgICAgICAgIHRyYW5zaXRpb246IC4ycyBlYXNlO1xuXG4gICAgICAgICAgICAgICAgJjphZnRlciB7XG4gICAgICAgICAgICAgICAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgICAgICAgICAgICAgfS8vYTphZnRlclxuXG4gICAgICAgICAgICAgICAgQG1lZGlhICN7JGxhcmdlLXVwfSB7XG4gICAgICAgICAgICAgICAgICAgIGNvbG9yOiAkY29sb3ItYmx1ZTtcbiAgICAgICAgICAgICAgICAgICAgZm9udC1zaXplOiAxNnB4O1xuICAgICAgICAgICAgICAgICAgICBtYXJnaW4tbGVmdDogMzBweDtcbiAgICAgICAgICAgICAgICAgICAgcGFkZGluZy1sZWZ0OiAwcHg7XG4gICAgICAgICAgICAgICAgICAgICY6aG92ZXIge1xuICAgICAgICAgICAgICAgICAgICAgICAgY29sb3I6ICRjb2xvci1saWdodC1ibHVlO1xuICAgICAgICAgICAgICAgICAgICB9Ly86aG92ZXJcbiAgICAgICAgICAgICAgICB9Ly9sYXJnZS11cFxuXG4gICAgICAgICAgICB9Ly9hXG5cbiAgICAgICAgfS8vLm1lbnUtaXRlbVxuXG4gICAgICAgIC5tZW51LWl0ZW06bGFzdC1jaGlsZCB7XG4gICAgICAgICAgICBAbWVkaWEgI3skbGFyZ2UtdXB9IHtcbiAgICAgICAgICAgICAgICAmOjphZnRlciB7XG4gICAgICAgICAgICAgICAgICAgIGNvbnRlbnQ6IG5vbmU7XG4gICAgICAgICAgICAgICAgfS8vOmFmdGVyXG4gICAgICAgICAgICB9Ly8kbGFyZ2UtdXBcbiAgICAgICAgfS8vLm1lbnUtaXRlbTpsYXN0LWNoaWxkXG5cbiAgICB9Ly8ubWVudVxuXG4gICAgLm5hdi1hdXhfX3NlYXJjaCB7XG4gICAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICB9Ly8ubmF2LWF1eF9fc2VhcmNoXG5cbiAgICAubmF2LWF1eF9fc2VhcmNoLWljb24ge1xuICAgICAgICBAaW5jbHVkZSBzaXplKDIwcHgsIDIwcHgpO1xuICAgICAgICBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoLi4vaW1nL2ljb25zL2ljb24tc2VhcmNoLnN2Zyk7XG4gICAgICAgIGJhY2tncm91bmQtc2l6ZTogMTAwJSBhdXRvO1xuICAgICAgICBib3JkZXItc3R5bGU6IG5vbmU7XG4gICAgICAgIGN1cnNvcjogcG9pbnRlcjtcbiAgICAgICAgbWFyZ2luOiAwIDAgMCAzMHB4O1xuICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICAgIHRvcDogLTJweDtcbiAgICAgICAgdGV4dC1pbmRlbnQ6IC05OTk5cHg7XG5cbiAgICAgICAgJjpmb2N1cyB7XG4gICAgICAgICAgICBvdXRsaW5lOiBub25lO1xuICAgICAgICB9Ly86Zm9jdXNcbiAgICB9Ly8ubmF2LWF1eF9fc2VhcmNoXG5cbiAgICAubmF2LWF1eF9fc2VhcmNoLXRleHQge1xuICAgICAgICBib3JkZXI6IG5vbmU7XG4gICAgICAgIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCAkY29sb3ItYmx1ZTtcbiAgICAgICAgZm9udC1zaXplOiAxNHB4O1xuICAgICAgICBwYWRkaW5nOiAwcHggMCAxMHB4O1xuICAgICAgICB0cmFuc2l0aW9uOiAuM3MgZWFzZTtcbiAgICAgICAgd2lkdGg6IDBweDtcblxuICAgICAgICAmOmZvY3VzIHtcbiAgICAgICAgICAgIG91dGxpbmU6IG5vbmU7XG4gICAgICAgIH0vLzpmb2N1c1xuICAgIH0vLy5uYXYtYXV4X19zZWFyY2gtYm94XG5cbiAgICAubmF2LXNlYXJjaC1vcGVuIHtcbiAgICAgICAgd2lkdGg6IDIwMHB4O1xuICAgICAgICBtYXJnaW4tbGVmdDogMjBweDtcbiAgICB9Ly9uYXYtc2VhcmNoLW9wZW5cbn0vL25hdi1hdXhfX2l0ZW1cblxuLm5hdi1hdXgtLXNob3cge1xuICAgIGRpc3BsYXk6IGJsb2NrO1xufS8vLm5hdi1tYWluLS1zaG93XG5cblxuXG4vLyBTZWFyY2ggTmF2aWdhdGlvblxuXG4ubmF2LXNlYXJjaCB7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgbWFyZ2luLWxlZnQ6IDIwcHg7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcblxuICAmOmJlZm9yZSB7XG4gICAgY29udGVudDogXCIgXCI7XG4gICAgYmFja2dyb3VuZDogdXJsKC4uL2ltZy9pY29ucy9pY29uLXNlYXJjaC5zdmcpY2VudGVyIC8gY29udGFpbiBuby1yZXBlYXQ7XG4gICAgYm90dG9tOiAwO1xuICAgIGxlZnQ6IDEwcHg7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIHRvcDogMDtcbiAgICB3aWR0aDogMjBweDtcbiAgfVxuXG4gIC5uYXYtc2VhcmNoLWZpZWxkIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkY29sb3Itd2hpdGU7XG4gICAgYm9yZGVyLXJhZGl1czogNnB4O1xuICAgIGJvcmRlcjogMXB4IHNvbGlkICRjb2xvci1ibHVlO1xuICAgIGZvbnQtc2l6ZTogMTRweDtcbiAgICBvdXRsaW5lOiBub25lO1xuICAgIHBhZGRpbmc6IDhweCAxMHB4IDhweCAzNXB4O1xuICAgIHJpZ2h0OiAwO1xuICAgIHRvcDogMDtcbiAgICB0cmFuc2l0aW9uOiBhbGwgMC4yNXMgZWFzZS1pbi1vdXQ7XG4gICAgd2lkdGg6IDEzMHB4O1xuICAgICY6Zm9jdXMge1xuICAgICAgb3V0bGluZTogMCBub25lO1xuICAgICAgd2lkdGg6IDE1MHB4O1xuICAgIH0vL2ZvY3VzXG5cbiAgfS8vbmF2LXNlYXJjaFxuXG4gIDo6cGxhY2Vob2xkZXIge1xuICAgIGNvbG9yOiAkY29sb3ItYmx1ZTtcbiAgICBmb250LWZhbWlseTogJGZvbnQ7XG4gIH0vL3BsYWNlaG9sZGVyXG59Ly8ubmF2LXNlYXJjaFxuXG5cblxuLy8gRm9vdGVyIE5hdmlnYXRpb25cblxuLm5hdi1mb290ZXJcdHtcbiAgICBAbWVkaWEgI3skbGFyZ2UtdXB9IHtcbiAgICAgICAgcGFkZGluZy1ib3R0b206IDIwcHg7XG4gICAgfS8vJGxhcmdlLXVwXG5cbiAgICAubWVudSB7XG4gICAgICAgIGZsb2F0OiBsZWZ0O1xuICAgICAgICBtYXJnaW4tdG9wOiAyNXB4O1xuXG4gICAgICAgIEBtZWRpYSAjeyRsYXJnZS11cH0ge1xuICAgICAgICAgICAgZmxvYXQ6IHJpZ2h0O1xuICAgICAgICAgICAgbWFyZ2luLXRvcDogMjVweDtcbiAgICAgICAgfS8vJGxhcmdlLXVwXG5cbiAgICAgICAgLm1lbnUtaXRlbSB7XG4gICAgICAgICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgICAgICAgICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuICAgICAgICAgICAgbWFyZ2luLXJpZ2h0OiAxMHB4O1xuXG4gICAgICAgICAgICBAbWVkaWEgI3skbGFyZ2UtdXB9IHtcbiAgICAgICAgICAgICAgICBtYXJnaW4tcmlnaHQ6IDBweDtcbiAgICAgICAgICAgIH0vLyRsYXJnZS11cFxuXG4gICAgICAgICAgICAmOm5vdCg6Zmlyc3QtY2hpbGQpIHtcbiAgICAgICAgICAgICAgICBAbWVkaWEgI3skbGFyZ2UtdXB9IHtcbiAgICAgICAgICAgICAgICAgICAgbWFyZ2luLWxlZnQ6IDMwcHg7XG4gICAgICAgICAgICAgICAgfS8vJGxhcmdlLXVwXG4gICAgICAgICAgICB9Ly8ubmF2LWZvb3Rlcl9fbGlzdC1pdGVtXG5cbiAgICAgICAgICAgIGEge1xuICAgICAgICAgICAgICAgIGNvbG9yOiAkY29sb3Itd2hpdGU7XG4gICAgICAgICAgICAgICAgZm9udC1mYW1pbHk6ICRmb250O1xuICAgICAgICAgICAgICAgIGZvbnQtc2l6ZTogMTBweDtcbiAgICAgICAgICAgICAgICBmb250LXdlaWdodDogNzAwO1xuICAgICAgICAgICAgICAgIGxpbmUtaGVpZ2h0OiAxMHB4O1xuICAgICAgICAgICAgICAgIHRyYW5zaXRpb246IC4ycyBlYXNlO1xuXG4gICAgICAgICAgICAgICAgQG1lZGlhICN7JGxhcmdlLXVwfSB7XG4gICAgICAgICAgICAgICAgICAgIGZvbnQtc2l6ZTogMTRweDtcbiAgICAgICAgICAgICAgICAgICAgbGluZS1oZWlnaHQ6IDE0cHg7XG4gICAgICAgICAgICAgICAgfS8vJGxhcmdlLXVwXG4gICAgICAgICAgICAgICAgJjpob3ZlciB7XG4gICAgICAgICAgICAgICAgICAgIGNvbG9yOiAkY29sb3ItbGlnaHQtYmx1ZTtcbiAgICAgICAgICAgICAgICB9Ly86aG92ZXJcbiAgICAgICAgICAgIH0vL2FcblxuICAgICAgICB9Ly8ubWVudS1pdGVtXG5cbiAgICB9Ly8ubWVudVxuXG59Ly8ubmF2LWZvb3RlclxuXG5cblxuLy8gTGVnYWwgTmF2aWdhdGlvblxuXG4ubmF2LWxlZ2FsIHtcblxuICAgIC5uYXYtbGVnYWxfX2xpc3Qge1xuICAgICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgICAgIHBhZGRpbmc6IDE1cHggMDtcbiAgICB9Ly8ubmF2LWxlZ2FsX19saXN0XG5cbiAgICAubmF2LWxlZ2FsX19saXN0LWl0ZW0ge1xuICAgICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgICAgIGZvbnQtZmFtaWx5OiBBcmlhbCwgSGVsdmV0aWNhLCBzYW5zLXNlcmlmO1xuICAgICAgICBmb250LXNpemU6IDEycHg7XG4gICAgICAgICY6bm90KDpsYXN0LWNoaWxkKTphZnRlciB7XG4gICAgICAgICAgICBjb2xvcjogJGNvbG9yLXdoaXRlO1xuICAgICAgICAgICAgY29udGVudDogJ1xcMDBhMCB8IFxcMDBhMCc7XG4gICAgICAgIH0vLzphZnRlclxuICAgIH0vLy5uYXYtbGVnYWxfX2xpc3QtaXRlbVxuXG4gICAgLm5hdi1sZWdhbF9fY29weXJpZ2h0IHtcbiAgICAgICAgY29sb3I6ICRjb2xvci13aGl0ZTtcbiAgICAgICAgZm9udC1mYW1pbHk6IEFyaWFsLCBIZWx2ZXRpY2EsIHNhbnMtc2VyaWY7XG4gICAgICAgIGZvbnQtc2l6ZTogMTJweDtcbiAgICAgICAgbGluZS1oZWlnaHQ6IDE2cHg7XG4gICAgICAgIG1hcmdpbi1ib3R0b206IDIwcHg7XG5cbiAgICAgICAgQG1lZGlhICN7JGxhcmdlLXVwfSB7XG4gICAgICAgICAgICBtYXJnaW4tYm90dG9tOiAwO1xuICAgICAgICB9Ly8kbGFyZ2UtdXBcbiAgICB9Ly8ubmF2LWxlZ2FsX19jb3B5cmlnaHRcblxuICAgIC5uYXYtbGVnYWxfX2hyLWxpbmUge1xuICAgICAgICBiYWNrZ3JvdW5kOiByZ2JhKCRjb2xvci13aGl0ZSwgMC4xKTtcbiAgICAgICAgaGVpZ2h0OiAycHg7XG4gICAgICAgIG1hcmdpbjogMjBweCAwO1xuICAgICAgICBtaW4td2lkdGg6IDIwcHg7XG4gICAgICAgIHdpZHRoOiAxMDAlO1xuXG4gICAgICAgIEBtZWRpYSAjeyRsYXJnZS11cH0ge1xuICAgICAgICAgICAgbWFyZ2luOiA0MHB4IDA7XG4gICAgICAgIH0vLyRsYXJnZS11cFxuICAgIH0vLy5uYXYtbGVnYWxfX2xpc3QtY29udGFuaWVyXG5cbiAgICAubmF2LWxlZ2FsX19pbWcge1xuICAgICAgICBAbWVkaWEgI3skbGFyZ2UtdXB9IHtcbiAgICAgICAgICAgIGZsb2F0OiByaWdodDtcbiAgICAgICAgfS8vJGxhcmdlLXVwXG4gICAgfS8vLm5hdi1sZWdhbF9faW1nXG5cbn0vLy5uYXYtbGVnYWxcblxuXG5cbi8vIFN0aWNreSBOYXZpZ2F0aW9uXG5cbi5uYXYtc3RpY2t5IHtcbiAgYm94LXNoYWRvdzogNXB4IDEwcHggMThweCByZ2JhKCMwMDAsIC4xNSk7XG4gIHBvc2l0aW9uOiBmaXhlZDtcbiAgdG9wOiAwO1xuICB3aWR0aDogMTAwJTtcblxuICBAbWVkaWEgI3skbWVkaXVtLXVwfSB7XG4gICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgdG9wOiBub25lO1xuICAgIHdpZHRoOiBub25lO1xuICB9Ly9tZWRpdW0tdXBcbn0vL25hdi1zdGlja3lcblxuLm5hdi1zdGlja3kgKyAuY29udGVudCB7XG4gIHBhZGRpbmctdG9wOiA3MHB4O1xuXG4gIEBtZWRpYSAjeyRtZWRpdW0tdXB9IHtcbiAgICAgIHBhZGRpbmctdG9wOiAwO1xuICB9Ly9tZWRpdW0tdXBcbn0vLy5uYXYtc3RpY2t5ICsgLmNvbnRlbnRcbiIsIi8vLy8vLy8vLy8vL1xuLy8gTUlYSU5TIC8vXG4vLy8vLy8vLy8vLy9cblxuQG1peGluIGJveGVkLWdyaWQtY29udGFpbmVye1xuICBtYXJnaW46IDAgYXV0bztcbiAgbWF4LXdpZHRoOiAxNDAwcHg7XG59Ly9ib3hlZC1ncmlkLWNvbnRhaW5lclxuXG4vLyBSZW0gc2l6aW5nIC93IHB4IGZhbGxiYWNrXG5AbWl4aW4gZm9udC1zaXplKCRzaXplVmFsdWU6IDEuNikge1xuICBmb250LXNpemU6ICgkc2l6ZVZhbHVlICogMTApICsgcHg7XG4gIGZvbnQtc2l6ZTogJHNpemVWYWx1ZSArIHJlbTtcbn1cbi8vICpVc2FnZSBeXG4vLyBAaW5jbHVkZSBmb250LXNpemUoMS40KTtcblxuXG5AbWl4aW4gbGluZS1oZWlnaHQoJHNpemVWYWx1ZTogMS42KSB7XG4gIGxpbmUtaGVpZ2h0OiAoJHNpemVWYWx1ZSAqIDEwKSArIHB4O1xuICBsaW5lLWhlaWdodDogJHNpemVWYWx1ZSArIHJlbTtcbn1cbi8vICpVc2FnZSBeXG4vLyBAaW5jbHVkZSBsaW5lLWhlaWdodCg0KTtcblxuXG5AbWl4aW4gc2l6ZSgkdzogMTAwJSwgJGg6IDEwMCUpe1xuICBoZWlnaHQ6ICRoO1xuICB3aWR0aDogJHc7XG59XG4vLyAqVXNhZ2UgXlxuLy8gIEBpbmNsdWRlIHNpemUoMTAwcHgsIDUwcHgpO1xuXG5cbkBtaXhpbiBncmFkaWVudCgkc3RhcnQsICRlbmQpe1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAkc3RhcnQ7XG4gIGJhY2tncm91bmQtaW1hZ2U6IC13ZWJraXQtbGluZWFyLWdyYWRpZW50KHRvcCwgJHN0YXJ0LCAkZW5kKTsgLy8gU2FmYXJpIDUuMSssIENocm9tZVxuICBiYWNrZ3JvdW5kLWltYWdlOiBsaW5lYXItZ3JhZGllbnQoLTkwZGVnLCAkc3RhcnQsICRlbmQpO1xufSIsIi8vLy8vLy8vLy8vLy9cbi8vIElDT05TXG4vLy8vLy8vLy8vLy8vXG5cblxuLmljb24ge1xuXHRiYWNrZ3JvdW5kLXBvc2l0aW9uOiBjZW50ZXIgdG9wO1xuXHRiYWNrZ3JvdW5kLXJlcGVhdDogbm8tcmVwZWF0O1xuXHRiYWNrZ3JvdW5kLXNpemU6IDEwMCUgYXV0bztcbn0vLy5pY29uXG5cbi5pY29uLS1zbWFsbCB7XG5cdGRpc3BsYXk6IGlubGluZS1ibG9jaztcblx0QGluY2x1ZGUgc2l6ZSgyMHB4LCAyMHB4KTtcblx0bWFyZ2luOiAwIDVweDtcbn0vLy5pY29uLXNtYWxsXG5cbi5pY29uLS1tZWRpdW0ge1xuXHRkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG5cdEBpbmNsdWRlIHNpemUoMzBweCwgMzBweCk7XG5cdG1hcmdpbi10b3A6IDNweDtcbn0vLy5pY29uLXNtYWxsXG5cbi5pY29uLS1sYXJnZSB7XG5cdGRpc3BsYXk6IGlubGluZS1ibG9jaztcblx0QGluY2x1ZGUgc2l6ZSgyMHB4LCAyMHB4KTtcblx0bWFyZ2luOiAwIDVweDtcblx0QG1lZGlhICN7JGxhcmdlLXVwfSB7XG5cdFx0QGluY2x1ZGUgc2l6ZSgzNXB4LCAzNXB4KTtcblx0fS8vJGxhcmdlLXVwXG59Ly8uaWNvbi1zbWFsbFxuXG4uaWNvbi0tc2VhcmNoIHtcblx0YmFja2dyb3VuZC1pbWFnZTogdXJsKC4uL2ltZy9pY29ucy9pY29uLXNlYXJjaC5zdmcpO1xuXHRjdXJzb3I6IHBvaW50ZXI7XG5cdHBvc2l0aW9uOiByZWxhdGl2ZTtcblx0dG9wOiAzcHg7XG59Ly8uaWNvbi0tc2VhcmNoXG5cbi5pY29uLS1hcnJvdy1ibHVlIHtcblx0YmFja2dyb3VuZC1pbWFnZTogdXJsKC4uL2ltZy9pY29ucy9pY29uLWFycm93LWJsdWUuc3ZnKTtcbn0vLy5pY29uLS1hcnJvdy1ibHVlXG5cbi5pY29uLS1hcnJvdy13aGl0ZSB7XG5cdGJhY2tncm91bmQtaW1hZ2U6IHVybCguLi9pbWcvaWNvbnMvaWNvbi1hcnJvdy13aGl0ZS5zdmcpO1xufS8vLmljb24tLWFycm93LXdoaXRlXG5cbi5pY29uLS1hcnJvdy1ncmV5IHtcblx0YmFja2dyb3VuZC1pbWFnZTogdXJsKC4uL2ltZy9pY29ucy9pY29uLWFycm93LWdyZXkuc3ZnKTtcbn0vLy5pY29uLS1hcnJvdy1ncmV5XG5cblxuLmljb24tLWdvb2dsZSB7XG5cdGJhY2tncm91bmQtaW1hZ2U6IHVybCguLi9pbWcvaWNvbnMvaWNvbi1nb29nbGUuc3ZnKTtcblx0ZGlzcGxheTogaW5saW5lLWJsb2NrO1xuXHRtYXJnaW4tbGVmdDogMTBweDtcblx0QG1lZGlhICN7JGxhcmdlLXVwfSB7XG5cdFx0bWFyZ2luLWxlZnQ6IDIwcHg7XG5cdH0vLyRsYXJnZS11cFxufS8vLmljb24tLWdvb2dsZVxuXG4uaWNvbi0tdHdpdHRlciB7XG5cdGJhY2tncm91bmQtaW1hZ2U6IHVybCguLi9pbWcvaWNvbnMvaWNvbi10d2l0dGVyLnN2Zyk7XG5cdGRpc3BsYXk6IGlubGluZS1ibG9jaztcblx0bWFyZ2luLWxlZnQ6IDEwcHg7XG5cdEBtZWRpYSAjeyRsYXJnZS11cH0ge1xuXHRcdG1hcmdpbi1sZWZ0OiAyMHB4O1xuXHR9Ly8kbGFyZ2UtdXBcbn0vLy5pY29uLS10d2l0dGVyXG5cbi5pY29uLS1mYWNlYm9vayB7XG5cdGJhY2tncm91bmQtaW1hZ2U6IHVybCguLi9pbWcvaWNvbnMvaWNvbi1mYWNlYm9vay5zdmcpO1xuXHRkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG5cdG1hcmdpbjogMCA1cHggMCAwO1xufS8vLmljb24tLWZhY2Vib29rXG5cblxuXG4vLy8gU29jYWlsIE1lZGlhIEljb25zIEJ0blxuXG4uaWNvbi0tYnRuIHtcblx0QGluY2x1ZGUgc2l6ZSgxMDBweCwgMzBweCk7XG5cdFxuXHRAbWVkaWEgI3skbWVkaXVtLXVwfSB7XG5cdFx0QGluY2x1ZGUgc2l6ZSgxMjBweCwgMzZweCk7XG5cdH0vLyRtZWRpdW0tdXBcbn0vLy5pY29uLS1idG5cblxuLmljb24tLWZhY2Vib29rLWJ0biB7XG5cdGJhY2tncm91bmQtaW1hZ2U6IHVybCguLi9pbWcvaWNvbnMvaWNvbi1mYWNlb29rLWJ0bi5zdmcpO1xufS8vLmljb24tLWZhY2Vib29rLWJ0blxuXG4uaWNvbi0tdHdpdHRlci1idG4ge1xuXHRiYWNrZ3JvdW5kLWltYWdlOiB1cmwoLi4vaW1nL2ljb25zL2ljb24tdHdpdHRlci1idG4uc3ZnKTtcbn0vLy5pY29uLS10d2l0dGVyLWJ0blxuXG4uaWNvbi0tcGludGVyZXN0LWJ0biB7XG5cdGJhY2tncm91bmQtaW1hZ2U6IHVybCguLi9pbWcvaWNvbnMvaWNvbi1waW50ZXJlc3QtYnRuLnN2Zyk7XG59Ly8uaWNvbi0tcGludGVyZXN0LWJ0blxuXG4uaWNvbi0tZW1haWwtYnRuIHtcblx0YmFja2dyb3VuZC1pbWFnZTogdXJsKC4uL2ltZy9pY29ucy9pY29uLWVtYWlsLWJ0bi5zdmcpO1xufS8vLmljb24tLWVtYWlsLWJ0blxuXG4uaWNvbi0tc2hhcmUtYnRuIHtcblx0YmFja2dyb3VuZC1pbWFnZTogdXJsKC4uL2ltZy9pY29ucy9pY29uLXNoYXJlLWJ0bi5zdmcpO1xufS8vLmljb24tLXNoYXJlLWJ0biIsIi8vLy8vLy8vLy8vLy9cbi8vIExPR09TXG4vLy8vLy8vLy8vLy8vXG4ubG9nbyB7XG5cdGJhY2tncm91bmQtcG9zaXRpb246IGNlbnRlciB0b3A7XG5cdGJhY2tncm91bmQtcmVwZWF0OiBuby1yZXBlYXQ7XG5cdGJhY2tncm91bmQtc2l6ZTogMTAwJSBhdXRvO1xufS8vLmxvZ29cblxuLmxvZ28tLW1jYWZlZSB7XG5cdGJhY2tncm91bmQtaW1hZ2U6IHVybCguLi9pbWcvbG9nb3MvbG9nby1tY2FmZWUucG5nKTtcblx0QGluY2x1ZGUgc2l6ZSg4MHB4LCAzOHB4KTtcblx0ZGlzcGxheTogaW5saW5lLWJsb2NrO1xuXHRAbWVkaWEgI3skbGFyZ2UtdXB9IHtcblx0XHRAaW5jbHVkZSBzaXplKDEwMHB4LCA0N3B4KTtcblx0fS8vLmxvZ28tLW1jYWZlZVxufS8vLmxvZ28tbWNhZmVlXG5cbi5sb2dvLS1iYmIge1xuXHRiYWNrZ3JvdW5kLWltYWdlOiB1cmwoLi4vaW1nL2xvZ29zL2xvZ28tYmJiLnBuZyk7XG5cdEBpbmNsdWRlIHNpemUoMTMycHgsIDM4cHgpO1xuXHRkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG5cdG1hcmdpbi1sZWZ0OiAyMHB4O1xuXHRAbWVkaWEgI3skbGFyZ2UtdXB9IHtcblx0XHRAaW5jbHVkZSBzaXplKDE2NXB4LCA0N3B4KTtcblx0fS8vLmxvZ28tLWJiYlxufS8vLmxvZ28tYmJiIiwiLy8vLy8vLy8vLy8vLy8vXG4vLyBCVVRUT05TIC8vXG4vLy8vLy8vLy8vLy8vLy9cblxuXG4uYnV0dG9uIHtcblx0Ym9yZGVyLXJhZGl1czogNnB4O1xuXHRib3JkZXI6IDFweCBzb2xpZCB0cmFuc3BhcmVudDtcblx0ZGlzcGxheTogaW5saW5lLWJsb2NrO1xuXHRoZWlnaHQ6IDM1cHg7XG5cdHBhZGRpbmc6IDAgMjVweDtcblx0cG9zaXRpb246IHJlbGF0aXZlO1xuXHR0ZXh0LWFsaWduOiBjZW50ZXI7XG5cdHRleHQtZGVjb3JhdGlvbjogbm9uZTtcblx0dHJhbnNpdGlvbjogLjJzIGVhc2U7XG5cdEBtZWRpYSAjeyRtZWRpdW0tdXB9IHtcblx0XHRoZWlnaHQ6IDUwcHg7XG5cdFx0cGFkZGluZzogMCAzNXB4O1xuXHR9Ly9tZWRpdW0tdXBcbn0vLy5idXR0b25cblxuXG4uYnV0dG9uLS13aGl0ZS1vdXRsaW5lIHtcblx0YmFja2dyb3VuZDogbm9uZTtcblx0Ym9yZGVyOiAkY29sb3Itd2hpdGUgc29saWQgMXB4O1xuXHR0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuXHRjb2xvcjogJGNvbG9yLXdoaXRlO1xuXHRmb250LWZhbWlseTogJGZvbnQ7XG5cdGZvbnQtc2l6ZTogMTJweDtcblx0bGluZS1oZWlnaHQ6IDM1cHg7XG5cblx0Jjpob3Zlcntcblx0XHRiYWNrZ3JvdW5kOiAkY29sb3Itd2hpdGU7XG5cdFx0Ym9yZGVyOiAxcHggc29saWQgdHJhbnNwYXJlbnQ7XG5cdFx0Y29sb3I6ICRjb2xvci1saWdodC1ibHVlO1xuXHR9XG5cblx0QG1lZGlhICN7JG1lZGl1bS11cH0ge1xuXHRcdGZvbnQtc2l6ZTogMTZweDtcblx0XHRsaW5lLWhlaWdodDogNTBweDtcblx0fS8vbWVkaXVtLXVwXG59Ly8uYnV0dG9uLS13aGl0ZS1vdXRsaW5lXG5cbi5idXR0b24tLWJsdWUtb3V0bGluZSB7XG5cdGJvcmRlcjogJGNvbG9yLWxpZ2h0LWJsdWUgc29saWQgMnB4O1xuXHRjb2xvcjogJGNvbG9yLWxpZ2h0LWJsdWU7XG5cdGZvbnQtZmFtaWx5OiAkZm9udDtcblx0Zm9udC1zaXplOiAxMnB4O1xuXHRmb250LXdlaWdodDogNjAwO1xuXHRsaW5lLWhlaWdodDogMzVweDtcblx0cGFkZGluZzogMCA0MHB4O1xuXHR0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuXG5cdCY6aG92ZXJ7XG5cdFx0YmFja2dyb3VuZDogJGNvbG9yLWxpZ2h0LWJsdWU7XG5cdFx0Ym9yZGVyOiAycHggc29saWQgdHJhbnNwYXJlbnQ7XG5cdFx0Y29sb3I6ICRjb2xvci13aGl0ZTtcblx0fVxuXG5cdEBtZWRpYSAjeyRtZWRpdW0tdXB9IHtcblx0XHRoZWlnaHQ6IDQwcHg7XG5cdFx0bGluZS1oZWlnaHQ6IDQwcHg7XG5cdH0vLyRtZWRpdW0tdXBcblxuXHRAbWVkaWEgI3skbGFyZ2UtdXB9IHtcblx0XHRmb250LXNpemU6IDE2cHg7XG5cdFx0aGVpZ2h0OiA1MHB4O1xuXHRcdGxpbmUtaGVpZ2h0OiA1MHB4O1xuXHRcdG1hcmdpbi10b3A6IDIwcHg7XG5cdFx0cGFkZGluZzogMCA1MHB4O1xuXHR9Ly9tZWRpdW0tdXBcbn0vLy5idXR0b24tLWJsdWUtb3V0bGluZVxuXG5cbi5idXR0b24tLWJsdWUge1xuXHRiYWNrZ3JvdW5kOiAkY29sb3ItbGlnaHQtYmx1ZTtcblx0Y29sb3I6ICRjb2xvci13aGl0ZTtcblx0Zm9udC1mYW1pbHk6ICRmb250O1xuXHRmb250LXNpemU6IDE0cHg7XG5cdGxpbmUtaGVpZ2h0OiAzNXB4O1xuXHRtYXJnaW4tdG9wOiAxMHB4O1xuXHQvLyBwYWRkaW5nOiAwIDQwcHg7XG5cdC8vIHdpZHRoOiAyNTBweDtcblxuXHQmOmhvdmVye1xuXHRcdGJhY2tncm91bmQ6IGRhcmtlbigkY29sb3ItbGlnaHQtYmx1ZSwgNSUpO1xuXHR9XG5cblx0QG1lZGlhICN7JG1lZGl1bS11cH0ge1xuXHRcdGhlaWdodDogNDBweDtcblx0XHRsaW5lLWhlaWdodDogNDBweDtcblx0fS8vJG1lZGl1bS11cFxuXG5cdEBtZWRpYSAjeyRsYXJnZS11cH0ge1xuXHRcdGZvbnQtc2l6ZTogMTZweDtcblx0XHRoZWlnaHQ6IDUwcHg7XG5cdFx0bGluZS1oZWlnaHQ6IDUwcHg7XG5cdFx0bWFyZ2luLXRvcDogMjBweDtcblx0XHRwYWRkaW5nOiAwIDUwcHg7XG5cdH0vL21lZGl1bS11cFxufS8vLmJ1dHRvbi0tYmx1ZSIsIi8vLy8vLy8vLy8vLy8vL1xuLy8gQlJFQURDUlVNQlMgLy9cbi8vLy8vLy8vLy8vLy8vL1xuXG4uYnJlYWRjcnVtYiB7XG4gIHBhZGRpbmc6IDEwcHggMCAxNXB4O1xuXG4gIEBtZWRpYSAjeyRsYXJnZS11cH0ge1xuICAgIHBhZGRpbmc6IDIwcHggMCAzMHB4O1xuICB9Ly8kbGFyZ2UtdXBcblxuICAuYnJlYWRjcnVtYl9faXRlbSB7XG4gICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgIG1hcmdpbi1yaWdodDogMTBweDtcbiAgICBmb250LWZhbWlseTogJGZvbnQ7XG5cbiAgICAmOmFmdGVye1xuICAgICAgY29udGVudDogJyDigLonO1xuICAgICAgY29sb3I6ICRjb2xvci1ncmV5O1xuICAgIH0vLzphZnRlclxuXG4gICAgJjpsYXN0LWNoaWxkOmFmdGVyIHtcbiAgICAgIGNvbnRlbnQ6ICcgJztcbiAgICB9Ly86bGFzdC1jaGlsZDphZnRlclxuXG4gICAgYSB7XG4gICAgICBjb2xvcjogJGNvbG9yLWxpZ2h0LWJsdWU7XG4gICAgfS8vYVxuXG4gIH0vLy5wb3N0X19icmVhZGNydW1iLWl0ZW1cblxufS8vLmJyZWFkY3J1bWJzXG4iLCIvLy8vLy8vLy8vLy9cbi8vIFRBQkxFUyAvL1xuLy8vLy8vLy8vLy8vXG5cbnRhYmxlIHtcbiAgICBtYXJnaW46IDgwcHggMCA0MHB4O1xuXG4gICAgdGhlYWQge1xuXG4gICAgICAgIHRyIHtcblxuICAgICAgICAgICAgdGgge1xuICAgICAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6ICRjb2xvci1ibHVlO1xuICAgICAgICAgICAgICAgIGNvbG9yOiAkY29sb3Itd2hpdGU7XG4gICAgICAgICAgICAgICAgcGFkZGluZzogMTBweDtcbiAgICAgICAgICAgICAgICB0ZXh0LWFsaWduOiBsZWZ0O1xuICAgICAgICAgICAgfSAvLyB0aFxuICAgICAgICB9IC8vIHRyXG4gICAgfSAvLyB0aGVhZFxuXG4gICAgdGJvZHkge1xuXG4gICAgICAgIHRyIHtcblxuICAgICAgICAgICAgJjpudGgtY2hpbGQoZXZlbikge1xuICAgICAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6ICRjb2xvci1iZy1ibHVlO1xuICAgICAgICAgICAgfSAvLyAmOm50aC1jaGlsZChldmVuKVxuXG4gICAgICAgICAgICB0ZCB7XG4gICAgICAgICAgICAgICAgcGFkZGluZzogMTBweDtcbiAgICAgICAgICAgIH0gLy8gdGRcbiAgICAgICAgfSAvLyB0clxuICAgIH0gLy8gdGJvZHlcbn0gLy8gdGFibGVcbiIsIi8vLy8vLy8vLy8vLy9cbi8vIEVYVFJBU1xuLy8vLy8vLy8vLy8vL1xuXG4vLyBMZWdhY3kgY29kZSB0byBtYWtlIGNlcnRhaW4gY29tcG9uZW50cyB3b3JrXG5cbi5pbnB1dC1ncm91cCB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIGRpc3BsYXk6IHRhYmxlO1xuICAgIGJvcmRlci1jb2xsYXBzZTogc2VwYXJhdGU7XG59XG4uaW5wdXQtZ3JvdXAtYWRkb246Zmlyc3QtY2hpbGQge1xuICAgIGJvcmRlci1yaWdodDogMDtcbn1cbi5pbnB1dC1ncm91cCAuZm9ybS1jb250cm9sOmZpcnN0LWNoaWxkLCAuaW5wdXQtZ3JvdXAtYWRkb246Zmlyc3QtY2hpbGQsIC5pbnB1dC1ncm91cC1idG46Zmlyc3QtY2hpbGQ+LmJ0bi1zZW8sIC5pbnB1dC1ncm91cC1idG46Zmlyc3QtY2hpbGQ+LmJ0bi1zZW8tZ3JvdXA+LmJ0bi1zZW8sIC5pbnB1dC1ncm91cC1idG46Zmlyc3QtY2hpbGQ+LmRyb3Bkb3duLXRvZ2dsZSwgLmlucHV0LWdyb3VwLWJ0bjpsYXN0LWNoaWxkPi5idG4tc2VvLWdyb3VwOm5vdCg6bGFzdC1jaGlsZCk+LmJ0bi1zZW8sIC5pbnB1dC1ncm91cC1idG46bGFzdC1jaGlsZD4uYnRuLXNlbzpub3QoOmxhc3QtY2hpbGQpOm5vdCguZHJvcGRvd24tdG9nZ2xlKSB7XG4gICAgYm9yZGVyLXRvcC1yaWdodC1yYWRpdXM6IDA7XG4gICAgYm9yZGVyLWJvdHRvbS1yaWdodC1yYWRpdXM6IDA7XG59XG4uaW5wdXQtZ3JvdXAtYWRkb24ge1xuICAgIHBhZGRpbmc6IDZweCAxMnB4O1xuICAgIGZvbnQtc2l6ZTogMTRweDtcbiAgICBmb250LXdlaWdodDogNDAwO1xuICAgIGxpbmUtaGVpZ2h0OiAxO1xuICAgIGNvbG9yOiAjNTU1O1xuICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjZWVlO1xuICAgIGJvcmRlcjogMXB4IHNvbGlkICNjY2M7XG4gICAgYm9yZGVyLXJhZGl1czogNHB4O1xufVxuLmlucHV0LWdyb3VwLWFkZG9uLCAuaW5wdXQtZ3JvdXAtYnRuIHtcbiAgICB3aWR0aDogMSU7XG4gICAgd2hpdGUtc3BhY2U6IG5vd3JhcDtcbiAgICB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlO1xufVxuLmlucHV0LWdyb3VwIC5mb3JtLWNvbnRyb2wsIC5pbnB1dC1ncm91cC1hZGRvbiwgLmlucHV0LWdyb3VwLWJ0biB7XG4gICAgZGlzcGxheTogdGFibGUtY2VsbDtcbn1cbi5pbnB1dC1ncm91cCAuZm9ybS1jb250cm9sIHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgei1pbmRleDogMjtcbiAgICBmbG9hdDogbGVmdDtcbiAgICB3aWR0aDogMTAwJTtcbiAgICBtYXJnaW4tYm90dG9tOiAwO1xufVxuIl19 */
