Your IP : 216.73.216.176


Current Path : /proc/thread-self/cwd/static/adminhtml/Magento/backend/it_IT/js/bundle/
Upload File :
Current File : //proc/thread-self/cwd/static/adminhtml/Magento/backend/it_IT/js/bundle/bundle8.js

require.config({"config": {
        "jsbuild":{"Magento_PageBuilder/js/resource/slick/slick.min.js":"/*\n     _ _      _       _\n ___| (_) ___| | __  (_)___\n/ __| | |/ __| |/ /  | / __|\n\\__ \\ | | (__|   < _ | \\__ \\\n|___/_|_|\\___|_|\\_(_)/ |___/\n                   |__/\n\n Version: 1.9.0\n  Author: Ken Wheeler\n Website: http://kenwheeler.github.io\n    Docs: http://kenwheeler.github.io/slick\n    Repo: http://github.com/kenwheeler/slick\n  Issues: http://github.com/kenwheeler/slick/issues\n\n */\n(function(i){\"use strict\";\"function\"==typeof define&&define.amd?define([\"jquery\"],i):\"undefined\"!=typeof exports?module.exports=i(require(\"jquery\")):i(jQuery)})(function(i){\"use strict\";var e=window.Slick||{};e=function(){function e(e,o){var s,n=this;n.defaults={accessibility:!0,adaptiveHeight:!1,appendArrows:i(e),appendDots:i(e),arrows:!0,asNavFor:null,prevArrow:'<button class=\"slick-prev\" aria-label=\"Previous\" type=\"button\">Previous</button>',nextArrow:'<button class=\"slick-next\" aria-label=\"Next\" type=\"button\">Next</button>',autoplay:!1,autoplaySpeed:3e3,centerMode:!1,centerPadding:\"50px\",cssEase:\"ease\",customPaging:function(e,t){return i('<button type=\"button\" />').text(t+1)},dots:!1,dotsClass:\"slick-dots\",draggable:!0,easing:\"linear\",edgeFriction:.35,fade:!1,focusOnSelect:!1,focusOnChange:!1,infinite:!0,initialSlide:0,lazyLoad:\"ondemand\",mobileFirst:!1,pauseOnHover:!0,pauseOnFocus:!0,pauseOnDotsHover:!1,respondTo:\"window\",responsive:null,rows:1,rtl:!1,slide:\"\",slidesPerRow:1,slidesToShow:1,slidesToScroll:1,speed:500,swipe:!0,swipeToSlide:!1,touchMove:!0,touchThreshold:5,useCSS:!0,useTransform:!0,variableWidth:!1,vertical:!1,verticalSwiping:!1,waitForAnimate:!0,zIndex:1e3},n.initials={animating:!1,dragging:!1,autoPlayTimer:null,currentDirection:0,currentLeft:null,currentSlide:0,direction:1,$dots:null,listWidth:null,listHeight:null,loadIndex:0,$nextArrow:null,$prevArrow:null,scrolling:!1,slideCount:null,slideWidth:null,$slideTrack:null,$slides:null,sliding:!1,slideOffset:0,swipeLeft:null,swiping:!1,$list:null,touchObject:{},transformsEnabled:!1,unslicked:!1},i.extend(n,n.initials),n.activeBreakpoint=null,n.animType=null,n.animProp=null,n.breakpoints=[],n.breakpointSettings=[],n.cssTransitions=!1,n.focussed=!1,n.interrupted=!1,n.hidden=\"hidden\",n.paused=!0,n.positionProp=null,n.respondTo=null,n.rowCount=1,n.shouldClick=!0,n.$slider=i(e),n.$slidesCache=null,n.transformType=null,n.transitionType=null,n.visibilityChange=\"visibilitychange\",n.windowWidth=0,n.windowTimer=null,s=i(e).data(\"slick\")||{},n.options=i.extend({},n.defaults,o,s),n.currentSlide=n.options.initialSlide,n.originalSettings=n.options,\"undefined\"!=typeof document.mozHidden?(n.hidden=\"mozHidden\",n.visibilityChange=\"mozvisibilitychange\"):\"undefined\"!=typeof document.webkitHidden&&(n.hidden=\"webkitHidden\",n.visibilityChange=\"webkitvisibilitychange\"),n.autoPlay=i.proxy(n.autoPlay,n),n.autoPlayClear=i.proxy(n.autoPlayClear,n),n.autoPlayIterator=i.proxy(n.autoPlayIterator,n),n.changeSlide=i.proxy(n.changeSlide,n),n.clickHandler=i.proxy(n.clickHandler,n),n.selectHandler=i.proxy(n.selectHandler,n),n.setPosition=i.proxy(n.setPosition,n),n.swipeHandler=i.proxy(n.swipeHandler,n),n.dragHandler=i.proxy(n.dragHandler,n),n.keyHandler=i.proxy(n.keyHandler,n),n.instanceUid=t++,n.htmlExpr=/^(?:\\s*(<[\\w\\W]+>)[^>]*)$/,n.registerBreakpoints(),n.init(!0)}var t=0;return e}(),e.prototype.activateADA=function(){var i=this;i.$slideTrack.find(\".slick-active\").attr({\"aria-hidden\":\"false\"}).find(\"a, input, button, select\").attr({tabindex:\"0\"})},e.prototype.addSlide=e.prototype.slickAdd=function(e,t,o){var s=this;if(\"boolean\"==typeof t)o=t,t=null;else if(t<0||t>=s.slideCount)return!1;s.unload(),\"number\"==typeof t?0===t&&0===s.$slides.length?i(e).appendTo(s.$slideTrack):o?i(e).insertBefore(s.$slides.eq(t)):i(e).insertAfter(s.$slides.eq(t)):o===!0?i(e).prependTo(s.$slideTrack):i(e).appendTo(s.$slideTrack),s.$slides=s.$slideTrack.children(this.options.slide),s.$slideTrack.children(this.options.slide).detach(),s.$slideTrack.append(s.$slides),s.$slides.each(function(e,t){i(t).attr(\"data-slick-index\",e)}),s.$slidesCache=s.$slides,s.reinit()},e.prototype.animateHeight=function(){var i=this;if(1===i.options.slidesToShow&&i.options.adaptiveHeight===!0&&i.options.vertical===!1){var e=i.$slides.eq(i.currentSlide).outerHeight(!0);i.$list.animate({height:e},i.options.speed)}},e.prototype.animateSlide=function(e,t){var o={},s=this;s.animateHeight(),s.options.rtl===!0&&s.options.vertical===!1&&(e=-e),s.transformsEnabled===!1?s.options.vertical===!1?s.$slideTrack.animate({left:e},s.options.speed,s.options.easing,t):s.$slideTrack.animate({top:e},s.options.speed,s.options.easing,t):s.cssTransitions===!1?(s.options.rtl===!0&&(s.currentLeft=-s.currentLeft),i({animStart:s.currentLeft}).animate({animStart:e},{duration:s.options.speed,easing:s.options.easing,step:function(i){i=Math.ceil(i),s.options.vertical===!1?(o[s.animType]=\"translate(\"+i+\"px, 0px)\",s.$slideTrack.css(o)):(o[s.animType]=\"translate(0px,\"+i+\"px)\",s.$slideTrack.css(o))},complete:function(){t&&t.call()}})):(s.applyTransition(),e=Math.ceil(e),s.options.vertical===!1?o[s.animType]=\"translate3d(\"+e+\"px, 0px, 0px)\":o[s.animType]=\"translate3d(0px,\"+e+\"px, 0px)\",s.$slideTrack.css(o),t&&setTimeout(function(){s.disableTransition(),t.call()},s.options.speed))},e.prototype.getNavTarget=function(){var e=this,t=e.options.asNavFor;return t&&null!==t&&(t=i(t).not(e.$slider)),t},e.prototype.asNavFor=function(e){var t=this,o=t.getNavTarget();null!==o&&\"object\"==typeof o&&o.each(function(){var t=i(this).slick(\"getSlick\");t.unslicked||t.slideHandler(e,!0)})},e.prototype.applyTransition=function(i){var e=this,t={};e.options.fade===!1?t[e.transitionType]=e.transformType+\" \"+e.options.speed+\"ms \"+e.options.cssEase:t[e.transitionType]=\"opacity \"+e.options.speed+\"ms \"+e.options.cssEase,e.options.fade===!1?e.$slideTrack.css(t):e.$slides.eq(i).css(t)},e.prototype.autoPlay=function(){var i=this;i.autoPlayClear(),i.slideCount>i.options.slidesToShow&&(i.autoPlayTimer=setInterval(i.autoPlayIterator,i.options.autoplaySpeed))},e.prototype.autoPlayClear=function(){var i=this;i.autoPlayTimer&&clearInterval(i.autoPlayTimer)},e.prototype.autoPlayIterator=function(){var i=this,e=i.currentSlide+i.options.slidesToScroll;i.paused||i.interrupted||i.focussed||(i.options.infinite===!1&&(1===i.direction&&i.currentSlide+1===i.slideCount-1?i.direction=0:0===i.direction&&(e=i.currentSlide-i.options.slidesToScroll,i.currentSlide-1===0&&(i.direction=1))),i.slideHandler(e))},e.prototype.buildArrows=function(){var e=this;e.options.arrows===!0&&(e.$prevArrow=i(e.options.prevArrow).addClass(\"slick-arrow\"),e.$nextArrow=i(e.options.nextArrow).addClass(\"slick-arrow\"),e.slideCount>e.options.slidesToShow?(e.$prevArrow.removeClass(\"slick-hidden\").removeAttr(\"aria-hidden tabindex\"),e.$nextArrow.removeClass(\"slick-hidden\").removeAttr(\"aria-hidden tabindex\"),e.htmlExpr.test(e.options.prevArrow)&&e.$prevArrow.prependTo(e.options.appendArrows),e.htmlExpr.test(e.options.nextArrow)&&e.$nextArrow.appendTo(e.options.appendArrows),e.options.infinite!==!0&&e.$prevArrow.addClass(\"slick-disabled\").attr(\"aria-disabled\",\"true\")):e.$prevArrow.add(e.$nextArrow).addClass(\"slick-hidden\").attr({\"aria-disabled\":\"true\",tabindex:\"-1\"}))},e.prototype.buildDots=function(){var e,t,o=this;if(o.options.dots===!0&&o.slideCount>o.options.slidesToShow){for(o.$slider.addClass(\"slick-dotted\"),t=i(\"<ul />\").addClass(o.options.dotsClass),e=0;e<=o.getDotCount();e+=1)t.append(i(\"<li />\").append(o.options.customPaging.call(this,o,e)));o.$dots=t.appendTo(o.options.appendDots),o.$dots.find(\"li\").first().addClass(\"slick-active\")}},e.prototype.buildOut=function(){var e=this;e.$slides=e.$slider.children(e.options.slide+\":not(.slick-cloned)\").addClass(\"slick-slide\"),e.slideCount=e.$slides.length,e.$slides.each(function(e,t){i(t).attr(\"data-slick-index\",e).data(\"originalStyling\",i(t).attr(\"style\")||\"\")}),e.$slider.addClass(\"slick-slider\"),e.$slideTrack=0===e.slideCount?i('<div class=\"slick-track\"/>').appendTo(e.$slider):e.$slides.wrapAll('<div class=\"slick-track\"/>').parent(),e.$list=e.$slideTrack.wrap('<div class=\"slick-list\"/>').parent(),e.$slideTrack.css(\"opacity\",0),e.options.centerMode!==!0&&e.options.swipeToSlide!==!0||(e.options.slidesToScroll=1),i(\"img[data-lazy]\",e.$slider).not(\"[src]\").addClass(\"slick-loading\"),e.setupInfinite(),e.buildArrows(),e.buildDots(),e.updateDots(),e.setSlideClasses(\"number\"==typeof e.currentSlide?e.currentSlide:0),e.options.draggable===!0&&e.$list.addClass(\"draggable\")},e.prototype.buildRows=function(){var i,e,t,o,s,n,r,l=this;if(o=document.createDocumentFragment(),n=l.$slider.children(),l.options.rows>0){for(r=l.options.slidesPerRow*l.options.rows,s=Math.ceil(n.length/r),i=0;i<s;i++){var d=document.createElement(\"div\");for(e=0;e<l.options.rows;e++){var a=document.createElement(\"div\");for(t=0;t<l.options.slidesPerRow;t++){var c=i*r+(e*l.options.slidesPerRow+t);n.get(c)&&a.appendChild(n.get(c))}d.appendChild(a)}o.appendChild(d)}l.$slider.empty().append(o),l.$slider.children().children().children().css({width:100/l.options.slidesPerRow+\"%\",display:\"inline-block\"})}},e.prototype.checkResponsive=function(e,t){var o,s,n,r=this,l=!1,d=r.$slider.width(),a=window.innerWidth||i(window).width();if(\"window\"===r.respondTo?n=a:\"slider\"===r.respondTo?n=d:\"min\"===r.respondTo&&(n=Math.min(a,d)),r.options.responsive&&r.options.responsive.length&&null!==r.options.responsive){s=null;for(o in r.breakpoints)r.breakpoints.hasOwnProperty(o)&&(r.originalSettings.mobileFirst===!1?n<r.breakpoints[o]&&(s=r.breakpoints[o]):n>r.breakpoints[o]&&(s=r.breakpoints[o]));null!==s?null!==r.activeBreakpoint?(s!==r.activeBreakpoint||t)&&(r.activeBreakpoint=s,\"unslick\"===r.breakpointSettings[s]?r.unslick(s):(r.options=i.extend({},r.originalSettings,r.breakpointSettings[s]),e===!0&&(r.currentSlide=r.options.initialSlide),r.refresh(e)),l=s):(r.activeBreakpoint=s,\"unslick\"===r.breakpointSettings[s]?r.unslick(s):(r.options=i.extend({},r.originalSettings,r.breakpointSettings[s]),e===!0&&(r.currentSlide=r.options.initialSlide),r.refresh(e)),l=s):null!==r.activeBreakpoint&&(r.activeBreakpoint=null,r.options=r.originalSettings,e===!0&&(r.currentSlide=r.options.initialSlide),r.refresh(e),l=s),e||l===!1||r.$slider.trigger(\"breakpoint\",[r,l])}},e.prototype.changeSlide=function(e,t){var o,s,n,r=this,l=i(e.currentTarget);switch(l.is(\"a\")&&e.preventDefault(),l.is(\"li\")||(l=l.closest(\"li\")),n=r.slideCount%r.options.slidesToScroll!==0,o=n?0:(r.slideCount-r.currentSlide)%r.options.slidesToScroll,e.data.message){case\"previous\":s=0===o?r.options.slidesToScroll:r.options.slidesToShow-o,r.slideCount>r.options.slidesToShow&&r.slideHandler(r.currentSlide-s,!1,t);break;case\"next\":s=0===o?r.options.slidesToScroll:o,r.slideCount>r.options.slidesToShow&&r.slideHandler(r.currentSlide+s,!1,t);break;case\"index\":var d=0===e.data.index?0:e.data.index||l.index()*r.options.slidesToScroll;r.slideHandler(r.checkNavigable(d),!1,t),l.children().trigger(\"focus\");break;default:return}},e.prototype.checkNavigable=function(i){var e,t,o=this;if(e=o.getNavigableIndexes(),t=0,i>e[e.length-1])i=e[e.length-1];else for(var s in e){if(i<e[s]){i=t;break}t=e[s]}return i},e.prototype.cleanUpEvents=function(){var e=this;e.options.dots&&null!==e.$dots&&(i(\"li\",e.$dots).off(\"click.slick\",e.changeSlide).off(\"mouseenter.slick\",i.proxy(e.interrupt,e,!0)).off(\"mouseleave.slick\",i.proxy(e.interrupt,e,!1)),e.options.accessibility===!0&&e.$dots.off(\"keydown.slick\",e.keyHandler)),e.$slider.off(\"focus.slick blur.slick\"),e.options.arrows===!0&&e.slideCount>e.options.slidesToShow&&(e.$prevArrow&&e.$prevArrow.off(\"click.slick\",e.changeSlide),e.$nextArrow&&e.$nextArrow.off(\"click.slick\",e.changeSlide),e.options.accessibility===!0&&(e.$prevArrow&&e.$prevArrow.off(\"keydown.slick\",e.keyHandler),e.$nextArrow&&e.$nextArrow.off(\"keydown.slick\",e.keyHandler))),e.$list.off(\"touchstart.slick mousedown.slick\",e.swipeHandler),e.$list.off(\"touchmove.slick mousemove.slick\",e.swipeHandler),e.$list.off(\"touchend.slick mouseup.slick\",e.swipeHandler),e.$list.off(\"touchcancel.slick mouseleave.slick\",e.swipeHandler),e.$list.off(\"click.slick\",e.clickHandler),i(document).off(e.visibilityChange,e.visibility),e.cleanUpSlideEvents(),e.options.accessibility===!0&&e.$list.off(\"keydown.slick\",e.keyHandler),e.options.focusOnSelect===!0&&i(e.$slideTrack).children().off(\"click.slick\",e.selectHandler),i(window).off(\"orientationchange.slick.slick-\"+e.instanceUid,e.orientationChange),i(window).off(\"resize.slick.slick-\"+e.instanceUid,e.resize),i(\"[draggable!=true]\",e.$slideTrack).off(\"dragstart\",e.preventDefault),i(window).off(\"load.slick.slick-\"+e.instanceUid,e.setPosition)},e.prototype.cleanUpSlideEvents=function(){var e=this;e.$list.off(\"mouseenter.slick\",i.proxy(e.interrupt,e,!0)),e.$list.off(\"mouseleave.slick\",i.proxy(e.interrupt,e,!1))},e.prototype.cleanUpRows=function(){var i,e=this;e.options.rows>0&&(i=e.$slides.children().children(),i.removeAttr(\"style\"),e.$slider.empty().append(i))},e.prototype.clickHandler=function(i){var e=this;e.shouldClick===!1&&(i.stopImmediatePropagation(),i.stopPropagation(),i.preventDefault())},e.prototype.destroy=function(e){var t=this;t.autoPlayClear(),t.touchObject={},t.cleanUpEvents(),i(\".slick-cloned\",t.$slider).detach(),t.$dots&&t.$dots.remove(),t.$prevArrow&&t.$prevArrow.length&&(t.$prevArrow.removeClass(\"slick-disabled slick-arrow slick-hidden\").removeAttr(\"aria-hidden aria-disabled tabindex\").css(\"display\",\"\"),t.htmlExpr.test(t.options.prevArrow)&&t.$prevArrow.remove()),t.$nextArrow&&t.$nextArrow.length&&(t.$nextArrow.removeClass(\"slick-disabled slick-arrow slick-hidden\").removeAttr(\"aria-hidden aria-disabled tabindex\").css(\"display\",\"\"),t.htmlExpr.test(t.options.nextArrow)&&t.$nextArrow.remove()),t.$slides&&(t.$slides.removeClass(\"slick-slide slick-active slick-center slick-visible slick-current\").removeAttr(\"aria-hidden\").removeAttr(\"data-slick-index\").each(function(){i(this).attr(\"style\",i(this).data(\"originalStyling\"))}),t.$slideTrack.children(this.options.slide).detach(),t.$slideTrack.detach(),t.$list.detach(),t.$slider.append(t.$slides)),t.cleanUpRows(),t.$slider.removeClass(\"slick-slider\"),t.$slider.removeClass(\"slick-initialized\"),t.$slider.removeClass(\"slick-dotted\"),t.unslicked=!0,e||t.$slider.trigger(\"destroy\",[t])},e.prototype.disableTransition=function(i){var e=this,t={};t[e.transitionType]=\"\",e.options.fade===!1?e.$slideTrack.css(t):e.$slides.eq(i).css(t)},e.prototype.fadeSlide=function(i,e){var t=this;t.cssTransitions===!1?(t.$slides.eq(i).css({zIndex:t.options.zIndex}),t.$slides.eq(i).animate({opacity:1},t.options.speed,t.options.easing,e)):(t.applyTransition(i),t.$slides.eq(i).css({opacity:1,zIndex:t.options.zIndex}),e&&setTimeout(function(){t.disableTransition(i),e.call()},t.options.speed))},e.prototype.fadeSlideOut=function(i){var e=this;e.cssTransitions===!1?e.$slides.eq(i).animate({opacity:0,zIndex:e.options.zIndex-2},e.options.speed,e.options.easing):(e.applyTransition(i),e.$slides.eq(i).css({opacity:0,zIndex:e.options.zIndex-2}))},e.prototype.filterSlides=e.prototype.slickFilter=function(i){var e=this;null!==i&&(e.$slidesCache=e.$slides,e.unload(),e.$slideTrack.children(this.options.slide).detach(),e.$slidesCache.filter(i).appendTo(e.$slideTrack),e.reinit())},e.prototype.focusHandler=function(){var e=this;e.$slider.off(\"focus.slick blur.slick\").on(\"focus.slick\",\"*\",function(t){var o=i(this);setTimeout(function(){e.options.pauseOnFocus&&o.is(\":focus\")&&(e.focussed=!0,e.autoPlay())},0)}).on(\"blur.slick\",\"*\",function(t){i(this);e.options.pauseOnFocus&&(e.focussed=!1,e.autoPlay())})},e.prototype.getCurrent=e.prototype.slickCurrentSlide=function(){var i=this;return i.currentSlide},e.prototype.getDotCount=function(){var i=this,e=0,t=0,o=0;if(i.options.infinite===!0)if(i.slideCount<=i.options.slidesToShow)++o;else for(;e<i.slideCount;)++o,e=t+i.options.slidesToScroll,t+=i.options.slidesToScroll<=i.options.slidesToShow?i.options.slidesToScroll:i.options.slidesToShow;else if(i.options.centerMode===!0)o=i.slideCount;else if(i.options.asNavFor)for(;e<i.slideCount;)++o,e=t+i.options.slidesToScroll,t+=i.options.slidesToScroll<=i.options.slidesToShow?i.options.slidesToScroll:i.options.slidesToShow;else o=1+Math.ceil((i.slideCount-i.options.slidesToShow)/i.options.slidesToScroll);return o-1},e.prototype.getLeft=function(i){var e,t,o,s,n=this,r=0;return n.slideOffset=0,t=n.$slides.first().outerHeight(!0),n.options.infinite===!0?(n.slideCount>n.options.slidesToShow&&(n.slideOffset=n.slideWidth*n.options.slidesToShow*-1,s=-1,n.options.vertical===!0&&n.options.centerMode===!0&&(2===n.options.slidesToShow?s=-1.5:1===n.options.slidesToShow&&(s=-2)),r=t*n.options.slidesToShow*s),n.slideCount%n.options.slidesToScroll!==0&&i+n.options.slidesToScroll>n.slideCount&&n.slideCount>n.options.slidesToShow&&(i>n.slideCount?(n.slideOffset=(n.options.slidesToShow-(i-n.slideCount))*n.slideWidth*-1,r=(n.options.slidesToShow-(i-n.slideCount))*t*-1):(n.slideOffset=n.slideCount%n.options.slidesToScroll*n.slideWidth*-1,r=n.slideCount%n.options.slidesToScroll*t*-1))):i+n.options.slidesToShow>n.slideCount&&(n.slideOffset=(i+n.options.slidesToShow-n.slideCount)*n.slideWidth,r=(i+n.options.slidesToShow-n.slideCount)*t),n.slideCount<=n.options.slidesToShow&&(n.slideOffset=0,r=0),n.options.centerMode===!0&&n.slideCount<=n.options.slidesToShow?n.slideOffset=n.slideWidth*Math.floor(n.options.slidesToShow)/2-n.slideWidth*n.slideCount/2:n.options.centerMode===!0&&n.options.infinite===!0?n.slideOffset+=n.slideWidth*Math.floor(n.options.slidesToShow/2)-n.slideWidth:n.options.centerMode===!0&&(n.slideOffset=0,n.slideOffset+=n.slideWidth*Math.floor(n.options.slidesToShow/2)),e=n.options.vertical===!1?i*n.slideWidth*-1+n.slideOffset:i*t*-1+r,n.options.variableWidth===!0&&(o=n.slideCount<=n.options.slidesToShow||n.options.infinite===!1?n.$slideTrack.children(\".slick-slide\").eq(i):n.$slideTrack.children(\".slick-slide\").eq(i+n.options.slidesToShow),e=n.options.rtl===!0?o[0]?(n.$slideTrack.width()-o[0].offsetLeft-o.width())*-1:0:o[0]?o[0].offsetLeft*-1:0,n.options.centerMode===!0&&(o=n.slideCount<=n.options.slidesToShow||n.options.infinite===!1?n.$slideTrack.children(\".slick-slide\").eq(i):n.$slideTrack.children(\".slick-slide\").eq(i+n.options.slidesToShow+1),e=n.options.rtl===!0?o[0]?(n.$slideTrack.width()-o[0].offsetLeft-o.width())*-1:0:o[0]?o[0].offsetLeft*-1:0,e+=(n.$list.width()-o.outerWidth())/2)),e},e.prototype.getOption=e.prototype.slickGetOption=function(i){var e=this;return e.options[i]},e.prototype.getNavigableIndexes=function(){var i,e=this,t=0,o=0,s=[];for(e.options.infinite===!1?i=e.slideCount:(t=e.options.slidesToScroll*-1,o=e.options.slidesToScroll*-1,i=2*e.slideCount);t<i;)s.push(t),t=o+e.options.slidesToScroll,o+=e.options.slidesToScroll<=e.options.slidesToShow?e.options.slidesToScroll:e.options.slidesToShow;return s},e.prototype.getSlick=function(){return this},e.prototype.getSlideCount=function(){var e,t,o,s,n=this;return s=n.options.centerMode===!0?Math.floor(n.$list.width()/2):0,o=n.swipeLeft*-1+s,n.options.swipeToSlide===!0?(n.$slideTrack.find(\".slick-slide\").each(function(e,s){var r,l,d;if(r=i(s).outerWidth(),l=s.offsetLeft,n.options.centerMode!==!0&&(l+=r/2),d=l+r,o<d)return t=s,!1}),e=Math.abs(i(t).attr(\"data-slick-index\")-n.currentSlide)||1):n.options.slidesToScroll},e.prototype.goTo=e.prototype.slickGoTo=function(i,e){var t=this;t.changeSlide({data:{message:\"index\",index:parseInt(i)}},e)},e.prototype.init=function(e){var t=this;i(t.$slider).hasClass(\"slick-initialized\")||(i(t.$slider).addClass(\"slick-initialized\"),t.buildRows(),t.buildOut(),t.setProps(),t.startLoad(),t.loadSlider(),t.initializeEvents(),t.updateArrows(),t.updateDots(),t.checkResponsive(!0),t.focusHandler()),e&&t.$slider.trigger(\"init\",[t]),t.options.accessibility===!0&&t.initADA(),t.options.autoplay&&(t.paused=!1,t.autoPlay())},e.prototype.initADA=function(){var e=this,t=Math.ceil(e.slideCount/e.options.slidesToShow),o=e.getNavigableIndexes().filter(function(i){return i>=0&&i<e.slideCount});e.$slides.add(e.$slideTrack.find(\".slick-cloned\")).attr({\"aria-hidden\":\"true\",tabindex:\"-1\"}).find(\"a, input, button, select\").attr({tabindex:\"-1\"}),null!==e.$dots&&(e.$slides.not(e.$slideTrack.find(\".slick-cloned\")).each(function(t){var s=o.indexOf(t);if(i(this).attr({role:\"tabpanel\",id:\"slick-slide\"+e.instanceUid+t,tabindex:-1}),s!==-1){var n=\"slick-slide-control\"+e.instanceUid+s;i(\"#\"+n).length&&i(this).attr({\"aria-describedby\":n})}}),e.$dots.attr(\"role\",\"tablist\").find(\"li\").each(function(s){var n=o[s];i(this).attr({role:\"presentation\"}),i(this).find(\"button\").first().attr({role:\"tab\",id:\"slick-slide-control\"+e.instanceUid+s,\"aria-controls\":\"slick-slide\"+e.instanceUid+n,\"aria-label\":s+1+\" of \"+t,\"aria-selected\":null,tabindex:\"-1\"})}).eq(e.currentSlide).find(\"button\").attr({\"aria-selected\":\"true\",tabindex:\"0\"}).end());for(var s=e.currentSlide,n=s+e.options.slidesToShow;s<n;s++)e.options.focusOnChange?e.$slides.eq(s).attr({tabindex:\"0\"}):e.$slides.eq(s).removeAttr(\"tabindex\");e.activateADA()},e.prototype.initArrowEvents=function(){var i=this;i.options.arrows===!0&&i.slideCount>i.options.slidesToShow&&(i.$prevArrow.off(\"click.slick\").on(\"click.slick\",{message:\"previous\"},i.changeSlide),i.$nextArrow.off(\"click.slick\").on(\"click.slick\",{message:\"next\"},i.changeSlide),i.options.accessibility===!0&&(i.$prevArrow.on(\"keydown.slick\",i.keyHandler),i.$nextArrow.on(\"keydown.slick\",i.keyHandler)))},e.prototype.initDotEvents=function(){var e=this;e.options.dots===!0&&e.slideCount>e.options.slidesToShow&&(i(\"li\",e.$dots).on(\"click.slick\",{message:\"index\"},e.changeSlide),e.options.accessibility===!0&&e.$dots.on(\"keydown.slick\",e.keyHandler)),e.options.dots===!0&&e.options.pauseOnDotsHover===!0&&e.slideCount>e.options.slidesToShow&&i(\"li\",e.$dots).on(\"mouseenter.slick\",i.proxy(e.interrupt,e,!0)).on(\"mouseleave.slick\",i.proxy(e.interrupt,e,!1))},e.prototype.initSlideEvents=function(){var e=this;e.options.pauseOnHover&&(e.$list.on(\"mouseenter.slick\",i.proxy(e.interrupt,e,!0)),e.$list.on(\"mouseleave.slick\",i.proxy(e.interrupt,e,!1)))},e.prototype.initializeEvents=function(){var e=this;e.initArrowEvents(),e.initDotEvents(),e.initSlideEvents(),e.$list.on(\"touchstart.slick mousedown.slick\",{action:\"start\"},e.swipeHandler),e.$list.on(\"touchmove.slick mousemove.slick\",{action:\"move\"},e.swipeHandler),e.$list.on(\"touchend.slick mouseup.slick\",{action:\"end\"},e.swipeHandler),e.$list.on(\"touchcancel.slick mouseleave.slick\",{action:\"end\"},e.swipeHandler),e.$list.on(\"click.slick\",e.clickHandler),i(document).on(e.visibilityChange,i.proxy(e.visibility,e)),e.options.accessibility===!0&&e.$list.on(\"keydown.slick\",e.keyHandler),e.options.focusOnSelect===!0&&i(e.$slideTrack).children().on(\"click.slick\",e.selectHandler),i(window).on(\"orientationchange.slick.slick-\"+e.instanceUid,i.proxy(e.orientationChange,e)),i(window).on(\"resize.slick.slick-\"+e.instanceUid,i.proxy(e.resize,e)),i(\"[draggable!=true]\",e.$slideTrack).on(\"dragstart\",e.preventDefault),i(window).on(\"load.slick.slick-\"+e.instanceUid,e.setPosition),i(e.setPosition)},e.prototype.initUI=function(){var i=this;i.options.arrows===!0&&i.slideCount>i.options.slidesToShow&&(i.$prevArrow.show(),i.$nextArrow.show()),i.options.dots===!0&&i.slideCount>i.options.slidesToShow&&i.$dots.show()},e.prototype.keyHandler=function(i){var e=this;i.target.tagName.match(\"TEXTAREA|INPUT|SELECT\")||(37===i.keyCode&&e.options.accessibility===!0?e.changeSlide({data:{message:e.options.rtl===!0?\"next\":\"previous\"}}):39===i.keyCode&&e.options.accessibility===!0&&e.changeSlide({data:{message:e.options.rtl===!0?\"previous\":\"next\"}}))},e.prototype.lazyLoad=function(){function e(e){i(\"img[data-lazy]\",e).each(function(){var e=i(this),t=i(this).attr(\"data-lazy\"),o=i(this).attr(\"data-srcset\"),s=i(this).attr(\"data-sizes\")||r.$slider.attr(\"data-sizes\"),n=document.createElement(\"img\");n.onload=function(){e.animate({opacity:0},100,function(){o&&(e.attr(\"srcset\",o),s&&e.attr(\"sizes\",s)),e.attr(\"src\",t).animate({opacity:1},200,function(){e.removeAttr(\"data-lazy data-srcset data-sizes\").removeClass(\"slick-loading\")}),r.$slider.trigger(\"lazyLoaded\",[r,e,t])})},n.onerror=function(){e.removeAttr(\"data-lazy\").removeClass(\"slick-loading\").addClass(\"slick-lazyload-error\"),r.$slider.trigger(\"lazyLoadError\",[r,e,t])},n.src=t})}var t,o,s,n,r=this;if(r.options.centerMode===!0?r.options.infinite===!0?(s=r.currentSlide+(r.options.slidesToShow/2+1),n=s+r.options.slidesToShow+2):(s=Math.max(0,r.currentSlide-(r.options.slidesToShow/2+1)),n=2+(r.options.slidesToShow/2+1)+r.currentSlide):(s=r.options.infinite?r.options.slidesToShow+r.currentSlide:r.currentSlide,n=Math.ceil(s+r.options.slidesToShow),r.options.fade===!0&&(s>0&&s--,n<=r.slideCount&&n++)),t=r.$slider.find(\".slick-slide\").slice(s,n),\"anticipated\"===r.options.lazyLoad)for(var l=s-1,d=n,a=r.$slider.find(\".slick-slide\"),c=0;c<r.options.slidesToScroll;c++)l<0&&(l=r.slideCount-1),t=t.add(a.eq(l)),t=t.add(a.eq(d)),l--,d++;e(t),r.slideCount<=r.options.slidesToShow?(o=r.$slider.find(\".slick-slide\"),e(o)):r.currentSlide>=r.slideCount-r.options.slidesToShow?(o=r.$slider.find(\".slick-cloned\").slice(0,r.options.slidesToShow),e(o)):0===r.currentSlide&&(o=r.$slider.find(\".slick-cloned\").slice(r.options.slidesToShow*-1),e(o))},e.prototype.loadSlider=function(){var i=this;i.setPosition(),i.$slideTrack.css({opacity:1}),i.$slider.removeClass(\"slick-loading\"),i.initUI(),\"progressive\"===i.options.lazyLoad&&i.progressiveLazyLoad()},e.prototype.next=e.prototype.slickNext=function(){var i=this;i.changeSlide({data:{message:\"next\"}})},e.prototype.orientationChange=function(){var i=this;i.checkResponsive(),i.setPosition()},e.prototype.pause=e.prototype.slickPause=function(){var i=this;i.autoPlayClear(),i.paused=!0},e.prototype.play=e.prototype.slickPlay=function(){var i=this;i.autoPlay(),i.options.autoplay=!0,i.paused=!1,i.focussed=!1,i.interrupted=!1},e.prototype.postSlide=function(e){var t=this;if(!t.unslicked&&(t.$slider.trigger(\"afterChange\",[t,e]),t.animating=!1,t.slideCount>t.options.slidesToShow&&t.setPosition(),t.swipeLeft=null,t.options.autoplay&&t.autoPlay(),t.options.accessibility===!0&&(t.initADA(),t.options.focusOnChange))){var o=i(t.$slides.get(t.currentSlide));o.attr(\"tabindex\",0).focus()}},e.prototype.prev=e.prototype.slickPrev=function(){var i=this;i.changeSlide({data:{message:\"previous\"}})},e.prototype.preventDefault=function(i){i.preventDefault()},e.prototype.progressiveLazyLoad=function(e){e=e||1;var t,o,s,n,r,l=this,d=i(\"img[data-lazy]\",l.$slider);d.length?(t=d.first(),o=t.attr(\"data-lazy\"),s=t.attr(\"data-srcset\"),n=t.attr(\"data-sizes\")||l.$slider.attr(\"data-sizes\"),r=document.createElement(\"img\"),r.onload=function(){s&&(t.attr(\"srcset\",s),n&&t.attr(\"sizes\",n)),t.attr(\"src\",o).removeAttr(\"data-lazy data-srcset data-sizes\").removeClass(\"slick-loading\"),l.options.adaptiveHeight===!0&&l.setPosition(),l.$slider.trigger(\"lazyLoaded\",[l,t,o]),l.progressiveLazyLoad()},r.onerror=function(){e<3?setTimeout(function(){l.progressiveLazyLoad(e+1)},500):(t.removeAttr(\"data-lazy\").removeClass(\"slick-loading\").addClass(\"slick-lazyload-error\"),l.$slider.trigger(\"lazyLoadError\",[l,t,o]),l.progressiveLazyLoad())},r.src=o):l.$slider.trigger(\"allImagesLoaded\",[l])},e.prototype.refresh=function(e){var t,o,s=this;o=s.slideCount-s.options.slidesToShow,!s.options.infinite&&s.currentSlide>o&&(s.currentSlide=o),s.slideCount<=s.options.slidesToShow&&(s.currentSlide=0),t=s.currentSlide,s.destroy(!0),i.extend(s,s.initials,{currentSlide:t}),s.init(),e||s.changeSlide({data:{message:\"index\",index:t}},!1)},e.prototype.registerBreakpoints=function(){var e,t,o,s=this,n=s.options.responsive||null;if(\"array\"===i.type(n)&&n.length){s.respondTo=s.options.respondTo||\"window\";for(e in n)if(o=s.breakpoints.length-1,n.hasOwnProperty(e)){for(t=n[e].breakpoint;o>=0;)s.breakpoints[o]&&s.breakpoints[o]===t&&s.breakpoints.splice(o,1),o--;s.breakpoints.push(t),s.breakpointSettings[t]=n[e].settings}s.breakpoints.sort(function(i,e){return s.options.mobileFirst?i-e:e-i})}},e.prototype.reinit=function(){var e=this;e.$slides=e.$slideTrack.children(e.options.slide).addClass(\"slick-slide\"),e.slideCount=e.$slides.length,e.currentSlide>=e.slideCount&&0!==e.currentSlide&&(e.currentSlide=e.currentSlide-e.options.slidesToScroll),e.slideCount<=e.options.slidesToShow&&(e.currentSlide=0),e.registerBreakpoints(),e.setProps(),e.setupInfinite(),e.buildArrows(),e.updateArrows(),e.initArrowEvents(),e.buildDots(),e.updateDots(),e.initDotEvents(),e.cleanUpSlideEvents(),e.initSlideEvents(),e.checkResponsive(!1,!0),e.options.focusOnSelect===!0&&i(e.$slideTrack).children().on(\"click.slick\",e.selectHandler),e.setSlideClasses(\"number\"==typeof e.currentSlide?e.currentSlide:0),e.setPosition(),e.focusHandler(),e.paused=!e.options.autoplay,e.autoPlay(),e.$slider.trigger(\"reInit\",[e])},e.prototype.resize=function(){var e=this;i(window).width()!==e.windowWidth&&(clearTimeout(e.windowDelay),e.windowDelay=window.setTimeout(function(){e.windowWidth=i(window).width(),e.checkResponsive(),e.unslicked||e.setPosition()},50))},e.prototype.removeSlide=e.prototype.slickRemove=function(i,e,t){var o=this;return\"boolean\"==typeof i?(e=i,i=e===!0?0:o.slideCount-1):i=e===!0?--i:i,!(o.slideCount<1||i<0||i>o.slideCount-1)&&(o.unload(),t===!0?o.$slideTrack.children().remove():o.$slideTrack.children(this.options.slide).eq(i).remove(),o.$slides=o.$slideTrack.children(this.options.slide),o.$slideTrack.children(this.options.slide).detach(),o.$slideTrack.append(o.$slides),o.$slidesCache=o.$slides,void o.reinit())},e.prototype.setCSS=function(i){var e,t,o=this,s={};o.options.rtl===!0&&(i=-i),e=\"left\"==o.positionProp?Math.ceil(i)+\"px\":\"0px\",t=\"top\"==o.positionProp?Math.ceil(i)+\"px\":\"0px\",s[o.positionProp]=i,o.transformsEnabled===!1?o.$slideTrack.css(s):(s={},o.cssTransitions===!1?(s[o.animType]=\"translate(\"+e+\", \"+t+\")\",o.$slideTrack.css(s)):(s[o.animType]=\"translate3d(\"+e+\", \"+t+\", 0px)\",o.$slideTrack.css(s)))},e.prototype.setDimensions=function(){var i=this;i.options.vertical===!1?i.options.centerMode===!0&&i.$list.css({padding:\"0px \"+i.options.centerPadding}):(i.$list.height(i.$slides.first().outerHeight(!0)*i.options.slidesToShow),i.options.centerMode===!0&&i.$list.css({padding:i.options.centerPadding+\" 0px\"})),i.listWidth=i.$list.width(),i.listHeight=i.$list.height(),i.options.vertical===!1&&i.options.variableWidth===!1?(i.slideWidth=Math.ceil(i.listWidth/i.options.slidesToShow),i.$slideTrack.width(Math.ceil(i.slideWidth*i.$slideTrack.children(\".slick-slide\").length))):i.options.variableWidth===!0?i.$slideTrack.width(5e3*i.slideCount):(i.slideWidth=Math.ceil(i.listWidth),i.$slideTrack.height(Math.ceil(i.$slides.first().outerHeight(!0)*i.$slideTrack.children(\".slick-slide\").length)));var e=i.$slides.first().outerWidth(!0)-i.$slides.first().width();i.options.variableWidth===!1&&i.$slideTrack.children(\".slick-slide\").width(i.slideWidth-e)},e.prototype.setFade=function(){var e,t=this;t.$slides.each(function(o,s){e=t.slideWidth*o*-1,t.options.rtl===!0?i(s).css({position:\"relative\",right:e,top:0,zIndex:t.options.zIndex-2,opacity:0}):i(s).css({position:\"relative\",left:e,top:0,zIndex:t.options.zIndex-2,opacity:0})}),t.$slides.eq(t.currentSlide).css({zIndex:t.options.zIndex-1,opacity:1})},e.prototype.setHeight=function(){var i=this;if(1===i.options.slidesToShow&&i.options.adaptiveHeight===!0&&i.options.vertical===!1){var e=i.$slides.eq(i.currentSlide).outerHeight(!0);i.$list.css(\"height\",e)}},e.prototype.setOption=e.prototype.slickSetOption=function(){var e,t,o,s,n,r=this,l=!1;if(\"object\"===i.type(arguments[0])?(o=arguments[0],l=arguments[1],n=\"multiple\"):\"string\"===i.type(arguments[0])&&(o=arguments[0],s=arguments[1],l=arguments[2],\"responsive\"===arguments[0]&&\"array\"===i.type(arguments[1])?n=\"responsive\":\"undefined\"!=typeof arguments[1]&&(n=\"single\")),\"single\"===n)r.options[o]=s;else if(\"multiple\"===n)i.each(o,function(i,e){r.options[i]=e});else if(\"responsive\"===n)for(t in s)if(\"array\"!==i.type(r.options.responsive))r.options.responsive=[s[t]];else{for(e=r.options.responsive.length-1;e>=0;)r.options.responsive[e].breakpoint===s[t].breakpoint&&r.options.responsive.splice(e,1),e--;r.options.responsive.push(s[t])}l&&(r.unload(),r.reinit())},e.prototype.setPosition=function(){var i=this;i.setDimensions(),i.setHeight(),i.options.fade===!1?i.setCSS(i.getLeft(i.currentSlide)):i.setFade(),i.$slider.trigger(\"setPosition\",[i])},e.prototype.setProps=function(){var i=this,e=document.body.style;i.positionProp=i.options.vertical===!0?\"top\":\"left\",\n\"top\"===i.positionProp?i.$slider.addClass(\"slick-vertical\"):i.$slider.removeClass(\"slick-vertical\"),void 0===e.WebkitTransition&&void 0===e.MozTransition&&void 0===e.msTransition||i.options.useCSS===!0&&(i.cssTransitions=!0),i.options.fade&&(\"number\"==typeof i.options.zIndex?i.options.zIndex<3&&(i.options.zIndex=3):i.options.zIndex=i.defaults.zIndex),void 0!==e.OTransform&&(i.animType=\"OTransform\",i.transformType=\"-o-transform\",i.transitionType=\"OTransition\",void 0===e.perspectiveProperty&&void 0===e.webkitPerspective&&(i.animType=!1)),void 0!==e.MozTransform&&(i.animType=\"MozTransform\",i.transformType=\"-moz-transform\",i.transitionType=\"MozTransition\",void 0===e.perspectiveProperty&&void 0===e.MozPerspective&&(i.animType=!1)),void 0!==e.webkitTransform&&(i.animType=\"webkitTransform\",i.transformType=\"-webkit-transform\",i.transitionType=\"webkitTransition\",void 0===e.perspectiveProperty&&void 0===e.webkitPerspective&&(i.animType=!1)),void 0!==e.msTransform&&(i.animType=\"msTransform\",i.transformType=\"-ms-transform\",i.transitionType=\"msTransition\",void 0===e.msTransform&&(i.animType=!1)),void 0!==e.transform&&i.animType!==!1&&(i.animType=\"transform\",i.transformType=\"transform\",i.transitionType=\"transition\"),i.transformsEnabled=i.options.useTransform&&null!==i.animType&&i.animType!==!1},e.prototype.setSlideClasses=function(i){var e,t,o,s,n=this;if(t=n.$slider.find(\".slick-slide\").removeClass(\"slick-active slick-center slick-current\").attr(\"aria-hidden\",\"true\"),n.$slides.eq(i).addClass(\"slick-current\"),n.options.centerMode===!0){var r=n.options.slidesToShow%2===0?1:0;e=Math.floor(n.options.slidesToShow/2),n.options.infinite===!0&&(i>=e&&i<=n.slideCount-1-e?n.$slides.slice(i-e+r,i+e+1).addClass(\"slick-active\").attr(\"aria-hidden\",\"false\"):(o=n.options.slidesToShow+i,t.slice(o-e+1+r,o+e+2).addClass(\"slick-active\").attr(\"aria-hidden\",\"false\")),0===i?t.eq(t.length-1-n.options.slidesToShow).addClass(\"slick-center\"):i===n.slideCount-1&&t.eq(n.options.slidesToShow).addClass(\"slick-center\")),n.$slides.eq(i).addClass(\"slick-center\")}else i>=0&&i<=n.slideCount-n.options.slidesToShow?n.$slides.slice(i,i+n.options.slidesToShow).addClass(\"slick-active\").attr(\"aria-hidden\",\"false\"):t.length<=n.options.slidesToShow?t.addClass(\"slick-active\").attr(\"aria-hidden\",\"false\"):(s=n.slideCount%n.options.slidesToShow,o=n.options.infinite===!0?n.options.slidesToShow+i:i,n.options.slidesToShow==n.options.slidesToScroll&&n.slideCount-i<n.options.slidesToShow?t.slice(o-(n.options.slidesToShow-s),o+s).addClass(\"slick-active\").attr(\"aria-hidden\",\"false\"):t.slice(o,o+n.options.slidesToShow).addClass(\"slick-active\").attr(\"aria-hidden\",\"false\"));\"ondemand\"!==n.options.lazyLoad&&\"anticipated\"!==n.options.lazyLoad||n.lazyLoad()},e.prototype.setupInfinite=function(){var e,t,o,s=this;if(s.options.fade===!0&&(s.options.centerMode=!1),s.options.infinite===!0&&s.options.fade===!1&&(t=null,s.slideCount>s.options.slidesToShow)){for(o=s.options.centerMode===!0?s.options.slidesToShow+1:s.options.slidesToShow,e=s.slideCount;e>s.slideCount-o;e-=1)t=e-1,i(s.$slides[t]).clone(!0).attr(\"id\",\"\").attr(\"data-slick-index\",t-s.slideCount).prependTo(s.$slideTrack).addClass(\"slick-cloned\");for(e=0;e<o+s.slideCount;e+=1)t=e,i(s.$slides[t]).clone(!0).attr(\"id\",\"\").attr(\"data-slick-index\",t+s.slideCount).appendTo(s.$slideTrack).addClass(\"slick-cloned\");s.$slideTrack.find(\".slick-cloned\").find(\"[id]\").each(function(){i(this).attr(\"id\",\"\")})}},e.prototype.interrupt=function(i){var e=this;i||e.autoPlay(),e.interrupted=i},e.prototype.selectHandler=function(e){var t=this,o=i(e.target).is(\".slick-slide\")?i(e.target):i(e.target).parents(\".slick-slide\"),s=parseInt(o.attr(\"data-slick-index\"));return s||(s=0),t.slideCount<=t.options.slidesToShow?void t.slideHandler(s,!1,!0):void t.slideHandler(s)},e.prototype.slideHandler=function(i,e,t){var o,s,n,r,l,d=null,a=this;if(e=e||!1,!(a.animating===!0&&a.options.waitForAnimate===!0||a.options.fade===!0&&a.currentSlide===i))return e===!1&&a.asNavFor(i),o=i,d=a.getLeft(o),r=a.getLeft(a.currentSlide),a.currentLeft=null===a.swipeLeft?r:a.swipeLeft,a.options.infinite===!1&&a.options.centerMode===!1&&(i<0||i>a.getDotCount()*a.options.slidesToScroll)?void(a.options.fade===!1&&(o=a.currentSlide,t!==!0&&a.slideCount>a.options.slidesToShow?a.animateSlide(r,function(){a.postSlide(o)}):a.postSlide(o))):a.options.infinite===!1&&a.options.centerMode===!0&&(i<0||i>a.slideCount-a.options.slidesToScroll)?void(a.options.fade===!1&&(o=a.currentSlide,t!==!0&&a.slideCount>a.options.slidesToShow?a.animateSlide(r,function(){a.postSlide(o)}):a.postSlide(o))):(a.options.autoplay&&clearInterval(a.autoPlayTimer),s=o<0?a.slideCount%a.options.slidesToScroll!==0?a.slideCount-a.slideCount%a.options.slidesToScroll:a.slideCount+o:o>=a.slideCount?a.slideCount%a.options.slidesToScroll!==0?0:o-a.slideCount:o,a.animating=!0,a.$slider.trigger(\"beforeChange\",[a,a.currentSlide,s]),n=a.currentSlide,a.currentSlide=s,a.setSlideClasses(a.currentSlide),a.options.asNavFor&&(l=a.getNavTarget(),l=l.slick(\"getSlick\"),l.slideCount<=l.options.slidesToShow&&l.setSlideClasses(a.currentSlide)),a.updateDots(),a.updateArrows(),a.options.fade===!0?(t!==!0?(a.fadeSlideOut(n),a.fadeSlide(s,function(){a.postSlide(s)})):a.postSlide(s),void a.animateHeight()):void(t!==!0&&a.slideCount>a.options.slidesToShow?a.animateSlide(d,function(){a.postSlide(s)}):a.postSlide(s)))},e.prototype.startLoad=function(){var i=this;i.options.arrows===!0&&i.slideCount>i.options.slidesToShow&&(i.$prevArrow.hide(),i.$nextArrow.hide()),i.options.dots===!0&&i.slideCount>i.options.slidesToShow&&i.$dots.hide(),i.$slider.addClass(\"slick-loading\")},e.prototype.swipeDirection=function(){var i,e,t,o,s=this;return i=s.touchObject.startX-s.touchObject.curX,e=s.touchObject.startY-s.touchObject.curY,t=Math.atan2(e,i),o=Math.round(180*t/Math.PI),o<0&&(o=360-Math.abs(o)),o<=45&&o>=0?s.options.rtl===!1?\"left\":\"right\":o<=360&&o>=315?s.options.rtl===!1?\"left\":\"right\":o>=135&&o<=225?s.options.rtl===!1?\"right\":\"left\":s.options.verticalSwiping===!0?o>=35&&o<=135?\"down\":\"up\":\"vertical\"},e.prototype.swipeEnd=function(i){var e,t,o=this;if(o.dragging=!1,o.swiping=!1,o.scrolling)return o.scrolling=!1,!1;if(o.interrupted=!1,o.shouldClick=!(o.touchObject.swipeLength>10),void 0===o.touchObject.curX)return!1;if(o.touchObject.edgeHit===!0&&o.$slider.trigger(\"edge\",[o,o.swipeDirection()]),o.touchObject.swipeLength>=o.touchObject.minSwipe){switch(t=o.swipeDirection()){case\"left\":case\"down\":e=o.options.swipeToSlide?o.checkNavigable(o.currentSlide+o.getSlideCount()):o.currentSlide+o.getSlideCount(),o.currentDirection=0;break;case\"right\":case\"up\":e=o.options.swipeToSlide?o.checkNavigable(o.currentSlide-o.getSlideCount()):o.currentSlide-o.getSlideCount(),o.currentDirection=1}\"vertical\"!=t&&(o.slideHandler(e),o.touchObject={},o.$slider.trigger(\"swipe\",[o,t]))}else o.touchObject.startX!==o.touchObject.curX&&(o.slideHandler(o.currentSlide),o.touchObject={})},e.prototype.swipeHandler=function(i){var e=this;if(!(e.options.swipe===!1||\"ontouchend\"in document&&e.options.swipe===!1||e.options.draggable===!1&&i.type.indexOf(\"mouse\")!==-1))switch(e.touchObject.fingerCount=i.originalEvent&&void 0!==i.originalEvent.touches?i.originalEvent.touches.length:1,e.touchObject.minSwipe=e.listWidth/e.options.touchThreshold,e.options.verticalSwiping===!0&&(e.touchObject.minSwipe=e.listHeight/e.options.touchThreshold),i.data.action){case\"start\":e.swipeStart(i);break;case\"move\":e.swipeMove(i);break;case\"end\":e.swipeEnd(i)}},e.prototype.swipeMove=function(i){var e,t,o,s,n,r,l=this;return n=void 0!==i.originalEvent?i.originalEvent.touches:null,!(!l.dragging||l.scrolling||n&&1!==n.length)&&(e=l.getLeft(l.currentSlide),l.touchObject.curX=void 0!==n?n[0].pageX:i.clientX,l.touchObject.curY=void 0!==n?n[0].pageY:i.clientY,l.touchObject.swipeLength=Math.round(Math.sqrt(Math.pow(l.touchObject.curX-l.touchObject.startX,2))),r=Math.round(Math.sqrt(Math.pow(l.touchObject.curY-l.touchObject.startY,2))),!l.options.verticalSwiping&&!l.swiping&&r>4?(l.scrolling=!0,!1):(l.options.verticalSwiping===!0&&(l.touchObject.swipeLength=r),t=l.swipeDirection(),void 0!==i.originalEvent&&l.touchObject.swipeLength>4&&(l.swiping=!0,i.preventDefault()),s=(l.options.rtl===!1?1:-1)*(l.touchObject.curX>l.touchObject.startX?1:-1),l.options.verticalSwiping===!0&&(s=l.touchObject.curY>l.touchObject.startY?1:-1),o=l.touchObject.swipeLength,l.touchObject.edgeHit=!1,l.options.infinite===!1&&(0===l.currentSlide&&\"right\"===t||l.currentSlide>=l.getDotCount()&&\"left\"===t)&&(o=l.touchObject.swipeLength*l.options.edgeFriction,l.touchObject.edgeHit=!0),l.options.vertical===!1?l.swipeLeft=e+o*s:l.swipeLeft=e+o*(l.$list.height()/l.listWidth)*s,l.options.verticalSwiping===!0&&(l.swipeLeft=e+o*s),l.options.fade!==!0&&l.options.touchMove!==!1&&(l.animating===!0?(l.swipeLeft=null,!1):void l.setCSS(l.swipeLeft))))},e.prototype.swipeStart=function(i){var e,t=this;return t.interrupted=!0,1!==t.touchObject.fingerCount||t.slideCount<=t.options.slidesToShow?(t.touchObject={},!1):(void 0!==i.originalEvent&&void 0!==i.originalEvent.touches&&(e=i.originalEvent.touches[0]),t.touchObject.startX=t.touchObject.curX=void 0!==e?e.pageX:i.clientX,t.touchObject.startY=t.touchObject.curY=void 0!==e?e.pageY:i.clientY,void(t.dragging=!0))},e.prototype.unfilterSlides=e.prototype.slickUnfilter=function(){var i=this;null!==i.$slidesCache&&(i.unload(),i.$slideTrack.children(this.options.slide).detach(),i.$slidesCache.appendTo(i.$slideTrack),i.reinit())},e.prototype.unload=function(){var e=this;i(\".slick-cloned\",e.$slider).remove(),e.$dots&&e.$dots.remove(),e.$prevArrow&&e.htmlExpr.test(e.options.prevArrow)&&e.$prevArrow.remove(),e.$nextArrow&&e.htmlExpr.test(e.options.nextArrow)&&e.$nextArrow.remove(),e.$slides.removeClass(\"slick-slide slick-active slick-visible slick-current\").attr(\"aria-hidden\",\"true\").css(\"width\",\"\")},e.prototype.unslick=function(i){var e=this;e.$slider.trigger(\"unslick\",[e,i]),e.destroy()},e.prototype.updateArrows=function(){var i,e=this;i=Math.floor(e.options.slidesToShow/2),e.options.arrows===!0&&e.slideCount>e.options.slidesToShow&&!e.options.infinite&&(e.$prevArrow.removeClass(\"slick-disabled\").attr(\"aria-disabled\",\"false\"),e.$nextArrow.removeClass(\"slick-disabled\").attr(\"aria-disabled\",\"false\"),0===e.currentSlide?(e.$prevArrow.addClass(\"slick-disabled\").attr(\"aria-disabled\",\"true\"),e.$nextArrow.removeClass(\"slick-disabled\").attr(\"aria-disabled\",\"false\")):e.currentSlide>=e.slideCount-e.options.slidesToShow&&e.options.centerMode===!1?(e.$nextArrow.addClass(\"slick-disabled\").attr(\"aria-disabled\",\"true\"),e.$prevArrow.removeClass(\"slick-disabled\").attr(\"aria-disabled\",\"false\")):e.currentSlide>=e.slideCount-1&&e.options.centerMode===!0&&(e.$nextArrow.addClass(\"slick-disabled\").attr(\"aria-disabled\",\"true\"),e.$prevArrow.removeClass(\"slick-disabled\").attr(\"aria-disabled\",\"false\")))},e.prototype.updateDots=function(){var i=this;null!==i.$dots&&(i.$dots.find(\"li\").removeClass(\"slick-active\").end(),i.$dots.find(\"li\").eq(Math.floor(i.currentSlide/i.options.slidesToScroll)).addClass(\"slick-active\"))},e.prototype.visibility=function(){var i=this;i.options.autoplay&&(document[i.hidden]?i.interrupted=!0:i.interrupted=!1)},i.fn.slick=function(){var i,t,o=this,s=arguments[0],n=Array.prototype.slice.call(arguments,1),r=o.length;for(i=0;i<r;i++)if(\"object\"==typeof s||\"undefined\"==typeof s?o[i].slick=new e(o[i],s):t=o[i].slick[s].apply(o[i].slick,n),\"undefined\"!=typeof t)return t;return o}});\n","Magento_PageBuilder/js/resource/csso/csso.min.js":"!function(e,t){\"object\"==typeof exports&&\"undefined\"!=typeof module?t(exports):\"function\"==typeof define&&define.amd?define([\"exports\"],t):t((e=e||self).csso={})}(this,(function(e){\"use strict\";function t(e){return{prev:null,next:null,data:e}}function n(e,t,n){var r;return null!==a?(r=a,a=a.cursor,r.prev=t,r.next=n,r.cursor=e.cursor):r={prev:t,next:n,cursor:e.cursor},e.cursor=r,r}function r(e){var t=e.cursor;e.cursor=t.cursor,t.prev=null,t.next=null,t.cursor=a,a=t}var a=null,i=function(){this.cursor=null,this.head=null,this.tail=null};i.createItem=t,i.prototype.createItem=t,i.prototype.updateCursors=function(e,t,n,r){for(var a=this.cursor;null!==a;)a.prev===e&&(a.prev=t),a.next===n&&(a.next=r),a=a.cursor},i.prototype.getSize=function(){for(var e=0,t=this.head;t;)e++,t=t.next;return e},i.prototype.fromArray=function(e){var n=null;this.head=null;for(var r=0;r<e.length;r++){var a=t(e[r]);null!==n?n.next=a:this.head=a,a.prev=n,n=a}return this.tail=n,this},i.prototype.toArray=function(){for(var e=this.head,t=[];e;)t.push(e.data),e=e.next;return t},i.prototype.toJSON=i.prototype.toArray,i.prototype.isEmpty=function(){return null===this.head},i.prototype.first=function(){return this.head&&this.head.data},i.prototype.last=function(){return this.tail&&this.tail.data},i.prototype.each=function(e,t){var a;void 0===t&&(t=this);for(var i=n(this,null,this.head);null!==i.next;)a=i.next,i.next=a.next,e.call(t,a.data,a,this);r(this)},i.prototype.forEach=i.prototype.each,i.prototype.eachRight=function(e,t){var a;void 0===t&&(t=this);for(var i=n(this,this.tail,null);null!==i.prev;)a=i.prev,i.prev=a.prev,e.call(t,a.data,a,this);r(this)},i.prototype.forEachRight=i.prototype.eachRight,i.prototype.nextUntil=function(e,t,a){if(null!==e){var i;void 0===a&&(a=this);for(var o=n(this,null,e);null!==o.next&&(i=o.next,o.next=i.next,!t.call(a,i.data,i,this)););r(this)}},i.prototype.prevUntil=function(e,t,a){if(null!==e){var i;void 0===a&&(a=this);for(var o=n(this,e,null);null!==o.prev&&(i=o.prev,o.prev=i.prev,!t.call(a,i.data,i,this)););r(this)}},i.prototype.some=function(e,t){var n=this.head;for(void 0===t&&(t=this);null!==n;){if(e.call(t,n.data,n,this))return!0;n=n.next}return!1},i.prototype.map=function(e,t){var n=new i,r=this.head;for(void 0===t&&(t=this);null!==r;)n.appendData(e.call(t,r.data,r,this)),r=r.next;return n},i.prototype.filter=function(e,t){var n=new i,r=this.head;for(void 0===t&&(t=this);null!==r;)e.call(t,r.data,r,this)&&n.appendData(r.data),r=r.next;return n},i.prototype.clear=function(){this.head=null,this.tail=null},i.prototype.copy=function(){for(var e=new i,n=this.head;null!==n;)e.insert(t(n.data)),n=n.next;return e},i.prototype.prepend=function(e){return this.updateCursors(null,e,this.head,e),null!==this.head?(this.head.prev=e,e.next=this.head):this.tail=e,this.head=e,this},i.prototype.prependData=function(e){return this.prepend(t(e))},i.prototype.append=function(e){return this.insert(e)},i.prototype.appendData=function(e){return this.insert(t(e))},i.prototype.insert=function(e,t){if(null!=t)if(this.updateCursors(t.prev,e,t,e),null===t.prev){if(this.head!==t)throw new Error(\"before doesn't belong to list\");this.head=e,t.prev=e,e.next=t,this.updateCursors(null,e)}else t.prev.next=e,e.prev=t.prev,t.prev=e,e.next=t;else this.updateCursors(this.tail,e,null,e),null!==this.tail?(this.tail.next=e,e.prev=this.tail):this.head=e,this.tail=e;return this},i.prototype.insertData=function(e,n){return this.insert(t(e),n)},i.prototype.remove=function(e){if(this.updateCursors(e,e.prev,e,e.next),null!==e.prev)e.prev.next=e.next;else{if(this.head!==e)throw new Error(\"item doesn't belong to list\");this.head=e.next}if(null!==e.next)e.next.prev=e.prev;else{if(this.tail!==e)throw new Error(\"item doesn't belong to list\");this.tail=e.prev}return e.prev=null,e.next=null,e},i.prototype.push=function(e){this.insert(t(e))},i.prototype.pop=function(){if(null!==this.tail)return this.remove(this.tail)},i.prototype.unshift=function(e){this.prepend(t(e))},i.prototype.shift=function(){if(null!==this.head)return this.remove(this.head)},i.prototype.prependList=function(e){return this.insertList(e,this.head)},i.prototype.appendList=function(e){return this.insertList(e)},i.prototype.insertList=function(e,t){return null===e.head||(null!=t?(this.updateCursors(t.prev,e.tail,t,e.head),null!==t.prev?(t.prev.next=e.head,e.head.prev=t.prev):this.head=e.head,t.prev=e.tail,e.tail.next=t):(this.updateCursors(this.tail,e.tail,null,e.head),null!==this.tail?(this.tail.next=e.head,e.head.prev=this.tail):this.head=e.head,this.tail=e.tail),e.head=null,e.tail=null),this},i.prototype.replace=function(e,t){\"head\"in t?this.insertList(t,e):this.insert(t,e),this.remove(e)};var o=i,s=function(e,t){var n=Object.create(SyntaxError.prototype),r=new Error;return n.name=e,n.message=t,Object.defineProperty(n,\"stack\",{get:function(){return(r.stack||\"\").replace(/^(.+\\n){1,3}/,e+\": \"+t+\"\\n\")}}),n};function l(e,t){function n(e,t){return r.slice(e,t).map((function(t,n){for(var r=String(e+n+1);r.length<l;)r=\" \"+r;return r+\" |\"+t})).join(\"\\n\")}var r=e.source.split(/\\r\\n?|\\n|\\f/),a=e.line,i=e.column,o=Math.max(1,a-t)-1,s=Math.min(a+t,r.length+1),l=Math.max(4,String(s).length)+1,c=0;(i+=(\"    \".length-1)*(r[a-1].substr(0,i-1).match(/\\t/g)||[]).length)>100&&(c=i-60+3,i=58);for(var u=o;u<=s;u++)u>=0&&u<r.length&&(r[u]=r[u].replace(/\\t/g,\"    \"),r[u]=(c>0&&r[u].length>c?\"\u2026\":\"\")+r[u].substr(c,98)+(r[u].length>c+100-1?\"\u2026\":\"\"));return[n(o,a),new Array(i+l+2).join(\"-\")+\"^\",n(a,s)].filter(Boolean).join(\"\\n\")}var c=function(e,t,n,r,a){var i=s(\"SyntaxError\",e);return i.source=t,i.offset=n,i.line=r,i.column=a,i.sourceFragment=function(e){return l(i,isNaN(e)?0:e)},Object.defineProperty(i,\"formattedMessage\",{get:function(){return\"Parse error: \"+i.message+\"\\n\"+l(i,2)}}),i.parseError={offset:n,line:r,column:a},i},u={EOF:0,Ident:1,Function:2,AtKeyword:3,Hash:4,String:5,BadString:6,Url:7,BadUrl:8,Delim:9,Number:10,Percentage:11,Dimension:12,WhiteSpace:13,CDO:14,CDC:15,Colon:16,Semicolon:17,Comma:18,LeftSquareBracket:19,RightSquareBracket:20,LeftParenthesis:21,RightParenthesis:22,LeftCurlyBracket:23,RightCurlyBracket:24,Comment:25},h=Object.keys(u).reduce((function(e,t){return e[u[t]]=t,e}),{}),d={TYPE:u,NAME:h};function p(e){return e>=48&&e<=57}function f(e){return e>=65&&e<=90}function m(e){return e>=97&&e<=122}function g(e){return f(e)||m(e)}function b(e){return e>=128}function y(e){return g(e)||b(e)||95===e}function k(e){return e>=0&&e<=8||11===e||e>=14&&e<=31||127===e}function v(e){return 10===e||13===e||12===e}function w(e){return v(e)||32===e||9===e}function x(e,t){return 92===e&&(!v(t)&&0!==t)}var S=new Array(128);A.Eof=128,A.WhiteSpace=130,A.Digit=131,A.NameStart=132,A.NonPrintable=133;for(var C=0;C<S.length;C++)switch(!0){case w(C):S[C]=A.WhiteSpace;break;case p(C):S[C]=A.Digit;break;case y(C):S[C]=A.NameStart;break;case k(C):S[C]=A.NonPrintable;break;default:S[C]=C||A.Eof}function A(e){return e<128?S[e]:A.NameStart}var z={isDigit:p,isHexDigit:function(e){return p(e)||e>=65&&e<=70||e>=97&&e<=102},isUppercaseLetter:f,isLowercaseLetter:m,isLetter:g,isNonAscii:b,isNameStart:y,isName:function(e){return y(e)||p(e)||45===e},isNonPrintable:k,isNewline:v,isWhiteSpace:w,isValidEscape:x,isIdentifierStart:function(e,t,n){return 45===e?y(t)||45===t||x(t,n):!!y(e)||92===e&&x(e,t)},isNumberStart:function(e,t,n){return 43===e||45===e?p(t)?2:46===t&&p(n)?3:0:46===e?p(t)?2:0:p(e)?1:0},isBOM:function(e){return 65279===e||65534===e?1:0},charCodeCategory:A},P=z.isDigit,L=z.isHexDigit,T=z.isUppercaseLetter,E=z.isName,O=z.isWhiteSpace,D=z.isValidEscape;function R(e,t){return t<e.length?e.charCodeAt(t):0}function I(e,t,n){return 13===n&&10===R(e,t+1)?2:1}function M(e,t,n){var r=e.charCodeAt(t);return T(r)&&(r|=32),r===n}function N(e,t){for(;t<e.length&&P(e.charCodeAt(t));t++);return t}function B(e,t){if(L(R(e,(t+=2)-1))){for(var n=Math.min(e.length,t+5);t<n&&L(R(e,t));t++);var r=R(e,t);O(r)&&(t+=I(e,t,r))}return t}var j={consumeEscaped:B,consumeName:function(e,t){for(;t<e.length;t++){var n=e.charCodeAt(t);if(!E(n)){if(!D(n,R(e,t+1)))break;t=B(e,t)-1}}return t},consumeNumber:function(e,t){var n=e.charCodeAt(t);if(43!==n&&45!==n||(n=e.charCodeAt(t+=1)),P(n)&&(t=N(e,t+1),n=e.charCodeAt(t)),46===n&&P(e.charCodeAt(t+1))&&(n=e.charCodeAt(t+=2),t=N(e,t)),M(e,t,101)){var r=0;45!==(n=e.charCodeAt(t+1))&&43!==n||(r=1,n=e.charCodeAt(t+2)),P(n)&&(t=N(e,t+1+r+1))}return t},consumeBadUrlRemnants:function(e,t){for(;t<e.length;t++){var n=e.charCodeAt(t);if(41===n){t++;break}D(n,R(e,t+1))&&(t=B(e,t))}return t},cmpChar:M,cmpStr:function(e,t,n,r){if(n-t!==r.length)return!1;if(t<0||n>e.length)return!1;for(var a=t;a<n;a++){var i=e.charCodeAt(a),o=r.charCodeAt(a-t);if(T(i)&&(i|=32),i!==o)return!1}return!0},getNewlineLength:I,findWhiteSpaceStart:function(e,t){for(;t>=0&&O(e.charCodeAt(t));t--);return t+1},findWhiteSpaceEnd:function(e,t){for(;t<e.length&&O(e.charCodeAt(t));t++);return t}},_=d.TYPE,q=d.NAME,W=j.cmpStr,F=_.EOF,U=_.WhiteSpace,Y=_.Comment,H=function(){this.offsetAndType=null,this.balance=null,this.reset()};H.prototype={reset:function(){this.eof=!1,this.tokenIndex=-1,this.tokenType=0,this.tokenStart=this.firstCharOffset,this.tokenEnd=this.firstCharOffset},lookupType:function(e){return(e+=this.tokenIndex)<this.tokenCount?this.offsetAndType[e]>>24:F},lookupOffset:function(e){return(e+=this.tokenIndex)<this.tokenCount?16777215&this.offsetAndType[e-1]:this.source.length},lookupValue:function(e,t){return(e+=this.tokenIndex)<this.tokenCount&&W(this.source,16777215&this.offsetAndType[e-1],16777215&this.offsetAndType[e],t)},getTokenStart:function(e){return e===this.tokenIndex?this.tokenStart:e>0?e<this.tokenCount?16777215&this.offsetAndType[e-1]:16777215&this.offsetAndType[this.tokenCount]:this.firstCharOffset},getRawLength:function(e,t){var n,r=e,a=16777215&this.offsetAndType[Math.max(r-1,0)];e:for(;r<this.tokenCount&&!((n=this.balance[r])<e);r++)switch(t(this.offsetAndType[r]>>24,this.source,a)){case 1:break e;case 2:r++;break e;default:a=16777215&this.offsetAndType[r],this.balance[n]===r&&(r=n)}return r-this.tokenIndex},isBalanceEdge:function(e){return this.balance[this.tokenIndex]<e},isDelim:function(e,t){return t?this.lookupType(t)===_.Delim&&this.source.charCodeAt(this.lookupOffset(t))===e:this.tokenType===_.Delim&&this.source.charCodeAt(this.tokenStart)===e},getTokenValue:function(){return this.source.substring(this.tokenStart,this.tokenEnd)},getTokenLength:function(){return this.tokenEnd-this.tokenStart},substrToCursor:function(e){return this.source.substring(e,this.tokenStart)},skipWS:function(){for(var e=this.tokenIndex,t=0;e<this.tokenCount&&this.offsetAndType[e]>>24===U;e++,t++);t>0&&this.skip(t)},skipSC:function(){for(;this.tokenType===U||this.tokenType===Y;)this.next()},skip:function(e){var t=this.tokenIndex+e;t<this.tokenCount?(this.tokenIndex=t,this.tokenStart=16777215&this.offsetAndType[t-1],t=this.offsetAndType[t],this.tokenType=t>>24,this.tokenEnd=16777215&t):(this.tokenIndex=this.tokenCount,this.next())},next:function(){var e=this.tokenIndex+1;e<this.tokenCount?(this.tokenIndex=e,this.tokenStart=this.tokenEnd,e=this.offsetAndType[e],this.tokenType=e>>24,this.tokenEnd=16777215&e):(this.tokenIndex=this.tokenCount,this.eof=!0,this.tokenType=F,this.tokenStart=this.tokenEnd=this.source.length)},dump:function(){var e=this.firstCharOffset;return Array.prototype.slice.call(this.offsetAndType,0,this.tokenCount).map((function(t,n){var r=e,a=16777215&t;return e=a,{idx:n,type:q[t>>24],chunk:this.source.substring(r,a),balance:this.balance[n]}}),this)}};var V=H;function K(e){return e}function G(e,t,n,r){var a,i;switch(e.type){case\"Group\":a=function(e,t,n,r){var a=\" \"===e.combinator||r?e.combinator:\" \"+e.combinator+\" \",i=e.terms.map((function(e){return G(e,t,n,r)})).join(a);return(e.explicit||n)&&(i=(r||\",\"===i[0]?\"[\":\"[ \")+i+(r?\"]\":\" ]\")),i}(e,t,n,r)+(e.disallowEmpty?\"!\":\"\");break;case\"Multiplier\":return G(e.term,t,n,r)+t(0===(i=e).min&&0===i.max?\"*\":0===i.min&&1===i.max?\"?\":1===i.min&&0===i.max?i.comma?\"#\":\"+\":1===i.min&&1===i.max?\"\":(i.comma?\"#\":\"\")+(i.min===i.max?\"{\"+i.min+\"}\":\"{\"+i.min+\",\"+(0!==i.max?i.max:\"\")+\"}\"),e);case\"Type\":a=\"<\"+e.name+(e.opts?t(function(e){switch(e.type){case\"Range\":return\" [\"+(null===e.min?\"-\u221e\":e.min)+\",\"+(null===e.max?\"\u221e\":e.max)+\"]\";default:throw new Error(\"Unknown node type `\"+e.type+\"`\")}}(e.opts),e.opts):\"\")+\">\";break;case\"Property\":a=\"<'\"+e.name+\"'>\";break;case\"Keyword\":a=e.name;break;case\"AtKeyword\":a=\"@\"+e.name;break;case\"Function\":a=e.name+\"(\";break;case\"String\":case\"Token\":a=e.value;break;case\"Comma\":a=\",\";break;default:throw new Error(\"Unknown node type `\"+e.type+\"`\")}return t(a,e)}var $=function(e,t){var n=K,r=!1,a=!1;return\"function\"==typeof t?n=t:t&&(r=Boolean(t.forceBraces),a=Boolean(t.compact),\"function\"==typeof t.decorate&&(n=t.decorate)),G(e,n,r,a)};function Q(e,t){var n=e&&e.loc&&e.loc[t];return n?{offset:n.offset,line:n.line,column:n.column}:null}var X=function(e,t){var n=s(\"SyntaxReferenceError\",e+(t?\" `\"+t+\"`\":\"\"));return n.reference=t,n},Z=function(e,t,n,r){var a=s(\"SyntaxMatchError\",e),i=function(e){for(var t=e.tokens,n=e.longestMatch,r=n<t.length?t[n].node:null,a=-1,i=0,o=\"\",s=0;s<t.length;s++)s===n&&(a=o.length),null!==r&&t[s].node===r&&(s<=n?i++:i=0),o+=t[s].value;return{node:r,css:o,mismatchOffset:-1===a?o.length:a,last:null===r||i>1}}(r),o=i.mismatchOffset||0,l=i.node||n,c=Q(l,\"end\"),u=i.last?c:Q(l,\"start\"),h=i.css;return a.rawMessage=e,a.syntax=t?$(t):\"<generic>\",a.css=h,a.mismatchOffset=o,a.loc={source:l&&l.loc&&l.loc.source||\"<unknown>\",start:u,end:c},a.line=u?u.line:void 0,a.column=u?u.column:void 0,a.offset=u?u.offset:void 0,a.message=e+\"\\n  syntax: \"+a.syntax+\"\\n   value: \"+(a.css||\"<empty string>\")+\"\\n  --------\"+new Array(a.mismatchOffset+1).join(\"-\")+\"^\",a},J=Object.prototype.hasOwnProperty,ee=Object.create(null),te=Object.create(null);function ne(e,t){return t=t||0,e.length-t>=2&&45===e.charCodeAt(t)&&45===e.charCodeAt(t+1)}function re(e,t){if(t=t||0,e.length-t>=3&&45===e.charCodeAt(t)&&45!==e.charCodeAt(t+1)){var n=e.indexOf(\"-\",t+2);if(-1!==n)return e.substring(t,n+1)}return\"\"}var ae={keyword:function(e){if(J.call(ee,e))return ee[e];var t=e.toLowerCase();if(J.call(ee,t))return ee[e]=ee[t];var n=ne(t,0),r=n?\"\":re(t,0);return ee[e]=Object.freeze({basename:t.substr(r.length),name:t,vendor:r,prefix:r,custom:n})},property:function(e){if(J.call(te,e))return te[e];var t=e,n=e[0];\"/\"===n?n=\"/\"===e[1]?\"//\":\"/\":\"_\"!==n&&\"*\"!==n&&\"$\"!==n&&\"#\"!==n&&\"+\"!==n&&\"&\"!==n&&(n=\"\");var r=ne(t,n.length);if(!r&&(t=t.toLowerCase(),J.call(te,t)))return te[e]=te[t];var a=r?\"\":re(t,n.length),i=t.substr(0,n.length+a.length);return te[e]=Object.freeze({basename:t.substr(i.length),name:t.substr(n.length),hack:n,vendor:a,prefix:i,custom:r})},isCustomProperty:ne,vendorPrefix:re},ie=\"undefined\"!=typeof Uint32Array?Uint32Array:Array,oe=function(e,t){return null===e||e.length<t?new ie(Math.max(t+1024,16384)):e},se=d.TYPE,le=z.isNewline,ce=z.isName,ue=z.isValidEscape,he=z.isNumberStart,de=z.isIdentifierStart,pe=z.charCodeCategory,fe=z.isBOM,me=j.cmpStr,ge=j.getNewlineLength,be=j.findWhiteSpaceEnd,ye=j.consumeEscaped,ke=j.consumeName,ve=j.consumeNumber,we=j.consumeBadUrlRemnants;function xe(e,t){function n(t){return t<o?e.charCodeAt(t):0}function r(){return h=ve(e,h),de(n(h),n(h+1),n(h+2))?(g=se.Dimension,void(h=ke(e,h))):37===n(h)?(g=se.Percentage,void h++):void(g=se.Number)}function a(){const t=h;return h=ke(e,h),me(e,t,h,\"url\")&&40===n(h)?34===n(h=be(e,h+1))||39===n(h)?(g=se.Function,void(h=t+4)):void function(){for(g=se.Url,h=be(e,h);h<e.length;h++){var t=e.charCodeAt(h);switch(pe(t)){case 41:return void h++;case pe.Eof:return;case pe.WhiteSpace:return 41===n(h=be(e,h))||h>=e.length?void(h<e.length&&h++):(h=we(e,h),void(g=se.BadUrl));case 34:case 39:case 40:case pe.NonPrintable:return h=we(e,h),void(g=se.BadUrl);case 92:if(ue(t,n(h+1))){h=ye(e,h)-1;break}return h=we(e,h),void(g=se.BadUrl)}}}():40===n(h)?(g=se.Function,void h++):void(g=se.Ident)}function i(t){for(t||(t=n(h++)),g=se.String;h<e.length;h++){var r=e.charCodeAt(h);switch(pe(r)){case t:return void h++;case pe.Eof:return;case pe.WhiteSpace:if(le(r))return h+=ge(e,h,r),void(g=se.BadString);break;case 92:if(h===e.length-1)break;var a=n(h+1);le(a)?h+=ge(e,h+1,a):ue(r,a)&&(h=ye(e,h)-1)}}}t||(t=new V);for(var o=(e=String(e||\"\")).length,s=oe(t.offsetAndType,o+1),l=oe(t.balance,o+1),c=0,u=fe(n(0)),h=u,d=0,p=0,f=0;h<o;){var m=e.charCodeAt(h),g=0;switch(l[c]=o,pe(m)){case pe.WhiteSpace:g=se.WhiteSpace,h=be(e,h+1);break;case 34:i();break;case 35:ce(n(h+1))||ue(n(h+1),n(h+2))?(g=se.Hash,h=ke(e,h+1)):(g=se.Delim,h++);break;case 39:i();break;case 40:g=se.LeftParenthesis,h++;break;case 41:g=se.RightParenthesis,h++;break;case 43:he(m,n(h+1),n(h+2))?r():(g=se.Delim,h++);break;case 44:g=se.Comma,h++;break;case 45:he(m,n(h+1),n(h+2))?r():45===n(h+1)&&62===n(h+2)?(g=se.CDC,h+=3):de(m,n(h+1),n(h+2))?a():(g=se.Delim,h++);break;case 46:he(m,n(h+1),n(h+2))?r():(g=se.Delim,h++);break;case 47:42===n(h+1)?(g=se.Comment,1===(h=e.indexOf(\"*/\",h+2)+2)&&(h=e.length)):(g=se.Delim,h++);break;case 58:g=se.Colon,h++;break;case 59:g=se.Semicolon,h++;break;case 60:33===n(h+1)&&45===n(h+2)&&45===n(h+3)?(g=se.CDO,h+=4):(g=se.Delim,h++);break;case 64:de(n(h+1),n(h+2),n(h+3))?(g=se.AtKeyword,h=ke(e,h+1)):(g=se.Delim,h++);break;case 91:g=se.LeftSquareBracket,h++;break;case 92:ue(m,n(h+1))?a():(g=se.Delim,h++);break;case 93:g=se.RightSquareBracket,h++;break;case 123:g=se.LeftCurlyBracket,h++;break;case 125:g=se.RightCurlyBracket,h++;break;case pe.Digit:r();break;case pe.NameStart:a();break;case pe.Eof:break;default:g=se.Delim,h++}switch(g){case d:for(d=(p=l[f=16777215&p])>>24,l[c]=f,l[f++]=c;f<c;f++)l[f]===o&&(l[f]=c);break;case se.LeftParenthesis:case se.Function:l[c]=p,p=(d=se.RightParenthesis)<<24|c;break;case se.LeftSquareBracket:l[c]=p,p=(d=se.RightSquareBracket)<<24|c;break;case se.LeftCurlyBracket:l[c]=p,p=(d=se.RightCurlyBracket)<<24|c}s[c++]=g<<24|h}for(s[c]=se.EOF<<24|h,l[c]=o,l[o]=o;0!==p;)p=l[f=16777215&p],l[f]=o;return t.source=e,t.firstCharOffset=u,t.offsetAndType=s,t.tokenCount=c,t.balance=l,t.reset(),t.next(),t}Object.keys(d).forEach((function(e){xe[e]=d[e]})),Object.keys(z).forEach((function(e){xe[e]=z[e]})),Object.keys(j).forEach((function(e){xe[e]=j[e]}));var Se=xe,Ce=Se.isDigit,Ae=Se.cmpChar,ze=Se.TYPE,Pe=ze.Delim,Le=ze.WhiteSpace,Te=ze.Comment,Ee=ze.Ident,Oe=ze.Number,De=ze.Dimension;function Re(e,t){return null!==e&&e.type===Pe&&e.value.charCodeAt(0)===t}function Ie(e,t,n){for(;null!==e&&(e.type===Le||e.type===Te);)e=n(++t);return t}function Me(e,t,n,r){if(!e)return 0;var a=e.value.charCodeAt(t);if(43===a||45===a){if(n)return 0;t++}for(;t<e.value.length;t++)if(!Ce(e.value.charCodeAt(t)))return 0;return r+1}function Ne(e,t,n){var r=!1,a=Ie(e,t,n);if(null===(e=n(a)))return t;if(e.type!==Oe){if(!Re(e,43)&&!Re(e,45))return t;if(r=!0,a=Ie(n(++a),a,n),null===(e=n(a))&&e.type!==Oe)return 0}if(!r){var i=e.value.charCodeAt(0);if(43!==i&&45!==i)return 0}return Me(e,r?0:1,r,a)}var Be=Se.isHexDigit,je=Se.cmpChar,_e=Se.TYPE,qe=_e.Ident,We=_e.Delim,Fe=_e.Number,Ue=_e.Dimension;function Ye(e,t){return null!==e&&e.type===We&&e.value.charCodeAt(0)===t}function He(e,t){return e.value.charCodeAt(0)===t}function Ve(e,t,n){for(var r=t,a=0;r<e.value.length;r++){var i=e.value.charCodeAt(r);if(45===i&&n&&0!==a)return Ve(e,t+a+1,!1)>0?6:0;if(!Be(i))return 0;if(++a>6)return 0}return a}function Ke(e,t,n){if(!e)return 0;for(;Ye(n(t),63);){if(++e>6)return 0;t++}return t}var Ge=Se.isIdentifierStart,$e=Se.isHexDigit,Qe=Se.isDigit,Xe=Se.cmpStr,Ze=Se.consumeNumber,Je=Se.TYPE,et=[\"unset\",\"initial\",\"inherit\"],tt=[\"calc(\",\"-moz-calc(\",\"-webkit-calc(\"];function nt(e,t){return t<e.length?e.charCodeAt(t):0}function rt(e,t){return Xe(e,0,e.length,t)}function at(e,t){for(var n=0;n<t.length;n++)if(rt(e,t[n]))return!0;return!1}function it(e,t){return t===e.length-2&&(92===e.charCodeAt(t)&&Qe(e.charCodeAt(t+1)))}function ot(e,t,n){if(e&&\"Range\"===e.type){var r=Number(void 0!==n&&n!==t.length?t.substr(0,n):t);if(isNaN(r))return!0;if(null!==e.min&&r<e.min)return!0;if(null!==e.max&&r>e.max)return!0}return!1}function st(e,t){var n=e.index,r=0;do{if(r++,e.balance<=n)break}while(e=t(r));return r}function lt(e){return function(t,n,r){return null===t?0:t.type===Je.Function&&at(t.value,tt)?st(t,n):e(t,n,r)}}function ct(e){return function(t){return null===t||t.type!==e?0:1}}function ut(e){return function(t,n,r){if(null===t||t.type!==Je.Dimension)return 0;var a=Ze(t.value,0);if(null!==e){var i=t.value.indexOf(\"\\\\\",a),o=-1!==i&&it(t.value,i)?t.value.substring(a,i):t.value.substr(a);if(!1===e.hasOwnProperty(o.toLowerCase()))return 0}return ot(r,t.value,a)?0:1}}function ht(e){return\"function\"!=typeof e&&(e=function(){return 0}),function(t,n,r){return null!==t&&t.type===Je.Number&&0===Number(t.value)?1:e(t,n,r)}}var dt,pt={\"ident-token\":ct(Je.Ident),\"function-token\":ct(Je.Function),\"at-keyword-token\":ct(Je.AtKeyword),\"hash-token\":ct(Je.Hash),\"string-token\":ct(Je.String),\"bad-string-token\":ct(Je.BadString),\"url-token\":ct(Je.Url),\"bad-url-token\":ct(Je.BadUrl),\"delim-token\":ct(Je.Delim),\"number-token\":ct(Je.Number),\"percentage-token\":ct(Je.Percentage),\"dimension-token\":ct(Je.Dimension),\"whitespace-token\":ct(Je.WhiteSpace),\"CDO-token\":ct(Je.CDO),\"CDC-token\":ct(Je.CDC),\"colon-token\":ct(Je.Colon),\"semicolon-token\":ct(Je.Semicolon),\"comma-token\":ct(Je.Comma),\"[-token\":ct(Je.LeftSquareBracket),\"]-token\":ct(Je.RightSquareBracket),\"(-token\":ct(Je.LeftParenthesis),\")-token\":ct(Je.RightParenthesis),\"{-token\":ct(Je.LeftCurlyBracket),\"}-token\":ct(Je.RightCurlyBracket),string:ct(Je.String),ident:ct(Je.Ident),\"custom-ident\":function(e){if(null===e||e.type!==Je.Ident)return 0;var t=e.value.toLowerCase();return at(t,et)||rt(t,\"default\")?0:1},\"custom-property-name\":function(e){return null===e||e.type!==Je.Ident||45!==nt(e.value,0)||45!==nt(e.value,1)?0:1},\"hex-color\":function(e){if(null===e||e.type!==Je.Hash)return 0;var t=e.value.length;if(4!==t&&5!==t&&7!==t&&9!==t)return 0;for(var n=1;n<t;n++)if(!$e(e.value.charCodeAt(n)))return 0;return 1},\"id-selector\":function(e){return null===e||e.type!==Je.Hash?0:Ge(nt(e.value,1),nt(e.value,2),nt(e.value,3))?1:0},\"an-plus-b\":function(e,t){var n=0;if(!e)return 0;if(e.type===Oe)return Me(e,0,!1,n);if(e.type===Ee&&45===e.value.charCodeAt(0)){if(!Ae(e.value,1,110))return 0;switch(e.value.length){case 2:return Ne(t(++n),n,t);case 3:return 45!==e.value.charCodeAt(2)?0:(n=Ie(t(++n),n,t),Me(e=t(n),0,!0,n));default:return 45!==e.value.charCodeAt(2)?0:Me(e,3,!0,n)}}else if(e.type===Ee||Re(e,43)&&t(n+1).type===Ee){if(e.type!==Ee&&(e=t(++n)),null===e||!Ae(e.value,0,110))return 0;switch(e.value.length){case 1:return Ne(t(++n),n,t);case 2:return 45!==e.value.charCodeAt(1)?0:(n=Ie(t(++n),n,t),Me(e=t(n),0,!0,n));default:return 45!==e.value.charCodeAt(1)?0:Me(e,2,!0,n)}}else if(e.type===De){for(var r=e.value.charCodeAt(0),a=43===r||45===r?1:0,i=a;i<e.value.length&&Ce(e.value.charCodeAt(i));i++);return i===a?0:Ae(e.value,i,110)?i+1===e.value.length?Ne(t(++n),n,t):45!==e.value.charCodeAt(i+1)?0:i+2===e.value.length?(n=Ie(t(++n),n,t),Me(e=t(n),0,!0,n)):Me(e,i+2,!0,n):0}return 0},urange:function(e,t){var n=0;if(null===e||e.type!==qe||!je(e.value,0,117))return 0;if(null===(e=t(++n)))return 0;if(Ye(e,43))return null===(e=t(++n))?0:e.type===qe?Ke(Ve(e,0,!0),++n,t):Ye(e,63)?Ke(1,++n,t):0;if(e.type===Fe){if(!He(e,43))return 0;var r=Ve(e,1,!0);return 0===r?0:null===(e=t(++n))?n:e.type===Ue||e.type===Fe?He(e,45)&&Ve(e,1,!1)?n+1:0:Ke(r,n,t)}return e.type===Ue&&He(e,43)?Ke(Ve(e,1,!0),++n,t):0},\"declaration-value\":function(e,t){if(!e)return 0;var n=0,r=0,a=e.index;e:do{switch(e.type){case Je.BadString:case Je.BadUrl:break e;case Je.RightCurlyBracket:case Je.RightParenthesis:case Je.RightSquareBracket:if(e.balance>e.index||e.balance<a)break e;r--;break;case Je.Semicolon:if(0===r)break e;break;case Je.Delim:if(\"!\"===e.value&&0===r)break e;break;case Je.Function:case Je.LeftParenthesis:case Je.LeftSquareBracket:case Je.LeftCurlyBracket:r++}if(n++,e.balance<=a)break}while(e=t(n));return n},\"any-value\":function(e,t){if(!e)return 0;var n=e.index,r=0;e:do{switch(e.type){case Je.BadString:case Je.BadUrl:break e;case Je.RightCurlyBracket:case Je.RightParenthesis:case Je.RightSquareBracket:if(e.balance>e.index||e.balance<n)break e}if(r++,e.balance<=n)break}while(e=t(r));return r},dimension:lt(ut(null)),angle:lt(ut({deg:!0,grad:!0,rad:!0,turn:!0})),decibel:lt(ut({db:!0})),frequency:lt(ut({hz:!0,khz:!0})),flex:lt(ut({fr:!0})),length:lt(ht(ut({px:!0,mm:!0,cm:!0,in:!0,pt:!0,pc:!0,q:!0,em:!0,ex:!0,ch:!0,rem:!0,vh:!0,vw:!0,vmin:!0,vmax:!0,vm:!0}))),resolution:lt(ut({dpi:!0,dpcm:!0,dppx:!0,x:!0})),semitones:lt(ut({st:!0})),time:lt(ut({s:!0,ms:!0})),percentage:lt((function(e,t,n){return null===e||e.type!==Je.Percentage||ot(n,e.value,e.value.length-1)?0:1})),zero:ht(),number:lt((function(e,t,n){if(null===e)return 0;var r=Ze(e.value,0);return r===e.value.length||it(e.value,r)?ot(n,e.value,r)?0:1:0})),integer:lt((function(e,t,n){if(null===e||e.type!==Je.Number)return 0;for(var r=43===e.value.charCodeAt(0)||45===e.value.charCodeAt(0)?1:0;r<e.value.length;r++)if(!Qe(e.value.charCodeAt(r)))return 0;return ot(n,e.value,r)?0:1})),\"-ms-legacy-expression\":(dt=\"expression\",dt+=\"(\",function(e,t){return null!==e&&rt(e.value,dt)?st(e,t):0})},ft=function(e,t,n){var r=s(\"SyntaxError\",e);return r.input=t,r.offset=n,r.rawMessage=e,r.message=r.rawMessage+\"\\n  \"+r.input+\"\\n--\"+new Array((r.offset||r.input.length)+1).join(\"-\")+\"^\",r},mt=function(e){this.str=e,this.pos=0};mt.prototype={charCodeAt:function(e){return e<this.str.length?this.str.charCodeAt(e):0},charCode:function(){return this.charCodeAt(this.pos)},nextCharCode:function(){return this.charCodeAt(this.pos+1)},nextNonWsCode:function(e){return this.charCodeAt(this.findWsEnd(e))},findWsEnd:function(e){for(;e<this.str.length;e++){var t=this.str.charCodeAt(e);if(13!==t&&10!==t&&12!==t&&32!==t&&9!==t)break}return e},substringToPos:function(e){return this.str.substring(this.pos,this.pos=e)},eat:function(e){this.charCode()!==e&&this.error(\"Expect `\"+String.fromCharCode(e)+\"`\"),this.pos++},peek:function(){return this.pos<this.str.length?this.str.charAt(this.pos++):\"\"},error:function(e){throw new ft(e,this.str,this.pos)}};var gt=mt,bt=function(e){for(var t=\"function\"==typeof Uint32Array?new Uint32Array(128):new Array(128),n=0;n<128;n++)t[n]=e(String.fromCharCode(n))?1:0;return t}((function(e){return/[a-zA-Z0-9\\-]/.test(e)})),yt={\" \":1,\"&&\":2,\"||\":3,\"|\":4};function kt(e){return e.substringToPos(e.findWsEnd(e.pos))}function vt(e){for(var t=e.pos;t<e.str.length;t++){var n=e.str.charCodeAt(t);if(n>=128||0===bt[n])break}return e.pos===t&&e.error(\"Expect a keyword\"),e.substringToPos(t)}function wt(e){for(var t=e.pos;t<e.str.length;t++){var n=e.str.charCodeAt(t);if(n<48||n>57)break}return e.pos===t&&e.error(\"Expect a number\"),e.substringToPos(t)}function xt(e){var t=e.str.indexOf(\"'\",e.pos+1);return-1===t&&(e.pos=e.str.length,e.error(\"Expect an apostrophe\")),e.substringToPos(t+1)}function St(e){var t,n=null;return e.eat(123),t=wt(e),44===e.charCode()?(e.pos++,125!==e.charCode()&&(n=wt(e))):n=t,e.eat(125),{min:Number(t),max:n?Number(n):0}}function Ct(e,t){var n=function(e){var t=null,n=!1;switch(e.charCode()){case 42:e.pos++,t={min:0,max:0};break;case 43:e.pos++,t={min:1,max:0};break;case 63:e.pos++,t={min:0,max:1};break;case 35:e.pos++,n=!0,t=123===e.charCode()?St(e):{min:1,max:0};break;case 123:t=St(e);break;default:return null}return{type:\"Multiplier\",comma:n,min:t.min,max:t.max,term:null}}(e);return null!==n?(n.term=t,n):t}function At(e){var t=e.peek();return\"\"===t?null:{type:\"Token\",value:t}}function zt(e){var t,n=null;return e.eat(60),t=vt(e),40===e.charCode()&&41===e.nextCharCode()&&(e.pos+=2,t+=\"()\"),91===e.charCodeAt(e.findWsEnd(e.pos))&&(kt(e),n=function(e){var t=null,n=null,r=1;return e.eat(91),45===e.charCode()&&(e.peek(),r=-1),-1==r&&8734===e.charCode()?e.peek():t=r*Number(wt(e)),kt(e),e.eat(44),kt(e),8734===e.charCode()?e.peek():(r=1,45===e.charCode()&&(e.peek(),r=-1),n=r*Number(wt(e))),e.eat(93),null===t&&null===n?null:{type:\"Range\",min:t,max:n}}(e)),e.eat(62),Ct(e,{type:\"Type\",name:t,opts:n})}function Pt(e,t){function n(e,t){return{type:\"Group\",terms:e,combinator:t,disallowEmpty:!1,explicit:!1}}for(t=Object.keys(t).sort((function(e,t){return yt[e]-yt[t]}));t.length>0;){for(var r=t.shift(),a=0,i=0;a<e.length;a++){var o=e[a];\"Combinator\"===o.type&&(o.value===r?(-1===i&&(i=a-1),e.splice(a,1),a--):(-1!==i&&a-i>1&&(e.splice(i,a-i,n(e.slice(i,a),r)),a=i+1),i=-1))}-1!==i&&t.length&&e.splice(i,a-i,n(e.slice(i,a),r))}return r}function Lt(e){for(var t,n=[],r={},a=null,i=e.pos;t=Tt(e);)\"Spaces\"!==t.type&&(\"Combinator\"===t.type?(null!==a&&\"Combinator\"!==a.type||(e.pos=i,e.error(\"Unexpected combinator\")),r[t.value]=!0):null!==a&&\"Combinator\"!==a.type&&(r[\" \"]=!0,n.push({type:\"Combinator\",value:\" \"})),n.push(t),a=t,i=e.pos);return null!==a&&\"Combinator\"===a.type&&(e.pos-=i,e.error(\"Unexpected combinator\")),{type:\"Group\",terms:n,combinator:Pt(n,r)||\" \",disallowEmpty:!1,explicit:!1}}function Tt(e){var t=e.charCode();if(t<128&&1===bt[t])return function(e){var t;return t=vt(e),40===e.charCode()?(e.pos++,{type:\"Function\",name:t}):Ct(e,{type:\"Keyword\",name:t})}(e);switch(t){case 93:break;case 91:return Ct(e,function(e){var t;return e.eat(91),t=Lt(e),e.eat(93),t.explicit=!0,33===e.charCode()&&(e.pos++,t.disallowEmpty=!0),t}(e));case 60:return 39===e.nextCharCode()?function(e){var t;return e.eat(60),e.eat(39),t=vt(e),e.eat(39),e.eat(62),Ct(e,{type:\"Property\",name:t})}(e):zt(e);case 124:return{type:\"Combinator\",value:e.substringToPos(124===e.nextCharCode()?e.pos+2:e.pos+1)};case 38:return e.pos++,e.eat(38),{type:\"Combinator\",value:\"&&\"};case 44:return e.pos++,{type:\"Comma\"};case 39:return Ct(e,{type:\"String\",value:xt(e)});case 32:case 9:case 10:case 13:case 12:return{type:\"Spaces\",value:kt(e)};case 64:return(t=e.nextCharCode())<128&&1===bt[t]?(e.pos++,{type:\"AtKeyword\",name:vt(e)}):At(e);case 42:case 43:case 63:case 35:case 33:break;case 123:if((t=e.nextCharCode())<48||t>57)return At(e);break;default:return At(e)}}function Et(e){var t=new gt(e),n=Lt(t);return t.pos!==e.length&&t.error(\"Unexpected input\"),1===n.terms.length&&\"Group\"===n.terms[0].type&&(n=n.terms[0]),n}Et(\"[a&&<b>#|<'c'>*||e() f{2} /,(% g#{1,2} h{2,})]!\");var Ot=Et,Dt=function(){};function Rt(e){return\"function\"==typeof e?e:Dt}var It=function(e,t,n){var r=Dt,a=Dt;if(\"function\"==typeof t?r=t:t&&(r=Rt(t.enter),a=Rt(t.leave)),r===Dt&&a===Dt)throw new Error(\"Neither `enter` nor `leave` walker handler is set or both aren't a function\");!function e(t){switch(r.call(n,t),t.type){case\"Group\":t.terms.forEach(e);break;case\"Multiplier\":e(t.term);break;case\"Type\":case\"Property\":case\"Keyword\":case\"AtKeyword\":case\"Function\":case\"String\":case\"Token\":case\"Comma\":break;default:throw new Error(\"Unknown type: \"+t.type)}a.call(n,t)}(e)},Mt=new V,Nt={decorator:function(e){var t=null,n={len:0,node:null},r=[n],a=\"\";return{children:e.children,node:function(n){var r=t;t=n,e.node.call(this,n),t=r},chunk:function(e){a+=e,n.node!==t?r.push({len:e.length,node:t}):n.len+=e.length},result:function(){return Bt(a,r)}}}};function Bt(e,t){var n=[],r=0,a=0,i=t?t[a].node:null;for(Se(e,Mt);!Mt.eof;){if(t)for(;a<t.length&&r+t[a].len<=Mt.tokenStart;)r+=t[a++].len,i=t[a].node;n.push({type:Mt.tokenType,value:Mt.getTokenValue(),index:Mt.tokenIndex,balance:Mt.balance[Mt.tokenIndex],node:i}),Mt.next()}return n}var jt={type:\"Match\"},_t={type:\"Mismatch\"},qt={type:\"DisallowEmpty\"};function Wt(e,t,n){return t===jt&&n===_t||e===jt&&t===jt&&n===jt?e:(\"If\"===e.type&&e.else===_t&&t===jt&&(t=e.then,e=e.match),{type:\"If\",match:e,then:t,else:n})}function Ft(e){return e.length>2&&40===e.charCodeAt(e.length-2)&&41===e.charCodeAt(e.length-1)}function Ut(e){return\"Keyword\"===e.type||\"AtKeyword\"===e.type||\"Function\"===e.type||\"Type\"===e.type&&Ft(e.name)}function Yt(e){if(\"function\"==typeof e)return{type:\"Generic\",fn:e};switch(e.type){case\"Group\":var t=function e(t,n,r){switch(t){case\" \":for(var a=jt,i=n.length-1;i>=0;i--){a=Wt(l=n[i],a,_t)}return a;case\"|\":a=_t;var o=null;for(i=n.length-1;i>=0;i--){if(Ut(l=n[i])&&(null===o&&i>0&&Ut(n[i-1])&&(a=Wt({type:\"Enum\",map:o=Object.create(null)},jt,a)),null!==o)){var s=(Ft(l.name)?l.name.slice(0,-1):l.name).toLowerCase();if(s in o==!1){o[s]=l;continue}}o=null,a=Wt(l,jt,a)}return a;case\"&&\":if(n.length>5)return{type:\"MatchOnce\",terms:n,all:!0};for(a=_t,i=n.length-1;i>=0;i--){var l=n[i];c=n.length>1?e(t,n.filter((function(e){return e!==l})),!1):jt,a=Wt(l,c,a)}return a;case\"||\":if(n.length>5)return{type:\"MatchOnce\",terms:n,all:!1};for(a=r?jt:_t,i=n.length-1;i>=0;i--){var c;l=n[i];c=n.length>1?e(t,n.filter((function(e){return e!==l})),!0):jt,a=Wt(l,c,a)}return a}}(e.combinator,e.terms.map(Yt),!1);return e.disallowEmpty&&(t=Wt(t,qt,_t)),t;case\"Multiplier\":return function(e){var t=jt,n=Yt(e.term);if(0===e.max)n=Wt(n,qt,_t),(t=Wt(n,null,_t)).then=Wt(jt,jt,t),e.comma&&(t.then.else=Wt({type:\"Comma\",syntax:e},t,_t));else for(var r=e.min||1;r<=e.max;r++)e.comma&&t!==jt&&(t=Wt({type:\"Comma\",syntax:e},t,_t)),t=Wt(n,Wt(jt,jt,t),_t);if(0===e.min)t=Wt(jt,jt,t);else for(r=0;r<e.min-1;r++)e.comma&&t!==jt&&(t=Wt({type:\"Comma\",syntax:e},t,_t)),t=Wt(n,t,_t);return t}(e);case\"Type\":case\"Property\":return{type:e.type,name:e.name,syntax:e};case\"Keyword\":return{type:e.type,name:e.name.toLowerCase(),syntax:e};case\"AtKeyword\":return{type:e.type,name:\"@\"+e.name.toLowerCase(),syntax:e};case\"Function\":return{type:e.type,name:e.name.toLowerCase()+\"(\",syntax:e};case\"String\":return 3===e.value.length?{type:\"Token\",value:e.value.charAt(1),syntax:e}:{type:e.type,value:e.value.substr(1,e.value.length-2).replace(/\\\\'/g,\"'\"),syntax:e};case\"Token\":return{type:e.type,value:e.value,syntax:e};case\"Comma\":return{type:e.type,syntax:e};default:throw new Error(\"Unknown node type:\",e.type)}}var Ht=jt,Vt=_t,Kt=qt,Gt=function(e,t){return\"string\"==typeof e&&(e=Ot(e)),{type:\"MatchGraph\",match:Yt(e),syntax:t||null,source:e}},$t=Object.prototype.hasOwnProperty,Qt=Ht,Xt=Vt,Zt=Kt,Jt=d.TYPE;function en(e){for(var t=null,n=null,r=e;null!==r;)n=r.prev,r.prev=t,t=r,r=n;return t}function tn(e,t){if(e.length!==t.length)return!1;for(var n=0;n<e.length;n++){var r=e.charCodeAt(n);if(r>=65&&r<=90&&(r|=32),r!==t.charCodeAt(n))return!1}return!0}function nn(e){return null===e||(e.type===Jt.Comma||e.type===Jt.Function||e.type===Jt.LeftParenthesis||e.type===Jt.LeftSquareBracket||e.type===Jt.LeftCurlyBracket||e.type===Jt.Delim)}function rn(e){return null===e||(e.type===Jt.RightParenthesis||e.type===Jt.RightSquareBracket||e.type===Jt.RightCurlyBracket||e.type===Jt.Delim)}function an(e,t,n){function r(){do{b++,g=b<e.length?e[b]:null}while(null!==g&&(g.type===Jt.WhiteSpace||g.type===Jt.Comment))}function a(t){var n=b+t;return n<e.length?e[n]:null}function i(e,t){return{nextState:e,matchStack:k,syntaxStack:u,thenStack:h,tokenIndex:b,prev:t}}function o(e){h={nextState:e,matchStack:k,syntaxStack:u,prev:h}}function s(e){d=i(e,d)}function l(){k={type:1,syntax:t.syntax,token:g,prev:k},r(),p=null,b>y&&(y=b)}function c(){k=2===k.type?k.prev:{type:3,syntax:u.syntax,token:k.token,prev:k},u=u.prev}var u=null,h=null,d=null,p=null,f=0,m=null,g=null,b=-1,y=0,k={type:0,syntax:null,token:null,prev:null};for(r();null===m&&++f<15e3;)switch(t.type){case\"Match\":if(null===h){if(null!==g&&(b!==e.length-1||\"\\\\0\"!==g.value&&\"\\\\9\"!==g.value)){t=Xt;break}m=\"Match\";break}if((t=h.nextState)===Zt){if(h.matchStack===k){t=Xt;break}t=Qt}for(;h.syntaxStack!==u;)c();h=h.prev;break;case\"Mismatch\":if(null!==p&&!1!==p)(null===d||b>d.tokenIndex)&&(d=p,p=!1);else if(null===d){m=\"Mismatch\";break}t=d.nextState,h=d.thenStack,u=d.syntaxStack,k=d.matchStack,b=d.tokenIndex,g=b<e.length?e[b]:null,d=d.prev;break;case\"MatchGraph\":t=t.match;break;case\"If\":t.else!==Xt&&s(t.else),t.then!==Qt&&o(t.then),t=t.match;break;case\"MatchOnce\":t={type:\"MatchOnceBuffer\",syntax:t,index:0,mask:0};break;case\"MatchOnceBuffer\":var v=t.syntax.terms;if(t.index===v.length){if(0===t.mask||t.syntax.all){t=Xt;break}t=Qt;break}if(t.mask===(1<<v.length)-1){t=Qt;break}for(;t.index<v.length;t.index++){var w=1<<t.index;if(0==(t.mask&w)){s(t),o({type:\"AddMatchOnce\",syntax:t.syntax,mask:t.mask|w}),t=v[t.index++];break}}break;case\"AddMatchOnce\":t={type:\"MatchOnceBuffer\",syntax:t.syntax,index:0,mask:t.mask};break;case\"Enum\":if(null!==g)if(-1!==(z=g.value.toLowerCase()).indexOf(\"\\\\\")&&(z=z.replace(/\\\\[09].*$/,\"\")),$t.call(t.map,z)){t=t.map[z];break}t=Xt;break;case\"Generic\":var x=null!==u?u.opts:null,S=b+Math.floor(t.fn(g,a,x));if(!isNaN(S)&&S>b){for(;b<S;)l();t=Qt}else t=Xt;break;case\"Type\":case\"Property\":var C=\"Type\"===t.type?\"types\":\"properties\",A=$t.call(n,C)?n[C][t.name]:null;if(!A||!A.match)throw new Error(\"Bad syntax reference: \"+(\"Type\"===t.type?\"<\"+t.name+\">\":\"<'\"+t.name+\"'>\"));if(!1!==p&&null!==g&&\"Type\"===t.type)if(\"custom-ident\"===t.name&&g.type===Jt.Ident||\"length\"===t.name&&\"0\"===g.value){null===p&&(p=i(t,d)),t=Xt;break}u={syntax:t.syntax,opts:t.syntax.opts||null!==u&&u.opts||null,prev:u},k={type:2,syntax:t.syntax,token:k.token,prev:k},t=A.match;break;case\"Keyword\":var z=t.name;if(null!==g){var P=g.value;if(-1!==P.indexOf(\"\\\\\")&&(P=P.replace(/\\\\[09].*$/,\"\")),tn(P,z)){l(),t=Qt;break}}t=Xt;break;case\"AtKeyword\":case\"Function\":if(null!==g&&tn(g.value,t.name)){l(),t=Qt;break}t=Xt;break;case\"Token\":if(null!==g&&g.value===t.value){l(),t=Qt;break}t=Xt;break;case\"Comma\":null!==g&&g.type===Jt.Comma?nn(k.token)?t=Xt:(l(),t=rn(g)?Xt:Qt):t=nn(k.token)||rn(g)?Qt:Xt;break;case\"String\":var L=\"\";for(S=b;S<e.length&&L.length<t.value.length;S++)L+=e[S].value;if(tn(L,t.value)){for(;b<S;)l();t=Qt}else t=Xt;break;default:throw new Error(\"Unknown node type: \"+t.type)}switch(f,m){case null:console.warn(\"[csstree-match] BREAK after 15000 iterations\"),m=\"Maximum iteration number exceeded (please fill an issue on https://github.com/csstree/csstree/issues)\",k=null;break;case\"Match\":for(;null!==u;)c();break;default:k=null}return{tokens:e,reason:m,iterations:f,match:k,longestMatch:y}}var on=function(e,t,n){var r=an(e,t,n||{});if(null===r.match)return r;var a=r.match,i=r.match={syntax:t.syntax||null,match:[]},o=[i];for(a=en(a).prev;null!==a;){switch(a.type){case 2:i.match.push(i={syntax:a.syntax,match:[]}),o.push(i);break;case 3:o.pop(),i=o[o.length-1];break;default:i.match.push({syntax:a.syntax||null,token:a.token.value,node:a.token.node})}a=a.prev}return r};function sn(e){function t(e){return null!==e&&(\"Type\"===e.type||\"Property\"===e.type||\"Keyword\"===e.type)}var n=null;return null!==this.matched&&function r(a){if(Array.isArray(a.match)){for(var i=0;i<a.match.length;i++)if(r(a.match[i]))return t(a.syntax)&&n.unshift(a.syntax),!0}else if(a.node===e)return n=t(a.syntax)?[a.syntax]:[],!0;return!1}(this.matched),n}function ln(e,t,n){var r=sn.call(e,t);return null!==r&&r.some(n)}var cn={getTrace:sn,isType:function(e,t){return ln(this,e,(function(e){return\"Type\"===e.type&&e.name===t}))},isProperty:function(e,t){return ln(this,e,(function(e){return\"Property\"===e.type&&e.name===t}))},isKeyword:function(e){return ln(this,e,(function(e){return\"Keyword\"===e.type}))}};var un={matchFragments:function(e,t,n,r,a){var i=[];return null!==n.matched&&function n(s){if(null!==s.syntax&&s.syntax.type===r&&s.syntax.name===a){var l=function e(t){return\"node\"in t?t.node:e(t.match[0])}(s),c=function e(t){return\"node\"in t?t.node:e(t.match[t.match.length-1])}(s);e.syntax.walk(t,(function(e,t,n){if(e===l){var r=new o;do{if(r.appendData(t.data),t.data===c)break;t=t.next}while(null!==t);i.push({parent:n,nodes:r})}}))}Array.isArray(s.match)&&s.match.forEach(n)}(n.matched),i}},hn=Object.prototype.hasOwnProperty;function dn(e){return\"number\"==typeof e&&isFinite(e)&&Math.floor(e)===e&&e>=0}function pn(e){return Boolean(e)&&dn(e.offset)&&dn(e.line)&&dn(e.column)}function fn(e,t){return function(n,r){if(!n||n.constructor!==Object)return r(n,\"Type of node should be an Object\");for(var a in n){var i=!0;if(!1!==hn.call(n,a)){if(\"type\"===a)n.type!==e&&r(n,\"Wrong node type `\"+n.type+\"`, expected `\"+e+\"`\");else if(\"loc\"===a){if(null===n.loc)continue;if(n.loc&&n.loc.constructor===Object)if(\"string\"!=typeof n.loc.source)a+=\".source\";else if(pn(n.loc.start)){if(pn(n.loc.end))continue;a+=\".end\"}else a+=\".start\";i=!1}else if(t.hasOwnProperty(a)){var s=0;for(i=!1;!i&&s<t[a].length;s++){var l=t[a][s];switch(l){case String:i=\"string\"==typeof n[a];break;case Boolean:i=\"boolean\"==typeof n[a];break;case null:i=null===n[a];break;default:\"string\"==typeof l?i=n[a]&&n[a].type===l:Array.isArray(l)&&(i=n[a]instanceof o)}}}else r(n,\"Unknown field `\"+a+\"` for \"+e+\" node type\");i||r(n,\"Bad value for `\"+e+\".\"+a+\"`\")}}for(var a in t)hn.call(t,a)&&!1===hn.call(n,a)&&r(n,\"Field `\"+e+\".\"+a+\"` is missed\")}}function mn(e,t){var n=t.structure,r={type:String,loc:!0},a={type:'\"'+e+'\"'};for(var i in n)if(!1!==hn.call(n,i)){for(var o=[],s=r[i]=Array.isArray(n[i])?n[i].slice():[n[i]],l=0;l<s.length;l++){var c=s[l];if(c===String||c===Boolean)o.push(c.name);else if(null===c)o.push(\"null\");else if(\"string\"==typeof c)o.push(\"<\"+c+\">\");else{if(!Array.isArray(c))throw new Error(\"Wrong value `\"+c+\"` in `\"+e+\".\"+i+\"` structure definition\");o.push(\"List\")}}a[i]=o.join(\" | \")}return{docs:a,check:fn(e,r)}}var gn=X,bn=Z,yn=Gt,kn=on,vn=function(e){var t={};if(e.node)for(var n in e.node)if(hn.call(e.node,n)){var r=e.node[n];if(!r.structure)throw new Error(\"Missed `structure` field in `\"+n+\"` node type definition\");t[n]=mn(n,r)}return t},wn=yn(\"inherit | initial | unset\"),xn=yn(\"inherit | initial | unset | <-ms-legacy-expression>\");function Sn(e,t,n){var r={};for(var a in e)e[a].syntax&&(r[a]=n?e[a].syntax:$(e[a].syntax,{compact:t}));return r}function Cn(e,t,n){return{matched:e,iterations:n,error:t,getTrace:cn.getTrace,isType:cn.isType,isProperty:cn.isProperty,isKeyword:cn.isKeyword}}function An(e,t,n,r){var a,i=function(e,t){return\"string\"==typeof e?Bt(e,null):t.generate(e,Nt)}(n,e.syntax);return function(e){for(var t=0;t<e.length;t++)if(\"var(\"===e[t].value.toLowerCase())return!0;return!1}(i)?Cn(null,new Error(\"Matching for a tree with var() is not supported\")):(r&&(a=kn(i,e.valueCommonSyntax,e)),r&&a.match||(a=kn(i,t.match,e)).match?Cn(a.match,null,a.iterations):Cn(null,new bn(a.reason,t.syntax,n,a),a.iterations))}var zn=function(e,t,n){if(this.valueCommonSyntax=wn,this.syntax=t,this.generic=!1,this.atrules={},this.properties={},this.types={},this.structure=n||vn(e),e){if(e.types)for(var r in e.types)this.addType_(r,e.types[r]);if(e.generic)for(var r in this.generic=!0,pt)this.addType_(r,pt[r]);if(e.atrules)for(var r in e.atrules)this.addAtrule_(r,e.atrules[r]);if(e.properties)for(var r in e.properties)this.addProperty_(r,e.properties[r])}};zn.prototype={structure:{},checkStructure:function(e){function t(e,t){r.push({node:e,message:t})}var n=this.structure,r=[];return this.syntax.walk(e,(function(e){n.hasOwnProperty(e.type)?n[e.type].check(e,t):t(e,\"Unknown node type `\"+e.type+\"`\")})),!!r.length&&r},createDescriptor:function(e,t,n){var r={type:t,name:n},a={type:t,name:n,syntax:null,match:null};return\"function\"==typeof e?a.match=yn(e,r):(\"string\"==typeof e?Object.defineProperty(a,\"syntax\",{get:function(){return Object.defineProperty(a,\"syntax\",{value:Ot(e)}),a.syntax}}):a.syntax=e,Object.defineProperty(a,\"match\",{get:function(){return Object.defineProperty(a,\"match\",{value:yn(a.syntax,r)}),a.match}})),a},addAtrule_:function(e,t){this.atrules[e]={prelude:t.prelude?this.createDescriptor(t.prelude,\"AtrulePrelude\",e):null,descriptors:t.descriptors?Object.keys(t.descriptors).reduce((e,n)=>(e[n]=this.createDescriptor(t.descriptors[n],\"AtruleDescriptor\",n),e),{}):null}},addProperty_:function(e,t){this.properties[e]=this.createDescriptor(t,\"Property\",e)},addType_:function(e,t){this.types[e]=this.createDescriptor(t,\"Type\",e),t===pt[\"-ms-legacy-expression\"]&&(this.valueCommonSyntax=xn)},matchAtrulePrelude:function(e,t){var n=ae.keyword(e),r=n.vendor?this.getAtrulePrelude(n.name)||this.getAtrulePrelude(n.basename):this.getAtrulePrelude(n.name);return r?An(this,r,t,!0):n.basename in this.atrules?Cn(null,new Error(\"At-rule `\"+e+\"` should not contain a prelude\")):Cn(null,new gn(\"Unknown at-rule\",e))},matchAtruleDescriptor:function(e,t,n){var r=ae.keyword(e),a=ae.keyword(t),i=r.vendor?this.atrules[r.name]||this.atrules[r.basename]:this.atrules[r.name];if(!i)return Cn(null,new gn(\"Unknown at-rule\",e));if(!i.descriptors)return Cn(null,new Error(\"At-rule `\"+e+\"` has no known descriptors\"));var o=a.vendor?i.descriptors[a.name]||i.descriptors[a.basename]:i.descriptors[a.name];return o?An(this,o,n,!0):Cn(null,new gn(\"Unknown at-rule descriptor\",t))},matchDeclaration:function(e){return\"Declaration\"!==e.type?Cn(null,new Error(\"Not a Declaration node\")):this.matchProperty(e.property,e.value)},matchProperty:function(e,t){var n=ae.property(e);if(n.custom)return Cn(null,new Error(\"Lexer matching doesn't applicable for custom properties\"));var r=n.vendor?this.getProperty(n.name)||this.getProperty(n.basename):this.getProperty(n.name);return r?An(this,r,t,!0):Cn(null,new gn(\"Unknown property\",e))},matchType:function(e,t){var n=this.getType(e);return n?An(this,n,t,!1):Cn(null,new gn(\"Unknown type\",e))},match:function(e,t){return\"string\"==typeof e||e&&e.type?(\"string\"!=typeof e&&e.match||(e=this.createDescriptor(e,\"Type\",\"anonymous\")),An(this,e,t,!1)):Cn(null,new gn(\"Bad syntax\"))},findValueFragments:function(e,t,n,r){return un.matchFragments(this,t,this.matchProperty(e,t),n,r)},findDeclarationValueFragments:function(e,t,n){return un.matchFragments(this,e.value,this.matchDeclaration(e),t,n)},findAllFragments:function(e,t,n){var r=[];return this.syntax.walk(e,{visit:\"Declaration\",enter:function(e){r.push.apply(r,this.findDeclarationValueFragments(e,t,n))}.bind(this)}),r},getAtrulePrelude:function(e){return this.atrules.hasOwnProperty(e)?this.atrules[e].prelude:null},getAtruleDescriptor:function(e,t){return this.atrules.hasOwnProperty(e)&&this.atrules.declarators&&this.atrules[e].declarators[t]||null},getProperty:function(e){return this.properties.hasOwnProperty(e)?this.properties[e]:null},getType:function(e){return this.types.hasOwnProperty(e)?this.types[e]:null},validate:function(){function e(r,a,i,o){if(i.hasOwnProperty(a))return i[a];i[a]=!1,null!==o.syntax&&It(o.syntax,(function(o){if(\"Type\"===o.type||\"Property\"===o.type){var s=\"Type\"===o.type?r.types:r.properties,l=\"Type\"===o.type?t:n;s.hasOwnProperty(o.name)&&!e(r,o.name,l,s[o.name])||(i[a]=!0)}}),this)}var t={},n={};for(var r in this.types)e(this,r,t,this.types[r]);for(var r in this.properties)e(this,r,n,this.properties[r]);return t=Object.keys(t).filter((function(e){return t[e]})),n=Object.keys(n).filter((function(e){return n[e]})),t.length||n.length?{types:t,properties:n}:null},dump:function(e,t){return{generic:this.generic,types:Sn(this.types,!t,e),properties:Sn(this.properties,!t,e)}},toString:function(){return JSON.stringify(this.dump())}};var Pn=zn,Ln={SyntaxError:ft,parse:Ot,generate:$,walk:It},Tn=Se.isBOM;var En=function(){this.lines=null,this.columns=null,this.linesAndColumnsComputed=!1};En.prototype={setSource:function(e,t,n,r){this.source=e,this.startOffset=void 0===t?0:t,this.startLine=void 0===n?1:n,this.startColumn=void 0===r?1:r,this.linesAndColumnsComputed=!1},ensureLinesAndColumnsComputed:function(){this.linesAndColumnsComputed||(!function(e,t){for(var n=t.length,r=oe(e.lines,n),a=e.startLine,i=oe(e.columns,n),o=e.startColumn,s=t.length>0?Tn(t.charCodeAt(0)):0;s<n;s++){var l=t.charCodeAt(s);r[s]=a,i[s]=o++,10!==l&&13!==l&&12!==l||(13===l&&s+1<n&&10===t.charCodeAt(s+1)&&(r[++s]=a,i[s]=o),a++,o=1)}r[s]=a,i[s]=o,e.lines=r,e.columns=i}(this,this.source),this.linesAndColumnsComputed=!0)},getLocation:function(e,t){return this.ensureLinesAndColumnsComputed(),{source:t,offset:this.startOffset+e,line:this.lines[e],column:this.columns[e]}},getLocationRange:function(e,t,n){return this.ensureLinesAndColumnsComputed(),{source:n,start:{offset:this.startOffset+e,line:this.lines[e],column:this.columns[e]},end:{offset:this.startOffset+t,line:this.lines[t],column:this.columns[t]}}}};var On=En,Dn=Se.TYPE,Rn=Dn.WhiteSpace,In=Dn.Comment,Mn=function(e){var t=this.createList(),n=null,r={recognizer:e,space:null,ignoreWS:!1,ignoreWSAfter:!1};for(this.scanner.skipSC();!this.scanner.eof;){switch(this.scanner.tokenType){case In:this.scanner.next();continue;case Rn:r.ignoreWS?this.scanner.next():r.space=this.WhiteSpace();continue}if(void 0===(n=e.getNode.call(this,r)))break;null!==r.space&&(t.push(r.space),r.space=null),t.push(n),r.ignoreWSAfter?(r.ignoreWSAfter=!1,r.ignoreWS=!0):r.ignoreWS=!1}return t},Nn=j.findWhiteSpaceStart,Bn=function(){},jn=d.TYPE,_n=d.NAME,qn=jn.WhiteSpace,Wn=jn.Ident,Fn=jn.Function,Un=jn.Url,Yn=jn.Hash,Hn=jn.Percentage,Vn=jn.Number;function Kn(e){return function(){return this[e]()}}var Gn=function(e){var t={scanner:new V,locationMap:new On,filename:\"<unknown>\",needPositions:!1,onParseError:Bn,onParseErrorThrow:!1,parseAtrulePrelude:!0,parseRulePrelude:!0,parseValue:!0,parseCustomProperty:!1,readSequence:Mn,createList:function(){return new o},createSingleNodeList:function(e){return(new o).appendData(e)},getFirstListNode:function(e){return e&&e.first()},getLastListNode:function(e){return e.last()},parseWithFallback:function(e,t){var n=this.scanner.tokenIndex;try{return e.call(this)}catch(e){if(this.onParseErrorThrow)throw e;var r=t.call(this,n);return this.onParseErrorThrow=!0,this.onParseError(e,r),this.onParseErrorThrow=!1,r}},lookupNonWSType:function(e){do{var t=this.scanner.lookupType(e++);if(t!==qn)return t}while(0!==t);return 0},eat:function(e){if(this.scanner.tokenType!==e){var t=this.scanner.tokenStart,n=_n[e]+\" is expected\";switch(e){case Wn:this.scanner.tokenType===Fn||this.scanner.tokenType===Un?(t=this.scanner.tokenEnd-1,n=\"Identifier is expected but function found\"):n=\"Identifier is expected\";break;case Yn:this.scanner.isDelim(35)&&(this.scanner.next(),t++,n=\"Name is expected\");break;case Hn:this.scanner.tokenType===Vn&&(t=this.scanner.tokenEnd,n=\"Percent sign is expected\");break;default:this.scanner.source.charCodeAt(this.scanner.tokenStart)===e&&(t+=1)}this.error(n,t)}this.scanner.next()},consume:function(e){var t=this.scanner.getTokenValue();return this.eat(e),t},consumeFunctionName:function(){var e=this.scanner.source.substring(this.scanner.tokenStart,this.scanner.tokenEnd-1);return this.eat(Fn),e},getLocation:function(e,t){return this.needPositions?this.locationMap.getLocationRange(e,t,this.filename):null},getLocationFromList:function(e){if(this.needPositions){var t=this.getFirstListNode(e),n=this.getLastListNode(e);return this.locationMap.getLocationRange(null!==t?t.loc.start.offset-this.locationMap.startOffset:this.scanner.tokenStart,null!==n?n.loc.end.offset-this.locationMap.startOffset:this.scanner.tokenStart,this.filename)}return null},error:function(e,t){var n=void 0!==t&&t<this.scanner.source.length?this.locationMap.getLocation(t):this.scanner.eof?this.locationMap.getLocation(Nn(this.scanner.source,this.scanner.source.length-1)):this.locationMap.getLocation(this.scanner.tokenStart);throw new c(e||\"Unexpected input\",this.scanner.source,n.offset,n.line,n.column)}};for(var n in e=function(e){var t={context:{},scope:{},atrule:{},pseudo:{}};if(e.parseContext)for(var n in e.parseContext)switch(typeof e.parseContext[n]){case\"function\":t.context[n]=e.parseContext[n];break;case\"string\":t.context[n]=Kn(e.parseContext[n])}if(e.scope)for(var n in e.scope)t.scope[n]=e.scope[n];if(e.atrule)for(var n in e.atrule){var r=e.atrule[n];r.parse&&(t.atrule[n]=r.parse)}if(e.pseudo)for(var n in e.pseudo){var a=e.pseudo[n];a.parse&&(t.pseudo[n]=a.parse)}if(e.node)for(var n in e.node)t[n]=e.node[n].parse;return t}(e||{}))t[n]=e[n];return function(e,n){var r,a=(n=n||{}).context||\"default\";if(Se(e,t.scanner),t.locationMap.setSource(e,n.offset,n.line,n.column),t.filename=n.filename||\"<unknown>\",t.needPositions=Boolean(n.positions),t.onParseError=\"function\"==typeof n.onParseError?n.onParseError:Bn,t.onParseErrorThrow=!1,t.parseAtrulePrelude=!(\"parseAtrulePrelude\"in n)||Boolean(n.parseAtrulePrelude),t.parseRulePrelude=!(\"parseRulePrelude\"in n)||Boolean(n.parseRulePrelude),t.parseValue=!(\"parseValue\"in n)||Boolean(n.parseValue),t.parseCustomProperty=\"parseCustomProperty\"in n&&Boolean(n.parseCustomProperty),!t.context.hasOwnProperty(a))throw new Error(\"Unknown context `\"+a+\"`\");return r=t.context[a].call(t,n),t.scanner.eof||t.error(),r}},$n=\"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/\".split(\"\"),Qn=function(e){if(0<=e&&e<$n.length)return $n[e];throw new TypeError(\"Must be between 0 and 63: \"+e)};var Xn=function(e){var t,n=\"\",r=function(e){return e<0?1+(-e<<1):0+(e<<1)}(e);do{t=31&r,(r>>>=5)>0&&(t|=32),n+=Qn(t)}while(r>0);return n};function Zn(e){return e&&e.default||e}var Jn=function(e,t){return e(t={exports:{}},t.exports),t.exports}((function(e,t){t.getArg=function(e,t,n){if(t in e)return e[t];if(3===arguments.length)return n;throw new Error('\"'+t+'\" is a required argument.')};var n=/^(?:([\\w+\\-.]+):)?\\/\\/(?:(\\w+:\\w+)@)?([\\w.-]*)(?::(\\d+))?(.*)$/,r=/^data:.+\\,.+$/;function a(e){var t=e.match(n);return t?{scheme:t[1],auth:t[2],host:t[3],port:t[4],path:t[5]}:null}function i(e){var t=\"\";return e.scheme&&(t+=e.scheme+\":\"),t+=\"//\",e.auth&&(t+=e.auth+\"@\"),e.host&&(t+=e.host),e.port&&(t+=\":\"+e.port),e.path&&(t+=e.path),t}function o(e){var n=e,r=a(e);if(r){if(!r.path)return e;n=r.path}for(var o,s=t.isAbsolute(n),l=n.split(/\\/+/),c=0,u=l.length-1;u>=0;u--)\".\"===(o=l[u])?l.splice(u,1):\"..\"===o?c++:c>0&&(\"\"===o?(l.splice(u+1,c),c=0):(l.splice(u,2),c--));return\"\"===(n=l.join(\"/\"))&&(n=s?\"/\":\".\"),r?(r.path=n,i(r)):n}function s(e,t){\"\"===e&&(e=\".\"),\"\"===t&&(t=\".\");var n=a(t),s=a(e);if(s&&(e=s.path||\"/\"),n&&!n.scheme)return s&&(n.scheme=s.scheme),i(n);if(n||t.match(r))return t;if(s&&!s.host&&!s.path)return s.host=t,i(s);var l=\"/\"===t.charAt(0)?t:o(e.replace(/\\/+$/,\"\")+\"/\"+t);return s?(s.path=l,i(s)):l}t.urlParse=a,t.urlGenerate=i,t.normalize=o,t.join=s,t.isAbsolute=function(e){return\"/\"===e.charAt(0)||n.test(e)},t.relative=function(e,t){\"\"===e&&(e=\".\"),e=e.replace(/\\/$/,\"\");for(var n=0;0!==t.indexOf(e+\"/\");){var r=e.lastIndexOf(\"/\");if(r<0)return t;if((e=e.slice(0,r)).match(/^([^\\/]+:\\/)?\\/*$/))return t;++n}return Array(n+1).join(\"../\")+t.substr(e.length+1)};var l=!(\"__proto__\"in Object.create(null));function c(e){return e}function u(e){if(!e)return!1;var t=e.length;if(t<9)return!1;if(95!==e.charCodeAt(t-1)||95!==e.charCodeAt(t-2)||111!==e.charCodeAt(t-3)||116!==e.charCodeAt(t-4)||111!==e.charCodeAt(t-5)||114!==e.charCodeAt(t-6)||112!==e.charCodeAt(t-7)||95!==e.charCodeAt(t-8)||95!==e.charCodeAt(t-9))return!1;for(var n=t-10;n>=0;n--)if(36!==e.charCodeAt(n))return!1;return!0}function h(e,t){return e===t?0:null===e?1:null===t?-1:e>t?1:-1}t.toSetString=l?c:function(e){return u(e)?\"$\"+e:e},t.fromSetString=l?c:function(e){return u(e)?e.slice(1):e},t.compareByOriginalPositions=function(e,t,n){var r=h(e.source,t.source);return 0!==r||0!==(r=e.originalLine-t.originalLine)||0!==(r=e.originalColumn-t.originalColumn)||n||0!==(r=e.generatedColumn-t.generatedColumn)||0!==(r=e.generatedLine-t.generatedLine)?r:h(e.name,t.name)},t.compareByGeneratedPositionsDeflated=function(e,t,n){var r=e.generatedLine-t.generatedLine;return 0!==r||0!==(r=e.generatedColumn-t.generatedColumn)||n||0!==(r=h(e.source,t.source))||0!==(r=e.originalLine-t.originalLine)||0!==(r=e.originalColumn-t.originalColumn)?r:h(e.name,t.name)},t.compareByGeneratedPositionsInflated=function(e,t){var n=e.generatedLine-t.generatedLine;return 0!==n||0!==(n=e.generatedColumn-t.generatedColumn)||0!==(n=h(e.source,t.source))||0!==(n=e.originalLine-t.originalLine)||0!==(n=e.originalColumn-t.originalColumn)?n:h(e.name,t.name)},t.parseSourceMapInput=function(e){return JSON.parse(e.replace(/^\\)]}'[^\\n]*\\n/,\"\"))},t.computeSourceURL=function(e,t,n){if(t=t||\"\",e&&(\"/\"!==e[e.length-1]&&\"/\"!==t[0]&&(e+=\"/\"),t=e+t),n){var r=a(n);if(!r)throw new Error(\"sourceMapURL could not be parsed\");if(r.path){var l=r.path.lastIndexOf(\"/\");l>=0&&(r.path=r.path.substring(0,l+1))}t=s(i(r),t)}return o(t)}})),er=(Jn.getArg,Jn.urlParse,Jn.urlGenerate,Jn.normalize,Jn.join,Jn.isAbsolute,Jn.relative,Jn.toSetString,Jn.fromSetString,Jn.compareByOriginalPositions,Jn.compareByGeneratedPositionsDeflated,Jn.compareByGeneratedPositionsInflated,Jn.parseSourceMapInput,Jn.computeSourceURL,Object.prototype.hasOwnProperty),tr=\"undefined\"!=typeof Map;function nr(){this._array=[],this._set=tr?new Map:Object.create(null)}nr.fromArray=function(e,t){for(var n=new nr,r=0,a=e.length;r<a;r++)n.add(e[r],t);return n},nr.prototype.size=function(){return tr?this._set.size:Object.getOwnPropertyNames(this._set).length},nr.prototype.add=function(e,t){var n=tr?e:Jn.toSetString(e),r=tr?this.has(e):er.call(this._set,n),a=this._array.length;r&&!t||this._array.push(e),r||(tr?this._set.set(e,a):this._set[n]=a)},nr.prototype.has=function(e){if(tr)return this._set.has(e);var t=Jn.toSetString(e);return er.call(this._set,t)},nr.prototype.indexOf=function(e){if(tr){var t=this._set.get(e);if(t>=0)return t}else{var n=Jn.toSetString(e);if(er.call(this._set,n))return this._set[n]}throw new Error('\"'+e+'\" is not in the set.')},nr.prototype.at=function(e){if(e>=0&&e<this._array.length)return this._array[e];throw new Error(\"No element indexed by \"+e)},nr.prototype.toArray=function(){return this._array.slice()};var rr={ArraySet:nr};function ar(){this._array=[],this._sorted=!0,this._last={generatedLine:-1,generatedColumn:0}}ar.prototype.unsortedForEach=function(e,t){this._array.forEach(e,t)},ar.prototype.add=function(e){var t,n,r,a,i,o;t=this._last,n=e,r=t.generatedLine,a=n.generatedLine,i=t.generatedColumn,o=n.generatedColumn,a>r||a==r&&o>=i||Jn.compareByGeneratedPositionsInflated(t,n)<=0?(this._last=e,this._array.push(e)):(this._sorted=!1,this._array.push(e))},ar.prototype.toArray=function(){return this._sorted||(this._array.sort(Jn.compareByGeneratedPositionsInflated),this._sorted=!0),this._array};var ir=rr.ArraySet,or={MappingList:ar}.MappingList;function sr(e){e||(e={}),this._file=Jn.getArg(e,\"file\",null),this._sourceRoot=Jn.getArg(e,\"sourceRoot\",null),this._skipValidation=Jn.getArg(e,\"skipValidation\",!1),this._sources=new ir,this._names=new ir,this._mappings=new or,this._sourcesContents=null}sr.prototype._version=3,sr.fromSourceMap=function(e){var t=e.sourceRoot,n=new sr({file:e.file,sourceRoot:t});return e.eachMapping((function(e){var r={generated:{line:e.generatedLine,column:e.generatedColumn}};null!=e.source&&(r.source=e.source,null!=t&&(r.source=Jn.relative(t,r.source)),r.original={line:e.originalLine,column:e.originalColumn},null!=e.name&&(r.name=e.name)),n.addMapping(r)})),e.sources.forEach((function(r){var a=r;null!==t&&(a=Jn.relative(t,r)),n._sources.has(a)||n._sources.add(a);var i=e.sourceContentFor(r);null!=i&&n.setSourceContent(r,i)})),n},sr.prototype.addMapping=function(e){var t=Jn.getArg(e,\"generated\"),n=Jn.getArg(e,\"original\",null),r=Jn.getArg(e,\"source\",null),a=Jn.getArg(e,\"name\",null);this._skipValidation||this._validateMapping(t,n,r,a),null!=r&&(r=String(r),this._sources.has(r)||this._sources.add(r)),null!=a&&(a=String(a),this._names.has(a)||this._names.add(a)),this._mappings.add({generatedLine:t.line,generatedColumn:t.column,originalLine:null!=n&&n.line,originalColumn:null!=n&&n.column,source:r,name:a})},sr.prototype.setSourceContent=function(e,t){var n=e;null!=this._sourceRoot&&(n=Jn.relative(this._sourceRoot,n)),null!=t?(this._sourcesContents||(this._sourcesContents=Object.create(null)),this._sourcesContents[Jn.toSetString(n)]=t):this._sourcesContents&&(delete this._sourcesContents[Jn.toSetString(n)],0===Object.keys(this._sourcesContents).length&&(this._sourcesContents=null))},sr.prototype.applySourceMap=function(e,t,n){var r=t;if(null==t){if(null==e.file)throw new Error('SourceMapGenerator.prototype.applySourceMap requires either an explicit source file, or the source map\\'s \"file\" property. Both were omitted.');r=e.file}var a=this._sourceRoot;null!=a&&(r=Jn.relative(a,r));var i=new ir,o=new ir;this._mappings.unsortedForEach((function(t){if(t.source===r&&null!=t.originalLine){var s=e.originalPositionFor({line:t.originalLine,column:t.originalColumn});null!=s.source&&(t.source=s.source,null!=n&&(t.source=Jn.join(n,t.source)),null!=a&&(t.source=Jn.relative(a,t.source)),t.originalLine=s.line,t.originalColumn=s.column,null!=s.name&&(t.name=s.name))}var l=t.source;null==l||i.has(l)||i.add(l);var c=t.name;null==c||o.has(c)||o.add(c)}),this),this._sources=i,this._names=o,e.sources.forEach((function(t){var r=e.sourceContentFor(t);null!=r&&(null!=n&&(t=Jn.join(n,t)),null!=a&&(t=Jn.relative(a,t)),this.setSourceContent(t,r))}),this)},sr.prototype._validateMapping=function(e,t,n,r){if(t&&\"number\"!=typeof t.line&&\"number\"!=typeof t.column)throw new Error(\"original.line and original.column are not numbers -- you probably meant to omit the original mapping entirely and only map the generated position. If so, pass null for the original mapping instead of an object with empty or null values.\");if((!(e&&\"line\"in e&&\"column\"in e&&e.line>0&&e.column>=0)||t||n||r)&&!(e&&\"line\"in e&&\"column\"in e&&t&&\"line\"in t&&\"column\"in t&&e.line>0&&e.column>=0&&t.line>0&&t.column>=0&&n))throw new Error(\"Invalid mapping: \"+JSON.stringify({generated:e,source:n,original:t,name:r}))},sr.prototype._serializeMappings=function(){for(var e,t,n,r,a=0,i=1,o=0,s=0,l=0,c=0,u=\"\",h=this._mappings.toArray(),d=0,p=h.length;d<p;d++){if(e=\"\",(t=h[d]).generatedLine!==i)for(a=0;t.generatedLine!==i;)e+=\";\",i++;else if(d>0){if(!Jn.compareByGeneratedPositionsInflated(t,h[d-1]))continue;e+=\",\"}e+=Xn(t.generatedColumn-a),a=t.generatedColumn,null!=t.source&&(r=this._sources.indexOf(t.source),e+=Xn(r-c),c=r,e+=Xn(t.originalLine-1-s),s=t.originalLine-1,e+=Xn(t.originalColumn-o),o=t.originalColumn,null!=t.name&&(n=this._names.indexOf(t.name),e+=Xn(n-l),l=n)),u+=e}return u},sr.prototype._generateSourcesContent=function(e,t){return e.map((function(e){if(!this._sourcesContents)return null;null!=t&&(e=Jn.relative(t,e));var n=Jn.toSetString(e);return Object.prototype.hasOwnProperty.call(this._sourcesContents,n)?this._sourcesContents[n]:null}),this)},sr.prototype.toJSON=function(){var e={version:this._version,sources:this._sources.toArray(),names:this._names.toArray(),mappings:this._serializeMappings()};return null!=this._file&&(e.file=this._file),null!=this._sourceRoot&&(e.sourceRoot=this._sourceRoot),this._sourcesContents&&(e.sourcesContent=this._generateSourcesContent(e.sources,e.sourceRoot)),e},sr.prototype.toString=function(){return JSON.stringify(this.toJSON())};var lr={SourceMapGenerator:sr}.SourceMapGenerator,cr={Atrule:!0,Selector:!0,Declaration:!0},ur=Object.prototype.hasOwnProperty;function hr(e,t){var n=e.children,r=null;\"function\"!=typeof t?n.forEach(this.node,this):n.forEach((function(e){null!==r&&t.call(this,r),this.node(e),r=e}),this)}var dr=function(e){function t(e){if(!ur.call(n,e.type))throw new Error(\"Unknown node type: \"+e.type);n[e.type].call(this,e)}var n={};if(e.node)for(var r in e.node)n[r]=e.node[r].generate;return function(e,n){var r=\"\",a={children:hr,node:t,chunk:function(e){r+=e},result:function(){return r}};return n&&(\"function\"==typeof n.decorator&&(a=n.decorator(a)),n.sourceMap&&(a=function(e){var t=new lr,n=1,r=0,a={line:1,column:0},i={line:0,column:0},o=!1,s={line:1,column:0},l={generated:s},c=e.node;e.node=function(e){if(e.loc&&e.loc.start&&cr.hasOwnProperty(e.type)){var u=e.loc.start.line,h=e.loc.start.column-1;i.line===u&&i.column===h||(i.line=u,i.column=h,a.line=n,a.column=r,o&&(o=!1,a.line===s.line&&a.column===s.column||t.addMapping(l)),o=!0,t.addMapping({source:e.loc.source,original:i,generated:a}))}c.call(this,e),o&&cr.hasOwnProperty(e.type)&&(s.line=n,s.column=r)};var u=e.chunk;e.chunk=function(e){for(var t=0;t<e.length;t++)10===e.charCodeAt(t)?(n++,r=0):r++;u(e)};var h=e.result;return e.result=function(){return o&&t.addMapping(l),{css:h(),map:t}},e}(a))),a.node(e),a.result()}},pr=Object.prototype.hasOwnProperty,fr=function(){};function mr(e){return\"function\"==typeof e?e:fr}function gr(e,t){return function(n,r,a){n.type===t&&e.call(this,n,r,a)}}function br(e,t){var n=t.structure,r=[];for(var a in n)if(!1!==pr.call(n,a)){var i=n[a],o={name:a,type:!1,nullable:!1};Array.isArray(n[a])||(i=[n[a]]);for(var s=0;s<i.length;s++){var l=i[s];null===l?o.nullable=!0:\"string\"==typeof l?o.type=\"node\":Array.isArray(l)&&(o.type=\"list\")}o.type&&r.push(o)}return r.length?{context:t.walkContext,fields:r}:null}function yr(e,t){var n=e.fields.slice(),r=e.context,a=\"string\"==typeof r;return t&&n.reverse(),function(e,i,o){var s;a&&(s=i[r],i[r]=e);for(var l=0;l<n.length;l++){var c=n[l],u=e[c.name];c.nullable&&!u||(\"list\"===c.type?t?u.forEachRight(o):u.forEach(o):o(u))}a&&(i[r]=s)}}function kr(e){return{Atrule:{StyleSheet:e.StyleSheet,Atrule:e.Atrule,Rule:e.Rule,Block:e.Block},Rule:{StyleSheet:e.StyleSheet,Atrule:e.Atrule,Rule:e.Rule,Block:e.Block},Declaration:{StyleSheet:e.StyleSheet,Atrule:e.Atrule,Rule:e.Rule,Block:e.Block,DeclarationList:e.DeclarationList}}}var vr=function(e){var t=function(e){var t={};for(var n in e.node)if(pr.call(e.node,n)){var r=e.node[n];if(!r.structure)throw new Error(\"Missed `structure` field in `\"+n+\"` node type definition\");t[n]=br(0,r)}return t}(e),n={},r={};for(var a in t)pr.call(t,a)&&null!==t[a]&&(n[a]=yr(t[a],!1),r[a]=yr(t[a],!0));var i=kr(n),o=kr(r),s=function(e,a){var s=fr,l=fr,c=n,u={root:e,stylesheet:null,atrule:null,atrulePrelude:null,rule:null,selector:null,block:null,declaration:null,function:null};if(\"function\"==typeof a)s=a;else if(a&&(s=mr(a.enter),l=mr(a.leave),a.reverse&&(c=r),a.visit)){if(i.hasOwnProperty(a.visit))c=a.reverse?o[a.visit]:i[a.visit];else if(!t.hasOwnProperty(a.visit))throw new Error(\"Bad value `\"+a.visit+\"` for `visit` option (should be: \"+Object.keys(t).join(\", \")+\")\");s=gr(s,a.visit),l=gr(l,a.visit)}if(s===fr&&l===fr)throw new Error(\"Neither `enter` nor `leave` walker handler is set or both aren't a function\");if(a.reverse){var h=s;s=l,l=h}!function e(t,n,r){s.call(u,t,n,r),c.hasOwnProperty(t.type)&&c[t.type](t,u,e),l.call(u,t,n,r)}(e)};return s.find=function(e,t){var n=null;return s(e,(function(e,r,a){null===n&&t.call(this,e,r,a)&&(n=e)})),n},s.findLast=function(e,t){var n=null;return s(e,{reverse:!0,enter:function(e,r,a){null===n&&t.call(this,e,r,a)&&(n=e)}}),n},s.findAll=function(e,t){var n=[];return s(e,(function(e,r,a){t.call(this,e,r,a)&&n.push(e)})),n},s},wr=function e(t){var n={};for(var r in t){var a=t[r];a&&(Array.isArray(a)||a instanceof o?a=a.map(e):a.constructor===Object&&(a=e(a))),n[r]=a}return n},xr=Object.prototype.hasOwnProperty,Sr={generic:!0,types:{},atrules:{},properties:{},parseContext:{},scope:{},atrule:[\"parse\"],pseudo:[\"parse\"],node:[\"name\",\"structure\",\"parse\",\"generate\",\"walkContext\"]};function Cr(e){return e&&e.constructor===Object}function Ar(e){return Cr(e)?Object.assign({},e):e}function zr(e,t){for(var n in t)xr.call(t,n)&&(Cr(e[n])?zr(e[n],Ar(t[n])):e[n]=Ar(t[n]))}var Pr=function(e,t){return function e(t,n,r){for(var a in r)if(!1!==xr.call(r,a))if(!0===r[a])a in n&&xr.call(n,a)&&(t[a]=Ar(n[a]));else if(r[a]){if(Cr(r[a]))zr(i={},t[a]),zr(i,n[a]),t[a]=i;else if(Array.isArray(r[a])){var i={},o=r[a].reduce((function(e,t){return e[t]=!0,e}),{});for(var s in t[a])xr.call(t[a],s)&&(i[s]={},t[a]&&t[a][s]&&e(i[s],t[a][s],o));for(var s in n[a])xr.call(n[a],s)&&(i[s]||(i[s]={}),n[a]&&n[a][s]&&e(i[s],n[a][s],o));t[a]=i}}return t}(e,t,Sr)};function Lr(e){var t=Gn(e),n=vr(e),r=dr(e),a=function(e){return{fromPlainObject:function(t){return e(t,{enter:function(e){e.children&&e.children instanceof o==!1&&(e.children=(new o).fromArray(e.children))}}),t},toPlainObject:function(t){return e(t,{leave:function(e){e.children&&e.children instanceof o&&(e.children=e.children.toArray())}}),t}}}(n),i={List:o,SyntaxError:c,TokenStream:V,Lexer:Pn,vendorPrefix:ae.vendorPrefix,keyword:ae.keyword,property:ae.property,isCustomProperty:ae.isCustomProperty,definitionSyntax:Ln,lexer:null,createLexer:function(e){return new Pn(e,i,i.lexer.structure)},tokenize:Se,parse:t,walk:n,generate:r,find:n.find,findLast:n.findLast,findAll:n.findAll,clone:wr,fromPlainObject:a.fromPlainObject,toPlainObject:a.toPlainObject,createSyntax:function(e){return Lr(Pr({},e))},fork:function(t){var n=Pr({},e);return Lr(\"function\"==typeof t?t(n,Object.assign):Pr(n,t))}};return i.lexer=new Pn({generic:!0,types:e.types,atrules:e.atrules,properties:e.properties,node:e.node},i),i}var Tr=function(e){return Lr(Pr({},e))},Er={\"absolute-size\":\"xx-small|x-small|small|medium|large|x-large|xx-large\",\"alpha-value\":\"<number>|<percentage>\",\"angle-percentage\":\"<angle>|<percentage>\",\"angular-color-hint\":\"<angle-percentage>\",\"angular-color-stop\":\"<color>&&<color-stop-angle>?\",\"angular-color-stop-list\":\"[<angular-color-stop> [, <angular-color-hint>]?]# , <angular-color-stop>\",\"animateable-feature\":\"scroll-position|contents|<custom-ident>\",attachment:\"scroll|fixed|local\",\"attr()\":\"attr( <attr-name> <type-or-unit>? [, <attr-fallback>]? )\",\"attr-matcher\":\"['~'|'|'|'^'|'$'|'*']? '='\",\"attr-modifier\":\"i|s\",\"attribute-selector\":\"'[' <wq-name> ']'|'[' <wq-name> <attr-matcher> [<string-token>|<ident-token>] <attr-modifier>? ']'\",\"auto-repeat\":\"repeat( [auto-fill|auto-fit] , [<line-names>? <fixed-size>]+ <line-names>? )\",\"auto-track-list\":\"[<line-names>? [<fixed-size>|<fixed-repeat>]]* <line-names>? <auto-repeat> [<line-names>? [<fixed-size>|<fixed-repeat>]]* <line-names>?\",\"baseline-position\":\"[first|last]? baseline\",\"basic-shape\":\"<inset()>|<circle()>|<ellipse()>|<polygon()>\",\"bg-image\":\"none|<image>\",\"bg-layer\":\"<bg-image>||<bg-position> [/ <bg-size>]?||<repeat-style>||<attachment>||<box>||<box>\",\"bg-position\":\"[[left|center|right|top|bottom|<length-percentage>]|[left|center|right|<length-percentage>] [top|center|bottom|<length-percentage>]|[center|[left|right] <length-percentage>?]&&[center|[top|bottom] <length-percentage>?]]\",\"bg-size\":\"[<length-percentage>|auto]{1,2}|cover|contain\",\"blur()\":\"blur( <length> )\",\"blend-mode\":\"normal|multiply|screen|overlay|darken|lighten|color-dodge|color-burn|hard-light|soft-light|difference|exclusion|hue|saturation|color|luminosity\",box:\"border-box|padding-box|content-box\",\"brightness()\":\"brightness( <number-percentage> )\",\"calc()\":\"calc( <calc-sum> )\",\"calc-sum\":\"<calc-product> [['+'|'-'] <calc-product>]*\",\"calc-product\":\"<calc-value> ['*' <calc-value>|'/' <number>]*\",\"calc-value\":\"<number>|<dimension>|<percentage>|( <calc-sum> )\",\"cf-final-image\":\"<image>|<color>\",\"cf-mixing-image\":\"<percentage>?&&<image>\",\"circle()\":\"circle( [<shape-radius>]? [at <position>]? )\",\"clamp()\":\"clamp( <calc-sum>#{3} )\",\"class-selector\":\"'.' <ident-token>\",\"clip-source\":\"<url>\",color:\"<rgb()>|<rgba()>|<hsl()>|<hsla()>|<hex-color>|<named-color>|currentcolor|<deprecated-system-color>\",\"color-stop\":\"<color-stop-length>|<color-stop-angle>\",\"color-stop-angle\":\"<angle-percentage>{1,2}\",\"color-stop-length\":\"<length-percentage>{1,2}\",\"color-stop-list\":\"[<linear-color-stop> [, <linear-color-hint>]?]# , <linear-color-stop>\",combinator:\"'>'|'+'|'~'|['||']\",\"common-lig-values\":\"[common-ligatures|no-common-ligatures]\",compat:\"searchfield|textarea|push-button|button-bevel|slider-horizontal|checkbox|radio|square-button|menulist|menulist-button|listbox|meter|progress-bar\",\"composite-style\":\"clear|copy|source-over|source-in|source-out|source-atop|destination-over|destination-in|destination-out|destination-atop|xor\",\"compositing-operator\":\"add|subtract|intersect|exclude\",\"compound-selector\":\"[<type-selector>? <subclass-selector>* [<pseudo-element-selector> <pseudo-class-selector>*]*]!\",\"compound-selector-list\":\"<compound-selector>#\",\"complex-selector\":\"<compound-selector> [<combinator>? <compound-selector>]*\",\"complex-selector-list\":\"<complex-selector>#\",\"conic-gradient()\":\"conic-gradient( [from <angle>]? [at <position>]? , <angular-color-stop-list> )\",\"contextual-alt-values\":\"[contextual|no-contextual]\",\"content-distribution\":\"space-between|space-around|space-evenly|stretch\",\"content-list\":\"[<string>|contents|<url>|<quote>|<attr()>|counter( <ident> , <'list-style-type'>? )]+\",\"content-position\":\"center|start|end|flex-start|flex-end\",\"content-replacement\":\"<image>\",\"contrast()\":\"contrast( [<number-percentage>] )\",\"counter()\":\"counter( <custom-ident> , [<counter-style>|none]? )\",\"counter-style\":\"<counter-style-name>|symbols( )\",\"counter-style-name\":\"<custom-ident>\",\"counters()\":\"counters( <custom-ident> , <string> , [<counter-style>|none]? )\",\"cross-fade()\":\"cross-fade( <cf-mixing-image> , <cf-final-image>? )\",\"cubic-bezier-timing-function\":\"ease|ease-in|ease-out|ease-in-out|cubic-bezier( <number> , <number> , <number> , <number> )\",\"deprecated-system-color\":\"ActiveBorder|ActiveCaption|AppWorkspace|Background|ButtonFace|ButtonHighlight|ButtonShadow|ButtonText|CaptionText|GrayText|Highlight|HighlightText|InactiveBorder|InactiveCaption|InactiveCaptionText|InfoBackground|InfoText|Menu|MenuText|Scrollbar|ThreeDDarkShadow|ThreeDFace|ThreeDHighlight|ThreeDLightShadow|ThreeDShadow|Window|WindowFrame|WindowText\",\"discretionary-lig-values\":\"[discretionary-ligatures|no-discretionary-ligatures]\",\"display-box\":\"contents|none\",\"display-inside\":\"flow|flow-root|table|flex|grid|ruby\",\"display-internal\":\"table-row-group|table-header-group|table-footer-group|table-row|table-cell|table-column-group|table-column|table-caption|ruby-base|ruby-text|ruby-base-container|ruby-text-container\",\"display-legacy\":\"inline-block|inline-list-item|inline-table|inline-flex|inline-grid\",\"display-listitem\":\"<display-outside>?&&[flow|flow-root]?&&list-item\",\"display-outside\":\"block|inline|run-in\",\"drop-shadow()\":\"drop-shadow( <length>{2,3} <color>? )\",\"east-asian-variant-values\":\"[jis78|jis83|jis90|jis04|simplified|traditional]\",\"east-asian-width-values\":\"[full-width|proportional-width]\",\"element()\":\"element( <id-selector> )\",\"ellipse()\":\"ellipse( [<shape-radius>{2}]? [at <position>]? )\",\"ending-shape\":\"circle|ellipse\",\"env()\":\"env( <custom-ident> , <declaration-value>? )\",\"explicit-track-list\":\"[<line-names>? <track-size>]+ <line-names>?\",\"family-name\":\"<string>|<custom-ident>+\",\"feature-tag-value\":\"<string> [<integer>|on|off]?\",\"feature-type\":\"@stylistic|@historical-forms|@styleset|@character-variant|@swash|@ornaments|@annotation\",\"feature-value-block\":\"<feature-type> '{' <feature-value-declaration-list> '}'\",\"feature-value-block-list\":\"<feature-value-block>+\",\"feature-value-declaration\":\"<custom-ident> : <integer>+ ;\",\"feature-value-declaration-list\":\"<feature-value-declaration>\",\"feature-value-name\":\"<custom-ident>\",\"fill-rule\":\"nonzero|evenodd\",\"filter-function\":\"<blur()>|<brightness()>|<contrast()>|<drop-shadow()>|<grayscale()>|<hue-rotate()>|<invert()>|<opacity()>|<saturate()>|<sepia()>\",\"filter-function-list\":\"[<filter-function>|<url>]+\",\"final-bg-layer\":\"<'background-color'>||<bg-image>||<bg-position> [/ <bg-size>]?||<repeat-style>||<attachment>||<box>||<box>\",\"fit-content()\":\"fit-content( [<length>|<percentage>] )\",\"fixed-breadth\":\"<length-percentage>\",\"fixed-repeat\":\"repeat( [<positive-integer>] , [<line-names>? <fixed-size>]+ <line-names>? )\",\"fixed-size\":\"<fixed-breadth>|minmax( <fixed-breadth> , <track-breadth> )|minmax( <inflexible-breadth> , <fixed-breadth> )\",\"font-stretch-absolute\":\"normal|ultra-condensed|extra-condensed|condensed|semi-condensed|semi-expanded|expanded|extra-expanded|ultra-expanded|<percentage>\",\"font-variant-css21\":\"[normal|small-caps]\",\"font-weight-absolute\":\"normal|bold|<number>\",\"frequency-percentage\":\"<frequency>|<percentage>\",\"general-enclosed\":\"[<function-token> <any-value> )]|( <ident> <any-value> )\",\"generic-family\":\"serif|sans-serif|cursive|fantasy|monospace|-apple-system\",\"generic-name\":\"serif|sans-serif|cursive|fantasy|monospace\",\"geometry-box\":\"<shape-box>|fill-box|stroke-box|view-box\",gradient:\"<linear-gradient()>|<repeating-linear-gradient()>|<radial-gradient()>|<repeating-radial-gradient()>|<conic-gradient()>|<-legacy-gradient>\",\"grayscale()\":\"grayscale( <number-percentage> )\",\"grid-line\":\"auto|<custom-ident>|[<integer>&&<custom-ident>?]|[span&&[<integer>||<custom-ident>]]\",\"historical-lig-values\":\"[historical-ligatures|no-historical-ligatures]\",\"hsl()\":\"hsl( <hue> <percentage> <percentage> [/ <alpha-value>]? )|hsl( <hue> , <percentage> , <percentage> , <alpha-value>? )\",\"hsla()\":\"hsla( <hue> <percentage> <percentage> [/ <alpha-value>]? )|hsla( <hue> , <percentage> , <percentage> , <alpha-value>? )\",hue:\"<number>|<angle>\",\"hue-rotate()\":\"hue-rotate( <angle> )\",image:\"<url>|<image()>|<image-set()>|<element()>|<cross-fade()>|<gradient>\",\"image()\":\"image( <image-tags>? [<image-src>? , <color>?]! )\",\"image-set()\":\"image-set( <image-set-option># )\",\"image-set-option\":\"[<image>|<string>] <resolution>\",\"image-src\":\"<url>|<string>\",\"image-tags\":\"ltr|rtl\",\"inflexible-breadth\":\"<length>|<percentage>|min-content|max-content|auto\",\"inset()\":\"inset( <length-percentage>{1,4} [round <'border-radius'>]? )\",\"invert()\":\"invert( <number-percentage> )\",\"keyframes-name\":\"<custom-ident>|<string>\",\"keyframe-block\":\"<keyframe-selector># { <declaration-list> }\",\"keyframe-block-list\":\"<keyframe-block>+\",\"keyframe-selector\":\"from|to|<percentage>\",\"leader()\":\"leader( <leader-type> )\",\"leader-type\":\"dotted|solid|space|<string>\",\"length-percentage\":\"<length>|<percentage>\",\"line-names\":\"'[' <custom-ident>* ']'\",\"line-name-list\":\"[<line-names>|<name-repeat>]+\",\"line-style\":\"none|hidden|dotted|dashed|solid|double|groove|ridge|inset|outset\",\"line-width\":\"<length>|thin|medium|thick\",\"linear-color-hint\":\"<length-percentage>\",\"linear-color-stop\":\"<color> <color-stop-length>?\",\"linear-gradient()\":\"linear-gradient( [<angle>|to <side-or-corner>]? , <color-stop-list> )\",\"mask-layer\":\"<mask-reference>||<position> [/ <bg-size>]?||<repeat-style>||<geometry-box>||[<geometry-box>|no-clip]||<compositing-operator>||<masking-mode>\",\"mask-position\":\"[<length-percentage>|left|center|right] [<length-percentage>|top|center|bottom]?\",\"mask-reference\":\"none|<image>|<mask-source>\",\"mask-source\":\"<url>\",\"masking-mode\":\"alpha|luminance|match-source\",\"matrix()\":\"matrix( <number>#{6} )\",\"matrix3d()\":\"matrix3d( <number>#{16} )\",\"max()\":\"max( <calc-sum># )\",\"media-and\":\"<media-in-parens> [and <media-in-parens>]+\",\"media-condition\":\"<media-not>|<media-and>|<media-or>|<media-in-parens>\",\"media-condition-without-or\":\"<media-not>|<media-and>|<media-in-parens>\",\"media-feature\":\"( [<mf-plain>|<mf-boolean>|<mf-range>] )\",\"media-in-parens\":\"( <media-condition> )|<media-feature>|<general-enclosed>\",\"media-not\":\"not <media-in-parens>\",\"media-or\":\"<media-in-parens> [or <media-in-parens>]+\",\"media-query\":\"<media-condition>|[not|only]? <media-type> [and <media-condition-without-or>]?\",\"media-query-list\":\"<media-query>#\",\"media-type\":\"<ident>\",\"mf-boolean\":\"<mf-name>\",\"mf-name\":\"<ident>\",\"mf-plain\":\"<mf-name> : <mf-value>\",\"mf-range\":\"<mf-name> ['<'|'>']? '='? <mf-value>|<mf-value> ['<'|'>']? '='? <mf-name>|<mf-value> '<' '='? <mf-name> '<' '='? <mf-value>|<mf-value> '>' '='? <mf-name> '>' '='? <mf-value>\",\"mf-value\":\"<number>|<dimension>|<ident>|<ratio>\",\"min()\":\"min( <calc-sum># )\",\"minmax()\":\"minmax( [<length>|<percentage>|<flex>|min-content|max-content|auto] , [<length>|<percentage>|<flex>|min-content|max-content|auto] )\",\"named-color\":\"transparent|aliceblue|antiquewhite|aqua|aquamarine|azure|beige|bisque|black|blanchedalmond|blue|blueviolet|brown|burlywood|cadetblue|chartreuse|chocolate|coral|cornflowerblue|cornsilk|crimson|cyan|darkblue|darkcyan|darkgoldenrod|darkgray|darkgreen|darkgrey|darkkhaki|darkmagenta|darkolivegreen|darkorange|darkorchid|darkred|darksalmon|darkseagreen|darkslateblue|darkslategray|darkslategrey|darkturquoise|darkviolet|deeppink|deepskyblue|dimgray|dimgrey|dodgerblue|firebrick|floralwhite|forestgreen|fuchsia|gainsboro|ghostwhite|gold|goldenrod|gray|green|greenyellow|grey|honeydew|hotpink|indianred|indigo|ivory|khaki|lavender|lavenderblush|lawngreen|lemonchiffon|lightblue|lightcoral|lightcyan|lightgoldenrodyellow|lightgray|lightgreen|lightgrey|lightpink|lightsalmon|lightseagreen|lightskyblue|lightslategray|lightslategrey|lightsteelblue|lightyellow|lime|limegreen|linen|magenta|maroon|mediumaquamarine|mediumblue|mediumorchid|mediumpurple|mediumseagreen|mediumslateblue|mediumspringgreen|mediumturquoise|mediumvioletred|midnightblue|mintcream|mistyrose|moccasin|navajowhite|navy|oldlace|olive|olivedrab|orange|orangered|orchid|palegoldenrod|palegreen|paleturquoise|palevioletred|papayawhip|peachpuff|peru|pink|plum|powderblue|purple|rebeccapurple|red|rosybrown|royalblue|saddlebrown|salmon|sandybrown|seagreen|seashell|sienna|silver|skyblue|slateblue|slategray|slategrey|snow|springgreen|steelblue|tan|teal|thistle|tomato|turquoise|violet|wheat|white|whitesmoke|yellow|yellowgreen|<-non-standard-color>\",\"namespace-prefix\":\"<ident>\",\"ns-prefix\":\"[<ident-token>|'*']? '|'\",\"number-percentage\":\"<number>|<percentage>\",\"numeric-figure-values\":\"[lining-nums|oldstyle-nums]\",\"numeric-fraction-values\":\"[diagonal-fractions|stacked-fractions]\",\"numeric-spacing-values\":\"[proportional-nums|tabular-nums]\",nth:\"<an-plus-b>|even|odd\",\"opacity()\":\"opacity( [<number-percentage>] )\",\"overflow-position\":\"unsafe|safe\",\"outline-radius\":\"<length>|<percentage>\",\"page-body\":\"<declaration>? [; <page-body>]?|<page-margin-box> <page-body>\",\"page-margin-box\":\"<page-margin-box-type> '{' <declaration-list> '}'\",\"page-margin-box-type\":\"@top-left-corner|@top-left|@top-center|@top-right|@top-right-corner|@bottom-left-corner|@bottom-left|@bottom-center|@bottom-right|@bottom-right-corner|@left-top|@left-middle|@left-bottom|@right-top|@right-middle|@right-bottom\",\"page-selector-list\":\"[<page-selector>#]?\",\"page-selector\":\"<pseudo-page>+|<ident> <pseudo-page>*\",\"perspective()\":\"perspective( <length> )\",\"polygon()\":\"polygon( <fill-rule>? , [<length-percentage> <length-percentage>]# )\",position:\"[[left|center|right]||[top|center|bottom]|[left|center|right|<length-percentage>] [top|center|bottom|<length-percentage>]?|[[left|right] <length-percentage>]&&[[top|bottom] <length-percentage>]]\",\"pseudo-class-selector\":\"':' <ident-token>|':' <function-token> <any-value> ')'\",\"pseudo-element-selector\":\"':' <pseudo-class-selector>\",\"pseudo-page\":\": [left|right|first|blank]\",quote:\"open-quote|close-quote|no-open-quote|no-close-quote\",\"radial-gradient()\":\"radial-gradient( [<ending-shape>||<size>]? [at <position>]? , <color-stop-list> )\",\"relative-selector\":\"<combinator>? <complex-selector>\",\"relative-selector-list\":\"<relative-selector>#\",\"relative-size\":\"larger|smaller\",\"repeat-style\":\"repeat-x|repeat-y|[repeat|space|round|no-repeat]{1,2}\",\"repeating-linear-gradient()\":\"repeating-linear-gradient( [<angle>|to <side-or-corner>]? , <color-stop-list> )\",\"repeating-radial-gradient()\":\"repeating-radial-gradient( [<ending-shape>||<size>]? [at <position>]? , <color-stop-list> )\",\"rgb()\":\"rgb( <percentage>{3} [/ <alpha-value>]? )|rgb( <number>{3} [/ <alpha-value>]? )|rgb( <percentage>#{3} , <alpha-value>? )|rgb( <number>#{3} , <alpha-value>? )\",\"rgba()\":\"rgba( <percentage>{3} [/ <alpha-value>]? )|rgba( <number>{3} [/ <alpha-value>]? )|rgba( <percentage>#{3} , <alpha-value>? )|rgba( <number>#{3} , <alpha-value>? )\",\"rotate()\":\"rotate( [<angle>|<zero>] )\",\"rotate3d()\":\"rotate3d( <number> , <number> , <number> , [<angle>|<zero>] )\",\"rotateX()\":\"rotateX( [<angle>|<zero>] )\",\"rotateY()\":\"rotateY( [<angle>|<zero>] )\",\"rotateZ()\":\"rotateZ( [<angle>|<zero>] )\",\"saturate()\":\"saturate( <number-percentage> )\",\"scale()\":\"scale( <number> , <number>? )\",\"scale3d()\":\"scale3d( <number> , <number> , <number> )\",\"scaleX()\":\"scaleX( <number> )\",\"scaleY()\":\"scaleY( <number> )\",\"scaleZ()\":\"scaleZ( <number> )\",\"self-position\":\"center|start|end|self-start|self-end|flex-start|flex-end\",\"shape-radius\":\"<length-percentage>|closest-side|farthest-side\",\"skew()\":\"skew( [<angle>|<zero>] , [<angle>|<zero>]? )\",\"skewX()\":\"skewX( [<angle>|<zero>] )\",\"skewY()\":\"skewY( [<angle>|<zero>] )\",\"sepia()\":\"sepia( <number-percentage> )\",shadow:\"inset?&&<length>{2,4}&&<color>?\",\"shadow-t\":\"[<length>{2,3}&&<color>?]\",shape:\"rect( <top> , <right> , <bottom> , <left> )|rect( <top> <right> <bottom> <left> )\",\"shape-box\":\"<box>|margin-box\",\"side-or-corner\":\"[left|right]||[top|bottom]\",\"single-animation\":\"<time>||<timing-function>||<time>||<single-animation-iteration-count>||<single-animation-direction>||<single-animation-fill-mode>||<single-animation-play-state>||[none|<keyframes-name>]\",\"single-animation-direction\":\"normal|reverse|alternate|alternate-reverse\",\"single-animation-fill-mode\":\"none|forwards|backwards|both\",\"single-animation-iteration-count\":\"infinite|<number>\",\"single-animation-play-state\":\"running|paused\",\"single-transition\":\"[none|<single-transition-property>]||<time>||<timing-function>||<time>\",\"single-transition-property\":\"all|<custom-ident>\",size:\"closest-side|farthest-side|closest-corner|farthest-corner|<length>|<length-percentage>{2}\",\"step-position\":\"jump-start|jump-end|jump-none|jump-both|start|end\",\"step-timing-function\":\"step-start|step-end|steps( <integer> [, <step-position>]? )\",\"subclass-selector\":\"<id-selector>|<class-selector>|<attribute-selector>|<pseudo-class-selector>\",\"supports-condition\":\"not <supports-in-parens>|<supports-in-parens> [and <supports-in-parens>]*|<supports-in-parens> [or <supports-in-parens>]*\",\"supports-in-parens\":\"( <supports-condition> )|<supports-feature>|<general-enclosed>\",\"supports-feature\":\"<supports-decl>|<supports-selector-fn>\",\"supports-decl\":\"( <declaration> )\",\"supports-selector-fn\":\"selector( <complex-selector> )\",symbol:\"<string>|<image>|<custom-ident>\",target:\"<target-counter()>|<target-counters()>|<target-text()>\",\"target-counter()\":\"target-counter( [<string>|<url>] , <custom-ident> , <counter-style>? )\",\"target-counters()\":\"target-counters( [<string>|<url>] , <custom-ident> , <string> , <counter-style>? )\",\"target-text()\":\"target-text( [<string>|<url>] , [content|before|after|first-letter]? )\",\"time-percentage\":\"<time>|<percentage>\",\"timing-function\":\"linear|<cubic-bezier-timing-function>|<step-timing-function>\",\"track-breadth\":\"<length-percentage>|<flex>|min-content|max-content|auto\",\"track-list\":\"[<line-names>? [<track-size>|<track-repeat>]]+ <line-names>?\",\"track-repeat\":\"repeat( [<positive-integer>] , [<line-names>? <track-size>]+ <line-names>? )\",\"track-size\":\"<track-breadth>|minmax( <inflexible-breadth> , <track-breadth> )|fit-content( [<length>|<percentage>] )\",\"transform-function\":\"<matrix()>|<translate()>|<translateX()>|<translateY()>|<scale()>|<scaleX()>|<scaleY()>|<rotate()>|<skew()>|<skewX()>|<skewY()>|<matrix3d()>|<translate3d()>|<translateZ()>|<scale3d()>|<scaleZ()>|<rotate3d()>|<rotateX()>|<rotateY()>|<rotateZ()>|<perspective()>\",\"transform-list\":\"<transform-function>+\",\"translate()\":\"translate( <length-percentage> , <length-percentage>? )\",\"translate3d()\":\"translate3d( <length-percentage> , <length-percentage> , <length> )\",\"translateX()\":\"translateX( <length-percentage> )\",\"translateY()\":\"translateY( <length-percentage> )\",\"translateZ()\":\"translateZ( <length> )\",\"type-or-unit\":\"string|color|url|integer|number|length|angle|time|frequency|cap|ch|em|ex|ic|lh|rlh|rem|vb|vi|vw|vh|vmin|vmax|mm|Q|cm|in|pt|pc|px|deg|grad|rad|turn|ms|s|Hz|kHz|%\",\"type-selector\":\"<wq-name>|<ns-prefix>? '*'\",\"var()\":\"var( <custom-property-name> , <declaration-value>? )\",\"viewport-length\":\"auto|<length-percentage>\",\"wq-name\":\"<ns-prefix>? <ident-token>\",\"-legacy-gradient\":\"<-webkit-gradient()>|<-legacy-linear-gradient>|<-legacy-repeating-linear-gradient>|<-legacy-radial-gradient>|<-legacy-repeating-radial-gradient>\",\"-legacy-linear-gradient\":\"-moz-linear-gradient( <-legacy-linear-gradient-arguments> )|-webkit-linear-gradient( <-legacy-linear-gradient-arguments> )|-o-linear-gradient( <-legacy-linear-gradient-arguments> )\",\"-legacy-repeating-linear-gradient\":\"-moz-repeating-linear-gradient( <-legacy-linear-gradient-arguments> )|-webkit-repeating-linear-gradient( <-legacy-linear-gradient-arguments> )|-o-repeating-linear-gradient( <-legacy-linear-gradient-arguments> )\",\"-legacy-linear-gradient-arguments\":\"[<angle>|<side-or-corner>]? , <color-stop-list>\",\"-legacy-radial-gradient\":\"-moz-radial-gradient( <-legacy-radial-gradient-arguments> )|-webkit-radial-gradient( <-legacy-radial-gradient-arguments> )|-o-radial-gradient( <-legacy-radial-gradient-arguments> )\",\"-legacy-repeating-radial-gradient\":\"-moz-repeating-radial-gradient( <-legacy-radial-gradient-arguments> )|-webkit-repeating-radial-gradient( <-legacy-radial-gradient-arguments> )|-o-repeating-radial-gradient( <-legacy-radial-gradient-arguments> )\",\"-legacy-radial-gradient-arguments\":\"[<position> ,]? [[[<-legacy-radial-gradient-shape>||<-legacy-radial-gradient-size>]|[<length>|<percentage>]{2}] ,]? <color-stop-list>\",\"-legacy-radial-gradient-size\":\"closest-side|closest-corner|farthest-side|farthest-corner|contain|cover\",\"-legacy-radial-gradient-shape\":\"circle|ellipse\",\"-non-standard-font\":\"-apple-system-body|-apple-system-headline|-apple-system-subheadline|-apple-system-caption1|-apple-system-caption2|-apple-system-footnote|-apple-system-short-body|-apple-system-short-headline|-apple-system-short-subheadline|-apple-system-short-caption1|-apple-system-short-footnote|-apple-system-tall-body\",\"-non-standard-color\":\"-moz-ButtonDefault|-moz-ButtonHoverFace|-moz-ButtonHoverText|-moz-CellHighlight|-moz-CellHighlightText|-moz-Combobox|-moz-ComboboxText|-moz-Dialog|-moz-DialogText|-moz-dragtargetzone|-moz-EvenTreeRow|-moz-Field|-moz-FieldText|-moz-html-CellHighlight|-moz-html-CellHighlightText|-moz-mac-accentdarkestshadow|-moz-mac-accentdarkshadow|-moz-mac-accentface|-moz-mac-accentlightesthighlight|-moz-mac-accentlightshadow|-moz-mac-accentregularhighlight|-moz-mac-accentregularshadow|-moz-mac-chrome-active|-moz-mac-chrome-inactive|-moz-mac-focusring|-moz-mac-menuselect|-moz-mac-menushadow|-moz-mac-menutextselect|-moz-MenuHover|-moz-MenuHoverText|-moz-MenuBarText|-moz-MenuBarHoverText|-moz-nativehyperlinktext|-moz-OddTreeRow|-moz-win-communicationstext|-moz-win-mediatext|-moz-activehyperlinktext|-moz-default-background-color|-moz-default-color|-moz-hyperlinktext|-moz-visitedhyperlinktext|-webkit-activelink|-webkit-focus-ring-color|-webkit-link|-webkit-text\",\"-non-standard-image-rendering\":\"optimize-contrast|-moz-crisp-edges|-o-crisp-edges|-webkit-optimize-contrast\",\"-non-standard-overflow\":\"-moz-scrollbars-none|-moz-scrollbars-horizontal|-moz-scrollbars-vertical|-moz-hidden-unscrollable\",\"-non-standard-width\":\"min-intrinsic|intrinsic|-moz-min-content|-moz-max-content|-webkit-min-content|-webkit-max-content\",\"-webkit-gradient()\":\"-webkit-gradient( <-webkit-gradient-type> , <-webkit-gradient-point> [, <-webkit-gradient-point>|, <-webkit-gradient-radius> , <-webkit-gradient-point>] [, <-webkit-gradient-radius>]? [, <-webkit-gradient-color-stop>]* )\",\"-webkit-gradient-color-stop\":\"from( <color> )|color-stop( [<number-zero-one>|<percentage>] , <color> )|to( <color> )\",\"-webkit-gradient-point\":\"[left|center|right|<length-percentage>] [top|center|bottom|<length-percentage>]\",\"-webkit-gradient-radius\":\"<length>|<percentage>\",\"-webkit-gradient-type\":\"linear|radial\",\"-webkit-mask-box-repeat\":\"repeat|stretch|round\",\"-webkit-mask-clip-style\":\"border|border-box|padding|padding-box|content|content-box|text\",\"-ms-filter-function-list\":\"<-ms-filter-function>+\",\"-ms-filter-function\":\"<-ms-filter-function-progid>|<-ms-filter-function-legacy>\",\"-ms-filter-function-progid\":\"'progid:' [<ident-token> '.']* [<ident-token>|<function-token> <any-value>? )]\",\"-ms-filter-function-legacy\":\"<ident-token>|<function-token> <any-value>? )\",\"-ms-filter\":\"<string>\",age:\"child|young|old\",\"attr-name\":\"<wq-name>\",\"attr-fallback\":\"<any-value>\",\"border-radius\":\"<length-percentage>{1,2}\",bottom:\"<length>|auto\",\"generic-voice\":\"[<age>? <gender> <integer>?]\",gender:\"male|female|neutral\",left:\"<length>|auto\",\"mask-image\":\"<mask-reference>#\",\"name-repeat\":\"repeat( [<positive-integer>|auto-fill] , <line-names>+ )\",paint:\"none|<color>|<url> [none|<color>]?|context-fill|context-stroke\",\"path()\":\"path( <string> )\",ratio:\"<integer> / <integer>\",right:\"<length>|auto\",\"svg-length\":\"<percentage>|<length>|<number>\",\"svg-writing-mode\":\"lr-tb|rl-tb|tb-rl|lr|rl|tb\",top:\"<length>|auto\",\"track-group\":\"'(' [<string>* <track-minmax> <string>*]+ ')' ['[' <positive-integer> ']']?|<track-minmax>\",\"track-list-v0\":\"[<string>* <track-group> <string>*]+|none\",\"track-minmax\":\"minmax( <track-breadth> , <track-breadth> )|auto|<track-breadth>|fit-content\",x:\"<number>\",y:\"<number>\",declaration:\"<ident-token> : <declaration-value>? ['!' important]?\",\"declaration-list\":\"[<declaration>? ';']* <declaration>?\",url:\"url( <string> <url-modifier>* )|<url-token>\",\"url-modifier\":\"<ident>|<function-token> <any-value> )\",\"number-zero-one\":\"<number [0,1]>\",\"number-one-or-greater\":\"<number [1,\u221e]>\",\"positive-integer\":\"<integer [0,\u221e]>\"},Or={\"--*\":\"<declaration-value>\",\"-ms-accelerator\":\"false|true\",\"-ms-block-progression\":\"tb|rl|bt|lr\",\"-ms-content-zoom-chaining\":\"none|chained\",\"-ms-content-zooming\":\"none|zoom\",\"-ms-content-zoom-limit\":\"<'-ms-content-zoom-limit-min'> <'-ms-content-zoom-limit-max'>\",\"-ms-content-zoom-limit-max\":\"<percentage>\",\"-ms-content-zoom-limit-min\":\"<percentage>\",\"-ms-content-zoom-snap\":\"<'-ms-content-zoom-snap-type'>||<'-ms-content-zoom-snap-points'>\",\"-ms-content-zoom-snap-points\":\"snapInterval( <percentage> , <percentage> )|snapList( <percentage># )\",\"-ms-content-zoom-snap-type\":\"none|proximity|mandatory\",\"-ms-filter\":\"<string>\",\"-ms-flow-from\":\"[none|<custom-ident>]#\",\"-ms-flow-into\":\"[none|<custom-ident>]#\",\"-ms-high-contrast-adjust\":\"auto|none\",\"-ms-hyphenate-limit-chars\":\"auto|<integer>{1,3}\",\"-ms-hyphenate-limit-lines\":\"no-limit|<integer>\",\"-ms-hyphenate-limit-zone\":\"<percentage>|<length>\",\"-ms-ime-align\":\"auto|after\",\"-ms-overflow-style\":\"auto|none|scrollbar|-ms-autohiding-scrollbar\",\"-ms-scrollbar-3dlight-color\":\"<color>\",\"-ms-scrollbar-arrow-color\":\"<color>\",\"-ms-scrollbar-base-color\":\"<color>\",\"-ms-scrollbar-darkshadow-color\":\"<color>\",\"-ms-scrollbar-face-color\":\"<color>\",\"-ms-scrollbar-highlight-color\":\"<color>\",\"-ms-scrollbar-shadow-color\":\"<color>\",\"-ms-scrollbar-track-color\":\"<color>\",\"-ms-scroll-chaining\":\"chained|none\",\"-ms-scroll-limit\":\"<'-ms-scroll-limit-x-min'> <'-ms-scroll-limit-y-min'> <'-ms-scroll-limit-x-max'> <'-ms-scroll-limit-y-max'>\",\"-ms-scroll-limit-x-max\":\"auto|<length>\",\"-ms-scroll-limit-x-min\":\"<length>\",\"-ms-scroll-limit-y-max\":\"auto|<length>\",\"-ms-scroll-limit-y-min\":\"<length>\",\"-ms-scroll-rails\":\"none|railed\",\"-ms-scroll-snap-points-x\":\"snapInterval( <length-percentage> , <length-percentage> )|snapList( <length-percentage># )\",\"-ms-scroll-snap-points-y\":\"snapInterval( <length-percentage> , <length-percentage> )|snapList( <length-percentage># )\",\"-ms-scroll-snap-type\":\"none|proximity|mandatory\",\"-ms-scroll-snap-x\":\"<'-ms-scroll-snap-type'> <'-ms-scroll-snap-points-x'>\",\"-ms-scroll-snap-y\":\"<'-ms-scroll-snap-type'> <'-ms-scroll-snap-points-y'>\",\"-ms-scroll-translation\":\"none|vertical-to-horizontal\",\"-ms-text-autospace\":\"none|ideograph-alpha|ideograph-numeric|ideograph-parenthesis|ideograph-space\",\"-ms-touch-select\":\"grippers|none\",\"-ms-user-select\":\"none|element|text\",\"-ms-wrap-flow\":\"auto|both|start|end|maximum|clear\",\"-ms-wrap-margin\":\"<length>\",\"-ms-wrap-through\":\"wrap|none\",\"-moz-appearance\":\"none|button|button-arrow-down|button-arrow-next|button-arrow-previous|button-arrow-up|button-bevel|button-focus|caret|checkbox|checkbox-container|checkbox-label|checkmenuitem|dualbutton|groupbox|listbox|listitem|menuarrow|menubar|menucheckbox|menuimage|menuitem|menuitemtext|menulist|menulist-button|menulist-text|menulist-textfield|menupopup|menuradio|menuseparator|meterbar|meterchunk|progressbar|progressbar-vertical|progresschunk|progresschunk-vertical|radio|radio-container|radio-label|radiomenuitem|range|range-thumb|resizer|resizerpanel|scale-horizontal|scalethumbend|scalethumb-horizontal|scalethumbstart|scalethumbtick|scalethumb-vertical|scale-vertical|scrollbarbutton-down|scrollbarbutton-left|scrollbarbutton-right|scrollbarbutton-up|scrollbarthumb-horizontal|scrollbarthumb-vertical|scrollbartrack-horizontal|scrollbartrack-vertical|searchfield|separator|sheet|spinner|spinner-downbutton|spinner-textfield|spinner-upbutton|splitter|statusbar|statusbarpanel|tab|tabpanel|tabpanels|tab-scroll-arrow-back|tab-scroll-arrow-forward|textfield|textfield-multiline|toolbar|toolbarbutton|toolbarbutton-dropdown|toolbargripper|toolbox|tooltip|treeheader|treeheadercell|treeheadersortarrow|treeitem|treeline|treetwisty|treetwistyopen|treeview|-moz-mac-unified-toolbar|-moz-win-borderless-glass|-moz-win-browsertabbar-toolbox|-moz-win-communicationstext|-moz-win-communications-toolbox|-moz-win-exclude-glass|-moz-win-glass|-moz-win-mediatext|-moz-win-media-toolbox|-moz-window-button-box|-moz-window-button-box-maximized|-moz-window-button-close|-moz-window-button-maximize|-moz-window-button-minimize|-moz-window-button-restore|-moz-window-frame-bottom|-moz-window-frame-left|-moz-window-frame-right|-moz-window-titlebar|-moz-window-titlebar-maximized\",\"-moz-binding\":\"<url>|none\",\"-moz-border-bottom-colors\":\"<color>+|none\",\"-moz-border-left-colors\":\"<color>+|none\",\"-moz-border-right-colors\":\"<color>+|none\",\"-moz-border-top-colors\":\"<color>+|none\",\"-moz-context-properties\":\"none|[fill|fill-opacity|stroke|stroke-opacity]#\",\"-moz-float-edge\":\"border-box|content-box|margin-box|padding-box\",\"-moz-force-broken-image-icon\":\"<integer>\",\"-moz-image-region\":\"<shape>|auto\",\"-moz-orient\":\"inline|block|horizontal|vertical\",\"-moz-outline-radius\":\"<outline-radius>{1,4} [/ <outline-radius>{1,4}]?\",\"-moz-outline-radius-bottomleft\":\"<outline-radius>\",\"-moz-outline-radius-bottomright\":\"<outline-radius>\",\"-moz-outline-radius-topleft\":\"<outline-radius>\",\"-moz-outline-radius-topright\":\"<outline-radius>\",\"-moz-stack-sizing\":\"ignore|stretch-to-fit\",\"-moz-text-blink\":\"none|blink\",\"-moz-user-focus\":\"ignore|normal|select-after|select-before|select-menu|select-same|select-all|none\",\"-moz-user-input\":\"auto|none|enabled|disabled\",\"-moz-user-modify\":\"read-only|read-write|write-only\",\"-moz-window-dragging\":\"drag|no-drag\",\"-moz-window-shadow\":\"default|menu|tooltip|sheet|none\",\"-webkit-appearance\":\"none|button|button-bevel|caps-lock-indicator|caret|checkbox|default-button|listbox|listitem|media-fullscreen-button|media-mute-button|media-play-button|media-seek-back-button|media-seek-forward-button|media-slider|media-sliderthumb|menulist|menulist-button|menulist-text|menulist-textfield|push-button|radio|scrollbarbutton-down|scrollbarbutton-left|scrollbarbutton-right|scrollbarbutton-up|scrollbargripper-horizontal|scrollbargripper-vertical|scrollbarthumb-horizontal|scrollbarthumb-vertical|scrollbartrack-horizontal|scrollbartrack-vertical|searchfield|searchfield-cancel-button|searchfield-decoration|searchfield-results-button|searchfield-results-decoration|slider-horizontal|slider-vertical|sliderthumb-horizontal|sliderthumb-vertical|square-button|textarea|textfield\",\"-webkit-border-before\":\"<'border-width'>||<'border-style'>||<'color'>\",\"-webkit-border-before-color\":\"<'color'>\",\"-webkit-border-before-style\":\"<'border-style'>\",\"-webkit-border-before-width\":\"<'border-width'>\",\"-webkit-box-reflect\":\"[above|below|right|left]? <length>? <image>?\",\"-webkit-line-clamp\":\"none|<integer>\",\"-webkit-mask\":\"[<mask-reference>||<position> [/ <bg-size>]?||<repeat-style>||[<box>|border|padding|content|text]||[<box>|border|padding|content]]#\",\"-webkit-mask-attachment\":\"<attachment>#\",\"-webkit-mask-clip\":\"[<box>|border|padding|content|text]#\",\"-webkit-mask-composite\":\"<composite-style>#\",\"-webkit-mask-image\":\"<mask-reference>#\",\"-webkit-mask-origin\":\"[<box>|border|padding|content]#\",\"-webkit-mask-position\":\"<position>#\",\"-webkit-mask-position-x\":\"[<length-percentage>|left|center|right]#\",\"-webkit-mask-position-y\":\"[<length-percentage>|top|center|bottom]#\",\"-webkit-mask-repeat\":\"<repeat-style>#\",\"-webkit-mask-repeat-x\":\"repeat|no-repeat|space|round\",\"-webkit-mask-repeat-y\":\"repeat|no-repeat|space|round\",\"-webkit-mask-size\":\"<bg-size>#\",\"-webkit-overflow-scrolling\":\"auto|touch\",\"-webkit-tap-highlight-color\":\"<color>\",\"-webkit-text-fill-color\":\"<color>\",\"-webkit-text-stroke\":\"<length>||<color>\",\"-webkit-text-stroke-color\":\"<color>\",\"-webkit-text-stroke-width\":\"<length>\",\"-webkit-touch-callout\":\"default|none\",\"-webkit-user-modify\":\"read-only|read-write|read-write-plaintext-only\",\"align-content\":\"normal|<baseline-position>|<content-distribution>|<overflow-position>? <content-position>\",\"align-items\":\"normal|stretch|<baseline-position>|[<overflow-position>? <self-position>]\",\"align-self\":\"auto|normal|stretch|<baseline-position>|<overflow-position>? <self-position>\",all:\"initial|inherit|unset|revert\",animation:\"<single-animation>#\",\"animation-delay\":\"<time>#\",\"animation-direction\":\"<single-animation-direction>#\",\"animation-duration\":\"<time>#\",\"animation-fill-mode\":\"<single-animation-fill-mode>#\",\"animation-iteration-count\":\"<single-animation-iteration-count>#\",\"animation-name\":\"[none|<keyframes-name>]#\",\"animation-play-state\":\"<single-animation-play-state>#\",\"animation-timing-function\":\"<timing-function>#\",appearance:\"none|auto|button|textfield|<compat>\",azimuth:\"<angle>|[[left-side|far-left|left|center-left|center|center-right|right|far-right|right-side]||behind]|leftwards|rightwards\",\"backdrop-filter\":\"none|<filter-function-list>\",\"backface-visibility\":\"visible|hidden\",background:\"[<bg-layer> ,]* <final-bg-layer>\",\"background-attachment\":\"<attachment>#\",\"background-blend-mode\":\"<blend-mode>#\",\"background-clip\":\"<box>#\",\"background-color\":\"<color>\",\"background-image\":\"<bg-image>#\",\"background-origin\":\"<box>#\",\"background-position\":\"<bg-position>#\",\"background-position-x\":\"[center|[left|right|x-start|x-end]? <length-percentage>?]#\",\"background-position-y\":\"[center|[top|bottom|y-start|y-end]? <length-percentage>?]#\",\"background-repeat\":\"<repeat-style>#\",\"background-size\":\"<bg-size>#\",\"block-overflow\":\"clip|ellipsis|<string>\",\"block-size\":\"<'width'>\",border:\"<line-width>||<line-style>||<color>\",\"border-block\":\"<'border-top-width'>||<'border-top-style'>||<'color'>\",\"border-block-color\":\"<'border-top-color'>{1,2}\",\"border-block-style\":\"<'border-top-style'>\",\"border-block-width\":\"<'border-top-width'>\",\"border-block-end\":\"<'border-top-width'>||<'border-top-style'>||<'color'>\",\"border-block-end-color\":\"<'border-top-color'>\",\"border-block-end-style\":\"<'border-top-style'>\",\"border-block-end-width\":\"<'border-top-width'>\",\"border-block-start\":\"<'border-top-width'>||<'border-top-style'>||<'color'>\",\"border-block-start-color\":\"<'border-top-color'>\",\"border-block-start-style\":\"<'border-top-style'>\",\"border-block-start-width\":\"<'border-top-width'>\",\"border-bottom\":\"<line-width>||<line-style>||<color>\",\"border-bottom-color\":\"<'border-top-color'>\",\"border-bottom-left-radius\":\"<length-percentage>{1,2}\",\"border-bottom-right-radius\":\"<length-percentage>{1,2}\",\"border-bottom-style\":\"<line-style>\",\"border-bottom-width\":\"<line-width>\",\"border-collapse\":\"collapse|separate\",\"border-color\":\"<color>{1,4}\",\"border-end-end-radius\":\"<length-percentage>{1,2}\",\"border-end-start-radius\":\"<length-percentage>{1,2}\",\"border-image\":\"<'border-image-source'>||<'border-image-slice'> [/ <'border-image-width'>|/ <'border-image-width'>? / <'border-image-outset'>]?||<'border-image-repeat'>\",\"border-image-outset\":\"[<length>|<number>]{1,4}\",\"border-image-repeat\":\"[stretch|repeat|round|space]{1,2}\",\"border-image-slice\":\"<number-percentage>{1,4}&&fill?\",\"border-image-source\":\"none|<image>\",\"border-image-width\":\"[<length-percentage>|<number>|auto]{1,4}\",\"border-inline\":\"<'border-top-width'>||<'border-top-style'>||<'color'>\",\"border-inline-end\":\"<'border-top-width'>||<'border-top-style'>||<'color'>\",\"border-inline-color\":\"<'border-top-color'>{1,2}\",\"border-inline-style\":\"<'border-top-style'>\",\"border-inline-width\":\"<'border-top-width'>\",\"border-inline-end-color\":\"<'border-top-color'>\",\"border-inline-end-style\":\"<'border-top-style'>\",\"border-inline-end-width\":\"<'border-top-width'>\",\"border-inline-start\":\"<'border-top-width'>||<'border-top-style'>||<'color'>\",\"border-inline-start-color\":\"<'border-top-color'>\",\"border-inline-start-style\":\"<'border-top-style'>\",\"border-inline-start-width\":\"<'border-top-width'>\",\"border-left\":\"<line-width>||<line-style>||<color>\",\"border-left-color\":\"<color>\",\"border-left-style\":\"<line-style>\",\"border-left-width\":\"<line-width>\",\"border-radius\":\"<length-percentage>{1,4} [/ <length-percentage>{1,4}]?\",\"border-right\":\"<line-width>||<line-style>||<color>\",\"border-right-color\":\"<color>\",\"border-right-style\":\"<line-style>\",\"border-right-width\":\"<line-width>\",\"border-spacing\":\"<length> <length>?\",\"border-start-end-radius\":\"<length-percentage>{1,2}\",\"border-start-start-radius\":\"<length-percentage>{1,2}\",\"border-style\":\"<line-style>{1,4}\",\"border-top\":\"<line-width>||<line-style>||<color>\",\"border-top-color\":\"<color>\",\"border-top-left-radius\":\"<length-percentage>{1,2}\",\"border-top-right-radius\":\"<length-percentage>{1,2}\",\"border-top-style\":\"<line-style>\",\"border-top-width\":\"<line-width>\",\"border-width\":\"<line-width>{1,4}\",bottom:\"<length>|<percentage>|auto\",\"box-align\":\"start|center|end|baseline|stretch\",\"box-decoration-break\":\"slice|clone\",\"box-direction\":\"normal|reverse|inherit\",\"box-flex\":\"<number>\",\"box-flex-group\":\"<integer>\",\"box-lines\":\"single|multiple\",\"box-ordinal-group\":\"<integer>\",\"box-orient\":\"horizontal|vertical|inline-axis|block-axis|inherit\",\"box-pack\":\"start|center|end|justify\",\"box-shadow\":\"none|<shadow>#\",\"box-sizing\":\"content-box|border-box\",\"break-after\":\"auto|avoid|always|all|avoid-page|page|left|right|recto|verso|avoid-column|column|avoid-region|region\",\"break-before\":\"auto|avoid|always|all|avoid-page|page|left|right|recto|verso|avoid-column|column|avoid-region|region\",\"break-inside\":\"auto|avoid|avoid-page|avoid-column|avoid-region\",\"caption-side\":\"top|bottom|block-start|block-end|inline-start|inline-end\",\"caret-color\":\"auto|<color>\",clear:\"none|left|right|both|inline-start|inline-end\",clip:\"<shape>|auto\",\"clip-path\":\"<clip-source>|[<basic-shape>||<geometry-box>]|none\",color:\"<color>\",\"color-adjust\":\"economy|exact\",\"column-count\":\"<integer>|auto\",\"column-fill\":\"auto|balance|balance-all\",\"column-gap\":\"normal|<length-percentage>\",\"column-rule\":\"<'column-rule-width'>||<'column-rule-style'>||<'column-rule-color'>\",\"column-rule-color\":\"<color>\",\"column-rule-style\":\"<'border-style'>\",\"column-rule-width\":\"<'border-width'>\",\"column-span\":\"none|all\",\"column-width\":\"<length>|auto\",columns:\"<'column-width'>||<'column-count'>\",contain:\"none|strict|content|[size||layout||style||paint]\",content:\"normal|none|[<content-replacement>|<content-list>] [/ <string>]?\",\"counter-increment\":\"[<custom-ident> <integer>?]+|none\",\"counter-reset\":\"[<custom-ident> <integer>?]+|none\",\"counter-set\":\"[<custom-ident> <integer>?]+|none\",cursor:\"[[<url> [<x> <y>]? ,]* [auto|default|none|context-menu|help|pointer|progress|wait|cell|crosshair|text|vertical-text|alias|copy|move|no-drop|not-allowed|e-resize|n-resize|ne-resize|nw-resize|s-resize|se-resize|sw-resize|w-resize|ew-resize|ns-resize|nesw-resize|nwse-resize|col-resize|row-resize|all-scroll|zoom-in|zoom-out|grab|grabbing|hand|-webkit-grab|-webkit-grabbing|-webkit-zoom-in|-webkit-zoom-out|-moz-grab|-moz-grabbing|-moz-zoom-in|-moz-zoom-out]]\",direction:\"ltr|rtl\",display:\"block|contents|flex|flow|flow-root|grid|inline|inline-block|inline-flex|inline-grid|inline-list-item|inline-table|list-item|none|ruby|ruby-base|ruby-base-container|ruby-text|ruby-text-container|run-in|table|table-caption|table-cell|table-column|table-column-group|table-footer-group|table-header-group|table-row|table-row-group|-ms-flexbox|-ms-inline-flexbox|-ms-grid|-ms-inline-grid|-webkit-flex|-webkit-inline-flex|-webkit-box|-webkit-inline-box|-moz-inline-stack|-moz-box|-moz-inline-box\",\"empty-cells\":\"show|hide\",filter:\"none|<filter-function-list>|<-ms-filter-function-list>\",flex:\"none|[<'flex-grow'> <'flex-shrink'>?||<'flex-basis'>]\",\"flex-basis\":\"content|<'width'>\",\"flex-direction\":\"row|row-reverse|column|column-reverse\",\"flex-flow\":\"<'flex-direction'>||<'flex-wrap'>\",\"flex-grow\":\"<number>\",\"flex-shrink\":\"<number>\",\"flex-wrap\":\"nowrap|wrap|wrap-reverse\",float:\"left|right|none|inline-start|inline-end\",font:\"[[<'font-style'>||<font-variant-css21>||<'font-weight'>||<'font-stretch'>]? <'font-size'> [/ <'line-height'>]? <'font-family'>]|caption|icon|menu|message-box|small-caption|status-bar\",\"font-family\":\"[<family-name>|<generic-family>]#\",\"font-feature-settings\":\"normal|<feature-tag-value>#\",\"font-kerning\":\"auto|normal|none\",\"font-language-override\":\"normal|<string>\",\"font-optical-sizing\":\"auto|none\",\"font-variation-settings\":\"normal|[<string> <number>]#\",\"font-size\":\"<absolute-size>|<relative-size>|<length-percentage>\",\"font-size-adjust\":\"none|<number>\",\"font-stretch\":\"<font-stretch-absolute>\",\"font-style\":\"normal|italic|oblique <angle>?\",\"font-synthesis\":\"none|[weight||style]\",\"font-variant\":\"normal|none|[<common-lig-values>||<discretionary-lig-values>||<historical-lig-values>||<contextual-alt-values>||stylistic( <feature-value-name> )||historical-forms||styleset( <feature-value-name># )||character-variant( <feature-value-name># )||swash( <feature-value-name> )||ornaments( <feature-value-name> )||annotation( <feature-value-name> )||[small-caps|all-small-caps|petite-caps|all-petite-caps|unicase|titling-caps]||<numeric-figure-values>||<numeric-spacing-values>||<numeric-fraction-values>||ordinal||slashed-zero||<east-asian-variant-values>||<east-asian-width-values>||ruby]\",\"font-variant-alternates\":\"normal|[stylistic( <feature-value-name> )||historical-forms||styleset( <feature-value-name># )||character-variant( <feature-value-name># )||swash( <feature-value-name> )||ornaments( <feature-value-name> )||annotation( <feature-value-name> )]\",\"font-variant-caps\":\"normal|small-caps|all-small-caps|petite-caps|all-petite-caps|unicase|titling-caps\",\"font-variant-east-asian\":\"normal|[<east-asian-variant-values>||<east-asian-width-values>||ruby]\",\"font-variant-ligatures\":\"normal|none|[<common-lig-values>||<discretionary-lig-values>||<historical-lig-values>||<contextual-alt-values>]\",\"font-variant-numeric\":\"normal|[<numeric-figure-values>||<numeric-spacing-values>||<numeric-fraction-values>||ordinal||slashed-zero]\",\"font-variant-position\":\"normal|sub|super\",\"font-weight\":\"<font-weight-absolute>|bolder|lighter\",gap:\"<'row-gap'> <'column-gap'>?\",grid:\"<'grid-template'>|<'grid-template-rows'> / [auto-flow&&dense?] <'grid-auto-columns'>?|[auto-flow&&dense?] <'grid-auto-rows'>? / <'grid-template-columns'>\",\"grid-area\":\"<grid-line> [/ <grid-line>]{0,3}\",\"grid-auto-columns\":\"<track-size>+\",\"grid-auto-flow\":\"[row|column]||dense\",\"grid-auto-rows\":\"<track-size>+\",\"grid-column\":\"<grid-line> [/ <grid-line>]?\",\"grid-column-end\":\"<grid-line>\",\"grid-column-gap\":\"<length-percentage>\",\"grid-column-start\":\"<grid-line>\",\"grid-gap\":\"<'grid-row-gap'> <'grid-column-gap'>?\",\"grid-row\":\"<grid-line> [/ <grid-line>]?\",\"grid-row-end\":\"<grid-line>\",\"grid-row-gap\":\"<length-percentage>\",\"grid-row-start\":\"<grid-line>\",\"grid-template\":\"none|[<'grid-template-rows'> / <'grid-template-columns'>]|[<line-names>? <string> <track-size>? <line-names>?]+ [/ <explicit-track-list>]?\",\"grid-template-areas\":\"none|<string>+\",\"grid-template-columns\":\"none|<track-list>|<auto-track-list>\",\"grid-template-rows\":\"none|<track-list>|<auto-track-list>\",\"hanging-punctuation\":\"none|[first||[force-end|allow-end]||last]\",height:\"[<length>|<percentage>]&&[border-box|content-box]?|available|min-content|max-content|fit-content|auto\",hyphens:\"none|manual|auto\",\"image-orientation\":\"from-image|<angle>|[<angle>? flip]\",\"image-rendering\":\"auto|crisp-edges|pixelated|optimizeSpeed|optimizeQuality|<-non-standard-image-rendering>\",\"image-resolution\":\"[from-image||<resolution>]&&snap?\",\"ime-mode\":\"auto|normal|active|inactive|disabled\",\"initial-letter\":\"normal|[<number> <integer>?]\",\"initial-letter-align\":\"[auto|alphabetic|hanging|ideographic]\",\"inline-size\":\"<'width'>\",inset:\"<'top'>{1,4}\",\"inset-block\":\"<'top'>{1,2}\",\"inset-block-end\":\"<'top'>\",\"inset-block-start\":\"<'top'>\",\"inset-inline\":\"<'top'>{1,2}\",\"inset-inline-end\":\"<'top'>\",\"inset-inline-start\":\"<'top'>\",isolation:\"auto|isolate\",\"justify-content\":\"normal|<content-distribution>|<overflow-position>? [<content-position>|left|right]\",\"justify-items\":\"normal|stretch|<baseline-position>|<overflow-position>? [<self-position>|left|right]|legacy|legacy&&[left|right|center]\",\"justify-self\":\"auto|normal|stretch|<baseline-position>|<overflow-position>? [<self-position>|left|right]\",left:\"<length>|<percentage>|auto\",\"letter-spacing\":\"normal|<length-percentage>\",\"line-break\":\"auto|loose|normal|strict\",\"line-clamp\":\"none|<integer>\",\"line-height\":\"normal|<number>|<length>|<percentage>\",\"line-height-step\":\"<length>\",\"list-style\":\"<'list-style-type'>||<'list-style-position'>||<'list-style-image'>\",\"list-style-image\":\"<url>|none\",\"list-style-position\":\"inside|outside\",\"list-style-type\":\"<counter-style>|<string>|none\",margin:\"[<length>|<percentage>|auto]{1,4}\",\"margin-block\":\"<'margin-left'>{1,2}\",\"margin-block-end\":\"<'margin-left'>\",\"margin-block-start\":\"<'margin-left'>\",\"margin-bottom\":\"<length>|<percentage>|auto\",\"margin-inline\":\"<'margin-left'>{1,2}\",\"margin-inline-end\":\"<'margin-left'>\",\"margin-inline-start\":\"<'margin-left'>\",\"margin-left\":\"<length>|<percentage>|auto\",\"margin-right\":\"<length>|<percentage>|auto\",\"margin-top\":\"<length>|<percentage>|auto\",mask:\"<mask-layer>#\",\"mask-border\":\"<'mask-border-source'>||<'mask-border-slice'> [/ <'mask-border-width'>? [/ <'mask-border-outset'>]?]?||<'mask-border-repeat'>||<'mask-border-mode'>\",\"mask-border-mode\":\"luminance|alpha\",\"mask-border-outset\":\"[<length>|<number>]{1,4}\",\"mask-border-repeat\":\"[stretch|repeat|round|space]{1,2}\",\"mask-border-slice\":\"<number-percentage>{1,4} fill?\",\"mask-border-source\":\"none|<image>\",\"mask-border-width\":\"[<length-percentage>|<number>|auto]{1,4}\",\"mask-clip\":\"[<geometry-box>|no-clip]#\",\"mask-composite\":\"<compositing-operator>#\",\"mask-image\":\"<mask-reference>#\",\"mask-mode\":\"<masking-mode>#\",\"mask-origin\":\"<geometry-box>#\",\"mask-position\":\"<position>#\",\"mask-repeat\":\"<repeat-style>#\",\"mask-size\":\"<bg-size>#\",\"mask-type\":\"luminance|alpha\",\"max-block-size\":\"<'max-width'>\",\"max-height\":\"<length>|<percentage>|none|max-content|min-content|fit-content|fill-available\",\"max-inline-size\":\"<'max-width'>\",\"max-lines\":\"none|<integer>\",\"max-width\":\"<length>|<percentage>|none|max-content|min-content|fit-content|fill-available|<-non-standard-width>\",\"min-block-size\":\"<'min-width'>\",\"min-height\":\"<length>|<percentage>|auto|max-content|min-content|fit-content|fill-available\",\"min-inline-size\":\"<'min-width'>\",\"min-width\":\"<length>|<percentage>|auto|max-content|min-content|fit-content|fill-available|<-non-standard-width>\",\"mix-blend-mode\":\"<blend-mode>\",\"object-fit\":\"fill|contain|cover|none|scale-down\",\"object-position\":\"<position>\",offset:\"[<'offset-position'>? [<'offset-path'> [<'offset-distance'>||<'offset-rotate'>]?]?]! [/ <'offset-anchor'>]?\",\"offset-anchor\":\"auto|<position>\",\"offset-distance\":\"<length-percentage>\",\"offset-path\":\"none|ray( [<angle>&&<size>?&&contain?] )|<path()>|<url>|[<basic-shape>||<geometry-box>]\",\"offset-position\":\"auto|<position>\",\"offset-rotate\":\"[auto|reverse]||<angle>\",opacity:\"<number-zero-one>\",order:\"<integer>\",orphans:\"<integer>\",outline:\"[<'outline-color'>||<'outline-style'>||<'outline-width'>]\",\"outline-color\":\"<color>|invert\",\"outline-offset\":\"<length>\",\"outline-style\":\"auto|<'border-style'>\",\"outline-width\":\"<line-width>\",overflow:\"[visible|hidden|clip|scroll|auto]{1,2}|<-non-standard-overflow>\",\"overflow-anchor\":\"auto|none\",\"overflow-block\":\"visible|hidden|clip|scroll|auto\",\"overflow-clip-box\":\"padding-box|content-box\",\"overflow-inline\":\"visible|hidden|clip|scroll|auto\",\"overflow-wrap\":\"normal|break-word|anywhere\",\"overflow-x\":\"visible|hidden|clip|scroll|auto\",\"overflow-y\":\"visible|hidden|clip|scroll|auto\",\"overscroll-behavior\":\"[contain|none|auto]{1,2}\",\"overscroll-behavior-x\":\"contain|none|auto\",\"overscroll-behavior-y\":\"contain|none|auto\",padding:\"[<length>|<percentage>]{1,4}\",\"padding-block\":\"<'padding-left'>{1,2}\",\"padding-block-end\":\"<'padding-left'>\",\"padding-block-start\":\"<'padding-left'>\",\"padding-bottom\":\"<length>|<percentage>\",\"padding-inline\":\"<'padding-left'>{1,2}\",\"padding-inline-end\":\"<'padding-left'>\",\"padding-inline-start\":\"<'padding-left'>\",\"padding-left\":\"<length>|<percentage>\",\"padding-right\":\"<length>|<percentage>\",\"padding-top\":\"<length>|<percentage>\",\"page-break-after\":\"auto|always|avoid|left|right|recto|verso\",\"page-break-before\":\"auto|always|avoid|left|right|recto|verso\",\"page-break-inside\":\"auto|avoid\",\"paint-order\":\"normal|[fill||stroke||markers]\",perspective:\"none|<length>\",\"perspective-origin\":\"<position>\",\"place-content\":\"<'align-content'> <'justify-content'>?\",\"place-items\":\"<'align-items'> <'justify-items'>?\",\"place-self\":\"<'align-self'> <'justify-self'>?\",\"pointer-events\":\"auto|none|visiblePainted|visibleFill|visibleStroke|visible|painted|fill|stroke|all|inherit\",position:\"static|relative|absolute|sticky|fixed|-webkit-sticky\",quotes:\"none|[<string> <string>]+\",resize:\"none|both|horizontal|vertical|block|inline\",right:\"<length>|<percentage>|auto\",rotate:\"none|<angle>|[x|y|z|<number>{3}]&&<angle>\",\"row-gap\":\"normal|<length-percentage>\",\"ruby-align\":\"start|center|space-between|space-around\",\"ruby-merge\":\"separate|collapse|auto\",\"ruby-position\":\"over|under|inter-character\",scale:\"none|<number>{1,3}\",\"scrollbar-color\":\"auto|dark|light|<color>{2}\",\"scrollbar-width\":\"auto|thin|none\",\"scroll-behavior\":\"auto|smooth\",\"scroll-margin\":\"<length>{1,4}\",\"scroll-margin-block\":\"<length>{1,2}\",\"scroll-margin-block-start\":\"<length>\",\"scroll-margin-block-end\":\"<length>\",\"scroll-margin-bottom\":\"<length>\",\"scroll-margin-inline\":\"<length>{1,2}\",\"scroll-margin-inline-start\":\"<length>\",\"scroll-margin-inline-end\":\"<length>\",\"scroll-margin-left\":\"<length>\",\"scroll-margin-right\":\"<length>\",\"scroll-margin-top\":\"<length>\",\"scroll-padding\":\"[auto|<length-percentage>]{1,4}\",\"scroll-padding-block\":\"[auto|<length-percentage>]{1,2}\",\"scroll-padding-block-start\":\"auto|<length-percentage>\",\"scroll-padding-block-end\":\"auto|<length-percentage>\",\"scroll-padding-bottom\":\"auto|<length-percentage>\",\"scroll-padding-inline\":\"[auto|<length-percentage>]{1,2}\",\"scroll-padding-inline-start\":\"auto|<length-percentage>\",\"scroll-padding-inline-end\":\"auto|<length-percentage>\",\"scroll-padding-left\":\"auto|<length-percentage>\",\"scroll-padding-right\":\"auto|<length-percentage>\",\"scroll-padding-top\":\"auto|<length-percentage>\",\"scroll-snap-align\":\"[none|start|end|center]{1,2}\",\"scroll-snap-coordinate\":\"none|<position>#\",\"scroll-snap-destination\":\"<position>\",\"scroll-snap-points-x\":\"none|repeat( <length-percentage> )\",\"scroll-snap-points-y\":\"none|repeat( <length-percentage> )\",\"scroll-snap-stop\":\"normal|always\",\"scroll-snap-type\":\"none|[x|y|block|inline|both] [mandatory|proximity]?\",\"scroll-snap-type-x\":\"none|mandatory|proximity\",\"scroll-snap-type-y\":\"none|mandatory|proximity\",\"shape-image-threshold\":\"<number>\",\"shape-margin\":\"<length-percentage>\",\"shape-outside\":\"none|<shape-box>||<basic-shape>|<image>\",\"tab-size\":\"<integer>|<length>\",\"table-layout\":\"auto|fixed\",\"text-align\":\"start|end|left|right|center|justify|match-parent\",\"text-align-last\":\"auto|start|end|left|right|center|justify\",\"text-combine-upright\":\"none|all|[digits <integer>?]\",\"text-decoration\":\"<'text-decoration-line'>||<'text-decoration-style'>||<'text-decoration-color'>\",\"text-decoration-color\":\"<color>\",\"text-decoration-line\":\"none|[underline||overline||line-through||blink]\",\"text-decoration-skip\":\"none|[objects||[spaces|[leading-spaces||trailing-spaces]]||edges||box-decoration]\",\"text-decoration-skip-ink\":\"auto|none\",\"text-decoration-style\":\"solid|double|dotted|dashed|wavy\",\"text-emphasis\":\"<'text-emphasis-style'>||<'text-emphasis-color'>\",\"text-emphasis-color\":\"<color>\",\"text-emphasis-position\":\"[over|under]&&[right|left]\",\"text-emphasis-style\":\"none|[[filled|open]||[dot|circle|double-circle|triangle|sesame]]|<string>\",\"text-indent\":\"<length-percentage>&&hanging?&&each-line?\",\"text-justify\":\"auto|inter-character|inter-word|none\",\"text-orientation\":\"mixed|upright|sideways\",\"text-overflow\":\"[clip|ellipsis|<string>]{1,2}\",\"text-rendering\":\"auto|optimizeSpeed|optimizeLegibility|geometricPrecision\",\"text-shadow\":\"none|<shadow-t>#\",\"text-size-adjust\":\"none|auto|<percentage>\",\"text-transform\":\"none|capitalize|uppercase|lowercase|full-width|full-size-kana\",\"text-underline-position\":\"auto|[under||[left|right]]\",top:\"<length>|<percentage>|auto\",\"touch-action\":\"auto|none|[[pan-x|pan-left|pan-right]||[pan-y|pan-up|pan-down]||pinch-zoom]|manipulation\",transform:\"none|<transform-list>\",\"transform-box\":\"border-box|fill-box|view-box\",\"transform-origin\":\"[<length-percentage>|left|center|right|top|bottom]|[[<length-percentage>|left|center|right]&&[<length-percentage>|top|center|bottom]] <length>?\",\"transform-style\":\"flat|preserve-3d\",transition:\"<single-transition>#\",\"transition-delay\":\"<time>#\",\"transition-duration\":\"<time>#\",\"transition-property\":\"none|<single-transition-property>#\",\"transition-timing-function\":\"<timing-function>#\",translate:\"none|<length-percentage> [<length-percentage> <length>?]?\",\"unicode-bidi\":\"normal|embed|isolate|bidi-override|isolate-override|plaintext|-moz-isolate|-moz-isolate-override|-moz-plaintext|-webkit-isolate\",\"user-select\":\"auto|text|none|contain|all\",\"vertical-align\":\"baseline|sub|super|text-top|text-bottom|middle|top|bottom|<percentage>|<length>\",visibility:\"visible|hidden|collapse\",\"white-space\":\"normal|pre|nowrap|pre-wrap|pre-line\",widows:\"<integer>\",width:\"[<length>|<percentage>]&&[border-box|content-box]?|available|min-content|max-content|fit-content|auto\",\"will-change\":\"auto|<animateable-feature>#\",\"word-break\":\"normal|break-all|keep-all|break-word\",\"word-spacing\":\"normal|<length-percentage>\",\"word-wrap\":\"normal|break-word\",\"writing-mode\":\"horizontal-tb|vertical-rl|vertical-lr|sideways-rl|sideways-lr|<svg-writing-mode>\",\"z-index\":\"auto|<integer>\",zoom:\"normal|reset|<number>|<percentage>\",\"-moz-background-clip\":\"padding|border\",\"-moz-border-radius-bottomleft\":\"<'border-bottom-left-radius'>\",\"-moz-border-radius-bottomright\":\"<'border-bottom-right-radius'>\",\"-moz-border-radius-topleft\":\"<'border-top-left-radius'>\",\"-moz-border-radius-topright\":\"<'border-bottom-right-radius'>\",\"-moz-control-character-visibility\":\"visible|hidden\",\"-moz-osx-font-smoothing\":\"auto|grayscale\",\"-moz-user-select\":\"none|text|all|-moz-none\",\"-ms-flex-align\":\"start|end|center|baseline|stretch\",\"-ms-flex-item-align\":\"auto|start|end|center|baseline|stretch\",\"-ms-flex-line-pack\":\"start|end|center|justify|distribute|stretch\",\"-ms-flex-negative\":\"<'flex-shrink'>\",\"-ms-flex-pack\":\"start|end|center|justify|distribute\",\"-ms-flex-order\":\"<integer>\",\"-ms-flex-positive\":\"<'flex-grow'>\",\"-ms-flex-preferred-size\":\"<'flex-basis'>\",\"-ms-interpolation-mode\":\"nearest-neighbor|bicubic\",\"-ms-grid-column-align\":\"start|end|center|stretch\",\"-ms-grid-columns\":\"<track-list-v0>\",\"-ms-grid-row-align\":\"start|end|center|stretch\",\"-ms-grid-rows\":\"<track-list-v0>\",\"-ms-hyphenate-limit-last\":\"none|always|column|page|spread\",\"-webkit-background-clip\":\"[<box>|border|padding|content|text]#\",\"-webkit-column-break-after\":\"always|auto|avoid\",\"-webkit-column-break-before\":\"always|auto|avoid\",\"-webkit-column-break-inside\":\"always|auto|avoid\",\"-webkit-font-smoothing\":\"auto|none|antialiased|subpixel-antialiased\",\"-webkit-mask-box-image\":\"[<url>|<gradient>|none] [<length-percentage>{4} <-webkit-mask-box-repeat>{2}]?\",\"-webkit-print-color-adjust\":\"economy|exact\",\"-webkit-text-security\":\"none|circle|disc|square\",\"-webkit-user-drag\":\"none|element|auto\",\"-webkit-user-select\":\"auto|none|text|all\",\"alignment-baseline\":\"auto|baseline|before-edge|text-before-edge|middle|central|after-edge|text-after-edge|ideographic|alphabetic|hanging|mathematical\",\"baseline-shift\":\"baseline|sub|super|<svg-length>\",behavior:\"<url>+\",\"clip-rule\":\"nonzero|evenodd\",cue:\"<'cue-before'> <'cue-after'>?\",\"cue-after\":\"<url> <decibel>?|none\",\"cue-before\":\"<url> <decibel>?|none\",\"dominant-baseline\":\"auto|use-script|no-change|reset-size|ideographic|alphabetic|hanging|mathematical|central|middle|text-after-edge|text-before-edge\",fill:\"<paint>\",\"fill-opacity\":\"<number-zero-one>\",\"fill-rule\":\"nonzero|evenodd\",\"glyph-orientation-horizontal\":\"<angle>\",\"glyph-orientation-vertical\":\"<angle>\",kerning:\"auto|<svg-length>\",marker:\"none|<url>\",\"marker-end\":\"none|<url>\",\"marker-mid\":\"none|<url>\",\"marker-start\":\"none|<url>\",pause:\"<'pause-before'> <'pause-after'>?\",\"pause-after\":\"<time>|none|x-weak|weak|medium|strong|x-strong\",\"pause-before\":\"<time>|none|x-weak|weak|medium|strong|x-strong\",rest:\"<'rest-before'> <'rest-after'>?\",\"rest-after\":\"<time>|none|x-weak|weak|medium|strong|x-strong\",\"rest-before\":\"<time>|none|x-weak|weak|medium|strong|x-strong\",\"shape-rendering\":\"auto|optimizeSpeed|crispEdges|geometricPrecision\",src:\"[<url> [format( <string># )]?|local( <family-name> )]#\",speak:\"auto|none|normal\",\"speak-as\":\"normal|spell-out||digits||[literal-punctuation|no-punctuation]\",stroke:\"<paint>\",\"stroke-dasharray\":\"none|[<svg-length>+]#\",\"stroke-dashoffset\":\"<svg-length>\",\"stroke-linecap\":\"butt|round|square\",\"stroke-linejoin\":\"miter|round|bevel\",\"stroke-miterlimit\":\"<number-one-or-greater>\",\"stroke-opacity\":\"<number-zero-one>\",\"stroke-width\":\"<svg-length>\",\"text-anchor\":\"start|middle|end\",\"unicode-range\":\"<urange>#\",\"voice-balance\":\"<number>|left|center|right|leftwards|rightwards\",\"voice-duration\":\"auto|<time>\",\"voice-family\":\"[[<family-name>|<generic-voice>] ,]* [<family-name>|<generic-voice>]|preserve\",\"voice-pitch\":\"<frequency>&&absolute|[[x-low|low|medium|high|x-high]||[<frequency>|<semitones>|<percentage>]]\",\"voice-range\":\"<frequency>&&absolute|[[x-low|low|medium|high|x-high]||[<frequency>|<semitones>|<percentage>]]\",\"voice-rate\":\"[normal|x-slow|slow|medium|fast|x-fast]||<percentage>\",\"voice-stress\":\"normal|strong|moderate|none|reduced\",\"voice-volume\":\"silent|[[x-soft|soft|medium|loud|x-loud]||<decibel>]\"},Dr={generic:!0,types:Er,properties:Or},Rr=Object.freeze({__proto__:null,generic:!0,types:Er,properties:Or,default:Dr}),Ir=Se.cmpChar,Mr=Se.isDigit,Nr=Se.TYPE,Br=Nr.WhiteSpace,jr=Nr.Comment,_r=Nr.Ident,qr=Nr.Number,Wr=Nr.Dimension;function Fr(e,t){var n=this.scanner.tokenStart+e,r=this.scanner.source.charCodeAt(n);for(43!==r&&45!==r||(t&&this.error(\"Number sign is not allowed\"),n++);n<this.scanner.tokenEnd;n++)Mr(this.scanner.source.charCodeAt(n))||this.error(\"Integer is expected\",n)}function Ur(e){return Fr.call(this,0,e)}function Yr(e,t){if(!Ir(this.scanner.source,this.scanner.tokenStart+e,t)){var n=\"\";switch(t){case 110:n=\"N is expected\";break;case 45:n=\"HyphenMinus is expected\"}this.error(n,this.scanner.tokenStart+e)}}function Hr(){for(var e=0,t=0,n=this.scanner.tokenType;n===Br||n===jr;)n=this.scanner.lookupType(++e);if(n!==qr){if(!this.scanner.isDelim(43,e)&&!this.scanner.isDelim(45,e))return null;t=this.scanner.isDelim(43,e)?43:45;do{n=this.scanner.lookupType(++e)}while(n===Br||n===jr);n!==qr&&(this.scanner.skip(e),Ur.call(this,!0))}return e>0&&this.scanner.skip(e),0===t&&43!==(n=this.scanner.source.charCodeAt(this.scanner.tokenStart))&&45!==n&&this.error(\"Number sign is expected\"),Ur.call(this,0!==t),45===t?\"-\"+this.consume(qr):this.consume(qr)}var Vr={name:\"AnPlusB\",structure:{a:[String,null],b:[String,null]},parse:function(){var e=this.scanner.tokenStart,t=null,n=null;if(this.scanner.tokenType===qr)Ur.call(this,!1),n=this.consume(qr);else if(this.scanner.tokenType===_r&&Ir(this.scanner.source,this.scanner.tokenStart,45))switch(t=\"-1\",Yr.call(this,1,110),this.scanner.getTokenLength()){case 2:this.scanner.next(),n=Hr.call(this);break;case 3:Yr.call(this,2,45),this.scanner.next(),this.scanner.skipSC(),Ur.call(this,!0),n=\"-\"+this.consume(qr);break;default:Yr.call(this,2,45),Fr.call(this,3,!0),this.scanner.next(),n=this.scanner.substrToCursor(e+2)}else if(this.scanner.tokenType===_r||this.scanner.isDelim(43)&&this.scanner.lookupType(1)===_r){var r=0;switch(t=\"1\",this.scanner.isDelim(43)&&(r=1,this.scanner.next()),Yr.call(this,0,110),this.scanner.getTokenLength()){case 1:this.scanner.next(),n=Hr.call(this);break;case 2:Yr.call(this,1,45),this.scanner.next(),this.scanner.skipSC(),Ur.call(this,!0),n=\"-\"+this.consume(qr);break;default:Yr.call(this,1,45),Fr.call(this,2,!0),this.scanner.next(),n=this.scanner.substrToCursor(e+r+1)}}else if(this.scanner.tokenType===Wr){for(var a=this.scanner.source.charCodeAt(this.scanner.tokenStart),i=(r=43===a||45===a,this.scanner.tokenStart+r);i<this.scanner.tokenEnd&&Mr(this.scanner.source.charCodeAt(i));i++);i===this.scanner.tokenStart+r&&this.error(\"Integer is expected\",this.scanner.tokenStart+r),Yr.call(this,i-this.scanner.tokenStart,110),t=this.scanner.source.substring(e,i),i+1===this.scanner.tokenEnd?(this.scanner.next(),n=Hr.call(this)):(Yr.call(this,i-this.scanner.tokenStart+1,45),i+2===this.scanner.tokenEnd?(this.scanner.next(),this.scanner.skipSC(),Ur.call(this,!0),n=\"-\"+this.consume(qr)):(Fr.call(this,i-this.scanner.tokenStart+2,!0),this.scanner.next(),n=this.scanner.substrToCursor(i+1)))}else this.error();return null!==t&&43===t.charCodeAt(0)&&(t=t.substr(1)),null!==n&&43===n.charCodeAt(0)&&(n=n.substr(1)),{type:\"AnPlusB\",loc:this.getLocation(e,this.scanner.tokenStart),a:t,b:n}},generate:function(e){var t=null!==e.a&&void 0!==e.a,n=null!==e.b&&void 0!==e.b;t?(this.chunk(\"+1\"===e.a?\"+n\":\"1\"===e.a?\"n\":\"-1\"===e.a?\"-n\":e.a+\"n\"),n&&(\"-\"===(n=String(e.b)).charAt(0)||\"+\"===n.charAt(0)?(this.chunk(n.charAt(0)),this.chunk(n.substr(1))):(this.chunk(\"+\"),this.chunk(n)))):this.chunk(String(e.b))}},Kr=Se.TYPE,Gr=Kr.WhiteSpace,$r=Kr.Semicolon,Qr=Kr.LeftCurlyBracket,Xr=Kr.Delim;function Zr(){return this.scanner.tokenIndex>0&&this.scanner.lookupType(-1)===Gr?this.scanner.tokenIndex>1?this.scanner.getTokenStart(this.scanner.tokenIndex-1):this.scanner.firstCharOffset:this.scanner.tokenStart}function Jr(){return 0}var ea={name:\"Raw\",structure:{value:String},parse:function(e,t,n){var r,a=this.scanner.getTokenStart(e);return this.scanner.skip(this.scanner.getRawLength(e,t||Jr)),r=n&&this.scanner.tokenStart>a?Zr.call(this):this.scanner.tokenStart,{type:\"Raw\",loc:this.getLocation(a,r),value:this.scanner.source.substring(a,r)}},generate:function(e){this.chunk(e.value)},mode:{default:Jr,leftCurlyBracket:function(e){return e===Qr?1:0},leftCurlyBracketOrSemicolon:function(e){return e===Qr||e===$r?1:0},exclamationMarkOrSemicolon:function(e,t,n){return e===Xr&&33===t.charCodeAt(n)||e===$r?1:0},semicolonIncluded:function(e){return e===$r?2:0}}},ta=Se.TYPE,na=ea.mode,ra=ta.AtKeyword,aa=ta.Semicolon,ia=ta.LeftCurlyBracket,oa=ta.RightCurlyBracket;function sa(e){return this.Raw(e,na.leftCurlyBracketOrSemicolon,!0)}function la(){for(var e,t=1;e=this.scanner.lookupType(t);t++){if(e===oa)return!0;if(e===ia||e===ra)return!1}return!1}var ca={name:\"Atrule\",structure:{name:String,prelude:[\"AtrulePrelude\",\"Raw\",null],block:[\"Block\",null]},parse:function(){var e,t,n=this.scanner.tokenStart,r=null,a=null;switch(this.eat(ra),t=(e=this.scanner.substrToCursor(n+1)).toLowerCase(),this.scanner.skipSC(),!1===this.scanner.eof&&this.scanner.tokenType!==ia&&this.scanner.tokenType!==aa&&(this.parseAtrulePrelude?\"AtrulePrelude\"===(r=this.parseWithFallback(this.AtrulePrelude.bind(this,e),sa)).type&&null===r.children.head&&(r=null):r=sa.call(this,this.scanner.tokenIndex),this.scanner.skipSC()),this.scanner.tokenType){case aa:this.scanner.next();break;case ia:a=this.atrule.hasOwnProperty(t)&&\"function\"==typeof this.atrule[t].block?this.atrule[t].block.call(this):this.Block(la.call(this))}return{type:\"Atrule\",loc:this.getLocation(n,this.scanner.tokenStart),name:e,prelude:r,block:a}},generate:function(e){this.chunk(\"@\"),this.chunk(e.name),null!==e.prelude&&(this.chunk(\" \"),this.node(e.prelude)),e.block?this.node(e.block):this.chunk(\";\")},walkContext:\"atrule\"},ua=Se.TYPE,ha=ua.Semicolon,da=ua.LeftCurlyBracket,pa={name:\"AtrulePrelude\",structure:{children:[[]]},parse:function(e){var t=null;return null!==e&&(e=e.toLowerCase()),this.scanner.skipSC(),t=this.atrule.hasOwnProperty(e)&&\"function\"==typeof this.atrule[e].prelude?this.atrule[e].prelude.call(this):this.readSequence(this.scope.AtrulePrelude),this.scanner.skipSC(),!0!==this.scanner.eof&&this.scanner.tokenType!==da&&this.scanner.tokenType!==ha&&this.error(\"Semicolon or block is expected\"),null===t&&(t=this.createList()),{type:\"AtrulePrelude\",loc:this.getLocationFromList(t),children:t}},generate:function(e){this.children(e)},walkContext:\"atrulePrelude\"},fa=Se.TYPE,ma=fa.Ident,ga=fa.String,ba=fa.Colon,ya=fa.LeftSquareBracket,ka=fa.RightSquareBracket;function va(){this.scanner.eof&&this.error(\"Unexpected end of input\");var e=this.scanner.tokenStart,t=!1,n=!0;return this.scanner.isDelim(42)?(t=!0,n=!1,this.scanner.next()):this.scanner.isDelim(124)||this.eat(ma),this.scanner.isDelim(124)?61!==this.scanner.source.charCodeAt(this.scanner.tokenStart+1)?(this.scanner.next(),this.eat(ma)):t&&this.error(\"Identifier is expected\",this.scanner.tokenEnd):t&&this.error(\"Vertical line is expected\"),n&&this.scanner.tokenType===ba&&(this.scanner.next(),this.eat(ma)),{type:\"Identifier\",loc:this.getLocation(e,this.scanner.tokenStart),name:this.scanner.substrToCursor(e)}}function wa(){var e=this.scanner.tokenStart,t=this.scanner.source.charCodeAt(e);return 61!==t&&126!==t&&94!==t&&36!==t&&42!==t&&124!==t&&this.error(\"Attribute selector (=, ~=, ^=, $=, *=, |=) is expected\"),this.scanner.next(),61!==t&&(this.scanner.isDelim(61)||this.error(\"Equal sign is expected\"),this.scanner.next()),this.scanner.substrToCursor(e)}var xa={name:\"AttributeSelector\",structure:{name:\"Identifier\",matcher:[String,null],value:[\"String\",\"Identifier\",null],flags:[String,null]},parse:function(){var e,t=this.scanner.tokenStart,n=null,r=null,a=null;return this.eat(ya),this.scanner.skipSC(),e=va.call(this),this.scanner.skipSC(),this.scanner.tokenType!==ka&&(this.scanner.tokenType!==ma&&(n=wa.call(this),this.scanner.skipSC(),r=this.scanner.tokenType===ga?this.String():this.Identifier(),this.scanner.skipSC()),this.scanner.tokenType===ma&&(a=this.scanner.getTokenValue(),this.scanner.next(),this.scanner.skipSC())),this.eat(ka),{type:\"AttributeSelector\",loc:this.getLocation(t,this.scanner.tokenStart),name:e,matcher:n,value:r,flags:a}},generate:function(e){var t=\" \";this.chunk(\"[\"),this.node(e.name),null!==e.matcher&&(this.chunk(e.matcher),null!==e.value&&(this.node(e.value),\"String\"===e.value.type&&(t=\"\"))),null!==e.flags&&(this.chunk(t),this.chunk(e.flags)),this.chunk(\"]\")}},Sa=Se.TYPE,Ca=ea.mode,Aa=Sa.WhiteSpace,za=Sa.Comment,Pa=Sa.Semicolon,La=Sa.AtKeyword,Ta=Sa.LeftCurlyBracket,Ea=Sa.RightCurlyBracket;function Oa(e){return this.Raw(e,null,!0)}function Da(){return this.parseWithFallback(this.Rule,Oa)}function Ra(e){return this.Raw(e,Ca.semicolonIncluded,!0)}function Ia(){if(this.scanner.tokenType===Pa)return Ra.call(this,this.scanner.tokenIndex);var e=this.parseWithFallback(this.Declaration,Ra);return this.scanner.tokenType===Pa&&this.scanner.next(),e}var Ma={name:\"Block\",structure:{children:[[\"Atrule\",\"Rule\",\"Declaration\"]]},parse:function(e){var t=e?Ia:Da,n=this.scanner.tokenStart,r=this.createList();this.eat(Ta);e:for(;!this.scanner.eof;)switch(this.scanner.tokenType){case Ea:break e;case Aa:case za:this.scanner.next();break;case La:r.push(this.parseWithFallback(this.Atrule,Oa));break;default:r.push(t.call(this))}return this.scanner.eof||this.eat(Ea),{type:\"Block\",loc:this.getLocation(n,this.scanner.tokenStart),children:r}},generate:function(e){this.chunk(\"{\"),this.children(e,(function(e){\"Declaration\"===e.type&&this.chunk(\";\")})),this.chunk(\"}\")},walkContext:\"block\"},Na=Se.TYPE,Ba=Na.LeftSquareBracket,ja=Na.RightSquareBracket,_a={name:\"Brackets\",structure:{children:[[]]},parse:function(e,t){var n,r=this.scanner.tokenStart;return this.eat(Ba),n=e.call(this,t),this.scanner.eof||this.eat(ja),{type:\"Brackets\",loc:this.getLocation(r,this.scanner.tokenStart),children:n}},generate:function(e){this.chunk(\"[\"),this.children(e),this.chunk(\"]\")}},qa=Se.TYPE.CDC,Wa={name:\"CDC\",structure:[],parse:function(){var e=this.scanner.tokenStart;return this.eat(qa),{type:\"CDC\",loc:this.getLocation(e,this.scanner.tokenStart)}},generate:function(){this.chunk(\"--\\x3e\")}},Fa=Se.TYPE.CDO,Ua={name:\"CDO\",structure:[],parse:function(){var e=this.scanner.tokenStart;return this.eat(Fa),{type:\"CDO\",loc:this.getLocation(e,this.scanner.tokenStart)}},generate:function(){this.chunk(\"\\x3c!--\")}},Ya=Se.TYPE.Ident,Ha={name:\"ClassSelector\",structure:{name:String},parse:function(){return this.scanner.isDelim(46)||this.error(\"Full stop is expected\"),this.scanner.next(),{type:\"ClassSelector\",loc:this.getLocation(this.scanner.tokenStart-1,this.scanner.tokenEnd),name:this.consume(Ya)}},generate:function(e){this.chunk(\".\"),this.chunk(e.name)}},Va=Se.TYPE.Ident,Ka={name:\"Combinator\",structure:{name:String},parse:function(){var e=this.scanner.tokenStart;switch(this.scanner.source.charCodeAt(this.scanner.tokenStart)){case 62:case 43:case 126:this.scanner.next();break;case 47:this.scanner.next(),this.scanner.tokenType===Va&&!1!==this.scanner.lookupValue(0,\"deep\")||this.error(\"Identifier `deep` is expected\"),this.scanner.next(),this.scanner.isDelim(47)||this.error(\"Solidus is expected\"),this.scanner.next();break;default:this.error(\"Combinator is expected\")}return{type:\"Combinator\",loc:this.getLocation(e,this.scanner.tokenStart),name:this.scanner.substrToCursor(e)}},generate:function(e){this.chunk(e.name)}},Ga=Se.TYPE.Comment,$a={name:\"Comment\",structure:{value:String},parse:function(){var e=this.scanner.tokenStart,t=this.scanner.tokenEnd;return this.eat(Ga),t-e+2>=2&&42===this.scanner.source.charCodeAt(t-2)&&47===this.scanner.source.charCodeAt(t-1)&&(t-=2),{type:\"Comment\",loc:this.getLocation(e,this.scanner.tokenStart),value:this.scanner.source.substring(e+2,t)}},generate:function(e){this.chunk(\"/*\"),this.chunk(e.value),this.chunk(\"*/\")}},Qa=ae.isCustomProperty,Xa=Se.TYPE,Za=ea.mode,Ja=Xa.Ident,ei=Xa.Hash,ti=Xa.Colon,ni=Xa.Semicolon,ri=Xa.Delim;function ai(e){return this.Raw(e,Za.exclamationMarkOrSemicolon,!0)}function ii(e){return this.Raw(e,Za.exclamationMarkOrSemicolon,!1)}function oi(){var e=this.scanner.tokenIndex,t=this.Value();return\"Raw\"!==t.type&&!1===this.scanner.eof&&this.scanner.tokenType!==ni&&!1===this.scanner.isDelim(33)&&!1===this.scanner.isBalanceEdge(e)&&this.error(),t}var si={name:\"Declaration\",structure:{important:[Boolean,String],property:String,value:[\"Value\",\"Raw\"]},parse:function(){var e,t=this.scanner.tokenStart,n=this.scanner.tokenIndex,r=li.call(this),a=Qa(r),i=a?this.parseCustomProperty:this.parseValue,o=a?ii:ai,s=!1;return this.scanner.skipSC(),this.eat(ti),a||this.scanner.skipSC(),e=i?this.parseWithFallback(oi,o):o.call(this,this.scanner.tokenIndex),this.scanner.isDelim(33)&&(s=ci.call(this),this.scanner.skipSC()),!1===this.scanner.eof&&this.scanner.tokenType!==ni&&!1===this.scanner.isBalanceEdge(n)&&this.error(),{type:\"Declaration\",loc:this.getLocation(t,this.scanner.tokenStart),important:s,property:r,value:e}},generate:function(e){this.chunk(e.property),this.chunk(\":\"),this.node(e.value),e.important&&this.chunk(!0===e.important?\"!important\":\"!\"+e.important)},walkContext:\"declaration\"};function li(){var e=this.scanner.tokenStart;if(this.scanner.tokenType===ri)switch(this.scanner.source.charCodeAt(this.scanner.tokenStart)){case 42:case 36:case 43:case 35:case 38:this.scanner.next();break;case 47:this.scanner.next(),this.scanner.isDelim(47)&&this.scanner.next()}return this.scanner.tokenType===ei?this.eat(ei):this.eat(Ja),this.scanner.substrToCursor(e)}function ci(){this.eat(ri),this.scanner.skipSC();var e=this.consume(Ja);return\"important\"===e||e}var ui=Se.TYPE,hi=ea.mode,di=ui.WhiteSpace,pi=ui.Comment,fi=ui.Semicolon;function mi(e){return this.Raw(e,hi.semicolonIncluded,!0)}var gi={name:\"DeclarationList\",structure:{children:[[\"Declaration\"]]},parse:function(){for(var e=this.createList();!this.scanner.eof;)switch(this.scanner.tokenType){case di:case pi:case fi:this.scanner.next();break;default:e.push(this.parseWithFallback(this.Declaration,mi))}return{type:\"DeclarationList\",loc:this.getLocationFromList(e),children:e}},generate:function(e){this.children(e,(function(e){\"Declaration\"===e.type&&this.chunk(\";\")}))}},bi=j.consumeNumber,yi=Se.TYPE.Dimension,ki={name:\"Dimension\",structure:{value:String,unit:String},parse:function(){var e=this.scanner.tokenStart,t=bi(this.scanner.source,e);return this.eat(yi),{type:\"Dimension\",loc:this.getLocation(e,this.scanner.tokenStart),value:this.scanner.source.substring(e,t),unit:this.scanner.source.substring(t,this.scanner.tokenStart)}},generate:function(e){this.chunk(e.value),this.chunk(e.unit)}},vi=Se.TYPE.RightParenthesis,wi={name:\"Function\",structure:{name:String,children:[[]]},parse:function(e,t){var n,r=this.scanner.tokenStart,a=this.consumeFunctionName(),i=a.toLowerCase();return n=t.hasOwnProperty(i)?t[i].call(this,t):e.call(this,t),this.scanner.eof||this.eat(vi),{type:\"Function\",loc:this.getLocation(r,this.scanner.tokenStart),name:a,children:n}},generate:function(e){this.chunk(e.name),this.chunk(\"(\"),this.children(e),this.chunk(\")\")},walkContext:\"function\"},xi=Se.TYPE.Hash,Si={name:\"HexColor\",structure:{value:String},parse:function(){var e=this.scanner.tokenStart;return this.eat(xi),{type:\"HexColor\",loc:this.getLocation(e,this.scanner.tokenStart),value:this.scanner.substrToCursor(e+1)}},generate:function(e){this.chunk(\"#\"),this.chunk(e.value)}},Ci=Se.TYPE.Ident,Ai={name:\"Identifier\",structure:{name:String},parse:function(){return{type:\"Identifier\",loc:this.getLocation(this.scanner.tokenStart,this.scanner.tokenEnd),name:this.consume(Ci)}},generate:function(e){this.chunk(e.name)}},zi=Se.TYPE.Hash,Pi={name:\"IdSelector\",structure:{name:String},parse:function(){var e=this.scanner.tokenStart;return this.eat(zi),{type:\"IdSelector\",loc:this.getLocation(e,this.scanner.tokenStart),name:this.scanner.substrToCursor(e+1)}},generate:function(e){this.chunk(\"#\"),this.chunk(e.name)}},Li=Se.TYPE,Ti=Li.Ident,Ei=Li.Number,Oi=Li.Dimension,Di=Li.LeftParenthesis,Ri=Li.RightParenthesis,Ii=Li.Colon,Mi=Li.Delim,Ni={name:\"MediaFeature\",structure:{name:String,value:[\"Identifier\",\"Number\",\"Dimension\",\"Ratio\",null]},parse:function(){var e,t=this.scanner.tokenStart,n=null;if(this.eat(Di),this.scanner.skipSC(),e=this.consume(Ti),this.scanner.skipSC(),this.scanner.tokenType!==Ri){switch(this.eat(Ii),this.scanner.skipSC(),this.scanner.tokenType){case Ei:n=this.lookupNonWSType(1)===Mi?this.Ratio():this.Number();break;case Oi:n=this.Dimension();break;case Ti:n=this.Identifier();break;default:this.error(\"Number, dimension, ratio or identifier is expected\")}this.scanner.skipSC()}return this.eat(Ri),{type:\"MediaFeature\",loc:this.getLocation(t,this.scanner.tokenStart),name:e,value:n}},generate:function(e){this.chunk(\"(\"),this.chunk(e.name),null!==e.value&&(this.chunk(\":\"),this.node(e.value)),this.chunk(\")\")}},Bi=Se.TYPE,ji=Bi.WhiteSpace,_i=Bi.Comment,qi=Bi.Ident,Wi=Bi.LeftParenthesis,Fi={name:\"MediaQuery\",structure:{children:[[\"Identifier\",\"MediaFeature\",\"WhiteSpace\"]]},parse:function(){this.scanner.skipSC();var e=this.createList(),t=null,n=null;e:for(;!this.scanner.eof;){switch(this.scanner.tokenType){case _i:this.scanner.next();continue;case ji:n=this.WhiteSpace();continue;case qi:t=this.Identifier();break;case Wi:t=this.MediaFeature();break;default:break e}null!==n&&(e.push(n),n=null),e.push(t)}return null===t&&this.error(\"Identifier or parenthesis is expected\"),{type:\"MediaQuery\",loc:this.getLocationFromList(e),children:e}},generate:function(e){this.children(e)}},Ui=Se.TYPE.Comma,Yi={name:\"MediaQueryList\",structure:{children:[[\"MediaQuery\"]]},parse:function(e){var t=this.createList();for(this.scanner.skipSC();!this.scanner.eof&&(t.push(this.MediaQuery(e)),this.scanner.tokenType===Ui);)this.scanner.next();return{type:\"MediaQueryList\",loc:this.getLocationFromList(t),children:t}},generate:function(e){this.children(e,(function(){this.chunk(\",\")}))}},Hi=Se.TYPE.Number,Vi={name:\"Number\",structure:{value:String},parse:function(){return{type:\"Number\",loc:this.getLocation(this.scanner.tokenStart,this.scanner.tokenEnd),value:this.consume(Hi)}},generate:function(e){this.chunk(e.value)}},Ki={name:\"Operator\",structure:{value:String},parse:function(){var e=this.scanner.tokenStart;return this.scanner.next(),{type:\"Operator\",loc:this.getLocation(e,this.scanner.tokenStart),value:this.scanner.substrToCursor(e)}},generate:function(e){this.chunk(e.value)}},Gi=Se.TYPE,$i=Gi.LeftParenthesis,Qi=Gi.RightParenthesis,Xi={name:\"Parentheses\",structure:{children:[[]]},parse:function(e,t){var n,r=this.scanner.tokenStart;return this.eat($i),n=e.call(this,t),this.scanner.eof||this.eat(Qi),{type:\"Parentheses\",loc:this.getLocation(r,this.scanner.tokenStart),children:n}},generate:function(e){this.chunk(\"(\"),this.children(e),this.chunk(\")\")}},Zi=j.consumeNumber,Ji=Se.TYPE.Percentage,eo={name:\"Percentage\",structure:{value:String},parse:function(){var e=this.scanner.tokenStart,t=Zi(this.scanner.source,e);return this.eat(Ji),{type:\"Percentage\",loc:this.getLocation(e,this.scanner.tokenStart),value:this.scanner.source.substring(e,t)}},generate:function(e){this.chunk(e.value),this.chunk(\"%\")}},to=Se.TYPE,no=to.Ident,ro=to.Function,ao=to.Colon,io=to.RightParenthesis,oo={name:\"PseudoClassSelector\",structure:{name:String,children:[[\"Raw\"],null]},parse:function(){var e,t,n=this.scanner.tokenStart,r=null;return this.eat(ao),this.scanner.tokenType===ro?(t=(e=this.consumeFunctionName()).toLowerCase(),this.pseudo.hasOwnProperty(t)?(this.scanner.skipSC(),r=this.pseudo[t].call(this),this.scanner.skipSC()):(r=this.createList()).push(this.Raw(this.scanner.tokenIndex,null,!1)),this.eat(io)):e=this.consume(no),{type:\"PseudoClassSelector\",loc:this.getLocation(n,this.scanner.tokenStart),name:e,children:r}},generate:function(e){this.chunk(\":\"),this.chunk(e.name),null!==e.children&&(this.chunk(\"(\"),this.children(e),this.chunk(\")\"))},walkContext:\"function\"},so=Se.TYPE,lo=so.Ident,co=so.Function,uo=so.Colon,ho=so.RightParenthesis,po={name:\"PseudoElementSelector\",structure:{name:String,children:[[\"Raw\"],null]},parse:function(){var e,t,n=this.scanner.tokenStart,r=null;return this.eat(uo),this.eat(uo),this.scanner.tokenType===co?(t=(e=this.consumeFunctionName()).toLowerCase(),this.pseudo.hasOwnProperty(t)?(this.scanner.skipSC(),r=this.pseudo[t].call(this),this.scanner.skipSC()):(r=this.createList()).push(this.Raw(this.scanner.tokenIndex,null,!1)),this.eat(ho)):e=this.consume(lo),{type:\"PseudoElementSelector\",loc:this.getLocation(n,this.scanner.tokenStart),name:e,children:r}},generate:function(e){this.chunk(\"::\"),this.chunk(e.name),null!==e.children&&(this.chunk(\"(\"),this.children(e),this.chunk(\")\"))},walkContext:\"function\"},fo=Se.isDigit,mo=Se.TYPE,go=mo.Number,bo=mo.Delim;function yo(){this.scanner.skipWS();for(var e=this.consume(go),t=0;t<e.length;t++){var n=e.charCodeAt(t);fo(n)||46===n||this.error(\"Unsigned number is expected\",this.scanner.tokenStart-e.length+t)}return 0===Number(e)&&this.error(\"Zero number is not allowed\",this.scanner.tokenStart-e.length),e}var ko={name:\"Ratio\",structure:{left:String,right:String},parse:function(){var e,t=this.scanner.tokenStart,n=yo.call(this);return this.scanner.skipWS(),this.scanner.isDelim(47)||this.error(\"Solidus is expected\"),this.eat(bo),e=yo.call(this),{type:\"Ratio\",loc:this.getLocation(t,this.scanner.tokenStart),left:n,right:e}},generate:function(e){this.chunk(e.left),this.chunk(\"/\"),this.chunk(e.right)}},vo=Se.TYPE,wo=ea.mode,xo=vo.LeftCurlyBracket;function So(e){return this.Raw(e,wo.leftCurlyBracket,!0)}function Co(){var e=this.SelectorList();return\"Raw\"!==e.type&&!1===this.scanner.eof&&this.scanner.tokenType!==xo&&this.error(),e}var Ao={name:\"Rule\",structure:{prelude:[\"SelectorList\",\"Raw\"],block:[\"Block\"]},parse:function(){var e,t,n=this.scanner.tokenIndex,r=this.scanner.tokenStart;return e=this.parseRulePrelude?this.parseWithFallback(Co,So):So.call(this,n),t=this.Block(!0),{type:\"Rule\",loc:this.getLocation(r,this.scanner.tokenStart),prelude:e,block:t}},generate:function(e){this.node(e.prelude),this.node(e.block)},walkContext:\"rule\"},zo=Se.TYPE.Comma,Po={name:\"SelectorList\",structure:{children:[[\"Selector\",\"Raw\"]]},parse:function(){for(var e=this.createList();!this.scanner.eof&&(e.push(this.Selector()),this.scanner.tokenType===zo);)this.scanner.next();return{type:\"SelectorList\",loc:this.getLocationFromList(e),children:e}},generate:function(e){this.children(e,(function(){this.chunk(\",\")}))},walkContext:\"selector\"},Lo=Se.TYPE.String,To={name:\"String\",structure:{value:String},parse:function(){return{type:\"String\",loc:this.getLocation(this.scanner.tokenStart,this.scanner.tokenEnd),value:this.consume(Lo)}},generate:function(e){this.chunk(e.value)}},Eo=Se.TYPE,Oo=Eo.WhiteSpace,Do=Eo.Comment,Ro=Eo.AtKeyword,Io=Eo.CDO,Mo=Eo.CDC;function No(e){return this.Raw(e,null,!1)}var Bo={name:\"StyleSheet\",structure:{children:[[\"Comment\",\"CDO\",\"CDC\",\"Atrule\",\"Rule\",\"Raw\"]]},parse:function(){for(var e,t=this.scanner.tokenStart,n=this.createList();!this.scanner.eof;){switch(this.scanner.tokenType){case Oo:this.scanner.next();continue;case Do:if(33!==this.scanner.source.charCodeAt(this.scanner.tokenStart+2)){this.scanner.next();continue}e=this.Comment();break;case Io:e=this.CDO();break;case Mo:e=this.CDC();break;case Ro:e=this.parseWithFallback(this.Atrule,No);break;default:e=this.parseWithFallback(this.Rule,No)}n.push(e)}return{type:\"StyleSheet\",loc:this.getLocation(t,this.scanner.tokenStart),children:n}},generate:function(e){this.children(e)},walkContext:\"stylesheet\"},jo=Se.TYPE.Ident;function _o(){this.scanner.tokenType!==jo&&!1===this.scanner.isDelim(42)&&this.error(\"Identifier or asterisk is expected\"),this.scanner.next()}var qo={name:\"TypeSelector\",structure:{name:String},parse:function(){var e=this.scanner.tokenStart;return this.scanner.isDelim(124)?(this.scanner.next(),_o.call(this)):(_o.call(this),this.scanner.isDelim(124)&&(this.scanner.next(),_o.call(this))),{type:\"TypeSelector\",loc:this.getLocation(e,this.scanner.tokenStart),name:this.scanner.substrToCursor(e)}},generate:function(e){this.chunk(e.name)}},Wo=Se.isHexDigit,Fo=Se.cmpChar,Uo=Se.TYPE,Yo=Se.NAME,Ho=Uo.Ident,Vo=Uo.Number,Ko=Uo.Dimension;function Go(e,t){for(var n=this.scanner.tokenStart+e,r=0;n<this.scanner.tokenEnd;n++){var a=this.scanner.source.charCodeAt(n);if(45===a&&t&&0!==r)return 0===Go.call(this,e+r+1,!1)&&this.error(),-1;Wo(a)||this.error(t&&0!==r?\"HyphenMinus\"+(r<6?\" or hex digit\":\"\")+\" is expected\":r<6?\"Hex digit is expected\":\"Unexpected input\",n),++r>6&&this.error(\"Too many hex digits\",n)}return this.scanner.next(),r}function $o(e){for(var t=0;this.scanner.isDelim(63);)++t>e&&this.error(\"Too many question marks\"),this.scanner.next()}function Qo(e){this.scanner.source.charCodeAt(this.scanner.tokenStart)!==e&&this.error(Yo[e]+\" is expected\")}function Xo(){var e=0;return this.scanner.isDelim(43)?(this.scanner.next(),this.scanner.tokenType===Ho?void((e=Go.call(this,0,!0))>0&&$o.call(this,6-e)):this.scanner.isDelim(63)?(this.scanner.next(),void $o.call(this,5)):void this.error(\"Hex digit or question mark is expected\")):this.scanner.tokenType===Vo?(Qo.call(this,43),e=Go.call(this,1,!0),this.scanner.isDelim(63)?void $o.call(this,6-e):this.scanner.tokenType===Ko||this.scanner.tokenType===Vo?(Qo.call(this,45),void Go.call(this,1,!1)):void 0):this.scanner.tokenType===Ko?(Qo.call(this,43),void((e=Go.call(this,1,!0))>0&&$o.call(this,6-e))):void this.error()}var Zo={name:\"UnicodeRange\",structure:{value:String},parse:function(){var e=this.scanner.tokenStart;return Fo(this.scanner.source,e,117)||this.error(\"U is expected\"),Fo(this.scanner.source,e+1,43)||this.error(\"Plus sign is expected\"),this.scanner.next(),Xo.call(this),{type:\"UnicodeRange\",loc:this.getLocation(e,this.scanner.tokenStart),value:this.scanner.substrToCursor(e)}},generate:function(e){this.chunk(e.value)}},Jo=Se.isWhiteSpace,es=Se.cmpStr,ts=Se.TYPE,ns=ts.Function,rs=ts.Url,as=ts.RightParenthesis,is={name:\"Url\",structure:{value:[\"String\",\"Raw\"]},parse:function(){var e,t=this.scanner.tokenStart;switch(this.scanner.tokenType){case rs:for(var n=t+4,r=this.scanner.tokenEnd-1;n<r&&Jo(this.scanner.source.charCodeAt(n));)n++;for(;n<r&&Jo(this.scanner.source.charCodeAt(r-1));)r--;e={type:\"Raw\",loc:this.getLocation(n,r),value:this.scanner.source.substring(n,r)},this.eat(rs);break;case ns:es(this.scanner.source,this.scanner.tokenStart,this.scanner.tokenEnd,\"url(\")||this.error(\"Function name must be `url`\"),this.eat(ns),this.scanner.skipSC(),e=this.String(),this.scanner.skipSC(),this.eat(as);break;default:this.error(\"Url or Function is expected\")}return{type:\"Url\",loc:this.getLocation(t,this.scanner.tokenStart),value:e}},generate:function(e){this.chunk(\"url\"),this.chunk(\"(\"),this.node(e.value),this.chunk(\")\")}},os=Se.TYPE.WhiteSpace,ss=Object.freeze({type:\"WhiteSpace\",loc:null,value:\" \"}),ls={AnPlusB:Vr,Atrule:ca,AtrulePrelude:pa,AttributeSelector:xa,Block:Ma,Brackets:_a,CDC:Wa,CDO:Ua,ClassSelector:Ha,Combinator:Ka,Comment:$a,Declaration:si,DeclarationList:gi,Dimension:ki,Function:wi,HexColor:Si,Identifier:Ai,IdSelector:Pi,MediaFeature:Ni,MediaQuery:Fi,MediaQueryList:Yi,Nth:{name:\"Nth\",structure:{nth:[\"AnPlusB\",\"Identifier\"],selector:[\"SelectorList\",null]},parse:function(e){this.scanner.skipSC();var t,n=this.scanner.tokenStart,r=n,a=null;return t=this.scanner.lookupValue(0,\"odd\")||this.scanner.lookupValue(0,\"even\")?this.Identifier():this.AnPlusB(),this.scanner.skipSC(),e&&this.scanner.lookupValue(0,\"of\")?(this.scanner.next(),a=this.SelectorList(),this.needPositions&&(r=this.getLastListNode(a.children).loc.end.offset)):this.needPositions&&(r=t.loc.end.offset),{type:\"Nth\",loc:this.getLocation(n,r),nth:t,selector:a}},generate:function(e){this.node(e.nth),null!==e.selector&&(this.chunk(\" of \"),this.node(e.selector))}},Number:Vi,Operator:Ki,Parentheses:Xi,Percentage:eo,PseudoClassSelector:oo,PseudoElementSelector:po,Ratio:ko,Raw:ea,Rule:Ao,Selector:{name:\"Selector\",structure:{children:[[\"TypeSelector\",\"IdSelector\",\"ClassSelector\",\"AttributeSelector\",\"PseudoClassSelector\",\"PseudoElementSelector\",\"Combinator\",\"WhiteSpace\"]]},parse:function(){var e=this.readSequence(this.scope.Selector);return null===this.getFirstListNode(e)&&this.error(\"Selector is expected\"),{type:\"Selector\",loc:this.getLocationFromList(e),children:e}},generate:function(e){this.children(e)}},SelectorList:Po,String:To,StyleSheet:Bo,TypeSelector:qo,UnicodeRange:Zo,Url:is,Value:{name:\"Value\",structure:{children:[[]]},parse:function(){var e=this.scanner.tokenStart,t=this.readSequence(this.scope.Value);return{type:\"Value\",loc:this.getLocation(e,this.scanner.tokenStart),children:t}},generate:function(e){this.children(e)}},WhiteSpace:{name:\"WhiteSpace\",structure:{value:String},parse:function(){return this.eat(os),ss},generate:function(e){this.chunk(e.value)}}},cs=Zn(Rr),us={generic:!0,types:cs.types,atrules:cs.atrules,properties:cs.properties,node:ls},hs=Se.cmpChar,ds=Se.cmpStr,ps=Se.TYPE,fs=ps.Ident,ms=ps.String,gs=ps.Number,bs=ps.Function,ys=ps.Url,ks=ps.Hash,vs=ps.Dimension,ws=ps.Percentage,xs=ps.LeftParenthesis,Ss=ps.LeftSquareBracket,Cs=ps.Comma,As=ps.Delim,zs=function(e){switch(this.scanner.tokenType){case ks:return this.HexColor();case Cs:return e.space=null,e.ignoreWSAfter=!0,this.Operator();case xs:return this.Parentheses(this.readSequence,e.recognizer);case Ss:return this.Brackets(this.readSequence,e.recognizer);case ms:return this.String();case vs:return this.Dimension();case ws:return this.Percentage();case gs:return this.Number();case bs:return ds(this.scanner.source,this.scanner.tokenStart,this.scanner.tokenEnd,\"url(\")?this.Url():this.Function(this.readSequence,e.recognizer);case ys:return this.Url();case fs:return hs(this.scanner.source,this.scanner.tokenStart,117)&&hs(this.scanner.source,this.scanner.tokenStart+1,43)?this.UnicodeRange():this.Identifier();case As:var t=this.scanner.source.charCodeAt(this.scanner.tokenStart);if(47===t||42===t||43===t||45===t)return this.Operator();35===t&&this.error(\"Hex or identifier is expected\",this.scanner.tokenStart+1)}},Ps={getNode:zs},Ls=Se.TYPE,Ts=Ls.Delim,Es=Ls.Ident,Os=Ls.Dimension,Ds=Ls.Percentage,Rs=Ls.Number,Is=Ls.Hash,Ms=Ls.Colon,Ns=Ls.LeftSquareBracket;var Bs={getNode:function(e){switch(this.scanner.tokenType){case Ns:return this.AttributeSelector();case Is:return this.IdSelector();case Ms:return this.scanner.lookupType(1)===Ms?this.PseudoElementSelector():this.PseudoClassSelector();case Es:return this.TypeSelector();case Rs:case Ds:return this.Percentage();case Os:46===this.scanner.source.charCodeAt(this.scanner.tokenStart)&&this.error(\"Identifier is expected\",this.scanner.tokenStart+1);break;case Ts:switch(this.scanner.source.charCodeAt(this.scanner.tokenStart)){case 43:case 62:case 126:return e.space=null,e.ignoreWSAfter=!0,this.Combinator();case 47:return this.Combinator();case 46:return this.ClassSelector();case 42:case 124:return this.TypeSelector();case 35:return this.IdSelector()}}}},js=function(){this.scanner.skipSC();var e=this.createSingleNodeList(this.IdSelector());return this.scanner.skipSC(),e},_s=Se.TYPE,qs=ea.mode,Ws=_s.Comma,Fs={AtrulePrelude:Ps,Selector:Bs,Value:{getNode:zs,\"-moz-element\":js,element:js,expression:function(){return this.createSingleNodeList(this.Raw(this.scanner.tokenIndex,null,!1))},var:function(){var e=this.createList();return this.scanner.skipSC(),e.push(this.Identifier()),this.scanner.skipSC(),this.scanner.tokenType===Ws&&(e.push(this.Operator()),e.push(this.parseCustomProperty?this.Value(null):this.Raw(this.scanner.tokenIndex,qs.exclamationMarkOrSemicolon,!1))),e}}},Us=Se.TYPE,Ys=Us.String,Hs=Us.Ident,Vs=Us.Url,Ks=Us.Function,Gs=Us.LeftParenthesis,$s={parse:{prelude:function(){var e=this.createList();switch(this.scanner.skipSC(),this.scanner.tokenType){case Ys:e.push(this.String());break;case Vs:case Ks:e.push(this.Url());break;default:this.error(\"String or url() is expected\")}return this.lookupNonWSType(0)!==Hs&&this.lookupNonWSType(0)!==Gs||(e.push(this.WhiteSpace()),e.push(this.MediaQueryList())),e},block:null}},Qs=Se.TYPE,Xs=Qs.WhiteSpace,Zs=Qs.Comment,Js=Qs.Ident,el=Qs.Function,tl=Qs.Colon,nl=Qs.LeftParenthesis;function rl(){return this.createSingleNodeList(this.Raw(this.scanner.tokenIndex,null,!1))}function al(){return this.scanner.skipSC(),this.scanner.tokenType===Js&&this.lookupNonWSType(1)===tl?this.createSingleNodeList(this.Declaration()):il.call(this)}function il(){var e,t=this.createList(),n=null;this.scanner.skipSC();e:for(;!this.scanner.eof;){switch(this.scanner.tokenType){case Xs:n=this.WhiteSpace();continue;case Zs:this.scanner.next();continue;case el:e=this.Function(rl,this.scope.AtrulePrelude);break;case Js:e=this.Identifier();break;case nl:e=this.Parentheses(al,this.scope.AtrulePrelude);break;default:break e}null!==n&&(t.push(n),n=null),t.push(e)}return t}var ol={parse:function(){return this.createSingleNodeList(this.SelectorList())}},sl={parse:function(){return this.createSingleNodeList(this.Nth(!0))}},ll={parse:function(){return this.createSingleNodeList(this.Nth(!1))}};var cl=Tr(function(){for(var e={},t=0;t<arguments.length;t++){var n=arguments[t];for(var r in n)e[r]=n[r]}return e}(us,{parseContext:{default:\"StyleSheet\",stylesheet:\"StyleSheet\",atrule:\"Atrule\",atrulePrelude:function(e){return this.AtrulePrelude(e.atrule?String(e.atrule):null)},mediaQueryList:\"MediaQueryList\",mediaQuery:\"MediaQuery\",rule:\"Rule\",selectorList:\"SelectorList\",selector:\"Selector\",block:function(){return this.Block(!0)},declarationList:\"DeclarationList\",declaration:\"Declaration\",value:\"Value\"},scope:Fs,atrule:{\"font-face\":{parse:{prelude:null,block:function(){return this.Block(!0)}}},import:$s,media:{parse:{prelude:function(){return this.createSingleNodeList(this.MediaQueryList())},block:function(){return this.Block(!1)}}},page:{parse:{prelude:function(){return this.createSingleNodeList(this.SelectorList())},block:function(){return this.Block(!0)}}},supports:{parse:{prelude:function(){var e=il.call(this);return null===this.getFirstListNode(e)&&this.error(\"Condition is expected\"),e},block:function(){return this.Block(!1)}}}},pseudo:{dir:{parse:function(){return this.createSingleNodeList(this.Identifier())}},has:{parse:function(){return this.createSingleNodeList(this.SelectorList())}},lang:{parse:function(){return this.createSingleNodeList(this.Identifier())}},matches:ol,not:ol,\"nth-child\":sl,\"nth-last-child\":sl,\"nth-last-of-type\":ll,\"nth-of-type\":ll,slotted:{parse:function(){return this.createSingleNodeList(this.Selector())}}},node:ls},{node:ls})),ul=Object.prototype.hasOwnProperty;function hl(e,t){var n=Object.create(null);if(!Array.isArray(e))return null;for(var r=0;r<e.length;r++){var a=e[r];t&&(a=a.toLowerCase()),n[a]=!0}return n}function dl(e){if(!e)return null;var t=hl(e.tags,!0),n=hl(e.ids),r=hl(e.classes);return null===t&&null===n&&null===r?null:{tags:t,ids:n,classes:r}}var pl={buildIndex:function(e){var t=!1;if(e.scopes&&Array.isArray(e.scopes)){t=Object.create(null);for(var n=0;n<e.scopes.length;n++){var r=e.scopes[n];if(!r||!Array.isArray(r))throw new Error(\"Wrong usage format\");for(var a=0;a<r.length;a++){var i=r[a];if(ul.call(t,i))throw new Error(\"Class can't be used for several scopes: \"+i);t[i]=n+1}}}return{whitelist:dl(e),blacklist:dl(e.blacklist),scopes:t}}},fl={hasNoChildren:function(e){return!e||!e.children||e.children.isEmpty()},isNodeChildrenList:function(e,t){return null!==e&&e.children===t}},ml=cl.keyword,{hasNoChildren:gl}=fl,{isNodeChildrenList:bl}=fl,yl=Object.prototype.hasOwnProperty,kl=cl.walk,{hasNoChildren:vl}=fl;var{isNodeChildrenList:wl}=fl;function xl(e){return\"Operator\"===e.type&&\"+\"!==e.value&&\"-\"!==e.value}var Sl=cl.walk,Cl={Atrule:function(e,t,n){if(e.block&&(null!==this.stylesheet&&(this.stylesheet.firstAtrulesAllowed=!1),gl(e.block)))n.remove(t);else switch(e.name){case\"charset\":if(gl(e.prelude))return void n.remove(t);if(t.prev)return void n.remove(t);break;case\"import\":if(null===this.stylesheet||!this.stylesheet.firstAtrulesAllowed)return void n.remove(t);n.prevUntil(t.prev,(function(e){if(\"Atrule\"!==e.type||\"import\"!==e.name&&\"charset\"!==e.name)return this.root.firstAtrulesAllowed=!1,n.remove(t),!0}),this);break;default:var r=ml(e.name).basename;\"keyframes\"!==r&&\"media\"!==r&&\"supports\"!==r||(gl(e.prelude)||gl(e.block))&&n.remove(t)}},Comment:function(e,t,n){n.remove(t)},Declaration:function(e,t,n){e.value.children&&e.value.children.isEmpty()&&n.remove(t)},Raw:function(e,t,n){(bl(this.stylesheet,n)||bl(this.block,n))&&n.remove(t)},Rule:function(e,t,n,r){if(vl(e.prelude)||vl(e.block))n.remove(t);else{var a=r.usage;!a||null===a.whitelist&&null===a.blacklist||(function e(t,n){return t.children.each((function(r,a,i){var o=!1;kl(r,(function(r){if(null===this.selector||this.selector===t)switch(r.type){case\"SelectorList\":null!==this.function&&\"not\"===this.function.name.toLowerCase()||e(r,n)&&(o=!0);break;case\"ClassSelector\":null===n.whitelist||null===n.whitelist.classes||yl.call(n.whitelist.classes,r.name)||(o=!0),null!==n.blacklist&&null!==n.blacklist.classes&&yl.call(n.blacklist.classes,r.name)&&(o=!0);break;case\"IdSelector\":null===n.whitelist||null===n.whitelist.ids||yl.call(n.whitelist.ids,r.name)||(o=!0),null!==n.blacklist&&null!==n.blacklist.ids&&yl.call(n.blacklist.ids,r.name)&&(o=!0);break;case\"TypeSelector\":\"*\"!==r.name.charAt(r.name.length-1)&&(null===n.whitelist||null===n.whitelist.tags||yl.call(n.whitelist.tags,r.name.toLowerCase())||(o=!0),null!==n.blacklist&&null!==n.blacklist.tags&&yl.call(n.blacklist.tags,r.name.toLowerCase())&&(o=!0))}})),o&&i.remove(a)})),t.children.isEmpty()}(e.prelude,a),!vl(e.prelude))||n.remove(t)}},TypeSelector:function(e,t,n){if(\"*\"===t.data.name){var r=t.next&&t.next.data.type;\"IdSelector\"!==r&&\"ClassSelector\"!==r&&\"AttributeSelector\"!==r&&\"PseudoClassSelector\"!==r&&\"PseudoElementSelector\"!==r||n.remove(t)}},WhiteSpace:function(e,t,n){null!==t.next&&null!==t.prev?wl(this.stylesheet,n)||wl(this.block,n)?n.remove(t):\"WhiteSpace\"!==t.next.data.type?(xl(t.prev.data)||xl(t.next.data))&&n.remove(t):n.remove(t):n.remove(t)}},Al=cl.keyword,zl=/\\\\([0-9A-Fa-f]{1,6})(\\r\\n|[ \\t\\n\\f\\r])?|\\\\./g,Pl=/^(-?\\d|--)|[\\u0000-\\u002c\\u002e\\u002f\\u003A-\\u0040\\u005B-\\u005E\\u0060\\u007B-\\u009f]/;var Ll=cl.List;var Tl=function(e){e.children.each((function(e,t,n){\"Identifier\"===e.type&&\"none\"===e.name.toLowerCase()&&(n.head===n.tail?t.data={type:\"Number\",loc:e.loc,value:\"0\"}:function(e,t){var n=t.prev,r=t.next;null!==r?\"WhiteSpace\"!==r.data.type||null!==n&&\"WhiteSpace\"!==n.data.type||e.remove(r):null!==n&&\"WhiteSpace\"===n.data.type&&e.remove(n),e.remove(t)}(n,t))}))},El=cl.property,Ol={font:function(e){var t=e.children;t.eachRight((function(e,t){if(\"Identifier\"===e.type)if(\"bold\"===e.name)t.data={type:\"Number\",loc:e.loc,value:\"700\"};else if(\"normal\"===e.name){var n=t.prev;n&&\"Operator\"===n.data.type&&\"/\"===n.data.value&&this.remove(n),this.remove(t)}else if(\"medium\"===e.name){var r=t.next;r&&\"Operator\"===r.data.type||this.remove(t)}})),t.each((function(e,t){\"WhiteSpace\"===e.type&&(t.prev&&t.next&&\"WhiteSpace\"!==t.next.data.type||this.remove(t))})),t.isEmpty()&&t.insert(t.createItem({type:\"Identifier\",name:\"normal\"}))},\"font-weight\":function(e){var t=e.children.head.data;if(\"Identifier\"===t.type)switch(t.name){case\"normal\":e.children.head.data={type:\"Number\",loc:t.loc,value:\"400\"};break;case\"bold\":e.children.head.data={type:\"Number\",loc:t.loc,value:\"700\"}}},background:function(e){function t(){if(a.length)return a[a.length-1].type}function n(){\"WhiteSpace\"===t()&&a.pop(),a.length||a.unshift({type:\"Number\",loc:null,value:\"0\"},{type:\"WhiteSpace\",value:\" \"},{type:\"Number\",loc:null,value:\"0\"}),r.push.apply(r,a),a=[]}var r=[],a=[];e.children.each((function(e){if(\"Operator\"===e.type&&\",\"===e.value)return n(),void r.push(e);(\"Identifier\"!==e.type||\"transparent\"!==e.name&&\"none\"!==e.name&&\"repeat\"!==e.name&&\"scroll\"!==e.name)&&(\"WhiteSpace\"!==e.type||a.length&&\"WhiteSpace\"!==t())&&a.push(e)})),n(),e.children=(new Ll).fromArray(r)},border:Tl,outline:Tl},Dl=/^(?:\\+|(-))?0*(\\d*)(?:\\.0*|(\\.\\d*?)0*)?$/,Rl=/^([\\+\\-])?0*(\\d*)(?:\\.0*|(\\.\\d*?)0*)?$/,Il={Dimension:!0,HexColor:!0,Identifier:!0,Number:!0,Raw:!0,UnicodeRange:!0};function Ml(e,t){var n=t&&null!==t.prev&&Il.hasOwnProperty(t.prev.data.type)?Rl:Dl;return\"\"!==(e=String(e).replace(n,\"$1$2$3\"))&&\"-\"!==e||(e=\"0\"),e}var Nl=function(e,t){e.value=Ml(e.value,t)},Bl=Nl.pack=Ml,jl={px:!0,mm:!0,cm:!0,in:!0,pt:!0,pc:!0,em:!0,ex:!0,ch:!0,rem:!0,vh:!0,vw:!0,vmin:!0,vmax:!0,vm:!0},_l=cl.lexer,ql=Nl.pack,Wl=new Set([\"width\",\"min-width\",\"max-width\",\"height\",\"min-height\",\"max-height\",\"flex\",\"-ms-flex\"]),Fl=new RegExp(\"^((\\\\\\\\[0-9a-f]{1,6}(\\\\r\\\\n|[ \\\\n\\\\r\\\\t\\\\f])?|\\\\\\\\[^\\\\n\\\\r\\\\f0-9a-fA-F])|[^\\\"'\\\\(\\\\)\\\\\\\\\\\\s\\0\\b\\v\u000e-\u001f])*$\",\"i\"),Ul=cl.lexer,Yl=Nl.pack,Hl={aliceblue:\"f0f8ff\",antiquewhite:\"faebd7\",aqua:\"0ff\",aquamarine:\"7fffd4\",azure:\"f0ffff\",beige:\"f5f5dc\",bisque:\"ffe4c4\",black:\"000\",blanchedalmond:\"ffebcd\",blue:\"00f\",blueviolet:\"8a2be2\",brown:\"a52a2a\",burlywood:\"deb887\",cadetblue:\"5f9ea0\",chartreuse:\"7fff00\",chocolate:\"d2691e\",coral:\"ff7f50\",cornflowerblue:\"6495ed\",cornsilk:\"fff8dc\",crimson:\"dc143c\",cyan:\"0ff\",darkblue:\"00008b\",darkcyan:\"008b8b\",darkgoldenrod:\"b8860b\",darkgray:\"a9a9a9\",darkgrey:\"a9a9a9\",darkgreen:\"006400\",darkkhaki:\"bdb76b\",darkmagenta:\"8b008b\",darkolivegreen:\"556b2f\",darkorange:\"ff8c00\",darkorchid:\"9932cc\",darkred:\"8b0000\",darksalmon:\"e9967a\",darkseagreen:\"8fbc8f\",darkslateblue:\"483d8b\",darkslategray:\"2f4f4f\",darkslategrey:\"2f4f4f\",darkturquoise:\"00ced1\",darkviolet:\"9400d3\",deeppink:\"ff1493\",deepskyblue:\"00bfff\",dimgray:\"696969\",dimgrey:\"696969\",dodgerblue:\"1e90ff\",firebrick:\"b22222\",floralwhite:\"fffaf0\",forestgreen:\"228b22\",fuchsia:\"f0f\",gainsboro:\"dcdcdc\",ghostwhite:\"f8f8ff\",gold:\"ffd700\",goldenrod:\"daa520\",gray:\"808080\",grey:\"808080\",green:\"008000\",greenyellow:\"adff2f\",honeydew:\"f0fff0\",hotpink:\"ff69b4\",indianred:\"cd5c5c\",indigo:\"4b0082\",ivory:\"fffff0\",khaki:\"f0e68c\",lavender:\"e6e6fa\",lavenderblush:\"fff0f5\",lawngreen:\"7cfc00\",lemonchiffon:\"fffacd\",lightblue:\"add8e6\",lightcoral:\"f08080\",lightcyan:\"e0ffff\",lightgoldenrodyellow:\"fafad2\",lightgray:\"d3d3d3\",lightgrey:\"d3d3d3\",lightgreen:\"90ee90\",lightpink:\"ffb6c1\",lightsalmon:\"ffa07a\",lightseagreen:\"20b2aa\",lightskyblue:\"87cefa\",lightslategray:\"789\",lightslategrey:\"789\",lightsteelblue:\"b0c4de\",lightyellow:\"ffffe0\",lime:\"0f0\",limegreen:\"32cd32\",linen:\"faf0e6\",magenta:\"f0f\",maroon:\"800000\",mediumaquamarine:\"66cdaa\",mediumblue:\"0000cd\",mediumorchid:\"ba55d3\",mediumpurple:\"9370db\",mediumseagreen:\"3cb371\",mediumslateblue:\"7b68ee\",mediumspringgreen:\"00fa9a\",mediumturquoise:\"48d1cc\",mediumvioletred:\"c71585\",midnightblue:\"191970\",mintcream:\"f5fffa\",mistyrose:\"ffe4e1\",moccasin:\"ffe4b5\",navajowhite:\"ffdead\",navy:\"000080\",oldlace:\"fdf5e6\",olive:\"808000\",olivedrab:\"6b8e23\",orange:\"ffa500\",orangered:\"ff4500\",orchid:\"da70d6\",palegoldenrod:\"eee8aa\",palegreen:\"98fb98\",paleturquoise:\"afeeee\",palevioletred:\"db7093\",papayawhip:\"ffefd5\",peachpuff:\"ffdab9\",peru:\"cd853f\",pink:\"ffc0cb\",plum:\"dda0dd\",powderblue:\"b0e0e6\",purple:\"800080\",rebeccapurple:\"639\",red:\"f00\",rosybrown:\"bc8f8f\",royalblue:\"4169e1\",saddlebrown:\"8b4513\",salmon:\"fa8072\",sandybrown:\"f4a460\",seagreen:\"2e8b57\",seashell:\"fff5ee\",sienna:\"a0522d\",silver:\"c0c0c0\",skyblue:\"87ceeb\",slateblue:\"6a5acd\",slategray:\"708090\",slategrey:\"708090\",snow:\"fffafa\",springgreen:\"00ff7f\",steelblue:\"4682b4\",tan:\"d2b48c\",teal:\"008080\",thistle:\"d8bfd8\",tomato:\"ff6347\",turquoise:\"40e0d0\",violet:\"ee82ee\",wheat:\"f5deb3\",white:\"fff\",whitesmoke:\"f5f5f5\",yellow:\"ff0\",yellowgreen:\"9acd32\"},Vl={8e5:\"maroon\",800080:\"purple\",808e3:\"olive\",808080:\"gray\",\"00ffff\":\"cyan\",f0ffff:\"azure\",f5f5dc:\"beige\",ffe4c4:\"bisque\",\"000000\":\"black\",\"0000ff\":\"blue\",a52a2a:\"brown\",ff7f50:\"coral\",ffd700:\"gold\",\"008000\":\"green\",\"4b0082\":\"indigo\",fffff0:\"ivory\",f0e68c:\"khaki\",\"00ff00\":\"lime\",faf0e6:\"linen\",\"000080\":\"navy\",ffa500:\"orange\",da70d6:\"orchid\",cd853f:\"peru\",ffc0cb:\"pink\",dda0dd:\"plum\",f00:\"red\",ff0000:\"red\",fa8072:\"salmon\",a0522d:\"sienna\",c0c0c0:\"silver\",fffafa:\"snow\",d2b48c:\"tan\",\"008080\":\"teal\",ff6347:\"tomato\",ee82ee:\"violet\",f5deb3:\"wheat\",ffffff:\"white\",ffff00:\"yellow\"};function Kl(e,t,n){return n<0&&(n+=1),n>1&&(n-=1),n<1/6?e+6*(t-e)*n:n<.5?t:n<2/3?e+(t-e)*(2/3-n)*6:e}function Gl(e,t,n,r){var a,i,o;if(0===t)a=i=o=n;else{var s=n<.5?n*(1+t):n+t-n*t,l=2*n-s;a=Kl(l,s,e+1/3),i=Kl(l,s,e),o=Kl(l,s,e-1/3)}return[Math.round(255*a),Math.round(255*i),Math.round(255*o),r]}function $l(e){return 1===(e=e.toString(16)).length?\"0\"+e:e}function Ql(e,t,n){for(var r=e.head,a=[],i=!1;null!==r;){var o=r.data,s=o.type;switch(s){case\"Number\":case\"Percentage\":if(i)return;i=!0,a.push({type:s,value:Number(o.value)});break;case\"Operator\":if(\",\"===o.value){if(!i)return;i=!1}else if(i||\"+\"!==o.value)return;break;default:return}r=r.next}if(a.length===t){if(4===a.length){if(\"Number\"!==a[3].type)return;a[3].type=\"Alpha\"}if(n){if(a[0].type!==a[1].type||a[0].type!==a[2].type)return}else{if(\"Number\"!==a[0].type||\"Percentage\"!==a[1].type||\"Percentage\"!==a[2].type)return;a[0].type=\"Angle\"}return a.map((function(e){var t=Math.max(0,e.value);switch(e.type){case\"Number\":t=Math.min(t,255);break;case\"Percentage\":if(t=Math.min(t,100)/100,!n)return t;t*=255;break;case\"Angle\":return(t%360+360)%360/360;case\"Alpha\":return Math.min(t,1)}return Math.round(t)}))}}function Xl(e,t){var n=e.value.toLowerCase();6===n.length&&n[0]===n[1]&&n[2]===n[3]&&n[4]===n[5]&&(n=n[0]+n[2]+n[4]),Vl[n]?t.data={type:\"Identifier\",loc:e.loc,name:Vl[n]}:e.value=n}var Zl={compressFunction:function(e,t,n){var r,a=e.name;if(\"rgba\"===a||\"hsla\"===a){if(!(r=Ql(e.children,4,\"rgba\"===a)))return;if(\"hsla\"===a&&(r=Gl.apply(null,r),e.name=\"rgba\"),0===r[3]){var i=this.function&&this.function.name;if(0===r[0]&&0===r[1]&&0===r[2]||!/^(?:to|from|color-stop)$|gradient$/i.test(i))return void(t.data={type:\"Identifier\",loc:e.loc,name:\"transparent\"})}if(1!==r[3])return void e.children.each((function(e,t,n){\"Operator\"!==e.type?t.data={type:\"Number\",loc:e.loc,value:Yl(r.shift(),null)}:\",\"!==e.value&&n.remove(t)}));a=\"rgb\"}if(\"hsl\"===a){if(!(r=r||Ql(e.children,3,!1)))return;r=Gl.apply(null,r),a=\"rgb\"}if(\"rgb\"===a){if(!(r=r||Ql(e.children,3,!0)))return;var o=t.next;o&&\"WhiteSpace\"!==o.data.type&&n.insert(n.createItem({type:\"WhiteSpace\",value:\" \"}),o),t.data={type:\"HexColor\",loc:e.loc,value:$l(r[0])+$l(r[1])+$l(r[2])},Xl(t.data,t)}},compressIdent:function(e,t){if(null!==this.declaration){var n=e.name.toLowerCase();if(Hl.hasOwnProperty(n)&&Ul.matchDeclaration(this.declaration).isType(e,\"color\")){var r=Hl[n];r.length+1<=n.length?t.data={type:\"HexColor\",loc:e.loc,value:r}:(\"grey\"===n&&(n=\"gray\"),e.name=n)}}},compressHex:Xl},Jl=cl.walk,ec={Atrule:function(e){\"keyframes\"===Al(e.name).basename&&function(e){e.block.children.each((function(e){e.prelude.children.each((function(e){e.children.each((function(e,t){\"Percentage\"===e.type&&\"100\"===e.value?t.data={type:\"TypeSelector\",loc:e.loc,name:\"to\"}:\"TypeSelector\"===e.type&&\"from\"===e.name&&(t.data={type:\"Percentage\",loc:e.loc,value:\"0\"})}))}))}))}(e)},AttributeSelector:function(e){var t=e.value;if(t&&\"String\"===t.type){var n=t.value.replace(/^(.)(.*)\\1$/,\"$2\");(function(e){if(\"\"!==e&&\"-\"!==e)return e=e.replace(zl,\"a\"),!Pl.test(e)})(n)&&(e.value={type:\"Identifier\",loc:t.loc,name:n})}},Value:function(e){if(this.declaration){var t=El(this.declaration.property);Ol.hasOwnProperty(t.basename)&&Ol[t.basename](e)}},Dimension:function(e,t){var n=Bl(e.value,t);if(e.value=n,\"0\"===n&&null!==this.declaration&&null===this.atrulePrelude){var r=e.unit.toLowerCase();if(!jl.hasOwnProperty(r))return;if(\"-ms-flex\"===this.declaration.property||\"flex\"===this.declaration.property)return;if(this.function&&\"calc\"===this.function.name)return;t.data={type:\"Number\",loc:e.loc,value:n}}},Percentage:function(e,t){e.value=ql(e.value,t),\"0\"===e.value&&this.declaration&&!Wl.has(this.declaration.property)&&(t.data={type:\"Number\",loc:e.loc,value:e.value},_l.matchDeclaration(this.declaration).isType(t.data,\"length\")||(t.data=e))},Number:Nl,String:function(e){var t=e.value;t=t.replace(/\\\\(\\r\\n|\\r|\\n|\\f)/g,\"\"),e.value=t},Url:function(e){var t=e.value;if(\"String\"===t.type){var n=t.value[0],r=t.value.substr(1,t.value.length-2);r=r.replace(/\\\\\\\\/g,\"/\"),Fl.test(r)?e.value={type:\"Raw\",loc:e.value.loc,value:r}:e.value.value=-1===r.indexOf('\"')?'\"'+r+'\"':n+r+n}},HexColor:Zl.compressHex,Identifier:Zl.compressIdent,Function:Zl.compressFunction},tc=cl.generate;function nc(){this.seed=0,this.map=Object.create(null)}nc.prototype.resolve=function(e){var t=this.map[e];return t||(t=++this.seed,this.map[e]=t),t};var rc=cl.generate,ac={\"first-letter\":!0,\"first-line\":!0,after:!0,before:!0},ic={link:!0,visited:!0,hover:!0,active:!0,\"first-letter\":!0,\"first-line\":!0,after:!0,before:!0},oc=cl.keyword,sc=cl.walk,lc=cl.generate,cc=function(e,t){var n,r=(n=new nc,function(e){var t=tc(e);return e.id=n.resolve(t),e.length=t.length,e.fingerprint=null,e});return sc(e,{visit:\"Rule\",enter:function(e){e.block.children.each(r),function(e,t){var n=Object.create(null),r=!1;e.prelude.children.each((function(e){var a=\"*\",i=0;e.children.each((function(o){switch(o.type){case\"ClassSelector\":if(t&&t.scopes){var s=t.scopes[o.name]||0;if(0!==i&&s!==i)throw new Error(\"Selector can't has classes from different scopes: \"+rc(e));i=s}break;case\"PseudoClassSelector\":var l=o.name.toLowerCase();ic.hasOwnProperty(l)||(n[l]=!0,r=!0);break;case\"PseudoElementSelector\":l=o.name.toLowerCase();ac.hasOwnProperty(l)||(n[l]=!0,r=!0);break;case\"TypeSelector\":a=o.name.toLowerCase();break;case\"AttributeSelector\":o.flags&&(n[\"[\"+o.flags.toLowerCase()+\"]\"]=!0,r=!0);break;case\"WhiteSpace\":case\"Combinator\":a=\"*\"}})),e.compareMarker=function(e){var t=0,n=0,r=0;return e.children.each((function e(a){switch(a.type){case\"SelectorList\":case\"Selector\":a.children.each(e);break;case\"IdSelector\":t++;break;case\"ClassSelector\":case\"AttributeSelector\":n++;break;case\"PseudoClassSelector\":switch(a.name.toLowerCase()){case\"not\":a.children.each(e);break;case\"before\":case\"after\":case\"first-line\":case\"first-letter\":r++;break;default:n++}break;case\"PseudoElementSelector\":r++;break;case\"TypeSelector\":\"*\"!==a.name.charAt(a.name.length-1)&&r++}})),[t,n,r]}(e).toString(),e.id=null,e.id=rc(e),i&&(e.compareMarker+=\":\"+i),\"*\"!==a&&(e.compareMarker+=\",\"+a)})),e.pseudoSignature=r&&Object.keys(n).sort().join(\",\")}(e,t.usage)}}),sc(e,{visit:\"Atrule\",enter:function(e){e.prelude&&(e.prelude.id=null,e.prelude.id=lc(e.prelude)),\"keyframes\"===oc(e.name).basename&&(e.block.avoidRulesMerge=!0,e.block.children.each((function(e){e.prelude.children.each((function(e){e.compareMarker=e.id}))})))}}),{declaration:r}},uc=cl.List,hc=cl.keyword,dc=Object.prototype.hasOwnProperty,pc=cl.walk;function fc(e,t,n,r){var a=t.data,i=hc(a.name).basename,o=a.name.toLowerCase()+\"/\"+(a.prelude?a.prelude.id:null);dc.call(e,i)||(e[i]=Object.create(null)),r&&delete e[i][o],dc.call(e[i],o)||(e[i][o]=new uc),e[i][o].append(n.remove(t))}function mc(e){return\"Atrule\"===e.type&&\"media\"===e.name}function gc(e,t,n){if(mc(e)){var r=t.prev&&t.prev.data;r&&mc(r)&&e.prelude&&r.prelude&&e.prelude.id===r.prelude.id&&(r.block.children.appendList(e.block.children),n.remove(t))}}var bc=function(e,t){!function(e,t){var n=Object.create(null),r=null;for(var a in e.children.each((function(e,a,i){if(\"Atrule\"===e.type){var o=hc(e.name).basename;switch(o){case\"keyframes\":return void fc(n,a,i,!0);case\"media\":if(t.forceMediaMerge)return void fc(n,a,i,!1)}null===r&&\"charset\"!==o&&\"import\"!==o&&(r=a)}else null===r&&(r=a)})),n)for(var i in n[a])e.children.insertList(n[a][i],\"media\"===a?null:r)}(e,t),pc(e,{visit:\"Atrule\",reverse:!0,enter:gc})},yc=Object.prototype.hasOwnProperty;function kc(e,t){for(var n=e.head;null!==n;){for(var r=t.head;null!==r;){if(n.data.compareMarker===r.data.compareMarker)return!0;r=r.next}n=n.next}return!1}var vc={isEqualSelectors:function(e,t){for(var n=e.head,r=t.head;null!==n&&null!==r&&n.data.id===r.data.id;)n=n.next,r=r.next;return null===n&&null===r},isEqualDeclarations:function(e,t){for(var n=e.head,r=t.head;null!==n&&null!==r&&n.data.id===r.data.id;)n=n.next,r=r.next;return null===n&&null===r},compareDeclarations:function(e,t){for(var n={eq:[],ne1:[],ne2:[],ne2overrided:[]},r=Object.create(null),a=Object.create(null),i=t.head;i;i=i.next)a[i.data.id]=!0;for(i=e.head;i;i=i.next){(o=i.data).fingerprint&&(r[o.fingerprint]=o.important),a[o.id]?(a[o.id]=!1,n.eq.push(o)):n.ne1.push(o)}for(i=t.head;i;i=i.next){var o;a[(o=i.data).id]&&((!yc.call(r,o.fingerprint)||!r[o.fingerprint]&&o.important)&&n.ne2.push(o),n.ne2overrided.push(o))}return n},addSelectors:function(e,t){return t.each((function(t){for(var n=t.id,r=e.head;r;){var a=r.data.id;if(a===n)return;if(a>n)break;r=r.next}e.insert(e.createItem(t),r)})),e},hasSimilarSelectors:kc,unsafeToSkipNode:function e(t){switch(t.type){case\"Rule\":return kc(t.prelude.children,this);case\"Atrule\":if(t.block)return t.block.children.some(e,this);break;case\"Declaration\":return!1}return!0}},wc=cl.walk;function xc(e,t,n){var r=e.prelude.children,a=e.block.children;n.prevUntil(t.prev,(function(i){if(\"Rule\"!==i.type)return vc.unsafeToSkipNode.call(r,i);var o=i.prelude.children,s=i.block.children;if(e.pseudoSignature===i.pseudoSignature){if(vc.isEqualSelectors(o,r))return s.appendList(a),n.remove(t),!0;if(vc.isEqualDeclarations(a,s))return vc.addSelectors(o,r),n.remove(t),!0}return vc.hasSimilarSelectors(r,o)}))}var Sc=cl.List,Cc=cl.walk;function Ac(e,t,n){for(var r=e.prelude.children;r.head!==r.tail;){var a=new Sc;a.insert(r.remove(r.head)),n.insert(n.createItem({type:\"Rule\",loc:e.loc,prelude:{type:\"SelectorList\",loc:e.prelude.loc,children:a},block:{type:\"Block\",loc:e.block.loc,children:e.block.children.copy()},pseudoSignature:e.pseudoSignature}),t)}}var zc=cl.List,Pc=cl.generate,Lc=cl.walk,Tc=[\"top\",\"right\",\"bottom\",\"left\"],Ec={\"margin-top\":\"top\",\"margin-right\":\"right\",\"margin-bottom\":\"bottom\",\"margin-left\":\"left\",\"padding-top\":\"top\",\"padding-right\":\"right\",\"padding-bottom\":\"bottom\",\"padding-left\":\"left\",\"border-top-color\":\"top\",\"border-right-color\":\"right\",\"border-bottom-color\":\"bottom\",\"border-left-color\":\"left\",\"border-top-width\":\"top\",\"border-right-width\":\"right\",\"border-bottom-width\":\"bottom\",\"border-left-width\":\"left\",\"border-top-style\":\"top\",\"border-right-style\":\"right\",\"border-bottom-style\":\"bottom\",\"border-left-style\":\"left\"},Oc={margin:\"margin\",\"margin-top\":\"margin\",\"margin-right\":\"margin\",\"margin-bottom\":\"margin\",\"margin-left\":\"margin\",padding:\"padding\",\"padding-top\":\"padding\",\"padding-right\":\"padding\",\"padding-bottom\":\"padding\",\"padding-left\":\"padding\",\"border-color\":\"border-color\",\"border-top-color\":\"border-color\",\"border-right-color\":\"border-color\",\"border-bottom-color\":\"border-color\",\"border-left-color\":\"border-color\",\"border-width\":\"border-width\",\"border-top-width\":\"border-width\",\"border-right-width\":\"border-width\",\"border-bottom-width\":\"border-width\",\"border-left-width\":\"border-width\",\"border-style\":\"border-style\",\"border-top-style\":\"border-style\",\"border-right-style\":\"border-style\",\"border-bottom-style\":\"border-style\",\"border-left-style\":\"border-style\"};function Dc(e){this.name=e,this.loc=null,this.iehack=void 0,this.sides={top:null,right:null,bottom:null,left:null}}function Rc(e,t,n,r){var a=e.block.children,i=e.prelude.children.first().id;return e.block.children.eachRight((function(e,o){var s=e.property;if(Oc.hasOwnProperty(s)){var l,c,u=Oc[s];r&&i!==r||u in t&&(c=2,l=t[u]),l&&l.add(s,e)||(c=1,(l=new Dc(u)).add(s,e))?(t[u]=l,n.push({operation:c,block:a,item:o,shorthand:l}),r=i):r=null}})),r}Dc.prototype.getValueSequence=function(e,t){var n=[],r=\"\";return!(e.value.children.some((function(t){var a=!1;switch(t.type){case\"Identifier\":switch(t.name){case\"\\\\0\":case\"\\\\9\":return void(r=t.name);case\"inherit\":case\"initial\":case\"unset\":case\"revert\":a=t.name}break;case\"Dimension\":switch(t.unit){case\"rem\":case\"vw\":case\"vh\":case\"vmin\":case\"vmax\":case\"vm\":a=t.unit}break;case\"HexColor\":case\"Number\":case\"Percentage\":break;case\"Function\":a=t.name;break;case\"WhiteSpace\":return!1;default:return!0}n.push({node:t,special:a,important:e.important})}))||n.length>t)&&((\"string\"!=typeof this.iehack||this.iehack===r)&&(this.iehack=r,n))},Dc.prototype.canOverride=function(e,t){var n=this.sides[e];return!n||t.important&&!n.important},Dc.prototype.add=function(e,t){return!!function(){var n=this.sides,r=Ec[e];if(r){if(r in n==!1)return!1;if(!(i=this.getValueSequence(t,1))||!i.length)return!1;for(var a in n)if(null!==n[a]&&n[a].special!==i[0].special)return!1;return!this.canOverride(r,i[0])||(n[r]=i[0],!0)}if(e===this.name){var i;if(!(i=this.getValueSequence(t,4))||!i.length)return!1;switch(i.length){case 1:i[1]=i[0],i[2]=i[0],i[3]=i[0];break;case 2:i[2]=i[0],i[3]=i[1];break;case 3:i[3]=i[1]}for(var o=0;o<4;o++)for(var a in n)if(null!==n[a]&&n[a].special!==i[o].special)return!1;for(o=0;o<4;o++)this.canOverride(Tc[o],i[o])&&(n[Tc[o]]=i[o]);return!0}}.call(this)&&(this.loc||(this.loc=t.loc),!0)},Dc.prototype.isOkToMinimize=function(){var e=this.sides.top,t=this.sides.right,n=this.sides.bottom,r=this.sides.left;if(e&&t&&n&&r){var a=e.important+t.important+n.important+r.important;return 0===a||4===a}return!1},Dc.prototype.getValue=function(){var e=new zc,t=this.sides,n=[t.top,t.right,t.bottom,t.left],r=[Pc(t.top.node),Pc(t.right.node),Pc(t.bottom.node),Pc(t.left.node)];r[3]===r[1]&&(n.pop(),r[2]===r[0]&&(n.pop(),r[1]===r[0]&&n.pop()));for(var a=0;a<n.length;a++)a&&e.appendData({type:\"WhiteSpace\",value:\" \"}),e.appendData(n[a].node);return this.iehack&&(e.appendData({type:\"WhiteSpace\",value:\" \"}),e.appendData({type:\"Identifier\",loc:null,name:this.iehack})),{type:\"Value\",loc:null,children:e}},Dc.prototype.getDeclaration=function(){return{type:\"Declaration\",loc:this.loc,important:this.sides.top.important,property:this.name,value:this.getValue()}};var Ic=function(e,t){var n={},r=[];Lc(e,{visit:\"Rule\",reverse:!0,enter:function(e){var t,a,i=this.block||this.stylesheet,o=(e.pseudoSignature||\"\")+\"|\"+e.prelude.children.first().id;n.hasOwnProperty(i.id)?t=n[i.id]:(t={lastShortSelector:null},n[i.id]=t),t.hasOwnProperty(o)?a=t[o]:(a={},t[o]=a),t.lastShortSelector=Rc.call(this,e,a,r,t.lastShortSelector)}}),function(e,t){e.forEach((function(e){var n=e.shorthand;n.isOkToMinimize()&&(1===e.operation?e.item.data=t(n.getDeclaration()):e.block.remove(e.item))}))}(r,t.declaration)},Mc=cl.property,Nc=cl.keyword,Bc=cl.walk,jc=cl.generate,_c=1,qc={src:1},Wc={display:/table|ruby|flex|-(flex)?box$|grid|contents|run-in/i,\"text-align\":/^(start|end|match-parent|justify-all)$/i},Fc=[\"auto\",\"crosshair\",\"default\",\"move\",\"text\",\"wait\",\"help\",\"n-resize\",\"e-resize\",\"s-resize\",\"w-resize\",\"ne-resize\",\"nw-resize\",\"se-resize\",\"sw-resize\",\"pointer\",\"progress\",\"not-allowed\",\"no-drop\",\"vertical-text\",\"all-scroll\",\"col-resize\",\"row-resize\"],Uc=[\"static\",\"relative\",\"absolute\",\"fixed\"],Yc={\"border-width\":[\"border\"],\"border-style\":[\"border\"],\"border-color\":[\"border\"],\"border-top\":[\"border\"],\"border-right\":[\"border\"],\"border-bottom\":[\"border\"],\"border-left\":[\"border\"],\"border-top-width\":[\"border-top\",\"border-width\",\"border\"],\"border-right-width\":[\"border-right\",\"border-width\",\"border\"],\"border-bottom-width\":[\"border-bottom\",\"border-width\",\"border\"],\"border-left-width\":[\"border-left\",\"border-width\",\"border\"],\"border-top-style\":[\"border-top\",\"border-style\",\"border\"],\"border-right-style\":[\"border-right\",\"border-style\",\"border\"],\"border-bottom-style\":[\"border-bottom\",\"border-style\",\"border\"],\"border-left-style\":[\"border-left\",\"border-style\",\"border\"],\"border-top-color\":[\"border-top\",\"border-color\",\"border\"],\"border-right-color\":[\"border-right\",\"border-color\",\"border\"],\"border-bottom-color\":[\"border-bottom\",\"border-color\",\"border\"],\"border-left-color\":[\"border-left\",\"border-color\",\"border\"],\"margin-top\":[\"margin\"],\"margin-right\":[\"margin\"],\"margin-bottom\":[\"margin\"],\"margin-left\":[\"margin\"],\"padding-top\":[\"padding\"],\"padding-right\":[\"padding\"],\"padding-bottom\":[\"padding\"],\"padding-left\":[\"padding\"],\"font-style\":[\"font\"],\"font-variant\":[\"font\"],\"font-weight\":[\"font\"],\"font-size\":[\"font\"],\"font-family\":[\"font\"],\"list-style-type\":[\"list-style\"],\"list-style-position\":[\"list-style\"],\"list-style-image\":[\"list-style\"]};function Hc(e,t,n){var r=Mc(e).basename;if(\"background\"===r)return e+\":\"+jc(t.value);var a=t.id,i=n[a];if(!i){switch(t.value.type){case\"Value\":var o=\"\",s=\"\",l={},c=!1;t.value.children.each((function e(t){switch(t.type){case\"Value\":case\"Brackets\":case\"Parentheses\":t.children.each(e);break;case\"Raw\":c=!0;break;case\"Identifier\":var n=t.name;o||(o=Nc(n).vendor),/\\\\[09]/.test(n)&&(s=RegExp.lastMatch),\"cursor\"===r?-1===Fc.indexOf(n)&&(l[n]=!0):\"position\"===r?-1===Uc.indexOf(n)&&(l[n]=!0):Wc.hasOwnProperty(r)&&Wc[r].test(n)&&(l[n]=!0);break;case\"Function\":n=t.name;if(o||(o=Nc(n).vendor),\"rect\"===n)t.children.some((function(e){return\"Operator\"===e.type&&\",\"===e.value}))||(n=\"rect-backward\");l[n+\"()\"]=!0,t.children.each(e);break;case\"Dimension\":var a=t.unit;switch(/\\\\[09]/.test(a)&&(s=RegExp.lastMatch),a){case\"rem\":case\"vw\":case\"vh\":case\"vmin\":case\"vmax\":case\"vm\":l[a]=!0}}})),i=c?\"!\"+_c++:\"!\"+Object.keys(l).sort()+\"|\"+s+o;break;case\"Raw\":i=\"!\"+t.value.value;break;default:i=jc(t.value)}n[a]=i}return e+i}function Vc(e,t,n,r,a){var i=e.block.children;i.eachRight((function(e,t){var n,o=e.property,s=Hc(o,e,a);(n=r[s])&&!qc.hasOwnProperty(o)?e.important&&!n.item.data.important?(r[s]={block:i,item:t},n.block.remove(n.item)):i.remove(t):(n=function(e,t,n){var r=Mc(t.property);if(Yc.hasOwnProperty(r.basename))for(var a=Yc[r.basename],i=0;i<a.length;i++){var o=Hc(r.prefix+a[i],t,n),s=e.hasOwnProperty(o)?e[o]:null;if(s&&(!t.important||s.item.data.important))return s}}(r,e,a))?i.remove(t):(e.fingerprint=s,r[s]={block:i,item:t})})),i.isEmpty()&&n.remove(t)}var Kc=cl.walk;function Gc(e,t,n){var r=e.prelude.children,a=e.block.children,i=r.first().compareMarker,o={};n.nextUntil(t.next,(function(t,s){if(\"Rule\"!==t.type)return vc.unsafeToSkipNode.call(r,t);if(e.pseudoSignature!==t.pseudoSignature)return!0;var l=t.prelude.children.head,c=t.block.children,u=l.data.compareMarker;if(u in o)return!0;if(r.head===r.tail&&r.first().id===l.data.id)return a.appendList(c),void n.remove(s);if(vc.isEqualDeclarations(a,c)){var h=l.data.id;return r.some((function(e,t){var n=e.id;return h<n?(r.insert(l,t),!0):t.next?void 0:(r.insert(l),!0)})),void n.remove(s)}if(u===i)return!0;o[u]=!0}))}var $c=cl.List,Qc=cl.walk;function Xc(e){var t=0;return e.each((function(e){t+=e.id.length+1})),t-1}function Zc(e){for(var t=0,n=0;n<e.length;n++)t+=e[n].length;return t+e.length-1}function Jc(e,t,n){var r=null!==this.block&&this.block.avoidRulesMerge,a=e.prelude.children,i=e.block,o=Object.create(null),s=!0,l=!0;n.prevUntil(t.prev,(function(c,u){var h=c.block,d=c.type;if(\"Rule\"!==d){var p=vc.unsafeToSkipNode.call(a,c);return!p&&\"Atrule\"===d&&h&&Qc(h,{visit:\"Rule\",enter:function(e){e.prelude.children.each((function(e){o[e.compareMarker]=!0}))}}),p}var f=c.prelude.children;if(e.pseudoSignature!==c.pseudoSignature)return!0;if(!(l=!f.some((function(e){return e.compareMarker in o})))&&!s)return!0;if(s&&vc.isEqualSelectors(f,a))return h.children.appendList(i.children),n.remove(t),!0;var m=vc.compareDeclarations(i.children,h.children);if(m.eq.length){if(!m.ne1.length&&!m.ne2.length)return l&&(vc.addSelectors(a,f),n.remove(u)),!0;if(!r)if(m.ne1.length&&!m.ne2.length){var g=Xc(a),b=Zc(m.eq);s&&g<b&&(vc.addSelectors(f,a),i.children=(new $c).fromArray(m.ne1))}else if(!m.ne1.length&&m.ne2.length){g=Xc(f),b=Zc(m.eq);l&&g<b&&(vc.addSelectors(a,f),h.children=(new $c).fromArray(m.ne2))}else{var y={type:\"SelectorList\",loc:null,children:vc.addSelectors(f.copy(),a)},k=Xc(y.children)+2;if((b=Zc(m.eq))>=k){var v=n.createItem({type:\"Rule\",loc:null,prelude:y,block:{type:\"Block\",loc:null,children:(new $c).fromArray(m.eq)},pseudoSignature:e.pseudoSignature});return i.children=(new $c).fromArray(m.ne1),h.children=(new $c).fromArray(m.ne2overrided),s?n.insert(v,u):n.insert(v,t),!0}}}s&&(s=!f.some((function(e){return a.some((function(t){return t.compareMarker===e.compareMarker}))}))),f.each((function(e){o[e.compareMarker]=!0}))}))}var eu=function(e,t){var n=cc(e,t);t.logger(\"prepare\",e),bc(e,t),t.logger(\"mergeAtrule\",e),function(e){wc(e,{visit:\"Rule\",enter:xc})}(e),t.logger(\"initialMergeRuleset\",e),function(e){Cc(e,{visit:\"Rule\",reverse:!0,enter:Ac})}(e),t.logger(\"disjoinRuleset\",e),Ic(e,n),t.logger(\"restructShorthand\",e),function(e){var t={},n=Object.create(null);Bc(e,{visit:\"Rule\",reverse:!0,enter:function(e,r,a){var i,o,s=this.block||this.stylesheet,l=(e.pseudoSignature||\"\")+\"|\"+e.prelude.children.first().id;t.hasOwnProperty(s.id)?i=t[s.id]:(i={},t[s.id]=i),i.hasOwnProperty(l)?o=i[l]:(o={},i[l]=o),Vc.call(this,e,r,a,o,n)}})}(e),t.logger(\"restructBlock\",e),function(e){Kc(e,{visit:\"Rule\",enter:Gc})}(e),t.logger(\"mergeRuleset\",e),function(e){Qc(e,{visit:\"Rule\",reverse:!0,enter:Jc})}(e),t.logger(\"restructRuleset\",e)},tu=cl.List,nu=cl.clone,ru=cl.walk;function au(e,t){var n,r=new tu,a=!1;return e.nextUntil(e.head,(function(e,i,o){if(\"Comment\"===e.type)return t&&\"!\"===e.value.charAt(0)?!(!a&&!n)||(o.remove(i),void(n=e)):void o.remove(i);\"WhiteSpace\"!==e.type&&(a=!0),r.insert(o.remove(i))})),{comment:n,stylesheet:{type:\"StyleSheet\",loc:null,children:r}}}function iu(e,t,n,r){r.logger(\"Compress block #\"+n,null,!0);var a=1;return\"StyleSheet\"===e.type&&(e.firstAtrulesAllowed=t,e.id=a++),ru(e,{visit:\"Atrule\",enter:function(e){null!==e.block&&(e.block.id=a++)}}),r.logger(\"init\",e),function(e,t){Sl(e,{leave:function(e,n,r){Cl.hasOwnProperty(e.type)&&Cl[e.type].call(this,e,n,r,t)}})}(e,r),r.logger(\"clean\",e),function(e){Jl(e,{leave:function(e,t,n){ec.hasOwnProperty(e.type)&&ec[e.type].call(this,e,t,n)}})}(e),r.logger(\"replace\",e),r.restructuring&&eu(e,r),e}function ou(e){return\"restructure\"in e?e.restructure:!(\"restructuring\"in e)||e.restructuring}var su=function(e,t){e=e||{type:\"StyleSheet\",loc:null,children:new tu};var n,r,a,i,o={logger:\"function\"==typeof(t=t||{}).logger?t.logger:function(){},restructuring:ou(t),forceMediaMerge:Boolean(t.forceMediaMerge),usage:!!t.usage&&pl.buildIndex(t.usage)},s=function(e){var t=\"comments\"in e?e.comments:\"exclamation\";return\"boolean\"==typeof t?t=!!t&&\"exclamation\":\"exclamation\"!==t&&\"first-exclamation\"!==t&&(t=!1),t}(t),l=!0,c=new tu,u=1;t.clone&&(e=nu(e)),\"StyleSheet\"===e.type?(n=e.children,e.children=c):(i=e,n=(new tu).appendData({type:\"Rule\",loc:null,prelude:{type:\"SelectorList\",loc:null,children:(new tu).appendData({type:\"Selector\",loc:null,children:(new tu).appendData({type:\"TypeSelector\",loc:null,name:\"x\"})})},block:i}));do{if(iu((r=au(n,Boolean(s))).stylesheet,l,u++,o),a=r.stylesheet.children,r.comment&&(c.isEmpty()||c.insert(tu.createItem({type:\"Raw\",value:\"\\n\"})),c.insert(tu.createItem(r.comment)),a.isEmpty()||c.insert(tu.createItem({type:\"Raw\",value:\"\\n\"}))),l&&!a.isEmpty()){var h=a.last();(\"Atrule\"!==h.type||\"import\"!==h.name&&\"charset\"!==h.name)&&(l=!1)}\"exclamation\"!==s&&(s=!1),c.appendList(a)}while(!n.isEmpty());return{ast:e}},lu={version:\"4.0.3\"},cu=Zn(Object.freeze({__proto__:null,version:\"4.0.3\",default:lu})),uu=cl.parse,hu=cl.generate;function du(e,t,n,r){return t.debug&&console.error(\"## \"+e+\" done in %d ms\\n\",Date.now()-n),r}function pu(e){var t,n;return\"function\"!=typeof(e=function(e){var t={};for(var n in e)t[n]=e[n];return t}(e)).logger&&e.debug&&(e.logger=(t=e.debug,function(e,r){var a=e;if(r&&(a=\"[\"+((Date.now()-n)/1e3).toFixed(3)+\"s] \"+a),t>1&&r){var i=hu(r);2===t&&i.length>256&&(i=i.substr(0,256)+\"...\"),a+=\"\\n  \"+i+\"\\n\"}console.error(a),n=Date.now()})),e}function fu(e,t,n){Array.isArray(n)||(n=[n]),n.forEach((function(n){n(e,t)}))}function mu(e,t,n){var r=(n=n||{}).filename||\"<unknown>\",a=du(\"parsing\",n,Date.now(),uu(t,{context:e,filename:r,positions:Boolean(n.sourceMap)}));n.beforeCompress&&du(\"beforeCompress\",n,Date.now(),fu(a,n,n.beforeCompress));var i,o=du(\"compress\",n,Date.now(),su(a,pu(n)));return n.afterCompress&&du(\"afterCompress\",n,Date.now(),fu(o,n,n.afterCompress)),n.sourceMap?du(\"generate(sourceMap: true)\",n,Date.now(),((i=hu(o.ast,{sourceMap:!0})).map._file=r,i.map.setSourceContent(r,t),i)):du(\"generate\",n,Date.now(),{css:hu(o.ast),map:null})}var gu={version:cu.version,minify:function(e,t){return mu(\"stylesheet\",e,t)},minifyBlock:function(e,t){return mu(\"declarationList\",e,t)},syntax:Object.assign({compress:su},cl)},bu=gu.version,yu=gu.minify,ku=gu.minifyBlock,vu=gu.syntax;e.default=gu,e.minify=yu,e.minifyBlock=ku,e.syntax=vu,e.version=bu,Object.defineProperty(e,\"__esModule\",{value:!0})}));","Magento_PageBuilder/js/resource/jarallax/jarallax-video.js":"/*!\n * Video Extension for Jarallax v2.0.3 (https://github.com/nk-o/jarallax)\n * Copyright 2022 nK <https://nkdev.info>\n * Licensed under MIT (https://github.com/nk-o/jarallax/blob/master/LICENSE)\n */\n\n(function (global, factory) {\n  typeof exports === 'object' && typeof module !== 'undefined' ? module.exports = factory() :\n      typeof define === 'function' && define.amd ? define(factory) :\n          (global = typeof globalThis !== 'undefined' ? globalThis : global || self, global.jarallaxVideo = factory());\n})(this, (function () { 'use strict';\n\n  /*!\n   * Name    : Video Worker\n   * Version : 2.0.0\n   * Author  : nK <https://nkdev.info>\n   * GitHub  : https://github.com/nk-o/video-worker\n   */\n\n  /* eslint-disable import/no-mutable-exports */\n\n  /* eslint-disable no-restricted-globals */\n  let win$1;\n\n  if (typeof window !== 'undefined') {\n    win$1 = window;\n  } else if (typeof global !== 'undefined') {\n    win$1 = global;\n  } else if (typeof self !== 'undefined') {\n    win$1 = self;\n  } else {\n    win$1 = {};\n  }\n\n  var global$1$1 = win$1; // Deferred\n  // thanks http://stackoverflow.com/questions/18096715/implement-deferred-object-without-using-jquery\n\n  function Deferred() {\n    this.doneCallbacks = [];\n    this.failCallbacks = [];\n  }\n\n  Deferred.prototype = {\n    execute(list, args) {\n      let i = list.length; // eslint-disable-next-line no-param-reassign\n\n      args = Array.prototype.slice.call(args);\n\n      while (i) {\n        i -= 1;\n        list[i].apply(null, args);\n      }\n    },\n\n    resolve(...args) {\n      this.execute(this.doneCallbacks, args);\n    },\n\n    reject(...args) {\n      this.execute(this.failCallbacks, args);\n    },\n\n    done(callback) {\n      this.doneCallbacks.push(callback);\n    },\n\n    fail(callback) {\n      this.failCallbacks.push(callback);\n    }\n\n  };\n  let ID = 0;\n  let YoutubeAPIadded = 0;\n  let VimeoAPIadded = 0;\n  let loadingYoutubePlayer = 0;\n  let loadingVimeoPlayer = 0;\n  const loadingYoutubeDefer = /*#__PURE__*/new Deferred();\n  const loadingVimeoDefer = /*#__PURE__*/new Deferred();\n\n  class VideoWorker {\n    constructor(url, options) {\n      const self = this;\n      self.url = url;\n      self.options_default = {\n        autoplay: false,\n        loop: false,\n        mute: false,\n        volume: 100,\n        showControls: true,\n        accessibilityHidden: false,\n        // start / end video time in seconds\n        startTime: 0,\n        endTime: 0\n      };\n      self.options = self.extend({}, self.options_default, options); // Fix wrong option name.\n      // Thanks to https://github.com/nk-o/video-worker/issues/13.\n\n      if (typeof self.options.showContols !== 'undefined') {\n        self.options.showControls = self.options.showContols;\n        delete self.options.showContols;\n      } // check URL\n\n\n      self.videoID = self.parseURL(url); // init\n\n      if (self.videoID) {\n        self.ID = ID;\n        ID += 1;\n        self.loadAPI();\n        self.init();\n      }\n    } // Extend like jQuery.extend\n    // eslint-disable-next-line class-methods-use-this\n\n\n    extend(...args) {\n      const out = args[0] || {};\n      Object.keys(args).forEach(i => {\n        if (!args[i]) {\n          return;\n        }\n\n        Object.keys(args[i]).forEach(key => {\n          out[key] = args[i][key];\n        });\n      });\n      return out;\n    }\n\n    parseURL(url) {\n      // parse youtube ID\n      function getYoutubeID(ytUrl) {\n        // eslint-disable-next-line no-useless-escape\n        const regExp = /.*(?:youtu.be\\/|v\\/|u\\/\\w\\/|embed\\/|watch\\?v=)([^#\\&\\?]*).*/;\n        const match = ytUrl.match(regExp);\n        return match && match[1].length === 11 ? match[1] : false;\n      } // parse vimeo ID\n\n\n      function getVimeoID(vmUrl) {\n        // eslint-disable-next-line no-useless-escape\n        const regExp = /https?:\\/\\/(?:www\\.|player\\.)?vimeo.com\\/(?:channels\\/(?:\\w+\\/)?|groups\\/([^/]*)\\/videos\\/|album\\/(\\d+)\\/video\\/|video\\/|)(\\d+)(?:$|\\/|\\?)/;\n        const match = vmUrl.match(regExp);\n        return match && match[3] ? match[3] : false;\n      } // parse local string\n\n\n      function getLocalVideos(locUrl) {\n        // eslint-disable-next-line no-useless-escape\n        const videoFormats = locUrl.split(/,(?=mp4\\:|webm\\:|ogv\\:|ogg\\:)/);\n        const result = {};\n        let ready = 0;\n        videoFormats.forEach(val => {\n          // eslint-disable-next-line no-useless-escape\n          const match = val.match(/^(mp4|webm|ogv|ogg)\\:(.*)/);\n\n          if (match && match[1] && match[2]) {\n            // eslint-disable-next-line prefer-destructuring\n            result[match[1] === 'ogv' ? 'ogg' : match[1]] = match[2];\n            ready = 1;\n          }\n        });\n        return ready ? result : false;\n      }\n\n      const Youtube = getYoutubeID(url);\n      const Vimeo = getVimeoID(url);\n      const Local = getLocalVideos(url);\n\n      if (Youtube) {\n        this.type = 'youtube';\n        return Youtube;\n      }\n\n      if (Vimeo) {\n        this.type = 'vimeo';\n        return Vimeo;\n      }\n\n      if (Local) {\n        this.type = 'local';\n        return Local;\n      }\n\n      return false;\n    }\n\n    isValid() {\n      return !!this.videoID;\n    } // events\n\n\n    on(name, callback) {\n      this.userEventsList = this.userEventsList || []; // add new callback in events list\n\n      (this.userEventsList[name] || (this.userEventsList[name] = [])).push(callback);\n    }\n\n    off(name, callback) {\n      if (!this.userEventsList || !this.userEventsList[name]) {\n        return;\n      }\n\n      if (!callback) {\n        delete this.userEventsList[name];\n      } else {\n        this.userEventsList[name].forEach((val, key) => {\n          if (val === callback) {\n            this.userEventsList[name][key] = false;\n          }\n        });\n      }\n    }\n\n    fire(name, ...args) {\n      if (this.userEventsList && typeof this.userEventsList[name] !== 'undefined') {\n        this.userEventsList[name].forEach(val => {\n          // call with all arguments\n          if (val) {\n            val.apply(this, args);\n          }\n        });\n      }\n    }\n\n    play(start) {\n      const self = this;\n\n      if (!self.player) {\n        return;\n      }\n\n      if (self.type === 'youtube' && self.player.playVideo) {\n        if (typeof start !== 'undefined') {\n          self.player.seekTo(start || 0);\n        }\n\n        if (global$1$1.YT.PlayerState.PLAYING !== self.player.getPlayerState()) {\n          self.player.playVideo();\n        }\n      }\n\n      if (self.type === 'vimeo') {\n        if (typeof start !== 'undefined') {\n          self.player.setCurrentTime(start);\n        }\n\n        self.player.getPaused().then(paused => {\n          if (paused) {\n            self.player.play();\n          }\n        });\n      }\n\n      if (self.type === 'local') {\n        if (typeof start !== 'undefined') {\n          self.player.currentTime = start;\n        }\n\n        if (self.player.paused) {\n          self.player.play();\n        }\n      }\n    }\n\n    pause() {\n      const self = this;\n\n      if (!self.player) {\n        return;\n      }\n\n      if (self.type === 'youtube' && self.player.pauseVideo) {\n        if (global$1$1.YT.PlayerState.PLAYING === self.player.getPlayerState()) {\n          self.player.pauseVideo();\n        }\n      }\n\n      if (self.type === 'vimeo') {\n        self.player.getPaused().then(paused => {\n          if (!paused) {\n            self.player.pause();\n          }\n        });\n      }\n\n      if (self.type === 'local') {\n        if (!self.player.paused) {\n          self.player.pause();\n        }\n      }\n    }\n\n    mute() {\n      const self = this;\n\n      if (!self.player) {\n        return;\n      }\n\n      if (self.type === 'youtube' && self.player.mute) {\n        self.player.mute();\n      }\n\n      if (self.type === 'vimeo' && self.player.setVolume) {\n        self.player.setVolume(0);\n      }\n\n      if (self.type === 'local') {\n        self.$video.muted = true;\n      }\n    }\n\n    unmute() {\n      const self = this;\n\n      if (!self.player) {\n        return;\n      }\n\n      if (self.type === 'youtube' && self.player.mute) {\n        self.player.unMute();\n      }\n\n      if (self.type === 'vimeo' && self.player.setVolume) {\n        self.player.setVolume(self.options.volume);\n      }\n\n      if (self.type === 'local') {\n        self.$video.muted = false;\n      }\n    }\n\n    setVolume(volume = false) {\n      const self = this;\n\n      if (!self.player || !volume) {\n        return;\n      }\n\n      if (self.type === 'youtube' && self.player.setVolume) {\n        self.player.setVolume(volume);\n      }\n\n      if (self.type === 'vimeo' && self.player.setVolume) {\n        self.player.setVolume(volume);\n      }\n\n      if (self.type === 'local') {\n        self.$video.volume = volume / 100;\n      }\n    }\n\n    getVolume(callback) {\n      const self = this;\n\n      if (!self.player) {\n        callback(false);\n        return;\n      }\n\n      if (self.type === 'youtube' && self.player.getVolume) {\n        callback(self.player.getVolume());\n      }\n\n      if (self.type === 'vimeo' && self.player.getVolume) {\n        self.player.getVolume().then(volume => {\n          callback(volume);\n        });\n      }\n\n      if (self.type === 'local') {\n        callback(self.$video.volume * 100);\n      }\n    }\n\n    getMuted(callback) {\n      const self = this;\n\n      if (!self.player) {\n        callback(null);\n        return;\n      }\n\n      if (self.type === 'youtube' && self.player.isMuted) {\n        callback(self.player.isMuted());\n      }\n\n      if (self.type === 'vimeo' && self.player.getVolume) {\n        self.player.getVolume().then(volume => {\n          callback(!!volume);\n        });\n      }\n\n      if (self.type === 'local') {\n        callback(self.$video.muted);\n      }\n    }\n\n    getImageURL(callback) {\n      const self = this;\n\n      if (self.videoImage) {\n        callback(self.videoImage);\n        return;\n      }\n\n      if (self.type === 'youtube') {\n        const availableSizes = ['maxresdefault', 'sddefault', 'hqdefault', '0'];\n        let step = 0;\n        const tempImg = new Image();\n\n        tempImg.onload = function () {\n          // if no thumbnail, youtube add their own image with width = 120px\n          if ((this.naturalWidth || this.width) !== 120 || step === availableSizes.length - 1) {\n            // ok\n            self.videoImage = `https://img.youtube.com/vi/${self.videoID}/${availableSizes[step]}.jpg`;\n            callback(self.videoImage);\n          } else {\n            // try another size\n            step += 1;\n            this.src = `https://img.youtube.com/vi/${self.videoID}/${availableSizes[step]}.jpg`;\n          }\n        };\n\n        tempImg.src = `https://img.youtube.com/vi/${self.videoID}/${availableSizes[step]}.jpg`;\n      }\n\n      if (self.type === 'vimeo') {\n        let request = new XMLHttpRequest(); // https://vimeo.com/api/oembed.json?url=https://vimeo.com/235212527\n\n        request.open('GET', `https://vimeo.com/api/oembed.json?url=${self.url}`, true);\n\n        request.onreadystatechange = function () {\n          if (this.readyState === 4) {\n            if (this.status >= 200 && this.status < 400) {\n              // Success!\n              const response = JSON.parse(this.responseText);\n\n              if (response.thumbnail_url) {\n                self.videoImage = response.thumbnail_url;\n                callback(self.videoImage);\n              }\n            }\n          }\n        };\n\n        request.send();\n        request = null;\n      }\n    } // fallback to the old version.\n\n\n    getIframe(callback) {\n      this.getVideo(callback);\n    }\n\n    getVideo(callback) {\n      const self = this; // return generated video block\n\n      if (self.$video) {\n        callback(self.$video);\n        return;\n      } // generate new video block\n\n\n      self.onAPIready(() => {\n        let hiddenDiv;\n\n        if (!self.$video) {\n          hiddenDiv = document.createElement('div');\n          hiddenDiv.style.display = 'none';\n        } // Youtube\n\n\n        if (self.type === 'youtube') {\n          self.playerOptions = {\n            // GDPR Compliance.\n            host: 'https://www.youtube-nocookie.com',\n            videoId: self.videoID,\n            playerVars: {\n              autohide: 1,\n              rel: 0,\n              autoplay: 0,\n              // autoplay enable on mobile devices\n              playsinline: 1\n            }\n          }; // hide controls\n\n          if (!self.options.showControls) {\n            self.playerOptions.playerVars.iv_load_policy = 3;\n            self.playerOptions.playerVars.modestbranding = 1;\n            self.playerOptions.playerVars.controls = 0;\n            self.playerOptions.playerVars.showinfo = 0;\n            self.playerOptions.playerVars.disablekb = 1;\n          } // events\n\n\n          let ytStarted;\n          let ytProgressInterval;\n          self.playerOptions.events = {\n            onReady(e) {\n              // mute\n              if (self.options.mute) {\n                e.target.mute();\n              } else if (self.options.volume) {\n                e.target.setVolume(self.options.volume);\n              } // autoplay\n\n\n              if (self.options.autoplay) {\n                self.play(self.options.startTime);\n              }\n\n              self.fire('ready', e); // For seamless loops, set the endTime to 0.1 seconds less than the video's duration\n              // https://github.com/nk-o/video-worker/issues/2\n\n              if (self.options.loop && !self.options.endTime) {\n                const secondsOffset = 0.1;\n                self.options.endTime = self.player.getDuration() - secondsOffset;\n              } // volumechange\n\n\n              setInterval(() => {\n                self.getVolume(volume => {\n                  if (self.options.volume !== volume) {\n                    self.options.volume = volume;\n                    self.fire('volumechange', e);\n                  }\n                });\n              }, 150);\n            },\n\n            onStateChange(e) {\n              // loop\n              if (self.options.loop && e.data === global$1$1.YT.PlayerState.ENDED) {\n                self.play(self.options.startTime);\n              }\n\n              if (!ytStarted && e.data === global$1$1.YT.PlayerState.PLAYING) {\n                ytStarted = 1;\n                self.fire('started', e);\n              }\n\n              if (e.data === global$1$1.YT.PlayerState.PLAYING) {\n                self.fire('play', e);\n              }\n\n              if (e.data === global$1$1.YT.PlayerState.PAUSED) {\n                self.fire('pause', e);\n              }\n\n              if (e.data === global$1$1.YT.PlayerState.ENDED) {\n                self.fire('ended', e);\n              } // progress check\n\n\n              if (e.data === global$1$1.YT.PlayerState.PLAYING) {\n                ytProgressInterval = setInterval(() => {\n                  self.fire('timeupdate', e); // check for end of video and play again or stop\n\n                  if (self.options.endTime && self.player.getCurrentTime() >= self.options.endTime) {\n                    if (self.options.loop) {\n                      self.play(self.options.startTime);\n                    } else {\n                      self.pause();\n                    }\n                  }\n                }, 150);\n              } else {\n                clearInterval(ytProgressInterval);\n              }\n            },\n\n            onError(e) {\n              self.fire('error', e);\n            }\n\n          };\n          const firstInit = !self.$video;\n\n          if (firstInit) {\n            const div = document.createElement('div');\n            div.setAttribute('id', self.playerID);\n            hiddenDiv.appendChild(div);\n            document.body.appendChild(hiddenDiv);\n          }\n\n          self.player = self.player || new global$1$1.YT.Player(self.playerID, self.playerOptions);\n\n          if (firstInit) {\n            self.$video = document.getElementById(self.playerID); // add accessibility attributes\n\n            if (self.options.accessibilityHidden) {\n              self.$video.setAttribute('tabindex', '-1');\n              self.$video.setAttribute('aria-hidden', 'true');\n            } // get video width and height\n\n\n            self.videoWidth = parseInt(self.$video.getAttribute('width'), 10) || 1280;\n            self.videoHeight = parseInt(self.$video.getAttribute('height'), 10) || 720;\n          }\n        } // Vimeo\n\n\n        if (self.type === 'vimeo') {\n          self.playerOptions = {\n            // GDPR Compliance.\n            dnt: 1,\n            id: self.videoID,\n            autopause: 0,\n            transparent: 0,\n            autoplay: self.options.autoplay ? 1 : 0,\n            loop: self.options.loop ? 1 : 0,\n            muted: self.options.mute ? 1 : 0\n          };\n\n          if (self.options.volume) {\n            self.playerOptions.volume = self.options.volume;\n          } // hide controls\n\n\n          if (!self.options.showControls) {\n            self.playerOptions.badge = 0;\n            self.playerOptions.byline = 0;\n            self.playerOptions.portrait = 0;\n            self.playerOptions.title = 0;\n            self.playerOptions.background = 1;\n          }\n\n          if (!self.$video) {\n            let playerOptionsString = '';\n            Object.keys(self.playerOptions).forEach(key => {\n              if (playerOptionsString !== '') {\n                playerOptionsString += '&';\n              }\n\n              playerOptionsString += `${key}=${encodeURIComponent(self.playerOptions[key])}`;\n            }); // we need to create iframe manually because when we create it using API\n            // js events won't triggers after iframe moved to another place\n\n            self.$video = document.createElement('iframe');\n            self.$video.setAttribute('id', self.playerID);\n            self.$video.setAttribute('src', `https://player.vimeo.com/video/${self.videoID}?${playerOptionsString}`);\n            self.$video.setAttribute('frameborder', '0');\n            self.$video.setAttribute('mozallowfullscreen', '');\n            self.$video.setAttribute('allowfullscreen', '');\n            self.$video.setAttribute('title', 'Vimeo video player'); // add accessibility attributes\n\n            if (self.options.accessibilityHidden) {\n              self.$video.setAttribute('tabindex', '-1');\n              self.$video.setAttribute('aria-hidden', 'true');\n            }\n\n            hiddenDiv.appendChild(self.$video);\n            document.body.appendChild(hiddenDiv);\n          }\n\n          self.player = self.player || new global$1$1.Vimeo.Player(self.$video, self.playerOptions); // set current time for autoplay\n\n          if (self.options.startTime && self.options.autoplay) {\n            self.player.setCurrentTime(self.options.startTime);\n          } // get video width and height\n\n\n          self.player.getVideoWidth().then(width => {\n            self.videoWidth = width || 1280;\n          });\n          self.player.getVideoHeight().then(height => {\n            self.videoHeight = height || 720;\n          }); // events\n\n          let vmStarted;\n          self.player.on('timeupdate', e => {\n            if (!vmStarted) {\n              self.fire('started', e);\n              vmStarted = 1;\n            }\n\n            self.fire('timeupdate', e); // check for end of video and play again or stop\n\n            if (self.options.endTime) {\n              if (self.options.endTime && e.seconds >= self.options.endTime) {\n                if (self.options.loop) {\n                  self.play(self.options.startTime);\n                } else {\n                  self.pause();\n                }\n              }\n            }\n          });\n          self.player.on('play', e => {\n            self.fire('play', e); // check for the start time and start with it\n\n            if (self.options.startTime && e.seconds === 0) {\n              self.play(self.options.startTime);\n            }\n          });\n          self.player.on('pause', e => {\n            self.fire('pause', e);\n          });\n          self.player.on('ended', e => {\n            self.fire('ended', e);\n          });\n          self.player.on('loaded', e => {\n            self.fire('ready', e);\n          });\n          self.player.on('volumechange', e => {\n            self.fire('volumechange', e);\n          });\n          self.player.on('error', e => {\n            self.fire('error', e);\n          });\n        } // Local\n\n\n        function addSourceToLocal(element, src, type) {\n          const source = document.createElement('source');\n          source.src = src;\n          source.type = type;\n          element.appendChild(source);\n        }\n\n        if (self.type === 'local') {\n          if (!self.$video) {\n            self.$video = document.createElement('video'); // show controls\n\n            if (self.options.showControls) {\n              self.$video.controls = true;\n            } // mute\n\n\n            if (self.options.mute) {\n              self.$video.muted = true;\n            } else if (self.$video.volume) {\n              self.$video.volume = self.options.volume / 100;\n            } // loop\n\n\n            if (self.options.loop) {\n              self.$video.loop = true;\n            } // autoplay enable on mobile devices\n\n\n            self.$video.setAttribute('playsinline', '');\n            self.$video.setAttribute('webkit-playsinline', ''); // add accessibility attributes\n\n            if (self.options.accessibilityHidden) {\n              self.$video.setAttribute('tabindex', '-1');\n              self.$video.setAttribute('aria-hidden', 'true');\n            }\n\n            self.$video.setAttribute('id', self.playerID);\n            hiddenDiv.appendChild(self.$video);\n            document.body.appendChild(hiddenDiv);\n            Object.keys(self.videoID).forEach(key => {\n              addSourceToLocal(self.$video, self.videoID[key], `video/${key}`);\n            });\n          }\n\n          self.player = self.player || self.$video;\n          let locStarted;\n          self.player.addEventListener('playing', e => {\n            if (!locStarted) {\n              self.fire('started', e);\n            }\n\n            locStarted = 1;\n          });\n          self.player.addEventListener('timeupdate', function (e) {\n            self.fire('timeupdate', e); // check for end of video and play again or stop\n\n            if (self.options.endTime) {\n              if (self.options.endTime && this.currentTime >= self.options.endTime) {\n                if (self.options.loop) {\n                  self.play(self.options.startTime);\n                } else {\n                  self.pause();\n                }\n              }\n            }\n          });\n          self.player.addEventListener('play', e => {\n            self.fire('play', e);\n          });\n          self.player.addEventListener('pause', e => {\n            self.fire('pause', e);\n          });\n          self.player.addEventListener('ended', e => {\n            self.fire('ended', e);\n          });\n          self.player.addEventListener('loadedmetadata', function () {\n            // get video width and height\n            self.videoWidth = this.videoWidth || 1280;\n            self.videoHeight = this.videoHeight || 720;\n            self.fire('ready'); // autoplay\n\n            if (self.options.autoplay) {\n              self.play(self.options.startTime);\n            }\n          });\n          self.player.addEventListener('volumechange', e => {\n            self.getVolume(volume => {\n              self.options.volume = volume;\n            });\n            self.fire('volumechange', e);\n          });\n          self.player.addEventListener('error', e => {\n            self.fire('error', e);\n          });\n        }\n\n        callback(self.$video);\n      });\n    }\n\n    init() {\n      const self = this;\n      self.playerID = `VideoWorker-${self.ID}`;\n    }\n\n    loadAPI() {\n      const self = this;\n\n      if (YoutubeAPIadded && VimeoAPIadded) {\n        return;\n      }\n\n      let src = ''; // load Youtube API\n\n      if (self.type === 'youtube' && !YoutubeAPIadded) {\n        YoutubeAPIadded = 1;\n        src = 'https://www.youtube.com/iframe_api';\n      } // load Vimeo API\n\n\n      if (self.type === 'vimeo' && !VimeoAPIadded) {\n        VimeoAPIadded = 1; // Useful when Vimeo API added using RequireJS https://github.com/nk-o/video-worker/pull/7\n\n        if (typeof global$1$1.Vimeo !== 'undefined') {\n          return;\n        }\n\n        src = 'https://player.vimeo.com/api/player.js';\n      }\n\n      if (!src) {\n        return;\n      } // add script in head section\n\n\n      let tag = document.createElement('script');\n      let head = document.getElementsByTagName('head')[0];\n      tag.src = src;\n      head.appendChild(tag);\n      head = null;\n      tag = null;\n    }\n\n    onAPIready(callback) {\n      const self = this; // Youtube\n\n      if (self.type === 'youtube') {\n        // Listen for global YT player callback\n        if ((typeof global$1$1.YT === 'undefined' || global$1$1.YT.loaded === 0) && !loadingYoutubePlayer) {\n          // Prevents Ready event from being called twice\n          loadingYoutubePlayer = 1; // Creates deferred so, other players know when to wait.\n\n          global$1$1.onYouTubeIframeAPIReady = function () {\n            global$1$1.onYouTubeIframeAPIReady = null;\n            loadingYoutubeDefer.resolve('done');\n            callback();\n          };\n        } else if (typeof global$1$1.YT === 'object' && global$1$1.YT.loaded === 1) {\n          callback();\n        } else {\n          loadingYoutubeDefer.done(() => {\n            callback();\n          });\n        }\n      } // Vimeo\n\n\n      if (self.type === 'vimeo') {\n        if (typeof global$1$1.Vimeo === 'undefined' && !loadingVimeoPlayer) {\n          loadingVimeoPlayer = 1;\n          const vimeoInterval = setInterval(() => {\n            if (typeof global$1$1.Vimeo !== 'undefined') {\n              clearInterval(vimeoInterval);\n              loadingVimeoDefer.resolve('done');\n              callback();\n            }\n          }, 20);\n        } else if (typeof global$1$1.Vimeo !== 'undefined') {\n          callback();\n        } else {\n          loadingVimeoDefer.done(() => {\n            callback();\n          });\n        }\n      } // Local\n\n\n      if (self.type === 'local') {\n        callback();\n      }\n    }\n\n  }\n\n  function ready(callback) {\n    if ('complete' === document.readyState || 'interactive' === document.readyState) {\n      // Already ready or interactive, execute callback\n      callback();\n    } else {\n      document.addEventListener('DOMContentLoaded', callback, {\n        capture: true,\n        once: true,\n        passive: true\n      });\n    }\n  }\n\n  /* eslint-disable import/no-mutable-exports */\n\n  /* eslint-disable no-restricted-globals */\n  let win;\n\n  if ('undefined' !== typeof window) {\n    win = window;\n  } else if ('undefined' !== typeof global) {\n    win = global;\n  } else if ('undefined' !== typeof self) {\n    win = self;\n  } else {\n    win = {};\n  }\n\n  var global$1 = win;\n\n  function jarallaxVideo(jarallax = global$1.jarallax) {\n    if ('undefined' === typeof jarallax) {\n      return;\n    }\n\n    const Jarallax = jarallax.constructor; // append video after when block will be visible.\n\n    const defOnScroll = Jarallax.prototype.onScroll;\n\n    Jarallax.prototype.onScroll = function () {\n      const self = this;\n      defOnScroll.apply(self);\n      const isReady = !self.isVideoInserted && self.video && (!self.options.videoLazyLoading || self.isElementInViewport) && !self.options.disableVideo();\n\n      if (isReady) {\n        self.isVideoInserted = true;\n        self.video.getVideo(video => {\n          const $parent = video.parentNode;\n          self.css(video, {\n            position: self.image.position,\n            top: '0px',\n            left: '0px',\n            right: '0px',\n            bottom: '0px',\n            width: '100%',\n            height: '100%',\n            maxWidth: 'none',\n            maxHeight: 'none',\n            pointerEvents: 'none',\n            transformStyle: 'preserve-3d',\n            backfaceVisibility: 'hidden',\n            willChange: 'transform,opacity',\n            margin: 0,\n            zIndex: -1\n          });\n          self.$video = video; // add Poster attribute to self-hosted video\n\n          if ('local' === self.video.type) {\n            if (self.image.src) {\n              self.$video.setAttribute('poster', self.image.src);\n            } else if (self.image.$item && 'IMG' === self.image.$item.tagName && self.image.$item.src) {\n              self.$video.setAttribute('poster', self.image.$item.src);\n            }\n          } // insert video tag\n\n\n          self.image.$container.appendChild(video); // remove parent video element (created by VideoWorker)\n\n          $parent.parentNode.removeChild($parent); // call onVideoInsert event\n\n          if (self.options.onVideoInsert) {\n            self.options.onVideoInsert.call(self);\n          }\n        });\n      }\n    }; // cover video\n\n\n    const defCoverImage = Jarallax.prototype.coverImage;\n\n    Jarallax.prototype.coverImage = function () {\n      const self = this;\n      const imageData = defCoverImage.apply(self);\n      const node = self.image.$item ? self.image.$item.nodeName : false;\n\n      if (imageData && self.video && node && ('IFRAME' === node || 'VIDEO' === node)) {\n        let h = imageData.image.height;\n        let w = h * self.image.width / self.image.height;\n        let ml = (imageData.container.width - w) / 2;\n        let mt = imageData.image.marginTop;\n\n        if (imageData.container.width > w) {\n          w = imageData.container.width;\n          h = w * self.image.height / self.image.width;\n          ml = 0;\n          mt += (imageData.image.height - h) / 2;\n        } // add video height over than need to hide controls\n\n\n        if ('IFRAME' === node) {\n          h += 400;\n          mt -= 200;\n        }\n\n        self.css(self.$video, {\n          width: `${w}px`,\n          marginLeft: `${ml}px`,\n          height: `${h}px`,\n          marginTop: `${mt}px`\n        });\n      }\n\n      return imageData;\n    }; // init video\n\n\n    const defInitImg = Jarallax.prototype.initImg;\n\n    Jarallax.prototype.initImg = function () {\n      const self = this;\n      const defaultResult = defInitImg.apply(self);\n\n      if (!self.options.videoSrc) {\n        self.options.videoSrc = self.$item.getAttribute('data-jarallax-video') || null;\n      }\n\n      if (self.options.videoSrc) {\n        self.defaultInitImgResult = defaultResult;\n        return true;\n      }\n\n      return defaultResult;\n    };\n\n    const defCanInitParallax = Jarallax.prototype.canInitParallax;\n\n    Jarallax.prototype.canInitParallax = function () {\n      const self = this;\n      let defaultResult = defCanInitParallax.apply(self);\n\n      if (!self.options.videoSrc) {\n        return defaultResult;\n      } // Init video api\n\n\n      const video = new VideoWorker(self.options.videoSrc, {\n        autoplay: true,\n        loop: self.options.videoLoop,\n        showControls: false,\n        accessibilityHidden: true,\n        startTime: self.options.videoStartTime || 0,\n        endTime: self.options.videoEndTime || 0,\n        mute: self.options.videoVolume ? 0 : 1,\n        volume: self.options.videoVolume || 0\n      }); // call onVideoWorkerInit event\n\n      if (self.options.onVideoWorkerInit) {\n        self.options.onVideoWorkerInit.call(self, video);\n      }\n\n      function resetDefaultImage() {\n        if (self.image.$default_item) {\n          self.image.$item = self.image.$default_item;\n          self.image.$item.style.display = 'block'; // set image width and height\n\n          self.coverImage();\n          self.onScroll();\n        }\n      }\n\n      if (video.isValid()) {\n        // Force enable parallax.\n        // When the parallax disabled on mobile devices, we still need to display videos.\n        // https://github.com/nk-o/jarallax/issues/159\n        if (this.options.disableParallax()) {\n          defaultResult = true;\n          self.image.position = 'absolute';\n          self.options.type = 'scroll';\n          self.options.speed = 1;\n        } // if parallax will not be inited, we can add thumbnail on background.\n\n\n        if (!defaultResult) {\n          if (!self.defaultInitImgResult) {\n            video.getImageURL(url => {\n              // save default user styles\n              const curStyle = self.$item.getAttribute('style');\n\n              if (curStyle) {\n                self.$item.setAttribute('data-jarallax-original-styles', curStyle);\n              } // set new background\n\n\n              self.css(self.$item, {\n                'background-image': `url(\"${url}\")`,\n                'background-position': 'center',\n                'background-size': 'cover'\n              });\n            });\n          } // init video\n\n        } else {\n          video.on('ready', () => {\n            if (self.options.videoPlayOnlyVisible) {\n              const oldOnScroll = self.onScroll;\n\n              self.onScroll = function () {\n                oldOnScroll.apply(self);\n\n                if (!self.videoError && (self.options.videoLoop || !self.options.videoLoop && !self.videoEnded)) {\n                  if (self.isVisible()) {\n                    video.play();\n                  } else {\n                    video.pause();\n                  }\n                }\n              };\n            } else {\n              video.play();\n            }\n          });\n          video.on('started', () => {\n            self.image.$default_item = self.image.$item;\n            self.image.$item = self.$video; // set video width and height\n\n            self.image.width = self.video.videoWidth || 1280;\n            self.image.height = self.video.videoHeight || 720;\n            self.coverImage();\n            self.onScroll(); // hide image\n\n            if (self.image.$default_item) {\n              self.image.$default_item.style.display = 'none';\n            }\n          });\n          video.on('ended', () => {\n            self.videoEnded = true;\n\n            if (!self.options.videoLoop) {\n              // show default image if Loop disabled.\n              resetDefaultImage();\n            }\n          });\n          video.on('error', () => {\n            self.videoError = true; // show default image if video loading error.\n\n            resetDefaultImage();\n          });\n          self.video = video; // set image if not exists\n\n          if (!self.defaultInitImgResult) {\n            // set empty image on self-hosted video if not defined\n            self.image.src = 'data:image/gif;base64,R0lGODlhAQABAIAAAAAAAP///yH5BAEAAAAALAAAAAABAAEAAAIBRAA7';\n\n            if ('local' !== video.type) {\n              video.getImageURL(url => {\n                self.image.bgImage = `url(\"${url}\")`;\n                self.init();\n              });\n              return false;\n            }\n          }\n        }\n      }\n\n      return defaultResult;\n    }; // Destroy video parallax\n\n\n    const defDestroy = Jarallax.prototype.destroy;\n\n    Jarallax.prototype.destroy = function () {\n      const self = this;\n\n      if (self.image.$default_item) {\n        self.image.$item = self.image.$default_item;\n        delete self.image.$default_item;\n      }\n\n      defDestroy.apply(self);\n    };\n  }\n\n  jarallaxVideo(); // data-jarallax-video initialization\n\n  ready(() => {\n    if ('undefined' !== typeof global$1.jarallax) {\n      global$1.jarallax(document.querySelectorAll('[data-jarallax-video]'));\n    }\n  }); // We should add VideoWorker globally, since some project uses it.\n\n  if (!global$1.VideoWorker) {\n    global$1.VideoWorker = VideoWorker;\n  }\n\n  return jarallaxVideo;\n\n}));\n//# sourceMappingURL=jarallax-video.js.map\n","Magento_PageBuilder/js/resource/jarallax/jarallax-wrapper.js":"/**\n * Copyright \u00a9 Magento, Inc. All rights reserved.\n * See COPYING.txt for license details.\n */\n\ndefine([\n    'Magento_PageBuilder/js/resource/jarallax/jarallax'\n], function(jarallax){\n    'use strict';\n\n    window.jarallax = window.jarallax || jarallax;\n});\n","Magento_PageBuilder/js/resource/jarallax/jarallax.js":"/*!\n * Jarallax v2.0.3 (https://github.com/nk-o/jarallax)\n * Copyright 2022 nK <https://nkdev.info>\n * Licensed under MIT (https://github.com/nk-o/jarallax/blob/master/LICENSE)\n */\n(function (global, factory) {\n  typeof exports === 'object' && typeof module !== 'undefined' ? module.exports = factory() :\n      typeof define === 'function' && define.amd ? define(factory) :\n          (global = typeof globalThis !== 'undefined' ? globalThis : global || self, global.jarallax = factory());\n})(this, (function () { 'use strict';\n\n  function ready(callback) {\n    if ('complete' === document.readyState || 'interactive' === document.readyState) {\n      // Already ready or interactive, execute callback\n      callback();\n    } else {\n      document.addEventListener('DOMContentLoaded', callback, {\n        capture: true,\n        once: true,\n        passive: true\n      });\n    }\n  }\n\n  /* eslint-disable import/no-mutable-exports */\n\n  /* eslint-disable no-restricted-globals */\n  let win;\n\n  if ('undefined' !== typeof window) {\n    win = window;\n  } else if ('undefined' !== typeof global) {\n    win = global;\n  } else if ('undefined' !== typeof self) {\n    win = self;\n  } else {\n    win = {};\n  }\n\n  var global$1 = win;\n\n  const {\n    navigator\n  } = global$1;\n  const isMobile = /*#__PURE__*/ /Android|webOS|iPhone|iPad|iPod|BlackBerry|IEMobile|Opera Mini/i.test(navigator.userAgent);\n  let $deviceHelper;\n  /**\n   * The most popular mobile browsers changes height after page scroll and this generates image jumping.\n   * We can fix it using this workaround with vh units.\n   */\n\n  function getDeviceHeight() {\n    if (!$deviceHelper && document.body) {\n      $deviceHelper = document.createElement('div');\n      $deviceHelper.style.cssText = 'position: fixed; top: -9999px; left: 0; height: 100vh; width: 0;';\n      document.body.appendChild($deviceHelper);\n    }\n\n    return ($deviceHelper ? $deviceHelper.clientHeight : 0) || global$1.innerHeight || document.documentElement.clientHeight;\n  } // Window height data\n\n\n  let wndH;\n\n  function updateWndVars() {\n    if (isMobile) {\n      wndH = getDeviceHeight();\n    } else {\n      wndH = global$1.innerHeight || document.documentElement.clientHeight;\n    }\n  }\n\n  updateWndVars();\n  global$1.addEventListener('resize', updateWndVars);\n  global$1.addEventListener('orientationchange', updateWndVars);\n  global$1.addEventListener('load', updateWndVars);\n  ready(() => {\n    updateWndVars();\n  }); // list with all jarallax instances\n  // need to render all in one scroll/resize event\n\n  const jarallaxList = []; // get all parents of the element.\n\n  function getParents(elem) {\n    const parents = [];\n\n    while (null !== elem.parentElement) {\n      elem = elem.parentElement;\n\n      if (1 === elem.nodeType) {\n        parents.push(elem);\n      }\n    }\n\n    return parents;\n  }\n\n  function updateParallax() {\n    if (!jarallaxList.length) {\n      return;\n    }\n\n    jarallaxList.forEach((data, k) => {\n      const {\n        instance,\n        oldData\n      } = data;\n      const clientRect = instance.$item.getBoundingClientRect();\n      const newData = {\n        width: clientRect.width,\n        height: clientRect.height,\n        top: clientRect.top,\n        bottom: clientRect.bottom,\n        wndW: global$1.innerWidth,\n        wndH\n      };\n      const isResized = !oldData || oldData.wndW !== newData.wndW || oldData.wndH !== newData.wndH || oldData.width !== newData.width || oldData.height !== newData.height;\n      const isScrolled = isResized || !oldData || oldData.top !== newData.top || oldData.bottom !== newData.bottom;\n      jarallaxList[k].oldData = newData;\n\n      if (isResized) {\n        instance.onResize();\n      }\n\n      if (isScrolled) {\n        instance.onScroll();\n      }\n    });\n    global$1.requestAnimationFrame(updateParallax);\n  }\n\n  let instanceID = 0; // Jarallax class\n\n  class Jarallax {\n    constructor(item, userOptions) {\n      const self = this;\n      self.instanceID = instanceID;\n      instanceID += 1;\n      self.$item = item;\n      self.defaults = {\n        type: 'scroll',\n        // type of parallax: scroll, scale, opacity, scale-opacity, scroll-opacity\n        speed: 0.5,\n        // supported value from -1 to 2\n        imgSrc: null,\n        imgElement: '.jarallax-img',\n        imgSize: 'cover',\n        imgPosition: '50% 50%',\n        imgRepeat: 'no-repeat',\n        // supported only for background, not for <img> tag\n        keepImg: false,\n        // keep <img> tag in it's default place\n        elementInViewport: null,\n        zIndex: -100,\n        disableParallax: false,\n        disableVideo: false,\n        // video\n        videoSrc: null,\n        videoStartTime: 0,\n        videoEndTime: 0,\n        videoVolume: 0,\n        videoLoop: true,\n        videoPlayOnlyVisible: true,\n        videoLazyLoading: true,\n        // events\n        onScroll: null,\n        // function(calculations) {}\n        onInit: null,\n        // function() {}\n        onDestroy: null,\n        // function() {}\n        onCoverImage: null // function() {}\n\n      }; // prepare data-options\n\n      const dataOptions = self.$item.dataset || {};\n      const pureDataOptions = {};\n      Object.keys(dataOptions).forEach(key => {\n        const loweCaseOption = key.substr(0, 1).toLowerCase() + key.substr(1);\n\n        if (loweCaseOption && 'undefined' !== typeof self.defaults[loweCaseOption]) {\n          pureDataOptions[loweCaseOption] = dataOptions[key];\n        }\n      });\n      self.options = self.extend({}, self.defaults, pureDataOptions, userOptions);\n      self.pureOptions = self.extend({}, self.options); // prepare 'true' and 'false' strings to boolean\n\n      Object.keys(self.options).forEach(key => {\n        if ('true' === self.options[key]) {\n          self.options[key] = true;\n        } else if ('false' === self.options[key]) {\n          self.options[key] = false;\n        }\n      }); // fix speed option [-1.0, 2.0]\n\n      self.options.speed = Math.min(2, Math.max(-1, parseFloat(self.options.speed))); // prepare disableParallax callback\n\n      if ('string' === typeof self.options.disableParallax) {\n        self.options.disableParallax = new RegExp(self.options.disableParallax);\n      }\n\n      if (self.options.disableParallax instanceof RegExp) {\n        const disableParallaxRegexp = self.options.disableParallax;\n\n        self.options.disableParallax = () => disableParallaxRegexp.test(navigator.userAgent);\n      }\n\n      if ('function' !== typeof self.options.disableParallax) {\n        self.options.disableParallax = () => false;\n      } // prepare disableVideo callback\n\n\n      if ('string' === typeof self.options.disableVideo) {\n        self.options.disableVideo = new RegExp(self.options.disableVideo);\n      }\n\n      if (self.options.disableVideo instanceof RegExp) {\n        const disableVideoRegexp = self.options.disableVideo;\n\n        self.options.disableVideo = () => disableVideoRegexp.test(navigator.userAgent);\n      }\n\n      if ('function' !== typeof self.options.disableVideo) {\n        self.options.disableVideo = () => false;\n      } // custom element to check if parallax in viewport\n\n\n      let elementInVP = self.options.elementInViewport; // get first item from array\n\n      if (elementInVP && 'object' === typeof elementInVP && 'undefined' !== typeof elementInVP.length) {\n        [elementInVP] = elementInVP;\n      } // check if dom element\n\n\n      if (!(elementInVP instanceof Element)) {\n        elementInVP = null;\n      }\n\n      self.options.elementInViewport = elementInVP;\n      self.image = {\n        src: self.options.imgSrc || null,\n        $container: null,\n        useImgTag: false,\n        // 1. Position fixed is needed for the most of browsers because absolute position have glitches\n        // 2. On MacOS with smooth scroll there is a huge lags with absolute position - https://github.com/nk-o/jarallax/issues/75\n        // 3. Previously used 'absolute' for mobile devices. But we re-tested on iPhone 12 and 'fixed' position is working better, then 'absolute', so for now position is always 'fixed'\n        position: 'fixed'\n      };\n\n      if (self.initImg() && self.canInitParallax()) {\n        self.init();\n      }\n    } // add styles to element\n    // eslint-disable-next-line class-methods-use-this\n\n\n    css(el, styles) {\n      if ('string' === typeof styles) {\n        return global$1.getComputedStyle(el).getPropertyValue(styles);\n      }\n\n      Object.keys(styles).forEach(key => {\n        el.style[key] = styles[key];\n      });\n      return el;\n    } // Extend like jQuery.extend\n    // eslint-disable-next-line class-methods-use-this\n\n\n    extend(out, ...args) {\n      out = out || {};\n      Object.keys(args).forEach(i => {\n        if (!args[i]) {\n          return;\n        }\n\n        Object.keys(args[i]).forEach(key => {\n          out[key] = args[i][key];\n        });\n      });\n      return out;\n    } // get window size and scroll position. Useful for extensions\n    // eslint-disable-next-line class-methods-use-this\n\n\n    getWindowData() {\n      return {\n        width: global$1.innerWidth || document.documentElement.clientWidth,\n        height: wndH,\n        y: document.documentElement.scrollTop\n      };\n    } // Jarallax functions\n\n\n    initImg() {\n      const self = this; // find image element\n\n      let $imgElement = self.options.imgElement;\n\n      if ($imgElement && 'string' === typeof $imgElement) {\n        $imgElement = self.$item.querySelector($imgElement);\n      } // check if dom element\n\n\n      if (!($imgElement instanceof Element)) {\n        if (self.options.imgSrc) {\n          $imgElement = new Image();\n          $imgElement.src = self.options.imgSrc;\n        } else {\n          $imgElement = null;\n        }\n      }\n\n      if ($imgElement) {\n        if (self.options.keepImg) {\n          self.image.$item = $imgElement.cloneNode(true);\n        } else {\n          self.image.$item = $imgElement;\n          self.image.$itemParent = $imgElement.parentNode;\n        }\n\n        self.image.useImgTag = true;\n      } // true if there is img tag\n\n\n      if (self.image.$item) {\n        return true;\n      } // get image src\n\n\n      if (null === self.image.src) {\n        self.image.src = 'data:image/gif;base64,R0lGODlhAQABAIAAAAAAAP///yH5BAEAAAAALAAAAAABAAEAAAIBRAA7';\n        self.image.bgImage = self.css(self.$item, 'background-image');\n      }\n\n      return !(!self.image.bgImage || 'none' === self.image.bgImage);\n    }\n\n    canInitParallax() {\n      return !this.options.disableParallax();\n    }\n\n    init() {\n      const self = this;\n      const containerStyles = {\n        position: 'absolute',\n        top: 0,\n        left: 0,\n        width: '100%',\n        height: '100%',\n        overflow: 'hidden'\n      };\n      let imageStyles = {\n        pointerEvents: 'none',\n        transformStyle: 'preserve-3d',\n        backfaceVisibility: 'hidden',\n        willChange: 'transform,opacity'\n      };\n\n      if (!self.options.keepImg) {\n        // save default user styles\n        const curStyle = self.$item.getAttribute('style');\n\n        if (curStyle) {\n          self.$item.setAttribute('data-jarallax-original-styles', curStyle);\n        }\n\n        if (self.image.useImgTag) {\n          const curImgStyle = self.image.$item.getAttribute('style');\n\n          if (curImgStyle) {\n            self.image.$item.setAttribute('data-jarallax-original-styles', curImgStyle);\n          }\n        }\n      } // set relative position and z-index to the parent\n\n\n      if ('static' === self.css(self.$item, 'position')) {\n        self.css(self.$item, {\n          position: 'relative'\n        });\n      }\n\n      if ('auto' === self.css(self.$item, 'z-index')) {\n        self.css(self.$item, {\n          zIndex: 0\n        });\n      } // container for parallax image\n\n\n      self.image.$container = document.createElement('div');\n      self.css(self.image.$container, containerStyles);\n      self.css(self.image.$container, {\n        'z-index': self.options.zIndex\n      }); // it will remove some image overlapping\n      // overlapping occur due to an image position fixed inside absolute position element\n      // needed only when background in fixed position\n\n      if ('fixed' === this.image.position) {\n        self.css(self.image.$container, {\n          '-webkit-clip-path': 'polygon(0 0, 100% 0, 100% 100%, 0 100%)',\n          'clip-path': 'polygon(0 0, 100% 0, 100% 100%, 0 100%)'\n        });\n      }\n\n      self.image.$container.setAttribute('id', `jarallax-container-${self.instanceID}`);\n      self.$item.appendChild(self.image.$container); // use img tag\n\n      if (self.image.useImgTag) {\n        imageStyles = self.extend({\n          'object-fit': self.options.imgSize,\n          'object-position': self.options.imgPosition,\n          'max-width': 'none'\n        }, containerStyles, imageStyles); // use div with background image\n      } else {\n        self.image.$item = document.createElement('div');\n\n        if (self.image.src) {\n          imageStyles = self.extend({\n            'background-position': self.options.imgPosition,\n            'background-size': self.options.imgSize,\n            'background-repeat': self.options.imgRepeat,\n            'background-image': self.image.bgImage || `url(\"${self.image.src}\")`\n          }, containerStyles, imageStyles);\n        }\n      }\n\n      if ('opacity' === self.options.type || 'scale' === self.options.type || 'scale-opacity' === self.options.type || 1 === self.options.speed) {\n        self.image.position = 'absolute';\n      } // 1. Check if one of parents have transform style (without this check, scroll transform will be inverted if used parallax with position fixed)\n      //    discussion - https://github.com/nk-o/jarallax/issues/9\n      // 2. Check if parents have overflow scroll\n\n\n      if ('fixed' === self.image.position) {\n        const $parents = getParents(self.$item).filter(el => {\n          const styles = global$1.getComputedStyle(el);\n          const parentTransform = styles['-webkit-transform'] || styles['-moz-transform'] || styles.transform;\n          const overflowRegex = /(auto|scroll)/;\n          return parentTransform && 'none' !== parentTransform || overflowRegex.test(styles.overflow + styles['overflow-y'] + styles['overflow-x']);\n        });\n        self.image.position = $parents.length ? 'absolute' : 'fixed';\n      } // add position to parallax block\n\n\n      imageStyles.position = self.image.position; // insert parallax image\n\n      self.css(self.image.$item, imageStyles);\n      self.image.$container.appendChild(self.image.$item); // set initial position and size\n\n      self.onResize();\n      self.onScroll(true); // call onInit event\n\n      if (self.options.onInit) {\n        self.options.onInit.call(self);\n      } // remove default user background\n\n\n      if ('none' !== self.css(self.$item, 'background-image')) {\n        self.css(self.$item, {\n          'background-image': 'none'\n        });\n      }\n\n      self.addToParallaxList();\n    } // add to parallax instances list\n\n\n    addToParallaxList() {\n      jarallaxList.push({\n        instance: this\n      });\n\n      if (1 === jarallaxList.length) {\n        global$1.requestAnimationFrame(updateParallax);\n      }\n    } // remove from parallax instances list\n\n\n    removeFromParallaxList() {\n      const self = this;\n      jarallaxList.forEach((data, key) => {\n        if (data.instance.instanceID === self.instanceID) {\n          jarallaxList.splice(key, 1);\n        }\n      });\n    }\n\n    destroy() {\n      const self = this;\n      self.removeFromParallaxList(); // return styles on container as before jarallax init\n\n      const originalStylesTag = self.$item.getAttribute('data-jarallax-original-styles');\n      self.$item.removeAttribute('data-jarallax-original-styles'); // null occurs if there is no style tag before jarallax init\n\n      if (!originalStylesTag) {\n        self.$item.removeAttribute('style');\n      } else {\n        self.$item.setAttribute('style', originalStylesTag);\n      }\n\n      if (self.image.useImgTag) {\n        // return styles on img tag as before jarallax init\n        const originalStylesImgTag = self.image.$item.getAttribute('data-jarallax-original-styles');\n        self.image.$item.removeAttribute('data-jarallax-original-styles'); // null occurs if there is no style tag before jarallax init\n\n        if (!originalStylesImgTag) {\n          self.image.$item.removeAttribute('style');\n        } else {\n          self.image.$item.setAttribute('style', originalStylesTag);\n        } // move img tag to its default position\n\n\n        if (self.image.$itemParent) {\n          self.image.$itemParent.appendChild(self.image.$item);\n        }\n      } // remove additional dom elements\n\n\n      if (self.image.$container) {\n        self.image.$container.parentNode.removeChild(self.image.$container);\n      } // call onDestroy event\n\n\n      if (self.options.onDestroy) {\n        self.options.onDestroy.call(self);\n      } // delete jarallax from item\n\n\n      delete self.$item.jarallax;\n    } // Fallback for removed function.\n    // Does nothing now.\n    // eslint-disable-next-line class-methods-use-this\n\n\n    clipContainer() {}\n\n    coverImage() {\n      const self = this;\n      const rect = self.image.$container.getBoundingClientRect();\n      const contH = rect.height;\n      const {\n        speed\n      } = self.options;\n      const isScroll = 'scroll' === self.options.type || 'scroll-opacity' === self.options.type;\n      let scrollDist = 0;\n      let resultH = contH;\n      let resultMT = 0; // scroll parallax\n\n      if (isScroll) {\n        // scroll distance and height for image\n        if (0 > speed) {\n          scrollDist = speed * Math.max(contH, wndH);\n\n          if (wndH < contH) {\n            scrollDist -= speed * (contH - wndH);\n          }\n        } else {\n          scrollDist = speed * (contH + wndH);\n        } // size for scroll parallax\n\n\n        if (1 < speed) {\n          resultH = Math.abs(scrollDist - wndH);\n        } else if (0 > speed) {\n          resultH = scrollDist / speed + Math.abs(scrollDist);\n        } else {\n          resultH += (wndH - contH) * (1 - speed);\n        }\n\n        scrollDist /= 2;\n      } // store scroll distance\n\n\n      self.parallaxScrollDistance = scrollDist; // vertical center\n\n      if (isScroll) {\n        resultMT = (wndH - resultH) / 2;\n      } else {\n        resultMT = (contH - resultH) / 2;\n      } // apply result to item\n\n\n      self.css(self.image.$item, {\n        height: `${resultH}px`,\n        marginTop: `${resultMT}px`,\n        left: 'fixed' === self.image.position ? `${rect.left}px` : '0',\n        width: `${rect.width}px`\n      }); // call onCoverImage event\n\n      if (self.options.onCoverImage) {\n        self.options.onCoverImage.call(self);\n      } // return some useful data. Used in the video cover function\n\n\n      return {\n        image: {\n          height: resultH,\n          marginTop: resultMT\n        },\n        container: rect\n      };\n    }\n\n    isVisible() {\n      return this.isElementInViewport || false;\n    }\n\n    onScroll(force) {\n      const self = this;\n      const rect = self.$item.getBoundingClientRect();\n      const contT = rect.top;\n      const contH = rect.height;\n      const styles = {}; // check if in viewport\n\n      let viewportRect = rect;\n\n      if (self.options.elementInViewport) {\n        viewportRect = self.options.elementInViewport.getBoundingClientRect();\n      }\n\n      self.isElementInViewport = 0 <= viewportRect.bottom && 0 <= viewportRect.right && viewportRect.top <= wndH && viewportRect.left <= global$1.innerWidth; // stop calculations if item is not in viewport\n\n      if (force ? false : !self.isElementInViewport) {\n        return;\n      } // calculate parallax helping variables\n\n\n      const beforeTop = Math.max(0, contT);\n      const beforeTopEnd = Math.max(0, contH + contT);\n      const afterTop = Math.max(0, -contT);\n      const beforeBottom = Math.max(0, contT + contH - wndH);\n      const beforeBottomEnd = Math.max(0, contH - (contT + contH - wndH));\n      const afterBottom = Math.max(0, -contT + wndH - contH);\n      const fromViewportCenter = 1 - 2 * ((wndH - contT) / (wndH + contH)); // calculate on how percent of section is visible\n\n      let visiblePercent = 1;\n\n      if (contH < wndH) {\n        visiblePercent = 1 - (afterTop || beforeBottom) / contH;\n      } else if (beforeTopEnd <= wndH) {\n        visiblePercent = beforeTopEnd / wndH;\n      } else if (beforeBottomEnd <= wndH) {\n        visiblePercent = beforeBottomEnd / wndH;\n      } // opacity\n\n\n      if ('opacity' === self.options.type || 'scale-opacity' === self.options.type || 'scroll-opacity' === self.options.type) {\n        styles.transform = 'translate3d(0,0,0)';\n        styles.opacity = visiblePercent;\n      } // scale\n\n\n      if ('scale' === self.options.type || 'scale-opacity' === self.options.type) {\n        let scale = 1;\n\n        if (0 > self.options.speed) {\n          scale -= self.options.speed * visiblePercent;\n        } else {\n          scale += self.options.speed * (1 - visiblePercent);\n        }\n\n        styles.transform = `scale(${scale}) translate3d(0,0,0)`;\n      } // scroll\n\n\n      if ('scroll' === self.options.type || 'scroll-opacity' === self.options.type) {\n        let positionY = self.parallaxScrollDistance * fromViewportCenter; // fix if parallax block in absolute position\n\n        if ('absolute' === self.image.position) {\n          positionY -= contT;\n        }\n\n        styles.transform = `translate3d(0,${positionY}px,0)`;\n      }\n\n      self.css(self.image.$item, styles); // call onScroll event\n\n      if (self.options.onScroll) {\n        self.options.onScroll.call(self, {\n          section: rect,\n          beforeTop,\n          beforeTopEnd,\n          afterTop,\n          beforeBottom,\n          beforeBottomEnd,\n          afterBottom,\n          visiblePercent,\n          fromViewportCenter\n        });\n      }\n    }\n\n    onResize() {\n      this.coverImage();\n    }\n\n  } // global definition\n\n\n  const jarallax = function (items, options, ...args) {\n    // check for dom element\n    // thanks: http://stackoverflow.com/questions/384286/javascript-isdom-how-do-you-check-if-a-javascript-object-is-a-dom-object\n    if ('object' === typeof HTMLElement ? items instanceof HTMLElement : items && 'object' === typeof items && null !== items && 1 === items.nodeType && 'string' === typeof items.nodeName) {\n      items = [items];\n    }\n\n    const len = items.length;\n    let k = 0;\n    let ret;\n\n    for (k; k < len; k += 1) {\n      if ('object' === typeof options || 'undefined' === typeof options) {\n        if (!items[k].jarallax) {\n          items[k].jarallax = new Jarallax(items[k], options);\n        }\n      } else if (items[k].jarallax) {\n        // eslint-disable-next-line prefer-spread\n        ret = items[k].jarallax[options].apply(items[k].jarallax, args);\n      }\n\n      if ('undefined' !== typeof ret) {\n        return ret;\n      }\n    }\n\n    return items;\n  };\n\n  jarallax.constructor = Jarallax;\n\n  const $ = global$1.jQuery; // jQuery support\n\n  if ('undefined' !== typeof $) {\n    const $Plugin = function (...args) {\n      Array.prototype.unshift.call(args, this);\n      const res = jarallax.apply(global$1, args);\n      return 'object' !== typeof res ? res : this;\n    };\n\n    $Plugin.constructor = jarallax.constructor; // no conflict\n\n    const old$Plugin = $.fn.jarallax;\n    $.fn.jarallax = $Plugin;\n\n    $.fn.jarallax.noConflict = function () {\n      $.fn.jarallax = old$Plugin;\n      return this;\n    };\n  } // data-jarallax initialization\n\n\n  ready(() => {\n    jarallax(document.querySelectorAll('[data-jarallax]'));\n  });\n\n  return jarallax;\n\n}));\n//# sourceMappingURL=jarallax.js.map\n","Magento_PageBuilder/js/resource/jquery/ui/jquery.ui.touch-punch.min.js":"/*!\n * jQuery UI Touch Punch 0.2.3\n *\n * Copyright 2011\u20132014, Dave Furfero\n * Dual licensed under the MIT or GPL Version 2 licenses.\n *\n * Depends:\n *  jquery.ui.widget.js\n *  jquery.ui.mouse.js\n */\n!function(a){function f(a,b){if(!(a.originalEvent.touches.length>1)){a.preventDefault();var c=a.originalEvent.changedTouches[0],d=document.createEvent(\"MouseEvents\");d.initMouseEvent(b,!0,!0,window,1,c.screenX,c.screenY,c.clientX,c.clientY,!1,!1,!1,!1,0,null),a.target.dispatchEvent(d)}}if(a.support.touch=\"ontouchend\"in document,a.support.touch){var e,b=a.ui.mouse.prototype,c=b._mouseInit,d=b._mouseDestroy;b._touchStart=function(a){var b=this;!e&&b._mouseCapture(a.originalEvent.changedTouches[0])&&(e=!0,b._touchMoved=!1,f(a,\"mouseover\"),f(a,\"mousemove\"),f(a,\"mousedown\"))},b._touchMove=function(a){e&&(this._touchMoved=!0,f(a,\"mousemove\"))},b._touchEnd=function(a){e&&(f(a,\"mouseup\"),f(a,\"mouseout\"),this._touchMoved||f(a,\"click\"),e=!1)},b._mouseInit=function(){var b=this;b.element.bind({touchstart:a.proxy(b,\"_touchStart\"),touchmove:a.proxy(b,\"_touchMove\"),touchend:a.proxy(b,\"_touchEnd\")}),c.call(b)},b._mouseDestroy=function(){var b=this;b.element.unbind({touchstart:a.proxy(b,\"_touchStart\"),touchmove:a.proxy(b,\"_touchMove\"),touchend:a.proxy(b,\"_touchEnd\")}),d.call(b)}}}(jQuery);\n","Magento_PageBuilder/js/resource/html2canvas/html2canvas.min.js":"/*!\n * html2canvas 1.0.0-rc.5 <https://html2canvas.hertzen.com>\n * Copyright (c) 2019 Niklas von Hertzen <https://hertzen.com>\n * Released under MIT License\n */\n!function(A,e){\"object\"==typeof exports&&\"undefined\"!=typeof module?module.exports=e():\"function\"==typeof define&&define.amd?define(e):(A=A||self).html2canvas=e()}(this,function(){\"use strict\";\n    /*! *****************************************************************************\n        Copyright (c) Microsoft Corporation. All rights reserved.\n        Licensed under the Apache License, Version 2.0 (the \"License\"); you may not use\n        this file except in compliance with the License. You may obtain a copy of the\n        License at http://www.apache.org/licenses/LICENSE-2.0\n\n        THIS CODE IS PROVIDED ON AN *AS IS* BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY\n        KIND, EITHER EXPRESS OR IMPLIED, INCLUDING WITHOUT LIMITATION ANY IMPLIED\n        WARRANTIES OR CONDITIONS OF TITLE, FITNESS FOR A PARTICULAR PURPOSE,\n        MERCHANTABLITY OR NON-INFRINGEMENT.\n\n        See the Apache Version 2.0 License for specific language governing permissions\n        and limitations under the License.\n        ***************************************************************************** */var r=function(A,e){return(r=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(A,e){A.__proto__=e}||function(A,e){for(var t in e)e.hasOwnProperty(t)&&(A[t]=e[t])})(A,e)};function A(A,e){function t(){this.constructor=A}r(A,e),A.prototype=null===e?Object.create(e):(t.prototype=e.prototype,new t)}var K=function(){return(K=Object.assign||function(A){for(var e,t=1,r=arguments.length;t<r;t++)for(var n in e=arguments[t])Object.prototype.hasOwnProperty.call(e,n)&&(A[n]=e[n]);return A}).apply(this,arguments)};function a(B,s,o,i){return new(o||(o=Promise))(function(A,e){function t(A){try{n(i.next(A))}catch(A){e(A)}}function r(A){try{n(i.throw(A))}catch(A){e(A)}}function n(e){e.done?A(e.value):new o(function(A){A(e.value)}).then(t,r)}n((i=i.apply(B,s||[])).next())})}function S(t,r){var n,B,s,A,o={label:0,sent:function(){if(1&s[0])throw s[1];return s[1]},trys:[],ops:[]};return A={next:e(0),throw:e(1),return:e(2)},\"function\"==typeof Symbol&&(A[Symbol.iterator]=function(){return this}),A;function e(e){return function(A){return function(e){if(n)throw new TypeError(\"Generator is already executing.\");for(;o;)try{if(n=1,B&&(s=2&e[0]?B.return:e[0]?B.throw||((s=B.return)&&s.call(B),0):B.next)&&!(s=s.call(B,e[1])).done)return s;switch(B=0,s&&(e=[2&e[0],s.value]),e[0]){case 0:case 1:s=e;break;case 4:return o.label++,{value:e[1],done:!1};case 5:o.label++,B=e[1],e=[0];continue;case 7:e=o.ops.pop(),o.trys.pop();continue;default:if(!(s=0<(s=o.trys).length&&s[s.length-1])&&(6===e[0]||2===e[0])){o=0;continue}if(3===e[0]&&(!s||e[1]>s[0]&&e[1]<s[3])){o.label=e[1];break}if(6===e[0]&&o.label<s[1]){o.label=s[1],s=e;break}if(s&&o.label<s[2]){o.label=s[2],o.ops.push(e);break}s[2]&&o.ops.pop(),o.trys.pop();continue}e=r.call(t,o)}catch(A){e=[6,A],B=0}finally{n=s=0}if(5&e[0])throw e[1];return{value:e[0]?e[1]:void 0,done:!0}}([e,A])}}}var I=(n.prototype.add=function(A,e,t,r){return new n(this.left+A,this.top+e,this.width+t,this.height+r)},n.fromClientRect=function(A){return new n(A.left,A.top,A.width,A.height)},n);function n(A,e,t,r){this.left=A,this.top=e,this.width=t,this.height=r}for(var T=function(A){return I.fromClientRect(A.getBoundingClientRect())},c=function(A){for(var e=[],t=0,r=A.length;t<r;){var n=A.charCodeAt(t++);if(55296<=n&&n<=56319&&t<r){var B=A.charCodeAt(t++);56320==(64512&B)?e.push(((1023&n)<<10)+(1023&B)+65536):(e.push(n),t--)}else e.push(n)}return e},l=function(){for(var A=[],e=0;e<arguments.length;e++)A[e]=arguments[e];if(String.fromCodePoint)return String.fromCodePoint.apply(String,A);var t=A.length;if(!t)return\"\";for(var r=[],n=-1,B=\"\";++n<t;){var s=A[n];s<=65535?r.push(s):(s-=65536,r.push(55296+(s>>10),s%1024+56320)),(n+1===t||16384<r.length)&&(B+=String.fromCharCode.apply(String,r),r.length=0)}return B},e=\"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/\",Q=\"undefined\"==typeof Uint8Array?[]:new Uint8Array(256),t=0;t<e.length;t++)Q[e.charCodeAt(t)]=t;function B(A,e,t){return A.slice?A.slice(e,t):new Uint16Array(Array.prototype.slice.call(A,e,t))}var s=(o.prototype.get=function(A){var e;if(0<=A){if(A<55296||56319<A&&A<=65535)return e=((e=this.index[A>>5])<<2)+(31&A),this.data[e];if(A<=65535)return e=((e=this.index[2048+(A-55296>>5)])<<2)+(31&A),this.data[e];if(A<this.highStart)return e=2080+(A>>11),e=this.index[e],e+=A>>5&63,e=((e=this.index[e])<<2)+(31&A),this.data[e];if(A<=1114111)return this.data[this.highValueIndex]}return this.errorValue},o);function o(A,e,t,r,n,B){this.initialValue=A,this.errorValue=e,this.highStart=t,this.highValueIndex=r,this.index=n,this.data=B}function C(A,e,t,r){var n=r[t];if(Array.isArray(A)?-1!==A.indexOf(n):A===n)for(var B=t;B<=r.length;){if((i=r[++B])===e)return!0;if(i!==H)break}if(n===H)for(B=t;0<B;){var s=r[--B];if(Array.isArray(A)?-1!==A.indexOf(s):A===s)for(var o=t;o<=r.length;){var i;if((i=r[++o])===e)return!0;if(i!==H)break}if(s!==H)break}return!1}function g(A,e){for(var t=A;0<=t;){var r=e[t];if(r!==H)return r;t--}return 0}function w(A,e,t,r,n){if(0===t[r])return Y;var B=r-1;if(Array.isArray(n)&&!0===n[B])return Y;var s=B-1,o=1+B,i=e[B],a=0<=s?e[s]:0,c=e[o];if(2===i&&3===c)return Y;if(-1!==j.indexOf(i))return\"!\";if(-1!==j.indexOf(c))return Y;if(-1!==$.indexOf(c))return Y;if(8===g(B,e))return\"\u00f7\";if(11===q.get(A[B])&&(c===X||c===P||c===x))return Y;if(7===i||7===c)return Y;if(9===i)return Y;if(-1===[H,d,f].indexOf(i)&&9===c)return Y;if(-1!==[p,N,m,O,y].indexOf(c))return Y;if(g(B,e)===v)return Y;if(C(23,v,B,e))return Y;if(C([p,N],L,B,e))return Y;if(C(12,12,B,e))return Y;if(i===H)return\"\u00f7\";if(23===i||23===c)return Y;if(16===c||16===i)return\"\u00f7\";if(-1!==[d,f,L].indexOf(c)||14===i)return Y;if(36===a&&-1!==rA.indexOf(i))return Y;if(i===y&&36===c)return Y;if(c===R&&-1!==Z.concat(R,m,D,X,P,x).indexOf(i))return Y;if(-1!==Z.indexOf(c)&&i===D||-1!==Z.indexOf(i)&&c===D)return Y;if(i===M&&-1!==[X,P,x].indexOf(c)||-1!==[X,P,x].indexOf(i)&&c===b)return Y;if(-1!==Z.indexOf(i)&&-1!==AA.indexOf(c)||-1!==AA.indexOf(i)&&-1!==Z.indexOf(c))return Y;if(-1!==[M,b].indexOf(i)&&(c===D||-1!==[v,f].indexOf(c)&&e[1+o]===D)||-1!==[v,f].indexOf(i)&&c===D||i===D&&-1!==[D,y,O].indexOf(c))return Y;if(-1!==[D,y,O,p,N].indexOf(c))for(var Q=B;0<=Q;){if((w=e[Q])===D)return Y;if(-1===[y,O].indexOf(w))break;Q--}if(-1!==[M,b].indexOf(c))for(Q=-1!==[p,N].indexOf(i)?s:B;0<=Q;){var w;if((w=e[Q])===D)return Y;if(-1===[y,O].indexOf(w))break;Q--}if(J===i&&-1!==[J,G,V,z].indexOf(c)||-1!==[G,V].indexOf(i)&&-1!==[G,k].indexOf(c)||-1!==[k,z].indexOf(i)&&c===k)return Y;if(-1!==tA.indexOf(i)&&-1!==[R,b].indexOf(c)||-1!==tA.indexOf(c)&&i===M)return Y;if(-1!==Z.indexOf(i)&&-1!==Z.indexOf(c))return Y;if(i===O&&-1!==Z.indexOf(c))return Y;if(-1!==Z.concat(D).indexOf(i)&&c===v||-1!==Z.concat(D).indexOf(c)&&i===N)return Y;if(41===i&&41===c){for(var u=t[B],U=1;0<u&&41===e[--u];)U++;if(U%2!=0)return Y}return i===P&&c===x?Y:\"\u00f7\"}function u(t,A){A||(A={lineBreak:\"normal\",wordBreak:\"normal\"});var e=function(A,n){void 0===n&&(n=\"strict\");var B=[],s=[],o=[];return A.forEach(function(A,e){var t=q.get(A);if(50<t?(o.push(!0),t-=50):o.push(!1),-1!==[\"normal\",\"auto\",\"loose\"].indexOf(n)&&-1!==[8208,8211,12316,12448].indexOf(A))return s.push(e),B.push(16);if(4!==t&&11!==t)return s.push(e),31===t?B.push(\"strict\"===n?L:X):t===W?B.push(_):29===t?B.push(_):43===t?131072<=A&&A<=196605||196608<=A&&A<=262141?B.push(X):B.push(_):void B.push(t);if(0===e)return s.push(e),B.push(_);var r=B[e-1];return-1===eA.indexOf(r)?(s.push(s[e-1]),B.push(r)):(s.push(e),B.push(_))}),[s,B,o]}(t,A.lineBreak),r=e[0],n=e[1],B=e[2];return\"break-all\"!==A.wordBreak&&\"break-word\"!==A.wordBreak||(n=n.map(function(A){return-1!==[D,_,W].indexOf(A)?X:A})),[r,n,\"keep-all\"===A.wordBreak?B.map(function(A,e){return A&&19968<=t[e]&&t[e]<=40959}):void 0]}var i,U,E,F,h,H=10,d=13,f=15,p=17,N=18,m=19,R=20,L=21,v=22,O=24,D=25,b=26,M=27,y=28,_=30,P=32,x=33,V=34,z=35,X=37,J=38,G=39,k=40,W=42,Y=\"\u00d7\",q=(i=function(A){var e,t,r,n,B,s=.75*A.length,o=A.length,i=0;\"=\"===A[A.length-1]&&(s--,\"=\"===A[A.length-2]&&s--);var a=\"undefined\"!=typeof ArrayBuffer&&\"undefined\"!=typeof Uint8Array&&void 0!==Uint8Array.prototype.slice?new ArrayBuffer(s):new Array(s),c=Array.isArray(a)?a:new Uint8Array(a);for(e=0;e<o;e+=4)t=Q[A.charCodeAt(e)],r=Q[A.charCodeAt(e+1)],n=Q[A.charCodeAt(e+2)],B=Q[A.charCodeAt(e+3)],c[i++]=t<<2|r>>4,c[i++]=(15&r)<<4|n>>2,c[i++]=(3&n)<<6|63&B;return a}(\"KwAAAAAAAAAACA4AIDoAAPAfAAACAAAAAAAIABAAGABAAEgAUABYAF4AZgBeAGYAYABoAHAAeABeAGYAfACEAIAAiACQAJgAoACoAK0AtQC9AMUAXgBmAF4AZgBeAGYAzQDVAF4AZgDRANkA3gDmAOwA9AD8AAQBDAEUARoBIgGAAIgAJwEvATcBPwFFAU0BTAFUAVwBZAFsAXMBewGDATAAiwGTAZsBogGkAawBtAG8AcIBygHSAdoB4AHoAfAB+AH+AQYCDgIWAv4BHgImAi4CNgI+AkUCTQJTAlsCYwJrAnECeQKBAk0CiQKRApkCoQKoArACuALAAsQCzAIwANQC3ALkAjAA7AL0AvwCAQMJAxADGAMwACADJgMuAzYDPgOAAEYDSgNSA1IDUgNaA1oDYANiA2IDgACAAGoDgAByA3YDfgOAAIQDgACKA5IDmgOAAIAAogOqA4AAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAK8DtwOAAIAAvwPHA88D1wPfAyAD5wPsA/QD/AOAAIAABAQMBBIEgAAWBB4EJgQuBDMEIAM7BEEEXgBJBCADUQRZBGEEaQQwADAAcQQ+AXkEgQSJBJEEgACYBIAAoASoBK8EtwQwAL8ExQSAAIAAgACAAIAAgACgAM0EXgBeAF4AXgBeAF4AXgBeANUEXgDZBOEEXgDpBPEE+QQBBQkFEQUZBSEFKQUxBTUFPQVFBUwFVAVcBV4AYwVeAGsFcwV7BYMFiwWSBV4AmgWgBacFXgBeAF4AXgBeAKsFXgCyBbEFugW7BcIFwgXIBcIFwgXQBdQF3AXkBesF8wX7BQMGCwYTBhsGIwYrBjMGOwZeAD8GRwZNBl4AVAZbBl4AXgBeAF4AXgBeAF4AXgBeAF4AXgBeAGMGXgBqBnEGXgBeAF4AXgBeAF4AXgBeAF4AXgB5BoAG4wSGBo4GkwaAAIADHgR5AF4AXgBeAJsGgABGA4AAowarBrMGswagALsGwwbLBjAA0wbaBtoG3QbaBtoG2gbaBtoG2gblBusG8wb7BgMHCwcTBxsHCwcjBysHMAc1BzUHOgdCB9oGSgdSB1oHYAfaBloHaAfaBlIH2gbaBtoG2gbaBtoG2gbaBjUHNQc1BzUHNQc1BzUHNQc1BzUHNQc1BzUHNQc1BzUHNQc1BzUHNQc1BzUHNQc1BzUHNQc1BzUHNQc1BzUHNQc1BzUHNQc1BzUHNQc1BzUHNQc1BzUHNQc1BzUHNQc1BzUHNQc1BzUHNQc1BzUHNQc1BzUHNQc1BzUHNQc1BzUHNQc1BzUHNQc1BzUHNQc1BzUHNQc1BzUHNQc1BzUHNQc1BzUHNQc1BzUHNQc1BzUHNQc1BzUHNQc1BzUHNQc1BzUHNQc1BzUHNQc1BzUHNQc1BzUHNQc1BzUHNQc1BzUHNQc1BzUHNQc1BzUHNQc1BzUHNQc1BzUHNQc1BzUHNQc1BzUHNQc1BzUHNQc1BzUHNQc1BzUHNQc1BzUHNQc1BzUHNQc1BzUHNQc1BzUHNQc1BzUHNQc1BzUHNQc1BzUHNQc1BzUHNQc1BzUHNQc1BzUHNQc1BzUHNQc1BzUHNQc1BzUHNQc1BzUHNQc1BzUHNQc1BzUHNQc1BzUHNQc1BzUHNQc1BzUHNQc1BzUHNQc1BzUHNQc1BzUHbQdeAF4ANQc1BzUHNQc1BzUHNQc1BzUHNQc1BzUHNQc1BzUHNQc1BzUHNQc1BzUHNQc1BzUHNQc1BzUHNQc1BzUHNQc1BzUHNQc1BzUHNQc1BzUHNQc1BzUHNQc1BzUHNQc1BzUHNQc1BzUHNQc1BzUHNQc1BzUHNQc1BzUHNQc1BzUHNQc1BzUHNQc1BzUHNQc1BzUHNQc1BzUHNQc1BzUHNQc1BzUHNQc1BzUHNQc1BzUHNQc1BzUHNQc1BzUHNQc1BzUHNQc1BzUHNQc1BzUHNQc1BzUHNQc1BzUHNQc1BzUHNQc1BzUHNQc1BzUHNQc1BzUHNQc1BzUHNQc1BzUHNQc1BzUHNQc1BzUHNQc1BzUHNQc1BzUHNQc1BzUHNQc1BzUHNQc1BzUHNQc1BzUHNQc1BzUHNQc1BzUHNQc1BzUHNQc1BzUHNQc1BzUHNQc1BzUHNQc1BzUHNQc1BzUHNQc1BzUHNQc1BzUHNQc1BzUHNQc1BzUHNQc1BzUHNQc1BzUHNQc1BzUHNQc1BzUHNQc1BzUHNQc1BzUHNQc1BzUHNQc1BzUHNQc1BzUHNQc1BzUHNQc1BzUHNQc1BzUHNQc1BzUHNQc1BzUHNQc1BzUHNQc1BzUHNQc1BzUHNQc1BzUHNQc1BzUHNQc1BzUHNQc1BzUHNQc1BzUHNQc1BzUHNQc1BzUHNQc1BzUHNQc1BzUHNQc1BzUHNQc1BzUHNQc1BzUHNQc1BzUHNQc1BzUHNQc1BzUHNQc1BzUHNQc1BzUHNQc1BzUHNQc1BzUHNQc1BzUHNQc1BzUHNQc1BzUHNQc1BzUHNQc1BzUHNQc1BzUHNQc1BzUHNQc1BzUHNQc1BzUHNQc1BzUHNQc1BzUHNQc1BzUHNQc1BzUHNQc1BzUHNQc1BzUHNQc1BzUHNQc1BzUHNQc1BzUHNQc1BzUHNQc1BzUHNQc1BzUHNQc1BzUHNQc1BzUHNQc1BzUHNQc1BzUHNQc1BzUHNQc1BzUHNQc1BzUHNQc1BzUHNQc1BzUHNQc1BzUHNQc1BzUHNQc1BzUHNQc1BzUHNQc1BzUHNQc1BzUHNQc1BzUHNQc1BzUHNQc1BzUHNQc1BzUHNQc1BzUHNQc1BzUHNQc1BzUHNQc1BzUHNQc1BzUHNQc1BzUHNQc1BzUHNQc1BzUHNQc1BzUHNQc1BzUHNQc1BzUHNQc1BzUHNQc1BzUHNQc1BzUHNQc1BzUHNQc1BzUHNQc1BzUHNQc1BzUHNQc1BzUHNQc1BzUHNQc1BzUHNQc1BzUHNQc1BzUHNQc1BzUHNQc1BzUHNQc1BzUHNQc1BzUHNQc1BzUHNQc1BzUHNQc1BzUHNQc1BzUHNQc1BzUHNQc1BzUHNQc1BzUHNQc1BzUHNQc1BzUHNQc1BzUHNQc1BzUHNQc1BzUHNQc1BzUHNQc1BzUHNQc1BzUHNQc1BzUHNQc1BzUHNQc1BzUHNQc1BzUHNQc1BzUHNQc1BzUHNQc1BzUHNQc1BzUHNQc1BzUHNQc1BzUHNQc1BzUHNQc1BzUHNQc1BzUHNQc1BzUHNQc1BzUHNQc1BzUHNQc1BzUHNQc1BzUHNQc1BzUHNQc1BzUHNQc1BzUHNQc1BzUHNQc1BzUHNQc1BzUHNQc1BzUHNQc1BzUHNQc1BzUHNQc1BzUHNQc1BzUHNQc1BzUHNQc1BzUHNQc1BzUHNQc1BzUHNQc1BzUHNQc1BzUHNQc1BzUHNQc1BzUHNQc1BzUHNQd1B30HNQc1BzUHNQc1BzUHNQc1BzUHNQc1BzUHNQc1BzUHNQc1BzUHNQc1BzUHNQc1BzUHNQc1BzUHNQc1BzUHNQc1BzUHNQc1B4MH2gaKB68EgACAAIAAgACAAIAAgACAAI8HlwdeAJ8HpweAAIAArwe3B14AXgC/B8UHygcwANAH2AfgB4AA6AfwBz4B+AcACFwBCAgPCBcIogEYAR8IJwiAAC8INwg/CCADRwhPCFcIXwhnCEoDGgSAAIAAgABvCHcIeAh5CHoIewh8CH0Idwh4CHkIegh7CHwIfQh3CHgIeQh6CHsIfAh9CHcIeAh5CHoIewh8CH0Idwh4CHkIegh7CHwIfQh3CHgIeQh6CHsIfAh9CHcIeAh5CHoIewh8CH0Idwh4CHkIegh7CHwIfQh3CHgIeQh6CHsIfAh9CHcIeAh5CHoIewh8CH0Idwh4CHkIegh7CHwIfQh3CHgIeQh6CHsIfAh9CHcIeAh5CHoIewh8CH0Idwh4CHkIegh7CHwIfQh3CHgIeQh6CHsIfAh9CHcIeAh5CHoIewh8CH0Idwh4CHkIegh7CHwIfQh3CHgIeQh6CHsIfAh9CHcIeAh5CHoIewh8CH0Idwh4CHkIegh7CHwIfQh3CHgIeQh6CHsIfAh9CHcIeAh5CHoIewh8CH0Idwh4CHkIegh7CHwIfQh3CHgIeQh6CHsIfAh9CHcIeAh5CHoIewh8CH0Idwh4CHkIegh7CHwIfQh3CHgIeQh6CHsIfAh9CHcIeAh5CHoIewh8CH0Idwh4CHkIegh7CHwIfQh3CHgIeQh6CHsIfAh9CHcIeAh5CHoIewh8CH0Idwh4CHkIegh7CHwIfQh3CHgIeQh6CHsIfAh9CHcIeAh5CHoIewh8CH0Idwh4CHkIegh7CHwIfQh3CHgIeQh6CHsIfAh9CHcIeAh5CHoIewh8CH0Idwh4CHkIegh7CHwIfQh3CHgIeQh6CHsIfAh9CHcIeAh5CHoIewh8CH0Idwh4CHkIegh7CHwIfQh3CHgIeQh6CHsIfAh9CHcIeAh5CHoIewh8CH0Idwh4CHkIegh7CHwIfQh3CHgIeQh6CHsIfAh9CHcIeAh5CHoIewh8CH0Idwh4CHkIegh7CHwIfQh3CHgIeQh6CHsIfAh9CHcIeAh5CHoIewh8CH0Idwh4CHkIegh7CHwIhAiLCI4IMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwAJYIlgiWCJYIlgiWCJYIlgiWCJYIlgiWCJYIlgiWCJYIlgiWCJYIlgiWCJYIlgiWCJYIlgiWCJYIlgiWCJYIlggwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAANQc1BzUHNQc1BzUHNQc1BzUHNQc1B54INQc1B6II2gaqCLIIugiAAIAAvgjGCIAAgACAAIAAgACAAIAAgACAAIAAywiHAYAA0wiAANkI3QjlCO0I9Aj8CIAAgACAAAIJCgkSCRoJIgknCTYHLwk3CZYIlgiWCJYIlgiWCJYIlgiWCJYIlgiWCJYIlgiWCJYIlgiWCJYIlgiWCJYIlgiWCJYIlgiWCJYIlgiWCJYIlgiAAIAAAAFAAXgBeAGAAcABeAHwAQACQAKAArQC9AJ4AXgBeAE0A3gBRAN4A7AD8AMwBGgEAAKcBNwEFAUwBXAF4QkhCmEKnArcCgAHHAsABz4LAAcABwAHAAd+C6ABoAG+C/4LAAcABwAHAAc+DF4MAAcAB54M3gweDV4Nng3eDaABoAGgAaABoAGgAaABoAGgAaABoAGgAaABoAGgAaABoAGgAaABoAEeDqABVg6WDqABoQ6gAaABoAHXDvcONw/3DvcO9w73DvcO9w73DvcO9w73DvcO9w73DvcO9w73DvcO9w73DvcO9w73DvcO9w73DvcO9w73DvcO9w73DncPAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcAB7cPPwlGCU4JMACAAIAAgABWCV4JYQmAAGkJcAl4CXwJgAkwADAAMAAwAIgJgACLCZMJgACZCZ8JowmrCYAAswkwAF4AXgB8AIAAuwkABMMJyQmAAM4JgADVCTAAMAAwADAAgACAAIAAgACAAIAAgACAAIAAqwYWBNkIMAAwADAAMADdCeAJ6AnuCR4E9gkwAP4JBQoNCjAAMACAABUK0wiAAB0KJAosCjQKgAAwADwKQwqAAEsKvQmdCVMKWwowADAAgACAALcEMACAAGMKgABrCjAAMAAwADAAMAAwADAAMAAwADAAMAAeBDAAMAAwADAAMAAwADAAMAAwADAAMAAwAIkEPQFzCnoKiQSCCooKkAqJBJgKoAqkCokEGAGsCrQKvArBCjAAMADJCtEKFQHZCuEK/gHpCvEKMAAwADAAMACAAIwE+QowAIAAPwEBCzAAMAAwADAAMACAAAkLEQswAIAAPwEZCyELgAAOCCkLMAAxCzkLMAAwADAAMAAwADAAXgBeAEELMAAwADAAMAAwADAAMAAwAEkLTQtVC4AAXAtkC4AAiQkwADAAMAAwADAAMAAwADAAbAtxC3kLgAuFC4sLMAAwAJMLlwufCzAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAApwswADAAMACAAIAAgACvC4AAgACAAIAAgACAALcLMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAvwuAAMcLgACAAIAAgACAAIAAyguAAIAAgACAAIAA0QswADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAANkLgACAAIAA4AswADAAMAAwADAAMAAwADAAMAAwADAAMAAwAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACJCR4E6AswADAAhwHwC4AA+AsADAgMEAwwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMACAAIAAGAwdDCUMMAAwAC0MNQc1BzUHNQc1BzUHNQc1BzUHNQc1BzUHNQc1BzUHNQc1BzUHNQc1BzUHNQc1BzUHNQc1BzUHNQc1BzUHNQc1BzUHNQc1BzUHNQc1BzUHNQc1BzUHNQc1BzUHNQc1BzUHNQc1BzUHNQc1BzUHNQc1BzUHNQc1BzUHNQc1BzUHNQw1BzUHNQc1BzUHNQc1BzUHNQc1BzUHNQc1BzUHNQc1BzUHNQc1BzUHNQc1BzUHPQwwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADUHNQc1BzUHNQc1BzUHNQc2BzAAMAA5DDUHNQc1BzUHNQc1BzUHNQc1BzUHNQdFDDAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAgACAAIAATQxSDFoMMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwAF4AXgBeAF4AXgBeAF4AYgxeAGoMXgBxDHkMfwxeAIUMXgBeAI0MMAAwADAAMAAwAF4AXgCVDJ0MMAAwADAAMABeAF4ApQxeAKsMswy7DF4Awgy9DMoMXgBeAF4AXgBeAF4AXgBeAF4AXgDRDNkMeQBqCeAM3Ax8AOYM7Az0DPgMXgBeAF4AXgBeAF4AXgBeAF4AXgBeAF4AXgBeAF4AXgCgAAANoAAHDQ4NFg0wADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAeDSYNMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwAIAAgACAAIAAgACAAC4NMABeAF4ANg0wADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwAD4NRg1ODVYNXg1mDTAAbQ0wADAAMAAwADAAMAAwADAA2gbaBtoG2gbaBtoG2gbaBnUNeg3CBYANwgWFDdoGjA3aBtoG2gbaBtoG2gbaBtoG2gbaBtoG2gaUDZwNpA2oDdoG2gawDbcNvw3HDdoG2gbPDdYN3A3fDeYN2gbsDfMN2gbaBvoN/g3aBgYODg7aBl4AXgBeABYOXgBeACUG2gYeDl4AJA5eACwO2w3aBtoGMQ45DtoG2gbaBtoGQQ7aBtoG2gbaBtoG2gbaBtoG2gbaBtoG2gbaBtoG2gbaBtoG2gbaBtoG2gbaBtoG2gbaBtoG2gbaBtoG2gbaBtoG2gbaBtoG2gbaBtoG2gbaBtoG2gbaBtoG2gbaBtoG2gZJDjUHNQc1BzUHNQc1BzUHNQc1BzUHNQc1BzUHNQc1BzUHNQc1BzUHNQc1BzUHNQc1BzUHNQc1BzUHNQc1BzUHNQc1BzUHNQc1BzUHNQc1BzUHNQc1BzUHNQc1BzUHNQc1BzUHNQc1BzUHNQc1B1EO2gY1BzUHNQc1BzUHNQc1BzUHNQc1BzUHNQc1BzUHNQc1BzUHNQc1BzUHNQc1BzUHNQc1BzUHNQc1BzUHNQc1BzUHNQc1BzUHNQc1BzUHNQc1BzUHNQc1BzUHNQc1BzUHNQc1BzUHNQc1BzUHNQc1BzUHNQdZDjUHNQc1BzUHNQc1B2EONQc1BzUHNQc1BzUHNQc1BzUHNQc1BzUHNQc1BzUHNQc1BzUHNQc1BzUHNQc1BzUHNQc1BzUHNQc1BzUHNQc1BzUHNQc1BzUHNQc1BzUHNQc1BzUHNQc1BzUHNQc1BzUHNQc1BzUHNQc1BzUHNQc1BzUHNQc1BzUHNQc1BzUHaA41BzUHNQc1BzUHNQc1BzUHNQc1BzUHNQc1BzUHNQc1BzUHNQc1BzUHNQc1BzUHNQc1BzUHNQc1BzUHNQc1B3AO2gbaBtoG2gbaBtoG2gbaBtoG2gbaBtoG2gbaBtoG2gbaBtoG2gbaBtoG2gbaBtoG2gbaBtoG2gbaBtoG2gbaBtoG2gbaBtoG2gbaBtoG2gbaBtoG2gbaBtoG2gbaBtoG2gbaBtoG2gbaBtoG2gbaBtoG2gbaBtoG2gbaBtoG2gY1BzUHNQc1BzUHNQc1BzUHNQc1BzUHNQc1BzUHNQc1B2EO2gbaBtoG2gbaBtoG2gbaBtoG2gbaBtoG2gbaBtoG2gbaBtoG2gbaBtoG2gbaBtoG2gbaBtoG2gbaBtoG2gbaBtoG2gbaBtoG2gbaBtoG2gbaBtoG2gbaBtoG2gZJDtoG2gbaBtoG2gbaBtoG2gbaBtoG2gbaBtoG2gbaBtoG2gbaBtoG2gbaBtoG2gbaBtoG2gbaBtoG2gbaBtoG2gbaBtoG2gbaBtoG2gbaBtoG2gbaBtoG2gbaBtoG2gbaBtoG2gbaBtoG2gbaBtoG2gbaBtoG2gbaBtoG2gbaBkkOeA6gAKAAoAAwADAAMAAwAKAAoACgAKAAoACgAKAAgA4wADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAD//wQABAAEAAQABAAEAAQABAAEAA0AAwABAAEAAgAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAKABMAFwAeABsAGgAeABcAFgASAB4AGwAYAA8AGAAcAEsASwBLAEsASwBLAEsASwBLAEsAGAAYAB4AHgAeABMAHgBQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAFgAbABIAHgAeAB4AUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQABYADQARAB4ABAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArACsABAAEAAQABAAEAAUABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAkAFgAaABsAGwAbAB4AHQAdAB4ATwAXAB4ADQAeAB4AGgAbAE8ATwAOAFAAHQAdAB0ATwBPABcATwBPAE8AFgBQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAHQAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB0AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgBQAB4AHgAeAB4AUABQAFAAUAAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgBQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUAAeAB4AHgAeAFAATwBAAE8ATwBPAEAATwBQAFAATwBQAB4AHgAeAB4AHgAeAB0AHQAdAB0AHgAdAB4ADgBQAFAAUABQAFAAHgAeAB4AHgAeAB4AHgBQAB4AUAAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4ABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAJAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAkACQAJAAkACQAJAAkABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAeAB4AHgAeAFAAHgAeAB4AKwArAFAAUABQAFAAGABQACsAKwArACsAHgAeAFAAHgBQAFAAUAArAFAAKwAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AKwAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4ABAAEAAQABAAEAAQABAAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgArAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUAArACsAUAAeAB4AHgAeAB4AHgArAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAKwAYAA0AKwArAB4AHgAbACsABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQADQAEAB4ABAAEAB4ABAAEABMABAArACsAKwArACsAKwArACsAVgBWAFYAVgBWAFYAVgBWAFYAVgBWAFYAVgBWAFYAVgBWAFYAVgBWAFYAVgBWAFYAVgBWAFYAKwArACsAKwArAFYAVgBWAB4AHgArACsAKwArACsAKwArACsAKwArACsAHgAeAB4AHgAeAB4AHgAeAB4AGgAaABoAGAAYAB4AHgAEAAQABAAEAAQABAAEAAQABAAEAAQAEwAEACsAEwATAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQABABLAEsASwBLAEsASwBLAEsASwBLABoAGQAZAB4AUABQAAQAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQABMAUAAEAAQABAAEAAQABAAEAB4AHgAEAAQABAAEAAQABABQAFAABAAEAB4ABAAEAAQABABQAFAASwBLAEsASwBLAEsASwBLAEsASwBQAFAAUAAeAB4AUAAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AKwAeAFAABABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEACsAKwBQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAABAAEAAQABAAEAAQABAAEAAQABAAEAFAAKwArACsAKwArACsAKwArACsAKwArACsAKwArAEsASwBLAEsASwBLAEsASwBLAEsAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAABAAEAAQABAAEAAQABAAEAAQAUABQAB4AHgAYABMAUAArACsAKwArACsAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUAAEAAQABAAEAFAABAAEAAQABAAEAFAABAAEAAQAUAAEAAQABAAEAAQAKwArAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeACsAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUAAEAAQABAArACsAHgArAFAAUABQAFAAUABQAFAAUABQAFAAUAArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwBQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUAArAFAAUABQAFAAUABQAFAAUAArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAeAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQABABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUAAEAAQABABQAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEAFAABAAEAAQABAAEAAQABABQAFAAUABQAFAAUABQAFAAUABQAAQABAANAA0ASwBLAEsASwBLAEsASwBLAEsASwAeAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAABAAEAAQAKwBQAFAAUABQAFAAUABQAFAAKwArAFAAUAArACsAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQACsAUABQAFAAUABQAFAAUAArAFAAKwArACsAUABQAFAAUAArACsABABQAAQABAAEAAQABAAEAAQAKwArAAQABAArACsABAAEAAQAUAArACsAKwArACsAKwArACsABAArACsAKwArAFAAUAArAFAAUABQAAQABAArACsASwBLAEsASwBLAEsASwBLAEsASwBQAFAAGgAaAFAAUABQAFAAUABMAB4AGwBQAB4AKwArACsABAAEAAQAKwBQAFAAUABQAFAAUAArACsAKwArAFAAUAArACsAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQACsAUABQAFAAUABQAFAAUAArAFAAUAArAFAAUAArAFAAUAArACsABAArAAQABAAEAAQABAArACsAKwArAAQABAArACsABAAEAAQAKwArACsABAArACsAKwArACsAKwArAFAAUABQAFAAKwBQACsAKwArACsAKwArACsASwBLAEsASwBLAEsASwBLAEsASwAEAAQAUABQAFAABAArACsAKwArACsAKwArACsAKwArACsABAAEAAQAKwBQAFAAUABQAFAAUABQAFAAUAArAFAAUABQACsAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQACsAUABQAFAAUABQAFAAUAArAFAAUAArAFAAUABQAFAAUAArACsABABQAAQABAAEAAQABAAEAAQABAArAAQABAAEACsABAAEAAQAKwArAFAAKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAUABQAAQABAArACsASwBLAEsASwBLAEsASwBLAEsASwAeABsAKwArACsAKwArACsAKwBQAAQABAAEAAQABAAEACsABAAEAAQAKwBQAFAAUABQAFAAUABQAFAAKwArAFAAUAArACsAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUAAEAAQABAAEAAQAKwArAAQABAArACsABAAEAAQAKwArACsAKwArACsAKwArAAQABAArACsAKwArAFAAUAArAFAAUABQAAQABAArACsASwBLAEsASwBLAEsASwBLAEsASwAeAFAAUABQAFAAUABQAFAAKwArACsAKwArACsAKwArACsAKwAEAFAAKwBQAFAAUABQAFAAUAArACsAKwBQAFAAUAArAFAAUABQAFAAKwArACsAUABQACsAUAArAFAAUAArACsAKwBQAFAAKwArACsAUABQAFAAKwArACsAUABQAFAAUABQAFAAUABQAFAAUABQAFAAKwArACsAKwAEAAQABAAEAAQAKwArACsABAAEAAQAKwAEAAQABAAEACsAKwBQACsAKwArACsAKwArAAQAKwArACsAKwArACsAKwArACsAKwBLAEsASwBLAEsASwBLAEsASwBLAFAAUABQAB4AHgAeAB4AHgAeABsAHgArACsAKwArACsABAAEAAQABAArAFAAUABQAFAAUABQAFAAUAArAFAAUABQACsAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAKwBQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQACsAKwArAFAABAAEAAQABAAEAAQABAArAAQABAAEACsABAAEAAQABAArACsAKwArACsAKwArAAQABAArAFAAUABQACsAKwArACsAKwBQAFAABAAEACsAKwBLAEsASwBLAEsASwBLAEsASwBLACsAKwArACsAKwArACsAKwBQAFAAUABQAFAAUABQAB4AUAAEAAQABAArAFAAUABQAFAAUABQAFAAUAArAFAAUABQACsAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAKwBQAFAAUABQAFAAUABQAFAAUABQACsAUABQAFAAUABQACsAKwAEAFAABAAEAAQABAAEAAQABAArAAQABAAEACsABAAEAAQABAArACsAKwArACsAKwArAAQABAArACsAKwArACsAKwArAFAAKwBQAFAABAAEACsAKwBLAEsASwBLAEsASwBLAEsASwBLACsAUABQACsAKwArACsAKwArACsAKwArACsAKwArACsAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAABAAEAFAABAAEAAQABAAEAAQABAArAAQABAAEACsABAAEAAQABABQAB4AKwArACsAKwBQAFAAUAAEAFAAUABQAFAAUABQAFAAUABQAFAABAAEACsAKwBLAEsASwBLAEsASwBLAEsASwBLAFAAUABQAFAAUABQAFAAUABQABoAUABQAFAAUABQAFAAKwArAAQABAArAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQACsAKwArAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUAArAFAAUABQAFAAUABQAFAAUABQACsAUAArACsAUABQAFAAUABQAFAAUAArACsAKwAEACsAKwArACsABAAEAAQABAAEAAQAKwAEACsABAAEAAQABAAEAAQABAAEACsAKwArACsAKwArAEsASwBLAEsASwBLAEsASwBLAEsAKwArAAQABAAeACsAKwArACsAKwArACsAKwArACsAKwArAFwAXABcAFwAXABcAFwAXABcAFwAXABcAFwAXABcAFwAXABcAFwAXABcAFwAXABcAFwAXABcAFwAXABcAFwAXAAqAFwAXAAqACoAKgAqACoAKgAqACsAKwArACsAGwBcAFwAXABcAFwAXABcACoAKgAqACoAKgAqACoAKgAeAEsASwBLAEsASwBLAEsASwBLAEsADQANACsAKwArACsAKwBcAFwAKwBcACsAKwBcAFwAKwBcACsAKwBcACsAKwArACsAKwArAFwAXABcAFwAKwBcAFwAXABcAFwAXABcACsAXABcAFwAKwBcACsAXAArACsAXABcACsAXABcAFwAXAAqAFwAXAAqACoAKgAqACoAKgArACoAKgBcACsAKwBcAFwAXABcAFwAKwBcACsAKgAqACoAKgAqACoAKwArAEsASwBLAEsASwBLAEsASwBLAEsAKwArAFwAXABcAFwAUAAOAA4ADgAOAB4ADgAOAAkADgAOAA0ACQATABMAEwATABMACQAeABMAHgAeAB4ABAAEAB4AHgAeAB4AHgAeAEsASwBLAEsASwBLAEsASwBLAEsAUABQAFAAUABQAFAAUABQAFAAUAANAAQAHgAEAB4ABAAWABEAFgARAAQABABQAFAAUABQAFAAUABQAFAAKwBQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUAArACsAKwArAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAANAAQABAAEAAQABAANAAQABABQAFAAUABQAFAABAAEAAQABAAEAAQABAAEAAQABAAEACsABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEACsADQANAB4AHgAeAB4AHgAeAAQAHgAeAB4AHgAeAB4AKwAeAB4ADgAOAA0ADgAeAB4AHgAeAB4ACQAJACsAKwArACsAKwBcAFwAXABcAFwAXABcAFwAXABcAFwAXABcAFwAXABcAFwAXABcAFwAXABcAFwAXABcAFwAXABcAFwAXABcAFwAXABcAFwAKgAqACoAKgAqACoAKgAqACoAKgAqACoAKgAqACoAKgAqACoAKgAqAFwASwBLAEsASwBLAEsASwBLAEsASwANAA0AHgAeAB4AHgBcAFwAXABcAFwAXAAqACoAKgAqAFwAXABcAFwAKgAqACoAXAAqACoAKgBcAFwAKgAqACoAKgAqACoAKgBcAFwAXAAqACoAKgAqAFwAXABcAFwAXABcAFwAXABcAFwAXABcAFwAKgAqACoAKgAqACoAKgAqACoAKgAqACoAXAAqAEsASwBLAEsASwBLAEsASwBLAEsAKgAqACoAKgAqACoAUABQAFAAUABQAFAAKwBQACsAKwArACsAKwBQACsAKwBQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUAAeAFAAUABQAFAAWABYAFgAWABYAFgAWABYAFgAWABYAFgAWABYAFgAWABYAFgAWABYAFgAWABYAFgAWABYAFgAWABYAFgAWABYAFkAWQBZAFkAWQBZAFkAWQBZAFkAWQBZAFkAWQBZAFkAWQBZAFkAWQBZAFkAWQBZAFkAWQBZAFkAWQBZAFkAWQBaAFoAWgBaAFoAWgBaAFoAWgBaAFoAWgBaAFoAWgBaAFoAWgBaAFoAWgBaAFoAWgBaAFoAWgBaAFoAWgBaAFoAUABQAFAAUABQAFAAUABQAFAAKwBQAFAAUABQACsAKwBQAFAAUABQAFAAUABQACsAUAArAFAAUABQAFAAKwArAFAAUABQAFAAUABQAFAAUABQACsAUABQAFAAUAArACsAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQACsAUABQAFAAUAArACsAUABQAFAAUABQAFAAUAArAFAAKwBQAFAAUABQACsAKwBQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUAArAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUAArAFAAUABQAFAAKwArAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQACsAKwAEAAQABAAeAA0AHgAeAB4AHgAeAB4AHgBQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAKwArACsAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUAAeAB4AHgAeAB4AHgAeAB4AHgAeACsAKwArACsAKwArAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAKwArAFAAUABQAFAAUABQACsAKwANAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUAAeAB4AUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAA0AUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQABYAEQArACsAKwBQAFAAUABQAFAAUABQAFAAUABQAFAADQANAA0AUABQAFAAUABQAFAAUABQAFAAUABQACsAKwArACsAKwArACsAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUAArAFAAUABQAFAABAAEAAQAKwArACsAKwArACsAKwArACsAKwArAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAAQABAAEAA0ADQArACsAKwArACsAKwArACsAKwBQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUAAEAAQAKwArACsAKwArACsAKwArACsAKwArACsAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUAArAFAAUABQACsABAAEACsAKwArACsAKwArACsAKwArACsAKwArAFwAXABcAFwAXABcAFwAXABcAFwAXABcAFwAXABcAFwAXABcAFwAXAAqACoAKgAqACoAKgAqACoAKgAqACoAKgAqACoAKgAqACoAKgAqACoADQANABUAXAANAB4ADQAbAFwAKgArACsASwBLAEsASwBLAEsASwBLAEsASwArACsAKwArACsAKwBQAFAAUABQAFAAUABQAFAAUABQACsAKwArACsAKwArAB4AHgATABMADQANAA4AHgATABMAHgAEAAQABAAJACsASwBLAEsASwBLAEsASwBLAEsASwArACsAKwArACsAKwBQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUAArACsAKwArACsAKwArACsAUABQAFAAUABQAAQABABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAABABQACsAKwArACsAKwBQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQACsAKwArACsAKwArACsAKwArACsAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUAArAAQABAAEAAQABAAEAAQABAAEAAQABAAEACsAKwArACsABAAEAAQABAAEAAQABAAEAAQABAAEAAQAKwArACsAKwAeACsAKwArABMAEwBLAEsASwBLAEsASwBLAEsASwBLAFwAXABcAFwAXABcAFwAXABcAFwAXABcAFwAXABcAFwAXABcACsAKwBcAFwAXABcAFwAKwArACsAKwArACsAKwArACsAKwArAFwAXABcAFwAXABcAFwAXABcAFwAXABcACsAKwArACsAXABcAFwAXABcAFwAXABcAFwAXABcAFwAXABcAFwAXABcAFwAKwArACsAKwArACsASwBLAEsASwBLAEsASwBLAEsASwBcACsAKwArACoAKgBQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAABAAEAAQABAAEACsAKwAeAB4AXABcAFwAXABcAFwAXABcAFwAXABcAFwAXABcAFwAXABcAFwAXABcAFwAKgAqACoAKgAqACoAKgAqACoAKgArACoAKgAqACoAKgAqACoAKgAqACoAKgAqACoAKgAqACoAKgAqACoAKgAqACoAKgAqACoAKgAqACoAKgArACsABABLAEsASwBLAEsASwBLAEsASwBLACsAKwArACsAKwArAEsASwBLAEsASwBLAEsASwBLAEsAKwArACsAKwArACsAKgAqACoAKgAqACoAKgBcACoAKgAqACoAKgAqACsAKwAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAArAAQABAAEAAQABABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUAAEAAQABAAEAAQAUABQAFAAUABQAFAAUAArACsAKwArAEsASwBLAEsASwBLAEsASwBLAEsADQANAB4ADQANAA0ADQAeAB4AHgAeAB4AHgAeAB4AHgAeAAQABAAEAAQABAAEAAQABAAEAB4AHgAeAB4AHgAeAB4AHgAeACsAKwArAAQABAAEAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQAUABQAEsASwBLAEsASwBLAEsASwBLAEsAUABQAFAAUABQAFAAUABQAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAArACsAKwArACsAKwArACsAHgAeAB4AHgBQAFAAUABQAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAArACsAKwANAA0ADQANAA0ASwBLAEsASwBLAEsASwBLAEsASwArACsAKwBQAFAAUABLAEsASwBLAEsASwBLAEsASwBLAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUAANAA0AUABQAFAAUABQAFAAUABQAFAAKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArAB4AHgAeAB4AHgAeAB4AHgArACsAKwArACsAKwArACsABAAEAAQAHgAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEAFAAUABQAFAABABQAFAAUABQAAQABAAEAFAAUAAEAAQABAArACsAKwArACsAKwAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQAKwAEAAQABAAEAAQAHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgArACsAUABQAFAAUABQAFAAKwArAFAAUABQAFAAUABQAFAAUAArAFAAKwBQACsAUAArAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AKwArAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeACsAHgAeAB4AHgAeAB4AHgAeAFAAHgAeAB4AUABQAFAAKwAeAB4AHgAeAB4AHgAeAB4AHgAeAFAAUABQAFAAKwArAB4AHgAeAB4AHgAeACsAHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgArACsAUABQAFAAKwAeAB4AHgAeAB4AHgAeAA4AHgArAA0ADQANAA0ADQANAA0ACQANAA0ADQAIAAQACwAEAAQADQAJAA0ADQAMAB0AHQAeABcAFwAWABcAFwAXABYAFwAdAB0AHgAeABQAFAAUAA0AAQABAAQABAAEAAQABAAJABoAGgAaABoAGgAaABoAGgAeABcAFwAdABUAFQAeAB4AHgAeAB4AHgAYABYAEQAVABUAFQAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgANAB4ADQANAA0ADQAeAA0ADQANAAcAHgAeAB4AHgArAAQABAAEAAQABAAEAAQABAAEAAQAUABQACsAKwBPAFAAUABQAFAAUAAeAB4AHgAWABEATwBQAE8ATwBPAE8AUABQAFAAUABQAB4AHgAeABYAEQArAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAKwArACsAGwAbABsAGwAbABsAGwAaABsAGwAbABsAGwAbABsAGwAbABsAGwAbABsAGwAaABsAGwAbABsAGgAbABsAGgAbABsAGwAbABsAGwAbABsAGwAbABsAGwAbABsAGwAbABsABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArAB4AHgBQABoAHgAdAB4AUAAeABoAHgAeAB4AHgAeAB4AHgAeAB4ATwAeAFAAGwAeAB4AUABQAFAAUABQAB4AHgAeAB0AHQAeAFAAHgBQAB4AUAAeAFAATwBQAFAAHgAeAB4AHgAeAB4AHgBQAFAAUABQAFAAHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgBQAB4AUABQAFAAUABPAE8AUABQAFAAUABQAE8AUABQAE8AUABPAE8ATwBPAE8ATwBPAE8ATwBPAE8ATwBQAFAAUABQAE8ATwBPAE8ATwBPAE8ATwBPAE8AUABQAFAAUABQAFAAUABQAFAAHgAeAFAAUABQAFAATwAeAB4AKwArACsAKwAdAB0AHQAdAB0AHQAdAB0AHQAdAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAdAB4AHQAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHQAeAB0AHQAeAB4AHgAdAB0AHgAeAB0AHgAeAB4AHQAeAB0AGwAbAB4AHQAeAB4AHgAeAB0AHgAeAB0AHQAdAB0AHgAeAB0AHgAdAB4AHQAdAB0AHQAdAB0AHgAdAB4AHgAeAB4AHgAdAB0AHQAdAB4AHgAeAB4AHQAdAB4AHgAeAB4AHgAeAB4AHgAeAB4AHQAeAB4AHgAdAB4AHgAeAB4AHgAdAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHQAdAB4AHgAdAB0AHQAdAB4AHgAdAB0AHgAeAB0AHQAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAdAB0AHgAeAB0AHQAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB0AHgAeAB4AHQAeAB4AHgAeAB4AHgAeAB0AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAdAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeABQAHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAWABEAFgARAB4AHgAeAB4AHgAeAB0AHgAeAB4AHgAeAB4AHgAlACUAHgAeAB4AHgAeAB4AHgAeAB4AFgARAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeACUAJQAlACUAHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwBPAE8ATwBPAE8ATwBPAE8ATwBPAE8ATwBPAE8ATwBPAE8ATwBPAE8ATwBPAE8ATwBPAE8ATwBPAE8ATwBPAE8AHQAdAB0AHQAdAB0AHQAdAB0AHQAdAB0AHQAdAB0AHQAdAB0AHQAdAB0AHQAdAB0AHQAdAB0AHQAdAB0AHQAdAB0AHQBPAE8ATwBPAE8ATwBPAE8ATwBPAE8ATwBPAE8ATwBPAE8ATwBPAE8ATwBQAB0AHQAdAB0AHQAdAB0AHQAdAB0AHQAdAB4AHgAeAB4AHQAdAB0AHQAdAB0AHQAdAB0AHQAdAB0AHQAdAB0AHQAdAB0AHQAdAB0AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB0AHQAdAB0AHQAdAB0AHQAdAB0AHQAdAB0AHQAdAB0AHgAeAB0AHQAdAB0AHgAeAB4AHgAeAB4AHgAeAB4AHgAdAB0AHgAdAB0AHQAdAB0AHQAdAB4AHgAeAB4AHgAeAB4AHgAdAB0AHgAeAB0AHQAeAB4AHgAeAB0AHQAeAB4AHgAeAB0AHQAdAB4AHgAdAB4AHgAdAB0AHQAdAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHQAdAB0AHQAeAB4AHgAeAB4AHgAeAB4AHgAdAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AJQAlACUAJQAeAB0AHQAeAB4AHQAeAB4AHgAeAB0AHQAeAB4AHgAeACUAJQAdAB0AJQAeACUAJQAlACAAJQAlAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AJQAlACUAHgAeAB4AHgAdAB4AHQAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHQAdAB4AHQAdAB0AHgAdACUAHQAdAB4AHQAdAB4AHQAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAlAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB0AHQAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AJQAlACUAJQAlACUAJQAlACUAJQAlACUAHQAdAB0AHQAlAB4AJQAlACUAHQAlACUAHQAdAB0AJQAlAB0AHQAlAB0AHQAlACUAJQAeAB0AHgAeAB4AHgAdAB0AJQAdAB0AHQAdAB0AHQAlACUAJQAlACUAHQAlACUAIAAlAB0AHQAlACUAJQAlACUAJQAlACUAHgAeAB4AJQAlACAAIAAgACAAHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAdAB4AHgAeABcAFwAXABcAFwAXAB4AEwATACUAHgAeAB4AFgARABYAEQAWABEAFgARABYAEQAWABEAFgARAE8ATwBPAE8ATwBPAE8ATwBPAE8ATwBPAE8ATwBPAE8ATwBPAE8ATwBPAE8AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAWABEAHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AFgARABYAEQAWABEAFgARABYAEQAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeABYAEQAWABEAFgARABYAEQAWABEAFgARABYAEQAWABEAFgARABYAEQAWABEAHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AFgARABYAEQAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeABYAEQAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHQAdAB0AHQAdAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AKwArAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AKwArACsAHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AKwAeAB4AHgAeAB4AHgAeAB4AHgArACsAKwArACsAKwArACsAKwArACsAKwArAB4AHgAeAB4AKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAEAAQABAAeAB4AKwArACsAKwArABMADQANAA0AUAATAA0AUABQAFAAUABQAFAAUABQACsAKwArACsAKwArACsAUAANACsAKwArACsAKwArACsAKwArACsAKwArACsAKwAEAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUAArACsAKwArACsAKwArACsAKwBQAFAAUABQAFAAUABQACsAUABQAFAAUABQAFAAUAArAFAAUABQAFAAUABQAFAAKwBQAFAAUABQAFAAUABQACsAFwAXABcAFwAXABcAFwAXABcAFwAXABcAFwAXAA0ADQANAA0ADQANAA0ADQAeAA0AFgANAB4AHgAXABcAHgAeABcAFwAWABEAFgARABYAEQAWABEADQANAA0ADQATAFAADQANAB4ADQANAB4AHgAeAB4AHgAMAAwADQANAA0AHgANAA0AFgANAA0ADQANAA0ADQANACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAJQAlACUAJQAlACUAJQAlACUAJQAlACUAJQAlACUAJQAlACUAJQAlACUAJQAlACUAJQAlACsAJQAlACUAJQAlACUAJQAlACUAJQAlACUAJQAlACUAJQAlACUAJQAlACUAJQAlACUAJQAlACUAJQAlACUAJQAlACUAKwArACsAKwArACsAKwArACsAKwArACsAJQAlACUAJQAlACUAJQAlACUAJQAlACUAJQAlACUAJQAlACUAJQAlACUAJQArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwAlACUAJQAlACUAJQAlACUAJQAlACUAJQArACsAKwArAA0AEQARACUAJQBHAFcAVwAWABEAFgARABYAEQAWABEAFgARACUAJQAWABEAFgARABYAEQAWABEAFQAWABEAEQAlAFcAVwBXAFcAVwBXAFcAVwBXAAQABAAEAAQABAAEACUAVwBXAFcAVwA2ACUAJQBXAFcAVwBHAEcAJQAlACUAKwBRAFcAUQBXAFEAVwBRAFcAUQBXAFcAVwBXAFcAVwBXAFcAVwBXAFcAVwBXAFcAVwBXAFcAVwBXAFcAVwBXAFcAVwBXAFEAVwBXAFcAVwBXAFcAVwBXAFcAVwBXAFcAVwBXAFcAVwBXAFcAVwBXAFcAVwBXAFcAVwBXAFcAVwBXAFcAVwBRAFcAUQBXAFEAVwBXAFcAVwBXAFcAUQBXAFcAVwBXAFcAVwBRAFEAKwArAAQABAAVABUARwBHAFcAFQBRAFcAUQBXAFEAVwBRAFcAUQBXAFcAVwBXAFcAVwBXAFcAVwBXAFcAVwBXAFcAVwBXAFcAVwBXAFcAVwBXAFcAVwBXAFEAVwBRAFcAUQBXAFcAVwBXAFcAVwBRAFcAVwBXAFcAVwBXAFEAUQBXAFcAVwBXABUAUQBHAEcAVwArACsAKwArACsAVwBXAFcAVwBXAFcAVwBXAFcAVwBXAFcAVwBXAFcAVwBXAFcAVwBXAFcAVwBXAFcAVwBXAFcAVwBXAFcAKwArAFcAVwBXAFcAVwBXAFcAVwBXAFcAVwBXAFcAVwBXAFcAVwBXAFcAVwBXAFcAVwBXAFcAVwBXAFcAVwBXAFcAVwBXAFcAVwBXAFcAVwArACUAJQBXAFcAVwBXACUAJQAlACUAJQAlACUAJQAlACUAVwBXAFcAVwBXAFcAVwBXAFcAVwBXAFcAVwBXAFcAVwBXAFcAVwBXAFcAVwBXAFcAVwBXAFcAKwArACsAKwArACUAJQAlACUAKwArACsAKwArACsAKwArACsAKwArACsAUQBRAFEAUQBRAFEAUQBRAFEAUQBRAFEAUQBRAFEAUQAlACUAJQAlACUAJQAlACUAJQAlACUAJQAlACUAJQAlACUAJQAlACUAJQAlACUAJQAlACUAJQAlACUAJQAlACsAVwBXAFcAVwBXAFcAVwBXAFcAVwAlACUAJQAlACUAJQAlACUAJQAlACUAJQAlACUAJQAlACUAJQAlACUAJQAlAE8ATwBPAE8ATwBPAE8ATwAlAFcAVwBXAFcAVwBXAFcAVwBXAFcAVwBXAFcAVwBXACUAJQAlACUAJQAlACUAJQAlACUAJQAlACUAJQAlACUAJQBXAFcAVwBXAFcAVwBXAFcAVwBXAFcAVwBXAFcAVwBXAFcAVwBXAFcAVwBXAFcAVwBXACUAJQAlACUAJQAlACUAJQAlACUAVwBXAFcAVwBXAFcAVwBXAFcAVwBXACUAJQAlACUAJQAlACUAJQAlACUAJQAlACUAJQAlACUAJQAlACUAJQAlAFcAVwBXAFcAVwBXAFcAVwBXAFcAVwBXAFcAVwBXAFcAVwBXAFcAVwBXAEcAVwBXAFcAVwBXAFcAVwBXAFcAVwBXAFcAVwBXAFcAKwArACsAJQAlACUAJQAlACUAJQAlACUAJQAlACUAJQAlACUAJQAlACUAJQArACsAKwArACsAKwArACsAKwBQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAADQATAA0AUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABLAEsASwBLAEsASwBLAEsASwBLAFAAUAArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAFAABAAEAAQABAAeAAQABAAEAAQABAAEAAQABAAEAAQAHgBQAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AUABQAAQABABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAAQABAAeAA0ADQANAA0ADQArACsAKwArACsAKwArACsAHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAFAAUABQAFAAUABQAFAAUABQAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AUAAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgBQAB4AHgAeAB4AHgAeAFAAHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgArAB4AHgAeAB4AHgAeAB4AHgArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAUABQAFAAUABQAFAAUABQAFAAUABQAAQAUABQAFAABABQAFAAUABQAAQAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAAQABAAEAAQABAAeAB4AHgAeACsAKwArACsAUABQAFAAUABQAFAAHgAeABoAHgArACsAKwArACsAKwBQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAADgAOABMAEwArACsAKwArACsAKwArACsABAAEAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAAQABAAEAAQABAAEACsAKwArACsAKwArACsAKwANAA0ASwBLAEsASwBLAEsASwBLAEsASwArACsAKwArACsAKwAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQABABQAFAAUABQAFAAUAAeAB4AHgBQAA4AUAArACsAUABQAFAAUABQAFAABAAEAAQABAAEAAQABAAEAA0ADQBQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQAKwArACsAKwArACsAKwArACsAKwArAB4AWABYAFgAWABYAFgAWABYAFgAWABYAFgAWABYAFgAWABYAFgAWABYAFgAWABYAFgAWABYAFgAWABYACsAKwArAAQAHgAeAB4AHgAeAB4ADQANAA0AHgAeAB4AHgArAFAASwBLAEsASwBLAEsASwBLAEsASwArACsAKwArAB4AHgBcAFwAXABcAFwAKgBcAFwAXABcAFwAXABcAFwAXABcAEsASwBLAEsASwBLAEsASwBLAEsAXABcAFwAXABcACsAUABQAFAAUABQAFAAUABQAFAABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEACsAKwArACsAKwArACsAKwArAFAAUABQAAQAUABQAFAAUABQAFAAUABQAAQABAArACsASwBLAEsASwBLAEsASwBLAEsASwArACsAHgANAA0ADQBcAFwAXABcAFwAXABcAFwAXABcAFwAXABcAFwAXABcAFwAXABcAFwAXABcAFwAKgAqACoAXAAqACoAKgBcAFwAXABcAFwAXABcAFwAXABcAFwAXABcAFwAXABcAFwAXAAqAFwAKgAqACoAXABcACoAKgBcAFwAXABcAFwAKgAqAFwAKgBcACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArAFwAXABcACoAKgBQAFAAUABQAFAAUABQAFAAUABQAFAABAAEAAQABAAEAA0ADQBQAFAAUAAEAAQAKwArACsAKwArACsAKwArACsAKwBQAFAAUABQAFAAUAArACsAUABQAFAAUABQAFAAKwArAFAAUABQAFAAUABQACsAKwArACsAKwArACsAKwArAFAAUABQAFAAUABQAFAAKwBQAFAAUABQAFAAUABQACsAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUAAEAAQABAAEAAQABAAEAAQADQAEAAQAKwArAEsASwBLAEsASwBLAEsASwBLAEsAKwArACsAKwArACsAVABVAFUAVQBVAFUAVQBVAFUAVQBVAFUAVQBVAFUAVQBVAFUAVQBVAFUAVQBVAFUAVQBVAFUAVQBUAFUAVQBVAFUAVQBVAFUAVQBVAFUAVQBVAFUAVQBVAFUAVQBVAFUAVQBVAFUAVQBVAFUAVQBVACsAKwArACsAKwArACsAKwArACsAKwArAFkAWQBZAFkAWQBZAFkAWQBZAFkAWQBZAFkAWQBZAFkAWQBZAFkAKwArACsAKwBaAFoAWgBaAFoAWgBaAFoAWgBaAFoAWgBaAFoAWgBaAFoAWgBaAFoAWgBaAFoAWgBaAFoAWgBaAFoAKwArACsAKwAGAAYABgAGAAYABgAGAAYABgAGAAYABgAGAAYABgAGAAYABgAGAAYABgAGAAYABgAGAAYABgAGAAYABgAGAAYAVwBXAFcAVwBXAFcAVwBXAFcAVwBXAFcAVwBXACUAJQBXAFcAVwBXAFcAVwBXAFcAVwBXAFcAVwBXAFcAVwBXAFcAVwBXAFcAVwBXAFcAVwBXAFcAJQAlACUAJQAlACUAUABQAFAAUABQAFAAUAArACsAKwArACsAKwArACsAKwArACsAKwBQAFAAUABQAFAAKwArACsAKwArAFYABABWAFYAVgBWAFYAVgBWAFYAVgBWAB4AVgBWAFYAVgBWAFYAVgBWAFYAVgBWAFYAVgArAFYAVgBWAFYAVgArAFYAKwBWAFYAKwBWAFYAKwBWAFYAVgBWAFYAVgBWAFYAVgBWAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAEQAWAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAKwArAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUAArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwBQAFAAUABQAFAAUABQAFAAUABQAFAAUAAaAB4AKwArAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQAGAARABEAGAAYABMAEwAWABEAFAArACsAKwArACsAKwAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEACUAJQAlACUAJQAWABEAFgARABYAEQAWABEAFgARABYAEQAlACUAFgARACUAJQAlACUAJQAlACUAEQAlABEAKwAVABUAEwATACUAFgARABYAEQAWABEAJQAlACUAJQAlACUAJQAlACsAJQAbABoAJQArACsAKwArAFAAUABQAFAAUAArAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAKwArAAcAKwATACUAJQAbABoAJQAlABYAEQAlACUAEQAlABEAJQBXAFcAVwBXAFcAVwBXAFcAVwBXABUAFQAlACUAJQATACUAVwBXAFcAVwBXAFcAVwBXAFcAVwBXAFcAVwBXAFcAVwBXAFcAVwBXAFcAVwBXAFcAVwBXABYAJQARACUAJQAlAFcAVwBXAFcAVwBXAFcAVwBXAFcAVwBXAFcAVwBXAFcAVwBXAFcAVwBXAFcAVwBXAFcAVwAWACUAEQAlABYAEQARABYAEQARABUAVwBRAFEAUQBRAFEAUQBRAFEAUQBRAFcAVwBXAFcAVwBXAFcAVwBXAFcAVwBXAFcAVwBXAFcAVwBXAFcAVwBXAFcAVwBXAFcAVwBXAFcAVwBXAFcAVwBXAEcARwArACsAVwBXAFcAVwBXAFcAKwArAFcAVwBXAFcAVwBXACsAKwBXAFcAVwBXAFcAVwArACsAVwBXAFcAKwArACsAGgAbACUAJQAlABsAGwArAB4AHgAeAB4AHgAeAB4AKwArACsAKwArACsAKwArACsAKwAEAAQABAAQAB0AKwArAFAAUABQAFAAUABQAFAAUABQAFAAUABQACsAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUAArAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAKwBQAFAAKwBQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUAArACsAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQACsAKwBQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUAArACsAKwArACsADQANAA0AKwArACsAKwBQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQACsAKwArAB4AHgAeAB4AHgAeAB4AHgAeAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgBQAFAAHgAeAB4AKwAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgArACsAKwArAB4AKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4ABAArACsAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArAAQAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAKwArACsAKwArACsAKwArACsAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUAArACsAKwArACsAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUAAEAAQABAAEAAQAKwArACsAKwArAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQACsADQBQAFAAUABQACsAKwArACsAUABQAFAAUABQAFAAUABQAA0AUABQAFAAUABQACsAKwArACsAKwArACsAKwArACsAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAKwArAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUAArACsAKwArAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAKwArACsAKwArACsAKwArAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAKwArACsAKwArACsAKwArACsAKwArAB4AKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwBQAFAAUABQAFAAUAArACsAUAArAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQACsAUABQACsAKwArAFAAKwArAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUAArAA0AUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAB4AHgBQAFAAUABQAFAAUABQACsAKwArACsAKwArACsAUABQAFAAUABQAFAAUABQAFAAKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwBQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQACsAUABQACsAKwArACsAKwBQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAKwArACsADQBQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAKwArACsAKwArAB4AUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAKwArACsAKwBQAFAAUABQAFAABAAEAAQAKwAEAAQAKwArACsAKwArAAQABAAEAAQAUABQAFAAUAArAFAAUABQACsAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQACsAKwArACsABAAEAAQAKwArACsAKwAEAFAAUABQAFAAUABQAFAAUAArACsAKwArACsAKwArACsADQANAA0ADQANAA0ADQANAB4AKwArACsAKwArACsAKwBQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAB4AUABQAFAAUABQAFAAUABQAB4AUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAABAAEACsAKwArACsAUABQAFAAUABQAA0ADQANAA0ADQANABQAKwArACsAKwArACsAKwArACsAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUAArACsAKwANAA0ADQANAA0ADQANAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQACsAKwArACsAKwArACsAHgAeAB4AHgArACsAKwArACsAKwArACsAKwArACsAKwBQAFAAUABQAFAAUABQACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUAArACsAKwArACsAKwArACsAKwArACsAKwArAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAKwArACsAKwArACsAKwBQAFAAUABQAFAAUAAEAAQABAAEAAQABAAEAA0ADQAeAB4AHgAeAB4AKwArACsAKwBQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAEsASwBLAEsASwBLAEsASwBLAEsAKwArACsAKwArACsAKwArACsAKwArACsAKwArACsABABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAAQABAAEAAQABAAEAAQABAAEAAQABAAeAB4AHgANAA0ADQANACsAKwArACsAKwArACsAKwArACsAKwArACsAKwBQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAKwArACsAKwArACsAKwBLAEsASwBLAEsASwBLAEsASwBLACsAKwArACsAKwArAFAAUABQAFAAUABQAFAABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEACsASwBLAEsASwBLAEsASwBLAEsASwANAA0ADQANACsAKwArACsAKwArACsAKwArACsAKwArAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAABAAeAA4AUAArACsAKwArACsAKwArACsAKwAEAFAAUABQAFAADQANAB4ADQAeAAQABAAEAB4AKwArAEsASwBLAEsASwBLAEsASwBLAEsAUAAOAFAADQANAA0AKwBQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAKwArACsAKwArACsAKwArACsAKwArAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQACsAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUAAEAAQABAAEAAQABAAEAAQABAAEAAQABAANAA0AHgANAA0AHgAEACsAUABQAFAAUABQAFAAUAArAFAAKwBQAFAAUABQACsAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAKwBQAFAAUABQAFAAUABQAFAAUABQAA0AKwArACsAKwArACsAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUAAEAAQABAAEAAQABAAEAAQABAAEAAQAKwArACsAKwArAEsASwBLAEsASwBLAEsASwBLAEsAKwArACsAKwArACsABAAEAAQABAArAFAAUABQAFAAUABQAFAAUAArACsAUABQACsAKwBQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAAQABAAEAAQABAArACsABAAEACsAKwAEAAQABAArACsAUAArACsAKwArACsAKwAEACsAKwArACsAKwBQAFAAUABQAFAABAAEACsAKwAEAAQABAAEAAQABAAEACsAKwArAAQABAAEAAQABAArACsAKwArACsAKwArACsAKwArACsABAAEAAQABAAEAAQABABQAFAAUABQAA0ADQANAA0AHgBLAEsASwBLAEsASwBLAEsASwBLACsADQArAB4AKwArAAQABAAEAAQAUABQAB4AUAArACsAKwArACsAKwArACsASwBLAEsASwBLAEsASwBLAEsASwArACsAKwArACsAKwBQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUAAEAAQABAAEAAQABAAEACsAKwAEAAQABAAEAAQABAAEAAQABAAOAA0ADQATABMAHgAeAB4ADQANAA0ADQANAA0ADQANAA0ADQANAA0ADQANAA0AUABQAFAAUAAEAAQAKwArAAQADQANAB4AUAArACsAKwArACsAKwArACsAKwArACsASwBLAEsASwBLAEsASwBLAEsASwArACsAKwArACsAKwAOAA4ADgAOAA4ADgAOAA4ADgAOAA4ADgAOACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArACsASwBLAEsASwBLAEsASwBLAEsASwArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArAFwAXABcAFwAXABcAFwAXABcAFwAXABcAFwAXABcAFwAXABcAFwAXABcAFwAXABcAFwAXAArACsAKwAqACoAKgAqACoAKgAqACoAKgAqACoAKgAqACoAKgArACsAKwArAEsASwBLAEsASwBLAEsASwBLAEsAXABcAA0ADQANACoASwBLAEsASwBLAEsASwBLAEsASwBQAFAAUABQAFAAUABQAFAAUAArACsAKwArACsAKwArACsAKwArACsAKwBQAFAABAAEAAQABAAEAAQABAAEAAQABABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUAAEAAQABAAEAAQABAAEAFAABAAEAAQABAAOAB4ADQANAA0ADQAOAB4ABAArACsAKwArACsAKwArACsAUAAEAAQABAAEAAQABAAEAAQABAAEAAQAUABQAFAAUAArACsAUABQAFAAUAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEAA0ADQANACsADgAOAA4ADQANACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwBQAFAAUABQAFAAUABQAFAAUAArAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAABAAEAAQABAAEAAQABAAEACsABAAEAAQABAAEAAQABAAEAFAADQANAA0ADQANACsAKwArACsAKwArACsAKwArACsASwBLAEsASwBLAEsASwBLAEsASwBQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUAArACsAKwAOABMAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAKwArAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAArAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAArACsAKwArACsAKwArACsAKwBQAFAAUABQAFAAUABQACsAUABQACsAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUAAEAAQABAAEAAQABAArACsAKwAEACsABAAEACsABAAEAAQABAAEAAQABABQAAQAKwArACsAKwArACsAKwArAEsASwBLAEsASwBLAEsASwBLAEsAKwArACsAKwArACsAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQACsAKwArACsAKwArAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQACsADQANAA0ADQANACsAKwArACsAKwArACsAKwArACsAKwBQAFAAUABQACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAASABIAEgAQwBDAEMAUABQAFAAUABDAFAAUABQAEgAQwBIAEMAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAASABDAEMAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABIAEMAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUAArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArAEsASwBLAEsASwBLAEsASwBLAEsAKwArACsAKwANAA0AKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwBQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAKwArAAQABAAEAAQABAANACsAKwArACsAKwArACsAKwArACsAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUAAEAAQABAAEAAQABAAEAA0ADQANAB4AHgAeAB4AHgAeAFAAUABQAFAADQAeACsAKwArACsAKwArACsAKwArACsASwBLAEsASwBLAEsASwBLAEsASwArAFAAUABQAFAAUABQAFAAKwBQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUAArACsAKwArACsAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUAArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArAFAAUABQAFAAUAArACsAKwArACsAKwArACsAKwArACsAUAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArACsABAAEAAQABABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAEcARwArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwBXAFcAVwBXAFcAVwBXAFcAVwBXAFcAVwBXACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAVwBXAFcAVwBXAFcAVwBXAFcAVwBXAFcAVwBXAFcAVwBXAFcAVwArACsAKwArACsAKwArACsAKwArACsAKwArAFcAVwBXAFcAVwBXAFcAVwBXAFcAVwBXAFcAVwBXAFcAVwBXAFcAVwBXAFcAVwBXAFcAVwBXAFcAKwArACsAKwBQAFAAUABQAFAAUABQAFAAUABQAFAAKwArACsAKwArAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAKwArACsAKwArACsAKwBQAFAAUABQAFAAUABQAFAAUABQACsAKwAeAAQABAANAAQABAAEAAQAKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeACsAKwArACsAKwArACsAKwArACsAHgAeAB4AHgAeAB4AHgArACsAHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4ABAAEAAQABAAEAB4AHgAeAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQAHgAeAAQABAAEAAQABAAEAAQAHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAEAAQABAAEAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArAB4AHgAEAAQABAAeACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AKwArACsAKwArACsAKwArACsAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAKwArACsAKwArACsAKwArACsAKwArACsAKwArAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeACsAHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgArAFAAUAArACsAUAArACsAUABQACsAKwBQAFAAUABQACsAHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AKwBQACsAUABQAFAAUABQAFAAUAArAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgArAFAAUABQAFAAKwArAFAAUABQAFAAUABQAFAAUAArAFAAUABQAFAAUABQAFAAKwAeAB4AUABQAFAAUABQACsAUAArACsAKwBQAFAAUABQAFAAUABQACsAHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgArACsAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUAAeAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAFAAUABQAFAAUABQAFAAUABQAFAAUAAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAHgAeAB4AHgAeAB4AHgAeAB4AKwArAEsASwBLAEsASwBLAEsASwBLAEsASwBLAEsASwBLAEsASwBLAEsASwBLAEsASwBLAEsASwBLAEsASwBLAEsASwBLAEsABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEAB4AHgAeAB4ABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEAB4AHgAeAB4AHgAeAB4AHgAEAB4AHgAeAB4AHgAeAB4AHgAeAB4ABAAeAB4ADQANAA0ADQAeACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArAAQABAAEAAQABAArAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArACsABAAEAAQABAAEAAQABAArAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAArACsABAAEAAQABAAEAAQABAArAAQABAArAAQABAAEAAQABAArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwBQAFAAUABQAFAAKwArAFAAUABQAFAAUABQAFAAUABQAAQABAAEAAQABAAEAAQAKwArACsAKwArACsAKwArACsAHgAeAB4AHgAEAAQABAAEAAQABAAEACsAKwArACsAKwBLAEsASwBLAEsASwBLAEsASwBLACsAKwArACsAFgAWAFAAUABQAFAAKwBQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUAArAFAAUAArAFAAKwArAFAAKwBQAFAAUABQAFAAUABQAFAAUABQACsAUABQAFAAUAArAFAAKwBQACsAKwArACsAKwArAFAAKwArACsAKwBQACsAUAArAFAAKwBQAFAAUAArAFAAUAArAFAAKwArAFAAKwBQACsAUAArAFAAKwBQACsAUABQACsAUAArACsAUABQAFAAUAArAFAAUABQAFAAUABQAFAAKwBQAFAAUABQACsAUABQAFAAUAArAFAAKwBQAFAAUABQAFAAUABQAFAAUABQACsAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQACsAKwArACsAKwBQAFAAUAArAFAAUABQAFAAUAArAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUAArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArAB4AHgArACsAKwArACsAKwArACsAKwArACsAKwArACsATwBPAE8ATwBPAE8ATwBPAE8ATwBPAE8ATwAlACUAJQAdAB0AHQAdAB0AHQAdAB0AHQAdAB0AHQAdAB0AHQAdAB0AHQAeACUAHQAdAB0AHQAdAB0AHQAdAB0AHQAdAB0AHQAdAB0AHQAdAB0AHgAeACUAJQAlACUAHQAdAB0AHQAdAB0AHQAdAB0AHQAdAB0AHQAdAB0AHQAdACUAJQAlACUAJQAlACUAJQAlACUAJQAlACUAJQAlACUAJQAlACUAJQAlACkAKQApACkAKQApACkAKQApACkAKQApACkAKQApACkAKQApACkAKQApACkAKQApACkAKQAlACUAJQAlACUAIAAlACUAJQAlACUAJQAlACUAJQAlACUAJQAlACUAJQAlACUAJQAlACUAJQAlAB4AHgAlACUAJQAlACUAJQAlACUAJQAlACUAJQAlACUAJQAlACUAJQAlACUAJQAlACUAHgAeACUAJQAlACUAJQAeACUAJQAlACUAJQAgACAAIAAlACUAIAAlACUAIAAgACAAJQAlACUAJQAlACUAJQAlACUAJQAlACUAJQAlACUAJQAlACUAJQAlACUAJQAlACUAJQAlACUAJQAlACUAIQAhACEAIQAhACUAJQAgACAAJQAlACAAIAAgACAAIAAgACAAIAAgACAAIAAlACUAJQAlACUAJQAlACUAJQAlACUAJQAlACUAJQAlACUAIAAgACAAIAAlACUAJQAlACAAJQAgACAAIAAgACAAIAAgACAAIAAlACUAJQAgACUAJQAlACUAIAAgACAAJQAgACAAIAAlACUAJQAlACUAJQAlACUAJQAlACUAJQAlACUAJQAlACUAJQAlACUAJQAlACUAJQAeACUAHgAlAB4AJQAlACUAJQAlACAAJQAlACUAJQAeACUAHgAeACUAJQAlACUAJQAlACUAJQAlACUAJQAlACUAHgAeAB4AHgAeAB4AHgAlACUAJQAlACUAJQAlACUAJQAlACUAJQAlACUAJQAlAB4AHgAeAB4AHgAeAB4AHgAeAB4AJQAlACUAJQAlACUAJQAlACUAJQAlACUAJQAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeACUAJQAlACUAJQAlACUAJQAlACUAJQAlACUAJQAlACUAJQAlACUAJQAlACUAIAAgACUAJQAlACUAIAAlACUAJQAlACUAJQAlACUAJQAlACUAJQAlACUAJQAlACUAIAAlACUAJQAlACAAIAAlACUAJQAlACUAJQAlACUAJQAlACUAJQAlACUAJQAlACUAJQAlACUAJQAeAB4AHgAeAB4AHgAeAB4AJQAlACUAJQAlACUAJQAlACUAJQAlACUAJQAlACUAJQAlACUAJQAlAB4AHgAeAB4AHgAeACUAJQAlACUAJQAlACUAIAAgACAAJQAlACUAIAAgACAAIAAgAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AFwAXABcAFQAVABUAHgAeAB4AHgAlACUAJQAgACUAJQAlACUAJQAlACUAJQAlACUAJQAlACUAJQAlACUAIAAgACAAJQAlACUAJQAlACUAJQAlACUAIAAlACUAJQAlACUAJQAlACUAJQAlACUAIAAlACUAJQAlACUAJQAlACUAJQAlACUAJQAlACUAJQAlACUAJQAlAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAlACUAJQAlACUAJQAlACUAJQAlACUAJQAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAlACUAJQAlAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AJQAlACUAJQAlACUAJQAlAB4AHgAeAB4AHgAeAB4AHgAeAB4AJQAlACUAJQAlACUAHgAeAB4AHgAeAB4AHgAeACUAJQAlACUAJQAlACUAJQAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeACUAJQAlACUAJQAlACUAJQAlACUAJQAlACAAIAAgACAAIAAlACAAIAAlACUAJQAlACUAJQAgACUAJQAlACUAJQAlACUAJQAlACAAIAAgACAAIAAgACAAIAAgACAAJQAlACUAIAAgACUAJQAlACUAJQAlACUAJQAlACUAJQAlACUAJQAlACUAJQAlACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAJQAlACUAJQAlACUAJQAlACUAJQAlACUAJQAlACUAJQAlACUAJQAlACUAJQAlACUAJQAlACUAJQAlACUAJQAlACsAKwBXAFcAVwBXAFcAVwBXAFcAVwBXAFcAVwBXAFcAVwBXAFcAVwBXAFcAVwBXAFcAJQAlACUAJQAlACUAJQAlACUAVwBXAFcAVwBXAFcAVwBXAFcAVwBXAFcAVwBXAFcAVwBXAFcAVwBXAFcAJQAlACUAJQAlACUAJQAlACUAJQAlAFcAVwBXAFcAVwBXAFcAVwBXAFcAVwBXAFcAVwBXAFcAVwBXAFcAVwBXAFcAVwBXAFcAVwBXAFcAVwBXACUAJQAlACUAJQAlACUAJQAlACUAJQAlACUAJQBXAFcAVwBXAFcAVwBXAFcAVwBXAFcAVwBXAFcAVwBXAFcAJQAlACUAJQAlACUAJQAlACUAJQAlACUAJQAlACUAJQAlACUAJQAlACUAJQAlACUAJQAlACUAJQAlACUAJQArAAQAKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArACsABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArACsA\"),U=Array.isArray(i)?function(A){for(var e=A.length,t=[],r=0;r<e;r+=4)t.push(A[r+3]<<24|A[r+2]<<16|A[r+1]<<8|A[r]);return t}(i):new Uint32Array(i),E=Array.isArray(i)?function(A){for(var e=A.length,t=[],r=0;r<e;r+=2)t.push(A[r+1]<<8|A[r]);return t}(i):new Uint16Array(i),F=B(E,12,U[4]/2),h=2===U[5]?B(E,(24+U[4])/2):function(A,e,t){return A.slice?A.slice(e,t):new Uint32Array(Array.prototype.slice.call(A,e,t))}(U,Math.ceil((24+U[4])/4)),new s(U[0],U[1],U[2],U[3],F,h)),Z=[_,36],j=[1,2,3,5],$=[H,8],AA=[M,b],eA=j.concat($),tA=[J,G,k,V,z],rA=[f,d],nA=(BA.prototype.slice=function(){return l.apply(void 0,this.codePoints.slice(this.start,this.end))},BA);function BA(A,e,t,r){this.codePoints=A,this.required=\"!\"===e,this.start=t,this.end=r}var sA,oA;(oA=sA||(sA={}))[oA.STRING_TOKEN=0]=\"STRING_TOKEN\",oA[oA.BAD_STRING_TOKEN=1]=\"BAD_STRING_TOKEN\",oA[oA.LEFT_PARENTHESIS_TOKEN=2]=\"LEFT_PARENTHESIS_TOKEN\",oA[oA.RIGHT_PARENTHESIS_TOKEN=3]=\"RIGHT_PARENTHESIS_TOKEN\",oA[oA.COMMA_TOKEN=4]=\"COMMA_TOKEN\",oA[oA.HASH_TOKEN=5]=\"HASH_TOKEN\",oA[oA.DELIM_TOKEN=6]=\"DELIM_TOKEN\",oA[oA.AT_KEYWORD_TOKEN=7]=\"AT_KEYWORD_TOKEN\",oA[oA.PREFIX_MATCH_TOKEN=8]=\"PREFIX_MATCH_TOKEN\",oA[oA.DASH_MATCH_TOKEN=9]=\"DASH_MATCH_TOKEN\",oA[oA.INCLUDE_MATCH_TOKEN=10]=\"INCLUDE_MATCH_TOKEN\",oA[oA.LEFT_CURLY_BRACKET_TOKEN=11]=\"LEFT_CURLY_BRACKET_TOKEN\",oA[oA.RIGHT_CURLY_BRACKET_TOKEN=12]=\"RIGHT_CURLY_BRACKET_TOKEN\",oA[oA.SUFFIX_MATCH_TOKEN=13]=\"SUFFIX_MATCH_TOKEN\",oA[oA.SUBSTRING_MATCH_TOKEN=14]=\"SUBSTRING_MATCH_TOKEN\",oA[oA.DIMENSION_TOKEN=15]=\"DIMENSION_TOKEN\",oA[oA.PERCENTAGE_TOKEN=16]=\"PERCENTAGE_TOKEN\",oA[oA.NUMBER_TOKEN=17]=\"NUMBER_TOKEN\",oA[oA.FUNCTION=18]=\"FUNCTION\",oA[oA.FUNCTION_TOKEN=19]=\"FUNCTION_TOKEN\",oA[oA.IDENT_TOKEN=20]=\"IDENT_TOKEN\",oA[oA.COLUMN_TOKEN=21]=\"COLUMN_TOKEN\",oA[oA.URL_TOKEN=22]=\"URL_TOKEN\",oA[oA.BAD_URL_TOKEN=23]=\"BAD_URL_TOKEN\",oA[oA.CDC_TOKEN=24]=\"CDC_TOKEN\",oA[oA.CDO_TOKEN=25]=\"CDO_TOKEN\",oA[oA.COLON_TOKEN=26]=\"COLON_TOKEN\",oA[oA.SEMICOLON_TOKEN=27]=\"SEMICOLON_TOKEN\",oA[oA.LEFT_SQUARE_BRACKET_TOKEN=28]=\"LEFT_SQUARE_BRACKET_TOKEN\",oA[oA.RIGHT_SQUARE_BRACKET_TOKEN=29]=\"RIGHT_SQUARE_BRACKET_TOKEN\",oA[oA.UNICODE_RANGE_TOKEN=30]=\"UNICODE_RANGE_TOKEN\",oA[oA.WHITESPACE_TOKEN=31]=\"WHITESPACE_TOKEN\",oA[oA.EOF_TOKEN=32]=\"EOF_TOKEN\";function iA(A){return 48<=A&&A<=57}function aA(A){return iA(A)||65<=A&&A<=70||97<=A&&A<=102}function cA(A){return 10===A||9===A||32===A}function QA(A){return function(A){return function(A){return 97<=A&&A<=122}(A)||function(A){return 65<=A&&A<=90}(A)}(A)||function(A){return 128<=A}(A)||95===A}function wA(A){return QA(A)||iA(A)||45===A}function uA(A,e){return 92===A&&10!==e}function UA(A,e,t){return 45===A?QA(e)||uA(e,t):!!QA(A)||!(92!==A||!uA(A,e))}function lA(A,e,t){return 43===A||45===A?!!iA(e)||46===e&&iA(t):iA(46===A?e:A)}var CA={type:sA.LEFT_PARENTHESIS_TOKEN},gA={type:sA.RIGHT_PARENTHESIS_TOKEN},EA={type:sA.COMMA_TOKEN},FA={type:sA.SUFFIX_MATCH_TOKEN},hA={type:sA.PREFIX_MATCH_TOKEN},HA={type:sA.COLUMN_TOKEN},dA={type:sA.DASH_MATCH_TOKEN},fA={type:sA.INCLUDE_MATCH_TOKEN},pA={type:sA.LEFT_CURLY_BRACKET_TOKEN},NA={type:sA.RIGHT_CURLY_BRACKET_TOKEN},KA={type:sA.SUBSTRING_MATCH_TOKEN},IA={type:sA.BAD_URL_TOKEN},TA={type:sA.BAD_STRING_TOKEN},mA={type:sA.CDO_TOKEN},RA={type:sA.CDC_TOKEN},LA={type:sA.COLON_TOKEN},vA={type:sA.SEMICOLON_TOKEN},OA={type:sA.LEFT_SQUARE_BRACKET_TOKEN},DA={type:sA.RIGHT_SQUARE_BRACKET_TOKEN},bA={type:sA.WHITESPACE_TOKEN},SA={type:sA.EOF_TOKEN},MA=(yA.prototype.write=function(A){this._value=this._value.concat(c(A))},yA.prototype.read=function(){for(var A=[],e=this.consumeToken();e!==SA;)A.push(e),e=this.consumeToken();return A},yA.prototype.consumeToken=function(){var A=this.consumeCodePoint();switch(A){case 34:return this.consumeStringToken(34);case 35:var e=this.peekCodePoint(0),t=this.peekCodePoint(1),r=this.peekCodePoint(2);if(wA(e)||uA(t,r)){var n=UA(e,t,r)?2:1,B=this.consumeName();return{type:sA.HASH_TOKEN,value:B,flags:n}}break;case 36:if(61===this.peekCodePoint(0))return this.consumeCodePoint(),FA;break;case 39:return this.consumeStringToken(39);case 40:return CA;case 41:return gA;case 42:if(61===this.peekCodePoint(0))return this.consumeCodePoint(),KA;break;case 43:if(lA(A,this.peekCodePoint(0),this.peekCodePoint(1)))return this.reconsumeCodePoint(A),this.consumeNumericToken();break;case 44:return EA;case 45:var s=A,o=this.peekCodePoint(0),i=this.peekCodePoint(1);if(lA(s,o,i))return this.reconsumeCodePoint(A),this.consumeNumericToken();if(UA(s,o,i))return this.reconsumeCodePoint(A),this.consumeIdentLikeToken();if(45===o&&62===i)return this.consumeCodePoint(),this.consumeCodePoint(),RA;break;case 46:if(lA(A,this.peekCodePoint(0),this.peekCodePoint(1)))return this.reconsumeCodePoint(A),this.consumeNumericToken();break;case 47:if(42===this.peekCodePoint(0))for(this.consumeCodePoint();;){var a=this.consumeCodePoint();if(42===a&&47===(a=this.consumeCodePoint()))return this.consumeToken();if(-1===a)return this.consumeToken()}break;case 58:return LA;case 59:return vA;case 60:if(33===this.peekCodePoint(0)&&45===this.peekCodePoint(1)&&45===this.peekCodePoint(2))return this.consumeCodePoint(),this.consumeCodePoint(),mA;break;case 64:var c=this.peekCodePoint(0),Q=this.peekCodePoint(1),w=this.peekCodePoint(2);if(UA(c,Q,w))return B=this.consumeName(),{type:sA.AT_KEYWORD_TOKEN,value:B};break;case 91:return OA;case 92:if(uA(A,this.peekCodePoint(0)))return this.reconsumeCodePoint(A),this.consumeIdentLikeToken();break;case 93:return DA;case 61:if(61===this.peekCodePoint(0))return this.consumeCodePoint(),hA;break;case 123:return pA;case 125:return NA;case 117:case 85:var u=this.peekCodePoint(0),U=this.peekCodePoint(1);return 43!==u||!aA(U)&&63!==U||(this.consumeCodePoint(),this.consumeUnicodeRangeToken()),this.reconsumeCodePoint(A),this.consumeIdentLikeToken();case 124:if(61===this.peekCodePoint(0))return this.consumeCodePoint(),dA;if(124===this.peekCodePoint(0))return this.consumeCodePoint(),HA;break;case 126:if(61===this.peekCodePoint(0))return this.consumeCodePoint(),fA;break;case-1:return SA}return cA(A)?(this.consumeWhiteSpace(),bA):iA(A)?(this.reconsumeCodePoint(A),this.consumeNumericToken()):QA(A)?(this.reconsumeCodePoint(A),this.consumeIdentLikeToken()):{type:sA.DELIM_TOKEN,value:l(A)}},yA.prototype.consumeCodePoint=function(){var A=this._value.shift();return void 0===A?-1:A},yA.prototype.reconsumeCodePoint=function(A){this._value.unshift(A)},yA.prototype.peekCodePoint=function(A){return A>=this._value.length?-1:this._value[A]},yA.prototype.consumeUnicodeRangeToken=function(){for(var A=[],e=this.consumeCodePoint();aA(e)&&A.length<6;)A.push(e),e=this.consumeCodePoint();for(var t=!1;63===e&&A.length<6;)A.push(e),e=this.consumeCodePoint(),t=!0;if(t){var r=parseInt(l.apply(void 0,A.map(function(A){return 63===A?48:A})),16),n=parseInt(l.apply(void 0,A.map(function(A){return 63===A?70:A})),16);return{type:sA.UNICODE_RANGE_TOKEN,start:r,end:n}}var B=parseInt(l.apply(void 0,A),16);if(45===this.peekCodePoint(0)&&aA(this.peekCodePoint(1))){this.consumeCodePoint(),e=this.consumeCodePoint();for(var s=[];aA(e)&&s.length<6;)s.push(e),e=this.consumeCodePoint();return n=parseInt(l.apply(void 0,s),16),{type:sA.UNICODE_RANGE_TOKEN,start:B,end:n}}return{type:sA.UNICODE_RANGE_TOKEN,start:B,end:B}},yA.prototype.consumeIdentLikeToken=function(){var A=this.consumeName();return\"url\"===A.toLowerCase()&&40===this.peekCodePoint(0)?(this.consumeCodePoint(),this.consumeUrlToken()):40===this.peekCodePoint(0)?(this.consumeCodePoint(),{type:sA.FUNCTION_TOKEN,value:A}):{type:sA.IDENT_TOKEN,value:A}},yA.prototype.consumeUrlToken=function(){var A=[];if(this.consumeWhiteSpace(),-1===this.peekCodePoint(0))return{type:sA.URL_TOKEN,value:\"\"};var e,t=this.peekCodePoint(0);if(39===t||34===t){var r=this.consumeStringToken(this.consumeCodePoint());return r.type===sA.STRING_TOKEN&&(this.consumeWhiteSpace(),-1===this.peekCodePoint(0)||41===this.peekCodePoint(0))?(this.consumeCodePoint(),{type:sA.URL_TOKEN,value:r.value}):(this.consumeBadUrlRemnants(),IA)}for(;;){var n=this.consumeCodePoint();if(-1===n||41===n)return{type:sA.URL_TOKEN,value:l.apply(void 0,A)};if(cA(n))return this.consumeWhiteSpace(),-1===this.peekCodePoint(0)||41===this.peekCodePoint(0)?(this.consumeCodePoint(),{type:sA.URL_TOKEN,value:l.apply(void 0,A)}):(this.consumeBadUrlRemnants(),IA);if(34===n||39===n||40===n||0<=(e=n)&&e<=8||11===e||14<=e&&e<=31||127===e)return this.consumeBadUrlRemnants(),IA;if(92===n){if(!uA(n,this.peekCodePoint(0)))return this.consumeBadUrlRemnants(),IA;A.push(this.consumeEscapedCodePoint())}else A.push(n)}},yA.prototype.consumeWhiteSpace=function(){for(;cA(this.peekCodePoint(0));)this.consumeCodePoint()},yA.prototype.consumeBadUrlRemnants=function(){for(;;){var A=this.consumeCodePoint();if(41===A||-1===A)return;uA(A,this.peekCodePoint(0))&&this.consumeEscapedCodePoint()}},yA.prototype.consumeStringSlice=function(A){for(var e=\"\";0<A;){var t=Math.min(6e4,A);e+=l.apply(void 0,this._value.splice(0,t)),A-=t}return this._value.shift(),e},yA.prototype.consumeStringToken=function(A){for(var e=\"\",t=0;;){var r=this._value[t];if(-1===r||void 0===r||r===A)return e+=this.consumeStringSlice(t),{type:sA.STRING_TOKEN,value:e};if(10===r)return this._value.splice(0,t),TA;if(92===r){var n=this._value[t+1];-1!==n&&void 0!==n&&(10===n?(e+=this.consumeStringSlice(t),t=-1,this._value.shift()):uA(r,n)&&(e+=this.consumeStringSlice(t),e+=l(this.consumeEscapedCodePoint()),t=-1))}t++}},yA.prototype.consumeNumber=function(){var A=[],e=4,t=this.peekCodePoint(0);for(43!==t&&45!==t||A.push(this.consumeCodePoint());iA(this.peekCodePoint(0));)A.push(this.consumeCodePoint());t=this.peekCodePoint(0);var r=this.peekCodePoint(1);if(46===t&&iA(r))for(A.push(this.consumeCodePoint(),this.consumeCodePoint()),e=8;iA(this.peekCodePoint(0));)A.push(this.consumeCodePoint());t=this.peekCodePoint(0),r=this.peekCodePoint(1);var n=this.peekCodePoint(2);if((69===t||101===t)&&((43===r||45===r)&&iA(n)||iA(r)))for(A.push(this.consumeCodePoint(),this.consumeCodePoint()),e=8;iA(this.peekCodePoint(0));)A.push(this.consumeCodePoint());return[function(A){var e=0,t=1;43!==A[e]&&45!==A[e]||(45===A[e]&&(t=-1),e++);for(var r=[];iA(A[e]);)r.push(A[e++]);var n=r.length?parseInt(l.apply(void 0,r),10):0;46===A[e]&&e++;for(var B=[];iA(A[e]);)B.push(A[e++]);var s=B.length,o=s?parseInt(l.apply(void 0,B),10):0;69!==A[e]&&101!==A[e]||e++;var i=1;43!==A[e]&&45!==A[e]||(45===A[e]&&(i=-1),e++);for(var a=[];iA(A[e]);)a.push(A[e++]);var c=a.length?parseInt(l.apply(void 0,a),10):0;return t*(n+o*Math.pow(10,-s))*Math.pow(10,i*c)}(A),e]},yA.prototype.consumeNumericToken=function(){var A=this.consumeNumber(),e=A[0],t=A[1],r=this.peekCodePoint(0),n=this.peekCodePoint(1),B=this.peekCodePoint(2);if(UA(r,n,B)){var s=this.consumeName();return{type:sA.DIMENSION_TOKEN,number:e,flags:t,unit:s}}return 37===r?(this.consumeCodePoint(),{type:sA.PERCENTAGE_TOKEN,number:e,flags:t}):{type:sA.NUMBER_TOKEN,number:e,flags:t}},yA.prototype.consumeEscapedCodePoint=function(){var A=this.consumeCodePoint();if(aA(A)){for(var e=l(A);aA(this.peekCodePoint(0))&&e.length<6;)e+=l(this.consumeCodePoint());cA(this.peekCodePoint(0))&&this.consumeCodePoint();var t=parseInt(e,16);return 0===t||function(A){return 55296<=A&&A<=57343}(t)||1114111<t?65533:t}return-1===A?65533:A},yA.prototype.consumeName=function(){for(var A=\"\";;){var e=this.consumeCodePoint();if(wA(e))A+=l(e);else{if(!uA(e,this.peekCodePoint(0)))return this.reconsumeCodePoint(e),A;A+=l(this.consumeEscapedCodePoint())}}},yA);function yA(){this._value=[]}var _A=(PA.create=function(A){var e=new MA;return e.write(A),new PA(e.read())},PA.parseValue=function(A){return PA.create(A).parseComponentValue()},PA.parseValues=function(A){return PA.create(A).parseComponentValues()},PA.prototype.parseComponentValue=function(){for(var A=this.consumeToken();A.type===sA.WHITESPACE_TOKEN;)A=this.consumeToken();if(A.type===sA.EOF_TOKEN)throw new SyntaxError(\"Error parsing CSS component value, unexpected EOF\");this.reconsumeToken(A);for(var e=this.consumeComponentValue();(A=this.consumeToken()).type===sA.WHITESPACE_TOKEN;);if(A.type===sA.EOF_TOKEN)return e;throw new SyntaxError(\"Error parsing CSS component value, multiple values found when expecting only one\")},PA.prototype.parseComponentValues=function(){for(var A=[];;){var e=this.consumeComponentValue();if(e.type===sA.EOF_TOKEN)return A;A.push(e),A.push()}},PA.prototype.consumeComponentValue=function(){var A=this.consumeToken();switch(A.type){case sA.LEFT_CURLY_BRACKET_TOKEN:case sA.LEFT_SQUARE_BRACKET_TOKEN:case sA.LEFT_PARENTHESIS_TOKEN:return this.consumeSimpleBlock(A.type);case sA.FUNCTION_TOKEN:return this.consumeFunction(A)}return A},PA.prototype.consumeSimpleBlock=function(A){for(var e={type:A,values:[]},t=this.consumeToken();;){if(t.type===sA.EOF_TOKEN||Be(t,A))return e;this.reconsumeToken(t),e.values.push(this.consumeComponentValue()),t=this.consumeToken()}},PA.prototype.consumeFunction=function(A){for(var e={name:A.value,values:[],type:sA.FUNCTION};;){var t=this.consumeToken();if(t.type===sA.EOF_TOKEN||t.type===sA.RIGHT_PARENTHESIS_TOKEN)return e;this.reconsumeToken(t),e.values.push(this.consumeComponentValue())}},PA.prototype.consumeToken=function(){var A=this._tokens.shift();return void 0===A?SA:A},PA.prototype.reconsumeToken=function(A){this._tokens.unshift(A)},PA);function PA(A){this._tokens=A}function xA(A){return A.type===sA.DIMENSION_TOKEN}function VA(A){return A.type===sA.NUMBER_TOKEN}function zA(A){return A.type===sA.IDENT_TOKEN}function XA(A){return A.type===sA.STRING_TOKEN}function JA(A,e){return zA(A)&&A.value===e}function GA(A){return A.type!==sA.WHITESPACE_TOKEN}function kA(A){return A.type!==sA.WHITESPACE_TOKEN&&A.type!==sA.COMMA_TOKEN}function WA(A){var e=[],t=[];return A.forEach(function(A){if(A.type===sA.COMMA_TOKEN){if(0===t.length)throw new Error(\"Error parsing function args, zero tokens for arg\");return e.push(t),void(t=[])}A.type!==sA.WHITESPACE_TOKEN&&t.push(A)}),t.length&&e.push(t),e}function YA(A){return A.type===sA.NUMBER_TOKEN||A.type===sA.DIMENSION_TOKEN}function qA(A){return A.type===sA.PERCENTAGE_TOKEN||YA(A)}function ZA(A){return 1<A.length?[A[0],A[1]]:[A[0]]}function jA(A,e,t){var r=A[0],n=A[1];return[ae(r,e),ae(void 0!==n?n:r,t)]}function $A(A){return A.type===sA.DIMENSION_TOKEN&&(\"deg\"===A.unit||\"grad\"===A.unit||\"rad\"===A.unit||\"turn\"===A.unit)}function Ae(A){switch(A.filter(zA).map(function(A){return A.value}).join(\" \")){case\"to bottom right\":case\"to right bottom\":case\"left top\":case\"top left\":return[se,se];case\"to top\":case\"bottom\":return Qe(0);case\"to bottom left\":case\"to left bottom\":case\"right top\":case\"top right\":return[se,ie];case\"to right\":case\"left\":return Qe(90);case\"to top left\":case\"to left top\":case\"right bottom\":case\"bottom right\":return[ie,ie];case\"to bottom\":case\"top\":return Qe(180);case\"to top right\":case\"to right top\":case\"left bottom\":case\"bottom left\":return[ie,se];case\"to left\":case\"right\":return Qe(270)}return 0}function ee(A){return 0==(255&A)}function te(A){var e=255&A,t=255&A>>8,r=255&A>>16,n=255&A>>24;return e<255?\"rgba(\"+n+\",\"+r+\",\"+t+\",\"+e/255+\")\":\"rgb(\"+n+\",\"+r+\",\"+t+\")\"}function re(A,e){if(A.type===sA.NUMBER_TOKEN)return A.number;if(A.type!==sA.PERCENTAGE_TOKEN)return 0;var t=3===e?1:255;return 3===e?A.number/100*t:Math.round(A.number/100*t)}function ne(A){var e=A.filter(kA);if(3===e.length){var t=e.map(re),r=t[0],n=t[1],B=t[2];return ue(r,n,B,1)}if(4!==e.length)return 0;var s=e.map(re),o=(r=s[0],n=s[1],B=s[2],s[3]);return ue(r,n,B,o)}var Be=function(A,e){return e===sA.LEFT_CURLY_BRACKET_TOKEN&&A.type===sA.RIGHT_CURLY_BRACKET_TOKEN||(e===sA.LEFT_SQUARE_BRACKET_TOKEN&&A.type===sA.RIGHT_SQUARE_BRACKET_TOKEN||e===sA.LEFT_PARENTHESIS_TOKEN&&A.type===sA.RIGHT_PARENTHESIS_TOKEN)},se={type:sA.NUMBER_TOKEN,number:0,flags:4},oe={type:sA.PERCENTAGE_TOKEN,number:50,flags:4},ie={type:sA.PERCENTAGE_TOKEN,number:100,flags:4},ae=function(A,e){if(A.type===sA.PERCENTAGE_TOKEN)return A.number/100*e;if(xA(A))switch(A.unit){case\"rem\":case\"em\":return 16*A.number;case\"px\":default:return A.number}return A.number},ce=function(A){if(A.type===sA.DIMENSION_TOKEN)switch(A.unit){case\"deg\":return Math.PI*A.number/180;case\"grad\":return Math.PI/200*A.number;case\"rad\":return A.number;case\"turn\":return 2*Math.PI*A.number}throw new Error(\"Unsupported angle type\")},Qe=function(A){return Math.PI*A/180},we=function(A){if(A.type===sA.FUNCTION){var e=he[A.name];if(void 0===e)throw new Error('Attempting to parse an unsupported color function \"'+A.name+'\"');return e(A.values)}if(A.type===sA.HASH_TOKEN){if(3===A.value.length){var t=A.value.substring(0,1),r=A.value.substring(1,2),n=A.value.substring(2,3);return ue(parseInt(t+t,16),parseInt(r+r,16),parseInt(n+n,16),1)}if(4===A.value.length){t=A.value.substring(0,1),r=A.value.substring(1,2),n=A.value.substring(2,3);var B=A.value.substring(3,4);return ue(parseInt(t+t,16),parseInt(r+r,16),parseInt(n+n,16),parseInt(B+B,16)/255)}if(6===A.value.length){t=A.value.substring(0,2),r=A.value.substring(2,4),n=A.value.substring(4,6);return ue(parseInt(t,16),parseInt(r,16),parseInt(n,16),1)}if(8===A.value.length){t=A.value.substring(0,2),r=A.value.substring(2,4),n=A.value.substring(4,6),B=A.value.substring(6,8);return ue(parseInt(t,16),parseInt(r,16),parseInt(n,16),parseInt(B,16)/255)}}if(A.type===sA.IDENT_TOKEN){var s=He[A.value.toUpperCase()];if(void 0!==s)return s}return He.TRANSPARENT},ue=function(A,e,t,r){return(A<<24|e<<16|t<<8|Math.round(255*r)<<0)>>>0};function Ue(A,e,t){return t<0&&(t+=1),1<=t&&(t-=1),t<1/6?(e-A)*t*6+A:t<.5?e:t<2/3?6*(e-A)*(2/3-t)+A:A}function le(A){var e=A.filter(kA),t=e[0],r=e[1],n=e[2],B=e[3],s=(t.type===sA.NUMBER_TOKEN?Qe(t.number):ce(t))/(2*Math.PI),o=qA(r)?r.number/100:0,i=qA(n)?n.number/100:0,a=void 0!==B&&qA(B)?ae(B,1):1;if(0==o)return ue(255*i,255*i,255*i,1);var c=i<=.5?i*(1+o):i+o-i*o,Q=2*i-c,w=Ue(Q,c,s+1/3),u=Ue(Q,c,s),U=Ue(Q,c,s-1/3);return ue(255*w,255*u,255*U,a)}var Ce,ge,Ee,Fe,he={hsl:le,hsla:le,rgb:ne,rgba:ne},He={ALICEBLUE:4042850303,ANTIQUEWHITE:4209760255,AQUA:16777215,AQUAMARINE:2147472639,AZURE:4043309055,BEIGE:4126530815,BISQUE:4293182719,BLACK:255,BLANCHEDALMOND:4293643775,BLUE:65535,BLUEVIOLET:2318131967,BROWN:2771004159,BURLYWOOD:3736635391,CADETBLUE:1604231423,CHARTREUSE:2147418367,CHOCOLATE:3530104575,CORAL:4286533887,CORNFLOWERBLUE:1687547391,CORNSILK:4294499583,CRIMSON:3692313855,CYAN:16777215,DARKBLUE:35839,DARKCYAN:9145343,DARKGOLDENROD:3095837695,DARKGRAY:2846468607,DARKGREEN:6553855,DARKGREY:2846468607,DARKKHAKI:3182914559,DARKMAGENTA:2332068863,DARKOLIVEGREEN:1433087999,DARKORANGE:4287365375,DARKORCHID:2570243327,DARKRED:2332033279,DARKSALMON:3918953215,DARKSEAGREEN:2411499519,DARKSLATEBLUE:1211993087,DARKSLATEGRAY:793726975,DARKSLATEGREY:793726975,DARKTURQUOISE:13554175,DARKVIOLET:2483082239,DEEPPINK:4279538687,DEEPSKYBLUE:12582911,DIMGRAY:1768516095,DIMGREY:1768516095,DODGERBLUE:512819199,FIREBRICK:2988581631,FLORALWHITE:4294635775,FORESTGREEN:579543807,FUCHSIA:4278255615,GAINSBORO:3705462015,GHOSTWHITE:4177068031,GOLD:4292280575,GOLDENROD:3668254975,GRAY:2155905279,GREEN:8388863,GREENYELLOW:2919182335,GREY:2155905279,HONEYDEW:4043305215,HOTPINK:4285117695,INDIANRED:3445382399,INDIGO:1258324735,IVORY:4294963455,KHAKI:4041641215,LAVENDER:3873897215,LAVENDERBLUSH:4293981695,LAWNGREEN:2096890111,LEMONCHIFFON:4294626815,LIGHTBLUE:2916673279,LIGHTCORAL:4034953471,LIGHTCYAN:3774873599,LIGHTGOLDENRODYELLOW:4210742015,LIGHTGRAY:3553874943,LIGHTGREEN:2431553791,LIGHTGREY:3553874943,LIGHTPINK:4290167295,LIGHTSALMON:4288707327,LIGHTSEAGREEN:548580095,LIGHTSKYBLUE:2278488831,LIGHTSLATEGRAY:2005441023,LIGHTSLATEGREY:2005441023,LIGHTSTEELBLUE:2965692159,LIGHTYELLOW:4294959359,LIME:16711935,LIMEGREEN:852308735,LINEN:4210091775,MAGENTA:4278255615,MAROON:2147483903,MEDIUMAQUAMARINE:1724754687,MEDIUMBLUE:52735,MEDIUMORCHID:3126187007,MEDIUMPURPLE:2473647103,MEDIUMSEAGREEN:1018393087,MEDIUMSLATEBLUE:2070474495,MEDIUMSPRINGGREEN:16423679,MEDIUMTURQUOISE:1221709055,MEDIUMVIOLETRED:3340076543,MIDNIGHTBLUE:421097727,MINTCREAM:4127193855,MISTYROSE:4293190143,MOCCASIN:4293178879,NAVAJOWHITE:4292783615,NAVY:33023,OLDLACE:4260751103,OLIVE:2155872511,OLIVEDRAB:1804477439,ORANGE:4289003775,ORANGERED:4282712319,ORCHID:3664828159,PALEGOLDENROD:4008225535,PALEGREEN:2566625535,PALETURQUOISE:2951671551,PALEVIOLETRED:3681588223,PAPAYAWHIP:4293907967,PEACHPUFF:4292524543,PERU:3448061951,PINK:4290825215,PLUM:3718307327,POWDERBLUE:2967529215,PURPLE:2147516671,REBECCAPURPLE:1714657791,RED:4278190335,ROSYBROWN:3163525119,ROYALBLUE:1097458175,SADDLEBROWN:2336560127,SALMON:4202722047,SANDYBROWN:4104413439,SEAGREEN:780883967,SEASHELL:4294307583,SIENNA:2689740287,SILVER:3233857791,SKYBLUE:2278484991,SLATEBLUE:1784335871,SLATEGRAY:1887473919,SLATEGREY:1887473919,SNOW:4294638335,SPRINGGREEN:16744447,STEELBLUE:1182971135,TAN:3535047935,TEAL:8421631,THISTLE:3636451583,TOMATO:4284696575,TRANSPARENT:0,TURQUOISE:1088475391,VIOLET:4001558271,WHEAT:4125012991,WHITE:4294967295,WHITESMOKE:4126537215,YELLOW:4294902015,YELLOWGREEN:2597139199};(ge=Ce||(Ce={}))[ge.VALUE=0]=\"VALUE\",ge[ge.LIST=1]=\"LIST\",ge[ge.IDENT_VALUE=2]=\"IDENT_VALUE\",ge[ge.TYPE_VALUE=3]=\"TYPE_VALUE\",ge[ge.TOKEN_VALUE=4]=\"TOKEN_VALUE\",(Fe=Ee||(Ee={}))[Fe.BORDER_BOX=0]=\"BORDER_BOX\",Fe[Fe.PADDING_BOX=1]=\"PADDING_BOX\";function de(A){var e=we(A[0]),t=A[1];return t&&qA(t)?{color:e,stop:t}:{color:e,stop:null}}function fe(A,t){var e=A[0],r=A[A.length-1];null===e.stop&&(e.stop=se),null===r.stop&&(r.stop=ie);for(var n=[],B=0,s=0;s<A.length;s++){var o=A[s].stop;if(null!==o){var i=ae(o,t);B<i?n.push(i):n.push(B),B=i}else n.push(null)}var a=null;for(s=0;s<n.length;s++){var c=n[s];if(null===c)null===a&&(a=s);else if(null!==a){for(var Q=s-a,w=(c-n[a-1])/(1+Q),u=1;u<=Q;u++)n[a+u-1]=w*u;a=null}}return A.map(function(A,e){return{color:A.color,stop:Math.max(Math.min(1,n[e]/t),0)}})}function pe(A,e,t){var r=\"number\"==typeof A?A:function(A,e,t){var r=e/2,n=t/2,B=ae(A[0],e)-r,s=n-ae(A[1],t);return(Math.atan2(s,B)+2*Math.PI)%(2*Math.PI)}(A,e,t),n=Math.abs(e*Math.sin(r))+Math.abs(t*Math.cos(r)),B=e/2,s=t/2,o=n/2,i=Math.sin(r-Math.PI/2)*o,a=Math.cos(r-Math.PI/2)*o;return[n,B-a,B+a,s-i,s+i]}function Ne(A,e){return Math.sqrt(A*A+e*e)}function Ke(A,e,B,s,o){return[[0,0],[0,e],[A,0],[A,e]].reduce(function(A,e){var t=e[0],r=e[1],n=Ne(B-t,s-r);return(o?n<A.optimumDistance:n>A.optimumDistance)?{optimumCorner:e,optimumDistance:n}:A},{optimumDistance:o?1/0:-1/0,optimumCorner:null}).optimumCorner}function Ie(A){var n=Qe(180),B=[];return WA(A).forEach(function(A,e){if(0===e){var t=A[0];if(t.type===sA.IDENT_TOKEN&&-1!==[\"top\",\"left\",\"right\",\"bottom\"].indexOf(t.value))return void(n=Ae(A));if($A(t))return void(n=(ce(t)+Qe(270))%Qe(360))}var r=de(A);B.push(r)}),{angle:n,stops:B,type:xe.LINEAR_GRADIENT}}function Te(A){return 0===A[0]&&255===A[1]&&0===A[2]&&255===A[3]}var me={name:\"background-clip\",initialValue:\"border-box\",prefix:!(Fe[Fe.CONTENT_BOX=2]=\"CONTENT_BOX\"),type:Ce.LIST,parse:function(A){return A.map(function(A){if(zA(A))switch(A.value){case\"padding-box\":return Ee.PADDING_BOX;case\"content-box\":return Ee.CONTENT_BOX}return Ee.BORDER_BOX})}},Re={name:\"background-color\",initialValue:\"transparent\",prefix:!1,type:Ce.TYPE_VALUE,format:\"color\"},Le=function(A,e,t,r,n){var B=\"http://www.w3.org/2000/svg\",s=document.createElementNS(B,\"svg\"),o=document.createElementNS(B,\"foreignObject\");return s.setAttributeNS(null,\"width\",A.toString()),s.setAttributeNS(null,\"height\",e.toString()),o.setAttributeNS(null,\"width\",\"100%\"),o.setAttributeNS(null,\"height\",\"100%\"),o.setAttributeNS(null,\"x\",t.toString()),o.setAttributeNS(null,\"y\",r.toString()),o.setAttributeNS(null,\"externalResourcesRequired\",\"true\"),s.appendChild(o),o.appendChild(n),s},ve=function(r){return new Promise(function(A,e){var t=new Image;t.onload=function(){return A(t)},t.onerror=e,t.src=\"data:image/svg+xml;charset=utf-8,\"+encodeURIComponent((new XMLSerializer).serializeToString(r))})},Oe={get SUPPORT_RANGE_BOUNDS(){var A=function(A){if(A.createRange){var e=A.createRange();if(e.getBoundingClientRect){var t=A.createElement(\"boundtest\");t.style.height=\"123px\",t.style.display=\"block\",A.body.appendChild(t),e.selectNode(t);var r=e.getBoundingClientRect(),n=Math.round(r.height);if(A.body.removeChild(t),123===n)return!0}}return!1}(document);return Object.defineProperty(Oe,\"SUPPORT_RANGE_BOUNDS\",{value:A}),A},get SUPPORT_SVG_DRAWING(){var A=function(A){var e=new Image,t=A.createElement(\"canvas\"),r=t.getContext(\"2d\");if(!r)return!1;e.src=\"data:image/svg+xml,<svg xmlns='http://www.w3.org/2000/svg'></svg>\";try{r.drawImage(e,0,0),t.toDataURL()}catch(A){return!1}return!0}(document);return Object.defineProperty(Oe,\"SUPPORT_SVG_DRAWING\",{value:A}),A},get SUPPORT_FOREIGNOBJECT_DRAWING(){var A=\"function\"==typeof Array.from&&\"function\"==typeof window.fetch?function(r){var A=r.createElement(\"canvas\"),n=100;A.width=n,A.height=n;var B=A.getContext(\"2d\");if(!B)return Promise.reject(!1);B.fillStyle=\"rgb(0, 255, 0)\",B.fillRect(0,0,n,n);var e=new Image,s=A.toDataURL();e.src=s;var t=Le(n,n,0,0,e);return B.fillStyle=\"red\",B.fillRect(0,0,n,n),ve(t).then(function(A){B.drawImage(A,0,0);var e=B.getImageData(0,0,n,n).data;B.fillStyle=\"red\",B.fillRect(0,0,n,n);var t=r.createElement(\"div\");return t.style.backgroundImage=\"url(\"+s+\")\",t.style.height=\"100px\",Te(e)?ve(Le(n,n,0,0,t)):Promise.reject(!1)}).then(function(A){return B.drawImage(A,0,0),Te(B.getImageData(0,0,n,n).data)}).catch(function(){return!1})}(document):Promise.resolve(!1);return Object.defineProperty(Oe,\"SUPPORT_FOREIGNOBJECT_DRAWING\",{value:A}),A},get SUPPORT_CORS_IMAGES(){var A=void 0!==(new Image).crossOrigin;return Object.defineProperty(Oe,\"SUPPORT_CORS_IMAGES\",{value:A}),A},get SUPPORT_RESPONSE_TYPE(){var A=\"string\"==typeof(new XMLHttpRequest).responseType;return Object.defineProperty(Oe,\"SUPPORT_RESPONSE_TYPE\",{value:A}),A},get SUPPORT_CORS_XHR(){var A=\"withCredentials\"in new XMLHttpRequest;return Object.defineProperty(Oe,\"SUPPORT_CORS_XHR\",{value:A}),A}},De=(be.prototype.debug=function(){for(var A=[],e=0;e<arguments.length;e++)A[e]=arguments[e];this.enabled&&(\"undefined\"!=typeof window&&window.console&&\"function\"==typeof console.debug?console.debug.apply(console,[this.id,this.getTime()+\"ms\"].concat(A)):this.info.apply(this,A))},be.prototype.getTime=function(){return Date.now()-this.start},be.create=function(A){be.instances[A.id]=new be(A)},be.destroy=function(A){delete be.instances[A]},be.getInstance=function(A){var e=be.instances[A];if(void 0===e)throw new Error(\"No logger instance found with id \"+A);return e},be.prototype.info=function(){for(var A=[],e=0;e<arguments.length;e++)A[e]=arguments[e];this.enabled&&\"undefined\"!=typeof window&&window.console&&\"function\"==typeof console.info&&console.info.apply(console,[this.id,this.getTime()+\"ms\"].concat(A))},be.prototype.error=function(){for(var A=[],e=0;e<arguments.length;e++)A[e]=arguments[e];this.enabled&&(\"undefined\"!=typeof window&&window.console&&\"function\"==typeof console.error?console.error.apply(console,[this.id,this.getTime()+\"ms\"].concat(A)):this.info.apply(this,A))},be.instances={},be);function be(A){var e=A.id,t=A.enabled;this.id=e,this.enabled=t,this.start=Date.now()}var Se=(Me.create=function(A,e){return Me._caches[A]=new ye(A,e)},Me.destroy=function(A){delete Me._caches[A]},Me.open=function(A){var e=Me._caches[A];if(void 0!==e)return e;throw new Error('Cache with key \"'+A+'\" not found')},Me.getOrigin=function(A){var e=Me._link;return e?(e.href=A,e.href=e.href,e.protocol+e.hostname+e.port):\"about:blank\"},Me.isSameOrigin=function(A){return Me.getOrigin(A)===Me._origin},Me.setContext=function(A){Me._link=A.document.createElement(\"a\"),Me._origin=Me.getOrigin(A.location.href)},Me.getInstance=function(){var A=Me._current;if(null===A)throw new Error(\"No cache instance attached\");return A},Me.attachInstance=function(A){Me._current=A},Me.detachInstance=function(){Me._current=null},Me._caches={},Me._origin=\"about:blank\",Me._current=null,Me);function Me(){}var ye=(_e.prototype.addImage=function(A){var e=Promise.resolve();return this.has(A)||(Ye(A)||Ge(A))&&(this._cache[A]=this.loadImage(A)),e},_e.prototype.match=function(A){return this._cache[A]},_e.prototype.loadImage=function(s){return a(this,void 0,void 0,function(){var e,r,t,n,B=this;return S(this,function(A){switch(A.label){case 0:return e=Se.isSameOrigin(s),r=!ke(s)&&!0===this._options.useCORS&&Oe.SUPPORT_CORS_IMAGES&&!e,t=!ke(s)&&!e&&\"string\"==typeof this._options.proxy&&Oe.SUPPORT_CORS_XHR&&!r,e||!1!==this._options.allowTaint||ke(s)||t||r?(n=s,t?[4,this.proxy(n)]:[3,2]):[2];case 1:n=A.sent(),A.label=2;case 2:return De.getInstance(this.id).debug(\"Added image \"+s.substring(0,256)),[4,new Promise(function(A,e){var t=new Image;t.onload=function(){return A(t)},t.onerror=e,(We(n)||r)&&(t.crossOrigin=\"anonymous\"),t.src=n,!0===t.complete&&setTimeout(function(){return A(t)},500),0<B._options.imageTimeout&&setTimeout(function(){return e(\"Timed out (\"+B._options.imageTimeout+\"ms) loading image\")},B._options.imageTimeout)})];case 3:return[2,A.sent()]}})})},_e.prototype.has=function(A){return void 0!==this._cache[A]},_e.prototype.keys=function(){return Promise.resolve(Object.keys(this._cache))},_e.prototype.proxy=function(B){var s=this,o=this._options.proxy;if(!o)throw new Error(\"No proxy defined\");var i=B.substring(0,256);return new Promise(function(e,t){var r=Oe.SUPPORT_RESPONSE_TYPE?\"blob\":\"text\",n=new XMLHttpRequest;if(n.onload=function(){if(200===n.status)if(\"text\"==r)e(n.response);else{var A=new FileReader;A.addEventListener(\"load\",function(){return e(A.result)},!1),A.addEventListener(\"error\",function(A){return t(A)},!1),A.readAsDataURL(n.response)}else t(\"Failed to proxy resource \"+i+\" with status code \"+n.status)},n.onerror=t,n.open(\"GET\",o+\"?url=\"+encodeURIComponent(B)+\"&responseType=\"+r),\"text\"!=r&&n instanceof XMLHttpRequest&&(n.responseType=r),s._options.imageTimeout){var A=s._options.imageTimeout;n.timeout=A,n.ontimeout=function(){return t(\"Timed out (\"+A+\"ms) proxying \"+i)}}n.send()})},_e);function _e(A,e){this.id=A,this._options=e,this._cache={}}function Pe(A){var n=rt.CIRCLE,B=Bt.FARTHEST_CORNER,s=[],o=[];return WA(A).forEach(function(A,e){var t=!0;if(0===e?t=A.reduce(function(A,e){if(zA(e))switch(e.value){case\"center\":return o.push(oe),!1;case\"top\":case\"left\":return o.push(se),!1;case\"right\":case\"bottom\":return o.push(ie),!1}else if(qA(e)||YA(e))return o.push(e),!1;return A},t):1===e&&(t=A.reduce(function(A,e){if(zA(e))switch(e.value){case\"circle\":return n=rt.CIRCLE,!1;case et:return n=rt.ELLIPSE,!1;case tt:case Ze:return B=Bt.CLOSEST_SIDE,!1;case je:return B=Bt.FARTHEST_SIDE,!1;case $e:return B=Bt.CLOSEST_CORNER,!1;case\"cover\":case At:return B=Bt.FARTHEST_CORNER,!1}else if(YA(e)||qA(e))return Array.isArray(B)||(B=[]),B.push(e),!1;return A},t)),t){var r=de(A);s.push(r)}}),{size:B,shape:n,stops:s,position:o,type:xe.RADIAL_GRADIENT}}var xe,Ve,ze=/^data:image\\/svg\\+xml/i,Xe=/^data:image\\/.*;base64,/i,Je=/^data:image\\/.*/i,Ge=function(A){return Oe.SUPPORT_SVG_DRAWING||!qe(A)},ke=function(A){return Je.test(A)},We=function(A){return Xe.test(A)},Ye=function(A){return\"blob\"===A.substr(0,4)},qe=function(A){return\"svg\"===A.substr(-3).toLowerCase()||ze.test(A)},Ze=\"closest-side\",je=\"farthest-side\",$e=\"closest-corner\",At=\"farthest-corner\",et=\"ellipse\",tt=\"contain\";(Ve=xe||(xe={}))[Ve.URL=0]=\"URL\",Ve[Ve.LINEAR_GRADIENT=1]=\"LINEAR_GRADIENT\",Ve[Ve.RADIAL_GRADIENT=2]=\"RADIAL_GRADIENT\";var rt,nt,Bt,st;(nt=rt||(rt={}))[nt.CIRCLE=0]=\"CIRCLE\",nt[nt.ELLIPSE=1]=\"ELLIPSE\",(st=Bt||(Bt={}))[st.CLOSEST_SIDE=0]=\"CLOSEST_SIDE\",st[st.FARTHEST_SIDE=1]=\"FARTHEST_SIDE\",st[st.CLOSEST_CORNER=2]=\"CLOSEST_CORNER\",st[st.FARTHEST_CORNER=3]=\"FARTHEST_CORNER\";var ot=function(A){if(A.type===sA.URL_TOKEN){var e={url:A.value,type:xe.URL};return Se.getInstance().addImage(A.value),e}if(A.type!==sA.FUNCTION)throw new Error(\"Unsupported image type\");var t=ct[A.name];if(void 0===t)throw new Error('Attempting to parse an unsupported image function \"'+A.name+'\"');return t(A.values)};var it,at,ct={\"linear-gradient\":function(A){var n=Qe(180),B=[];return WA(A).forEach(function(A,e){if(0===e){var t=A[0];if(t.type===sA.IDENT_TOKEN&&\"to\"===t.value)return void(n=Ae(A));if($A(t))return void(n=ce(t))}var r=de(A);B.push(r)}),{angle:n,stops:B,type:xe.LINEAR_GRADIENT}},\"-moz-linear-gradient\":Ie,\"-ms-linear-gradient\":Ie,\"-o-linear-gradient\":Ie,\"-webkit-linear-gradient\":Ie,\"radial-gradient\":function(A){var B=rt.CIRCLE,s=Bt.FARTHEST_CORNER,o=[],i=[];return WA(A).forEach(function(A,e){var t=!0;if(0===e){var r=!1;t=A.reduce(function(A,e){if(r)if(zA(e))switch(e.value){case\"center\":return i.push(oe),A;case\"top\":case\"left\":return i.push(se),A;case\"right\":case\"bottom\":return i.push(ie),A}else(qA(e)||YA(e))&&i.push(e);else if(zA(e))switch(e.value){case\"circle\":return B=rt.CIRCLE,!1;case et:return B=rt.ELLIPSE,!1;case\"at\":return!(r=!0);case Ze:return s=Bt.CLOSEST_SIDE,!1;case\"cover\":case je:return s=Bt.FARTHEST_SIDE,!1;case tt:case $e:return s=Bt.CLOSEST_CORNER,!1;case At:return s=Bt.FARTHEST_CORNER,!1}else if(YA(e)||qA(e))return Array.isArray(s)||(s=[]),s.push(e),!1;return A},t)}if(t){var n=de(A);o.push(n)}}),{size:s,shape:B,stops:o,position:i,type:xe.RADIAL_GRADIENT}},\"-moz-radial-gradient\":Pe,\"-ms-radial-gradient\":Pe,\"-o-radial-gradient\":Pe,\"-webkit-radial-gradient\":Pe,\"-webkit-gradient\":function(A){var e=Qe(180),s=[],o=xe.LINEAR_GRADIENT,t=rt.CIRCLE,r=Bt.FARTHEST_CORNER;return WA(A).forEach(function(A,e){var t=A[0];if(0===e){if(zA(t)&&\"linear\"===t.value)return void(o=xe.LINEAR_GRADIENT);if(zA(t)&&\"radial\"===t.value)return void(o=xe.RADIAL_GRADIENT)}if(t.type===sA.FUNCTION)if(\"from\"===t.name){var r=we(t.values[0]);s.push({stop:se,color:r})}else if(\"to\"===t.name)r=we(t.values[0]),s.push({stop:ie,color:r});else if(\"color-stop\"===t.name){var n=t.values.filter(kA);if(2===n.length){r=we(n[1]);var B=n[0];VA(B)&&s.push({stop:{type:sA.PERCENTAGE_TOKEN,number:100*B.number,flags:B.flags},color:r})}}}),o===xe.LINEAR_GRADIENT?{angle:(e+Qe(180))%Qe(360),stops:s,type:o}:{size:r,shape:t,stops:s,position:[],type:o}}},Qt={name:\"background-image\",initialValue:\"none\",type:Ce.LIST,prefix:!1,parse:function(A){if(0===A.length)return[];var e=A[0];return e.type===sA.IDENT_TOKEN&&\"none\"===e.value?[]:A.filter(function(A){return kA(A)&&function(A){return A.type!==sA.FUNCTION||ct[A.name]}(A)}).map(ot)}},wt={name:\"background-origin\",initialValue:\"border-box\",prefix:!1,type:Ce.LIST,parse:function(A){return A.map(function(A){if(zA(A))switch(A.value){case\"padding-box\":return 1;case\"content-box\":return 2}return 0})}},ut={name:\"background-position\",initialValue:\"0% 0%\",type:Ce.LIST,prefix:!1,parse:function(A){return WA(A).map(function(A){return A.filter(qA)}).map(ZA)}};(at=it||(it={}))[at.REPEAT=0]=\"REPEAT\",at[at.NO_REPEAT=1]=\"NO_REPEAT\",at[at.REPEAT_X=2]=\"REPEAT_X\";var Ut,lt,Ct={name:\"background-repeat\",initialValue:\"repeat\",prefix:!(at[at.REPEAT_Y=3]=\"REPEAT_Y\"),type:Ce.LIST,parse:function(A){return WA(A).map(function(A){return A.filter(zA).map(function(A){return A.value}).join(\" \")}).map(gt)}},gt=function(A){switch(A){case\"no-repeat\":return it.NO_REPEAT;case\"repeat-x\":case\"repeat no-repeat\":return it.REPEAT_X;case\"repeat-y\":case\"no-repeat repeat\":return it.REPEAT_Y;case\"repeat\":default:return it.REPEAT}};(lt=Ut||(Ut={})).AUTO=\"auto\",lt.CONTAIN=\"contain\";function Et(A){return{name:\"border-\"+A+\"-color\",initialValue:\"transparent\",prefix:!1,type:Ce.TYPE_VALUE,format:\"color\"}}function Ft(A){return{name:\"border-radius-\"+A,initialValue:\"0 0\",prefix:!1,type:Ce.LIST,parse:function(A){return ZA(A.filter(qA))}}}var ht,Ht,dt={name:\"background-size\",initialValue:\"0\",prefix:!(lt.COVER=\"cover\"),type:Ce.LIST,parse:function(A){return WA(A).map(function(A){return A.filter(ft)})}},ft=function(A){return zA(A)||qA(A)},pt=Et(\"top\"),Nt=Et(\"right\"),Kt=Et(\"bottom\"),It=Et(\"left\"),Tt=Ft(\"top-left\"),mt=Ft(\"top-right\"),Rt=Ft(\"bottom-right\"),Lt=Ft(\"bottom-left\");(Ht=ht||(ht={}))[Ht.NONE=0]=\"NONE\",Ht[Ht.SOLID=1]=\"SOLID\";function vt(A){return{name:\"border-\"+A+\"-style\",initialValue:\"solid\",prefix:!1,type:Ce.IDENT_VALUE,parse:function(A){switch(A){case\"none\":return ht.NONE}return ht.SOLID}}}function Ot(A){return{name:\"border-\"+A+\"-width\",initialValue:\"0\",type:Ce.VALUE,prefix:!1,parse:function(A){return xA(A)?A.number:0}}}var Dt,bt,St=vt(\"top\"),Mt=vt(\"right\"),yt=vt(\"bottom\"),_t=vt(\"left\"),Pt=Ot(\"top\"),xt=Ot(\"right\"),Vt=Ot(\"bottom\"),zt=Ot(\"left\"),Xt={name:\"color\",initialValue:\"transparent\",prefix:!1,type:Ce.TYPE_VALUE,format:\"color\"},Jt={name:\"display\",initialValue:\"inline-block\",prefix:!1,type:Ce.LIST,parse:function(A){return A.filter(zA).reduce(function(A,e){return A|Gt(e.value)},0)}},Gt=function(A){switch(A){case\"block\":return 2;case\"inline\":return 4;case\"run-in\":return 8;case\"flow\":return 16;case\"flow-root\":return 32;case\"table\":return 64;case\"flex\":case\"-webkit-flex\":return 128;case\"grid\":case\"-ms-grid\":return 256;case\"ruby\":return 512;case\"subgrid\":return 1024;case\"list-item\":return 2048;case\"table-row-group\":return 4096;case\"table-header-group\":return 8192;case\"table-footer-group\":return 16384;case\"table-row\":return 32768;case\"table-cell\":return 65536;case\"table-column-group\":return 131072;case\"table-column\":return 262144;case\"table-caption\":return 524288;case\"ruby-base\":return 1048576;case\"ruby-text\":return 2097152;case\"ruby-base-container\":return 4194304;case\"ruby-text-container\":return 8388608;case\"contents\":return 16777216;case\"inline-block\":return 33554432;case\"inline-list-item\":return 67108864;case\"inline-table\":return 134217728;case\"inline-flex\":return 268435456;case\"inline-grid\":return 536870912}return 0};(bt=Dt||(Dt={}))[bt.NONE=0]=\"NONE\",bt[bt.LEFT=1]=\"LEFT\",bt[bt.RIGHT=2]=\"RIGHT\",bt[bt.INLINE_START=3]=\"INLINE_START\";var kt,Wt,Yt,qt,Zt={name:\"float\",initialValue:\"none\",prefix:!(bt[bt.INLINE_END=4]=\"INLINE_END\"),type:Ce.IDENT_VALUE,parse:function(A){switch(A){case\"left\":return Dt.LEFT;case\"right\":return Dt.RIGHT;case\"inline-start\":return Dt.INLINE_START;case\"inline-end\":return Dt.INLINE_END}return Dt.NONE}},jt={name:\"letter-spacing\",initialValue:\"0\",prefix:!1,type:Ce.VALUE,parse:function(A){return A.type===sA.IDENT_TOKEN&&\"normal\"===A.value?0:A.type===sA.NUMBER_TOKEN?A.number:A.type===sA.DIMENSION_TOKEN?A.number:0}},$t={name:\"line-break\",initialValue:(Wt=kt||(kt={})).NORMAL=\"normal\",prefix:!(Wt.STRICT=\"strict\"),type:Ce.IDENT_VALUE,parse:function(A){switch(A){case\"strict\":return kt.STRICT;case\"normal\":default:return kt.NORMAL}}},Ar={name:\"line-height\",initialValue:\"normal\",prefix:!1,type:Ce.TOKEN_VALUE},er={name:\"list-style-image\",initialValue:\"none\",type:Ce.VALUE,prefix:!1,parse:function(A){return A.type===sA.IDENT_TOKEN&&\"none\"===A.value?null:ot(A)}};(qt=Yt||(Yt={}))[qt.INSIDE=0]=\"INSIDE\";var tr,rr,nr={name:\"list-style-position\",initialValue:\"outside\",prefix:!(qt[qt.OUTSIDE=1]=\"OUTSIDE\"),type:Ce.IDENT_VALUE,parse:function(A){switch(A){case\"inside\":return Yt.INSIDE;case\"outside\":default:return Yt.OUTSIDE}}};(rr=tr||(tr={}))[rr.NONE=-1]=\"NONE\",rr[rr.DISC=0]=\"DISC\",rr[rr.CIRCLE=1]=\"CIRCLE\",rr[rr.SQUARE=2]=\"SQUARE\",rr[rr.DECIMAL=3]=\"DECIMAL\",rr[rr.CJK_DECIMAL=4]=\"CJK_DECIMAL\",rr[rr.DECIMAL_LEADING_ZERO=5]=\"DECIMAL_LEADING_ZERO\",rr[rr.LOWER_ROMAN=6]=\"LOWER_ROMAN\",rr[rr.UPPER_ROMAN=7]=\"UPPER_ROMAN\",rr[rr.LOWER_GREEK=8]=\"LOWER_GREEK\",rr[rr.LOWER_ALPHA=9]=\"LOWER_ALPHA\",rr[rr.UPPER_ALPHA=10]=\"UPPER_ALPHA\",rr[rr.ARABIC_INDIC=11]=\"ARABIC_INDIC\",rr[rr.ARMENIAN=12]=\"ARMENIAN\",rr[rr.BENGALI=13]=\"BENGALI\",rr[rr.CAMBODIAN=14]=\"CAMBODIAN\",rr[rr.CJK_EARTHLY_BRANCH=15]=\"CJK_EARTHLY_BRANCH\",rr[rr.CJK_HEAVENLY_STEM=16]=\"CJK_HEAVENLY_STEM\",rr[rr.CJK_IDEOGRAPHIC=17]=\"CJK_IDEOGRAPHIC\",rr[rr.DEVANAGARI=18]=\"DEVANAGARI\",rr[rr.ETHIOPIC_NUMERIC=19]=\"ETHIOPIC_NUMERIC\",rr[rr.GEORGIAN=20]=\"GEORGIAN\",rr[rr.GUJARATI=21]=\"GUJARATI\",rr[rr.GURMUKHI=22]=\"GURMUKHI\",rr[rr.HEBREW=22]=\"HEBREW\",rr[rr.HIRAGANA=23]=\"HIRAGANA\",rr[rr.HIRAGANA_IROHA=24]=\"HIRAGANA_IROHA\",rr[rr.JAPANESE_FORMAL=25]=\"JAPANESE_FORMAL\",rr[rr.JAPANESE_INFORMAL=26]=\"JAPANESE_INFORMAL\",rr[rr.KANNADA=27]=\"KANNADA\",rr[rr.KATAKANA=28]=\"KATAKANA\",rr[rr.KATAKANA_IROHA=29]=\"KATAKANA_IROHA\",rr[rr.KHMER=30]=\"KHMER\",rr[rr.KOREAN_HANGUL_FORMAL=31]=\"KOREAN_HANGUL_FORMAL\",rr[rr.KOREAN_HANJA_FORMAL=32]=\"KOREAN_HANJA_FORMAL\",rr[rr.KOREAN_HANJA_INFORMAL=33]=\"KOREAN_HANJA_INFORMAL\",rr[rr.LAO=34]=\"LAO\",rr[rr.LOWER_ARMENIAN=35]=\"LOWER_ARMENIAN\",rr[rr.MALAYALAM=36]=\"MALAYALAM\",rr[rr.MONGOLIAN=37]=\"MONGOLIAN\",rr[rr.MYANMAR=38]=\"MYANMAR\",rr[rr.ORIYA=39]=\"ORIYA\",rr[rr.PERSIAN=40]=\"PERSIAN\",rr[rr.SIMP_CHINESE_FORMAL=41]=\"SIMP_CHINESE_FORMAL\",rr[rr.SIMP_CHINESE_INFORMAL=42]=\"SIMP_CHINESE_INFORMAL\",rr[rr.TAMIL=43]=\"TAMIL\",rr[rr.TELUGU=44]=\"TELUGU\",rr[rr.THAI=45]=\"THAI\",rr[rr.TIBETAN=46]=\"TIBETAN\",rr[rr.TRAD_CHINESE_FORMAL=47]=\"TRAD_CHINESE_FORMAL\",rr[rr.TRAD_CHINESE_INFORMAL=48]=\"TRAD_CHINESE_INFORMAL\",rr[rr.UPPER_ARMENIAN=49]=\"UPPER_ARMENIAN\",rr[rr.DISCLOSURE_OPEN=50]=\"DISCLOSURE_OPEN\";function Br(A){return{name:\"margin-\"+A,initialValue:\"0\",prefix:!1,type:Ce.TOKEN_VALUE}}var sr,or,ir={name:\"list-style-type\",initialValue:\"none\",prefix:!(rr[rr.DISCLOSURE_CLOSED=51]=\"DISCLOSURE_CLOSED\"),type:Ce.IDENT_VALUE,parse:function(A){switch(A){case\"disc\":return tr.DISC;case\"circle\":return tr.CIRCLE;case\"square\":return tr.SQUARE;case\"decimal\":return tr.DECIMAL;case\"cjk-decimal\":return tr.CJK_DECIMAL;case\"decimal-leading-zero\":return tr.DECIMAL_LEADING_ZERO;case\"lower-roman\":return tr.LOWER_ROMAN;case\"upper-roman\":return tr.UPPER_ROMAN;case\"lower-greek\":return tr.LOWER_GREEK;case\"lower-alpha\":return tr.LOWER_ALPHA;case\"upper-alpha\":return tr.UPPER_ALPHA;case\"arabic-indic\":return tr.ARABIC_INDIC;case\"armenian\":return tr.ARMENIAN;case\"bengali\":return tr.BENGALI;case\"cambodian\":return tr.CAMBODIAN;case\"cjk-earthly-branch\":return tr.CJK_EARTHLY_BRANCH;case\"cjk-heavenly-stem\":return tr.CJK_HEAVENLY_STEM;case\"cjk-ideographic\":return tr.CJK_IDEOGRAPHIC;case\"devanagari\":return tr.DEVANAGARI;case\"ethiopic-numeric\":return tr.ETHIOPIC_NUMERIC;case\"georgian\":return tr.GEORGIAN;case\"gujarati\":return tr.GUJARATI;case\"gurmukhi\":return tr.GURMUKHI;case\"hebrew\":return tr.HEBREW;case\"hiragana\":return tr.HIRAGANA;case\"hiragana-iroha\":return tr.HIRAGANA_IROHA;case\"japanese-formal\":return tr.JAPANESE_FORMAL;case\"japanese-informal\":return tr.JAPANESE_INFORMAL;case\"kannada\":return tr.KANNADA;case\"katakana\":return tr.KATAKANA;case\"katakana-iroha\":return tr.KATAKANA_IROHA;case\"khmer\":return tr.KHMER;case\"korean-hangul-formal\":return tr.KOREAN_HANGUL_FORMAL;case\"korean-hanja-formal\":return tr.KOREAN_HANJA_FORMAL;case\"korean-hanja-informal\":return tr.KOREAN_HANJA_INFORMAL;case\"lao\":return tr.LAO;case\"lower-armenian\":return tr.LOWER_ARMENIAN;case\"malayalam\":return tr.MALAYALAM;case\"mongolian\":return tr.MONGOLIAN;case\"myanmar\":return tr.MYANMAR;case\"oriya\":return tr.ORIYA;case\"persian\":return tr.PERSIAN;case\"simp-chinese-formal\":return tr.SIMP_CHINESE_FORMAL;case\"simp-chinese-informal\":return tr.SIMP_CHINESE_INFORMAL;case\"tamil\":return tr.TAMIL;case\"telugu\":return tr.TELUGU;case\"thai\":return tr.THAI;case\"tibetan\":return tr.TIBETAN;case\"trad-chinese-formal\":return tr.TRAD_CHINESE_FORMAL;case\"trad-chinese-informal\":return tr.TRAD_CHINESE_INFORMAL;case\"upper-armenian\":return tr.UPPER_ARMENIAN;case\"disclosure-open\":return tr.DISCLOSURE_OPEN;case\"disclosure-closed\":return tr.DISCLOSURE_CLOSED;case\"none\":default:return tr.NONE}}},ar=Br(\"top\"),cr=Br(\"right\"),Qr=Br(\"bottom\"),wr=Br(\"left\");(or=sr||(sr={}))[or.VISIBLE=0]=\"VISIBLE\",or[or.HIDDEN=1]=\"HIDDEN\",or[or.SCROLL=2]=\"SCROLL\";function ur(A){return{name:\"padding-\"+A,initialValue:\"0\",prefix:!1,type:Ce.TYPE_VALUE,format:\"length-percentage\"}}var Ur,lr,Cr,gr,Er={name:\"overflow\",initialValue:\"visible\",prefix:!(or[or.AUTO=3]=\"AUTO\"),type:Ce.LIST,parse:function(A){return A.filter(zA).map(function(A){switch(A.value){case\"hidden\":return sr.HIDDEN;case\"scroll\":return sr.SCROLL;case\"auto\":return sr.AUTO;case\"visible\":default:return sr.VISIBLE}})}},Fr={name:\"overflow-wrap\",initialValue:(lr=Ur||(Ur={})).NORMAL=\"normal\",prefix:!(lr.BREAK_WORD=\"break-word\"),type:Ce.IDENT_VALUE,parse:function(A){switch(A){case\"break-word\":return Ur.BREAK_WORD;case\"normal\":default:return Ur.NORMAL}}},hr=ur(\"top\"),Hr=ur(\"right\"),dr=ur(\"bottom\"),fr=ur(\"left\");(gr=Cr||(Cr={}))[gr.LEFT=0]=\"LEFT\",gr[gr.CENTER=1]=\"CENTER\";var pr,Nr,Kr={name:\"text-align\",initialValue:\"left\",prefix:!(gr[gr.RIGHT=2]=\"RIGHT\"),type:Ce.IDENT_VALUE,parse:function(A){switch(A){case\"right\":return Cr.RIGHT;case\"center\":case\"justify\":return Cr.CENTER;case\"left\":default:return Cr.LEFT}}};(Nr=pr||(pr={}))[Nr.STATIC=0]=\"STATIC\",Nr[Nr.RELATIVE=1]=\"RELATIVE\",Nr[Nr.ABSOLUTE=2]=\"ABSOLUTE\",Nr[Nr.FIXED=3]=\"FIXED\";var Ir,Tr,mr={name:\"position\",initialValue:\"static\",prefix:!(Nr[Nr.STICKY=4]=\"STICKY\"),type:Ce.IDENT_VALUE,parse:function(A){switch(A){case\"relative\":return pr.RELATIVE;case\"absolute\":return pr.ABSOLUTE;case\"fixed\":return pr.FIXED;case\"sticky\":return pr.STICKY}return pr.STATIC}},Rr={name:\"text-shadow\",initialValue:\"none\",type:Ce.LIST,prefix:!1,parse:function(A){return 1===A.length&&JA(A[0],\"none\")?[]:WA(A).map(function(A){for(var e={color:He.TRANSPARENT,offsetX:se,offsetY:se,blur:se},t=0,r=0;r<A.length;r++){var n=A[r];YA(n)?(0===t?e.offsetX=n:1===t?e.offsetY=n:e.blur=n,t++):e.color=we(n)}return e})}};(Tr=Ir||(Ir={}))[Tr.NONE=0]=\"NONE\",Tr[Tr.LOWERCASE=1]=\"LOWERCASE\",Tr[Tr.UPPERCASE=2]=\"UPPERCASE\";var Lr,vr,Or={name:\"text-transform\",initialValue:\"none\",prefix:!(Tr[Tr.CAPITALIZE=3]=\"CAPITALIZE\"),type:Ce.IDENT_VALUE,parse:function(A){switch(A){case\"uppercase\":return Ir.UPPERCASE;case\"lowercase\":return Ir.LOWERCASE;case\"capitalize\":return Ir.CAPITALIZE}return Ir.NONE}},Dr={name:\"transform\",initialValue:\"none\",prefix:!0,type:Ce.VALUE,parse:function(A){if(A.type===sA.IDENT_TOKEN&&\"none\"===A.value)return null;if(A.type!==sA.FUNCTION)return null;var e=br[A.name];if(void 0===e)throw new Error('Attempting to parse an unsupported transform function \"'+A.name+'\"');return e(A.values)}},br={matrix:function(A){var e=A.filter(function(A){return A.type===sA.NUMBER_TOKEN}).map(function(A){return A.number});return 6===e.length?e:null},matrix3d:function(A){var e=A.filter(function(A){return A.type===sA.NUMBER_TOKEN}).map(function(A){return A.number}),t=e[0],r=e[1],n=(e[2],e[3],e[4]),B=e[5],s=(e[6],e[7],e[8],e[9],e[10],e[11],e[12]),o=e[13];e[14],e[15];return 16===e.length?[t,r,n,B,s,o]:null}},Sr={type:sA.PERCENTAGE_TOKEN,number:50,flags:4},Mr=[Sr,Sr],yr={name:\"transform-origin\",initialValue:\"50% 50%\",prefix:!0,type:Ce.LIST,parse:function(A){var e=A.filter(qA);return 2!==e.length?Mr:[e[0],e[1]]}};(vr=Lr||(Lr={}))[vr.VISIBLE=0]=\"VISIBLE\",vr[vr.HIDDEN=1]=\"HIDDEN\";var _r,Pr,xr={name:\"visible\",initialValue:\"none\",prefix:!(vr[vr.COLLAPSE=2]=\"COLLAPSE\"),type:Ce.IDENT_VALUE,parse:function(A){switch(A){case\"hidden\":return Lr.HIDDEN;case\"collapse\":return Lr.COLLAPSE;case\"visible\":default:return Lr.VISIBLE}}};(Pr=_r||(_r={})).NORMAL=\"normal\",Pr.BREAK_ALL=\"break-all\";var Vr,zr,Xr={name:\"word-break\",initialValue:\"normal\",prefix:!(Pr.KEEP_ALL=\"keep-all\"),type:Ce.IDENT_VALUE,parse:function(A){switch(A){case\"break-all\":return _r.BREAK_ALL;case\"keep-all\":return _r.KEEP_ALL;case\"normal\":default:return _r.NORMAL}}},Jr={name:\"z-index\",initialValue:\"auto\",prefix:!1,type:Ce.VALUE,parse:function(A){if(A.type===sA.IDENT_TOKEN)return{auto:!0,order:0};if(VA(A))return{auto:!1,order:A.number};throw new Error(\"Invalid z-index number parsed\")}},Gr={name:\"opacity\",initialValue:\"1\",type:Ce.VALUE,prefix:!1,parse:function(A){return VA(A)?A.number:1}},kr={name:\"text-decoration-color\",initialValue:\"transparent\",prefix:!1,type:Ce.TYPE_VALUE,format:\"color\"},Wr={name:\"text-decoration-line\",initialValue:\"none\",prefix:!1,type:Ce.LIST,parse:function(A){return A.filter(zA).map(function(A){switch(A.value){case\"underline\":return 1;case\"overline\":return 2;case\"line-through\":return 3;case\"none\":return 4}return 0}).filter(function(A){return 0!==A})}},Yr={name:\"font-family\",initialValue:\"\",prefix:!1,type:Ce.LIST,parse:function(A){return A.filter(qr).map(function(A){return A.value})}},qr=function(A){return A.type===sA.STRING_TOKEN||A.type===sA.IDENT_TOKEN},Zr={name:\"font-size\",initialValue:\"0\",prefix:!1,type:Ce.TYPE_VALUE,format:\"length\"},jr={name:\"font-weight\",initialValue:\"normal\",type:Ce.VALUE,prefix:!1,parse:function(A){if(VA(A))return A.number;if(zA(A))switch(A.value){case\"bold\":return 700;case\"normal\":default:return 400}return 400}},$r={name:\"font-variant\",initialValue:\"none\",type:Ce.LIST,prefix:!1,parse:function(A){return A.filter(zA).map(function(A){return A.value})}};(zr=Vr||(Vr={})).NORMAL=\"normal\",zr.ITALIC=\"italic\";function An(A,e){return 0!=(A&e)}function en(A,e,t){if(!A)return\"\";var r=A[Math.min(e,A.length-1)];return r?t?r.open:r.close:\"\"}var tn={name:\"font-style\",initialValue:\"normal\",prefix:!(zr.OBLIQUE=\"oblique\"),type:Ce.IDENT_VALUE,parse:function(A){switch(A){case\"oblique\":return Vr.OBLIQUE;case\"italic\":return Vr.ITALIC;case\"normal\":default:return Vr.NORMAL}}},rn={name:\"content\",initialValue:\"none\",type:Ce.LIST,prefix:!1,parse:function(A){if(0===A.length)return[];var e=A[0];return e.type===sA.IDENT_TOKEN&&\"none\"===e.value?[]:A}},nn={name:\"counter-increment\",initialValue:\"none\",prefix:!0,type:Ce.LIST,parse:function(A){if(0===A.length)return null;var e=A[0];if(e.type===sA.IDENT_TOKEN&&\"none\"===e.value)return null;for(var t=[],r=A.filter(GA),n=0;n<r.length;n++){var B=r[n],s=r[n+1];if(B.type===sA.IDENT_TOKEN){var o=s&&VA(s)?s.number:1;t.push({counter:B.value,increment:o})}}return t}},Bn={name:\"counter-reset\",initialValue:\"none\",prefix:!0,type:Ce.LIST,parse:function(A){if(0===A.length)return[];for(var e=[],t=A.filter(GA),r=0;r<t.length;r++){var n=t[r],B=t[r+1];if(zA(n)&&\"none\"!==n.value){var s=B&&VA(B)?B.number:0;e.push({counter:n.value,reset:s})}}return e}},sn={name:\"quotes\",initialValue:\"none\",prefix:!0,type:Ce.LIST,parse:function(A){if(0===A.length)return null;var e=A[0];if(e.type===sA.IDENT_TOKEN&&\"none\"===e.value)return null;var t=[],r=A.filter(XA);if(r.length%2!=0)return null;for(var n=0;n<r.length;n+=2){var B=r[n].value,s=r[n+1].value;t.push({open:B,close:s})}return t}},on={name:\"box-shadow\",initialValue:\"none\",type:Ce.LIST,prefix:!1,parse:function(A){return 1===A.length&&JA(A[0],\"none\")?[]:WA(A).map(function(A){for(var e={color:255,offsetX:se,offsetY:se,blur:se,spread:se,inset:!1},t=0,r=0;r<A.length;r++){var n=A[r];JA(n,\"inset\")?e.inset=!0:YA(n)?(0===t?e.offsetX=n:1===t?e.offsetY=n:2===t?e.blur=n:e.spread=n,t++):e.color=we(n)}return e})}},an=(cn.prototype.isVisible=function(){return 0<this.display&&0<this.opacity&&this.visibility===Lr.VISIBLE},cn.prototype.isTransparent=function(){return ee(this.backgroundColor)},cn.prototype.isTransformed=function(){return null!==this.transform},cn.prototype.isPositioned=function(){return this.position!==pr.STATIC},cn.prototype.isPositionedWithZIndex=function(){return this.isPositioned()&&!this.zIndex.auto},cn.prototype.isFloating=function(){return this.float!==Dt.NONE},cn.prototype.isInlineLevel=function(){return An(this.display,4)||An(this.display,33554432)||An(this.display,268435456)||An(this.display,536870912)||An(this.display,67108864)||An(this.display,134217728)},cn);function cn(A){this.backgroundClip=Un(me,A.backgroundClip),this.backgroundColor=Un(Re,A.backgroundColor),this.backgroundImage=Un(Qt,A.backgroundImage),this.backgroundOrigin=Un(wt,A.backgroundOrigin),this.backgroundPosition=Un(ut,A.backgroundPosition),this.backgroundRepeat=Un(Ct,A.backgroundRepeat),this.backgroundSize=Un(dt,A.backgroundSize),this.borderTopColor=Un(pt,A.borderTopColor),this.borderRightColor=Un(Nt,A.borderRightColor),this.borderBottomColor=Un(Kt,A.borderBottomColor),this.borderLeftColor=Un(It,A.borderLeftColor),this.borderTopLeftRadius=Un(Tt,A.borderTopLeftRadius),this.borderTopRightRadius=Un(mt,A.borderTopRightRadius),this.borderBottomRightRadius=Un(Rt,A.borderBottomRightRadius),this.borderBottomLeftRadius=Un(Lt,A.borderBottomLeftRadius),this.borderTopStyle=Un(St,A.borderTopStyle),this.borderRightStyle=Un(Mt,A.borderRightStyle),this.borderBottomStyle=Un(yt,A.borderBottomStyle),this.borderLeftStyle=Un(_t,A.borderLeftStyle),this.borderTopWidth=Un(Pt,A.borderTopWidth),this.borderRightWidth=Un(xt,A.borderRightWidth),this.borderBottomWidth=Un(Vt,A.borderBottomWidth),this.borderLeftWidth=Un(zt,A.borderLeftWidth),this.boxShadow=Un(on,A.boxShadow),this.color=Un(Xt,A.color),this.display=Un(Jt,A.display),this.float=Un(Zt,A.cssFloat),this.fontFamily=Un(Yr,A.fontFamily),this.fontSize=Un(Zr,A.fontSize),this.fontStyle=Un(tn,A.fontStyle),this.fontVariant=Un($r,A.fontVariant),this.fontWeight=Un(jr,A.fontWeight),this.letterSpacing=Un(jt,A.letterSpacing),this.lineBreak=Un($t,A.lineBreak),this.lineHeight=Un(Ar,A.lineHeight),this.listStyleImage=Un(er,A.listStyleImage),this.listStylePosition=Un(nr,A.listStylePosition),this.listStyleType=Un(ir,A.listStyleType),this.marginTop=Un(ar,A.marginTop),this.marginRight=Un(cr,A.marginRight),this.marginBottom=Un(Qr,A.marginBottom),this.marginLeft=Un(wr,A.marginLeft),this.opacity=Un(Gr,A.opacity);var e=Un(Er,A.overflow);this.overflowX=e[0],this.overflowY=e[1<e.length?1:0],this.overflowWrap=Un(Fr,A.overflowWrap),this.paddingTop=Un(hr,A.paddingTop),this.paddingRight=Un(Hr,A.paddingRight),this.paddingBottom=Un(dr,A.paddingBottom),this.paddingLeft=Un(fr,A.paddingLeft),this.position=Un(mr,A.position),this.textAlign=Un(Kr,A.textAlign),this.textDecorationColor=Un(kr,A.textDecorationColor||A.color),this.textDecorationLine=Un(Wr,A.textDecorationLine),this.textShadow=Un(Rr,A.textShadow),this.textTransform=Un(Or,A.textTransform),this.transform=Un(Dr,A.transform),this.transformOrigin=Un(yr,A.transformOrigin),this.visibility=Un(xr,A.visibility),this.wordBreak=Un(Xr,A.wordBreak),this.zIndex=Un(Jr,A.zIndex)}var Qn,wn=function(A){this.content=Un(rn,A.content),this.quotes=Un(sn,A.quotes)},un=function(A){this.counterIncrement=Un(nn,A.counterIncrement),this.counterReset=Un(Bn,A.counterReset)},Un=function(A,e){var t=new MA,r=null!=e?e.toString():A.initialValue;t.write(r);var n=new _A(t.read());switch(A.type){case Ce.IDENT_VALUE:var B=n.parseComponentValue();return A.parse(zA(B)?B.value:A.initialValue);case Ce.VALUE:return A.parse(n.parseComponentValue());case Ce.LIST:return A.parse(n.parseComponentValues());case Ce.TOKEN_VALUE:return n.parseComponentValue();case Ce.TYPE_VALUE:switch(A.format){case\"angle\":return ce(n.parseComponentValue());case\"color\":return we(n.parseComponentValue());case\"image\":return ot(n.parseComponentValue());case\"length\":var s=n.parseComponentValue();return YA(s)?s:se;case\"length-percentage\":var o=n.parseComponentValue();return qA(o)?o:se}}throw new Error(\"Attempting to parse unsupported css format type \"+A.format)},ln=function(A){this.styles=new an(window.getComputedStyle(A,null)),this.textNodes=[],this.elements=[],null!==this.styles.transform&&uB(A)&&(A.style.transform=\"none\"),this.bounds=T(A),this.flags=0},Cn=function(A,e){this.text=A,this.bounds=e},gn=function(A){var e=A.ownerDocument;if(e){var t=e.createElement(\"html2canvaswrapper\");t.appendChild(A.cloneNode(!0));var r=A.parentNode;if(r){r.replaceChild(t,A);var n=T(t);return t.firstChild&&r.replaceChild(t.firstChild,t),n}}return new I(0,0,0,0)},En=function(A,e,t){var r=A.ownerDocument;if(!r)throw new Error(\"Node has no owner document\");var n=r.createRange();return n.setStart(A,e),n.setEnd(A,e+t),I.fromClientRect(n.getBoundingClientRect())},Fn=function(A,e){return 0!==e.letterSpacing?c(A).map(function(A){return l(A)}):hn(A,e)},hn=function(A,e){for(var t,r=function(A,e){var t=c(A),r=u(t,e),n=r[0],B=r[1],s=r[2],o=t.length,i=0,a=0;return{next:function(){if(o<=a)return{done:!0,value:null};for(var A=Y;a<o&&(A=w(t,B,n,++a,s))===Y;);if(A===Y&&a!==o)return{done:!0,value:null};var e=new nA(t,A,i,a);return i=a,{value:e,done:!1}}}}(A,{lineBreak:e.lineBreak,wordBreak:e.overflowWrap===Ur.BREAK_WORD?\"break-word\":e.wordBreak}),n=[];!(t=r.next()).done;)t.value&&n.push(t.value.slice());return n},Hn=function(A,e){this.text=dn(A.data,e.textTransform),this.textBounds=function(A,t,r){var e=Fn(A,t),n=[],B=0;return e.forEach(function(A){if(t.textDecorationLine.length||0<A.trim().length)if(Oe.SUPPORT_RANGE_BOUNDS)n.push(new Cn(A,En(r,B,A.length)));else{var e=r.splitText(A.length);n.push(new Cn(A,gn(r))),r=e}else Oe.SUPPORT_RANGE_BOUNDS||(r=r.splitText(A.length));B+=A.length}),n}(this.text,e,A)},dn=function(A,e){switch(e){case Ir.LOWERCASE:return A.toLowerCase();case Ir.CAPITALIZE:return A.replace(fn,pn);case Ir.UPPERCASE:return A.toUpperCase();default:return A}},fn=/(^|\\s|:|-|\\(|\\))([a-z])/g,pn=function(A,e,t){return 0<A.length?e+t.toUpperCase():A},Nn=(A(Kn,Qn=ln),Kn);function Kn(A){var e=Qn.call(this,A)||this;return e.src=A.currentSrc||A.src,e.intrinsicWidth=A.naturalWidth,e.intrinsicHeight=A.naturalHeight,Se.getInstance().addImage(e.src),e}var In,Tn=(A(mn,In=ln),mn);function mn(A){var e=In.call(this,A)||this;return e.canvas=A,e.intrinsicWidth=A.width,e.intrinsicHeight=A.height,e}var Rn,Ln=(A(vn,Rn=ln),vn);function vn(A){var e=Rn.call(this,A)||this,t=new XMLSerializer;return e.svg=\"data:image/svg+xml,\"+encodeURIComponent(t.serializeToString(A)),e.intrinsicWidth=A.width.baseVal.value,e.intrinsicHeight=A.height.baseVal.value,Se.getInstance().addImage(e.svg),e}var On,Dn=(A(bn,On=ln),bn);function bn(A){var e=On.call(this,A)||this;return e.value=A.value,e}var Sn,Mn=(A(yn,Sn=ln),yn);function yn(A){var e=Sn.call(this,A)||this;return e.start=A.start,e.reversed=\"boolean\"==typeof A.reversed&&!0===A.reversed,e}var _n,Pn=[{type:sA.DIMENSION_TOKEN,flags:0,unit:\"px\",number:3}],xn=[{type:sA.PERCENTAGE_TOKEN,flags:0,number:50}],Vn=\"checkbox\",zn=\"radio\",Xn=\"password\",Jn=707406591,Gn=(A(kn,_n=ln),kn);function kn(A){var e=_n.call(this,A)||this;switch(e.type=A.type.toLowerCase(),e.checked=A.checked,e.value=function(A){var e=A.type===Xn?new Array(A.value.length+1).join(\"\u2022\"):A.value;return 0===e.length?A.placeholder||\"\":e}(A),e.type!==Vn&&e.type!==zn||(e.styles.backgroundColor=3739148031,e.styles.borderTopColor=e.styles.borderRightColor=e.styles.borderBottomColor=e.styles.borderLeftColor=2779096575,e.styles.borderTopWidth=e.styles.borderRightWidth=e.styles.borderBottomWidth=e.styles.borderLeftWidth=1,e.styles.borderTopStyle=e.styles.borderRightStyle=e.styles.borderBottomStyle=e.styles.borderLeftStyle=ht.SOLID,e.styles.backgroundClip=[Ee.BORDER_BOX],e.styles.backgroundOrigin=[0],e.bounds=function(A){return A.width>A.height?new I(A.left+(A.width-A.height)/2,A.top,A.height,A.height):A.width<A.height?new I(A.left,A.top+(A.height-A.width)/2,A.width,A.width):A}(e.bounds)),e.type){case Vn:e.styles.borderTopRightRadius=e.styles.borderTopLeftRadius=e.styles.borderBottomRightRadius=e.styles.borderBottomLeftRadius=Pn;break;case zn:e.styles.borderTopRightRadius=e.styles.borderTopLeftRadius=e.styles.borderBottomRightRadius=e.styles.borderBottomLeftRadius=xn}return e}var Wn,Yn=(A(qn,Wn=ln),qn);function qn(A){var e=Wn.call(this,A)||this,t=A.options[A.selectedIndex||0];return e.value=t&&t.text||\"\",e}var Zn,jn=(A($n,Zn=ln),$n);function $n(A){var e=Zn.call(this,A)||this;return e.value=A.value,e}function AB(A){return we(_A.create(A).parseComponentValue())}var eB,tB=(A(rB,eB=ln),rB);function rB(A){var e=eB.call(this,A)||this;e.src=A.src,e.width=parseInt(A.width,10)||0,e.height=parseInt(A.height,10)||0,e.backgroundColor=e.styles.backgroundColor;try{if(A.contentWindow&&A.contentWindow.document&&A.contentWindow.document.documentElement){e.tree=iB(A.contentWindow.document.documentElement);var t=A.contentWindow.document.documentElement?AB(getComputedStyle(A.contentWindow.document.documentElement).backgroundColor):He.TRANSPARENT,r=A.contentWindow.document.body?AB(getComputedStyle(A.contentWindow.document.body).backgroundColor):He.TRANSPARENT;e.backgroundColor=ee(t)?ee(r)?e.styles.backgroundColor:r:t}}catch(A){}return e}function nB(A){return\"STYLE\"===A.tagName}var BB=[\"OL\",\"UL\",\"MENU\"],sB=function(A,e,t){for(var r=A.firstChild,n=void 0;r;r=n)if(n=r.nextSibling,QB(r)&&0<r.data.trim().length)e.textNodes.push(new Hn(r,e.styles));else if(wB(r)){var B=oB(r);B.styles.isVisible()&&(aB(r,B,t)?B.flags|=4:cB(B.styles)&&(B.flags|=2),-1!==BB.indexOf(r.tagName)&&(B.flags|=8),e.elements.push(B),dB(r)||gB(r)||fB(r)||sB(r,B,t))}},oB=function(A){return hB(A)?new Nn(A):FB(A)?new Tn(A):gB(A)?new Ln(A):UB(A)?new Dn(A):lB(A)?new Mn(A):CB(A)?new Gn(A):fB(A)?new Yn(A):dB(A)?new jn(A):HB(A)?new tB(A):new ln(A)},iB=function(A){var e=oB(A);return e.flags|=4,sB(A,e,e),e},aB=function(A,e,t){return e.styles.isPositionedWithZIndex()||e.styles.opacity<1||e.styles.isTransformed()||EB(A)&&t.styles.isTransparent()},cB=function(A){return A.isPositioned()||A.isFloating()},QB=function(A){return A.nodeType===Node.TEXT_NODE},wB=function(A){return A.nodeType===Node.ELEMENT_NODE},uB=function(A){return void 0!==A.style},UB=function(A){return\"LI\"===A.tagName},lB=function(A){return\"OL\"===A.tagName},CB=function(A){return\"INPUT\"===A.tagName},gB=function(A){return\"svg\"===A.tagName},EB=function(A){return\"BODY\"===A.tagName},FB=function(A){return\"CANVAS\"===A.tagName},hB=function(A){return\"IMG\"===A.tagName},HB=function(A){return\"IFRAME\"===A.tagName},dB=function(A){return\"TEXTAREA\"===A.tagName},fB=function(A){return\"SELECT\"===A.tagName},pB=(NB.prototype.getCounterValue=function(A){var e=this.counters[A];return e&&e.length?e[e.length-1]:1},NB.prototype.getCounterValues=function(A){var e=this.counters[A];return e||[]},NB.prototype.pop=function(A){var e=this;A.forEach(function(A){return e.counters[A].pop()})},NB.prototype.parse=function(A){var t=this,e=A.counterIncrement,r=A.counterReset,n=!0;null!==e&&e.forEach(function(A){var e=t.counters[A.counter];e&&0!==A.increment&&(n=!1,e[Math.max(0,e.length-1)]+=A.increment)});var B=[];return n&&r.forEach(function(A){var e=t.counters[A.counter];B.push(A.counter),e||(e=t.counters[A.counter]=[]),e.push(A.reset)}),B},NB);function NB(){this.counters={}}function KB(r,A,e,n,t,B){return r<A||e<r?yB(r,t,0<B.length):n.integers.reduce(function(A,e,t){for(;e<=r;)r-=e,A+=n.values[t];return A},\"\")+B}function IB(A,e,t,r){for(var n=\"\";t||A--,n=r(A)+n,e<=(A/=e)*e;);return n}function TB(A,e,t,r,n){var B=t-e+1;return(A<0?\"-\":\"\")+(IB(Math.abs(A),B,r,function(A){return l(Math.floor(A%B)+e)})+n)}function mB(A,e,t){void 0===t&&(t=\". \");var r=e.length;return IB(Math.abs(A),r,!1,function(A){return e[Math.floor(A%r)]})+t}function RB(A,e,t,r,n,B){if(A<-9999||9999<A)return yB(A,tr.CJK_DECIMAL,0<n.length);var s=Math.abs(A),o=n;if(0===s)return e[0]+o;for(var i=0;0<s&&i<=4;i++){var a=s%10;0==a&&An(B,1)&&\"\"!==o?o=e[a]+o:1<a||1==a&&0===i||1==a&&1===i&&An(B,2)||1==a&&1===i&&An(B,4)&&100<A||1==a&&1<i&&An(B,8)?o=e[a]+(0<i?t[i-1]:\"\")+o:1==a&&0<i&&(o=t[i-1]+o),s=Math.floor(s/10)}return(A<0?r:\"\")+o}var LB,vB,OB={integers:[1e3,900,500,400,100,90,50,40,10,9,5,4,1],values:[\"M\",\"CM\",\"D\",\"CD\",\"C\",\"XC\",\"L\",\"XL\",\"X\",\"IX\",\"V\",\"IV\",\"I\"]},DB={integers:[9e3,8e3,7e3,6e3,5e3,4e3,3e3,2e3,1e3,900,800,700,600,500,400,300,200,100,90,80,70,60,50,40,30,20,10,9,8,7,6,5,4,3,2,1],values:[\"\u0554\",\"\u0553\",\"\u0552\",\"\u0551\",\"\u0550\",\"\u054f\",\"\u054e\",\"\u054d\",\"\u054c\",\"\u054b\",\"\u054a\",\"\u0549\",\"\u0548\",\"\u0547\",\"\u0546\",\"\u0545\",\"\u0544\",\"\u0543\",\"\u0542\",\"\u0541\",\"\u0540\",\"\u053f\",\"\u053e\",\"\u053d\",\"\u053c\",\"\u053b\",\"\u053a\",\"\u0539\",\"\u0538\",\"\u0537\",\"\u0536\",\"\u0535\",\"\u0534\",\"\u0533\",\"\u0532\",\"\u0531\"]},bB={integers:[1e4,9e3,8e3,7e3,6e3,5e3,4e3,3e3,2e3,1e3,400,300,200,100,90,80,70,60,50,40,30,20,19,18,17,16,15,10,9,8,7,6,5,4,3,2,1],values:[\"\u05d9\u05f3\",\"\u05d8\u05f3\",\"\u05d7\u05f3\",\"\u05d6\u05f3\",\"\u05d5\u05f3\",\"\u05d4\u05f3\",\"\u05d3\u05f3\",\"\u05d2\u05f3\",\"\u05d1\u05f3\",\"\u05d0\u05f3\",\"\u05ea\",\"\u05e9\",\"\u05e8\",\"\u05e7\",\"\u05e6\",\"\u05e4\",\"\u05e2\",\"\u05e1\",\"\u05e0\",\"\u05de\",\"\u05dc\",\"\u05db\",\"\u05d9\u05d8\",\"\u05d9\u05d7\",\"\u05d9\u05d6\",\"\u05d8\u05d6\",\"\u05d8\u05d5\",\"\u05d9\",\"\u05d8\",\"\u05d7\",\"\u05d6\",\"\u05d5\",\"\u05d4\",\"\u05d3\",\"\u05d2\",\"\u05d1\",\"\u05d0\"]},SB={integers:[1e4,9e3,8e3,7e3,6e3,5e3,4e3,3e3,2e3,1e3,900,800,700,600,500,400,300,200,100,90,80,70,60,50,40,30,20,10,9,8,7,6,5,4,3,2,1],values:[\"\u10f5\",\"\u10f0\",\"\u10ef\",\"\u10f4\",\"\u10ee\",\"\u10ed\",\"\u10ec\",\"\u10eb\",\"\u10ea\",\"\u10e9\",\"\u10e8\",\"\u10e7\",\"\u10e6\",\"\u10e5\",\"\u10e4\",\"\u10f3\",\"\u10e2\",\"\u10e1\",\"\u10e0\",\"\u10df\",\"\u10de\",\"\u10dd\",\"\u10f2\",\"\u10dc\",\"\u10db\",\"\u10da\",\"\u10d9\",\"\u10d8\",\"\u10d7\",\"\u10f1\",\"\u10d6\",\"\u10d5\",\"\u10d4\",\"\u10d3\",\"\u10d2\",\"\u10d1\",\"\u10d0\"]},MB=\"\ub9c8\uc774\ub108\uc2a4\",yB=function(A,e,t){var r=t?\". \":\"\",n=t?\"\u3001\":\"\",B=t?\", \":\"\",s=t?\" \":\"\";switch(e){case tr.DISC:return\"\u2022\"+s;case tr.CIRCLE:return\"\u25e6\"+s;case tr.SQUARE:return\"\u25fe\"+s;case tr.DECIMAL_LEADING_ZERO:var o=TB(A,48,57,!0,r);return o.length<4?\"0\"+o:o;case tr.CJK_DECIMAL:return mB(A,\"\u3007\u4e00\u4e8c\u4e09\u56db\u4e94\u516d\u4e03\u516b\u4e5d\",n);case tr.LOWER_ROMAN:return KB(A,1,3999,OB,tr.DECIMAL,r).toLowerCase();case tr.UPPER_ROMAN:return KB(A,1,3999,OB,tr.DECIMAL,r);case tr.LOWER_GREEK:return TB(A,945,969,!1,r);case tr.LOWER_ALPHA:return TB(A,97,122,!1,r);case tr.UPPER_ALPHA:return TB(A,65,90,!1,r);case tr.ARABIC_INDIC:return TB(A,1632,1641,!0,r);case tr.ARMENIAN:case tr.UPPER_ARMENIAN:return KB(A,1,9999,DB,tr.DECIMAL,r);case tr.LOWER_ARMENIAN:return KB(A,1,9999,DB,tr.DECIMAL,r).toLowerCase();case tr.BENGALI:return TB(A,2534,2543,!0,r);case tr.CAMBODIAN:case tr.KHMER:return TB(A,6112,6121,!0,r);case tr.CJK_EARTHLY_BRANCH:return mB(A,\"\u5b50\u4e11\u5bc5\u536f\u8fb0\u5df3\u5348\u672a\u7533\u9149\u620c\u4ea5\",n);case tr.CJK_HEAVENLY_STEM:return mB(A,\"\u7532\u4e59\u4e19\u4e01\u620a\u5df1\u5e9a\u8f9b\u58ec\u7678\",n);case tr.CJK_IDEOGRAPHIC:case tr.TRAD_CHINESE_INFORMAL:return RB(A,\"\u96f6\u4e00\u4e8c\u4e09\u56db\u4e94\u516d\u4e03\u516b\u4e5d\",\"\u5341\u767e\u5343\u842c\",\"\u8ca0\",n,14);case tr.TRAD_CHINESE_FORMAL:return RB(A,\"\u96f6\u58f9\u8cb3\u53c3\u8086\u4f0d\u9678\u67d2\u634c\u7396\",\"\u62fe\u4f70\u4edf\u842c\",\"\u8ca0\",n,15);case tr.SIMP_CHINESE_INFORMAL:return RB(A,\"\u96f6\u4e00\u4e8c\u4e09\u56db\u4e94\u516d\u4e03\u516b\u4e5d\",\"\u5341\u767e\u5343\u842c\",\"\u8d1f\",n,14);case tr.SIMP_CHINESE_FORMAL:return RB(A,\"\u96f6\u58f9\u8d30\u53c1\u8086\u4f0d\u9646\u67d2\u634c\u7396\",\"\u62fe\u4f70\u4edf\u842c\",\"\u8d1f\",n,15);case tr.JAPANESE_INFORMAL:return RB(A,\"\u3007\u4e00\u4e8c\u4e09\u56db\u4e94\u516d\u4e03\u516b\u4e5d\",\"\u5341\u767e\u5343\u4e07\",\"\u30de\u30a4\u30ca\u30b9\",n,0);case tr.JAPANESE_FORMAL:return RB(A,\"\u96f6\u58f1\u5f10\u53c2\u56db\u4f0d\u516d\u4e03\u516b\u4e5d\",\"\u62fe\u767e\u5343\u4e07\",\"\u30de\u30a4\u30ca\u30b9\",n,7);case tr.KOREAN_HANGUL_FORMAL:return RB(A,\"\uc601\uc77c\uc774\uc0bc\uc0ac\uc624\uc721\uce60\ud314\uad6c\",\"\uc2ed\ubc31\ucc9c\ub9cc\",MB,B,7);case tr.KOREAN_HANJA_INFORMAL:return RB(A,\"\u96f6\u4e00\u4e8c\u4e09\u56db\u4e94\u516d\u4e03\u516b\u4e5d\",\"\u5341\u767e\u5343\u842c\",MB,B,0);case tr.KOREAN_HANJA_FORMAL:return RB(A,\"\u96f6\u58f9\u8cb3\u53c3\u56db\u4e94\u516d\u4e03\u516b\u4e5d\",\"\u62fe\u767e\u5343\",MB,B,7);case tr.DEVANAGARI:return TB(A,2406,2415,!0,r);case tr.GEORGIAN:return KB(A,1,19999,SB,tr.DECIMAL,r);case tr.GUJARATI:return TB(A,2790,2799,!0,r);case tr.GURMUKHI:return TB(A,2662,2671,!0,r);case tr.HEBREW:return KB(A,1,10999,bB,tr.DECIMAL,r);case tr.HIRAGANA:return mB(A,\"\u3042\u3044\u3046\u3048\u304a\u304b\u304d\u304f\u3051\u3053\u3055\u3057\u3059\u305b\u305d\u305f\u3061\u3064\u3066\u3068\u306a\u306b\u306c\u306d\u306e\u306f\u3072\u3075\u3078\u307b\u307e\u307f\u3080\u3081\u3082\u3084\u3086\u3088\u3089\u308a\u308b\u308c\u308d\u308f\u3090\u3091\u3092\u3093\");case tr.HIRAGANA_IROHA:return mB(A,\"\u3044\u308d\u306f\u306b\u307b\u3078\u3068\u3061\u308a\u306c\u308b\u3092\u308f\u304b\u3088\u305f\u308c\u305d\u3064\u306d\u306a\u3089\u3080\u3046\u3090\u306e\u304a\u304f\u3084\u307e\u3051\u3075\u3053\u3048\u3066\u3042\u3055\u304d\u3086\u3081\u307f\u3057\u3091\u3072\u3082\u305b\u3059\");case tr.KANNADA:return TB(A,3302,3311,!0,r);case tr.KATAKANA:return mB(A,\"\u30a2\u30a4\u30a6\u30a8\u30aa\u30ab\u30ad\u30af\u30b1\u30b3\u30b5\u30b7\u30b9\u30bb\u30bd\u30bf\u30c1\u30c4\u30c6\u30c8\u30ca\u30cb\u30cc\u30cd\u30ce\u30cf\u30d2\u30d5\u30d8\u30db\u30de\u30df\u30e0\u30e1\u30e2\u30e4\u30e6\u30e8\u30e9\u30ea\u30eb\u30ec\u30ed\u30ef\u30f0\u30f1\u30f2\u30f3\",n);case tr.KATAKANA_IROHA:return mB(A,\"\u30a4\u30ed\u30cf\u30cb\u30db\u30d8\u30c8\u30c1\u30ea\u30cc\u30eb\u30f2\u30ef\u30ab\u30e8\u30bf\u30ec\u30bd\u30c4\u30cd\u30ca\u30e9\u30e0\u30a6\u30f0\u30ce\u30aa\u30af\u30e4\u30de\u30b1\u30d5\u30b3\u30a8\u30c6\u30a2\u30b5\u30ad\u30e6\u30e1\u30df\u30b7\u30f1\u30d2\u30e2\u30bb\u30b9\",n);case tr.LAO:return TB(A,3792,3801,!0,r);case tr.MONGOLIAN:return TB(A,6160,6169,!0,r);case tr.MYANMAR:return TB(A,4160,4169,!0,r);case tr.ORIYA:return TB(A,2918,2927,!0,r);case tr.PERSIAN:return TB(A,1776,1785,!0,r);case tr.TAMIL:return TB(A,3046,3055,!0,r);case tr.TELUGU:return TB(A,3174,3183,!0,r);case tr.THAI:return TB(A,3664,3673,!0,r);case tr.TIBETAN:return TB(A,3872,3881,!0,r);case tr.DECIMAL:default:return TB(A,48,57,!0,r)}},_B=\"data-html2canvas-ignore\",PB=(xB.prototype.toIFrame=function(A,t){var e=this,r=XB(A,t);if(!r.contentWindow)return Promise.reject(\"Unable to find iframe window\");var n=A.defaultView.pageXOffset,B=A.defaultView.pageYOffset,s=r.contentWindow,o=s.document,i=JB(r).then(function(){return a(e,void 0,void 0,function(){var e;return S(this,function(A){switch(A.label){case 0:return this.scrolledElements.forEach(YB),s&&(s.scrollTo(t.left,t.top),!/(iPad|iPhone|iPod)/g.test(navigator.userAgent)||s.scrollY===t.top&&s.scrollX===t.left||(o.documentElement.style.top=-t.top+\"px\",o.documentElement.style.left=-t.left+\"px\",o.documentElement.style.position=\"absolute\")),e=this.options.onclone,void 0===this.clonedReferenceElement?[2,Promise.reject(\"Error finding the \"+this.referenceElement.nodeName+\" in the cloned document\")]:o.fonts&&o.fonts.ready?[4,o.fonts.ready]:[3,2];case 1:A.sent(),A.label=2;case 2:return\"function\"==typeof e?[2,Promise.resolve().then(function(){return e(o)}).then(function(){return r})]:[2,r]}})})});return o.open(),o.write(kB(document.doctype)+\"<html></html>\"),WB(this.referenceElement.ownerDocument,n,B),o.replaceChild(o.adoptNode(this.documentElement),o.documentElement),o.close(),i},xB.prototype.createElementClone=function(A){return FB(A)?this.createCanvasClone(A):nB(A)?this.createStyleClone(A):A.cloneNode(!1)},xB.prototype.createStyleClone=function(A){try{var e=A.sheet;if(e&&e.cssRules){var t=[].slice.call(e.cssRules,0).reduce(function(A,e){return e&&\"string\"==typeof e.cssText?A+e.cssText:A},\"\"),r=A.cloneNode(!1);return r.textContent=t,r}}catch(A){if(De.getInstance(this.options.id).error(\"Unable to access cssRules property\",A),\"SecurityError\"!==A.name)throw A}return A.cloneNode(!1)},xB.prototype.createCanvasClone=function(A){if(this.options.inlineImages&&A.ownerDocument){var e=A.ownerDocument.createElement(\"img\");try{return e.src=A.toDataURL(),e}catch(A){De.getInstance(this.options.id).info(\"Unable to clone canvas contents, canvas is tainted\")}}var t=A.cloneNode(!1);try{t.width=A.width,t.height=A.height;var r=A.getContext(\"2d\"),n=t.getContext(\"2d\");return n&&(r?n.putImageData(r.getImageData(0,0,A.width,A.height),0,0):n.drawImage(A,0,0)),t}catch(A){}return t},xB.prototype.cloneNode=function(A){if(QB(A))return document.createTextNode(A.data);if(!A.ownerDocument)return A.cloneNode(!1);var e=A.ownerDocument.defaultView;if(uB(A)&&e){var t=this.createElementClone(A),r=e.getComputedStyle(A),n=e.getComputedStyle(A,\":before\"),B=e.getComputedStyle(A,\":after\");this.referenceElement===A&&(this.clonedReferenceElement=t),EB(t)&&$B(t);for(var s=this.counters.parse(new un(r)),o=this.resolvePseudoContent(A,t,n,LB.BEFORE),i=A.firstChild;i;i=i.nextSibling)wB(i)&&(\"SCRIPT\"===i.tagName||i.hasAttribute(_B)||\"function\"==typeof this.options.ignoreElements&&this.options.ignoreElements(i))||this.options.copyStyles&&wB(i)&&nB(i)||t.appendChild(this.cloneNode(i));o&&t.insertBefore(o,t.firstChild);var a=this.resolvePseudoContent(A,t,B,LB.AFTER);return a&&t.appendChild(a),this.counters.pop(s),r&&this.options.copyStyles&&!HB(A)&&GB(r,t),0===A.scrollTop&&0===A.scrollLeft||this.scrolledElements.push([t,A.scrollLeft,A.scrollTop]),(dB(A)||fB(A))&&(dB(t)||fB(t))&&(t.value=A.value),t}return A.cloneNode(!1)},xB.prototype.resolvePseudoContent=function(U,A,e,t){var l=this;if(e){var r=e.content,C=A.ownerDocument;if(C&&r&&\"none\"!==r&&\"-moz-alt-content\"!==r&&\"none\"!==e.display){this.counters.parse(new un(e));var g=new wn(e),E=C.createElement(\"html2canvaspseudoelement\");GB(e,E),g.content.forEach(function(A){if(A.type===sA.STRING_TOKEN)E.appendChild(C.createTextNode(A.value));else if(A.type===sA.URL_TOKEN){var e=C.createElement(\"img\");e.src=A.value,e.style.opacity=\"1\",E.appendChild(e)}else if(A.type===sA.FUNCTION){if(\"attr\"===A.name){var t=A.values.filter(zA);t.length&&E.appendChild(C.createTextNode(U.getAttribute(t[0].value)||\"\"))}else if(\"counter\"===A.name){var r=A.values.filter(kA),n=r[0],B=r[1];if(n&&zA(n)){var s=l.counters.getCounterValue(n.value),o=B&&zA(B)?ir.parse(B.value):tr.DECIMAL;E.appendChild(C.createTextNode(yB(s,o,!1)))}}else if(\"counters\"===A.name){var i=A.values.filter(kA),a=(n=i[0],i[1]);if(B=i[2],n&&zA(n)){var c=l.counters.getCounterValues(n.value),Q=B&&zA(B)?ir.parse(B.value):tr.DECIMAL,w=a&&a.type===sA.STRING_TOKEN?a.value:\"\",u=c.map(function(A){return yB(A,Q,!1)}).join(w);E.appendChild(C.createTextNode(u))}}}else if(A.type===sA.IDENT_TOKEN)switch(A.value){case\"open-quote\":E.appendChild(C.createTextNode(en(g.quotes,l.quoteDepth++,!0)));break;case\"close-quote\":E.appendChild(C.createTextNode(en(g.quotes,--l.quoteDepth,!1)));break;default:E.appendChild(C.createTextNode(A.value))}}),E.className=qB+\" \"+ZB;var n=t===LB.BEFORE?\" \"+qB:\" \"+ZB;return function(A){return\"object\"==typeof A.className}(A)?A.className.baseValue+=n:A.className+=n,E}}},xB.destroy=function(A){return!!A.parentNode&&(A.parentNode.removeChild(A),!0)},xB);function xB(A,e){if(this.options=e,this.scrolledElements=[],this.referenceElement=A,this.counters=new pB,this.quoteDepth=0,!A.ownerDocument)throw new Error(\"Cloned element does not have an owner document\");this.documentElement=this.cloneNode(A.ownerDocument.documentElement)}(vB=LB||(LB={}))[vB.BEFORE=0]=\"BEFORE\",vB[vB.AFTER=1]=\"AFTER\";var VB,zB,XB=function(A,e){var t=A.createElement(\"iframe\");return t.className=\"html2canvas-container\",t.style.visibility=\"hidden\",t.style.position=\"fixed\",t.style.left=\"-10000px\",t.style.top=\"0px\",t.style.border=\"0\",t.width=e.width.toString(),t.height=e.height.toString(),t.scrolling=\"no\",t.setAttribute(_B,\"true\"),A.body.appendChild(t),t},JB=function(n){return new Promise(function(e,A){var t=n.contentWindow;if(!t)return A(\"No window assigned for iframe\");var r=t.document;t.onload=n.onload=r.onreadystatechange=function(){t.onload=n.onload=r.onreadystatechange=null;var A=setInterval(function(){0<r.body.childNodes.length&&\"complete\"===r.readyState&&(clearInterval(A),e(n))},50)}})},GB=function(A,e){for(var t=A.length-1;0<=t;t--){var r=A.item(t);\"content\"!==r&&e.style.setProperty(r,A.getPropertyValue(r))}return e},kB=function(A){var e=\"\";return A&&(e+=\"<!DOCTYPE \",A.name&&(e+=A.name),A.internalSubset&&(e+=A.internalSubset),A.publicId&&(e+='\"'+A.publicId+'\"'),A.systemId&&(e+='\"'+A.systemId+'\"'),e+=\">\"),e},WB=function(A,e,t){A&&A.defaultView&&(e!==A.defaultView.pageXOffset||t!==A.defaultView.pageYOffset)&&A.defaultView.scrollTo(e,t)},YB=function(A){var e=A[0],t=A[1],r=A[2];e.scrollLeft=t,e.scrollTop=r},qB=\"___html2canvas___pseudoelement_before\",ZB=\"___html2canvas___pseudoelement_after\",jB='{\\n    content: \"\" !important;\\n    display: none !important;\\n}',$B=function(A){As(A,\".\"+qB+\":before\"+jB+\"\\n         .\"+ZB+\":after\"+jB)},As=function(A,e){var t=A.ownerDocument;if(t){var r=t.createElement(\"style\");r.textContent=e,A.appendChild(r)}};(zB=VB||(VB={}))[zB.VECTOR=0]=\"VECTOR\",zB[zB.BEZIER_CURVE=1]=\"BEZIER_CURVE\";function es(A,t){return A.length===t.length&&A.some(function(A,e){return A===t[e]})}var ts=(rs.prototype.add=function(A,e){return new rs(this.x+A,this.y+e)},rs);function rs(A,e){this.type=VB.VECTOR,this.x=A,this.y=e}function ns(A,e,t){return new ts(A.x+(e.x-A.x)*t,A.y+(e.y-A.y)*t)}var Bs=(ss.prototype.subdivide=function(A,e){var t=ns(this.start,this.startControl,A),r=ns(this.startControl,this.endControl,A),n=ns(this.endControl,this.end,A),B=ns(t,r,A),s=ns(r,n,A),o=ns(B,s,A);return e?new ss(this.start,t,B,o):new ss(o,s,n,this.end)},ss.prototype.add=function(A,e){return new ss(this.start.add(A,e),this.startControl.add(A,e),this.endControl.add(A,e),this.end.add(A,e))},ss.prototype.reverse=function(){return new ss(this.end,this.endControl,this.startControl,this.start)},ss);function ss(A,e,t,r){this.type=VB.BEZIER_CURVE,this.start=A,this.startControl=e,this.endControl=t,this.end=r}function os(A){return A.type===VB.BEZIER_CURVE}var is,as,cs=function(A){var e=A.styles,t=A.bounds,r=jA(e.borderTopLeftRadius,t.width,t.height),n=r[0],B=r[1],s=jA(e.borderTopRightRadius,t.width,t.height),o=s[0],i=s[1],a=jA(e.borderBottomRightRadius,t.width,t.height),c=a[0],Q=a[1],w=jA(e.borderBottomLeftRadius,t.width,t.height),u=w[0],U=w[1],l=[];l.push((n+o)/t.width),l.push((u+c)/t.width),l.push((B+U)/t.height),l.push((i+Q)/t.height);var C=Math.max.apply(Math,l);1<C&&(n/=C,B/=C,o/=C,i/=C,c/=C,Q/=C,u/=C,U/=C);var g=t.width-o,E=t.height-Q,F=t.width-c,h=t.height-U,H=e.borderTopWidth,d=e.borderRightWidth,f=e.borderBottomWidth,p=e.borderLeftWidth,N=ae(e.paddingTop,A.bounds.width),K=ae(e.paddingRight,A.bounds.width),I=ae(e.paddingBottom,A.bounds.width),T=ae(e.paddingLeft,A.bounds.width);this.topLeftBorderBox=0<n||0<B?us(t.left,t.top,n,B,is.TOP_LEFT):new ts(t.left,t.top),this.topRightBorderBox=0<o||0<i?us(t.left+g,t.top,o,i,is.TOP_RIGHT):new ts(t.left+t.width,t.top),this.bottomRightBorderBox=0<c||0<Q?us(t.left+F,t.top+E,c,Q,is.BOTTOM_RIGHT):new ts(t.left+t.width,t.top+t.height),this.bottomLeftBorderBox=0<u||0<U?us(t.left,t.top+h,u,U,is.BOTTOM_LEFT):new ts(t.left,t.top+t.height),this.topLeftPaddingBox=0<n||0<B?us(t.left+p,t.top+H,Math.max(0,n-p),Math.max(0,B-H),is.TOP_LEFT):new ts(t.left+p,t.top+H),this.topRightPaddingBox=0<o||0<i?us(t.left+Math.min(g,t.width+p),t.top+H,g>t.width+p?0:o-p,i-H,is.TOP_RIGHT):new ts(t.left+t.width-d,t.top+H),this.bottomRightPaddingBox=0<c||0<Q?us(t.left+Math.min(F,t.width-p),t.top+Math.min(E,t.height+H),Math.max(0,c-d),Q-f,is.BOTTOM_RIGHT):new ts(t.left+t.width-d,t.top+t.height-f),this.bottomLeftPaddingBox=0<u||0<U?us(t.left+p,t.top+h,Math.max(0,u-p),U-f,is.BOTTOM_LEFT):new ts(t.left+p,t.top+t.height-f),this.topLeftContentBox=0<n||0<B?us(t.left+p+T,t.top+H+N,Math.max(0,n-(p+T)),Math.max(0,B-(H+N)),is.TOP_LEFT):new ts(t.left+p+T,t.top+H+N),this.topRightContentBox=0<o||0<i?us(t.left+Math.min(g,t.width+p+T),t.top+H+N,g>t.width+p+T?0:o-p+T,i-(H+N),is.TOP_RIGHT):new ts(t.left+t.width-(d+K),t.top+H+N),this.bottomRightContentBox=0<c||0<Q?us(t.left+Math.min(F,t.width-(p+T)),t.top+Math.min(E,t.height+H+N),Math.max(0,c-(d+K)),Q-(f+I),is.BOTTOM_RIGHT):new ts(t.left+t.width-(d+K),t.top+t.height-(f+I)),this.bottomLeftContentBox=0<u||0<U?us(t.left+p+T,t.top+h,Math.max(0,u-(p+T)),U-(f+I),is.BOTTOM_LEFT):new ts(t.left+p+T,t.top+t.height-(f+I))};(as=is||(is={}))[as.TOP_LEFT=0]=\"TOP_LEFT\",as[as.TOP_RIGHT=1]=\"TOP_RIGHT\",as[as.BOTTOM_RIGHT=2]=\"BOTTOM_RIGHT\",as[as.BOTTOM_LEFT=3]=\"BOTTOM_LEFT\";function Qs(A){return[A.topLeftBorderBox,A.topRightBorderBox,A.bottomRightBorderBox,A.bottomLeftBorderBox]}function ws(A){return[A.topLeftPaddingBox,A.topRightPaddingBox,A.bottomRightPaddingBox,A.bottomLeftPaddingBox]}var us=function(A,e,t,r,n){var B=(Math.sqrt(2)-1)/3*4,s=t*B,o=r*B,i=A+t,a=e+r;switch(n){case is.TOP_LEFT:return new Bs(new ts(A,a),new ts(A,a-o),new ts(i-s,e),new ts(i,e));case is.TOP_RIGHT:return new Bs(new ts(A,e),new ts(A+s,e),new ts(i,a-o),new ts(i,a));case is.BOTTOM_RIGHT:return new Bs(new ts(i,e),new ts(i,e+o),new ts(A+s,a),new ts(A,a));case is.BOTTOM_LEFT:default:return new Bs(new ts(i,a),new ts(i-s,a),new ts(A,e+o),new ts(A,e))}},Us=function(A,e,t){this.type=0,this.offsetX=A,this.offsetY=e,this.matrix=t,this.target=6},ls=function(A,e){this.type=1,this.target=e,this.path=A},Cs=function(A){this.element=A,this.inlineLevel=[],this.nonInlineLevel=[],this.negativeZIndex=[],this.zeroOrAutoZIndexOrTransformedOrOpacity=[],this.positiveZIndex=[],this.nonPositionedFloats=[],this.nonPositionedInlineLevel=[]},gs=(Es.prototype.getParentEffects=function(){var A=this.effects.slice(0);if(this.container.styles.overflowX!==sr.VISIBLE){var e=Qs(this.curves),t=ws(this.curves);es(e,t)||A.push(new ls(t,6))}return A},Es);function Es(A,e){if(this.container=A,this.effects=e.slice(0),this.curves=new cs(A),null!==A.styles.transform){var t=A.bounds.left+A.styles.transformOrigin[0].number,r=A.bounds.top+A.styles.transformOrigin[1].number,n=A.styles.transform;this.effects.push(new Us(t,r,n))}if(A.styles.overflowX!==sr.VISIBLE){var B=Qs(this.curves),s=ws(this.curves);es(B,s)?this.effects.push(new ls(B,6)):(this.effects.push(new ls(B,2)),this.effects.push(new ls(s,4)))}}function Fs(A){var e=A.bounds,t=A.styles;return e.add(t.borderLeftWidth,t.borderTopWidth,-(t.borderRightWidth+t.borderLeftWidth),-(t.borderTopWidth+t.borderBottomWidth))}function hs(A){var e=A.styles,t=A.bounds,r=ae(e.paddingLeft,t.width),n=ae(e.paddingRight,t.width),B=ae(e.paddingTop,t.width),s=ae(e.paddingBottom,t.width);return t.add(r+e.borderLeftWidth,B+e.borderTopWidth,-(e.borderRightWidth+e.borderLeftWidth+r+n),-(e.borderTopWidth+e.borderBottomWidth+B+s))}function Hs(A,e,t){var r=function(A,e){return 0===A?e.bounds:2===A?hs(e):Fs(e)}(Ts(A.styles.backgroundOrigin,e),A),n=function(A,e){return A===Ee.BORDER_BOX?e.bounds:A===Ee.CONTENT_BOX?hs(e):Fs(e)}(Ts(A.styles.backgroundClip,e),A),B=Is(Ts(A.styles.backgroundSize,e),t,r),s=B[0],o=B[1],i=jA(Ts(A.styles.backgroundPosition,e),r.width-s,r.height-o);return[ms(Ts(A.styles.backgroundRepeat,e),i,B,r,n),Math.round(r.left+i[0]),Math.round(r.top+i[1]),s,o]}function ds(A){return zA(A)&&A.value===Ut.AUTO}function fs(A){return\"number\"==typeof A}var ps=function(c,Q,w,u){c.container.elements.forEach(function(A){var e=An(A.flags,4),t=An(A.flags,2),r=new gs(A,c.getParentEffects());An(A.styles.display,2048)&&u.push(r);var n=An(A.flags,8)?[]:u;if(e||t){var B=e||A.styles.isPositioned()?w:Q,s=new Cs(r);if(A.styles.isPositioned()||A.styles.opacity<1||A.styles.isTransformed()){var o=A.styles.zIndex.order;if(o<0){var i=0;B.negativeZIndex.some(function(A,e){return o>A.element.container.styles.zIndex.order?(i=e,!1):0<i}),B.negativeZIndex.splice(i,0,s)}else if(0<o){var a=0;B.positiveZIndex.some(function(A,e){return o>A.element.container.styles.zIndex.order?(a=e+1,!1):0<a}),B.positiveZIndex.splice(a,0,s)}else B.zeroOrAutoZIndexOrTransformedOrOpacity.push(s)}else A.styles.isFloating()?B.nonPositionedFloats.push(s):B.nonPositionedInlineLevel.push(s);ps(r,s,e?s:w,n)}else A.styles.isInlineLevel()?Q.inlineLevel.push(r):Q.nonInlineLevel.push(r),ps(r,Q,w,n);An(A.flags,8)&&Ns(A,n)})},Ns=function(A,e){for(var t=A instanceof Mn?A.start:1,r=A instanceof Mn&&A.reversed,n=0;n<e.length;n++){var B=e[n];B.container instanceof Dn&&\"number\"==typeof B.container.value&&0!==B.container.value&&(t=B.container.value),B.listValue=yB(t,B.container.styles.listStyleType,!0),t+=r?-1:1}},Ks=function(A,e,t,r){var n=[];return os(A)?n.push(A.subdivide(.5,!1)):n.push(A),os(t)?n.push(t.subdivide(.5,!0)):n.push(t),os(r)?n.push(r.subdivide(.5,!0).reverse()):n.push(r),os(e)?n.push(e.subdivide(.5,!1).reverse()):n.push(e),n},Is=function(A,e,t){var r=e[0],n=e[1],B=e[2],s=A[0],o=A[1];if(qA(s)&&o&&qA(o))return[ae(s,t.width),ae(o,t.height)];var i=fs(B);if(zA(s)&&(s.value===Ut.CONTAIN||s.value===Ut.COVER))return fs(B)?t.width/t.height<B!=(s.value===Ut.COVER)?[t.width,t.width/B]:[t.height*B,t.height]:[t.width,t.height];var a=fs(r),c=fs(n),Q=a||c;if(ds(s)&&(!o||ds(o)))return a&&c?[r,n]:i||Q?Q&&i?[a?r:n*B,c?n:r/B]:[a?r:t.width,c?n:t.height]:[t.width,t.height];if(i){var w=0,u=0;return qA(s)?w=ae(s,t.width):qA(o)&&(u=ae(o,t.height)),ds(s)?w=u*B:o&&!ds(o)||(u=w/B),[w,u]}var U=null,l=null;if(qA(s)?U=ae(s,t.width):o&&qA(o)&&(l=ae(o,t.height)),null===U||o&&!ds(o)||(l=a&&c?U/r*n:t.height),null!==l&&ds(s)&&(U=a&&c?l/n*r:t.width),null!==U&&null!==l)return[U,l];throw new Error(\"Unable to calculate background-size for element\")},Ts=function(A,e){var t=A[e];return void 0===t?A[0]:t},ms=function(A,e,t,r,n){var B=e[0],s=e[1],o=t[0],i=t[1];switch(A){case it.REPEAT_X:return[new ts(Math.round(r.left),Math.round(r.top+s)),new ts(Math.round(r.left+r.width),Math.round(r.top+s)),new ts(Math.round(r.left+r.width),Math.round(i+r.top+s)),new ts(Math.round(r.left),Math.round(i+r.top+s))];case it.REPEAT_Y:return[new ts(Math.round(r.left+B),Math.round(r.top)),new ts(Math.round(r.left+B+o),Math.round(r.top)),new ts(Math.round(r.left+B+o),Math.round(r.height+r.top)),new ts(Math.round(r.left+B),Math.round(r.height+r.top))];case it.NO_REPEAT:return[new ts(Math.round(r.left+B),Math.round(r.top+s)),new ts(Math.round(r.left+B+o),Math.round(r.top+s)),new ts(Math.round(r.left+B+o),Math.round(r.top+s+i)),new ts(Math.round(r.left+B),Math.round(r.top+s+i))];default:return[new ts(Math.round(n.left),Math.round(n.top)),new ts(Math.round(n.left+n.width),Math.round(n.top)),new ts(Math.round(n.left+n.width),Math.round(n.height+n.top)),new ts(Math.round(n.left),Math.round(n.height+n.top))]}},Rs=\"Hidden Text\",Ls=(vs.prototype.parseMetrics=function(A,e){var t=this._document.createElement(\"div\"),r=this._document.createElement(\"img\"),n=this._document.createElement(\"span\"),B=this._document.body;t.style.visibility=\"hidden\",t.style.fontFamily=A,t.style.fontSize=e,t.style.margin=\"0\",t.style.padding=\"0\",B.appendChild(t),r.src=\"data:image/gif;base64,R0lGODlhAQABAIAAAAAAAP///yH5BAEAAAAALAAAAAABAAEAAAIBRAA7\",r.width=1,r.height=1,r.style.margin=\"0\",r.style.padding=\"0\",r.style.verticalAlign=\"baseline\",n.style.fontFamily=A,n.style.fontSize=e,n.style.margin=\"0\",n.style.padding=\"0\",n.appendChild(this._document.createTextNode(Rs)),t.appendChild(n),t.appendChild(r);var s=r.offsetTop-n.offsetTop+2;t.removeChild(n),t.appendChild(this._document.createTextNode(Rs)),t.style.lineHeight=\"normal\",r.style.verticalAlign=\"super\";var o=r.offsetTop-t.offsetTop+2;return B.removeChild(t),{baseline:s,middle:o}},vs.prototype.getMetrics=function(A,e){var t=A+\" \"+e;return void 0===this._data[t]&&(this._data[t]=this.parseMetrics(A,e)),this._data[t]},vs);function vs(A){this._data={},this._document=A}var Os=(Ds.prototype.applyEffects=function(A,e){for(var t=this;this._activeEffects.length;)this.popEffect();A.filter(function(A){return An(A.target,e)}).forEach(function(A){return t.applyEffect(A)})},Ds.prototype.applyEffect=function(A){this.ctx.save(),function(A){return 0===A.type}(A)&&(this.ctx.translate(A.offsetX,A.offsetY),this.ctx.transform(A.matrix[0],A.matrix[1],A.matrix[2],A.matrix[3],A.matrix[4],A.matrix[5]),this.ctx.translate(-A.offsetX,-A.offsetY)),function(A){return 1===A.type}(A)&&(this.path(A.path),this.ctx.clip()),this._activeEffects.push(A)},Ds.prototype.popEffect=function(){this._activeEffects.pop(),this.ctx.restore()},Ds.prototype.renderStack=function(t){return a(this,void 0,void 0,function(){var e;return S(this,function(A){switch(A.label){case 0:return(e=t.element.container.styles).isVisible()?(this.ctx.globalAlpha=e.opacity,[4,this.renderStackContent(t)]):[3,2];case 1:A.sent(),A.label=2;case 2:return[2]}})})},Ds.prototype.renderNode=function(e){return a(this,void 0,void 0,function(){return S(this,function(A){switch(A.label){case 0:return e.container.styles.isVisible()?[4,this.renderNodeBackgroundAndBorders(e)]:[3,3];case 1:return A.sent(),[4,this.renderNodeContent(e)];case 2:A.sent(),A.label=3;case 3:return[2]}})})},Ds.prototype.renderTextWithLetterSpacing=function(t,A){var r=this;0===A?this.ctx.fillText(t.text,t.bounds.left,t.bounds.top+t.bounds.height):c(t.text).map(function(A){return l(A)}).reduce(function(A,e){return r.ctx.fillText(e,A,t.bounds.top+t.bounds.height),A+r.ctx.measureText(e).width},t.bounds.left)},Ds.prototype.createFontStyle=function(A){var e=A.fontVariant.filter(function(A){return\"normal\"===A||\"small-caps\"===A}).join(\"\"),t=A.fontFamily.join(\", \"),r=xA(A.fontSize)?\"\"+A.fontSize.number+A.fontSize.unit:A.fontSize.number+\"px\";return[[A.fontStyle,e,A.fontWeight,r,t].join(\" \"),t,r]},Ds.prototype.renderTextNode=function(r,o){return a(this,void 0,void 0,function(){var e,t,n,B,s=this;return S(this,function(A){return e=this.createFontStyle(o),t=e[0],n=e[1],B=e[2],this.ctx.font=t,r.textBounds.forEach(function(r){s.ctx.fillStyle=te(o.color),s.renderTextWithLetterSpacing(r,o.letterSpacing);var A=o.textShadow;A.length&&r.text.trim().length&&(A.slice(0).reverse().forEach(function(A){s.ctx.shadowColor=te(A.color),s.ctx.shadowOffsetX=A.offsetX.number*s.options.scale,s.ctx.shadowOffsetY=A.offsetY.number*s.options.scale,s.ctx.shadowBlur=A.blur.number,s.ctx.fillText(r.text,r.bounds.left,r.bounds.top+r.bounds.height)}),s.ctx.shadowColor=\"\",s.ctx.shadowOffsetX=0,s.ctx.shadowOffsetY=0,s.ctx.shadowBlur=0),o.textDecorationLine.length&&(s.ctx.fillStyle=te(o.textDecorationColor||o.color),o.textDecorationLine.forEach(function(A){switch(A){case 1:var e=s.fontMetrics.getMetrics(n,B).baseline;s.ctx.fillRect(r.bounds.left,Math.round(r.bounds.top+e),r.bounds.width,1);break;case 2:s.ctx.fillRect(r.bounds.left,Math.round(r.bounds.top),r.bounds.width,1);break;case 3:var t=s.fontMetrics.getMetrics(n,B).middle;s.ctx.fillRect(r.bounds.left,Math.ceil(r.bounds.top+t),r.bounds.width,1)}}))}),[2]})})},Ds.prototype.renderReplacedElement=function(A,e,t){if(t&&0<A.intrinsicWidth&&0<A.intrinsicHeight){var r=hs(A),n=ws(e);this.path(n),this.ctx.save(),this.ctx.clip(),this.ctx.drawImage(t,0,0,A.intrinsicWidth,A.intrinsicHeight,r.left,r.top,r.width,r.height),this.ctx.restore()}},Ds.prototype.renderNodeContent=function(l){return a(this,void 0,void 0,function(){var e,t,r,n,B,s,o,i,a,c,Q,w,u,U;return S(this,function(A){switch(A.label){case 0:this.applyEffects(l.effects,4),e=l.container,t=l.curves,r=e.styles,n=0,B=e.textNodes,A.label=1;case 1:return n<B.length?(s=B[n],[4,this.renderTextNode(s,r)]):[3,4];case 2:A.sent(),A.label=3;case 3:return n++,[3,1];case 4:if(!(e instanceof Nn))return[3,8];A.label=5;case 5:return A.trys.push([5,7,,8]),[4,this.options.cache.match(e.src)];case 6:return w=A.sent(),this.renderReplacedElement(e,t,w),[3,8];case 7:return A.sent(),De.getInstance(this.options.id).error(\"Error loading image \"+e.src),[3,8];case 8:if(e instanceof Tn&&this.renderReplacedElement(e,t,e.canvas),!(e instanceof Ln))return[3,12];A.label=9;case 9:return A.trys.push([9,11,,12]),[4,this.options.cache.match(e.svg)];case 10:return w=A.sent(),this.renderReplacedElement(e,t,w),[3,12];case 11:return A.sent(),De.getInstance(this.options.id).error(\"Error loading svg \"+e.svg.substring(0,255)),[3,12];case 12:return e instanceof tB&&e.tree?[4,new Ds({id:this.options.id,scale:this.options.scale,backgroundColor:e.backgroundColor,x:0,y:0,scrollX:0,scrollY:0,width:e.width,height:e.height,cache:this.options.cache,windowWidth:e.width,windowHeight:e.height}).render(e.tree)]:[3,14];case 13:o=A.sent(),e.width&&e.height&&this.ctx.drawImage(o,0,0,e.width,e.height,e.bounds.left,e.bounds.top,e.bounds.width,e.bounds.height),A.label=14;case 14:if(e instanceof Gn&&(i=Math.min(e.bounds.width,e.bounds.height),e.type===Vn?e.checked&&(this.ctx.save(),this.path([new ts(e.bounds.left+.39363*i,e.bounds.top+.79*i),new ts(e.bounds.left+.16*i,e.bounds.top+.5549*i),new ts(e.bounds.left+.27347*i,e.bounds.top+.44071*i),new ts(e.bounds.left+.39694*i,e.bounds.top+.5649*i),new ts(e.bounds.left+.72983*i,e.bounds.top+.23*i),new ts(e.bounds.left+.84*i,e.bounds.top+.34085*i),new ts(e.bounds.left+.39363*i,e.bounds.top+.79*i)]),this.ctx.fillStyle=te(Jn),this.ctx.fill(),this.ctx.restore()):e.type===zn&&e.checked&&(this.ctx.save(),this.ctx.beginPath(),this.ctx.arc(e.bounds.left+i/2,e.bounds.top+i/2,i/4,0,2*Math.PI,!0),this.ctx.fillStyle=te(Jn),this.ctx.fill(),this.ctx.restore())),bs(e)&&e.value.length){switch(this.ctx.font=this.createFontStyle(r)[0],this.ctx.fillStyle=te(r.color),this.ctx.textBaseline=\"middle\",this.ctx.textAlign=Ms(e.styles.textAlign),U=hs(e),a=0,e.styles.textAlign){case Cr.CENTER:a+=U.width/2;break;case Cr.RIGHT:a+=U.width}c=U.add(a,0,0,-U.height/2+1),this.ctx.save(),this.path([new ts(U.left,U.top),new ts(U.left+U.width,U.top),new ts(U.left+U.width,U.top+U.height),new ts(U.left,U.top+U.height)]),this.ctx.clip(),this.renderTextWithLetterSpacing(new Cn(e.value,c),r.letterSpacing),this.ctx.restore(),this.ctx.textBaseline=\"bottom\",this.ctx.textAlign=\"left\"}if(!An(e.styles.display,2048))return[3,20];if(null===e.styles.listStyleImage)return[3,19];if((Q=e.styles.listStyleImage).type!==xe.URL)return[3,18];w=void 0,u=Q.url,A.label=15;case 15:return A.trys.push([15,17,,18]),[4,this.options.cache.match(u)];case 16:return w=A.sent(),this.ctx.drawImage(w,e.bounds.left-(w.width+10),e.bounds.top),[3,18];case 17:return A.sent(),De.getInstance(this.options.id).error(\"Error loading list-style-image \"+u),[3,18];case 18:return[3,20];case 19:l.listValue&&e.styles.listStyleType!==tr.NONE&&(this.ctx.font=this.createFontStyle(r)[0],this.ctx.fillStyle=te(r.color),this.ctx.textBaseline=\"middle\",this.ctx.textAlign=\"right\",U=new I(e.bounds.left,e.bounds.top+ae(e.styles.paddingTop,e.bounds.width),e.bounds.width,function(A,e){return zA(A)&&\"normal\"===A.value?1.2*e:A.type===sA.NUMBER_TOKEN?e*A.number:qA(A)?ae(A,e):e}(r.lineHeight,r.fontSize.number)/2+1),this.renderTextWithLetterSpacing(new Cn(l.listValue,U),r.letterSpacing),this.ctx.textBaseline=\"bottom\",this.ctx.textAlign=\"left\"),A.label=20;case 20:return[2]}})})},Ds.prototype.renderStackContent=function(C){return a(this,void 0,void 0,function(){var e,t,r,n,B,s,o,i,a,c,Q,w,u,U,l;return S(this,function(A){switch(A.label){case 0:return[4,this.renderNodeBackgroundAndBorders(C.element)];case 1:A.sent(),e=0,t=C.negativeZIndex,A.label=2;case 2:return e<t.length?(l=t[e],[4,this.renderStack(l)]):[3,5];case 3:A.sent(),A.label=4;case 4:return e++,[3,2];case 5:return[4,this.renderNodeContent(C.element)];case 6:A.sent(),r=0,n=C.nonInlineLevel,A.label=7;case 7:return r<n.length?(l=n[r],[4,this.renderNode(l)]):[3,10];case 8:A.sent(),A.label=9;case 9:return r++,[3,7];case 10:B=0,s=C.nonPositionedFloats,A.label=11;case 11:return B<s.length?(l=s[B],[4,this.renderStack(l)]):[3,14];case 12:A.sent(),A.label=13;case 13:return B++,[3,11];case 14:o=0,i=C.nonPositionedInlineLevel,A.label=15;case 15:return o<i.length?(l=i[o],[4,this.renderStack(l)]):[3,18];case 16:A.sent(),A.label=17;case 17:return o++,[3,15];case 18:a=0,c=C.inlineLevel,A.label=19;case 19:return a<c.length?(l=c[a],[4,this.renderNode(l)]):[3,22];case 20:A.sent(),A.label=21;case 21:return a++,[3,19];case 22:Q=0,w=C.zeroOrAutoZIndexOrTransformedOrOpacity,A.label=23;case 23:return Q<w.length?(l=w[Q],[4,this.renderStack(l)]):[3,26];case 24:A.sent(),A.label=25;case 25:return Q++,[3,23];case 26:u=0,U=C.positiveZIndex,A.label=27;case 27:return u<U.length?(l=U[u],[4,this.renderStack(l)]):[3,30];case 28:A.sent(),A.label=29;case 29:return u++,[3,27];case 30:return[2]}})})},Ds.prototype.mask=function(A){this.ctx.beginPath(),this.ctx.moveTo(0,0),this.ctx.lineTo(this.canvas.width,0),this.ctx.lineTo(this.canvas.width,this.canvas.height),this.ctx.lineTo(0,this.canvas.height),this.ctx.lineTo(0,0),this.formatPath(A.slice(0).reverse()),this.ctx.closePath()},Ds.prototype.path=function(A){this.ctx.beginPath(),this.formatPath(A),this.ctx.closePath()},Ds.prototype.formatPath=function(A){var r=this;A.forEach(function(A,e){var t=os(A)?A.start:A;0===e?r.ctx.moveTo(t.x,t.y):r.ctx.lineTo(t.x,t.y),os(A)&&r.ctx.bezierCurveTo(A.startControl.x,A.startControl.y,A.endControl.x,A.endControl.y,A.end.x,A.end.y)})},Ds.prototype.renderRepeat=function(A,e,t,r){this.path(A),this.ctx.fillStyle=e,this.ctx.translate(t,r),this.ctx.fill(),this.ctx.translate(-t,-r)},Ds.prototype.resizeImage=function(A,e,t){if(A.width===e&&A.height===t)return A;var r=this.canvas.ownerDocument.createElement(\"canvas\");return r.width=e,r.height=t,r.getContext(\"2d\").drawImage(A,0,0,A.width,A.height,0,0,e,t),r},Ds.prototype.renderBackgroundImage=function(b){return a(this,void 0,void 0,function(){var O,e,D,t,r,n;return S(this,function(A){switch(A.label){case 0:O=b.styles.backgroundImage.length-1,e=function(e){var t,r,n,B,s,o,i,a,c,Q,w,u,U,l,C,g,E,F,h,H,d,f,p,N,K,I,T,m,R,L,v;return S(this,function(A){switch(A.label){case 0:if(e.type!==xe.URL)return[3,5];t=void 0,r=e.url,A.label=1;case 1:return A.trys.push([1,3,,4]),[4,D.options.cache.match(r)];case 2:return t=A.sent(),[3,4];case 3:return A.sent(),De.getInstance(D.options.id).error(\"Error loading background-image \"+r),[3,4];case 4:return t&&(n=Hs(b,O,[t.width,t.height,t.width/t.height]),g=n[0],f=n[1],p=n[2],h=n[3],H=n[4],l=D.ctx.createPattern(D.resizeImage(t,h,H),\"repeat\"),D.renderRepeat(g,l,f,p)),[3,6];case 5:!function(A){return A.type===xe.LINEAR_GRADIENT}(e)?function(A){return A.type===xe.RADIAL_GRADIENT}(e)&&(C=Hs(b,O,[null,null,null]),g=C[0],E=C[1],F=C[2],h=C[3],H=C[4],d=0===e.position.length?[oe]:e.position,f=ae(d[0],h),p=ae(d[d.length-1],H),N=function(A,e,t,r,n){var B=0,s=0;switch(A.size){case Bt.CLOSEST_SIDE:A.shape===rt.CIRCLE?B=s=Math.min(Math.abs(e),Math.abs(e-r),Math.abs(t),Math.abs(t-n)):A.shape===rt.ELLIPSE&&(B=Math.min(Math.abs(e),Math.abs(e-r)),s=Math.min(Math.abs(t),Math.abs(t-n)));break;case Bt.CLOSEST_CORNER:if(A.shape===rt.CIRCLE)B=s=Math.min(Ne(e,t),Ne(e,t-n),Ne(e-r,t),Ne(e-r,t-n));else if(A.shape===rt.ELLIPSE){var o=Math.min(Math.abs(t),Math.abs(t-n))/Math.min(Math.abs(e),Math.abs(e-r)),i=Ke(r,n,e,t,!0),a=i[0],c=i[1];s=o*(B=Ne(a-e,(c-t)/o))}break;case Bt.FARTHEST_SIDE:A.shape===rt.CIRCLE?B=s=Math.max(Math.abs(e),Math.abs(e-r),Math.abs(t),Math.abs(t-n)):A.shape===rt.ELLIPSE&&(B=Math.max(Math.abs(e),Math.abs(e-r)),s=Math.max(Math.abs(t),Math.abs(t-n)));break;case Bt.FARTHEST_CORNER:if(A.shape===rt.CIRCLE)B=s=Math.max(Ne(e,t),Ne(e,t-n),Ne(e-r,t),Ne(e-r,t-n));else if(A.shape===rt.ELLIPSE){o=Math.max(Math.abs(t),Math.abs(t-n))/Math.max(Math.abs(e),Math.abs(e-r));var Q=Ke(r,n,e,t,!1);a=Q[0],c=Q[1],s=o*(B=Ne(a-e,(c-t)/o))}}return Array.isArray(A.size)&&(B=ae(A.size[0],r),s=2===A.size.length?ae(A.size[1],n):B),[B,s]}(e,f,p,h,H),K=N[0],I=N[1],0<K&&0<K&&(T=D.ctx.createRadialGradient(E+f,F+p,0,E+f,F+p,K),fe(e.stops,2*K).forEach(function(A){return T.addColorStop(A.stop,te(A.color))}),D.path(g),D.ctx.fillStyle=T,K!==I?(m=b.bounds.left+.5*b.bounds.width,R=b.bounds.top+.5*b.bounds.height,v=1/(L=I/K),D.ctx.save(),D.ctx.translate(m,R),D.ctx.transform(1,0,0,L,0,0),D.ctx.translate(-m,-R),D.ctx.fillRect(E,v*(F-R)+R,h,H*v),D.ctx.restore()):D.ctx.fill())):(B=Hs(b,O,[null,null,null]),g=B[0],f=B[1],p=B[2],h=B[3],H=B[4],s=pe(e.angle,h,H),o=s[0],i=s[1],a=s[2],c=s[3],Q=s[4],(w=document.createElement(\"canvas\")).width=h,w.height=H,u=w.getContext(\"2d\"),U=u.createLinearGradient(i,c,a,Q),fe(e.stops,o).forEach(function(A){return U.addColorStop(A.stop,te(A.color))}),u.fillStyle=U,u.fillRect(0,0,h,H),0<h&&0<H&&(l=D.ctx.createPattern(w,\"repeat\"),D.renderRepeat(g,l,f,p))),A.label=6;case 6:return O--,[2]}})},D=this,t=0,r=b.styles.backgroundImage.slice(0).reverse(),A.label=1;case 1:return t<r.length?(n=r[t],[5,e(n)]):[3,4];case 2:A.sent(),A.label=3;case 3:return t++,[3,1];case 4:return[2]}})})},Ds.prototype.renderBorder=function(e,t,r){return a(this,void 0,void 0,function(){return S(this,function(A){return this.path(function(A,e){switch(e){case 0:return Ks(A.topLeftBorderBox,A.topLeftPaddingBox,A.topRightBorderBox,A.topRightPaddingBox);case 1:return Ks(A.topRightBorderBox,A.topRightPaddingBox,A.bottomRightBorderBox,A.bottomRightPaddingBox);case 2:return Ks(A.bottomRightBorderBox,A.bottomRightPaddingBox,A.bottomLeftBorderBox,A.bottomLeftPaddingBox);case 3:default:return Ks(A.bottomLeftBorderBox,A.bottomLeftPaddingBox,A.topLeftBorderBox,A.topLeftPaddingBox)}}(r,t)),this.ctx.fillStyle=te(e),this.ctx.fill(),[2]})})},Ds.prototype.renderNodeBackgroundAndBorders=function(c){return a(this,void 0,void 0,function(){var e,t,r,n,B,s,o,i,a=this;return S(this,function(A){switch(A.label){case 0:return this.applyEffects(c.effects,2),e=c.container.styles,t=!ee(e.backgroundColor)||e.backgroundImage.length,r=[{style:e.borderTopStyle,color:e.borderTopColor},{style:e.borderRightStyle,color:e.borderRightColor},{style:e.borderBottomStyle,color:e.borderBottomColor},{style:e.borderLeftStyle,color:e.borderLeftColor}],n=Ss(Ts(e.backgroundClip,0),c.curves),t||e.boxShadow.length?(this.ctx.save(),this.path(n),this.ctx.clip(),ee(e.backgroundColor)||(this.ctx.fillStyle=te(e.backgroundColor),this.ctx.fill()),[4,this.renderBackgroundImage(c.container)]):[3,2];case 1:A.sent(),this.ctx.restore(),e.boxShadow.slice(0).reverse().forEach(function(A){a.ctx.save();var e=Qs(c.curves),t=A.inset?0:1e4,r=function(A,t,r,n,B){return A.map(function(A,e){switch(e){case 0:return A.add(t,r);case 1:return A.add(t+n,r);case 2:return A.add(t+n,r+B);case 3:return A.add(t,r+B)}return A})}(e,-t+(A.inset?1:-1)*A.spread.number,(A.inset?1:-1)*A.spread.number,A.spread.number*(A.inset?-2:2),A.spread.number*(A.inset?-2:2));A.inset?(a.path(e),a.ctx.clip(),a.mask(r)):(a.mask(e),a.ctx.clip(),a.path(r)),a.ctx.shadowOffsetX=A.offsetX.number+t,a.ctx.shadowOffsetY=A.offsetY.number,a.ctx.shadowColor=te(A.color),a.ctx.shadowBlur=A.blur.number,a.ctx.fillStyle=A.inset?te(A.color):\"rgba(0,0,0,1)\",a.ctx.fill(),a.ctx.restore()}),A.label=2;case 2:s=B=0,o=r,A.label=3;case 3:return s<o.length?(i=o[s]).style===ht.NONE||ee(i.color)?[3,5]:[4,this.renderBorder(i.color,B,c.curves)]:[3,7];case 4:A.sent(),A.label=5;case 5:B++,A.label=6;case 6:return s++,[3,3];case 7:return[2]}})})},Ds.prototype.render=function(t){return a(this,void 0,void 0,function(){var e;return S(this,function(A){switch(A.label){case 0:return this.options.backgroundColor&&(this.ctx.fillStyle=te(this.options.backgroundColor),this.ctx.fillRect(this.options.x-this.options.scrollX,this.options.y-this.options.scrollY,this.options.width,this.options.height)),e=function(A){var e=new gs(A,[]),t=new Cs(e),r=[];return ps(e,t,t,r),Ns(e.container,r),t}(t),[4,this.renderStack(e)];case 1:return A.sent(),this.applyEffects([],2),[2,this.canvas]}})})},Ds);function Ds(A){this._activeEffects=[],this.canvas=A.canvas?A.canvas:document.createElement(\"canvas\"),this.ctx=this.canvas.getContext(\"2d\"),(this.options=A).canvas||(this.canvas.width=Math.floor(A.width*A.scale),this.canvas.height=Math.floor(A.height*A.scale),this.canvas.style.width=A.width+\"px\",this.canvas.style.height=A.height+\"px\"),this.fontMetrics=new Ls(document),this.ctx.scale(this.options.scale,this.options.scale),this.ctx.translate(-A.x+A.scrollX,-A.y+A.scrollY),this.ctx.textBaseline=\"bottom\",this._activeEffects=[],De.getInstance(A.id).debug(\"Canvas renderer initialized (\"+A.width+\"x\"+A.height+\" at \"+A.x+\",\"+A.y+\") with scale \"+A.scale)}var bs=function(A){return A instanceof jn||(A instanceof Yn||A instanceof Gn&&A.type!==zn&&A.type!==Vn)},Ss=function(A,e){switch(A){case Ee.BORDER_BOX:return Qs(e);case Ee.CONTENT_BOX:return function(A){return[A.topLeftContentBox,A.topRightContentBox,A.bottomRightContentBox,A.bottomLeftContentBox]}(e);case Ee.PADDING_BOX:default:return ws(e)}},Ms=function(A){switch(A){case Cr.CENTER:return\"center\";case Cr.RIGHT:return\"right\";case Cr.LEFT:default:return\"left\"}},ys=(_s.prototype.render=function(r){return a(this,void 0,void 0,function(){var e,t;return S(this,function(A){switch(A.label){case 0:return e=Le(Math.max(this.options.windowWidth,this.options.width)*this.options.scale,Math.max(this.options.windowHeight,this.options.height)*this.options.scale,this.options.scrollX*this.options.scale,this.options.scrollY*this.options.scale,r),[4,xs(e)];case 1:return t=A.sent(),this.options.backgroundColor&&(this.ctx.fillStyle=te(this.options.backgroundColor),this.ctx.fillRect(0,0,this.options.width*this.options.scale,this.options.height*this.options.scale)),this.ctx.drawImage(t,-this.options.x*this.options.scale,-this.options.y*this.options.scale),[2,this.canvas]}})})},_s);function _s(A){this.canvas=A.canvas?A.canvas:document.createElement(\"canvas\"),this.ctx=this.canvas.getContext(\"2d\"),this.options=A,this.canvas.width=Math.floor(A.width*A.scale),this.canvas.height=Math.floor(A.height*A.scale),this.canvas.style.width=A.width+\"px\",this.canvas.style.height=A.height+\"px\",this.ctx.scale(this.options.scale,this.options.scale),this.ctx.translate(-A.x+A.scrollX,-A.y+A.scrollY),De.getInstance(A.id).debug(\"EXPERIMENTAL ForeignObject renderer initialized (\"+A.width+\"x\"+A.height+\" at \"+A.x+\",\"+A.y+\") with scale \"+A.scale)}function Ps(A){return we(_A.create(A).parseComponentValue())}var xs=function(r){return new Promise(function(A,e){var t=new Image;t.onload=function(){A(t)},t.onerror=e,t.src=\"data:image/svg+xml;charset=utf-8,\"+encodeURIComponent((new XMLSerializer).serializeToString(r))})};\"undefined\"!=typeof window&&Se.setContext(window);var Vs=function(p,N){return a(void 0,void 0,void 0,function(){var e,t,r,n,B,s,o,i,a,c,Q,w,u,U,l,C,g,E,F,h,H,d,f;return S(this,function(A){switch(A.label){case 0:if(!(e=p.ownerDocument))throw new Error(\"Element is not attached to a Document\");if(!(t=e.defaultView))throw new Error(\"Document is not attached to a Window\");return r=(Math.round(1e3*Math.random())+Date.now()).toString(16),n=EB(p)||function(A){return\"HTML\"===A.tagName}(p)?function(A){var e=A.body,t=A.documentElement;if(!e||!t)throw new Error(\"Unable to get document size\");var r=Math.max(Math.max(e.scrollWidth,t.scrollWidth),Math.max(e.offsetWidth,t.offsetWidth),Math.max(e.clientWidth,t.clientWidth)),n=Math.max(Math.max(e.scrollHeight,t.scrollHeight),Math.max(e.offsetHeight,t.offsetHeight),Math.max(e.clientHeight,t.clientHeight));return new I(0,0,r,n)}(e):T(p),B=n.width,s=n.height,o=n.left,i=n.top,a=K({},{allowTaint:!1,imageTimeout:15e3,proxy:void 0,useCORS:!1},N),c={backgroundColor:\"#ffffff\",cache:N.cache?N.cache:Se.create(r,a),logging:!0,removeContainer:!0,foreignObjectRendering:!1,scale:t.devicePixelRatio||1,windowWidth:t.innerWidth,windowHeight:t.innerHeight,scrollX:t.pageXOffset,scrollY:t.pageYOffset,x:o,y:i,width:Math.ceil(B),height:Math.ceil(s),id:r},Q=K({},c,a,N),w=new I(Q.scrollX,Q.scrollY,Q.windowWidth,Q.windowHeight),De.create({id:r,enabled:Q.logging}),De.getInstance(r).debug(\"Starting document clone\"),u=new PB(p,{id:r,onclone:Q.onclone,ignoreElements:Q.ignoreElements,inlineImages:Q.foreignObjectRendering,copyStyles:Q.foreignObjectRendering}),(U=u.clonedReferenceElement)?[4,u.toIFrame(e,w)]:[2,Promise.reject(\"Unable to find element in cloned iframe\")];case 1:return l=A.sent(),C=e.documentElement?Ps(getComputedStyle(e.documentElement).backgroundColor):He.TRANSPARENT,g=e.body?Ps(getComputedStyle(e.body).backgroundColor):He.TRANSPARENT,E=N.backgroundColor,F=\"string\"==typeof E?Ps(E):null===E?He.TRANSPARENT:4294967295,h=p===e.documentElement?ee(C)?ee(g)?F:g:C:F,H={id:r,cache:Q.cache,canvas:Q.canvas,backgroundColor:h,scale:Q.scale,x:Q.x,y:Q.y,scrollX:Q.scrollX,scrollY:Q.scrollY,width:Q.width,height:Q.height,windowWidth:Q.windowWidth,windowHeight:Q.windowHeight},Q.foreignObjectRendering?(De.getInstance(r).debug(\"Document cloned, using foreign object rendering\"),[4,new ys(H).render(U)]):[3,3];case 2:return d=A.sent(),[3,5];case 3:return De.getInstance(r).debug(\"Document cloned, using computed rendering\"),Se.attachInstance(Q.cache),De.getInstance(r).debug(\"Starting DOM parsing\"),f=iB(U),Se.detachInstance(),h===f.styles.backgroundColor&&(f.styles.backgroundColor=He.TRANSPARENT),De.getInstance(r).debug(\"Starting renderer\"),[4,new Os(H).render(f)];case 4:d=A.sent(),A.label=5;case 5:return!0===Q.removeContainer&&(PB.destroy(l)||De.getInstance(r).error(\"Cannot detach cloned iframe as it is not in the DOM anymore\")),De.getInstance(r).debug(\"Finished rendering\"),De.destroy(r),Se.destroy(r),[2,d]}})})};return function(A,e){return void 0===e&&(e={}),Vs(A,e)}});","Magento_PageBuilder/js/resource/dropzone/dropzone.js":"// Uses AMD or browser globals to create a jQuery plugin.\n(function (factory) {\n    if (typeof define === 'function' && define.amd) {\n        // AMD. Register as an anonymous module.\n        define(['jquery'], factory);\n    } else {\n        // Browser globals\n        factory(jQuery);\n    }\n} (function (jQuery) {\n    var module = { exports: { } }; // Fake component\n\n\n    /*\n     *\n     * More info at [www.dropzonejs.com](http://www.dropzonejs.com)\n     *\n     * Copyright (c) 2012, Matias Meno\n     *\n     * Permission is hereby granted, free of charge, to any person obtaining a copy\n     * of this software and associated documentation files (the \"Software\"), to deal\n     * in the Software without restriction, including without limitation the rights\n     * to use, copy, modify, merge, publish, distribute, sublicense, and/or sell\n     * copies of the Software, and to permit persons to whom the Software is\n     * furnished to do so, subject to the following conditions:\n     *\n     * The above copyright notice and this permission notice shall be included in\n     * all copies or substantial portions of the Software.\n     *\n     * THE SOFTWARE IS PROVIDED \"AS IS\", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR\n     * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,\n     * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE\n     * AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER\n     * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,\n     * OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN\n     * THE SOFTWARE.\n     *\n     */\n\n    (function() {\n        var Dropzone, Emitter, camelize, contentLoaded, detectVerticalSquash, drawImageIOSFix, noop, without,\n            __slice = [].slice,\n            __hasProp = {}.hasOwnProperty,\n            __extends = function(child, parent) { for (var key in parent) { if (__hasProp.call(parent, key)) child[key] = parent[key]; } function ctor() { this.constructor = child; } ctor.prototype = parent.prototype; child.prototype = new ctor(); child.__super__ = parent.prototype; return child; };\n\n        noop = function() {};\n\n        Emitter = (function() {\n            function Emitter() {}\n\n            Emitter.prototype.addEventListener = Emitter.prototype.on;\n\n            Emitter.prototype.on = function(event, fn) {\n                this._callbacks = this._callbacks || {};\n                if (!this._callbacks[event]) {\n                    this._callbacks[event] = [];\n                }\n                this._callbacks[event].push(fn);\n                return this;\n            };\n\n            Emitter.prototype.emit = function() {\n                var args, callback, callbacks, event, _i, _len;\n                event = arguments[0], args = 2 <= arguments.length ? __slice.call(arguments, 1) : [];\n                this._callbacks = this._callbacks || {};\n                callbacks = this._callbacks[event];\n                if (callbacks) {\n                    for (_i = 0, _len = callbacks.length; _i < _len; _i++) {\n                        callback = callbacks[_i];\n                        callback.apply(this, args);\n                    }\n                }\n                return this;\n            };\n\n            Emitter.prototype.removeListener = Emitter.prototype.off;\n\n            Emitter.prototype.removeAllListeners = Emitter.prototype.off;\n\n            Emitter.prototype.removeEventListener = Emitter.prototype.off;\n\n            Emitter.prototype.off = function(event, fn) {\n                var callback, callbacks, i, _i, _len;\n                if (!this._callbacks || arguments.length === 0) {\n                    this._callbacks = {};\n                    return this;\n                }\n                callbacks = this._callbacks[event];\n                if (!callbacks) {\n                    return this;\n                }\n                if (arguments.length === 1) {\n                    delete this._callbacks[event];\n                    return this;\n                }\n                for (i = _i = 0, _len = callbacks.length; _i < _len; i = ++_i) {\n                    callback = callbacks[i];\n                    if (callback === fn) {\n                        callbacks.splice(i, 1);\n                        break;\n                    }\n                }\n                return this;\n            };\n\n            return Emitter;\n\n        })();\n\n        Dropzone = (function(_super) {\n            var extend, resolveOption;\n\n            __extends(Dropzone, _super);\n\n            Dropzone.prototype.Emitter = Emitter;\n\n\n            /*\n             This is a list of all available events you can register on a dropzone object.\n\n             You can register an event handler like this:\n\n             dropzone.on(\"dragEnter\", function() { });\n             */\n\n            Dropzone.prototype.events = [\"drop\", \"dragstart\", \"dragend\", \"dragenter\", \"dragover\", \"dragleave\", \"addedfile\", \"addedfiles\", \"removedfile\", \"thumbnail\", \"error\", \"errormultiple\", \"processing\", \"processingmultiple\", \"uploadprogress\", \"totaluploadprogress\", \"sending\", \"sendingmultiple\", \"success\", \"successmultiple\", \"canceled\", \"canceledmultiple\", \"complete\", \"completemultiple\", \"reset\", \"maxfilesexceeded\", \"maxfilesreached\", \"queuecomplete\"];\n\n            Dropzone.prototype.defaultOptions = {\n                url: null,\n                method: \"post\",\n                withCredentials: false,\n                parallelUploads: 2,\n                uploadMultiple: false,\n                maxFilesize: 256,\n                paramName: \"file\",\n                createImageThumbnails: true,\n                maxThumbnailFilesize: 10,\n                thumbnailWidth: 120,\n                thumbnailHeight: 120,\n                filesizeBase: 1000,\n                maxFiles: null,\n                params: {},\n                clickable: true,\n                ignoreHiddenFiles: true,\n                acceptedFiles: null,\n                acceptedMimeTypes: null,\n                autoProcessQueue: true,\n                autoQueue: true,\n                addRemoveLinks: false,\n                previewsContainer: null,\n                hiddenInputContainer: \"body\",\n                capture: null,\n                dictDefaultMessage: \"Drop files here to upload\",\n                dictFallbackMessage: \"Your browser does not support drag'n'drop file uploads.\",\n                dictFallbackText: \"Please use the fallback form below to upload your files like in the olden days.\",\n                dictFileTooBig: \"File is too big ({{filesize}}MiB). Max filesize: {{maxFilesize}}MiB.\",\n                dictInvalidFileType: \"You can't upload files of this type.\",\n                dictResponseError: \"Server responded with {{statusCode}} code.\",\n                dictCancelUpload: \"Cancel upload\",\n                dictCancelUploadConfirmation: \"Are you sure you want to cancel this upload?\",\n                dictRemoveFile: \"Remove file\",\n                dictRemoveFileConfirmation: null,\n                dictMaxFilesExceeded: \"You can not upload any more files.\",\n                accept: function(file, done) {\n                    return done();\n                },\n                init: function() {\n                    return noop;\n                },\n                forceFallback: false,\n                fallback: function() {\n                    var child, messageElement, span, _i, _len, _ref;\n                    this.element.className = \"\" + this.element.className + \" dz-browser-not-supported\";\n                    _ref = this.element.getElementsByTagName(\"div\");\n                    for (_i = 0, _len = _ref.length; _i < _len; _i++) {\n                        child = _ref[_i];\n                        if (/(^| )dz-message($| )/.test(child.className)) {\n                            messageElement = child;\n                            child.className = \"dz-message\";\n                            continue;\n                        }\n                    }\n                    if (!messageElement) {\n                        messageElement = Dropzone.createElement(\"<div class=\\\"dz-message\\\"><span></span></div>\");\n                        this.element.appendChild(messageElement);\n                    }\n                    span = messageElement.getElementsByTagName(\"span\")[0];\n                    if (span) {\n                        if (span.textContent != null) {\n                            span.textContent = this.options.dictFallbackMessage;\n                        } else if (span.innerText != null) {\n                            span.innerText = this.options.dictFallbackMessage;\n                        }\n                    }\n                    return this.element.appendChild(this.getFallbackForm());\n                },\n                resize: function(file) {\n                    var info, srcRatio, trgRatio;\n                    info = {\n                        srcX: 0,\n                        srcY: 0,\n                        srcWidth: file.width,\n                        srcHeight: file.height\n                    };\n                    srcRatio = file.width / file.height;\n                    info.optWidth = this.options.thumbnailWidth;\n                    info.optHeight = this.options.thumbnailHeight;\n                    if ((info.optWidth == null) && (info.optHeight == null)) {\n                        info.optWidth = info.srcWidth;\n                        info.optHeight = info.srcHeight;\n                    } else if (info.optWidth == null) {\n                        info.optWidth = srcRatio * info.optHeight;\n                    } else if (info.optHeight == null) {\n                        info.optHeight = (1 / srcRatio) * info.optWidth;\n                    }\n                    trgRatio = info.optWidth / info.optHeight;\n                    if (file.height < info.optHeight || file.width < info.optWidth) {\n                        info.trgHeight = info.srcHeight;\n                        info.trgWidth = info.srcWidth;\n                    } else {\n                        if (srcRatio > trgRatio) {\n                            info.srcHeight = file.height;\n                            info.srcWidth = info.srcHeight * trgRatio;\n                        } else {\n                            info.srcWidth = file.width;\n                            info.srcHeight = info.srcWidth / trgRatio;\n                        }\n                    }\n                    info.srcX = (file.width - info.srcWidth) / 2;\n                    info.srcY = (file.height - info.srcHeight) / 2;\n                    return info;\n                },\n\n                /*\n                 Those functions register themselves to the events on init and handle all\n                 the user interface specific stuff. Overwriting them won't break the upload\n                 but can break the way it's displayed.\n                 You can overwrite them if you don't like the default behavior. If you just\n                 want to add an additional event handler, register it on the dropzone object\n                 and don't overwrite those options.\n                 */\n                drop: function(e) {\n                    return this.element.classList.remove(\"dz-drag-hover\");\n                },\n                dragstart: noop,\n                dragend: function(e) {\n                    return this.element.classList.remove(\"dz-drag-hover\");\n                },\n                dragenter: function(e) {\n                    return this.element.classList.add(\"dz-drag-hover\");\n                },\n                dragover: function(e) {\n                    return this.element.classList.add(\"dz-drag-hover\");\n                },\n                dragleave: function(e) {\n                    return this.element.classList.remove(\"dz-drag-hover\");\n                },\n                paste: noop,\n                reset: function() {\n                    return this.element.classList.remove(\"dz-started\");\n                },\n                addedfile: function(file) {\n                    var node, removeFileEvent, removeLink, _i, _j, _k, _len, _len1, _len2, _ref, _ref1, _ref2, _results;\n                    if (this.element === this.previewsContainer) {\n                        this.element.classList.add(\"dz-started\");\n                    }\n                    if (this.previewsContainer) {\n                        file.previewElement = Dropzone.createElement(this.options.template.trim());\n                        file.template = file.previewElement;\n                        this.previewsContainer.appendChild(file.previewElement);\n                        _ref = file.previewElement.querySelectorAll(\"[data-dz-name]\");\n                        for (_i = 0, _len = _ref.length; _i < _len; _i++) {\n                            node = _ref[_i];\n                            node.textContent = file.name;\n                        }\n                        _ref1 = file.previewElement.querySelectorAll(\"[data-dz-size]\");\n                        for (_j = 0, _len1 = _ref1.length; _j < _len1; _j++) {\n                            node = _ref1[_j];\n                            node.innerHTML = this.filesize(file.size);\n                        }\n                        if (this.options.addRemoveLinks) {\n                            file._removeLink = Dropzone.createElement(\"<a class=\\\"dz-remove\\\" href=\\\"javascript:undefined;\\\" data-dz-remove>\" + this.options.dictRemoveFile + \"</a>\");\n                            file.previewElement.appendChild(file._removeLink);\n                        }\n                        removeFileEvent = (function(_this) {\n                            return function(e) {\n                                e.preventDefault();\n                                e.stopPropagation();\n                                if (file.status === Dropzone.UPLOADING) {\n                                    return Dropzone.confirm(_this.options.dictCancelUploadConfirmation, function() {\n                                        return _this.removeFile(file);\n                                    });\n                                } else {\n                                    if (_this.options.dictRemoveFileConfirmation) {\n                                        return Dropzone.confirm(_this.options.dictRemoveFileConfirmation, function() {\n                                            return _this.removeFile(file);\n                                        });\n                                    } else {\n                                        return _this.removeFile(file);\n                                    }\n                                }\n                            };\n                        })(this);\n                        _ref2 = file.previewElement.querySelectorAll(\"[data-dz-remove]\");\n                        _results = [];\n                        for (_k = 0, _len2 = _ref2.length; _k < _len2; _k++) {\n                            removeLink = _ref2[_k];\n                            _results.push(removeLink.addEventListener(\"click\", removeFileEvent));\n                        }\n                        return _results;\n                    }\n                },\n                removedfile: function(file) {\n                    var _ref;\n                    if (file.previewElement) {\n                        if ((_ref = file.previewElement) != null) {\n                            _ref.parentNode.removeChild(file.previewElement);\n                        }\n                    }\n                    return this._updateMaxFilesReachedClass();\n                },\n                thumbnail: function(file, dataUrl) {\n                    var thumbnailElement, _i, _len, _ref;\n                    if (file.previewElement) {\n                        file.previewElement.classList.remove(\"dz-file-preview\");\n                        _ref = file.previewElement.querySelectorAll(\"[data-dz-thumbnail]\");\n                        for (_i = 0, _len = _ref.length; _i < _len; _i++) {\n                            thumbnailElement = _ref[_i];\n                            thumbnailElement.alt = file.name;\n                            thumbnailElement.src = dataUrl;\n                        }\n                        return setTimeout(((function(_this) {\n                            return function() {\n                                return file.previewElement.classList.add(\"dz-image-preview\");\n                            };\n                        })(this)), 1);\n                    }\n                },\n                error: function(file, message) {\n                    var node, _i, _len, _ref, _results;\n                    if (file.previewElement) {\n                        file.previewElement.classList.add(\"dz-error\");\n                        if (typeof message !== \"String\" && message.error) {\n                            message = message.error;\n                        }\n                        _ref = file.previewElement.querySelectorAll(\"[data-dz-errormessage]\");\n                        _results = [];\n                        for (_i = 0, _len = _ref.length; _i < _len; _i++) {\n                            node = _ref[_i];\n                            _results.push(node.textContent = message);\n                        }\n                        return _results;\n                    }\n                },\n                errormultiple: noop,\n                processing: function(file) {\n                    if (file.previewElement) {\n                        file.previewElement.classList.add(\"dz-processing\");\n                        if (file._removeLink) {\n                            return file._removeLink.textContent = this.options.dictCancelUpload;\n                        }\n                    }\n                },\n                processingmultiple: noop,\n                uploadprogress: function(file, progress, bytesSent) {\n                    var node, _i, _len, _ref, _results;\n                    if (file.previewElement) {\n                        _ref = file.previewElement.querySelectorAll(\"[data-dz-uploadprogress]\");\n                        _results = [];\n                        for (_i = 0, _len = _ref.length; _i < _len; _i++) {\n                            node = _ref[_i];\n                            if (node.nodeName === 'PROGRESS') {\n                                _results.push(node.value = progress);\n                            } else {\n                                _results.push(node.style.width = \"\" + progress + \"%\");\n                            }\n                        }\n                        return _results;\n                    }\n                },\n                totaluploadprogress: noop,\n                sending: noop,\n                sendingmultiple: noop,\n                success: function(file) {\n                    if (file.previewElement) {\n                        return file.previewElement.classList.add(\"dz-success\");\n                    }\n                },\n                successmultiple: noop,\n                canceled: function(file) {\n                    return this.emit(\"error\", file, \"Upload canceled.\");\n                },\n                canceledmultiple: noop,\n                complete: function(file) {\n                    if (file._removeLink) {\n                        file._removeLink.textContent = this.options.dictRemoveFile;\n                    }\n                    if (file.previewElement) {\n                        return file.previewElement.classList.add(\"dz-complete\");\n                    }\n                },\n                completemultiple: noop,\n                maxfilesexceeded: noop,\n                maxfilesreached: noop,\n                queuecomplete: noop,\n                addedfiles: noop,\n                template: \"<div class=\\\"dz-preview dz-file-preview\\\">\\n  <div class=\\\"dz-image\\\"><img data-dz-thumbnail /></div>\\n  <div class=\\\"dz-details\\\">\\n    <div class=\\\"dz-size\\\"><span data-dz-size></span></div>\\n    <div class=\\\"dz-filename\\\"><span data-dz-name></span></div>\\n  </div>\\n  <div class=\\\"dz-progress\\\"><span class=\\\"dz-upload\\\" data-dz-uploadprogress></span></div>\\n  <div class=\\\"dz-error-message\\\"><span data-dz-errormessage></span></div>\\n  <div class=\\\"dz-success-mark\\\">\\n    <svg width=\\\"54px\\\" height=\\\"54px\\\" viewBox=\\\"0 0 54 54\\\" version=\\\"1.1\\\" xmlns=\\\"http://www.w3.org/2000/svg\\\" xmlns:xlink=\\\"http://www.w3.org/1999/xlink\\\" xmlns:sketch=\\\"http://www.bohemiancoding.com/sketch/ns\\\">\\n      <title>Check</title>\\n      <defs></defs>\\n      <g id=\\\"Page-1\\\" stroke=\\\"none\\\" stroke-width=\\\"1\\\" fill=\\\"none\\\" fill-rule=\\\"evenodd\\\" sketch:type=\\\"MSPage\\\">\\n        <path d=\\\"M23.5,31.8431458 L17.5852419,25.9283877 C16.0248253,24.3679711 13.4910294,24.366835 11.9289322,25.9289322 C10.3700136,27.4878508 10.3665912,30.0234455 11.9283877,31.5852419 L20.4147581,40.0716123 C20.5133999,40.1702541 20.6159315,40.2626649 20.7218615,40.3488435 C22.2835669,41.8725651 24.794234,41.8626202 26.3461564,40.3106978 L43.3106978,23.3461564 C44.8771021,21.7797521 44.8758057,19.2483887 43.3137085,17.6862915 C41.7547899,16.1273729 39.2176035,16.1255422 37.6538436,17.6893022 L23.5,31.8431458 Z M27,53 C41.3594035,53 53,41.3594035 53,27 C53,12.6405965 41.3594035,1 27,1 C12.6405965,1 1,12.6405965 1,27 C1,41.3594035 12.6405965,53 27,53 Z\\\" id=\\\"Oval-2\\\" stroke-opacity=\\\"0.198794158\\\" stroke=\\\"#747474\\\" fill-opacity=\\\"0.816519475\\\" fill=\\\"#FFFFFF\\\" sketch:type=\\\"MSShapeGroup\\\"></path>\\n      </g>\\n    </svg>\\n  </div>\\n  <div class=\\\"dz-error-mark\\\">\\n    <svg width=\\\"54px\\\" height=\\\"54px\\\" viewBox=\\\"0 0 54 54\\\" version=\\\"1.1\\\" xmlns=\\\"http://www.w3.org/2000/svg\\\" xmlns:xlink=\\\"http://www.w3.org/1999/xlink\\\" xmlns:sketch=\\\"http://www.bohemiancoding.com/sketch/ns\\\">\\n      <title>Error</title>\\n      <defs></defs>\\n      <g id=\\\"Page-1\\\" stroke=\\\"none\\\" stroke-width=\\\"1\\\" fill=\\\"none\\\" fill-rule=\\\"evenodd\\\" sketch:type=\\\"MSPage\\\">\\n        <g id=\\\"Check-+-Oval-2\\\" sketch:type=\\\"MSLayerGroup\\\" stroke=\\\"#747474\\\" stroke-opacity=\\\"0.198794158\\\" fill=\\\"#FFFFFF\\\" fill-opacity=\\\"0.816519475\\\">\\n          <path d=\\\"M32.6568542,29 L38.3106978,23.3461564 C39.8771021,21.7797521 39.8758057,19.2483887 38.3137085,17.6862915 C36.7547899,16.1273729 34.2176035,16.1255422 32.6538436,17.6893022 L27,23.3431458 L21.3461564,17.6893022 C19.7823965,16.1255422 17.2452101,16.1273729 15.6862915,17.6862915 C14.1241943,19.2483887 14.1228979,21.7797521 15.6893022,23.3461564 L21.3431458,29 L15.6893022,34.6538436 C14.1228979,36.2202479 14.1241943,38.7516113 15.6862915,40.3137085 C17.2452101,41.8726271 19.7823965,41.8744578 21.3461564,40.3106978 L27,34.6568542 L32.6538436,40.3106978 C34.2176035,41.8744578 36.7547899,41.8726271 38.3137085,40.3137085 C39.8758057,38.7516113 39.8771021,36.2202479 38.3106978,34.6538436 L32.6568542,29 Z M27,53 C41.3594035,53 53,41.3594035 53,27 C53,12.6405965 41.3594035,1 27,1 C12.6405965,1 1,12.6405965 1,27 C1,41.3594035 12.6405965,53 27,53 Z\\\" id=\\\"Oval-2\\\" sketch:type=\\\"MSShapeGroup\\\"></path>\\n        </g>\\n      </g>\\n    </svg>\\n  </div>\\n</div>\"\n            };\n\n            extend = function() {\n                var key, object, objects, target, val, _i, _len;\n                target = arguments[0], objects = 2 <= arguments.length ? __slice.call(arguments, 1) : [];\n                for (_i = 0, _len = objects.length; _i < _len; _i++) {\n                    object = objects[_i];\n                    for (key in object) {\n                        val = object[key];\n                        target[key] = val;\n                    }\n                }\n                return target;\n            };\n\n            function Dropzone(element, options) {\n                var elementOptions, fallback, _ref;\n                this.element = element;\n                this.version = Dropzone.version;\n                this.defaultOptions.template = this.defaultOptions.template.replace(/\\n*/g, \"\");\n                this.clickableElements = [];\n                this.listeners = [];\n                this.files = [];\n                if (typeof this.element === \"string\") {\n                    this.element = document.querySelector(this.element);\n                }\n                if (!(this.element && (this.element.nodeType != null))) {\n                    throw new Error(\"Invalid dropzone element.\");\n                }\n                if (this.element.dropzone) {\n                    throw new Error(\"Dropzone already attached.\");\n                }\n                Dropzone.instances.push(this);\n                this.element.dropzone = this;\n                elementOptions = (_ref = Dropzone.optionsForElement(this.element)) != null ? _ref : {};\n                this.options = extend({}, this.defaultOptions, elementOptions, options != null ? options : {});\n                if (this.options.forceFallback || !Dropzone.isBrowserSupported()) {\n                    return this.options.fallback.call(this);\n                }\n                if (this.options.url == null) {\n                    this.options.url = this.element.getAttribute(\"action\");\n                }\n                if (!this.options.url) {\n                    throw new Error(\"No URL provided.\");\n                }\n                if (this.options.acceptedFiles && this.options.acceptedMimeTypes) {\n                    throw new Error(\"You can't provide both 'acceptedFiles' and 'acceptedMimeTypes'. 'acceptedMimeTypes' is deprecated.\");\n                }\n                if (this.options.acceptedMimeTypes) {\n                    this.options.acceptedFiles = this.options.acceptedMimeTypes;\n                    delete this.options.acceptedMimeTypes;\n                }\n                this.options.method = this.options.method.toUpperCase();\n                if ((fallback = this.getExistingFallback()) && fallback.parentNode) {\n                    fallback.parentNode.removeChild(fallback);\n                }\n                if (this.options.previewsContainer !== false) {\n                    if (this.options.previewsContainer) {\n                        this.previewsContainer = Dropzone.getElement(this.options.previewsContainer, \"previewsContainer\");\n                    } else {\n                        this.previewsContainer = this.element;\n                    }\n                }\n                if (this.options.clickable) {\n                    if (this.options.clickable === true) {\n                        this.clickableElements = [this.element];\n                    } else {\n                        this.clickableElements = Dropzone.getElements(this.options.clickable, \"clickable\");\n                    }\n                }\n                this.init();\n            }\n\n            Dropzone.prototype.getAcceptedFiles = function() {\n                var file, _i, _len, _ref, _results;\n                _ref = this.files;\n                _results = [];\n                for (_i = 0, _len = _ref.length; _i < _len; _i++) {\n                    file = _ref[_i];\n                    if (file.accepted) {\n                        _results.push(file);\n                    }\n                }\n                return _results;\n            };\n\n            Dropzone.prototype.getRejectedFiles = function() {\n                var file, _i, _len, _ref, _results;\n                _ref = this.files;\n                _results = [];\n                for (_i = 0, _len = _ref.length; _i < _len; _i++) {\n                    file = _ref[_i];\n                    if (!file.accepted) {\n                        _results.push(file);\n                    }\n                }\n                return _results;\n            };\n\n            Dropzone.prototype.getFilesWithStatus = function(status) {\n                var file, _i, _len, _ref, _results;\n                _ref = this.files;\n                _results = [];\n                for (_i = 0, _len = _ref.length; _i < _len; _i++) {\n                    file = _ref[_i];\n                    if (file.status === status) {\n                        _results.push(file);\n                    }\n                }\n                return _results;\n            };\n\n            Dropzone.prototype.getQueuedFiles = function() {\n                return this.getFilesWithStatus(Dropzone.QUEUED);\n            };\n\n            Dropzone.prototype.getUploadingFiles = function() {\n                return this.getFilesWithStatus(Dropzone.UPLOADING);\n            };\n\n            Dropzone.prototype.getAddedFiles = function() {\n                return this.getFilesWithStatus(Dropzone.ADDED);\n            };\n\n            Dropzone.prototype.getActiveFiles = function() {\n                var file, _i, _len, _ref, _results;\n                _ref = this.files;\n                _results = [];\n                for (_i = 0, _len = _ref.length; _i < _len; _i++) {\n                    file = _ref[_i];\n                    if (file.status === Dropzone.UPLOADING || file.status === Dropzone.QUEUED) {\n                        _results.push(file);\n                    }\n                }\n                return _results;\n            };\n\n            Dropzone.prototype.init = function() {\n                var eventName, noPropagation, setupHiddenFileInput, _i, _len, _ref, _ref1;\n                if (this.element.tagName === \"form\") {\n                    this.element.setAttribute(\"enctype\", \"multipart/form-data\");\n                }\n                if (this.element.classList.contains(\"dropzone\") && !this.element.querySelector(\".dz-message\")) {\n                    this.element.appendChild(Dropzone.createElement(\"<div class=\\\"dz-default dz-message\\\"><span>\" + this.options.dictDefaultMessage + \"</span></div>\"));\n                }\n                if (this.clickableElements.length) {\n                    setupHiddenFileInput = (function(_this) {\n                        return function() {\n                            if (_this.hiddenFileInput) {\n                                _this.hiddenFileInput.parentNode.removeChild(_this.hiddenFileInput);\n                            }\n                            _this.hiddenFileInput = document.createElement(\"input\");\n                            _this.hiddenFileInput.setAttribute(\"type\", \"file\");\n                            if ((_this.options.maxFiles == null) || _this.options.maxFiles > 1) {\n                                _this.hiddenFileInput.setAttribute(\"multiple\", \"multiple\");\n                            }\n                            _this.hiddenFileInput.className = \"dz-hidden-input\";\n                            if (_this.options.acceptedFiles != null) {\n                                _this.hiddenFileInput.setAttribute(\"accept\", _this.options.acceptedFiles);\n                            }\n                            if (_this.options.capture != null) {\n                                _this.hiddenFileInput.setAttribute(\"capture\", _this.options.capture);\n                            }\n                            _this.hiddenFileInput.style.visibility = \"hidden\";\n                            _this.hiddenFileInput.style.position = \"absolute\";\n                            _this.hiddenFileInput.style.top = \"0\";\n                            _this.hiddenFileInput.style.left = \"0\";\n                            _this.hiddenFileInput.style.height = \"0\";\n                            _this.hiddenFileInput.style.width = \"0\";\n                            document.querySelector(_this.options.hiddenInputContainer).appendChild(_this.hiddenFileInput);\n                            return _this.hiddenFileInput.addEventListener(\"change\", function() {\n                                var file, files, _i, _len;\n                                files = _this.hiddenFileInput.files;\n                                if (files.length) {\n                                    for (_i = 0, _len = files.length; _i < _len; _i++) {\n                                        file = files[_i];\n                                        _this.addFile(file);\n                                    }\n                                }\n                                _this.emit(\"addedfiles\", files);\n                                return setupHiddenFileInput();\n                            });\n                        };\n                    })(this);\n                    setupHiddenFileInput();\n                }\n                this.URL = (_ref = window.URL) != null ? _ref : window.webkitURL;\n                _ref1 = this.events;\n                for (_i = 0, _len = _ref1.length; _i < _len; _i++) {\n                    eventName = _ref1[_i];\n                    this.on(eventName, this.options[eventName]);\n                }\n                this.on(\"uploadprogress\", (function(_this) {\n                    return function() {\n                        return _this.updateTotalUploadProgress();\n                    };\n                })(this));\n                this.on(\"removedfile\", (function(_this) {\n                    return function() {\n                        return _this.updateTotalUploadProgress();\n                    };\n                })(this));\n                this.on(\"canceled\", (function(_this) {\n                    return function(file) {\n                        return _this.emit(\"complete\", file);\n                    };\n                })(this));\n                this.on(\"complete\", (function(_this) {\n                    return function(file) {\n                        if (_this.getAddedFiles().length === 0 && _this.getUploadingFiles().length === 0 && _this.getQueuedFiles().length === 0) {\n                            return setTimeout((function() {\n                                return _this.emit(\"queuecomplete\");\n                            }), 0);\n                        }\n                    };\n                })(this));\n                noPropagation = function(e) {\n                    e.stopPropagation();\n                    if (e.preventDefault) {\n                        return e.preventDefault();\n                    } else {\n                        return e.returnValue = false;\n                    }\n                };\n                this.listeners = [\n                    {\n                        element: this.element,\n                        events: {\n                            \"dragstart\": (function(_this) {\n                                return function(e) {\n                                    return _this.emit(\"dragstart\", e);\n                                };\n                            })(this),\n                            \"dragenter\": (function(_this) {\n                                return function(e) {\n                                    noPropagation(e);\n                                    return _this.emit(\"dragenter\", e);\n                                };\n                            })(this),\n                            \"dragover\": (function(_this) {\n                                return function(e) {\n                                    var efct;\n                                    try {\n                                        efct = e.dataTransfer.effectAllowed;\n                                    } catch (_error) {}\n                                    e.dataTransfer.dropEffect = 'move' === efct || 'linkMove' === efct ? 'move' : 'copy';\n                                    noPropagation(e);\n                                    return _this.emit(\"dragover\", e);\n                                };\n                            })(this),\n                            \"dragleave\": (function(_this) {\n                                return function(e) {\n                                    return _this.emit(\"dragleave\", e);\n                                };\n                            })(this),\n                            \"drop\": (function(_this) {\n                                return function(e) {\n                                    noPropagation(e);\n                                    return _this.drop(e);\n                                };\n                            })(this),\n                            \"dragend\": (function(_this) {\n                                return function(e) {\n                                    return _this.emit(\"dragend\", e);\n                                };\n                            })(this)\n                        }\n                    }\n                ];\n                this.clickableElements.forEach((function(_this) {\n                    return function(clickableElement) {\n                        return _this.listeners.push({\n                            element: clickableElement,\n                            events: {\n                                \"click\": function(evt) {\n                                    if ((clickableElement !== _this.element) || (evt.target === _this.element || Dropzone.elementInside(evt.target, _this.element.querySelector(\".dz-message\")))) {\n                                        _this.hiddenFileInput.click();\n                                    }\n                                    return true;\n                                }\n                            }\n                        });\n                    };\n                })(this));\n                this.enable();\n                return this.options.init.call(this);\n            };\n\n            Dropzone.prototype.destroy = function() {\n                var _ref;\n                this.disable();\n                this.removeAllFiles(true);\n                if ((_ref = this.hiddenFileInput) != null ? _ref.parentNode : void 0) {\n                    this.hiddenFileInput.parentNode.removeChild(this.hiddenFileInput);\n                    this.hiddenFileInput = null;\n                }\n                delete this.element.dropzone;\n                return Dropzone.instances.splice(Dropzone.instances.indexOf(this), 1);\n            };\n\n            Dropzone.prototype.updateTotalUploadProgress = function() {\n                var activeFiles, file, totalBytes, totalBytesSent, totalUploadProgress, _i, _len, _ref;\n                totalBytesSent = 0;\n                totalBytes = 0;\n                activeFiles = this.getActiveFiles();\n                if (activeFiles.length) {\n                    _ref = this.getActiveFiles();\n                    for (_i = 0, _len = _ref.length; _i < _len; _i++) {\n                        file = _ref[_i];\n                        totalBytesSent += file.upload.bytesSent;\n                        totalBytes += file.upload.total;\n                    }\n                    totalUploadProgress = 100 * totalBytesSent / totalBytes;\n                } else {\n                    totalUploadProgress = 100;\n                }\n                return this.emit(\"totaluploadprogress\", totalUploadProgress, totalBytes, totalBytesSent);\n            };\n\n            Dropzone.prototype._getParamName = function(n) {\n                if (typeof this.options.paramName === \"function\") {\n                    return this.options.paramName(n);\n                } else {\n                    return \"\" + this.options.paramName + (this.options.uploadMultiple ? \"[\" + n + \"]\" : \"\");\n                }\n            };\n\n            Dropzone.prototype.getFallbackForm = function() {\n                var existingFallback, fields, fieldsString, form;\n                if (existingFallback = this.getExistingFallback()) {\n                    return existingFallback;\n                }\n                fieldsString = \"<div class=\\\"dz-fallback\\\">\";\n                if (this.options.dictFallbackText) {\n                    fieldsString += \"<p>\" + this.options.dictFallbackText + \"</p>\";\n                }\n                fieldsString += \"<input type=\\\"file\\\" name=\\\"\" + (this._getParamName(0)) + \"\\\" \" + (this.options.uploadMultiple ? 'multiple=\"multiple\"' : void 0) + \" /><input type=\\\"submit\\\" value=\\\"Upload!\\\"></div>\";\n                fields = Dropzone.createElement(fieldsString);\n                if (this.element.tagName !== \"FORM\") {\n                    form = Dropzone.createElement(\"<form action=\\\"\" + this.options.url + \"\\\" enctype=\\\"multipart/form-data\\\" method=\\\"\" + this.options.method + \"\\\"></form>\");\n                    form.appendChild(fields);\n                } else {\n                    this.element.setAttribute(\"enctype\", \"multipart/form-data\");\n                    this.element.setAttribute(\"method\", this.options.method);\n                }\n                return form != null ? form : fields;\n            };\n\n            Dropzone.prototype.getExistingFallback = function() {\n                var fallback, getFallback, tagName, _i, _len, _ref;\n                getFallback = function(elements) {\n                    var el, _i, _len;\n                    for (_i = 0, _len = elements.length; _i < _len; _i++) {\n                        el = elements[_i];\n                        if (/(^| )fallback($| )/.test(el.className)) {\n                            return el;\n                        }\n                    }\n                };\n                _ref = [\"div\", \"form\"];\n                for (_i = 0, _len = _ref.length; _i < _len; _i++) {\n                    tagName = _ref[_i];\n                    if (fallback = getFallback(this.element.getElementsByTagName(tagName))) {\n                        return fallback;\n                    }\n                }\n            };\n\n            Dropzone.prototype.setupEventListeners = function() {\n                var elementListeners, event, listener, _i, _len, _ref, _results;\n                _ref = this.listeners;\n                _results = [];\n                for (_i = 0, _len = _ref.length; _i < _len; _i++) {\n                    elementListeners = _ref[_i];\n                    _results.push((function() {\n                        var _ref1, _results1;\n                        _ref1 = elementListeners.events;\n                        _results1 = [];\n                        for (event in _ref1) {\n                            listener = _ref1[event];\n                            _results1.push(elementListeners.element.addEventListener(event, listener, false));\n                        }\n                        return _results1;\n                    })());\n                }\n                return _results;\n            };\n\n            Dropzone.prototype.removeEventListeners = function() {\n                var elementListeners, event, listener, _i, _len, _ref, _results;\n                _ref = this.listeners;\n                _results = [];\n                for (_i = 0, _len = _ref.length; _i < _len; _i++) {\n                    elementListeners = _ref[_i];\n                    _results.push((function() {\n                        var _ref1, _results1;\n                        _ref1 = elementListeners.events;\n                        _results1 = [];\n                        for (event in _ref1) {\n                            listener = _ref1[event];\n                            _results1.push(elementListeners.element.removeEventListener(event, listener, false));\n                        }\n                        return _results1;\n                    })());\n                }\n                return _results;\n            };\n\n            Dropzone.prototype.disable = function() {\n                var file, _i, _len, _ref, _results;\n                this.clickableElements.forEach(function(element) {\n                    return element.classList.remove(\"dz-clickable\");\n                });\n                this.removeEventListeners();\n                _ref = this.files;\n                _results = [];\n                for (_i = 0, _len = _ref.length; _i < _len; _i++) {\n                    file = _ref[_i];\n                    _results.push(this.cancelUpload(file));\n                }\n                return _results;\n            };\n\n            Dropzone.prototype.enable = function() {\n                this.clickableElements.forEach(function(element) {\n                    return element.classList.add(\"dz-clickable\");\n                });\n                return this.setupEventListeners();\n            };\n\n            Dropzone.prototype.filesize = function(size) {\n                var cutoff, i, selectedSize, selectedUnit, unit, units, _i, _len;\n                selectedSize = 0;\n                selectedUnit = \"b\";\n                if (size > 0) {\n                    units = ['TB', 'GB', 'MB', 'KB', 'b'];\n                    for (i = _i = 0, _len = units.length; _i < _len; i = ++_i) {\n                        unit = units[i];\n                        cutoff = Math.pow(this.options.filesizeBase, 4 - i) / 10;\n                        if (size >= cutoff) {\n                            selectedSize = size / Math.pow(this.options.filesizeBase, 4 - i);\n                            selectedUnit = unit;\n                            break;\n                        }\n                    }\n                    selectedSize = Math.round(10 * selectedSize) / 10;\n                }\n                return \"<strong>\" + selectedSize + \"</strong> \" + selectedUnit;\n            };\n\n            Dropzone.prototype._updateMaxFilesReachedClass = function() {\n                if ((this.options.maxFiles != null) && this.getAcceptedFiles().length >= this.options.maxFiles) {\n                    if (this.getAcceptedFiles().length === this.options.maxFiles) {\n                        this.emit('maxfilesreached', this.files);\n                    }\n                    return this.element.classList.add(\"dz-max-files-reached\");\n                } else {\n                    return this.element.classList.remove(\"dz-max-files-reached\");\n                }\n            };\n\n            Dropzone.prototype.drop = function(e) {\n                var files, items;\n                if (!e.dataTransfer) {\n                    return;\n                }\n                this.emit(\"drop\", e);\n                files = e.dataTransfer.files;\n                this.emit(\"addedfiles\", files);\n                if (files.length) {\n                    items = e.dataTransfer.items;\n                    if (items && items.length && (items[0].webkitGetAsEntry != null)) {\n                        this._addFilesFromItems(items);\n                    } else {\n                        this.handleFiles(files);\n                    }\n                }\n            };\n\n            Dropzone.prototype.paste = function(e) {\n                var items, _ref;\n                if ((e != null ? (_ref = e.clipboardData) != null ? _ref.items : void 0 : void 0) == null) {\n                    return;\n                }\n                this.emit(\"paste\", e);\n                items = e.clipboardData.items;\n                if (items.length) {\n                    return this._addFilesFromItems(items);\n                }\n            };\n\n            Dropzone.prototype.handleFiles = function(files) {\n                var file, _i, _len, _results;\n                _results = [];\n                for (_i = 0, _len = files.length; _i < _len; _i++) {\n                    file = files[_i];\n                    _results.push(this.addFile(file));\n                }\n                return _results;\n            };\n\n            Dropzone.prototype._addFilesFromItems = function(items) {\n                var entry, item, _i, _len, _results;\n                _results = [];\n                for (_i = 0, _len = items.length; _i < _len; _i++) {\n                    item = items[_i];\n                    if ((item.webkitGetAsEntry != null) && (entry = item.webkitGetAsEntry())) {\n                        if (entry.isFile) {\n                            _results.push(this.addFile(item.getAsFile()));\n                        } else if (entry.isDirectory) {\n                            _results.push(this._addFilesFromDirectory(entry, entry.name));\n                        } else {\n                            _results.push(void 0);\n                        }\n                    } else if (item.getAsFile != null) {\n                        if ((item.kind == null) || item.kind === \"file\") {\n                            _results.push(this.addFile(item.getAsFile()));\n                        } else {\n                            _results.push(void 0);\n                        }\n                    } else {\n                        _results.push(void 0);\n                    }\n                }\n                return _results;\n            };\n\n            Dropzone.prototype._addFilesFromDirectory = function(directory, path) {\n                var dirReader, entriesReader;\n                dirReader = directory.createReader();\n                entriesReader = (function(_this) {\n                    return function(entries) {\n                        var entry, _i, _len;\n                        for (_i = 0, _len = entries.length; _i < _len; _i++) {\n                            entry = entries[_i];\n                            if (entry.isFile) {\n                                entry.file(function(file) {\n                                    if (_this.options.ignoreHiddenFiles && file.name.substring(0, 1) === '.') {\n                                        return;\n                                    }\n                                    file.fullPath = \"\" + path + \"/\" + file.name;\n                                    return _this.addFile(file);\n                                });\n                            } else if (entry.isDirectory) {\n                                _this._addFilesFromDirectory(entry, \"\" + path + \"/\" + entry.name);\n                            }\n                        }\n                    };\n                })(this);\n                return dirReader.readEntries(entriesReader, function(error) {\n                    return typeof console !== \"undefined\" && console !== null ? typeof console.log === \"function\" ? console.log(error) : void 0 : void 0;\n                });\n            };\n\n            Dropzone.prototype.accept = function(file, done) {\n                if (file.size > this.options.maxFilesize * 1024 * 1024) {\n                    return done(this.options.dictFileTooBig.replace(\"{{filesize}}\", Math.round(file.size / 1024 / 10.24) / 100).replace(\"{{maxFilesize}}\", this.options.maxFilesize));\n                } else if (!Dropzone.isValidFile(file, this.options.acceptedFiles)) {\n                    return done(this.options.dictInvalidFileType);\n                } else if ((this.options.maxFiles != null) && this.getAcceptedFiles().length >= this.options.maxFiles) {\n                    done(this.options.dictMaxFilesExceeded.replace(\"{{maxFiles}}\", this.options.maxFiles));\n                    return this.emit(\"maxfilesexceeded\", file);\n                } else {\n                    return this.options.accept.call(this, file, done);\n                }\n            };\n\n            Dropzone.prototype.addFile = function(file) {\n                file.upload = {\n                    progress: 0,\n                    total: file.size,\n                    bytesSent: 0\n                };\n                this.files.push(file);\n                file.status = Dropzone.ADDED;\n                this.emit(\"addedfile\", file);\n                this._enqueueThumbnail(file);\n                return this.accept(file, (function(_this) {\n                    return function(error) {\n                        if (error) {\n                            file.accepted = false;\n                            _this._errorProcessing([file], error);\n                        } else {\n                            file.accepted = true;\n                            if (_this.options.autoQueue) {\n                                _this.enqueueFile(file);\n                            }\n                        }\n                        return _this._updateMaxFilesReachedClass();\n                    };\n                })(this));\n            };\n\n            Dropzone.prototype.enqueueFiles = function(files) {\n                var file, _i, _len;\n                for (_i = 0, _len = files.length; _i < _len; _i++) {\n                    file = files[_i];\n                    this.enqueueFile(file);\n                }\n                return null;\n            };\n\n            Dropzone.prototype.enqueueFile = function(file) {\n                if (file.status === Dropzone.ADDED && file.accepted === true) {\n                    file.status = Dropzone.QUEUED;\n                    if (this.options.autoProcessQueue) {\n                        return setTimeout(((function(_this) {\n                            return function() {\n                                return _this.processQueue();\n                            };\n                        })(this)), 0);\n                    }\n                } else {\n                    throw new Error(\"This file can't be queued because it has already been processed or was rejected.\");\n                }\n            };\n\n            Dropzone.prototype._thumbnailQueue = [];\n\n            Dropzone.prototype._processingThumbnail = false;\n\n            Dropzone.prototype._enqueueThumbnail = function(file) {\n                if (this.options.createImageThumbnails && file.type.match(/image.*/) && file.size <= this.options.maxThumbnailFilesize * 1024 * 1024) {\n                    this._thumbnailQueue.push(file);\n                    return setTimeout(((function(_this) {\n                        return function() {\n                            return _this._processThumbnailQueue();\n                        };\n                    })(this)), 0);\n                }\n            };\n\n            Dropzone.prototype._processThumbnailQueue = function() {\n                if (this._processingThumbnail || this._thumbnailQueue.length === 0) {\n                    return;\n                }\n                this._processingThumbnail = true;\n                return this.createThumbnail(this._thumbnailQueue.shift(), (function(_this) {\n                    return function() {\n                        _this._processingThumbnail = false;\n                        return _this._processThumbnailQueue();\n                    };\n                })(this));\n            };\n\n            Dropzone.prototype.removeFile = function(file) {\n                if (file.status === Dropzone.UPLOADING) {\n                    this.cancelUpload(file);\n                }\n                this.files = without(this.files, file);\n                this.emit(\"removedfile\", file);\n                if (this.files.length === 0) {\n                    return this.emit(\"reset\");\n                }\n            };\n\n            Dropzone.prototype.removeAllFiles = function(cancelIfNecessary) {\n                var file, _i, _len, _ref;\n                if (cancelIfNecessary == null) {\n                    cancelIfNecessary = false;\n                }\n                _ref = this.files.slice();\n                for (_i = 0, _len = _ref.length; _i < _len; _i++) {\n                    file = _ref[_i];\n                    if (file.status !== Dropzone.UPLOADING || cancelIfNecessary) {\n                        this.removeFile(file);\n                    }\n                }\n                return null;\n            };\n\n            Dropzone.prototype.createThumbnail = function(file, callback) {\n                var fileReader;\n                fileReader = new FileReader;\n                fileReader.onload = (function(_this) {\n                    return function() {\n                        if (file.type === \"image/svg+xml\") {\n                            _this.emit(\"thumbnail\", file, fileReader.result);\n                            if (callback != null) {\n                                callback();\n                            }\n                            return;\n                        }\n                        return _this.createThumbnailFromUrl(file, fileReader.result, callback);\n                    };\n                })(this);\n                return fileReader.readAsDataURL(file);\n            };\n\n            Dropzone.prototype.createThumbnailFromUrl = function(file, imageUrl, callback, crossOrigin) {\n                var img;\n                img = document.createElement(\"img\");\n                if (crossOrigin) {\n                    img.crossOrigin = crossOrigin;\n                }\n                img.onload = (function(_this) {\n                    return function() {\n                        var canvas, ctx, resizeInfo, thumbnail, _ref, _ref1, _ref2, _ref3;\n                        file.width = img.width;\n                        file.height = img.height;\n                        resizeInfo = _this.options.resize.call(_this, file);\n                        if (resizeInfo.trgWidth == null) {\n                            resizeInfo.trgWidth = resizeInfo.optWidth;\n                        }\n                        if (resizeInfo.trgHeight == null) {\n                            resizeInfo.trgHeight = resizeInfo.optHeight;\n                        }\n                        canvas = document.createElement(\"canvas\");\n                        ctx = canvas.getContext(\"2d\");\n                        canvas.width = resizeInfo.trgWidth;\n                        canvas.height = resizeInfo.trgHeight;\n                        drawImageIOSFix(ctx, img, (_ref = resizeInfo.srcX) != null ? _ref : 0, (_ref1 = resizeInfo.srcY) != null ? _ref1 : 0, resizeInfo.srcWidth, resizeInfo.srcHeight, (_ref2 = resizeInfo.trgX) != null ? _ref2 : 0, (_ref3 = resizeInfo.trgY) != null ? _ref3 : 0, resizeInfo.trgWidth, resizeInfo.trgHeight);\n                        thumbnail = canvas.toDataURL(\"image/png\");\n                        _this.emit(\"thumbnail\", file, thumbnail);\n                        if (callback != null) {\n                            return callback();\n                        }\n                    };\n                })(this);\n                if (callback != null) {\n                    img.onerror = callback;\n                }\n                return img.src = imageUrl;\n            };\n\n            Dropzone.prototype.processQueue = function() {\n                var i, parallelUploads, processingLength, queuedFiles;\n                parallelUploads = this.options.parallelUploads;\n                processingLength = this.getUploadingFiles().length;\n                i = processingLength;\n                if (processingLength >= parallelUploads) {\n                    return;\n                }\n                queuedFiles = this.getQueuedFiles();\n                if (!(queuedFiles.length > 0)) {\n                    return;\n                }\n                if (this.options.uploadMultiple) {\n                    return this.processFiles(queuedFiles.slice(0, parallelUploads - processingLength));\n                } else {\n                    while (i < parallelUploads) {\n                        if (!queuedFiles.length) {\n                            return;\n                        }\n                        this.processFile(queuedFiles.shift());\n                        i++;\n                    }\n                }\n            };\n\n            Dropzone.prototype.processFile = function(file) {\n                return this.processFiles([file]);\n            };\n\n            Dropzone.prototype.processFiles = function(files) {\n                var file, _i, _len;\n                for (_i = 0, _len = files.length; _i < _len; _i++) {\n                    file = files[_i];\n                    file.processing = true;\n                    file.status = Dropzone.UPLOADING;\n                    this.emit(\"processing\", file);\n                }\n                if (this.options.uploadMultiple) {\n                    this.emit(\"processingmultiple\", files);\n                }\n                return this.uploadFiles(files);\n            };\n\n            Dropzone.prototype._getFilesWithXhr = function(xhr) {\n                var file, files;\n                return files = (function() {\n                    var _i, _len, _ref, _results;\n                    _ref = this.files;\n                    _results = [];\n                    for (_i = 0, _len = _ref.length; _i < _len; _i++) {\n                        file = _ref[_i];\n                        if (file.xhr === xhr) {\n                            _results.push(file);\n                        }\n                    }\n                    return _results;\n                }).call(this);\n            };\n\n            Dropzone.prototype.cancelUpload = function(file) {\n                var groupedFile, groupedFiles, _i, _j, _len, _len1, _ref;\n                if (file.status === Dropzone.UPLOADING) {\n                    groupedFiles = this._getFilesWithXhr(file.xhr);\n                    for (_i = 0, _len = groupedFiles.length; _i < _len; _i++) {\n                        groupedFile = groupedFiles[_i];\n                        groupedFile.status = Dropzone.CANCELED;\n                    }\n                    file.xhr.abort();\n                    for (_j = 0, _len1 = groupedFiles.length; _j < _len1; _j++) {\n                        groupedFile = groupedFiles[_j];\n                        this.emit(\"canceled\", groupedFile);\n                    }\n                    if (this.options.uploadMultiple) {\n                        this.emit(\"canceledmultiple\", groupedFiles);\n                    }\n                } else if ((_ref = file.status) === Dropzone.ADDED || _ref === Dropzone.QUEUED) {\n                    file.status = Dropzone.CANCELED;\n                    this.emit(\"canceled\", file);\n                    if (this.options.uploadMultiple) {\n                        this.emit(\"canceledmultiple\", [file]);\n                    }\n                }\n                if (this.options.autoProcessQueue) {\n                    return this.processQueue();\n                }\n            };\n\n            resolveOption = function() {\n                var args, option;\n                option = arguments[0], args = 2 <= arguments.length ? __slice.call(arguments, 1) : [];\n                if (typeof option === 'function') {\n                    return option.apply(this, args);\n                }\n                return option;\n            };\n\n            Dropzone.prototype.uploadFile = function(file) {\n                return this.uploadFiles([file]);\n            };\n\n            Dropzone.prototype.uploadFiles = function(files) {\n                var file, formData, handleError, headerName, headerValue, headers, i, input, inputName, inputType, key, method, option, progressObj, response, updateProgress, url, value, xhr, _i, _j, _k, _l, _len, _len1, _len2, _len3, _m, _ref, _ref1, _ref2, _ref3, _ref4, _ref5;\n                xhr = new XMLHttpRequest();\n                for (_i = 0, _len = files.length; _i < _len; _i++) {\n                    file = files[_i];\n                    file.xhr = xhr;\n                }\n                method = resolveOption(this.options.method, files);\n                url = resolveOption(this.options.url, files);\n                xhr.open(method, url, true);\n                xhr.withCredentials = !!this.options.withCredentials;\n                response = null;\n                handleError = (function(_this) {\n                    return function() {\n                        var _j, _len1, _results;\n                        _results = [];\n                        for (_j = 0, _len1 = files.length; _j < _len1; _j++) {\n                            file = files[_j];\n                            _results.push(_this._errorProcessing(files, response || _this.options.dictResponseError.replace(\"{{statusCode}}\", xhr.status), xhr));\n                        }\n                        return _results;\n                    };\n                })(this);\n                updateProgress = (function(_this) {\n                    return function(e) {\n                        var allFilesFinished, progress, _j, _k, _l, _len1, _len2, _len3, _results;\n                        if (e != null) {\n                            progress = 100 * e.loaded / e.total;\n                            for (_j = 0, _len1 = files.length; _j < _len1; _j++) {\n                                file = files[_j];\n                                file.upload = {\n                                    progress: progress,\n                                    total: e.total,\n                                    bytesSent: e.loaded\n                                };\n                            }\n                        } else {\n                            allFilesFinished = true;\n                            progress = 100;\n                            for (_k = 0, _len2 = files.length; _k < _len2; _k++) {\n                                file = files[_k];\n                                if (!(file.upload.progress === 100 && file.upload.bytesSent === file.upload.total)) {\n                                    allFilesFinished = false;\n                                }\n                                file.upload.progress = progress;\n                                file.upload.bytesSent = file.upload.total;\n                            }\n                            if (allFilesFinished) {\n                                return;\n                            }\n                        }\n                        _results = [];\n                        for (_l = 0, _len3 = files.length; _l < _len3; _l++) {\n                            file = files[_l];\n                            _results.push(_this.emit(\"uploadprogress\", file, progress, file.upload.bytesSent));\n                        }\n                        return _results;\n                    };\n                })(this);\n                xhr.onload = (function(_this) {\n                    return function(e) {\n                        var _ref;\n                        if (files[0].status === Dropzone.CANCELED) {\n                            return;\n                        }\n                        if (xhr.readyState !== 4) {\n                            return;\n                        }\n                        response = xhr.responseText;\n                        if (xhr.getResponseHeader(\"content-type\") && ~xhr.getResponseHeader(\"content-type\").indexOf(\"application/json\")) {\n                            try {\n                                response = JSON.parse(response);\n                            } catch (_error) {\n                                e = _error;\n                                response = \"Invalid JSON response from server.\";\n                            }\n                        }\n                        updateProgress();\n                        if (!((200 <= (_ref = xhr.status) && _ref < 300))) {\n                            return handleError();\n                        } else {\n                            return _this._finished(files, response, e);\n                        }\n                    };\n                })(this);\n                xhr.onerror = (function(_this) {\n                    return function() {\n                        if (files[0].status === Dropzone.CANCELED) {\n                            return;\n                        }\n                        return handleError();\n                    };\n                })(this);\n                progressObj = (_ref = xhr.upload) != null ? _ref : xhr;\n                progressObj.onprogress = updateProgress;\n                headers = {\n                    \"Accept\": \"application/json\",\n                    \"Cache-Control\": \"no-cache\",\n                    \"X-Requested-With\": \"XMLHttpRequest\"\n                };\n                if (this.options.headers) {\n                    extend(headers, this.options.headers);\n                }\n                for (headerName in headers) {\n                    headerValue = headers[headerName];\n                    if (headerValue) {\n                        xhr.setRequestHeader(headerName, headerValue);\n                    }\n                }\n                formData = new FormData();\n                if (this.options.params) {\n                    _ref1 = this.options.params;\n                    for (key in _ref1) {\n                        value = _ref1[key];\n                        formData.append(key, value);\n                    }\n                }\n                for (_j = 0, _len1 = files.length; _j < _len1; _j++) {\n                    file = files[_j];\n                    this.emit(\"sending\", file, xhr, formData);\n                }\n                if (this.options.uploadMultiple) {\n                    this.emit(\"sendingmultiple\", files, xhr, formData);\n                }\n                if (this.element.tagName === \"FORM\") {\n                    _ref2 = this.element.querySelectorAll(\"input, textarea, select, button\");\n                    for (_k = 0, _len2 = _ref2.length; _k < _len2; _k++) {\n                        input = _ref2[_k];\n                        inputName = input.getAttribute(\"name\");\n                        inputType = input.getAttribute(\"type\");\n                        if (input.tagName === \"SELECT\" && input.hasAttribute(\"multiple\")) {\n                            _ref3 = input.options;\n                            for (_l = 0, _len3 = _ref3.length; _l < _len3; _l++) {\n                                option = _ref3[_l];\n                                if (option.selected) {\n                                    formData.append(inputName, option.value);\n                                }\n                            }\n                        } else if (!inputType || ((_ref4 = inputType.toLowerCase()) !== \"checkbox\" && _ref4 !== \"radio\") || input.checked) {\n                            formData.append(inputName, input.value);\n                        }\n                    }\n                }\n                for (i = _m = 0, _ref5 = files.length - 1; 0 <= _ref5 ? _m <= _ref5 : _m >= _ref5; i = 0 <= _ref5 ? ++_m : --_m) {\n                    formData.append(this._getParamName(i), files[i], files[i].name);\n                }\n                return this.submitRequest(xhr, formData, files);\n            };\n\n            Dropzone.prototype.submitRequest = function(xhr, formData, files) {\n                return xhr.send(formData);\n            };\n\n            Dropzone.prototype._finished = function(files, responseText, e) {\n                var file, _i, _len;\n                for (_i = 0, _len = files.length; _i < _len; _i++) {\n                    file = files[_i];\n                    file.status = Dropzone.SUCCESS;\n                    this.emit(\"success\", file, responseText, e);\n                    this.emit(\"complete\", file);\n                }\n                if (this.options.uploadMultiple) {\n                    this.emit(\"successmultiple\", files, responseText, e);\n                    this.emit(\"completemultiple\", files);\n                }\n                if (this.options.autoProcessQueue) {\n                    return this.processQueue();\n                }\n            };\n\n            Dropzone.prototype._errorProcessing = function(files, message, xhr) {\n                var file, _i, _len;\n                for (_i = 0, _len = files.length; _i < _len; _i++) {\n                    file = files[_i];\n                    file.status = Dropzone.ERROR;\n                    this.emit(\"error\", file, message, xhr);\n                    this.emit(\"complete\", file);\n                }\n                if (this.options.uploadMultiple) {\n                    this.emit(\"errormultiple\", files, message, xhr);\n                    this.emit(\"completemultiple\", files);\n                }\n                if (this.options.autoProcessQueue) {\n                    return this.processQueue();\n                }\n            };\n\n            return Dropzone;\n\n        })(Emitter);\n\n        Dropzone.version = \"4.2.0\";\n\n        Dropzone.options = {};\n\n        Dropzone.optionsForElement = function(element) {\n            if (element.getAttribute(\"id\")) {\n                return Dropzone.options[camelize(element.getAttribute(\"id\"))];\n            } else {\n                return void 0;\n            }\n        };\n\n        Dropzone.instances = [];\n\n        Dropzone.forElement = function(element) {\n            if (typeof element === \"string\") {\n                element = document.querySelector(element);\n            }\n            if ((element != null ? element.dropzone : void 0) == null) {\n                throw new Error(\"No Dropzone found for given element. This is probably because you're trying to access it before Dropzone had the time to initialize. Use the `init` option to setup any additional observers on your Dropzone.\");\n            }\n            return element.dropzone;\n        };\n\n        Dropzone.autoDiscover = true;\n\n        Dropzone.discover = function() {\n            var checkElements, dropzone, dropzones, _i, _len, _results;\n            if (document.querySelectorAll) {\n                dropzones = document.querySelectorAll(\".dropzone\");\n            } else {\n                dropzones = [];\n                checkElements = function(elements) {\n                    var el, _i, _len, _results;\n                    _results = [];\n                    for (_i = 0, _len = elements.length; _i < _len; _i++) {\n                        el = elements[_i];\n                        if (/(^| )dropzone($| )/.test(el.className)) {\n                            _results.push(dropzones.push(el));\n                        } else {\n                            _results.push(void 0);\n                        }\n                    }\n                    return _results;\n                };\n                checkElements(document.getElementsByTagName(\"div\"));\n                checkElements(document.getElementsByTagName(\"form\"));\n            }\n            _results = [];\n            for (_i = 0, _len = dropzones.length; _i < _len; _i++) {\n                dropzone = dropzones[_i];\n                if (Dropzone.optionsForElement(dropzone) !== false) {\n                    _results.push(new Dropzone(dropzone));\n                } else {\n                    _results.push(void 0);\n                }\n            }\n            return _results;\n        };\n\n        Dropzone.blacklistedBrowsers = [/opera.*Macintosh.*version\\/12/i];\n\n        Dropzone.isBrowserSupported = function() {\n            var capableBrowser, regex, _i, _len, _ref;\n            capableBrowser = true;\n            if (window.File && window.FileReader && window.FileList && window.Blob && window.FormData && document.querySelector) {\n                if (!(\"classList\" in document.createElement(\"a\"))) {\n                    capableBrowser = false;\n                } else {\n                    _ref = Dropzone.blacklistedBrowsers;\n                    for (_i = 0, _len = _ref.length; _i < _len; _i++) {\n                        regex = _ref[_i];\n                        if (regex.test(navigator.userAgent)) {\n                            capableBrowser = false;\n                            continue;\n                        }\n                    }\n                }\n            } else {\n                capableBrowser = false;\n            }\n            return capableBrowser;\n        };\n\n        without = function(list, rejectedItem) {\n            var item, _i, _len, _results;\n            _results = [];\n            for (_i = 0, _len = list.length; _i < _len; _i++) {\n                item = list[_i];\n                if (item !== rejectedItem) {\n                    _results.push(item);\n                }\n            }\n            return _results;\n        };\n\n        camelize = function(str) {\n            return str.replace(/[\\-_](\\w)/g, function(match) {\n                return match.charAt(1).toUpperCase();\n            });\n        };\n\n        Dropzone.createElement = function(string) {\n            var div;\n            div = document.createElement(\"div\");\n            div.innerHTML = string;\n            return div.childNodes[0];\n        };\n\n        Dropzone.elementInside = function(element, container) {\n            if (element === container) {\n                return true;\n            }\n            while (element = element.parentNode) {\n                if (element === container) {\n                    return true;\n                }\n            }\n            return false;\n        };\n\n        Dropzone.getElement = function(el, name) {\n            var element;\n            if (typeof el === \"string\") {\n                element = document.querySelector(el);\n            } else if (el.nodeType != null) {\n                element = el;\n            }\n            if (element == null) {\n                throw new Error(\"Invalid `\" + name + \"` option provided. Please provide a CSS selector or a plain HTML element.\");\n            }\n            return element;\n        };\n\n        Dropzone.getElements = function(els, name) {\n            var e, el, elements, _i, _j, _len, _len1, _ref;\n            if (els instanceof Array) {\n                elements = [];\n                try {\n                    for (_i = 0, _len = els.length; _i < _len; _i++) {\n                        el = els[_i];\n                        elements.push(this.getElement(el, name));\n                    }\n                } catch (_error) {\n                    e = _error;\n                    elements = null;\n                }\n            } else if (typeof els === \"string\") {\n                elements = [];\n                _ref = document.querySelectorAll(els);\n                for (_j = 0, _len1 = _ref.length; _j < _len1; _j++) {\n                    el = _ref[_j];\n                    elements.push(el);\n                }\n            } else if (els.nodeType != null) {\n                elements = [els];\n            }\n            if (!((elements != null) && elements.length)) {\n                throw new Error(\"Invalid `\" + name + \"` option provided. Please provide a CSS selector, a plain HTML element or a list of those.\");\n            }\n            return elements;\n        };\n\n        Dropzone.confirm = function(question, accepted, rejected) {\n            if (window.confirm(question)) {\n                return accepted();\n            } else if (rejected != null) {\n                return rejected();\n            }\n        };\n\n        Dropzone.isValidFile = function(file, acceptedFiles) {\n            var baseMimeType, mimeType, validType, _i, _len;\n            if (!acceptedFiles) {\n                return true;\n            }\n            acceptedFiles = acceptedFiles.split(\",\");\n            mimeType = file.type;\n            baseMimeType = mimeType.replace(/\\/.*$/, \"\");\n            for (_i = 0, _len = acceptedFiles.length; _i < _len; _i++) {\n                validType = acceptedFiles[_i];\n                validType = validType.trim();\n                if (validType.charAt(0) === \".\") {\n                    if (file.name.toLowerCase().indexOf(validType.toLowerCase(), file.name.length - validType.length) !== -1) {\n                        return true;\n                    }\n                } else if (/\\/\\*$/.test(validType)) {\n                    if (baseMimeType === validType.replace(/\\/.*$/, \"\")) {\n                        return true;\n                    }\n                } else {\n                    if (mimeType === validType) {\n                        return true;\n                    }\n                }\n            }\n            return false;\n        };\n\n        if (typeof jQuery !== \"undefined\" && jQuery !== null) {\n            jQuery.fn.dropzone = function(options) {\n                return this.each(function() {\n                    return new Dropzone(this, options);\n                });\n            };\n        }\n\n        if (typeof module !== \"undefined\" && module !== null) {\n            module.exports = Dropzone;\n        } else {\n            window.Dropzone = Dropzone;\n        }\n\n        Dropzone.ADDED = \"added\";\n\n        Dropzone.QUEUED = \"queued\";\n\n        Dropzone.ACCEPTED = Dropzone.QUEUED;\n\n        Dropzone.UPLOADING = \"uploading\";\n\n        Dropzone.PROCESSING = Dropzone.UPLOADING;\n\n        Dropzone.CANCELED = \"canceled\";\n\n        Dropzone.ERROR = \"error\";\n\n        Dropzone.SUCCESS = \"success\";\n\n\n        /*\n\n         Bugfix for iOS 6 and 7\n         Source: http://stackoverflow.com/questions/11929099/html5-canvas-drawimage-ratio-bug-ios\n         based on the work of https://github.com/stomita/ios-imagefile-megapixel\n         */\n\n        detectVerticalSquash = function(img) {\n            var alpha, canvas, ctx, data, ey, ih, iw, py, ratio, sy;\n            iw = img.naturalWidth;\n            ih = img.naturalHeight;\n            canvas = document.createElement(\"canvas\");\n            canvas.width = 1;\n            canvas.height = ih;\n            ctx = canvas.getContext(\"2d\");\n            ctx.drawImage(img, 0, 0);\n            data = ctx.getImageData(0, 0, 1, ih).data;\n            sy = 0;\n            ey = ih;\n            py = ih;\n            while (py > sy) {\n                alpha = data[(py - 1) * 4 + 3];\n                if (alpha === 0) {\n                    ey = py;\n                } else {\n                    sy = py;\n                }\n                py = (ey + sy) >> 1;\n            }\n            ratio = py / ih;\n            if (ratio === 0) {\n                return 1;\n            } else {\n                return ratio;\n            }\n        };\n\n        drawImageIOSFix = function(ctx, img, sx, sy, sw, sh, dx, dy, dw, dh) {\n            var vertSquashRatio;\n            vertSquashRatio = detectVerticalSquash(img);\n            return ctx.drawImage(img, sx, sy, sw, sh, dx, dy, dw, dh / vertSquashRatio);\n        };\n\n\n        /*\n         * contentloaded.js\n         *\n         * Author: Diego Perini (diego.perini at gmail.com)\n         * Summary: cross-browser wrapper for DOMContentLoaded\n         * Updated: 20101020\n         * License: MIT\n         * Version: 1.2\n         *\n         * URL:\n         * http://javascript.nwbox.com/ContentLoaded/\n         * http://javascript.nwbox.com/ContentLoaded/MIT-LICENSE\n         */\n\n        contentLoaded = function(win, fn) {\n            var add, doc, done, init, poll, pre, rem, root, top;\n            done = false;\n            top = true;\n            doc = win.document;\n            root = doc.documentElement;\n            add = (doc.addEventListener ? \"addEventListener\" : \"attachEvent\");\n            rem = (doc.addEventListener ? \"removeEventListener\" : \"detachEvent\");\n            pre = (doc.addEventListener ? \"\" : \"on\");\n            init = function(e) {\n                if (e.type === \"readystatechange\" && doc.readyState !== \"complete\") {\n                    return;\n                }\n                (e.type === \"load\" ? win : doc)[rem](pre + e.type, init, false);\n                if (!done && (done = true)) {\n                    return fn.call(win, e.type || e);\n                }\n            };\n            poll = function() {\n                var e;\n                try {\n                    root.doScroll(\"left\");\n                } catch (_error) {\n                    e = _error;\n                    setTimeout(poll, 50);\n                    return;\n                }\n                return init(\"poll\");\n            };\n            if (doc.readyState !== \"complete\") {\n                if (doc.createEventObject && root.doScroll) {\n                    try {\n                        top = !win.frameElement;\n                    } catch (_error) {}\n                    if (top) {\n                        poll();\n                    }\n                }\n                doc[add](pre + \"DOMContentLoaded\", init, false);\n                doc[add](pre + \"readystatechange\", init, false);\n                return win[add](pre + \"load\", init, false);\n            }\n        };\n\n        Dropzone._autoDiscoverFunction = function() {\n            if (Dropzone.autoDiscover) {\n                return Dropzone.discover();\n            }\n        };\n\n        contentLoaded(window, Dropzone._autoDiscoverFunction);\n\n    }).call(this);\n\n    return module.exports;\n}));","Magento_PageBuilder/js/resource/dropzone/knockout-dropzone.js":"/**\n * Copyright \u00a9 Magento, Inc. All rights reserved.\n * See COPYING.txt for license details.\n */\n\n/*eslint-disable vars-on-top, strict*/\n\n(function (factory) {\n    if (typeof define === 'function' && define.amd) {\n        // AMD anonymous module\n        define(['knockout', 'jquery', 'Magento_PageBuilder/js/resource/dropzone/dropzone', 'mage/translate'], factory);\n    } else if (typeof require === 'function' && typeof exports === 'object' && typeof module === 'object') {\n        // CommonJS module\n        var ko = require('knockout'),\n            jQuery = require('jquery'),\n            Dropzone = require('Magento_PageBuilder/js/resource/dropzone/dropzone'),\n            translate = require('mage/translate');\n\n        factory(ko, jQuery, Dropzone, translate);\n    } else {\n        // No module loader (plain <script> tag) - put directly in global namespace\n        factory(window.ko, window.jQuery, window.Dropzone, window.translate);\n    }\n})(function (ko, jQuery, Dropzone, $t) {\n\n    // Create a new sortable Knockout binding\n    ko.bindingHandlers.dropzone = {\n\n        /**\n         * Init the dropzone element\n         *\n         * @param element\n         * @param valueAccessor\n         */\n        init: function (element, valueAccessor) {\n            var value = ko.unwrap(valueAccessor()),\n                originalSuccess = value.success,\n                options = {\n                    uploadMultiple: false,\n                    createImageThumbnails: false,\n                    addRemoveLinks: false,\n                    dictDefaultMessage: $t('Drop files here, or click to upload'),\n                    init: function () {\n                        // Add the current formKey into the request\n                        this.on('sending', function (file, xhr, formData) {\n                            formData.append('form_key', FORM_KEY);\n                        });\n                    },\n                    success: function (file, response) {\n                        return originalSuccess.call(this, file, response, value.bindKey);\n                    }\n                };\n\n            // Delete the success value\n            delete value.success;\n\n            // Extend the options with the values provided\n            jQuery.extend(options, value);\n\n            jQuery(element).addClass('dropzone');\n            new Dropzone(element, options);\n        }\n\n    };\n});","Magento_PageBuilder/js/resource/babel/polyfill.min.js":"!function e(t,n,r){function s(o,u){if(!n[o]){if(!t[o]){var c=\"function\"==typeof require&&require;if(!u&&c)return c(o,!0);if(i)return i(o,!0);var a=new Error(\"Cannot find module '\"+o+\"'\");throw a.code=\"MODULE_NOT_FOUND\",a}var f=n[o]={exports:{}};t[o][0].call(f.exports,function(n){var r=t[o][1][n];return s(r||n)},f,f.exports,e,t,n,r)}return n[o].exports}for(var i=\"function\"==typeof require&&require,o=0;o<r.length;o++)s(r[o]);return s}({1:[function(t,n,r){(function(n){\"use strict\";function define(t,n,e){t[n]||Object[r](t,n,{writable:!0,configurable:!0,value:e})}if(t(327),t(328),t(2),n._babelPolyfill)throw new Error(\"only one instance of babel-polyfill is allowed\");n._babelPolyfill=!0;var r=\"defineProperty\";define(String.prototype,\"padLeft\",\"\".padStart),define(String.prototype,\"padRight\",\"\".padEnd),\"pop,reverse,shift,keys,values,entries,indexOf,every,some,forEach,map,filter,find,findIndex,includes,join,slice,concat,push,splice,unshift,sort,lastIndexOf,reduce,reduceRight,copyWithin,fill\".split(\",\").forEach(function(t){[][t]&&define(Array,t,Function.call.bind([][t]))})}).call(this,\"undefined\"!=typeof global?global:\"undefined\"!=typeof self?self:\"undefined\"!=typeof window?window:{})},{2:2,327:327,328:328}],2:[function(t,n,r){t(130),n.exports=t(23).RegExp.escape},{130:130,23:23}],3:[function(t,n,r){n.exports=function(t){if(\"function\"!=typeof t)throw TypeError(t+\" is not a function!\");return t}},{}],4:[function(t,n,r){var e=t(18);n.exports=function(t,n){if(\"number\"!=typeof t&&\"Number\"!=e(t))throw TypeError(n);return+t}},{18:18}],5:[function(t,n,r){var e=t(128)(\"unscopables\"),i=Array.prototype;void 0==i[e]&&t(42)(i,e,{}),n.exports=function(t){i[e][t]=!0}},{128:128,42:42}],6:[function(t,n,r){n.exports=function(t,n,r,e){if(!(t instanceof n)||void 0!==e&&e in t)throw TypeError(r+\": incorrect invocation!\");return t}},{}],7:[function(t,n,r){var e=t(51);n.exports=function(t){if(!e(t))throw TypeError(t+\" is not an object!\");return t}},{51:51}],8:[function(t,n,r){\"use strict\";var e=t(119),i=t(114),o=t(118);n.exports=[].copyWithin||function copyWithin(t,n){var r=e(this),u=o(r.length),c=i(t,u),a=i(n,u),f=arguments.length>2?arguments[2]:void 0,s=Math.min((void 0===f?u:i(f,u))-a,u-c),l=1;for(a<c&&c<a+s&&(l=-1,a+=s-1,c+=s-1);s-- >0;)a in r?r[c]=r[a]:delete r[c],c+=l,a+=l;return r}},{114:114,118:118,119:119}],9:[function(t,n,r){\"use strict\";var e=t(119),i=t(114),o=t(118);n.exports=function fill(t){for(var n=e(this),r=o(n.length),u=arguments.length,c=i(u>1?arguments[1]:void 0,r),a=u>2?arguments[2]:void 0,f=void 0===a?r:i(a,r);f>c;)n[c++]=t;return n}},{114:114,118:118,119:119}],10:[function(t,n,r){var e=t(39);n.exports=function(t,n){var r=[];return e(t,!1,r.push,r,n),r}},{39:39}],11:[function(t,n,r){var e=t(117),i=t(118),o=t(114);n.exports=function(t){return function(n,r,u){var c,a=e(n),f=i(a.length),s=o(u,f);if(t&&r!=r){for(;f>s;)if((c=a[s++])!=c)return!0}else for(;f>s;s++)if((t||s in a)&&a[s]===r)return t||s||0;return!t&&-1}}},{114:114,117:117,118:118}],12:[function(t,n,r){var e=t(25),i=t(47),o=t(119),u=t(118),c=t(15);n.exports=function(t,n){var r=1==t,a=2==t,f=3==t,s=4==t,l=6==t,h=5==t||l,v=n||c;return function(n,c,p){for(var d,y,g=o(n),m=i(g),b=e(c,p,3),x=u(m.length),S=0,w=r?v(n,x):a?v(n,0):void 0;x>S;S++)if((h||S in m)&&(d=m[S],y=b(d,S,g),t))if(r)w[S]=y;else if(y)switch(t){case 3:return!0;case 5:return d;case 6:return S;case 2:w.push(d)}else if(s)return!1;return l?-1:f||s?s:w}}},{118:118,119:119,15:15,25:25,47:47}],13:[function(t,n,r){var e=t(3),i=t(119),o=t(47),u=t(118);n.exports=function(t,n,r,c,a){e(n);var f=i(t),s=o(f),l=u(f.length),h=a?l-1:0,v=a?-1:1;if(r<2)for(;;){if(h in s){c=s[h],h+=v;break}if(h+=v,a?h<0:l<=h)throw TypeError(\"Reduce of empty array with no initial value\")}for(;a?h>=0:l>h;h+=v)h in s&&(c=n(c,s[h],h,f));return c}},{118:118,119:119,3:3,47:47}],14:[function(t,n,r){var e=t(51),i=t(49),o=t(128)(\"species\");n.exports=function(t){var n;return i(t)&&(n=t.constructor,\"function\"!=typeof n||n!==Array&&!i(n.prototype)||(n=void 0),e(n)&&null===(n=n[o])&&(n=void 0)),void 0===n?Array:n}},{128:128,49:49,51:51}],15:[function(t,n,r){var e=t(14);n.exports=function(t,n){return new(e(t))(n)}},{14:14}],16:[function(t,n,r){\"use strict\";var e=t(3),i=t(51),o=t(46),u=[].slice,c={},a=function(t,n,r){if(!(n in c)){for(var e=[],i=0;i<n;i++)e[i]=\"a[\"+i+\"]\";c[n]=Function(\"F,a\",\"return new F(\"+e.join(\",\")+\")\")}return c[n](t,r)};n.exports=Function.bind||function bind(t){var n=e(this),r=u.call(arguments,1),c=function(){var e=r.concat(u.call(arguments));return this instanceof c?a(n,e.length,e):o(n,e,t)};return i(n.prototype)&&(c.prototype=n.prototype),c}},{3:3,46:46,51:51}],17:[function(t,n,r){var e=t(18),i=t(128)(\"toStringTag\"),o=\"Arguments\"==e(function(){return arguments}()),u=function(t,n){try{return t[n]}catch(t){}};n.exports=function(t){var n,r,c;return void 0===t?\"Undefined\":null===t?\"Null\":\"string\"==typeof(r=u(n=Object(t),i))?r:o?e(n):\"Object\"==(c=e(n))&&\"function\"==typeof n.callee?\"Arguments\":c}},{128:128,18:18}],18:[function(t,n,r){var e={}.toString;n.exports=function(t){return e.call(t).slice(8,-1)}},{}],19:[function(t,n,r){\"use strict\";var e=t(72).f,i=t(71),o=t(93),u=t(25),c=t(6),a=t(39),f=t(55),s=t(57),l=t(100),h=t(29),v=t(66).fastKey,p=t(125),d=h?\"_s\":\"size\",y=function(t,n){var r,e=v(n);if(\"F\"!==e)return t._i[e];for(r=t._f;r;r=r.n)if(r.k==n)return r};n.exports={getConstructor:function(t,n,r,f){var s=t(function(t,e){c(t,s,n,\"_i\"),t._t=n,t._i=i(null),t._f=void 0,t._l=void 0,t[d]=0,void 0!=e&&a(e,r,t[f],t)});return o(s.prototype,{clear:function clear(){for(var t=p(this,n),r=t._i,e=t._f;e;e=e.n)e.r=!0,e.p&&(e.p=e.p.n=void 0),delete r[e.i];t._f=t._l=void 0,t[d]=0},delete:function(t){var r=p(this,n),e=y(r,t);if(e){var i=e.n,o=e.p;delete r._i[e.i],e.r=!0,o&&(o.n=i),i&&(i.p=o),r._f==e&&(r._f=i),r._l==e&&(r._l=o),r[d]--}return!!e},forEach:function forEach(t){p(this,n);for(var r,e=u(t,arguments.length>1?arguments[1]:void 0,3);r=r?r.n:this._f;)for(e(r.v,r.k,this);r&&r.r;)r=r.p},has:function has(t){return!!y(p(this,n),t)}}),h&&e(s.prototype,\"size\",{get:function(){return p(this,n)[d]}}),s},def:function(t,n,r){var e,i,o=y(t,n);return o?o.v=r:(t._l=o={i:i=v(n,!0),k:n,v:r,p:e=t._l,n:void 0,r:!1},t._f||(t._f=o),e&&(e.n=o),t[d]++,\"F\"!==i&&(t._i[i]=o)),t},getEntry:y,setStrong:function(t,n,r){f(t,n,function(t,r){this._t=p(t,n),this._k=r,this._l=void 0},function(){for(var t=this,n=t._k,r=t._l;r&&r.r;)r=r.p;return t._t&&(t._l=r=r?r.n:t._t._f)?\"keys\"==n?s(0,r.k):\"values\"==n?s(0,r.v):s(0,[r.k,r.v]):(t._t=void 0,s(1))},r?\"entries\":\"values\",!r,!0),l(n)}}},{100:100,125:125,25:25,29:29,39:39,55:55,57:57,6:6,66:66,71:71,72:72,93:93}],20:[function(t,n,r){var e=t(17),i=t(10);n.exports=function(t){return function toJSON(){if(e(this)!=t)throw TypeError(t+\"#toJSON isn't generic\");return i(this)}}},{10:10,17:17}],21:[function(t,n,r){\"use strict\";var e=t(93),i=t(66).getWeak,o=t(7),u=t(51),c=t(6),a=t(39),f=t(12),s=t(41),l=t(125),h=f(5),v=f(6),p=0,d=function(t){return t._l||(t._l=new y)},y=function(){this.a=[]},g=function(t,n){return h(t.a,function(t){return t[0]===n})};y.prototype={get:function(t){var n=g(this,t);if(n)return n[1]},has:function(t){return!!g(this,t)},set:function(t,n){var r=g(this,t);r?r[1]=n:this.a.push([t,n])},delete:function(t){var n=v(this.a,function(n){return n[0]===t});return~n&&this.a.splice(n,1),!!~n}},n.exports={getConstructor:function(t,n,r,o){var f=t(function(t,e){c(t,f,n,\"_i\"),t._t=n,t._i=p++,t._l=void 0,void 0!=e&&a(e,r,t[o],t)});return e(f.prototype,{delete:function(t){if(!u(t))return!1;var r=i(t);return!0===r?d(l(this,n)).delete(t):r&&s(r,this._i)&&delete r[this._i]},has:function has(t){if(!u(t))return!1;var r=i(t);return!0===r?d(l(this,n)).has(t):r&&s(r,this._i)}}),f},def:function(t,n,r){var e=i(o(n),!0);return!0===e?d(t).set(n,r):e[t._i]=r,t},ufstore:d}},{12:12,125:125,39:39,41:41,51:51,6:6,66:66,7:7,93:93}],22:[function(t,n,r){\"use strict\";var e=t(40),i=t(33),o=t(94),u=t(93),c=t(66),a=t(39),f=t(6),s=t(51),l=t(35),h=t(56),v=t(101),p=t(45);n.exports=function(t,n,r,d,y,g){var m=e[t],b=m,x=y?\"set\":\"add\",S=b&&b.prototype,w={},_=function(t){var n=S[t];o(S,t,\"delete\"==t?function(t){return!(g&&!s(t))&&n.call(this,0===t?0:t)}:\"has\"==t?function has(t){return!(g&&!s(t))&&n.call(this,0===t?0:t)}:\"get\"==t?function get(t){return g&&!s(t)?void 0:n.call(this,0===t?0:t)}:\"add\"==t?function add(t){return n.call(this,0===t?0:t),this}:function set(t,r){return n.call(this,0===t?0:t,r),this})};if(\"function\"==typeof b&&(g||S.forEach&&!l(function(){(new b).entries().next()}))){var E=new b,O=E[x](g?{}:-0,1)!=E,P=l(function(){E.has(1)}),M=h(function(t){new b(t)}),F=!g&&l(function(){for(var t=new b,n=5;n--;)t[x](n,n);return!t.has(-0)});M||(b=n(function(n,r){f(n,b,t);var e=p(new m,n,b);return void 0!=r&&a(r,y,e[x],e),e}),b.prototype=S,S.constructor=b),(P||F)&&(_(\"delete\"),_(\"has\"),y&&_(\"get\")),(F||O)&&_(x),g&&S.clear&&delete S.clear}else b=d.getConstructor(n,t,y,x),u(b.prototype,r),c.NEED=!0;return v(b,t),w[t]=b,i(i.G+i.W+i.F*(b!=m),w),g||d.setStrong(b,t,y),b}},{101:101,33:33,35:35,39:39,40:40,45:45,51:51,56:56,6:6,66:66,93:93,94:94}],23:[function(t,n,r){var e=n.exports={version:\"2.5.0\"};\"number\"==typeof __e&&(__e=e)},{}],24:[function(t,n,r){\"use strict\";var e=t(72),i=t(92);n.exports=function(t,n,r){n in t?e.f(t,n,i(0,r)):t[n]=r}},{72:72,92:92}],25:[function(t,n,r){var e=t(3);n.exports=function(t,n,r){if(e(t),void 0===n)return t;switch(r){case 1:return function(r){return t.call(n,r)};case 2:return function(r,e){return t.call(n,r,e)};case 3:return function(r,e,i){return t.call(n,r,e,i)}}return function(){return t.apply(n,arguments)}}},{3:3}],26:[function(t,n,r){\"use strict\";var e=t(35),i=Date.prototype.getTime,o=Date.prototype.toISOString,u=function(t){return t>9?t:\"0\"+t};n.exports=e(function(){return\"0385-07-25T07:06:39.999Z\"!=o.call(new Date(-5e13-1))})||!e(function(){o.call(new Date(NaN))})?function toISOString(){if(!isFinite(i.call(this)))throw RangeError(\"Invalid time value\");var t=this,n=t.getUTCFullYear(),r=t.getUTCMilliseconds(),e=n<0?\"-\":n>9999?\"+\":\"\";return e+(\"00000\"+Math.abs(n)).slice(e?-6:-4)+\"-\"+u(t.getUTCMonth()+1)+\"-\"+u(t.getUTCDate())+\"T\"+u(t.getUTCHours())+\":\"+u(t.getUTCMinutes())+\":\"+u(t.getUTCSeconds())+\".\"+(r>99?r:\"0\"+u(r))+\"Z\"}:o},{35:35}],27:[function(t,n,r){\"use strict\";var e=t(7),i=t(120);n.exports=function(t){if(\"string\"!==t&&\"number\"!==t&&\"default\"!==t)throw TypeError(\"Incorrect hint\");return i(e(this),\"number\"!=t)}},{120:120,7:7}],28:[function(t,n,r){n.exports=function(t){if(void 0==t)throw TypeError(\"Can't call method on  \"+t);return t}},{}],29:[function(t,n,r){n.exports=!t(35)(function(){return 7!=Object.defineProperty({},\"a\",{get:function(){return 7}}).a})},{35:35}],30:[function(t,n,r){var e=t(51),i=t(40).document,o=e(i)&&e(i.createElement);n.exports=function(t){return o?i.createElement(t):{}}},{40:40,51:51}],31:[function(t,n,r){n.exports=\"constructor,hasOwnProperty,isPrototypeOf,propertyIsEnumerable,toLocaleString,toString,valueOf\".split(\",\")},{}],32:[function(t,n,r){var e=t(81),i=t(78),o=t(82);n.exports=function(t){var n=e(t),r=i.f;if(r)for(var u,c=r(t),a=o.f,f=0;c.length>f;)a.call(t,u=c[f++])&&n.push(u);return n}},{78:78,81:81,82:82}],33:[function(t,n,r){var e=t(40),i=t(23),o=t(42),u=t(94),c=t(25),a=function(t,n,r){var f,s,l,h,v=t&a.F,p=t&a.G,d=t&a.S,y=t&a.P,g=t&a.B,m=p?e:d?e[n]||(e[n]={}):(e[n]||{}).prototype,b=p?i:i[n]||(i[n]={}),x=b.prototype||(b.prototype={});p&&(r=n);for(f in r)s=!v&&m&&void 0!==m[f],l=(s?m:r)[f],h=g&&s?c(l,e):y&&\"function\"==typeof l?c(Function.call,l):l,m&&u(m,f,l,t&a.U),b[f]!=l&&o(b,f,h),y&&x[f]!=l&&(x[f]=l)};e.core=i,a.F=1,a.G=2,a.S=4,a.P=8,a.B=16,a.W=32,a.U=64,a.R=128,n.exports=a},{23:23,25:25,40:40,42:42,94:94}],34:[function(t,n,r){var e=t(128)(\"match\");n.exports=function(t){var n=/./;try{\"/./\"[t](n)}catch(r){try{return n[e]=!1,!\"/./\"[t](n)}catch(t){}}return!0}},{128:128}],35:[function(t,n,r){n.exports=function(t){try{return!!t()}catch(t){return!0}}},{}],36:[function(t,n,r){\"use strict\";var e=t(42),i=t(94),o=t(35),u=t(28),c=t(128);n.exports=function(t,n,r){var a=c(t),f=r(u,a,\"\"[t]),s=f[0],l=f[1];o(function(){var n={};return n[a]=function(){return 7},7!=\"\"[t](n)})&&(i(String.prototype,t,s),e(RegExp.prototype,a,2==n?function(t,n){return l.call(t,this,n)}:function(t){return l.call(t,this)}))}},{128:128,28:28,35:35,42:42,94:94}],37:[function(t,n,r){\"use strict\";var e=t(7);n.exports=function(){var t=e(this),n=\"\";return t.global&&(n+=\"g\"),t.ignoreCase&&(n+=\"i\"),t.multiline&&(n+=\"m\"),t.unicode&&(n+=\"u\"),t.sticky&&(n+=\"y\"),n}},{7:7}],38:[function(t,n,r){\"use strict\";function flattenIntoArray(t,n,r,a,f,s,l,h){for(var v,p,d=f,y=0,g=!!l&&u(l,h,3);y<a;){if(y in r){if(v=g?g(r[y],y,n):r[y],p=!1,i(v)&&(p=v[c],p=void 0!==p?!!p:e(v)),p&&s>0)d=flattenIntoArray(t,n,v,o(v.length),d,s-1)-1;else{if(d>=9007199254740991)throw TypeError();t[d]=v}d++}y++}return d}var e=t(49),i=t(51),o=t(118),u=t(25),c=t(128)(\"isConcatSpreadable\");n.exports=flattenIntoArray},{118:118,128:128,25:25,49:49,51:51}],39:[function(t,n,r){var e=t(25),i=t(53),o=t(48),u=t(7),c=t(118),a=t(129),f={},s={},r=n.exports=function(t,n,r,l,h){var v,p,d,y,g=h?function(){return t}:a(t),m=e(r,l,n?2:1),b=0;if(\"function\"!=typeof g)throw TypeError(t+\" is not iterable!\");if(o(g)){for(v=c(t.length);v>b;b++)if((y=n?m(u(p=t[b])[0],p[1]):m(t[b]))===f||y===s)return y}else for(d=g.call(t);!(p=d.next()).done;)if((y=i(d,m,p.value,n))===f||y===s)return y};r.BREAK=f,r.RETURN=s},{118:118,129:129,25:25,48:48,53:53,7:7}],40:[function(t,n,r){var e=n.exports=\"undefined\"!=typeof window&&window.Math==Math?window:\"undefined\"!=typeof self&&self.Math==Math?self:Function(\"return this\")();\"number\"==typeof __g&&(__g=e)},{}],41:[function(t,n,r){var e={}.hasOwnProperty;n.exports=function(t,n){return e.call(t,n)}},{}],42:[function(t,n,r){var e=t(72),i=t(92);n.exports=t(29)?function(t,n,r){return e.f(t,n,i(1,r))}:function(t,n,r){return t[n]=r,t}},{29:29,72:72,92:92}],43:[function(t,n,r){var e=t(40).document;n.exports=e&&e.documentElement},{40:40}],44:[function(t,n,r){n.exports=!t(29)&&!t(35)(function(){return 7!=Object.defineProperty(t(30)(\"div\"),\"a\",{get:function(){return 7}}).a})},{29:29,30:30,35:35}],45:[function(t,n,r){var e=t(51),i=t(99).set;n.exports=function(t,n,r){var o,u=n.constructor;return u!==r&&\"function\"==typeof u&&(o=u.prototype)!==r.prototype&&e(o)&&i&&i(t,o),t}},{51:51,99:99}],46:[function(t,n,r){n.exports=function(t,n,r){var e=void 0===r;switch(n.length){case 0:return e?t():t.call(r);case 1:return e?t(n[0]):t.call(r,n[0]);case 2:return e?t(n[0],n[1]):t.call(r,n[0],n[1]);case 3:return e?t(n[0],n[1],n[2]):t.call(r,n[0],n[1],n[2]);case 4:return e?t(n[0],n[1],n[2],n[3]):t.call(r,n[0],n[1],n[2],n[3])}return t.apply(r,n)}},{}],47:[function(t,n,r){var e=t(18);n.exports=Object(\"z\").propertyIsEnumerable(0)?Object:function(t){return\"String\"==e(t)?t.split(\"\"):Object(t)}},{18:18}],48:[function(t,n,r){var e=t(58),i=t(128)(\"iterator\"),o=Array.prototype;n.exports=function(t){return void 0!==t&&(e.Array===t||o[i]===t)}},{128:128,58:58}],49:[function(t,n,r){var e=t(18);n.exports=Array.isArray||function isArray(t){return\"Array\"==e(t)}},{18:18}],50:[function(t,n,r){var e=t(51),i=Math.floor;n.exports=function isInteger(t){return!e(t)&&isFinite(t)&&i(t)===t}},{51:51}],51:[function(t,n,r){n.exports=function(t){return\"object\"==typeof t?null!==t:\"function\"==typeof t}},{}],52:[function(t,n,r){var e=t(51),i=t(18),o=t(128)(\"match\");n.exports=function(t){var n;return e(t)&&(void 0!==(n=t[o])?!!n:\"RegExp\"==i(t))}},{128:128,18:18,51:51}],53:[function(t,n,r){var e=t(7);n.exports=function(t,n,r,i){try{return i?n(e(r)[0],r[1]):n(r)}catch(n){var o=t.return;throw void 0!==o&&e(o.call(t)),n}}},{7:7}],54:[function(t,n,r){\"use strict\";var e=t(71),i=t(92),o=t(101),u={};t(42)(u,t(128)(\"iterator\"),function(){return this}),n.exports=function(t,n,r){t.prototype=e(u,{next:i(1,r)}),o(t,n+\" Iterator\")}},{101:101,128:128,42:42,71:71,92:92}],55:[function(t,n,r){\"use strict\";var e=t(60),i=t(33),o=t(94),u=t(42),c=t(41),a=t(58),f=t(54),s=t(101),l=t(79),h=t(128)(\"iterator\"),v=!([].keys&&\"next\"in[].keys()),p=function(){return this};n.exports=function(t,n,r,d,y,g,m){f(r,n,d);var b,x,S,w=function(t){if(!v&&t in P)return P[t];switch(t){case\"keys\":return function keys(){return new r(this,t)};case\"values\":return function values(){return new r(this,t)}}return function entries(){return new r(this,t)}},_=n+\" Iterator\",E=\"values\"==y,O=!1,P=t.prototype,M=P[h]||P[\"@@iterator\"]||y&&P[y],F=M||w(y),I=y?E?w(\"entries\"):F:void 0,A=\"Array\"==n?P.entries||M:M;if(A&&(S=l(A.call(new t)))!==Object.prototype&&S.next&&(s(S,_,!0),e||c(S,h)||u(S,h,p)),E&&M&&\"values\"!==M.name&&(O=!0,F=function values(){return M.call(this)}),e&&!m||!v&&!O&&P[h]||u(P,h,F),a[n]=F,a[_]=p,y)if(b={values:E?F:w(\"values\"),keys:g?F:w(\"keys\"),entries:I},m)for(x in b)x in P||o(P,x,b[x]);else i(i.P+i.F*(v||O),n,b);return b}},{101:101,128:128,33:33,41:41,42:42,54:54,58:58,60:60,79:79,94:94}],56:[function(t,n,r){var e=t(128)(\"iterator\"),i=!1;try{var o=[7][e]();o.return=function(){i=!0},Array.from(o,function(){throw 2})}catch(t){}n.exports=function(t,n){if(!n&&!i)return!1;var r=!1;try{var o=[7],u=o[e]();u.next=function(){return{done:r=!0}},o[e]=function(){return u},t(o)}catch(t){}return r}},{128:128}],57:[function(t,n,r){n.exports=function(t,n){return{value:n,done:!!t}}},{}],58:[function(t,n,r){n.exports={}},{}],59:[function(t,n,r){var e=t(81),i=t(117);n.exports=function(t,n){for(var r,o=i(t),u=e(o),c=u.length,a=0;c>a;)if(o[r=u[a++]]===n)return r}},{117:117,81:81}],60:[function(t,n,r){n.exports=!1},{}],61:[function(t,n,r){var e=Math.expm1;n.exports=!e||e(10)>22025.465794806718||e(10)<22025.465794806718||-2e-17!=e(-2e-17)?function expm1(t){return 0==(t=+t)?t:t>-1e-6&&t<1e-6?t+t*t/2:Math.exp(t)-1}:e},{}],62:[function(t,n,r){var e=t(65),i=Math.pow,o=i(2,-52),u=i(2,-23),c=i(2,127)*(2-u),a=i(2,-126),f=function(t){return t+1/o-1/o};n.exports=Math.fround||function fround(t){var n,r,i=Math.abs(t),s=e(t);return i<a?s*f(i/a/u)*a*u:(n=(1+u/o)*i,r=n-(n-i),r>c||r!=r?s*(1/0):s*r)}},{65:65}],63:[function(t,n,r){n.exports=Math.log1p||function log1p(t){return(t=+t)>-1e-8&&t<1e-8?t-t*t/2:Math.log(1+t)}},{}],64:[function(t,n,r){n.exports=Math.scale||function scale(t,n,r,e,i){return 0===arguments.length||t!=t||n!=n||r!=r||e!=e||i!=i?NaN:t===1/0||t===-1/0?t:(t-n)*(i-e)/(r-n)+e}},{}],65:[function(t,n,r){n.exports=Math.sign||function sign(t){return 0==(t=+t)||t!=t?t:t<0?-1:1}},{}],66:[function(t,n,r){var e=t(124)(\"meta\"),i=t(51),o=t(41),u=t(72).f,c=0,a=Object.isExtensible||function(){return!0},f=!t(35)(function(){return a(Object.preventExtensions({}))}),s=function(t){u(t,e,{value:{i:\"O\"+ ++c,w:{}}})},l=function(t,n){if(!i(t))return\"symbol\"==typeof t?t:(\"string\"==typeof t?\"S\":\"P\")+t;if(!o(t,e)){if(!a(t))return\"F\";if(!n)return\"E\";s(t)}return t[e].i},h=function(t,n){if(!o(t,e)){if(!a(t))return!0;if(!n)return!1;s(t)}return t[e].w},v=function(t){return f&&p.NEED&&a(t)&&!o(t,e)&&s(t),t},p=n.exports={KEY:e,NEED:!1,fastKey:l,getWeak:h,onFreeze:v}},{124:124,35:35,41:41,51:51,72:72}],67:[function(t,n,r){var e=t(160),i=t(33),o=t(103)(\"metadata\"),u=o.store||(o.store=new(t(266))),c=function(t,n,r){var i=u.get(t);if(!i){if(!r)return;u.set(t,i=new e)}var o=i.get(n);if(!o){if(!r)return;i.set(n,o=new e)}return o},a=function(t,n,r){var e=c(n,r,!1);return void 0!==e&&e.has(t)},f=function(t,n,r){var e=c(n,r,!1);return void 0===e?void 0:e.get(t)},s=function(t,n,r,e){c(r,e,!0).set(t,n)},l=function(t,n){var r=c(t,n,!1),e=[];return r&&r.forEach(function(t,n){e.push(n)}),e},h=function(t){return void 0===t||\"symbol\"==typeof t?t:String(t)},v=function(t){i(i.S,\"Reflect\",t)};n.exports={store:u,map:c,has:a,get:f,set:s,keys:l,key:h,exp:v}},{103:103,160:160,266:266,33:33}],68:[function(t,n,r){var e=t(40),i=t(113).set,o=e.MutationObserver||e.WebKitMutationObserver,u=e.process,c=e.Promise,a=\"process\"==t(18)(u);n.exports=function(){var t,n,r,f=function(){var e,i;for(a&&(e=u.domain)&&e.exit();t;){i=t.fn,t=t.next;try{i()}catch(e){throw t?r():n=void 0,e}}n=void 0,e&&e.enter()};if(a)r=function(){u.nextTick(f)};else if(o){var s=!0,l=document.createTextNode(\"\");new o(f).observe(l,{characterData:!0}),r=function(){l.data=s=!s}}else if(c&&c.resolve){var h=c.resolve();r=function(){h.then(f)}}else r=function(){i.call(e,f)};return function(e){var i={fn:e,next:void 0};n&&(n.next=i),t||(t=i,r()),n=i}}},{113:113,18:18,40:40}],69:[function(t,n,r){\"use strict\";function PromiseCapability(t){var n,r;this.promise=new t(function(t,e){if(void 0!==n||void 0!==r)throw TypeError(\"Bad Promise constructor\");n=t,r=e}),this.resolve=e(n),this.reject=e(r)}var e=t(3);n.exports.f=function(t){return new PromiseCapability(t)}},{3:3}],70:[function(t,n,r){\"use strict\";var e=t(81),i=t(78),o=t(82),u=t(119),c=t(47),a=Object.assign;n.exports=!a||t(35)(function(){var t={},n={},r=Symbol(),e=\"abcdefghijklmnopqrst\";return t[r]=7,e.split(\"\").forEach(function(t){n[t]=t}),7!=a({},t)[r]||Object.keys(a({},n)).join(\"\")!=e})?function assign(t,n){for(var r=u(t),a=arguments.length,f=1,s=i.f,l=o.f;a>f;)for(var h,v=c(arguments[f++]),p=s?e(v).concat(s(v)):e(v),d=p.length,y=0;d>y;)l.call(v,h=p[y++])&&(r[h]=v[h]);return r}:a},{119:119,35:35,47:47,78:78,81:81,82:82}],71:[function(t,n,r){var e=t(7),i=t(73),o=t(31),u=t(102)(\"IE_PROTO\"),c=function(){},a=function(){var n,r=t(30)(\"iframe\"),e=o.length;for(r.style.display=\"none\",t(43).appendChild(r),r.src=\"javascript:\",n=r.contentWindow.document,n.open(),n.write(\"<script>document.F=Object<\\/script>\"),n.close(),a=n.F;e--;)delete a.prototype[o[e]];return a()};n.exports=Object.create||function create(t,n){var r;return null!==t?(c.prototype=e(t),r=new c,c.prototype=null,r[u]=t):r=a(),void 0===n?r:i(r,n)}},{102:102,30:30,31:31,43:43,7:7,73:73}],72:[function(t,n,r){var e=t(7),i=t(44),o=t(120),u=Object.defineProperty;r.f=t(29)?Object.defineProperty:function defineProperty(t,n,r){if(e(t),n=o(n,!0),e(r),i)try{return u(t,n,r)}catch(t){}if(\"get\"in r||\"set\"in r)throw TypeError(\"Accessors not supported!\");return\"value\"in r&&(t[n]=r.value),t}},{120:120,29:29,44:44,7:7}],73:[function(t,n,r){var e=t(72),i=t(7),o=t(81);n.exports=t(29)?Object.defineProperties:function defineProperties(t,n){i(t);for(var r,u=o(n),c=u.length,a=0;c>a;)e.f(t,r=u[a++],n[r]);return t}},{29:29,7:7,72:72,81:81}],74:[function(t,n,r){\"use strict\";n.exports=t(60)||!t(35)(function(){var n=Math.random();__defineSetter__.call(null,n,function(){}),delete t(40)[n]})},{35:35,40:40,60:60}],75:[function(t,n,r){var e=t(82),i=t(92),o=t(117),u=t(120),c=t(41),a=t(44),f=Object.getOwnPropertyDescriptor;r.f=t(29)?f:function getOwnPropertyDescriptor(t,n){if(t=o(t),n=u(n,!0),a)try{return f(t,n)}catch(t){}if(c(t,n))return i(!e.f.call(t,n),t[n])}},{117:117,120:120,29:29,41:41,44:44,82:82,92:92}],76:[function(t,n,r){var e=t(117),i=t(77).f,o={}.toString,u=\"object\"==typeof window&&window&&Object.getOwnPropertyNames?Object.getOwnPropertyNames(window):[],c=function(t){try{return i(t)}catch(t){return u.slice()}};n.exports.f=function getOwnPropertyNames(t){return u&&\"[object Window]\"==o.call(t)?c(t):i(e(t))}},{117:117,77:77}],77:[function(t,n,r){var e=t(80),i=t(31).concat(\"length\",\"prototype\");r.f=Object.getOwnPropertyNames||function getOwnPropertyNames(t){return e(t,i)}},{31:31,80:80}],78:[function(t,n,r){r.f=Object.getOwnPropertySymbols},{}],79:[function(t,n,r){var e=t(41),i=t(119),o=t(102)(\"IE_PROTO\"),u=Object.prototype;n.exports=Object.getPrototypeOf||function(t){return t=i(t),e(t,o)?t[o]:\"function\"==typeof t.constructor&&t instanceof t.constructor?t.constructor.prototype:t instanceof Object?u:null}},{102:102,119:119,41:41}],80:[function(t,n,r){var e=t(41),i=t(117),o=t(11)(!1),u=t(102)(\"IE_PROTO\");n.exports=function(t,n){var r,c=i(t),a=0,f=[];for(r in c)r!=u&&e(c,r)&&f.push(r);for(;n.length>a;)e(c,r=n[a++])&&(~o(f,r)||f.push(r));return f}},{102:102,11:11,117:117,41:41}],81:[function(t,n,r){var e=t(80),i=t(31);n.exports=Object.keys||function keys(t){return e(t,i)}},{31:31,80:80}],82:[function(t,n,r){r.f={}.propertyIsEnumerable},{}],83:[function(t,n,r){var e=t(33),i=t(23),o=t(35);n.exports=function(t,n){var r=(i.Object||{})[t]||Object[t],u={};u[t]=n(r),e(e.S+e.F*o(function(){r(1)}),\"Object\",u)}},{23:23,33:33,35:35}],84:[function(t,n,r){var e=t(81),i=t(117),o=t(82).f;n.exports=function(t){return function(n){for(var r,u=i(n),c=e(u),a=c.length,f=0,s=[];a>f;)o.call(u,r=c[f++])&&s.push(t?[r,u[r]]:u[r]);return s}}},{117:117,81:81,82:82}],85:[function(t,n,r){var e=t(77),i=t(78),o=t(7),u=t(40).Reflect;n.exports=u&&u.ownKeys||function ownKeys(t){var n=e.f(o(t)),r=i.f;return r?n.concat(r(t)):n}},{40:40,7:7,77:77,78:78}],86:[function(t,n,r){var e=t(40).parseFloat,i=t(111).trim;n.exports=1/e(t(112)+\"-0\")!=-1/0?function parseFloat(t){var n=i(String(t),3),r=e(n);return 0===r&&\"-\"==n.charAt(0)?-0:r}:e},{111:111,112:112,40:40}],87:[function(t,n,r){var e=t(40).parseInt,i=t(111).trim,o=t(112),u=/^[-+]?0[xX]/;n.exports=8!==e(o+\"08\")||22!==e(o+\"0x16\")?function parseInt(t,n){var r=i(String(t),3);return e(r,n>>>0||(u.test(r)?16:10))}:e},{111:111,112:112,40:40}],88:[function(t,n,r){\"use strict\";var e=t(89),i=t(46),o=t(3);n.exports=function(){for(var t=o(this),n=arguments.length,r=Array(n),u=0,c=e._,a=!1;n>u;)(r[u]=arguments[u++])===c&&(a=!0);return function(){var e,o=this,u=arguments.length,f=0,s=0;if(!a&&!u)return i(t,r,o);if(e=r.slice(),a)for(;n>f;f++)e[f]===c&&(e[f]=arguments[s++]);for(;u>s;)e.push(arguments[s++]);return i(t,e,o)}}},{3:3,46:46,89:89}],89:[function(t,n,r){n.exports=t(40)},{40:40}],90:[function(t,n,r){n.exports=function(t){try{return{e:!1,v:t()}}catch(t){return{e:!0,v:t}}}},{}],91:[function(t,n,r){var e=t(69);n.exports=function(t,n){var r=e.f(t);return(0,r.resolve)(n),r.promise}},{69:69}],92:[function(t,n,r){n.exports=function(t,n){return{enumerable:!(1&t),configurable:!(2&t),writable:!(4&t),value:n}}},{}],93:[function(t,n,r){var e=t(94);n.exports=function(t,n,r){for(var i in n)e(t,i,n[i],r);return t}},{94:94}],94:[function(t,n,r){var e=t(40),i=t(42),o=t(41),u=t(124)(\"src\"),c=Function.toString,a=(\"\"+c).split(\"toString\");t(23).inspectSource=function(t){return c.call(t)},(n.exports=function(t,n,r,c){var f=\"function\"==typeof r;f&&(o(r,\"name\")||i(r,\"name\",n)),t[n]!==r&&(f&&(o(r,u)||i(r,u,t[n]?\"\"+t[n]:a.join(String(n)))),t===e?t[n]=r:c?t[n]?t[n]=r:i(t,n,r):(delete t[n],i(t,n,r)))})(Function.prototype,\"toString\",function toString(){return\"function\"==typeof this&&this[u]||c.call(this)})},{124:124,23:23,40:40,41:41,42:42}],95:[function(t,n,r){n.exports=function(t,n){var r=n===Object(n)?function(t){return n[t]}:n;return function(n){return String(n).replace(t,r)}}},{}],96:[function(t,n,r){n.exports=Object.is||function is(t,n){return t===n?0!==t||1/t==1/n:t!=t&&n!=n}},{}],97:[function(t,n,r){\"use strict\";var e=t(33),i=t(3),o=t(25),u=t(39);n.exports=function(t){e(e.S,t,{from:function from(t){var n,r,e,c,a=arguments[1];return i(this),n=void 0!==a,n&&i(a),void 0==t?new this:(r=[],n?(e=0,c=o(a,arguments[2],2),u(t,!1,function(t){r.push(c(t,e++))})):u(t,!1,r.push,r),new this(r))}})}},{25:25,3:3,33:33,39:39}],98:[function(t,n,r){\"use strict\";var e=t(33);n.exports=function(t){e(e.S,t,{of:function of(){for(var t=arguments.length,n=Array(t);t--;)n[t]=arguments[t];return new this(n)}})}},{33:33}],99:[function(t,n,r){var e=t(51),i=t(7),o=function(t,n){if(i(t),!e(n)&&null!==n)throw TypeError(n+\": can't set as prototype!\")};n.exports={set:Object.setPrototypeOf||(\"__proto__\"in{}?function(n,r,e){try{e=t(25)(Function.call,t(75).f(Object.prototype,\"__proto__\").set,2),e(n,[]),r=!(n instanceof Array)}catch(t){r=!0}return function setPrototypeOf(t,n){return o(t,n),r?t.__proto__=n:e(t,n),t}}({},!1):void 0),check:o}},{25:25,51:51,7:7,75:75}],100:[function(t,n,r){\"use strict\";var e=t(40),i=t(72),o=t(29),u=t(128)(\"species\");n.exports=function(t){var n=e[t];o&&n&&!n[u]&&i.f(n,u,{configurable:!0,get:function(){return this}})}},{128:128,29:29,40:40,72:72}],101:[function(t,n,r){var e=t(72).f,i=t(41),o=t(128)(\"toStringTag\");n.exports=function(t,n,r){t&&!i(t=r?t:t.prototype,o)&&e(t,o,{configurable:!0,value:n})}},{128:128,41:41,72:72}],102:[function(t,n,r){var e=t(103)(\"keys\"),i=t(124);n.exports=function(t){return e[t]||(e[t]=i(t))}},{103:103,124:124}],103:[function(t,n,r){var e=t(40),i=e[\"__core-js_shared__\"]||(e[\"__core-js_shared__\"]={});n.exports=function(t){return i[t]||(i[t]={})}},{40:40}],104:[function(t,n,r){var e=t(7),i=t(3),o=t(128)(\"species\");n.exports=function(t,n){var r,u=e(t).constructor;return void 0===u||void 0==(r=e(u)[o])?n:i(r)}},{128:128,3:3,7:7}],105:[function(t,n,r){\"use strict\";var e=t(35);n.exports=function(t,n){return!!t&&e(function(){n?t.call(null,function(){},1):t.call(null)})}},{35:35}],106:[function(t,n,r){var e=t(116),i=t(28);n.exports=function(t){return function(n,r){var o,u,c=String(i(n)),a=e(r),f=c.length;return a<0||a>=f?t?\"\":void 0:(o=c.charCodeAt(a),o<55296||o>56319||a+1===f||(u=c.charCodeAt(a+1))<56320||u>57343?t?c.charAt(a):o:t?c.slice(a,a+2):u-56320+(o-55296<<10)+65536)}}},{116:116,28:28}],107:[function(t,n,r){var e=t(52),i=t(28);n.exports=function(t,n,r){if(e(n))throw TypeError(\"String#\"+r+\" doesn't accept regex!\");return String(i(t))}},{28:28,52:52}],108:[function(t,n,r){var e=t(33),i=t(35),o=t(28),u=/\"/g,c=function(t,n,r,e){var i=String(o(t)),c=\"<\"+n;return\"\"!==r&&(c+=\" \"+r+'=\"'+String(e).replace(u,\"&quot;\")+'\"'),c+\">\"+i+\"</\"+n+\">\"};n.exports=function(t,n){var r={};r[t]=n(c),e(e.P+e.F*i(function(){var n=\"\"[t]('\"');return n!==n.toLowerCase()||n.split('\"').length>3}),\"String\",r)}},{28:28,33:33,35:35}],109:[function(t,n,r){var e=t(118),i=t(110),o=t(28);n.exports=function(t,n,r,u){var c=String(o(t)),a=c.length,f=void 0===r?\" \":String(r),s=e(n);if(s<=a||\"\"==f)return c;var l=s-a,h=i.call(f,Math.ceil(l/f.length));return h.length>l&&(h=h.slice(0,l)),u?h+c:c+h}},{110:110,118:118,28:28}],110:[function(t,n,r){\"use strict\";var e=t(116),i=t(28);n.exports=function repeat(t){var n=String(i(this)),r=\"\",o=e(t);if(o<0||o==1/0)throw RangeError(\"Count can't be negative\");for(;o>0;(o>>>=1)&&(n+=n))1&o&&(r+=n);return r}},{116:116,28:28}],111:[function(t,n,r){var e=t(33),i=t(28),o=t(35),u=t(112),c=\"[\"+u+\"]\",a=\"\u200b\u0085\",f=RegExp(\"^\"+c+c+\"*\"),s=RegExp(c+c+\"*$\"),l=function(t,n,r){var i={},c=o(function(){return!!u[t]()||a[t]()!=a}),f=i[t]=c?n(h):u[t];r&&(i[r]=f),e(e.P+e.F*c,\"String\",i)},h=l.trim=function(t,n){return t=String(i(t)),1&n&&(t=t.replace(f,\"\")),2&n&&(t=t.replace(s,\"\")),t};n.exports=l},{112:112,28:28,33:33,35:35}],112:[function(t,n,r){n.exports=\"\\t\\n\\v\\f\\r \u00a0\u1680\u180e\u2000\u2001\u2002\u2003\u2004\u2005\u2006\u2007\u2008\u2009\u200a\u202f\u205f\u3000\\u2028\\u2029\\ufeff\"},{}],113:[function(t,n,r){var e,i,o,u=t(25),c=t(46),a=t(43),f=t(30),s=t(40),l=s.process,h=s.setImmediate,v=s.clearImmediate,p=s.MessageChannel,d=s.Dispatch,y=0,g={},m=function(){var t=+this;if(g.hasOwnProperty(t)){var n=g[t];delete g[t],n()}},b=function(t){m.call(t.data)};h&&v||(h=function setImmediate(t){for(var n=[],r=1;arguments.length>r;)n.push(arguments[r++]);return g[++y]=function(){c(\"function\"==typeof t?t:Function(t),n)},e(y),y},v=function clearImmediate(t){delete g[t]},\"process\"==t(18)(l)?e=function(t){l.nextTick(u(m,t,1))}:d&&d.now?e=function(t){d.now(u(m,t,1))}:p?(i=new p,o=i.port2,i.port1.onmessage=b,e=u(o.postMessage,o,1)):s.addEventListener&&\"function\"==typeof postMessage&&!s.importScripts?(e=function(t){s.postMessage(t+\"\",\"*\")},s.addEventListener(\"message\",b,!1)):e=\"onreadystatechange\"in f(\"script\")?function(t){a.appendChild(f(\"script\")).onreadystatechange=function(){a.removeChild(this),m.call(t)}}:function(t){setTimeout(u(m,t,1),0)}),n.exports={set:h,clear:v}},{18:18,25:25,30:30,40:40,43:43,46:46}],114:[function(t,n,r){var e=t(116),i=Math.max,o=Math.min;n.exports=function(t,n){return t=e(t),t<0?i(t+n,0):o(t,n)}},{116:116}],115:[function(t,n,r){var e=t(116),i=t(118);n.exports=function(t){if(void 0===t)return 0;var n=e(t),r=i(n);if(n!==r)throw RangeError(\"Wrong length!\");return r}},{116:116,118:118}],116:[function(t,n,r){var e=Math.ceil,i=Math.floor;n.exports=function(t){return isNaN(t=+t)?0:(t>0?i:e)(t)}},{}],117:[function(t,n,r){var e=t(47),i=t(28);n.exports=function(t){return e(i(t))}},{28:28,47:47}],118:[function(t,n,r){var e=t(116),i=Math.min;n.exports=function(t){return t>0?i(e(t),9007199254740991):0}},{116:116}],\n119:[function(t,n,r){var e=t(28);n.exports=function(t){return Object(e(t))}},{28:28}],120:[function(t,n,r){var e=t(51);n.exports=function(t,n){if(!e(t))return t;var r,i;if(n&&\"function\"==typeof(r=t.toString)&&!e(i=r.call(t)))return i;if(\"function\"==typeof(r=t.valueOf)&&!e(i=r.call(t)))return i;if(!n&&\"function\"==typeof(r=t.toString)&&!e(i=r.call(t)))return i;throw TypeError(\"Can't convert object to primitive value\")}},{51:51}],121:[function(t,n,r){\"use strict\";if(t(29)){var e=t(60),i=t(40),o=t(35),u=t(33),c=t(123),a=t(122),f=t(25),s=t(6),l=t(92),h=t(42),v=t(93),p=t(116),d=t(118),y=t(115),g=t(114),m=t(120),b=t(41),x=t(17),S=t(51),w=t(119),_=t(48),E=t(71),O=t(79),P=t(77).f,M=t(129),F=t(124),I=t(128),A=t(12),k=t(11),N=t(104),j=t(141),T=t(58),R=t(56),L=t(100),G=t(9),D=t(8),C=t(72),W=t(75),U=C.f,B=W.f,V=i.RangeError,z=i.TypeError,q=i.Uint8Array,K=Array.prototype,Y=a.ArrayBuffer,J=a.DataView,H=A(0),X=A(2),$=A(3),Z=A(4),Q=A(5),tt=A(6),nt=k(!0),rt=k(!1),et=j.values,it=j.keys,ot=j.entries,ut=K.lastIndexOf,ct=K.reduce,at=K.reduceRight,ft=K.join,st=K.sort,lt=K.slice,ht=K.toString,vt=K.toLocaleString,pt=I(\"iterator\"),dt=I(\"toStringTag\"),yt=F(\"typed_constructor\"),gt=F(\"def_constructor\"),mt=c.CONSTR,bt=c.TYPED,xt=c.VIEW,St=A(1,function(t,n){return Pt(N(t,t[gt]),n)}),wt=o(function(){return 1===new q(new Uint16Array([1]).buffer)[0]}),_t=!!q&&!!q.prototype.set&&o(function(){new q(1).set({})}),Et=function(t,n){var r=p(t);if(r<0||r%n)throw V(\"Wrong offset!\");return r},Ot=function(t){if(S(t)&&bt in t)return t;throw z(t+\" is not a typed array!\")},Pt=function(t,n){if(!(S(t)&&yt in t))throw z(\"It is not a typed array constructor!\");return new t(n)},Mt=function(t,n){return Ft(N(t,t[gt]),n)},Ft=function(t,n){for(var r=0,e=n.length,i=Pt(t,e);e>r;)i[r]=n[r++];return i},It=function(t,n,r){U(t,n,{get:function(){return this._d[r]}})},At=function from(t){var n,r,e,i,o,u,c=w(t),a=arguments.length,s=a>1?arguments[1]:void 0,l=void 0!==s,h=M(c);if(void 0!=h&&!_(h)){for(u=h.call(c),e=[],n=0;!(o=u.next()).done;n++)e.push(o.value);c=e}for(l&&a>2&&(s=f(s,arguments[2],2)),n=0,r=d(c.length),i=Pt(this,r);r>n;n++)i[n]=l?s(c[n],n):c[n];return i},kt=function of(){for(var t=0,n=arguments.length,r=Pt(this,n);n>t;)r[t]=arguments[t++];return r},Nt=!!q&&o(function(){vt.call(new q(1))}),jt=function toLocaleString(){return vt.apply(Nt?lt.call(Ot(this)):Ot(this),arguments)},Tt={copyWithin:function copyWithin(t,n){return D.call(Ot(this),t,n,arguments.length>2?arguments[2]:void 0)},every:function every(t){return Z(Ot(this),t,arguments.length>1?arguments[1]:void 0)},fill:function fill(t){return G.apply(Ot(this),arguments)},filter:function filter(t){return Mt(this,X(Ot(this),t,arguments.length>1?arguments[1]:void 0))},find:function find(t){return Q(Ot(this),t,arguments.length>1?arguments[1]:void 0)},findIndex:function findIndex(t){return tt(Ot(this),t,arguments.length>1?arguments[1]:void 0)},forEach:function forEach(t){H(Ot(this),t,arguments.length>1?arguments[1]:void 0)},indexOf:function indexOf(t){return rt(Ot(this),t,arguments.length>1?arguments[1]:void 0)},includes:function includes(t){return nt(Ot(this),t,arguments.length>1?arguments[1]:void 0)},join:function join(t){return ft.apply(Ot(this),arguments)},lastIndexOf:function lastIndexOf(t){return ut.apply(Ot(this),arguments)},map:function map(t){return St(Ot(this),t,arguments.length>1?arguments[1]:void 0)},reduce:function reduce(t){return ct.apply(Ot(this),arguments)},reduceRight:function reduceRight(t){return at.apply(Ot(this),arguments)},reverse:function reverse(){for(var t,n=this,r=Ot(n).length,e=Math.floor(r/2),i=0;i<e;)t=n[i],n[i++]=n[--r],n[r]=t;return n},some:function some(t){return $(Ot(this),t,arguments.length>1?arguments[1]:void 0)},sort:function sort(t){return st.call(Ot(this),t)},subarray:function subarray(t,n){var r=Ot(this),e=r.length,i=g(t,e);return new(N(r,r[gt]))(r.buffer,r.byteOffset+i*r.BYTES_PER_ELEMENT,d((void 0===n?e:g(n,e))-i))}},Rt=function slice(t,n){return Mt(this,lt.call(Ot(this),t,n))},Lt=function set(t){Ot(this);var n=Et(arguments[1],1),r=this.length,e=w(t),i=d(e.length),o=0;if(i+n>r)throw V(\"Wrong length!\");for(;o<i;)this[n+o]=e[o++]},Gt={entries:function entries(){return ot.call(Ot(this))},keys:function keys(){return it.call(Ot(this))},values:function values(){return et.call(Ot(this))}},Dt=function(t,n){return S(t)&&t[bt]&&\"symbol\"!=typeof n&&n in t&&String(+n)==String(n)},Ct=function getOwnPropertyDescriptor(t,n){return Dt(t,n=m(n,!0))?l(2,t[n]):B(t,n)},Wt=function defineProperty(t,n,r){return!(Dt(t,n=m(n,!0))&&S(r)&&b(r,\"value\"))||b(r,\"get\")||b(r,\"set\")||r.configurable||b(r,\"writable\")&&!r.writable||b(r,\"enumerable\")&&!r.enumerable?U(t,n,r):(t[n]=r.value,t)};mt||(W.f=Ct,C.f=Wt),u(u.S+u.F*!mt,\"Object\",{getOwnPropertyDescriptor:Ct,defineProperty:Wt}),o(function(){ht.call({})})&&(ht=vt=function toString(){return ft.call(this)});var Ut=v({},Tt);v(Ut,Gt),h(Ut,pt,Gt.values),v(Ut,{slice:Rt,set:Lt,constructor:function(){},toString:ht,toLocaleString:jt}),It(Ut,\"buffer\",\"b\"),It(Ut,\"byteOffset\",\"o\"),It(Ut,\"byteLength\",\"l\"),It(Ut,\"length\",\"e\"),U(Ut,dt,{get:function(){return this[bt]}}),n.exports=function(t,n,r,a){a=!!a;var f=t+(a?\"Clamped\":\"\")+\"Array\",l=\"get\"+t,v=\"set\"+t,p=i[f],g=p||{},m=p&&O(p),b=!p||!c.ABV,w={},_=p&&p.prototype,M=function(t,r){var e=t._d;return e.v[l](r*n+e.o,wt)},F=function(t,r,e){var i=t._d;a&&(e=(e=Math.round(e))<0?0:e>255?255:255&e),i.v[v](r*n+i.o,e,wt)},I=function(t,n){U(t,n,{get:function(){return M(this,n)},set:function(t){return F(this,n,t)},enumerable:!0})};b?(p=r(function(t,r,e,i){s(t,p,f,\"_d\");var o,u,c,a,l=0,v=0;if(S(r)){if(!(r instanceof Y||\"ArrayBuffer\"==(a=x(r))||\"SharedArrayBuffer\"==a))return bt in r?Ft(p,r):At.call(p,r);o=r,v=Et(e,n);var g=r.byteLength;if(void 0===i){if(g%n)throw V(\"Wrong length!\");if((u=g-v)<0)throw V(\"Wrong length!\")}else if((u=d(i)*n)+v>g)throw V(\"Wrong length!\");c=u/n}else c=y(r),u=c*n,o=new Y(u);for(h(t,\"_d\",{b:o,o:v,l:u,e:c,v:new J(o)});l<c;)I(t,l++)}),_=p.prototype=E(Ut),h(_,\"constructor\",p)):o(function(){p(1)})&&o(function(){new p(-1)})&&R(function(t){new p,new p(null),new p(1.5),new p(t)},!0)||(p=r(function(t,r,e,i){s(t,p,f);var o;return S(r)?r instanceof Y||\"ArrayBuffer\"==(o=x(r))||\"SharedArrayBuffer\"==o?void 0!==i?new g(r,Et(e,n),i):void 0!==e?new g(r,Et(e,n)):new g(r):bt in r?Ft(p,r):At.call(p,r):new g(y(r))}),H(m!==Function.prototype?P(g).concat(P(m)):P(g),function(t){t in p||h(p,t,g[t])}),p.prototype=_,e||(_.constructor=p));var A=_[pt],k=!!A&&(\"values\"==A.name||void 0==A.name),N=Gt.values;h(p,yt,!0),h(_,bt,f),h(_,xt,!0),h(_,gt,p),(a?new p(1)[dt]==f:dt in _)||U(_,dt,{get:function(){return f}}),w[f]=p,u(u.G+u.W+u.F*(p!=g),w),u(u.S,f,{BYTES_PER_ELEMENT:n}),u(u.S+u.F*o(function(){g.of.call(p,1)}),f,{from:At,of:kt}),\"BYTES_PER_ELEMENT\"in _||h(_,\"BYTES_PER_ELEMENT\",n),u(u.P,f,Tt),L(f),u(u.P+u.F*_t,f,{set:Lt}),u(u.P+u.F*!k,f,Gt),e||_.toString==ht||(_.toString=ht),u(u.P+u.F*o(function(){new p(1).slice()}),f,{slice:Rt}),u(u.P+u.F*(o(function(){return[1,2].toLocaleString()!=new p([1,2]).toLocaleString()})||!o(function(){_.toLocaleString.call([1,2])})),f,{toLocaleString:jt}),T[f]=k?A:N,e||k||h(_,pt,N)}}else n.exports=function(){}},{100:100,104:104,11:11,114:114,115:115,116:116,118:118,119:119,12:12,120:120,122:122,123:123,124:124,128:128,129:129,141:141,17:17,25:25,29:29,33:33,35:35,40:40,41:41,42:42,48:48,51:51,56:56,58:58,6:6,60:60,71:71,72:72,75:75,77:77,79:79,8:8,9:9,92:92,93:93}],122:[function(t,n,r){\"use strict\";function packIEEE754(t,n,r){var e,i,o,u=Array(r),c=8*r-n-1,a=(1<<c)-1,f=a>>1,s=23===n?M(2,-24)-M(2,-77):0,l=0,h=t<0||0===t&&1/t<0?1:0;for(t=P(t),t!=t||t===E?(i=t!=t?1:0,e=a):(e=F(I(t)/A),t*(o=M(2,-e))<1&&(e--,o*=2),t+=e+f>=1?s/o:s*M(2,1-f),t*o>=2&&(e++,o/=2),e+f>=a?(i=0,e=a):e+f>=1?(i=(t*o-1)*M(2,n),e+=f):(i=t*M(2,f-1)*M(2,n),e=0));n>=8;u[l++]=255&i,i/=256,n-=8);for(e=e<<n|i,c+=n;c>0;u[l++]=255&e,e/=256,c-=8);return u[--l]|=128*h,u}function unpackIEEE754(t,n,r){var e,i=8*r-n-1,o=(1<<i)-1,u=o>>1,c=i-7,a=r-1,f=t[a--],s=127&f;for(f>>=7;c>0;s=256*s+t[a],a--,c-=8);for(e=s&(1<<-c)-1,s>>=-c,c+=n;c>0;e=256*e+t[a],a--,c-=8);if(0===s)s=1-u;else{if(s===o)return e?NaN:f?-E:E;e+=M(2,n),s-=u}return(f?-1:1)*e*M(2,s-n)}function unpackI32(t){return t[3]<<24|t[2]<<16|t[1]<<8|t[0]}function packI8(t){return[255&t]}function packI16(t){return[255&t,t>>8&255]}function packI32(t){return[255&t,t>>8&255,t>>16&255,t>>24&255]}function packF64(t){return packIEEE754(t,52,8)}function packF32(t){return packIEEE754(t,23,4)}function addGetter(t,n,r){d(t[m],n,{get:function(){return this[r]}})}function get(t,n,r,e){var i=+r,o=v(i);if(o+n>t[N])throw _(b);var u=t[k]._b,c=o+t[j],a=u.slice(c,c+n);return e?a:a.reverse()}function set(t,n,r,e,i,o){var u=+r,c=v(u);if(c+n>t[N])throw _(b);for(var a=t[k]._b,f=c+t[j],s=e(+i),l=0;l<n;l++)a[f+l]=s[o?l:n-l-1]}var e=t(40),i=t(29),o=t(60),u=t(123),c=t(42),a=t(93),f=t(35),s=t(6),l=t(116),h=t(118),v=t(115),p=t(77).f,d=t(72).f,y=t(9),g=t(101),m=\"prototype\",b=\"Wrong index!\",x=e.ArrayBuffer,S=e.DataView,w=e.Math,_=e.RangeError,E=e.Infinity,O=x,P=w.abs,M=w.pow,F=w.floor,I=w.log,A=w.LN2,k=i?\"_b\":\"buffer\",N=i?\"_l\":\"byteLength\",j=i?\"_o\":\"byteOffset\";if(u.ABV){if(!f(function(){x(1)})||!f(function(){new x(-1)})||f(function(){return new x,new x(1.5),new x(NaN),\"ArrayBuffer\"!=x.name})){x=function ArrayBuffer(t){return s(this,x),new O(v(t))};for(var T,R=x[m]=O[m],L=p(O),G=0;L.length>G;)(T=L[G++])in x||c(x,T,O[T]);o||(R.constructor=x)}var D=new S(new x(2)),C=S[m].setInt8;D.setInt8(0,2147483648),D.setInt8(1,2147483649),!D.getInt8(0)&&D.getInt8(1)||a(S[m],{setInt8:function setInt8(t,n){C.call(this,t,n<<24>>24)},setUint8:function setUint8(t,n){C.call(this,t,n<<24>>24)}},!0)}else x=function ArrayBuffer(t){s(this,x,\"ArrayBuffer\");var n=v(t);this._b=y.call(Array(n),0),this[N]=n},S=function DataView(t,n,r){s(this,S,\"DataView\"),s(t,x,\"DataView\");var e=t[N],i=l(n);if(i<0||i>e)throw _(\"Wrong offset!\");if(r=void 0===r?e-i:h(r),i+r>e)throw _(\"Wrong length!\");this[k]=t,this[j]=i,this[N]=r},i&&(addGetter(x,\"byteLength\",\"_l\"),addGetter(S,\"buffer\",\"_b\"),addGetter(S,\"byteLength\",\"_l\"),addGetter(S,\"byteOffset\",\"_o\")),a(S[m],{getInt8:function getInt8(t){return get(this,1,t)[0]<<24>>24},getUint8:function getUint8(t){return get(this,1,t)[0]},getInt16:function getInt16(t){var n=get(this,2,t,arguments[1]);return(n[1]<<8|n[0])<<16>>16},getUint16:function getUint16(t){var n=get(this,2,t,arguments[1]);return n[1]<<8|n[0]},getInt32:function getInt32(t){return unpackI32(get(this,4,t,arguments[1]))},getUint32:function getUint32(t){return unpackI32(get(this,4,t,arguments[1]))>>>0},getFloat32:function getFloat32(t){return unpackIEEE754(get(this,4,t,arguments[1]),23,4)},getFloat64:function getFloat64(t){return unpackIEEE754(get(this,8,t,arguments[1]),52,8)},setInt8:function setInt8(t,n){set(this,1,t,packI8,n)},setUint8:function setUint8(t,n){set(this,1,t,packI8,n)},setInt16:function setInt16(t,n){set(this,2,t,packI16,n,arguments[2])},setUint16:function setUint16(t,n){set(this,2,t,packI16,n,arguments[2])},setInt32:function setInt32(t,n){set(this,4,t,packI32,n,arguments[2])},setUint32:function setUint32(t,n){set(this,4,t,packI32,n,arguments[2])},setFloat32:function setFloat32(t,n){set(this,4,t,packF32,n,arguments[2])},setFloat64:function setFloat64(t,n){set(this,8,t,packF64,n,arguments[2])}});g(x,\"ArrayBuffer\"),g(S,\"DataView\"),c(S[m],u.VIEW,!0),r.ArrayBuffer=x,r.DataView=S},{101:101,115:115,116:116,118:118,123:123,29:29,35:35,40:40,42:42,6:6,60:60,72:72,77:77,9:9,93:93}],123:[function(t,n,r){for(var e,i=t(40),o=t(42),u=t(124),c=u(\"typed_array\"),a=u(\"view\"),f=!(!i.ArrayBuffer||!i.DataView),s=f,l=0,h=\"Int8Array,Uint8Array,Uint8ClampedArray,Int16Array,Uint16Array,Int32Array,Uint32Array,Float32Array,Float64Array\".split(\",\");l<9;)(e=i[h[l++]])?(o(e.prototype,c,!0),o(e.prototype,a,!0)):s=!1;n.exports={ABV:f,CONSTR:s,TYPED:c,VIEW:a}},{124:124,40:40,42:42}],124:[function(t,n,r){var e=0,i=Math.random();n.exports=function(t){return\"Symbol(\".concat(void 0===t?\"\":t,\")_\",(++e+i).toString(36))}},{}],125:[function(t,n,r){var e=t(51);n.exports=function(t,n){if(!e(t)||t._t!==n)throw TypeError(\"Incompatible receiver, \"+n+\" required!\");return t}},{51:51}],126:[function(t,n,r){var e=t(40),i=t(23),o=t(60),u=t(127),c=t(72).f;n.exports=function(t){var n=i.Symbol||(i.Symbol=o?{}:e.Symbol||{});\"_\"==t.charAt(0)||t in n||c(n,t,{value:u.f(t)})}},{127:127,23:23,40:40,60:60,72:72}],127:[function(t,n,r){r.f=t(128)},{128:128}],128:[function(t,n,r){var e=t(103)(\"wks\"),i=t(124),o=t(40).Symbol,u=\"function\"==typeof o;(n.exports=function(t){return e[t]||(e[t]=u&&o[t]||(u?o:i)(\"Symbol.\"+t))}).store=e},{103:103,124:124,40:40}],129:[function(t,n,r){var e=t(17),i=t(128)(\"iterator\"),o=t(58);n.exports=t(23).getIteratorMethod=function(t){if(void 0!=t)return t[i]||t[\"@@iterator\"]||o[e(t)]}},{128:128,17:17,23:23,58:58}],130:[function(t,n,r){var e=t(33),i=t(95)(/[\\\\^$*+?.()|[\\]{}]/g,\"\\\\$&\");e(e.S,\"RegExp\",{escape:function escape(t){return i(t)}})},{33:33,95:95}],131:[function(t,n,r){var e=t(33);e(e.P,\"Array\",{copyWithin:t(8)}),t(5)(\"copyWithin\")},{33:33,5:5,8:8}],132:[function(t,n,r){\"use strict\";var e=t(33),i=t(12)(4);e(e.P+e.F*!t(105)([].every,!0),\"Array\",{every:function every(t){return i(this,t,arguments[1])}})},{105:105,12:12,33:33}],133:[function(t,n,r){var e=t(33);e(e.P,\"Array\",{fill:t(9)}),t(5)(\"fill\")},{33:33,5:5,9:9}],134:[function(t,n,r){\"use strict\";var e=t(33),i=t(12)(2);e(e.P+e.F*!t(105)([].filter,!0),\"Array\",{filter:function filter(t){return i(this,t,arguments[1])}})},{105:105,12:12,33:33}],135:[function(t,n,r){\"use strict\";var e=t(33),i=t(12)(6),o=\"findIndex\",u=!0;o in[]&&Array(1)[o](function(){u=!1}),e(e.P+e.F*u,\"Array\",{findIndex:function findIndex(t){return i(this,t,arguments.length>1?arguments[1]:void 0)}}),t(5)(o)},{12:12,33:33,5:5}],136:[function(t,n,r){\"use strict\";var e=t(33),i=t(12)(5),o=!0;\"find\"in[]&&Array(1).find(function(){o=!1}),e(e.P+e.F*o,\"Array\",{find:function find(t){return i(this,t,arguments.length>1?arguments[1]:void 0)}}),t(5)(\"find\")},{12:12,33:33,5:5}],137:[function(t,n,r){\"use strict\";var e=t(33),i=t(12)(0),o=t(105)([].forEach,!0);e(e.P+e.F*!o,\"Array\",{forEach:function forEach(t){return i(this,t,arguments[1])}})},{105:105,12:12,33:33}],138:[function(t,n,r){\"use strict\";var e=t(25),i=t(33),o=t(119),u=t(53),c=t(48),a=t(118),f=t(24),s=t(129);i(i.S+i.F*!t(56)(function(t){Array.from(t)}),\"Array\",{from:function from(t){var n,r,i,l,h=o(t),v=\"function\"==typeof this?this:Array,p=arguments.length,d=p>1?arguments[1]:void 0,y=void 0!==d,g=0,m=s(h);if(y&&(d=e(d,p>2?arguments[2]:void 0,2)),void 0==m||v==Array&&c(m))for(n=a(h.length),r=new v(n);n>g;g++)f(r,g,y?d(h[g],g):h[g]);else for(l=m.call(h),r=new v;!(i=l.next()).done;g++)f(r,g,y?u(l,d,[i.value,g],!0):i.value);return r.length=g,r}})},{118:118,119:119,129:129,24:24,25:25,33:33,48:48,53:53,56:56}],139:[function(t,n,r){\"use strict\";var e=t(33),i=t(11)(!1),o=[].indexOf,u=!!o&&1/[1].indexOf(1,-0)<0;e(e.P+e.F*(u||!t(105)(o)),\"Array\",{indexOf:function indexOf(t){return u?o.apply(this,arguments)||0:i(this,t,arguments[1])}})},{105:105,11:11,33:33}],140:[function(t,n,r){var e=t(33);e(e.S,\"Array\",{isArray:t(49)})},{33:33,49:49}],141:[function(t,n,r){\"use strict\";var e=t(5),i=t(57),o=t(58),u=t(117);n.exports=t(55)(Array,\"Array\",function(t,n){this._t=u(t),this._i=0,this._k=n},function(){var t=this._t,n=this._k,r=this._i++;return!t||r>=t.length?(this._t=void 0,i(1)):\"keys\"==n?i(0,r):\"values\"==n?i(0,t[r]):i(0,[r,t[r]])},\"values\"),o.Arguments=o.Array,e(\"keys\"),e(\"values\"),e(\"entries\")},{117:117,5:5,55:55,57:57,58:58}],142:[function(t,n,r){\"use strict\";var e=t(33),i=t(117),o=[].join;e(e.P+e.F*(t(47)!=Object||!t(105)(o)),\"Array\",{join:function join(t){return o.call(i(this),void 0===t?\",\":t)}})},{105:105,117:117,33:33,47:47}],143:[function(t,n,r){\"use strict\";var e=t(33),i=t(117),o=t(116),u=t(118),c=[].lastIndexOf,a=!!c&&1/[1].lastIndexOf(1,-0)<0;e(e.P+e.F*(a||!t(105)(c)),\"Array\",{lastIndexOf:function lastIndexOf(t){if(a)return c.apply(this,arguments)||0;var n=i(this),r=u(n.length),e=r-1;for(arguments.length>1&&(e=Math.min(e,o(arguments[1]))),e<0&&(e=r+e);e>=0;e--)if(e in n&&n[e]===t)return e||0;return-1}})},{105:105,116:116,117:117,118:118,33:33}],144:[function(t,n,r){\"use strict\";var e=t(33),i=t(12)(1);e(e.P+e.F*!t(105)([].map,!0),\"Array\",{map:function map(t){return i(this,t,arguments[1])}})},{105:105,12:12,33:33}],145:[function(t,n,r){\"use strict\";var e=t(33),i=t(24);e(e.S+e.F*t(35)(function(){function F(){}return!(Array.of.call(F)instanceof F)}),\"Array\",{of:function of(){for(var t=0,n=arguments.length,r=new(\"function\"==typeof this?this:Array)(n);n>t;)i(r,t,arguments[t++]);return r.length=n,r}})},{24:24,33:33,35:35}],146:[function(t,n,r){\"use strict\";var e=t(33),i=t(13);e(e.P+e.F*!t(105)([].reduceRight,!0),\"Array\",{reduceRight:function reduceRight(t){return i(this,t,arguments.length,arguments[1],!0)}})},{105:105,13:13,33:33}],147:[function(t,n,r){\"use strict\";var e=t(33),i=t(13);e(e.P+e.F*!t(105)([].reduce,!0),\"Array\",{reduce:function reduce(t){return i(this,t,arguments.length,arguments[1],!1)}})},{105:105,13:13,33:33}],148:[function(t,n,r){\"use strict\";var e=t(33),i=t(43),o=t(18),u=t(114),c=t(118),a=[].slice;e(e.P+e.F*t(35)(function(){i&&a.call(i)}),\"Array\",{slice:function slice(t,n){var r=c(this.length),e=o(this);if(n=void 0===n?r:n,\"Array\"==e)return a.call(this,t,n);for(var i=u(t,r),f=u(n,r),s=c(f-i),l=Array(s),h=0;h<s;h++)l[h]=\"String\"==e?this.charAt(i+h):this[i+h];return l}})},{114:114,118:118,18:18,33:33,35:35,43:43}],149:[function(t,n,r){\"use strict\";var e=t(33),i=t(12)(3);e(e.P+e.F*!t(105)([].some,!0),\"Array\",{some:function some(t){return i(this,t,arguments[1])}})},{105:105,12:12,33:33}],150:[function(t,n,r){\"use strict\";var e=t(33),i=t(3),o=t(119),u=t(35),c=[].sort,a=[1,2,3];e(e.P+e.F*(u(function(){a.sort(void 0)})||!u(function(){a.sort(null)})||!t(105)(c)),\"Array\",{sort:function sort(t){return void 0===t?c.call(o(this)):c.call(o(this),i(t))}})},{105:105,119:119,3:3,33:33,35:35}],151:[function(t,n,r){t(100)(\"Array\")},{100:100}],152:[function(t,n,r){var e=t(33);e(e.S,\"Date\",{now:function(){return(new Date).getTime()}})},{33:33}],153:[function(t,n,r){var e=t(33),i=t(26);e(e.P+e.F*(Date.prototype.toISOString!==i),\"Date\",{toISOString:i})},{26:26,33:33}],154:[function(t,n,r){\"use strict\";var e=t(33),i=t(119),o=t(120);e(e.P+e.F*t(35)(function(){return null!==new Date(NaN).toJSON()||1!==Date.prototype.toJSON.call({toISOString:function(){return 1}})}),\"Date\",{toJSON:function toJSON(t){var n=i(this),r=o(n);return\"number\"!=typeof r||isFinite(r)?n.toISOString():null}})},{119:119,120:120,33:33,35:35}],155:[function(t,n,r){var e=t(128)(\"toPrimitive\"),i=Date.prototype;e in i||t(42)(i,e,t(27))},{128:128,27:27,42:42}],156:[function(t,n,r){var e=Date.prototype,i=e.toString,o=e.getTime;new Date(NaN)+\"\"!=\"Invalid Date\"&&t(94)(e,\"toString\",function toString(){var t=o.call(this);return t===t?i.call(this):\"Invalid Date\"})},{94:94}],157:[function(t,n,r){var e=t(33);e(e.P,\"Function\",{bind:t(16)})},{16:16,33:33}],158:[function(t,n,r){\"use strict\";var e=t(51),i=t(79),o=t(128)(\"hasInstance\"),u=Function.prototype;o in u||t(72).f(u,o,{value:function(t){if(\"function\"!=typeof this||!e(t))return!1;if(!e(this.prototype))return t instanceof this;for(;t=i(t);)if(this.prototype===t)return!0;return!1}})},{128:128,51:51,72:72,79:79}],159:[function(t,n,r){var e=t(72).f,i=Function.prototype,o=/^\\s*function ([^ (]*)/;\"name\"in i||t(29)&&e(i,\"name\",{configurable:!0,get:function(){try{return(\"\"+this).match(o)[1]}catch(t){return\"\"}}})},{29:29,72:72}],160:[function(t,n,r){\"use strict\";var e=t(19),i=t(125);n.exports=t(22)(\"Map\",function(t){return function Map(){return t(this,arguments.length>0?arguments[0]:void 0)}},{get:function get(t){var n=e.getEntry(i(this,\"Map\"),t);return n&&n.v},set:function set(t,n){return e.def(i(this,\"Map\"),0===t?0:t,n)}},e,!0)},{125:125,19:19,22:22}],161:[function(t,n,r){var e=t(33),i=t(63),o=Math.sqrt,u=Math.acosh;e(e.S+e.F*!(u&&710==Math.floor(u(Number.MAX_VALUE))&&u(1/0)==1/0),\"Math\",{acosh:function acosh(t){return(t=+t)<1?NaN:t>94906265.62425156?Math.log(t)+Math.LN2:i(t-1+o(t-1)*o(t+1))}})},{33:33,63:63}],162:[function(t,n,r){function asinh(t){return isFinite(t=+t)&&0!=t?t<0?-asinh(-t):Math.log(t+Math.sqrt(t*t+1)):t}var e=t(33),i=Math.asinh;e(e.S+e.F*!(i&&1/i(0)>0),\"Math\",{asinh:asinh})},{33:33}],163:[function(t,n,r){var e=t(33),i=Math.atanh;e(e.S+e.F*!(i&&1/i(-0)<0),\"Math\",{atanh:function atanh(t){return 0==(t=+t)?t:Math.log((1+t)/(1-t))/2}})},{33:33}],164:[function(t,n,r){var e=t(33),i=t(65);e(e.S,\"Math\",{cbrt:function cbrt(t){return i(t=+t)*Math.pow(Math.abs(t),1/3)}})},{33:33,65:65}],165:[function(t,n,r){var e=t(33);e(e.S,\"Math\",{clz32:function clz32(t){return(t>>>=0)?31-Math.floor(Math.log(t+.5)*Math.LOG2E):32}})},{33:33}],166:[function(t,n,r){var e=t(33),i=Math.exp;e(e.S,\"Math\",{cosh:function cosh(t){return(i(t=+t)+i(-t))/2}})},{33:33}],167:[function(t,n,r){var e=t(33),i=t(61);e(e.S+e.F*(i!=Math.expm1),\"Math\",{expm1:i})},{33:33,61:61}],168:[function(t,n,r){var e=t(33);e(e.S,\"Math\",{fround:t(62)})},{33:33,62:62}],169:[function(t,n,r){var e=t(33),i=Math.abs;e(e.S,\"Math\",{hypot:function hypot(t,n){for(var r,e,o=0,u=0,c=arguments.length,a=0;u<c;)r=i(arguments[u++]),a<r?(e=a/r,o=o*e*e+1,a=r):r>0?(e=r/a,o+=e*e):o+=r;return a===1/0?1/0:a*Math.sqrt(o)}})},{33:33}],170:[function(t,n,r){var e=t(33),i=Math.imul;e(e.S+e.F*t(35)(function(){return-5!=i(4294967295,5)||2!=i.length}),\"Math\",{imul:function imul(t,n){var r=+t,e=+n,i=65535&r,o=65535&e;return 0|i*o+((65535&r>>>16)*o+i*(65535&e>>>16)<<16>>>0)}})},{33:33,35:35}],171:[function(t,n,r){var e=t(33);e(e.S,\"Math\",{log10:function log10(t){return Math.log(t)*Math.LOG10E}})},{33:33}],172:[function(t,n,r){var e=t(33);e(e.S,\"Math\",{log1p:t(63)})},{33:33,63:63}],173:[function(t,n,r){var e=t(33);e(e.S,\"Math\",{log2:function log2(t){return Math.log(t)/Math.LN2}})},{33:33}],174:[function(t,n,r){var e=t(33);e(e.S,\"Math\",{sign:t(65)})},{33:33,65:65}],175:[function(t,n,r){var e=t(33),i=t(61),o=Math.exp;e(e.S+e.F*t(35)(function(){return-2e-17!=!Math.sinh(-2e-17)}),\"Math\",{sinh:function sinh(t){return Math.abs(t=+t)<1?(i(t)-i(-t))/2:(o(t-1)-o(-t-1))*(Math.E/2)}})},{33:33,35:35,61:61}],176:[function(t,n,r){var e=t(33),i=t(61),o=Math.exp;e(e.S,\"Math\",{tanh:function tanh(t){var n=i(t=+t),r=i(-t);return n==1/0?1:r==1/0?-1:(n-r)/(o(t)+o(-t))}})},{33:33,61:61}],177:[function(t,n,r){var e=t(33);e(e.S,\"Math\",{trunc:function trunc(t){return(t>0?Math.floor:Math.ceil)(t)}})},{33:33}],178:[function(t,n,r){\"use strict\";var e=t(40),i=t(41),o=t(18),u=t(45),c=t(120),a=t(35),f=t(77).f,s=t(75).f,l=t(72).f,h=t(111).trim,v=e.Number,p=v,d=v.prototype,y=\"Number\"==o(t(71)(d)),g=\"trim\"in String.prototype,m=function(t){var n=c(t,!1);if(\"string\"==typeof n&&n.length>2){n=g?n.trim():h(n,3);var r,e,i,o=n.charCodeAt(0);if(43===o||45===o){if(88===(r=n.charCodeAt(2))||120===r)return NaN}else if(48===o){switch(n.charCodeAt(1)){case 66:case 98:e=2,i=49;break;case 79:case 111:e=8,i=55;break;default:return+n}for(var u,a=n.slice(2),f=0,s=a.length;f<s;f++)if((u=a.charCodeAt(f))<48||u>i)return NaN;return parseInt(a,e)}}return+n};if(!v(\" 0o1\")||!v(\"0b1\")||v(\"+0x1\")){v=function Number(t){var n=arguments.length<1?0:t,r=this;return r instanceof v&&(y?a(function(){d.valueOf.call(r)}):\"Number\"!=o(r))?u(new p(m(n)),r,v):m(n)};for(var b,x=t(29)?f(p):\"MAX_VALUE,MIN_VALUE,NaN,NEGATIVE_INFINITY,POSITIVE_INFINITY,EPSILON,isFinite,isInteger,isNaN,isSafeInteger,MAX_SAFE_INTEGER,MIN_SAFE_INTEGER,parseFloat,parseInt,isInteger\".split(\",\"),S=0;x.length>S;S++)i(p,b=x[S])&&!i(v,b)&&l(v,b,s(p,b));v.prototype=d,d.constructor=v,t(94)(e,\"Number\",v)}},{111:111,120:120,18:18,29:29,35:35,40:40,41:41,45:45,71:71,72:72,75:75,77:77,94:94}],179:[function(t,n,r){var e=t(33);e(e.S,\"Number\",{EPSILON:Math.pow(2,-52)})},{33:33}],180:[function(t,n,r){var e=t(33),i=t(40).isFinite;e(e.S,\"Number\",{isFinite:function isFinite(t){return\"number\"==typeof t&&i(t)}})},{33:33,40:40}],181:[function(t,n,r){var e=t(33);e(e.S,\"Number\",{isInteger:t(50)})},{33:33,50:50}],182:[function(t,n,r){var e=t(33);e(e.S,\"Number\",{isNaN:function isNaN(t){return t!=t}})},{33:33}],183:[function(t,n,r){var e=t(33),i=t(50),o=Math.abs;e(e.S,\"Number\",{isSafeInteger:function isSafeInteger(t){return i(t)&&o(t)<=9007199254740991}})},{33:33,50:50}],184:[function(t,n,r){var e=t(33);e(e.S,\"Number\",{MAX_SAFE_INTEGER:9007199254740991})},{33:33}],185:[function(t,n,r){var e=t(33);e(e.S,\"Number\",{MIN_SAFE_INTEGER:-9007199254740991})},{33:33}],186:[function(t,n,r){var e=t(33),i=t(86);e(e.S+e.F*(Number.parseFloat!=i),\"Number\",{parseFloat:i})},{33:33,86:86}],187:[function(t,n,r){var e=t(33),i=t(87);e(e.S+e.F*(Number.parseInt!=i),\"Number\",{parseInt:i})},{33:33,87:87}],188:[function(t,n,r){\"use strict\";var e=t(33),i=t(116),o=t(4),u=t(110),c=1..toFixed,a=Math.floor,f=[0,0,0,0,0,0],s=\"Number.toFixed: incorrect invocation!\",l=function(t,n){for(var r=-1,e=n;++r<6;)e+=t*f[r],f[r]=e%1e7,e=a(e/1e7)},h=function(t){for(var n=6,r=0;--n>=0;)r+=f[n],f[n]=a(r/t),r=r%t*1e7},v=function(){for(var t=6,n=\"\";--t>=0;)if(\"\"!==n||0===t||0!==f[t]){var r=String(f[t]);n=\"\"===n?r:n+u.call(\"0\",7-r.length)+r}return n},p=function(t,n,r){return 0===n?r:n%2==1?p(t,n-1,r*t):p(t*t,n/2,r)},d=function(t){for(var n=0,r=t;r>=4096;)n+=12,r/=4096;for(;r>=2;)n+=1,r/=2;return n};e(e.P+e.F*(!!c&&(\"0.000\"!==8e-5.toFixed(3)||\"1\"!==.9.toFixed(0)||\"1.25\"!==1.255.toFixed(2)||\"1000000000000000128\"!==(0xde0b6b3a7640080).toFixed(0))||!t(35)(function(){c.call({})})),\"Number\",{toFixed:function toFixed(t){var n,r,e,c,a=o(this,s),f=i(t),y=\"\",g=\"0\";if(f<0||f>20)throw RangeError(s);if(a!=a)return\"NaN\";if(a<=-1e21||a>=1e21)return String(a);if(a<0&&(y=\"-\",a=-a),a>1e-21)if(n=d(a*p(2,69,1))-69,r=n<0?a*p(2,-n,1):a/p(2,n,1),r*=4503599627370496,(n=52-n)>0){for(l(0,r),e=f;e>=7;)l(1e7,0),e-=7;for(l(p(10,e,1),0),e=n-1;e>=23;)h(1<<23),e-=23;h(1<<e),l(1,1),h(2),g=v()}else l(0,r),l(1<<-n,0),g=v()+u.call(\"0\",f);return f>0?(c=g.length,g=y+(c<=f?\"0.\"+u.call(\"0\",f-c)+g:g.slice(0,c-f)+\".\"+g.slice(c-f))):g=y+g,g}})},{110:110,116:116,33:33,35:35,4:4}],189:[function(t,n,r){\"use strict\";var e=t(33),i=t(35),o=t(4),u=1..toPrecision;e(e.P+e.F*(i(function(){return\"1\"!==u.call(1,void 0)})||!i(function(){u.call({})})),\"Number\",{toPrecision:function toPrecision(t){var n=o(this,\"Number#toPrecision: incorrect invocation!\");return void 0===t?u.call(n):u.call(n,t)}})},{33:33,35:35,4:4}],190:[function(t,n,r){var e=t(33);e(e.S+e.F,\"Object\",{assign:t(70)})},{33:33,70:70}],191:[function(t,n,r){var e=t(33);e(e.S,\"Object\",{create:t(71)})},{33:33,71:71}],192:[function(t,n,r){var e=t(33);e(e.S+e.F*!t(29),\"Object\",{defineProperties:t(73)})},{29:29,33:33,73:73}],193:[function(t,n,r){var e=t(33);e(e.S+e.F*!t(29),\"Object\",{defineProperty:t(72).f})},{29:29,33:33,72:72}],194:[function(t,n,r){var e=t(51),i=t(66).onFreeze;t(83)(\"freeze\",function(t){return function freeze(n){return t&&e(n)?t(i(n)):n}})},{51:51,66:66,83:83}],195:[function(t,n,r){var e=t(117),i=t(75).f;t(83)(\"getOwnPropertyDescriptor\",function(){return function getOwnPropertyDescriptor(t,n){return i(e(t),n)}})},{117:117,75:75,83:83}],196:[function(t,n,r){t(83)(\"getOwnPropertyNames\",function(){return t(76).f})},{76:76,83:83}],197:[function(t,n,r){var e=t(119),i=t(79);t(83)(\"getPrototypeOf\",function(){return function getPrototypeOf(t){return i(e(t))}})},{119:119,79:79,83:83}],198:[function(t,n,r){var e=t(51);t(83)(\"isExtensible\",function(t){return function isExtensible(n){return!!e(n)&&(!t||t(n))}})},{51:51,83:83}],199:[function(t,n,r){var e=t(51);t(83)(\"isFrozen\",function(t){return function isFrozen(n){return!e(n)||!!t&&t(n)}})},{51:51,83:83}],200:[function(t,n,r){var e=t(51);t(83)(\"isSealed\",function(t){return function isSealed(n){return!e(n)||!!t&&t(n)}})},{51:51,83:83}],201:[function(t,n,r){var e=t(33);e(e.S,\"Object\",{is:t(96)})},{33:33,96:96}],202:[function(t,n,r){var e=t(119),i=t(81);t(83)(\"keys\",function(){return function keys(t){return i(e(t))}})},{119:119,81:81,83:83}],203:[function(t,n,r){var e=t(51),i=t(66).onFreeze;t(83)(\"preventExtensions\",function(t){return function preventExtensions(n){return t&&e(n)?t(i(n)):n}})},{51:51,66:66,83:83}],204:[function(t,n,r){var e=t(51),i=t(66).onFreeze;t(83)(\"seal\",function(t){return function seal(n){return t&&e(n)?t(i(n)):n}})},{51:51,66:66,83:83}],205:[function(t,n,r){var e=t(33);e(e.S,\"Object\",{setPrototypeOf:t(99).set})},{33:33,99:99}],206:[function(t,n,r){\"use strict\";var e=t(17),i={};i[t(128)(\"toStringTag\")]=\"z\",i+\"\"!=\"[object z]\"&&t(94)(Object.prototype,\"toString\",function toString(){return\"[object \"+e(this)+\"]\"},!0)},{128:128,17:17,94:94}],207:[function(t,n,r){var e=t(33),i=t(86);e(e.G+e.F*(parseFloat!=i),{parseFloat:i})},{33:33,86:86}],208:[function(t,n,r){var e=t(33),i=t(87);e(e.G+e.F*(parseInt!=i),{parseInt:i})},{33:33,87:87}],209:[function(t,n,r){\"use strict\";var e,i,o,u,c=t(60),a=t(40),f=t(25),s=t(17),l=t(33),h=t(51),v=t(3),p=t(6),d=t(39),y=t(104),g=t(113).set,m=t(68)(),b=t(69),x=t(90),S=t(91),w=a.TypeError,_=a.process,E=a.Promise,O=\"process\"==s(_),P=function(){},M=i=b.f,F=!!function(){try{var n=E.resolve(1),r=(n.constructor={})[t(128)(\"species\")]=function(t){t(P,P)};return(O||\"function\"==typeof PromiseRejectionEvent)&&n.then(P)instanceof r}catch(t){}}(),I=c?function(t,n){return t===n||t===E&&n===u}:function(t,n){return t===n},A=function(t){var n;return!(!h(t)||\"function\"!=typeof(n=t.then))&&n},k=function(t,n){if(!t._n){t._n=!0;var r=t._c;m(function(){for(var e=t._v,i=1==t._s,o=0;r.length>o;)!function(n){var r,o,u=i?n.ok:n.fail,c=n.resolve,a=n.reject,f=n.domain;try{u?(i||(2==t._h&&T(t),t._h=1),!0===u?r=e:(f&&f.enter(),r=u(e),f&&f.exit()),r===n.promise?a(w(\"Promise-chain cycle\")):(o=A(r))?o.call(r,c,a):c(r)):a(e)}catch(t){a(t)}}(r[o++]);t._c=[],t._n=!1,n&&!t._h&&N(t)})}},N=function(t){g.call(a,function(){var n,r,e,i=t._v,o=j(t);if(o&&(n=x(function(){O?_.emit(\"unhandledRejection\",i,t):(r=a.onunhandledrejection)?r({promise:t,reason:i}):(e=a.console)&&e.error&&e.error(\"Unhandled promise rejection\",i)}),t._h=O||j(t)?2:1),t._a=void 0,o&&n.e)throw n.v})},j=function(t){if(1==t._h)return!1;for(var n,r=t._a||t._c,e=0;r.length>e;)if(n=r[e++],n.fail||!j(n.promise))return!1;return!0},T=function(t){g.call(a,function(){var n;O?_.emit(\"rejectionHandled\",t):(n=a.onrejectionhandled)&&n({promise:t,reason:t._v})})},R=function(t){var n=this;n._d||(n._d=!0,n=n._w||n,n._v=t,n._s=2,n._a||(n._a=n._c.slice()),k(n,!0))},L=function(t){var n,r=this;if(!r._d){r._d=!0,r=r._w||r;try{if(r===t)throw w(\"Promise can't be resolved itself\");(n=A(t))?m(function(){var e={_w:r,_d:!1};try{n.call(t,f(L,e,1),f(R,e,1))}catch(t){R.call(e,t)}}):(r._v=t,r._s=1,k(r,!1))}catch(t){R.call({_w:r,_d:!1},t)}}};F||(E=function Promise(t){p(this,E,\"Promise\",\"_h\"),v(t),e.call(this);try{t(f(L,this,1),f(R,this,1))}catch(t){R.call(this,t)}},e=function Promise(t){this._c=[],this._a=void 0,this._s=0,this._d=!1,this._v=void 0,this._h=0,this._n=!1},e.prototype=t(93)(E.prototype,{then:function then(t,n){var r=M(y(this,E));return r.ok=\"function\"!=typeof t||t,r.fail=\"function\"==typeof n&&n,r.domain=O?_.domain:void 0,this._c.push(r),this._a&&this._a.push(r),this._s&&k(this,!1),r.promise},catch:function(t){return this.then(void 0,t)}}),o=function(){var t=new e;this.promise=t,this.resolve=f(L,t,1),this.reject=f(R,t,1)},b.f=M=function(t){return I(E,t)?new o(t):i(t)}),l(l.G+l.W+l.F*!F,{Promise:E}),t(101)(E,\"Promise\"),t(100)(\"Promise\"),u=t(23).Promise,l(l.S+l.F*!F,\"Promise\",{reject:function reject(t){var n=M(this);return(0,n.reject)(t),n.promise}}),l(l.S+l.F*(c||!F),\"Promise\",{resolve:function resolve(t){return t instanceof E&&I(t.constructor,this)?t:S(this,t)}}),l(l.S+l.F*!(F&&t(56)(function(t){E.all(t).catch(P)})),\"Promise\",{all:function all(t){var n=this,r=M(n),e=r.resolve,i=r.reject,o=x(function(){var r=[],o=0,u=1;d(t,!1,function(t){var c=o++,a=!1;r.push(void 0),u++,n.resolve(t).then(function(t){a||(a=!0,r[c]=t,--u||e(r))},i)}),--u||e(r)});return o.e&&i(o.v),r.promise},race:function race(t){var n=this,r=M(n),e=r.reject,i=x(function(){d(t,!1,function(t){n.resolve(t).then(r.resolve,e)})});return i.e&&e(i.v),r.promise}})},{100:100,101:101,104:104,113:113,128:128,17:17,23:23,25:25,\n3:3,33:33,39:39,40:40,51:51,56:56,6:6,60:60,68:68,69:69,90:90,91:91,93:93}],210:[function(t,n,r){var e=t(33),i=t(3),o=t(7),u=(t(40).Reflect||{}).apply,c=Function.apply;e(e.S+e.F*!t(35)(function(){u(function(){})}),\"Reflect\",{apply:function apply(t,n,r){var e=i(t),a=o(r);return u?u(e,n,a):c.call(e,n,a)}})},{3:3,33:33,35:35,40:40,7:7}],211:[function(t,n,r){var e=t(33),i=t(71),o=t(3),u=t(7),c=t(51),a=t(35),f=t(16),s=(t(40).Reflect||{}).construct,l=a(function(){function F(){}return!(s(function(){},[],F)instanceof F)}),h=!a(function(){s(function(){})});e(e.S+e.F*(l||h),\"Reflect\",{construct:function construct(t,n){o(t),u(n);var r=arguments.length<3?t:o(arguments[2]);if(h&&!l)return s(t,n,r);if(t==r){switch(n.length){case 0:return new t;case 1:return new t(n[0]);case 2:return new t(n[0],n[1]);case 3:return new t(n[0],n[1],n[2]);case 4:return new t(n[0],n[1],n[2],n[3])}var e=[null];return e.push.apply(e,n),new(f.apply(t,e))}var a=r.prototype,v=i(c(a)?a:Object.prototype),p=Function.apply.call(t,v,n);return c(p)?p:v}})},{16:16,3:3,33:33,35:35,40:40,51:51,7:7,71:71}],212:[function(t,n,r){var e=t(72),i=t(33),o=t(7),u=t(120);i(i.S+i.F*t(35)(function(){Reflect.defineProperty(e.f({},1,{value:1}),1,{value:2})}),\"Reflect\",{defineProperty:function defineProperty(t,n,r){o(t),n=u(n,!0),o(r);try{return e.f(t,n,r),!0}catch(t){return!1}}})},{120:120,33:33,35:35,7:7,72:72}],213:[function(t,n,r){var e=t(33),i=t(75).f,o=t(7);e(e.S,\"Reflect\",{deleteProperty:function deleteProperty(t,n){var r=i(o(t),n);return!(r&&!r.configurable)&&delete t[n]}})},{33:33,7:7,75:75}],214:[function(t,n,r){\"use strict\";var e=t(33),i=t(7),o=function(t){this._t=i(t),this._i=0;var n,r=this._k=[];for(n in t)r.push(n)};t(54)(o,\"Object\",function(){var t,n=this,r=n._k;do{if(n._i>=r.length)return{value:void 0,done:!0}}while(!((t=r[n._i++])in n._t));return{value:t,done:!1}}),e(e.S,\"Reflect\",{enumerate:function enumerate(t){return new o(t)}})},{33:33,54:54,7:7}],215:[function(t,n,r){var e=t(75),i=t(33),o=t(7);i(i.S,\"Reflect\",{getOwnPropertyDescriptor:function getOwnPropertyDescriptor(t,n){return e.f(o(t),n)}})},{33:33,7:7,75:75}],216:[function(t,n,r){var e=t(33),i=t(79),o=t(7);e(e.S,\"Reflect\",{getPrototypeOf:function getPrototypeOf(t){return i(o(t))}})},{33:33,7:7,79:79}],217:[function(t,n,r){function get(t,n){var r,u,f=arguments.length<3?t:arguments[2];return a(t)===f?t[n]:(r=e.f(t,n))?o(r,\"value\")?r.value:void 0!==r.get?r.get.call(f):void 0:c(u=i(t))?get(u,n,f):void 0}var e=t(75),i=t(79),o=t(41),u=t(33),c=t(51),a=t(7);u(u.S,\"Reflect\",{get:get})},{33:33,41:41,51:51,7:7,75:75,79:79}],218:[function(t,n,r){var e=t(33);e(e.S,\"Reflect\",{has:function has(t,n){return n in t}})},{33:33}],219:[function(t,n,r){var e=t(33),i=t(7),o=Object.isExtensible;e(e.S,\"Reflect\",{isExtensible:function isExtensible(t){return i(t),!o||o(t)}})},{33:33,7:7}],220:[function(t,n,r){var e=t(33);e(e.S,\"Reflect\",{ownKeys:t(85)})},{33:33,85:85}],221:[function(t,n,r){var e=t(33),i=t(7),o=Object.preventExtensions;e(e.S,\"Reflect\",{preventExtensions:function preventExtensions(t){i(t);try{return o&&o(t),!0}catch(t){return!1}}})},{33:33,7:7}],222:[function(t,n,r){var e=t(33),i=t(99);i&&e(e.S,\"Reflect\",{setPrototypeOf:function setPrototypeOf(t,n){i.check(t,n);try{return i.set(t,n),!0}catch(t){return!1}}})},{33:33,99:99}],223:[function(t,n,r){function set(t,n,r){var c,l,h=arguments.length<4?t:arguments[3],v=i.f(f(t),n);if(!v){if(s(l=o(t)))return set(l,n,r,h);v=a(0)}return u(v,\"value\")?!(!1===v.writable||!s(h))&&(c=i.f(h,n)||a(0),c.value=r,e.f(h,n,c),!0):void 0!==v.set&&(v.set.call(h,r),!0)}var e=t(72),i=t(75),o=t(79),u=t(41),c=t(33),a=t(92),f=t(7),s=t(51);c(c.S,\"Reflect\",{set:set})},{33:33,41:41,51:51,7:7,72:72,75:75,79:79,92:92}],224:[function(t,n,r){var e=t(40),i=t(45),o=t(72).f,u=t(77).f,c=t(52),a=t(37),f=e.RegExp,s=f,l=f.prototype,h=/a/g,v=/a/g,p=new f(h)!==h;if(t(29)&&(!p||t(35)(function(){return v[t(128)(\"match\")]=!1,f(h)!=h||f(v)==v||\"/a/i\"!=f(h,\"i\")}))){f=function RegExp(t,n){var r=this instanceof f,e=c(t),o=void 0===n;return!r&&e&&t.constructor===f&&o?t:i(p?new s(e&&!o?t.source:t,n):s((e=t instanceof f)?t.source:t,e&&o?a.call(t):n),r?this:l,f)};for(var d=u(s),y=0;d.length>y;)!function(t){t in f||o(f,t,{configurable:!0,get:function(){return s[t]},set:function(n){s[t]=n}})}(d[y++]);l.constructor=f,f.prototype=l,t(94)(e,\"RegExp\",f)}t(100)(\"RegExp\")},{100:100,128:128,29:29,35:35,37:37,40:40,45:45,52:52,72:72,77:77,94:94}],225:[function(t,n,r){t(29)&&\"g\"!=/./g.flags&&t(72).f(RegExp.prototype,\"flags\",{configurable:!0,get:t(37)})},{29:29,37:37,72:72}],226:[function(t,n,r){t(36)(\"match\",1,function(t,n,r){return[function match(r){\"use strict\";var e=t(this),i=void 0==r?void 0:r[n];return void 0!==i?i.call(r,e):new RegExp(r)[n](String(e))},r]})},{36:36}],227:[function(t,n,r){t(36)(\"replace\",2,function(t,n,r){return[function replace(e,i){\"use strict\";var o=t(this),u=void 0==e?void 0:e[n];return void 0!==u?u.call(e,o,i):r.call(String(o),e,i)},r]})},{36:36}],228:[function(t,n,r){t(36)(\"search\",1,function(t,n,r){return[function search(r){\"use strict\";var e=t(this),i=void 0==r?void 0:r[n];return void 0!==i?i.call(r,e):new RegExp(r)[n](String(e))},r]})},{36:36}],229:[function(t,n,r){t(36)(\"split\",2,function(n,r,e){\"use strict\";var i=t(52),o=e,u=[].push,c=\"length\";if(\"c\"==\"abbc\".split(/(b)*/)[1]||4!=\"test\".split(/(?:)/,-1)[c]||2!=\"ab\".split(/(?:ab)*/)[c]||4!=\".\".split(/(.?)(.?)/)[c]||\".\".split(/()()/)[c]>1||\"\".split(/.?/)[c]){var a=void 0===/()??/.exec(\"\")[1];e=function(t,n){var r=String(this);if(void 0===t&&0===n)return[];if(!i(t))return o.call(r,t,n);var e,f,s,l,h,v=[],p=(t.ignoreCase?\"i\":\"\")+(t.multiline?\"m\":\"\")+(t.unicode?\"u\":\"\")+(t.sticky?\"y\":\"\"),d=0,y=void 0===n?4294967295:n>>>0,g=new RegExp(t.source,p+\"g\");for(a||(e=new RegExp(\"^\"+g.source+\"$(?!\\\\s)\",p));(f=g.exec(r))&&!((s=f.index+f[0][c])>d&&(v.push(r.slice(d,f.index)),!a&&f[c]>1&&f[0].replace(e,function(){for(h=1;h<arguments[c]-2;h++)void 0===arguments[h]&&(f[h]=void 0)}),f[c]>1&&f.index<r[c]&&u.apply(v,f.slice(1)),l=f[0][c],d=s,v[c]>=y));)g.lastIndex===f.index&&g.lastIndex++;return d===r[c]?!l&&g.test(\"\")||v.push(\"\"):v.push(r.slice(d)),v[c]>y?v.slice(0,y):v}}else\"0\".split(void 0,0)[c]&&(e=function(t,n){return void 0===t&&0===n?[]:o.call(this,t,n)});return[function split(t,i){var o=n(this),u=void 0==t?void 0:t[r];return void 0!==u?u.call(t,o,i):e.call(String(o),t,i)},e]})},{36:36,52:52}],230:[function(t,n,r){\"use strict\";t(225);var e=t(7),i=t(37),o=t(29),u=/./.toString,c=function(n){t(94)(RegExp.prototype,\"toString\",n,!0)};t(35)(function(){return\"/a/b\"!=u.call({source:\"a\",flags:\"b\"})})?c(function toString(){var t=e(this);return\"/\".concat(t.source,\"/\",\"flags\"in t?t.flags:!o&&t instanceof RegExp?i.call(t):void 0)}):\"toString\"!=u.name&&c(function toString(){return u.call(this)})},{225:225,29:29,35:35,37:37,7:7,94:94}],231:[function(t,n,r){\"use strict\";var e=t(19),i=t(125);n.exports=t(22)(\"Set\",function(t){return function Set(){return t(this,arguments.length>0?arguments[0]:void 0)}},{add:function add(t){return e.def(i(this,\"Set\"),t=0===t?0:t,t)}},e)},{125:125,19:19,22:22}],232:[function(t,n,r){\"use strict\";t(108)(\"anchor\",function(t){return function anchor(n){return t(this,\"a\",\"name\",n)}})},{108:108}],233:[function(t,n,r){\"use strict\";t(108)(\"big\",function(t){return function big(){return t(this,\"big\",\"\",\"\")}})},{108:108}],234:[function(t,n,r){\"use strict\";t(108)(\"blink\",function(t){return function blink(){return t(this,\"blink\",\"\",\"\")}})},{108:108}],235:[function(t,n,r){\"use strict\";t(108)(\"bold\",function(t){return function bold(){return t(this,\"b\",\"\",\"\")}})},{108:108}],236:[function(t,n,r){\"use strict\";var e=t(33),i=t(106)(!1);e(e.P,\"String\",{codePointAt:function codePointAt(t){return i(this,t)}})},{106:106,33:33}],237:[function(t,n,r){\"use strict\";var e=t(33),i=t(118),o=t(107),u=\"\".endsWith;e(e.P+e.F*t(34)(\"endsWith\"),\"String\",{endsWith:function endsWith(t){var n=o(this,t,\"endsWith\"),r=arguments.length>1?arguments[1]:void 0,e=i(n.length),c=void 0===r?e:Math.min(i(r),e),a=String(t);return u?u.call(n,a,c):n.slice(c-a.length,c)===a}})},{107:107,118:118,33:33,34:34}],238:[function(t,n,r){\"use strict\";t(108)(\"fixed\",function(t){return function fixed(){return t(this,\"tt\",\"\",\"\")}})},{108:108}],239:[function(t,n,r){\"use strict\";t(108)(\"fontcolor\",function(t){return function fontcolor(n){return t(this,\"font\",\"color\",n)}})},{108:108}],240:[function(t,n,r){\"use strict\";t(108)(\"fontsize\",function(t){return function fontsize(n){return t(this,\"font\",\"size\",n)}})},{108:108}],241:[function(t,n,r){var e=t(33),i=t(114),o=String.fromCharCode,u=String.fromCodePoint;e(e.S+e.F*(!!u&&1!=u.length),\"String\",{fromCodePoint:function fromCodePoint(t){for(var n,r=[],e=arguments.length,u=0;e>u;){if(n=+arguments[u++],i(n,1114111)!==n)throw RangeError(n+\" is not a valid code point\");r.push(n<65536?o(n):o(55296+((n-=65536)>>10),n%1024+56320))}return r.join(\"\")}})},{114:114,33:33}],242:[function(t,n,r){\"use strict\";var e=t(33),i=t(107);e(e.P+e.F*t(34)(\"includes\"),\"String\",{includes:function includes(t){return!!~i(this,t,\"includes\").indexOf(t,arguments.length>1?arguments[1]:void 0)}})},{107:107,33:33,34:34}],243:[function(t,n,r){\"use strict\";t(108)(\"italics\",function(t){return function italics(){return t(this,\"i\",\"\",\"\")}})},{108:108}],244:[function(t,n,r){\"use strict\";var e=t(106)(!0);t(55)(String,\"String\",function(t){this._t=String(t),this._i=0},function(){var t,n=this._t,r=this._i;return r>=n.length?{value:void 0,done:!0}:(t=e(n,r),this._i+=t.length,{value:t,done:!1})})},{106:106,55:55}],245:[function(t,n,r){\"use strict\";t(108)(\"link\",function(t){return function link(n){return t(this,\"a\",\"href\",n)}})},{108:108}],246:[function(t,n,r){var e=t(33),i=t(117),o=t(118);e(e.S,\"String\",{raw:function raw(t){for(var n=i(t.raw),r=o(n.length),e=arguments.length,u=[],c=0;r>c;)u.push(String(n[c++])),c<e&&u.push(String(arguments[c]));return u.join(\"\")}})},{117:117,118:118,33:33}],247:[function(t,n,r){var e=t(33);e(e.P,\"String\",{repeat:t(110)})},{110:110,33:33}],248:[function(t,n,r){\"use strict\";t(108)(\"small\",function(t){return function small(){return t(this,\"small\",\"\",\"\")}})},{108:108}],249:[function(t,n,r){\"use strict\";var e=t(33),i=t(118),o=t(107),u=\"\".startsWith;e(e.P+e.F*t(34)(\"startsWith\"),\"String\",{startsWith:function startsWith(t){var n=o(this,t,\"startsWith\"),r=i(Math.min(arguments.length>1?arguments[1]:void 0,n.length)),e=String(t);return u?u.call(n,e,r):n.slice(r,r+e.length)===e}})},{107:107,118:118,33:33,34:34}],250:[function(t,n,r){\"use strict\";t(108)(\"strike\",function(t){return function strike(){return t(this,\"strike\",\"\",\"\")}})},{108:108}],251:[function(t,n,r){\"use strict\";t(108)(\"sub\",function(t){return function sub(){return t(this,\"sub\",\"\",\"\")}})},{108:108}],252:[function(t,n,r){\"use strict\";t(108)(\"sup\",function(t){return function sup(){return t(this,\"sup\",\"\",\"\")}})},{108:108}],253:[function(t,n,r){\"use strict\";t(111)(\"trim\",function(t){return function trim(){return t(this,3)}})},{111:111}],254:[function(t,n,r){\"use strict\";var e=t(40),i=t(41),o=t(29),u=t(33),c=t(94),a=t(66).KEY,f=t(35),s=t(103),l=t(101),h=t(124),v=t(128),p=t(127),d=t(126),y=t(59),g=t(32),m=t(49),b=t(7),x=t(117),S=t(120),w=t(92),_=t(71),E=t(76),O=t(75),P=t(72),M=t(81),F=O.f,I=P.f,A=E.f,k=e.Symbol,N=e.JSON,j=N&&N.stringify,T=v(\"_hidden\"),R=v(\"toPrimitive\"),L={}.propertyIsEnumerable,G=s(\"symbol-registry\"),D=s(\"symbols\"),C=s(\"op-symbols\"),W=Object.prototype,U=\"function\"==typeof k,B=e.QObject,V=!B||!B.prototype||!B.prototype.findChild,z=o&&f(function(){return 7!=_(I({},\"a\",{get:function(){return I(this,\"a\",{value:7}).a}})).a})?function(t,n,r){var e=F(W,n);e&&delete W[n],I(t,n,r),e&&t!==W&&I(W,n,e)}:I,q=function(t){var n=D[t]=_(k.prototype);return n._k=t,n},K=U&&\"symbol\"==typeof k.iterator?function(t){return\"symbol\"==typeof t}:function(t){return t instanceof k},Y=function defineProperty(t,n,r){return t===W&&Y(C,n,r),b(t),n=S(n,!0),b(r),i(D,n)?(r.enumerable?(i(t,T)&&t[T][n]&&(t[T][n]=!1),r=_(r,{enumerable:w(0,!1)})):(i(t,T)||I(t,T,w(1,{})),t[T][n]=!0),z(t,n,r)):I(t,n,r)},J=function defineProperties(t,n){b(t);for(var r,e=g(n=x(n)),i=0,o=e.length;o>i;)Y(t,r=e[i++],n[r]);return t},H=function create(t,n){return void 0===n?_(t):J(_(t),n)},X=function propertyIsEnumerable(t){var n=L.call(this,t=S(t,!0));return!(this===W&&i(D,t)&&!i(C,t))&&(!(n||!i(this,t)||!i(D,t)||i(this,T)&&this[T][t])||n)},$=function getOwnPropertyDescriptor(t,n){if(t=x(t),n=S(n,!0),t!==W||!i(D,n)||i(C,n)){var r=F(t,n);return!r||!i(D,n)||i(t,T)&&t[T][n]||(r.enumerable=!0),r}},Z=function getOwnPropertyNames(t){for(var n,r=A(x(t)),e=[],o=0;r.length>o;)i(D,n=r[o++])||n==T||n==a||e.push(n);return e},Q=function getOwnPropertySymbols(t){for(var n,r=t===W,e=A(r?C:x(t)),o=[],u=0;e.length>u;)!i(D,n=e[u++])||r&&!i(W,n)||o.push(D[n]);return o};U||(k=function Symbol(){if(this instanceof k)throw TypeError(\"Symbol is not a constructor!\");var t=h(arguments.length>0?arguments[0]:void 0),n=function(r){this===W&&n.call(C,r),i(this,T)&&i(this[T],t)&&(this[T][t]=!1),z(this,t,w(1,r))};return o&&V&&z(W,t,{configurable:!0,set:n}),q(t)},c(k.prototype,\"toString\",function toString(){return this._k}),O.f=$,P.f=Y,t(77).f=E.f=Z,t(82).f=X,t(78).f=Q,o&&!t(60)&&c(W,\"propertyIsEnumerable\",X,!0),p.f=function(t){return q(v(t))}),u(u.G+u.W+u.F*!U,{Symbol:k});for(var tt=\"hasInstance,isConcatSpreadable,iterator,match,replace,search,species,split,toPrimitive,toStringTag,unscopables\".split(\",\"),nt=0;tt.length>nt;)v(tt[nt++]);for(var rt=M(v.store),et=0;rt.length>et;)d(rt[et++]);u(u.S+u.F*!U,\"Symbol\",{for:function(t){return i(G,t+=\"\")?G[t]:G[t]=k(t)},keyFor:function keyFor(t){if(K(t))return y(G,t);throw TypeError(t+\" is not a symbol!\")},useSetter:function(){V=!0},useSimple:function(){V=!1}}),u(u.S+u.F*!U,\"Object\",{create:H,defineProperty:Y,defineProperties:J,getOwnPropertyDescriptor:$,getOwnPropertyNames:Z,getOwnPropertySymbols:Q}),N&&u(u.S+u.F*(!U||f(function(){var t=k();return\"[null]\"!=j([t])||\"{}\"!=j({a:t})||\"{}\"!=j(Object(t))})),\"JSON\",{stringify:function stringify(t){if(void 0!==t&&!K(t)){for(var n,r,e=[t],i=1;arguments.length>i;)e.push(arguments[i++]);return n=e[1],\"function\"==typeof n&&(r=n),!r&&m(n)||(n=function(t,n){if(r&&(n=r.call(this,t,n)),!K(n))return n}),e[1]=n,j.apply(N,e)}}}),k.prototype[R]||t(42)(k.prototype,R,k.prototype.valueOf),l(k,\"Symbol\"),l(Math,\"Math\",!0),l(e.JSON,\"JSON\",!0)},{101:101,103:103,117:117,120:120,124:124,126:126,127:127,128:128,29:29,32:32,33:33,35:35,40:40,41:41,42:42,49:49,59:59,60:60,66:66,7:7,71:71,72:72,75:75,76:76,77:77,78:78,81:81,82:82,92:92,94:94}],255:[function(t,n,r){\"use strict\";var e=t(33),i=t(123),o=t(122),u=t(7),c=t(114),a=t(118),f=t(51),s=t(40).ArrayBuffer,l=t(104),h=o.ArrayBuffer,v=o.DataView,p=i.ABV&&s.isView,d=h.prototype.slice,y=i.VIEW;e(e.G+e.W+e.F*(s!==h),{ArrayBuffer:h}),e(e.S+e.F*!i.CONSTR,\"ArrayBuffer\",{isView:function isView(t){return p&&p(t)||f(t)&&y in t}}),e(e.P+e.U+e.F*t(35)(function(){return!new h(2).slice(1,void 0).byteLength}),\"ArrayBuffer\",{slice:function slice(t,n){if(void 0!==d&&void 0===n)return d.call(u(this),t);for(var r=u(this).byteLength,e=c(t,r),i=c(void 0===n?r:n,r),o=new(l(this,h))(a(i-e)),f=new v(this),s=new v(o),p=0;e<i;)s.setUint8(p++,f.getUint8(e++));return o}}),t(100)(\"ArrayBuffer\")},{100:100,104:104,114:114,118:118,122:122,123:123,33:33,35:35,40:40,51:51,7:7}],256:[function(t,n,r){var e=t(33);e(e.G+e.W+e.F*!t(123).ABV,{DataView:t(122).DataView})},{122:122,123:123,33:33}],257:[function(t,n,r){t(121)(\"Float32\",4,function(t){return function Float32Array(n,r,e){return t(this,n,r,e)}})},{121:121}],258:[function(t,n,r){t(121)(\"Float64\",8,function(t){return function Float64Array(n,r,e){return t(this,n,r,e)}})},{121:121}],259:[function(t,n,r){t(121)(\"Int16\",2,function(t){return function Int16Array(n,r,e){return t(this,n,r,e)}})},{121:121}],260:[function(t,n,r){t(121)(\"Int32\",4,function(t){return function Int32Array(n,r,e){return t(this,n,r,e)}})},{121:121}],261:[function(t,n,r){t(121)(\"Int8\",1,function(t){return function Int8Array(n,r,e){return t(this,n,r,e)}})},{121:121}],262:[function(t,n,r){t(121)(\"Uint16\",2,function(t){return function Uint16Array(n,r,e){return t(this,n,r,e)}})},{121:121}],263:[function(t,n,r){t(121)(\"Uint32\",4,function(t){return function Uint32Array(n,r,e){return t(this,n,r,e)}})},{121:121}],264:[function(t,n,r){t(121)(\"Uint8\",1,function(t){return function Uint8Array(n,r,e){return t(this,n,r,e)}})},{121:121}],265:[function(t,n,r){t(121)(\"Uint8\",1,function(t){return function Uint8ClampedArray(n,r,e){return t(this,n,r,e)}},!0)},{121:121}],266:[function(t,n,r){\"use strict\";var e,i=t(12)(0),o=t(94),u=t(66),c=t(70),a=t(21),f=t(51),s=t(35),l=t(125),h=u.getWeak,v=Object.isExtensible,p=a.ufstore,d={},y=function(t){return function WeakMap(){return t(this,arguments.length>0?arguments[0]:void 0)}},g={get:function get(t){if(f(t)){var n=h(t);return!0===n?p(l(this,\"WeakMap\")).get(t):n?n[this._i]:void 0}},set:function set(t,n){return a.def(l(this,\"WeakMap\"),t,n)}},m=n.exports=t(22)(\"WeakMap\",y,g,a,!0,!0);s(function(){return 7!=(new m).set((Object.freeze||Object)(d),7).get(d)})&&(e=a.getConstructor(y,\"WeakMap\"),c(e.prototype,g),u.NEED=!0,i([\"delete\",\"has\",\"get\",\"set\"],function(t){var n=m.prototype,r=n[t];o(n,t,function(n,i){if(f(n)&&!v(n)){this._f||(this._f=new e);var o=this._f[t](n,i);return\"set\"==t?this:o}return r.call(this,n,i)})}))},{12:12,125:125,21:21,22:22,35:35,51:51,66:66,70:70,94:94}],267:[function(t,n,r){\"use strict\";var e=t(21),i=t(125);t(22)(\"WeakSet\",function(t){return function WeakSet(){return t(this,arguments.length>0?arguments[0]:void 0)}},{add:function add(t){return e.def(i(this,\"WeakSet\"),t,!0)}},e,!1,!0)},{125:125,21:21,22:22}],268:[function(t,n,r){\"use strict\";var e=t(33),i=t(38),o=t(119),u=t(118),c=t(3),a=t(15);e(e.P,\"Array\",{flatMap:function flatMap(t){var n,r,e=o(this);return c(t),n=u(e.length),r=a(e,0),i(r,e,e,n,0,1,t,arguments[1]),r}}),t(5)(\"flatMap\")},{118:118,119:119,15:15,3:3,33:33,38:38,5:5}],269:[function(t,n,r){\"use strict\";var e=t(33),i=t(38),o=t(119),u=t(118),c=t(116),a=t(15);e(e.P,\"Array\",{flatten:function flatten(){var t=arguments[0],n=o(this),r=u(n.length),e=a(n,0);return i(e,n,n,r,0,void 0===t?1:c(t)),e}}),t(5)(\"flatten\")},{116:116,118:118,119:119,15:15,33:33,38:38,5:5}],270:[function(t,n,r){\"use strict\";var e=t(33),i=t(11)(!0);e(e.P,\"Array\",{includes:function includes(t){return i(this,t,arguments.length>1?arguments[1]:void 0)}}),t(5)(\"includes\")},{11:11,33:33,5:5}],271:[function(t,n,r){var e=t(33),i=t(68)(),o=t(40).process,u=\"process\"==t(18)(o);e(e.G,{asap:function asap(t){var n=u&&o.domain;i(n?n.bind(t):t)}})},{18:18,33:33,40:40,68:68}],272:[function(t,n,r){var e=t(33),i=t(18);e(e.S,\"Error\",{isError:function isError(t){return\"Error\"===i(t)}})},{18:18,33:33}],273:[function(t,n,r){var e=t(33);e(e.G,{global:t(40)})},{33:33,40:40}],274:[function(t,n,r){t(97)(\"Map\")},{97:97}],275:[function(t,n,r){t(98)(\"Map\")},{98:98}],276:[function(t,n,r){var e=t(33);e(e.P+e.R,\"Map\",{toJSON:t(20)(\"Map\")})},{20:20,33:33}],277:[function(t,n,r){var e=t(33);e(e.S,\"Math\",{clamp:function clamp(t,n,r){return Math.min(r,Math.max(n,t))}})},{33:33}],278:[function(t,n,r){var e=t(33);e(e.S,\"Math\",{DEG_PER_RAD:Math.PI/180})},{33:33}],279:[function(t,n,r){var e=t(33),i=180/Math.PI;e(e.S,\"Math\",{degrees:function degrees(t){return t*i}})},{33:33}],280:[function(t,n,r){var e=t(33),i=t(64),o=t(62);e(e.S,\"Math\",{fscale:function fscale(t,n,r,e,u){return o(i(t,n,r,e,u))}})},{33:33,62:62,64:64}],281:[function(t,n,r){var e=t(33);e(e.S,\"Math\",{iaddh:function iaddh(t,n,r,e){var i=t>>>0,o=n>>>0,u=r>>>0;return o+(e>>>0)+((i&u|(i|u)&~(i+u>>>0))>>>31)|0}})},{33:33}],282:[function(t,n,r){var e=t(33);e(e.S,\"Math\",{imulh:function imulh(t,n){var r=+t,e=+n,i=65535&r,o=65535&e,u=r>>16,c=e>>16,a=(u*o>>>0)+(i*o>>>16);return u*c+(a>>16)+((i*c>>>0)+(65535&a)>>16)}})},{33:33}],283:[function(t,n,r){var e=t(33);e(e.S,\"Math\",{isubh:function isubh(t,n,r,e){var i=t>>>0,o=n>>>0,u=r>>>0;return o-(e>>>0)-((~i&u|~(i^u)&i-u>>>0)>>>31)|0}})},{33:33}],284:[function(t,n,r){var e=t(33);e(e.S,\"Math\",{RAD_PER_DEG:180/Math.PI})},{33:33}],285:[function(t,n,r){var e=t(33),i=Math.PI/180;e(e.S,\"Math\",{radians:function radians(t){return t*i}})},{33:33}],286:[function(t,n,r){var e=t(33);e(e.S,\"Math\",{scale:t(64)})},{33:33,64:64}],287:[function(t,n,r){var e=t(33);e(e.S,\"Math\",{signbit:function signbit(t){return(t=+t)!=t?t:0==t?1/t==1/0:t>0}})},{33:33}],288:[function(t,n,r){var e=t(33);e(e.S,\"Math\",{umulh:function umulh(t,n){var r=+t,e=+n,i=65535&r,o=65535&e,u=r>>>16,c=e>>>16,a=(u*o>>>0)+(i*o>>>16);return u*c+(a>>>16)+((i*c>>>0)+(65535&a)>>>16)}})},{33:33}],289:[function(t,n,r){\"use strict\";var e=t(33),i=t(119),o=t(3),u=t(72);t(29)&&e(e.P+t(74),\"Object\",{__defineGetter__:function __defineGetter__(t,n){u.f(i(this),t,{get:o(n),enumerable:!0,configurable:!0})}})},{119:119,29:29,3:3,33:33,72:72,74:74}],290:[function(t,n,r){\"use strict\";var e=t(33),i=t(119),o=t(3),u=t(72);t(29)&&e(e.P+t(74),\"Object\",{__defineSetter__:function __defineSetter__(t,n){u.f(i(this),t,{set:o(n),enumerable:!0,configurable:!0})}})},{119:119,29:29,3:3,33:33,72:72,74:74}],291:[function(t,n,r){var e=t(33),i=t(84)(!0);e(e.S,\"Object\",{entries:function entries(t){return i(t)}})},{33:33,84:84}],292:[function(t,n,r){var e=t(33),i=t(85),o=t(117),u=t(75),c=t(24);e(e.S,\"Object\",{getOwnPropertyDescriptors:function getOwnPropertyDescriptors(t){for(var n,r,e=o(t),a=u.f,f=i(e),s={},l=0;f.length>l;)void 0!==(r=a(e,n=f[l++]))&&c(s,n,r);return s}})},{117:117,24:24,33:33,75:75,85:85}],293:[function(t,n,r){\"use strict\";var e=t(33),i=t(119),o=t(120),u=t(79),c=t(75).f;t(29)&&e(e.P+t(74),\"Object\",{__lookupGetter__:function __lookupGetter__(t){var n,r=i(this),e=o(t,!0);do{if(n=c(r,e))return n.get}while(r=u(r))}})},{119:119,120:120,29:29,33:33,74:74,75:75,79:79}],294:[function(t,n,r){\"use strict\";var e=t(33),i=t(119),o=t(120),u=t(79),c=t(75).f;t(29)&&e(e.P+t(74),\"Object\",{__lookupSetter__:function __lookupSetter__(t){var n,r=i(this),e=o(t,!0);do{if(n=c(r,e))return n.set}while(r=u(r))}})},{119:119,120:120,29:29,33:33,74:74,75:75,79:79}],295:[function(t,n,r){var e=t(33),i=t(84)(!1);e(e.S,\"Object\",{values:function values(t){return i(t)}})},{33:33,84:84}],296:[function(t,n,r){\"use strict\";var e=t(33),i=t(40),o=t(23),u=t(68)(),c=t(128)(\"observable\"),a=t(3),f=t(7),s=t(6),l=t(93),h=t(42),v=t(39),p=v.RETURN,d=function(t){return null==t?void 0:a(t)},y=function(t){var n=t._c;n&&(t._c=void 0,n())},g=function(t){return void 0===t._o},m=function(t){g(t)||(t._o=void 0,y(t))},b=function(t,n){f(t),this._c=void 0,this._o=t,t=new x(this);try{var r=n(t),e=r;null!=r&&(\"function\"==typeof r.unsubscribe?r=function(){e.unsubscribe()}:a(r),this._c=r)}catch(n){return void t.error(n)}g(this)&&y(this)};b.prototype=l({},{unsubscribe:function unsubscribe(){m(this)}});var x=function(t){this._s=t};x.prototype=l({},{next:function next(t){var n=this._s;if(!g(n)){var r=n._o;try{var e=d(r.next);if(e)return e.call(r,t)}catch(t){try{m(n)}finally{throw t}}}},error:function error(t){var n=this._s;if(g(n))throw t;var r=n._o;n._o=void 0;try{var e=d(r.error);if(!e)throw t;t=e.call(r,t)}catch(t){try{y(n)}finally{throw t}}return y(n),t},complete:function complete(t){var n=this._s;if(!g(n)){var r=n._o;n._o=void 0;try{var e=d(r.complete);t=e?e.call(r,t):void 0}catch(t){try{y(n)}finally{throw t}}return y(n),t}}});var S=function Observable(t){s(this,S,\"Observable\",\"_f\")._f=a(t)};l(S.prototype,{subscribe:function subscribe(t){return new b(t,this._f)},forEach:function forEach(t){var n=this;return new(o.Promise||i.Promise)(function(r,e){a(t);var i=n.subscribe({next:function(n){try{return t(n)}catch(t){e(t),i.unsubscribe()}},error:e,complete:r})})}}),l(S,{from:function from(t){var n=\"function\"==typeof this?this:S,r=d(f(t)[c]);if(r){var e=f(r.call(t));return e.constructor===n?e:new n(function(t){return e.subscribe(t)})}return new n(function(n){var r=!1;return u(function(){if(!r){try{if(v(t,!1,function(t){if(n.next(t),r)return p})===p)return}catch(t){if(r)throw t;return void n.error(t)}n.complete()}}),function(){r=!0}})},of:function of(){for(var t=0,n=arguments.length,r=Array(n);t<n;)r[t]=arguments[t++];return new(\"function\"==typeof this?this:S)(function(t){var n=!1;return u(function(){if(!n){for(var e=0;e<r.length;++e)if(t.next(r[e]),n)return;t.complete()}}),function(){n=!0}})}}),h(S.prototype,c,function(){return this}),e(e.G,{Observable:S}),t(100)(\"Observable\")},{100:100,128:128,23:23,3:3,33:33,39:39,40:40,42:42,6:6,68:68,7:7,93:93}],297:[function(t,n,r){\"use strict\";var e=t(33),i=t(23),o=t(40),u=t(104),c=t(91);e(e.P+e.R,\"Promise\",{finally:function(t){var n=u(this,i.Promise||o.Promise),r=\"function\"==typeof t;return this.then(r?function(r){return c(n,t()).then(function(){return r})}:t,r?function(r){return c(n,t()).then(function(){throw r})}:t)}})},{104:104,23:23,33:33,40:40,91:91}],298:[function(t,n,r){\"use strict\";var e=t(33),i=t(69),o=t(90);e(e.S,\"Promise\",{try:function(t){var n=i.f(this),r=o(t);return(r.e?n.reject:n.resolve)(r.v),n.promise}})},{33:33,69:69,90:90}],299:[function(t,n,r){var e=t(67),i=t(7),o=e.key,u=e.set;e.exp({defineMetadata:function defineMetadata(t,n,r,e){u(t,n,i(r),o(e))}})},{67:67,7:7}],300:[function(t,n,r){var e=t(67),i=t(7),o=e.key,u=e.map,c=e.store;e.exp({deleteMetadata:function deleteMetadata(t,n){var r=arguments.length<3?void 0:o(arguments[2]),e=u(i(n),r,!1);if(void 0===e||!e.delete(t))return!1;if(e.size)return!0;var a=c.get(n);return a.delete(r),!!a.size||c.delete(n)}})},{67:67,7:7}],301:[function(t,n,r){var e=t(231),i=t(10),o=t(67),u=t(7),c=t(79),a=o.keys,f=o.key,s=function(t,n){var r=a(t,n),o=c(t);if(null===o)return r;var u=s(o,n);return u.length?r.length?i(new e(r.concat(u))):u:r};o.exp({getMetadataKeys:function getMetadataKeys(t){return s(u(t),arguments.length<2?void 0:f(arguments[1]))}})},{10:10,231:231,67:67,7:7,79:79}],302:[function(t,n,r){var e=t(67),i=t(7),o=t(79),u=e.has,c=e.get,a=e.key,f=function(t,n,r){if(u(t,n,r))return c(t,n,r);var e=o(n);return null!==e?f(t,e,r):void 0};e.exp({getMetadata:function getMetadata(t,n){return f(t,i(n),arguments.length<3?void 0:a(arguments[2]))}})},{67:67,7:7,79:79}],303:[function(t,n,r){var e=t(67),i=t(7),o=e.keys,u=e.key;e.exp({getOwnMetadataKeys:function getOwnMetadataKeys(t){return o(i(t),arguments.length<2?void 0:u(arguments[1]))}})},{67:67,7:7}],304:[function(t,n,r){var e=t(67),i=t(7),o=e.get,u=e.key;e.exp({getOwnMetadata:function getOwnMetadata(t,n){return o(t,i(n),arguments.length<3?void 0:u(arguments[2]))}})},{67:67,7:7}],305:[function(t,n,r){var e=t(67),i=t(7),o=t(79),u=e.has,c=e.key,a=function(t,n,r){if(u(t,n,r))return!0;var e=o(n);return null!==e&&a(t,e,r)};e.exp({hasMetadata:function hasMetadata(t,n){return a(t,i(n),arguments.length<3?void 0:c(arguments[2]))}})},{67:67,7:7,79:79}],306:[function(t,n,r){var e=t(67),i=t(7),o=e.has,u=e.key;e.exp({hasOwnMetadata:function hasOwnMetadata(t,n){return o(t,i(n),arguments.length<3?void 0:u(arguments[2]))}})},{67:67,7:7}],307:[function(t,n,r){var e=t(67),i=t(7),o=t(3),u=e.key,c=e.set;e.exp({metadata:function metadata(t,n){return function decorator(r,e){c(t,n,(void 0!==e?i:o)(r),u(e))}}})},{3:3,67:67,7:7}],308:[function(t,n,r){t(97)(\"Set\")},{97:97}],309:[function(t,n,r){t(98)(\"Set\")},{98:98}],310:[function(t,n,r){var e=t(33);e(e.P+e.R,\"Set\",{toJSON:t(20)(\"Set\")})},{20:20,33:33}],311:[function(t,n,r){\"use strict\";var e=t(33),i=t(106)(!0);e(e.P,\"String\",{at:function at(t){return i(this,t)}})},{106:106,33:33}],312:[function(t,n,r){\"use strict\";var e=t(33),i=t(28),o=t(118),u=t(52),c=t(37),a=RegExp.prototype,f=function(t,n){this._r=t,this._s=n};t(54)(f,\"RegExp String\",function next(){var t=this._r.exec(this._s);return{value:t,done:null===t}}),e(e.P,\"String\",{matchAll:function matchAll(t){if(i(this),!u(t))throw TypeError(t+\" is not a regexp!\");var n=String(this),r=\"flags\"in a?String(t.flags):c.call(t),e=new RegExp(t.source,~r.indexOf(\"g\")?r:\"g\"+r);return e.lastIndex=o(t.lastIndex),new f(e,n)}})},{118:118,28:28,33:33,37:37,52:52,54:54}],313:[function(t,n,r){\"use strict\";var e=t(33),i=t(109);e(e.P,\"String\",{padEnd:function padEnd(t){return i(this,t,arguments.length>1?arguments[1]:void 0,!1)}})},{109:109,33:33}],314:[function(t,n,r){\"use strict\";var e=t(33),i=t(109);e(e.P,\"String\",{padStart:function padStart(t){return i(this,t,arguments.length>1?arguments[1]:void 0,!0)}})},{109:109,33:33}],315:[function(t,n,r){\"use strict\";t(111)(\"trimLeft\",function(t){return function trimLeft(){return t(this,1)}},\"trimStart\")},{111:111}],316:[function(t,n,r){\"use strict\";t(111)(\"trimRight\",function(t){return function trimRight(){return t(this,2)}},\"trimEnd\")},{111:111}],317:[function(t,n,r){t(126)(\"asyncIterator\")},{126:126}],318:[function(t,n,r){t(126)(\"observable\")},{126:126}],319:[function(t,n,r){var e=t(33);e(e.S,\"System\",{global:t(40)})},{33:33,40:40}],320:[function(t,n,r){t(97)(\"WeakMap\")},{97:97}],321:[function(t,n,r){t(98)(\"WeakMap\")},{98:98}],322:[function(t,n,r){t(97)(\"WeakSet\")},{97:97}],323:[function(t,n,r){t(98)(\"WeakSet\")},{98:98}],324:[function(t,n,r){for(var e=t(141),i=t(81),o=t(94),u=t(40),c=t(42),a=t(58),f=t(128),s=f(\"iterator\"),l=f(\"toStringTag\"),h=a.Array,v={CSSRuleList:!0,CSSStyleDeclaration:!1,CSSValueList:!1,ClientRectList:!1,DOMRectList:!1,DOMStringList:!1,DOMTokenList:!0,DataTransferItemList:!1,FileList:!1,HTMLAllCollection:!1,HTMLCollection:!1,HTMLFormElement:!1,HTMLSelectElement:!1,MediaList:!0,MimeTypeArray:!1,NamedNodeMap:!1,NodeList:!0,PaintRequestList:!1,Plugin:!1,PluginArray:!1,SVGLengthList:!1,SVGNumberList:!1,SVGPathSegList:!1,SVGPointList:!1,SVGStringList:!1,SVGTransformList:!1,SourceBufferList:!1,StyleSheetList:!0,TextTrackCueList:!1,TextTrackList:!1,TouchList:!1},p=i(v),d=0;d<p.length;d++){var y,g=p[d],m=v[g],b=u[g],x=b&&b.prototype;if(x&&(x[s]||c(x,s,h),x[l]||c(x,l,g),a[g]=h,m))for(y in e)x[y]||o(x,y,e[y],!0)}},{128:128,141:141,40:40,42:42,58:58,81:81,94:94}],325:[function(t,n,r){var e=t(33),i=t(113);e(e.G+e.B,{setImmediate:i.set,clearImmediate:i.clear})},{113:113,33:33}],326:[function(t,n,r){var e=t(40),i=t(33),o=t(46),u=t(88),c=e.navigator,a=!!c&&/MSIE .\\./.test(c.userAgent),f=function(t){return a?function(n,r){return t(o(u,[].slice.call(arguments,2),\"function\"==typeof n?n:Function(n)),r)}:t};i(i.G+i.B+i.F*a,{setTimeout:f(e.setTimeout),setInterval:f(e.setInterval)})},{33:33,40:40,46:46,88:88}],327:[function(t,n,r){t(254),t(191),t(193),t(192),t(195),t(197),t(202),t(196),t(194),t(204),t(203),t(199),t(200),t(198),t(190),t(201),t(205),t(206),t(157),t(159),t(158),t(208),t(207),t(178),t(188),t(189),t(179),t(180),t(181),t(182),t(183),t(184),t(185),t(186),t(187),t(161),t(162),t(163),t(164),t(165),t(166),t(167),t(168),t(169),t(170),t(171),t(172),t(173),t(174),t(175),t(176),t(177),t(241),t(246),t(253),t(244),t(236),t(237),t(242),t(247),t(249),t(232),t(233),t(234),t(235),t(238),t(239),t(240),t(243),t(245),t(248),t(250),t(251),t(252),t(152),t(154),t(153),t(156),t(155),t(140),t(138),t(145),t(142),t(148),t(150),t(137),t(144),t(134),t(149),t(132),t(147),t(146),t(139),t(143),t(131),t(133),t(136),t(135),t(151),t(141),t(224),t(230),t(225),t(226),t(227),t(228),t(229),t(209),t(160),t(231),t(266),t(267),t(255),t(256),t(261),t(264),t(265),t(259),t(262),t(260),t(263),t(257),t(258),t(210),t(211),t(212),t(213),t(214),t(217),t(215),t(216),t(218),t(219),t(220),t(221),t(223),t(222),t(270),t(268),t(269),t(311),t(314),t(313),t(315),t(316),t(312),t(317),t(318),t(292),t(295),t(291),t(289),t(290),t(293),t(294),t(276),t(310),t(275),t(309),t(321),t(323),t(274),t(308),t(320),t(322),t(273),t(319),t(272),t(277),t(278),t(279),t(280),t(281),t(283),t(282),t(284),t(285),t(286),t(288),t(287),t(297),t(298),t(299),t(300),t(302),t(301),t(304),t(303),t(305),t(306),t(307),t(271),t(296),t(326),t(325),t(324),n.exports=t(23)},{131:131,132:132,133:133,134:134,135:135,136:136,137:137,138:138,139:139,140:140,141:141,142:142,143:143,144:144,145:145,146:146,147:147,148:148,149:149,150:150,151:151,152:152,153:153,154:154,155:155,156:156,157:157,158:158,159:159,160:160,161:161,162:162,163:163,164:164,165:165,166:166,167:167,168:168,169:169,170:170,171:171,172:172,173:173,174:174,175:175,176:176,177:177,178:178,179:179,180:180,181:181,182:182,183:183,184:184,185:185,\n186:186,187:187,188:188,189:189,190:190,191:191,192:192,193:193,194:194,195:195,196:196,197:197,198:198,199:199,200:200,201:201,202:202,203:203,204:204,205:205,206:206,207:207,208:208,209:209,210:210,211:211,212:212,213:213,214:214,215:215,216:216,217:217,218:218,219:219,220:220,221:221,222:222,223:223,224:224,225:225,226:226,227:227,228:228,229:229,23:23,230:230,231:231,232:232,233:233,234:234,235:235,236:236,237:237,238:238,239:239,240:240,241:241,242:242,243:243,244:244,245:245,246:246,247:247,248:248,249:249,250:250,251:251,252:252,253:253,254:254,255:255,256:256,257:257,258:258,259:259,260:260,261:261,262:262,263:263,264:264,265:265,266:266,267:267,268:268,269:269,270:270,271:271,272:272,273:273,274:274,275:275,276:276,277:277,278:278,279:279,280:280,281:281,282:282,283:283,284:284,285:285,286:286,287:287,288:288,289:289,290:290,291:291,292:292,293:293,294:294,295:295,296:296,297:297,298:298,299:299,300:300,301:301,302:302,303:303,304:304,305:305,306:306,307:307,308:308,309:309,310:310,311:311,312:312,313:313,314:314,315:315,316:316,317:317,318:318,319:319,320:320,321:321,322:322,323:323,324:324,325:325,326:326}],328:[function(t,n,r){(function(t){!function(t){\"use strict\";function wrap(t,n,r,e){var i=n&&n.prototype instanceof Generator?n:Generator,o=Object.create(i.prototype),u=new Context(e||[]);return o._invoke=makeInvokeMethod(t,r,u),o}function tryCatch(t,n,r){try{return{type:\"normal\",arg:t.call(n,r)}}catch(t){return{type:\"throw\",arg:t}}}function Generator(){}function GeneratorFunction(){}function GeneratorFunctionPrototype(){}function defineIteratorMethods(t){[\"next\",\"throw\",\"return\"].forEach(function(n){t[n]=function(t){return this._invoke(n,t)}})}function AsyncIterator(n){function invoke(t,r,e,o){var u=tryCatch(n[t],n,r);if(\"throw\"!==u.type){var c=u.arg,a=c.value;return a&&\"object\"==typeof a&&i.call(a,\"__await\")?Promise.resolve(a.__await).then(function(t){invoke(\"next\",t,e,o)},function(t){invoke(\"throw\",t,e,o)}):Promise.resolve(a).then(function(t){c.value=t,e(c)},o)}o(u.arg)}function enqueue(t,n){function callInvokeWithMethodAndArg(){return new Promise(function(r,e){invoke(t,n,r,e)})}return r=r?r.then(callInvokeWithMethodAndArg,callInvokeWithMethodAndArg):callInvokeWithMethodAndArg()}\"object\"==typeof t.process&&t.process.domain&&(invoke=t.process.domain.bind(invoke));var r;this._invoke=enqueue}function makeInvokeMethod(t,n,r){var e=l;return function invoke(i,o){if(e===v)throw new Error(\"Generator is already running\");if(e===p){if(\"throw\"===i)throw o;return doneResult()}for(r.method=i,r.arg=o;;){var u=r.delegate;if(u){var c=maybeInvokeDelegate(u,r);if(c){if(c===d)continue;return c}}if(\"next\"===r.method)r.sent=r._sent=r.arg;else if(\"throw\"===r.method){if(e===l)throw e=p,r.arg;r.dispatchException(r.arg)}else\"return\"===r.method&&r.abrupt(\"return\",r.arg);e=v;var a=tryCatch(t,n,r);if(\"normal\"===a.type){if(e=r.done?p:h,a.arg===d)continue;return{value:a.arg,done:r.done}}\"throw\"===a.type&&(e=p,r.method=\"throw\",r.arg=a.arg)}}}function maybeInvokeDelegate(t,n){var e=t.iterator[n.method];if(e===r){if(n.delegate=null,\"throw\"===n.method){if(t.iterator.return&&(n.method=\"return\",n.arg=r,maybeInvokeDelegate(t,n),\"throw\"===n.method))return d;n.method=\"throw\",n.arg=new TypeError(\"The iterator does not provide a 'throw' method\")}return d}var i=tryCatch(e,t.iterator,n.arg);if(\"throw\"===i.type)return n.method=\"throw\",n.arg=i.arg,n.delegate=null,d;var o=i.arg;return o?o.done?(n[t.resultName]=o.value,n.next=t.nextLoc,\"return\"!==n.method&&(n.method=\"next\",n.arg=r),n.delegate=null,d):o:(n.method=\"throw\",n.arg=new TypeError(\"iterator result is not an object\"),n.delegate=null,d)}function pushTryEntry(t){var n={tryLoc:t[0]};1 in t&&(n.catchLoc=t[1]),2 in t&&(n.finallyLoc=t[2],n.afterLoc=t[3]),this.tryEntries.push(n)}function resetTryEntry(t){var n=t.completion||{};n.type=\"normal\",delete n.arg,t.completion=n}function Context(t){this.tryEntries=[{tryLoc:\"root\"}],t.forEach(pushTryEntry,this),this.reset(!0)}function values(t){if(t){var n=t[u];if(n)return n.call(t);if(\"function\"==typeof t.next)return t;if(!isNaN(t.length)){var e=-1,o=function next(){for(;++e<t.length;)if(i.call(t,e))return next.value=t[e],next.done=!1,next;return next.value=r,next.done=!0,next};return o.next=o}}return{next:doneResult}}function doneResult(){return{value:r,done:!0}}var r,e=Object.prototype,i=e.hasOwnProperty,o=\"function\"==typeof Symbol?Symbol:{},u=o.iterator||\"@@iterator\",c=o.asyncIterator||\"@@asyncIterator\",a=o.toStringTag||\"@@toStringTag\",f=\"object\"==typeof n,s=t.regeneratorRuntime;if(s)return void(f&&(n.exports=s));s=t.regeneratorRuntime=f?n.exports:{},s.wrap=wrap;var l=\"suspendedStart\",h=\"suspendedYield\",v=\"executing\",p=\"completed\",d={},y={};y[u]=function(){return this};var g=Object.getPrototypeOf,m=g&&g(g(values([])));m&&m!==e&&i.call(m,u)&&(y=m);var b=GeneratorFunctionPrototype.prototype=Generator.prototype=Object.create(y);GeneratorFunction.prototype=b.constructor=GeneratorFunctionPrototype,GeneratorFunctionPrototype.constructor=GeneratorFunction,GeneratorFunctionPrototype[a]=GeneratorFunction.displayName=\"GeneratorFunction\",s.isGeneratorFunction=function(t){var n=\"function\"==typeof t&&t.constructor;return!!n&&(n===GeneratorFunction||\"GeneratorFunction\"===(n.displayName||n.name))},s.mark=function(t){return Object.setPrototypeOf?Object.setPrototypeOf(t,GeneratorFunctionPrototype):(t.__proto__=GeneratorFunctionPrototype,a in t||(t[a]=\"GeneratorFunction\")),t.prototype=Object.create(b),t},s.awrap=function(t){return{__await:t}},defineIteratorMethods(AsyncIterator.prototype),AsyncIterator.prototype[c]=function(){return this},s.AsyncIterator=AsyncIterator,s.async=function(t,n,r,e){var i=new AsyncIterator(wrap(t,n,r,e));return s.isGeneratorFunction(n)?i:i.next().then(function(t){return t.done?t.value:i.next()})},defineIteratorMethods(b),b[a]=\"Generator\",b[u]=function(){return this},b.toString=function(){return\"[object Generator]\"},s.keys=function(t){var n=[];for(var r in t)n.push(r);return n.reverse(),function next(){for(;n.length;){var r=n.pop();if(r in t)return next.value=r,next.done=!1,next}return next.done=!0,next}},s.values=values,Context.prototype={constructor:Context,reset:function(t){if(this.prev=0,this.next=0,this.sent=this._sent=r,this.done=!1,this.delegate=null,this.method=\"next\",this.arg=r,this.tryEntries.forEach(resetTryEntry),!t)for(var n in this)\"t\"===n.charAt(0)&&i.call(this,n)&&!isNaN(+n.slice(1))&&(this[n]=r)},stop:function(){this.done=!0;var t=this.tryEntries[0],n=t.completion;if(\"throw\"===n.type)throw n.arg;return this.rval},dispatchException:function(t){function handle(e,i){return u.type=\"throw\",u.arg=t,n.next=e,i&&(n.method=\"next\",n.arg=r),!!i}if(this.done)throw t;for(var n=this,e=this.tryEntries.length-1;e>=0;--e){var o=this.tryEntries[e],u=o.completion;if(\"root\"===o.tryLoc)return handle(\"end\");if(o.tryLoc<=this.prev){var c=i.call(o,\"catchLoc\"),a=i.call(o,\"finallyLoc\");if(c&&a){if(this.prev<o.catchLoc)return handle(o.catchLoc,!0);if(this.prev<o.finallyLoc)return handle(o.finallyLoc)}else if(c){if(this.prev<o.catchLoc)return handle(o.catchLoc,!0)}else{if(!a)throw new Error(\"try statement without catch or finally\");if(this.prev<o.finallyLoc)return handle(o.finallyLoc)}}}},abrupt:function(t,n){for(var r=this.tryEntries.length-1;r>=0;--r){var e=this.tryEntries[r];if(e.tryLoc<=this.prev&&i.call(e,\"finallyLoc\")&&this.prev<e.finallyLoc){var o=e;break}}o&&(\"break\"===t||\"continue\"===t)&&o.tryLoc<=n&&n<=o.finallyLoc&&(o=null);var u=o?o.completion:{};return u.type=t,u.arg=n,o?(this.method=\"next\",this.next=o.finallyLoc,d):this.complete(u)},complete:function(t,n){if(\"throw\"===t.type)throw t.arg;return\"break\"===t.type||\"continue\"===t.type?this.next=t.arg:\"return\"===t.type?(this.rval=this.arg=t.arg,this.method=\"return\",this.next=\"end\"):\"normal\"===t.type&&n&&(this.next=n),d},finish:function(t){for(var n=this.tryEntries.length-1;n>=0;--n){var r=this.tryEntries[n];if(r.finallyLoc===t)return this.complete(r.completion,r.afterLoc),resetTryEntry(r),d}},catch:function(t){for(var n=this.tryEntries.length-1;n>=0;--n){var r=this.tryEntries[n];if(r.tryLoc===t){var e=r.completion;if(\"throw\"===e.type){var i=e.arg;resetTryEntry(r)}return i}}throw new Error(\"illegal catch attempt\")},delegateYield:function(t,n,e){return this.delegate={iterator:values(t),resultName:n,nextLoc:e},\"next\"===this.method&&(this.arg=r),d}}}(\"object\"==typeof t?t:\"object\"==typeof window?window:\"object\"==typeof self?self:this)}).call(this,\"undefined\"!=typeof global?global:\"undefined\"!=typeof self?self:\"undefined\"!=typeof window?window:{})},{}]},{},[1]);\n","Magento_PageBuilder/js/resource/resize-observer/ResizeObserver.min.js":"!function(t,e){\"object\"==typeof exports&&\"undefined\"!=typeof module?module.exports=e():\"function\"==typeof define&&define.amd?define(e):t.ResizeObserver=e()}(this,function(){\"use strict\";var i=function(){if(\"undefined\"!=typeof Map)return Map;function i(t,n){var i=-1;return t.some(function(t,e){return t[0]===n&&(i=e,!0)}),i}return function(){function t(){this.__entries__=[]}var e={size:{configurable:!0}};return e.size.get=function(){return this.__entries__.length},t.prototype.get=function(t){var e=i(this.__entries__,t),n=this.__entries__[e];return n&&n[1]},t.prototype.set=function(t,e){var n=i(this.__entries__,t);~n?this.__entries__[n][1]=e:this.__entries__.push([t,e])},t.prototype.delete=function(t){var e=this.__entries__,n=i(e,t);~n&&e.splice(n,1)},t.prototype.has=function(t){return!!~i(this.__entries__,t)},t.prototype.clear=function(){this.__entries__.splice(0)},t.prototype.forEach=function(t,e){void 0===e&&(e=null);for(var n=0,i=this.__entries__;n<i.length;n+=1){var r=i[n];t.call(e,r[1],r[0])}},Object.defineProperties(t.prototype,e),t}()}(),n=\"undefined\"!=typeof window&&\"undefined\"!=typeof document&&window.document===document,e=\"undefined\"!=typeof global&&global.Math===Math?global:\"undefined\"!=typeof self&&self.Math===Math?self:\"undefined\"!=typeof window&&window.Math===Math?window:Function(\"return this\")(),c=\"function\"==typeof requestAnimationFrame?requestAnimationFrame.bind(e):function(t){return setTimeout(function(){return t(Date.now())},1e3/60)},r=[\"top\",\"right\",\"bottom\",\"left\",\"width\",\"height\",\"size\",\"weight\"],t=\"undefined\"!=typeof MutationObserver,o=function(){this.connected_=!1,this.mutationEventsAdded_=!1,this.mutationsObserver_=null,this.observers_=[],this.onTransitionEnd_=this.onTransitionEnd_.bind(this),this.refresh=function(t,e){var n=!1,i=!1,r=0;function o(){n&&(n=!1,t()),i&&a()}function s(){c(o)}function a(){var t=Date.now();if(n){if(t-r<2)return;i=!0}else i=!(n=!0),setTimeout(s,e);r=t}return a}(this.refresh.bind(this),20)};o.prototype.addObserver=function(t){~this.observers_.indexOf(t)||this.observers_.push(t),this.connected_||this.connect_()},o.prototype.removeObserver=function(t){var e=this.observers_,n=e.indexOf(t);~n&&e.splice(n,1),!e.length&&this.connected_&&this.disconnect_()},o.prototype.refresh=function(){this.updateObservers_()&&this.refresh()},o.prototype.updateObservers_=function(){var t=this.observers_.filter(function(t){return t.gatherActive(),t.hasActive()});return t.forEach(function(t){return t.broadcastActive()}),0<t.length},o.prototype.connect_=function(){n&&!this.connected_&&(document.addEventListener(\"transitionend\",this.onTransitionEnd_),window.addEventListener(\"resize\",this.refresh),t?(this.mutationsObserver_=new MutationObserver(this.refresh),this.mutationsObserver_.observe(document,{attributes:!0,childList:!0,characterData:!0,subtree:!0})):(document.addEventListener(\"DOMSubtreeModified\",this.refresh),this.mutationEventsAdded_=!0),this.connected_=!0)},o.prototype.disconnect_=function(){n&&this.connected_&&(document.removeEventListener(\"transitionend\",this.onTransitionEnd_),window.removeEventListener(\"resize\",this.refresh),this.mutationsObserver_&&this.mutationsObserver_.disconnect(),this.mutationEventsAdded_&&document.removeEventListener(\"DOMSubtreeModified\",this.refresh),this.mutationsObserver_=null,this.mutationEventsAdded_=!1,this.connected_=!1)},o.prototype.onTransitionEnd_=function(t){var e=t.propertyName;void 0===e&&(e=\"\"),r.some(function(t){return!!~e.indexOf(t)})&&this.refresh()},o.getInstance=function(){return this.instance_||(this.instance_=new o),this.instance_},o.instance_=null;var u=function(t,e){for(var n=0,i=Object.keys(e);n<i.length;n+=1){var r=i[n];Object.defineProperty(t,r,{value:e[r],enumerable:!1,writable:!1,configurable:!0})}return t},d=function(t){return t&&t.ownerDocument&&t.ownerDocument.defaultView||e},p=_(0,0,0,0);function v(t){return parseFloat(t)||0}function l(n){for(var t=[],e=arguments.length-1;0<e--;)t[e]=arguments[e+1];return t.reduce(function(t,e){return t+v(n[\"border-\"+e+\"-width\"])},0)}function s(t){var e=t.clientWidth,n=t.clientHeight;if(!e&&!n)return p;var i,r=d(t).getComputedStyle(t),o=function(t){for(var e={},n=0,i=[\"top\",\"right\",\"bottom\",\"left\"];n<i.length;n+=1){var r=i[n],o=t[\"padding-\"+r];e[r]=v(o)}return e}(r),s=o.left+o.right,a=o.top+o.bottom,c=v(r.width),h=v(r.height);if(\"border-box\"===r.boxSizing&&(Math.round(c+s)!==e&&(c-=l(r,\"left\",\"right\")+s),Math.round(h+a)!==n&&(h-=l(r,\"top\",\"bottom\")+a)),(i=t)!==d(i).document.documentElement){var u=Math.round(c+s)-e,f=Math.round(h+a)-n;1!==Math.abs(u)&&(c-=u),1!==Math.abs(f)&&(h-=f)}return _(o.left,o.top,c,h)}var a=\"undefined\"!=typeof SVGGraphicsElement?function(t){return t instanceof d(t).SVGGraphicsElement}:function(t){return t instanceof d(t).SVGElement&&\"function\"==typeof t.getBBox};function h(t){return n?a(t)?_(0,0,(e=t.getBBox()).width,e.height):s(t):p;var e}function _(t,e,n,i){return{x:t,y:e,width:n,height:i}}var f=function(t){this.broadcastWidth=0,this.broadcastHeight=0,this.contentRect_=_(0,0,0,0),this.target=t};f.prototype.isActive=function(){var t=h(this.target);return(this.contentRect_=t).width!==this.broadcastWidth||t.height!==this.broadcastHeight},f.prototype.broadcastRect=function(){var t=this.contentRect_;return this.broadcastWidth=t.width,this.broadcastHeight=t.height,t};var b=function(t,e){var n,i,r,o,s,a,c,h=(i=(n=e).x,r=n.y,o=n.width,s=n.height,a=\"undefined\"!=typeof DOMRectReadOnly?DOMRectReadOnly:Object,c=Object.create(a.prototype),u(c,{x:i,y:r,width:o,height:s,top:r,right:i+o,bottom:s+r,left:i}),c);u(this,{target:t,contentRect:h})},m=function(t,e,n){if(this.activeObservations_=[],this.observations_=new i,\"function\"!=typeof t)throw new TypeError(\"The callback provided as parameter 1 is not a function.\");this.callback_=t,this.controller_=e,this.callbackCtx_=n};m.prototype.observe=function(t){if(!arguments.length)throw new TypeError(\"1 argument required, but only 0 present.\");if(\"undefined\"!=typeof Element&&Element instanceof Object){if(!(t instanceof d(t).Element))throw new TypeError('parameter 1 is not of type \"Element\".');var e=this.observations_;e.has(t)||(e.set(t,new f(t)),this.controller_.addObserver(this),this.controller_.refresh())}},m.prototype.unobserve=function(t){if(!arguments.length)throw new TypeError(\"1 argument required, but only 0 present.\");if(\"undefined\"!=typeof Element&&Element instanceof Object){if(!(t instanceof d(t).Element))throw new TypeError('parameter 1 is not of type \"Element\".');var e=this.observations_;e.has(t)&&(e.delete(t),e.size||this.controller_.removeObserver(this))}},m.prototype.disconnect=function(){this.clearActive(),this.observations_.clear(),this.controller_.removeObserver(this)},m.prototype.gatherActive=function(){var e=this;this.clearActive(),this.observations_.forEach(function(t){t.isActive()&&e.activeObservations_.push(t)})},m.prototype.broadcastActive=function(){if(this.hasActive()){var t=this.callbackCtx_,e=this.activeObservations_.map(function(t){return new b(t.target,t.broadcastRect())});this.callback_.call(t,e,t),this.clearActive()}},m.prototype.clearActive=function(){this.activeObservations_.splice(0)},m.prototype.hasActive=function(){return 0<this.activeObservations_.length};var y=\"undefined\"!=typeof WeakMap?new WeakMap:new i,g=function(t){if(!(this instanceof g))throw new TypeError(\"Cannot call a class as a function.\");if(!arguments.length)throw new TypeError(\"1 argument required, but only 0 present.\");var e=o.getInstance(),n=new m(t,e,this);y.set(this,n)};return[\"observe\",\"unobserve\",\"disconnect\"].forEach(function(e){g.prototype[e]=function(){return(t=y.get(this))[e].apply(t,arguments);var t}}),void 0!==e.ResizeObserver?e.ResizeObserver:g});\n","Magento_PageBuilder/js/wysiwyg/tinymce.js":"/*eslint-disable */\n/* jscs:disable */\n\nfunction _createForOfIteratorHelperLoose(o, allowArrayLike) { var it = typeof Symbol !== \"undefined\" && o[Symbol.iterator] || o[\"@@iterator\"]; if (it) return (it = it.call(o)).next.bind(it); if (Array.isArray(o) || (it = _unsupportedIterableToArray(o)) || allowArrayLike && o && typeof o.length === \"number\") { if (it) o = it; var i = 0; return function () { if (i >= o.length) return { done: true }; return { done: false, value: o[i++] }; }; } throw new TypeError(\"Invalid attempt to iterate non-iterable instance.\\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.\"); }\n\nfunction _unsupportedIterableToArray(o, minLen) { if (!o) return; if (typeof o === \"string\") return _arrayLikeToArray(o, minLen); var n = Object.prototype.toString.call(o).slice(8, -1); if (n === \"Object\" && o.constructor) n = o.constructor.name; if (n === \"Map\" || n === \"Set\") return Array.from(o); if (n === \"Arguments\" || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)) return _arrayLikeToArray(o, minLen); }\n\nfunction _arrayLikeToArray(arr, len) { if (len == null || len > arr.length) len = arr.length; for (var i = 0, arr2 = new Array(len); i < len; i++) { arr2[i] = arr[i]; } return arr2; }\n\ndefine([\"jquery\", \"mage/adminhtml/wysiwyg/events\", \"mage/adminhtml/wysiwyg/tiny_mce/setup\", \"Magento_PageBuilder/js/events\", \"underscore\", \"Magento_PageBuilder/js/utils/check-stage-full-screen\", \"Magento_PageBuilder/js/utils/delay-until\", \"Magento_PageBuilder/js/utils/pagebuilder-header-height\"], function (_jquery, _events, _setup, _events2, _underscore, _checkStageFullScreen, _delayUntil, _pagebuilderHeaderHeight) {\n  /**\n   * Copyright \u00a9 Magento, Inc. All rights reserved.\n   * See COPYING.txt for license details.\n   */\n\n  /**\n   * Inline editing wysiwyg component\n   *\n   * @api\n   */\n  var Wysiwyg = /*#__PURE__*/function () {\n    \"use strict\";\n\n    /**\n     * The id of the editor element\n     */\n\n    /**\n     * The supplied wysiwyg configuration\n     */\n\n    /**\n     * Id of content type\n     */\n\n    /**\n     * Id of the stage\n     */\n\n    /**\n     * Wysiwyg adapter instance\n     */\n\n    /**\n     * Content type's data store\n     */\n\n    /**\n     * Field name in data store reflecting value held in wysiwyg\n     */\n\n    /**\n     * Create a debounce to save the content into the data store\n     */\n\n    /**\n     * @param {String} contentTypeId The ID in the registry of the content type.\n     * @param {String} elementId The ID of the editor element in the DOM.\n     * @param {AdditionalDataConfigInterface} config The configuration for the wysiwyg.\n     * @param {DataStore} dataStore The datastore to store the content in.\n     * @param {String} fieldName The key in the provided datastore to set the data.\n     * @param {String} stageId The ID in the registry of the stage containing the content type.\n     */\n    function Wysiwyg(contentTypeId, elementId, config, dataStore, fieldName, stageId) {\n      this.saveContentDebounce = _underscore.debounce(this.saveContentFromWysiwygToDataStore.bind(this), 500);\n      this.contentTypeId = contentTypeId;\n      this.elementId = elementId;\n      this.fieldName = fieldName;\n      this.config = config;\n      this.dataStore = dataStore;\n      this.stageId = stageId;\n\n      if (this.config.adapter_config.mode === \"inline\") {\n        /**\n         * Don't include content_css within the inline mode of TinyMCE, if any stylesheets are included here they're\n         * appended to the head of the main page, and thus cause other styles to be modified.\n         *\n         * The styles for typography in the inline editor are scoped within _typography.less\n         */\n        this.config.adapter.tinymce.content_css = [];\n      }\n\n      var wysiwygSetup = new _setup(this.elementId, this.config.adapter);\n      wysiwygSetup.setup(this.config.adapter_config.mode);\n      this.wysiwygAdapter = wysiwygSetup.wysiwygInstance;\n\n      if (this.config.adapter_config.mode === \"inline\") {\n        this.wysiwygAdapter.eventBus.attachEventHandler(_events.afterFocus, this.onFocus.bind(this));\n        this.wysiwygAdapter.eventBus.attachEventHandler(_events.afterBlur, this.onBlur.bind(this));\n      } // Update content in our data store after our stage preview wysiwyg gets updated\n\n\n      this.wysiwygAdapter.eventBus.attachEventHandler(_events.afterChangeContent, this.onChangeContent.bind(this)); // Update content in our stage preview wysiwyg after its slideout counterpart gets updated\n\n      _events2.on(\"form:\" + this.contentTypeId + \":saveAfter\", this.setContentFromDataStoreToWysiwyg.bind(this));\n\n      _events2.on(\"stage:\" + this.stageId + \":fullScreenModeChangeAfter\", this.toggleFullScreen.bind(this));\n    }\n    /**\n     * Hide TinyMce inline toolbar options after fullscreen exit\n     */\n\n\n    var _proto = Wysiwyg.prototype;\n\n    _proto.toggleFullScreen = function toggleFullScreen() {\n      var _this = this;\n\n      var $editor = (0, _jquery)(\"#\" + this.elementId); // wait for fullscreen to close\n\n      _underscore.defer(function () {\n        if (!(0, _checkStageFullScreen)(_this.stageId) && _this.config.adapter_config.mode === \"inline\" && $editor.hasClass(\"mce-edit-focus\")) {\n          $editor.removeClass(\"mce-edit-focus\");\n\n          _this.onBlur();\n        }\n      });\n    }\n    /**\n     * @returns {WysiwygInstanceInterface}\n     */\n    ;\n\n    _proto.getAdapter = function getAdapter() {\n      return this.wysiwygAdapter;\n    }\n    /**\n     * Called for the onFocus event\n     */\n    ;\n\n    _proto.onFocus = function onFocus() {\n      var _this2 = this;\n\n      this.getFixedToolbarContainer().addClass(\"pagebuilder-toolbar-active\");\n\n      _events2.trigger(\"stage:interactionStart\");\n\n      var element = document.querySelector(\"#\" + this.elementId);\n\n      if (!element) {\n        return;\n      } // Wait for everything else to finish\n\n\n      _underscore.defer(function () {\n        return (0, _delayUntil)(function () {\n          var $inlineToolbar = _this2.getFixedToolbarContainer().find(\".tox-tinymce-inline\");\n\n          var self = _this2;\n          $inlineToolbar.css(\"min-width\", _this2.config.adapter_config.minToolbarWidth + \"px\");\n\n          _this2.invertInlineEditorToAccommodateOffscreenToolbar(); // Update toolbar when the height changes\n\n\n          _this2.toolbarHeight = $inlineToolbar.height();\n\n          if ($inlineToolbar.length) {\n            _this2.resizeObserver = new ResizeObserver(function (entries) {\n              for (var _iterator = _createForOfIteratorHelperLoose(entries), _step; !(_step = _iterator()).done;) {\n                var entry = _step.value;\n\n                if (entry.target === $inlineToolbar.get(0) && entry.target.clientHeight !== self.toolbarHeight) {\n                  self.invertInlineEditorToAccommodateOffscreenToolbar();\n                  self.toolbarHeight = entry.target.clientHeight;\n                }\n              }\n            });\n\n            _this2.resizeObserver.observe($inlineToolbar.get(0));\n          }\n\n          var dialogContainer = document.querySelector(\"#\" + _this2.elementId + \" ~ .tox-tinymce-aux\");\n\n          if (!!dialogContainer) {\n            dialogContainer.setAttribute(\"data-editor-aux\", _this2.elementId);\n            document.body.appendChild(dialogContainer);\n          }\n        }, function () {\n          return element.classList.contains(\"mce-edit-focus\");\n        }, 10);\n      });\n    }\n    /**\n     * Called for the onChangeContent event\n     */\n    ;\n\n    _proto.onChangeContent = function onChangeContent() {\n      this.saveContentDebounce();\n      this.invertInlineEditorToAccommodateOffscreenToolbar();\n    }\n    /**\n     * Called for the onBlur events\n     */\n    ;\n\n    _proto.onBlur = function onBlur() {\n      this.getFixedToolbarContainer().removeClass(\"pagebuilder-toolbar-active\").find(\".tox-tinymce-inline\").css(\"top\", \"\");\n\n      if (this.resizeObserver) {\n        this.resizeObserver.unobserve(this.getFixedToolbarContainer().find(\".tox-tinymce-inline\").get(0));\n      }\n\n      this.toolbarHeight = 0;\n      var dialogContainer = document.querySelector(\"[data-editor-aux=\" + this.elementId + \"]\");\n\n      if (!!dialogContainer) {\n        dialogContainer.removeAttribute(\"data-editor-aux\");\n        document.querySelector(\"#\" + this.elementId).parentNode.appendChild(dialogContainer);\n      }\n\n      _events2.trigger(\"stage:interactionStop\");\n    }\n    /**\n     * Update content in our data store after our stage preview wysiwyg gets updated\n     */\n    ;\n\n    _proto.saveContentFromWysiwygToDataStore = function saveContentFromWysiwygToDataStore() {\n      this.dataStore.set(this.fieldName, this.getAdapter().getContent());\n    }\n    /**\n     * Update content in our stage wysiwyg after our data store gets updated\n     */\n    ;\n\n    _proto.setContentFromDataStoreToWysiwyg = function setContentFromDataStoreToWysiwyg() {\n      this.getAdapter().setContent(this.dataStore.get(this.fieldName));\n    }\n    /**\n     * Adjust padding on stage if in fullscreen mode to accommodate inline wysiwyg toolbar overflowing fixed viewport\n     */\n    ;\n\n    _proto.invertInlineEditorToAccommodateOffscreenToolbar = function invertInlineEditorToAccommodateOffscreenToolbar() {\n      if (this.config.adapter_config.mode !== \"inline\") {\n        return;\n      }\n\n      var $inlineToolbar = this.getFixedToolbarContainer().find(\".tox-tinymce-inline\");\n\n      if (!$inlineToolbar.length) {\n        return;\n      }\n\n      var inlineWysiwygClientRectTop = this.getFixedToolbarContainer().get(0).getBoundingClientRect().top - (0, _pagebuilderHeaderHeight)(this.stageId);\n\n      if (!(0, _checkStageFullScreen)(this.stageId) || $inlineToolbar.height() < inlineWysiwygClientRectTop) {\n        var extraHeight = 0;\n\n        if ($inlineToolbar.parents(\".pagebuilder-slide[data-appearance='collage-left']\").length || $inlineToolbar.parents(\".pagebuilder-slide[data-appearance='collage-right']\").length || $inlineToolbar.parents(\".pagebuilder-slide[data-appearance='collage-centered']\").length) {\n          extraHeight = 29;\n        }\n\n        $inlineToolbar.css(\"top\", ($inlineToolbar.height() - extraHeight) * -1);\n        return;\n      }\n\n      $inlineToolbar.css(\"top\", \"\");\n    }\n    /**\n     * Get fixed toolbar container element referenced as selector in wysiwyg adapter settings\n     *\n     * @returns {jQuery}\n     */\n    ;\n\n    _proto.getFixedToolbarContainer = function getFixedToolbarContainer() {\n      return (0, _jquery)(\"#\" + this.elementId).closest(\"\" + this.config.adapter.settings.fixed_toolbar_container);\n    };\n\n    return Wysiwyg;\n  }();\n\n  return Wysiwyg;\n});\n//# sourceMappingURL=tinymce.js.map","Magento_PageBuilder/js/wysiwyg/config-modifier-interface.js":"/*eslint-disable */\n/* jscs:disable */\ndefine([], function () {\n  \"use strict\";\n});\n//# sourceMappingURL=config-modifier-interface.js.map","Magento_PageBuilder/js/wysiwyg/component-initializer-interface.js":"/*eslint-disable */\n/* jscs:disable */\ndefine([], function () {\n  \"use strict\";\n});\n//# sourceMappingURL=component-initializer-interface.js.map","Magento_PageBuilder/js/wysiwyg/wysiwyg-interface.js":"/*eslint-disable */\n/* jscs:disable */\ndefine([], function () {\n  \"use strict\";\n});\n//# sourceMappingURL=wysiwyg-interface.js.map","Magento_PageBuilder/js/wysiwyg/factory.js":"/*eslint-disable */\n/* jscs:disable */\ndefine([\"jquery\", \"Magento_PageBuilder/js/utils/loader\"], function (_jquery, _loader) {\n  /**\n   * Copyright \u00a9 Magento, Inc. All rights reserved.\n   * See COPYING.txt for license details.\n   */\n\n  /**\n   * @param {String} contentTypeId The ID in the registry of the content type.\n   * @param {String} elementId The ID of the editor element in the DOM.\n   * @param {String} contentTypeName The type of content type this editor will be used in. E.g. \"banner\".\n   * @param {AdditionalDataConfigInterface} config The configuration for the wysiwyg.\n   * @param {DataStore} dataStore The datastore to store the content in.\n   * @param {String} fieldName The key in the provided datastore to set the data.\n   * @param {String} stageId The ID in the registry of the stage containing the content type.\n   * @returns {Wysiwyg}\n   */\n  function create(contentTypeId, elementId, contentTypeName, config, dataStore, fieldName, stageId) {\n    config = _jquery.extend(true, {}, config);\n    return new Promise(function (resolve) {\n      (0, _loader)([config.adapter_config.component], function (WysiwygInstance) {\n        new Promise(function (configResolve) {\n          if (config.adapter_config.config_modifiers && config.adapter_config.config_modifiers[contentTypeName]) {\n            (0, _loader)([config.adapter_config.config_modifiers[contentTypeName]], function (ConfigModifierType) {\n              var modifier = new ConfigModifierType(); // Allow dynamic settings to be set before editor is initialized\n\n              modifier.modify(contentTypeId, config);\n              configResolve();\n            });\n          } else {\n            configResolve();\n          }\n        }).then(function () {\n          // Instantiate the component\n          var wysiwyg = new WysiwygInstance(contentTypeId, elementId, config, dataStore, fieldName, stageId);\n\n          if (config.adapter_config.component_initializers && config.adapter_config.component_initializers[contentTypeName]) {\n            (0, _loader)([config.adapter_config.component_initializers[contentTypeName]], function (InitializerType) {\n              var initializer = new InitializerType(); // Allow dynamic bindings from configuration such as events from the editor\n\n              initializer.initialize(wysiwyg);\n              resolve(wysiwyg);\n            });\n          } else {\n            resolve(wysiwyg);\n          }\n        });\n      });\n    });\n  }\n\n  return create;\n});\n//# sourceMappingURL=factory.js.map","Magento_PageBuilder/js/grid/columns/preview-image.js":"/**\n * Copyright \u00a9 Magento, Inc. All rights reserved.\n * See COPYING.txt for license details.\n */\n\n/**\n * @api\n */\ndefine([\n    'Magento_Ui/js/grid/columns/column',\n    'jquery',\n    'mage/template',\n    'text!Magento_PageBuilder/template/grid/cells/preview-image/preview.html',\n    'underscore',\n    'Magento_Ui/js/modal/modal',\n    'mage/translate'\n], function (Column, $, mageTemplate, thumbnailPreviewTemplate, _) {\n    'use strict';\n\n    return Column.extend({\n        defaults: {\n            bodyTmpl: 'ui/grid/cells/thumbnail',\n            fieldClass: {\n                'data-grid-preview-image-cell': true\n            }\n        },\n\n        /**\n         * Get image source data per row.\n         *\n         * @param {Object} row\n         * @returns {String}\n         */\n        getSrc: function (row) {\n            return row[this.index + '_src'];\n        },\n\n        /**\n         * Retrieve the original images src to be displayed at full size in the modal\n         *\n         * @param {Object} row\n         * @returns {*}\n         */\n        getOrigSrc: function (row) {\n            return row[this.index + '_orig_src'];\n        },\n\n        /**\n         * Get alternative text data per row.\n         *\n         * @param {Object} row\n         * @returns {String}\n         */\n        getAlt: function (row) {\n            return _.escape(row[this.index + '_alt']);\n        },\n\n        /**\n         * Check if preview available.\n         *\n         * @returns {Boolean}\n         */\n        isPreviewAvailable: function () {\n            return this['has_preview'] || false;\n        },\n\n        /**\n         * Build preview.\n         *\n         * @param {Object} row\n         */\n        preview: function (row) {\n            var modalHtml = mageTemplate(\n                thumbnailPreviewTemplate,\n                {\n                    src: this.getOrigSrc(row),\n                    alt: this.getAlt(row)\n                }\n            ),\n                previewPopup = $('<div/>').html(modalHtml);\n\n            previewPopup.modal({\n                title: this.getAlt(row),\n                innerScroll: true,\n                modalClass: '_image-box',\n                buttons: []\n            }).trigger('openModal');\n        },\n\n        /**\n         * Get field handler per row.\n         *\n         * @param {Object} row\n         * @returns {Function}\n         */\n        getFieldHandler: function (row) {\n            if (this.isPreviewAvailable()) {\n                return this.preview.bind(this, row);\n            }\n        }\n    });\n});\n","Magento_PageBuilder/js/grid/columns/actions.js":"/**\n * Copyright \u00a9 Magento, Inc. All rights reserved.\n * See COPYING.txt for license details.\n */\n\ndefine([\n    'Magento_Ui/js/grid/columns/actions'\n], function (Actions) {\n    'use strict';\n\n    return Actions.extend({\n        defaults: {\n        },\n\n        /**\n         * Callback after click on element.\n         *\n         * @public\n         */\n        applyAction: function () {\n            switch (this.type) {\n                case 'edit-user':\n                    $(this).userEdit(this.options)\n                        .trigger('editUser');\n                    break;\n\n                case 'delete-user':\n                    $(this).userDelete(this.options)\n                        .trigger('deleteUser');\n                    break;\n\n                case 'delete-role':\n                    $(this).roleDelete(this.options)\n                        .trigger('deleteRole');\n                    break;\n\n                default:\n                    return true;\n            }\n        }\n    });\n});\n","Magento_PageBuilder/js/grid/cells/template-apply.js":"/**\n * Copyright \u00a9 Magento, Inc. All rights reserved.\n * See COPYING.txt for license details.\n */\ndefine([\n    'Magento_Ui/js/grid/columns/multiselect',\n    'Magento_PageBuilder/js/modal/dismissible-confirm',\n    'mage/translate'\n], function (Select, confirm, $t) {\n    'use strict';\n\n    return Select.extend({\n        defaults: {\n            headerTmpl: 'ui/grid/columns/text',\n            bodyTmpl: 'Magento_PageBuilder/grid/cells/template-apply',\n            label: '',\n            lastSelected: null\n        },\n\n        /** @inheritdoc */\n        initObservable: function () {\n            this._super()\n                .observe('lastSelected');\n\n            return this;\n        },\n\n        /** @inheritdoc */\n        isSelected: function () {\n            return false;\n        },\n\n        /** @inheritdoc **/\n        select: function (id) {\n            var self = this,\n                superCall = this._super.bind(this);\n\n            self.lastSelected(null);\n\n            confirm({\n                title: $t('Apply Template'),\n                content: $t('Are you sure you want to apply this template? This will overwrite any existing content.'),\n                dismissKey: 'pagebuilder_template_apply_confirm',\n                dismissible: true,\n                actions: {\n                    /**\n                     * Confirm action\n                     */\n                    confirm: function () {\n                        superCall();\n                        self.lastSelected(id);\n                    }\n                },\n                buttons: [{\n                    text: $t('Cancel'),\n                    class: 'action-secondary action-dismiss action-pagebuilder-cancel',\n\n                    /**\n                     * Close modal and trigger 'cancel' action on click\n                     */\n                    click: function (event) {\n                        this.closeModal(event);\n                    }\n                }, {\n                    text: $t('Apply'),\n                    class: 'action-primary action-accept',\n\n                    /**\n                     * Close modal and trigger 'confirm' action on click\n                     */\n                    click: function (event) {\n                        superCall();\n                        self.lastSelected(id);\n                        this.closeModal(event);\n                    }\n                }]\n            });\n\n            return this;\n        },\n\n        /** @inheritdoc */\n        _setSelection: function () {\n            return this;\n        }\n    });\n});\n","Magento_PageBuilder/js/grid/cells/single-select.js":"/**\n * Copyright \u00a9 Magento, Inc. All rights reserved.\n * See COPYING.txt for license details.\n */\ndefine([\n    'Magento_Ui/js/grid/columns/multiselect',\n    'underscore'\n], function (Select, _) {\n    'use strict';\n\n    return Select.extend({\n        defaults: {\n            headerTmpl: 'ui/grid/columns/text',\n            bodyTmpl: 'Magento_PageBuilder/grid/cells/single-select',\n            label: '',\n            extendedSelections: [],\n            lastSelected: null,\n            listens: {\n                selected: 'onSelectedChange setExtendedSelections'\n            }\n        },\n\n        /** @inheritdoc */\n        initObservable: function () {\n            this._super()\n                .observe('extendedSelections lastSelected');\n\n            return this;\n        },\n\n        /**\n         * Getter for extended selections.\n         *\n         * @returns {Array}\n         */\n        getExtendedSelections: function () {\n            return this.extendedSelections();\n        },\n\n        /**\n         * Setter for extended selections.\n         *\n         * @param {Array} selected\n         */\n        setExtendedSelections: function (selected) {\n            var item = {},\n                extended = [];\n\n            _.each(selected, function (id) {\n                item[this.indexField] = id;\n                extended.push(_.findWhere(this.rows(), item));\n            }, this);\n\n            this.set('extendedSelections', extended);\n        },\n\n        /** @inheritdoc */\n        isSelected: function (id, isIndex) {\n            id = this.getId(id, isIndex);\n\n            return this.selected()[0] === id;\n        },\n\n        /** @inheritdoc **/\n        select: function (id) {\n            this._super();\n            this.lastSelected(id);\n\n            return this;\n        },\n\n        /** @inheritdoc */\n        _setSelection: function (id, isIndex, select) {\n            var selected = this.selected;\n\n            id = this.getId(id, isIndex);\n\n            if (!select && this.isSelected(id)) {\n                selected([]);\n            } else if (select) {\n                selected([id]);\n            }\n\n            return this;\n        }\n    });\n});\n","Magento_PageBuilder/js/widget/show-on-hover.js":"/**\n * Copyright \u00a9 Magento, Inc. All rights reserved.\n * See COPYING.txt for license details.\n */\n\ndefine(['jquery'], function ($) {\n    'use strict';\n\n    /**\n     * Show the overlay on hover of specific elements\n     *\n     * @param {JQuery<Element>[]} $elements\n     */\n    function showOverlayOnHover($elements) {\n        $elements.each(function (index, element) {\n            var overlayEl = $(element).find('.pagebuilder-overlay'),\n                overlayColor = overlayEl.attr('data-overlay-color');\n\n            $(element).on('mouseenter', function () {\n                overlayEl.css('background-color', overlayColor);\n            });\n\n            $(element).on('mouseleave', function () {\n                overlayEl.css('background-color', 'transparent');\n            });\n        });\n    }\n\n    /**\n     * Show button on hover of specific elements\n     *\n     * @param {JQuery<Element>[]} $elements\n     * @param {String} buttonClass\n     */\n    function showButtonOnHover($elements, buttonClass) {\n        $elements.each(function (index, element) {\n            var buttonEl = $(element).find(buttonClass);\n\n            $(element).on('mouseenter', function () {\n                buttonEl.css({\n                    'opacity': '1',\n                    'visibility': 'visible'\n                });\n            });\n\n            $(element).on('mouseleave', function () {\n                buttonEl.css({\n                    'opacity': '0',\n                    'visibility': 'hidden'\n                });\n            });\n        });\n    }\n\n    return function (config) {\n\n        var buttonSelector = config.buttonSelector,\n            overlayHoverSelector = 'div[data-content-type=\"%s\"][data-show-overlay=\"%s\"]'\n                .replace('%s', config.dataRole)\n                .replace('%s', config.showOverlay),\n            overlayButtonSelector = 'div[data-content-type=\"%s\"][data-show-button=\"%s\"]'\n                .replace('%s', config.dataRole)\n                .replace('%s', config.showOverlay);\n\n        showOverlayOnHover($(overlayHoverSelector));\n        showButtonOnHover($(overlayButtonSelector), buttonSelector);\n    };\n});\n","Magento_PageBuilder/js/widget/video-background.js":"/**\n * Copyright \u00a9 Magento, Inc. All rights reserved.\n * See COPYING.txt for license details.\n */\ndefine([\n    'jquery',\n    'jarallax',\n    'jarallaxVideo',\n    'vimeoWrapper'\n], function ($) {\n    'use strict';\n\n    return function (config, element) {\n        var $element = $(element),\n            parallaxSpeed = $element.data('enableParallax') !== 1 ? 1 : parseFloat($element.data('parallaxSpeed'));\n\n        if ($element.data('background-type') !== 'video') {\n            return;\n        }\n\n        $element.addClass('jarallax');\n        $element.attr('data-jarallax', '');\n\n        window.jarallax($element[0], {\n            imgSrc: $element.data('videoFallbackSrc'),\n            speed: !isNaN(parallaxSpeed) ? parallaxSpeed : 0.5,\n            videoLoop: $element.data('videoLoop'),\n            videoPlayOnlyVisible: $element.data('videoPlayOnlyVisible'),\n            videoLazyLoading: $element.data('videoLazyLoad'),\n            disableVideo: false,\n            elementInViewport: $element.data('elementInViewport') &&\n                $element[0].querySelector($element.data('elementInViewport'))\n        });\n        $element[0].jarallax.video && $element[0].jarallax.video.on('started', function () {\n            if ($element[0].jarallax.$video) {\n                $element[0].jarallax.$video.style.visibility = 'visible';\n            }\n        });\n    };\n});\n","Magento_PageBuilder/js/property/property-reader-pool-factory.js":"/*eslint-disable */\n/* jscs:disable */\n\nfunction _createForOfIteratorHelperLoose(o, allowArrayLike) { var it = typeof Symbol !== \"undefined\" && o[Symbol.iterator] || o[\"@@iterator\"]; if (it) return (it = it.call(o)).next.bind(it); if (Array.isArray(o) || (it = _unsupportedIterableToArray(o)) || allowArrayLike && o && typeof o.length === \"number\") { if (it) o = it; var i = 0; return function () { if (i >= o.length) return { done: true }; return { done: false, value: o[i++] }; }; } throw new TypeError(\"Invalid attempt to iterate non-iterable instance.\\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.\"); }\n\nfunction _unsupportedIterableToArray(o, minLen) { if (!o) return; if (typeof o === \"string\") return _arrayLikeToArray(o, minLen); var n = Object.prototype.toString.call(o).slice(8, -1); if (n === \"Object\" && o.constructor) n = o.constructor.name; if (n === \"Map\" || n === \"Set\") return Array.from(o); if (n === \"Arguments\" || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)) return _arrayLikeToArray(o, minLen); }\n\nfunction _arrayLikeToArray(arr, len) { if (len == null || len > arr.length) len = arr.length; for (var i = 0, arr2 = new Array(len); i < len; i++) { arr2[i] = arr[i]; } return arr2; }\n\ndefine([\"Magento_PageBuilder/js/config\", \"Magento_PageBuilder/js/utils/loader\", \"Magento_PageBuilder/js/property/property-reader-pool\"], function (_config, _loader, _propertyReaderPool) {\n  /**\n   * Copyright \u00a9 Magento, Inc. All rights reserved.\n   * See COPYING.txt for license details.\n   */\n\n  /**\n   * Create a new instance of property reader pool\n   */\n  function create(contentType) {\n    var config = _config.getContentTypeConfig(contentType);\n\n    var propertyReaders = [];\n    var appearanceName;\n\n    for (var _i = 0, _Object$keys = Object.keys(config.appearances); _i < _Object$keys.length; _i++) {\n      appearanceName = _Object$keys[_i];\n      var appearance = config.appearances[appearanceName];\n\n      if (appearance !== undefined && appearance.elements !== undefined) {\n        var elementName = void 0;\n\n        for (var _i2 = 0, _Object$keys2 = Object.keys(appearance.elements); _i2 < _Object$keys2.length; _i2++) {\n          elementName = _Object$keys2[_i2];\n          var element = appearance.elements[elementName];\n\n          if (element.style !== undefined) {\n            for (var _iterator = _createForOfIteratorHelperLoose(element.style), _step; !(_step = _iterator()).done;) {\n              var propertyConfig = _step.value;\n\n              if (propertyConfig.reader && propertyReaders.indexOf(propertyConfig.reader) === -1 && !_propertyReaderPool.get(propertyConfig.reader)) {\n                propertyReaders.push(propertyConfig.reader);\n              }\n            }\n          }\n\n          if (element.attributes !== undefined) {\n            for (var _iterator2 = _createForOfIteratorHelperLoose(element.attributes), _step2; !(_step2 = _iterator2()).done;) {\n              var attributeConfig = _step2.value;\n\n              if (attributeConfig.reader && propertyReaders.indexOf(attributeConfig.reader) === -1 && !_propertyReaderPool.get(attributeConfig.reader)) {\n                propertyReaders.push(attributeConfig.reader);\n              }\n            }\n          }\n        }\n      }\n    }\n\n    return new Promise(function (resolve) {\n      (0, _loader)(propertyReaders, function () {\n        for (var _len = arguments.length, loadedPropertyReaders = new Array(_len), _key = 0; _key < _len; _key++) {\n          loadedPropertyReaders[_key] = arguments[_key];\n        }\n\n        for (var i = 0; i < propertyReaders.length; i++) {\n          _propertyReaderPool.register(propertyReaders[i], new loadedPropertyReaders[i]());\n        }\n\n        resolve(_propertyReaderPool);\n      });\n    });\n  }\n\n  return create;\n});\n//# sourceMappingURL=property-reader-pool-factory.js.map","Magento_PageBuilder/js/property/attribute-reader.js":"/*eslint-disable */\n/* jscs:disable */\ndefine([], function () {\n  /**\n   * Copyright \u00a9 Magento, Inc. All rights reserved.\n   * See COPYING.txt for license details.\n   */\n\n  /**\n   * @api\n   */\n  var AttributeReader = /*#__PURE__*/function () {\n    \"use strict\";\n\n    function AttributeReader() {}\n\n    var _proto = AttributeReader.prototype;\n\n    /**\n     * Read attribute from element\n     *\n     * @param {HTMLElement} element\n     * @param {string} source\n     * @returns {string | object}\n     */\n    _proto.read = function read(element, source) {\n      return element.getAttribute(source);\n    };\n\n    return AttributeReader;\n  }();\n\n  return AttributeReader;\n});\n//# sourceMappingURL=attribute-reader.js.map","Magento_PageBuilder/js/property/margins.js":"/*eslint-disable */\n/* jscs:disable */\ndefine([], function () {\n  /**\n   * Copyright \u00a9 Magento, Inc. All rights reserved.\n   * See COPYING.txt for license details.\n   */\n\n  /**\n   * @api\n   */\n  var Margins = /*#__PURE__*/function () {\n    \"use strict\";\n\n    function Margins() {}\n\n    var _proto = Margins.prototype;\n\n    /**\n     * Read margins from element\n     *\n     * @param {HTMLElement} element\n     * @returns {string | object}\n     */\n    _proto.read = function read(element) {\n      return {\n        margin: {\n          left: element.style.marginLeft,\n          top: element.style.marginTop,\n          right: element.style.marginRight,\n          bottom: element.style.marginBottom\n        }\n      };\n    };\n\n    return Margins;\n  }();\n\n  return Margins;\n});\n//# sourceMappingURL=margins.js.map","Magento_PageBuilder/js/property/property-reader-interface.js":"/*eslint-disable */\n/* jscs:disable */\ndefine([], function () {\n  \"use strict\";\n});\n//# sourceMappingURL=property-reader-interface.js.map","Magento_PageBuilder/js/property/property-reader-pool.js":"/*eslint-disable */\n/* jscs:disable */\ndefine([], function () {\n  /**\n   * Copyright \u00a9 Magento, Inc. All rights reserved.\n   * See COPYING.txt for license details.\n   */\n  var PropertyReaderPool = /*#__PURE__*/function () {\n    \"use strict\";\n\n    function PropertyReaderPool() {\n      this.propertyReaders = {};\n    }\n\n    var _proto = PropertyReaderPool.prototype;\n\n    /**\n     * Retrieve a property reader from the pool\n     *\n     * @param {string} name\n     * @returns {PropertyReaderInterface}\n     */\n    _proto.get = function get(name) {\n      return this.propertyReaders[name] !== undefined ? this.propertyReaders[name] : null;\n    }\n    /**\n     * Register a new property reader into the pool\n     *\n     * @param {string} name\n     * @param {PropertyReaderInterface} property\n     */\n    ;\n\n    _proto.register = function register(name, property) {\n      this.propertyReaders[name] = property;\n    };\n\n    return PropertyReaderPool;\n  }();\n\n  var _default = new PropertyReaderPool();\n\n  return Object.assign(_default, {\n    PropertyReaderPool: PropertyReaderPool\n  });\n});\n//# sourceMappingURL=property-reader-pool.js.map","Magento_PageBuilder/js/property/paddings.js":"/*eslint-disable */\n/* jscs:disable */\ndefine([], function () {\n  /**\n   * Copyright \u00a9 Magento, Inc. All rights reserved.\n   * See COPYING.txt for license details.\n   */\n\n  /**\n   * @api\n   */\n  var Paddings = /*#__PURE__*/function () {\n    \"use strict\";\n\n    function Paddings() {}\n\n    var _proto = Paddings.prototype;\n\n    /**\n     * Read paddings from element\n     *\n     * @param {HTMLElement} element\n     * @returns {string | object}\n     */\n    _proto.read = function read(element) {\n      return {\n        padding: {\n          left: element.style.paddingLeft,\n          top: element.style.paddingTop,\n          right: element.style.paddingRight,\n          bottom: element.style.paddingBottom\n        }\n      };\n    };\n\n    return Paddings;\n  }();\n\n  return Paddings;\n});\n//# sourceMappingURL=paddings.js.map","Magento_PageBuilder/js/property/link.js":"/*eslint-disable */\n/* jscs:disable */\ndefine([], function () {\n  /**\n   * Copyright \u00a9 Magento, Inc. All rights reserved.\n   * See COPYING.txt for license details.\n   */\n\n  /**\n   * @api\n   */\n  var Link = /*#__PURE__*/function () {\n    \"use strict\";\n\n    function Link() {\n      this.regexpByLinkType = {\n        category: new RegExp(/id_path=['\"]category\\/(\\d+)/),\n        product: new RegExp(/id_path=['\"]product\\/(\\d+)/),\n        page: new RegExp(/page_id=['\"](\\d+)/)\n      };\n    }\n\n    var _proto = Link.prototype;\n\n    /**\n     * Read link from element\n     *\n     * @param {HTMLElement} element\n     * @returns {string | object}\n     */\n    _proto.read = function read(element) {\n      var _ref;\n\n      var href = element.getAttribute(\"href\");\n      var attributeLinkType = element.getAttribute(\"data-link-type\");\n\n      if (typeof href === \"string\" && attributeLinkType !== \"default\") {\n        href = this.getIdFromWidgetSyntax(href, this.regexpByLinkType[attributeLinkType]);\n      }\n\n      return _ref = {}, _ref[attributeLinkType] = href, _ref.setting = element.getAttribute(\"target\") === \"_blank\", _ref.type = attributeLinkType, _ref;\n    }\n    /**\n     * Returns link value from widget string\n     *\n     * @param {string} href\n     * @param {RegExp} regexp\n     * @return {string}\n     */\n    ;\n\n    _proto.getIdFromWidgetSyntax = function getIdFromWidgetSyntax(href, regexp) {\n      var attributeIdMatches = href.match(regexp);\n\n      if (!attributeIdMatches) {\n        return href;\n      }\n\n      return attributeIdMatches[1];\n    };\n\n    return Link;\n  }();\n\n  return Link;\n});\n//# sourceMappingURL=link.js.map","Magento_PageBuilder/js/property/style-property-reader.js":"/*eslint-disable */\n/* jscs:disable */\ndefine([\"Magento_PageBuilder/js/utils/string\"], function (_string) {\n  /**\n   * Copyright \u00a9 Magento, Inc. All rights reserved.\n   * See COPYING.txt for license details.\n   */\n\n  /**\n   * @api\n   */\n  var StylePropertyReader = /*#__PURE__*/function () {\n    \"use strict\";\n\n    function StylePropertyReader() {}\n\n    var _proto = StylePropertyReader.prototype;\n\n    /**\n     * Read style property from element\n     *\n     * @param {HTMLElement} element\n     * @param {string} source\n     * @returns {string | object}\n     */\n    _proto.read = function read(element, source) {\n      var camelCasedSource = (0, _string.fromSnakeToCamelCase)(source);\n      return element.style[camelCasedSource];\n    };\n\n    return StylePropertyReader;\n  }();\n\n  return StylePropertyReader;\n});\n//# sourceMappingURL=style-property-reader.js.map","Magento_PageBuilder/js/drag-drop/sortable.js":"/*eslint-disable */\n/* jscs:disable */\ndefine([\"jquery\", \"knockout\", \"Magento_PageBuilder/js/events\", \"Magento_PageBuilder/js/content-type-factory\", \"Magento_PageBuilder/js/drag-drop/drop-indicators\", \"Magento_PageBuilder/js/drag-drop/matrix\", \"Magento_PageBuilder/js/drag-drop/move-content-type\", \"Magento_PageBuilder/js/drag-drop/registry\"], function (_jquery, _knockout, _events, _contentTypeFactory, _dropIndicators, _matrix, _moveContentType, _registry) {\n  /**\n   * Copyright \u00a9 Magento, Inc. All rights reserved.\n   * See COPYING.txt for license details.\n   */\n\n  /**\n   * The class used when hiding a content type\n   * @type {string}\n   */\n  var hiddenClass = \".pagebuilder-content-type-hidden\";\n  /**\n   * Return the sortable options for an instance which requires sorting / dropping functionality\n   *\n   * @param {Preview} preview\n   * @returns {JQueryUI.SortableOptions | any}\n   */\n\n  function getSortableOptions(preview) {\n    return {\n      cursor: \"-webkit-grabbing\",\n      tolerance: \"pointer\",\n      helper: function helper(event, item) {\n        var helper = (0, _jquery)(item).clone();\n        helper.css({\n          pointerEvents: \"none\"\n        });\n        return helper[0];\n      },\n      appendTo: document.body,\n      placeholder: {\n        element: function element() {\n          return (0, _jquery)(\"<div />\").addClass(\"pagebuilder-sortable-placeholder\")[0];\n        },\n        update: function update() {\n          return;\n        }\n      },\n      handle: \".move-structural\",\n      items: \"> .pagebuilder-content-type-wrapper\",\n      start: function start() {\n        onSortStart.apply(this, [preview].concat(Array.prototype.slice.call(arguments)));\n      },\n      sort: function sort() {\n        onSort.apply(this, [preview].concat(Array.prototype.slice.call(arguments)));\n      },\n      receive: function receive() {\n        onSortReceive.apply(this, [preview].concat(Array.prototype.slice.call(arguments)));\n      },\n      update: function update() {\n        onSortUpdate.apply(this, [preview].concat(Array.prototype.slice.call(arguments)));\n      },\n      stop: function stop() {\n        onSortStop.apply(this, [preview].concat(Array.prototype.slice.call(arguments)));\n      }\n    };\n  }\n  /**\n   * Get the stage ID from the preview\n   *\n   * @param {Preview | Stage} preview\n   * @returns {string}\n   */\n\n\n  function getPreviewStageIdProxy(preview) {\n    return preview.contentType.stageId;\n  }\n  /**\n   * Retrieve the contentType from the preview\n   *\n   * @param {Preview | Stage} instance\n   * @returns {any}\n   */\n\n\n  function getcontentTypeProxy(instance) {\n    return instance.contentType;\n  }\n\n  var sortedContentType;\n  /**\n   * On sort start record the item being sorted\n   *\n   * @param {Preview} preview\n   * @param {Event} event\n   * @param {JQueryUI.SortableUIParams} ui\n   */\n\n  function onSortStart(preview, event, ui) {\n    // Verify we're sorting an already created item\n    if (ui.item.hasClass(\"pagebuilder-content-type-wrapper\")) {\n      _events.trigger(\"stage:interactionStart\");\n\n      var contentTypeInstance = _knockout.dataFor(ui.item[0]);\n\n      if (contentTypeInstance) {\n        // Ensure the original item is displayed but with reduced opacity\n        ui.item.css(\"display\", \"block\").addClass(\"pagebuilder-sorting-original\");\n        (0, _jquery)(\".pagebuilder-drop-indicator.hidden-drop-indicator\").css(\"display\", \"block\").removeClass(\"hidden-drop-indicator\"); // If we're the first item in the container we need to hide the first drop indicator\n\n        if (contentTypeInstance.parentContentType.getChildren().indexOf(contentTypeInstance) === 0) {\n          ui.item.prev(\".pagebuilder-drop-indicator\").css(\"display\", \"none\").addClass(\"hidden-drop-indicator\");\n        }\n\n        (0, _dropIndicators.showDropIndicators)(contentTypeInstance.config.name, preview.contentType.stageId);\n        sortedContentType = contentTypeInstance; // Dynamically change the connect with option to restrict content types\n\n        (0, _jquery)(this).sortable(\"option\", \"connectWith\", (0, _matrix.getAllowedContainersClasses)(contentTypeInstance.config.name, preview.contentType.stageId));\n        (0, _jquery)(this).sortable(\"refresh\");\n      }\n    }\n  }\n\n  var placeholderContainer;\n  /**\n   * On a sort action hide the placeholder if disabled\n   *\n   * @param {Preview} preview\n   * @param {Event} event\n   * @param {JQueryUI.SortableUIParams} ui\n   */\n\n  function onSort(preview, event, ui) {\n    if ((0, _jquery)(this).sortable(\"option\", \"disabled\") || ui.placeholder.parents(hiddenClass).length > 0) {\n      ui.placeholder.css(\"display\", \"none\");\n    } else {\n      ui.placeholder.css(\"display\", \"block\");\n    }\n    /**\n     * We record the position of the placeholder on sort so we can ensure we place the content type in the correct place\n     * as jQuery UI's events aren't reliable.\n     */\n\n\n    placeholderContainer = ui.placeholder.parents(\".content-type-container\")[0];\n  }\n  /**\n   * On sort stop hide any indicators\n   */\n\n\n  function onSortStop(preview, event, ui) {\n    ui.item.removeClass(\"pagebuilder-sorting-original\");\n    (0, _dropIndicators.hideDropIndicators)();\n    (0, _registry.setDraggedContentTypeConfig)(null); // Only trigger stop if we triggered start\n\n    if (ui.item.hasClass(\"pagebuilder-content-type-wrapper\")) {\n      _events.trigger(\"stage:interactionStop\");\n    }\n\n    if (ui.item && !sortedContentType) {\n      ui.item.remove();\n    }\n\n    sortedContentType = null;\n  }\n  /**\n   * Handle receiving a content type from the left panel\n   *\n   * @param {Preview} preview\n   * @param {Event} event\n   * @param {JQueryUI.SortableUIParams} ui\n   */\n\n\n  function onSortReceive(preview, event, ui) {\n    var contentTypeConfig = (0, _registry.getDraggedContentTypeConfig)();\n    (0, _registry.setDraggedContentTypeConfig)(null);\n\n    if ((0, _jquery)(event.target)[0] !== this) {\n      return;\n    } // If the container content type can't receive drops we need to cancel the operation\n\n\n    if (!preview.isContainer()) {\n      (0, _jquery)(this).sortable(\"cancel\");\n      return;\n    }\n\n    if (contentTypeConfig) {\n      // If the sortable instance is disabled don't complete this operation\n      if ((0, _jquery)(this).sortable(\"option\", \"disabled\") || (0, _jquery)(this).parents(hiddenClass).length > 0) {\n        return;\n      } // jQuery's index method doesn't work correctly here, so use Array.findIndex instead\n\n\n      var index = (0, _jquery)(event.target).children(\".pagebuilder-content-type-wrapper, .pagebuilder-draggable-content-type\").toArray().findIndex(function (element) {\n        return element.classList.contains(\"pagebuilder-draggable-content-type\");\n      }); // Create the new content type and insert it into the parent\n\n      (0, _contentTypeFactory)(contentTypeConfig, getcontentTypeProxy(preview), getPreviewStageIdProxy(preview)).then(function (contentType) {\n        // Set the content type instance as \"dropped\", as it was dropped from the left panel\n        contentType.dropped = true;\n        getcontentTypeProxy(preview).addChild(contentType, index);\n\n        _events.trigger(\"contentType:dropAfter\", {\n          id: contentType.id,\n          contentType: contentType\n        });\n\n        _events.trigger(contentTypeConfig.name + \":dropAfter\", {\n          id: contentType.id,\n          contentType: contentType\n        });\n\n        return contentType;\n      }); // Remove the DOM element, as this is a drop event we can't just remove the ui.item\n\n      (0, _jquery)(event.target).find(\".pagebuilder-draggable-content-type\").remove();\n    }\n  }\n  /**\n   * On sort update handle sorting the underlying children knockout list\n   *\n   * @param {Preview} preview\n   * @param {Event} event\n   * @param {JQueryUI.SortableUIParams} ui\n   */\n\n\n  function onSortUpdate(preview, event, ui) {\n    // If the sortable instance is disabled don't complete this operation\n    if ((0, _jquery)(this).hasClass(\"ui-sortable\") && (0, _jquery)(this).sortable(\"option\", \"disabled\") || ui.item.parents(hiddenClass).length > 0) {\n      ui.item.remove();\n      (0, _jquery)(this).sortable(\"cancel\"); // jQuery tries to reset the state but kills KO's bindings, so we'll force a re-render on the content type\n\n      if (ui.item.length > 0 && typeof _knockout.dataFor(ui.item[0]) !== \"undefined\") {\n        var data = _knockout.dataFor(ui.item[0]);\n\n        var contentType = data.contentType && data.contentType.getChildren ? data.contentType : data.parentContentType;\n        var children = contentType.getChildren()().splice(0);\n        contentType.getChildren()([]);\n        contentType.getChildren()(children);\n      }\n\n      return;\n    }\n    /**\n     * Validate the event is coming from the exact instance or a child instance, we validate on the child instance\n     * as the event is sometimes annoyingly caught by the parent rather than the child it's dropped into. Combining this\n     * with placeholderContainer logic we can ensure we always do the right operation.\n     */\n\n\n    if (sortedContentType && (this === ui.item.parent()[0] || placeholderContainer && (0, _jquery)(this).find(ui.item.parent()).length > 0)) {\n      var el = ui.item[0];\n\n      var contentTypeInstance = _knockout.dataFor(el);\n\n      var target = _knockout.dataFor(placeholderContainer);\n\n      if (target && contentTypeInstance) {\n        // Calculate the source and target index\n        var sourceParent = contentTypeInstance.parentContentType;\n        var targetParent = getcontentTypeProxy(target);\n        var targetIndex = (0, _jquery)(placeholderContainer).children(\".pagebuilder-content-type-wrapper, .pagebuilder-draggable-content-type\").toArray().findIndex(function (element) {\n          return element === el;\n        });\n\n        if (sourceParent) {\n          (0, _jquery)(sourceParent === targetParent ? this : ui.sender || this).sortable(\"cancel\");\n        } else {\n          (0, _jquery)(el).remove();\n        }\n\n        (0, _moveContentType.moveContentType)(contentTypeInstance, targetIndex, targetParent);\n\n        if (contentTypeInstance.parentContentType !== targetParent) {\n          ui.item.remove();\n        }\n      }\n    }\n  }\n\n  return {\n    getSortableOptions: getSortableOptions,\n    hiddenClass: hiddenClass\n  };\n});\n//# sourceMappingURL=sortable.js.map","Magento_PageBuilder/js/drag-drop/registry.js":"/*eslint-disable */\n/* jscs:disable */\ndefine([], function () {\n  /**\n   * Copyright \u00a9 Magento, Inc. All rights reserved.\n   * See COPYING.txt for license details.\n   */\n  var draggedContentTypeConfig;\n  /**\n   * Set the current dragged blocks config into the registry\n   *\n   * @param {ContentTypeConfigInterface} config\n   */\n\n  function setDraggedContentTypeConfig(config) {\n    draggedContentTypeConfig = config;\n  }\n  /**\n   * Retrieve the dragged blocks config\n   *\n   * @returns {ContentTypeConfigInterface}\n   */\n\n\n  function getDraggedContentTypeConfig() {\n    return draggedContentTypeConfig;\n  }\n\n  return {\n    setDraggedContentTypeConfig: setDraggedContentTypeConfig,\n    getDraggedContentTypeConfig: getDraggedContentTypeConfig\n  };\n});\n//# sourceMappingURL=registry.js.map","Magento_PageBuilder/js/drag-drop/matrix.js":"/*eslint-disable */\n/* jscs:disable */\ndefine([\"underscore\", \"Magento_PageBuilder/js/config\"], function (_underscore, _config) {\n  /**\n   * Copyright \u00a9 Magento, Inc. All rights reserved.\n   * See COPYING.txt for license details.\n   */\n  var allowedParents = {};\n  /**\n   * Build a matrix of which containers each content type can go into, these are determined by the allowed_parents\n   * node within the content types configuration\n   */\n\n  function generateAllowedParents() {\n    _underscore.values(_config.getConfig(\"content_types\")).forEach(function (contentType) {\n      allowedParents[contentType.name] = contentType.allowed_parents.slice();\n    });\n  }\n  /**\n   * Retrieve the containers a specific content type can be contained in\n   *\n   * @param {string} contentType\n   * @returns {any}\n   */\n\n\n  function getContainersFor(contentType) {\n    if (allowedParents[contentType]) {\n      return allowedParents[contentType];\n    }\n\n    return [];\n  }\n  /**\n   * Generate classes of containers the content type is allowed within\n   *\n   * @param {string} contentType\n   * @param {string} stageId\n   * @returns {string}\n   */\n\n\n  function getAllowedContainersClasses(contentType, stageId) {\n    return getContainersFor(contentType).map(function (value) {\n      return \"#\" + stageId + \" .content-type-container.\" + value + \"-container\";\n    }).join(\", \");\n  }\n  /**\n   * @api\n   */\n\n\n  return {\n    generateAllowedParents: generateAllowedParents,\n    getContainersFor: getContainersFor,\n    getAllowedContainersClasses: getAllowedContainersClasses\n  };\n});\n//# sourceMappingURL=matrix.js.map","Magento_PageBuilder/js/drag-drop/move-content-type.js":"/*eslint-disable */\n/* jscs:disable */\ndefine([\"knockout\", \"Magento_PageBuilder/js/events\"], function (_knockout, _events) {\n  /**\n   * Copyright \u00a9 Magento, Inc. All rights reserved.\n   * See COPYING.txt for license details.\n   */\n\n  /**\n   * Move a content type to a new index, with the option to move to a new container\n   *\n   * @param {ContentTypeInterface | ContentTypeCollectionInterface} contentType\n   * @param {number} targetIndex\n   * @param {ContentTypeCollectionInterface} targetParent\n   */\n  function moveContentType(contentType, targetIndex, targetParent) {\n    if (targetParent === void 0) {\n      targetParent = null;\n    }\n\n    var sourceParent = contentType.parentContentType;\n    var sourceIndex = contentType.parentContentType.children().indexOf(contentType);\n    var sourceParentChildren = sourceParent.getChildren(); // Trigger our block move event\n\n    _events.trigger(\"contentType:moveBefore\", {\n      contentType: contentType,\n      sourceParent: sourceParent,\n      targetParent: targetParent,\n      targetIndex: targetIndex,\n      stageId: contentType.stageId\n    });\n\n    _events.trigger(contentType.config.name + \":moveBefore\", {\n      contentType: contentType,\n      sourceParent: sourceParent,\n      targetParent: targetParent,\n      targetIndex: targetIndex,\n      stageId: contentType.stageId\n    });\n\n    if (targetParent && sourceParent !== targetParent) {\n      contentType.parentContentType = targetParent; // Handle dragging between sortable elements\n\n      sourceParentChildren.splice(sourceIndex, 1);\n      targetParent.getChildren().splice(targetIndex, 0, contentType);\n    } else {\n      // Retrieve the children from the source parent\n      var children = _knockout.utils.unwrapObservable(sourceParentChildren); // Inform KO that this value is about to mutate\n\n\n      if (sourceParentChildren.valueWillMutate) {\n        sourceParentChildren.valueWillMutate();\n      } // Perform the mutation\n\n\n      children.splice(sourceIndex, 1);\n      children.splice(targetIndex, 0, contentType); // Inform KO that the mutation is complete\n\n      if (sourceParentChildren.valueHasMutated) {\n        sourceParentChildren.valueHasMutated();\n      }\n    } // Process any deferred bindings\n\n\n    if (_knockout.processAllDeferredBindingUpdates) {\n      _knockout.processAllDeferredBindingUpdates();\n    } // Trigger our content type move event\n\n\n    _events.trigger(\"contentType:moveAfter\", {\n      contentType: contentType,\n      sourceParent: sourceParent,\n      targetParent: targetParent,\n      targetIndex: targetIndex,\n      stageId: contentType.stageId\n    });\n\n    _events.trigger(contentType.config.name + \":moveAfter\", {\n      contentType: contentType,\n      sourceParent: sourceParent,\n      targetParent: targetParent,\n      targetIndex: targetIndex,\n      stageId: contentType.stageId\n    });\n  }\n\n  return {\n    moveContentType: moveContentType\n  };\n});\n//# sourceMappingURL=move-content-type.js.map","Magento_PageBuilder/js/drag-drop/drop-indicators.js":"/*eslint-disable */\n/* jscs:disable */\ndefine([\"Magento_PageBuilder/js/utils/create-stylesheet\", \"Magento_PageBuilder/js/drag-drop/matrix\"], function (_createStylesheet, _matrix) {\n  /**\n   * Copyright \u00a9 Magento, Inc. All rights reserved.\n   * See COPYING.txt for license details.\n   */\n  var headDropIndicatorStyles;\n  /**\n   * Show the drop indicators for a specific content type\n   *\n   * We do this by creating a style sheet and injecting it into the head. It's dramatically quicker to allow the browsers\n   * CSS engine to display these for us than manually iterating through the DOM and applying a class to the elements.\n   *\n   * @param {string} contentType\n   * @param {string} stageId\n   * @returns {HTMLStyleElement}\n   */\n\n  function showDropIndicators(contentType, stageId) {\n    var acceptedContainers = (0, _matrix.getContainersFor)(contentType);\n\n    if (acceptedContainers.length > 0) {\n      var _ref;\n\n      var classNames = acceptedContainers.map(function (container) {\n        return \"#\" + stageId + \" .content-type-container.\" + container + \"-container > .pagebuilder-drop-indicator, \" + (\"#\" + stageId + \" .pagebuilder-content-type.type-container.empty-container > .content-type-container.\") + (container + \"-container:before\");\n      });\n      var styles = (0, _createStylesheet.createStyleSheet)((_ref = {}, _ref[classNames.join(\", \")] = {\n        opacity: 1,\n        visibility: \"visible\"\n      }, _ref));\n      document.head.appendChild(styles);\n      headDropIndicatorStyles = styles;\n      return styles;\n    }\n  }\n  /**\n   * Hide the drop indicators\n   */\n\n\n  function hideDropIndicators() {\n    if (headDropIndicatorStyles) {\n      headDropIndicatorStyles.remove();\n      headDropIndicatorStyles = null;\n    }\n  }\n\n  return {\n    showDropIndicators: showDropIndicators,\n    hideDropIndicators: hideDropIndicators\n  };\n});\n//# sourceMappingURL=drop-indicators.js.map","Magento_PageBuilder/js/binding/draggable.js":"/*eslint-disable */\n/* jscs:disable */\ndefine([\"jquery\", \"knockout\"], function (_jquery, _knockout) {\n  \"use strict\";\n\n  _jquery = _interopRequireDefault(_jquery);\n  _knockout = _interopRequireDefault(_knockout);\n\n  function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }\n\n  /**\n   * Copyright \u00a9 Magento, Inc. All rights reserved.\n   * See COPYING.txt for license details.\n   */\n\n  /**\n   * @api\n   */\n  // Create a new sortable Knockout binding\n  _knockout.default.bindingHandlers.draggable = {\n    init: function init(element, valueAccessor) {\n      (0, _jquery.default)(element).draggable(valueAccessor());\n    }\n  };\n});\n//# sourceMappingURL=draggable.js.map","Magento_PageBuilder/js/binding/sortable.js":"/*eslint-disable */\n/* jscs:disable */\ndefine([\"jquery\", \"knockout\", \"underscore\"], function (_jquery, _knockout, _underscore) {\n  \"use strict\";\n\n  _jquery = _interopRequireDefault(_jquery);\n  _knockout = _interopRequireDefault(_knockout);\n  _underscore = _interopRequireDefault(_underscore);\n\n  function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }\n\n  /**\n   * Copyright \u00a9 Magento, Inc. All rights reserved.\n   * See COPYING.txt for license details.\n   */\n  // Create a new sortable Knockout binding\n  _knockout.default.bindingHandlers.sortable = {\n    init: function init(element, valueAccessor) {\n      // As we can't conditionally apply bindings we block this operation when options are null\n      if (valueAccessor() === null) {\n        return;\n      }\n\n      _underscore.default.defer(function () {\n        (0, _jquery.default)(element).sortable(valueAccessor());\n      });\n    }\n  };\n});\n//# sourceMappingURL=sortable.js.map","Magento_PageBuilder/js/binding/focus.js":"/*eslint-disable */\n/* jscs:disable */\ndefine([\"knockout\"], function (_knockout) {\n  \"use strict\";\n\n  _knockout = _interopRequireDefault(_knockout);\n\n  function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }\n\n  /**\n   * Copyright \u00a9 Magento, Inc. All rights reserved.\n   * See COPYING.txt for license details.\n   */\n\n  /**\n   * @api\n   */\n  _knockout.default.bindingHandlers.hasFocusNoScroll = {\n    init: _knockout.default.bindingHandlers.hasFocus.init,\n    update: function update(element, valueAccessor, allBindingsAccessor, viewModel, bindingContext) {\n      var value = !!_knockout.default.utils.unwrapObservable(valueAccessor());\n      value ? element.focus({\n        preventScroll: true\n      }) : element.blur();\n    }\n  };\n});\n//# sourceMappingURL=focus.js.map","Magento_PageBuilder/js/binding/live-edit.js":"/*eslint-disable */\n/* jscs:disable */\ndefine([\"jquery\", \"knockout\", \"Magento_Ui/js/lib/key-codes\", \"underscore\"], function (_jquery, _knockout, _keyCodes, _underscore) {\n  \"use strict\";\n\n  _jquery = _interopRequireDefault(_jquery);\n  _knockout = _interopRequireDefault(_knockout);\n  _keyCodes = _interopRequireDefault(_keyCodes);\n  _underscore = _interopRequireDefault(_underscore);\n\n  function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }\n\n  /**\n   * Copyright \u00a9 Magento, Inc. All rights reserved.\n   * See COPYING.txt for license details.\n   */\n\n  /**\n   * @api\n   */\n\n  /**\n   * Strip HTML and return text\n   *\n   * @param {string} html\n   * @returns {string}\n   */\n  function stripHtml(html) {\n    if (html) {\n      var htmlDocument = new DOMParser().parseFromString(html, \"text/html\");\n      return htmlDocument.body ? htmlDocument.body.textContent : \"\";\n    }\n\n    return html;\n  }\n  /**\n   * Add or remove the placeholder-text class from the element based on its content\n   *\n   * @param {Element} element\n   */\n\n\n  function handlePlaceholderClass(element) {\n    if (stripHtml(element.innerHTML).length === 0) {\n      element.innerHTML = \"\";\n      element.classList.add(\"placeholder-text\");\n    } else {\n      element.classList.remove(\"placeholder-text\");\n    }\n  } // Custom Knockout binding for live editing text inputs\n\n\n  _knockout.default.bindingHandlers.liveEdit = {\n    /**\n     * Init the live edit binding on an element\n     *\n     * @param {HTMLElement} element\n     * @param {() => any} valueAccessor\n     * @param {KnockoutAllBindingsAccessor} allBindings\n     * @param {any} viewModel\n     * @param {KnockoutBindingContext} bindingContext\n     */\n    init: function init(element, valueAccessor, allBindings, viewModel, bindingContext) {\n      var _valueAccessor = valueAccessor(),\n          field = _valueAccessor.field,\n          placeholder = _valueAccessor.placeholder,\n          _valueAccessor$select = _valueAccessor.selectAll,\n          selectAll = _valueAccessor$select === void 0 ? false : _valueAccessor$select;\n\n      var focusedValue = element.innerHTML;\n      var previouslyFocused = false;\n      var blurTimeout;\n      var lastUpdateValue;\n      /**\n       * Record the value on focus, only conduct an update when data changes\n       */\n\n      var onFocus = function onFocus() {\n        clearTimeout(blurTimeout);\n        focusedValue = stripHtml(element.innerHTML);\n        lastUpdateValue = focusedValue;\n\n        if (selectAll && element.innerHTML !== \"\" && !previouslyFocused) {\n          _underscore.default.defer(function () {\n            var selection = window.getSelection();\n            var range = document.createRange();\n            range.selectNodeContents(element);\n            selection.removeAllRanges();\n            selection.addRange(range);\n            previouslyFocused = true;\n          });\n        }\n      };\n      /**\n       * On blur change our timeout for previously focused. We require a flag to track whether the input has been\n       * focused and selected previously due to a bug in Firefox which doesn't handle focus events correctly when\n       * contenteditable is placed within an anchor.\n       */\n\n\n      var onBlur = function onBlur() {\n        blurTimeout = setTimeout(function () {\n          previouslyFocused = false;\n        }, 100);\n      };\n      /**\n       * Mousedown event on element\n       *\n       * @param {Event} event\n       */\n\n\n      var onMouseDown = function onMouseDown(event) {\n        event.stopPropagation();\n      };\n      /**\n       * Key down event on element\n       *\n       * Prevent styling such as bold, italic, and underline using keyboard commands, and prevent multi-line entries\n       *\n       * @param {JQueryEventObject} event\n       */\n\n\n      var onKeyDown = function onKeyDown(event) {\n        var key = _keyCodes.default[event.keyCode]; // command or control\n\n        if (event.metaKey || event.ctrlKey) {\n          if (key === \"bKey\" || key === \"iKey\" || key === \"uKey\") {\n            event.preventDefault();\n          }\n        }\n\n        if (key === \"enterKey\") {\n          event.preventDefault();\n        } // prevent slides from sliding\n\n\n        if (key === \"pageLeftKey\" || key === \"pageRightKey\") {\n          event.stopPropagation();\n        }\n      };\n      /**\n       * On key up update the view model to ensure all changes are saved\n       */\n\n\n      var onKeyUp = function onKeyUp() {\n        var strippedValue = stripHtml(element.innerHTML);\n\n        if (focusedValue !== strippedValue) {\n          lastUpdateValue = strippedValue;\n          viewModel.updateData(field, strippedValue);\n        }\n      };\n      /**\n       * Prevent content from being dropped inside of inline edit area\n       *\n       * @param {DragEvent} event\n       */\n\n\n      var onDrop = function onDrop(event) {\n        event.preventDefault();\n      };\n      /**\n       * Prevent content from being dragged\n       *\n       * @param {DragEvent} event\n       */\n\n\n      var onDragStart = function onDragStart(event) {\n        event.preventDefault();\n      };\n      /**\n       * Input event on element\n       */\n\n\n      var onInput = function onInput() {\n        handlePlaceholderClass(element);\n      };\n      /**\n       * On paste strip any HTML\n       */\n\n\n      var onPaste = function onPaste() {\n        // Record the original caret position so we can ensure we restore it at the correct position\n        var selection = window.getSelection();\n        var originalPositionStart = selection.getRangeAt(0).cloneRange().startOffset;\n        var originalPositionEnd = selection.getRangeAt(0).cloneRange().endOffset;\n        var originalContentLength = stripHtml(element.innerHTML).length; // Allow the paste action to update the content\n\n        _underscore.default.defer(function () {\n          var strippedValue = stripHtml(element.innerHTML);\n          lastUpdateValue = strippedValue;\n          element.textContent = strippedValue;\n          /**\n           * Calculate the position the caret should end up at, the difference in string length + the original\n           * end offset position\n           */\n\n          var restoredPosition = Math.abs(strippedValue.length - originalContentLength) + originalPositionStart; // If part of the text was selected adjust the position for the removed text\n\n          if (originalPositionStart !== originalPositionEnd) {\n            restoredPosition += Math.abs(originalPositionEnd - originalPositionStart);\n          }\n\n          var range = document.createRange();\n          range.setStart(element.childNodes[0], restoredPosition);\n          range.setEnd(element.childNodes[0], restoredPosition);\n          selection.removeAllRanges();\n          selection.addRange(range);\n        });\n      };\n\n      element.setAttribute(\"data-placeholder\", placeholder);\n      element.textContent = viewModel.contentType.dataStore.get(field);\n      element.contentEditable = \"true\";\n      element.addEventListener(\"focus\", onFocus);\n      element.addEventListener(\"blur\", onBlur);\n      element.addEventListener(\"mousedown\", onMouseDown);\n      element.addEventListener(\"keydown\", onKeyDown);\n      element.addEventListener(\"keyup\", onKeyUp);\n      element.addEventListener(\"input\", onInput);\n      element.addEventListener(\"drop\", onDrop);\n      element.addEventListener(\"paste\", onPaste);\n      element.addEventListener(\"dragstart\", onDragStart);\n      (0, _jquery.default)(element).parent().css(\"cursor\", \"text\");\n      handlePlaceholderClass(element); // Create a subscription onto the original data to update the internal value\n\n      viewModel.contentType.dataStore.subscribe(function (data) {\n        // Only update the value if it differs from the last value added within live edit\n        if (lastUpdateValue !== data[field]) {\n          lastUpdateValue = data[field];\n          element.textContent = data[field];\n          handlePlaceholderClass(element);\n        }\n      }, field); // Resolve issues of content editable being within an anchor\n\n      if ((0, _jquery.default)(element).parent().is(\"a\")) {\n        (0, _jquery.default)(element).parent().attr(\"draggable\", \"false\");\n      }\n    },\n\n    /**\n     * Update live edit binding on an element\n     *\n     * @param {any} element\n     * @param {() => any} valueAccessor\n     * @param {KnockoutAllBindingsAccessor} allBindings\n     * @param {any} viewModel\n     * @param {KnockoutBindingContext} bindingContext\n     */\n    update: function update(element, valueAccessor, allBindings, viewModel, bindingContext) {\n      var _valueAccessor2 = valueAccessor(),\n          field = _valueAccessor2.field;\n\n      element.textContent = viewModel.contentType.dataStore.get(field);\n      handlePlaceholderClass(element);\n    }\n  };\n});\n//# sourceMappingURL=live-edit.js.map","Magento_PageBuilder/js/binding/sortable-children.js":"/*eslint-disable */\n/* jscs:disable */\ndefine([\"jquery\", \"knockout\", \"Magento_PageBuilder/js/events\", \"Magento_PageBuilder/js/drag-drop/move-content-type\", \"Magento_PageBuilder/js/utils/array\"], function (_jquery, _knockout, _events, _moveContentType, _array) {\n  \"use strict\";\n\n  _jquery = _interopRequireDefault(_jquery);\n  _knockout = _interopRequireDefault(_knockout);\n  _events = _interopRequireDefault(_events);\n\n  function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }\n\n  /**\n   * Copyright \u00a9 Magento, Inc. All rights reserved.\n   * See COPYING.txt for license details.\n   */\n\n  /**\n   * @api\n   */\n  var draggedContentType; // Create a new sortable Knockout binding\n\n  _knockout.default.bindingHandlers.sortableChildren = {\n    /**\n     * Init the draggable binding on an element\n     *\n     * @param element\n     * @param valueAccessor\n     * @param allBindingsAccessor\n     * @param data\n     * @param context\n     */\n    init: function init(element, valueAccessor, allBindingsAccessor, data, context) {\n      var instance = context.$data.contentType;\n\n      var options = _knockout.default.unwrap(valueAccessor());\n\n      var originalPosition;\n      (0, _jquery.default)(element).sortable(options).on(\"sortstart\", function (event, ui) {\n        originalPosition = ui.item.index();\n        draggedContentType = instance.children()[originalPosition];\n\n        _events.default.trigger(\"childContentType:sortStart\", {\n          instance: instance,\n          originalPosition: originalPosition,\n          ui: ui\n        });\n      }).on(\"sortstop\", function (event, ui) {\n        _events.default.trigger(\"childContentType:sortStop\", {\n          instance: instance,\n          ui: ui,\n          originalPosition: originalPosition\n        });\n      }).on(\"sortupdate\", function (event, ui) {\n        if (this === ui.item.parent()[0]) {\n          var index = ui.item.index();\n\n          var targetParent = _knockout.default.dataFor(ui.item.parent()[0]).contentType;\n\n          if (targetParent && (originalPosition !== index || draggedContentType.parentContentType !== targetParent)) {\n            ui.item.remove();\n\n            if (draggedContentType.parentContentType === targetParent) {\n              (0, _array.moveArrayItem)(instance.children, originalPosition, index);\n            } else {\n              (0, _moveContentType.moveContentType)(draggedContentType, index, targetParent);\n            }\n\n            _events.default.trigger(\"childContentType:sortUpdate\", {\n              instance: instance,\n              newPosition: index,\n              originalPosition: originalPosition,\n              ui: ui,\n              event: event\n            });\n          }\n        }\n      });\n    }\n  };\n});\n//# sourceMappingURL=sortable-children.js.map","Magento_PageBuilder/js/binding/style.js":"/*eslint-disable */\n/* jscs:disable */\ndefine([\"knockout\", \"mageUtils\", \"underscore\", \"Magento_PageBuilder/js/config\", \"Magento_PageBuilder/js/content-type/style-registry\"], function (_knockout, _mageUtils, _underscore, _config, _styleRegistry) {\n  \"use strict\";\n\n  _knockout = _interopRequireDefault(_knockout);\n  _mageUtils = _interopRequireDefault(_mageUtils);\n  _underscore = _interopRequireDefault(_underscore);\n  _config = _interopRequireDefault(_config);\n\n  function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }\n\n  /**\n   * Copyright \u00a9 Magento, Inc. All rights reserved.\n   * See COPYING.txt for license details.\n   */\n  var originalStyle = _knockout.default.bindingHandlers.style;\n\n  var bodyId = _config.default.getConfig(\"bodyId\");\n\n  function isPageBuilderContext(context) {\n    return !!(context.stage && context.stage.pageBuilder);\n  }\n\n  _knockout.default.bindingHandlers.style = {\n    init: function init(element, valueAccessor, allBindings, viewModel, bindingContext) {\n      if (isPageBuilderContext(bindingContext)) {\n        element.setAttribute(_styleRegistry.pbStyleAttribute, _mageUtils.default.uniqueid());\n      }\n    },\n    update: function update(element, valueAccessor, allBindings, viewModel, bindingContext) {\n      if (isPageBuilderContext(bindingContext)) {\n        var value = _knockout.default.utils.unwrapObservable(valueAccessor() || {});\n\n        var styles = {};\n        var styleId = element.getAttribute(_styleRegistry.pbStyleAttribute);\n        var existedStyleBlock = document.querySelector(\"style[\" + _styleRegistry.styleDataAttribute + \"=\\\"\" + styleId + \"\\\"]\");\n\n        _knockout.default.utils.objectForEach(value, function (styleName, styleValue) {\n          styleValue = _knockout.default.utils.unwrapObservable(styleValue);\n\n          if (styleValue === null || styleValue === undefined || styleValue === false) {\n            styleValue = \"\";\n          }\n\n          if (styleValue) {\n            styles[styleName] = styleValue;\n          }\n        });\n\n        if (existedStyleBlock) {\n          existedStyleBlock.remove();\n        }\n\n        if (!_underscore.default.isEmpty(styles)) {\n          var styleElement = document.createElement(\"style\");\n          styleElement.setAttribute(_styleRegistry.styleDataAttribute, styleId);\n          styleElement.innerHTML = (0, _styleRegistry.generateCssBlock)(\"#\" + bodyId + \" [\" + _styleRegistry.pbStyleAttribute + \"=\\\"\" + styleId + \"\\\"]\", styles);\n          element.parentElement.append(styleElement);\n        }\n      } else {\n        originalStyle.update(element, valueAccessor, allBindings, viewModel, bindingContext);\n      }\n    }\n  };\n});\n//# sourceMappingURL=style.js.map","Magento_PageBuilder/js/binding/master-style.js":"/*eslint-disable */\n/* jscs:disable */\ndefine([\"knockout\", \"mageUtils\", \"underscore\", \"Magento_PageBuilder/js/config\", \"Magento_PageBuilder/js/content-type/style-registry\"], function (_knockout, _mageUtils, _underscore, _config, _styleRegistry) {\n  \"use strict\";\n\n  _knockout = _interopRequireDefault(_knockout);\n  _mageUtils = _interopRequireDefault(_mageUtils);\n  _underscore = _interopRequireDefault(_underscore);\n  _config = _interopRequireDefault(_config);\n\n  function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }\n\n  /**\n   * Copyright \u00a9 Magento, Inc. All rights reserved.\n   * See COPYING.txt for license details.\n   */\n  var bodyId = _config.default.getConfig(\"bodyId\");\n\n  var getStyles = function getStyles(styleObject) {\n    var styles = {};\n\n    _knockout.default.utils.objectForEach(styleObject, function (styleName, styleValue) {\n      styleValue = _knockout.default.utils.unwrapObservable(styleValue);\n\n      if (styleValue === null || styleValue === undefined || styleValue === false) {\n        // Empty string removes the value, whereas null/undefined have no effect\n        styleValue = \"\";\n      }\n\n      if (styleValue) {\n        styles[styleName] = styleValue;\n      }\n    });\n\n    return styles;\n  };\n\n  _knockout.default.bindingHandlers.style = {\n    update: function update(element, valueAccessor, allBindings, viewModel, bindingContext) {\n      var value = _knockout.default.utils.unwrapObservable(valueAccessor() || {});\n\n      var viewportKeys = _underscore.default.keys(_config.default.getConfig(\"viewports\"));\n\n      var commonStyles = getStyles(_underscore.default.omit(value, viewportKeys));\n      var viewportStyles = {};\n\n      _underscore.default.each(viewportKeys, function (name) {\n        viewportStyles[name] = _underscore.default.extend(getStyles(value[name]), commonStyles);\n      });\n\n      if (_underscore.default.findKey(viewportStyles, function (styles) {\n        return !_underscore.default.isEmpty(styles);\n      })) {\n        var id = _mageUtils.default.uniqueid();\n\n        var selector = \"#\" + bodyId + \" [\" + _styleRegistry.pbStyleAttribute + \"=\\\"\" + id + \"\\\"]\";\n\n        _underscore.default.each(viewportKeys, function (name) {\n          var registry = (0, _styleRegistry.getStyleRegistry)(name + bindingContext.$root.id);\n          registry.setStyles(selector, viewportStyles[name]);\n        });\n\n        element.setAttribute(_styleRegistry.pbStyleAttribute, id);\n      }\n    }\n  };\n});\n//# sourceMappingURL=master-style.js.map","Magento_PageBuilder/js/content-type/appearance-config.js":"/*eslint-disable */\n/* jscs:disable */\ndefine([\"Magento_PageBuilder/js/config\"], function (_config) {\n  /**\n   * Copyright \u00a9 Magento, Inc. All rights reserved.\n   * See COPYING.txt for license details.\n   */\n\n  /**\n   * Get config for appearance\n   *\n   * @param {string} contentType\n   * @param {string} appearance\n   * @returns {ContentTypeConfigAppearanceInterface}\n   * @api\n   */\n  function getAppearanceConfig(contentType, appearance) {\n    var contentTypeConfig = _config.getContentTypeConfig(contentType);\n\n    var config;\n\n    if (contentTypeConfig.appearances !== undefined) {\n      if (!appearance) {\n        for (var key in contentTypeConfig.appearances) {\n          if (!!contentTypeConfig.appearances[key].default) {\n            appearance = key;\n            break;\n          }\n        }\n      }\n\n      if (appearance) {\n        config = contentTypeConfig.appearances[appearance];\n      }\n    }\n\n    return config;\n  }\n\n  return getAppearanceConfig;\n});\n//# sourceMappingURL=appearance-config.js.map","Magento_PageBuilder/js/content-type/master-collection.js":"/*eslint-disable */\n/* jscs:disable */\n\nfunction _defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if (\"value\" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } }\n\nfunction _createClass(Constructor, protoProps, staticProps) { if (protoProps) _defineProperties(Constructor.prototype, protoProps); if (staticProps) _defineProperties(Constructor, staticProps); return Constructor; }\n\nfunction _inheritsLoose(subClass, superClass) { subClass.prototype = Object.create(superClass.prototype); subClass.prototype.constructor = subClass; _setPrototypeOf(subClass, superClass); }\n\nfunction _setPrototypeOf(o, p) { _setPrototypeOf = Object.setPrototypeOf || function _setPrototypeOf(o, p) { o.__proto__ = p; return o; }; return _setPrototypeOf(o, p); }\n\ndefine([\"Magento_PageBuilder/js/content-type/master\"], function (_master) {\n  /**\n   * Copyright \u00a9 Magento, Inc. All rights reserved.\n   * See COPYING.txt for license details.\n   */\n  var MasterCollection = /*#__PURE__*/function (_master2) {\n    \"use strict\";\n\n    _inheritsLoose(MasterCollection, _master2);\n\n    function MasterCollection() {\n      return _master2.apply(this, arguments) || this;\n    }\n\n    _createClass(MasterCollection, [{\n      key: \"masterTemplate\",\n      get:\n      /**\n       * Retrieve the child template\n       *\n       * @returns {string}\n       */\n      function get() {\n        return \"Magento_PageBuilder/content-type/master-collection\";\n      }\n    }]);\n\n    return MasterCollection;\n  }(_master);\n\n  return MasterCollection;\n});\n//# sourceMappingURL=master-collection.js.map","Magento_PageBuilder/js/content-type/preview-collection.js":"/*eslint-disable */\n/* jscs:disable */\n\nfunction _defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if (\"value\" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } }\n\nfunction _createClass(Constructor, protoProps, staticProps) { if (protoProps) _defineProperties(Constructor.prototype, protoProps); if (staticProps) _defineProperties(Constructor, staticProps); return Constructor; }\n\nfunction _inheritsLoose(subClass, superClass) { subClass.prototype = Object.create(superClass.prototype); subClass.prototype.constructor = subClass; _setPrototypeOf(subClass, superClass); }\n\nfunction _setPrototypeOf(o, p) { _setPrototypeOf = Object.setPrototypeOf || function _setPrototypeOf(o, p) { o.__proto__ = p; return o; }; return _setPrototypeOf(o, p); }\n\ndefine([\"Magento_PageBuilder/js/config\", \"Magento_PageBuilder/js/content-type-factory\", \"Magento_PageBuilder/js/content-type/preview\"], function (_config, _contentTypeFactory, _preview) {\n  /**\n   * Copyright \u00a9 Magento, Inc. All rights reserved.\n   * See COPYING.txt for license details.\n   */\n  var PreviewCollection = /*#__PURE__*/function (_preview2) {\n    \"use strict\";\n\n    _inheritsLoose(PreviewCollection, _preview2);\n\n    function PreviewCollection() {\n      return _preview2.apply(this, arguments) || this;\n    }\n\n    var _proto = PreviewCollection.prototype;\n\n    /**\n     * Duplicate a collection content type\n     *\n     * @param {ContentTypeCollectionInterface} contentType\n     * @param {boolean} autoAppend\n     * @param {boolean} direct\n     * @returns {Promise<ContentTypeCollectionInterface> | void}\n     */\n    _proto.clone = function clone(contentType, autoAppend, direct) {\n      var _this = this;\n\n      if (autoAppend === void 0) {\n        autoAppend = true;\n      }\n\n      if (direct === void 0) {\n        direct = false;\n      }\n\n      var defaultViewport = _config.getConfig(\"defaultViewport\");\n\n      var index = contentType.parentContentType.getChildren().indexOf(contentType) + 1 || null;\n      var childrenLength = contentType.children ? contentType.children().length : 0;\n      return new Promise(function (resolve, reject) {\n        (0, _contentTypeFactory)(contentType.config, contentType.parentContentType, contentType.stageId, contentType.dataStores[defaultViewport].getState(), childrenLength, contentType.getDataStoresStates()).then(function (duplicate) {\n          if (contentType.children && contentType.children().length > 0) {\n            // Duplicate the instances children into the new duplicate\n            contentType.children().forEach(function (subChild) {\n              var subChildClone = duplicate.preview.clone(subChild, false);\n\n              if (subChildClone) {\n                subChildClone.then(function (duplicateSubChild) {\n                  duplicateSubChild.parentContentType = duplicate;\n                  duplicate.addChild(duplicateSubChild);\n                });\n              } else {\n                reject(\"Unable to duplicate sub child.\");\n              }\n            });\n          }\n\n          if (autoAppend) {\n            contentType.parentContentType.addChild(duplicate, index);\n          }\n\n          _this.dispatchContentTypeCloneEvents(contentType, duplicate, index, direct);\n\n          resolve(duplicate);\n        });\n      });\n    }\n    /**\n     * Tries to call specified method of a current content type,\n     * and delegates attempt to its' children.\n     * @param args\n     */\n    ;\n\n    _proto.delegate = function delegate() {\n      var _preview2$prototype$d;\n\n      for (var _len = arguments.length, args = new Array(_len), _key = 0; _key < _len; _key++) {\n        args[_key] = arguments[_key];\n      }\n\n      (_preview2$prototype$d = _preview2.prototype.delegate).call.apply(_preview2$prototype$d, [this].concat(args));\n\n      this.contentType.getChildren()().forEach(function (elem) {\n        elem.preview.delegate.apply(elem.preview, args);\n      });\n    }\n    /**\n     * Does the current instance have any children or values different from the default for it's type?\n     *\n     * @returns {boolean}\n     */\n    ;\n\n    _proto.isConfigured = function isConfigured() {\n      if (this.contentType.children().length > 0) {\n        return true;\n      }\n\n      return _preview2.prototype.isConfigured.call(this);\n    };\n\n    _createClass(PreviewCollection, [{\n      key: \"childTemplate\",\n      get:\n      /**\n       * Retrieve the preview child template\n       *\n       * @returns {string}\n       */\n      function get() {\n        return \"Magento_PageBuilder/content-type/preview-collection\";\n      }\n    }]);\n\n    return PreviewCollection;\n  }(_preview);\n\n  return PreviewCollection;\n});\n//# sourceMappingURL=preview-collection.js.map","Magento_PageBuilder/js/content-type/style-registry.js":"/*eslint-disable */\n/* jscs:disable */\ndefine([\"underscore\", \"Magento_PageBuilder/js/utils/string\"], function (_underscore, _string) {\n  /**\n   * Copyright \u00a9 Magento, Inc. All rights reserved.\n   * See COPYING.txt for license details.\n   */\n  var styleRegistries = {};\n  var pbStyleAttribute = \"data-pb-style\";\n  var styleDataAttribute = \"data-style-id\";\n\n  var StyleRegistry = /*#__PURE__*/function () {\n    \"use strict\";\n\n    function StyleRegistry(identifier) {\n      this.styles = {};\n\n      if (identifier) {\n        styleRegistries[identifier] = this;\n      }\n    }\n    /**\n     * Update styles for selector\n     *\n     * @param selector\n     * @param styles\n     */\n\n\n    var _proto = StyleRegistry.prototype;\n\n    _proto.setStyles = function setStyles(selector, styles) {\n      this.styles[selector] = styles;\n    }\n    /**\n     * Retrieve styles for a selector\n     *\n     * @param selector\n     */\n    ;\n\n    _proto.getStyles = function getStyles(selector) {\n      if (this.styles[selector]) {\n        return this.styles[selector];\n      }\n\n      return {};\n    }\n    /**\n     * Retrieve all styles\n     */\n    ;\n\n    _proto.getAllStyles = function getAllStyles() {\n      return this.styles;\n    };\n\n    return StyleRegistry;\n  }();\n  /**\n   * Return the style registry\n   *\n   * @param id\n   */\n\n\n  function getStyleRegistry(id) {\n    return styleRegistries[id] !== undefined ? styleRegistries[id] : null;\n  }\n  /**\n   * Delete the style registry\n   *\n   * @param id\n   */\n\n\n  function deleteStyleRegistry(id) {\n    if (styleRegistries[id]) {\n      delete styleRegistries[id];\n    }\n  }\n  /**\n   * Generate CSS from styles\n   *\n   * @param styles\n   */\n\n\n  function generateCss(styles) {\n    var generatedCss = \"\";\n    Object.keys(styles).forEach(function (selector) {\n      if (!_underscore.isEmpty(styles[selector])) {\n        generatedCss += generateCssBlock(selector, styles[selector]);\n      }\n    });\n    return generatedCss;\n  }\n  /**\n   * Generate styles from an object\n   *\n   * @param selector\n   * @param styles\n   */\n\n\n  function generateCssBlock(selector, styles) {\n    var generatedStyles = \"\";\n    Object.keys(styles).forEach(function (key) {\n      if (!_underscore.isEmpty(styles[key])) {\n        generatedStyles += (0, _string.fromCamelCaseToDash)(key) + \": \" + styles[key] + \"; \";\n      }\n    });\n    return selector + \" { \" + generatedStyles + \" }\";\n  }\n\n  return Object.assign(StyleRegistry, {\n    getStyleRegistry: getStyleRegistry,\n    deleteStyleRegistry: deleteStyleRegistry,\n    generateCss: generateCss,\n    generateCssBlock: generateCssBlock,\n    pbStyleAttribute: pbStyleAttribute,\n    styleDataAttribute: styleDataAttribute\n  });\n});\n//# sourceMappingURL=style-registry.js.map","Magento_PageBuilder/js/content-type/preview-converter-resolver.js":"/*eslint-disable */\n/* jscs:disable */\ndefine([], function () {\n  /**\n   * Copyright \u00a9 Magento, Inc. All rights reserved.\n   * See COPYING.txt for license details.\n   */\n\n  /**\n   * Resolve converter\n   *\n   * @param {DataMappingStyleInterface} config\n   * @return string\n   */\n  function resolve(config) {\n    return config.preview_converter ? config.preview_converter : config.converter;\n  }\n\n  return resolve;\n});\n//# sourceMappingURL=preview-converter-resolver.js.map","Magento_PageBuilder/js/content-type/preview-styles.js":"/*eslint-disable */\n/* jscs:disable */\ndefine([\"knockout\", \"Magento_PageBuilder/js/events\", \"Magento_PageBuilder/js/content-type/style-registry\"], function (_knockout, _events, _styleRegistry) {\n  /**\n   * Copyright \u00a9 Magento, Inc. All rights reserved.\n   * See COPYING.txt for license details.\n   */\n  var PreviewStyles =\n  /*#__PURE__*/\n  function () {\n    \"use strict\";\n\n    function PreviewStyles(stageId) {\n      var _this = this;\n\n      this.styleBlocks = _knockout.observableArray([]);\n      this.template = \"Magento_PageBuilder/content-type/preview-styles\";\n      this.stageId = stageId;\n\n      _events.on(\"styles:update\", function (args) {\n        if (args.stageId === _this.stageId) {\n          var css = (0, _styleRegistry.generateCssBlock)(args.className, args.styles); // Remove any existing style blocks for the current class name\n\n          var existingBlock = _this.styleBlocks().find(function (block) {\n            return block.className === args.className;\n          });\n\n          if (existingBlock) {\n            // Don't do an update if the CSS matches\n            if (existingBlock.css === css) {\n              return;\n            }\n\n            _this.styleBlocks.splice(_this.styleBlocks().indexOf(existingBlock), 1);\n          }\n\n          _this.styleBlocks.push({\n            className: args.className,\n            css: css\n          });\n        }\n      });\n    }\n    /**\n     * Get template.\n     *\n     * @returns {string}\n     */\n\n\n    var _proto = PreviewStyles.prototype;\n\n    _proto.getTemplate = function getTemplate() {\n      return this.template;\n    };\n\n    return PreviewStyles;\n  }();\n\n  return PreviewStyles;\n});\n//# sourceMappingURL=preview-styles.js.map","Magento_PageBuilder/js/content-type/master.js":"/*eslint-disable */\n/* jscs:disable */\n\nfunction _defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if (\"value\" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } }\n\nfunction _createClass(Constructor, protoProps, staticProps) { if (protoProps) _defineProperties(Constructor.prototype, protoProps); if (staticProps) _defineProperties(Constructor, staticProps); return Constructor; }\n\ndefine([\"underscore\", \"Magento_PageBuilder/js/utils/object\", \"Magento_PageBuilder/js/content-type/appearance-config\"], function (_underscore, _object, _appearanceConfig) {\n  /**\n   * Copyright \u00a9 Magento, Inc. All rights reserved.\n   * See COPYING.txt for license details.\n   */\n\n  /**\n   * @api\n   */\n  var Master = /*#__PURE__*/function () {\n    \"use strict\";\n\n    /**\n     * @param {ContentTypeInterface} contentType\n     * @param {ObservableUpdater} observableUpdater\n     */\n    function Master(contentType, observableUpdater) {\n      this.data = {};\n      this.contentType = contentType;\n      this.observableUpdater = observableUpdater;\n      this.bindEvents();\n    }\n    /**\n     * Retrieve the render template\n     *\n     * @returns {string}\n     */\n\n\n    var _proto = Master.prototype;\n\n    /**\n     * Get content type data\n     *\n     * @param {string} element\n     * @returns {DataObject}\n     * @deprecated\n     */\n    _proto.getData = function getData(element) {\n      var data = _underscore.extend({}, this.contentType.dataStore.getState());\n\n      if (undefined === element) {\n        return data;\n      }\n\n      var appearanceConfiguration = (0, _appearanceConfig)(this.contentType.config.name, data.appearance);\n      var config = appearanceConfiguration.elements;\n      data = this.observableUpdater.convertData(data, appearanceConfiguration.converters);\n      var result = {};\n\n      if (undefined !== config[element].tag.var) {\n        result[config[element].tag.var] = (0, _object.get)(data, config[element].tag.var);\n      }\n\n      return result;\n    }\n    /**\n     * Destroys current instance\n     */\n    ;\n\n    _proto.destroy = function destroy() {\n      return;\n    }\n    /**\n     * Attach event to updating data in data store to update observables\n     */\n    ;\n\n    _proto.bindEvents = function bindEvents() {\n      var _this = this;\n\n      this.contentType.dataStore.subscribe(function () {\n        _this.updateObservables();\n      });\n    }\n    /**\n     * After observables updated, allows to modify observables\n     */\n    ;\n\n    _proto.afterObservablesUpdated = function afterObservablesUpdated() {\n      return;\n    }\n    /**\n     * Update observables\n     *\n     * @deprecated\n     */\n    ;\n\n    _proto.updateObservables = function updateObservables() {\n      this.observableUpdater.update(this, _underscore.extend({\n        name: this.contentType.config.name\n      }, this.contentType.dataStore.getState()), this.contentType.getDataStoresStates());\n      this.afterObservablesUpdated();\n    };\n\n    _createClass(Master, [{\n      key: \"template\",\n      get: function get() {\n        return (0, _appearanceConfig)(this.contentType.config.name, this.getData().appearance).master_template;\n      }\n    }]);\n\n    return Master;\n  }();\n\n  return Master;\n});\n//# sourceMappingURL=master.js.map","Magento_PageBuilder/js/content-type/preview-factory.js":"/*eslint-disable */\n/* jscs:disable */\ndefine([\"Magento_PageBuilder/js/utils/loader\", \"Magento_PageBuilder/js/content-type/observable-updater-factory\", \"Magento_PageBuilder/js/content-type/preview-converter-resolver\"], function (_loader, _observableUpdaterFactory, _previewConverterResolver) {\n  /**\n   * Copyright \u00a9 Magento, Inc. All rights reserved.\n   * See COPYING.txt for license details.\n   */\n\n  /**\n   * Create new preview instance\n   *\n   * @param {ContentTypeInterface | ContentTypeCollectionInterface} contentType\n   * @param {ContentTypeConfigInterface} config\n   * @returns {Promise<Preview | PreviewCollection>}\n   */\n  function create(contentType, config) {\n    return new Promise(function (resolve, reject) {\n      (0, _observableUpdaterFactory)(config, _previewConverterResolver).then(function (observableUpdater) {\n        (0, _loader)([config.preview_component], function (previewComponent) {\n          try {\n            var preview = new previewComponent(contentType, config, observableUpdater);\n            resolve(preview);\n          } catch (error) {\n            reject(\"Error within preview component (\" + config.preview_component + \") for \" + config.name + \".\");\n            console.error(error);\n          }\n        }, function (error) {\n          reject(\"Unable to load preview component (\" + config.preview_component + \") for \" + config.name + \". Please \" + \"check preview component exists and content type configuration is correct.\");\n          console.error(error);\n        });\n      }).catch(function (error) {\n        console.error(error);\n        return null;\n      });\n    });\n  }\n\n  return create;\n});\n//# sourceMappingURL=preview-factory.js.map","Magento_PageBuilder/js/content-type/observable-updater-factory.js":"/*eslint-disable */\n/* jscs:disable */\ndefine([\"Magento_PageBuilder/js/converter/converter-pool-factory\", \"Magento_PageBuilder/js/mass-converter/converter-pool-factory\", \"Magento_PageBuilder/js/content-type/observable-updater\"], function (_converterPoolFactory, _converterPoolFactory2, _observableUpdater) {\n  /**\n   * Copyright \u00a9 Magento, Inc. All rights reserved.\n   * See COPYING.txt for license details.\n   */\n\n  /**\n   * Create new observable updater instance\n   *\n   * @param {ContentTypeConfigInterface} config\n   * @param {Function} converterResolver\n   * @returns {Promise<ObservableUpdater>}\n   */\n  function create(config, converterResolver) {\n    var promises = [(0, _converterPoolFactory)(config.name), (0, _converterPoolFactory2)(config.name)];\n    return new Promise(function (resolve) {\n      Promise.all(promises).then(function (resolvedPromises) {\n        var converterPool = resolvedPromises[0],\n            massConverterPool = resolvedPromises[1];\n        resolve(new _observableUpdater(converterPool, massConverterPool, converterResolver));\n      }).catch(function (error) {\n        console.error(error);\n        return null;\n      });\n    });\n  }\n\n  return create;\n});\n//# sourceMappingURL=observable-updater-factory.js.map","Magento_PageBuilder/js/content-type/converter-resolver.js":"/*eslint-disable */\n/* jscs:disable */\ndefine([], function () {\n  /**\n   * Copyright \u00a9 Magento, Inc. All rights reserved.\n   * See COPYING.txt for license details.\n   */\n\n  /**\n   * Resolve converter\n   *\n   * @param {DataMappingInterface} config\n   * @return string\n   */\n  function resolve(config) {\n    return config.converter;\n  }\n\n  return resolve;\n});\n//# sourceMappingURL=converter-resolver.js.map","Magento_PageBuilder/js/content-type/preview.js":"/*eslint-disable */\n/* jscs:disable */\n\nfunction _defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if (\"value\" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } }\n\nfunction _createClass(Constructor, protoProps, staticProps) { if (protoProps) _defineProperties(Constructor.prototype, protoProps); if (staticProps) _defineProperties(Constructor, staticProps); return Constructor; }\n\ndefine([\"jquery\", \"knockout\", \"mage/translate\", \"Magento_PageBuilder/js/events\", \"Magento_PageBuilder/js/modal/dismissible-confirm\", \"underscore\", \"Magento_PageBuilder/js/binding/live-edit\", \"Magento_PageBuilder/js/binding/sortable\", \"Magento_PageBuilder/js/binding/sortable-children\", \"Magento_PageBuilder/js/config\", \"Magento_PageBuilder/js/content-type-collection\", \"Magento_PageBuilder/js/content-type-factory\", \"Magento_PageBuilder/js/content-type-menu\", \"Magento_PageBuilder/js/content-type-menu/edit\", \"Magento_PageBuilder/js/content-type-menu/option\", \"Magento_PageBuilder/js/content-type-menu/title-option\", \"Magento_PageBuilder/js/drag-drop/registry\", \"Magento_PageBuilder/js/drag-drop/sortable\", \"Magento_PageBuilder/js/utils/check-stage-full-screen\", \"Magento_PageBuilder/js/utils/object\", \"Magento_PageBuilder/js/content-type/appearance-config\"], function (_jquery, _knockout, _translate, _events, _dismissibleConfirm, _underscore, _liveEdit, _sortable, _sortableChildren, _config, _contentTypeCollection, _contentTypeFactory, _contentTypeMenu, _edit, _option, _titleOption, _registry, _sortable2, _checkStageFullScreen, _object, _appearanceConfig) {\n  /**\n   * Copyright \u00a9 Magento, Inc. All rights reserved.\n   * See COPYING.txt for license details.\n   */\n\n  /**\n   * @api\n   */\n  var Preview = /*#__PURE__*/function () {\n    \"use strict\";\n\n    /**\n     * Provide preview data as an object which can be queried\n     *\n     * @deprecated please use getOptionValue directly\n     */\n\n    /**\n     * Fields that should not be considered when evaluating whether an object has been configured.\n     *\n     * @see {Preview.isConfigured}\n     * @type {[string]}\n     */\n\n    /**\n     * @param {ContentTypeInterface} contentType\n     * @param {ContentTypeConfigInterface} config\n     * @param {ObservableUpdater} observableUpdater\n     */\n    function Preview(contentType, config, observableUpdater) {\n      this.data = {};\n      this.displayLabel = _knockout.observable();\n      this.display = _knockout.observable(true);\n      this.appearance = _knockout.observable();\n      this.isPlaceholderVisible = _knockout.observable(true);\n      this.isEmpty = _knockout.observable(true);\n      this.viewport = _knockout.observable(\"\");\n      this.previewData = {};\n      this.fieldsToIgnoreOnRemove = [];\n      this.events = {};\n      this.isSnapshot = _knockout.observable(false);\n      this.mouseover = false;\n      this.contentType = contentType;\n      this.config = config;\n      this.edit = new _edit(this.contentType, this.contentType.dataStore);\n      this.optionsMenu = new _contentTypeMenu(this, this.retrieveOptions());\n      this.observableUpdater = observableUpdater;\n      this.displayLabel(this.config.label);\n      this.placeholderCss = _knockout.observable({\n        \"visible\": this.isEmpty,\n        \"empty-placeholder-background\": this.isPlaceholderVisible\n      });\n\n      if (_config.getConfig(\"pagebuilder_content_snapshot\")) {\n        this.isSnapshot(!(0, _checkStageFullScreen)(this.contentType.stageId));\n      }\n\n      this.viewport(_config.getConfig(\"viewport\"));\n      this.bindEvents();\n      this.populatePreviewData();\n    }\n    /**\n     * Retrieve the preview template\n     *\n     * @returns {string}\n     */\n\n\n    var _proto = Preview.prototype;\n\n    /**\n     * Calls methods by event name.\n     *\n     * @param {string}  eventName\n     * @param {any} params\n     */\n    _proto.trigger = function trigger(eventName, params) {\n      var _this = this;\n\n      if (this.events[eventName]) {\n        var methods = this.events[eventName];\n\n        _underscore.each(methods.split(\" \"), function (methodName) {\n          var method = _this[methodName];\n\n          if (method) {\n            method.call(_this, params);\n          }\n        }, this);\n      }\n    }\n    /**\n     * Tries to call specified method of a current content type.\n     *\n     * @param args\n     */\n    ;\n\n    _proto.delegate = function delegate() {\n      for (var _len = arguments.length, args = new Array(_len), _key = 0; _key < _len; _key++) {\n        args[_key] = arguments[_key];\n      }\n\n      var methodName = args.slice(0, 1)[0];\n      var method = this[methodName];\n\n      if (method) {\n        method.apply(this, args.slice(1, args.length));\n      }\n    }\n    /**\n     * Open the edit form for this content type\n     */\n    ;\n\n    _proto.openEdit = function openEdit() {\n      return this.edit.open();\n    }\n    /**\n     * Update data store\n     *\n     * @param {string} key\n     * @param {string} value\n     */\n    ;\n\n    _proto.updateData = function updateData(key, value) {\n      this.contentType.dataStore.set(key, value);\n    }\n    /**\n     * Retrieve the value for an option\n     *\n     * @param key\n     */\n    ;\n\n    _proto.getOptionValue = function getOptionValue(key) {\n      return this.contentType.dataStore.get(key);\n    }\n    /**\n     * Set state based on mouseover event for the preview\n     *\n     * @param {Preview} context\n     * @param {Event} event\n     */\n    ;\n\n    _proto.onMouseOver = function onMouseOver(context, event) {\n      if (this.mouseover || (0, _registry.getDraggedContentTypeConfig)()) {\n        return;\n      } // Ensure no other options panel is displayed\n\n\n      (0, _jquery)(\".pagebuilder-options-visible\").removeClass(\"pagebuilder-options-visible\");\n      this.mouseover = true;\n      this.mouseoverContext = context;\n      var currentTarget = event.currentTarget;\n      var optionsMenu = (0, _jquery)(currentTarget).find(\".pagebuilder-options-wrapper\");\n\n      if (!(0, _jquery)(currentTarget).hasClass(\"type-nested\")) {\n        optionsMenu = optionsMenu.first();\n      }\n\n      var middleOfPreview = currentTarget.getBoundingClientRect().left + currentTarget.offsetWidth / 2; // Check for space for option menu\n\n      if (window.innerWidth - middleOfPreview > optionsMenu.width() / 2) {\n        optionsMenu.parent().addClass(\"pagebuilder-options-middle\");\n      } else {\n        optionsMenu.parent().removeClass(\"pagebuilder-options-middle\");\n      }\n\n      optionsMenu.parent().addClass(\"pagebuilder-options-visible\");\n      (0, _jquery)(currentTarget).addClass(\"pagebuilder-content-type-active\");\n    }\n    /**\n     * Set state based on mouseout event for the preview\n     *\n     * @param {Preview} context\n     * @param {Event} event\n     */\n    ;\n\n    _proto.onMouseOut = function onMouseOut(context, event) {\n      var _this2 = this;\n\n      this.mouseover = false;\n\n      if ((0, _registry.getDraggedContentTypeConfig)()) {\n        return;\n      }\n\n      _underscore.delay(function () {\n        if (!_this2.mouseover && _this2.mouseoverContext === context) {\n          var currentTarget = event.currentTarget;\n          var optionsMenu = (0, _jquery)(currentTarget).find(\".pagebuilder-options-wrapper\");\n\n          if (!(0, _jquery)(currentTarget).hasClass(\"type-nested\")) {\n            optionsMenu = optionsMenu.first();\n          }\n\n          optionsMenu.parent().removeClass(\"pagebuilder-options-visible\");\n          (0, _jquery)(currentTarget).removeClass(\"pagebuilder-content-type-active\");\n        }\n      }, 100); // 100 ms delay to allow for users hovering over other elements\n\n    }\n    /**\n     * After children render fire an event\n     *\n     * @param {Element} element\n     * @deprecated\n     */\n    ;\n\n    _proto.afterChildrenRender = function afterChildrenRender(element) {\n      _events.trigger(\"contentType:childrenRenderAfter\", {\n        id: this.contentType.id,\n        contentType: this.contentType,\n        element: element\n      });\n\n      _events.trigger(this.contentType.config.name + \":childrenRenderAfter\", {\n        contentType: this.contentType,\n        element: element,\n        id: this.contentType.id\n      });\n    }\n    /**\n     * Dispatch an after render event for individual content types\n     *\n     * @param {Element[]} elements\n     */\n    ;\n\n    _proto.dispatchAfterRenderEvent = function dispatchAfterRenderEvent(elements) {\n      var elementNodes = elements.filter(function (renderedElement) {\n        return renderedElement.nodeType === Node.ELEMENT_NODE;\n      });\n\n      if (elementNodes.length > 0) {\n        var element = elementNodes[0];\n        this.wrapperElement = element;\n\n        _events.trigger(\"contentType:renderAfter\", {\n          id: this.contentType.id,\n          contentType: this.contentType,\n          element: element\n        });\n\n        _events.trigger(this.contentType.config.name + \":renderAfter\", {\n          contentType: this.contentType,\n          element: element,\n          id: this.contentType.id\n        });\n\n        this.disableImageUploadOnHide(element);\n      }\n    }\n    /**\n     * Get the options instance\n     *\n     * @returns {ContentTypeMenu}\n     */\n    ;\n\n    _proto.getOptions = function getOptions() {\n      return this.optionsMenu;\n    }\n    /**\n     * Handle user editing an instance\n     */\n    ;\n\n    _proto.onOptionEdit = function onOptionEdit() {\n      this.openEdit();\n    }\n    /**\n     * Reverse the display data currently in the data store\n     */\n    ;\n\n    _proto.onOptionVisibilityToggle = function onOptionVisibilityToggle() {\n      var display = this.contentType.dataStore.get(\"display\");\n      this.contentType.dataStore.set(\"display\", !display);\n      this.dispatchContentTypeVisibilityEvents(this.contentType, !display);\n    }\n    /**\n     * Handle duplicate of items\n     */\n    ;\n\n    _proto.onOptionDuplicate = function onOptionDuplicate() {\n      this.clone(this.contentType, true, true);\n    }\n    /**\n     * Duplicate content type\n     *\n     * @param {ContentTypeInterface | ContentTypeCollectionInterface} contentType\n     * @param {boolean} autoAppend\n     * @param {boolean} direct\n     * @returns {Promise<ContentTypeInterface> | void}\n     */\n    ;\n\n    _proto.clone = function clone(contentType, autoAppend, direct) {\n      var _this3 = this;\n\n      if (autoAppend === void 0) {\n        autoAppend = true;\n      }\n\n      if (direct === void 0) {\n        direct = false;\n      }\n\n      var defaultViewport = _config.getConfig(\"defaultViewport\");\n\n      var contentTypeData = contentType.dataStores[defaultViewport].getState();\n      var index = contentType.parentContentType.getChildren()().indexOf(contentType) + 1 || null;\n      return (0, _contentTypeFactory)(contentType.config, contentType.parentContentType, contentType.stageId, contentTypeData, 0, contentType.getDataStoresStates()).then(function (duplicateContentType) {\n        if (autoAppend) {\n          contentType.parentContentType.addChild(duplicateContentType, index);\n        }\n\n        _this3.dispatchContentTypeCloneEvents(contentType, duplicateContentType, index, direct);\n\n        return duplicateContentType;\n      });\n    }\n    /**\n     * Handle content type removal\n     */\n    ;\n\n    _proto.onOptionRemove = function onOptionRemove() {\n      var _this4 = this;\n\n      var removeContentType = function removeContentType() {\n        if (_this4.wrapperElement) {\n          // Fade out the content type\n          (0, _jquery)(_this4.wrapperElement).fadeOut(350 / 2, function () {\n            _this4.contentType.destroy();\n          });\n        } else {\n          _this4.contentType.destroy();\n        }\n      };\n\n      if (this.isConfigured()) {\n        (0, _dismissibleConfirm)({\n          actions: {\n            confirm: function confirm() {\n              // Call the parent to remove the child element\n              removeContentType();\n            }\n          },\n          content: (0, _translate)(\"Are you sure you want to remove this item? The data within this item is not recoverable once removed.\"),\n          // tslint:disable-line:max-line-length\n          dismissKey: \"pagebuilder_modal_dismissed\",\n          dismissible: true,\n          title: (0, _translate)(\"Confirm Item Removal\")\n        });\n      } else {\n        removeContentType();\n      }\n    }\n    /**\n     * Determine if the container can receive drop events? With the current matrix system everything can unless\n     * specified in an inherited preview instance.\n     *\n     * @returns {boolean}\n     */\n    ;\n\n    _proto.isContainer = function isContainer() {\n      return true;\n    }\n    /**\n     * Return the sortable options\n     *\n     * @returns {JQueryUI.SortableOptions}\n     */\n    ;\n\n    _proto.getSortableOptions = function getSortableOptions() {\n      return (0, _sortable2.getSortableOptions)(this);\n    }\n    /**\n     * Destroys current instance\n     */\n    ;\n\n    _proto.destroy = function destroy() {\n      return;\n    }\n    /**\n     * Get the CSS classes for the children element, as we dynamically create this class name it can't sit in the DOM\n     * without causing browser issues\n     *\n     * @returns {{[p: string]: boolean}}\n     */\n    ;\n\n    _proto.getChildrenCss = function getChildrenCss() {\n      var _ref;\n\n      return _ref = {}, _ref[this.config.name + \"-container\"] = true, _ref;\n    }\n    /**\n     * Return an array of options\n     *\n     * @returns {OptionsInterface}\n     */\n    ;\n\n    _proto.retrieveOptions = function retrieveOptions() {\n      var options = {\n        move: new _option({\n          preview: this,\n          icon: \"<i class='icon-admin-pagebuilder-handle'></i>\",\n          title: (0, _translate)(\"Move\"),\n          classes: [\"move-structural\"],\n          sort: 10\n        }),\n        title: new _titleOption({\n          preview: this,\n          title: this.config.label,\n          template: \"Magento_PageBuilder/content-type/title\",\n          sort: 20\n        }),\n        edit: new _option({\n          preview: this,\n          icon: \"<i class='icon-admin-pagebuilder-systems'></i>\",\n          title: (0, _translate)(\"Edit\"),\n          action: this.onOptionEdit,\n          classes: [\"edit-content-type\"],\n          sort: 30\n        }),\n        duplicate: new _option({\n          preview: this,\n          icon: \"<i class='icon-pagebuilder-copy'></i>\",\n          title: (0, _translate)(\"Duplicate\"),\n          action: this.onOptionDuplicate,\n          classes: [\"duplicate-structural\"],\n          sort: 50\n        }),\n        remove: new _option({\n          preview: this,\n          icon: \"<i class='icon-admin-pagebuilder-remove'></i>\",\n          title: (0, _translate)(\"Remove\"),\n          action: this.onOptionRemove,\n          classes: [\"remove-structural\"],\n          sort: 60\n        })\n      };\n      return options;\n    }\n    /**\n     * Dispatch content type clone events\n     *\n     * @param {ContentTypeInterface | ContentTypeCollectionInterface} originalContentType\n     * @param {ContentTypeInterface | ContentTypeCollectionInterface} duplicateContentType\n     * @param {number} index\n     * @param {boolean} direct\n     */\n    ;\n\n    _proto.dispatchContentTypeCloneEvents = function dispatchContentTypeCloneEvents(originalContentType, duplicateContentType, index, direct) {\n      var duplicateEventParams = {\n        originalContentType: originalContentType,\n        duplicateContentType: duplicateContentType,\n        index: index,\n        direct: direct\n      };\n\n      _events.trigger(\"contentType:duplicateAfter\", duplicateEventParams);\n\n      _events.trigger(originalContentType.config.name + \":duplicateAfter\", duplicateEventParams);\n    }\n    /**\n     * Dispatch content type visibility events\n     *\n     * @param {ContentTypeInterface | ContentTypeCollectionInterface} contentType\n     * @param {boolean} visibility\n     */\n    ;\n\n    _proto.dispatchContentTypeVisibilityEvents = function dispatchContentTypeVisibilityEvents(contentType, visibility) {\n      var visibilityEventParams = {\n        contentType: contentType,\n        visibility: visibility\n      };\n\n      _events.trigger(\"contentType:visibilityAfter\", visibilityEventParams);\n\n      _events.trigger(contentType.config.name + \":visibilityAfter\", visibilityEventParams);\n    }\n    /**\n     * Bind events\n     */\n    ;\n\n    _proto.bindEvents = function bindEvents() {\n      var _this5 = this;\n\n      var fullScreenModeChangeAfterEvent = \"stage:\" + this.contentType.stageId + \":fullScreenModeChangeAfter\";\n      this.contentType.dataStore.subscribe(function (data) {\n        _this5.updateObservables();\n\n        _this5.updatePlaceholderVisibility(data); // Keep a reference to the display state in an observable for adding classes to the wrapper\n\n\n        _this5.display(!!data.display);\n\n        _this5.appearance(data.appearance);\n      });\n\n      if (this.contentType instanceof _contentTypeCollection) {\n        this.contentType.children.subscribe(function (children) {\n          _this5.isEmpty(!children.length);\n        });\n      }\n\n      _events.on(fullScreenModeChangeAfterEvent, this.toggleSnapshot.bind(this));\n\n      _events.on(\"stage:\" + this.contentType.stageId + \":viewportChangeAfter\", function (args) {\n        _this5.viewport(args.viewport);\n      });\n    }\n    /**\n     * After observables updated, allows to modify observables\n     */\n    ;\n\n    _proto.afterObservablesUpdated = function afterObservablesUpdated() {\n      return;\n    }\n    /**\n     * Does the current instance have any children or values different from the default for it's type?\n     *\n     * @returns {boolean}\n     */\n    ;\n\n    _proto.isConfigured = function isConfigured() {\n      var _this6 = this;\n\n      var data = this.contentType.dataStore.getState();\n      var fields = this.contentType.config.fields[this.appearance() + \"-appearance\"] || this.contentType.config.fields.default;\n      var hasDataChanges = false;\n\n      _underscore.each(fields, function (field, key) {\n        if (_this6.fieldsToIgnoreOnRemove && _this6.fieldsToIgnoreOnRemove.includes(key)) {\n          return;\n        }\n\n        var fieldValue = (0, _object.get)(data, key);\n\n        if (!fieldValue) {\n          fieldValue = \"\";\n        } // Default values can only ever be strings\n\n\n        if (_underscore.isObject(fieldValue)) {\n          // Empty arrays as default values appear as empty strings\n          if (_underscore.isArray(fieldValue) && fieldValue.length === 0) {\n            fieldValue = \"\";\n          } else {\n            fieldValue = JSON.stringify(fieldValue);\n          }\n        }\n\n        if (_underscore.isObject(field.default)) {\n          if (JSON.stringify(field.default) !== fieldValue) {\n            hasDataChanges = true;\n          }\n        } else if (field.default !== fieldValue) {\n          hasDataChanges = true;\n        }\n\n        return;\n      });\n\n      return hasDataChanges;\n    }\n    /**\n     * Any hidden element should block drag / drop events from uploading images from the OS. We have to block this for\n     * all elements as underlying elements could still receive the events if a parent is hidden.\n     *\n     * @param {Element} element\n     */\n    ;\n\n    _proto.disableImageUploadOnHide = function disableImageUploadOnHide(element) {\n      var _this7 = this;\n\n      (0, _jquery)(element).on(\"drag dragstart dragend dragover dragenter dragleave drop\", function (event) {\n        if (_this7.display() === false) {\n          event.preventDefault();\n          event.stopPropagation();\n        }\n      });\n    }\n    /**\n     * Update observables\n     */\n    ;\n\n    _proto.updateObservables = function updateObservables() {\n      this.observableUpdater.update(this, _underscore.extend({}, this.contentType.dataStore.getState()));\n      this.afterObservablesUpdated();\n    }\n    /**\n     * Update placeholder background visibility base on height and padding\n     *\n     * @param {DataObject} data\n     */\n    ;\n\n    _proto.updatePlaceholderVisibility = function updatePlaceholderVisibility(data) {\n      var minHeight = !_underscore.isEmpty(data.min_height) ? parseFloat(data.min_height) : 130;\n      var marginsAndPadding = _underscore.isString(data.margins_and_padding) && data.margins_and_padding ? JSON.parse(data.margins_and_padding) : data.margins_and_padding || {};\n      var padding = marginsAndPadding.padding || {};\n      var paddingBottom = parseFloat(padding.bottom) || 0;\n      var paddingTop = parseFloat(padding.top) || 0;\n      this.isPlaceholderVisible(paddingBottom + paddingTop + minHeight >= 130);\n    }\n    /**\n     * Populate the preview data with calls to the supported getOptionValue method\n     *\n     * @deprecated this function is only included to preserve backwards compatibility, use getOptionValue directly\n     */\n    ;\n\n    _proto.populatePreviewData = function populatePreviewData() {\n      var _this8 = this;\n\n      if (this.config.fields) {\n        _underscore.each(this.config.fields, function (fields) {\n          _underscore.keys(fields).forEach(function (key) {\n            _this8.previewData[key] = _knockout.observable(\"\");\n          });\n        });\n      } // Subscribe to this content types data in the store\n\n\n      this.contentType.dataStore.subscribe(function (data) {\n        _underscore.forEach(data, function (value, key) {\n          var optionValue = _this8.getOptionValue(key);\n\n          if (_knockout.isObservable(_this8.previewData[key])) {\n            _this8.previewData[key](optionValue);\n          } else {\n            if (_underscore.isArray(optionValue)) {\n              _this8.previewData[key] = _knockout.observableArray(optionValue);\n            } else {\n              _this8.previewData[key] = _knockout.observable(optionValue);\n            }\n          }\n        });\n      });\n    }\n    /**\n     * Enable snapshot mode.\n     * @param args\n     */\n    ;\n\n    _proto.toggleSnapshot = function toggleSnapshot(args) {\n      if (_config.getConfig(\"pagebuilder_content_snapshot\")) {\n        this.isSnapshot(!args.fullScreen);\n      }\n    };\n\n    _createClass(Preview, [{\n      key: \"template\",\n      get: function get() {\n        return (0, _appearanceConfig)(this.config.name, this.appearance()).preview_template;\n      }\n    }]);\n\n    return Preview;\n  }();\n\n  return Preview;\n});\n//# sourceMappingURL=preview.js.map","Magento_PageBuilder/js/content-type/observable-updater.js":"/*eslint-disable */\n/* jscs:disable */\n\nfunction _createForOfIteratorHelperLoose(o, allowArrayLike) { var it = typeof Symbol !== \"undefined\" && o[Symbol.iterator] || o[\"@@iterator\"]; if (it) return (it = it.call(o)).next.bind(it); if (Array.isArray(o) || (it = _unsupportedIterableToArray(o)) || allowArrayLike && o && typeof o.length === \"number\") { if (it) o = it; var i = 0; return function () { if (i >= o.length) return { done: true }; return { done: false, value: o[i++] }; }; } throw new TypeError(\"Invalid attempt to iterate non-iterable instance.\\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.\"); }\n\nfunction _unsupportedIterableToArray(o, minLen) { if (!o) return; if (typeof o === \"string\") return _arrayLikeToArray(o, minLen); var n = Object.prototype.toString.call(o).slice(8, -1); if (n === \"Object\" && o.constructor) n = o.constructor.name; if (n === \"Map\" || n === \"Set\") return Array.from(o); if (n === \"Arguments\" || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)) return _arrayLikeToArray(o, minLen); }\n\nfunction _arrayLikeToArray(arr, len) { if (len == null || len > arr.length) len = arr.length; for (var i = 0, arr2 = new Array(len); i < len; i++) { arr2[i] = arr[i]; } return arr2; }\n\ndefine([\"consoleLogger\", \"knockout\", \"underscore\", \"Magento_PageBuilder/js/config\", \"Magento_PageBuilder/js/content-type/appearance-config\", \"Magento_PageBuilder/js/content-type/observable-updater/attributes\", \"Magento_PageBuilder/js/content-type/observable-updater/css\", \"Magento_PageBuilder/js/content-type/observable-updater/html\", \"Magento_PageBuilder/js/content-type/observable-updater/style\"], function (_consoleLogger, _knockout, _underscore, _config, _appearanceConfig, _attributes, _css, _html, _style) {\n  /**\n   * Copyright \u00a9 Magento, Inc. All rights reserved.\n   * See COPYING.txt for license details.\n   */\n  var ObservableUpdater = /*#__PURE__*/function () {\n    \"use strict\";\n\n    /**\n     * @param {typeof ConverterPool} converterPool\n     * @param {typeof MassConverterPool} massConverterPool\n     * @param {(config: object) => string} converterResolver\n     */\n    function ObservableUpdater(converterPool, massConverterPool, converterResolver) {\n      this.previousData = {};\n      this.bindingGenerators = {\n        attributes: _attributes,\n        css: _css,\n        html: _html,\n        style: _style\n      };\n      this.converterPool = converterPool;\n      this.massConverterPool = massConverterPool;\n      this.converterResolver = converterResolver;\n    }\n    /**\n     * Update the associated viewModel with the generated data\n     *\n     * We create an API for each potential binding and make it available in the master and preview templates through\n     * the data variable. Each data variable will have associated observables that are updated on a data change.\n     *\n     * @param {Preview} viewModel\n     * @param {DataObject} data\n     * @param {DataObject} dataStores\n     */\n\n\n    var _proto = ObservableUpdater.prototype;\n\n    _proto.update = function update(viewModel, data, dataStores) {\n      var appearance = data && data.appearance !== undefined ? data.appearance : undefined;\n      var appearanceConfiguration = (0, _appearanceConfig)(viewModel.contentType.config.name, appearance);\n\n      if (undefined === appearanceConfiguration || undefined === appearanceConfiguration.elements) {\n        return;\n      } // Generate Knockout bindings in objects for usage in preview and master templates\n\n\n      var generatedBindings = this.generateKnockoutBindings(appearanceConfiguration.elements, appearanceConfiguration.converters, data, dataStores);\n\n      var _loop = function _loop(element) {\n        if (generatedBindings.hasOwnProperty(element)) {\n          // Ensure every element is represented by an object\n          if (viewModel.data[element] === undefined) {\n            viewModel.data[element] = {};\n          }\n          /**\n           * Iterate through each elements data (css, style, attributes) and apply data updates within the\n           * observable. If no observable already exists create a new one.\n           */\n\n\n          Object.keys(generatedBindings[element]).forEach(function (key) {\n            var elementBindings = viewModel.data[element][key];\n\n            if (elementBindings !== undefined && _knockout.isObservable(elementBindings)) {\n              elementBindings(generatedBindings[element][key]);\n            } else {\n              viewModel.data[element][key] = _knockout.observable(generatedBindings[element][key]);\n            }\n          });\n        }\n      };\n\n      for (var element in generatedBindings) {\n        _loop(element);\n      }\n    }\n    /**\n     * Generate binding object to be applied to master format\n     *\n     * This function iterates through each element defined in the content types XML and generates a nested object of\n     * the associated Knockout binding data. We support 5 bindings attributes, style, css, html & tag.\n     *\n     * @param elements\n     * @param converters\n     * @param data\n     * @param dataStoreStates\n     */\n    ;\n\n    _proto.generateKnockoutBindings = function generateKnockoutBindings(elements, converters, data, dataStoreStates) {\n      var convertedData = this.convertData(data, converters);\n      var generatedData = {};\n\n      for (var _i = 0, _Object$keys = Object.keys(elements); _i < _Object$keys.length; _i++) {\n        var elementName = _Object$keys[_i];\n        var elementConfig = elements[elementName];\n\n        if (this.previousData[elementName] === undefined) {\n          this.previousData[elementName] = {};\n        }\n\n        generatedData[elementName] = {\n          attributes: this.generateKnockoutBinding(\"attributes\", elementName, elementConfig, data),\n          style: _config.getMode() === \"Preview\" ? this.generateKnockoutBinding(\"style\", elementName, elementConfig, data) : this.generateKnockoutBindingForBreakpoints(\"style\", elementName, elementConfig, data, dataStoreStates),\n          css: elementConfig.css.var in convertedData ? this.generateKnockoutBinding(\"css\", elementName, elementConfig, data) : {},\n          html: this.generateKnockoutBinding(\"html\", elementName, elementConfig, data)\n        };\n\n        if (elementConfig.tag !== undefined && elementConfig.tag.var !== undefined) {\n          if (generatedData[elementName][elementConfig.tag.var] === undefined) {\n            generatedData[elementName][elementConfig.tag.var] = \"\";\n          }\n\n          generatedData[elementName][elementConfig.tag.var] = convertedData[elementConfig.tag.var];\n        }\n      }\n\n      return generatedData;\n    }\n    /**\n     * Process data for elements before its converted to knockout format\n     *\n     * @param {object} data\n     * @param {ConverterInterface[]} convertersConfig\n     * @returns {object}\n     */\n    ;\n\n    _proto.convertData = function convertData(data, convertersConfig) {\n      for (var _iterator = _createForOfIteratorHelperLoose(convertersConfig), _step; !(_step = _iterator()).done;) {\n        var converterConfig = _step.value;\n        this.massConverterPool.get(converterConfig.component).toDom(data, converterConfig.config);\n      }\n\n      return data;\n    }\n    /**\n     * Generate an individual knockout binding\n     *\n     * @param binding\n     * @param elementName\n     * @param config\n     * @param data\n     */\n    ;\n\n    _proto.generateKnockoutBinding = function generateKnockoutBinding(binding, elementName, config, data) {\n      if (config[binding] === undefined) {\n        return {};\n      }\n\n      var previousData = {};\n\n      if (this.previousData[elementName][binding] !== undefined) {\n        previousData = this.previousData[elementName][binding];\n      }\n\n      if (this.bindingGenerators[binding] === undefined) {\n        _consoleLogger.error(\"Unable to find Knockout binding generator for \" + binding);\n\n        return {};\n      } // Generate the associated binding using our dedicated generators\n\n\n      var generatedBindingData = this.bindingGenerators[binding](elementName, config, data, this.converterResolver, this.converterPool, previousData);\n      this.previousData[elementName][binding] = generatedBindingData;\n      return generatedBindingData;\n    }\n    /**\n     * Generate an individual knockout binding for breakpoints\n     *\n     * @param binding\n     * @param elementName\n     * @param config\n     * @param data\n     * @param dataStoreStates\n     */\n    ;\n\n    _proto.generateKnockoutBindingForBreakpoints = function generateKnockoutBindingForBreakpoints(binding, elementName, config, data, dataStoreStates) {\n      var _this = this;\n\n      var result = {};\n      Object.keys(dataStoreStates).forEach(function (name) {\n        result[name] = _underscore.isEmpty(dataStoreStates[name]) ? {} : _this.generateKnockoutBinding(binding, elementName, config, dataStoreStates[name]);\n      });\n      return result;\n    };\n\n    return ObservableUpdater;\n  }();\n\n  return ObservableUpdater;\n});\n//# sourceMappingURL=observable-updater.js.map","Magento_PageBuilder/js/content-type/master-factory.js":"/*eslint-disable */\n/* jscs:disable */\ndefine([\"Magento_PageBuilder/js/utils/loader\", \"Magento_PageBuilder/js/content-type/converter-resolver\", \"Magento_PageBuilder/js/content-type/observable-updater-factory\"], function (_loader, _converterResolver, _observableUpdaterFactory) {\n  /**\n   * Copyright \u00a9 Magento, Inc. All rights reserved.\n   * See COPYING.txt for license details.\n   */\n\n  /**\n   * Create new content instance\n   *\n   * @param {ContentTypeInterface | ContentTypeCollectionInterface} contentType\n   * @param {ContentTypeConfigInterface} config\n   * @returns {Promise<ContentTypeInterface>}\n   */\n  function create(contentType, config) {\n    return new Promise(function (resolve, reject) {\n      (0, _observableUpdaterFactory)(config, _converterResolver).then(function (observableUpdater) {\n        (0, _loader)([config.master_component], function (masterComponent) {\n          try {\n            var master = new masterComponent(contentType, observableUpdater);\n            resolve(master);\n          } catch (error) {\n            reject(\"Error within master component (\" + config.master_component + \") for \" + config.name + \".\");\n            console.error(error);\n          }\n        }, function (error) {\n          reject(\"Unable to load preview component (\" + config.master_component + \") for \" + config.name + \". Please \" + \"check preview component exists and content type configuration is correct.\");\n          console.error(error);\n        });\n      }).catch(function (error) {\n        console.error(error);\n        return null;\n      });\n    });\n  }\n\n  return create;\n});\n//# sourceMappingURL=master-factory.js.map","Magento_PageBuilder/js/content-type/button-item/preview.js":"/*eslint-disable */\n/* jscs:disable */\n\nfunction _extends() { _extends = Object.assign || function (target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i]; for (var key in source) { if (Object.prototype.hasOwnProperty.call(source, key)) { target[key] = source[key]; } } } return target; }; return _extends.apply(this, arguments); }\n\nfunction _inheritsLoose(subClass, superClass) { subClass.prototype = Object.create(superClass.prototype); subClass.prototype.constructor = subClass; _setPrototypeOf(subClass, superClass); }\n\nfunction _setPrototypeOf(o, p) { _setPrototypeOf = Object.setPrototypeOf || function _setPrototypeOf(o, p) { o.__proto__ = p; return o; }; return _setPrototypeOf(o, p); }\n\ndefine([\"jquery\", \"knockout\", \"mage/translate\", \"Magento_PageBuilder/js/content-type-menu/conditional-remove-option\", \"Magento_PageBuilder/js/content-type/preview\"], function (_jquery, _knockout, _translate, _conditionalRemoveOption, _preview) {\n  /**\n   * Copyright \u00a9 Magento, Inc. All rights reserved.\n   * See COPYING.txt for license details.\n   */\n\n  /**\n   * @api\n   */\n  var Preview = /*#__PURE__*/function (_preview2) {\n    \"use strict\";\n\n    _inheritsLoose(Preview, _preview2);\n\n    function Preview() {\n      var _this;\n\n      for (var _len = arguments.length, args = new Array(_len), _key = 0; _key < _len; _key++) {\n        args[_key] = arguments[_key];\n      }\n\n      _this = _preview2.call.apply(_preview2, [this].concat(args)) || this;\n      _this.buttonPlaceholder = (0, _translate)(\"Edit Button Text\");\n      return _this;\n    }\n\n    var _proto = Preview.prototype;\n\n    /**\n     * Use the conditional remove to disable the option when the parent has a single child\n     *\n     * @returns {OptionsInterface}\n     */\n    _proto.retrieveOptions = function retrieveOptions() {\n      var options = _preview2.prototype.retrieveOptions.call(this);\n\n      delete options.title;\n      delete options.move;\n      options.remove = new _conditionalRemoveOption(_extends({}, options.remove.config, {\n        preview: this\n      }));\n      return options;\n    }\n    /**\n     * Force the focus on the clicked button\n     *\n     * @param {number} index\n     * @param {JQueryEventObject} event\n     */\n    ;\n\n    _proto.onClick = function onClick(index, event) {\n      (0, _jquery)(event.currentTarget).find(\"[contenteditable]\").focus();\n      event.stopPropagation();\n    }\n    /**\n     * Handle on focus out events, when the button item is focused out we need to set our focusedButton record on the\n     * buttons preview item to null. If we detect this focus out event is to focus into another button we need to ensure\n     * we update the record appropriately.\n     *\n     * @param {number} index\n     * @param {Event} event\n     */\n    ;\n\n    _proto.onFocusOut = function onFocusOut(index, event) {\n      if (this.contentType && this.contentType.parentContentType) {\n        var parentPreview = this.contentType.parentContentType.preview;\n\n        var unfocus = function unfocus() {\n          window.getSelection().removeAllRanges();\n          parentPreview.focusedButton(null);\n        };\n\n        if (event.relatedTarget && _jquery.contains(parentPreview.wrapperElement, event.relatedTarget)) {\n          // Verify the focus was not onto the options menu\n          if ((0, _jquery)(event.relatedTarget).closest(\".pagebuilder-options\").length > 0) {\n            unfocus();\n          } else {\n            // Have we moved the focus onto another button in the current group?\n            var buttonItem = _knockout.dataFor(event.relatedTarget);\n\n            if (buttonItem && buttonItem.contentType && buttonItem.contentType.parentContentType && buttonItem.contentType.parentContentType.id === this.contentType.parentContentType.id) {\n              var newIndex = buttonItem.contentType.parentContentType.children().indexOf(buttonItem.contentType);\n              parentPreview.focusedButton(newIndex);\n            } else {\n              unfocus();\n            }\n          }\n        } else if (parentPreview.focusedButton() === index) {\n          unfocus();\n        }\n      }\n    }\n    /**\n     * On focus in set the focused button\n     *\n     * @param {number} index\n     * @param {Event} event\n     */\n    ;\n\n    _proto.onFocusIn = function onFocusIn(index, event) {\n      var parentPreview = this.contentType.parentContentType.preview;\n\n      if (parentPreview.focusedButton() !== index) {\n        parentPreview.focusedButton(index);\n      }\n    }\n    /**\n     * If the button is displayed we need to show the options menu on hover\n     *\n     * @param {Preview} context\n     * @param {Event} event\n     */\n    ;\n\n    _proto.onButtonMouseOver = function onButtonMouseOver(context, event) {\n      if (this.display() === false) {\n        this.onMouseOver(context, event);\n      }\n    }\n    /**\n     * If the button is displayed we need to hide the options menu on mouse out\n     *\n     * @param {Preview} context\n     * @param {Event} event\n     */\n    ;\n\n    _proto.onButtonMouseOut = function onButtonMouseOut(context, event) {\n      if (this.display() === false) {\n        this.onMouseOut(context, event);\n      }\n    };\n\n    return Preview;\n  }(_preview);\n\n  return Preview;\n});\n//# sourceMappingURL=preview.js.map","Magento_PageBuilder/js/content-type/button-item/converter/style/display.js":"/*eslint-disable */\n/* jscs:disable */\ndefine([\"underscore\", \"Magento_PageBuilder/js/utils/object\"], function (_underscore, _object) {\n  /**\n   * Copyright \u00a9 Magento, Inc. All rights reserved.\n   * See COPYING.txt for license details.\n   */\n\n  /**\n   * @api\n   */\n  var Display = /*#__PURE__*/function () {\n    \"use strict\";\n\n    function Display() {}\n\n    var _proto = Display.prototype;\n\n    /**\n     * Convert value to internal format\n     *\n     * @param value string\n     * @returns {string | object}\n     */\n    _proto.fromDom = function fromDom(value) {\n      return !(value === \"none\");\n    }\n    /**\n     * Convert value to knockout format, if buttons are displayed they should be inline block\n     *\n     * @param {string} name\n     * @param {DataObject} data\n     * @returns {string}\n     */\n    ;\n\n    _proto.toDom = function toDom(name, data) {\n      var value = (0, _object.get)(data, name);\n\n      if (!_underscore.isUndefined(value) && value === false) {\n        return \"none\";\n      }\n\n      return \"inline-block\";\n    };\n\n    return Display;\n  }();\n\n  return Display;\n});\n//# sourceMappingURL=display.js.map","Magento_PageBuilder/js/content-type/map/preview.js":"/*eslint-disable */\n/* jscs:disable */\n\nfunction _inheritsLoose(subClass, superClass) { subClass.prototype = Object.create(superClass.prototype); subClass.prototype.constructor = subClass; _setPrototypeOf(subClass, superClass); }\n\nfunction _setPrototypeOf(o, p) { _setPrototypeOf = Object.setPrototypeOf || function _setPrototypeOf(o, p) { o.__proto__ = p; return o; }; return _setPrototypeOf(o, p); }\n\ndefine([\"knockout\", \"Magento_PageBuilder/js/events\", \"Magento_PageBuilder/js/utils/map\", \"module\", \"Magento_PageBuilder/js/content-type-menu/hide-show-option\", \"Magento_PageBuilder/js/content-type/preview\"], function (_knockout, _events, _map, _module, _hideShowOption, _preview) {\n  /**\n   * Copyright \u00a9 Magento, Inc. All rights reserved.\n   * See COPYING.txt for license details.\n   */\n\n  /**\n   * @api\n   */\n  var Preview = /*#__PURE__*/function (_preview2) {\n    \"use strict\";\n\n    _inheritsLoose(Preview, _preview2);\n\n    function Preview() {\n      var _this;\n\n      for (var _len = arguments.length, args = new Array(_len), _key = 0; _key < _len; _key++) {\n        args[_key] = arguments[_key];\n      }\n\n      _this = _preview2.call.apply(_preview2, [this].concat(args)) || this;\n      _this.apiKeyValid = _knockout.observable(!!_module.config().apiKey);\n      _this.apiKeyErrorMessage = _module.config().apiKeyErrorMessage;\n      return _this;\n    }\n\n    var _proto = Preview.prototype;\n\n    /**\n     * Return an array of options\n     *\n     * @returns {OptionsInterface}\n     */\n    _proto.retrieveOptions = function retrieveOptions() {\n      var options = _preview2.prototype.retrieveOptions.call(this);\n\n      options.hideShow = new _hideShowOption({\n        preview: this,\n        icon: _hideShowOption.showIcon,\n        title: _hideShowOption.showText,\n        action: this.onOptionVisibilityToggle,\n        classes: [\"hide-show-content-type\"],\n        sort: 40\n      });\n      return options;\n    }\n    /**\n     * Open edit menu on map content type drop with a delay of 300ms\n     */\n    ;\n\n    _proto.bindEvents = function bindEvents() {\n      var _this2 = this;\n\n      _preview2.prototype.bindEvents.call(this); // When the map api key fails, empties out the content type and adds the placeholder\n\n\n      _events.on(\"googleMaps:authFailure\", function () {\n        _this2.apiKeyValid(false);\n      });\n    }\n    /**\n     * Renders the map and subscribe to position for updates\n     *\n     * @param {Element} element\n     * @returns {void}\n     */\n    ;\n\n    _proto.renderMap = function renderMap(element) {\n      var _this3 = this;\n\n      if (!this.apiKeyValid()) {\n        return;\n      }\n\n      this.generateMap(element);\n      this.element = element;\n\n      if (this.mapElement && this.mapElement.map) {\n        this.data.main.attributes.subscribe(function () {\n          _this3.updateMap();\n        });\n      }\n    }\n    /**\n     * Generate maps\n     *\n     * @param {Element} element\n     * @returns {void}\n     */\n    ;\n\n    _proto.generateMap = function generateMap(element) {\n      var currentLocations = this.data.main.attributes()[\"data-locations\"] || \"[]\";\n      var controls = this.data.main.attributes()[\"data-show-controls\"] || \"true\";\n      var locations = [];\n      var options = {\n        disableDefaultUI: controls !== \"true\",\n        mapTypeControl: controls === \"true\"\n      };\n\n      if (currentLocations !== \"[]\") {\n        var mapData = this.getMapData();\n        locations = mapData.locations;\n        options = mapData.options;\n      }\n\n      this.mapElement = new _map(element, locations, options);\n    }\n    /**\n     * Updates map\n     *\n     * @returns {void}\n     */\n    ;\n\n    _proto.updateMap = function updateMap() {\n      var mapData = this.getMapData();\n      this.mapElement.onUpdate(mapData.locations, mapData.options);\n    }\n    /**\n     * Get locations, center coordinates, and zoom from data.position\n     *\n     * @returns {Object}\n     */\n    ;\n\n    _proto.getMapData = function getMapData() {\n      var attributes = this.data.main.attributes();\n      var controls = attributes[\"data-show-controls\"];\n      var options = {\n        disableDefaultUI: controls !== \"true\",\n        mapTypeControl: controls === \"true\"\n      };\n      var locations = attributes[\"data-locations\"];\n\n      if (locations !== \"\" && typeof locations === \"string\") {\n        locations = JSON.parse(locations);\n      }\n\n      locations.forEach(function (location) {\n        location.position.latitude = parseFloat(location.position.latitude);\n        location.position.longitude = parseFloat(location.position.longitude);\n      });\n      return {\n        locations: locations,\n        options: options\n      };\n    };\n\n    return Preview;\n  }(_preview);\n\n  return Preview;\n});\n//# sourceMappingURL=preview.js.map","Magento_PageBuilder/js/content-type/map/appearance/default/widget.js":"/**\n * Copyright \u00a9 Magento, Inc. All rights reserved.\n * See COPYING.txt for license details.\n */\ndefine([\n    'jquery',\n    'Magento_PageBuilder/js/utils/map'\n], function ($, GoogleMap) {\n    'use strict';\n\n    return function (config, element) {\n        var locations,\n            controls,\n            mapOptions = {};\n\n        element = element[0];\n\n        if (element !== undefined && element.hasAttribute('data-locations')) {\n\n            /**\n             * Set map display to none if no locations\n             */\n            if (element.getAttribute('data-locations') === '[]') {\n                $(element).hide();\n\n                return;\n            }\n            locations = JSON.parse(element.getAttribute('data-locations'));\n            locations.forEach(function (location) {\n                location.position.latitude = parseFloat(location.position.latitude);\n                location.position.longitude = parseFloat(location.position.longitude);\n            });\n            controls = element.getAttribute('data-show-controls');\n            mapOptions.disableDefaultUI = controls !== 'true';\n            mapOptions.mapTypeControl = controls === 'true';\n            new GoogleMap(element, locations, mapOptions);\n        }\n    };\n});\n","Magento_PageBuilder/js/content-type/map/converter/attribute/locations.js":"/*eslint-disable */\n/* jscs:disable */\ndefine([\"underscore\", \"Magento_PageBuilder/js/utils/object\"], function (_underscore, _object) {\n  /**\n   * Copyright \u00a9 Magento, Inc. All rights reserved.\n   * See COPYING.txt for license details.\n   */\n  var Locations = /*#__PURE__*/function () {\n    \"use strict\";\n\n    function Locations() {}\n\n    var _proto = Locations.prototype;\n\n    /**\n     * Convert value to internal format\n     *\n     * @param value string\n     * @returns {string | object}\n     */\n    _proto.fromDom = function fromDom(value) {\n      if (value && value !== \"\") {\n        return JSON.parse(value);\n      }\n\n      return [];\n    }\n    /**\n     * Convert value to knockout format\n     *\n     * @param name string\n     * @param data Object\n     * @returns {string | object}\n     */\n    ;\n\n    _proto.toDom = function toDom(name, data) {\n      var content = (0, _object.get)(data, name);\n\n      if (_underscore.isString(content) && content !== \"\") {\n        content = JSON.parse(content);\n      }\n\n      if (content && Object.keys(content).length) {\n        content.forEach(function (marker) {\n          if (marker.position) {\n            marker.position.latitude = parseFloat(marker.position.latitude);\n            marker.position.longitude = parseFloat(marker.position.longitude);\n          }\n        });\n        return JSON.stringify(content);\n      }\n\n      return JSON.stringify([]);\n    };\n\n    return Locations;\n  }();\n\n  return Locations;\n});\n//# sourceMappingURL=locations.js.map","Magento_PageBuilder/js/content-type/text/preview.js":"/*eslint-disable */\n/* jscs:disable */\n\nfunction _inheritsLoose(subClass, superClass) { subClass.prototype = Object.create(superClass.prototype); subClass.prototype.constructor = subClass; _setPrototypeOf(subClass, superClass); }\n\nfunction _setPrototypeOf(o, p) { _setPrototypeOf = Object.setPrototypeOf || function _setPrototypeOf(o, p) { o.__proto__ = p; return o; }; return _setPrototypeOf(o, p); }\n\ndefine([\"jquery\", \"Magento_PageBuilder/js/events\", \"underscore\", \"Magento_PageBuilder/js/content-type-menu/hide-show-option\", \"Magento_PageBuilder/js/utils/delay-until\", \"Magento_PageBuilder/js/utils/editor\", \"Magento_PageBuilder/js/wysiwyg/factory\", \"Magento_PageBuilder/js/content-type/preview\"], function (_jquery, _events, _underscore, _hideShowOption, _delayUntil, _editor, _factory, _preview) {\n  /**\n   * Copyright \u00a9 Magento, Inc. All rights reserved.\n   * See COPYING.txt for license details.\n   */\n\n  /**\n   * @api\n   */\n  var Preview = /*#__PURE__*/function (_preview2) {\n    \"use strict\";\n\n    _inheritsLoose(Preview, _preview2);\n\n    function Preview() {\n      var _this;\n\n      for (var _len = arguments.length, args = new Array(_len), _key = 0; _key < _len; _key++) {\n        args[_key] = arguments[_key];\n      }\n\n      _this = _preview2.call.apply(_preview2, [this].concat(args)) || this;\n      _this.wysiwygDeferred = _jquery.Deferred();\n      _this.afterRenderDeferred = _jquery.Deferred();\n      _this.handledDoubleClick = false;\n      return _this;\n    }\n\n    var _proto = Preview.prototype;\n\n    /**\n     * @returns {Boolean}\n     */\n    _proto.isWysiwygSupported = function isWysiwygSupported() {\n      return (0, _editor.isWysiwygSupported)();\n    }\n    /**\n     * Return an array of options\n     *\n     * @returns {OptionsInterface}\n     */\n    ;\n\n    _proto.retrieveOptions = function retrieveOptions() {\n      var options = _preview2.prototype.retrieveOptions.call(this);\n\n      options.hideShow = new _hideShowOption({\n        preview: this,\n        icon: _hideShowOption.showIcon,\n        title: _hideShowOption.showText,\n        action: this.onOptionVisibilityToggle,\n        classes: [\"hide-show-content-type\"],\n        sort: 40\n      });\n      return options;\n    }\n    /**\n     * @param {HTMLElement} element\n     */\n    ;\n\n    _proto.afterRenderWysiwyg = function afterRenderWysiwyg(element) {\n      var _this2 = this;\n\n      this.element = element;\n      element.id = this.contentType.id + \"-editor\"; // Set the innerHTML manually so we don't upset Knockout & TinyMCE\n\n      element.innerHTML = this.data.main.html();\n      this.contentType.dataStore.subscribe(function () {\n        // If we're not focused into TinyMCE inline, update the value when it changes in the data store\n        if (!_this2.wysiwyg || _this2.wysiwyg && _this2.wysiwyg.getAdapter().id !== (0, _editor.getActiveEditor)().id) {\n          element.innerHTML = _this2.data.main.html();\n        }\n      }, \"content\");\n      this.afterRenderDeferred.resolve(element);\n      /**\n       * afterRenderWysiwyg is called whenever Knockout causes a DOM re-render. This occurs frequently within Slider\n       * due to Slick's inability to perform a refresh with Knockout managing the DOM. Due to this the original\n       * WYSIWYG instance will be detached from this slide and we need to re-initialize on click.\n       */\n\n      this.wysiwyg = null;\n    }\n    /**\n     * Stop event to prevent execution of action when editing textarea.\n     *\n     * @param {Preview} preview\n     * @param {JQueryEventObject} event\n     * @returns {Boolean}\n     */\n    ;\n\n    _proto.stopEvent = function stopEvent(preview, event) {\n      event.stopPropagation();\n      return true;\n    }\n    /**\n     * Init WYSIWYG on load\n     *\n     * @param element\n     * @deprecated please use activateEditor & initWysiwygFromClick\n     */\n    ;\n\n    _proto.initWysiwyg = function initWysiwyg(element) {\n      this.element = element;\n      element.id = this.contentType.id + \"-editor\";\n      this.wysiwyg = null;\n      return this.initWysiwygFromClick(true);\n    }\n    /**\n     * Init the WYSIWYG\n     *\n     * @param {boolean} focus Should wysiwyg focus after initialization?\n     * @returns Promise\n     */\n    ;\n\n    _proto.initWysiwygFromClick = function initWysiwygFromClick(focus) {\n      var _this3 = this;\n\n      if (focus === void 0) {\n        focus = false;\n      }\n\n      if (this.wysiwyg) {\n        return Promise.resolve(this.wysiwyg);\n      }\n\n      var wysiwygConfig = this.config.additional_data.wysiwygConfig.wysiwygConfigData;\n\n      if (focus) {\n        wysiwygConfig.adapter.settings.auto_focus = this.element.id;\n\n        wysiwygConfig.adapter.settings.init_instance_callback = function () {\n          _underscore.defer(function () {\n            _this3.element.blur();\n\n            _this3.element.focus();\n          });\n        };\n      }\n\n      return (0, _factory)(this.contentType.id, this.element.id, this.config.name, wysiwygConfig, this.contentType.dataStore, \"content\", this.contentType.stageId).then(function (wysiwyg) {\n        _this3.wysiwyg = wysiwyg;\n        return wysiwyg;\n      });\n    }\n    /**\n     * Makes WYSIWYG active\n     *\n     * @param {Preview} preview\n     * @param {JQueryEventObject} event\n     * @returns {Boolean}\n     */\n    ;\n\n    _proto.activateEditor = function activateEditor(preview, event) {\n      var _this4 = this;\n\n      if (this.element && !this.wysiwyg) {\n        var bookmark = (0, _editor.createBookmark)(event);\n        (0, _editor.lockImageSize)(this.element);\n        this.element.removeAttribute(\"contenteditable\");\n\n        _underscore.defer(function () {\n          _this4.initWysiwygFromClick(true).then(function () {\n            return (0, _delayUntil)(function () {\n              // We no longer need to handle double click once it's initialized\n              _this4.handledDoubleClick = true;\n\n              _this4.wysiwygDeferred.resolve();\n\n              (0, _editor.moveToBookmark)(bookmark);\n              (0, _editor.unlockImageSize)(_this4.element);\n            }, function () {\n              return _this4.element.classList.contains(\"mce-edit-focus\");\n            }, 10);\n          }).catch(function (error) {\n            // If there's an error with init of WYSIWYG editor push into the console to aid support\n            console.error(error);\n          });\n        });\n      }\n    }\n    /**\n     * If a user double clicks prior to initializing TinyMCE, forward the event\n     *\n     * @param preview\n     * @param event\n     */\n    ;\n\n    _proto.handleDoubleClick = function handleDoubleClick(preview, event) {\n      var _this5 = this;\n\n      if (this.handledDoubleClick) {\n        return;\n      }\n\n      event.preventDefault();\n      var targetIndex = (0, _editor.findNodeIndex)(this.element, event.target.tagName, event.target);\n      this.handledDoubleClick = true;\n      this.wysiwygDeferred.then(function () {\n        var target = document.getElementById(event.target.id);\n\n        if (!target) {\n          target = (0, _editor.getNodeByIndex)(_this5.element, event.target.tagName, targetIndex);\n        }\n\n        if (target) {\n          target.dispatchEvent((0, _editor.createDoubleClickEvent)());\n        }\n      });\n    }\n    /**\n     * Handle \"mousedown\" event\n     *\n     * @param {Preview} preview\n     * @param {JQueryEventObject} event\n     * @returns {Boolean}\n     */\n    ;\n\n    _proto.handleMouseDown = function handleMouseDown(preview, event) {\n      var _this6 = this;\n\n      var handleMouseUp = function handleMouseUp(mouseUpEvent) {\n        if (_this6.element && !_this6.wysiwyg && document.activeElement === _this6.element // Check that mouseup occurred outside the element, otherwise \"click\" event will be triggerred in which\n        // case we don't need to do anything as the \"click\" event is handled in \"activateEditor\"\n        // Note: click is fired after a full click action occurs; that is, the mouse button is pressed\n        // and released while the pointer remains inside the same element.\n        && _this6.element !== mouseUpEvent.target && !_jquery.contains(_this6.element, mouseUpEvent.target)) {\n          _this6.activateEditor(_this6, mouseUpEvent);\n        }\n\n        (0, _jquery)(document).off(\"mouseup\", handleMouseUp);\n        return true;\n      };\n\n      event.stopPropagation();\n\n      if (this.element && !this.wysiwyg) {\n        (0, _jquery)(document).on(\"mouseup\", handleMouseUp);\n      }\n\n      return true;\n    }\n    /**\n     * @param {HTMLTextAreaElement} element\n     */\n    ;\n\n    _proto.initTextarea = function initTextarea(element) {\n      var _this7 = this;\n\n      this.textarea = element; // set initial value of textarea based on data store\n\n      this.textarea.value = this.contentType.dataStore.get(\"content\");\n      this.adjustTextareaHeightBasedOnScrollHeight(); // Update content in our stage preview textarea after its slideout counterpart gets updated\n\n      _events.on(\"form:\" + this.contentType.id + \":saveAfter\", function () {\n        _this7.textarea.value = _this7.contentType.dataStore.get(\"content\");\n\n        _this7.adjustTextareaHeightBasedOnScrollHeight();\n      });\n    }\n    /**\n     * Save current value of textarea in data store\n     */\n    ;\n\n    _proto.onTextareaKeyUp = function onTextareaKeyUp() {\n      this.adjustTextareaHeightBasedOnScrollHeight();\n      this.contentType.dataStore.set(\"content\", this.textarea.value);\n    }\n    /**\n     * Start stage interaction on textarea blur\n     */\n    ;\n\n    _proto.onTextareaFocus = function onTextareaFocus() {\n      (0, _jquery)(this.textarea).closest(\".pagebuilder-content-type\").addClass(\"pagebuilder-toolbar-active\");\n\n      _events.trigger(\"stage:interactionStart\");\n    }\n    /**\n     * Stop stage interaction on textarea blur\n     */\n    ;\n\n    _proto.onTextareaBlur = function onTextareaBlur() {\n      (0, _jquery)(this.textarea).closest(\".pagebuilder-content-type\").removeClass(\"pagebuilder-toolbar-active\");\n\n      _events.trigger(\"stage:interactionStop\");\n    }\n    /**\n     * Retrieve the margin & padding & alignment styles for the placeholder\n     *\n     * @returns {any}\n     */\n    ;\n\n    _proto.getPlaceholderStyle = function getPlaceholderStyle() {\n      var keys = [\"marginBottom\", \"marginLeft\", \"marginRight\", \"marginTop\", \"paddingBottom\", \"paddingLeft\", \"paddingRight\", \"paddingTop\", \"textAlign\"];\n      return _underscore.pick(this.data.main.style(), function (style, key) {\n        return keys.indexOf(key) !== -1;\n      });\n    }\n    /**\n     * Bind events\n     */\n    ;\n\n    _proto.bindEvents = function bindEvents() {\n      var _this8 = this;\n\n      this.contentType.dataStore.subscribe(function (state) {\n        var sanitizedContent = (0, _editor.removeReservedHtmlAttributes)((0, _editor.replaceDoubleQuoteWithSingleQuoteWithinVariableDirective)((0, _editor.escapeDoubleQuoteWithinWidgetDirective)(state.content)));\n\n        if (sanitizedContent !== state.content) {\n          state.content = sanitizedContent;\n        }\n      }, \"content\");\n\n      _preview2.prototype.bindEvents.call(this); // After drop of new content type open TinyMCE and focus\n\n\n      _events.on(\"text:dropAfter\", function (args) {\n        if (args.id === _this8.contentType.id) {\n          _this8.afterRenderDeferred.then(function () {\n            if (_this8.isWysiwygSupported()) {\n              _this8.initWysiwygFromClick(true);\n            }\n          });\n        }\n      });\n    }\n    /**\n     * Adjust textarea's height based on scrollHeight\n     */\n    ;\n\n    _proto.adjustTextareaHeightBasedOnScrollHeight = function adjustTextareaHeightBasedOnScrollHeight() {\n      this.textarea.style.height = \"\";\n      var scrollHeight = this.textarea.scrollHeight;\n      var minHeight = parseInt((0, _jquery)(this.textarea).css(\"min-height\"), 10);\n\n      if (scrollHeight === minHeight) {\n        // leave height at 'auto'\n        return;\n      }\n\n      (0, _jquery)(this.textarea).height(scrollHeight);\n    };\n\n    return Preview;\n  }(_preview);\n\n  return Preview;\n});\n//# sourceMappingURL=preview.js.map","Magento_PageBuilder/js/content-type/text/wysiwyg/tinymce/component-initializer.js":"/*eslint-disable */\n/* jscs:disable */\ndefine([\"jquery\", \"mage/adminhtml/wysiwyg/events\"], function (_jquery, _events) {\n  /**\n   * Copyright \u00a9 Magento, Inc. All rights reserved.\n   * See COPYING.txt for license details.\n   */\n  var ComponentInitializer = /*#__PURE__*/function () {\n    \"use strict\";\n\n    function ComponentInitializer() {}\n\n    var _proto = ComponentInitializer.prototype;\n\n    /**\n     * The editor element\n     */\n\n    /**\n     * The configuration of the wysiwyg content type\n     */\n\n    /**\n     * Initialize the instance\n     *\n     * @param {Wysiwyg} wysiwyg\n     */\n    _proto.initialize = function initialize(wysiwyg) {\n      this.$element = (0, _jquery)(\"#\" + wysiwyg.elementId);\n      this.config = wysiwyg.config;\n      var tinymce = wysiwyg.getAdapter();\n      tinymce.eventBus.attachEventHandler(_events.afterFocus, this.onFocus.bind(this));\n      tinymce.eventBus.attachEventHandler(_events.afterBlur, this.onBlur.bind(this));\n    }\n    /**\n     * Called when tinymce is focused\n     */\n    ;\n\n    _proto.onFocus = function onFocus() {\n      var _this = this;\n\n      // If there isn't enough room for a left-aligned toolbar, right align it\n      if ((0, _jquery)(window).width() < this.$element.offset().left + parseInt(this.config.adapter_config.minToolbarWidth, 10)) {\n        this.$element.addClass(\"_right-aligned-toolbar\");\n      } else {\n        this.$element.removeClass(\"_right-aligned-toolbar\");\n      }\n\n      _jquery.each(this.config.adapter_config.parentSelectorsToUnderlay, function (i, selector) {\n        _this.$element.closest(selector).css(\"z-index\", 100);\n      });\n    }\n    /**\n     * Called when tinymce is blurred\n     */\n    ;\n\n    _proto.onBlur = function onBlur() {\n      var _this2 = this;\n\n      _jquery.each(this.config.adapter_config.parentSelectorsToUnderlay, function (i, selector) {\n        _this2.$element.closest(selector).css(\"z-index\", \"\");\n      });\n    };\n\n    return ComponentInitializer;\n  }();\n\n  return ComponentInitializer;\n});\n//# sourceMappingURL=component-initializer.js.map","Magento_PageBuilder/js/content-type/text/wysiwyg/tinymce/config-modifier.js":"/*eslint-disable */\n/* jscs:disable */\ndefine([], function () {\n  /**\n   * Copyright \u00a9 Magento, Inc. All rights reserved.\n   * See COPYING.txt for license details.\n   */\n  var ConfigModifier = /*#__PURE__*/function () {\n    \"use strict\";\n\n    function ConfigModifier() {}\n\n    var _proto = ConfigModifier.prototype;\n\n    /**\n     * Initialize the config\n     *\n     * @param {String} contentTypeId\n     * @param {Object} config\n     */\n    _proto.modify = function modify(contentTypeId, config) {\n      if (config.adapter_config.mode === \"inline\") {\n        config.adapter.settings.fixed_toolbar_container = \"#\" + contentTypeId + \" \" + config.adapter.settings.fixed_toolbar_container;\n      }\n    };\n\n    return ConfigModifier;\n  }();\n\n  return ConfigModifier;\n});\n//# sourceMappingURL=config-modifier.js.map","Magento_PageBuilder/js/content-type/column-line/drag-and-drop.js":"/*eslint-disable */\n/* jscs:disable */\ndefine([], function () {\n  /**\n   * Copyright \u00a9 Magento, Inc. All rights reserved.\n   * See COPYING.txt for license details.\n   */\n\n  /**\n   * Calculate the drop positions of a column group\n   *\n   * @param {ContentTypeCollectionInterface} group\n   * @returns {any[]}\n   */\n  function calculateDropPositions(line) {\n    var resizeUtils = line.preview.getResizeUtils();\n    var dropPositions = [];\n    line.children().forEach(function (column, index) {\n      var left = column.preview.element.position().left;\n      var width = column.preview.element.outerWidth(true);\n      var canShrink = resizeUtils.getAcceptedColumnWidth(resizeUtils.getColumnWidth(column).toString()) > resizeUtils.getSmallestColumnWidth();\n      dropPositions.push({\n        affectedColumn: column,\n        canShrink: canShrink,\n        insertIndex: index,\n        left: left,\n        placement: \"left\",\n        right: left + width / 2\n      }, {\n        affectedColumn: column,\n        canShrink: canShrink,\n        insertIndex: index + 1,\n        left: left + width / 2,\n        placement: \"right\",\n        right: left + width\n      });\n    });\n    return dropPositions;\n  }\n\n  return {\n    calculateDropPositions: calculateDropPositions\n  };\n});\n//# sourceMappingURL=drag-and-drop.js.map","Magento_PageBuilder/js/content-type/column-line/preview.js":"/*eslint-disable */\n/* jscs:disable */\n\nfunction _createForOfIteratorHelperLoose(o, allowArrayLike) { var it = typeof Symbol !== \"undefined\" && o[Symbol.iterator] || o[\"@@iterator\"]; if (it) return (it = it.call(o)).next.bind(it); if (Array.isArray(o) || (it = _unsupportedIterableToArray(o)) || allowArrayLike && o && typeof o.length === \"number\") { if (it) o = it; var i = 0; return function () { if (i >= o.length) return { done: true }; return { done: false, value: o[i++] }; }; } throw new TypeError(\"Invalid attempt to iterate non-iterable instance.\\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.\"); }\n\nfunction _unsupportedIterableToArray(o, minLen) { if (!o) return; if (typeof o === \"string\") return _arrayLikeToArray(o, minLen); var n = Object.prototype.toString.call(o).slice(8, -1); if (n === \"Object\" && o.constructor) n = o.constructor.name; if (n === \"Map\" || n === \"Set\") return Array.from(o); if (n === \"Arguments\" || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)) return _arrayLikeToArray(o, minLen); }\n\nfunction _arrayLikeToArray(arr, len) { if (len == null || len > arr.length) len = arr.length; for (var i = 0, arr2 = new Array(len); i < len; i++) { arr2[i] = arr[i]; } return arr2; }\n\nfunction _assertThisInitialized(self) { if (self === void 0) { throw new ReferenceError(\"this hasn't been initialised - super() hasn't been called\"); } return self; }\n\nfunction _inheritsLoose(subClass, superClass) { subClass.prototype = Object.create(superClass.prototype); subClass.prototype.constructor = subClass; _setPrototypeOf(subClass, superClass); }\n\nfunction _setPrototypeOf(o, p) { _setPrototypeOf = Object.setPrototypeOf || function _setPrototypeOf(o, p) { o.__proto__ = p; return o; }; return _setPrototypeOf(o, p); }\n\ndefine([\"jquery\", \"knockout\", \"Magento_PageBuilder/js/content-type-factory\", \"Magento_PageBuilder/js/content-type/column-group/factory\", \"Magento_PageBuilder/js/content-type/column-group/registry\", \"Magento_PageBuilder/js/drag-drop/move-content-type\", \"Magento_PageBuilder/js/drag-drop/registry\", \"Magento_PageBuilder/js/drag-drop/sortable\", \"Magento_PageBuilder/js/events\", \"Magento_PageBuilder/js/utils/create-stylesheet\", \"underscore\", \"Magento_PageBuilder/js/config\", \"Magento_PageBuilder/js/content-type/column-group/grid-size\", \"Magento_PageBuilder/js/content-type/column/resize\", \"Magento_PageBuilder/js/content-type/preview-collection\", \"Magento_PageBuilder/js/content-type/column-line/drag-and-drop\"], function (_jquery, _knockout, _contentTypeFactory, _factory, _registry, _moveContentType, _registry2, _sortable, _events, _createStylesheet, _underscore, _config, _gridSize, _resize, _previewCollection, _dragAndDrop) {\n  function _getRequireWildcardCache(nodeInterop) { if (typeof WeakMap !== \"function\") return null; var cacheBabelInterop = new WeakMap(); var cacheNodeInterop = new WeakMap(); return (_getRequireWildcardCache = function _getRequireWildcardCache(nodeInterop) { return nodeInterop ? cacheNodeInterop : cacheBabelInterop; })(nodeInterop); }\n\n  /**\n   * Copyright \u00a9 Magento, Inc. All rights reserved.\n   * See COPYING.txt for license details.\n   */\n\n  /**\n   * @api\n   */\n  var Preview = /*#__PURE__*/function (_previewCollection2) {\n    \"use strict\";\n\n    _inheritsLoose(Preview, _previewCollection2);\n\n    /**\n     *\n     * @param {ContentTypeCollection} contentType\n     * @param {ContentTypeConfigInterface} config\n     * @param {ObservableUpdater} observableUpdater\n     */\n    function Preview(contentType, config, observableUpdater) {\n      var _this;\n\n      _this = _previewCollection2.call(this, contentType, config, observableUpdater) || this;\n      _this.resizing = _knockout.observable(false);\n      _this.gridSizeArray = _knockout.observableArray([]);\n      _this.dropPositions = [];\n      _this.resizeHistory = {\n        left: [],\n        right: []\n      };\n      _this.interactionLevel = 0;\n      _this.lineDropperHeight = 50;\n      _this.resizeUtils = new _resize(_this.contentType.parentContentType, _this.contentType);\n\n      _events.on(\"contentType:removeAfter\", function (args) {\n        if (args.parentContentType && args.parentContentType.id === _this.contentType.id) {\n          _underscore.defer(function () {\n            _this.spreadWidth(args.index);\n          });\n        }\n      }); // Listen for resizing events from child columns\n\n\n      _events.on(\"column:resizeHandleBindAfter\", function (args) {\n        // Does the events content type match the previews column group?\n        if (args.columnLine.id === _this.contentType.id) {\n          _this.registerResizeHandle(args.column, args.handle);\n        }\n      });\n\n      _events.on(\"column:initializeAfter\", function (args) {\n        // Does the events parent match the previews column group?\n        if (args.columnGroup.id === _this.contentType.id) {\n          _this.bindDraggable(args.column);\n        }\n      });\n\n      var parentPreview = _this.contentType.parentContentType.preview;\n\n      _this.gridSizeArray(parentPreview.gridSizeArray());\n\n      parentPreview.gridSizeArray.subscribe(function (gridSize) {\n        _this.gridSizeArray(gridSize);\n      });\n\n      _this.contentType.children.subscribe(_underscore.debounce(_this.removeIfEmpty.bind(_assertThisInitialized(_this)), 50));\n\n      return _this;\n    }\n    /**\n     * Bind events\n     */\n\n\n    var _proto = Preview.prototype;\n\n    _proto.bindEvents = function bindEvents() {\n      var _this2 = this;\n\n      _previewCollection2.prototype.bindEvents.call(this);\n\n      if (_config.getContentTypeConfig(\"column\")) {\n        _events.on(\"column-line:dropAfter\", function (args) {\n          if (args.id === _this2.contentType.id) {\n            _this2.createColumns();\n          }\n        });\n      }\n\n      _events.on(\"column:initializeAfter\", function (args) {\n        // Does the events parent match the previews column group?\n        if (args.columnLine.id === _this2.contentType.id) {\n          _this2.bindDraggable(args.column);\n        }\n      });\n    }\n    /**\n     * Init the droppable & resizing interactions\n     *\n     * @param line\n     */\n    ;\n\n    _proto.bindInteractions = function bindInteractions(line) {\n      this.element = (0, _jquery)(line);\n      this.initDroppable(this.element);\n      this.initMouseMove(this.element); // Handle the mouse leaving the window\n      //  $(\"body\").mouseleave(this.endAllInteractions.bind(this));\n    }\n    /**\n     * Init the drop placeholder\n     *\n     * @param {Element} element\n     */\n    ;\n\n    _proto.bindDropPlaceholder = function bindDropPlaceholder(element) {\n      this.dropPlaceholder = (0, _jquery)(element);\n    }\n    /**\n     * Init the drop placeholder\n     *\n     * @param {Element} element\n     */\n    ;\n\n    _proto.bindColumnLineBottomDropPlaceholder = function bindColumnLineBottomDropPlaceholder(element) {\n      this.columnLineBottomDropPlaceholder = (0, _jquery)(element);\n    }\n    /**\n     * Init the drop placeholder\n     *\n     * @param {Element} element\n     */\n    ;\n\n    _proto.bindColumnLineDropPlaceholder = function bindColumnLineDropPlaceholder(element) {\n      this.columnLineDropPlaceholder = (0, _jquery)(element);\n    }\n    /**\n     * Init the move placeholder\n     *\n     * @param {Element} element\n     */\n    ;\n\n    _proto.bindMovePlaceholder = function bindMovePlaceholder(element) {\n      this.movePlaceholder = (0, _jquery)(element);\n    }\n    /**\n     * Retrieve the ghost element from the template\n     *\n     * @param {Element} ghost\n     */\n    ;\n\n    _proto.bindGhost = function bindGhost(ghost) {\n      this.resizeGhost = (0, _jquery)(ghost);\n    }\n    /**\n     * Retrieve the resize utils\n     *\n     * @returns {Resize}\n     */\n    ;\n\n    _proto.getResizeUtils = function getResizeUtils() {\n      return this.resizeUtils;\n    }\n    /**\n     * Bind draggable instances to the child columns\n     *\n     * @param {ContentTypeCollectionInterface<ColumnPreview>} column\n     */\n    ;\n\n    _proto.bindDraggable = function bindDraggable(column) {\n      var _this3 = this;\n\n      column.preview.element.draggable({\n        appendTo: \"body\",\n        containment: \"body\",\n        cursor: \"-webkit-grabbing\",\n        handle: \".move-column\",\n        revertDuration: 250,\n        helper: function helper() {\n          var helper = (0, _jquery)(this).clone();\n          helper.css({\n            height: (0, _jquery)(this).outerHeight() + \"px\",\n            minHeight: 0,\n            opacity: 0.5,\n            pointerEvents: \"none\",\n            width: (0, _jquery)(this).outerWidth() + \"px\",\n            zIndex: 5000\n          });\n          return helper;\n        },\n        start: function start(event) {\n          var columnInstance = _knockout.dataFor((0, _jquery)(event.target)[0]); // Use the global state as columns can be dragged between groups\n\n\n          (0, _registry.setDragColumn)(columnInstance.contentType);\n          _this3.dropPositions = (0, _dragAndDrop.calculateDropPositions)(_this3.contentType);\n          _this3.startDragEvent = event;\n\n          _events.trigger(\"column:dragStart\", {\n            column: columnInstance,\n            stageId: _this3.contentType.stageId\n          });\n\n          _events.trigger(\"stage:interactionStart\", {\n            stageId: _this3.contentType.stageId\n          });\n        },\n        stop: function stop() {\n          var draggedColumn = (0, _registry.getDragColumn)();\n\n          if (_this3.movePosition && draggedColumn) {\n            // Check if we're moving within the same group, even though this function will\n            // only ever run on the group that bound the draggable event\n            if (draggedColumn.parentContentType === _this3.contentType) {\n              _this3.onColumnSort(draggedColumn, _this3.movePosition.insertIndex);\n\n              _this3.movePosition = null; // todo see from column group\n            }\n          }\n\n          (0, _registry.removeDragColumn)();\n\n          _this3.dropPlaceholder.removeClass(\"left right\");\n\n          _this3.movePlaceholder.removeClass(\"active\");\n\n          _this3.movePosition = null;\n          _this3.startDragEvent = null;\n\n          _events.trigger(\"column:dragStop\", {\n            column: draggedColumn,\n            stageId: _this3.contentType.stageId\n          });\n\n          _events.trigger(\"stage:interactionStop\", {\n            stageId: _this3.contentType.stageId\n          });\n        }\n      });\n    }\n    /**\n     * Handle a column being sorted into a new position in the column line\n     *\n     * @param {ContentTypeCollectionInterface<ColumnPreview>} column\n     * @param {number} newIndex\n     */\n    ;\n\n    _proto.onColumnSort = function onColumnSort(column, newIndex) {\n      var currentIndex = (0, _resize.getColumnIndexInLine)(column);\n\n      if (currentIndex !== newIndex) {\n        if (currentIndex < newIndex) {\n          // As we're moving an array item the keys all reduce by 1\n          --newIndex;\n        } // Move the content type\n\n\n        (0, _moveContentType.moveContentType)(column, newIndex);\n      }\n    }\n    /**\n     * Handle a new column being dropped into the group\n     *\n     * @param {DropPosition} dropPosition\n     */\n    ;\n\n    _proto.onNewColumnDrop = function onNewColumnDrop(dropPosition) {\n      var _this4 = this;\n\n      // Create our new column\n      (0, _factory.createColumn)(this.contentType, this.resizeUtils.getSmallestColumnWidth(), dropPosition.insertIndex).then(function () {\n        var newWidth = _this4.resizeUtils.getAcceptedColumnWidth((_this4.resizeUtils.getColumnWidth(dropPosition.affectedColumn) - _this4.resizeUtils.getSmallestColumnWidth()).toString()); // Reduce the affected columns width by the smallest column width\n\n\n        (0, _resize.updateColumnWidth)(dropPosition.affectedColumn, newWidth);\n      });\n    }\n    /**\n     * Handle an existing column being dropped into a different column line\n     *\n     * @param {DropPosition} movePosition\n     */\n    ;\n\n    _proto.onExistingColumnDrop = function onExistingColumnDrop(movePosition) {\n      var _this5 = this;\n\n      var column = (0, _registry.getDragColumn)();\n      var sourceLinePreview = column.parentContentType.preview;\n      var modifyOldNeighbour; // Determine which old neighbour we should modify\n\n      var oldWidth = sourceLinePreview.getResizeUtils().getColumnWidth(column);\n      var direction = \"+1\"; // Retrieve the adjacent column either +1 or -1\n\n      if ((0, _resize.getAdjacentColumn)(column, \"+1\")) {\n        modifyOldNeighbour = (0, _resize.getAdjacentColumn)(column, \"+1\");\n      } else if ((0, _resize.getAdjacentColumn)(column, \"-1\")) {\n        direction = \"-1\";\n        modifyOldNeighbour = (0, _resize.getAdjacentColumn)(column, \"-1\");\n      } // Modify the old neighbour\n\n\n      var oldNeighbourWidth = 100;\n\n      if (modifyOldNeighbour) {\n        oldNeighbourWidth = sourceLinePreview.getResizeUtils().getAcceptedColumnWidth((oldWidth + sourceLinePreview.getResizeUtils().getColumnWidth(modifyOldNeighbour)).toString());\n      } // Move the content type\n\n\n      if (this.columnLineDropPlaceholder.hasClass(\"active\")) {\n        // if new column line placeholders are visible, add new column line and move column there\n        (0, _factory.createColumnLine)(this.contentType.parentContentType, this.resizeUtils.getSmallestColumnWidth(), this.getNewColumnLineIndex()).then(function (columnLine) {\n          (0, _moveContentType.moveContentType)(column, 0, columnLine);\n          (0, _resize.updateColumnWidth)(column, 100);\n\n          if (modifyOldNeighbour) {\n            (0, _resize.updateColumnWidth)(modifyOldNeighbour, oldNeighbourWidth);\n          }\n\n          _this5.fireMountEvent(_this5.contentType, column);\n        });\n      } else if (this.columnLineBottomDropPlaceholder.hasClass(\"active\")) {\n        // if new column line placeholders are visible, add new column line and move column there\n        (0, _factory.createColumnLine)(this.contentType.parentContentType, this.resizeUtils.getSmallestColumnWidth(), this.getNewColumnLineIndex()).then(function (columnLine) {\n          (0, _moveContentType.moveContentType)(column, 0, columnLine);\n          (0, _resize.updateColumnWidth)(column, 100);\n\n          if (modifyOldNeighbour) {\n            (0, _resize.updateColumnWidth)(modifyOldNeighbour, oldNeighbourWidth);\n          }\n\n          _this5.fireMountEvent(_this5.contentType, column);\n        });\n      } else {\n        (0, _moveContentType.moveContentType)(column, movePosition.insertIndex, this.contentType);\n\n        if (modifyOldNeighbour) {\n          (0, _resize.updateColumnWidth)(modifyOldNeighbour, oldNeighbourWidth);\n        }\n\n        var newNeighbourWidth = this.resizeUtils.getAcceptedColumnWidth((this.resizeUtils.getColumnWidth(movePosition.affectedColumn) - oldWidth).toString());\n        var newNeighbour = movePosition.affectedColumn;\n        var totalWidthAdjusted = 0;\n        (0, _resize.updateColumnWidth)(column, oldWidth);\n\n        while (true) {\n          // take width from all neighbours in one direction till the entire width is obtained\n          if (newNeighbourWidth <= 0) {\n            newNeighbourWidth = this.resizeUtils.getSmallestColumnWidth();\n            var originalWidthOfNeighbour = this.resizeUtils.getColumnWidth(newNeighbour);\n            (0, _resize.updateColumnWidth)(newNeighbour, newNeighbourWidth);\n            totalWidthAdjusted += originalWidthOfNeighbour - newNeighbourWidth;\n          } else {\n            (0, _resize.updateColumnWidth)(newNeighbour, newNeighbourWidth);\n            break;\n          }\n\n          if (direction === \"+1\") {\n            newNeighbour = (0, _resize.getAdjacentColumn)(newNeighbour, \"+1\");\n          } else {\n            newNeighbour = (0, _resize.getAdjacentColumn)(newNeighbour, \"-1\");\n          }\n\n          if (!newNeighbour) {\n            (0, _resize.updateColumnWidth)(column, totalWidthAdjusted);\n            break;\n          }\n\n          var neighbourExistingWidth = this.resizeUtils.getColumnWidth(newNeighbour);\n          newNeighbourWidth = neighbourExistingWidth - (oldWidth - totalWidthAdjusted);\n\n          if (newNeighbourWidth < 0.001) {\n            newNeighbourWidth = 0;\n          }\n        }\n\n        var totalWidth = 0;\n        this.contentType.children().forEach(function (columnChild) {\n          totalWidth += _this5.resizeUtils.getColumnWidth(columnChild);\n        });\n\n        if (totalWidth > 100) {\n          // take extra width from newly moved column\n          (0, _resize.updateColumnWidth)(column, this.resizeUtils.getColumnWidth(column) - (totalWidth - 100));\n        }\n      }\n    }\n    /**\n     * Init the resizing events on the group\n     *\n     * @param {JQuery} line\n     */\n    ;\n\n    _proto.initMouseMove = function initMouseMove(line) {\n      var _this6 = this;\n\n      var intersects = false;\n      (0, _jquery)(document).on(\"mousemove touchmove\", function (event) {\n        if (line.parents(_sortable.hiddenClass).length > 0) {\n          return;\n        }\n\n        var linePosition = _this6.getLinePosition(line); // If we're handling a touch event we need to pass through the page X & Y\n\n\n        if (event.type === \"touchmove\") {\n          event.pageX = event.originalEvent.pageX;\n          event.pageY = event.originalEvent.pageY;\n        }\n\n        if (_this6.eventIntersectsLine(event, linePosition)) {\n          intersects = true; // @todo re-instate onResizingMouseMove\n\n          _this6.onResizingMouseMove(event, line, linePosition);\n\n          _this6.onDraggingMouseMove(event, line, linePosition);\n\n          _this6.onDroppingMouseMove(event, line, linePosition);\n        } else {\n          intersects = false;\n          _this6.linePositionCache = null;\n          _this6.dropPosition = null;\n\n          _this6.dropPlaceholder.removeClass(\"left right\");\n\n          _this6.columnLineDropPlaceholder.removeClass(\"active\");\n\n          _this6.columnLineBottomDropPlaceholder.removeClass(\"active\");\n\n          _this6.columnLineBottomDropPlaceholder.hide();\n\n          _this6.columnLineDropPlaceholder.hide(); // @todo combine active and show/hide functionality for columnLineDropPlaceholder\n          //  this.movePlaceholder.css(\"left\", \"\").removeClass(\"active\");\n\n        }\n      }).on(\"mouseup touchend\", function () {\n        if (intersects) {\n          _this6.handleMouseUp();\n        }\n\n        intersects = false;\n        _this6.dropPosition = null;\n\n        _this6.endAllInteractions();\n\n        _underscore.defer(function () {\n          // Re-enable any disabled sortable areas\n          line.find(\".ui-sortable\").each(function () {\n            if ((0, _jquery)(this).data(\"ui-sortable\")) {\n              (0, _jquery)(this).sortable(\"option\", \"disabled\", false);\n            }\n          });\n        });\n      });\n    }\n    /**\n     * End all current interactions\n     */\n    ;\n\n    _proto.endAllInteractions = function endAllInteractions() {\n      if (this.resizing() === true) {\n        for (; this.interactionLevel > 0; this.interactionLevel--) {\n          _events.trigger(\"stage:interactionStop\", {\n            stageId: this.contentType.stageId\n          });\n        }\n      }\n\n      this.linePositionCache = null;\n      this.dropPosition = null;\n      this.dropPlaceholder.removeClass(\"left right\");\n      this.columnLineDropPlaceholder.removeClass(\"active\");\n      this.columnLineBottomDropPlaceholder.removeClass(\"active\");\n      this.columnLineBottomDropPlaceholder.hide();\n      this.columnLineDropPlaceholder.hide();\n      this.resizing(false);\n      this.resizeMouseDown = null;\n      this.resizeLeftLastColumnShrunk = this.resizeRightLastColumnShrunk = null;\n      this.dropPositions = [];\n      this.unsetResizingColumns(); // Change the cursor back\n\n      (0, _jquery)(\"body\").css(\"cursor\", \"\");\n      this.movePlaceholder.css(\"left\", \"\").removeClass(\"active\");\n      this.resizeGhost.removeClass(\"active\"); // Reset the line positions cache\n\n      this.linePositionCache = null;\n    }\n    /**\n     * Handle the mouse up action, either adding a new column or moving an existing\n     */\n    ;\n\n    _proto.handleMouseUp = function handleMouseUp() {\n      var self = this;\n      var dragColumn = (0, _registry.getDragColumn)();\n\n      if ((this.columnLineDropPlaceholder.hasClass(\"active\") || this.columnLineBottomDropPlaceholder.hasClass(\"active\")) && !dragColumn) {\n        (0, _factory.createColumnLine)(this.contentType.parentContentType, this.resizeUtils.getSmallestColumnWidth(), this.getNewColumnLineIndex()).then(function (columnLine) {\n          _events.trigger(columnLine.config.name + \":dropAfter\", {\n            id: columnLine.id,\n            columnLine: columnLine\n          });\n        });\n        return;\n      }\n\n      if (this.dropOverElement && this.dropPosition) {\n        this.onNewColumnDrop(this.dropPosition);\n        this.dropOverElement = null; // Re-enable the parent disabled sortable instance\n\n        _underscore.defer(function () {\n          (0, _jquery)(\".element-children.ui-sortable-disabled\").each(function () {\n            (0, _jquery)(this).sortable(\"option\", \"disabled\", false);\n          });\n        });\n      }\n\n      var column = (0, _registry.getDragColumn)();\n\n      if (this.isColumnBeingMovedToAnotherColumnLine()) {\n        this.onExistingColumnDrop(this.movePosition);\n      }\n    }\n    /**\n     * Does the current event intersect with the line?\n     *\n     * @param {JQueryEventObject} event\n     * @param {LinePositionCache} groupPosition\n     * @returns {boolean}\n     */\n    ;\n\n    _proto.eventIntersectsLine = function eventIntersectsLine(event, groupPosition) {\n      return event.pageY > groupPosition.top && event.pageY < groupPosition.top + groupPosition.outerHeight && event.pageX > groupPosition.left && event.pageX < groupPosition.left + groupPosition.outerWidth;\n    }\n    /**\n     * Handle a column being dragged around the group\n     *\n     * @param {JQueryEventObject} event\n     * @param {JQuery} line\n     * @param {LinePositionCache} linePosition\n     */\n    ;\n\n    _proto.onDraggingMouseMove = function onDraggingMouseMove(event, line, linePosition) {\n      var dragColumn = (0, _registry.getDragColumn)();\n\n      if (dragColumn) {\n        // If the drop positions haven't been calculated for this line do so now\n        if (this.dropPositions.length === 0) {\n          this.dropPositions = (0, _dragAndDrop.calculateDropPositions)(this.contentType);\n        }\n\n        var columnInstance = dragColumn;\n        var currentX = event.pageX - linePosition.left; // Are we within the same column line or have we ended up over another?\n\n        if (columnInstance.parentContentType === this.contentType && this.startDragEvent) {\n          var dragDirection = event.pageX <= this.startDragEvent.pageX ? \"left\" : \"right\";\n          var adjacentLeftColumn = (0, _resize.getAdjacentColumn)(dragColumn, \"-1\"); // Determine the current move position based on the cursors position and direction of drag\n\n          this.movePosition = this.dropPositions.find(function (position) {\n            return currentX > position.left && currentX < position.right && position.placement === dragDirection && position.affectedColumn !== dragColumn;\n          }); // Differences in the element & event positions cause a right movement to activate on the left column\n\n          if (this.movePosition && dragDirection === \"right\" && this.movePosition.affectedColumn === adjacentLeftColumn) {\n            this.movePosition = null;\n          }\n\n          if (this.movePosition && !this.isNewLinePlaceDropPlaceholderVisible(event, linePosition) && !this.isNewLineBottomPlaceDropPlaceholderVisible(event, linePosition)) {\n            this.dropPlaceholder.removeClass(\"left right\");\n            this.movePlaceholder.css({\n              left: this.movePosition.placement === \"left\" ? this.movePosition.left : \"\",\n              right: this.movePosition.placement === \"right\" ? linePosition.width - this.movePosition.right : \"\",\n              width: dragColumn.preview.element.outerWidth() + \"px\"\n            }).addClass(\"active\");\n          } else {\n            this.movePlaceholder.removeClass(\"active\");\n          }\n        } else {\n          // If we're moving to another column line we utilise the existing drop placeholder\n          this.movePosition = this.dropPositions.find(function (position) {\n            return currentX > position.left && currentX <= position.right && position.canShrink;\n          });\n\n          if (this.movePosition && !this.isNewLinePlaceDropPlaceholderVisible(event, linePosition)) {\n            var classToRemove = this.movePosition.placement === \"left\" ? \"right\" : \"left\";\n            this.movePlaceholder.removeClass(\"active\");\n            this.dropPlaceholder.removeClass(classToRemove).css({\n              left: this.movePosition.placement === \"left\" ? this.movePosition.left : \"\",\n              right: this.movePosition.placement === \"right\" ? linePosition.width - this.movePosition.right : \"\",\n              width: linePosition.width / this.resizeUtils.getGridSize() + \"px\"\n            }).addClass(this.movePosition.placement);\n          } else {\n            this.dropPlaceholder.removeClass(\"left right\");\n          }\n        }\n      }\n    }\n    /**\n     * Handle the resizing on mouse move, we always resize a pair of columns at once\n     *\n     * @param {JQueryEventObject} event\n     * @param {JQuery} group\n     * @param {GroupPositionCache} groupPosition\n     */\n    ;\n\n    _proto.onResizingMouseMove = function onResizingMouseMove(event, group, groupPosition) {\n      var _this7 = this;\n\n      var newColumnWidth;\n\n      if (this.resizeMouseDown) {\n        event.preventDefault();\n        var currentPos = event.pageX;\n        var resizeColumnLeft = this.resizeColumnInstance.preview.element.offset().left;\n        var resizeColumnWidth = this.resizeColumnInstance.preview.element.outerWidth();\n        var resizeHandlePosition = resizeColumnLeft + resizeColumnWidth;\n        var direction = currentPos >= resizeHandlePosition ? \"right\" : \"left\";\n        var adjustedColumn;\n        var modifyColumnInPair; // We need to know if we're modifying the left or right column in the pair\n\n        var usedHistory; // Was the adjusted column pulled from history?\n        // Determine which column in the group should be adjusted for this action\n\n        var _this$resizeUtils$det = this.resizeUtils.determineAdjustedColumn(currentPos, this.resizeColumnInstance, this.resizeHistory);\n\n        adjustedColumn = _this$resizeUtils$det[0];\n        modifyColumnInPair = _this$resizeUtils$det[1];\n        usedHistory = _this$resizeUtils$det[2];\n        // Calculate the ghost width based on mouse position and bounds of allowed sizes\n        var ghostWidth = this.resizeUtils.calculateGhostWidth(groupPosition, currentPos, this.resizeColumnInstance, modifyColumnInPair, this.resizeMaxGhostWidth);\n        this.resizeGhost.width(ghostWidth - 15 + \"px\").addClass(\"active\");\n\n        if (adjustedColumn && this.resizeColumnWidths) {\n          newColumnWidth = this.resizeColumnWidths.find(function (val) {\n            return (0, _resize.comparator)(currentPos, val.position, 35) && val.forColumn === modifyColumnInPair;\n          });\n\n          if (newColumnWidth) {\n            var mainColumn = this.resizeColumnInstance; // If we're using the left data set, we're actually resizing the right column of the group\n\n            if (modifyColumnInPair === \"right\") {\n              mainColumn = (0, _resize.getAdjacentColumn)(this.resizeColumnInstance, \"+1\");\n            } // Ensure we aren't resizing multiple times, also validate the last resize isn't the same as the\n            // one being performed now. This occurs as we re-calculate the column positions on resize, we have\n            // to use the comparator as the calculation may result in slightly different numbers due to rounding\n\n\n            if (this.resizeUtils.getColumnWidth(mainColumn) !== newColumnWidth.width && !(0, _resize.comparator)(this.resizeLastPosition, newColumnWidth.position, 10)) {\n              // If our previous action was to resize the right column in pair, and we're now dragging back\n              // to the right, but have matched a column for the left we need to fix the columns being\n              // affected\n              if (usedHistory && this.resizeLastColumnInPair === \"right\" && direction === \"right\" && newColumnWidth.forColumn === \"left\") {\n                var originalMainColumn = mainColumn;\n                mainColumn = adjustedColumn;\n                adjustedColumn = (0, _resize.getAdjacentColumn)(originalMainColumn, \"+1\");\n              }\n\n              this.recordResizeHistory(usedHistory, direction, adjustedColumn, modifyColumnInPair);\n              this.resizeLastPosition = newColumnWidth.position;\n              this.resizeLastColumnInPair = modifyColumnInPair; // Ensure the adjusted column is marked as resizing to animate correctly\n\n              this.setColumnsAsResizing(mainColumn, adjustedColumn);\n              this.onColumnResize(mainColumn, newColumnWidth.width, adjustedColumn); // Wait for the render cycle to finish from the above resize before re-calculating\n\n              _underscore.defer(function () {\n                // If we do a resize, re-calculate the column widths\n                _this7.resizeColumnWidths = _this7.resizeUtils.determineColumnWidths(_this7.resizeColumnInstance, groupPosition);\n                _this7.resizeMaxGhostWidth = (0, _resize.determineMaxGhostWidth)(_this7.resizeColumnWidths);\n              });\n            }\n          }\n        }\n      }\n    }\n    /**\n     * Unset resizing flag on all child columns\n     */\n    ;\n\n    _proto.unsetResizingColumns = function unsetResizingColumns() {\n      this.contentType.children().forEach(function (column) {\n        column.preview.resizing(false);\n\n        if (column.preview.element) {\n          column.preview.element.css({\n            transition: \"\"\n          });\n        }\n      });\n    }\n    /**\n     *\n     * @param event\n     * @param linePosition\n     * @private\n     */\n    ;\n\n    _proto.isNewLinePlaceDropPlaceholderVisible = function isNewLinePlaceDropPlaceholderVisible(event, linePosition) {\n      var siblings = this.contentType.parentContentType.children();\n      var id = this.contentType.id;\n      var index = 0;\n      siblings.forEach(function (columnLine) {\n        if (columnLine.id === id) {\n          return false;\n        }\n\n        index++;\n      });\n      var draggedColumn = (0, _registry.getDragColumn)(); // show column line drop placeholder only for top column line in a group\n\n      return (this.dropOverElement || draggedColumn) && event.pageY > linePosition.top + 15 && event.pageY < linePosition.top + 15 + this.lineDropperHeight;\n    }\n    /**\n     *\n     * @param event\n     * @param linePosition\n     * @private\n     */\n    ;\n\n    _proto.isNewLineBottomPlaceDropPlaceholderVisible = function isNewLineBottomPlaceDropPlaceholderVisible(event, linePosition) {\n      var draggedColumn = (0, _registry.getDragColumn)();\n      return (this.dropOverElement || draggedColumn) && event.pageY < linePosition.top + 15 + this.element.outerHeight() && event.pageY > linePosition.top + 15 + this.element.outerHeight() - this.lineDropperHeight;\n    }\n    /**\n     *\n     * @param event\n     * @param linePosition\n     * @private\n     */\n    ;\n\n    _proto.isNewColumnDropPlaceholderVisible = function isNewColumnDropPlaceholderVisible(event, linePosition) {\n      var draggedColumn = (0, _registry.getDragColumn)();\n      return (this.dropOverElement || draggedColumn) && event.pageY > linePosition.top + 15 + this.lineDropperHeight && event.pageY < linePosition.top + 15 + linePosition.outerHeight - this.lineDropperHeight;\n    }\n    /**\n     * Handle mouse move events on when dropping elements\n     *\n     * @param {JQueryEventObject} event\n     * @param {JQuery} line\n     * @param {LinePositionCache} linePosition\n     */\n    ;\n\n    _proto.onDroppingMouseMove = function onDroppingMouseMove(event, line, linePosition) {\n      var elementChildrenParent = line.parents(\".element-children\"); // Only initiate this process if we're within the group by a buffer to allow for sortable to function correctly\n\n      if (this.isNewLinePlaceDropPlaceholderVisible(event, linePosition)) {\n        this.dropPosition = null;\n        this.dropPlaceholder.removeClass(\"left right\");\n        this.columnLineDropPlaceholder.addClass(\"active\");\n        this.columnLineDropPlaceholder.show();\n        return this.handleLineDropMouseMove(event, line, linePosition);\n      } else if (this.isNewLineBottomPlaceDropPlaceholderVisible(event, linePosition)) {\n        this.dropPosition = null;\n        this.dropPlaceholder.removeClass(\"left right\");\n        this.columnLineBottomDropPlaceholder.addClass(\"active\");\n        this.columnLineBottomDropPlaceholder.show();\n        return this.handleLineDropMouseMove(event, line, linePosition);\n      } else if (this.dropOverElement) {\n        this.columnLineDropPlaceholder.hide();\n        this.columnLineBottomDropPlaceholder.hide();\n        this.columnLineBottomDropPlaceholder.removeClass(\"active\");\n        this.columnLineDropPlaceholder.removeClass(\"active\");\n      }\n\n      if (this.isNewColumnDropPlaceholderVisible(event, linePosition)) {\n        this.columnLineDropPlaceholder.hide();\n        this.columnLineDropPlaceholder.removeClass(\"active\");\n        this.columnLineBottomDropPlaceholder.hide();\n        this.columnLineBottomDropPlaceholder.removeClass(\"active\");\n        return this.handleColumnDropMouseMove(event, line, linePosition);\n      }\n    }\n    /**\n     *\n     * @param event\n     * @param line\n     * @param linePosition\n     * @private\n     */\n    ;\n\n    _proto.handleLineDropMouseMove = function handleLineDropMouseMove(event, line, linePosition) {\n      var elementChildrenParent = line.parents(\".element-children\"); // Disable the column line sortable instance\n      // Disable the column group sortable instance\n\n      if (elementChildrenParent.data(\"ui-sortable\")) {\n        elementChildrenParent.sortable(\"option\", \"disabled\", true);\n      }\n    }\n    /**\n     *\n     * @param event\n     * @param line\n     * @param linePosition\n     * @private\n     */\n    ;\n\n    _proto.handleColumnDropMouseMove = function handleColumnDropMouseMove(event, line, linePosition) {\n      var elementChildrenParent = line.parents(\".element-children\"); // Only initiate this process if we're within the group by a buffer to allow for sortable to function correctly\n\n      if (this.dropOverElement && event.pageY > linePosition.top + 50 && event.pageY < linePosition.top + linePosition.outerHeight - 50) {\n        // Disable the column line sortable instance\n        if (elementChildrenParent.data(\"ui-sortable\")) {\n          elementChildrenParent.sortable(\"option\", \"disabled\", true);\n        }\n\n        var currentX = event.pageX - linePosition.left;\n        this.dropPosition = this.dropPositions.find(function (position) {\n          return currentX > position.left && currentX <= position.right && position.canShrink;\n        });\n\n        if (this.dropPosition) {\n          this.dropPlaceholder.removeClass(\"left right\").css({\n            left: this.dropPosition.placement === \"left\" ? this.dropPosition.left : \"\",\n            right: this.dropPosition.placement === \"right\" ? linePosition.width - this.dropPosition.right : \"\",\n            width: linePosition.width / this.resizeUtils.getGridSize() + \"px\"\n          }).addClass(this.dropPosition.placement);\n        }\n      } else if (this.dropOverElement) {\n        // Re-enable the column group sortable instance\n        if (elementChildrenParent.data(\"ui-sortable\")) {\n          elementChildrenParent.sortable(\"option\", \"disabled\", false);\n        }\n\n        this.dropPosition = null;\n        this.dropPlaceholder.removeClass(\"left right\");\n      }\n    }\n    /**\n     * Cache the groups positions\n     *\n     * @param {JQuery} line\n     * @returns {}\n     */\n    ;\n\n    _proto.getLinePosition = function getLinePosition(line) {\n      if (!this.linePositionCache) {\n        this.linePositionCache = {\n          top: line.offset().top,\n          left: line.offset().left,\n          width: line.width(),\n          height: line.height(),\n          outerWidth: line.outerWidth(),\n          outerHeight: line.outerHeight()\n        };\n      }\n\n      return this.linePositionCache;\n    }\n    /**\n     * Init the droppable functionality for new columns\n     *\n     * @param {JQuery} line\n     */\n    ;\n\n    _proto.initDroppable = function initDroppable(line) {\n      var self = this;\n      var headStyles;\n      line.droppable({\n        deactivate: function deactivate() {\n          self.dropOverElement = null;\n          self.dropPlaceholder.removeClass(\"left right\");\n\n          _underscore.defer(function () {\n            // Re-enable the column group sortable instance & all children sortable instances\n            line.parents(\".element-children\").each(function () {\n              if ((0, _jquery)(this).data(\"ui-sortable\")) {\n                (0, _jquery)(this).sortable(\"option\", \"disabled\", false);\n              }\n            });\n          });\n        },\n        activate: function activate() {\n          if ((0, _registry2.getDraggedContentTypeConfig)() === _config.getContentTypeConfig(\"column-group\")) {\n            var _ref;\n\n            line.find(\".ui-sortable\").each(function () {\n              if ((0, _jquery)(this).data(\"ui-sortable\")) {\n                (0, _jquery)(this).sortable(\"option\", \"disabled\", true);\n              }\n            });\n            var classes = [\".pagebuilder-content-type.pagebuilder-column .pagebuilder-drop-indicator\", \".pagebuilder-content-type.pagebuilder-column .empty-container .content-type-container:before\"]; // Ensure we don't display any drop indicators inside the column\n\n            headStyles = (0, _createStylesheet.createStyleSheet)((_ref = {}, _ref[classes.join(\", \")] = {\n              display: \"none!important\"\n            }, _ref));\n            document.head.appendChild(headStyles);\n          } else if (headStyles) {\n            headStyles.remove();\n            headStyles = null;\n          }\n        },\n        drop: function drop() {\n          self.dropPositions = [];\n          self.dropPlaceholder.removeClass(\"left right\");\n        },\n        out: function out() {\n          self.dropOverElement = null;\n          self.dropPlaceholder.removeClass(\"left right\");\n        },\n        over: function over() {\n          // Is the element currently being dragged a column group?\n          if ((0, _registry2.getDraggedContentTypeConfig)() === _config.getContentTypeConfig(\"column-group\") || (0, _registry2.getDraggedContentTypeConfig)() === _config.getContentTypeConfig(\"column\")) {\n            // Always calculate drop positions when an element is dragged over\n            var ownContentType = self.contentType;\n            self.dropPositions = (0, _dragAndDrop.calculateDropPositions)(ownContentType);\n            self.dropOverElement = true;\n          } else {\n            self.dropOverElement = null;\n          }\n        }\n      });\n    }\n    /**\n     * Spread any empty space across the other columns when a column is removed\n     *\n     * @param {number} removedIndex\n     */\n    ;\n\n    _proto.spreadWidth = function spreadWidth(removedIndex) {\n      if (this.contentType.children().length === 0) {\n        return;\n      }\n\n      var availableWidth = 100 - this.resizeUtils.getColumnsWidth();\n      var formattedAvailableWidth = (0, _resize.getRoundedColumnWidth)(availableWidth);\n      var totalChildColumns = this.contentType.children().length;\n      var allowedColumnWidths = [];\n      var spreadAcross = 1;\n      var spreadAmount;\n\n      for (var i = this.resizeUtils.getGridSize(); i > 0; i--) {\n        allowedColumnWidths.push((0, _resize.getRoundedColumnWidth)(100 / this.resizeUtils.getGridSize() * i));\n      } // Determine how we can spread the empty space across the columns\n\n\n      for (var _i = totalChildColumns; _i > 0; _i--) {\n        var potentialWidth = Math.floor(formattedAvailableWidth / _i);\n\n        for (var _iterator = _createForOfIteratorHelperLoose(allowedColumnWidths), _step; !(_step = _iterator()).done;) {\n          var width = _step.value;\n\n          if (potentialWidth === Math.floor(width)) {\n            spreadAcross = _i;\n            spreadAmount = formattedAvailableWidth / _i;\n            break;\n          }\n        }\n\n        if (spreadAmount) {\n          break;\n        }\n      } // Let's spread the width across the columns\n\n\n      for (var _i2 = 1; _i2 <= spreadAcross; _i2++) {\n        var columnToModify = void 0; // As the original column has been removed from the array, check the new index for a column\n\n        if (removedIndex <= this.contentType.children().length && typeof this.contentType.children()[removedIndex] !== \"undefined\") {\n          columnToModify = this.contentType.children()[removedIndex];\n        }\n\n        if (!columnToModify && removedIndex - _i2 >= 0 && typeof this.contentType.children()[removedIndex - _i2] !== \"undefined\") {\n          columnToModify = this.contentType.children()[removedIndex - _i2];\n        }\n\n        if (columnToModify) {\n          (0, _resize.updateColumnWidth)(columnToModify, this.resizeUtils.getColumnWidth(columnToModify) + spreadAmount);\n        }\n      }\n    }\n    /**\n     * Register a resize handle within a child column\n     *\n     * @param {ContentTypeCollectionInterface<ColumnPreview>} column\n     * @param {JQuery} handle\n     */\n    ;\n\n    _proto.registerResizeHandle = function registerResizeHandle(column, handle) {\n      var _this8 = this;\n\n      handle.off(\"mousedown touchstart\");\n      handle.on(\"mousedown touchstart\", function (event) {\n        event.preventDefault();\n\n        var groupPosition = _this8.getLinePosition(_this8.element);\n\n        _this8.resizing(true); // @ts-ignore\n\n\n        _this8.resizeColumnInstance = column;\n        _this8.resizeColumnWidths = _this8.resizeUtils.determineColumnWidths(_this8.resizeColumnInstance, groupPosition);\n        _this8.resizeMaxGhostWidth = (0, _resize.determineMaxGhostWidth)(_this8.resizeColumnWidths); // Force the cursor to resizing\n\n        (0, _jquery)(\"body\").css(\"cursor\", \"col-resize\"); // Reset the resize history\n\n        _this8.resizeHistory = {\n          left: [],\n          right: []\n        };\n        _this8.resizeLastPosition = null;\n        _this8.resizeMouseDown = true;\n        ++_this8.interactionLevel;\n\n        _events.trigger(\"stage:interactionStart\", {\n          stageId: _this8.contentType.stageId\n        });\n      });\n    }\n    /**\n     * Add Columns to the current Column Line\n     *\n     * @returns {Promise<ContentTypeCollectionInterface>}\n     */\n    ;\n\n    _proto.createColumns = function createColumns() {\n      var _this9 = this;\n\n      var defaultGridSize = (0, _gridSize.getDefaultGridSize)();\n      var col1Width = (Math.ceil(defaultGridSize / 2) * 100 / defaultGridSize).toFixed(Math.round(100 / defaultGridSize) !== 100 / defaultGridSize ? 8 : 0);\n      Promise.all([(0, _contentTypeFactory)(_config.getContentTypeConfig(\"column\"), this.contentType, this.contentType.stageId, {\n        width: col1Width + \"%\"\n      }), (0, _contentTypeFactory)(_config.getContentTypeConfig(\"column\"), this.contentType, this.contentType.stageId, {\n        width: 100 - parseFloat(col1Width) + \"%\"\n      })]).then(function (columns) {\n        _this9.contentType.addChild(columns[0], 0);\n\n        _this9.contentType.addChild(columns[1], 1);\n\n        _this9.fireMountEvent(_this9.contentType, columns[0], columns[1]);\n      });\n    }\n    /**\n     * Record the resizing history for this action\n     *\n     * @param {string} usedHistory\n     * @param {string} direction\n     * @param {ContentTypeCollectionInterface<ColumnPreview>} adjustedColumn\n     * @param {string} modifyColumnInPair\n     */\n    ;\n\n    _proto.recordResizeHistory = function recordResizeHistory(usedHistory, direction, adjustedColumn, modifyColumnInPair) {\n      if (usedHistory) {\n        this.resizeHistory[usedHistory].pop();\n      }\n\n      this.resizeHistory[direction].push({\n        adjustedColumn: adjustedColumn,\n        modifyColumnInPair: modifyColumnInPair\n      });\n    }\n    /**\n     * Set columns in the group as resizing\n     *\n     * @param {Array<ContentTypeCollectionInterface<ColumnPreview>>} columns\n     */\n    ;\n\n    _proto.setColumnsAsResizing = function setColumnsAsResizing() {\n      for (var _len = arguments.length, columns = new Array(_len), _key = 0; _key < _len; _key++) {\n        columns[_key] = arguments[_key];\n      }\n\n      columns.forEach(function (column) {\n        column.preview.resizing(true);\n        column.preview.element.css({\n          transition: \"width 350ms ease-in-out\"\n        });\n      });\n    }\n    /**\n     * Handle a column being resized\n     *\n     * @param {ContentTypeCollectionInterface<ColumnPreview>} column\n     * @param {number} width\n     * @param {ContentTypeCollectionInterface<ColumnPreview>} adjustedColumn\n     */\n    ;\n\n    _proto.onColumnResize = function onColumnResize(column, width, adjustedColumn) {\n      this.resizeUtils.resizeColumn(column, width, adjustedColumn);\n    }\n    /**\n     * Fire the mount event for content types\n     *\n     * @param {ContentTypeInterface[]} contentTypes\n     */\n    ;\n\n    _proto.fireMountEvent = function fireMountEvent() {\n      for (var _len2 = arguments.length, contentTypes = new Array(_len2), _key2 = 0; _key2 < _len2; _key2++) {\n        contentTypes[_key2] = arguments[_key2];\n      }\n\n      contentTypes.forEach(function (contentType) {\n        _events.trigger(\"contentType:mountAfter\", {\n          id: contentType.id,\n          contentType: contentType\n        });\n\n        _events.trigger(contentType.config.name + \":mountAfter\", {\n          id: contentType.id,\n          contentType: contentType\n        });\n      });\n    }\n    /**\n     * Remove self if we contain no children\n     */\n    ;\n\n    _proto.removeIfEmpty = function removeIfEmpty() {\n      if (this.contentType.children().length === 0) {\n        this.contentType.parentContentType.removeChild(this.contentType);\n        return;\n      }\n    };\n\n    _proto.getNewColumnLineIndex = function getNewColumnLineIndex() {\n      var index = -1;\n      var self = this;\n\n      for (var _iterator2 = _createForOfIteratorHelperLoose(this.contentType.parentContentType.children()), _step2; !(_step2 = _iterator2()).done;) {\n        var child = _step2.value;\n        index++;\n\n        if (child.id === self.contentType.id) {\n          break;\n        }\n      }\n\n      if (this.columnLineBottomDropPlaceholder.hasClass(\"active\")) {\n        // show the bottom drop placeholder\n        index++;\n      }\n\n      return index;\n    };\n\n    _proto.isColumnBeingMovedToAnotherColumnLine = function isColumnBeingMovedToAnotherColumnLine() {\n      var column = (0, _registry.getDragColumn)();\n\n      if (!column) {\n        // if no move position, column is not being moved.\n        return false;\n      }\n\n      if (column.parentContentType !== this.contentType) {\n        // if the parent content type is not same as this column line, column is being moved to new column line\n        return true;\n      }\n\n      if (column.parentContentType === this.contentType && (this.columnLineDropPlaceholder.hasClass(\"active\") || this.columnLineBottomDropPlaceholder.hasClass(\"active\"))) {\n        // since new column line drop placeholder is visible, column move should introduce a new column line\n        return true;\n      }\n\n      return false;\n    };\n\n    return Preview;\n  }(_previewCollection);\n\n  return Preview;\n});\n//# sourceMappingURL=preview.js.map","Magento_PageBuilder/js/content-type/divider/preview.js":"/*eslint-disable */\n/* jscs:disable */\n\nfunction _inheritsLoose(subClass, superClass) { subClass.prototype = Object.create(superClass.prototype); subClass.prototype.constructor = subClass; _setPrototypeOf(subClass, superClass); }\n\nfunction _setPrototypeOf(o, p) { _setPrototypeOf = Object.setPrototypeOf || function _setPrototypeOf(o, p) { o.__proto__ = p; return o; }; return _setPrototypeOf(o, p); }\n\ndefine([\"Magento_PageBuilder/js/content-type-menu/hide-show-option\", \"Magento_PageBuilder/js/content-type/preview\"], function (_hideShowOption, _preview) {\n  /**\n   * Copyright \u00a9 Magento, Inc. All rights reserved.\n   * See COPYING.txt for license details.\n   */\n\n  /**\n   * @api\n   */\n  var Preview = /*#__PURE__*/function (_preview2) {\n    \"use strict\";\n\n    _inheritsLoose(Preview, _preview2);\n\n    function Preview() {\n      return _preview2.apply(this, arguments) || this;\n    }\n\n    var _proto = Preview.prototype;\n\n    /**\n     * Return an array of options\n     *\n     * @returns {OptionsInterface}\n     */\n    _proto.retrieveOptions = function retrieveOptions() {\n      var options = _preview2.prototype.retrieveOptions.call(this);\n\n      options.hideShow = new _hideShowOption({\n        preview: this,\n        icon: _hideShowOption.showIcon,\n        title: _hideShowOption.showText,\n        action: this.onOptionVisibilityToggle,\n        classes: [\"hide-show-content-type\"],\n        sort: 40\n      });\n      return options;\n    };\n\n    return Preview;\n  }(_preview);\n\n  return Preview;\n});\n//# sourceMappingURL=preview.js.map","Magento_PageBuilder/js/content-type/tab-item/preview.js":"/*eslint-disable */\n/* jscs:disable */\n\nfunction _extends() { _extends = Object.assign || function (target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i]; for (var key in source) { if (Object.prototype.hasOwnProperty.call(source, key)) { target[key] = source[key]; } } } return target; }; return _extends.apply(this, arguments); }\n\nfunction _inheritsLoose(subClass, superClass) { subClass.prototype = Object.create(superClass.prototype); subClass.prototype.constructor = subClass; _setPrototypeOf(subClass, superClass); }\n\nfunction _setPrototypeOf(o, p) { _setPrototypeOf = Object.setPrototypeOf || function _setPrototypeOf(o, p) { o.__proto__ = p; return o; }; return _setPrototypeOf(o, p); }\n\ndefine([\"jquery\", \"knockout\", \"Magento_PageBuilder/js/content-type-menu/conditional-remove-option\", \"Magento_PageBuilder/js/content-type/preview-collection\"], function (_jquery, _knockout, _conditionalRemoveOption, _previewCollection) {\n  /**\n   * Copyright \u00a9 Magento, Inc. All rights reserved.\n   * See COPYING.txt for license details.\n   */\n\n  /**\n   * @api\n   */\n  var Preview = /*#__PURE__*/function (_previewCollection2) {\n    \"use strict\";\n\n    _inheritsLoose(Preview, _previewCollection2);\n\n    function Preview() {\n      var _this;\n\n      for (var _len = arguments.length, args = new Array(_len), _key = 0; _key < _len; _key++) {\n        args[_key] = arguments[_key];\n      }\n\n      _this = _previewCollection2.call.apply(_previewCollection2, [this].concat(args)) || this;\n      _this.fieldsToIgnoreOnRemove = [\"tab_name\"];\n      return _this;\n    }\n\n    var _proto = Preview.prototype;\n\n    /**\n     * Get background image url base on the viewport.\n     *\n     * @returns {string}\n     */\n    _proto.getBackgroundImage = function getBackgroundImage() {\n      var mobileImage = this.contentType.dataStore.get(\"mobile_image\");\n      var desktopImage = this.contentType.dataStore.get(\"background_image\");\n      var backgroundImage = this.viewport() === \"mobile\" && mobileImage.length ? mobileImage : desktopImage;\n      return backgroundImage.length ? \"url(\\\"\" + backgroundImage[0].url + \"\\\")\" : \"none\";\n    }\n    /**\n     * Force the focus on the clicked tab header\n     *\n     * @param {number} index\n     * @param {JQueryEventObject} event\n     */\n    ;\n\n    _proto.onClick = function onClick(index, event) {\n      (0, _jquery)(event.currentTarget).find(\"[contenteditable]\").focus();\n      event.stopPropagation();\n    }\n    /**\n     * On focus in set the focused button\n     *\n     * @param {number} index\n     * @param {Event} event\n     */\n    ;\n\n    _proto.onFocusIn = function onFocusIn(index, event) {\n      var parentPreview = this.contentType.parentContentType.preview;\n\n      if (parentPreview.focusedTab() !== index) {\n        parentPreview.setFocusedTab(index, true);\n      }\n    }\n    /**\n     * On focus out set the focused tab to null\n     *\n     * @param {number} index\n     * @param {JQueryEventObject} event\n     */\n    ;\n\n    _proto.onFocusOut = function onFocusOut(index, event) {\n      if (this.contentType && this.contentType.parentContentType) {\n        var parentPreview = this.contentType.parentContentType.preview;\n\n        var unfocus = function unfocus() {\n          window.getSelection().removeAllRanges();\n          parentPreview.focusedTab(null);\n        };\n\n        if (event.relatedTarget && _jquery.contains(parentPreview.wrapperElement, event.relatedTarget)) {\n          // Verify the focus was not onto the options menu\n          if ((0, _jquery)(event.relatedTarget).closest(\".pagebuilder-options\").length > 0) {\n            unfocus();\n          } else {\n            // Have we moved the focus onto another button in the current group?\n            var tabItem = _knockout.dataFor(event.relatedTarget);\n\n            if (tabItem && tabItem.contentType && tabItem.contentType.parentContentType && tabItem.contentType.parentContentType.id === this.contentType.parentContentType.id) {\n              var newIndex = tabItem.contentType.parentContentType.children().indexOf(tabItem.contentType);\n              parentPreview.setFocusedTab(newIndex, true);\n            } else {\n              unfocus();\n            }\n          }\n        } else if (parentPreview.focusedTab() === index) {\n          unfocus();\n        }\n      }\n    }\n    /**\n     * Get the options instance\n     *\n     * @returns {OptionsInterface}\n     */\n    ;\n\n    _proto.retrieveOptions = function retrieveOptions() {\n      var options = _previewCollection2.prototype.retrieveOptions.call(this);\n\n      delete options.move;\n      delete options.title;\n      options.remove = new _conditionalRemoveOption(_extends({}, options.remove.config, {\n        preview: this\n      }));\n      return options;\n    };\n\n    return Preview;\n  }(_previewCollection);\n\n  return Preview;\n});\n//# sourceMappingURL=preview.js.map","Magento_PageBuilder/js/content-type/slide/preview.js":"/*eslint-disable */\n/* jscs:disable */\n\nfunction _extends() { _extends = Object.assign || function (target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i]; for (var key in source) { if (Object.prototype.hasOwnProperty.call(source, key)) { target[key] = source[key]; } } } return target; }; return _extends.apply(this, arguments); }\n\nfunction _inheritsLoose(subClass, superClass) { subClass.prototype = Object.create(superClass.prototype); subClass.prototype.constructor = subClass; _setPrototypeOf(subClass, superClass); }\n\nfunction _setPrototypeOf(o, p) { _setPrototypeOf = Object.setPrototypeOf || function _setPrototypeOf(o, p) { o.__proto__ = p; return o; }; return _setPrototypeOf(o, p); }\n\ndefine([\"jarallax\", \"jarallaxVideo\", \"jquery\", \"knockout\", \"mage/translate\", \"Magento_PageBuilder/js/events\", \"mageUtils\", \"underscore\", \"vimeoWrapper\", \"Magento_PageBuilder/js/content-type-menu/conditional-remove-option\", \"Magento_PageBuilder/js/uploader\", \"Magento_PageBuilder/js/utils/delay-until\", \"Magento_PageBuilder/js/utils/editor\", \"Magento_PageBuilder/js/utils/nesting-link-dialog\", \"Magento_PageBuilder/js/utils/nesting-widget-dialog\", \"Magento_PageBuilder/js/wysiwyg/factory\", \"Magento_PageBuilder/js/content-type/preview\"], function (_jarallax, _jarallaxVideo, _jquery, _knockout, _translate, _events, _mageUtils, _underscore, _vimeoWrapper, _conditionalRemoveOption, _uploader, _delayUntil, _editor, _nestingLinkDialog, _nestingWidgetDialog, _factory, _preview) {\n  /**\n   * Copyright \u00a9 Magento, Inc. All rights reserved.\n   * See COPYING.txt for license details.\n   */\n\n  /**\n   * @api\n   */\n  var Preview = /*#__PURE__*/function (_preview2) {\n    \"use strict\";\n\n    _inheritsLoose(Preview, _preview2);\n\n    function Preview() {\n      var _this;\n\n      for (var _len = arguments.length, args = new Array(_len), _key = 0; _key < _len; _key++) {\n        args[_key] = arguments[_key];\n      }\n\n      _this = _preview2.call.apply(_preview2, [this].concat(args)) || this;\n      _this.buttonPlaceholder = (0, _translate)(\"Edit Button Text\");\n      _this.slideName = _knockout.observable();\n      _this.wysiwygDeferred = _jquery.Deferred();\n      _this.slideChanged = true;\n      _this.handledDoubleClick = false;\n      _this.videoUpdateProperties = [\"background_type\", \"video_fallback_image\", \"video_lazy_load\", \"video_loop\", \"video_play_only_visible\", \"video_source\"];\n      _this.buildJarallax = _underscore.debounce(function () {\n        // Destroy all instances of the plugin prior\n        try {\n          jarallax(_this.wrapper, \"destroy\");\n        } catch (e) {// Failure of destroying is acceptable\n        }\n\n        if (_this.wrapper && _this.wrapper.dataset.backgroundType === \"video\" && _this.wrapper.dataset.videoSrc.length) {\n          _underscore.defer(function () {\n            // Build Parallax on elements with the correct class\n            var viewportElement = (0, _jquery)(\"<div/>\").addClass(\"jarallax-viewport-element\");\n            (0, _jquery)(_this.wrapper).append((0, _jquery)(\".jarallax-viewport-element\", _this.wrapper).length ? \"\" : viewportElement);\n            jarallax(_this.wrapper, {\n              videoSrc: _this.wrapper.dataset.videoSrc,\n              imgSrc: _this.wrapper.dataset.videoFallbackSrc,\n              videoLoop: _this.contentType.dataStore.get(\"video_loop\") === \"true\",\n              speed: 1,\n              videoPlayOnlyVisible: _this.contentType.dataStore.get(\"video_play_only_visible\") === \"true\",\n              elementInViewport: (0, _jquery)(\".jarallax-viewport-element\", _this.wrapper),\n              videoLazyLoading: _this.contentType.dataStore.get(\"video_lazy_load\") === \"true\"\n            }); // @ts-ignore\n\n            if (_this.wrapper.jarallax && _this.wrapper.jarallax.video) {\n              // @ts-ignore\n              _this.wrapper.jarallax.video.on(\"started\", function () {\n                // @ts-ignore\n                if (_this.wrapper.jarallax && _this.wrapper.jarallax.$video) {\n                  // @ts-ignore\n                  _this.wrapper.jarallax.$video.style.visibility = \"visible\";\n                }\n              });\n            }\n          });\n        }\n      }, 50);\n      return _this;\n    }\n\n    var _proto = Preview.prototype;\n\n    /**\n     * Get background image url base on the viewport.\n     *\n     * @returns {string}\n     */\n    _proto.getBackgroundImage = function getBackgroundImage() {\n      var mobileImage = this.contentType.dataStore.get(\"mobile_image\");\n      var desktopImage = this.contentType.dataStore.get(\"background_image\");\n      var backgroundImage = this.viewport() === \"mobile\" && mobileImage.length ? mobileImage : desktopImage;\n      return backgroundImage.length ? \"url(\\\"\" + backgroundImage[0].url + \"\\\")\" : \"none\";\n    }\n    /**\n     * @param {HTMLElement} element\n     */\n    ;\n\n    _proto.afterRenderWysiwyg = function afterRenderWysiwyg(element) {\n      var _this2 = this;\n\n      this.element = element;\n      element.id = this.contentType.id + \"-editor\"; // Set the innerHTML manually so we don't upset Knockout & TinyMCE\n\n      element.innerHTML = this.data.content.html();\n      this.contentType.dataStore.subscribe(function () {\n        // If we're not focused into TinyMCE inline, update the value when it changes in the data store\n        if (!_this2.wysiwyg || _this2.wysiwyg && _this2.wysiwyg.getAdapter().id !== (0, _editor.getActiveEditor)().id) {\n          element.innerHTML = _this2.data.content.html();\n        }\n      }, \"content\");\n      /**\n       * afterRenderWysiwyg is called whenever Knockout causes a DOM re-render. This occurs frequently within Slider\n       * due to Slick's inability to perform a refresh with Knockout managing the DOM. Due to this the original\n       * WYSIWYG instance will be detached from this slide and we need to re-initialize on click.\n       */\n\n      this.wysiwyg = null;\n    }\n    /**\n     * Set state based on overlay mouseover event for the preview\n     */\n    ;\n\n    _proto.onMouseOverWrapper = function onMouseOverWrapper() {\n      // Triggers the visibility of the overlay content to show\n      if (this.data.main.attributes()[\"data-show-overlay\"] === \"hover\") {\n        this.data.overlay.attributes(Object.assign(this.data.overlay.attributes(), {\n          \"data-background-color-orig\": this.data.overlay.style().backgroundColor\n        }));\n        this.data.overlay.style(Object.assign(this.data.overlay.style(), {\n          backgroundColor: this.data.overlay.attributes()[\"data-overlay-color\"]\n        }));\n      }\n\n      if (this.data.main.attributes()[\"data-show-button\"] === \"hover\") {\n        this.data.button.style(Object.assign(this.data.button.style(), {\n          opacity: 1,\n          visibility: \"visible\"\n        }));\n      }\n    }\n    /**\n     * Set state based on overlay mouseout event for the preview\n     */\n    ;\n\n    _proto.onMouseOutWrapper = function onMouseOutWrapper() {\n      // Triggers the visibility of the overlay content to hide\n      if (this.data.main.attributes()[\"data-show-overlay\"] === \"hover\") {\n        this.data.overlay.style(Object.assign(this.data.overlay.style(), {\n          backgroundColor: this.data.overlay.attributes()[\"data-background-color-orig\"]\n        }));\n      }\n\n      if (this.data.main.attributes()[\"data-show-button\"] === \"hover\") {\n        this.data.button.style(Object.assign(this.data.button.style(), {\n          opacity: 0,\n          visibility: \"hidden\"\n        }));\n      }\n    }\n    /**\n     * Get the options instance\n     *\n     * @returns {OptionsInterface}\n     */\n    ;\n\n    _proto.retrieveOptions = function retrieveOptions() {\n      var options = _preview2.prototype.retrieveOptions.call(this);\n\n      delete options.move;\n      options.remove = new _conditionalRemoveOption(_extends({}, options.remove.config, {\n        preview: this\n      }));\n      return options;\n    }\n    /**\n     * Get registry callback reference to uploader UI component\n     *\n     * @returns {Uploader}\n     */\n    ;\n\n    _proto.getUploader = function getUploader() {\n      var initialImageValue = this.contentType.dataStore.get(this.config.additional_data.uploaderConfig.dataScope, \"\"); // Create uploader\n\n      return new _uploader(\"imageuploader_\" + this.contentType.id, this.config.additional_data.uploaderConfig, this.contentType.id, this.contentType.dataStore, initialImageValue);\n    }\n    /**\n     * Makes WYSIWYG active\n     *\n     * @param {Preview} preview\n     * @param {JQueryEventObject} event\n     * @returns {Boolean}\n     */\n    ;\n\n    _proto.activateEditor = function activateEditor(preview, event) {\n      var _this3 = this;\n\n      if (this.element && !this.wysiwyg) {\n        var bookmark = (0, _editor.createBookmark)(event);\n        (0, _editor.lockImageSize)(this.element);\n        this.element.removeAttribute(\"contenteditable\");\n\n        _underscore.defer(function () {\n          _this3.initWysiwygFromClick(true).then(function () {\n            return (0, _delayUntil)(function () {\n              // We no longer need to handle double click once it's initialized\n              _this3.handledDoubleClick = true;\n\n              _this3.wysiwygDeferred.resolve();\n\n              (0, _editor.moveToBookmark)(bookmark);\n              (0, _editor.unlockImageSize)(_this3.element);\n            }, function () {\n              return _this3.element.classList.contains(\"mce-edit-focus\");\n            }, 10);\n          }).catch(function (error) {\n            // If there's an error with init of WYSIWYG editor push into the console to aid support\n            console.error(error);\n          });\n        });\n      } else if (this.element && this.wysiwyg) {\n        var element = this.element || this.textarea;\n\n        if (event.currentTarget !== event.target && event.target !== element && !element.contains(event.target)) {\n          return;\n        }\n\n        element.focus();\n      }\n    }\n    /**\n     * If a user double clicks prior to initializing TinyMCE, forward the event\n     *\n     * @param preview\n     * @param event\n     */\n    ;\n\n    _proto.handleDoubleClick = function handleDoubleClick(preview, event) {\n      var _this4 = this;\n\n      if (this.handledDoubleClick) {\n        return;\n      }\n\n      event.preventDefault();\n      var targetIndex = (0, _editor.findNodeIndex)(this.element, event.target.tagName, event.target);\n      this.handledDoubleClick = true;\n      this.wysiwygDeferred.then(function () {\n        var target = document.getElementById(event.target.id);\n\n        if (!target) {\n          target = (0, _editor.getNodeByIndex)(_this4.element, event.target.tagName, targetIndex);\n        }\n\n        if (target) {\n          target.dispatchEvent((0, _editor.createDoubleClickEvent)());\n        }\n      });\n    }\n    /**\n     * Stop event to prevent execution of action when editing textarea.\n     *\n     * @param {Preview} preview\n     * @param {JQueryEventObject} event\n     * @returns {Boolean}\n     */\n    ;\n\n    _proto.stopEvent = function stopEvent(preview, event) {\n      event.stopPropagation();\n      return true;\n    }\n    /**\n     * @returns {Boolean}\n     */\n    ;\n\n    _proto.isWysiwygSupported = function isWysiwygSupported() {\n      return (0, _editor.isWysiwygSupported)();\n    }\n    /**\n     * @param {HTMLTextAreaElement} element\n     */\n    ;\n\n    _proto.initTextarea = function initTextarea(element) {\n      var _this5 = this;\n\n      this.textarea = element; // set initial value of textarea based on data store\n\n      this.textarea.value = this.contentType.dataStore.get(\"content\");\n      this.adjustTextareaHeightBasedOnScrollHeight(); // Update content in our stage preview textarea after its slideout counterpart gets updated\n\n      _events.on(\"form:\" + this.contentType.id + \":saveAfter\", function () {\n        _this5.textarea.value = _this5.contentType.dataStore.get(\"content\");\n\n        _this5.adjustTextareaHeightBasedOnScrollHeight();\n      });\n    }\n    /**\n     * Save current value of textarea in data store\n     */\n    ;\n\n    _proto.onTextareaKeyUp = function onTextareaKeyUp() {\n      this.adjustTextareaHeightBasedOnScrollHeight();\n      this.contentType.dataStore.set(\"content\", this.textarea.value);\n    }\n    /**\n     * Start stage interaction on textarea blur\n     */\n    ;\n\n    _proto.onTextareaFocus = function onTextareaFocus() {\n      (0, _jquery)(this.textarea).closest(\".pagebuilder-content-type\").addClass(\"pagebuilder-toolbar-active\");\n\n      _events.trigger(\"stage:interactionStart\");\n    }\n    /**\n     * Stop stage interaction on textarea blur\n     */\n    ;\n\n    _proto.onTextareaBlur = function onTextareaBlur() {\n      (0, _jquery)(this.textarea).closest(\".pagebuilder-content-type\").removeClass(\"pagebuilder-toolbar-active\");\n\n      _events.trigger(\"stage:interactionStop\");\n    }\n    /**\n     * Init WYSIWYG on load\n     *\n     * @param element\n     * @deprecated please use activateEditor & initWysiwygFromClick\n     */\n    ;\n\n    _proto.initWysiwyg = function initWysiwyg(element) {\n      this.element = element;\n      element.id = this.contentType.id + \"-editor\";\n      this.wysiwyg = null;\n      return this.initWysiwygFromClick(true);\n    }\n    /**\n     * Init the WYSIWYG\n     *\n     * @param {boolean} focus Should wysiwyg focus after initialization?\n     * @returns Promise\n     */\n    ;\n\n    _proto.initWysiwygFromClick = function initWysiwygFromClick(focus) {\n      var _this6 = this;\n\n      if (focus === void 0) {\n        focus = false;\n      }\n\n      if (this.wysiwyg) {\n        return Promise.resolve(this.wysiwyg);\n      }\n\n      var wysiwygConfig = this.config.additional_data.wysiwygConfig.wysiwygConfigData;\n\n      if (focus) {\n        wysiwygConfig.adapter.settings.auto_focus = this.element.id;\n\n        wysiwygConfig.adapter.settings.init_instance_callback = function (editor) {\n          editor.on(\"blur\", function () {\n            (0, _nestingLinkDialog)(_this6.contentType.dataStore, _this6.wysiwyg, \"content\", \"link_url\");\n            (0, _nestingWidgetDialog)(_this6.contentType.dataStore, _this6.wysiwyg, \"content\", \"link_url\");\n          });\n\n          _underscore.defer(function () {\n            _this6.element.blur();\n\n            _this6.element.focus();\n          });\n        };\n      }\n\n      return (0, _factory)(this.contentType.id, this.element.id, this.config.name, wysiwygConfig, this.contentType.dataStore, \"content\", this.contentType.stageId).then(function (wysiwyg) {\n        _this6.wysiwyg = wysiwyg;\n        return wysiwyg;\n      });\n    }\n    /**\n     * Init the parallax element\n     *\n     * @param {HTMLElement} element\n     */\n    ;\n\n    _proto.initParallax = function initParallax(element) {\n      var _this7 = this;\n\n      this.wrapper = element;\n\n      _underscore.defer(function () {\n        _this7.buildJarallax();\n      });\n    }\n    /**\n     * Destroy jarallax instance.\n     */\n    ;\n\n    _proto.destroy = function destroy() {\n      _preview2.prototype.destroy.call(this);\n\n      if (this.wrapper) {\n        jarallax(this.wrapper, \"destroy\");\n      }\n    }\n    /**\n     * @inheritDoc\n     */\n    ;\n\n    _proto.bindEvents = function bindEvents() {\n      var _this8 = this;\n\n      this.contentType.dataStore.subscribe(function (state) {\n        var sanitizedContent = (0, _editor.removeReservedHtmlAttributes)(state.content);\n\n        if (sanitizedContent !== state.content) {\n          state.content = sanitizedContent;\n        }\n      }, \"content\");\n\n      _preview2.prototype.bindEvents.call(this);\n\n      _events.on(\"slide:mountAfter\", function (args) {\n        if (args.id === _this8.contentType.id) {\n          _this8.buildJarallax();\n\n          _this8.isSnapshot.subscribe(function (value) {\n            _this8.changeUploaderControlsVisibility();\n          });\n\n          _this8.changeUploaderControlsVisibility();\n        }\n      });\n\n      _events.on(this.config.name + \":\" + this.contentType.id + \":updateAfter\", function () {\n        var dataStore = _this8.contentType.dataStore.getState();\n\n        var imageObject = dataStore[_this8.config.additional_data.uploaderConfig.dataScope][0] || {};\n\n        _events.trigger(\"image:\" + _this8.contentType.id + \":assignAfter\", imageObject);\n      }); // Remove wysiwyg before assign new instance.\n\n\n      _events.on(\"childContentType:sortUpdate\", function (args) {\n        if (args.instance.id === _this8.contentType.parentContentType.id) {\n          _this8.wysiwyg = null;\n        }\n      });\n\n      _events.on(this.config.name + \":mountAfter\", function (args) {\n        if (args.id === _this8.contentType.id) {\n          // Update the display label for the slide\n          var slider = _this8.contentType.parentContentType;\n\n          _this8.displayLabel((0, _translate)(\"Slide \" + (slider.children().indexOf(_this8.contentType) + 1)));\n\n          slider.children.subscribe(function (children) {\n            var index = children.indexOf(_this8.contentType);\n\n            _this8.displayLabel((0, _translate)(\"Slide \" + (slider.children().indexOf(_this8.contentType) + 1)));\n          });\n        }\n      });\n\n      _events.on(this.config.name + \":renderAfter\", function (args) {\n        if (args.id === _this8.contentType.id) {\n          var slider = _this8.contentType.parentContentType;\n          (0, _jquery)(slider.preview.element).on(\"beforeChange\", function () {\n            _this8.slideChanged = false;\n          });\n          (0, _jquery)(slider.preview.element).on(\"afterChange\", function (event, slick) {\n            (0, _jquery)(slick.$slides).each(function (index, slide) {\n              var videoSlide = slide.querySelector(\".jarallax\");\n\n              if (videoSlide) {\n                jarallax(videoSlide, \"onScroll\");\n              }\n            });\n            _this8.slideChanged = true;\n          });\n        }\n      });\n\n      this.contentType.dataStore.subscribe(function (data) {\n        _this8.slideName(data.slide_name);\n\n        if (_this8.shouldUpdateVideo(data)) {\n          _this8.buildJarallax();\n        }\n      });\n\n      _events.on(\"image:\" + this.contentType.id + \":uploadAfter\", function () {\n        _this8.contentType.dataStore.set(\"background_type\", \"image\");\n      });\n\n      _events.on(\"stage:\" + this.contentType.stageId + \":viewportChangeAfter\", function (args) {\n        if (_this8.contentType.dataStore.get(\"background_type\") === \"video\") {\n          _this8.buildJarallax();\n        }\n      });\n    }\n    /**\n     * Change uploader controls visibility\n     */\n    ;\n\n    _proto.changeUploaderControlsVisibility = function changeUploaderControlsVisibility() {\n      var _this9 = this;\n\n      this.getUploader().getUiComponent()(function (uploader) {\n        uploader.visibleControls = !_this9.isSnapshot();\n      });\n    }\n    /**\n     * Update image data inside data store\n     *\n     * @param {Array} data - list of each files' data\n     */\n    ;\n\n    _proto.onImageUploaded = function onImageUploaded(data) {\n      this.contentType.dataStore.set(this.config.additional_data.uploaderConfig.dataScope, data);\n    }\n    /**\n     * Adjust textarea's height based on scrollHeight\n     */\n    ;\n\n    _proto.adjustTextareaHeightBasedOnScrollHeight = function adjustTextareaHeightBasedOnScrollHeight() {\n      this.textarea.style.height = \"\";\n      var scrollHeight = this.textarea.scrollHeight;\n      var minHeight = parseInt((0, _jquery)(this.textarea).css(\"min-height\"), 10);\n\n      if (scrollHeight === minHeight) {\n        // leave height at 'auto'\n        return;\n      }\n\n      (0, _jquery)(this.textarea).height(scrollHeight);\n    }\n    /**\n     * Check if video options has been updated.\n     *\n     * @return boolean\n     */\n    ;\n\n    _proto.shouldUpdateVideo = function shouldUpdateVideo(state) {\n      var _this10 = this;\n\n      var previousState = this.contentType.dataStore.getPreviousState();\n\n      var diff = _mageUtils.compare(previousState, state).changes;\n\n      if (diff.length > 0) {\n        return _underscore.some(diff, function (element) {\n          if (element.name === \"video_fallback_image\") {\n            return (!_underscore.isEmpty(previousState.video_fallback_image) && previousState.video_fallback_image) !== (!_underscore.isEmpty(state.video_fallback_image) && state.video_fallback_image);\n          }\n\n          return _this10.videoUpdateProperties.indexOf(element.name) !== -1;\n        });\n      }\n    };\n\n    return Preview;\n  }(_preview);\n\n  return Preview;\n});\n//# sourceMappingURL=preview.js.map","Magento_PageBuilder/js/content-type/slide/appearance/default/widget.js":"/**\n * Copyright \u00a9 Magento, Inc. All rights reserved.\n * See COPYING.txt for license details.\n */\ndefine([\n    'jquery',\n    'underscore',\n    'Magento_PageBuilder/js/widget/show-on-hover',\n    'Magento_PageBuilder/js/widget/video-background'\n], function ($, _, showOnHover, videoBackground) {\n    'use strict';\n\n    return function (config, element) {\n        var videoElement = element[0].querySelector('[data-background-type=video]'),\n            viewportElement = document.createElement('div'),\n            $slider = null;\n\n        showOnHover(config);\n\n        if (videoElement) {\n            $slider = $(element).closest('[data-content-type=slider]');\n            viewportElement.classList.add('jarallax-viewport-element');\n            videoElement.setAttribute('data-element-in-viewport', '.jarallax-viewport-element');\n            videoElement.appendChild(viewportElement);\n            videoBackground(config, videoElement);\n\n            if ($slider.data('afterChangeIsSet')) {\n                return;\n            }\n\n            $slider.on('afterChange init', function () {\n                var videoSlides = $slider[0].querySelectorAll('.jarallax');\n\n                _.each(videoSlides, function (videoSlide) {\n                    videoSlide.jarallax && videoSlide.jarallax.onScroll();\n                });\n            });\n            $slider.data('afterChangeIsSet', true);\n        }\n    };\n});\n","Magento_PageBuilder/js/content-type/slide/wysiwyg/tinymce/component-initializer.js":"/*eslint-disable */\n/* jscs:disable */\ndefine([\"jquery\", \"mage/adminhtml/wysiwyg/events\", \"Magento_PageBuilder/js/utils/delay-until\"], function (_jquery, _events, _delayUntil) {\n  /**\n   * Copyright \u00a9 Magento, Inc. All rights reserved.\n   * See COPYING.txt for license details.\n   */\n  var ComponentInitializer = /*#__PURE__*/function () {\n    \"use strict\";\n\n    function ComponentInitializer() {\n      this.sliderSelector = \".slick-list\";\n      this.sliderContentSelector = \".slick-track\";\n      this.slideSelector = \".slick-slide\";\n      this.activeSlideSelector = \".slick-current\";\n      this.slideChanging = false;\n    }\n\n    var _proto = ComponentInitializer.prototype;\n\n    /**\n     * Initialize the instance\n     *\n     * @param {Wysiwyg} wysiwyg\n     */\n    _proto.initialize = function initialize(wysiwyg) {\n      var _this = this;\n\n      this.$element = (0, _jquery)(\"#\" + wysiwyg.elementId);\n      this.config = wysiwyg.config;\n      var tinymce = wysiwyg.getAdapter();\n      tinymce.eventBus.attachEventHandler(_events.afterFocus, this.onFocus.bind(this));\n      tinymce.eventBus.attachEventHandler(_events.afterBlur, this.onBlur.bind(this)); // Update our KO pointer to the active slide on change\n\n      (0, _jquery)(this.$element.parents(this.sliderSelector)).parent().on(\"beforeChange\", function () {\n        _this.slideChanging = true;\n      }).on(\"afterChange\", function () {\n        _this.slideChanging = false;\n      });\n    }\n    /**\n     * Event handler for wysiwyg focus\n     * Fixes z-index issues for tabs and column\n     * Fixes slider\n     */\n    ;\n\n    _proto.onFocus = function onFocus() {\n      var _this2 = this;\n\n      var $slider = (0, _jquery)(this.$element.parents(this.sliderSelector));\n      var sliderContent = this.$element.parents(this.sliderContentSelector)[0];\n      var $notActiveSlides = $slider.find(this.slideSelector).not(this.activeSlideSelector); // If there isn't enough room for a left-aligned toolbar, right align it\n\n      if ((0, _jquery)(window).width() < this.$element.offset().left + parseInt(this.config.adapter_config.minToolbarWidth, 10)) {\n        this.$element.addClass(\"_right-aligned-toolbar\");\n      } else {\n        this.$element.removeClass(\"_right-aligned-toolbar\");\n      }\n\n      (0, _delayUntil)(function () {\n        _jquery.each(_this2.config.adapter_config.parentSelectorsToUnderlay, function (i, selector) {\n          _this2.$element.closest(selector).css(\"z-index\", 100);\n        }); // Disable slider keyboard events and fix problem with overflow hidden issue\n\n\n        $slider.parent().slick(\"slickSetOption\", \"accessibility\", false);\n        _this2.autoplay = $slider.parent().slick(\"slickGetOption\", \"autoplay\");\n        _this2.fade = $slider.parent().slick(\"slickGetOption\", \"fade\");\n\n        if (_this2.autoplay) {\n          $slider.parent().slick(\"slickPause\");\n        }\n\n        if (!_this2.fade) {\n          $notActiveSlides.css(\"display\", \"none\");\n        }\n\n        _this2.sliderTransform = sliderContent.style.transform;\n        sliderContent.style.transform = \"\";\n        $slider.css(\"overflow\", \"visible\");\n      }, function () {\n        return !_this2.slideChanging;\n      }, 10);\n    }\n    /**\n     * Event handler for wysiwyg blur\n     * Fixes z-index issues for tabs and column\n     * Fixes slider\n     */\n    ;\n\n    _proto.onBlur = function onBlur() {\n      var _this3 = this;\n\n      var $slider = (0, _jquery)(this.$element.parents(this.sliderSelector));\n      var sliderContent = this.$element.parents(this.sliderContentSelector)[0];\n      var $notActiveSlides = $slider.find(this.slideSelector).not(this.activeSlideSelector);\n\n      _jquery.each(this.config.adapter_config.parentSelectorsToUnderlay, function (i, selector) {\n        _this3.$element.closest(selector).css(\"z-index\", \"\");\n      }); // Enable slider keyboard events and revert changes made in onFocus\n\n\n      $slider.css(\"overflow\", \"hidden\");\n      sliderContent.style.transform = this.sliderTransform;\n      $notActiveSlides.css(\"display\", \"block\");\n      $slider.parent().slick(\"slickSetOption\", \"accessibility\", true);\n\n      if (this.autoplay) {\n        $slider.parent().slick(\"slickPlay\");\n      }\n    };\n\n    return ComponentInitializer;\n  }();\n\n  return ComponentInitializer;\n});\n//# sourceMappingURL=component-initializer.js.map","Magento_PageBuilder/js/content-type/slide/wysiwyg/tinymce/config-modifier.js":"/*eslint-disable */\n/* jscs:disable */\ndefine([], function () {\n  /**\n   * Copyright \u00a9 Magento, Inc. All rights reserved.\n   * See COPYING.txt for license details.\n   */\n  var ConfigModifier = /*#__PURE__*/function () {\n    \"use strict\";\n\n    function ConfigModifier() {}\n\n    var _proto = ConfigModifier.prototype;\n\n    /**\n     * Initialize the config\n     *\n     * @param {String} contentTypeId\n     * @param {Object} config\n     */\n    _proto.modify = function modify(contentTypeId, config) {\n      if (config.adapter_config.mode === \"inline\") {\n        config.adapter.settings.fixed_toolbar_container = \"#\" + contentTypeId + \" .wysiwyg-container\";\n      }\n    };\n\n    return ConfigModifier;\n  }();\n\n  return ConfigModifier;\n});\n//# sourceMappingURL=config-modifier.js.map","Magento_PageBuilder/js/content-type/slide/converter/style/margins.js":"/*eslint-disable */\n/* jscs:disable */\ndefine([\"underscore\", \"Magento_PageBuilder/js/utils/object\"], function (_underscore, _object) {\n  /**\n   * Copyright \u00a9 Magento, Inc. All rights reserved.\n   * See COPYING.txt for license details.\n   */\n  var Margins = /*#__PURE__*/function () {\n    \"use strict\";\n\n    function Margins() {}\n\n    var _proto = Margins.prototype;\n\n    /**\n     * Convert value to internal format\n     *\n     * @param value string\n     * @returns {string | object}\n     */\n    _proto.fromDom = function fromDom(value) {\n      if (undefined !== value.margin) {\n        return {\n          margin: {\n            top: value.margin.top.replace(\"px\", \"\"),\n            left: value.margin.left.replace(\"px\", \"\"),\n            right: value.margin.right.replace(\"px\", \"\"),\n            bottom: value.margin.bottom.replace(\"px\", \"\")\n          }\n        };\n      }\n\n      return {};\n    }\n    /**\n     * Convert value to knockout format\n     *\n     * @param {string} name\n     * @param {DataObject} data\n     * @returns {string | object}\n     */\n    ;\n\n    _proto.toDom = function toDom(name, data) {\n      var result = {};\n      var value = (0, _object.get)(data, name);\n\n      if (value && _underscore.isString(value)) {\n        value = JSON.parse(value);\n      }\n\n      if (value && undefined !== value.margin) {\n        result.marginLeft = value.margin.left ? value.margin.left + \"px\" : \"\";\n        result.marginTop = value.margin.top ? value.margin.top + \"px\" : \"\";\n        result.marginRight = value.margin.right ? value.margin.right + \"px\" : \"\";\n        result.marginBottom = value.margin.bottom ? value.margin.bottom + \"px\" : \"\";\n      }\n\n      return result;\n    };\n\n    return Margins;\n  }();\n\n  return Margins;\n});\n//# sourceMappingURL=margins.js.map","Magento_PageBuilder/js/content-type/slide/converter/style/button-visibility.js":"/*eslint-disable */\n/* jscs:disable */\ndefine([], function () {\n  /**\n   * Copyright \u00a9 Magento, Inc. All rights reserved.\n   * See COPYING.txt for license details.\n   */\n  var ButtonVisibility = /*#__PURE__*/function () {\n    \"use strict\";\n\n    function ButtonVisibility() {}\n\n    var _proto = ButtonVisibility.prototype;\n\n    /**\n     * Convert value to internal format\n     *\n     * @param value string\n     * @returns {string | object}\n     */\n    _proto.fromDom = function fromDom(value) {\n      return value;\n    }\n    /**\n     * Convert value to knockout format\n     *\n     * @param {string} name\n     * @param {DataObject} data\n     * @returns {string | object}\n     */\n    ;\n\n    _proto.toDom = function toDom(name, data) {\n      return data.show_button === \"always\" ? \"visible\" : \"hidden\";\n    };\n\n    return ButtonVisibility;\n  }();\n\n  return ButtonVisibility;\n});\n//# sourceMappingURL=button-visibility.js.map","Magento_PageBuilder/js/content-type/slide/converter/style/button-opacity.js":"/*eslint-disable */\n/* jscs:disable */\ndefine([], function () {\n  /**\n   * Copyright \u00a9 Magento, Inc. All rights reserved.\n   * See COPYING.txt for license details.\n   */\n  var ButtonOpacity = /*#__PURE__*/function () {\n    \"use strict\";\n\n    function ButtonOpacity() {}\n\n    var _proto = ButtonOpacity.prototype;\n\n    /**\n     * Convert value to internal format\n     *\n     * @param value string\n     * @returns {string | object}\n     */\n    _proto.fromDom = function fromDom(value) {\n      return value;\n    }\n    /**\n     * Convert value to knockout format\n     *\n     * @param {string} name\n     * @param {DataObject} data\n     * @returns {string | object}\n     */\n    ;\n\n    _proto.toDom = function toDom(name, data) {\n      return data.show_button === \"always\" ? \"1\" : \"0\";\n    };\n\n    return ButtonOpacity;\n  }();\n\n  return ButtonOpacity;\n});\n//# sourceMappingURL=button-opacity.js.map","Magento_PageBuilder/js/content-type/slide/converter/style/paddings.js":"/*eslint-disable */\n/* jscs:disable */\ndefine([\"underscore\", \"Magento_PageBuilder/js/utils/object\"], function (_underscore, _object) {\n  /**\n   * Copyright \u00a9 Magento, Inc. All rights reserved.\n   * See COPYING.txt for license details.\n   */\n  var Paddings = /*#__PURE__*/function () {\n    \"use strict\";\n\n    function Paddings() {}\n\n    var _proto = Paddings.prototype;\n\n    /**\n     * Convert value to internal format\n     *\n     * @param value string\n     * @returns {string | object}\n     */\n    _proto.fromDom = function fromDom(value) {\n      var result = {};\n\n      if (undefined !== value.padding) {\n        result.padding = {\n          bottom: value.padding.bottom.replace(\"px\", \"\"),\n          left: value.padding.left.replace(\"px\", \"\"),\n          right: value.padding.right.replace(\"px\", \"\"),\n          top: value.padding.top.replace(\"px\", \"\")\n        };\n      }\n\n      if (result.padding.right[0] === \"c\") {\n        result.padding.right = parseInt(result.padding.right.split(\"+\")[1].trim(), 10);\n      }\n\n      if (result.padding.left[0] === \"c\") {\n        result.padding.left = parseInt(result.padding.left.split(\"+\")[1].trim(), 10);\n      }\n\n      return result;\n    }\n    /**\n     * Convert value to knockout format\n     *\n     * @param {string} name\n     * @param {DataObject} data\n     * @returns {string | object}\n     */\n    ;\n\n    _proto.toDom = function toDom(name, data) {\n      var result = {};\n      var value = (0, _object.get)(data, name);\n\n      if (value && _underscore.isString(value)) {\n        value = JSON.parse(value);\n      }\n\n      if (value && undefined !== value.padding) {\n        result.paddingLeft = value.padding.left ? value.padding.left + \"px\" : \"\";\n        result.paddingTop = value.padding.top ? value.padding.top + \"px\" : \"\";\n        result.paddingRight = value.padding.right ? value.padding.right + \"px\" : \"\";\n        result.paddingBottom = value.padding.bottom ? value.padding.bottom + \"px\" : \"\";\n      }\n\n      return result;\n    };\n\n    return Paddings;\n  }();\n\n  return Paddings;\n});\n//# sourceMappingURL=paddings.js.map","Magento_PageBuilder/js/content-type/slide/converter/style/overlay-background-color.js":"/*eslint-disable */\n/* jscs:disable */\ndefine([\"Magento_PageBuilder/js/utils/object\"], function (_object) {\n  /**\n   * Copyright \u00a9 Magento, Inc. All rights reserved.\n   * See COPYING.txt for license details.\n   */\n  var OverlayBackgroundColor = /*#__PURE__*/function () {\n    \"use strict\";\n\n    function OverlayBackgroundColor() {}\n\n    var _proto = OverlayBackgroundColor.prototype;\n\n    /**\n     * Convert value to internal format\n     *\n     * @param value string\n     * @returns {string | object}\n     */\n    _proto.fromDom = function fromDom(value) {\n      return value;\n    }\n    /**\n     * Convert value to knockout format\n     *\n     * @param name string\n     * @param data Object\n     * @returns {string | object}\n     */\n    ;\n\n    _proto.toDom = function toDom(name, data) {\n      var value = (0, _object.get)(data, name);\n\n      if (data.show_overlay === \"always\" && value !== \"\" && value !== undefined) {\n        return value;\n      }\n\n      return \"transparent\";\n    };\n\n    return OverlayBackgroundColor;\n  }();\n\n  return OverlayBackgroundColor;\n});\n//# sourceMappingURL=overlay-background-color.js.map","Magento_PageBuilder/js/content-type/slide/converter/attribute/overlay-color.js":"/*eslint-disable */\n/* jscs:disable */\ndefine([], function () {\n  /**\n   * Copyright \u00a9 Magento, Inc. All rights reserved.\n   * See COPYING.txt for license details.\n   */\n  var OverlayColor = /*#__PURE__*/function () {\n    \"use strict\";\n\n    function OverlayColor() {}\n\n    var _proto = OverlayColor.prototype;\n\n    /**\n     * Convert value to internal format\n     *\n     * @param value string\n     * @returns {string | object}\n     */\n    _proto.fromDom = function fromDom(value) {\n      return value === \"transparent\" ? \"\" : value;\n    }\n    /**\n     * Convert value to knockout format\n     *\n     * @param {string} name\n     * @param {DataObject} data\n     * @returns {string | object}\n     */\n    ;\n\n    _proto.toDom = function toDom(name, data) {\n      if (data.overlay_color) {\n        return data.overlay_color.toString();\n      }\n\n      return \"\";\n    };\n\n    return OverlayColor;\n  }();\n\n  return OverlayColor;\n});\n//# sourceMappingURL=overlay-color.js.map","Magento_PageBuilder/js/content-type/row/preview.js":"/*eslint-disable */\n/* jscs:disable */\n\nfunction _extends() { _extends = Object.assign || function (target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i]; for (var key in source) { if (Object.prototype.hasOwnProperty.call(source, key)) { target[key] = source[key]; } } } return target; }; return _extends.apply(this, arguments); }\n\nfunction _assertThisInitialized(self) { if (self === void 0) { throw new ReferenceError(\"this hasn't been initialised - super() hasn't been called\"); } return self; }\n\nfunction _inheritsLoose(subClass, superClass) { subClass.prototype = Object.create(superClass.prototype); subClass.prototype.constructor = subClass; _setPrototypeOf(subClass, superClass); }\n\nfunction _setPrototypeOf(o, p) { _setPrototypeOf = Object.setPrototypeOf || function _setPrototypeOf(o, p) { o.__proto__ = p; return o; }; return _setPrototypeOf(o, p); }\n\ndefine([\"jarallax\", \"jarallaxVideo\", \"jquery\", \"knockout\", \"Magento_PageBuilder/js/events\", \"Magento_PageBuilder/js/resource/resize-observer/ResizeObserver\", \"underscore\", \"vimeoWrapper\", \"Magento_PageBuilder/js/content-type-menu/hide-show-option\", \"Magento_PageBuilder/js/content-type/preview-collection\"], function (_jarallax, _jarallaxVideo, _jquery, _knockout, _events, _ResizeObserver, _underscore, _vimeoWrapper, _hideShowOption, _previewCollection) {\n  /**\n   * Copyright \u00a9 Magento, Inc. All rights reserved.\n   * See COPYING.txt for license details.\n   */\n\n  /**\n   * @api\n   */\n  var Preview = /*#__PURE__*/function (_previewCollection2) {\n    \"use strict\";\n\n    _inheritsLoose(Preview, _previewCollection2);\n\n    /**\n     * Debounce and defer the init of Jarallax\n     *\n     * @type {(() => void) & _.Cancelable}\n     */\n\n    /**\n     * @param {ContentTypeInterface} contentType\n     * @param {ContentTypeConfigInterface} config\n     * @param {ObservableUpdater} observableUpdater\n     */\n    function Preview(contentType, config, observableUpdater) {\n      var _this;\n\n      _this = _previewCollection2.call(this, contentType, config, observableUpdater) || this;\n      _this.wrapClass = _knockout.observable(false);\n      _this.buildJarallax = _underscore.debounce(function () {\n        // Destroy all instances of the plugin prior\n        try {\n          jarallax(_this.element, \"destroy\");\n        } catch (e) {// Failure of destroying is acceptable\n        }\n\n        if (_this.element && (0, _jquery)(_this.element).hasClass(\"jarallax\") && _this.contentType.dataStore.get(\"background_type\") !== \"video\" && _this.contentType.dataStore.get(\"background_image\").length) {\n          _underscore.defer(function () {\n            // Build Parallax on elements with the correct class\n            var parallaxSpeed = Number.parseFloat(_this.contentType.dataStore.get(\"parallax_speed\"));\n            jarallax(_this.element, {\n              imgPosition: _this.contentType.dataStore.get(\"background_position\") || \"50% 50%\",\n              imgRepeat: _this.contentType.dataStore.get(\"background_repeat\") || \"no-repeat\",\n              imgSize: _this.contentType.dataStore.get(\"background_size\") || \"cover\",\n              speed: !isNaN(parallaxSpeed) ? parallaxSpeed : 0.5\n            });\n            jarallax(_this.element, \"onResize\");\n          });\n        }\n\n        if (_this.element && _this.element.dataset.backgroundType === \"video\" && _this.element.dataset.videoSrc.length) {\n          var parallaxSpeed = _this.contentType.dataStore.get(\"enable_parallax\") === \"1\" ? Number.parseFloat(_this.contentType.dataStore.get(\"parallax_speed\")) : 1;\n\n          _underscore.defer(function () {\n            // Build Parallax on elements with the correct class\n            jarallax(_this.element, {\n              videoSrc: _this.element.dataset.videoSrc,\n              imgSrc: _this.element.dataset.videoFallbackSrc,\n              videoLoop: _this.contentType.dataStore.get(\"video_loop\") === \"true\",\n              speed: !isNaN(parallaxSpeed) ? parallaxSpeed : 0.5,\n              videoPlayOnlyVisible: _this.contentType.dataStore.get(\"video_play_only_visible\") === \"true\",\n              videoLazyLoading: _this.contentType.dataStore.get(\"video_lazy_load\") === \"true\"\n            }); // @ts-ignore\n\n            if (_this.element.jarallax && _this.element.jarallax.video) {\n              // @ts-ignore\n              _this.element.jarallax.video.on(\"started\", function () {\n                // @ts-ignore\n                if (_this.element.jarallax.$video) {\n                  // @ts-ignore\n                  _this.element.jarallax.$video.style.visibility = \"visible\";\n                }\n              });\n            }\n          });\n        }\n      }, 50);\n\n      _this.contentType.dataStore.subscribe(_this.buildJarallax);\n\n      _events.on(\"row:mountAfter\", function (args) {\n        if (args.id === _this.contentType.id) {\n          _this.buildJarallax();\n        }\n      });\n\n      _events.on(\"contentType:mountAfter\", function (args) {\n        if (args.contentType.parentContentType && args.contentType.parentContentType.id === _this.contentType.id) {\n          _this.buildJarallax();\n        }\n      });\n\n      _events.on(\"stage:\" + _this.contentType.stageId + \":fullScreenModeChangeAfter\", _this.toggleFullScreen.bind(_assertThisInitialized(_this)));\n\n      _events.on(\"stage:\" + _this.contentType.stageId + \":viewportChangeAfter\", function (args) {\n        _this.buildJarallax();\n      });\n\n      return _this;\n    }\n    /**\n     * Get background image url base on the viewport.\n     *\n     * @returns {string}\n     */\n\n\n    var _proto = Preview.prototype;\n\n    _proto.getBackgroundImage = function getBackgroundImage() {\n      var mobileImage = this.contentType.dataStore.get(\"mobile_image\");\n      var desktopImage = this.contentType.dataStore.get(\"background_image\");\n      var backgroundImage = this.viewport() === \"mobile\" && mobileImage.length ? mobileImage : desktopImage;\n      return backgroundImage.length ? \"url(\\\"\" + backgroundImage[0].url + \"\\\")\" : \"none\";\n    }\n    /**\n     * Toggle fullscreen\n     */\n    ;\n\n    _proto.toggleFullScreen = function toggleFullScreen() {\n      if ((0, _jquery)(this.element).hasClass(\"jarallax\")) {\n        this.buildJarallax();\n      }\n    }\n    /**\n     * Use the conditional remove to disable the option when the content type has a single child\n     *\n     * @returns {OptionsInterface}\n     */\n    ;\n\n    _proto.retrieveOptions = function retrieveOptions() {\n      var options = _previewCollection2.prototype.retrieveOptions.call(this);\n\n      options.hideShow = new _hideShowOption({\n        preview: this,\n        icon: _hideShowOption.showIcon,\n        title: _hideShowOption.showText,\n        action: this.onOptionVisibilityToggle,\n        classes: [\"hide-show-content-type\"],\n        sort: 40\n      });\n      return options;\n    }\n    /**\n     * Init the parallax element\n     *\n     * @param {HTMLElement} element\n     */\n    ;\n\n    _proto.initParallax = function initParallax(element) {\n      var _this2 = this;\n\n      this.element = element;\n\n      _underscore.defer(function () {\n        _this2.buildJarallax();\n      });\n\n      new _ResizeObserver(function () {\n        // Observe for resizes of the element and force jarallax to display correctly\n        if ((0, _jquery)(_this2.element).hasClass(\"jarallax\") && _this2.contentType.dataStore.get(\"background_image\").length) {\n          jarallax(_this2.element, \"onResize\");\n          jarallax(_this2.element, \"onScroll\");\n        }\n      }).observe(this.element);\n    }\n    /**\n     * Destroy jarallax instance.\n     */\n    ;\n\n    _proto.destroy = function destroy() {\n      _previewCollection2.prototype.destroy.call(this);\n\n      if (this.element) {\n        jarallax(this.element, \"destroy\");\n      }\n    }\n    /**\n     * Return selected element styles\n     *\n     * @param element\n     * @param styleProperties\n     */\n    ;\n\n    _proto.getStyle = function getStyle(element, styleProperties) {\n      var stylesObject = element.style();\n      return styleProperties.reduce(function (obj, key) {\n        var _extends2;\n\n        return _extends({}, obj, (_extends2 = {}, _extends2[key] = stylesObject[key], _extends2));\n      }, {});\n    }\n    /**\n     * Return element styles without selected\n     *\n     * @param element\n     * @param styleProperties\n     */\n    ;\n\n    _proto.getStyleWithout = function getStyleWithout(element, styleProperties) {\n      var stylesObject = element.style();\n      return Object.keys(stylesObject).filter(function (key) {\n        return !styleProperties.includes(key);\n      }).reduce(function (obj, key) {\n        var _extends3;\n\n        return _extends({}, obj, (_extends3 = {}, _extends3[key] = stylesObject[key], _extends3));\n      }, {});\n    };\n\n    return Preview;\n  }(_previewCollection);\n\n  return Preview;\n});\n//# sourceMappingURL=preview.js.map","Magento_PageBuilder/js/content-type/row/appearance/default/widget-mixin.js":"/**\n * Copyright \u00a9 Magento, Inc. All rights reserved.\n * See COPYING.txt for license details.\n */\ndefine(['underscore', 'jquery', 'Magento_PageBuilder/js/events'], function (_, $, events) {\n    'use strict';\n\n    return function (target) {\n        return function (config, element) {\n            var result = target(config, element),\n                stageId = $(element).parents('[data-role=\"pagebuilder-stage\"]').attr('id'),\n                $element = $(element);\n\n            if ($element.data('appearance') === 'contained') {\n                $element = $(element).find('[data-element=\"inner\"]');\n            }\n\n            // If Parallax isn't enabled, let's not attach the event\n            if ($element.data('enableParallax') !== 1) {\n                return result;\n            }\n\n            // Listen for full screen events and destroy and rebuild jarallax\n            events.on('stage:' + stageId + ':fullScreenModeChangeAfter', function () {\n                _.delay(function () {\n                    $element.jarallax('destroy');\n                    target(config, element);\n                }, 350);\n            });\n\n            return result;\n        };\n    };\n});\n","Magento_PageBuilder/js/content-type/row/appearance/default/widget.js":"/**\n * Copyright \u00a9 Magento, Inc. All rights reserved.\n * See COPYING.txt for license details.\n */\ndefine([\n    'jquery',\n    'Magento_PageBuilder/js/widget/video-background',\n    'jarallax'\n], function ($, videoBackground) {\n    'use strict';\n\n    return function (config, element) {\n        var $element = $(element),\n            parallaxSpeed = null,\n            elementStyle = null;\n\n        if ($element.data('appearance') === 'contained') {\n            $element = $(element).find('[data-element=\"inner\"]');\n        }\n\n        if ($element.data('background-type') === 'video') {\n            videoBackground(config, $element[0]);\n\n            return;\n        }\n\n        if ($element.data('enableParallax') !== 1) {\n            return;\n        }\n\n        $element.addClass('jarallax');\n        $element.attr('data-jarallax', '');\n\n        parallaxSpeed = parseFloat($element.data('parallaxSpeed'));\n        elementStyle = window.getComputedStyle($element[0]);\n\n        window.jarallax($element[0], {\n            imgPosition: elementStyle.backgroundPosition || '50% 50%',\n            imgRepeat: elementStyle.backgroundRepeat || 'no-repeat',\n            imgSize: elementStyle.backgroundSize || 'cover',\n            speed: !isNaN(parallaxSpeed) ? parallaxSpeed : 0.5\n        });\n    };\n});\n","Magento_PageBuilder/js/content-type/row/converter/style/margins.js":"/*eslint-disable */\n/* jscs:disable */\ndefine([\"underscore\", \"Magento_PageBuilder/js/utils/object\"], function (_underscore, _object) {\n  /**\n   * Copyright \u00a9 Magento, Inc. All rights reserved.\n   * See COPYING.txt for license details.\n   */\n  var Margins = /*#__PURE__*/function () {\n    \"use strict\";\n\n    function Margins() {}\n\n    var _proto = Margins.prototype;\n\n    /**\n     * @param {string} value\n     * @returns {Object | string}\n     */\n    _proto.fromDom = function fromDom(value) {\n      return value;\n    }\n    /**\n     * Convert value to knockout format\n     *\n     * @param {string} name\n     * @param {DataObject} data\n     * @returns {string | object}\n     */\n    ;\n\n    _proto.toDom = function toDom(name, data) {\n      var result = {};\n      var value = (0, _object.get)(data, name);\n\n      if (value && _underscore.isString(value)) {\n        value = JSON.parse(value);\n      }\n\n      if (value && undefined !== value.margin) {\n        result.marginLeft = value.margin.left ? value.margin.left + \"px\" : \"\";\n        result.marginTop = value.margin.top ? value.margin.top + \"px\" : \"\";\n        result.marginRight = value.margin.right ? value.margin.right + \"px\" : \"\";\n        result.marginBottom = (parseInt(value.margin.bottom, 10) > 0 ? value.margin.bottom : 1) + \"px\";\n      }\n\n      return result;\n    };\n\n    return Margins;\n  }();\n\n  return Margins;\n});\n//# sourceMappingURL=margins.js.map","Magento_PageBuilder/js/content-type/row/converter/style/paddings.js":"/*eslint-disable */\n/* jscs:disable */\ndefine([\"underscore\", \"Magento_PageBuilder/js/utils/object\"], function (_underscore, _object) {\n  /**\n   * Copyright \u00a9 Magento, Inc. All rights reserved.\n   * See COPYING.txt for license details.\n   */\n  var Paddings = /*#__PURE__*/function () {\n    \"use strict\";\n\n    function Paddings() {}\n\n    var _proto = Paddings.prototype;\n\n    /**\n     * @param {string} value\n     * @returns {Object | string}\n     */\n    _proto.fromDom = function fromDom(value) {\n      return value;\n    }\n    /**\n     * Convert value to knockout format\n     *\n     * @param {string} name\n     * @param {DataObject} data\n     * @returns {string | object}\n     */\n    ;\n\n    _proto.toDom = function toDom(name, data) {\n      var result = {};\n      var value = (0, _object.get)(data, name);\n\n      if (value && _underscore.isString(value)) {\n        value = JSON.parse(value);\n      }\n\n      if (value && undefined !== value.padding) {\n        result.paddingLeft = value.padding.left ? value.padding.left + \"px\" : \"\";\n        result.paddingTop = value.padding.top ? value.padding.top + \"px\" : \"\";\n        result.paddingRight = value.padding.right ? value.padding.right + \"px\" : \"\";\n        result.paddingBottom = value.padding.bottom ? value.padding.bottom + \"px\" : \"\";\n      }\n\n      return result;\n    };\n\n    return Paddings;\n  }();\n\n  return Paddings;\n});\n//# sourceMappingURL=paddings.js.map","Magento_PageBuilder/js/content-type/heading/preview.js":"/*eslint-disable */\n/* jscs:disable */\n\nfunction _assertThisInitialized(self) { if (self === void 0) { throw new ReferenceError(\"this hasn't been initialised - super() hasn't been called\"); } return self; }\n\nfunction _inheritsLoose(subClass, superClass) { subClass.prototype = Object.create(superClass.prototype); subClass.prototype.constructor = subClass; _setPrototypeOf(subClass, superClass); }\n\nfunction _setPrototypeOf(o, p) { _setPrototypeOf = Object.setPrototypeOf || function _setPrototypeOf(o, p) { o.__proto__ = p; return o; }; return _setPrototypeOf(o, p); }\n\ndefine([\"jquery\", \"Magento_PageBuilder/js/events\", \"underscore\", \"Magento_PageBuilder/js/content-type-menu/hide-show-option\", \"Magento_PageBuilder/js/content-type-toolbar\", \"Magento_PageBuilder/js/utils/promise-deferred\", \"Magento_PageBuilder/js/content-type/preview\"], function (_jquery, _events, _underscore, _hideShowOption, _contentTypeToolbar, _promiseDeferred, _preview) {\n  /**\n   * Copyright \u00a9 Magento, Inc. All rights reserved.\n   * See COPYING.txt for license details.\n   */\n\n  /**\n   * @api\n   */\n  var Preview = /*#__PURE__*/function (_preview2) {\n    \"use strict\";\n\n    _inheritsLoose(Preview, _preview2);\n\n    /**\n     * @param {ContentTypeInterface} contentType\n     * @param {ContentTypeConfigInterface} config\n     * @param {ObservableUpdater} observableUpdater\n     */\n    function Preview(contentType, config, observableUpdater) {\n      var _this;\n\n      _this = _preview2.call(this, contentType, config, observableUpdater) || this;\n      _this.afterRenderDeferred = (0, _promiseDeferred)();\n      _this.toolbar = new _contentTypeToolbar(_assertThisInitialized(_this), _this.getToolbarOptions());\n      return _this;\n    }\n    /**\n     * Return an array of options\n     *\n     * @returns {OptionsInterface}\n     */\n\n\n    var _proto = Preview.prototype;\n\n    _proto.retrieveOptions = function retrieveOptions() {\n      var options = _preview2.prototype.retrieveOptions.call(this);\n\n      options.hideShow = new _hideShowOption({\n        preview: this,\n        icon: _hideShowOption.showIcon,\n        title: _hideShowOption.showText,\n        action: this.onOptionVisibilityToggle,\n        classes: [\"hide-show-content-type\"],\n        sort: 40\n      });\n      return options;\n    }\n    /**\n     * On render init the heading\n     *\n     * @param {Element} element\n     */\n    ;\n\n    _proto.afterRender = function afterRender(element) {\n      this.element = element;\n      this.afterRenderDeferred.resolve(element);\n    };\n\n    _proto.bindEvents = function bindEvents() {\n      var _this2 = this;\n\n      _preview2.prototype.bindEvents.call(this); // When a heading is dropped for the first time show heading toolbar\n\n\n      _events.on(\"heading:dropAfter\", function (args) {\n        if (args.id === _this2.contentType.id) {\n          Promise.all([_this2.afterRenderDeferred.promise, _this2.toolbar.afterRenderDeferred.promise]).then(function (_ref) {\n            var element = _ref[0];\n\n            _underscore.defer(function () {\n              (0, _jquery)(element).focus();\n            });\n          });\n        }\n      });\n    }\n    /**\n     * Get option value from observable data.\n     *\n     * @param {string} key\n     * @return {*}\n     */\n    ;\n\n    _proto.getOptionValue = function getOptionValue(key) {\n      if (key === \"heading_type\") {\n        return this.data.main.heading_type();\n      } else if (key === \"text_align\") {\n        return this.data.main.style().textAlign;\n      }\n\n      return;\n    }\n    /**\n     * Build and return the tool bar options for heading\n     *\n     * @returns {OptionInterface[]}\n     */\n    ;\n\n    _proto.getToolbarOptions = function getToolbarOptions() {\n      return [{\n        key: \"heading_type\",\n        type: \"select\",\n        values: [{\n          value: \"h1\",\n          label: \"H1\",\n          icon: \"\"\n        }, {\n          value: \"h2\",\n          label: \"H2\",\n          icon: \"\"\n        }, {\n          value: \"h3\",\n          label: \"H3\",\n          icon: \"\"\n        }, {\n          value: \"h4\",\n          label: \"H4\",\n          icon: \"\"\n        }, {\n          value: \"h5\",\n          label: \"H5\",\n          icon: \"\"\n        }, {\n          value: \"h6\",\n          label: \"H6\",\n          icon: \"\"\n        }]\n      }, {\n        key: \"text_align\",\n        type: \"select\",\n        values: [{\n          value: \"left\",\n          label: \"Left\",\n          icon: \"icon-pagebuilder-align-left\"\n        }, {\n          value: \"center\",\n          label: \"Center\",\n          icon: \"icon-pagebuilder-align-center\"\n        }, {\n          value: \"right\",\n          label: \"Right\",\n          icon: \"icon-pagebuilder-align-right\"\n        }]\n      }];\n    };\n\n    return Preview;\n  }(_preview);\n\n  return Preview;\n});\n//# sourceMappingURL=preview.js.map","Magento_PageBuilder/js/content-type/banner/preview.js":"/*eslint-disable */\n/* jscs:disable */\n\nfunction _inheritsLoose(subClass, superClass) { subClass.prototype = Object.create(superClass.prototype); subClass.prototype.constructor = subClass; _setPrototypeOf(subClass, superClass); }\n\nfunction _setPrototypeOf(o, p) { _setPrototypeOf = Object.setPrototypeOf || function _setPrototypeOf(o, p) { o.__proto__ = p; return o; }; return _setPrototypeOf(o, p); }\n\ndefine([\"jarallax\", \"jarallaxVideo\", \"jquery\", \"jquery/z-index\", \"mage/translate\", \"Magento_PageBuilder/js/events\", \"mageUtils\", \"underscore\", \"vimeoWrapper\", \"Magento_PageBuilder/js/content-type-menu/hide-show-option\", \"Magento_PageBuilder/js/uploader\", \"Magento_PageBuilder/js/utils/delay-until\", \"Magento_PageBuilder/js/utils/editor\", \"Magento_PageBuilder/js/utils/nesting-link-dialog\", \"Magento_PageBuilder/js/utils/nesting-widget-dialog\", \"Magento_PageBuilder/js/wysiwyg/factory\", \"Magento_PageBuilder/js/content-type/preview\"], function (_jarallax, _jarallaxVideo, _jquery, _zIndex, _translate, _events, _mageUtils, _underscore, _vimeoWrapper, _hideShowOption, _uploader, _delayUntil, _editor, _nestingLinkDialog, _nestingWidgetDialog, _factory, _preview) {\n  /**\n   * Copyright \u00a9 Magento, Inc. All rights reserved.\n   * See COPYING.txt for license details.\n   */\n\n  /**\n   * @api\n   */\n  var Preview = /*#__PURE__*/function (_preview2) {\n    \"use strict\";\n\n    _inheritsLoose(Preview, _preview2);\n\n    function Preview() {\n      var _this;\n\n      for (var _len = arguments.length, args = new Array(_len), _key = 0; _key < _len; _key++) {\n        args[_key] = arguments[_key];\n      }\n\n      _this = _preview2.call.apply(_preview2, [this].concat(args)) || this;\n      _this.buttonPlaceholder = (0, _translate)(\"Edit Button Text\");\n      _this.wysiwygDeferred = _jquery.Deferred();\n      _this.handledDoubleClick = false;\n      _this.videoUpdateProperties = [\"background_type\", \"video_fallback_image\", \"video_lazy_load\", \"video_loop\", \"video_play_only_visible\", \"video_source\"];\n      _this.bannerOverlaySelector = \".pagebuilder-overlay\";\n      _this.defaultOverlayZIndex = 2;\n      _this.activeEditorOverlayZIndex = 3;\n      _this.buildJarallax = _underscore.debounce(function () {\n        // Destroy all instances of the plugin prior\n        try {\n          jarallax(_this.wrapper, \"destroy\");\n        } catch (e) {// Failure of destroying is acceptable\n        }\n\n        if (_this.wrapper && _this.wrapper.dataset.backgroundType === \"video\" && _this.wrapper.dataset.videoSrc.length) {\n          _underscore.defer(function () {\n            // Build Parallax on elements with the correct class\n            jarallax(_this.wrapper, {\n              videoSrc: _this.wrapper.dataset.videoSrc,\n              imgSrc: _this.wrapper.dataset.videoFallbackSrc,\n              videoLoop: _this.contentType.dataStore.get(\"video_loop\") === \"true\",\n              speed: 1,\n              videoPlayOnlyVisible: _this.contentType.dataStore.get(\"video_play_only_visible\") === \"true\",\n              videoLazyLoading: _this.contentType.dataStore.get(\"video_lazy_load\") === \"true\"\n            }); // @ts-ignore\n\n            if (_this.wrapper.jarallax && _this.wrapper.jarallax.video) {\n              // @ts-ignore\n              _this.wrapper.jarallax.video.on(\"started\", function () {\n                // @ts-ignore\n                if (_this.wrapper.jarallax && _this.wrapper.jarallax.$video) {\n                  // @ts-ignore\n                  _this.wrapper.jarallax.$video.style.visibility = \"visible\";\n                }\n              });\n            }\n          });\n        }\n      }, 50);\n      return _this;\n    }\n\n    var _proto = Preview.prototype;\n\n    /**\n     * Get background image url base on the viewport.\n     *\n     * @returns {string}\n     */\n    _proto.getBackgroundImage = function getBackgroundImage() {\n      var mobileImage = this.contentType.dataStore.get(\"mobile_image\");\n      var desktopImage = this.contentType.dataStore.get(\"background_image\");\n      var backgroundImage = this.viewport() === \"mobile\" && mobileImage.length ? mobileImage : desktopImage;\n      return backgroundImage.length ? \"url(\\\"\" + backgroundImage[0].url + \"\\\")\" : \"none\";\n    }\n    /**\n     * Return an array of options\n     *\n     * @returns {OptionsInterface}\n     */\n    ;\n\n    _proto.retrieveOptions = function retrieveOptions() {\n      var options = _preview2.prototype.retrieveOptions.call(this);\n\n      options.hideShow = new _hideShowOption({\n        preview: this,\n        icon: _hideShowOption.showIcon,\n        title: _hideShowOption.showText,\n        action: this.onOptionVisibilityToggle,\n        classes: [\"hide-show-content-type\"],\n        sort: 40\n      });\n      return options;\n    }\n    /**\n     * Get registry callback reference to uploader UI component\n     *\n     * @returns {Uploader}\n     */\n    ;\n\n    _proto.getUploader = function getUploader() {\n      var initialImageValue = this.contentType.dataStore.get(this.config.additional_data.uploaderConfig.dataScope, \"\"); // Create uploader\n\n      return new _uploader(\"imageuploader_\" + this.contentType.id, this.config.additional_data.uploaderConfig, this.contentType.id, this.contentType.dataStore, initialImageValue);\n    }\n    /**\n     * @param {HTMLElement} element\n     */\n    ;\n\n    _proto.afterRenderWysiwyg = function afterRenderWysiwyg(element) {\n      var _this2 = this;\n\n      this.element = element;\n      element.id = this.contentType.id + \"-editor\"; // Set the innerHTML manually so we don't upset Knockout & TinyMCE\n\n      element.innerHTML = this.data.content.html();\n      this.contentType.dataStore.subscribe(function () {\n        // If we're not focused into TinyMCE inline, update the value when it changes in the data store\n        if (!_this2.wysiwyg || _this2.wysiwyg && _this2.wysiwyg.getAdapter().id !== (0, _editor.getActiveEditor)().id) {\n          element.innerHTML = _this2.data.content.html();\n        }\n      }, \"message\");\n      /**\n       * afterRenderWysiwyg is called whenever Knockout causes a DOM re-render. This occurs frequently within Slider\n       * due to Slick's inability to perform a refresh with Knockout managing the DOM. Due to this the original\n       * WYSIWYG instance will be detached from this slide and we need to re-initialize on click.\n       */\n\n      this.wysiwyg = null;\n    }\n    /**\n     * Stop event to prevent execution of action when editing textarea.\n     *\n     * @param {Preview} preview\n     * @param {JQueryEventObject} event\n     * @returns {Boolean}\n     */\n    ;\n\n    _proto.stopEvent = function stopEvent(preview, event) {\n      event.stopPropagation();\n      return true;\n    }\n    /**\n     * Init WYSIWYG on load\n     *\n     * @param element\n     * @deprecated please use activateEditor & initWysiwygFromClick\n     */\n    ;\n\n    _proto.initWysiwyg = function initWysiwyg(element) {\n      this.element = element;\n      element.id = this.contentType.id + \"-editor\";\n      this.wysiwyg = null;\n      return this.initWysiwygFromClick(false);\n    }\n    /**\n     * Init the WYSIWYG\n     *\n     * @param {boolean} focus Should wysiwyg focus after initialization?\n     * @returns Promise\n     */\n    ;\n\n    _proto.initWysiwygFromClick = function initWysiwygFromClick(focus) {\n      var _this3 = this;\n\n      if (focus === void 0) {\n        focus = false;\n      }\n\n      if (this.wysiwyg) {\n        return Promise.resolve(this.wysiwyg);\n      }\n\n      var wysiwygConfig = this.config.additional_data.wysiwygConfig.wysiwygConfigData;\n\n      if (focus) {\n        wysiwygConfig.adapter.settings.auto_focus = this.element.id;\n\n        wysiwygConfig.adapter.settings.init_instance_callback = function (editor) {\n          editor.on(\"focus\", function () {\n            (0, _jquery)(_this3.element).parents(_this3.bannerOverlaySelector).zIndex(_this3.activeEditorOverlayZIndex);\n          });\n          editor.on(\"blur\", function () {\n            (0, _jquery)(_this3.element).parents(_this3.bannerOverlaySelector).zIndex(_this3.defaultOverlayZIndex);\n            (0, _nestingLinkDialog)(_this3.contentType.dataStore, _this3.wysiwyg, \"message\", \"link_url\");\n            (0, _nestingWidgetDialog)(_this3.contentType.dataStore, _this3.wysiwyg, \"message\", \"link_url\");\n          });\n\n          _underscore.defer(function () {\n            _this3.element.blur();\n\n            _this3.element.focus();\n          });\n        };\n      }\n\n      wysiwygConfig.adapter.settings.fixed_toolbar_container = \"#\" + this.contentType.id + \" .pagebuilder-banner-text-content\";\n      return (0, _factory)(this.contentType.id, this.element.id, this.config.name, wysiwygConfig, this.contentType.dataStore, \"message\", this.contentType.stageId).then(function (wysiwyg) {\n        _this3.wysiwyg = wysiwyg;\n        return wysiwyg;\n      });\n    }\n    /**\n     * Makes WYSIWYG active\n     *\n     * @param {Preview} preview\n     * @param {JQueryEventObject} event\n     * @returns {Boolean}\n     */\n    ;\n\n    _proto.activateEditor = function activateEditor(preview, event) {\n      var _this4 = this;\n\n      if (this.element && !this.wysiwyg) {\n        var bookmark = (0, _editor.createBookmark)(event);\n        (0, _editor.lockImageSize)(this.element);\n        this.element.removeAttribute(\"contenteditable\");\n\n        _underscore.defer(function () {\n          _this4.initWysiwygFromClick(true).then(function () {\n            return (0, _delayUntil)(function () {\n              // We no longer need to handle double click once it's initialized\n              _this4.handledDoubleClick = true;\n\n              _this4.wysiwygDeferred.resolve();\n\n              (0, _editor.moveToBookmark)(bookmark);\n              (0, _editor.unlockImageSize)(_this4.element);\n            }, function () {\n              return _this4.element.classList.contains(\"mce-edit-focus\");\n            }, 10);\n          }).catch(function (error) {\n            // If there's an error with init of WYSIWYG editor push into the console to aid support\n            console.error(error);\n          });\n        });\n      } else if (this.element && this.wysiwyg) {\n        var element = this.element || this.textarea;\n\n        if (event.currentTarget !== event.target && event.target !== element && !element.contains(event.target)) {\n          return;\n        }\n\n        element.focus();\n      }\n    }\n    /**\n     * If a user double clicks prior to initializing TinyMCE, forward the event\n     *\n     * @param preview\n     * @param event\n     */\n    ;\n\n    _proto.handleDoubleClick = function handleDoubleClick(preview, event) {\n      var _this5 = this;\n\n      if (this.handledDoubleClick) {\n        return;\n      }\n\n      event.preventDefault();\n      var targetIndex = (0, _editor.findNodeIndex)(this.element, event.target.tagName, event.target);\n      this.handledDoubleClick = true;\n      this.wysiwygDeferred.then(function () {\n        var target = document.getElementById(event.target.id);\n\n        if (!target) {\n          target = (0, _editor.getNodeByIndex)(_this5.element, event.target.tagName, targetIndex);\n        }\n\n        if (target) {\n          target.dispatchEvent((0, _editor.createDoubleClickEvent)());\n        }\n      });\n    }\n    /**\n     * Set state based on overlay mouseover event for the preview\n     */\n    ;\n\n    _proto.onMouseOverWrapper = function onMouseOverWrapper() {\n      if (this.data.main.attributes()[\"data-show-overlay\"] === \"hover\") {\n        this.data.overlay.attributes(Object.assign(this.data.overlay.attributes(), {\n          \"data-background-color-orig\": this.data.overlay.style().backgroundColor\n        }));\n        this.data.overlay.style(Object.assign(this.data.overlay.style(), {\n          backgroundColor: this.data.overlay.attributes()[\"data-overlay-color\"]\n        }));\n      }\n\n      if (this.data.main.attributes()[\"data-show-button\"] === \"hover\") {\n        this.data.button.style(Object.assign(this.data.button.style(), {\n          opacity: 1,\n          visibility: \"visible\"\n        }));\n      }\n    }\n    /**\n     * Set state based on overlay mouseout event for the preview\n     */\n    ;\n\n    _proto.onMouseOutWrapper = function onMouseOutWrapper() {\n      if (this.data.main.attributes()[\"data-show-overlay\"] === \"hover\") {\n        this.data.overlay.style(Object.assign(this.data.overlay.style(), {\n          backgroundColor: this.data.overlay.attributes()[\"data-background-color-orig\"]\n        }));\n      }\n\n      if (this.data.main.attributes()[\"data-show-button\"] === \"hover\") {\n        this.data.button.style(Object.assign(this.data.button.style(), {\n          opacity: 0,\n          visibility: \"hidden\"\n        }));\n      }\n    }\n    /**\n     * @returns {Boolean}\n     */\n    ;\n\n    _proto.isWysiwygSupported = function isWysiwygSupported() {\n      return (0, _editor.isWysiwygSupported)();\n    }\n    /**\n     * @param {HTMLTextAreaElement} element\n     */\n    ;\n\n    _proto.initTextarea = function initTextarea(element) {\n      var _this6 = this;\n\n      this.textarea = element; // set initial value of textarea based on data store\n\n      this.textarea.value = this.contentType.dataStore.get(\"message\");\n      this.adjustTextareaHeightBasedOnScrollHeight(); // Update content in our stage preview textarea after its slideout counterpart gets updated\n\n      _events.on(\"form:\" + this.contentType.id + \":saveAfter\", function () {\n        _this6.textarea.value = _this6.contentType.dataStore.get(\"message\");\n\n        _this6.adjustTextareaHeightBasedOnScrollHeight();\n      });\n    }\n    /**\n     * Save current value of textarea in data store\n     */\n    ;\n\n    _proto.onTextareaKeyUp = function onTextareaKeyUp() {\n      this.adjustTextareaHeightBasedOnScrollHeight();\n      this.contentType.dataStore.set(\"message\", this.textarea.value);\n    }\n    /**\n     * Start stage interaction on textarea blur\n     */\n    ;\n\n    _proto.onTextareaFocus = function onTextareaFocus() {\n      (0, _jquery)(this.textarea).closest(\".pagebuilder-banner-text-content\").addClass(\"pagebuilder-toolbar-active\");\n\n      _events.trigger(\"stage:interactionStart\");\n    }\n    /**\n     * Stop stage interaction on textarea blur\n     */\n    ;\n\n    _proto.onTextareaBlur = function onTextareaBlur() {\n      (0, _jquery)(this.textarea).closest(\".pagebuilder-banner-text-content\").removeClass(\"pagebuilder-toolbar-active\");\n\n      _events.trigger(\"stage:interactionStop\");\n    }\n    /**\n     * Init the parallax element\n     *\n     * @param {HTMLElement} element\n     */\n    ;\n\n    _proto.initParallax = function initParallax(element) {\n      var _this7 = this;\n\n      this.wrapper = element;\n\n      _underscore.defer(function () {\n        _this7.buildJarallax();\n      });\n    }\n    /**\n     * Destroy jarallax instance.\n     */\n    ;\n\n    _proto.destroy = function destroy() {\n      _preview2.prototype.destroy.call(this);\n\n      if (this.wrapper) {\n        jarallax(this.wrapper, \"destroy\");\n      }\n    }\n    /**\n     * @inheritDoc\n     */\n    ;\n\n    _proto.bindEvents = function bindEvents() {\n      var _this8 = this;\n\n      this.contentType.dataStore.subscribe(function (state) {\n        var sanitizedContent = (0, _editor.removeReservedHtmlAttributes)(state.message);\n\n        if (sanitizedContent !== state.message) {\n          state.message = sanitizedContent;\n        }\n      }, \"message\");\n\n      _preview2.prototype.bindEvents.call(this);\n\n      _events.on(\"banner:mountAfter\", function (args) {\n        if (args.id === _this8.contentType.id) {\n          _this8.buildJarallax();\n\n          _this8.isSnapshot.subscribe(function (value) {\n            _this8.changeUploaderControlsVisibility();\n          });\n\n          _this8.changeUploaderControlsVisibility();\n        }\n      });\n\n      _events.on(this.config.name + \":\" + this.contentType.id + \":updateAfter\", function () {\n        var dataStore = _this8.contentType.dataStore.getState();\n\n        var imageObject = dataStore[_this8.config.additional_data.uploaderConfig.dataScope][0] || {}; // Resolves issue when tinyMCE injects a non-breaking space on reinitialization and removes placeholder.\n\n        if (dataStore.message === \"<div data-bind=\\\"html: data.content.html\\\">&nbsp;</div>\") {\n          _this8.contentType.dataStore.set(\"message\", \"\");\n        }\n\n        _events.trigger(\"image:\" + _this8.contentType.id + \":assignAfter\", imageObject);\n      });\n\n      this.contentType.dataStore.subscribe(function (data) {\n        if (this.shouldUpdateVideo(data)) {\n          this.buildJarallax();\n        }\n      }.bind(this));\n\n      _events.on(\"image:\" + this.contentType.id + \":uploadAfter\", function () {\n        _this8.contentType.dataStore.set(\"background_type\", \"image\");\n      });\n\n      _events.on(\"stage:\" + this.contentType.stageId + \":viewportChangeAfter\", function (args) {\n        _this8.buildJarallax();\n      });\n    }\n    /**\n     * Change uploader controls visibility\n     */\n    ;\n\n    _proto.changeUploaderControlsVisibility = function changeUploaderControlsVisibility() {\n      var _this9 = this;\n\n      this.getUploader().getUiComponent()(function (uploader) {\n        uploader.visibleControls = !_this9.isSnapshot();\n      });\n    }\n    /**\n     * Adjust textarea's height based on scrollHeight\n     */\n    ;\n\n    _proto.adjustTextareaHeightBasedOnScrollHeight = function adjustTextareaHeightBasedOnScrollHeight() {\n      this.textarea.style.height = \"\";\n      var scrollHeight = this.textarea.scrollHeight;\n      var minHeight = parseInt((0, _jquery)(this.textarea).css(\"min-height\"), 10);\n\n      if (scrollHeight === minHeight) {\n        // leave height at 'auto'\n        return;\n      }\n\n      (0, _jquery)(this.textarea).height(scrollHeight);\n    }\n    /**\n     * Check if video options has been updated.\n     *\n     * @return boolean\n     */\n    ;\n\n    _proto.shouldUpdateVideo = function shouldUpdateVideo(state) {\n      var _this10 = this;\n\n      var previousState = this.contentType.dataStore.getPreviousState();\n\n      var diff = _mageUtils.compare(previousState, state).changes;\n\n      if (diff.length > 0) {\n        return _underscore.some(diff, function (element) {\n          if (element.name === \"video_fallback_image\") {\n            return (!_underscore.isEmpty(previousState.video_fallback_image) && previousState.video_fallback_image) !== (!_underscore.isEmpty(state.video_fallback_image) && state.video_fallback_image);\n          }\n\n          return _this10.videoUpdateProperties.indexOf(element.name) !== -1;\n        });\n      }\n    };\n\n    return Preview;\n  }(_preview);\n\n  return Preview;\n});\n//# sourceMappingURL=preview.js.map","Magento_PageBuilder/js/content-type/banner/appearance/default/widget.js":"/**\n * Copyright \u00a9 Magento, Inc. All rights reserved.\n * See COPYING.txt for license details.\n */\ndefine([\n    'Magento_PageBuilder/js/widget/show-on-hover',\n    'Magento_PageBuilder/js/widget/video-background'\n], function (showOnHover, videoBackground) {\n    'use strict';\n\n    return function (config, element) {\n        var videoElement = element[0].querySelector('[data-background-type=video]');\n\n        showOnHover(config);\n\n        if (videoElement) {\n            videoBackground(config, videoElement);\n        }\n    };\n});\n","Magento_PageBuilder/js/content-type/banner/wysiwyg/tinymce/component-initializer.js":"/*eslint-disable */\n/* jscs:disable */\ndefine([\"jquery\", \"mage/adminhtml/wysiwyg/events\"], function (_jquery, _events) {\n  /**\n   * Copyright \u00a9 Magento, Inc. All rights reserved.\n   * See COPYING.txt for license details.\n   */\n  var ComponentInitializer = /*#__PURE__*/function () {\n    \"use strict\";\n\n    function ComponentInitializer() {}\n\n    var _proto = ComponentInitializer.prototype;\n\n    /**\n     * The editor element\n     */\n\n    /**\n     * The configuration of the wysiwyg content type\n     */\n\n    /**\n     * Initialize the instance\n     *\n     * @param {Wysiwyg} wysiwyg\n     */\n    _proto.initialize = function initialize(wysiwyg) {\n      this.$element = (0, _jquery)(\"#\" + wysiwyg.elementId);\n      this.config = wysiwyg.config;\n      var tinymce = wysiwyg.getAdapter();\n      tinymce.eventBus.attachEventHandler(_events.afterFocus, this.onFocus.bind(this));\n      tinymce.eventBus.attachEventHandler(_events.afterBlur, this.onBlur.bind(this));\n    }\n    /**\n     * Called when tinymce is focused\n     */\n    ;\n\n    _proto.onFocus = function onFocus() {\n      var _this = this;\n\n      // If there isn't enough room for a left-aligned toolbar, right align it\n      if ((0, _jquery)(window).width() < this.$element.offset().left + parseInt(this.config.adapter_config.minToolbarWidth, 10)) {\n        this.$element.addClass(\"_right-aligned-toolbar\");\n      } else {\n        this.$element.removeClass(\"_right-aligned-toolbar\");\n      }\n\n      _jquery.each(this.config.adapter_config.parentSelectorsToUnderlay, function (i, selector) {\n        _this.$element.closest(selector).css(\"z-index\", 100);\n      });\n    }\n    /**\n     * Called when tinymce is blurred\n     */\n    ;\n\n    _proto.onBlur = function onBlur() {\n      var _this2 = this;\n\n      _jquery.each(this.config.adapter_config.parentSelectorsToUnderlay, function (i, selector) {\n        _this2.$element.closest(selector).css(\"z-index\", \"\");\n      });\n    };\n\n    return ComponentInitializer;\n  }();\n\n  return ComponentInitializer;\n});\n//# sourceMappingURL=component-initializer.js.map","Magento_PageBuilder/js/content-type/banner/converter/style/button-visibility.js":"/*eslint-disable */\n/* jscs:disable */\ndefine([], function () {\n  /**\n   * Copyright \u00a9 Magento, Inc. All rights reserved.\n   * See COPYING.txt for license details.\n   */\n  var ButtonVisibility = /*#__PURE__*/function () {\n    \"use strict\";\n\n    function ButtonVisibility() {}\n\n    var _proto = ButtonVisibility.prototype;\n\n    /**\n     * Convert value to internal format\n     *\n     * @param value string\n     * @returns {string | object}\n     */\n    _proto.fromDom = function fromDom(value) {\n      return value;\n    }\n    /**\n     * Convert value to knockout format\n     *\n     * @param {string} name\n     * @param {DataObject} data\n     * @returns {string | object}\n     */\n    ;\n\n    _proto.toDom = function toDom(name, data) {\n      return data.show_button === \"always\" ? \"visible\" : \"hidden\";\n    };\n\n    return ButtonVisibility;\n  }();\n\n  return ButtonVisibility;\n});\n//# sourceMappingURL=button-visibility.js.map","Magento_PageBuilder/js/content-type/banner/converter/style/button-opacity.js":"/*eslint-disable */\n/* jscs:disable */\ndefine([], function () {\n  /**\n   * Copyright \u00a9 Magento, Inc. All rights reserved.\n   * See COPYING.txt for license details.\n   */\n  var ButtonOpacity = /*#__PURE__*/function () {\n    \"use strict\";\n\n    function ButtonOpacity() {}\n\n    var _proto = ButtonOpacity.prototype;\n\n    /**\n     * Convert value to internal format\n     *\n     * @param value string\n     * @returns {string | object}\n     */\n    _proto.fromDom = function fromDom(value) {\n      return value;\n    }\n    /**\n     * Convert value to knockout format\n     *\n     * @param {string} name\n     * @param {DataObject} data\n     * @returns {string | object}\n     */\n    ;\n\n    _proto.toDom = function toDom(name, data) {\n      return data.show_button === \"always\" ? \"1\" : \"0\";\n    };\n\n    return ButtonOpacity;\n  }();\n\n  return ButtonOpacity;\n});\n//# sourceMappingURL=button-opacity.js.map","Magento_PageBuilder/js/content-type/banner/converter/style/overlay-background-color.js":"/*eslint-disable */\n/* jscs:disable */\ndefine([\"Magento_PageBuilder/js/utils/object\"], function (_object) {\n  /**\n   * Copyright \u00a9 Magento, Inc. All rights reserved.\n   * See COPYING.txt for license details.\n   */\n  var OverlayBackgroundColor = /*#__PURE__*/function () {\n    \"use strict\";\n\n    function OverlayBackgroundColor() {}\n\n    var _proto = OverlayBackgroundColor.prototype;\n\n    /**\n     * Convert value to internal format\n     *\n     * @param value string\n     * @returns {string | object}\n     */\n    _proto.fromDom = function fromDom(value) {\n      return value;\n    }\n    /**\n     * Convert value to knockout format\n     *\n     * @param name string\n     * @param data Object\n     * @returns {string | object}\n     */\n    ;\n\n    _proto.toDom = function toDom(name, data) {\n      var value = (0, _object.get)(data, name);\n\n      if (data.show_overlay === \"always\" && value !== \"\" && value !== undefined) {\n        return value;\n      }\n\n      return \"transparent\";\n    };\n\n    return OverlayBackgroundColor;\n  }();\n\n  return OverlayBackgroundColor;\n});\n//# sourceMappingURL=overlay-background-color.js.map","Magento_PageBuilder/js/content-type/banner/converter/attribute/overlay-color.js":"/*eslint-disable */\n/* jscs:disable */\ndefine([], function () {\n  /**\n   * Copyright \u00a9 Magento, Inc. All rights reserved.\n   * See COPYING.txt for license details.\n   */\n  var OverlayColor = /*#__PURE__*/function () {\n    \"use strict\";\n\n    function OverlayColor() {}\n\n    var _proto = OverlayColor.prototype;\n\n    /**\n     * Convert value to internal format\n     *\n     * @param value string\n     * @returns {string | object}\n     */\n    _proto.fromDom = function fromDom(value) {\n      return value === \"transparent\" ? \"\" : value;\n    }\n    /**\n     * Convert value to knockout format\n     *\n     * @param {string} name\n     * @param {DataObject} data\n     * @returns {string | object}\n     */\n    ;\n\n    _proto.toDom = function toDom(name, data) {\n      if (data.overlay_color) {\n        return data.overlay_color.toString();\n      }\n\n      return \"\";\n    };\n\n    return OverlayColor;\n  }();\n\n  return OverlayColor;\n});\n//# sourceMappingURL=overlay-color.js.map","Magento_PageBuilder/js/content-type/column-group/drag-and-drop.js":"/*eslint-disable */\n/* jscs:disable */\ndefine([], function () {\n  /**\n   * Copyright \u00a9 Magento, Inc. All rights reserved.\n   * See COPYING.txt for license details.\n   */\n\n  /**\n   * Calculate the drop positions of a column group\n   *\n   * @param {ContentTypeCollectionInterface} group\n   * @returns {any[]}\n   */\n  function calculateDropPositions(group) {\n    var resizeUtils = group.preview.getResizeUtils();\n    var dropPositions = [];\n    group.children().forEach(function (column, index) {\n      var left = column.preview.element.position().left;\n      var width = column.preview.element.outerWidth(true);\n      var canShrink = resizeUtils.getAcceptedColumnWidth(resizeUtils.getColumnWidth(column).toString()) > resizeUtils.getSmallestColumnWidth();\n      dropPositions.push({\n        affectedColumn: column,\n        canShrink: canShrink,\n        insertIndex: index,\n        left: left,\n        placement: \"left\",\n        right: left + width / 2\n      }, {\n        affectedColumn: column,\n        canShrink: canShrink,\n        insertIndex: index + 1,\n        left: left + width / 2,\n        placement: \"right\",\n        right: left + width\n      });\n    });\n    return dropPositions;\n  }\n\n  return {\n    calculateDropPositions: calculateDropPositions\n  };\n});\n//# sourceMappingURL=drag-and-drop.js.map","Magento_PageBuilder/js/content-type/column-group/registry.js":"/*eslint-disable */\n/* jscs:disable */\ndefine([], function () {\n  /**\n   * Copyright \u00a9 Magento, Inc. All rights reserved.\n   * See COPYING.txt for license details.\n   */\n  var dragColumn;\n  /**\n   * Retrieve the drag column from the registry\n   *\n   * @returns {ContentTypeCollectionInterface}\n   */\n\n  function getDragColumn() {\n    return dragColumn;\n  }\n  /**\n   * Remove the drag column reference\n   */\n\n\n  function removeDragColumn() {\n    dragColumn = null;\n  }\n  /**\n   * Set the drag column in the registry\n   *\n   * @param {ContentTypeCollectionInterface<ColumnPreview>} column\n   */\n\n\n  function setDragColumn(column) {\n    dragColumn = column;\n  }\n\n  return {\n    getDragColumn: getDragColumn,\n    removeDragColumn: removeDragColumn,\n    setDragColumn: setDragColumn\n  };\n});\n//# sourceMappingURL=registry.js.map","Magento_PageBuilder/js/content-type/column-group/preview.js":"/*eslint-disable */\n/* jscs:disable */\n\nfunction _createForOfIteratorHelperLoose(o, allowArrayLike) { var it = typeof Symbol !== \"undefined\" && o[Symbol.iterator] || o[\"@@iterator\"]; if (it) return (it = it.call(o)).next.bind(it); if (Array.isArray(o) || (it = _unsupportedIterableToArray(o)) || allowArrayLike && o && typeof o.length === \"number\") { if (it) o = it; var i = 0; return function () { if (i >= o.length) return { done: true }; return { done: false, value: o[i++] }; }; } throw new TypeError(\"Invalid attempt to iterate non-iterable instance.\\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.\"); }\n\nfunction _unsupportedIterableToArray(o, minLen) { if (!o) return; if (typeof o === \"string\") return _arrayLikeToArray(o, minLen); var n = Object.prototype.toString.call(o).slice(8, -1); if (n === \"Object\" && o.constructor) n = o.constructor.name; if (n === \"Map\" || n === \"Set\") return Array.from(o); if (n === \"Arguments\" || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)) return _arrayLikeToArray(o, minLen); }\n\nfunction _arrayLikeToArray(arr, len) { if (len == null || len > arr.length) len = arr.length; for (var i = 0, arr2 = new Array(len); i < len; i++) { arr2[i] = arr[i]; } return arr2; }\n\nfunction _extends() { _extends = Object.assign || function (target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i]; for (var key in source) { if (Object.prototype.hasOwnProperty.call(source, key)) { target[key] = source[key]; } } } return target; }; return _extends.apply(this, arguments); }\n\nfunction _assertThisInitialized(self) { if (self === void 0) { throw new ReferenceError(\"this hasn't been initialised - super() hasn't been called\"); } return self; }\n\nfunction _inheritsLoose(subClass, superClass) { subClass.prototype = Object.create(superClass.prototype); subClass.prototype.constructor = subClass; _setPrototypeOf(subClass, superClass); }\n\nfunction _setPrototypeOf(o, p) { _setPrototypeOf = Object.setPrototypeOf || function _setPrototypeOf(o, p) { o.__proto__ = p; return o; }; return _setPrototypeOf(o, p); }\n\ndefine([\"jquery\", \"knockout\", \"mage/translate\", \"Magento_PageBuilder/js/content-type-menu/hide-show-option\", \"Magento_PageBuilder/js/events\", \"underscore\", \"Magento_PageBuilder/js/config\", \"Magento_PageBuilder/js/content-type-factory\", \"Magento_PageBuilder/js/drag-drop/move-content-type\", \"Magento_PageBuilder/js/drag-drop/registry\", \"Magento_PageBuilder/js/drag-drop/sortable\", \"Magento_PageBuilder/js/utils/check-stage-full-screen\", \"Magento_PageBuilder/js/utils/create-stylesheet\", \"Magento_PageBuilder/js/content-type/column/resize\", \"Magento_PageBuilder/js/content-type/preview-collection\", \"Magento_PageBuilder/js/content-type/column-group/drag-and-drop\", \"Magento_PageBuilder/js/content-type/column-group/factory\", \"Magento_PageBuilder/js/content-type/column-group/grid-size\", \"Magento_PageBuilder/js/content-type/column-group/registry\"], function (_jquery, _knockout, _translate, _hideShowOption, _events, _underscore, _config, _contentTypeFactory, _moveContentType, _registry, _sortable, _checkStageFullScreen, _createStylesheet, _resize, _previewCollection, _dragAndDrop, _factory, _gridSize, _registry2) {\n  function _getRequireWildcardCache(nodeInterop) { if (typeof WeakMap !== \"function\") return null; var cacheBabelInterop = new WeakMap(); var cacheNodeInterop = new WeakMap(); return (_getRequireWildcardCache = function _getRequireWildcardCache(nodeInterop) { return nodeInterop ? cacheNodeInterop : cacheBabelInterop; })(nodeInterop); }\n\n  /**\n   * Copyright \u00a9 Magento, Inc. All rights reserved.\n   * See COPYING.txt for license details.\n   */\n\n  /**\n   * @api\n   */\n  var Preview = /*#__PURE__*/function (_previewCollection2) {\n    \"use strict\";\n\n    _inheritsLoose(Preview, _previewCollection2);\n\n    /**\n     *\n     * @param {ContentTypeCollection} contentType\n     * @param {ContentTypeConfigInterface} config\n     * @param {ObservableUpdater} observableUpdater\n     */\n    function Preview(contentType, config, observableUpdater) {\n      var _this;\n\n      _this = _previewCollection2.call(this, contentType, config, observableUpdater) || this;\n      _this.resizing = _knockout.observable(false);\n      _this.hasEmptyChild = _knockout.computed(function () {\n        var empty = false;\n\n        _this.contentType.getChildren()().forEach(function (column) {\n          if (column.getChildren()().length === 0) {\n            empty = true;\n          }\n        });\n\n        return empty;\n      });\n      _this.gridSize = _knockout.observable();\n      _this.gridSizeInput = _knockout.observable();\n      _this.gridSizeArray = _knockout.observableArray([]);\n      _this.gridSizeError = _knockout.observable();\n      _this.gridSizeMax = _knockout.observable((0, _gridSize.getMaxGridSize)());\n      _this.gridFormOpen = _knockout.observable(false);\n      _this.gridChange = _knockout.observable(false);\n      _this.gridToolTipOverFlow = _knockout.observable(false);\n      _this.resizeColumnWidths = [];\n      _this.resizeHistory = {\n        left: [],\n        right: []\n      };\n      _this.dropPositions = [];\n      _this.gridSizeHistory = new Map();\n      _this.interactionLevel = 0;\n      _this.resizeUtils = new _resize(_this.contentType); // Keep track of the grid size in an observable\n\n      _this.contentType.dataStore.subscribe(function (state) {\n        var gridSize = parseInt(state.grid_size.toString(), 10);\n\n        _this.gridSize(gridSize);\n\n        _this.gridSizeInput(gridSize);\n\n        if (gridSize) {\n          _this.gridSizeArray(new Array(gridSize));\n        }\n      }, \"grid_size\");\n\n      _events.on(\"contentType:removeAfter\", function (args) {\n        if (args.parentContentType && args.parentContentType.id === _this.contentType.id) {\n          _underscore.defer(function () {\n            _this.spreadWidth(args.index);\n          });\n        }\n      });\n\n      _events.on(\"column:initializeAfter\", function (args) {\n        // Does the events parent match the previews column group?\n        if (args.columnGroup.id === _this.contentType.id) {\n          _this.bindDraggable(args.column);\n        }\n      });\n\n      _events.on(\"stage:\" + _this.contentType.stageId + \":readyAfter\", _this.moveContentsToNewColumnGroup.bind(_assertThisInitialized(_this)));\n\n      _events.on(\"column-group:renderAfter\", function (args) {\n        if (args.contentType.id === _this.contentType.id) {\n          if (!_this.hasColumnLine(args.contentType)) {\n            args.element.classList.add(\"no-column-line\");\n          } else {\n            args.element.classList.remove(\"no-column-line\");\n            args.element.classList.add(\"with-column-line\");\n          }\n        }\n      });\n\n      _this.contentType.children.subscribe(_underscore.debounce(_this.removeIfEmpty.bind(_assertThisInitialized(_this)), 50));\n\n      return _this;\n    }\n    /**\n     * Handle user editing an instance\n     */\n\n\n    var _proto = Preview.prototype;\n\n    _proto.onOptionEdit = function onOptionEdit() {\n      var numCols = this.contentType.getChildren()().length; // count the number of non empty columns\n\n      var numEmptyColumns = 0;\n      this.contentType.getChildren()().forEach(function (column) {\n        if (column.getChildren()().length === 0) {\n          numEmptyColumns++;\n        }\n      });\n      var appearance = this.contentType.dataStore.get(\"appearance\") ? this.contentType.dataStore.get(\"appearance\") : \"default\";\n      this.contentType.dataStore.set(\"appearance\", appearance);\n      this.contentType.dataStore.set(\"non_empty_column_count\", this.getNonEmptyColumnCount());\n      this.contentType.dataStore.set(\"max_grid_size\", (0, _gridSize.getMaxGridSize)());\n      this.contentType.dataStore.set(\"initial_grid_size\", this.contentType.dataStore.get(\"grid_size\"));\n\n      _previewCollection2.prototype.openEdit.call(this);\n    }\n    /**\n     * Bind events\n     */\n    ;\n\n    _proto.bindEvents = function bindEvents() {\n      var _this2 = this;\n\n      _previewCollection2.prototype.bindEvents.call(this);\n\n      if (_config.getContentTypeConfig(\"column\")) {\n        _events.on(\"column-group:dropAfter\", function (args) {\n          if (args.id === _this2.contentType.id) {\n            _this2.setDefaultGridSizeOnColumnGroup();\n\n            _this2.addDefaultColumnLine(args);\n          }\n        });\n      }\n\n      _events.on(\"form:\" + this.contentType.id + \":saveAfter\", function () {\n        if (_this2.contentType.dataStore.get(\"grid_size\") !== _this2.contentType.dataStore.get(\"initial_grid_size\")) {\n          _this2.updateGridSize();\n        }\n      });\n    }\n    /**\n     * Set default grid size on current column group\n     */\n    ;\n\n    _proto.setDefaultGridSizeOnColumnGroup = function setDefaultGridSizeOnColumnGroup() {\n      this.contentType.dataStore.set(\"grid_size\", (0, _gridSize.getDefaultGridSize)());\n    }\n    /**\n     * Add Columns to the current Column Group\n     *\n     * @returns {Promise<ContentTypeCollectionInterface>}\n     */\n    ;\n\n    _proto.createColumns = function createColumns() {\n      var _this3 = this;\n\n      var defaultGridSize = (0, _gridSize.getDefaultGridSize)();\n      var col1Width = (Math.ceil(defaultGridSize / 2) * 100 / defaultGridSize).toFixed(Math.round(100 / defaultGridSize) !== 100 / defaultGridSize ? 8 : 0);\n      Promise.all([(0, _contentTypeFactory)(_config.getContentTypeConfig(\"column\"), this.contentType, this.contentType.stageId, {\n        width: col1Width + \"%\"\n      }), (0, _contentTypeFactory)(_config.getContentTypeConfig(\"column\"), this.contentType, this.contentType.stageId, {\n        width: 100 - parseFloat(col1Width) + \"%\"\n      })]).then(function (columns) {\n        _this3.contentType.addChild(columns[0], 0);\n\n        _this3.contentType.addChild(columns[1], 1);\n\n        _this3.fireMountEvent(_this3.contentType, columns[0], columns[1]);\n      });\n    };\n\n    _proto.addDefaultColumnLine = function addDefaultColumnLine(args) {\n      var _this4 = this;\n\n      (0, _contentTypeFactory)(_config.getContentTypeConfig(\"column-line\"), this.contentType, this.contentType.stageId).then(function (columnLine) {\n        _this4.contentType.addChild(columnLine, 0);\n\n        if (args.columnGroupWithoutColumnLine === undefined) {\n          _events.trigger(columnLine.config.name + \":dropAfter\", {\n            id: columnLine.id,\n            columnLine: columnLine\n          });\n        } else {\n          // Move children of this column group without column line as descendant of new\n          // column group that has a column line\n          var children = args.columnGroupWithoutColumnLine.getChildren()();\n          var index = 0;\n          children.forEach(function (child) {\n            setTimeout(function () {\n              (0, _moveContentType.moveContentType)(child, index++, columnLine);\n            }, 250);\n          });\n        }\n\n        _this4.fireMountEvent(_this4.contentType, columnLine);\n      });\n    }\n    /**\n     * Use the conditional remove to disable the option when the content type has a single child\n     *\n     * @returns {OptionsInterface}\n     */\n    ;\n\n    _proto.retrieveOptions = function retrieveOptions() {\n      var options = _previewCollection2.prototype.retrieveOptions.call(this);\n\n      options.hideShow = new _hideShowOption({\n        preview: this,\n        icon: _hideShowOption.showIcon,\n        title: _hideShowOption.showText,\n        action: this.onOptionVisibilityToggle,\n        classes: [\"hide-show-content-type\"],\n        sort: 40\n      });\n      return options;\n    }\n    /**\n     * Return selected element styles\n     *\n     * @param element\n     * @param styleProperties\n     */\n    ;\n\n    _proto.getStyle = function getStyle(element, styleProperties) {\n      var stylesObject = element.style();\n      return styleProperties.reduce(function (obj, key) {\n        var _extends2;\n\n        return _extends({}, obj, (_extends2 = {}, _extends2[key] = stylesObject[key], _extends2));\n      }, {});\n    }\n    /**\n     * Return element styles without selected\n     *\n     * @param element\n     * @param styleProperties\n     */\n    ;\n\n    _proto.getStyleWithout = function getStyleWithout(element, styleProperties) {\n      var stylesObject = element.style();\n      return Object.keys(stylesObject).filter(function (key) {\n        return !styleProperties.includes(key);\n      }).reduce(function (obj, key) {\n        var _extends3;\n\n        return _extends({}, obj, (_extends3 = {}, _extends3[key] = stylesObject[key], _extends3));\n      }, {});\n    }\n    /**\n     * Get background image url base on the viewport.\n     *\n     * @returns {string}\n     */\n    ;\n\n    _proto.getBackgroundImage = function getBackgroundImage() {\n      var mobileImage = this.contentType.dataStore.get(\"mobile_image\");\n      var desktopImage = this.contentType.dataStore.get(\"background_image\");\n      var backgroundImage = this.viewport() === \"mobile\" && mobileImage.length ? mobileImage : desktopImage;\n      return backgroundImage.length ? \"url(\\\"\" + backgroundImage[0].url + \"\\\")\" : \"none\";\n    }\n    /**\n     * Retrieve the resize utils\n     *\n     * @returns {Resize}\n     */\n    ;\n\n    _proto.getResizeUtils = function getResizeUtils() {\n      return this.resizeUtils;\n    }\n    /**\n     * Handle a new column being dropped into the group\n     *\n     * @param {DropPosition} dropPosition\n     */\n    ;\n\n    _proto.onNewColumnDrop = function onNewColumnDrop(dropPosition) {\n      var _this5 = this;\n\n      // Create our new column\n      (0, _factory.createColumn)(this.contentType, this.resizeUtils.getSmallestColumnWidth(), dropPosition.insertIndex).then(function () {\n        var newWidth = _this5.resizeUtils.getAcceptedColumnWidth((_this5.resizeUtils.getColumnWidth(dropPosition.affectedColumn) - _this5.resizeUtils.getSmallestColumnWidth()).toString()); // Reduce the affected columns width by the smallest column width\n\n\n        (0, _resize.updateColumnWidth)(dropPosition.affectedColumn, newWidth);\n      });\n    }\n    /**\n     * Handle an existing column being dropped into a new column group\n     *\n     * @param {DropPosition} movePosition\n     */\n    ;\n\n    _proto.onExistingColumnDrop = function onExistingColumnDrop(movePosition) {\n      var column = (0, _registry2.getDragColumn)();\n      var sourceGroupPreview = column.parentContentType.preview;\n      var modifyOldNeighbour; // Determine which old neighbour we should modify\n\n      var oldWidth = sourceGroupPreview.getResizeUtils().getColumnWidth(column); // Retrieve the adjacent column either +1 or -1\n\n      if ((0, _resize.getAdjacentColumn)(column, \"+1\")) {\n        modifyOldNeighbour = (0, _resize.getAdjacentColumn)(column, \"+1\");\n      } else if ((0, _resize.getAdjacentColumn)(column, \"-1\")) {\n        modifyOldNeighbour = (0, _resize.getAdjacentColumn)(column, \"-1\");\n      } // Set the column to it's smallest column width\n\n\n      (0, _resize.updateColumnWidth)(column, this.resizeUtils.getSmallestColumnWidth()); // Move the content type\n\n      (0, _moveContentType.moveContentType)(column, movePosition.insertIndex, this.contentType); // Modify the old neighbour\n\n      if (modifyOldNeighbour) {\n        var oldNeighbourWidth = sourceGroupPreview.getResizeUtils().getAcceptedColumnWidth((oldWidth + sourceGroupPreview.getResizeUtils().getColumnWidth(modifyOldNeighbour)).toString());\n        (0, _resize.updateColumnWidth)(modifyOldNeighbour, oldNeighbourWidth);\n      } // Modify the columns new neighbour\n\n\n      var newNeighbourWidth = this.resizeUtils.getAcceptedColumnWidth((this.resizeUtils.getColumnWidth(movePosition.affectedColumn) - this.resizeUtils.getSmallestColumnWidth()).toString()); // Reduce the affected columns width by the smallest column width\n\n      (0, _resize.updateColumnWidth)(movePosition.affectedColumn, newNeighbourWidth);\n    }\n    /**\n     * Handle a column being sorted into a new position in the group\n     *\n     * @param {ContentTypeCollectionInterface<ColumnPreview>} column\n     * @param {number} newIndex\n     */\n    ;\n\n    _proto.onColumnSort = function onColumnSort(column, newIndex) {\n      var currentIndex = (0, _resize.getColumnIndexInGroup)(column);\n\n      if (currentIndex !== newIndex) {\n        if (currentIndex < newIndex) {\n          // As we're moving an array item the keys all reduce by 1\n          --newIndex;\n        } // Move the content type\n\n\n        (0, _moveContentType.moveContentType)(column, newIndex);\n      }\n    }\n    /**\n     * Handle a column being resized\n     *\n     * @param {ContentTypeCollectionInterface<ColumnPreview>} column\n     * @param {number} width\n     * @param {ContentTypeCollectionInterface<ColumnPreview>} adjustedColumn\n     */\n    ;\n\n    _proto.onColumnResize = function onColumnResize(column, width, adjustedColumn) {\n      this.resizeUtils.resizeColumn(column, width, adjustedColumn);\n    }\n    /**\n     * Init the droppable & resizing interactions\n     *\n     * @param group\n     */\n    ;\n\n    _proto.bindInteractions = function bindInteractions(group) {\n      this.groupElement = (0, _jquery)(group);\n      this.initDroppable(this.groupElement);\n      this.initMouseMove(this.groupElement); // Handle the mouse leaving the window\n\n      (0, _jquery)(\"body\").mouseleave(this.endAllInteractions.bind(this));\n    }\n    /**\n     * Init the drop placeholder\n     * @deprecated - dropPlaceholder functionality moved to column-line\n     *\n     * @param {Element} element\n     */\n    ;\n\n    _proto.bindDropPlaceholder = function bindDropPlaceholder(element) {\n      this.dropPlaceholder = (0, _jquery)(element);\n    }\n    /**\n     * Init the move placeholder\n     *\n     * @param {Element} element\n     */\n    ;\n\n    _proto.bindMovePlaceholder = function bindMovePlaceholder(element) {\n      this.movePlaceholder = (0, _jquery)(element);\n    }\n    /**\n     * Retrieve the ghost element from the template\n     *\n     * @param {Element} ghost\n     */\n    ;\n\n    _proto.bindGhost = function bindGhost(ghost) {\n      this.resizeGhost = (0, _jquery)(ghost);\n    }\n    /**\n     * Register a resize handle within a child column\n     * @deprecated\n     * @param {ContentTypeCollectionInterface<ColumnPreview>} column\n     * @param {JQuery} handle\n     */\n    ;\n\n    _proto.registerResizeHandle = function registerResizeHandle(column, handle) {\n      var _this6 = this;\n\n      handle.off(\"mousedown touchstart\");\n      handle.on(\"mousedown touchstart\", function (event) {\n        event.preventDefault();\n\n        var groupPosition = _this6.getGroupPosition(_this6.groupElement);\n\n        _this6.resizing(true);\n\n        _this6.resizeColumnInstance = column;\n        _this6.resizeColumnWidths = _this6.resizeUtils.determineColumnWidths(_this6.resizeColumnInstance, groupPosition);\n        _this6.resizeMaxGhostWidth = (0, _resize.determineMaxGhostWidth)(_this6.resizeColumnWidths); // Force the cursor to resizing\n\n        (0, _jquery)(\"body\").css(\"cursor\", \"col-resize\"); // Reset the resize history\n\n        _this6.resizeHistory = {\n          left: [],\n          right: []\n        };\n        _this6.resizeLastPosition = null;\n        _this6.resizeMouseDown = true;\n        ++_this6.interactionLevel;\n\n        _events.trigger(\"stage:interactionStart\", {\n          stageId: _this6.contentType.stageId\n        });\n      });\n    }\n    /**\n     * Bind draggable instances to the child columns\n     *\n     * @param {ContentTypeCollectionInterface<ColumnPreview>} column\n     */\n    ;\n\n    _proto.bindDraggable = function bindDraggable(column) {\n      var _this7 = this;\n\n      column.preview.element.draggable({\n        appendTo: \"body\",\n        containment: \"body\",\n        cursor: \"-webkit-grabbing\",\n        handle: \".move-column\",\n        revertDuration: 250,\n        helper: function helper() {\n          var helper = (0, _jquery)(this).clone();\n          helper.css({\n            height: (0, _jquery)(this).outerHeight() + \"px\",\n            minHeight: 0,\n            opacity: 0.5,\n            pointerEvents: \"none\",\n            width: (0, _jquery)(this).outerWidth() + \"px\",\n            zIndex: 5000\n          });\n          return helper;\n        },\n        start: function start(event) {\n          var columnInstance = _knockout.dataFor((0, _jquery)(event.target)[0]); // Use the global state as columns can be dragged between groups\n\n\n          (0, _registry2.setDragColumn)(columnInstance.contentType);\n          _this7.dropPositions = (0, _dragAndDrop.calculateDropPositions)(_this7.contentType);\n          _this7.startDragEvent = event;\n\n          _events.trigger(\"column:dragStart\", {\n            column: columnInstance,\n            stageId: _this7.contentType.stageId\n          });\n\n          _events.trigger(\"stage:interactionStart\", {\n            stageId: _this7.contentType.stageId\n          });\n        },\n        stop: function stop() {\n          var draggedColumn = (0, _registry2.getDragColumn)();\n\n          if (_this7.movePosition && draggedColumn) {\n            // Check if we're moving within the same group, even though this function will\n            // only ever run on the group that bound the draggable event\n            if (draggedColumn.parentContentType === _this7.contentType) {\n              _this7.onColumnSort(draggedColumn, _this7.movePosition.insertIndex);\n\n              _this7.movePosition = null;\n            }\n          }\n\n          (0, _registry2.removeDragColumn)();\n\n          _this7.movePlaceholder.removeClass(\"active\");\n\n          _this7.startDragEvent = null;\n\n          _events.trigger(\"column:dragStop\", {\n            column: draggedColumn,\n            stageId: _this7.contentType.stageId\n          });\n\n          _events.trigger(\"stage:interactionStop\", {\n            stageId: _this7.contentType.stageId\n          });\n        }\n      });\n    }\n    /**\n     * Update the grid size on enter or blur of the input\n     */\n    ;\n\n    _proto.updateGridSize = function updateGridSize() {\n      var _this8 = this;\n\n      if (!_jquery.isNumeric(this.gridSizeInput())) {\n        this.gridSizeError((0, _translate)(\"Please enter a valid number.\"));\n      }\n\n      var newGridSize = parseInt(this.gridSizeInput().toString(), 10);\n\n      if (newGridSize || newGridSize === 0) {\n        if (newGridSize !== this.resizeUtils.getGridSize() || true) {\n          try {\n            (0, _gridSize.resizeGrid)(this.contentType, newGridSize, this.gridSizeHistory);\n            this.recordGridResize(newGridSize);\n            this.gridSizeError(null); // Make the grid \"flash\" on successful change\n\n            this.gridChange(true);\n\n            _underscore.delay(function () {\n              _this8.gridChange(false);\n            }, 1000);\n          } catch (e) {\n            if (e instanceof _gridSize.GridSizeError) {\n              this.gridSizeError(e.message);\n            } else {\n              throw e;\n            }\n          }\n        } else {\n          this.gridSizeError(null);\n        }\n      }\n    }\n    /**\n     * @param {ContentTypeInterface | ContentTypeCollectionInterface} contentType\n     * @private\n     */\n    ;\n\n    _proto.hasColumnLine = function hasColumnLine(contentType) {\n      var children = this.contentType.getChildren()();\n      var hasColumnLine = false;\n\n      if (children.length === 0 && (0, _checkStageFullScreen)(contentType.stageId)) {\n        // new column group, so it has a column line\n        hasColumnLine = true;\n      }\n\n      children.forEach(function (child) {\n        if (child.config.name === \"column-line\") {\n          hasColumnLine = true;\n        }\n      });\n      return hasColumnLine;\n    }\n    /**\n     * If the column group does not have a column line, move contents to a new column group with a column line\n     */\n    ;\n\n    _proto.moveContentsToNewColumnGroup = function moveContentsToNewColumnGroup() {\n      var _this9 = this;\n\n      if (this.hasColumnLine(this.contentType)) {\n        // This column-group already has a column line. Don't need to add one.\n        return;\n      }\n\n      var indexToInsertNewColumnGroupAt = this.getCurrentIndexInParent();\n      (0, _contentTypeFactory)(_config.getContentTypeConfig(\"column-group\"), this.contentType.parentContentType, this.contentType.stageId).then(function (columnGroup) {\n        _this9.contentType.parentContentType.addChild(columnGroup, indexToInsertNewColumnGroupAt);\n\n        _events.trigger(columnGroup.config.name + \":dropAfter\", {\n          id: columnGroup.id,\n          columnGroup: columnGroup,\n          columnGroupWithoutColumnLine: _this9.contentType\n        });\n\n        _this9.fireMountEvent(_this9.contentType, columnGroup);\n      });\n    }\n    /**\n     * @private return index of current content type in parent\n     */\n    ;\n\n    _proto.getCurrentIndexInParent = function getCurrentIndexInParent() {\n      var parentContentType = this.contentType.parentContentType;\n      var currentIndex = 0;\n\n      for (var _iterator = _createForOfIteratorHelperLoose(this.contentType.parentContentType.getChildren()()), _step; !(_step = _iterator()).done;) {\n        var sibling = _step.value;\n\n        if (sibling.id !== this.contentType.id) {\n          currentIndex++;\n          continue;\n        }\n\n        break;\n      }\n\n      return currentIndex;\n    }\n    /**\n     * Fire the mount event for content types\n     *\n     * @param {ContentTypeInterface[]} contentTypes\n     */\n    ;\n\n    _proto.fireMountEvent = function fireMountEvent() {\n      for (var _len = arguments.length, contentTypes = new Array(_len), _key = 0; _key < _len; _key++) {\n        contentTypes[_key] = arguments[_key];\n      }\n\n      contentTypes.forEach(function (contentType) {\n        _events.trigger(\"contentType:mountAfter\", {\n          id: contentType.id,\n          contentType: contentType\n        });\n\n        _events.trigger(contentType.config.name + \":mountAfter\", {\n          id: contentType.id,\n          contentType: contentType\n        });\n      });\n    }\n    /**\n     * Set columns in the group as resizing\n     *\n     * @param {Array<ContentTypeCollectionInterface<ColumnPreview>>} columns\n     */\n    ;\n\n    _proto.setColumnsAsResizing = function setColumnsAsResizing() {\n      for (var _len2 = arguments.length, columns = new Array(_len2), _key2 = 0; _key2 < _len2; _key2++) {\n        columns[_key2] = arguments[_key2];\n      }\n\n      columns.forEach(function (column) {\n        column.preview.resizing(true);\n        column.preview.element.css({\n          transition: \"width 350ms ease-in-out\"\n        });\n      });\n    }\n    /**\n     * Unset resizing flag on all child columns\n     */\n    ;\n\n    _proto.unsetResizingColumns = function unsetResizingColumns() {\n      this.contentType.children().forEach(function (column) {\n        column.preview.resizing(false);\n\n        if (column.preview.element) {\n          column.preview.element.css({\n            transition: \"\"\n          });\n        }\n      });\n    }\n    /**\n     * End all current interactions\n     */\n    ;\n\n    _proto.endAllInteractions = function endAllInteractions() {\n      if (this.resizing() === true) {\n        for (; this.interactionLevel > 0; this.interactionLevel--) {\n          _events.trigger(\"stage:interactionStop\", {\n            stageId: this.contentType.stageId\n          });\n        }\n      }\n\n      this.resizing(false);\n      this.resizeMouseDown = null;\n      this.resizeLeftLastColumnShrunk = this.resizeRightLastColumnShrunk = null;\n      this.dropPositions = []; // this.unsetResizingColumns();\n      // Change the cursor back\n\n      (0, _jquery)(\"body\").css(\"cursor\", \"\");\n      this.movePlaceholder.css(\"left\", \"\").removeClass(\"active\");\n      this.resizeGhost.removeClass(\"active\"); // Reset the group positions cache\n\n      this.groupPositionCache = null;\n    }\n    /**\n     * Init the resizing events on the group\n     *\n     * @param {JQuery} group\n     */\n    ;\n\n    _proto.initMouseMove = function initMouseMove(group) {\n      var _this10 = this;\n\n      var intersects = false;\n      (0, _jquery)(document).on(\"mousemove touchmove\", function (event) {\n        if (group.parents(_sortable.hiddenClass).length > 0) {\n          return;\n        }\n\n        var groupPosition = _this10.getGroupPosition(group); // If we're handling a touch event we need to pass through the page X & Y\n\n\n        if (event.type === \"touchmove\") {\n          event.pageX = event.originalEvent.pageX;\n          event.pageY = event.originalEvent.pageY;\n        }\n\n        if (_this10.eventIntersectsGroup(event, groupPosition)) {\n          intersects = true; // @todo make column re-sizing work\n\n          _this10.onResizingMouseMove(event, group, groupPosition);\n        } else {\n          intersects = false;\n          _this10.groupPositionCache = null;\n          _this10.dropPosition = null;\n\n          _this10.movePlaceholder.css(\"left\", \"\").removeClass(\"active\");\n        }\n      }).on(\"mouseup touchend\", function () {\n        intersects = false;\n        _this10.dropPosition = null;\n\n        _this10.endAllInteractions();\n\n        _underscore.defer(function () {\n          // Re-enable any disabled sortable areas\n          group.find(\".ui-sortable\").each(function () {\n            if ((0, _jquery)(this).data(\"ui-sortable\")) {\n              (0, _jquery)(this).sortable(\"option\", \"disabled\", false);\n            }\n          });\n        });\n      });\n    }\n    /**\n     * Handle the mouse up action, either adding a new column or moving an existing\n     * @deprecated\n     */\n    ;\n\n    _proto.handleMouseUp = function handleMouseUp() {\n      if (this.dropOverElement && this.dropPosition) {\n        this.onNewColumnDrop(this.dropPosition);\n        this.dropOverElement = null; // Re-enable the parent disabled sortable instance\n\n        _underscore.defer(function () {\n          (0, _jquery)(\".element-children.ui-sortable-disabled\").each(function () {\n            (0, _jquery)(this).sortable(\"option\", \"disabled\", false);\n          });\n        });\n      }\n\n      var column = (0, _registry2.getDragColumn)();\n\n      if (this.movePosition && column && column.parentContentType !== this.contentType) {\n        this.onExistingColumnDrop(this.movePosition);\n      }\n    }\n    /**\n     * Does the current event intersect with the group?\n     *\n     * @param {JQueryEventObject} event\n     * @param {GroupPositionCache} groupPosition\n     * @returns {boolean}\n     */\n    ;\n\n    _proto.eventIntersectsGroup = function eventIntersectsGroup(event, groupPosition) {\n      return event.pageY > groupPosition.top && event.pageY < groupPosition.top + groupPosition.outerHeight && event.pageX > groupPosition.left && event.pageX < groupPosition.left + groupPosition.outerWidth;\n    }\n    /**\n     * Cache the groups positions\n     *\n     * @param {JQuery} group\n     * @returns {GroupPositionCache}\n     */\n    ;\n\n    _proto.getGroupPosition = function getGroupPosition(group) {\n      if (!this.groupPositionCache) {\n        this.groupPositionCache = {\n          top: group.offset().top,\n          left: group.offset().left,\n          width: group.width(),\n          height: group.height(),\n          outerWidth: group.outerWidth(),\n          outerHeight: group.outerHeight()\n        };\n      }\n\n      return this.groupPositionCache;\n    }\n    /**\n     * Record the resizing history for this action\n     *\n     * @param {string} usedHistory\n     * @param {string} direction\n     * @param {ContentTypeCollectionInterface<ColumnPreview>} adjustedColumn\n     * @param {string} modifyColumnInPair\n     */\n    ;\n\n    _proto.recordResizeHistory = function recordResizeHistory(usedHistory, direction, adjustedColumn, modifyColumnInPair) {\n      if (usedHistory) {\n        this.resizeHistory[usedHistory].pop();\n      }\n\n      this.resizeHistory[direction].push({\n        adjustedColumn: adjustedColumn,\n        modifyColumnInPair: modifyColumnInPair\n      });\n    }\n    /**\n     * Handle the resizing on mouse move, we always resize a pair of columns at once\n     *\n     * @param {JQueryEventObject} event\n     * @param {JQuery} group\n     * @param {GroupPositionCache} groupPosition\n     */\n    ;\n\n    _proto.onResizingMouseMove = function onResizingMouseMove(event, group, groupPosition) {\n      var _this11 = this;\n\n      var newColumnWidth;\n\n      if (this.resizeMouseDown) {\n        event.preventDefault();\n        var currentPos = event.pageX;\n        var resizeColumnLeft = this.resizeColumnInstance.preview.element.offset().left;\n        var resizeColumnWidth = this.resizeColumnInstance.preview.element.outerWidth();\n        var resizeHandlePosition = resizeColumnLeft + resizeColumnWidth;\n        var direction = currentPos >= resizeHandlePosition ? \"right\" : \"left\";\n        var adjustedColumn;\n        var modifyColumnInPair; // We need to know if we're modifying the left or right column in the pair\n\n        var usedHistory; // Was the adjusted column pulled from history?\n        // Determine which column in the group should be adjusted for this action\n\n        var _this$resizeUtils$det = this.resizeUtils.determineAdjustedColumn(currentPos, this.resizeColumnInstance, this.resizeHistory);\n\n        adjustedColumn = _this$resizeUtils$det[0];\n        modifyColumnInPair = _this$resizeUtils$det[1];\n        usedHistory = _this$resizeUtils$det[2];\n        // Calculate the ghost width based on mouse position and bounds of allowed sizes\n        var ghostWidth = this.resizeUtils.calculateGhostWidth(groupPosition, currentPos, this.resizeColumnInstance, modifyColumnInPair, this.resizeMaxGhostWidth);\n        this.resizeGhost.width(ghostWidth - 15 + \"px\").addClass(\"active\");\n\n        if (adjustedColumn && this.resizeColumnWidths) {\n          newColumnWidth = this.resizeColumnWidths.find(function (val) {\n            return (0, _resize.comparator)(currentPos, val.position, 35) && val.forColumn === modifyColumnInPair;\n          });\n\n          if (newColumnWidth) {\n            var mainColumn = this.resizeColumnInstance; // If we're using the left data set, we're actually resizing the right column of the group\n\n            if (modifyColumnInPair === \"right\") {\n              mainColumn = (0, _resize.getAdjacentColumn)(this.resizeColumnInstance, \"+1\");\n            } // Ensure we aren't resizing multiple times, also validate the last resize isn't the same as the\n            // one being performed now. This occurs as we re-calculate the column positions on resize, we have\n            // to use the comparator as the calculation may result in slightly different numbers due to rounding\n\n\n            if (this.resizeUtils.getColumnWidth(mainColumn) !== newColumnWidth.width && !(0, _resize.comparator)(this.resizeLastPosition, newColumnWidth.position, 10)) {\n              // If our previous action was to resize the right column in pair, and we're now dragging back\n              // to the right, but have matched a column for the left we need to fix the columns being\n              // affected\n              if (usedHistory && this.resizeLastColumnInPair === \"right\" && direction === \"right\" && newColumnWidth.forColumn === \"left\") {\n                var originalMainColumn = mainColumn;\n                mainColumn = adjustedColumn;\n                adjustedColumn = (0, _resize.getAdjacentColumn)(originalMainColumn, \"+1\");\n              }\n\n              this.recordResizeHistory(usedHistory, direction, adjustedColumn, modifyColumnInPair);\n              this.resizeLastPosition = newColumnWidth.position;\n              this.resizeLastColumnInPair = modifyColumnInPair; // Ensure the adjusted column is marked as resizing to animate correctly\n\n              this.setColumnsAsResizing(mainColumn, adjustedColumn);\n              this.onColumnResize(mainColumn, newColumnWidth.width, adjustedColumn); // Wait for the render cycle to finish from the above resize before re-calculating\n\n              _underscore.defer(function () {\n                // If we do a resize, re-calculate the column widths\n                _this11.resizeColumnWidths = _this11.resizeUtils.determineColumnWidths(_this11.resizeColumnInstance, groupPosition);\n                _this11.resizeMaxGhostWidth = (0, _resize.determineMaxGhostWidth)(_this11.resizeColumnWidths);\n              });\n            }\n          }\n        }\n      }\n    }\n    /**\n     * Handle a column being dragged around the group\n     * @deprecated - this is now handled in column-line/preview onDraggingMouseMove\n     * @param {JQueryEventObject} event\n     * @param {JQuery} group\n     * @param {GroupPositionCache} groupPosition\n     */\n    ;\n\n    _proto.onDraggingMouseMove = function onDraggingMouseMove(event, group, groupPosition) {\n      var dragColumn = (0, _registry2.getDragColumn)();\n\n      if (dragColumn) {\n        // If the drop positions haven't been calculated for this group do so now\n        if (this.dropPositions.length === 0) {\n          this.dropPositions = (0, _dragAndDrop.calculateDropPositions)(this.contentType);\n        }\n\n        var columnInstance = dragColumn;\n        var currentX = event.pageX - groupPosition.left; // Are we within the same column group or have we ended up over another?\n\n        if (columnInstance.parentContentType === this.contentType && this.startDragEvent) {\n          var dragDirection = event.pageX <= this.startDragEvent.pageX ? \"left\" : \"right\";\n          var adjacentLeftColumn = (0, _resize.getAdjacentColumn)(dragColumn, \"-1\"); // Determine the current move position based on the cursors position and direction of drag\n\n          this.movePosition = this.dropPositions.find(function (position) {\n            return currentX > position.left && currentX < position.right && position.placement === dragDirection && position.affectedColumn !== dragColumn;\n          }); // Differences in the element & event positions cause a right movement to activate on the left column\n\n          if (this.movePosition && dragDirection === \"right\" && this.movePosition.affectedColumn === adjacentLeftColumn) {\n            this.movePosition = null;\n          }\n\n          if (this.movePosition) {\n            this.movePlaceholder.css({\n              left: this.movePosition.placement === \"left\" ? this.movePosition.left : \"\",\n              right: this.movePosition.placement === \"right\" ? groupPosition.width - this.movePosition.right : \"\",\n              width: dragColumn.preview.element.outerWidth() + \"px\"\n            }).addClass(\"active\");\n          } else {\n            this.movePlaceholder.removeClass(\"active\");\n          }\n        } else {\n          // If we're moving to another column group we utilise the existing drop placeholder\n          this.movePosition = this.dropPositions.find(function (position) {\n            return currentX > position.left && currentX <= position.right && position.canShrink;\n          });\n\n          if (this.movePosition) {\n            var classToRemove = this.movePosition.placement === \"left\" ? \"right\" : \"left\";\n            this.movePlaceholder.removeClass(\"active\");\n          }\n        }\n      }\n    }\n    /**\n     * Handle mouse move events on when dropping elements\n     *\n     * @param {JQueryEventObject} event\n     * @param {JQuery} group\n     * @param {GroupPositionCache} groupPosition\n     * @deprecated now handled in column-line/preview\n     */\n    ;\n\n    _proto.onDroppingMouseMove = function onDroppingMouseMove(event, group, groupPosition) {\n      var elementChildrenParent = group.parents(\".element-children\"); // Only initiate this process if we're within the group by a buffer to allow for sortable to function correctly\n\n      if (this.dropOverElement && event.pageY > groupPosition.top + 20 && event.pageY < groupPosition.top + groupPosition.outerHeight - 20) {\n        // Disable the column group sortable instance\n        if (elementChildrenParent.data(\"ui-sortable\")) {\n          elementChildrenParent.sortable(\"option\", \"disabled\", true);\n        }\n\n        var currentX = event.pageX - groupPosition.left;\n        this.dropPosition = this.dropPositions.find(function (position) {\n          return currentX > position.left && currentX <= position.right && position.canShrink;\n        });\n      } else if (this.dropOverElement) {\n        // Re-enable the column group sortable instance\n        if (elementChildrenParent.data(\"ui-sortable\")) {\n          elementChildrenParent.sortable(\"option\", \"disabled\", false);\n        }\n\n        this.dropPosition = null;\n      }\n    }\n    /**\n     * Init the droppable functionality for new columns\n     *\n     * @param {JQuery} group\n     */\n    ;\n\n    _proto.initDroppable = function initDroppable(group) {\n      var self = this;\n      var headStyles;\n      group.droppable({\n        deactivate: function deactivate() {\n          self.dropOverElement = null;\n\n          _underscore.defer(function () {\n            // Re-enable the column group sortable instance & all children sortable instances\n            group.parents(\".element-children\").each(function () {\n              if ((0, _jquery)(this).data(\"ui-sortable\")) {\n                (0, _jquery)(this).sortable(\"option\", \"disabled\", false);\n              }\n            });\n          });\n        },\n        activate: function activate() {\n          if ((0, _registry.getDraggedContentTypeConfig)() === _config.getContentTypeConfig(\"column-group\")) {\n            var _ref;\n\n            group.find(\".ui-sortable\").each(function () {\n              if ((0, _jquery)(this).data(\"ui-sortable\")) {\n                (0, _jquery)(this).sortable(\"option\", \"disabled\", true);\n              }\n            });\n            var classes = [\".pagebuilder-content-type.pagebuilder-column .pagebuilder-drop-indicator\", \".pagebuilder-content-type.pagebuilder-column .empty-container .content-type-container:before\"]; // Ensure we don't display any drop indicators inside the column\n\n            headStyles = (0, _createStylesheet.createStyleSheet)((_ref = {}, _ref[classes.join(\", \")] = {\n              display: \"none!important\"\n            }, _ref));\n            document.head.appendChild(headStyles);\n          } else if (headStyles) {\n            headStyles.remove();\n            headStyles = null;\n          }\n        },\n        drop: function drop() {\n          self.dropPositions = [];\n        },\n        out: function out() {\n          self.dropOverElement = null;\n        },\n        over: function over() {\n          // Is the element currently being dragged a column group?\n          if ((0, _registry.getDraggedContentTypeConfig)() === _config.getContentTypeConfig(\"column-group\")) {\n            // Always calculate drop positions when an element is dragged over\n            self.dropOverElement = true;\n          } else {\n            self.dropOverElement = null;\n          }\n        }\n      });\n    }\n    /**\n     * Spread any empty space across the other columns when a column is removed\n     *\n     * @param {number} removedIndex\n     */\n    ;\n\n    _proto.spreadWidth = function spreadWidth(removedIndex) {\n      if (this.contentType.children().length === 0) {\n        return;\n      }\n\n      var availableWidth = 100 - this.resizeUtils.getColumnsWidth();\n      var formattedAvailableWidth = (0, _resize.getRoundedColumnWidth)(availableWidth);\n      var totalChildColumns = this.contentType.children().length;\n      var allowedColumnWidths = [];\n      var spreadAcross = 1;\n      var spreadAmount;\n\n      for (var i = this.resizeUtils.getGridSize(); i > 0; i--) {\n        allowedColumnWidths.push((0, _resize.getRoundedColumnWidth)(100 / this.resizeUtils.getGridSize() * i));\n      } // Determine how we can spread the empty space across the columns\n\n\n      for (var _i = totalChildColumns; _i > 0; _i--) {\n        var potentialWidth = Math.floor(formattedAvailableWidth / _i);\n\n        for (var _iterator2 = _createForOfIteratorHelperLoose(allowedColumnWidths), _step2; !(_step2 = _iterator2()).done;) {\n          var width = _step2.value;\n\n          if (potentialWidth === Math.floor(width)) {\n            spreadAcross = _i;\n            spreadAmount = formattedAvailableWidth / _i;\n            break;\n          }\n        }\n\n        if (spreadAmount) {\n          break;\n        }\n      } // Let's spread the width across the columns\n\n\n      for (var _i2 = 1; _i2 <= spreadAcross; _i2++) {\n        var columnToModify = void 0; // As the original column has been removed from the array, check the new index for a column\n\n        if (removedIndex <= this.contentType.children().length && typeof this.contentType.children()[removedIndex] !== \"undefined\") {\n          columnToModify = this.contentType.children()[removedIndex];\n        }\n\n        if (!columnToModify && removedIndex - _i2 >= 0 && typeof this.contentType.children()[removedIndex - _i2] !== \"undefined\") {\n          columnToModify = this.contentType.children()[removedIndex - _i2];\n        }\n\n        if (columnToModify) {\n          (0, _resize.updateColumnWidth)(columnToModify, this.resizeUtils.getColumnWidth(columnToModify) + spreadAmount);\n        }\n      }\n    }\n    /**\n     * Remove self if we contain no children\n     */\n    ;\n\n    _proto.removeIfEmpty = function removeIfEmpty() {\n      if (this.contentType.children().length === 0) {\n        this.contentType.parentContentType.removeChild(this.contentType);\n        return;\n      }\n    }\n    /**\n     * Record the grid resize operation into a history for later restoration\n     *\n     * @param {number} newGridSize\n     */\n    ;\n\n    _proto.recordGridResize = function recordGridResize(newGridSize) {\n      var _this12 = this;\n\n      // @todo evaluate utility of having a grid size history\n      return;\n\n      if (!this.gridSizeHistory.has(newGridSize)) {\n        var columnWidths = [];\n        this.contentType.getChildren()().forEach(function (column) {\n          columnWidths.push(_this12.resizeUtils.getColumnWidth(column));\n        });\n        this.gridSizeHistory.set(newGridSize, columnWidths);\n      }\n    }\n    /**\n     * Figure out the maximum number of non-empty columns in various column lines\n     * @private\n     */\n    ;\n\n    _proto.getNonEmptyColumnCount = function getNonEmptyColumnCount() {\n      var nonEmptyColumnCount = 0;\n      this.contentType.getChildren()().forEach(function (columnLine, index) {\n        var numEmptyColumns = 0;\n        var numCols = columnLine.getChildren()().length;\n        columnLine.getChildren()().forEach(function (column) {\n          if (column.getChildren()().length === 0) {\n            numEmptyColumns++;\n          }\n        });\n\n        if (numCols - numEmptyColumns > nonEmptyColumnCount) {\n          nonEmptyColumnCount = numCols - numEmptyColumns;\n        }\n      });\n      return nonEmptyColumnCount;\n    };\n\n    return Preview;\n  }(_previewCollection);\n\n  return Preview;\n});\n//# sourceMappingURL=preview.js.map","Magento_PageBuilder/js/content-type/column-group/grid-size.js":"/*eslint-disable */\n/* jscs:disable */\n\nfunction _assertThisInitialized(self) { if (self === void 0) { throw new ReferenceError(\"this hasn't been initialised - super() hasn't been called\"); } return self; }\n\nfunction _inheritsLoose(subClass, superClass) { subClass.prototype = Object.create(superClass.prototype); subClass.prototype.constructor = subClass; _setPrototypeOf(subClass, superClass); }\n\nfunction _wrapNativeSuper(Class) { var _cache = typeof Map === \"function\" ? new Map() : undefined; _wrapNativeSuper = function _wrapNativeSuper(Class) { if (Class === null || !_isNativeFunction(Class)) return Class; if (typeof Class !== \"function\") { throw new TypeError(\"Super expression must either be null or a function\"); } if (typeof _cache !== \"undefined\") { if (_cache.has(Class)) return _cache.get(Class); _cache.set(Class, Wrapper); } function Wrapper() { return _construct(Class, arguments, _getPrototypeOf(this).constructor); } Wrapper.prototype = Object.create(Class.prototype, { constructor: { value: Wrapper, enumerable: false, writable: true, configurable: true } }); return _setPrototypeOf(Wrapper, Class); }; return _wrapNativeSuper(Class); }\n\nfunction _construct(Parent, args, Class) { if (_isNativeReflectConstruct()) { _construct = Reflect.construct; } else { _construct = function _construct(Parent, args, Class) { var a = [null]; a.push.apply(a, args); var Constructor = Function.bind.apply(Parent, a); var instance = new Constructor(); if (Class) _setPrototypeOf(instance, Class.prototype); return instance; }; } return _construct.apply(null, arguments); }\n\nfunction _isNativeReflectConstruct() { if (typeof Reflect === \"undefined\" || !Reflect.construct) return false; if (Reflect.construct.sham) return false; if (typeof Proxy === \"function\") return true; try { Boolean.prototype.valueOf.call(Reflect.construct(Boolean, [], function () {})); return true; } catch (e) { return false; } }\n\nfunction _isNativeFunction(fn) { return Function.toString.call(fn).indexOf(\"[native code]\") !== -1; }\n\nfunction _setPrototypeOf(o, p) { _setPrototypeOf = Object.setPrototypeOf || function _setPrototypeOf(o, p) { o.__proto__ = p; return o; }; return _setPrototypeOf(o, p); }\n\nfunction _getPrototypeOf(o) { _getPrototypeOf = Object.setPrototypeOf ? Object.getPrototypeOf : function _getPrototypeOf(o) { return o.__proto__ || Object.getPrototypeOf(o); }; return _getPrototypeOf(o); }\n\nfunction _createForOfIteratorHelperLoose(o, allowArrayLike) { var it = typeof Symbol !== \"undefined\" && o[Symbol.iterator] || o[\"@@iterator\"]; if (it) return (it = it.call(o)).next.bind(it); if (Array.isArray(o) || (it = _unsupportedIterableToArray(o)) || allowArrayLike && o && typeof o.length === \"number\") { if (it) o = it; var i = 0; return function () { if (i >= o.length) return { done: true }; return { done: false, value: o[i++] }; }; } throw new TypeError(\"Invalid attempt to iterate non-iterable instance.\\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.\"); }\n\nfunction _unsupportedIterableToArray(o, minLen) { if (!o) return; if (typeof o === \"string\") return _arrayLikeToArray(o, minLen); var n = Object.prototype.toString.call(o).slice(8, -1); if (n === \"Object\" && o.constructor) n = o.constructor.name; if (n === \"Map\" || n === \"Set\") return Array.from(o); if (n === \"Arguments\" || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)) return _arrayLikeToArray(o, minLen); }\n\nfunction _arrayLikeToArray(arr, len) { if (len == null || len > arr.length) len = arr.length; for (var i = 0, arr2 = new Array(len); i < len; i++) { arr2[i] = arr[i]; } return arr2; }\n\ndefine([\"mage/translate\", \"Magento_PageBuilder/js/config\", \"Magento_PageBuilder/js/content-type/column/resize\"], function (_translate, _config, _resize) {\n  /**\n   * Copyright \u00a9 Magento, Inc. All rights reserved.\n   * See COPYING.txt for license details.\n   */\n\n  /**\n   * Retrieve default  grid size\n   *\n   * @returns {number}\n   */\n  function getDefaultGridSize() {\n    return parseInt(_config.getConfig(\"column_grid_default\"), 10);\n  }\n  /**\n   * Retrieve the max grid size\n   *\n   * @returns {number}\n   */\n\n\n  function getMaxGridSize() {\n    return parseInt(_config.getConfig(\"column_grid_max\"), 10);\n  }\n  /**\n   * Apply the new grid size, adjusting the existing columns as needed.\n   *\n   * Rules for resizing the grid:\n   *  - The grid size can be increased up to the configured maximum value.\n   *  - The grid size can be decreased only if the number of non-empty columns is less than or equal to the new size.\n   *  - If the new grid size is less than the number of columns currently in the grid, empty columns will be deleted\n   *    to accommodate the new size.\n   *\n   * @param {ContentTypeCollectionInterface<Preview>} columnGroup\n   * @param {number} newGridSize\n   * @param {Map<number, number[]>} gridSizeHistory\n   */\n\n\n  function resizeGrid(columnGroup, newGridSize, gridSizeHistory) {\n    if (newGridSize === columnGroup.preview.getResizeUtils().getInitialGridSize()) {\n      return;\n    }\n\n    validateNewGridSize(columnGroup, newGridSize);\n    columnGroup.getChildren()().forEach(function (columnLine, index) {\n      // if we have more columns than the new grid size allows, remove empty columns till the correct size\n      console.log(columnLine.getChildren()().length);\n\n      if (newGridSize < columnLine.getChildren()().length) {\n        removeEmptyColumnsToFit(columnLine, newGridSize);\n      }\n    }); // update column widths\n\n    redistributeColumnWidths(columnGroup, newGridSize, gridSizeHistory);\n  }\n  /**\n   * Validate that the new grid size is within the configured limits and can be achieved.\n   *\n   * @param {ContentTypeCollectionInterface<Preview>} columnGroup\n   * @param {number} newGridSize\n   */\n\n\n  function validateNewGridSize(columnGroup, newGridSize) {\n    // Validate against the max grid size\n    if (newGridSize > getMaxGridSize()) {\n      throw new GridSizeError((0, _translate)(\"The maximum grid size supported is \" + getMaxGridSize() + \".\"));\n    } else if (newGridSize < 2) {\n      throw new GridSizeError((0, _translate)(\"The minimum grid size supported is 2.\"));\n    } // Validate that the operation will be successful\n\n\n    var doThrowException = false;\n    columnGroup.getChildren()().forEach(function (columnLine, index) {\n      var numEmptyColumns = 0;\n      var numCols = columnLine.getChildren()().length;\n      var currentGridSize = columnLine.preview.getResizeUtils().getInitialGridSize();\n\n      if (newGridSize < currentGridSize && numCols > newGridSize) {\n        columnLine.getChildren()().forEach(function (column) {\n          if (column.getChildren()().length === 0) {\n            numEmptyColumns++;\n          }\n        });\n\n        if (newGridSize < numCols - numEmptyColumns) {\n          doThrowException = true;\n        }\n      }\n    });\n\n    if (doThrowException) {\n      throw new Error((0, _translate)(\"Grid size cannot be smaller than the current total amount of columns, minus any empty columns.\"));\n    }\n  }\n  /**\n   * Remove empty columns so we can accommodate the new grid size\n   *\n   * @param {ContentTypeCollectionInterface<Preview>} columnGroup\n   * @param {number} newGridSize\n   */\n\n\n  function removeEmptyColumnsToFit(columnLine, newGridSize) {\n    var columns = columnLine.getChildren()();\n    var numColumns = columns.length;\n    var i;\n\n    for (i = numColumns - 1; i >= 0; i--) {\n      var column = columns[i];\n\n      if (newGridSize < numColumns && column.getChildren()().length === 0) {\n        columnLine.removeChild(column);\n        numColumns--;\n      }\n    }\n  }\n  /**\n   * Adjust columns widths across the new grid size, making sure each column is at least one grid size in width\n   * and the entire grid size is distributed.\n   *\n   * @param {ContentTypeCollectionInterface<Preview>} columnGroup\n   * @param {number} newGridSize\n   * @param {Map<number, number[]>} gridSizeHistory\n   */\n\n\n  function redistributeColumnWidths(columnGroup, newGridSize, gridSizeHistory) {\n    // apply known column widths if we have resized before\n    if (gridSizeHistory.has(newGridSize) && gridSizeHistory.get(newGridSize).length === columnGroup.getChildren()().length) {\n      var columnWidths = gridSizeHistory.get(newGridSize);\n      columnGroup.getChildren()().forEach(function (column, index) {\n        (0, _resize.updateColumnWidth)(column, columnWidths[index]);\n      });\n      columnGroup.dataStore.set(\"grid_size\", newGridSize);\n      columnGroup.dataStore.unset(\"initial_grid_size\");\n      return;\n    }\n\n    var columnGroupResizeUtil = columnGroup.preview.getResizeUtils();\n    var existingGridSize = columnGroupResizeUtil.getInitialGridSize();\n    var minColWidth = parseFloat((100 / newGridSize).toString()).toFixed(Math.round(100 / newGridSize) !== 100 / newGridSize ? 8 : 0);\n    columnGroup.getChildren()().forEach(function (columnLine, columnLineIndex) {\n      var totalNewWidths = 0;\n      var remainingWidth = 0;\n      var numColumns = columnLine.getChildren()().length;\n      var resizeUtils = columnLine.preview.getResizeUtils();\n      columnLine.getChildren()().forEach(function (column, index) {\n        var existingWidth = resizeUtils.getColumnWidth(column);\n        var fractionColumnWidth = Math.round(existingWidth / (100 / existingGridSize));\n        /**\n         * Determine if the grid & column are directly compatible with the new defined grid size, this will\n         * directly convert fractions to their equivalent of the new grid size.\n         *\n         * For instance changing a 12 column grid with 2 x 6 / 12 columns to a 6 grid is fully compatible.\n         *\n         * Check the existing grid size and new grid size are divisible, verify the amount of columns will fit\n         * in the new grid size and finally check the calculation to convert the existing column width results\n         * in a positive integer.\n         */\n\n        if ((existingGridSize > newGridSize && existingGridSize % newGridSize === 0 || existingGridSize < newGridSize && newGridSize % existingGridSize === 0) && newGridSize % numColumns === 0 && newGridSize / existingGridSize * fractionColumnWidth % 1 === 0) {\n          // We don't need to modify the columns width as it's compatible, we will however increment the\n          // width counter as some other columns may not be compatible.\n          totalNewWidths += existingWidth;\n        } else {\n          var newWidth = (100 * Math.floor(existingWidth / 100 * newGridSize) / newGridSize).toFixed(Math.round(100 / newGridSize) !== 100 / newGridSize ? 8 : 0); // make sure the column is at least one grid size wide\n\n          if (parseFloat(newWidth) < parseFloat(minColWidth)) {\n            newWidth = minColWidth;\n          } // make sure we leave enough space for other columns\n\n\n          var widthTaken = totalNewWidths + (numColumns - index - 1) * parseFloat(minColWidth);\n          var maxAvailableWidth = 100 - totalNewWidths;\n\n          if (parseFloat(newWidth) > maxAvailableWidth) {\n            var gridWidth = Math.round(100 / newGridSize) !== 100 / newGridSize ? 8 : 0;\n            newWidth = maxAvailableWidth.toFixed(gridWidth);\n          } // Calculate any width lost from the column, if a 5 / 12 is becoming a 2 / 6 then it's lost 1 / 12\n\n\n          remainingWidth += existingWidth - parseFloat(newWidth);\n          /**\n           * Determine if we have enough remaining width, and apply it to the current column, this results in\n           * a subsequent column always receiving any additional width from the previous column\n           */\n\n          if (resizeUtils.getSmallestColumnWidth(newGridSize) === resizeUtils.getAcceptedColumnWidth(remainingWidth.toString(), newGridSize)) {\n            var widthWithRemaining = resizeUtils.getAcceptedColumnWidth((parseFloat(newWidth) + remainingWidth).toString(), newGridSize);\n\n            if (widthWithRemaining > 0) {\n              newWidth = widthWithRemaining.toFixed(Math.round(100 / widthWithRemaining) !== 100 / widthWithRemaining ? 8 : 0);\n              remainingWidth = 0;\n            }\n          }\n\n          totalNewWidths += parseFloat(newWidth);\n          (0, _resize.updateColumnWidth)(column, parseFloat(newWidth));\n        }\n\n        column.preview.updateDisplayLabel();\n      });\n    });\n    columnGroup.dataStore.set(\"grid_size\", newGridSize);\n    columnGroup.dataStore.unset(\"initial_grid_size\");\n    columnGroup.getChildren()().forEach(function (columnLine, index) {\n      var resizeUtils = columnLine.preview.getResizeUtils();\n\n      if (Math.round(resizeUtils.getColumnsWidth()) < 100) {\n        applyLeftoverColumnsInColumnLine(columnLine, newGridSize);\n      }\n    });\n  }\n  /**\n   * Make sure the full grid size is distributed across the columns\n   *\n   * @param {ContentTypeCollectionInterface<Preview>} columnGroup\n   * @param {number} newGridSize\n   */\n\n\n  function applyLeftoverColumns(columnGroup, newGridSize) {\n    var resizeUtils = columnGroup.preview.getResizeUtils();\n    var minColWidth = parseFloat((100 / newGridSize).toString()).toFixed(Math.round(100 / newGridSize) !== 100 / newGridSize ? 8 : 0);\n    var column;\n\n    for (var _iterator = _createForOfIteratorHelperLoose(columnGroup.getChildren()()), _step; !(_step = _iterator()).done;) {\n      column = _step.value;\n\n      if (Math.round(resizeUtils.getColumnsWidth()) < 100) {\n        (0, _resize.updateColumnWidth)(column, parseFloat(resizeUtils.getColumnWidth(column).toString()) + parseFloat(minColWidth));\n      } else {\n        break;\n      }\n    }\n  }\n  /**\n   * Make sure the full grid size is distributed across the columns\n   *\n   * @param {ContentTypeCollectionInterface<Preview>} columnGroup\n   * @param {number} newGridSize\n   */\n\n\n  function applyLeftoverColumnsInColumnLine(columnLine, newGridSize) {\n    var resizeUtils = columnLine.preview.getResizeUtils();\n    var minColWidth = parseFloat((100 / newGridSize).toString()).toFixed(Math.round(100 / newGridSize) !== 100 / newGridSize ? 8 : 0);\n    var column;\n\n    for (var _iterator2 = _createForOfIteratorHelperLoose(columnLine.getChildren()()), _step2; !(_step2 = _iterator2()).done;) {\n      column = _step2.value;\n\n      if (Math.round(resizeUtils.getColumnsWidth()) < 100) {\n        (0, _resize.updateColumnWidth)(column, parseFloat(resizeUtils.getColumnWidth(column).toString()) + parseFloat(minColWidth));\n      } else {\n        break;\n      }\n    }\n  }\n\n  var GridSizeError = /*#__PURE__*/function (_Error) {\n    \"use strict\";\n\n    _inheritsLoose(GridSizeError, _Error);\n\n    function GridSizeError(m) {\n      var _this;\n\n      _this = _Error.call(this, m) || this;\n      Object.setPrototypeOf(_assertThisInitialized(_this), GridSizeError.prototype);\n      return _this;\n    }\n\n    return GridSizeError;\n  }( /*#__PURE__*/_wrapNativeSuper(Error));\n\n  return {\n    getDefaultGridSize: getDefaultGridSize,\n    getMaxGridSize: getMaxGridSize,\n    resizeGrid: resizeGrid,\n    GridSizeError: GridSizeError\n  };\n});\n//# sourceMappingURL=grid-size.js.map","Magento_PageBuilder/js/content-type/column-group/factory.js":"/*eslint-disable */\n/* jscs:disable */\ndefine([\"Magento_PageBuilder/js/config\", \"Magento_PageBuilder/js/content-type-factory\"], function (_config, _contentTypeFactory) {\n  /**\n   * Copyright \u00a9 Magento, Inc. All rights reserved.\n   * See COPYING.txt for license details.\n   */\n\n  /**\n   * Create a column and add it to it's column group\n   *\n   * @param {ContentTypeCollectionInterface} columnGroup\n   * @param {number} width\n   * @param {number} index\n   * @returns {Promise<ContentTypeCollectionInterface>}\n   */\n  function createColumn(columnGroup, width, index) {\n    return (0, _contentTypeFactory)(_config.getContentTypeConfig(\"column\"), columnGroup, columnGroup.stageId, {\n      width: parseFloat(width.toString()) + \"%\"\n    }).then(function (column) {\n      columnGroup.addChild(column, index);\n      return column;\n    }).catch(function (error) {\n      console.error(error);\n      return null;\n    });\n  }\n  /**\n   * Create a column and add it to it's column group\n   *\n   * @param {ContentTypeCollectionInterface} columnGroup\n   * @param {number} width\n   * @param {number} index\n   * @returns {Promise<ContentTypeCollectionInterface>}\n   */\n\n\n  function createColumnLine(columnGroup, width, index) {\n    return (0, _contentTypeFactory)(_config.getContentTypeConfig(\"column-line\"), columnGroup, columnGroup.stageId, {\n      width: parseFloat(width.toString()) + \"%\"\n    }).then(function (columnLine) {\n      columnGroup.addChild(columnLine, index);\n      return columnLine;\n    }).catch(function (error) {\n      console.error(error);\n      return null;\n    });\n  }\n\n  return {\n    createColumn: createColumn,\n    createColumnLine: createColumnLine\n  };\n});\n//# sourceMappingURL=factory.js.map","Magento_PageBuilder/js/content-type/image/preview.js":"/*eslint-disable */\n/* jscs:disable */\n\nfunction _inheritsLoose(subClass, superClass) { subClass.prototype = Object.create(superClass.prototype); subClass.prototype.constructor = subClass; _setPrototypeOf(subClass, superClass); }\n\nfunction _setPrototypeOf(o, p) { _setPrototypeOf = Object.setPrototypeOf || function _setPrototypeOf(o, p) { o.__proto__ = p; return o; }; return _setPrototypeOf(o, p); }\n\ndefine([\"Magento_PageBuilder/js/events\", \"Magento_PageBuilder/js/content-type-menu/hide-show-option\", \"Magento_PageBuilder/js/uploader\", \"Magento_PageBuilder/js/content-type/preview\"], function (_events, _hideShowOption, _uploader, _preview) {\n  /**\n   * Copyright \u00a9 Magento, Inc. All rights reserved.\n   * See COPYING.txt for license details.\n   */\n\n  /**\n   * @api\n   */\n  var Preview = /*#__PURE__*/function (_preview2) {\n    \"use strict\";\n\n    _inheritsLoose(Preview, _preview2);\n\n    function Preview() {\n      return _preview2.apply(this, arguments) || this;\n    }\n\n    var _proto = Preview.prototype;\n\n    /**\n     * Return an array of options\n     *\n     * @returns {OptionsInterface}\n     */\n    _proto.retrieveOptions = function retrieveOptions() {\n      var options = _preview2.prototype.retrieveOptions.call(this);\n\n      options.hideShow = new _hideShowOption({\n        preview: this,\n        icon: _hideShowOption.showIcon,\n        title: _hideShowOption.showText,\n        action: this.onOptionVisibilityToggle,\n        classes: [\"hide-show-content-type\"],\n        sort: 40\n      });\n      return options;\n    }\n    /**\n     * Get registry callback reference to uploader UI component\n     *\n     * @returns {Uploader}\n     */\n    ;\n\n    _proto.getUploader = function getUploader() {\n      var initialImageValue = this.contentType.dataStore.get(this.config.additional_data.uploaderConfig.dataScope, \"\");\n      return new _uploader(\"imageuploader_\" + this.contentType.id, this.config.additional_data.uploaderConfig, this.contentType.id, this.contentType.dataStore, initialImageValue);\n    }\n    /**\n     * Get viewport image data\n     */\n    ;\n\n    _proto.getViewportImageData = function getViewportImageData() {\n      var desktopImageData = this.data.desktop_image;\n      var mobileImageData = this.data.mobile_image;\n      return this.viewport() === \"mobile\" && typeof mobileImageData !== \"undefined\" ? mobileImageData : desktopImageData;\n    }\n    /**\n     * @inheritDoc\n     */\n    ;\n\n    _proto.bindEvents = function bindEvents() {\n      var _this = this;\n\n      _preview2.prototype.bindEvents.call(this);\n\n      _events.on(\"image:mountAfter\", function (args) {\n        if (args.id === _this.contentType.id) {\n          _this.isSnapshot.subscribe(function (value) {\n            _this.changeUploaderControlsVisibility();\n          });\n\n          _this.changeUploaderControlsVisibility();\n        }\n      });\n\n      _events.on(this.config.name + \":\" + this.contentType.id + \":updateAfter\", function () {\n        var files = _this.contentType.dataStore.get(_this.config.additional_data.uploaderConfig.dataScope);\n\n        var imageObject = files ? files[0] : {};\n\n        _events.trigger(\"image:\" + _this.contentType.id + \":assignAfter\", imageObject);\n      });\n    }\n    /**\n     * Change uploader controls visibility\n     */\n    ;\n\n    _proto.changeUploaderControlsVisibility = function changeUploaderControlsVisibility() {\n      var _this2 = this;\n\n      this.getUploader().getUiComponent()(function (uploader) {\n        uploader.visibleControls = !_this2.isSnapshot();\n      });\n    };\n\n    return Preview;\n  }(_preview);\n\n  return Preview;\n});\n//# sourceMappingURL=preview.js.map","Magento_PageBuilder/js/content-type/block/preview.js":"/*eslint-disable */\n/* jscs:disable */\n\nfunction _inheritsLoose(subClass, superClass) { subClass.prototype = Object.create(superClass.prototype); subClass.prototype.constructor = subClass; _setPrototypeOf(subClass, superClass); }\n\nfunction _setPrototypeOf(o, p) { _setPrototypeOf = Object.setPrototypeOf || function _setPrototypeOf(o, p) { o.__proto__ = p; return o; }; return _setPrototypeOf(o, p); }\n\ndefine([\"jquery\", \"knockout\", \"mage/translate\", \"Magento_PageBuilder/js/widget-initializer\", \"mageUtils\", \"underscore\", \"Magento_PageBuilder/js/config\", \"Magento_PageBuilder/js/content-type-menu/hide-show-option\", \"Magento_PageBuilder/js/content-type/style-registry\", \"Magento_PageBuilder/js/utils/object\", \"Magento_PageBuilder/js/content-type/preview\"], function (_jquery, _knockout, _translate, _widgetInitializer, _mageUtils, _underscore, _config, _hideShowOption, _styleRegistry, _object, _preview) {\n  /**\n   * Copyright \u00a9 Magento, Inc. All rights reserved.\n   * See COPYING.txt for license details.\n   */\n\n  /**\n   * @api\n   */\n  var Preview = /*#__PURE__*/function (_preview2) {\n    \"use strict\";\n\n    _inheritsLoose(Preview, _preview2);\n\n    /**\n     * @inheritdoc\n     */\n    function Preview(contentType, config, observableUpdater) {\n      var _this;\n\n      _this = _preview2.call(this, contentType, config, observableUpdater) || this;\n      _this.displayingBlockPreview = _knockout.observable(false);\n      _this.loading = _knockout.observable(false);\n      _this.messages = {\n        NOT_SELECTED: (0, _translate)(\"Empty Block\"),\n        UNKNOWN_ERROR: (0, _translate)(\"An unknown error occurred. Please try again.\")\n      };\n      _this.placeholderText = _knockout.observable(_this.messages.NOT_SELECTED);\n      return _this;\n    }\n    /**\n     * Return an array of options\n     *\n     * @returns {OptionsInterface}\n     */\n\n\n    var _proto = Preview.prototype;\n\n    _proto.retrieveOptions = function retrieveOptions() {\n      var options = _preview2.prototype.retrieveOptions.call(this);\n\n      options.hideShow = new _hideShowOption({\n        preview: this,\n        icon: _hideShowOption.showIcon,\n        title: _hideShowOption.showText,\n        action: this.onOptionVisibilityToggle,\n        classes: [\"hide-show-content-type\"],\n        sort: 40\n      });\n      return options;\n    }\n    /**\n     * Runs the widget initializer for each configured widget\n     */\n    ;\n\n    _proto.initializeWidgets = function initializeWidgets(element) {\n      if (element) {\n        this.element = element;\n        (0, _widgetInitializer)({\n          config: _config.getConfig(\"widgets\"),\n          breakpoints: _config.getConfig(\"breakpoints\"),\n          currentViewport: _config.getConfig(\"viewport\")\n        }, element);\n      }\n    }\n    /**\n     * Updates the view state using the data provided\n     * @param {DataObject} data\n     */\n    ;\n\n    _proto.processBlockData = function processBlockData(data) {\n      // Only load if something changed\n      this.displayPreviewPlaceholder(data, \"block_id\");\n\n      if (data.block_id && data.template.length !== 0) {\n        this.processRequest(data, \"block_id\", \"title\");\n      }\n    }\n    /**\n     * @inheritdoc\n     */\n    ;\n\n    _proto.afterObservablesUpdated = function afterObservablesUpdated() {\n      _preview2.prototype.afterObservablesUpdated.call(this);\n\n      var data = this.contentType.dataStore.getState(); // Only load if something changed\n\n      this.processBlockData(data);\n    }\n    /**\n     * Display preview placeholder\n     *\n     * @param {DataObject} data\n     * @param {string} identifierName\n     */\n    ;\n\n    _proto.displayPreviewPlaceholder = function displayPreviewPlaceholder(data, identifierName) {\n      var blockId = (0, _object.get)(data, identifierName); // Only load if something changed\n\n      if (this.lastBlockId === blockId && this.lastTemplate === data.template) {\n        // The mass converter will have transformed the HTML property into a directive\n        if (this.lastRenderedHtml) {\n          this.data.main.html(this.lastRenderedHtml);\n          this.showBlockPreview(true);\n          this.initializeWidgets(this.element);\n        }\n      } else {\n        this.showBlockPreview(false);\n        this.placeholderText(\"\");\n      }\n\n      if (!blockId || blockId && blockId.toString().length === 0 || data.template.length === 0) {\n        this.showBlockPreview(false);\n        this.placeholderText(this.messages.NOT_SELECTED);\n        return;\n      }\n    }\n    /**\n     *\n     * @param {DataObject} data\n     * @param {string} identifierName\n     * @param {string} labelKey\n     */\n    ;\n\n    _proto.processRequest = function processRequest(data, identifierName, labelKey) {\n      var _this2 = this;\n\n      var url = _config.getConfig(\"preview_url\");\n\n      var identifier = (0, _object.get)(data, identifierName);\n      var requestConfig = {\n        // Prevent caching\n        method: \"POST\",\n        data: {\n          role: this.config.name,\n          block_id: identifier,\n          directive: this.data.main.html()\n        }\n      };\n      this.loading(true); // Retrieve a state object representing the block from the preview controller and process it on the stage\n\n      _jquery.ajax(url, requestConfig) // The state object will contain the block name and either html or a message why there isn't any.\n      .done(function (response) {\n        // Empty content means something bad happened in the controller that didn't trigger a 5xx\n        if (typeof response.data !== \"object\") {\n          _this2.showBlockPreview(false);\n\n          _this2.placeholderText(_this2.messages.UNKNOWN_ERROR);\n\n          return;\n        } // Update the stage content type label with the real block title if provided\n\n\n        _this2.displayLabel(response.data[labelKey] ? response.data[labelKey] : _this2.config.label);\n\n        var content = \"\";\n\n        if (response.data.content) {\n          content = _this2.processContent(response.data.content);\n\n          _this2.data.main.html(content);\n\n          _this2.showBlockPreview(true);\n\n          _this2.initializeWidgets(_this2.element);\n        } else if (response.data.error) {\n          _this2.showBlockPreview(false);\n\n          _this2.placeholderText(response.data.error);\n        }\n\n        _this2.lastBlockId = parseInt(identifier.toString(), 10);\n        _this2.lastTemplate = data.template.toString();\n        _this2.lastRenderedHtml = content;\n      }).fail(function () {\n        _this2.showBlockPreview(false);\n\n        _this2.placeholderText(_this2.messages.UNKNOWN_ERROR);\n      }).always(function () {\n        _this2.loading(false);\n      });\n    }\n    /**\n     * Toggle display of block preview.  If showing block preview, add hidden mode to PB preview.\n     * @param {boolean} isShow\n     */\n    ;\n\n    _proto.showBlockPreview = function showBlockPreview(isShow) {\n      this.displayingBlockPreview(isShow);\n    }\n    /**\n     * Adapt content to view it on stage.\n     *\n     * @param content\n     */\n    ;\n\n    _proto.processContent = function processContent(content) {\n      var processedContent = this.processBackgroundImages(content);\n      processedContent = this.processBreakpointStyles(processedContent);\n      return processedContent;\n    }\n    /**\n     * Generate styles for background images.\n     *\n     * @param {string} content\n     * @return string\n     */\n    ;\n\n    _proto.processBackgroundImages = function processBackgroundImages(content) {\n      var document = new DOMParser().parseFromString(content, \"text/html\");\n      var elements = document.querySelectorAll(\"[data-background-images]\");\n      var styleBlock = document.createElement(\"style\");\n\n      var viewports = _config.getConfig(\"viewports\");\n\n      elements.forEach(function (element) {\n        var rawAttrValue = element.getAttribute(\"data-background-images\").replace(/\\\\(.)/mg, \"$1\");\n        var attrValue = JSON.parse(rawAttrValue);\n\n        var elementClass = \"background-image-\" + _mageUtils.uniqueid(13);\n\n        var rules = \"\";\n        Object.keys(attrValue).forEach(function (imageName) {\n          var imageUrl = attrValue[imageName];\n          var viewportName = imageName.replace(\"_image\", \"\");\n\n          if (viewports[viewportName].stage && imageUrl) {\n            rules += \".\" + viewportName + \"-viewport .\" + elementClass + \" {\\n                            background-image: url(\\\"\" + imageUrl + \"\\\");\\n                        }\";\n          }\n        });\n\n        if (rules.length) {\n          styleBlock.append(rules);\n          element.classList.add(elementClass);\n        }\n      });\n\n      if (elements.length && styleBlock.innerText.length) {\n        document.body.append(styleBlock);\n        content = document.head.innerHTML + document.body.innerHTML;\n      }\n\n      return content;\n    }\n    /**\n     * Replace media queries with viewport classes.\n     *\n     * @param {string} content\n     * @return string\n     */\n    ;\n\n    _proto.processBreakpointStyles = function processBreakpointStyles(content) {\n      var document = new DOMParser().parseFromString(content, \"text/html\");\n      var styleBlocks = document.querySelectorAll(\"style\");\n      var mediaStyleBlock = document.createElement(\"style\");\n\n      var viewports = _config.getConfig(\"viewports\");\n\n      styleBlocks.forEach(function (styleBlock) {\n        var cssRules = styleBlock.sheet.cssRules;\n        Array.from(cssRules).forEach(function (rule) {\n          var mediaScope = rule instanceof CSSMediaRule && _underscore.findKey(viewports, function (viewport) {\n            return rule.conditionText === viewport.media;\n          });\n\n          if (mediaScope) {\n            Array.from(rule.cssRules).forEach(function (mediaRule, index) {\n              if (mediaRule.selectorText.indexOf(_styleRegistry.pbStyleAttribute) !== -1) {\n                var searchPattern = new RegExp(_config.getConfig(\"bodyId\") + \" \", \"g\");\n                var replaceValue = _config.getConfig(\"bodyId\") + \" .\" + mediaScope + \"-viewport \";\n                var selector = mediaRule.selectorText.replace(searchPattern, replaceValue);\n                mediaStyleBlock.append(selector + \" {\" + mediaRule.style.cssText + \"}\");\n              }\n            });\n          }\n        });\n      });\n\n      if (mediaStyleBlock.innerText.length) {\n        document.body.append(mediaStyleBlock);\n        content = document.head.innerHTML + document.body.innerHTML;\n      }\n\n      return content;\n    };\n\n    return Preview;\n  }(_preview);\n\n  return Preview;\n});\n//# sourceMappingURL=preview.js.map","Magento_PageBuilder/js/content-type/block/mass-converter/widget-directive.js":"/*eslint-disable */\n/* jscs:disable */\n\nfunction _inheritsLoose(subClass, superClass) { subClass.prototype = Object.create(superClass.prototype); subClass.prototype.constructor = subClass; _setPrototypeOf(subClass, superClass); }\n\nfunction _setPrototypeOf(o, p) { _setPrototypeOf = Object.setPrototypeOf || function _setPrototypeOf(o, p) { o.__proto__ = p; return o; }; return _setPrototypeOf(o, p); }\n\ndefine([\"Magento_PageBuilder/js/mass-converter/widget-directive-abstract\", \"Magento_PageBuilder/js/utils/object\"], function (_widgetDirectiveAbstract, _object) {\n  /**\n   * Copyright \u00a9 Magento, Inc. All rights reserved.\n   * See COPYING.txt for license details.\n   */\n\n  /**\n   * Enables the settings of the content type to be stored as a widget directive.\n   *\n   * @api\n   */\n  var WidgetDirective = /*#__PURE__*/function (_widgetDirectiveAbstr) {\n    \"use strict\";\n\n    _inheritsLoose(WidgetDirective, _widgetDirectiveAbstr);\n\n    function WidgetDirective() {\n      return _widgetDirectiveAbstr.apply(this, arguments) || this;\n    }\n\n    var _proto = WidgetDirective.prototype;\n\n    /**\n     * Convert value to internal format\n     *\n     * @param {object} data\n     * @param {object} config\n     * @returns {object}\n     */\n    _proto.fromDom = function fromDom(data, config) {\n      var attributes = _widgetDirectiveAbstr.prototype.fromDom.call(this, data, config);\n\n      data.template = attributes.template;\n      data.block_id = attributes.block_id;\n      return data;\n    }\n    /**\n     * Convert value to knockout format\n     *\n     * @param {object} data\n     * @param {object} config\n     * @returns {object}\n     */\n    ;\n\n    _proto.toDom = function toDom(data, config) {\n      var attributes = {\n        type: \"Magento\\\\Cms\\\\Block\\\\Widget\\\\Block\",\n        template: data.template,\n        block_id: data.block_id,\n        type_name: \"CMS Static Block\"\n      };\n\n      if (!attributes.block_id || !attributes.template) {\n        return data;\n      }\n\n      (0, _object.set)(data, config.html_variable, this.buildDirective(attributes));\n      return data;\n    };\n\n    return WidgetDirective;\n  }(_widgetDirectiveAbstract);\n\n  return WidgetDirective;\n});\n//# sourceMappingURL=widget-directive.js.map","Magento_PageBuilder/js/content-type/products/preview.js":"/*eslint-disable */\n/* jscs:disable */\n\nfunction _inheritsLoose(subClass, superClass) { subClass.prototype = Object.create(superClass.prototype); subClass.prototype.constructor = subClass; _setPrototypeOf(subClass, superClass); }\n\nfunction _setPrototypeOf(o, p) { _setPrototypeOf = Object.setPrototypeOf || function _setPrototypeOf(o, p) { o.__proto__ = p; return o; }; return _setPrototypeOf(o, p); }\n\ndefine([\"jquery\", \"knockout\", \"mage/translate\", \"Magento_PageBuilder/js/events\", \"slick\", \"underscore\", \"Magento_PageBuilder/js/config\", \"Magento_PageBuilder/js/content-type-menu/hide-show-option\", \"Magento_PageBuilder/js/content-type/preview\"], function (_jquery, _knockout, _translate, _events, _slick, _underscore, _config, _hideShowOption, _preview) {\n  /**\n   * Copyright \u00a9 Magento, Inc. All rights reserved.\n   * See COPYING.txt for license details.\n   */\n\n  /**\n   * @api\n   */\n  var Preview = /*#__PURE__*/function (_preview2) {\n    \"use strict\";\n\n    _inheritsLoose(Preview, _preview2);\n\n    /**\n     * Define keys which when changed should not trigger the slider to be rebuilt\n     *\n     * @type {string[]}\n     */\n\n    /**\n     * @inheritdoc\n     */\n    function Preview(contentType, config, observableUpdater) {\n      var _this;\n\n      _this = _preview2.call(this, contentType, config, observableUpdater) || this;\n      _this.displayPreview = _knockout.observable(false);\n      _this.previewElement = _jquery.Deferred();\n      _this.widgetUnsanitizedHtml = _knockout.observable();\n      _this.slidesToShow = 5;\n      _this.productItemSelector = \".product-item\";\n      _this.centerModeClass = \"center-mode\";\n      _this.messages = {\n        EMPTY: (0, _translate)(\"Empty Products\"),\n        NO_RESULTS: (0, _translate)(\"No products were found matching your condition\"),\n        LOADING: (0, _translate)(\"Loading...\"),\n        UNKNOWN_ERROR: (0, _translate)(\"An unknown error occurred. Please try again.\")\n      };\n      _this.ignoredKeysForBuild = [\"margins_and_padding\", \"border\", \"border_color\", \"border_radius\", \"border_width\", \"css_classes\", \"text_align\"];\n      _this.placeholderText = _knockout.observable(_this.messages.EMPTY); // Redraw slider after content type gets redrawn\n\n      _events.on(\"contentType:redrawAfter\", function (args) {\n        if (_this.element && _this.element.children) {\n          var $element = (0, _jquery)(_this.element.children);\n\n          if (args.element && $element.closest(args.element).length) {\n            $element.slick(\"setPosition\");\n          }\n        }\n      });\n\n      _events.on(\"stage:\" + _this.contentType.stageId + \":viewportChangeAfter\", function (args) {\n        var viewports = _config.getConfig(\"viewports\");\n\n        if (_this.element && _this.appearance() === \"carousel\") {\n          _this.slidesToShow = parseFloat(viewports[args.viewport].options.products.default.slidesToShow);\n\n          _this.destroySlider();\n\n          _this.initSlider();\n        }\n      });\n\n      return _this;\n    }\n    /**\n     * Return an array of options\n     *\n     * @returns {OptionsInterface}\n     */\n\n\n    var _proto = Preview.prototype;\n\n    _proto.retrieveOptions = function retrieveOptions() {\n      var options = _preview2.prototype.retrieveOptions.call(this);\n\n      options.hideShow = new _hideShowOption({\n        preview: this,\n        icon: _hideShowOption.showIcon,\n        title: _hideShowOption.showText,\n        action: this.onOptionVisibilityToggle,\n        classes: [\"hide-show-content-type\"],\n        sort: 40\n      });\n      return options;\n    }\n    /**\n     * On afterRender callback.\n     *\n     * @param {Element} element\n     */\n    ;\n\n    _proto.onAfterRender = function onAfterRender(element) {\n      this.element = element;\n      this.previewElement.resolve(element);\n      this.initSlider();\n    }\n    /**\n     * @inheritdoc\n     */\n    ;\n\n    _proto.afterObservablesUpdated = function afterObservablesUpdated() {\n      var _this2 = this;\n\n      _preview2.prototype.afterObservablesUpdated.call(this);\n\n      var data = this.contentType.dataStore.getState();\n\n      if (this.hasDataChanged(this.previousData, data)) {\n        this.displayPreview(false);\n\n        if (typeof data.conditions_encoded !== \"string\" || data.conditions_encoded.length === 0) {\n          this.placeholderText(this.messages.EMPTY);\n          return;\n        }\n\n        var url = _config.getConfig(\"preview_url\");\n\n        var requestConfig = {\n          // Prevent caching\n          method: \"POST\",\n          data: {\n            role: this.config.name,\n            directive: this.data.main.html()\n          }\n        };\n        this.placeholderText(this.messages.LOADING);\n\n        _jquery.ajax(url, requestConfig).done(function (response) {\n          if (typeof response.data !== \"object\" || !Boolean(response.data.content)) {\n            _this2.placeholderText(_this2.messages.NO_RESULTS);\n\n            return;\n          }\n\n          if (response.data.error) {\n            _this2.widgetUnsanitizedHtml(response.data.error);\n          } else {\n            _this2.widgetUnsanitizedHtml(response.data.content);\n\n            _this2.displayPreview(true);\n          }\n\n          _this2.previewElement.done(function () {\n            (0, _jquery)(_this2.element).trigger(\"contentUpdated\");\n          });\n        }).fail(function () {\n          _this2.placeholderText(_this2.messages.UNKNOWN_ERROR);\n        });\n      }\n\n      this.previousData = Object.assign({}, data);\n    };\n\n    _proto.initSlider = function initSlider() {\n      if (this.element && this.appearance() === \"carousel\") {\n        (0, _jquery)(this.element.children).slick(this.buildSlickConfig());\n      }\n    };\n\n    _proto.destroySlider = function destroySlider() {\n      (0, _jquery)(this.element.children).slick(\"unslick\");\n    }\n    /**\n     * Build the slick config object\n     *\n     * @returns {{autoplay: boolean; autoplay: number; infinite: boolean; arrows: boolean; dots: boolean;\n     * centerMode: boolean; slidesToScroll: number; slidesToShow: number;}}\n     */\n    ;\n\n    _proto.buildSlickConfig = function buildSlickConfig() {\n      var attributes = this.data.main.attributes();\n      var productCount = (0, _jquery)(this.widgetUnsanitizedHtml()).find(this.productItemSelector).length;\n\n      var viewports = _config.getConfig(\"viewports\");\n\n      var currentViewport = this.viewport();\n      var carouselMode = attributes[\"data-carousel-mode\"];\n      var config = {\n        slidesToShow: this.slidesToShow,\n        slidesToScroll: this.slidesToShow,\n        dots: attributes[\"data-show-dots\"] === \"true\",\n        arrows: attributes[\"data-show-arrows\"] === \"true\",\n        autoplay: attributes[\"data-autoplay\"] === \"true\",\n        autoplaySpeed: parseFloat(attributes[\"data-autoplay-speed\"])\n      };\n      var slidesToShow = viewports[currentViewport].options.products[carouselMode] ? viewports[currentViewport].options.products[carouselMode].slidesToShow : viewports[currentViewport].options.products.default.slidesToShow;\n      config.slidesToShow = parseFloat(slidesToShow);\n\n      if (attributes[\"data-carousel-mode\"] === \"continuous\" && productCount > config.slidesToShow) {\n        config.centerPadding = attributes[\"data-center-padding\"];\n        config.centerMode = true;\n        (0, _jquery)(this.element).addClass(this.centerModeClass);\n      } else {\n        config.infinite = attributes[\"data-infinite-loop\"] === \"true\";\n        (0, _jquery)(this.element).removeClass(this.centerModeClass);\n      }\n\n      return config;\n    }\n    /**\n     * Determine if the data has changed, whilst ignoring certain keys which don't require a rebuild\n     *\n     * @param {DataObject} previousData\n     * @param {DataObject} newData\n     * @returns {boolean}\n     */\n    ;\n\n    _proto.hasDataChanged = function hasDataChanged(previousData, newData) {\n      previousData = _underscore.omit(previousData, this.ignoredKeysForBuild);\n      newData = _underscore.omit(newData, this.ignoredKeysForBuild);\n      return !_underscore.isEqual(previousData, newData);\n    };\n\n    return Preview;\n  }(_preview);\n\n  return Preview;\n});\n//# sourceMappingURL=preview.js.map","Magento_PageBuilder/js/content-type/products/form/provider.js":"/**\n * Copyright \u00a9 Magento, Inc. All rights reserved.\n * See COPYING.txt for license details.\n */\n\ndefine([\n    'Magento_PageBuilder/js/form/provider',\n    'Magento_PageBuilder/js/form/provider/conditions-data-processor'\n], function (Provider, conditionsDataProcessor) {\n    'use strict';\n\n    return Provider.extend({\n        /** @inheritdoc **/\n        save: function () {\n            var data = this.get('data');\n\n            conditionsDataProcessor(data, data['condition_option'] + '_source');\n\n            return this._super();\n        }\n    });\n});\n","Magento_PageBuilder/js/content-type/products/appearance/carousel/widget.js":"/**\n * Copyright \u00a9 Magento, Inc. All rights reserved.\n * See COPYING.txt for license details.\n */\n\ndefine([\n    'jquery',\n    'underscore',\n    'matchMedia',\n    'Magento_PageBuilder/js/utils/breakpoints',\n    'Magento_PageBuilder/js/events',\n    'slick'\n], function ($, _, mediaCheck, breakpointsUtils, events) {\n    'use strict';\n\n    /**\n     * Build slick\n     *\n     * @param {jQuery} $carouselElement\n     * @param {Object} config\n     */\n    function buildSlick($carouselElement, config) {\n        /**\n         * Prevent each slick slider from being initialized more than once which could throw an error.\n         */\n        if ($carouselElement.hasClass('slick-initialized')) {\n            $carouselElement.slick('unslick');\n        }\n\n        config.slidesToScroll = config.slidesToShow;\n        $carouselElement.slick(config);\n    }\n\n    /**\n     * Initialize slider.\n     *\n     * @param {jQuery} $element\n     * @param {Object} slickConfig\n     * @param {Object} breakpoint\n     */\n    function initSlider($element, slickConfig, breakpoint) {\n        var productCount = $element.find('.product-item').length,\n            $carouselElement = $($element.children()),\n            centerModeClass = 'center-mode',\n            carouselMode = $element.data('carousel-mode'),\n            slidesToShow = breakpoint.options.products[carouselMode] ?\n                breakpoint.options.products[carouselMode].slidesToShow :\n                breakpoint.options.products.default.slidesToShow;\n\n        slickConfig.slidesToShow = parseFloat(slidesToShow);\n\n        if (carouselMode === 'continuous' && productCount > slickConfig.slidesToShow) {\n            $element.addClass(centerModeClass);\n            slickConfig.centerPadding = $element.data('center-padding');\n            slickConfig.centerMode = true;\n        } else {\n            $element.removeClass(centerModeClass);\n            slickConfig.infinite = $element.data('infinite-loop');\n        }\n\n        buildSlick($carouselElement, slickConfig);\n    }\n\n    return function (config, element) {\n        var $element = $(element),\n            $carouselElement = $($element.children()),\n            currentViewport = config.currentViewport,\n            currentBreakpoint = config.breakpoints[currentViewport],\n            slickConfig = {\n                autoplay: $element.data('autoplay'),\n                autoplaySpeed: $element.data('autoplay-speed') || 0,\n                arrows: $element.data('show-arrows'),\n                dots: $element.data('show-dots')\n            };\n\n        _.each(config.breakpoints, function (breakpoint) {\n            mediaCheck({\n                media: breakpointsUtils.buildMedia(breakpoint.conditions),\n\n                /** @inheritdoc */\n                entry: function () {\n                    initSlider($element, slickConfig, breakpoint);\n                }\n            });\n        });\n\n        //initialize slider when content type is added in mobile viewport\n        if (currentViewport === 'mobile') {\n            initSlider($element, slickConfig, currentBreakpoint);\n        }\n\n        // Redraw slide after content type gets redrawn\n        events.on('contentType:redrawAfter', function (args) {\n            if ($carouselElement.closest(args.element).length) {\n                $carouselElement.slick('setPosition');\n            }\n        });\n\n        events.on('stage:viewportChangeAfter', function (args) {\n            var breakpoint = config.breakpoints[args.viewport];\n\n            initSlider($element, slickConfig, breakpoint);\n        });\n    };\n});\n","Magento_PageBuilder/js/content-type/products/mass-converter/widget-directive.js":"/*eslint-disable */\n/* jscs:disable */\n\nfunction _inheritsLoose(subClass, superClass) { subClass.prototype = Object.create(superClass.prototype); subClass.prototype.constructor = subClass; _setPrototypeOf(subClass, superClass); }\n\nfunction _setPrototypeOf(o, p) { _setPrototypeOf = Object.setPrototypeOf || function _setPrototypeOf(o, p) { o.__proto__ = p; return o; }; return _setPrototypeOf(o, p); }\n\ndefine([\"Magento_PageBuilder/js/mass-converter/widget-directive-abstract\", \"Magento_PageBuilder/js/utils/object\"], function (_widgetDirectiveAbstract, _object) {\n  /**\n   * Copyright \u00a9 Magento, Inc. All rights reserved.\n   * See COPYING.txt for license details.\n   */\n\n  /**\n   * @api\n   */\n  var WidgetDirective = /*#__PURE__*/function (_widgetDirectiveAbstr) {\n    \"use strict\";\n\n    _inheritsLoose(WidgetDirective, _widgetDirectiveAbstr);\n\n    function WidgetDirective() {\n      return _widgetDirectiveAbstr.apply(this, arguments) || this;\n    }\n\n    var _proto = WidgetDirective.prototype;\n\n    /**\n     * Convert value to internal format\n     *\n     * @param {object} data\n     * @param {object} config\n     * @returns {object}\n     */\n    _proto.fromDom = function fromDom(data, config) {\n      var attributes = _widgetDirectiveAbstr.prototype.fromDom.call(this, data, config);\n\n      data.products_count = attributes.products_count;\n      data.sort_order = attributes.sort_order;\n      data.condition_option = attributes.condition_option || \"condition\";\n      data[data.condition_option] = this.decodeWysiwygCharacters(this.decodeHtmlCharacters(attributes.condition_option_value || \"\"));\n      data.conditions_encoded = this.decodeWysiwygCharacters(attributes.conditions_encoded || \"\");\n      data[data.condition_option + \"_source\"] = data.conditions_encoded;\n      return data;\n    }\n    /**\n     * Convert value to knockout format\n     *\n     * @param {object} data\n     * @param {object} config\n     * @returns {object}\n     */\n    ;\n\n    _proto.toDom = function toDom(data, config) {\n      var attributes = {\n        type: \"Magento\\\\CatalogWidget\\\\Block\\\\Product\\\\ProductsList\",\n        template: \"Magento_CatalogWidget::product/widget/content/grid.phtml\",\n        anchor_text: \"\",\n        id_path: \"\",\n        show_pager: 0,\n        products_count: data.products_count,\n        condition_option: data.condition_option,\n        condition_option_value: \"\",\n        type_name: \"Catalog Products List\",\n        conditions_encoded: this.encodeWysiwygCharacters(data.conditions_encoded || \"\")\n      };\n\n      if (data.sort_order) {\n        attributes.sort_order = data.sort_order;\n      }\n\n      if (typeof data[data.condition_option] === \"string\") {\n        attributes.condition_option_value = this.encodeWysiwygCharacters(data[data.condition_option]);\n      }\n\n      if (attributes.conditions_encoded.length === 0) {\n        return data;\n      }\n\n      (0, _object.set)(data, config.html_variable, this.buildDirective(attributes));\n      return data;\n    }\n    /**\n     * @param {string} content\n     * @returns {string}\n     */\n    ;\n\n    _proto.encodeWysiwygCharacters = function encodeWysiwygCharacters(content) {\n      return content.replace(/\\{/g, \"^[\").replace(/\\}/g, \"^]\").replace(/\"/g, \"`\").replace(/\\\\/g, \"|\").replace(/</g, \"&lt;\").replace(/>/g, \"&gt;\");\n    }\n    /**\n     * @param {string} content\n     * @returns {string}\n     */\n    ;\n\n    _proto.decodeWysiwygCharacters = function decodeWysiwygCharacters(content) {\n      return content.replace(/\\^\\[/g, \"{\").replace(/\\^\\]/g, \"}\").replace(/`/g, \"\\\"\").replace(/\\|/g, \"\\\\\").replace(/&lt;/g, \"<\").replace(/&gt;/g, \">\");\n    }\n    /**\n     * Decode html special characters\n     *\n     * @param {string} content\n     * @returns {string}\n     */\n    ;\n\n    _proto.decodeHtmlCharacters = function decodeHtmlCharacters(content) {\n      if (content) {\n        var htmlDocument = new DOMParser().parseFromString(content, \"text/html\");\n        return htmlDocument.body ? htmlDocument.body.textContent : content;\n      }\n\n      return content;\n    };\n\n    return WidgetDirective;\n  }(_widgetDirectiveAbstract);\n\n  return WidgetDirective;\n});\n//# sourceMappingURL=widget-directive.js.map"}
}});