{"version":3,"sources":["webpack:///webpack/universalModuleDefinition","webpack:///APlayer.min.js","webpack:///webpack/bootstrap e40d0520cf9b07d68ca4","webpack:///./src/js/utils.js","webpack:///(webpack)/buildin/global.js","webpack:///./src/js/icons.js","webpack:///./node_modules/art-template/lib/runtime.js","webpack:///./src/js/index.js","webpack:///./src/js/player.js","webpack:///./node_modules/promise-polyfill/lib/index.js","webpack:///./node_modules/timers-browserify/main.js","webpack:///./node_modules/setimmediate/setImmediate.js","webpack:///./node_modules/process/browser.js","webpack:///./src/assets/play.svg","webpack:///./src/assets/pause.svg","webpack:///./src/assets/volume-up.svg","webpack:///./src/assets/volume-down.svg","webpack:///./src/assets/volume-off.svg","webpack:///./src/assets/order-random.svg","webpack:///./src/assets/order-list.svg","webpack:///./src/assets/menu.svg","webpack:///./src/assets/loop-all.svg","webpack:///./src/assets/loop-one.svg","webpack:///./src/assets/loop-none.svg","webpack:///./src/assets/loading.svg","webpack:///./src/js/options.js","webpack:///./src/js/template.js","webpack:///./src/template/player.art","webpack:///./node_modules/art-template/lib/compile/runtime.js","webpack:///./node_modules/detect-node/index.js","webpack:///./src/js/bar.js","webpack:///./src/js/user.js","webpack:///./src/js/lrc.js","webpack:///./src/template/lrc.art","webpack:///./src/js/controller.js","webpack:///./src/js/timer.js","webpack:///./src/js/events.js"],"names":["root","factory","exports","module","define","amd","self","this","modules","__webpack_require__","moduleId","installedModules","i","l","call","m","c","d","name","getter","o","Object","defineProperty","configurable","enumerable","get","n","__esModule","object","property","prototype","hasOwnProperty","p","s","_toConsumableArray","arr","Array","isArray","arr2","length","from","value","isMobile","test","window","navigator","userAgent","utils","secondToTime","second","add0","num","hour","Math","floor","min","sec","map","join","getElementViewLeft","element","actualLeft","offsetLeft","current","offsetParent","elementScrollLeft","document","body","scrollLeft","documentElement","fullscreenElement","mozFullScreenElement","webkitFullscreenElement","getElementViewTop","actualTop","offsetTop","elementScrollTop","scrollTop","storage","set","key","localStorage","setItem","getItem","nameMap","dragStart","dragMove","dragEnd","randomOrder","arguments","undefined","options","audio","randomIndex","random","itemAtIndex","concat","item","default","g","_typeof","Symbol","iterator","obj","constructor","Function","eval","e","_interopRequireDefault","_play","_play2","_pause","_pause2","_volumeUp","_volumeUp2","_volumeDown","_volumeDown2","_volumeOff","_volumeOff2","_orderRandom","_orderRandom2","_orderList","_orderList2","_menu","_menu2","_loopAll","_loopAll2","_loopOne","_loopOne2","_loopNone","_loopNone2","_loading","_loading2","Icons","play","pause","volumeUp","volumeDown","volumeOff","orderRandom","orderList","menu","loopAll","loopOne","loopNone","loading","_player","_player2","console","log","_classCallCheck","instance","Constructor","TypeError","_createClass","defineProperties","target","props","descriptor","writable","protoProps","staticProps","_promisePolyfill","_promisePolyfill2","_utils","_utils2","_icons","_icons2","_options","_options2","_template","_template2","_bar","_bar2","_user","_user2","_lrc","_lrc2","_controller","_controller2","_timer","_timer2","_events","_events2","instances","APlayer","container","playIndex","paused","playedPromise","resolve","classList","add","lrc","arrow","offsetWidth","mini","lrcEle","getElementsByClassName","innerHTML","template","info","time","async","content","player","events","user","bar","controller","timer","initAudio","order","switchAudio","autoplay","push","_this","createElement","preload","audioEvents","addEventListener","trigger","on","duration","dtime","percentage","buffered","end","author","loop","indexOf","nextRandomNum","volume","index","_this2","handlePlayPromise","cover","pic","style","backgroundImage","title","artist","light","remove","querySelectorAll","list","src","url","seek","playPromise","catch","err","error","switch","max","currentTime","isNaN","ptime","_this3","button","setTimeout","enable","mutex","_this4","disable","volumeButton","nostorage","parseFloat","muted","switchVolumeIcon","callback","contains","isMultiple","newMusic","wasSingle","newItemHTML","theme","listOl","songListLength","height","splice","textContent","parseInt","destroy","then","setImmediate","noop","bind","fn","thisArg","apply","Promise","_state","_handled","_value","_deferreds","doResolve","handle","deferred","_immediateFn","cb","onFulfilled","onRejected","reject","promise","ret","newValue","finale","_unhandledRejectionFn","len","Handler","done","reason","ex","setTimeoutFunc","prom","all","res","val","args","remaining","slice","race","values","warn","Timeout","id","clearFn","_id","_clearFn","clearTimeout","setInterval","clearInterval","timeout","close","unref","ref","enroll","msecs","_idleTimeoutId","_idleTimeout","unenroll","_unrefActive","active","_onTimeout","clearImmediate","global","process","task","tasksByHandle","nextHandle","registerImmediate","run","runIfPresent","currentlyRunningATask","doc","attachTo","getPrototypeOf","toString","nextTick","postMessage","importScripts","postMessageIsAsynchronous","oldOnMessage","onmessage","messagePrefix","onGlobalMessage","event","source","data","attachEvent","MessageChannel","channel","port1","port2","html","script","onreadystatechange","removeChild","appendChild","defaultSetTimout","Error","defaultClearTimeout","runTimeout","fun","cachedSetTimeout","runClearTimeout","marker","cachedClearTimeout","cleanUpNextTick","draining","currentQueue","queue","queueIndex","drainQueue","Item","array","browser","env","argv","version","versions","addListener","once","off","removeListener","removeAllListeners","emit","prependListener","prependOnceListener","listeners","binding","cwd","chdir","dir","umask","defaultOption","narrow","showlrc","listFolded","listMaxHeight","listmaxheight","music","defaultKey","Template","init","icons","querySelector","barWrap","played","loaded","thumb","volumeBar","volumeBarWrap","$imports","$data","$$out","$escape","$each","$value","$index","JSON","stringify","xmlEscape","regexResult","ESCAPE_REG","exec","result","lastIndex","char","charCodeAt","substring","detectNode","runtime","create","_i","Bar","elements","type","direction","User","storageName","Lrc","parsed","transform","webkitTransform","getElementsByTagName","xhr","XMLHttpRequest","readyState","status","parse","responseText","lyrics","update","apiurl","open","send","lrc_s","replace","match","p1","lyric","split","lyricLen","lrcTimes","lrcText","timeLen","j","oneTime","min2sec","sec2sec","msec2sec","lrcTime","sort","a","b","Controller","initPlayButton","initList","initPlayBar","initOrderButton","initLoopButton","initMenuButton","initVolumeButton","toggle","tagName","toUpperCase","parentElement","audioIndex","thumbMove","clientX","changedTouches","clientWidth","thumbUp","removeEventListener","clientY","clientHeight","_this5","_this6","_this7","Timer","requestAnimationFrame","webkitRequestAnimationFrame","mozRequestAnimationFrame","oRequestAnimationFrame","msRequestAnimationFrame","types","progressChecker","enableprogressChecker","lastPlayPos","currentPlayPos","bufferingDetected","loadingChecker","enableloadingChecker","initfpsChecker","Events","playerEvents"],"mappings":"CAAA,SAAAA,EAAAC,GACA,gBAAAC,UAAA,gBAAAC,QACAA,OAAAD,QAAAD,IACA,kBAAAG,gBAAAC,IACAD,OAAA,aAAAH,GACA,gBAAAC,SACAA,QAAA,QAAAD,IAEAD,EAAA,QAAAC,KACC,mBAAAK,WAAAC,KAAA,WACD,MCAgB,UAAUC,GCN1B,QAAAC,GAAAC,GAGA,GAAAC,EAAAD,GACA,MAAAC,GAAAD,GAAAR,OAGA,IAAAC,GAAAQ,EAAAD,IACAE,EAAAF,EACAG,GAAA,EACAX,WAUA,OANAM,GAAAE,GAAAI,KAAAX,EAAAD,QAAAC,IAAAD,QAAAO,GAGAN,EAAAU,GAAA,EAGAV,EAAAD,QAvBA,GAAAS,KA4DA,OAhCAF,GAAAM,EAAAP,EAGAC,EAAAO,EAAAL,EAGAF,EAAAQ,EAAA,SAAAf,EAAAgB,EAAAC,GACAV,EAAAW,EAAAlB,EAAAgB,IACAG,OAAAC,eAAApB,EAAAgB,GACAK,cAAA,EACAC,YAAA,EACAC,IAAAN,KAMAV,EAAAiB,EAAA,SAAAvB,GACA,GAAAgB,GAAAhB,KAAAwB,WACA,WAA2B,MAAAxB,GAAA,SAC3B,WAAiC,MAAAA,GAEjC,OADAM,GAAAQ,EAAAE,EAAA,IAAAA,GACAA,GAIAV,EAAAW,EAAA,SAAAQ,EAAAC,GAAsD,MAAAR,QAAAS,UAAAC,eAAAjB,KAAAc,EAAAC,IAGtDpB,EAAAuB,EAAA,IAGAvB,IAAAwB,EAAA,KDgBM,SAAU9B,EAAQD,EAASO,GAEjC,YE7EA,SAAAyB,GAAAC,GACA,GAAAC,MAAAC,QAAAF,GAAA,CACA,OAAAvB,GAAA,EAAA0B,EAAAF,MAAAD,EAAAI,QAAiD3B,EAAAuB,EAAAI,OAAgB3B,IACjE0B,EAAA1B,GAAAuB,EAAAvB,EAEA,OAAA0B,GAEA,MAAAF,OAAAI,KAAAL,GARAd,OAAAC,eAAApB,EAAA,cAA8CuC,OAAA,GAW9C,IAAAC,GAAA,UAAAC,KAAAC,OAAAC,UAAAC,WACAC,GACAC,aAAA,SAAAC,GACA,GAAAC,GAAA,SAAAC,GACA,MAAAA,GAAA,OAAAA,EAAA,GAAAA,GAEAC,EAAAC,KAAAC,MAAAL,EAAA,MACAM,EAAAF,KAAAC,OAAAL,EAAA,KAAAG,GAAA,IACAI,EAAAH,KAAAC,MAAAL,EAAA,KAAAG,EAAA,GAAAG,EACA,QAAAH,EAAA,GACAA,EACAG,EACAC,IAEAD,EACAC,IACAC,IAAAP,GAAAQ,KAAA,MAEAC,mBAAA,SAAAC,GACA,GAAAC,GAAAD,EAAAE,WACAC,EAAAH,EAAAI,aACAC,EAAAC,SAAAC,KAAAC,WAAAF,SAAAG,gBAAAD,UACA,IAAAF,SAAAI,mBAAAJ,SAAAK,sBAAAL,SAAAM,wBAMA,YAAAT,OAAAH,GACAC,GAAAE,EAAAD,WACAC,IAAAC,iBAPA,aAAAD,GACAF,GAAAE,EAAAD,WACAC,IAAAC,YAQA,OAAAH,GAAAI,GAEAQ,kBAAA,SAAAb,GAIA,IAHA,GAAAc,GAAAd,EAAAe,UACAZ,EAAAH,EAAAI,aACAY,EAAA,EACA,OAAAb,GACAW,GAAAX,EAAAY,UACAZ,IAAAC,YAGA,OADAY,GAAAV,SAAAC,KAAAU,UAAAX,SAAAG,gBAAAQ,UACAH,EAAAE,GAEAlC,WACAoC,SACAC,IAAA,SAAAC,EAAAvC,GACAwC,aAAAC,QAAAF,EAAAvC,IAEAhB,IAAA,SAAAuD,GACA,MAAAC,cAAAE,QAAAH,KAGAI,SACAC,UAAA3C,EAAA,yBACA4C,SAAA5C,EAAA,wBACA6C,QAAA7C,EAAA,sBAEA8C,YAAA,WACA,GAAAjD,GAAAkD,UAAAlD,OAAA,OAAAmD,KAAAD,UAAA,GAAAA,UAAA,QAAAC,IAAAC,QAAAC,MAAArD,MAUA,OATA,UAAAJ,GACA,OAAAvB,GAAAuB,EAAAI,OAAA,EAAwC3B,GAAA,EAAQA,IAAA,CAChD,GAAAiF,GAAAxC,KAAAC,MAAAD,KAAAyC,UAAAlF,EAAA,IACAmF,EAAA5D,EAAA0D,EACA1D,GAAA0D,GAAA1D,EAAAvB,GACAuB,EAAAvB,GAAAmF,EAEA,MAAA5D,OAEA6D,OAAA9D,EAAAE,MAAAG,KAAAkB,IAAA,SAAAwC,EAAArF,GACA,MAAAA,OAIAV,GAAAgG,QAAAnD,GFoFM,SAAU5C,EAAQD,EAASO,GAEjC,YG7KA,IAKA0F,GALAC,EAAA,kBAAAC,SAAA,gBAAAA,QAAAC,SAAA,SAAAC,GACA,aAAAA,IACC,SAAAA,GACD,MAAAA,IAAA,kBAAAF,SAAAE,EAAAC,cAAAH,QAAAE,IAAAF,OAAAvE,UAAA,eAAAyE,GAGAJ,GAAA,WACA,MAAA5F,QAEA,KACA4F,KAAAM,SAAA,qBAAAC,MAAA,QACC,MAAAC,GACD,+BAAA/D,QAAA,YAAAwD,EAAAxD,WACAuD,EAAAvD,QAEAzC,EAAAD,QAAAiG,GHmLM,SAAUhG,EAAQD,EAASO,GAEjC,YI3KA,SAAAmG,GAAAL,GACA,MAAAA,MAAA5E,WAAA4E,GAA0CL,QAAAK,GA1B1ClF,OAAAC,eAAApB,EAAA,cAA8CuC,OAAA,GAC9C,IAAAoE,GAAApG,EAAA,IACAqG,EAAAF,EAAAC,GACAE,EAAAtG,EAAA,IACAuG,EAAAJ,EAAAG,GACAE,EAAAxG,EAAA,IACAyG,EAAAN,EAAAK,GACAE,EAAA1G,EAAA,IACA2G,EAAAR,EAAAO,GACAE,EAAA5G,EAAA,IACA6G,EAAAV,EAAAS,GACAE,EAAA9G,EAAA,IACA+G,EAAAZ,EAAAW,GACAE,EAAAhH,EAAA,IACAiH,EAAAd,EAAAa,GACAE,EAAAlH,EAAA,IACAmH,EAAAhB,EAAAe,GACAE,EAAApH,EAAA,IACAqH,EAAAlB,EAAAiB,GACAE,EAAAtH,EAAA,IACAuH,EAAApB,EAAAmB,GACAE,EAAAxH,EAAA,IACAyH,EAAAtB,EAAAqB,GACAE,EAAA1H,EAAA,IACA2H,EAAAxB,EAAAuB,GAIAE,GACAC,KAAAxB,EAAAZ,QACAqC,MAAAvB,EAAAd,QACAsC,SAAAtB,EAAAhB,QACAuC,WAAArB,EAAAlB,QACAwC,UAAApB,EAAApB,QACAyC,YAAAnB,EAAAtB,QACA0C,UAAAlB,EAAAxB,QACA2C,KAAAjB,EAAA1B,QACA4C,QAAAhB,EAAA5B,QACA6C,QAAAf,EAAA9B,QACA8C,SAAAd,EAAAhC,QACA+C,QAAAb,EAAAlC,QAEAhG,GAAAgG,QAAAmC,GJ0MM,SAAUlI,EAAQD,EAASO,GAEjC,YKtPAN,GAAAD,QAAAO,EAAA,KL4PM,SAAUN,EAAQD,EAASO,GAEjC,YM9PAY,QAAAC,eAAApB,EAAA,cAA8CuC,OAAA,IAC9ChC,EAAA,EACA,IAAAyI,GAAAzI,EAAA,GACA0I,EACA,SAAA5C,GACA,MAAAA,MAAA5E,WAAA4E,GAA0CL,QAAAK,IAF1C2C,EAIAE,SAAAC,IAAA,mHAAwK,uCACxKnJ,EAAAgG,QAAAiD,EAAAjD,SNoQM,SAAU/F,EAAQD,KAMlB,SAAUC,EAAQD,EAASO,GAEjC,YO1OA,SAAAmG,GAAAL,GACA,MAAAA,MAAA5E,WAAA4E,GAA0CL,QAAAK,GAE1C,QAAA+C,GAAAC,EAAAC,GACA,KAAAD,YAAAC,IACA,SAAAC,WAAA,qCA/CApI,OAAAC,eAAApB,EAAA,cAA8CuC,OAAA,GAC9C,IAAAiH,GAAA,WACA,QAAAC,GAAAC,EAAAC,GACA,OAAAjJ,GAAA,EAAuBA,EAAAiJ,EAAAtH,OAAkB3B,IAAA,CACzC,GAAAkJ,GAAAD,EAAAjJ,EACAkJ,GAAAtI,WAAAsI,EAAAtI,aAAA,EACAsI,EAAAvI,cAAA,EACA,SAAAuI,KACAA,EAAAC,UAAA,GACA1I,OAAAC,eAAAsI,EAAAE,EAAA9E,IAAA8E,IAGA,gBAAAN,EAAAQ,EAAAC,GAKA,MAJAD,IACAL,EAAAH,EAAA1H,UAAAkI,GACAC,GACAN,EAAAH,EAAAS,GACAT,MAGAU,EAAAzJ,EAAA,GACA0J,EAAAvD,EAAAsD,GACAE,EAAA3J,EAAA,GACA4J,EAAAzD,EAAAwD,GACAE,EAAA7J,EAAA,GACA8J,EAAA3D,EAAA0D,GACAE,EAAA/J,EAAA,IACAgK,EAAA7D,EAAA4D,GACAE,EAAAjK,EAAA,IACAkK,EAAA/D,EAAA8D,GACAE,EAAAnK,EAAA,IACAoK,EAAAjE,EAAAgE,GACAE,EAAArK,EAAA,IACAsK,EAAAnE,EAAAkE,GACAE,EAAAvK,EAAA,IACAwK,EAAArE,EAAAoE,GACAE,EAAAzK,EAAA,IACA0K,EAAAvE,EAAAsE,GACAE,EAAA3K,EAAA,IACA4K,EAAAzE,EAAAwE,GACAE,EAAA7K,EAAA,IACA8K,EAAA3E,EAAA0E,GASAE,KACAC,EAAA,WACA,QAAAA,GAAA9F,GA0BA,GAzBA2D,EAAA/I,KAAAkL,GACAlL,KAAAoF,SAAA,EAAA8E,EAAAvE,SAAAP,GACApF,KAAAmL,UAAAnL,KAAAoF,QAAA+F,UACAnL,KAAAoL,UAAA,EACApL,KAAAqL,QAAA,EACArL,KAAAsL,cAAA1B,EAAAjE,QAAA4F,UACAvL,KAAAiF,YAAA6E,EAAAnE,QAAAV,YAAAjF,KAAAoF,QAAAC,MAAArD,QACAhC,KAAAmL,UAAAK,UAAAC,IAAA,WACAzL,KAAAoF,QAAAsG,KACA1L,KAAAmL,UAAAK,UAAAC,IAAA,mBAEAzL,KAAAoF,QAAAC,MAAArD,OAAA,GACAhC,KAAAmL,UAAAK,UAAAC,IAAA,oBAEA3B,EAAAnE,QAAAxD,UACAnC,KAAAmL,UAAAK,UAAAC,IAAA,kBAEAzL,KAAA2L,MAAA3L,KAAAmL,UAAAS,aAAA,IACA5L,KAAA2L,OACA3L,KAAAmL,UAAAK,UAAAC,IAAA,iBAEAzL,KAAAoF,QAAAyG,MACA7L,KAAAmL,UAAAK,UAAAC,IAAA,kBAEAzL,KAAAmL,UAAAnL,KAAAoF,QAAA+F,UACA,IAAAnL,KAAAoF,QAAAsG,MAAA,IAAA1L,KAAAoF,QAAAsG,IAEA,OADAI,GAAA9L,KAAAmL,UAAAY,uBAAA,uBACA1L,EAAA,EAA2BA,EAAAyL,EAAA9J,OAAmB3B,IAC9CL,KAAAoF,QAAAC,MAAAhF,KACAL,KAAAoF,QAAAC,MAAAhF,GAAAqL,IAAAI,EAAAzL,GAAA2L,UAIAhM,MAAAiM,SAAA,GAAA7B,GAAAzE,SACAwF,UAAAnL,KAAAmL,UACA/F,QAAApF,KAAAoF,QACAH,YAAAjF,KAAAiF,cAEAjF,KAAAiM,SAAAC,KAAAN,YAAA,KACA5L,KAAAiM,SAAAE,KAAAX,UAAAC,IAAA,uBAEAzL,KAAAoF,QAAAsG,MACA1L,KAAA0L,IAAA,GAAAhB,GAAA/E,SACAwF,UAAAnL,KAAAiM,SAAAP,IACAU,MAAA,IAAApM,KAAAoF,QAAAsG,IACAW,QAAArM,KAAAoF,QAAAC,MAAAnC,IAAA,SAAAwC,GACA,MAAAA,GAAAgG,MAEAY,OAAAtM,QAGAA,KAAAuM,OAAA,GAAAvB,GAAArF,QACA3F,KAAAwM,KAAA,GAAAhC,GAAA7E,QAAA3F,MACAA,KAAAyM,IAAA,GAAAnC,GAAA3E,QAAA3F,KAAAiM,UACAjM,KAAA0M,WAAA,GAAA9B,GAAAjF,QAAA3F,MACAA,KAAA2M,MAAA,GAAA7B,GAAAnF,QAAA3F,MACAA,KAAA4M,YACA,WAAA5M,KAAAoF,QAAAyH,MACA7M,KAAA8M,YAAA9M,KAAAiF,YAAA,IAEAjF,KAAA8M,YAAA,GAEA9M,KAAAoF,QAAA2H,UACA/M,KAAA+H,OAEAkD,EAAA+B,KAAAhN,MA4TA,MA1TAmJ,GAAA+B,IAEAzG,IAAA,YACAvC,MAAA,WACA,GAAA+K,GAAAjN,IACAA,MAAAqF,MAAA1B,SAAAuJ,cAAA,SACAlN,KAAAqF,MAAA8H,QAAAnN,KAAAoF,QAAA+H,OAMA,QAAA9M,GAAA,EAA+BA,EAAAL,KAAAuM,OAAAa,YAAApL,OAAoC3B,KALnE,SAAAA,GACA4M,EAAA5H,MAAAgI,iBAAAJ,EAAAV,OAAAa,YAAA/M,GAAA,WACA4M,EAAAV,OAAAe,QAAAL,EAAAV,OAAAa,YAAA/M,OAIAA,EAEAL,MAAAuN,GAAA,kBACAN,EAAA5B,QACA4B,EAAAlF,SAGA/H,KAAAuN,GAAA,mBACAN,EAAA5B,QACA4B,EAAAjF,UAGAhI,KAAAuN,GAAA,4BACA,IAAAN,EAAA5H,MAAAmI,WACAP,EAAAhB,SAAAwB,MAAAzB,UAAAlC,EAAAnE,QAAAlD,aAAAwK,EAAA5H,MAAAmI,aAGAxN,KAAAuN,GAAA,sBACA,GAAAG,GAAAT,EAAA5H,MAAAsI,SAAA3L,OAAAiL,EAAA5H,MAAAsI,SAAAC,IAAAX,EAAA5H,MAAAsI,SAAA3L,OAAA,GAAAiL,EAAA5H,MAAAmI,SAAA,CACAP,GAAAR,IAAAjI,IAAA,SAAAkJ,EAAA,WAEA1N,KAAAuN,GAAA,mBACAN,EAAAhB,SAAA4B,OAAA7B,UAAA,wCAEAhM,KAAAuN,GAAA,mBACA,SAAAN,EAAA7H,QAAA0I,KACA,SAAAb,EAAA7H,QAAAyH,MACAI,EAAA7B,UAAA6B,EAAA7H,QAAAC,MAAArD,OAAA,GACAiL,EAAAH,aAAAG,EAAA7B,UAAA,GAAA6B,EAAA7H,QAAAC,MAAArD,QACAiL,EAAAlF,SAEAkF,EAAAH,aAAAG,EAAA7B,UAAA,GAAA6B,EAAA7H,QAAAC,MAAArD,QACAiL,EAAAjF,SAEyB,WAAAiF,EAAA7H,QAAAyH,QACzBI,EAAAhI,YAAA8I,QAAAd,EAAA7B,WAAA6B,EAAAhI,YAAAjD,OAAA,GACAiL,EAAAH,YAAAG,EAAAe,iBACAf,EAAAlF,SAEAkF,EAAAH,YAAAG,EAAAe,iBACAf,EAAAjF,UAGqB,QAAAiF,EAAA7H,QAAA0I,MACrBb,EAAAH,YAAAG,EAAA7B,WACA6B,EAAAlF,QACqB,QAAAkF,EAAA7H,QAAA0I,OACrB,SAAAb,EAAA7H,QAAAyH,MACAI,EAAAH,aAAAG,EAAA7B,UAAA,GAAA6B,EAAA7H,QAAAC,MAAArD,QACyB,WAAAiL,EAAA7H,QAAAyH,OACzBI,EAAAH,YAAAG,EAAAe,iBAEAf,EAAAlF,UAGA/H,KAAAiO,OAAAjO,KAAAwM,KAAAtL,IAAA,iBAIAuD,IAAA,cACAvC,MAAA,SAAAgM,GACA,GAAAC,GAAAnO,IACAA,MAAAoO,kBAAA,WACAD,EAAA5B,OAAAe,QAAA,cAAAY,OACA,KAAAA,IACAC,EAAA/C,UAAA8C,GAEAC,EAAA/I,QAAAC,MAAA8I,EAAA/C,WAAAiD,MACAF,EAAAlC,SAAAqC,IAAAC,MAAAC,gBAAA,QAAAL,EAAA/I,QAAAC,MAAA8I,EAAA/C,WAAAiD,MAAA,KAEAF,EAAAlC,SAAAqC,IAAAC,MAAAC,gBAAA,GAEAL,EAAAlC,SAAAwC,MAAAzC,UAAAmC,EAAA/I,QAAAC,MAAA8I,EAAA/C,WAAAzK,KACAwN,EAAAlC,SAAA4B,OAAA7B,UAAAmC,EAAA/I,QAAAC,MAAA8I,EAAA/C,WAAAsD,OAAA,MAAAP,EAAA/I,QAAAC,MAAA8I,EAAA/C,WAAAsD,OAAA,EACA,IAAAC,GAAAR,EAAAhD,UAAAY,uBAAA,wBACA4C,IACAA,EAAAnD,UAAAoD,OAAA,sBAEAT,EAAAhD,UAAA0D,iBAAA,oBAAAV,EAAA/C,WAAAI,UAAAC,IAAA,sBACA0C,EAAAlC,SAAA6C,KAAAxK,UAAA,GAAA6J,EAAA/C,UACA+C,EAAA9I,MAAA0J,IAAAZ,EAAA/I,QAAAC,MAAA8I,EAAA/C,WAAA4D,IACAb,EAAAc,KAAA,EACA,IAAAC,OAAA,EAWA,OAVAf,GAAA9C,SACA6D,EAAAtF,EAAAjE,QAAA4F,QAAA4C,EAAA9I,MAAA0C,QAAAoH,MAAA,SAAAC,GACAvG,QAAAwG,MAAAD,GACAjB,EAAAnG,WAGAmG,EAAAzC,KAAAyC,EAAAzC,IAAA4D,OAAAnB,EAAA/C,WACA,IAAA+C,EAAA9I,MAAAmI,WACAW,EAAAlC,SAAAwB,MAAAzB,UAAAmC,EAAA9I,MAAAmI,SAAA1D,EAAAnE,QAAAlD,aAAA0L,EAAA9I,MAAAmI,UAAA,SAEA0B,OAKAzK,IAAA,OACAvC,MAAA,SAAAiK,GACAA,EAAArJ,KAAAyM,IAAApD,EAAA,GACAnM,KAAAqF,MAAAmI,WACArB,EAAArJ,KAAAE,IAAAmJ,EAAAnM,KAAAqF,MAAAmI,WAEAxN,KAAAqF,MAAAmK,YAAArD,EACAsD,MAAAzP,KAAAqF,MAAAmI,UACAxN,KAAAyM,IAAAjI,IAAA,oBAEAxE,KAAAyM,IAAAjI,IAAA,SAAA2H,EAAAnM,KAAAqF,MAAAmI,SAAA,SAEAxN,KAAAiM,SAAAyD,MAAA1D,UAAAlC,EAAAnE,QAAAlD,aAAA0J,MAIA1H,IAAA,OACAvC,MAAA,WACA,GAAAyN,GAAA3P,IACAA,MAAAoO,kBAAA,WACAuB,EAAAtE,SACAsE,EAAAtE,QAAA,EACAsE,EAAA1D,SAAA2D,OAAApE,UAAAoD,OAAA,gBACAe,EAAA1D,SAAA2D,OAAApE,UAAAC,IAAA,iBACAkE,EAAA1D,SAAA2D,OAAA5D,UAAA,GACA6D,WAAA,WACAF,EAAA1D,SAAA2D,OAAA5D,UAAAhC,EAAArE,QAAAqC,OACyB,KAEzB,IAAAkH,GAAAtF,EAAAjE,QAAA4F,QAAAoE,EAAAtK,MAAA0C,QAAAoH,MAAA,SAAAC,GACAvG,QAAAwG,MAAAD,GACAO,EAAA3H,SAIA,IAFA2H,EAAAhD,MAAAmD,OAAA,WACAH,EAAAhD,MAAAmD,OAAA,YACAH,EAAAvK,QAAA2K,MACA,OAAA1P,GAAA,EAAuCA,EAAA4K,EAAAjJ,OAAsB3B,IAC7DsP,IAAA1E,EAAA5K,IACA4K,EAAA5K,GAAA2H,OAIA,OAAAkH,QAKAzK,IAAA,QACAvC,MAAA,WACA,GAAA8N,GAAAhQ,IACAA,MAAAoO,kBAAA,WACA4B,EAAA3E,SACA2E,EAAA3E,QAAA,EACA2E,EAAA/D,SAAA2D,OAAApE,UAAAoD,OAAA,iBACAoB,EAAA/D,SAAA2D,OAAApE,UAAAC,IAAA,gBACAuE,EAAA/D,SAAA2D,OAAA5D,UAAA,GACA6D,WAAA,WACAG,EAAA/D,SAAA2D,OAAA5D,UAAAhC,EAAArE,QAAAoC,MACyB,MAEzBiI,EAAA3K,MAAA2C,QACAgI,EAAArD,MAAAsD,QAAA,WACAD,EAAArD,MAAAsD,QAAA,iBAKAxL,IAAA,mBACAvC,MAAA,WACAlC,KAAAiO,UAAA,IACAjO,KAAAiM,SAAAiE,aAAAlE,UAAAhC,EAAArE,QAAAsC,SACiBjI,KAAAiO,SAAA,EACjBjO,KAAAiM,SAAAiE,aAAAlE,UAAAhC,EAAArE,QAAAuC,WAEAlI,KAAAiM,SAAAiE,aAAAlE,UAAAhC,EAAArE,QAAAwC,aAKA1D,IAAA,SACAvC,MAAA,SAAAwL,EAAAyC,GAeA,MAdAzC,GAAA0C,WAAA1C,GACA+B,MAAA/B,KACAA,EAAA5K,KAAAyM,IAAA7B,EAAA,GACAA,EAAA5K,KAAAE,IAAA0K,EAAA,GACA1N,KAAAyM,IAAAjI,IAAA,SAAAkJ,EAAA,UACAyC,GACAnQ,KAAAwM,KAAAhI,IAAA,SAAAkJ,GAEA1N,KAAAqF,MAAA4I,OAAAP,EACA1N,KAAAqF,MAAAgL,QACArQ,KAAAqF,MAAAgL,OAAA,GAEArQ,KAAAsQ,oBAEAtQ,KAAAqF,MAAAgL,MAAA,EAAArQ,KAAAqF,MAAA4I,UAIAxJ,IAAA,KACAvC,MAAA,SAAAvB,EAAA4P,GACAvQ,KAAAuM,OAAAgB,GAAA5M,EAAA4P,MAIA9L,IAAA,SACAvC,MAAA,WACAlC,KAAAiM,SAAA2D,OAAApE,UAAAgF,SAAA,gBACAxQ,KAAA+H,OACiB/H,KAAAiM,SAAA2D,OAAApE,UAAAgF,SAAA,kBACjBxQ,KAAAgI,WAKAvD,IAAA,aACAvC,MAAA,WACA,MAAAlC,MAAAoF,QAAAC,MAAArD,OAAA,KAIAyC,IAAA,gBACAvC,MAAA,WACA,GAAAlC,KAAAyQ,aAAA,CACA,GAAAvC,GAAAlO,KAAAiF,YAAA8I,QAAA/N,KAAAoL,UACA,OAAA8C,KAAAlO,KAAAiF,YAAAjD,OAAA,EACAhC,KAAAiF,YAAA,GAEAjF,KAAAiF,YAAAiJ,EAAA,GAGA,YAKAzJ,IAAA,WACAvC,MAAA,SAAAwO,GACA1Q,KAAAuM,OAAAe,QAAA,WAAAoD,EACA,IAAAC,IAAA3Q,KAAAyQ,YACAzQ,MAAAoF,QAAAC,MAAArF,KAAAoF,QAAAC,MAAAI,OAAAiL,EAEA,QADAE,GAAA,GACAvQ,EAAA,EAA+BA,EAAAqQ,EAAA1O,OAAqB3B,IACpDuQ,GAAA,yDAAA5Q,KAAAoF,QAAAyL,MAAA,+CAAqH7Q,KAAAoF,QAAAC,MAAArD,OAAA0O,EAAA1O,OAAA3B,EAAA,8CAAAqQ,EAAArQ,GAAAM,KAAA,4CAAA+P,EAAArQ,GAAAqO,OAAA,cAErH1O,MAAAiM,SAAA6E,OAAA9E,WAAA4E,EACAD,GAAA3Q,KAAAyQ,eACAzQ,KAAAmL,UAAAK,UAAAC,IAAA,oBACAzL,KAAAqF,MAAAyI,MAAA,EAEA,IAAAiD,GAAA/Q,KAAAmL,UAAA0D,iBAAA,oBAAA7M,MACAhC,MAAAiM,SAAA6C,KAAAP,MAAAyC,OAAA,GAAAD,EAAA,OACA/Q,KAAAiF,YAAA6E,EAAAnE,QAAAV,YAAAjF,KAAAoF,QAAAC,MAAArD,WAIAyC,IAAA,cACAvC,MAAA,SAAAgM,GAEA,GADAlO,KAAAuM,OAAAe,QAAA,cAAAY,GACAlO,KAAAoF,QAAAC,MAAA6I,IAAAlO,KAAAoF,QAAAC,MAAArD,OAAA,GACA,GAAA8M,GAAA9O,KAAAmL,UAAA0D,iBAAA,mBACA7O,MAAAoF,QAAAC,MAAA4L,OAAA/C,EAAA,GACAA,IAAAlO,KAAAoL,YACApL,KAAAoF,QAAAC,MAAA6I,EAAA,GACAlO,KAAA8M,YAAAoB,GAEAlO,KAAA8M,YAAAoB,EAAA,IAGAlO,KAAAoL,UAAA8C,GACAlO,KAAAoL,YAEA0D,EAAAZ,GAAAU,QACA,QAAAvO,GAAA6N,EAAuC7N,EAAAyO,EAAA9M,OAAiB3B,IACxDyO,EAAAzO,GAAA0L,uBAAA,yBAAAmF,YAAA7Q,CAEA,KAAAL,KAAAoF,QAAAC,MAAArD,QACAhC,KAAAmL,UAAAK,UAAAoD,OAAA,oBAEA5O,KAAAiM,SAAA6C,KAAAP,MAAAyC,OAAAG,SAAAnR,KAAAiM,SAAA6C,KAAAP,MAAAyC,OAAA,gBAKAvM,IAAA,UACAvC,MAAA,WACA+I,EAAAgG,OAAAhG,EAAA8C,QAAA/N,MAAA,GACAA,KAAAgI,QACAhI,KAAAmL,UAAAa,UAAA,GACAhM,KAAAqF,MAAA0J,IAAA,GACA/O,KAAA2M,MAAAyE,UACApR,KAAAuM,OAAAe,QAAA,cAIA7I,IAAA,oBACAvC,MAAA,SAAAqO,GACAvQ,KAAAsL,cAAAtL,KAAAsL,cAAA+F,KAAAd,GAAApB,MAAA,SAAAC,GACAvG,QAAAwG,MAAAD,SAKAlE,IAEAvL,GAAAgG,QAAAuF,GP0RM,SAAUtL,EAAQD,EAASO,GAEjC,cAC4B,SAASoR,GQ3sBrC,QAAAC,MAEA,QAAAC,GAAAC,EAAAC,GACA,kBACAD,EAAAE,MAAAD,EAAAxM,YAGA,QAAA0M,GAAAH,GACA,KAAAzR,eAAA4R,IACA,SAAA1I,WAAA,uCACA,sBAAAuI,GACA,SAAAvI,WAAA,iBACAlJ,MAAA6R,OAAA,EACA7R,KAAA8R,UAAA,EACA9R,KAAA+R,WAAA5M,GACAnF,KAAAgS,cACAC,EAAAR,EAAAzR,MAEA,QAAAkS,GAAAnS,EAAAoS,GACA,SAAApS,EAAA8R,QACA9R,IAAAgS,MAEA,QAAAhS,EAAA8R,OAEA,WADA9R,GAAAiS,WAAAhF,KAAAmF,EAGApS,GAAA+R,UAAA,EACAF,EAAAQ,aAAA,WACA,GAAAC,GAAA,IAAAtS,EAAA8R,OAAAM,EAAAG,YAAAH,EAAAI,UACA,WAAAF,EAEA,YADA,IAAAtS,EAAA8R,OAAAtG,EAAAiH,GAAAL,EAAAM,QAAA1S,EAAAgS,OAGA,IAAAW,EACA,KACAA,EAAAL,EAAAtS,EAAAgS,QACS,MAAA3L,GAET,WADAoM,GAAAL,EAAAM,QAAArM,GAGAmF,EAAA4G,EAAAM,QAAAC,KAGA,QAAAnH,GAAAxL,EAAA4S,GACA,IACA,GAAAA,IAAA5S,EACA,SAAAmJ,WAAA,4CACA,IAAAyJ,IAAA,qBAAAA,EAAA,YAAA9M,EAAA8M,KAAA,kBAAAA,IAAA,CACA,GAAAtB,GAAAsB,EAAAtB,IACA,IAAAsB,YAAAf,GAIA,MAHA7R,GAAA8R,OAAA,EACA9R,EAAAgS,OAAAY,MACAC,GAAA7S,EAEa,sBAAAsR,GAEb,WADAY,GAAAT,EAAAH,EAAAsB,GAAA5S,GAIAA,EAAA8R,OAAA,EACA9R,EAAAgS,OAAAY,EACAC,EAAA7S,GACK,MAAAqG,GACLoM,EAAAzS,EAAAqG,IAGA,QAAAoM,GAAAzS,EAAA4S,GACA5S,EAAA8R,OAAA,EACA9R,EAAAgS,OAAAY,EACAC,EAAA7S,GAEA,QAAA6S,GAAA7S,GACA,IAAAA,EAAA8R,QAAA,IAAA9R,EAAAiS,WAAAhQ,QACA4P,EAAAQ,aAAA,WACArS,EAAA+R,UACAF,EAAAiB,sBAAA9S,EAAAgS,SAIA,QAAA1R,GAAA,EAAAyS,EAAA/S,EAAAiS,WAAAhQ,OAAiD3B,EAAAyS,EAASzS,IAC1D6R,EAAAnS,IAAAiS,WAAA3R,GAEAN,GAAAiS,WAAA,KAEA,QAAAe,GAAAT,EAAAC,EAAAE,GACAzS,KAAAsS,YAAA,kBAAAA,KAAA,KACAtS,KAAAuS,WAAA,kBAAAA,KAAA,KACAvS,KAAAyS,UAEA,QAAAR,GAAAR,EAAA1R,GACA,GAAAiT,IAAA,CACA,KACAvB,EAAA,SAAAvP,GACA8Q,IAEAA,GAAA,EACAzH,EAAAxL,EAAAmC,KACS,SAAA+Q,GACTD,IAEAA,GAAA,EACAR,EAAAzS,EAAAkT,MAEK,MAAAC,GACL,GAAAF,EACA,MACAA,IAAA,EACAR,EAAAzS,EAAAmT,IAjHA,GAAArN,GAAA,kBAAAC,SAAA,gBAAAA,QAAAC,SAAA,SAAAC,GACA,aAAAA,IACC,SAAAA,GACD,MAAAA,IAAA,kBAAAF,SAAAE,EAAAC,cAAAH,QAAAE,IAAAF,OAAAvE,UAAA,eAAAyE,IAEAmN,EAAAtD,UA+GA+B,GAAArQ,UAAA,eAAAgR,GACA,MAAAvS,MAAAqR,KAAA,KAAAkB,IAEAX,EAAArQ,UAAA8P,KAAA,SAAAiB,EAAAC,GACA,GAAAa,GAAA,GAAApT,MAAAiG,YAAAsL,EAEA,OADAW,GAAAlS,KAAA,GAAA+S,GAAAT,EAAAC,EAAAa,IACAA,GAEAxB,EAAArQ,UAAA,iBAAAgP,GACA,GAAAtK,GAAAjG,KAAAiG,WACA,OAAAjG,MAAAqR,KAAA,SAAAnP,GACA,MAAA+D,GAAAsF,QAAAgF,KAAAc,KAAA,WACA,MAAAnP,MAEK,SAAA+Q,GACL,MAAAhN,GAAAsF,QAAAgF,KAAAc,KAAA,WACA,MAAApL,GAAAuM,OAAAS,QAIArB,EAAAyB,IAAA,SAAAzR,GACA,UAAAgQ,GAAA,SAAArG,EAAAiH,GAOA,QAAAc,GAAAjT,EAAAkT,GACA,IACA,GAAAA,IAAA,qBAAAA,EAAA,YAAA1N,EAAA0N,KAAA,kBAAAA,IAAA,CACA,GAAAlC,GAAAkC,EAAAlC,IACA,sBAAAA,GAIA,WAHAA,GAAA9Q,KAAAgT,EAAA,SAAAA,GACAD,EAAAjT,EAAAkT,IACyBf,GAIzBgB,EAAAnT,GAAAkT,EACA,KAAAE,GACAlI,EAAAiI,GAEa,MAAAN,GACbV,EAAAU,IAtBA,IAAAtR,OAAA,KAAAA,EAAAI,OACA,SAAAkH,WAAA,+BACA,IAAAsK,GAAA3R,MAAAN,UAAAmS,MAAAnT,KAAAqB,EACA,QAAA4R,EAAAxR,OACA,MAAAuJ,MAqBA,QApBAkI,GAAAD,EAAAxR,OAoBA3B,EAAA,EAAuBA,EAAAmT,EAAAxR,OAAiB3B,IACxCiT,EAAAjT,EAAAmT,EAAAnT,OAIAuR,EAAArG,QAAA,SAAArJ,GACA,MAAAA,IAAA,qBAAAA,EAAA,YAAA2D,EAAA3D,OAAA+D,cAAA2L,EACA1P,EAEA,GAAA0P,GAAA,SAAArG,GACAA,EAAArJ,MAGA0P,EAAAY,OAAA,SAAAtQ,GACA,UAAA0P,GAAA,SAAArG,EAAAiH,GACAA,EAAAtQ,MAGA0P,EAAA+B,KAAA,SAAAC,GACA,UAAAhC,GAAA,SAAArG,EAAAiH,GACA,OAAAnS,GAAA,EAAAyS,EAAAc,EAAA5R,OAA4C3B,EAAAyS,EAASzS,IACrDuT,EAAAvT,GAAAgR,KAAA9F,EAAAiH,MAIAZ,EAAAQ,aAAA,kBAAAd,IAAA,SAAAG,GACAH,EAAAG,KACC,SAAAA,GACD0B,EAAA1B,EAAA,IAEAG,EAAAiB,sBAAA,SAAAzD,GACA,mBAAAvG,mBACAA,QAAAgL,KAAA,wCAAAzE,IAGAxP,EAAAD,QAAAiS,IRmtB6BrR,KAAKZ,EAASO,EAAoB,GAAGoR,eAI5D,SAAU1R,EAAQD,EAASO,GAEjC,YSn5BA,SAAA4T,GAAAC,EAAAC,GACAhU,KAAAiU,IAAAF,EACA/T,KAAAkU,SAAAF,EAdA,GAAArC,GAAAzL,SAAA3E,UAAAoQ,KACAhS,GAAAkQ,WAAA,WACA,UAAAiE,GAAAnC,EAAApR,KAAAsP,WAAAxN,OAAA6C,WAAAiP,eAEAxU,EAAAyU,YAAA,WACA,UAAAN,GAAAnC,EAAApR,KAAA6T,YAAA/R,OAAA6C,WAAAmP,gBAEA1U,EAAAwU,aAAAxU,EAAA0U,cAAA,SAAAC,GACAA,GACAA,EAAAC,SAOAT,EAAAvS,UAAAiT,MAAAV,EAAAvS,UAAAkT,IAAA,aAEAX,EAAAvS,UAAAgT,MAAA,WACAvU,KAAAkU,SAAA3T,KAAA8B,OAAArC,KAAAiU,MAEAtU,EAAA+U,OAAA,SAAAhP,EAAAiP,GACAR,aAAAzO,EAAAkP,gBACAlP,EAAAmP,aAAAF,GAEAhV,EAAAmV,SAAA,SAAApP,GACAyO,aAAAzO,EAAAkP,gBACAlP,EAAAmP,cAAA,GAEAlV,EAAAoV,aAAApV,EAAAqV,OAAA,SAAAtP,GACAyO,aAAAzO,EAAAkP,eACA,IAAAD,GAAAjP,EAAAmP,YACAF,IAAA,IACAjP,EAAAkP,eAAA/E,WAAA,WACAnK,EAAAuP,YACAvP,EAAAuP,cACSN,KAGTzU,EAAA,GACAP,EAAA2R,0BACA3R,EAAAuV,+BTq6BM,SAAUtV,EAAQD,EAASO,GAEjC,cAC4B,SAASiV,EAAQC,IUj9B7C,SAAAD,EAAAhQ,GAUA,QAAAmM,GAAAf,GACA,kBAAAA,KACAA,EAAA,GAAArK,UAAA,GAAAqK,GAGA,QADAiD,GAAA,GAAA3R,OAAAqD,UAAAlD,OAAA,GACA3B,EAAA,EAAuBA,EAAAmT,EAAAxR,OAAiB3B,IACxCmT,EAAAnT,GAAA6E,UAAA7E,EAAA,EAEA,IAAAgV,IACA9E,WACAiD,OAIA,OAFA8B,GAAAC,GAAAF,EACAG,EAAAD,GACAA,IAEA,QAAAL,GAAAhD,SACAoD,GAAApD,GAEA,QAAAuD,GAAAJ,GACA,GAAA9E,GAAA8E,EAAA9E,SACAiD,EAAA6B,EAAA7B,IACA,QAAAA,EAAAxR,QACA,OACAuO,GACA,MACA,QACAA,EAAAiD,EAAA,GACA,MACA,QACAjD,EAAAiD,EAAA,GAAAA,EAAA,GACA,MACA,QACAjD,EAAAiD,EAAA,GAAAA,EAAA,GAAAA,EAAA,GACA,MACA,SACAjD,EAAAoB,MAAAxM,EAAAqO,IAIA,QAAAkC,GAAAxD,GACA,GAAAyD,EACA9F,WAAA6F,EAAA,EAAAxD,OACS,CACT,GAAAmD,GAAAC,EAAApD,EACA,IAAAmD,EAAA,CACAM,GAAA,CACA,KACAF,EAAAJ,GACiB,QACjBH,EAAAhD,GACAyD,GAAA,KA3DA,IAAAR,EAAA7D,aAAA,CAGA,GAIAkE,GAJAD,EAAA,EACAD,KACAK,GAAA,EACAC,EAAAT,EAAAxR,SAyHAkS,EAAA/U,OAAAgV,gBAAAhV,OAAAgV,eAAAX,EACAU,QAAAhG,WAAAgG,EAAAV,EACU,wBAAAY,SAAAxV,KAAA4U,EAAAC,SAjEV,WACAI,EAAA,SAAAtD,GACAkD,EAAAY,SAAA,WACAN,EAAAxD,SAIA,WACA,GAAAiD,EAAAc,cAAAd,EAAAe,cAAA,CACA,GAAAC,IAAA,EACAC,EAAAjB,EAAAkB,SAMA,OALAlB,GAAAkB,UAAA,WACAF,GAAA,GAEAhB,EAAAc,YAAA,QACAd,EAAAkB,UAAAD,EACAD,MAGA,WACA,GAAAG,GAAA,gBAAAxT,KAAAyC,SAAA,IACAgR,EAAA,SAAAC,GACAA,EAAAC,SAAAtB,GAAA,gBAAAqB,GAAAE,MAAA,IAAAF,EAAAE,KAAA3I,QAAAuI,IACAZ,GAAAc,EAAAE,KAAAhD,MAAA4C,EAAAtU,SAGAmT,GAAA9H,iBACA8H,EAAA9H,iBAAA,UAAAkJ,GAAA,GAEApB,EAAAwB,YAAA,YAAAJ,GAEAf,EAAA,SAAAtD,GACAiD,EAAAc,YAAAK,EAAApE,EAAA,SAqCKiD,EAAAyB,eAlCL,WACA,GAAAC,GAAA,GAAAD,eACAC,GAAAC,MAAAT,UAAA,SAAAG,GAEAd,EADAc,EAAAE,OAGAlB,EAAA,SAAAtD,GACA2E,EAAAE,MAAAd,YAAA/D,OA6BK0D,GAAA,sBAAAA,GAAA1I,cAAA,UA1BL,WACA,GAAA8J,GAAApB,EAAA9R,eACA0R,GAAA,SAAAtD,GACA,GAAA+E,GAAArB,EAAA1I,cAAA,SACA+J,GAAAC,mBAAA,WACAxB,EAAAxD,GACA+E,EAAAC,mBAAA,KACAF,EAAAG,YAAAF,GACAA,EAAA,MAEAD,EAAAI,YAAAH,OAGA,WACAzB,EAAA,SAAAtD,GACArC,WAAA6F,EAAA,EAAAxD,OAgBA2D,EAAAvE,eACAuE,EAAAX,mBACC,mBAAAnV,UAAA,KAAAoV,MAAAhQ,GAAAgQ,EAAApV,QVm9B4BQ,KAAKZ,EAASO,EAAoB,GAAIA,EAAoB,MAIjF,SAAUN,EAAQD,EAASO,GAEjC,YWtmCA,SAAAmX,KACA,SAAAC,OAAA,mCAEA,QAAAC,KACA,SAAAD,OAAA,qCAsBA,QAAAE,GAAAC,GACA,GAAAC,IAAA7H,WACA,MAAAA,YAAA4H,EAAA,EAEA,KAAAC,IAAAL,IAAAK,IAAA7H,WAEA,MADA6H,GAAA7H,WACAA,WAAA4H,EAAA,EAEA,KACA,MAAAC,GAAAD,EAAA,GACK,MAAArR,GACL,IACA,MAAAsR,GAAAnX,KAAA,KAAAkX,EAAA,GACS,MAAArR,GACT,MAAAsR,GAAAnX,KAAAP,KAAAyX,EAAA,KAIA,QAAAE,GAAAC,GACA,GAAAC,IAAA1D,aACA,MAAAA,cAAAyD,EAEA,KAAAC,IAAAN,IAAAM,IAAA1D,aAEA,MADA0D,GAAA1D,aACAA,aAAAyD,EAEA,KACA,MAAAC,GAAAD,GACK,MAAAxR,GACL,IACA,MAAAyR,GAAAtX,KAAA,KAAAqX,GACS,MAAAxR,GACT,MAAAyR,GAAAtX,KAAAP,KAAA4X,KAQA,QAAAE,KACAC,GAAAC,IAGAD,GAAA,EACAC,EAAAhW,OACAiW,EAAAD,EAAAvS,OAAAwS,GAEAC,GAAA,EAEAD,EAAAjW,QACAmW,KAGA,QAAAA,KACA,IAAAJ,EAAA,CAGA,GAAAzD,GAAAkD,EAAAM,EACAC,IAAA,CAEA,KADA,GAAAjF,GAAAmF,EAAAjW,OACA8Q,GAAA,CAGA,IAFAkF,EAAAC,EACAA,OACAC,EAAApF,GACAkF,GACAA,EAAAE,GAAAzC,KAGAyC,IAAA,EACApF,EAAAmF,EAAAjW,OAEAgW,EAAA,KACAD,GAAA,EACAJ,EAAArD,IAcA,QAAA8D,GAAAX,EAAAY,GACArY,KAAAyX,MACAzX,KAAAqY,QAWA,QAAA9G,MAlIA,GACAmG,GACAG,EAFAzC,EAAAxV,EAAAD,YASA,WACA,IAEA+X,EADA,kBAAA7H,YACAA,WAEAwH,EAEK,MAAAjR,GACLsR,EAAAL,EAEA,IAEAQ,EADA,kBAAA1D,cACAA,aAEAoD,EAEK,MAAAnR,GACLyR,EAAAN,KAuCA,IAEAS,GAFAC,KACAF,GAAA,EAEAG,GAAA,CAqCA9C,GAAAY,SAAA,SAAAyB,GACA,GAAAjE,GAAA,GAAA3R,OAAAqD,UAAAlD,OAAA,EACA,IAAAkD,UAAAlD,OAAA,EACA,OAAA3B,GAAA,EAAuBA,EAAA6E,UAAAlD,OAAsB3B,IAC7CmT,EAAAnT,EAAA,GAAA6E,UAAA7E,EAGA4X,GAAAjL,KAAA,GAAAoL,GAAAX,EAAAjE,IACA,IAAAyE,EAAAjW,QAAA+V,GACAP,EAAAW,IAOAC,EAAA7W,UAAAkU,IAAA,WACAzV,KAAAyX,IAAA9F,MAAA,KAAA3R,KAAAqY,QAEAjD,EAAA3G,MAAA,UACA2G,EAAAkD,SAAA,EACAlD,EAAAmD,OACAnD,EAAAoD,QACApD,EAAAqD,QAAA,GACArD,EAAAsD,YAGAtD,EAAA7H,GAAAgE,EACA6D,EAAAuD,YAAApH,EACA6D,EAAAwD,KAAArH,EACA6D,EAAAyD,IAAAtH,EACA6D,EAAA0D,eAAAvH,EACA6D,EAAA2D,mBAAAxH,EACA6D,EAAA4D,KAAAzH,EACA6D,EAAA6D,gBAAA1H,EACA6D,EAAA8D,oBAAA3H,EACA6D,EAAA+D,UAAA,SAAAxY,GACA,UAEAyU,EAAAgE,QAAA,SAAAzY,GACA,SAAA2W,OAAA,qCAEAlC,EAAAiE,IAAA,WACA,WAEAjE,EAAAkE,MAAA,SAAAC,GACA,SAAAjC,OAAA,mCAEAlC,EAAAoE,MAAA,WACA,WXgnCM,SAAU5Z,EAAQD,GY3wCxBC,EAAAD,QAAA,yPZixCM,SAAUC,EAAQD,GajxCxBC,EAAAD,QAAA,8RbuxCM,SAAUC,EAAQD,GcvxCxBC,EAAAD,QAAA,uyCd6xCM,SAAUC,EAAQD,Ge7xCxBC,EAAAD,QAAA,0lBfmyCM,SAAUC,EAAQD,GgBnyCxBC,EAAAD,QAAA,2ShByyCM,SAAUC,EAAQD,GiBzyCxBC,EAAAD,QAAA,8QjB+yCM,SAAUC,EAAQD,GkB/yCxBC,EAAAD,QAAA,4KlBqzCM,SAAUC,EAAQD,GmBrzCxBC,EAAAD,QAAA,sdnB2zCM,SAAUC,EAAQD,GoB3zCxBC,EAAAD,QAAA,kPpBi0CM,SAAUC,EAAQD,GqBj0CxBC,EAAAD,QAAA,oSrBu0CM,SAAUC,EAAQD,GsBv0CxBC,EAAAD,QAAA,mWtB60CM,SAAUC,EAAQD,GuB70CxBC,EAAAD,QAAA,2PvBm1CM,SAAUC,EAAQD,EAASO,GAEjC,YwBp1CAY,QAAAC,eAAApB,EAAA,cAA8CuC,OAAA,IAC9CvC,EAAAgG,QAAA,SAAAP,GACA,GAAAqU,IACAtO,UAAA/F,EAAA/B,SAAAM,SAAAoI,uBAAA,cACAF,KAAAzG,EAAAsU,SAAA,EACA3M,UAAA,EACAgD,OAAA,EACArE,IAAAtG,EAAAuU,SAAA,EACAxM,QAAA,OACA0D,MAAA,UACA/C,KAAA,MACAjB,MAAA,OACAoB,OAAA,GACA2L,YAAA,EACAC,cAAAzU,EAAA0U,cACAzU,MAAAD,EAAA2U,MAEA,QAAAC,KAAAP,GACAA,EAAAjY,eAAAwY,KAAA5U,EAAA5D,eAAAwY,KACA5U,EAAA4U,GAAAP,EAAAO,GAeA,OAZA,mBAAAlZ,OAAAS,UAAAwU,SAAAxV,KAAA6E,EAAAC,SACAD,EAAAC,OAAAD,EAAAC,QAEAD,EAAAC,MAAAnC,IAAA,SAAAwC,GAIA,MAHAA,GAAA/E,KAAA+E,EAAA/E,MAAA+E,EAAA+I,MACA/I,EAAAgJ,OAAAhJ,EAAAgJ,QAAAhJ,EAAAmI,OACAnI,EAAA2I,MAAA3I,EAAA2I,OAAA3I,EAAA4I,IACA5I,IAEAN,EAAAC,MAAArD,QAAA,WAAAoD,EAAA0I,OACA1I,EAAA0I,KAAA,OAEA1I,IxB21CM,SAAUxF,EAAQD,EAASO,GAEjC,YyBv2CA,SAAAmG,GAAAL,GACA,MAAAA,MAAA5E,WAAA4E,GAA0CL,QAAAK,GAE1C,QAAA+C,GAAAC,EAAAC,GACA,KAAAD,YAAAC,IACA,SAAAC,WAAA,qCA7BApI,OAAAC,eAAApB,EAAA,cAA8CuC,OAAA,GAC9C,IAAAiH,GAAA,WACA,QAAAC,GAAAC,EAAAC,GACA,OAAAjJ,GAAA,EAAuBA,EAAAiJ,EAAAtH,OAAkB3B,IAAA,CACzC,GAAAkJ,GAAAD,EAAAjJ,EACAkJ,GAAAtI,WAAAsI,EAAAtI,aAAA,EACAsI,EAAAvI,cAAA,EACA,SAAAuI,KACAA,EAAAC,UAAA,GACA1I,OAAAC,eAAAsI,EAAAE,EAAA9E,IAAA8E,IAGA,gBAAAN,EAAAQ,EAAAC,GAKA,MAJAD,IACAL,EAAAH,EAAA1H,UAAAkI,GACAC,GACAN,EAAAH,EAAAS,GACAT,MAGAc,EAAA7J,EAAA,GACA8J,EAAA3D,EAAA0D,GACApB,EAAAzI,EAAA,IACA0I,EAAAvC,EAAAsC,GASAsR,EAAA,WACA,QAAAA,GAAA7U,GACA2D,EAAA/I,KAAAia,GACAja,KAAAmL,UAAA/F,EAAA+F,UACAnL,KAAAoF,kBACApF,KAAAiF,YAAAG,EAAAH,YACAjF,KAAAka,OAwCA,MAtCA/Q,GAAA8Q,IACAxV,IAAA,OACAvC,MAAA,WACA,GAAAmM,OAAA,EAEAA,GADA,WAAArO,KAAAoF,QAAAyH,MACA7M,KAAAoF,QAAAC,MAAArF,KAAAiF,YAAA,IAAAoJ,MAEArO,KAAAoF,QAAAC,MAAA,GAAAgJ,MAEArO,KAAAmL,UAAAa,WAAA,EAAApD,EAAAjD,UACAP,QAAApF,KAAAoF,QACA+U,MAAAnQ,EAAArE,QACA0I,UAEArO,KAAA0L,IAAA1L,KAAAmL,UAAAiP,cAAA,yBACApa,KAAA0P,MAAA1P,KAAAmL,UAAAiP,cAAA,kBACApa,KAAAkM,KAAAlM,KAAAmL,UAAAiP,cAAA,iBACApa,KAAAmM,KAAAnM,KAAAmL,UAAAiP,cAAA,iBACApa,KAAAqa,QAAAra,KAAAmL,UAAAiP,cAAA,qBACApa,KAAA4P,OAAA5P,KAAAmL,UAAAiP,cAAA,mBACApa,KAAA8O,KAAA9O,KAAAmL,UAAAiP,cAAA,iBACApa,KAAA8Q,OAAA9Q,KAAAmL,UAAAiP,cAAA,oBACApa,KAAAsa,OAAAta,KAAAmL,UAAAiP,cAAA,mBACApa,KAAAua,OAAAva,KAAAmL,UAAAiP,cAAA,mBACApa,KAAAwa,MAAAxa,KAAAmL,UAAAiP,cAAA,kBACApa,KAAAiO,OAAAjO,KAAAmL,UAAAiP,cAAA,mBACApa,KAAAya,UAAAza,KAAAmL,UAAAiP,cAAA,uBACApa,KAAAkQ,aAAAlQ,KAAAmL,UAAAiP,cAAA,wBACApa,KAAA0a,cAAA1a,KAAAmL,UAAAiP,cAAA,4BACApa,KAAA8N,KAAA9N,KAAAmL,UAAAiP,cAAA,sBACApa,KAAA6M,MAAA7M,KAAAmL,UAAAiP,cAAA,uBACApa,KAAAsI,KAAAtI,KAAAmL,UAAAiP,cAAA,sBACApa,KAAAsO,IAAAtO,KAAAmL,UAAAiP,cAAA,gBACApa,KAAAyO,MAAAzO,KAAAmL,UAAAiP,cAAA,kBACApa,KAAA6N,OAAA7N,KAAAmL,UAAAiP,cAAA,mBACApa,KAAAyN,MAAAzN,KAAAmL,UAAAiP,cAAA,sBAGAH,IAEAta,GAAAgG,QAAAsU,GzBq4CM,SAAUra,EAAQD,EAASO,GAEjC,GAAIya,GAAWza,EAAoB,EACnCN,GAAOD,QAAU,SAAUib,GACvB,YACAA,GAAQA,KACR,IAAIC,G0B59CP,GAAAxM,EAAAuM,EAAAvM,MAAAyM,EAAAH,EAAAG,QAAAX,EAAAS,EAAAT,MAAA/U,EAAAwV,EAAAxV,QAAA2V,EAAAJ,EAAAI,KAAAH,GAAAI,OAAAJ,EAAAK,M1B0hDG,OA7DAJ,I0B79CqB,2BAAAxM,IAAAwM,GAA8C,kCAA9CA,GAAyDC,EAAzDzM,GAAAwM,GAAA,Q1Bm+CrBA,G0Bl+C0C,mD1Bm+C1CA,G0Bn+C2DV,EAAApS,K1Bo+C3D8S,G0Bt9CsE,2lB1Bu9CtEA,G0Bv9CyFC,EAAA1V,EAAAyL,O1Bw9CzFgK,G0Bv9CgE,2E1Bw9ChEA,G0Bx9CmFC,EAAA1V,EAAAyL,O1By9CnFgK,G0Bx9CwD,mE1By9CxDA,G0Bz9C4EV,EAAAzR,Q1B09C5EmS,G0B/8CiB,6c1Bg9CjBA,G0Bh9CwCV,EAAAjS,W1Bi9CxC2S,G0B78CiF,iO1B88CjFA,G0B98CoGC,EAAA1V,EAAAyL,O1B+8CpGgK,G0B38CS,kGAAAzV,EAAAC,MAAiCrD,OAAA,IAAjC6Y,GAEI,iGAAiC,SAAjCzV,EAAAyH,MAAAgO,GAAuDV,EAAA9R,UAAwC,WAAxCjD,EAAwCyH,QAFnGgO,GAAAV,EAAA/R,aAAAyS,GAAA,yC1Bq9CTA,G0B/8Ca,gGAA+B,QAA/BzV,EAAA0I,KAAA+M,GAAmDV,EAAA3R,QAAA,QAAApD,EAAoC0I,KAApC+M,GAAwDV,EAAA5R,QAAA,SAAAnD,EAAqC0I,OAArC+M,GAAAV,EAAA1R,U1Bu9CxHoS,G0Bp9Ca,uH1Bq9CbA,G0Br9C8BV,EAAA7R,K1Bs9C9BuS,G0Bj9CqB,wFAAAzV,EAAAwU,aAAAiB,GAAA,sB1Bq9CrBA,G0Br9C4E,IAAAzV,EAAAyU,gBAAAgB,GAAkD,uBAAlDA,GAA6EC,EAA7E1V,EAAAyU,eAAAgB,GAAA,K1B29C5EA,G0Bz9CK,wBAAAE,EAAA3V,EAAsBC,MAAA,SAAA2V,EAAAC,GAAtBJ,GAEsD,iFAFtDA,GAEyEC,EAAA1V,EAAAyL,OAFzEgK,GAGqC,4DAHrCA,GAGqDC,EAAAG,EAAA,GAHrDJ,GAIqC,yDAJrCA,GAIsDC,EAAAE,EAAAra,MAJtDka,GAKsC,0DALtCA,GAKyDC,EAAAE,EAAAtM,QALzDmM,GAAA,qC1Bq+CLA,GAAS,wBAMP,SAAUjb,EAAQD,EAASO,GAEjC,cAC4B,SAASiV,G2BhhDrC,QAAAY,GAAA7T,GAUA,MATA,gBAAAA,KAEAA,MADAiD,KAAAjD,GAAA,OAAAA,EACA,GACS,kBAAAA,GACT6T,EAAA7T,EAAA3B,KAAA2B,IAEAgZ,KAAAC,UAAAjZ,IAGAA,EAGA,QAAAkZ,GAAA/O,GACA,GAAA2K,GAAA,GAAA3K,EACAgP,EAAAC,EAAAC,KAAAvE,EACA,KAAAqE,EACA,MAAAhP,EAEA,IAAAmP,GAAA,GACAnb,MAAA,GAAAob,MAAA,GAAAC,MAAA,EACA,KAAArb,EAAAgb,EAAAnN,MAAAuN,EAAA,EAA8Cpb,EAAA2W,EAAAhV,OAAiB3B,IAAA,CAC/D,OAAA2W,EAAA2E,WAAAtb,IACA,QACAqb,EAAA,OACA,MACA,SACAA,EAAA,OACA,MACA,SACAA,EAAA,OACA,MACA,SACAA,EAAA,OACA,MACA,SACAA,EAAA,OACA,MACA,SACA,SAEAD,IAAApb,IACAmb,GAAAxE,EAAA4E,UAAAH,EAAApb,IAEAob,EAAApb,EAAA,EACAmb,GAAAE,EAEA,MAAAD,KAAApb,EACAmb,EAAAxE,EAAA4E,UAAAH,EAAApb,GAEAmb,EAnEA,GAAAK,GAAA3b,EAAA,IACA4b,EAAAhb,OAAAib,OAAAF,EAAA1G,EAAA9S,QACAiZ,EAAA,SACAQ,GAAAhB,QAAA,SAAAzO,GACA,MAAA+O,GAAArF,EAAA1J,KAEAyP,EAAAf,MAAA,SAAArE,EAAAnG,GACA,GAAA1O,MAAAC,QAAA4U,GACA,OAAArW,GAAA,EAAAyS,EAAA4D,EAAA1U,OAA0C3B,EAAAyS,EAASzS,IACnDkQ,EAAAmG,EAAArW,UAGA,QAAA2b,KAAAtF,GACAnG,EAAAmG,EAAAsF,OA0DApc,EAAAD,QAAAmc,I3BmiD6Bvb,KAAKZ,EAASO,EAAoB,KAIzD,SAAUN,EAAQD,EAASO,GAEjC,cAC4B,SAASiV,G4BjnDrCvV,EAAAD,SAAA,CACA,KACAC,EAAAD,QAAA,qBAAAmB,OAAAS,UAAAwU,SAAAxV,KAAA4U,EAAAC,SACC,MAAAhP,O5BonD4B7F,KAAKZ,EAASO,EAAoB,KAIzD,SAAUN,EAAQD,EAASO,GAEjC,Y6BzmDA,SAAA6I,GAAAC,EAAAC,GACA,KAAAD,YAAAC,IACA,SAAAC,WAAA,qCAtBApI,OAAAC,eAAApB,EAAA,cAA8CuC,OAAA,GAC9C,IAAAiH,GAAA,WACA,QAAAC,GAAAC,EAAAC,GACA,OAAAjJ,GAAA,EAAuBA,EAAAiJ,EAAAtH,OAAkB3B,IAAA,CACzC,GAAAkJ,GAAAD,EAAAjJ,EACAkJ,GAAAtI,WAAAsI,EAAAtI,aAAA,EACAsI,EAAAvI,cAAA,EACA,SAAAuI,KACAA,EAAAC,UAAA,GACA1I,OAAAC,eAAAsI,EAAAE,EAAA9E,IAAA8E,IAGA,gBAAAN,EAAAQ,EAAAC,GAKA,MAJAD,IACAL,EAAAH,EAAA1H,UAAAkI,GACAC,GACAN,EAAAH,EAAAS,GACAT,MAQAgT,EAAA,WACA,QAAAA,GAAAhQ,GACAlD,EAAA/I,KAAAic,GACAjc,KAAAkc,YACAlc,KAAAkc,SAAAjO,OAAAhC,EAAAgC,OACAjO,KAAAkc,SAAA5B,OAAArO,EAAAqO,OACAta,KAAAkc,SAAA3B,OAAAtO,EAAAsO,OAkBA,MAhBApR,GAAA8S,IAEAxX,IAAA,MACAvC,MAAA,SAAAia,EAAAzO,EAAA0O,GACA1O,EAAA5K,KAAAyM,IAAA7B,EAAA,GACAA,EAAA5K,KAAAE,IAAA0K,EAAA,GACA1N,KAAAkc,SAAAC,GAAA5N,MAAA6N,GAAA,IAAA1O,EAAA,OAIAjJ,IAAA,MACAvC,MAAA,SAAAia,EAAAC,GACA,MAAAhM,YAAApQ,KAAAkc,SAAAC,GAAA5N,MAAA6N,IAAA,QAIAH,IAEAtc,GAAAgG,QAAAsW,G7BmoDM,SAAUrc,EAAQD,EAASO,GAEjC,Y8B/pDA,SAAA6I,GAAAC,EAAAC,GACA,KAAAD,YAAAC,IACA,SAAAC,WAAA,qCA3BApI,OAAAC,eAAApB,EAAA,cAA8CuC,OAAA,GAC9C,IAAAiH,GAAA,WACA,QAAAC,GAAAC,EAAAC,GACA,OAAAjJ,GAAA,EAAuBA,EAAAiJ,EAAAtH,OAAkB3B,IAAA,CACzC,GAAAkJ,GAAAD,EAAAjJ,EACAkJ,GAAAtI,WAAAsI,EAAAtI,aAAA,EACAsI,EAAAvI,cAAA,EACA,SAAAuI,KACAA,EAAAC,UAAA,GACA1I,OAAAC,eAAAsI,EAAAE,EAAA9E,IAAA8E,IAGA,gBAAAN,EAAAQ,EAAAC,GAKA,MAJAD,IACAL,EAAAH,EAAA1H,UAAAkI,GACAC,GACAN,EAAAH,EAAAS,GACAT,MAGAY,EAAA3J,EAAA,GACA4J,EACA,SAAA9D,GACA,MAAAA,MAAA5E,WAAA4E,GAA0CL,QAAAK,IAF1C6D,GASAwS,EAAA,WACA,QAAAA,GAAA/P,GACAvD,EAAA/I,KAAAqc,GACArc,KAAAsc,aAA4BrO,OAAA,kBAC5BjO,KAAA2F,SAAwBsI,OAAA3B,EAAAlH,QAAA6I,QAAA,IACxBjO,KAAA0W,QACA1W,KAAAka,OA0BA,MAxBA/Q,GAAAkT,IAEA5X,IAAA,OACAvC,MAAA,WACA,OAAAwD,KAAA1F,MAAAsc,YAAA,CACA,GAAA3b,GAAAX,KAAAsc,YAAA5W,EACA1F,MAAA0W,KAAAhR,GAAA0K,WAAAtG,EAAAnE,QAAApB,QAAArD,IAAAP,IAAAX,KAAA2F,QAAAD,QAKAjB,IAAA,MACAvC,MAAA,SAAAuC,GACA,MAAAzE,MAAA0W,KAAAjS,MAIAA,IAAA,MACAvC,MAAA,SAAAuC,EAAAvC,GACAlC,KAAA0W,KAAAjS,GAAAvC,EACA4H,EAAAnE,QAAApB,QAAAC,IAAAxE,KAAAsc,YAAA7X,GAAAvC,OAIAma,IAEA1c,GAAAgG,QAAA0W,G9B8rDM,SAAUzc,EAAQD,EAASO,GAEjC,Y+BvuDA,SAAA6I,GAAAC,EAAAC,GACA,KAAAD,YAAAC,IACA,SAAAC,WAAA,qCA3BApI,OAAAC,eAAApB,EAAA,cAA8CuC,OAAA,GAC9C,IAAAiH,GAAA,WACA,QAAAC,GAAAC,EAAAC,GACA,OAAAjJ,GAAA,EAAuBA,EAAAiJ,EAAAtH,OAAkB3B,IAAA,CACzC,GAAAkJ,GAAAD,EAAAjJ,EACAkJ,GAAAtI,WAAAsI,EAAAtI,aAAA,EACAsI,EAAAvI,cAAA,EACA,SAAAuI,KACAA,EAAAC,UAAA,GACA1I,OAAAC,eAAAsI,EAAAE,EAAA9E,IAAA8E,IAGA,gBAAAN,EAAAQ,EAAAC,GAKA,MAJAD,IACAL,EAAAH,EAAA1H,UAAAkI,GACAC,GACAN,EAAAH,EAAAS,GACAT,MAGAwB,EAAAvK,EAAA,IACAwK,EACA,SAAA1E,GACA,MAAAA,MAAA5E,WAAA4E,GAA0CL,QAAAK,IAF1CyE,GASA8R,EAAA,WACA,QAAAA,GAAAnX,GACA2D,EAAA/I,KAAAuc,GACAvc,KAAAmL,UAAA/F,EAAA+F,UACAnL,KAAAoM,MAAAhH,EAAAgH,MACApM,KAAAsM,OAAAlH,EAAAkH,OACAtM,KAAAqM,QAAAjH,EAAAiH,QACArM,KAAAwc,UACAxc,KAAAkO,MAAA,EACAlO,KAAAwD,WAwGA,MAtGA2F,GAAAoT,IAEA9X,IAAA,SACAvC,MAAA,WACA,GAAAsN,GAAAtK,UAAAlD,OAAA,OAAAmD,KAAAD,UAAA,GAAAA,UAAA,GAAAlF,KAAAsM,OAAAjH,MAAAmK,WACA,IAAAxP,KAAAkO,MAAAlO,KAAAwD,QAAAxB,OAAA,GAAAwN,EAAAxP,KAAAwD,QAAAxD,KAAAkO,OAAA,KAAAlO,KAAAwD,QAAAxD,KAAAkO,MAAA,IAAAsB,GAAAxP,KAAAwD,QAAAxD,KAAAkO,MAAA,MACA,OAAA7N,GAAA,EAAmCA,EAAAL,KAAAwD,QAAAxB,OAAyB3B,IAC5DmP,GAAAxP,KAAAwD,QAAAnD,GAAA,MAAAL,KAAAwD,QAAAnD,EAAA,IAAAmP,EAAAxP,KAAAwD,QAAAnD,EAAA,SACAL,KAAAkO,MAAA7N,EACAL,KAAAmL,UAAAoD,MAAAkO,UAAA,kBAAAzc,KAAAkO,MAAA,MACAlO,KAAAmL,UAAAoD,MAAAmO,gBAAA,kBAAA1c,KAAAkO,MAAA,MACAlO,KAAAmL,UAAAY,uBAAA,0BAAAP,UAAAoD,OAAA,uBACA5O,KAAAmL,UAAAwR,qBAAA,KAAAtc,GAAAmL,UAAAC,IAAA,2BAOAhH,IAAA,SACAvC,MAAA,SAAAgM,GACA,GAAAjB,GAAAjN,IACA,KAAAA,KAAAwc,OAAAtO,GACA,GAAAlO,KAAAoM,MASqB,CACrBpM,KAAAwc,OAAAtO,KACA,QACA,WAEA,IAAA0O,GAAA,GAAAC,eACAD,GAAA1F,mBAAA,WACA,IAAA0F,EAAAE,aACAF,EAAAG,QAAA,KAAAH,EAAAG,OAAA,WAAAH,EAAAG,OACA9P,EAAAuP,OAAAtO,GAAAjB,EAAA+P,MAAAJ,EAAAK,eAEApU,QAAAC,IAAA,6BAAA8T,EAAAG,QACA9P,EAAAuP,OAAAtO,KACA,QACA,mBAGAjB,EAAA9B,UAAAa,WAAA,EAAAtB,EAAA/E,UAAgFuX,OAAAjQ,EAAAuP,OAAAtO,KAChFjB,EAAAkQ,OAAA,GACAlQ,EAAAzJ,QAAAyJ,EAAAuP,OAAAtO,IAGA,IAAAkP,GAAApd,KAAAqM,QAAA6B,EACA0O,GAAAS,KAAA,MAAAD,GAAA,GACAR,EAAAU,KAAA,UAhCAtd,MAAAqM,QAAA6B,GACAlO,KAAAwc,OAAAtO,GAAAlO,KAAAgd,MAAAhd,KAAAqM,QAAA6B,IAEAlO,KAAAwc,OAAAtO,KACA,QACA,iBA8BAlO,MAAAmL,UAAAa,WAAA,EAAAtB,EAAA/E,UAA+DuX,OAAAld,KAAAwc,OAAAtO,KAC/DlO,KAAAmd,OAAA,GACAnd,KAAAwD,QAAAxD,KAAAwc,OAAAtO,MAIAzJ,IAAA,QACAvC,MAAA,SAAAqb,GACA,GAAAA,EAAA,CACAA,IAAAC,QAAA,yBAAAC,EAAAC,GACA,MAAAA,GAAA,OAKA,QAHAC,GAAAJ,EAAAK,MAAA,MACAlS,KACAmS,EAAAF,EAAA3b,OACA3B,EAAA,EAAmCA,EAAAwd,EAAcxd,IAAA,CACjD,GAAAyd,GAAAH,EAAAtd,GAAAod,MAAA,qCACAM,EAAAJ,EAAAtd,GAAAmd,QAAA,sCAAsF,IAAAA,QAAA,mCAAgD,IAAAA,QAAA,gBACtI,IAAAM,EAEA,OADAE,GAAAF,EAAA9b,OACAic,EAAA,EAA2CA,EAAAD,EAAaC,IAAA,CACxD,GAAAC,GAAA,mCAA2E3C,KAAAuC,EAAAG,IAC3EE,EAAA,GAAAD,EAAA,GACAE,EAAAjN,SAAA+M,EAAA,IACAG,EAAAH,EAAA,GAAA/M,SAAA+M,EAAA,UAAAA,EAAA,OAAAlc,OAAA,WACAsc,EAAAH,EAAAC,EAAAC,CACA3S,GAAAsB,MACAsR,EACAP,KAQA,MAHArS,GAAA6S,KAAA,SAAAC,EAAAC,GACA,MAAAD,GAAA,GAAAC,EAAA,KAEA/S,EAEA,aAKA6Q,IAEA5c,GAAAgG,QAAA4W,G/BswDM,SAAU3c,EAAQD,EAASO,GAEjC,GAAIya,GAAWza,EAAoB,EACnCN,GAAOD,QAAU,SAAUib,GACvB,YACAA,GAAQA,KACR,IAAIC,GgC95DP,GAAAE,EAAAJ,EAAAI,MAAAmC,EAAAtC,EAAAsC,OAAApC,GAAAF,EAAAI,OAAAJ,EAAAK,OAAAN,EAAAG,QhCw6DG,OgCx6DHC,GAAAmC,EAAe,SAAflC,EAAAC,GAAAJ,GACM,WAAqB,IAArBI,IADNJ,GAAA,gCAAAA,GACiE,IADjEA,GAC8EC,EAAAE,EAD9E,IAAAH,GAAA,WhCw6DUA,IAKL,SAAUjb,EAAQD,EAASO,GAEjC,YiCt5DA,SAAAmG,GAAAL,GACA,MAAAA,MAAA5E,WAAA4E,GAA0CL,QAAAK,GAE1C,QAAA+C,GAAAC,EAAAC,GACA,KAAAD,YAAAC,IACA,SAAAC,WAAA,qCA7BApI,OAAAC,eAAApB,EAAA,cAA8CuC,OAAA,GAC9C,IAAAiH,GAAA,WACA,QAAAC,GAAAC,EAAAC,GACA,OAAAjJ,GAAA,EAAuBA,EAAAiJ,EAAAtH,OAAkB3B,IAAA,CACzC,GAAAkJ,GAAAD,EAAAjJ,EACAkJ,GAAAtI,WAAAsI,EAAAtI,aAAA,EACAsI,EAAAvI,cAAA,EACA,SAAAuI,KACAA,EAAAC,UAAA,GACA1I,OAAAC,eAAAsI,EAAAE,EAAA9E,IAAA8E,IAGA,gBAAAN,EAAAQ,EAAAC,GAKA,MAJAD,IACAL,EAAAH,EAAA1H,UAAAkI,GACAC,GACAN,EAAAH,EAAAS,GACAT,MAGAY,EAAA3J,EAAA,GACA4J,EAAAzD,EAAAwD,GACAE,EAAA7J,EAAA,GACA8J,EAAA3D,EAAA0D,GASA2U,EAAA,WACA,QAAAA,GAAApS,GACAvD,EAAA/I,KAAA0e,GACA1e,KAAAsM,SACAtM,KAAA2e,iBACA3e,KAAA4e,WACA5e,KAAA6e,cACA7e,KAAAsM,OAAAmE,cACAzQ,KAAA8e,kBAEA9e,KAAA+e,iBACA/e,KAAAgf,iBACAlV,EAAAnE,QAAAxD,UACAnC,KAAAif,mBA8JA,MA3JA9V,GAAAuV,IAEAja,IAAA,iBACAvC,MAAA,WACA,GAAA+K,GAAAjN,IACAA,MAAAsM,OAAAL,SAAAqC,IAAAjB,iBAAA,mBACAJ,EAAAX,OAAA4S,cAKAza,IAAA,WACAvC,MAAA,WACA,GAAAiM,GAAAnO,IACAA,MAAAsM,OAAAL,SAAA6C,KAAAzB,iBAAA,iBAAAjH,GACA,GAAAiD,OAAA,EAEAA,GADA,OAAAjD,EAAAiD,OAAA8V,QAAAC,cACAhZ,EAAAiD,OAEAjD,EAAAiD,OAAAgW,aAEA,IAAAC,GAAAnO,SAAA9H,EAAA0C,uBAAA,yBAAAC,WAAA,CACAsT,KAAAnR,EAAA7B,OAAAlB,WACA+C,EAAA7B,OAAAQ,YAAAwS,GACAnR,EAAA7B,OAAAvE,QAEAoG,EAAA7B,OAAA4S,cAMAza,IAAA,cACAvC,MAAA,WACA,GAAAyN,GAAA3P,KACAuf,EAAA,SAAAnZ,GACA,GAAAsH,KAAAtH,EAAAoZ,SAAApZ,EAAAqZ,eAAA,GAAAD,SAAA1V,EAAAnE,QAAAvC,mBAAAuM,EAAArD,OAAAL,SAAAoO,UAAA1K,EAAArD,OAAAL,SAAAoO,QAAAqF,WACAhS,GAAA5K,KAAAyM,IAAA7B,EAAA,GACAA,EAAA5K,KAAAE,IAAA0K,EAAA,GACAiC,EAAArD,OAAAG,IAAAjI,IAAA,SAAAkJ,EAAA,SACAiC,EAAArD,OAAAZ,KAAAiE,EAAArD,OAAAZ,IAAAyR,OAAAzP,EAAAiC,EAAArD,OAAAjH,MAAAmI,UACAmC,EAAArD,OAAAL,SAAAyD,MAAA1D,UAAAlC,EAAAnE,QAAAlD,aAAAiL,EAAAiC,EAAArD,OAAAjH,MAAAmI,WAEAmS,EAAA,QAAAA,GAAAvZ,GACAzC,SAAAic,oBAAA9V,EAAAnE,QAAAd,QAAAG,QAAA2a,GACAhc,SAAAic,oBAAA9V,EAAAnE,QAAAd,QAAAE,SAAAwa,EACA,IAAA7R,KAAAtH,EAAAoZ,SAAApZ,EAAAqZ,eAAA,GAAAD,SAAA1V,EAAAnE,QAAAvC,mBAAAuM,EAAArD,OAAAL,SAAAoO,UAAA1K,EAAArD,OAAAL,SAAAoO,QAAAqF,WACAhS,GAAA5K,KAAAyM,IAAA7B,EAAA,GACAA,EAAA5K,KAAAE,IAAA0K,EAAA,GACAiC,EAAArD,OAAAG,IAAAjI,IAAA,SAAAkJ,EAAA,SACAiC,EAAArD,OAAA2C,KAAAU,EAAArD,OAAAG,IAAAvL,IAAA,kBAAAyO,EAAArD,OAAAjH,MAAAmI,UACAmC,EAAArD,OAAAK,MAAAmD,OAAA,YAEA9P,MAAAsM,OAAAL,SAAAoO,QAAAhN,iBAAAvD,EAAAnE,QAAAd,QAAAC,UAAA,WACA6K,EAAArD,OAAAK,MAAAsD,QAAA,YACAtM,SAAA0J,iBAAAvD,EAAAnE,QAAAd,QAAAE,SAAAwa,GACA5b,SAAA0J,iBAAAvD,EAAAnE,QAAAd,QAAAG,QAAA2a,QAKAlb,IAAA,mBACAvC,MAAA,WACA,GAAA8N,GAAAhQ,IACAA,MAAAsM,OAAAL,SAAAiE,aAAA7C,iBAAA,mBACA2C,EAAA1D,OAAAjH,MAAAgL,OACAL,EAAA1D,OAAAjH,MAAAgL,OAAA,EACAL,EAAA1D,OAAAgE,mBACAN,EAAA1D,OAAAG,IAAAjI,IAAA,SAAAwL,EAAA1D,OAAA2B,SAAA,YAEA+B,EAAA1D,OAAAjH,MAAAgL,OAAA,EACAL,EAAA1D,OAAAgE,mBACAN,EAAA1D,OAAAG,IAAAjI,IAAA,uBAGA,IAAA+a,GAAA,SAAAnZ,GACA,GAAAsH,GAAA,IAAAtH,EAAAyZ,SAAAzZ,EAAAqZ,eAAA,GAAAI,SAAA/V,EAAAnE,QAAAzB,kBAAA8L,EAAA1D,OAAAL,SAAAwO,YAAAzK,EAAA1D,OAAAL,SAAAwO,UAAAqF,YACApS,GAAA5K,KAAAyM,IAAA7B,EAAA,GACAA,EAAA5K,KAAAE,IAAA0K,EAAA,GACAsC,EAAA1D,OAAA2B,OAAAP,IAEAiS,EAAA,QAAAA,GAAAvZ,GACA4J,EAAA1D,OAAAL,SAAAyO,cAAAlP,UAAAoD,OAAA,kCACAjL,SAAAic,oBAAA9V,EAAAnE,QAAAd,QAAAG,QAAA2a,GACAhc,SAAAic,oBAAA9V,EAAAnE,QAAAd,QAAAE,SAAAwa,EACA,IAAA7R,GAAA,IAAAtH,EAAAyZ,SAAAzZ,EAAAqZ,eAAA,GAAAI,SAAA/V,EAAAnE,QAAAzB,kBAAA8L,EAAA1D,OAAAL,SAAAwO,YAAAzK,EAAA1D,OAAAL,SAAAwO,UAAAqF,YACApS,GAAA5K,KAAAyM,IAAA7B,EAAA,GACAA,EAAA5K,KAAAE,IAAA0K,EAAA,GACAsC,EAAA1D,OAAA2B,OAAAP,GAEA1N,MAAAsM,OAAAL,SAAAyO,cAAArN,iBAAAvD,EAAAnE,QAAAd,QAAAC,UAAA,WACAkL,EAAA1D,OAAAL,SAAAyO,cAAAlP,UAAAC,IAAA,kCACA9H,SAAA0J,iBAAAvD,EAAAnE,QAAAd,QAAAE,SAAAwa,GACA5b,SAAA0J,iBAAAvD,EAAAnE,QAAAd,QAAAG,QAAA2a,QAKAlb,IAAA,kBACAvC,MAAA,WACA,GAAA6d,GAAA/f,IACAA,MAAAsM,OAAAL,SAAAY,MAAAQ,iBAAA,mBACA,SAAA0S,EAAAzT,OAAAlH,QAAAyH,OACAkT,EAAAzT,OAAAlH,QAAAyH,MAAA,SACAkT,EAAAzT,OAAAL,SAAAY,MAAAb,UAAAhC,EAAArE,QAAAyC,aACqB,WAAA2X,EAAAzT,OAAAlH,QAAAyH,QACrBkT,EAAAzT,OAAAlH,QAAAyH,MAAA,OACAkT,EAAAzT,OAAAL,SAAAY,MAAAb,UAAAhC,EAAArE,QAAA0C,gBAMA5D,IAAA,iBACAvC,MAAA,WACA,GAAA8d,GAAAhgB,IACAA,MAAAsM,OAAAL,SAAA6B,KAAAT,iBAAA,mBACA2S,EAAA1T,OAAAmE,aACA,QAAAuP,EAAA1T,OAAAlH,QAAA0I,MACAkS,EAAA1T,OAAAlH,QAAA0I,KAAA,OACAkS,EAAA1T,OAAAL,SAAA6B,KAAA9B,UAAAhC,EAAArE,QAAA8C,UACyB,SAAAuX,EAAA1T,OAAAlH,QAAA0I,MACzBkS,EAAA1T,OAAAlH,QAAA0I,KAAA,MACAkS,EAAA1T,OAAAL,SAAA6B,KAAA9B,UAAAhC,EAAArE,QAAA4C,SACyB,QAAAyX,EAAA1T,OAAAlH,QAAA0I,OACzBkS,EAAA1T,OAAAlH,QAAA0I,KAAA,MACAkS,EAAA1T,OAAAL,SAAA6B,KAAA9B,UAAAhC,EAAArE,QAAA6C,SAGA,QAAAwX,EAAA1T,OAAAlH,QAAA0I,MAAA,QAAAkS,EAAA1T,OAAAlH,QAAA0I,MACAkS,EAAA1T,OAAAlH,QAAA0I,KAAA,OACAkS,EAAA1T,OAAAL,SAAA6B,KAAA9B,UAAAhC,EAAArE,QAAA8C,UACyB,SAAAuX,EAAA1T,OAAAlH,QAAA0I,OACzBkS,EAAA1T,OAAAlH,QAAA0I,KAAA,MACAkS,EAAA1T,OAAAL,SAAA6B,KAAA9B,UAAAhC,EAAArE,QAAA4C,cAOA9D,IAAA,iBACAvC,MAAA,WACA,GAAA+d,GAAAjgB,IACAA,MAAAsM,OAAAL,SAAA6C,KAAAP,MAAAyC,OAAA,GAAAhR,KAAAsM,OAAAlH,QAAAC,MAAArD,OAAA,OACAhC,KAAAsM,OAAAL,SAAA3D,KAAA+E,iBAAA,mBACA4S,EAAA3T,OAAAL,SAAA6C,KAAAtD,UAAAgF,SAAA,qBAGAyP,EAAA3T,OAAAL,SAAA6C,KAAAtD,UAAAoD,OAAA,qBAFAqR,EAAA3T,OAAAL,SAAA6C,KAAAtD,UAAAC,IAAA,2BAQAiT,IAEA/e,GAAAgG,QAAA+Y,GjCo7DM,SAAU9e,EAAQD,EAASO,GAEjC,YkC1mEA,SAAA6I,GAAAC,EAAAC,GACA,KAAAD,YAAAC,IACA,SAAAC,WAAA,qCA3BApI,OAAAC,eAAApB,EAAA,cAA8CuC,OAAA,GAC9C,IAAAiH,GAAA,WACA,QAAAC,GAAAC,EAAAC,GACA,OAAAjJ,GAAA,EAAuBA,EAAAiJ,EAAAtH,OAAkB3B,IAAA,CACzC,GAAAkJ,GAAAD,EAAAjJ,EACAkJ,GAAAtI,WAAAsI,EAAAtI,aAAA,EACAsI,EAAAvI,cAAA,EACA,SAAAuI,KACAA,EAAAC,UAAA,GACA1I,OAAAC,eAAAsI,EAAAE,EAAA9E,IAAA8E,IAGA,gBAAAN,EAAAQ,EAAAC,GAKA,MAJAD,IACAL,EAAAH,EAAA1H,UAAAkI,GACAC,GACAN,EAAAH,EAAAS,GACAT,MAGAY,EAAA3J,EAAA,GACA4J,EACA,SAAA9D,GACA,MAAAA,MAAA5E,WAAA4E,GAA0CL,QAAAK,IAF1C6D,GASAqW,EAAA,WACA,QAAAA,GAAA5T,GACAvD,EAAA/I,KAAAkgB,GACAlgB,KAAAsM,SACAjK,OAAA8d,sBAAA,WACA,MAAA9d,QAAA8d,uBAAA9d,OAAA+d,6BAAA/d,OAAAge,0BAAAhe,OAAAie,wBAAAje,OAAAke,yBAAA,SAAAhQ,GACAlO,OAAAwN,WAAAU,EAAA,YAGAvQ,KAAAwgB,OACA,UACA,YAEAxgB,KAAAka,OA+EA,MA7EA/Q,GAAA+W,IAEAzb,IAAA,OACAvC,MAAA,WACA,GAAA+K,GAAAjN,IACAA,MAAAwgB,MAAAtd,IAAA,SAAAwC,GAEA,MADAuH,GAAA,OAAAvH,EAAA,aACAA,OAKAjB,IAAA,sBACAvC,MAAA,WACA,GAAAiM,GAAAnO,IACAA,MAAAygB,gBAAArM,YAAA,WACA,GAAAjG,EAAAuS,sBAAA,CACAvS,EAAA7B,OAAAG,IAAAjI,IAAA,SAAA2J,EAAA7B,OAAAjH,MAAAmK,YAAArB,EAAA7B,OAAAjH,MAAAmI,SAAA,SACAW,EAAA7B,OAAAZ,KAAAyC,EAAA7B,OAAAZ,IAAAyR,QACA,IAAA3N,GAAA1F,EAAAnE,QAAAlD,aAAA0L,EAAA7B,OAAAjH,MAAAmK,YACArB,GAAA7B,OAAAL,SAAAyD,MAAA1D,YAAAwD,IACArB,EAAA7B,OAAAL,SAAAyD,MAAA1D,UAAAwD,KAGiB,QAIjB/K,IAAA,qBACAvC,MAAA,WACA,GAAAyN,GAAA3P,KACA2gB,EAAA,EACAC,EAAA,EACAC,GAAA,CACA7gB,MAAA8gB,eAAA1M,YAAA,WACAzE,EAAAoR,uBACAH,EAAAjR,EAAArD,OAAAjH,MAAAmK,YACAqR,GAAAD,IAAAD,GAAAhR,EAAArD,OAAAjH,MAAAgG,SACAsE,EAAArD,OAAAnB,UAAAK,UAAAC,IAAA,mBACAoV,GAAA,GAEAA,GAAAD,EAAAD,IAAAhR,EAAArD,OAAAjH,MAAAgG,SACAsE,EAAArD,OAAAnB,UAAAK,UAAAoD,OAAA,mBACAiS,GAAA,GAEAF,EAAAC,IAEiB,QAIjBnc,IAAA,SACAvC,MAAA,SAAAia,GACAnc,KAAA,SAAAmc,EAAA,cACA,QAAAA,GACAnc,KAAAghB,oBAKAvc,IAAA,UACAvC,MAAA,SAAAia,GACAnc,KAAA,SAAAmc,EAAA,iBAIA1X,IAAA,UACAvC,MAAA,WACA,GAAA8N,GAAAhQ,IACAA,MAAAwgB,MAAAtd,IAAA,SAAAwC,GAGA,MAFAsK,GAAA,SAAAtK,EAAA,cACAsK,EAAAtK,EAAA,YAAA2O,cAAArE,EAAAtK,EAAA,YACAA,QAKAwa,IAEAvgB,GAAAgG,QAAAua,GlCyoEM,SAAUtgB,EAAQD,EAASO,GAEjC,YmCnvEA,SAAA6I,GAAAC,EAAAC,GACA,KAAAD,YAAAC,IACA,SAAAC,WAAA,qCAtBApI,OAAAC,eAAApB,EAAA,cAA8CuC,OAAA,GAC9C,IAAAiH,GAAA,WACA,QAAAC,GAAAC,EAAAC,GACA,OAAAjJ,GAAA,EAAuBA,EAAAiJ,EAAAtH,OAAkB3B,IAAA,CACzC,GAAAkJ,GAAAD,EAAAjJ,EACAkJ,GAAAtI,WAAAsI,EAAAtI,aAAA,EACAsI,EAAAvI,cAAA,EACA,SAAAuI,KACAA,EAAAC,UAAA,GACA1I,OAAAC,eAAAsI,EAAAE,EAAA9E,IAAA8E,IAGA,gBAAAN,EAAAQ,EAAAC,GAKA,MAJAD,IACAL,EAAAH,EAAA1H,UAAAkI,GACAC,GACAN,EAAAH,EAAAS,GACAT,MAQAgY,EAAA,WACA,QAAAA,KACAlY,EAAA/I,KAAAihB,GACAjhB,KAAAuM,UACAvM,KAAAoN,aACA,QACA,UACA,iBACA,iBACA,UACA,QACA,QACA,aACA,iBACA,YACA,oBACA,QACA,OACA,UACA,WACA,aACA,SACA,UACA,UACA,UACA,aACA,eACA,WAEApN,KAAAkhB,cACA,UACA,cACA,WACA,eAsCA,MAnCA/X,GAAA8X,IAEAxc,IAAA,KACAvC,MAAA,SAAAvB,EAAA4P,GACAvQ,KAAAmc,KAAAxb,IAAA,kBAAA4P,KACAvQ,KAAAuM,OAAA5L,KACAX,KAAAuM,OAAA5L,OAEAX,KAAAuM,OAAA5L,GAAAqM,KAAAuD,OAKA9L,IAAA,UACAvC,MAAA,SAAAvB,EAAAuL,GACA,GAAAlM,KAAAuM,OAAA5L,IAAAX,KAAAuM,OAAA5L,GAAAqB,OACA,OAAA3B,GAAA,EAAmCA,EAAAL,KAAAuM,OAAA5L,GAAAqB,OAA8B3B,IACjEL,KAAAuM,OAAA5L,GAAAN,GAAA6L,MAMAzH,IAAA,OACAvC,MAAA,SAAAvB,GACA,WAAAX,KAAAkhB,aAAAnT,QAAApN,GACA,UACiB,IAAAX,KAAAoN,YAAAW,QAAApN,GACjB,SAEAkI,QAAAwG,MAAA,uBAAA1O,GACA,UAIAsgB,IAEAthB,GAAAgG,QAAAsb,KnC4wEqB","file":"APlayer.min.js","sourcesContent":["(function webpackUniversalModuleDefinition(root, factory) {\n\tif(typeof exports === 'object' && typeof module === 'object')\n\t\tmodule.exports = factory();\n\telse if(typeof define === 'function' && define.amd)\n\t\tdefine(\"APlayer\", [], factory);\n\telse if(typeof exports === 'object')\n\t\texports[\"APlayer\"] = factory();\n\telse\n\t\troot[\"APlayer\"] = factory();\n})(typeof self !== 'undefined' ? self : this, function() {\nreturn \n\n\n// WEBPACK FOOTER //\n// webpack/universalModuleDefinition","(function webpackUniversalModuleDefinition(root, factory) {\n\tif(typeof exports === 'object' && typeof module === 'object')\n\t\tmodule.exports = factory();\n\telse if(typeof define === 'function' && define.amd)\n\t\tdefine(\"APlayer\", [], factory);\n\telse if(typeof exports === 'object')\n\t\texports[\"APlayer\"] = factory();\n\telse\n\t\troot[\"APlayer\"] = factory();\n})(typeof self !== 'undefined' ? self : this, function() {\nreturn /******/ (function(modules) { // webpackBootstrap\n/******/ \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, {\n/******/ \t\t\t\tconfigurable: false,\n/******/ \t\t\t\tenumerable: true,\n/******/ \t\t\t\tget: getter\n/******/ \t\t\t});\n/******/ \t\t}\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/******/ \t// Load entry module and return exports\n/******/ \treturn __webpack_require__(__webpack_require__.s = 4);\n/******/ })\n/************************************************************************/\n/******/ ([\n/* 0 */\n/***/ (function(module, exports, __webpack_require__) {\n\n\"use strict\";\n\nObject.defineProperty(exports, '__esModule', { value: true });\nfunction _toConsumableArray(arr) {\n if (Array.isArray(arr)) {\n for (var i = 0, arr2 = Array(arr.length); i < arr.length; i++) {\n arr2[i] = arr[i];\n }\n return arr2;\n } else {\n return Array.from(arr);\n }\n}\nvar isMobile = /mobile/i.test(window.navigator.userAgent);\nvar utils = {\n secondToTime: function secondToTime(second) {\n var add0 = function add0(num) {\n return num < 10 ? '0' + num : '' + num;\n };\n var hour = Math.floor(second / 3600);\n var min = Math.floor((second - hour * 3600) / 60);\n var sec = Math.floor(second - hour * 3600 - min * 60);\n return (hour > 0 ? [\n hour,\n min,\n sec\n ] : [\n min,\n sec\n ]).map(add0).join(':');\n },\n getElementViewLeft: function getElementViewLeft(element) {\n var actualLeft = element.offsetLeft;\n var current = element.offsetParent;\n var elementScrollLeft = document.body.scrollLeft + document.documentElement.scrollLeft;\n if (!document.fullscreenElement && !document.mozFullScreenElement && !document.webkitFullscreenElement) {\n while (current !== null) {\n actualLeft += current.offsetLeft;\n current = current.offsetParent;\n }\n } else {\n while (current !== null && current !== element) {\n actualLeft += current.offsetLeft;\n current = current.offsetParent;\n }\n }\n return actualLeft - elementScrollLeft;\n },\n getElementViewTop: function getElementViewTop(element) {\n var actualTop = element.offsetTop;\n var current = element.offsetParent;\n var elementScrollTop = 0;\n while (current !== null) {\n actualTop += current.offsetTop;\n current = current.offsetParent;\n }\n elementScrollTop = document.body.scrollTop + document.documentElement.scrollTop;\n return actualTop - elementScrollTop;\n },\n isMobile: isMobile,\n storage: {\n set: function set(key, value) {\n localStorage.setItem(key, value);\n },\n get: function get(key) {\n return localStorage.getItem(key);\n }\n },\n nameMap: {\n dragStart: isMobile ? 'touchstart' : 'mousedown',\n dragMove: isMobile ? 'touchmove' : 'mousemove',\n dragEnd: isMobile ? 'touchend' : 'mouseup'\n },\n randomOrder: function randomOrder() {\n var length = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : undefined.options.audio.length;\n function shuffle(arr) {\n for (var i = arr.length - 1; i >= 0; i--) {\n var randomIndex = Math.floor(Math.random() * (i + 1));\n var itemAtIndex = arr[randomIndex];\n arr[randomIndex] = arr[i];\n arr[i] = itemAtIndex;\n }\n return arr;\n }\n return shuffle([].concat(_toConsumableArray(Array(length))).map(function (item, i) {\n return i;\n }));\n }\n};\nexports.default = utils;\n\n/***/ }),\n/* 1 */\n/***/ (function(module, exports, __webpack_require__) {\n\n\"use strict\";\n\nvar _typeof = typeof Symbol === 'function' && typeof Symbol.iterator === 'symbol' ? function (obj) {\n return typeof obj;\n} : function (obj) {\n return obj && typeof Symbol === 'function' && obj.constructor === Symbol && obj !== Symbol.prototype ? 'symbol' : typeof obj;\n};\nvar g;\ng = function () {\n return this;\n}();\ntry {\n g = g || Function('return this')() || (1, eval)('this');\n} catch (e) {\n if ((typeof window === 'undefined' ? 'undefined' : _typeof(window)) === 'object')\n g = window;\n}\nmodule.exports = g;\n\n/***/ }),\n/* 2 */\n/***/ (function(module, exports, __webpack_require__) {\n\n\"use strict\";\n\nObject.defineProperty(exports, '__esModule', { value: true });\nvar _play = __webpack_require__(11);\nvar _play2 = _interopRequireDefault(_play);\nvar _pause = __webpack_require__(12);\nvar _pause2 = _interopRequireDefault(_pause);\nvar _volumeUp = __webpack_require__(13);\nvar _volumeUp2 = _interopRequireDefault(_volumeUp);\nvar _volumeDown = __webpack_require__(14);\nvar _volumeDown2 = _interopRequireDefault(_volumeDown);\nvar _volumeOff = __webpack_require__(15);\nvar _volumeOff2 = _interopRequireDefault(_volumeOff);\nvar _orderRandom = __webpack_require__(16);\nvar _orderRandom2 = _interopRequireDefault(_orderRandom);\nvar _orderList = __webpack_require__(17);\nvar _orderList2 = _interopRequireDefault(_orderList);\nvar _menu = __webpack_require__(18);\nvar _menu2 = _interopRequireDefault(_menu);\nvar _loopAll = __webpack_require__(19);\nvar _loopAll2 = _interopRequireDefault(_loopAll);\nvar _loopOne = __webpack_require__(20);\nvar _loopOne2 = _interopRequireDefault(_loopOne);\nvar _loopNone = __webpack_require__(21);\nvar _loopNone2 = _interopRequireDefault(_loopNone);\nvar _loading = __webpack_require__(22);\nvar _loading2 = _interopRequireDefault(_loading);\nfunction _interopRequireDefault(obj) {\n return obj && obj.__esModule ? obj : { default: obj };\n}\nvar Icons = {\n play: _play2.default,\n pause: _pause2.default,\n volumeUp: _volumeUp2.default,\n volumeDown: _volumeDown2.default,\n volumeOff: _volumeOff2.default,\n orderRandom: _orderRandom2.default,\n orderList: _orderList2.default,\n menu: _menu2.default,\n loopAll: _loopAll2.default,\n loopOne: _loopOne2.default,\n loopNone: _loopNone2.default,\n loading: _loading2.default\n};\nexports.default = Icons;\n\n/***/ }),\n/* 3 */\n/***/ (function(module, exports, __webpack_require__) {\n\n\"use strict\";\n\nmodule.exports = __webpack_require__(26);\n\n/***/ }),\n/* 4 */\n/***/ (function(module, exports, __webpack_require__) {\n\n\"use strict\";\n\nObject.defineProperty(exports, '__esModule', { value: true });\n__webpack_require__(5);\nvar _player = __webpack_require__(6);\nvar _player2 = _interopRequireDefault(_player);\nfunction _interopRequireDefault(obj) {\n return obj && obj.__esModule ? obj : { default: obj };\n}\nconsole.log('\\n' + ' %c APlayer v' + \"1.7.0\" + ' ' + \"375c0f7\" + ' %c http://aplayer.js.org ' + '\\n' + '\\n', 'color: #fadfa3; background: #030307; padding:5px 0;', 'background: #fadfa3; padding:5px 0;');\nexports.default = _player2.default;\n\n/***/ }),\n/* 5 */\n/***/ (function(module, exports) {\n\n// removed by extract-text-webpack-plugin\n\n/***/ }),\n/* 6 */\n/***/ (function(module, exports, __webpack_require__) {\n\n\"use strict\";\n\nObject.defineProperty(exports, '__esModule', { value: true });\nvar _createClass = function () {\n function defineProperties(target, props) {\n for (var i = 0; i < props.length; i++) {\n var descriptor = props[i];\n descriptor.enumerable = descriptor.enumerable || false;\n descriptor.configurable = true;\n if ('value' in descriptor)\n descriptor.writable = true;\n Object.defineProperty(target, descriptor.key, descriptor);\n }\n }\n return function (Constructor, protoProps, staticProps) {\n if (protoProps)\n defineProperties(Constructor.prototype, protoProps);\n if (staticProps)\n defineProperties(Constructor, staticProps);\n return Constructor;\n };\n}();\nvar _promisePolyfill = __webpack_require__(7);\nvar _promisePolyfill2 = _interopRequireDefault(_promisePolyfill);\nvar _utils = __webpack_require__(0);\nvar _utils2 = _interopRequireDefault(_utils);\nvar _icons = __webpack_require__(2);\nvar _icons2 = _interopRequireDefault(_icons);\nvar _options = __webpack_require__(23);\nvar _options2 = _interopRequireDefault(_options);\nvar _template = __webpack_require__(24);\nvar _template2 = _interopRequireDefault(_template);\nvar _bar = __webpack_require__(28);\nvar _bar2 = _interopRequireDefault(_bar);\nvar _user = __webpack_require__(29);\nvar _user2 = _interopRequireDefault(_user);\nvar _lrc = __webpack_require__(30);\nvar _lrc2 = _interopRequireDefault(_lrc);\nvar _controller = __webpack_require__(32);\nvar _controller2 = _interopRequireDefault(_controller);\nvar _timer = __webpack_require__(33);\nvar _timer2 = _interopRequireDefault(_timer);\nvar _events = __webpack_require__(34);\nvar _events2 = _interopRequireDefault(_events);\nfunction _interopRequireDefault(obj) {\n return obj && obj.__esModule ? obj : { default: obj };\n}\nfunction _classCallCheck(instance, Constructor) {\n if (!(instance instanceof Constructor)) {\n throw new TypeError('Cannot call a class as a function');\n }\n}\nvar instances = [];\nvar APlayer = function () {\n function APlayer(options) {\n _classCallCheck(this, APlayer);\n this.options = (0, _options2.default)(options);\n this.container = this.options.container;\n this.playIndex = 0;\n this.paused = true;\n this.playedPromise = _promisePolyfill2.default.resolve();\n this.randomOrder = _utils2.default.randomOrder(this.options.audio.length);\n this.container.classList.add('aplayer');\n if (this.options.lrc) {\n this.container.classList.add('aplayer-withlrc');\n }\n if (this.options.audio.length > 1) {\n this.container.classList.add('aplayer-withlist');\n }\n if (_utils2.default.isMobile) {\n this.container.classList.add('aplayer-mobile');\n }\n this.arrow = this.container.offsetWidth <= 300;\n if (this.arrow) {\n this.container.classList.add('aplayer-arrow');\n }\n if (this.options.mini) {\n this.container.classList.add('aplayer-narrow');\n }\n this.container = this.options.container;\n if (this.options.lrc === 2 || this.options.lrc === true) {\n var lrcEle = this.container.getElementsByClassName('aplayer-lrc-content');\n for (var i = 0; i < lrcEle.length; i++) {\n if (this.options.audio[i]) {\n this.options.audio[i].lrc = lrcEle[i].innerHTML;\n }\n }\n }\n this.template = new _template2.default({\n container: this.container,\n options: this.options,\n randomOrder: this.randomOrder\n });\n if (this.template.info.offsetWidth < 200) {\n this.template.time.classList.add('aplayer-time-narrow');\n }\n if (this.options.lrc) {\n this.lrc = new _lrc2.default({\n container: this.template.lrc,\n async: this.options.lrc === 3,\n content: this.options.audio.map(function (item) {\n return item.lrc;\n }),\n player: this\n });\n }\n this.events = new _events2.default();\n this.user = new _user2.default(this);\n this.bar = new _bar2.default(this.template);\n this.controller = new _controller2.default(this);\n this.timer = new _timer2.default(this);\n this.initAudio();\n if (this.options.order === 'random') {\n this.switchAudio(this.randomOrder[0]);\n } else {\n this.switchAudio(0);\n }\n if (this.options.autoplay) {\n this.play();\n }\n instances.push(this);\n }\n _createClass(APlayer, [\n {\n key: 'initAudio',\n value: function initAudio() {\n var _this = this;\n this.audio = document.createElement('audio');\n this.audio.preload = this.options.preload;\n var _loop = function _loop(i) {\n _this.audio.addEventListener(_this.events.audioEvents[i], function () {\n _this.events.trigger(_this.events.audioEvents[i]);\n });\n };\n for (var i = 0; i < this.events.audioEvents.length; i++) {\n _loop(i);\n }\n this.on('play', function () {\n if (_this.paused) {\n _this.play();\n }\n });\n this.on('pause', function () {\n if (!_this.paused) {\n _this.pause();\n }\n });\n this.on('durationchange', function () {\n if (_this.audio.duration !== 1) {\n _this.template.dtime.innerHTML = _utils2.default.secondToTime(_this.audio.duration);\n }\n });\n this.on('progress', function () {\n var percentage = _this.audio.buffered.length ? _this.audio.buffered.end(_this.audio.buffered.length - 1) / _this.audio.duration : 0;\n _this.bar.set('loaded', percentage, 'width');\n });\n this.on('error', function () {\n _this.template.author.innerHTML = ' - Error happens \\u2565﹏\\u2565';\n });\n this.on('ended', function () {\n if (_this.options.loop === 'none') {\n if (_this.options.order === 'list') {\n if (_this.playIndex < _this.options.audio.length - 1) {\n _this.switchAudio((_this.playIndex + 1) % _this.options.audio.length);\n _this.play();\n } else {\n _this.switchAudio((_this.playIndex + 1) % _this.options.audio.length);\n _this.pause();\n }\n } else if (_this.options.order === 'random') {\n if (_this.randomOrder.indexOf(_this.playIndex) < _this.randomOrder.length - 1) {\n _this.switchAudio(_this.nextRandomNum());\n _this.play();\n } else {\n _this.switchAudio(_this.nextRandomNum());\n _this.pause();\n }\n }\n } else if (_this.options.loop === 'one') {\n _this.switchAudio(_this.playIndex);\n _this.play();\n } else if (_this.options.loop === 'all') {\n if (_this.options.order === 'list') {\n _this.switchAudio((_this.playIndex + 1) % _this.options.audio.length);\n } else if (_this.options.order === 'random') {\n _this.switchAudio(_this.nextRandomNum());\n }\n _this.play();\n }\n });\n this.volume(this.user.get('volume'), true);\n }\n },\n {\n key: 'switchAudio',\n value: function switchAudio(index) {\n var _this2 = this;\n this.handlePlayPromise(function () {\n _this2.events.trigger('switchaudio', index);\n if (typeof index !== 'undefined') {\n _this2.playIndex = index;\n }\n if (_this2.options.audio[_this2.playIndex].cover) {\n _this2.template.pic.style.backgroundImage = 'url(\\'' + _this2.options.audio[_this2.playIndex].cover + '\\')';\n } else {\n _this2.template.pic.style.backgroundImage = '';\n }\n _this2.template.title.innerHTML = _this2.options.audio[_this2.playIndex].name;\n _this2.template.author.innerHTML = _this2.options.audio[_this2.playIndex].artist ? ' - ' + _this2.options.audio[_this2.playIndex].artist : '';\n var light = _this2.container.getElementsByClassName('aplayer-list-light')[0];\n if (light) {\n light.classList.remove('aplayer-list-light');\n }\n _this2.container.querySelectorAll('.aplayer-list li')[_this2.playIndex].classList.add('aplayer-list-light');\n _this2.template.list.scrollTop = _this2.playIndex * 33;\n _this2.audio.src = _this2.options.audio[_this2.playIndex].url;\n _this2.seek(0);\n var playPromise = void 0;\n if (!_this2.paused) {\n playPromise = _promisePolyfill2.default.resolve(_this2.audio.play()).catch(function (err) {\n console.error(err);\n _this2.pause();\n });\n }\n _this2.lrc && _this2.lrc.switch(_this2.playIndex);\n if (_this2.audio.duration !== 1) {\n _this2.template.dtime.innerHTML = _this2.audio.duration ? _utils2.default.secondToTime(_this2.audio.duration) : '00:00';\n }\n return playPromise;\n });\n }\n },\n {\n key: 'seek',\n value: function seek(time) {\n time = Math.max(time, 0);\n if (this.audio.duration) {\n time = Math.min(time, this.audio.duration);\n }\n this.audio.currentTime = time;\n if (isNaN(this.audio.duration)) {\n this.bar.set('played', 0, 'width');\n } else {\n this.bar.set('played', time / this.audio.duration, 'width');\n }\n this.template.ptime.innerHTML = _utils2.default.secondToTime(time);\n }\n },\n {\n key: 'play',\n value: function play() {\n var _this3 = this;\n this.handlePlayPromise(function () {\n if (_this3.paused) {\n _this3.paused = false;\n _this3.template.button.classList.remove('aplayer-play');\n _this3.template.button.classList.add('aplayer-pause');\n _this3.template.button.innerHTML = '';\n setTimeout(function () {\n _this3.template.button.innerHTML = _icons2.default.pause;\n }, 100);\n }\n var playPromise = _promisePolyfill2.default.resolve(_this3.audio.play()).catch(function (err) {\n console.error(err);\n _this3.pause();\n });\n _this3.timer.enable('loading');\n _this3.timer.enable('progress');\n if (_this3.options.mutex) {\n for (var i = 0; i < instances.length; i++) {\n if (_this3 !== instances[i]) {\n instances[i].pause();\n }\n }\n }\n return playPromise;\n });\n }\n },\n {\n key: 'pause',\n value: function pause() {\n var _this4 = this;\n this.handlePlayPromise(function () {\n if (!_this4.paused) {\n _this4.paused = true;\n _this4.template.button.classList.remove('aplayer-pause');\n _this4.template.button.classList.add('aplayer-play');\n _this4.template.button.innerHTML = '';\n setTimeout(function () {\n _this4.template.button.innerHTML = _icons2.default.play;\n }, 100);\n }\n _this4.audio.pause();\n _this4.timer.disable('loading');\n _this4.timer.disable('progress');\n });\n }\n },\n {\n key: 'switchVolumeIcon',\n value: function switchVolumeIcon() {\n if (this.volume() >= 0.95) {\n this.template.volumeButton.innerHTML = _icons2.default.volumeUp;\n } else if (this.volume() > 0) {\n this.template.volumeButton.innerHTML = _icons2.default.volumeDown;\n } else {\n this.template.volumeButton.innerHTML = _icons2.default.volumeOff;\n }\n }\n },\n {\n key: 'volume',\n value: function volume(percentage, nostorage) {\n percentage = parseFloat(percentage);\n if (!isNaN(percentage)) {\n percentage = Math.max(percentage, 0);\n percentage = Math.min(percentage, 1);\n this.bar.set('volume', percentage, 'height');\n if (!nostorage) {\n this.user.set('volume', percentage);\n }\n this.audio.volume = percentage;\n if (this.audio.muted) {\n this.audio.muted = false;\n }\n this.switchVolumeIcon();\n }\n return this.audio.muted ? 0 : this.audio.volume;\n }\n },\n {\n key: 'on',\n value: function on(name, callback) {\n this.events.on(name, callback);\n }\n },\n {\n key: 'toggle',\n value: function toggle() {\n if (this.template.button.classList.contains('aplayer-play')) {\n this.play();\n } else if (this.template.button.classList.contains('aplayer-pause')) {\n this.pause();\n }\n }\n },\n {\n key: 'isMultiple',\n value: function isMultiple() {\n return this.options.audio.length > 1;\n }\n },\n {\n key: 'nextRandomNum',\n value: function nextRandomNum() {\n if (this.isMultiple()) {\n var index = this.randomOrder.indexOf(this.playIndex);\n if (index === this.randomOrder.length - 1) {\n return this.randomOrder[0];\n } else {\n return this.randomOrder[index + 1];\n }\n } else {\n return 0;\n }\n }\n },\n {\n key: 'addAudio',\n value: function addAudio(newMusic) {\n this.events.trigger('addaudio', newMusic);\n var wasSingle = !this.isMultiple();\n this.options.audio = this.options.audio.concat(newMusic);\n var newItemHTML = '';\n for (var i = 0; i < newMusic.length; i++) {\n newItemHTML += '
';\n $$out += $escape($value[1]);\n $$out += '
\\n';\n });\n return $$out;\n};\n\n/***/ }),\n/* 32 */\n/***/ (function(module, exports, __webpack_require__) {\n\n\"use strict\";\n\nObject.defineProperty(exports, '__esModule', { value: true });\nvar _createClass = function () {\n function defineProperties(target, props) {\n for (var i = 0; i < props.length; i++) {\n var descriptor = props[i];\n descriptor.enumerable = descriptor.enumerable || false;\n descriptor.configurable = true;\n if ('value' in descriptor)\n descriptor.writable = true;\n Object.defineProperty(target, descriptor.key, descriptor);\n }\n }\n return function (Constructor, protoProps, staticProps) {\n if (protoProps)\n defineProperties(Constructor.prototype, protoProps);\n if (staticProps)\n defineProperties(Constructor, staticProps);\n return Constructor;\n };\n}();\nvar _utils = __webpack_require__(0);\nvar _utils2 = _interopRequireDefault(_utils);\nvar _icons = __webpack_require__(2);\nvar _icons2 = _interopRequireDefault(_icons);\nfunction _interopRequireDefault(obj) {\n return obj && obj.__esModule ? obj : { default: obj };\n}\nfunction _classCallCheck(instance, Constructor) {\n if (!(instance instanceof Constructor)) {\n throw new TypeError('Cannot call a class as a function');\n }\n}\nvar Controller = function () {\n function Controller(player) {\n _classCallCheck(this, Controller);\n this.player = player;\n this.initPlayButton();\n this.initList();\n this.initPlayBar();\n if (this.player.isMultiple()) {\n this.initOrderButton();\n }\n this.initLoopButton();\n this.initMenuButton();\n if (!_utils2.default.isMobile) {\n this.initVolumeButton();\n }\n }\n _createClass(Controller, [\n {\n key: 'initPlayButton',\n value: function initPlayButton() {\n var _this = this;\n this.player.template.pic.addEventListener('click', function () {\n _this.player.toggle();\n });\n }\n },\n {\n key: 'initList',\n value: function initList() {\n var _this2 = this;\n this.player.template.list.addEventListener('click', function (e) {\n var target = void 0;\n if (e.target.tagName.toUpperCase() === 'LI') {\n target = e.target;\n } else {\n target = e.target.parentElement;\n }\n var audioIndex = parseInt(target.getElementsByClassName('aplayer-list-index')[0].innerHTML) - 1;\n if (audioIndex !== _this2.player.playIndex) {\n _this2.player.switchAudio(audioIndex);\n _this2.player.play();\n } else {\n _this2.player.toggle();\n }\n });\n }\n },\n {\n key: 'initPlayBar',\n value: function initPlayBar() {\n var _this3 = this;\n var thumbMove = function thumbMove(e) {\n var percentage = ((e.clientX || e.changedTouches[0].clientX) - _utils2.default.getElementViewLeft(_this3.player.template.barWrap)) / _this3.player.template.barWrap.clientWidth;\n percentage = Math.max(percentage, 0);\n percentage = Math.min(percentage, 1);\n _this3.player.bar.set('played', percentage, 'width');\n _this3.player.lrc && _this3.player.lrc.update(percentage * _this3.player.audio.duration);\n _this3.player.template.ptime.innerHTML = _utils2.default.secondToTime(percentage * _this3.player.audio.duration);\n };\n var thumbUp = function thumbUp(e) {\n document.removeEventListener(_utils2.default.nameMap.dragEnd, thumbUp);\n document.removeEventListener(_utils2.default.nameMap.dragMove, thumbMove);\n var percentage = ((e.clientX || e.changedTouches[0].clientX) - _utils2.default.getElementViewLeft(_this3.player.template.barWrap)) / _this3.player.template.barWrap.clientWidth;\n percentage = Math.max(percentage, 0);\n percentage = Math.min(percentage, 1);\n _this3.player.bar.set('played', percentage, 'width');\n _this3.player.seek(_this3.player.bar.get('played', 'width') * _this3.player.audio.duration);\n _this3.player.timer.enable('progress');\n };\n this.player.template.barWrap.addEventListener(_utils2.default.nameMap.dragStart, function () {\n _this3.player.timer.disable('progress');\n document.addEventListener(_utils2.default.nameMap.dragMove, thumbMove);\n document.addEventListener(_utils2.default.nameMap.dragEnd, thumbUp);\n });\n }\n },\n {\n key: 'initVolumeButton',\n value: function initVolumeButton() {\n var _this4 = this;\n this.player.template.volumeButton.addEventListener('click', function () {\n if (_this4.player.audio.muted) {\n _this4.player.audio.muted = false;\n _this4.player.switchVolumeIcon();\n _this4.player.bar.set('volume', _this4.player.volume(), 'height');\n } else {\n _this4.player.audio.muted = true;\n _this4.player.switchVolumeIcon();\n _this4.player.bar.set('volume', 0, 'height');\n }\n });\n var thumbMove = function thumbMove(e) {\n var percentage = 1 - ((e.clientY || e.changedTouches[0].clientY) - _utils2.default.getElementViewTop(_this4.player.template.volumeBar)) / _this4.player.template.volumeBar.clientHeight;\n percentage = Math.max(percentage, 0);\n percentage = Math.min(percentage, 1);\n _this4.player.volume(percentage);\n };\n var thumbUp = function thumbUp(e) {\n _this4.player.template.volumeBarWrap.classList.remove('aplayer-volume-bar-wrap-active');\n document.removeEventListener(_utils2.default.nameMap.dragEnd, thumbUp);\n document.removeEventListener(_utils2.default.nameMap.dragMove, thumbMove);\n var percentage = 1 - ((e.clientY || e.changedTouches[0].clientY) - _utils2.default.getElementViewTop(_this4.player.template.volumeBar)) / _this4.player.template.volumeBar.clientHeight;\n percentage = Math.max(percentage, 0);\n percentage = Math.min(percentage, 1);\n _this4.player.volume(percentage);\n };\n this.player.template.volumeBarWrap.addEventListener(_utils2.default.nameMap.dragStart, function () {\n _this4.player.template.volumeBarWrap.classList.add('aplayer-volume-bar-wrap-active');\n document.addEventListener(_utils2.default.nameMap.dragMove, thumbMove);\n document.addEventListener(_utils2.default.nameMap.dragEnd, thumbUp);\n });\n }\n },\n {\n key: 'initOrderButton',\n value: function initOrderButton() {\n var _this5 = this;\n this.player.template.order.addEventListener('click', function () {\n if (_this5.player.options.order === 'list') {\n _this5.player.options.order = 'random';\n _this5.player.template.order.innerHTML = _icons2.default.orderRandom;\n } else if (_this5.player.options.order === 'random') {\n _this5.player.options.order = 'list';\n _this5.player.template.order.innerHTML = _icons2.default.orderList;\n }\n });\n }\n },\n {\n key: 'initLoopButton',\n value: function initLoopButton() {\n var _this6 = this;\n this.player.template.loop.addEventListener('click', function () {\n if (_this6.player.isMultiple()) {\n if (_this6.player.options.loop === 'one') {\n _this6.player.options.loop = 'none';\n _this6.player.template.loop.innerHTML = _icons2.default.loopNone;\n } else if (_this6.player.options.loop === 'none') {\n _this6.player.options.loop = 'all';\n _this6.player.template.loop.innerHTML = _icons2.default.loopAll;\n } else if (_this6.player.options.loop === 'all') {\n _this6.player.options.loop = 'one';\n _this6.player.template.loop.innerHTML = _icons2.default.loopOne;\n }\n } else {\n if (_this6.player.options.loop === 'one' || _this6.player.options.loop === 'all') {\n _this6.player.options.loop = 'none';\n _this6.player.template.loop.innerHTML = _icons2.default.loopNone;\n } else if (_this6.player.options.loop === 'none') {\n _this6.player.options.loop = 'all';\n _this6.player.template.loop.innerHTML = _icons2.default.loopAll;\n }\n }\n });\n }\n },\n {\n key: 'initMenuButton',\n value: function initMenuButton() {\n var _this7 = this;\n this.player.template.list.style.height = 33 * this.player.options.audio.length - 1 + 'px';\n this.player.template.menu.addEventListener('click', function () {\n if (!_this7.player.template.list.classList.contains('aplayer-list-hide')) {\n _this7.player.template.list.classList.add('aplayer-list-hide');\n } else {\n _this7.player.template.list.classList.remove('aplayer-list-hide');\n }\n });\n }\n }\n ]);\n return Controller;\n}();\nexports.default = Controller;\n\n/***/ }),\n/* 33 */\n/***/ (function(module, exports, __webpack_require__) {\n\n\"use strict\";\n\nObject.defineProperty(exports, '__esModule', { value: true });\nvar _createClass = function () {\n function defineProperties(target, props) {\n for (var i = 0; i < props.length; i++) {\n var descriptor = props[i];\n descriptor.enumerable = descriptor.enumerable || false;\n descriptor.configurable = true;\n if ('value' in descriptor)\n descriptor.writable = true;\n Object.defineProperty(target, descriptor.key, descriptor);\n }\n }\n return function (Constructor, protoProps, staticProps) {\n if (protoProps)\n defineProperties(Constructor.prototype, protoProps);\n if (staticProps)\n defineProperties(Constructor, staticProps);\n return Constructor;\n };\n}();\nvar _utils = __webpack_require__(0);\nvar _utils2 = _interopRequireDefault(_utils);\nfunction _interopRequireDefault(obj) {\n return obj && obj.__esModule ? obj : { default: obj };\n}\nfunction _classCallCheck(instance, Constructor) {\n if (!(instance instanceof Constructor)) {\n throw new TypeError('Cannot call a class as a function');\n }\n}\nvar Timer = function () {\n function Timer(player) {\n _classCallCheck(this, Timer);\n this.player = player;\n window.requestAnimationFrame = function () {\n return window.requestAnimationFrame || window.webkitRequestAnimationFrame || window.mozRequestAnimationFrame || window.oRequestAnimationFrame || window.msRequestAnimationFrame || function (callback) {\n window.setTimeout(callback, 1000 / 60);\n };\n }();\n this.types = [\n 'loading',\n 'progress'\n ];\n this.init();\n }\n _createClass(Timer, [\n {\n key: 'init',\n value: function init() {\n var _this = this;\n this.types.map(function (item) {\n _this['init' + item + 'Checker']();\n return item;\n });\n }\n },\n {\n key: 'initprogressChecker',\n value: function initprogressChecker() {\n var _this2 = this;\n this.progressChecker = setInterval(function () {\n if (_this2.enableprogressChecker) {\n _this2.player.bar.set('played', _this2.player.audio.currentTime / _this2.player.audio.duration, 'width');\n _this2.player.lrc && _this2.player.lrc.update();\n var currentTime = _utils2.default.secondToTime(_this2.player.audio.currentTime);\n if (_this2.player.template.ptime.innerHTML !== currentTime) {\n _this2.player.template.ptime.innerHTML = currentTime;\n }\n }\n }, 100);\n }\n },\n {\n key: 'initloadingChecker',\n value: function initloadingChecker() {\n var _this3 = this;\n var lastPlayPos = 0;\n var currentPlayPos = 0;\n var bufferingDetected = false;\n this.loadingChecker = setInterval(function () {\n if (_this3.enableloadingChecker) {\n currentPlayPos = _this3.player.audio.currentTime;\n if (!bufferingDetected && currentPlayPos === lastPlayPos && !_this3.player.audio.paused) {\n _this3.player.container.classList.add('aplayer-loading');\n bufferingDetected = true;\n }\n if (bufferingDetected && currentPlayPos > lastPlayPos && !_this3.player.audio.paused) {\n _this3.player.container.classList.remove('aplayer-loading');\n bufferingDetected = false;\n }\n lastPlayPos = currentPlayPos;\n }\n }, 100);\n }\n },\n {\n key: 'enable',\n value: function enable(type) {\n this['enable' + type + 'Checker'] = true;\n if (type === 'fps') {\n this.initfpsChecker();\n }\n }\n },\n {\n key: 'disable',\n value: function disable(type) {\n this['enable' + type + 'Checker'] = false;\n }\n },\n {\n key: 'destroy',\n value: function destroy() {\n var _this4 = this;\n this.types.map(function (item) {\n _this4['enable' + item + 'Checker'] = false;\n _this4[item + 'Checker'] && clearInterval(_this4[item + 'Checker']);\n return item;\n });\n }\n }\n ]);\n return Timer;\n}();\nexports.default = Timer;\n\n/***/ }),\n/* 34 */\n/***/ (function(module, exports, __webpack_require__) {\n\n\"use strict\";\n\nObject.defineProperty(exports, '__esModule', { value: true });\nvar _createClass = function () {\n function defineProperties(target, props) {\n for (var i = 0; i < props.length; i++) {\n var descriptor = props[i];\n descriptor.enumerable = descriptor.enumerable || false;\n descriptor.configurable = true;\n if ('value' in descriptor)\n descriptor.writable = true;\n Object.defineProperty(target, descriptor.key, descriptor);\n }\n }\n return function (Constructor, protoProps, staticProps) {\n if (protoProps)\n defineProperties(Constructor.prototype, protoProps);\n if (staticProps)\n defineProperties(Constructor, staticProps);\n return Constructor;\n };\n}();\nfunction _classCallCheck(instance, Constructor) {\n if (!(instance instanceof Constructor)) {\n throw new TypeError('Cannot call a class as a function');\n }\n}\nvar Events = function () {\n function Events() {\n _classCallCheck(this, Events);\n this.events = {};\n this.audioEvents = [\n 'abort',\n 'canplay',\n 'canplaythrough',\n 'durationchange',\n 'emptied',\n 'ended',\n 'error',\n 'loadeddata',\n 'loadedmetadata',\n 'loadstart',\n 'mozaudioavailable',\n 'pause',\n 'play',\n 'playing',\n 'progress',\n 'ratechange',\n 'seeked',\n 'seeking',\n 'stalled',\n 'suspend',\n 'timeupdate',\n 'volumechange',\n 'waiting'\n ];\n this.playerEvents = [\n 'destroy',\n 'switchaudio',\n 'addaudio',\n 'removeaudio'\n ];\n }\n _createClass(Events, [\n {\n key: 'on',\n value: function on(name, callback) {\n if (this.type(name) && typeof callback === 'function') {\n if (!this.events[name]) {\n this.events[name] = [];\n }\n this.events[name].push(callback);\n }\n }\n },\n {\n key: 'trigger',\n value: function trigger(name, info) {\n if (this.events[name] && this.events[name].length) {\n for (var i = 0; i < this.events[name].length; i++) {\n this.events[name][i](info);\n }\n }\n }\n },\n {\n key: 'type',\n value: function type(name) {\n if (this.playerEvents.indexOf(name) !== -1) {\n return 'player';\n } else if (this.audioEvents.indexOf(name) !== -1) {\n return 'audio';\n }\n console.error('Unknown event name: ' + name);\n return null;\n }\n }\n ]);\n return Events;\n}();\nexports.default = Events;\n\n/***/ })\n/******/ ])[\"default\"];\n});\n\n\n// WEBPACK FOOTER //\n// APlayer.min.js"," \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, {\n \t\t\t\tconfigurable: false,\n \t\t\t\tenumerable: true,\n \t\t\t\tget: getter\n \t\t\t});\n \t\t}\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 \t// Load entry module and return exports\n \treturn __webpack_require__(__webpack_require__.s = 4);\n\n\n\n// WEBPACK FOOTER //\n// webpack/bootstrap e40d0520cf9b07d68ca4","'use strict';\nObject.defineProperty(exports, '__esModule', { value: true });\nfunction _toConsumableArray(arr) {\n if (Array.isArray(arr)) {\n for (var i = 0, arr2 = Array(arr.length); i < arr.length; i++) {\n arr2[i] = arr[i];\n }\n return arr2;\n } else {\n return Array.from(arr);\n }\n}\nvar isMobile = /mobile/i.test(window.navigator.userAgent);\nvar utils = {\n secondToTime: function secondToTime(second) {\n var add0 = function add0(num) {\n return num < 10 ? '0' + num : '' + num;\n };\n var hour = Math.floor(second / 3600);\n var min = Math.floor((second - hour * 3600) / 60);\n var sec = Math.floor(second - hour * 3600 - min * 60);\n return (hour > 0 ? [\n hour,\n min,\n sec\n ] : [\n min,\n sec\n ]).map(add0).join(':');\n },\n getElementViewLeft: function getElementViewLeft(element) {\n var actualLeft = element.offsetLeft;\n var current = element.offsetParent;\n var elementScrollLeft = document.body.scrollLeft + document.documentElement.scrollLeft;\n if (!document.fullscreenElement && !document.mozFullScreenElement && !document.webkitFullscreenElement) {\n while (current !== null) {\n actualLeft += current.offsetLeft;\n current = current.offsetParent;\n }\n } else {\n while (current !== null && current !== element) {\n actualLeft += current.offsetLeft;\n current = current.offsetParent;\n }\n }\n return actualLeft - elementScrollLeft;\n },\n getElementViewTop: function getElementViewTop(element) {\n var actualTop = element.offsetTop;\n var current = element.offsetParent;\n var elementScrollTop = 0;\n while (current !== null) {\n actualTop += current.offsetTop;\n current = current.offsetParent;\n }\n elementScrollTop = document.body.scrollTop + document.documentElement.scrollTop;\n return actualTop - elementScrollTop;\n },\n isMobile: isMobile,\n storage: {\n set: function set(key, value) {\n localStorage.setItem(key, value);\n },\n get: function get(key) {\n return localStorage.getItem(key);\n }\n },\n nameMap: {\n dragStart: isMobile ? 'touchstart' : 'mousedown',\n dragMove: isMobile ? 'touchmove' : 'mousemove',\n dragEnd: isMobile ? 'touchend' : 'mouseup'\n },\n randomOrder: function randomOrder() {\n var length = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : undefined.options.audio.length;\n function shuffle(arr) {\n for (var i = arr.length - 1; i >= 0; i--) {\n var randomIndex = Math.floor(Math.random() * (i + 1));\n var itemAtIndex = arr[randomIndex];\n arr[randomIndex] = arr[i];\n arr[i] = itemAtIndex;\n }\n return arr;\n }\n return shuffle([].concat(_toConsumableArray(Array(length))).map(function (item, i) {\n return i;\n }));\n }\n};\nexports.default = utils;\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./src/js/utils.js\n// module id = 0\n// module chunks = 0","'use strict';\nvar _typeof = typeof Symbol === 'function' && typeof Symbol.iterator === 'symbol' ? function (obj) {\n return typeof obj;\n} : function (obj) {\n return obj && typeof Symbol === 'function' && obj.constructor === Symbol && obj !== Symbol.prototype ? 'symbol' : typeof obj;\n};\nvar g;\ng = function () {\n return this;\n}();\ntry {\n g = g || Function('return this')() || (1, eval)('this');\n} catch (e) {\n if ((typeof window === 'undefined' ? 'undefined' : _typeof(window)) === 'object')\n g = window;\n}\nmodule.exports = g;\n\n\n//////////////////\n// WEBPACK FOOTER\n// (webpack)/buildin/global.js\n// module id = 1\n// module chunks = 0","'use strict';\nObject.defineProperty(exports, '__esModule', { value: true });\nvar _play = require('../assets/play.svg');\nvar _play2 = _interopRequireDefault(_play);\nvar _pause = require('../assets/pause.svg');\nvar _pause2 = _interopRequireDefault(_pause);\nvar _volumeUp = require('../assets/volume-up.svg');\nvar _volumeUp2 = _interopRequireDefault(_volumeUp);\nvar _volumeDown = require('../assets/volume-down.svg');\nvar _volumeDown2 = _interopRequireDefault(_volumeDown);\nvar _volumeOff = require('../assets/volume-off.svg');\nvar _volumeOff2 = _interopRequireDefault(_volumeOff);\nvar _orderRandom = require('../assets/order-random.svg');\nvar _orderRandom2 = _interopRequireDefault(_orderRandom);\nvar _orderList = require('../assets/order-list.svg');\nvar _orderList2 = _interopRequireDefault(_orderList);\nvar _menu = require('../assets/menu.svg');\nvar _menu2 = _interopRequireDefault(_menu);\nvar _loopAll = require('../assets/loop-all.svg');\nvar _loopAll2 = _interopRequireDefault(_loopAll);\nvar _loopOne = require('../assets/loop-one.svg');\nvar _loopOne2 = _interopRequireDefault(_loopOne);\nvar _loopNone = require('../assets/loop-none.svg');\nvar _loopNone2 = _interopRequireDefault(_loopNone);\nvar _loading = require('../assets/loading.svg');\nvar _loading2 = _interopRequireDefault(_loading);\nfunction _interopRequireDefault(obj) {\n return obj && obj.__esModule ? obj : { default: obj };\n}\nvar Icons = {\n play: _play2.default,\n pause: _pause2.default,\n volumeUp: _volumeUp2.default,\n volumeDown: _volumeDown2.default,\n volumeOff: _volumeOff2.default,\n orderRandom: _orderRandom2.default,\n orderList: _orderList2.default,\n menu: _menu2.default,\n loopAll: _loopAll2.default,\n loopOne: _loopOne2.default,\n loopNone: _loopNone2.default,\n loading: _loading2.default\n};\nexports.default = Icons;\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./src/js/icons.js\n// module id = 2\n// module chunks = 0","'use strict';\nmodule.exports = require('./compile/runtime');\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./node_modules/art-template/lib/runtime.js\n// module id = 3\n// module chunks = 0","'use strict';\nObject.defineProperty(exports, '__esModule', { value: true });\nrequire('../css/index.scss');\nvar _player = require('./player');\nvar _player2 = _interopRequireDefault(_player);\nfunction _interopRequireDefault(obj) {\n return obj && obj.__esModule ? obj : { default: obj };\n}\nconsole.log('\\n' + ' %c APlayer v' + APLAYER_VERSION + ' ' + GIT_HASH + ' %c http://aplayer.js.org ' + '\\n' + '\\n', 'color: #fadfa3; background: #030307; padding:5px 0;', 'background: #fadfa3; padding:5px 0;');\nexports.default = _player2.default;\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./src/js/index.js\n// module id = 4\n// module chunks = 0","'use strict';\nObject.defineProperty(exports, '__esModule', { value: true });\nvar _createClass = function () {\n function defineProperties(target, props) {\n for (var i = 0; i < props.length; i++) {\n var descriptor = props[i];\n descriptor.enumerable = descriptor.enumerable || false;\n descriptor.configurable = true;\n if ('value' in descriptor)\n descriptor.writable = true;\n Object.defineProperty(target, descriptor.key, descriptor);\n }\n }\n return function (Constructor, protoProps, staticProps) {\n if (protoProps)\n defineProperties(Constructor.prototype, protoProps);\n if (staticProps)\n defineProperties(Constructor, staticProps);\n return Constructor;\n };\n}();\nvar _promisePolyfill = require('promise-polyfill');\nvar _promisePolyfill2 = _interopRequireDefault(_promisePolyfill);\nvar _utils = require('./utils');\nvar _utils2 = _interopRequireDefault(_utils);\nvar _icons = require('./icons');\nvar _icons2 = _interopRequireDefault(_icons);\nvar _options = require('./options');\nvar _options2 = _interopRequireDefault(_options);\nvar _template = require('./template');\nvar _template2 = _interopRequireDefault(_template);\nvar _bar = require('./bar');\nvar _bar2 = _interopRequireDefault(_bar);\nvar _user = require('./user');\nvar _user2 = _interopRequireDefault(_user);\nvar _lrc = require('./lrc');\nvar _lrc2 = _interopRequireDefault(_lrc);\nvar _controller = require('./controller');\nvar _controller2 = _interopRequireDefault(_controller);\nvar _timer = require('./timer');\nvar _timer2 = _interopRequireDefault(_timer);\nvar _events = require('./events');\nvar _events2 = _interopRequireDefault(_events);\nfunction _interopRequireDefault(obj) {\n return obj && obj.__esModule ? obj : { default: obj };\n}\nfunction _classCallCheck(instance, Constructor) {\n if (!(instance instanceof Constructor)) {\n throw new TypeError('Cannot call a class as a function');\n }\n}\nvar instances = [];\nvar APlayer = function () {\n function APlayer(options) {\n _classCallCheck(this, APlayer);\n this.options = (0, _options2.default)(options);\n this.container = this.options.container;\n this.playIndex = 0;\n this.paused = true;\n this.playedPromise = _promisePolyfill2.default.resolve();\n this.randomOrder = _utils2.default.randomOrder(this.options.audio.length);\n this.container.classList.add('aplayer');\n if (this.options.lrc) {\n this.container.classList.add('aplayer-withlrc');\n }\n if (this.options.audio.length > 1) {\n this.container.classList.add('aplayer-withlist');\n }\n if (_utils2.default.isMobile) {\n this.container.classList.add('aplayer-mobile');\n }\n this.arrow = this.container.offsetWidth <= 300;\n if (this.arrow) {\n this.container.classList.add('aplayer-arrow');\n }\n if (this.options.mini) {\n this.container.classList.add('aplayer-narrow');\n }\n this.container = this.options.container;\n if (this.options.lrc === 2 || this.options.lrc === true) {\n var lrcEle = this.container.getElementsByClassName('aplayer-lrc-content');\n for (var i = 0; i < lrcEle.length; i++) {\n if (this.options.audio[i]) {\n this.options.audio[i].lrc = lrcEle[i].innerHTML;\n }\n }\n }\n this.template = new _template2.default({\n container: this.container,\n options: this.options,\n randomOrder: this.randomOrder\n });\n if (this.template.info.offsetWidth < 200) {\n this.template.time.classList.add('aplayer-time-narrow');\n }\n if (this.options.lrc) {\n this.lrc = new _lrc2.default({\n container: this.template.lrc,\n async: this.options.lrc === 3,\n content: this.options.audio.map(function (item) {\n return item.lrc;\n }),\n player: this\n });\n }\n this.events = new _events2.default();\n this.user = new _user2.default(this);\n this.bar = new _bar2.default(this.template);\n this.controller = new _controller2.default(this);\n this.timer = new _timer2.default(this);\n this.initAudio();\n if (this.options.order === 'random') {\n this.switchAudio(this.randomOrder[0]);\n } else {\n this.switchAudio(0);\n }\n if (this.options.autoplay) {\n this.play();\n }\n instances.push(this);\n }\n _createClass(APlayer, [\n {\n key: 'initAudio',\n value: function initAudio() {\n var _this = this;\n this.audio = document.createElement('audio');\n this.audio.preload = this.options.preload;\n var _loop = function _loop(i) {\n _this.audio.addEventListener(_this.events.audioEvents[i], function () {\n _this.events.trigger(_this.events.audioEvents[i]);\n });\n };\n for (var i = 0; i < this.events.audioEvents.length; i++) {\n _loop(i);\n }\n this.on('play', function () {\n if (_this.paused) {\n _this.play();\n }\n });\n this.on('pause', function () {\n if (!_this.paused) {\n _this.pause();\n }\n });\n this.on('durationchange', function () {\n if (_this.audio.duration !== 1) {\n _this.template.dtime.innerHTML = _utils2.default.secondToTime(_this.audio.duration);\n }\n });\n this.on('progress', function () {\n var percentage = _this.audio.buffered.length ? _this.audio.buffered.end(_this.audio.buffered.length - 1) / _this.audio.duration : 0;\n _this.bar.set('loaded', percentage, 'width');\n });\n this.on('error', function () {\n _this.template.author.innerHTML = ' - Error happens \\u2565﹏\\u2565';\n });\n this.on('ended', function () {\n if (_this.options.loop === 'none') {\n if (_this.options.order === 'list') {\n if (_this.playIndex < _this.options.audio.length - 1) {\n _this.switchAudio((_this.playIndex + 1) % _this.options.audio.length);\n _this.play();\n } else {\n _this.switchAudio((_this.playIndex + 1) % _this.options.audio.length);\n _this.pause();\n }\n } else if (_this.options.order === 'random') {\n if (_this.randomOrder.indexOf(_this.playIndex) < _this.randomOrder.length - 1) {\n _this.switchAudio(_this.nextRandomNum());\n _this.play();\n } else {\n _this.switchAudio(_this.nextRandomNum());\n _this.pause();\n }\n }\n } else if (_this.options.loop === 'one') {\n _this.switchAudio(_this.playIndex);\n _this.play();\n } else if (_this.options.loop === 'all') {\n if (_this.options.order === 'list') {\n _this.switchAudio((_this.playIndex + 1) % _this.options.audio.length);\n } else if (_this.options.order === 'random') {\n _this.switchAudio(_this.nextRandomNum());\n }\n _this.play();\n }\n });\n this.volume(this.user.get('volume'), true);\n }\n },\n {\n key: 'switchAudio',\n value: function switchAudio(index) {\n var _this2 = this;\n this.handlePlayPromise(function () {\n _this2.events.trigger('switchaudio', index);\n if (typeof index !== 'undefined') {\n _this2.playIndex = index;\n }\n if (_this2.options.audio[_this2.playIndex].cover) {\n _this2.template.pic.style.backgroundImage = 'url(\\'' + _this2.options.audio[_this2.playIndex].cover + '\\')';\n } else {\n _this2.template.pic.style.backgroundImage = '';\n }\n _this2.template.title.innerHTML = _this2.options.audio[_this2.playIndex].name;\n _this2.template.author.innerHTML = _this2.options.audio[_this2.playIndex].artist ? ' - ' + _this2.options.audio[_this2.playIndex].artist : '';\n var light = _this2.container.getElementsByClassName('aplayer-list-light')[0];\n if (light) {\n light.classList.remove('aplayer-list-light');\n }\n _this2.container.querySelectorAll('.aplayer-list li')[_this2.playIndex].classList.add('aplayer-list-light');\n _this2.template.list.scrollTop = _this2.playIndex * 33;\n _this2.audio.src = _this2.options.audio[_this2.playIndex].url;\n _this2.seek(0);\n var playPromise = void 0;\n if (!_this2.paused) {\n playPromise = _promisePolyfill2.default.resolve(_this2.audio.play()).catch(function (err) {\n console.error(err);\n _this2.pause();\n });\n }\n _this2.lrc && _this2.lrc.switch(_this2.playIndex);\n if (_this2.audio.duration !== 1) {\n _this2.template.dtime.innerHTML = _this2.audio.duration ? _utils2.default.secondToTime(_this2.audio.duration) : '00:00';\n }\n return playPromise;\n });\n }\n },\n {\n key: 'seek',\n value: function seek(time) {\n time = Math.max(time, 0);\n if (this.audio.duration) {\n time = Math.min(time, this.audio.duration);\n }\n this.audio.currentTime = time;\n if (isNaN(this.audio.duration)) {\n this.bar.set('played', 0, 'width');\n } else {\n this.bar.set('played', time / this.audio.duration, 'width');\n }\n this.template.ptime.innerHTML = _utils2.default.secondToTime(time);\n }\n },\n {\n key: 'play',\n value: function play() {\n var _this3 = this;\n this.handlePlayPromise(function () {\n if (_this3.paused) {\n _this3.paused = false;\n _this3.template.button.classList.remove('aplayer-play');\n _this3.template.button.classList.add('aplayer-pause');\n _this3.template.button.innerHTML = '';\n setTimeout(function () {\n _this3.template.button.innerHTML = _icons2.default.pause;\n }, 100);\n }\n var playPromise = _promisePolyfill2.default.resolve(_this3.audio.play()).catch(function (err) {\n console.error(err);\n _this3.pause();\n });\n _this3.timer.enable('loading');\n _this3.timer.enable('progress');\n if (_this3.options.mutex) {\n for (var i = 0; i < instances.length; i++) {\n if (_this3 !== instances[i]) {\n instances[i].pause();\n }\n }\n }\n return playPromise;\n });\n }\n },\n {\n key: 'pause',\n value: function pause() {\n var _this4 = this;\n this.handlePlayPromise(function () {\n if (!_this4.paused) {\n _this4.paused = true;\n _this4.template.button.classList.remove('aplayer-pause');\n _this4.template.button.classList.add('aplayer-play');\n _this4.template.button.innerHTML = '';\n setTimeout(function () {\n _this4.template.button.innerHTML = _icons2.default.play;\n }, 100);\n }\n _this4.audio.pause();\n _this4.timer.disable('loading');\n _this4.timer.disable('progress');\n });\n }\n },\n {\n key: 'switchVolumeIcon',\n value: function switchVolumeIcon() {\n if (this.volume() >= 0.95) {\n this.template.volumeButton.innerHTML = _icons2.default.volumeUp;\n } else if (this.volume() > 0) {\n this.template.volumeButton.innerHTML = _icons2.default.volumeDown;\n } else {\n this.template.volumeButton.innerHTML = _icons2.default.volumeOff;\n }\n }\n },\n {\n key: 'volume',\n value: function volume(percentage, nostorage) {\n percentage = parseFloat(percentage);\n if (!isNaN(percentage)) {\n percentage = Math.max(percentage, 0);\n percentage = Math.min(percentage, 1);\n this.bar.set('volume', percentage, 'height');\n if (!nostorage) {\n this.user.set('volume', percentage);\n }\n this.audio.volume = percentage;\n if (this.audio.muted) {\n this.audio.muted = false;\n }\n this.switchVolumeIcon();\n }\n return this.audio.muted ? 0 : this.audio.volume;\n }\n },\n {\n key: 'on',\n value: function on(name, callback) {\n this.events.on(name, callback);\n }\n },\n {\n key: 'toggle',\n value: function toggle() {\n if (this.template.button.classList.contains('aplayer-play')) {\n this.play();\n } else if (this.template.button.classList.contains('aplayer-pause')) {\n this.pause();\n }\n }\n },\n {\n key: 'isMultiple',\n value: function isMultiple() {\n return this.options.audio.length > 1;\n }\n },\n {\n key: 'nextRandomNum',\n value: function nextRandomNum() {\n if (this.isMultiple()) {\n var index = this.randomOrder.indexOf(this.playIndex);\n if (index === this.randomOrder.length - 1) {\n return this.randomOrder[0];\n } else {\n return this.randomOrder[index + 1];\n }\n } else {\n return 0;\n }\n }\n },\n {\n key: 'addAudio',\n value: function addAudio(newMusic) {\n this.events.trigger('addaudio', newMusic);\n var wasSingle = !this.isMultiple();\n this.options.audio = this.options.audio.concat(newMusic);\n var newItemHTML = '';\n for (var i = 0; i < newMusic.length; i++) {\n newItemHTML += '{{$value[1]}}
\n{{/each}}\n\n\n// WEBPACK FOOTER //\n// ./src/template/lrc.art","'use strict';\nObject.defineProperty(exports, '__esModule', { value: true });\nvar _createClass = function () {\n function defineProperties(target, props) {\n for (var i = 0; i < props.length; i++) {\n var descriptor = props[i];\n descriptor.enumerable = descriptor.enumerable || false;\n descriptor.configurable = true;\n if ('value' in descriptor)\n descriptor.writable = true;\n Object.defineProperty(target, descriptor.key, descriptor);\n }\n }\n return function (Constructor, protoProps, staticProps) {\n if (protoProps)\n defineProperties(Constructor.prototype, protoProps);\n if (staticProps)\n defineProperties(Constructor, staticProps);\n return Constructor;\n };\n}();\nvar _utils = require('./utils');\nvar _utils2 = _interopRequireDefault(_utils);\nvar _icons = require('./icons');\nvar _icons2 = _interopRequireDefault(_icons);\nfunction _interopRequireDefault(obj) {\n return obj && obj.__esModule ? obj : { default: obj };\n}\nfunction _classCallCheck(instance, Constructor) {\n if (!(instance instanceof Constructor)) {\n throw new TypeError('Cannot call a class as a function');\n }\n}\nvar Controller = function () {\n function Controller(player) {\n _classCallCheck(this, Controller);\n this.player = player;\n this.initPlayButton();\n this.initList();\n this.initPlayBar();\n if (this.player.isMultiple()) {\n this.initOrderButton();\n }\n this.initLoopButton();\n this.initMenuButton();\n if (!_utils2.default.isMobile) {\n this.initVolumeButton();\n }\n }\n _createClass(Controller, [\n {\n key: 'initPlayButton',\n value: function initPlayButton() {\n var _this = this;\n this.player.template.pic.addEventListener('click', function () {\n _this.player.toggle();\n });\n }\n },\n {\n key: 'initList',\n value: function initList() {\n var _this2 = this;\n this.player.template.list.addEventListener('click', function (e) {\n var target = void 0;\n if (e.target.tagName.toUpperCase() === 'LI') {\n target = e.target;\n } else {\n target = e.target.parentElement;\n }\n var audioIndex = parseInt(target.getElementsByClassName('aplayer-list-index')[0].innerHTML) - 1;\n if (audioIndex !== _this2.player.playIndex) {\n _this2.player.switchAudio(audioIndex);\n _this2.player.play();\n } else {\n _this2.player.toggle();\n }\n });\n }\n },\n {\n key: 'initPlayBar',\n value: function initPlayBar() {\n var _this3 = this;\n var thumbMove = function thumbMove(e) {\n var percentage = ((e.clientX || e.changedTouches[0].clientX) - _utils2.default.getElementViewLeft(_this3.player.template.barWrap)) / _this3.player.template.barWrap.clientWidth;\n percentage = Math.max(percentage, 0);\n percentage = Math.min(percentage, 1);\n _this3.player.bar.set('played', percentage, 'width');\n _this3.player.lrc && _this3.player.lrc.update(percentage * _this3.player.audio.duration);\n _this3.player.template.ptime.innerHTML = _utils2.default.secondToTime(percentage * _this3.player.audio.duration);\n };\n var thumbUp = function thumbUp(e) {\n document.removeEventListener(_utils2.default.nameMap.dragEnd, thumbUp);\n document.removeEventListener(_utils2.default.nameMap.dragMove, thumbMove);\n var percentage = ((e.clientX || e.changedTouches[0].clientX) - _utils2.default.getElementViewLeft(_this3.player.template.barWrap)) / _this3.player.template.barWrap.clientWidth;\n percentage = Math.max(percentage, 0);\n percentage = Math.min(percentage, 1);\n _this3.player.bar.set('played', percentage, 'width');\n _this3.player.seek(_this3.player.bar.get('played', 'width') * _this3.player.audio.duration);\n _this3.player.timer.enable('progress');\n };\n this.player.template.barWrap.addEventListener(_utils2.default.nameMap.dragStart, function () {\n _this3.player.timer.disable('progress');\n document.addEventListener(_utils2.default.nameMap.dragMove, thumbMove);\n document.addEventListener(_utils2.default.nameMap.dragEnd, thumbUp);\n });\n }\n },\n {\n key: 'initVolumeButton',\n value: function initVolumeButton() {\n var _this4 = this;\n this.player.template.volumeButton.addEventListener('click', function () {\n if (_this4.player.audio.muted) {\n _this4.player.audio.muted = false;\n _this4.player.switchVolumeIcon();\n _this4.player.bar.set('volume', _this4.player.volume(), 'height');\n } else {\n _this4.player.audio.muted = true;\n _this4.player.switchVolumeIcon();\n _this4.player.bar.set('volume', 0, 'height');\n }\n });\n var thumbMove = function thumbMove(e) {\n var percentage = 1 - ((e.clientY || e.changedTouches[0].clientY) - _utils2.default.getElementViewTop(_this4.player.template.volumeBar)) / _this4.player.template.volumeBar.clientHeight;\n percentage = Math.max(percentage, 0);\n percentage = Math.min(percentage, 1);\n _this4.player.volume(percentage);\n };\n var thumbUp = function thumbUp(e) {\n _this4.player.template.volumeBarWrap.classList.remove('aplayer-volume-bar-wrap-active');\n document.removeEventListener(_utils2.default.nameMap.dragEnd, thumbUp);\n document.removeEventListener(_utils2.default.nameMap.dragMove, thumbMove);\n var percentage = 1 - ((e.clientY || e.changedTouches[0].clientY) - _utils2.default.getElementViewTop(_this4.player.template.volumeBar)) / _this4.player.template.volumeBar.clientHeight;\n percentage = Math.max(percentage, 0);\n percentage = Math.min(percentage, 1);\n _this4.player.volume(percentage);\n };\n this.player.template.volumeBarWrap.addEventListener(_utils2.default.nameMap.dragStart, function () {\n _this4.player.template.volumeBarWrap.classList.add('aplayer-volume-bar-wrap-active');\n document.addEventListener(_utils2.default.nameMap.dragMove, thumbMove);\n document.addEventListener(_utils2.default.nameMap.dragEnd, thumbUp);\n });\n }\n },\n {\n key: 'initOrderButton',\n value: function initOrderButton() {\n var _this5 = this;\n this.player.template.order.addEventListener('click', function () {\n if (_this5.player.options.order === 'list') {\n _this5.player.options.order = 'random';\n _this5.player.template.order.innerHTML = _icons2.default.orderRandom;\n } else if (_this5.player.options.order === 'random') {\n _this5.player.options.order = 'list';\n _this5.player.template.order.innerHTML = _icons2.default.orderList;\n }\n });\n }\n },\n {\n key: 'initLoopButton',\n value: function initLoopButton() {\n var _this6 = this;\n this.player.template.loop.addEventListener('click', function () {\n if (_this6.player.isMultiple()) {\n if (_this6.player.options.loop === 'one') {\n _this6.player.options.loop = 'none';\n _this6.player.template.loop.innerHTML = _icons2.default.loopNone;\n } else if (_this6.player.options.loop === 'none') {\n _this6.player.options.loop = 'all';\n _this6.player.template.loop.innerHTML = _icons2.default.loopAll;\n } else if (_this6.player.options.loop === 'all') {\n _this6.player.options.loop = 'one';\n _this6.player.template.loop.innerHTML = _icons2.default.loopOne;\n }\n } else {\n if (_this6.player.options.loop === 'one' || _this6.player.options.loop === 'all') {\n _this6.player.options.loop = 'none';\n _this6.player.template.loop.innerHTML = _icons2.default.loopNone;\n } else if (_this6.player.options.loop === 'none') {\n _this6.player.options.loop = 'all';\n _this6.player.template.loop.innerHTML = _icons2.default.loopAll;\n }\n }\n });\n }\n },\n {\n key: 'initMenuButton',\n value: function initMenuButton() {\n var _this7 = this;\n this.player.template.list.style.height = 33 * this.player.options.audio.length - 1 + 'px';\n this.player.template.menu.addEventListener('click', function () {\n if (!_this7.player.template.list.classList.contains('aplayer-list-hide')) {\n _this7.player.template.list.classList.add('aplayer-list-hide');\n } else {\n _this7.player.template.list.classList.remove('aplayer-list-hide');\n }\n });\n }\n }\n ]);\n return Controller;\n}();\nexports.default = Controller;\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./src/js/controller.js\n// module id = 32\n// module chunks = 0","'use strict';\nObject.defineProperty(exports, '__esModule', { value: true });\nvar _createClass = function () {\n function defineProperties(target, props) {\n for (var i = 0; i < props.length; i++) {\n var descriptor = props[i];\n descriptor.enumerable = descriptor.enumerable || false;\n descriptor.configurable = true;\n if ('value' in descriptor)\n descriptor.writable = true;\n Object.defineProperty(target, descriptor.key, descriptor);\n }\n }\n return function (Constructor, protoProps, staticProps) {\n if (protoProps)\n defineProperties(Constructor.prototype, protoProps);\n if (staticProps)\n defineProperties(Constructor, staticProps);\n return Constructor;\n };\n}();\nvar _utils = require('./utils');\nvar _utils2 = _interopRequireDefault(_utils);\nfunction _interopRequireDefault(obj) {\n return obj && obj.__esModule ? obj : { default: obj };\n}\nfunction _classCallCheck(instance, Constructor) {\n if (!(instance instanceof Constructor)) {\n throw new TypeError('Cannot call a class as a function');\n }\n}\nvar Timer = function () {\n function Timer(player) {\n _classCallCheck(this, Timer);\n this.player = player;\n window.requestAnimationFrame = function () {\n return window.requestAnimationFrame || window.webkitRequestAnimationFrame || window.mozRequestAnimationFrame || window.oRequestAnimationFrame || window.msRequestAnimationFrame || function (callback) {\n window.setTimeout(callback, 1000 / 60);\n };\n }();\n this.types = [\n 'loading',\n 'progress'\n ];\n this.init();\n }\n _createClass(Timer, [\n {\n key: 'init',\n value: function init() {\n var _this = this;\n this.types.map(function (item) {\n _this['init' + item + 'Checker']();\n return item;\n });\n }\n },\n {\n key: 'initprogressChecker',\n value: function initprogressChecker() {\n var _this2 = this;\n this.progressChecker = setInterval(function () {\n if (_this2.enableprogressChecker) {\n _this2.player.bar.set('played', _this2.player.audio.currentTime / _this2.player.audio.duration, 'width');\n _this2.player.lrc && _this2.player.lrc.update();\n var currentTime = _utils2.default.secondToTime(_this2.player.audio.currentTime);\n if (_this2.player.template.ptime.innerHTML !== currentTime) {\n _this2.player.template.ptime.innerHTML = currentTime;\n }\n }\n }, 100);\n }\n },\n {\n key: 'initloadingChecker',\n value: function initloadingChecker() {\n var _this3 = this;\n var lastPlayPos = 0;\n var currentPlayPos = 0;\n var bufferingDetected = false;\n this.loadingChecker = setInterval(function () {\n if (_this3.enableloadingChecker) {\n currentPlayPos = _this3.player.audio.currentTime;\n if (!bufferingDetected && currentPlayPos === lastPlayPos && !_this3.player.audio.paused) {\n _this3.player.container.classList.add('aplayer-loading');\n bufferingDetected = true;\n }\n if (bufferingDetected && currentPlayPos > lastPlayPos && !_this3.player.audio.paused) {\n _this3.player.container.classList.remove('aplayer-loading');\n bufferingDetected = false;\n }\n lastPlayPos = currentPlayPos;\n }\n }, 100);\n }\n },\n {\n key: 'enable',\n value: function enable(type) {\n this['enable' + type + 'Checker'] = true;\n if (type === 'fps') {\n this.initfpsChecker();\n }\n }\n },\n {\n key: 'disable',\n value: function disable(type) {\n this['enable' + type + 'Checker'] = false;\n }\n },\n {\n key: 'destroy',\n value: function destroy() {\n var _this4 = this;\n this.types.map(function (item) {\n _this4['enable' + item + 'Checker'] = false;\n _this4[item + 'Checker'] && clearInterval(_this4[item + 'Checker']);\n return item;\n });\n }\n }\n ]);\n return Timer;\n}();\nexports.default = Timer;\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./src/js/timer.js\n// module id = 33\n// module chunks = 0","'use strict';\nObject.defineProperty(exports, '__esModule', { value: true });\nvar _createClass = function () {\n function defineProperties(target, props) {\n for (var i = 0; i < props.length; i++) {\n var descriptor = props[i];\n descriptor.enumerable = descriptor.enumerable || false;\n descriptor.configurable = true;\n if ('value' in descriptor)\n descriptor.writable = true;\n Object.defineProperty(target, descriptor.key, descriptor);\n }\n }\n return function (Constructor, protoProps, staticProps) {\n if (protoProps)\n defineProperties(Constructor.prototype, protoProps);\n if (staticProps)\n defineProperties(Constructor, staticProps);\n return Constructor;\n };\n}();\nfunction _classCallCheck(instance, Constructor) {\n if (!(instance instanceof Constructor)) {\n throw new TypeError('Cannot call a class as a function');\n }\n}\nvar Events = function () {\n function Events() {\n _classCallCheck(this, Events);\n this.events = {};\n this.audioEvents = [\n 'abort',\n 'canplay',\n 'canplaythrough',\n 'durationchange',\n 'emptied',\n 'ended',\n 'error',\n 'loadeddata',\n 'loadedmetadata',\n 'loadstart',\n 'mozaudioavailable',\n 'pause',\n 'play',\n 'playing',\n 'progress',\n 'ratechange',\n 'seeked',\n 'seeking',\n 'stalled',\n 'suspend',\n 'timeupdate',\n 'volumechange',\n 'waiting'\n ];\n this.playerEvents = [\n 'destroy',\n 'switchaudio',\n 'addaudio',\n 'removeaudio'\n ];\n }\n _createClass(Events, [\n {\n key: 'on',\n value: function on(name, callback) {\n if (this.type(name) && typeof callback === 'function') {\n if (!this.events[name]) {\n this.events[name] = [];\n }\n this.events[name].push(callback);\n }\n }\n },\n {\n key: 'trigger',\n value: function trigger(name, info) {\n if (this.events[name] && this.events[name].length) {\n for (var i = 0; i < this.events[name].length; i++) {\n this.events[name][i](info);\n }\n }\n }\n },\n {\n key: 'type',\n value: function type(name) {\n if (this.playerEvents.indexOf(name) !== -1) {\n return 'player';\n } else if (this.audioEvents.indexOf(name) !== -1) {\n return 'audio';\n }\n console.error('Unknown event name: ' + name);\n return null;\n }\n }\n ]);\n return Events;\n}();\nexports.default = Events;\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./src/js/events.js\n// module id = 34\n// module chunks = 0"],"sourceRoot":""}