@wizishop/wizi-block 15.0.61-beta → 15.0.63-beta

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -1 +1 @@
1
- {"wb.AboutElementDto.author.1":"<h3 class=\"ql-align-center\">Lorem ipsum</h3>","wb.AboutElementDto.author.2":"<h4 class=\"ql-align-center\">Lorem</h4>","wb.AboutElementDto.content.1":"<p class=\"ql-align-center\"><span>Lorem ipsum dolor sit amet, consectetuer adipiscing elit. Aenean commodo ligula eget dolor</span></p>","wb.blocks.about-block.text":"Testimonials","wb.blocks.amplify-product-zoom-more.text":"Product zoom with enlarged image","wb.blocks.amplify-product-zoom-selected.text":"Product zoom with several images","wb.blocks.amplify-product-zoom-triple-column.text":"Product zoom with 3 columns","wb.blocks.amplify-product-zoom.text":"Product zoom","wb.blocks.amplify-products-list-classic.text":"Classic product list","wb.blocks.amplify-products-list-selected.text":"Product listing with emphazised product","wb.blocks.amplify-products-list-simple.text":"Refined list with hover over text","wb.blocks.code-html.text":"Add html code","wb.blocks.code-javascript.text":"Add javascript code","wb.blocks.code-stylesheet.text":"Add css code","wb.blocks.faq-accordion.text":"Expandable FAQ","wb.blocks.faq-frame.text":"FAQ with frame","wb.blocks.faq-list-icon.text":"FAQ list with icons","wb.blocks.faq-simple-background.text":"Simple FAQ with background","wb.blocks.faq-simple.text":"Simple FAQ","wb.blocks.FormContentDto.1":"Background color on the right","wb.blocks.FormContentDto.10":"The expandable mode allows you to reduce the display of your FAQ section by only showing the titles. When your visitors click on a title, the content displays automatically.","wb.blocks.FormContentDto.100":"Double","wb.blocks.FormContentDto.101":"None","wb.blocks.FormContentDto.102":"Space in the content","wb.blocks.FormContentDto.103":"Redirect form to onboarding?","wb.blocks.FormContentDto.104":"1","wb.blocks.FormContentDto.105":"2","wb.blocks.FormContentDto.106":"3","wb.blocks.FormContentDto.107":"Link on the left text","wb.blocks.FormContentDto.108":"Link on the left text","wb.blocks.FormContentDto.109":"Open the left link in a new tab","wb.blocks.FormContentDto.11":"Background color","wb.blocks.FormContentDto.110":"Open the right-hand link in a new tab","wb.blocks.FormContentDto.111":"Color of link arrows","wb.blocks.FormContentDto.112":"Banner background color","wb.blocks.FormContentDto.113":"Parallax effect speed","wb.blocks.FormContentDto.114":"Reverse parallax effect","wb.blocks.FormContentDto.115":"Slow","wb.blocks.FormContentDto.116":"Normal","wb.blocks.FormContentDto.117":"Fast","wb.blocks.FormContentDto.118":"Wiziblock ID","wb.blocks.FormContentDto.119":"Without spaces, put dashes (- or _) between words","wb.blocks.FormContentDto.12":"Color of the shade (active FAQ)","wb.blocks.FormContentDto.120":"Centre the text","wb.blocks.FormContentDto.121":"Centre the text horizontally if possible. If the text is too wide, it will automatically take up all the space.","wb.blocks.FormContentDto.122":"Visible","wb.blocks.FormContentDto.123":"Hidden","wb.blocks.FormContentDto.124":"Change the background colour of left nav","wb.blocks.FormContentDto.125":"Disable the shadow","wb.blocks.FormContentDto.126":"Days","wb.blocks.FormContentDto.127":"Hours","wb.blocks.FormContentDto.128":"Minutes","wb.blocks.FormContentDto.129":"Seconds","wb.blocks.FormContentDto.13":"Icon color","wb.blocks.FormContentDto.14":"WiziBlock height","wb.blocks.FormContentDto.15":"Size","wb.blocks.FormContentDto.16":"Full-page display (width)","wb.blocks.FormContentDto.17":"Add a parallax effect","wb.blocks.FormContentDto.18":"YouTube or Vimeo link","wb.blocks.FormContentDto.19":"Mute","wb.blocks.FormContentDto.2":"Button text","wb.blocks.FormContentDto.20":"Text and button color","wb.blocks.FormContentDto.21":"Button text color","wb.blocks.FormContentDto.22":"Button background color","wb.blocks.FormContentDto.23":"Facebook","wb.blocks.FormContentDto.24":"Twitter","wb.blocks.FormContentDto.25":"Pinterest","wb.blocks.FormContentDto.26":"Instagram","wb.blocks.FormContentDto.27":"Default text (displayed in the form)","wb.blocks.FormContentDto.28":"Background color","wb.blocks.FormContentDto.29":"Button color","wb.blocks.FormContentDto.3":"Number of lines of products","wb.blocks.FormContentDto.30":"Font color","wb.blocks.FormContentDto.31":"Color of Icon N°1","wb.blocks.FormContentDto.32":"Color of Icon N°2","wb.blocks.FormContentDto.33":"Color of Icon N°3","wb.blocks.FormContentDto.34":"Color of Icon N°4","wb.blocks.FormContentDto.35":"Background color","wb.blocks.FormContentDto.36":"Quote color","wb.blocks.FormContentDto.37":"Author color","wb.blocks.FormContentDto.38":"Quote","wb.blocks.FormContentDto.39":"Your quote","wb.blocks.FormContentDto.4":"test","wb.blocks.FormContentDto.40":"Author","wb.blocks.FormContentDto.41":"Quote's author","wb.blocks.FormContentDto.42":"Link on Icon N°1","wb.blocks.FormContentDto.43":"https://www.yourlink.com","wb.blocks.FormContentDto.44":"Open in a new tab","wb.blocks.FormContentDto.45":"Link on Icon N°2","wb.blocks.FormContentDto.46":"Link on Icon N°3","wb.blocks.FormContentDto.47":"Link on Icon N°4","wb.blocks.FormContentDto.48":"Title, score and author color","wb.blocks.FormContentDto.49":"Review and date color","wb.blocks.FormContentDto.5":"Arrow color","wb.blocks.FormContentDto.50":"Stars color","wb.blocks.FormContentDto.51":"Star background color","wb.blocks.FormContentDto.52":"Display link to reviews","wb.blocks.FormContentDto.53":"Reviews background color","wb.blocks.FormContentDto.54":"Color","wb.blocks.FormContentDto.55":"Style","wb.blocks.FormContentDto.57":"Height","wb.blocks.FormContentDto.58":"Width","wb.blocks.FormContentDto.6":"Questions background color","wb.blocks.FormContentDto.60":"Time between each slide (in milliseconds)","wb.blocks.FormContentDto.62":"Image navigation display (points)","wb.blocks.FormContentDto.63":"Login details of your Facebook page","wb.blocks.FormContentDto.65":"https://www.facebook.com/mapage","wb.blocks.FormContentDto.66":"https://www.twitter.com/mapage","wb.blocks.FormContentDto.67":"https://www.instagram.com/mapage","wb.blocks.FormContentDto.68":"https://www.pinterest.com/mapage","wb.blocks.FormContentDto.69":"Space around content","wb.blocks.FormContentDto.7":"Answers background color","wb.blocks.FormContentDto.70":"Background color on the left","wb.blocks.FormContentDto.71":"Background color on the right","wb.blocks.FormContentDto.72":"Background color of middle left section","wb.blocks.FormContentDto.73":"Background color of middle right section","wb.blocks.FormContentDto.74":"Number key n°1","wb.blocks.FormContentDto.75":"Enter a number","wb.blocks.FormContentDto.76":"Number key n°2","wb.blocks.FormContentDto.77":"Number key n°3","wb.blocks.FormContentDto.78":"Number key n°4","wb.blocks.FormContentDto.79":"Background color of middle section","wb.blocks.FormContentDto.8":"Border color","wb.blocks.FormContentDto.80":"Text color","wb.blocks.FormContentDto.81":"Background color bottom left","wb.blocks.FormContentDto.82":"Button link","wb.blocks.FormContentDto.83":"Open link in another tab","wb.blocks.FormContentDto.84":"Display control buttons","wb.blocks.FormContentDto.85":"Autoplay (sound will be muted)","wb.blocks.FormContentDto.86":"Play on a loop","wb.blocks.FormContentDto.87":"Slides background color","wb.blocks.FormContentDto.88":"Color of slide border","wb.blocks.FormContentDto.89":"Separator color","wb.blocks.FormContentDto.9":"Expandable mode","wb.blocks.FormContentDto.90":"Background color of the center left section","wb.blocks.FormContentDto.91":"Background color of the center right section","wb.blocks.FormContentDto.92":"Background color in the center","wb.blocks.FormContentDto.93":"<a href=\"https://aide.wizishop.fr/articles/3077986-wiziblocks-reseaux-sociaux\" target=\"_blank\">Consult the help center</a>","wb.blocks.FormContentDto.94":"Small","wb.blocks.FormContentDto.95":"Medium","wb.blocks.FormContentDto.96":"Large","wb.blocks.FormContentDto.97":"Solid","wb.blocks.FormContentDto.98":"Point","wb.blocks.FormContentDto.99":"Dash","wb.blocks.FormContentDto.huge":"Huge","wb.blocks.forms-background.text":"Form with background color","wb.blocks.forms-imageleft.text":"Form with image on the left","wb.blocks.forms-imageright.text":"Form with image on the right","wb.blocks.forms-onboarding.text":"WiziShop onboarding form","wb.blocks.forms-simple.text":"Simple form","wb.blocks.html.1":"Quick Preview","wb.blocks.html.2":"Deactivate Preview","wb.blocks.images-banner.text":"Simple banner","wb.blocks.images-big-and-double.text":"A large image + 2 images on the right","wb.blocks.images-bigs-and-double-middle.text":"An image + 2 images + an image","wb.blocks.images-double.text":"Two images","wb.blocks.images-quadruple-left-one-right.text":"Four images on the left and an image on the right","wb.blocks.images-quadruple.text":"Four images","wb.blocks.images-simple.text":"Simple image","wb.blocks.images-texts-big-left-text-right.text":"Large image with text on the right","wb.blocks.images-texts-big-right-text-left.text":"Large image with text on the left","wb.blocks.images-texts-left-text-right.text":"Regular image with text on the right","wb.blocks.images-texts-one-text-one.text":"Image - Text - Image","wb.blocks.images-texts-right-text-left.text":"Regular image with text on the left","wb.blocks.images-texts-small-left-text-right.text":"Small image with text on the right","wb.blocks.images-texts-small-right-text-left.text":"Small image with text on the left","wb.blocks.images-texts-text-one-text.text":"Text - Image - Text","wb.blocks.images-triple.text":"Three images","wb.blocks.images.fourImagesTitle":"Four images with the title underneath","wb.blocks.images.twoTitleText":"Two images with title and text underneath","wb.blocks.launch-videos-button.text":"Play with button","wb.blocks.launch-videos-buttontxt.text":"Play with text and button","wb.blocks.map-background-form-left.text":"Map with background image and form on the left","wb.blocks.map-background-form-right.text":"Map with background image and form on the right","wb.blocks.map-fullpage.text":"Full-screen map","wb.blocks.map-left-text.text":"Map with text on the left","wb.blocks.map-right-text.text":"Map with text on the right","wb.blocks.map-text-form.text":"Map with text and form","wb.blocks.newsletter-aligned-center-background.text":"Newsletter subscription aligned in the center with background","wb.blocks.newsletter-aligned-center-image.text":"Newsletter subscription aligned in the center with image","wb.blocks.newsletter-center-image-instagram.text":"Subscription with image and Instagram timeline","wb.blocks.newsletter-center-image.text":"Newsletter subscription with image and text centered","wb.blocks.product-zoom-complete-background.text":"Zoom with info and background image","wb.blocks.product-zoom-complete-slider.text":"Zoom with info and highlighted product","wb.blocks.product-zoom-complete.text":"Product zoom with info","wb.blocks.product-zoom-more.text":"Product zoom with enlarged image","wb.blocks.product-zoom-selected.text":"Product zoom with several images","wb.blocks.product-zoom-simple.text":"Simple product zoom","wb.blocks.product-zoom-triple-column.text":"Product zoom with 3 columns","wb.blocks.product-zoom.text":"Product zoom","wb.blocks.products-list-classic.text":"Classic product listing","wb.blocks.products-list-selected.text":"Product listing with a highlighted product","wb.blocks.products-list-simple.text":"Refined list with text when hovering over","wb.blocks.quotes-author.text":"Quote with author's photo","wb.blocks.quotes-simple-background.text":"Simple quote with image","wb.blocks.quotes-simple.text":"Simple quote","wb.blocks.rassurances-quadruple-aligned.text":"4 reassurance elements aligned","wb.blocks.rassurances-quadruple-background.text":"4 reassurance elements with background image","wb.blocks.rassurances-triple-background.text":"3 reassurance elements with background image","wb.blocks.reviews-simple.text":"Classic customer review","wb.blocks.reviews-waterfall.text":"Cascading customer reviews","wb.blocks.separator-simple.text":"Simple block separator","wb.blocks.sliders-double-imageright.text":"Slideshow with two images on the right","wb.blocks.sliders-fullpage.text":"Simple slideshow","wb.blocks.sliders-imageright.text":"Slideshow with an image on the right","wb.blocks.sliders-leftnav.text":"Slideshow with navigation on the left","wb.blocks.sliders-with-banner.text":"Full page slideshow and banner below","wb.blocks.socials-instagram-left.text":"Instagram timeline with image on the left","wb.blocks.socials-instagram.text":"Instagram timeline","wb.blocks.socials-like.text":"Like box","wb.blocks.socials-network.text":"Share buttons","wb.blocks.socials-page-complex.text":"Complex page","wb.blocks.socials-page-simple.text":"Simple page","wb.blocks.text-backgrounds-four-rows-icon-text.text":"Four rows of images with picto and text","wb.blocks.text-backgrounds-link.text":"Four images framed with title and text","wb.blocks.text-backgrounds-simple.text":"Simple text","wb.blocks.text-backgrounds-three-rows-icon-text.text":"Three rows of images with pictogram and text","wb.blocks.text-backgrounds-two-rows-icon-text.text":"Two rows of images with picto and text","wb.blocks.text-backgrounds-with-banner":"Simple text and banner underneath","wb.blocks.text-backgrounds-with-txt.text":"Text with background","wb.blocks.texts-double-background.text":"Two text columns with background","wb.blocks.texts-double.text":"Two text columns","wb.blocks.texts-one-background.text":"One text column with background","wb.blocks.texts-one.text":"One text column","wb.blocks.texts-quadruple-background.text":"Four text columns with background","wb.blocks.texts-quadruple-numbers.text":"Four dynamic key numbers","wb.blocks.texts-quadruple.text":"Four text columns","wb.blocks.texts-triple-background.text":"Three text columns with background","wb.blocks.texts-triple.text":"Three text columns","wb.blocks.timer-airport.text":"Airport-style countdown","wb.blocks.timer-background.text":"Framed countdown with image","wb.blocks.timer-clock.text":"Countdown clock with image","wb.blocks.timer-multiple-img.text":"Countdown with multiple images","wb.blocks.timer-simple.text":"Simple countdown","wb.blocks.videos-simple.text":"Simple video","wb.blocks.videos-txt-content.text":"Video with text in content","wb.blocks.videos-txt-left.text":"Video with text on the left","wb.blocks.videos-txt.text":"Video with text","wb.blocks.witness-background-double.text":"2 testimonials with background","wb.blocks.witness-background-one.text":"Testimony with background","wb.blocks.witness-quadruple.text":"4 testimonials","wb.blocks.witness-triple.text":"3 testimonials","wb.blocks.witness-twice.text":"2 testimonials","wb.configs.translations.1":"List of WiziBlocks","wb.configs.translations.2":"Website header","wb.configs.translations.3":"Footer","wb.configs.translations.4":"Choose your layout","wb.configs.translations.5":"Configuration","wb.configs.translations.6":"Select a component","wb.configs.translations.7":"Create your homepage thanks to the WiziBlocks.","wb.dto.ADDRESS.9":"<p><span class=\"ql-size-large\" style=\"color: rgb(68, 68, 68);\">Your address<br/>New York</span></p>","wb.dto.AUTHOR.18":"Name","wb.dto.AUTHOR.36":"<h3 class=\"ql-align-center\"><span>John Doe</span></h3>","wb.dto.BUTTON_TEXT.14":"Subscribe","wb.dto.BUTTON_TEXT.6":"View the video","wb.dto.BUTTON.15":"Test for free","wb.dto.CONTENT.1":"<p><span style=\"color: rgb(68, 68, 68);\">Lorem ipsum dolor sit amet, consectetur adipiscing elit. Vestibulum mollis turpis ex, eu convallis turpis ultrices in. Aenean varius nulla id maximus pellentesque. Integer mattis est enim, sit amet feugiat odio gravida","wb.dto.CONTENT.10":"<p class=\"ql-align-center\"><span style=\"color: rgb(255, 255, 255);\">Lorem ipsum dolor sit amet, consectetur adipiscing elit. Duis vel lorem a est dictum ultrices ut a orci.</span></p>","wb.dto.CONTENT.11":"<p class=\"ql-align-center\"><strong class=\"ql-size-small\" style=\"color: rgb(255, 255, 255);\">Payment 100% secured</strong></p>","wb.dto.CONTENT.12":"<p class=\"ql-align-center\"><span style=\"color: rgb(255, 255, 255);\">Lorem ipsum dolor sit amet, consectetur adipiscing elit. Vestibulum mollis turpis ex, eu convallis","wb.dto.CONTENT.13":"<p class=\"ql-align-center\"><strong class=\"ql-size-small\">Payment 100% secured</strong></p>","wb.dto.CONTENT.14":"<p class=\"ql-align-center\"><strong class=\"ql-size-small\">Tracked delivery 100% FREE</strong></p>","wb.dto.CONTENT.15":"<p><strong class=\"ql-size-small\">Lorem ipsum</strong> <strong class=\"ql-size-small\" style=\"color: rgb(240, 102, 102);\">dolor</strong> <strong class=\"ql-size-small\">sit amet</strong></p>","wb.dto.CONTENT.16":"<p><strong class=\"ql-size-small\">Lorem </strong><strong class=\"ql-size-small\" style=\"color: rgb(240, 102, 102);\">ipsum</strong><strong class=\"ql-size-small\"> dolor sit amet</strong></p>","wb.dto.CONTENT.17":"<p><span style=\"color: rgb(68, 68, 68);\">Lorem ipsum dolor sit amet, consectetur adipiscing elit. Vestibulum mollis turpis ex,</span></p>","wb.dto.CONTENT.18":"<p><span style=\"color: rgb(68, 68, 68);\">Lorem ipsum dolor sit amet, consectetur adipiscing elit. Vestibulum mollis turpis ex, eu convallis","wb.dto.CONTENT.19":"Don't try to be original, make sure you are good.","wb.dto.CONTENT.2":"<p class=\"ql-align-center\"><span style=\"color: rgb(68, 68, 68);\">Lorem ipsum dolor sit amet, consectetur adipiscing elit. Vestibulum mollis turpis ex, eu convallis turpis ultrices in. Aenean varius nulla id maximus pellentesque. Integer mattis est enim, sit amet feugiat odio gravida","wb.dto.CONTENT.20":"<p><span>Secured payment</span></p>","wb.dto.CONTENT.21":"<p><span>Shipping & Fast delivery</span></p>","wb.dto.CONTENT.22":"<p><span>Supporting you 24/7!</span></p>","wb.dto.CONTENT.23":"<p><span>7 days to change your mind</span></p>","wb.dto.CONTENT.24":"<p><span style=\"color: rgb(255, 255, 255);\">Secured payment</span></p>","wb.dto.CONTENT.25":"<p><span style=\"color: rgb(255, 255, 255);\">Shipping & Fast delivery</span></p>","wb.dto.CONTENT.26":"<p><span style=\"color: rgb(255, 255, 255);\">Supporting you 24/7!</span></p>","wb.dto.CONTENT.27":"<p><span style=\"color: rgb(255, 255, 255);\">7 days to change your mind</span></p>","wb.dto.CONTENT.28":"<p class=\"ql-align-center\"><span style=\"color: rgb(255, 255, 255);\">Lorem ipsum dolor sit amet, consectetur adipiscing elit. Suspendisse congue consectetur porta</span></p>","wb.dto.CONTENT.29":"<h2 class=\"ql-align-center\" ><span style=\"color: rgb(255, 255, 255);\">Lorem ipsum dolor sit amet, consectetur adipiscing elit.</span></h2>","wb.dto.CONTENT.3":"<div>\n Your elements\n</div>","wb.dto.CONTENT.30":"<p class=\"ql-align-center\"><span>Key numbers</span></p>","wb.dto.CONTENT.31":"<p class=\"ql-align-center\"><span style=\"color: rgb(0, 0, 0);\">Lorem ipsum dolor sit amet, consectetur adipiscing elit. Suspendisse congue consectetur porta</span></p>","wb.dto.CONTENT.32":"<p class=\"ql-align-center\"><span style=\"color: rgb(39, 35, 43);\">LOREM IPSUM DOLOR SIT AMET</span></p>","wb.dto.CONTENT.33":"<p>Lorem ipsum dolor sit amet, consectetur adipiscing elit. Pellentesque suscipit sollicitudin magna, nec sodales massa mattis nec.","wb.dto.CONTENT.34":"<p class=\"ql-align-center\"><span style=\"color: rgb(255, 255, 255);\">Your content here</span></p>","wb.dto.CONTENT.35":"<p class=\"ql-align-center\"><span>Lorem ipsum dolor sit amet, consectetuer adipiscing elit. Aenean commodo ligula eget dolor. Aenean massa.","wb.dto.CONTENT.36":"<p class=\"ql-align-center\"><span>Sed auctor ullamcorper mi, sit amet accumsan nisi scelerisque ut. Integer sed neque ac leo eleifend blandit.","wb.dto.CONTENT.37":"<p><span>Lorem ipsum dolor sit amet, consectetuer adipiscing elit. Aenean commodo ligula eget dolor. Aenean massa.","wb.dto.CONTENT.4":"alert(\"Your javascript code\");","wb.dto.CONTENT.5":".yourElements { \n background-color: white; \n }","wb.dto.CONTENT.6":"<p><span>Write the answer.</span></p>","wb.dto.CONTENT.7":"<p><span>Lorem ipsum dolor sit amet, consectetur adipiscing elit. Suspendisse congue consectetur porta</span></p>","wb.dto.CONTENT.8":"<p class=\"ql-align-center\"><span>Lorem ipsum dolor sit amet, consectetur adipiscing elit. Suspendisse congue consectetur porta</span></p>","wb.dto.CONTENT.9":"<p class=\"ql-align-center\"><span style=\"color: rgb(255, 255, 255);\">Your content</span></p>","wb.dto.EMAIL.11":"<p><span class=\"ql-size-large\" style=\"color: rgb(68, 68, 68);\">youremail@email.com</span></p>","wb.dto.PADDING.1":"Spacing between texts","wb.dto.PHONE.10":"<p><span class=\"ql-size-large\" style=\"color: rgb(68, 68, 68);\">(555) 555-XXXX</span></p>","wb.dto.PLACEHOLDER.13":"Enter your email address","wb.dto.TEXT.1":"Discover the offer","wb.dto.TEXT.2":"<p class=\"ql-align-center\"><span>Lorem ipsum dolor sit amet, consectetuer</span></p>","wb.dto.TEXT.3":"<p>Lorem ipsum dolor sit amet, consectetuer adipiscing elit. Aenean commodo ligula eget dolor.</p>","wb.dto.TITLE.1":"<p class=\"ql-align-center\"><strong class=\"ql-size-large ql-custom-uppercase\">The best sellers</strong></p>","wb.dto.TITLE.12":"<h2 class=\"ql-align-right\"><span style=\"color: rgb(255, 255, 255);\">Subscribe to the newsletter</span></h2>","wb.dto.TITLE.15":"<h2 class=\"ql-align-center\"><span style=\"color: rgb(255, 255, 255);\">Subscribe to the newsletter</span></h2>","wb.dto.TITLE.16":"<strong><span style=\"color: rgb(68, 68, 68);\">Argument 01</span></strong>","wb.dto.TITLE.17":"<strong><span style=\"color: rgb(68, 68, 68);\">Argument 02</span></strong>","wb.dto.TITLE.19":"<h3><span>Payment</span></h3>","wb.dto.TITLE.2":"Write your question.","wb.dto.TITLE.20":"<h3><span>Fast delivery</span></h3>","wb.dto.TITLE.21":"<h3><span>Customer service</span></h3>","wb.dto.TITLE.22":"<h3><span>Money-back guarantee</span></h3>","wb.dto.TITLE.23":"<h3><span style=\"color: rgb(255, 255, 255);\">Payment</span></h3>","wb.dto.TITLE.24":"<h3><span style=\"color: rgb(255, 255, 255);\">Fast delivery</span></h3>","wb.dto.TITLE.25":"<h3><span style=\"color: rgb(255, 255, 255);\">Customer Service</span></h3>","wb.dto.TITLE.26":"<h3><span style=\"color: rgb(255, 255, 255);\">Money-back guarantee</span></h3>","wb.dto.TITLE.27":"<h3 class=\"ql-align-center\"><span style=\"color: rgb(255, 255, 255);\">Lorem ipsum dolor sit amet</span></h3>","wb.dto.TITLE.28":"<p class=\"ql-align-center\"><strong class=\"ql-size-large ql-custom-uppercase\">Store's score</strong></p>","wb.dto.TITLE.29":"26000","wb.dto.TITLE.3":"<h2><span>Lorem ipsum dolor sit amet</span></h2>","wb.dto.TITLE.30":"<h2 class=\"ql-align-center\" ><span style=\"color: rgb(0, 0, 0);\">Lorem ipsum dolor sit amet, consectetur adipiscing elit.</span></h2>","wb.dto.TITLE.31":"Lorem ipsum dolor","wb.dto.TITLE.32":"<h2>Lorem Ipsum</h2>","wb.dto.TITLE.33":"<h2 class=\"ql-align-center\" ><span style=\"color: rgb(255, 255, 255);\">Your title</span></h2>","wb.dto.TITLE.34":"<h2><span>Our team</span></h2>","wb.dto.TITLE.35":"<h2 class=\"ql-align-center\"><span style=\"color: rgb(255, 255, 255);\">They talk about us...</span></h2>","wb.dto.TITLE.37":"<h2 class=\"ql-align-center\"><span>John Doe</span></h2>","wb.dto.TITLE.38":"<p class=\"ql-align-center\"><strong class=\"ql-size-large\">Create your online store</strong></p>","wb.dto.TITLE.39":"<h3 class=\"ql-align-center\"><strong class=\"ql-size-huge\">Lorem ipsum dolor sit amet, consectetur</strong></h3>","wb.dto.TITLE.4":"<h2><span>Lorem ipsum dolor sit amet, consectetur adipiscing elit.</span></h2>","wb.dto.TITLE.40":"<p class=\"ql-align-center\"><strong class=\"ql-size-large\">Lorem</strong></p>","wb.dto.TITLE.41":"<h3 class=\"ql-align-left\"><span class=\"ql-size-large\">Lorem ipsum dolor adipiscing elit. Aenean commodo</span></h3>","wb.dto.TITLE.42":"<p><strong class=\"ql-size-large\">Lorem ipsum dolor sit amet</strong></p>","wb.dto.TITLE.43":"<h3 class=\"ql-align-center\"><strong class=\"ql-size-large\">Lorem ipsum</strong></h3>","wb.dto.TITLE.5":"<h3 class=\"ql-align-center\"><strong class=\"ql-size-large\">Lorem ipsum</strong></h3>","wb.dto.TITLE.7":"<h2 class=\"ql-align-center\" ><span style=\"color: rgb(255, 255, 255);\">Your powerful title</span></h2>","wb.dto.TITLE.8":"<h2><strong class=\"ql-size-large\">Contact us</strong></h2>","wb.faq.1":"Add a question","wb.forms.FormsContentDto.1":"Spacing below","wb.forms.FormsContentDto.10":"Medium","wb.forms.FormsContentDto.11":"Large","wb.forms.FormsContentDto.12":"Fullscreen","wb.forms.FormsContentDto.13":"Space between the top of the page and the first content","wb.forms.FormsContentDto.14":"The speed of the parallax effect depends on the height of the image used. The greater the height, the greater the speed of the parallax effect.","wb.forms.FormsContentDto.15":"The block is <strong>display</strong>","wb.forms.FormsContentDto.16":"Block display","wb.forms.FormsContentDto.17":"The control buttons are <strong>hidden</strong>.","wb.forms.FormsContentDto.18":"The control buttons are <strong>display</strong>.","wb.forms.FormsContentDto.19":"Auto play is <strong>disabled</strong>.","wb.forms.FormsContentDto.2":"Maximum size of the WiziBlock","wb.forms.FormsContentDto.20":"Auto play is <strong>enabled</strong>.","wb.forms.FormsContentDto.21":"The sound is <strong>disabled</strong>","wb.forms.FormsContentDto.22":"The sound is <strong>enabled</strong>","wb.forms.FormsContentDto.23":"Looped playback is <strong>disabled</strong>.","wb.forms.FormsContentDto.24":"Looped playback is <strong>enabled</strong>.","wb.forms.FormsContentDto.25":"Navigation (in points) is <strong>hidden</strong>.","wb.forms.FormsContentDto.26":"Navigation (in points) is <strong>display</strong>.","wb.forms.FormsContentDto.27":"The parallax effect is <strong>classic</strong>.","wb.forms.FormsContentDto.28":"The parallax effect is <strong>reversed</strong>.","wb.forms.FormsContentDto.3":"Align buttons at the bottom of the content","wb.forms.FormsContentDto.4":"Hide block","wb.forms.FormsContentDto.5":"Width max of the wiziblock: 1024px","wb.forms.FormsContentDto.6":"Width max of the wiziblock: 1440px","wb.forms.FormsContentDto.7":"Width max of the wiziblock: 1920px","wb.forms.FormsContentDto.8":"Width of the wiziblock: Full screen","wb.forms.FormsContentDto.9":"Small","wb.forms.FormsContentDto.helpAutoplay":"For the video to start automatically, the sound must be deactivated. Please note that automatic playback is not available on mobile phones.","wb.forms.FormsContentDto.width":"Maximum size of the WiziBlock","wb.ImageMediaAndTextDto.content.1":"<h2 class=\"ql-align-center\" ><span style=\"color: rgb(255, 255, 255);\">Title</span></h2>","wb.img.adaptative":"Auto resize with the content","wb.loading":"Loading your WiziBlocks","wb.panel.html.1":"Open the WiziBlocks list","wb.panel.html.2":"Pin","wb.panel.html.3":"Unpin","wb.panel.html.4":"Hide","wb.productlist.1":"Selection","wb.productlist.2":"Special Offer","wb.productlist.3":"New","wb.productlist.4":"Flash Sale","wb.productlist.selection":"Selection","wb.quillHTML.TITLE":"wb.quillHTML.TITLE","wb.shared.components.amplifySearchCategory.1":"Guide: {{typeGuideName}}","wb.shared.components.amplifySearchCategory.2":"By name","wb.shared.components.amplifySearchProduct.1":"Select the type of store","wb.shared.components.amplifySearchProduct.2":"Remove product","wb.shared.components.quill.1":"Insert text","wb.shared.components.quill.2":"External?","wb.shared.components.quill.3":"Ok","wb.shared.components.quill.crypted":"Obfuscated link ?","wb.shared.components.quill.crypted_infobulle":"Link obfuscation is an advanced SEO technique that consists in hiding a link from search engine robots, while leaving it available for users. <a href=\"https://wizishop.com/blog/url-obfuscation\">Read more</a>","wb.shared.components.quill.title":"Insert a title","wb.shared.components.strucTureConfigFont.1":"Search with the name FontAwesome Ex : arrow-alt-right","wb.shared.components.strucTureConfigFont.2":"Random","wb.shared.components.strucTureConfigFont.3":"View all icons","wb.shared.components.strucTureConfigFont.4":"Recommended size : {{recommendedSize}}","wb.shared.components.strucTureConfigFont.5":"Or","wb.shared.components.strucTureConfigFont.6":"Select an image","wb.shared.components.strucTureConfigFont.7":"Click to edit the pictogram","wb.shared.components.structureSearchProduct.1":"By name, id or reference","wb.shared.components.structureSearchProduct.2":"Remove this product","wb.shared.components.structureSelect.1":"Select your form","wb.shared.components.structureTools.1":"Move WiziBlock","wb.shared.components.structureTools.2":"Down","wb.shared.components.structureTools.3":"Up","wb.shared.components.structureTools.4":"WiziBlock configuration","wb.shared.components.structureTools.5":"Duplicate","wb.shared.components.structureTools.6":"Hold to delete","wb.shared.directives.pictures.1":"Ideal size","wb.shared.directives.pictures.2":"Select an image","wb.shared.pipes.answerPipe.1":"Type not found","wb.shared.pipes.answerPipe.10":"Url","wb.shared.pipes.answerPipe.2":"Short answer","wb.shared.pipes.answerPipe.3":"Long answer","wb.shared.pipes.answerPipe.4":"Selection","wb.shared.pipes.answerPipe.5":"Option button","wb.shared.pipes.answerPipe.6":"Box to tick","wb.shared.pipes.answerPipe.7":"File","wb.shared.pipes.answerPipe.8":"Date","wb.shared.pipes.answerPipe.9":"Email address","wb.socialnetwork.help.link":"https://help.wizishop.com/hc/en-us/articles/360015882479-WiziBlocks-Social-networks","wb.structureconfig.tooltip.1":"Element configuration","wb.structures.amplify-product.text":"Product zoom","wb.structures.amplify-products-list.text":"Product list","wb.structures.code.text":"Code","wb.structures.faq.text":"FAQ","wb.structures.forms.text":"Form","wb.structures.images-texts.text":"Image and text","wb.structures.images.text":"One or several images","wb.structures.launch-videos.text":"Play video","wb.structures.map.text":"Map","wb.structures.newsletter.text":"Newsletter","wb.structures.onboarding.text":"WiziShop form","wb.structures.product.text":"Product zoom","wb.structures.products-list.text":"Product list","wb.structures.quotes.text":"Quote","wb.structures.rassurances.text":"Elements of reassurance","wb.structures.reviews.text":"Customer reviews","wb.structures.separator.text":"Block separator","wb.structures.sliders.text":"Slideshow","wb.structures.socials.text":"Social Networks","wb.structures.template.1":"Then search for a product","wb.structures.template.10":"Link on image","wb.structures.template.11":"https://www.mylink.com","wb.structures.template.12":"Open in a new tab","wb.structures.template.13":"Link text","wb.structures.template.14":"Link","wb.structures.template.15":"Button text","wb.structures.template.16":"Button link","wb.structures.template.17":"YouTube or Vimeo link:","wb.structures.template.18":"Ideal size: 1920x1080","wb.structures.template.19":"Search for your address:","wb.structures.template.2":"View product","wb.structures.template.20":"Search for a product","wb.structures.template.21":"Background picture","wb.structures.template.22":"Select another background image","wb.structures.template.23":"Order","wb.structures.template.24":"In stock","wb.structures.template.25":"Customized products selection","wb.structures.template.26":"Or a product selection","wb.structures.template.27":"Product selection","wb.structures.template.28":"No store reviews available","wb.structures.template.29":"View more reviews","wb.structures.template.3":"Display a title","wb.structures.template.30":"Add a slide","wb.structures.template.31":"Slideshow et image name (ALT tag)","wb.structures.template.32":"Login details of your Facebook page:","wb.structures.template.33":"Consult the help section","wb.structures.template.34":"Facebook","wb.structures.template.35":"Twitter","wb.structures.template.36":"Instagram","wb.structures.template.37":"Pinterest","wb.structures.template.38":"Facebook:","wb.structures.template.39":"Twitter:","wb.structures.template.4":"Then a selection of customized products","wb.structures.template.40":"Instagram:","wb.structures.template.41":"Pinterest:","wb.structures.template.42":"Add an image","wb.structures.template.43":"Image size: 300 x 300","wb.structures.template.44":"Calendar","wb.structures.template.45":"First connection","wb.structures.template.46":"Select the date and time for the end of the countdown","wb.structures.template.47":"Days","wb.structures.template.48":"Hours","wb.structures.template.49":"Minutes","wb.structures.template.5":"Or select a category","wb.structures.template.50":"Seconds","wb.structures.template.51":"Confirm","wb.structures.template.52":"Days","wb.structures.template.53":"Hrs","wb.structures.template.54":"Min","wb.structures.template.55":"Sec","wb.structures.template.56":"{{totalComments}} customer reviews","wb.structures.template.57":"Published on {{created_at}}","wb.structures.template.58":"Slide 0{{nb}}","wb.structures.template.59":"Image 0{{nb}}","wb.structures.template.6":"No product for this selection","wb.structures.template.60":"Select the total time of the countdown.\nIt will start independently for each visitor when they first connect.","wb.structures.template.61":"Confirm","wb.structures.template.62":"Slide name {{nb}}","wb.structures.template.63":"Insert an additional line","wb.structures.template.64":"Delete this row?","wb.structures.template.65":"Ok","wb.structures.template.8":"Select an image","wb.structures.template.9":"Image name (ALT tag)","wb.structures.text-backgrounds.text":"Text with background image","wb.structures.texts.text":"One or several texts","wb.structures.timer.text":"Countdown","wb.structures.videos.text":"Background video","wb.structures.witness.text":"Testimonials","wb.witness.imageDimension":"Ideal size: 80px x 80px"}
1
+ {"wb.AboutElementDto.author.1":"<h3 class=\"ql-align-center\">Lorem ipsum</h3>","wb.AboutElementDto.author.2":"<h4 class=\"ql-align-center\">Lorem</h4>","wb.AboutElementDto.content.1":"<p class=\"ql-align-center\"><span>Lorem ipsum dolor sit amet, consectetuer adipiscing elit. Aenean commodo ligula eget dolor</span></p>","wb.blocks.about-block.text":"Testimonials","wb.blocks.amplify-product-zoom-more.text":"Product zoom with enlarged image","wb.blocks.amplify-product-zoom-selected.text":"Product zoom with several images","wb.blocks.amplify-product-zoom-triple-column.text":"Product zoom with 3 columns","wb.blocks.amplify-product-zoom.text":"Product zoom","wb.blocks.amplify-products-list-classic.text":"Classic product list","wb.blocks.amplify-products-list-selected.text":"Product listing with emphazised product","wb.blocks.amplify-products-list-simple.text":"Refined list with hover over text","wb.blocks.code-html.text":"Add html code","wb.blocks.code-javascript.text":"Add javascript code","wb.blocks.code-stylesheet.text":"Add css code","wb.blocks.faq-accordion.text":"Expandable FAQ","wb.blocks.faq-frame.text":"FAQ with frame","wb.blocks.faq-list-icon.text":"FAQ list with icons","wb.blocks.faq-simple-background.text":"Simple FAQ with background","wb.blocks.faq-simple.text":"Simple FAQ","wb.blocks.FormContentDto.1":"Background color on the right","wb.blocks.FormContentDto.10":"The expandable mode allows you to reduce the display of your FAQ section by only showing the titles. When your visitors click on a title, the content displays automatically.","wb.blocks.FormContentDto.100":"Double","wb.blocks.FormContentDto.101":"None","wb.blocks.FormContentDto.102":"Space in the content","wb.blocks.FormContentDto.103":"Redirect form to onboarding?","wb.blocks.FormContentDto.104":"1","wb.blocks.FormContentDto.105":"2","wb.blocks.FormContentDto.106":"3","wb.blocks.FormContentDto.107":"Link on the left text","wb.blocks.FormContentDto.108":"Link on the left text","wb.blocks.FormContentDto.109":"Open the left link in a new tab","wb.blocks.FormContentDto.11":"Background color","wb.blocks.FormContentDto.110":"Open the right-hand link in a new tab","wb.blocks.FormContentDto.111":"Color of link arrows","wb.blocks.FormContentDto.112":"Banner background color","wb.blocks.FormContentDto.113":"Parallax effect speed","wb.blocks.FormContentDto.114":"Reverse parallax effect","wb.blocks.FormContentDto.115":"Slow","wb.blocks.FormContentDto.116":"Normal","wb.blocks.FormContentDto.117":"Fast","wb.blocks.FormContentDto.118":"Wiziblock ID","wb.blocks.FormContentDto.119":"Without spaces, put dashes (- or _) between words","wb.blocks.FormContentDto.12":"Color of the shade (active FAQ)","wb.blocks.FormContentDto.120":"Centre the text","wb.blocks.FormContentDto.121":"Centre the text horizontally if possible. If the text is too wide, it will automatically take up all the space.","wb.blocks.FormContentDto.122":"Visible","wb.blocks.FormContentDto.123":"Hidden","wb.blocks.FormContentDto.124":"Change the background colour of left nav","wb.blocks.FormContentDto.125":"Disable the shadow","wb.blocks.FormContentDto.126":"Days","wb.blocks.FormContentDto.127":"Hours","wb.blocks.FormContentDto.128":"Minutes","wb.blocks.FormContentDto.129":"Seconds","wb.blocks.FormContentDto.13":"Icon color","wb.blocks.FormContentDto.14":"WiziBlock height","wb.blocks.FormContentDto.15":"Size","wb.blocks.FormContentDto.16":"Full-page display (width)","wb.blocks.FormContentDto.17":"Add a parallax effect","wb.blocks.FormContentDto.18":"YouTube or Vimeo link","wb.blocks.FormContentDto.19":"Mute","wb.blocks.FormContentDto.2":"Button text","wb.blocks.FormContentDto.20":"Text and button color","wb.blocks.FormContentDto.21":"Button text color","wb.blocks.FormContentDto.22":"Button background color","wb.blocks.FormContentDto.23":"Facebook","wb.blocks.FormContentDto.24":"Twitter","wb.blocks.FormContentDto.25":"Pinterest","wb.blocks.FormContentDto.26":"Instagram","wb.blocks.FormContentDto.27":"Default text (displayed in the form)","wb.blocks.FormContentDto.28":"Background color","wb.blocks.FormContentDto.29":"Button color","wb.blocks.FormContentDto.3":"Number of lines of products","wb.blocks.FormContentDto.30":"Font color","wb.blocks.FormContentDto.31":"Color of Icon N°1","wb.blocks.FormContentDto.32":"Color of Icon N°2","wb.blocks.FormContentDto.33":"Color of Icon N°3","wb.blocks.FormContentDto.34":"Color of Icon N°4","wb.blocks.FormContentDto.35":"Background color","wb.blocks.FormContentDto.36":"Quote color","wb.blocks.FormContentDto.37":"Author color","wb.blocks.FormContentDto.38":"Quote","wb.blocks.FormContentDto.39":"Your quote","wb.blocks.FormContentDto.4":"test","wb.blocks.FormContentDto.40":"Author","wb.blocks.FormContentDto.41":"Quote's author","wb.blocks.FormContentDto.42":"Link on Icon N°1","wb.blocks.FormContentDto.43":"https://www.yourlink.com","wb.blocks.FormContentDto.44":"Open in a new tab","wb.blocks.FormContentDto.45":"Link on Icon N°2","wb.blocks.FormContentDto.46":"Link on Icon N°3","wb.blocks.FormContentDto.47":"Link on Icon N°4","wb.blocks.FormContentDto.48":"Title, score and author color","wb.blocks.FormContentDto.49":"Review and date color","wb.blocks.FormContentDto.5":"Arrow color","wb.blocks.FormContentDto.50":"Stars color","wb.blocks.FormContentDto.51":"Star background color","wb.blocks.FormContentDto.52":"Display link to reviews","wb.blocks.FormContentDto.53":"Reviews background color","wb.blocks.FormContentDto.54":"Color","wb.blocks.FormContentDto.55":"Style","wb.blocks.FormContentDto.57":"Height","wb.blocks.FormContentDto.58":"Width","wb.blocks.FormContentDto.6":"Questions background color","wb.blocks.FormContentDto.60":"Time between each slide (in milliseconds)","wb.blocks.FormContentDto.62":"Image navigation display (points)","wb.blocks.FormContentDto.63":"Login details of your Facebook page","wb.blocks.FormContentDto.65":"https://www.facebook.com/mapage","wb.blocks.FormContentDto.66":"https://www.twitter.com/mapage","wb.blocks.FormContentDto.67":"https://www.instagram.com/mapage","wb.blocks.FormContentDto.68":"https://www.pinterest.com/mapage","wb.blocks.FormContentDto.69":"Space around content","wb.blocks.FormContentDto.7":"Answers background color","wb.blocks.FormContentDto.70":"Background color on the left","wb.blocks.FormContentDto.71":"Background color on the right","wb.blocks.FormContentDto.72":"Background color of middle left section","wb.blocks.FormContentDto.73":"Background color of middle right section","wb.blocks.FormContentDto.74":"Number key n°1","wb.blocks.FormContentDto.75":"Enter a number","wb.blocks.FormContentDto.76":"Number key n°2","wb.blocks.FormContentDto.77":"Number key n°3","wb.blocks.FormContentDto.78":"Number key n°4","wb.blocks.FormContentDto.79":"Background color of middle section","wb.blocks.FormContentDto.8":"Border color","wb.blocks.FormContentDto.80":"Text color","wb.blocks.FormContentDto.81":"Background color bottom left","wb.blocks.FormContentDto.82":"Button link","wb.blocks.FormContentDto.83":"Open link in another tab","wb.blocks.FormContentDto.84":"Display control buttons","wb.blocks.FormContentDto.85":"Autoplay (sound will be muted)","wb.blocks.FormContentDto.86":"Play on a loop","wb.blocks.FormContentDto.87":"Slides background color","wb.blocks.FormContentDto.88":"Color of slide border","wb.blocks.FormContentDto.89":"Separator color","wb.blocks.FormContentDto.9":"Expandable mode","wb.blocks.FormContentDto.90":"Background color of the center left section","wb.blocks.FormContentDto.91":"Background color of the center right section","wb.blocks.FormContentDto.92":"Background color in the center","wb.blocks.FormContentDto.93":"<a href=\"https://aide.wizishop.fr/articles/3077986-wiziblocks-reseaux-sociaux\" target=\"_blank\">Consult the help center</a>","wb.blocks.FormContentDto.94":"Small","wb.blocks.FormContentDto.95":"Medium","wb.blocks.FormContentDto.96":"Large","wb.blocks.FormContentDto.97":"Solid","wb.blocks.FormContentDto.98":"Point","wb.blocks.FormContentDto.99":"Dash","wb.blocks.FormContentDto.huge":"Huge","wb.blocks.forms-background.text":"Form with background color","wb.blocks.forms-imageleft.text":"Form with image on the left","wb.blocks.forms-imageright.text":"Form with image on the right","wb.blocks.forms-onboarding.text":"WiziShop onboarding form","wb.blocks.forms-simple.text":"Simple form","wb.blocks.html.1":"Quick Preview","wb.blocks.html.2":"Deactivate Preview","wb.blocks.images-banner.text":"Simple banner","wb.blocks.images-big-and-double.text":"A large image + 2 images on the right","wb.blocks.images-bigs-and-double-middle.text":"An image + 2 images + an image","wb.blocks.images-double.text":"Two images","wb.blocks.images-quadruple-left-one-right.text":"Four images on the left and an image on the right","wb.blocks.images-quadruple.text":"Four images","wb.blocks.images-simple.text":"Simple image","wb.blocks.images-texts-big-left-text-right.text":"Large image with text on the right","wb.blocks.images-texts-big-right-text-left.text":"Large image with text on the left","wb.blocks.images-texts-left-text-right.text":"Regular image with text on the right","wb.blocks.images-texts-one-text-one.text":"Image - Text - Image","wb.blocks.images-texts-right-text-left.text":"Regular image with text on the left","wb.blocks.images-texts-small-left-text-right.text":"Small image with text on the right","wb.blocks.images-texts-small-right-text-left.text":"Small image with text on the left","wb.blocks.images-texts-text-one-text.text":"Text - Image - Text","wb.blocks.images-triple.text":"Three images","wb.blocks.images.fourImagesTitle":"Four images with the title underneath","wb.blocks.images.twoTitleText":"Two images with title and text underneath","wb.blocks.launch-videos-button.text":"Play with button","wb.blocks.launch-videos-buttontxt.text":"Play with text and button","wb.blocks.map-background-form-left.text":"Map with background image and form on the left","wb.blocks.map-background-form-right.text":"Map with background image and form on the right","wb.blocks.map-fullpage.text":"Full-screen map","wb.blocks.map-left-text.text":"Map with text on the left","wb.blocks.map-right-text.text":"Map with text on the right","wb.blocks.map-text-form.text":"Map with text and form","wb.blocks.newsletter-aligned-center-background.text":"Newsletter subscription aligned in the center with background","wb.blocks.newsletter-aligned-center-image.text":"Newsletter subscription aligned in the center with image","wb.blocks.newsletter-center-image-instagram.text":"Subscription with image and Instagram timeline","wb.blocks.newsletter-center-image.text":"Newsletter subscription with image and text centered","wb.blocks.product-zoom-complete-background.text":"Zoom with info and background image","wb.blocks.product-zoom-complete-slider.text":"Zoom with info and highlighted product","wb.blocks.product-zoom-complete.text":"Product zoom with info","wb.blocks.product-zoom-more.text":"Product zoom with enlarged image","wb.blocks.product-zoom-selected.text":"Product zoom with several images","wb.blocks.product-zoom-simple.text":"Simple product zoom","wb.blocks.product-zoom-triple-column.text":"Product zoom with 3 columns","wb.blocks.product-zoom.text":"Product zoom","wb.blocks.products-list-classic.text":"Classic product listing","wb.blocks.products-list-selected.text":"Product listing with a highlighted product","wb.blocks.products-list-simple.text":"Refined list with text when hovering over","wb.blocks.quotes-author.text":"Quote with author's photo","wb.blocks.quotes-simple-background.text":"Simple quote with image","wb.blocks.quotes-simple.text":"Simple quote","wb.blocks.rassurances-quadruple-aligned.text":"4 reassurance elements aligned","wb.blocks.rassurances-quadruple-background.text":"4 reassurance elements with background image","wb.blocks.rassurances-triple-background.text":"3 reassurance elements with background image","wb.blocks.reviews-simple.text":"Classic customer review","wb.blocks.reviews-waterfall.text":"Cascading customer reviews","wb.blocks.separator-simple.text":"Simple block separator","wb.blocks.sliders-double-imageright.text":"Slideshow with two images on the right","wb.blocks.sliders-fullpage.text":"Simple slideshow","wb.blocks.sliders-imageright.text":"Slideshow with an image on the right","wb.blocks.sliders-leftnav.text":"Slideshow with navigation on the left","wb.blocks.sliders-with-banner.text":"Full page slideshow and banner below","wb.blocks.socials-instagram-left.text":"Instagram timeline with image on the left","wb.blocks.socials-instagram.text":"Instagram timeline","wb.blocks.socials-like.text":"Like box","wb.blocks.socials-network.text":"Share buttons","wb.blocks.socials-page-complex.text":"Complex page","wb.blocks.socials-page-simple.text":"Simple page","wb.blocks.text-backgrounds-four-rows-icon-text.text":"Four rows of images with picto and text","wb.blocks.text-backgrounds-link.text":"Four images framed with title and text","wb.blocks.text-backgrounds-simple.text":"Simple text","wb.blocks.text-backgrounds-three-rows-icon-text.text":"Three rows of images with pictogram and text","wb.blocks.text-backgrounds-two-rows-icon-text.text":"Two rows of images with picto and text","wb.blocks.text-backgrounds-with-banner":"Simple text and banner underneath","wb.blocks.text-backgrounds-with-txt.text":"Text with background","wb.blocks.texts-double-background.text":"Two text columns with background","wb.blocks.texts-double.text":"Two text columns","wb.blocks.texts-one-background.text":"One text column with background","wb.blocks.texts-one.text":"One text column","wb.blocks.texts-quadruple-background.text":"Four text columns with background","wb.blocks.texts-quadruple-numbers.text":"Four dynamic key numbers","wb.blocks.texts-quadruple.text":"Four text columns","wb.blocks.texts-triple-background.text":"Three text columns with background","wb.blocks.texts-triple.text":"Three text columns","wb.blocks.timer-airport.text":"Airport-style countdown","wb.blocks.timer-background.text":"Framed countdown with image","wb.blocks.timer-clock.text":"Countdown clock with image","wb.blocks.timer-multiple-img.text":"Countdown with multiple images","wb.blocks.timer-simple.text":"Simple countdown","wb.blocks.videos-simple.text":"Simple video","wb.blocks.videos-txt-content.text":"Video with text in content","wb.blocks.videos-txt-left.text":"Video with text on the left","wb.blocks.videos-txt.text":"Video with text","wb.blocks.witness-background-double.text":"2 testimonials with background","wb.blocks.witness-background-one.text":"Testimony with background","wb.blocks.witness-quadruple.text":"4 testimonials","wb.blocks.witness-triple.text":"3 testimonials","wb.blocks.witness-twice.text":"2 testimonials","wb.class_custom.help":"Separate the different CSS classes with a space","wb.class_custom.label":"Add custom css classes","wb.configs.translations.1":"List of WiziBlocks","wb.configs.translations.2":"Website header","wb.configs.translations.3":"Footer","wb.configs.translations.4":"Choose your layout","wb.configs.translations.5":"Configuration","wb.configs.translations.6":"Select a component","wb.configs.translations.7":"Create your homepage thanks to the WiziBlocks.","wb.dto.ADDRESS.9":"<p><span class=\"ql-size-large\" style=\"color: rgb(68, 68, 68);\">Your address<br/>New York</span></p>","wb.dto.AUTHOR.18":"Name","wb.dto.AUTHOR.36":"<h3 class=\"ql-align-center\"><span>John Doe</span></h3>","wb.dto.BUTTON_TEXT.14":"Subscribe","wb.dto.BUTTON_TEXT.6":"View the video","wb.dto.BUTTON.15":"Test for free","wb.dto.CONTENT.1":"<p><span style=\"color: rgb(68, 68, 68);\">Lorem ipsum dolor sit amet, consectetur adipiscing elit. Vestibulum mollis turpis ex, eu convallis turpis ultrices in. Aenean varius nulla id maximus pellentesque. Integer mattis est enim, sit amet feugiat odio gravida","wb.dto.CONTENT.10":"<p class=\"ql-align-center\"><span style=\"color: rgb(255, 255, 255);\">Lorem ipsum dolor sit amet, consectetur adipiscing elit. Duis vel lorem a est dictum ultrices ut a orci.</span></p>","wb.dto.CONTENT.11":"<p class=\"ql-align-center\"><strong class=\"ql-size-small\" style=\"color: rgb(255, 255, 255);\">Payment 100% secured</strong></p>","wb.dto.CONTENT.12":"<p class=\"ql-align-center\"><span style=\"color: rgb(255, 255, 255);\">Lorem ipsum dolor sit amet, consectetur adipiscing elit. Vestibulum mollis turpis ex, eu convallis","wb.dto.CONTENT.13":"<p class=\"ql-align-center\"><strong class=\"ql-size-small\">Payment 100% secured</strong></p>","wb.dto.CONTENT.14":"<p class=\"ql-align-center\"><strong class=\"ql-size-small\">Tracked delivery 100% FREE</strong></p>","wb.dto.CONTENT.15":"<p><strong class=\"ql-size-small\">Lorem ipsum</strong> <strong class=\"ql-size-small\" style=\"color: rgb(240, 102, 102);\">dolor</strong> <strong class=\"ql-size-small\">sit amet</strong></p>","wb.dto.CONTENT.16":"<p><strong class=\"ql-size-small\">Lorem </strong><strong class=\"ql-size-small\" style=\"color: rgb(240, 102, 102);\">ipsum</strong><strong class=\"ql-size-small\"> dolor sit amet</strong></p>","wb.dto.CONTENT.17":"<p><span style=\"color: rgb(68, 68, 68);\">Lorem ipsum dolor sit amet, consectetur adipiscing elit. Vestibulum mollis turpis ex,</span></p>","wb.dto.CONTENT.18":"<p><span style=\"color: rgb(68, 68, 68);\">Lorem ipsum dolor sit amet, consectetur adipiscing elit. Vestibulum mollis turpis ex, eu convallis","wb.dto.CONTENT.19":"Don't try to be original, make sure you are good.","wb.dto.CONTENT.2":"<p class=\"ql-align-center\"><span style=\"color: rgb(68, 68, 68);\">Lorem ipsum dolor sit amet, consectetur adipiscing elit. Vestibulum mollis turpis ex, eu convallis turpis ultrices in. Aenean varius nulla id maximus pellentesque. Integer mattis est enim, sit amet feugiat odio gravida","wb.dto.CONTENT.20":"<p><span>Secured payment</span></p>","wb.dto.CONTENT.21":"<p><span>Shipping & Fast delivery</span></p>","wb.dto.CONTENT.22":"<p><span>Supporting you 24/7!</span></p>","wb.dto.CONTENT.23":"<p><span>7 days to change your mind</span></p>","wb.dto.CONTENT.24":"<p><span style=\"color: rgb(255, 255, 255);\">Secured payment</span></p>","wb.dto.CONTENT.25":"<p><span style=\"color: rgb(255, 255, 255);\">Shipping & Fast delivery</span></p>","wb.dto.CONTENT.26":"<p><span style=\"color: rgb(255, 255, 255);\">Supporting you 24/7!</span></p>","wb.dto.CONTENT.27":"<p><span style=\"color: rgb(255, 255, 255);\">7 days to change your mind</span></p>","wb.dto.CONTENT.28":"<p class=\"ql-align-center\"><span style=\"color: rgb(255, 255, 255);\">Lorem ipsum dolor sit amet, consectetur adipiscing elit. Suspendisse congue consectetur porta</span></p>","wb.dto.CONTENT.29":"<h2 class=\"ql-align-center\" ><span style=\"color: rgb(255, 255, 255);\">Lorem ipsum dolor sit amet, consectetur adipiscing elit.</span></h2>","wb.dto.CONTENT.3":"<div>\n Your elements\n</div>","wb.dto.CONTENT.30":"<p class=\"ql-align-center\"><span>Key numbers</span></p>","wb.dto.CONTENT.31":"<p class=\"ql-align-center\"><span style=\"color: rgb(0, 0, 0);\">Lorem ipsum dolor sit amet, consectetur adipiscing elit. Suspendisse congue consectetur porta</span></p>","wb.dto.CONTENT.32":"<p class=\"ql-align-center\"><span style=\"color: rgb(39, 35, 43);\">LOREM IPSUM DOLOR SIT AMET</span></p>","wb.dto.CONTENT.33":"<p>Lorem ipsum dolor sit amet, consectetur adipiscing elit. Pellentesque suscipit sollicitudin magna, nec sodales massa mattis nec.","wb.dto.CONTENT.34":"<p class=\"ql-align-center\"><span style=\"color: rgb(255, 255, 255);\">Your content here</span></p>","wb.dto.CONTENT.35":"<p class=\"ql-align-center\"><span>Lorem ipsum dolor sit amet, consectetuer adipiscing elit. Aenean commodo ligula eget dolor. Aenean massa.","wb.dto.CONTENT.36":"<p class=\"ql-align-center\"><span>Sed auctor ullamcorper mi, sit amet accumsan nisi scelerisque ut. Integer sed neque ac leo eleifend blandit.","wb.dto.CONTENT.37":"<p><span>Lorem ipsum dolor sit amet, consectetuer adipiscing elit. Aenean commodo ligula eget dolor. Aenean massa.","wb.dto.CONTENT.4":"alert(\"Your javascript code\");","wb.dto.CONTENT.5":".yourElements { \n background-color: white; \n }","wb.dto.CONTENT.6":"<p><span>Write the answer.</span></p>","wb.dto.CONTENT.7":"<p><span>Lorem ipsum dolor sit amet, consectetur adipiscing elit. Suspendisse congue consectetur porta</span></p>","wb.dto.CONTENT.8":"<p class=\"ql-align-center\"><span>Lorem ipsum dolor sit amet, consectetur adipiscing elit. Suspendisse congue consectetur porta</span></p>","wb.dto.CONTENT.9":"<p class=\"ql-align-center\"><span style=\"color: rgb(255, 255, 255);\">Your content</span></p>","wb.dto.EMAIL.11":"<p><span class=\"ql-size-large\" style=\"color: rgb(68, 68, 68);\">youremail@email.com</span></p>","wb.dto.PADDING.1":"Spacing between texts","wb.dto.PHONE.10":"<p><span class=\"ql-size-large\" style=\"color: rgb(68, 68, 68);\">(555) 555-XXXX</span></p>","wb.dto.PLACEHOLDER.13":"Enter your email address","wb.dto.TEXT.1":"Discover the offer","wb.dto.TEXT.2":"<p class=\"ql-align-center\"><span>Lorem ipsum dolor sit amet, consectetuer</span></p>","wb.dto.TEXT.3":"<p>Lorem ipsum dolor sit amet, consectetuer adipiscing elit. Aenean commodo ligula eget dolor.</p>","wb.dto.TITLE.1":"<p class=\"ql-align-center\"><strong class=\"ql-size-large ql-custom-uppercase\">The best sellers</strong></p>","wb.dto.TITLE.12":"<h2 class=\"ql-align-right\"><span style=\"color: rgb(255, 255, 255);\">Subscribe to the newsletter</span></h2>","wb.dto.TITLE.15":"<h2 class=\"ql-align-center\"><span style=\"color: rgb(255, 255, 255);\">Subscribe to the newsletter</span></h2>","wb.dto.TITLE.16":"<strong><span style=\"color: rgb(68, 68, 68);\">Argument 01</span></strong>","wb.dto.TITLE.17":"<strong><span style=\"color: rgb(68, 68, 68);\">Argument 02</span></strong>","wb.dto.TITLE.19":"<h3><span>Payment</span></h3>","wb.dto.TITLE.2":"Write your question.","wb.dto.TITLE.20":"<h3><span>Fast delivery</span></h3>","wb.dto.TITLE.21":"<h3><span>Customer service</span></h3>","wb.dto.TITLE.22":"<h3><span>Money-back guarantee</span></h3>","wb.dto.TITLE.23":"<h3><span style=\"color: rgb(255, 255, 255);\">Payment</span></h3>","wb.dto.TITLE.24":"<h3><span style=\"color: rgb(255, 255, 255);\">Fast delivery</span></h3>","wb.dto.TITLE.25":"<h3><span style=\"color: rgb(255, 255, 255);\">Customer Service</span></h3>","wb.dto.TITLE.26":"<h3><span style=\"color: rgb(255, 255, 255);\">Money-back guarantee</span></h3>","wb.dto.TITLE.27":"<h3 class=\"ql-align-center\"><span style=\"color: rgb(255, 255, 255);\">Lorem ipsum dolor sit amet</span></h3>","wb.dto.TITLE.28":"<p class=\"ql-align-center\"><strong class=\"ql-size-large ql-custom-uppercase\">Store's score</strong></p>","wb.dto.TITLE.29":"26000","wb.dto.TITLE.3":"<h2><span>Lorem ipsum dolor sit amet</span></h2>","wb.dto.TITLE.30":"<h2 class=\"ql-align-center\" ><span style=\"color: rgb(0, 0, 0);\">Lorem ipsum dolor sit amet, consectetur adipiscing elit.</span></h2>","wb.dto.TITLE.31":"Lorem ipsum dolor","wb.dto.TITLE.32":"<h2>Lorem Ipsum</h2>","wb.dto.TITLE.33":"<h2 class=\"ql-align-center\" ><span style=\"color: rgb(255, 255, 255);\">Your title</span></h2>","wb.dto.TITLE.34":"<h2><span>Our team</span></h2>","wb.dto.TITLE.35":"<h2 class=\"ql-align-center\"><span style=\"color: rgb(255, 255, 255);\">They talk about us...</span></h2>","wb.dto.TITLE.37":"<h2 class=\"ql-align-center\"><span>John Doe</span></h2>","wb.dto.TITLE.38":"<p class=\"ql-align-center\"><strong class=\"ql-size-large\">Create your online store</strong></p>","wb.dto.TITLE.39":"<h3 class=\"ql-align-center\"><strong class=\"ql-size-huge\">Lorem ipsum dolor sit amet, consectetur</strong></h3>","wb.dto.TITLE.4":"<h2><span>Lorem ipsum dolor sit amet, consectetur adipiscing elit.</span></h2>","wb.dto.TITLE.40":"<p class=\"ql-align-center\"><strong class=\"ql-size-large\">Lorem</strong></p>","wb.dto.TITLE.41":"<h3 class=\"ql-align-left\"><span class=\"ql-size-large\">Lorem ipsum dolor adipiscing elit. Aenean commodo</span></h3>","wb.dto.TITLE.42":"<p><strong class=\"ql-size-large\">Lorem ipsum dolor sit amet</strong></p>","wb.dto.TITLE.43":"<h3 class=\"ql-align-center\"><strong class=\"ql-size-large\">Lorem ipsum</strong></h3>","wb.dto.TITLE.5":"<h3 class=\"ql-align-center\"><strong class=\"ql-size-large\">Lorem ipsum</strong></h3>","wb.dto.TITLE.7":"<h2 class=\"ql-align-center\" ><span style=\"color: rgb(255, 255, 255);\">Your powerful title</span></h2>","wb.dto.TITLE.8":"<h2><strong class=\"ql-size-large\">Contact us</strong></h2>","wb.faq.1":"Add a question","wb.forms.FormsContentDto.1":"Spacing below","wb.forms.FormsContentDto.10":"Medium","wb.forms.FormsContentDto.11":"Large","wb.forms.FormsContentDto.12":"Fullscreen","wb.forms.FormsContentDto.13":"Space between the top of the page and the first content","wb.forms.FormsContentDto.14":"The speed of the parallax effect depends on the height of the image used. The greater the height, the greater the speed of the parallax effect.","wb.forms.FormsContentDto.15":"The block is <strong>display</strong>","wb.forms.FormsContentDto.16":"Block display","wb.forms.FormsContentDto.17":"The control buttons are <strong>hidden</strong>.","wb.forms.FormsContentDto.18":"The control buttons are <strong>display</strong>.","wb.forms.FormsContentDto.19":"Auto play is <strong>disabled</strong>.","wb.forms.FormsContentDto.2":"Maximum size of the WiziBlock","wb.forms.FormsContentDto.20":"Auto play is <strong>enabled</strong>.","wb.forms.FormsContentDto.21":"The sound is <strong>disabled</strong>","wb.forms.FormsContentDto.22":"The sound is <strong>enabled</strong>","wb.forms.FormsContentDto.23":"Looped playback is <strong>disabled</strong>.","wb.forms.FormsContentDto.24":"Looped playback is <strong>enabled</strong>.","wb.forms.FormsContentDto.25":"Navigation (in points) is <strong>hidden</strong>.","wb.forms.FormsContentDto.26":"Navigation (in points) is <strong>display</strong>.","wb.forms.FormsContentDto.27":"The parallax effect is <strong>classic</strong>.","wb.forms.FormsContentDto.28":"The parallax effect is <strong>reversed</strong>.","wb.forms.FormsContentDto.3":"Align buttons at the bottom of the content","wb.forms.FormsContentDto.4":"Hide block","wb.forms.FormsContentDto.5":"Width max of the wiziblock: 1024px","wb.forms.FormsContentDto.6":"Width max of the wiziblock: 1440px","wb.forms.FormsContentDto.7":"Width max of the wiziblock: 1920px","wb.forms.FormsContentDto.8":"Width of the wiziblock: Full screen","wb.forms.FormsContentDto.9":"Small","wb.forms.FormsContentDto.helpAutoplay":"For the video to start automatically, the sound must be deactivated. Please note that automatic playback is not available on mobile phones.","wb.forms.FormsContentDto.width":"Maximum size of the WiziBlock","wb.ImageMediaAndTextDto.content.1":"<h2 class=\"ql-align-center\" ><span style=\"color: rgb(255, 255, 255);\">Title</span></h2>","wb.img.adaptative":"Auto resize with the content","wb.loading":"Loading your WiziBlocks","wb.panel.html.1":"Open the WiziBlocks list","wb.panel.html.2":"Pin","wb.panel.html.3":"Unpin","wb.panel.html.4":"Hide","wb.productlist.1":"Selection","wb.productlist.2":"Special Offer","wb.productlist.3":"New","wb.productlist.4":"Flash Sale","wb.productlist.selection":"Selection","wb.quillHTML.TITLE":"wb.quillHTML.TITLE","wb.shared.components.amplifySearchCategory.1":"Guide: {{typeGuideName}}","wb.shared.components.amplifySearchCategory.2":"By name","wb.shared.components.amplifySearchProduct.1":"Select the type of store","wb.shared.components.amplifySearchProduct.2":"Remove product","wb.shared.components.quill.1":"Insert text","wb.shared.components.quill.2":"External?","wb.shared.components.quill.3":"Ok","wb.shared.components.quill.crypted":"Obfuscated link ?","wb.shared.components.quill.crypted_infobulle":"Link obfuscation is an advanced SEO technique that consists in hiding a link from search engine robots, while leaving it available for users. <a href=\"https://wizishop.com/blog/url-obfuscation\">Read more</a>","wb.shared.components.quill.title":"Insert a title","wb.shared.components.strucTureConfigFont.1":"Search with the name FontAwesome Ex : arrow-alt-right","wb.shared.components.strucTureConfigFont.2":"Random","wb.shared.components.strucTureConfigFont.3":"View all icons","wb.shared.components.strucTureConfigFont.4":"Recommended size : {{recommendedSize}}","wb.shared.components.strucTureConfigFont.5":"Or","wb.shared.components.strucTureConfigFont.6":"Select an image","wb.shared.components.strucTureConfigFont.7":"Click to edit the pictogram","wb.shared.components.structureSearchProduct.1":"By name, id or reference","wb.shared.components.structureSearchProduct.2":"Remove this product","wb.shared.components.structureSelect.1":"Select your form","wb.shared.components.structureTools.1":"Move WiziBlock","wb.shared.components.structureTools.2":"Down","wb.shared.components.structureTools.3":"Up","wb.shared.components.structureTools.4":"WiziBlock configuration","wb.shared.components.structureTools.5":"Duplicate","wb.shared.components.structureTools.6":"Hold to delete","wb.shared.directives.pictures.1":"Ideal size","wb.shared.directives.pictures.2":"Select an image","wb.shared.pipes.answerPipe.1":"Type not found","wb.shared.pipes.answerPipe.10":"Url","wb.shared.pipes.answerPipe.2":"Short answer","wb.shared.pipes.answerPipe.3":"Long answer","wb.shared.pipes.answerPipe.4":"Selection","wb.shared.pipes.answerPipe.5":"Option button","wb.shared.pipes.answerPipe.6":"Box to tick","wb.shared.pipes.answerPipe.7":"File","wb.shared.pipes.answerPipe.8":"Date","wb.shared.pipes.answerPipe.9":"Email address","wb.socialnetwork.help.link":"https://help.wizishop.com/hc/en-us/articles/360015882479-WiziBlocks-Social-networks","wb.structureconfig.tooltip.1":"Element configuration","wb.structures.amplify-product.text":"Product zoom","wb.structures.amplify-products-list.text":"Product list","wb.structures.code.text":"Code","wb.structures.faq.text":"FAQ","wb.structures.forms.text":"Form","wb.structures.images-texts.text":"Image and text","wb.structures.images.text":"One or several images","wb.structures.launch-videos.text":"Play video","wb.structures.map.text":"Map","wb.structures.newsletter.text":"Newsletter","wb.structures.onboarding.text":"WiziShop form","wb.structures.product.text":"Product zoom","wb.structures.products-list.text":"Product list","wb.structures.quotes.text":"Quote","wb.structures.rassurances.text":"Elements of reassurance","wb.structures.reviews.text":"Customer reviews","wb.structures.separator.text":"Block separator","wb.structures.sliders.text":"Slideshow","wb.structures.socials.text":"Social Networks","wb.structures.template.1":"Then search for a product","wb.structures.template.10":"Link on image","wb.structures.template.11":"https://www.mylink.com","wb.structures.template.12":"Open in a new tab","wb.structures.template.13":"Link text","wb.structures.template.14":"Link","wb.structures.template.15":"Button text","wb.structures.template.16":"Button link","wb.structures.template.17":"YouTube or Vimeo link:","wb.structures.template.18":"Ideal size: 1920x1080","wb.structures.template.19":"Search for your address:","wb.structures.template.2":"View product","wb.structures.template.20":"Search for a product","wb.structures.template.21":"Background picture","wb.structures.template.22":"Select another background image","wb.structures.template.23":"Order","wb.structures.template.24":"In stock","wb.structures.template.25":"Customized products selection","wb.structures.template.26":"Or a product selection","wb.structures.template.27":"Product selection","wb.structures.template.28":"No store reviews available","wb.structures.template.29":"View more reviews","wb.structures.template.3":"Display a title","wb.structures.template.30":"Add a slide","wb.structures.template.31":"Slideshow et image name (ALT tag)","wb.structures.template.32":"Login details of your Facebook page:","wb.structures.template.33":"Consult the help section","wb.structures.template.34":"Facebook","wb.structures.template.35":"Twitter","wb.structures.template.36":"Instagram","wb.structures.template.37":"Pinterest","wb.structures.template.38":"Facebook:","wb.structures.template.39":"Twitter:","wb.structures.template.4":"Then a selection of customized products","wb.structures.template.40":"Instagram:","wb.structures.template.41":"Pinterest:","wb.structures.template.42":"Add an image","wb.structures.template.43":"Image size: 300 x 300","wb.structures.template.44":"Calendar","wb.structures.template.45":"First connection","wb.structures.template.46":"Select the date and time for the end of the countdown","wb.structures.template.47":"Days","wb.structures.template.48":"Hours","wb.structures.template.49":"Minutes","wb.structures.template.5":"Or select a category","wb.structures.template.50":"Seconds","wb.structures.template.51":"Confirm","wb.structures.template.52":"Days","wb.structures.template.53":"Hrs","wb.structures.template.54":"Min","wb.structures.template.55":"Sec","wb.structures.template.56":"{{totalComments}} customer reviews","wb.structures.template.57":"Published on {{created_at}}","wb.structures.template.58":"Slide 0{{nb}}","wb.structures.template.59":"Image 0{{nb}}","wb.structures.template.6":"No product for this selection","wb.structures.template.60":"Select the total time of the countdown.\nIt will start independently for each visitor when they first connect.","wb.structures.template.61":"Confirm","wb.structures.template.62":"Slide name {{nb}}","wb.structures.template.63":"Insert an additional line","wb.structures.template.64":"Delete this row?","wb.structures.template.65":"Ok","wb.structures.template.8":"Select an image","wb.structures.template.9":"Image name (ALT tag)","wb.structures.text-backgrounds.text":"Text with background image","wb.structures.texts.text":"One or several texts","wb.structures.timer.text":"Countdown","wb.structures.videos.text":"Background video","wb.structures.witness.text":"Testimonials","wb.witness.imageDimension":"Ideal size: 80px x 80px"}
@@ -121,6 +121,7 @@ export class ProductsListClassicComponent extends StructuresComponent {
121
121
  this.formatPrice = [];
122
122
  this.apiService.getCatalogSpecific(prodIds, 12).subscribe((catalogList) => {
123
123
  this.catalogSelection = catalogList;
124
+ this.removeUnavailable();
124
125
  for (let item of catalogList.products) {
125
126
  this.formatPrice.push(new Intl.NumberFormat(this.country, { style: 'currency', currency: this.iso }).format(item.price.price));
126
127
  }
@@ -165,6 +166,7 @@ export class ProductsListClassicComponent extends StructuresComponent {
165
166
  this.formatPrice = [];
166
167
  this.apiService.getCatalogSelection(type, 12).subscribe((catalogList) => {
167
168
  this.catalogSelection = catalogList;
169
+ this.removeUnavailable();
168
170
  for (let item of catalogList.products) {
169
171
  this.formatPrice.push(new Intl.NumberFormat(this.country, { style: 'currency', currency: this.iso }).format(item.price.price));
170
172
  }
@@ -179,6 +181,17 @@ export class ProductsListClassicComponent extends StructuresComponent {
179
181
  this.isLoading = false;
180
182
  });
181
183
  }
184
+ removeUnavailable() {
185
+ let i = 0;
186
+ while (i < this.contents['block'][FORM_NAME_LIST_PRODUCT].length) {
187
+ if (!(Array.from(this.catalogSelection.products).find((selection) => { return selection.id === this.contents['block'][FORM_NAME_LIST_PRODUCT][i]; }))) {
188
+ this.contents['block'][FORM_NAME_LIST_PRODUCT].splice(i, 1);
189
+ }
190
+ else {
191
+ ++i;
192
+ }
193
+ }
194
+ }
182
195
  }
183
196
  ProductsListClassicComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.1.1", ngImport: i0, type: ProductsListClassicComponent, deps: [{ token: i1.ApiService }, { token: i2.ExternalConfigService }, { token: i0.ChangeDetectorRef }, { token: i3.TranslateService }, { token: i4.CurrencyService }], target: i0.ɵɵFactoryTarget.Component });
184
197
  ProductsListClassicComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "15.1.1", type: ProductsListClassicComponent, selector: "wb-products-list-classic", viewQueries: [{ propertyName: "content", first: true, predicate: ["structureSearchProduct"], descendants: true }], usesInheritance: true, ngImport: i0, template: "<div class=\"wb-products-list-classic\" [ngClass]=\"'nb-ligne-' + contents[BASE_BLOCK_CONTENT][FORM_NAME_NBLIGNE]\">\n <div>\n <wb-structure-config (isClose)=\"triggerProduct = false;\" [isActive]=\"triggerProduct\" [blockUUID]=\"uuid\" [position]=\"TYPE_CONFIG_POSITION_LEFT_TOP\" [isFullwidth]=\"true\">\n <wb-structure-config-checkbox\n [label]=\"'wb.structures.template.3' | translate\"\n [(ngModel)]=\"contents[BASE_BLOCK_CONTENT][FORM_NAME_SHOW_TITLE]\"\n (ngModelChange)=\"persist()\"\n [off]=\"false\"\n [on]=\"true\"\n ></wb-structure-config-checkbox>\n <div class=\"columns\">\n <div class=\"column is-8\">\n <wb-structure-search-product\n #structureSearchProduct\n [searchNumber]=\"20\"\n [label]=\"'wb.structures.template.25' | translate\"\n (newSearch)=\"changeProduct($event)\"\n [selectedProd]=\"contents[BASE_BLOCK_CONTENT][FORM_NAME_LIST_PRODUCT]\"\n ></wb-structure-search-product>\n </div>\n <div class=\"column is-4\">\n <wb-structure-select\n [label]=\"'wb.structures.template.26' | translate\"\n [selectedValue]=\"selectedValue\"\n [forms]=\"form\"\n [large]=\"true\"\n [icon]=\"'fal fa-box-alt'\"\n (changed)=\"selectedValue = $event; selectThisForm()\"\n ></wb-structure-select>\n </div>\n </div>\n </wb-structure-config>\n </div>\n <div class=\"wb-products-list-classic__text\" *ngIf=\"contents[BASE_BLOCK_CONTENT][FORM_NAME_SHOW_TITLE]\">\n <wz-editor\n [(ngModel)]=\"contents[BASE_BLOCK_CONTENT][FORM_NAME_TITLE]\"\n (ngModelChange)=\"persist()\"\n [placeholder]=\"'wb.shared.components.quill.1' | translate\"\n >\n </wz-editor>\n </div>\n <wb-loader *ngIf=\"isLoading\" class=\"is-fullsize\"></wb-loader>\n <div\n class=\"wb-products-list-classic__list\"\n *ngIf=\"catalogSelection !== undefined && catalogSelection.products && catalogSelection.products.length\"\n >\n <div *ngFor=\"let product of catalogSelection.products | slice: 0:12; let index = index\" (click)=\"triggerProduct = true;\">\n <div class=\"img-wrapper\" *ngIf=\"product.main_image\">\n <img *ngIf=\"product.main_image.file\" [src]=\"imageFrontUrl + product.main_image.file\" [alt]=\"product.name\" />\n </div>\n <p>{{ product.name }}</p>\n <p>{{ formatPrice[index] }}</p>\n </div>\n </div>\n <div class=\"wb-products-list-classic__nolist\" *ngIf=\"!catalogSelection.products || catalogSelection.products.length === 0\">\n <p>{{ 'wb.structures.template.6' | translate }}</p>\n </div>\n <div *ngIf=\"!catalogSelection && !isLoading\">\n <wb-structure-search-product [searchNumber]=\"4\" [label]=\"'wb.structures.template.27' | translate\"></wb-structure-search-product>\n </div>\n</div>\n", dependencies: [{ kind: "directive", type: i5.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "directive", type: i5.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "directive", type: i5.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: i6.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i6.NgModel, selector: "[ngModel]:not([formControlName]):not([formControl])", inputs: ["name", "disabled", "ngModel", "ngModelOptions"], outputs: ["ngModelChange"], exportAs: ["ngModel"] }, { kind: "component", type: i7.StructureConfigComponent, selector: "wb-structure-config", inputs: ["isActive", "blockUUID", "position", "isFullwidth", "small", "extraSmall"], outputs: ["isClose"] }, { kind: "component", type: i8.StructureConfigCheckboxComponent, selector: "wb-structure-config-checkbox", inputs: ["label", "on", "off"] }, { kind: "component", type: i9.StructureSelectComponent, selector: "wb-structure-select", inputs: ["selectedValue", "forms", "large", "icon", "label"], outputs: ["changed"] }, { kind: "component", type: i10.StructureSearchProductComponent, selector: "wb-structure-search-product", inputs: ["label", "searchNumber", "selectedProd"], outputs: ["newSearch"] }, { kind: "component", type: i11.LoaderComponent, selector: "wb-loader" }, { kind: "component", type: i12.WiziEditorComponent, selector: "wz-editor", inputs: ["placeholder", "position"] }, { kind: "pipe", type: i5.SlicePipe, name: "slice" }, { kind: "pipe", type: i3.TranslatePipe, name: "translate" }] });
@@ -189,4 +202,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.1.1", ngImpor
189
202
  type: ViewChild,
190
203
  args: ['structureSearchProduct']
191
204
  }] } });
