{"version":3,"sources":["webpack:///webpack/bootstrap","webpack:///../node_modules/core-js/modules/es7.symbol.async-iterator.js","webpack:///../node_modules/core-js/modules/es6.symbol.js","webpack:///../node_modules/core-js/modules/es6.object.set-prototype-of.js","webpack:///../node_modules/core-js/modules/_wks.js","webpack:///../node_modules/core-js/modules/_global.js","webpack:///../node_modules/core-js/modules/es6.reflect.get.js","webpack:///../node_modules/core-js/modules/_has.js","webpack:///../node_modules/core-js/modules/_hide.js","webpack:///../node_modules/core-js/modules/_object-dp.js","webpack:///../node_modules/core-js/modules/_is-object.js","webpack:///../node_modules/core-js/modules/_descriptors.js","webpack:///../node_modules/core-js/modules/_to-iobject.js","webpack:///../node_modules/core-js/modules/_an-object.js","webpack:///../node_modules/core-js/modules/_fails.js","webpack:///../node_modules/core-js/modules/_export.js","webpack:///../node_modules/core-js/modules/_uid.js","webpack:///../node_modules/core-js/modules/_redefine.js","webpack:///../node_modules/core-js/modules/_object-keys.js","webpack:///../node_modules/core-js/modules/es6.function.name.js","webpack:///../node_modules/core-js/modules/_shared.js","webpack:///../node_modules/core-js/modules/_core.js","webpack:///../node_modules/core-js/modules/_library.js","webpack:///../node_modules/core-js/modules/_property-desc.js","webpack:///../node_modules/core-js/modules/_object-pie.js","webpack:///../node_modules/core-js/modules/_to-primitive.js","webpack:///../node_modules/core-js/modules/_iterators.js","webpack:///../node_modules/core-js/modules/_cof.js","webpack:///../node_modules/core-js/modules/_shared-key.js","webpack:///../node_modules/core-js/modules/_enum-bug-keys.js","webpack:///../node_modules/core-js/modules/_set-to-string-tag.js","webpack:///../node_modules/core-js/modules/_object-gopd.js","webpack:///../node_modules/core-js/modules/es6.array.iterator.js","webpack:///../node_modules/core-js/modules/_ie8-dom-define.js","webpack:///../node_modules/core-js/modules/_dom-create.js","webpack:///../node_modules/core-js/modules/_defined.js","webpack:///../node_modules/core-js/modules/_ctx.js","webpack:///../node_modules/core-js/modules/_a-function.js","webpack:///../node_modules/core-js/modules/_object-create.js","webpack:///../node_modules/core-js/modules/_object-keys-internal.js","webpack:///../node_modules/core-js/modules/_to-integer.js","webpack:///../node_modules/core-js/modules/_object-gpo.js","webpack:///../node_modules/core-js/modules/_to-object.js","webpack:///./scripts/scenes/splash-screen.js","webpack:///../node_modules/core-js/modules/_wks-define.js","webpack:///../node_modules/core-js/modules/_wks-ext.js","webpack:///../node_modules/core-js/modules/_object-gops.js","webpack:///../node_modules/core-js/modules/_object-gopn.js","webpack:///../node_modules/core-js/modules/es6.array.sort.js","webpack:///../node_modules/core-js/modules/web.dom.iterable.js","webpack:///../node_modules/core-js/modules/_add-to-unscopables.js","webpack:///../node_modules/core-js/modules/_iter-step.js","webpack:///../node_modules/core-js/modules/_iobject.js","webpack:///../node_modules/core-js/modules/_iter-define.js","webpack:///../node_modules/core-js/modules/_function-to-string.js","webpack:///../node_modules/core-js/modules/_iter-create.js","webpack:///../node_modules/core-js/modules/_object-dps.js","webpack:///../node_modules/core-js/modules/_array-includes.js","webpack:///../node_modules/core-js/modules/_to-length.js","webpack:///../node_modules/core-js/modules/_to-absolute-index.js","webpack:///../node_modules/core-js/modules/_html.js","webpack:///../node_modules/core-js/modules/es6.object.to-string.js","webpack:///../node_modules/core-js/modules/_classof.js","webpack:///../node_modules/core-js/modules/es7.object.values.js","webpack:///../node_modules/core-js/modules/_object-to-array.js","webpack:///../node_modules/webpack/buildin/global.js","webpack:///../node_modules/core-js/modules/_meta.js","webpack:///../node_modules/core-js/modules/_enum-keys.js","webpack:///../node_modules/core-js/modules/_is-array.js","webpack:///../node_modules/core-js/modules/_object-gopn-ext.js","webpack:///../node_modules/core-js/modules/_set-proto.js","webpack:///../node_modules/core-js/modules/_strict-method.js","webpack:///./scripts/objects/balloon.js","webpack:///./scripts/objects/gameOverPopup.js","webpack:///./scripts/objects/baseCharacter.js","webpack:///./scripts/objects/pausePopup.js","webpack:///./scripts/objects/helpHand.js","webpack:///./scripts/objects/helpPopup.js","webpack:///./scripts/scenes/game.js","webpack:///./scripts/objects/simpleButton.js","webpack:///./scripts/scenes/title.js","webpack:///./scripts/config.js","webpack:///./scripts/index.js"],"names":["installedModules","__webpack_require__","moduleId","exports","module","i","l","modules","call","m","c","d","name","getter","o","Object","defineProperty","enumerable","get","r","Symbol","toStringTag","value","t","mode","__esModule","ns","create","key","bind","n","object","property","prototype","hasOwnProperty","p","s","global","has","DESCRIPTORS","$export","redefine","META","KEY","$fails","shared","setToStringTag","uid","wks","wksExt","wksDefine","enumKeys","isArray","anObject","isObject","toIObject","toPrimitive","createDesc","_create","gOPNExt","$GOPD","$DP","$keys","gOPD","f","dP","gOPN","$Symbol","$JSON","JSON","_stringify","stringify","HIDDEN","TO_PRIMITIVE","isEnum","propertyIsEnumerable","SymbolRegistry","AllSymbols","OPSymbols","ObjectProto","USE_NATIVE","QObject","setter","findChild","setSymbolDesc","this","a","it","D","protoDesc","wrap","tag","sym","_k","isSymbol","iterator","$defineProperty","$defineProperties","P","keys","length","$propertyIsEnumerable","E","$getOwnPropertyDescriptor","$getOwnPropertyNames","names","result","push","$getOwnPropertySymbols","IS_OP","TypeError","arguments","undefined","$set","configurable","set","G","W","F","es6Symbols","split","j","wellKnownSymbols","store","k","S","for","keyFor","useSetter","useSimple","defineProperties","getOwnPropertyDescriptor","getOwnPropertyNames","getOwnPropertySymbols","replacer","$replacer","args","apply","valueOf","Math","setPrototypeOf","USE_SYMBOL","window","self","Function","__g","getPrototypeOf","target","propertyKey","desc","proto","receiver","IE8_DOM_DEFINE","O","Attributes","e","IObject","defined","exec","core","hide","ctx","type","source","own","out","exp","IS_FORCED","IS_GLOBAL","IS_STATIC","IS_PROTO","IS_BIND","B","expProto","U","R","id","px","random","concat","toString","SRC","$toString","TPL","inspectSource","val","safe","isFunction","join","String","enumBugKeys","FProto","nameRE","match","version","copyright","__e","bitmap","writable","fn","slice","def","TAG","stat","pIE","addToUnscopables","step","Iterators","Array","iterated","kind","_t","_i","index","Arguments","document","is","createElement","aFunction","that","b","dPs","IE_PROTO","Empty","createDict","iframeDocument","iframe","style","display","appendChild","src","contentWindow","open","write","lt","close","Properties","arrayIndexOf","ceil","floor","isNaN","toObject","constructor","SplashScreen","_classCallCheck","_possibleConstructorReturn","_getPrototypeOf","pack","files","Phaser","Scene","showCover","setupRotationHandling","setupiOS8BrowserCompatability","load","json","bitmapFont","createRotateMessage","startedInPortrait","scene","scale","orientation","Scale","PORTRAIT","hideOrientationMessage","refresh","on","showOrientationMessage","LANDSCAPE","systems","game","device","os","iOS","iOSVersion","gameSize","baseSize","displaySize","resolution","gameResized","makeFullScreenMessage","makeFullScreenMessageBG","showProgressBar","image","gameConfig","cache","spineData","sounds","soundConfig","idleSFX","helpConfig","atlas","steps","idleSFXLength","cSound","oggPath","mp3Path","audio","soundsLength","variants","file","backgrounds","setPath","atlasLength","data","pixelRatio","spriteScaler","desktop","atlas_1x","key_1x","data_1x","spine","loadComplete","start","splash","add","setOrigin","progressBG","_this$textures$get$ge","textures","w","width","h","height","img","sprite","v","setCrop","_errorMsgDiv","$","append","iPad","css","background-image","hideNonFullScreenMessage","addClass","removeClass","scenes","sleep","previousMuteState","wake","body","scrollTop","documentElement","iPhone","lastHeight","innerHeight","isMinimalView","spec","deviceSpec","scrollTo","nonFullScreenMessage","innerWidth","nonFullScreenMessageBG","specs","screen","devicePixelRatio","destroy","_get","LIBRARY","charAt","hiddenKeys","fails","$sort","sort","test","comparefn","$iterators","getKeys","ITERATOR","TO_STRING_TAG","ArrayValues","DOMIterables","CSSRuleList","CSSStyleDeclaration","CSSValueList","ClientRectList","DOMRectList","DOMStringList","DOMTokenList","DataTransferItemList","FileList","HTMLAllCollection","HTMLCollection","HTMLFormElement","HTMLSelectElement","MediaList","MimeTypeArray","NamedNodeMap","NodeList","PaintRequestList","Plugin","PluginArray","SVGLengthList","SVGNumberList","SVGPathSegList","SVGPointList","SVGStringList","SVGTransformList","SourceBufferList","StyleSheetList","TextTrackCueList","TextTrackList","TouchList","collections","NAME","explicit","Collection","UNSCOPABLES","ArrayProto","done","cof","$iterCreate","BUGGY","returnThis","Base","Constructor","next","DEFAULT","IS_SET","FORCED","methods","IteratorPrototype","getMethod","DEF_VALUES","VALUES_BUG","$native","$default","$entries","$anyNative","entries","values","descriptor","toLength","toAbsoluteIndex","IS_INCLUDES","$this","el","fromIndex","toInteger","min","max","classof","ARG","T","tryGet","callee","$values","isEntries","g","setDesc","isExtensible","FREEZE","preventExtensions","setMeta","meta","NEED","fastKey","getWeak","onFreeze","gOPS","getSymbols","symbols","arg","windowNames","getWindowNames","check","buggy","__proto__","method","Balloon","x","y","color","autoStart","_this","offset","active","animating","balloon","bWidth","shade","highlight","collided","holder","container","tint","radius","clickPoint","boundsPoint","transform","emitter","Events","EventEmitter","activeInGame","velX","velY","angVel","gravity","forceX","forceY","bounce","swayX","prevAngle","angle","setPosition","lastX","lastY","circle","Geom","Circle","bounds","GameObjects","Container","worldWidth","cameras","main","worldHeight","gravityConst","impulseX","impulseY","dragX","dragY","angDrag","swayAmp","swaySpeed","collideBounce","heightBonus","swayOffset","Between","swayAcc","shadow","alpha","shadowHeight","displayHeight","lastVelX","lastVelY","off","balloons","dt","targetX","targetY","lerp","sin","clamp01","abs","rotateAroundPoint","triggerCollision","pop","sqrDist","vec","Vector2","dist","lengthSq","normalize","intensity","smoothstep","setDisplaySize","emit","time","direction","transition","stop","newX","newY","dur","tweens","targets","duration","props","ease","_this2","startHeight","randAmt","delay","onComplete","togglePause","isPlaying","pause","resume","toggle","clamp","pointer","displayWidth","atan2","sqrt","handleBalloonClicked","axisX","axisY","radians","cos","popupGroup","gameOverPopup_classCallCheck","gameOverPopup_getPrototypeOf","setDepth","overlay","depth","config","scaleX","scaleY","gameOverPopup_assertThisInitialized","titleText","totalCount","titleCopy","success","failure","title","bitmapText","setFontSize","score","localStorage","getItem","setItem","highScore","playBtn","setInteractive","useHandCursor","handlePlayButtonDown","sting","sound","loop","volume","play","Sprite","firstRun","lastBG","characters","BaseCharacter","character","skin","animations","sfx","baseCharacter_classCallCheck","baseCharacter_getPrototypeOf","spineRef","idleAnims","idles","shuffle","defaultMix","existing","baseCharacter_assertThisInitialized","ID","minIdleTime","maxIdleTime","idleCounter","randomRange","idleTime","spineChar","lastPlayedAnim","clickArea","setSkin","default","frozen","canIdle","idleActive","Image","posX","posY","dir","setScale","texBounds","getBounds","charWidth","size","charHeight","delta","updateIdle","arr","setTimescale","playAnimVariant","spinChar","skinName","setSkinByName","attachments","skeleton","anim","mix","returnToPrevious","setMix","setAnimation","state","getCurrent","getAnimationLength","addAnimation","playing","currentAnimation","clearTracks","setToSetupPose","idx","playAnim","happy","delayedCall","celebrate","sad","low","high","tScale","timeScale","paused","removeAll","baseCharacter_get","PausePopup","pausePopup_classCallCheck","pausePopup_getPrototypeOf","paddingX","paddingY","pausePopup_assertThisInitialized","muteState","mute","muteBtn","handleMuteButtonDown","helpBtn","handleHelpButtonDown","btnTween","setTexture","onShown","onHidden","toggleMute","pausePopup_get","HelpHand","bg","helpHand_classCallCheck","helpHand_getPrototypeOf","helpHand_assertThisInitialized","offsetX","offsetY","startScaleX","startScaleY","startX","startY","bgWidth","bgHeight","resetAnims","animIndex","handTween","anims","nextAnim","moveHand","easing","tapHand","scaleHand","actualX","actualY","handleAnimComplete","_this3","_this4","yoyo","helpHand_get","HelpPopup","animData","helpPopup_classCallCheck","helpPopup_getPrototypeOf","helpPopup_assertThisInitialized","screenX","screenY","helpIdx","helpHand","nextHelp","setAnims","animate","helpPopup_get","Game","game_classCallCheck","game_possibleConstructorReturn","game_getPrototypeOf","prevMute","backgroundGroup","group","staticChars","characterGroup","balloonGroup","textGroup","endConfig","balloonData","physics","currentGravity","gamePlaying","level","transitionCount","levelCount","console","log","balloonColourCount","colours","balloonIndex","collisionPlayed","events","pausedTweens","setupCharacters","changeBackground","transitionDirection","prevBackgrounds","count","initBalloons","scoreBG","counter","font","setCenterAlign","canPlaySFX","helpPopup","pausePopup","handleResumed","showHelp","pauseBtn","show","handlePaused","input","inputDown","idleIdx","bgMusic","startAmount","createBalloon","popConfig","popFrames","frames","genFrames","generateFrameNames","prefix","end","suffix","frameRate","checkTap","toggleOn","setMute","endEvent","bgEvent","tween","splice","background","staticIdx","getChildren","charParams","params","staticChar","char","setTransform","reset","prevBg","setPhysics","handleBalloonCollision","once","handleGameOver","detune","text","handleTransition","playHappy","playTapSFX","playCelebrate","transitionOut","transitionTime","nextBackground","defaultCount","transitionIn","_this5","_this6","onSfxAvailable","update","updateCharacter","popData","_this7","popX","popY","popEffect","playSad","outroComplete","createGameOverPopup","charData","gameOverPopup","GameOverPopup","uiGroup","game_get","SimpleButton","callback","simpleButton_classCallCheck","simpleButton_getPrototypeOf","simpleButton_assertThisInitialized","onPress","scX","scY","pressTween","simpleButton_get","Title","title_classCallCheck","title_possibleConstructorReturn","title_getPrototypeOf","titleImages","titleElements","titleConfig","titleImagesLength","images","sX","sY","logo","easeParams","title_get","FIT","autoCenter","CENTER_BOTH","zoom","WEBGL","pixelArt","roundPixels","transparent","parent","canvasStyle","backgroundColor","clearBeforeRender","fps","loader","path","plugins","plugin","SpineWebGLPlugin","sceneKey","boot","__webpack_exports__"],"mappings":"aACA,IAAAA,EAAA,GAGA,SAAAC,EAAAC,GAGA,GAAAF,EAAAE,GACA,OAAAF,EAAAE,GAAAC,QAGA,IAAAC,EAAAJ,EAAAE,GAAA,CACAG,EAAAH,EACAI,GAAA,EACAH,QAAA,IAUA,OANAI,EAAAL,GAAAM,KAAAJ,EAAAD,QAAAC,IAAAD,QAAAF,GAGAG,EAAAE,GAAA,EAGAF,EAAAD,QAKAF,EAAAQ,EAAAF,EAGAN,EAAAS,EAAAV,EAGAC,EAAAU,EAAA,SAAAR,EAAAS,EAAAC,GACAZ,EAAAa,EAAAX,EAAAS,IACAG,OAAAC,eAAAb,EAAAS,EAAA,CAA0CK,YAAA,EAAAC,IAAAL,KAK1CZ,EAAAkB,EAAA,SAAAhB,GACA,oBAAAiB,eAAAC,aACAN,OAAAC,eAAAb,EAAAiB,OAAAC,YAAA,CAAwDC,MAAA,WAExDP,OAAAC,eAAAb,EAAA,cAAiDmB,OAAA,KAQjDrB,EAAAsB,EAAA,SAAAD,EAAAE,GAEA,GADA,EAAAA,IAAAF,EAAArB,EAAAqB,IACA,EAAAE,EAAA,OAAAF,EACA,KAAAE,GAAA,iBAAAF,QAAAG,WAAA,OAAAH,EACA,IAAAI,EAAAX,OAAAY,OAAA,MAGA,GAFA1B,EAAAkB,EAAAO,GACAX,OAAAC,eAAAU,EAAA,WAAyCT,YAAA,EAAAK,UACzC,EAAAE,GAAA,iBAAAF,EAAA,QAAAM,KAAAN,EAAArB,EAAAU,EAAAe,EAAAE,EAAA,SAAAA,GAAgH,OAAAN,EAAAM,IAAqBC,KAAA,KAAAD,IACrI,OAAAF,GAIAzB,EAAA6B,EAAA,SAAA1B,GACA,IAAAS,EAAAT,KAAAqB,WACA,WAA2B,OAAArB,EAAA,SAC3B,WAAiC,OAAAA,GAEjC,OADAH,EAAAU,EAAAE,EAAA,IAAAA,GACAA,GAIAZ,EAAAa,EAAA,SAAAiB,EAAAC,GAAsD,OAAAjB,OAAAkB,UAAAC,eAAA1B,KAAAuB,EAAAC,IAGtD/B,EAAAkC,EAAA,GAIAlC,IAAAmC,EAAA,sBClFAnC,EAAQ,GAARA,CAAuB,+CCEvB,IAAAoC,EAAapC,EAAQ,GACrBqC,EAAUrC,EAAQ,GAClBsC,EAAkBtC,EAAQ,IAC1BuC,EAAcvC,EAAQ,IACtBwC,EAAexC,EAAQ,IACvByC,EAAWzC,EAAQ,IAAS0C,IAC5BC,EAAa3C,EAAQ,IACrB4C,EAAa5C,EAAQ,IACrB6C,EAAqB7C,EAAQ,IAC7B8C,EAAU9C,EAAQ,IAClB+C,EAAU/C,EAAQ,GAClBgD,EAAahD,EAAQ,IACrBiD,EAAgBjD,EAAQ,IACxBkD,EAAelD,EAAQ,IACvBmD,EAAcnD,EAAQ,IACtBoD,EAAepD,EAAQ,IACvBqD,EAAerD,EAAQ,GACvBsD,EAAgBtD,EAAQ,IACxBuD,EAAkBvD,EAAQ,IAC1BwD,EAAiBxD,EAAQ,IACzByD,EAAczD,EAAQ,IACtB0D,EAAc1D,EAAQ,IACtB2D,EAAY3D,EAAQ,IACpB4D,EAAU5D,EAAQ,GAClB6D,EAAY7D,EAAQ,IACpB8D,EAAAH,EAAAI,EACAC,EAAAJ,EAAAG,EACAE,EAAAP,EAAAK,EACAG,EAAA9B,EAAAjB,OACAgD,EAAA/B,EAAAgC,KACAC,EAAAF,KAAAG,UAEAC,EAAAxB,EAAA,WACAyB,EAAAzB,EAAA,eACA0B,EAAA,GAAeC,qBACfC,EAAA/B,EAAA,mBACAgC,EAAAhC,EAAA,WACAiC,EAAAjC,EAAA,cACAkC,EAAAhE,OAAA,UACAiE,EAAA,mBAAAb,EACAc,EAAA5C,EAAA4C,QAEAC,GAAAD,MAAA,YAAAA,EAAA,UAAAE,UAGAC,EAAA7C,GAAAK,EAAA,WACA,OAEG,GAFHc,EAAAO,EAAA,GAAsB,KACtB/C,IAAA,WAAsB,OAAA+C,EAAAoB,KAAA,KAAuB/D,MAAA,IAAWgE,MACrDA,IACF,SAAAC,EAAA3D,EAAA4D,GACD,IAAAC,EAAA1B,EAAAgB,EAAAnD,GACA6D,UAAAV,EAAAnD,GACAqC,EAAAsB,EAAA3D,EAAA4D,GACAC,GAAAF,IAAAR,GAAAd,EAAAc,EAAAnD,EAAA6D,IACCxB,EAEDyB,EAAA,SAAAC,GACA,IAAAC,EAAAf,EAAAc,GAAAjC,EAAAS,EAAA,WAEA,OADAyB,EAAAC,GAAAF,EACAC,GAGAE,EAAAd,GAAA,iBAAAb,EAAA4B,SAAA,SAAAR,GACA,uBAAAA,GACC,SAAAA,GACD,OAAAA,aAAApB,GAGA6B,EAAA,SAAAT,EAAA3D,EAAA4D,GAKA,OAJAD,IAAAR,GAAAiB,EAAAlB,EAAAlD,EAAA4D,GACAnC,EAAAkC,GACA3D,EAAA4B,EAAA5B,GAAA,GACAyB,EAAAmC,GACAlD,EAAAuC,EAAAjD,IACA4D,EAAAvE,YAIAqB,EAAAiD,EAAAf,IAAAe,EAAAf,GAAA5C,KAAA2D,EAAAf,GAAA5C,IAAA,GACA4D,EAAA9B,EAAA8B,EAAA,CAAsBvE,WAAAwC,EAAA,UAJtBnB,EAAAiD,EAAAf,IAAAP,EAAAsB,EAAAf,EAAAf,EAAA,OACA8B,EAAAf,GAAA5C,IAAA,GAIKwD,EAAAG,EAAA3D,EAAA4D,IACFvB,EAAAsB,EAAA3D,EAAA4D,IAEHS,EAAA,SAAAV,EAAAW,GACA7C,EAAAkC,GAKA,IAJA,IAGA3D,EAHAuE,EAAAhD,EAAA+C,EAAA3C,EAAA2C,IACA7F,EAAA,EACAC,EAAA6F,EAAAC,OAEA9F,EAAAD,GAAA2F,EAAAT,EAAA3D,EAAAuE,EAAA9F,KAAA6F,EAAAtE,IACA,OAAA2D,GAKAc,EAAA,SAAAzE,GACA,IAAA0E,EAAA5B,EAAAlE,KAAA6E,KAAAzD,EAAA4B,EAAA5B,GAAA,IACA,QAAAyD,OAAAN,GAAAzC,EAAAuC,EAAAjD,KAAAU,EAAAwC,EAAAlD,QACA0E,IAAAhE,EAAA+C,KAAAzD,KAAAU,EAAAuC,EAAAjD,IAAAU,EAAA+C,KAAAb,IAAAa,KAAAb,GAAA5C,KAAA0E,IAEAC,EAAA,SAAAhB,EAAA3D,GAGA,GAFA2D,EAAAhC,EAAAgC,GACA3D,EAAA4B,EAAA5B,GAAA,GACA2D,IAAAR,IAAAzC,EAAAuC,EAAAjD,IAAAU,EAAAwC,EAAAlD,GAAA,CACA,IAAA4D,EAAAzB,EAAAwB,EAAA3D,GAEA,OADA4D,IAAAlD,EAAAuC,EAAAjD,IAAAU,EAAAiD,EAAAf,IAAAe,EAAAf,GAAA5C,KAAA4D,EAAAvE,YAAA,GACAuE,IAEAgB,EAAA,SAAAjB,GAKA,IAJA,IAGA3D,EAHA6E,EAAAvC,EAAAX,EAAAgC,IACAmB,EAAA,GACArG,EAAA,EAEAoG,EAAAL,OAAA/F,GACAiC,EAAAuC,EAAAjD,EAAA6E,EAAApG,OAAAuB,GAAA4C,GAAA5C,GAAAc,GAAAgE,EAAAC,KAAA/E,GACG,OAAA8E,GAEHE,EAAA,SAAArB,GAMA,IALA,IAIA3D,EAJAiF,EAAAtB,IAAAR,EACA0B,EAAAvC,EAAA2C,EAAA/B,EAAAvB,EAAAgC,IACAmB,EAAA,GACArG,EAAA,EAEAoG,EAAAL,OAAA/F,IACAiC,EAAAuC,EAAAjD,EAAA6E,EAAApG,OAAAwG,IAAAvE,EAAAyC,EAAAnD,IAAA8E,EAAAC,KAAA9B,EAAAjD,IACG,OAAA8E,GAIH1B,IAYAvC,GAXA0B,EAAA,WACA,GAAAkB,gBAAAlB,EAAA,MAAA2C,UAAA,gCACA,IAAAnB,EAAA5C,EAAAgE,UAAAX,OAAA,EAAAW,UAAA,QAAAC,GACAC,EAAA,SAAA3F,GACA+D,OAAAN,GAAAkC,EAAAzG,KAAAsE,EAAAxD,GACAgB,EAAA+C,KAAAb,IAAAlC,EAAA+C,KAAAb,GAAAmB,KAAAN,KAAAb,GAAAmB,IAAA,GACAP,EAAAC,KAAAM,EAAAlC,EAAA,EAAAnC,KAGA,OADAiB,GAAA2C,GAAAE,EAAAL,EAAAY,EAAA,CAAgEuB,cAAA,EAAAC,IAAAF,IAChEvB,EAAAC,KAEA,gCACA,OAAAN,KAAAQ,KAGAjC,EAAAI,EAAAuC,EACA1C,EAAAG,EAAAgC,EACE/F,EAAQ,IAAgB+D,EAAAL,EAAAK,EAAAwC,EACxBvG,EAAQ,IAAe+D,EAAAqC,EACvBpG,EAAQ,IAAgB+D,EAAA4C,EAE1BrE,IAAsBtC,EAAQ,KAC9BwC,EAAAsC,EAAA,uBAAAsB,GAAA,GAGApD,EAAAe,EAAA,SAAApD,GACA,OAAA8E,EAAA1C,EAAApC,MAIA4B,IAAA4E,EAAA5E,EAAA6E,EAAA7E,EAAA8E,GAAAtC,EAAA,CAA0D5D,OAAA+C,IAE1D,QAAAoD,EAAA,iHAGAC,MAAA,KAAAC,GAAA,EAAoBF,EAAAnB,OAAAqB,IAAuBzE,EAAAuE,EAAAE,OAE3C,QAAAC,GAAA5D,EAAAd,EAAA2E,OAAAC,GAAA,EAAoDF,GAAAtB,OAAAwB,IAA6B1E,EAAAwE,GAAAE,OAEjFpF,IAAAqF,EAAArF,EAAA8E,GAAAtC,EAAA,UAEA8C,IAAA,SAAAlG,GACA,OAAAU,EAAAsC,EAAAhD,GAAA,IACAgD,EAAAhD,GACAgD,EAAAhD,GAAAuC,EAAAvC,IAGAmG,OAAA,SAAAnC,GACA,IAAAE,EAAAF,GAAA,MAAAkB,UAAAlB,EAAA,qBACA,QAAAhE,KAAAgD,EAAA,GAAAA,EAAAhD,KAAAgE,EAAA,OAAAhE,GAEAoG,UAAA,WAA0B9C,GAAA,GAC1B+C,UAAA,WAA0B/C,GAAA,KAG1B1C,IAAAqF,EAAArF,EAAA8E,GAAAtC,EAAA,UAEArD,OA/FA,SAAA4D,EAAAW,GACA,YAAAc,IAAAd,EAAAxC,EAAA6B,GAAAU,EAAAvC,EAAA6B,GAAAW,IAgGAlF,eAAAgF,EAEAkC,iBAAAjC,EAEAkC,yBAAA5B,EAEA6B,oBAAA5B,EAEA6B,sBAAAzB,IAIAxC,GAAA5B,IAAAqF,EAAArF,EAAA8E,IAAAtC,GAAApC,EAAA,WACA,IAAAiF,EAAA1D,IAIA,gBAAAG,EAAA,CAAAuD,KAA2D,MAA3DvD,EAAA,CAAoDgB,EAAAuC,KAAe,MAAAvD,EAAAvD,OAAA8G,OAClE,QACDtD,UAAA,SAAAgB,GAIA,IAHA,IAEA+C,EAAAC,EAFAC,EAAA,CAAAjD,GACAlF,EAAA,EAEA0G,UAAAX,OAAA/F,GAAAmI,EAAA7B,KAAAI,UAAA1G,MAEA,GADAkI,EAAAD,EAAAE,EAAA,IACAlF,EAAAgF,SAAAtB,IAAAzB,KAAAO,EAAAP,GAMA,OALAnC,EAAAkF,OAAA,SAAA1G,EAAAN,GAEA,GADA,mBAAAiH,IAAAjH,EAAAiH,EAAA/H,KAAA6E,KAAAzD,EAAAN,KACAwE,EAAAxE,GAAA,OAAAA,IAEAkH,EAAA,GAAAF,EACAhE,EAAAmE,MAAArE,EAAAoE,MAKArE,EAAA,UAAAM,IAAoCxE,EAAQ,EAARA,CAAiBkE,EAAA,UAAAM,EAAAN,EAAA,UAAAuE,SAErD5F,EAAAqB,EAAA,UAEArB,EAAA6F,KAAA,WAEA7F,EAAAT,EAAAgC,KAAA,4BCxOA,IAAA7B,EAAcvC,EAAQ,IACtBuC,IAAAqF,EAAA,UAA8Be,eAAiB3I,EAAQ,IAAckH,uBCFrE,IAAAQ,EAAY1H,EAAQ,GAARA,CAAmB,OAC/B8C,EAAU9C,EAAQ,IAClBmB,EAAanB,EAAQ,GAAWmB,OAChCyH,EAAA,mBAAAzH,GAEAhB,EAAAD,QAAA,SAAAS,GACA,OAAA+G,EAAA/G,KAAA+G,EAAA/G,GACAiI,GAAAzH,EAAAR,KAAAiI,EAAAzH,EAAA2B,GAAA,UAAAnC,MAGA+G,uBCTA,IAAAtF,EAAAjC,EAAAD,QAAA,oBAAA2I,eAAAH,WACAG,OAAA,oBAAAC,WAAAJ,WAAAI,KAEAC,SAAA,cAAAA,GACA,iBAAAC,UAAA5G,oBCJA,IAAA0B,EAAW9D,EAAQ,IACnBiJ,EAAqBjJ,EAAQ,IAC7BqC,EAAUrC,EAAQ,GAClBuC,EAAcvC,EAAQ,IACtBqD,EAAerD,EAAQ,GACvBoD,EAAepD,EAAQ,IAcvBuC,IAAAqF,EAAA,WAA+B3G,IAZ/B,SAAAA,EAAAiI,EAAAC,GACA,IACAC,EAAAC,EADAC,EAAAxC,UAAAX,OAAA,EAAA+C,EAAApC,UAAA,GAEA,OAAA1D,EAAA8F,KAAAI,EAAAJ,EAAAC,IACAC,EAAAtF,EAAAC,EAAAmF,EAAAC,IAAA9G,EAAA+G,EAAA,SACAA,EAAA/H,WACA0F,IAAAqC,EAAAnI,IACAmI,EAAAnI,IAAAV,KAAA+I,QACAvC,EACA1D,EAAAgG,EAAAJ,EAAAC,IAAAjI,EAAAoI,EAAAF,EAAAG,QAAA,oBCjBA,IAAArH,EAAA,GAAuBA,eACvB9B,EAAAD,QAAA,SAAAoF,EAAA3D,GACA,OAAAM,EAAA1B,KAAA+E,EAAA3D,qBCFA,IAAAqC,EAAShE,EAAQ,GACjBwD,EAAiBxD,EAAQ,IACzBG,EAAAD,QAAiBF,EAAQ,IAAgB,SAAA8B,EAAAH,EAAAN,GACzC,OAAA2C,EAAAD,EAAAjC,EAAAH,EAAA6B,EAAA,EAAAnC,KACC,SAAAS,EAAAH,EAAAN,GAED,OADAS,EAAAH,GAAAN,EACAS,oBCNA,IAAAsB,EAAepD,EAAQ,IACvBuJ,EAAqBvJ,EAAQ,IAC7BuD,EAAkBvD,EAAQ,IAC1BgE,EAAAlD,OAAAC,eAEAb,EAAA6D,EAAY/D,EAAQ,IAAgBc,OAAAC,eAAA,SAAAyI,EAAAvD,EAAAwD,GAIpC,GAHArG,EAAAoG,GACAvD,EAAA1C,EAAA0C,GAAA,GACA7C,EAAAqG,GACAF,EAAA,IACA,OAAAvF,EAAAwF,EAAAvD,EAAAwD,GACG,MAAAC,IACH,WAAAD,GAAA,QAAAA,EAAA,MAAA5C,UAAA,4BAEA,MADA,UAAA4C,IAAAD,EAAAvD,GAAAwD,EAAApI,OACAmI,kBCdArJ,EAAAD,QAAA,SAAAoF,GACA,uBAAAA,EAAA,OAAAA,EAAA,mBAAAA,oBCAAnF,EAAAD,SAAkBF,EAAQ,GAARA,CAAkB,WACpC,OAA0E,GAA1Ec,OAAAC,eAAA,GAAiC,KAAQE,IAAA,WAAmB,YAAcoE,qBCD1E,IAAAsE,EAAc3J,EAAQ,IACtB4J,EAAc5J,EAAQ,IACtBG,EAAAD,QAAA,SAAAoF,GACA,OAAAqE,EAAAC,EAAAtE,sBCJA,IAAAjC,EAAerD,EAAQ,GACvBG,EAAAD,QAAA,SAAAoF,GACA,IAAAjC,EAAAiC,GAAA,MAAAuB,UAAAvB,EAAA,sBACA,OAAAA,kBCHAnF,EAAAD,QAAA,SAAA2J,GACA,IACA,QAAAA,IACG,MAAAH,GACH,4BCJA,IAAAtH,EAAapC,EAAQ,GACrB8J,EAAW9J,EAAQ,IACnB+J,EAAW/J,EAAQ,GACnBwC,EAAexC,EAAQ,IACvBgK,EAAUhK,EAAQ,IAGlBuC,EAAA,SAAA0H,EAAAtJ,EAAAuJ,GACA,IAQAvI,EAAAwI,EAAAC,EAAAC,EARAC,EAAAL,EAAA1H,EAAA8E,EACAkD,EAAAN,EAAA1H,EAAA4E,EACAqD,EAAAP,EAAA1H,EAAAqF,EACA6C,EAAAR,EAAA1H,EAAA0D,EACAyE,EAAAT,EAAA1H,EAAAoI,EACAzB,EAAAqB,EAAAnI,EAAAoI,EAAApI,EAAAzB,KAAAyB,EAAAzB,GAAA,KAAkFyB,EAAAzB,IAAA,IAAuB,UACzGT,EAAAqK,EAAAT,IAAAnJ,KAAAmJ,EAAAnJ,GAAA,IACAiK,EAAA1K,EAAA,YAAAA,EAAA,cAGA,IAAAyB,KADA4I,IAAAL,EAAAvJ,GACAuJ,EAIAE,IAFAD,GAAAG,GAAApB,QAAAnC,IAAAmC,EAAAvH,IAEAuH,EAAAgB,GAAAvI,GAEA0I,EAAAK,GAAAP,EAAAH,EAAAI,EAAAhI,GAAAqI,GAAA,mBAAAL,EAAAJ,EAAAjB,SAAAxI,KAAA6J,KAEAlB,GAAA1G,EAAA0G,EAAAvH,EAAAyI,EAAAH,EAAA1H,EAAAsI,GAEA3K,EAAAyB,IAAAyI,GAAAL,EAAA7J,EAAAyB,EAAA0I,GACAI,GAAAG,EAAAjJ,IAAAyI,IAAAQ,EAAAjJ,GAAAyI,IAGAhI,EAAA0H,OAEAvH,EAAA8E,EAAA,EACA9E,EAAA4E,EAAA,EACA5E,EAAAqF,EAAA,EACArF,EAAA0D,EAAA,EACA1D,EAAAoI,EAAA,GACApI,EAAA6E,EAAA,GACA7E,EAAAsI,EAAA,GACAtI,EAAAuI,EAAA,IACA3K,EAAAD,QAAAqC,iBC1CA,IAAAwI,EAAA,EACAC,EAAAtC,KAAAuC,SACA9K,EAAAD,QAAA,SAAAyB,GACA,gBAAAuJ,YAAAnE,IAAApF,EAAA,GAAAA,EAAA,QAAAoJ,EAAAC,GAAAG,SAAA,uBCHA,IAAA/I,EAAapC,EAAQ,GACrB+J,EAAW/J,EAAQ,GACnBqC,EAAUrC,EAAQ,GAClBoL,EAAUpL,EAAQ,GAARA,CAAgB,OAC1BqL,EAAgBrL,EAAQ,IAExBsL,GAAA,GAAAD,GAAA9D,MADA,YAGAvH,EAAQ,IAASuL,cAAA,SAAAjG,GACjB,OAAA+F,EAAA9K,KAAA+E,KAGAnF,EAAAD,QAAA,SAAAsJ,EAAA7H,EAAA6J,EAAAC,GACA,IAAAC,EAAA,mBAAAF,EACAE,IAAArJ,EAAAmJ,EAAA,SAAAzB,EAAAyB,EAAA,OAAA7J,IACA6H,EAAA7H,KAAA6J,IACAE,IAAArJ,EAAAmJ,EAAAJ,IAAArB,EAAAyB,EAAAJ,EAAA5B,EAAA7H,GAAA,GAAA6H,EAAA7H,GAAA2J,EAAAK,KAAAC,OAAAjK,MACA6H,IAAApH,EACAoH,EAAA7H,GAAA6J,EACGC,EAGAjC,EAAA7H,GACH6H,EAAA7H,GAAA6J,EAEAzB,EAAAP,EAAA7H,EAAA6J,WALAhC,EAAA7H,GACAoI,EAAAP,EAAA7H,EAAA6J,OAOCzC,SAAA/G,UAvBD,WAuBC,WACD,yBAAAoD,WAAAgG,IAAAC,EAAA9K,KAAA6E,yBC5BA,IAAAvB,EAAY7D,EAAQ,IACpB6L,EAAkB7L,EAAQ,IAE1BG,EAAAD,QAAAY,OAAAoF,MAAA,SAAAsD,GACA,OAAA3F,EAAA2F,EAAAqC,qBCLA,IAAA7H,EAAShE,EAAQ,GAAc+D,EAC/B+H,EAAA/C,SAAA/G,UACA+J,EAAA,wBACA,SAGAD,GAAkB9L,EAAQ,KAAgBgE,EAAA8H,EAH1C,OAG0C,CAC1C7E,cAAA,EACAhG,IAAA,WACA,IACA,UAAAmE,MAAA4G,MAAAD,GAAA,GACK,MAAArC,GACL,8BCZA,IAAAI,EAAW9J,EAAQ,IACnBoC,EAAapC,EAAQ,GAErB0H,EAAAtF,EADA,wBACAA,EADA,sBACA,KAEAjC,EAAAD,QAAA,SAAAyB,EAAAN,GACA,OAAAqG,EAAA/F,KAAA+F,EAAA/F,QAAAoF,IAAA1F,IAAA,MACC,eAAAqF,KAAA,CACDuF,QAAAnC,EAAAmC,QACA1K,KAAQvB,EAAQ,IAAY,gBAC5BkM,UAAA,wDCVA,IAAApC,EAAA3J,EAAAD,QAAA,CAA6B+L,QAAA,SAC7B,iBAAAE,UAAArC,kBCDA3J,EAAAD,SAAA,iBCAAC,EAAAD,QAAA,SAAAkM,EAAA/K,GACA,OACAL,aAAA,EAAAoL,GACAnF,eAAA,EAAAmF,GACAC,WAAA,EAAAD,GACA/K,yBCLAnB,EAAA6D,EAAA,GAAcW,wHCCd,IAAArB,EAAerD,EAAQ,GAGvBG,EAAAD,QAAA,SAAAoF,EAAAsC,GACA,IAAAvE,EAAAiC,GAAA,OAAAA,EACA,IAAAgH,EAAAd,EACA,GAAA5D,GAAA,mBAAA0E,EAAAhH,EAAA6F,YAAA9H,EAAAmI,EAAAc,EAAA/L,KAAA+E,IAAA,OAAAkG,EACA,sBAAAc,EAAAhH,EAAAmD,WAAApF,EAAAmI,EAAAc,EAAA/L,KAAA+E,IAAA,OAAAkG,EACA,IAAA5D,GAAA,mBAAA0E,EAAAhH,EAAA6F,YAAA9H,EAAAmI,EAAAc,EAAA/L,KAAA+E,IAAA,OAAAkG,EACA,MAAA3E,UAAA,2DCVA1G,EAAAD,QAAA,kBCAA,IAAAiL,EAAA,GAAiBA,SAEjBhL,EAAAD,QAAA,SAAAoF,GACA,OAAA6F,EAAA5K,KAAA+E,GAAAiH,MAAA,wBCHA,IAAA3J,EAAa5C,EAAQ,GAARA,CAAmB,QAChC8C,EAAU9C,EAAQ,IAClBG,EAAAD,QAAA,SAAAyB,GACA,OAAAiB,EAAAjB,KAAAiB,EAAAjB,GAAAmB,EAAAnB,oBCFAxB,EAAAD,QAAA,gGAEAqH,MAAA,sBCHA,IAAAiF,EAAUxM,EAAQ,GAAc+D,EAChC1B,EAAUrC,EAAQ,GAClByM,EAAUzM,EAAQ,EAARA,CAAgB,eAE1BG,EAAAD,QAAA,SAAAoF,EAAAI,EAAAgH,GACApH,IAAAjD,EAAAiD,EAAAoH,EAAApH,IAAAtD,UAAAyK,IAAAD,EAAAlH,EAAAmH,EAAA,CAAoExF,cAAA,EAAA5F,MAAAqE,sBCLpE,IAAAiH,EAAU3M,EAAQ,IAClBwD,EAAiBxD,EAAQ,IACzBsD,EAAgBtD,EAAQ,IACxBuD,EAAkBvD,EAAQ,IAC1BqC,EAAUrC,EAAQ,GAClBuJ,EAAqBvJ,EAAQ,IAC7B8D,EAAAhD,OAAAoH,yBAEAhI,EAAA6D,EAAY/D,EAAQ,IAAgB8D,EAAA,SAAA0F,EAAAvD,GAGpC,GAFAuD,EAAAlG,EAAAkG,GACAvD,EAAA1C,EAAA0C,GAAA,GACAsD,EAAA,IACA,OAAAzF,EAAA0F,EAAAvD,GACG,MAAAyD,IACH,GAAArH,EAAAmH,EAAAvD,GAAA,OAAAzC,GAAAmJ,EAAA5I,EAAAxD,KAAAiJ,EAAAvD,GAAAuD,EAAAvD,mCCbA,IAAA2G,EAAuB5M,EAAQ,IAC/B6M,EAAW7M,EAAQ,IACnB8M,EAAgB9M,EAAQ,IACxBsD,EAAgBtD,EAAQ,IAMxBG,EAAAD,QAAiBF,EAAQ,GAARA,CAAwB+M,MAAA,iBAAAC,EAAAC,GACzC7H,KAAA8H,GAAA5J,EAAA0J,GACA5H,KAAA+H,GAAA,EACA/H,KAAAQ,GAAAqH,GAEC,WACD,IAAAzD,EAAApE,KAAA8H,GACAD,EAAA7H,KAAAQ,GACAwH,EAAAhI,KAAA+H,KACA,OAAA3D,GAAA4D,GAAA5D,EAAArD,QACAf,KAAA8H,QAAAnG,EACA8F,EAAA,IAEAA,EAAA,UAAAI,EAAAG,EACA,UAAAH,EAAAzD,EAAA4D,GACA,CAAAA,EAAA5D,EAAA4D,MACC,UAGDN,EAAAO,UAAAP,EAAAC,MAEAH,EAAA,QACAA,EAAA,UACAA,EAAA,4BCjCAzM,EAAAD,SAAkBF,EAAQ,MAAsBA,EAAQ,GAARA,CAAkB,WAClE,OAAuG,GAAvGc,OAAAC,eAA+Bf,EAAQ,GAARA,CAAuB,YAAgBiB,IAAA,WAAmB,YAAcoE,qBCDvG,IAAAhC,EAAerD,EAAQ,GACvBsN,EAAetN,EAAQ,GAAWsN,SAElCC,EAAAlK,EAAAiK,IAAAjK,EAAAiK,EAAAE,eACArN,EAAAD,QAAA,SAAAoF,GACA,OAAAiI,EAAAD,EAAAE,cAAAlI,GAAA,mBCJAnF,EAAAD,QAAA,SAAAoF,GACA,GAAAyB,MAAAzB,EAAA,MAAAuB,UAAA,yBAAAvB,GACA,OAAAA,oBCFA,IAAAmI,EAAgBzN,EAAQ,IACxBG,EAAAD,QAAA,SAAAoM,EAAAoB,EAAAvH,GAEA,GADAsH,EAAAnB,QACAvF,IAAA2G,EAAA,OAAApB,EACA,OAAAnG,GACA,uBAAAd,GACA,OAAAiH,EAAA/L,KAAAmN,EAAArI,IAEA,uBAAAA,EAAAsI,GACA,OAAArB,EAAA/L,KAAAmN,EAAArI,EAAAsI,IAEA,uBAAAtI,EAAAsI,EAAAlN,GACA,OAAA6L,EAAA/L,KAAAmN,EAAArI,EAAAsI,EAAAlN,IAGA,kBACA,OAAA6L,EAAA9D,MAAAkF,EAAA5G,4BCjBA3G,EAAAD,QAAA,SAAAoF,GACA,sBAAAA,EAAA,MAAAuB,UAAAvB,EAAA,uBACA,OAAAA,oBCDA,IAAAlC,EAAepD,EAAQ,IACvB4N,EAAU5N,EAAQ,IAClB6L,EAAkB7L,EAAQ,IAC1B6N,EAAe7N,EAAQ,GAARA,CAAuB,YACtC8N,EAAA,aAIAC,EAAA,WAEA,IAIAC,EAJAC,EAAejO,EAAQ,GAARA,CAAuB,UACtCI,EAAAyL,EAAA1F,OAcA,IAVA8H,EAAAC,MAAAC,QAAA,OACEnO,EAAQ,IAASoO,YAAAH,GACnBA,EAAAI,IAAA,eAGAL,EAAAC,EAAAK,cAAAhB,UACAiB,OACAP,EAAAQ,MAAAC,uCACAT,EAAAU,QACAX,EAAAC,EAAA3G,EACAjH,YAAA2N,EAAA,UAAAlC,EAAAzL,IACA,OAAA2N,KAGA5N,EAAAD,QAAAY,OAAAY,QAAA,SAAA8H,EAAAmF,GACA,IAAAlI,EAQA,OAPA,OAAA+C,GACAsE,EAAA,UAAA1K,EAAAoG,GACA/C,EAAA,IAAAqH,EACAA,EAAA,eAEArH,EAAAoH,GAAArE,GACG/C,EAAAsH,SACHhH,IAAA4H,EAAAlI,EAAAmH,EAAAnH,EAAAkI,qBCvCA,IAAAtM,EAAUrC,EAAQ,GAClBsD,EAAgBtD,EAAQ,IACxB4O,EAAmB5O,EAAQ,GAARA,EAA2B,GAC9C6N,EAAe7N,EAAQ,GAARA,CAAuB,YAEtCG,EAAAD,QAAA,SAAA4B,EAAA0E,GACA,IAGA7E,EAHA6H,EAAAlG,EAAAxB,GACA1B,EAAA,EACAqG,EAAA,GAEA,IAAA9E,KAAA6H,EAAA7H,GAAAkM,GAAAxL,EAAAmH,EAAA7H,IAAA8E,EAAAC,KAAA/E,GAEA,KAAA6E,EAAAL,OAAA/F,GAAAiC,EAAAmH,EAAA7H,EAAA6E,EAAApG,SACAwO,EAAAnI,EAAA9E,IAAA8E,EAAAC,KAAA/E,IAEA,OAAA8E,kBCdA,IAAAoI,EAAAnG,KAAAmG,KACAC,EAAApG,KAAAoG,MACA3O,EAAAD,QAAA,SAAAoF,GACA,OAAAyJ,MAAAzJ,MAAA,GAAAA,EAAA,EAAAwJ,EAAAD,GAAAvJ,qBCHA,IAAAjD,EAAUrC,EAAQ,GAClBgP,EAAehP,EAAQ,IACvB6N,EAAe7N,EAAQ,GAARA,CAAuB,YACtC8E,EAAAhE,OAAAkB,UAEA7B,EAAAD,QAAAY,OAAAmI,gBAAA,SAAAO,GAEA,OADAA,EAAAwF,EAAAxF,GACAnH,EAAAmH,EAAAqE,GAAArE,EAAAqE,GACA,mBAAArE,EAAAyF,aAAAzF,eAAAyF,YACAzF,EAAAyF,YAAAjN,UACGwH,aAAA1I,OAAAgE,EAAA,uBCVH,IAAA8E,EAAc5J,EAAQ,IACtBG,EAAAD,QAAA,SAAAoF,GACA,OAAAxE,OAAA8I,EAAAtE,4rCCHqB4J,cAQnB,SAAAA,IAAc,mGAAAC,CAAA/J,KAAA8J,GAAAE,EAAAhK,KAAAiK,EAAAH,GAAA3O,KAAA6E,KACN,CACJzD,IAAK,eAGL2N,KAAM,CACJC,MAAO,CACL,CACE5N,IAAK,gBACLsI,KAAM,SAER,CACEtI,IAAK,eACLsI,KAAM,SAER,CACEtI,IAAK,cACLsI,KAAM,oQAzBwBuF,OAAOC,+CAuC7CrK,KAAKsK,YACLtK,KAAKuK,wBACLvK,KAAKwK,gCAELxK,KAAKyK,KAAKC,KAAK,OADA,iBAGf1K,KAAKyK,KAAKE,WACR,gBACA,0BACA,2EAMF3K,KAAK4K,sBACL5K,KAAK6K,kBAAqB7K,KAAK8K,MAAMA,MAAMC,MAAMC,cAAgBZ,OAAOa,MAAMC,SACzElL,KAAK6K,mBACR7K,KAAKmL,yBAEPnL,KAAK8K,MAAMA,MAAMC,MAAMK,UAEvB,IAAI9C,EAAOtI,KACXA,KAAK8K,MAAMA,MAAMC,MAAMM,GAAG,oBAAqB,SAAUL,GACnDA,IAAgBZ,OAAOa,MAAMC,SAC/B5C,EAAKgD,yBACIN,IAAgBZ,OAAOa,MAAMM,WACtCjD,EAAK6C,mFAMT,GAAInL,KAAK8K,MAAMU,QAAQC,KAAKC,OAAOC,GAAGC,IACpC,GAAqD,IAAjD5L,KAAK8K,MAAMU,QAAQC,KAAKC,OAAOC,GAAGE,WAAkB,CACtD,IAAIvD,EAAOtI,KACXA,KAAK8K,MAAMA,MAAMC,MAAMM,GAAG,SAAU,SAAUS,EAAUC,EAAUC,EAAaC,GAC7E3D,EAAK4D,gBAGPlM,KAAKmM,wBACLnM,KAAKoM,0BACLpM,KAAKkM,mBAGLlM,KAAK8K,MAAMA,MAAMC,MAAMK,2CAa3BpL,KAAKqM,kBACLrM,KAAK8K,MAAMA,MAAMC,MAAMK,UAEvBpL,KAAKyK,KAAK6B,MAAM,QAChBtM,KAAKyK,KAAK6B,MAAM,WAAY,oBAC5BtM,KAAKyK,KAAK6B,MAAM,UAAW,sBAC3BtM,KAAKyK,KAAK6B,MAAM,SAAU,qBAC1BtM,KAAKyK,KAAK6B,MAAM,QAAS,oBAEzBtM,KAAKyK,KAAK6B,MAAM,aAChBtM,KAAKyK,KAAK6B,MAAM,eAChBtM,KAAKyK,KAAK6B,MAAM,SAChBtM,KAAKyK,KAAK6B,MAAM,OAAQ,iBACxBtM,KAAKyK,KAAK6B,MAAM,UAAW,qBAC3BtM,KAAKyK,KAAK6B,MAAM,WAAY,iBAC5BtM,KAAKyK,KAAK6B,MAAM,eAChBtM,KAAKyK,KAAK6B,MAAM,SAChBtM,KAAKyK,KAAK6B,MAAM,WAAY,oBAC5BtM,KAAKyK,KAAK6B,MAAM,YAAa,qBAC7BtM,KAAKyK,KAAK6B,MAAM,UAAW,gBAE3BtM,KAAKuM,WAAavM,KAAKwM,MAAM9B,KAAK7O,IAAI,QAAQ0Q,WAC9CvM,KAAKyM,UAAYzM,KAAKwM,MAAM9B,KAAK7O,IAAI,QAAQ4Q,UAC7CzM,KAAK0M,OAAS1M,KAAKwM,MAAM9B,KAAK7O,IAAI,QAAQ8Q,YAC1C3M,KAAK4M,QAAU5M,KAAKwM,MAAM9B,KAAK7O,IAAI,QAAQ+Q,QAC3C5M,KAAK6M,WAAa7M,KAAKwM,MAAM9B,KAAK7O,IAAI,QAAQgR,WAE9C7M,KAAKyK,KAAKqC,MAAM,UAAW,qCAAsC,uCAEjE,IAAK,IAAIhQ,EAAI,EAAGA,EAAIkD,KAAK6M,WAAWE,MAAMhM,OAAQjE,IAChDkD,KAAKyK,KAAK6B,MAAMtM,KAAK6M,WAAWE,MAAMjQ,GAAGwP,OAI3C,IADA,IAAIU,EAAgBhN,KAAK4M,QAAQ7L,OACxBjE,EAAI,EAAGA,EAAIkQ,EAAelQ,IAAK,CACtC,IAAImQ,EAASjN,KAAK4M,QAAQ9P,GACtBoQ,EAAU,SAAWD,EAAS,OAC9BE,EAAU,SAAWF,EAAS,OAClCjN,KAAKyK,KAAK2C,MAAMH,EAAQ,CAACC,EAASC,IAIpC,IADA,IAAIE,EAAerN,KAAK0M,OAAO3L,OACtB3F,EAAI,EAAGA,EAAIiS,EAAcjS,IAAK,CACrC,IAAI6R,EAASjN,KAAK0M,OAAOtR,GACzB,QAAwBuG,IAApBsL,EAAOK,SACT,IAAK,IAAI7Q,EAAI,EAAGA,EAAIwQ,EAAOK,SAAU7Q,IAAK,CACxC,IAAIyQ,EAAU,SAAWD,EAAOM,MAAQ9Q,EAAI,GAAK,OAC7C0Q,EAAU,SAAWF,EAAOM,QAAS9Q,EAAI,GAAK,OAClDuD,KAAKyK,KAAK2C,MAAMH,EAAO1R,MAAQkB,EAAI,GAAI,CAACyQ,EAASC,QAE9C,CACL,IAAID,EAAU,SAAWD,EAAOM,KAAO,OACnCJ,EAAU,SAAWF,EAAOM,KAAO,OACvCvN,KAAKyK,KAAK2C,MAAMH,EAAO1R,KAAM,CAAC2R,EAASC,KAI3C,IAAK,IAAInS,EAAI,EAAGA,EAAIgF,KAAKuM,WAAWiB,YAAYzM,OAAQ/F,IACtDgF,KAAKyK,KAAK6B,MACRtM,KAAKuM,WAAWiB,YAAYxS,GAAGO,KAC/ByE,KAAKuM,WAAWiB,YAAYxS,GAAGuS,MAInCvN,KAAKyK,KAAKgD,QAAQ,gBAElB,IADA,IAAIC,EAAc1N,KAAKyM,UAAU1L,OACxBwB,EAAI,EAAGA,EAAImL,EAAanL,IAAK,CAIpC,IAAIhG,EAAMyD,KAAKyM,UAAUlK,GAAGhG,IACxB0D,EAAID,KAAKyM,UAAUlK,GAAGuK,MACtBa,EAAO3N,KAAKyM,UAAUlK,GAAGoL,KAEzBC,EAAa5N,KAAK8K,MAAMU,QAAQC,KAAKC,OAAOC,GAAGiC,WACnDnK,OAAOoK,aAAe,EAClBD,GAAc,IAAM5N,KAAK8K,MAAMU,QAAQC,KAAKC,OAAOC,GAAGmC,UACxDrK,OAAOoK,aAAe,EACtB5N,EAAID,KAAKyM,UAAUlK,GAAGwL,SACtBxR,EAAMyD,KAAKyM,UAAUlK,GAAGyL,OACxBL,EAAO3N,KAAKyM,UAAUlK,GAAG0L,SAG3BjO,KAAKyK,KAAKyD,MACR3R,EACAoR,EACA1N,GAIJD,KAAKyK,KAAKY,GAAG,WAAYrL,KAAKmO,aAAcnO,MAC5CA,KAAKyK,KAAK2D,+CAIVpO,KAAK8K,MAAMsD,MAAM,6CAWjBpO,KAAKqO,OAASrO,KAAKsO,IAAIhC,MAAM,EAAG,EAAG,iBAAiBiC,UAAU,GAC9DvO,KAAKwO,WAAaxO,KAAKsO,IAAIhC,MAAM,IAAK,IAAK,eAAeiC,UAAU,8CAQpD,IAAAE,EAEgBzO,KAAK0O,SAAS7S,IAAI,gBAAgBA,MAAnD8S,EAFCF,EAERG,MAAkBC,EAFVJ,EAEEK,OAGZC,EAAM/O,KAAKsO,IACdU,OAAO,IAAML,EAAI,EAAG,IAAK,gBACzBJ,UAAU,EAAG,IAIhBvO,KAAKyK,KAAKY,GAAG,WAAY,SAAA4D,GAAC,OAAIF,EAAIG,QAAQ,EAAG,EAAG5L,KAAKmG,KAAKwF,EAAIN,GAAIE,mDAIlD7O,KAAK8K,MAAMU,QAAQC,KAAKC,OAAOC,GAAGmC,UAEhD9N,KAAKmP,aAAeC,EAAE,8BACtBA,EAAE,QAAQC,OAAOrP,KAAKmP,cAClBnP,KAAK8K,MAAMU,QAAQC,KAAKC,OAAOC,GAAG2D,KACpCtP,KAAKmP,aAAaI,IAAI,CACpBC,mBAAoB,4CAItBxP,KAAKmP,aAAaI,IAAI,CACpBC,mBAAoB,yFAQV,IADFxP,KAAK8K,MAAMU,QAAQC,KAAKC,OAAOC,GAAGE,YAE9C7L,KAAKyP,2BAEPL,EAAE,kBAAkBM,SAAS,eAC7BN,EAAE,kBAAkBO,YAAY,eAEhC,IAAK,IAAI3U,EAAI,EAAGA,EAAIgF,KAAKyL,KAAKX,MAAM8E,OAAO7O,SAAU/F,EACnDgF,KAAK8K,MAAM+E,MAAM7P,KAAKyL,KAAKX,MAAM8E,OAAO5U,GAAG8P,MAAMvO,sDAKnD6S,EAAE,kBAAkBM,SAAS,eAC7BN,EAAE,kBAAkBO,YAAY,eAE5B3P,KAAK8P,oBACP9P,KAAK8P,mBAAoB,GAE3B,IAAK,IAAI9U,EAAI,EAAGA,EAAIgF,KAAKyL,KAAKX,MAAM8E,OAAO7O,SAAU/F,EACnDgF,KAAK8K,MAAMiF,KAAK/P,KAAKyL,KAAKX,MAAM8E,OAAO5U,GAAG8P,MAAMvO,KAGlD2L,SAAS8H,KAAKC,UAAY,EAC1B/H,SAASgI,gBAAgBD,UAAY,wCAMhCjQ,KAAK8K,MAAMU,QAAQC,KAAKC,OAAOC,GAAGmC,SACjC9N,KAAK8K,MAAMU,QAAQC,KAAKC,OAAOC,GAAGC,KAAO5L,KAAK8K,MAAMU,QAAQC,KAAKC,OAAOC,GAAGwE,QACzEnQ,KAAK8K,MAAMU,QAAQC,KAAKC,OAAOC,GAAGE,YAAc,GAC9C7L,KAAK8K,MAAMA,MAAMC,MAAMC,cAAgBZ,OAAOa,MAAMM,WAClDvL,KAAKoQ,YAAc3M,OAAO4M,cAC5BrQ,KAAKoQ,WAAa3M,OAAO4M,YACrBrQ,KAAKsQ,iBAIPtQ,KAAK8K,MAAMA,MAAMC,MAAMK,mDAanC,IAAImF,EAAOvQ,KAAKwQ,aAChB,YAAa7O,IAAT4O,GACM9M,OAAO4M,cAAgBE,EAAK,sDAQtCvT,EAAOyT,SAAS,EAAG,GAEnBrB,EAAE,0BAA0BO,YAAY,eACxCP,EAAE,sBAAsBO,YAAY,eACpCP,EAAE,0BAA0BM,SAAS,eACrCN,EAAE,sBAAsBM,SAAS,eAEjC1P,KAAK0Q,qBAAqBnB,IAAI,CAC5BX,MAAS5R,EAAO2T,WAAa,KAC7B7B,OAA+B,EAArB9R,EAAOqT,YAAkB,OAErCrQ,KAAK4Q,uBAAuBrB,IAAI,CAC9BX,MAAS5R,EAAO2T,WAAa,KAC7B7B,OAAU9R,EAAOqT,YAAc,OAEjC,IAAK,IAAIrV,EAAI,EAAGA,EAAIgF,KAAKyL,KAAKX,MAAM8E,OAAO7O,SAAU/F,EACnDgF,KAAK8K,MAAM+E,MAAM7P,KAAKyL,KAAKX,MAAM8E,OAAO5U,GAAG8P,MAAMvO,wDAKnD6S,EAAE,0BAA0BO,YAAY,eACxCP,EAAE,sBAAsBO,YAAY,eACpCP,EAAE,0BAA0BM,SAAS,eACrCN,EAAE,sBAAsBM,SAAS,eACjC,IAAK,IAAI1U,EAAI,EAAGA,EAAIgF,KAAKyL,KAAKX,MAAM8E,OAAO7O,SAAU/F,EACnDgF,KAAK8K,MAAMiF,KAAK/P,KAAKyL,KAAKX,MAAM8E,OAAO5U,GAAG8P,MAAMvO,wGAYlD,IAAIqU,EAAyBxB,EAAE,kCAC/BA,EAAE,QAAQC,OAAOuB,GAEjB5Q,KAAK4Q,uBAAyBA,uCAI9B,IAAI5I,EAAOuI,EAELM,EAAQ,CACZ,CAAC,KAAM,KAAM,KAAM,KAAM,IAAK,IAAK,EAAG,YACtC,CAAC,KAAM,KAAM,KAAM,KAAM,IAAK,IAAK,EAAG,kBAEtC,CAAC,KAAM,KAAM,KAAM,KAAM,IAAK,IAAK,EAAG,YAItC,CAAC,KAAM,KAAM,KAAM,KAAM,IAAK,IAAK,EAAG,iBACtC,CAAC,KAAM,KAAM,KAAM,KAAM,IAAK,IAAK,EAAG,0BAEtC,CAAC,KAAM,KAAM,KAAM,KAAM,IAAK,KAAM,EAAG,UACvC,CAAC,KAAM,KAAM,KAAM,KAAM,IAAK,KAAM,EAAG,sBAEvC,CAAC,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,EAAG,aAI1C,IADA7I,EAAQ6I,EAAM9P,OACPiH,KACL,GAAIvE,OAAOqN,OAAOlC,QAAUiC,EAAM7I,GAAO,IACvCvE,OAAOqN,OAAOhC,SAAW+B,EAAM7I,GAAO,IACtCvE,OAAOsN,mBAAqBF,EAAM7I,GAAO,GAAI,CAC7CuI,EAAOM,EAAM7I,GAEb,MAIJ,OAAOuI,oCAIPvQ,KAAKuM,WAAWyE,UAChBhR,KAAKyM,UAAUuE,UACfhR,KAAK0M,OAAOsE,UACZhR,KAAK6M,WAAWmE,UAChBhR,KAAKqO,OAAO2C,UACZhR,KAAKwO,WAAWwC,UAChBC,EAAAhH,EAAAH,EAAAlN,WAAA,UAAAoD,MAAA7E,KAAA6E,+ECzYJ,IAAAhD,EAAapC,EAAQ,GACrB8J,EAAW9J,EAAQ,IACnBsW,EAActW,EAAQ,IACtBgD,EAAahD,EAAQ,IACrBe,EAAqBf,EAAQ,GAAc+D,EAC3C5D,EAAAD,QAAA,SAAAS,GACA,IAAAuD,EAAA4F,EAAA3I,SAAA2I,EAAA3I,OAAAmV,EAAA,GAA0DlU,EAAAjB,QAAA,IAC1D,KAAAR,EAAA4V,OAAA,IAAA5V,KAAAuD,GAAAnD,EAAAmD,EAAAvD,EAAA,CAAkFU,MAAA2B,EAAAe,EAAApD,uBCPlFT,EAAA6D,EAAY/D,EAAQ,kBCApBE,EAAA6D,EAAAjD,OAAAsH,uCCCA,IAAAvE,EAAY7D,EAAQ,IACpBwW,EAAiBxW,EAAQ,IAAkBkL,OAAA,sBAE3ChL,EAAA6D,EAAAjD,OAAAqH,qBAAA,SAAAqB,GACA,OAAA3F,EAAA2F,EAAAgN,kCCJA,IAAAjU,EAAcvC,EAAQ,IACtByN,EAAgBzN,EAAQ,IACxBgP,EAAehP,EAAQ,IACvByW,EAAYzW,EAAQ,IACpB0W,EAAA,GAAAC,KACAC,EAAA,QAEArU,IAAA0D,EAAA1D,EAAA8E,GAAAoP,EAAA,WAEAG,EAAAD,UAAA5P,OACC0P,EAAA,WAEDG,EAAAD,KAAA,UAEO3W,EAAQ,GAARA,CAA0B0W,IAAA,SAEjCC,KAAA,SAAAE,GACA,YAAA9P,IAAA8P,EACAH,EAAAnW,KAAAyO,EAAA5J,OACAsR,EAAAnW,KAAAyO,EAAA5J,MAAAqI,EAAAoJ,yDCyBA,IA7CA,IAAAC,EAAiB9W,EAAQ,IACzB+W,EAAc/W,EAAQ,IACtBwC,EAAexC,EAAQ,IACvBoC,EAAapC,EAAQ,GACrB+J,EAAW/J,EAAQ,GACnB8M,EAAgB9M,EAAQ,IACxB+C,EAAU/C,EAAQ,GAClBgX,EAAAjU,EAAA,YACAkU,EAAAlU,EAAA,eACAmU,EAAApK,EAAAC,MAEAoK,EAAA,CACAC,aAAA,EACAC,qBAAA,EACAC,cAAA,EACAC,gBAAA,EACAC,aAAA,EACAC,eAAA,EACAC,cAAA,EACAC,sBAAA,EACAC,UAAA,EACAC,mBAAA,EACAC,gBAAA,EACAC,iBAAA,EACAC,mBAAA,EACAC,WAAA,EACAC,eAAA,EACAC,cAAA,EACAC,UAAA,EACAC,kBAAA,EACAC,QAAA,EACAC,aAAA,EACAC,eAAA,EACAC,eAAA,EACAC,gBAAA,EACAC,cAAA,EACAC,eAAA,EACAC,kBAAA,EACAC,kBAAA,EACAC,gBAAA,EACAC,kBAAA,EACAC,eAAA,EACAC,WAAA,GAGAC,EAAApC,EAAAI,GAAA/W,EAAA,EAAoDA,EAAA+Y,EAAAhT,OAAwB/F,IAAA,CAC5E,IAIAuB,EAJAyX,EAAAD,EAAA/Y,GACAiZ,EAAAlC,EAAAiC,GACAE,EAAAlX,EAAAgX,GACA/P,EAAAiQ,KAAAtX,UAEA,GAAAqH,IACAA,EAAA2N,IAAAjN,EAAAV,EAAA2N,EAAAE,GACA7N,EAAA4N,IAAAlN,EAAAV,EAAA4N,EAAAmC,GACAtM,EAAAsM,GAAAlC,EACAmC,GAAA,IAAA1X,KAAAmV,EAAAzN,EAAA1H,IAAAa,EAAA6G,EAAA1H,EAAAmV,EAAAnV,IAAA,qBCtDA,IAAA4X,EAAkBvZ,EAAQ,EAARA,CAAgB,eAClCwZ,EAAAzM,MAAA/K,UACA+E,MAAAyS,EAAAD,IAA0CvZ,EAAQ,EAARA,CAAiBwZ,EAAAD,EAAA,IAC3DpZ,EAAAD,QAAA,SAAAyB,GACA6X,EAAAD,GAAA5X,IAAA,kBCLAxB,EAAAD,QAAA,SAAAuZ,EAAApY,GACA,OAAUA,QAAAoY,4BCAV,IAAAC,EAAU1Z,EAAQ,IAElBG,EAAAD,QAAAY,OAAA,KAAA4D,qBAAA,GAAA5D,OAAA,SAAAwE,GACA,gBAAAoU,EAAApU,KAAAiC,MAAA,IAAAzG,OAAAwE,kCCHA,IAAAgR,EAActW,EAAQ,IACtBuC,EAAcvC,EAAQ,IACtBwC,EAAexC,EAAQ,IACvB+J,EAAW/J,EAAQ,GACnB8M,EAAgB9M,EAAQ,IACxB2Z,EAAkB3Z,EAAQ,IAC1B6C,EAAqB7C,EAAQ,IAC7BiJ,EAAqBjJ,EAAQ,IAC7BgX,EAAehX,EAAQ,EAARA,CAAgB,YAC/B4Z,IAAA,GAAA1T,MAAA,WAAAA,QAKA2T,EAAA,WAA8B,OAAAzU,MAE9BjF,EAAAD,QAAA,SAAA4Z,EAAAV,EAAAW,EAAAC,EAAAC,EAAAC,EAAAC,GACAR,EAAAI,EAAAX,EAAAY,GACA,IAeAI,EAAAzY,EAAA0Y,EAfAC,EAAA,SAAArN,GACA,IAAA2M,GAAA3M,KAAA5D,EAAA,OAAAA,EAAA4D,GACA,OAAAA,GACA,IAVA,OAWA,IAVA,SAUA,kBAA6C,WAAA8M,EAAA3U,KAAA6H,IACxC,kBAA4B,WAAA8M,EAAA3U,KAAA6H,KAEjCR,EAAA2M,EAAA,YACAmB,EAdA,UAcAN,EACAO,GAAA,EACAnR,EAAAyQ,EAAA9X,UACAyY,EAAApR,EAAA2N,IAAA3N,EAnBA,eAmBA4Q,GAAA5Q,EAAA4Q,GACAS,EAAAD,GAAAH,EAAAL,GACAU,EAAAV,EAAAM,EAAAD,EAAA,WAAAI,OAAA3T,EACA6T,EAAA,SAAAxB,GAAA/P,EAAAwR,SAAAJ,EAwBA,GArBAG,IACAP,EAAApR,EAAA2R,EAAAra,KAAA,IAAAuZ,OACAhZ,OAAAkB,WAAAqY,EAAAL,OAEAnX,EAAAwX,EAAA5N,GAAA,GAEA6J,GAAA,mBAAA+D,EAAArD,IAAAjN,EAAAsQ,EAAArD,EAAA6C,IAIAU,GAAAE,GAjCA,WAiCAA,EAAA9Z,OACA6Z,GAAA,EACAE,EAAA,WAAkC,OAAAD,EAAAla,KAAA6E,QAGlCkR,IAAA6D,IAAAP,IAAAY,GAAAnR,EAAA2N,IACAjN,EAAAV,EAAA2N,EAAA0D,GAGA5N,EAAAsM,GAAAsB,EACA5N,EAAAL,GAAAoN,EACAI,EAMA,GALAG,EAAA,CACAU,OAAAP,EAAAG,EAAAJ,EA9CA,UA+CApU,KAAAgU,EAAAQ,EAAAJ,EAhDA,QAiDAO,QAAAF,GAEAR,EAAA,IAAAxY,KAAAyY,EACAzY,KAAA0H,GAAA7G,EAAA6G,EAAA1H,EAAAyY,EAAAzY,SACKY,IAAA0D,EAAA1D,EAAA8E,GAAAuS,GAAAY,GAAApB,EAAAgB,GAEL,OAAAA,oBCnEAja,EAAAD,QAAiBF,EAAQ,GAARA,CAAmB,4BAAA+I,SAAAoC,wCCCpC,IAAAzJ,EAAa1B,EAAQ,IACrB+a,EAAiB/a,EAAQ,IACzB6C,EAAqB7C,EAAQ,IAC7Bqa,EAAA,GAGAra,EAAQ,EAARA,CAAiBqa,EAAqBra,EAAQ,EAARA,CAAgB,uBAA4B,OAAAoF,OAElFjF,EAAAD,QAAA,SAAA6Z,EAAAX,EAAAY,GACAD,EAAA/X,UAAAN,EAAA2Y,EAAA,CAAqDL,KAAAe,EAAA,EAAAf,KACrDnX,EAAAkX,EAAAX,EAAA,+BCXA,IAAApV,EAAShE,EAAQ,GACjBoD,EAAepD,EAAQ,IACvB+W,EAAc/W,EAAQ,IAEtBG,EAAAD,QAAiBF,EAAQ,IAAgBc,OAAAmH,iBAAA,SAAAuB,EAAAmF,GACzCvL,EAAAoG,GAKA,IAJA,IAGAvD,EAHAC,EAAA6Q,EAAApI,GACAxI,EAAAD,EAAAC,OACA/F,EAAA,EAEA+F,EAAA/F,GAAA4D,EAAAD,EAAAyF,EAAAvD,EAAAC,EAAA9F,KAAAuO,EAAA1I,IACA,OAAAuD,oBCTA,IAAAlG,EAAgBtD,EAAQ,IACxBgb,EAAehb,EAAQ,IACvBib,EAAsBjb,EAAQ,IAC9BG,EAAAD,QAAA,SAAAgb,GACA,gBAAAC,EAAAC,EAAAC,GACA,IAGAha,EAHAmI,EAAAlG,EAAA6X,GACAhV,EAAA6U,EAAAxR,EAAArD,QACAiH,EAAA6N,EAAAI,EAAAlV,GAIA,GAAA+U,GAAAE,MAAA,KAAAjV,EAAAiH,GAGA,IAFA/L,EAAAmI,EAAA4D,OAEA/L,EAAA,cAEK,KAAY8E,EAAAiH,EAAeA,IAAA,IAAA8N,GAAA9N,KAAA5D,IAChCA,EAAA4D,KAAAgO,EAAA,OAAAF,GAAA9N,GAAA,EACK,OAAA8N,IAAA,qBCnBL,IAAAI,EAAgBtb,EAAQ,IACxBub,EAAA7S,KAAA6S,IACApb,EAAAD,QAAA,SAAAoF,GACA,OAAAA,EAAA,EAAAiW,EAAAD,EAAAhW,GAAA,sCCJA,IAAAgW,EAAgBtb,EAAQ,IACxBwb,EAAA9S,KAAA8S,IACAD,EAAA7S,KAAA6S,IACApb,EAAAD,QAAA,SAAAkN,EAAAjH,GAEA,OADAiH,EAAAkO,EAAAlO,IACA,EAAAoO,EAAApO,EAAAjH,EAAA,GAAAoV,EAAAnO,EAAAjH,qBCLA,IAAAmH,EAAetN,EAAQ,GAAWsN,SAClCnN,EAAAD,QAAAoN,KAAAgI,8CCCA,IAAAmG,EAAczb,EAAQ,IACtB4W,EAAA,GACAA,EAAK5W,EAAQ,EAARA,CAAgB,oBACrB4W,EAAA,kBACE5W,EAAQ,GAARA,CAAqBc,OAAAkB,UAAA,sBACvB,iBAAAyZ,EAAArW,MAAA,MACG,oBCPH,IAAAsU,EAAU1Z,EAAQ,IAClByM,EAAUzM,EAAQ,EAARA,CAAgB,eAE1B0b,EAA+C,aAA/ChC,EAAA,WAA2B,OAAA5S,UAA3B,IASA3G,EAAAD,QAAA,SAAAoF,GACA,IAAAkE,EAAAmS,EAAAhR,EACA,YAAA5D,IAAAzB,EAAA,mBAAAA,EAAA,OAEA,iBAAAqW,EAVA,SAAArW,EAAA3D,GACA,IACA,OAAA2D,EAAA3D,GACG,MAAA+H,KAOHkS,CAAApS,EAAA1I,OAAAwE,GAAAmH,IAAAkP,EAEAD,EAAAhC,EAAAlQ,GAEA,WAAAmB,EAAA+O,EAAAlQ,KAAA,mBAAAA,EAAAqS,OAAA,YAAAlR,oBCpBA,IAAApI,EAAcvC,EAAQ,IACtB8b,EAAc9b,EAAQ,GAARA,EAA4B,GAE1CuC,IAAAqF,EAAA,UACAkT,OAAA,SAAAxV,GACA,OAAAwW,EAAAxW,uBCNA,IAAAyR,EAAc/W,EAAQ,IACtBsD,EAAgBtD,EAAQ,IACxByE,EAAazE,EAAQ,IAAe+D,EACpC5D,EAAAD,QAAA,SAAA6b,GACA,gBAAAzW,GAOA,IANA,IAKA3D,EALA6H,EAAAlG,EAAAgC,GACAY,EAAA6Q,EAAAvN,GACArD,EAAAD,EAAAC,OACA/F,EAAA,EACAqG,EAAA,GAEAN,EAAA/F,GAAAqE,EAAAlE,KAAAiJ,EAAA7H,EAAAuE,EAAA9F,OACAqG,EAAAC,KAAAqV,EAAA,CAAApa,EAAA6H,EAAA7H,IAAA6H,EAAA7H,IACK,OAAA8E,mBCbL,IAAAuV,EAGAA,EAAA,WACA,OAAA5W,KADA,GAIA,IAEA4W,KAAA,IAAAjT,SAAA,iBACC,MAAAW,GAED,iBAAAb,SAAAmT,EAAAnT,QAOA1I,EAAAD,QAAA8b,mBCnBA,IAAAvZ,EAAWzC,EAAQ,GAARA,CAAgB,QAC3BqD,EAAerD,EAAQ,GACvBqC,EAAUrC,EAAQ,GAClBic,EAAcjc,EAAQ,GAAc+D,EACpCgH,EAAA,EACAmR,EAAApb,OAAAob,cAAA,WACA,UAEAC,GAAcnc,EAAQ,GAARA,CAAkB,WAChC,OAAAkc,EAAApb,OAAAsb,kBAAA,OAEAC,EAAA,SAAA/W,GACA2W,EAAA3W,EAAA7C,EAAA,CAAqBpB,MAAA,CACrBjB,EAAA,OAAA2K,EACAgJ,EAAA,OAgCAuI,EAAAnc,EAAAD,QAAA,CACAwC,IAAAD,EACA8Z,MAAA,EACAC,QAhCA,SAAAlX,EAAA5D,GAEA,IAAA2B,EAAAiC,GAAA,uBAAAA,KAAA,iBAAAA,EAAA,SAAAA,EACA,IAAAjD,EAAAiD,EAAA7C,GAAA,CAEA,IAAAyZ,EAAA5W,GAAA,UAEA,IAAA5D,EAAA,UAEA2a,EAAA/W,GAEG,OAAAA,EAAA7C,GAAArC,GAsBHqc,QApBA,SAAAnX,EAAA5D,GACA,IAAAW,EAAAiD,EAAA7C,GAAA,CAEA,IAAAyZ,EAAA5W,GAAA,SAEA,IAAA5D,EAAA,SAEA2a,EAAA/W,GAEG,OAAAA,EAAA7C,GAAAsR,GAYH2I,SATA,SAAApX,GAEA,OADA6W,GAAAG,EAAAC,MAAAL,EAAA5W,KAAAjD,EAAAiD,EAAA7C,IAAA4Z,EAAA/W,GACAA,qBC3CA,IAAAyR,EAAc/W,EAAQ,IACtB2c,EAAW3c,EAAQ,IACnB2M,EAAU3M,EAAQ,IAClBG,EAAAD,QAAA,SAAAoF,GACA,IAAAmB,EAAAsQ,EAAAzR,GACAsX,EAAAD,EAAA5Y,EACA,GAAA6Y,EAKA,IAJA,IAGAjb,EAHAkb,EAAAD,EAAAtX,GACAb,EAAAkI,EAAA5I,EACA3D,EAAA,EAEAyc,EAAA1W,OAAA/F,GAAAqE,EAAAlE,KAAA+E,EAAA3D,EAAAkb,EAAAzc,OAAAqG,EAAAC,KAAA/E,GACG,OAAA8E,oBCZH,IAAAiT,EAAU1Z,EAAQ,IAClBG,EAAAD,QAAA6M,MAAA5J,SAAA,SAAA2Z,GACA,eAAApD,EAAAoD,qBCFA,IAAAxZ,EAAgBtD,EAAQ,IACxBiE,EAAWjE,EAAQ,IAAgB+D,EACnCoH,EAAA,GAAiBA,SAEjB4R,EAAA,iBAAAlU,gBAAA/H,OAAAqH,oBACArH,OAAAqH,oBAAAU,QAAA,GAUA1I,EAAAD,QAAA6D,EAAA,SAAAuB,GACA,OAAAyX,GAAA,mBAAA5R,EAAA5K,KAAA+E,GATA,SAAAA,GACA,IACA,OAAArB,EAAAqB,GACG,MAAAoE,GACH,OAAAqT,EAAAxQ,SAKAyQ,CAAA1X,GAAArB,EAAAX,EAAAgC,sBCfA,IAAAjC,EAAerD,EAAQ,GACvBoD,EAAepD,EAAQ,IACvBid,EAAA,SAAAzT,EAAAH,GAEA,GADAjG,EAAAoG,IACAnG,EAAAgG,IAAA,OAAAA,EAAA,MAAAxC,UAAAwC,EAAA,8BAEAlJ,EAAAD,QAAA,CACAgH,IAAApG,OAAA6H,iBAAA,gBACA,SAAAiO,EAAAsG,EAAAhW,GACA,KACAA,EAAclH,EAAQ,GAARA,CAAgB+I,SAAAxI,KAAiBP,EAAQ,IAAgB+D,EAAAjD,OAAAkB,UAAA,aAAAkF,IAAA,IACvE0P,EAAA,IACAsG,IAAAtG,aAAA7J,OACO,MAAArD,GAAYwT,GAAA,EACnB,gBAAA1T,EAAAH,GAIA,OAHA4T,EAAAzT,EAAAH,GACA6T,EAAA1T,EAAA2T,UAAA9T,EACAnC,EAAAsC,EAAAH,GACAG,GAVA,CAYK,IAAG,QAAAzC,GACRkW,uCCtBA,IAAAxG,EAAYzW,EAAQ,IAEpBG,EAAAD,QAAA,SAAAkd,EAAAN,GACA,QAAAM,GAAA3G,EAAA,WAEAqG,EAAAM,EAAA7c,KAAA,kBAAuD,GAAA6c,EAAA7c,KAAA,o3DCNlC8c,cAOnB,SAAAA,EAAYnN,EAAOoN,EAAGC,EAAGC,EAAOC,GAAW,IAAAC,+FAAAvO,CAAA/J,KAAAiY,IACzCK,EAAAtO,EAAAhK,KAAAiK,EAAAgO,GAAA9c,KAAA6E,KAAM8K,EAAO,EAAG,EAAG,MAEdyN,OAAS,IACdD,EAAKE,OAASH,EACdC,EAAKG,WAAY,EACjBH,EAAKI,QAAU5N,EAAMwD,IAAIhC,MAAM,EAAG,EAAG,UAAW,eAChDgM,EAAKK,OAASL,EAAKI,QAAQ9J,MAC3B0J,EAAKM,MAAQ9N,EAAMwD,IAAIhC,MAAM,EAAG,EAAG,UAAW,uBAC9CgM,EAAKO,UAAY/N,EAAMwD,IAAIhC,MAAM,EAAG,EAAG,UAAW,yBAClDgM,EAAKQ,UAAW,EAVyB,OAYzCR,EAAKS,OAASjO,EAAMwD,IAAI0K,UAAU,EADrB,GACgC,CAACV,EAAKI,QAASJ,EAAKM,QACjEN,EAAKF,MAAQA,EACbE,EAAKI,QAAQO,KAAOb,EACpBE,EAAKM,MAAMK,KAAOb,EAClBE,EAAKY,OAASZ,EAAKI,QAAQ9J,MAC3B0J,EAAKa,WAAa,CAAEjB,EAAG,EAAGC,EAAG,GAC7BG,EAAKc,YAAc,CAAElB,EAAG,EAAGC,EAAG,GAC9BG,EAAKe,UAAYvO,EAAMwD,IAAI0K,UAAU,EAAG,EAAG,CAACV,EAAKS,OAAQT,EAAKO,YAC9DP,EAAKhK,IAAIgK,EAAKe,WACdf,EAAKgB,QAAU,IAAIlP,OAAOmP,OAAOC,aACjClB,EAAKmB,cAAe,EACpBtB,GAAKG,EAAKI,QAAQ5J,OAAS,EAE3BwJ,EAAKoB,KAAO,EACZpB,EAAKqB,KAAO,EACZrB,EAAKsB,OAAS,EACdtB,EAAKuB,QAAU,EACfvB,EAAKwB,OAAS,EACdxB,EAAKyB,OAAS,EACdzB,EAAK0B,OAAS,GACd1B,EAAK2B,MAAQ,EACb3B,EAAK4B,UAAY5B,EAAK6B,MACtB7B,EAAK8B,YAAYlC,EAAGC,GACpBG,EAAK+B,MAAQnC,EACbI,EAAKgC,MAAQnC,EAEbG,EAAKiC,OAAS,IAAInQ,OAAOoQ,KAAKC,OAAO,EAAG,EAAG,GAC3CnC,EAAKoC,OAAS,GAvC2BpC,wPAPRlO,OAAOuQ,YAAYC,oDAiD3C9P,EAAO6C,GAChB3N,KAAK6a,WAAa/P,EAAMgQ,QAAQC,KAAKnM,MACrC5O,KAAKgb,YAAclQ,EAAMgQ,QAAQC,KAAKjM,OAASnB,EAAKjE,MACpD1J,KAAKib,aAAetN,EAAKkM,QACzB7Z,KAAKkb,SAAWvN,EAAKuN,SACrBlb,KAAKmb,SAAWxN,EAAKwN,SACrBnb,KAAKob,MAAQzN,EAAKyN,MAClBpb,KAAKqb,MAAQ1N,EAAK0N,MAClBrb,KAAKsb,QAAU3N,EAAK2N,QACpBtb,KAAKga,OAASrM,EAAKqM,OACnBha,KAAKub,QAAU5N,EAAK4N,QACpBvb,KAAKwb,UAAY7N,EAAK6N,UACtBxb,KAAKyb,cAAgB9N,EAAK8N,cAC1Bzb,KAAK0b,YAAc/N,EAAK+N,YACxB1b,KAAK2b,WAAavR,OAAO9G,KAAKsY,QAAQ,EAAG,MACzC5b,KAAK6b,QAAUlO,EAAKkO,QACpB7b,KAAK8b,OAAShR,EAAMwD,IAAIhC,MAAMtM,KAAKkY,EAAGlY,KAAKgb,YAAa,UAAW,sBACnEhb,KAAK8b,OAAOvN,UAAU,GAAK,GAE3BvO,KAAK8b,OAAO7C,KAAO,UACnBjZ,KAAK8b,OAAOC,MAAQ,GACpB/b,KAAKgc,aAAehc,KAAK8b,OAAOG,cAChCjc,KAAKkc,SAAW,EAChBlc,KAAKmc,SAAW,EAChBnc,KAAKqZ,UAAUc,MAAQ,mCAIvBna,KAAKyZ,cAAe,EACpBzZ,KAAK0Y,QAAQ0D,IAAI,eACjBpc,KAAKsZ,QAAQ8C,IAAI,iDAOZC,EAAUC,EAAIpgB,EAAG2d,GAEtB,GAAI7Z,KAAKwY,SAAWxY,KAAKyY,UAAW,CAClCzY,KAAKqa,MAAQra,KAAKkY,EAClBlY,KAAKsa,MAAQta,KAAKmY,EAElB,IAAIoE,EAAUvc,KAAKkY,EACfsE,EAAUxc,KAAKmY,EAGnBnY,KAAK6Z,QAAUA,EAAUyC,EAEzBtc,KAAKia,MAAQja,KAAKyc,KAChBzc,KAAKia,MACL3W,KAAKoZ,IAAI1c,KAAK2b,WAAazf,EAAI8D,KAAKwb,WACpCxb,KAAKub,QACLvb,KAAK2c,QAAQ,EAAIrZ,KAAKsZ,IAAI5c,KAAK8Z,SAC1B,MAALwC,GAGFtc,KAAK2Z,MAAQ3Z,KAAK6Z,QAAW7Z,KAAK+Z,OAClC/Z,KAAK0Z,MAAQ1Z,KAAKia,MAAQja,KAAK8Z,OAG/B0C,GAAWxc,KAAK2Z,KAChB4C,GAAWvc,KAAK0Z,KAEhB1Z,KAAK+Z,QAAU/Z,KAAKqb,MACpBrb,KAAK8Z,QAAU9Z,KAAKob,MAEpBpb,KAAK2Z,KAAO,EACZ3Z,KAAK0Z,KAAO,EAKZ1Z,KAAKkY,EAAIqE,EAETvc,KAAKmY,EAAIqE,EAET,IAAI5N,EAAQ5O,KAAKkZ,OACbpK,EAAS9O,KAAKkZ,OAElBlZ,KAAKmZ,WAAanZ,KAAK6c,kBAAkB7c,KAAK+Y,OAAOb,EAAGlY,KAAK+Y,OAAOZ,EAAGnY,KAAKqZ,UAAUc,OAItF,IAAIjC,EAAIlY,KAAKmZ,WAAWjB,EAAIlY,KAAKkY,EAC7BC,EAAInY,KAAKmZ,WAAWhB,EAAInY,KAAKmY,EAC7BD,EAAItJ,EAAQ,EAAI5O,KAAK6a,YACvB7a,KAAKkY,EAAIlY,KAAK6a,YAAcjM,EAAQ,EAAI,GACxC5O,KAAK8Z,QAAgB9Z,KAAK8Z,OAAS9Z,KAAKia,OAASja,KAAKga,QAAvC,EACfha,KAAK8c,oBACI5E,EAAItJ,EAAQ,EAAI,IACzB5O,KAAKkY,EAAItJ,EAAQ,EAAI,EACrB5O,KAAK8Z,QAAgB9Z,KAAK8Z,OAAS9Z,KAAKia,OAASja,KAAKga,QAAvC,EACfha,KAAK8c,oBAGH3E,EAAIrJ,EAAS,EAAI9O,KAAKgb,aACxBhb,KAAKmY,EAAInY,KAAKgb,YAAclM,EAAS,EAErC9O,KAAKwY,QAAS,EACdxY,KAAK4Z,OAAS,GACY,IAAtB5Z,KAAKyZ,cACPzZ,KAAK+c,OAGE5E,EAAIrJ,EAAS,EAAI,IAC1B9O,KAAKmY,EAAKrJ,EAAS,EAAK,EACxB9O,KAAK+Z,OAAe/Z,KAAK+Z,OAAS/Z,KAAKga,QAAxB,EACfha,KAAK8c,oBAGP9c,KAAK8Y,UAAW,EAEhB,IADA,IAAIkE,EAAUhd,KAAKkZ,OAASlZ,KAAKkZ,OACxBle,EAAI,EAAGA,EAAIqhB,EAAStb,SAAU/F,EACrC,GAAIqhB,EAASrhB,KAAOgF,KAAM,CACxB,IAEIC,EAAIiY,GAFCmE,EAASrhB,GAAGme,WAAWjB,EAAImE,EAASrhB,GAAGkd,GAG5C3P,EAAI4P,GAFCkE,EAASrhB,GAAGme,WAAWhB,EAAIkE,EAASrhB,GAAGmd,GAG5C8E,EAAM,IAAI7S,OAAO9G,KAAK4Z,QAAQjd,EAAGsI,GACjC4U,EAAOF,EAAIG,WAEf,GADAH,EAAII,YACAF,EAAOH,EAqBT,OAPAhd,KAAK8c,mBACL9c,KAAK8Z,QAAUmD,EAAI/E,EAAIlY,KAAKyb,cAC5Bzb,KAAK+Z,QAAUzW,KAAK6S,IAAI,EAAG8G,EAAI9E,GAAKnY,KAAKyb,cACzCY,EAASrhB,GAAG8e,SAAWmD,EAAI/E,EAAIlY,KAAKyb,cACpCY,EAASrhB,GAAG+e,QAAUzW,KAAK6S,IAAI,GAAI8G,EAAI9E,GAAKnY,KAAKyb,cACjDY,EAASrhB,GAAG8d,UAAW,OACvB9Y,KAAK8Y,UAAW,IAOxB,IAAIwE,EAAYtd,KAAKud,WACnBvd,KAAKgb,YAAc,IACnBhb,KAAKgb,YAAc,GACnBhb,KAAKmY,GAEPnY,KAAK8b,OAAO5D,EAAIlY,KAAKqZ,UAAUnB,EAAIlY,KAAKkY,EACxClY,KAAK8b,OAAO0B,eACVxd,KAAKkZ,OAASoE,EACdtd,KAAKgc,aAAesB,GAEtBtd,KAAK8b,OAAOC,MAAQ,GAAM/b,KAAK2c,QAAQW,EAAY,IACnDtd,KAAK4Z,QAAU5Z,KAAKsb,QAEpBtb,KAAKqZ,UAAUc,OAASna,KAAK4Z,OAE7B5Z,KAAKua,OAAOrC,EAAIlY,KAAKmZ,WAAWjB,EAAIlY,KAAKkY,EACzClY,KAAKua,OAAOpC,EAAInY,KAAKmZ,WAAWhB,EAAInY,KAAKmY,EACzCnY,KAAKua,OAAOrB,OAASlZ,KAAK0a,kDAItB1a,KAAKyZ,cACPzZ,KAAKsZ,QAAQmE,KAAK,kDAIR3S,EAAO4S,EAAMC,QACDhc,IAApB3B,KAAK4d,YACP5d,KAAK4d,WAAWC,OAElB7d,KAAK8Z,OAAS,EACd9Z,KAAK+Z,OAAS,EACd/Z,KAAK4Z,QAAU,EACf5Z,KAAKyY,WAAY,EACjBzY,KAAKqZ,UAAUnB,EAAI,EACnBlY,KAAKqZ,UAAUlB,EAAI,EACnB,IAAI2F,EAAO9d,KAAK6a,WAAa8C,EACzBI,GAAQ/d,KAAKgb,YAAc,EAE3BgD,EAAMN,GADItT,OAAO9G,KAAKsY,QAAQ,GAAI,KAAO,KAE7C5b,KAAKwY,QAAS,EACdxY,KAAK4d,WAAa9S,EAAMmT,OAAO3P,IAAI,CACjC4P,QAASle,KAAKqZ,UACdnB,EAAG4F,EACHK,SAAUH,EACVI,MAAO,CACLlG,EAAG,CAAEjc,MAAO6hB,EAAMK,SAAUH,EAAKK,KAAM,eACvClG,EAAG,CACDlc,MAAO8hB,EACPI,SAAUH,EACVK,KAAM,uDAODvT,EAAO4S,EAAMC,GAAW,IAAAW,EAAAte,UAEX2B,IAApB3B,KAAK4d,YACP5d,KAAK4d,WAAWC,OAElB,IAAIU,EAAcve,KAAKgb,YAAc,EACrChb,KAAKyY,WAAY,EACjBzY,KAAKwY,QAAS,EACdxY,KAAKqZ,UAAUnB,GAAKlY,KAAK6a,WAAa8C,EACtC3d,KAAKqZ,UAAUlB,GAAKoG,EAChBve,KAAKmY,GAAKoG,EAAc,IAC1Bve,KAAKmY,GAAKnY,KAAK0b,aAEjB,IAEI8C,EAAUpU,OAAO9G,KAAKsY,QAAQ,GAAI,KAAO,IACzCoC,EAAMN,EAAOc,EACbljB,EAAIoiB,GAAQ,EAAIc,GACpBxe,KAAK4Z,OAA0C,GAAjCxP,OAAO9G,KAAKsY,SAAS,IAAK,KACxC5b,KAAK4d,WAAa9S,EAAMmT,OAAO3P,IAAI,CACjC4P,QAASle,KAAKqZ,UACdnB,EARS,EASTC,EARS,EASTgG,SAAUH,EACVS,MAAOnjB,EACP+iB,KAAM,SACNK,WAAY,WACVJ,EAAK9F,QAAS,EACd8F,EAAK7F,WAAY,EACjB6F,EAAKjF,UAAUe,YAAY,EAAG,GAG9BkE,EAAK5E,KAAO,EACZ4E,EAAK3E,KAAO,EACZ2E,EAAKrE,MAAQ,EACbqE,EAAKzE,QAAU,yCAKT8E,QACchd,IAApB3B,KAAK4d,YAA4B5d,KAAK4d,WAAWgB,cAChC,GAAfD,EACF3e,KAAK4d,WAAWiB,QAEhB7e,KAAK4d,WAAWkB,4CAKZC,GACR/e,KAAKwY,OAASuG,kCAGR9iB,GACN,OAAO+D,KAAKgf,MAAM/iB,EAAO,EAAG,iCAGxBA,EAAOka,EAAKC,GAChB,OAAO9S,KAAK6S,IAAI7S,KAAK8S,IAAID,EAAKla,GAAQma,sCAG7B8B,EAAGC,EAAGjc,GACf,IAAIlB,EAAIgF,KAAK2c,SAASzgB,EAAIgc,IAAMC,EAAID,IACpC,OAAOld,EAAIA,GAAK,EAAI,EAAIA,gCAGrBkd,EAAGC,EAAGjc,GACT,OAAQ,EAAIA,GAAKgc,EAAIhc,EAAIic,+BAGtBlc,EAAO8E,GACV,OAAO9E,EAAQ8E,+CAGIke,GACnB,IAAKjf,KAAKyY,YAA6B,IAAhBzY,KAAKwY,OAAiB,CAC3CxY,KAAKwY,QAAS,EACd,IAAI5J,EAAQ5O,KAAK0Y,QAAQwG,aACzBlf,KAAK+Z,QAAU/Z,KAAKmb,SACpB,IAAIgC,EAAO7Z,KAAKsZ,IAAIqC,EAAQ/G,GAAKlY,KAAKmZ,WAAWjB,EAAIlY,KAAKkY,IACtD+G,EAAQ/G,EAAIlY,KAAKkY,EACnBlY,KAAK8Z,QAAU9Z,KAAKkb,UAAYiC,EAAOvO,EAAQ,GAE/C5O,KAAK8Z,QAAU9Z,KAAKkb,UAAYiC,EAAOvO,EAAQ,GAEjD5O,KAAK4Z,OAAe5Z,KAAK8Z,OAAS,GAApB,GACd9Z,KAAKqZ,UAAUc,MAAQna,KAAKK,KAC1B,GAA6C,IAAvCiD,KAAK6b,MAAMnf,KAAK+Z,OAAQ/Z,KAAK8Z,QAAiB,MACpD,KAEF9Z,KAAKsZ,QAAQmE,KAAK,oDAIbwB,GACP,IAAIhf,EAAKD,KAAKmZ,WAAWjB,EAAIlY,KAAKkY,EAAK+G,EAAQ/G,EAC3C3P,EAAKvI,KAAKmZ,WAAWhB,EAAInY,KAAKmY,EAAK8G,EAAQ9G,EACpC7U,KAAK8b,KAAKnf,EAAIA,EAAIsI,EAAIA,IACrBvI,KAAK0a,QACf1a,KAAKqf,qBAAqBJ,iCAK5Bjf,KAAKsZ,QAAQmE,KAAK,WAAY,CAC5BvF,EAAGlY,KAAKkY,EACRC,EAAGnY,KAAKgb,YACR/B,KAAMjZ,KAAKoY,QAEbpY,KAAK8b,OAAO9K,UACZhR,KAAKgR,oDAGWkH,EAAGC,EAAGgC,GAA6B,IAAtBmF,EAAsB5d,UAAAX,OAAA,QAAAY,IAAAD,UAAA,GAAAA,UAAA,GAAd,EAAG6d,EAAW7d,UAAAX,OAAA,QAAAY,IAAAD,UAAA,GAAAA,UAAA,GAAH,EAC5C8d,EAAkB,OAARrF,EACVpd,EAAIuG,KAAKoZ,IAAI8C,GACbnkB,EAAIiI,KAAKmc,IAAID,GAKjB,MAAO,CACLtH,GALFA,GAAKoH,GAEUjkB,GADf8c,GAAKoH,GACkBxiB,EAGXuiB,EACVnH,EAHSD,EAAInb,EAAIob,EAAI9c,EAGXkkB,sjCC3XKtH,cAOnB,SAAAA,EAAYnN,EAAO4U,EAAY/R,GAAM,IAAA2K,+FAAAqH,CAAA3f,KAAAiY,GACnC,QAAIrJ,EAAQ9D,EAAMgQ,QAAQC,KAAKnM,MAC3BE,EAAShE,EAAMgQ,QAAQC,KAAKjM,SAChC9O,OAAA4f,EAAA3H,GAAA9c,KAAA6E,KAAM8K,EAAO8D,EAAQ,EAAGE,EAAS,EAAG,gBAApCwJ,oDACKuH,SAAS,IACdvH,EAAKwH,QAAUhV,EAAMwD,IAAIhC,MAAM,EAAG,EAAG,SACrCgM,EAAKwH,QAAQvR,UAAU,EAAG,GAC1B+J,EAAKwH,QAAQtC,eAAe5O,EAAOE,GACnCwJ,EAAKwH,QAAQD,SAASvH,EAAKyH,MAAQ,GACnCL,EAAWpR,IAAIgK,EAAKwH,SAAS,GAC7BxH,EAAKwH,QAAQ7G,KAAO,UACpBX,EAAKwH,QAAQ/D,MAAQ,EAErBzD,EAAKxN,MAAQA,EACbwN,EAAK0H,OAASrS,EACd2K,EAAK/J,UAAU,IACf+J,EAAK2H,OAAS,IACd3H,EAAK4H,OAAS,IACd5H,EAAKyD,MAAQ,EACb2D,EAAWpR,IAAX6R,EAAA7H,IAAqB,GACrB,IAAI8H,EACFtV,EAAMuV,WAAa,EACf/H,EAAK0H,OAAOM,UAAUC,QACtBjI,EAAK0H,OAAOM,UAAUE,QAvBO,OAwBnClI,EAAKmI,MAAQ3V,EAAMwD,IAAIoS,WACrB5V,EAAMgQ,QAAQC,KAAKnM,MAAQ,EAC3B9D,EAAMgQ,QAAQC,KAAKjM,OAAS,EAAI,IAChC,gBACAsR,GAEF9H,EAAKmI,MAAME,YAAY,IACvBrI,EAAKmI,MAAMlS,UAAU,IACrBmR,EAAWpR,IAAIgK,EAAKmI,OACpBnI,EAAKmI,MAAM1E,MAAQ,EACnBzD,EAAKmI,MAAMZ,SAASvH,EAAKyH,MAAQ,GAEjCzH,EAAKsI,MAAQ9V,EAAMwD,IAAIoS,WACrB5V,EAAMgQ,QAAQC,KAAKnM,MAAQ,EAC3B9D,EAAMgQ,QAAQC,KAAKjM,OAAS,EAC5B,gBACA,UAAYhE,EAAMuV,YAEpB/H,EAAKsI,MAAMD,YAAY,IACvBrI,EAAKsI,MAAMrS,UAAU,IACrBmR,EAAWpR,IAAIgK,EAAKsI,OACpBtI,EAAKsI,MAAM7E,MAAQ,EACnBzD,EAAKsI,MAAMf,SAASvH,EAAKyH,MAAQ,GAES,OAAtCc,aAAaC,QAAQ,cACvBD,aAAaE,QAAQ,YAAa,GAGhCjW,EAAMuV,WAAaQ,aAAaC,QAAQ,cAC1CD,aAAaE,QAAQ,YAAajW,EAAMuV,YAG1C/H,EAAK0I,UAAYlW,EAAMwD,IAAIoS,WACzB5V,EAAMgQ,QAAQC,KAAKnM,MAAQ,EAC3B9D,EAAMgQ,QAAQC,KAAKjM,OAAS,EAAI,GAChC,gBACA,eAAiB+R,aAAaC,QAAQ,cAExCxI,EAAK0I,UAAUL,YAAY,IAC3BrI,EAAK0I,UAAUzS,UAAU,IACzBmR,EAAWpR,IAAIgK,EAAK0I,WACpB1I,EAAK0I,UAAUjF,MAAQ,EACvBzD,EAAK0I,UAAUnB,SAASvH,EAAKyH,MAAQ,GAErCzH,EAAK2I,QAAUnW,EAAMwD,IAAIU,OACvBlE,EAAMgQ,QAAQC,KAAKnM,MAAQ,EAC3B9D,EAAMgQ,QAAQC,KAAKjM,OAAS,EAAI,IAChC,WAEFwJ,EAAK2I,QACFC,eAAe,CAAEC,eAAe,IAChC9V,GAAG,cAAe,kBAAMiN,EAAK8I,yBAChC9I,EAAK2I,QAAQlF,MAAQ,EACrBzD,EAAK2I,QAAQpB,SAASvH,EAAKyH,MAAQ,GAEnCL,EAAWpR,IAAIgK,EAAK2I,SAIpBnW,EAAMmT,OAAO3P,IAAI,CACf4P,QAAS5F,EAAKwH,QACd/D,MAAO,GACPsC,KAAM,QACNF,SAAU,MAGZrT,EAAMmT,OAAO3P,IAAI,CACf4P,QAASiC,EAAA7H,GACT2H,OAAQ,EACRC,OAAQ,EACRnE,MAAO,EACPsC,KAAM,QACNF,SAAU,MAGZrT,EAAMmT,OAAO3P,IAAI,CACf4P,QAAS5F,EAAKmI,MACd1E,MAAO,EACPsC,KAAM,QACNF,SAAU,IACVM,MAAO,MAGT3T,EAAMmT,OAAO3P,IAAI,CACf4P,QAAS5F,EAAKsI,MACd7E,MAAO,EACPsC,KAAM,QACNF,SAAU,IACVM,MAAO,MAGT3T,EAAMmT,OAAO3P,IAAI,CACf4P,QAAS5F,EAAK0I,UACdjF,MAAO,EACPsC,KAAM,QACNF,SAAU,IACVM,MAAO,MAGT3T,EAAMmT,OAAO3P,IAAI,CACf4P,QAAS5F,EAAK2I,QACdlF,MAAO,EACPsC,KAAM,QACNF,SAAU,IACVM,MAAO,MAETnG,EAAK+I,MAAQvW,EAAMwW,MAAMhT,IAAI,QAAS,CACpCiT,MAAM,EACNC,OAAQ,KAEVlJ,EAAK+I,MAAMI,OAtIwBnJ,wPAPFlO,OAAOuQ,YAAY+G,6DAkJpD1hB,KAAKqhB,MAAMxD,OACX7d,KAAK8K,MAAMA,MAAMsD,MAAM,OAAQ,CAAEuT,UAAU,EAAOC,OAAQ5hB,KAAK8K,MAAM8W,2CAKlD,OAAf5hB,KAAKqhB,QACPrhB,KAAKqhB,MAAMxD,OACX7d,KAAKqhB,MAAQ,MAGfrhB,KAAK4gB,MAAM5P,UACXhR,KAAKygB,MAAMzP,UACXhR,KAAKghB,UAAUhQ,UACfhR,KAAKihB,QAAQjQ,UACbhR,KAAK6hB,WAAa,KAClB5Q,EAAA2O,EAAA3H,EAAArb,WAAA,UAAAoD,MAAA7E,KAAA6E,yjCClKiB8hB,cAUnB,SAAAA,EAAYhX,EAAOnF,EAAIoc,EAAWC,EAAMC,EAAYC,GAAK,IAAA5J,mGAAA6J,CAAAniB,KAAA8hB,KACvD9hB,MAAAsY,MAAA8J,EAAAN,GAAA3mB,KAAA6E,KAAM8K,EAAO,EAAG,EAAG,yDAEduX,SAAWN,EAChBzJ,EAAK/c,KAAOymB,EACZ1J,EAAK2J,WAAaA,EAClB3J,EAAKgK,UAAYL,EAAWM,MAC5BjK,EAAKkK,QAAQlK,EAAKgK,WAClBhK,EAAK4J,IAAMA,EACX5J,EAAKmK,WAAa,IAClBnK,EAAKgB,QAAU,IAAIlP,OAAOmP,OAAOC,aACjC1O,EAAMwD,IAAIoU,SAAVC,EAAArK,IACAA,EAAKsK,GAAKjd,EACV2S,EAAKuK,YAAc,KACnBvK,EAAKwK,YAAc,KACnBxK,EAAKyK,YAAczK,EAAK0K,YAAY,EAAG1K,EAAKwK,aAC5CxK,EAAK2K,SAAW7Y,OAAO9G,KAAKsY,QAAQtD,EAAKuK,YAAavK,EAAKwK,aAE3DxK,EAAK4K,UAAYpY,EAAMwD,IAAIJ,MAAM,EAAG,EAAG6T,EAAWzJ,EAAK6K,gBAAgB,GAEvE7K,EAAK8K,UAAYtY,EAAMwD,IAAIhC,MAAM,EAAG,EAAG,SACvCgM,EAAK8K,UAAU7U,UAAU,GAAK,GAC9B+J,EAAK+K,QAAQrB,GACb1J,EAAK6K,eAAiBlB,EAAWqB,QACjChL,EAAKe,UAAYvO,EAAMwD,IAAI0K,UAAU,EAAG,GACxC,IAAIA,EAAYlO,EAAMwD,IAAI0K,UAAU,EAAG,EAAG,CAACV,EAAK4K,UAAW5K,EAAK8K,YAzBT,OA2BvD9K,EAAKe,UAAU/K,IAAI0K,GACnBV,EAAKiL,QAAS,EACdjL,EAAKkL,SAAU,EACflL,EAAKmL,YAAa,EA9BqCnL,wPAVhBlO,OAAOuQ,YAAY+I,4CA4C1D1jB,KAAKojB,UAAUhH,IAAI,4CAGhBngB,GACH,OAAOA,EAAQ,yCAGJ0nB,EAAMC,EAAM3D,EAAQC,EAAQ2D,GACvC,IAAI3L,EAAIyL,EACJxL,EAAIyL,EAER5jB,KAAKqZ,UAAUe,YAAYlC,EAAGC,GAG9BnY,KAAK2d,UAAYkG,EACjB7jB,KAAKkjB,UAAUY,SAAS7D,EAASjgB,KAAK2d,UAAWuC,GACjDlgB,KAAK+jB,UAAY/jB,KAAKkjB,UAAUc,YAChChkB,KAAKikB,UAAYjkB,KAAK+jB,UAAUG,KAAKhM,EAAIlY,KAAKkjB,UAAUjD,OACxDjgB,KAAKmkB,WAAankB,KAAK+jB,UAAUG,KAAK/L,EAAInY,KAAKkjB,UAAUhD,OACzDlgB,KAAKojB,UAAU5F,eAAexd,KAAKikB,UAAWjkB,KAAKmkB,oDAGrCzG,EAAM0G,EAAOtZ,IACH,IAApB9K,KAAKyjB,YACPzjB,KAAKqkB,WAAWvZ,EAAOsZ,mCAInBE,GACNA,EAAI/S,KAAK,kBAAMjO,KAAKuC,OAAS,wCAGpBiF,EAAOsZ,GACZpkB,KAAK+iB,aAAe/iB,KAAKijB,UAE3BjjB,KAAK+iB,YAAc,EACnB/iB,KAAKijB,SAAW7Y,OAAO9G,KAAKsY,QAAQ5b,KAAK6iB,YAAa7iB,KAAK8iB,aAC3D9iB,KAAKukB,aAAa,GAAK,KACvBvkB,KAAKwkB,gBAAgB1Z,EAAO9K,KAAKsiB,YAEjCtiB,KAAK+iB,aAAeqB,uCAIXrE,GACX/f,KAAKykB,SAAS5E,SAASE,uCAGb5J,EAAKC,GACf,OADmC1U,UAAAX,OAAA,QAAAY,IAAAD,UAAA,IAAAA,UAAA,GAE1B0I,OAAO9G,KAAKsY,QAAQzF,EAAKC,GAEzBhM,OAAO9G,KAAKsY,QAAc,IAANzF,EAAiB,IAANC,GAAa,oCAI/CsO,GACN1kB,KAAKkjB,UAAUG,QAAQ,MACvBrjB,KAAKkjB,UAAUyB,cAAcD,GAC7B1kB,KAAK4kB,YAAc5kB,KAAKkjB,UAAU2B,SAAS7C,KAAK4C,6CAGzC9Z,EAAOga,EAAMC,GAA4C,IAAvCxD,EAAuC7f,UAAAX,OAAA,QAAAY,IAAAD,UAAA,IAAAA,UAAA,GAAzBsjB,IAAyBtjB,UAAAX,OAAA,QAAAY,IAAAD,UAAA,KAAAA,UAAA,GAChE,GAAIqjB,EAAM,EAAG,CACX/kB,KAAKkjB,UAAU+B,OAAOjlB,KAAKiiB,WAAWqB,QAASwB,EAAMC,GACrD/kB,KAAKkjB,UAAUgC,aAAa,EAAGJ,EAAMvD,EAAM,GAC3C,IAAI9C,EAAQze,KAAKkjB,UAAUiC,MAAMC,WAAW,GAAGC,qBAAuBN,EACtE/kB,KAAKkjB,UAAU+B,OAAOH,EAAM9kB,KAAKiiB,WAAWqB,QAASyB,GACrD/kB,KAAKkjB,UAAUoC,aAAa,EAAGtlB,KAAKiiB,WAAWqB,SAAS,EAAM7E,GAGhEze,KAAKulB,SAAU,EACfvlB,KAAKglB,iBAAmBA,EACxBhlB,KAAKwlB,iBAAmBV,kCAIxB9kB,KAAKkjB,UAAUuC,cACfzlB,KAAKkjB,UAAU2B,SAASa,iBACxB1lB,KAAKkjB,UAAUgC,aAAa,EAAGllB,KAAKiiB,WAAWqB,SAAS,EAAM,2CAGhDxY,EAAOmX,GACrB,IAAI0D,EAAMvb,OAAO9G,KAAKsY,QAAQ,EAAGqG,EAAWlhB,OAAS,GACjD+jB,EAAO7C,EAAW0D,GAmBtB3lB,KAAK4lB,SACH9a,EACAmX,EAAW0D,GACX3lB,KAAKyiB,YACL,GACA,GAEEziB,KAAKkiB,IAAIrlB,eAAeioB,IAC1Bha,EAAMwW,MAAMG,KAAKzhB,KAAKkiB,IAAI4C,wCAIlBha,EAAOoX,GACjB,IAAIyD,EAAMvb,OAAO9G,KAAKsY,QAAQ,EAAGsG,EAAInhB,OAAS,GAC9C+J,EAAMwW,MAAMG,KAAKS,EAAIyD,GAAM,CAAEnE,OAAQ,uCAG7B1W,GACR9K,KAAK+iB,YAAc,EACnB/iB,KAAKwkB,gBAAgB1Z,EAAO9K,KAAKiiB,WAAW4D,6CAGhC/a,EAAO2T,GAAO,IAAAH,EAAAte,KAC1BA,KAAK+iB,YAAc,OACLphB,IAAV8c,EACF3T,EAAM4S,KAAKoI,YAAYrH,EAAO,kBAAMH,EAAKkG,gBAAgB1Z,EAAOwT,EAAK2D,WAAW8D,YAAY/lB,MAE5FA,KAAKwkB,gBAAgB1Z,EAAO9K,KAAKiiB,WAAW8D,2CAKxCjb,GACN9K,KAAK+iB,YAAc,EACnB/iB,KAAKwkB,gBAAgB1Z,EAAO9K,KAAKiiB,WAAW+D,0CAGjC7P,EAAKC,GAChB,IAAI6P,EAAY,IAAN9P,EACN+P,EAAa,IAAN9P,EACP+P,EAAS/b,OAAO9G,KAAKsY,QAAQqK,EAAKC,GAAQ,IAC9ClmB,KAAKkjB,UAAUiC,MAAMiB,UAAYD,sCAGvBE,GACVrmB,KAAKyjB,YAAa4C,GAAiBrmB,KAAKwjB,QACxCxjB,KAAKkjB,UAAUiC,MAAMiB,UAAYC,EAAS,EAAI,mDAI9CrmB,KAAKsZ,QAAQmE,KAAK,sDAIlBzd,KAAKqZ,UAAUiN,YACftmB,KAAKqZ,UAAY,KACjBrZ,KAAKkjB,UAAUlS,UACfhR,KAAKkjB,UAAY,KACjBljB,KAAKsZ,QAAU,KACftZ,KAAKiiB,WAAa,KAClBsE,EAAAnE,EAAAN,EAAAllB,WAAA,UAAAoD,MAAA7E,KAAA6E,yjCC/MiBwmB,cAOnB,SAAAA,EAAY1b,EAAO4U,GAAY,IAAApH,+FAAAmO,CAAAzmB,KAAAwmB,GAC7B,QAAI5X,EAAQ9D,EAAMgQ,QAAQC,KAAKnM,MAC3BE,EAAShE,EAAMgQ,QAAQC,KAAKjM,SAChC9O,OAAA0mB,EAAAF,GAAArrB,KAAA6E,KAAM8K,EAAO8D,EAAQ,EAAGE,EAAS,EAAG,gBAApCwJ,oDACKuH,SAAS,IACdvH,EAAKwH,QAAUhV,EAAMwD,IAAIhC,MAAM,EAAG,EAAG,SACrCgM,EAAKwH,QAAQvR,UAAU,EAAG,GAC1B+J,EAAKwH,QAAQtC,eAAe5O,EAAOE,GACnCwJ,EAAKwH,QAAQD,SAASvH,EAAKyH,MAAQ,GACnCzH,EAAKwH,QAAQ7G,KAAO,UACpBX,EAAKwH,QAAQ/D,MAAQ,EAErBzD,EAAKxN,MAAQA,EACbwN,EAAKqO,SAAW,IAChBrO,EAAKsO,SAAW,IAChBtO,EAAK/J,UAAU,IACf+J,EAAK2H,OAAS,IACd3H,EAAK4H,OAAS,IACd5H,EAAKyD,MAAQ,EACbzD,EAAKE,QAAS,EACdF,EAAKgB,QAAU,IAAIlP,OAAOmP,OAAOC,aAEjCkG,EAAWpR,IAAXuY,EAAAvO,IAAqB,GAErBA,EAAKmI,MAAQ3V,EAAMwD,IAAIoS,WACrB5V,EAAMgQ,QAAQC,KAAKnM,MAAQ,EAC3B9D,EAAMgQ,QAAQC,KAAKjM,OAAS,EAAI,IAChC,gBACA,UAEF,IAAI2R,EAAQnI,EAAKmI,MACjBA,EAAME,YAAY,KAClBF,EAAMlS,UAAU,IAChBmR,EAAWpR,IAAImS,GACfA,EAAM1E,MAAQ,EACd0E,EAAMZ,SAASvH,EAAKyH,MAAQ,GAE5BzH,EAAK2I,QAAUnW,EAAMwD,IAAIU,OACvBlE,EAAMgQ,QAAQC,KAAKnM,MAAQ,EAC3B9D,EAAMgQ,QAAQC,KAAKjM,OAAS,EAAI,GAChC,YAEF,IAAImS,EAAU3I,EAAK2I,QACnBA,EACGC,eAAe,CAAEC,eAAe,IAChC9V,GAAG,cAAe,kBAAMiN,EAAK8I,yBAChCH,EAAQlF,MAAQ,EAChB2D,EAAWpR,IAAI2S,GACfA,EAAQpB,SAASvH,EAAKyH,MAAQ,GAE9B,IAAI+G,EAAa,WAAgC,IAApBxO,EAAKxN,MAAMic,KAAiB,KAAO,OAChEzO,EAAK0O,QAAUlc,EAAMwD,IAAIU,OACvBlE,EAAMgQ,QAAQC,KAAKnM,MAAQ,EAAI0J,EAAKqO,SACpC7b,EAAMgQ,QAAQC,KAAKjM,OAAS,EAAIwJ,EAAKsO,SACrCE,GAEF,IAAIE,EAAU1O,EAAK0O,QACnBA,EACG9F,eAAe,CAAEC,eAAe,IAChC9V,GAAG,cAAe,kBAAMiN,EAAK2O,yBAChCD,EAAQjL,MAAQ,EAChB2D,EAAWpR,IAAI0Y,GACfA,EAAQnH,SAASvH,EAAKyH,MAAQ,GAE9BzH,EAAK4O,QAAUpc,EAAMwD,IAAIU,OACvBlE,EAAMgQ,QAAQC,KAAKnM,MAAQ,EAAI0J,EAAKqO,SACpC7b,EAAMgQ,QAAQC,KAAKjM,OAAS,EAAIwJ,EAAKsO,SACrC,WAEF,IAAIM,EAAU5O,EAAK4O,QArEU,OAsE7BA,EACGhG,eAAe,CAAEC,eAAe,IAChC9V,GAAG,cAAe,kBAAMiN,EAAK6O,yBAChCD,EAAQnL,MAAQ,EAChB2D,EAAWpR,IAAI4Y,GACfA,EAAQrH,SAASvH,EAAKyH,MAAQ,GA3EDzH,wPAPOlO,OAAOuQ,YAAY+G,2CAqFpD5W,QACmBnJ,IAAlB3B,KAAKonB,WACPpnB,KAAKonB,SAASvJ,OACd7d,KAAKonB,cAAWzlB,GAElB3B,KAAKgnB,QAAQK,WAAW,WAAsC,IAA1BrnB,KAAK8K,MAAMwW,MAAMyF,KAAiB,KAAO,QAC7E/mB,KAAKwY,QAAS,EAEdxY,KAAKigB,OAAS,IACdjgB,KAAKkgB,OAAS,IAEdpV,EAAMmT,OAAO3P,IAAI,CACf4P,QAASle,KAAK8f,QACd/D,MAAO,GACPsC,KAAM,QACNF,SAAU,MAGZne,KAAKonB,SAAWtc,EAAMmT,OAAO3P,IAAI,CAC/B4P,QAAS,CAACle,KAAMA,KAAKygB,MAAOzgB,KAAKihB,QAASjhB,KAAKgnB,QAAShnB,KAAKknB,SAC7DnL,MAAO,EACPkE,OAAQ,EACRC,OAAQ,EACR7B,KAAM,QACNF,SAAU,IAEVO,WAAY1e,KAAKsnB,iDAKE3lB,IAAjB3B,KAAKsZ,SACPtZ,KAAKsZ,QAAQmE,KAAK,+EAMjB3S,GACHA,EAAMmT,OAAO3P,IAAI,CACf4P,QAASle,KAAK8f,QACd/D,MAAO,EACPsC,KAAM,QACNF,SAAU,WAGUxc,IAAlB3B,KAAKonB,WACPpnB,KAAKonB,SAASvJ,OACd7d,KAAKonB,cAAWzlB,GAGlBmJ,EAAMmT,OAAO3P,IAAI,CACf4P,QAAS,CAACle,KAAMA,KAAKygB,MAAOzgB,KAAKihB,QAASjhB,KAAKgnB,QAAShnB,KAAKknB,SAC7DjH,OAAQ,EACRC,OAAQ,EACRnE,MAAO,EACPsC,KAAM,QACNF,SAAU,IACVO,WAAY1e,KAAKunB,WAEnBvnB,KAAKwY,QAAS,sDAKO7W,IAAjB3B,KAAKsZ,SACPtZ,KAAKsZ,QAAQmE,KAAK,eAEpBzd,KAAK2E,KAAK3E,KAAK8K,sDAIf9K,KAAK8K,MAAM0c,YAAYxnB,KAAK8K,MAAMic,MAClC/mB,KAAKgnB,QAAQK,WAAW,UAA+B,GAAnBrnB,KAAK8K,MAAMic,KAAgB,KAAO,uDAKtE/mB,KAAK2E,KAAK3E,KAAK8K,OACf9K,KAAKsZ,QAAQmE,KAAK,wDAII9b,IAAlB3B,KAAKonB,WACPpnB,KAAKonB,SAASvJ,OACd7d,KAAKonB,SAAW,MAElBpnB,KAAK8f,QAAQ9O,UACbhR,KAAKygB,MAAMzP,UACXhR,KAAKihB,QAAQjQ,UACbhR,KAAKgnB,QAAQhW,UACbhR,KAAKknB,QAAQlW,UACbhR,KAAKsZ,QAAQtI,UACbyW,EAAAf,EAAAF,EAAA5pB,WAAA,UAAAoD,MAAA7E,KAAA6E,yjCClLiB0nB,cAOnB,SAAAA,EAAa5c,EAAOoN,EAAGC,EAAGwP,GAAI,IAAArP,MAAA,mGAAAsP,CAAA5nB,KAAA0nB,KAC5B1nB,KAAAsY,MAAAuP,EAAAH,GAAAvsB,KAAA6E,KAAM8K,EAAOoN,EAAGC,EAAG,uDACnBrN,EAAMwD,IAAIoU,SAAVoF,EAAAxP,IACAA,EAAKxN,MAAQA,EACbwN,EAAKyP,QAAuB,IAAbzP,EAAK1J,MACpB0J,EAAK0P,QAAwB,IAAd1P,EAAKxJ,OACpBwJ,EAAKJ,GAAKI,EAAKyP,QACfzP,EAAKH,GAAKG,EAAK0P,QACf1P,EAAK2P,YAAc3P,EAAK2H,OACxB3H,EAAK4P,YAAc5P,EAAK4H,OACxB5H,EAAK6P,OAAS7P,EAAKJ,EACnBI,EAAK8P,OAAS9P,EAAKH,EACnBG,EAAKiE,QAAUoL,EAAGzP,EAClBI,EAAKkE,QAAUmL,EAAGxP,EAClBG,EAAK+P,QAAUV,EAAG/Y,MAClB0J,EAAKgQ,SAAWX,EAAG7Y,OACnBwJ,EAAKgB,QAAU,IAAIlP,OAAOmP,OAAOC,aACjClB,EAAKiQ,aAjBuBjQ,wPAPMlO,OAAOuQ,YAAY+I,kDA4BrD1jB,KAAKwoB,UAAY,EACjBxoB,KAAKigB,OAAS,EACdjgB,KAAKkgB,OAAS,EACdlgB,KAAKkY,EAAIlY,KAAKmoB,OACdnoB,KAAKmY,EAAInY,KAAKooB,YACSzmB,IAAnB3B,KAAKyoB,YACPzoB,KAAKyoB,UAAU5K,OACf7d,KAAKyoB,eAAY9mB,oCAIX+mB,GACR1oB,KAAK0oB,MAAQA,EACb1oB,KAAKuoB,6CAILvoB,KAAK2oB,wDAID3oB,KAAKwoB,WAAaxoB,KAAK0oB,MAAM3nB,OAAS,GACxCf,KAAKsZ,QAAQmE,KAAK,gBAClBzd,KAAKuoB,cAELvoB,KAAKwoB,WAAaxoB,KAAKwoB,UAAY,GAAKxoB,KAAK0oB,MAAM3nB,OAErDf,KAAK2oB,8CAIL,IAAI7D,EAAO9kB,KAAK0oB,MAAM1oB,KAAKwoB,gBACJ7mB,IAAnB3B,KAAKyoB,YACPzoB,KAAKyoB,UAAU5K,OACf7d,KAAKyoB,eAAY9mB,GAEnB,IAAI8c,OAAuB9c,IAAfmjB,EAAKrG,MAAsBqG,EAAKrG,MAAQ,EAClC,SAAdqG,EAAKjgB,KACP7E,KAAK4oB,SAAS9D,EAAKhhB,OAAOoU,EAAG4M,EAAKhhB,OAAOqU,EAAG2M,EAAKpH,KAAMoH,EAAK+D,OAAQpK,GAC7C,QAAdqG,EAAKjgB,KACd7E,KAAK8oB,QAAQhE,EAAKpH,KAAMoH,EAAK+D,OAAQpK,GACd,UAAdqG,EAAKjgB,MACd7E,KAAK+oB,UAAUjE,EAAK/Z,MAAO+Z,EAAK/Z,MAAO+Z,EAAKpH,KAAMoH,EAAK+D,OAAQpK,oCAIzDvG,EAAGC,EAAGuF,EAAMmL,EAAQvtB,GAAG,IAAAgjB,EAAAte,KAC3BgpB,EAAUhpB,KAAKuc,QAAUrE,EAAIlY,KAAKqoB,QAAUroB,KAAK+nB,QACjDkB,EAAUjpB,KAAKwc,QAAUrE,EAAInY,KAAKsoB,SAAWtoB,KAAKgoB,QACtDhoB,KAAKyoB,UAAYzoB,KAAK8K,MAAMmT,OAAO3P,IAAI,CACrC4P,QAASle,KACTkY,EAAG8Q,EACH7Q,EAAG8Q,EACH9K,SAAUT,EACVW,KAAMwK,EACNpK,MAAOnjB,EACPojB,WAAY,WACVJ,EAAK4K,0DAKAva,EAAGE,EAAG6O,EAAMmL,EAAQvtB,GAAG,IAAA6tB,EAAAnpB,KAChCA,KAAKyoB,UAAYzoB,KAAK8K,MAAMmT,OAAO3P,IAAI,CACrC4P,QAASle,KACTigB,OAAQjgB,KAAKioB,YAActZ,EAC3BuR,OAAQlgB,KAAKkoB,YAAcrZ,EAC3BsP,SAAUT,EACVW,KAAMwK,EACNpK,MAAOnjB,EACPojB,WAAY,WACVyK,EAAKD,wDAKFxL,EAAMmL,EAAQvtB,GAAG,IAAA8tB,EAAAppB,KACxBA,KAAKyoB,UAAYzoB,KAAK8K,MAAMmT,OAAO3P,IAAI,CACrC4P,QAASle,KACTigB,OAA2B,IAAnBjgB,KAAKioB,YACb/H,OAA2B,IAAnBlgB,KAAKkoB,YACb/J,SAAUT,EACV2L,MAAM,EACNhL,KAAMwK,EACNpK,MAAOnjB,EACPojB,WAAY,WACV0K,EAAKF,+DAMcvnB,IAAnB3B,KAAKyoB,YACPzoB,KAAKyoB,UAAU5K,OACf7d,KAAKyoB,eAAY9mB,GAEnB3B,KAAK8K,MAAQ,KACb9K,KAAKiiB,WAAa,KAClBqH,EAAAzB,EAAAH,EAAA9qB,WAAA,UAAAoD,MAAA7E,KAAA6E,yjCC5HiBupB,cAOnB,SAAAA,EAAYze,EAAO4U,EAAY8J,GAAU,IAAAlR,+FAAAmR,CAAAzpB,KAAAupB,GACvC,QAAI3a,EAAQ9D,EAAMgQ,QAAQC,KAAKnM,MAC3BE,EAAShE,EAAMgQ,QAAQC,KAAKjM,SAChC9O,OAAA0pB,EAAAH,GAAApuB,KAAA6E,KAAM8K,EAAO8D,EAAQ,EAAGE,EAAS,EAAG,UAApCwJ,oDACKuH,SAAS,IACdvH,EAAKwH,QAAUhV,EAAMwD,IAAIhC,MAAM,EAAG,EAAG,SACrCgM,EAAKwH,QAAQvR,UAAU,EAAG,GAC1B+J,EAAKwH,QAAQtC,eAAe5O,EAAOE,GACnCwJ,EAAKwH,QAAQD,SAASvH,EAAKyH,MAAQ,GACnCzH,EAAKwH,QAAQ7G,KAAO,UACpBX,EAAKwH,QAAQ/D,MAAQ,EAErBzD,EAAKxN,MAAQA,EACbwN,EAAKqO,SAAW,IAChBrO,EAAKsO,SAAW,IAChBtO,EAAK/J,UAAU,IACf+J,EAAK2H,OAAS,IACd3H,EAAK4H,OAAS,IACd5H,EAAKyD,MAAQ,EACbzD,EAAKE,QAAS,EACdF,EAAKgB,QAAU,IAAIlP,OAAOmP,OAAOC,aAEjCkG,EAAWpR,IAAXqb,EAAArR,IAAqB,GACrB,IAAMsR,EAAU9e,EAAMgQ,QAAQC,KAAKnM,MAAQ,EACrCib,EAAU/e,EAAMgQ,QAAQC,KAAKjM,OAAS,EAC5CwJ,EAAKmI,MAAQ3V,EAAMwD,IAAIoS,WACrBkJ,EACAC,EAAU,IACV,gBACA,eAEF,IAAIpJ,EAAQnI,EAAKmI,MACjBA,EAAME,YAAY,IAClBF,EAAMlS,UAAU,IAChBmR,EAAWpR,IAAImS,GACfA,EAAM1E,MAAQ,EACd0E,EAAMZ,SAASvH,EAAKyH,MAAQ,GAE5BzH,EAAK2I,QAAUnW,EAAMwD,IAAIU,OACvB4a,EAAUtR,EAAKqO,SACfkD,EAAUvR,EAAKsO,SACf,WAEF,IAAI3F,EAAU3I,EAAK2I,QA3CoB,OA4CvCA,EACGC,eAAe,CAAEC,eAAe,IAChC9V,GAAG,cAAe,kBAAMiN,EAAK8I,yBAChCH,EAAQlF,MAAQ,EAChB2D,EAAWpR,IAAI2S,GACfA,EAAQpB,SAASvH,EAAKyH,MAAQ,GAE9BzH,EAAKqP,GAAK7c,EAAMwD,IAAIhC,MAAMsd,EAASC,EAAU,GAAIL,EAASzc,MAAM,GAAGT,OACnEgM,EAAKqP,GAAG9H,SAASvH,EAAKyH,MAAQ,GAC9BzH,EAAKqP,GAAG5L,MAAQ,EAChBzD,EAAKkR,SAAWA,EAChBlR,EAAKwR,QAAU,EACfxR,EAAKyR,SAAW,IAAIrC,EAAS5c,EAAO8e,EAASC,EAAU,IAAKvR,EAAKqP,IACjErP,EAAKyR,SAASzQ,QAAQjO,GAAG,eAAgB,kBAAMiN,EAAK0R,YAApDL,EAAArR,IACAoH,EAAWpR,IAAIgK,EAAKyR,UACpBzR,EAAKyR,SAASlK,SAASvH,EAAKyH,MAAQ,GACpCzH,EAAKyR,SAAShO,MAAQ,EA5DiBzD,wPAPJlO,OAAOuQ,YAAY+G,iDAuEtD1hB,KAAK2nB,GAAGN,WAAWrnB,KAAKwpB,SAASzc,MAAM/M,KAAK8pB,SAASxd,OACrDtM,KAAK+pB,SAASE,SAASjqB,KAAKwpB,SAASzc,MAAM/M,KAAK8pB,SAASpB,OACzD1oB,KAAK+pB,SAAS3b,QACdpO,KAAK8pB,SAAW9pB,KAAK8pB,QAAU,GAAK9pB,KAAKwpB,SAASzc,MAAMhM,oCAGrD+J,GAAuB,IAAAwT,EAAAte,KAAhBkqB,IAAgBxoB,UAAAX,OAAA,QAAAY,IAAAD,UAAA,KAAAA,UAAA,QACJC,IAAlB3B,KAAKonB,WACPpnB,KAAKonB,SAASvJ,OACd7d,KAAKonB,cAAWzlB,GAGlB3B,KAAKwY,QAAS,EACV0R,GACFlqB,KAAKigB,OAAS,IACdjgB,KAAKkgB,OAAS,IAEdpV,EAAMmT,OAAO3P,IAAI,CACf4P,QAASle,KAAK8f,QACd/D,MAAO,GACPsC,KAAM,QACNF,SAAU,MAGZne,KAAKonB,SAAWtc,EAAMmT,OAAO3P,IAAI,CAC/B4P,QAAS,CAACle,KAAMA,KAAKygB,MAAOzgB,KAAKihB,QAASjhB,KAAK2nB,IAC/C5L,MAAO,EACPkE,OAAQ,EACRC,OAAQ,EACR7B,KAAM,QACNF,SAAU,IAEVO,WAAY,WACVJ,EAAKgJ,eAITtnB,KAAK8f,QAAQ/D,MAAQ,GACrB/b,KAAK+b,MAAQ,EACb/b,KAAKygB,MAAM1E,MAAQ,EACnB/b,KAAKihB,QAAQlF,MAAQ,EACrB/b,KAAK2nB,GAAG5L,MAAQ,EAChB/b,KAAKigB,OAAS,EACdjgB,KAAKkgB,OAAS,EACdlgB,KAAKsnB,kDAKc3lB,IAAjB3B,KAAKsZ,SACPtZ,KAAKsZ,QAAQmE,KAAK,mBAGE9b,IAAlB3B,KAAK+pB,WACP/pB,KAAK+pB,SAAW,IAAIrC,EAAS1nB,KAAK8K,MAAO8e,QAASC,QAAU,IAAK7pB,KAAK2nB,KAGxE3nB,KAAKgqB,8CAILhqB,KAAK+pB,SAASxB,0CAGXzd,GAAO,IAAAqe,EAAAnpB,KACV8K,EAAMmT,OAAO3P,IAAI,CACf4P,QAASle,KAAK8f,QACd/D,MAAO,EACPsC,KAAM,QACNF,SAAU,WAGUxc,IAAlB3B,KAAKonB,WACPpnB,KAAKonB,SAASvJ,OACd7d,KAAKonB,cAAWzlB,GAGlBmJ,EAAMmT,OAAO3P,IAAI,CACf4P,QAAS,CAACle,KAAMA,KAAKygB,MAAOzgB,KAAKihB,QAASjhB,KAAK2nB,IAC/C1H,OAAQ,EACRC,OAAQ,EACRnE,MAAO,EACPsC,KAAM,QACNF,SAAU,IACVO,WAAY,WACVyK,EAAK5B,cAGTvnB,KAAKwY,QAAS,iDAIdxY,KAAK8K,MAAMub,QAAS,OACC1kB,IAAjB3B,KAAKsZ,SACPtZ,KAAKsZ,QAAQmE,KAAK,eAEpBzd,KAAK2E,KAAK3E,KAAK8K,sDAIf9K,KAAK8K,MAAMic,MAAQ/mB,KAAK8K,MAAMic,uFAQ9BoD,EAAAT,EAAAH,EAAA3sB,WAAA,UAAAoD,MAAA7E,KAAA6E,6nCC/KiBoqB,cAMnB,SAAAA,IAAc,mGAAAC,CAAArqB,KAAAoqB,GAAAE,EAAAtqB,KAAAuqB,EAAAH,GAAAjvB,KAAA6E,KACN,CAAEzD,IAAK,gQAPiB6N,OAAOC,0CAkBlCsD,GACH3N,KAAK2hB,UAA6B,IAAlBhU,EAAKgU,SACrB3hB,KAAK4hB,OAASjU,EAAKiU,wCAGF,IAAAtJ,EAAAtY,KAEbwqB,EAAW3J,aAAaC,QAAQ,QACpC9gB,KAAK+mB,UAAoBplB,IAAb6oB,GAAsC,SAAbA,EACrCxqB,KAAKwnB,WAAWxnB,KAAK+mB,MACrB/mB,KAAKyqB,gBAAkBzqB,KAAKsO,IAAIoc,QAChC1qB,KAAK2qB,YAAc3qB,KAAKsO,IAAIoc,QAC5B1qB,KAAK4qB,eAAiB5qB,KAAKsO,IAAIoc,QAC/B1qB,KAAK6qB,aAAe7qB,KAAKsO,IAAIoc,QAC7B1qB,KAAK8qB,UAAY9qB,KAAKsO,IAAIoc,QAC1B1qB,KAAK0f,WAAa1f,KAAKsO,IAAIoc,QAC3B1qB,KAAKuM,WAAavM,KAAKwM,MAAM9B,KAAK7O,IAAI,QAAQ0Q,WAC9CvM,KAAK+qB,UAAY/qB,KAAKwM,MAAM9B,KAAK7O,IAAI,QAAQkvB,UAC7C/qB,KAAK6M,WAAa7M,KAAKwM,MAAM9B,KAAK7O,IAAI,QAAQgR,WAC9C7M,KAAKgrB,YAAchrB,KAAKuM,WAAW8P,SAAS4O,QAC5CjrB,KAAK6Z,QAAU7Z,KAAKgrB,YAAYnR,QAChC7Z,KAAKkrB,eAAiBlrB,KAAK6Z,QAC3B7Z,KAAKmrB,aAAc,EAEnBnrB,KAAKorB,MAAQ,EAEbprB,KAAKqrB,gBAAkBrrB,KAAKuM,WAAW+e,WAAWtrB,KAAKorB,OACvDG,QAAQC,IAAI,mBAAoBxrB,KAAKqrB,iBACrCrrB,KAAKwN,iBAA8B7L,IAAhB3B,KAAK4hB,OAAuB5hB,KAAK4hB,OAASxX,OAAO9G,KAAKsY,QACvE,EACA5b,KAAKuM,WAAWiB,YAAYzM,OAAS,GAEvCf,KAAKyrB,mBAAqBzrB,KAAKuM,WAAW8P,SAASqP,QAAQ3qB,OAC3Df,KAAK2rB,aAAe,EACpB3rB,KAAK4rB,iBAAkB,EACvB5rB,KAAK6hB,WAAa,GAClB7hB,KAAK6rB,OAAS,GACd7rB,KAAK8rB,aAAe,GACpB9rB,KAAK+rB,gBAAgB/rB,KAAKuM,YAC1B,IAAK,IAAIvR,EAAI,EAAGA,EAAI,EAAGA,IACrBgF,KAAK2qB,YAAYruB,OAAO,EAAG,EAAG,SAEhC0D,KAAKgsB,mBACLhsB,KAAKisB,oBAAsBjsB,KAAKuM,WAAWiB,YAAYxN,KAAKksB,iBAAiBD,oBAC7EV,QAAQC,IAAIxrB,KAAKwN,YAAaxN,KAAKisB,qBAEnCjsB,KAAKmsB,MAAQ,EACbnsB,KAAKqgB,WAAa,EAClBrgB,KAAKqc,SAAW,GAEhB,IAAMuN,EAAU5pB,KAAK8a,QAAQC,KAAKnM,MAElC5O,KAAKqmB,QAAS,EACdrmB,KAAKosB,aAAaxC,GAElB,IAGIyC,EAAUrsB,KAAKsO,IAAIhC,MAHV,GACA,GAEgC,aAC7C+f,EAAQ9d,UAAU,EAAG,GACrB8d,EAAQxM,SAAS,IACjB7f,KAAKssB,QAAUtsB,KAAKsO,IAAIoS,WACtB2L,EAAQnU,EAAImU,EAAQnN,aAAe,EANxB,GAOFmN,EAAQlU,EAAIkU,EAAQpQ,cAAgB,EAC7Cjc,KAAKuM,WAAWggB,KAChB,GAEFvsB,KAAKssB,QAAQ/d,UAAU,GAAK,IAC5BvO,KAAKssB,QAAQ3L,YAAY,IACzB3gB,KAAKssB,QAAQE,iBACbxsB,KAAKssB,QAAQzM,SAASwM,EAAQtM,MAAQ,GACtC/f,KAAK8qB,UAAUxc,IAAI+d,GACnBrsB,KAAK8qB,UAAUxc,IAAItO,KAAKssB,SAExBtsB,KAAKysB,YAAa,EAElBzsB,KAAK0sB,UAAY,IAAInD,EAAUvpB,KAAMA,KAAK0f,WAAY1f,KAAK6M,YAC3D7M,KAAK2sB,WAAa,IAAInG,EAAWxmB,KAAMA,KAAK0f,YAC5C1f,KAAK2sB,WAAWrT,QAAQjO,GAAG,cAAerL,KAAK4sB,cAAe5sB,MAC9DA,KAAK0sB,UAAUpT,QAAQjO,GAAG,cAAerL,KAAK4sB,cAAe5sB,MAC7DA,KAAK2sB,WAAWrT,QAAQjO,GAAG,gBAAiBrL,KAAK6sB,SAAU7sB,MAC3DA,KAAK8sB,SAAW9sB,KAAKsO,IAAIhC,MAAMsd,EAAU,GAAI,GAAI,YACjD5pB,KAAK8sB,SAASve,UAAU,EAAG,GAC3BvO,KAAK8sB,SACF5L,eAAe,CAAEC,eAAe,IAChC9V,GAAG,cAAe,YACG,IAAhBiN,EAAK+N,SACuB,GAA1B/N,EAAKqU,WAAWnU,QAClBF,EAAKqU,WAAWI,KAAKzU,GACrBA,EAAK0U,kBAIbhtB,KAAK8sB,SAASjN,SAAS,IAEvB7f,KAAKitB,MAAM5hB,GAAG,YAAa,kBAAMiN,EAAK4U,WAAY,GAAOltB,MAEzDA,KAAKmtB,QAAU,EACfntB,KAAK4M,QAAU5M,KAAKwM,MAAM9B,KAAK7O,IAAI,QAAQ+Q,QAC3C5M,KAAK4M,QAAQ2E,KAAK,kBAAMjO,KAAKuC,SAAW,KAExC7F,KAAKotB,QAAUptB,KAAKshB,MAAMhT,IAAI,UAAW,CACvCiT,MAAM,EACNC,OAAQ,MAEVxhB,KAAKotB,QAAQ3L,QACS,IAAlBzhB,KAAK2hB,SACP3hB,KAAK6sB,UAAS,GAGd7sB,KAAKmrB,aAAc,uCAIVvB,GACX,QAA6CjoB,IAAzC3B,KAAKuM,WAAW8P,SAASgR,aAA6BrtB,KAAKuM,WAAW8P,SAASgR,YAAc,EAC/F,IAAK,IAAIryB,EAAI,EAAGA,EAAIgF,KAAKuM,WAAW8P,SAASgR,YAAaryB,IAAK,CAC7D,IAAIkd,EAAI9N,OAAO9G,KAAKsY,QAAQ,IAAK5b,KAAK8a,QAAQC,KAAKnM,MAAQ,KACvDuJ,EAAI/N,OAAO9G,KAAKsY,QAAQ,IAAK,KACjC5b,KAAKstB,cAAcpV,EAAGC,GAAG,QAI3BnY,KAAKstB,cAAc1D,EAAU,EAAG,KAAK,GAEvC5pB,KAAKutB,UAAYvtB,KAAKuM,WAAW8P,SAASkR,UAE1C,IADA,IAAIC,EAAY,GACPprB,EAAI,EAAGA,EAAIpC,KAAKutB,UAAUE,OAAO1sB,OAAQqB,IAChDorB,EAAUlsB,KAAK,CAAE/E,IAAKyD,KAAKutB,UAAUE,OAAOrrB,KAG9C,IAAIsrB,EAAY1tB,KAAK0oB,MAAMiF,mBAAmB,UAAW,CAAEC,OAAQ,MAAOxf,MAAO,EAAGyf,IAAK,EAAGC,OAAQ,SAChGhJ,EAAO,CACTvoB,IAAKyD,KAAKutB,UAAUhyB,KACpBkyB,OAAQC,EACRK,UAAW/tB,KAAKutB,UAAUQ,WAE5B/tB,KAAK0oB,MAAMpsB,OAAOwoB,GAElB9kB,KAAKitB,MAAM5hB,GAAG,cAAe,SAAU4T,GACrC,IAAuB,IAAnBjf,KAAKktB,WAAsBltB,KAAKmrB,YAAa,CAE/C,IAAoB,IAAhBnrB,KAAKqmB,OACP,IAAK,IAAIrrB,EAAI,EAAGA,EAAIgF,KAAKqc,SAAStb,OAAQ/F,IACxCgF,KAAKqc,SAASrhB,GAAGgzB,SAAS/O,GAI9Bjf,KAAKktB,WAAY,IAElBltB,yCAGMiuB,GACTjuB,KAAK+mB,KAAOkH,EACZpN,aAAaE,QAAQ,OAAQ/gB,KAAK+mB,MAClC/mB,KAAKshB,MAAM4M,QAAQluB,KAAK+mB,6CAIxB/mB,KAAKqmB,QAAS,OAEQ1kB,IAAlB3B,KAAKmuB,WACPnuB,KAAKmuB,SAAS9H,QAAS,QAEJ1kB,IAAjB3B,KAAKouB,UACPpuB,KAAKouB,QAAQ/H,QAAS,GAExB,IAAK,IAAIrrB,EAAI,EAAGA,EAAIgF,KAAK6hB,WAAW9gB,OAAQ/F,IAC1CgF,KAAK6hB,WAAW7mB,GAAG2jB,aAAY,GAGjC,IAAK,IAAI3jB,EAAI,EAAGA,EAAIgF,KAAKie,OAAOld,OAAQ/F,IAAK,CAC3C,IAAIqzB,EAAQruB,KAAKie,OAAOjjB,GACpBqzB,EAAMzP,YACR5e,KAAK8rB,aAAaxqB,KAAK+sB,GACvBA,EAAMxP,kDAOV7e,KAAKqmB,QAAS,EACdrmB,KAAKmrB,aAAc,OAEGxpB,IAAlB3B,KAAKmuB,WACPnuB,KAAKmuB,SAAS9H,QAAS,QAEJ1kB,IAAjB3B,KAAKouB,UACPpuB,KAAKouB,QAAQ/H,QAAS,GAExB,IAAK,IAAIrrB,EAAI,EAAGA,EAAIgF,KAAK6hB,WAAW9gB,OAAQ/F,IAC1CgF,KAAK6hB,WAAW7mB,GAAG2jB,aAAY,GAGjC,IAAK,IAAI3jB,EAAIgF,KAAK8rB,aAAa/qB,OAAS,EAAG/F,GAAK,EAAGA,IACjDgF,KAAK8rB,aAAa9wB,GAAG8jB,SACrB9e,KAAK8rB,aAAawC,OAAOtzB,sCAIJ,IAAhBkvB,IAAgBxoB,UAAAX,OAAA,QAAAY,IAAAD,UAAA,KAAAA,UAAA,GACvB1B,KAAKqmB,QAAS,EACdrmB,KAAK0sB,UAAUK,KAAK/sB,KAAMkqB,mDAIFvoB,IAApB3B,KAAKuuB,YACPvuB,KAAKuuB,WAAWvd,UAGlB,IAAIwd,EAAY,EACZ7D,EAAc3qB,KAAK2qB,YAAY8D,cAGnCzuB,KAAKuuB,WAAavuB,KAAKyqB,gBAAgBnuB,OACrC,EACA,EACA0D,KAAKuM,WAAWiB,YAAYxN,KAAKwN,aAAajS,MAEhDyE,KAAKuuB,WAAWhgB,UAAU,GAC1BvO,KAAKuuB,WAAW1O,UAAU,GAE1B,IADA,IAAI6O,EAAa1uB,KAAKuM,WAAWiB,YAAYxN,KAAKwN,aAAaqU,WACtD7mB,EAAI,EAAGA,EAAI0zB,EAAW3tB,OAAQ/F,IAAK,CAC1C,IAAI2zB,EAASD,EAAW1zB,GACxB,GAAoB,WAAhB2zB,EAAO9pB,KAAmB,CAC5B,IAAI+pB,EAAajE,EAAY6D,GAC7BI,EAAWvH,WAAWsH,EAAOpzB,MAC7BqzB,EAAWrgB,UAAU,GAAK,GAC1BqgB,EAAWxU,YAAYuU,EAAOhL,KAAMgL,EAAO/K,MAC3CgL,EAAW3O,OAAS0O,EAAO5jB,MAAQ4jB,EAAOhR,UAC1CiR,EAAW1O,OAASyO,EAAO5jB,MAC3ByjB,SAEA,IAAK,IAAIpsB,EAAI,EAAGA,EAAIpC,KAAK6hB,WAAW9gB,OAAQqB,IAAK,CAE7C,IAAIysB,EAAO7uB,KAAK6hB,WAAWzf,GACvBysB,EAAKxM,WAAasM,EAAOpzB,MAC3BszB,EAAKC,aACHH,EAAOhL,KACPgL,EAAO/K,KACP+K,EAAO5jB,MACP4jB,EAAO5jB,MACP4jB,EAAOhR,WAEXkR,EAAKrL,SAAU,EACfqL,EAAKpL,YAAa,EAClBoL,EAAKE,SAKb,IAAIC,EAAShvB,KAAKwN,YAClBxN,KAAKksB,gBAAkB8C,EACvBhvB,KAAKwN,cACDxN,KAAKwN,aAAexN,KAAKuM,WAAWiB,YAAYzM,SAClDf,KAAKwN,YAAc,GAGrBxN,KAAKyqB,gBAAgB5K,UAAU,EAAG,yCAGtB3H,EAAGC,EAAGE,GAAW,IAAAiG,EAAAte,KACzB0Y,EAAU,IAAIT,EAChBjY,KACAkY,EACAC,EACAnY,KAAKuM,WAAW8P,SAASqP,QAAQ1rB,KAAK2rB,cACtCtT,GAEFK,EAAQuW,WAAWjvB,KAAMA,KAAKgrB,aAC9BtS,EAAQY,QAAQjO,GAAG,iBAAkB,YAA4B,IAAhBiT,EAAK+H,QAAoB/H,EAAKe,wBAA6Brf,MAC5G0Y,EAAQY,QAAQjO,GAAG,WAAYrL,KAAKkvB,uBAAwBlvB,MAC5D0Y,EAAQY,QAAQ6V,KAAK,WAAYnvB,KAAKovB,eAAgBpvB,MACtDA,KAAKqc,SAAS/a,KAAKoX,GACnB1Y,KAAK6qB,aAAavc,IAAIoK,GAAS,GAC/B1Y,KAAK6qB,aAAahL,SAAS,EAAG,GAC9B7f,KAAK2rB,cAAgB3rB,KAAK2rB,aAAe,GAAK3rB,KAAKyrB,kEAG9B,IAAAtC,EAAAnpB,KAQrB,GAPAA,KAAKqgB,aACLrgB,KAAKmsB,QACLnsB,KAAKshB,MAAMG,KAAK,MAAQrX,OAAO9G,KAAKsY,QAAQ,EAAG,GAAI,CACjDyT,OAAQjlB,OAAO9G,KAAKsY,QAAQ,GAAI,KAAO,MAEzC5b,KAAKssB,QAAQgD,KAAOtvB,KAAKqgB,WACzBrgB,KAAKkrB,eAAiBlrB,KAAK6Z,SAAW,EAAK7Z,KAAKqgB,WAAa,KACzDrgB,KAAKmsB,OAASnsB,KAAKqrB,gBACrBrrB,KAAKuvB,wBACA,GAAIvvB,KAAKmsB,MAAQ,EAAI,EAAG,CAE7B,IAAI0C,EAAO7uB,KAAK6hB,WAAWzX,OAAO9G,KAAKsY,QAAQ,EAAG5b,KAAK6hB,WAAW9gB,OAAS,IAC3Ef,KAAK0d,KAAKoI,YAAY1b,OAAO9G,KAAKsY,QAAQ,EAAG,KAAM,kBAAMiT,EAAKW,UAAUrG,IAAOnpB,MAC/EA,KAAKyvB,yDAgBP,IAFiB,IAAArG,EAAAppB,KAERhF,EAAI,EAAGA,EAAIgF,KAAK6hB,WAAW9gB,OAAQ/F,IAAK,CAC/C,IAAI6zB,EAAO7uB,KAAK6hB,WAAW7mB,GAC3B6zB,EAAKrL,SAAU,EACfqL,EAAKpL,YAAa,EAClBoL,EAAKa,cAAc1vB,KAAMoK,OAAO9G,KAAKsY,QAAQ,EAAG,MAElD5b,KAAKmsB,MAAQ,EACb,IAAK,IAAI/pB,EAAI,EAAGA,EAAIpC,KAAKqc,SAAStb,OAAQqB,IACxCpC,KAAKqc,SAASja,GAAGutB,cAAc3vB,KATZ,IASkCA,KAAKisB,qBAG5DjsB,KAAKshB,MAAMG,KAAK,aAAc,CAAED,OAAQ,GAAK/C,MAAO,KACpDze,KAAKouB,QAAUpuB,KAAK0d,KAAKoI,YACvB8J,KACA,kBAAMxG,EAAKyG,kBACX7vB,MAGFA,KAAKorB,QACLprB,KAAKqrB,gBAAkBrrB,KAAKuM,WAAW+e,WAAWtrB,KAAKorB,OAEvDG,QAAQC,IAAIxrB,KAAKuM,WAAW+e,WAAWtrB,KAAKorB,OAAOprB,KAAKuM,WAAW+e,iBACvC3pB,IAAzB3B,KAAKqrB,kBAENrrB,KAAKqrB,gBAAkBrrB,KAAKuM,WAAWujB,uDAKzC9vB,KAAKgsB,mBACLhsB,KAAKisB,oBAAsBjsB,KAAKuM,WAAWiB,YAAYxN,KAAKksB,iBAAiBD,oBAC7EV,QAAQC,IAAIxrB,KAAKuM,WAAWiB,YAAYxN,KAAKksB,iBAAiB3wB,KAAO,uCAAsCyE,KAAKisB,qBAChH,IACI/T,EAAI9N,OAAO9G,KAAKsY,QADN,IACuB5b,KAAK8a,QAAQC,KAAKnM,MADzC,KAEVuJ,EAAI/N,OAAO9G,KAAKsY,QAFN,IAEuB,KACrC5b,KAAKstB,cAAcpV,EAAGC,GAAG,GACzB,IAAK,IAAInd,EAAI,EAAGA,EAAIgF,KAAKqc,SAAStb,OAAQ/F,IAAK,CAC/BgF,KAAKqc,SAASrhB,GAEpB+0B,aAAa/vB,KAAM,IAAMA,KAAKisB,uEAKjB,IAAA+D,EAAAhwB,KAEK,GAAxBA,KAAK4rB,kBACP5rB,KAAKshB,MAAMG,KAAK,UAAW,CAAE4N,OAAQjlB,OAAO9G,KAAKsY,QAAQ,GAAI,KAAO,MACpE5b,KAAK4rB,iBAAkB,EACvB5rB,KAAK0d,KAAKoI,YAAY,IAAK,WAAQkK,EAAKpE,iBAAkB,0CAIjD,IAAAqE,EAAAjwB,KACX,IAAwB,IAApBA,KAAKysB,WAAqB,CACZzsB,KAAK4M,QAAQ5M,KAAKmtB,SAElCntB,KAAKmtB,SAAWntB,KAAKmtB,QAAU,GAAKntB,KAAK4M,QAAQ7L,OACjDf,KAAKysB,YAAa,EAClBzsB,KAAK0d,KAAKoI,YAAY,KAAM,kBAAMmK,EAAKC,6DAKzClwB,KAAKysB,YAAa,iCAWbvwB,EAAGogB,GACR,IAAoB,IAAhBtc,KAAKqmB,OAAkB,CAEzB,IAAK,IAAIrrB,EAAI,EAAGA,EAAIgF,KAAKqc,SAAStb,SAAU/F,EAC1CgF,KAAKqc,SAASrhB,GAAGm1B,OAAOnwB,KAAKqc,SAAUC,EAAIpgB,EAAG8D,KAAKkrB,gBAIrD,IAAK,IAAI9oB,EAAI,EAAGA,EAAIpC,KAAK6hB,WAAW9gB,OAAQqB,IAC1CpC,KAAK6hB,WAAWzf,GAAGguB,gBAAgBl0B,EAAGogB,EAAItc,8CAKjCqwB,GAAS,IAAAC,EAAAtwB,KAClBuwB,EAAOF,EAAQnY,EACfsY,EAAOH,EAAQlY,EAEnBnY,KAAKywB,UAAYzwB,KAAKsO,IACnBU,OAAOuhB,EAAMC,GACb/O,KAAK,cACRzhB,KAAKywB,UAAUxX,KAAOoX,EAAQpX,KAC9B,IAAK,IAAIje,EAAI,EAAGA,EAAIgF,KAAKqc,SAAStb,SAAU/F,EAC1CgF,KAAKqc,SAASrhB,GAAG6iB,OAEnB,IAAK,IAAIzb,EAAI,EAAGA,EAAIpC,KAAK6hB,WAAW9gB,OAAQqB,IAC1CpC,KAAK6hB,WAAWzf,GAAGsuB,QAAQ1wB,MAG7BA,KAAKmrB,aAAc,EAEnBnrB,KAAKshB,MAAMG,KAAK,OAChBzhB,KAAKmuB,SAAWnuB,KAAK0d,KAAKoI,YAAY,IAAM,kBAAMwK,EAAKK,0DAIvD3wB,KAAKywB,UAAUzf,UACfhR,KAAKywB,UAAY,KACjBzwB,KAAKgtB,eACLhtB,KAAKotB,QAAQvP,OACb7d,KAAK4hB,OAAS5hB,KAAKwN,YACnBxN,KAAK4wB,8DAGSjjB,GACd,IAAK,IAAI3S,EAAI,EAAGA,EAAI2S,EAAKkU,WAAW9gB,OAAQ/F,IAAK,CAC/C,IAAI61B,EAAWljB,EAAKkU,WAAW7mB,GAC3B+mB,EAAY,IAAID,EAClB9hB,KACAhF,EACA61B,EAAS3iB,MACT2iB,EAAS7O,KACT6O,EAAS5O,WACT4O,EAAS3O,KAEXH,EAAUpD,aAAY,GACtB3e,KAAK4qB,eAAetc,IAAIyT,GACxB/hB,KAAK6hB,WAAWvgB,KAAKygB,uDAKIpgB,IAAvB3B,KAAK8wB,eACP9wB,KAAK8wB,cAAc9f,UAGrBhR,KAAK8wB,cAAgB,IAAIC,EAAc/wB,KAAMA,KAAK0f,WAAY1f,KAAK+qB,WACnE/qB,KAAK0f,WAAWpR,IAAItO,KAAK8wB,eAAe,GACxC9wB,KAAK0f,WAAWG,SAAS,GAAI,qCAI7B0L,QAAQC,IAAI,UACe,OAAvBxrB,KAAK8wB,eACP9wB,KAAK8wB,cAAc9f,UAErBhR,KAAKyqB,gBAAgBzZ,UACrBhR,KAAK2qB,YAAc,KACnB3qB,KAAK6qB,aAAa7Z,UAClBhR,KAAK8qB,UAAU9Z,UACfhR,KAAKuM,WAAWyE,UAChBhR,KAAK+qB,UAAU/Z,UACfhR,KAAK6M,WAAWmE,UAChBhR,KAAKgrB,YAAYha,UACjBhR,KAAKssB,QAAQtb,UACbhR,KAAK4qB,eAAe5Z,UACpBhR,KAAK0f,WAAW1O,UAChBhR,KAAKgxB,QAAQhgB,UACbigB,EAAA1G,EAAAH,EAAAxtB,WAAA,UAAAoD,MAAA7E,KAAA6E,okCClfiBkxB,eAOnB,SAAAA,EAAapmB,EAAOoN,EAAGC,EAAG7L,EAAO6kB,GAAU,IAAA7Y,MAAA,mGAAA8Y,CAAApxB,KAAAkxB,KACzClxB,OAAAqxB,GAAAH,GAAA/1B,KAAA6E,KAAM8K,EAAOoN,EAAGC,EAAG7L,IAAnBgM,sDACK/c,KAAO+Q,EACZxB,EAAMwD,IAAIoU,SAAV4O,GAAAhZ,IACAA,EAAK/J,UAAU,IACf+J,EAAKgB,QAAU,IAAIlP,OAAOmP,OAAOC,aACjClB,EAAK4I,eAAe,CAClBC,eAAe,IACd9V,GAAG,cAAe,kBAAMiN,EAAKiZ,QAAQzmB,EAAOqmB,KARN7Y,yPAPHlO,OAAOuQ,YAAY+I,6CAkBlD5Y,EAAOqmB,GACdrmB,EAAMwW,MAAMG,KAAK,SACjB,IAAI+P,EAAMxxB,KAAKigB,OACXwR,EAAMzxB,KAAKkgB,OACQ,MAAnBlgB,KAAK0xB,aACP1xB,KAAK0xB,WAAW7T,OAChB7d,KAAK0xB,WAAa,MAEpB1xB,KAAK0xB,WAAa5mB,EAAMmT,OAAO3P,IAAI,CACjC4P,QAASle,KACTigB,OAAc,GAANuR,EACRtR,OAAc,GAANuR,EACRtT,SAAU,GACVkL,MAAM,EACN3K,WAAY,kBAAMyS,yCAKG,MAAnBnxB,KAAK0xB,aACP1xB,KAAK0xB,WAAW7T,OAChB7d,KAAK0xB,WAAa,MAEpBC,GAAAN,GAAAH,EAAAt0B,WAAA,UAAAoD,MAAA7E,KAAA6E,2oCCvCiB4xB,eAMnB,SAAAA,IAAc,mGAAAC,CAAA7xB,KAAA4xB,GAAAE,GAAA9xB,KAAA+xB,GAAAH,GAAAz2B,KAAA6E,KACN,CAAEzD,IAAK,kQAPkB6N,OAAOC,iHA+BrB,IAAAiO,EAAAtY,KACXkY,EAAIlY,KAAK8a,QAAQC,KAAKnM,MACtBuJ,EAAInY,KAAK8a,QAAQC,KAAKjM,OAC5B9O,KAAK2nB,GAAK3nB,KAAKsO,IAAIhC,MAAM4L,EAAI,EAAGC,EAAI,EAAG,WACvCnY,KAAKgyB,YAAc,GACnBhyB,KAAKiyB,cAAgBjyB,KAAKsO,IAAIoc,QAC9B1qB,KAAKkyB,YAAclyB,KAAKwM,MAAM9B,KAAK7O,IAAI,QAAQq2B,YAE/C,IADA,IAAIC,EAAoBnyB,KAAKkyB,YAAYE,OAAOrxB,OACvC/F,EAAI,EAAGA,EAAIm3B,EAAmBn3B,IAAK,CAC1C,IAAIq3B,EAAKryB,KAAKkyB,YAAYE,OAAOp3B,GAAGkd,EAChCoa,EAAKtyB,KAAKkyB,YAAYE,OAAOp3B,GAAGmd,EAChCpN,EAAQ/K,KAAKkyB,YAAYE,OAAOp3B,GAAG+P,MACnCiE,EAAShP,KAAKsO,IAAIU,OAAOqjB,EAAIC,EAAI,UAAWtyB,KAAKkyB,YAAYE,OAAOp3B,GAAGO,KAAO,QAClFyT,EAAOiR,OAASlV,EAChBiE,EAAOkR,OAASnV,EAChB/K,KAAKgyB,YAAY1wB,KAAK0N,GACtBhP,KAAKiyB,cAAc3jB,IAAIU,GAGzB,IAAIujB,EAAOvyB,KAAKgyB,YAAYhyB,KAAKgyB,YAAYjxB,OAAS,GAClDywB,EAAMe,EAAKtS,OACXwR,EAAMc,EAAKrS,OACfqS,EAAKtS,OAAS,EACdsS,EAAKrS,OAAS,EACdlgB,KAAKie,OAAO3P,IAAI,CACd4P,QAASqU,EACTtS,OAAQuR,EACRtR,OAAQuR,EACRe,WAAY,CAAC,GAAK,KAClBrU,SAAU,IACVM,MAAO,IACPJ,KAAM,oBAUR,IAAI4C,EAAU,IAAIiQ,GAAalxB,KAAMkY,EAAI,EAAGC,EAAI,IAAK,WAAY,kBAC/DG,EAAK8I,yBAEPH,EAAQlF,MAAQ,EAChB/b,KAAKie,OAAO3P,IAAI,CACd4P,QAAS+C,EACTlF,MAAO,EACPoC,SAAU,IACVM,MAAO,IACPJ,KAAM,iBAERre,KAAKygB,MAAQzgB,KAAKsO,IAAIoS,WACpBxI,EAAI,EACJ,GAAKC,EAAI,EACTnY,KAAKkyB,YAAYzR,MAAM8L,KACvBvsB,KAAKkyB,YAAYzR,MAAM6O,MAEzBtvB,KAAKygB,MAAME,YAAY3gB,KAAKkyB,YAAYzR,MAAMyD,MAC9ClkB,KAAKygB,MAAM+L,iBACXxsB,KAAKygB,MAAMlS,UAAU,mDAWrBvO,KAAK8K,MAAMsD,MAAM,kJAkCjBpO,KAAKihB,QAAQjQ,UACbhR,KAAKiyB,cAAcjhB,UACnBhR,KAAKygB,MAAMzP,UACXyhB,GAAAV,GAAAH,EAAAh1B,WAAA,UAAAoD,MAAA7E,KAAA6E,sDC3HS4O,GAAQ,KAKRE,GAAS,IAET/D,GAAQ,CACnB5O,KAAMiO,OAAOa,MAAMynB,IACnBC,WAAYvoB,OAAOa,MAAM2nB,YACzBxc,IAAK,CACHxH,MAAO,KACPE,OAAQ,MAOC+jB,GAAO,EAKP5mB,GAAa,EAYbpH,GAAOuF,OAAO0oB,MAKdC,IAAW,EACXC,IAAc,EAKdC,IAAc,EAEdC,GAAS,aAKTC,GAAc,kCAKdC,GAAkB,UAElBC,IAAoB,EAEpBC,GAAM,GAWNrI,GAAU,CA4BrB3H,SAAS,GAMEiQ,GAAS,CAEpBC,KAAM,WAeKC,GAAU,CACrBz2B,OAAQ,GA8BR8N,MAAO,CACL,CACEvO,IAAK,mBACLm3B,OAAQC,iBACRvlB,OAAO,EACPwlB,SAAU,WAkBH9oB,GAAQpP,OAAOga,OAAO9F,GCxL5B,SAASikB,KACd,OAAO,IAAIzpB,OAAOggB,KAAKpK,GAdzBplB,EAAAU,EAAAw4B,EAAA,yBAAAD,KAiBAA","file":"app-350806d6023e329994ec.bundle.js","sourcesContent":[" \t// The module cache\n \tvar installedModules = {};\n\n \t// The require function\n \tfunction __webpack_require__(moduleId) {\n\n \t\t// Check if module is in cache\n \t\tif(installedModules[moduleId]) {\n \t\t\treturn installedModules[moduleId].exports;\n \t\t}\n \t\t// Create a new module (and put it into the cache)\n \t\tvar module = installedModules[moduleId] = {\n \t\t\ti: moduleId,\n \t\t\tl: false,\n \t\t\texports: {}\n \t\t};\n\n \t\t// Execute the module function\n \t\tmodules[moduleId].call(module.exports, module, module.exports, __webpack_require__);\n\n \t\t// Flag the module as loaded\n \t\tmodule.l = true;\n\n \t\t// Return the exports of the module\n \t\treturn module.exports;\n \t}\n\n\n \t// expose the modules object (__webpack_modules__)\n \t__webpack_require__.m = modules;\n\n \t// expose the module cache\n \t__webpack_require__.c = installedModules;\n\n \t// define getter function for harmony exports\n \t__webpack_require__.d = function(exports, name, getter) {\n \t\tif(!__webpack_require__.o(exports, name)) {\n \t\t\tObject.defineProperty(exports, name, { enumerable: true, get: getter });\n \t\t}\n \t};\n\n \t// define __esModule on exports\n \t__webpack_require__.r = function(exports) {\n \t\tif(typeof Symbol !== 'undefined' && Symbol.toStringTag) {\n \t\t\tObject.defineProperty(exports, Symbol.toStringTag, { value: 'Module' });\n \t\t}\n \t\tObject.defineProperty(exports, '__esModule', { value: true });\n \t};\n\n \t// create a fake namespace object\n \t// mode & 1: value is a module id, require it\n \t// mode & 2: merge all properties of value into the ns\n \t// mode & 4: return value when already ns object\n \t// mode & 8|1: behave like require\n \t__webpack_require__.t = function(value, mode) {\n \t\tif(mode & 1) value = __webpack_require__(value);\n \t\tif(mode & 8) return value;\n \t\tif((mode & 4) && typeof value === 'object' && value && value.__esModule) return value;\n \t\tvar ns = Object.create(null);\n \t\t__webpack_require__.r(ns);\n \t\tObject.defineProperty(ns, 'default', { enumerable: true, value: value });\n \t\tif(mode & 2 && typeof value != 'string') for(var key in value) __webpack_require__.d(ns, key, function(key) { return value[key]; }.bind(null, key));\n \t\treturn ns;\n \t};\n\n \t// getDefaultExport function for compatibility with non-harmony modules\n \t__webpack_require__.n = function(module) {\n \t\tvar getter = module && module.__esModule ?\n \t\t\tfunction getDefault() { return module['default']; } :\n \t\t\tfunction getModuleExports() { return module; };\n \t\t__webpack_require__.d(getter, 'a', getter);\n \t\treturn getter;\n \t};\n\n \t// Object.prototype.hasOwnProperty.call\n \t__webpack_require__.o = function(object, property) { return Object.prototype.hasOwnProperty.call(object, property); };\n\n \t// __webpack_public_path__\n \t__webpack_require__.p = \"\";\n\n\n \t// Load entry module and return exports\n \treturn __webpack_require__(__webpack_require__.s = 49);\n","require('./_wks-define')('asyncIterator');\n","'use strict';\n// ECMAScript 6 symbols shim\nvar global = require('./_global');\nvar has = require('./_has');\nvar DESCRIPTORS = require('./_descriptors');\nvar $export = require('./_export');\nvar redefine = require('./_redefine');\nvar META = require('./_meta').KEY;\nvar $fails = require('./_fails');\nvar shared = require('./_shared');\nvar setToStringTag = require('./_set-to-string-tag');\nvar uid = require('./_uid');\nvar wks = require('./_wks');\nvar wksExt = require('./_wks-ext');\nvar wksDefine = require('./_wks-define');\nvar enumKeys = require('./_enum-keys');\nvar isArray = require('./_is-array');\nvar anObject = require('./_an-object');\nvar isObject = require('./_is-object');\nvar toIObject = require('./_to-iobject');\nvar toPrimitive = require('./_to-primitive');\nvar createDesc = require('./_property-desc');\nvar _create = require('./_object-create');\nvar gOPNExt = require('./_object-gopn-ext');\nvar $GOPD = require('./_object-gopd');\nvar $DP = require('./_object-dp');\nvar $keys = require('./_object-keys');\nvar gOPD = $GOPD.f;\nvar dP = $DP.f;\nvar gOPN = gOPNExt.f;\nvar $Symbol = global.Symbol;\nvar $JSON = global.JSON;\nvar _stringify = $JSON && $JSON.stringify;\nvar PROTOTYPE = 'prototype';\nvar HIDDEN = wks('_hidden');\nvar TO_PRIMITIVE = wks('toPrimitive');\nvar isEnum = {}.propertyIsEnumerable;\nvar SymbolRegistry = shared('symbol-registry');\nvar AllSymbols = shared('symbols');\nvar OPSymbols = shared('op-symbols');\nvar ObjectProto = Object[PROTOTYPE];\nvar USE_NATIVE = typeof $Symbol == 'function';\nvar QObject = global.QObject;\n// Don't use setters in Qt Script, https://github.com/zloirock/core-js/issues/173\nvar setter = !QObject || !QObject[PROTOTYPE] || !QObject[PROTOTYPE].findChild;\n\n// fallback for old Android, https://code.google.com/p/v8/issues/detail?id=687\nvar setSymbolDesc = DESCRIPTORS && $fails(function () {\n return _create(dP({}, 'a', {\n get: function () { return dP(this, 'a', { value: 7 }).a; }\n })).a != 7;\n}) ? function (it, key, D) {\n var protoDesc = gOPD(ObjectProto, key);\n if (protoDesc) delete ObjectProto[key];\n dP(it, key, D);\n if (protoDesc && it !== ObjectProto) dP(ObjectProto, key, protoDesc);\n} : dP;\n\nvar wrap = function (tag) {\n var sym = AllSymbols[tag] = _create($Symbol[PROTOTYPE]);\n sym._k = tag;\n return sym;\n};\n\nvar isSymbol = USE_NATIVE && typeof $Symbol.iterator == 'symbol' ? function (it) {\n return typeof it == 'symbol';\n} : function (it) {\n return it instanceof $Symbol;\n};\n\nvar $defineProperty = function defineProperty(it, key, D) {\n if (it === ObjectProto) $defineProperty(OPSymbols, key, D);\n anObject(it);\n key = toPrimitive(key, true);\n anObject(D);\n if (has(AllSymbols, key)) {\n if (!D.enumerable) {\n if (!has(it, HIDDEN)) dP(it, HIDDEN, createDesc(1, {}));\n it[HIDDEN][key] = true;\n } else {\n if (has(it, HIDDEN) && it[HIDDEN][key]) it[HIDDEN][key] = false;\n D = _create(D, { enumerable: createDesc(0, false) });\n } return setSymbolDesc(it, key, D);\n } return dP(it, key, D);\n};\nvar $defineProperties = function defineProperties(it, P) {\n anObject(it);\n var keys = enumKeys(P = toIObject(P));\n var i = 0;\n var l = keys.length;\n var key;\n while (l > i) $defineProperty(it, key = keys[i++], P[key]);\n return it;\n};\nvar $create = function create(it, P) {\n return P === undefined ? _create(it) : $defineProperties(_create(it), P);\n};\nvar $propertyIsEnumerable = function propertyIsEnumerable(key) {\n var E = isEnum.call(this, key = toPrimitive(key, true));\n if (this === ObjectProto && has(AllSymbols, key) && !has(OPSymbols, key)) return false;\n return E || !has(this, key) || !has(AllSymbols, key) || has(this, HIDDEN) && this[HIDDEN][key] ? E : true;\n};\nvar $getOwnPropertyDescriptor = function getOwnPropertyDescriptor(it, key) {\n it = toIObject(it);\n key = toPrimitive(key, true);\n if (it === ObjectProto && has(AllSymbols, key) && !has(OPSymbols, key)) return;\n var D = gOPD(it, key);\n if (D && has(AllSymbols, key) && !(has(it, HIDDEN) && it[HIDDEN][key])) D.enumerable = true;\n return D;\n};\nvar $getOwnPropertyNames = function getOwnPropertyNames(it) {\n var names = gOPN(toIObject(it));\n var result = [];\n var i = 0;\n var key;\n while (names.length > i) {\n if (!has(AllSymbols, key = names[i++]) && key != HIDDEN && key != META) result.push(key);\n } return result;\n};\nvar $getOwnPropertySymbols = function getOwnPropertySymbols(it) {\n var IS_OP = it === ObjectProto;\n var names = gOPN(IS_OP ? OPSymbols : toIObject(it));\n var result = [];\n var i = 0;\n var key;\n while (names.length > i) {\n if (has(AllSymbols, key = names[i++]) && (IS_OP ? has(ObjectProto, key) : true)) result.push(AllSymbols[key]);\n } return result;\n};\n\n// 19.4.1.1 Symbol([description])\nif (!USE_NATIVE) {\n $Symbol = function Symbol() {\n if (this instanceof $Symbol) throw TypeError('Symbol is not a constructor!');\n var tag = uid(arguments.length > 0 ? arguments[0] : undefined);\n var $set = function (value) {\n if (this === ObjectProto) $set.call(OPSymbols, value);\n if (has(this, HIDDEN) && has(this[HIDDEN], tag)) this[HIDDEN][tag] = false;\n setSymbolDesc(this, tag, createDesc(1, value));\n };\n if (DESCRIPTORS && setter) setSymbolDesc(ObjectProto, tag, { configurable: true, set: $set });\n return wrap(tag);\n };\n redefine($Symbol[PROTOTYPE], 'toString', function toString() {\n return this._k;\n });\n\n $GOPD.f = $getOwnPropertyDescriptor;\n $DP.f = $defineProperty;\n require('./_object-gopn').f = gOPNExt.f = $getOwnPropertyNames;\n require('./_object-pie').f = $propertyIsEnumerable;\n require('./_object-gops').f = $getOwnPropertySymbols;\n\n if (DESCRIPTORS && !require('./_library')) {\n redefine(ObjectProto, 'propertyIsEnumerable', $propertyIsEnumerable, true);\n }\n\n wksExt.f = function (name) {\n return wrap(wks(name));\n };\n}\n\n$export($export.G + $export.W + $export.F * !USE_NATIVE, { Symbol: $Symbol });\n\nfor (var es6Symbols = (\n // 19.4.2.2, 19.4.2.3, 19.4.2.4, 19.4.2.6, 19.4.2.8, 19.4.2.9, 19.4.2.10, 19.4.2.11, 19.4.2.12, 19.4.2.13, 19.4.2.14\n 'hasInstance,isConcatSpreadable,iterator,match,replace,search,species,split,toPrimitive,toStringTag,unscopables'\n).split(','), j = 0; es6Symbols.length > j;)wks(es6Symbols[j++]);\n\nfor (var wellKnownSymbols = $keys(wks.store), k = 0; wellKnownSymbols.length > k;) wksDefine(wellKnownSymbols[k++]);\n\n$export($export.S + $export.F * !USE_NATIVE, 'Symbol', {\n // 19.4.2.1 Symbol.for(key)\n 'for': function (key) {\n return has(SymbolRegistry, key += '')\n ? SymbolRegistry[key]\n : SymbolRegistry[key] = $Symbol(key);\n },\n // 19.4.2.5 Symbol.keyFor(sym)\n keyFor: function keyFor(sym) {\n if (!isSymbol(sym)) throw TypeError(sym + ' is not a symbol!');\n for (var key in SymbolRegistry) if (SymbolRegistry[key] === sym) return key;\n },\n useSetter: function () { setter = true; },\n useSimple: function () { setter = false; }\n});\n\n$export($export.S + $export.F * !USE_NATIVE, 'Object', {\n // 19.1.2.2 Object.create(O [, Properties])\n create: $create,\n // 19.1.2.4 Object.defineProperty(O, P, Attributes)\n defineProperty: $defineProperty,\n // 19.1.2.3 Object.defineProperties(O, Properties)\n defineProperties: $defineProperties,\n // 19.1.2.6 Object.getOwnPropertyDescriptor(O, P)\n getOwnPropertyDescriptor: $getOwnPropertyDescriptor,\n // 19.1.2.7 Object.getOwnPropertyNames(O)\n getOwnPropertyNames: $getOwnPropertyNames,\n // 19.1.2.8 Object.getOwnPropertySymbols(O)\n getOwnPropertySymbols: $getOwnPropertySymbols\n});\n\n// 24.3.2 JSON.stringify(value [, replacer [, space]])\n$JSON && $export($export.S + $export.F * (!USE_NATIVE || $fails(function () {\n var S = $Symbol();\n // MS Edge converts symbol values to JSON as {}\n // WebKit converts symbol values to JSON as null\n // V8 throws on boxed symbols\n return _stringify([S]) != '[null]' || _stringify({ a: S }) != '{}' || _stringify(Object(S)) != '{}';\n})), 'JSON', {\n stringify: function stringify(it) {\n var args = [it];\n var i = 1;\n var replacer, $replacer;\n while (arguments.length > i) args.push(arguments[i++]);\n $replacer = replacer = args[1];\n if (!isObject(replacer) && it === undefined || isSymbol(it)) return; // IE8 returns string on undefined\n if (!isArray(replacer)) replacer = function (key, value) {\n if (typeof $replacer == 'function') value = $replacer.call(this, key, value);\n if (!isSymbol(value)) return value;\n };\n args[1] = replacer;\n return _stringify.apply($JSON, args);\n }\n});\n\n// 19.4.3.4 Symbol.prototype[@@toPrimitive](hint)\n$Symbol[PROTOTYPE][TO_PRIMITIVE] || require('./_hide')($Symbol[PROTOTYPE], TO_PRIMITIVE, $Symbol[PROTOTYPE].valueOf);\n// 19.4.3.5 Symbol.prototype[@@toStringTag]\nsetToStringTag($Symbol, 'Symbol');\n// 20.2.1.9 Math[@@toStringTag]\nsetToStringTag(Math, 'Math', true);\n// 24.3.3 JSON[@@toStringTag]\nsetToStringTag(global.JSON, 'JSON', true);\n","// 19.1.3.19 Object.setPrototypeOf(O, proto)\nvar $export = require('./_export');\n$export($export.S, 'Object', { setPrototypeOf: require('./_set-proto').set });\n","var store = require('./_shared')('wks');\nvar uid = require('./_uid');\nvar Symbol = require('./_global').Symbol;\nvar USE_SYMBOL = typeof Symbol == 'function';\n\nvar $exports = module.exports = function (name) {\n return store[name] || (store[name] =\n USE_SYMBOL && Symbol[name] || (USE_SYMBOL ? Symbol : uid)('Symbol.' + name));\n};\n\n$exports.store = store;\n","// https://github.com/zloirock/core-js/issues/86#issuecomment-115759028\nvar global = module.exports = typeof window != 'undefined' && window.Math == Math\n ? window : typeof self != 'undefined' && self.Math == Math ? self\n // eslint-disable-next-line no-new-func\n : Function('return this')();\nif (typeof __g == 'number') __g = global; // eslint-disable-line no-undef\n","// 26.1.6 Reflect.get(target, propertyKey [, receiver])\nvar gOPD = require('./_object-gopd');\nvar getPrototypeOf = require('./_object-gpo');\nvar has = require('./_has');\nvar $export = require('./_export');\nvar isObject = require('./_is-object');\nvar anObject = require('./_an-object');\n\nfunction get(target, propertyKey /* , receiver */) {\n var receiver = arguments.length < 3 ? target : arguments[2];\n var desc, proto;\n if (anObject(target) === receiver) return target[propertyKey];\n if (desc = gOPD.f(target, propertyKey)) return has(desc, 'value')\n ? desc.value\n : desc.get !== undefined\n ? desc.get.call(receiver)\n : undefined;\n if (isObject(proto = getPrototypeOf(target))) return get(proto, propertyKey, receiver);\n}\n\n$export($export.S, 'Reflect', { get: get });\n","var hasOwnProperty = {}.hasOwnProperty;\nmodule.exports = function (it, key) {\n return hasOwnProperty.call(it, key);\n};\n","var dP = require('./_object-dp');\nvar createDesc = require('./_property-desc');\nmodule.exports = require('./_descriptors') ? function (object, key, value) {\n return dP.f(object, key, createDesc(1, value));\n} : function (object, key, value) {\n object[key] = value;\n return object;\n};\n","var anObject = require('./_an-object');\nvar IE8_DOM_DEFINE = require('./_ie8-dom-define');\nvar toPrimitive = require('./_to-primitive');\nvar dP = Object.defineProperty;\n\nexports.f = require('./_descriptors') ? Object.defineProperty : function defineProperty(O, P, Attributes) {\n anObject(O);\n P = toPrimitive(P, true);\n anObject(Attributes);\n if (IE8_DOM_DEFINE) try {\n return dP(O, P, Attributes);\n } catch (e) { /* empty */ }\n if ('get' in Attributes || 'set' in Attributes) throw TypeError('Accessors not supported!');\n if ('value' in Attributes) O[P] = Attributes.value;\n return O;\n};\n","module.exports = function (it) {\n return typeof it === 'object' ? it !== null : typeof it === 'function';\n};\n","// Thank's IE8 for his funny defineProperty\nmodule.exports = !require('./_fails')(function () {\n return Object.defineProperty({}, 'a', { get: function () { return 7; } }).a != 7;\n});\n","// to indexed object, toObject with fallback for non-array-like ES3 strings\nvar IObject = require('./_iobject');\nvar defined = require('./_defined');\nmodule.exports = function (it) {\n return IObject(defined(it));\n};\n","var isObject = require('./_is-object');\nmodule.exports = function (it) {\n if (!isObject(it)) throw TypeError(it + ' is not an object!');\n return it;\n};\n","module.exports = function (exec) {\n try {\n return !!exec();\n } catch (e) {\n return true;\n }\n};\n","var global = require('./_global');\nvar core = require('./_core');\nvar hide = require('./_hide');\nvar redefine = require('./_redefine');\nvar ctx = require('./_ctx');\nvar PROTOTYPE = 'prototype';\n\nvar $export = function (type, name, source) {\n var IS_FORCED = type & $export.F;\n var IS_GLOBAL = type & $export.G;\n var IS_STATIC = type & $export.S;\n var IS_PROTO = type & $export.P;\n var IS_BIND = type & $export.B;\n var target = IS_GLOBAL ? global : IS_STATIC ? global[name] || (global[name] = {}) : (global[name] || {})[PROTOTYPE];\n var exports = IS_GLOBAL ? core : core[name] || (core[name] = {});\n var expProto = exports[PROTOTYPE] || (exports[PROTOTYPE] = {});\n var key, own, out, exp;\n if (IS_GLOBAL) source = name;\n for (key in source) {\n // contains in native\n own = !IS_FORCED && target && target[key] !== undefined;\n // export native or passed\n out = (own ? target : source)[key];\n // bind timers to global for call from export context\n exp = IS_BIND && own ? ctx(out, global) : IS_PROTO && typeof out == 'function' ? ctx(Function.call, out) : out;\n // extend global\n if (target) redefine(target, key, out, type & $export.U);\n // export\n if (exports[key] != out) hide(exports, key, exp);\n if (IS_PROTO && expProto[key] != out) expProto[key] = out;\n }\n};\nglobal.core = core;\n// type bitmap\n$export.F = 1; // forced\n$export.G = 2; // global\n$export.S = 4; // static\n$export.P = 8; // proto\n$export.B = 16; // bind\n$export.W = 32; // wrap\n$export.U = 64; // safe\n$export.R = 128; // real proto method for `library`\nmodule.exports = $export;\n","var id = 0;\nvar px = Math.random();\nmodule.exports = function (key) {\n return 'Symbol('.concat(key === undefined ? '' : key, ')_', (++id + px).toString(36));\n};\n","var global = require('./_global');\nvar hide = require('./_hide');\nvar has = require('./_has');\nvar SRC = require('./_uid')('src');\nvar $toString = require('./_function-to-string');\nvar TO_STRING = 'toString';\nvar TPL = ('' + $toString).split(TO_STRING);\n\nrequire('./_core').inspectSource = function (it) {\n return $toString.call(it);\n};\n\n(module.exports = function (O, key, val, safe) {\n var isFunction = typeof val == 'function';\n if (isFunction) has(val, 'name') || hide(val, 'name', key);\n if (O[key] === val) return;\n if (isFunction) has(val, SRC) || hide(val, SRC, O[key] ? '' + O[key] : TPL.join(String(key)));\n if (O === global) {\n O[key] = val;\n } else if (!safe) {\n delete O[key];\n hide(O, key, val);\n } else if (O[key]) {\n O[key] = val;\n } else {\n hide(O, key, val);\n }\n// add fake Function#toString for correct work wrapped methods / constructors with methods like LoDash isNative\n})(Function.prototype, TO_STRING, function toString() {\n return typeof this == 'function' && this[SRC] || $toString.call(this);\n});\n","// 19.1.2.14 / 15.2.3.14 Object.keys(O)\nvar $keys = require('./_object-keys-internal');\nvar enumBugKeys = require('./_enum-bug-keys');\n\nmodule.exports = Object.keys || function keys(O) {\n return $keys(O, enumBugKeys);\n};\n","var dP = require('./_object-dp').f;\nvar FProto = Function.prototype;\nvar nameRE = /^\\s*function ([^ (]*)/;\nvar NAME = 'name';\n\n// 19.2.4.2 name\nNAME in FProto || require('./_descriptors') && dP(FProto, NAME, {\n configurable: true,\n get: function () {\n try {\n return ('' + this).match(nameRE)[1];\n } catch (e) {\n return '';\n }\n }\n});\n","var core = require('./_core');\nvar global = require('./_global');\nvar SHARED = '__core-js_shared__';\nvar store = global[SHARED] || (global[SHARED] = {});\n\n(module.exports = function (key, value) {\n return store[key] || (store[key] = value !== undefined ? value : {});\n})('versions', []).push({\n version: core.version,\n mode: require('./_library') ? 'pure' : 'global',\n copyright: '© 2019 Denis Pushkarev (zloirock.ru)'\n});\n","var core = module.exports = { version: '2.6.5' };\nif (typeof __e == 'number') __e = core; // eslint-disable-line no-undef\n","module.exports = false;\n","module.exports = function (bitmap, value) {\n return {\n enumerable: !(bitmap & 1),\n configurable: !(bitmap & 2),\n writable: !(bitmap & 4),\n value: value\n };\n};\n","exports.f = {}.propertyIsEnumerable;\n","// 7.1.1 ToPrimitive(input [, PreferredType])\nvar isObject = require('./_is-object');\n// instead of the ES6 spec version, we didn't implement @@toPrimitive case\n// and the second argument - flag - preferred type is a string\nmodule.exports = function (it, S) {\n if (!isObject(it)) return it;\n var fn, val;\n if (S && typeof (fn = it.toString) == 'function' && !isObject(val = fn.call(it))) return val;\n if (typeof (fn = it.valueOf) == 'function' && !isObject(val = fn.call(it))) return val;\n if (!S && typeof (fn = it.toString) == 'function' && !isObject(val = fn.call(it))) return val;\n throw TypeError(\"Can't convert object to primitive value\");\n};\n","module.exports = {};\n","var toString = {}.toString;\n\nmodule.exports = function (it) {\n return toString.call(it).slice(8, -1);\n};\n","var shared = require('./_shared')('keys');\nvar uid = require('./_uid');\nmodule.exports = function (key) {\n return shared[key] || (shared[key] = uid(key));\n};\n","// IE 8- don't enum bug keys\nmodule.exports = (\n 'constructor,hasOwnProperty,isPrototypeOf,propertyIsEnumerable,toLocaleString,toString,valueOf'\n).split(',');\n","var def = require('./_object-dp').f;\nvar has = require('./_has');\nvar TAG = require('./_wks')('toStringTag');\n\nmodule.exports = function (it, tag, stat) {\n if (it && !has(it = stat ? it : it.prototype, TAG)) def(it, TAG, { configurable: true, value: tag });\n};\n","var pIE = require('./_object-pie');\nvar createDesc = require('./_property-desc');\nvar toIObject = require('./_to-iobject');\nvar toPrimitive = require('./_to-primitive');\nvar has = require('./_has');\nvar IE8_DOM_DEFINE = require('./_ie8-dom-define');\nvar gOPD = Object.getOwnPropertyDescriptor;\n\nexports.f = require('./_descriptors') ? gOPD : function getOwnPropertyDescriptor(O, P) {\n O = toIObject(O);\n P = toPrimitive(P, true);\n if (IE8_DOM_DEFINE) try {\n return gOPD(O, P);\n } catch (e) { /* empty */ }\n if (has(O, P)) return createDesc(!pIE.f.call(O, P), O[P]);\n};\n","'use strict';\nvar addToUnscopables = require('./_add-to-unscopables');\nvar step = require('./_iter-step');\nvar Iterators = require('./_iterators');\nvar toIObject = require('./_to-iobject');\n\n// 22.1.3.4 Array.prototype.entries()\n// 22.1.3.13 Array.prototype.keys()\n// 22.1.3.29 Array.prototype.values()\n// 22.1.3.30 Array.prototype[@@iterator]()\nmodule.exports = require('./_iter-define')(Array, 'Array', function (iterated, kind) {\n this._t = toIObject(iterated); // target\n this._i = 0; // next index\n this._k = kind; // kind\n// 22.1.5.2.1 %ArrayIteratorPrototype%.next()\n}, function () {\n var O = this._t;\n var kind = this._k;\n var index = this._i++;\n if (!O || index >= O.length) {\n this._t = undefined;\n return step(1);\n }\n if (kind == 'keys') return step(0, index);\n if (kind == 'values') return step(0, O[index]);\n return step(0, [index, O[index]]);\n}, 'values');\n\n// argumentsList[@@iterator] is %ArrayProto_values% (9.4.4.6, 9.4.4.7)\nIterators.Arguments = Iterators.Array;\n\naddToUnscopables('keys');\naddToUnscopables('values');\naddToUnscopables('entries');\n","module.exports = !require('./_descriptors') && !require('./_fails')(function () {\n return Object.defineProperty(require('./_dom-create')('div'), 'a', { get: function () { return 7; } }).a != 7;\n});\n","var isObject = require('./_is-object');\nvar document = require('./_global').document;\n// typeof document.createElement is 'object' in old IE\nvar is = isObject(document) && isObject(document.createElement);\nmodule.exports = function (it) {\n return is ? document.createElement(it) : {};\n};\n","// 7.2.1 RequireObjectCoercible(argument)\nmodule.exports = function (it) {\n if (it == undefined) throw TypeError(\"Can't call method on \" + it);\n return it;\n};\n","// optional / simple context binding\nvar aFunction = require('./_a-function');\nmodule.exports = function (fn, that, length) {\n aFunction(fn);\n if (that === undefined) return fn;\n switch (length) {\n case 1: return function (a) {\n return fn.call(that, a);\n };\n case 2: return function (a, b) {\n return fn.call(that, a, b);\n };\n case 3: return function (a, b, c) {\n return fn.call(that, a, b, c);\n };\n }\n return function (/* ...args */) {\n return fn.apply(that, arguments);\n };\n};\n","module.exports = function (it) {\n if (typeof it != 'function') throw TypeError(it + ' is not a function!');\n return it;\n};\n","// 19.1.2.2 / 15.2.3.5 Object.create(O [, Properties])\nvar anObject = require('./_an-object');\nvar dPs = require('./_object-dps');\nvar enumBugKeys = require('./_enum-bug-keys');\nvar IE_PROTO = require('./_shared-key')('IE_PROTO');\nvar Empty = function () { /* empty */ };\nvar PROTOTYPE = 'prototype';\n\n// Create object with fake `null` prototype: use iframe Object with cleared prototype\nvar createDict = function () {\n // Thrash, waste and sodomy: IE GC bug\n var iframe = require('./_dom-create')('iframe');\n var i = enumBugKeys.length;\n var lt = '<';\n var gt = '>';\n var iframeDocument;\n iframe.style.display = 'none';\n require('./_html').appendChild(iframe);\n iframe.src = 'javascript:'; // eslint-disable-line no-script-url\n // createDict = iframe.contentWindow.Object;\n // html.removeChild(iframe);\n iframeDocument = iframe.contentWindow.document;\n iframeDocument.open();\n iframeDocument.write(lt + 'script' + gt + 'document.F=Object' + lt + '/script' + gt);\n iframeDocument.close();\n createDict = iframeDocument.F;\n while (i--) delete createDict[PROTOTYPE][enumBugKeys[i]];\n return createDict();\n};\n\nmodule.exports = Object.create || function create(O, Properties) {\n var result;\n if (O !== null) {\n Empty[PROTOTYPE] = anObject(O);\n result = new Empty();\n Empty[PROTOTYPE] = null;\n // add \"__proto__\" for Object.getPrototypeOf polyfill\n result[IE_PROTO] = O;\n } else result = createDict();\n return Properties === undefined ? result : dPs(result, Properties);\n};\n","var has = require('./_has');\nvar toIObject = require('./_to-iobject');\nvar arrayIndexOf = require('./_array-includes')(false);\nvar IE_PROTO = require('./_shared-key')('IE_PROTO');\n\nmodule.exports = function (object, names) {\n var O = toIObject(object);\n var i = 0;\n var result = [];\n var key;\n for (key in O) if (key != IE_PROTO) has(O, key) && result.push(key);\n // Don't enum bug & hidden keys\n while (names.length > i) if (has(O, key = names[i++])) {\n ~arrayIndexOf(result, key) || result.push(key);\n }\n return result;\n};\n","// 7.1.4 ToInteger\nvar ceil = Math.ceil;\nvar floor = Math.floor;\nmodule.exports = function (it) {\n return isNaN(it = +it) ? 0 : (it > 0 ? floor : ceil)(it);\n};\n","// 19.1.2.9 / 15.2.3.2 Object.getPrototypeOf(O)\nvar has = require('./_has');\nvar toObject = require('./_to-object');\nvar IE_PROTO = require('./_shared-key')('IE_PROTO');\nvar ObjectProto = Object.prototype;\n\nmodule.exports = Object.getPrototypeOf || function (O) {\n O = toObject(O);\n if (has(O, IE_PROTO)) return O[IE_PROTO];\n if (typeof O.constructor == 'function' && O instanceof O.constructor) {\n return O.constructor.prototype;\n } return O instanceof Object ? ObjectProto : null;\n};\n","// 7.1.13 ToObject(argument)\nvar defined = require('./_defined');\nmodule.exports = function (it) {\n return Object(defined(it));\n};\n","export default class SplashScreen extends Phaser.Scene {\n /**\n * Takes care of loading the main game assets, including textures, tile\n * maps, sound effects and other binary files, while displaying a busy\n * splash screen.\n *\n * @extends Phaser.Scene\n */\n constructor() {\n super({\n key: 'SplashScreen',\n\n // Splash screen and progress bar textures.\n pack: {\n files: [\n {\n key: 'splash-screen',\n type: 'image'\n },\n {\n key: 'progress-bar',\n type: 'image'\n },\n {\n key: 'progress-bg',\n type: 'image'\n }\n ]\n }\n });\n }\n\n /**\n * Show the splash screen and prepare to load game assets.\n *\n * @protected\n */\n preload() {\n // Display cover and progress bar textures.\n this.showCover();\n this.setupRotationHandling();\n this.setupiOS8BrowserCompatability();\n let dataPath = 'gamedata.json';\n this.load.json('data', dataPath);\n\n this.load.bitmapFont(\n 'HelloHeadline',\n 'fonts/helloheadline.png',\n 'fonts/helloheadline.xml'\n );\n }\n\n\n setupRotationHandling() {\n this.createRotateMessage();\n this.startedInPortrait = (this.scene.scene.scale.orientation === Phaser.Scale.PORTRAIT);\n if (!this.startedInPortrait) {\n this.hideOrientationMessage();\n }\n this.scene.scene.scale.refresh();\n\n let that = this;\n this.scene.scene.scale.on('orientationchange', function (orientation) {\n if (orientation === Phaser.Scale.PORTRAIT) {\n that.showOrientationMessage();\n } else if (orientation === Phaser.Scale.LANDSCAPE) {\n that.hideOrientationMessage();\n }\n });\n }\n\n setupiOS8BrowserCompatability() {\n if (this.scene.systems.game.device.os.iOS) {\n if (this.scene.systems.game.device.os.iOSVersion === 8) {\n let that = this;\n this.scene.scene.scale.on('resize', function (gameSize, baseSize, displaySize, resolution) {\n that.gameResized();\n });\n\n this.makeFullScreenMessage();\n this.makeFullScreenMessageBG();\n this.gameResized();\n }\n else {\n this.scene.scene.scale.refresh();\n\n }\n }\n }\n\n /**\n * Set up animations, plugins etc. that depend on the game assets we just\n * loaded.\n *\n * @protected\n */\n create() {\n this.showProgressBar();\n this.scene.scene.scale.refresh();\n // HINT: Declare all game assets to be loaded here.\n this.load.image('logo');\n this.load.image('startBtn', 'play_btn_lrg.png');\n this.load.image('playBtn', 'play_btn_small.png');\n this.load.image('bandit', 'bandit_static.png');\n this.load.image('bingo', 'bingo_static.png');\n // this.load.image('resetBtn');\n this.load.image('score_box');\n this.load.image('score_popup');\n this.load.image('blank');\n this.load.image('hand', 'help_hand.png');\n this.load.image('titleBG', 'splash-screen.png');\n this.load.image('pauseBtn', 'pause_btn.png');\n this.load.image('pause_popup');\n this.load.image('popup');\n this.load.image('sound_on', 'sound_btn_on.png');\n this.load.image('sound_off', 'sound_btn_off.png');\n this.load.image('helpBtn', 'help_btn.png');\n\n this.gameConfig = this.cache.json.get('data').gameConfig;\n this.spineData = this.cache.json.get('data').spineData;\n this.sounds = this.cache.json.get('data').soundConfig;\n this.idleSFX = this.cache.json.get('data').idleSFX;\n this.helpConfig = this.cache.json.get('data').helpConfig;\n\n this.load.atlas('sprites', 'spritesheets/keepyuppy_sprites.png', 'spritesheets/keepyuppy_sprites.json');\n\n for (let p = 0; p < this.helpConfig.steps.length; p++) {\n this.load.image(this.helpConfig.steps[p].image);\n }\n\n let idleSFXLength = this.idleSFX.length;\n for (let p = 0; p < idleSFXLength; p++) {\n let cSound = this.idleSFX[p];\n let oggPath = 'sound/' + cSound + '.ogg';\n let mp3Path = 'sound/' + cSound + '.mp3';\n this.load.audio(cSound, [oggPath, mp3Path]);\n }\n\n let soundsLength = this.sounds.length;\n for (let m = 0; m < soundsLength; m++) {\n let cSound = this.sounds[m];\n if (cSound.variants !== undefined) {\n for (let n = 0; n < cSound.variants; n++) {\n let oggPath = 'sound/' + cSound.file + (n + 1) + '.ogg';\n let mp3Path = 'sound/' + cSound.file + +(n + 1) + '.mp3';\n this.load.audio(cSound.name + (n + 1), [oggPath, mp3Path]);\n }\n } else {\n let oggPath = 'sound/' + cSound.file + '.ogg';\n let mp3Path = 'sound/' + cSound.file + '.mp3';\n this.load.audio(cSound.name, [oggPath, mp3Path]);\n }\n }\n\n for (var i = 0; i < this.gameConfig.backgrounds.length; i++) {\n this.load.image(\n this.gameConfig.backgrounds[i].name,\n this.gameConfig.backgrounds[i].file\n );\n }\n\n this.load.setPath('assets/spine');\n let atlasLength = this.spineData.length;\n for (let k = 0; k < atlasLength; k++) {\n /* console.log(\n 'loading ' + this.spineData[l].key + ' from ' + this.spineData[l].atlas\n ); */\n let key = this.spineData[k].key;\n let a = this.spineData[k].atlas;\n let data = this.spineData[k].data;\n\n var pixelRatio = this.scene.systems.game.device.os.pixelRatio;\n window.spriteScaler = 1;\n if (pixelRatio <= 1 && !this.scene.systems.game.device.os.desktop) {\n window.spriteScaler = 3;\n a = this.spineData[k].atlas_1x;\n key = this.spineData[k].key_1x;\n data = this.spineData[k].data_1x;\n }\n\n this.load.spine(\n key,\n data,\n a\n );\n }\n\n this.load.on('complete', this.loadComplete, this);\n this.load.start();\n }\n\n loadComplete() {\n this.scene.start('Title');\n }\n\n // ------------------------------------------------------------------------\n\n /**\n * Show the splash screen cover.\n *\n * @private\n */\n showCover() {\n this.splash = this.add.image(0, 0, 'splash-screen').setOrigin(0);\n this.progressBG = this.add.image(568, 320, 'progress-bg').setOrigin(0.5);\n }\n\n /**\n * Show the progress bar and set up its animation effect.\n *\n * @private\n */\n showProgressBar() {\n // Get the progress bar filler texture dimensions.\n const { width: w, height: h } = this.textures.get('progress-bar').get();\n\n // Place the filler over the progress bar of the splash screen.\n const img = this.add\n .sprite(568 - w / 2, 320, 'progress-bar')\n .setOrigin(0, 0.5);\n\n // Crop the filler along its width, proportional to the amount of files\n // loaded.\n this.load.on('progress', v => img.setCrop(0, 0, Math.ceil(v * w), h));\n }\n\n createRotateMessage() {\n let isDesktop = this.scene.systems.game.device.os.desktop;\n if (!isDesktop) {\n this._errorMsgDiv = $(\"
\");\n $('body').append(this._errorMsgDiv);\n if (this.scene.systems.game.device.os.iPad) {\n this._errorMsgDiv.css({\n 'background-image': \"url('orientation/orientation_ipad.jpg\" + \"')\",\n });\n }\n else {\n this._errorMsgDiv.css({\n 'background-image': \"url('orientation/orientation.jpg\" + \"')\",\n });\n }\n }\n }\n\n showOrientationMessage() {\n let version = this.scene.systems.game.device.os.iOSVersion;\n if (version === 8) {\n this.hideNonFullScreenMessage();\n }\n $('#rotateMessage').addClass('showMessage');\n $('#rotateMessage').removeClass('hideMessage');\n\n for (let i = 0; i < this.game.scene.scenes.length; ++i) {\n this.scene.sleep(this.game.scene.scenes[i].scene.key);\n }\n }\n\n hideOrientationMessage() {\n $('#rotateMessage').addClass('hideMessage');\n $('#rotateMessage').removeClass('showMessage');\n // $(this.game.canvas).show();\n if (this.previousMuteState) {\n this.previousMuteState = false;\n }\n for (let i = 0; i < this.game.scene.scenes.length; ++i) {\n this.scene.wake(this.game.scene.scenes[i].scene.key);\n }\n\n document.body.scrollTop = 0; // For Safari\n document.documentElement.scrollTop = 0; // For Chrome, Firefox, IE and Opera\n }\n\n //For iOS 8 - if the user touches the bottom 44px of the screen, it kicks them out of fullscreen mode.\n //SO! catch that case, and show a message to the user to swipe up to enter fullscreen again.\n gameResized() {\n if (!this.scene.systems.game.device.os.desktop) {\n if (this.scene.systems.game.device.os.iOS && this.scene.systems.game.device.os.iPhone) {\n if (this.scene.systems.game.device.os.iOSVersion <= 8) {\n if (this.scene.scene.scale.orientation === Phaser.Scale.LANDSCAPE) {\n if (this.lastHeight != window.innerHeight) {\n this.lastHeight = window.innerHeight;\n if (this.isMinimalView()) {\n // this.showNonFullScreenMessage();\n }\n else {\n this.scene.scene.scale.refresh();\n }\n }\n else {\n // this.hideNonFullScreenMessage();\n }\n }\n }\n }\n }\n }\n\n isMinimalView() {\n let spec = this.deviceSpec();\n if (spec !== undefined) {\n return (window.innerHeight !== spec[4]);\n }\n else {\n return false;\n }\n }\n\n showNonFullScreenMessage() {\n global.scrollTo(0, 0);\n\n $('#leftFullscreenMessage').removeClass('hideMessage');\n $('#fullscreenOverlay').removeClass('hideMessage');\n $('#leftFullscreenMessage').addClass('showMessage');\n $('#fullscreenOverlay').addClass('showMessage');\n\n this.nonFullScreenMessage.css({\n 'width': global.innerWidth + 'px',\n 'height': global.innerHeight * 2 + 'px',\n });\n this.nonFullScreenMessageBG.css({\n 'width': global.innerWidth + 'px',\n 'height': global.innerHeight + 'px',\n });\n for (let i = 0; i < this.game.scene.scenes.length; ++i) {\n this.scene.sleep(this.game.scene.scenes[i].scene.key);\n }\n }\n\n hideNonFullScreenMessage() {\n $('#leftFullscreenMessage').removeClass('showMessage');\n $('#fullscreenOverlay').removeClass('showMessage');\n $('#leftFullscreenMessage').addClass('hideMessage');\n $('#fullscreenOverlay').addClass('hideMessage');\n for (let i = 0; i < this.game.scene.scenes.length; ++i) {\n this.scene.wake(this.game.scene.scenes[i].scene.key);\n }\n }\n\n makeFullScreenMessage() {\n // var nonFullScreenMessage = $(\"

\"+\"Swipe Up\"+\"

\");\n // $(\"body\").append(nonFullScreenMessage);\n //\n // this.nonFullScreenMessage = nonFullScreenMessage;\n }\n\n makeFullScreenMessageBG() {\n var nonFullScreenMessageBG = $(\"
\");\n $('body').append(nonFullScreenMessageBG);\n\n this.nonFullScreenMessageBG = nonFullScreenMessageBG;\n }\n\n deviceSpec() {\n let index, spec;\n\n const specs = [\n [1280, 1762, 1920, 1280, 320, 480, 2, 'iPhone 4'],\n [1280, 2114, 2272, 1280, 320, 568, 2, 'iPhone 5 or 5s'],\n\n [1500, 2510, 2668, 1500, 375, 667, 2, 'iPhone 6'],\n // Equivalent to iPhone 5\n // [1280, 2114, 2272, 1280, 320, 568, 2, 'iPhone 6 (Zoomed)'],\n\n [1656, 2785, 2944, 1656, 414, 736, 3, 'iPhone 6 plus'],\n [1500, 2509, 2668, 1500, 375, 667, 3, 'iPhone 6 plus (Zoomed)'],\n\n [3072, 3936, 4096, 2912, 768, 1024, 1, 'iPad 2'],\n [3072, 3938, 4096, 2914, 768, 1024, 2, 'iPad Air or Retina'],\n\n [4096, 5306, 5464, 3938, 1024, 1366, 2, 'iPad Pro']\n ];\n\n index = specs.length;\n while (index--) {\n if (window.screen.width === specs[index][4] &&\n window.screen.height === specs[index][5] &&\n window.devicePixelRatio === specs[index][6]) {\n spec = specs[index];\n\n break;\n }\n }\n\n return spec;\n }\n\n destroy() {\n this.gameConfig.destroy();\n this.spineData.destroy();\n this.sounds.destroy();\n this.helpConfig.destroy();\n this.splash.destroy();\n this.progressBG.destroy();\n super.destroy();\n }\n}\n","var global = require('./_global');\nvar core = require('./_core');\nvar LIBRARY = require('./_library');\nvar wksExt = require('./_wks-ext');\nvar defineProperty = require('./_object-dp').f;\nmodule.exports = function (name) {\n var $Symbol = core.Symbol || (core.Symbol = LIBRARY ? {} : global.Symbol || {});\n if (name.charAt(0) != '_' && !(name in $Symbol)) defineProperty($Symbol, name, { value: wksExt.f(name) });\n};\n","exports.f = require('./_wks');\n","exports.f = Object.getOwnPropertySymbols;\n","// 19.1.2.7 / 15.2.3.4 Object.getOwnPropertyNames(O)\nvar $keys = require('./_object-keys-internal');\nvar hiddenKeys = require('./_enum-bug-keys').concat('length', 'prototype');\n\nexports.f = Object.getOwnPropertyNames || function getOwnPropertyNames(O) {\n return $keys(O, hiddenKeys);\n};\n","'use strict';\nvar $export = require('./_export');\nvar aFunction = require('./_a-function');\nvar toObject = require('./_to-object');\nvar fails = require('./_fails');\nvar $sort = [].sort;\nvar test = [1, 2, 3];\n\n$export($export.P + $export.F * (fails(function () {\n // IE8-\n test.sort(undefined);\n}) || !fails(function () {\n // V8 bug\n test.sort(null);\n // Old WebKit\n}) || !require('./_strict-method')($sort)), 'Array', {\n // 22.1.3.25 Array.prototype.sort(comparefn)\n sort: function sort(comparefn) {\n return comparefn === undefined\n ? $sort.call(toObject(this))\n : $sort.call(toObject(this), aFunction(comparefn));\n }\n});\n","var $iterators = require('./es6.array.iterator');\nvar getKeys = require('./_object-keys');\nvar redefine = require('./_redefine');\nvar global = require('./_global');\nvar hide = require('./_hide');\nvar Iterators = require('./_iterators');\nvar wks = require('./_wks');\nvar ITERATOR = wks('iterator');\nvar TO_STRING_TAG = wks('toStringTag');\nvar ArrayValues = Iterators.Array;\n\nvar DOMIterables = {\n CSSRuleList: true, // TODO: Not spec compliant, should be false.\n CSSStyleDeclaration: false,\n CSSValueList: false,\n ClientRectList: false,\n DOMRectList: false,\n DOMStringList: false,\n DOMTokenList: true,\n DataTransferItemList: false,\n FileList: false,\n HTMLAllCollection: false,\n HTMLCollection: false,\n HTMLFormElement: false,\n HTMLSelectElement: false,\n MediaList: true, // TODO: Not spec compliant, should be false.\n MimeTypeArray: false,\n NamedNodeMap: false,\n NodeList: true,\n PaintRequestList: false,\n Plugin: false,\n PluginArray: false,\n SVGLengthList: false,\n SVGNumberList: false,\n SVGPathSegList: false,\n SVGPointList: false,\n SVGStringList: false,\n SVGTransformList: false,\n SourceBufferList: false,\n StyleSheetList: true, // TODO: Not spec compliant, should be false.\n TextTrackCueList: false,\n TextTrackList: false,\n TouchList: false\n};\n\nfor (var collections = getKeys(DOMIterables), i = 0; i < collections.length; i++) {\n var NAME = collections[i];\n var explicit = DOMIterables[NAME];\n var Collection = global[NAME];\n var proto = Collection && Collection.prototype;\n var key;\n if (proto) {\n if (!proto[ITERATOR]) hide(proto, ITERATOR, ArrayValues);\n if (!proto[TO_STRING_TAG]) hide(proto, TO_STRING_TAG, NAME);\n Iterators[NAME] = ArrayValues;\n if (explicit) for (key in $iterators) if (!proto[key]) redefine(proto, key, $iterators[key], true);\n }\n}\n","// 22.1.3.31 Array.prototype[@@unscopables]\nvar UNSCOPABLES = require('./_wks')('unscopables');\nvar ArrayProto = Array.prototype;\nif (ArrayProto[UNSCOPABLES] == undefined) require('./_hide')(ArrayProto, UNSCOPABLES, {});\nmodule.exports = function (key) {\n ArrayProto[UNSCOPABLES][key] = true;\n};\n","module.exports = function (done, value) {\n return { value: value, done: !!done };\n};\n","// fallback for non-array-like ES3 and non-enumerable old V8 strings\nvar cof = require('./_cof');\n// eslint-disable-next-line no-prototype-builtins\nmodule.exports = Object('z').propertyIsEnumerable(0) ? Object : function (it) {\n return cof(it) == 'String' ? it.split('') : Object(it);\n};\n","'use strict';\nvar LIBRARY = require('./_library');\nvar $export = require('./_export');\nvar redefine = require('./_redefine');\nvar hide = require('./_hide');\nvar Iterators = require('./_iterators');\nvar $iterCreate = require('./_iter-create');\nvar setToStringTag = require('./_set-to-string-tag');\nvar getPrototypeOf = require('./_object-gpo');\nvar ITERATOR = require('./_wks')('iterator');\nvar BUGGY = !([].keys && 'next' in [].keys()); // Safari has buggy iterators w/o `next`\nvar FF_ITERATOR = '@@iterator';\nvar KEYS = 'keys';\nvar VALUES = 'values';\n\nvar returnThis = function () { return this; };\n\nmodule.exports = function (Base, NAME, Constructor, next, DEFAULT, IS_SET, FORCED) {\n $iterCreate(Constructor, NAME, next);\n var getMethod = function (kind) {\n if (!BUGGY && kind in proto) return proto[kind];\n switch (kind) {\n case KEYS: return function keys() { return new Constructor(this, kind); };\n case VALUES: return function values() { return new Constructor(this, kind); };\n } return function entries() { return new Constructor(this, kind); };\n };\n var TAG = NAME + ' Iterator';\n var DEF_VALUES = DEFAULT == VALUES;\n var VALUES_BUG = false;\n var proto = Base.prototype;\n var $native = proto[ITERATOR] || proto[FF_ITERATOR] || DEFAULT && proto[DEFAULT];\n var $default = $native || getMethod(DEFAULT);\n var $entries = DEFAULT ? !DEF_VALUES ? $default : getMethod('entries') : undefined;\n var $anyNative = NAME == 'Array' ? proto.entries || $native : $native;\n var methods, key, IteratorPrototype;\n // Fix native\n if ($anyNative) {\n IteratorPrototype = getPrototypeOf($anyNative.call(new Base()));\n if (IteratorPrototype !== Object.prototype && IteratorPrototype.next) {\n // Set @@toStringTag to native iterators\n setToStringTag(IteratorPrototype, TAG, true);\n // fix for some old engines\n if (!LIBRARY && typeof IteratorPrototype[ITERATOR] != 'function') hide(IteratorPrototype, ITERATOR, returnThis);\n }\n }\n // fix Array#{values, @@iterator}.name in V8 / FF\n if (DEF_VALUES && $native && $native.name !== VALUES) {\n VALUES_BUG = true;\n $default = function values() { return $native.call(this); };\n }\n // Define iterator\n if ((!LIBRARY || FORCED) && (BUGGY || VALUES_BUG || !proto[ITERATOR])) {\n hide(proto, ITERATOR, $default);\n }\n // Plug for library\n Iterators[NAME] = $default;\n Iterators[TAG] = returnThis;\n if (DEFAULT) {\n methods = {\n values: DEF_VALUES ? $default : getMethod(VALUES),\n keys: IS_SET ? $default : getMethod(KEYS),\n entries: $entries\n };\n if (FORCED) for (key in methods) {\n if (!(key in proto)) redefine(proto, key, methods[key]);\n } else $export($export.P + $export.F * (BUGGY || VALUES_BUG), NAME, methods);\n }\n return methods;\n};\n","module.exports = require('./_shared')('native-function-to-string', Function.toString);\n","'use strict';\nvar create = require('./_object-create');\nvar descriptor = require('./_property-desc');\nvar setToStringTag = require('./_set-to-string-tag');\nvar IteratorPrototype = {};\n\n// 25.1.2.1.1 %IteratorPrototype%[@@iterator]()\nrequire('./_hide')(IteratorPrototype, require('./_wks')('iterator'), function () { return this; });\n\nmodule.exports = function (Constructor, NAME, next) {\n Constructor.prototype = create(IteratorPrototype, { next: descriptor(1, next) });\n setToStringTag(Constructor, NAME + ' Iterator');\n};\n","var dP = require('./_object-dp');\nvar anObject = require('./_an-object');\nvar getKeys = require('./_object-keys');\n\nmodule.exports = require('./_descriptors') ? Object.defineProperties : function defineProperties(O, Properties) {\n anObject(O);\n var keys = getKeys(Properties);\n var length = keys.length;\n var i = 0;\n var P;\n while (length > i) dP.f(O, P = keys[i++], Properties[P]);\n return O;\n};\n","// false -> Array#indexOf\n// true -> Array#includes\nvar toIObject = require('./_to-iobject');\nvar toLength = require('./_to-length');\nvar toAbsoluteIndex = require('./_to-absolute-index');\nmodule.exports = function (IS_INCLUDES) {\n return function ($this, el, fromIndex) {\n var O = toIObject($this);\n var length = toLength(O.length);\n var index = toAbsoluteIndex(fromIndex, length);\n var value;\n // Array#includes uses SameValueZero equality algorithm\n // eslint-disable-next-line no-self-compare\n if (IS_INCLUDES && el != el) while (length > index) {\n value = O[index++];\n // eslint-disable-next-line no-self-compare\n if (value != value) return true;\n // Array#indexOf ignores holes, Array#includes - not\n } else for (;length > index; index++) if (IS_INCLUDES || index in O) {\n if (O[index] === el) return IS_INCLUDES || index || 0;\n } return !IS_INCLUDES && -1;\n };\n};\n","// 7.1.15 ToLength\nvar toInteger = require('./_to-integer');\nvar min = Math.min;\nmodule.exports = function (it) {\n return it > 0 ? min(toInteger(it), 0x1fffffffffffff) : 0; // pow(2, 53) - 1 == 9007199254740991\n};\n","var toInteger = require('./_to-integer');\nvar max = Math.max;\nvar min = Math.min;\nmodule.exports = function (index, length) {\n index = toInteger(index);\n return index < 0 ? max(index + length, 0) : min(index, length);\n};\n","var document = require('./_global').document;\nmodule.exports = document && document.documentElement;\n","'use strict';\n// 19.1.3.6 Object.prototype.toString()\nvar classof = require('./_classof');\nvar test = {};\ntest[require('./_wks')('toStringTag')] = 'z';\nif (test + '' != '[object z]') {\n require('./_redefine')(Object.prototype, 'toString', function toString() {\n return '[object ' + classof(this) + ']';\n }, true);\n}\n","// getting tag from 19.1.3.6 Object.prototype.toString()\nvar cof = require('./_cof');\nvar TAG = require('./_wks')('toStringTag');\n// ES3 wrong here\nvar ARG = cof(function () { return arguments; }()) == 'Arguments';\n\n// fallback for IE11 Script Access Denied error\nvar tryGet = function (it, key) {\n try {\n return it[key];\n } catch (e) { /* empty */ }\n};\n\nmodule.exports = function (it) {\n var O, T, B;\n return it === undefined ? 'Undefined' : it === null ? 'Null'\n // @@toStringTag case\n : typeof (T = tryGet(O = Object(it), TAG)) == 'string' ? T\n // builtinTag case\n : ARG ? cof(O)\n // ES3 arguments fallback\n : (B = cof(O)) == 'Object' && typeof O.callee == 'function' ? 'Arguments' : B;\n};\n","// https://github.com/tc39/proposal-object-values-entries\nvar $export = require('./_export');\nvar $values = require('./_object-to-array')(false);\n\n$export($export.S, 'Object', {\n values: function values(it) {\n return $values(it);\n }\n});\n","var getKeys = require('./_object-keys');\nvar toIObject = require('./_to-iobject');\nvar isEnum = require('./_object-pie').f;\nmodule.exports = function (isEntries) {\n return function (it) {\n var O = toIObject(it);\n var keys = getKeys(O);\n var length = keys.length;\n var i = 0;\n var result = [];\n var key;\n while (length > i) if (isEnum.call(O, key = keys[i++])) {\n result.push(isEntries ? [key, O[key]] : O[key]);\n } return result;\n };\n};\n","var g;\n\n// This works in non-strict mode\ng = (function() {\n\treturn this;\n})();\n\ntry {\n\t// This works if eval is allowed (see CSP)\n\tg = g || new Function(\"return this\")();\n} catch (e) {\n\t// This works if the window reference is available\n\tif (typeof window === \"object\") g = window;\n}\n\n// g can still be undefined, but nothing to do about it...\n// We return undefined, instead of nothing here, so it's\n// easier to handle this case. if(!global) { ...}\n\nmodule.exports = g;\n","var META = require('./_uid')('meta');\nvar isObject = require('./_is-object');\nvar has = require('./_has');\nvar setDesc = require('./_object-dp').f;\nvar id = 0;\nvar isExtensible = Object.isExtensible || function () {\n return true;\n};\nvar FREEZE = !require('./_fails')(function () {\n return isExtensible(Object.preventExtensions({}));\n});\nvar setMeta = function (it) {\n setDesc(it, META, { value: {\n i: 'O' + ++id, // object ID\n w: {} // weak collections IDs\n } });\n};\nvar fastKey = function (it, create) {\n // return primitive with prefix\n if (!isObject(it)) return typeof it == 'symbol' ? it : (typeof it == 'string' ? 'S' : 'P') + it;\n if (!has(it, META)) {\n // can't set metadata to uncaught frozen object\n if (!isExtensible(it)) return 'F';\n // not necessary to add metadata\n if (!create) return 'E';\n // add missing metadata\n setMeta(it);\n // return object ID\n } return it[META].i;\n};\nvar getWeak = function (it, create) {\n if (!has(it, META)) {\n // can't set metadata to uncaught frozen object\n if (!isExtensible(it)) return true;\n // not necessary to add metadata\n if (!create) return false;\n // add missing metadata\n setMeta(it);\n // return hash weak collections IDs\n } return it[META].w;\n};\n// add metadata on freeze-family methods calling\nvar onFreeze = function (it) {\n if (FREEZE && meta.NEED && isExtensible(it) && !has(it, META)) setMeta(it);\n return it;\n};\nvar meta = module.exports = {\n KEY: META,\n NEED: false,\n fastKey: fastKey,\n getWeak: getWeak,\n onFreeze: onFreeze\n};\n","// all enumerable object keys, includes symbols\nvar getKeys = require('./_object-keys');\nvar gOPS = require('./_object-gops');\nvar pIE = require('./_object-pie');\nmodule.exports = function (it) {\n var result = getKeys(it);\n var getSymbols = gOPS.f;\n if (getSymbols) {\n var symbols = getSymbols(it);\n var isEnum = pIE.f;\n var i = 0;\n var key;\n while (symbols.length > i) if (isEnum.call(it, key = symbols[i++])) result.push(key);\n } return result;\n};\n","// 7.2.2 IsArray(argument)\nvar cof = require('./_cof');\nmodule.exports = Array.isArray || function isArray(arg) {\n return cof(arg) == 'Array';\n};\n","// fallback for IE11 buggy Object.getOwnPropertyNames with iframe and window\nvar toIObject = require('./_to-iobject');\nvar gOPN = require('./_object-gopn').f;\nvar toString = {}.toString;\n\nvar windowNames = typeof window == 'object' && window && Object.getOwnPropertyNames\n ? Object.getOwnPropertyNames(window) : [];\n\nvar getWindowNames = function (it) {\n try {\n return gOPN(it);\n } catch (e) {\n return windowNames.slice();\n }\n};\n\nmodule.exports.f = function getOwnPropertyNames(it) {\n return windowNames && toString.call(it) == '[object Window]' ? getWindowNames(it) : gOPN(toIObject(it));\n};\n","// Works with __proto__ only. Old v8 can't work with null proto objects.\n/* eslint-disable no-proto */\nvar isObject = require('./_is-object');\nvar anObject = require('./_an-object');\nvar check = function (O, proto) {\n anObject(O);\n if (!isObject(proto) && proto !== null) throw TypeError(proto + \": can't set as prototype!\");\n};\nmodule.exports = {\n set: Object.setPrototypeOf || ('__proto__' in {} ? // eslint-disable-line\n function (test, buggy, set) {\n try {\n set = require('./_ctx')(Function.call, require('./_object-gopd').f(Object.prototype, '__proto__').set, 2);\n set(test, []);\n buggy = !(test instanceof Array);\n } catch (e) { buggy = true; }\n return function setPrototypeOf(O, proto) {\n check(O, proto);\n if (buggy) O.__proto__ = proto;\n else set(O, proto);\n return O;\n };\n }({}, false) : undefined),\n check: check\n};\n","'use strict';\nvar fails = require('./_fails');\n\nmodule.exports = function (method, arg) {\n return !!method && fails(function () {\n // eslint-disable-next-line no-useless-call\n arg ? method.call(null, function () { /* empty */ }, 1) : method.call(null);\n });\n};\n","export default class Balloon extends Phaser.GameObjects.Container {\n /**\n * A simple prefab (extended game object class), displaying a spinning\n * Phaser 3 logo.\n *\n * @extends Phaser.GameObjects.Container\n */\n constructor(scene, x, y, color, autoStart) {\n super(scene, 0, 0, []);\n // console.log('new balloon! --> ' + color);\n this.offset = 0.35;\n this.active = autoStart;\n this.animating = false;\n this.balloon = scene.add.image(0, 0, 'sprites', 'balloon.png');\n this.bWidth = this.balloon.width;\n this.shade = scene.add.image(0, 0, 'sprites', 'balloon_texture.png');\n this.highlight = scene.add.image(0, 0, 'sprites', 'balloon_highlight.png');\n this.collided = false;\n let offset = 12;\n this.holder = scene.add.container(0, offset, [this.balloon, this.shade]);\n this.color = color;\n this.balloon.tint = color;\n this.shade.tint = color;\n this.radius = this.balloon.width;\n this.clickPoint = { x: 0, y: 0 };\n this.boundsPoint = { x: 0, y: 0 };\n this.transform = scene.add.container(0, 0, [this.holder, this.highlight]);\n this.add(this.transform);\n this.emitter = new Phaser.Events.EventEmitter();\n this.activeInGame = true;\n y -= this.balloon.height / 2;\n\n this.velX = 0;\n this.velY = 0;\n this.angVel = 0;\n this.gravity = 1;\n this.forceX = 0;\n this.forceY = 0;\n this.bounce = 0.9;\n this.swayX = 0;\n this.prevAngle = this.angle;\n this.setPosition(x, y);\n this.lastX = x;\n this.lastY = y;\n\n this.circle = new Phaser.Geom.Circle(0, 0, 0);\n this.bounds = 75;\n }\n\n setPhysics(scene, data) {\n this.worldWidth = scene.cameras.main.width;\n this.worldHeight = scene.cameras.main.height - data.floor;\n this.gravityConst = data.gravity;\n this.impulseX = data.impulseX;\n this.impulseY = data.impulseY;\n this.dragX = data.dragX;\n this.dragY = data.dragY;\n this.angDrag = data.angDrag;\n this.bounce = data.bounce;\n this.swayAmp = data.swayAmp;\n this.swaySpeed = data.swaySpeed;\n this.collideBounce = data.collideBounce;\n this.heightBonus = data.heightBonus;\n this.swayOffset = Phaser.Math.Between(0, 3143);\n this.swayAcc = data.swayAcc;\n this.shadow = scene.add.image(this.x, this.worldHeight, 'sprites', 'balloon_shadow.png');\n this.shadow.setOrigin(0.5, 1);\n // this.shadow.setDisplaySize(this.displayWidth, this.displayHeight * 0.33);\n this.shadow.tint = '#000000';\n this.shadow.alpha = 0.6;\n this.shadowHeight = this.shadow.displayHeight;\n this.lastVelX = 0;\n this.lastVelY = 0;\n this.transform.angle = 180;\n }\n\n stop() {\n this.activeInGame = false;\n this.balloon.off('pointerdown');\n this.emitter.off('balloonClicked');\n //this.angVel = 0;\n }\n\n /**\n * Increment the angle smoothly.\n */\n update(balloons, dt, t, gravity) {\n // this.angle += 0.1;\n if (this.active && !this.animating) {\n this.lastX = this.x;\n this.lastY = this.y;\n\n let targetX = this.x;\n let targetY = this.y;\n\n // this.gravity = this.lerp(this.gravity, this.gravityConst, dt * 0.0015)*dt;\n this.gravity = gravity * dt;\n\n this.swayX = this.lerp(\n this.swayX,\n Math.sin(this.swayOffset + t * this.swaySpeed) *\n this.swayAmp *\n this.clamp01(1 - Math.abs(this.forceX)),\n dt * 0.0015\n );\n\n this.velY += this.gravity + (this.forceY);\n this.velX += this.swayX + this.forceX;\n\n // onsole.log(this.velX + ', ' + this.velY);\n targetY += this.velY;\n targetX += this.velX;\n\n this.forceY *= this.dragY;\n this.forceX *= this.dragX;\n\n this.velY = 0;\n this.velX = 0;\n\n // let angle = 200 * (this.forceX / 40);\n // this.angle = angle;\n\n this.x = targetX;\n\n this.y = targetY;\n\n let width = this.radius;\n let height = this.radius;\n\n this.clickPoint = this.rotateAroundPoint(this.holder.x, this.holder.y, this.transform.angle);\n //this.clickPoint.x += this.x;\n //this.clickPoint.y += this.y;\n\n let x = this.clickPoint.x + this.x;\n let y = this.clickPoint.y + this.y;\n if (x + width / 2 > this.worldWidth) {\n this.x = this.worldWidth - (width / 2 + 1);\n this.forceX = -1 * ((this.forceX + this.swayX) * this.bounce);\n this.triggerCollision();\n } else if (x - width / 2 < 0) {\n this.x = width / 2 - 1;\n this.forceX = -1 * ((this.forceX + this.swayX) * this.bounce);\n this.triggerCollision();\n }\n\n if (y + height / 2 > this.worldHeight) {\n this.y = this.worldHeight - height / 2;\n //this.forceY = -1 * (this.forceY * this.bounce);\n this.active = false;\n this.angVel = 0;\n if (this.activeInGame === true) {\n this.pop();\n }\n\n } else if (y - height / 2 < 0) {\n this.y = (height / 2) + 1;\n this.forceY = -1 * (this.forceY * this.bounce);\n this.triggerCollision();\n }\n\n this.collided = false;\n let sqrDist = this.radius * this.radius;\n for (let i = 0; i < balloons.length; ++i) {\n if (balloons[i] !== this) {\n let bX = balloons[i].clickPoint.x + balloons[i].x;\n let bY = balloons[i].clickPoint.y + balloons[i].y;\n let a = x - bX;\n let b = y - bY;\n let vec = new Phaser.Math.Vector2(a, b);\n let dist = vec.lengthSq();\n vec.normalize();\n if (dist < sqrDist) {\n /* if (\n Math.abs(x - balloons[i].clickPoint.x) < width &&\n Math.abs(y - balloons[i].clickPoint.y) < height\n ) { */\n /* if (this.x < balloons[i].clickPoint.x) {\n this.forceX -= this.collideBounce;\n balloons[i].forceX += this.collideBounce;\n this.emitter.emit('collided');\n } else {\n this.forceX += this.collideBounce;\n balloons[i].forceX -= this.collideBounce;\\\n this.emitter.emit('collided');\n } */\n this.triggerCollision();\n this.forceX += vec.x * this.collideBounce;\n this.forceY += Math.min(0, vec.y) * this.collideBounce;\n balloons[i].forceX += -vec.x * this.collideBounce;\n balloons[i].forceY += Math.min(0, -vec.y) * this.collideBounce;\n balloons[i].collided = true;\n this.collided = true;\n return;\n }\n }\n }\n }\n\n let intensity = this.smoothstep(\n this.worldHeight - 200,\n this.worldHeight - 50,\n this.y\n );\n this.shadow.x = this.transform.x + this.x;\n this.shadow.setDisplaySize(\n this.radius * intensity,\n this.shadowHeight * intensity\n );\n this.shadow.alpha = 0.6 * this.clamp01(intensity + 0.2);\n this.angVel *= this.angDrag;\n\n this.transform.angle += this.angVel;\n\n this.circle.x = this.clickPoint.x + this.x;\n this.circle.y = this.clickPoint.y + this.y;\n this.circle.radius = this.bounds;\n }\n\n triggerCollision() {\n if (this.activeInGame) {\n this.emitter.emit('collided');\n }\n }\n\n transitionOut(scene, time, direction) {\n if (this.transition !== undefined) {\n this.transition.stop();\n }\n this.forceX = 0;\n this.forceY = 0;\n this.angVel *= 2;\n this.animating = true;\n this.transform.x = 0;\n this.transform.y = 0;\n let newX = this.worldWidth * direction;\n let newY = -this.worldHeight / 2;\n let randAmt = Phaser.Math.Between(75, 100) / 100;\n let dur = time * randAmt;\n this.active = false;\n this.transition = scene.tweens.add({\n targets: this.transform,\n x: newX,\n duration: dur,\n props: {\n x: { value: newX, duration: dur, ease: 'Back.easeIn' },\n y: {\n value: newY,\n duration: dur,\n ease: 'Back.easeIn'\n // easeParams: [0.9, 0.4]\n }\n }\n });\n }\n\n transitionIn(scene, time, direction) {\n // console.log('moving from ' + this.transform.x + ' to ' + distX);\n if (this.transition !== undefined) {\n this.transition.stop();\n }\n let startHeight = this.worldHeight / 2;\n this.animating = true;\n this.active = false;\n this.transform.x = -this.worldWidth * direction;\n this.transform.y = -startHeight;\n if (this.y >= startHeight / 2) {\n this.y -= this.heightBonus;\n }\n let newX = 0;\n let newY = 0;\n let randAmt = Phaser.Math.Between(50, 100) / 100;\n let dur = time * randAmt;\n let d = time * (1 - randAmt);\n this.angVel = Phaser.Math.Between(-500, 500) * 0.1;\n this.transition = scene.tweens.add({\n targets: this.transform,\n x: newX,\n y: newY,\n duration: dur,\n delay: d,\n ease: 'Power2',\n onComplete: () => {\n this.active = true;\n this.animating = false;\n this.transform.setPosition(0, 0);\n // this.forceX = 0;\n // this.forceY = 0;\n this.velX = 0;\n this.velY = 0;\n this.swayX = 0;\n this.gravity = 0;\n }\n });\n }\n\n togglePause(togglePause) {\n if (this.transition !== undefined && this.transition.isPlaying()) {\n if (togglePause == true) {\n this.transition.pause();\n } else {\n this.transition.resume();\n }\n }\n }\n\n setActive(toggle) {\n this.active = toggle;\n }\n\n clamp01(value) {\n return this.clamp(value, 0, 1);\n }\n\n clamp(value, min, max) {\n return Math.min(Math.max(min, value), max);\n }\n\n smoothstep(x, y, t) {\n var i = this.clamp01((t - x) / (y - x));\n return i * i * (3 - 2 * i);\n }\n\n lerp(x, y, t) {\n return (1 - t) * x + t * y;\n }\n\n wrap(value, length) {\n return value % length;\n }\n\n handleBalloonClicked(pointer) {\n if (!this.animating && this.active === true) {\n this.active = true;\n let width = this.balloon.displayWidth;\n this.forceY += this.impulseY;\n let dist = Math.abs(pointer.x - (this.clickPoint.x + this.x));\n if (pointer.x < this.x) {\n this.forceX += this.impulseX * (dist / width / 2);\n } else {\n this.forceX -= this.impulseX * (dist / width / 2);\n }\n this.angVel = 50 * (this.forceX / 40);\n this.transform.angle = this.wrap(\n 90 + (Math.atan2(this.forceY, this.forceX) * 180) / 3.141,\n 360\n );\n this.emitter.emit('balloonClicked');\n }\n }\n\n checkTap(pointer) {\n let a = (this.clickPoint.x + this.x) - pointer.x;\n let b = (this.clickPoint.y + this.y) - pointer.y;\n let dist = Math.sqrt(a * a + b * b);\n if (dist <= this.bounds) {\n this.handleBalloonClicked(pointer);\n }\n }\n\n pop() {\n this.emitter.emit('gameOver', {\n x: this.x,\n y: this.worldHeight,\n tint: this.color\n });\n this.shadow.destroy();\n this.destroy();\n }\n\n rotateAroundPoint(x, y, angle, axisX = 0, axisY = 0) {\n let radians = angle * 0.01745;\n let s = Math.sin(radians);\n let c = Math.cos(radians);\n x -= axisX;\n y -= axisY;\n let newX = x * c - y * s;\n let newY = x * s + y * c;\n return {\n x: newX + axisX,\n y: newY + axisY\n };\n }\n}\n","export default class Balloon extends Phaser.GameObjects.Sprite {\n /**\n * A simple prefab (extended game object class), displaying a spinning\n * Phaser 3 logo.\n *\n * @extends Phaser.GameObjects.Sprite\n */\n constructor(scene, popupGroup, data) {\n let width = scene.cameras.main.width;\n let height = scene.cameras.main.height;\n super(scene, width / 2, height / 2, 'score_popup');\n this.setDepth(30);\n this.overlay = scene.add.image(0, 0, 'white');\n this.overlay.setOrigin(0, 0);\n this.overlay.setDisplaySize(width, height);\n this.overlay.setDepth(this.depth - 5);\n popupGroup.add(this.overlay, true);\n this.overlay.tint = '#000000';\n this.overlay.alpha = 0;\n\n this.scene = scene;\n this.config = data;\n this.setOrigin(0.5);\n this.scaleX = 1.2;\n this.scaleY = 1.2;\n this.alpha = 0;\n popupGroup.add(this, true);\n let titleText =\n scene.totalCount > 0\n ? this.config.titleCopy.success\n : this.config.titleCopy.failure;\n this.title = scene.add.bitmapText(\n scene.cameras.main.width / 2,\n scene.cameras.main.height / 2 - 160,\n 'HelloHeadline',\n titleText\n );\n this.title.setFontSize(70);\n this.title.setOrigin(0.5);\n popupGroup.add(this.title);\n this.title.alpha = 0;\n this.title.setDepth(this.depth + 1);\n\n this.score = scene.add.bitmapText(\n scene.cameras.main.width / 2,\n scene.cameras.main.height / 2,\n 'HelloHeadline',\n 'score: ' + scene.totalCount\n );\n this.score.setFontSize(60);\n this.score.setOrigin(0.5);\n popupGroup.add(this.score);\n this.score.alpha = 0;\n this.score.setDepth(this.depth + 1);\n\n if (localStorage.getItem('highscore') === null) {\n localStorage.setItem('highscore', 0);\n }\n\n if (scene.totalCount > localStorage.getItem('highscore')) {\n localStorage.setItem('highscore', scene.totalCount);\n }\n\n this.highScore = scene.add.bitmapText(\n scene.cameras.main.width / 2,\n scene.cameras.main.height / 2 + 80,\n 'HelloHeadline',\n 'High Score: ' + localStorage.getItem('highscore')\n );\n this.highScore.setFontSize(48);\n this.highScore.setOrigin(0.5);\n popupGroup.add(this.highScore);\n this.highScore.alpha = 0;\n this.highScore.setDepth(this.depth + 1);\n\n this.playBtn = scene.add.sprite(\n scene.cameras.main.width / 2,\n scene.cameras.main.height / 2 + 240,\n 'playBtn'\n );\n this.playBtn\n .setInteractive({ useHandCursor: true })\n .on('pointerdown', () => this.handlePlayButtonDown());\n this.playBtn.alpha = 0;\n this.playBtn.setDepth(this.depth + 1);\n\n popupGroup.add(this.playBtn);\n\n //popupGroup.setDepth(5, 0);\n\n scene.tweens.add({\n targets: this.overlay,\n alpha: 0.5,\n ease: 'Cubic',\n duration: 300\n });\n\n scene.tweens.add({\n targets: this,\n scaleX: 1,\n scaleY: 1,\n alpha: 1,\n ease: 'Cubic',\n duration: 300\n });\n\n scene.tweens.add({\n targets: this.title,\n alpha: 1,\n ease: 'Cubic',\n duration: 300,\n delay: 100\n });\n\n scene.tweens.add({\n targets: this.score,\n alpha: 1,\n ease: 'Cubic',\n duration: 300,\n delay: 200\n });\n\n scene.tweens.add({\n targets: this.highScore,\n alpha: 1,\n ease: 'Cubic',\n duration: 300,\n delay: 300\n });\n\n scene.tweens.add({\n targets: this.playBtn,\n alpha: 1,\n ease: 'Cubic',\n duration: 300,\n delay: 400\n });\n this.sting = scene.sound.add('sting', {\n loop: false,\n volume: 0.5\n });\n this.sting.play();\n }\n\n handlePlayButtonDown() {\n // console.log('Clicked!')\n this.sting.stop();\n this.scene.scene.start('Game', { firstRun: false, lastBG: this.scene.lastBG });\n }\n\n destroy() {\n // this.characters.destroy();\n if (this.sting !== null) {\n this.sting.stop();\n this.sting = null;\n }\n\n this.score.destroy();\n this.title.destroy();\n this.highScore.destroy();\n this.playBtn.destroy();\n this.characters = null;\n super.destroy();\n }\n}\n","export default class BaseCharacter extends Phaser.GameObjects.Image {\n /**\n * A simple prefab (extended game object class), displaying a spinning\n * Phaser 3 logo.\n *\n * @extends Phaser\n *\n *\n */\n\n constructor(scene, id, character, skin, animations, sfx) {\n super(scene, 0, 0, 'blank');\n // this.load.spine(character, json, atlas);\n this.spineRef = character;\n this.name = skin;\n this.animations = animations;\n this.idleAnims = animations.idles;\n this.shuffle(this.idleAnims);\n this.sfx = sfx;\n this.defaultMix = 0.05;\n this.emitter = new Phaser.Events.EventEmitter();\n scene.add.existing(this);\n this.ID = id;\n this.minIdleTime = 1500;\n this.maxIdleTime = 2500;\n this.idleCounter = this.randomRange(0, this.maxIdleTime);\n this.idleTime = Phaser.Math.Between(this.minIdleTime, this.maxIdleTime);\n // console.log('creating character --> ' + skin + ' from ' + character);\n this.spineChar = scene.add.spine(0, 0, character, this.lastPlayedAnim, true);\n // this.spineChar.on('spine.complete', this.handleAnimComplete, this);\n this.clickArea = scene.add.image(0, 0, 'blank');\n this.clickArea.setOrigin(0.5, 1);\n this.setSkin(skin);\n this.lastPlayedAnim = animations.default;\n this.transform = scene.add.container(0, 0);\n let container = scene.add.container(0, 0, [this.spineChar, this.clickArea]);\n // this.setOrigin(0.5, 1);\n this.transform.add(container);\n this.frozen = false;\n this.canIdle = true;\n this.idleActive = true;\n }\n\n kill() {\n this.clickArea.off('pointerdown');\n }\n\n wrap(value) {\n return value % 360;\n }\n\n setTransform(posX, posY, scaleX, scaleY, dir) {\n var x = posX;\n var y = posY;\n\n this.transform.setPosition(x, y);\n\n // this.transform.setRandomPosition();\n this.direction = dir;\n this.spineChar.setScale(scaleX * this.direction, scaleY);\n this.texBounds = this.spineChar.getBounds();\n this.charWidth = this.texBounds.size.x * this.spineChar.scaleX;\n this.charHeight = this.texBounds.size.y * this.spineChar.scaleY;\n this.clickArea.setDisplaySize(this.charWidth, this.charHeight);\n }\n\n updateCharacter(time, delta, scene) {\n if (this.idleActive === true) {\n this.updateIdle(scene, delta);\n }\n }\n\n shuffle(arr) {\n arr.sort(() => Math.random - 0.5);\n }\n\n updateIdle(scene, delta) {\n if (this.idleCounter >= this.idleTime) {\n // do idle anim\n this.idleCounter = 0;\n this.idleTime = Phaser.Math.Between(this.minIdleTime, this.maxIdleTime);\n this.setTimescale(0.9, 1.1);\n this.playAnimVariant(scene, this.idleAnims);\n } else {\n this.idleCounter += delta;\n }\n }\n\n setSortOrder(depth) {\n this.spinChar.setDepth(depth);\n }\n\n randomRange(min, max, round = false) {\n if (round) {\n return Phaser.Math.Between(min, max);\n } else {\n return Phaser.Math.Between(min * 100, max * 100) / 100;\n }\n }\n\n setSkin(skinName) {\n this.spineChar.setSkin(null);\n this.spineChar.setSkinByName(skinName);\n this.attachments = this.spineChar.skeleton.skin.attachments;\n }\n\n playAnim(scene, anim, mix, loop = false, returnToPrevious = true) {\n if (mix > 0) {\n this.spineChar.setMix(this.animations.default, anim, mix);\n this.spineChar.setAnimation(0, anim, loop, 0);\n let delay = this.spineChar.state.getCurrent(0).getAnimationLength() - mix;\n this.spineChar.setMix(anim, this.animations.default, mix);\n this.spineChar.addAnimation(0, this.animations.default, true, delay);\n }\n\n this.playing = true;\n this.returnToPrevious = returnToPrevious;\n this.currentAnimation = anim;\n }\n\n reset() {\n this.spineChar.clearTracks();\n this.spineChar.skeleton.setToSetupPose();\n this.spineChar.setAnimation(0, this.animations.default, true, 0);\n }\n\n playAnimVariant(scene, animations) {\n let idx = Phaser.Math.Between(0, animations.length - 1);\n let anim = animations[idx];\n /* if (animations[idx].sfx !== undefined) {\n this.playAnim(\n scene,\n animations[idx].name,\n this.defaultMix,\n false,\n true // this.randomRange(0, this.animations.idles.length, true)\n );\n this.playAnimSFX(scene, animations[idx].sfx);\n } else {\n this.playAnim(\n scene,\n animations[idx],\n this.defaultMix,\n false,\n true // this.randomRange(0, this.animations.idles.length, true)\n );\n } */\n this.playAnim(\n scene,\n animations[idx],\n this.defaultMix,\n false,\n true // this.randomRange(0, this.animations.idles.length, true)\n );\n if (this.sfx.hasOwnProperty(anim)) {\n scene.sound.play(this.sfx[anim]);\n }\n }\n\n playAnimSFX(scene, sfx) {\n let idx = Phaser.Math.Between(0, sfx.length - 1);\n scene.sound.play(sfx[idx], { volume: 0.5 });\n }\n\n playHappy(scene) {\n this.idleCounter = 0;\n this.playAnimVariant(scene, this.animations.happy);\n }\n\n playCelebrate(scene, delay) {\n this.idleCounter = 0;\n if (delay !== undefined) {\n scene.time.delayedCall(delay, () => this.playAnimVariant(scene, this.animations.celebrate), this);\n } else {\n this.playAnimVariant(scene, this.animations.celebrate);\n }\n\n }\n\n playSad(scene) {\n this.idleCounter = 0;\n this.playAnimVariant(scene, this.animations.sad);\n }\n\n setTimescale(min, max) {\n let low = min * 100;\n let high = max * 100;\n let tScale = Phaser.Math.Between(low, high) / 100;\n this.spineChar.state.timeScale = tScale;\n }\n\n togglePause(paused) {\n this.idleActive = paused ? false : this.canIdle;\n this.spineChar.state.timeScale = paused ? 0 : 1;\n }\n\n handleCharacterClicked() {\n this.emitter.emit('characterClicked');\n }\n\n destroy() {\n this.transform.removeAll();\n this.transform = null;\n this.spineChar.destroy();\n this.spineChar = null;\n this.emitter = null;\n this.animations = null;\n super.destroy();\n }\n}\n","export default class PausePopup extends Phaser.GameObjects.Sprite {\n /**\n * A simple prefab (extended game object class), displaying a spinning\n * Phaser 3 logo.\n *\n * @extends Phaser.GameObjects.Sprite\n */\n constructor(scene, popupGroup) {\n let width = scene.cameras.main.width;\n let height = scene.cameras.main.height;\n super(scene, width / 2, height / 2, 'pause_popup');\n this.setDepth(10);\n this.overlay = scene.add.image(0, 0, 'white');\n this.overlay.setOrigin(0, 0);\n this.overlay.setDisplaySize(width, height);\n this.overlay.setDepth(this.depth - 1);\n this.overlay.tint = '#000000';\n this.overlay.alpha = 0;\n\n this.scene = scene;\n this.paddingX = 100;\n this.paddingY = 230;\n this.setOrigin(0.5);\n this.scaleX = 1.2;\n this.scaleY = 1.2;\n this.alpha = 0;\n this.active = false;\n this.emitter = new Phaser.Events.EventEmitter();\n\n popupGroup.add(this, true);\n\n this.title = scene.add.bitmapText(\n scene.cameras.main.width / 2,\n scene.cameras.main.height / 2 - 135,\n 'HelloHeadline',\n 'Paused'\n );\n let title = this.title;\n title.setFontSize(110);\n title.setOrigin(0.5);\n popupGroup.add(title);\n title.alpha = 0;\n title.setDepth(this.depth + 1);\n\n this.playBtn = scene.add.sprite(\n scene.cameras.main.width / 2,\n scene.cameras.main.height / 2 + 30,\n 'startBtn'\n );\n let playBtn = this.playBtn;\n playBtn\n .setInteractive({ useHandCursor: true })\n .on('pointerdown', () => this.handlePlayButtonDown());\n playBtn.alpha = 0;\n popupGroup.add(playBtn);\n playBtn.setDepth(this.depth + 1);\n\n let muteState = ('sound_' + (this.scene.mute === false ? 'on' : 'off'));\n this.muteBtn = scene.add.sprite(\n scene.cameras.main.width / 2 - this.paddingX,\n scene.cameras.main.height / 2 + this.paddingY,\n muteState\n );\n let muteBtn = this.muteBtn;\n muteBtn\n .setInteractive({ useHandCursor: true })\n .on('pointerdown', () => this.handleMuteButtonDown());\n muteBtn.alpha = 0;\n popupGroup.add(muteBtn);\n muteBtn.setDepth(this.depth + 1);\n\n this.helpBtn = scene.add.sprite(\n scene.cameras.main.width / 2 + this.paddingX,\n scene.cameras.main.height / 2 + this.paddingY,\n 'helpBtn'\n );\n let helpBtn = this.helpBtn;\n helpBtn\n .setInteractive({ useHandCursor: true })\n .on('pointerdown', () => this.handleHelpButtonDown());\n helpBtn.alpha = 0;\n popupGroup.add(helpBtn);\n helpBtn.setDepth(this.depth + 1);\n }\n\n show(scene) {\n if (this.btnTween !== undefined) {\n this.btnTween.stop();\n this.btnTween = undefined;\n }\n this.muteBtn.setTexture('sound_' + (this.scene.sound.mute === false ? 'on' : 'off'));\n this.active = true;\n\n this.scaleX = 1.2;\n this.scaleY = 1.2;\n\n scene.tweens.add({\n targets: this.overlay,\n alpha: 0.5,\n ease: 'Cubic',\n duration: 150\n });\n\n this.btnTween = scene.tweens.add({\n targets: [this, this.title, this.playBtn, this.muteBtn, this.helpBtn],\n alpha: 1,\n scaleX: 1,\n scaleY: 1,\n ease: 'Cubic',\n duration: 150,\n // delay: 50,\n onComplete: this.onShown\n });\n }\n\n onShown() {\n if (this.emitter !== undefined) {\n this.emitter.emit('gamePaused');\n }\n }\n\n onHidden() { }\n\n hide(scene) {\n scene.tweens.add({\n targets: this.overlay,\n alpha: 0,\n ease: 'Cubic',\n duration: 150\n });\n\n if (this.btnTween !== undefined) {\n this.btnTween.stop();\n this.btnTween = undefined;\n }\n\n scene.tweens.add({\n targets: [this, this.title, this.playBtn, this.muteBtn, this.helpBtn],\n scaleX: 1,\n scaleY: 1,\n alpha: 0,\n ease: 'Cubic',\n duration: 150,\n onComplete: this.onHidden\n });\n this.active = false;\n }\n\n handlePlayButtonDown() {\n //this.scene.paused = false;\n if (this.emitter !== undefined) {\n this.emitter.emit('gameResumed');\n }\n this.hide(this.scene);\n }\n\n handleMuteButtonDown() {\n this.scene.toggleMute(!this.scene.mute);\n this.muteBtn.setTexture('sound_' + (this.scene.mute == false ? 'on' : 'off'));\n }\n\n handleHelpButtonDown() {\n // do something helpy\n this.hide(this.scene);\n this.emitter.emit('helpRequested');\n }\n\n destroy() {\n if (this.btnTween !== undefined) {\n this.btnTween.stop();\n this.btnTween = null;\n }\n this.overlay.destroy();\n this.title.destroy();\n this.playBtn.destroy();\n this.muteBtn.destroy();\n this.helpBtn.destroy();\n this.emitter.destroy();\n super.destroy();\n }\n}\n","export default class HelpHand extends Phaser.GameObjects.Image {\n /**\n * A simple prefab (extended game object class), displaying a spinning\n * Phaser 3 logo.\n *\n * @extends Phaser.GameObjects.Image\n */\n constructor (scene, x, y, bg) {\n super(scene, x, y, 'hand');\n scene.add.existing(this);\n this.scene = scene;\n this.offsetX = this.width * 0.35;\n this.offsetY = this.height * 0.35;\n this.x += this.offsetX;\n this.y += this.offsetY;\n this.startScaleX = this.scaleX;\n this.startScaleY = this.scaleY;\n this.startX = this.x;\n this.startY = this.y;\n this.targetX = bg.x;\n this.targetY = bg.y;\n this.bgWidth = bg.width;\n this.bgHeight = bg.height;\n this.emitter = new Phaser.Events.EventEmitter();\n this.resetAnims();\n }\n\n resetAnims () {\n this.animIndex = 0;\n this.scaleX = 0;\n this.scaleY = 0;\n this.x = this.startX;\n this.y = this.startY;\n if (this.handTween !== undefined) {\n this.handTween.stop();\n this.handTween = undefined;\n }\n }\n\n setAnims (anims) {\n this.anims = anims;\n this.resetAnims();\n }\n\n start () {\n this.nextAnim();\n }\n\n handleAnimComplete () {\n if (this.animIndex >= this.anims.length - 1) {\n this.emitter.emit('stepComplete');\n this.resetAnims();\n } else {\n this.animIndex = (this.animIndex + 1) % this.anims.length;\n }\n this.nextAnim();\n }\n\n nextAnim () {\n let anim = this.anims[this.animIndex];\n if (this.handTween !== undefined) {\n this.handTween.stop();\n this.handTween = undefined;\n }\n let delay = anim.delay !== undefined ? anim.delay : 0;\n if (anim.type === 'move') {\n this.moveHand(anim.target.x, anim.target.y, anim.time, anim.easing, delay);\n } else if (anim.type === 'tap') {\n this.tapHand(anim.time, anim.easing, delay);\n } else if (anim.type === 'scale') {\n this.scaleHand(anim.scale, anim.scale, anim.time, anim.easing, delay);\n }\n }\n\n moveHand (x, y, time, easing, d) {\n let actualX = this.targetX + x * this.bgWidth + this.offsetX;\n let actualY = this.targetY - y * this.bgHeight + this.offsetY;\n this.handTween = this.scene.tweens.add({\n targets: this,\n x: actualX,\n y: actualY,\n duration: time,\n ease: easing,\n delay: d,\n onComplete: () => {\n this.handleAnimComplete();\n }\n });\n }\n\n scaleHand (w, h, time, easing, d) {\n this.handTween = this.scene.tweens.add({\n targets: this,\n scaleX: this.startScaleX * w,\n scaleY: this.startScaleY * h,\n duration: time,\n ease: easing,\n delay: d,\n onComplete: () => {\n this.handleAnimComplete();\n }\n });\n }\n\n tapHand (time, easing, d) {\n this.handTween = this.scene.tweens.add({\n targets: this,\n scaleX: this.startScaleX * 0.85,\n scaleY: this.startScaleY * 0.85,\n duration: time,\n yoyo: true,\n ease: easing,\n delay: d,\n onComplete: () => {\n this.handleAnimComplete();\n }\n });\n }\n\n destroy () {\n if (this.handTween !== undefined) {\n this.handTween.stop();\n this.handTween = undefined;\n }\n this.scene = null;\n this.animations = null;\n super.destroy();\n }\n}\n","import HelpHand from './helpHand';\n\nexport default class HelpPopup extends Phaser.GameObjects.Sprite {\n /**\n * A simple prefab (extended game object class), displaying a spinning\n * Phaser 3 logo.\n *\n * @extends Phaser.GameObjects.Sprite\n */\n constructor(scene, popupGroup, animData) {\n let width = scene.cameras.main.width;\n let height = scene.cameras.main.height;\n super(scene, width / 2, height / 2, 'popup');\n this.setDepth(30);\n this.overlay = scene.add.image(0, 0, 'white');\n this.overlay.setOrigin(0, 0);\n this.overlay.setDisplaySize(width, height);\n this.overlay.setDepth(this.depth - 5);\n this.overlay.tint = '#000000';\n this.overlay.alpha = 0;\n\n this.scene = scene;\n this.paddingX = 350;\n this.paddingY = 230;\n this.setOrigin(0.5);\n this.scaleX = 1.2;\n this.scaleY = 1.2;\n this.alpha = 0;\n this.active = false;\n this.emitter = new Phaser.Events.EventEmitter();\n\n popupGroup.add(this, true);\n const screenX = scene.cameras.main.width / 2;\n const screenY = scene.cameras.main.height / 2;\n this.title = scene.add.bitmapText(\n screenX,\n screenY - 185,\n 'HelloHeadline',\n 'How To Play'\n );\n let title = this.title;\n title.setFontSize(65);\n title.setOrigin(0.5);\n popupGroup.add(title);\n title.alpha = 0;\n title.setDepth(this.depth + 1);\n\n this.playBtn = scene.add.sprite(\n screenX + this.paddingX,\n screenY + this.paddingY,\n 'playBtn'\n );\n let playBtn = this.playBtn;\n playBtn\n .setInteractive({ useHandCursor: true })\n .on('pointerdown', () => this.handlePlayButtonDown());\n playBtn.alpha = 0;\n popupGroup.add(playBtn);\n playBtn.setDepth(this.depth + 1);\n\n this.bg = scene.add.image(screenX, screenY + 20, animData.steps[0].image);\n this.bg.setDepth(this.depth + 2);\n this.bg.alpha = 0;\n this.animData = animData;\n this.helpIdx = 0;\n this.helpHand = new HelpHand(scene, screenX, screenY + 150, this.bg);\n this.helpHand.emitter.on('stepComplete', () => this.nextHelp(), this);\n popupGroup.add(this.helpHand);\n this.helpHand.setDepth(this.depth + 2);\n this.helpHand.alpha = 1;\n }\n\n nextHelp() {\n this.bg.setTexture(this.animData.steps[this.helpIdx].image);\n this.helpHand.setAnims(this.animData.steps[this.helpIdx].anims);\n this.helpHand.start();\n this.helpIdx = (this.helpIdx + 1) % this.animData.steps.length;\n }\n\n show(scene, animate = true) {\n if (this.btnTween !== undefined) {\n this.btnTween.stop();\n this.btnTween = undefined;\n }\n\n this.active = true;\n if (animate) {\n this.scaleX = 1.2;\n this.scaleY = 1.2;\n\n scene.tweens.add({\n targets: this.overlay,\n alpha: 0.5,\n ease: 'Cubic',\n duration: 150\n });\n\n this.btnTween = scene.tweens.add({\n targets: [this, this.title, this.playBtn, this.bg],\n alpha: 1,\n scaleX: 1,\n scaleY: 1,\n ease: 'Cubic',\n duration: 150,\n // delay: 50,\n onComplete: () => {\n this.onShown();\n }\n });\n } else {\n this.overlay.alpha = 0.5;\n this.alpha = 1;\n this.title.alpha = 1;\n this.playBtn.alpha = 1;\n this.bg.alpha = 1;\n this.scaleX = 1;\n this.scaleY = 1;\n this.onShown();\n }\n }\n\n onShown() {\n if (this.emitter !== undefined) {\n this.emitter.emit('gamePaused');\n }\n\n if (this.helpHand === undefined) {\n this.helpHand = new HelpHand(this.scene, screenX, screenY + 150, this.bg);\n }\n\n this.nextHelp();\n }\n\n onHidden() {\n this.helpHand.resetAnims();\n }\n\n hide(scene) {\n scene.tweens.add({\n targets: this.overlay,\n alpha: 0,\n ease: 'Cubic',\n duration: 150\n });\n\n if (this.btnTween !== undefined) {\n this.btnTween.stop();\n this.btnTween = undefined;\n }\n\n scene.tweens.add({\n targets: [this, this.title, this.playBtn, this.bg],\n scaleX: 1,\n scaleY: 1,\n alpha: 0,\n ease: 'Cubic',\n duration: 150,\n onComplete: () => {\n this.onHidden();\n }\n });\n this.active = false;\n }\n\n handlePlayButtonDown() {\n this.scene.paused = false;\n if (this.emitter !== undefined) {\n this.emitter.emit('gameResumed');\n }\n this.hide(this.scene);\n }\n\n handleMuteButtonDown() {\n this.scene.mute = !this.scene.mute;\n }\n\n handleHelpButtonDown() {\n // do something helpy\n }\n\n destroy() {\n super.destroy();\n }\n}\n","import Balloon from '@/objects/balloon';\nimport GameOverPopup from '@/objects/gameOverPopup';\nimport BaseCharacter from '@/objects/baseCharacter';\nimport PausePopup from '@/objects/pausePopup';\nimport HelpPopup from '../objects/helpPopup';\n\nexport default class Game extends Phaser.Scene {\n /**\n * A sample Game scene, displaying the Phaser logo.\n *\n * @extends Phaser.Scene\n */\n constructor() {\n super({ key: 'Game' });\n }\n\n /**\n * Called when a scene is initialized. Method responsible for setting up\n * the game objects of the scene.\n *\n * @protected\n * @param {object} data Initialization parameters.\n */\n\n init(data) {\n this.firstRun = data.firstRun !== false;\n this.lastBG = data.lastBG;\n }\n\n create(/* data */) {\n\n let prevMute = localStorage.getItem('mute');\n this.mute = prevMute !== undefined ? prevMute === 'true' : false;\n this.toggleMute(this.mute);\n this.backgroundGroup = this.add.group();\n this.staticChars = this.add.group();\n this.characterGroup = this.add.group();\n this.balloonGroup = this.add.group();\n this.textGroup = this.add.group();\n this.popupGroup = this.add.group();\n this.gameConfig = this.cache.json.get('data').gameConfig;\n this.endConfig = this.cache.json.get('data').endConfig;\n this.helpConfig = this.cache.json.get('data').helpConfig;\n this.balloonData = this.gameConfig.balloons.physics;\n this.gravity = this.balloonData.gravity;\n this.currentGravity = this.gravity;\n this.gamePlaying = false;\n\n this.level = 1;\n\n this.transitionCount = this.gameConfig.levelCount[this.level];\n console.log(\"transition count\", this.transitionCount);\n this.backgrounds = this.lastBG !== undefined ? this.lastBG : Phaser.Math.Between(\n 0,\n this.gameConfig.backgrounds.length - 1\n );\n this.balloonColourCount = this.gameConfig.balloons.colours.length;\n this.balloonIndex = 0; // Phaser.Math.Between(0, this.balloonColourCount - 1);\n this.collisionPlayed = false;\n this.characters = [];\n this.events = [];\n this.pausedTweens = [];\n this.setupCharacters(this.gameConfig);\n for (var i = 0; i < 2; i++) {\n this.staticChars.create(0, 0, 'blank');\n }\n this.changeBackground();\n this.transitionDirection = this.gameConfig.backgrounds[this.prevBackgrounds].transitionDirection;\n console.log(this.backgrounds, this.transitionDirection);\n // TODO: Replace this content with really cool game code here :)\n this.count = 0;\n this.totalCount = 0;\n this.balloons = [];\n\n const screenX = this.cameras.main.width;\n // const screenY = this.cameras.main.height;\n this.paused = false;\n this.initBalloons(screenX);\n\n let scoreX = 20;\n let scoreY = 10;\n\n let scoreBG = this.add.image(scoreX, scoreY, 'score_box');\n scoreBG.setOrigin(0, 0);\n scoreBG.setDepth(10);\n this.counter = this.add.bitmapText(\n scoreBG.x + scoreBG.displayWidth / 2,\n scoreY + scoreBG.y + scoreBG.displayHeight / 2,\n this.gameConfig.font,\n 0\n );\n this.counter.setOrigin(0.5, 0.5);\n this.counter.setFontSize(88);\n this.counter.setCenterAlign();\n this.counter.setDepth(scoreBG.depth + 1);\n this.textGroup.add(scoreBG);\n this.textGroup.add(this.counter);\n\n this.canPlaySFX = true;\n\n this.helpPopup = new HelpPopup(this, this.popupGroup, this.helpConfig);\n this.pausePopup = new PausePopup(this, this.popupGroup);\n this.pausePopup.emitter.on('gameResumed', this.handleResumed, this);\n this.helpPopup.emitter.on('gameResumed', this.handleResumed, this);\n this.pausePopup.emitter.on('helpRequested', this.showHelp, this);\n this.pauseBtn = this.add.image(screenX - 10, 10, 'pauseBtn');\n this.pauseBtn.setOrigin(1, 0);\n this.pauseBtn\n .setInteractive({ useHandCursor: true })\n .on('pointerdown', () => {\n if (this.paused === false) {\n if (this.pausePopup.active == false) {\n this.pausePopup.show(this);\n } this.handlePaused();\n }\n });\n\n this.pauseBtn.setDepth(10);\n\n this.input.on('pointerup', () => this.inputDown = false, this);\n\n this.idleIdx = 0;\n this.idleSFX = this.cache.json.get('data').idleSFX;\n this.idleSFX.sort(() => Math.random() - 0.5);\n\n this.bgMusic = this.sound.add('bgmusic', {\n loop: true,\n volume: 0.75\n });\n this.bgMusic.play();\n if (this.firstRun === true) {\n this.showHelp(false);\n }\n else {\n this.gamePlaying = true;\n }\n }\n\n initBalloons(screenX) {\n if (this.gameConfig.balloons.startAmount !== undefined && this.gameConfig.balloons.startAmount > 1) {\n for (let i = 0; i < this.gameConfig.balloons.startAmount; i++) {\n let x = Phaser.Math.Between(150, this.cameras.main.width - 150);\n let y = Phaser.Math.Between(150, 400);\n this.createBalloon(x, y, true);\n }\n }\n else {\n this.createBalloon(screenX / 2, 150, true);\n }\n this.popConfig = this.gameConfig.balloons.popConfig;\n var popFrames = [];\n for (let j = 0; j < this.popConfig.frames.length; j++) {\n popFrames.push({ key: this.popConfig.frames[j] });\n }\n // console.log(popFrames);\n let genFrames = this.anims.generateFrameNames('sprites', { prefix: 'pop', start: 1, end: 4, suffix: '.png' });\n let anim = {\n key: this.popConfig.name,\n frames: genFrames,\n frameRate: this.popConfig.frameRate\n };\n this.anims.create(anim);\n\n this.input.on('pointerdown', function (pointer) {\n if (this.inputDown !== true && this.gamePlaying) {\n\n if (this.paused === false) {\n for (let i = 0; i < this.balloons.length; i++) {\n this.balloons[i].checkTap(pointer);\n\n }\n }\n this.inputDown = true;\n }\n }, this);\n }\n\n toggleMute(toggleOn) {\n this.mute = toggleOn;\n localStorage.setItem('mute', this.mute);\n this.sound.setMute(this.mute);\n }\n\n handlePaused() {\n this.paused = true;\n //console.log('PAUSED');\n if (this.endEvent !== undefined) {\n this.endEvent.paused = true;\n }\n if (this.bgEvent !== undefined) {\n this.bgEvent.paused = true;\n }\n for (let i = 0; i < this.characters.length; i++) {\n this.characters[i].togglePause(true);\n }\n\n for (let i = 0; i < this.tweens.length; i++) {\n let tween = this.tweens[i];\n if (tween.isPlaying) {\n this.pausedTweens.push(tween);\n tween.pause();\n }\n }\n\n }\n\n handleResumed() {\n this.paused = false;\n this.gamePlaying = true;\n //console.log('RESUMED');\n if (this.endEvent !== undefined) {\n this.endEvent.paused = false;\n }\n if (this.bgEvent !== undefined) {\n this.bgEvent.paused = false;\n }\n for (let i = 0; i < this.characters.length; i++) {\n this.characters[i].togglePause(false);\n }\n\n for (let i = this.pausedTweens.length - 1; i >= 0; i--) {\n this.pausedTweens[i].resume();\n this.pausedTweens.splice(i);\n }\n }\n\n showHelp(animate = true) {\n this.paused = true;\n this.helpPopup.show(this, animate);\n }\n\n changeBackground() {\n if (this.background !== undefined) {\n this.background.destroy();\n }\n\n let staticIdx = 0;\n let staticChars = this.staticChars.getChildren();\n // this.staticChars.clear();\n\n this.background = this.backgroundGroup.create(\n 0,\n 0,\n this.gameConfig.backgrounds[this.backgrounds].name\n );\n this.background.setOrigin(0);\n this.background.setDepth(-5);\n let charParams = this.gameConfig.backgrounds[this.backgrounds].characters;\n for (var i = 0; i < charParams.length; i++) {\n let params = charParams[i];\n if (params.type === 'static') {\n let staticChar = staticChars[staticIdx];\n staticChar.setTexture(params.name);\n staticChar.setOrigin(0.5, 1);\n staticChar.setPosition(params.posX, params.posY);\n staticChar.scaleX = params.scale * params.direction;\n staticChar.scaleY = params.scale;\n staticIdx++;\n } else {\n for (let j = 0; j < this.characters.length; j++) {\n {\n let char = this.characters[j];\n if (char.spineRef === params.name)\n char.setTransform(\n params.posX,\n params.posY,\n params.scale,\n params.scale,\n params.direction\n );\n char.canIdle = true;\n char.idleActive = true;\n char.reset();\n }\n }\n }\n }\n let prevBg = this.backgrounds;\n this.prevBackgrounds = prevBg;\n this.backgrounds++;\n if (this.backgrounds >= this.gameConfig.backgrounds.length) {\n this.backgrounds = 0;\n }\n\n this.backgroundGroup.setDepth(-1, 0);\n }\n\n createBalloon(x, y, autoStart) {\n let balloon = new Balloon(\n this,\n x,\n y,\n this.gameConfig.balloons.colours[this.balloonIndex],\n autoStart\n );\n balloon.setPhysics(this, this.balloonData);\n balloon.emitter.on('balloonClicked', () => { if (this.paused === false) { this.handleBalloonClicked(); } }, this);\n balloon.emitter.on('collided', this.handleBalloonCollision, this);\n balloon.emitter.once('gameOver', this.handleGameOver, this);\n this.balloons.push(balloon);\n this.balloonGroup.add(balloon, true);\n this.balloonGroup.setDepth(1, 0);\n this.balloonIndex = (this.balloonIndex + 1) % this.balloonColourCount;\n }\n\n handleBalloonClicked() {\n this.totalCount++;\n this.count++;\n this.sound.play('hit' + Phaser.Math.Between(1, 3), {\n detune: Phaser.Math.Between(95, 105) / 100\n });\n this.counter.text = this.totalCount;\n this.currentGravity = this.gravity * (1 + (this.totalCount / 750));\n if (this.count >= this.transitionCount) {\n this.handleTransition();\n } else if (this.count % 3 < 1) {\n //for (var i = 0; i < this.characters.length; i++) {\n var char = this.characters[Phaser.Math.Between(0, this.characters.length - 1)];\n this.time.delayedCall(Phaser.Math.Between(0, 500), () => char.playHappy(this), this);\n this.playTapSFX();\n /* this.sound.play('bluey_giggle' + Phaser.Math.Between(1, 2), {\n volume: 0.5\n }); */\n //}\n }\n\n\n\n // if (this.totalCount % this.gameConfig.incrementThreshold == 0) {\n // this.transitionCount += this.gameConfig.incrementAmount;\n // }\n }\n\n handleTransition() {\n let transitionTime = 2000;\n for (let i = 0; i < this.characters.length; i++) {\n var char = this.characters[i];\n char.canIdle = false;\n char.idleActive = false;\n char.playCelebrate(this, Phaser.Math.Between(0, 500));\n }\n this.count = 0;\n for (var j = 0; j < this.balloons.length; j++) {\n this.balloons[j].transitionOut(this, transitionTime, this.transitionDirection);\n }\n\n this.sound.play('transition', { volume: 0.8, delay: 0.5 });\n this.bgEvent = this.time.delayedCall(\n transitionTime + 150,\n () => this.nextBackground(),\n this\n );\n\n this.level ++;\n this.transitionCount = this.gameConfig.levelCount[this.level];\n\n console.log(this.gameConfig.levelCount[this.level],this.gameConfig.levelCount);\n if(this.transitionCount === undefined)\n {\n this.transitionCount = this.gameConfig.defaultCount;\n }\n }\n\n nextBackground() {\n this.changeBackground();\n this.transitionDirection = this.gameConfig.backgrounds[this.prevBackgrounds].transitionDirection;\n console.log(this.gameConfig.backgrounds[this.prevBackgrounds].name + ' --> transition direction set to ' + this.transitionDirection);\n let padding = 200;\n let x = Phaser.Math.Between(padding, this.cameras.main.width - padding);\n let y = Phaser.Math.Between(padding, 400);\n this.createBalloon(x, y, false);\n for (var i = 0; i < this.balloons.length; i++) {\n let balloon = this.balloons[i];\n // console.log('moving from ' + balloon.transform.x + ' to ' + -screenX);\n balloon.transitionIn(this, 2000, this.transitionDirection);\n }\n\n }\n\n handleBalloonCollision() {\n // console.log('BALLOON COLLISION');\n if (this.collisionPlayed == false) {\n this.sound.play('collide', { detune: Phaser.Math.Between(90, 125) / 100 });\n this.collisionPlayed = true;\n this.time.delayedCall(250, () => { this.collisionPlayed = false; });\n }\n }\n\n playTapSFX() {\n if (this.canPlaySFX === true) {\n let idleSound = this.idleSFX[this.idleIdx];\n //this.sound.play(idleSound, { volume: 0.6, delay: Phaser.Math.Between(200, 500) / 1000 });\n this.idleIdx = (this.idleIdx + 1) % this.idleSFX.length;\n this.canPlaySFX = false;\n this.time.delayedCall(1500, () => this.onSfxAvailable());\n }\n }\n\n onSfxAvailable() {\n this.canPlaySFX = true;\n }\n\n /**\n * Called when a scene is updated. Updates to game logic, physics and game\n * objects are handled here.\n *\n * @protected\n * @param {number} t Current internal clock time.\n * @param {number} dt Time elapsed since last update.\n */\n update(t, dt) {\n if (this.paused === false) {\n //this.graphics.clear();\n for (let i = 0; i < this.balloons.length; ++i) {\n this.balloons[i].update(this.balloons, dt, t, this.currentGravity);\n //this.graphics.strokeCircleShape(this.balloons[i].circle);\n }\n\n for (var j = 0; j < this.characters.length; j++) {\n this.characters[j].updateCharacter(t, dt, this);\n }\n }\n }\n\n handleGameOver(popData) {\n let popX = popData.x;\n let popY = popData.y;\n\n this.popEffect = this.add\n .sprite(popX, popY)\n .play('balloonPop');\n this.popEffect.tint = popData.tint;\n for (let i = 0; i < this.balloons.length; ++i) {\n this.balloons[i].stop();\n }\n for (let j = 0; j < this.characters.length; j++) {\n this.characters[j].playSad(this);\n }\n\n this.gamePlaying = false;\n\n this.sound.play('pop');\n this.endEvent = this.time.delayedCall(2000, () => this.outroComplete());\n }\n\n outroComplete() {\n this.popEffect.destroy();\n this.popEffect = null;\n this.handlePaused();\n this.bgMusic.stop();\n this.lastBG = this.backgrounds;\n this.createGameOverPopup();\n }\n\n setupCharacters(data) {\n for (var i = 0; i < data.characters.length; i++) {\n let charData = data.characters[i];\n let character = new BaseCharacter(\n this,\n i,\n charData.spine,\n charData.skin,\n charData.animations,\n charData.sfx\n );\n character.togglePause(false);\n this.characterGroup.add(character);\n this.characters.push(character);\n }\n }\n\n createGameOverPopup() {\n if (this.gameOverPopup !== undefined) {\n this.gameOverPopup.destroy();\n }\n\n this.gameOverPopup = new GameOverPopup(this, this.popupGroup, this.endConfig);\n this.popupGroup.add(this.gameOverPopup, true);\n this.popupGroup.setDepth(15, 0);\n }\n\n destroy() {\n console.log('Desroy');\n if (this.gameOverPopup !== null) {\n this.gameOverPopup.destroy();\n }\n this.backgroundGroup.destroy();\n this.staticChars = null;\n this.balloonGroup.destroy();\n this.textGroup.destroy();\n this.gameConfig.destroy();\n this.endConfig.destroy();\n this.helpConfig.destroy();\n this.balloonData.destroy();\n this.counter.destroy();\n this.characterGroup.destroy();\n this.popupGroup.destroy();\n this.uiGroup.destroy();\n super.destroy();\n }\n}\n","export default class SimpleButton extends Phaser.GameObjects.Image {\n /**\n * A simple prefab (extended game object class), displaying a spinning\n * Phaser 3 logo.\n *\n * @extends Phaser\n */\n constructor (scene, x, y, image, callback) {\n super(scene, x, y, image);\n this.name = image;\n scene.add.existing(this);\n this.setOrigin(0.5);\n this.emitter = new Phaser.Events.EventEmitter();\n this.setInteractive({\n useHandCursor: true\n }).on('pointerdown', () => this.onPress(scene, callback));\n }\n\n onPress (scene, callback) {\n scene.sound.play('click');\n let scX = this.scaleX;\n let scY = this.scaleY;\n if (this.pressTween != null) {\n this.pressTween.stop();\n this.pressTween = null;\n }\n this.pressTween = scene.tweens.add({\n targets: this,\n scaleX: scX * 0.9,\n scaleY: scY * 0.9,\n duration: 50,\n yoyo: true,\n onComplete: () => callback()\n });\n }\n\n destroy () {\n if (this.pressTween != null) {\n this.pressTween.stop();\n this.pressTween = null;\n }\n super.destroy();\n }\n}\n","import SimpleButton from '../objects/simpleButton';\n\nexport default class Title extends Phaser.Scene {\n /**\n * My custom scene.\n *\n * @extends Phaser.Scene\n */\n constructor() {\n super({ key: 'Title' });\n }\n\n /**\n * Called when this scene is initialized.\n *\n * @protected\n * @param {object} [data={}] - Initialization parameters.\n */\n init(/* data */) { }\n\n /**\n * Used to declare game assets to be loaded using the loader plugin API.\n *\n * @protected\n */\n preload() { }\n\n /**\n * Responsible for setting up game objects on the screen.\n *\n * @protected\n * @param {object} [data={}] - Initialization parameters.\n */\n create(/* data */) {\n const x = this.cameras.main.width;\n const y = this.cameras.main.height;\n this.bg = this.add.image(x / 2, y / 2, 'titleBG');\n this.titleImages = [];\n this.titleElements = this.add.group();\n this.titleConfig = this.cache.json.get('data').titleConfig;\n let titleImagesLength = this.titleConfig.images.length;\n for (var i = 0; i < titleImagesLength; i++) {\n let sX = this.titleConfig.images[i].x;\n let sY = this.titleConfig.images[i].y;\n let scale = this.titleConfig.images[i].scale;\n let sprite = this.add.sprite(sX, sY, 'sprites', this.titleConfig.images[i].name + '.png');\n sprite.scaleX = scale;\n sprite.scaleY = scale;\n this.titleImages.push(sprite);\n this.titleElements.add(sprite);\n }\n\n let logo = this.titleImages[this.titleImages.length - 1];\n let scX = logo.scaleX;\n let scY = logo.scaleY;\n logo.scaleX = 0;\n logo.scaleY = 0;\n this.tweens.add({\n targets: logo,\n scaleX: scX,\n scaleY: scY,\n easeParams: [0.9, 0.25],\n duration: 900,\n delay: 100,\n ease: 'Elastic.easeOut'\n });\n\n /* let playBtn = this.add.sprite(x / 2, y - 120, 'startBtn');\n playBtn\n .setInteractive({\n useHandCursor: true\n })\n .on('pointerdown', () => this.handlePlayButtonDown()); */\n\n let playBtn = new SimpleButton(this, x / 2, y - 120, 'startBtn', () =>\n this.handlePlayButtonDown()\n );\n playBtn.alpha = 0;\n this.tweens.add({\n targets: playBtn,\n alpha: 1,\n duration: 500,\n delay: 1000,\n ease: 'Quad.easeOut'\n });\n this.title = this.add.bitmapText(\n x / 2,\n 20 + y / 2,\n this.titleConfig.title.font,\n this.titleConfig.title.text\n );\n this.title.setFontSize(this.titleConfig.title.size);\n this.title.setCenterAlign();\n this.title.setOrigin(0.5);\n /* this.theme = this.sound.add('title');\n this.theme.play({\n loop: false,\n volume: 0.5\n }); */\n }\n\n handlePlayButtonDown() {\n // console.log('Clicked!');\n //this.theme.stop();\n this.scene.start('Game');\n }\n\n /**\n * Handles updates to game logic, physics and game objects.\n *\n * @protected\n * @param {number} t - Current internal clock time.\n * @param {number} dt - Time elapsed since last update.\n */\n update(/* t, dt */) { }\n\n /**\n * Called after a scene is rendered. Handles rendenring post processing.\n *\n * @protected\n */\n render() { }\n\n /**\n * Called when a scene is about to shut down.\n *\n * @protected\n */\n shutdown() { }\n\n /**\n * Called when a scene is about to be destroyed (i.e.: removed from scene\n * manager). All allocated resources that need clean up should be freed up\n * here.\n *\n * @protected\n */\n destroy() {\n this.playBtn.destroy();\n this.titleElements.destroy();\n this.title.destroy();\n super.destroy();\n }\n}\n","/*\n * `config` module\n * ===============\n *\n * The game instance settings.\n */\n\n// Import created game scenes.\nimport * as scenes from '@/scenes';\n\n// HINT: Import plugins, custom or trusted third-party ones, here.\n// import ExamplePlugin from 'example-plugin';\n// import ExampleScenePlugin from '@/plugins/example-scene-plugin';\n// import SpineWebGLPlugin from './plugins/spine/SpineWebGLPlugin.js';\n\n/**\n * Game canvas width.\n */\nexport const width = 1136;\n\n/**\n * Game canvas height.\n */\nexport const height = 640;\n\nexport const scale = {\n mode: Phaser.Scale.FIT,\n autoCenter: Phaser.Scale.CENTER_BOTH,\n max: {\n width: 1136,\n height: 640\n }\n};\n\n/**\n * Adjust zoom factor.\n */\nexport const zoom = 1;\n\n/**\n * Adjust pixel density of game graphics.\n */\nexport const resolution = 1;\n\n/**\n * Choose a rendering method.\n *\n * Available options are:\n *\n * - `WEBGL`: Use WebGL rendering;\n * - `CANVAS`: Use 'context2D' API rendering method;\n * - `AUTO`: Phaser will choose, based on device capabilities, the best\n * rendering method to be used.\n */\nexport const type = Phaser.WEBGL;\n\n/**\n * Whether to disable antialiasing or not. Great for pixel art.\n */\nexport const pixelArt = false;\nexport const roundPixels = false;\n\n/**\n * Whether to enable canvas transparency or not.\n */\nexport const transparent = false;\n\nexport const parent = \"gameHolder\";\n\n/**\n * Apply some style to the canvas element.\n */\nexport const canvasStyle = 'display: block; margin: 0 auto;';\n\n/**\n * Define a default a background color.\n */\nexport const backgroundColor = '#000000';\n\nexport const clearBeforeRender = false;\n\nexport const fps = 20;\n\n/**\n * Configure physics engines global parameters.\n *\n * Available systems are:\n *\n * - `arcade`: Phaser Arcade Physics 2;\n * - `matter`: Liam Brummitt's (@liabru) Matter.js;\n * - `impact`: ImpactJS Physics Engine.\n */\nexport const physics = {\n /**\n * Phaser Arcade Physics 2 parameters.\n *\n * This engine becomes available under a `physics` property on game scenes.\n */\n // arcade: {\n // },\n\n /**\n * Matter.js parameters.\n *\n * This engine becomes available under a `matter` property on game scenes.\n */\n // matter: {\n // },\n\n /**\n * Impact Physics Engine parameters.\n *\n * This engine becomes available under a `impact` property on game scenes.\n */\n // impact: {\n // },\n\n /**\n * Enable a physics engine by default on all game scenes.\n */\n default: false\n};\n\n/**\n * Global parameters of the asset manager.\n */\nexport const loader = {\n // HINT: Put all your game assets in the `app/static/assets/` directory.\n path: 'assets/'\n};\n\n/**\n * Declare custom Phaser plugins.\n *\n * There are two kinds of plugins: Global Plugins and Scene Plugins.\n *\n * Global plugins are instantiated once per game and persist throughout the\n * whole session.\n *\n * Scene plugins are instantiated with each scene and are stored in the\n * `Systems` class, rather than the global plugin manager. Scene plugins are\n * tied to the scene life cycle.\n */\nexport const plugins = {\n global: [\n // {\n // // An identifier to associate this plugin instance within Phaser's\n // // plugin manager cache. It must be unique to avoid naming clashes\n // // with other plugins.\n // key: 'ExamplePlugin',\n //\n // // The imported plugin class.\n // plugin: ExamplePlugin,\n //\n // // The property name your plugin will be aliased to. This plugin\n // // will be exposed as a property of your scene context, for example,\n // // `this.myPlugin`.\n // mapping: 'myPlugin',\n //\n // // Whether to start up or not this plugin on game's initialization.\n // // If omitted or set to `false`, you must request the plugin manager\n // // to start up the plugin on a game scene using the method\n // // `this.plugins.start('')`.\n // start: true\n // },\n // {\n // key:'SpineWebGLPlugin',\n // plugin:SpineWebGLPlugin,\n // mapping:'spine',\n // start:true\n // }\n ],\n\n\n scene: [\n {\n key: 'SpineWebGLPlugin',\n plugin: SpineWebGLPlugin,\n start: true,\n sceneKey: 'spine'\n }\n ]\n};\n\n/**\n * Export the game title, version and Web address, as defined in the\n * project package metadata file (`package.json`).\n *\n * These properties can be accessed in the game configuration object\n * (`scene.sys.game.config`), under the keys `gameTitle`, `gameVersion` and\n * `gameURL`, respectively.\n */\nexport { title, version, url } from '@/../../package.json';\n\n/**\n * Export created game scenes.\n */\nexport const scene = Object.values(scenes);\n","/*\n * `app` module\n * ============\n *\n * Provides the game initialization routine.\n */\n\n// Import game instance configuration.\nimport * as config from '@/config';\n\n/**\n * Create a `Phaser.Game` instance and boot the game.\n */\nexport function boot() {\n return new Phaser.Game(config);\n}\n\nboot();\n"],"sourceRoot":""}