{"css":"*#dm *.dmBody a.span.textonly\n{\n\tcolor:rgb(255,255,255) !important;\n}\n*#dm *.dmBody div.dmPopupInner\n{\n\tbackground-color:rgb(255,255,255) !important;\n\tborder-style:solid !important;\n\tborder-width:0 !important;\n\t-webkit-box-shadow:0 0 10px rgba(0,0,0,0.30) !important;\n\tbox-shadow:0 0 10px rgba(0,0,0,0.30) !important;\n\t-moz-box-shadow:0 0 10px rgba(0,0,0,0.30) !important;\n\tborder-radius:10px !important;\n\t-moz-border-radius:10px !important;\n\t-webkit-border-radius:10px !important;\n\tbackground-image:none !important;\n\tbackground-repeat:no-repeat !important;\n\tbackground-size:cover !important;\n\tbackground-position:top right !important;\n}\n*#dm *.dmBody div.u_dm_content\n{\n\tbackground-image:none !important;\n}\n*#dm *.dmBody nav.u_1144820115\n{\n\tcolor:black !important;\n}\n*#dm *.dmBody *.u_1112505321\n{\n\twidth:100% !important;\n}\n*#dm *.dmBody *.u_1012303821\n{\n\twidth:100% !important;\n}\n*#dm *.dmBody *.allWrapper .dmPopupInner\n{\n\tborder-radius:0 !important;\n\t-moz-border-radius:0 !important;\n\t-webkit-border-radius:0 !important;\n\tbox-shadow:none !important;\n\t-moz-box-shadow:none !important;\n\t-webkit-box-shadow:none !important;\n\tbackground-image:linear-gradient(135deg,rgba(21,9,80,1) 0%,rgba(0,0,0,1) 100%) !important;\n\tbackground-origin:border-box !important;\n}\n*#dm *.dmBody div.u_1148008959\n{\n\tbackground-color:rgba(0,0,0,0) !important;\n}\n*#dm *.dmBody div.u_1694205906\n{\n\tbackground-color:rgba(0,0,0,0) !important;\n}\n","additionalWidgetCss":"/**/@media(max-width:767px){body.dmRoot div[dmtemplateid]:not([dmtemplateid=SlideRightTopFloatM]) .dmHeader .multilingualWidget{position:absolute;top:14px;left:13px;margin-top:0}body.dmRoot div[dmtemplateid][dmtemplateid=SlideRightTopFloatM] .dmHeader .multilingualWidget{position:absolute;top:5px;right:17px}\n}@media(min-width:768px) and (max-width:1024px){body:not(.responsiveTablet) #dm div[dmtemplateid=StandardLayoutMultiT] .dmHeader .multilingualWidget{position:absolute!important;top:5px!important;right:17px!important;left:initial!important}\n}@media(max-width:767px){body.dmRoot .dmHeader .displayHidden-inner .multilingualWidget{top:0!important}}#dm_content div.dmRespCol div.multilingualWidget,#hcontainer div.dmRespCol div.multilingualWidget{width:auto!important;display:table!important}\n.multilingualWidget.displayNone{display:none!important}.multilingualWidget>div{position:relative}.multilingualWidget{clear:both;margin:0;vertical-align:top;display:table!important;font-size:0;font-family:sans-serif}\n.multilingualWidget .language{color:#888;display:inline-block}.multilingualWidget .language a{text-align:center;display:inline-block;color:inherit;border:#dadada 1px solid;background-color:#fff}.multilingualWidget .language a img{width:24px;height:26px;min-width:24px;min-height:26px}\n.multilingualWidget .language a span{display:none;line-height:initial}.multilingualWidget .language a span.name{margin-top:5px;margin-left:7px;font-size:12px;font-weight:400;text-transform:capitalize}\n.multilingualWidget .language a span.short-label{font-size:12px}.multilingualWidget .language a:after{line-height:initial}.multilingualWidget.open .current-language a:after{transform:rotate(-180deg)}.multilingualWidget .current-language a:after{transition:transform .2s}\n.multilingualWidget.dropdown .language{width:100%}.multilingualWidget.dropdown .language a{display:block;padding:1px 5px}.multilingualWidget.dropdown .language.other-languages{position:absolute;z-index:800;max-height:0;overflow:hidden;transition:max-height .1s ease-in-out}\n.multilingualWidget.dropdown .language.other-languages a{border-top:0!important}.multilingualWidget.dropdown .current-language{position:relative}.multilingualWidget.dropdown .current-language span.name{padding-right:25px}\n.multilingualWidget.dropdown .dm-icon{font-size:9px;display:inline-block;position:absolute;top:46%;transform:translateY(-50%);transition:transform .2s;right:8px}.multilingualWidget.dropdown.open .dm-icon{transform:rotate(-180deg) translateY(50%)}\n.multilingualWidget.dropdown.open .other-languages{display:block;max-height:300px}.multilingualWidget.dropdown .other-languages,.multilingualWidget.dropdown.flag-only .dm-icon,.multilingualWidget.inline span,.multilingualWidget.no-flag a img{display:none}\n.multilingualWidget.dropdown.flag-only a{border:transparent 1px solid;background-color:transparent}.multilingualWidget.dropdown.flag-only.open .language a{background-color:rgba(0,0,0,.3);border:#dadada 1px solid}\n.multilingualWidget.dropdown.long-label a{text-align:left;padding:2px 0 2px 5px;position:relative;box-sizing:border-box}.multilingualWidget.dropdown.long-label a span.name,.multilingualWidget.inline.flag-only .language,.multilingualWidget.inline.short-label.no-flag span.short-label{display:inline-block}\n.multilingualWidget.dropdown.long-label.no-flag a{padding:7px 10px 9px}.multilingualWidget.dropdown.long-label.no-flag a span.name,.multilingualWidget.dropdown.short-label.no-flag a span.short-label{margin:0;display:inline-block}\n.multilingualWidget.dropdown.short-label.no-flag a{padding:8px 22px 9px 10px;font-size:12px;min-height:32px;height:auto;box-sizing:border-box}.multilingualWidget.dropdown.short-label.no-flag .current-language a:after{top:12px}\n.multilingualWidget.short-label span.short-label{text-transform:uppercase}.multilingualWidget.inline.flag-only a{padding:2px 5px;height:32px;box-sizing:border-box}.multilingualWidget.inline.flag-only .current-language a{box-shadow:inset 0 0 8px 0 rgba(0,0,0,.6);border-right:0;border-right-width:0!important;border-right-color:transparent!important;border-right-style:none!important}\n.multilingualWidget.inline.flag-only .other-languages a:not(:last-child){border-right-width:0!important;border-right-color:transparent!important;border-right-style:none!important}.multilingualWidget.inline.flag-only .dm-icon,.multilingualWidget.inline.short-label.no-flag .dm-icon{display:none}\n.multilingualWidget.inline.short-label.no-flag .current-language a{padding-right:0;border-right-width:0!important;border-right-color:transparent!important;border-right-style:none!important}.multilingualWidget.inline.short-label.no-flag .current-language a span.short-label{font-weight:700}\n.multilingualWidget.inline.short-label.no-flag .other-languages a{border-left-color:transparent!important;border-left-width:0!important;border-left-style:none!important}.multilingualWidget.inline.short-label.no-flag .other-languages a:not(:last-child){padding-right:0;border-right-color:transparent!important;border-right-width:0!important;border-right-style:none!important}\n.multilingualWidget.inline.short-label.no-flag a{position:relative;padding:8px 10px;font-size:12px;min-height:32px;height:auto;text-decoration:none}.multilingualWidget.inline.short-label.no-flag a:after{content:\"/\";position:absolute;top:8px;right:-7px;z-index:1;pointer-events:none}\n.multilingualWidget.inline.short-label.no-flag a:hover .short-label{text-decoration:underline}.multilingualWidget.inline.short-label.no-flag .other-languages a:last-child:after{content:\"\"}/**/.imageWidget{position:relative}.imageWidget a,.imageWidget span.image-caption{font-style:italic;text-align:center}.imageWidget a[data-caption]::after,.imageWidget span[data-caption]::after{content:attr(data-caption);display:block;line-height:100%}\n.imageWidget.with-caption a::after,.imageWidget.with-caption span.image-caption::after{margin-top:12px}.imageWidget img[width][height]{height:auto}[data-flex-site] #fcontainer .imageWidget:after,[data-flex-site] #flex-footer .imageWidget:after,[data-flex-site] #flex-header .imageWidget:after{content:none}\n[data-flex-site] #fcontainer .imageWidget:before,[data-flex-site] #flex-footer .imageWidget:before,[data-flex-site] #flex-header .imageWidget:before{font-size:80px;transform:none}.imageWidget.hover img.hover-image,.imageWidget:hover img.hover-image{display:initial}\n.imageWidget.hover.hasHover img:not(.hover-image),.imageWidget:hover.hasHover img:not(.hover-image){display:none!important}.imageWidget img.hover-image,.imageWidget img.logo-on-scroll{display:none}/**/.dmNewParagraph[data-version] .text-align-left{text-align:left!important}.dmNewParagraph[data-version] .text-align-center{text-align:center!important}.dmNewParagraph[data-version] .text-align-right{text-align:right!important}\n.dmNewParagraph[data-version] .text-align-justify{text-align:justify!important}.dmNewParagraph[data-version] .ql-indent-1{padding:0 1em;padding-inline-end:0;padding-inline-start:3em}.dmNewParagraph[data-version] .ql-indent-2{padding:0 2em;padding-inline-end:0;padding-inline-start:6em}\n.dmNewParagraph[data-version] .ql-indent-3{padding:0 3em;padding-inline-end:0;padding-inline-start:9em}.dmNewParagraph[data-version] .ql-indent-4{padding:0 4em;padding-inline-end:0;padding-inline-start:12em}\n.dmNewParagraph[data-version] .ql-indent-5{padding:0 5em;padding-inline-end:0;padding-inline-start:15em}.dmNewParagraph[data-version] .ql-indent-6{padding:0 6em;padding-inline-end:0;padding-inline-start:18em}\n.dmNewParagraph[data-version] .ql-indent-7{padding:0 7em;padding-inline-end:0;padding-inline-start:21em}.dmNewParagraph[data-version] .ql-indent-8{padding:0 8em;padding-inline-end:0;padding-inline-start:24em}\n.dmNewParagraph[data-version] .ql-indent-9{padding:0 9em;padding-inline-end:0;padding-inline-start:27em}.dmNewParagraph[data-version]{line-height:initial}.dmNewParagraph[data-version] [class*=size-]{width:auto!important;height:auto!important}\n.dmNewParagraph[data-version] h1,.dmNewParagraph[data-version] h2,.dmNewParagraph[data-version] h3,.dmNewParagraph[data-version] h4,.dmNewParagraph[data-version] h5,.dmNewParagraph[data-version] h6,.dmNewParagraph[data-version] ol,.dmNewParagraph[data-version] p,.dmNewParagraph[data-version] ul{margin-top:0;margin-bottom:0}\n.dmNewParagraph[data-version] ol,.dmNewParagraph[data-version] ul{padding:0;counter-reset:list-1 list-2 list-3 list-4 list-5 list-6 list-7 list-8 list-9}.dmNewParagraph[data-version] ol>li,.dmNewParagraph[data-version] ul>li{list-style-type:none;text-indent:-1.5em;margin:0 1em;margin-inline-end:0;margin-inline-start:2em}\n.dmNewParagraph[data-version] ol>li:before,.dmNewParagraph[data-version] ul>li:before{min-width:1em;display:inline-block;margin-right:.5em;margin-inline-start:0;margin-inline-end:.5em;text-align:right;text-align:end}\n.dmNewParagraph[data-version] ul .ql-indent-1{counter-reset:list-2 list-3 list-4 list-5 list-6 list-7 list-8 list-9;counter-increment:list-1}.dmNewParagraph[data-version] ul .ql-indent-1:before{font-weight:700;content:\"○\"}\n.dmNewParagraph[data-version] ul .ql-indent-2{counter-reset:list-3 list-4 list-5 list-6 list-7 list-8 list-9;counter-increment:list-2}.dmNewParagraph[data-version] ul .ql-indent-2:before,.dmNewParagraph[data-version] ul .ql-indent-3:before,.dmNewParagraph[data-version] ul .ql-indent-4:before,.dmNewParagraph[data-version] ul .ql-indent-5:before,.dmNewParagraph[data-version] ul .ql-indent-6:before,.dmNewParagraph[data-version] ul .ql-indent-7:before,.dmNewParagraph[data-version] ul .ql-indent-8:before,.dmNewParagraph[data-version] ul .ql-indent-9:before{font-weight:700;content:\"■\"}\n.dmNewParagraph[data-version] ul .ql-indent-3{counter-reset:list-4 list-5 list-6 list-7 list-8 list-9;counter-increment:list-3}.dmNewParagraph[data-version] ul .ql-indent-4{counter-reset:list-5 list-6 list-7 list-8 list-9;counter-increment:list-4}\n.dmNewParagraph[data-version] ul .ql-indent-5{counter-reset:list-6 list-7 list-8 list-9;counter-increment:list-5}.dmNewParagraph[data-version] ul .ql-indent-6{counter-reset:list-7 list-8 list-9;counter-increment:list-6}\n.dmNewParagraph[data-version] ul .ql-indent-7{counter-reset:list-8 list-9;counter-increment:list-7}.dmNewParagraph[data-version] ul .ql-indent-8{counter-reset:list-9;counter-increment:list-8}.dmNewParagraph[data-version] ul .ql-indent-9{counter-reset:list-10 list-9;counter-increment:list-9}\n.dmNewParagraph[data-version] ul>li:before{font-weight:700;content:\"•\";font-family:Arial}.dmNewParagraph[data-version] ul.custom-list-1>li:not([class^=ql-indent-]):not([class*=\" ql-indent-\"]):before{content:\"○\";transform:scale(1);transform-origin:center right}\n.dmNewParagraph[data-version] ul.custom-list-2>li:not([class^=ql-indent-]):not([class*=\" ql-indent-\"]):before{content:\"★\";transform:scale(.7);transform-origin:center right}\n.dmNewParagraph[data-version] ul.custom-list-3>li:not([class^=ql-indent-]):not([class*=\" ql-indent-\"]):before{content:\"➞\";transform:scale(.8);transform-origin:center right}\n.dmNewParagraph[data-version] ul.custom-list-4>li:not([class^=ql-indent-]):not([class*=\" ql-indent-\"]):before{content:\"+\";transform:scale(.7);transform-origin:center right}\n.dmNewParagraph[data-version] ul.custom-list-5>li:not([class^=ql-indent-]):not([class*=\" ql-indent-\"]):before{content:\"-\";transform:scale(.7);transform-origin:center right}\n.dmNewParagraph[data-version] ul.custom-list-6>li:not([class^=ql-indent-]):not([class*=\" ql-indent-\"]):before{content:\"✓\";transform:scale(.8);transform-origin:center right}\n.dmNewParagraph[data-version] ul.custom-list-7>li:not([class^=ql-indent-]):not([class*=\" ql-indent-\"]):before{content:\"✗\";transform:scale(.8);transform-origin:center right}\n.dmNewParagraph[data-version] ol .ql-indent-1{counter-reset:list-2 list-3 list-4 list-5 list-6 list-7 list-8 list-9;counter-increment:list-1}.dmNewParagraph[data-version] ol .ql-indent-1:before{content:counter(list-1,lower-alpha) \". \"}\n.dmNewParagraph[data-version] ol .ql-indent-2{counter-reset:list-3 list-4 list-5 list-6 list-7 list-8 list-9;counter-increment:list-2}.dmNewParagraph[data-version] ol .ql-indent-2:before{content:counter(list-2,lower-roman) \". \"}\n.dmNewParagraph[data-version] ol .ql-indent-3{counter-reset:list-4 list-5 list-6 list-7 list-8 list-9;counter-increment:list-3}.dmNewParagraph[data-version] ol .ql-indent-3:before{content:counter(list-3,decimal) \". \"}\n.dmNewParagraph[data-version] ol .ql-indent-4{counter-reset:list-5 list-6 list-7 list-8 list-9;counter-increment:list-4}.dmNewParagraph[data-version] ol .ql-indent-4:before{content:counter(list-4,lower-alpha) \". \"}\n.dmNewParagraph[data-version] ol .ql-indent-5{counter-reset:list-6 list-7 list-8 list-9;counter-increment:list-5}.dmNewParagraph[data-version] ol .ql-indent-5:before{content:counter(list-5,lower-roman) \". \"}\n.dmNewParagraph[data-version] ol .ql-indent-6{counter-reset:list-7 list-8 list-9;counter-increment:list-6}.dmNewParagraph[data-version] ol .ql-indent-6:before{content:counter(list-6,decimal) \". \"}\n.dmNewParagraph[data-version] ol .ql-indent-7{counter-reset:list-8 list-9;counter-increment:list-7}.dmNewParagraph[data-version] ol .ql-indent-7:before{content:counter(list-7,lower-alpha) \". \"}\n.dmNewParagraph[data-version] ol .ql-indent-8{counter-reset:list-9;counter-increment:list-8}.dmNewParagraph[data-version] ol .ql-indent-8:before{content:counter(list-8,lower-roman) \". \"}\n.dmNewParagraph[data-version] ol .ql-indent-9{counter-reset:list-10 list-9;counter-increment:list-9}.dmNewParagraph[data-version] ol .ql-indent-9:before{content:counter(list-9,decimal) \". \"}\n.dmNewParagraph[data-version] ol li{counter-reset:list-1 list-2 list-3 list-4 list-5 list-6 list-7 list-8 list-9;counter-increment:list-0}.dmNewParagraph[data-version] ol li:before{content:counter(list-0,decimal) \". \"}\n.dmNewParagraph[data-version] a{vertical-align:initial}@media(min-width:768px) and (max-width:1024px){.dmNewParagraph[data-version] .t-text-align-left{text-align:left!important}.dmNewParagraph[data-version] .t-text-align-center{text-align:center!important}\n.dmNewParagraph[data-version] .t-text-align-right{text-align:right!important}.dmNewParagraph[data-version] .t-text-align-justify{text-align:justify!important}}@media(max-width:767px){.dmRoot .dmNewParagraph[data-version] .m-text-align-left{text-align:left!important}\n.dmRoot .dmNewParagraph[data-version] .m-text-align-center{text-align:center!important}.dmRoot .dmNewParagraph[data-version] .m-text-align-right{text-align:right!important}.dmRoot .dmNewParagraph[data-version] .m-text-align-justify{text-align:justify!important}\n}.inlineBindingLink{color:inherit!important;text-decoration:inherit!important}/**/#dm .dmSocialHub:not(.gapSpacing) .socialHubInnerDiv a:not(:last-child){margin-right:5px}.socialHubIcon{display:flex!important;align-items:center;justify-content:center}.socialHubIcon svg{fill:currentColor;width:80%;height:80%}\n.socialHubIcon.style1,.socialHubIcon.style4,.socialHubIcon.style6,.socialHubIcon.style7{background:#617379}.socialHubIcon.style7{box-shadow:0 5px 0 0 #475459}.style1.dmSocialTiktok,.style4.dmSocialTiktok{background:#000}\n.style1.dmSocialFacebook,.style4.dmSocialFacebook{background:#1877f2}.style1.dmSocialTwitter,.style4.dmSocialTwitter{background:#0f1419}.style1.dmSocialGooglePlus,.style4.dmSocialGooglePlus{background:#da4835}\n.style1.dmSocialInstagram,.style4.dmSocialInstagram{background:radial-gradient(circle at 30% 107%,#fdf497 0%,#fdf497 5%,#fd5949 45%,#d6249f 60%,#285aeb 90%)!important}.style1.dmSocialYoutube,.style4.dmSocialYoutube{background:red}\n.style1.dmSocialLinkedin,.style4.dmSocialLinkedin{background:#2867b2}.style1.dmSocialYelp,.style4.dmSocialYelp{background:#e43340}.style1.dmSocialPinterest,.style4.dmSocialPinterest{background:#c8232c}\n.style1.dmSocialVimeo,.style4.dmSocialVimeo{background:#1ab7ea}.style1.dmSocialPicasa,.style4.dmSocialPicasa{background:#be81d1}.style1.dmSocialFoursquare,.style4.dmSocialFoursquare{background:#ef4b78}\n.style1.dmSocialRss,.style4.dmSocialRss{background:#f39200}.style1.dmSocialReddit,.style4.dmSocialReddit{background:#ff4500}.style1.dmSocialEmail,.style4.dmSocialEmail{background:#617379}.style1.dmSocialSnapchat,.style4.dmSocialSnapchat{background:#fffc00}\n.style1.dmSocialTripadvisor,.style4.dmSocialTripadvisor{background:#589442}.style1.dmSocialWaze,.style4.dmSocialWaze{background:#56cbe7}.style1.dmSocialGoogleMyBusiness,.style4.dmSocialGoogleMyBusiness{background:#477cdf}\n.style1.dmSocialWhatsapp,.style4.dmSocialWhatsapp{background:#25d366}.style1.dmSocialPhone,.style4.dmSocialPhone{background:#616c79}.style1:after{content:\"\";width:44px;height:28px;display:block;position:absolute;top:0;left:0;z-index:-1;border-radius:10px}\n.style1.dmSocialEmail:after,.style1.dmSocialFacebook:after,.style1.dmSocialFoursquare:after,.style1.dmSocialGoogleMyBusiness:after,.style1.dmSocialGooglePlus:after,.style1.dmSocialInstagram:after,.style1.dmSocialLinkedin:after,.style1.dmSocialPhone:after,.style1.dmSocialPicasa:after,.style1.dmSocialPinterest:after,.style1.dmSocialReddit:after,.style1.dmSocialRss:after,.style1.dmSocialSnapchat:after,.style1.dmSocialTripadvisor:after,.style1.dmSocialTwitter:after,.style1.dmSocialVimeo:after,.style1.dmSocialYelp:after,.style1.dmSocialYoutube:after{background:#fff;opacity:.2}\n.style2.dmSocialTiktok{color:#000}.style2.dmSocialFacebook{color:#1877f2}.style2.dmSocialTwitter{color:#0f1419}.style2.dmSocialGooglePlus{color:#da4835}.style2.dmSocialInstagram:before{background-image:radial-gradient(circle at 30% 107%,#fdf497 0%,#fdf497 5%,#fd5949 45%,#d6249f 60%,#285aeb 90%)!important;-webkit-background-clip:text;-webkit-text-fill-color:transparent}\n.style2.dmSocialYoutube{color:red}.style2.dmSocialLinkedin{color:#2867b2}.style2.dmSocialYelp{color:#e43340}.style2.dmSocialPinterest{color:#c8232c}.style2.dmSocialVimeo{color:#1ab7ea}.style2.dmSocialPicasa{color:#be81d1}\n.style2.dmSocialFoursquare{color:#ef4b78}.style2.dmSocialRss{color:#f39200}.style2.dmSocialReddit{color:#ff4500}.style2.dmSocialEmail{color:#617379}.style2.dmSocialSnapchat{color:#fffc00}.style2.dmSocialTripadvisor{color:#589442}\n.style2.dmSocialGoogleMyBusiness:before{color:#477cdf}.style2.dmSocialWaze:before{color:#56cbe7}.style2.dmSocialWhatsapp:before{color:#25d366}.style2.dmSocialPhone{color:#616c79}.style6.dmSocialTiktok{background:#000}\n.style6.dmSocialFacebook{background:#1877f2}.style6.dmSocialTwitter{background:#0f1419}.style6.dmSocialGooglePlus{background:#da4835}.style6.dmSocialInstagram{background:radial-gradient(circle at 30% 107%,#fdf497 0%,#fdf497 5%,#fd5949 45%,#d6249f 60%,#285aeb 90%)!important}\n.style6.dmSocialYoutube{background:red}.style6.dmSocialLinkedin{background:#2867b2}.style6.dmSocialYelp{background:#e43340}.style6.dmSocialPinterest{background:#c8232c}.style6.dmSocialVimeo{background:#1ab7ea}\n.style6.dmSocialPicasa{background:#be81d1}.style6.dmSocialFoursquare{background:#ef4b78}.style6.dmSocialRss{background:#f39200}.style6.dmSocialReddit{background:#ff4500}.style6.dmSocialEmail{background:#617379}\n.style6.dmSocialSnapchat{background:#fffc00}.style6.dmSocialTripadvisor{background:#589442}.style6.dmSocialWaze{background:#56cbe7}.style6.dmSocialGoogleMyBusiness{background:#477cdf}.style6.dmSocialWhatsapp{background:#25d366}\n.style6.dmSocialPhone{background:#616c79}.style7.dmSocialTiktok{background:#000}.style7.dmSocialFacebook{background:#1877f2;box-shadow:0 5px 0 0 #4b68a5}.style7.dmSocialTwitter{background:#0f1419}.style7.dmSocialGooglePlus{background:#da4835;box-shadow:0 5px 0 0 #c44130}\n.style7.dmSocialInstagram{box-shadow:0 5px 0 0 #ad2271;background:radial-gradient(circle at 30% 107%,#fdf497 0%,#fdf497 5%,#fd5949 45%,#d6249f 60%,#285aeb 90%)!important}.style7.dmSocialYoutube{background:red;box-shadow:0 5px 0 0 #b3392c}\n.style7.dmSocialLinkedin{background:#2867b2;box-shadow:0 5px 0 0 #1278b1}.style7.dmSocialYelp{background:#e43340;box-shadow:0 5px 0 0 #b62933}.style7.dmSocialPinterest{background:#c8232c;box-shadow:0 5px 0 0 #a21a2d}\n.style7.dmSocialVimeo{background:#1ab7ea;box-shadow:0 5px 0 0 #1592bb}.style7.dmSocialPicasa{background:#be81d1;box-shadow:0 5px 0 0 #9867a7}.style7.dmSocialFoursquare{background:#ef4b78;box-shadow:0 5px 0 0 #da3b67}\n.style7.dmSocialRss{background:#f39200;box-shadow:0 5px 0 0 #c27500}.style7.dmSocialReddit{background:#ff4500;box-shadow:0 5px 0 0 #ae5534}.style7.dmSocialEmail{background:#617379;box-shadow:0 5px 0 0 #475459}\n.style7.dmSocialSnapchat{background:#fffc00;box-shadow:0 5px 0 0 #d1d05d}.style7.dmSocialTripadvisor{background:#589442;box-shadow:0 5px 0 0 #4e7b3e}.style7.dmSocialWaze{background:#56cbe7;box-shadow:0 5px 0 0 #475459}\n.style7.dmSocialGoogleMyBusiness{background:#477cdf;box-shadow:0 5px 0 0 #475459}.style7.dmSocialWhatsapp{background:#25d366;box-shadow:0 5px 0 0 #475459}.style7.dmSocialPhone{background:#616c79;box-shadow:0 5px 0 0 #4a5458}/**/.graphicWidget{width:200px;height:200px;margin:10px auto;text-align:center}.graphicWidget svg.svg{width:100%;height:100%;color:#000;fill:#000}.graphicWidgetV2{width:60px;height:60px}.graphicWidgetV3{font-size:0}","isHomePage":false,"customwidgetsdata":[{"widgetId":"7ebf92fcfe734a44a1911cd164200ec0","version":360,"js":"LyogKiBNZWdhIE1lbnUKCiogQXVnIDIwMjAgCiogVmVyc2lvbiAxLjAuMgoKKlVwb24gcHVyY2hhc2Ugb2YgdGhpcyB3aWRnZXQsIHlvdSBhY3F1aXJlIHRoZSByaWdodCB0byB1c2UgaXQ7IHlvdSdyZSBub3QgYWN0dWFsbHkgCmFjcXVpcmluZyB0aGUgd2lkZ2V0IGl0c2VsZi5UaGVDYW1lbC5jbyBpcyB0aGUgb3duZXIgb2YgdGhlIGludGVsbGVjdHVhbCBwcm9wZXJ0eSBvZiB0aGlzIHdpZGdldC4KVGhlIHdpZGdldCBpcyBmb3IgdXNlIG9ubHksIGl0IGlzIG5vdCB0byBiZSBvbiBzb2xkLCBsZW50LCByZW50ZWQsIGdpdmVuIGF3YXksIGdpZnRlZCB5b3UgY2Fu4oCZdCAKZXZlbiBwdXQgaXQgaW4geW91ciB3aWxsLiBJdCBpcyBmb3IgdXNlIGZvciB5b3VyIHNpdGVzIG9ubHkgb24gdGhlIGRhc2hib2FyZCB3ZSBpbnN0YWxsIHRoZSBpdGVtIGluLgoKKktpbmRseSByZWZlciB0byBvdXIgVGVybXMgYW5kIENvbmRpdGlvbnMgZm9yIG1vcmUgaW5mbyAtIGh0dHA6Ly93d3cudGhlY2FtZWwuY28vdGVybXMtYW5kLWNvbmRpdGlvbnMKKi8KCmNvbnN0IHNpdGVfbmFtZSA9IGRhdGEuc2l0ZUlkOwpjb25zdCBwcmV2aWV3X2N1cnJlbnRfcGFnZSA9IGRhdGEucGFnZTsKY29uc3QgbGl2ZV9jdXJyZW50X3BhZ2UgPSB3aW5kb3cubG9jYXRpb24ucGF0aG5hbWU7CmNvbnN0IHdpZGdldElkID0gZGF0YS5pZDsKCmxldCBzaG93SG9tZSA9IGRhdGEuY29uZmlnLnNob3dIb21lOwpsZXQgQ29tcG9uZW50QXBwZW5kID0gbmV3IENvbXBvbmVudFN0cnVjdHVyZSgpOwpsZXQgbmF2UG9zID0gZGF0YS5jb25maWcubmF2UG9zOwpsZXQgdXNlRGl2aWRlciA9IGRhdGEuY29uZmlnLnVzZURpdmlkZXI7CmxldCBkaXZpZGVTdHlsZSA9IGRhdGEuY29uZmlnLmRpdmlkZXJTdHlsZTsKCmxldCBkZXZpY2UgPSBkYXRhLmRldmljZTsKbGV0IHNob3dTdWJOYXZUaXRsZSA9IGRhdGEuY29uZmlnLnNob3dTdWJOYXZUaXRsZTsKbGV0IG5hdkhvdmVyID0gZGF0YS5jb25maWcubmF2SG92ZXI7CmxldCBpc1N0aWNreSA9IGRhdGEuY29uZmlnLmlzU3RpY2t5OwpsZXQgc2hvd0NvbUFycm93ID0gZGF0YS5jb25maWcuc2hvd0NvbUFycm93OwoKbGV0IGlzTXVsdGlMYW5nID0gd2luZG93LlBhcmFtZXRlcnMuSXNTaXRlTXVsdGlsaW5ndWFsOwpsZXQgY3VycmVudF9sYW5nID0gaXNNdWx0aUxhbmcgPyB3aW5kb3cuUGFyYW1ldGVycy50cmFuc2xhdGVkUGFnZVVybDoiIjsvLyBleDogL2ZyLWNhIHx8IC9lbiB8fCAiIgpsZXQgaXNfbWFpbl9sYW5nID0gaXNNdWx0aUxhbmcgJiYgd2luZG93LlBhcmFtZXRlcnMudHJhbnNsYXRlZFBhZ2VVcmwgPT0gIiI7CmxldCBpc19ob21lID0gd2luZG93LlBhcmFtZXRlcnMuSW5pdGlhbFBhZ2VBbGlhcyA9PSAiaG9tZSIgfHwgd2luZG93LlBhcmFtZXRlcnMuSW5pdGlhbFBhZ2VBbGlhcyA9PSBjdXJyZW50X2xhbmcuc3BsaXQoIi8iKVsxXTsKCmxldCBjdXJyZW50X2xhbmd1YWdlID0gd2luZG93LlBhcmFtZXRlcnMudHJhbnNsYXRlZFBhZ2VVcmwgPT0gIiIgPyAiIiA6IGAke3dpbmRvdy5QYXJhbWV0ZXJzLnRyYW5zbGF0ZWRQYWdlVXJsLnNwbGl0KCIvIilbMV19YDsKCmxldCBtYXJrdXAgPSBnZXRNZW51X1tzaXRlX25hbWVdKCk7IC8vZ2V0TWVudV9bc2l0ZV9uYW1lXSgpOyAvLyBkZWZhdWx0TmF2CgpjcmVhdGVNZWdhTWVudShtYXJrdXApOwoKaXNTdGlja3kgPT0gdHJ1ZSA/ICQoZWxlbWVudCkuYXR0cignZGF0YS1lbGVtZW50LXR5cGUnLCAnb25lbGlua3NtZW51JykgOiAnJzsKCi8vIHRyZWF0IHRoZSB3aWRnZXQncyByb3cgYXMgYSBuYXZpZ2F0aW9uIHJvdwooaXNTdGlja3kpID8gJChlbGVtZW50KS5wYXJlbnRzKCcuZG1SZXNwUm93JykudG9nZ2xlQ2xhc3MoJ21pbmktaGVhZGVyLWhpZGUtcm93IG1pbmktaGVhZGVyLXNob3ctcm93JykgOiAkKGVsZW1lbnQpLnBhcmVudHMoJy5kbVJlc3BSb3cnKS5yZW1vdmVDbGFzcygnbWluaS1oZWFkZXItc2hvdy1yb3cnKTsKCmZ1bmN0aW9uIGNyZWF0ZU1lZ2FNZW51KGFyck9iaikgeyAvLyBETyBOT1QgQ09QWSBGUk9NIGRhc2hib2FyZC5qcwogIGlmICghYXJyT2JqKSB7CiAgICAkKGVsZW1lbnQpLmZpbmQoJy5tZWdhbmF2LWNvbnRhaW5lcicpLmh0bWwoYDxsaSBjbGFzcz0ibm9tYXJrdXAiPk1lZ2EgTWVudSBXaWRnZXQgaGFzIGJlZW4gcmVtb3ZlZCBmcm9tIHRoZSBBcHAgU3RvcmUuPC9saT5gKTsKICAgIHJldHVybgogIH0KICBpZiAoYXJyT2JqID09ICJDbGljayBoZXJlIHRvIHNldHVwIE1lZ2EgTWVudSBXaWRnZXQiIHx8IGFyck9iaiA9PSAiU2V0dXAgTWVnYSBNZW51IFdpZGdldCIpIHsKICAgICQoZWxlbWVudCkuZmluZCgnLm1lZ2FuYXYtY29udGFpbmVyJykuaHRtbChgPGRpdiBjbGFzcz0ibWVnYS1tZW51LXNldHVwIj4ke2Fyck9ian08L2Rpdj5gKTsKICAgIHJldHVybgogIH0KICBsZXQgbWVudU9iaiA9IHR5cGVvZiBhcnJPYmogPT0gInN0cmluZyIgPyBKU09OLnBhcnNlKGFyck9iaikgOiBhcnJPYmo7CgogICQoZWxlbWVudCkuZmluZCgnLm1lZ2FuYXYtY29udGFpbmVyJykuaHRtbCgiIik7CiAgCiAgbGV0IG5hdkNyZWF0ZWQgPSBtZW51T2JqLm1hcCgob2JqLCBpbmRleCkgPT4gewogICAgbGV0IG5ld19wYXRoOwoKICAgIGxldCBsb2NhbGVfdXJsID0gb2JqWyd1cmwnK2N1cnJlbnRfbGFuZ3VhZ2VdIHx8IG9ialsndXJsJytjdXJyZW50X2xhbmd1YWdlXSA9PSAiIiA/IG9ialsndXJsJytjdXJyZW50X2xhbmd1YWdlXSA6IG9iai51cmw7CgogICAgbGV0IGl0ZW1MaW5rID0gd2luZG93LmxvY2F0aW9uLmhyZWYuaW5jbHVkZXMoZGF0YS5zaXRlSWQpICYmIGxvY2FsZV91cmwgIT09ICIiID8gYC9zaXRlLyR7ZGF0YS5zaXRlSWR9JHtsb2NhbGVfdXJsfT9wcmV2aWV3PXRydWUmaW5zaXRlcHJldmlldz10cnVlJnNob3dPcmlnaW5hbD10cnVlJmRtX2NoZWNrU3luYz0xJmRtX3RyeV9tb2RlPXRydWUmaW5QcmV2PXRydWUmZG1fZGV2aWNlPSR7ZGV2aWNlfWAgOiBgJHtsb2NhbGVfdXJsfWA7CiAgICAvLyBodHRwczovL3dlYmJ1aWxkZXIubG9jYWxzZWFyY2guY29tLmF1L3NpdGUvOWM2NjA5ZDgvcmVzaWRlbnRpYWw/cHJldmlldz10cnVlJmluc2l0ZXByZXZpZXc9dHJ1ZSZkbV9kZXZpY2U9ZGVza3RvcAogICAgCiAgICBsZXQgcGF0aE5hbWUgPSBpc0FjdGl2ZShsb2NhbGVfdXJsKTsKICAgIGNvbnNvbGUubG9nKHBhdGhOYW1lKTsKICAgIAogICAgbGV0IHRpdGxlX2xhbmcgPSBvYmpbJ3RpdGxlJytjdXJyZW50X2xhbmd1YWdlXSA/IG9ialsndGl0bGUnK2N1cnJlbnRfbGFuZ3VhZ2VdOm9iai50aXRsZTsKICAgIGlmIChsb2NhbGVfdXJsLmluY2x1ZGVzKCJodHRwIikgfHwgbG9jYWxlX3VybCA9PSAiIikgewogICAgICBpdGVtbGluayA9IGxvY2FsZV91cmw7CiAgICB9IAogICAgbGV0IGlzTm9Db21wb25lbnQgPSBvYmouY29tcG9uZW50cy5sZW5ndGg7CiAgICAKICAgIAogICAgbGV0IG5hdk1lbnVTdHJ1Y3R1cmUgPSBgCiAgICAgICAgICAgICR7dXNlRGl2aWRlciAmJiAhc2hvd0hvbWUgPyBkaXZpZGVyU3R5bGUoZGl2aWRlU3R5bGUpIDogdXNlRGl2aWRlciAmJiBzaG93SG9tZSA/IGRpdmlkZXJTdHlsZShkaXZpZGVTdHlsZSkgOiAnJ30KICAgICAgICAgICAgPGxpIGNsYXNzPSJtZWdhbmF2LWNvbnRhaW5lcl9fbmF2bGluay1jb250YWluZXIgJHtpc05vQ29tcG9uZW50ID09IDAgPyAnbm9Db21wb25lbnQnIDogJ2hhc0NvbXBvbmVudCd9ICR7c2hvd0NvbUFycm93ID8gImFycm93U2hvdyIgOiAiIn0iIGRhdGEtbWVudT0iJHtpbmRleH0iPgogICAgICAgICAgICAke2xvY2FsZV91cmwgIT09ICIiID8gYDxhIGhyZWY9IiR7aXRlbUxpbmt9IiBjbGFzcz0ibWVnYW5hdi1jb250YWluZXJfX25hdmxpbmsgJHtuYXZIb3Zlcn0gJHtwYXRoTmFtZSA/ICdhY3RpdmVOYXYnIDogJyd9IiB0YXJnZXQ9IiR7b2JqLm5ld1RhYiA/ICdfYmxhbmsnIDogJyd9Ij4ke3RpdGxlX2xhbmd9PC9hPmAgOiBgPHNwYW4gY2xhc3M9Im1lZ2FuYXYtY29udGFpbmVyX19uYXZsaW5rICR7cGF0aE5hbWUgPyAnYWN0aXZlTmF2JyA6ICcnfSAke25hdkhvdmVyfSI+JHt0aXRsZV9sYW5nfSAke2lzTm9Db21wb25lbnQgPT0gMCA/ICcnIDogJzxzcGFuIGNsYXNzPSJzdWJJY29uIj48aSBjbGFzcz0iZmEtc29saWQgZmEtY2hldnJvbi1kb3duIj48L2k+PC9zcGFuPid9PC9zcGFuPmB9CiAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPSJtZWdhbmF2LWNvbnRhaW5lcl9fbmF2bGluay1jb21wb25lbnQtd3JhcHBlciI+CiAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz0ibWVnYW5hdi1jb250YWluZXJfX25hdmxpbmstY29tcG9uZW50LWNvbnRhaW5lciAke29iai5vcmllbnRhdGlvbiA9PSAnSG9yaXpvbnRhbCcgPyBvYmoub3JpZW50YXRpb24gOiAnVmVydGljYWwnfSAke2lzTm9Db21wb25lbnQgPT0gMCA/ICdoaWRkZW4nIDogJyd9Ij4KICAgICAgICAgICAgICAgICAgICAgICAgJHtDb21wb25lbnRBcHBlbmQuc3RydWN0dXJlKG9iail9CiAgICAgICAgICAgICAgICAgICAgPC9kaXY+CiAgICAgICAgICAgICAgICA8L2Rpdj4KICAgICAgICAgICAgPC9saT5gOwogICAgICAgICAgICAKICAgICQoZWxlbWVudCkuZmluZCgnLm1lZ2FuYXYtY29udGFpbmVyJykuYXBwZW5kKG5hdk1lbnVTdHJ1Y3R1cmUpOwogICAgCiAgICBpZiAoc2hvd0hvbWUpIHsKICAgICAgJChlbGVtZW50KS5maW5kKCcubWVnYW5hdl9fZGl2aWRlcjpmaXJzdC1jaGlsZCcpLnNob3coKTsKICAgIH0gZWxzZSB7CiAgICAgICQoZWxlbWVudCkuZmluZCgnLm1lZ2FuYXZfX2RpdmlkZXI6Zmlyc3QtY2hpbGQnKS5oaWRlKCk7CiAgICB9CiAgfSk7Cgp9CgpmdW5jdGlvbiBDb21wb25lbnRTdHJ1Y3R1cmUoKSB7CiAgICB0aGlzLnN0cnVjdHVyZSA9IGZ1bmN0aW9uIChkYXRhKSB7CiAgICAgICAgcmV0dXJuIGRhdGEuY29tcG9uZW50cy5tYXAoKGFyciwgY29tcEluZGV4KSA9PiB7CiAgICAgICAgICAgIGxldCBvYmpLZXkgPSBPYmplY3Qua2V5cyhhcnIpOwogICAgICAgICAgICByZXR1cm4gdGhpc1tvYmpLZXldID09PSB1bmRlZmluZWQgPyB0aGlzLmVtcHR5X2NvbXBvbmVudCgpIDogdGhpc1tvYmpLZXldKGFycltvYmpLZXldLCBjb21wSW5kZXgpOwogICAgICAgIH0pLmpvaW4oIiIpOwogICAgfTsKICAgIHRoaXMuZW1wdHlfY29tcG9uZW50ID0gZnVuY3Rpb24gKCkgewogICAgICAgIHJldHVybiAnJzsKICAgIH07CiAgICB0aGlzLmNvbXBvbmVudFRlbXBsYXRlID0gZnVuY3Rpb24gKGluZGV4LCBjb21wSW5kZXgpIHsKICAgICAgICBsZXQgY29tcG9uZW50ID0gYAogICAgICAgIDxkaXYgY2xhc3M9IndpZGdldC1idWlsZGVyX19uYXYtY29tcG9uZW50cy13cmFwcGVyIHdpZGdldC1idWlsZGVyX2xpbmtzLWxpc3QtY2FyZC10aGVtZSIgZGF0YS1pbmRleD0iJHtpbmRleH0iPgogICAgICAgICAgICA8ZGl2IGNsYXNzPSJ3aWRnZXQtYnVpbGRlcl9uYXYtY29tcG9uZW50LWxhYmVsIHdpZGdldC1idWlsZGVyX2xpbmtzLWxpc3QtdGl0bGUtdGhlbWUiPgogICAgICAgICAgICAgICAgPGRpdiBjbGFzcz0id2lkZ2V0LWJ1aWxkZXJfX2FjY29yZGlvbi1idG4iIGRhdGEtaW5kZXg9IiR7aW5kZXh9IiBkYXRhLWFjY29yZGlvbj0ibWVudSI+PC9kaXY+CiAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPSJ3aWRnZXQtYnVpbGRlcl9fYWNjb3JkaW9uLWljb24td3JhcHBlciI+CiAgICAgICAgICAgICAgICAgICAgPGkgY2xhc3M9ImZhcyBmYS1jYXJldC1yaWdodCB3aWRnZXQtYnVpbGRlcl9fYWNjb3JkaW9uLWljb24gYWN0aXZlIj48L2k+CiAgICAgICAgICAgICAgICA8L2Rpdj4KICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9IndpZGdldC1idWlsZGVyX19jb21wb25lbnQtcGlja2VyLXdyYXBwZXIiPgogICAgICAgICAgICAgICAgICAgIDxzZWxlY3QgbmFtZT0iY29tcG9uZW50cGlja2VyIiBjbGFzcz0iY29tcG9uZW50cGlja2VyIHdpZGdldC1idWlsZGVyX2lucHV0LXRpdGxlLWZpZWxkLXRoZW1lIiBkYXRhLWluZGV4PSIke2luZGV4fSIgZGF0YS1jb21waW5kZXg9IiR7Y29tcEluZGV4fSI+CiAgICAgICAgICAgICAgICAgICAgICAgIDxvcHRpb24gdmFsdWU9ImZyZWVfdGV4dCI+RnJlZSBUZXh0PC9vcHRpb24+CiAgICAgICAgICAgICAgICAgICAgICAgIDxvcHRpb24gdmFsdWU9ImNsaWNrX3RvX2NhbGwiPkNsaWNrIHRvIENhbGw8L29wdGlvbj4KICAgICAgICAgICAgICAgICAgICAgICAgPG9wdGlvbiB2YWx1ZT0ic29jaWFsX21lZGlhIj5Tb2NpYWwgTWVkaWE8L29wdGlvbj4KICAgICAgICAgICAgICAgICAgICAgICAgPG9wdGlvbiB2YWx1ZT0iY29udGFjdF9pbmZvIj5Db250YWN0IEluZm9ybWF0aW9uPC9vcHRpb24+CiAgICAgICAgICAgICAgICAgICAgICAgIDxvcHRpb24gdmFsdWU9ImN1c3RvbV9idXR0b24iPkN1c3RvbSBCdXR0b25zPC9vcHRpb24+CiAgICAgICAgICAgICAgICAgICAgICAgIDxvcHRncm91cCBsYWJlbD0iTXVsdGlwbGUgU3ViIE5hdmlnYXRpb25zIj4KICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxvcHRpb24gdmFsdWU9Im11bHRpX3N1Yl9uYXYiPlN1YiBOYXZpZ2F0aW9uPC9vcHRpb24+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8b3B0aW9uIHZhbHVlPSJleHRfbmF2Ij5FeHRlbmRlZCBTdWIgTmF2aWdhdGlvbjwvb3B0aW9uPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgPG9wdGlvbiB2YWx1ZT0iZ3JpZCI+R3JpZCBDb2x1bW5zPC9vcHRpb24+CiAgICAgICAgICAgICAgICAgICAgICAgIDwvb3B0Z3JvdXA+CiAgICAgICAgICAgICAgICAgICAgICAgIDxvcHRncm91cCBsYWJlbD0iVmlzdWFsIE1lZGlhIj4KICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxvcHRpb24gdmFsdWU9InRodW1ibmFpbCI+VGh1bWJuYWlsPC9vcHRpb24+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8b3B0aW9uIHZhbHVlPSJ2aWRlbyI+VmlkZW88L29wdGlvbj4KICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxvcHRpb24gdmFsdWU9InN0YWNrZWRfaW1hZ2VzIj5JbWFnZSBHYWxsZXJ5PC9vcHRpb24+CiAgICAgICAgICAgICAgICAgICAgICAgIDwvb3B0Z3JvdXA+CiAgICAgICAgICAgICAgICAgICAgPC9zZWxlY3Q+CiAgICAgICAgICAgICAgICA8L2Rpdj4KICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9IndpZGdldC1idWlsZGVyX19jb21wb25lbnQtaW5wdXQtbGFiZWwiPkNvbXBvbmVudDwvZGl2PgogICAgICAgICAgICAgICAgPGRpdiBjbGFzcz0id2lkZ2V0LWJ1aWxkZXJfZGVsZXRlLW5hdmxpbmstYnRuLXdyYXBwZXIiIHRpdGxlPSJEZWxldGUiIGRhdGEtYWNjb3JkaW9uPSJjb21wIj4KICAgICAgICAgICAgICAgICAgICA8aSBjbGFzcz0id2lkZ2V0LWJ1aWxkZXJfZGVsZXRlLW5hdmxpbmstYnRuIGZhIGZhLXRyYXNoLWFsdCIgZGF0YS1pbmRleD0iJHtpbmRleH0iIGRhdGEtY29tcGluZGV4PSIke2NvbXBJbmRleH0iPjwvaT4KICAgICAgICAgICAgICAgIDwvZGl2PgogICAgICAgICAgICA8L2Rpdj4KICAgICAgICA8L2Rpdj5gOwoKICAgICAgICByZXR1cm4gY29tcG9uZW50OwogICAgfTsKICAgIHRoaXMuZnJlZV90ZXh0ID0gZnVuY3Rpb24gKHRleHQpIHsKICAgICAgICBsZXQgZnJlZV90ZXh0ID0gdGV4dFsnZnJlZV90ZXh0JyArIGN1cnJlbnRfbGFuZ3VhZ2VdID8gdGV4dFsnZnJlZV90ZXh0JyArIGN1cnJlbnRfbGFuZ3VhZ2VdIDogdGV4dC5mcmVlX3RleHQ7CiAgICAgICAgbGV0IHRleHRTdHJ1Y3R1cmUgPSBgCiAgICAgICAgICAgIDxkaXYgY2xhc3M9Im1lZ2FuYXYtY29udGFpbmVyX190ZXh0IG1lZ2FuYXZfY29udGFpbmVyX19jb21wb25lbnQtc3BhY2luZyI+CiAgICAgICAgICAgICAgICAke2ZyZWVfdGV4dH0KICAgICAgICAgICAgPC9kaXY+YDsKICAgICAgICByZXR1cm4gdGV4dFN0cnVjdHVyZTsKICAgIH07CiAgICB0aGlzLnRodW1ibmFpbCA9IGZ1bmN0aW9uICh0aHVtYm5haWwpIHsKICAgICAgICBsZXQgbG9jYWxlX3VybCA9IHRodW1ibmFpbFsndXJsJytjdXJyZW50X2xhbmd1YWdlXSA/IHRodW1ibmFpbFsndXJsJytjdXJyZW50X2xhbmd1YWdlXSA6IGAke3RodW1ibmFpbC51cmw9PSIvaG9tZSIgPyAiIjogYC8ke2N1cnJlbnRfbGFuZ3VhZ2V9JHt0aHVtYm5haWwudXJsLnJlcGxhY2UoL18vZywgIi0iKX1gfWA7CiAgICAgICAgbGV0IGl0ZW1MaW5rID0gd2luZG93LmxvY2F0aW9uLmhyZWYuaW5jbHVkZXMoZGF0YS5zaXRlSWQpID8gYC9zaXRlLyR7ZGF0YS5zaXRlSWR9JHtsb2NhbGVfdXJsfT9wcmV2aWV3PXRydWUmaW5zaXRlcHJldmlldz10cnVlJnNob3dPcmlnaW5hbD10cnVlJmRtX2NoZWNrU3luYz0xJmRtX3RyeV9tb2RlPXRydWUmaW5QcmV2PXRydWUmZG1fZGV2aWNlPSR7ZGV2aWNlfWAgOiBgJHtsb2NhbGVfdXJsfWA7CiAgICAgICAgbGV0IGxpbmsgPSBgaHJlZj0iJHtpdGVtTGluayB8fCBpdGVtTGluayA9PSAiIiA/IGl0ZW1MaW5rIDogdGh1bWJuYWlsLnVybH0iYDsKICAgICAgICBpZiAobG9jYWxlX3VybC5pbmNsdWRlcygiaHR0cCIpIHx8IHRodW1ibmFpbFsndXJsJytjdXJyZW50X2xhbmd1YWdlXSA9PSAiIikgewogICAgICAgICAgbGluayA9IGBocmVmPSIke3RodW1ibmFpbFsndXJsJytjdXJyZW50X2xhbmd1YWdlXSA/IHRodW1ibmFpbFsndXJsJytjdXJyZW50X2xhbmd1YWdlXSA6IHRodW1ibmFpbC51cmx9ImA7CiAgICAgICAgfSAKICAgICAgICBsZXQgaW1nX3NyYyA9IHRodW1ibmFpbFsnaW1nX3NyYycgKyBjdXJyZW50X2xhbmd1YWdlXSA/IHRodW1ibmFpbFsnaW1nX3NyYycgKyBjdXJyZW50X2xhbmd1YWdlXSA6IHRodW1ibmFpbC5pbWdfc3JjOwogICAgICAgIGxldCBhbHQgPSB0aHVtYm5haWxbJ2FsdCcgKyBjdXJyZW50X2xhbmd1YWdlXSA/IHRodW1ibmFpbFsnYWx0JyArIGN1cnJlbnRfbGFuZ3VhZ2VdIDogdGh1bWJuYWlsLmFsdDsKICAgICAgICBsZXQgbmV3VGFiID0gdGh1bWJuYWlsWyduZXdUYWInICsgY3VycmVudF9sYW5ndWFnZV0gPyB0aHVtYm5haWxbJ25ld1RhYicgKyBjdXJyZW50X2xhbmd1YWdlXSA6IHRodW1ibmFpbC5uZXdUYWI7CiAgICAgICAgbGV0IHRodW1ibmFpbFN0cnVjdHVyZSA9IGAKICAgICAgICAgICAgPGRpdiBjbGFzcz0ibWVnYW5hdi1jb250YWluZXJfX3RodW1ibmFpbC1pbWFnZSBtZWdhbmF2X2NvbnRhaW5lcl9fY29tcG9uZW50LXNwYWNpbmciPgogICAgICAgICAgICAgICAgPGEgJHtsaW5rICE9PSAnaHJlZj0iIicgPyBsaW5rIDoiIn0gY2xhc3M9Im1lZ2FuYXYtY29udGFpbmVyX190aHVtYm5haWwtaW1hZ2Utd3JhcHBlciIgJHtuZXdUYWIgPT0gdHJ1ZSA/ICd0YXJnZXQ9Il9ibGFuayInIDogJyd9PiAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICA8aW1nIHNyYz0iJHtpbWdfc3JjID8gaW1nX3NyYyA6ICIifSIgYWx0PSIke2FsdCA/IGFsdCA6IiJ9Ij4KICAgICAgICAgICAgICAgIDwvYT4KICAgICAgICAgICAgPC9kaXY+YDsKICAgICAgICByZXR1cm4gdGh1bWJuYWlsU3RydWN0dXJlOwogICAgfTsKICAgIHRoaXMuZ3JpZCA9IGZ1bmN0aW9uIChpdGVtcykgewogICAgICAgIGxldCB0aXRsZV9sYW5nID0gaXRlbXNbJ3RpdGxlJyArIGN1cnJlbnRfbGFuZ3VhZ2VdID8gaXRlbXNbJ3RpdGxlJyArIGN1cnJlbnRfbGFuZ3VhZ2VdIDogaXRlbXMudGl0bGU7CiAgICAgICAgbGV0IGNvbHVtblNpemUgPSBpdGVtcy5jb2x1bW5TaXplOwogICAgICAgIGxldCBkZWZhdWx0V2lkdGggPSBpdGVtcy5kZWZhdWx0V2lkdGg7CiAgICAgICAgbGV0IGl0ZW1zTGlzdCA9IGl0ZW1zLmdyaWRfbmF2X2xpc3QubWFwKChpKSA9PiB7CiAgICAgICAgICAgIGxldCB0aXRsZSA9IGlbJ3RpdGxlJyArIGN1cnJlbnRfbGFuZ3VhZ2VdID8gaVsndGl0bGUnICsgY3VycmVudF9sYW5ndWFnZV0gOiBpLnRpdGxlOwogICAgICAgICAgICBsZXQgbG9jYWxlX3VybCA9IGlbJ3VybCcrY3VycmVudF9sYW5ndWFnZV0gPyBpWyd1cmwnK2N1cnJlbnRfbGFuZ3VhZ2VdIDogYCR7aS51cmw9PSIvaG9tZSIgPyAiIjogYC8ke2N1cnJlbnRfbGFuZ3VhZ2V9JHtpLnVybC5yZXBsYWNlKC9fL2csICItIil9YH1gOwogICAgICAgICAgICAKICAgICAgICAgICAgbGV0IGl0ZW1MaW5rID0gd2luZG93LmxvY2F0aW9uLmhyZWYuaW5jbHVkZXMoZGF0YS5zaXRlSWQpID8gYC9zaXRlLyR7ZGF0YS5zaXRlSWR9JHtsb2NhbGVfdXJsfT9wcmV2aWV3PXRydWUmaW5zaXRlcHJldmlldz10cnVlJnNob3dPcmlnaW5hbD10cnVlJmRtX2NoZWNrU3luYz0xJmRtX3RyeV9tb2RlPXRydWUmaW5QcmV2PXRydWUmZG1fZGV2aWNlPSR7ZGV2aWNlfWAgOiBgJHtsb2NhbGVfdXJsfWA7CiAgICAgICAgICAgIGxldCBsaW5rID0gYGhyZWY9IiR7aXRlbUxpbmsgfHwgaXRlbUxpbmsgPT0gIiIgPyBpdGVtTGluayA6IGkudXJsfSJgOwogICAgICAgICAgICBpZiAobG9jYWxlX3VybC5pbmNsdWRlcygiaHR0cCIpIHx8IGlbJ3VybCcrY3VycmVudF9sYW5ndWFnZV0gPT0gIiIpIHsKICAgICAgICAgICAgICBsaW5rID0gYGhyZWY9IiR7aVsndXJsJytjdXJyZW50X2xhbmd1YWdlXSA/IGlbJ3VybCcrY3VycmVudF9sYW5ndWFnZV0gOiBpLnVybH0iYDsKICAgICAgICAgICAgfSAKICAgICAgICAgICAgbGV0IHNob3J0X2Rlc2MgPSBpWydzaG9ydF9kZXNjJyArIGN1cnJlbnRfbGFuZ3VhZ2VdID8gaVsnc2hvcnRfZGVzYycgKyBjdXJyZW50X2xhbmd1YWdlXSA6IGkuc2hvcnRfZGVzYzsKICAgICAgICAgICAgbGV0IGljb24gPSBpWydpY29uJyArIGN1cnJlbnRfbGFuZ3VhZ2VdID8gaVsnaWNvbicgKyBjdXJyZW50X2xhbmd1YWdlXSA6IGkuaWNvbjsKICAgICAgICAgICAgcmV0dXJuIGAKICAgICAgICAgICAgICAgIDxhICR7bGluayAhPT0gJ2hyZWY9IiInID8gbGluayA6ICcnfSBjbGFzcz0ibWVnYW5hdi1jb250YWluZXJfX2dyaWQtc3ViLW5hdi13cmFwcGVyIGhvcml6b250YWwiIHRhcmdldD0iJHtpLm5ld1RhYiA/ICdfYmxhbmsnIDogJyd9Ij4KICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPSJtZWdhbmF2LWNvbnRhaW5lcl9fZ3JpZC1zdWItbmF2LWljb24iPgogICAgICAgICAgICAgICAgICAgICAgICAke2kuaGlkZUljb24gPyAnJzpgPGltZyBzcmM9IiR7aWNvbiA/IGljb24gOiAiIn0iIGFsdD0iIj5gfQogICAgICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPSJtZWdhbmF2LWNvbnRhaW5lcl9fZ3JpZC1zdWItbmF2LWxpbmstdGl0bGUiPiR7dGl0bGUgPyB0aXRsZSA6ICIifTwvZGl2PgogICAgICAgICAgICAgICAgICAgIDwvZGl2PgogICAgICAgICAgICAgICAgICAgICR7c2hvcnRfZGVzYyA/IGA8ZGl2IGNsYXNzPSJtZWdhbmF2LWNvbnRhaW5lcl9fZ3JpZC1zdWItbmF2LWRlc2NyaXB0aW9uIj4ke3Nob3J0X2Rlc2N9PC9kaXY+YCA6ICcnfQogICAgICAgICAgICAgICAgPC9hPmA7CiAgICAgICAgfSkuam9pbignJyk7CgogICAgICAgIGxldCBpdGVtc05hdlN0cnVjdHVyZSA9IGAKICAgICAgICA8ZGl2IGNsYXNzPSJtZWdhbmF2LWNvbnRhaW5lcl9fZ3JpZC1zdWItbmF2LWNvbnRhaW5lciBtZWdhbmF2X2NvbnRhaW5lcl9fY29tcG9uZW50LXNwYWNpbmciPgogICAgICAgICAgICA8ZGl2IGNsYXNzPSJtZWdhbmF2LWNvbnRhaW5lcl9fZ3JpZC1zdWItbmF2LXRpdGxlICR7dGl0bGVfbGFuZyA/ICIiIDogIm5vVGl0bGUifSI+JHt0aXRsZV9sYW5nID8gdGl0bGVfbGFuZyA6ICdUaXRsZSd9PC9kaXY+CiAgICAgICAgICAgIDxkaXYgY2xhc3M9Im1lZ2FuYXYtY29udGFpbmVyX19ncmlkLXN1Yi1uYXYtaXRlbXMgJHtpdGVtcy50b3BJY29uID8gJ21lZ2FuYXYtY29udGFpbmVyLWdyaWQtdG9wLWljb25zJzonJ30iIGRhdGEtc2l6ZT0iJHtjb2x1bW5TaXplfSIgc3R5bGU9IndpZHRoOiR7YCR7ZGVmYXVsdFdpZHRoID8gZGVmYXVsdFdpZHRoIDogMH1weGB9Ij4KICAgICAgICAgICAgICAgICR7aXRlbXNMaXN0fQogICAgICAgICAgICA8L2Rpdj4KICAgICAgICA8L2Rpdj5gOwogICAgICAgIHJldHVybiBpdGVtc05hdlN0cnVjdHVyZTsKICAgIH07CiAgICB0aGlzLnN0YWNrZWRfaW1hZ2VzID0gZnVuY3Rpb24gKGltYWdlcykgewogICAgICAgIGxldCB0aXRsZV9sYW5nID0gaW1hZ2VzWyd0aXRsZScgKyBjdXJyZW50X2xhbmd1YWdlXSA/IGltYWdlc1sndGl0bGUnICsgY3VycmVudF9sYW5ndWFnZV0gOiBpbWFnZXMudGl0bGU7CiAgICAgICAgbGV0IGRlZmF1bHRXaWR0aCA9IGltYWdlcy5kZWZhdWx0V2lkdGg7CgogICAgICAgIGxldCBpbWFnZXNMaXN0ID0gaW1hZ2VzLnN0YWNrX25hdl9saXN0Lm1hcCgoaSkgPT4gewogICAgICAgICAgICBsZXQgdGl0bGUgPSBpWyd0aXRsZScgKyBjdXJyZW50X2xhbmd1YWdlXSA/IGlbJ3RpdGxlJyArIGN1cnJlbnRfbGFuZ3VhZ2VdIDogaS50aXRsZTsKICAgICAgICAgICAgbGV0IGxvY2FsZV91cmwgPSBpWyd1cmwnK2N1cnJlbnRfbGFuZ3VhZ2VdID8gaVsndXJsJytjdXJyZW50X2xhbmd1YWdlXSA6IGAke2kudXJsPT0iL2hvbWUiID8gIiI6IGAvJHtjdXJyZW50X2xhbmd1YWdlfSR7aS51cmwucmVwbGFjZSgvXy9nLCAiLSIpfWB9YDsKICAgICAgICAgICAgbGV0IGl0ZW1MaW5rID0gd2luZG93LmxvY2F0aW9uLmhyZWYuaW5jbHVkZXMoZGF0YS5zaXRlSWQpID8gYC9zaXRlLyR7ZGF0YS5zaXRlSWR9JHtsb2NhbGVfdXJsfT9wcmV2aWV3PXRydWUmaW5zaXRlcHJldmlldz10cnVlJnNob3dPcmlnaW5hbD10cnVlJmRtX2NoZWNrU3luYz0xJmRtX3RyeV9tb2RlPXRydWUmaW5QcmV2PXRydWUmZG1fZGV2aWNlPSR7ZGV2aWNlfWAgOiBgJHtsb2NhbGVfdXJsfWA7CiAgICAgICAgICAgIGxldCBsaW5rID0gYGhyZWY9IiR7aXRlbUxpbmsgfHwgaXRlbUxpbmsgPT0gIiIgPyBpdGVtTGluayA6IGkudXJsfSJgOwogICAgICAgICAgICBpZiAobG9jYWxlX3VybC5pbmNsdWRlcygiaHR0cCIpIHx8IGlbJ3VybCcrY3VycmVudF9sYW5ndWFnZV0gPT0gIiIpIHsKICAgICAgICAgICAgICBsaW5rID0gYGhyZWY9IiR7aVsndXJsJytjdXJyZW50X2xhbmd1YWdlXSA/IGlbJ3VybCcrY3VycmVudF9sYW5ndWFnZV0gOiBpLnVybH0iYDsKICAgICAgICAgICAgfSAKICAgICAgICAgICAgbGV0IGltZ19zcmMgPSBgJHtpWydpbWdfc3JjJyArIGN1cnJlbnRfbGFuZ3VhZ2VdID8gaVsnaW1nX3NyYycgKyBjdXJyZW50X2xhbmd1YWdlXSA6IGkuaW1nX3NyY30iYDsKICAgICAgICAgICAgbGV0IHNob3J0X2Rlc2MgPSBpWydzaG9ydF9kZXNjJyArIGN1cnJlbnRfbGFuZ3VhZ2VdID8gaVsnc2hvcnRfZGVzYycgKyBjdXJyZW50X2xhbmd1YWdlXSA6IGkuc2hvcnRfZGVzYzsKICAgICAgICAgICAgbGV0IGltYWdlTmF2TGlzdFN0cnVjdHVyZSA9IGAKICAgICAgICAgICAgICAgIDxhICR7bGluayAhPT0gJ2hyZWY9IiInID8gbGluayA6ICcnfSBjbGFzcz0ibWVnYW5hdi1jb250YWluZXJfX3N0YWNrLXN1Yi1uYXYtd3JhcHBlciBob3Jpem9udGFsICR7aS50b3BJbWFnZSA/ICJtZWdhbmF2LWNvbnRhaW5lcl9fc3RhY2stc3ViLW5hdi13cmFwcGVyLXRvcGltYWdlIjoiIn0iIHRhcmdldD0iJHtpLm5ld1RhYiA/ICdfYmxhbmsnIDogJyd9Ij4KICAgICAgICAgICAgICAgICAgICAkeyFpLmhpZGVJY29uID8gYDxkaXYgY2xhc3M9Im1lZ2FuYXYtY29udGFpbmVyX19zdGFjay1zdWItbmF2LWltYWdlIj4ke2ltZ19zcmMgPyBgPGltZyBzcmM9IiR7aW1nX3NyY30iIGFsdD0iJHt0aXRsZX0iPmAgOiAnJ308L2Rpdj5gIDogIiJ9CiAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz0ibWVnYW5hdi1jb250YWluZXJfX3NlcnZpY2VzLWNvbnRlbnQgbWVnYW5hdi1jb250YWluZXJfX3N0YWNrLXN1Yi1uYXYtY29udGVudCI+CiAgICAgICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9Im1lZ2FuYXYtY29udGFpbmVyX19zdGFjay1zdWItbmF2LWxpbmstdGl0bGUiPiR7dGl0bGUgPyB0aXRsZSA6ICcnfTwvZGl2PgogICAgICAgICAgICAgICAgICAgICAgICAke3Nob3J0X2Rlc2MgPyBgPGRpdiBjbGFzcz0ibWVnYW5hdi1jb250YWluZXJfX3N0YWNrLXN1Yi1uYXYtZGVzY3JpcHRpb24iPiR7c2hvcnRfZGVzY308L2Rpdj5gIDogJyd9CiAgICAgICAgICAgICAgICAgICAgPC9kaXY+CiAgICAgICAgICAgICAgICA8L2E+YDsKICAgICAgICAgICAgcmV0dXJuIGltYWdlTmF2TGlzdFN0cnVjdHVyZTsKICAgICAgICB9KS5qb2luKCcnKTsKICAgICAgICBsZXQgaW1hZ2VOYXZTdHJ1Y3R1cmUgPSBgCiAgICAgICAgPGRpdiBjbGFzcz0ibWVnYW5hdi1jb250YWluZXJfX3N0YWNrLXN1Yi1uYXYtY29udGFpbmVyIG1lZ2FuYXZfY29udGFpbmVyX19jb21wb25lbnQtc3BhY2luZyIgc3R5bGU9IndpZHRoOiR7YCR7ZGVmYXVsdFdpZHRofXB4YH0iPgogICAgICAgICAgICA8ZGl2IGNsYXNzPSJtZWdhbmF2LWNvbnRhaW5lcl9fc3RhY2stc3ViLW5hdi10aXRsZSAke3RpdGxlX2xhbmcgPyAiIiA6ICJub1RpdGxlIn0iPiR7dGl0bGVfbGFuZyA/IHRpdGxlX2xhbmc6ICdUaXRsZSd9PC9kaXY+CiAgICAgICAgICAgICR7aW1hZ2VzTGlzdH0KICAgICAgICA8L2Rpdj5gOwogICAgICAgIHJldHVybiBpbWFnZU5hdlN0cnVjdHVyZTsKICAgIH07CiAgICB0aGlzLm11bHRpX3N1Yl9uYXYgPSBmdW5jdGlvbiAoc3ViTmF2KSB7CiAgICAgICAgbGV0IHRpdGxlX2xhbmcgPSBzdWJOYXZbJ3RpdGxlJyArIGN1cnJlbnRfbGFuZ3VhZ2VdID8gc3ViTmF2Wyd0aXRsZScgKyBjdXJyZW50X2xhbmd1YWdlXSA6IHN1Yk5hdi50aXRsZTsKICAgICAgICBsZXQgc3VibmF2TGlzdCA9IHN1Yk5hdi5uYXZfbGlzdC5tYXAoKGkpID0+IHsKICAgICAgICAgICAgbGV0IHRpdGxlID0gaVsndGl0bGUnICsgY3VycmVudF9sYW5ndWFnZV0gPyBpWyd0aXRsZScgKyBjdXJyZW50X2xhbmd1YWdlXSA6IGkudGl0bGU7CiAgICAgICAgICAgIGxldCBsb2NhbGVfdXJsID0gaVsndXJsJytjdXJyZW50X2xhbmd1YWdlXSA/IGlbJ3VybCcrY3VycmVudF9sYW5ndWFnZV0gOiBgJHtpLnVybD09Ii9ob21lIiA/ICIiOiBgLyR7Y3VycmVudF9sYW5ndWFnZX0ke2kudXJsLnJlcGxhY2UoL18vZywgIi0iKX1gfWA7CiAgICAgICAgICAgIGxldCBpdGVtTGluayA9IHdpbmRvdy5sb2NhdGlvbi5ocmVmLmluY2x1ZGVzKGRhdGEuc2l0ZUlkKSA/IGAvc2l0ZS8ke2RhdGEuc2l0ZUlkfSR7bG9jYWxlX3VybH0/cHJldmlldz10cnVlJmluc2l0ZXByZXZpZXc9dHJ1ZSZzaG93T3JpZ2luYWw9dHJ1ZSZkbV9jaGVja1N5bmM9MSZkbV90cnlfbW9kZT10cnVlJmluUHJldj10cnVlJmRtX2RldmljZT0ke2RldmljZX1gIDogYCR7bG9jYWxlX3VybH1gOwogICAgICAgICAgICBsZXQgbGluayA9IGBocmVmPSIke2l0ZW1MaW5rIHx8IGl0ZW1MaW5rID09ICIiID8gaXRlbUxpbmsgOiBpLnVybH0iYDsKICAgICAgICAgICAgaWYgKGxvY2FsZV91cmwuaW5jbHVkZXMoImh0dHAiKSB8fCBpWyd1cmwnK2N1cnJlbnRfbGFuZ3VhZ2VdID09ICIiKSB7CiAgICAgICAgICAgICAgbGluayA9IGBocmVmPSIke2lbJ3VybCcrY3VycmVudF9sYW5ndWFnZV0gPyBpWyd1cmwnK2N1cnJlbnRfbGFuZ3VhZ2VdIDogaS51cmx9ImA7CiAgICAgICAgICAgIH0gCiAgICAgICAgICAgIGxldCBpY29uID0gaVsnaWNvbicgKyBjdXJyZW50X2xhbmd1YWdlXSA/IGlbJ2ljb24nICsgY3VycmVudF9sYW5ndWFnZV0gOiBpLmljb247CiAgICAgICAgICAgIGxldCBzaG9ydF9kZXNjID0gaVsnc2hvcnRfZGVzYycgKyBjdXJyZW50X2xhbmd1YWdlXSA/IGlbJ3Nob3J0X2Rlc2MnICsgY3VycmVudF9sYW5ndWFnZV0gOiBpLnNob3J0X2Rlc2M7CiAgICAgICAgICAgIGxldCBuYXZMaXN0U3RydWN0dXJlID0gYAogICAgICAgICAgICAgICAgPGEgJHtsaW5rICE9PSAnaHJlZj0iIicgPyBsaW5rIDogJyd9IGNsYXNzPSJtZWdhbmF2LWNvbnRhaW5lcl9fbXVsdGktc3ViLW5hdi13cmFwcGVyIGhvcml6b250YWwiIHRhcmdldD0iJHtpLm5ld1RhYiA/ICdfYmxhbmsnIDogJyd9Ij4KICAgICAgICAgICAgICAgICAgICAkeyFpLmhpZGVJY29uID8gYDxkaXYgY2xhc3M9Im1lZ2FuYXYtY29udGFpbmVyX19tdWx0aS1zdWItbmF2LWljb24iPiR7aWNvbi5pbmNsdWRlcygiaHR0cCIpID8gYDxpbWcgc3JjPSIke2ljb259IiBhbHQ9IiI+YCA6IGljb259PC9kaXY+YCA6ICIifQogICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9Im1lZ2FuYXYtY29udGFpbmVyX19zZXJ2aWNlcy1jb250ZW50IG1lZ2FuYXYtY29udGFpbmVyX19tdWx0aS1zdWItbmF2LWNvbnRlbnQiPgogICAgICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPSJtZWdhbmF2LWNvbnRhaW5lcl9fbXVsdGktc3ViLW5hdi1saW5rLXRpdGxlIj4ke3RpdGxlID8gdGl0bGUgOiAnJ308L2Rpdj4KICAgICAgICAgICAgICAgICAgICAgICAgJHtzaG9ydF9kZXNjPyBgPGRpdiBjbGFzcz0ibWVnYW5hdi1jb250YWluZXJfX211bHRpLXN1Yi1uYXYtZGVzY3JpcHRpb24iPiR7c2hvcnRfZGVzY308L2Rpdj5gIDogJyd9CiAgICAgICAgICAgICAgICAgICAgPC9kaXY+CiAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz0ibWVnYW5hdi1jb250YWluZXJfX2lubmVyLXN1Yi1uYXYtY29udGVudCIgIHN0eWxlPSdkaXNwbGF5OiR7aS5pbm5lcl9uYXYgPyAiYmxvY2siOiJub25lIn0nPgogICAgICAgICAgICAgICAgICAgICAgICAke2kuaW5uZXJfbmF2ID8gY3JlYXRlSW5uZXJOYXYoaS5pbm5lcl9uYXYpIDogJyd9CiAgICAgICAgICAgICAgICAgICAgPC9kaXY+CiAgICAgICAgICAgICAgICA8L2E+YDsKICAgICAgICAgICAgcmV0dXJuIG5hdkxpc3RTdHJ1Y3R1cmU7CiAgICAgICAgfSkuam9pbignJyk7CgogICAgICAgIGZ1bmN0aW9uIGNyZWF0ZUlubmVyTmF2KGlubmVyTmF2KSB7CiAgICAgICAgICAgIHJldHVybiAnJzsKICAgICAgICAgICAgLy8gVE9ETwogICAgICAgICAgICAvLyByZXR1cm4gaW5uZXJOYXYubWFwKGkgPT4gewogICAgICAgICAgICAvLyAgICAgcmV0dXJuIGA8YSBocmVmPSIke2kubGlua30iPiR7aS50aXRsZX08L2E+YDsKICAgICAgICAgICAgLy8gfSkuam9pbignJyk7CiAgICAgICAgfQogICAgICAgIGxldCBzdWJOYXZTdHJ1Y3R1cmUgPSBgCiAgICAgICAgPGRpdiBjbGFzcz0ibWVnYW5hdi1jb250YWluZXJfX211bHRpLXN1Yi1uYXYtY29udGFpbmVyIG1lZ2FuYXZfY29udGFpbmVyX19jb21wb25lbnQtc3BhY2luZyI+CiAgICAgICAgICAgIDxkaXYgY2xhc3M9Im1lZ2FuYXYtY29udGFpbmVyX19tdWx0aS1zdWItbmF2LXRpdGxlICR7dGl0bGVfbGFuZyA/ICIiIDogIm5vVGl0bGUifSI+JHt0aXRsZV9sYW5nID8gdGl0bGVfbGFuZyA6ICdUaXRsZSd9PC9kaXY+CiAgICAgICAgICAgICR7c3VibmF2TGlzdH0KICAgICAgICA8L2Rpdj5gOwogICAgICAgIHJldHVybiBzdWJOYXZTdHJ1Y3R1cmU7CiAgICB9OwogICAgdGhpcy5leHRfbmF2ID0gZnVuY3Rpb24gKGV4dE5hdikgewogICAgICAgIGxldCB0aXRsZV9sYW5nID0gZXh0TmF2Wyd0aXRsZScgKyBjdXJyZW50X2xhbmd1YWdlXSA/IGV4dE5hdlsndGl0bGUnICsgY3VycmVudF9sYW5ndWFnZV0gOiBleHROYXYudGl0bGU7CiAgICAgICAgbGV0IGltZ19zcmMgPSBleHROYXZbJ2ltZ19zcmMnICsgY3VycmVudF9sYW5ndWFnZV0gPyBleHROYXZbJ2ltZ19zcmMnICsgY3VycmVudF9sYW5ndWFnZV0gOiBleHROYXYuaW1nX3NyYzsKICAgICAgICBsZXQgYWx0ID0gZXh0TmF2WydhbHQnICsgY3VycmVudF9sYW5ndWFnZV0gPyBleHROYXZbJ2FsdCcgKyBjdXJyZW50X2xhbmd1YWdlXSA6IGV4dE5hdi5hbHQ7CiAgICAgICAgbGV0IG9yZGVyID0gZXh0TmF2Lm9yZGVyOwogICAgICAgIGxldCBleHROYXZMaXN0ID0gZXh0TmF2LmV4dF9uYXZfbGlzdC5tYXAoKGkpID0+IHsKICAgICAgICAgICAgbGV0IHRpdGxlID0gaVsndGl0bGUnICsgY3VycmVudF9sYW5ndWFnZV0gPyBpWyd0aXRsZScgKyBjdXJyZW50X2xhbmd1YWdlXSA6IGkudGl0bGU7CiAgICAgICAgICAgIGxldCBsb2NhbGVfdXJsID0gaVsndXJsJytjdXJyZW50X2xhbmd1YWdlXSA/IGlbJ3VybCcrY3VycmVudF9sYW5ndWFnZV0gOiBgJHtpLnVybD09Ii9ob21lIiA/ICIiOiBgLyR7Y3VycmVudF9sYW5ndWFnZX0ke2kudXJsLnJlcGxhY2UoL18vZywgIi0iKX1gfWA7CiAgICAgICAgICAgIGxldCBpdGVtTGluayA9IHdpbmRvdy5sb2NhdGlvbi5ocmVmLmluY2x1ZGVzKGRhdGEuc2l0ZUlkKSA/IGAvc2l0ZS8ke2RhdGEuc2l0ZUlkfSR7bG9jYWxlX3VybH0/cHJldmlldz10cnVlJmluc2l0ZXByZXZpZXc9dHJ1ZSZzaG93T3JpZ2luYWw9dHJ1ZSZkbV9jaGVja1N5bmM9MSZkbV90cnlfbW9kZT10cnVlJmluUHJldj10cnVlJmRtX2RldmljZT0ke2RldmljZX1gIDogYCR7bG9jYWxlX3VybH1gOwogICAgICAgICAgICBsZXQgbGluayA9IGBocmVmPSIke2l0ZW1MaW5rIHx8IGl0ZW1MaW5rID09ICIiID8gaXRlbUxpbmsgOiBpLnVybH0iYDsKICAgICAgICAgICAgaWYgKGxvY2FsZV91cmwuaW5jbHVkZXMoImh0dHAiKSB8fCBpWyd1cmwnK2N1cnJlbnRfbGFuZ3VhZ2VdID09ICIiKSB7CiAgICAgICAgICAgICAgbGluayA9IGBocmVmPSIke2lbJ3VybCcrY3VycmVudF9sYW5ndWFnZV0gPyBpWyd1cmwnK2N1cnJlbnRfbGFuZ3VhZ2VdIDogaS51cmx9ImA7CiAgICAgICAgICAgIH0gCiAgICAgICAgICAgIGxldCBpY29uID0gaVsnaWNvbicgKyBjdXJyZW50X2xhbmd1YWdlXSA/IGlbJ2ljb24nICsgY3VycmVudF9sYW5ndWFnZV0gOiBpLmljb247CiAgICAgICAgICAgIGxldCBpbWdfc3JjID0gaVsnaW1nX3NyYycgKyBjdXJyZW50X2xhbmd1YWdlXSA/IGlbJ2ltZ19zcmMnICsgY3VycmVudF9sYW5ndWFnZV0gOiBpLmltZ19zcmM7CiAgICAgICAgICAgIGxldCBzaG9ydF9kZXNjID0gaVsnc2hvcnRfZGVzYycgKyBjdXJyZW50X2xhbmd1YWdlXSA/IGlbJ3Nob3J0X2Rlc2MnICsgY3VycmVudF9sYW5ndWFnZV0gOiBpLnNob3J0X2Rlc2M7CiAgICAgICAgICAgIGxldCBuYXZMaXN0U3RydWN0dXJlID0gYCAgICAgICAgICAgIAogICAgICAgICAgICA8YSAke2xpbmsgIT09ICdocmVmPSIiJyA/bGluayA6ICcnfSBjbGFzcz0ibWVnYW5hdi1jb250YWluZXJfX2V4dC1uYXYtd3JhcHBlciBob3Jpem9udGFsIiBkYXRhLWltZz0iJHtpbWdfc3JjID9pbWdfc3JjIDogZXh0TmF2LmltZ19zcmN9IiB0YXJnZXQ9IiR7aS5uZXdUYWIgPyAnX2JsYW5rJyA6ICcnfSI+CiAgICAgICAgICAgICAgICAkeyFpLmhpZGVJY29uID8gYDxkaXYgY2xhc3M9Im1lZ2FuYXYtY29udGFpbmVyX19leHQtbmF2LWljb24iPiR7aWNvbi5pbmNsdWRlcygiaHR0cCIpID8gYDxpbWcgc3JjPSIke2ljb259IiBhbHQ9IiI+YCA6IGljb259PC9kaXY+YCA6ICIifQogICAgICAgICAgICAgICAgPGRpdiBjbGFzcz0ibWVnYW5hdi1jb250YWluZXJfX3NlcnZpY2VzLWNvbnRlbnQgbWVnYW5hdi1jb250YWluZXJfX2V4dC1uYXYtY29udGVudCI+CiAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz0ibWVnYW5hdi1jb250YWluZXJfX2V4dC1uYXYtbGluay10aXRsZSI+JHt0aXRsZSA/IHRpdGxlIDoiIn08L2Rpdj4KICAgICAgICAgICAgICAgICAgICAke3Nob3J0X2Rlc2MgPyBgPGRpdiBjbGFzcz0ibWVnYW5hdi1jb250YWluZXJfX2V4dC1uYXYtZGVzY3JpcHRpb24iPiR7c2hvcnRfZGVzY308L2Rpdj5gIDogJyd9CiAgICAgICAgICAgICAgICA8L2Rpdj4KICAgICAgICAgICAgPC9hPmA7CiAgICAgICAgICAgIHJldHVybiBuYXZMaXN0U3RydWN0dXJlOwogICAgICAgIH0pLmpvaW4oJycpOwogICAgICAgIGxldCBleHROYXZTdHJ1Y3R1cmUgPSBgCiAgICAgICAgPGRpdiBjbGFzcz0ibWVnYW5hdi1jb250YWluZXJfX2V4dC1uYXYtbWFpbi1jb250YWluZXIgbWVnYW5hdl9jb250YWluZXJfX2NvbXBvbmVudC1zcGFjaW5nICR7b3JkZXJ9Ij4KICAgICAgICAgICAgPGRpdiBjbGFzcz0ibWVnYW5hdi1jb250YWluZXJfX2V4dC1uYXYtaW1hZ2UgbWVnYW5hdl9jb250YWluZXJfX2V4dC1uYXYtaW5uZXItc3BhY2luZyI+CiAgICAgICAgICAgICAgICA8aW1nIHNyYz0iJHtpbWdfc3JjfSIgYWx0PSIke2FsdH0iPgogICAgICAgICAgICA8L2Rpdj4KICAgICAgICAgICAgPGRpdiBjbGFzcz0ibWVnYW5hdi1jb250YWluZXJfX2V4dC1uYXYtY29udGFpbmVyIG1lZ2FuYXZfY29udGFpbmVyX19leHQtbmF2LWlubmVyLXNwYWNpbmciPgogICAgICAgICAgICAgICAgPGRpdiBjbGFzcz0ibWVnYW5hdi1jb250YWluZXJfX2V4dC1uYXYtdGl0bGUiPiR7dGl0bGVfbGFuZyA/IHRpdGxlX2xhbmcgOiIifTwvZGl2PgogICAgICAgICAgICAgICAgJHtleHROYXZMaXN0fQogICAgICAgICAgICA8L2Rpdj4KICAgICAgICA8L2Rpdj5gOwogICAgICAgIHJldHVybiBleHROYXZTdHJ1Y3R1cmU7CiAgICB9OwogICAgdGhpcy5zb2NpYWxfbWVkaWEgPSBmdW5jdGlvbiAoc29jaWFsKSB7CiAgICAgICAgbGV0IHRpdGxlX2xhbmcgPSBzb2NpYWxbJ3RpdGxlJyArIGN1cnJlbnRfbGFuZ3VhZ2VdID8gc29jaWFsWyd0aXRsZScgKyBjdXJyZW50X2xhbmd1YWdlXSA6IHNvY2lhbC50aXRsZTsKICAgICAgICBsZXQgb3JpZW50YXRpb24gPSBzb2NpYWxbJ29yaWVudGF0aW9uJyArIGN1cnJlbnRfbGFuZ3VhZ2VdID8gc29jaWFsWydvcmllbnRhdGlvbicgKyBjdXJyZW50X2xhbmd1YWdlXSA6IHNvY2lhbC5vcmllbnRhdGlvbjsKICAgICAgICBsZXQgc29jaWFsTGlzdCA9IHNvY2lhbC5zb2NpYWxfbGlzdHMubWFwKChpKSA9PiB7CiAgICAgICAgICAgIGxldCBsb2NhbGVfdXJsID0gaVsndXJsJytjdXJyZW50X2xhbmd1YWdlXSA/IGlbJ3VybCcrY3VycmVudF9sYW5ndWFnZV0gOiBgJHtpLnVybD09Ii9ob21lIiA/ICIiOiBgLyR7Y3VycmVudF9sYW5ndWFnZX0ke2kudXJsLnJlcGxhY2UoL18vZywgIi0iKX1gfWA7CiAgICAgICAgICAgIGxldCBpdGVtTGluayA9IHdpbmRvdy5sb2NhdGlvbi5ocmVmLmluY2x1ZGVzKGRhdGEuc2l0ZUlkKSA/IGAvc2l0ZS8ke2RhdGEuc2l0ZUlkfSR7bG9jYWxlX3VybH0/cHJldmlldz10cnVlJmluc2l0ZXByZXZpZXc9dHJ1ZSZzaG93T3JpZ2luYWw9dHJ1ZSZkbV9jaGVja1N5bmM9MSZkbV90cnlfbW9kZT10cnVlJmluUHJldj10cnVlJmRtX2RldmljZT0ke2RldmljZX1gIDogYCR7bG9jYWxlX3VybH1gOwogICAgICAgICAgICBsZXQgbGluayA9IGBocmVmPSIke2l0ZW1MaW5rfHwgaXRlbUxpbmsgPT0gIiIgPyBpdGVtTGluayA6IGkudXJsfSJgOwogICAgICAgICAgICBpZiAobG9jYWxlX3VybC5pbmNsdWRlcygiaHR0cCIpIHx8IGlbJ3VybCcrY3VycmVudF9sYW5ndWFnZV0gPT0gIiIpIHsKICAgICAgICAgICAgICBsaW5rID0gYGhyZWY9IiR7aVsndXJsJytjdXJyZW50X2xhbmd1YWdlXSA/IGlbJ3VybCcrY3VycmVudF9sYW5ndWFnZV0gOiBpLnVybH0iYDsKICAgICAgICAgICAgfSAKICAgICAgICAgICAgbGV0IHNvY2lhbF90eXBlID0gYCR7aVsnc29jaWFsX3R5cGUnICsgY3VycmVudF9sYW5ndWFnZV0gPyBpWydzb2NpYWxfdHlwZScgKyBjdXJyZW50X2xhbmd1YWdlXSA6IGkuc29jaWFsX3R5cGV9YDsKICAgICAgICAgICAgbGV0IHNvY2lhbExpc3RTdHJ1Y3R1cmUgPSBgCiAgICAgICAgICAgICAgICAgICAgPGEgJHtsaW5rIT09ICIiID8gbGluazoiIn0gY2xhc3M9Im1lZ2FuYXYtY29udGFpbmVyX19jb250YWN0LXNvY2lhbC1saXN0IiB0YXJnZXQ9IiR7aS5uZXdUYWIgPyAnX2JsYW5rJyA6ICcnfSI+CiAgICAgICAgICAgICAgICAgICAgICAgICR7c29jaWFsSWNvbihzb2NpYWxfdHlwZSl9CiAgICAgICAgICAgICAgICAgICAgPC9hPmA7CiAgICAgICAgICAgIHJldHVybiBzb2NpYWxMaXN0U3RydWN0dXJlOwogICAgICAgIH0pLmpvaW4oJycpOwogICAgICAgIGxldCBzb2NpYWxTdHJ1Y3R1cmUgPSBgCiAgICAgICAgICAgIDxkaXYgY2xhc3M9Im1lZ2FuYXYtY29udGFpbmVyX19jb250YWN0LXNvY2lhbC1tZWRpYSBtZWdhbmF2X2NvbnRhaW5lcl9fY29tcG9uZW50LXNwYWNpbmcgJHtvcmllbnRhdGlvbiA9PSAiSG9yaXpvbnRhbCIgP29yaWVudGF0aW9uIDogIlZlcnRpY2FsIn0iPgogICAgICAgICAgICAgICAgPGRpdiBjbGFzcz0ibWVnYW5hdi1jb250YWluZXJfX2NvbnRhY3Qtc29jaWFsLXRpdGxlIj4KICAgICAgICAgICAgICAgICAgICAke3RpdGxlX2xhbmcgPyB0aXRsZV9sYW5nIDogJyd9CiAgICAgICAgICAgICAgICA8L2Rpdj4KICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9Im1lZ2FuYXYtY29udGFpbmVyX19jb250YWN0LXNvY2lhbC1saXN0Ij4KICAgICAgICAgICAgICAgICAgICAke3NvY2lhbExpc3R9CiAgICAgICAgICAgICAgICA8L2Rpdj4KICAgICAgICAgICAgPC9kaXY+YDsKICAgICAgICByZXR1cm4gc29jaWFsU3RydWN0dXJlOwogICAgfTsKICAgIHRoaXMuY29udGFjdF9pbmZvID0gZnVuY3Rpb24gKGNvbnRhY3RJbmZvKSB7CiAgICAgICAgbGV0IHRpdGxlX2xhbmcgPSBjb250YWN0SW5mb1sndGl0bGUnICsgY3VycmVudF9sYW5ndWFnZV0gPyBjb250YWN0SW5mb1sndGl0bGUnICsgY3VycmVudF9sYW5ndWFnZV0gOiBjb250YWN0SW5mby50aXRsZTsKICAgICAgICBsZXQgcGhvbmUgPSBjb250YWN0SW5mb1sncGhvbmUnICsgY3VycmVudF9sYW5ndWFnZV0gPyBjb250YWN0SW5mb1sncGhvbmUnICsgY3VycmVudF9sYW5ndWFnZV0gOiBjb250YWN0SW5mby5waG9uZTsKICAgICAgICBsZXQgYWRkcmVzcyA9IGNvbnRhY3RJbmZvWydhZGRyZXNzJyArIGN1cnJlbnRfbGFuZ3VhZ2VdID8gY29udGFjdEluZm9bJ2FkZHJlc3MnICsgY3VycmVudF9sYW5ndWFnZV0gOiBjb250YWN0SW5mby5hZGRyZXNzOwogICAgICAgIGxldCBlbWFpbCA9IGNvbnRhY3RJbmZvWydlbWFpbCcgKyBjdXJyZW50X2xhbmd1YWdlXSA/IGNvbnRhY3RJbmZvWydlbWFpbCcgKyBjdXJyZW50X2xhbmd1YWdlXSA6IGNvbnRhY3RJbmZvLmVtYWlsOwogICAgICAgIGxldCBjb250YWN0SW5mb1N0cnVjdHVyZSA9IGAKICAgICAgICAgICAgPGRpdiBjbGFzcz0ibWVnYW5hdi1jb250YWluZXJfX2NvbnRhY3QtaW5mby13cmFwcGVyIG1lZ2FuYXZfY29udGFpbmVyX19jb21wb25lbnQtc3BhY2luZyI+CiAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz0ibWVnYW5hdi1jb250YWluZXJfX2NvbnRhY3QtdGl0bGUiPgogICAgICAgICAgICAgICAgICAgICAgICR7dGl0bGVfbGFuZyA/IHRpdGxlX2xhbmcgOiAnJ30KICAgICAgICAgICAgICAgICAgICA8L2Rpdj4KICAgICAgICAgICAgICAgICAgICAke2FkZHJlc3MgPyBgPGEgaHJlZj0iaHR0cHM6Ly93d3cuZ29vZ2xlLmNvbS9tYXBzP3E9JHthZGRyZXNzLnNwbGl0KCcgJykuam9pbignKycpfSIgY2xhc3M9Im1lZ2FuYXYtY29udGFpbmVyX19jb250YWN0LWxvY2F0aW9uIiB0YXJnZXQ9Il9ibGFuayI+CiAgICAgICAgICAgICAgICAgICAgICAgIDxpIGNsYXNzPSJmYXMgZmEtbWFwLW1hcmtlci1hbHQiPjwvaT4KICAgICAgICAgICAgICAgICAgICAgICAgJHthZGRyZXNzfTwvYT5gIDogJyd9CiAgICAgICAgICAgICAgICAgICAgICR7cGhvbmUgPyBgPGEgaHJlZj0idGVsOiR7cGhvbmV9IiBjbGFzcz0ibWVnYW5hdi1jb250YWluZXJfX2NvbnRhY3QtcGhvbmUiPgogICAgICAgICAgICAgICAgICAgICAgICA8aSBjbGFzcz0iZmFzIGZhLXBob25lLWFsdCI+PC9pPiR7cGhvbmV9PC9hPmA6ICcnfQogICAgICAgICAgICAgICAgICAgICR7ZW1haWwgP2A8YSBocmVmPSJtYWlsdG86JHtlbWFpbH0iIGNsYXNzPSJtZWdhbmF2LWNvbnRhaW5lcl9fY29udGFjdC1lbWFpbCI+CiAgICAgICAgICAgICAgICAgICAgICAgIDxpIGNsYXNzPSJmYXIgZmEtZW52ZWxvcGUiPjwvaT4ke2VtYWlsfTwvYT5gOiAnJ30KICAgICAgICAgICAgICAgIDwvZGl2PmA7CiAgICAgICAgcmV0dXJuIGNvbnRhY3RJbmZvU3RydWN0dXJlOwogICAgfTsKICAgIHRoaXMuY3VzdG9tX2J1dHRvbiA9IGZ1bmN0aW9uIChjdXN0b21CdG4pIHsKICAgICAgICBsZXQgdGl0bGVfbGFuZyA9IGN1c3RvbUJ0blsnbGFiZWwnICsgY3VycmVudF9sYW5ndWFnZV0gPyBjdXN0b21CdG5bJ2xhYmVsJyArIGN1cnJlbnRfbGFuZ3VhZ2VdIDogY3VzdG9tQnRuLmxhYmVsOwogICAgICAgIGxldCBsb2NhbGVfdXJsID0gY3VzdG9tQnRuWyd1cmwnK2N1cnJlbnRfbGFuZ3VhZ2VdID8gY3VzdG9tQnRuWyd1cmwnK2N1cnJlbnRfbGFuZ3VhZ2VdIDogYCR7Y3VzdG9tQnRuLnVybD09Ii9ob21lIiA/ICIiOiBgLyR7Y3VycmVudF9sYW5ndWFnZX0ke2N1c3RvbUJ0bi51cmwucmVwbGFjZSgvXy9nLCAiLSIpfWB9YDsKICAgICAgICBsZXQgaXRlbUxpbmsgPSB3aW5kb3cubG9jYXRpb24uaHJlZi5pbmNsdWRlcyhkYXRhLnNpdGVJZCkgPyBgL3NpdGUvJHtkYXRhLnNpdGVJZH0ke2xvY2FsZV91cmx9P3ByZXZpZXc9dHJ1ZSZpbnNpdGVwcmV2aWV3PXRydWUmc2hvd09yaWdpbmFsPXRydWUmZG1fY2hlY2tTeW5jPTEmZG1fdHJ5X21vZGU9dHJ1ZSZpblByZXY9dHJ1ZSZkbV9kZXZpY2U9JHtkZXZpY2V9YCA6IGAke2xvY2FsZV91cmx9YDsKICAgICAgICBsZXQgbGluayA9IGBocmVmPSIke2l0ZW1MaW5rIHx8IGl0ZW1MaW5rID09ICIiPyBpdGVtTGluayA6IGN1c3RvbUJ0bi51cmx9ImA7CiAgICAgICAgaWYgKGxvY2FsZV91cmwuaW5jbHVkZXMoImh0dHAiKSB8fCBjdXN0b21CdG5bJ3VybCcrY3VycmVudF9sYW5ndWFnZV0gPT0gIiIpIHsKICAgICAgICAgIGxpbmsgPSBgaHJlZj0iJHtjdXN0b21CdG5bJ3VybCcrY3VycmVudF9sYW5ndWFnZV0gPyBjdXN0b21CdG5bJ3VybCcrY3VycmVudF9sYW5ndWFnZV0gOiBjdXN0b21CdG4udXJsfSJgOwogICAgICAgIH0gCiAgICAgICAgbGV0IGJ1dHRvblN0cnVjdHVyZSA9IGAKICAgICAgICA8YSAke2xpbmsgIT09ICdocmVmPSIiJyA/IGxpbmsgOiAiIn0gY2xhc3M9Im1lZ2FuYXYtY29udGFpbmVyX19jb250YWN0LWJ0biBtZWdhbmF2X2NvbnRhaW5lcl9fY29tcG9uZW50LXNwYWNpbmciIHRhcmdldD0iJHtjdXN0b21CdG4ubmV3VGFiID8gJ19ibGFuaycgOiAnJ30iPgogICAgICAgICAgICAke3RpdGxlX2xhbmcgPyB0aXRsZV9sYW5nIDogJyd9CiAgICAgICAgPC9hPmA7CiAgICAgICAgcmV0dXJuIGJ1dHRvblN0cnVjdHVyZTsKICAgIH07CiAgICB0aGlzLnZpZGVvID0gZnVuY3Rpb24gKHZpZGVvKSB7CiAgICAgICAgbGV0IHZpZGVvX3NyYyA9IHZpZGVvWyd2aWRfc3JjJyArIGN1cnJlbnRfbGFuZ3VhZ2VdID8gdmlkZW9bJ3ZpZF9zcmMnICsgY3VycmVudF9sYW5ndWFnZV0gOiB2aWRlby52aWRfc3JjOwogICAgICAgIGxldCBpbWdfc3JjID0gdmlkZW9bJ2ltZ19zcmMnICsgY3VycmVudF9sYW5ndWFnZV0gPyB2aWRlb1snaW1nX3NyYycgKyBjdXJyZW50X2xhbmd1YWdlXSA6IHZpZGVvLmltZ19zcmM7CiAgICAgICAgbGV0IHBvcHVwID0gdmlkZW8ucG9wdXA7CiAgICAgICAgbGV0IHZpZFNyYyA9IHZpZGVvX3NyYy5zdWJzdHIodmlkZW9fc3JjLmluZGV4T2YoInY9IikgKyAyKTsKICAgICAgICBsZXQgdmlkZW9TdHJ1Y3R1cmUgPSBgPGRpdiBjbGFzcz0ibWVnYW5hdi1jb250YWluZXJfX3ZpZGVvLWNvbnRhaW5lciBtZWdhbmF2X2NvbnRhaW5lcl9fY29tcG9uZW50LXNwYWNpbmciPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9Im1lZ2FuYXYtY29udGFpbmVyX192aWRlby13cmFwcGVyICR7cG9wdXAgPyAndmlkZW9Qb3B1cCcgOiAnJ30iIHRhcmdldD0iX2JsYW5rIj4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGltZyBzcmM9IiR7aW1nX3NyYyA/IGltZ19zcmMgOiAiIn0iIGNsYXNzPSJtZWdhbmF2LWNvbnRhaW5lcl9fdmlkZW8tdGh1bWJuYWlsIj4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGlmcmFtZSBzcmM9Imh0dHBzOi8vd3d3LnlvdXR1YmUuY29tL2VtYmVkLyR7dmlkU3JjfT9yZWw9MCZhbXA7c2hvd2luZm89MCIgZnJhbWVib3JkZXI9IjAiCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBhbGxvdz0iYXV0b3BsYXk7IGVuY3J5cHRlZC1tZWRpYSIgYWxsb3dmdWxsc2NyZWVuIGNsYXNzPSJtZWdhbmF2LWNvbnRhaW5lcl9fdmlkZW8iPjwvaWZyYW1lPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvZGl2PgogICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9kaXY+YDsKICAgICAgICByZXR1cm4gdmlkZW9TdHJ1Y3R1cmU7CiAgICB9OwogICAgdGhpcy5jbGlja190b19jYWxsID0gZnVuY3Rpb24gKGN0YykgewogICAgICAgIGxldCB0aXRsZV9sYW5nID0gY3RjWyd0aXRsZScgKyBjdXJyZW50X2xhbmd1YWdlXSA/IGN0Y1sndGl0bGUnICsgY3VycmVudF9sYW5ndWFnZV0gOiBjdGMudGl0bGU7CiAgICAgICAgbGV0IGRlc2MgPSBjdGNbJ2Rlc2NyaXB0aW9uJyArIGN1cnJlbnRfbGFuZ3VhZ2VdID8gY3RjWydkZXNjcmlwdGlvbicgKyBjdXJyZW50X2xhbmd1YWdlXSA6IGN0Yy5kZXNjcmlwdGlvbjsKICAgICAgICBsZXQgbGFiZWwgPSBjdGNbJ2J0bl9sYWJlbCcgKyBjdXJyZW50X2xhbmd1YWdlXSA/IGN0Y1snYnRuX2xhYmVsJyArIGN1cnJlbnRfbGFuZ3VhZ2VdIDogY3RjLmJ0bl9sYWJlbDsKICAgICAgICBsZXQgbG9jYWxlX3VybCA9IGN0Y1snYnRuX3VybCcrY3VycmVudF9sYW5ndWFnZV0gPyBjdGNbJ2J0bl91cmwnK2N1cnJlbnRfbGFuZ3VhZ2VdIDogYCR7Y3RjLmJ0bl91cmw9PSIvaG9tZSIgPyAiIjogYC8ke2N1cnJlbnRfbGFuZ3VhZ2V9JHtjdGMuYnRuX3VybC5yZXBsYWNlKC9fL2csICItIil9YH1gOwogICAgICAgIGxldCBpdGVtTGluayA9IHdpbmRvdy5sb2NhdGlvbi5ocmVmLmluY2x1ZGVzKGRhdGEuc2l0ZUlkKSA/IGAvc2l0ZS8ke2RhdGEuc2l0ZUlkfSR7bG9jYWxlX3VybH0/cHJldmlldz10cnVlJmluc2l0ZXByZXZpZXc9dHJ1ZSZzaG93T3JpZ2luYWw9dHJ1ZSZkbV9jaGVja1N5bmM9MSZkbV90cnlfbW9kZT10cnVlJmluUHJldj10cnVlJmRtX2RldmljZT0ke2RldmljZX1gIDogYCR7bG9jYWxlX3VybH1gOwogICAgICAgIGxldCBsaW5rID0gYGhyZWY9IiR7aXRlbUxpbmsgPyBpdGVtTGluayA6IGN0Yy5idG5fdXJsfSJgOwogICAgICAgIGlmIChsb2NhbGVfdXJsLmluY2x1ZGVzKCJodHRwIikgfHwgY3RjWyd1cmwnK2N1cnJlbnRfbGFuZ3VhZ2VdID09ICIiKSB7CiAgICAgICAgICBsaW5rID0gYGhyZWY9IiR7Y3RjWydidG5fdXJsJytjdXJyZW50X2xhbmd1YWdlXSA/IGN0Y1snYnRuX3VybCcrY3VycmVudF9sYW5ndWFnZV0gOiBjdGMuYnRuX3VybH0iYDsKICAgICAgICB9IAogICAgICAgIGxldCBjdGNTdHJ1Y3R1cmUgPSBgCiAgICAgICAgICAgIDxkaXYgY2xhc3M9Im1lZ2FuYXYtY29udGFpbmVyX19jdGMtY29udGFpbmVyIG1lZ2FuYXZfY29udGFpbmVyX19jb21wb25lbnQtc3BhY2luZyI+CiAgICAgICAgICAgICAgICAke3RpdGxlX2xhbmcgPyBgPHNwYW4gY2xhc3M9Im1lZ2FuYXYtY29udGFpbmVyX19jdGMtdGl0bGUgbWVnYW5hdi1jb250YWluZXJfX2N0Yy13cmFwcGVyIj4ke3RpdGxlX2xhbmd9PC9zcGFuPmAgOiAnJ30KICAgICAgICAgICAgICAgICR7ZGVzYyA/IGA8c3BhbiBjbGFzcz0ibWVnYW5hdi1jb250YWluZXJfX2N0Yy1kZXNjcmlwdGlvbiBtZWdhbmF2LWNvbnRhaW5lcl9fY3RjLXdyYXBwZXIiPiR7ZGVzY308L3NwYW4+YCA6ICcnfQogICAgICAgICAgICAgICAgJHtsYWJlbCA/IGA8YSAke2xpbmsgIT09ICIiID8gbGluayA6IiJ9IGNsYXNzPSJtZWdhbmF2LWNvbnRhaW5lcl9fY3RjLWJ0biBtZWdhbmF2LWNvbnRhaW5lcl9fY3RjLXdyYXBwZXIiPiR7bGFiZWx9PC9hPmAgOiAnJ30KICAgICAgICAgICAgPC9kaXY+YDsKICAgICAgICByZXR1cm4gY3RjU3RydWN0dXJlOwogICAgfTsKfQoKLy8gPyBIb3ZlciBCZWhhdmlvciAtIEZyb250IEVuZCBKUwokKCcud2lkZ2V0LWxheW91dC1yZXN1bHQnKS5vbignbW91c2VlbnRlcicsICcubWVnYW5hdi1jb250YWluZXJfX25hdmxpbmstY29udGFpbmVyJywgZnVuY3Rpb24gKCkgewoKICAkKCcubWVnYW5hdi1jb250YWluZXJfX25hdmxpbmstY29tcG9uZW50LWNvbnRhaW5lcicpLnN0b3AoKS5oaWRlKCk7CiAgbGV0IGVsZW0gPSAkKHRoaXMpLmZpbmQoIi5tZWdhbmF2LWNvbnRhaW5lcl9fbmF2bGluay1jb21wb25lbnQtY29udGFpbmVyIik7CiAgZWxlbS5mYWRlSW4oMCwgZnVuY3Rpb24gKCkgewogICAgaWYgKGVsZW0uaGFzQ2xhc3MoJ0hvcml6b250YWwnKSkgewogICAgLy8gICBlbGVtLmNzcygnZGlzcGxheScsICdmbGV4Jyk7CiAgICAgIGVsZW0uY3NzKCdkaXNwbGF5JywgJ2dyaWQnKTsKICAgIH0KICB9KTsKCiAgbGV0IHJlY3QgPSB0aGlzLmdldEJvdW5kaW5nQ2xpZW50UmVjdCgpOwogIGxldCB3aW5kb3dXaWR0aCA9ICQod2luZG93KS5vdXRlcldpZHRoKCk7CiAgbGV0IGV4Y2VzcyA9IChyZWN0LmxlZnQgKyAoZWxlbS5vdXRlcldpZHRoKCkgLyAyKSkgLSB3aW5kb3dXaWR0aDsKICBsZXQgaXNPdmVyRmxvdyA9IChyZWN0LmxlZnQgKyAoZWxlbS5vdXRlcldpZHRoKCkgLyAyKSkgPiB3aW5kb3dXaWR0aDsKICBsZXQgbGVmdCA9ICFpc092ZXJGbG93ID8gYC0keyhlbGVtLm91dGVyV2lkdGgoKSAvIDIpfXB4YCA6IGAtJHsoZWxlbS5vdXRlcldpZHRoKCkgLyAyKSArIChleGNlc3MgKiAyKX1weGA7CgoKICBlbGVtLmNzcygibWFyZ2luLWxlZnQiLCBsZWZ0KTsKICAkKHRoaXMpLmZpbmQoIi5tZWdhbmF2LWNvbnRhaW5lcl9fbmF2bGluay1jb21wb25lbnQtY29udGFpbmVyLlZlcnRpY2FsIikuY3NzKHsKICAgICJsZWZ0IjogYCR7bGVmdH1gLAogICAgIm1hcmdpbi1sZWZ0IjogIjUwJSIKICB9KTsKCiAgbGV0IGlzU2hvcnQgPSAkKHRoaXMpLmZpbmQoIi5tZWdhbmF2LWNvbnRhaW5lcl9fbmF2bGluay1jb21wb25lbnQtY29udGFpbmVyIikub2Zmc2V0KCkubGVmdCA8IDA7CiAgaWYgKGlzU2hvcnQpIHsKICAgIGxlZnQgPSAiLSIgKyByZWN0LmxlZnQgKyAicHgiOwogICAgZWxlbS5jc3MoIm1hcmdpbi1sZWZ0IiwgbGVmdCk7CiAgICAkKHRoaXMpLmZpbmQoIi5tZWdhbmF2LWNvbnRhaW5lcl9fbmF2bGluay1jb21wb25lbnQtY29udGFpbmVyLlZlcnRpY2FsIikuY3NzKHsKICAgICAgImxlZnQiOiBgJHtsZWZ0fWAsCiAgICAgICJtYXJnaW4tbGVmdCI6ICI1MCUiCiAgICB9KTsKICB9Cgp9KS5vbignbW91c2VsZWF2ZScsICcubWVnYW5hdi1jb250YWluZXJfX25hdmxpbmstY29udGFpbmVyJywgZnVuY3Rpb24gKCkgewogICQoJy5tZWdhbmF2LWNvbnRhaW5lcl9fbmF2bGluay1jb21wb25lbnQtY29udGFpbmVyJykuc3RvcCgpLmhpZGUoKTsKfSk7CgokKCcud2lkZ2V0LWxheW91dC1yZXN1bHQgLm1lZ2FuYXYtY29udGFpbmVyX19uYXZsaW5rLWNvbnRhaW5lcicpLm9uKCdtb3VzZWxlYXZlJywgZnVuY3Rpb24gKCkgewogICQodGhpcykuZmluZCgnLm1lZ2FuYXYtY29udGFpbmVyX19uYXZsaW5rLWNvbXBvbmVudC13cmFwcGVyJykuY3NzKHsgJ3BvaW50ZXItZXZlbnRzJzogJ25vbmUnIH0pOwogICQodGhpcykuZmluZCgnc3Bhbi5zdWJJY29uJykucmVtb3ZlQ2xhc3MoJ3JvdGF0ZUljb24nKTsKLy8gICAkKHRoaXMpLmZpbmQoJ3NwYW4uc3ViSWNvbicpLmh0bWwoJzxpIGNsYXNzPSJmYS1zb2xpZCBmYS1jaGV2cm9uLWRvd24iPjwvaT4nKTsKfSk7CgokKCcud2lkZ2V0LWxheW91dC1yZXN1bHQgLm1lZ2FuYXYtY29udGFpbmVyX19uYXZsaW5rLWNvbnRhaW5lcicpLm9uKCdtb3VzZWVudGVyJywgZnVuY3Rpb24gKCkgewogICQodGhpcykuZmluZCgnLm1lZ2FuYXYtY29udGFpbmVyX19uYXZsaW5rLWNvbXBvbmVudC13cmFwcGVyJykuY3NzKHsgJ3BvaW50ZXItZXZlbnRzJzogJ2F1dG8nIH0pOwogICQodGhpcykuZmluZCgnc3Bhbi5zdWJJY29uJykuYWRkQ2xhc3MoJ3JvdGF0ZUljb24nKTsKLy8gICAkKHRoaXMpLmZpbmQoJ3NwYW4uc3ViSWNvbicpLmh0bWwoJzxpIGNsYXNzPSJmYS1zb2xpZCBmYS1jaGV2cm9uLXVwIj48L2k+Jyk7Cn0pOwoKLy8gRXh0ZW5kZWQgU3ViIE5hdmlnYXRpb24gSG92ZXIKJChlbGVtZW50KS5maW5kKCIud2lkZ2V0LWxheW91dC1yZXN1bHQiKS5vbigibW91c2VlbnRlciIsICIubWVnYW5hdi1jb250YWluZXJfX2V4dC1uYXYtd3JhcHBlciIsIGZ1bmN0aW9uICgpIHsKICBsZXQgZWxlbSA9ICQodGhpcyk7CiAgbGV0IGltZ0VsZW0gPSAkKHRoaXMpLnBhcmVudCgpLnBhcmVudCgpLmZpbmQoIi5tZWdhbmF2LWNvbnRhaW5lcl9fZXh0LW5hdi1pbWFnZSBpbWciKTsKICBsZXQgc3RvcmVEZWZhdWx0SW1nID0gJCh0aGlzKS5wYXJlbnQoKS5wYXJlbnQoKS5maW5kKCIubWVnYW5hdi1jb250YWluZXJfX2V4dC1uYXYtaW1hZ2UgaW1nIikuYXR0cigic3JjIik7CiAgaW1nRWxlbS5hdHRyKCJkYXRhLWRlZmF1bHQiLCBzdG9yZURlZmF1bHRJbWcpOwogIGxldCBuZXdJbWFnZVNyYyA9IGVsZW0uYXR0cigiZGF0YS1pbWciKTsKICBpbWdFbGVtLmF0dHIoInNyYyIsIG5ld0ltYWdlU3JjICYmIG5ld0ltYWdlU3JjICE9PSAiIiA/IG5ld0ltYWdlU3JjIDogc3RvcmVEZWZhdWx0SW1nKTsKfSkub24oIm1vdXNlbGVhdmUiLCAiLm1lZ2FuYXYtY29udGFpbmVyX19leHQtbmF2LXdyYXBwZXIiLCBmdW5jdGlvbiAoKSB7CiAgbGV0IGltZ0VsZW0gPSAkKHRoaXMpLnBhcmVudCgpLnBhcmVudCgpLmZpbmQoIi5tZWdhbmF2LWNvbnRhaW5lcl9fZXh0LW5hdi1pbWFnZSBpbWciKTsKICBsZXQgZGVmYXVsdEltZyA9ICQodGhpcykucGFyZW50KCkucGFyZW50KCkuZmluZCgiLm1lZ2FuYXYtY29udGFpbmVyX19leHQtbmF2LWltYWdlIGltZyIpLmF0dHIoImRhdGEtZGVmYXVsdCIpOwogIGltZ0VsZW0uYXR0cigic3JjIiwgZGVmYXVsdEltZyk7Cn0pOwoKLy8gPyBPcGVuIFZpZGVvIFBvcHVwCiQoZWxlbWVudCkuZmluZCgnLndpZGdldC1sYXlvdXQtcmVzdWx0Jykub24oJ2NsaWNrJywgJy5tZWdhbmF2LWNvbnRhaW5lcl9fdmlkZW8td3JhcHBlci52aWRlb1BvcHVwJywgZnVuY3Rpb24gKCkgewogIGxldCB2aWRlb3VybCA9ICQodGhpcykuZmluZCgiaWZyYW1lIikuYXR0cigic3JjIik7Ci8vICAgbGV0IHZpZGVvID0gdmlkZW91cmwuc3Vic3RyKHZpZGVvdXJsLmluZGV4T2YoJz92PScpICsgMykKICBsZXQgdmlkZW8gPSB2aWRlb3VybC5tYXRjaCgvKD86aHR0cHM/OlwvXC8pPyg/Ond3d1wuKT8oPzp5b3V0dWJlXC5jb21cLyg/OlteXC9cblxzXStcL1xTK1wvfCg/OnZ8ZSg/Om1iZWQpPylcL3xcUyo/Wz8mXXY9KXx5b3V0dVwuYmVcLykoW2EtekEtWjAtOV8tXXsxMX0pL2kpOwogIGxldCBwb3B1cFN0cnVjdHVyZSA9IGAKICAgIDxkaXYgY2xhc3M9Im1lZ2FuYXYtY29udGFpbmVyX192aWRlby1wb3B1cC1jb250YWluZXIiPgogICAgICAgIDxkaXYgY2xhc3M9Im1lZ2FuYXYtY29udGFpbmVyX192aWRlby1wb3B1cC13cmFwcGVyIj4KICAgICAgICAgICAgPGRpdiBjbGFzcz0ibWVnYW5hdi1jb250YWluZXJfX3ZpZGVvLXBvcHVwLWNsb3NlLWJ0biI+PGkgY2xhc3M9ImZhciBmYS10aW1lcy1jaXJjbGUiPjwvaT48L2Rpdj4KICAgICAgICAgICAgPGlmcmFtZSBzcmM9Imh0dHBzOi8vd3d3LnlvdXR1YmUuY29tL2VtYmVkLyR7dmlkZW9bMV19P3JlbD0wJmFtcDtzaG93aW5mbz0wIiBmcmFtZWJvcmRlcj0iMCIgYWxsb3c9ImF1dG9wbGF5OyBlbmNyeXB0ZWQtbWVkaWEiIGFsbG93ZnVsbHNjcmVlbiBjbGFzcz0ibWVnYW5hdi1jb250YWluZXJfX3ZpZGVvLXBvcHVwIj48L2lmcmFtZT4KICAgICAgICA8L2Rpdj4KICAgIDwvZGl2PmA7CiAgJChlbGVtZW50KS5maW5kKCcud2lkZ2V0LWxheW91dC1yZXN1bHQnKS5hcHBlbmQocG9wdXBTdHJ1Y3R1cmUpOwogICQoJ2h0bWwnKS5jc3MoeyAnb3ZlcmZsb3cnOiAnaGlkZGVuJyB9KTsKfSk7CgovLyA/IENsb3NlIFZpZGVvIFBvcHVwCiQoZWxlbWVudCkuZmluZCgnLndpZGdldC1sYXlvdXQtcmVzdWx0Jykub24oJ2NsaWNrJywgJy5tZWdhbmF2LWNvbnRhaW5lcl9fdmlkZW8tcG9wdXAtY2xvc2UtYnRuJywgZnVuY3Rpb24gKCkgewogICQoZWxlbWVudCkuZmluZCgnLm1lZ2FuYXYtY29udGFpbmVyX192aWRlby1wb3B1cC1jb250YWluZXInKS5yZW1vdmUoKTsKICAkKCdodG1sJykuY3NzKHsgJ292ZXJmbG93JzogJ2F1dG8nIH0pOwp9KTsKCmZ1bmN0aW9uIHNvY2lhbEljb24oc29jaWFsVHlwZSkgewogIGlmIChzb2NpYWxUeXBlID09PSAnSW5zdGFncmFtJykgewogICAgcmV0dXJuICc8aSBjbGFzcz0iZmFiIGZhLWluc3RhZ3JhbSI+PC9pPic7CiAgfQogIGlmIChzb2NpYWxUeXBlID09PSAnRmFjZWJvb2snKSB7CiAgICByZXR1cm4gJzxpIGNsYXNzPSJmYWIgZmEtZmFjZWJvb2stc3F1YXJlIj48L2k+JzsKICB9CiAgaWYgKHNvY2lhbFR5cGUgPT09ICdUd2l0dGVyJykgewogICAgcmV0dXJuICc8aSBjbGFzcz0iZmFiIGZhLXR3aXR0ZXItc3F1YXJlIj48L2k+JzsKICB9CiAgaWYgKHNvY2lhbFR5cGUgPT09ICdZb3V0dWJlJykgewogICAgcmV0dXJuICc8aSBjbGFzcz0iZmFiIGZhLXlvdXR1YmUiPjwvaT4nOwogIH0KICBpZiAoc29jaWFsVHlwZSA9PT0gJ1BpbnRlcmVzdCcpIHsKICAgIHJldHVybiAnPGkgY2xhc3M9ImZhYiBmYS1waW50ZXJlc3QiPjwvaT4nOwogIH0KICBpZiAoc29jaWFsVHlwZSA9PT0gJ1ZpbWVvJykgewogICAgcmV0dXJuICc8aSBjbGFzcz0iZmFiIGZhLXZpbWVvLXYiPjwvaT4nOwogIH0KICBpZiAoc29jaWFsVHlwZSA9PT0gJ0xpbmtlZGluJykgewogICAgcmV0dXJuICc8aSBjbGFzcz0iZmFiIGZhLWxpbmtlZGluLWluIj48L2k+JzsKICB9CiAgaWYgKHNvY2lhbFR5cGUgPT09ICdSZWRkaXQnKSB7CiAgICByZXR1cm4gJzxpIGNsYXNzPSJmYWIgZmEtcmVkZGl0LXNxdWFyZSI+PC9pPic7CiAgfQogIGlmIChzb2NpYWxUeXBlID09PSAnU25hcGNoYXQnKSB7CiAgICByZXR1cm4gJzxpIGNsYXNzPSJmYWIgZmEtc25hcGNoYXQtZ2hvc3QiPjwvaT4nOwogIH0KICBpZiAoc29jaWFsVHlwZSA9PT0gJ1RyaXBhZHZpc29yJykgewogICAgcmV0dXJuICc8aSBjbGFzcz0iZmFiIGZhLXRyaXBhZHZpc29yIj48L2k+JzsKICB9Cn0KCmZ1bmN0aW9uIGlzQWN0aXZlKHVybCkgeyAvLyAgICAgL3RyL3Jldmlld3MKICAgIGlmKHVybCA9PSAiIikgcmV0dXJuIGZhbHNlOwogICAgCiAgICBjb25zb2xlLmxvZyh1cmwpOwogICAgbGV0IHVybEFycmF5ID0gdXJsLnNwbGl0KCcvJyk7CiAgICBsZXQgc2l0ZVBhdGhOYW1lID0gd2luZG93LmxvY2F0aW9uLnBhdGhuYW1lLnJlcGxhY2UoYC9zaXRlLyR7ZGF0YS5zaXRlSWR9YCwgJycpLnNwbGl0KCcvJyk7IC8vIC9ob21lIC0tLT4gWyIvaG9tZSJdCiAgICAvLyBsZXQgcGF0aCA9IHNpdGVQYXRoTmFtZVsxXSA/IHNpdGVQYXRoTmFtZVsxXSA6ICJob21lIjsgLy8gaG9tZSAvbmwKICAgIC8vIGxldCB1cmxfbGluayA9IHVybC5zcGxpdCgnLycpWzFdID8gdXJsLnNwbGl0KCcvJylbMV0gOiAiaG9tZSI7IC8vIGhvbWUKICAgIAogICAgbGV0IHBhdGggPSBzaXRlUGF0aE5hbWVbc2l0ZVBhdGhOYW1lLmxlbmd0aCAtIDFdICE9PSAiIiA/IHNpdGVQYXRoTmFtZVtzaXRlUGF0aE5hbWUubGVuZ3RoIC0gMV0gOiAiaG9tZSI7IC8vIGhvbWUgL25sCiAgICBsZXQgdXJsX2xpbmsgPSB1cmxBcnJheVt1cmxBcnJheS5sZW5ndGggLSAxXSAhPT0gIiIgPyB1cmxBcnJheVt1cmxBcnJheS5sZW5ndGggLSAxXSA6ICJob21lIjsgLy8gaG9tZQogICAgCiAgICBpZighaXNfbWFpbl9sYW5nICYmIGlzTXVsdGlMYW5nICYmICFpc19ob21lKXsKICAgICAgICBwYXRoID0gc2l0ZVBhdGhOYW1lWzJdID8gc2l0ZVBhdGhOYW1lWzJdIDogY3VycmVudF9sYW5ndWFnZTsgLy8gdHIKICAgICAgICB1cmxfbGluayA9IHVybC5zcGxpdCgnLycpWzJdID8gdXJsLnNwbGl0KCcvJylbMl0gOiBjdXJyZW50X2xhbmd1YWdlOyAvLyB0cgogICAgCiAgICAgICAgcGF0aCA9IHNpdGVQYXRoTmFtZVtzaXRlUGF0aE5hbWUubGVuZ3RoIC0gMV0gPyBzaXRlUGF0aE5hbWVbc2l0ZVBhdGhOYW1lLmxlbmd0aCAtIDFdIDogY3VycmVudF9sYW5ndWFnZTsgLy8gaG9tZSAvbmwKICAgICAgICB1cmxfbGluayA9IHVybEFycmF5W3VybEFycmF5Lmxlbmd0aCAtIDFdID8gdXJsQXJyYXlbdXJsQXJyYXkubGVuZ3RoIC0gMV0gOiBjdXJyZW50X2xhbmd1YWdlOyAvLyBob21lCiAgICB9CgogICAgaWYoIWlzX21haW5fbGFuZyAmJiBzaXRlUGF0aE5hbWUubGVuZ3RoICE9PSAyICYmIHVybCA9PT0gIi8iK2N1cnJlbnRfbGFuZ3VhZ2UpIHJldHVybiBmYWxzZTsKICAgIAogICAgcmV0dXJuIHBhdGggPT0gdXJsX2xpbmsgLy8gL3RyL2Fib3V0LXVzLCAvdHIvc2VydmljZXMsIC90ci9zZXJ2aWNlcy9pbnZlc3RtZW50cwp9CgpmdW5jdGlvbiBkaXZpZGVyU3R5bGUoc3R5bGUpIHsKICBpZiAoc3R5bGUgPT0gInNsYXNoIikgewogICAgcmV0dXJuIGA8bGkgY2xhc3M9Im1lZ2FuYXZfX2RpdmlkZXIiPi88L2xpPmA7CiAgfQogIGlmIChzdHlsZSA9PSAicGlwZSIpIHsKICAgIHJldHVybiBgPGxpIGNsYXNzPSJtZWdhbmF2X19kaXZpZGVyIj58PC9saT5gOwogIH0KICBpZiAoc3R5bGUgPT0gImNvbG9uIikgewogICAgcmV0dXJuIGA8bGkgY2xhc3M9Im1lZ2FuYXZfX2RpdmlkZXIiPjo8L2xpPmA7CiAgfQogIGlmIChzdHlsZSA9PSAibWlkZG90IikgewogICAgcmV0dXJuIGA8bGkgY2xhc3M9Im1lZ2FuYXZfX2RpdmlkZXIiPsK3PC9saT5gOwogIH0KICBpZiAoc3R5bGUgPT0gInNwYWNlIikgewogICAgcmV0dXJuIGA8bGkgY2xhc3M9Im1lZ2FuYXZfX2RpdmlkZXIiPiA8L2xpPmA7CiAgfQp9CgpmdW5jdGlvbiBkb0FqYXgoc2V0dGluZ3MpIHsKICByZXR1cm4gbmV3IFByb21pc2UoKHJlcywgcmVqKSA9PiAkLmFqYXgoc2V0dGluZ3MpLmRvbmUoYSA9PiByZXMoYSkpKQp9Cgpjb25zdCBjc3NJZCA9ICdmb250QXdlc29tZVNvdXJjZSc7CmlmICghZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoY3NzSWQpKSB7CiAgdmFyIGhlYWQgPSBkb2N1bWVudC5nZXRFbGVtZW50c0J5VGFnTmFtZSgnaGVhZCcpWzBdOwogIHZhciBsaW5rID0gZG9jdW1lbnQuY3JlYXRlRWxlbWVudCgnbGluaycpOwogIGxpbmsuaWQgPSAnZm9udEF3ZXNvbWVTb3VyY2UnOwogIGxpbmsucmVsID0gJ3N0eWxlc2hlZXQnOwogIGxpbmsudHlwZSA9ICd0ZXh0L2Nzcyc7CiAgbGluay5ocmVmID0gJ2h0dHBzOi8vY2RuanMuY2xvdWRmbGFyZS5jb20vYWpheC9saWJzL2ZvbnQtYXdlc29tZS82LjUuMS9jc3MvYWxsLm1pbi5jc3MnOwovLyAgIGxpbmsuaHJlZiA9ICdodHRwczovL2NkbmpzLmNsb3VkZmxhcmUuY29tL2FqYXgvbGlicy9mb250LWF3ZXNvbWUvNS4xNC4wL2Nzcy9hbGwubWluLmNzcyc7Ci8vICAgbGluay5pbnRlZ3JpdHkgPSAnc2hhNTEyLTFQS09nSVk1OXhKOENvOCtORTZGWitMT0FaS2p5K0tZOGlxMEc0QjNDeWVZNndZSE4zeXQ5UFcwWHBTcmlWbGtNWGU0MFBUS25YckxuWjkrZmtEYW9nPT0nOwovLyAgIGxpbmsuY3Jvc3NPcmlnaW4gPSAnYW5vbnltb3VzJzsKICBoZWFkLmFwcGVuZENoaWxkKGxpbmspOwp9Cg==","css":".nomarkup{\r\n text-align:center;\r\n}\r\n\r\ndiv.hiddenDiv{\r\n display:none !important;\r\n}\r\n\r\n@media (min-width: 1293px) and (max-width: 5692px) {\r\n \r\n .meganav-container__navlink-component-container {\r\n\t\tgrid-template-columns: repeat(4, 1fr);\r\n\t\tgap: 10px;\r\n }\r\n \r\n}\r\n\r\n@media (min-width: 1138px) and (max-width: 1292px) {\r\n \r\n .meganav-container__navlink-component-container {\r\n\t\tgrid-template-columns: repeat(3, 1fr);\r\n\t\tgap: 10px;\r\n }\r\n \r\n}\n.inEditorEditLayout { \r\n position: relative; \r\n display: none; \r\n text-align: center; \r\n margin-right: 0; \r\n margin-left: auto; \r\n margin-bottom: 10px; \r\n cursor: pointer; \r\n padding: 5px; \r\n font-size:12px;\r\n background-color: #333; \r\n width: auto; \r\n max-width: 130px; \r\n color: #fff;\r\n top:0;\r\n right:0;\r\n z-index:10;\r\n}\r\n\r\n/*Mega Menu Nav CSS Styles*/\r\n.widget-layout-result{\r\n display:flex; \r\n position:relative;\r\n box-sizing:border-box;\r\n width:100%;\r\n min-height:20px;\r\n}\r\n\r\n\r\n\r\nspan.subIcon i {\r\n transition: 0.4s ease-in-out !important;\r\n}\r\nspan.rotateIcon i {\r\n transform: rotate(-180deg) !important;\r\n}\r\n\r\ni.fa-solid.fa-chevron-down, i.fa-solid.fa-chevron-up {\r\n font-size: 16px;\r\n margin-left: 3px;\r\n}\r\n.widget-layout-result div,.widget-layout-result span,.widget-layout-result label{\r\n text-align:left;\r\n}\r\n\r\n.widget-layout-result.left{\r\n justify-content:flex-start;\r\n}\r\n\r\n.widget-layout-result.center{\r\n justify-content:center;\r\n}\r\n\r\n.widget-layout-result.right{\r\n justify-content:flex-end;\r\n}\r\n\r\n.meganav-container {\r\n display: flex;\r\n justify-content:flex-start;\r\n align-items:center;\r\n flex-wrap: wrap;\r\n position: relative;\r\n box-sizing: border-box;\r\n list-style-type: none;\r\n font-family: Arial, Helvetica, sans-serif;\r\n margin:0 !important;\r\n}\r\n\r\n.meganav-container__navlink-container {\r\n display: block;\r\n position: relative;\r\n box-sizing: border-box;\r\n float: left;\r\n margin:0 5px;\r\n padding:5px;\r\n border-radius:4px;\r\n}\r\n\r\n.meganav-container__navlink {\r\n display: block;\r\n position: relative;\r\n box-sizing: border-box;\r\n text-decoration: none;\r\n color: #323232;\r\n width: 100%;\r\n line-height: normal;\r\n padding:6px;\r\n border-radius:4px;\r\n transition: all .2s ease;\r\n}\r\n\r\n.meganav-container__navlink.text.activeNav{\r\n color: rgb(61, 131, 250);\r\n}\r\n\r\n.meganav-container__navlink.text:hover{\r\n color: rgb(61, 131, 250);\r\n}\r\n\r\n.meganav-container__navlink.box.activeNav{\r\n color: #fff;\r\n background-color:rgb(61, 131, 250);\r\n}\r\n\r\n.meganav-container__navlink.box:hover{\r\n color: #fff;\r\n background-color:rgb(61, 131, 250);\r\n}\r\n\r\n.meganav-container__navlink.bottomLine.activeNav{\r\n color:rgb(61, 131, 250);\r\n}\r\n\r\n.meganav-container__navlink.bottomLine:before{\r\n background: none repeat scroll 0 0 transparent;\r\n bottom: 0;\r\n content: \"\";\r\n display: block;\r\n height: 2px;\r\n left: 0; \r\n position: absolute;\r\n background: rgb(61, 131, 250);\r\n transition: opacity 0.3s ease 0s;\r\n opacity:0;\r\n width: 100%; \r\n}\r\n\r\n.meganav-container__navlink.bottomLine.activeNav:before{\r\n background: none repeat scroll 0 0 transparent;\r\n bottom: 0;\r\n content: \"\";\r\n display: block;\r\n height: 2px;\r\n left: 0; \r\n position: absolute;\r\n background: rgb(61, 131, 250);\r\n transition: opacity 0.3s ease 0s;\r\n opacity:1;\r\n width: 100%; \r\n}\r\n\r\n.meganav-container__navlink.bottomLine:hover{\r\n color: rgb(61, 131, 250);\r\n}\r\n\r\n.meganav-container__navlink.bottomLine:hover:before{\r\n opacity:1;\r\n}\r\n\r\n.meganav-container__navlink.topBottomLine.activeNav{\r\n color:rgb(61, 131, 250);\r\n}\r\n\r\n.meganav-container__navlink.topBottomLine:after{\r\n background: none repeat scroll 0 0 transparent;\r\n top: 0;\r\n content: \"\";\r\n display: block;\r\n height: 2px;\r\n left: 0; \r\n position: absolute;\r\n background: rgb(61, 131, 250);\r\n transition: opacity 0.3s ease 0s;\r\n opacity:0;\r\n width: 100%; \r\n}\r\n\r\n.meganav-container__navlink.topBottomLine:before{\r\n background: none repeat scroll 0 0 transparent;\r\n bottom: 0;\r\n content: \"\";\r\n display: block;\r\n height: 2px;\r\n left: 0; \r\n position: absolute;\r\n background: rgb(61, 131, 250);\r\n transition: opacity 0.3s ease 0s;\r\n opacity:0;\r\n width: 100%; \r\n}\r\n\r\n.meganav-container__navlink.topBottomLine.activeNav:after{\r\n background: none repeat scroll 0 0 transparent;\r\n top: 0;\r\n content: \"\";\r\n display: block;\r\n height: 2px;\r\n left: 0; \r\n position: absolute;\r\n background: rgb(61, 131, 250);\r\n transition: opacity 0.3s ease 0s;\r\n opacity:1;\r\n width: 100%; \r\n}\r\n\r\n.meganav-container__navlink.topBottomLine.activeNav:before{\r\n background: none repeat scroll 0 0 transparent;\r\n bottom: 0;\r\n content: \"\";\r\n display: block;\r\n height: 2px;\r\n left: 0; \r\n position: absolute;\r\n background: rgb(61, 131, 250);\r\n transition: opacity 0.3s ease 0s;\r\n opacity:1;\r\n width: 100%; \r\n}\r\n\r\n.meganav-container__navlink.topBottomLine:hover{\r\n color:rgb(61, 131, 250);\r\n opacity:1;\r\n}\r\n\r\n.meganav__divider:first-child{\r\n display:none !important;\r\n}\r\n\r\n.meganav__divider {\r\n display: block;\r\n position: relative;\r\n box-sizing: border-box;\r\n float: left;\r\n line-height:normal;\r\n padding:10px 0;\r\n}\r\n\r\n.meganav-container__navlink-component-container {\r\n display: none;\r\n position: absolute;\r\n box-sizing: border-box;\r\n padding: 20px;\r\n top: 15px;\r\n left: 50%;\r\n background-color: #fafafa;\r\n z-index:2000;\r\n box-shadow:7px 12px 15px -11px rgb(0 0 0 / 50%)\r\n}\r\n\r\n.meganav-container__navlink-component-wrapper{\r\n display:block;\r\n position:absolute;\r\n box-sizing:border-box;\r\n width:100%;\r\n padding-top: 45px;\r\n pointer-events:none;\r\n z-index:2000\r\n}\r\n.meganav-container__navlink-component-wrapper:hover{\r\n pointer-events:none;\r\n}\r\n\r\n.meganav-container:hover .meganav-container__navlink-component-wrapper{\r\n pointer-events:none;\r\n}\r\n.meganav-container__navlink-container.hasComponent.arrowShow:before {\r\n content: '';\r\n display: block;\r\n content: '';\r\n position: absolute;\r\n top: 50px;\r\n left: 50%;\r\n margin-left: -10px;\r\n font-size: 0;\r\n line-height: 0;\r\n width: 20px;\r\n height: 20px;\r\n opacity: 0;\r\n z-index:2000;\r\n visibility: visible;\r\n transform: translateY(-5px) rotate(45deg);\r\n background-color:#fafafa;\r\n pointer-events:none;\r\n}\r\n\r\n.meganav-container__navlink-container.hasSub:after{\r\n \r\n}\r\n\r\n.meganav-container__navlink-container.hasComponent.arrowShow:hover:before {\r\n opacity: 1 !important;\r\n}\r\n\r\n.meganav-container__navlink-component-container.hidden{\r\n display:none !important;\r\n visibility:hidden !important;\r\n opacity:0 !important;\r\n}\r\n\r\n.meganav-container__navlink-component-container.horizontal {\r\n display: flex;\r\n position: absolute;\r\n flex-flow: row;\r\n justify-content: flex-start;\r\n align-items: flex-start;\r\n box-sizing: border-box;\r\n padding: 20px;\r\n left: 50%;\r\n visibility:hidden;\r\n background-color: rgb(240, 238, 238);\r\n z-index:2000;\r\n}\r\n\r\n.meganav_container__component-spacing {\r\n margin: 10px 0;\r\n}\r\n\r\n.meganav_container__component-spacing:first-child{\r\n margin-top:0;\r\n}\r\n\r\n.meganav_container__component-spacing:last-child{\r\n margin-bottom:0;\r\n}\r\n\r\n.meganav-container__navlink-component-container.Horizontal .meganav_container__component-spacing {\r\n margin: 0;\r\n margin-left: 12px;\r\n}\r\n\r\n/* Thumbnail CSS Style */\r\n\r\n.meganav-container__thumbnail-image {\r\n display: block;\r\n position: relative;\r\n box-sizing: border-box;\r\n margin-bottom: 12px;\r\n}\r\n\r\n.meganav-container__thumbnail-image-wrapper,\r\n.meganav-container__thumbnail-image-wrapper img {\r\n display:block;\r\n position:relative;\r\n box-sizing:border-box;\r\n max-width: 240px;\r\n max-height: 420px;\r\n transition: all .2 ease;\r\n}\r\n\r\n/* Grid Sub Nav CSS Style */\r\n\r\n.meganav-container__grid-sub-nav-container {\r\n display: block;\r\n position: relative;\r\n box-sizing: border-box;\r\n}\r\n\r\n.meganav-container__grid-sub-nav-title {\r\n display: block;\r\n position: relative;\r\n box-sizing: border-box;\r\n font-weight: bold;\r\n color: #323232;\r\n transition: all .2s ease;\r\n white-space: nowrap;\r\n}\r\n\r\n.meganav-container__grid-sub-nav-title.noTitle {\r\n opacity: 0;\r\n visibility: hidden;\r\n display: none;\r\n}\r\n\r\n.meganav-container__grid-sub-nav-link-title {\r\n display: block;\r\n position: relative;\r\n box-sizing: border-box;\r\n font-weight: bold;\r\n color: #323232;\r\n transition: all .2s ease;\r\n margin: 5px 0;\r\n font-size: 15px;\r\n}\r\n\r\n.meganav-container__grid-sub-nav-description {\r\n display: block;\r\n position: relative;\r\n box-sizing: border-box;\r\n font-weight: normal;\r\n font-style: normal;\r\n font-size: 12px;\r\n margin: 0 !important;\r\n color: #838383;\r\n width: 100%;\r\n}\r\n\r\n.meganav-container__grid-sub-nav-wrapper {\r\n display: block;\r\n position: relative;\r\n box-sizing: border-box;\r\n margin: 5px 0;\r\n width: 100%;\r\n height: auto;\r\n color: #323232;\r\n}\r\n\r\n.meganav-container__grid-sub-nav-wrapper i {\r\n color: #FFA300\r\n}\r\n\r\n.meganav-container__grid-sub-nav-wrapper:last-child {\r\n margin-bottom: 0px;\r\n}\r\n\r\n.meganav-container__grid-sub-nav-wrapper.vertical {\r\n flex-flow: column;\r\n justify-content: center;\r\n align-items: flex-start;\r\n white-space: nowrap;\r\n}\r\n\r\n.meganav-container__grid-sub-nav-wrapper.horizontal,\r\n.meganav-container__grid-sub-nav-wrapper.Horizontal {\r\n flex-flow: row;\r\n justify-content: flex-start;\r\n align-items: center;\r\n text-decoration: none;\r\n}\r\n\r\n/*.meganav-container__navlink-component-container.horizontal div:first-child,*/\r\n/*.meganav-container__navlink-component-container.Horizontal div:first-child,*/\r\n/*.meganav-container__navlink-component-container.vertical div:first-child,*/\r\n/*.meganav-container__navlink-component-container.Vertical div:first-child {*/\r\n/* margin: 0;*/\r\n/*}*/\r\n\r\n.meganav-container__grid-sub-nav-link {\r\n color: #323232;\r\n font-weight: bold;\r\n text-decoration: none;\r\n}\r\n\r\n.meganav-container__grid-sub-nav-items {\r\n display: flex;\r\n flex-wrap: wrap;\r\n width: 450px;\r\n align-items: flex-start;\r\n}\r\n\r\n.meganav-container__grid-sub-nav-items>a {\r\n box-sizing: border-box;\r\n border-radius: 10px;\r\n transition: all .35s;\r\n padding-top: 10px;\r\n padding-bottom: 10px;\r\n padding-left: 10px;\r\n padding-right: 10px;\r\n}\r\n\r\n.meganav-container__grid-sub-nav-items>a:hover {\r\n background-color: #ccc\r\n}\r\n\r\n.meganav-container__grid-sub-nav-items[data-size=\"1\"]>a {\r\n max-width: 100%;\r\n}\r\n\r\n.meganav-container__grid-sub-nav-items[data-size=\"2\"]>a {\r\n max-width: 48%;\r\n}\r\n\r\n.meganav-container__grid-sub-nav-items[data-size=\"3\"]>a {\r\n max-width: 32%;\r\n}\r\n\r\n.meganav-container__grid-sub-nav-items[data-size=\"4\"]>a {\r\n max-width: 23%;\r\n}\r\n\r\n.meganav-container__grid-sub-nav-items[data-size=\"5\"]>a {\r\n max-width: 19%;\r\n}\r\n\r\n.meganav-container-grid-top-icons .meganav-container__grid-sub-nav-icon {\r\n display: block\r\n}\r\n\r\n.meganav-container__grid-sub-nav-icon {\r\n display: flex;\r\n align-items: center;\r\n position: relative;\r\n box-sizing: border-box;\r\n text-align: left;\r\n}\r\n\r\n.meganav-container__grid-sub-nav-icon img {\r\n max-width: 100%;\r\n -ms-interpolation-mode: bicubic;\r\n display: inline-block;\r\n width: 25px;\r\n margin-right: 8px\r\n}\r\n\r\n.meganav-container__grid-sub-nav-content {\r\n display: block;\r\n position: relative;\r\n box-sizing: border-box;\r\n width: 90%;\r\n}\r\n\r\n/* Stack Sub Nav CSS Style */\r\n\r\n.meganav-container__stack-sub-nav-container {\r\n display: block;\r\n position: relative;\r\n box-sizing: border-box;\r\n}\r\n\r\n.meganav-container__stack-sub-nav-title {\r\n display: block;\r\n position: relative;\r\n box-sizing: border-box;\r\n font-weight: bold;\r\n color: #323232;\r\n transition: all .2s ease;\r\n white-space: nowrap;\r\n}\r\n\r\n.meganav-container__stack-sub-nav-title.noTitle {\r\n opacity: 0;\r\n visibility: hidden;\r\n display: none;\r\n}\r\n\r\n.meganav-container__stack-sub-nav-link-title {\r\n display: block;\r\n position: relative;\r\n box-sizing: border-box;\r\n font-weight: normal;\r\n color: #323232;\r\n transition: all .2s ease;\r\n margin: 10px 0;\r\n}\r\n\r\n.meganav-container__stack-sub-nav-description {\r\n display: block;\r\n position: relative;\r\n box-sizing: border-box;\r\n font-weight: normal;\r\n font-style: normal;\r\n font-size: 14px;\r\n margin: 0 !important;\r\n color: #838383;\r\n width: 100%;\r\n}\r\n\r\n.meganav-container__stack-sub-nav-wrapper {\r\n display: flex;\r\n position: relative;\r\n box-sizing: border-box;\r\n margin: 5px 0;\r\n width: 100%;\r\n height: auto;\r\n color: #323232;\r\n transition: all .35s;\r\n padding-top: 10px;\r\n padding-bottom: 10px;\r\n padding-left: 10px;\r\n padding-right: 10px;\r\n box-sizing: border-box;\r\n border-radius: 10px\r\n}\r\n\r\n.meganav-container__stack-sub-nav-wrapper:hover {\r\n background-color: #ccc\r\n}\r\n\r\n.meganav-container__stack-sub-nav-wrapper-topimage {\r\n display: block;\r\n}\r\n\r\n.meganav-container__stack-sub-nav-wrapper-topimage .meganav-container__stack-sub-nav-image {\r\n width: 100%;\r\n}\r\n\r\n.meganav-container__stack-sub-nav-wrapper i {\r\n color: #FFA300\r\n}\r\n\r\n.meganav-container__stack-sub-nav-wrapper:last-child {\r\n margin-bottom: 0px;\r\n}\r\n\r\n.meganav-container__stack-sub-nav-wrapper.vertical {\r\n flex-flow: column;\r\n justify-content: center;\r\n align-items: flex-start;\r\n white-space: nowrap;\r\n}\r\n\r\n.meganav-container__stack-sub-nav-wrapper.horizontal,\r\n.meganav-container__stack-sub-nav-wrapper.Horizontal {\r\n flex-flow: row;\r\n justify-content: flex-start;\r\n text-decoration: none;\r\n}\r\n\r\n/*.meganav-container__navlink-component-container.horizontal div:first-child,*/\r\n/*.meganav-container__navlink-component-container.Horizontal div:first-child,*/\r\n/*.meganav-container__navlink-component-container.vertical div:first-child,*/\r\n/*.meganav-container__navlink-component-container.Vertical div:first-child {*/\r\n/* margin: 0;*/\r\n/*}*/\r\n\r\n.meganav-container__stack-sub-nav-link {\r\n color: #323232;\r\n font-weight: bold;\r\n text-decoration: none;\r\n}\r\n\r\n.meganav-container__stack-sub-nav-image {\r\n display: flex;\r\n justify-content: center;\r\n align-items: center;\r\n position: relative;\r\n box-sizing: border-box;\r\n margin-right: 8px !important;\r\n font-size: 24px;\r\n width: 100px;\r\n}\r\n\r\n.meganav-container__stack-sub-nav-image img {\r\n object-fit: cover;\r\n width: 100%;\r\n height: 100%;\r\n}\r\n\r\n.meganav-container__stack-sub-nav-content {\r\n display: block;\r\n position: relative;\r\n box-sizing: border-box;\r\n width: 90%;\r\n}\r\n\r\n/* Multi Sub Nav CSS Style */\r\n\r\n.meganav-container__multi-sub-nav-container {\r\n display: block;\r\n position: relative;\r\n box-sizing: border-box;\r\n}\r\n\r\n.meganav-container__multi-sub-nav-title {\r\n display: block;\r\n position: relative;\r\n box-sizing: border-box;\r\n font-weight: bold;\r\n color: #323232;\r\n transition: all .2s ease;\r\n white-space: nowrap;\r\n margin: 0 0 15px 0;\r\n}\r\n\r\n.meganav-container__multi-sub-nav-title.noTitle {\r\n display: none;\r\n opacity: 0;\r\n visibility: hidden;\r\n}\r\n\r\n.meganav-container__multi-sub-nav-link-title {\r\n display: block;\r\n position: relative;\r\n box-sizing: border-box;\r\n font-weight: normal;\r\n color: #323232;\r\n transition: all .2s ease;\r\n}\r\n\r\n.meganav-container__multi-sub-nav-link-title.activeNav{\r\n color: rgb(61, 131, 250);\r\n}\r\n\r\n.meganav-container__multi-sub-nav-description {\r\n display: block;\r\n position: relative;\r\n box-sizing: border-box;\r\n font-weight: normal;\r\n font-style: normal;\r\n font-size: 14px;\r\n padding-left: 8px;\r\n margin: 0 !important;\r\n color: #838383;\r\n white-space: nowrap;\r\n width: 250px;\r\n overflow: hidden;\r\n text-overflow: ellipsis;\r\n}\r\n\r\n.meganav-container__multi-sub-nav-wrapper {\r\n display: flex;\r\n position: relative;\r\n box-sizing: border-box;\r\n margin: 0 0 15px 0;\r\n width: 100%;\r\n height: auto;\r\n color: #323232;\r\n transition: all .2s ease;\r\n text-decoration:none;\r\n}\r\n\r\n.meganav-container__multi-sub-nav-icon {\r\n color:#FFA300;\r\n}\r\n.meganav-container__multi-sub-nav-wrapper:hover .meganav-container__multi-sub-nav-icon {\r\n color: initial;\r\n}\r\n.meganav-container__multi-sub-nav-wrapper:hover,\r\n.meganav-container__multi-sub-nav-wrapper:hover .meganav-container__multi-sub-nav-link-title{\r\n color: rgb(61, 131, 250);\r\n}\r\n\r\n.meganav-container__multi-sub-nav-wrapper:last-child {\r\n margin-bottom: 0px;\r\n}\r\n\r\n.meganav-container__multi-sub-nav-wrapper.Vertical, .meganav-container__multi-sub-nav-wrapper.vertical {\r\n flex-flow: column;\r\n justify-content: center;\r\n align-items: flex-start;\r\n white-space: nowrap;\r\n}\r\n\r\n.meganav-container__multi-sub-nav-wrapper.Horizontal, .meganav-container__multi-sub-nav-wrapper.horizontal {\r\n flex-flow: row;\r\n justify-content: flex-start;\r\n align-items: center;\r\n text-decoration: none;\r\n white-space: nowrap;\r\n}\r\n\r\n/*.meganav-container__navlink-component-container.Horizontal div, .meganav-container__navlink-component-container.horizontal div {*/\r\n/* margin-left: 15px;*/\r\n/*}*/\r\n\r\n/*.meganav-container__navlink-component-container.Horizontal div:first-child, .meganav-container__navlink-component-container.horizontal div:first-child {*/\r\n/* margin: 0 !important;*/\r\n/*}*/\r\n\r\n.meganav-container__multi-sub-nav-link {\r\n color: #323232;\r\n font-weight: bold;\r\n text-decoration: none;\r\n}\r\n\r\n.meganav-container__multi-sub-nav-icon {\r\n display: flex;\r\n justify-content: center;\r\n align-items: center;\r\n position: relative;\r\n box-sizing: border-box;\r\n margin-right: 10px;\r\n font-size: 24px;\r\n width: 36px;\r\n}\r\n\r\n.meganav-container__multi-sub-nav-content {\r\n display: block;\r\n position: relative;\r\n box-sizing: border-box;\r\n width: 90%;\r\n}\r\n\r\n/* Extended Sub Navigation CSS Styles */\r\n\r\n.meganav-container__ext-nav-main-container {\r\n display: flex;\r\n position: relative;\r\n box-sizing: border-box;\r\n}\r\n\r\n.meganav-container__ext-nav-main-container.horizontal {\r\n flex-flow: row;\r\n justify-content: flex-start;\r\n align-items: flex-start;\r\n}\r\n\r\n.meganav-container__ext-nav-main-container.reHorizontal {\r\n flex-flow: row-reverse;\r\n justify-content: flex-start;\r\n align-items: flex-start;\r\n}\r\n\r\n.meganav-container__ext-nav-main-container.vertical {\r\n flex-flow: column;\r\n justify-content: flex-start;\r\n align-items: flex-start;\r\n}\r\n\r\n.meganav-container__ext-nav-main-container.reVertical {\r\n flex-flow: column-reverse;\r\n justify-content: flex-start;\r\n align-items: flex-start;\r\n}\r\n\r\n.meganav-container__ext-nav-main-container.vertical .meganav_container__ext-nav-inner-spacing {\r\n margin: 12px 0 0 0;\r\n}\r\n\r\n.meganav-container__ext-nav-image\r\n,.meganav-container__ext-nav-image img {\r\n display: block;\r\n position: relative;\r\n box-sizing: border-box;\r\n max-width: 420px;\r\n max-height: 420px;\r\n transition: all .2 ease;\r\n}\r\n\r\n.meganav-container__ext-nav-container {\r\n display: block;\r\n position: relative;\r\n box-sizing: border-box;\r\n margin: 0 0 0 15px;\r\n}\r\n\r\n.meganav-container__ext-nav-main-container.reHorizontal .meganav-container__ext-nav-container {\r\n margin: 0 15px 0 0;\r\n}\r\n\r\n.meganav-container__ext-nav-main-container.reVertical .meganav-container__ext-nav-container {\r\n margin: 0 0 15px 0;\r\n}\r\n\r\n.meganav-container__ext-nav-title {\r\n display: block;\r\n position: relative;\r\n box-sizing: border-box;\r\n font-weight: bold;\r\n color: #323232;\r\n transition: all .2s ease;\r\n white-space: nowrap;\r\n padding-bottom: 15px;\r\n}\r\n\r\n.meganav-container__ext-nav-link-title {\r\n display: block;\r\n position: relative;\r\n box-sizing: border-box;\r\n font-weight: normal;\r\n color: #323232;\r\n transition: all .2s ease;\r\n}\r\n\r\n.meganav-container__ext-nav-wrapper {\r\n display: flex;\r\n position: relative;\r\n box-sizing: border-box;\r\n padding-bottom: 16px;\r\n width: 100%;\r\n height: auto;\r\n color: #323232;\r\n transition: all .2s ease;\r\n}\r\n\r\n.meganav-container__ext-nav-icon {\r\n color:#FFA300\r\n}\r\n\r\n.meganav-container__ext-nav-wrapper:last-child {\r\n margin-bottom: 0px;\r\n}\r\n\r\n.meganav-container__ext-nav-wrapper:hover,\r\n.meganav-container__ext-nav-wrapper:hover .meganav-container__ext-nav-link-title {\r\n color: rgb(61, 131, 250);\r\n}\r\n\r\n.meganav-container__ext-nav-wrapper {\r\n flex-flow: row;\r\n justify-content: flex-start;\r\n align-items: center;\r\n text-decoration: none;\r\n white-space: nowrap;\r\n transition: all .2s ease;\r\n}\r\n\r\n.meganav-container__ext-nav-wrapper:last-child {\r\n padding: 0;\r\n}\r\n\r\n.meganav-container__ext-nav-description {\r\n display: block;\r\n position: relative;\r\n box-sizing: border-box;\r\n font-weight: normal;\r\n font-style: normal;\r\n font-size: 14px;\r\n padding-left: 8px;\r\n margin: 0 !important;\r\n color: #838383;\r\n white-space: nowrap;\r\n width: 250px;\r\n overflow: hidden;\r\n text-overflow: ellipsis;\r\n}\r\n\r\n.meganav-container__ext-nav-main-container.vertical .meganav-container__ext-nav-description,\r\n.meganav-container__ext-nav-main-container.reVertical .meganav-container__ext-nav-description {\r\n width: 380px;\r\n}\r\n\r\n.meganav-container__ext-nav-content{\r\n margin: 0 0 0 15px !important;\r\n}\r\n\r\n.meganav-container__ext-nav-link {\r\n color: #323232;\r\n font-weight: bold;\r\n text-decoration: none;\r\n}\r\n\r\n.meganav-container__ext-nav-icon {\r\n display: flex;\r\n justify-content: center;\r\n align-items: center;\r\n position: relative;\r\n box-sizing: border-box;\r\n margin-right: 10px;\r\n font-size: 24px;\r\n width: 45px;\r\n /*width: auto;*/\r\n}\r\n\r\n.meganav-container__ext-nav-content {\r\n display: block;\r\n position: relative;\r\n box-sizing: border-box;\r\n width: 90%;\r\n}\r\n\r\n/* Contact Info CSS Styles */\r\n\r\n.meganav-container__contact-info-wrapper {\r\n display: flex;\r\n position: relative;\r\n box-sizing: border-box;\r\n flex-flow: column;\r\n justify-content: flex-start;\r\n /*justify-content: center;*/\r\n align-items: flex-start;\r\n margin-right: 40px;\r\n width: auto;\r\n white-space: nowrap;\r\n}\r\n\r\n.meganav-container__contact-info-wrapper a {\r\n display: flex;\r\n position: relative;\r\n justify-content:flex-start;\r\n align-items:center;\r\n box-sizing: border-box;\r\n color: #323232;\r\n text-decoration: none;\r\n margin: 10px 0;\r\n}\r\n\r\n.meganav-container__contact-info-wrapper a i {\r\n padding-right: 5px;\r\n}\r\n\r\n.meganav-container__contact-icon{\r\n\tdisplay: flex;\r\n position: relative;\r\n box-sizing: border-box;\r\n justify-content: center;\r\n align-items: center;\r\n width: 24px;\r\n height: auto;\r\n margin-right:4px;\r\n} \r\n\r\n.meganav-container__contact-title {\r\n display:block;\r\n position:relative;\r\n box-sizing:border-box;\r\n color: #323232;\r\n font-weight: bold;\r\n}\r\n\r\n.meganav-container__contact-address-title,\r\n.meganav-container__contact-phone-title,\r\n.meganav-container__contact-email-title{\r\n display:block;\r\n position:relative;\r\n box-sizing:border-box;\r\n color: #323232;\r\n transition: all .2s ease;\r\n}\r\n\r\n.meganav-container__contact-address-title:hover,\r\n.meganav-container__contact-phone-title:hover,\r\n.meganav-container__contact-email-title:hover{\r\n color: rgb(61, 131, 250);\r\n}\r\n\r\n.meganav-container__contact-social-wrapper {\r\n display: flex;\r\n position: relative;\r\n box-sizing: border-box;\r\n flex-flow: column;\r\n justify-content: center;\r\n align-items: flex-start;\r\n width: 80%;\r\n}\r\n\r\n.meganav-container__contact-social-media {\r\n display: block;\r\n position: relative;\r\n box-sizing: border-box;\r\n justify-content: flex-start;\r\n flex-flow: row wrap;\r\n}\r\n\r\n.meganav-container__contact-social-media.horizontal {\r\n display: block;\r\n}\r\n\r\n.meganav-container__contact-social-list {\r\n display: flex;\r\n position: relative;\r\n box-sizing: border-box;\r\n color: #323232;\r\n text-decoration: none;\r\n font-size: 26px;\r\n width: auto;\r\n}\r\n\r\na.meganav-container__contact-social-list:not(:first-child) {\r\n margin-left: 10px;\r\n}\r\n\r\n.meganav-container__contact-social-list i {\r\n transition: all .2s ease;\r\n}\r\n\r\n.meganav-container__contact-social-list i:hover {\r\n color: rgb(61, 131, 250);\r\n}\r\n\r\n.meganav-container__contact-social-media.horizontal .meganav-container__contact-social-list {\r\n display: flex;\r\n flex-flow: row;\r\n margin-top: 5px;\r\n margin-left: 0;\r\n}\r\n\r\n.meganav-container__navlink-component-container.horizontal .meganav-container__contact-social-list {\r\n margin-right: 8px;\r\n}\r\n\r\n.meganav-container__contact-social-title {\r\n display: block;\r\n position: relative;\r\n box-sizing: border-box;\r\n width: 100%;\r\n font-weight: bold;\r\n white-space: nowrap;\r\n color: #323232;\r\n}\r\n\r\n.meganav-container__contact-btn {\r\n display: flex;\r\n justify-content: center;\r\n align-items: center;\r\n position: relative;\r\n box-sizing: border-box;\r\n text-align: center;\r\n width: 200px;\r\n height: 50px;\r\n text-decoration: none;\r\n border-radius: 5px;\r\n color: #323232;\r\n background-color: #FFD26E;\r\n transition: all .2s ease;\r\n}\r\n\r\n.meganav-container__contact-btn:hover {\r\n color: #fff;\r\n background-color: #FFA701\r\n}\r\n\r\n/* ? Widget Video CSS Styles */\r\n\r\n.meganav-container__video-container{\r\n display: block;\r\n position: relative;\r\n box-sizing: border-box;\r\n}\r\n\r\n.meganav-container__video-wrapper{\r\n display: block;\r\n position: relative;\r\n box-sizing: border-box;\r\n width: 300px;\r\n height: 150px;\r\n}\r\n\r\n.meganav-container__video-wrapper.videoPopup:after{\r\n content: '';\r\n display: flex;\r\n position: absolute;\r\n top: 0;\r\n left:0;\r\n width: 100%;\r\n height: 100%;\r\n cursor: pointer;\r\n background: center / 30% no-repeat rgba(0, 0, 0, 0.5);\r\n}\r\n\r\n.meganav-container__video-wrapper.videoPopup .meganav-container__video-thumbnail{\r\n display: block;\r\n position: relative;\r\n box-sizing: border-box;\r\n width: 100%;\r\n height: 100%;\r\n}\r\n\r\n.meganav-container__video-thumbnail{\r\n display: none;\r\n}\r\n\r\n\r\n.meganav-container__video-thumbnail-wrapper{\r\n display: block;\r\n position: relative;\r\n box-sizing: border-box;\r\n width: 100%;\r\n height: 100%;\r\n}\r\n\r\n.meganav-container__video-play-btn{\r\n display: flex !important;\r\n position: absolute;\r\n justify-content: center;\r\n align-items: center;\r\n width: 100%;\r\n height: 100%;\r\n top: 0;\r\n left: 0;\r\n font-size: 60px;\r\n color: white;\r\n z-index: 5;\r\n cursor: pointer;\r\n}\r\n\r\n.meganav-container__video-wrapper.videoPopup .meganav-container__video{\r\n display: none;\r\n}\r\n\r\n.meganav-container__video{\r\n display: block;\r\n position: relative;\r\n box-sizing: border-box;\r\n width: 100%;\r\n height: 100%;\r\n}\r\n\r\n.meganav-container__video.popupActive{\r\n display: none;\r\n}\r\n\r\n.meganav-container__video-popup-container{\r\n display: flex;\r\n position: fixed;\r\n box-sizing: border-box;\r\n justify-content: center;\r\n align-items: center;\r\n top: 0;\r\n left: 0;\r\n width: 100%;\r\n height: 100%;\r\n background: rgba(0, 0, 0, 0.35); \r\n z-index: 9999;\r\n}\r\n\r\n.meganav-container__video-popup-wrapper{\r\n display: flex;\r\n position: relative;\r\n box-sizing: border-box;\r\n justify-content: center;\r\n align-items: center;\r\n background: #fff;\r\n padding: 60px;\r\n border-radius: 5px;\r\n}\r\n\r\n.meganav-container__video-popup-close-btn{\r\n display: block;\r\n position: absolute;\r\n box-sizing: border-box;\r\n top: 12px;\r\n right: 12px;\r\n font-size: 32px;\r\n cursor: pointer;\r\n}\r\n\r\n.meganav-container__video-popup{\r\n display: block;\r\n position: relative;\r\n box-sizing: border-box;\r\n width: 600px;\r\n height: 400px;\r\n}\r\n\r\n/* ? Widget CTC CSS Styles */\r\n.meganav-container__ctc-wrapper{\r\n display: block;\r\n position: relative;\r\n box-sizing: border-box;\r\n margin-bottom: 12px;\r\n}\r\n\r\n.meganav-container__ctc-title{\r\n\tdisplay: block;\r\n position: relative;\r\n box-sizing: border-box;\r\n font-weight: bold;\r\n padding: 0;\r\n}\r\n\r\n.meganav-container__ctc-description{\r\n\tdisplay: block;\r\n position: relative;\r\n box-sizing: border-box;\r\n padding: 0;\t\r\n}\r\n\r\n.meganav-container__ctc-btn{\r\n\tdisplay: flex;\r\n justify-content: center;\r\n align-items: center;\r\n position: relative;\r\n box-sizing: border-box;\r\n text-align: center;\r\n width: 170px;\r\n height: 50px;\r\n text-decoration: none;\r\n border-radius: 5px;\r\n color: #323232;\r\n background-color: #FFD26E;\r\n transition: all .2s ease;\r\n}\r\n\r\n.meganav-container__ctc-btn:hover {\r\n color: #fff;\r\n background-color: #FFA701;\r\n}\r\n\r\n.navlink-horizontal{\r\n display:flex!important;\r\n}","strings":{}},{"widgetId":"1f5975986930429f819d4cd2154b5c4a","version":25,"js":null,"css":".widget-1f5975 .copyright {\n font-size: 13px;\n display: flex;\n text-align: left;\n justify-content: flex-start;\n}\n","strings":{}}],"page_title":"Front Eats","flexstyles":[],"popups":[],"title":null,"uuid":"b964094d37294c998c99c3dfccc871cf","devicecss":"*#dm *.dmBody div.u_dm_content\n{\n\tpadding-top:20px !important;\n\tpadding-bottom:20px !important;\n\tpadding-left:20px !important;\n\tpadding-right:20px !important;\n}\n*#dm *.dmBody div.u_1594819959\n{\n\tmargin-left:0 !important;\n\tpadding-top:0 !important;\n\tpadding-left:0 !important;\n\tpadding-bottom:0 !important;\n\tmargin-top:0 !important;\n\tmargin-bottom:0 !important;\n\tmargin-right:0 !important;\n\tpadding-right:0 !important;\n}\n*#dm *.dmBody a.u_1297334202 span.text\n{\n\tfont-size:16px !important;\n}\n*#dm *.dmBody div.u_1694205906\n{\n\tpadding-top:30px !important;\n\tpadding-left:0 !important;\n\tpadding-bottom:30px !important;\n\tfloat:none !important;\n\tmargin-right:0 !important;\n\tmargin-left:0 !important;\n\ttop:auto !important;\n\tmax-width:none !important;\n\tleft:0 !important;\n\twidth:auto !important;\n\tmargin-top:0 !important;\n\tposition:relative !important;\n\tmargin-bottom:0 !important;\n\tpadding-right:0 !important;\n\tmin-width:0 !important;\n\ttext-align:center !important;\n\theight:auto !important;\n}\n*#dm *.dmBody div.allWrapper .dmPopupInner\n{\n\tmargin-left:0 !important;\n\tpadding-top:50px !important;\n\tpadding-left:20px !important;\n\tpadding-bottom:40px !important;\n\tmargin-top:0 !important;\n\tmargin-bottom:0 !important;\n\tmargin-right:0 !important;\n\tpadding-right:20px !important;\n}\n*#dm *.dmBody a.u_1297334202\n{\n\tfloat:none !important;\n\ttop:0px !important;\n\tleft:0 !important;\n\twidth:calc(100% - 20px) !important;\n\tposition:relative !important;\n\theight:58px !important;\n\tpadding-top:0px !important;\n\tpadding-left:0px !important;\n\tpadding-bottom:0px !important;\n\tmargin-right:auto !important;\n\tmargin-left:auto !important;\n\tmax-width:226px !important;\n\tmargin-top:0px !important;\n\tmargin-bottom:0px !important;\n\tpadding-right:0px !important;\n\tmin-width:25px !important;\n\ttext-align:center !important;\n\tdisplay:block !important;\n}\n*#dm *.dmBody a.u_1782439928\n{\n\tfloat:none !important;\n\ttop:0px !important;\n\tleft:0 !important;\n\twidth:calc(100% - 20px) !important;\n\tposition:relative !important;\n\theight:58px !important;\n\tpadding-top:0px !important;\n\tpadding-left:0px !important;\n\tpadding-bottom:0px !important;\n\tmax-width:226px !important;\n\tpadding-right:0px !important;\n\tmin-width:25px !important;\n\ttext-align:center !important;\n\tdisplay:block !important;\n\tmargin-right:auto !important;\n\tmargin-left:auto !important;\n\tmargin-top:0px !important;\n\tmargin-bottom:10px !important;\n}\n*#dm *.dmBody div.u_1112505321\n{\n\tdisplay:block !important;\n\tfloat:none !important;\n\ttop:0px !important;\n\tleft:0px !important;\n\twidth:calc(100% - 0px) !important;\n\tposition:relative !important;\n\tpadding-top:0px !important;\n\tpadding-left:0px !important;\n\tpadding-bottom:0px !important;\n\tmargin-right:0px !important;\n\tmargin-left:0px !important;\n\tmax-width:100% !important;\n\tmargin-top:0px !important;\n\tmargin-bottom:0px !important;\n\tpadding-right:0px !important;\n\tmin-width:25px !important;\n\ttext-align:center !important;\n\theight:auto !important;\n}\n*#dm *.dmBody div.u_1699018429\n{\n\tfloat:none !important;\n\ttop:0px !important;\n\tleft:0 !important;\n\twidth:calc(100% - 0px) !important;\n\tposition:relative !important;\n\theight:auto !important;\n\tpadding-top:2px !important;\n\tpadding-left:0px !important;\n\tpadding-bottom:2px !important;\n\tmargin-right:auto !important;\n\tmargin-left:auto !important;\n\tmax-width:100% !important;\n\tmargin-top:68px !important;\n\tmargin-bottom:8px !important;\n\tpadding-right:0px !important;\n\tmin-width:25px !important;\n}\n*#dm *.dmBody div.u_1574061141\n{\n\tmargin-left:0 !important;\n\tpadding-top:0 !important;\n\tpadding-left:0 !important;\n\tpadding-bottom:0 !important;\n\tmargin-top:0 !important;\n\tmargin-bottom:0 !important;\n\tmargin-right:0 !important;\n\tpadding-right:0 !important;\n}\n*#dm *.dmBody a.u_1954202299 span.text\n{\n\tfont-size:16px !important;\n}\n*#dm *.dmBody a.u_1482199583\n{\n\tfloat:none !important;\n\ttop:0px !important;\n\tleft:0 !important;\n\twidth:calc(100% - 20px) !important;\n\tposition:relative !important;\n\theight:58px !important;\n\tpadding-top:0px !important;\n\tpadding-left:0px !important;\n\tpadding-bottom:0px !important;\n\tmax-width:226px !important;\n\tpadding-right:0px !important;\n\tmin-width:25px !important;\n\ttext-align:center !important;\n\tdisplay:block !important;\n\tmargin-right:auto !important;\n\tmargin-left:auto !important;\n\tmargin-top:0px !important;\n\tmargin-bottom:10px !important;\n}\n*#dm *.dmBody div.u_1556405529\n{\n\tfloat:none !important;\n\ttop:0px !important;\n\tleft:0 !important;\n\twidth:calc(100% - 0px) !important;\n\tposition:relative !important;\n\theight:auto !important;\n\tpadding-top:2px !important;\n\tpadding-left:0px !important;\n\tpadding-bottom:2px !important;\n\tmargin-right:auto !important;\n\tmargin-left:auto !important;\n\tmax-width:100% !important;\n\tmargin-top:68px !important;\n\tmargin-bottom:8px !important;\n\tpadding-right:0px !important;\n\tmin-width:25px !important;\n}\n*#dm *.dmBody div.u_1012303821\n{\n\tdisplay:block !important;\n\tfloat:none !important;\n\ttop:0px !important;\n\tleft:0px !important;\n\twidth:calc(100% - 0px) !important;\n\tposition:relative !important;\n\tpadding-top:0px !important;\n\tpadding-left:0px !important;\n\tpadding-bottom:0px !important;\n\tmargin-right:0px !important;\n\tmargin-left:0px !important;\n\tmax-width:100% !important;\n\tmargin-top:0px !important;\n\tmargin-bottom:0px !important;\n\tpadding-right:0px !important;\n\tmin-width:25px !important;\n\ttext-align:center !important;\n}\n*#dm *.dmBody a.u_1954202299\n{\n\tfloat:none !important;\n\ttop:0px !important;\n\tleft:0 !important;\n\twidth:calc(100% - 205px) !important;\n\tposition:relative !important;\n\theight:58px !important;\n\tpadding-top:0px !important;\n\tpadding-left:0px !important;\n\tpadding-bottom:0px !important;\n\tmargin-right:auto !important;\n\tmargin-left:auto !important;\n\tmax-width:226px !important;\n\tmargin-top:36px !important;\n\tmargin-bottom:0px !important;\n\tpadding-right:0px !important;\n\tmin-width:25px !important;\n\ttext-align:center !important;\n\tdisplay:block !important;\n\tmin-height:auto !important;\n}\n*#dm *.dmBody div.u_1148008959\n{\n\tpadding-top:48px !important;\n\tpadding-left:0px !important;\n\tpadding-bottom:48px !important;\n\tfloat:none !important;\n\ttop:0 !important;\n\tmax-width:100% !important;\n\tleft:0 !important;\n\twidth:auto !important;\n\tposition:relative !important;\n\tpadding-right:0px !important;\n\tmin-width:0 !important;\n\ttext-align:center !important;\n\theight:auto !important;\n\tmin-height:auto !important;\n\tmargin-right:0px !important;\n\tmargin-left:0px !important;\n\tmargin-top:0px !important;\n\tmargin-bottom:0px !important;\n}\n","seometatags":null,"content":"
\n
\n
\n
\n
\n
\n

MARKETING POWERED POINT OF SALE

\n

INTRODUCING

\n

FRONT STATION

\n
\n

ZBS has unveiled its newest point of sale system, Front Station, the all powerful, marketing focused point of sale that is revolutionizing how restaurants work. Front Station helps you build your brand, retain your customers, increase revenue and widen your market without breaking the bank.

\n \n \n Learn More \n \n
\n
\"\"
\n
\n
\n
\n
\n
\n
\n
\n
\n","ssr_script":"","headsection":"\r\n \r\n \r\n \r\n \r\n \r\n \r\n \n All-in-one customized POS systems to enhance restaurant efficiency, reduce costs, and optimize customer experience. - Restaurant POS, POS System | ZBS POS\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n","current_url":"","collections":"e30=","sidebarPosition":"LEFT","pageFontSizeStyle":".font-size-24, .size-24, .size-24 > font { font-size: 24px !important; }.font-size-72, .size-72, .size-72 > font { font-size: 72px !important; }","alias":"front-eats","relAlternateLanguageLinksMarkup":"\n\n\n\n\n\n","extensionsToRender":{"1349956491":"
\n \n
\n
\n","1954422151":" \n","1172258098":" \n","1087133237":"
\n \n
\n
\n","1372702553":" \n","1320258405":"
\n \n
\n
\n","1058396633":" \n","1576053080":"
\n \n
\n
\n","1758484980":"
\n \n
\n
\n","1094399316":" \n","1448629503":" \n","1732812363":"
\n \n
\n
\n","1409466102":" \n","1234271146":" \n","1870445332":" \n","1663505181":" \n"},"parameters":{"InitialPageAlias":"front-eats","InitialDynamicItem":null,"IsCurrentHomePage":false,"pageType":"POPUP","CurrentPageUrl":""},"insite_scripts":""}