HEX
Server: nginx/1.18.0
System: Linux test-ipsremont 5.4.0-214-generic #234-Ubuntu SMP Fri Mar 14 23:50:27 UTC 2025 x86_64
User: ips (1000)
PHP: 8.0.30
Disabled: pcntl_alarm,pcntl_fork,pcntl_waitpid,pcntl_wait,pcntl_wifexited,pcntl_wifstopped,pcntl_wifsignaled,pcntl_wifcontinued,pcntl_wexitstatus,pcntl_wtermsig,pcntl_wstopsig,pcntl_signal,pcntl_signal_get_handler,pcntl_signal_dispatch,pcntl_get_last_error,pcntl_strerror,pcntl_sigprocmask,pcntl_sigwaitinfo,pcntl_sigtimedwait,pcntl_exec,pcntl_getpriority,pcntl_setpriority,pcntl_async_signals,pcntl_unshare,
Upload Files
File: /var/www/elite/node_modules/dom7/dist/dom7.min.js.map
{"version":3,"sources":["dom7.js"],"names":["global","factory","exports","module","define","amd","self","Dom7","this","isObject","obj","constructor","Object","extend","target","src","keys","forEach","key","length","doc","document","ssrDocument","body","addEventListener","removeEventListener","activeElement","blur","nodeName","querySelector","querySelectorAll","getElementById","createEvent","initEvent","createElement","children","childNodes","style","setAttribute","getElementsByTagName","createElementNS","importNode","location","hash","host","hostname","href","origin","pathname","protocol","search","win","window","navigator","userAgent","history","replaceState","pushState","go","back","CustomEvent","getComputedStyle","getPropertyValue","Image","Date","screen","setTimeout","clearTimeout","matchMedia","arr","i","$","selector","context","els","tempParent","html","trim","indexOf","toCreate","innerHTML","push","match","split","nodeType","unique","uniqueArray","requestAnimationFrame","callback","webkitRequestAnimationFrame","fn","prototype","Class","Methods","freeze","addClass","className","classes","j","classList","add","removeClass","remove","hasClass","contains","toggleClass","toggle","attr","attrs","value","arguments$1","arguments","getAttribute","attrName","removeAttr","removeAttribute","prop","props","propName","data","el","dom7ElementDataStorage","dataKey","removeData","dataset","string","attributes","name","toLowerCase","replace","group1","toUpperCase","parseFloat","val","dom","i$1","Array","isArray","multiple","options","selected","values","selectedOptions","transform","elStyle","webkitTransform","transition","duration","webkitTransitionDuration","transitionDuration","on","assign","args","len","eventType","targetSelector","listener","capture","handleLiveEvent","e","eventData","dom7EventData","unshift","is","apply","parents","k","handleEvent","undefined","events","event$1","dom7LiveListeners","proxyListener","event","dom7Listeners","off","handlers","handler","splice","dom7proxy","once","eventName","onceHandler","eventArgs","trigger","evt","detail","bubbles","cancelable","filter","dataIndex","dispatchEvent","transitionEnd","fireCallBack","call","animationEnd","width","innerWidth","css","outerWidth","includeMargins","styles","offsetWidth","height","innerHeight","outerHeight","offsetHeight","offset","box","getBoundingClientRect","clientTop","clientLeft","scrollTop","scrollY","scrollLeft","scrollX","top","left","hide","display","show","toArray","each","matchedItems","map","modifiedItems","text","textContent","compareWith","matches","webkitMatchesSelector","msMatchesSelector","index","child","previousSibling","eq","returnIndex","append","newChild","tempDiv","firstChild","appendChild","appendTo","parent","prepend","insertBefore","prependTo","before","parentNode","cloneNode","insertAfter","after","nextSibling","next","nextElementSibling","nextAll","nextEls","prev","previousElementSibling","prevAll","prevEls","siblings","closest","find","foundElements","found","removeChild","detach","toAdd","empty","Scroll","scrollTo","easing","currentTop","currentLeft","maxTop","maxLeft","newTop","newLeft","animateTop","animateLeft","scrollHeight","Math","max","min","scrollWidth","startTime","render","time","getTime","done","progress","easeProgress","cos","PI","Animate","animate","initialProps","initialParams","animateInstance","a","params","elements","animating","que","easingProgress","stop","id","frameId","cancelAnimationFrame","webkitCancelAnimationFrame","dom7AnimateInstance","complete","shift","initialFullValue","initialValue","unit","finalValue","finalFullValue","container","currentValue","elementsDone","propsDone","began","begin","element","ref","noTrigger","eventShortcut","concat","click","bind","focus","focusin","focusout","keyup","keydown","keypress","submit","change","mousedown","mousemove","mouseup","mouseenter","mouseleave","mouseout","mouseover","touchstart","touchend","touchmove","resize","scroll","group","methodName"],"mappings":";;;;;;;;;;;;IAaC,SAAUA,EAAQC,GACI,iBAAZC,SAA0C,oBAAXC,OAAyBA,OAAOD,QAAUD,IAC9D,mBAAXG,QAAyBA,OAAOC,IAAMD,OAAOH,IACnDD,EAASA,GAAUM,MAAaC,KAAON,IAH5C,CAIEO,KAAM,WAAc,aAclB,SAASC,EAASC,GACd,OAAgB,OAARA,GACW,iBAARA,GACP,gBAAiBA,GACjBA,EAAIC,cAAgBC,OAE5B,SAASC,EAAOC,EAAQC,QACL,IAAXD,IAAqBA,EAAS,SACtB,IAARC,IAAkBA,EAAM,IAC5BH,OAAOI,KAAKD,GAAKE,QAAQ,SAAUC,QACJ,IAAhBJ,EAAOI,GACZJ,EAAOI,GAAOH,EAAIG,GACfT,EAASM,EAAIG,KAClBT,EAASK,EAAOI,KACe,EAA/BN,OAAOI,KAAKD,EAAIG,IAAMC,QACtBN,EAAOC,EAAOI,GAAMH,EAAIG,MAKpC,IAAIE,EAA0B,oBAAbC,SAA2BA,SAAW,GACnDC,EAAc,CACdC,KAAM,GACNC,iBAAkB,aAClBC,oBAAqB,aACrBC,cAAe,CACXC,KAAM,aACNC,SAAU,IAEdC,cAAe,WACX,OAAO,MAEXC,iBAAkB,WACd,MAAO,IAEXC,eAAgB,WACZ,OAAO,MAEXC,YAAa,WACT,MAAO,CACHC,UAAW,eAGnBC,cAAe,WACX,MAAO,CACHC,SAAU,GACVC,WAAY,GACZC,MAAO,GACPC,aAAc,aACdC,qBAAsB,WAClB,MAAO,MAInBC,gBAAiB,WACb,MAAO,IAEXC,WAAY,WACR,OAAO,MAEXC,SAAU,CACNC,KAAM,GACNC,KAAM,GACNC,SAAU,GACVC,KAAM,GACNC,OAAQ,GACRC,SAAU,GACVC,SAAU,GACVC,OAAQ,KAGhBrC,EAAOO,EAAKE,GAEZ,IAAI6B,EAAwB,oBAAXC,OAAyBA,OAAS,GA2CnDvC,EAAOsC,EA1CS,CACZ9B,SAAUC,EACV+B,UAAW,CACPC,UAAW,IAEfZ,SAAU,CACNC,KAAM,GACNC,KAAM,GACNC,SAAU,GACVC,KAAM,GACNC,OAAQ,GACRC,SAAU,GACVC,SAAU,GACVC,OAAQ,IAEZK,QAAS,CACLC,aAAc,aACdC,UAAW,aACXC,GAAI,aACJC,KAAM,cAEVC,YAAa,WACT,OAAOpD,MAEXgB,iBAAkB,aAClBC,oBAAqB,aACrBoC,iBAAkB,WACd,MAAO,CACHC,iBAAkB,WACd,MAAO,MAInBC,MAAO,aACPC,KAAM,aACNC,OAAQ,GACRC,WAAY,aACZC,aAAc,aACdC,WAAY,WACR,MAAO,MAKf,IAAI7D,EAAO,SAAc8D,GAGvB,IAFA,IAESC,EAAI,EAAGA,EAAID,EAAIlD,OAAQmD,GAAK,EAF1B9D,KAGJ8D,GAAKD,EAAIC,GAIhB,OAPW9D,KAKNW,OAASkD,EAAIlD,OAEXX,MAGT,SAAS+D,EAAEC,EAAUC,GACnB,IAAIJ,EAAM,GACNC,EAAI,EACR,GAAIE,IAAaC,GACXD,aAAoBjE,EACtB,OAAOiE,EAGX,GAAIA,EAEF,GAAwB,iBAAbA,EAAuB,CAChC,IAAIE,EACAC,EACAC,EAAOJ,EAASK,OACpB,GAAyB,GAArBD,EAAKE,QAAQ,MAAkC,GAArBF,EAAKE,QAAQ,KAAW,CACpD,IAAIC,EAAW,MAQf,IAP4B,IAAxBH,EAAKE,QAAQ,SAAgBC,EAAW,MAChB,IAAxBH,EAAKE,QAAQ,SAAgBC,EAAW,SAChB,IAAxBH,EAAKE,QAAQ,QAAwC,IAAxBF,EAAKE,QAAQ,SAAgBC,EAAW,MAC1C,IAA3BH,EAAKE,QAAQ,YAAmBC,EAAW,SACf,IAA5BH,EAAKE,QAAQ,aAAoBC,EAAW,WAChDJ,EAAavD,EAAIc,cAAc6C,IACpBC,UAAYJ,EAClBN,EAAI,EAAGA,EAAIK,EAAWvC,WAAWjB,OAAQmD,GAAK,EACjDD,EAAIY,KAAKN,EAAWvC,WAAWkC,SAUjC,IAFEI,EALGD,GAA2B,MAAhBD,EAAS,IAAeA,EAASU,MAAM,aAK9CT,GAAWrD,GAAKU,iBAAiB0C,EAASK,QAH3C,CAACzD,EAAIW,eAAeyC,EAASK,OAAOM,MAAM,KAAK,KAKlDb,EAAI,EAAGA,EAAII,EAAIvD,OAAQmD,GAAK,EAC3BI,EAAIJ,IAAMD,EAAIY,KAAKP,EAAIJ,SAG1B,GAAIE,EAASY,UAAYZ,IAAarB,GAAOqB,IAAapD,EAE/DiD,EAAIY,KAAKT,QACJ,GAAsB,EAAlBA,EAASrD,QAAcqD,EAAS,GAAGY,SAE5C,IAAKd,EAAI,EAAGA,EAAIE,EAASrD,OAAQmD,GAAK,EACpCD,EAAIY,KAAKT,EAASF,IAIxB,OAAO,IAAI/D,EAAK8D,GAOlB,SAASgB,EAAOhB,GAEd,IADA,IAAIiB,EAAc,GACThB,EAAI,EAAGA,EAAID,EAAIlD,OAAQmD,GAAK,GACE,IAAjCgB,EAAYR,QAAQT,EAAIC,KAAcgB,EAAYL,KAAKZ,EAAIC,IAEjE,OAAOgB,EAMT,SAASC,EAAsBC,GAC7B,OAAIrC,EAAIoC,sBAAgCpC,EAAIoC,sBAAsBC,GACzDrC,EAAIsC,4BAAsCtC,EAAIsC,4BAA4BD,GAC5ErC,EAAIe,WAAWsB,EAAU,IAAO,IAlBzCjB,EAAEmB,GAAKnF,EAAKoF,UACZpB,EAAEqB,MAAQrF,EACVgE,EAAEhE,KAAOA,EA65BT,IAAIsF,EAAuBjF,OAAOkF,OAAO,CACrCC,SAr4BJ,SAAkBC,GAChB,QAAyB,IAAdA,EACT,OAAOxF,KAGT,IADA,IAAIyF,EAAUD,EAAUb,MAAM,KACrBb,EAAI,EAAGA,EAAI2B,EAAQ9E,OAAQmD,GAAK,EACvC,IAAK,IAAI4B,EAAI,EAAGA,EAAI1F,KAAKW,OAAQ+E,GAAK,OACb,IAAZ1F,KAAK0F,SAAmD,IAAtB1F,KAAK0F,GAAGC,WAA6B3F,KAAK0F,GAAGC,UAAUC,IAAIH,EAAQ3B,IAGpH,OAAO9D,MA43BL6F,YA13BJ,SAAqBL,GAEnB,IADA,IAAIC,EAAUD,EAAUb,MAAM,KACrBb,EAAI,EAAGA,EAAI2B,EAAQ9E,OAAQmD,GAAK,EACvC,IAAK,IAAI4B,EAAI,EAAGA,EAAI1F,KAAKW,OAAQ+E,GAAK,OACb,IAAZ1F,KAAK0F,SAAmD,IAAtB1F,KAAK0F,GAAGC,WAA6B3F,KAAK0F,GAAGC,UAAUG,OAAOL,EAAQ3B,IAGvH,OAAO9D,MAo3BL+F,SAl3BJ,SAAkBP,GAChB,QAAKxF,KAAK,IACHA,KAAK,GAAG2F,UAAUK,SAASR,IAi3BhCS,YA/2BJ,SAAqBT,GAEnB,IADA,IAAIC,EAAUD,EAAUb,MAAM,KACrBb,EAAI,EAAGA,EAAI2B,EAAQ9E,OAAQmD,GAAK,EACvC,IAAK,IAAI4B,EAAI,EAAGA,EAAI1F,KAAKW,OAAQ+E,GAAK,OACb,IAAZ1F,KAAK0F,SAAmD,IAAtB1F,KAAK0F,GAAGC,WAA6B3F,KAAK0F,GAAGC,UAAUO,OAAOT,EAAQ3B,IAGvH,OAAO9D,MAy2BLmG,KAv2BJ,SAAcC,EAAOC,GACnB,IAAIC,EAAcC,UAElB,GAAyB,IAArBA,UAAU5F,QAAiC,iBAAVyF,EAEnC,OAAIpG,KAAK,GAAaA,KAAK,GAAGwG,aAAaJ,QAC3C,EAIF,IAAK,IAAItC,EAAI,EAAGA,EAAI9D,KAAKW,OAAQmD,GAAK,EACpC,GAA2B,IAAvBwC,EAAY3F,OAEdX,KAAK8D,GAAGhC,aAAasE,EAAOC,QAI5B,IAAK,IAAII,KAAYL,EACnBpG,KAAK8D,GAAG2C,GAAYL,EAAMK,GAC1BzG,KAAK8D,GAAGhC,aAAa2E,EAAUL,EAAMK,IAI3C,OAAOzG,MAi1BL0G,WA90BJ,SAAoBP,GAClB,IAAK,IAAIrC,EAAI,EAAGA,EAAI9D,KAAKW,OAAQmD,GAAK,EACpC9D,KAAK8D,GAAG6C,gBAAgBR,GAE1B,OAAOnG,MA20BL4G,KAx0BJ,SAAcC,EAAOR,GACnB,IAAIC,EAAcC,UAElB,GAAyB,IAArBA,UAAU5F,QAAiC,iBAAVkG,EAG9B,CAEL,IAAK,IAAI/C,EAAI,EAAGA,EAAI9D,KAAKW,OAAQmD,GAAK,EACpC,GAA2B,IAAvBwC,EAAY3F,OAEdX,KAAK8D,GAAG+C,GAASR,OAIjB,IAAK,IAAIS,KAAYD,EACnB7G,KAAK8D,GAAGgD,GAAYD,EAAMC,GAIhC,OAAO9G,KAfP,GAAIA,KAAK,GAAM,OAAOA,KAAK,GAAG6G,IAo0B9BE,KAlzBJ,SAAcrG,EAAK2F,GACjB,IAAIW,EACJ,QAAqB,IAAVX,EAAX,CAkBA,IAAK,IAAIvC,EAAI,EAAGA,EAAI9D,KAAKW,OAAQmD,GAAK,GACpCkD,EAAKhH,KAAK8D,IACFmD,yBAA0BD,EAAGC,uBAAyB,IAC9DD,EAAGC,uBAAuBvG,GAAO2F,EAEnC,OAAOrG,KApBL,GAFAgH,EAAKhH,KAAK,GAEF,CACN,GAAIgH,EAAGC,wBAA2BvG,KAAOsG,EAAGC,uBAC1C,OAAOD,EAAGC,uBAAuBvG,GAGnC,IAAIwG,EAAUF,EAAGR,aAAc,QAAU9F,GACzC,OAAIwG,QAGJ,IAqyBFC,WAxxBJ,SAAoBzG,GAClB,IAAK,IAAIoD,EAAI,EAAGA,EAAI9D,KAAKW,OAAQmD,GAAK,EAAG,CACvC,IAAIkD,EAAKhH,KAAK8D,GACVkD,EAAGC,wBAA0BD,EAAGC,uBAAuBvG,KACzDsG,EAAGC,uBAAuBvG,GAAO,YAC1BsG,EAAGC,uBAAuBvG,MAoxBnC0G,QAhxBJ,WACE,IAAIJ,EAAKhH,KAAK,GACd,GAAKgH,EAAL,CACA,IAjJmBK,EAiJfD,EAAU,GACd,GAAIJ,EAAGI,QAEL,IAAK,IAAIF,KAAWF,EAAGI,QACrBA,EAAQF,GAAWF,EAAGI,QAAQF,QAGhC,IAAK,IAAIpD,EAAI,EAAGA,EAAIkD,EAAGM,WAAW3G,OAAQmD,GAAK,EAAG,CAEhD,IAAIqC,EAAOa,EAAGM,WAAWxD,GACS,GAA9BqC,EAAKoB,KAAKjD,QAAQ,WACpB8C,GA5JaC,EA4JOlB,EAAKoB,KAAK5C,MAAM,SAAS,GA3J5C0C,EAAOG,cAAcC,QAAQ,QAAS,SAAU/C,EAAOgD,GAAU,OAAOA,EAAOC,kBA2J5BxB,EAAKE,OAK/D,IAAK,IAAI3F,KAAO0G,EACO,UAAjBA,EAAQ1G,GAAoB0G,EAAQ1G,IAAO,EACrB,SAAjB0G,EAAQ1G,GAAmB0G,EAAQ1G,IAAO,EAC1CkH,WAAWR,EAAQ1G,MAAyB,EAAf0G,EAAQ1G,KAAY0G,EAAQ1G,IAAQ,GAE5E,OAAO0G,IAyvBLS,IAvvBJ,SAAaxB,GACX,IAAIyB,EAAM9H,KACV,QAAqB,IAAVqG,EAAX,CAcA,IAAK,IAAI0B,EAAM,EAAGA,EAAMD,EAAInH,OAAQoH,GAAO,EAAG,CAC5C,IAAIf,EAAKc,EAAIC,GACb,GAAIC,MAAMC,QAAQ5B,IAAUW,EAAGkB,UAA0C,WAA9BlB,EAAG5F,SAASoG,cACrD,IAAK,IAAI9B,EAAI,EAAGA,EAAIsB,EAAGmB,QAAQxH,OAAQ+E,GAAK,EAC1CsB,EAAGmB,QAAQzC,GAAG0C,SAAiD,GAAtC/B,EAAM/B,QAAQ0C,EAAGmB,QAAQzC,GAAGW,YAGvDW,EAAGX,MAAQA,EAGf,OAAOyB,EAvBL,GAAIA,EAAI,GAAI,CACV,GAAIA,EAAI,GAAGI,UAA8C,WAAlCJ,EAAI,GAAG1G,SAASoG,cAA4B,CAEjE,IADA,IAAIa,EAAS,GACJvE,EAAI,EAAGA,EAAIgE,EAAI,GAAGQ,gBAAgB3H,OAAQmD,GAAK,EACtDuE,EAAO5D,KAAKqD,EAAI,GAAGQ,gBAAgBxE,GAAGuC,OAExC,OAAOgC,EAET,OAAOP,EAAI,GAAGzB,QA6uBhBkC,UA1tBJ,SAAmBA,GACjB,IAAK,IAAIzE,EAAI,EAAGA,EAAI9D,KAAKW,OAAQmD,GAAK,EAAG,CACvC,IAAI0E,EAAUxI,KAAK8D,GAAGjC,MACtB2G,EAAQC,gBAAkBF,EAC1BC,EAAQD,UAAYA,EAEtB,OAAOvI,MAqtBL0I,WAntBJ,SAAoBC,GACM,iBAAbA,IACTA,GAAsB,MAExB,IAAK,IAAI7E,EAAI,EAAGA,EAAI9D,KAAKW,OAAQmD,GAAK,EAAG,CACvC,IAAI0E,EAAUxI,KAAK8D,GAAGjC,MACtB2G,EAAQI,yBAA2BD,EACnCH,EAAQK,mBAAqBF,EAE/B,OAAO3I,MA2sBL8I,GAxsBJ,WAIE,IAHA,IAAIC,EAEAC,EAAO,GAAIC,EAAM1C,UAAU5F,OACvBsI,KAAQD,EAAMC,GAAQ1C,UAAW0C,GACzC,IAAIC,EAAYF,EAAK,GACjBG,EAAiBH,EAAK,GACtBI,EAAWJ,EAAK,GAChBK,EAAUL,EAAK,GAOnB,SAASM,EAAgBC,GACvB,IAAIjJ,EAASiJ,EAAEjJ,OACf,GAAKA,EAAL,CACA,IAAIkJ,EAAYD,EAAEjJ,OAAOmJ,eAAiB,GAI1C,GAHID,EAAUlF,QAAQiF,GAAK,GACzBC,EAAUE,QAAQH,GAEhBxF,EAAEzD,GAAQqJ,GAAGR,GAAmBC,EAASQ,MAAMtJ,EAAQkJ,QAGzD,IADA,IAAIK,EAAU9F,EAAEzD,GAAQuJ,UACfC,EAAI,EAAGA,EAAID,EAAQlJ,OAAQmJ,GAAK,EACnC/F,EAAE8F,EAAQC,IAAIH,GAAGR,IAAmBC,EAASQ,MAAMC,EAAQC,GAAIN,IAIzE,SAASO,EAAYR,GACnB,IAAIC,EAAYD,GAAKA,EAAEjJ,QAASiJ,EAAEjJ,OAAOmJ,eAAsB,GAC3DD,EAAUlF,QAAQiF,GAAK,GACzBC,EAAUE,QAAQH,GAEpBH,EAASQ,MAAM5J,KAAMwJ,GA1BA,mBAAZR,EAAK,KACEE,GAAfH,EAASC,GAAyB,GAAII,EAAWL,EAAO,GAAIM,EAAUN,EAAO,GAC9EI,OAAiBa,GAEdX,IAAWA,GAAU,GA0B1B,IAFA,IACI3D,EADAuE,EAASf,EAAUvE,MAAM,KAEpBb,EAAI,EAAGA,EAAI9D,KAAKW,OAAQmD,GAAK,EAAG,CACvC,IAAIkD,EAAKhH,KAAK8D,GACd,GAAKqF,EAaH,IAAKzD,EAAI,EAAGA,EAAIuE,EAAOtJ,OAAQ+E,GAAK,EAAG,CACrC,IAAIwE,EAAUD,EAAOvE,GAChBsB,EAAGmD,oBAAqBnD,EAAGmD,kBAAoB,IAC/CnD,EAAGmD,kBAAkBD,KAAYlD,EAAGmD,kBAAkBD,GAAW,IACtElD,EAAGmD,kBAAkBD,GAASzF,KAAK,CACjC2E,SAAUA,EACVgB,cAAed,IAEjBtC,EAAGhG,iBAAiBkJ,EAASZ,EAAiBD,QApBhD,IAAK3D,EAAI,EAAGA,EAAIuE,EAAOtJ,OAAQ+E,GAAK,EAAG,CACrC,IAAI2E,EAAQJ,EAAOvE,GACdsB,EAAGsD,gBAAiBtD,EAAGsD,cAAgB,IACvCtD,EAAGsD,cAAcD,KAAUrD,EAAGsD,cAAcD,GAAS,IAC1DrD,EAAGsD,cAAcD,GAAO5F,KAAK,CAC3B2E,SAAUA,EACVgB,cAAeL,IAEjB/C,EAAGhG,iBAAiBqJ,EAAON,EAAaV,IAgB9C,OAAOrJ,MAuoBLuK,IAroBJ,WAIE,IAHA,IAAIxB,EAEAC,EAAO,GAAIC,EAAM1C,UAAU5F,OACvBsI,KAAQD,EAAMC,GAAQ1C,UAAW0C,GACzC,IAAIC,EAAYF,EAAK,GACjBG,EAAiBH,EAAK,GACtBI,EAAWJ,EAAK,GAChBK,EAAUL,EAAK,GACI,mBAAZA,EAAK,KACEE,GAAfH,EAASC,GAAyB,GAAII,EAAWL,EAAO,GAAIM,EAAUN,EAAO,GAC9EI,OAAiBa,GAEdX,IAAWA,GAAU,GAG1B,IADA,IAAIY,EAASf,EAAUvE,MAAM,KACpBb,EAAI,EAAGA,EAAImG,EAAOtJ,OAAQmD,GAAK,EAEtC,IADA,IAAIuG,EAAQJ,EAAOnG,GACV4B,EAAI,EAAGA,EAAI1F,KAAKW,OAAQ+E,GAAK,EAAG,CACvC,IAAIsB,EAAKhH,KAAK0F,GACV8E,OAAW,EAMf,IALKrB,GAAkBnC,EAAGsD,cACxBE,EAAWxD,EAAGsD,cAAcD,GACnBlB,GAAkBnC,EAAGmD,oBAC9BK,EAAWxD,EAAGmD,kBAAkBE,IAE9BG,GAAYA,EAAS7J,OACvB,IAAK,IAAImJ,EAAIU,EAAS7J,OAAS,EAAQ,GAALmJ,EAAQA,GAAK,EAAG,CAChD,IAAIW,EAAUD,EAASV,GACnBV,GAAYqB,EAAQrB,WAAaA,GACnCpC,EAAG/F,oBAAoBoJ,EAAOI,EAAQL,cAAef,GACrDmB,EAASE,OAAOZ,EAAG,IACVV,GAAYqB,EAAQrB,UAAYqB,EAAQrB,SAASuB,WAAaF,EAAQrB,SAASuB,YAAcvB,GACtGpC,EAAG/F,oBAAoBoJ,EAAOI,EAAQL,cAAef,GACrDmB,EAASE,OAAOZ,EAAG,IACTV,IACVpC,EAAG/F,oBAAoBoJ,EAAOI,EAAQL,cAAef,GACrDmB,EAASE,OAAOZ,EAAG,KAM7B,OAAO9J,MA2lBL4K,KAzlBJ,WAIE,IAHA,IAAI7B,EAEAC,EAAO,GAAIC,EAAM1C,UAAU5F,OACvBsI,KAAQD,EAAMC,GAAQ1C,UAAW0C,GACzC,IAAInB,EAAM9H,KACN6K,EAAY7B,EAAK,GACjBG,EAAiBH,EAAK,GACtBI,EAAWJ,EAAK,GAChBK,EAAUL,EAAK,GAKnB,SAAS8B,IAEP,IADA,IAAIC,EAAY,GAAI9B,EAAM1C,UAAU5F,OAC5BsI,KAAQ8B,EAAW9B,GAAQ1C,UAAW0C,GAE9CG,EAASQ,MAAM5J,KAAM+K,GACrBjD,EAAIyC,IAAIM,EAAW1B,EAAgB2B,EAAazB,GAC5CyB,EAAYH,kBACPG,EAAYH,UAIvB,MAfuB,mBAAZ3B,EAAK,KACE6B,GAAf9B,EAASC,GAAyB,GAAII,EAAWL,EAAO,GAAIM,EAAUN,EAAO,GAC9EI,OAAiBa,GAYnBc,EAAYH,UAAYvB,EACjBtB,EAAIgB,GAAG+B,EAAW1B,EAAgB2B,EAAazB,IAikBpD2B,QA/jBJ,WAEE,IADA,IAAIhC,EAAO,GAAIC,EAAM1C,UAAU5F,OACvBsI,KAAQD,EAAMC,GAAQ1C,UAAW0C,GAIzC,IAFA,IAAIgB,EAASjB,EAAK,GAAGrE,MAAM,KACvB6E,EAAYR,EAAK,GACZlF,EAAI,EAAGA,EAAImG,EAAOtJ,OAAQmD,GAAK,EAEtC,IADA,IAAIuG,EAAQJ,EAAOnG,GACV4B,EAAI,EAAGA,EAAI1F,KAAKW,OAAQ+E,GAAK,EAAG,CACvC,IAAIsB,EAAKhH,KAAK0F,GACVuF,OAAM,EACV,IACEA,EAAM,IAAItI,EAAIS,YAAYiH,EAAO,CAC/Ba,OAAQ1B,EACR2B,SAAS,EACTC,YAAY,IAEd,MAAO7B,IACP0B,EAAMrK,EAAIY,YAAY,UAClBC,UAAU4I,GAAO,GAAM,GAC3BY,EAAIC,OAAS1B,EAGfxC,EAAGyC,cAAgBT,EAAKqC,OAAO,SAAUtE,EAAMuE,GAAa,OAAmB,EAAZA,IACnEtE,EAAGuE,cAAcN,GACjBjE,EAAGyC,cAAgB,UACZzC,EAAGyC,cAGd,OAAOzJ,MAmiBLwL,cAjiBJ,SAAuBxG,GACrB,IAEIlB,EAFAmG,EAAS,CAAC,sBAAuB,iBACjCnC,EAAM9H,KAEV,SAASyL,EAAalC,GAEpB,GAAIA,EAAEjJ,SAAWN,KAEjB,IADAgF,EAAS0G,KAAK1L,KAAMuJ,GACfzF,EAAI,EAAGA,EAAImG,EAAOtJ,OAAQmD,GAAK,EAClCgE,EAAIyC,IAAIN,EAAOnG,GAAI2H,GAGvB,GAAIzG,EACF,IAAKlB,EAAI,EAAGA,EAAImG,EAAOtJ,OAAQmD,GAAK,EAClCgE,EAAIgB,GAAGmB,EAAOnG,GAAI2H,GAGtB,OAAOzL,MAihBL2L,aA/gBJ,SAAsB3G,GACpB,IAEIlB,EAFAmG,EAAS,CAAC,qBAAsB,gBAChCnC,EAAM9H,KAEV,SAASyL,EAAalC,GACpB,GAAIA,EAAEjJ,SAAWN,KAEjB,IADAgF,EAAS0G,KAAK1L,KAAMuJ,GACfzF,EAAI,EAAGA,EAAImG,EAAOtJ,OAAQmD,GAAK,EAClCgE,EAAIyC,IAAIN,EAAOnG,GAAI2H,GAGvB,GAAIzG,EACF,IAAKlB,EAAI,EAAGA,EAAImG,EAAOtJ,OAAQmD,GAAK,EAClCgE,EAAIgB,GAAGmB,EAAOnG,GAAI2H,GAGtB,OAAOzL,MAggBL4L,MA7fJ,WACE,OAAI5L,KAAK,KAAO2C,EACPA,EAAIkJ,WAGK,EAAd7L,KAAKW,OACAiH,WAAW5H,KAAK8L,IAAI,UAGtB,MAqfLC,WAnfJ,SAAoBC,GAClB,GAAkB,EAAdhM,KAAKW,OAAY,CACnB,GAAIqL,EAAgB,CAElB,IAAIC,EAASjM,KAAKiM,SAClB,OAAOjM,KAAK,GAAGkM,YAActE,WAAWqE,EAAO3I,iBAAiB,iBAAmBsE,WAAWqE,EAAO3I,iBAAiB,gBAExH,OAAOtD,KAAK,GAAGkM,YAEjB,OAAO,MA2eLC,OAzeJ,WACE,OAAInM,KAAK,KAAO2C,EACPA,EAAIyJ,YAGK,EAAdpM,KAAKW,OACAiH,WAAW5H,KAAK8L,IAAI,WAGtB,MAieLO,YA/dJ,SAAqBL,GACnB,GAAkB,EAAdhM,KAAKW,OAAY,CACnB,GAAIqL,EAAgB,CAElB,IAAIC,EAASjM,KAAKiM,SAClB,OAAOjM,KAAK,GAAGsM,aAAe1E,WAAWqE,EAAO3I,iBAAiB,eAAiBsE,WAAWqE,EAAO3I,iBAAiB,kBAEvH,OAAOtD,KAAK,GAAGsM,aAEjB,OAAO,MAudLC,OArdJ,WACE,GAAkB,EAAdvM,KAAKW,OAAY,CACnB,IAAIqG,EAAKhH,KAAK,GACVwM,EAAMxF,EAAGyF,wBACT1L,EAAOH,EAAIG,KACX2L,EAAY1F,EAAG0F,WAAa3L,EAAK2L,WAAa,EAC9CC,EAAa3F,EAAG2F,YAAc5L,EAAK4L,YAAc,EACjDC,EAAY5F,IAAOrE,EAAMA,EAAIkK,QAAU7F,EAAG4F,UAC1CE,EAAa9F,IAAOrE,EAAMA,EAAIoK,QAAU/F,EAAG8F,WAC/C,MAAO,CACLE,IAAMR,EAAIQ,IAAMJ,EAAaF,EAC7BO,KAAOT,EAAIS,KAAOH,EAAcH,GAIpC,OAAO,MAucLO,KArcJ,WACE,IAAK,IAAIpJ,EAAI,EAAGA,EAAI9D,KAAKW,OAAQmD,GAAK,EACpC9D,KAAK8D,GAAGjC,MAAMsL,QAAU,OAE1B,OAAOnN,MAkcLoN,KAhcJ,WACE,IAAK,IAAItJ,EAAI,EAAGA,EAAI9D,KAAKW,OAAQmD,GAAK,EAAG,CACvC,IAAIkD,EAAKhH,KAAK8D,GACW,SAArBkD,EAAGnF,MAAMsL,UACXnG,EAAGnF,MAAMsL,QAAU,IAE8C,SAA/DxK,EAAIU,iBAAiB2D,EAAI,MAAM1D,iBAAiB,aAElD0D,EAAGnF,MAAMsL,QAAU,SAGvB,OAAOnN,MAsbLiM,OApbJ,WACE,OAAIjM,KAAK,GAAa2C,EAAIU,iBAAiBrD,KAAK,GAAI,MAC7C,IAmbL8L,IAjbJ,SAAajF,EAAOR,GAClB,IAAIvC,EACJ,GAAyB,IAArByC,UAAU5F,OAAc,CAC1B,GAAqB,iBAAVkG,EAEJ,CACL,IAAK/C,EAAI,EAAGA,EAAI9D,KAAKW,OAAQmD,GAAK,EAEhC,IAAK,IAAI8C,KAAQC,EACf7G,KAAK8D,GAAGjC,MAAM+E,GAAQC,EAAMD,GAGhC,OAAO5G,KARP,GAAIA,KAAK,GAAM,OAAO2C,EAAIU,iBAAiBrD,KAAK,GAAI,MAAMsD,iBAAiBuD,GAW/E,GAAyB,IAArBN,UAAU5F,QAAiC,iBAAVkG,EAMrC,OAAO7G,KALL,IAAK8D,EAAI,EAAGA,EAAI9D,KAAKW,OAAQmD,GAAK,EAChC9D,KAAK8D,GAAGjC,MAAMgF,GAASR,EAEzB,OAAOrG,MA+ZPqN,QAzZJ,WAEE,IADA,IAAIxJ,EAAM,GACDC,EAAI,EAAGA,EAAI9D,KAAKW,OAAQmD,GAAK,EACpCD,EAAIY,KAAKzE,KAAK8D,IAEhB,OAAOD,GAqZLyJ,KAlZJ,SAActI,GAEZ,IAAKA,EAAY,OAAOhF,KAExB,IAAK,IAAI8D,EAAI,EAAGA,EAAI9D,KAAKW,OAAQmD,GAAK,EAEpC,IAA2C,IAAvCkB,EAAS0G,KAAK1L,KAAK8D,GAAIA,EAAG9D,KAAK8D,IAEjC,OAAO9D,KAIX,OAAOA,MAuYLS,QArYJ,SAAiBuE,GAEf,IAAKA,EAAY,OAAOhF,KAExB,IAAK,IAAI8D,EAAI,EAAGA,EAAI9D,KAAKW,OAAQmD,GAAK,EAEpC,IAA2C,IAAvCkB,EAAS0G,KAAK1L,KAAK8D,GAAI9D,KAAK8D,GAAIA,GAElC,OAAO9D,KAIX,OAAOA,MA0XLqL,OAxXJ,SAAgBrG,GAGd,IAFA,IAAIuI,EAAe,GAEVzJ,EAAI,EAAGA,EADN9D,KACcW,OAAQmD,GAAK,EAC/BkB,EAAS0G,KAFL1L,KAEc8D,GAAIA,EAFlB9D,KAEyB8D,KAAOyJ,EAAa9I,KAF7CzE,KAEsD8D,IAEhE,OAAO,IAAI/D,EAAKwN,IAmXdC,IAjXJ,SAAaxI,GAGX,IAFA,IAAIyI,EAAgB,GAEX3J,EAAI,EAAGA,EADN9D,KACcW,OAAQmD,GAAK,EACnC2J,EAAchJ,KAAKO,EAAS0G,KAFpB1L,KAE6B8D,GAAIA,EAFjC9D,KAEwC8D,KAElD,OAAO,IAAI/D,EAAK0N,IA4WdrJ,KAzWJ,SAAcA,GACZ,QAAoB,IAATA,EACT,OAAOpE,KAAK,GAAKA,KAAK,GAAGwE,eAAYwF,EAGvC,IAAK,IAAIlG,EAAI,EAAGA,EAAI9D,KAAKW,OAAQmD,GAAK,EACpC9D,KAAK8D,GAAGU,UAAYJ,EAEtB,OAAOpE,MAkWL0N,KA/VJ,SAAcA,GACZ,QAAoB,IAATA,EACT,OAAI1N,KAAK,GACAA,KAAK,GAAG2N,YAAYtJ,OAEtB,KAGT,IAAK,IAAIP,EAAI,EAAGA,EAAI9D,KAAKW,OAAQmD,GAAK,EACpC9D,KAAK8D,GAAG6J,YAAcD,EAExB,OAAO1N,MAqVL2J,GAnVJ,SAAY3F,GACV,IACI4J,EACA9J,EAFAkD,EAAKhH,KAAK,GAGd,IAAKgH,QAA0B,IAAbhD,EAA4B,OAAO,EACrD,GAAwB,iBAAbA,EAAuB,CAChC,GAAIgD,EAAG6G,QAAW,OAAO7G,EAAG6G,QAAQ7J,GAC/B,GAAIgD,EAAG8G,sBAAyB,OAAO9G,EAAG8G,sBAAsB9J,GAChE,GAAIgD,EAAG+G,kBAAqB,OAAO/G,EAAG+G,kBAAkB/J,GAG7D,IADA4J,EAAc7J,EAAEC,GACXF,EAAI,EAAGA,EAAI8J,EAAYjN,OAAQmD,GAAK,EACvC,GAAI8J,EAAY9J,KAAOkD,EAAM,OAAO,EAEtC,OAAO,EACF,GAAIhD,IAAapD,EAAO,OAAOoG,IAAOpG,EACxC,GAAIoD,IAAarB,EAAO,OAAOqE,IAAOrE,EAE3C,GAAIqB,EAASY,UAAYZ,aAAoBjE,EAAM,CAEjD,IADA6N,EAAc5J,EAASY,SAAW,CAACZ,GAAYA,EAC1CF,EAAI,EAAGA,EAAI8J,EAAYjN,OAAQmD,GAAK,EACvC,GAAI8J,EAAY9J,KAAOkD,EAAM,OAAO,EAEtC,OAAO,EAET,OAAO,GA2TL1C,QAzTJ,SAAiB0C,GACf,IAAK,IAAIlD,EAAI,EAAGA,EAAI9D,KAAKW,OAAQmD,GAAK,EACpC,GAAI9D,KAAK8D,KAAOkD,EAAM,OAAOlD,EAE/B,OAAQ,GAsTNkK,MApTJ,WACE,IACIlK,EADAmK,EAAQjO,KAAK,GAEjB,GAAIiO,EAAO,CAGT,IAFAnK,EAAI,EAEuC,QAAnCmK,EAAQA,EAAMC,kBACG,IAAnBD,EAAMrJ,WAAkBd,GAAK,GAEnC,OAAOA,IA4SPqK,GAvSJ,SAAYH,GACV,QAAqB,IAAVA,EAAyB,OAAOhO,KAC3C,IACIoO,EADAzN,EAASX,KAAKW,OAElB,OACS,IAAIZ,EADDY,EAAS,EAAjBqN,EACc,GAEdA,EAAQ,GACVI,EAAczN,EAASqN,GACL,EAAqB,GACvB,CAAChO,KAAKoO,IAER,CAACpO,KAAKgO,MA4RpBK,OA1RJ,WAEE,IADA,IAGIC,EAHAtF,EAAO,GAAIC,EAAM1C,UAAU5F,OACvBsI,KAAQD,EAAMC,GAAQ1C,UAAW0C,GAIzC,IAAK,IAAIa,EAAI,EAAGA,EAAId,EAAKrI,OAAQmJ,GAAK,EAAG,CACvCwE,EAAWtF,EAAKc,GAChB,IAAK,IAAIhG,EAAI,EAAGA,EAAI9D,KAAKW,OAAQmD,GAAK,EACpC,GAAwB,iBAAbwK,EAAuB,CAChC,IAAIC,EAAU3N,EAAIc,cAAc,OAEhC,IADA6M,EAAQ/J,UAAY8J,EACbC,EAAQC,YACbxO,KAAK8D,GAAG2K,YAAYF,EAAQC,iBAEzB,GAAIF,aAAoBvO,EAC7B,IAAK,IAAI2F,EAAI,EAAGA,EAAI4I,EAAS3N,OAAQ+E,GAAK,EACxC1F,KAAK8D,GAAG2K,YAAYH,EAAS5I,SAG/B1F,KAAK8D,GAAG2K,YAAYH,GAK1B,OAAOtO,MAkQL0O,SA/PJ,SAAkBC,GAEhB,OADA5K,EAAE4K,GAAQN,OAAOrO,MACVA,MA8PL4O,QA5PJ,SAAiBN,GACf,IAAIxK,EACA4B,EACJ,IAAK5B,EAAI,EAAGA,EAAI9D,KAAKW,OAAQmD,GAAK,EAChC,GAAwB,iBAAbwK,EAAuB,CAChC,IAAIC,EAAU3N,EAAIc,cAAc,OAEhC,IADA6M,EAAQ/J,UAAY8J,EACf5I,EAAI6I,EAAQ3M,WAAWjB,OAAS,EAAQ,GAAL+E,EAAQA,GAAK,EACnD1F,KAAK8D,GAAG+K,aAAaN,EAAQ3M,WAAW8D,GAAI1F,KAAK8D,GAAGlC,WAAW,SAE5D,GAAI0M,aAAoBvO,EAC7B,IAAK2F,EAAI,EAAGA,EAAI4I,EAAS3N,OAAQ+E,GAAK,EACpC1F,KAAK8D,GAAG+K,aAAaP,EAAS5I,GAAI1F,KAAK8D,GAAGlC,WAAW,SAGvD5B,KAAK8D,GAAG+K,aAAaP,EAAUtO,KAAK8D,GAAGlC,WAAW,IAGtD,OAAO5B,MA2OL8O,UAxOJ,SAAmBH,GAEjB,OADA5K,EAAE4K,GAAQC,QAAQ5O,MACXA,MAuOL6O,aArOJ,SAAsB7K,GAEpB,IADA,IAAI+K,EAAShL,EAAEC,GACNF,EAAI,EAAGA,EAAI9D,KAAKW,OAAQmD,GAAK,EACpC,GAAsB,IAAlBiL,EAAOpO,OACToO,EAAO,GAAGC,WAAWH,aAAa7O,KAAK8D,GAAIiL,EAAO,SAC7C,GAAoB,EAAhBA,EAAOpO,OAChB,IAAK,IAAI+E,EAAI,EAAGA,EAAIqJ,EAAOpO,OAAQ+E,GAAK,EACtCqJ,EAAOrJ,GAAGsJ,WAAWH,aAAa7O,KAAK8D,GAAGmL,WAAU,GAAOF,EAAOrJ,KA+NtEwJ,YA1NJ,SAAqBlL,GAEnB,IADA,IAAImL,EAAQpL,EAAEC,GACLF,EAAI,EAAGA,EAAI9D,KAAKW,OAAQmD,GAAK,EACpC,GAAqB,IAAjBqL,EAAMxO,OACRwO,EAAM,GAAGH,WAAWH,aAAa7O,KAAK8D,GAAIqL,EAAM,GAAGC,kBAC9C,GAAmB,EAAfD,EAAMxO,OACf,IAAK,IAAI+E,EAAI,EAAGA,EAAIyJ,EAAMxO,OAAQ+E,GAAK,EACrCyJ,EAAMzJ,GAAGsJ,WAAWH,aAAa7O,KAAK8D,GAAGmL,WAAU,GAAOE,EAAMzJ,GAAG0J,cAoNvEC,KA/MJ,SAAcrL,GACZ,OAAkB,EAAdhE,KAAKW,OACHqD,EACEhE,KAAK,GAAGsP,oBAAsBvL,EAAE/D,KAAK,GAAGsP,oBAAoB3F,GAAG3F,GAC1D,IAAIjE,EAAK,CAACC,KAAK,GAAGsP,qBAEpB,IAAIvP,EAAK,IAGdC,KAAK,GAAGsP,mBAA6B,IAAIvP,EAAK,CAACC,KAAK,GAAGsP,qBACpD,IAAIvP,EAAK,IAEX,IAAIA,EAAK,KAoMdwP,QAlMJ,SAAiBvL,GACf,IAAIwL,EAAU,GACVxI,EAAKhH,KAAK,GACd,IAAKgH,EAAM,OAAO,IAAIjH,EAAK,IAC3B,KAAOiH,EAAGsI,oBAAoB,CAC5B,IAAID,EAAOrI,EAAGsI,mBACVtL,EACED,EAAEsL,GAAM1F,GAAG3F,IAAawL,EAAQ/K,KAAK4K,GAClCG,EAAQ/K,KAAK4K,GACtBrI,EAAKqI,EAEP,OAAO,IAAItP,EAAKyP,IAwLdC,KAtLJ,SAAczL,GACZ,GAAkB,EAAdhE,KAAKW,OAAY,CACnB,IAAIqG,EAAKhH,KAAK,GACd,OAAIgE,EACEgD,EAAG0I,wBAA0B3L,EAAEiD,EAAG0I,wBAAwB/F,GAAG3F,GACxD,IAAIjE,EAAK,CAACiH,EAAG0I,yBAEf,IAAI3P,EAAK,IAGdiH,EAAG0I,uBAAiC,IAAI3P,EAAK,CAACiH,EAAG0I,yBAC9C,IAAI3P,EAAK,IAElB,OAAO,IAAIA,EAAK,KA0Kd4P,QAxKJ,SAAiB3L,GACf,IAAI4L,EAAU,GACV5I,EAAKhH,KAAK,GACd,IAAKgH,EAAM,OAAO,IAAIjH,EAAK,IAC3B,KAAOiH,EAAG0I,wBAAwB,CAChC,IAAID,EAAOzI,EAAG0I,uBACV1L,EACED,EAAE0L,GAAM9F,GAAG3F,IAAa4L,EAAQnL,KAAKgL,GAClCG,EAAQnL,KAAKgL,GACtBzI,EAAKyI,EAEP,OAAO,IAAI1P,EAAK6P,IA8JdC,SA5JJ,SAAkB7L,GAChB,OAAOhE,KAAKuP,QAAQvL,GAAU4B,IAAI5F,KAAK2P,QAAQ3L,KA4J7C2K,OA1JJ,SAAgB3K,GAEd,IADA,IAAI6F,EAAU,GACL/F,EAAI,EAAGA,EAAI9D,KAAKW,OAAQmD,GAAK,EACT,OAAvB9D,KAAK8D,GAAGkL,aACNhL,EACED,EAAE/D,KAAK8D,GAAGkL,YAAYrF,GAAG3F,IAAa6F,EAAQpF,KAAKzE,KAAK8D,GAAGkL,YAE/DnF,EAAQpF,KAAKzE,KAAK8D,GAAGkL,aAI3B,OAAOjL,EAAEc,EAAOgF,KAgJdA,QA9IJ,SAAiB7F,GAEf,IADA,IAAI6F,EAAU,GACL/F,EAAI,EAAGA,EAAI9D,KAAKW,OAAQmD,GAAK,EAEpC,IADA,IAAI6K,EAAS3O,KAAK8D,GAAGkL,WACdL,GACD3K,EACED,EAAE4K,GAAQhF,GAAG3F,IAAa6F,EAAQpF,KAAKkK,GAE3C9E,EAAQpF,KAAKkK,GAEfA,EAASA,EAAOK,WAGpB,OAAOjL,EAAEc,EAAOgF,KAkIdiG,QAhIJ,SAAiB9L,GACf,IAAI8L,EAAU9P,KACd,YAAwB,IAAbgE,EACF,IAAIjE,EAAK,KAEb+P,EAAQnG,GAAG3F,KACd8L,EAAUA,EAAQjG,QAAQ7F,GAAUmK,GAAG,IAElC2B,IAyHLC,KAvHJ,SAAc/L,GAEZ,IADA,IAAIgM,EAAgB,GACXlM,EAAI,EAAGA,EAAI9D,KAAKW,OAAQmD,GAAK,EAEpC,IADA,IAAImM,EAAQjQ,KAAK8D,GAAGxC,iBAAiB0C,GAC5B0B,EAAI,EAAGA,EAAIuK,EAAMtP,OAAQ+E,GAAK,EACrCsK,EAAcvL,KAAKwL,EAAMvK,IAG7B,OAAO,IAAI3F,EAAKiQ,IAgHdrO,SA9GJ,SAAkBqC,GAEhB,IADA,IAAIrC,EAAW,GACNmC,EAAI,EAAGA,EAAI9D,KAAKW,OAAQmD,GAAK,EAGpC,IAFA,IAAIlC,EAAa5B,KAAK8D,GAAGlC,WAEhB8D,EAAI,EAAGA,EAAI9D,EAAWjB,OAAQ+E,GAAK,EACrC1B,EAEiC,IAA3BpC,EAAW8D,GAAGd,UAAkBb,EAAEnC,EAAW8D,IAAIiE,GAAG3F,IAC7DrC,EAAS8C,KAAK7C,EAAW8D,IAFM,IAA3B9D,EAAW8D,GAAGd,UAAkBjD,EAAS8C,KAAK7C,EAAW8D,IAMnE,OAAO,IAAI3F,EAAK8E,EAAOlD,KAkGrBmE,OAhGJ,WACE,IAAK,IAAIhC,EAAI,EAAGA,EAAI9D,KAAKW,OAAQmD,GAAK,EAChC9D,KAAK8D,GAAGkL,YAAchP,KAAK8D,GAAGkL,WAAWkB,YAAYlQ,KAAK8D,IAEhE,OAAO9D,MA6FLmQ,OA3FJ,WACE,OAAOnQ,KAAK8F,UA2FVF,IAzFJ,WAEE,IADA,IAAIoD,EAAO,GAAIC,EAAM1C,UAAU5F,OACvBsI,KAAQD,EAAMC,GAAQ1C,UAAW0C,GAEzC,IACInF,EACA4B,EACJ,IAAK5B,EAAI,EAAGA,EAAIkF,EAAKrI,OAAQmD,GAAK,EAAG,CACnC,IAAIsM,EAAQrM,EAAEiF,EAAKlF,IACnB,IAAK4B,EAAI,EAAGA,EAAI0K,EAAMzP,OAAQ+E,GAAK,EAL3B1F,KAAAA,KAMEW,QAAUyP,EAAM1K,GANlB1F,KAOFW,QAAU,EAGlB,OAVUX,MAsFRqQ,MA1EJ,WACE,IAAK,IAAIvM,EAAI,EAAGA,EAAI9D,KAAKW,OAAQmD,GAAK,EAAG,CACvC,IAAIkD,EAAKhH,KAAK8D,GACd,GAAoB,IAAhBkD,EAAGpC,SAAgB,CACrB,IAAK,IAAIc,EAAI,EAAGA,EAAIsB,EAAGpF,WAAWjB,OAAQ+E,GAAK,EACzCsB,EAAGpF,WAAW8D,GAAGsJ,YACnBhI,EAAGpF,WAAW8D,GAAGsJ,WAAWkB,YAAYlJ,EAAGpF,WAAW8D,IAG1DsB,EAAG2G,YAAc,IAGrB,OAAO3N,QAuMT,IAAIsQ,EAAsBlQ,OAAOkF,OAAO,CACpCiL,SAvIJ,WAIE,IAHA,IAAIxH,EAEAC,EAAO,GAAIC,EAAM1C,UAAU5F,OACvBsI,KAAQD,EAAMC,GAAQ1C,UAAW0C,GACzC,IAAIgE,EAAOjE,EAAK,GACZgE,EAAMhE,EAAK,GACXL,EAAWK,EAAK,GAChBwH,EAASxH,EAAK,GACdhE,EAAWgE,EAAK,GAOpB,OANoB,IAAhBA,EAAKrI,QAAkC,mBAAX6P,IAC9BxL,EAAWwL,EACKvD,GAAflE,EAASC,GAAoB,GAAIgE,EAAMjE,EAAO,GAAIJ,EAAWI,EAAO,GAAI/D,EAAW+D,EAAO,GAAIyH,EAASzH,EAAO,SAE3F,IAAXyH,IAA0BA,EAAS,SAEvCxQ,KAAKsN,KAAK,WACf,IACImD,EACAC,EACAC,EACAC,EACAC,EACAC,EACAlE,EACAE,EARA9F,EAAKhH,KASL+Q,EAAmB,EAAN/D,GAAmB,IAARA,EACxBgE,EAAqB,EAAP/D,GAAqB,IAATA,EAgB9B,QAfsB,IAAXuD,IACTA,EAAS,SAEPO,IACFN,EAAazJ,EAAG4F,UACXjE,IACH3B,EAAG4F,UAAYI,IAGfgE,IACFN,EAAc1J,EAAG8F,WACZnE,IACH3B,EAAG8F,WAAaG,IAGftE,EAAL,CACIoI,IACFJ,EAAS3J,EAAGiK,aAAejK,EAAGsF,aAC9BuE,EAASK,KAAKC,IAAID,KAAKE,IAAIpE,EAAK2D,GAAS,IAEvCK,IACFJ,EAAU5J,EAAGqK,YAAcrK,EAAGkF,YAC9B4E,EAAUI,KAAKC,IAAID,KAAKE,IAAInE,EAAM2D,GAAU,IAE9C,IAAIU,EAAY,KACZP,GAAcF,IAAWJ,IAAcM,GAAa,GACpDC,GAAeF,IAAYJ,IAAeM,GAAc,GAqC5DjM,EApCA,SAASwM,EAAOC,QACA,IAATA,IAAkBA,GAAO,IAAIhO,MAAOiO,WAEvB,OAAdH,IACFA,EAAYE,GAEd,IAEIE,EAFAC,EAAWT,KAAKC,IAAID,KAAKE,KAAKI,EAAOF,GAAa3I,EAAU,GAAI,GAChEiJ,EAA0B,WAAXpB,EAAsBmB,EAAY,GAAOT,KAAKW,IAAIF,EAAWT,KAAKY,IAAM,EAEvFf,IAAcnE,EAAY6D,EAAcmB,GAAgBf,EAASJ,IACjEO,IAAelE,EAAa4D,EAAekB,GAAgBd,EAAUJ,IACrEK,GAAuBN,EAATI,GAAoCA,GAAbjE,IACvC5F,EAAG4F,UAAYiE,EACfa,GAAO,GAELX,GAAcF,EAASJ,GAAc7D,GAAaiE,IACpD7J,EAAG4F,UAAYiE,EACfa,GAAO,GAELV,GAAyBN,EAAVI,GAAuCA,GAAdhE,IAC1C9F,EAAG8F,WAAagE,EAChBY,GAAO,GAELV,GAAeF,EAAUJ,GAAe5D,GAAcgE,IACxD9J,EAAG8F,WAAagE,EAChBY,GAAO,GAGLA,EACE1M,GAAYA,KAGd+L,IAAc/J,EAAG4F,UAAYA,GAC7BoE,IAAehK,EAAG8F,WAAaA,GACnC/H,EAAsBwM,UA+CxB3E,UAzCJ,WAIE,IAHA,IAAI7D,EAEAC,EAAO,GAAIC,EAAM1C,UAAU5F,OACvBsI,KAAQD,EAAMC,GAAQ1C,UAAW0C,GACzC,IAAI+D,EAAMhE,EAAK,GACXL,EAAWK,EAAK,GAChBwH,EAASxH,EAAK,GACdhE,EAAWgE,EAAK,GAKpB,OAJoB,IAAhBA,EAAKrI,QAAkC,mBAAX6P,IACdxD,GAAfjE,EAASC,GAAmB,GAAIL,EAAWI,EAAO,GAAI/D,EAAW+D,EAAO,GAAIyH,EAASzH,EAAO,SAG5E,IAARiE,EACQ,EAFThN,KAEAW,OAFAX,KAEyB,GAAG4M,UAC7B,KAHC5M,KAKCuQ,cAASvG,EAAWgD,EAAKrE,EAAU6H,EAAQxL,IAyBpD8H,WAvBJ,WAIE,IAHA,IAAI/D,EAEAC,EAAO,GAAIC,EAAM1C,UAAU5F,OACvBsI,KAAQD,EAAMC,GAAQ1C,UAAW0C,GACzC,IAAIgE,EAAOjE,EAAK,GACZL,EAAWK,EAAK,GAChBwH,EAASxH,EAAK,GACdhE,EAAWgE,EAAK,GAKpB,OAJoB,IAAhBA,EAAKrI,QAAkC,mBAAX6P,IACdvD,GAAflE,EAASC,GAAoB,GAAIL,EAAWI,EAAO,GAAI/D,EAAW+D,EAAO,GAAIyH,EAASzH,EAAO,SAG5E,IAATkE,EACQ,EAFTjN,KAEAW,OAFAX,KAEyB,GAAG8M,WAC7B,KAHC9M,KAKCuQ,SAAStD,OAAMjD,EAAWrB,EAAU6H,EAAQxL,MAqMzD,IAAI+M,EAAuB3R,OAAOkF,OAAO,CACrC0M,QA7LJ,SAAiBC,EAAcC,GAC7B,IA+JIC,EA/JAjO,EAAMlE,KACNoS,EAAI,CACNvL,MAAOzG,OAAO2I,OAAO,GAAIkJ,GACzBI,OAAQjS,OAAO2I,OAAO,CACpBJ,SAAU,IACV6H,OAAQ,SAMP0B,GAEHI,SAAUpO,EACVqO,WAAW,EACXC,IAAK,GAELC,eAAgB,SAAwBjC,EAAQmB,GAC9C,MAAe,UAAXnB,EACK,GAAOU,KAAKW,IAAIF,EAAWT,KAAKY,IAAM,EAEzB,mBAAXtB,EACFA,EAAOmB,GAETA,GAETe,KAAM,WAhnCV,IAA8BC,EAinCpBP,EAAEQ,UAjnCkBD,EAknCDP,EAAEQ,QAjnCzBjQ,EAAIkQ,qBAA+BlQ,EAAIkQ,qBAAqBF,GACvDhQ,EAAImQ,2BAAqCnQ,EAAImQ,2BAA2BH,GAC1EhQ,EAAIgB,aAAagP,IAinCpBP,EAAEG,WAAY,EACdH,EAAEE,SAAShF,KAAK,SAAUU,EAAOhH,UACjBA,EACC+L,sBAEjBX,EAAEI,IAAM,IAEVd,KAAM,SAAcsB,GAOlB,GANAZ,EAAEG,WAAY,EACdH,EAAEE,SAAShF,KAAK,SAAUU,EAAOhH,UACjBA,EACC+L,sBAEbC,GAAYA,EAAS9O,GACN,EAAfkO,EAAEI,IAAI7R,OAAY,CACpB,IAAI6R,EAAMJ,EAAEI,IAAIS,QAChBb,EAAEJ,QAAQQ,EAAI,GAAIA,EAAI,MAG1BR,QAAS,SAAiBnL,EAAOwL,GAC/B,GAAID,EAAEG,UAEJ,OADAH,EAAEI,IAAI/N,KAAK,CAACoC,EAAOwL,IACZD,EAET,IAAIE,EAAW,GAGfF,EAAEE,SAAShF,KAAK,SAAUU,EAAOhH,GAC/B,IAAIkM,EACAC,EACAC,EACAC,EACAC,EAECtM,EAAG+L,sBAAuBX,EAAEE,SAAStE,GAAO+E,oBAAsBX,GAEvEE,EAAStE,GAAS,CAChBuF,UAAWvM,GAEb5G,OAAOI,KAAKqG,GAAOpG,QAAQ,SAAUmG,GACnCsM,EAAmBvQ,EAAIU,iBAAiB2D,EAAI,MAAM1D,iBAAiBsD,GAAMa,QAAQ,IAAK,KACtF0L,EAAevL,WAAWsL,GAC1BE,EAAOF,EAAiBzL,QAAQ0L,EAAc,IAC9CE,EAAazL,WAAWf,EAAMD,IAC9B0M,EAAiBzM,EAAMD,GAAQwM,EAC/Bd,EAAStE,GAAOpH,GAAQ,CACtBsM,iBAAkBA,EAClBC,aAAcA,EACdC,KAAMA,EACNC,WAAYA,EACZC,eAAgBA,EAChBE,aAAcL,OAKpB,IACI3B,EAGAE,EAJAJ,EAAY,KAEZmC,EAAe,EACfC,EAAY,EAEZC,GAAQ,EA4DZ,OA1DAvB,EAAEG,WAAY,EAyDdH,EAAEQ,QAAU7N,EAvDZ,SAASwM,IAEP,IAAII,EACAC,EAFJJ,GAAO,IAAIhO,MAAOiO,UAIbkC,IACHA,GAAQ,EACJtB,EAAOuB,OAASvB,EAAOuB,MAAM1P,IAEjB,OAAdoN,IACFA,EAAYE,GAEVa,EAAOV,UAETU,EAAOV,SAASzN,EAAKgN,KAAKC,IAAID,KAAKE,KAAKI,EAAOF,GAAae,EAAO1J,SAAU,GAAI,GAAM2I,EAAYe,EAAO1J,SAAY6I,EAAO,EAAI,EAAKF,EAAYe,EAAO1J,SAAY6I,EAAOF,GAG9KgB,EAAS7R,QAAQ,SAAUoT,GACzB,IAAI7M,EAAK6M,EACLnC,GAAQ1K,EAAG0K,MACftR,OAAOI,KAAKqG,GAAOpG,QAAQ,SAAUmG,GACnC,IAAI8K,IAAQ1K,EAAG0K,KAAf,CACAC,EAAWT,KAAKC,IAAID,KAAKE,KAAKI,EAAOF,GAAae,EAAO1J,SAAU,GAAI,GACvEiJ,EAAeQ,EAAEK,eAAeJ,EAAO7B,OAAQmB,GAC/C,IAAImC,EAAM9M,EAAGJ,GACTuM,EAAeW,EAAIX,aACnBE,EAAaS,EAAIT,WACjBD,EAAOU,EAAIV,KACfpM,EAAGJ,GAAM4M,aAAeL,EAAgBvB,GAAgByB,EAAaF,GACrE,IAAIK,EAAexM,EAAGJ,GAAM4M,cAGZL,EAAbE,GAA6CA,GAAhBG,GAC7BH,EAAaF,GAAgBK,GAAgBH,KAC9CrM,EAAGuM,UAAU1R,MAAM+E,GAAQyM,EAAaD,GACxCM,GAAa,KACKtT,OAAOI,KAAKqG,GAAOlG,SACnCqG,EAAG0K,MAAO,EACV+B,GAAgB,GAEdA,IAAiBnB,EAAS3R,SAC5B+Q,GAAO,IAGPA,EACFU,EAAEV,KAAKW,EAAOW,UAGhBhM,EAAGuM,UAAU1R,MAAM+E,GAAQ4M,EAAeJ,OAG1C1B,IAEJU,EAAEQ,QAAU7N,EAAsBwM,MAG7Ba,IAIX,GAA0B,IAAtBA,EAAEE,SAAS3R,OACb,OAAOuD,EAIT,IAAK,IAAIJ,EAAI,EAAGA,EAAIsO,EAAEE,SAAS3R,OAAQmD,GAAK,EACtCsO,EAAEE,SAASxO,GAAGiP,oBAChBZ,EAAkBC,EAAEE,SAASxO,GAAGiP,oBACzBX,EAAEE,SAASxO,GAAGiP,oBAAsBX,EAY/C,OAVKD,IACHA,EAAkBC,GAGC,SAAjBH,EACFE,EAAgBO,OAEhBP,EAAgBH,QAAQI,EAAEvL,MAAOuL,EAAEC,QAG9BnO,GAcLwO,KAXJ,WAEE,IADA,IACS5O,EAAI,EAAGA,EADN9D,KACcW,OAAQmD,GAAK,EAD3B9D,KAEA8D,GAAGiP,qBAFH/S,KAGF8D,GAAGiP,oBAAoBL,UAU7BqB,EAAY,gBAAkBpP,MAAM,KACxC,SAASqP,EAAczM,GAIrB,IAHA,IAAIuM,EAEA9K,EAAO,GAAIC,EAAM1C,UAAU5F,OAAS,EACxB,EAARsI,KAAYD,EAAMC,GAAQ1C,UAAW0C,EAAM,GACnD,QAAuB,IAAZD,EAAK,GAWhB,OAAQ8K,EAAM9T,MAAM8I,GAAGc,MAAMkK,EAAK,CAAEvM,GAAO0M,OAAQjL,IAVjD,IAAK,IAAIlF,EAAI,EAAGA,EAAI9D,KAAKW,OAAQmD,GAAK,EAChCiQ,EAAUzP,QAAQiD,GAAQ,IACxBA,KAAQvH,KAAK8D,GAAM9D,KAAK8D,GAAGyD,KAE7BxD,EAAE/D,KAAK8D,IAAIkH,QAAQzD,IAIzB,OAAOvH,KAyKX,MANA,CAACqF,EAASiL,EAAQyB,EAzBgB3R,OAAOkF,OAAO,CAC5C4O,MAtIJ,WAEE,IADA,IAAIlL,EAAO,GAAIC,EAAM1C,UAAU5F,OACvBsI,KAAQD,EAAMC,GAAQ1C,UAAW0C,GAEzC,OAAO+K,EAAcG,KAAKnU,MAAM4J,WAAM,EAAQ,CAAE,SAAUqK,OAAQjL,KAmIhE7H,KAjIJ,WAEE,IADA,IAAI6H,EAAO,GAAIC,EAAM1C,UAAU5F,OACvBsI,KAAQD,EAAMC,GAAQ1C,UAAW0C,GAEzC,OAAO+K,EAAcG,KAAKnU,MAAM4J,WAAM,EAAQ,CAAE,QAASqK,OAAQjL,KA8H/DoL,MA5HJ,WAEE,IADA,IAAIpL,EAAO,GAAIC,EAAM1C,UAAU5F,OACvBsI,KAAQD,EAAMC,GAAQ1C,UAAW0C,GAEzC,OAAO+K,EAAcG,KAAKnU,MAAM4J,WAAM,EAAQ,CAAE,SAAUqK,OAAQjL,KAyHhEqL,QAvHJ,WAEE,IADA,IAAIrL,EAAO,GAAIC,EAAM1C,UAAU5F,OACvBsI,KAAQD,EAAMC,GAAQ1C,UAAW0C,GAEzC,OAAO+K,EAAcG,KAAKnU,MAAM4J,WAAM,EAAQ,CAAE,WAAYqK,OAAQjL,KAoHlEsL,SAlHJ,WAEE,IADA,IAAItL,EAAO,GAAIC,EAAM1C,UAAU5F,OACvBsI,KAAQD,EAAMC,GAAQ1C,UAAW0C,GAEzC,OAAO+K,EAAcG,KAAKnU,MAAM4J,WAAM,EAAQ,CAAE,YAAaqK,OAAQjL,KA+GnEuL,MA7GJ,WAEE,IADA,IAAIvL,EAAO,GAAIC,EAAM1C,UAAU5F,OACvBsI,KAAQD,EAAMC,GAAQ1C,UAAW0C,GAEzC,OAAO+K,EAAcG,KAAKnU,MAAM4J,WAAM,EAAQ,CAAE,SAAUqK,OAAQjL,KA0GhEwL,QAxGJ,WAEE,IADA,IAAIxL,EAAO,GAAIC,EAAM1C,UAAU5F,OACvBsI,KAAQD,EAAMC,GAAQ1C,UAAW0C,GAEzC,OAAO+K,EAAcG,KAAKnU,MAAM4J,WAAM,EAAQ,CAAE,WAAYqK,OAAQjL,KAqGlEyL,SAnGJ,WAEE,IADA,IAAIzL,EAAO,GAAIC,EAAM1C,UAAU5F,OACvBsI,KAAQD,EAAMC,GAAQ1C,UAAW0C,GAEzC,OAAO+K,EAAcG,KAAKnU,MAAM4J,WAAM,EAAQ,CAAE,YAAaqK,OAAQjL,KAgGnE0L,OA9FJ,WAEE,IADA,IAAI1L,EAAO,GAAIC,EAAM1C,UAAU5F,OACvBsI,KAAQD,EAAMC,GAAQ1C,UAAW0C,GAEzC,OAAO+K,EAAcG,KAAKnU,MAAM4J,WAAM,EAAQ,CAAE,UAAWqK,OAAQjL,KA2FjE2L,OAzFJ,WAEE,IADA,IAAI3L,EAAO,GAAIC,EAAM1C,UAAU5F,OACvBsI,KAAQD,EAAMC,GAAQ1C,UAAW0C,GAEzC,OAAO+K,EAAcG,KAAKnU,MAAM4J,WAAM,EAAQ,CAAE,UAAWqK,OAAQjL,KAsFjE4L,UApFJ,WAEE,IADA,IAAI5L,EAAO,GAAIC,EAAM1C,UAAU5F,OACvBsI,KAAQD,EAAMC,GAAQ1C,UAAW0C,GAEzC,OAAO+K,EAAcG,KAAKnU,MAAM4J,WAAM,EAAQ,CAAE,aAAcqK,OAAQjL,KAiFpE6L,UA/EJ,WAEE,IADA,IAAI7L,EAAO,GAAIC,EAAM1C,UAAU5F,OACvBsI,KAAQD,EAAMC,GAAQ1C,UAAW0C,GAEzC,OAAO+K,EAAcG,KAAKnU,MAAM4J,WAAM,EAAQ,CAAE,aAAcqK,OAAQjL,KA4EpE8L,QA1EJ,WAEE,IADA,IAAI9L,EAAO,GAAIC,EAAM1C,UAAU5F,OACvBsI,KAAQD,EAAMC,GAAQ1C,UAAW0C,GAEzC,OAAO+K,EAAcG,KAAKnU,MAAM4J,WAAM,EAAQ,CAAE,WAAYqK,OAAQjL,KAuElE+L,WArEJ,WAEE,IADA,IAAI/L,EAAO,GAAIC,EAAM1C,UAAU5F,OACvBsI,KAAQD,EAAMC,GAAQ1C,UAAW0C,GAEzC,OAAO+K,EAAcG,KAAKnU,MAAM4J,WAAM,EAAQ,CAAE,cAAeqK,OAAQjL,KAkErEgM,WAhEJ,WAEE,IADA,IAAIhM,EAAO,GAAIC,EAAM1C,UAAU5F,OACvBsI,KAAQD,EAAMC,GAAQ1C,UAAW0C,GAEzC,OAAO+K,EAAcG,KAAKnU,MAAM4J,WAAM,EAAQ,CAAE,cAAeqK,OAAQjL,KA6DrEiM,SA3DJ,WAEE,IADA,IAAIjM,EAAO,GAAIC,EAAM1C,UAAU5F,OACvBsI,KAAQD,EAAMC,GAAQ1C,UAAW0C,GAEzC,OAAO+K,EAAcG,KAAKnU,MAAM4J,WAAM,EAAQ,CAAE,YAAaqK,OAAQjL,KAwDnEkM,UAtDJ,WAEE,IADA,IAAIlM,EAAO,GAAIC,EAAM1C,UAAU5F,OACvBsI,KAAQD,EAAMC,GAAQ1C,UAAW0C,GAEzC,OAAO+K,EAAcG,KAAKnU,MAAM4J,WAAM,EAAQ,CAAE,aAAcqK,OAAQjL,KAmDpEmM,WAjDJ,WAEE,IADA,IAAInM,EAAO,GAAIC,EAAM1C,UAAU5F,OACvBsI,KAAQD,EAAMC,GAAQ1C,UAAW0C,GAEzC,OAAO+K,EAAcG,KAAKnU,MAAM4J,WAAM,EAAQ,CAAE,cAAeqK,OAAQjL,KA8CrEoM,SA5CJ,WAEE,IADA,IAAIpM,EAAO,GAAIC,EAAM1C,UAAU5F,OACvBsI,KAAQD,EAAMC,GAAQ1C,UAAW0C,GAEzC,OAAO+K,EAAcG,KAAKnU,MAAM4J,WAAM,EAAQ,CAAE,YAAaqK,OAAQjL,KAyCnEqM,UAvCJ,WAEE,IADA,IAAIrM,EAAO,GAAIC,EAAM1C,UAAU5F,OACvBsI,KAAQD,EAAMC,GAAQ1C,UAAW0C,GAEzC,OAAO+K,EAAcG,KAAKnU,MAAM4J,WAAM,EAAQ,CAAE,aAAcqK,OAAQjL,KAoCpEsM,OAlCJ,WAEE,IADA,IAAItM,EAAO,GAAIC,EAAM1C,UAAU5F,OACvBsI,KAAQD,EAAMC,GAAQ1C,UAAW0C,GAEzC,OAAO+K,EAAcG,KAAKnU,MAAM4J,WAAM,EAAQ,CAAE,UAAWqK,OAAQjL,KA+BjEuM,OA7BJ,WAEE,IADA,IAAIvM,EAAO,GAAIC,EAAM1C,UAAU5F,OACvBsI,KAAQD,EAAMC,GAAQ1C,UAAW0C,GAEzC,OAAO+K,EAAcG,KAAKnU,MAAM4J,WAAM,EAAQ,CAAE,UAAWqK,OAAQjL,QA4B1BvI,QAAQ,SAAU+U,GAC3DpV,OAAOI,KAAKgV,GAAO/U,QAAQ,SAAUgV,GACnC1R,EAAEmB,GAAGuQ,GAAcD,EAAMC,OAItB1R","file":"dom7.min.js","sourcesContent":["/**\n * Dom7 2.1.5\n * Minimalistic JavaScript library for DOM manipulation, with a jQuery-compatible API\n * http://framework7.io/docs/dom.html\n *\n * Copyright 2020, Vladimir Kharlampidi\n * The iDangero.us\n * http://www.idangero.us/\n *\n * Licensed under MIT\n *\n * Released on: May 15, 2020\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 = global || self, global.Dom7 = factory());\n}(this, function () { 'use strict';\n\n    /**\n     * SSR Window 2.0.0\n     * Better handling for window object in SSR environment\n     * https://github.com/nolimits4web/ssr-window\n     *\n     * Copyright 2020, Vladimir Kharlampidi\n     *\n     * Licensed under MIT\n     *\n     * Released on: May 12, 2020\n     */\n    /* eslint-disable no-param-reassign */\n    function isObject(obj) {\n        return (obj !== null &&\n            typeof obj === 'object' &&\n            'constructor' in obj &&\n            obj.constructor === Object);\n    }\n    function extend(target, src) {\n        if (target === void 0) { target = {}; }\n        if (src === void 0) { src = {}; }\n        Object.keys(src).forEach(function (key) {\n            if (typeof target[key] === 'undefined')\n                { target[key] = src[key]; }\n            else if (isObject(src[key]) &&\n                isObject(target[key]) &&\n                Object.keys(src[key]).length > 0) {\n                extend(target[key], src[key]);\n            }\n        });\n    }\n\n    var doc = typeof document !== 'undefined' ? document : {};\n    var ssrDocument = {\n        body: {},\n        addEventListener: function () { },\n        removeEventListener: function () { },\n        activeElement: {\n            blur: function () { },\n            nodeName: '',\n        },\n        querySelector: function () {\n            return null;\n        },\n        querySelectorAll: function () {\n            return [];\n        },\n        getElementById: function () {\n            return null;\n        },\n        createEvent: function () {\n            return {\n                initEvent: function () { },\n            };\n        },\n        createElement: function () {\n            return {\n                children: [],\n                childNodes: [],\n                style: {},\n                setAttribute: function () { },\n                getElementsByTagName: function () {\n                    return [];\n                },\n            };\n        },\n        createElementNS: function () {\n            return {};\n        },\n        importNode: function () {\n            return null;\n        },\n        location: {\n            hash: '',\n            host: '',\n            hostname: '',\n            href: '',\n            origin: '',\n            pathname: '',\n            protocol: '',\n            search: '',\n        },\n    };\n    extend(doc, ssrDocument);\n\n    var win = typeof window !== 'undefined' ? window : {};\n    var ssrWindow = {\n        document: ssrDocument,\n        navigator: {\n            userAgent: '',\n        },\n        location: {\n            hash: '',\n            host: '',\n            hostname: '',\n            href: '',\n            origin: '',\n            pathname: '',\n            protocol: '',\n            search: '',\n        },\n        history: {\n            replaceState: function () { },\n            pushState: function () { },\n            go: function () { },\n            back: function () { },\n        },\n        CustomEvent: function CustomEvent() {\n            return this;\n        },\n        addEventListener: function () { },\n        removeEventListener: function () { },\n        getComputedStyle: function () {\n            return {\n                getPropertyValue: function () {\n                    return '';\n                },\n            };\n        },\n        Image: function () { },\n        Date: function () { },\n        screen: {},\n        setTimeout: function () { },\n        clearTimeout: function () { },\n        matchMedia: function () {\n            return {};\n        },\n    };\n    extend(win, ssrWindow);\n\n    var Dom7 = function Dom7(arr) {\n      var self = this;\n      // Create array-like object\n      for (var i = 0; i < arr.length; i += 1) {\n        self[i] = arr[i];\n      }\n      self.length = arr.length;\n      // Return collection with methods\n      return this;\n    };\n\n    function $(selector, context) {\n      var arr = [];\n      var i = 0;\n      if (selector && !context) {\n        if (selector instanceof Dom7) {\n          return selector;\n        }\n      }\n      if (selector) {\n          // String\n        if (typeof selector === 'string') {\n          var els;\n          var tempParent;\n          var html = selector.trim();\n          if (html.indexOf('<') >= 0 && html.indexOf('>') >= 0) {\n            var toCreate = 'div';\n            if (html.indexOf('<li') === 0) { toCreate = 'ul'; }\n            if (html.indexOf('<tr') === 0) { toCreate = 'tbody'; }\n            if (html.indexOf('<td') === 0 || html.indexOf('<th') === 0) { toCreate = 'tr'; }\n            if (html.indexOf('<tbody') === 0) { toCreate = 'table'; }\n            if (html.indexOf('<option') === 0) { toCreate = 'select'; }\n            tempParent = doc.createElement(toCreate);\n            tempParent.innerHTML = html;\n            for (i = 0; i < tempParent.childNodes.length; i += 1) {\n              arr.push(tempParent.childNodes[i]);\n            }\n          } else {\n            if (!context && selector[0] === '#' && !selector.match(/[ .<>:~]/)) {\n              // Pure ID selector\n              els = [doc.getElementById(selector.trim().split('#')[1])];\n            } else {\n              // Other selectors\n              els = (context || doc).querySelectorAll(selector.trim());\n            }\n            for (i = 0; i < els.length; i += 1) {\n              if (els[i]) { arr.push(els[i]); }\n            }\n          }\n        } else if (selector.nodeType || selector === win || selector === doc) {\n          // Node/element\n          arr.push(selector);\n        } else if (selector.length > 0 && selector[0].nodeType) {\n          // Array of elements or instance of Dom\n          for (i = 0; i < selector.length; i += 1) {\n            arr.push(selector[i]);\n          }\n        }\n      }\n      return new Dom7(arr);\n    }\n\n    $.fn = Dom7.prototype;\n    $.Class = Dom7;\n    $.Dom7 = Dom7;\n\n    function unique(arr) {\n      var uniqueArray = [];\n      for (var i = 0; i < arr.length; i += 1) {\n        if (uniqueArray.indexOf(arr[i]) === -1) { uniqueArray.push(arr[i]); }\n      }\n      return uniqueArray;\n    }\n    function toCamelCase(string) {\n      return string.toLowerCase().replace(/-(.)/g, function (match, group1) { return group1.toUpperCase(); });\n    }\n\n    function requestAnimationFrame(callback) {\n      if (win.requestAnimationFrame) { return win.requestAnimationFrame(callback); }\n      else if (win.webkitRequestAnimationFrame) { return win.webkitRequestAnimationFrame(callback); }\n      return win.setTimeout(callback, 1000 / 60);\n    }\n    function cancelAnimationFrame(id) {\n      if (win.cancelAnimationFrame) { return win.cancelAnimationFrame(id); }\n      else if (win.webkitCancelAnimationFrame) { return win.webkitCancelAnimationFrame(id); }\n      return win.clearTimeout(id);\n    }\n\n    // Classes and attributes\n    function addClass(className) {\n      if (typeof className === 'undefined') {\n        return this;\n      }\n      var classes = className.split(' ');\n      for (var i = 0; i < classes.length; i += 1) {\n        for (var j = 0; j < this.length; j += 1) {\n          if (typeof this[j] !== 'undefined' && typeof this[j].classList !== 'undefined') { this[j].classList.add(classes[i]); }\n        }\n      }\n      return this;\n    }\n    function removeClass(className) {\n      var classes = className.split(' ');\n      for (var i = 0; i < classes.length; i += 1) {\n        for (var j = 0; j < this.length; j += 1) {\n          if (typeof this[j] !== 'undefined' && typeof this[j].classList !== 'undefined') { this[j].classList.remove(classes[i]); }\n        }\n      }\n      return this;\n    }\n    function hasClass(className) {\n      if (!this[0]) { return false; }\n      return this[0].classList.contains(className);\n    }\n    function toggleClass(className) {\n      var classes = className.split(' ');\n      for (var i = 0; i < classes.length; i += 1) {\n        for (var j = 0; j < this.length; j += 1) {\n          if (typeof this[j] !== 'undefined' && typeof this[j].classList !== 'undefined') { this[j].classList.toggle(classes[i]); }\n        }\n      }\n      return this;\n    }\n    function attr(attrs, value) {\n      var arguments$1 = arguments;\n\n      if (arguments.length === 1 && typeof attrs === 'string') {\n        // Get attr\n        if (this[0]) { return this[0].getAttribute(attrs); }\n        return undefined;\n      }\n\n      // Set attrs\n      for (var i = 0; i < this.length; i += 1) {\n        if (arguments$1.length === 2) {\n          // String\n          this[i].setAttribute(attrs, value);\n        } else {\n          // Object\n          // eslint-disable-next-line\n          for (var attrName in attrs) {\n            this[i][attrName] = attrs[attrName];\n            this[i].setAttribute(attrName, attrs[attrName]);\n          }\n        }\n      }\n      return this;\n    }\n    // eslint-disable-next-line\n    function removeAttr(attr) {\n      for (var i = 0; i < this.length; i += 1) {\n        this[i].removeAttribute(attr);\n      }\n      return this;\n    }\n    // eslint-disable-next-line\n    function prop(props, value) {\n      var arguments$1 = arguments;\n\n      if (arguments.length === 1 && typeof props === 'string') {\n        // Get prop\n        if (this[0]) { return this[0][props]; }\n      } else {\n        // Set props\n        for (var i = 0; i < this.length; i += 1) {\n          if (arguments$1.length === 2) {\n            // String\n            this[i][props] = value;\n          } else {\n            // Object\n            // eslint-disable-next-line\n            for (var propName in props) {\n              this[i][propName] = props[propName];\n            }\n          }\n        }\n        return this;\n      }\n    }\n    function data(key, value) {\n      var el;\n      if (typeof value === 'undefined') {\n        el = this[0];\n        // Get value\n        if (el) {\n          if (el.dom7ElementDataStorage && (key in el.dom7ElementDataStorage)) {\n            return el.dom7ElementDataStorage[key];\n          }\n\n          var dataKey = el.getAttribute((\"data-\" + key));\n          if (dataKey) {\n            return dataKey;\n          }\n          return undefined;\n        }\n        return undefined;\n      }\n\n      // Set value\n      for (var i = 0; i < this.length; i += 1) {\n        el = this[i];\n        if (!el.dom7ElementDataStorage) { el.dom7ElementDataStorage = {}; }\n        el.dom7ElementDataStorage[key] = value;\n      }\n      return this;\n    }\n    function removeData(key) {\n      for (var i = 0; i < this.length; i += 1) {\n        var el = this[i];\n        if (el.dom7ElementDataStorage && el.dom7ElementDataStorage[key]) {\n          el.dom7ElementDataStorage[key] = null;\n          delete el.dom7ElementDataStorage[key];\n        }\n      }\n    }\n    function dataset() {\n      var el = this[0];\n      if (!el) { return undefined; }\n      var dataset = {}; // eslint-disable-line\n      if (el.dataset) {\n        // eslint-disable-next-line\n        for (var dataKey in el.dataset) {\n          dataset[dataKey] = el.dataset[dataKey];\n        }\n      } else {\n        for (var i = 0; i < el.attributes.length; i += 1) {\n          // eslint-disable-next-line\n          var attr = el.attributes[i];\n          if (attr.name.indexOf('data-') >= 0) {\n            dataset[toCamelCase(attr.name.split('data-')[1])] = attr.value;\n          }\n        }\n      }\n      // eslint-disable-next-line\n      for (var key in dataset) {\n        if (dataset[key] === 'false') { dataset[key] = false; }\n        else if (dataset[key] === 'true') { dataset[key] = true; }\n        else if (parseFloat(dataset[key]) === dataset[key] * 1) { dataset[key] *= 1; }\n      }\n      return dataset;\n    }\n    function val(value) {\n      var dom = this;\n      if (typeof value === 'undefined') {\n        if (dom[0]) {\n          if (dom[0].multiple && dom[0].nodeName.toLowerCase() === 'select') {\n            var values = [];\n            for (var i = 0; i < dom[0].selectedOptions.length; i += 1) {\n              values.push(dom[0].selectedOptions[i].value);\n            }\n            return values;\n          }\n          return dom[0].value;\n        }\n        return undefined;\n      }\n\n      for (var i$1 = 0; i$1 < dom.length; i$1 += 1) {\n        var el = dom[i$1];\n        if (Array.isArray(value) && el.multiple && el.nodeName.toLowerCase() === 'select') {\n          for (var j = 0; j < el.options.length; j += 1) {\n            el.options[j].selected = value.indexOf(el.options[j].value) >= 0;\n          }\n        } else {\n          el.value = value;\n        }\n      }\n      return dom;\n    }\n    // Transforms\n    // eslint-disable-next-line\n    function transform(transform) {\n      for (var i = 0; i < this.length; i += 1) {\n        var elStyle = this[i].style;\n        elStyle.webkitTransform = transform;\n        elStyle.transform = transform;\n      }\n      return this;\n    }\n    function transition(duration) {\n      if (typeof duration !== 'string') {\n        duration = duration + \"ms\"; // eslint-disable-line\n      }\n      for (var i = 0; i < this.length; i += 1) {\n        var elStyle = this[i].style;\n        elStyle.webkitTransitionDuration = duration;\n        elStyle.transitionDuration = duration;\n      }\n      return this;\n    }\n    // Events\n    function on() {\n      var assign;\n\n      var args = [], len = arguments.length;\n      while ( len-- ) args[ len ] = arguments[ len ];\n      var eventType = args[0];\n      var targetSelector = args[1];\n      var listener = args[2];\n      var capture = args[3];\n      if (typeof args[1] === 'function') {\n        (assign = args, eventType = assign[0], listener = assign[1], capture = assign[2]);\n        targetSelector = undefined;\n      }\n      if (!capture) { capture = false; }\n\n      function handleLiveEvent(e) {\n        var target = e.target;\n        if (!target) { return; }\n        var eventData = e.target.dom7EventData || [];\n        if (eventData.indexOf(e) < 0) {\n          eventData.unshift(e);\n        }\n        if ($(target).is(targetSelector)) { listener.apply(target, eventData); }\n        else {\n          var parents = $(target).parents(); // eslint-disable-line\n          for (var k = 0; k < parents.length; k += 1) {\n            if ($(parents[k]).is(targetSelector)) { listener.apply(parents[k], eventData); }\n          }\n        }\n      }\n      function handleEvent(e) {\n        var eventData = e && e.target ? e.target.dom7EventData || [] : [];\n        if (eventData.indexOf(e) < 0) {\n          eventData.unshift(e);\n        }\n        listener.apply(this, eventData);\n      }\n      var events = eventType.split(' ');\n      var j;\n      for (var i = 0; i < this.length; i += 1) {\n        var el = this[i];\n        if (!targetSelector) {\n          for (j = 0; j < events.length; j += 1) {\n            var event = events[j];\n            if (!el.dom7Listeners) { el.dom7Listeners = {}; }\n            if (!el.dom7Listeners[event]) { el.dom7Listeners[event] = []; }\n            el.dom7Listeners[event].push({\n              listener: listener,\n              proxyListener: handleEvent,\n            });\n            el.addEventListener(event, handleEvent, capture);\n          }\n        } else {\n          // Live events\n          for (j = 0; j < events.length; j += 1) {\n            var event$1 = events[j];\n            if (!el.dom7LiveListeners) { el.dom7LiveListeners = {}; }\n            if (!el.dom7LiveListeners[event$1]) { el.dom7LiveListeners[event$1] = []; }\n            el.dom7LiveListeners[event$1].push({\n              listener: listener,\n              proxyListener: handleLiveEvent,\n            });\n            el.addEventListener(event$1, handleLiveEvent, capture);\n          }\n        }\n      }\n      return this;\n    }\n    function off() {\n      var assign;\n\n      var args = [], len = arguments.length;\n      while ( len-- ) args[ len ] = arguments[ len ];\n      var eventType = args[0];\n      var targetSelector = args[1];\n      var listener = args[2];\n      var capture = args[3];\n      if (typeof args[1] === 'function') {\n        (assign = args, eventType = assign[0], listener = assign[1], capture = assign[2]);\n        targetSelector = undefined;\n      }\n      if (!capture) { capture = false; }\n\n      var events = eventType.split(' ');\n      for (var i = 0; i < events.length; i += 1) {\n        var event = events[i];\n        for (var j = 0; j < this.length; j += 1) {\n          var el = this[j];\n          var handlers = (void 0);\n          if (!targetSelector && el.dom7Listeners) {\n            handlers = el.dom7Listeners[event];\n          } else if (targetSelector && el.dom7LiveListeners) {\n            handlers = el.dom7LiveListeners[event];\n          }\n          if (handlers && handlers.length) {\n            for (var k = handlers.length - 1; k >= 0; k -= 1) {\n              var handler = handlers[k];\n              if (listener && handler.listener === listener) {\n                el.removeEventListener(event, handler.proxyListener, capture);\n                handlers.splice(k, 1);\n              } else if (listener && handler.listener && handler.listener.dom7proxy && handler.listener.dom7proxy === listener) {\n                el.removeEventListener(event, handler.proxyListener, capture);\n                handlers.splice(k, 1);\n              } else if (!listener) {\n                el.removeEventListener(event, handler.proxyListener, capture);\n                handlers.splice(k, 1);\n              }\n            }\n          }\n        }\n      }\n      return this;\n    }\n    function once() {\n      var assign;\n\n      var args = [], len = arguments.length;\n      while ( len-- ) args[ len ] = arguments[ len ];\n      var dom = this;\n      var eventName = args[0];\n      var targetSelector = args[1];\n      var listener = args[2];\n      var capture = args[3];\n      if (typeof args[1] === 'function') {\n        (assign = args, eventName = assign[0], listener = assign[1], capture = assign[2]);\n        targetSelector = undefined;\n      }\n      function onceHandler() {\n        var eventArgs = [], len = arguments.length;\n        while ( len-- ) eventArgs[ len ] = arguments[ len ];\n\n        listener.apply(this, eventArgs);\n        dom.off(eventName, targetSelector, onceHandler, capture);\n        if (onceHandler.dom7proxy) {\n          delete onceHandler.dom7proxy;\n        }\n      }\n      onceHandler.dom7proxy = listener;\n      return dom.on(eventName, targetSelector, onceHandler, capture);\n    }\n    function trigger() {\n      var args = [], len = arguments.length;\n      while ( len-- ) args[ len ] = arguments[ len ];\n\n      var events = args[0].split(' ');\n      var eventData = args[1];\n      for (var i = 0; i < events.length; i += 1) {\n        var event = events[i];\n        for (var j = 0; j < this.length; j += 1) {\n          var el = this[j];\n          var evt = (void 0);\n          try {\n            evt = new win.CustomEvent(event, {\n              detail: eventData,\n              bubbles: true,\n              cancelable: true,\n            });\n          } catch (e) {\n            evt = doc.createEvent('Event');\n            evt.initEvent(event, true, true);\n            evt.detail = eventData;\n          }\n          // eslint-disable-next-line\n          el.dom7EventData = args.filter(function (data, dataIndex) { return dataIndex > 0; });\n          el.dispatchEvent(evt);\n          el.dom7EventData = [];\n          delete el.dom7EventData;\n        }\n      }\n      return this;\n    }\n    function transitionEnd(callback) {\n      var events = ['webkitTransitionEnd', 'transitionend'];\n      var dom = this;\n      var i;\n      function fireCallBack(e) {\n        /* jshint validthis:true */\n        if (e.target !== this) { return; }\n        callback.call(this, e);\n        for (i = 0; i < events.length; i += 1) {\n          dom.off(events[i], fireCallBack);\n        }\n      }\n      if (callback) {\n        for (i = 0; i < events.length; i += 1) {\n          dom.on(events[i], fireCallBack);\n        }\n      }\n      return this;\n    }\n    function animationEnd(callback) {\n      var events = ['webkitAnimationEnd', 'animationend'];\n      var dom = this;\n      var i;\n      function fireCallBack(e) {\n        if (e.target !== this) { return; }\n        callback.call(this, e);\n        for (i = 0; i < events.length; i += 1) {\n          dom.off(events[i], fireCallBack);\n        }\n      }\n      if (callback) {\n        for (i = 0; i < events.length; i += 1) {\n          dom.on(events[i], fireCallBack);\n        }\n      }\n      return this;\n    }\n    // Sizing/Styles\n    function width() {\n      if (this[0] === win) {\n        return win.innerWidth;\n      }\n\n      if (this.length > 0) {\n        return parseFloat(this.css('width'));\n      }\n\n      return null;\n    }\n    function outerWidth(includeMargins) {\n      if (this.length > 0) {\n        if (includeMargins) {\n          // eslint-disable-next-line\n          var styles = this.styles();\n          return this[0].offsetWidth + parseFloat(styles.getPropertyValue('margin-right')) + parseFloat(styles.getPropertyValue('margin-left'));\n        }\n        return this[0].offsetWidth;\n      }\n      return null;\n    }\n    function height() {\n      if (this[0] === win) {\n        return win.innerHeight;\n      }\n\n      if (this.length > 0) {\n        return parseFloat(this.css('height'));\n      }\n\n      return null;\n    }\n    function outerHeight(includeMargins) {\n      if (this.length > 0) {\n        if (includeMargins) {\n          // eslint-disable-next-line\n          var styles = this.styles();\n          return this[0].offsetHeight + parseFloat(styles.getPropertyValue('margin-top')) + parseFloat(styles.getPropertyValue('margin-bottom'));\n        }\n        return this[0].offsetHeight;\n      }\n      return null;\n    }\n    function offset() {\n      if (this.length > 0) {\n        var el = this[0];\n        var box = el.getBoundingClientRect();\n        var body = doc.body;\n        var clientTop = el.clientTop || body.clientTop || 0;\n        var clientLeft = el.clientLeft || body.clientLeft || 0;\n        var scrollTop = el === win ? win.scrollY : el.scrollTop;\n        var scrollLeft = el === win ? win.scrollX : el.scrollLeft;\n        return {\n          top: (box.top + scrollTop) - clientTop,\n          left: (box.left + scrollLeft) - clientLeft,\n        };\n      }\n\n      return null;\n    }\n    function hide() {\n      for (var i = 0; i < this.length; i += 1) {\n        this[i].style.display = 'none';\n      }\n      return this;\n    }\n    function show() {\n      for (var i = 0; i < this.length; i += 1) {\n        var el = this[i];\n        if (el.style.display === 'none') {\n          el.style.display = '';\n        }\n        if (win.getComputedStyle(el, null).getPropertyValue('display') === 'none') {\n          // Still not visible\n          el.style.display = 'block';\n        }\n      }\n      return this;\n    }\n    function styles() {\n      if (this[0]) { return win.getComputedStyle(this[0], null); }\n      return {};\n    }\n    function css(props, value) {\n      var i;\n      if (arguments.length === 1) {\n        if (typeof props === 'string') {\n          if (this[0]) { return win.getComputedStyle(this[0], null).getPropertyValue(props); }\n        } else {\n          for (i = 0; i < this.length; i += 1) {\n            // eslint-disable-next-line\n            for (var prop in props) {\n              this[i].style[prop] = props[prop];\n            }\n          }\n          return this;\n        }\n      }\n      if (arguments.length === 2 && typeof props === 'string') {\n        for (i = 0; i < this.length; i += 1) {\n          this[i].style[props] = value;\n        }\n        return this;\n      }\n      return this;\n    }\n\n    // Dom manipulation\n    function toArray() {\n      var arr = [];\n      for (var i = 0; i < this.length; i += 1) {\n        arr.push(this[i]);\n      }\n      return arr;\n    }\n    // Iterate over the collection passing elements to `callback`\n    function each(callback) {\n      // Don't bother continuing without a callback\n      if (!callback) { return this; }\n      // Iterate over the current collection\n      for (var i = 0; i < this.length; i += 1) {\n        // If the callback returns false\n        if (callback.call(this[i], i, this[i]) === false) {\n          // End the loop early\n          return this;\n        }\n      }\n      // Return `this` to allow chained DOM operations\n      return this;\n    }\n    function forEach(callback) {\n      // Don't bother continuing without a callback\n      if (!callback) { return this; }\n      // Iterate over the current collection\n      for (var i = 0; i < this.length; i += 1) {\n        // If the callback returns false\n        if (callback.call(this[i], this[i], i) === false) {\n          // End the loop early\n          return this;\n        }\n      }\n      // Return `this` to allow chained DOM operations\n      return this;\n    }\n    function filter(callback) {\n      var matchedItems = [];\n      var dom = this;\n      for (var i = 0; i < dom.length; i += 1) {\n        if (callback.call(dom[i], i, dom[i])) { matchedItems.push(dom[i]); }\n      }\n      return new Dom7(matchedItems);\n    }\n    function map(callback) {\n      var modifiedItems = [];\n      var dom = this;\n      for (var i = 0; i < dom.length; i += 1) {\n        modifiedItems.push(callback.call(dom[i], i, dom[i]));\n      }\n      return new Dom7(modifiedItems);\n    }\n    // eslint-disable-next-line\n    function html(html) {\n      if (typeof html === 'undefined') {\n        return this[0] ? this[0].innerHTML : undefined;\n      }\n\n      for (var i = 0; i < this.length; i += 1) {\n        this[i].innerHTML = html;\n      }\n      return this;\n    }\n    // eslint-disable-next-line\n    function text(text) {\n      if (typeof text === 'undefined') {\n        if (this[0]) {\n          return this[0].textContent.trim();\n        }\n        return null;\n      }\n\n      for (var i = 0; i < this.length; i += 1) {\n        this[i].textContent = text;\n      }\n      return this;\n    }\n    function is(selector) {\n      var el = this[0];\n      var compareWith;\n      var i;\n      if (!el || typeof selector === 'undefined') { return false; }\n      if (typeof selector === 'string') {\n        if (el.matches) { return el.matches(selector); }\n        else if (el.webkitMatchesSelector) { return el.webkitMatchesSelector(selector); }\n        else if (el.msMatchesSelector) { return el.msMatchesSelector(selector); }\n\n        compareWith = $(selector);\n        for (i = 0; i < compareWith.length; i += 1) {\n          if (compareWith[i] === el) { return true; }\n        }\n        return false;\n      } else if (selector === doc) { return el === doc; }\n      else if (selector === win) { return el === win; }\n\n      if (selector.nodeType || selector instanceof Dom7) {\n        compareWith = selector.nodeType ? [selector] : selector;\n        for (i = 0; i < compareWith.length; i += 1) {\n          if (compareWith[i] === el) { return true; }\n        }\n        return false;\n      }\n      return false;\n    }\n    function indexOf(el) {\n      for (var i = 0; i < this.length; i += 1) {\n        if (this[i] === el) { return i; }\n      }\n      return -1;\n    }\n    function index() {\n      var child = this[0];\n      var i;\n      if (child) {\n        i = 0;\n        // eslint-disable-next-line\n        while ((child = child.previousSibling) !== null) {\n          if (child.nodeType === 1) { i += 1; }\n        }\n        return i;\n      }\n      return undefined;\n    }\n    // eslint-disable-next-line\n    function eq(index) {\n      if (typeof index === 'undefined') { return this; }\n      var length = this.length;\n      var returnIndex;\n      if (index > length - 1) {\n        return new Dom7([]);\n      }\n      if (index < 0) {\n        returnIndex = length + index;\n        if (returnIndex < 0) { return new Dom7([]); }\n        return new Dom7([this[returnIndex]]);\n      }\n      return new Dom7([this[index]]);\n    }\n    function append() {\n      var args = [], len = arguments.length;\n      while ( len-- ) args[ len ] = arguments[ len ];\n\n      var newChild;\n\n      for (var k = 0; k < args.length; k += 1) {\n        newChild = args[k];\n        for (var i = 0; i < this.length; i += 1) {\n          if (typeof newChild === 'string') {\n            var tempDiv = doc.createElement('div');\n            tempDiv.innerHTML = newChild;\n            while (tempDiv.firstChild) {\n              this[i].appendChild(tempDiv.firstChild);\n            }\n          } else if (newChild instanceof Dom7) {\n            for (var j = 0; j < newChild.length; j += 1) {\n              this[i].appendChild(newChild[j]);\n            }\n          } else {\n            this[i].appendChild(newChild);\n          }\n        }\n      }\n\n      return this;\n    }\n    // eslint-disable-next-line\n    function appendTo(parent) {\n      $(parent).append(this);\n      return this;\n    }\n    function prepend(newChild) {\n      var i;\n      var j;\n      for (i = 0; i < this.length; i += 1) {\n        if (typeof newChild === 'string') {\n          var tempDiv = doc.createElement('div');\n          tempDiv.innerHTML = newChild;\n          for (j = tempDiv.childNodes.length - 1; j >= 0; j -= 1) {\n            this[i].insertBefore(tempDiv.childNodes[j], this[i].childNodes[0]);\n          }\n        } else if (newChild instanceof Dom7) {\n          for (j = 0; j < newChild.length; j += 1) {\n            this[i].insertBefore(newChild[j], this[i].childNodes[0]);\n          }\n        } else {\n          this[i].insertBefore(newChild, this[i].childNodes[0]);\n        }\n      }\n      return this;\n    }\n    // eslint-disable-next-line\n    function prependTo(parent) {\n      $(parent).prepend(this);\n      return this;\n    }\n    function insertBefore(selector) {\n      var before = $(selector);\n      for (var i = 0; i < this.length; i += 1) {\n        if (before.length === 1) {\n          before[0].parentNode.insertBefore(this[i], before[0]);\n        } else if (before.length > 1) {\n          for (var j = 0; j < before.length; j += 1) {\n            before[j].parentNode.insertBefore(this[i].cloneNode(true), before[j]);\n          }\n        }\n      }\n    }\n    function insertAfter(selector) {\n      var after = $(selector);\n      for (var i = 0; i < this.length; i += 1) {\n        if (after.length === 1) {\n          after[0].parentNode.insertBefore(this[i], after[0].nextSibling);\n        } else if (after.length > 1) {\n          for (var j = 0; j < after.length; j += 1) {\n            after[j].parentNode.insertBefore(this[i].cloneNode(true), after[j].nextSibling);\n          }\n        }\n      }\n    }\n    function next(selector) {\n      if (this.length > 0) {\n        if (selector) {\n          if (this[0].nextElementSibling && $(this[0].nextElementSibling).is(selector)) {\n            return new Dom7([this[0].nextElementSibling]);\n          }\n          return new Dom7([]);\n        }\n\n        if (this[0].nextElementSibling) { return new Dom7([this[0].nextElementSibling]); }\n        return new Dom7([]);\n      }\n      return new Dom7([]);\n    }\n    function nextAll(selector) {\n      var nextEls = [];\n      var el = this[0];\n      if (!el) { return new Dom7([]); }\n      while (el.nextElementSibling) {\n        var next = el.nextElementSibling; // eslint-disable-line\n        if (selector) {\n          if ($(next).is(selector)) { nextEls.push(next); }\n        } else { nextEls.push(next); }\n        el = next;\n      }\n      return new Dom7(nextEls);\n    }\n    function prev(selector) {\n      if (this.length > 0) {\n        var el = this[0];\n        if (selector) {\n          if (el.previousElementSibling && $(el.previousElementSibling).is(selector)) {\n            return new Dom7([el.previousElementSibling]);\n          }\n          return new Dom7([]);\n        }\n\n        if (el.previousElementSibling) { return new Dom7([el.previousElementSibling]); }\n        return new Dom7([]);\n      }\n      return new Dom7([]);\n    }\n    function prevAll(selector) {\n      var prevEls = [];\n      var el = this[0];\n      if (!el) { return new Dom7([]); }\n      while (el.previousElementSibling) {\n        var prev = el.previousElementSibling; // eslint-disable-line\n        if (selector) {\n          if ($(prev).is(selector)) { prevEls.push(prev); }\n        } else { prevEls.push(prev); }\n        el = prev;\n      }\n      return new Dom7(prevEls);\n    }\n    function siblings(selector) {\n      return this.nextAll(selector).add(this.prevAll(selector));\n    }\n    function parent(selector) {\n      var parents = []; // eslint-disable-line\n      for (var i = 0; i < this.length; i += 1) {\n        if (this[i].parentNode !== null) {\n          if (selector) {\n            if ($(this[i].parentNode).is(selector)) { parents.push(this[i].parentNode); }\n          } else {\n            parents.push(this[i].parentNode);\n          }\n        }\n      }\n      return $(unique(parents));\n    }\n    function parents(selector) {\n      var parents = []; // eslint-disable-line\n      for (var i = 0; i < this.length; i += 1) {\n        var parent = this[i].parentNode; // eslint-disable-line\n        while (parent) {\n          if (selector) {\n            if ($(parent).is(selector)) { parents.push(parent); }\n          } else {\n            parents.push(parent);\n          }\n          parent = parent.parentNode;\n        }\n      }\n      return $(unique(parents));\n    }\n    function closest(selector) {\n      var closest = this; // eslint-disable-line\n      if (typeof selector === 'undefined') {\n        return new Dom7([]);\n      }\n      if (!closest.is(selector)) {\n        closest = closest.parents(selector).eq(0);\n      }\n      return closest;\n    }\n    function find(selector) {\n      var foundElements = [];\n      for (var i = 0; i < this.length; i += 1) {\n        var found = this[i].querySelectorAll(selector);\n        for (var j = 0; j < found.length; j += 1) {\n          foundElements.push(found[j]);\n        }\n      }\n      return new Dom7(foundElements);\n    }\n    function children(selector) {\n      var children = []; // eslint-disable-line\n      for (var i = 0; i < this.length; i += 1) {\n        var childNodes = this[i].childNodes;\n\n        for (var j = 0; j < childNodes.length; j += 1) {\n          if (!selector) {\n            if (childNodes[j].nodeType === 1) { children.push(childNodes[j]); }\n          } else if (childNodes[j].nodeType === 1 && $(childNodes[j]).is(selector)) {\n            children.push(childNodes[j]);\n          }\n        }\n      }\n      return new Dom7(unique(children));\n    }\n    function remove() {\n      for (var i = 0; i < this.length; i += 1) {\n        if (this[i].parentNode) { this[i].parentNode.removeChild(this[i]); }\n      }\n      return this;\n    }\n    function detach() {\n      return this.remove();\n    }\n    function add() {\n      var args = [], len = arguments.length;\n      while ( len-- ) args[ len ] = arguments[ len ];\n\n      var dom = this;\n      var i;\n      var j;\n      for (i = 0; i < args.length; i += 1) {\n        var toAdd = $(args[i]);\n        for (j = 0; j < toAdd.length; j += 1) {\n          dom[dom.length] = toAdd[j];\n          dom.length += 1;\n        }\n      }\n      return dom;\n    }\n    function empty() {\n      for (var i = 0; i < this.length; i += 1) {\n        var el = this[i];\n        if (el.nodeType === 1) {\n          for (var j = 0; j < el.childNodes.length; j += 1) {\n            if (el.childNodes[j].parentNode) {\n              el.childNodes[j].parentNode.removeChild(el.childNodes[j]);\n            }\n          }\n          el.textContent = '';\n        }\n      }\n      return this;\n    }\n\n    var Methods = /*#__PURE__*/Object.freeze({\n        addClass: addClass,\n        removeClass: removeClass,\n        hasClass: hasClass,\n        toggleClass: toggleClass,\n        attr: attr,\n        removeAttr: removeAttr,\n        prop: prop,\n        data: data,\n        removeData: removeData,\n        dataset: dataset,\n        val: val,\n        transform: transform,\n        transition: transition,\n        on: on,\n        off: off,\n        once: once,\n        trigger: trigger,\n        transitionEnd: transitionEnd,\n        animationEnd: animationEnd,\n        width: width,\n        outerWidth: outerWidth,\n        height: height,\n        outerHeight: outerHeight,\n        offset: offset,\n        hide: hide,\n        show: show,\n        styles: styles,\n        css: css,\n        toArray: toArray,\n        each: each,\n        forEach: forEach,\n        filter: filter,\n        map: map,\n        html: html,\n        text: text,\n        is: is,\n        indexOf: indexOf,\n        index: index,\n        eq: eq,\n        append: append,\n        appendTo: appendTo,\n        prepend: prepend,\n        prependTo: prependTo,\n        insertBefore: insertBefore,\n        insertAfter: insertAfter,\n        next: next,\n        nextAll: nextAll,\n        prev: prev,\n        prevAll: prevAll,\n        siblings: siblings,\n        parent: parent,\n        parents: parents,\n        closest: closest,\n        find: find,\n        children: children,\n        remove: remove,\n        detach: detach,\n        add: add,\n        empty: empty\n    });\n\n    function scrollTo() {\n      var assign;\n\n      var args = [], len = arguments.length;\n      while ( len-- ) args[ len ] = arguments[ len ];\n      var left = args[0];\n      var top = args[1];\n      var duration = args[2];\n      var easing = args[3];\n      var callback = args[4];\n      if (args.length === 4 && typeof easing === 'function') {\n        callback = easing;\n        (assign = args, left = assign[0], top = assign[1], duration = assign[2], callback = assign[3], easing = assign[4]);\n      }\n      if (typeof easing === 'undefined') { easing = 'swing'; }\n\n      return this.each(function animate() {\n        var el = this;\n        var currentTop;\n        var currentLeft;\n        var maxTop;\n        var maxLeft;\n        var newTop;\n        var newLeft;\n        var scrollTop; // eslint-disable-line\n        var scrollLeft; // eslint-disable-line\n        var animateTop = top > 0 || top === 0;\n        var animateLeft = left > 0 || left === 0;\n        if (typeof easing === 'undefined') {\n          easing = 'swing';\n        }\n        if (animateTop) {\n          currentTop = el.scrollTop;\n          if (!duration) {\n            el.scrollTop = top;\n          }\n        }\n        if (animateLeft) {\n          currentLeft = el.scrollLeft;\n          if (!duration) {\n            el.scrollLeft = left;\n          }\n        }\n        if (!duration) { return; }\n        if (animateTop) {\n          maxTop = el.scrollHeight - el.offsetHeight;\n          newTop = Math.max(Math.min(top, maxTop), 0);\n        }\n        if (animateLeft) {\n          maxLeft = el.scrollWidth - el.offsetWidth;\n          newLeft = Math.max(Math.min(left, maxLeft), 0);\n        }\n        var startTime = null;\n        if (animateTop && newTop === currentTop) { animateTop = false; }\n        if (animateLeft && newLeft === currentLeft) { animateLeft = false; }\n        function render(time) {\n          if ( time === void 0 ) time = new Date().getTime();\n\n          if (startTime === null) {\n            startTime = time;\n          }\n          var progress = Math.max(Math.min((time - startTime) / duration, 1), 0);\n          var easeProgress = easing === 'linear' ? progress : (0.5 - (Math.cos(progress * Math.PI) / 2));\n          var done;\n          if (animateTop) { scrollTop = currentTop + (easeProgress * (newTop - currentTop)); }\n          if (animateLeft) { scrollLeft = currentLeft + (easeProgress * (newLeft - currentLeft)); }\n          if (animateTop && newTop > currentTop && scrollTop >= newTop) {\n            el.scrollTop = newTop;\n            done = true;\n          }\n          if (animateTop && newTop < currentTop && scrollTop <= newTop) {\n            el.scrollTop = newTop;\n            done = true;\n          }\n          if (animateLeft && newLeft > currentLeft && scrollLeft >= newLeft) {\n            el.scrollLeft = newLeft;\n            done = true;\n          }\n          if (animateLeft && newLeft < currentLeft && scrollLeft <= newLeft) {\n            el.scrollLeft = newLeft;\n            done = true;\n          }\n\n          if (done) {\n            if (callback) { callback(); }\n            return;\n          }\n          if (animateTop) { el.scrollTop = scrollTop; }\n          if (animateLeft) { el.scrollLeft = scrollLeft; }\n          requestAnimationFrame(render);\n        }\n        requestAnimationFrame(render);\n      });\n    }\n    // scrollTop(top, duration, easing, callback) {\n    function scrollTop() {\n      var assign;\n\n      var args = [], len = arguments.length;\n      while ( len-- ) args[ len ] = arguments[ len ];\n      var top = args[0];\n      var duration = args[1];\n      var easing = args[2];\n      var callback = args[3];\n      if (args.length === 3 && typeof easing === 'function') {\n        (assign = args, top = assign[0], duration = assign[1], callback = assign[2], easing = assign[3]);\n      }\n      var dom = this;\n      if (typeof top === 'undefined') {\n        if (dom.length > 0) { return dom[0].scrollTop; }\n        return null;\n      }\n      return dom.scrollTo(undefined, top, duration, easing, callback);\n    }\n    function scrollLeft() {\n      var assign;\n\n      var args = [], len = arguments.length;\n      while ( len-- ) args[ len ] = arguments[ len ];\n      var left = args[0];\n      var duration = args[1];\n      var easing = args[2];\n      var callback = args[3];\n      if (args.length === 3 && typeof easing === 'function') {\n        (assign = args, left = assign[0], duration = assign[1], callback = assign[2], easing = assign[3]);\n      }\n      var dom = this;\n      if (typeof left === 'undefined') {\n        if (dom.length > 0) { return dom[0].scrollLeft; }\n        return null;\n      }\n      return dom.scrollTo(left, undefined, duration, easing, callback);\n    }\n\n    var Scroll = /*#__PURE__*/Object.freeze({\n        scrollTo: scrollTo,\n        scrollTop: scrollTop,\n        scrollLeft: scrollLeft\n    });\n\n    function animate(initialProps, initialParams) {\n      var els = this;\n      var a = {\n        props: Object.assign({}, initialProps),\n        params: Object.assign({\n          duration: 300,\n          easing: 'swing', // or 'linear'\n          /* Callbacks\n          begin(elements)\n          complete(elements)\n          progress(elements, complete, remaining, start, tweenValue)\n          */\n        }, initialParams),\n\n        elements: els,\n        animating: false,\n        que: [],\n\n        easingProgress: function easingProgress(easing, progress) {\n          if (easing === 'swing') {\n            return 0.5 - (Math.cos(progress * Math.PI) / 2);\n          }\n          if (typeof easing === 'function') {\n            return easing(progress);\n          }\n          return progress;\n        },\n        stop: function stop() {\n          if (a.frameId) {\n            cancelAnimationFrame(a.frameId);\n          }\n          a.animating = false;\n          a.elements.each(function (index, el) {\n            var element = el;\n            delete element.dom7AnimateInstance;\n          });\n          a.que = [];\n        },\n        done: function done(complete) {\n          a.animating = false;\n          a.elements.each(function (index, el) {\n            var element = el;\n            delete element.dom7AnimateInstance;\n          });\n          if (complete) { complete(els); }\n          if (a.que.length > 0) {\n            var que = a.que.shift();\n            a.animate(que[0], que[1]);\n          }\n        },\n        animate: function animate(props, params) {\n          if (a.animating) {\n            a.que.push([props, params]);\n            return a;\n          }\n          var elements = [];\n\n          // Define & Cache Initials & Units\n          a.elements.each(function (index, el) {\n            var initialFullValue;\n            var initialValue;\n            var unit;\n            var finalValue;\n            var finalFullValue;\n\n            if (!el.dom7AnimateInstance) { a.elements[index].dom7AnimateInstance = a; }\n\n            elements[index] = {\n              container: el,\n            };\n            Object.keys(props).forEach(function (prop) {\n              initialFullValue = win.getComputedStyle(el, null).getPropertyValue(prop).replace(',', '.');\n              initialValue = parseFloat(initialFullValue);\n              unit = initialFullValue.replace(initialValue, '');\n              finalValue = parseFloat(props[prop]);\n              finalFullValue = props[prop] + unit;\n              elements[index][prop] = {\n                initialFullValue: initialFullValue,\n                initialValue: initialValue,\n                unit: unit,\n                finalValue: finalValue,\n                finalFullValue: finalFullValue,\n                currentValue: initialValue,\n              };\n            });\n          });\n\n          var startTime = null;\n          var time;\n          var elementsDone = 0;\n          var propsDone = 0;\n          var done;\n          var began = false;\n\n          a.animating = true;\n\n          function render() {\n            time = new Date().getTime();\n            var progress;\n            var easeProgress;\n            // let el;\n            if (!began) {\n              began = true;\n              if (params.begin) { params.begin(els); }\n            }\n            if (startTime === null) {\n              startTime = time;\n            }\n            if (params.progress) {\n              // eslint-disable-next-line\n              params.progress(els, Math.max(Math.min((time - startTime) / params.duration, 1), 0), ((startTime + params.duration) - time < 0 ? 0 : (startTime + params.duration) - time), startTime);\n            }\n\n            elements.forEach(function (element) {\n              var el = element;\n              if (done || el.done) { return; }\n              Object.keys(props).forEach(function (prop) {\n                if (done || el.done) { return; }\n                progress = Math.max(Math.min((time - startTime) / params.duration, 1), 0);\n                easeProgress = a.easingProgress(params.easing, progress);\n                var ref = el[prop];\n                var initialValue = ref.initialValue;\n                var finalValue = ref.finalValue;\n                var unit = ref.unit;\n                el[prop].currentValue = initialValue + (easeProgress * (finalValue - initialValue));\n                var currentValue = el[prop].currentValue;\n\n                if (\n                  (finalValue > initialValue && currentValue >= finalValue) ||\n                  (finalValue < initialValue && currentValue <= finalValue)) {\n                  el.container.style[prop] = finalValue + unit;\n                  propsDone += 1;\n                  if (propsDone === Object.keys(props).length) {\n                    el.done = true;\n                    elementsDone += 1;\n                  }\n                  if (elementsDone === elements.length) {\n                    done = true;\n                  }\n                }\n                if (done) {\n                  a.done(params.complete);\n                  return;\n                }\n                el.container.style[prop] = currentValue + unit;\n              });\n            });\n            if (done) { return; }\n            // Then call\n            a.frameId = requestAnimationFrame(render);\n          }\n          a.frameId = requestAnimationFrame(render);\n          return a;\n        },\n      };\n\n      if (a.elements.length === 0) {\n        return els;\n      }\n\n      var animateInstance;\n      for (var i = 0; i < a.elements.length; i += 1) {\n        if (a.elements[i].dom7AnimateInstance) {\n          animateInstance = a.elements[i].dom7AnimateInstance;\n        } else { a.elements[i].dom7AnimateInstance = a; }\n      }\n      if (!animateInstance) {\n        animateInstance = a;\n      }\n\n      if (initialProps === 'stop') {\n        animateInstance.stop();\n      } else {\n        animateInstance.animate(a.props, a.params);\n      }\n\n      return els;\n    }\n\n    function stop() {\n      var els = this;\n      for (var i = 0; i < els.length; i += 1) {\n        if (els[i].dom7AnimateInstance) {\n          els[i].dom7AnimateInstance.stop();\n        }\n      }\n    }\n\n    var Animate = /*#__PURE__*/Object.freeze({\n        animate: animate,\n        stop: stop\n    });\n\n    var noTrigger = ('resize scroll').split(' ');\n    function eventShortcut(name) {\n      var ref;\n\n      var args = [], len = arguments.length - 1;\n      while ( len-- > 0 ) args[ len ] = arguments[ len + 1 ];\n      if (typeof args[0] === 'undefined') {\n        for (var i = 0; i < this.length; i += 1) {\n          if (noTrigger.indexOf(name) < 0) {\n            if (name in this[i]) { this[i][name](); }\n            else {\n              $(this[i]).trigger(name);\n            }\n          }\n        }\n        return this;\n      }\n      return (ref = this).on.apply(ref, [ name ].concat( args ));\n    }\n\n    function click() {\n      var args = [], len = arguments.length;\n      while ( len-- ) args[ len ] = arguments[ len ];\n\n      return eventShortcut.bind(this).apply(void 0, [ 'click' ].concat( args ));\n    }\n    function blur() {\n      var args = [], len = arguments.length;\n      while ( len-- ) args[ len ] = arguments[ len ];\n\n      return eventShortcut.bind(this).apply(void 0, [ 'blur' ].concat( args ));\n    }\n    function focus() {\n      var args = [], len = arguments.length;\n      while ( len-- ) args[ len ] = arguments[ len ];\n\n      return eventShortcut.bind(this).apply(void 0, [ 'focus' ].concat( args ));\n    }\n    function focusin() {\n      var args = [], len = arguments.length;\n      while ( len-- ) args[ len ] = arguments[ len ];\n\n      return eventShortcut.bind(this).apply(void 0, [ 'focusin' ].concat( args ));\n    }\n    function focusout() {\n      var args = [], len = arguments.length;\n      while ( len-- ) args[ len ] = arguments[ len ];\n\n      return eventShortcut.bind(this).apply(void 0, [ 'focusout' ].concat( args ));\n    }\n    function keyup() {\n      var args = [], len = arguments.length;\n      while ( len-- ) args[ len ] = arguments[ len ];\n\n      return eventShortcut.bind(this).apply(void 0, [ 'keyup' ].concat( args ));\n    }\n    function keydown() {\n      var args = [], len = arguments.length;\n      while ( len-- ) args[ len ] = arguments[ len ];\n\n      return eventShortcut.bind(this).apply(void 0, [ 'keydown' ].concat( args ));\n    }\n    function keypress() {\n      var args = [], len = arguments.length;\n      while ( len-- ) args[ len ] = arguments[ len ];\n\n      return eventShortcut.bind(this).apply(void 0, [ 'keypress' ].concat( args ));\n    }\n    function submit() {\n      var args = [], len = arguments.length;\n      while ( len-- ) args[ len ] = arguments[ len ];\n\n      return eventShortcut.bind(this).apply(void 0, [ 'submit' ].concat( args ));\n    }\n    function change() {\n      var args = [], len = arguments.length;\n      while ( len-- ) args[ len ] = arguments[ len ];\n\n      return eventShortcut.bind(this).apply(void 0, [ 'change' ].concat( args ));\n    }\n    function mousedown() {\n      var args = [], len = arguments.length;\n      while ( len-- ) args[ len ] = arguments[ len ];\n\n      return eventShortcut.bind(this).apply(void 0, [ 'mousedown' ].concat( args ));\n    }\n    function mousemove() {\n      var args = [], len = arguments.length;\n      while ( len-- ) args[ len ] = arguments[ len ];\n\n      return eventShortcut.bind(this).apply(void 0, [ 'mousemove' ].concat( args ));\n    }\n    function mouseup() {\n      var args = [], len = arguments.length;\n      while ( len-- ) args[ len ] = arguments[ len ];\n\n      return eventShortcut.bind(this).apply(void 0, [ 'mouseup' ].concat( args ));\n    }\n    function mouseenter() {\n      var args = [], len = arguments.length;\n      while ( len-- ) args[ len ] = arguments[ len ];\n\n      return eventShortcut.bind(this).apply(void 0, [ 'mouseenter' ].concat( args ));\n    }\n    function mouseleave() {\n      var args = [], len = arguments.length;\n      while ( len-- ) args[ len ] = arguments[ len ];\n\n      return eventShortcut.bind(this).apply(void 0, [ 'mouseleave' ].concat( args ));\n    }\n    function mouseout() {\n      var args = [], len = arguments.length;\n      while ( len-- ) args[ len ] = arguments[ len ];\n\n      return eventShortcut.bind(this).apply(void 0, [ 'mouseout' ].concat( args ));\n    }\n    function mouseover() {\n      var args = [], len = arguments.length;\n      while ( len-- ) args[ len ] = arguments[ len ];\n\n      return eventShortcut.bind(this).apply(void 0, [ 'mouseover' ].concat( args ));\n    }\n    function touchstart() {\n      var args = [], len = arguments.length;\n      while ( len-- ) args[ len ] = arguments[ len ];\n\n      return eventShortcut.bind(this).apply(void 0, [ 'touchstart' ].concat( args ));\n    }\n    function touchend() {\n      var args = [], len = arguments.length;\n      while ( len-- ) args[ len ] = arguments[ len ];\n\n      return eventShortcut.bind(this).apply(void 0, [ 'touchend' ].concat( args ));\n    }\n    function touchmove() {\n      var args = [], len = arguments.length;\n      while ( len-- ) args[ len ] = arguments[ len ];\n\n      return eventShortcut.bind(this).apply(void 0, [ 'touchmove' ].concat( args ));\n    }\n    function resize() {\n      var args = [], len = arguments.length;\n      while ( len-- ) args[ len ] = arguments[ len ];\n\n      return eventShortcut.bind(this).apply(void 0, [ 'resize' ].concat( args ));\n    }\n    function scroll() {\n      var args = [], len = arguments.length;\n      while ( len-- ) args[ len ] = arguments[ len ];\n\n      return eventShortcut.bind(this).apply(void 0, [ 'scroll' ].concat( args ));\n    }\n\n    var eventShortcuts = /*#__PURE__*/Object.freeze({\n        click: click,\n        blur: blur,\n        focus: focus,\n        focusin: focusin,\n        focusout: focusout,\n        keyup: keyup,\n        keydown: keydown,\n        keypress: keypress,\n        submit: submit,\n        change: change,\n        mousedown: mousedown,\n        mousemove: mousemove,\n        mouseup: mouseup,\n        mouseenter: mouseenter,\n        mouseleave: mouseleave,\n        mouseout: mouseout,\n        mouseover: mouseover,\n        touchstart: touchstart,\n        touchend: touchend,\n        touchmove: touchmove,\n        resize: resize,\n        scroll: scroll\n    });\n\n    [Methods, Scroll, Animate, eventShortcuts].forEach(function (group) {\n      Object.keys(group).forEach(function (methodName) {\n        $.fn[methodName] = group[methodName];\n      });\n    });\n\n    return $;\n\n}));\n"]}