192
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicHJvZHVjdHMtbGlzdC1jbGFzc2ljLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL3dpemktYmxvY2svc3JjL2xpYi9zdHJ1Y3R1cmVzL3Byb2R1Y3RzLWxpc3QvY2xhc3NpYy9wcm9kdWN0cy1saXN0LWNsYXNzaWMuY29tcG9uZW50LnRzIiwiLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvd2l6aS1ibG9jay9zcmMvbGliL3N0cnVjdHVyZXMvcHJvZHVjdHMtbGlzdC9jbGFzc2ljL3Byb2R1Y3RzLWxpc3QtY2xhc3NpYy5jb21wb25lbnQuaHRtbCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsaUJBQWlCLEVBQUUsU0FBUyxFQUFxQixTQUFTLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDM0YsT0FBTyxFQUFFLHNCQUFzQixFQUFFLHNCQUFzQixFQUFFLE1BQU0sK0JBQStCLENBQUM7QUFDL0YsT0FBTyxFQUFFLG1CQUFtQixFQUFFLE1BQU0sNEJBQTRCLENBQUM7QUFDakUsT0FBTyxFQUEwQixzQkFBc0IsRUFBRSxNQUFNLDhEQUE4RCxDQUFDO0FBQzlILE9BQU8sRUFBRSwwQkFBMEIsRUFBRSxNQUFNLHNFQUFzRSxDQUFDO0FBQ2xILE9BQU8sRUFBRSxVQUFVLEVBQUUsTUFBTSxxQ0FBcUMsQ0FBQztBQUNqRSxPQUFPLEVBQUUscUJBQXFCLEVBQUUsTUFBTSxpREFBaUQsQ0FBQztBQUN4RixPQUFPLEVBQUUsK0JBQStCLEVBQUUsTUFBTSx3RkFBd0YsQ0FBQztBQUV6SSxPQUFPLEVBQUUsZ0JBQWdCLEVBQUUsTUFBTSxxQkFBcUIsQ0FBQztBQUN2RCxPQUFPLEVBQUUsZUFBZSxFQUFFLE1BQU0sMENBQTBDLENBQUM7Ozs7Ozs7Ozs7Ozs7O0FBTTNFLE1BQU0sT0FBTyw0QkFBNkIsU0FBUSxtQkFBMkM7SUFHekYsSUFBeUMsT0FBTyxDQUFD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QUFDLElBQUksQ0FDakIsSUFBSSxJQUFJLENBQUMsWUFBWSxDQUFDLElBQUksQ0FBQyxPQUFPLEVBQUUsRUFBRSxLQUFLLEVBQUUsVUFBVSxFQUFFLFFBQVEsRUFBRSxJQUFJLENBQUMsR0FBRyxFQUFFLENBQUMsQ0FBQyxNQUFNLENBQUMsSUFBSSxDQUFDLEtBQUssQ0FBQyxLQUFLLENBQUMsQ0FDMUcsQ0FBQzthQUNMO1lBQ0QsSUFBSSxDQUFDLFNBQVMsR0FBRyxLQUFLLENBQUM7UUFDM0IsQ0FBQyxFQUNELEdBQUcsRUFBRTtZQUNELElBQUksQ0FBQyxnQkFBZ0IsR0FBRztnQkFDcEIsUUFBUSxFQUFFLEVBQUU7Z0JBQ1osYUFBYSxFQUFFLEVBQUU7Z0JBQ2pCLFdBQVcsRUFBRSxDQUFDO2dCQUNkLGFBQWEsRUFBRSxDQUFDO2FBQ25CLENBQUM7WUFDRixJQUFJLENBQUMsU0FBUyxHQUFHLEtBQUssQ0FBQztRQUMzQixDQUFDLENBQ0osQ0FBQztJQUNOLENBQUM7O3lIQXhMUSw0QkFBNEI7NkdBQTVCLDRCQUE0QiwwTUNoQnpDLG11R0E2REE7MkZEN0NhLDRCQUE0QjtrQkFKeEMsU0FBUzsrQkFDSSwwQkFBMEIsQ0FBQyxRQUFRLEVBQUU7a09BTU4sT0FBTztzQkFBL0MsU0FBUzt1QkFBQyx3QkFBd0IiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBDaGFuZ2VEZXRlY3RvclJlZiwgQ29tcG9uZW50LCBPbkRlc3Ryb3ksIE9uSW5pdCwgVmlld0NoaWxkIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBGT1JNX05BTUVfTElTVF9QUk9EVUNULCBGT1JNX05BTUVfVFlQRV9QUk9EVUNUIH0gZnJvbSAnLi4vLi4vLi4vZHRvcy9mb3Jtcy9mb3Jtcy5kdG8nO1xuaW1wb3J0IHsgU3RydWN0dXJlc0NvbXBvbmVudCB9IGZyb20gJy4uLy4uL3N0cnVjdHVyZXMuY29tcG9uZW50JztcbmltcG9ydCB7IFByb2R1Y3RzTGlzdENsYXNzaWNEdG8sIFRZUEVfUFJPRFVDVF9TRUxFQ1RJT04gfSBmcm9tICcuLi8uLi8uLi9kdG9zL2Jsb2Nrcy9wcm9kdWN0cy1saXN0L3Byb2R1Y3RzLWxpc3QtY2xhc3NpYy5kdG8nO1xuaW1wb3J0IHsgUHJvZHVjdHNMaXN0Q2xhc3NpY1NlcnZpY2UgfSBmcm9tICcuLi8uLi8uLi9zZXJ2aWNlcy9ibG9ja3MvcHJvZHVjdHMtbGlzdC9wcm9kdWN0cy1saXN0LWNsYXNzaWMuc2VydmljZSc7XG5pbXBvcnQgeyBBcGlTZXJ2aWNlIH0gZnJvbSAnLi4vLi4vLi4vc2VydmljZXMvdXRpbHMvYXBpLnNlcnZpY2UnO1xuaW1wb3J0IHsgRXh0ZXJuYWxDb25maWdTZXJ2aWNlIH0gZnJvbSAnLi4vLi4vLi4vc2VydmljZXMvdXRpbHMvZXh0ZXJuYWwtY29uZmlnLnNlcnZpY2UnO1xuaW1wb3J0IHsgU3RydWN0dXJlU2VhcmNoUHJvZHVjdENvbXBvbmVudCB9IGZyb20gJy4uLy4uLy4uL3NoYXJlZC9jb21wb25lbnRzL3N0cnVjdHVyZS1zZWFyY2gtcHJvZHVjdC9zdHJ1Y3R1cmUtc2VhcmNoLXByb2R1Y3QuY29tcG9uZW50JztcbmltcG9ydCB7IENhdGFsb2dMaXN0RHRvIH0gZnJvbSAnLi4vLi4vLi4vZHRvcy9hcGlzL2NhdGFsb2dzL2NhdGFsb2ctbGlzdC5kdG8nO1xuaW1wb3J0IHsgVHJhbnNsYXRlU2VydmljZSB9IGZyb20gJ0BuZ3gtdHJhbnNsYXRlL2NvcmUnO1xuaW1wb3J0IHsgQ3VycmVuY3lTZXJ2aWNlIH0gZnJvbSAnLi4vLi4vLi4vc2VydmljZXMvdXRpbHMvY3VycmVuY3kuc2VydmljZSc7XG5cbkBDb21wb25lbnQoe1xuICAgIHNlbGVjdG9yOiBQcm9kdWN0c0xpc3RDbGFzc2ljU2VydmljZS5zZWxlY3RvcigpLFxuICAgIHRlbXBsYXRlVXJsOiAnLi9wcm9kdWN0cy1saXN0LWNsYXNzaWMuY29tcG9uZW50Lmh0bWwnLFxufSlcbmV4cG9ydCBjbGFzcyBQcm9kdWN0c0xpc3RDbGFzc2ljQ29tcG9uZW50IGV4dGVuZHMgU3RydWN0dXJlc0NvbXBvbmVudDxQcm9kdWN0c0xpc3RDbGFzc2ljRHRvPiBpbXBsZW1lbnRzIE9uSW5pdCwgT25EZXN0cm95IHtcbiAgICBzdHJ1Y3R1cmVTZWFyY2hQcm9kdWN0OiBTdHJ1Y3R1cmVTZWFyY2hQcm9kdWN0Q29tcG9uZW50O1xuXG4gICAgQFZpZXdDaGlsZCgnc3RydWN0dXJlU2VhcmNoUHJvZHVjdCcpIHNldCBjb250ZW50KGNvbnRyb2w6IFN0cnVjdHVyZVNlYXJjaFByb2R1Y3RDb21wb25lbnQpIHtcbiAgICAgICAgdGhpcy5zdHJ1Y3R1cmVTZWFyY2hQcm9kdWN0ID0gY29udHJvbDtcbiAgICB9XG5cbiAgICBzZWxlY3RlZFZhbHVlID0ge1xuICAgICAgICBpZDogMSxcbiAgICAgICAgdGl0bGU6ICd3Yi5wcm9kdWN0bGlzdC5zZWxlY3Rpb24nLFxuICAgICAgICB2YWx1ZTogJ3NlbGVjdGlvbicsXG4gICAgfTtcblxuICAgIGNhdGFsb2dTZWxlY3Rpb246IENhdGFsb2dMaXN0RHRvID0ge1xuICAgICAgICBwcm9kdWN0czogW10sXG4gICAgICAgIGNhdGFsb2dfZmFjZXQ6IFtdLFxuICAgICAgICB0b3RhbF9wYWdlczogMCxcbiAgICAgICAgdG90YWxfcmVzdWx0czogMCxcbiAgICB9O1xuXG4gICAgaW1hZ2VGcm9udFVybDogc3RyaW5nO1xuXG4gICAgdHJpZ2dlclByb2R1Y3QgPSBmYWxzZTtcbiAgICBkZXZpc2U6IHN0cmluZztcbiAgICBpc286IHN0cmluZztcbiAgICBjb3VudHJ5OiBzdHJpbmc7XG4gICAgZm9ybWF0UHJpY2UgPSBbXTtcbiAgICBpc0xvYWRpbmcgPSB0cnVlO1xuXG4gICAgZm9ybSA9IFtcbiAgICAgICAge1xuICAgICAgICAgICAgaWQ6IDEsXG4gICAgICAgICAgICB0aXRsZTogdGhpcy50cmFuc2xhdGVTZXJ2aWNlLmluc3RhbnQoJ3diLnByb2R1Y3RsaXN0LjEnKSxcbiAgICAgICAgICAgIHZhbHVlOiAnc2VsZWN0aW9uJyxcbiAgICAgICAgfSxcbiAgICAgICAge1xuICAgICAgICAgICAgaWQ6IDIsXG4gICAgICAgICAgICB0aXRsZTogdGhpcy50cmFuc2xhdGVTZXJ2aWNlLmluc3RhbnQoJ3diLnByb2R1Y3RsaXN0LjInKSxcbiAgICAgICAgICAgIHZhbHVlOiAnZGlzY291bnQnLFxuICAgICAgICB9LFxuICAgICAgICB7XG4gICAgICAgICAgICBpZDogMyxcbiAgICAgICAgICAgIHRpdGxlOiB0aGlzLnRyYW5zbGF0ZVNlcnZpY2UuaW5zdGFudCgnd2IucHJvZHVjdGxpc3QuMycpLFxuICAgICAgICAgICAgdmFsdWU6ICduZXcnLFxuICAgICAgICB9LFxuICAgICAgICB7XG4gICAgICAgICAgICBpZDogNCxcbiAgICAgICAgICAgIHRpdGxlOiB0aGlzLnRyYW5zbGF0ZVNlcnZpY2UuaW5zdGFudCgnd2IucHJvZHVjdGxpc3QuNCcpLFxuICAgICAgICAgICAgdmFsdWU6ICdmbGFzaCcsXG4gICAgICAgIH0sXG4gICAgXTtcblxuICAgIGNvbnN0cnVjdG9yKFxuICAgICAgICBwcml2YXRlIGFwaVNlcnZpY2U6IEFwaVNlcnZpY2UsXG4gICAgICAgIHByaXZhdGUgZXh0ZXJuYWxDb25maWdTZXJ2aWNlOiBFeHRlcm5hbENvbmZpZ1NlcnZpY2UsXG4gICAgICAgIHByaXZhdGUgY2hhbmdlRGV0ZWN0aW9uOiBDaGFuZ2VEZXRlY3RvclJlZixcbiAgICAgICAgcHJpdmF0ZSB0cmFuc2xhdGVTZXJ2aWNlOiBUcmFuc2xhdGVTZXJ2aWNlLFxuICAgICAgICBwcml2YXRlIGN1cnJlbmN5U2VydmljZTogQ3VycmVuY3lTZXJ2aWNlLFxuXG4gICAgKSB7XG4gICAgICAgIHN1cGVyKCk7XG4gICAgICAgIHRoaXMuc2V0Q29tcG9uZW50U2VydmljZShQcm9kdWN0c0xpc3RDbGFzc2ljU2VydmljZSk7XG4gICAgfVxuXG4gICAgYXN5bmMgbmdPbkluaXQoKSB7XG4gICAgICAgIHN1cGVyLm5nT25Jbml0KCk7XG5cbiAgICAgICAgdGhpcy5pc0xvYWRpbmcgPSB0cnVlO1xuICAgICAgICB0aGlzLmltYWdlRnJvbnRVcmwgPSB0aGlzLmV4dGVybmFsQ29uZmlnU2VydmljZS5nZXRVcmxJbWFnZUZyb250KCk7XG4gICAgICAgIGlmICghdGhpcy5jdXJyZW5jeVNlcnZpY2UucmVhZHkpIHtcbiAgICAgICAgICAgIGNvbnN0IGlzQ3VycmVuY3lSZWFkeSA9IGF3YWl0IHRoaXMuY3VycmVuY3lTZXJ2aWNlLmluaXRpYWxpemVDdXJyZW5jeSgpO1xuICAgICAgICAgICAgaWYgKGlzQ3VycmVuY3lSZWFkeSkge1xuICAgICAgICAgICAgICAgIHRoaXMuZGV2aXNlID0gdGhpcy5jdXJyZW5jeVNlcnZpY2Uuc3ltYm9sO1xuICAgICAgICAgICAgICAgIHRoaXMuY291bnRyeSA9IHRoaXMuY3VycmVuY3lTZXJ2aWNlLmNvdW50cnk7XG4gICAgICAgICAgICAgICAgdGhpcy5pc28gPSB0aGlzLmN1cnJlbmN5U2VydmljZS5pc287XG4gICAgICAgICAgICB9IGVsc2Uge1xuICAgICAgICAgICAgICAgIHRoaXMuZGV2aXNlID0gdGhpcy5leHRlcm5hbENvbmZpZ1NlcnZpY2UuZGV2aXNlKCk7XG4gICAgICAgICAgICB9XG4gICAgICAgIH0gZWxzZSB7XG4gICAgICAgICAgICB0aGlzLmRldmlzZSA9IHRoaXMuY3VycmVuY3lTZXJ2aWNlLnN5bWJvbDtcbiAgICAgICAgICAgIHRoaXMuY291bnRyeSA9IHRoaXMuY3VycmVuY3lTZXJ2aWNlLmNvdW50cnk7XG4gICAgICAgICAgICB0aGlzLmlzbyA9IHRoaXMuY3VycmVuY3lTZXJ2aWNlLmlzbztcbiAgICAgICAgfVxuICAgICAgICB0aGlzLmFwaVNlcnZpY2UuZ2V0U2hvcFRlbXBsYXRlTGFuZygpLnN1YnNjcmliZShcbiAgICAgICAgICAgIChkYXRhKSA9PiB7XG4gICAgICAgICAgICAgICAgdGhpcy5jb3VudHJ5ID0gZGF0YS5sb2NhbGUucmVwbGFjZSgnXycsICctJyk7XG4gICAgICAgICAgICAgICAgdGhpcy5pbml0aWFsaXplKCk7XG4gICAgICAgICAgICB9LFxuICAgICAgICAgICAgKCkgPT4ge1xuICAgICAgICAgICAgICAgIHRoaXMuaW5pdGlhbGl6ZSgpO1xuICAgICAgICAgICAgfVxuICAgICAgICApO1xuICAgIH1cblxuICAgIGluaXRpYWxpemUoKSB7XG4gICAgICAgIGlmICh0aGlzLmNvbnRlbnRCbG9ja1tGT1JNX05BTUVfVFlQRV9QUk9EVUNUXSB8fCB0aGlzLmNvbnRlbnRCbG9ja1tGT1JNX05BTUVfTElTVF9QUk9EVUNUXSkge1xuICAgICAgICAgICAgaWYgKHRoaXMuY29udGVudEJsb2NrW0ZPUk1fTkFNRV9MSVNUX1BST0RVQ1RdICYmIHRoaXMuY29udGVudEJsb2NrW0ZPUk1fTkFNRV9MSVNUX1BST0RVQ1RdLmxlbmd0aCkge1xuICAgICAgICAgICAgICAgIHRoaXMuY2hhbmdlUHJvZHVjdCh0aGlzLmNvbnRlbnRCbG9ja1tGT1JNX05BTUVfTElTVF9QUk9EVUNUXSwgZmFsc2UpO1xuICAgICAgICAgICAgfSBlbHNlIHtcbiAgICAgICAgICAgICAgICB0aGlzLmdldFNlbGVjdGlvbih0aGlzLmNvbnRlbnRCbG9ja1tGT1JNX05BTUVfVFlQRV9QUk9EVUNUXSk7XG4gICAgICAgICAgICB9XG4gICAgICAgIH0gZWxzZSB7XG4gICAgICAgICAgICB0aGlzLmdldFNlbGVjdGlvbihUWVBFX1BST0RVQ1RfU0VMRUNUSU9OKTtcbiAgICAgICAgfVxuICAgIH1cblxuICAgIHNlbGVjdFRoaXNGb3JtKCkge1xuICAgICAgICB0aGlzLmdldFNlbGVjdGlvbih0aGlzLnNlbGVjdGVkVmFsdWUudmFsdWUpO1xuICAgICAgICB0aGlzLmNvbnRlbnRCbG9ja1tGT1JNX05BTUVfVFlQRV9QUk9EVUNUXSA9IHRoaXMuc2VsZWN0ZWRWYWx1ZS52YWx1ZTtcbiAgICAgICAgdGhpcy5wZXJzaXN0KCk7XG4gICAgfVxuXG4gICAgY2hhbmdlUHJvZHVjdChwcm9kSWRzLCBwZXJzaXN0ID0gdHJ1ZSkge1xuICAgICAgICBpZiAocHJvZElkcy5sZW5ndGgpIHtcbiAgICAgICAgICAgIHRoaXMuaXNMb2FkaW5nID0gdHJ1ZTtcbiAgICAgICAgICAgIHRoaXMuZm9ybWF0UHJpY2UgPSBbXTtcbiAgICAgICAgICAgIHRoaXMuYXBpU2VydmljZS5nZXRDYXRhbG9nU3BlY2lmaWMocHJvZElkcywgMTIpLnN1YnNjcmliZShcbiAgICAgICAgICAgICAgICAoY2F0YWxvZ0xpc3QpID0+IHtcbiAgICAgICAgICAgICAgICAgICAgdGhpcy5jYXRhbG9nU2VsZWN0aW9uID0gY2F0YWxvZ0xpc3Q7XG4gICAgICAgICAgICAgICAgICAgIGZvciAobGV0IGl0ZW0gb2YgY2F0YWxvZ0xpc3QucHJvZHVjdHMpIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIHRoaXMuZm9ybWF0UHJpY2UucHVzaChcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBuZXcgSW50bC5OdW1iZXJGb3JtYXQodGhpcy5jb3VudHJ5LCB7IHN0eWxlOiAnY3VycmVuY3knLCBjdXJyZW5jeTogdGhpcy5pc28gfSkuZm9ybWF0KGl0ZW0ucHJpY2UucHJpY2UpXG4gICAgICAgICAgICAgICAgICAgICAgICApO1xuICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICAgIHRoaXMuY2hhbmdlRGV0ZWN0aW9uLmRldGVjdENoYW5nZXMoKTtcbiAgICAgICAgICAgICAgICAgICAgaWYgKHBlcnNpc3QpIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIHRoaXMuY29udGVudEJsb2NrW0ZPUk1fTkFNRV9MSVNUX1BST0RVQ1RdID0gcHJvZElkcztcbiAgICAgICAgICAgICAgICAgICAgICAgIHRoaXMucGVyc2lzdCgpO1xuICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICAgIHRoaXMuaXNMb2FkaW5nID0gZmFsc2U7XG4gICAgICAgICAgICAgICAgfSxcbiAgICAgICAgICAgICAgICAoKSA9PiB7XG4gICAgICAgICAgICAgICAgICAgIHRoaXMuY2F0YWxvZ1NlbGVjdGlvbiA9IHtcbiAgICAgICAgICAgICAgICAgICAgICAgIHByb2R1Y3RzOiBbXSxcbiAgICAgICAgICAgICAgICAgICAgICAgIGNhdGFsb2dfZmFjZXQ6IFtdLFxuICAgICAgICAgICAgICAgICAgICAgICAgdG90YWxfcGFnZXM6IDAsXG4gICAgICAgICAgICAgICAgICAgICAgICB0b3RhbF9yZXN1bHRzOiAwLFxuICAgICAgICAgICAgICAgICAgICB9O1xuICAgICAgICAgICAgICAgICAgICB0aGlzLmlzTG9hZGluZyA9IGZhbHNlO1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICk7XG4gICAgICAgIH0gZWxzZSB7XG4gICAgICAgICAgICBpZiAodGhpcy5jb250ZW50QmxvY2tbRk9STV9OQU1FX1RZUEVfUFJPRFVDVF0pIHtcbiAgICAgICAgICAgICAgICB0aGlzLmdldFNlbGVjdGlvbih0aGlzLmNvbnRlbnRCbG9ja1tGT1JNX05BTUVfVFlQRV9QUk9EVUNUXSk7XG4gICAgICAgICAgICB9IGVsc2Uge1xuICAgICAgICAgICAgICAgIHRoaXMuZ2V0U2VsZWN0aW9uKFRZUEVfUFJPRFVDVF9TRUxFQ1RJT04pO1xuICAgICAgICAgICAgfVxuICAgICAgICAgICAgdGhpcy5wZXJzaXN0KCk7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICBnZXRTZWxlY3Rpb24odHlwZSkge1xuICAgICAgICB0aGlzLmlzTG9hZGluZyA9IHRydWU7XG4gICAgICAgIHRoaXMuY29udGVudEJsb2NrW0ZPUk1fTkFNRV9MSVNUX1BST0RVQ1RdID0gW107XG4gICAgICAgIGlmICh0aGlzLnN0cnVjdHVyZVNlYXJjaFByb2R1Y3QpIHtcbiAgICAgICAgICAgIHRoaXMuc3RydWN0dXJlU2VhcmNoUHJvZHVjdC5zZWxlY3RlZFByb2QgPSBbXTtcbiAgICAgICAgICAgIHRoaXMuc3RydWN0dXJlU2VhcmNoUHJvZHVjdC5jdXJyZW50U2VsZWN0ZWRDYXRhbG9nID0gW107XG4gICAgICAgIH1cbiAgICAgICAgdGhpcy5mb3JtLmZvckVhY2goKHZhbHVlcykgPT4ge1xuICAgICAgICAgICAgaWYgKHZhbHVlcy52YWx1ZSA9PT0gdHlwZSkge1xuICAgICAgICAgICAgICAgIHRoaXMuc2VsZWN0ZWRWYWx1ZSA9IHZhbHVlcztcbiAgICAgICAgICAgIH1cbiAgICAgICAgfSk7XG4gICAgICAgIHRoaXMuZm9ybWF0UHJpY2UgPSBbXTtcbiAgICAgICAgdGhpcy5hcGlTZXJ2aWNlLmdldENhdGFsb2dTZWxlY3Rpb24odHlwZSwgMTIpLnN1YnNjcmliZShcbiAgICAgICAgICAgIChjYXRhbG9nTGlzdCkgPT4ge1xuICAgICAgICAgICAgICAgIHRoaXMuY2F0YWxvZ1NlbGVjdGlvbiA9IGNhdGFsb2dMaXN0O1xuICAgICAgICAgICAgICAgIGZvciAobGV0IGl0ZW0gb2YgY2F0YWxvZ0xpc3QucHJvZHVjdHMpIHtcbiAgICAgICAgICAgICAgICAgICAgdGhpcy5mb3JtYXRQcmljZS5wdXNoKFxuICAgICAgICAgICAgICAgICAgICAgICAgbmV3IEludGwuTnVtYmVyRm9ybWF0KHRoaXMuY291bnRyeSwgeyBzdHlsZTogJ2N1cnJlbmN5JywgY3VycmVuY3k6IHRoaXMuaXNvIH0pLmZvcm1hdChpdGVtLnByaWNlLnByaWNlKVxuICAgICAgICAgICAgICAgICAgICApO1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICB0aGlzLmlzTG9hZGluZyA9IGZhbHNlO1xuICAgICAgICAgICAgfSxcbiAgICAgICAgICAgICgpID0+IHtcbiAgICAgICAgICAgICAgICB0aGlzLmNhdGFsb2dTZWxlY3Rpb24gPSB7XG4gICAgICAgICAgICAgICAgICAgIHByb2R1Y3RzOiBbXSxcbiAgICAgICAgICAgICAgICAgICAgY2F0YWxvZ19mYWNldDogW10sXG4gICAgICAgICAgICAgICAgICAgIHRvdGFsX3BhZ2VzOiAwLFxuICAgICAgICAgICAgICAgICAgICB0b3RhbF9yZXN1bHRzOiAwLFxuICAgICAgICAgICAgICAgIH07XG4gICAgICAgICAgICAgICAgdGhpcy5pc0xvYWRpbmcgPSBmYWxzZTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgKTtcbiAgICB9XG59XG4iLCI8ZGl2IGNsYXNzPVwid2ItcHJvZHVjdHMtbGlzdC1jbGFzc2ljXCIgW25nQ2xhc3NdPVwiJ25iLWxpZ25lLScgKyBjb250ZW50c1tCQVNFX0JMT0NLX0NPTlRFTlRdW0ZPUk1fTkFNRV9OQkxJR05FXVwiPlxuICAgIDxkaXY+XG4gICAgICAgIDx3Yi1zdHJ1Y3R1cmUtY29uZmlnIChpc0Nsb3NlKT1cInRyaWdnZXJQcm9kdWN0ID0gZmFsc2U7XCIgW2lzQWN0aXZlXT1cInRyaWdnZXJQcm9kdWN0XCIgW2Jsb2NrVVVJRF09XCJ1dWlkXCIgW3Bvc2l0aW9uXT1cIlRZUEVfQ09ORklHX1BPU0lUSU9OX0xFRlRfVE9QXCIgW2lzRnVsbHdpZHRoXT1cInRydWVcIj5cbiAgICAgICAgICAgIDx3Yi1zdHJ1Y3R1cmUtY29uZmlnLWNoZWNrYm94XG4gICAgICAgICAgICAgICAgW2xhYmVsXT1cIid3Yi5zdHJ1Y3R1cmVzLnRlbXBsYXRlLjMnIHwgdHJhbnNsYXRlXCJcbiAgICAgICAgICAgICAgICBbKG5nTW9kZWwpXT1cImNvbnRlbnRzW0JBU0VfQkxPQ0tfQ09OVEVOVF1bRk9STV9OQU1FX1NIT1dfVElUTEVdXCJcbiAgICAgICAgICAgICAgICAobmdNb2RlbENoYW5nZSk9XCJwZXJzaXN0KClcIlxuICAgICAgICAgICAgICAgIFtvZmZdPVwiZmFsc2VcIlxuICAgICAgICAgICAgICAgIFtvbl09XCJ0cnVlXCJcbiAgICAgICAgICAgID48L3diLXN0cnVjdHVyZS1jb25maWctY2hlY2tib3g+XG4gICAgICAgICAgICA8ZGl2IGNsYXNzPVwiY29sdW1uc1wiPlxuICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJjb2x1bW4gaXMtOFwiPlxuICAgICAgICAgICAgICAgICAgICA8d2Itc3RydWN0dXJlLXNlYXJjaC1wcm9kdWN0XG4gICAgICAgICAgICAgICAgICAgICAgICAjc3RydWN0dXJlU2VhcmNoUHJvZHVjdFxuICAgICAgICAgICAgICAgICAgICAgICAgW3NlYXJjaE51bWJlcl09XCIyMFwiXG4gICAgICAgICAgICAgICAgICAgICAgICBbbGFiZWxdPVwiJ3diLnN0cnVjdHVyZXMudGVtcGxhdGUuMjUnIHwgdHJhbnNsYXRlXCJcbiAgICAgICAgICAgICAgICAgICAgICAgIChuZXdTZWFyY2gpPVwiY2hhbmdlUHJvZHVjdCgkZXZlbnQpXCJcbiAgICAgICAgICAgICAgICAgICAgICAgIFtzZWxlY3RlZFByb2RdPVwiY29udGVudHNbQkFTRV9CTE9DS19DT05URU5UXVtGT1JNX05BTUVfTElTVF9QUk9EVUNUXVwiXG4gICAgICAgICAgICAgICAgICAgID48L3diLXN0cnVjdHVyZS1zZWFyY2gtcHJvZHVjdD5cbiAgICAgICAgICAgICAgICA8L2Rpdj5cbiAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwiY29sdW1uIGlzLTRcIj5cbiAgICAgICAgICAgICAgICAgICAgPHdiLXN0cnVjdHVyZS1zZWxlY3RcbiAgICAgICAgICAgICAgICAgICAgICAgIFtsYWJlbF09XCInd2Iuc3RydWN0dXJlcy50ZW1wbGF0ZS4yNicgfCB0cmFuc2xhdGVcIlxuICAgICAgICAgICAgICAgICAgICAgICAgW3NlbGVjdGVkVmFsdWVdPVwic2VsZWN0ZWRWYWx1ZVwiXG4gICAgICAgICAgICAgICAgICAgICAgICBbZm9ybXNdPVwiZm9ybVwiXG4gICAgICAgICAgICAgICAgICAgICAgICBbbGFyZ2VdPVwidHJ1ZVwiXG4gICAgICAgICAgICAgICAgICAgICAgICBbaWNvbl09XCInZmFsIGZhLWJveC1hbHQnXCJcbiAgICAgICAgICAgICAgICAgICAgICAgIChjaGFuZ2VkKT1cInNlbGVjdGVkVmFsdWUgPSAkZXZlbnQ7IHNlbGVjdFRoaXNGb3JtKClcIlxuICAgICAgICAgICAgICAgICAgICA+PC93Yi1zdHJ1Y3R1cmUtc2VsZWN0PlxuICAgICAgICAgICAgICAgIDwvZGl2PlxuICAgICAgICAgICAgPC9kaXY+XG4gICAgICAgIDwvd2Itc3RydWN0dXJlLWNvbmZpZz5cbiAgICA8L2Rpdj5cbiAgICA8ZGl2IGNsYXNzPVwid2ItcHJvZHVjdHMtbGlzdC1jbGFzc2ljX190ZXh0XCIgKm5nSWY9XCJjb250ZW50c1tCQVNFX0JMT0NLX0NPTlRFTlRdW0ZPUk1fTkFNRV9TSE9XX1RJVExFXVwiPlxuICAgICAgICA8d3otZWRpdG9yXG4gICAgICAgICAgICBbKG5nTW9kZWwpXT1cImNvbnRlbnRzW0JBU0VfQkxPQ0tfQ09OVEVOVF1bRk9STV9OQU1FX1RJVExFXVwiXG4gICAgICAgICAgICAobmdNb2RlbENoYW5nZSk9XCJwZXJzaXN0KClcIlxuICAgICAgICAgICAgW3BsYWNlaG9sZGVyXT1cIid3Yi5zaGFyZWQuY29tcG9uZW50cy5xdWlsbC4xJyB8IHRyYW5zbGF0ZVwiXG4gICAgICAgID5cbiAgICAgICAgPC93ei1lZGl0b3I+XG4gICAgPC9kaXY+XG4gICAgPHdiLWxvYWRlciAqbmdJZj1cImlzTG9hZGluZ1wiIGNsYXNzPVwiaXMtZnVsbHNpemVcIj48L3diLWxvYWRlcj5cbiAgICA8ZGl2XG4gICAgICAgIGNsYXNzPVwid2ItcHJvZHVjdHMtbGlzdC1jbGFzc2ljX19saXN0XCJcbiAgICAgICAgKm5nSWY9XCJjYXRhbG9nU2VsZWN0aW9uICE9PSB1bmRlZmluZWQgJiYgY2F0YWxvZ1NlbGVjdGlvbi5wcm9kdWN0cyAmJiBjYXRhbG9nU2VsZWN0aW9uLnByb2R1Y3RzLmxlbmd0aFwiXG4gICAgPlxuICAgICAgICA8ZGl2ICpuZ0Zvcj1cImxldCBwcm9kdWN0IG9mIGNhdGFsb2dTZWxlY3Rpb24ucHJvZHVjdHMgfCBzbGljZTogMDoxMjsgbGV0IGluZGV4ID0gaW5kZXhcIiAoY2xpY2spPVwidHJpZ2dlclByb2R1Y3QgPSB0cnVlO1wiPlxuICAgICAgICAgICAgPGRpdiBjbGFzcz1cImltZy13cmFwcGVyXCIgKm5nSWY9XCJwcm9kdWN0Lm1haW5faW1hZ2VcIj5cbiAgICAgICAgICAgICAgICA8aW1nICpuZ0lmPVwicHJvZHVjdC5tYWluX2ltYWdlLmZpbGVcIiBbc3JjXT1cImltYWdlRnJvbnRVcmwgKyBwcm9kdWN0Lm1haW5faW1hZ2UuZmlsZVwiIFthbHRdPVwicHJvZHVjdC5uYW1lXCIgLz5cbiAgICAgICAgICAgIDwvZGl2PlxuICAgICAgICAgICAgPHA+e3sgcHJvZHVjdC5uYW1lIH19PC9wPlxuICAgICAgICAgICAgPHA+e3sgZm9ybWF0UHJpY2VbaW5kZXhdIH19PC9wPlxuICAgICAgICA8L2Rpdj5cbiAgICA8L2Rpdj5cbiAgICA8ZGl2IGNsYXNzPVwid2ItcHJvZHVjdHMtbGlzdC1jbGFzc2ljX19ub2xpc3RcIiAqbmdJZj1cIiFjYXRhbG9nU2VsZWN0aW9uLnByb2R1Y3RzIHx8IGNhdGFsb2dTZWxlY3Rpb24ucHJvZHVjdHMubGVuZ3RoID09PSAwXCI+XG4gICAgICAgIDxwPnt7ICd3Yi5zdHJ1Y3R1cmVzLnRlbXBsYXRlLjYnIHwgdHJhbnNsYXRlIH19PC9wPlxuICAgIDwvZGl2PlxuICAgIDxkaXYgKm5nSWY9XCIhY2F0YWxvZ1NlbGVjdGlvbiAmJiAhaXNMb2FkaW5nXCI+XG4gICAgICAgIDx3Yi1zdHJ1Y3R1cmUtc2VhcmNoLXByb2R1Y3QgW3NlYXJjaE51bWJlcl09XCI0XCIgW2xhYmVsXT1cIid3Yi5zdHJ1Y3R1cmVzLnRlbXBsYXRlLjI3JyB8IHRyYW5zbGF0ZVwiPjwvd2Itc3RydWN0dXJlLXNlYXJjaC1wcm9kdWN0PlxuICAgIDwvZGl2PlxuPC9kaXY+XG4iXX0=
205
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicHJvZHVjdHMtbGlzdC1jbGFzc2ljLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL3dpemktYmxvY2svc3JjL2xpYi9zdHJ1Y3R1cmVzL3Byb2R1Y3RzLWxpc3QvY2xhc3NpYy9wcm9kdWN0cy1saXN0LWNsYXNzaWMuY29tcG9uZW50LnRzIiwiLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvd2l6aS1ibG9jay9zcmMvbGliL3N0cnVjdHVyZXMvcHJvZHVjdHMtbGlzdC9jbGFzc2ljL3Byb2R1Y3RzLWxpc3QtY2xhc3NpYy5jb21wb25lbnQuaHRtbCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsaUJBQWlCLEVBQUUsU0FBUyxFQUFxQixTQUFTLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDM0YsT0FBTyxFQUFFLHNCQUFzQixFQUFFLHNCQUFzQixFQUFFLE1BQU0sK0JBQStCLENBQUM7QUFDL0YsT0FBTyxFQUFFLG1CQUFtQixFQUFFLE1BQU0sNEJBQTRCLENBQUM7QUFDakUsT0FBTyxFQUEwQixzQkFBc0IsRUFBRSxNQUFNLDhEQUE4RCxDQUFDO0FBQzlILE9BQU8sRUFBRSwwQkFBMEIsRUFBRSxNQUFNLHNFQUFzRSxDQUFDO0FBQ2xILE9BQU8sRUFBRSxVQUFVLEVBQUUsTUFBTSxxQ0FBcUMsQ0FBQztBQUNqRSxPQUFPLEVBQUUscUJBQXFCLEVBQUUsTUFBTSxpREFBaUQsQ0FBQztBQUN4RixPQUFPLEVBQUUsK0JBQStCLEVBQUUsTUFBTSx3RkFBd0YsQ0FBQztBQUV6SSxPQUFPLEVBQUUsZ0JBQWdCLEVBQUUsTUFBTSxxQkFBcUIsQ0FBQztBQUN2RCxPQUFPLEVBQUUsZUFBZSxFQUFFLE1BQU0sMENBQTBDLENBQUM7Ozs7Ozs7Ozs7Ozs7O0FBTTNFLE1BQU0sT0FBTyw0QkFBNkIsU0FBUSxtQkFBMkM7SUFHekYsSUFBeUMsT0FBTyxDQUFD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QixDQUFDLENBQUMsTUFBTSxDQUFDLENBQUMsRUFBRSxDQUFDLENBQUMsQ0FBQzthQUMvRDtpQkFBTTtnQkFDSCxFQUFFLENBQUMsQ0FBQzthQUNQO1NBQ0o7SUFDTCxDQUFDOzt5SEFyTVEsNEJBQTRCOzZHQUE1Qiw0QkFBNEIsME1DaEJ6QyxtdUdBNkRBOzJGRDdDYSw0QkFBNEI7a0JBSnhDLFNBQVM7K0JBQ0ksMEJBQTBCLENBQUMsUUFBUSxFQUFFO2tPQU1OLE9BQU87c0JBQS9DLFNBQVM7dUJBQUMsd0JBQXdCIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQ2hhbmdlRGV0ZWN0b3JSZWYsIENvbXBvbmVudCwgT25EZXN0cm95LCBPbkluaXQsIFZpZXdDaGlsZCB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgRk9STV9OQU1FX0xJU1RfUFJPRFVDVCwgRk9STV9OQU1FX1RZUEVfUFJPRFVDVCB9IGZyb20gJy4uLy4uLy4uL2R0b3MvZm9ybXMvZm9ybXMuZHRvJztcbmltcG9ydCB7IFN0cnVjdHVyZXNDb21wb25lbnQgfSBmcm9tICcuLi8uLi9zdHJ1Y3R1cmVzLmNvbXBvbmVudCc7XG5pbXBvcnQgeyBQcm9kdWN0c0xpc3RDbGFzc2ljRHRvLCBUWVBFX1BST0RVQ1RfU0VMRUNUSU9OIH0gZnJvbSAnLi4vLi4vLi4vZHRvcy9ibG9ja3MvcHJvZHVjdHMtbGlzdC9wcm9kdWN0cy1saXN0LWNsYXNzaWMuZHRvJztcbmltcG9ydCB7IFByb2R1Y3RzTGlzdENsYXNzaWNTZXJ2aWNlIH0gZnJvbSAnLi4vLi4vLi4vc2VydmljZXMvYmxvY2tzL3Byb2R1Y3RzLWxpc3QvcHJvZHVjdHMtbGlzdC1jbGFzc2ljLnNlcnZpY2UnO1xuaW1wb3J0IHsgQXBpU2VydmljZSB9IGZyb20gJy4uLy4uLy4uL3NlcnZpY2VzL3V0aWxzL2FwaS5zZXJ2aWNlJztcbmltcG9ydCB7IEV4dGVybmFsQ29uZmlnU2VydmljZSB9IGZyb20gJy4uLy4uLy4uL3NlcnZpY2VzL3V0aWxzL2V4dGVybmFsLWNvbmZpZy5zZXJ2aWNlJztcbmltcG9ydCB7IFN0cnVjdHVyZVNlYXJjaFByb2R1Y3RDb21wb25lbnQgfSBmcm9tICcuLi8uLi8uLi9zaGFyZWQvY29tcG9uZW50cy9zdHJ1Y3R1cmUtc2VhcmNoLXByb2R1Y3Qvc3RydWN0dXJlLXNlYXJjaC1wcm9kdWN0LmNvbXBvbmVudCc7XG5pbXBvcnQgeyBDYXRhbG9nTGlzdER0byB9IGZyb20gJy4uLy4uLy4uL2R0b3MvYXBpcy9jYXRhbG9ncy9jYXRhbG9nLWxpc3QuZHRvJztcbmltcG9ydCB7IFRyYW5zbGF0ZVNlcnZpY2UgfSBmcm9tICdAbmd4LXRyYW5zbGF0ZS9jb3JlJztcbmltcG9ydCB7IEN1cnJlbmN5U2VydmljZSB9IGZyb20gJy4uLy4uLy4uL3NlcnZpY2VzL3V0aWxzL2N1cnJlbmN5LnNlcnZpY2UnO1xuXG5AQ29tcG9uZW50KHtcbiAgICBzZWxlY3RvcjogUHJvZHVjdHNMaXN0Q2xhc3NpY1NlcnZpY2Uuc2VsZWN0b3IoKSxcbiAgICB0ZW1wbGF0ZVVybDogJy4vcHJvZHVjdHMtbGlzdC1jbGFzc2ljLmNvbXBvbmVudC5odG1sJyxcbn0pXG5leHBvcnQgY2xhc3MgUHJvZHVjdHNMaXN0Q2xhc3NpY0NvbXBvbmVudCBleHRlbmRzIFN0cnVjdHVyZXNDb21wb25lbnQ8UHJvZHVjdHNMaXN0Q2xhc3NpY0R0bz4gaW1wbGVtZW50cyBPbkluaXQsIE9uRGVzdHJveSB7XG4gICAgc3RydWN0dXJlU2VhcmNoUHJvZHVjdDogU3RydWN0dXJlU2VhcmNoUHJvZHVjdENvbXBvbmVudDtcblxuICAgIEBWaWV3Q2hpbGQoJ3N0cnVjdHVyZVNlYXJjaFByb2R1Y3QnKSBzZXQgY29udGVudChjb250cm9sOiBTdHJ1Y3R1cmVTZWFyY2hQcm9kdWN0Q29tcG9uZW50KSB7XG4gICAgICAgIHRoaXMuc3RydWN0dXJlU2VhcmNoUHJvZHVjdCA9IGNvbnRyb2w7XG4gICAgfVxuXG4gICAgc2VsZWN0ZWRWYWx1ZSA9IHtcbiAgICAgICAgaWQ6IDEsXG4gICAgICAgIHRpdGxlOiAnd2IucHJvZHVjdGxpc3Quc2VsZWN0aW9uJyxcbiAgICAgICAgdmFsdWU6ICdzZWxlY3Rpb24nLFxuICAgIH07XG5cbiAgICBjYXRhbG9nU2VsZWN0aW9uOiBDYXRhbG9nTGlzdER0byA9IHtcbiAgICAgICAgcHJvZHVjdHM6IFtdLFxuICAgICAgICBjYXRhbG9nX2ZhY2V0OiBbXSxcbiAgICAgICAgdG90YWxfcGFnZXM6IDAsXG4gICAgICAgIHRvdGFsX3Jlc3VsdHM6IDAsXG4gICAgfTtcblxuICAgIGltYWdlRnJvbnRVcmw6IHN0cmluZztcblxuICAgIHRyaWdnZXJQcm9kdWN0ID0gZmFsc2U7XG4gICAgZGV2aXNlOiBzdHJpbmc7XG4gICAgaXNvOiBzdHJpbmc7XG4gICAgY291bnRyeTogc3RyaW5nO1xuICAgIGZvcm1hdFByaWNlID0gW107XG4gICAgaXNMb2FkaW5nID0gdHJ1ZTtcblxuICAgIGZvcm0gPSBbXG4gICAgICAgIHtcbiAgICAgICAgICAgIGlkOiAxLFxuICAgICAgICAgICAgdGl0bGU6IHRoaXMudHJhbnNsYXRlU2VydmljZS5pbnN0YW50KCd3Yi5wcm9kdWN0bGlzdC4xJyksXG4gICAgICAgICAgICB2YWx1ZTogJ3NlbGVjdGlvbicsXG4gICAgICAgIH0sXG4gICAgICAgIHtcbiAgICAgICAgICAgIGlkOiAyLFxuICAgICAgICAgICAgdGl0bGU6IHRoaXMudHJhbnNsYXRlU2VydmljZS5pbnN0YW50KCd3Yi5wcm9kdWN0bGlzdC4yJyksXG4gICAgICAgICAgICB2YWx1ZTogJ2Rpc2NvdW50JyxcbiAgICAgICAgfSxcbiAgICAgICAge1xuICAgICAgICAgICAgaWQ6IDMsXG4gICAgICAgICAgICB0aXRsZTogdGhpcy50cmFuc2xhdGVTZXJ2aWNlLmluc3RhbnQoJ3diLnByb2R1Y3RsaXN0LjMnKSxcbiAgICAgICAgICAgIHZhbHVlOiAnbmV3JyxcbiAgICAgICAgfSxcbiAgICAgICAge1xuICAgICAgICAgICAgaWQ6IDQsXG4gICAgICAgICAgICB0aXRsZTogdGhpcy50cmFuc2xhdGVTZXJ2aWNlLmluc3RhbnQoJ3diLnByb2R1Y3RsaXN0LjQnKSxcbiAgICAgICAgICAgIHZhbHVlOiAnZmxhc2gnLFxuICAgICAgICB9LFxuICAgIF07XG5cbiAgICBjb25zdHJ1Y3RvcihcbiAgICAgICAgcHJpdmF0ZSBhcGlTZXJ2aWNlOiBBcGlTZXJ2aWNlLFxuICAgICAgICBwcml2YXRlIGV4dGVybmFsQ29uZmlnU2VydmljZTogRXh0ZXJuYWxDb25maWdTZXJ2aWNlLFxuICAgICAgICBwcml2YXRlIGNoYW5nZURldGVjdGlvbjogQ2hhbmdlRGV0ZWN0b3JSZWYsXG4gICAgICAgIHByaXZhdGUgdHJhbnNsYXRlU2VydmljZTogVHJhbnNsYXRlU2VydmljZSxcbiAgICAgICAgcHJpdmF0ZSBjdXJyZW5jeVNlcnZpY2U6IEN1cnJlbmN5U2VydmljZSxcblxuICAgICkge1xuICAgICAgICBzdXBlcigpO1xuICAgICAgICB0aGlzLnNldENvbXBvbmVudFNlcnZpY2UoUHJvZHVjdHNMaXN0Q2xhc3NpY1NlcnZpY2UpO1xuICAgIH1cblxuICAgIGFzeW5jIG5nT25Jbml0KCkge1xuICAgICAgICBzdXBlci5uZ09uSW5pdCgpO1xuXG4gICAgICAgIHRoaXMuaXNMb2FkaW5nID0gdHJ1ZTtcbiAgICAgICAgdGhpcy5pbWFnZUZyb250VXJsID0gdGhpcy5leHRlcm5hbENvbmZpZ1NlcnZpY2UuZ2V0VXJsSW1hZ2VGcm9udCgpO1xuICAgICAgICBpZiAoIXRoaXMuY3VycmVuY3lTZXJ2aWNlLnJlYWR5KSB7XG4gICAgICAgICAgICBjb25zdCBpc0N1cnJlbmN5UmVhZHkgPSBhd2FpdCB0aGlzLmN1cnJlbmN5U2VydmljZS5pbml0aWFsaXplQ3VycmVuY3koKTtcbiAgICAgICAgICAgIGlmIChpc0N1cnJlbmN5UmVhZHkpIHtcbiAgICAgICAgICAgICAgICB0aGlzLmRldmlzZSA9IHRoaXMuY3VycmVuY3lTZXJ2aWNlLnN5bWJvbDtcbiAgICAgICAgICAgICAgICB0aGlzLmNvdW50cnkgPSB0aGlzLmN1cnJlbmN5U2VydmljZS5jb3VudHJ5O1xuICAgICAgICAgICAgICAgIHRoaXMuaXNvID0gdGhpcy5jdXJyZW5jeVNlcnZpY2UuaXNvO1xuICAgICAgICAgICAgfSBlbHNlIHtcbiAgICAgICAgICAgICAgICB0aGlzLmRldmlzZSA9IHRoaXMuZXh0ZXJuYWxDb25maWdTZXJ2aWNlLmRldmlzZSgpO1xuICAgICAgICAgICAgfVxuICAgICAgICB9IGVsc2Uge1xuICAgICAgICAgICAgdGhpcy5kZXZpc2UgPSB0aGlzLmN1cnJlbmN5U2VydmljZS5zeW1ib2w7XG4gICAgICAgICAgICB0aGlzLmNvdW50cnkgPSB0aGlzLmN1cnJlbmN5U2VydmljZS5jb3VudHJ5O1xuICAgICAgICAgICAgdGhpcy5pc28gPSB0aGlzLmN1cnJlbmN5U2VydmljZS5pc287XG4gICAgICAgIH1cbiAgICAgICAgdGhpcy5hcGlTZXJ2aWNlLmdldFNob3BUZW1wbGF0ZUxhbmcoKS5zdWJzY3JpYmUoXG4gICAgICAgICAgICAoZGF0YSkgPT4ge1xuICAgICAgICAgICAgICAgIHRoaXMuY291bnRyeSA9IGRhdGEubG9jYWxlLnJlcGxhY2UoJ18nLCAnLScpO1xuICAgICAgICAgICAgICAgIHRoaXMuaW5pdGlhbGl6ZSgpO1xuICAgICAgICAgICAgfSxcbiAgICAgICAgICAgICgpID0+IHtcbiAgICAgICAgICAgICAgICB0aGlzLmluaXRpYWxpemUoKTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgKTtcbiAgICB9XG5cbiAgICBpbml0aWFsaXplKCkge1xuICAgICAgICBpZiAodGhpcy5jb250ZW50QmxvY2tbRk9STV9OQU1FX1RZUEVfUFJPRFVDVF0gfHwgdGhpcy5jb250ZW50QmxvY2tbRk9STV9OQU1FX0xJU1RfUFJPRFVDVF0pIHtcbiAgICAgICAgICAgIGlmICh0aGlzLmNvbnRlbnRCbG9ja1tGT1JNX05BTUVfTElTVF9QUk9EVUNUXSAmJiB0aGlzLmNvbnRlbnRCbG9ja1tGT1JNX05BTUVfTElTVF9QUk9EVUNUXS5sZW5ndGgpIHtcbiAgICAgICAgICAgICAgICB0aGlzLmNoYW5nZVByb2R1Y3QodGhpcy5jb250ZW50QmxvY2tbRk9STV9OQU1FX0xJU1RfUFJPRFVDVF0sIGZhbHNlKTtcbiAgICAgICAgICAgIH0gZWxzZSB7XG4gICAgICAgICAgICAgICAgdGhpcy5nZXRTZWxlY3Rpb24odGhpcy5jb250ZW50QmxvY2tbRk9STV9OQU1FX1RZUEVfUFJPRFVDVF0pO1xuICAgICAgICAgICAgfVxuICAgICAgICB9IGVsc2Uge1xuICAgICAgICAgICAgdGhpcy5nZXRTZWxlY3Rpb24oVFlQRV9QUk9EVUNUX1NFTEVDVElPTik7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICBzZWxlY3RUaGlzRm9ybSgpIHtcbiAgICAgICAgdGhpcy5nZXRTZWxlY3Rpb24odGhpcy5zZWxlY3RlZFZhbHVlLnZhbHVlKTtcbiAgICAgICAgdGhpcy5jb250ZW50QmxvY2tbRk9STV9OQU1FX1RZUEVfUFJPRFVDVF0gPSB0aGlzLnNlbGVjdGVkVmFsdWUudmFsdWU7XG4gICAgICAgIHRoaXMucGVyc2lzdCgpO1xuICAgIH1cblxuICAgIGNoYW5nZVByb2R1Y3QocHJvZElkcywgcGVyc2lzdCA9IHRydWUpIHtcbiAgICAgICAgaWYgKHByb2RJZHMubGVuZ3RoKSB7XG4gICAgICAgICAgICB0aGlzLmlzTG9hZGluZyA9IHRydWU7XG4gICAgICAgICAgICB0aGlzLmZvcm1hdFByaWNlID0gW107XG4gICAgICAgICAgICB0aGlzLmFwaVNlcnZpY2UuZ2V0Q2F0YWxvZ1NwZWNpZmljKHByb2RJZHMsIDEyKS5zdWJzY3JpYmUoXG4gICAgICAgICAgICAgICAgKGNhdGFsb2dMaXN0KSA9PiB7XG4gICAgICAgICAgICAgICAgICAgIHRoaXMuY2F0YWxvZ1NlbGVjdGlvbiA9IGNhdGFsb2dMaXN0O1xuICAgICAgICAgICAgICAgICAgICB0aGlzLnJlbW92ZVVuYXZhaWxhYmxlKCk7XG4gICAgICAgICAgICAgICAgICAgIGZvciAobGV0IGl0ZW0gb2YgY2F0YWxvZ0xpc3QucHJvZHVjdHMpIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIHRoaXMuZm9ybWF0UHJpY2UucHVzaChcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBuZXcgSW50bC5OdW1iZXJGb3JtYXQodGhpcy5jb3VudHJ5LCB7IHN0eWxlOiAnY3VycmVuY3knLCBjdXJyZW5jeTogdGhpcy5pc28gfSkuZm9ybWF0KGl0ZW0ucHJpY2UucHJpY2UpXG4gICAgICAgICAgICAgICAgICAgICAgICApO1xuICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICAgIHRoaXMuY2hhbmdlRGV0ZWN0aW9uLmRldGVjdENoYW5nZXMoKTtcbiAgICAgICAgICAgICAgICAgICAgaWYgKHBlcnNpc3QpIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIHRoaXMuY29udGVudEJsb2NrW0ZPUk1fTkFNRV9MSVNUX1BST0RVQ1RdID0gcHJvZElkcztcbiAgICAgICAgICAgICAgICAgICAgICAgIHRoaXMucGVyc2lzdCgpO1xuICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICAgIHRoaXMuaXNMb2FkaW5nID0gZmFsc2U7XG4gICAgICAgICAgICAgICAgfSxcbiAgICAgICAgICAgICAgICAoKSA9PiB7XG4gICAgICAgICAgICAgICAgICAgIHRoaXMuY2F0YWxvZ1NlbGVjdGlvbiA9IHtcbiAgICAgICAgICAgICAgICAgICAgICAgIHByb2R1Y3RzOiBbXSxcbiAgICAgICAgICAgICAgICAgICAgICAgIGNhdGFsb2dfZmFjZXQ6IFtdLFxuICAgICAgICAgICAgICAgICAgICAgICAgdG90YWxfcGFnZXM6IDAsXG4gICAgICAgICAgICAgICAgICAgICAgICB0b3RhbF9yZXN1bHRzOiAwLFxuICAgICAgICAgICAgICAgICAgICB9O1xuICAgICAgICAgICAgICAgICAgICB0aGlzLmlzTG9hZGluZyA9IGZhbHNlO1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICk7XG4gICAgICAgIH0gZWxzZSB7XG4gICAgICAgICAgICBpZiAodGhpcy5jb250ZW50QmxvY2tbRk9STV9OQU1FX1RZUEVfUFJPRFVDVF0pIHtcbiAgICAgICAgICAgICAgICB0aGlzLmdldFNlbGVjdGlvbih0aGlzLmNvbnRlbnRCbG9ja1tGT1JNX05BTUVfVFlQRV9QUk9EVUNUXSk7XG4gICAgICAgICAgICB9IGVsc2Uge1xuICAgICAgICAgICAgICAgIHRoaXMuZ2V0U2VsZWN0aW9uKFRZUEVfUFJPRFVDVF9TRUxFQ1RJT04pO1xuICAgICAgICAgICAgfVxuICAgICAgICAgICAgdGhpcy5wZXJzaXN0KCk7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICBnZXRTZWxlY3Rpb24odHlwZSkge1xuICAgICAgICB0aGlzLmlzTG9hZGluZyA9IHRydWU7XG4gICAgICAgIHRoaXMuY29udGVudEJsb2NrW0ZPUk1fTkFNRV9MSVNUX1BST0RVQ1RdID0gW107XG4gICAgICAgIGlmICh0aGlzLnN0cnVjdHVyZVNlYXJjaFByb2R1Y3QpIHtcbiAgICAgICAgICAgIHRoaXMuc3RydWN0dXJlU2VhcmNoUHJvZHVjdC5zZWxlY3RlZFByb2QgPSBbXTtcbiAgICAgICAgICAgIHRoaXMuc3RydWN0dXJlU2VhcmNoUHJvZHVjdC5jdXJyZW50U2VsZWN0ZWRDYXRhbG9nID0gW107XG4gICAgICAgIH1cbiAgICAgICAgdGhpcy5mb3JtLmZvckVhY2goKHZhbHVlcykgPT4ge1xuICAgICAgICAgICAgaWYgKHZhbHVlcy52YWx1ZSA9PT0gdHlwZSkge1xuICAgICAgICAgICAgICAgIHRoaXMuc2VsZWN0ZWRWYWx1ZSA9IHZhbHVlcztcbiAgICAgICAgICAgIH1cbiAgICAgICAgfSk7XG4gICAgICAgIHRoaXMuZm9ybWF0UHJpY2UgPSBbXTtcbiAgICAgICAgdGhpcy5hcGlTZXJ2aWNlLmdldENhdGFsb2dTZWxlY3Rpb24odHlwZSwgMTIpLnN1YnNjcmliZShcbiAgICAgICAgICAgIChjYXRhbG9nTGlzdCkgPT4ge1xuICAgICAgICAgICAgICAgIHRoaXMuY2F0YWxvZ1NlbGVjdGlvbiA9IGNhdGFsb2dMaXN0O1xuICAgICAgICAgICAgICAgIHRoaXMucmVtb3ZlVW5hdmFpbGFibGUoKTtcbiAgICAgICAgICAgICAgICBmb3IgKGxldCBpdGVtIG9mIGNhdGFsb2dMaXN0LnByb2R1Y3RzKSB7XG4gICAgICAgICAgICAgICAgICAgIHRoaXMuZm9ybWF0UHJpY2UucHVzaChcbiAgICAgICAgICAgICAgICAgICAgICAgIG5ldyBJbnRsLk51bWJlckZvcm1hdCh0aGlzLmNvdW50cnksIHsgc3R5bGU6ICdjdXJyZW5jeScsIGN1cnJlbmN5OiB0aGlzLmlzbyB9KS5mb3JtYXQoaXRlbS5wcmljZS5wcmljZSlcbiAgICAgICAgICAgICAgICAgICAgKTtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgdGhpcy5pc0xvYWRpbmcgPSBmYWxzZTtcbiAgICAgICAgICAgIH0sXG4gICAgICAgICAgICAoKSA9PiB7XG4gICAgICAgICAgICAgICAgdGhpcy5jYXRhbG9nU2VsZWN0aW9uID0ge1xuICAgICAgICAgICAgICAgICAgICBwcm9kdWN0czogW10sXG4gICAgICAgICAgICAgICAgICAgIGNhdGFsb2dfZmFjZXQ6IFtdLFxuICAgICAgICAgICAgICAgICAgICB0b3RhbF9wYWdlczogMCxcbiAgICAgICAgICAgICAgICAgICAgdG90YWxfcmVzdWx0czogMCxcbiAgICAgICAgICAgICAgICB9O1xuICAgICAgICAgICAgICAgIHRoaXMuaXNMb2FkaW5nID0gZmFsc2U7XG4gICAgICAgICAgICB9XG4gICAgICAgICk7XG4gICAgfVxuXG4gICAgcmVtb3ZlVW5hdmFpbGFibGUoKSB7XG4gICAgICAgIGxldCBpID0gMDtcbiAgICAgICAgd2hpbGUgKGkgPCB0aGlzLmNvbnRlbnRzWydibG9jayddW0ZPUk1fTkFNRV9MSVNUX1BST0RVQ1RdLmxlbmd0aCkge1xuICAgICAgICAgICAgaWYgKCEoQXJyYXkuZnJvbSh0aGlzLmNhdGFsb2dTZWxlY3Rpb24ucHJvZHVjdHMpLmZpbmQoKHNlbGVjdGlvbikgPT4geyByZXR1cm4gc2VsZWN0aW9uLmlkID09PSB0aGlzLmNvbnRlbnRzWydibG9jayddW0ZPUk1fTkFNRV9MSVNUX1BST0RVQ1RdW2ldIH0pKSkge1xuICAgICAgICAgICAgICAgIHRoaXMuY29udGVudHNbJ2Jsb2NrJ11bRk9STV9OQU1FX0xJU1RfUFJPRFVDVF0uc3BsaWNlKGksIDEpO1xuICAgICAgICAgICAgfSBlbHNlIHtcbiAgICAgICAgICAgICAgICArK2k7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG59XG4iLCI8ZGl2IGNsYXNzPVwid2ItcHJvZHVjdHMtbGlzdC1jbGFzc2ljXCIgW25nQ2xhc3NdPVwiJ25iLWxpZ25lLScgKyBjb250ZW50c1tCQVNFX0JMT0NLX0NPTlRFTlRdW0ZPUk1fTkFNRV9OQkxJR05FXVwiPlxuICAgIDxkaXY+XG4gICAgICAgIDx3Yi1zdHJ1Y3R1cmUtY29uZmlnIChpc0Nsb3NlKT1cInRyaWdnZXJQcm9kdWN0ID0gZmFsc2U7XCIgW2lzQWN0aXZlXT1cInRyaWdnZXJQcm9kdWN0XCIgW2Jsb2NrVVVJRF09XCJ1dWlkXCIgW3Bvc2l0aW9uXT1cIlRZUEVfQ09ORklHX1BPU0lUSU9OX0xFRlRfVE9QXCIgW2lzRnVsbHdpZHRoXT1cInRydWVcIj5cbiAgICAgICAgICAgIDx3Yi1zdHJ1Y3R1cmUtY29uZmlnLWNoZWNrYm94XG4gICAgICAgICAgICAgICAgW2xhYmVsXT1cIid3Yi5zdHJ1Y3R1cmVzLnRlbXBsYXRlLjMnIHwgdHJhbnNsYXRlXCJcbiAgICAgICAgICAgICAgICBbKG5nTW9kZWwpXT1cImNvbnRlbnRzW0JBU0VfQkxPQ0tfQ09OVEVOVF1bRk9STV9OQU1FX1NIT1dfVElUTEVdXCJcbiAgICAgICAgICAgICAgICAobmdNb2RlbENoYW5nZSk9XCJwZXJzaXN0KClcIlxuICAgICAgICAgICAgICAgIFtvZmZdPVwiZmFsc2VcIlxuICAgICAgICAgICAgICAgIFtvbl09XCJ0cnVlXCJcbiAgICAgICAgICAgID48L3diLXN0cnVjdHVyZS1jb25maWctY2hlY2tib3g+XG4gICAgICAgICAgICA8ZGl2IGNsYXNzPVwiY29sdW1uc1wiPlxuICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJjb2x1bW4gaXMtOFwiPlxuICAgICAgICAgICAgICAgICAgICA8d2Itc3RydWN0dXJlLXNlYXJjaC1wcm9kdWN0XG4gICAgICAgICAgICAgICAgICAgICAgICAjc3RydWN0dXJlU2VhcmNoUHJvZHVjdFxuICAgICAgICAgICAgICAgICAgICAgICAgW3NlYXJjaE51bWJlcl09XCIyMFwiXG4gICAgICAgICAgICAgICAgICAgICAgICBbbGFiZWxdPVwiJ3diLnN0cnVjdHVyZXMudGVtcGxhdGUuMjUnIHwgdHJhbnNsYXRlXCJcbiAgICAgICAgICAgICAgICAgICAgICAgIChuZXdTZWFyY2gpPVwiY2hhbmdlUHJvZHVjdCgkZXZlbnQpXCJcbiAgICAgICAgICAgICAgICAgICAgICAgIFtzZWxlY3RlZFByb2RdPVwiY29udGVudHNbQkFTRV9CTE9DS19DT05URU5UXVtGT1JNX05BTUVfTElTVF9QUk9EVUNUXVwiXG4gICAgICAgICAgICAgICAgICAgID48L3diLXN0cnVjdHVyZS1zZWFyY2gtcHJvZHVjdD5cbiAgICAgICAgICAgICAgICA8L2Rpdj5cbiAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwiY29sdW1uIGlzLTRcIj5cbiAgICAgICAgICAgICAgICAgICAgPHdiLXN0cnVjdHVyZS1zZWxlY3RcbiAgICAgICAgICAgICAgICAgICAgICAgIFtsYWJlbF09XCInd2Iuc3RydWN0dXJlcy50ZW1wbGF0ZS4yNicgfCB0cmFuc2xhdGVcIlxuICAgICAgICAgICAgICAgICAgICAgICAgW3NlbGVjdGVkVmFsdWVdPVwic2VsZWN0ZWRWYWx1ZVwiXG4gICAgICAgICAgICAgICAgICAgICAgICBbZm9ybXNdPVwiZm9ybVwiXG4gICAgICAgICAgICAgICAgICAgICAgICBbbGFyZ2VdPVwidHJ1ZVwiXG4gICAgICAgICAgICAgICAgICAgICAgICBbaWNvbl09XCInZmFsIGZhLWJveC1hbHQnXCJcbiAgICAgICAgICAgICAgICAgICAgICAgIChjaGFuZ2VkKT1cInNlbGVjdGVkVmFsdWUgPSAkZXZlbnQ7IHNlbGVjdFRoaXNGb3JtKClcIlxuICAgICAgICAgICAgICAgICAgICA+PC93Yi1zdHJ1Y3R1cmUtc2VsZWN0PlxuICAgICAgICAgICAgICAgIDwvZGl2PlxuICAgICAgICAgICAgPC9kaXY+XG4gICAgICAgIDwvd2Itc3RydWN0dXJlLWNvbmZpZz5cbiAgICA8L2Rpdj5cbiAgICA8ZGl2IGNsYXNzPVwid2ItcHJvZHVjdHMtbGlzdC1jbGFzc2ljX190ZXh0XCIgKm5nSWY9XCJjb250ZW50c1tCQVNFX0JMT0NLX0NPTlRFTlRdW0ZPUk1fTkFNRV9TSE9XX1RJVExFXVwiPlxuICAgICAgICA8d3otZWRpdG9yXG4gICAgICAgICAgICBbKG5nTW9kZWwpXT1cImNvbnRlbnRzW0JBU0VfQkxPQ0tfQ09OVEVOVF1bRk9STV9OQU1FX1RJVExFXVwiXG4gICAgICAgICAgICAobmdNb2RlbENoYW5nZSk9XCJwZXJzaXN0KClcIlxuICAgICAgICAgICAgW3BsYWNlaG9sZGVyXT1cIid3Yi5zaGFyZWQuY29tcG9uZW50cy5xdWlsbC4xJyB8IHRyYW5zbGF0ZVwiXG4gICAgICAgID5cbiAgICAgICAgPC93ei1lZGl0b3I+XG4gICAgPC9kaXY+XG4gICAgPHdiLWxvYWRlciAqbmdJZj1cImlzTG9hZGluZ1wiIGNsYXNzPVwiaXMtZnVsbHNpemVcIj48L3diLWxvYWRlcj5cbiAgICA8ZGl2XG4gICAgICAgIGNsYXNzPVwid2ItcHJvZHVjdHMtbGlzdC1jbGFzc2ljX19saXN0XCJcbiAgICAgICAgKm5nSWY9XCJjYXRhbG9nU2VsZWN0aW9uICE9PSB1bmRlZmluZWQgJiYgY2F0YWxvZ1NlbGVjdGlvbi5wcm9kdWN0cyAmJiBjYXRhbG9nU2VsZWN0aW9uLnByb2R1Y3RzLmxlbmd0aFwiXG4gICAgPlxuICAgICAgICA8ZGl2ICpuZ0Zvcj1cImxldCBwcm9kdWN0IG9mIGNhdGFsb2dTZWxlY3Rpb24ucHJvZHVjdHMgfCBzbGljZTogMDoxMjsgbGV0IGluZGV4ID0gaW5kZXhcIiAoY2xpY2spPVwidHJpZ2dlclByb2R1Y3QgPSB0cnVlO1wiPlxuICAgICAgICAgICAgPGRpdiBjbGFzcz1cImltZy13cmFwcGVyXCIgKm5nSWY9XCJwcm9kdWN0Lm1haW5faW1hZ2VcIj5cbiAgICAgICAgICAgICAgICA8aW1nICpuZ0lmPVwicHJvZHVjdC5tYWluX2ltYWdlLmZpbGVcIiBbc3JjXT1cImltYWdlRnJvbnRVcmwgKyBwcm9kdWN0Lm1haW5faW1hZ2UuZmlsZVwiIFthbHRdPVwicHJvZHVjdC5uYW1lXCIgLz5cbiAgICAgICAgICAgIDwvZGl2PlxuICAgICAgICAgICAgPHA+e3sgcHJvZHVjdC5uYW1lIH19PC9wPlxuICAgICAgICAgICAgPHA+e3sgZm9ybWF0UHJpY2VbaW5kZXhdIH19PC9wPlxuICAgICAgICA8L2Rpdj5cbiAgICA8L2Rpdj5cbiAgICA8ZGl2IGNsYXNzPVwid2ItcHJvZHVjdHMtbGlzdC1jbGFzc2ljX19ub2xpc3RcIiAqbmdJZj1cIiFjYXRhbG9nU2VsZWN0aW9uLnByb2R1Y3RzIHx8IGNhdGFsb2dTZWxlY3Rpb24ucHJvZHVjdHMubGVuZ3RoID09PSAwXCI+XG4gICAgICAgIDxwPnt7ICd3Yi5zdHJ1Y3R1cmVzLnRlbXBsYXRlLjYnIHwgdHJhbnNsYXRlIH19PC9wPlxuICAgIDwvZGl2PlxuICAgIDxkaXYgKm5nSWY9XCIhY2F0YWxvZ1NlbGVjdGlvbiAmJiAhaXNMb2FkaW5nXCI+XG4gICAgICAgIDx3Yi1zdHJ1Y3R1cmUtc2VhcmNoLXByb2R1Y3QgW3NlYXJjaE51bWJlcl09XCI0XCIgW2xhYmVsXT1cIid3Yi5zdHJ1Y3R1cmVzLnRlbXBsYXRlLjI3JyB8IHRyYW5zbGF0ZVwiPjwvd2Itc3RydWN0dXJlLXNlYXJjaC1wcm9kdWN0PlxuICAgIDwvZGl2PlxuPC9kaXY+XG4iXX0=
@@ -120,6 +120,7 @@ export class ProductsListSelectedComponent extends StructuresComponent {
120
120
  this.formatPrice = [];
121
121
  this.apiService.getCatalogSpecific(prodIds).subscribe((catalogList) => {
122
122
  this.catalogSelection = catalogList;
123
+ this.removeUnavailable();
123
124
  for (let item of catalogList.products) {
124
125
  this.formatPrice.push(new Intl.NumberFormat(this.country, { style: 'currency', currency: this.iso }).format(item.price.price));
125
126
  }
@@ -163,6 +164,7 @@ export class ProductsListSelectedComponent extends StructuresComponent {
163
164
  this.formatPrice = [];
164
165
  this.apiService.getCatalogSelection(type, 15).subscribe((catalogList) => {
165
166
  this.catalogSelection = catalogList;
167
+ this.removeUnavailable();
166
168
  for (let item of catalogList.products) {
167
169
  this.formatPrice.push(new Intl.NumberFormat(this.country, { style: 'currency', currency: this.iso }).format(item.price.price));
168
170
  }
@@ -177,6 +179,17 @@ export class ProductsListSelectedComponent extends StructuresComponent {
177
179
  this.isLoading = false;
178
180
  });
179
181
  }
182
+ removeUnavailable() {
183
+ let i = 0;
184
+ while (i < this.contents['block'][FORM_NAME_LIST_PRODUCT].length) {
185
+ if (!(Array.from(this.catalogSelection.products).find((selection) => { return selection.id === this.contents['block'][FORM_NAME_LIST_PRODUCT][i]; }))) {
186
+ this.contents['block'][FORM_NAME_LIST_PRODUCT].splice(i, 1);
187
+ }
188
+ else {
189
+ ++i;
190
+ }
191
+ }
192
+ }
180
193
  }
181
194
  ProductsListSelectedComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.1.1", ngImport: i0, type: ProductsListSelectedComponent, deps: [{ token: i1.ApiService }, { token: i2.ExternalConfigService }, { token: i3.TranslateService }, { token: i4.CurrencyService }], target: i0.ɵɵFactoryTarget.Component });
182
195
  ProductsListSelectedComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "15.1.1", type: ProductsListSelectedComponent, selector: "wb-products-list-selected", viewQueries: [{ propertyName: "content", first: true, predicate: ["structureSearchProduct"], descendants: true }], usesInheritance: true, ngImport: i0, template: "<div class=\"wb-products-list-selected\" [ngClass]=\"'nb-ligne-' + contents[BASE_BLOCK_CONTENT][FORM_NAME_NBLIGNE]\">\n <div>\n <wb-structure-config (isClose)=\"triggerProduct = false;\" [isActive]=\"triggerProduct\" [blockUUID]=\"uuid\" [position]=\"TYPE_CONFIG_POSITION_LEFT_TOP\" [isFullwidth]=\"true\">\n <wb-structure-config-checkbox\n [label]=\"'wb.structures.template.3' | translate\"\n [(ngModel)]=\"contents[BASE_BLOCK_CONTENT][FORM_NAME_SHOW_TITLE]\"\n (ngModelChange)=\"persist()\"\n [off]=\"false\"\n [on]=\"true\"\n ></wb-structure-config-checkbox>\n <div class=\"columns\">\n <div class=\"column is-8\">\n <wb-structure-search-product\n #structureSearchProduct\n [searchNumber]=\"15\"\n [label]=\"'wb.structures.template.25' | translate\"\n (newSearch)=\"changeProduct($event)\"\n [selectedProd]=\"contents[BASE_BLOCK_CONTENT][FORM_NAME_LIST_PRODUCT]\"\n ></wb-structure-search-product>\n </div>\n <div class=\"column is-4\">\n <wb-structure-select\n [label]=\"'wb.structures.template.26' | translate\"\n [selectedValue]=\"selectedValue\"\n [forms]=\"form\"\n [large]=\"true\"\n [icon]=\"'fal fa-box-alt'\"\n (changed)=\"selectedValue = $event; selectThisForm()\"\n ></wb-structure-select>\n </div>\n </div>\n </wb-structure-config>\n </div>\n <div class=\"wb-products-list-selected__text\" *ngIf=\"contents[BASE_BLOCK_CONTENT][FORM_NAME_SHOW_TITLE]\">\n <wz-editor\n [(ngModel)]=\"contents[BASE_BLOCK_CONTENT][FORM_NAME_TITLE]\"\n (ngModelChange)=\"persist()\"\n [placeholder]=\"'wb.shared.components.quill.1' | translate\"\n >\n </wz-editor>\n </div>\n <wb-loader *ngIf=\"isLoading\" class=\"is-fullsize\"></wb-loader>\n <div\n class=\"wb-products-list-selected__list\"\n *ngIf=\"catalogSelection && catalogSelection !== undefined && catalogSelection.products && catalogSelection.products.length\"\n >\n <div class=\"columns\">\n <div class=\"column\">\n <div class=\"wb-products-list-selected__list__product\" (click)=\"triggerProduct = true;\">\n <div class=\"img-wrapper\" *ngIf=\"catalogSelection.products[0].main_image\">\n <img\n *ngIf=\"catalogSelection.products[0].main_image.file\"\n [src]=\"imageFrontUrl + catalogSelection.products[0].main_image.file\"\n [alt]=\"catalogSelection.products[0].name\"\n />\n </div>\n <p>{{ catalogSelection.products[0].name }}</p>\n <p>{{ formatPrice[0] }}</p>\n </div>\n </div>\n <div class=\"column column-max-width-50\">\n <div class=\"columns is-gapless is-multiline wb-products-list-selected__list__second\">\n <div *ngFor=\"let product of catalogSelection.products | slice: 1:5; let index = index\" class=\"column is-6\" (click)=\"triggerProduct = true;\">\n <div class=\"wb-products-list-selected__list__product\">\n <div class=\"img-wrapper\" *ngIf=\"product.main_image\">\n <img *ngIf=\"product.main_image.file\" [src]=\"imageFrontUrl + product.main_image.file\" [alt]=\"product.name\" />\n </div>\n <p>{{ product.name }}</p>\n <p>{{ formatPrice[index + 1] }}</p>\n </div>\n </div>\n </div>\n </div>\n </div>\n <div class=\"columns\" *ngIf=\"catalogSelection.products.length > 5 && contents[BASE_BLOCK_CONTENT][FORM_NAME_NBLIGNE] !== '1'\">\n <div class=\"column column-max-width-50\">\n <div class=\"columns is-gapless is-multiline wb-products-list-selected__list__second\">\n <div *ngFor=\"let product of catalogSelection.products | slice: 6:10; let index = index\" class=\"column is-6\" (click)=\"triggerProduct = true;\">\n <div class=\"wb-products-list-selected__list__product\">\n <div class=\"img-wrapper\" *ngIf=\"product.main_image\">\n <img *ngIf=\"product.main_image.file\" [src]=\"imageFrontUrl + product.main_image.file\" [alt]=\"product.name\" />\n </div>\n <p>{{ product.name }}</p>\n <p>{{ formatPrice[index + 6] }}</p>\n </div>\n </div>\n </div>\n </div>\n <div class=\"column\">\n <div class=\"wb-products-list-selected__list__product\" (click)=\"triggerProduct = true;\">\n <div class=\"img-wrapper\" *ngIf=\"catalogSelection.products[5].main_image\">\n <img\n *ngIf=\"catalogSelection.products[5].main_image.file\"\n [src]=\"imageFrontUrl + catalogSelection.products[5].main_image.file\"\n [alt]=\"catalogSelection.products[5].name\"\n />\n </div>\n <p>{{ catalogSelection.products[5].name }}</p>\n <p>{{ formatPrice[5] }}</p>\n </div>\n </div>\n </div>\n <div class=\"columns\" *ngIf=\"catalogSelection.products.length > 10 && contents[BASE_BLOCK_CONTENT][FORM_NAME_NBLIGNE] === '3'\">\n <div class=\"column\">\n <div class=\"wb-products-list-selected__list__product\" (click)=\"triggerProduct = true;\">\n <div class=\"img-wrapper\" *ngIf=\"catalogSelection.products[10].main_image\">\n <img\n *ngIf=\"catalogSelection.products[10].main_image.file\"\n [src]=\"imageFrontUrl + catalogSelection.products[10].main_image.file\"\n [alt]=\"catalogSelection.products[10].name\"\n />\n </div>\n <p>{{ catalogSelection.products[10].name }}</p>\n <p>{{ formatPrice[10] }}</p>\n </div>\n </div>\n <div class=\"column column-max-width-50\">\n <div class=\"columns is-gapless is-multiline wb-products-list-selected__list__second\">\n <div *ngFor=\"let product of catalogSelection.products | slice: 11; let index = index\" class=\"column is-6\" (click)=\"triggerProduct = true;\">\n <div class=\"wb-products-list-selected__list__product\">\n <div class=\"img-wrapper\" *ngIf=\"product.main_image\">\n <img *ngIf=\"product.main_image.file\" [src]=\"imageFrontUrl + product.main_image.file\" [alt]=\"product.name\" />\n </div>\n <p>{{ product.name }}</p>\n <p>{{ formatPrice[index + 11] }}</p>\n </div>\n </div>\n </div>\n </div>\n </div>\n </div>\n <div class=\"wb-products-list-selected__nolist\" *ngIf=\"!catalogSelection.products || catalogSelection.products.length === 0\">\n <p>{{ 'wb.structures.template.6' | translate }}</p>\n </div>\n</div>\n", dependencies: [{ kind: "directive", type: i5.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "directive", type: i5.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "directive", type: i5.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: i6.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i6.NgModel, selector: "[ngModel]:not([formControlName]):not([formControl])", inputs: ["name", "disabled", "ngModel", "ngModelOptions"], outputs: ["ngModelChange"], exportAs: ["ngModel"] }, { kind: "component", type: i7.StructureConfigComponent, selector: "wb-structure-config", inputs: ["isActive", "blockUUID", "position", "isFullwidth", "small", "extraSmall"], outputs: ["isClose"] }, { kind: "component", type: i8.StructureConfigCheckboxComponent, selector: "wb-structure-config-checkbox", inputs: ["label", "on", "off"] }, { kind: "component", type: i9.StructureSelectComponent, selector: "wb-structure-select", inputs: ["selectedValue", "forms", "large", "icon", "label"], outputs: ["changed"] }, { kind: "component", type: i10.StructureSearchProductComponent, selector: "wb-structure-search-product", inputs: ["label", "searchNumber", "selectedProd"], outputs: ["newSearch"] }, { kind: "component", type: i11.LoaderComponent, selector: "wb-loader" }, { kind: "component", type: i12.WiziEditorComponent, selector: "wz-editor", inputs: ["placeholder", "position"] }, { kind: "pipe", type: i5.SlicePipe, name: "slice" }, { kind: "pipe", type: i3.TranslatePipe, name: "translate" }] });
@@ -187,4 +200,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.1.1", ngImpor
187
200
  type: ViewChild,
188
201
  args: ['structureSearchProduct']
189
202
  }] } });
190
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicHJvZHVjdHMtbGlzdC1zZWxlY3RlZC5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy93aXppLWJsb2NrL3NyYy9saWIvc3RydWN0dXJlcy9wcm9kdWN0cy1saXN0L3NlbGVjdGVkL3Byb2R1Y3RzLWxpc3Qtc2VsZWN0ZWQuY29tcG9uZW50LnRzIiwiLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvd2l6aS1ibG9jay9zcmMvbGliL3N0cnVjdHVyZXMvcHJvZHVjdHMtbGlzdC9zZWxlY3RlZC9wcm9kdWN0cy1saXN0LXNlbGVjdGVkLmNvbXBvbmVudC5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBcUIsU0FBUyxFQUFxQixTQUFTLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDM0YsT0FBTyxFQUFFLHNCQUFzQixFQUFFLHNCQUFzQixFQUFFLE1BQU0sK0JBQStCLENBQUM7QUFDL0YsT0FBTyxFQUFFLG1CQUFtQixFQUFFLE1BQU0sNEJBQTRCLENBQUM7QUFDakUsT0FBTyxFQUFFLHNCQUFzQixFQUFFLE1BQU0sOERBQThELENBQUM7QUFDdEcsT0FBTyxFQUFFLFVBQVUsRUFBRSxNQUFNLHFDQUFxQyxDQUFDO0FBQ2pFLE9BQU8sRUFBRSxxQkFBcUIsRUFBRSxNQUFNLGlEQUFpRCxDQUFDO0FBRXhGLE9BQU8sRUFBRSwyQkFBMkIsRUFBRSxNQUFNLHVFQUF1RSxDQUFDO0FBQ3BILE9BQU8sRUFBRSwrQkFBK0IsRUFBRSxNQUFNLHdGQUF3RixDQUFDO0FBRXpJLE9BQU8sRUFBRSxnQkFBZ0IsRUFBRSxNQUFNLHFCQUFxQixDQUFDO0FBQ3ZELE9BQU8sRUFBRSxlQUFlLEVBQUUsTUFBTSwwQ0FBMEMsQ0FBQzs7Ozs7Ozs7Ozs7Ozs7QUFPM0UsTUFBTSxPQUFPLDZCQUE4QixTQUFRLG1CQUE0QztJQUUzRixJQUF5QyxPQUFPLENBQUMsT0FBd0M7UUFDckYsSUFBSSxDQUFDLHNCQUFzQixHQUFHLE9BQU8sQ0FBQztJQUMxQyxDQUFDO0lBZ0RELFlBQ1ksVUFBc0IsRUFDdEIscUJBQTRDLEVBQzVDLGdCQUFrQyxFQUNsQyxlQUFnQztRQUV4QyxLQUFLLEVBQUUsQ0FBQztRQUxBLGVBQVUsR0FBVixVQUFVLENBQVk7UUFDdEIsMEJBQXFCLEdBQXJCLHFCQUFxQixDQUF1QjtRQUM1QyxxQkFBZ0IsR0FBaEIsZ0JBQWdCLENBQWtCO1FBQ2xDLG9CQUFlLEdBQWYsZUFBZSxDQUFpQjtRQWxENUMsa0JBQWEsR0FBRztZQUNaLEVBQUUsRUFBRSxDQUFDO1lBQ0wsS0FBSyxFQUFFLDBCQUEwQjtZQUNqQyxLQUFLLEVBQUUsV0FBVztTQUNyQixDQUFDO1FBRUYsbUJBQWMsR0FBRyxLQUFLLENBQUM7UUFFdkIscUJBQWdCLEdBQW1CO1lBQy9CLFFBQVEsRUFBRSxFQUFFO1lBQ1osYUFBYSxFQUFFLEVBQUU7WUFDakIsV0FBVyxFQUFFLENBQUM7WUFDZCxhQUFhLEVBQUUsQ0FBQztTQUNuQixDQUFDO1FBT0YsZ0JBQVcsR0FBRyxFQUFFLENBQUM7UUFDakIsY0FBUyxHQUFHLElBQUksQ0FBQztRQUVqQixTQUFJLEdBQUc7WUFDSDtnQkFDSSxFQUFFLEVBQUUsQ0FBQztnQkFDTCxLQUFLLEVBQUUsSUFBSSxDQUFDLGdCQUFnQixDQUFDLE9BQU8sQ0FBQyxrQkFBa0IsQ0FBQztnQkFDeEQsS0FBSyxFQUFFLFdBQVc7YUFDckI7WUFDRDtnQkFDSSxFQUFFLEVBQUUsQ0FBQztnQkFDTCxLQUFLLEVBQUUsSUFBSSxDQUFDLGdCQUFnQixDQUFDLE9BQU8sQ0FBQyxrQkFBa0IsQ0FBQztnQkFDeEQsS0FBSyxFQUFFLFVBQVU7YUFDcEI7WUFDRDtnQkFDSSxFQUFFLEVBQUUsQ0FBQztnQkFDTCxLQUFLLEVBQUUsSUFBSSxDQUFDLGdCQUFnQixDQUFDLE9BQU8sQ0FBQyxrQkFBa0IsQ0FBQztnQkFDeEQsS0FBSyxFQUFFLEtBQUs7YUFDZjtZQUNEO2dCQUNJLEVBQUUsRUFBRSxDQUFDO2dCQUNMLEtBQUssRUFBRSxJQUFJLENBQUMsZ0JBQWdCLENBQUMsT0FBTyxDQUFDLGtCQUFrQixDQUFDO2dCQUN4RCxLQUFLLEVBQUUsT0FBTzthQUNqQjtTQUNKLENBQUM7UUFTRSxJQUFJLENBQUMsbUJBQW1CLENBQUMsMkJBQTJCLENBQUMsQ0FBQztJQUMxRCxDQUFDO0lBRUQsS0FBSyxDQUFDLFFBQVE7UUFDVixLQUFLLENBQUMsUUFBUSxFQUFFLENBQUM7UUFFakIsSUFBSSxDQUFDLFNBQVMsR0FBRyxJQUFJLENBQUM7UUFDdEIsSUFBSSxDQUFDLGFBQWEsR0FBRyxJQUFJLENBQUMscUJBQXFCLENBQUMsZ0JBQWdCLEVBQUUsQ0FBQztRQUNuRSxJQUFJLENBQUMsSUFBSSxDQUFDLGVBQWUsQ0FBQyxLQUFLLEVBQUU7WUFDN0IsTUFBTSxlQUFlLEdBQUcsTUFBTSxJQUFJLENBQUMsZUFBZSxDQUFDLGtCQUFrQixFQUFFLENBQUM7WUFDeEUsSUFBSSxlQUFlLEVBQUU7Z0JBQ2pCLElBQUksQ0FBQyxNQUFNLEdBQUcsSUFBSSxDQUFDLGVBQWUsQ0FBQyxNQUFNLENBQUM7Z0JBQzFDLElBQUksQ0FBQyxPQUFPLEdBQUcsSUFBSSxDQUFDLGVBQWUsQ0FBQyxPQUFPLENBQUM7Z0JBQzVDLElBQUksQ0FBQyxHQUFHLEdBQUcsSUFBSSxDQUFDLGVBQWUsQ0FBQyxHQUFHLENBQUM7YUFDdkM7aUJBQU07Z0JBQ0gsSUFBSSxDQUFDLE1BQU0sR0FBRyxJQUFJLENBQUMscUJBQXFCLENBQUMsTUFBTSxFQUFFLENBQUM7YUFDckQ7U0FDSjthQUFNO1lBQ0gsSUFBSSxDQUFDLE1BQU0sR0FBRyxJQUFJLENBQUMsZUFBZSxDQUFDLE1BQU0sQ0FBQztZQUMxQyxJQUFJLENBQUMsT0FBTyxHQUFHLElBQUksQ0FBQyxlQUFlLENBQUMsT0FBTyxDQUFDO1lBQzVDLElBQUksQ0FBQyxHQUFHLEdBQUcsSUFBSSxDQUFDLGVBQWUsQ0FBQyxHQUFHLENBQUM7U0FDdkM7UUFDRCxJQUFJLENBQUMsVUFBVSxDQUFDLG1CQUFtQixFQUFFLENBQUMsU0FBUyxDQUMzQyxDQUFDLElBQUksRUFBRSxFQUFFO1lBQ0wsSUFBSSxDQUFDLE9BQU8sR0FBRyxJQUFJLENBQUMsTUFBTSxDQUFDLE9BQU8sQ0FBQyxHQUFHLEVBQUUsR0FBRyxDQUFDLENBQUM7WUFDN0MsSUFBSSxDQUFDLFVBQVUsRUFBRSxDQUFDO1FBQ3RCLENBQUMsRUFDRCxHQUFHLEVBQUU7WUFDRCxJQUFJLENBQUMsVUFBVSxFQUFFLENBQUM7UUFDdEIsQ0FBQyxDQUNKLENBQUM7SUFDTixDQUFDO0lBRUQsVUFBVTtRQUNOLElBQUksSUFBSSxDQUFDLFlBQVksQ0FBQyxzQkFBc0IsQ0FBQyxFQUFFO1lBQzNDLElBQUksSUFBSSxDQUFDLFlBQVksQ0FBQyxzQkFBc0IsQ0FBQyxJQUFJLElBQUksQ0FBQyxZQUFZLENBQUMsc0JBQXNCLENBQUMsQ0FBQyxNQUFNLEVBQUU7Z0JBQy9GLElBQUksQ0FBQyxhQUFhLENBQUMsSUFBSSxDQUFDLFlBQVksQ0FBQyxzQkFBc0IsQ0FBQyxFQUFFLEtBQUssQ0FBQyxDQUFDO2FBQ3hFO2lCQUFNO2dCQUNILElBQUksQ0FBQyxZQUFZLENBQUMsSUFBSSxDQUFDLFlBQVksQ0FBQyxzQkFBc0IsQ0FBQyxDQUFDLENBQUM7YUFDaEU7U0FDSjthQUFNO1lBQ0gsSUFBSSxDQUFDLFlBQVksQ0FBQyxzQkFBc0IsQ0FBQyxDQUFDO1NBQzdDO0lBQ0wsQ0FBQztJQUVELGNBQWM7UUFDVixJQUFJLENBQUMsWUFBWSxDQUFDLElBQUksQ0FBQyxhQUFhLENBQUMsS0FBSyxDQUFDLENBQUM7UUFDNUMsSUFBSSxDQUFDLFlBQVksQ0FBQyxzQkFBc0IsQ0FBQyxHQUFHLElBQUksQ0FBQyxhQUFhLENBQUMsS0FBSyxDQUFDO1FBQ3JFLElBQUksQ0FBQyxPQUFPLEVBQUUsQ0FBQztJQUNuQixDQUFDO0lBRUQsYUFBYSxDQUFDLE9BQU8sRUFBRSxPQUFPLEdBQUcsSUFBSTtRQUNqQyxJQUFJLE9BQU8sQ0FBQyxNQUFNLEVBQUU7WUFDaEIsSUFBSSxDQUFDLFNBQVMsR0FBRyxJQUFJLENBQUM7WUFDdEIsSUFBSSxDQUFDLFdBQVcsR0FBRyxFQUFFLENBQUM7WUFDdEIsSUFBSSxDQUFDLFVBQVUsQ0FBQyxrQkFBa0IsQ0FBQyxPQUFPLENBQUMsQ0FBQyxTQUFTLENBQ2pELENBQUMsV0FBVyxFQUFFLEVBQUU7Z0JBQ1osSUFBSSxDQUFDLGdCQUFnQixHQUFHLFdBQVcsQ0FBQztnQkFDcEMsS0FBSyxJQUFJLElBQUksSUFBSSxXQUFXLENBQUMsUUFBUSxFQUFFO29CQUNuQyxJQUFJLENBQUMsV0FBVyxDQUFDLElBQUksQ0FDakIsSUFBSSxJQUFJLENBQUMsWUFBWSxDQUFDLElBQUksQ0FBQyxPQUFPLEVBQUUsRUFBRSxLQUFLLEVBQUUsVUFBVSxFQUFFLFFBQVEsRUFBRSxJQUFJLENBQUMsR0FBRyxFQUFFLENBQUMsQ0FBQyxNQUFNLENBQUMsSUFBSSxDQUFDLEtBQUssQ0FBQyxLQUFLLENBQUMsQ0FDMUcsQ0FBQztpQkFDTDtnQkFDRCxJQUFJLE9BQU8sRUFBRTtvQkFDVCxJQUFJLENBQUMsWUFBWSxDQUFDLHNCQUFzQixDQUFDLEdBQUcsT0FBTyxDQUFDO29CQUNwRCxJQUFJLENBQUMsT0FBTyxFQUFFLENBQUM7aUJBQ2xCO2dCQUNELElBQUksQ0FBQyxTQUFTLEdBQUcsS0FBSyxDQUFDO1lBQzNCLENBQUMsRUFDRCxHQUFHLEVBQUU7Z0JBQ0QsSUFBSSxDQUFDLGdCQUFnQixHQUFHO29CQUNwQixRQUFRLEVBQUUsRUFBRTtvQkFDWixhQUFhLEVBQUUsRUFBRTtvQkFDakIsV0FBVyxFQUFFLENBQUM7b0JBQ2QsYUFBYSxFQUFFLENBQUM7aUJBQ25CLENBQUM7Z0JBQ0YsSUFBSSxDQUFDLFNBQVMsR0FBRyxLQUFLLENBQUM7WUFDM0IsQ0FBQyxDQUNKLENBQUM7U0FDTDthQUFNO1lBQ0gsSUFBSSxJQUFJLENBQUMsWUFBWSxDQUFDLHNCQUFzQixDQUFDLEVBQUU7Z0JBQzNDLElBQUksQ0FBQyxZQUFZLENBQUMsSUFBSSxDQUFDLFlBQVksQ0FBQyxzQkFBc0IsQ0FBQyxDQUFDLENBQUM7YUFDaEU7aUJBQU07Z0JBQ0gsSUFBSSxDQUFDLFlBQVksQ0FBQyxzQkFBc0IsQ0FBQyxDQUFDO2FBQzdDO1lBQ0QsSUFBSSxDQUFDLE9BQU8sRUFBRSxDQUFDO1NBQ2xCO0lBQ0wsQ0FBQztJQUVELFlBQVksQ0FBQyxJQUFJO1FBQ2IsSUFBSSxDQUFDLFNBQVMsR0FBRyxJQUFJLENBQUM7UUFDdEIsSUFBSSxDQUFDLFlBQVksQ0FBQyxzQkFBc0IsQ0FBQyxHQUFHLEVBQUUsQ0FBQztRQUMvQyxJQUFJLElBQUksQ0FBQyxzQkFBc0IsRUFBRTtZQUM3QixJQUFJLENBQUMsc0JBQXNCLENBQUMsWUFBWSxHQUFHLEVBQUUsQ0FBQztZQUM5QyxJQUFJLENBQUMsc0JBQXNCLENBQUMsc0JBQXNCLEdBQUcsRUFBRSxDQUFDO1NBQzNEO1FBQ0QsSUFBSSxDQUFDLElBQUksQ0FBQyxPQUFPLENBQUMsQ0FBQyxNQUFNLEVBQUUsRUFBRTtZQUN6QixJQUFJLE1BQU0sQ0FBQyxLQUFLLEtBQUssSUFBSSxFQUFFO2dCQUN2QixJQUFJLENBQUMsYUFBYSxHQUFHLE1BQU0sQ0FBQzthQUMvQjtRQUNMLENBQUMsQ0FBQyxDQUFDO1FBQ0gsSUFBSSxDQUFDLFdBQVcsR0FBRyxFQUFFLENBQUM7UUFDdEIsSUFBSSxDQUFDLFVBQVUsQ0FBQyxtQkFBbUIsQ0FBQyxJQUFJLEVBQUUsRUFBRSxDQUFDLENBQUMsU0FBUyxDQUNuRCxDQUFDLFdBQVcsRUFBRSxFQUFFO1lBQ1osSUFBSSxDQUFDLGdCQUFnQixHQUFHLFdBQVcsQ0FBQztZQUNwQyxLQUFLLElBQUksSUFBSSxJQUFJLFdBQVcsQ0FBQyxRQUFRLEVBQUU7Z0JBQ25DLElBQUksQ0FBQyxXQUFXLENBQUMsSUFBSSxDQUNqQixJQUFJLElBQUksQ0FBQyxZQUFZLENBQUMsSUFBSSxDQUFDLE9BQU8sRUFBRSxFQUFFLEtBQUssRUFBRSxVQUFVLEVBQUUsUUFBUSxFQUFFLElBQUksQ0FBQyxHQUFHLEVBQUUsQ0FBQyxDQUFDLE1BQU0sQ0FBQyxJQUFJLENBQUMsS0FBSyxDQUFDLEtBQUssQ0FBQyxDQUMxRyxDQUFDO2FBQ0w7WUFDRCxJQUFJLENBQUMsU0FBUyxHQUFHLEtBQUssQ0FBQztRQUMzQixDQUFDLEVBQ0QsR0FBRyxFQUFFO1lBQ0QsSUFBSSxDQUFDLGdCQUFnQixHQUFHO2dCQUNwQixRQUFRLEVBQUUsRUFBRTtnQkFDWixhQUFhLEVBQUUsRUFBRTtnQkFDakIsV0FBVyxFQUFFLENBQUM7Z0JBQ2QsYUFBYSxFQUFFLENBQUM7YUFDbkIsQ0FBQztZQUNGLElBQUksQ0FBQyxTQUFTLEdBQUcsS0FBSyxDQUFDO1FBQzNCLENBQUMsQ0FDSixDQUFDO0lBQ04sQ0FBQzs7MEhBckxRLDZCQUE2Qjs4R0FBN0IsNkJBQTZCLDJNQ2xCMUMsa3pQQXVJQTsyRkRySGEsNkJBQTZCO2tCQUp6QyxTQUFTOytCQUNJLDJCQUEyQixDQUFDLFFBQVEsRUFBRTtrTUFLUCxPQUFPO3NCQUEvQyxTQUFTO3VCQUFDLHdCQUF3QiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IENoYW5nZURldGVjdG9yUmVmLCBDb21wb25lbnQsIE9uRGVzdHJveSwgT25Jbml0LCBWaWV3Q2hpbGQgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IEZPUk1fTkFNRV9MSVNUX1BST0RVQ1QsIEZPUk1fTkFNRV9UWVBFX1BST0RVQ1QgfSBmcm9tICcuLi8uLi8uLi9kdG9zL2Zvcm1zL2Zvcm1zLmR0byc7XG5pbXBvcnQgeyBTdHJ1Y3R1cmVzQ29tcG9uZW50IH0gZnJvbSAnLi4vLi4vc3RydWN0dXJlcy5jb21wb25lbnQnO1xuaW1wb3J0IHsgVFlQRV9QUk9EVUNUX1NFTEVDVElPTiB9IGZyb20gJy4uLy4uLy4uL2R0b3MvYmxvY2tzL3Byb2R1Y3RzLWxpc3QvcHJvZHVjdHMtbGlzdC1jbGFzc2ljLmR0byc7XG5pbXBvcnQgeyBBcGlTZXJ2aWNlIH0gZnJvbSAnLi4vLi4vLi4vc2VydmljZXMvdXRpbHMvYXBpLnNlcnZpY2UnO1xuaW1wb3J0IHsgRXh0ZXJuYWxDb25maWdTZXJ2aWNlIH0gZnJvbSAnLi4vLi4vLi4vc2VydmljZXMvdXRpbHMvZXh0ZXJuYWwtY29uZmlnLnNlcnZpY2UnO1xuaW1wb3J0IHsgUHJvZHVjdHNMaXN0U2VsZWN0ZWREdG8gfSBmcm9tICcuLi8uLi8uLi9kdG9zL2Jsb2Nrcy9wcm9kdWN0cy1saXN0L3Byb2R1Y3RzLWxpc3Qtc2VsZWN0ZWQuZHRvJztcbmltcG9ydCB7IFByb2R1Y3RzTGlzdFNlbGVjdGVkU2VydmljZSB9IGZyb20gJy4uLy4uLy4uL3NlcnZpY2VzL2Jsb2Nrcy9wcm9kdWN0cy1saXN0L3Byb2R1Y3RzLWxpc3Qtc2VsZWN0ZWQuc2VydmljZSc7XG5pbXBvcnQgeyBTdHJ1Y3R1cmVTZWFyY2hQcm9kdWN0Q29tcG9uZW50IH0gZnJvbSAnLi4vLi4vLi4vc2hhcmVkL2NvbXBvbmVudHMvc3RydWN0dXJlLXNlYXJjaC1wcm9kdWN0L3N0cnVjdHVyZS1zZWFyY2gtcHJvZHVjdC5jb21wb25lbnQnO1xuaW1wb3J0IHsgQ2F0YWxvZ0xpc3REdG8gfSBmcm9tICcuLi8uLi8uLi9kdG9zL2FwaXMvY2F0YWxvZ3MvY2F0YWxvZy1saXN0LmR0byc7XG5pbXBvcnQgeyBUcmFuc2xhdGVTZXJ2aWNlIH0gZnJvbSAnQG5neC10cmFuc2xhdGUvY29yZSc7XG5pbXBvcnQgeyBDdXJyZW5jeVNlcnZpY2UgfSBmcm9tICcuLi8uLi8uLi9zZXJ2aWNlcy91dGlscy9jdXJyZW5jeS5zZXJ2aWNlJztcbmltcG9ydCB7IEV4dGVybmFsQ29uZmlnRHRvIH0gZnJvbSAnLi4vLi4vLi4vZHRvcy9jb25maWdzL2V4dGVybmFsL2V4dGVybmFsLWNvbmZpZy5kdG8nO1xuXG5AQ29tcG9uZW50KHtcbiAgICBzZWxlY3RvcjogUHJvZHVjdHNMaXN0U2VsZWN0ZWRTZXJ2aWNlLnNlbGVjdG9yKCksXG4gICAgdGVtcGxhdGVVcmw6ICcuL3Byb2R1Y3RzLWxpc3Qtc2VsZWN0ZWQuY29tcG9uZW50Lmh0bWwnLFxufSlcbmV4cG9ydCBjbGFzcyBQcm9kdWN0c0xpc3RTZWxlY3RlZENvbXBvbmVudCBleHRlbmRzIFN0cnVjdHVyZXNDb21wb25lbnQ8UHJvZHVjdHNMaXN0U2VsZWN0ZWREdG8+IGltcGxlbWVudHMgT25Jbml0LCBPbkRlc3Ryb3kge1xuICAgIHN0cnVjdHVyZVNlYXJjaFByb2R1Y3Q6IFN0cnVjdHVyZVNlYXJjaFByb2R1Y3RDb21wb25lbnQ7XG4gICAgQFZpZXdDaGlsZCgnc3RydWN0dXJlU2VhcmNoUHJvZHVjdCcpIHNldCBjb250ZW50KGNvbnRyb2w6IFN0cnVjdHVyZVNlYXJjaFByb2R1Y3RDb21wb25lbnQpIHtcbiAgICAgICAgdGhpcy5zdHJ1Y3R1cmVTZWFyY2hQcm9kdWN0ID0gY29udHJvbDtcbiAgICB9XG5cbiAgICBzZWxlY3RlZFZhbHVlID0ge1xuICAgICAgICBpZDogMSxcbiAgICAgICAgdGl0bGU6ICd3Yi5wcm9kdWN0bGlzdC5zZWxlY3Rpb24nLFxuICAgICAgICB2YWx1ZTogJ3NlbGVjdGlvbicsXG4gICAgfTtcblxuICAgIHRyaWdnZXJQcm9kdWN0ID0gZmFsc2U7XG5cbiAgICBjYXRhbG9nU2VsZWN0aW9uOiBDYXRhbG9nTGlzdER0byA9IHtcbiAgICAgICAgcHJvZHVjdHM6IFtdLFxuICAgICAgICBjYXRhbG9nX2ZhY2V0OiBbXSxcbiAgICAgICAgdG90YWxfcGFnZXM6IDAsXG4gICAgICAgIHRvdGFsX3Jlc3VsdHM6IDAsXG4gICAgfTtcblxuICAgIGltYWdlRnJvbnRVcmw6IHN0cmluZztcblxuICAgIGRldmlzZTogc3RyaW5nO1xuICAgIGlzbzogc3RyaW5nO1xuICAgIGNvdW50cnk6IHN0cmluZztcbiAgICBmb3JtYXRQcmljZSA9IFtdO1xuICAgIGlzTG9hZGluZyA9IHRydWU7XG5cbiAgICBmb3JtID0gW1xuICAgICAgICB7XG4gICAgICAgICAgICBpZDogMSxcbiAgICAgICAgICAgIHRpdGxlOiB0aGlzLnRyYW5zbGF0ZVNlcnZpY2UuaW5zdGFudCgnd2IucHJvZHVjdGxpc3QuMScpLFxuICAgICAgICAgICAgdmFsdWU6ICdzZWxlY3Rpb24nLFxuICAgICAgICB9LFxuICAgICAgICB7XG4gICAgICAgICAgICBpZDogMixcbiAgICAgICAgICAgIHRpdGxlOiB0aGlzLnRyYW5zbGF0ZVNlcnZpY2UuaW5zdGFudCgnd2IucHJvZHVjdGxpc3QuMicpLFxuICAgICAgICAgICAgdmFsdWU6ICdkaXNjb3VudCcsXG4gICAgICAgIH0sXG4gICAgICAgIHtcbiAgICAgICAgICAgIGlkOiAzLFxuICAgICAgICAgICAgdGl0bGU6IHRoaXMudHJhbnNsYXRlU2VydmljZS5pbnN0YW50KCd3Yi5wcm9kdWN0bGlzdC4zJyksXG4gICAgICAgICAgICB2YWx1ZTogJ25ldycsXG4gICAgICAgIH0sXG4gICAgICAgIHtcbiAgICAgICAgICAgIGlkOiA0LFxuICAgICAgICAgICAgdGl0bGU6IHRoaXMudHJhbnNsYXRlU2VydmljZS5pbnN0YW50KCd3Yi5wcm9kdWN0bGlzdC40JyksXG4gICAgICAgICAgICB2YWx1ZTogJ2ZsYXNoJyxcbiAgICAgICAgfSxcbiAgICBdO1xuXG4gICAgY29uc3RydWN0b3IoXG4gICAgICAgIHByaXZhdGUgYXBpU2VydmljZTogQXBpU2VydmljZSxcbiAgICAgICAgcHJpdmF0ZSBleHRlcm5hbENvbmZpZ1NlcnZpY2U6IEV4dGVybmFsQ29uZmlnU2VydmljZSxcbiAgICAgICAgcHJpdmF0ZSB0cmFuc2xhdGVTZXJ2aWNlOiBUcmFuc2xhdGVTZXJ2aWNlLFxuICAgICAgICBwcml2YXRlIGN1cnJlbmN5U2VydmljZTogQ3VycmVuY3lTZXJ2aWNlLFxuICAgICkge1xuICAgICAgICBzdXBlcigpO1xuICAgICAgICB0aGlzLnNldENvbXBvbmVudFNlcnZpY2UoUHJvZHVjdHNMaXN0U2VsZWN0ZWRTZXJ2aWNlKTtcbiAgICB9XG5cbiAgICBhc3luYyBuZ09uSW5pdCgpIHtcbiAgICAgICAgc3VwZXIubmdPbkluaXQoKTtcblxuICAgICAgICB0aGlzLmlzTG9hZGluZyA9IHRydWU7XG4gICAgICAgIHRoaXMuaW1hZ2VGcm9udFVybCA9IHRoaXMuZXh0ZXJuYWxDb25maWdTZXJ2aWNlLmdldFVybEltYWdlRnJvbnQoKTtcbiAgICAgICAgaWYgKCF0aGlzLmN1cnJlbmN5U2VydmljZS5yZWFkeSkge1xuICAgICAgICAgICAgY29uc3QgaXNDdXJyZW5jeVJlYWR5ID0gYXdhaXQgdGhpcy5jdXJyZW5jeVNlcnZpY2UuaW5pdGlhbGl6ZUN1cnJlbmN5KCk7XG4gICAgICAgICAgICBpZiAoaXNDdXJyZW5jeVJlYWR5KSB7XG4gICAgICAgICAgICAgICAgdGhpcy5kZXZpc2UgPSB0aGlzLmN1cnJlbmN5U2VydmljZS5zeW1ib2w7XG4gICAgICAgICAgICAgICAgdGhpcy5jb3VudHJ5ID0gdGhpcy5jdXJyZW5jeVNlcnZpY2UuY291bnRyeTtcbiAgICAgICAgICAgICAgICB0aGlzLmlzbyA9IHRoaXMuY3VycmVuY3lTZXJ2aWNlLmlzbztcbiAgICAgICAgICAgIH0gZWxzZSB7XG4gICAgICAgICAgICAgICAgdGhpcy5kZXZpc2UgPSB0aGlzLmV4dGVybmFsQ29uZmlnU2VydmljZS5kZXZpc2UoKTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfSBlbHNlIHtcbiAgICAgICAgICAgIHRoaXMuZGV2aXNlID0gdGhpcy5jdXJyZW5jeVNlcnZpY2Uuc3ltYm9sO1xuICAgICAgICAgICAgdGhpcy5jb3VudHJ5ID0gdGhpcy5jdXJyZW5jeVNlcnZpY2UuY291bnRyeTtcbiAgICAgICAgICAgIHRoaXMuaXNvID0gdGhpcy5jdXJyZW5jeVNlcnZpY2UuaXNvO1xuICAgICAgICB9XG4gICAgICAgIHRoaXMuYXBpU2VydmljZS5nZXRTaG9wVGVtcGxhdGVMYW5nKCkuc3Vic2NyaWJlKFxuICAgICAgICAgICAgKGRhdGEpID0+IHtcbiAgICAgICAgICAgICAgICB0aGlzLmNvdW50cnkgPSBkYXRhLmxvY2FsZS5yZXBsYWNlKCdfJywgJy0nKTtcbiAgICAgICAgICAgICAgICB0aGlzLmluaXRpYWxpemUoKTtcbiAgICAgICAgICAgIH0sXG4gICAgICAgICAgICAoKSA9PiB7XG4gICAgICAgICAgICAgICAgdGhpcy5pbml0aWFsaXplKCk7XG4gICAgICAgICAgICB9XG4gICAgICAgICk7XG4gICAgfVxuXG4gICAgaW5pdGlhbGl6ZSgpIHtcbiAgICAgICAgaWYgKHRoaXMuY29udGVudEJsb2NrW0ZPUk1fTkFNRV9UWVBFX1BST0RVQ1RdKSB7XG4gICAgICAgICAgICBpZiAodGhpcy5jb250ZW50QmxvY2tbRk9STV9OQU1FX0xJU1RfUFJPRFVDVF0gJiYgdGhpcy5jb250ZW50QmxvY2tbRk9STV9OQU1FX0xJU1RfUFJPRFVDVF0ubGVuZ3RoKSB7XG4gICAgICAgICAgICAgICAgdGhpcy5jaGFuZ2VQcm9kdWN0KHRoaXMuY29udGVudEJsb2NrW0ZPUk1fTkFNRV9MSVNUX1BST0RVQ1RdLCBmYWxzZSk7XG4gICAgICAgICAgICB9IGVsc2Uge1xuICAgICAgICAgICAgICAgIHRoaXMuZ2V0U2VsZWN0aW9uKHRoaXMuY29udGVudEJsb2NrW0ZPUk1fTkFNRV9UWVBFX1BST0RVQ1RdKTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfSBlbHNlIHtcbiAgICAgICAgICAgIHRoaXMuZ2V0U2VsZWN0aW9uKFRZUEVfUFJPRFVDVF9TRUxFQ1RJT04pO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgc2VsZWN0VGhpc0Zvcm0oKSB7XG4gICAgICAgIHRoaXMuZ2V0U2VsZWN0aW9uKHRoaXMuc2VsZWN0ZWRWYWx1ZS52YWx1ZSk7XG4gICAgICAgIHRoaXMuY29udGVudEJsb2NrW0ZPUk1fTkFNRV9UWVBFX1BST0RVQ1RdID0gdGhpcy5zZWxlY3RlZFZhbHVlLnZhbHVlO1xuICAgICAgICB0aGlzLnBlcnNpc3QoKTtcbiAgICB9XG5cbiAgICBjaGFuZ2VQcm9kdWN0KHByb2RJZHMsIHBlcnNpc3QgPSB0cnVlKSB7XG4gICAgICAgIGlmIChwcm9kSWRzLmxlbmd0aCkge1xuICAgICAgICAgICAgdGhpcy5pc0xvYWRpbmcgPSB0cnVlO1xuICAgICAgICAgICAgdGhpcy5mb3JtYXRQcmljZSA9IFtdO1xuICAgICAgICAgICAgdGhpcy5hcGlTZXJ2aWNlLmdldENhdGFsb2dTcGVjaWZpYyhwcm9kSWRzKS5zdWJzY3JpYmUoXG4gICAgICAgICAgICAgICAgKGNhdGFsb2dMaXN0KSA9PiB7XG4gICAgICAgICAgICAgICAgICAgIHRoaXMuY2F0YWxvZ1NlbGVjdGlvbiA9IGNhdGFsb2dMaXN0O1xuICAgICAgICAgICAgICAgICAgICBmb3IgKGxldCBpdGVtIG9mIGNhdGFsb2dMaXN0LnByb2R1Y3RzKSB7XG4gICAgICAgICAgICAgICAgICAgICAgICB0aGlzLmZvcm1hdFByaWNlLnB1c2goXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgbmV3IEludGwuTnVtYmVyRm9ybWF0KHRoaXMuY291bnRyeSwgeyBzdHlsZTogJ2N1cnJlbmN5JywgY3VycmVuY3k6IHRoaXMuaXNvIH0pLmZvcm1hdChpdGVtLnByaWNlLnByaWNlKVxuICAgICAgICAgICAgICAgICAgICAgICAgKTtcbiAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICBpZiAocGVyc2lzdCkge1xuICAgICAgICAgICAgICAgICAgICAgICAgdGhpcy5jb250ZW50QmxvY2tbRk9STV9OQU1FX0xJU1RfUFJPRFVDVF0gPSBwcm9kSWRzO1xuICAgICAgICAgICAgICAgICAgICAgICAgdGhpcy5wZXJzaXN0KCk7XG4gICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgICAgdGhpcy5pc0xvYWRpbmcgPSBmYWxzZTtcbiAgICAgICAgICAgICAgICB9LFxuICAgICAgICAgICAgICAgICgpID0+IHtcbiAgICAgICAgICAgICAgICAgICAgdGhpcy5jYXRhbG9nU2VsZWN0aW9uID0ge1xuICAgICAgICAgICAgICAgICAgICAgICAgcHJvZHVjdHM6IFtdLFxuICAgICAgICAgICAgICAgICAgICAgICAgY2F0YWxvZ19mYWNldDogW10sXG4gICAgICAgICAgICAgICAgICAgICAgICB0b3RhbF9wYWdlczogMCxcbiAgICAgICAgICAgICAgICAgICAgICAgIHRvdGFsX3Jlc3VsdHM6IDAsXG4gICAgICAgICAgICAgICAgICAgIH07XG4gICAgICAgICAgICAgICAgICAgIHRoaXMuaXNMb2FkaW5nID0gZmFsc2U7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgKTtcbiAgICAgICAgfSBlbHNlIHtcbiAgICAgICAgICAgIGlmICh0aGlzLmNvbnRlbnRCbG9ja1tGT1JNX05BTUVfVFlQRV9QUk9EVUNUXSkge1xuICAgICAgICAgICAgICAgIHRoaXMuZ2V0U2VsZWN0aW9uKHRoaXMuY29udGVudEJsb2NrW0ZPUk1fTkFNRV9UWVBFX1BST0RVQ1RdKTtcbiAgICAgICAgICAgIH0gZWxzZSB7XG4gICAgICAgICAgICAgICAgdGhpcy5nZXRTZWxlY3Rpb24oVFlQRV9QUk9EVUNUX1NFTEVDVElPTik7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICB0aGlzLnBlcnNpc3QoKTtcbiAgICAgICAgfVxuICAgIH1cblxuICAgIGdldFNlbGVjdGlvbih0eXBlKSB7XG4gICAgICAgIHRoaXMuaXNMb2FkaW5nID0gdHJ1ZTtcbiAgICAgICAgdGhpcy5jb250ZW50QmxvY2tbRk9STV9OQU1FX0xJU1RfUFJPRFVDVF0gPSBbXTtcbiAgICAgICAgaWYgKHRoaXMuc3RydWN0dXJlU2VhcmNoUHJvZHVjdCkge1xuICAgICAgICAgICAgdGhpcy5zdHJ1Y3R1cmVTZWFyY2hQcm9kdWN0LnNlbGVjdGVkUHJvZCA9IFtdO1xuICAgICAgICAgICAgdGhpcy5zdHJ1Y3R1cmVTZWFyY2hQcm9kdWN0LmN1cnJlbnRTZWxlY3RlZENhdGFsb2cgPSBbXTtcbiAgICAgICAgfVxuICAgICAgICB0aGlzLmZvcm0uZm9yRWFjaCgodmFsdWVzKSA9PiB7XG4gICAgICAgICAgICBpZiAodmFsdWVzLnZhbHVlID09PSB0eXBlKSB7XG4gICAgICAgICAgICAgICAgdGhpcy5zZWxlY3RlZFZhbHVlID0gdmFsdWVzO1xuICAgICAgICAgICAgfVxuICAgICAgICB9KTtcbiAgICAgICAgdGhpcy5mb3JtYXRQcmljZSA9IFtdO1xuICAgICAgICB0aGlzLmFwaVNlcnZpY2UuZ2V0Q2F0YWxvZ1NlbGVjdGlvbih0eXBlLCAxNSkuc3Vic2NyaWJlKFxuICAgICAgICAgICAgKGNhdGFsb2dMaXN0KSA9PiB7XG4gICAgICAgICAgICAgICAgdGhpcy5jYXRhbG9nU2VsZWN0aW9uID0gY2F0YWxvZ0xpc3Q7XG4gICAgICAgICAgICAgICAgZm9yIChsZXQgaXRlbSBvZiBjYXRhbG9nTGlzdC5wcm9kdWN0cykge1xuICAgICAgICAgICAgICAgICAgICB0aGlzLmZvcm1hdFByaWNlLnB1c2goXG4gICAgICAgICAgICAgICAgICAgICAgICBuZXcgSW50bC5OdW1iZXJGb3JtYXQodGhpcy5jb3VudHJ5LCB7IHN0eWxlOiAnY3VycmVuY3knLCBjdXJyZW5jeTogdGhpcy5pc28gfSkuZm9ybWF0KGl0ZW0ucHJpY2UucHJpY2UpXG4gICAgICAgICAgICAgICAgICAgICk7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIHRoaXMuaXNMb2FkaW5nID0gZmFsc2U7XG4gICAgICAgICAgICB9LFxuICAgICAgICAgICAgKCkgPT4ge1xuICAgICAgICAgICAgICAgIHRoaXMuY2F0YWxvZ1NlbGVjdGlvbiA9IHtcbiAgICAgICAgICAgICAgICAgICAgcHJvZHVjdHM6IFtdLFxuICAgICAgICAgICAgICAgICAgICBjYXRhbG9nX2ZhY2V0OiBbXSxcbiAgICAgICAgICAgICAgICAgICAgdG90YWxfcGFnZXM6IDAsXG4gICAgICAgICAgICAgICAgICAgIHRvdGFsX3Jlc3VsdHM6IDAsXG4gICAgICAgICAgICAgICAgfTtcbiAgICAgICAgICAgICAgICB0aGlzLmlzTG9hZGluZyA9IGZhbHNlO1xuICAgICAgICAgICAgfVxuICAgICAgICApO1xuICAgIH1cbn1cbiIsIjxkaXYgY2xhc3M9XCJ3Yi1wcm9kdWN0cy1saXN0LXNlbGVjdGVkXCIgW25nQ2xhc3NdPVwiJ25iLWxpZ25lLScgKyBjb250ZW50c1tCQVNFX0JMT0NLX0NPTlRFTlRdW0ZPUk1fTkFNRV9OQkxJR05FXVwiPlxuICAgIDxkaXY+XG4gICAgICAgIDx3Yi1zdHJ1Y3R1cmUtY29uZmlnIChpc0Nsb3NlKT1cInRyaWdnZXJQcm9kdWN0ID0gZmFsc2U7XCIgW2lzQWN0aXZlXT1cInRyaWdnZXJQcm9kdWN0XCIgIFtibG9ja1VVSURdPVwidXVpZFwiIFtwb3NpdGlvbl09XCJUWVBFX0NPTkZJR19QT1NJVElPTl9MRUZUX1RPUFwiIFtpc0Z1bGx3aWR0aF09XCJ0cnVlXCI+XG4gICAgICAgICAgICA8d2Itc3RydWN0dXJlLWNvbmZpZy1jaGVja2JveFxuICAgICAgICAgICAgICAgIFtsYWJlbF09XCInd2Iuc3RydWN0dXJlcy50ZW1wbGF0ZS4zJyB8IHRyYW5zbGF0ZVwiXG4gICAgICAgICAgICAgICAgWyhuZ01vZGVsKV09XCJjb250ZW50c1tCQVNFX0JMT0NLX0NPTlRFTlRdW0ZPUk1fTkFNRV9TSE9XX1RJVExFXVwiXG4gICAgICAgICAgICAgICAgKG5nTW9kZWxDaGFuZ2UpPVwicGVyc2lzdCgpXCJcbiAgICAgICAgICAgICAgICBbb2ZmXT1cImZhbHNlXCJcbiAgICAgICAgICAgICAgICBbb25dPVwidHJ1ZVwiXG4gICAgICAgICAgICA+PC93Yi1zdHJ1Y3R1cmUtY29uZmlnLWNoZWNrYm94PlxuICAgICAgICAgICAgPGRpdiBjbGFzcz1cImNvbHVtbnNcIj5cbiAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwiY29sdW1uIGlzLThcIj5cbiAgICAgICAgICAgICAgICAgICAgPHdiLXN0cnVjdHVyZS1zZWFyY2gtcHJvZHVjdFxuICAgICAgICAgICAgICAgICAgICAgICAgI3N0cnVjdHVyZVNlYXJjaFByb2R1Y3RcbiAgICAgICAgICAgICAgICAgICAgICAgIFtzZWFyY2hOdW1iZXJdPVwiMTVcIlxuICAgICAgICAgICAgICAgICAgICAgICAgW2xhYmVsXT1cIid3Yi5zdHJ1Y3R1cmVzLnRlbXBsYXRlLjI1JyB8IHRyYW5zbGF0ZVwiXG4gICAgICAgICAgICAgICAgICAgICAgICAobmV3U2VhcmNoKT1cImNoYW5nZVByb2R1Y3QoJGV2ZW50KVwiXG4gICAgICAgICAgICAgICAgICAgICAgICBbc2VsZWN0ZWRQcm9kXT1cImNvbnRlbnRzW0JBU0VfQkxPQ0tfQ09OVEVOVF1bRk9STV9OQU1FX0xJU1RfUFJPRFVDVF1cIlxuICAgICAgICAgICAgICAgICAgICA+PC93Yi1zdHJ1Y3R1cmUtc2VhcmNoLXByb2R1Y3Q+XG4gICAgICAgICAgICAgICAgPC9kaXY+XG4gICAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cImNvbHVtbiBpcy00XCI+XG4gICAgICAgICAgICAgICAgICAgIDx3Yi1zdHJ1Y3R1cmUtc2VsZWN0XG4gICAgICAgICAgICAgICAgICAgICAgICBbbGFiZWxdPVwiJ3diLnN0cnVjdHVyZXMudGVtcGxhdGUuMjYnIHwgdHJhbnNsYXRlXCJcbiAgICAgICAgICAgICAgICAgICAgICAgIFtzZWxlY3RlZFZhbHVlXT1cInNlbGVjdGVkVmFsdWVcIlxuICAgICAgICAgICAgICAgICAgICAgICAgW2Zvcm1zXT1cImZvcm1cIlxuICAgICAgICAgICAgICAgICAgICAgICAgW2xhcmdlXT1cInRydWVcIlxuICAgICAgICAgICAgICAgICAgICAgICAgW2ljb25dPVwiJ2ZhbCBmYS1ib3gtYWx0J1wiXG4gICAgICAgICAgICAgICAgICAgICAgICAoY2hhbmdlZCk9XCJzZWxlY3RlZFZhbHVlID0gJGV2ZW50OyBzZWxlY3RUaGlzRm9ybSgpXCJcbiAgICAgICAgICAgICAgICAgICAgPjwvd2Itc3RydWN0dXJlLXNlbGVjdD5cbiAgICAgICAgICAgICAgICA8L2Rpdj5cbiAgICAgICAgICAgIDwvZGl2PlxuICAgICAgICA8L3diLXN0cnVjdHVyZS1jb25maWc+XG4gICAgPC9kaXY+XG4gICAgPGRpdiBjbGFzcz1cIndiLXByb2R1Y3RzLWxpc3Qtc2VsZWN0ZWRfX3RleHRcIiAqbmdJZj1cImNvbnRlbnRzW0JBU0VfQkxPQ0tfQ09OVEVOVF1bRk9STV9OQU1FX1NIT1dfVElUTEVdXCI+XG4gICAgICAgIDx3ei1lZGl0b3JcbiAgICAgICAgICAgIFsobmdNb2RlbCldPVwiY29udGVudHNbQkFTRV9CTE9DS19DT05URU5UXVtGT1JNX05BTUVfVElUTEVdXCJcbiAgICAgICAgICAgIChuZ01vZGVsQ2hhbmdlKT1cInBlcnNpc3QoKVwiXG4gICAgICAgICAgICBbcGxhY2Vob2xkZXJdPVwiJ3diLnNoYXJlZC5jb21wb25lbnRzLnF1aWxsLjEnIHwgdHJhbnNsYXRlXCJcbiAgICAgICAgPlxuICAgICAgICA8L3d6LWVkaXRvcj5cbiAgICA8L2Rpdj5cbiAgICA8d2ItbG9hZGVyICpuZ0lmPVwiaXNMb2FkaW5nXCIgY2xhc3M9XCJpcy1mdWxsc2l6ZVwiPjwvd2ItbG9hZGVyPlxuICAgIDxkaXZcbiAgICAgICAgY2xhc3M9XCJ3Yi1wcm9kdWN0cy1saXN0LXNlbGVjdGVkX19saXN0XCJcbiAgICAgICAgKm5nSWY9XCJjYXRhbG9nU2VsZWN0aW9uICYmIGNhdGFsb2dTZWxlY3Rpb24gIT09IHVuZGVmaW5lZCAmJiBjYXRhbG9nU2VsZWN0aW9uLnByb2R1Y3RzICYmIGNhdGFsb2dTZWxlY3Rpb24ucHJvZHVjdHMubGVuZ3RoXCJcbiAgICA+XG4gICAgICAgIDxkaXYgY2xhc3M9XCJjb2x1bW5zXCI+XG4gICAgICAgICAgICA8ZGl2IGNsYXNzPVwiY29sdW1uXCI+XG4gICAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cIndiLXByb2R1Y3RzLWxpc3Qtc2VsZWN0ZWRfX2xpc3RfX3Byb2R1Y3RcIiAoY2xpY2spPVwidHJpZ2dlclByb2R1Y3QgPSB0cnVlO1wiPlxuICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwiaW1nLXdyYXBwZXJcIiAqbmdJZj1cImNhdGFsb2dTZWxlY3Rpb24ucHJvZHVjdHNbMF0ubWFpbl9pbWFnZVwiPlxuICAgICAgICAgICAgICAgICAgICAgICAgPGltZ1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICpuZ0lmPVwiY2F0YWxvZ1NlbGVjdGlvbi5wcm9kdWN0c1swXS5tYWluX2ltYWdlLmZpbGVcIlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIFtzcmNdPVwiaW1hZ2VGcm9udFVybCArIGNhdGFsb2dTZWxlY3Rpb24ucHJvZHVjdHNbMF0ubWFpbl9pbWFnZS5maWxlXCJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBbYWx0XT1cImNhdGFsb2dTZWxlY3Rpb24ucHJvZHVjdHNbMF0ubmFtZVwiXG4gICAgICAgICAgICAgICAgICAgICAgICAvPlxuICAgICAgICAgICAgICAgICAgICA8L2Rpdj5cbiAgICAgICAgICAgICAgICAgICAgPHA+e3sgY2F0YWxvZ1NlbGVjdGlvbi5wcm9kdWN0c1swXS5uYW1lIH19PC9wPlxuICAgICAgICAgICAgICAgICAgICA8cD57eyBmb3JtYXRQcmljZVswXSB9fTwvcD5cbiAgICAgICAgICAgICAgICA8L2Rpdj5cbiAgICAgICAgICAgIDwvZGl2PlxuICAgICAgICAgICAgPGRpdiBjbGFzcz1cImNvbHVtbiBjb2x1bW4tbWF4LXdpZHRoLTUwXCI+XG4gICAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cImNvbHVtbnMgaXMtZ2FwbGVzcyBpcy1tdWx0aWxpbmUgd2ItcHJvZHVjdHMtbGlzdC1zZWxlY3RlZF9fbGlzdF9fc2Vjb25kXCI+XG4gICAgICAgICAgICAgICAgICAgIDxkaXYgKm5nRm9yPVwibGV0IHByb2R1Y3Qgb2YgY2F0YWxvZ1NlbGVjdGlvbi5wcm9kdWN0cyB8IHNsaWNlOiAxOjU7IGxldCBpbmRleCA9IGluZGV4XCIgY2xhc3M9XCJjb2x1bW4gaXMtNlwiIChjbGljayk9XCJ0cmlnZ2VyUHJvZHVjdCA9IHRydWU7XCI+XG4gICAgICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwid2ItcHJvZHVjdHMtbGlzdC1zZWxlY3RlZF9fbGlzdF9fcHJvZHVjdFwiPlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJpbWctd3JhcHBlclwiICpuZ0lmPVwicHJvZHVjdC5tYWluX2ltYWdlXCI+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxpbWcgKm5nSWY9XCJwcm9kdWN0Lm1haW5faW1hZ2UuZmlsZVwiIFtzcmNdPVwiaW1hZ2VGcm9udFVybCArIHByb2R1Y3QubWFpbl9pbWFnZS5maWxlXCIgW2FsdF09XCJwcm9kdWN0Lm5hbWVcIiAvPlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvZGl2PlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxwPnt7IHByb2R1Y3QubmFtZSB9fTwvcD5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8cD57eyBmb3JtYXRQcmljZVtpbmRleCArIDFdIH19PC9wPlxuICAgICAgICAgICAgICAgICAgICAgICAgPC9kaXY+XG4gICAgICAgICAgICAgICAgICAgIDwvZGl2PlxuICAgICAgICAgICAgICAgIDwvZGl2PlxuICAgICAgICAgICAgPC9kaXY+XG4gICAgICAgIDwvZGl2PlxuICAgICAgICA8ZGl2IGNsYXNzPVwiY29sdW1uc1wiICpuZ0lmPVwiY2F0YWxvZ1NlbGVjdGlvbi5wcm9kdWN0cy5sZW5ndGggPiA1ICYmIGNvbnRlbnRzW0JBU0VfQkxPQ0tfQ09OVEVOVF1bRk9STV9OQU1FX05CTElHTkVdICE9PSAnMSdcIj5cbiAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJjb2x1bW4gY29sdW1uLW1heC13aWR0aC01MFwiPlxuICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJjb2x1bW5zIGlzLWdhcGxlc3MgaXMtbXVsdGlsaW5lIHdiLXByb2R1Y3RzLWxpc3Qtc2VsZWN0ZWRfX2xpc3RfX3NlY29uZFwiPlxuICAgICAgICAgICAgICAgICAgICA8ZGl2ICpuZ0Zvcj1cImxldCBwcm9kdWN0IG9mIGNhdGFsb2dTZWxlY3Rpb24ucHJvZHVjdHMgfCBzbGljZTogNjoxMDsgbGV0IGluZGV4ID0gaW5kZXhcIiBjbGFzcz1cImNvbHVtbiBpcy02XCIgKGNsaWNrKT1cInRyaWdnZXJQcm9kdWN0ID0gdHJ1ZTtcIj5cbiAgICAgICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJ3Yi1wcm9kdWN0cy1saXN0LXNlbGVjdGVkX19saXN0X19wcm9kdWN0XCI+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cImltZy13cmFwcGVyXCIgKm5nSWY9XCJwcm9kdWN0Lm1haW5faW1hZ2VcIj5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGltZyAqbmdJZj1cInByb2R1Y3QubWFpbl9pbWFnZS5maWxlXCIgW3NyY109XCJpbWFnZUZyb250VXJsICsgcHJvZHVjdC5tYWluX2ltYWdlLmZpbGVcIiBbYWx0XT1cInByb2R1Y3QubmFtZVwiIC8+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9kaXY+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPHA+e3sgcHJvZHVjdC5uYW1lIH19PC9wPlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxwPnt7IGZvcm1hdFByaWNlW2luZGV4ICsgNl0gfX08L3A+XG4gICAgICAgICAgICAgICAgICAgICAgICA8L2Rpdj5cbiAgICAgICAgICAgICAgICAgICAgPC9kaXY+XG4gICAgICAgICAgICAgICAgPC9kaXY+XG4gICAgICAgICAgICA8L2Rpdj5cbiAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJjb2x1bW5cIj5cbiAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwid2ItcHJvZHVjdHMtbGlzdC1zZWxlY3RlZF9fbGlzdF9fcHJvZHVjdFwiIChjbGljayk9XCJ0cmlnZ2VyUHJvZHVjdCA9IHRydWU7XCI+XG4gICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJpbWctd3JhcHBlclwiICpuZ0lmPVwiY2F0YWxvZ1NlbGVjdGlvbi5wcm9kdWN0c1s1XS5tYWluX2ltYWdlXCI+XG4gICAgICAgICAgICAgICAgICAgICAgICA8aW1nXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgKm5nSWY9XCJjYXRhbG9nU2VsZWN0aW9uLnByb2R1Y3RzWzVdLm1haW5faW1hZ2UuZmlsZVwiXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgW3NyY109XCJpbWFnZUZyb250VXJsICsgY2F0YWxvZ1NlbGVjdGlvbi5wcm9kdWN0c1s1XS5tYWluX2ltYWdlLmZpbGVcIlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIFthbHRdPVwiY2F0YWxvZ1NlbGVjdGlvbi5wcm9kdWN0c1s1XS5uYW1lXCJcbiAgICAgICAgICAgICAgICAgICAgICAgIC8+XG4gICAgICAgICAgICAgICAgICAgIDwvZGl2PlxuICAgICAgICAgICAgICAgICAgICA8cD57eyBjYXRhbG9nU2VsZWN0aW9uLnByb2R1Y3RzWzVdLm5hbWUgfX08L3A+XG4gICAgICAgICAgICAgICAgICAgIDxwPnt7IGZvcm1hdFByaWNlWzVdIH19PC9wPlxuICAgICAgICAgICAgICAgIDwvZGl2PlxuICAgICAgICAgICAgPC9kaXY+XG4gICAgICAgIDwvZGl2PlxuICAgICAgICA8ZGl2IGNsYXNzPVwiY29sdW1uc1wiICpuZ0lmPVwiY2F0YWxvZ1NlbGVjdGlvbi5wcm9kdWN0cy5sZW5ndGggPiAxMCAmJiBjb250ZW50c1tCQVNFX0JMT0NLX0NPTlRFTlRdW0ZPUk1fTkFNRV9OQkxJR05FXSA9PT0gJzMnXCI+XG4gICAgICAgICAgICA8ZGl2IGNsYXNzPVwiY29sdW1uXCI+XG4gICAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cIndiLXByb2R1Y3RzLWxpc3Qtc2VsZWN0ZWRfX2xpc3RfX3Byb2R1Y3RcIiAoY2xpY2spPVwidHJpZ2dlclByb2R1Y3QgPSB0cnVlO1wiPlxuICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwiaW1nLXdyYXBwZXJcIiAqbmdJZj1cImNhdGFsb2dTZWxlY3Rpb24ucHJvZHVjdHNbMTBdLm1haW5faW1hZ2VcIj5cbiAgICAgICAgICAgICAgICAgICAgICAgIDxpbWdcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAqbmdJZj1cImNhdGFsb2dTZWxlY3Rpb24ucHJvZHVjdHNbMTBdLm1haW5faW1hZ2UuZmlsZVwiXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgW3NyY109XCJpbWFnZUZyb250VXJsICsgY2F0YWxvZ1NlbGVjdGlvbi5wcm9kdWN0c1sxMF0ubWFpbl9pbWFnZS5maWxlXCJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBbYWx0XT1cImNhdGFsb2dTZWxlY3Rpb24ucHJvZHVjdHNbMTBdLm5hbWVcIlxuICAgICAgICAgICAgICAgICAgICAgICAgLz5cbiAgICAgICAgICAgICAgICAgICAgPC9kaXY+XG4gICAgICAgICAgICAgICAgICAgIDxwPnt7IGNhdGFsb2dTZWxlY3Rpb24ucHJvZHVjdHNbMTBdLm5hbWUgfX08L3A+XG4gICAgICAgICAgICAgICAgICAgIDxwPnt7IGZvcm1hdFByaWNlWzEwXSB9fTwvcD5cbiAgICAgICAgICAgICAgICA8L2Rpdj5cbiAgICAgICAgICAgIDwvZGl2PlxuICAgICAgICAgICAgPGRpdiBjbGFzcz1cImNvbHVtbiBjb2x1bW4tbWF4LXdpZHRoLTUwXCI+XG4gICAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cImNvbHVtbnMgaXMtZ2FwbGVzcyBpcy1tdWx0aWxpbmUgd2ItcHJvZHVjdHMtbGlzdC1zZWxlY3RlZF9fbGlzdF9fc2Vjb25kXCI+XG4gICAgICAgICAgICAgICAgICAgIDxkaXYgKm5nRm9yPVwibGV0IHByb2R1Y3Qgb2YgY2F0YWxvZ1NlbGVjdGlvbi5wcm9kdWN0cyB8IHNsaWNlOiAxMTsgbGV0IGluZGV4ID0gaW5kZXhcIiBjbGFzcz1cImNvbHVtbiBpcy02XCIgKGNsaWNrKT1cInRyaWdnZXJQcm9kdWN0ID0gdHJ1ZTtcIj5cbiAgICAgICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJ3Yi1wcm9kdWN0cy1saXN0LXNlbGVjdGVkX19saXN0X19wcm9kdWN0XCI+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cImltZy13cmFwcGVyXCIgKm5nSWY9XCJwcm9kdWN0Lm1haW5faW1hZ2VcIj5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGltZyAqbmdJZj1cInByb2R1Y3QubWFpbl9pbWFnZS5maWxlXCIgW3NyY109XCJpbWFnZUZyb250VXJsICsgcHJvZHVjdC5tYWluX2ltYWdlLmZpbGVcIiBbYWx0XT1cInByb2R1Y3QubmFtZVwiIC8+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9kaXY+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPHA+e3sgcHJvZHVjdC5uYW1lIH19PC9wPlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxwPnt7IGZvcm1hdFByaWNlW2luZGV4ICsgMTFdIH19PC9wPlxuICAgICAgICAgICAgICAgICAgICAgICAgPC9kaXY+XG4gICAgICAgICAgICAgICAgICAgIDwvZGl2PlxuICAgICAgICAgICAgICAgIDwvZGl2PlxuICAgICAgICAgICAgPC9kaXY+XG4gICAgICAgIDwvZGl2PlxuICAgIDwvZGl2PlxuICAgIDxkaXYgY2xhc3M9XCJ3Yi1wcm9kdWN0cy1saXN0LXNlbGVjdGVkX19ub2xpc3RcIiAqbmdJZj1cIiFjYXRhbG9nU2VsZWN0aW9uLnByb2R1Y3RzIHx8IGNhdGFsb2dTZWxlY3Rpb24ucHJvZHVjdHMubGVuZ3RoID09PSAwXCI+XG4gICAgICAgIDxwPnt7ICd3Yi5zdHJ1Y3R1cmVzLnRlbXBsYXRlLjYnIHwgdHJhbnNsYXRlIH19PC9wPlxuICAgIDwvZGl2PlxuPC9kaXY+XG4iXX0=
203
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicHJvZHVjdHMtbGlzdC1zZWxlY3RlZC5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy93aXppLWJsb2NrL3NyYy9saWIvc3RydWN0dXJlcy9wcm9kdWN0cy1saXN0L3NlbGVjdGVkL3Byb2R1Y3RzLWxpc3Qtc2VsZWN0ZWQuY29tcG9uZW50LnRzIiwiLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvd2l6aS1ibG9jay9zcmMvbGliL3N0cnVjdHVyZXMvcHJvZHVjdHMtbGlzdC9zZWxlY3RlZC9wcm9kdWN0cy1saXN0LXNlbGVjdGVkLmNvbXBvbmVudC5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBcUIsU0FBUyxFQUFxQixTQUFTLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDM0YsT0FBTyxFQUFFLHNCQUFzQixFQUFFLHNCQUFzQixFQUFFLE1BQU0sK0JBQStCLENBQUM7QUFDL0YsT0FBTyxFQUFFLG1CQUFtQixFQUFFLE1BQU0sNEJBQTRCLENBQUM7QUFDakUsT0FBTyxFQUFFLHNCQUFzQixFQUFFLE1BQU0sOERBQThELENBQUM7QUFDdEcsT0FBTyxFQUFFLFVBQVUsRUFBRSxNQUFNLHFDQUFxQyxDQUFDO0FBQ2pFLE9BQU8sRUFBRSxxQkFBcUIsRUFBRSxNQUFNLGlEQUFpRCxDQUFDO0FBRXhGLE9BQU8sRUFBRSwyQkFBMkIsRUFBRSxNQUFNLHVFQUF1RSxDQUFDO0FBQ3BILE9BQU8sRUFBRSwrQkFBK0IsRUFBRSxNQUFNLHdGQUF3RixDQUFDO0FBRXpJLE9BQU8sRUFBRSxnQkFBZ0IsRUFBRSxNQUFNLHFCQUFxQixDQUFDO0FBQ3ZELE9BQU8sRUFBRSxlQUFlLEVBQUUsTUFBTSwwQ0FBMEMsQ0FBQzs7Ozs7Ozs7Ozs7Ozs7QUFPM0UsTUFBTSxPQUFPLDZCQUE4QixTQUFRLG1CQUE0QztJQUUzRixJQUF5QyxPQUFPLENBQUMsT0FBd0M7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LGt6UEF1SUE7MkZEckhhLDZCQUE2QjtrQkFKekMsU0FBUzsrQkFDSSwyQkFBMkIsQ0FBQyxRQUFRLEVBQUU7a01BS1AsT0FBTztzQkFBL0MsU0FBUzt1QkFBQyx3QkFBd0IiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBDaGFuZ2VEZXRlY3RvclJlZiwgQ29tcG9uZW50LCBPbkRlc3Ryb3ksIE9uSW5pdCwgVmlld0NoaWxkIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBGT1JNX05BTUVfTElTVF9QUk9EVUNULCBGT1JNX05BTUVfVFlQRV9QUk9EVUNUIH0gZnJvbSAnLi4vLi4vLi4vZHRvcy9mb3Jtcy9mb3Jtcy5kdG8nO1xuaW1wb3J0IHsgU3RydWN0dXJlc0NvbXBvbmVudCB9IGZyb20gJy4uLy4uL3N0cnVjdHVyZXMuY29tcG9uZW50JztcbmltcG9ydCB7IFRZUEVfUFJPRFVDVF9TRUxFQ1RJT04gfSBmcm9tICcuLi8uLi8uLi9kdG9zL2Jsb2Nrcy9wcm9kdWN0cy1saXN0L3Byb2R1Y3RzLWxpc3QtY2xhc3NpYy5kdG8nO1xuaW1wb3J0IHsgQXBpU2VydmljZSB9IGZyb20gJy4uLy4uLy4uL3NlcnZpY2VzL3V0aWxzL2FwaS5zZXJ2aWNlJztcbmltcG9ydCB7IEV4dGVybmFsQ29uZmlnU2VydmljZSB9IGZyb20gJy4uLy4uLy4uL3NlcnZpY2VzL3V0aWxzL2V4dGVybmFsLWNvbmZpZy5zZXJ2aWNlJztcbmltcG9ydCB7IFByb2R1Y3RzTGlzdFNlbGVjdGVkRHRvIH0gZnJvbSAnLi4vLi4vLi4vZHRvcy9ibG9ja3MvcHJvZHVjdHMtbGlzdC9wcm9kdWN0cy1saXN0LXNlbGVjdGVkLmR0byc7XG5pbXBvcnQgeyBQcm9kdWN0c0xpc3RTZWxlY3RlZFNlcnZpY2UgfSBmcm9tICcuLi8uLi8uLi9zZXJ2aWNlcy9ibG9ja3MvcHJvZHVjdHMtbGlzdC9wcm9kdWN0cy1saXN0LXNlbGVjdGVkLnNlcnZpY2UnO1xuaW1wb3J0IHsgU3RydWN0dXJlU2VhcmNoUHJvZHVjdENvbXBvbmVudCB9IGZyb20gJy4uLy4uLy4uL3NoYXJlZC9jb21wb25lbnRzL3N0cnVjdHVyZS1zZWFyY2gtcHJvZHVjdC9zdHJ1Y3R1cmUtc2VhcmNoLXByb2R1Y3QuY29tcG9uZW50JztcbmltcG9ydCB7IENhdGFsb2dMaXN0RHRvIH0gZnJvbSAnLi4vLi4vLi4vZHRvcy9hcGlzL2NhdGFsb2dzL2NhdGFsb2ctbGlzdC5kdG8nO1xuaW1wb3J0IHsgVHJhbnNsYXRlU2VydmljZSB9IGZyb20gJ0BuZ3gtdHJhbnNsYXRlL2NvcmUnO1xuaW1wb3J0IHsgQ3VycmVuY3lTZXJ2aWNlIH0gZnJvbSAnLi4vLi4vLi4vc2VydmljZXMvdXRpbHMvY3VycmVuY3kuc2VydmljZSc7XG5pbXBvcnQgeyBFeHRlcm5hbENvbmZpZ0R0byB9IGZyb20gJy4uLy4uLy4uL2R0b3MvY29uZmlncy9leHRlcm5hbC9leHRlcm5hbC1jb25maWcuZHRvJztcblxuQENvbXBvbmVudCh7XG4gICAgc2VsZWN0b3I6IFByb2R1Y3RzTGlzdFNlbGVjdGVkU2VydmljZS5zZWxlY3RvcigpLFxuICAgIHRlbXBsYXRlVXJsOiAnLi9wcm9kdWN0cy1saXN0LXNlbGVjdGVkLmNvbXBvbmVudC5odG1sJyxcbn0pXG5leHBvcnQgY2xhc3MgUHJvZHVjdHNMaXN0U2VsZWN0ZWRDb21wb25lbnQgZXh0ZW5kcyBTdHJ1Y3R1cmVzQ29tcG9uZW50PFByb2R1Y3RzTGlzdFNlbGVjdGVkRHRvPiBpbXBsZW1lbnRzIE9uSW5pdCwgT25EZXN0cm95IHtcbiAgICBzdHJ1Y3R1cmVTZWFyY2hQcm9kdWN0OiBTdHJ1Y3R1cmVTZWFyY2hQcm9kdWN0Q29tcG9uZW50O1xuICAgIEBWaWV3Q2hpbGQoJ3N0cnVjdHVyZVNlYXJjaFByb2R1Y3QnKSBzZXQgY29udGVudChjb250cm9sOiBTdHJ1Y3R1cmVTZWFyY2hQcm9kdWN0Q29tcG9uZW50KSB7XG4gICAgICAgIHRoaXMuc3RydWN0dXJlU2VhcmNoUHJvZHVjdCA9IGNvbnRyb2w7XG4gICAgfVxuXG4gICAgc2VsZWN0ZWRWYWx1ZSA9IHtcbiAgICAgICAgaWQ6IDEsXG4gICAgICAgIHRpdGxlOiAnd2IucHJvZHVjdGxpc3Quc2VsZWN0aW9uJyxcbiAgICAgICAgdmFsdWU6ICdzZWxlY3Rpb24nLFxuICAgIH07XG5cbiAgICB0cmlnZ2VyUHJvZHVjdCA9IGZhbHNlO1xuXG4gICAgY2F0YWxvZ1NlbGVjdGlvbjogQ2F0YWxvZ0xpc3REdG8gPSB7XG4gICAgICAgIHByb2R1Y3RzOiBbXSxcbiAgICAgICAgY2F0YWxvZ19mYWNldDogW10sXG4gICAgICAgIHRvdGFsX3BhZ2VzOiAwLFxuICAgICAgICB0b3RhbF9yZXN1bHRzOiAwLFxuICAgIH07XG5cbiAgICBpbWFnZUZyb250VXJsOiBzdHJpbmc7XG5cbiAgICBkZXZpc2U6IHN0cmluZztcbiAgICBpc286IHN0cmluZztcbiAgICBjb3VudHJ5OiBzdHJpbmc7XG4gICAgZm9ybWF0UHJpY2UgPSBbXTtcbiAgICBpc0xvYWRpbmcgPSB0cnVlO1xuXG4gICAgZm9ybSA9IFtcbiAgICAgICAge1xuICAgICAgICAgICAgaWQ6IDEsXG4gICAgICAgICAgICB0aXRsZTogdGhpcy50cmFuc2xhdGVTZXJ2aWNlLmluc3RhbnQoJ3diLnByb2R1Y3RsaXN0LjEnKSxcbiAgICAgICAgICAgIHZhbHVlOiAnc2VsZWN0aW9uJyxcbiAgICAgICAgfSxcbiAgICAgICAge1xuICAgICAgICAgICAgaWQ6IDIsXG4gICAgICAgICAgICB0aXRsZTogdGhpcy50cmFuc2xhdGVTZXJ2aWNlLmluc3RhbnQoJ3diLnByb2R1Y3RsaXN0LjInKSxcbiAgICAgICAgICAgIHZhbHVlOiAnZGlzY291bnQnLFxuICAgICAgICB9LFxuICAgICAgICB7XG4gICAgICAgICAgICBpZDogMyxcbiAgICAgICAgICAgIHRpdGxlOiB0aGlzLnRyYW5zbGF0ZVNlcnZpY2UuaW5zdGFudCgnd2IucHJvZHVjdGxpc3QuMycpLFxuICAgICAgICAgICAgdmFsdWU6ICduZXcnLFxuICAgICAgICB9LFxuICAgICAgICB7XG4gICAgICAgICAgICBpZDogNCxcbiAgICAgICAgICAgIHRpdGxlOiB0aGlzLnRyYW5zbGF0ZVNlcnZpY2UuaW5zdGFudCgnd2IucHJvZHVjdGxpc3QuNCcpLFxuICAgICAgICAgICAgdmFsdWU6ICdmbGFzaCcsXG4gICAgICAgIH0sXG4gICAgXTtcblxuICAgIGNvbnN0cnVjdG9yKFxuICAgICAgICBwcml2YXRlIGFwaVNlcnZpY2U6IEFwaVNlcnZpY2UsXG4gICAgICAgIHByaXZhdGUgZXh0ZXJuYWxDb25maWdTZXJ2aWNlOiBFeHRlcm5hbENvbmZpZ1NlcnZpY2UsXG4gICAgICAgIHByaXZhdGUgdHJhbnNsYXRlU2VydmljZTogVHJhbnNsYXRlU2VydmljZSxcbiAgICAgICAgcHJpdmF0ZSBjdXJyZW5jeVNlcnZpY2U6IEN1cnJlbmN5U2VydmljZSxcbiAgICApIHtcbiAgICAgICAgc3VwZXIoKTtcbiAgICAgICAgdGhpcy5zZXRDb21wb25lbnRTZXJ2aWNlKFByb2R1Y3RzTGlzdFNlbGVjdGVkU2VydmljZSk7XG4gICAgfVxuXG4gICAgYXN5bmMgbmdPbkluaXQoKSB7XG4gICAgICAgIHN1cGVyLm5nT25Jbml0KCk7XG5cbiAgICAgICAgdGhpcy5pc0xvYWRpbmcgPSB0cnVlO1xuICAgICAgICB0aGlzLmltYWdlRnJvbnRVcmwgPSB0aGlzLmV4dGVybmFsQ29uZmlnU2VydmljZS5nZXRVcmxJbWFnZUZyb250KCk7XG4gICAgICAgIGlmICghdGhpcy5jdXJyZW5jeVNlcnZpY2UucmVhZHkpIHtcbiAgICAgICAgICAgIGNvbnN0IGlzQ3VycmVuY3lSZWFkeSA9IGF3YWl0IHRoaXMuY3VycmVuY3lTZXJ2aWNlLmluaXRpYWxpemVDdXJyZW5jeSgpO1xuICAgICAgICAgICAgaWYgKGlzQ3VycmVuY3lSZWFkeSkge1xuICAgICAgICAgICAgICAgIHRoaXMuZGV2aXNlID0gdGhpcy5jdXJyZW5jeVNlcnZpY2Uuc3ltYm9sO1xuICAgICAgICAgICAgICAgIHRoaXMuY291bnRyeSA9IHRoaXMuY3VycmVuY3lTZXJ2aWNlLmNvdW50cnk7XG4gICAgICAgICAgICAgICAgdGhpcy5pc28gPSB0aGlzLmN1cnJlbmN5U2VydmljZS5pc287XG4gICAgICAgICAgICB9IGVsc2Uge1xuICAgICAgICAgICAgICAgIHRoaXMuZGV2aXNlID0gdGhpcy5leHRlcm5hbENvbmZpZ1NlcnZpY2UuZGV2aXNlKCk7XG4gICAgICAgICAgICB9XG4gICAgICAgIH0gZWxzZSB7XG4gICAgICAgICAgICB0aGlzLmRldmlzZSA9IHRoaXMuY3VycmVuY3lTZXJ2aWNlLnN5bWJvbDtcbiAgICAgICAgICAgIHRoaXMuY291bnRyeSA9IHRoaXMuY3VycmVuY3lTZXJ2aWNlLmNvdW50cnk7XG4gICAgICAgICAgICB0aGlzLmlzbyA9IHRoaXMuY3VycmVuY3lTZXJ2aWNlLmlzbztcbiAgICAgICAgfVxuICAgICAgICB0aGlzLmFwaVNlcnZpY2UuZ2V0U2hvcFRlbXBsYXRlTGFuZygpLnN1YnNjcmliZShcbiAgICAgICAgICAgIChkYXRhKSA9PiB7XG4gICAgICAgICAgICAgICAgdGhpcy5jb3VudHJ5ID0gZGF0YS5sb2NhbGUucmVwbGFjZSgnXycsICctJyk7XG4gICAgICAgICAgICAgICAgdGhpcy5pbml0aWFsaXplKCk7XG4gICAgICAgICAgICB9LFxuICAgICAgICAgICAgKCkgPT4ge1xuICAgICAgICAgICAgICAgIHRoaXMuaW5pdGlhbGl6ZSgpO1xuICAgICAgICAgICAgfVxuICAgICAgICApO1xuICAgIH1cblxuICAgIGluaXRpYWxpemUoKSB7XG4gICAgICAgIGlmICh0aGlzLmNvbnRlbnRCbG9ja1tGT1JNX05BTUVfVFlQRV9QUk9EVUNUXSkge1xuICAgICAgICAgICAgaWYgKHRoaXMuY29udGVudEJsb2NrW0ZPUk1fTkFNRV9MSVNUX1BST0RVQ1RdICYmIHRoaXMuY29udGVudEJsb2NrW0ZPUk1fTkFNRV9MSVNUX1BST0RVQ1RdLmxlbmd0aCkge1xuICAgICAgICAgICAgICAgIHRoaXMuY2hhbmdlUHJvZHVjdCh0aGlzLmNvbnRlbnRCbG9ja1tGT1JNX05BTUVfTElTVF9QUk9EVUNUXSwgZmFsc2UpO1xuICAgICAgICAgICAgfSBlbHNlIHtcbiAgICAgICAgICAgICAgICB0aGlzLmdldFNlbGVjdGlvbih0aGlzLmNvbnRlbnRCbG9ja1tGT1JNX05BTUVfVFlQRV9QUk9EVUNUXSk7XG4gICAgICAgICAgICB9XG4gICAgICAgIH0gZWxzZSB7XG4gICAgICAgICAgICB0aGlzLmdldFNlbGVjdGlvbihUWVBFX1BST0RVQ1RfU0VMRUNUSU9OKTtcbiAgICAgICAgfVxuICAgIH1cblxuICAgIHNlbGVjdFRoaXNGb3JtKCkge1xuICAgICAgICB0aGlzLmdldFNlbGVjdGlvbih0aGlzLnNlbGVjdGVkVmFsdWUudmFsdWUpO1xuICAgICAgICB0aGlzLmNvbnRlbnRCbG9ja1tGT1JNX05BTUVfVFlQRV9QUk9EVUNUXSA9IHRoaXMuc2VsZWN0ZWRWYWx1ZS52YWx1ZTtcbiAgICAgICAgdGhpcy5wZXJzaXN0KCk7XG4gICAgfVxuXG4gICAgY2hhbmdlUHJvZHVjdChwcm9kSWRzLCBwZXJzaXN0ID0gdHJ1ZSkge1xuICAgICAgICBpZiAocHJvZElkcy5sZW5ndGgpIHtcbiAgICAgICAgICAgIHRoaXMuaXNMb2FkaW5nID0gdHJ1ZTtcbiAgICAgICAgICAgIHRoaXMuZm9ybWF0UHJpY2UgPSBbXTtcbiAgICAgICAgICAgIHRoaXMuYXBpU2VydmljZS5nZXRDYXRhbG9nU3BlY2lmaWMocHJvZElkcykuc3Vic2NyaWJlKFxuICAgICAgICAgICAgICAgIChjYXRhbG9nTGlzdCkgPT4ge1xuICAgICAgICAgICAgICAgICAgICB0aGlzLmNhdGFsb2dTZWxlY3Rpb24gPSBjYXRhbG9nTGlzdDtcbiAgICAgICAgICAgICAgICAgICAgdGhpcy5yZW1vdmVVbmF2YWlsYWJsZSgpO1xuICAgICAgICAgICAgICAgICAgICBmb3IgKGxldCBpdGVtIG9mIGNhdGFsb2dMaXN0LnByb2R1Y3RzKSB7XG4gICAgICAgICAgICAgICAgICAgICAgICB0aGlzLmZvcm1hdFByaWNlLnB1c2goXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgbmV3IEludGwuTnVtYmVyRm9ybWF0KHRoaXMuY291bnRyeSwgeyBzdHlsZTogJ2N1cnJlbmN5JywgY3VycmVuY3k6IHRoaXMuaXNvIH0pLmZvcm1hdChpdGVtLnByaWNlLnByaWNlKVxuICAgICAgICAgICAgICAgICAgICAgICAgKTtcbiAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICBpZiAocGVyc2lzdCkge1xuICAgICAgICAgICAgICAgICAgICAgICAgdGhpcy5jb250ZW50QmxvY2tbRk9STV9OQU1FX0xJU1RfUFJPRFVDVF0gPSBwcm9kSWRzO1xuICAgICAgICAgICAgICAgICAgICAgICAgdGhpcy5wZXJzaXN0KCk7XG4gICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgICAgdGhpcy5pc0xvYWRpbmcgPSBmYWxzZTtcbiAgICAgICAgICAgICAgICB9LFxuICAgICAgICAgICAgICAgICgpID0+IHtcbiAgICAgICAgICAgICAgICAgICAgdGhpcy5jYXRhbG9nU2VsZWN0aW9uID0ge1xuICAgICAgICAgICAgICAgICAgICAgICAgcHJvZHVjdHM6IFtdLFxuICAgICAgICAgICAgICAgICAgICAgICAgY2F0YWxvZ19mYWNldDogW10sXG4gICAgICAgICAgICAgICAgICAgICAgICB0b3RhbF9wYWdlczogMCxcbiAgICAgICAgICAgICAgICAgICAgICAgIHRvdGFsX3Jlc3VsdHM6IDAsXG4gICAgICAgICAgICAgICAgICAgIH07XG4gICAgICAgICAgICAgICAgICAgIHRoaXMuaXNMb2FkaW5nID0gZmFsc2U7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgKTtcbiAgICAgICAgfSBlbHNlIHtcbiAgICAgICAgICAgIGlmICh0aGlzLmNvbnRlbnRCbG9ja1tGT1JNX05BTUVfVFlQRV9QUk9EVUNUXSkge1xuICAgICAgICAgICAgICAgIHRoaXMuZ2V0U2VsZWN0aW9uKHRoaXMuY29udGVudEJsb2NrW0ZPUk1fTkFNRV9UWVBFX1BST0RVQ1RdKTtcbiAgICAgICAgICAgIH0gZWxzZSB7XG4gICAgICAgICAgICAgICAgdGhpcy5nZXRTZWxlY3Rpb24oVFlQRV9QUk9EVUNUX1NFTEVDVElPTik7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICB0aGlzLnBlcnNpc3QoKTtcbiAgICAgICAgfVxuICAgIH1cblxuICAgIGdldFNlbGVjdGlvbih0eXBlKSB7XG4gICAgICAgIHRoaXMuaXNMb2FkaW5nID0gdHJ1ZTtcbiAgICAgICAgdGhpcy5jb250ZW50QmxvY2tbRk9STV9OQU1FX0xJU1RfUFJPRFVDVF0gPSBbXTtcbiAgICAgICAgaWYgKHRoaXMuc3RydWN0dXJlU2VhcmNoUHJvZHVjdCkge1xuICAgICAgICAgICAgdGhpcy5zdHJ1Y3R1cmVTZWFyY2hQcm9kdWN0LnNlbGVjdGVkUHJvZCA9IFtdO1xuICAgICAgICAgICAgdGhpcy5zdHJ1Y3R1cmVTZWFyY2hQcm9kdWN0LmN1cnJlbnRTZWxlY3RlZENhdGFsb2cgPSBbXTtcbiAgICAgICAgfVxuICAgICAgICB0aGlzLmZvcm0uZm9yRWFjaCgodmFsdWVzKSA9PiB7XG4gICAgICAgICAgICBpZiAodmFsdWVzLnZhbHVlID09PSB0eXBlKSB7XG4gICAgICAgICAgICAgICAgdGhpcy5zZWxlY3RlZFZhbHVlID0gdmFsdWVzO1xuICAgICAgICAgICAgfVxuICAgICAgICB9KTtcbiAgICAgICAgdGhpcy5mb3JtYXRQcmljZSA9IFtdO1xuICAgICAgICB0aGlzLmFwaVNlcnZpY2UuZ2V0Q2F0YWxvZ1NlbGVjdGlvbih0eXBlLCAxNSkuc3Vic2NyaWJlKFxuICAgICAgICAgICAgKGNhdGFsb2dMaXN0KSA9PiB7XG4gICAgICAgICAgICAgICAgdGhpcy5jYXRhbG9nU2VsZWN0aW9uID0gY2F0YWxvZ0xpc3Q7XG4gICAgICAgICAgICAgICAgdGhpcy5yZW1vdmVVbmF2YWlsYWJsZSgpO1xuICAgICAgICAgICAgICAgIGZvciAobGV0IGl0ZW0gb2YgY2F0YWxvZ0xpc3QucHJvZHVjdHMpIHtcbiAgICAgICAgICAgICAgICAgICAgdGhpcy5mb3JtYXRQcmljZS5wdXNoKFxuICAgICAgICAgICAgICAgICAgICAgICAgbmV3IEludGwuTnVtYmVyRm9ybWF0KHRoaXMuY291bnRyeSwgeyBzdHlsZTogJ2N1cnJlbmN5JywgY3VycmVuY3k6IHRoaXMuaXNvIH0pLmZvcm1hdChpdGVtLnByaWNlLnByaWNlKVxuICAgICAgICAgICAgICAgICAgICApO1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICB0aGlzLmlzTG9hZGluZyA9IGZhbHNlO1xuICAgICAgICAgICAgfSxcbiAgICAgICAgICAgICgpID0+IHtcbiAgICAgICAgICAgICAgICB0aGlzLmNhdGFsb2dTZWxlY3Rpb24gPSB7XG4gICAgICAgICAgICAgICAgICAgIHByb2R1Y3RzOiBbXSxcbiAgICAgICAgICAgICAgICAgICAgY2F0YWxvZ19mYWNldDogW10sXG4gICAgICAgICAgICAgICAgICAgIHRvdGFsX3BhZ2VzOiAwLFxuICAgICAgICAgICAgICAgICAgICB0b3RhbF9yZXN1bHRzOiAwLFxuICAgICAgICAgICAgICAgIH07XG4gICAgICAgICAgICAgICAgdGhpcy5pc0xvYWRpbmcgPSBmYWxzZTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgKTtcbiAgICB9XG5cbiAgICByZW1vdmVVbmF2YWlsYWJsZSgpIHtcbiAgICAgICAgbGV0IGkgPSAwO1xuICAgICAgICB3aGlsZSAoaSA8IHRoaXMuY29udGVudHNbJ2Jsb2NrJ11bRk9STV9OQU1FX0xJU1RfUFJPRFVDVF0ubGVuZ3RoKSB7XG4gICAgICAgICAgICBpZiAoIShBcnJheS5mcm9tKHRoaXMuY2F0YWxvZ1NlbGVjdGlvbi5wcm9kdWN0cykuZmluZCgoc2VsZWN0aW9uKSA9PiB7IHJldHVybiBzZWxlY3Rpb24uaWQgPT09IHRoaXMuY29udGVudHNbJ2Jsb2NrJ11bRk9STV9OQU1FX0xJU1RfUFJPRFVDVF1baV0gfSkpKSB7XG4gICAgICAgICAgICAgICAgdGhpcy5jb250ZW50c1snYmxvY2snXVtGT1JNX05BTUVfTElTVF9QUk9EVUNUXS5zcGxpY2UoaSwgMSk7XG4gICAgICAgICAgICB9IGVsc2Uge1xuICAgICAgICAgICAgICAgICsraTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cbn1cbiIsIjxkaXYgY2xhc3M9XCJ3Yi1wcm9kdWN0cy1saXN0LXNlbGVjdGVkXCIgW25nQ2xhc3NdPVwiJ25iLWxpZ25lLScgKyBjb250ZW50c1tCQVNFX0JMT0NLX0NPTlRFTlRdW0ZPUk1fTkFNRV9OQkxJR05FXVwiPlxuICAgIDxkaXY+XG4gICAgICAgIDx3Yi1zdHJ1Y3R1cmUtY29uZmlnIChpc0Nsb3NlKT1cInRyaWdnZXJQcm9kdWN0ID0gZmFsc2U7XCIgW2lzQWN0aXZlXT1cInRyaWdnZXJQcm9kdWN0XCIgIFtibG9ja1VVSURdPVwidXVpZFwiIFtwb3NpdGlvbl09XCJUWVBFX0NPTkZJR19QT1NJVElPTl9MRUZUX1RPUFwiIFtpc0Z1bGx3aWR0aF09XCJ0cnVlXCI+XG4gICAgICAgICAgICA8d2Itc3RydWN0dXJlLWNvbmZpZy1jaGVja2JveFxuICAgICAgICAgICAgICAgIFtsYWJlbF09XCInd2Iuc3RydWN0dXJlcy50ZW1wbGF0ZS4zJyB8IHRyYW5zbGF0ZVwiXG4gICAgICAgICAgICAgICAgWyhuZ01vZGVsKV09XCJjb250ZW50c1tCQVNFX0JMT0NLX0NPTlRFTlRdW0ZPUk1fTkFNRV9TSE9XX1RJVExFXVwiXG4gICAgICAgICAgICAgICAgKG5nTW9kZWxDaGFuZ2UpPVwicGVyc2lzdCgpXCJcbiAgICAgICAgICAgICAgICBbb2ZmXT1cImZhbHNlXCJcbiAgICAgICAgICAgICAgICBbb25dPVwidHJ1ZVwiXG4gICAgICAgICAgICA+PC93Yi1zdHJ1Y3R1cmUtY29uZmlnLWNoZWNrYm94PlxuICAgICAgICAgICAgPGRpdiBjbGFzcz1cImNvbHVtbnNcIj5cbiAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwiY29sdW1uIGlzLThcIj5cbiAgICAgICAgICAgICAgICAgICAgPHdiLXN0cnVjdHVyZS1zZWFyY2gtcHJvZHVjdFxuICAgICAgICAgICAgICAgICAgICAgICAgI3N0cnVjdHVyZVNlYXJjaFByb2R1Y3RcbiAgICAgICAgICAgICAgICAgICAgICAgIFtzZWFyY2hOdW1iZXJdPVwiMTVcIlxuICAgICAgICAgICAgICAgICAgICAgICAgW2xhYmVsXT1cIid3Yi5zdHJ1Y3R1cmVzLnRlbXBsYXRlLjI1JyB8IHRyYW5zbGF0ZVwiXG4gICAgICAgICAgICAgICAgICAgICAgICAobmV3U2VhcmNoKT1cImNoYW5nZVByb2R1Y3QoJGV2ZW50KVwiXG4gICAgICAgICAgICAgICAgICAgICAgICBbc2VsZWN0ZWRQcm9kXT1cImNvbnRlbnRzW0JBU0VfQkxPQ0tfQ09OVEVOVF1bRk9STV9OQU1FX0xJU1RfUFJPRFVDVF1cIlxuICAgICAgICAgICAgICAgICAgICA+PC93Yi1zdHJ1Y3R1cmUtc2VhcmNoLXByb2R1Y3Q+XG4gICAgICAgICAgICAgICAgPC9kaXY+XG4gICAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cImNvbHVtbiBpcy00XCI+XG4gICAgICAgICAgICAgICAgICAgIDx3Yi1zdHJ1Y3R1cmUtc2VsZWN0XG4gICAgICAgICAgICAgICAgICAgICAgICBbbGFiZWxdPVwiJ3diLnN0cnVjdHVyZXMudGVtcGxhdGUuMjYnIHwgdHJhbnNsYXRlXCJcbiAgICAgICAgICAgICAgICAgICAgICAgIFtzZWxlY3RlZFZhbHVlXT1cInNlbGVjdGVkVmFsdWVcIlxuICAgICAgICAgICAgICAgICAgICAgICAgW2Zvcm1zXT1cImZvcm1cIlxuICAgICAgICAgICAgICAgICAgICAgICAgW2xhcmdlXT1cInRydWVcIlxuICAgICAgICAgICAgICAgICAgICAgICAgW2ljb25dPVwiJ2ZhbCBmYS1ib3gtYWx0J1wiXG4gICAgICAgICAgICAgICAgICAgICAgICAoY2hhbmdlZCk9XCJzZWxlY3RlZFZhbHVlID0gJGV2ZW50OyBzZWxlY3RUaGlzRm9ybSgpXCJcbiAgICAgICAgICAgICAgICAgICAgPjwvd2Itc3RydWN0dXJlLXNlbGVjdD5cbiAgICAgICAgICAgICAgICA8L2Rpdj5cbiAgICAgICAgICAgIDwvZGl2PlxuICAgICAgICA8L3diLXN0cnVjdHVyZS1jb25maWc+XG4gICAgPC9kaXY+XG4gICAgPGRpdiBjbGFzcz1cIndiLXByb2R1Y3RzLWxpc3Qtc2VsZWN0ZWRfX3RleHRcIiAqbmdJZj1cImNvbnRlbnRzW0JBU0VfQkxPQ0tfQ09OVEVOVF1bRk9STV9OQU1FX1NIT1dfVElUTEVdXCI+XG4gICAgICAgIDx3ei1lZGl0b3JcbiAgICAgICAgICAgIFsobmdNb2RlbCldPVwiY29udGVudHNbQkFTRV9CTE9DS19DT05URU5UXVtGT1JNX05BTUVfVElUTEVdXCJcbiAgICAgICAgICAgIChuZ01vZGVsQ2hhbmdlKT1cInBlcnNpc3QoKVwiXG4gICAgICAgICAgICBbcGxhY2Vob2xkZXJdPVwiJ3diLnNoYXJlZC5jb21wb25lbnRzLnF1aWxsLjEnIHwgdHJhbnNsYXRlXCJcbiAgICAgICAgPlxuICAgICAgICA8L3d6LWVkaXRvcj5cbiAgICA8L2Rpdj5cbiAgICA8d2ItbG9hZGVyICpuZ0lmPVwiaXNMb2FkaW5nXCIgY2xhc3M9XCJpcy1mdWxsc2l6ZVwiPjwvd2ItbG9hZGVyPlxuICAgIDxkaXZcbiAgICAgICAgY2xhc3M9XCJ3Yi1wcm9kdWN0cy1saXN0LXNlbGVjdGVkX19saXN0XCJcbiAgICAgICAgKm5nSWY9XCJjYXRhbG9nU2VsZWN0aW9uICYmIGNhdGFsb2dTZWxlY3Rpb24gIT09IHVuZGVmaW5lZCAmJiBjYXRhbG9nU2VsZWN0aW9uLnByb2R1Y3RzICYmIGNhdGFsb2dTZWxlY3Rpb24ucHJvZHVjdHMubGVuZ3RoXCJcbiAgICA+XG4gICAgICAgIDxkaXYgY2xhc3M9XCJjb2x1bW5zXCI+XG4gICAgICAgICAgICA8ZGl2IGNsYXNzPVwiY29sdW1uXCI+XG4gICAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cIndiLXByb2R1Y3RzLWxpc3Qtc2VsZWN0ZWRfX2xpc3RfX3Byb2R1Y3RcIiAoY2xpY2spPVwidHJpZ2dlclByb2R1Y3QgPSB0cnVlO1wiPlxuICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwiaW1nLXdyYXBwZXJcIiAqbmdJZj1cImNhdGFsb2dTZWxlY3Rpb24ucHJvZHVjdHNbMF0ubWFpbl9pbWFnZVwiPlxuICAgICAgICAgICAgICAgICAgICAgICAgPGltZ1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICpuZ0lmPVwiY2F0YWxvZ1NlbGVjdGlvbi5wcm9kdWN0c1swXS5tYWluX2ltYWdlLmZpbGVcIlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIFtzcmNdPVwiaW1hZ2VGcm9udFVybCArIGNhdGFsb2dTZWxlY3Rpb24ucHJvZHVjdHNbMF0ubWFpbl9pbWFnZS5maWxlXCJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBbYWx0XT1cImNhdGFsb2dTZWxlY3Rpb24ucHJvZHVjdHNbMF0ubmFtZVwiXG4gICAgICAgICAgICAgICAgICAgICAgICAvPlxuICAgICAgICAgICAgICAgICAgICA8L2Rpdj5cbiAgICAgICAgICAgICAgICAgICAgPHA+e3sgY2F0YWxvZ1NlbGVjdGlvbi5wcm9kdWN0c1swXS5uYW1lIH19PC9wPlxuICAgICAgICAgICAgICAgICAgICA8cD57eyBmb3JtYXRQcmljZVswXSB9fTwvcD5cbiAgICAgICAgICAgICAgICA8L2Rpdj5cbiAgICAgICAgICAgIDwvZGl2PlxuICAgICAgICAgICAgPGRpdiBjbGFzcz1cImNvbHVtbiBjb2x1bW4tbWF4LXdpZHRoLTUwXCI+XG4gICAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cImNvbHVtbnMgaXMtZ2FwbGVzcyBpcy1tdWx0aWxpbmUgd2ItcHJvZHVjdHMtbGlzdC1zZWxlY3RlZF9fbGlzdF9fc2Vjb25kXCI+XG4gICAgICAgICAgICAgICAgICAgIDxkaXYgKm5nRm9yPVwibGV0IHByb2R1Y3Qgb2YgY2F0YWxvZ1NlbGVjdGlvbi5wcm9kdWN0cyB8IHNsaWNlOiAxOjU7IGxldCBpbmRleCA9IGluZGV4XCIgY2xhc3M9XCJjb2x1bW4gaXMtNlwiIChjbGljayk9XCJ0cmlnZ2VyUHJvZHVjdCA9IHRydWU7XCI+XG4gICAgICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwid2ItcHJvZHVjdHMtbGlzdC1zZWxlY3RlZF9fbGlzdF9fcHJvZHVjdFwiPlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJpbWctd3JhcHBlclwiICpuZ0lmPVwicHJvZHVjdC5tYWluX2ltYWdlXCI+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxpbWcgKm5nSWY9XCJwcm9kdWN0Lm1haW5faW1hZ2UuZmlsZVwiIFtzcmNdPVwiaW1hZ2VGcm9udFVybCArIHByb2R1Y3QubWFpbl9pbWFnZS5maWxlXCIgW2FsdF09XCJwcm9kdWN0Lm5hbWVcIiAvPlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvZGl2PlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxwPnt7IHByb2R1Y3QubmFtZSB9fTwvcD5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8cD57eyBmb3JtYXRQcmljZVtpbmRleCArIDFdIH19PC9wPlxuICAgICAgICAgICAgICAgICAgICAgICAgPC9kaXY+XG4gICAgICAgICAgICAgICAgICAgIDwvZGl2PlxuICAgICAgICAgICAgICAgIDwvZGl2PlxuICAgICAgICAgICAgPC9kaXY+XG4gICAgICAgIDwvZGl2PlxuICAgICAgICA8ZGl2IGNsYXNzPVwiY29sdW1uc1wiICpuZ0lmPVwiY2F0YWxvZ1NlbGVjdGlvbi5wcm9kdWN0cy5sZW5ndGggPiA1ICYmIGNvbnRlbnRzW0JBU0VfQkxPQ0tfQ09OVEVOVF1bRk9STV9OQU1FX05CTElHTkVdICE9PSAnMSdcIj5cbiAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJjb2x1bW4gY29sdW1uLW1heC13aWR0aC01MFwiPlxuICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJjb2x1bW5zIGlzLWdhcGxlc3MgaXMtbXVsdGlsaW5lIHdiLXByb2R1Y3RzLWxpc3Qtc2VsZWN0ZWRfX2xpc3RfX3NlY29uZFwiPlxuICAgICAgICAgICAgICAgICAgICA8ZGl2ICpuZ0Zvcj1cImxldCBwcm9kdWN0IG9mIGNhdGFsb2dTZWxlY3Rpb24ucHJvZHVjdHMgfCBzbGljZTogNjoxMDsgbGV0IGluZGV4ID0gaW5kZXhcIiBjbGFzcz1cImNvbHVtbiBpcy02XCIgKGNsaWNrKT1cInRyaWdnZXJQcm9kdWN0ID0gdHJ1ZTtcIj5cbiAgICAgICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJ3Yi1wcm9kdWN0cy1saXN0LXNlbGVjdGVkX19saXN0X19wcm9kdWN0XCI+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cImltZy13cmFwcGVyXCIgKm5nSWY9XCJwcm9kdWN0Lm1haW5faW1hZ2VcIj5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGltZyAqbmdJZj1cInByb2R1Y3QubWFpbl9pbWFnZS5maWxlXCIgW3NyY109XCJpbWFnZUZyb250VXJsICsgcHJvZHVjdC5tYWluX2ltYWdlLmZpbGVcIiBbYWx0XT1cInByb2R1Y3QubmFtZVwiIC8+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9kaXY+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPHA+e3sgcHJvZHVjdC5uYW1lIH19PC9wPlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxwPnt7IGZvcm1hdFByaWNlW2luZGV4ICsgNl0gfX08L3A+XG4gICAgICAgICAgICAgICAgICAgICAgICA8L2Rpdj5cbiAgICAgICAgICAgICAgICAgICAgPC9kaXY+XG4gICAgICAgICAgICAgICAgPC9kaXY+XG4gICAgICAgICAgICA8L2Rpdj5cbiAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJjb2x1bW5cIj5cbiAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwid2ItcHJvZHVjdHMtbGlzdC1zZWxlY3RlZF9fbGlzdF9fcHJvZHVjdFwiIChjbGljayk9XCJ0cmlnZ2VyUHJvZHVjdCA9IHRydWU7XCI+XG4gICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJpbWctd3JhcHBlclwiICpuZ0lmPVwiY2F0YWxvZ1NlbGVjdGlvbi5wcm9kdWN0c1s1XS5tYWluX2ltYWdlXCI+XG4gICAgICAgICAgICAgICAgICAgICAgICA8aW1nXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgKm5nSWY9XCJjYXRhbG9nU2VsZWN0aW9uLnByb2R1Y3RzWzVdLm1haW5faW1hZ2UuZmlsZVwiXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgW3NyY109XCJpbWFnZUZyb250VXJsICsgY2F0YWxvZ1NlbGVjdGlvbi5wcm9kdWN0c1s1XS5tYWluX2ltYWdlLmZpbGVcIlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIFthbHRdPVwiY2F0YWxvZ1NlbGVjdGlvbi5wcm9kdWN0c1s1XS5uYW1lXCJcbiAgICAgICAgICAgICAgICAgICAgICAgIC8+XG4gICAgICAgICAgICAgICAgICAgIDwvZGl2PlxuICAgICAgICAgICAgICAgICAgICA8cD57eyBjYXRhbG9nU2VsZWN0aW9uLnByb2R1Y3RzWzVdLm5hbWUgfX08L3A+XG4gICAgICAgICAgICAgICAgICAgIDxwPnt7IGZvcm1hdFByaWNlWzVdIH19PC9wPlxuICAgICAgICAgICAgICAgIDwvZGl2PlxuICAgICAgICAgICAgPC9kaXY+XG4gICAgICAgIDwvZGl2PlxuICAgICAgICA8ZGl2IGNsYXNzPVwiY29sdW1uc1wiICpuZ0lmPVwiY2F0YWxvZ1NlbGVjdGlvbi5wcm9kdWN0cy5sZW5ndGggPiAxMCAmJiBjb250ZW50c1tCQVNFX0JMT0NLX0NPTlRFTlRdW0ZPUk1fTkFNRV9OQkxJR05FXSA9PT0gJzMnXCI+XG4gICAgICAgICAgICA8ZGl2IGNsYXNzPVwiY29sdW1uXCI+XG4gICAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cIndiLXByb2R1Y3RzLWxpc3Qtc2VsZWN0ZWRfX2xpc3RfX3Byb2R1Y3RcIiAoY2xpY2spPVwidHJpZ2dlclByb2R1Y3QgPSB0cnVlO1wiPlxuICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwiaW1nLXdyYXBwZXJcIiAqbmdJZj1cImNhdGFsb2dTZWxlY3Rpb24ucHJvZHVjdHNbMTBdLm1haW5faW1hZ2VcIj5cbiAgICAgICAgICAgICAgICAgICAgICAgIDxpbWdcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAqbmdJZj1cImNhdGFsb2dTZWxlY3Rpb24ucHJvZHVjdHNbMTBdLm1haW5faW1hZ2UuZmlsZVwiXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgW3NyY109XCJpbWFnZUZyb250VXJsICsgY2F0YWxvZ1NlbGVjdGlvbi5wcm9kdWN0c1sxMF0ubWFpbl9pbWFnZS5maWxlXCJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBbYWx0XT1cImNhdGFsb2dTZWxlY3Rpb24ucHJvZHVjdHNbMTBdLm5hbWVcIlxuICAgICAgICAgICAgICAgICAgICAgICAgLz5cbiAgICAgICAgICAgICAgICAgICAgPC9kaXY+XG4gICAgICAgICAgICAgICAgICAgIDxwPnt7IGNhdGFsb2dTZWxlY3Rpb24ucHJvZHVjdHNbMTBdLm5hbWUgfX08L3A+XG4gICAgICAgICAgICAgICAgICAgIDxwPnt7IGZvcm1hdFByaWNlWzEwXSB9fTwvcD5cbiAgICAgICAgICAgICAgICA8L2Rpdj5cbiAgICAgICAgICAgIDwvZGl2PlxuICAgICAgICAgICAgPGRpdiBjbGFzcz1cImNvbHVtbiBjb2x1bW4tbWF4LXdpZHRoLTUwXCI+XG4gICAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cImNvbHVtbnMgaXMtZ2FwbGVzcyBpcy1tdWx0aWxpbmUgd2ItcHJvZHVjdHMtbGlzdC1zZWxlY3RlZF9fbGlzdF9fc2Vjb25kXCI+XG4gICAgICAgICAgICAgICAgICAgIDxkaXYgKm5nRm9yPVwibGV0IHByb2R1Y3Qgb2YgY2F0YWxvZ1NlbGVjdGlvbi5wcm9kdWN0cyB8IHNsaWNlOiAxMTsgbGV0IGluZGV4ID0gaW5kZXhcIiBjbGFzcz1cImNvbHVtbiBpcy02XCIgKGNsaWNrKT1cInRyaWdnZXJQcm9kdWN0ID0gdHJ1ZTtcIj5cbiAgICAgICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJ3Yi1wcm9kdWN0cy1saXN0LXNlbGVjdGVkX19saXN0X19wcm9kdWN0XCI+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cImltZy13cmFwcGVyXCIgKm5nSWY9XCJwcm9kdWN0Lm1haW5faW1hZ2VcIj5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGltZyAqbmdJZj1cInByb2R1Y3QubWFpbl9pbWFnZS5maWxlXCIgW3NyY109XCJpbWFnZUZyb250VXJsICsgcHJvZHVjdC5tYWluX2ltYWdlLmZpbGVcIiBbYWx0XT1cInByb2R1Y3QubmFtZVwiIC8+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9kaXY+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPHA+e3sgcHJvZHVjdC5uYW1lIH19PC9wPlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxwPnt7IGZvcm1hdFByaWNlW2luZGV4ICsgMTFdIH19PC9wPlxuICAgICAgICAgICAgICAgICAgICAgICAgPC9kaXY+XG4gICAgICAgICAgICAgICAgICAgIDwvZGl2PlxuICAgICAgICAgICAgICAgIDwvZGl2PlxuICAgICAgICAgICAgPC9kaXY+XG4gICAgICAgIDwvZGl2PlxuICAgIDwvZGl2PlxuICAgIDxkaXYgY2xhc3M9XCJ3Yi1wcm9kdWN0cy1saXN0LXNlbGVjdGVkX19ub2xpc3RcIiAqbmdJZj1cIiFjYXRhbG9nU2VsZWN0aW9uLnByb2R1Y3RzIHx8IGNhdGFsb2dTZWxlY3Rpb24ucHJvZHVjdHMubGVuZ3RoID09PSAwXCI+XG4gICAgICAgIDxwPnt7ICd3Yi5zdHJ1Y3R1cmVzLnRlbXBsYXRlLjYnIHwgdHJhbnNsYXRlIH19PC9wPlxuICAgIDwvZGl2PlxuPC9kaXY+XG4iXX0=